Hackaday.com serves up fresh hacks each day, every day from around the web. Hackaday.io is a platform for people who like to make things. From electronics hacks to CNC hacks you can find all the hacks at one place here.
Here at Hackaday, we thought we’d seen every method of making PCBs: CNC machining, masking and etching with a variety of chemicals, laser engraving, or even the crude but effective method of scratching away the copper with a utility knife. Whatever works is fine with us, really, but there still does seem to be room for improvement in the DIY PCB field. To whit, we present rapid PCB prototyping with electrical discharge machining.
Using an electric arc to selectively ablate the copper cladding on a PCB seems like a great idea. At least that’s how it seemed to [Jake Wachlin] when he realized that the old trick of cutting a sheet of aluminum foil using a nine-volt battery and a pencil lead is really just a form of EDM, and that the layer of copper on a PCB is not a million miles different from foil. A few experiments with a bench power supply and a mechanical pencil lead showed that it’s relatively easy to blast the copper from a blank board, so [Jake] took the next logical step and rigged up an old 3D-printer to move the tool. The video below shows the setup and some early tests; it’s not perfect by a long shot, but it has a lot of promise. If he can control the arc better, this homebrew EDM looks like it could very rapidly produce prototype boards.
[Jake] posted this project in its current state in the hopes of stimulating a discussion and further experimentation. That’s commendable, and we’d really love to see this one move along rapidly. You might start your brainstorming by looking at this somewhat sketchy mains-powered EDM, or look into the whole field in a little more detail.
Light painting is the process of moving a light while taking a long-exposure photograph, which creates a sort of drawing from the path of the light source. It’s been done in one way or another since at least the early-to-mid 1900s, but modern hardware and methods have allowed for all kinds of new spins on this old idea. [Josh Sheldon] demonstrates just how true this is with the light painting he did for a gum ad, showing what’s possible with a single multicolor LED under CNC control combined with stop-motion animation techniques. The rest of the magic comes from the software. [Josh] designs the animations in Blender, and the paths are then exported and used as the instructions for his self-made Light Painting Machine. The machine therefore recreates the original animation with lights and camera and not a single computer-generated graphic.
For those of you who would like to know more, there are plenty of details on [Josh]’s Light Painting Machine on GitHub along with a more in-depth description of the workflow and software, so check it out.
Stop Motion Light Painting Gum Animation MAKING OF - YouTube
It’s a capable plotter, able to nicely reproduce both graphics and text.
The build gains X and Y axes by virtue of two salvaged DVD drives. The tray mechanisms come ready to go with stepper motors and lead screws already assembled, and make a great basis for a compact plotter. A wooden frame is constructed to hold everything together. The pen is held against the paper with a rubber band which helps the ballpoint to draw a nice dark line, with a servo used as a pen retract mechanism. An Arduino Uno with a stepper driver shield is then employed to run the show.
As a little experiment in desktop printing, because you can make a desk out of wood, [BlueFlower] modified a standard inkjet printer to print on wood. This is not an electronics mod by any means; this is still a printer that’s plugged into a USB port, does all the fancy printer firmware stuff, tells you to refill the yellow ink cartridge when you only want to print black, and all the other things that inkjet printer firmware will do. This is a mechanical mod. By taking apart the belts and rails and mounting them to a new frame, [BlueFlower] was able to open up the printer so a moving bed holding a board could be moved through the mechanics.
While the printer itself looks a little janky, you can’t argue with results. The prints look good, and should hold up well with a bit of finish. There’s a height adjustment for different thicknesses of stock, and if you’re exceptionally clever, you might be able to put a six-foot-long board through this thing. You can check out a video of this direct to wood printer in action below.
An eggbot is probably the easiest introduction to CNC machines that you could possibly hope for, at least in terms of the physical build. But at the same time, an eggbot can let you get your hands dirty with all of the concepts, firmware, and the toolchain that you’d need to take your CNC game to the next level, whatever that’s going to be. So if you’ve been wanting to make any kind of machine where stepper motors move, cut, trace, display, or simply whirl around, you can get a gentle introduction on the cheap with an eggbot.
Did we mention Easter? It’s apparently this weekend. Seasonal projects are the worst for the procrastinator. If you wait until the 31st to start working on your mega-awesome New Year’s Dropping Laser Ball-o-tron 3000, it’s not going to get done by midnight. Or so I’ve heard. And we’re certainly not helping by posting this tutorial so late in the season. Sorry about that. On the other hand, if you start now, you’ll have the world’s most fine-tuned eggbot for 2020. Procrastinate tomorrow!
I had two main goals with this project: getting it done quickly and getting it done easily. That was my best shot at getting it done at all. Secondary goals included making awesome designs, learning some new software toolchains, and doing the whole thing on the cheap. I succeeded on all counts, and that’s why I’m here encouraging you to build one for yourself.
What is an Eggbot?
Eggbots first entered my consciousness through Evil Mad Scientist’s EggBot kit. It’s the most refined that we’ve seen, and if you’re making your own machine it’s worth looking at where EMSL include adjustability in their design. But as promised, even a fancy one like this doesn’t have too much going on with the hardware side of things. Your bare-bones version only needs two stepper motors, a micro servo motor to lift the pen, maybe a skateboard bearing and some threaded rod here and there to make it adjustable and smooth. And of course, you’re going to need the electronic bits to drive it all.
Conceptually, one stepper rotates the egg around its axis of symmetry, the other rotates the pen’s axis so that it can travel north-south, and the servo lifts up the pen between strokes.
For motors, I used what I had on hand, and you probably can too. I bought a big handful of these discount NEMA 17 steppers from a local German supplier, and although they were cheap, they’re probably over-spec for an Eggbot with 0.34 Nm worth of torque. I’ve seen machines that use the ridiculously cheap 28-BYJ48-type gear motors as well, so even those could be made to work. The number of steps is key, and more is better, so you probably don’t want to use any old pancake stepper you find, for fear that you’ll get a low-step variant. For the pen, a servo is a servo, but you want a small one.
The particular frame I ended up with was a variant of this 3D model but redesigned to print without supports. It’s maybe not as flexible as the original, but tossing someone else’s design at a 3D printer is definitely the low-hassle way to go: download, slice, print, and come back in ten hours. If you’ve got a lot of threaded rod lying around, and want the extra flexibility, I’d consider this battle-tested frame or one of its derivatives.
But even if you don’t have a 3D printer, the mechanics of an eggbot make very light demands on the home builder. All motors are driven directly, so there’s no gearing to worry about. Eggs are light, so you don’t need to sweat about torque. And there’s almost no side-load on the pen tool, so you don’t have to worry particularly about frame rigidity. Have a look at [Zaggo]’s SphereBot made of MDF scraps, or [derwassi]’s CNC Eggbot made of thin plywood for inspiration.
The electronics include two stepper motor drivers and a microcontroller to run the show. I went online to look for Pololu-style A4988 stepper drivers, because I’d used them ages ago in building a 3D printer. I remembered them to cost around $10 each, so I was looking at $20 and a bunch of DIY work. Instead, I found a complete kit with “Arduino”, shield, four (4!) stepper drivers, and even a USB cable thrown in for €15, delivered. Search “arduino grbl cnc shield”, do not collect $200, do not pass Go, and head directly to checkout. Maybe pick up two, because they’re an incredible bargain, and you can’t beat it for development time spent on the electronics side of things. Without the “Arduino” you can get one for €7 and use whatever micro dev board you’ve got sitting around, but you’ll have to do the wiring yourself.
I splurged. After all, minimizing my time and effort spent on the project was the prime directive. Other than soldering compatible headers to my servo motors, everything was plug-and-play. If you haven’t bought oddball servos, you might not even need to warm up the iron. Splurging unfortunately meant waiting, though, and I sat around for a week and a half with a printed and assembled eggbot on my shelf, waiting for electronics, cursing my laziness. Total human time spent on the project, under two hours, and most of that was browsing 3D printed frames online and re-designing some 3D-printed parts to work around my oddball servos. So I guess the waiting pays off.
Wares: Firm- and Soft-
“And the rest is a simple matter of software.” While sourcing all the parts and building the bot took two hours, I spent at least that long looking for the right combination of software and firmware to drive this thing. Learning to use what would become a toolchain took four or five more. I’ll spare you as much of that learning curve as possible.
The plan was to have the eggbot deal in plain-jane G-code because it’s the lingua franca of CNC machines. This is where we part ways with Evil Mad Scientists, because they use a proprietary protocol, even if it is open, well-documented, and frankly pretty well thought out. If you just want eggs pronto, that’s a good way to go. But if you want to apply what you learn here to any other CNC machines, from DIY 3D printers to the fanciest of multi-axis industrial milling machines, you’re going to want to deal in G-code. I needed an ATmega328 G-code interpreter.
To build up Bart’s firmware yourself, you can download the latest GRBL, then download Bart’s modifications and copy them over the original files. Or just download this repository where I already did that for you. You will want to change the PEN_SERVO_DOWN and PEN_SERVO_UP lines in spindle_control.c to tweak how far the servo moves for pen up and pen down commands. It’s on a scale of 0-255, and 127 is halfway. After this setting, you’re just a make flash away from installation. Arduino folks, you can also compile it in the Arduino IDE.
With firmware on the machine, it was time to play. Plugged into a computer, the eggbot shows up as a serial port (8N1, 115200 baud) and you can open up any terminal and type G-code at it. It echoes “ok” when it’s ready for a new command, and it appears to queue up a few commands on the “Arduino”. You’re going to need to tweak the firmware configuration in a minute or two, so you might as well get used to talking to the machine. G0 X 3.14 Y 0.50 Z 5 will move all axes in sync, lifting up the pen.
The final step is getting arbitrary artwork converted into G-code. Perhaps the easiest way is using Inkscape, which comes bundled with a “Gcodetools” extension that will do what you want. It’s what I’m using at the moment just to get things done.
But if you’re going to play around with fancier CNC machines later, you might want to investigate something like PyCAM or dxf2gcode. I enjoyed the former, but it’s way overkill for simple stuff like this. Although our own [Josh Vasquez] swears by dxf2gcode, I couldn’t get it running. Something about GUI library versions. Yuck.
Frankly, this last step in the toolchain is where I’m weakest, so if you’ve got any good CAM solutions that are aimed at simple engraving, let me know in the comments. Ideally, I want something scriptable that I can just pass an SVG file and a scaling, so that graphics to plotting is a one-liner.
You may also want a simple script to send G-code to the eggbot. Here’s the one I’ve been using. Note that controlling the eggbot is as straightforward as writing a line to the serial port and waiting for an “ok” in return to send the next.
Tweaks, Optimizations, and Where the Bodies are Buried
And you’re done! At least on paper. Working with all of the sub-parts of the project is fun, and I learned a lot even though I’ve already had tons of CNC-esque experience through DIY 3D printers. Here’s “everything else”.
Machine configuration and GRBL calibration is probably the first step. GRBL has settings ($100-$130) that define how many steps per millimeter the machine is set up to take in the physical world. Printing on eggs is strange at best. As you move north to south, the radius around the egg changes, so “x-steps per millimeter” changes as you move from top to bottom of the egg. What is constant is that with 200 steps per rotation and 16 microsteps, you have 3,200 steps per rotation. A simple choice here is to set “x-steps/mm” to 1, so that an egg is exactly 3,200 steps wide, which is easy for working with graphics — just set the image width to 3,200 pixels or millimeters.
The y-axis is another story. Eggs aren’t perfect spheres, so an angular step near the top is slightly different from that in the middle or the bottom. I printed out a bunch of squares and tweaked the “y-steps/mm” until it was about right around the equator. It’s pinched at the top and the bottom, but that’s life. Cartographers haven’t solved this problem with centuries of effort, and the earth is less egg-shaped than what comes out of a chicken anyway. I ended up with 0.7 y-steps/mm.
Compared to the defaults, I have just knocked the steps down by a factor of about 1,000. I needed to scale up the maximum speed and acceleration parameters accordingly to get the motors to move at all. Here are my configs. 20,000 steps/minute is about 6.25 RPM. How fast you want to push it depends on how grippy your egg holders are and how runny your pen is.
Now you can figure out what the total y-axis travel for your eggs are. Mine are around 1,000 pixels with this scaling. The Evil Mad Scientist standard egg seems to be 3,200 x 800 pixels. Now you know what to look for in artwork.
Speaking of egg holders… My steppers don’t have normal 6 mm flatted shafts, so I had to design egg cups myself. The standard solution for holding eggs is to use a little spring tension and the suction cups from kids’ toys. This is not optional — eggs will slip when you change directions if they’re not held in with something sticky. I couldn’t take my son’s toys apart, so I super-glued some old bike inner tube, and the rubber surface seems to grip just fine.
Getting the machine aligned right is important. The egg needs to sit in the cups so that it rotates true. Spin the axis a couple times by hand and adjust until it doesn’t wobble. Because an egg is not a sphere, you will want to lower the center of the y-axis below the center of the egg so that it traces out chords rather than circles relative to the egg, in order to minimize the difference in pen-drop from equator to top or bottom of the egg. Getting the optimal pen height here is also a matter of trial and error (but see orange Sharpie collar above) as is centering the egg north-south. A sample from our fridge suggests that you may want to tweak settings for particularly funny-shaped eggs. I know I’ll never look at a dozen the same way again!
First off, we’ll admit that there no real practical reason for wanting a wooden mouse – unless of course the cellulose rodent in question is the one that kicked it all off in “The Mother of All Demos” fifty years ago. Simply putting a shell around the guts of a standard wireless optical mouse is just flexing, but we’re OK with that.
That said, [Jim Krum]’s design shows some impressive skills, both in the design of the mouse and the build quality of his machine. Starting with what looks like a block of white oak, [Jim] hogs out the rough shape of the upper shell and then refines it with a small ball-end mill before flipping it over to carve the other side. His registration seems spot on, because everything matches up well and the shell comes out to be only a few millimeters thick. The bottom plate gets the same treatment to create the complex shape needed to support the mouse guts and a battery holder. He even milled a little battery compartment cover. He used a contrasting dark wood for the scroll wheel and a decorative band to hold the top and bottom together and finished it with a light coat of sealer.
If you’ve worked with a laser cutter before, you might not find much new in [Maker Design Lab’s] recent post about getting started. But if you haven’t, you’ll find a lot of practical advice and clean clear figures. The write up focuses on a tube-style laser cutter that uses a gas-filled tube and mirrors. Some cheap cutters use a diode, and many of the same tips will apply to those cutters.
You can probably guess that a laser cutter can cut like a CNC and also engrave where the cut doesn’t go all the way through. But it can also mark metals and other surfaces by using a marking solution. If you’ve done CNC or 3D printing, the process is similar, but there are a few unique things to know, like the use of the marking solution.
The best piece of advice about buying a laser cutter is the same one we give about buying a 3D printer. Try not to do it at first. If you can find a machine to use at a library or a hackerspace, then you should learn on that. There are even services that will do laser cutting for you for a fee. Once you have a feel for what you are doing, you’ll have a better idea if you really want to buy one yourself and what you need.
Among the practical material advice are such pearls as “use plywood with interior glue” and the fact that HDPE melts and may catch on fire. Even more important is the list of materials you should not cut due to the production of toxic material. For example, leather that contains chromium can produce toxic material as can carbon fiber and certain resins. You might wonder why leather contains chromium, but it is used in many tanning processes. You need veg-tanned real leather if you want to process it in a laser cutter. The Dallas Maker Space has a good page on what you should not cut and why, if you want more details.
In addition to material selection, the post covers creating a design file and setting up the printer. Obviously, the exact steps you’ll use will depend on your cutter, but there’s good general advice about preparing files and setting the power, speed, frequency, and focus of the laser cutter.
Yes, you can whip up a design for a printed circuit board, send it out to one of the many fab houses, and receive a finished, completed board in a week or two. There are quick-turn assembly houses that will manufacture a circuit board and populate it for you. But sometimes you need a board now, and that’s when we get into home PCB fabrication. You can do this with either etching or milling, but [Renzo] has a great solution. He built a 3D printed milling machine that will make a printed circuit board.
The design of this tiny micro mill is based on a handheld rotary tool, also called a Dremel, but that’s like Kleenex, so just buy a Proxxon. This mill is designed with 3D printed T-track and constructed with linear bearings on smooth rods with standard NEMA 17 stepper motors and herringbone gears for little to no backlash. There is quite a bit going on here, but lucky for us [Renzo] has a video tutorial of the entire build process available for viewing below.
We’ve previously seen some of [Renzo]’s previous efforts in homemade PCB fabrication, up to and including applying green soldermask with the help of Fritzing. This is good, very good, and the only thing that really separates this from manufactured PCBs is the lack of plated through holes. That’s just a bit of graphite and electroplating away, and we’re looking forward to [Renzo]’s further adventures in making PCBs at home.
Some tools are so common, so basic, that we take them for granted. A perfect example is the lowly tape measure. We’ve probably all got a few of these kicking around the lab, and they aren’t exactly the kind of thing you give a lot of thought to when you’re using them. But while most of us might not give our tape measure a second thought, [Ariel Yahni] decided to create an absolutely gorgeous new enclosure for his. Because if you’re going to measure something, why not look good doing it?
A CNC router is used to carve the body of the new tape measure out of a solid block of wood and cut a top plate out of clear acrylic. [Ariel] then used an angle grinder to cut off a small section of steel rod which he secured into a carved pocket in the base using epoxy. Finally, the internals of a commercial tape measure were inserted into this new enclosure, and the acrylic top was screwed down into place.
[Ariel] has made the DXF files for this project public for anyone else who wants to carve out their own heirloom tape measure, though it seems likely the designs will need some tweaking depending on the make and model of donor tape measure. While this might not be the most technically impressive project to run on Hackaday, it’s still a fantastic example of the sort of bespoke designs that are made possible with modern manufacturing methods.
The molds were designed in CAD prior to casting, ensuring there was room for all required components.
The build is one that could be readily achieved in any decently equipped makerspace. [John] used lasercut steel parts to construct the molds for the epoxy base, with some custom turned parts as well. The precision cut parts fit together with great accuracy, and with proper control of the casting process there is minimal post-processing of the final cast piece required. The mold is built with zero draft angle, and is designed to be taken apart to remove the finished pieces. By using steel, the same mold can be used many times, though [John] notes that MDF could be used for a one-off build.
The base is cast in epoxy, mixed with granite aggregate and sand to create a strong, heavy, and vibration damping material. There are also steel reinforcements cast in place consisting of threaded rods, and conduits for various electrical connections. After casting, [John] has spent much time measuring and truing up the mill to ensure the best possible results from the outset.