Skip to content
  • MySensors
  • OpenHardware.io
  • Categories
  • Recent
  • Tags
  • Popular
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Default (No Skin)
  • No Skin
Collapse
Brand Logo
  1. Home
  2. Announcements
  3. 💬 FOTA (Wireless Programming)

💬 FOTA (Wireless Programming)

Scheduled Pinned Locked Moved Announcements
wirelessupdateover the airsensebenderfotafirmware over the airwireless programming
130 Posts 46 Posters 31.6k Views 44 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • mfalkviddM Offline
    mfalkviddM Offline
    mfalkvidd
    Mod
    wrote on last edited by mfalkvidd
    #42

    @nick-van-alst https://forum.mysensors.org/topic/5939/is-the-sensbender-micro-already-preloaded-with-the-dualoptiboot-bootloader

    1 Reply Last reply
    0
    • maghacM Offline
      maghacM Offline
      maghac
      wrote on last edited by
      #43

      I'd like to try this on my Pro Mini clone, but unfortunately I find the instructions very confusing.

      What are fuses and why do I need to change them? To what do I need to change them?
      I cannot see "Arduino Mini pro MYSBootloader" in Boards.

      I am using Mysensors 2.1.

      sundberg84S 1 Reply Last reply
      0
      • maghacM maghac

        I'd like to try this on my Pro Mini clone, but unfortunately I find the instructions very confusing.

        What are fuses and why do I need to change them? To what do I need to change them?
        I cannot see "Arduino Mini pro MYSBootloader" in Boards.

        I am using Mysensors 2.1.

        sundberg84S Offline
        sundberg84S Offline
        sundberg84
        Hardware Contributor
        wrote on last edited by sundberg84
        #44

        @maghac - https://forum.mysensors.org/topic/3018/tutorial-how-to-burn-1mhz-8mhz-bootloader-using-arduino-ide-1-6-5-r5 here is a good tutorial how to burn a bootloader. You need to select a bootloader you want to use. They all have different properties. The fuses are burned when you burn the bootloader. The wirelsess programming tutorial is found here: https://www.mysensors.org/about/ota

        Controller: Proxmox VM - Home Assistant
        MySensors GW: Arduino Uno - W5100 Ethernet, Gw Shield Nrf24l01+ 2,4Ghz
        MySensors GW: Arduino Uno - Gw Shield RFM69, 433mhz
        RFLink GW - Arduino Mega + RFLink Shield, 433mhz

        1 Reply Last reply
        0
        • gohanG Offline
          gohanG Offline
          gohan
          Mod
          wrote on last edited by
          #45

          The suggested bootloader programmers in the article work with all Arduino Mini pro, UNO, MEGA and so on? I have searched around Aliexpress for "USBASP" but it seems they support only windows 7 and the common description is " USBASP USBISP AVR Programmer USB ATMEGA8 ATMEGA128" so it's kind of confusing for me

          1 Reply Last reply
          0
          • tbowmoT Offline
            tbowmoT Offline
            tbowmo
            Admin
            wrote on last edited by
            #46

            They should work with all of the "old" AVR line of atmel processors (attiny, atmega)

            If you go with newer processors like atsam procssor line, you need to have a CMSIS adapter instead.

            Btw. they should work on both windows and linux (and newer versions of windows as well)

            1 Reply Last reply
            0
            • H Offline
              H Offline
              hiddenuser
              wrote on last edited by
              #47

              Hi there,
              I have a RPI running my gateway(/dev/ttyUSB020) and domoticz is running on the rpi too. How do I used MYSBootloader to push sketches to my sensors?
              Thanks

              gohanG 1 Reply Last reply
              0
              • H hiddenuser

                Hi there,
                I have a RPI running my gateway(/dev/ttyUSB020) and domoticz is running on the rpi too. How do I used MYSBootloader to push sketches to my sensors?
                Thanks

                gohanG Offline
                gohanG Offline
                gohan
                Mod
                wrote on last edited by
                #48

                @hiddenuser https://www.mysensors.org/about/ota
                Then I suggest you configure the gateway as an ethernet gateway and use myscontroller to assign the firmware to the nodes

                1 Reply Last reply
                0
                • B Offline
                  B Offline
                  bilbolodz
                  wrote on last edited by
                  #49

                  It's not quite clear for my how to use MYSBootloader for OTA. I'm running Domoticz as a controller (on RPI) and my gateway also is running on RPI (NRF on GPIO). Should have I one more arduino gateway connected to Windows machine running MYSController? As far I know there could be only one gateway in mysensors network.

                  1 Reply Last reply
                  1
                  • gohanG Offline
                    gohanG Offline
                    gohan
                    Mod
                    wrote on last edited by
                    #50

                    You just connect myscontroller to the gateway running on the RPI if it is configured as ethernet

                    maghacM 1 Reply Last reply
                    1
                    • gohanG gohan

                      You just connect myscontroller to the gateway running on the RPI if it is configured as ethernet

                      maghacM Offline
                      maghacM Offline
                      maghac
                      wrote on last edited by
                      #51

                      I installed mycontroller.org for this purpose (OTA updates).

                      I have a MQTT gateway running on a NodeMCU, which connects to my MQTT server (mosquitto running on a ubuntu server) via wifi. This setup works very well, and I don't have to keep anything running on my desktop machine (which is a windows 10 box) while the OTA updates are being pushed out (which takes ages, since they are running on battery and only wake up once every few hours).

                      rozpruwaczR 1 Reply Last reply
                      0
                      • maghacM maghac

                        I installed mycontroller.org for this purpose (OTA updates).

                        I have a MQTT gateway running on a NodeMCU, which connects to my MQTT server (mosquitto running on a ubuntu server) via wifi. This setup works very well, and I don't have to keep anything running on my desktop machine (which is a windows 10 box) while the OTA updates are being pushed out (which takes ages, since they are running on battery and only wake up once every few hours).

                        rozpruwaczR Offline
                        rozpruwaczR Offline
                        rozpruwacz
                        wrote on last edited by
                        #52

                        @maghac said in 💬 Wireless Programming:

                        updates a

                        lately I was also tinkering with the OTA updates. I'm using RPI as a gateway and controller at the same time. I'm using MQTT gateway and the controller software is OpenHAB. As I studied the documentation about OTA I learned that it is not working with MQTT gateway. Can You explain how to setup OTA with MQTT gateway ? For now I have to kill the MQTT gateway process and launch serial gateway with virtual serial port which in turn has to be shared through the network with the ser2net to be able to use it with mycontroller running on my desktop.

                        maghacM 1 Reply Last reply
                        0
                        • rozpruwaczR rozpruwacz

                          @maghac said in 💬 Wireless Programming:

                          updates a

                          lately I was also tinkering with the OTA updates. I'm using RPI as a gateway and controller at the same time. I'm using MQTT gateway and the controller software is OpenHAB. As I studied the documentation about OTA I learned that it is not working with MQTT gateway. Can You explain how to setup OTA with MQTT gateway ? For now I have to kill the MQTT gateway process and launch serial gateway with virtual serial port which in turn has to be shared through the network with the ser2net to be able to use it with mycontroller running on my desktop.

                          maghacM Offline
                          maghacM Offline
                          maghac
                          wrote on last edited by
                          #53

                          @rozpruwacz Have a look here: https://forum.mysensors.org/topic/4345/mqtt-client-gateway-node-controller-ota

                          1 Reply Last reply
                          0
                          • hoegaarden_bierH Offline
                            hoegaarden_bierH Offline
                            hoegaarden_bier
                            wrote on last edited by
                            #54

                            Not sure what I am doing wrong here,... I followed the instructions for bootloader MYSController using an 'Arduino as ISP',... now when trying eg. the Blink sketch, I see that it takes about 10 seconds before it starts and after some 'blinks' it seems to miss some 'blinks',... any suggestions what might be wrong? The normal optiboot seems to work fine...

                            1 Reply Last reply
                            0
                            • maghacM Offline
                              maghacM Offline
                              maghac
                              wrote on last edited by
                              #55

                              I just enabled OTA on a non-sleeping node - it doesn't call smartSleep() and the loop function is mostly empty (except for sending one initial message). I do have a receive() function since I need to respond to incoming messages.

                              How can I properly enable OTA in this kind of node? Sending the "New firmware" command in MyController sends the message which gets caught by receive() and just gives me an error message since it's not one of the message types I expect. Telling the node to reboot sends it into some sort of endless loop which I cannot break unless I kill power to the board.

                              gohanG 1 Reply Last reply
                              0
                              • maghacM maghac

                                I just enabled OTA on a non-sleeping node - it doesn't call smartSleep() and the loop function is mostly empty (except for sending one initial message). I do have a receive() function since I need to respond to incoming messages.

                                How can I properly enable OTA in this kind of node? Sending the "New firmware" command in MyController sends the message which gets caught by receive() and just gives me an error message since it's not one of the message types I expect. Telling the node to reboot sends it into some sort of endless loop which I cannot break unless I kill power to the board.

                                gohanG Offline
                                gohanG Offline
                                gohan
                                Mod
                                wrote on last edited by
                                #56

                                @maghac did you see this? https://forum.mysensors.org/topic/6769/node-reboot-issue/7

                                maghacM 1 Reply Last reply
                                0
                                • gohanG gohan

                                  @maghac did you see this? https://forum.mysensors.org/topic/6769/node-reboot-issue/7

                                  maghacM Offline
                                  maghacM Offline
                                  maghac
                                  wrote on last edited by
                                  #57

                                  @gohan Thanks. I seem to have the same issue and I'm also using a 5V pro mini, although I actually am using the MYSBootloader.

                                  1 Reply Last reply
                                  0
                                  • maghacM Offline
                                    maghacM Offline
                                    maghac
                                    wrote on last edited by
                                    #58

                                    I am having problems flashing a new bootloader on a 5V 16Mhz Pro Mini board. Or rather. the flashing is fine, it's just that I cannot upload a new sketch via FTDI afterwards.

                                    Here are my custom 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=standard
                                    
                                    

                                    MYSBootloader.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 Pro Mini bootloader.

                                    gohanG 1 Reply Last reply
                                    0
                                    • maghacM maghac

                                      I am having problems flashing a new bootloader on a 5V 16Mhz Pro Mini board. Or rather. the flashing is fine, it's just that I cannot upload a new sketch via FTDI afterwards.

                                      Here are my custom 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=standard
                                      
                                      

                                      MYSBootloader.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 Pro Mini bootloader.

                                      gohanG Offline
                                      gohanG Offline
                                      gohan
                                      Mod
                                      wrote on last edited by
                                      #59

                                      @maghac why don't you use the ota feature?

                                      maghacM 1 Reply Last reply
                                      0
                                      • gohanG gohan

                                        @maghac why don't you use the ota feature?

                                        maghacM Offline
                                        maghacM Offline
                                        maghac
                                        wrote on last edited by
                                        #60

                                        @gohan Good question :)

                                        I was afraid it would get stuck in a neverending loop and I would have to cycle power to the board, but actually OTA programming with mycontroller works fine.

                                        The problem is that OTA uploades takes around 10 mins, which is annoying if I want to test something while I have the node on my desk, before placing it somewhere in my house. So while I anyway have it on the desk, I'd like to use the FTDI cable.

                                        Anyway, things seem to work fine now :)

                                        1 Reply Last reply
                                        1
                                        • A Offline
                                          A Offline
                                          arraWX
                                          wrote on last edited by
                                          #61

                                          Is it possible to do FOTA from my raspberry pi (serial gateway + domoticz)?

                                          As it is now I move the gateway from the rpi to a windows pc running MYSController. It would be nice to avoid this step.

                                          V 1 Reply Last reply
                                          0
                                          Reply
                                          • Reply as topic
                                          Log in to reply
                                          • Oldest to Newest
                                          • Newest to Oldest
                                          • Most Votes


                                          10

                                          Online

                                          11.7k

                                          Users

                                          11.2k

                                          Topics

                                          113.1k

                                          Posts


                                          Copyright 2025 TBD   |   Forum Guidelines   |   Privacy Policy   |   Terms of Service
                                          • Login

                                          • Don't have an account? Register

                                          • Login or register to search.
                                          • First post
                                            Last post
                                          0
                                          • MySensors
                                          • OpenHardware.io
                                          • Categories
                                          • Recent
                                          • Tags
                                          • Popular