Dell

Capability

  • 3 Presets: Full Capacity, Balance, and Maximum Life Span.
  • 2 Additional Modes: Express and Adaptive.
  • Thresholds: Preset modes have default threshold values set at 100/95%, 80/75%, and 60/55%. Customization options are available for each preset:
  • End threshold values can be set between 100-80%, 85-65%, and 85-55%.
  • Start threshold values can be set between 95-75%, 80-60%, and 80-50%.
  • Note: The difference between end and start threshold values must be at least 5%.

Using Express mode may accelerate battery wear.

Dependencies

  • No dependencies are required for kernel 6.12.XX and newer.
  • Two available packages for Dell laptops to control charging thresholds/modes are Libsmbios and Dell Command Configure (cctk).

libsmbios:

  • An open-source module developed for Dell laptops, available in most distribution package managers.
  • The extension uses the smbios-battery-ctl module from libsmbios to change threshold/mode.
  • For more information, check the link below:
    https://github.com/dell/libsmbios

Dell Command Configure:

  • Some Dell models work better with libsmbios, while others perform better with Dell Command Configure.
  • Users should choose and test the package that works best for their model.
  • If both packages are installed, the extension will prompt the user to select the preferred package.

Detection Mechanism

libsmbios

The extension checks if smbios-battery-ctl from libsmbios is installed at
/usr/sbin/smbios-battery-ctl.

Dell Command Configure

The extension checks for the installation of Dell Command Center at
/opt/dell/dcc/cctk.

  • If both smbios-battery-ctl and cctk are found, an option to choose the preferred package is presented.

Testing Charging Thresholds Using the Command Line

Sysfs (kernel 6.12.XX and newer)

Requires root privileges

Use sudo or pkexec to run commands as root.
It is possible to set the charging mode or threshold using terminal commands.
For example:
If the battery power supply name is BAT0, to apply a threshold value of 55-60, the command would be:

First, change the mode
echo 'Custom' | pkexec tee /sys/class/power_supply/BAT0/charge_types
Change end threshold
echo '60' | pkexec tee /sys/class/power_supply/BAT0/charge_control_end_threshold
Change start threshold
echo '55' | pkexec tee /sys/class/power_supply/BAT0/charge_control_start_threshold

libsmbios

Requires root privileges

Use sudo or pkexec to run commands as root.
It is possible to set the charging mode or threshold using terminal commands.

Set mode to Express mode
pkexec smbios-battery-ctl --set-charging-mode=express

Set to Adaptive mode
pkexec smbios-battery-ctl --set-charging-mode=adaptive

Set custom threshold.
Example below shows setting the start threshold to 55% and end threshold to 60%
pkexec smbios-battery-ctl --set-charging-mode=custom
pkexec smbios-battery-ctl --set-custom-charge-interval=55 60

Read the current charging mode or threshold in use
pkexec smbios-battery-ctl --get-charging-cfg

Dell Command Configure

Requires root privileges

Use sudo or pkexec to run commands as root.
It is possible to set the charging mode or threshold using one or two commands in the terminal.

Set mode to Express mode
pkexec /opt/dell/dcc/cctk --PrimaryBattChargeCfg=Express

Set to Adaptive mode
pkexec /opt/dell/dcc/cctk --PrimaryBattChargeCfg=Adaptive

Set custom threshold.
Example below shows setting the start threshold to 55% and end threshold to 60%
pkexec /opt/dell/dcc/cctk --PrimaryBattChargeCfg=Custom:55-60

Example of changing mode or threshold with BIOS password validation by adding --ValSetupPwd= followed by the BIOS password and the command to set mode or threshold
pkexec /opt/dell/dcc/cctk --ValSetupPwd=PASSWORD --PrimaryBattChargeCfg=Express

Read the current charging mode or threshold in use
pkexec /opt/dell/dcc/cctk --PrimaryBattChargeCfg


Condition for Applying Threshold

  • Accepted end threshold values: 55 or 100
  • Accepted start threshold values: 50 or 95
  • End threshold values > start threshold values + 5

Quick Settings


Gnome 43 and above Gnome 42

Extension Preferences



Validate Using BIOS Password (Dell Command Configure Only)

Dell Command Configure

  • Enable BIOS password validation in the Extension Preferences under the Device tab.
  • When Need BIOS password to change mode/threshold is enabled, an option to enter the BIOS password will be presented, which is then stored securely in the GNOME Keyring.
  • Disabling the feature removes the stored BIOS password from the GNOME Keyring.

If you decide to uninstall this extension, it is recommended to disable the BIOS password feature to remove the stored password from the GNOME Keyring.


Back to top