Skip to main content

Power Configuration

The power config options are: Power Saving, Shutdown after losing power, ADC Multiplier Override Wait Bluetooth Interval, Mesh Super Deep Sleep Timeout, Super Deep Sleep Interval, Light Sleep Interval and Minimum Wake Interval. Power config uses an admin message sending a Config.Power protobuf.

Power settings are advanced configuration, most users should choose a role under Device Config to manage power for their device and should never need to touch any of these settings.

Power Config Valuesโ€‹

Power Savingโ€‹

If set, Bluetooth, Wifi, and screen (if applicable) are turned off. When using the Router device role, this setting is on by default. The assumption for a Router is that the device will be used in a standalone manner where these features are not needed, and will be shut off to conserve power. This is especially useful when a device is powered from a low-current source (i.e. solar).

Shutdown after losing powerโ€‹

Automatically shut down a device after a defined time period if power is lost.

ADC Multiplier Override Fixes issues on Heltec v2โ€‹

Ratio of voltage divider for battery pin e.g. 3.20 (R1=100k, R2=220k)

Overrides the ADC_MULTIPLIER defined in the firmware device variant file for battery voltage calculation.

Should be set to floating point value between 2 and 6

Calibration Process (Attribution)โ€‹

  1. Install the rechargeable Li-Polymer battery.
  2. Charge the battery until full. Indication of this state may vary depending on device. At this point, the battery voltage should be 4.2V +-1%.
  3. Input the "Battery Charge Percent" displayed on the screen or in your connected app into the calculator below.
  4. If "Battery Charge Percent" (e.g., B 3.82V 60%) is not displayed on the screen, it means that the default value of "Operative Adc Multiplier" is too high. Lower the "Operative Adc Multiplier" to a smaller number (it is recommended to decrease by 0.1) until the screen displays "Battery Charge Percent". Enter the current "Operative Adc Multiplier" in use into the "Operative Adc Multiplier" field in the calculator. Also, input the "Battery Charge Percent" displayed on the screen into the calculator.
  5. Click the "Calculate" button to compute the "Calculated New Operative Adc Multiplier", and set it as the new "Operative Adc Multiplier" for the device.
ADC Calculator
Battery Charge Percent:
Current Adc Multiplier:
Calculated New Operative Adc Multiplier:
info

It's important to note that this calibration method only maps 4.2V to Battery Charge Percent 100%, and does not address the potential non-linearities of the ADC.

Wait Bluetooth Intervalโ€‹

How long wait before turning off BLE in no Bluetooth states

0 for default of 1 minute

Mesh Super Deep Sleep Timeoutโ€‹

While in Light Sleep if this value is exceeded we will lower into super deep sleep

or Super Deep Sleep Interval (default 1 year) or a button press

0 for default of two hours, MAXUINT for disabled

Super Deep Sleep Intervalโ€‹

While in Light Sleep if Mesh Super Deep Sleep Timeout Seconds is exceeded we will lower into super deep sleep or this value (default 1 year) or a button press

0 for default of one year

Light Sleep Interval ESP32 Only Settingโ€‹

In light sleep the CPU is suspended, LoRa radio is on, BLE is off an GPS is on

0 for default of five minutes

Minimum Wake Intervalโ€‹

While in light sleep when we receive packets on the LoRa radio we will wake and handle them and stay awake in no Bluetooth mode for this interval

0 for default of 10 seconds

Device Battery INA2xx Addressโ€‹

If an INA-2XX device is auto-detected on one of the I2C buses at the specified address, it will be used as the authoritative source for reading device battery level voltage. Setting is ignored for devices with PMUs (e.g. T-beams)

tip

I2C addresses are normally represented in hexadecimal and will require conversion to decimal in order to set via Meshtastic clients. For example the I2C address of 0x40 converted to decimal is 64.

Power Config Client Availabilityโ€‹

info

All Power config options are available in the python CLI.

SettingAcceptable ValuesDefault
power.is_power_savingtrue, falsefalse
power.on_battery_shutdown_after_secsinteger (seconds)Default of 0 is off
power.adc_multiplier_override2-4 (floating point value)Default of 0 uses firmware values
power.wait_bluetooth_secsinteger (seconds)Default of 0 is 1 minute
power.mesh_sds_timeout_secsinteger (seconds)Default of 0 is 2 hours
power.sds_secsinteger (seconds)Default of 0 is 1 year
power.ls_secsinteger (seconds)Default of 0 is 1 hour
power.min_wake_secsinteger (seconds)Default of 0 is 10 seconds
power.device_battery_ina_addressinteger (I2C address as decimal)Default of 0 is no address set
tip

Because the device will reboot after each command is sent via CLI, it is recommended when setting multiple values in a config section that commands be chained together as one.

Example:
meshtastic --set power.is_power_saving true --set power.on_battery_shutdown_after_secs 120
Enable / Disable Power Saving
meshtastic --set power.is_power_saving true
meshtastic --set power.is_power_saving false
Enable / Disable Shutdown after losing power
meshtastic --set power.on_battery_shutdown_after_secs 120
meshtastic --set power.on_battery_shutdown_after_secs 0
Set Wait Bluetooth Interval (Default of 0 is 60 seconds)
meshtastic --set power.wait_bluetooth_secs 0
meshtastic --set power.wait_bluetooth_secs 120
Set Mesh Super Deep Sleep Timeout (Default of 0 is 2 hours/7200 seconds)
meshtastic --set power.mesh_sds_timeout_secs 0
meshtastic --set power.mesh_sds_timeout_secs 120
// Disable using MAXUINT
meshtastic --set power.mesh_sds_timeout_secs 4294967295
Set Super Deep Sleep (Default of 0 is 1 year)
meshtastic --set power.sds_secs 0
meshtastic --set power.sds_secs 120
Set Light Sleep to default (Default of 0 is 5 minutes)
meshtastic --set power.ls_secs 0
meshtastic --set power.ls_secs 120
Set Minimum Wake Interval (Default of 0 is 10 seconds)
meshtastic --set power.min_wake_secs 0
meshtastic --set power.min_wake_secs 120