Aug 04

Ramble update

Hello, no real purpose to this update, just wanted to get some things that I’ve been thinking “down on paper,” I guess. WARNING ALL TEXT!

For those of you out there that know me personally, you probably know that I moved not-too-long-ago (back) to Seattle. I’ve been here roughly three months, now. To preemptively answer the FAQ about my move: I’m working at a “software” company in the capacity of a hardware engineer. My work is a lot about working in lab, doing electrical measurements. I’m currently focusing on electrical (signal integrity) compliance measurements, and overall I’m liking my group and the company is relatively laid back in general. My hours are more fixed than before at my previous company, but I wouldn’t say I hated my previous company by any means. I have an interesting opportunity here in Seattle, and hopefully it results in some career growth, we’ll see. I’m riding ‘the bus’ to work, and living on the west side of Lake Washington in “Seattle Proper” (I hate that name, I think it’s pretty snooty). I have the suspicion that my personality and preference isn’t to live in the city, but I figured I’d take a year lease and experience/take advantage of the benefits of “real” city living. My long term goal is to “settle down” and find a sense of permanence in living. I haven’t felt like I’ve had a real ‘home’ since I started college, and I think it’s been taking an impact on my psyche and/or style/mentality of living. It’s kind of been a constant weight on me for roughly a decade now, and I’m not sure if it’s real or not.

With the big picture out of the way, in terms of personal growth, I picked up a Solidoodle 3 (8″x8″ build area) 3D printer. I’ve been doing little projects here or there, and I’ve been improving on my methodology and production quality of circuits, etc. I’ve never been able to build anything exciting/fun/interesting, though, a lot of my time has been spent on the process and/or reproducing stuff that has already been conceived and/or developed to the point where at the end of the day, I’m more of an assembly/technician rather than an engineer/developer. I’ve got some ideas bouncing around in my head, some that I think will take off in a (relatively) big way, so I figured it was time to get a tool that would help me (with a limited-scope skillset) produce more interesting things. One of the things always holding me back from creating things I’d be interested in sharing with others is the that the final product was always so hacked together. This could be anything from enclosures to hardware and mounting. With a 3D printer, the idea is that I’ll be able to build custom enclosures to really showcase and give my projects a more complete/polished feel. If I feel like taking anything a step further than “finalized prototype” (i.e. production), I’ll figure out a way to do that when the time comes.

Currently I’m working on a DIY ping pong ball “robot” with my buddy Vinh. We’re developing on the Arduino platform, I’m using this project more as a learning experience so I can get up and running with the bigger projects that I’m looking to do. I’ve felt kind of stifled with my personal development, so I’m hoping to be making a little progress on that front. I think microcontroller development is a really slick area to be personally interested in. Even moreso, I think the FPGA area is fascinating, but it’s so difficult to be using an FPGA for personal projects. I just have no need for the speed and configurability of an FPGA. Maybe I’ll chuckle at this post in a few years, who knows. In any event, I’m trying to tie a lot of interests together with my next project, I’ll post details on that later on. I don’t want to make false promises here and feel sad about it later.

Big picture goals (where I see myself headed) are: Microcontroller development (and as a result, coding), electromechanical knowledge (i.e. robotics, stepper motors, solenoids, servos, the basics), CAD and 3D development (enclosures, custom parts, etc), 3D printing as an appliance rather than a discrete hobby (although it may be a hobby just because it’s interesting). After that, I’d be pretty happy, but learning more about workshop tools to the level of CNC machining, laser cutters, etc would be pretty rad as well. After that, an “icing on the cake” type learning experience would be something like mobile app development. YEAH I’M PUTTING MY STAKE IN THE GROUND, WHAT ABOUT IT?

OK that’s enough for now. I’ll update when I feel guilty about it, or something interesting comes up.

Mar 11

Bleach Shirts.

Yo dawg, what does Snoop Dogg use to wash his laundry?


I found a really fun sub-reddit: /r/bleachshirts. I’ve been dabbling in the technique(s), and I made a few shirts so far. So far, I’ve made a ruined test shirt (before getting the correct materials), one x-mas present shirt for my pal Narumi, Valentines day shirt for Mel (will show below), and finally… the greatest shirt of all time.


As a quick primer, a bleach shirt is basically taking a (darkly) colored shirt and using a stencil to mask off a pattern, and then abusing bleach to make a pattern. The Stencil is generally created with Freezer paper, which is sort of like a one-sided wax paper. Except the wax is kind of like plastic.


My first “legit” attempt at a bleach shirt. This one didn’t bleach very evenly or brightly. I suspect it was due to the dye of the shirt. Pro Tip: Wash and dry the shirt at least once before bleaching. A virgin shirt doesn’t tend to take bleach very well, as there may be coating or lots of loose dye on un-washed threads. It also improves absorption.

Design explanation: Narumi is Japanese (if you couldn’t guess by the name), and in Japanese culture, you add suffixes to the names of people you talk to depending on their social status relative to yours. Narumi is younger than me, so she gets the -chan suffix. Equals (age, status) get the -kun suffix, -sama/-san for older/respected individuals. Thus: Naru-chan.

Narumi is also notorious among the group of friends which I know her from to partake in another Japanese pastime… The Kanchou pastime. If you’re too lazy to click the link, it’s basically a game primarily played by children (from what I understand) where the objective is to jab each other in the butt. It’s not pleasant. An example of Kanchou in popular japanese media.

Keeping all the above in mind, I always thought it was funny how Naru-chan was so similar to “Maruchan,” a popular brand of instant noodles. Thus, the idea was born for a very personalized (albeit sub-standardly executed) Christmas gift. I did a minor modification to the Maruchan logo, and added in a pair of Mickey Mouse style hands in the position of a “Kanchou” giver.

Yeah, that’s my story. Cool story, bro.

 Second Attempt Results (and Overall Process Example):

After looking up resources and “debugging” my methods, I set out to make a very ambitious shirt. Valentine’s day was coming up, and I decided to make Mel a Corgi themed T-shirt Valentine. I made her a Corgi card last year, so I decided to stick with a proven formula for success. Enter: The Corgi.


Step 1: Select a “stencil.” I selected the below picture after looking for “Corgi Butts” on Google Images. I proceeded to chug eight beers, and fought a bear to reassure my ego with regards to manliness. I know Mel loves Corgi Butts, and she (now) prefers Tri-color Corgis, so I had to make some on-the-fly modifications to the below image.

The pup was standing in the grass, so I had to improvise paws. I “mapped out” color zones in the image after figuring out what common color patterns were on Tri-color pups. This wasn’t easy, but it turned out OK. See below image (repeated later) for an idea of how I mapped out XYZ portions w.r.t. color.

I knew I wanted the T-shirt to be a Valentine’s gift specifically, but I didn’t want to limit how useful/wearable it was. I decided it would be best if the Corgi had something heart related instead of Valentines specific. The above was a mock-up of the speech bubble concept I ended with.

Mockup #1 Above

Mockup #2 Above, which is the one I ended up with. This was actually the concept I originally had in my mind, but when I cut out the speech bubble (as seen in option #1), I actually thought it looked really nice. After some consultation and an informal poll, I went with my original plan, Option #2.

Above is the original (black) shirt with the stencil ironed on. This was the basis of my design.

I applied one layer of bleach to lighten the background of the shirt. I was actually planning to do something more like a diffused oval shaped frame around the cutout, but since the design was so big, I just applied a light layer to the shirt.

This is the color-mapped stencil that I used to lighten specific portions of the Corgi Pup’s body. I don’t have a picture of the white portion, but the above shows the areas that were supposed to be brown. I added some curves to the butt/behind the front leg portion to indicate/give the sense of curves.


Final product of the Corgi Shirt. I’m happy with the way it turned out, since I had NO IDEA from the beginning if it was going to be presentable.

Blog Post on Corgi Addict.

Result 3:

Finally, my favorite shirt to date. I ordered a (ok, actually two, one girls, one guys) 3-pack of random (color), Blank, American Apparel T’s on Due to a shipping error, I only received a single guy’s Small. Disappointed, I e-mailed customer service, and explained the issue. They shipped me two more pronto. Thanks Woot! On the negative side, they sent me two of the same color… Come on. It was a maroonish red, which I rarely wear. I actually bought the shirt packs to bleach, so I started thinking what I could do with them. Due to some other related image searches, the answer became clear to me.

I concluded that the only thing I COULD do in this case was make the most stupendous shirt ever seen by mankind.

Cutting this stencil out was extremely tedious. It took me roughly two hours of work… partially because I wasn’t really focused. I’m pretty happy with how clear it turned out, though. Above shows the final stencil minus the lettering. I masked off the entirety of the rest of the shirt and focused on lightening this area first. Once that was done, I peeled back (and moved back) the masking freezer paper, and then added a faint border around the strip’s panel.

The final result: The greatest shirt ever. I’m wearing this to work tomorrow. Luckily, Engineers have a pretty casual dress code.

Anyways, that’s what I’ve been up to lately.



Jan 11

Car PC – Cabling

Quick progress report and a picture dump. Nothing really interesting here.

For any CarPC, there are a few main subsystems:

  1. LCD/Monitor and bezel (molding)
  2. Core Computer Hardware
  3. Peripherals (sound cards, cams, GPS, etc)
  4. Audio (including car speakers, amps, etc)

This dump is mostly related to the audio (and peripherals, i guess). I was putting the “lay cable” to do list item off a little bit due to the pain-in-the-ass process of tearing down my car interior. Generally this means removing seats, floor liner, sometimes the head liner, etc etc etc. It can turn into a full day project for custom installs. I found a solid teardown guide on VW Vortex and got to work. I quickly realized that I wasn’t going to HAVE to tear down much at all. I ended up removing rear seats, and the floor trim near my driver side doors, and that was about all I needed to do.

For my PC, there are a few goals in mind (introduced in the… introduction). I decided to lay all the cables I could possibly nead, even though I am probably not going to use them all. I picked up a USB 3.0 extension, USB 2.0 extension, HDMI & VGA extensions, Audio extension, and Cat6 Ethernet. The USB2.0 (15ft) turned out to be too short, but since I had already zip tied all the cables together, the end is awkwardly tucked away near my door…

AS AN INTERESTING ASIDE: Since I purchased my car, there’s been this mystery AUX cable from the back of my car that was run to the front. I traced it to the rear driver’s side seat, but lost where the cable went… I never took the time to pull everything apart to see where it was going, but when I tore down the car for laying my own cable, I vowed to find it. Well… I did. Anyways… log time.

Easy access, this is what my golf looks like with all the doors open… but one.

Removal of the rear seats (pretty simple, a mallet and a screw driver was all I needed). The seat backs were significantly heavier than I thought they’d be.

Most of my trim and seats, as well as hatch floor cover piled up.

Removing the rest of my trim.

Driver’s door showing the bundle of cabling that I installed. I left out the video cables due to bulk. Zip tied and laid the Ethernet, Shielded Audio (3.5mm), and two USB cables (only one actually made it to the back). You can also see the trim removed near the foot well.

Lifting up carpeting to peek at the stock cables.

Stock/OEM cabling (lighting, etc).

The bastard/mystery cable that runs from my trunk to SOMEWHERE in the cabin.

AAAAAAAND… The mystery cable runs up the driver’s footwell and goes through a stupid coupler and runs into the area below the steering wheel. I believe it came out of the defroster vent originally. From what it looks like, the previous owner ran a cigarette adapter power converter for XM radio and added a charger. I stripped out the job, which was a tiny bit sloppy (but overall not too bad) and laid my own cable. It’s sitting behind my jutting-out-head unit.

Prototyping the radio cage and laying out the hardware in my next post, it may be more polished than this quick turd post. 🙂


Jan 08

Car PC Worklog Update

I decided I’d probably just post incremental updates instead of long “post-mortem” work logs after everything’s done. I’m pretty bad about documenting the process as I go, so this might work, it might not…

For any CarPC, there are a few main subsystems:

  1. LCD/Monitor and bezel (molding)
  2. Core Computer Hardware
  3. Peripherals (sound cards, cams, GPS, etc)
  4. Audio (including car speakers, amps, etc)

This post is largely about the Monitor assembly (specific to my car). Back when I started researching Car PCs (>5 years ago), there weren’t many good commercial(ish) products dedicated to mobile computing (“Infotainment”). That’s all changed, though. I determined that the best use of my time would be investing in a Bybyte Double-Din LCD frame specifically designed for the Monitor I was using (Lilliput 669GL w/ HDMI). After receiving the unit, I quickly found out (by an eyeballed test fit) that my head unit was actually larger than a standard DoubleDin. I ended up buying a Metra dash-kit for my Golf, and assembled it (with some support by the wonderful folks of the Bybyte team). Some assembly notes follow:

I bought a DIY/disassembled Double-DIN kit on ebay via mo-co-so. After my first one came in with some imperfections/blemishes, mocoso support shipped me a new one free of charge. EXCELLENT customer service, I would not hesitate to recommend them to anyone looking for CarPC accessories. This photo shows my impromptu binder clip “clamps” while assembling the mounting tabs.

The disassembled Lilliput HB 669GL HDMI and assembled frame.

Assembly process, routing cables. Hiding the panel control buttons. Well designed kit by Bybyte, no risk of dangling cables that will eventually get broken off. Only slight here is that there is no physical access to the buttons. This isn’t really important as there’s a remote, but to enable “auto on” functionality upon powerup, you need access to the buttons at least once.

Assembled kit.

This is a shot demonstrating how the Metra dash trim kit fits over the Bybyte DoubleDIN enclosure.


How the kit looks when it is actually lined up. The step between the Bybyte and Metra is pretty ugly, but I’m not going to invest any time (at the moment) to clean it up and/or custom fab a better solution. Maybe if it bothers me in the future.

Splitting the enclosures up

This photo shows the modification required to get the Bybyte DDIN kit to fit with the Metra trim kit. Just cut off the bottom shelf.

This shows the one major issue I had during assembly. The DDIN kit mounting holes do NOT line up with the Metra dash kit when they’re centered. I recommend removing the bottom shelf, inserting the LCD frame, and THEN mounting and gluing the mounting arms. They will NOT be centered. I ended up removing some material with a dremel to get the mounting screws to go in.

A quick test fit of my NUC behind the mounted display. My initial thought is to remove the NUC from the enclosure and build a fan system for it as well as the PSU.

Showing the minimal clearance.

That’s it for now. Stay tuned for the next phase, which is cabling my car. Fabrication for PC/Audio/PSU mounting will probably come shortly after that. Once that’s through, it’ll be the test run/test fit.

Nov 26

Car PC – Quick Introduction

Before things get too interesting, I wanted to make a quick note about my next “major” project. I’ll be building a Car PC in the next few weeks/months —  Most of the worklog posts on the blog will be Car PC related. For those of you unfamiliar with Car Computing in general, the forums at is an excellent resource. “Back in the day,” Car PCs were hacked together with various PC components, and interfaced to the car via the stereo. User input is generally done through a 7-8″ touch screen and maybe a small handheld wireless keyboard. The shape and size of these PCs were extremely variable, but in more recent history, the form factor that’s most commonly adopted is miniITX. This is a motherboard roughly the size of a common kitchen napkin. Pretty small, right? Well, the CarPC I am looking to design ideally will fit entirely inside the dash/center console, so it’s actually too big. In a very recent development, my project (that I’ve been putting off for a few years now) has become a lot more simple.

Former Challenges

One of the reasons I’ve put off this project for so long is the complexity of the build. I’ve got a spare radio cage for my 2003 VW Golf TDi, and I’ve been doing some very loose test-fitting of the hardware I’ve got on hand set aside for this build. It is EXTREMELY tight, and to do this project right would leave me with only millimeters to spare. Most people locate their PCs in the trunk of their vehicles, but I wanted to have everything in the dash as one of my design goals. The Power Supply Unit (PSU) was the other major design consideration I had to make — while my motherboard is plenty powerful for a car PC, it is low profile and low power consuming, but confined in the dash of a PC, it’s likely I’d run into heat issues after a long drive. Enter the Intel NUC.

Other Design Considerations

Before discussing the NUC too much, I want to touch on the goals of my build, and why/how the NUC simplifies my life. In a sentence, the NUC is a modern/powerful PC with hardware competitive with a MacBook Air in a smaller form factor than a Mini ITX motherboard.

Things that I plan to do with my Car PC

  • Needs to be self contained in a Double DIN shelf
  • Needs to be easily removed for servicing and/or adding media
  • Bluetooth Capability – Data sharing, calls through the car stereo, etc
  • GPS navigation
  • Optical drive input (optional)
  • Dash/Backup Cams
  • USB hub/input (ease of media transfer, charging, etc)
  • Mobile Internet
  • Mobile Internet Radio

The Intel NUC – Fixing my Car PC design issues

The biggest challenge I faced with my miniITX build was simply size limitations. A mini ITX motherboard will BARELY fit in a Double DIN radio cage. Once you add in the touch screen (even stripped down), you’ll run out of space in a jiffy. The way I would have had to get around this would have been to expand the cage, but the only space that was spare in the cage was the cavity for the old-style VW cupholders. This wasn’t a viable option, as I was planning to mount a slot-load slimline DVD drive in that slot for optical media. While the optical drive will only be used on rare occasions, it’s one of those things that I’m not really willing to sacrifice on. Maybe I’ll change my mind about that in the future.

When I initially read about the Intel NUC, I thought “that’s a cool device, but I’m not sure what I could possibly do with it…” After coming back and deciding that my Car PC was going to be my next major item to focus my attention on, it quickly became apparent to me that the NUC was going to be my next major purchase. The only downside to this is that the NUC has a fairly limited (but awesome) I/O available to it. The NUC has a few USB ports, and depending on the model, 2 HDMI ports w/ GbEthernet, OR 1 HDMI, 1 Thunderbolt, and a few USB ports. Coupled with a low-voltage Ivy Bridge i3 with reasonably good integrated graphics, the NUC already crushes the hardware I had set aside for my build (A Dothan style Pentium M). The NUC also has mSATA and mPCIe slots on it for an integrated SSD and wifi module, and all this incredible hardware is in a 10cm^2 (4″x4″) package.  Since the IO (specifically video) is all digital, I am forced to buy a new screen. The touch screen monitor I already had set aside for this project was a standard VGA input. SUCKS.

While there’s a little bit of growing pains with shifting directions on this project, I think the actual build and test time for the NUC based Car PC will be extremely simplified and shortened. I think what was once an enormous project became an extremely doable project. The cost easily tripled, but I’d rather spend less time to get a usable product and move onto something else. After the Car PC, I think I’ll be posting a lot more microcontroller based work 🙂

Until next time (with hardware pictures!), JD

Nov 20

Holiday Shopping and Consumerism, Part II of II

The holiday season is coming back around faster than ever, and I find gift giving a particularly interesting phenomenon. Gifts are a funny thing, and the holidays are a time of year that is both inspiring, and one that tends to leave a foul taste in my mouth. This isn’t a fruitcake joke – the consumerism mentality and heavy advertising leaves much to be desired when I look at the true “spirit” of the holidays. Conscious or not, the consume mindset plays a big part in the way I end up spending for the holidays.

Putting all the connotations of “consumerism” aside for a moment, I want to touch on why and how I justify opening up my wallet and spending money on people that I care about during the holidays. In a simple sentence: I like buying gifts for people, but I don’t like receiving gifts. This particular blog entry touches on the personal finance approach towards gift giving.

Gifts, to me, to a certain extent –  are a financial investment (with non-financial returns).  A poignant financial cliché is the statement: “Money can’t buy happiness.” While in a wishy washy sense, this is true; this doesn’t imply that money isn’t useful in achieving happiness. My investment strategy during the holidays is a little bit of the opposite of this overused mantra.

Investing to me is the act of putting in an initial sum of value, and betting that the returns when you “cash out” on the initial investment is larger than the original sum. Gift giving – to me, is a similar idea. I have no problem “investing” X amount of dollars in the people I care about, assuming I get that value plus interest in return. This is a bit of a silly comparison, since returns on friendship are difficult to valuate, but this is a (the?) portion of my personal finances that I’m OK not tracking down to the cent.

This leads to an oddity in my “investment strategy” during the holidays. I tend to buy things for people who aren’t necessarily (on an absolute scale) my closest friends, but perhaps people I’ve taken a particular interest in, or friends which I see exceptional potential in. This is why (generally speaking) each year, I’ll get a gift for someone that probably wouldn’t have expected one from me. I think this pseudo-spontaneous gift giving is probably the most “fun” aspect of the holiday season for me. If you’re reading this, and you happen to receive one of these unexpected gifts – don’t feel guilty. Read the caveat from Part I of II. With that said, though, I generally limit my gift “budget” to a relatively select number of people. However, I actually find a sense of dissatisfaction with the people in my life which I’m more or less “obligated” to get gifts for. This is one of the “foul tastes” I described above. I get an added boost of enthusiasm when I’m able to find a thoughtful, or inspired gift for someone, but when I’m not in the mood or inspired to shop for someone, I find this more dampening to the holiday spirit than anything else.  I’m not going to dwell too much on this point, though – It’s the negative portion of the consumerism mentality where we should be focusing on compassion and charity instead.

Nov 20

Holiday Shopping and Consumerism, Part I of II

The people closest to me (and/OR the people who happen to want to buy me gifts, for whatever reason) often tell me that I’m a difficult person to shop for. I have a feeling this is due to my extremely broad interest set(s), and the fact that I’ll just buy things I need if I need them.  This year, I’m going to make it easy. I keep a running list of things that would be “nice to have” relative to my hobbies, and I’m just going to post it. While this sounds pretty conceited, this is being posted more as a necessity in my life than anything else. I’ve got too much “stuff” in my life, and a lot of it is stuff I carry around with me for sentimental (or more mundane) reasons. I’d prefer to receive useful things that are worth moving around with me from/to different stages in my life.

Note: In general, I like buying gifts for others*, but in general, I don’t like receiving them. If you use the list below, please note that I’m not requesting anything below. This is an if-you-insist reference list.

Hobby Related/Nice To Have List [price/reality check in brackets]

  • Wort chiller (plate OR copper tubing – 25-50’ + hose fittings) []
  • March Pump – Homebrewing related for DIY microcontroller system []
  • Counter flow Bottle Filler – Homebrew device for filling bottles out of kegs – If you like alcohol, this is a good one to get me… you’ll get plenty of bottles in return J []
  • Storage Racks – Extremely low priority, I wouldn’t get this if I were you []
  • Easel Pads – Used for engineering and “thinking on paper” []
  • Easel – Low priority, I’d probably just screw the pads to a wall.
  • White Board (in lieu of the above.) – Would need to be a pretty big size [uwsurplus?!?!]
  • Food Vacuum Sealer – Smoked Salmon, etc. []
  • Wrist Rest for keyboard and mouse – Needs to be pretty thick, and pretty wide.
  • “Natural” alarm clock – I’m pretty sure I’m depressed. Hope this helps. []
  • “Are you smart enough to work at Google” – Book []
  • “This is a book” – Book []
  • Other books that would appeal to me – requires some insight into my personality/mind
    • Arduino/Microcontroller books
    • Hardware/robotics/mechanical components in electrical systems books
    • Momofuku – Book []
    • Momofuku – Milk Bar – Book []
    • Mission Street CB – Book []
    • Two Dudes, One Pan – Book []
  • Metcal Soldering iron tip (fine chisel)

This is the portion of my list that I can actually find – I’ll update as necessary.

Rules: Like I said above, I sort of hate receiving gifts, and most gifts above are pretty cost prohibitive. If you’re going to get something for me, I’d prefer it if you didn’t spend more than the $15-40 range (depending on how close to me you are). If it costs significantly more than that, I’d be very happy if you were to team-up with people and split a gift. If you DO plan on getting anything on this list, please leave your name in the comments so others can contact you (outside of the comments, please). I imagine if you’re posting here, you’re facebook friends with me (and possibly each other). Coordinate that way so I don’t get 20 copies of the same book… I recommend against posting the item you picked, since I have to moderate all the comments…

I Sort of Hate Gifts/Caveat

Like I said above, the list is more for reference. I’d actually prefer if you didn’t get me a gift. Non-material options that I would actually value extremely highly: Write me a letter! Call me on Skype. Tell me how your life is going, what challenges you’re facing. Tell me something you’re struggling with, I’ll give you my two cents. If you see something I can improve on in my own life, tell me. I’m in the mood to make changes lately. I like this approach because it puts you on my mind and in my thoughts. I added my address on facebook, and it’s visible for friends. One thing I’m weak at is keeping in touch/keeping up with friends/people in general. The above is an investment in me* AND you’re helping me address my shortcomings. I love getting in touch with people who aren’t interacting with me on a day to day basis. Seriously.

*See Part II of II for more detail on this

Nov 15

Manufacturing PCBs at Home (PWM Stirplate Example)

NOTE: This is a sort-of continuation of the previous blog.

In any home tinkerer’s lab, you’ll probably find a lot of breadboards/protoboards and miscellaneous prototyping circuits. As a hardware hacker, once you’ve proven a design works, it’s generally worth the time to build something a little more reliable and/or presentable. Thus: Homemade PCB manufacturing. I’ve gotten a few under my belt at this point, and I won’t repeat the gobs of information that is already out there. If you need any information about the general procedure of PCB manufacturing, just do a quick google search (This process is generally referred to as the “Toner Transfer Method”).

I’m going to go through the example of manufacturing (and the challenges) the PWM PCB in my homebrewing related blog entry. This entry serves to improve the reliability and consistency (manufacturability) of homemade PCBs, and personal challenges I faced building my latest PCB. This is a relatively low complexity circuit, so take it for what it’s worth.

Materials/Tools Required:

  • Copper-Clad fiberglass board
  • Laminator/(Clothes) Iron
  • Tape
  • Photo paper/Magazine pages
  • Eagle software
  • Schematic/proven circuit
  • BOM/components (measurements)
  • Calipers
  • Small drill (press)
  • Carbide (opt) drill bits
  • Water/Vinegar
  • Steel wool/scrubbing sponge
  • Muriatic/Hydrochloric Acid
  • Hydrogen Peroxide
  • Tupperware container
  • Nitrile/latex gloves
  • Plastic utensil
  • Table Salt
  • Common tools (Soldering iron, drill, etc)

Pictoral Description/Misc Notes:

  1. Step 1: Design a schematic, Lay it out in Eagle (easier said than done).
    MAKE SURE THE ORIENTATION IS CORRECT. I etched a few boards that were useless due to mirroring issues. When you work in Eagle, if you work in SMD, just route it (and flip parts) to the opposite side. Print non-mirrored if this is the case.
  2. Tile (optional) and print out the laid out circuit with a laser printer. A major caution: Not all laser printers are created equal. I own a Brother laser printer and a Dell printer. The Brother is significantly cheaper to operate, but the toner sticks to all types of paper I’ve tried much better than the Dell. In PCB manufacturing, this is a nightmare. I’m not sure if the laminator I used wasn’t getting hot enough, or what, but I will be continuing to use my Dell printer here. Note: At the time of writing, I am using OEM toner in both. If I run out of toner in my Brother printer, I’ll try again with 3rd party toner and update this post if it works well.

Note: Paper choice is a tough call. I’ve used magazine paper in the past with some success. Photo paper (and other options) are also popular. I’ve been using Photo paper with great results, but none of the options I’ve tried worked well with my Brother printer.

  1. Cut out the printout, tape down to the copper clad. It is a good idea to shine the copper clad and ensure the surface is clean before attempting to transfer the toner.

  1. Traditionally, hardware hackers use a clothes iron to get the toner hot enough to melt and transfer to the copper. In recent years, many DIYers have switched to using inexpensive laminators to reduce the effort and consistency in toner transfer success. Clothes irons (especially cheap ones) have generally poor control over heat application and pressure. Laminators have a fixed thickness and roll down on the board with decent pressure. I picked up a GBC brand laminator called the “Inspire.” It looks cosmetically Identical to the H220, which is a highly recommended laminator. Pass the stencil and board through the laminator several times, in multiple orientations.

  1. Post lamination/iron, remove tape. Use care not to peel off the paper too violently.
  2. Dunk the board in some warm water, and let soak for 5-10 minutes. Don’t go short on soak time. Any residual paper fibers will loosen up, and you can rub any excess material off with your thumb.THIS IS IMPORTANT. Any paper residue will slow down your etch (if not outright prevent it!)

(Final “built out” board)

  1. Once you’ve gotten the board cleaned up, it’s time to etch. The traditional approach is to use a Ferric Chloride formula, but Ferric Chloride is very harsh chemically, is difficult to dispose, and is hard to find. A popular new etchant solution is available using common household materials. That, and I didn’t want to get FeCl matter all over my hands. (Engineer/Chemist/Wordplay joke woo!)
    Solution: 2 parts Hydrogen Peroxide, 1 part Muriatic Acid (diluted Hydrochloric Acid). You can find Muriatic acid at pretty much any hardware store, it is commonly used to etch concrete. Table salt (supposedly) helps to refresh the process if it slows down. I saw some activity when adding salt, but I’m not sure it makes a big difference.

Stir/keep the etchant moving for vest results. Keep flipping the PCB in order to get both sides exposed/etched.

  1. “Final” product. If you want, you can “tin” the board using solder. This is advantageous in that it will minimize oxidation.

  1. Once you’ve finalized your etch, and checked out all connections, made sure there was no under/overetching, it is time to drill. You can try doing this with a hand drill, but at the diameter sizes of common PCB holes, it’s safer to use a drill press. I’ve seen good results with dremel tools, but I’ve also heard that a lot of drill bits will break due to low precision and tolerance of the “chucks” of the dremel. I considered picking up a cheap drill press from Harbor freight, but it would require another chuck, which would double my overall cost. I found a blog that recommended “Proxxon” tools, so I just made the investment, and picked up a rotary tool, power supply, and drill press. I purchased the version with the adjustable chuck, but I have a feeling it is lower precision than the fixed versions. Prior to this, I had to drive home (to my Parent’s place) and use our old/gigantic milling machine. I would recommend the Proxxon tool to anyone looking at similar solutions, but I’m not convinced it is as high precision as some make it out to be. The drill press attachment is passable.

Above is my awesome dad helping me with the Milling machine. If you require high precision drilling, I don’t think you’ll get much better than a solid drill press with a high precision chuck. A milling machine is a bit over kill…

  1. Picture of a “finished” board.

Note: This is one of MANY revisions of my boards. I don’t think this one actually made it to final production…

  1. Populate boards. I laid these boards out with dual configurations, there are a few versions pictured below. The final version allows for mostly all through hole components, as well as surface mount (my preference). I will probably be releasing primarily SMD/SMT layouts in the future unless there’s significant demand to release through hole. Through hole requires drilling, which is a pain in the ass, but it’s more friendly for people who aren’t as good with a soldering iron.

  1. Case work: Depending on your enclosure, your final setup will probably look incredibly different than mine. If you are “lazy,” and/or want a simple final product, get a large enclosure and use a full fan. 120mm is best, 80mm is fine, 60mm rotates pretty quickly by default, so I would avoid anything 60mm or smaller. If you keep the fan casing (and fan blades), you can just drill and mount directly to your fan. I took a small piece of PVC piping from home depot to make up the difference in the height to my case, and glued a few rare earth magnets (taken from a laptop hard drive) to the top. It’s wise to offset the magnets slightly from the fan hub, as there is a magnet directly below the hub of the fan, and it can cause some problems if your magnets are too close. I’d recommend getting a 1” PVC cap end as depicted below to solve this problem. If you have to offset the fan (raise it up), use some standoffs or spacers/washers to adjust the height. Get as close to the top of your (preferably rigid, and preferably flat) case lid as you can. I’ve also read that using metal enclosures can cause problems, and that the stir plate flat out won’t work, but I haven’t confirmed this throughfirst hand experience. Plastic Hammond cases from digikey or your local electronics surplus store work great for this application.

I superglued two magnets to the top of the PVC spacer. Some people will take a larger single magnet and glue it directly to the top. This works as well, just be aware that most high-powered magnets (from hard drives) tend to be curved, so you may have a hard time finding a good “center of gravity” of the magnet. The nut on top of the magnets was to keep them spaced while the glue was drying.

The “legs” of the fan that were attached to the fan housing were chopped off because my enclosure was smaller than 120mm, and the fan was broken to begin with. Perfect repurposing opportunityJ I superglued nuts in these elbows for mounting to the top of the lid.

  1. A few finishing touches: I used a larger drill bit to scoop out some material and “counter sink” the drilled holes that I created for the top mounted spacing bolts.

Test fitting the board:

  1. Final Product: I recommend leaving long fan leads (if you have removed the fan blades). The reason I left my leads so long was that I don’t have an external potentiometer, so having the ability to remove the lid and make micro adjustments to speed while the fan was still on was a bonus. If you want a clean look, just keep the leads short, or don’t use a clear enclosure.

  1. Circuit in action:

Feel free to contact me if you have any questions/concerns/criticisms, etc. If it needs addressing, I’ll update this post 🙂

Nov 14

Building a DIY PWM Driven Stir Plate for Homebrewing (geek edition)

Disclaimer: Since the tone of this blog is still ill-defined, this isn’t a technical discussion of PWM circuits, nor PCB manufacturing, nor is it strictly a homebrew entry… it’s sort of an awkward in-between.

Introduction/Purpose/Background/Problem Statement (skip this if you don’t care)
This is a two-part blog post. The first blog talks about the concept and theory, and releases DIY build plans for the PWM circuit. The second post talks about the (home) manufacturing of the released files.

As I said before, there’s going to be a lot of nerdy interests that cross-pollinate in my blog, and today, an example of this manifests itself in a DIY (overkill, perhaps) stir plate for homebrewing.

One of the many challenges of homebrewing is having the ability to pitch a healthy yeast culture into your pre-fermented solution (called must [wines] or wort [beer]). An extremely simple summary of the fermentation/brewing process is: Create a solution with sugar in it, and add yeast. The yeast consumes the sugars and releases alcohol as a byproduct. The reality of this simple formula is that if you don’t have a good population of yeast that is added (“pitched”) into your solution, the yeast can become over-worked/stressed, and you may find some “off-flavors” in your final product. The other obvious benefit is that when you have more yeast, your fermentation takes off faster! Thus, many homebrewers [especially those that are brewing high gravity/high-alcohol brews] will make a “yeast-starter.” All a yeast starter does is promote a healthy yeast colony prior to pitching into your solution. This is accomplished by providing an easily fermentable solution in a good environment for yeast. This implies an oxygen/sugar rich environment.

Solution (no pun intended)
Thus enters the “stir plate.” If any of you have taken basic chemistry, you’ve probably worked with one before. You set a beaker or container of liquid on a magnetic platform, and drop a magnetic (generally teflon coated) “stir bar” into the beaker, and the “stir plate” will spin the bar around using magnetic coupling. In a homebrew setting, the stir plate allows for higher oxygen permeation in the solution, which will help “jump start” your yeast starter. Mead, or honey-wine is notorious for slow starts in brewing, largely due to the lack of natural yeast nutrient in the must. I had a mead brewing last year for roughly 9 months, and I still had to stabilize before bottling. I told myself I wouldn’t start another without going through the process with a hearty yeast starter. I’ve got two gallons of honey on my counter, so I figured it’s time to get going…

Design considerations
In a DIY/homebrew setting, it makes little sense to buy a commercial stir plate. A quick Amazon search shows a price range of ~$80-250. The first goal of this project is to beat the commercial price. Many DIY solutions use a computer case fan with a strong magnet glued to it instead of electromagnets, which cuts costs significantly. With this major consideration out of the way, the only real problem left to solve is speed control. There are three (in my opinion) solutions to the problem, all with their respective Pro/Con lists.

  • Solution 1: Simple Potentiometer circuit
    The Potentiometer (sometimes referred to as a “Rheostat”) is simply an adjustable resistor. We abuse this property and essentially create a variable “voltage-divider” circuit <LINK>. At the output of the circuit, this just provides an adjustable voltage output.
  • Solution 2: LM317 (or other variable voltage regulator) circuit.
    The LM317 is designed to be used as a voltage regulator. You can tune the output with a few passive components. Since you can change the output on the fly with a potentiometer, we use the pot to create a variable/controllable voltage regulator to use instead of the potentiometer.
  • Solution 3: Pulse-Width-Modulation (PWM) circuits.
    A PWM circuit basically operates by pulsing full power to the output in varying widths per time period. This is most easily explained with a graphic <LINK>. As you vary the output, the full power is applied to the circuit in varying pulses. At 100% on, the circuit remains powered all the time, at 50%, the circuit remains powered about half the time, and so forth. This is used commonly in controlling LED brightness, and of course, to control the speed of fans.

For a hardware “hack,” any of these solutions is sufficient, depending on your needs. They will all provide some sort of speed control to a fan, and thus, your stir plate. One major consideration in a DIY stir plate design is that lower speed control is generally considered to be pretty desirable. This is to prevent violent torque on the stir bar, which can cause the stir bar to be “thrown” out of its rotation origin. One problem in the inherent design of a case fan is that there is a hard “cutoff” voltage where the fan ceases spinning. The potential applied to the fan motor cannot overcome the resistance/friction to torquing the fan, thus, extremely low speed control is not possible ONLY by lowering the voltage. The first two circuits (potentiometer/LM317) are capable of regulating/outputting low voltages, but if a case fan can’t use them… well, you’re SOL.

The other disadvantage to both the LM317 and potentiometer circuit(s) is that there is considerable power “wasted” due to the design of these two circuits. Much of the power used is translated to heat via resistance and/or powering the regulator. Finally, the biggest disadvantage to the simple potentiometer design is that it has a very weak load driving capability (with a standard Pot). The LM317 will be able to power a much larger load (read as: daisy chained fans/stirplates/etc).

The power and drive capabilities in this context aren’t really that important, but are worth mentioning. To me, the major differentiator of the PWM circuit is that it is capable of driving the fan at a very low rotational speed. This is generally desired in the stir plate setting. While it’s pretty “cool” to get a very tall vortex going in a solution, this isn’t required (nor do you benefit from it very much) when making a yeast starter. A slow swirl is all you really need (and possibly want).

Problems with the PWM circuit
The obvious downsides of the PWM circuit is: complexity/cost(/noise). There are more parts required, and this often means the hack-oriented DIYer shies away from building one. I’ll be providing free schematics, board files, and a straightforward Bill-of-Materials (BOM) at the end of this blog entry. This drives up the cost of the PWM by a few cents (dollars?). The other problem with PWM that people experience is that you might hear a low humming, or “knocking” noise while the circuit is in operation. This is due to the (relatively) sharp waveform edges. You are actually hearing the fan “knock” as it is turned on and off rapidly. The simple solution for this is to put a capacitor in parallel with the output transistor. This smooths out the characteristic of the square-ish waveform.

Summary: If you are looking for cheap and dirty, skip the PWM, the potentiometer will probably work in an “acceptable” fashion for you. I run my stir plate at a fixed speed for the most part anyways, if you can get it down to running in the ~5-7V range, good on ya. You can always gut a larger diameter fan for lower rotational speeds, too.

Since this IS an “overkill” PWM circuit, I will be making a separate blog post about the build process and PCB manufacturing. (Next)

Design consideration note: While I’ll be releasing the PCB, I should note that I personally don’t actually care about on the fly speed control. The Potentiometer on my board (which controls duty cycle) is mounted internal to the case. This implies that I am making a fixed-speed board for myself. You can wire a case mounted Pot if you desire.

DISCLAIMER NOTE: As this isn’t strictly an engineering/homebrew/geeky manufacturing blog, there’s a lot of details missing in the overall theory of operation and/or brewing. Please visit the links in the references section if you are curious about filling in the gaps.

The continuation of this blog post will be talking about the manufacturing of the circuit.

Release notes:

Attached .BRD/.SCH/Extremely sloppy BOM. Note that these files are more for self-reference than anything else. If you are actually looking to build this, feel free to drop me a line, I can clean these files up if they’re of any interest to anyone.


Rough Bill Of Materials:

  1. C1,2,3: .22uF – ~$0.08 ea – QTY 3
  2. B3F Switch: $0.35 – QTY 1 (OPTIONAL –> DEBUG)
  3. DC Power Jack: $1.11 (Choose your favorite, foot print is of common board mount)
  4. 555 timer (SO-8 OR DIP-8) – $0.40-0.55
  5. Potentiometer/Trimmer: 100K OHM –  $1.63
  6. Rectifier Diode(s): 1N5819 – $0.53 ea – QTY 2
  7. Resistor: 10K Ohm – $0.10
  8. Power Mosfet: FD 3055 (or compatible. I just had this lying around) – $0.78
  9. Smoothing Capacitor: 100-470uF – Tantalum SMD or any small pitch cap. – $0.50
  10. Fan header: PC Fan Compatible (salvage or buy) – $0.25
  11. Copper Clad PCB OR Protoboard: ~$3.00
  12. PC Fan: Free – $5.00
  13. Enclosure:Free – $10TOTAL

    : ~25 + shipping (worst case). Mine cost me roughly … $0.00, but I’ve got a lot of spare parts lying around…

Yeast Starter Links:

Pulse Width Modulation – PWM