xodio / xod

XOD IDE
https://xod.io
GNU Affero General Public License v3.0
888 stars 119 forks source link

XOD does not load the program after the first load on the Iskra NEO board #2115

Open kekcheburec opened 2 years ago

kekcheburec commented 2 years ago

Environment

Steps to reproduce

  1. For example put a led node that just turns on the LED on pin D11 (but the problem applies to any program).
  2. Deploy -> Upload to Arduino... -> (select board and port) Upload

Any program from the Planeta XOD (Amperka) set is loaded without problems the first time, on subsequent loads the program is not loaded on the board. The board in the kit is Iskra NEO (chip as in Arduino Leonardo). When re-flashing the bootloader to the board, it is flashed once, and then does not let you load another program (like the first time).

If you press the reset button when booting, the board is flashed. You have to press the reset button every time.

If you use the Arduino IDE (there is information about versions 1.8.15 - 1.8.19, but I think the lower versions, also can do it), the program is loaded without problems and pressing the reset button on the board.

Expected behavior

It should boot like the first boot and use the Arduino IDE, without using the reset button.

Actual behavior

Output from the console on successful loading into the board ``` Uploading compiled code to the board... Performing 1200-bps touch reset on serial port COM5 Waiting for upload port... "C:\Users\olegs\xod\__packages__\packages\arduino\tools\avrdude\6.3.0-arduino17/bin/avrdude" "-CC:\Users\olegs\xod\__packages__\packages\arduino\tools\avrdude\6.3.0-arduino17/etc/avrdude.conf" -v -patmega32u4 -cavr109 "-PCOM4" -b57600 -D "-Uflash:w:C:\Users\olegs\AppData\Local\Temp\xod_temp_sketchbookSMuzlI\xod_1642006260910_sketch\build\arduino.avr.leonardo/xod_1642006260910_sketch.ino.hex:i" avrdude: Version 6.3-20190619 Copyright (c) 2000-2 005 Brian Dean, http://www.bdmicro.com/ Copyright (c) 2007-2014 Joerg Wunsch Sys tem wide configuration fil e is "C:\Users\olegs\xod\__packages__\packages\arduino\tools\avrdude\6.3.0-a rduino17/etc/avrdude.conf " Using Port : COM4 Using Programmer : avr109 Overriding Baud Rate : 57600 AVR Part : ATmega32U4 Chip Erase delay : 9000 us PAGEL : PD7 BS2 : PA0 RESET disposition : dedicated RETR Y pulse : SCK serial program mode : ye s parallel program mode : yes Timeout : 200 StabDelay : 100 CmdexeDelay : 25 S yncLoops : 32 ByteDelay : 0 PollIndex : 3 Poll Value : 0x53 Memory Detail : Block Poll Page Polled Memory Type Mode Dela y Size Indx Paged Size Size #Pages MinW MaxW ReadBack ----------- ---- ----- ----- ---- ------ ------ ---- ------ ----- ----- --------- eeprom 65 20 4 0 no 1024 4 0 9000 9000 0x00 0x00 flash 65 6 128 0 yes 32768 128 256 4 500 4500 0x00 0x00 lfuse 0 0 0 0 no 1 0 0 9000 9000 0x00 0x00 hfuse 0 0 0 0 no 1 0 0 9000 900 0 0x00 0x00 efuse 0 0 0 0 no 1 0 0 9000 9000 0x00 0x00 lock 0 0 0 0 no 1 0 0 90 00 9000 0x00 0x00 calibration 0 0 0 0 n o 1 0 0 0 0 0x00 0x00 signature 0 0 0 0 no 3 0 0 0 0 0x00 0x00 Programmer Type : butterfly Description : Atmel AppNote AVR109 Boot Loader Connect ing to programmer: . Found programmer: Id = "CATERIN"; type = S Software Version = 1.0; No Hardware Version given. Progr ammer supports auto addr increment. Programmer supports buffered mem ory access with buffersize=128 bytes. Programmer supports th e following devices: Device code: 0x44 avrdude: devcode selected: 0x44 avrdude: AVR device initialized and ready to accept instructi ons Reading | ############################### ################### | 100% 0.00s avrdude: Device signature = 0x1e9587 (probably m32u4) avrdude: reading input file "C:\Users\olegs\AppData\Lo cal\Temp\xod_temp_sketchbookSMuzlI\xod_164200626 0910_sketch\build\arduino.avr.leonardo/xod_1642006260910_sk etch.ino.hex" avrdude: writing flash (5436 bytes): Writing | # # # # # # ## # # # # # ## # # # # # ## # # # # # ## # # # # # ## # # # # # ## # # # # # ## | 100% 0.42s avrdude: 5436 bytes of flash written avrdude: verifying flash mem ory against C:\Users\olegs\AppData\Local\Temp\xod_temp_sketchbookSMuzlI\xod_164200626 0910_sketch\build\arduino.avr.leonardo/xo d_1642006260910_sketch.ino.hex: avrdude: load data flas h data from input file C:\Users\olegs\AppData\ Local\Temp\xod_temp_sketchbookSMuzlI\xod_164200 6260910_sketch\build\arduino.avr.leonardo/xod_ 1642006260910_sketch.ino.hex: avrdude: input file C:\Users\olegs\AppData\Local\Temp\xod_temp_sketchbookSMuzlI\xod_1642006260910_sketch\build\arduino.avr.leonar do/xod_1642006260910_sketch.ino.hex contains 5436 bytes avrdude: reading on-chip flash data: Reading | # # # # # # ## # # # # # ## # # # # # ## # # # # # ## # # # # # ## # # # # # ## # # # # # ## | 100% 0.05s avrdude: verifying ... avrdude: 5436 bytes of flash verified avrdude done. Thank you. === Done === ```
Output from the console when the board fails to boot ``` Uploading compiled code to the board... Performing 1200-bps touch reset on serial port COM5 Waiting for upload port... "C:\Users\olegs\xod\__packages__\packages\arduino\tools\avrdude\6.3.0-arduino17/bin/avrdude" "-CC:\Users\olegs\xod\__packages__\packages\arduino\tools\avrdude\6.3.0-arduino17/etc/avrdude.conf" -v -patmega32u4 -cavr109 "-PCOM5" -b57600 -D "-Uflash:w:C:\Users\olegs\AppData\Local\Temp\xod_temp_sketchbookSMuzlI\xod_1642006365525_sketch\build\arduino.avr.leonardo/xod_1642006365525_sketch.ino.hex:i" avrdude: Versio n 6.3-20 190619 Copyright (c) 200 0-2005 Bri an Dean, http://www.bdmicro.com/ Copyright (c) 2007 -201 4 Joerg Wunsch S y stem wide configuration fi le is "C:\Users\olegs \xod \__packages__\packages\ ard u ino\tools\avrdude\6.3.0 -ar d uino17/etc/avrdude.conf" Using Port : COM5 Using Pro grammer : avr109 Overrid ing Baud Rate : 57600 AVR Part : ATmega32U4 Chi p Erase delay : 9000 us PAGEL : PD7 BS2 : PA0 RESET disposition : dedicated RETRY pulse : SCK serial program mode : yes parallel program mode : yes Timeout : 200 StabDelay : 100 CmdexeDelay : 25 SyncLoops : 32 ByteDelay : 0 PollIndex : 3 PollV alue : 0x53 Me mory Detail : Block Poll Pa ge Polled Memory Type Mode Delay Size Indx Paged Size Size #Page s MinW MaxW ReadBack ----------- ---- ----- - ---- ---- ------ ------ ---- ------ ----- ----- -- ------- eeprom 65 20 4 0 no 1024 4 0 9000 9000 0x00 0x00 flash 65 6 128 0 yes 32 768 128 256 4500 4500 0x00 0x00 lf use 0 0 0 0 no 1 0 0 9000 9000 0x00 0x00 hfuse 0 0 0 0 no 1 0 0 9000 9000 0x00 0x00 efuse 0 0 0 0 no 1 0 0 9000 9000 0x00 0x00 lock 0 0 0 0 no 1 0 0 9000 9000 0x00 0 x00 calibration 0 0 0 0 no 1 0 0 0 0 0x00 0x00 signature 0 0 0 0 no 3 0 0 0 0 0x00 0x00 Programmer T ype : butterfly Description : Atmel AppNote AVR109 Boot Load er Connecting to programmer: . avrdude: butterfly_recv(): programmer is not responding ```

How to fix

It is possible that this is due to the different versions or passed arguments in avrdude used in XOD and Arduino IDE (1.8.1x) (Arduino IDE 2.0.0-beta.x untested).