Blink power leds while on S3 sleep?

Is there any way to make the power leds near ports 1 and fade in/out (“soft blink”) when the laptop is suspended?
That would be great when using the laptop in clam shell connected to an external display, to know if it is sleeping or not.

I know some Lenovo laptops have a way to control the LEDs in Linux, but I’ve not found anything like that for the FW16.

2 Likes

I don’t think you can let it blink as that logic would need dedicated code in the embedded controller.
However you should be able to use an operating system hook to set the LED to a solid color when going into suspend.

The FL16 doesn’t officially support S3 sleep

Yeah, that is true. On ThinkPads the OS just sets them to “blink mode” and the firmware handles it.
But is it already possible to set the Leds color?

Look into sysfs, /sys/class/leds/. If the directory representing an LED has a multi_intensity file then you can change the color.

It is true that AMD 7000 series chips do not support S3 standby
They are designed for S2 sleep.
The EC chip is awake during S2 sleep, so it could blink the Side Power LEDs if you wanted it to.
My work around for not knowing if the FW16 is asleep or not is to disable wake on lid open.
That way, I can open the lid and still see the top power led blinking. I then press the power button to wake from sleep.

Thanks for the tips! It works.

Turn leds blue before sleep:

echo "0 0 1 0 0 0" > /sys/class/leds/chromeos\:multicolor\:charging/multi_intensity && echo "60" > /sys/class/leds/chromeos\:multicolor\:charging/brightness

Restore default behavior (amber when charging; white when charged) after sleep:

echo "chromeos-auto" > /sys/class/leds/chromeos\:multicolor\:charging/trigger
1 Like

The s2 in s2idle does not signify S2 mode. s2idle is S0 aka “Modern Standby”. In this mode the Linux kernel is even running (an idle loop).

So theoretically the kernel could blink the LED through the normal driver. But the effort to make it work and the additional power usage is probably not worth it.

Nice to hear.

FYI you can find the mapping from field to color in the file multi_index.

1 Like

I believe that’s actually S0ix, which is distinct from S0 (where S0 is the normal run mode.)

Ah, yes indeed.