[TRACKING] Linux battery life tuning

Blacklisting unused SSD expansion cards to save ~1.4W and hit C10

After following all the guides around here, my power consuption was around 5.1 W idle and I only hit C9 but never C10. I found out, that my storage expansion card draws around 1.4W and prevented me from C10. I only use my SSD card to boot Windows, so I decided to blacklist it in my arch install. There is what I did.

This will make your storage card unavailable in your current linux install until you undo this.

1. Find the vendor and product IDs for the card.

~ ❯❯❯ lsusb
Bus 004 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 003 Device 002: ID 27c6:609c Shenzhen Goodix Technology Co.,Ltd. Goodix USB2.0 MISC
Bus 003 Device 003: ID 8087:0032 Intel Corp. AX210 Bluetooth
Bus 003 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 002 Device 002: ID 13fe:6500 Kingston Technology Company Inc. USB DISK 3.2
Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub

We are looking for the ID “13fe:6500”. (Maybe it’s the same for all cards, but please double check.)

2. Create a udev rule to blacklist the device

Change idVendor to the first part of “13fe:6500” and idProduct to the second part.

echo 'SUBSYSTEM=="usb", ATTRS{idVendor}=="13fe", ATTRS{idProduct}=="6500", ATTR{authorized}="0"' | sudo tee /etc/udev/rules.d/01-expansion-ssd.rules

3. Reboot

4. Verifying

Run sudo fdisk -l. The drive should not be listed anymore.

Check powertop. You should now see a lower power usage of around 1.4W and also C10.

Undo

Just remove the udev file and reboot.

sudo rm -f /etc/udev/rules.d/01-expansion-ssd.rules
6 Likes