ODROID-VU7+ Backlight Control Hack: Controlling the Backlight on the ODROID-C1 and ODROID-C2 Android platforms

ODROID-VU7+ Backlight Control Hack: Controlling the Backlight on the ODROID-C1 and ODROID-C2 Android platforms

Recently, I made a driver to control the backlight for the ODROID-C1 and ODROID-C2 using PWM (pin 33). To use the driver, it needs to be copied to the folder system/lib/hw/. After rebooting, the driver should work properly.

The driver loads the kernel modules for PWM automatically, so pwm-meson.ko and pwm-ctrl.ko must be present, as they are normally. Keep in mind that if you use this driver, you’ll only be able to use the PWM as well as pin 33 for the backlight. The driver is available for download at http://bit.ly/2ysMPAS.

To copy the driver to the ODROID-C1, type the following command from a host machine running Android Debug Bridge (ADB) connected to the ODROID-C1 via a USB cable:

$ adb push lights.odroidc.so /system/lib/hw/
To support the ODROID-VU8, the boot argument “backlight_pwm=yes|no|invert” must be added to the boot.ini:
# Enable backlight_pwm
 # backlight_pwm=yes, no, invert
 backlight_pwm=yes

# Booting
 setenv bootargs "root=/dev/mmcblk0p2 rw console=ttyS0,115200n8 no_console_suspend vdaccfg=${vdac_config} logo=osd1,loaded,${fb_addr},${outputmode},full hdmimode=${hdmimode} cvbsmode=${cvbsmode} hdmitx=${cecconfig} vout=${vout_mode} disablehpd=${disablehpd} ${disableuhs} androidboot.serialno=${fbt_id#} ir_remote=${ir_remote} usbcore.autosuspend=-1 ${selinuxopt} suspend_hdmiphy=${suspend_hdmiphy}} backlight_pwm=${backlight_pwm}"
The source code is available at https://github.com/joerg65/lights.

To control the backlight of the VU7+ you’ll need to do a little tinkering. On pin 4 of the PT4103 backlight driver, you’ll need to solder a resistor. I used a 330 Ohm resistor. It should, however, also be possible without a resistor. Other than in this picture from the datasheet of the 4103, the EN pin of the 4103 on the VU7+ has a pull-up 10k resistor. Therefore, the backlight of the VU7 is always enabled. I measured the current with the EN pin connected to GND. It is about 0.5mA, which comes from the pull-up resistor: 5V divided by 10k. I took a resistor and glued it on the board, soldering it carefully to the pin 4. This can then be connected to pin 33 of the ODROID.

ODROID Figure 1 - Schematic diagram
Figure 1 - Schematic diagram

ODROID Figure 2 - Closeup of the soldered connection
Figure 2 - Closeup of the soldered connection

ODROID Figure 3 - Overview of the soldered connection
Figure 3 - Overview of the soldered connection

To see a detailed video of the project, check out https://youtu.be/mVvnLiKiksw. For comments, questions and suggestions, please visit the original post at https://forum.odroid.com/viewtopic.php?f=113&t=27227.

Be the first to comment

Leave a Reply