Battery longevity and levels
???+ attention Battery life is entirely dependent on device usage. The manufacturer of our batteries guarantees a lifespan of 10+ years (the chemicals/materials might get corrupted after this time, in practice, they don't have to and the batteries can last even longer than that).
Our devices are made to last with an emphasis on efficient power consumption. Please note that every use case requires different sensors and message frequency which means that the battery longevity will vary. There are three important things to consider:
- In our datasheets, the number of messages and battery longevity in years was taken from some testing we've done with the SimplePack (both versions) - the devices were in the Guard me mode and were not sending more than 140 messages/day (Sigfox daily limit).
- When the device requests a downlink and then waits for the signal to reach it, the entire operation consumes as much battery power as one uplink messages in three frames.
- When working with any version of the SimplePack Plus or SimpleIndustry that supports WiFi, please keep in mind that one WiFi sniff is, in terms of consumption, equal to 1 uplink message.
- Other factors include how often and how many sensors are used, battery self-discharge, etc.
- In API 6, battery voltage levels can be appended to any uplink event (message) with a hex symbol between 0x00 and 0x7F - in default, the voltage will be sent with both heartbeats.
- (Legacy - older firmware!) In SimplePack API 4, you will receive the battery voltage after each downlink message in the OOB (Out of band) confirmation message.
- (Legacy - older firmware!) In SimplePack API 5, battery voltage is sent daily in a heartbeat message by default and with additional fine-tuning, you can receive the battery level with every uplink message.
Since FW revision 6.0.91, API 6 devices now have the ability to report low voltage (event 0x89).
- 1.In order to set up the event, first choose a voltage threshold and input the value into register 0x66. The value in hex will be the voltage, e.g. 0x20 = 2.0V (just like the voltage is reported by the device).
- 2.After the register is setup through downlink, you can leave the device to work on its own - it will let you know when the battery is low.
- 3.After every message sent from the device, battery voltage will be measured and once it reaches the value in the threshold register (in our case, 2.0V), the device will automatically send a 0x89 Battery low event with appended voltage and temperature. The message will no longer be sent after every message but instead will be sent again once the voltage drops by 0.1V. This means that if you set up the threshold to be 2.0V and the battery voltage will go down to 1.8V, you will theoretically receive 3 battery low events: one at 2.0V, one at 1.9V and one at 1.8V. That's it! You're good to go.
???+ caution Please note it's possible the last event from our example will not be recieved as 1.8V is the voltage the device theoretically stops working at. It's also entirely possible the event will not be received - sometimes we get the messages around these levels, sometimes we don't. It's preferable to set the threshold to a value that's higher than the minimum transmission voltage.