Wednesday, April 18, 2012

Bench PSU: AVR JTag update #2 (it's alive!)

I think I figured out the noise issue on my ATmega setup.

After I posted my ATDH1150 teardown yesterday, I got to thinking about the "JTAG-X" port on the device:

It's a 2x7 JTAG port that looks to be wired to the same lines as the 2x5 "JTAG-A", except that one of the two rows is almost, if not all, connected to GND. I'd seen this done other ribbon cable type connections, but I never really thought much about why this was done. The effect of it is to make every other wire in the ribbon a GND line. I'm probably butchering terminology here, but I think this is a form of shielding. It helps to reduce electromagnetic interference, or cross-talk(is that the right term?) between the signal lines.

My experiments so far with my AVR Dragon-breadboard setup lead me to strongly suspect that noise was the culprit, and contrary to my initial intuition, many types of noise can become more of  problem with higher voltages.

I have some extra long 0.1" header pins on order, to make a new lean and mean JTAG ribbon cable-Breadboard adapter, but in the mean time, I decided that maybe trying to "shield" the ribbon cable might work around my problem. So  I rigged a super crude shielded ribbon cable:

My shielded JTAG cable, MacGyver style.
(I was extra lazy, and used a red wire to tie the shielding to ground, I didn't feel like going up to my attic to fetch my spool of black wire)

It worked! As the time of writing, I have not put it to heavy duty use, but my test use case passed 10/10 times where before it failed 10/10. (My test case was just running the "verify" in the Atmel AVR programming dialog, I was a afraid of burning out my flash with repeated flash attempts).

To make this shielding, I took a length of wire almost as long as the ribbon cable, and stripped it and very loosely wound it around the cable. I then took a rectangle of aluminum foil and made an "envelope" around the cable and wrapped it twice.

I think I'm going to construct a more sturdy solution and use that with the new programming header I'm going to make, and I predict hope for very reliable programming form here on out. Having a loose exposed conductor so close to my precious Dragon makes me nervous, so I'm probably going to wrap it in electrical tape.

yay science.


No comments:

Post a Comment

I welcome you're thoughts. Keep it classy, think of the children.