Monday, March 8, 2010


This weekend was an exercise in what must be a successive approximation of ISO9000 compliance for PCB assembly. I went down to Adafruit Industries and my hostess provided me with: a MetCal; a fume extractor; a pair of diagonal cutters and a bit of her invaluable time over a 36-hour window. With these ingredients, I magically transformed a 65# suitcase of components into 20 laboratory EKG amplifiers. Then I used her laser cutter to mark (for drilling) and label all of the enclosures. It was one hell of a transfer function.

Fig 1. The Input  

Fig 2. The Output

Between this and the 2009 Ninja Networks Party DefCon Badge assembly extravaganza, I'm overdue in giving a breakdown of how to bring medium and large-scale PCB assembly into the reach of a DIY-crew with enough time, enthusiasm and lack of OSHA oversight*. There are tons of things you can do in your home (but preferably in some borrowed industrial workspace) to assemble your own production-quality PCBs for low overhead -- and there's absolutely nothing mystical about how 90% of electronics are made. All the nebulous magic is reserved for how to make staggering volumes of things cheaply, quickly and reliably -- a process which Bunny has already demystified.

*OSHA really doesn't like it when you drink beer at your bench.

Wednesday, February 10, 2010

Emission Spectra

The New Year brings in good things!

When I was learning how to knit, I spent a long time trying to cajole a friend of mine into making me the world's geekiest present: an emission spectrum scarf. It didn't pan out, but over New Years (and over drinks) we were circulating the idea around again and now it looks like Stern Lab is on assignment!

Becky over at Stern Lab is making emission spectrum scarves! Once she starts selling them at her Etsy store, you should go pick one up! Best. Present. Ever.

Fig 1. Silicon


Every Christmas break is another opportunity to go down to Adafruit Industries in NY, NY and (in addition to having a good time) exercise my nascent industrial design impulses. The new tradition is to knock out a kit enclosure. Adafruit's design constraints were as follows:

1. The enclosure needed to be made out of 1/8" acrylic.

2. It would preferably be completely enclosed.
3. She didn't want "just a box."
4. It should have a variable tilt angle to accommodate the viewing angle of the LCD screen.

Until I get a copy of my notes back (which show my entire thought process, including doodles and the Bad Ideas Club) - these photos will have to suffice. I designed everything to slot together because I really like slotted flat-designs (go read Nomadic Furniture 1 & Nomadic Furniture 2 for more fun flat designs and examples of things Frank Gehry was actually good at designing -- PROTIP: It's not buildings)!

Fig 1. Notes 1

Fig 2. Notes 2

Fig 3. Notes 3

Fig 4. My draft enclosure in clear acrylic.

There were a couple of things about my prototype that I knew Adafruit didn't like. I had an asymmetric profile shape - chosen because I based the design off of an isosceles triangle, and a truncated triangular side profile meant I could slot the top piece in for ultimate interlocking action. I also really enjoyed the idea of having a low, flat very Byzantine/monolithic/robots-will-eat-you shape, which made the enclosure larger
than Adafruit's prefs. She ended up removing the top and changing it out to match the tab-locking bottom piece, while retaining the slot-locking sides and front piece, which allowed her to shrink the front piece down and make the area surrounding the LCD symmetric. The final case retains a lot of the details I enjoyed making while matching Adafruit's own preferences. The following pictures show what the final production design will look like.

Fig 5. Back in Black

Fig 6. Symmetric Side Profile

Fig 7. Rear View

Wednesday, February 3, 2010

Rapid Prototyping

There's a lot of ground that's covered by the umbrella term of 'rapid prototyping,' but one aspect that's conceptually straightforward is usually a pain to tackle. Having a solution in-hand, I'm excited to share it.

Q. How do I convert from my CAD format to a DXF so that I can cut out my circuit on a laser cutter or cutting plotter?

Why would you ever want to do this? Well, perhapse you sent out some PCB files to be manufactured and wanted to cut your own mylar solder-paste stencils on a laser cutter. Possibly you're making your own flex-circuits at home out of aluminum foil and contact paper (if you don't have a cutting plotter you could always use an iron-on transfer, an X-acto knife, an inkjet printer and some really steady hands). Maybe you wanted to clone all of your drill hole placement and so that you could make a jig to use with your drill press. Some artist came by your lab and thought that your high-speed impedance-matched data bus would look super futuristic if it were water-jet cut out of sheet titanium and sold to fashionistas as jewelry. Or you think the Arduino layout would make a really awesome graffiti stencil (if only you could loss-lessly scale it up 50x and cut it out of plastic). Lots of applications require getting your CAD layout into some non-CAD format, and preferably a vector format. So, now that you have the 'why', here's the 'how'.

A. You'll need your CAD software, a decent print manager and Adobe Illustrator or equivalent software.
  1. Starting with your layout - select-to-display only those features of the layout that you want to "print". Then print your file (non-scaled) to PostScript (.ps).
  2. Open your PostScript (.ps) file with Adobe Illustrator. At this point, all of your 'traces' will be 'lines', aka 'strokes' with a defined width, which you don't want. You want an actual closed 'outline'/path that describes where the laser/knife should be applied by your relevant plotter.
  3. Delete any features (like origin markings) that you don't want and Object -> Group the ones that remain.
  4. Then copy what's left into a new layer (for safety). AKA: Select -> All; Edit -> Copy; Window -> Layers -> New Layer; Edit -> Paste
  5. Make the original layer invisible, so as not to muck with it.
  6. Select -> All ; Object -> Path -> Outline Stroke
  7. Object -> Expand
  8. Window -> Pathfinder
  9. And then in the Pathfinder window (have everything selected), click on 'Unite' and then Option-click on your selected object.
  10. Export your file to DXF using File -> Export.
  11. BAM!

Saturday, January 2, 2010

The Year In Review - Floors

Due to the loss of my phone and associated SD card, I don't have any photos from the majority of my 2009 projects. I do, however, have some hard-learned lessons to share. First up - floors!

1. Floor Refinishing - demolition

In a fit of loathing for polyester flooring, I ripped up the carpet in my room and found a blackened wood floor, with 3" boards (tongue-and-grooved together), held down by about 20 hand-made nails for the entire room. Unable to resist the urge to destroy, I recruited a friend for the weekend, and we went to town on the floor with a 100# floor square buff sander (Flecto's vintage 1990s Squar Buff Sander, to be exact) and started with a series of 35-60-100 grit papers. I polished it off by hand with 200 grit. Once we got the top 1/16" off of the floor, we realised it was 100+ year-old New England heart pine.

Fig 1. Colonel Burne Sanders

So, to begin at the beginning -- as to what equipment to use, I prefer the orbital sander to a drum sander because you're less likely to hurt yourself or irreparably destroy your floor out of mechanical ineptitude or sheer inexperience. The trade-off is that the vibration is like a free trip to augmented physical therapy. You'll get blisters through gloves and will need to take frequent breaks. Most square buff sanders run on 120V, whereas more industrial floor refinishing equipment (and contractors) require 220V service. If you hire a contractor to refinish your floors, do not, under any circumstances, allow them to clip in to your mains to get 200V service up to the work area. Your homeowner's insurance will probably count such stupidity as "Act of God getting down to business and doing something he should have done to smite you a long time ago." Check to see if a contractor requires 220V before hiring them. Run the following: if ((req? 220V) and !(220V installed)) then hire(electrician) else open(beer). Also, as an aside, you will likely not save time or money by refinishing the floor yourself, unless you value your time at $2/hr. I broke even on my room (in cost, not time) because it was small. If I were refinishing my entire upstairs, however, it would have only cost about twice as much to have a contractor come in and do it for me.

I edge-sanded my floor with a hand pulse sander. This was woefully inadequate. I will use a belt sander with a feather-light touch in the future.

Once the grain appeared, I began to realize I might not have a hardwood floor after all. Once this happens to you... as soon as you realize you're not refinishing hardwood (or fir), tone down your methods (and the grit of sandpaper) and try working cross-grain. Normally, you always want to go with the grain, but pine likes to de-laminate and separate along grain lines in large, splintered pieces. This effect is amplified with age. And if you think you can patch a floor with the chunk of board that just came off in your hand... think again.

2. Floor Refinishing - renewal

When refinishing floors of any age, condition the wood before applying urethane. It will a) improve the condition of old and dry wood, b) show you the final color of the wood once you urethane it, and c) produce an even finish in the event that you either stain the floor or add stain to your urethane.

High-build poly-urethane does not do what you would expect it to do. If you're short on coffee and picking out materials in the hardware store, it seems like a good idea. Two coats and you're done! Durable! Shiny! What you will not notice is that while the marketing materials say that it's meant for interior wood surfaces, it does not say "floors." If the ad copy doesn't say, "for floors," do not try to use it on floors. The high-build poly provides a relatively soft (antithesis of durable) finish, but even worse - it never dries. It smells like double-plus death (even with brand-new organic solvent respirator cartridges). In my case, I put one coat on after the wood conditioner (following directions), it promptly soaked very deeply into the wood (you would also be porous and dry after 100 years of solitude). I waited two days (due to humidity) and did a second coat. The second coat refused to dry despite ventilation and time. I later used a paint scraper to clean up the floor and switched over to the more traditional Fast Drying Poly-Urethane For Floors. Ask for it by name.

For a roughly 100 square foot room, I went through one gallon of wood conditioner and 1.5 gallons of polyurethane for 4 coats. I went for a semi-gloss finish. The most difficult things involved in cleanly polyurethaning a floor were.

  1. Getting (and keeping) the room dust-, hair- and junk-free during application and drying.
  2. Applying the urethane slowly and evenly enough to avoid creating bubbles.
  3. Being patient enough to wait for ample time in-between coats of poly (sanding).
  4. Being humble enough to avoid extemporaneous re-interpretation of the directions.
3. Floor Refinishing - covering your shame

This section will be obscure without accompanying photographs, but there are a lot of entries up on Yahoo! Questions asking how to invisibly patch a wood floor and there aren't a lot of good answers. It turns out there isn't a good way to do it. Rather than documenting all of the different ways I screwed up...

Start with High Performance Wood Filler. Anything else is Weak Sauce and not worth your time. Use it to fill any large and profound gouges, splits and cracks - but be careful to get it on as little of the surface as possible. If necessary, mask off the floor adjacent to the crack you're filling. Once you get this material into the grain of the wood, it's very difficult to cover up or sand away and it leaves a nasty grey color. Aesthetics aside, this two-part filler can't be beaten on strength and durability. Like epoxy, it hardens faster in higher temperatures. If you can, under-fill your cracks to leave yourself room to sand down the filler and work on how you're going to blend it in with your floor. Use a metal application tool - it perma-bonds to plastic.

You can try to stain the wood filler, but it will be touch-and-go on color matching. If you match the filler to the pre-urethaned raw wood, it will not match after you apply the first coat of poly (even for clear poly). Use a test-piece of finished wood as your color reference. I ultimately layered stain on top of the filler and adjacent wood (because I was messy with my patching) in-between coats of urethane. It looks like I have a restored, water-damaged floor as opposed to a restored floor full of wood putty. I consider it a pyrrhic victory.

Another method you can use to "match" filled areas to the rest of the floor is to save some very high-grade sawdust from your refinishing stage. I recommend sawdust generated with 200 grit paper or finer - sieved to remove any detritus. Mix the sawdust with fast-drying polyurethane and apply to your (preferably sunken) patch job on the first coat. Build up additional layers if necessary. Once you feel you've got good opacity, sand the area smooth and feather it into adjacent areas (without removing the sawdust-impregnated poly entirely) and polyurethane over it normally in subsequent layers. The color will match, but the texture will not. This will be more apparent under semi-gloss and flat urethane finishes.

Finally, buy kneepads. You'll need them.