DavidGriffith / minipro-import-test

An open source program for controlling the MiniPRO TL866xx series of chip programmers
GNU General Public License v3.0
3 stars 0 forks source link

Support for ATmega8/16/32U series wanted #99

Open DavidGriffith opened 6 years ago

DavidGriffith commented 6 years ago

Created by: elosha

These are newer AVR microcontrollers with integrated USB. Well, not so new, as Arduino Leonardo uses an ATmega32U4.

Series includes at least:

Datesheets are here:

I will look into the datasheets next days if the programming scheme resembles some existent devices.

DavidGriffith commented 6 years ago

Created by: elosha

I checked the datasheets in meanwhile.

  1. U2 devices seem to be drop-in compatible to ATmega88/168/328. Copying device entries with modified id bytes could work, I will order some ICs for verification. Or if a contributor already has those U series devices at hand, they're invited to do the experiment first ;)

  2. U4 devices are a new development centered around the USB feature, higher pin count than ATmega*8 series, available only as TQFP44 or QFN44 package. So there's an adapter needed, which I don't have, and it's probably a matter of sniffing the official Windows tool – help is needed here.

By the way: Who knows the exact difference between protocol 0x71 and 0x73? Are they completely divergent … or is 0x73 just newer, like an update for more recent products?

DavidGriffith commented 5 years ago

In GitLab by @iddq on Aug 28, 2019, 06:53

Is ATmega16U2 supported?

DavidGriffith commented 5 years ago

In GitLab by @iddq on Aug 28, 2019, 23:21

Tested. ATmega16U2 is supported by TL866II

DavidGriffith commented 5 years ago

In GitLab by @radiomanV on Aug 28, 2019, 23:40

Can you tell me what chip definition you used and how you tested? This chip is only availbale in TQFP32/QFN32 package. Have you used any adapter from tqfp to zif or you used ICSP?

DavidGriffith commented 5 years ago

In GitLab by @iddq on Aug 29, 2019, 01:05

ATMEGA16U2 on an Arduino due board, ICSP. I chose ATMEGA16 without id check.

DavidGriffith commented 5 years ago

In GitLab by @radiomanV on Aug 29, 2019, 01:44

I see. Then we should add those chips to the custom database with icsp only flag enabled. Also i need to check for fuse bits configuration. Thanks for your findings.

DavidGriffith commented 5 years ago

In GitLab by @iddq on Aug 29, 2019, 05:02

Is there a dedicated command to read fuses or is it possible to read it as regular memory addresses? I'm wondering the hex files don't contain the fuses...

DavidGriffith commented 5 years ago

In GitLab by @radiomanV on Aug 29, 2019, 05:19

I'm wondering the hex files don't contain the fuses...

This is only for PIC hex files because of how the chip is designed. These fuses are mapped at the end of the flash memmory. Atmel Avr's on the other hand doesn't map these fuse bits like the Microchip pic's.

Is there a dedicated command to read fuses?

Yes, there is. For example reading fuses from atmega168: minipro -p ATMEGA168@DIP28 -r fuses.cfg -c config -i -y
This will translate as read fusebits to fuses.cfg file, activate ICSP and do not error on id mismatch.
For ATMEGA16U2 you should use the atmega168 type to correctly read fuses.