💬 FOTA (Wireless Programming)
-
Since it's not a battery node, you can use pretty much anything you want. If you want to give it a shot, there is also a 3.3v pro mini with a Mega 2560 chip that should give you plenty of room and power for all the libraries you want.
-
Thanks for the info, I've got it working on boards which arn't already soldered to radios, however just cant burn a new bootrom to a board with a RF69 soldered across pins miso mosi and sck. Is this normal ?
-
@rfm69 does your rfm69 CS signal have a pullup? If not, you should add one, because pin can be floating (so it's bad practice to not have pullup on CS lines) and interfering during AVRSPI reprogramming
-
@RFM69
CS/SS of the SPI bus, for enabling/disabling device spi comm. it's your rfm69 NSS pin if you prefer.
I usually use 56k pullup resistor -
Hi there. For what I'm reading, the MYSBootloader allways uses the default channel 76. Is that correct? It would be a very important addition to this howto.
-
Hi there. For what I'm reading, the MYSBootloader allways uses the default channel 76. Is that correct? It would be a very important addition to this howto.
-
I recompiled MYSBootloader 1.3 with the RF Channel I use and it's now working. I can confirm that FOTA works great over MQTT gateway.
-
@guillermo-schimmel not always, but by default. To change the channel, the bootloader must be recompiled. I have added a note to the howto. Could you check if the information is sufficiently clear?
@mfalkvidd Thank you as usual.
I can confirm that is indeed working by recompiling to my channel.
I have however a couple of questions.
-
When you say "by default", do that means that there is a way of modify that default? If so, how?
-
This specific node that I'm testing with, have a fixed node id (I use OpenHAB). But with the recompiled bootloader it "knows" which firmware download. Where does it gets from? Is the bootloader accessing the main sketch? Or is the node id info fixed in eeprom.
-
If the node id info is in eeprom, could we also have the channel there? It would be so great not having to compile the bootloader.
Thanks a lot, as allways.
-
-
@mfalkvidd Thank you as usual.
I can confirm that is indeed working by recompiling to my channel.
I have however a couple of questions.
-
When you say "by default", do that means that there is a way of modify that default? If so, how?
-
This specific node that I'm testing with, have a fixed node id (I use OpenHAB). But with the recompiled bootloader it "knows" which firmware download. Where does it gets from? Is the bootloader accessing the main sketch? Or is the node id info fixed in eeprom.
-
If the node id info is in eeprom, could we also have the channel there? It would be so great not having to compile the bootloader.
Thanks a lot, as allways.
- Yes. Isn't that exactly what you did when you did this: "I can confirm that is indeed working by recompiling to my channel" ?
- I don't know. But I would also guess eeprom.
- The bootloader needs to fit into a very small size, so I am not sure if there is room to read the channel from eeprom.
Maybe @scalz can comment on 2 and 3.
-
-
- Yes. Isn't that exactly what you did when you did this: "I can confirm that is indeed working by recompiling to my channel" ?
- I don't know. But I would also guess eeprom.
- The bootloader needs to fit into a very small size, so I am not sure if there is room to read the channel from eeprom.
Maybe @scalz can comment on 2 and 3.
@mfalkvidd said in 💬 FOTA (Wireless Programming):
- Yes. Isn't that exactly what you did when you did this: "I can confirm that is indeed working by recompiling to my channel" ?
Definitely yes. And it worked. I meant a non-compiling way, like set some eeprom variable.
- I don't know. But I would also guess eeprom.
- The bootloader needs to fit into a very small size, so I am not sure if there is room to read the channel from eeprom.
Maybe @scalz can comment on 2 and 3.
Please @scalz should you have a little room, this would be a very nice feature to have.
Thank you both guys.
Regards
-
I guess the main hurdle would be that while MySensors stores the node id in eeprom today, the nrf channel is not stored in eeprom. Since bootloader and sketch use the same eeprom, there would have to be some sort of agreement on where to store the channel.
-
Hello, I have my MySensors gateway permanently attached to my openhab server (RPI3), but i want to do FOTA uploads from my desktop. How do I do this since MYSController needs to attatch to a gateway? Can i use an other gateway, both with the same address (ID0)? Thanks
-
@guillermo-schimmel not always, but by default. To change the channel, the bootloader must be recompiled. I have added a note to the howto. Could you check if the information is sufficiently clear?
@mfalkvidd Hello.
From what I read it is possible to somehow modify the channel for OTA updates, this is also said here.
https://www.mysensors.org/about/fotaBut I can not find other info on how to proceed to change the channel .....
Can you give me some other clarification or link to follow ??? -
@mfalkvidd Hello.
From what I read it is possible to somehow modify the channel for OTA updates, this is also said here.
https://www.mysensors.org/about/fotaBut I can not find other info on how to proceed to change the channel .....
Can you give me some other clarification or link to follow ???@sindrome73 You have to recompile the bootloader.
It's easier than it seems.
- Mirror this repo on some machine with devel tools (I use OpenSUSE)
https://github.com/mysensors/MySensorsBootloaderRF24
- Edit the file MYSBootloader.c, only the line:
#define RF24_CHANNEL (76) // RF channel for the sensor net, 0-127; default 76
- Run Make
Probably it's going to need all the set of avr devel tools. Install them according to your distribution instructions.
- You are going to get a .hex. That is the bootloader with the new channel. Install it according the standard instructions. I use AVRDUDESS.
I can confirm that I did this and it's working great.
-
@sindrome73 You have to recompile the bootloader.
It's easier than it seems.
- Mirror this repo on some machine with devel tools (I use OpenSUSE)
https://github.com/mysensors/MySensorsBootloaderRF24
- Edit the file MYSBootloader.c, only the line:
#define RF24_CHANNEL (76) // RF channel for the sensor net, 0-127; default 76
- Run Make
Probably it's going to need all the set of avr devel tools. Install them according to your distribution instructions.
- You are going to get a .hex. That is the bootloader with the new channel. Install it according the standard instructions. I use AVRDUDESS.
I can confirm that I did this and it's working great.
@guillermo-schimmel Thanks for the reply.
Very useful, but can you tell me more accurately what software to use to recompile after making the change ????
Maybe some links to the software to download ..... thanks again for the availability -
@guillermo-schimmel Thanks for the reply.
Very useful, but can you tell me more accurately what software to use to recompile after making the change ????
Maybe some links to the software to download ..... thanks again for the availability@sindrome73 You have to use the
Maketool, which is going to call theavr-gcccompiler.Have you ever compiled something using command line tools?
If you don't know what I'm talking about, just tell me your channel and I can compile a bootloader for you.