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. Development
  3. MYSBootloader 1.3pre2 testing

MYSBootloader 1.3pre2 testing

Scheduled Pinned Locked Moved Development
otamyscontrollermysbootloader
73 Posts 25 Posters 30.6k Views 31 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.
  • NeverDieN Offline
    NeverDieN Offline
    NeverDie
    Hero Member
    wrote on last edited by
    #11

    Not getting an answer here. Should I be asking the question somewhere else?

    1 Reply Last reply
    0
    • jmkhaelJ jmkhael

      @mannkind what other software do you use for ota firmware update?
      thanks

      M Offline
      M Offline
      mannkind
      wrote on last edited by
      #12
      This post is deleted!
      jmkhaelJ 1 Reply Last reply
      1
      • M mannkind

        This post is deleted!

        jmkhaelJ Offline
        jmkhaelJ Offline
        jmkhael
        wrote on last edited by
        #13

        @mannkind thank you for your reply. I don't want to get you in trouble regarding the rules. i don't feel it is against the rules to promote open source or contribution around mysensors if it makes the journey more enjoyable. maybe a mod or admin can pitch in and clarify in any case.
        I understand that the gateway role is to open up integration with other controllers (and we have quite many thanks to that)
        The problem i am trying to wrap my head around is to have mysensors network attached to my current controller, and ideally be able to update over the air the sketches. how can i begin doing that? i am ready to use 2 or more controller (mycontroller or myscontroller or...), 2 ore more gateways and even maybe have the nodes on two different rf channels.

        Basically, what is the recommended way to achieve that, while having for the time being at least, another controller attached.?

        1 Reply Last reply
        0
        • Velo17V Offline
          Velo17V Offline
          Velo17
          wrote on last edited by
          #14

          Hello! Will there be a chance to change the radio channel used for the bootloader OTA process?

          1 Reply Last reply
          0
          • jmkhaelJ Offline
            jmkhaelJ Offline
            jmkhael
            wrote on last edited by jmkhael
            #15

            @mannkind : thank you for your message. I'll give that a go later on.

            @tekka , @anyone :)
            I am trying to make this work using MYSController (from MYSBootloader_V13pre2/). I've followed the instructions above from @tekka, but it feels like the OTA process kicks around quite quick, then it seems to block in a loop

             [2016-10-17 23:09:29.821 Info] RX	1;255;4;0;0;0A0001005000D4460102
             [2016-10-17 23:09:29.821 Info] INFO	BL version=258
             [2016-10-17 23:09:29.821 Info] INFO	Send FW info to node 1: type=A, version=1, blocks=0x0050, CRC=0x46D4
             [2016-10-17 23:09:29.822 Info] TX	1;0;4;0;1;0A0001005000D446
            

            I'll try to keep it going all night, but here are my full log till now.
            Any idea what is going wrong?
            0_1476738954886_MySensors_20161017-230018.log

            M tekkaT 2 Replies Last reply
            0
            • jmkhaelJ jmkhael

              @mannkind : thank you for your message. I'll give that a go later on.

              @tekka , @anyone :)
              I am trying to make this work using MYSController (from MYSBootloader_V13pre2/). I've followed the instructions above from @tekka, but it feels like the OTA process kicks around quite quick, then it seems to block in a loop

               [2016-10-17 23:09:29.821 Info] RX	1;255;4;0;0;0A0001005000D4460102
               [2016-10-17 23:09:29.821 Info] INFO	BL version=258
               [2016-10-17 23:09:29.821 Info] INFO	Send FW info to node 1: type=A, version=1, blocks=0x0050, CRC=0x46D4
               [2016-10-17 23:09:29.822 Info] TX	1;0;4;0;1;0A0001005000D446
              

              I'll try to keep it going all night, but here are my full log till now.
              Any idea what is going wrong?
              0_1476738954886_MySensors_20161017-230018.log

              M Offline
              M Offline
              mannkind
              wrote on last edited by
              #16
              This post is deleted!
              1 Reply Last reply
              0
              • jmkhaelJ jmkhael

                @mannkind : thank you for your message. I'll give that a go later on.

                @tekka , @anyone :)
                I am trying to make this work using MYSController (from MYSBootloader_V13pre2/). I've followed the instructions above from @tekka, but it feels like the OTA process kicks around quite quick, then it seems to block in a loop

                 [2016-10-17 23:09:29.821 Info] RX	1;255;4;0;0;0A0001005000D4460102
                 [2016-10-17 23:09:29.821 Info] INFO	BL version=258
                 [2016-10-17 23:09:29.821 Info] INFO	Send FW info to node 1: type=A, version=1, blocks=0x0050, CRC=0x46D4
                 [2016-10-17 23:09:29.822 Info] TX	1;0;4;0;1;0A0001005000D446
                

                I'll try to keep it going all night, but here are my full log till now.
                Any idea what is going wrong?
                0_1476738954886_MySensors_20161017-230018.log

                tekkaT Offline
                tekkaT Offline
                tekka
                Admin
                wrote on last edited by
                #17

                @jmkhael Looks like a bad radio connection (GW too close / far, interference, power) What happens if you upload the FW via serial link?

                jmkhaelJ 1 Reply Last reply
                1
                • tekkaT tekka

                  @jmkhael Looks like a bad radio connection (GW too close / far, interference, power) What happens if you upload the FW via serial link?

                  jmkhaelJ Offline
                  jmkhaelJ Offline
                  jmkhael
                  wrote on last edited by
                  #18

                  @mannkind : thanks for the clarifications. My problem is that the node seems to hang at the booting phase in MYSController sa per the screenshot.

                  @tekka that should be it (gw in the 50 cm range). I'll try more tests and get back here in any case.

                  @mannkind, @tekka: How do we interpret the OTA logs?

                  0_1476786275039_MYSController 1.0.png

                  jmkhaelJ 1 Reply Last reply
                  0
                  • jmkhaelJ jmkhael

                    @mannkind : thanks for the clarifications. My problem is that the node seems to hang at the booting phase in MYSController sa per the screenshot.

                    @tekka that should be it (gw in the 50 cm range). I'll try more tests and get back here in any case.

                    @mannkind, @tekka: How do we interpret the OTA logs?

                    0_1476786275039_MYSController 1.0.png

                    jmkhaelJ Offline
                    jmkhaelJ Offline
                    jmkhael
                    wrote on last edited by
                    #19

                    @tekka: it was probably a mix of power/distance. when change these two parameters, OTA went fine. thank you

                    What is the best way to handle OTA for sleeping nodes? is there something else todo besides setting the property under settings in MYSController? Do I need to powercycle the node or will MYSController kicks in when the node sleeps/smartSleeps?
                    thank you for your time

                    tekkaT 1 Reply Last reply
                    1
                    • jmkhaelJ jmkhael

                      @tekka: it was probably a mix of power/distance. when change these two parameters, OTA went fine. thank you

                      What is the best way to handle OTA for sleeping nodes? is there something else todo besides setting the property under settings in MYSController? Do I need to powercycle the node or will MYSController kicks in when the node sleeps/smartSleeps?
                      thank you for your time

                      tekkaT Offline
                      tekkaT Offline
                      tekka
                      Admin
                      wrote on last edited by
                      #20

                      @jmkhael MYSController will reboot the node as soon as it wakes up, sends and processes incoming messages.

                      jmkhaelJ 1 Reply Last reply
                      1
                      • tekkaT tekka

                        @jmkhael MYSController will reboot the node as soon as it wakes up, sends and processes incoming messages.

                        jmkhaelJ Offline
                        jmkhaelJ Offline
                        jmkhael
                        wrote on last edited by
                        #21

                        @tekka my node wakes up every two minutes (or on pir movement) sends some messages (temperature, light level...) and sleeps right away. will MYSController be able to do that in this small time window? is there something i can code to help it? (heartBeat, wait, smartSomething?)
                        (as i saw during my few tests, i had to powercycle my node, maybe i wasn't patient enough :))

                        tekkaT 1 Reply Last reply
                        0
                        • jmkhaelJ jmkhael

                          @tekka my node wakes up every two minutes (or on pir movement) sends some messages (temperature, light level...) and sleeps right away. will MYSController be able to do that in this small time window? is there something i can code to help it? (heartBeat, wait, smartSomething?)
                          (as i saw during my few tests, i had to powercycle my node, maybe i wasn't patient enough :))

                          tekkaT Offline
                          tekkaT Offline
                          tekka
                          Admin
                          wrote on last edited by
                          #22

                          @jmkhael place smartSleep() instead of sleep(), before sending any values to the controller - MYSController will pick this up and send a reboot command. Also, you need to mark the node as battery-powered/sleeping node...

                          1 Reply Last reply
                          0
                          • JCLBJ Offline
                            JCLBJ Offline
                            JCLB
                            wrote on last edited by JCLB
                            #23

                            Just tried with this release, works great (had no problem with previous release)

                            The only drawback is the packet bitrate, around 40 per minute with 45 bytes each.
                            It takes 1h to flash a node. few minutes, just make sure of your wiring as this is a very intensive process compared to node's standard radio use.

                            Here is a flash running on a test network:

                            snip

                            Can we update many nodes at the same time ? haven't tried

                            tekkaT 1 Reply Last reply
                            0
                            • JCLBJ JCLB

                              Just tried with this release, works great (had no problem with previous release)

                              The only drawback is the packet bitrate, around 40 per minute with 45 bytes each.
                              It takes 1h to flash a node. few minutes, just make sure of your wiring as this is a very intensive process compared to node's standard radio use.

                              Here is a flash running on a test network:

                              snip

                              Can we update many nodes at the same time ? haven't tried

                              tekkaT Offline
                              tekkaT Offline
                              tekka
                              Admin
                              wrote on last edited by
                              #24

                              @JCLB This is unusual. A regular sketch ~20kB takes ~2mins. Maybe you are having issues with power supply, bad clones, or other sources of interference.

                              1 Reply Last reply
                              0
                              • JCLBJ Offline
                                JCLBJ Offline
                                JCLB
                                wrote on last edited by JCLB
                                #25

                                I can now gets dozen of packets at once, then hold, continues...depending of how I press the wires on radio side :sweat:
                                It's a wiring problem, will try this weekend with a soldered node.

                                Thank you

                                tekkaT 1 Reply Last reply
                                0
                                • JCLBJ JCLB

                                  I can now gets dozen of packets at once, then hold, continues...depending of how I press the wires on radio side :sweat:
                                  It's a wiring problem, will try this weekend with a soldered node.

                                  Thank you

                                  tekkaT Offline
                                  tekkaT Offline
                                  tekka
                                  Admin
                                  wrote on last edited by
                                  #26

                                  @JCLB Thanks for reporting, I'm using short dupont cables or have the radio fixed on a PCB.

                                  1 Reply Last reply
                                  0
                                  • kk02067K Offline
                                    kk02067K Offline
                                    kk02067
                                    wrote on last edited by
                                    #27

                                    I have also problem with speed of the upload. I get about 1 packet per 3 seconds. Is there a something in the code for the bootloader that has a waitingtime of 3 seconds? And if so, because of what? From that info we might be able to tell if it's a reception problem of the node or the gateway.

                                    1 Reply Last reply
                                    0
                                    • pkuP Offline
                                      pkuP Offline
                                      pku
                                      wrote on last edited by
                                      #28

                                      @tekka Thank you for great job on MYSBootloader. It works fine for me. Currently I'm testing it and have few questions.

                                      • Please can you provide source code? Maybe then I can answer my questions myself :)
                                      • Software signing doesn't work after firmware is uploaded. EEPROM is cleared. Is it possible to restore shared key HMAC after firmware is stored?
                                      • Is possible to send firmware with signing to prevent loading from fake gateway? I thing signing of available firmware version and firmware CRC is enough ..?

                                      Thank you for answers.

                                      JCLBJ 1 Reply Last reply
                                      0
                                      • NiklasON Offline
                                        NiklasON Offline
                                        NiklasO
                                        wrote on last edited by NiklasO
                                        #29

                                        I have changed the fuse settings for my setup. I don't know if it makes any difference but there is a fuse for "Preserve EEPROM memory through the Chip Erase cycle". Was noticing that my sensors was getting a new id every time I did some changes in my sketches and flashed using "Upload with programmer". I have not succeeded with OTA flashing yet.
                                        I also use the external crystal present on the Pro Mini. Using 0xFF, 0xD2 and 0xFE.
                                        Probably only used when programming using ICSP.

                                        MYSBL13.menu.cpu.8MHzatmega328=ATmega328 8MHz (XTAL, BOD1V8)
                                        MYSBL13.menu.cpu.8MHzatmega328.upload.maximum_size=30720
                                        MYSBL13.menu.cpu.8MHzatmega328.upload.maximum_data_size=2048
                                        MYSBL13.menu.cpu.8MHzatmega328.upload.speed=38400
                                        MYSBL13.menu.cpu.8MHzatmega328.bootloader.low_fuses=0xFF
                                        MYSBL13.menu.cpu.8MHzatmega328.bootloader.high_fuses=0xD2
                                        MYSBL13.menu.cpu.8MHzatmega328.bootloader.extended_fuses=0xFE
                                        MYSBL13.menu.cpu.8MHzatmega328.bootloader.file=MYSBootloader/MYSBL13pre_atmega328_8Mhz.hex
                                        MYSBL13.menu.cpu.8MHzatmega328.build.mcu=atmega328p
                                        MYSBL13.menu.cpu.8MHzatmega328.build.f_cpu=8000000L
                                        
                                        pkuP 1 Reply Last reply
                                        0
                                        • NiklasON NiklasO

                                          I have changed the fuse settings for my setup. I don't know if it makes any difference but there is a fuse for "Preserve EEPROM memory through the Chip Erase cycle". Was noticing that my sensors was getting a new id every time I did some changes in my sketches and flashed using "Upload with programmer". I have not succeeded with OTA flashing yet.
                                          I also use the external crystal present on the Pro Mini. Using 0xFF, 0xD2 and 0xFE.
                                          Probably only used when programming using ICSP.

                                          MYSBL13.menu.cpu.8MHzatmega328=ATmega328 8MHz (XTAL, BOD1V8)
                                          MYSBL13.menu.cpu.8MHzatmega328.upload.maximum_size=30720
                                          MYSBL13.menu.cpu.8MHzatmega328.upload.maximum_data_size=2048
                                          MYSBL13.menu.cpu.8MHzatmega328.upload.speed=38400
                                          MYSBL13.menu.cpu.8MHzatmega328.bootloader.low_fuses=0xFF
                                          MYSBL13.menu.cpu.8MHzatmega328.bootloader.high_fuses=0xD2
                                          MYSBL13.menu.cpu.8MHzatmega328.bootloader.extended_fuses=0xFE
                                          MYSBL13.menu.cpu.8MHzatmega328.bootloader.file=MYSBootloader/MYSBL13pre_atmega328_8Mhz.hex
                                          MYSBL13.menu.cpu.8MHzatmega328.build.mcu=atmega328p
                                          MYSBL13.menu.cpu.8MHzatmega328.build.f_cpu=8000000L
                                          
                                          pkuP Offline
                                          pkuP Offline
                                          pku
                                          wrote on last edited by
                                          #30

                                          @NiklasO I'm using Arduino Mini 5V, 16Mhz with fuses as you have. Except BODLEVEL 2.7V and EEPROM Cleared. OTA works fine, 21kB hex file is sent in cca 2-5 minutes (very depends on count of wrong packets, without 47uF capacitor on NRF24 or with low power supply it takes about 2 hours :) ). I started with MYSController and small and easy Blink.ino.hex from MYSController distribution. Now I use MyController and own firmwares...

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


                                          8

                                          Online

                                          11.7k

                                          Users

                                          11.2k

                                          Topics

                                          113.0k

                                          Posts


                                          Copyright 2019 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