Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Correct memory mode, delay and readback for classic parts #1272

Merged
merged 2 commits into from
Jan 14, 2023

Conversation

stefanrueger
Copy link
Collaborator

I noted that some of classic parts have wrong values here. These parameters are used for the STK500 v2 programming and given in the ATDF files. I injected them using an automated mechanism (so either all is wrong or all is OK).

As mode is a bitfield I decided to give it as a hex number as it is easier to read. See Table 5-23, pg 11 in AVR068. That's the first commit. If you want to see which values have been corrected review the second commit.

It is a bitfield instructing STK500 how to program the memory
Injected automatically from the corresponding ATDF files
@stefanrueger
Copy link
Collaborator Author

stefanrueger commented Jan 10, 2023

These parameters are taken from the ATDF section for STK500 ISP programming.

It so turns out that the STK600 requires different delay, readback and mode parameters for some parts, which is something that AVRDUDE does not model. If flash delays differ they are shorter for the STK600 (6 ms, down from 10 ms), so I guess it will be OK to not model a separate delay value. EEPROM delays get longer though sometimes: For the AT90USB1286 AT90USB1287 AT90USB646 AT90USB647 the delay is longer for the STK600, so I wonder if the STK600 fails to program EEPROM on these devices using this. Two parts want their programming mode changed:

  • ATmega64HVE2 from paged flash RDY/BSY polling (STK500) to paged value polling (STK600), therefore needs readback character definition; the EEPROM polling is changed from RDY/BSY polling (STK500) to byte RDY/BSY polling (STK600)
  • ATtiny12 changes from flash/EEPROM byte RDY/BSY polling (STK500) to byte value polling (STK600)

The last two things are a bit puzzling, b/c I would have thought that the mode is a part capability, less so a programmer capability. So, why do STK500 and STK600 require/recommend they be issued with different delay or mode parameters from time to time.

Another puzzle: the AVR068 doc does state delay is only used for those modes that require it. I assume this means when timed programming is requested, which is ... wait for it ... for no part. Makes you question why do the STK500/STK600 model this and why do the ATDF elaborate on the delay parameter to be used if the programming mode does not warrant it? And why do these ATDF sheets go to the trouble of setting delay differently for these two programmers?

STK500 flash parameters
Part memory delay mode readback
AT90CAN128 flash 10 0x41 0x00 0x00
AT90CAN32 flash 10 0x41 0x00 0x00
AT90CAN64 flash 10 0x41 0x00 0x00
AT90PWM161 flash 10 0x41 0x00 0x00
AT90PWM1 flash 10 0x41 0x00 0x00
AT90PWM216 flash 10 0x41 0x00 0x00
AT90PWM2B flash 10 0x41 0x00 0x00
AT90PWM316 flash 10 0x41 0x00 0x00
AT90PWM3B flash 10 0x41 0x00 0x00
AT90PWM3 flash 10 0x41 0x00 0x00
AT90PWM81 flash 10 0x41 0x00 0x00
AT90USB1286 flash 6 0x41 0x00 0x00
AT90USB1287 flash 6 0x41 0x00 0x00
AT90USB162 flash 6 0x41 0x00 0x00
AT90USB646 flash 6 0x41 0x00 0x00
AT90USB647 flash 6 0x41 0x00 0x00
AT90USB82 flash 6 0x41 0x00 0x00
ATA5272 flash 10 0x41 0x00 0x00
ATA5505 flash 10 0x41 0x00 0x00
ATA5700M322 flash 10 0x41 0x00 0x00
ATA5702M322 flash 10 0x41 0x00 0x00
ATA5781 flash 10 0x41 0x00 0x00
ATA5782 flash 10 0x41 0x00 0x00
ATA5783 flash 10 0x41 0x00 0x00
ATA5787 flash 10 0x41 0x00 0x00
ATA5790 flash 6 0x41 0x00 0x00
ATA5790N flash 6 0x41 0x00 0x00
ATA5791 flash 6 0x41 0x00 0x00
ATA5795 flash 6 0x41 0x00 0x00
ATA5831 flash 10 0x41 0x00 0x00
ATA5832 flash 10 0x41 0x00 0x00
ATA5833 flash 10 0x41 0x00 0x00
ATA5835 flash 10 0x41 0x00 0x00
ATA6285 flash 6 0x41 0x00 0x00
ATA6286 flash 6 0x41 0x00 0x00
ATA6612C flash 10 0x41 0x00 0x00
ATA6613C flash 10 0x41 0x00 0x00
ATA6614Q flash 10 0x41 0x00 0x00
ATA6616C flash 10 0x41 0x00 0x00
ATA6617C flash 10 0x41 0x00 0x00
ATA664251 flash 10 0x41 0x00 0x00
ATA8210 flash 10 0x41 0x00 0x00
ATA8215 flash 10 0x41 0x00 0x00
ATA8510 flash 10 0x41 0x00 0x00
ATA8515 flash 10 0x41 0x00 0x00
ATmega1280 flash 10 0x41 0x00 0x00
ATmega1281 flash 10 0x41 0x00 0x00
ATmega1284 flash 10 0x41 0x00 0x00
ATmega1284P flash 10 0x41 0x00 0x00
ATmega1284RFR2 flash 50 0x41 0x00 0x00
ATmega128A flash 10 0x21 0xFF 0x00
ATmega128 flash 10 0x21 0xFF 0x00
ATmega128RFA1 flash 50 0x41 0x00 0x00
ATmega128RFR2 flash 50 0x41 0x00 0x00
ATmega162 flash 10 0x41 0x00 0x00
ATmega164A flash 10 0x41 0x00 0x00
ATmega164PA flash 10 0x41 0x00 0x00
ATmega164P flash 10 0x41 0x00 0x00
ATmega165A flash 10 0x41 0x00 0x00
ATmega165PA flash 10 0x41 0x00 0x00
ATmega165P flash 10 0x41 0x00 0x00
ATmega168A flash 10 0x41 0x00 0x00
ATmega168 flash 10 0x41 0x00 0x00
ATmega168PA flash 10 0x41 0x00 0x00
ATmega168PB flash 10 0x41 0x00 0x00
ATmega168P flash 10 0x41 0x00 0x00
ATmega169A flash 10 0x41 0x00 0x00
ATmega169PA flash 10 0x41 0x00 0x00
ATmega169P flash 10 0x41 0x00 0x00
ATmega16A flash 10 0x21 0xFF 0x00
ATmega16 flash 10 0x21 0xFF 0x00
ATmega16HVA flash 10 0x41 0x00 0x00
ATmega16HVB flash 10 0x41 0x00 0x00
ATmega16HVBrevB flash 10 0x41 0x00 0x00
ATmega16M1 flash 10 0x41 0x00 0x00
ATmega16U2 flash 6 0x41 0x00 0x00
ATmega16U4 flash 6 0x41 0x00 0x00
ATmega2560 flash 10 0x41 0x00 0x00
ATmega2561 flash 10 0x41 0x00 0x00
ATmega2564RFR2 flash 50 0x41 0x00 0x00
ATmega256RFR2 flash 50 0x41 0x00 0x00
ATmega324A flash 10 0x41 0x00 0x00
ATmega324PA flash 10 0x41 0x00 0x00
ATmega324PB flash 10 0x41 0x00 0x00
ATmega324P flash 10 0x41 0x00 0x00
ATmega3250A flash 10 0x41 0x00 0x00
ATmega3250 flash 10 0x41 0x00 0x00
ATmega3250PA flash 10 0x41 0x00 0x00
ATmega3250P flash 10 0x41 0x00 0x00
ATmega325A flash 10 0x41 0x00 0x00
ATmega325 flash 10 0x41 0x00 0x00
ATmega325PA flash 10 0x41 0x00 0x00
ATmega325P flash 10 0x41 0x00 0x00
ATmega328 flash 10 0x41 0x00 0x00
ATmega328PB flash 10 0x41 0x00 0x00
ATmega328P flash 10 0x41 0x00 0x00
ATmega3290A flash 10 0x41 0x00 0x00
ATmega3290 flash 10 0x41 0x00 0x00
ATmega3290PA flash 10 0x41 0x00 0x00
ATmega3290P flash 10 0x41 0x00 0x00
ATmega329A flash 10 0x41 0x00 0x00
ATmega329 flash 10 0x41 0x00 0x00
ATmega329PA flash 10 0x41 0x00 0x00
ATmega329P flash 10 0x41 0x00 0x00
ATmega32A flash 10 0x21 0xFF 0x00
ATmega32C1 flash 10 0x41 0x00 0x00
ATmega32 flash 10 0x21 0xFF 0x00
ATmega32HVB flash 10 0x41 0x00 0x00
ATmega32HVBrevB flash 10 0x41 0x00 0x00
ATmega32M1 flash 10 0x41 0x00 0x00
ATmega32U2 flash 6 0x41 0x00 0x00
ATmega32U4 flash 6 0x41 0x00 0x00
ATmega48A flash 10 0x41 0x00 0x00
ATmega48 flash 10 0x41 0x00 0x00
ATmega48PA flash 10 0x41 0x00 0x00
ATmega48PB flash 10 0x41 0x00 0x00
ATmega48P flash 10 0x41 0x00 0x00
ATmega640 flash 10 0x41 0x00 0x00
ATmega644A flash 10 0x41 0x00 0x00
ATmega644 flash 10 0x41 0x00 0x00
ATmega644PA flash 10 0x41 0x00 0x00
ATmega644P flash 10 0x41 0x00 0x00
ATmega644RFR2 flash 50 0x41 0x00 0x00
ATmega6450A flash 10 0x41 0x00 0x00
ATmega6450 flash 10 0x41 0x00 0x00
ATmega6450P flash 10 0x41 0x00 0x00
ATmega645A flash 10 0x41 0x00 0x00
ATmega645 flash 10 0x41 0x00 0x00
ATmega645P flash 10 0x41 0x00 0x00
ATmega6490A flash 10 0x41 0x00 0x00
ATmega6490 flash 10 0x41 0x00 0x00
ATmega6490P flash 10 0x41 0x00 0x00
ATmega649A flash 10 0x41 0x00 0x00
ATmega649 flash 10 0x41 0x00 0x00
ATmega649P flash 10 0x41 0x00 0x00
ATmega64A flash 10 0x21 0xFF 0x00
ATmega64C1 flash 10 0x41 0x00 0x00
ATmega64 flash 10 0x21 0xFF 0x00
ATmega64HVE2 flash 10 0x41 0x00 0x00
ATmega64M1 flash 10 0x41 0x00 0x00
ATmega64RFR2 flash 50 0x41 0x00 0x00
ATmega8515 flash 10 0x21 0xFF 0x00
ATmega8535 flash 10 0x21 0xFF 0x00
ATmega88A flash 10 0x41 0x00 0x00
ATmega88 flash 10 0x41 0x00 0x00
ATmega88PA flash 10 0x41 0x00 0x00
ATmega88PB flash 10 0x41 0x00 0x00
ATmega88P flash 10 0x41 0x00 0x00
ATmega8A flash 10 0x21 0xFF 0x00
ATmega8 flash 10 0x21 0xFF 0x00
ATmega8HVA flash 10 0x41 0x00 0x00
ATmega8U2 flash 6 0x41 0x00 0x00
ATtiny12 flash 10 0x04 0xFF 0x00
ATtiny13A flash 10 0x41 0x00 0x00
ATtiny13 flash 10 0x41 0x00 0x00
ATtiny15 flash 10 0x04 0xFF 0x00
ATtiny1634 flash 10 0x41 0x00 0x00
ATtiny167 flash 10 0x41 0x00 0x00
ATtiny2313A flash 10 0x41 0x00 0x00
ATtiny2313 flash 10 0x41 0x00 0x00
ATtiny24A flash 10 0x41 0x00 0x00
ATtiny24 flash 10 0x41 0x00 0x00
ATtiny25 flash 10 0x41 0x00 0x00
ATtiny261A flash 10 0x41 0x00 0x00
ATtiny261 flash 10 0x41 0x00 0x00
ATtiny26 flash 10 0x21 0xFF 0x00
ATtiny4313 flash 10 0x41 0x00 0x00
ATtiny43U flash 10 0x41 0x00 0x00
ATtiny441 flash 10 0x41 0x00 0x00
ATtiny44A flash 10 0x41 0x00 0x00
ATtiny44 flash 10 0x41 0x00 0x00
ATtiny45 flash 10 0x41 0x00 0x00
ATtiny461A flash 10 0x41 0x00 0x00
ATtiny461 flash 10 0x41 0x00 0x00
ATtiny48 flash 10 0x41 0x00 0x00
ATtiny828 flash 10 0x41 0x00 0x00
ATtiny841 flash 10 0x41 0x00 0x00
ATtiny84A flash 10 0x41 0x00 0x00
ATtiny84 flash 10 0x41 0x00 0x00
ATtiny85 flash 10 0x41 0x00 0x00
ATtiny861A flash 10 0x41 0x00 0x00
ATtiny861 flash 10 0x41 0x00 0x00
ATtiny87 flash 10 0x41 0x00 0x00
ATtiny88 flash 10 0x41 0x00 0x00
STK600 flash parameters
Part memory delay mode readback
AT90CAN128 flash 6 0x41 0x00 0x00
AT90CAN32 flash 6 0x41 0x00 0x00
AT90CAN64 flash 6 0x41 0x00 0x00
AT90PWM161 flash 6 0x41 0x00 0x00
AT90PWM1 flash 6 0x41 0x00 0x00
AT90PWM216 flash 6 0x41 0x00 0x00
AT90PWM2B flash 6 0x41 0x00 0x00
AT90PWM316 flash 6 0x41 0x00 0x00
AT90PWM3B flash 6 0x41 0x00 0x00
AT90PWM3 flash 6 0x41 0x00 0x00
AT90PWM81 flash 6 0x41 0x00 0x00
AT90USB1286 flash 6 0x41 0x00 0x00
AT90USB1287 flash 6 0x41 0x00 0x00
AT90USB162 flash 6 0x41 0x00 0x00
AT90USB646 flash 6 0x41 0x00 0x00
AT90USB647 flash 6 0x41 0x00 0x00
AT90USB82 flash 6 0x41 0x00 0x00
ATA5272 flash 10 0x41 0x00 0x00
ATA5505 flash 10 0x41 0x00 0x00
ATA5700M322 flash 10 0x41 0x00 0x00
ATA5702M322 flash 10 0x41 0x00 0x00
ATA5781 flash 10 0x41 0x00 0x00
ATA5782 flash 10 0x41 0x00 0x00
ATA5783 flash 10 0x41 0x00 0x00
ATA5787 flash 10 0x41 0x00 0x00
ATA5790 flash 6 0x41 0x00 0x00
ATA5790N flash 6 0x41 0x00 0x00
ATA5791 flash 6 0x41 0x00 0x00
ATA5795 flash 6 0x41 0x00 0x00
ATA5831 flash 10 0x41 0x00 0x00
ATA5832 flash 10 0x41 0x00 0x00
ATA5833 flash 10 0x41 0x00 0x00
ATA5835 flash 10 0x41 0x00 0x00
ATA6285 flash 6 0x41 0x00 0x00
ATA6286 flash 6 0x41 0x00 0x00
ATA6612C flash 6 0x41 0x00 0x00
ATA6613C flash 6 0x41 0x00 0x00
ATA6614Q flash 6 0x41 0x00 0x00
ATA6616C flash 10 0x41 0x00 0x00
ATA6617C flash 10 0x41 0x00 0x00
ATA664251 flash 10 0x41 0x00 0x00
ATA8210 flash 10 0x41 0x00 0x00
ATA8215 flash 10 0x41 0x00 0x00
ATA8510 flash 10 0x41 0x00 0x00
ATA8515 flash 10 0x41 0x00 0x00
ATmega1280 flash 6 0x41 0x00 0x00
ATmega1281 flash 6 0x41 0x00 0x00
ATmega1284 flash 6 0x41 0x00 0x00
ATmega1284P flash 6 0x41 0x00 0x00
ATmega1284RFR2 flash 50 0x41 0x00 0x00
ATmega128A flash 6 0x21 0xFF 0x00
ATmega128 flash 6 0x21 0xFF 0x00
ATmega128RFA1 flash 50 0x41 0x00 0x00
ATmega128RFR2 flash 50 0x41 0x00 0x00
ATmega162 flash 6 0x41 0x00 0x00
ATmega164A flash 6 0x41 0x00 0x00
ATmega164PA flash 6 0x41 0x00 0x00
ATmega164P flash 6 0x41 0x00 0x00
ATmega165A flash 6 0x41 0x00 0x00
ATmega165PA flash 6 0x41 0x00 0x00
ATmega165P flash 6 0x41 0x00 0x00
ATmega168A flash 6 0x41 0x00 0x00
ATmega168 flash 6 0x41 0x00 0x00
ATmega168PA flash 6 0x41 0x00 0x00
ATmega168PB flash 6 0x41 0x00 0x00
ATmega168P flash 6 0x41 0x00 0x00
ATmega169A flash 6 0x41 0x00 0x00
ATmega169PA flash 6 0x41 0x00 0x00
ATmega169P flash 6 0x41 0x00 0x00
ATmega16A flash 6 0x21 0xFF 0x00
ATmega16 flash 6 0x21 0xFF 0x00
ATmega16HVB flash 6 0x41 0x00 0x00
ATmega16HVBrevB flash 6 0x41 0x00 0x00
ATmega16M1 flash 6 0x41 0x00 0x00
ATmega16U2 flash 6 0x41 0x00 0x00
ATmega16U4 flash 6 0x41 0x00 0x00
ATmega2560 flash 6 0x41 0x00 0x00
ATmega2561 flash 6 0x41 0x00 0x00
ATmega2564RFR2 flash 50 0x41 0x00 0x00
ATmega256RFR2 flash 50 0x41 0x00 0x00
ATmega324A flash 6 0x41 0x00 0x00
ATmega324PA flash 6 0x41 0x00 0x00
ATmega324PB flash 6 0x41 0x00 0x00
ATmega324P flash 6 0x41 0x00 0x00
ATmega3250A flash 6 0x41 0x00 0x00
ATmega3250 flash 6 0x41 0x00 0x00
ATmega3250PA flash 6 0x41 0x00 0x00
ATmega3250P flash 6 0x41 0x00 0x00
ATmega325A flash 6 0x41 0x00 0x00
ATmega325 flash 6 0x41 0x00 0x00
ATmega325PA flash 6 0x41 0x00 0x00
ATmega325P flash 6 0x41 0x00 0x00
ATmega328 flash 6 0x41 0x00 0x00
ATmega328PB flash 6 0x41 0x00 0x00
ATmega328P flash 6 0x41 0x00 0x00
ATmega3290A flash 6 0x41 0x00 0x00
ATmega3290 flash 6 0x41 0x00 0x00
ATmega3290PA flash 6 0x41 0x00 0x00
ATmega3290P flash 6 0x41 0x00 0x00
ATmega329A flash 6 0x41 0x00 0x00
ATmega329 flash 6 0x41 0x00 0x00
ATmega329PA flash 6 0x41 0x00 0x00
ATmega329P flash 6 0x41 0x00 0x00
ATmega32A flash 6 0x21 0xFF 0x00
ATmega32C1 flash 6 0x41 0x00 0x00
ATmega32 flash 6 0x21 0xFF 0x00
ATmega32HVB flash 6 0x41 0x00 0x00
ATmega32HVBrevB flash 6 0x41 0x00 0x00
ATmega32M1 flash 6 0x41 0x00 0x00
ATmega32U2 flash 6 0x41 0x00 0x00
ATmega32U4 flash 6 0x41 0x00 0x00
ATmega48A flash 6 0x41 0x00 0x00
ATmega48 flash 6 0x41 0x00 0x00
ATmega48PA flash 6 0x41 0x00 0x00
ATmega48PB flash 6 0x41 0x00 0x00
ATmega48P flash 6 0x41 0x00 0x00
ATmega640 flash 6 0x41 0x00 0x00
ATmega644A flash 6 0x41 0x00 0x00
ATmega644 flash 6 0x41 0x00 0x00
ATmega644PA flash 6 0x41 0x00 0x00
ATmega644P flash 6 0x41 0x00 0x00
ATmega644RFR2 flash 50 0x41 0x00 0x00
ATmega6450A flash 6 0x41 0x00 0x00
ATmega6450 flash 6 0x41 0x00 0x00
ATmega6450P flash 6 0x41 0x00 0x00
ATmega645A flash 6 0x41 0x00 0x00
ATmega645 flash 6 0x41 0x00 0x00
ATmega645P flash 6 0x41 0x00 0x00
ATmega6490A flash 6 0x41 0x00 0x00
ATmega6490 flash 6 0x41 0x00 0x00
ATmega6490P flash 6 0x41 0x00 0x00
ATmega649A flash 6 0x41 0x00 0x00
ATmega649 flash 6 0x41 0x00 0x00
ATmega649P flash 6 0x41 0x00 0x00
ATmega64A flash 6 0x21 0xFF 0x00
ATmega64C1 flash 6 0x41 0x00 0x00
ATmega64 flash 6 0x21 0xFF 0x00
ATmega64HVE2 flash 6 0x21 0xFF 0x00
ATmega64M1 flash 6 0x41 0x00 0x00
ATmega64RFR2 flash 50 0x41 0x00 0x00
ATmega8515 flash 6 0x21 0xFF 0x00
ATmega8535 flash 6 0x21 0xFF 0x00
ATmega88A flash 6 0x41 0x00 0x00
ATmega88 flash 6 0x41 0x00 0x00
ATmega88PA flash 6 0x41 0x00 0x00
ATmega88PB flash 6 0x41 0x00 0x00
ATmega88P flash 6 0x41 0x00 0x00
ATmega8A flash 6 0x21 0xFF 0x00
ATmega8 flash 6 0x21 0xFF 0x00
ATmega8U2 flash 6 0x41 0x00 0x00
ATtiny12 flash 10 0x02 0xFF 0x00
ATtiny13A flash 6 0x41 0x00 0x00
ATtiny13 flash 6 0x41 0x00 0x00
ATtiny15 flash 5 0x04 0xFF 0x00
ATtiny1634 flash 6 0x41 0x00 0x00
ATtiny167 flash 10 0x41 0x00 0x00
ATtiny2313A flash 6 0x41 0x00 0x00
ATtiny2313 flash 6 0x41 0x00 0x00
ATtiny24A flash 6 0x41 0x00 0x00
ATtiny24 flash 6 0x41 0x00 0x00
ATtiny25 flash 6 0x41 0x00 0x00
ATtiny261A flash 10 0x41 0x00 0x00
ATtiny261 flash 10 0x41 0x00 0x00
ATtiny26 flash 6 0x21 0xFF 0x00
ATtiny4313 flash 6 0x41 0x00 0x00
ATtiny43U flash 10 0x41 0x00 0x00
ATtiny441 flash 6 0x41 0x00 0x00
ATtiny44A flash 6 0x41 0x00 0x00
ATtiny44 flash 6 0x41 0x00 0x00
ATtiny45 flash 6 0x41 0x00 0x00
ATtiny461A flash 10 0x41 0x00 0x00
ATtiny461 flash 10 0x41 0x00 0x00
ATtiny48 flash 6 0x41 0x00 0x00
ATtiny828 flash 6 0x41 0x00 0x00
ATtiny841 flash 6 0x41 0x00 0x00
ATtiny84A flash 6 0x41 0x00 0x00
ATtiny84 flash 6 0x41 0x00 0x00
ATtiny85 flash 6 0x41 0x00 0x00
ATtiny861A flash 10 0x41 0x00 0x00
ATtiny861 flash 10 0x41 0x00 0x00
ATtiny87 flash 10 0x41 0x00 0x00
ATtiny88 flash 6 0x41 0x00 0x00
Diff STK500/STK600 flash parameters
diff --git a/tmp/stk500f b/tmp/stk600f
index 57b46b7..111b830 100644
--- a/tmp/1sf
+++ b/tmp/2sf
@@ -1,14 +1,14 @@
-|AT90CAN128|flash|10|0x41|0x00 0x00|
-|AT90CAN32|flash|10|0x41|0x00 0x00|
-|AT90CAN64|flash|10|0x41|0x00 0x00|
-|AT90PWM161|flash|10|0x41|0x00 0x00|
-|AT90PWM1|flash|10|0x41|0x00 0x00|
-|AT90PWM216|flash|10|0x41|0x00 0x00|
-|AT90PWM2B|flash|10|0x41|0x00 0x00|
-|AT90PWM316|flash|10|0x41|0x00 0x00|
-|AT90PWM3B|flash|10|0x41|0x00 0x00|
-|AT90PWM3|flash|10|0x41|0x00 0x00|
-|AT90PWM81|flash|10|0x41|0x00 0x00|
+|AT90CAN128|flash|6|0x41|0x00 0x00|
+|AT90CAN32|flash|6|0x41|0x00 0x00|
+|AT90CAN64|flash|6|0x41|0x00 0x00|
+|AT90PWM161|flash|6|0x41|0x00 0x00|
+|AT90PWM1|flash|6|0x41|0x00 0x00|
+|AT90PWM216|flash|6|0x41|0x00 0x00|
+|AT90PWM2B|flash|6|0x41|0x00 0x00|
+|AT90PWM316|flash|6|0x41|0x00 0x00|
+|AT90PWM3B|flash|6|0x41|0x00 0x00|
+|AT90PWM3|flash|6|0x41|0x00 0x00|
+|AT90PWM81|flash|6|0x41|0x00 0x00|
 |AT90USB1286|flash|6|0x41|0x00 0x00|
 |AT90USB1287|flash|6|0x41|0x00 0x00|
 |AT90USB162|flash|6|0x41|0x00 0x00|
@@ -33,9 +33,9 @@
 |ATA5835|flash|10|0x41|0x00 0x00|
 |ATA6285|flash|6|0x41|0x00 0x00|
 |ATA6286|flash|6|0x41|0x00 0x00|
-|ATA6612C|flash|10|0x41|0x00 0x00|
-|ATA6613C|flash|10|0x41|0x00 0x00|
-|ATA6614Q|flash|10|0x41|0x00 0x00|
+|ATA6612C|flash|6|0x41|0x00 0x00|
+|ATA6613C|flash|6|0x41|0x00 0x00|
+|ATA6614Q|flash|6|0x41|0x00 0x00|
 |ATA6616C|flash|10|0x41|0x00 0x00|
 |ATA6617C|flash|10|0x41|0x00 0x00|
 |ATA664251|flash|10|0x41|0x00 0x00|
@@ -43,142 +43,140 @@
 |ATA8215|flash|10|0x41|0x00 0x00|
 |ATA8510|flash|10|0x41|0x00 0x00|
 |ATA8515|flash|10|0x41|0x00 0x00|
-|ATmega1280|flash|10|0x41|0x00 0x00|
-|ATmega1281|flash|10|0x41|0x00 0x00|
-|ATmega1284|flash|10|0x41|0x00 0x00|
-|ATmega1284P|flash|10|0x41|0x00 0x00|
+|ATmega1280|flash|6|0x41|0x00 0x00|
+|ATmega1281|flash|6|0x41|0x00 0x00|
+|ATmega1284|flash|6|0x41|0x00 0x00|
+|ATmega1284P|flash|6|0x41|0x00 0x00|
 |ATmega1284RFR2|flash|50|0x41|0x00 0x00|
-|ATmega128A|flash|10|0x21|0xFF 0x00|
-|ATmega128|flash|10|0x21|0xFF 0x00|
+|ATmega128A|flash|6|0x21|0xFF 0x00|
+|ATmega128|flash|6|0x21|0xFF 0x00|
 |ATmega128RFA1|flash|50|0x41|0x00 0x00|
 |ATmega128RFR2|flash|50|0x41|0x00 0x00|
-|ATmega162|flash|10|0x41|0x00 0x00|
-|ATmega164A|flash|10|0x41|0x00 0x00|
-|ATmega164PA|flash|10|0x41|0x00 0x00|
-|ATmega164P|flash|10|0x41|0x00 0x00|
-|ATmega165A|flash|10|0x41|0x00 0x00|
-|ATmega165PA|flash|10|0x41|0x00 0x00|
-|ATmega165P|flash|10|0x41|0x00 0x00|
-|ATmega168A|flash|10|0x41|0x00 0x00|
-|ATmega168|flash|10|0x41|0x00 0x00|
-|ATmega168PA|flash|10|0x41|0x00 0x00|
-|ATmega168PB|flash|10|0x41|0x00 0x00|
-|ATmega168P|flash|10|0x41|0x00 0x00|
-|ATmega169A|flash|10|0x41|0x00 0x00|
-|ATmega169PA|flash|10|0x41|0x00 0x00|
-|ATmega169P|flash|10|0x41|0x00 0x00|
-|ATmega16A|flash|10|0x21|0xFF 0x00|
-|ATmega16|flash|10|0x21|0xFF 0x00|
-|ATmega16HVA|flash|10|0x41|0x00 0x00|
-|ATmega16HVB|flash|10|0x41|0x00 0x00|
-|ATmega16HVBrevB|flash|10|0x41|0x00 0x00|
-|ATmega16M1|flash|10|0x41|0x00 0x00|
+|ATmega162|flash|6|0x41|0x00 0x00|
+|ATmega164A|flash|6|0x41|0x00 0x00|
+|ATmega164PA|flash|6|0x41|0x00 0x00|
+|ATmega164P|flash|6|0x41|0x00 0x00|
+|ATmega165A|flash|6|0x41|0x00 0x00|
+|ATmega165PA|flash|6|0x41|0x00 0x00|
+|ATmega165P|flash|6|0x41|0x00 0x00|
+|ATmega168A|flash|6|0x41|0x00 0x00|
+|ATmega168|flash|6|0x41|0x00 0x00|
+|ATmega168PA|flash|6|0x41|0x00 0x00|
+|ATmega168PB|flash|6|0x41|0x00 0x00|
+|ATmega168P|flash|6|0x41|0x00 0x00|
+|ATmega169A|flash|6|0x41|0x00 0x00|
+|ATmega169PA|flash|6|0x41|0x00 0x00|
+|ATmega169P|flash|6|0x41|0x00 0x00|
+|ATmega16A|flash|6|0x21|0xFF 0x00|
+|ATmega16|flash|6|0x21|0xFF 0x00|
+|ATmega16HVB|flash|6|0x41|0x00 0x00|
+|ATmega16HVBrevB|flash|6|0x41|0x00 0x00|
+|ATmega16M1|flash|6|0x41|0x00 0x00|
 |ATmega16U2|flash|6|0x41|0x00 0x00|
 |ATmega16U4|flash|6|0x41|0x00 0x00|
-|ATmega2560|flash|10|0x41|0x00 0x00|
-|ATmega2561|flash|10|0x41|0x00 0x00|
+|ATmega2560|flash|6|0x41|0x00 0x00|
+|ATmega2561|flash|6|0x41|0x00 0x00|
 |ATmega2564RFR2|flash|50|0x41|0x00 0x00|
 |ATmega256RFR2|flash|50|0x41|0x00 0x00|
-|ATmega324A|flash|10|0x41|0x00 0x00|
-|ATmega324PA|flash|10|0x41|0x00 0x00|
-|ATmega324PB|flash|10|0x41|0x00 0x00|
-|ATmega324P|flash|10|0x41|0x00 0x00|
-|ATmega3250A|flash|10|0x41|0x00 0x00|
-|ATmega3250|flash|10|0x41|0x00 0x00|
-|ATmega3250PA|flash|10|0x41|0x00 0x00|
-|ATmega3250P|flash|10|0x41|0x00 0x00|
-|ATmega325A|flash|10|0x41|0x00 0x00|
-|ATmega325|flash|10|0x41|0x00 0x00|
-|ATmega325PA|flash|10|0x41|0x00 0x00|
-|ATmega325P|flash|10|0x41|0x00 0x00|
-|ATmega328|flash|10|0x41|0x00 0x00|
-|ATmega328PB|flash|10|0x41|0x00 0x00|
-|ATmega328P|flash|10|0x41|0x00 0x00|
-|ATmega3290A|flash|10|0x41|0x00 0x00|
-|ATmega3290|flash|10|0x41|0x00 0x00|
-|ATmega3290PA|flash|10|0x41|0x00 0x00|
-|ATmega3290P|flash|10|0x41|0x00 0x00|
-|ATmega329A|flash|10|0x41|0x00 0x00|
-|ATmega329|flash|10|0x41|0x00 0x00|
-|ATmega329PA|flash|10|0x41|0x00 0x00|
-|ATmega329P|flash|10|0x41|0x00 0x00|
-|ATmega32A|flash|10|0x21|0xFF 0x00|
-|ATmega32C1|flash|10|0x41|0x00 0x00|
-|ATmega32|flash|10|0x21|0xFF 0x00|
-|ATmega32HVB|flash|10|0x41|0x00 0x00|
-|ATmega32HVBrevB|flash|10|0x41|0x00 0x00|
-|ATmega32M1|flash|10|0x41|0x00 0x00|
+|ATmega324A|flash|6|0x41|0x00 0x00|
+|ATmega324PA|flash|6|0x41|0x00 0x00|
+|ATmega324PB|flash|6|0x41|0x00 0x00|
+|ATmega324P|flash|6|0x41|0x00 0x00|
+|ATmega3250A|flash|6|0x41|0x00 0x00|
+|ATmega3250|flash|6|0x41|0x00 0x00|
+|ATmega3250PA|flash|6|0x41|0x00 0x00|
+|ATmega3250P|flash|6|0x41|0x00 0x00|
+|ATmega325A|flash|6|0x41|0x00 0x00|
+|ATmega325|flash|6|0x41|0x00 0x00|
+|ATmega325PA|flash|6|0x41|0x00 0x00|
+|ATmega325P|flash|6|0x41|0x00 0x00|
+|ATmega328|flash|6|0x41|0x00 0x00|
+|ATmega328PB|flash|6|0x41|0x00 0x00|
+|ATmega328P|flash|6|0x41|0x00 0x00|
+|ATmega3290A|flash|6|0x41|0x00 0x00|
+|ATmega3290|flash|6|0x41|0x00 0x00|
+|ATmega3290PA|flash|6|0x41|0x00 0x00|
+|ATmega3290P|flash|6|0x41|0x00 0x00|
+|ATmega329A|flash|6|0x41|0x00 0x00|
+|ATmega329|flash|6|0x41|0x00 0x00|
+|ATmega329PA|flash|6|0x41|0x00 0x00|
+|ATmega329P|flash|6|0x41|0x00 0x00|
+|ATmega32A|flash|6|0x21|0xFF 0x00|
+|ATmega32C1|flash|6|0x41|0x00 0x00|
+|ATmega32|flash|6|0x21|0xFF 0x00|
+|ATmega32HVB|flash|6|0x41|0x00 0x00|
+|ATmega32HVBrevB|flash|6|0x41|0x00 0x00|
+|ATmega32M1|flash|6|0x41|0x00 0x00|
 |ATmega32U2|flash|6|0x41|0x00 0x00|
 |ATmega32U4|flash|6|0x41|0x00 0x00|
-|ATmega48A|flash|10|0x41|0x00 0x00|
-|ATmega48|flash|10|0x41|0x00 0x00|
-|ATmega48PA|flash|10|0x41|0x00 0x00|
-|ATmega48PB|flash|10|0x41|0x00 0x00|
-|ATmega48P|flash|10|0x41|0x00 0x00|
-|ATmega640|flash|10|0x41|0x00 0x00|
-|ATmega644A|flash|10|0x41|0x00 0x00|
-|ATmega644|flash|10|0x41|0x00 0x00|
-|ATmega644PA|flash|10|0x41|0x00 0x00|
-|ATmega644P|flash|10|0x41|0x00 0x00|
+|ATmega48A|flash|6|0x41|0x00 0x00|
+|ATmega48|flash|6|0x41|0x00 0x00|
+|ATmega48PA|flash|6|0x41|0x00 0x00|
+|ATmega48PB|flash|6|0x41|0x00 0x00|
+|ATmega48P|flash|6|0x41|0x00 0x00|
+|ATmega640|flash|6|0x41|0x00 0x00|
+|ATmega644A|flash|6|0x41|0x00 0x00|
+|ATmega644|flash|6|0x41|0x00 0x00|
+|ATmega644PA|flash|6|0x41|0x00 0x00|
+|ATmega644P|flash|6|0x41|0x00 0x00|
 |ATmega644RFR2|flash|50|0x41|0x00 0x00|
-|ATmega6450A|flash|10|0x41|0x00 0x00|
-|ATmega6450|flash|10|0x41|0x00 0x00|
-|ATmega6450P|flash|10|0x41|0x00 0x00|
-|ATmega645A|flash|10|0x41|0x00 0x00|
-|ATmega645|flash|10|0x41|0x00 0x00|
-|ATmega645P|flash|10|0x41|0x00 0x00|
-|ATmega6490A|flash|10|0x41|0x00 0x00|
-|ATmega6490|flash|10|0x41|0x00 0x00|
-|ATmega6490P|flash|10|0x41|0x00 0x00|
-|ATmega649A|flash|10|0x41|0x00 0x00|
-|ATmega649|flash|10|0x41|0x00 0x00|
-|ATmega649P|flash|10|0x41|0x00 0x00|
-|ATmega64A|flash|10|0x21|0xFF 0x00|
-|ATmega64C1|flash|10|0x41|0x00 0x00|
-|ATmega64|flash|10|0x21|0xFF 0x00|
-|ATmega64HVE2|flash|10|0x41|0x00 0x00|
-|ATmega64M1|flash|10|0x41|0x00 0x00|
+|ATmega6450A|flash|6|0x41|0x00 0x00|
+|ATmega6450|flash|6|0x41|0x00 0x00|
+|ATmega6450P|flash|6|0x41|0x00 0x00|
+|ATmega645A|flash|6|0x41|0x00 0x00|
+|ATmega645|flash|6|0x41|0x00 0x00|
+|ATmega645P|flash|6|0x41|0x00 0x00|
+|ATmega6490A|flash|6|0x41|0x00 0x00|
+|ATmega6490|flash|6|0x41|0x00 0x00|
+|ATmega6490P|flash|6|0x41|0x00 0x00|
+|ATmega649A|flash|6|0x41|0x00 0x00|
+|ATmega649|flash|6|0x41|0x00 0x00|
+|ATmega649P|flash|6|0x41|0x00 0x00|
+|ATmega64A|flash|6|0x21|0xFF 0x00|
+|ATmega64C1|flash|6|0x41|0x00 0x00|
+|ATmega64|flash|6|0x21|0xFF 0x00|
+|ATmega64HVE2|flash|6|0x21|0xFF 0x00|
+|ATmega64M1|flash|6|0x41|0x00 0x00|
 |ATmega64RFR2|flash|50|0x41|0x00 0x00|
-|ATmega8515|flash|10|0x21|0xFF 0x00|
-|ATmega8535|flash|10|0x21|0xFF 0x00|
-|ATmega88A|flash|10|0x41|0x00 0x00|
-|ATmega88|flash|10|0x41|0x00 0x00|
-|ATmega88PA|flash|10|0x41|0x00 0x00|
-|ATmega88PB|flash|10|0x41|0x00 0x00|
-|ATmega88P|flash|10|0x41|0x00 0x00|
-|ATmega8A|flash|10|0x21|0xFF 0x00|
-|ATmega8|flash|10|0x21|0xFF 0x00|
-|ATmega8HVA|flash|10|0x41|0x00 0x00|
+|ATmega8515|flash|6|0x21|0xFF 0x00|
+|ATmega8535|flash|6|0x21|0xFF 0x00|
+|ATmega88A|flash|6|0x41|0x00 0x00|
+|ATmega88|flash|6|0x41|0x00 0x00|
+|ATmega88PA|flash|6|0x41|0x00 0x00|
+|ATmega88PB|flash|6|0x41|0x00 0x00|
+|ATmega88P|flash|6|0x41|0x00 0x00|
+|ATmega8A|flash|6|0x21|0xFF 0x00|
+|ATmega8|flash|6|0x21|0xFF 0x00|
 |ATmega8U2|flash|6|0x41|0x00 0x00|
-|ATtiny12|flash|10|0x04|0xFF 0x00|
-|ATtiny13A|flash|10|0x41|0x00 0x00|
-|ATtiny13|flash|10|0x41|0x00 0x00|
-|ATtiny15|flash|10|0x04|0xFF 0x00|
-|ATtiny1634|flash|10|0x41|0x00 0x00|
+|ATtiny12|flash|10|0x02|0xFF 0x00|
+|ATtiny13A|flash|6|0x41|0x00 0x00|
+|ATtiny13|flash|6|0x41|0x00 0x00|
+|ATtiny15|flash|5|0x04|0xFF 0x00|
+|ATtiny1634|flash|6|0x41|0x00 0x00|
 |ATtiny167|flash|10|0x41|0x00 0x00|
-|ATtiny2313A|flash|10|0x41|0x00 0x00|
-|ATtiny2313|flash|10|0x41|0x00 0x00|
-|ATtiny24A|flash|10|0x41|0x00 0x00|
-|ATtiny24|flash|10|0x41|0x00 0x00|
-|ATtiny25|flash|10|0x41|0x00 0x00|
+|ATtiny2313A|flash|6|0x41|0x00 0x00|
+|ATtiny2313|flash|6|0x41|0x00 0x00|
+|ATtiny24A|flash|6|0x41|0x00 0x00|
+|ATtiny24|flash|6|0x41|0x00 0x00|
+|ATtiny25|flash|6|0x41|0x00 0x00|
 |ATtiny261A|flash|10|0x41|0x00 0x00|
 |ATtiny261|flash|10|0x41|0x00 0x00|
-|ATtiny26|flash|10|0x21|0xFF 0x00|
-|ATtiny4313|flash|10|0x41|0x00 0x00|
+|ATtiny26|flash|6|0x21|0xFF 0x00|
+|ATtiny4313|flash|6|0x41|0x00 0x00|
 |ATtiny43U|flash|10|0x41|0x00 0x00|
-|ATtiny441|flash|10|0x41|0x00 0x00|
-|ATtiny44A|flash|10|0x41|0x00 0x00|
-|ATtiny44|flash|10|0x41|0x00 0x00|
-|ATtiny45|flash|10|0x41|0x00 0x00|
+|ATtiny441|flash|6|0x41|0x00 0x00|
+|ATtiny44A|flash|6|0x41|0x00 0x00|
+|ATtiny44|flash|6|0x41|0x00 0x00|
+|ATtiny45|flash|6|0x41|0x00 0x00|
 |ATtiny461A|flash|10|0x41|0x00 0x00|
 |ATtiny461|flash|10|0x41|0x00 0x00|
-|ATtiny48|flash|10|0x41|0x00 0x00|
-|ATtiny828|flash|10|0x41|0x00 0x00|
-|ATtiny841|flash|10|0x41|0x00 0x00|
-|ATtiny84A|flash|10|0x41|0x00 0x00|
-|ATtiny84|flash|10|0x41|0x00 0x00|
-|ATtiny85|flash|10|0x41|0x00 0x00|
+|ATtiny48|flash|6|0x41|0x00 0x00|
+|ATtiny828|flash|6|0x41|0x00 0x00|
+|ATtiny841|flash|6|0x41|0x00 0x00|
+|ATtiny84A|flash|6|0x41|0x00 0x00|
+|ATtiny84|flash|6|0x41|0x00 0x00|
+|ATtiny85|flash|6|0x41|0x00 0x00|
 |ATtiny861A|flash|10|0x41|0x00 0x00|
 |ATtiny861|flash|10|0x41|0x00 0x00|
 |ATtiny87|flash|10|0x41|0x00 0x00|
-|ATtiny88|flash|10|0x41|0x00 0x00|
+|ATtiny88|flash|6|0x41|0x00 0x00|
STK500 eeprom parameters
Part memory delay mode readback
AT90CAN128 eeprom 20 0x41 0x00 0x00
AT90CAN32 eeprom 20 0x41 0x00 0x00
AT90CAN64 eeprom 20 0x41 0x00 0x00
AT90PWM161 eeprom 5 0x41 0x00 0x00
AT90PWM1 eeprom 5 0x41 0x00 0x00
AT90PWM216 eeprom 5 0x41 0x00 0x00
AT90PWM2B eeprom 5 0x41 0x00 0x00
AT90PWM316 eeprom 5 0x41 0x00 0x00
AT90PWM3B eeprom 5 0x41 0x00 0x00
AT90PWM3 eeprom 5 0x41 0x00 0x00
AT90PWM81 eeprom 5 0x41 0x00 0x00
AT90USB1286 eeprom 10 0x41 0x00 0x00
AT90USB1287 eeprom 10 0x41 0x00 0x00
AT90USB162 eeprom 20 0x41 0x00 0x00
AT90USB646 eeprom 10 0x41 0x00 0x00
AT90USB647 eeprom 10 0x41 0x00 0x00
AT90USB82 eeprom 20 0x41 0x00 0x00
ATA5272 eeprom 10 0x41 0x00 0x00
ATA5505 eeprom 10 0x41 0x00 0x00
ATA5700M322 eeprom 20 0x41 0x00 0x00
ATA5702M322 eeprom 20 0x41 0x00 0x00
ATA5781 eeprom 20 0x41 0x00 0x00
ATA5782 eeprom 20 0x41 0x00 0x00
ATA5783 eeprom 20 0x41 0x00 0x00
ATA5787 eeprom 20 0x41 0x00 0x00
ATA5790 eeprom 10 0x41 0x00 0x00
ATA5790N eeprom 10 0x41 0x00 0x00
ATA5791 eeprom 10 0x41 0x00 0x00
ATA5795 eeprom 10 0x41 0x00 0x00
ATA5831 eeprom 20 0x41 0x00 0x00
ATA5832 eeprom 20 0x41 0x00 0x00
ATA5833 eeprom 20 0x41 0x00 0x00
ATA5835 eeprom 20 0x41 0x00 0x00
ATA6285 eeprom 5 0x41 0x00 0x00
ATA6286 eeprom 5 0x41 0x00 0x00
ATA6612C eeprom 20 0x41 0x00 0x00
ATA6613C eeprom 20 0x41 0x00 0x00
ATA6614Q eeprom 20 0x41 0x00 0x00
ATA6616C eeprom 10 0x41 0x00 0x00
ATA6617C eeprom 10 0x41 0x00 0x00
ATA664251 eeprom 10 0x41 0x00 0x00
ATA8210 eeprom 20 0x41 0x00 0x00
ATA8215 eeprom 20 0x41 0x00 0x00
ATA8510 eeprom 20 0x41 0x00 0x00
ATA8515 eeprom 20 0x41 0x00 0x00
ATmega1280 eeprom 10 0x41 0x00 0x00
ATmega1281 eeprom 10 0x41 0x00 0x00
ATmega1284 eeprom 10 0x41 0x00 0x00
ATmega1284P eeprom 10 0x41 0x00 0x00
ATmega1284RFR2 eeprom 50 0x41 0x00 0x00
ATmega128A eeprom 20 0x04 0xFF 0xFF
ATmega128 eeprom 20 0x04 0xFF 0xFF
ATmega128RFA1 eeprom 50 0x41 0x00 0x00
ATmega128RFR2 eeprom 50 0x41 0x00 0x00
ATmega162 eeprom 20 0x41 0x00 0x00
ATmega164A eeprom 20 0x41 0x00 0x00
ATmega164PA eeprom 20 0x41 0x00 0x00
ATmega164P eeprom 20 0x41 0x00 0x00
ATmega165A eeprom 20 0x41 0x00 0x00
ATmega165PA eeprom 20 0x41 0x00 0x00
ATmega165P eeprom 20 0x41 0x00 0x00
ATmega168A eeprom 20 0x41 0x00 0x00
ATmega168 eeprom 20 0x41 0x00 0x00
ATmega168PA eeprom 20 0x41 0x00 0x00
ATmega168PB eeprom 20 0x41 0x00 0x00
ATmega168P eeprom 20 0x41 0x00 0x00
ATmega169A eeprom 20 0x41 0x00 0x00
ATmega169PA eeprom 20 0x41 0x00 0x00
ATmega169P eeprom 20 0x41 0x00 0x00
ATmega16A eeprom 20 0x04 0xFF 0xFF
ATmega16 eeprom 20 0x04 0xFF 0xFF
ATmega16HVA eeprom 20 0x41 0x00 0x00
ATmega16HVB eeprom 10 0x41 0x00 0x00
ATmega16HVBrevB eeprom 10 0x41 0x00 0x00
ATmega16M1 eeprom 10 0x41 0x00 0x00
ATmega16U2 eeprom 20 0x41 0x00 0x00
ATmega16U4 eeprom 20 0x41 0x00 0x00
ATmega2560 eeprom 10 0x41 0x00 0x00
ATmega2561 eeprom 10 0x41 0x00 0x00
ATmega2564RFR2 eeprom 50 0x41 0x00 0x00
ATmega256RFR2 eeprom 50 0x41 0x00 0x00
ATmega324A eeprom 10 0x41 0x00 0x00
ATmega324PA eeprom 10 0x41 0x00 0x00
ATmega324PB eeprom 10 0x41 0x00 0x00
ATmega324P eeprom 10 0x41 0x00 0x00
ATmega3250A eeprom 10 0x41 0x00 0x00
ATmega3250 eeprom 10 0x41 0x00 0x00
ATmega3250PA eeprom 10 0x41 0x00 0x00
ATmega3250P eeprom 10 0x41 0x00 0x00
ATmega325A eeprom 10 0x41 0x00 0x00
ATmega325 eeprom 10 0x41 0x00 0x00
ATmega325PA eeprom 10 0x41 0x00 0x00
ATmega325P eeprom 10 0x41 0x00 0x00
ATmega328 eeprom 20 0x41 0x00 0x00
ATmega328PB eeprom 20 0x41 0x00 0x00
ATmega328P eeprom 20 0x41 0x00 0x00
ATmega3290A eeprom 10 0x41 0x00 0x00
ATmega3290 eeprom 10 0x41 0x00 0x00
ATmega3290PA eeprom 10 0x41 0x00 0x00
ATmega3290P eeprom 10 0x41 0x00 0x00
ATmega329A eeprom 10 0x41 0x00 0x00
ATmega329 eeprom 10 0x41 0x00 0x00
ATmega329PA eeprom 10 0x41 0x00 0x00
ATmega329P eeprom 10 0x41 0x00 0x00
ATmega32A eeprom 20 0x04 0xFF 0xFF
ATmega32C1 eeprom 10 0x41 0x00 0x00
ATmega32 eeprom 20 0x04 0xFF 0xFF
ATmega32HVB eeprom 10 0x41 0x00 0x00
ATmega32HVBrevB eeprom 10 0x41 0x00 0x00
ATmega32M1 eeprom 10 0x41 0x00 0x00
ATmega32U2 eeprom 20 0x41 0x00 0x00
ATmega32U4 eeprom 20 0x41 0x00 0x00
ATmega48A eeprom 20 0x41 0x00 0x00
ATmega48 eeprom 20 0x41 0x00 0x00
ATmega48PA eeprom 20 0x41 0x00 0x00
ATmega48PB eeprom 20 0x41 0x00 0x00
ATmega48P eeprom 20 0x41 0x00 0x00
ATmega640 eeprom 10 0x41 0x00 0x00
ATmega644A eeprom 10 0x41 0x00 0x00
ATmega644 eeprom 10 0x41 0x00 0x00
ATmega644PA eeprom 10 0x41 0x00 0x00
ATmega644P eeprom 10 0x41 0x00 0x00
ATmega644RFR2 eeprom 50 0x41 0x00 0x00
ATmega6450A eeprom 10 0x41 0x00 0x00
ATmega6450 eeprom 10 0x41 0x00 0x00
ATmega6450P eeprom 10 0x41 0x00 0x00
ATmega645A eeprom 10 0x41 0x00 0x00
ATmega645 eeprom 10 0x41 0x00 0x00
ATmega645P eeprom 10 0x41 0x00 0x00
ATmega6490A eeprom 10 0x41 0x00 0x00
ATmega6490 eeprom 10 0x41 0x00 0x00
ATmega6490P eeprom 10 0x41 0x00 0x00
ATmega649A eeprom 10 0x41 0x00 0x00
ATmega649 eeprom 10 0x41 0x00 0x00
ATmega649P eeprom 10 0x41 0x00 0x00
ATmega64A eeprom 20 0x04 0xFF 0xFF
ATmega64C1 eeprom 10 0x41 0x00 0x00
ATmega64 eeprom 20 0x04 0xFF 0xFF
ATmega64HVE2 eeprom 20 0x41 0x00 0x00
ATmega64M1 eeprom 10 0x41 0x00 0x00
ATmega64RFR2 eeprom 50 0x41 0x00 0x00
ATmega8515 eeprom 20 0x04 0xFF 0xFF
ATmega8535 eeprom 20 0x04 0xFF 0xFF
ATmega88A eeprom 20 0x41 0x00 0x00
ATmega88 eeprom 20 0x41 0x00 0x00
ATmega88PA eeprom 20 0x41 0x00 0x00
ATmega88PB eeprom 20 0x41 0x00 0x00
ATmega88P eeprom 20 0x41 0x00 0x00
ATmega8A eeprom 20 0x04 0xFF 0xFF
ATmega8 eeprom 20 0x04 0xFF 0xFF
ATmega8HVA eeprom 20 0x41 0x00 0x00
ATmega8U2 eeprom 20 0x41 0x00 0x00
ATtiny12 eeprom 20 0x04 0xFF 0xFF
ATtiny13A eeprom 5 0x41 0x00 0x00
ATtiny13 eeprom 5 0x41 0x00 0x00
ATtiny15 eeprom 20 0x04 0xFF 0xFF
ATtiny1634 eeprom 20 0x41 0x00 0x00
ATtiny167 eeprom 10 0x41 0x00 0x00
ATtiny2313A eeprom 6 0x41 0x00 0x00
ATtiny2313 eeprom 6 0x41 0x00 0x00
ATtiny24A eeprom 10 0x41 0x00 0x00
ATtiny24 eeprom 10 0x41 0x00 0x00
ATtiny25 eeprom 5 0x41 0x00 0x00
ATtiny261A eeprom 10 0x41 0x00 0x00
ATtiny261 eeprom 10 0x41 0x00 0x00
ATtiny26 eeprom 20 0x04 0xFF 0xFF
ATtiny4313 eeprom 6 0x41 0x00 0x00
ATtiny43U eeprom 10 0x41 0x00 0x00
ATtiny441 eeprom 10 0x41 0x00 0x00
ATtiny44A eeprom 10 0x41 0x00 0x00
ATtiny44 eeprom 10 0x41 0x00 0x00
ATtiny45 eeprom 5 0x41 0x00 0x00
ATtiny461A eeprom 10 0x41 0x00 0x00
ATtiny461 eeprom 10 0x41 0x00 0x00
ATtiny48 eeprom 20 0x41 0x00 0x00
ATtiny828 eeprom 20 0x41 0x00 0x00
ATtiny841 eeprom 10 0x41 0x00 0x00
ATtiny84A eeprom 10 0x41 0x00 0x00
ATtiny84 eeprom 10 0x41 0x00 0x00
ATtiny85 eeprom 5 0x41 0x00 0x00
ATtiny861A eeprom 10 0x41 0x00 0x00
ATtiny861 eeprom 10 0x41 0x00 0x00
ATtiny87 eeprom 10 0x41 0x00 0x00
ATtiny88 eeprom 20 0x41 0x00 0x00
STK600 eeprom parameters
Part memory delay mode readback
AT90CAN128 eeprom 20 0x41 0x00 0x00
AT90CAN32 eeprom 20 0x41 0x00 0x00
AT90CAN64 eeprom 20 0x41 0x00 0x00
AT90PWM161 eeprom 5 0x41 0x00 0x00
AT90PWM1 eeprom 5 0x41 0x00 0x00
AT90PWM216 eeprom 5 0x41 0x00 0x00
AT90PWM2B eeprom 5 0x41 0x00 0x00
AT90PWM316 eeprom 5 0x41 0x00 0x00
AT90PWM3B eeprom 5 0x41 0x00 0x00
AT90PWM3 eeprom 5 0x41 0x00 0x00
AT90PWM81 eeprom 5 0x41 0x00 0x00
AT90USB1286 eeprom 20 0x41 0x00 0x00
AT90USB1287 eeprom 20 0x41 0x00 0x00
AT90USB162 eeprom 20 0x41 0x00 0x00
AT90USB646 eeprom 20 0x41 0x00 0x00
AT90USB647 eeprom 20 0x41 0x00 0x00
AT90USB82 eeprom 20 0x41 0x00 0x00
ATA5272 eeprom 10 0x41 0x00 0x00
ATA5505 eeprom 10 0x41 0x00 0x00
ATA5700M322 eeprom 20 0x41 0x00 0x00
ATA5702M322 eeprom 20 0x41 0x00 0x00
ATA5781 eeprom 20 0x41 0x00 0x00
ATA5782 eeprom 20 0x41 0x00 0x00
ATA5783 eeprom 20 0x41 0x00 0x00
ATA5787 eeprom 20 0x41 0x00 0x00
ATA5790 eeprom 10 0x41 0x00 0x00
ATA5790N eeprom 10 0x41 0x00 0x00
ATA5791 eeprom 10 0x41 0x00 0x00
ATA5795 eeprom 10 0x41 0x00 0x00
ATA5831 eeprom 20 0x41 0x00 0x00
ATA5832 eeprom 20 0x41 0x00 0x00
ATA5833 eeprom 20 0x41 0x00 0x00
ATA5835 eeprom 20 0x41 0x00 0x00
ATA6285 eeprom 5 0x41 0x00 0x00
ATA6286 eeprom 5 0x41 0x00 0x00
ATA6612C eeprom 5 0x41 0x00 0x00
ATA6613C eeprom 5 0x41 0x00 0x00
ATA6614Q eeprom 5 0x41 0x00 0x00
ATA6616C eeprom 10 0x41 0x00 0x00
ATA6617C eeprom 10 0x41 0x00 0x00
ATA664251 eeprom 10 0x41 0x00 0x00
ATA8210 eeprom 20 0x41 0x00 0x00
ATA8215 eeprom 20 0x41 0x00 0x00
ATA8510 eeprom 20 0x41 0x00 0x00
ATA8515 eeprom 20 0x41 0x00 0x00
ATmega1280 eeprom 10 0x41 0x00 0x00
ATmega1281 eeprom 10 0x41 0x00 0x00
ATmega1284 eeprom 10 0x41 0x00 0x00
ATmega1284P eeprom 10 0x41 0x00 0x00
ATmega1284RFR2 eeprom 50 0x41 0x00 0x00
ATmega128A eeprom 12 0x04 0xFF 0xFF
ATmega128 eeprom 12 0x04 0xFF 0xFF
ATmega128RFA1 eeprom 50 0x41 0x00 0x00
ATmega128RFR2 eeprom 50 0x41 0x00 0x00
ATmega162 eeprom 20 0x41 0x00 0x00
ATmega164A eeprom 10 0x41 0x00 0x00
ATmega164PA eeprom 10 0x41 0x00 0x00
ATmega164P eeprom 10 0x41 0x00 0x00
ATmega165A eeprom 20 0x41 0x00 0x00
ATmega165PA eeprom 20 0x41 0x00 0x00
ATmega165P eeprom 20 0x41 0x00 0x00
ATmega168A eeprom 5 0x41 0x00 0x00
ATmega168 eeprom 5 0x41 0x00 0x00
ATmega168PA eeprom 5 0x41 0x00 0x00
ATmega168PB eeprom 5 0x41 0x00 0x00
ATmega168P eeprom 5 0x41 0x00 0x00
ATmega169A eeprom 20 0x41 0x00 0x00
ATmega169PA eeprom 20 0x41 0x00 0x00
ATmega169P eeprom 20 0x41 0x00 0x00
ATmega16A eeprom 10 0x04 0xFF 0xFF
ATmega16 eeprom 10 0x04 0xFF 0xFF
ATmega16HVB eeprom 10 0x41 0x00 0x00
ATmega16HVBrevB eeprom 10 0x41 0x00 0x00
ATmega16M1 eeprom 5 0x41 0x00 0x00
ATmega16U2 eeprom 20 0x41 0x00 0x00
ATmega16U4 eeprom 20 0x41 0x00 0x00
ATmega2560 eeprom 10 0x41 0x00 0x00
ATmega2561 eeprom 10 0x41 0x00 0x00
ATmega2564RFR2 eeprom 50 0x41 0x00 0x00
ATmega256RFR2 eeprom 50 0x41 0x00 0x00
ATmega324A eeprom 10 0x41 0x00 0x00
ATmega324PA eeprom 10 0x41 0x00 0x00
ATmega324PB eeprom 10 0x41 0x00 0x00
ATmega324P eeprom 10 0x41 0x00 0x00
ATmega3250A eeprom 10 0x41 0x00 0x00
ATmega3250 eeprom 10 0x41 0x00 0x00
ATmega3250PA eeprom 10 0x41 0x00 0x00
ATmega3250P eeprom 10 0x41 0x00 0x00
ATmega325A eeprom 10 0x41 0x00 0x00
ATmega325 eeprom 10 0x41 0x00 0x00
ATmega325PA eeprom 10 0x41 0x00 0x00
ATmega325P eeprom 10 0x41 0x00 0x00
ATmega328 eeprom 5 0x41 0x00 0x00
ATmega328PB eeprom 5 0x41 0x00 0x00
ATmega328P eeprom 5 0x41 0x00 0x00
ATmega3290A eeprom 10 0x41 0x00 0x00
ATmega3290 eeprom 10 0x41 0x00 0x00
ATmega3290PA eeprom 10 0x41 0x00 0x00
ATmega3290P eeprom 10 0x41 0x00 0x00
ATmega329A eeprom 10 0x41 0x00 0x00
ATmega329 eeprom 10 0x41 0x00 0x00
ATmega329PA eeprom 10 0x41 0x00 0x00
ATmega329P eeprom 10 0x41 0x00 0x00
ATmega32A eeprom 10 0x04 0xFF 0xFF
ATmega32C1 eeprom 5 0x41 0x00 0x00
ATmega32 eeprom 10 0x04 0xFF 0xFF
ATmega32HVB eeprom 10 0x41 0x00 0x00
ATmega32HVBrevB eeprom 10 0x41 0x00 0x00
ATmega32M1 eeprom 5 0x41 0x00 0x00
ATmega32U2 eeprom 20 0x41 0x00 0x00
ATmega32U4 eeprom 20 0x41 0x00 0x00
ATmega48A eeprom 5 0x41 0x00 0x00
ATmega48 eeprom 5 0x41 0x00 0x00
ATmega48PA eeprom 5 0x41 0x00 0x00
ATmega48PB eeprom 5 0x41 0x00 0x00
ATmega48P eeprom 5 0x41 0x00 0x00
ATmega640 eeprom 10 0x41 0x00 0x00
ATmega644A eeprom 10 0x41 0x00 0x00
ATmega644 eeprom 10 0x41 0x00 0x00
ATmega644PA eeprom 10 0x41 0x00 0x00
ATmega644P eeprom 10 0x41 0x00 0x00
ATmega644RFR2 eeprom 50 0x41 0x00 0x00
ATmega6450A eeprom 10 0x41 0x00 0x00
ATmega6450 eeprom 10 0x41 0x00 0x00
ATmega6450P eeprom 10 0x41 0x00 0x00
ATmega645A eeprom 10 0x41 0x00 0x00
ATmega645 eeprom 10 0x41 0x00 0x00
ATmega645P eeprom 10 0x41 0x00 0x00
ATmega6490A eeprom 10 0x41 0x00 0x00
ATmega6490 eeprom 10 0x41 0x00 0x00
ATmega6490P eeprom 10 0x41 0x00 0x00
ATmega649A eeprom 10 0x41 0x00 0x00
ATmega649 eeprom 10 0x41 0x00 0x00
ATmega649P eeprom 10 0x41 0x00 0x00
ATmega64A eeprom 20 0x04 0xFF 0xFF
ATmega64C1 eeprom 5 0x41 0x00 0x00
ATmega64 eeprom 20 0x04 0xFF 0xFF
ATmega64HVE2 eeprom 20 0x04 0xFF 0xFF
ATmega64M1 eeprom 5 0x41 0x00 0x00
ATmega64RFR2 eeprom 50 0x41 0x00 0x00
ATmega8515 eeprom 10 0x04 0xFF 0xFF
ATmega8535 eeprom 10 0x04 0xFF 0xFF
ATmega88A eeprom 5 0x41 0x00 0x00
ATmega88 eeprom 5 0x41 0x00 0x00
ATmega88PA eeprom 5 0x41 0x00 0x00
ATmega88PB eeprom 5 0x41 0x00 0x00
ATmega88P eeprom 5 0x41 0x00 0x00
ATmega8A eeprom 10 0x04 0xFF 0xFF
ATmega8 eeprom 10 0x04 0xFF 0xFF
ATmega8U2 eeprom 20 0x41 0x00 0x00
ATtiny12 eeprom 8 0x02 0xFF 0xFF
ATtiny13A eeprom 5 0x41 0x00 0x00
ATtiny13 eeprom 5 0x41 0x00 0x00
ATtiny15 eeprom 10 0x04 0xFF 0xFF
ATtiny1634 eeprom 5 0x41 0x00 0x00
ATtiny167 eeprom 10 0x41 0x00 0x00
ATtiny2313A eeprom 6 0x41 0x00 0x00
ATtiny2313 eeprom 6 0x41 0x00 0x00
ATtiny24A eeprom 5 0x41 0x00 0x00
ATtiny24 eeprom 5 0x41 0x00 0x00
ATtiny25 eeprom 5 0x41 0x00 0x00
ATtiny261A eeprom 10 0x41 0x00 0x00
ATtiny261 eeprom 10 0x41 0x00 0x00
ATtiny26 eeprom 10 0x04 0xFF 0xFF
ATtiny4313 eeprom 6 0x41 0x00 0x00
ATtiny43U eeprom 10 0x41 0x00 0x00
ATtiny441 eeprom 5 0x41 0x00 0x00
ATtiny44A eeprom 5 0x41 0x00 0x00
ATtiny44 eeprom 5 0x41 0x00 0x00
ATtiny45 eeprom 5 0x41 0x00 0x00
ATtiny461A eeprom 10 0x41 0x00 0x00
ATtiny461 eeprom 10 0x41 0x00 0x00
ATtiny48 eeprom 5 0x41 0x00 0x00
ATtiny828 eeprom 5 0x41 0x00 0x00
ATtiny841 eeprom 5 0x41 0x00 0x00
ATtiny84A eeprom 5 0x41 0x00 0x00
ATtiny84 eeprom 5 0x41 0x00 0x00
ATtiny85 eeprom 5 0x41 0x00 0x00
ATtiny861A eeprom 10 0x41 0x00 0x00
ATtiny861 eeprom 10 0x41 0x00 0x00
ATtiny87 eeprom 10 0x41 0x00 0x00
ATtiny88 eeprom 5 0x41 0x00 0x00
Diff STK500/STK600 eeprom parameters
diff --git a/tmp/stk500e b/tmp/stk600e
index b7faeaa..3d8d21b 100644
--- a/tmp/1se
+++ b/tmp/2se
@@ -9,11 +9,11 @@
 |AT90PWM3B|eeprom|5|0x41|0x00 0x00|
 |AT90PWM3|eeprom|5|0x41|0x00 0x00|
 |AT90PWM81|eeprom|5|0x41|0x00 0x00|
-|AT90USB1286|eeprom|10|0x41|0x00 0x00|
-|AT90USB1287|eeprom|10|0x41|0x00 0x00|
+|AT90USB1286|eeprom|20|0x41|0x00 0x00|
+|AT90USB1287|eeprom|20|0x41|0x00 0x00|
 |AT90USB162|eeprom|20|0x41|0x00 0x00|
-|AT90USB646|eeprom|10|0x41|0x00 0x00|
-|AT90USB647|eeprom|10|0x41|0x00 0x00|
+|AT90USB646|eeprom|20|0x41|0x00 0x00|
+|AT90USB647|eeprom|20|0x41|0x00 0x00|
 |AT90USB82|eeprom|20|0x41|0x00 0x00|
 |ATA5272|eeprom|10|0x41|0x00 0x00|
 |ATA5505|eeprom|10|0x41|0x00 0x00|
@@ -33,9 +33,9 @@
 |ATA5835|eeprom|20|0x41|0x00 0x00|
 |ATA6285|eeprom|5|0x41|0x00 0x00|
 |ATA6286|eeprom|5|0x41|0x00 0x00|
-|ATA6612C|eeprom|20|0x41|0x00 0x00|
-|ATA6613C|eeprom|20|0x41|0x00 0x00|
-|ATA6614Q|eeprom|20|0x41|0x00 0x00|
+|ATA6612C|eeprom|5|0x41|0x00 0x00|
+|ATA6613C|eeprom|5|0x41|0x00 0x00|
+|ATA6614Q|eeprom|5|0x41|0x00 0x00|
 |ATA6616C|eeprom|10|0x41|0x00 0x00|
 |ATA6617C|eeprom|10|0x41|0x00 0x00|
 |ATA664251|eeprom|10|0x41|0x00 0x00|
@@ -48,31 +48,30 @@
 |ATmega1284|eeprom|10|0x41|0x00 0x00|
 |ATmega1284P|eeprom|10|0x41|0x00 0x00|
 |ATmega1284RFR2|eeprom|50|0x41|0x00 0x00|
-|ATmega128A|eeprom|20|0x04|0xFF 0xFF|
-|ATmega128|eeprom|20|0x04|0xFF 0xFF|
+|ATmega128A|eeprom|12|0x04|0xFF 0xFF|
+|ATmega128|eeprom|12|0x04|0xFF 0xFF|
 |ATmega128RFA1|eeprom|50|0x41|0x00 0x00|
 |ATmega128RFR2|eeprom|50|0x41|0x00 0x00|
 |ATmega162|eeprom|20|0x41|0x00 0x00|
-|ATmega164A|eeprom|20|0x41|0x00 0x00|
-|ATmega164PA|eeprom|20|0x41|0x00 0x00|
-|ATmega164P|eeprom|20|0x41|0x00 0x00|
+|ATmega164A|eeprom|10|0x41|0x00 0x00|
+|ATmega164PA|eeprom|10|0x41|0x00 0x00|
+|ATmega164P|eeprom|10|0x41|0x00 0x00|
 |ATmega165A|eeprom|20|0x41|0x00 0x00|
 |ATmega165PA|eeprom|20|0x41|0x00 0x00|
 |ATmega165P|eeprom|20|0x41|0x00 0x00|
-|ATmega168A|eeprom|20|0x41|0x00 0x00|
-|ATmega168|eeprom|20|0x41|0x00 0x00|
-|ATmega168PA|eeprom|20|0x41|0x00 0x00|
-|ATmega168PB|eeprom|20|0x41|0x00 0x00|
-|ATmega168P|eeprom|20|0x41|0x00 0x00|
+|ATmega168A|eeprom|5|0x41|0x00 0x00|
+|ATmega168|eeprom|5|0x41|0x00 0x00|
+|ATmega168PA|eeprom|5|0x41|0x00 0x00|
+|ATmega168PB|eeprom|5|0x41|0x00 0x00|
+|ATmega168P|eeprom|5|0x41|0x00 0x00|
 |ATmega169A|eeprom|20|0x41|0x00 0x00|
 |ATmega169PA|eeprom|20|0x41|0x00 0x00|
 |ATmega169P|eeprom|20|0x41|0x00 0x00|
-|ATmega16A|eeprom|20|0x04|0xFF 0xFF|
-|ATmega16|eeprom|20|0x04|0xFF 0xFF|
-|ATmega16HVA|eeprom|20|0x41|0x00 0x00|
+|ATmega16A|eeprom|10|0x04|0xFF 0xFF|
+|ATmega16|eeprom|10|0x04|0xFF 0xFF|
 |ATmega16HVB|eeprom|10|0x41|0x00 0x00|
 |ATmega16HVBrevB|eeprom|10|0x41|0x00 0x00|
-|ATmega16M1|eeprom|10|0x41|0x00 0x00|
+|ATmega16M1|eeprom|5|0x41|0x00 0x00|
 |ATmega16U2|eeprom|20|0x41|0x00 0x00|
 |ATmega16U4|eeprom|20|0x41|0x00 0x00|
 |ATmega2560|eeprom|10|0x41|0x00 0x00|
@@ -91,9 +90,9 @@
 |ATmega325|eeprom|10|0x41|0x00 0x00|
 |ATmega325PA|eeprom|10|0x41|0x00 0x00|
 |ATmega325P|eeprom|10|0x41|0x00 0x00|
-|ATmega328|eeprom|20|0x41|0x00 0x00|
-|ATmega328PB|eeprom|20|0x41|0x00 0x00|
-|ATmega328P|eeprom|20|0x41|0x00 0x00|
+|ATmega328|eeprom|5|0x41|0x00 0x00|
+|ATmega328PB|eeprom|5|0x41|0x00 0x00|
+|ATmega328P|eeprom|5|0x41|0x00 0x00|
 |ATmega3290A|eeprom|10|0x41|0x00 0x00|
 |ATmega3290|eeprom|10|0x41|0x00 0x00|
 |ATmega3290PA|eeprom|10|0x41|0x00 0x00|
@@ -102,19 +101,19 @@
 |ATmega329|eeprom|10|0x41|0x00 0x00|
 |ATmega329PA|eeprom|10|0x41|0x00 0x00|
 |ATmega329P|eeprom|10|0x41|0x00 0x00|
-|ATmega32A|eeprom|20|0x04|0xFF 0xFF|
-|ATmega32C1|eeprom|10|0x41|0x00 0x00|
-|ATmega32|eeprom|20|0x04|0xFF 0xFF|
+|ATmega32A|eeprom|10|0x04|0xFF 0xFF|
+|ATmega32C1|eeprom|5|0x41|0x00 0x00|
+|ATmega32|eeprom|10|0x04|0xFF 0xFF|
 |ATmega32HVB|eeprom|10|0x41|0x00 0x00|
 |ATmega32HVBrevB|eeprom|10|0x41|0x00 0x00|
-|ATmega32M1|eeprom|10|0x41|0x00 0x00|
+|ATmega32M1|eeprom|5|0x41|0x00 0x00|
 |ATmega32U2|eeprom|20|0x41|0x00 0x00|
 |ATmega32U4|eeprom|20|0x41|0x00 0x00|
-|ATmega48A|eeprom|20|0x41|0x00 0x00|
-|ATmega48|eeprom|20|0x41|0x00 0x00|
-|ATmega48PA|eeprom|20|0x41|0x00 0x00|
-|ATmega48PB|eeprom|20|0x41|0x00 0x00|
-|ATmega48P|eeprom|20|0x41|0x00 0x00|
+|ATmega48A|eeprom|5|0x41|0x00 0x00|
+|ATmega48|eeprom|5|0x41|0x00 0x00|
+|ATmega48PA|eeprom|5|0x41|0x00 0x00|
+|ATmega48PB|eeprom|5|0x41|0x00 0x00|
+|ATmega48P|eeprom|5|0x41|0x00 0x00|
 |ATmega640|eeprom|10|0x41|0x00 0x00|
 |ATmega644A|eeprom|10|0x41|0x00 0x00|
 |ATmega644|eeprom|10|0x41|0x00 0x00|
@@ -134,51 +133,50 @@
 |ATmega649|eeprom|10|0x41|0x00 0x00|
 |ATmega649P|eeprom|10|0x41|0x00 0x00|
 |ATmega64A|eeprom|20|0x04|0xFF 0xFF|
-|ATmega64C1|eeprom|10|0x41|0x00 0x00|
+|ATmega64C1|eeprom|5|0x41|0x00 0x00|
 |ATmega64|eeprom|20|0x04|0xFF 0xFF|
-|ATmega64HVE2|eeprom|20|0x41|0x00 0x00|
-|ATmega64M1|eeprom|10|0x41|0x00 0x00|
+|ATmega64HVE2|eeprom|20|0x04|0xFF 0xFF|
+|ATmega64M1|eeprom|5|0x41|0x00 0x00|
 |ATmega64RFR2|eeprom|50|0x41|0x00 0x00|
-|ATmega8515|eeprom|20|0x04|0xFF 0xFF|
-|ATmega8535|eeprom|20|0x04|0xFF 0xFF|
-|ATmega88A|eeprom|20|0x41|0x00 0x00|
-|ATmega88|eeprom|20|0x41|0x00 0x00|
-|ATmega88PA|eeprom|20|0x41|0x00 0x00|
-|ATmega88PB|eeprom|20|0x41|0x00 0x00|
-|ATmega88P|eeprom|20|0x41|0x00 0x00|
-|ATmega8A|eeprom|20|0x04|0xFF 0xFF|
-|ATmega8|eeprom|20|0x04|0xFF 0xFF|
-|ATmega8HVA|eeprom|20|0x41|0x00 0x00|
+|ATmega8515|eeprom|10|0x04|0xFF 0xFF|
+|ATmega8535|eeprom|10|0x04|0xFF 0xFF|
+|ATmega88A|eeprom|5|0x41|0x00 0x00|
+|ATmega88|eeprom|5|0x41|0x00 0x00|
+|ATmega88PA|eeprom|5|0x41|0x00 0x00|
+|ATmega88PB|eeprom|5|0x41|0x00 0x00|
+|ATmega88P|eeprom|5|0x41|0x00 0x00|
+|ATmega8A|eeprom|10|0x04|0xFF 0xFF|
+|ATmega8|eeprom|10|0x04|0xFF 0xFF|
 |ATmega8U2|eeprom|20|0x41|0x00 0x00|
-|ATtiny12|eeprom|20|0x04|0xFF 0xFF|
+|ATtiny12|eeprom|8|0x02|0xFF 0xFF|
 |ATtiny13A|eeprom|5|0x41|0x00 0x00|
 |ATtiny13|eeprom|5|0x41|0x00 0x00|
-|ATtiny15|eeprom|20|0x04|0xFF 0xFF|
-|ATtiny1634|eeprom|20|0x41|0x00 0x00|
+|ATtiny15|eeprom|10|0x04|0xFF 0xFF|
+|ATtiny1634|eeprom|5|0x41|0x00 0x00|
 |ATtiny167|eeprom|10|0x41|0x00 0x00|
 |ATtiny2313A|eeprom|6|0x41|0x00 0x00|
 |ATtiny2313|eeprom|6|0x41|0x00 0x00|
-|ATtiny24A|eeprom|10|0x41|0x00 0x00|
-|ATtiny24|eeprom|10|0x41|0x00 0x00|
+|ATtiny24A|eeprom|5|0x41|0x00 0x00|
+|ATtiny24|eeprom|5|0x41|0x00 0x00|
 |ATtiny25|eeprom|5|0x41|0x00 0x00|
 |ATtiny261A|eeprom|10|0x41|0x00 0x00|
 |ATtiny261|eeprom|10|0x41|0x00 0x00|
-|ATtiny26|eeprom|20|0x04|0xFF 0xFF|
+|ATtiny26|eeprom|10|0x04|0xFF 0xFF|
 |ATtiny4313|eeprom|6|0x41|0x00 0x00|
 |ATtiny43U|eeprom|10|0x41|0x00 0x00|
-|ATtiny441|eeprom|10|0x41|0x00 0x00|
-|ATtiny44A|eeprom|10|0x41|0x00 0x00|
-|ATtiny44|eeprom|10|0x41|0x00 0x00|
+|ATtiny441|eeprom|5|0x41|0x00 0x00|
+|ATtiny44A|eeprom|5|0x41|0x00 0x00|
+|ATtiny44|eeprom|5|0x41|0x00 0x00|
 |ATtiny45|eeprom|5|0x41|0x00 0x00|
 |ATtiny461A|eeprom|10|0x41|0x00 0x00|
 |ATtiny461|eeprom|10|0x41|0x00 0x00|
-|ATtiny48|eeprom|20|0x41|0x00 0x00|
-|ATtiny828|eeprom|20|0x41|0x00 0x00|
-|ATtiny841|eeprom|10|0x41|0x00 0x00|
-|ATtiny84A|eeprom|10|0x41|0x00 0x00|
-|ATtiny84|eeprom|10|0x41|0x00 0x00|
+|ATtiny48|eeprom|5|0x41|0x00 0x00|
+|ATtiny828|eeprom|5|0x41|0x00 0x00|
+|ATtiny841|eeprom|5|0x41|0x00 0x00|
+|ATtiny84A|eeprom|5|0x41|0x00 0x00|
+|ATtiny84|eeprom|5|0x41|0x00 0x00|
 |ATtiny85|eeprom|5|0x41|0x00 0x00|
 |ATtiny861A|eeprom|10|0x41|0x00 0x00|
 |ATtiny861|eeprom|10|0x41|0x00 0x00|
 |ATtiny87|eeprom|10|0x41|0x00 0x00|
-|ATtiny88|eeprom|20|0x41|0x00 0x00|
+|ATtiny88|eeprom|5|0x41|0x00 0x00|

So what should we do about the STK600 parameters here?

@mcuee
Copy link
Collaborator

mcuee commented Jan 10, 2023

@stefanrueger

I think STK600 is not well supported as it is not popular (the adapters are just too expensive).

@MCUdude has the STK600 but I am not so sure he has the adapter for some of the parts mentioned here.

@mcuee
Copy link
Collaborator

mcuee commented Jan 10, 2023

@stefanrueger

I think ATmega64HVE2 is a dead part so we may not really care for it. It does not exist any more from Microchip.com.

Datasheet is only available from 3rd party web site using Google search.
https://media.digikey.com/pdf/Data%20Sheets/Atmel%20PDFs/ATMEGA32_64HVE2.pdf

@mcuee
Copy link
Collaborator

mcuee commented Jan 10, 2023

@stefanrueger

As for ATTiny12, is it possible that STK500 only supports High Voltage Serial programming (RDY/BSY polling) and STK600 only supports Low Voltage Serial Programming?

Datasheet:
https://media.digikey.com/pdf/Data%20Sheets/Atmel%20PDFs/ATtiny%2011_12%20Complete.pdf

@stefanrueger
Copy link
Collaborator Author

stefanrueger commented Jan 10, 2023

OK, will merge soon with STK500 ISP programming values unless there are dissenting voices.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants