WLED Ambilight/Hyperion

Hi all,

Thought I’d just share my basement setup.

But first, many thanks to Aircoookie and all other contributors for such awesome project. This is the most polished comprehensive LED setup out there. Thank you!

A bit of background…long ago, I had setup a simple Arduino with some WS2812B strips around the back of my basement TV, and ran an unofficial version of the Prismatik software found on Reddit here

Worked great, but then upgraded TV from a 46" to a 65", got lazy, didn’t redo the whole back LED thing.

At some point last year, I discover the awesome ESP8266. Had already SmartThings and Home Assistant integrated, found the Griswold-LED-Controller library, added a device handler for ST, get it automated with HA, start sticking LED strips all over the place in the house.

Wouldn’t it be great to get this back in my basement again?? ok…Modified the library to add serial communications, yay, Ambilight, this time accessible through wifi working again! (not in a very stable way though)

Finally WLED…love at first sight! :slight_smile: Reflashed all my ESPs, love it. Should I do my basement TV one as well…WLED has a “hyperion” mode etc etc…ok, let’s do it, we’ll figure hyperion out later.

I connect the ESP to a USB port (which has power even when PC is off), connect strip to outlet, turn PC on…SURPRISE!! Works out of the box with Prismatik!!

The result: Right here

This is the opening of the American Gods TV show, which I found was a very good way of demonstrating Ambilight/Hyperion.
The strip doesn’t even need to be turned on for this to start. As soon as the serial communication is active the LEDs start lighting up.

Between this and my 7.1 surround sound, I love being down there!
Thanks WLED!


Could you tell us what settings to set in the prismatik?

Sure, can’t remember the exact steps, but…

  • Select Adalight
  • Enter the COM number as detected in your Device Manager
  • I think baudrate is default to 115200, format RGB (this is driven by WLED)
  • When it is finally time to setup the LED placement, select custom, enter the amount of LEDs (in my case 42 top & bottom, 24 sides, set TV stand width to 0). Depending on where your LEDs are you may have to invert (i do), add an offset (I do too, can be negative). This takes a bit of time and is a little tedious!
  • Finally you are prompted for some color adjustment/calibration

That’s it!

1 Like

Thank you. It works great.

Glad I could help! Enjoy

this looks cool, do i need more than just my esp8266 to accomplish this? if yes links or directions?

Not really…All you need is the ESP flashed with WLED, your strip, a TV and a PC.

Do your WLED setup the way you’d normally do it.

Power the ESP through a PC’s USB port, power the LEDs through a 5V power adapter (I use a 4A one for this purpose…+5V to strip, GND to strip and to ESP. Do not apply the adapter’s +5 to the Vin input since the ESP will be powered by the USB port)

Then install the Prismatik software linked in first post, setup as in post 3…should be it!

So I’m totally new to this and out of depth, I’ve got an existing ambilight setup with an Arduino and the psieg Prismatik fork. I’d really love to get that integrated with smartthings (or at this point hubitat). Do you have a sense of if that’s doable through the Prismatik plugin interface, or is the easy way to replace the arduino with the control board you’re using?

@Adiventure Yes, all you need is to replace the Arduino with the ESP8266. Install WLED on the ESP8266, solder you data wire to pin 4 of the ESP, connect the ESP’s USB to a USB port on the PC (not sure how you power you LEDs, but mine are powered by an external 5V brick), and you should be ready to go. If you change the COM number in your device manager to be identical to your Arduino, Prismatik will see no change at all in the setup, and LEDs will start moving just like nothing happened!

As far as the smartthings integration, see my other post here:

So now you are able to manually turn on/off/ change brightness & color from ST (or from Home Assistant for me, Google, Siri etc…), but as soon as the PC is on and serial connection is made between Prismatik and the ESP, ambilight begins. After about 10 seconds of inactivity from the Serial com, LEDs are back to their previous state.

1 Like

Thanks for the explanation. I’m using 12v LEDs driven by an independent supply, so it would seem to be an easy swap.

For curiousities sake, did you consider doing the integration through the Prismatik API? I assume the negative would be that you lose control if the computer is off.

Also, perhaps a dumb question, but having never played with the ESP8266, is there one you’d recommend I go for?

A few months later, hoping you might be able to help still.

Recently grabbed a couple boards to switch over to WLED and I’m having trouble with PC control. I can access and control fine via the app or web, but despite setting up on the same com port as the arduino I can’t seem to control them over USB. I’m hoping this is a simple config error I did wrong, the only setup I did on the ESP8266 besides flashing WLED was entering how many LEDs and connecting to my wifi. Is there something obvious I’m doing wrong? I don’t see any settings for USB control in the WLED config.

Hi! Try re-plugging the USB, sometimes it helps to reset the COM port.
How many LEDs are you trying to run and what is the baud rate you have set in Prismatik? The default in WLED is 115200.

You need to check your device manager…I am guessing you are using the wrong COM port.
And if you did change the COM number in the device manager, I would definitely recommend you reboot the PC.

Windows remembers devices and reserves COM port numbers. So if your Arduino was COM3, your ESP will not be COM3 unless specifically changed. So you need to check device manager, and either change your ESP’s COM number there (COM3 will say “In use”, but if you retire your Arduino it’s ok), or change Prismatik’s config to reflect the ESP’s port number.

I recently got a Google TV (the new dongle), and moved towards a dockerized Hyperion server with the Android screen grabber app, and accomplish similar results over WiFi…

Does prismatik say how many frames per second you’re getting?

does not work as it should

@colton I have moved to a Chromecast wGoogleTV + screen grabber + hyperion server, and retired PC/Prismatik. Can’t answer fps question…

@TYR What does not?

I think this is really awesome. I’ve been looking number of times to use this behind my TV, however, I get stuck continuously with the fact that my smart TV (Samsung UE65NU8000) includes all functions needed and thus no HDMI is used anymore, except for gaming.

The TV doesn’t provide any kind of output that contains the video image and thus no source is available to feed into the hyperion solution. I am rather sure nothing is available for this, or did anyone find a solution there?

I’ve seen people use the Hyperion Android app on their TV.

That would possibly work on an Android OS TV, but not on Samsung Tizen. A Webcam is suggested as well, but I dislike that principle…

My Samsung TV stopped loading new apps, so I bought a Chromecast with Google TV. :wink: