mysbootloader not working with nano? [solved]
-
Hello,
did anybody successfully get mysbootloader for fota get to work on a nano? i burned the bootloader via an uno (arduino as isp)... everything seemed to work fine...
but nothing changes actually - the log on myscontroller says nothing about a new bootloader whenever i try to click the node > settings > Board with mysbootloader i see the functions. when i click anything like "reassign ID" it just reboots with the old ID - when i try to load a new sketch via "assign firmware" it is the same. it just reboots and nothing changed.
i tried different gateways (rpi and nodemcu), i tried different mysbootloaders with different channels from the github repository, ... it seems to be the same everytime...
did anybody run into the same issues or has a hint - i tried now for 2 days without progress...
-
ok... i once again report back to my own entry since i became a little smarter.
i found out 2 things:
- in the boards.txt i have to set the right fuse-settings. for the 16mhz nano i used:
MYSBL.menu.frequency.MYSBL16.bootloader.low_fuses=0xFF MYSBL.menu.frequency.MYSBL16.bootloader.high_fuses=0xDA MYSBL.menu.frequency.MYSBL16.bootloader.extended_fuses=0xFD
- i used a screw-terminal board where the ce and cs pins are switched. in the usual sketch i define
// Set custom pins for Nano-Radio-Board #define MY_RF24_CE_PIN 10 #define MY_RF24_CS_PIN 9
i am sure the mysbootloader needs to know that too... so am i right that i have to compile a new bootloader where i have to put:
#define RF24_CE_PIN 10
#define RF24_CS_PIN 9
?i am really having a hard time compiling one since i have zero experience with that and eclipse doesn't seem of much help here. so if anybody can confirm this before i go through this fruitless struggle again i would be very glad...
-
@zen85 correct, if the radio pins are different you have to recompile the bootloader.
-
@zen85 maybe https://github.com/mysensors/MySensorsBootloaderRF24/pull/36/files?file-filters[]=.c&file-filters[]=.d&file-filters[]=.elf&file-filters[]=.h&file-filters[]=.o&file-filters[]=.original&file-filters[]=.sh&file-filters[]=No+extension&file-filters[]=dotfile can be useful
-
ok... some success but not really. The bootloader does not seem to work using my custom-boards where the ce and cs pin are switched? where does one have to put something like:
#define RF24_CE_PIN 10
#define RF24_CS_PIN 9
?should it be in the mysbootloader.c? because this did not work... or somewhere else?
the line "#define SPI_PINS_CE9_CSN10" in the mysbootloader.c also worries me? but just switching the numbers does not work either and throws an error...
-
-
@tekka
EDITED ANSWER*: it worked!- it did not work because of a typo... sorry for that....