Power management


I’d like to get details about “hub.set” parameters “vinbound” and “voutbound”.

First, the mode of “card.voltage” need to be set. The setting “lipo” set these values: “usb:4.6;high:4.0;normal:3.5 ;low:3.1;dead:0”. I guess that when the voltage is above or equal to 4.6V, the “usb” setting is used, when the voltage is lower than 4.6V and higher or equal to 4.0V, the “high” setting is used and so on. But, for the setting “l91”, the values are “high:5.1;normal:4.8;low:4.2;dead:3.9”.

First question: What happens when the voltage is below 3.90V?

Second question: Is there an hysteresis when voltage is around a threshold?

When the power source is under high load, the voltage may be lower than when the load is low.

Third question: Is the voltage read at a specific moment (load, no load) or it’s random?


Hi Alec,
“What happens when the voltage is below 3.90V?” Then the battery state is “dead” and the Notecard will use the corresponding periods for vinbound/voutbound as described here:


Is there an hysteresis when voltage is around a threshold?
I don’t think there is, but the voltage is quite heavily filtered, which itself introduces a time constant, and the Notecard attempts to sample the voltage only when it knows it is not placing a large current load on the battery, so as to not under-read the voltage.

However you may have observed that the battery voltage is quite temperature dependent so it’s not unknown for the voltage to oscillate between two levels over periods of tens of minutes or hours.

For the following, are we in “usb” when voltage is above 4.6V? So we’re “dead” between 3.1V and 0V?

“lipo” for LiPo batteries. Equivalent to “usb:4.6;high:4.0;normal:3.5;low:3.1;dead:0”.

What about the following? Are we dead between 4.2V and 3.9V? What about when it’s below 3.9V?
“l91” for L91 batteries. Equivalent to “high:5.1;normal:4.8;low:4.2;dead:3.9”

When configured for lipo: usb:4.6;high:4.0;normal:3.5;low:3.3;dead:0

if v >= 4.6 mode = usb else
if v >= 4.0 mode = high else
if v >= 3.5 mode = normal else
if v >= 3.3 mode = low else
mode = dead

When configured for l91 high:5.1;normal:4.8;low:4.2;dead:3.9

if v >= 5.1 mode = high else
if v >= 4.8 mode = normal else
if v >= 4.2 mode = low else
if v >= 3.9 mode = dead

To be honest I’m not certain what would happen in this latter case if v < 3.9, but it is somewhat academic since 3xL91 are unable to supply sufficient current to allow the cellular modem to connect to the network once the voltage is below around 4.3v and you’ll start to see brown-out reboots.