We have about a dozen nodes out there now, some battery, some mains, some solar but I’m noticing a reocurring theme. I may be missing something settings wise but there are two issues.
If the power dips, no idea what the trigger voltage is, I’m looking into this now. One of two things will happen.
The unit will deep sleep. This is great and all, but when the power returns it’s then stuck in deep sleep mode. I dont see any obvious way to fix this without an external reset. It means a solar node will go offline, I’ll drive out to sort it and it’s battery will be sat at 4.2V and I just have to hit reset. This is especially annoying as one of the effected nodes is 20M up a tower.
The other one is that the unit will trash it’s flash. The node details will be lost, most other settings will stay but the nodelist will get nailed in some strange way too giving the impression the node’s front end has failed. It can be seen, remote admin works, it relays packets but the node list never updates again.
I have a lot of experience in embedded development and with the ESP32 and it suggests two things…
Corruption on a brownout normally happens at the area of flash being accessed. This makes sense for the node list, but why is the node name being accessed. I’m open to this being corrupted because of its vacinity in flast to the node list. Absoluteley nothing else seems to get corrupted though.
It also makes me wonder how brownout detection is being handled. The node should just shutdown before this failure can happen so either brownout detection isnt happening or it configured incorrectly.
Has anyone else seen anything like this?