Brightness control on ST7789C/ AXP202

All ESP32 boards running MicroPython.
Target audience: MicroPython users with an ESP32 board.
Post Reply
jhfoo
Posts: 17
Joined: Tue Jul 07, 2020 6:50 am

Brightness control on ST7789C/ AXP202

Post by jhfoo » Tue Jul 28, 2020 2:35 pm

Have a TTgo 2020 watch (very cool) running on Russ' micropython firmware (https://github.com/russhughes/st7789_mpy). Trying to lighten power consumption by dimming (not blanking/ turning power off) the screen. Does anyone have ideas how to do this? There are suggestions to lower the PWM, but I don't see similar parameters initialising the ST7789 or AXP202.

User avatar
russ_h
Posts: 88
Joined: Thu Oct 03, 2019 2:26 am
Contact:

Re: Brightness control on ST7789C/ AXP202

Post by russ_h » Tue Jul 28, 2020 7:01 pm

The docs I read say the blacklight is driven off the axp202c LDO2 and it's voltage is configurable between 1800mv (1.8v) and 3300mv (3.3v).
I have not tried this but you could try using setLDO2Voltage to change the voltage driving the backlight.

axp = axp202c.PMU()
axp.enablePower(axp202c.AXP202_LDO2)

# high
axp.setLDO2Voltage(3300)

#medium
axp.setLDO2Voltage(2400)

# low
axp.setLDO2Voltage(1800)

jhfoo
Posts: 17
Joined: Tue Jul 07, 2020 6:50 am

Re: Brightness control on ST7789C/ AXP202

Post by jhfoo » Wed Jul 29, 2020 5:50 pm

russ_h wrote:
Tue Jul 28, 2020 7:01 pm
The docs I read say the blacklight is driven off the axp202c LDO2 and it's voltage is configurable between 1800mv (1.8v) and 3300mv (3.3v).
I have not tried this but you could try using setLDO2Voltage to change the voltage driving the backlight.

axp = axp202c.PMU()
axp.enablePower(axp202c.AXP202_LDO2)

# high
axp.setLDO2Voltage(3300)

#medium
axp.setLDO2Voltage(2400)

# low
axp.setLDO2Voltage(1800)
Setting values 2400 and 1800 cause the screen to go black. The lowest tried that works is 2600. My low/ medium/ high settings are 2600, 2950, 3300 respectively.

Thanks!

jhfoo
Posts: 17
Joined: Tue Jul 07, 2020 6:50 am

Re: Brightness control on ST7789C/ AXP202

Post by jhfoo » Wed Jul 29, 2020 5:52 pm

jhfoo wrote:
Wed Jul 29, 2020 5:50 pm
russ_h wrote:
Tue Jul 28, 2020 7:01 pm
The docs I read say the blacklight is driven off the axp202c LDO2 and it's voltage is configurable between 1800mv (1.8v) and 3300mv (3.3v).
I have not tried this but you could try using setLDO2Voltage to change the voltage driving the backlight.

axp = axp202c.PMU()
axp.enablePower(axp202c.AXP202_LDO2)

# high
axp.setLDO2Voltage(3300)

#medium
axp.setLDO2Voltage(2400)

# low
axp.setLDO2Voltage(1800)
Setting values 2400 and 1800 cause the screen to go black. The lowest tried that works is 2600. My low/ medium/ high settings are 2600, 2950, 3300 respectively.

Notes: 2500 works too but it's too dim to be usable.

Thanks!

Post Reply