Skip to content

Does not work reliably on MacOSX/Mx processors #25

@jhusak

Description

@jhusak

On Macs M1/Mx during flashing with avrdude hangs at random positions if compiled with -DCONFIG_USE__EXCESSIVE_ASSEMBLER (on MacOs Intel with avrdude works perfectly).
Compiled to pure C code hangs very occasionally (once per several flashings)

log:

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

         System wide configuration file is /opt/homebrew/etc/avrdude.conf
         User configuration file is /Users/qba/.avrduderc
         User configuration file does not exist or is not a regular file, skipping

         Using Port                    : usb
         Using Programmer              : usbasp
         Setting bit clk period        : 250.0
avrdude: input file main.hex auto detected as Intel Hex
         AVR Part                      : ATmega168PB
         Chip Erase delay              : 10500 us
         PAGEL                         : PD7
         BS2                           : PC2
         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                 65    20     4    0 no        512    4      0  3600  3600 0x00 0x00
           flash                  65    10   128    0 yes     16384  128    128  4500  4500 0x00 0x00
           lfuse                   0     0     0    0 no          1    1      0  4500  4500 0x00 0x00
           hfuse                   0     0     0    0 no          1    1      0  4500  4500 0x00 0x00
           efuse                   0     0     0    0 no          1    1      0  4500  4500 0x00 0x00
           lock                    0     0     0    0 no          1    1      0  4500  4500 0x00 0x00
           signature               0     0     0    0 no          3    1      0     0     0 0x00 0x00
           calibration             0     0     0    0 no          1    1      0     0     0 0x00 0x00

         Programmer Type : usbasp
         Description     : USBasp ISP and TPI programmer
avrdude: set SCK frequency to 4000 Hz
avrdude: AVR device initialized and ready to accept instructions
avrdude: device signature = 0x1e9415 (probably m168pb)
avrdude: Note: flash memory has been specified, an erase cycle will be performed.
         To disable this feature, specify the -D option.
avrdude: erasing chip
avrdude: set SCK frequency to 4000 Hz

avrdude: processing -U flash:w:main.hex:i
avrdude: reading input file main.hex for flash
         with 8567 bytes in 2 sections within [0, 0x37ff]
         using 68 pages and 137 pad bytes
avrdude: writing 8567 bytes flash ...
Writing | ############-------------------------------------- | 23% 0.85 s
avrdude usbasp_transmit() OS error: Input/output error
avrdude usbasp_spi_paged_write() error: wrong count at writing ffffffff

^Cmake: *** [upload] Interrupt: 2

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions