AVR JTAG programmer choice

My JTAG Cable1 has just failed and I need to get another JTAG programmer, ideally with a USB interface although if it has to be serial so be it. Obviously I'd get an Atmel JTAG ICE Mk11 if the cost wasn't so ridiculously high so it'll have to be an alternative.

What are people's views on the best one available at the moment?

Thanks.

Roger.

Reply to
Roger
Loading thread data ...

I bought the Olimex USB JTAG. It is really a serial JTAG with a USB-serial adapter inside it, of course. It is cheap, it works exactly like a regular JTAG-ICE (mk.1), I can't fault it. However you should note that the documentation is not exactly right, and there are some things I don't completely understand:

  • adapter is target-powered despite being described as "USB-powered".
  • you MUST have Vref connected on the JTAG interface, and it must be connected to some nonzero voltage on your target.
Reply to
larwe

our AVR-USB-JTAG have opto-isolatation between USB and target, this is why you have to feed power from target too :)

the good news is that this way you can debug safely targets which are running on 220VAC

Best regards Tsvetan

--
PCB prototypes for $26 at http://run.to/pcb (http://www.olimex.com/pcb)
PCB any volume assembly (http://www.olimex.com/pcb/protoa.html)
Development boards for ARM, AVR, PIC, MAXQ2000 and MSP430
(http://www.olimex.com/dev)
Reply to
tusunov

Right, I do understand this - but the documentation is a little bit confusing.

Reply to
larwe

I think it says that both pins 7 and 4 need to be connected to the same voltage but I thought that pin 7 was the actual power and pin 4 was just a signal? Therefore, for example, 5V on 7 and 3.3V on 4 would be OK?

Rog.

Reply to
Roger

I know of two ready made alternatives:

Olimex makes both serial and USB version

formatting link
and you can buy them in US from
formatting link

We use both serial and USB at work and they're ok once you get then going (docs aren't that great but the product is fine).

Propox also has serial and USB JTAG which seems to work with wider range of supply voltage according to spec. but they might be not isolated(?)

formatting link
formatting link
they seem to have US agent, see
formatting link
for more info.

You can also make one yourself, there are complete projects including PCB, bootloader and instructions on the net. Can't find one in english right now but as long as you understand electronics you should be ok.

formatting link
formatting link

Tom

Reply to
Tom

If you are going to use DebugWire (standard on all newer chips with low pincount), the MKII is your only choice. Plus it handles USB at full speed natively (Philips USB controller connected to one of the two Mega128) without having to go through a serial bottleneck.

So it has it's price, but it's worth it. At least for me.

Mit freundlichen Grüßen

Frank-Christian Krügel

Reply to
Frank-Christian Kruegel

How reliable are the AVR's flash? I have two Atmega169 (in AVR butterfly) failing. They are supposed to last 10,000 cycles. And yet, one failed after hundreds of cycles and the second failed exactly after one cycle.

I can't program either one of them anymore. The first one refuse to verify and the second one verified but still contain the previous version.

If it's so difficult to program them, perhap I should switch to PLCC (44 pins) socket rather than MLF (64 pins).

Reply to
linnix

How are you reprogramming them? What's the power supply?

I haven't had this problem, though I don't use that specific part.

Reply to
larwe

The second sounds unlikely : ie How can it verify the wrong code ?

If they are not secured, you should be able to read back the code, and then compare with the nearest HEX version - that can give an idea of failure modes.

-jg

Reply to
Jim Granville

Do you have an oscillator (resonator/xtal) connected ? If not, and you are relying on the internal RC oscillator, it can happen that the config fuses get corrupted during programming and it ends up in an external osc configuration, so you then can't reprogram it. This can be recovered by applying an extarnal clock signal (e.g. 1MHz) to the oscin pin and reprogramming the fuses to the desired INTOSC setting.

Reply to
Mike Harrison

In self programming mode (boot loader), both with the on-board 3V battery and external 5V supply. We might need to switch to an external programmer.

Reply to
linnix

That's what I did. The read back file (using the same programmer, avrdude) is different from the new file. Although I don't have the old version to compare, the AVR is still running the older code.

I know the bootloader first store it in SRAM (1K), but it could not have stored the whole file (10K). The only thing I can think of is that the flash has a long term memory (old file) and a short term memory (new file).

We might have to reconsider the bootloader in general and atmega169 in specific.

Reply to
linnix

the config fuses get

so you then can't

oscin pin and

Yes, there is an external 32KHz crystal. Programmings are successful, but verifications are wrong in one case and mismatch in another.

Reply to
linnix

That is somewhat flawed thinking: If verify fails, then programming was NOT succesful.

Some software does not verify _during_ pgm, and so does not know until verify, that there was any problems.

If there is a separate chip erase command on your SW, try that, and then verify you have a blank device.

-jg

Reply to
Jim Granville

Yes, it does that. Chip erase, program and read-back for verification. But a separate verification failed. Anyway, the chip seems death now. I can't even jtag it.

I have done this process hundreds of time before. But I am wondering if this part (atmega169V 1.6V) is reliable enough in the field, especially for In System Programming.

Reply to
linnix

That's an unusual failure mode. If true, with that programmer, you should add an extra verify pass, as it seems the first one is capable of giving false positives ?

-jg

Reply to
Jim Granville

ElectronDepot website is not affiliated with any of the manufacturers or service providers discussed here. All logos and trade names are the property of their respective owners.