This is an automatic βmonitor brightness controllerβ based on environmental light conditions. This system use USB port base sensor unit to measure the light level and control monitor brightness accordingly. We design this system to reduce the eye stress by matching the monitor brightness with environmental lighting.
The sensor unit of this system is build around PIC18F2550 8-bit microcontroller. To measure the light level we use LDR with MCUβs inbuilt ADC. The control software of this unit is design to work with Microsoft Windows operating systems and it use Windows APIβs DDC/CI related functions to control the monitors/display devices.
Firmware of USB sensor use 50-point boxcar filter to get the average readout from the ADC and that value is passed to PC over USB HID interface. Thanks to this HID interface this system may not need any special device driver, and it can use in any compatible PC with minimum amount of configuration changes.
We successfully test this setup on several PC configurations. At the designing stages we mainly use Viewsonic VA1901wm LCD monitor to test this setup.
This is an open source hardware project and all itβs source codes, design files and compiled binaries are available to download at https://github.com/dilshan/brightness-control. All the content of this project are distribute under the terms of MIT Licenses.
For more detail:Β Automatic monitor brightness controller