MYSBootloader 1.3 pre-release & MYSController 1.0.0beta


  • Admin

    @Anduril hmm...I'm not experiencing any speed issues with the new bootloader. Can you activate debug on your GW and post the log while running OTA updates?



  • @tekka here the serial monitor while OTA upload with #define MY_DEBUG

    0;255;3;0;9;send: 0-0-3-3 s=255,c=3,t=15,pt=0,l=2,sg=0,st=ok:
    0;255;3;0;9;read: 3-3-0 s=255,c=4,t=0,pt=6,l=10,sg=0:6E000100580648930102
    0;255;3;0;9;Client 0: 3;0;4;0;1;6E00010058068FD5
    0;255;3;0;9;send: 0-0-3-3 s=0,c=4,t=1,pt=6,l=8,sg=0,st=fail:6E00010058068FD5
    0;255;3;0;9;read: 3-3-0 s=255,c=4,t=0,pt=6,l=10,sg=0:6E000100580648930102
    0;255;3;0;9;Client 0: 3;0;4;0;1;6E00010058068FD5
    0;255;3;0;9;send: 0-0-3-3 s=0,c=4,t=1,pt=6,l=8,sg=0,st=fail:6E00010058068FD5
    0;255;3;0;9;read: 3-3-0 s=255,c=4,t=0,pt=6,l=10,sg=0:6E000100580648930102
    0;255;3;0;9;Client 0: 3;0;4;0;1;6E00010058068FD5
    0;255;3;0;9;send: 0-0-3-3 s=0,c=4,t=1,pt=6,l=8,sg=0,st=fail:6E00010058068FD5
    0;255;3;0;9;read and forward: 3-3-255 s=255,c=3,t=7,pt=1,l=0,sg=0
    0;255;3;0;9;send: 0-0-3-3 s=255,c=3,t=8,pt=1,l=1,sg=0,st=fail:0
    0;255;3;0;9;read and forward: 3-3-255 s=255,c=3,t=7,pt=1,l=0,sg=0
    0;255;3;0;9;send: 0-0-3-3 s=255,c=3,t=8,pt=1,l=1,sg=0,st=fail:0
    0;255;3;0;9;read and forward: 3-3-255 s=255,c=3,t=7,pt=1,l=0,sg=0
    0;255;3;0;9;send: 0-0-3-3 s=255,c=3,t=8,pt=1,l=1,sg=0,st=fail:0
    0;255;3;0;9;read and forward: 3-3-255 s=255,c=3,t=7,pt=1,l=0,sg=0
    0;255;3;0;9;send: 0-0-3-3 s=255,c=3,t=8,pt=1,l=1,sg=0,st=fail:0
    0;255;3;0;9;read and forward: 3-3-255 s=255,c=3,t=7,pt=1,l=0,sg=0
    0;255;3;0;9;send: 0-0-3-3 s=255,c=3,t=8,pt=1,l=1,sg=0,st=fail:0
    0;255;3;0;9;read and forward: 3-3-255 s=255,c=3,t=7,pt=1,l=0,sg=0
    0;255;3;0;9;send: 0-0-3-3 s=255,c=3,t=8,pt=1,l=1,sg=0,st=ok:0
    0;255;3;0;9;read: 3-3-0 s=255,c=3,t=15,pt=6,l=2,sg=0:0100
    0;255;3;0;9;send: 0-0-3-3 s=255,c=3,t=15,pt=0,l=2,sg=0,st=fail:
    0;255;3;0;9;read: 3-3-0 s=255,c=4,t=0,pt=6,l=10,sg=0:6E000100580648930102
    0;255;3;0;9;Client 0: 3;0;4;0;1;6E00010058068FD5
    0;255;3;0;9;send: 0-0-3-3 s=0,c=4,t=1,pt=6,l=8,sg=0,st=fail:6E00010058068FD5
    0;255;3;0;9;read: 3-3-0 s=255,c=4,t=0,pt=6,l=10,sg=0:6E000100580648930102
    0;255;3;0;9;Client 0: 3;0;4;0;1;6E00010058068FD5
    0;255;3;0;9;send: 0-0-3-3 s=0,c=4,t=1,pt=6,l=8,sg=0,st=fail:6E00010058068FD5
    0;255;3;0;9;read: 3-3-0 s=255,c=4,t=2,pt=6,l=6,sg=0:6E0001005706
    0;255;3;0;9;Client 0: 3;255;4;0;3;6E0001005706FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
    0;255;3;0;9;send: 0-0-3-3 s=255,c=4,t=3,pt=6,l=22,sg=0,st=fail:6E0001005706FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
    0;255;3;0;9;read: 3-3-0 s=255,c=4,t=2,pt=6,l=6,sg=0:6E0001005706
    0;255;3;0;9;Client 0: 3;255;4;0;3;6E0001005706FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
    0;255;3;0;9;send: 0-0-3-3 s=255,c=4,t=3,pt=6,l=22,sg=0,st=fail:6E0001005706FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
    0;255;3;0;9;read: 3-3-0 s=255,c=4,t=2,pt=6,l=6,sg=0:6E0001005706
    0;255;3;0;9;Client 0: 3;255;4;0;3;6E0001005706FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
    0;255;3;0;9;send: 0-0-3-3 s=255,c=4,t=3,pt=6,l=22,sg=0,st=fail:6E0001005706FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
    0;255;3;0;9;read: 3-3-0 s=255,c=4,t=2,pt=6,l=6,sg=0:6E0001005706
    0;255;3;0;9;Client 0: 3;255;4;0;3;6E0001005706FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
    0;255;3;0;9;send: 0-0-3-3 s=255,c=4,t=3,pt=6,l=22,sg=0,st=fail:6E0001005706FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
    0;255;3;0;9;read: 3-3-0 s=255,c=4,t=2,pt=6,l=6,sg=0:6E0001005706
    0;255;3;0;9;Client 0: 3;255;4;0;3;6E0001005706FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
    0;255;3;0;9;send: 0-0-3-3 s=255,c=4,t=3,pt=6,l=22,sg=0,st=fail:6E0001005706FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
    0;255;3;0;9;read: 3-3-0 s=255,c=4,t=2,pt=6,l=6,sg=0:6E0001005706
    0;255;3;0;9;Client 0: 3;255;4;0;3;6E0001005706FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
    0;255;3;0;9;send: 0-0-3-3 s=255,c=4,t=3,pt=6,l=22,sg=0,st=fail:6E0001005706FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
    0;255;3;0;9;read: 3-3-0 s=255,c=4,t=2,pt=6,l=6,sg=0:6E0001005706
    0;255;3;0;9;Client 0: 3;255;4;0;3;6E0001005706FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
    0;255;3;0;9;send: 0-0-3-3 s=255,c=4,t=3,pt=6,l=22,sg=0,st=fail:6E0001005706FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
    0;255;3;0;9;read: 3-3-0 s=255,c=4,t=2,pt=6,l=6,sg=0:6E0001005706
    0;255;3;0;9;Client 0: 3;255;4;0;3;6E0001005706FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
    0;255;3;0;9;send: 0-0-3-3 s=255,c=4,t=3,pt=6,l=22,sg=0,st=fail:6E0001005706FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
    0;255;3;0;9;read: 3-3-0 s=255,c=3,t=15,pt=6,l=2,sg=0:0100
    0;255;3;0;9;send: 0-0-3-3 s=255,c=3,t=15,pt=0,l=2,sg=0,st=fail:
    0;255;3;0;9;read: 3-3-0 s=255,c=4,t=0,pt=6,l=10,sg=0:6E000100580648930102
    0;255;3;0;9;Client 0: 3;0;4;0;1;6E00010058068FD5
    0;255;3;0;9;send: 0-0-3-3 s=0,c=4,t=1,pt=6,l=8,sg=0,st=fail:6E00010058068FD5
    0;255;3;0;9;read: 3-3-0 s=255,c=4,t=0,pt=6,l=10,sg=0:6E000100580648930102
    0;255;3;0;9;Client 0: 3;0;4;0;1;6E00010058068FD5
    0;255;3;0;9;send: 0-0-3-3 s=0,c=4,t=1,pt=6,l=8,sg=0,st=fail:6E00010058068FD5
    0;255;3;0;9;read: 3-3-0 s=255,c=4,t=2,pt=6,l=6,sg=0:6E0001005706
    0;255;3;0;9;Client 0: 3;255;4;0;3;6E0001005706FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
    0;255;3;0;9;send: 0-0-3-3 s=255,c=4,t=3,pt=6,l=22,sg=0,st=fail:6E0001005706FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
    0;255;3;0;9;read: 3-3-0 s=255,c=4,t=2,pt=6,l=6,sg=0:6E0001005706
    0;255;3;0;9;Client 0: 3;255;4;0;3;6E0001005706FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
    0;255;3;0;9;send: 0-0-3-3 s=255,c=4,t=3,pt=6,l=22,sg=0,st=fail:6E0001005706FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
    0;255;3;0;9;read: 3-3-0 s=255,c=4,t=2,pt=6,l=6,sg=0:6E0001005706
    0;255;3;0;9;Client 0: 3;255;4;0;3;6E0001005706FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
    0;255;3;0;9;send: 0-0-3-3 s=255,c=4,t=3,pt=6,l=22,sg=0,st=fail:6E0001005706FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
    0;255;3;0;9;read: 3-3-0 s=255,c=4,t=2,pt=6,l=6,sg=0:6E0001005706
    0;255;3;0;9;Client 0: 3;255;4;0;3;6E0001005706FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
    0;255;3;0;9;send: 0-0-3-3 s=255,c=4,t=3,pt=6,l=22,sg=0,st=fail:6E0001005706FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
    0;255;3;0;9;read: 3-3-0 s=255,c=4,t=2,pt=6,l=6,sg=0:6E0001005706
    0;255;3;0;9;Client 0: 3;255;4;0;3;6E0001005706FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
    0;255;3;0;9;send: 0-0-3-3 s=255,c=4,t=3,pt=6,l=22,sg=0,st=fail:6E0001005706FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
    0;255;3;0;9;read: 3-3-0 s=255,c=4,t=2,pt=6,l=6,sg=0:6E0001005706
    0;255;3;0;9;Client 0: 3;255;4;0;3;6E0001005706FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
    0;255;3;0;9;send: 0-0-3-3 s=255,c=4,t=3,pt=6,l=22,sg=0,st=fail:6E0001005706FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
    0;255;3;0;9;read: 3-3-0 s=255,c=4,t=2,pt=6,l=6,sg=0:6E0001005706
    0;255;3;0;9;Client 0: 3;255;4;0;3;6E0001005706FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
    0;255;3;0;9;send: 0-0-3-3 s=255,c=4,t=3,pt=6,l=22,sg=0,st=fail:6E0001005706FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
    0;255;3;0;9;read: 3-3-0 s=255,c=4,t=2,pt=6,l=6,sg=0:6E0001005706
    0;255;3;0;9;Client 0: 3;255;4;0;3;6E0001005706FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
    0;255;3;0;9;send: 0-0-3-3 s=255,c=4,t=3,pt=6,l=22,sg=0,st=fail:6E0001005706FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
    0;255;3;0;9;read: 3-3-0 s=255,c=3,t=15,pt=6,l=2,sg=0:0100
    0;255;3;0;9;send: 0-0-3-3 s=255,c=3,t=15,pt=0,l=2,sg=0,st=fail:
    0;255;3;0;9;read: 3-3-0 s=255,c=4,t=0,pt=6,l=10,sg=0:6E000100580648930102
    0;255;3;0;9;Client 0: 3;0;4;0;1;6E00010058068FD5
    0;255;3;0;9;send: 0-0-3-3 s=0,c=4,t=1,pt=6,l=8,sg=0,st=fail:6E00010058068FD5
    0;255;3;0;9;read: 3-3-0 s=255,c=4,t=0,pt=6,l=10,sg=0:6E000100580648930102
    0;255;3;0;9;Client 0: 3;0;4;0;1;6E00010058068FD5
    0;255;3;0;9;send: 0-0-3-3 s=0,c=4,t=1,pt=6,l=8,sg=0,st=fail:6E00010058068FD5
    0;255;3;0;9;read: 3-3-0 s=255,c=4,t=0,pt=6,l=10,sg=0:6E000100580648930102
    0;255;3;0;9;Client 0: 3;0;4;0;1;6E00010058068FD5
    0;255;3;0;9;send: 0-0-3-3 s=0,c=4,t=1,pt=6,l=8,sg=0,st=fail:6E00010058068FD5
    0;255;3;0;9;read and forward: 3-3-255 s=255,c=3,t=7,pt=1,l=0,sg=0
    0;255;3;0;9;send: 0-0-3-3 s=255,c=3,t=8,pt=1,l=1,sg=0,st=fail:0
    0;255;3;0;9;read and forward: 3-3-255 s=255,c=3,t=7,pt=1,l=0,sg=0
    0;255;3;0;9;send: 0-0-3-3 s=255,c=3,t=8,pt=1,l=1,sg=0,st=fail:0
    0;255;3;0;9;read and forward: 3-3-255 s=255,c=3,t=7,pt=1,l=0,sg=0
    0;255;3;0;9;send: 0-0-3-3 s=255,c=3,t=8,pt=1,l=1,sg=0,st=fail:0
    0;255;3;0;9;read and forward: 3-3-255 s=255,c=3,t=7,pt=1,l=0,sg=0
    0;255;3;0;9;send: 0-0-3-3 s=255,c=3,t=8,pt=1,l=1,sg=0,st=fail:0
    0;255;3;0;9;read and forward: 3-3-255 s=255,c=3,t=7,pt=1,l=0,sg=0
    0;255;3;0;9;send: 0-0-3-3 s=255,c=3,t=8,pt=1,l=1,sg=0,st=fail:0
    0;255;3;0;9;read and forward: 3-3-255 s=255,c=3,t=7,pt=1,l=0,sg=0
    0;255;3;0;9;send: 0-0-3-3 s=255,c=3,t=8,pt=1,l=1,sg=0,st=fail:0
    0;255;3;0;9;read and forward: 3-3-255 s=255,c=3,t=7,pt=1,l=0,sg=0
    0;255;3;0;9;send: 0-0-3-3 s=255,c=3,t=8,pt=1,l=1,sg=0,st=fail:0
    0;255;3;0;9;read and forward: 3-3-255 s=255,c=3,t=7,pt=1,l=0,sg=0
    0;255;3;0;9;send: 0-0-3-3 s=255,c=3,t=8,pt=1,l=1,sg=0,st=fail:0
    0;255;3;0;9;read and forward: 3-3-255 s=255,c=3,t=7,pt=1,l=0,sg=0
    0;255;3;0;9;send: 0-0-3-3 s=255,c=3,t=8,pt=1,l=1,sg=0,st=fail:0
    0;255;3;0;9;read and forward: 3-3-255 s=255,c=3,t=7,pt=1,l=0,sg=0
    0;255;3;0;9;send: 0-0-3-3 s=255,c=3,t=8,pt=1,l=1,sg=0,st=fail:0
    0;255;3;0;9;read and forward: 3-3-255 s=255,c=3,t=7,pt=1,l=0,sg=0
    0;255;3;0;9;send: 0-0-3-3 s=255,c=3,t=8,pt=1,l=1,sg=0,st=fail:0
    0;255;3;0;9;read and forward: 3-3-255 s=255,c=3,t=7,pt=1,l=0,sg=0
    0;255;3;0;9;send: 0-0-3-3 s=255,c=3,t=8,pt=1,l=1,sg=0,st=fail:0
    0;255;3;0;9;read and forward: 3-3-255 s=255,c=3,t=7,pt=1,l=0,sg=0
    0;255;3;0;9;send: 0-0-3-3 s=255,c=3,t=8,pt=1,l=1,sg=0,st=fail:0
    0;255;3;0;9;read and forward: 3-3-255 s=255,c=3,t=7,pt=1,l=0,sg=0
    0;255;3;0;9;send: 0-0-3-3 s=255,c=3,t=8,pt=1,l=1,sg=0,st=fail:0
    0;255;3;0;9;read and forward: 3-3-255 s=255,c=3,t=7,pt=1,l=0,sg=0
    0;255;3;0;9;send: 0-0-3-3 s=255,c=3,t=8,pt=1,l=1,sg=0,st=fail:0
    0;255;3;0;9;read and forward: 3-3-255 s=255,c=3,t=7,pt=1,l=0,sg=0
    0;255;3;0;9;send: 0-0-3-3 s=255,c=3,t=8,pt=1,l=1,sg=0,st=fail:0
    0;255;3;0;9;read and forward: 3-3-255 s=255,c=3,t=7,pt=1,l=0,sg=0
    0;255;3;0;9;send: 0-0-3-3 s=255,c=3,t=8,pt=1,l=1,sg=0,st=fail:0
    0;255;3;0;9;read and forward: 3-3-255 s=255,c=3,t=7,pt=1,l=0,sg=0
    0;255;3;0;9;send: 0-0-3-3 s=255,c=3,t=8,pt=1,l=1,sg=0,st=fail:0
    0;255;3;0;9;read and forward: 3-3-255 s=255,c=3,t=7,pt=1,l=0,sg=0
    0;255;3;0;9;send: 0-0-3-3 s=255,c=3,t=8,pt=1,l=1,sg=0,st=fail:0
    0;255;3;0;9;read and forward: 3-3-255 s=255,c=3,t=7,pt=1,l=0,sg=0
    0;255;3;0;9;send: 0-0-3-3 s=255,c=3,t=8,pt=1,l=1,sg=0,st=fail:0
    0;255;3;0;9;read and forward: 3-3-255 s=255,c=3,t=7,pt=1,l=0,sg=0
    0;255;3;0;9;send: 0-0-3-3 s=255,c=3,t=8,pt=1,l=1,sg=0,st=fail:0
    0;255;3;0;9;read: 3-3-0 s=255,c=3,t=15,pt=6,l=2,sg=0:0100
    0;255;3;0;9;send: 0-0-3-3 s=255,c=3,t=15,pt=0,l=2,sg=0,st=fail:
    0;255;3;0;9;read: 3-3-0 s=255,c=4,t=0,pt=6,l=10,sg=0:6E000100580648930102
    0;255;3;0;9;Client 0: 3;0;4;0;1;6E00010058068FD5
    0;255;3;0;9;send: 0-0-3-3 s=0,c=4,t=1,pt=6,l=8,sg=0,st=fail:6E00010058068FD5
    0;255;3;0;9;read: 3-3-0 s=255,c=4,t=0,pt=6,l=10,sg=0:6E000100580648930102
    0;255;3;0;9;Client 0: 3;0;4;0;1;6E00010058068FD5
    0;255;3;0;9;send: 0-0-3-3 s=0,c=4,t=1,pt=6,l=8,sg=0,st=fail:6E00010058068FD5
    0;255;3;0;9;read: 3-3-0 s=255,c=4,t=0,pt=6,l=10,sg=0:6E000100580648930102
    0;255;3;0;9;Client 0: 3;0;4;0;1;6E00010058068FD5
    0;255;3;0;9;send: 0-0-3-3 s=0,c=4,t=1,pt=6,l=8,sg=0,st=fail:6E00010058068FD5
    

  • Admin

    @Anduril There are some communication issues here, i.e. the node radio doesn't not appear to receive msgs. If you put GW and node further away, different position, away from interference sources (wifi, speaker, monitor, etc.) do you see any improvements? Also you should try with different radios, larger caps, decoupling caps, stable PSU or batteries. What type of nRF24 are you using? Genuine, Clones (blob-version?).



  • @tekka I tried a few combinations: different positions (nearest ~20cm, farest ~5m with walls), radios (probably clones, but no blobs, nRF from mysensors store and others, also pa+lna for gateway) and different caps with no success. Still quite a lot of packages lost during transmision.
    I then reflashed the old bootloader again and it worked flawless for 5m and 20cm.


  • Admin

    @Anduril Can you re-test this version of MYSBootloader (16Mhz, CH76, 250kbp) with the most recent dev 2.0.0 version (i.e. GW), clearing EEPROM before flashing is advisable. In my setup, I get pretty decent data rates for OTA updates...



  • @tekka I will test this asap (hopefully this weekend). One point for clearing EEPROM: do you know if the sketch also works on the ESP8266? Because I thought to have cleared the EEPROM and uploaded a sketch without wifi config, but it still connected to my wifi.



  • @tekka I did test your new bootloader, with no success. I also tried to use the nano with 8Mhz internal clock, but same result.
    Here again the serial debug of my ESP8266 gateway:
    With the new bootloader:

    0;255;3;0;9;read: 5-5-0 s=255,c=3,t=15,pt=6,l=2,sg=0:0100
    0;255;3;0;9;send: 0-0-5-5 s=255,c=3,t=15,pt=0,l=2,sg=0,st=ok:
    0;255;3;0;9;read: 5-5-0 s=255,c=4,t=0,pt=6,l=10,sg=0:FFFFFFFFFFFFAA160102
    0;255;3;0;9;Client 0: 5;0;4;0;1;6E000100000819CC
    0;255;3;0;9;send: 0-0-5-5 s=0,c=4,t=1,pt=6,l=8,sg=0,st=ok:6E000100000819CC
    0;255;3;0;9;read and forward: 5-5-255 s=255,c=3,t=7,pt=1,l=0,sg=0
    0;255;3;0;9;send: 0-0-5-5 s=255,c=3,t=8,pt=1,l=1,sg=0,st=ok:0
    0;255;3;0;9;read: 5-5-0 s=255,c=3,t=15,pt=6,l=2,sg=0:0100
    0;255;3;0;9;send: 0-0-5-5 s=255,c=3,t=15,pt=0,l=2,sg=0,st=ok:
    0;255;3;0;9;read: 5-5-0 s=255,c=4,t=0,pt=6,l=10,sg=0:FFFFFFFFFFFFAA160102
    0;255;3;0;9;Client 0: 5;0;4;0;1;6E000100000819CC
    0;255;3;0;9;send: 0-0-5-5 s=0,c=4,t=1,pt=6,l=8,sg=0,st=fail:6E000100000819CC
    0;255;3;0;9;read: 5-5-0 s=255,c=4,t=0,pt=6,l=10,sg=0:FFFFFFFFFFFFAA160102
    0;255;3;0;9;Client 0: 5;0;4;0;1;6E000100000819CC
    0;255;3;0;9;send: 0-0-5-5 s=0,c=4,t=1,pt=6,l=8,sg=0,st=ok:6E000100000819CC
    0;255;3;0;9;read and forward: 5-5-255 s=255,c=3,t=7,pt=1,l=0,sg=0
    0;255;3;0;9;send: 0-0-5-5 s=255,c=3,t=8,pt=1,l=1,sg=0,st=ok:0
    0;255;3;0;9;read: 5-5-0 s=255,c=3,t=15,pt=6,l=2,sg=0:0100
    0;255;3;0;9;send: 0-0-5-5 s=255,c=3,t=15,pt=0,l=2,sg=0,st=ok:
    0;255;3;0;9;read: 5-5-0 s=255,c=4,t=0,pt=6,l=10,sg=0:FFFFFFFFFFFFAA160102
    0;255;3;0;9;Client 0: 5;0;4;0;1;6E000100000819CC
    0;255;3;0;9;send: 0-0-5-5 s=0,c=4,t=1,pt=6,l=8,sg=0,st=ok:6E000100000819CC
    0;255;3;0;9;read and forward: 5-5-255 s=255,c=3,t=7,pt=1,l=0,sg=0
    0;255;3;0;9;send: 0-0-5-5 s=255,c=3,t=8,pt=1,l=1,sg=0,st=ok:0
    0;255;3;0;9;read: 5-5-0 s=255,c=3,t=15,pt=6,l=2,sg=0:0100
    0;255;3;0;9;send: 0-0-5-5 s=255,c=3,t=15,pt=0,l=2,sg=0,st=ok:
    0;255;3;0;9;read: 5-5-0 s=255,c=4,t=0,pt=6,l=10,sg=0:FFFFFFFFFFFFAA160102
    0;255;3;0;9;Client 0: 5;0;4;0;1;6E000100000819CC
    0;255;3;0;9;send: 0-0-5-5 s=0,c=4,t=1,pt=6,l=8,sg=0,st=ok:6E000100000819CC
    

    with the old bootloader:

    0;255;3;0;9;read: 6-6-0 s=255,c=4,t=2,pt=6,l=6,sg=0:6E000100FD07
    0;255;3;0;9;Client 0: 6;255;4;0;3;6E000100FD070895262FF999FECF92BD81BDF89A0197
    0;255;3;0;9;send: 0-0-6-6 s=255,c=4,t=3,pt=6,l=22,sg=0,st=ok:6E000100FD070895262FF999FECF92BD81BDF89A0197
    0;255;3;0;9;read: 6-6-0 s=255,c=4,t=2,pt=6,l=6,sg=0:6E000100FC07
    0;255;3;0;9;Client 0: 6;255;4;0;3;6E000100FC07CB01840F951F2E9105D041505040D8F7
    0;255;3;0;9;send: 0-0-6-6 s=255,c=4,t=3,pt=6,l=22,sg=0,st=ok:6E000100FC07CB01840F951F2E9105D041505040D8F7
    0;255;3;0;9;read: 6-6-0 s=255,c=4,t=2,pt=6,l=6,sg=0:6E000100FB07
    0;255;3;0;9;Client 0: 6;255;4;0;3;6E000100FB07B8F70895DC01A40FB51F4150504040F0
    0;255;3;0;9;send: 0-0-6-6 s=255,c=4,t=3,pt=6,l=22,sg=0,st=ok:6E000100FB07B8F70895DC01A40FB51F4150504040F0
    0;255;3;0;9;read: 6-6-0 s=255,c=4,t=2,pt=6,l=6,sg=0:6E000100FA07
    0;255;3;0;9;Client 0: 6;255;4;0;3;6E000100FA07F2BDE1BDF89A319600B40D9241505040
    0;255;3;0;9;send: 0-0-6-6 s=255,c=4,t=3,pt=6,l=22,sg=0,st=ok:6E000100FA07F2BDE1BDF89A319600B40D9241505040
    0;255;3;0;9;read: 6-6-0 s=255,c=4,t=2,pt=6,l=6,sg=0:6E000100F907
    0;255;3;0;9;Client 0: 6;255;4;0;3;6E000100F90711240895DC01CB01FC01F999FECF06C0
    0;255;3;0;9;send: 0-0-6-6 s=255,c=4,t=3,pt=6,l=22,sg=0,st=ok:6E000100F90711240895DC01CB01FC01F999FECF06C0
    0;255;3;0;9;read: 6-6-0 s=255,c=4,t=2,pt=6,l=6,sg=0:6E000100F807
    0;255;3;0;9;Client 0: 6;255;4;0;3;6E000100F807990B08957AE0979F902D879F802D910D
    0;255;3;0;9;send: 0-0-6-6 s=255,c=4,t=3,pt=6,l=22,sg=0,st=ok:6E000100F807990B08957AE0979F902D879F802D910D
    0;255;3;0;9;read: 6-6-0 s=255,c=4,t=2,pt=6,l=6,sg=0:6E000100F707
    0;255;3;0;9;Client 0: 6;255;4;0;3;6E000100F7078D910190801921F441505040C8F7881B
    0;255;3;0;9;send: 0-0-6-6 s=255,c=4,t=3,pt=6,l=22,sg=0,st=ok:6E000100F7078D910190801921F441505040C8F7881B
    0;255;3;0;9;read: 6-6-0 s=255,c=4,t=2,pt=6,l=6,sg=0:6E000100F607
    0;255;3;0;9;Client 0: 6;255;4;0;3;6E000100F6071EF4909581959F4F0895FB01DC0104C0
    0;255;3;0;9;send: 0-0-6-6 s=255,c=4,t=3,pt=6,l=22,sg=0,st=ok:6E000100F6071EF4909581959F4F0895FB01DC0104C0
    0;255;3;0;9;read: 6-6-0 s=255,c=4,t=2,pt=6,l=6,sg=0:6E000100F507
    0;255;3;0;9;Client 0: 6;255;4;0;3;6E000100F50703C018D0820F911D219120532A30C8F3
    0;255;3;0;9;send: 0-0-6-6 s=255,c=4,t=3,pt=6,l=22,sg=0,st=ok:6E000100F50703C018D0820F911D219120532A30C8F3
    0;255;3;0;9;read: 6-6-0 s=255,c=4,t=2,pt=6,l=6,sg=0:6E000100F407
    0;255;3;0;9;Client 0: 6;255;4;0;3;6E000100F40710F02E30C8F32B3239F02D3231F46894
    0;255;3;0;9;send: 0-0-6-6 s=255,c=4,t=3,pt=6,l=22,sg=0,st=ok:6E000100F40710F02E30C8F32B3239F02D3231F46894
    0;255;3;0;9;read: 6-6-0 s=255,c=4,t=2,pt=6,l=6,sg=0:6E000100F307
    0;255;3;0;9;Client 0: 6;255;4;0;3;6E000100F307FC0188279927E89421912032E9F32930
    0;255;3;0;9;send: 0-0-6-6 s=255,c=4,t=3,pt=6,l=22,sg=0,st=ok:6E000100F307FC0188279927E89421912032E9F32930
    

    just for completeness my settings for burning the old bootloader:

    nano.name=Arduino Nano
    nano.upload.tool=avrdude
    nano.upload.protocol=arduino
    nano.bootloader.tool=avrdude
    nano.bootloader.unlock_bits=0x3F
    nano.bootloader.lock_bits=0x0F
    nano.build.f_cpu=16000000L
    nano.build.board=AVR_NANO
    nano.build.core=arduino
    nano.build.variant=eightanaloginputs
    nano.menu.cpu.MYSBLoldatmega328=ATmega328 MYSBootloader old
    nano.menu.cpu.MYSBLoldatmega328.upload.maximum_size=30720
    nano.menu.cpu.MYSBLoldatmega328.upload.maximum_data_size=2048
    nano.menu.cpu.MYSBLoldatmega328.upload.speed=115200
    nano.menu.cpu.MYSBLoldatmega328.bootloader.low_fuses=0xFF
    nano.menu.cpu.MYSBLoldatmega328.bootloader.high_fuses=0xDA
    nano.menu.cpu.MYSBLoldatmega328.bootloader.extended_fuses=0x05
    nano.menu.cpu.MYSBLoldatmega328.bootloader.file=MySensors/MYSBootloader.hex
    

    And to note something I noticed (but don't know if it's related): sometimes the MYSController loses it's connection to the gateway. Serial monitor is still printing values but nothing in MYSController. When I reconnect the Controller it is working again.

    edit: and is it normal that a sketch needs more than 20 min to upload? I mean the sketch is quite big (>70% of max), but it seems to be to long even with the old (for me faster) bootloader.

    edit2: one hour and about 24k messages (MsgID in MYSController) later my node is still updating...



  • Did any one able to make this work with atmega328p-PU 28 DIP 8MHz internal clock? or is it just me having problems with this boot loader?

    I was able to load the boot loader successfully and able to upload a sketch but then nothing happen, i see nothing in the serial port (default 115200) and the gateway does not find any node.

    I am using latest dev branch of 2.0 and the boot loader from this thread.

    Just for compression i loaded another boot loader for 8MHz internal clock (Arduino on breadboard) and uploaded a sketch to it and it worked perfectly communicating with the gateway.

    I want to be able to upload OTA.

    AM i doing something wrong? does this boot loader even supports this MCU?



  • I have a node with the NRF already soldered. Since Arduino as ISP uses some of the pins used by the NRF, is there anything I can do to flash the bootloader without unsoldering the NRF? Thanks!



  • This post is deleted!


  • @abmantis You can just solder ISP wires to arduino without disconneting NRF. It's programming well (I've already tested this solution with my network)



  • @Алексей-Гусаров Thank you! Will try that soon 🙂
    Any updates regarding the bootloader?



  • I managed to use the bootloader with version 2.0, thanks.



  • Yeah, the bootloader works well with the v2.0 release.
    The major issue it has currently is that sometimes it takes quite a long time to flash a sketch. It seems that when the wireless connection is not perfect, it stops for 2 or 3 seconds multiple times. Like, send 10 packages, stop 3 seconds, send 5 packages, stop again.



  • any news about 1.3 final release?



  • @tekka
    I used the MYSBootloader 1.3pre with version 2.0.0
    I managed to upload FW to nodes with MYSController.

    As mention:
    "supports OTA FW AND serial FW updates"

    But I cannot get anything to serial port with the nodes.
    Is the serial option really works on this bootloader?
    the specs:
    1.board - my own developed board with atmega328p au without external clock.
    2.board.txt:

    ######## settings for 8Mhz internal clock, EESAVE, BOD1V8, no lock
    proMYSBL8.name=ATmega328 internal 8Mhz with MYSBootloader
    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=0x06
    proMYSBL8.bootloader.unlock_bits=0x3F
    proMYSBL8.bootloader.lock_bits=0x3F
    proMYSBL8.bootloader.file=MySensors/MYSBootloaderV13pre.hex
    proMYSBL8.build.mcu=atmega328p
    proMYSBL8.build.f_cpu=8000000L
    proMYSBL8.build.board=AVR_UNO
    proMYSBL8.build.core=arduino
    proMYSBL8.build.variant=standard 
    
    1. the bootloader hex file is : MYSBootloaderV13pre.hex from MYSController 1.0.0beta

    So is serial possible or/and should I change something?



  • @Mickey :
    It's the same problem i've posted about 4 months ago here.. i also cant run sketches i've uploaded via serial..
    i hope it is solved with a new release...maybe the final already @tekka?


  • Admin

    @Mickey There are some issues with Arduino IDE 1.6.10 and avrdude 6.3 - do you happen to have 1.6.10 installed?



  • @tekka
    My arduino IDE: 1.6.11
    The avrdude inside that arduino IDE is: 6.0.1


  • Admin

    @Mickey And what is the output when it fails? Can you try the bootloader with on a 16Mhz board and 115200bps?



  • @tekka
    It's not failing the node is functional and I can upload a sketch to it via MYSController but It cannot get sketch from the arduino IDE (the IDE gives the normal output that upload complete and all OK without any Error notice but after it the node doesn't have a FW on it and even if I upload some basic sketch that spit Serial to monitor nothing happen.)
    I will try to upload the bootloader to an Arduino nano node to see if on 16Mhz board and 115200bps the problem exist.
    Also you mention that the hex file compiled to 16Mhz board and 115200bps , maybe it should also compile on a internal 8Mhz to fix this.


  • Admin

    @Mickey Ok, I see, this is something related to the internal checksum, need to adjust that. In short: the bootloader doesn't hand over to the sketch



  • @tekka
    Hi tekka, are the source already available. I'm moving all my setup to mysensor 2.0.1 so your new bootloader is very interesting.
    But on my setup I need a small customization.
    I have 3 areas with 3 GW and each area with a different RF channel.
    So I add a configuration switch to my nodes to select the channel.
    I already modified the mysensor Library for this feature.
    That why I'm asking for source code, in order to add this on bootloader too.

    Thank and nice job


  • Admin

    @Lorenzo not finalized, need to revise the stk500 code



  • @tekka
    Hi, thank for your quick answer. Yes software are never finalized 😄
    Even a beta release can be ok to me in order to start testing the new setup.
    I will start with some micro pro 3.3V 8MHz external quartz.
    Also if I can help in coding or debugging, happy to help. I spend lot of time programming AVR. Please don't hesitate, ask (PM).
    In any case up to you to decide when starting publishing the first release.

    Thank for your job and looking forward to test the bootloader



  • Ohh. I'm also very eager to have my hands on the source of the beta. Please share so that we can help finalize it. I have a bunch of sensors ready for deployment, but I need a bootloader that can upgrade them. Since software is never ready 😄

    ///Redferne



  • Hi all.
    Hands up I have not read the whole thread so apologies! I was just wondering on status of RFM69? I am about to embark on an upgrade of all my node from rf24 -> rfm69 and 1.5 -> 2.0 and would like to also add OTA while I am at it.

    Thanks!



  • @Fabien said:

    I try to add new hex file in MYSController 1.0 but after clicking "reload repo", it tells me 2107-15-31 is not a valid date specification. I don't have the ability to select firmware after this. And after a reboot the "reload repo" is garyed.

    @Fabien You have two or more blank lines in your firmware_config.csv. This causes the error message. If you remove them and click on Reload Repo the error will be gone.



  • @abmantis

    I have same problem. Did you solve the problem?



  • @yd-kim What problem?



  • @abmantis
    You did post following 2months ago and I have same problem too.
    If you solve the problem, please share it.

    Yeah, the bootloader works well with the v2.0 release.
    The major issue it has currently is that sometimes it takes quite a long time to flash a sketch. It seems that when the wireless connection is not perfect, it stops for 2 or 3 seconds multiple times. Like, send 10 packages, stop 3 seconds, send 5 packages, stop again.

    Thanks.



  • @yd-kim Ah that! Nope, unfortunately it stills takes a long time to flash. We probably need an updated bootloader.



  • @abmantis DO you have the serial upload working? I never got it working and gave up some day. I am using the old bootloader which is uploading ota much faster than the new. Maybe you can also test and confirm this?



  • @Anduril
    I did some thest.
    1.3Pre.hex in 1.0.0Beta : it works with serial upload but take too long time(about an hour) to use OTA or fail.
    1.1 (?) which is in 0.1.2 folder : it takes about 10 minutes and works well but doesn't work with Serial upload which is normal way to upload firmware in Arduino.
    Thank you for all help.



  • @yd-kim said:

    1.3Pre.hex in 1.0.0Beta : it works with serial upload

    i couldn't get the 1.3pre work with serial upload, its interesting to see you could.



  • @tekka said:

    @Mickey Ok, I see, this is something related to the internal checksum, need to adjust that. In short: the bootloader doesn't hand over to the sketch

    Has this adjusted already?


  • Hardware Contributor

    Hi @tekka, can you help me?
    I want to start exchanging between my MDMSGate device and MYSController via Ethernet. But I don't use Ethernet Shield W5100 in my MDMSGate, I use microcontroller PIC18F67J60 instead. I have uploaded to the PIC18F67J60 firmware which converts TCP/IP packets to serial and conversely.
    0_1474892376023_Ethernet_gateway.jpg
    In atmega328P I use the serial gateway sketch. So, I can't connect MYSController to my MDMSGate. Can you explain me, how MYSController exchanges with gateway generally? In an exchange through CP2102 (as a serial gateway mode) everything works well.



  • In the "firmware_config.csv" file, on the first line it says:

    Type,Name,Version,File,Comments
    

    I know that it is there to explain how to add new lines to the file.
    But I don't know what "Type" is used for.
    The two examples have the numbers 10 and 20. I added a 30 and it seems to work but I would like to know what it's for.

    Thanks



  • @Anduril Haven't tried serial yet. The old bootloader seemed indeed a bit faster. I also noticed that if I touch pin 10 with my finger, it gets really fast! It just sends the packages continuously without stoping. As soon as I stop touching pin 10, it pauses.

    The gw and the node were like 1 meter, so it is not a distance problem. Also tried moving them closer and apart.



  • This post is deleted!


  • @abmantis Interesting. Can you let me know a little bit further detail?
    You mean Arduino pro mini pin 10? That pin is connected to CSN on NRF24L01.
    I'm keen to find the issue why it get slow.. It took 20-30minutes to upload new firmware....



  • @yd-kim Yes, just touch Arduino's pin 10. Dunno if it is a particularity with this Arduino or radio. It updates the node in about 20 seconds!



  • Hi @tekka, I'm having the very same issue as @Mickey so I just wanted to ask if there is any workaround to that or if happen to make the adjustment to the bootloader. Thanks a lot! Original comment


  • Admin

    @Jan-Hicl This has been fixed - did you try the most recent version from github?



  • Hi @tekka and thanks for getting back to me! I tried the latest version however with no success. The node that I update is still marked as "Booting" even though I upload Blink.hex. Strangely enough, the led is blinking as it's supposed to blink and if I request presentation the node replies with correct sketch name but then it goes back to Booting. I'm using Arduino IDE 1.8.1, AVRdude v6.1 and MYScontroller v1.0.0 beta (build 3314). I'm using Arduino mini pro, 3V3, 8MHz. I have 5 different nodes but all of them with the same behavior so it does not seem as an HW issue.

    Here is my log from the upload of Blink.hex: http://pastebin.com/9grgHb27 Would you have any idea how could I fix that? Thanks!


  • Admin

    @Jan-Hicl The blink sketch is somewhat special - it only blinks the built-in LED until the watchdog kicks in and resets the node. What happens if you upload one of your sketches? Please post the full debug log + source. Thanks



  • I did success with MySBootloader 1.3 beta 3 (https://github.com/mysensors/MySensorsBootloaderRF24 )
    It works both arduino and OTA firmware upgrade however it takes longer to boot up (means switch to firmware) about 3-5seconds.
    I'm using MYSensors 2.1.0 and MYController (http://www.mycontroller.org) on arduino pro mini 8Mhz 3.3V.

    How many sensor you try at the same time?
    From memory When I do firmware update for 3-4 sensors, I have to change "Tx message processing delay" to 300ms.
    If it's shorter than 300ms, keep rebooting some stage.

    I didn't use MYScontroller but probably it has similar setting.



  • Thanks @tekka for a prompt response!

    I tried to upload https://github.com/mysensors/MySensors/blob/master/examples/AirQualitySensor/AirQualitySensor.ino
    here is the log: http://pastebin.com/Tc5vhEnF
    You can see that the node is successfully running with TimeReporter but AirQualitySensor cannot make it from booting. However, this is happening even with highly modified AirQualitySensor sketch or some of my custom sketches. In the log, you can also see that if I request presentation of that node it replies with correct sketch name.

    Please let me know if you need some more info. Thanks in advance!


  • Admin

    @Jan-Hicl Please also post the full debug log of the node (running AirQualitySensor).



  • @tekka here is the AirQualitySensor node log: http://pastebin.com/XWfFCbUx


  • Admin

    @Jan-Hicl The GW and node logs are inconsistent: your GW log shows a rebooting node 1 - the node log shows a running node trying to establish the uplink. Do you have logs from GW and node taken simultaneously?



  • Sorry @tekka, should've sent this in the first post. Here is AirQuality sensor node log: http://pastebin.com/9MVtfRNV
    Here is gateway log: http://pastebin.com/QNpmBz4m
    Both of them logged simultaneously. Node Id I'm updating is 1. In the log you can again see that TimeReporter is working well before the flashing. Please let me know if there is anything I can provide you with in order to solve this... Thanks!



  • Hello
    I succed to program booloader but y can not add my sketch to arduino with serial or USB line.
    Is is activated by default?
    Thanks.



  • Hi @tekka any update what could be wrong with the upload? Any advice on a workaround? Thanks!


  • Admin

    @Jan-Hicl The upload via bootloader is ok (the sketch is running - based on your debug log) - so no issue here.
    However, you may have some issues with the CPU frequency (wrong board selected when compiling?) - there are scrambled chars in the debug output:

    Starting óensor (RNNNA-, 2.0.0)
    TSM:INIT
    TSM:RADIO:OK
    TSP:ASSIGNID:OK (ID=1)
    TSM:FPAR
    TSP:MSG:ÓEND 1-1-255-255 s=255,c=3,t=7,pt=0,l=0,sg=0,ft=0,st=bc:
    TSP:MSG:READ 0-0-1 s=255,c=3,t=8,pt=1,l=1,sg=0:0
    TSP:MSG:FPAR RES (IÄ=0, dist=0)
    TSP:MSG:PAR OK (ÉD=0, dist=1)
    TSM:FPAR:OK
    TSM:ID
    TSM:CHKID:OË (ID=1)
    TSM:UPL
    TSP:PING:SEND (dest=0)
    TSP:MSG:SEND 1-1-0-0 s=255,c=3,t=24,pt=1,l=1,sg=0,ft=0,st=ok:1
    TSP:CHKUPL:FAIL (hops=255)
    !TSM:UPL:FAIÌ
    TSM:FPAR
    TSP:MSG:SEND 1-1-255-255 s=255,c=3,t=7,pt=0,l=0,sg=0,ft=0,st=bc:
    TSP:MSG:READ 2-2-255 s=255,c=3,t=7,pt=0,l=0,sg=0:
    TSP:MSG:BC
    TSP:MSG:ÒEAD 0-0-1 s=255,c=3,t=8,pt=1,l=1,sg=0:0
    ÔSP:MSG:FPAR RES (ID=0, dist=0)
    TSP:MSG:PAR OK (ID=0, diót=1)
    TSM:ÆPAR:OK
    

  • Hardware Contributor

    How do we go about compiling this for 8MHz crystal (Internal and External), i'm sure this has already been asked but I can't seem to search through this post very efficiently... Sorry if it has been covered already, just a link back or something would probably suit me if it has been 🙂



  • Nice job, the last bootloader seems to run in good conditions.

    I use MySensors 2.2.0 beta, MYSController 1.0.0 (3314) and the last version MYSbootloader 1.3.0-beta.4 (https://github.com/mysensors/MySensorsBootloaderRF24)

    Update, flash, firmware via OTA is ok.

    But 1 problem occurs when a node reboot.
    I tried to isolate the problem, so I think that's arround the presentation request.

    When I click on "request presentation", I got it

    http://hpics.li/93e8861

    and below the debug output (via serial) of the node

    70437 TSF:MSG:READ,0-0-1,s=0,c=3,t=19,pt=0,l=1,sg=0:0
    70445 TSF:MSG:SEND,1-1-0-0,s=255,c=3,t=15,pt=6,l=2,sg=0,ft=0,st=OK:0100
    70453 TSF:MSG:READ,0-0-1,s=255,c=3,t=15,pt=6,l=2,sg=0:0100
    70460 TSF:MSG:SEND,1-1-0-0,s=255,c=0,t=17,pt=0,l=10,sg=0,ft=0,st=OK:2.2.0-beta
    70469 TSF:MSG:SEND,1-1-0-0,s=255,c=3,t=6,pt=1,l=1,sg=0,ft=0,st=OK:0
    70497 TSF:MSG:READ,0-0-1,s=255,c=3,t=6,pt=0,l=1,sg=0:M
    70504 TSF:MSG:SEND,1-1-0-0,s=255,c=3,t=11,pt=0,l=8,sg=0,ft=0,st=OK:OTA Test
    70512 TSF:MSG:SEND,1-1-0-0,s=255,c=3,t=12,pt=0,l=1,sg=0,ft=0,st=OK:1
    70521 TSF:MSG:SEND,1-1-0-0,s=1,c=0,t=3,pt=0,l=8,sg=0,ft=0,st=OK:Sensor 1
    

    Maybe a bug or where is the mistake ?

    Thanks in advance foryour help

    Edit: After a couple of test, the problem is related to the gateway with MySensor Library version 2.2.0 beta.
    All nodes (2.1.1 & 2.2.0 libs) from my network present the same error.
    Probably a vartype unexpected by the Gateway (2.2.0 lib).

    The serial Gateway (2.1.1) is ok



  • @Nicolas-Charrier
    Hello @tekka , I have the same problem.

    I am trying to set up my Serial Gateway. I flashed the OTA bootloader but how can I upload the Gateway sketch through Serial ?

    I tried to use the MySysController but the node is not presented so that I can flash new firware with the Gateway sketch. It only worked when I flashed normal Optiboot bootloader and then flashed the Serial Gateway sketch through Serial, then I connected the Gateway to the Controller and the presentation worked well. Thus I now have a Gateway which I can flash other nodes with through OTA.

    Is there another way to flash a gateway sketch other than this ?

    Thanks.


  • Admin

    @ahmedadelhosni Why would you want to flash MYSBootloader on your GW? OTA FW update capabilities only make sense on sensor nodes...



  • @tekka I just thought that if I flashed a bootloader on a new hardware IC then I can decide whether to flash GW or sensor node when connected to the serial computer.



  • I see that after compiling I get to choose between sketch.ino.hex and sketch.ino.with_bootloader.hex
    Is it possible to update the bootloader OTA by using this hex file instead? Which is the best bootloader available now, because my nodes are now on 1.3pre (from topic start).



  • How does GW mode actually work - I have been trying to relay a connection to Vera but not matter what combination I am trying I cannot understand how the GW mode operates?


  • Admin

    @itbeyond Have you opened up your firewall so the Vera can communicate with the computer running MYSController?
    Here is how I have MYSContoller configured...
    First, connect MYSController to your existing gateway (if you are using Ethernet
    you only want one device to connect so don't have your Vera connected at the same time)
    0_1510582509499_upload-28bab7f1-4863-41bc-a749-179cb82ecf6c
    Once you do that you need to choose a port in the settings:
    0_1510582093482_upload-14ac4c29-1501-49ea-b0c5-d7503a02b769

    Then you press Connect (to connect to the actual Ethernet or Serial gateway).
    Once connected turn on GW Mode (mine is grayed out because I'm not at home connected to my gateway):
    0_1510582137860_upload-dd16413a-ef4c-4c1f-9dd9-7377f5090ed5
    In your Vera you would obviously want to connect to the IP address of the computer running MYSController
    0_1510582624549_upload-5296052c-b9b0-446b-b089-259b375d11e9



  • I have problems connecting a serial NRF24 gateway to MYSController b3314. After some minutes working properly, no more messages seem to get received by MYSController. If I disconnect and connect again (button, not USB), it works for about the same time until it stops again.
    I put a second USB2serial in parallel and connected a terminal program (hterm). The terminal programm continuously receives messages, even when MYSController stops receiving. So it's no gateway issue.
    I tried several different USB2serial adapter with MYSController - no difference.
    Any idea how to get MYSController to work continuously ?



  • @petewill - Thanks of course Windows Firewall - how many times does one have to forget about that little gem. One other quick question I created a new post in controllers for a MYSBootloader issue - should I add it to this post or leave it where I posted it? I cannot get one node to accept firmware (wonder if signing is a problem however it should not be).


  • Admin

    @itbeyond I responded in the other thread.


  • Admin

    @karlheinz2000 Sounds like an issue with your GW - what happens if you connect to your GW via the Arduino serial terminal - does it behave the same?



  • @tekka I did this already. GW connected to MYSController and to terminal program in parallel via 2 USB2serial adapters. MYSController stops logging, but terminal keeps logging MSGs. So I expect no GW issue. I tried 3 different USB serial adapters with no difference.
    0_1510862025401_Unbenannt.PNG


  • Admin

    @karlheinz2000 Try with the latest build (MYSController 1.0.0beta build 3316) - MYSController will inform you about an available update.



  • @tekka Where can that be downloaded? All the links I find lead to a 404...


  • Admin

    @manutremo see above, you will get notified when running MYSController



  • Done, nice job, I see the new message types have been added, probably other enhancements under the hood? thanks!



  • @tekka it's been some time since I flashed the bootloader, I notice I currently have a lot of different hex files (which I believe I compiled myself), do I no longer need different files for different speeds, i.e 16 / 8 /1Mhz?



  • I'd also love to use the signal report features, I thought it was enabled by default in MS, seems not to work here when I request an item from MYS?



  • The new build runs since several hours with no problems 👍
    The old one stoped within 10min.



  • I'm sorry to say that in my case FOTA updates seem to be worse than with the previous version, they stop before the 5th line of sent code... but it may be my fault, I'll continue investigating.



  • @manutremo As expected, it was my fault. FOTA updates work correctly with this version.



  • Hi,

    I 'm new to MySensors and MySController. I have everything working and I thanks all the good developers here 🙂

    I have 1 question to better understand how everything works: when I start MYSController I can see in the message tab those 2 messages (heartbeat) repeating every 10 seconds. Can someone tell me what they are? Where does the GW send the heartbeat to? Is it going through RF24?

    Thanks in advance for the reply.

    0_1515952260956_c30753a1-053c-4177-85cc-6a4112408cb5-image.png



  • @chris83 Which version do you use? I only have the RX line?

    I thought it was for the MYSController, since it is connected to the gateway. Guess the gateway sends it to all connected clients.



  • @raptorjr Thanks for the quick reply... I'm running MYSController version: 1.0.0beta:
    b3316.



  • @chris83 Thank you. I use the same version.



  • @raptorjr So if I got it right, MYSController is sending a ping to my GW every 10 seconds?



  • @chris83 Yes, as I understand it. But I could be wrong. But it feels logical.



  • How is the upcoming bootloader release (1.3S) going?

    I may be wrong but think I need this to push signed firmware to a node. I have a node with soft signing required. The node works but I cannot update it OTA is this 1.3S to support this?



  • There are already support for rfm69?



  • tekka, first of all, thank you very much for your efforts and shared results on MYSController and MYSBootloader! 🙂

    I am trying to upload new firmware to battery operated nodes via MYSController 1.0.0beta. But it seems that MYSController does not send an ST_FIRMWARE_CONFIG_RESPONSE message after the node has sent an I_PRE_SLEEP_NOTFICATION before its next smart sleeping. Thus no firmware packages are requested from the node using ST_FIRMWARE_REQUEST messages.

    Uploading firmware to nodes that are not sleeping and powered by a power supply basically works. One limitation seems to be that the node has to be restarted while MYSController is connected to the gateway. My guess is that the ST_FIRMWARE_CONFIG_REQUEST message from the node must be received first by MYSController before the assign firmware selection inits a ST_FIRMWARE_CONFIG_RESPONSE message. If the nodes are not sleeping, this can easily be done using the request reboot function of MYSController. In the case of the battery-operated node, this reboot request is not transmitted on the next wake-up respectively pre sleep notification.

    I also noticed another bug: After receiving the reboot messages from a node, it is always set as a Sensebender board.

    My setup:
    MySensors version: 2.3.2
    Gateway: ESP8266 with RFM69HW
    Nodes: Canique MK2 boards (Moteino clone) with Atmega328P, RFM69HW, 4mbit Winbond W25X40CLSNIG flash chip and DualOptiboot bootloader.

    @tekka: I would like to have a look at the code of MYSController to understand the firmware OTA start problem and the wrong detection of the board and to fix it if necessary. Would you be interested in making your code available on GitHub, for example, so that MYSController is developed further together? Please don't bother with code cleaning in advance.



  • I also have problems with my battery-powered sleeping-most-of-the-time nodes. I actually have to disassemble them and force reset several times until the OTA FW update function starts to work, which pretty much negates its usage.

    @Tekka, I echo mbedarff´s words, your job is fantastic but can we all try to add on our efforts and try to make it even better than it already is ?

    Cheers from Portugal.

    Luiz


  • Admin

    @luizrrocha Can you post your sketch and (if available) debug log here?



  • Hello bootloader support ATMEGA328PB now this uC is cheaper than 328p? Best regards



  • @vidin You can simply program the 328pb with the standard bootloader using AVRDUDESS.
    The pb version is software compatible with the p version.



  • Hi! Where can I download MYSBootloader 1.3 pre-release & MYSController 1.0.0beta? The given link is not working.



  • @Alan-Sales it seems the project is abandoned. But I have it, so please use this link:

    https://www.dropbox.com/s/b0qls8a251ol4tc/MYSController.zip?dl=0

    @tekka maybe you could share the code somewhere? Maybe someone else could make a use of it or develop it further?



  • Anyone else experiencing crashing of the application after about 10seconds?



  • @iguaan The same applies to me. The application crashes after a few seconds after launching (Windows 10). No problem before on the same system, so I suspect a Windows update but I don't know which one.



  • Hi all,
    I think I have found the problem, the program at startup makes a connection (probably to look for an update) to the following address 162.55.0.134 (port 80) but it fails, this blocks the program for several minutes, unfortunately without the sources it is not possible solve the problem.
    BR
    Angelo



  • There's another somewhat way around:

    you just need to open prog and then close when it gets stuck and then clik try to restore or wait button few times:
    https://pasteboard.co/GQTHDnaQsawY.png
    then you should get this screen at some point and then press ok/ignore and it works
    (https://pasteboard.co/9iuz1LC7kgWC.png

    needs several tries.



  • MYSController is crashing me too... Are there any alternatives to update the firmware of mysensors nodes?



  • @Mac65 Good catch! I blocked MYSController from acessing the network in the Windows Firewall and... it works! Only block TCP port 80 if you are connecting to a MySensors TCP gateway.



  • @nfj25 said in MYSBootloader 1.3 pre-release & MYSController 1.0.0beta:

    om acessing the network in the Windows Firewall and... it works! Only block TCP port 80 if you are connecting to a MySensors TCP gateway.

    Can't get it working that way, even if i block all the traffic on Myscontroller.



  • @iguaan said in MYSBootloader 1.3 pre-release & MYSController 1.0.0beta:

    @nfj25 said in MYSBootloader 1.3 pre-release & MYSController 1.0.0beta:

    om acessing the network in the Windows Firewall and... it works! Only block TCP port 80 if you are connecting to a MySensors TCP gateway.

    Can't get it working that way, even if i block all the traffic on Myscontroller.

    Got it working, I have program on onedrive and seemed that automatically generated path in rules didn't work:
    "%USERPROFILE%\OneDrive\MYSController\MYSController.exe"
    Had to change it to "C:\Users\user\OneDrive\MYSController" and it works now, great success.



Suggested Topics

  • 3
  • 3
  • 6
  • 37
  • 189
  • 6
  • 24

64
Online

11.4k
Users

11.1k
Topics

112.7k
Posts