You know how it goes, you have created an amazing project and told lots of people about it and sure enough tons of people would like one for themselves. You get the circuit boards made, and spend ages applying solder paste and components, reflow soldering and installing the non-reflow components, then you start loading microcode into the controller so that the project does what it is designed to do..... Wow - What a lot of steps!
Loading the microcode????? Yep - as you may know, a computer without software is pretty useless. All of our clocks have a special program loaded into them so that they can tell the time correctly. When I build the boards for the clocks, there is no software loaded into the microcontroller chip (The chip is too small to put into a normal programmer) - This process puts the software into the chip so that the clock can function.
In the old days (a couple of weeks ago :-) ) I used a laptop, a USBTiny programmer and the wonderful AVRDUDE software to program the boards - I would sit at my desk in the workshop, type the programming command into the computer, hold the programming cable against the clock and hit ENTER. The computer would then dutifully program the board for me and I would be done. The only catch with this is that I have to sit there all the time, so I decided that one of my employees could do it instead.... Unfortunately, he found that sometimes he moved the cable a tiny bit causing the programming job to fail and he would have to start again. To compound the issue, if there was a soldering error, the USB port of my laptop would shut down and the USBTiny would have to be unplugged and reseated to reset the USB port..... There had to be a better way!! how did the Big Boys do it?
It turns out that the Big Boys (tm) have robots that are very good at holding cables still and funky electronics that can do testing. Because DougsWordClock.com runs out of my garrage, I was not likely to get there any time soon, so what could I do to make our life easier? As my friend Mikal would say.... "Build a jig!". (Note1)
So here we have the Jig that Doug made! While it is specifically designed to program the DougsWordClock.com DeskClock boards, the concepts here can be extended to any other microprocessor based project you are building in bulk, so have a read about how I solved the problem and see what you can make yourself!
Note 1 - In early 2000, My best friend Mikal dropped into my workshop as I was building a set of shelves- I was routing joints, which was a boring repetitive task - Mikal said "Build a Jig!" I said "Too hard - I will be finished soon" - He said "Nahh, lets just do it" .... We did. Long story short, the simplicity of building a jig, coupled with the fact that I didn't think of it hit my Ego hard...I decided was useless....(Go figure).. Eventually, I snapped out of it and decided to write an article to prove to the world that I wasn't useless - So I designed a PIC based electronic dice project. It was even published by Silicon Chip magazine - (http://archive.siliconchip.com.au/cms/A_102324/printArticle.html) True story, and probably the start to me breaking back into using microcontrollers for projects and writing articles.. :-)