Skip to content

AVRDUDE flashing eeprom with error using "Arduino as ISP" for ATMEGA128  #1337

@Topper69

Description

@Topper69

Hi,

When i try to burn a complete eeprom dump with AVRDUDE 7.1 (ARM64) on my rasp4 64b os, on the verification it show some errors (corrupt data) which is confirmed when i dump back the eeprom.
I tried the debian version

When i do the same on WIN10, it's complete without any error. 100% working. (same board, same programmer, same dump).

uC : ATMEGA128
programmer : arduino uno with ISP sketch loaded.

AVRDUDE on ARM64 (with error) log file:

pi@Rasp4:~/Documents/avrdude $ ./avrdude -p m128 -P /dev/ttyACM0 -c avrisp -b 19200 -U eeprom:w:/home/pi/Documents/avrdude/firmwarem128ok.eep:i -v

avrdude: Version 7.1
Copyright the AVRDUDE authors;
see https://github.com/avrdudes/avrdude/blob/main/AUTHORS

     System wide configuration file is /home/pi/Documents/avrdude/avrdude.conf
     User configuration file is /home/pi/.avrduderc
     User configuration file does not exist or is not a regular file, skipping

     Using Port                    : /dev/ttyACM0
     Using Programmer              : avrisp
     Overriding Baud Rate          : 19200
     AVR Part                      : ATmega128
     Chip Erase delay              : 9000 us
     PAGEL                         : PD7
     BS2                           : PA0
     RESET disposition             : possible i/o
     RETRY pulse                   : SCK
     Serial program mode           : yes
     Parallel program mode         : yes
     Timeout                       : 200
     StabDelay                     : 100
     CmdexeDelay                   : 25
     SyncLoops                     : 32
     PollIndex                     : 3
     PollValue                     : 0x53
     Memory Detail                 :

                                       Block Poll               Page                       Polled
       Memory Type Alias    Mode Delay Size  Indx Paged  Size   Size #Pages MinW  MaxW   ReadBack
       ----------- -------- ---- ----- ----- ---- ------ ------ ---- ------ ----- ----- ---------
       eeprom                  4    20    64    0 no       4096    8      0  9000  9000 0xff 0xff
       flash                  33    10   128    0 yes    131072  256    512  4500  4500 0xff 0x00
       lfuse                   0     0     0    0 no          1    1      0  9000  9000 0x00 0x00
       hfuse                   0     0     0    0 no          1    1      0  9000  9000 0x00 0x00
       efuse                   0     0     0    0 no          1    1      0  9000  9000 0x00 0x00
       lock                    0     0     0    0 no          1    1      0  9000  9000 0x00 0x00
       signature               0     0     0    0 no          3    1      0     0     0 0x00 0x00
       calibration             0     0     0    0 no          4    1      0     0     0 0x00 0x00

     Programmer Type : STK500
     Description     : Atmel AVR ISP
     Hardware Version: 2
     Firmware Version: 1.18
     Topcard         : Unknown
     Vtarget         : 0.0 V
     Varef           : 0.0 V
     Oscillator      : Off
     SCK period      : 0.1 us

avrdude: AVR device initialized and ready to accept instructions
avrdude: device signature = 0x1e9702 (probably m128)
avrdude: reading input file /home/pi/Documents/avrdude/firmwarem128ok.eep for eeprom
with 4096 bytes in 1 section within [0, 0xfff]
using 512 pages and 0 pad bytes
avrdude: writing 4096 bytes eeprom ...

Writing | ################################################## | 100% 192.94 s

avrdude: 4096 bytes of eeprom written
avrdude: verifying eeprom memory against /home/pi/Documents/avrdude/firmwarem128ok.eep

Reading | ################################################## | 100% 6.49 s

avrdude avr_verify() warning: verification mismatch
device 0x00 != input 0xff at addr 0x0339 (error)
device 0x72 != input 0xff at addr 0x033a (error)
device 0x73 != input 0xff at addr 0x033b (error)
device 0x74 != input 0xff at addr 0x033c (error)
device 0x75 != input 0xff at addr 0x033d (error)
device 0x76 != input 0xff at addr 0x033e (error)
device 0x77 != input 0xff at addr 0x033f (error)
device 0x80 != input 0xff at addr 0x0340 (error)
device 0x81 != input 0xff at addr 0x0341 (error)
device 0x82 != input 0xff at addr 0x0342 (error)
suppressing further verification errors
avrdude do_op() error: verification mismatch

avrdude done. Thank you.

On WIN10: (working)

./avrdude -p m128 -P COM21 -c arduino -b 19200 -U eeprom:w:firmwarem128ok.eep:i -v

avrdude: Version 7.1
Copyright the AVRDUDE authors;
see https://github.com/avrdudes/avrdude/blob/main/AUTHORS

     System wide configuration file is avrdude.conf

     Using Port                    : COM21
     Using Programmer              : arduino
     Overriding Baud Rate          : 19200
     AVR Part                      : ATmega128
     Chip Erase delay              : 9000 us
     PAGEL                         : PD7
     BS2                           : PA0
     RESET disposition             : possible i/o
     RETRY pulse                   : SCK
     Serial program mode           : yes
     Parallel program mode         : yes
     Timeout                       : 200
     StabDelay                     : 100
     CmdexeDelay                   : 25
     SyncLoops                     : 32
     PollIndex                     : 3
     PollValue                     : 0x53
     Memory Detail                 :

                                       Block Poll               Page                       Polled
       Memory Type Alias    Mode Delay Size  Indx Paged  Size   Size #Pages MinW  MaxW   ReadBack
       ----------- -------- ---- ----- ----- ---- ------ ------ ---- ------ ----- ----- ---------
       eeprom                  4    12    64    0 no       4096    8      0  9000  9000 0xff 0xff
       flash                  33     6   128    0 yes    131072  256    512  4500  4500 0xff 0xff
       lfuse                   0     0     0    0 no          1    1      0  9000  9000 0x00 0x00
       hfuse                   0     0     0    0 no          1    1      0  9000  9000 0x00 0x00
       efuse                   0     0     0    0 no          1    1      0  9000  9000 0x00 0x00
       lock                    0     0     0    0 no          1    1      0  9000  9000 0x00 0x00
       signature               0     0     0    0 no          3    1      0     0     0 0x00 0x00
       calibration             0     0     0    0 no          4    1      0     0     0 0x00 0x00

     Programmer Type : Arduino
     Description     : Arduino for bootloader using STK500 v1 protocol
     Hardware Version: 2
     Firmware Version: 1.18
     Topcard         : Unknown

avrdude: AVR device initialized and ready to accept instructions
avrdude: device signature = 0x1e9702 (probably m128)
avrdude: reading input file firmwarem128ok.eep for eeprom
with 4096 bytes in 1 section within [0, 0xfff]
using 512 pages and 0 pad bytes
avrdude: writing 4096 bytes eeprom ...

Writing | ################################################## | 100% 193.02 s

avrdude: 4096 bytes of eeprom written
avrdude: verifying eeprom memory against firmwarem128ok.eep

Reading | ################################################## | 100% 7.77 s

avrdude: 4096 bytes of eeprom verified

avrdude done. Thank you.

I have only issue with EEPROM, with FLASH it's fine (no corrupt data).

Best regards

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't working

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions