A Python module for controlling power and brightness of the official Raspberry Pi 7" touch display.
Project description
A Python module for controlling power and brightness of the official Raspberry Pi 7” touch display.
Features
Change the display brightness smoothly or abrupt
Set the display power on or off
Get the current brightness
Get the maximum brightness
Get the display power state (on/off)
Command line interface
Graphical user interface
Requirements
A Raspberry Pi including a correctly assembled 7” touch display v1.1 or higher running a Linux-based OS
Python 2 or 3
Optional: pygobject for the GUI, is likely to be already installed on a recent Raspbian
Installation
Install from PyPI using:
pip install rpi_backlight
or clone this repository and install by:
sudo python setup.py install
Note: You may need to edit the backlight rules file in order to run the code:
sudo nano /etc/udev/rules.d/backlight-permissions.rules
Insert the line:
SUBSYSTEM=="backlight",RUN+="/bin/chmod 666 /sys/class/backlight/%k/brightness /sys/class/backlight/%k/bl_power"
Usage
API
Example in a Python shell:
>>> import rpi_backlight as bl >>> bl.set_brightness(20) >>> bl.set_brightness(255) >>> bl.set_brightness(20, smooth=False) >>> bl.get_max_brightness() 255 >>> bl.get_current_brightness() 20 >>> bl.get_power() True >>> bl.set_power(False)
NOTE: Code using set_ functions of this library has to be run as root, e.g. sudo python file.py !
CLI
Open a terminal and run rpi-backlight as root.
GUI
Open a terminal and run rpi-backlight-gui as root.
Todo
Allow to set the brightness fading duration in set_brightness(value)
(Create a really simple GUI in pygobject to change the display brightness, maybe just a scale/slider)
Most of it done, but not tested across several Python versions and distros
Ensure it runs on the Pi under both Python 2 and 3
I would be happy if you can help shortening this todo-list!
External Links
License
The source code and all other files in this repository are licensed under the MIT license, so you can easily use it in your own projects.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.