Last edited 8 months ago

How to modify the panel backlight

Applicable for STM32MP13x lines, STM32MP15x lines, STM32MP25x lines


First identify the backlight device linked to your panel, thanks to the sysfs:

 ls /sys/class/backlight
5a000000.dsi.0

In the above example, there is a single entry named "5a000000.dsi.0", which is replaced by "*" in the below command.


To adjust the panel backlight, enter the following command:

 echo 32 > /sys/class/backlight/*/brightness    # set the dsi panel backlight to the value 32

Note: Only values between 0 and max_brightness must be used.

To get the maximum panel backlight value, enter:

 cat /sys/class/backlight/*/max_brightness
255
Info white.png Information
If the max_brightness value is 1, the backlight can only be switched on and off. If the max_brightness value is above 1, the backlight has several levels on luminosity (pwm-based backlight for instance).

To get the actual panel backlight value, enter:

 cat /sys/class/backlight/*/actual_brightness
32


Use one of the following commands to quickly test the panel backlight:

 export bl=/sys/class/backlight/5a000000.dsi.0/brightness
 export max=/sys/class/backlight/5a000000.dsi.0/max_brightness

 # switch on/off test
 (while true; do echo 0 > $bl; sleep 0.5; echo $max > $bl; sleep 0.5; done)

 # slow 32-step tests (only for pwm-based backlights)
 (i=0; while true; do i=$(((i+32)%256)); echo $i > $bl; sleep 0.5; done)

 # fast 1-step test  (only for pwm-based backlights)
 (i=0; while true; do i=$(((i+1)%256)); echo $i > $bl; done)
Info white.png Information
Be sure the panel is running (power on) before modifying its backlight.