Node reboot issue
-
@maghac I was still having issues with MYSBootloader. This was using the version bundled with MYSController - in a folder called "MYSController_1_0_0beta".
I found one on github here https://github.com/mysensors/MySensorsBootloaderRF24
It seems to be a newer version.
I downloaded that one and setup the 16MHz from their boards.txt file and so far this seems to work. -
@maghac I was still having issues with MYSBootloader. This was using the version bundled with MYSController - in a folder called "MYSController_1_0_0beta".
I found one on github here https://github.com/mysensors/MySensorsBootloaderRF24
It seems to be a newer version.
I downloaded that one and setup the 16MHz from their boards.txt file and so far this seems to work.@slt1 Thanks for the tip - I grabbed the files from the development branch - was that the one you were using? I found three versions of the .hex file - 1Mhz, 8Mhz and 16 Mhz.
Now I am unable to upload a sketch after flashing the MYSBootloader. It only works if I go back to the normal Pro Mino bootloader.
-
@maghac
The previous version (bundled with MYSController) I was using would not allow me to upload sketches using FTDI cable after flashing the MYSBootloader. It also had the node reboot issue.The latest dev branch from github link does allow me to now and the node reboot works too !
I copied all 3 hex files into a MySensors folder (C:\Program Files (x86)\Arduino\hardware\arduino\avr\bootloaders\MySensors)
They only had one board in the boards.txt - I only have 5V 16MHz Pro Mini's so changed link to hex file in the sample boards.txt they gave and added that to bottom of boards.txt file in Arduino install dir. boards.txt content I copied is ..
MYSBootloader
proMYSBL.name=ATmega328 16Mhz MYSBootloader
proMYSBL.upload.tool=avrdude
proMYSBL.upload.protocol=arduino
proMYSBL.upload.maximum_size=30720
proMYSBL.upload.maximum_data_size=2048
proMYSBL.upload.speed=115200proMYSBL.bootloader.tool=avrdude
proMYSBL.bootloader.low_fuses=0xF7
proMYSBL.bootloader.high_fuses=0xDA
proMYSBL.bootloader.extended_fuses=0x06
proMYSBL.bootloader.unlock_bits=0x3F
proMYSBL.bootloader.lock_bits=0x0F
proMYSBL.bootloader.file=MySensors/MYSBootloader_16MHz.hexproMYSBL.build.mcu=atmega328p
proMYSBL.build.f_cpu=16000000L
proMYSBL.build.board=AVR_UNO
proMYSBL.build.core=arduino
proMYSBL.build.variant=standard -
@slt1 Thanks for the tip - I grabbed the files from the development branch - was that the one you were using? I found three versions of the .hex file - 1Mhz, 8Mhz and 16 Mhz.
Now I am unable to upload a sketch after flashing the MYSBootloader. It only works if I go back to the normal Pro Mino bootloader.
@maghac I tested a bit now again and see there is still an issue when uploading sketch using USB Asp cable. I am getting this error :
avrdude: Yikes! Invalid device signature.
Double check connections and try again, or use -F to override
this check.However, that is non-critical for me as I only want to flash the bootloader using USB Asp cable and then I use the FTDI Cable for sketch uploads
-
Here are my custome entries from boards.txt:
## Arduino Pro or Pro Mini (3V3 & 5V, 16 MHz) w/ ATmega328 MYSBootloader ## ------------------------------------------------- proMYSBL.name=ATmega328 16Mhz MYSBootloader 1.3 beta proMYSBL.upload.tool=avrdude proMYSBL.upload.protocol=arduino proMYSBL.upload.maximum_size=30720 proMYSBL.upload.maximum_data_size=2048 proMYSBL.upload.speed=115200 proMYSBL.bootloader.tool=avrdude proMYSBL.bootloader.low_fuses=0xF7 proMYSBL.bootloader.high_fuses=0xDA proMYSBL.bootloader.extended_fuses=0xfe proMYSBL.bootloader.unlock_bits=0x3F proMYSBL.bootloader.lock_bits=0x0F proMYSBL.bootloader.file=MySensors/MYSBootloader.hex proMYSBL.build.mcu=atmega328p proMYSBL.build.f_cpu=16000000L proMYSBL.build.board=AVR_UNO proMYSBL.build.core=arduino proMYSBL.build.variant=standard ## Arduino Pro or Pro Mini (3V3 & 5V, 16 MHz) w/ ATmega328 MYSBootloader ## ------------------------------------------------- proMYSBL16.name=ATmega328 16Mhz MYSBootloader 1.3 beta DEV proMYSBL16.upload.tool=avrdude proMYSBL16.upload.protocol=arduino proMYSBL16.upload.maximum_size=30720 proMYSBL16.upload.maximum_data_size=2048 proMYSBL16.upload.speed=57600 proMYSBL16.bootloader.tool=avrdude proMYSBL16.bootloader.low_fuses=0xF7 proMYSBL16.bootloader.high_fuses=0xDA proMYSBL16.bootloader.extended_fuses=0xFD proMYSBL16.bootloader.unlock_bits=0x3F proMYSBL16.bootloader.lock_bits=0x0F proMYSBL16.bootloader.file=MySensors/MYSBootloader_16MHz.hex proMYSBL16.build.mcu=atmega328p proMYSBL16.build.f_cpu=16000000L proMYSBL16.build.board=AVR_UNO proMYSBL16.build.core=arduino proMYSBL16.build.variant=standard ## Arduino Pro or Pro Mini (3V3 & 5V, 8 MHz) w/ ATmega328 MYSBootloader ## ------------------------------------------------- proMYSBL8.name=ATmega328 8Mhz MYSBootloader 1.3 beta DEV proMYSBL8.upload.tool=avrdude proMYSBL8.upload.protocol=arduino proMYSBL8.upload.maximum_size=30720 proMYSBL8.upload.maximum_data_size=2048 proMYSBL8.upload.speed=57600 proMYSBL8.bootloader.tool=avrdude proMYSBL8.bootloader.low_fuses=0xE2 proMYSBL8.bootloader.high_fuses=0xD2 proMYSBL8.bootloader.extended_fuses=0xFE proMYSBL8.bootloader.unlock_bits=0x3F proMYSBL8.bootloader.lock_bits=0x3F proMYSBL8.bootloader.file=MySensors/MYSBootloader_8MHz.hex proMYSBL8.build.mcu=atmega328p proMYSBL8.build.f_cpu=8000000L proMYSBL8.build.board=AVR_UNO proMYSBL8.build.core=arduino proMYSBL8.build.variant=standardMYSBootloader.hex is from the master branch of MYSBootloader 1.3.0-beta.3, the other two are from the development branch.
Doesn't matter which one I use, I can never get my 5V 16MHz boards to accept a new sketch via FTDI cable. I have to go back to the standard bootloader.
Just realized I should probably post this in the Wireless Programming thread instead.
-
Here are my custome entries from boards.txt:
## Arduino Pro or Pro Mini (3V3 & 5V, 16 MHz) w/ ATmega328 MYSBootloader ## ------------------------------------------------- proMYSBL.name=ATmega328 16Mhz MYSBootloader 1.3 beta proMYSBL.upload.tool=avrdude proMYSBL.upload.protocol=arduino proMYSBL.upload.maximum_size=30720 proMYSBL.upload.maximum_data_size=2048 proMYSBL.upload.speed=115200 proMYSBL.bootloader.tool=avrdude proMYSBL.bootloader.low_fuses=0xF7 proMYSBL.bootloader.high_fuses=0xDA proMYSBL.bootloader.extended_fuses=0xfe proMYSBL.bootloader.unlock_bits=0x3F proMYSBL.bootloader.lock_bits=0x0F proMYSBL.bootloader.file=MySensors/MYSBootloader.hex proMYSBL.build.mcu=atmega328p proMYSBL.build.f_cpu=16000000L proMYSBL.build.board=AVR_UNO proMYSBL.build.core=arduino proMYSBL.build.variant=standard ## Arduino Pro or Pro Mini (3V3 & 5V, 16 MHz) w/ ATmega328 MYSBootloader ## ------------------------------------------------- proMYSBL16.name=ATmega328 16Mhz MYSBootloader 1.3 beta DEV proMYSBL16.upload.tool=avrdude proMYSBL16.upload.protocol=arduino proMYSBL16.upload.maximum_size=30720 proMYSBL16.upload.maximum_data_size=2048 proMYSBL16.upload.speed=57600 proMYSBL16.bootloader.tool=avrdude proMYSBL16.bootloader.low_fuses=0xF7 proMYSBL16.bootloader.high_fuses=0xDA proMYSBL16.bootloader.extended_fuses=0xFD proMYSBL16.bootloader.unlock_bits=0x3F proMYSBL16.bootloader.lock_bits=0x0F proMYSBL16.bootloader.file=MySensors/MYSBootloader_16MHz.hex proMYSBL16.build.mcu=atmega328p proMYSBL16.build.f_cpu=16000000L proMYSBL16.build.board=AVR_UNO proMYSBL16.build.core=arduino proMYSBL16.build.variant=standard ## Arduino Pro or Pro Mini (3V3 & 5V, 8 MHz) w/ ATmega328 MYSBootloader ## ------------------------------------------------- proMYSBL8.name=ATmega328 8Mhz MYSBootloader 1.3 beta DEV proMYSBL8.upload.tool=avrdude proMYSBL8.upload.protocol=arduino proMYSBL8.upload.maximum_size=30720 proMYSBL8.upload.maximum_data_size=2048 proMYSBL8.upload.speed=57600 proMYSBL8.bootloader.tool=avrdude proMYSBL8.bootloader.low_fuses=0xE2 proMYSBL8.bootloader.high_fuses=0xD2 proMYSBL8.bootloader.extended_fuses=0xFE proMYSBL8.bootloader.unlock_bits=0x3F proMYSBL8.bootloader.lock_bits=0x3F proMYSBL8.bootloader.file=MySensors/MYSBootloader_8MHz.hex proMYSBL8.build.mcu=atmega328p proMYSBL8.build.f_cpu=8000000L proMYSBL8.build.board=AVR_UNO proMYSBL8.build.core=arduino proMYSBL8.build.variant=standardMYSBootloader.hex is from the master branch of MYSBootloader 1.3.0-beta.3, the other two are from the development branch.
Doesn't matter which one I use, I can never get my 5V 16MHz boards to accept a new sketch via FTDI cable. I have to go back to the standard bootloader.
Just realized I should probably post this in the Wireless Programming thread instead.
@maghac I copied and tried your settings for
proMYSBL16.name=ATmega328 16Mhz MYSBootloader 1.3 beta DEV
and I get errors like this uploading via FTDI cable ...
avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_getsync() attempt 1 of 10: not in sync: resp=0x2c
etcIf you want to try my settings then change the 16Mhz settings to this -
#ATmega328 16Mhz MYSBootloader 1.3 beta DEV proMYSBL16.name=ATmega328 16Mhz MYSBootloader 1.3 beta DEV proMYSBL16.upload.tool=avrdude proMYSBL16.upload.protocol=arduino proMYSBL16.upload.maximum_size=30720 proMYSBL16.upload.maximum_data_size=2048 proMYSBL16.upload.speed=115200 proMYSBL16.bootloader.tool=avrdude proMYSBL16.bootloader.low_fuses=0xF7 proMYSBL16.bootloader.high_fuses=0xDA proMYSBL16.bootloader.extended_fuses=0x06 proMYSBL16.bootloader.unlock_bits=0x3F proMYSBL16.bootloader.lock_bits=0x0F proMYSBL16.bootloader.file=MySensors/MYSBootloader_16MHz.hex proMYSBL16.build.mcu=atmega328p proMYSBL16.build.f_cpu=16000000L proMYSBL16.build.board=AVR_UNO proMYSBL16.build.core=arduino proMYSBL16.build.variant=standardAnd rem Arduino IDE needs to be closed and restarted after changes
-
@maghac I copied and tried your settings for
proMYSBL16.name=ATmega328 16Mhz MYSBootloader 1.3 beta DEV
and I get errors like this uploading via FTDI cable ...
avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_getsync() attempt 1 of 10: not in sync: resp=0x2c
etcIf you want to try my settings then change the 16Mhz settings to this -
#ATmega328 16Mhz MYSBootloader 1.3 beta DEV proMYSBL16.name=ATmega328 16Mhz MYSBootloader 1.3 beta DEV proMYSBL16.upload.tool=avrdude proMYSBL16.upload.protocol=arduino proMYSBL16.upload.maximum_size=30720 proMYSBL16.upload.maximum_data_size=2048 proMYSBL16.upload.speed=115200 proMYSBL16.bootloader.tool=avrdude proMYSBL16.bootloader.low_fuses=0xF7 proMYSBL16.bootloader.high_fuses=0xDA proMYSBL16.bootloader.extended_fuses=0x06 proMYSBL16.bootloader.unlock_bits=0x3F proMYSBL16.bootloader.lock_bits=0x0F proMYSBL16.bootloader.file=MySensors/MYSBootloader_16MHz.hex proMYSBL16.build.mcu=atmega328p proMYSBL16.build.f_cpu=16000000L proMYSBL16.build.board=AVR_UNO proMYSBL16.build.core=arduino proMYSBL16.build.variant=standardAnd rem Arduino IDE needs to be closed and restarted after changes
@slt1 Thanks, I'll give it a try next time. Now the node is actually mounted in a place where it's difficult to physically reach it (which is why I wanted to enable OTA updates of course).
The only difference between your entry and mine is the extended_fuses line, isn't it?
Whenever I use your settings (extended_fuses=0x06), avrdude gives me a warning and instructs me to change the value.
-
@slt1 Thanks, I'll give it a try next time. Now the node is actually mounted in a place where it's difficult to physically reach it (which is why I wanted to enable OTA updates of course).
The only difference between your entry and mine is the extended_fuses line, isn't it?
Whenever I use your settings (extended_fuses=0x06), avrdude gives me a warning and instructs me to change the value.
-
So, now I have the same problem with a 5V pro clone.
With normal bootloader:
- the board gets stuck in a loop with flashing LED when i try to reboot it.
With MYSBootloader (1.3.0-beta.4 or 1.3.0-beta.3):
- unable to upload a new sketch using the FTDI cable
- node doesn't seem to get recognized properly by the GW or the controller. I see it's contiously sending "mysensors-out/10/255/4/0/0 FFFFFFFFFFFFFE400102" messages on MQTT, which I think is when it's checking for a new firmware, but nothing on the serial monitor. This makes it impossible to upload a new sketch OTA.
Any ideas on how to troubleshoot?