Skip to content

Programming your Arduino with a DKU-5 cable

We are going to make an FTDI cable for whatever reason you might need one, I will use it to program my own ATMEGA microcontrollers without an arduino board. The Arduino has a USB adapter on it bu ATMEGAs do not come with that, and you need to somehow connect those to the computer - this is it. You might have seen them before, Sparkfun carries them, as well as LadyAda. The cost is a bit high and shipping takes time, and most importantly it's no fun compared to making your own.

Materials needed:

DKU-5 cable (CA42 also works, I believe Prolific makes those)


4 pin male header

Something to cut and strip wires

Soldering materials (iron, solder, wick...)

DKU-5 Connectivity Adapter Cable

DKU-5 is an old Nokia usb cable adapter and has the chip we want inside, no point in going into details right now about that. You can find the cable in ebay, dealextreme or local stores. I got mine from a local store. It should cost around $3 a piece. It's phone end has 6pins and the other end is the USB.

Connect the cable to your computer and find the right drivers for it, it should show up under LPT&COM ports with a port number such as USB Connectivity Adapter COM19. COM19 is the Serial Port you will choose in your Arduino IDE while uploading your programs, note that down as well.

We need to identify which pin is RX, TX, 3.3V (there are also 5V ones) and GND so we cut cable off near the phone end and strip the 6 wires inside it. Now, test the connectivity with a multimeter on those pins and find out which cable goes to what pin. Write those down. If you have a Pinout sheet for the cable, you already have which color cable is RX, TX, 3.3V/5V and GND.

off with it's head

set to buzzer

If not, we move on to the next step where we strip the chip on the USB end. Carefully cut away the plastic casing and strip the horrible dark gray plastic off the chip on the USB end.


You will find a PCB with the chip on it. On the PCB, where the cables are connected, you can see the pins labeled as RX, TX, 3.3V/5V and GND. If you are lucky, you'll also fin a DTR cable which goes to your Arduino's reset pin, saving you from manually pressing the reset button everytime you upload a new program.

RX, TX and 3.3V


Now, considering you did not have a pinout of the cable, you can identify which color cable is what, write those down somewhere and get a 4 pin header for soldering the wires on.


Solder the wires on your header and stick them on a breadboard. With some wires, connect the RX to your Arduino's RX, TX to your Arduino's TX, 3.3V/5V to your Arduino's 3.3V/5V and GND to your Arduino's GND.

hot glue over the chip

arduino setup

ignore the potentiometer


Launch your Arduino IDE, select the correct COM port & board and open up the Blink example so you do not need any LEDs to test it. The small LED on the Arduino board, next to the digital pin 13 marked as 'L' blinks each second if you upload this program. When uploading your program, push the reset button right after it compiles (it is hard to describe the timing, try different push delays if it doesn't work) and it should work.


Hope that helps :)


Posted in Hacking, Physical Computing, Tutorial.

Tagged with , , , , , , .

7 Responses

Stay in touch with the conversation, subscribe to the RSS feed for comments on this post.

  1. blou says

    Cool, I’m making my own gamepad with a micro-trackball controller, all thanks to this article.

    cheers from Dogan “Oldururum seni cocuk!” Aydin! ; )

    (tamam, ben Dogan degilim, ama tanidigim Servet Ulas sen isen, bir seyler ifade edecektir bu :p )

  2. Servet says

    Cool, glad if it helps.

    (Yanlıs Servet Ulas, Dogan Aydin tanimiyorum:) )

  3. thebodzio says

    Even if DTR is not exposed as a header, you can still add it by soldering one of the wires directly to the pl2303 chip (it’s the 2nd pin). It is a bit tricky to do (I’ve used some intermediate piece of wire salvaged from UTP cable) but it’s quite achievable with some skill and a steady hand ;}.

  4. nick says

    Hi Servet I have the same DKU-5 Cable, can you please tell me where is RTS Pad on the PCB Ciruit?, its not written there, as you have done some hacking so i think you can figure it out where should i solder wire for RTS. Thanks

  5. Servet says

    I have no idea what an RTS pad is, do you mean the RX TX pins by any chance?

  6. Servet says

    Makes sense, thanks for the tip! Sounds like a fun soldering challenge as well :D

Continuing the Discussion

  1. Hacking a DKU-5 cable | Interactionlab linked to this post on March 4, 2012

    [...] "We are going to make an FTDI cable for whatever reason you might need one, I will use it to program… Tags:DKU-5, ftdi, hack [...]

Some HTML is OK

or, reply to this post via trackback.