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.3 pre-release & MYSController 1.0.0beta

MYSBootloader 1.3 pre-release & MYSController 1.0.0beta

Scheduled Pinned Locked Moved Development
otamyscontrollermysbootloader
198 Posts 53 Posters 85.1k Views 58 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.
  • M mannkind

    This post is deleted!

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

    @mannkind sounds good :)

    tekkaT 1 Reply Last reply
    0
    • tekkaT tekka

      @mannkind sounds good :)

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

      To summarize recent discussions and open questions:

      MySensors offers two OTA FW update solutions:

      Dualoptiboot requires external flash: OTA FW updates are transmitted online, i.e. while the node is active. Once all FW packets are transmitted and CRC verified, the node reboots, dualoptiboot copies FW from external flash to MCU and hands over to the new sketch/FW.

      Pro: Radio agnostic, online (while node processes sensor data)
      Cons: Faulty FW (e.g. freezing sketch) cannot be recovered OTA => recovery via serial port necessary, external flash required

      MYSBootloader does not require external flash: OTA FW updates are transmitted offline, i.e. MYSBootloader communicates with the controller and receives new FW which is directly written to MCU, once FW is transmitted and CRC verified, MYSBootloader hands over to the new sketch/FW.

      Pro: recovery OTA possible, also with a faulty/buggy sketch (if sketch freezes, watchdog resets and MYSBootloader takes over), no external flash required
      Cons: Radio specific, i.e. different bootloader for RF24 and RFM69 radio (work in progess) necessary, offline (no sensor data processing possible)

      ahmedadelhosniA 1 Reply Last reply
      4
      • tekkaT tekka

        To summarize recent discussions and open questions:

        MySensors offers two OTA FW update solutions:

        Dualoptiboot requires external flash: OTA FW updates are transmitted online, i.e. while the node is active. Once all FW packets are transmitted and CRC verified, the node reboots, dualoptiboot copies FW from external flash to MCU and hands over to the new sketch/FW.

        Pro: Radio agnostic, online (while node processes sensor data)
        Cons: Faulty FW (e.g. freezing sketch) cannot be recovered OTA => recovery via serial port necessary, external flash required

        MYSBootloader does not require external flash: OTA FW updates are transmitted offline, i.e. MYSBootloader communicates with the controller and receives new FW which is directly written to MCU, once FW is transmitted and CRC verified, MYSBootloader hands over to the new sketch/FW.

        Pro: recovery OTA possible, also with a faulty/buggy sketch (if sketch freezes, watchdog resets and MYSBootloader takes over), no external flash required
        Cons: Radio specific, i.e. different bootloader for RF24 and RFM69 radio (work in progess) necessary, offline (no sensor data processing possible)

        ahmedadelhosniA Offline
        ahmedadelhosniA Offline
        ahmedadelhosni
        wrote on last edited by
        #9

        @tekka Please post this important info in the main thread. This really makes things clear for me.

        1 Reply Last reply
        0
        • ahmedadelhosniA Offline
          ahmedadelhosniA Offline
          ahmedadelhosni
          wrote on last edited by
          #10

          Actually I thought that DualOptiboot can be recovered over the air since it copies in the external flash. Thus if a faulty FW occurred because of CRC is not verified for example, then the bootloader won't copy the faulty FW to the MCU.

          1 Reply Last reply
          0
          • scalzS Offline
            scalzS Offline
            scalz
            Hardware Contributor
            wrote on last edited by scalz
            #11

            @tekka oh sorry I didn't see your post!! It seems you have done very nice improvements :) I think I have missed things...I will update the topic I started with your details.
            Wow 4k bootloader with signing!
            Very nice catch! I didn't thought about the faulty fw for dualoptiboot!!
            So your preference goes to your little baby bootloader :) At first I choosed dualopt because I use rfm69...and because with mysbootldr if the upload fails, it would stay in bootloader and offline mode..
            In other hand the faulty fw case... so to be sure I have to check carefully my sketch on breadboard before uploading!!

            So for the moment, I stay with dualopt for my rfm69 but will keep an eye on your rfm69 improvements ;) That said do you think dualopt will become "useless"...and I should stop to use eeprom for bootloading??? I am feeling this now..
            And with 4k bootloadr, atsam becomes interesting..

            @ahmedadelhosni : if I understand right, faulty fw means if your code is not nice and make freeze your node, and you uploaded it, crc ok, reboot node and your bad code freeze the node..not nice usecase....

            tekkaT 1 Reply Last reply
            0
            • scalzS scalz

              @tekka oh sorry I didn't see your post!! It seems you have done very nice improvements :) I think I have missed things...I will update the topic I started with your details.
              Wow 4k bootloader with signing!
              Very nice catch! I didn't thought about the faulty fw for dualoptiboot!!
              So your preference goes to your little baby bootloader :) At first I choosed dualopt because I use rfm69...and because with mysbootldr if the upload fails, it would stay in bootloader and offline mode..
              In other hand the faulty fw case... so to be sure I have to check carefully my sketch on breadboard before uploading!!

              So for the moment, I stay with dualopt for my rfm69 but will keep an eye on your rfm69 improvements ;) That said do you think dualopt will become "useless"...and I should stop to use eeprom for bootloading??? I am feeling this now..
              And with 4k bootloadr, atsam becomes interesting..

              @ahmedadelhosni : if I understand right, faulty fw means if your code is not nice and make freeze your node, and you uploaded it, crc ok, reboot node and your bad code freeze the node..not nice usecase....

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

              @scalz If the OTA FW upload fails for whatever reason with MYSBootloader, it will reset and re-request a new FW, hence recovery is anytime possible.

              1 Reply Last reply
              0
              • scalzS Offline
                scalzS Offline
                scalz
                Hardware Contributor
                wrote on last edited by scalz
                #13

                @tekka : oki ...so lot of chance I will move to your bootloader, so no need to add eeprom footprint each time, that will give more space on pcb, cool! just for curiosity/knowledge I will look at your new code and try this very sexy bootloader :)
                can't wait to see your rfm69 progress! same size? and what your thought about atsam bootloadr in future? (4k can limit a little bit 328p..)
                really interesting, it's an awesome work you have done. great thx for this share :)

                tekkaT 1 Reply Last reply
                0
                • scalzS scalz

                  @tekka : oki ...so lot of chance I will move to your bootloader, so no need to add eeprom footprint each time, that will give more space on pcb, cool! just for curiosity/knowledge I will look at your new code and try this very sexy bootloader :)
                  can't wait to see your rfm69 progress! same size? and what your thought about atsam bootloadr in future? (4k can limit a little bit 328p..)
                  really interesting, it's an awesome work you have done. great thx for this share :)

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

                  @scalz I think it's always a benefit to have additional eeprom or flash on your pcb for data storage. In terms of bootloader choice it totally depends on your case and preferences. MYSBootloader has some advantages over dualoptiboot, however, dualoptiboot offers more flexibility in an evolving system with e.g. changes of transmissions protocols. On top it is radio agnostic. In my current setup and during prototyping I prefer MYSBootloader over Dualoptiboot since many of my deployed nodes do not have additional external storage.

                  1 Reply Last reply
                  1
                  • scalzS Offline
                    scalzS Offline
                    scalz
                    Hardware Contributor
                    wrote on last edited by scalz
                    #15

                    @tekka yep thx, I know but for some nodes I don't always need a datastorage and had the habits to add eeprom each time mainly for ota. And eeprom footprint is pretty big to place sometimes..but yes for datastorage it's cool. for the pros and cons, I agree with you, it depends of personal needs..
                    Have you already tried atsam boards with mysensors? I say this because I will assemble soon few atsam boards (atsamd but L family is picopower) I have designed, I will see if I'm able to port things in bootloadr but for the moment no time, too much things already in progress..in other hand, for nonpico, I'm waiting for esp32....

                    tekkaT 1 Reply Last reply
                    0
                    • scalzS scalz

                      @tekka yep thx, I know but for some nodes I don't always need a datastorage and had the habits to add eeprom each time mainly for ota. And eeprom footprint is pretty big to place sometimes..but yes for datastorage it's cool. for the pros and cons, I agree with you, it depends of personal needs..
                      Have you already tried atsam boards with mysensors? I say this because I will assemble soon few atsam boards (atsamd but L family is picopower) I have designed, I will see if I'm able to port things in bootloadr but for the moment no time, too much things already in progress..in other hand, for nonpico, I'm waiting for esp32....

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

                      @scalz yes, just started working with atsam and bootloader development, although with limited bandwidth at the moment. More to come soon...

                      1 Reply Last reply
                      0
                      • scalzS Offline
                        scalzS Offline
                        scalz
                        Hardware Contributor
                        wrote on last edited by
                        #17

                        wow impressively cool :laughing:
                        thx for your kindness, now I have homeworks to do!
                        see you soon :)

                        1 Reply Last reply
                        0
                        • ahmedadelhosniA Offline
                          ahmedadelhosniA Offline
                          ahmedadelhosni
                          wrote on last edited by
                          #18

                          Sorry but I dont really get what you mean by freezy ?
                          You mean a code is compiled but it enters an infinite loop for example ?

                          1 Reply Last reply
                          0
                          • scalzS Offline
                            scalzS Offline
                            scalz
                            Hardware Contributor
                            wrote on last edited by
                            #19

                            yes that's it. a bug in your code, like infinite loop, ram troubles... that should be rare depending of your code. plus generally you/I test on breadboard before sending it in prod, but that can happen and is good to know ;)

                            ahmedadelhosniA 1 Reply Last reply
                            0
                            • scalzS scalz

                              yes that's it. a bug in your code, like infinite loop, ram troubles... that should be rare depending of your code. plus generally you/I test on breadboard before sending it in prod, but that can happen and is good to know ;)

                              ahmedadelhosniA Offline
                              ahmedadelhosniA Offline
                              ahmedadelhosni
                              wrote on last edited by
                              #20

                              @scalz great.
                              This means that MYSBootloader can handle this problem and enter the bootloader mode even if the MCU freezes.

                              @tekka you state that the current version can handle a freeze SW. Also if the new code is corrupted during programming by unverified CRC or whatever, it will also handle that problem and resets and wait for a new flashing order.
                              Is this new in this version ? I am some how sure that MYSBootloader previously had a problem handling thoses types of failures, and that's why I was going to use DualOptiboot as I read before that it can handle those failures

                              Sorry for lots of questions but I am trying to reorganise my info.

                              1 Reply Last reply
                              1
                              • M mannkind

                                This post is deleted!

                                rollercontainerR Offline
                                rollercontainerR Offline
                                rollercontainer
                                wrote on last edited by
                                #21

                                @mannkind @tekka

                                So its working with a GatewayW5100MQTTClient aswell? That would be fantastic, I thought its only for serial and ethernet gateways. Do I also have to use port 5003?

                                M 1 Reply Last reply
                                0
                                • F Offline
                                  F Offline
                                  Fabien
                                  wrote on last edited by
                                  #22

                                  @tekka If this can help for an RFM69 version :
                                  https://github.com/vvvlc/Funky-FOTA

                                  1 Reply Last reply
                                  0
                                  • C Offline
                                    C Offline
                                    cdr
                                    wrote on last edited by
                                    #23

                                    @rollercontainer confirmed working with W5100mqtt here!

                                    1 Reply Last reply
                                    0
                                    • rollercontainerR Offline
                                      rollercontainerR Offline
                                      rollercontainer
                                      wrote on last edited by
                                      #24

                                      I have to ask again: GatewayW5100MQTTClient or the old Broker Gateway?
                                      I am not able to connect to my GatewayW5100MQTTClient on port 1883 or 5003 with MYSController 1.0.0beta.
                                      The gateway is in working condition with openHAB.

                                      1 Reply Last reply
                                      0
                                      • rollercontainerR rollercontainer

                                        @mannkind @tekka

                                        So its working with a GatewayW5100MQTTClient aswell? That would be fantastic, I thought its only for serial and ethernet gateways. Do I also have to use port 5003?

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

                                          This post is deleted!

                                          rollercontainerR Offline
                                          rollercontainerR Offline
                                          rollercontainer
                                          wrote on last edited by
                                          #26

                                          @mannkind

                                          THX! What difference a single letter makes... ^^

                                          @cdr What do you use exactly?

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


                                          17

                                          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