Reverse Shoplifting

Engineers love gadgets. Sometimes, we even anthropomorphize them a bit and get attached to pieces of vintage gear that we don’t really use anymore. The lure of the New And Shiny is strong, yes, but there’s something about the glow of vacuum tubes, too.

For many of us, though, it’s somehow okay if we know that a beloved piece of gear — or even just a nostalgic example of 1980s-era DIP memory — is going to a good home. It’s easier to part with a vintage Tektronix ‘scope if it means that a new electronics hobbyist will be able to use it to see the angry pixies in the wires. At least it’s not going into the trash.

Reusing vintage gear is what hamfests are all about. Even if you’ve been in the hobby for decades, a good hamfest will mean you’ll see at least one piece of gear that takes you a moment to identify — and probably, several new variations on tools you didn’t know existed. Field strength meters powered by the radio signals they monitor. Analog computers, designed to calculate how much feed to give your dairy cattle (I really hope that’s still in a box around here somewhere). Hopefully-declassified military surplus gear. It’s all fascinating.

The downside is that, for most people, space is limited. At some point, cubic-meters-in must not exceed cubic-meters-out. Hamfests provide the best way to rehome surplus gear — but sometimes, nobody is looking for the particular boat anchors that you brought to offload. After a few trips back and forth, you wish they weren’t taking up space — but you just don’t have the heart to put that vintage HP signal generator in the trash. What To Do?

The solution — Reverse Shoplifting — is one of the coolest, if somewhat dubious, Chaotic Good traditions I’ve come across. In the course of wandering around a hamfest, it’s not unusual to see an interesting item for sale and want to take a closer look. (That’s why you’re there in the first place, after all!) So you set down the random piece of gear you were ostensibly carrying back to your car after having purchased it, and take a look at what the seller has on the table. Maybe you even buy it. After all, it got your attention.

In the confusion, it’s not unheard of to forget the item you were originally carrying, and absentmindedly wander off, leaving it there. Perhaps this is the Universe’s way of telling you that your boat anchor had found its new owner. Perhaps entropy will decrease a tiny bit more slowly when a piece of gear gets another shot at usefulness instead of heading to a landfill.

Or maybe, you think to yourself as you slip away as nonchalantly but quickly as you can, you’ll actually have room in the car for that antenna tower the guy in the cube van was selling.

This post is dedicated to the memory of my Elmer: Frank H. Gentges AK4R/K0BRA.
Thanks for teaching me not just the nuts and bolts, but the lore, too.

Posted in HOW-TO, Humor, Lore, Nostalgia | Leave a comment

Multi-material 3D Printing with Palette+


Hobbyist 3D printers get more capable each year — and generally, these advances come in the form of potential upgrades or add-ons. The modularity of Prusa-type FDM printers means that just about any part can be swapped out and replaced as needed.

Until recently, hobbyist 3D printers have been nearly all single-extruder devices, capable of printing with only one material at a time. Multiple-nozzle extruder schemes exist, from a basic dual-extruder setup to exotics like the four-nozzle, water-cooled Kraken (which looks awesome but is worthless unless a viable toolchain exists.)

The four-extruder, water-cooled Kraken.

These come with their own problems — mainly ones of calibration. If the extruder has more than one nozzle, the nozzle tips must always be at exactly the same Z offset. Otherwise, the lowest nozzle will inevitably drag across the printed plastic deposited by the others. X and possibly Y offsets must also be set — but this is easily handled in software.

It would be nice if a single-nozzle solution existed — and now, it does. The folks at Mosaic have come up with one solution to the problem — create a custom-spliced filament and feed it into an unmodified 3D printer.

Note: The Palette+ referenced in this article is last year’s model. The new Palette2 and Palette2 Pro do the same job, but with some additional refinements. They also cost less. Progress!

A sample of custom-spliced filament made by the Palette+

This is a subtler process than it seems at first. 3D printers vary slightly in the rate at which they use filament in a given print. This can even vary somewhat throughout the print. If a single extruder is used with a variegated feedstock and you want nice clean color transitions in your print, the color transitions need to be at the right point in the filament so the new color comes along just as the printer is getting ready to print a feature in that color. If the amount of filament actually used (as opposed to commanded) isn’t tracked by some closed-loop process, the position of transitions will inevitably drift, leading to increasingly inaccurate color transitions.

Worse, when the filament changes from one color to another, the process takes some time — longer if transitioning from dark to light filaments, shorter if transitioning from light to dark (generally speaking). Even if the color transitions happen at exactly the right locations, the change will generally be gradual and smeared, as the plastic in the hot end is gradually replaced.

Transition towers (or other purge methods) help with this.  When transitioning between colors, the material near the transition is deposited into a sacrificial tower or block. This unfortunately wastes a lot of plastic, but it does ensure clean transitions as long as the transitions happen at close to the right time. The color smearing happens — ideally — on the transition tower, and not on the part being printed.

A (short) transition tower. (Corresponding part not shown.)  As partial compensation for the extra plastic and time, some of these are genuinely beautiful.

The “secret sauce” to producing custom filament and transition towers involves two key parts: an autosplicer and custom gcode-processing software.

To combine up to four different filaments into a single stream, Mosaic’s Palette+ autosplicer uses seven stepper motors, a heater block, various sensors, a microcontroller, and custom-machined guides to precisely cut and splice the filament as instructed by the Chroma software. Four filaments enter; one combined stream leaves. It’s over-engineered as hell. This is not just engineering, but art. Fittingly, it’s housed in a very solid enameled stainless-steel case. Just don’t drop it on your foot. It’s a beast.

The Palette+ autosplicer, with its cover off.
(Image from Hackaday.com)

As an example of how the process works, here are the steps needed to produce a four-color print, using Sketchup for modeling and Simplify3D as the slicer.


The first step is to produce separate .stl files for each material of the process. These .stl files should not overlap geometrically in any places (since two different materials can’t occupy the same point in space.) Support requirements apply to the union of all of the materials, however. It’s OK if parts of one or more colors appear to be floating in midair, as long as they will be supported by other colors in the final print.

The four pieces of the model, separated.

These separate models are then made into groups and brought together in their correct final arrangement. This gives the resulting .stl files a common origin, so they can be easily combined in S3D. (One trick is to create the files with a uniform spacing of something like 50mm or 100mm, so moving them back when done is easy.)

The pieces of the model, with a common origin point.

The four models are then exported, one at a time. It’s a good idea to label them with the intended colors at this point, since the next step is to assign a separate process (and tool) to each of the models. This is what will tell Chroma which filament to use for which part. The printer has only one extruder, of course, but Chroma will use the tool information to know when the color transitions happen.

Next, the four models are imported into Simplify3D. They will probably be lined up in a row. Hold Shift and click on “Center and Arrange,” and they will all snap to the center. Make sure they look like they are correctly aligned, with no missing pieces.

Checking the fit in Simplify3D. (Those holes are intentional.)

The next step is to create four (usually identical except the tool number) processes in S3D. These should each use a different tool for the extruder (usually, 0, 1, 2, and 3 respectively.) I like to keep the rest of the settings the same. You especially should match layer height, bed temperature, flow rate, and other settings which could cause incompatibilities.) Assign each process to exactly one of the models with the “Select models” button at the bottom left of the dialog box. When all four are done, preview the print and choose to color by process/tool. If it looks right, save the .gcode file — but don’t hit Print just yet.

S3D preview, showing the four processes.

Now the first step is done — but we still need to make the transition tower and calculate the lengths of the splices for the Palette+ autosplicer. This is done in Chroma — special postprocessing software created by Mosaic for the Palette+ and other splicers.

In Chroma, click on Load Model and select the .gcode file you just made. Chroma will pause and analyze it for a few moments. When finished, it will display a preview of the model plus a transition tower. Clicking on the colored circles next to the four material selections at the top will allow you to change the colors of the model. (These serve to inform you and Chroma which colors are which — you, so you can load the correct filaments, and Chroma, so it can estimate how long the transitions need to be, based on the starting and ending colors. The splicer itself can’t tell colors or materials apart; differences are specified here manually.)

Planning the colors and transition tower in Chroma. (The same size tower can serve for multiple copies of a part.)

This not only helps you visualize what the final print will look like, but gives Chroma some information about how long to make the transitions. Going from light to dark filament happens quickly, for instance — but going from dark to light can take more time, as the darker color is visible for much longer.

When you click Save for Printer, Chroma will output two files: a file ending in .msf for the Palette+ autosplicer, and a modified .msf.gcode file to be printed. The .msf file is loaded onto a SD card to be put into the Palette+, since the Palette+ only has USB support for firmware upgrades, and is basically a standalone unit. Once the SD card is loaded and the file is selected under the Multicolor menu, the Palette+ will start producing filament after a few minutes’ warm-up time.

The .msf file goes on the Palette+’s SD card. Print the new .msf.gcode file, not the original one!

The .gcode file needs to be printed as usual — via SD card or Raspberry Pi or whatever. Simplify3D can still be used to preview the print in real time, provided you reload the new .gcode file using the “Preview .gcode file” option in the File menu. (The .msf script file controlling the autosplicer will expect the extra usage from the transition tower, as well as the included commanded pauses, so don’t print the original .gcode file.)

Once the .msf.gcode file is ready to print, the filament is loaded into the printer, passing through a distance measuring device to precisely monitor filament usage. The Palette+ will guide you as to the correct length of filament to feed into the printer. It will also judge how good a job you do; apparently an 0.3mm loading error (well within tolerances) is “Superb” loading. (I think I recall it deeming some of my first tries merely “acceptable.”)

The printer and splicer will then work together to produce the right lengths of each color of filament: calibrated pauses are built into the .gcode, causing the printer to periodically stop using filament for a few seconds at a time. The Palette+ detects this and uses this information to keep track of where the printer is in the print. It then adjusts the amount of filament produced so the transitions happen where they should.

The coin and its transition “tower.” (These are always the same height as the last color transition in the model.)

The process is definitely more involved than for single-color prints, but the results can be impressive.

Benchy Of Unusual Size.

It’s a surprisingly reliable process, if a bit complicated. Once I figured out that the filament has to stay dry in order to splice reliably, the Palette+ has been one of the most reliable parts of the printing process. (The new Palette2 does have USB control capability when used with the new Palette Hub.)

Happy printing!

Posted in 3D Printing, Reviews, Tools, Toys | Tagged , , , , , , | Leave a comment

Component Tester

The microcontroller revolution has accelerated the development of tools available to the electronics industry. Multimeters (recently, DMMs) and oscilloscopes (recently, DSOs) have been a staple of electronics workbenches for decades, along with signal generators, frequency counters, and other specialized tools.

All of these tools, however, have generally been made to make measurements of basic quantities — voltage, current, frequency, or perhaps subtler measurements like capacitance or even complex impedance, in the case of LCR meters. The intelligence has always been, ostensibly, with the operator.

Automated component testers.
Definitely not your father’s multimeter. (His required some skill to use!)

Tools like automated component testers are starting to change that. Instead of having to know what a particular component is and find the right instrument or come up with a test procedure, these devices help play detective for you. Connect a mystery component across two or three terminals, lower the latch, press the big blue button that is literally the only control on the unit, and it (usually) tells you what the component is, which terminal is which (if it matters), and even the specs.

For $15 or so, it would be a cool little device if it just did resistors; this kind of form factor can be convenient. But so far, I’ve seen it identify not only resistors, but diodes, FET and BJT transistors, capacitors, inductors, and (unreliably) combinations of two or more of the above, such as diode-plus-resistor combinations.

For components like diodes, it will give a good estimate of the forward voltage drop as well as the capacitance, which is easy to forget about until you wonder why your LED is acting like a capacitor.

Not just “it’s a diode,” but forward voltage and capacitance
(as well as which terminal is which — useful on some of the weird ones!)

…and knowing modern tech, there’s a good chance that it started life as an Arduino project.

Posted in Analog, Components, Electronics, Reviews, Tools | Tagged , | Leave a comment

NodeMCU

New toys are always such fun, especially when you find a replacement for a component that has more features, better specs, and costs half as much.

The Arduino Uno is deservedly popular. It makes introductory embedded system design easy, and has introduced millions to the fun of open-source projects. Generic versions are available for as little as a few dollars, and even the cheap ones generally more-or-less work okay. (Brand-name Arduino Unos cost more, but you’re paying for reliability. They just work.)

The Uno, however, is starting to show its age. It runs at 16MHz, which is adequate for most hobby projects but nothing exceptional. It has a popular-but-still-weird shield scheme, which works only because the Arduino ecosystem is so huge that there’s just about every kind of shield you can imagine and then some. And it’s still relatively expensive, for what it is — connecting it to the outside world still usually requires a computer or at least an expensive and not-very-capable WiFi or Ethernet shield.

Enter the NodeMCU

A NodeMCU 1.0 dev board

The NodeMCU 1.0 solves many of these issues. The NodeMCU is an ESP8266-based, Arduino-compatible dev board. Once you download the USB drivers and Arduino core, it can be programmed with the Arduino IDE. In addition, it’s breadboardable, has onboard WiFi, and costs roughly 1/2 to 1/3 as much as the Uno.

It also has better specs:

ItemArduino UnoNodeMCU 1.0
SRAM
2kB128kB
Flash ROM32kB4MB
Clock speed16MHz80MHZ/160MHZ
Usable I/O1813

It is a 3.3V part, so some designs may need to be modified. (3v3 is really the future of hobby electronics, anyway.)

Posted in Arduino, C, Digital, Reviews, Tools, Toys | Tagged , , , , , , | Leave a comment