Step 2: Make the programming cable adapter

Mostly the programming cable adapter only needs to route signals from the FTDI USB cable to the right pins on the ATmega168 chips; however the capacitor is added on one set of pins to allow the Arduino software to reset the chips (the capacitor allows a short pulse to pass over to the chip's reset when the Arduino software flips the RTS pin).

To start, cut a piece of PC board with 9 holes by 2 holes. Then break off a set of 8 pins from the straight pin header strip, and a set of 8 pins from the right angle header strip (assuming you purchased the longer strips). See the parts picture to see what these should end up looking like.

Through the following steps please see both the attached photographs and diagrams for connecting up pins. The diagrams show much better where the connections need to go, but the photographs help to clarify board orientation, etc. If you have questions please mail me and I'll try to clarify anything that doesn't make sense.

Flip the PC board upside down so you can see the copper around the holes, with one of the long sides towards you. If, like I did here, you used a piece of PC board from the edge of the original, I suggest placing the side with the extra board material towards you.

Poke the bottom (short side) of the straight header through the holes farthest from you, leaving one hole empty on your left and solder the pins in place (see picture). Then poke the bottom (side with the bend) of the right-angle header through the holes closest to you, again leaving the hole on the left empty, and solder the pins in place.

Poke the .1uf capacitor's leads through the empty holes on the left and solder the capacitor in place. Trim the leads. Then solder each of the 2 leads to the header pin closest to it; one will connect to the leftmost pin of the straight header, the other to the leftmost pin of the right angle header. The easiest is probably to just create a solder bridge (melt enough solder to flow between the capacitor pin and the pin next to it, like in the picture). If you need to you can use a short length of wire and solder it to each of the contacts.

Create another solder bridge or connection between the 6th and 7th pins closest to you (third and fourth from the right). This is to connect the "CTS" pin of the cable to ground.

And create another solder bridge/connection between the two headers at the second pin to the right (connect the pin closest to you to the one farther away, just one pin over from the right). This connects what will be the VCC USB power jumper to the chip's VCC pin. This power connection will only be active when a jumper is installed.

Use a short length of wire to connect the rightmost closest-to-you pin to the fifth closest-to-you pin (it's fifth whether counting from the right or the left). This will connect +5 volts from the USB cable to the other pin of the jumper connector.

Now connect another short length of wire between the rightmost pin in the row farthest from you to the 3rd from the right pin in the row closest to you. This connects the cable's ground to the chip's ground.

Two more short wires to add: one from the second-from-the-left pin on the right angle header to the third-from-the-left pin on the straight header (note: since the leftmost holes have the capacitor installed in them, it will be the third-from-the-left hole closest to you to the fourth-from-the-left hole in the row farthest from you).

Second short wire will cross right over the first: from the third-from-the-left pin on the right angle header to the second-from-the-left pin on the straight header (fourth-from-the-left hole to third-from-the-left hole).

These wires connect the TX and RX pins of the cable to those of the chip. Unfortunately the ordering is opposite on the cable from the chip, which is why we need to have the crossed over wires.

Now you just need to plug the FTDI FT232RL cable in, with the green wire connected to the pin to the farthest left (the black wire will connect to the third pin from the right). The remaining two pins on the right are for a jumper; if the jumper is installed, the board will be powered from the USB cable, eliminating the need for batteries or a power supply. This jumper MUST NOT be connected when other power is connected to the board or damage to something (board, cable, computer) is possible.

That's it! You're ready to make some uDuino cores to program with the cable. (When using the programming adapter, the pin next to the capacitor connects to pin 1 of the chip)
12150w5 years ago
Can you use the FTDI basic breakout instead of the FTDI cable. The breakout brings out the DTR pin as instead of the RTS pin. It does have the same pinout.
tymm (author)  12150w5 years ago
You certainly can use an FTDI basic breakout -- from my understanding though, the DTR will work under Windows but not under OSX... in which case you'd have to just add a switch on the reset line (to ground) and manually reset when loading code, just like in the old days. It has been a while since I've tested DTR vs. RTS on Windows vs. OSX though. (And never played much with Arduino under Linux, so if that's your development platform... not sure).