Introduction: Teensy Ambilight
My brothers and I wanted to install ambilight on the back of our new TV. I looked online to see what others have done and then set out to make our own.
I decided on a Teensy micro-controller running a modified version of Adalight that takes advantage of the FastLED library to control approximatly 4 meters of NeoPixel LED strips. The PC, it is running a program called "AmbiBox" version 2.1.7 that scans the screens boarders and sends the color information to the Teensy which in turn controls the LEDs.
Our TV is 55" so we ended up with 30 LED's on the top & bottom of the screen and 20 LED's on both of the sides, with a total of 100 LED's. The bottom LED strip had to be spit into two 15 LED segments to make room for the TV stand. In order to attach the LED's to the back of the TV I had to remove the rubber protective coating from the LED strips because the foam tape wouldn't stick to it. The LED's are adhered to the back of the TV with 3M foam tape spaced ever 10 inches or so. The LED's are wired together using 3-wire servo wire since I had a bunch laying around, but any thin gauge wire should work great.
When you go to attach the LED's to the back of the TV be sure to pay special attention to the direction indicators on the LED strips. You will want to make sure they are all heading the same direction. See picture above for data direction indicators.
Only two wires are needed to connect the Teensy to the NeoPixel LED strip. Connect GND from the Teensy to GND on the NeoPixel Strip (Black Wire). Next connect Pin 11 on the Teensy to the Data Input (White Wire) on the NeoPixel Strip. In order to get power to the LED strip you will want to connect the female DC terminal block to the Red & Black wire from the LED strip. Afterwards you will be able to plug in the 5v 10A power supply that will be more than plenty for the number of LEDs we are running.
You will need to set the number of LED's in the Teensy's firmware and in the AmbiBox GUI, both are super easy.
We are achieving ~ 30-35 FPS from the AmbiBox software even when playing 4k video. To give you an idea of the PC's specifications, it is running an Intel I7 and a geForce GTX960.
Step 1: Parts Used
Everything was purchased from Adafruit which will simply billing & shipping. Total cost was: $115.00 + Shipping
Parts used:
Teensy 3.2 - $19.95
https://www.adafruit.com/products/2756
4 Meters of NeoPixel LED Strip - $67.80
https://www.adafruit.com/products/1460
5V 10A Power Transformer - $25.00
https://www.adafruit.com/products/658
Female DC Terminal Block for LED strip - $2.00
https://www.adafruit.com/products/368
3M Double sided foam tape to attach LEDs to TV.
Soldering Iron
3-Wire servo wire
Step 2: Source Code & Installation Files
You will want to download the LEDstream source code and upload it to the Teensy MCU:
https://github.com/davidhend/Teensy-Ambilight
Arduino IDE (1.0.6):
https://www.arduino.cc/en/Main/OldSoftwareReleases...
Teensyduino (1.26)
https://www.pjrc.com/teensy/td_download.html
Next you will want to download and install this software on your PC that you want ambilight on:
AmbiBox (2.1.7):
Step 3: Configure AmbiBox GUI
AmbiBox Settings:
1. Use backlight: Checked
2. Mode: [Software] Screen capture
3. Method Of Capture: Usually keep default
4. Maximum FPS: 40 (anything of 30 is fine)
5. Device: Adalight
6. Order of colors: RBG
7. Number of zones: Choose for your setup
8. Port: Choose your port
Save Settings at bottom
You will want to run the “Wizard capture zones” after you have selected the number of zones (LEDs). This will automatically arrange the capture boxes around the screen for you.
Save Settings at bottom