How to keep sensor ID when upgrading
-
Hi, I have lots of sensors/actuators running in my MySensors / Domoticz network. They are still using 1.5. Now I want to upgrade to 2 and also add some (sub)sensors to some nodes. Its important for me to keep them the "same" (= same ID I guess) so that domoticz plotting and my scripts keep working.
All my nodes are programmed directly via an USBasp. Whenever I updated a node before it got a new id. Does reprogramming like this delete the EEPROM, or why is that?
How can I keep the old id?
-
The node ID seems to be stored in the same location for 1.5.4 and 2.0 so my guess would be that upgrading shouldn't affect node id.
See
https://github.com/mysensors/MySensors/blob/8cacb4825b256f63aa2fc51468fd11a90bb19678/core/MyEepromAddresses.h#L55
https://github.com/mysensors/MySensors/blob/1.5.4/libraries/MySensors/MySensor.h#L72But since you are experiencing problems, I guess there is something I'm not understanding
-
Oh I did not yet try to update from 1.5 to 2.0. It happened when I just updated the code on a node (some small fixes only). But I also want to upgrade soon so that should somehow work too.
-
Anyone an idea? I guess its all about the eeprom?
-
If I remember right, there are options to avrdude, that let it keep contents of the eeprom. I don't know if arduino does this, when it invokes avrdude to upload via a ISP dongle..
You could have a look at avrdude documentation, for more info..
-
Ah, great hint! It seems like I have to change the high fuse to "Preserve EEPROM memory through the Chip Erase cycle" (see fuse calculator). I will try that out.