Mac OS X ambilight
Ви не можете вибрати більше 25 тем Теми мають розпочинатися з літери або цифри, можуть містити дефіси (-) і не повинні перевищувати 35 символів.
Thomas Buck 4fe3536f03
Added screenshot
7 роки тому
DisplayBacklight Prepared for publishing 7 роки тому
DisplayBacklight.xcodeproj Remove XCode Userstate from Repo 8 роки тому
.gitignore Prepared for publishing 7 роки тому
COPYING Prepared for publishing 7 роки тому
DisplayBacklight.ino Renamed Arduino Sketch 8 роки тому
README.md Added screenshot 7 роки тому
epilepsy.sh Prepared for publishing 7 роки тому
test.sh First (working) commit 8 роки тому

README.md

DisplayBacklight

DisplayBacklight is an Ambilight-clone made with an Arduino controlled by a macOS machine.

DisplayBacklight - macOS Arduino Ambilight

Hardware

The software currently only supports driving RGB-LEDs with the colors from the edge of a screen, so you have to place an RGB LED strip on the outer edges of your computer monitors. Multiple screens are supported using a single LED strip for all of them.

You need an LED strip with individually addressable LEDs like the popular WS2812 RGB LED strips. The data line is connected to pin 2 of the Arduino. The Adafruit Neo-Pixel library is used to control the LEDs.

Ambilight Photo Ambilight Photo

Protocol

The color data is transmitted using the serial port and the USB-UART converter built into most Arduinos. Communication happens at 115200bps, the LED count is hardcoded in both firmware and host software. First, a magic string, also hardcoded, is sent, followed by 3 bytes containing Red, Green and Blue, for each LED. When the last byte has been received the whole strip is refreshed at once.

Software

The macOS host software is opening the connection to the serial port, grabbing a screenshot, processing the edges to calculate each LED color and finally sending it to the device.

Ambilight Screenshot

License

DisplayBacklight itself is made by Thomas Buck xythobuz@xythobuz.de and released under a BSD 2-Clause License. See the accompanying COPYING file.