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.0-beta.3

MYSBootloader 1.3.0-beta.3

Scheduled Pinned Locked Moved Development
182 Posts 44 Posters 59.4k Views 42 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.
  • kk02067K Offline
    kk02067K Offline
    kk02067
    wrote on last edited by
    #64

    Excuse me for beeing an idiot. But how do you compile the bootloader from source? Do you do it from Atmel studio or from Arduino IDE. And how is it done? When I compile it in Atmel studio it gets an base adress of 0x0000 which is wrong.

    I am used to program in assembler in Atmel studio and when I program in C i don't touch anyting else than the .c file. So some form of tutorial kind of thing would be helpful.

    Thank you

    1 Reply Last reply
    0
    • R Offline
      R Offline
      rvweert
      wrote on last edited by
      #65

      Hey all,

      I've compiled the bootloader and was able to install it with Arduino as ISP to a Nano. I couldn't find the lines necessary for the Nano in boards.txt so I created this:

      ##############################################################
      
      nanomysbootloader.name=Arduino Nano MYSBootloader
      
      nanomysbootloader.upload.tool=avrdude
      nanomysbootloader.upload.protocol=arduino
      
      nanomysbootloader.bootloader.tool=avrdude
      nanomysbootloader.bootloader.unlock_bits=0x3F
      nanomysbootloader.bootloader.lock_bits=0x0F
      
      nanomysbootloader.build.f_cpu=16000000L
      nanomysbootloader.build.board=AVR_NANO
      nanomysbootloader.build.core=arduino
      nanomysbootloader.build.variant=eightanaloginputs
      
      ## Arduino Nano w/ ATmega328
      ## -------------------------
      nanomysbootloader.menu.cpu.atmega328=ATmega328
      
      nanomysbootloader.menu.cpu.atmega328.upload.maximum_size=30720
      nanomysbootloader.menu.cpu.atmega328.upload.maximum_data_size=2048
      nanomysbootloader.menu.cpu.atmega328.upload.speed=115200
      
      nanomysbootloader.menu.cpu.atmega328.bootloader.low_fuses=0xFF
      nanomysbootloader.menu.cpu.atmega328.bootloader.high_fuses=0xDA
      nanomysbootloader.menu.cpu.atmega328.bootloader.extended_fuses=0xFD
      nanomysbootloader.menu.cpu.atmega328.bootloader.file=MySensors/MYSBootloader.hex
      nanomysbootloader.menu.cpu.atmega328.build.mcu=atmega328p
      
      

      Is this correct? Besides, on some devices I cannot program over serial anymore now, only through another ISP. Could that be caused by incorrect settings? Is it possible to recover from that?
      The error I'm getting is this one:
      avrdude: stk500_getsync() attempt 1 of 10: not in sync: resp=0x32

      Thanks and happy easter!
      Rene

      1 Reply Last reply
      0
      • tekkaT tekka

        @Nicolas-Charrier Welcome to MySensors. Please do not post the same question in different threads. Maybe you can give additional information that help to understand what you tried so far (logs, screenshots, HW configuration, CPU frequency, etc.). Did you follow the OTA/bootloader instructions here?

        AffordableTechA Offline
        AffordableTechA Offline
        AffordableTech
        wrote on last edited by
        #66

        Hi All,

        I'm currently upgrading to MySensors 2.0.0 and it would make sense to change over to the MYSBootloader as I upgrade each node. (I'd like to be able to use the remote re-boot command from MYSController).

        I have been reading about the MYSBootloader and have some questions . . .

        Q1 - My nodes are a mixture of Pro-Micro's, Leonardo's, Mega 2560's and the odd UNO. From what I can see, the MYSbootloader.hex file is for the Mega328p, is this correct, or can the same bootloader be adjusted (fuse settings etc) for others like the Leonardo processor?

        Q2 - One post I read seemed to imply that to use the remote reboot feature you needed 'either' the MYSBootloader OR OptiBoot. In the OptiBoot readme, it doesn't mention reboot as a feature, so I am wondering if it really does support reboot - can anyone please confirm?

        Many thanks,

        Paul

        1 Reply Last reply
        0
        • hekH Offline
          hekH Offline
          hek
          Admin
          wrote on last edited by
          #67

          Q1) Yes, correct.
          Q2) The reboot is handled automatically when new firmware has been downloaded by the library. Note: When using DualOptiboot you must also enable the MY_OTA_FIRMWARE_FEATURE when compiling the sketch to allow updates.

          1 Reply Last reply
          0
          • S Offline
            S Offline
            studzin
            wrote on last edited by
            #68

            Hi,
            Is it possible to add support for rs485 network? In my opinion bootloader which exists need only de-pin management. I'm using hardware serial (rx tx) in nod's.

            1 Reply Last reply
            0
            • S Offline
              S Offline
              slt1
              wrote on last edited by
              #69

              Can someone please tell me how long it is supposed to take to upload a hex file with MYSBootloader. I am trying out OTA Updates with the latest dev branch of MYSBootloader and it takes almost 2 hours to upload a 64k hex file. Is this normal or should it be a lot quicker?

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

                How far is the node from gateway? It should take much less time actually

                S 1 Reply Last reply
                0
                • gohanG gohan

                  How far is the node from gateway? It should take much less time actually

                  S Offline
                  S Offline
                  slt1
                  wrote on last edited by
                  #71

                  @gohan I have tried 2 different nodes in 2 different locations. The one node is about 8m away from the gateway. The other node is around 12m away.

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

                    Ok, if you put it like 2 meters away do you notice any difference?

                    S 1 Reply Last reply
                    0
                    • gohanG gohan

                      Ok, if you put it like 2 meters away do you notice any difference?

                      S Offline
                      S Offline
                      slt1
                      wrote on last edited by
                      #73

                      @gohan Seems to be taking the same time at 2 meters apart. Can you tell me how long it should take to do an OTA update? You say "much less time" .. what should it take for a 64k update?

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

                        I don't have direct experience (I am waiting for my mini pro to be delivered) but I read other sending in around 10 minutes but I don't know what was the hex file size.
                        I asked for the distance just to make sure it wasn't related to range issues.

                        1 Reply Last reply
                        0
                        • S Offline
                          S Offline
                          slt1
                          wrote on last edited by
                          #75

                          I am getting good range here. I have a repeater node (not using MYSBootloader yet) that is 100m away and works fine and another node 200 to 300m away (hence the repeater at 100m). The far node was dropping some messages but that is not too critical as its only a water tank level sensor. I plan to put in a long range PA+SMA type nrf24L01 on that one. The gateway and repeater already have the long range nrf's. I am now testing OTA to a weather station node that is just outside - around 10m from gateway. And I have a test node on my desk around 8m from the gateway. Both the weather station and the test node on my desk give same results for OTA - around 30min or so for every 20k of hex file.

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

                            how long is the sleep time of your nodes?

                            S 1 Reply Last reply
                            0
                            • gohanG gohan

                              how long is the sleep time of your nodes?

                              S Offline
                              S Offline
                              slt1
                              wrote on last edited by
                              #77

                              @gohan The weather station does not sleep - it uses wait() and does so for 5 seconds every loop. The test node first waits for 5 seconds then sleeps for 55 seconds. Both these node seem to update at the same rate. However, it also seems MYSBootloader does the firmware update then launches the sketch code, so the wait / sleep cycle is irrelevant as it first updates the bootloader then runs the sketch

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

                                it is relevant because if it is long, the node will start the ota update only when it exits the sleep, so I was just making sure you didn't overlooked that :)

                                S 1 Reply Last reply
                                0
                                • gohanG gohan

                                  it is relevant because if it is long, the node will start the ota update only when it exits the sleep, so I was just making sure you didn't overlooked that :)

                                  S Offline
                                  S Offline
                                  slt1
                                  wrote on last edited by
                                  #79

                                  @gohan not overlooked :) All seems to be working - range is good, MYSBootloader and OTA updates work. It just incredibly slow. It seems to do some message updates then pause for maybe 5 seconds or so, then carry on going. So when there are 1000 messages - these 5 sec pauses probably add up to what is making it take hours instead of minutes

                                  J 1 Reply Last reply
                                  0
                                  • S slt1

                                    @gohan not overlooked :) All seems to be working - range is good, MYSBootloader and OTA updates work. It just incredibly slow. It seems to do some message updates then pause for maybe 5 seconds or so, then carry on going. So when there are 1000 messages - these 5 sec pauses probably add up to what is making it take hours instead of minutes

                                    J Offline
                                    J Offline
                                    jkandasa
                                    Plugin Developer
                                    wrote on last edited by
                                    #80

                                    @slt1 If you are using wait() to repeat some function. I recommend using http://playground.arduino.cc/Code/SimpleTimer, to avoid complete blocking when executing wait().

                                    S 1 Reply Last reply
                                    0
                                    • J jkandasa

                                      @slt1 If you are using wait() to repeat some function. I recommend using http://playground.arduino.cc/Code/SimpleTimer, to avoid complete blocking when executing wait().

                                      S Offline
                                      S Offline
                                      slt1
                                      wrote on last edited by
                                      #81

                                      @jkandasa Thanks for the help, but the problem I am having cannot be in the sketch. The firmware update does gets started after a reboot. So that part is all working fine. Once the firmware is updating then no sketch code runs until it completes. The firmware updating is what is very very slow

                                      J 1 Reply Last reply
                                      0
                                      • S slt1

                                        @jkandasa Thanks for the help, but the problem I am having cannot be in the sketch. The firmware update does gets started after a reboot. So that part is all working fine. Once the firmware is updating then no sketch code runs until it completes. The firmware updating is what is very very slow

                                        J Offline
                                        J Offline
                                        jkandasa
                                        Plugin Developer
                                        wrote on last edited by
                                        #82

                                        @slt1 I hope you are also facing this kind of issue: https://github.com/mysensors/MySensorsBootloaderRF24/issues/12

                                        S 1 Reply Last reply
                                        0
                                        • J jkandasa

                                          @slt1 I hope you are also facing this kind of issue: https://github.com/mysensors/MySensorsBootloaderRF24/issues/12

                                          S Offline
                                          S Offline
                                          slt1
                                          wrote on last edited by
                                          #83

                                          @jkandasa I added some basic shielding around NRF's and now getting the 60Kb hex file transferred in around 15 minutes (was 2 hours!), and a 30Kb hex file transferred in about 7 minutes (prev was about 1 hour). So its a lot better, but still rather slow ! I am not sure if that is a good transfer rate for OTA and if what I am now getting can still be improved. I cannot find any information on what transfer speeds one should expect with OTA updates.
                                          I am also using MyController, but using the 5V / 16Mhz MySBootloader file in development branch. So I am not sure if my issue is same as yours.

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


                                          12

                                          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