Make Yourself More Precise

I’ve invented a new and exciting way to probe circuits more precisely. An old idea used in a new context. After using it, I can say it is a must for any electronics bench. What is it?

I have been building electronic circuits for a long time, but only in the last few years have I gone all-in with itty-bitty surface-mount parts. I built a reflow oven. I got a stereo microscope so I could see what I was doing, and I practiced soldering and reworking under the scope. I was surprised to discover that for many operations using surface-mount components was faster and easier than using through-hole packages. Why hadn’t I switched earlier?!

The one part that was getting harder was troubleshooting the boards.

 I had a board with a chip in a little QFN 28 package, and each pad was only 0.25 mm wide. The board wasn’t working. I really needed to figure out what was going wrong, but some of the important traces didn’t go though any exposed areas except at those tiny pads. How the heck was I going to probe this thing?

If I just went in with a scope probe, I was certain to short something out. I just don’t have a steady enough hand to poke around with sub 0.25 mm precision. That’s when it hit me. Engravers use something called a Pantographic Engraver to put the tiny lettering on wedding rings. Could I make some sort of Pantographic Probe to let me probe around the circuit willy-nilly with crazy precision? Yes. Yes, I could. That’s how the Pantoprobe was born.

You can build a Pantoprobe for < $20 if you have access to a 3D printer and a few hand tools.  The project has even been featured on Hack-a-Day and Makezine!
I hastily modeled a basic pantographic mechanism to 3D print. The one tricky part about a pantographic mechanism is that the joints have to have very little slop or stiction. I decided to use telescoping brass tubing at the hinge of each joint, with a pair of washers reducing vertical slope. I used a camera ball joint (that I had sitting around) as the base. This ball joint also lets you tilt the probe at different angles, providing an extra degree of freedom that most pantographs don’t have.

I printed a few test joints. The joint design seemed to work very smoothly, and I was ready to give the full assembly a try. What to use as the actual probe? I had some spring steel piano wire around, so I crimped a bit into another piece of tubing, ground a tapered pad on the end, and stuck the whole thing through the center of the pantograph’s output joint. That plus an alligator clip and it was time to take the probe for a test drive. Would it work?

I was amazed to discover that not only could I reliably place the probe on the center of the solder pigtail of those .25mm pads, but I could feel the probe pressing into the solder. Crazy! That tactile feedback really makes it nice to use. The contact is more than stable enough for me to look away long enough to read the oscilloscope/multi meter. Trouble shooting tiny boards will never be the same!

I did some more designs to make the probe fold up more tightly so it could fit in my pack of trouble-shooting widgets. I also ordered some cheap ball joints from China since it seemed like I’d be making more of these things. The probe was a HUGE win: Cheap, not that hard to build, makes the impossible possible. What else could I do with this idea?

I could already do Pick and Place with tweezers, and it wasn’t a big problem. I had some parts sitting around for building a suction pick and place tool, but I’d never gotten around to building it because, hell, I could just do it with tweezers. What if I gave the Pantoprobe an extra-precise rotational axis and plumbed a suction tip into it? Would that be awesome? So I built this Pantographic Pick and Place device.

Now THAT looks like a actual mad science invention. I used two o-rings to act as drive belts for an index-finger controlled rotational axis. The suction comes in via a pivot that then passes though the pantographs output axis and comes out to a syringe with swappable tips. Here you can see a small green tip holding an 0603 resistor. This was a bit more complicated to design.

My 3D printer really got a workout. I printed 7 different versions of just the hose clip! I went crazy and even designed a box to hold all the tips. In the end, it works, it’s nice, but it doesn’t have quite the super high return on investment that the Pantoprobe has. It’s only two 0-rings and a syringe kit more expensive to build than the Pantoprobe. As long as you already have some system to provide suction.

If you do a lot of pick and place and would like a steadier hand, you should build one. But it doesn’t make the impossible possible like the Pantoprobe. That’s the real killer app.

What else?

I realized that for measuring high frequency stuff the Kurt’s-random-piece-of-piano-wire sure left a lot to be desired. Maybe I could make a scope probe holder for the Pantoprobe?

The scope probe was going to have to stick out at an angle so I could still see the end under the microscope. Because it would stick out a long way from the axis, I had to worry about rotational slop. So I designed this rod that slides from the output joint though the opposite joint to lock rotation. At first I thought of this as just an insert that pops into a stock Pantoprobe, but as I struggled to keep the probe from twisting/flexing, I realized I was going to need to do something that attached both at the top and bottom of the joint. I printed it in two pieces and glued them together, and I also glued them to the shaft that goes though the joint. There’s no removing that thing. I added two zip tie ports so the probe could be fully locked in if need be.

Did it work? Sort of. Through my microscope I can’t see the actual tip, so you have to kind of think “the tip is right below the arc that is the side of the probe,” which kind of sucks. It wouldn’t be a problem if you’re just using an Opto-Visor instead of a scope. I also eventually figured out that my “clever” bar and tilted probe arrangement was reducing the precision multiplier of the pantograph, to something like 2x.

That plus the greater flex from the long probe extension makes the system less ridgid. It works, but the confidence factor/feel are not as good. Sometimes things slip. Another round of design on this one could make it stiffer and also increase the precision multiplier. I’ll have to see. This one is still very much a work in progress.

Maybe it would be smarter to make the piano wire probe into a more real probe in some way? Using 10:1 resistor divider and some coax cable, etc.

What else?

I thought maybe I could lock down the base so it’s easier to probe one handed. The great thing about using a 1/4-20 mounting nut is that I can use any sort of cheap camera mount. Luckily I’d ordered a suction cup mount when I’d gotten the ball mounts, so I was ready to give it a try.

The bad news is it’s hard to get your board in close enough with all those suction cups taking up space. The good news is that one-handed operation is reasonable with this setup. Two-handed usage makes it easier to hop large distances, and feels a bit more fluid but one-handed works.

I tried using my Third Hand to hold the probe locked on some test point, but it was infuriating. It really just didn’t work at all. Trying to position it was a mystery of over shooting and undershooting. A true fail. I was beginning to think maybe a fully locked test point wasn’t going to be a thing I’d be able to do. Then I realized I was over thinking the problem. I discovered that with a bit of technique you could lock the ball joint with the probe just a bit above where you wanted it, and then you could position it and the weight of the probe would hold it in place. Woot! Now you don’t exactly want to dribble a basket ball next to the “locked” probe, but it’s better than “you can’t do that,” and for bigger/safer test targets like a via I’d say it is safe enough. Still the rig is kind of huge. Maybe a smaller suction cup base would make it a lot better.

What’s next? Maybe an Exact-O blade tip for cutting traces? A higher precision multiplier one for people with shaky hands? A Dremel tool holding one? A soldering iron one? I think there are a lot of other good ideas hovering around this one. Build yourself a Pantoprobe. Give it a try. You won’t regret it!

Where do you go from here?

I feel like this is an important invention. Looking around, I didn’t see anyone making a product like this which is kind of crazy.   So I’ve done a lot of work to get the word out. I have the basic PantoProbe models on github. I made a video explaining the probe and another showing you how to  assemble one.  I set up pantoprobe.com to have a central place to point people, and where people can share ideas.

After building quite a few of these probes I also realized that there should be a simpler version of the probe that doesn’t have the complicated joints.  A very simple flexure based model.  So I developed the PantoFlex.  It doesn’t have the same range of motion as a full on probe, but it is almost trivial to print and use.  I also make it come apart so it could be printed on some of the smaller 3D Printers.

PantoFlexParts

Get out there and try one!

 

Advertisements

Soldering Iron Drill Press Adaptor

ironAndInsertsHere’s an cheap and easy way to accurately press metal thread inserts into 3D printed objects.

3D printing provides a wonderful way of making custom boxes for all your projects.  Often these boxes are held together with self-tapping screws driven into plastic holes. That’s great if you are only opening and closing the boxes a few times, but eventually cross threading/stripping will make you sad.  Think how much more awesome the boxes would be if they had integrated metal threaded holes!

threadInsertPressThankfully, that’s pretty easy to do. You can get brass inserts specifically designed to be heated and pushed into plastic. McMaster Carr sells such inserts and the irons and tips used to push them. The inserts themselves are pretty cheap, but once you add an iron and a number of different tips, the price starts creeping up, leaving you having to push the inserts in by hand.

So I had the idea of making a little adaptor for mounting a soldering iron in a drill press.  This process allows you to be sure you are pressing the insert in plumb to the surface, and you can set the drill press’s depth stop so you can press a number of inserts in to just the right depth. Easy peasy.  Hey look this post was even featured on Hack-a-Day!

I used this soldering iron because it’s the cheapest iron I could find that came with a number of replaceable tips. You can convert some of the tips into thread-pushing tips and still have a couple left over if you’d like to use the soldering iron as a soldering iron.  It also has a heat adjustment that should be cranked down to minimum for this project.

wireSizeOfHolderMounting the iron on the adaptor is simple. You just pull the rubbery strain-relief collar from the back of the iron, stick the iron into the hole at the bottom, thread the wire up through the slot, and re-mount the collar into the hole on the side of the adaptor.  PRESTO! You have a soldering iron ready for the drill press!

Remember folks, never turn the drill press on while you’re doing this!  Being whipped in the face by an electrical cord is bad news.

inTheDrillPressWithCaseMaking the tips was easy.  I have a lathe, so it was trivial to machine two of the soldering tips into 4-40 and 6-32 tips for pushing threaded inserts.  The geometry of these things is pretty non-critical.  Just a nub on the end that has to be smaller than the minor thread diameter and a square shoulder that does the actual pushing and heat transfer.

puttingInsertIn

If all you have is a drill press, it’s probably still pretty easy make a serviceable tip by chucking the tip into the drill and turning it at your lowest RPM setting. Then you can use a metal file to cut a shoulder 2/3 of the way up the tip.

Heck, you can probably even just use a cone tip as it is, but with less good heat transfer and less of a guarantee that it will stay plumb.  Thankfully, the inserts go into a tapered hole, so that should help them stay aligned as you sink them in.
sunkProperlyThese tiny inserts will heat up super fast, so set your drill press stop so you can press them in and retract quickly. If you pause too long the whole area will get soft and your insert may end up like this.

So there it is: $16 and one 3D print between you and metal thread insertion nirvana.

Laser Cutter Tips and Tricks

  • Do designs in alignment, but then break up all the objects into “cut sheet” layers organized by the material they need to be cut from.
  • Do design in exact dimensions without kerf compensation, those tiny .002 changes are nearly invisible and will drive you crazy. “Did I already compensate that?” I only every apply the compensation to a copy of a single layer I’m going to cut and then save it out as a ToCut version of just that layer.
  • Design with groupings for easy editing, but collapse parts down into individual compound paths using the path finder when you are making your cut sheets. This helps offset paths do the right thing for kerf compensation.  If everything comes out right, but you have a few holes that are way to large, you forgot to collapse them, and the kerf compensation made them bigger instead of smaller.
  • Control Cut OrderControl Cut order.  If you’re cutting open paths or have closed paths that overlap the normal “inside before outside” cut ordering won’t apply if you care about cut ordering organize the parts into separate cut passes.
  • Look out for exactly duplicate paths hidden on top of one another. That causes double cut problems. Find them by zooming way out so the anti-aliasing makes the overlapping ones appear darker.
  • Do Not Put Parts Too Close TogetherAvoid paths that are too close together.  The thin sliver of material won’t be able to dissipate the heat as well as a wider section and may melt or burn.
  • Use tape to hold pieces in so the excess material forms it’s own parts organizer.  You’ve already carefully laid these things out in an nice sheet, why not take advantage of that?
  • Use 3 ring binder sleeves to hold on to thin sheets of organized parts. If you’re using the tape and excess material trick above, if you limit yourself to 8.5″x11″ sheets of thin material you can orgnize a zillion sheets in one three ring binder.   Just be careful not to pick it up upside-down.
  • Use pulse rate to control edge properties lower on wood for a less chared edge. Higher on plastic for smoother finish.
  • Remove uneven protective coatings.  If cutting pastic with an uneven or bubbled protective sheet of plastic on top peal it away first to get more consistent cuts.
  •  minimizeRasterDistance raster areas into blocks to minimize the raster span.  When raterizing the laser goes back and forth over and over. The shorter the distance it has to go the quicker the raster progresses.  Clumping your raster parts can really cut down on the amount of time spent waiting.
  • Pay Attention To Grain DirectionPay attention to the grain orientation on wooden parts.  It’s important visually and also important structurally.  It’s not as important for plywood.
  • Use char artifacts to you advantage.  When laser cutting wood the compressed air blast adds a charred “cut shadow” on the upper surface, you can orient parts to take advantage of this, by making that shading part of the design.
  • Do small test cuts with a particular laser and material before deciding on the settings for a long set of cuts. I usually use some 1/4″ circles in a scrap area of the design.
  • On wood go a bit slower than your test cuts indicated. Wood is not a uniform material go slower/use more power than the minimum you needed for your small test cuts so as not to leave a few tough areas uncut at the bottom that you’ll need to cut loose and touch up.
  • Push Parts Out In Correct DirectionPush not-fully-cut wooden parts toward the bottom.  If the wooden part very nearly cut though and you’re able to just push the parts free, pushing on the top of the part makes sure that any splinters that pull free at the uncut areas pull free from the scrap around the part.  If you push the other direction the splinters come off your part, and ruin it.
  • Use a wood burning pencil to hide hand cut edges.  If you have to cut some wood loose, trim splinters, or sand down some edge it will leave unburnt bright wood in the otherwise evenly burnt edge.   You can shade these areas in with a wood burning pencil or cheap soldering iron so they mostly disappear.
  • Don’t make everything a rectangle.  Part of the lasers power is awesome curve cutting. Don’t make everything a rectangle. Add some curves. Not everything has to be 90 deg or a strait line.  Do not assume everything is a box.
  • Use Scrap To Form Clamping JigUse the scrap around a cut piece to form a handy clamping  jig.  If you use complex shapes they can be hard to clamp for gluing.  The scrap material around your part fits it like a glove and a few extra cut lines can make that come free and you can use it to hold your part in a clamp while gluing.
  • If  your forming a box edge with mating fingers don’t use alternating squares.  Work joins into your design.  Make a nicer more intentional patterns.
  • HideTabs Under Other ObjectsHide slot an tab connections if you can.  Sometimes you need some tabs and slots to hold on a part, and you haven’t been able to make the tabs fun enough to work into your design, you can do other things to deal with them.   You can hide them under glued on decoration or reinforcement pieces, you can position them under other attaching pieces.  You can laser etch transitions to make them more interesting than just a weird rectangles.  Jazz it up.
  • Use an alignment jig to force holes and pins to be plumb.   Just because a pin joins two pieces don’t assume that the pin is plumb, the conical cutting of the laser means there’s nothing forcing it to be plumb. For 1/8″ pins I use a drill press to make a 1/8 plumb hole in a piece of wood, and put a stub of 1/8″ rod in that hole. Now if you stack two pices on the rod and down onto the surface they’ll be reasonablly plumb and you can glue them.
  • Use the protective paper on acrylic as a paint mask.  If you laser etch into acrylic though the protective paper, the remaining paper makes an awesome paint mask.  If you don’t need super alignment between the raster and vector cuts you can even do the raster pass first, paint, and then do the vector pass. That lets you paint the whole sheet willy nilly without having to worry about getting paint down in the cuts, or having to paint individual little pieces.  Take care to use some extra power/slowness to fully etch though the paper and into the plastic.  If you “only just barely” etch though you can have sticky residue from the paper still on the plastic and that is real pain to remove.
  • It takes more power/takes longer to cut/etch though plastic that has the paper on VS not. (and it’s different for paper/plastic protective layers)
  • If you’re cutting lots of small plastic parts consider pealing the protective paper away first.  If you don’t need a super pristine surface finish free of any slight fogging near the cut lines it’s way easier to just peal the protective paper/plastic away before you cut.  It’s a time sink peal it off a zillion tiny parts individually.
  • Cut Out Unused Sections for ReuseUse extra cut lines to separate and save unused areas.   When you lay out parts for cutting, you often have some areas that are not used.  If you add some extra cut lines to cut those ares into their own rectangles.   It’ is much easier to re-use that material and it’s much more compact to store.  Trying to hit some good areas in a big sheet full of holes is hard and a waste of your time.
  • Cut fancy paper weights. If you’re cutting very thin things like paper it will often just blow away while you’re cutting it because of all the air motion in the machine.   If you take a wood or plastic sheet and cut out a part just inside/outside the lines you’re cutting in the paper the sheet can form a curve hugging paper weight for both the inside and outside of the cut.  With those pieces in place while you cut the paper stays put.
  • Use tabs to hold paper shapes in place. Paper parts can blow away so put gaps in the cut edges to keep them in place. Position the tabs where it will be easy to trim them (avoid corners or curves)  Cutting the gaps screws up the lasers inside/outside cut ordering so use explicit layers to control ordering. You can get away with a single tab if you put it “upwind” of the direction the compressed air on the laser will be blowing.
  • Make a paper clamp. If you want to cut a lot of sheets of paper all at once you can use the “fancy paper weight” idea but use 1/4-20 bolts and wing nuts to make a clamp to hold the paper together as a single chunk. (be on the lookout for fire though!)  I did this to cut secret compartments out of books.  It works but is messy and kind of a pain.
  • Use the mechanical properties of your material. Thin areas can be used to add springiness  Keep in mind that sharp corners and nicks can concentrate stress.
  • Cut some extras. It’s always a trade off between cutting time and output, but if your project needs 5 of something consider cut 6 or 7 of them. If they’re tiny or easily broken cut more.
  • Look for the flash. If you want to know if the laser is compeletly cutthing though your material, look for the flash as the laser hits the honeycomb support below the material.  If there are no flashes then you’re not getting all the way though.   This is easier to see with acrylic, not so easy to see with wood, etc.
  • Remove Inside CornersFor 90 deg braces cut out the inside corners.  If you are added braces to hold other pieces in alignment, and they’re just a tiny bit off the inside corner of the brace will push the brace away and spoil the glue bond.  Removing the inside corner makes the glue up more forgiving and makes for stronger joints.
  • Use water to deal with bowed wood.  Often with a sheet of plywood it will be somewhat cupped.  Instead of trying to fight that with weights you can use a paper towel and water to moisten the concave side.   In a couple of minutes the water will make that side of the wood expand and flatten out the wood.  I’ve used this to great effect on 1/4″ plywood.
  • Use water to protect thin sections on multi pass cuts.  In wood it’s easy to have thin sharp angled features char badly on the second pass.  Between passes use a syringe to put a tiny amount of water into the groove at these points.  The water will soak into the walls and keep them from charing as badly on the next pass.
  • Etch an alignment aid.  Want to laser etch consistently at a specific location on an uneven shape?  Etch an alignment sheet with the outline of the foot of the shape and use that to position the parts.   If you etch the alignment sheet deep enough it can even positively position the part since it’s footprint will click into the etched depression.  You can even use a flat bed scanner to figure out the footprint if it’s complicated.
  • Spiral cut to make deep pockets. Want to cut a deep pocket that doesn’t go all the way though? You can vector cut a tight spiral. You have to experiment with the specific material to get the right spacing. If you can try to etch from the center and spiral outward. Watch out for major heat build up.  Fire risk.
  • Be careful about versioning.  If you have a project witha lot of parts and your iteratively improving the parts take care not to mix versions of the parts.  It’s better to pitch old versions of the parts then to try and tell which ones have  modified slots that are 0.005″ narrower.
  • Check design orientation when cutting multiple passes in wood.  If you have long features where the laser moves in the same direction as the forced air at the cutting head that air will blow back along the cut fanning  any coals formed on the walls.  This makes the charing much worse. Try to orient the wood so the air blows across the grooves not along them.
  • Slow rasterization for dark details.  I used to always use max speed for rasterization, and adjust power to suit, but if you’d like to put dark details on wood it’s better to use lower power and slower speed to char dark details that are not deep.
  • Cut part way though to do kerf bending.  If you cut a lot of parallel lines most of the way though the material it makes the material much easier to bend.  If you are doing this in wood make sure to cut perpendicular to the grain so it doesn’t just split when you bend.

If you have other laser cutting tips put them in the comments!

Plexitube Owl Clock

owlTickAnimationSmallFor Christmas I designed and built six steam-punk owl clocks that have a novel faux Nixie Tube display. Nixie tubes are wonderful with their glass tube bodies and brightly glowing numerals, but think how wonderful a solid-state low-power any color “Nixie Tube” would be!

The basic idea is that you position an LED at the edge of a piece of acrylic that has a pattern laser-etched into its surface, and the LED lights up the pattern. Long ago I’d realized that a stack of 10 laser-etched digits with an LED to light up each digit might have the same visual charm as a Nixie Tube, and the Plexitube was born.

I’m pleased with the way the project turned out.  I’ve put the software, circuit designs, and illustrator files up on github. I even made a short video of one of the clocks in action.  The project has even gotten some attention from Hackaday and won this Reddit unconventional clock competition.  Thanks a lot guys!

owlEyeElementsBackAndForthSmall

At the time it was unclear if light bleed between the layers would make the digits hard to read, so I sat on the Plexitube idea for a long time waiting for a project that could use that kind of display.

Then I went to work at a new company, and I had to spend an entire day listening to benefits summaries and corporate on-boarding. To pass the time, I started to do some sketches of an owl made from only two pieces of wood. I used my Swiss army knife to cut my co-workers’ name tags into owl prototypes. I really liked the design, and I thought it would be perfect for an owl-shaped clock with Plexitube eyes. Would this be this year’s Christmas Project?

I can’t really start a Christmas Project until after the Halloween Costume builds are done, but this project couldn’t really take shape until I’d at least tested the viability of the Plexitube. I figured if I just spent one evening laser-etching a digit stack and holding it over an LED, I could figure out if the displays were going to be an unreadable mess. If it failed, I could pull the plug on the owl idea before they got out of the paper prototype stage. So I spent one of my Wednesday nights making a prototype stack.

VeryFirstTestOfPlexitubeThe prototype stack had a lot of issues. The back digits where hard to read, there was a lot of inter-digit light bleed. I really couldn’t say for sure whether this was going to work. That’s pretty much the worst-case scenario for a make-or-break prototype. Really, I should have just stopped then, but I couldn’t stop thinking about the nice owl shapes.

The Impossible Project

Halloween came and went and I needed to decide. I even went so far as to do some prototypes of an alternative project that was much simpler, but I could tell that the owls were the ones that wanted to be made. I’m usually pretty careful planning one of these projects, and never before had I taken on one that had so many BIG unknowns. I’d never worked with surface mount electronics, never bent wood to such small radii, never designed a PCB with a lot of exact physical layout constraints, and never used an in-circuit programmer. I decided to go for it, but I knew I’d have to get first-time-success-lucky on a number of things, and I told my coworkers that I did not expect to succeed.

Two months and counting

realTimeClocksTime to make a lot of quick choices and order stuff from China. I chose the popular Neopixel surface mount LED as my light source. They could be any color and all 40 of them could be controlled using just one pin from my controller. I decided to go with the ATMEGA328p, which is the same chip in an Arduino UNO. I was building 6 clocks, so I’d need 240 LEDs. I ordered a reel of 500 from China, along with some surface mount capacitor and resistor assortments, photo resistors, and some DS3231 real-time clock modules with battery backup. Ordering things from China is very cheap, but it can take a few weeks for the stuff to show up, so I had to get that moving quickly.

Now ordering printed circuit boards from OSH Park takes something like 10 days, so I really needed to get that in the pipe. If the first set of boards were a complete blowout, I could still get a second order in, but I had to hurry.

lightGuidesCloseupThe LEDs I was using are much fatter than that 1/16″ acrylic layers I was using, so each layer needed to have a sort of integrated light guide leg that would stick out and sit directly above the 3 tiny color chips inside the LED. The alignment had to be exact. So I measured an 10-layer alternating stack of acrylic and black card stock to get the exact spacing, and then I had enough info to begin laying out the PCB.

 

 

OwlClockPCBTopI used Eagle CAD and finally had to spring for the non-free version so I could work with more than one page of circuit. I had to use some tricks with the Grid to get all the LEDs laid out in the exact right locations. After a full weekend of fighting with Eagle, I had something I could send off to OSH Park. I also quickly ripped one eye segment out into another file and ordered 3 small “test boards,” so I wouldn’t have to do my first attempt at reflowing a surface mount board with one of my giant and owl boards.

Then it was back to working in Illustrator on the design for the acrylic digit layers, black card stock separators, etc. I customized the digits of a font to make them slimmer. All the digits obstruct one another, so I wanted something that was lovely, but was mostly empty space so other digits could shine though. I also did some tricks like make the zero (which is in the back) a bit bigger/bolder so it would still read well though all the other digits.

Secret Symbols

Now on a clock there are 4 digits, but not every digit needs all 10 numerals. Heck, the tens of hours digit only really needs a 1. That leaves 9 layers for other special non-digit things. I could, in theory, have put some extra digits in the back of the tens of minute digit since it only goes 0-5, but I decided if I was going to be showing other info in those lower digits, it would be better to have all the digits there. I also decided to keep the 2 in the hour-tens digit so I could support 24-hour time in the future, and show a full year like 2016, etc.

I wanted to show the phases of the moon, sunrise and sunset times, moon rise and moon set times, etc. I used 6 of my 8 free digits doing the arcs of the moon. Because all the layers are at different depths, I staggered them so the arcs actually make a 3D sphere shape with the middle most arcs at the front. That left me with 2 layers. I used one for a sun outline that could be used along with the arcs to show things like the equinoxes/solstices.

The Magic Eye

That left me with only one free layer, which I used to add the outline of an eye. I realized that the arcs could be used to animate a slit-pupil eye looking back and forth. Of course I needed that! My owls eyes have eyes?! Yes … yes they do.

Plexitube Assembly

eyeElementBeingStackedEach eye element can display two digits, and they are laboriously assembled by stacking 20 digit layers and 20 paper masks on 4 brass pins in careful sequence. Thankfully, the digit layers were fairly easy to keep track of because they already had digits etched into them! Each acrylic layer has to have its protective plastic peeled away, and its etching scraped and dusted. Because the pins are press-fit, I had to carefully push them down on the pins without cracking the 1/16″ acrylic. The first stack took me 2 hours to assemble. My finger nails were frayed from all the plastic peeling and I had 11 more elements to make. What had I gotten myself into?!

eyeElementBack

First Reflow

solderPasteStencilingFinally the owl boards came! I had also ordered a solder stencil from OSH Stencils. When making a board like this, the basic process is a bit like silk screen printing. You position the PCB under a stencil and squeegee solder paste though the stencil holes onto the board. Then you place all the itty-bitty components onto the board with tweezers. Finally you oh-so-carefully put the board in an oven and heat it up until the solder paste melts and the parts all snuggle down exactly into place via surface tension. A while ago, I had built a special computer-controlled toaster oven in order to do just this process, but I had never used it!

intoTheToasterI kept waiting for my test boards to show up, but eventually I gave up and decided to do my first reflow on one of my giant and indispensable owl boards. I populated the board, put it in the oven, and pushed the button. Then I held my breath as the oven went though its 3-minute cycle. Success! The board came out looking perfect! It looked like something totally commercial, not something I’d made with tweezers and a toaster oven. MAGIC! Surface mount is awesome. I’m never going back!

fiveOfSixBoardsForOwlsOk, so the board looked like it was all soldered up, but would it work? I hooked the LED chain on the board up to an Arduino UNO (remember how those NeoPixels can be driven by just 1 LED?) and some quick code showed that all the LEDs were working! I blinked each one red-green-blue to test and they passed with flying colors! *phew*

owlClockDigitTest54Now for the real question: would the digit display actually look good or was the whole thing going be two months of work for an unreadable mess? I wrote some code to cycle though the numbers and positioned the eye module over the LEDs. It sort of worked, but it wasn’t great.There was quite a bit of cross lighting between digits, especially between digits 1 and 2.

I was extra sad I’d left that 2 in the hour tens digit. No one wants to look at a clock and not be able to tell if it’s 11:14 or 22:14. Something really needed to be changed. But what? I did, however, decide to get my second round of PCBs made. OSH Park sends out 3x boards, so if I wanted 6 by Christmas, I’d have to order the second round pronto.

OwlLogoI spent an evening designing a nice owl icon to put on the second round of boards, added two regulator bypass pins, and then sent the thing off. No time for anything fancy. It turns out the icon was a fail.  Even though I followed OSH Park’s guide lines it did not render properly.

 

Eerie Is Good

plexitubeCloseupOne thing I did notice while I was running that test is that although the digits were not yet crystal clear, the whole thing had a very eerie feel to it. It was almost as if I couldn’t quite tell what the heck kind of technology I was looking at. It sure didn’t look like LEDs. The layers of acrylic have a wonder full “hall of mirrors” effect on the lit segments.  I also noticed that the light bleeding off the tops/sides of the eye element were kind of hypnotic to watch go through their sequence. I had originally planned to cover the elements with a ridged copper cylinder segment, which would have looked steam punk, but not as strange/cool as that bleeding light. I decided to leave them uncovered.

Back To Body Work

Now that the boards and the eye element design were mostly settled, I had to get back to figuring out how to design the bent body of the owl. I did a second pass of designing the body in cardboard. I knew that trying to bend 1/8 plywood into a loop maybe 3 inches in diameter was going to be tricky and might be impossible. In a recent build, I’d used laser “kerf bending” to make it easier to bend curves in thicker plywood. Could I take that to an extreme? MicroKerf Bending™? I tried spacing the kerf cuts .1″ apart, cutting almost all the way though the plywood. The results where a satisfyingly bendy piece of wood. Still the owl has some very wide sections at the top of his eye arches and those were still quite stiff. Too much variation to be able to bend into a loop.It would have been nice to write some sort of script that would space the kerfs closer/wider based on the overall width of the piece, but I had to settle for just doing a few different spacings by hand.

owlBrowClampThe brows above the eye were delaminating when I’d apply the bend. That was bad. I fixed it by pre-sanding the upper layer thin in those areas and by putting a few little spring clamps on those edges during the bend. That solved the problem, but all these iterations on the body design were burning up time at a crazy rate. Would I make the Christmas deadline!? Here I’d been thinking I was saving time by having most of the owl form come from just one piece. So wrong.

Steaming and Clamping

owlInClampingJigI built a clamping jig out of a big board and carved away clearance for the owl feet. I’d steam an owl body in a pot on the stove and then bend it with my gloved hands whilst racing out to the garage to clamp the body around the face in my special jig. The first time I did this the face of the owl split in two! Yes, when the body is looped back on itself and clipped tail to feet the forces on the face are nice and balanced, but while you’re bending that around the forces on the face are actually pretty big. So I changed my clamping jig so it would support the face during the bend. Finally, it worked!

boardInOwlTestI had a lot of other little issues. I had to add some “foot prop” pieces so I could have a way of evening out feet after the main clamping was done. I thought I’d be able to adjust the owls stance by adjusting the tail angle, but a sort of scissoring action made it so any amount I pushed up the tail also pushed up the feet, canceling out the adjustment. So the owls look down a little bit more then I’d like. That’s okay though because they like to nest up high.

owlsOnTheClockFaceI wish I could have used 1/8″ mahogany plywood. Then I wouldn’t have had to deal with staining the outer body. However, that’s not something I can get locally so I was stuck with stain. I hate stain. I tired pre-staining, which gave nice crisp edges at the stain boundaries, but that made the gluing a lot weaker. I tried post staining with with pre-clear coating areas to try to reduce bleeding over, but it still bled some and required lots of awkward sanding to fix. If I had it to do again, I’d try to get hardwood ply. I did eventually get them all glued and stained.

The Secret Sauce

secritSauceUnderSideOfEyeI’d been thinking about my eye element problems. How could I improve the contrast? I already had black card stock all over the place blocking as much light as I could. I realized that as tight as the fit was around the card stock, there were still micro gaps, and the light leaks I was seeing were probably coming right up from the LEDs and into the clear bottoms of the other segments. I decided to use a small brush to paint some black acrylic into those areas! EUREKA! That fixed the problem entirely and now the displays looked great.

Christmas Eve

owlClockInFrontOfTreeIt was Christmas Eve, and I was still clear-coating owl bodies. Applying wood finish on Christmas Eve is par for the course for me. The big issue was that I was still driving the displays from a separate Arduino and hadn’t fired up the on-board computer at all. I spent a while reading about fuse bits and fighting with boot loaders, and fiddling with Arduino IDE config files. Had I made some mistake with as-yet-untested parts of the PCB? Could I get lucky one last time on this “impossible” project? Yes! At last, I was able to program the chip on the clock board, get the real time clock synced with Greenwich Mean Time, and put enough code in the clock that it could actually display the time! The clock could go under the tree.

Software in the New Year

Early on I had decided to punt on all but the most basic software until after Christmas. I had pages of ideas on fancy software features, and I knew I’d have enough trouble just getting the things physically built by Christmas. This was going to be a Christmas gift with an eventual “firmware upgrade” gift chaser.

owlSimulatorExplodedViewI knew there was going to be a lot of software, so I wrote a iPhone owl clock simulator to give me an easier platform to develop some of the code. I had been reading Jean Meesus’ Astronomical Algorithms, and I wanted to have the clock not only show the phases of the moon, but be able to display sunrise/set times and moon rise/set times.

I had included a light sensor on top of the clock so the clock could dim a bit when it was in the dark, but it could also tell if your hand waved over the clock and maybe then it would cycle though showing the sun going though sunrise colors while showing the sunrise time and the show the sunset time while cycle though the sunset colors.

Color Picking the Old Fashioned Way

colorPickerWithThreePotsAndUnoI really wanted to use nice colors in the clock, but just choosing 3 numbers for Red/Green/Blue doesn’t tell you what those are going to look like in the final display.  I needed a way to search for good colors.  So I made a super simple color picker by hot gluing three potentiometers to a board. I used an Arduino UNO to read the three RGB values and display the color on  a jury rigged LED + acrylic digit. Go Go gadget gaffer’s tape! The program would print the values out to the serial monitor.  That way I could find just the right pink by fiddling with the knobs and then write down that RGB triple from the screen.   I used that to make a whole pallet of colors I liked.

The Trouble With Doubles

The big problem was that most of the Astronomical Algorithms need double precision math. The solar system is big and you need the precision, but the Arduino tool chain doesn’t have real double precision math. I spent a while (stupidly) writing a math lib that did approximate double precision math using two single precision float values based on this paper targeted at GPU computation with floats. I did get the math working, but to my horror, I discovered that the code it produced to compute the equinoxes/solstices was so huge that it didn’t fit into the 32k of memory on the ATMeg328p. That was a huge waste of time. I did, however, use the code to generate the next 100 years of solstices and equinoxes and compress them down into just 100 bytes of Progmem, but the sunset/sunrise times were doomed. I went back to some still usable moon calculation code so the clock can show the current phase of the moon.

Then I wrote a lot of silly features. On the clock recipient’s birthday, it displays in their favorite colors. (And on their kids’ birthdays, their kid’s favorite color, etc)

I wrote all the code to set the time/date/gmt offset with nice auto repeat ramp ups and useful icons. (When you’re setting the month a sliver of moon shows, when you’re setting the day there’s a sun icon, etc) I even used the right arc of the circle to show AM and the left arc for PM like they were the first and second parts of a 24 hour clock face. Not that I expect people have to set the time/date much, but a clock needs to do that.

The clock counts down to midnight on New Year’s Eve and shows fireworks and a spinning golden globe at midnight. On JRR Tolkien’s birthday, the the eye of Sauron looks around and sometimes a golden ring spins and the digits are red and fade up and down like like a breathing beast.  etc.  I don’t want to give to many surprises away.

Needless to say, there are a year’s worth of Easter Eggs in the clock code, even on Easter.

Two Words “Optical Theremin”

photoresistorsWhen I was working on the auto-dimming feature, I wanted to have a direct readout of the light sensor, so I could fine tune a mass/spring system for the dimming rates. When I first hooked it up, I realized that with a much stiffer spring it was pretty neat to play with. You’d wave your hand over the clock and the digits would smoothly go up and down. It was kind of mesmerizing.

I was showing it to a friend, and when I started waving my hand around he said, “Wait, it has a Theremin too!?” and the Optical Theremin was born. I hooked that code up to the hue of an hsv conversion and now when you press the down button, you get one minute of “Optical Theremin” where waving your hands around changes the colors and numbers in a soothing and lovely display of Plexitube awesomeness.

It’s hard to stop writing code for the clock, but after the “Optical Theremin” feature, I started getting close to the memory limits and I decided to call it quits. It was time to give out festive springtime firmware upgrades! I had been trying super hard to have the code all done before the spring Daylight Savings Time change because people had clocks they couldn’t set! I only missed that deadline by a week. I blame double precision!

owlTrustBuidingExercise

Clarence was starting to think that perhaps this hazing ritual was going a bit too far…

Cutting 3D Shapes on a Laser Cutter

twoKnightsWhen my local TechShop got a 120-Watt Epilog Fusion laser cutter, I knew it was time to try out something new. Being able to cut though fairly thick material made me wonder if it was possible to cut out 3D objects with the laser. Most laser cutters produce 2D output. They either cut and etch sheets of material in X & Y, or they cut and etch cylindrical objects (drinking glasses, etc) by turning them with a rotary axis which replaces the Y motion. In the past, I’ve sometimes used an indexing jig to turn the object and make XY cutting passes at various angles. What if I automated this rotation? Could I produce a 3D object by rotating the object and cutting out various 2D silhouette profiles? The process is limited buy the max cutting thickness of the laser. You can’t hack an object out of a spinning 2″ rod of material if the max you can cut though is 1/4″.

The new 120-Watt laser seemed like it might be powerful enough make this idea practical.  I’d never seen anyone do this sort of work with a standard laser cutter. In industry, it’s common to add additional axes to cut at angles, but this XY plus rotational axis (A) was hard to google for. I liked the general shape of the project. At first, I could make a simple rotational jig and manually run a profile cuts though the laser just to see if there was any hope for the idea. If it seemed like it was possible, I could build a motorized A axis and use an optical sensor to sync it to the laser’s motion. From there, all sorts of interesting things could be done in the software to improve the output.

Hey we were featured on Hack-A-Day!

I find a partner in crime

I was pretty excited about the project, and I knew it was going to involve a fair amount of software and hardware. I wrote a super long email to my friend Lawrence pitching the idea. A few hours later he sent me an animated gif of a test model’s rotating silhouette. Clearly, he was in and already on the case! Woot! Lawrence and I have done a number of projects together, including the solar plotter project. He’s great to work with. I knew that with him on board, this project might really have some legs.
Right at this point, my TechShop announced that they were moving to a new location. The laser was going to be unavailable for a few weeks, so I decided to skip ahead and build a motorized A axis. This might’ve seemed overzealous. Why not do some tests with a manual jig first? Well, I was excited about the project and wanted to start building. As an added bonus, building the motorized version would get me to finally troubleshoot the PCB’s I’d designed for my motorized camera rig.

chuckAndShaftFiguring out what was wrong with that PCB would advance that project even if the laser project crashed and burned. So it wasn’t that big a risk to jump ahead, and I was VERY eager to get building. I ordered a cute little 3 jaw chuck so the motorized axis would be able to hold cylindrical stock of various sizes. The only down side to the chuck was that I’d have to machine a shaft with a very concentric 1mm thread. Not a big deal, but an additional hurdle for other folks wanting to build a rig like this.

I did write up that machining job, mostly so I’ll have something to refer to the next time I need to do single point threading.

DSC01277The rig is direct drive using a stepper motor, a zero backlash coupling, and two 608 skateboard bearings.  As Lawrence worked on a way to extract the silhouette profile curves and export them as .svg files, I worked on the most basic version of the device. I used an Arduino Nano and a little stepper motor controller all wired up a on protoboard with a button to advance 1/16th of a turn.
Chuck Stand Looks Like MonstersWhen TechShop reopened, I lasercut the rig to hold the motor, bearings, and chuck so I could glue it together. Lawrence had gotten his profile curve extraction code working, so we were finally ready to do a basic test of the idea.

twoButtonProtoboardInstead of having a fully automated cut-out in these initial tests, the idea was to export each of the profiles as their own print job. We could print them out manually pressing the advance 1/16 button between each file.

Here you can see our very hairy initial setup. The Arduino Nano is in red and the stepper driver in purple. Look Ma, no heat sink!

The First Night

FirstKnightSpinSmallOur initial test model was a chess knight. We started by chucking in a 3″ length of 1″ poplar dowel into the motorized chuck. We figured we could keep printing the same profile until we cut all the way though and then hit the advance button and move on to the next profile. One cut, 2 cuts, 3, 4, 5, 6, 7,8,9,10,11, finally it cut though. That was a lot of cuts. The wood was pretty charred. We knew the subsequent cuts would be quicker because of all the material removed by that first huge cut, so we continued on. Lawrence loaded, configured, and printed each of the profile cuts, and I opened up the laser, pressed the advance button, closed it back up, and fired off the next cut. Like a pair of bureaucratic button-pushing relay racers, we finally made it to the finish line. The results? The knight was pretty charred and battle scarred. His ears burnt entirely away, but he was recognizably a knight! We were jubilant.

The Second Night

Knight Focal Plane

One of the reasons the laser was taking so many passes was that the thick material had a lot of material far from the focal plane, and that meant more charring and less cutting from the laser.  We realized that although we couldn’t move the model vertically, we could have the focal point above the center of the model, and then by rotating 180 deg and cutting the mirror image of the profile we could effectively cut the same profile with the laser focus at two different levels.

knightSpinSmallSo I added a button to the rig that would rotate the model 180 deg. The first time we tried to cut the mirrored profile after 180 deg rotation, we discovered that the laser’s idea of the center of rotation was off from ours.  We needed to measure and adjust for the offset. After compensating for that, offset the idea worked. We once again did the tag-team cutting process, this time with a somewhat more complicated sequence of rotations that we checked off on a list. By the end of the night, we’d managed to cut out a less charred and scared knight! We even had some ear nubs! We were getting better step by step.

Can you use acrylic rod?

We did try this system on acrylic. Acrylic cuts very cleanly with no charring, and we thought it might have great results, but the process really depends on chunks of material being able to fall away. However, when slowly cut, thick acrylic has the tendency to melt just enough to make the chunks stick and not fall away. We decided to focus on wood for now, with the idea of revisiting acrylic at a later date.

Process Improvements

What were the next big steps? We realized that with better path planning, we could cut thin layers off the side of the rod in multiple passes to minimize the thickness we needed to cut at any one time. This spiraling-in process would allow us to cut each outline only once. We also wanted to add some cut lines to the outside edge of the material so the cut chunks would drop away more easily. Lawrence worked on those things, while I worked on building some sort of laser sensor so we could automate the rotary axis motions. Sitting around with a checklists pushing buttons was not a viable way to be doing this with ever-more-complicated cut sequences.

pcbWithRemoteI built a better two-button remote from some PVC, so we could at least not have to open the laser between passes. I also finally got around to troubleshooting the PCBs I’d had made for the camera motion rig. It turns out the Arduino Nano package I’d downloaded from the internet was for V2 of the Nano, but I had V3. For some unknown reason, they had reversed the order of the analog pins, which is a fatal change if you’re using most of the analog pins for digital IO.  Once I had that fixed in software, the board was only 1 oops wire away from being fully functional, so in an evening I was able to go from hairy protoboard to svelte PCB.

centeringJigI also made a centering jig that made it easy to put the rods into the chuck nicely centered. That way I could quickly chuck new rods without quite as much tapping and fiddling to get them to spin without a wobble. The next big improvement was a way to automatically advance the rig though its rotations as the laser went through its sequence. It would be so nice to be able to just hit “print” and have this system cut out a 3D model.

Blind to the Laser

My first inclination was to use some sort of IR photo transistor to watch the laser pulses and get a sense for when the laser was on versus off, and from there we could keep track of where we were in the sequence and when to advance. We could also in theory eventually use a sequence of laser flashes to communicate rotation sequence information to the rig. That way a single print job could handle everything. There was just one BIG problem with this idea, but thus far I was blind to it.

laserAndScope I built an ATTiny85-based pulse train detector and put it in the laser bed. No reaction. I tried some other random IR photodiodes/transistors I had around.  Still no dice. I hooked up a scope and saw zero evidence of the detector seeing the laser at all! I thought maybe the pulses were just so short that the system couldn’t see them, but then I did some more research. It turned out that the IR emitted by a big CO2 laser is totally out of the range of cheap IR phototransistors. In fact, room temperature versions of such devices had only recently become available and they were $800 used on eBay! Not an option for us. It’s counter intuitive that something so powerful that you can be blinded by even diffuse refection of its light can be entirely undetectable by cheap electronics, but there it was. I’d taken the project up a bind alley.

Acorn Nut Job

acornNutAndThermistorMy backup plan was to use a thermistor armored in a small acorn nut.  The reaction time would be quite slow, but it was simple. The acorn nut would protect the thermistor, and we could make the cutting sequence include having the laser blast the thermistor whenever the rotation rig was supposed to go to the next position. Hopefully, it wouldn’t get too hot over time.

 

acornNutAndPuttyI used a dab of heat-sinking compound on the tip of the thermistor and a glob of epoxy putty to turn the delicate glass thermistor into an armored frankensensor.  When I measured across the terminals to make sure I hadn’t shorted them out I noticed the thermistor value was drifting.   I was seeing the temperature rise of the epoxy setting!  So that was working.

This slow sensor did mean we were going to need a different way to load sequences into the rotation rig. There was no way a system like this was fast enough to communicate a sequence of angles. Luckily, I had another way of doing this. My motorized camera rig used Bluetooth LE to communicate wirelessly to an app on my phone. It’s only 9600 baud, but it works well and lets you have all a full-on user interface running on a device you already have in your pocket. Much better than my huge PVC-wired remote. Best of all, I had already written an app that scanned and connected to this kind of bluetooth device, so I was able to quickly hack that up into an app to control the rig. An iOS app isn’t really that open though, so I was kind of sad to be adding this particular step to our tool chain. I gave the app the ability to receive sequences via deep link.

The Biggest Problem

knightProfilesWe had, however, discovered a huge problem with our plan, a problem that was going to take weeks to resolve. I had been told by someone at TechShop that if you turned off “Smart Vector Sorting” in the lasers print dialog, the laser would output the vectors from back to front. Perfect! We could output SVG, import into Illustrator, and print it out. Sadly, that turned out to not be true. In fact, the order in which the vectors are cut out is entirely out of your control.   #%@$#! The vectors seem to be roughly y sorted and that’s that. God help you if you want to cut a zillion curves that are all in the same place. I exchanged emails with folks at Epilog with no real help. This is not exactly a big priority for folks using  a laser in its normal 2D capacity. For a little while, we worked around this by having one super long cut vector, but that was never going to work for models with holes, etc.

We noticed a project called Ctrl-Cut on Git Hub that was a third party laser control program for the Epilog Legend 36EXT.  Perhaps we could get it to work for the Fusion 120? I contacted Amir, and he was super helpful and generous with his time. I output various print files for him to look at, and he tried making a special cut of Ctrl-Cut for the Fusion 120 which would output the vectors in order. Progress was slow since I could only get on the laser one night a week. The printer files he was generating still had some issues and would crash the laser, which was pretty scary. Meanwhile, in the background, Lawrence was picking though the raw printer output and trying to get his path planning scripts to output the printers .prn files directly. Eventually, Lawrence was successful and he was able to generate .prn files, and we could  even change the speed and power settings between cuts in the same file. Awesome! For this, I hereby award Lawrence an honorary knighthood, and a special shout out to Amir for his help and ctrl-cut examples.

Raster mode awesomeness

knightWithTestRasterOne of the shortcomings of the system of cutting out a bunch of profiles is that you can’t get details that never appear on the silhouette edge of the model. Laser cutters have a “raster” mode where they sweep back and forth quickly and etch an image into the surface. The power of the laser at any point is modulated by the color of an input image. Because this is used to etch a bass relief, I knew it could be used to carve in details which were missed by the profile-cutting passes.

There were details I wanted to be able to faithfully reproduce in the wood, like the eye of the horse and the curve in behind the jaw. I hand drew a few details and tried applying them to the side of one our burnt knights.

To our surprise, the raster pass not only etched in the details, it also blasted away the surface material charred by the slower vector cutting passes. We realized that we may well be able to have entirely non-charred output by simply leaving a thin layer of extra wood on the surface and removing it later with a raster pass.

 

KnightHullRenderingrasterExample

I had a feeling we could use these raster adjustments to cut out a model very close to the shape of the original model. I really wanted to see that in action, so I learned a bit of Scene Kit and wrote a quick system that could draw all the laser cutting passes as geometry, and then fire rays though them to find the distance from the closest hull to the model. This distance controls the darkness of that pixel in the raster image, which in turn controls the amount of material removed by the laser. This was going to be great!

There was just one problem. On closer inspection of our knight model, I realized that it didn’t have much in the way of eye or nostril detail. They were just painted on in textures and not modeled into the surface at all! This fancy ray tracing system was going to be very useful with our not very detailed model. Not wanting to abandon the knight, I cast around for help. I don’t have much in the way of modeling chops, so I knew touching up our model was way beyond me. Having spent more that 8 years as an R&D developer at PDI Dreamworks, I had a few contacts who were up to the task. After asking around for help, Joshua West stepped up and entirely remodeled the knight for us! My Hero! So it was back to the races, armed with his slick new model. I used my rendering system to render out a Visual Hull To Model Offset Map or “Stripy Horse Picture.”

horseRightPass1Now we were talking! You can see how the inner ear, eye, mouth, and nostril are all represented. You can see how the raster is compensating for the faceting of the round base and the deep inset under the jaw, etc. I’d had this image in my head for months, and finally I had it rendered out where other people could see it. Now to see what happens when we apply it to one of our scorched and faceted knights.

Meanwhile, Lawrence had started porting his path planning code to a web app that turned out to be both much faster and more convenient than the python scrip we had been using. We were about to try a number of firsts all in one night. Our first fully automated cutting of the model with the thermal-switch advancing the rotary rig. Our first use of the new speedier web app for path planning and our first (admittedly hand aligned) attempt at fine tuning the model with a automatically generated raster pass.

We had a few false starts: I had to add even more averaging of the thermal sensor to smooth out motor noise that was causing false triggers, and Lawrence had to add back in the “burn a line on the thermal sensor” path segments which had gotten left behind in the port. We managed to get the thing cut out and rastered up, and I’ll be damned if it didn’t look pretty darn good!

firstRasterPassKnight improvedKnightModel

You can see the eye detail, nostril, the jaw line, even the inside of the ear came out! We were ecstatic. There it was, 3D model to wooden model in only a few minutes worth of laser time! The dark lines on the model are actually the places where the model wasn’t touched by the raster pass. Kind of the negative of the dark lines in my rendering. I think, with the addition of a small amount of protective material left on for the raster pass to remove, we should be able to have a mostly-not-burnt looking knight.

We were so excited that we cut out another one, and when that came out we decided to go for broke and cut out a long DNA-shaped helix model. It was our first attempt at a model other than the knight. It was looking pretty neat, but near the end the thermal sensor missed one of the rotation signals. The final pass cut the twisted ladder away, rung by rung, until there was nothing left.  Oops.

If you’d like to see the code, and the PCB designs you can check them out on github.

 

 

 

 

 

Making a Bulbasaur Halloween Costume

My Little BulbasaurThis year Simon requested a Pokemon costume, specifically a Bulbasaur. I was glad his costume was going to be made of cloth, since his brother’s costume required no tailoring. I really look forward to Halloween as a time to release my inner seamstress.

I went to the fabric store with a picture of a Bulbasaur, and I got some material to build the costume. I chose a lightweight flannel that seemed to be reversible. That way I wouldn’t get stuck cutting something out the wrong way round. It was the perfect aqua-green color, and Simon could have fuzzy comfort.
Pants With MarkingsI chose fairly accurate colors for the body and spots, but I went for a more organic-looking material for the bulb. Something a little less GREEN. I also got some dark brown corduroy because I was hoping to make the bulb a functional backpack, which required a dark liner.

The costume was going to consist of four main elements: a shirt and pants with the proper color and markings, a hat that would be the Bulbasaur’s head, and a bulb on the back. I also got some armature wire and two small LED flashlights to build some lighted Attack Vines, but I marked that as a stretch goal. I like to incorporate lights into the kids costumes to help with Halloween safety, but I knew that the Attack Vines would stick out awkwardly.

I try to build Simon’s costumes as much like normal clothing as possible. He has to wear that stuff all day, and there have been a few costumes that he’s worn throughout the year. I think kids have to be a bit older to be willing to put up with a bulky uncomfortable costume.

This year I spent most of my time on his brother’s very complex Halo Master Chef costume, so I had to be able to make Simon’s costume fairly quickly. I spent two full days building his costume. On the first day, I built the shirt and pants. I just snagged one of his current shirts and a pair of pants to use as basic patterns. I used felt to add the Bulbasaur markings because that way I didn’t have to deal with hemming the edges.

Bulbasaur ToesWhen I was making the toes for the pants, I realized I hadn’t brought any polyester fiber fill. I wasn’t going to waste an hour going to the fabric store to get some, so I just used my scissors to cut up some shreddies of material to fill the toes. It wasn’t as even as fiber fill, but the toes are small enough that it didn’t really matter.

When I got home, I had Simon try on the pants and shirt. To my horror, the pants were somewhat tight. I ended up adding a small panel at the side to make them a bit bigger. He loved the feel of the fuzzy flannel and really snuggled into the new outfit.

Head Pattern PieceshatPartsCuthatPartsComingTogether

On the second day, I had to build the hat and bulb. I had gotten a black baseball cap and some kid’s backpacks from the Goodwill. I always use an actual hat as the base for these kinds of head-hats because they already have a nice adjustment mechanism built in. I spent a few hours fine tuning the pattern for the head. I went through several yards of butcher paper and a bunch of tape testing various shapes. Finally, I got something that wasn’t too complicated but seemed to capture the shape of a Bulbasaur head. I was pleased with the results.
Ear Insert Close upActual Bulbasaurs don’t have a different inner ear color, but I added a cream triangle inside the ear to make the ears stand out and be a bit cuter. I used a very tight zig zag stitch to sort of embroider a wide line around the ear inserts, which was necessary because I didn’t have felt for that and I needed something to hem the cut edges of the cloth. I also thought it looked more cartoon-like than folding under the edges.

Upper Bulbasaur FaceI used the same system to put the dark green lines around the eyes. That was a bit hair-raising because at those slow feeds it’s easy to have the boarder bog down and drift away from the edge. I only had one shot. The second eye border came out better than the first.

I also used that same stitch to do the nostrils. Bulbasaurs have dark lines for eyebrows as well, but I decided there was much too high a chance of screwing up his expression free-handing on some eyebrows with no good way to undo them. I did not want to end up with an angry-looking Bulbasaur.

Bulbasaur Hat All DoneI put the pieces together and sewed it onto the hat. Then I stuffed and shaped it with fiber fill. I was really pleased with the way the hat came out. One of the TechShop employees even recognized it as a Bulbasaur, so I knew I was in the zone. Much better than “that frog thing.”

It was getting late, and I still needed to build the bulb. I made a paper “petal” and figured out what sort of tucks would give it the shape I wanted. I decided a 5-sided design would look nice and wouldn’t drive me completely crazy sewing up. I also thought 4 sides could form a bottom and 1 side to be sort of act as the top flap for the “functional backpack” goal.

Bulb Pieces Cut OutI cut out all 10 pieces and sewed them together. Weirdly the petals made wonderful looking ears. If I’d been working on some other costume that needed big donkey ears, I’d have been all set! Then I stitched the 5 petals together in an overlapping 5-sided ring, with the dark brown liner parts visible at each seam to add detail. Then I started looking at attaching this to one of the backpacks I’d purchased. I decided that I really didn’t want to do that. It was just too ugly to have those straps over his shoulders. So I instead sewed on a pentagonal base using my dark liner material.

Bulb Petals Lined UpBulb Pentagon Bottom

I figured I could add a zipper and use that to attach and remove the bulb from the shirt. Much nicer looking than straps, but he wouldn’t be able to cary much of a load in his bulb. I’d have to add the zipper later because it was late and all the sewing stores were closed. I ended up adding the zipper on the night before Halloween. I also put a beach ball inside the bulb to keep it fluffed up with minimum extra weight. I oriented the ball so the green part was the only part visible through the opening in the petals. It actually looked pretty good.

I made a mistake deciding to use a dab of hot glue at the end of the cut zipper to act as a stop to prevent the slider from coming off. This seemed like a better idea than just a big glob of stitches or something, but it was a fail. For one thing, the slider sometimes stuck against the glob, and at some point during his day at school, the bulb zipper slide fell off and got lost. Oops. I’ll have to go get another donor zipper, and Simon had to go without his bulb for actual trick or treating. Oh well. Slight fail, but I doubt he would have kept that thing on all night anyway.

Simon Bulbasaur On All FoursDuring his day at school, Simon ripped the crotch out of his pants, but I was able to sew them back together for trick or treating. A seven year old can really do a number on slightly tight pants. I guess I should have used some sort of stronger double seam for the crotch, but I don’t really know what kind is best, and I hadn’t had problems there in previous years. That lightweight flannel just wasn’t super strong.

noFaceBulbasaurstandingBulbasaurbulbasaurFromAbove

Simon really liked the costume. Fuzzy, Comfortable, and Cute. So apart from the zipper and crotch failures, this one was a success. Here is a video of Simon taking the costume for a spin.  I’m really proud that the face was recognizable as a Bulbasaur. The real question is, “Can a Bulbasaur take on a Halo Master Chef?”

“Bulbasaur, I choose YOU!”

bulbasaurVSHaloMasterChef