change node ID (i.e. in case of conflict)

  • Hello, I found the mysensorsrs addon to the RFN24 Lib - it looks great.
    I have created a testsetup to proof the concept before I use it. So - in the beginning I'm interessted to see that the system is working.
    Actual I use the MySController of tekka as management and visualization, and - of course- I don't have fixed IDs in the nodes!

    I saw, that the GW every time starts with '1' for new node IDs. So it can be happen that I have two ore more nodes with the same ID.

    How does the system handle this (how/if this is detected, how it notifys it , what is the slution)?
    How can I change a nodeID by hand?

    I saw that there is no command to trigger a ID change by the GW/Controller.

    Of cource - at this time I'm not able to reflash the node or empty the EEprom by an seperat programer.
    A reset or powerdown would be possible, but not nice!

    Thx and a nice weekend

  • Admin

    It is up to the controller to keep track of which ids is busy. They gateway is not involved.

    (MQTT does some id-handout itself but there is no control over this process so it should probably better vi handled over MQTT somehow)

  • So - If there is an ID conflict (two nodes with the same ID) it is NOT possible to reconfigure it with the mysensor system !

  • Admin


    The "system" has no way of addressing two nodes with the same id. It is the only unique identifier.

    You have to reassign one of the nodes manually.

    If you have a proposal that works through repeater nodes I'm all ears.

  • Admin

    @pit007 Without MYSBootloader: Disconnect one node, upload the ClearEEPROM sketch to the other node, reboot, upload the new sketch and let it fetch a new ID from the controller.

    Btw: In the upcoming MYSController .276 release and MYSBootloader 1.1 this issue can be addressed via bootloader: re-assign ID and clear EEPROM will be possible via bootloader commands.

  • @tekka Hi! That is what I figure out and have done. I still had the hope that you will integreate it in your bootloader. 🙂 IMO it's more important that the system has a good basis as to have a lot of node examples. I don't can update the PCBs (i.e ext. eprom or security chip) and the boadloaders in the final products.
    Please spend some minutes in security also !

    Do you will upload the MYSController to Git ?

    • Pit007

  • Admin

    @pit007 These bootloader commands are in their current state not ideal, as they can break a chain of trust (uploading sketches, reassigning IDs and clearing EEPROM in an unsigned environment can potentially compromise a system).
    If signing will be possible within the bootloader (i'm looking into that but the code size is an issue), no big deal.

    The updates to the MYSBootloader will be pushed soon, MYSController .276 will be available via update function.

    Out of curiosity, can you tell us more about your *final products"?

  • Oh, the final Products 🙂 OK, I started 2006 with my own Wamp based system.... during the time I added a lot of 'things'.... Actual I'm locking for an base of an Sensor network. I have created my own wireless bootloader for the NRF, but you are faster (and better - my was working 1:1 absides the mash) and I want to add mainly batterypowerd Movement detectors (pic) and solar powered plant sensors (pic).

    If the PCBs are designed ... and the sensors clued to the ceiling and plugged to the soil I do not want diasseble it to update basic system features.

    Some pictures...


    • pit

  • Admin

    @pit007 This is pretty cool, thanks for sharing.