I’m having some trouble with my ATTiny424’s. I was programming using an arduino nano as updi. Jtag2updi.
Programmed one up and it said it was successful, popped it into my circuit and it didn’t respond to any inputs. Tried programming again with the nano and got a ton of errors.
Tried on 4 424’s and none of them work. Some gave the errors right out of the package, some gave the error after programming once. None come back after showing the errors.
None respond in or out of circuit to the inputs as programmed. All were bought from mouser and I don’t want to risk ruining anymore….
I can post a screenshot tomorrow, they’re on my work computer but here’s some that it was throwing out:
Cannot locate flash and boot memories in description.
device initialized and ready to accept instructions.
bad response to enter progmode command: RSP_ILLEGAL_MCU_STATE.
Error reading address 0x0000
Bad response to leave progmode command: RSP_ILLEGAL_MCU_STATE.
Edit: should clarify this is on arduino ide as well as using avrdude
That is supposed to indicate that the chip did not respond (timeout) (but because I don;t have a build environment to cross-compile for 7 different platforms, and struggle with wrangling toolchains, I couldn't even edit the error messages to add a more useful one if I wanted to, so I had to reuse an error message that already existed.
It is a curious and difficult to debug issue - sometimes it can be fixed by resetting the arduino being used as the jtag2updi programmer - I think the error is actually a bug in my timeout detection code (which I added because it was relatively easy to get jtag2updi into a state where it would hang until hard powercycled. But I did something wrong there, and then 2 years ago we upgraded SerialUPDI to get performance several times faster than jtag2updi, and deprecated jtag2updi, because the codebase is hellish to fix bugs in (it was such a traumatic experience last time I was working on it that I needed to take a month off of modern AVR development before I could look at a modern AVR again. The jtag2updi code was not written to be a programming tool. It was written by an author who wanted to show off just howmuch they knew about C++, and the fact that that made it incredibly difficult for anyone to modify? He doesn't care.
I've made my fork of jtag2updi read-only and announced that I no longer provide support for it, and that people should use SerialUPDI instead - the adapters can be made for 1/3rd the cost, with no programming step, from any USB serial adapter, and they program tinyAVR parts 4-6 times faster, and the advantage on Dx-series parts is even larger. So as far as I am concerned, jtag2updi is obsolete.