JTAG interface works even without MCU clock
2004-08-10 by Graham Davies
Here is something I've learned by experience and verified with Atmel support. If you have an AVR MCU that has JTAG support, you can get into the device even if there is no MCU clock. You can't run and debug a program, but you can get in to repair mis-set clock selection fuses. Is that neat, or what? Here's what happened. I was bringing up a new board with an ATmega169. I am convinced that programming without in-circuit debug is like tight-rope walking without a net, so I insist on bringing out the JTAG interface. But, I can't use it until I get the JTAG enable fuse programmed, so I have to use in-system programming as well. So, I'm connected up to an STK500, I've read the fuses out, checked the JTAG enable fuse checkbox and hit write. This is when the weight of cables hanging off the desk pulls my very light board down and breaks the power connection. When I put it all together again, the in-system programming link is dead. I figured I was hosed, but in desperation I hooked up my JTAG-ICE clone and, lo and behold, it worked. The JTAG fuse got programmed, but the clock setting fuses got messed up too and the MCU was waiting for an external clock. I fixed this and everything is fine again. Atmel support confirms that the JTAG interface does *not* need an MCU clock for programming and uses its own. ISP, however, requires a correctly configured clock source. In case anyone is interested, the JTAG-ICE clone is of my own rather unique design and you can see what it looks like here: http://www.ecrostech.com/Other/BflyCarrier.jpg I have been thinking about making both it and the Butterfly Carrier board shown in the picture into products but I can't get a reading on how well they might sell. I would slightly undercut the other clones for the JTAG-ICE at, say, $39.95 and the Butterfly Carrier bare board would be $9.95. Graham.