Arduino boards usually are programmed via bootloader that can be accessed by connecting them to USB. Chris came up with different idea – use sound card to flash the chip.
First of all chip needs an interface to connect to sound card. For this he build a dead bug prototype on Atmega168 chip with audio jack and few necessary components to keep Atmega going. Then loaded custom audio-bootloader that can accept audio coded data. When hardware is up and running it is enough to run Java app that simply converts hex to wav that is transferred through standard PC audio channel. This method makes it really easy updating chip programs without any spacial knowledge as long as PC has sound card.
We recommend EasyEDA for circuit design and PCB prototype