Programming an ATtiny1604

Hi all

I usually program my ATtiny85's using USBASP with the following connections (works fine)

So, I have another project that needed a larger ATtiny, so I plumped for a 1604, as that had what I needed.

I have prototyped the same connections as above, but if I select ATtiny1604 in the Arduino IDE (megaTinyCore boards manager), then USBASP isn't listed as a programmer.

I can't find the ATtiny1604 in any other Tiny boards manager, so I bit stuck as to what to do.

How am I supposed to program these IC's? A header will be needed (hence this seemed ideal), so it's going to be changed a lot during dev work.


You need a Serial UPDI programmer.

Here you can read how to make one out of a cheap TTL SerialUSB stick.

I made mine out of a CH340 serial adapter

With a diode on the backside between TX and RX, then I cut off the TX pin, so I can't connect the wrong pin.

Oh, and your header will be simple, as it is just one pin. The UPDI pin. Assuming that VCC and GND is taken care of. That's why you see only two wires coming out of mine. The GND and UPDI as the ATTiny is powered in circuit.

1 Like

Never even occurred to me that the USBASP would not be available for certain ATtinys...
Annoying but hey ho.

Thanks for the advice

I have rigged up the programmer....

What programmer am I supposed to pick from the list? Nothing seems to work.

Can you use Optiboot? I throws up that as an error.
CPU speed not supported. Pretty sure the ATtiny1604 is 16Mhz internal (20Mhz doesn't work either)

Problem sorted.

Please share what worked

Exactly the solution forwarded above for the wiring.

Shared 0v, RX-TX with a diode. RX onto the UPDI pin.

Programmer I am using is Serial UPDI - 57600 (Slow).
Internal 16Mhz clock

Thanks :+1:

Mine does TURBO 921600 baud as long as I select 5Volt. Did you try?

My whole setup is 3.3v and it loads plenty fine.
Not risking it!
Thanks

Just if it helps anyone

2 Likes

Your image looks like it is a 3.3V only tolerant device, while it can accommodate up to 5.5V. If VCC is used it can be both 5V or 3.3V. The highest programming speeds are supported at a minimum of 4.5V only.

This topic was automatically closed 180 days after the last reply. New replies are no longer allowed.