Platform
Any
Description
After a power reboot, nodes immediately send telemetry, position, and nodeinfo packets. In case of power-faulty equipment, nodes can severely overload the network, and such issues are difficult to detect. The firmware must include flood protection in case of frequent reboots.
Solution (from must-have to nice-to-have):
- Persistent uptime calculation using two monotonic relative timestamps. The node maintains a persistent monotonic timestamp while it's alive. On reboot, the node backs up the latest persisted value and continues incrementing the current timestamp. On the next reboot, the node calculates the latest uptime using the "backed up" timestamp and the latest persisted "current" timestamp. If the latest uptime is less than the "radio cooldown" threshold, the node keeps silence on core portnums.
- Power-fault reports. Every too-short uptime is counted. For several such events within some interval, the node reports itself as power-faulty to the client app, or even to the mesh.
- Power-faulty neighbours protection. Mesh nodes receiving a power-fault report reduce NODEINFO packet retransmission and mark the faulty node in the app. Or just limit NODEINFO retransmission by the minimal interval (3 hours) for every node heard
Platform
Any
Description
After a power reboot, nodes immediately send telemetry, position, and nodeinfo packets. In case of power-faulty equipment, nodes can severely overload the network, and such issues are difficult to detect. The firmware must include flood protection in case of frequent reboots.
Solution (from must-have to nice-to-have):