• Categories
    • Recent
    • Tags
    • Popular
    • Register
    • Login

    OTA firmware update

    Scheduled Pinned Locked Moved General Discussion
    9 Posts 3 Posters 5.0k Views 2 Watching
    Loading More Posts
    • 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.
    • H Offline
      hoegaarden_bier
      last edited by

      Is there anything special that needs to be done on the sensor node to allow over-the-air firmware upgrade from MYcontroller?

      I uploaded a hex file (compiled within sketch), added it to a node, triggered it.
      I do see the message go out , but the node does not do an update.

      jkandasaJ 1 Reply Last reply Reply Quote 0
      • jkandasaJ Offline
        jkandasa @hoegaarden_bier
        last edited by

        @hoegaarden_bier

        Yes, have to install DualOptiboot or MYSBootloader boot-loader on your node.

        have a look at http://forum.mysensors.org/search/ota?in=titlesposts

        1 Reply Last reply Reply Quote 0
        • D Offline
          dirkc
          last edited by

          @jkandasa:

          I use the MYSBootloader_8MHz.hex (https://github.com/mysensors/MySensorsBootloaderRF24/blob/development/hex/MYSBootloader_8MHz.hex)

          What did I do so far:
          I added the firmware versions in the "Utilities / Firmware" dialogs as described in your pdf.
          I added my sensors to MyController, assign the firmware in the details dialog to the sensor.
          But neither rebooting nor clicking the menu item "Upload firmware" do the expected.

          After this there is only one line in the log file, but nothing else happens.

          ethernetGW 105:reed ds18b20 minimal node Sent Stream [Firmware config response] 33000600D005C29F

          Any idea? Thanks in advance

          jkandasaJ 1 Reply Last reply Reply Quote 0
          • jkandasaJ Offline
            jkandasa @dirkc
            last edited by

            @dirkc When you use MYSBootloader node reboot is required to send new firmware. Looks like your node didn't ask new firmware from MyController. Does it on the reachable range? In normal time can you access your node?

            D 1 Reply Last reply Reply Quote 0
            • D Offline
              dirkc @jkandasa
              last edited by

              @jkandasa ok, its working well now. The root cause seemd to be that I not only uploaded the bootloader using usbasp but also the firmware sketch with the result, that another non ota bootloader was installed by usbasp, too.
              Now I used a brand new barebone atmega328p in a really basic circuit with a NRF24L01+, upload the bootloader using usbasp only and then wait for MyController to recognize the node. Now I can upload the firmware by just rebooting.
              Uploading the TimeReporter demo lasts ca. 6 minutes with a distance between gateway and node of about 6 meter in different floors.
              Thanks for doing such a great job building MyController 🙂

              1 Reply Last reply Reply Quote 1
              • D Offline
                dirkc
                last edited by dirkc

                @jkandasa : sorry, next question. I have new sensor on a new 328p breadboard with internal RC. This 328p was already in use in another broad/circuit and loaded simple sketches, e.g. TimeReporter quite well and fast.
                But with the new board, the same 328p, but another sketch, 52 KB of size, the OTA process seems to load until a specific block (always the same!), and then restarts and again and again.
                It stops at 01000A007C04 and restarts at 01000A008F04
                Here is the specific log

                Any hint appreciated, thanks in advance
                Dirk

                edit: the new board uses the nrf24 pa lna (470uF elko capacitor) as well as the gateway, 5 m distance, different floors.

                2017-05-13 20:51:43: node[102] child[255] ack:0 C_STREAM        ST_FIRMWARE_REQUEST       | 01000A007D04
                2017-05-13 20:51:45: node[102] child[255] ack:0 C_STREAM        ST_FIRMWARE_REQUEST       | 01000A007D04
                2017-05-13 20:51:48: node[102] child[255] ack:0 C_STREAM        ST_FIRMWARE_REQUEST       | 01000A007D04
                2017-05-13 20:51:50: node[102] child[255] ack:0 C_STREAM        ST_FIRMWARE_REQUEST       | 01000A007D04
                2017-05-13 20:51:53: node[102] child[255] ack:0 C_STREAM        ST_FIRMWARE_CONFIG_REQUEST | 01000A0090042B510103
                2017-05-13 20:51:53: node[102] child[255] ack:0 C_STREAM        ST_FIRMWARE_REQUEST       | 01000A008F04
                2017-05-13 20:51:54: node[102] child[255] ack:0 C_STREAM        ST_FIRMWARE_REQUEST       | 01000A008E04
                2017-05-13 20:51:54: node[102] child[255] ack:0 C_STREAM        ST_FIRMWARE_REQUEST       | 01000A008D04
                2017-05-13 20:51:54: node[102] child[255] ack:0 C_STREAM        ST_FIRMWARE_REQUEST       | 01000A008C04
                2017-05-13 20:51:54: node[102] child[255] ack:0 C_STREAM        ST_FIRMWARE_REQUEST       | 01000A008B04```
                jkandasaJ 1 Reply Last reply Reply Quote 0
                • jkandasaJ Offline
                  jkandasa @dirkc
                  last edited by

                  @dirkc Can you send your mycontroller.log file to my email address? jkandasa at gmail dot com

                  1 Reply Last reply Reply Quote 0
                  • D Offline
                    dirkc
                    last edited by dirkc

                    @jkandasa : now, only after shutting all off for just one night, surprisingly everything works fine again. I didn't change anything in the setup!

                    edit: I think, the most relevant lines are here:

                    [Sat May 13 18:02:20 CEST 2017] IO error: javax.net.ssl.SSLException: Connection has been shutdown: javax.net.ssl.SSLHandshakeException: Received fatal alert: unknown_ca in processing a request from /2a0.........443 / sun.security.ssl.SSLSocketImpl
                    2017-05-13 18:02:23,235 WARN [Thread-796] [org.mycontroller.standalone.message.McMessageEngine:297] Inclusion mode not supported by this controller! Message:McMessage(gatewayId=1, nodeEui=0, sensorId=SENSOR_BC, type=C_INTERNAL, subType=Inclusion mode, acknowledge=true, payload=0, isTxMessage=false, networkType=MY_SENSORS, isScreeningDone=true, timestamp=1494691343235)
                    2017-05-13 18:02:23,332 WARN [Thread-797] [org.mycontroller.standalone.message.McMessageEngine:297] Inclusion mode not supported by this controller! Message:McMessage(gatewayId=1, nodeEui=0, sensorId=SENSOR_BC, type=C_INTERNAL, subType=Inclusion mode, acknowledge=true, payload=1, isTxMessage=false, networkType=MY_SENSORS, isScreeningDone=true, timestamp=1494691343332)
                    [Sat May 13 18:02:24 CEST 2017] IO error: javax.net.ssl.SSLException: Connection has been shutdown: javax.net.ssl.SSLHandshakeException: Received fatal alert: unknown_ca in processing a request from /2a0.......443 / sun.security.ssl.SSLSocketImpl
                    2017-05-13 18:03:23,104 WARN [Thread-983] [org.mycontroller.standalone.message.McMessageEngine:297] Inclusion mode not supported by this controller! Message:McMessage(gatewayId=1, nodeEui=0, sensorId=SENSOR_BC, type=C_INTERNAL, subType=Inclusion mode, acknowledge=true, payload=0, isTxMessage=false, networkType=MY_SENSORS, isScreeningDone=true, timestamp=1494691403105)
                    2017-05-13 18:03:23,204 WARN [Thread-984] [org.mycontroller.standalone.message.McMessageEngine:297] Inclusion mode not supported by this controller! Message:McMessage(gatewayId=1, nodeEui=0, sensorId=SENSOR_BC, type=C_INTERNAL, subType=Inclusion mode, acknowledge=true, payload=1, isTxMessage=false, networkType=MY_SENSORS, isScreeningDone=true, timestamp=1494691403204)
                    2017-05-13 18:04:23,099 WARN [Thread-1177] [org.mycontroller.standalone.message.McMessageEngine:297] Inclusion mode not supported by this controller! Message:McMessage(gatewayId=1, nodeEui=0, sensorId=SENSOR_BC, type=C_INTERNAL, subType=Inclusion mode, acknowledge=true, payload=0, isTxMessage=false, networkType=MY_SENSORS, isScreeningDone=true, timestamp=1494691463099)
                    2017-05-13 18:04:23,198 WARN [Thread-1178] [org.mycontroller.standalone.message.McMessageEngine:297] Inclusion mode not supported by this controller! Message:McMessage(gatewayId=1, nodeEui=0, sensorId=SENSOR_BC, type=C_INTERNAL, subType=Inclusion mode, acknowledge=true, payload=1, isTxMessage=false, networkType=MY_SENSORS, isScreeningDone=true, timestamp=1494691463198)
                    2017-05-13 18:05:23,183 WARN [Thread-1362] [org.mycontroller.standalone.message.McMessageEngine:297] Inclusion mode not supported by this controller! Message:McMessage(gatewayId=1, nodeEui=0, sensorId=SENSOR_BC, type=C_INTERNAL, subType=Inclusion mode, acknowledge=true, payload=0, isTxMessage=false, networkType=MY_SENSORS, isScreeningDone=true, timestamp=1494691523183)
                    2017-05-13 18:05:23,284 WARN [Thread-1363] [org.mycontroller.standalone.message.McMessageEngine:297] Inclusion mode not supported by this controller! Message:McMessage(gatewayId=1, nodeEui=0, sensorId=SENSOR_BC, type=C_INTERNAL, subType=Inclusion mode, acknowledge=true, payload=1, isTxMessage=false, networkType=MY_SENSORS, isScreeningDone=true, timestamp=1494691523284)
                    2017-05-13 18:06:23,153 WARN [Thread-1544] [org.mycontroller.standalone.message.McMessageEngine:297] Inclusion mode not supported by this controller! Message:McMessage(gatewayId=1, nodeEui=0, sensorId=SENSOR_BC, type=C_INTERNAL, subType=Inclusion mode, acknowledge=true, payload=0, isTxMessage=false, networkType=MY_SENSORS, isScreeningDone=true, timestamp=1494691583154)
                    
                    

                    But most entries in the log, and at the point in time of my last post, the log is like

                    2017-05-13 20:50:25,886 WARN [Thread-7226] [org.mycontroller.standalone.message.McMessageEngine:297] Inclusion mode not supported by this controller! Message:McMessage(gatewayId=1, nodeEui=0, sensorId=SENSOR_BC, type=C_INTERNAL, subType=Inclusion mode, acknowledge=true, payload=0, isTxMessage=false, networkType=MY_SENSORS, isScreeningDone=true, timestamp=1494701425886)
                    2017-05-13 20:50:25,976 WARN [Thread-7227] [org.mycontroller.standalone.message.McMessageEngine:297] Inclusion mode not supported by this controller! Message:McMessage(gatewayId=1, nodeEui=0, sensorId=SENSOR_BC, type=C_INTERNAL, subType=Inclusion mode, acknowledge=true, payload=1, isTxMessage=false, networkType=MY_SENSORS, isScreeningDone=true, timestamp=1494701425977)
                    2017-05-13 20:51:25,943 WARN [Thread-7262] [org.mycontroller.standalone.message.McMessageEngine:297] Inclusion mode not supported by this controller! Message:McMessage(gatewayId=1, nodeEui=0, sensorId=SENSOR_BC, type=C_INTERNAL, subType=Inclusion mode, acknowledge=true, payload=0, isTxMessage=false, networkType=MY_SENSORS, isScreeningDone=true, timestamp=1494701485944)
                    2017-05-13 20:51:26,044 WARN [Thread-7263] [org.mycontroller.standalone.message.McMessageEngine:297] Inclusion mode not supported by this controller! Message:McMessage(gatewayId=1, nodeEui=0, sensorId=SENSOR_BC, type=C_INTERNAL, subType=Inclusion mode, acknowledge=true, payload=1, isTxMessage=false, networkType=MY_SENSORS, isScreeningDone=true, timestamp=1494701486045)
                    2017-05-13 20:52:26,003 WARN [Thread-7336] [org.mycontroller.standalone.message.McMessageEngine:297] Inclusion mode not supported by this controller! Message:McMessage(gatewayId=1, nodeEui=0, sensorId=SENSOR_BC, type=C_INTERNAL, subType=Inclusion mode, acknowledge=true, payload=0, isTxMessage=false, networkType=MY_SENSORS, isScreeningDone=true, timestamp=1494701546004)
                    
                    

                    As said, I am using the same gateway all the time, the standard WiFi Gateway using ESP8266 (Wemos D1 mini) with a NRF24L01+ pa lna.

                    jkandasaJ 1 Reply Last reply Reply Quote 0
                    • jkandasaJ Offline
                      jkandasa @dirkc
                      last edited by

                      @dirkc Inclusion mode not supported by MyController and there is a request from the gateway. So it says I won't support. I guess some other environment issue might get resolved on restart.

                      1 Reply Last reply Reply Quote 0
                      • First post
                        Last post

                      1

                      Online

                      587

                      Users

                      529

                      Topics

                      3.4k

                      Posts
                      Copyright © 2015-2025 MyController.org | Contributors | Localization