Building a JTAG Interface

The best way to speed up development, in my opinion, is to make jtag access available to as many people as possible. With Openwince's JTAG tools and one of these cables a user can flash anything to their Kuro and still have the ability to recover. It is this safety net that allows developers to try things that otherwise could render their Kuro useless (except in the case of needing a doorstop). In the time since JTAG access has been made easily available the following list of items has been accomplished. There are more success stories that aren't listed here:

1. Multiple versions of U-boot for the Kuro and Kuro HG has been tested and have had the bugs worked out with no permanent bricks (and there were several bricks including my own Kuro). These firmwares would likely not have been tested without access to JTAG for recovery.

2. A replacement firmware has been released with 2.4.31 kernel that accepts arguments from the bootloader without requiring NGNG in flash to boot to EM mode.

3. Many damaged boxes which would otherwise be completely useless have been repaired.

Building a JTAG interface cable can be accomplished in part of an evening by following these instructions. I have built 10 of these and assembled 12 kits with all parts and an etched predrilled circuit board which we are making available to the community in an effort to spur more development. There is a thread in the Forums for discussion and announcememnts regarding the availability of these kits. If you are interested in assembling and distributing kits or have any assembly questions, please post a note in the forum thread. If not, then I must assume you are here to assemble your kit, so lets get started.

Parts Required
In order to build one of these you will need the following parts:

All of the parts save the circuit board can be obtained from Mouser Electronics. They are also available at many electrical parts suppliers. The circuit board can be purchased in quantities of 21 from www.expressPCB.com. Kits and/or single circuit boards may also be made available by one of the maintainers here.

Tools Required
15 watt (maximum) soldering iron

Diagonal cutters for trimming component leads

Thin rosin core 60/40 solder (included in kit)

Wire strippers.

Three hands (a small vice will also work)

Solder the D25 Connector
Solder the D25 connector to the circuit board. pay close attention to the orientation of the circuit board and the D25 connector. Note in the photo in the following step the side of the D25 connector with 13 pins is facing up and pin 2 (on the right in the photo) is aligned with the first pad on the circuit board. Also note that the circuit board is double sided and you must make sure that you have the same side facing up as shown in the photo below. In some cases the board may have been cut a bit short on the D25 connector edge. Just line up the ends of the pins with the top of the solder pads on the circuit board and solder it in place. A good example of this condition is in the "Install the 2.2K resistors" photo. Also note that aside from soldering the D25 plug on both sides of the board, all soldering is done on the bottom of the board.

Install the 100 OHM Resistors
Using the Component Layout, populate the board with the 100 Ohm resistors. You can also determine the locations of the 100 Ohm resistors in the photo below. Start by folding one of the leads of each resistor over so it makes a U shape (the resistor should stand on its end on the circuit board). Insert one resistor at a time, solder it in place, and trim the leads before moving on to the next resistor. If you do not insert, solder, and trim the leads one at a time you will find that there is very little space for the soldering iron and solder to fit in between the leads of the resistors. When you have soldered all 5 resistors in place and trimmed the leads move on to the next step. Note that soldering has been completed in the below photo, you just can't see the solder as it is on the opposite side of the board.



Install the 2.2K Resistors
Populate the board with the 2.2K resistors. You can determine the locations of the 2.2K resistors using the Component Layout and the photo below. Again, start by folding one of the leads of each resistor over so it makes a U shape and insert, solder them in place, and trim the leads one at a time. When you have soldered all 4 resistors in place and trimmed all the leads move on to the next step.



Install the Integrated Circuit
Solder the 74hc125 Quad Buffer in place. The square pad on the circuit board marks pin one of the integrated circuit. If you are looking at the chip from the top (pins down) with the notch on the left side (as oriented in the photo below), pin one is at the lower left. Some chips may have pin one marked with a small dot. Solder two opposite corner pins to hold the chip in place and then go back and solder the remaining pins in place.



Install the 0.1uF Capacitor
Insert the 0.1uF capacitor in the location shown in the photo below and on the Component Layout and solder it in place. The Capacitor is polarized (it has a positive and negative lead). The lead marked with a plus should be inserted into the hole that is closest to pin 14 of IC1.



Assemble the IDE Connector
Next, assemble the IDE connector to 6 strands of wire. An old hard drive or floppy drive cable works well as a source for the wire. connect the wire to pins 1, 3, 6, 7, 9, and 16 on the IDE connector. If you use a cable that doesn't have a red wire (marking pin 1) make sure to mark pin one on the connector so you don't connect it to your Kuro backwards. A red permanent marker works well for this. Note that I have made a mistake which is shown in the photo. The wire shown on pin 13 was later moved to pin 9. The wire connection points for the pins on the IDE Connector are arranged as follows:

2  4   6   8  10  12  14  16 1   3   5   7   9  11  13  15



Attach the IDE connector Cable
Attach the other ends of the wire from the IDE connector to the circuit board using the Component Layout to locate the correct pads for the IDE connector wires. The pads are marked J1, J3, J6, J7, J9, and J16 on the Component Layout. It is a bit spaghetti like so take your time with this step. Making the wrong connection will definately cause problems and possibly bricking.



Inspect the Assembled Circuit
Inspect the entire circuit board for short circuits and cold solder joints. You can reheat any (or all) of the solder joints and make sure all of the connections are good and clean.



Button up the Cable
Place the circuit board and connector in the connector hood and close the hood making sure to screw down the strain relief over the ribbon cable. It may be necessary to trim the corners of the board off to enable it to fit inside the hood. A pair of diagonal cutters works well for this.



Install the Header in the Kuro
Solder the double pin header into position on the Kuro mother board. In some cases the manufacturer of the Kuro filled the jumper holes for the JTAG header with solder. Removing the solder from the jumper holes on the Kuro board is simple.

Press the tip of a 15 watt soldering iron with a good sharp tip (if the tip isn’t sharp use a file to sharpen it and tin the tip) into the hole from the back of the circuit board.

When the solder is flowing nicely, get your mouth about 1" from the front of the board and blow hard into the wet solder while at the same time removing the solder iron. You will blow the solder out of the hole leaving a hole that you can easily put a wire through.

The header should be soldered in place so the jtag cable can be connected on the side of the board with the writing that indicated the pin numbers for the connector and r67 location. Access to the installed header requires removing of the 4 screws that hold the motherboard in place.

You will also need to bridge R67 with a small piece of wire in order for the interface cable to draw operating voltage from the Kuro.

What Next
Software for use with this device can be downloaded from here.

Full instructions for building and using Openwince's JTAG tools can be found here