DIY Ambilight: Difference between revisions

From NURDspace
No edit summary
 
(One intermediate revision by the same user not shown)
Line 6: Line 6:
|Picture=DiyAmbilight.jpg
|Picture=DiyAmbilight.jpg
|Tool=No
|Tool=No
}
}}


For a while now I have had a led strip on the back of my TV to illuminate the room, recently however I have upgraded this light strip to addressable leds. And thus am now able to do much nicer effects with it. At first it only consisted of one string of 60 leds at the top of the TV, which for just illuminating the room was enough. But I wanted more, so I added another 60 leds at the bottom of the TV and eventually 15 leds at either sides of the TV making a total of 150 leds. On this wiki page I will document what I have done so far, any extra information and what I might do in the future.
For a while now I have had a led strip on the back of my TV to illuminate the room, recently however I have upgraded this light strip to addressable leds. And thus am now able to do much nicer effects with it. At first it only consisted of one string of 60 leds at the top of the TV, which for just illuminating the room was enough. But I wanted more, so I added another 60 leds at the bottom of the TV and eventually 15 leds at either sides of the TV making a total of 150 leds. On this wiki page I will document what I have done so far, any extra information and what I might do in the future.
Line 38: Line 38:
=== Software (Raspberry Pi) ===
=== Software (Raspberry Pi) ===
I have a Raspberry Pi running Hyperion.NG[https://hyperion-project.org/] which receives frames from my workstation, processes them and sends them to the ESP8266.
I have a Raspberry Pi running Hyperion.NG[https://hyperion-project.org/] which receives frames from my workstation, processes them and sends them to the ESP8266.
I'm now running a Debian Buster with a real-time kernel and running hyperion-ng as realtime. Which, from what I can see, results in very low latency processing it. This is even with smoothing on, but set to minimal speeds.


=== Workstation (Windows) ===
=== Workstation (Windows) ===

Latest revision as of 23:12, 6 March 2020

DIY Ambilight
DiyAmbilight.jpg
Participants Melan
Skills Soldering, Software, raspberry pi, ESP8266, Linux, Electronics
Status Active
Niche Video artsy stuff
Purpose
Tool No
Location
Cost
Tool category

DIY Ambilight

DiyAmbilight.jpg {{#if:No | [[Tool Owner::{{{ProjectParticipants}}} | }} {{#if:No | [[Tool Cost::{{{Cost}}} | }}


For a while now I have had a led strip on the back of my TV to illuminate the room, recently however I have upgraded this light strip to addressable leds. And thus am now able to do much nicer effects with it. At first it only consisted of one string of 60 leds at the top of the TV, which for just illuminating the room was enough. But I wanted more, so I added another 60 leds at the bottom of the TV and eventually 15 leds at either sides of the TV making a total of 150 leds. On this wiki page I will document what I have done so far, any extra information and what I might do in the future.


Of course you don't need to use a ESP8266, you could just as well wire the leds to a Raspberry Pi running Hyperion directly, I however, don't only want to use these leds just for Ambilight. When I'm not watching a movie or weeb shit I want to use them as normal lights.

20200306 224811.jpg


Parts

If you are going to do this, make sure you first measure the length of your TV (and height), you could buy a single 10m strip for example which I reckon is more than enough!

1) Since I had cut two strips to 15 leds, I soldered the male and female connectors on them so I could easily disconnect/replace them if I wanted to.

Software

ESP8266

Currently I am using WLED[4], it supports Hyperion natively and also has some other functions such as talking to it over MQTT, SACN and UDP.

Software (Raspberry Pi)

I have a Raspberry Pi running Hyperion.NG[5] which receives frames from my workstation, processes them and sends them to the ESP8266.

I'm now running a Debian Buster with a real-time kernel and running hyperion-ng as realtime. Which, from what I can see, results in very low latency processing it. This is even with smoothing on, but set to minimal speeds.

Workstation (Windows)

My Workstation is running HyperionScreenCap[6] which is a small tool made in C#.net which can capture a screen using DirectX.

UDYO2yb2iF.png

Power

This is a bit tricky, and something I am still working on. I started running things of a 2A 5V wall-wart, but when I was adding the extra 30 leds I took a closer look and noticed that the colour degraded over the course of the whole string, indicating that power was running scares. At the end of the strip I measured around 2~3 volts, which is way too low. I solved this problem by running additional 5v and gnd to a few different points of the whole led string, which solved the problem. I still have a voltage drop to around 4.6V with all leds on, even with running thicker and secondary wiring. I'm assuming I need to use another rail on the power supply to deliver more current.

20191212 150948.jpg

Picture showing the colours degrading over time.

Another nice feature of Wled is that it can switch on a power supply once the leds are to come on. Using this feature I'm able to feed the MCU 5V stand-by from the PSU and trigger a relay which then shorts the power on pin to ground.


20200306 221116.jpg

Current wiring of the power supply


Wled tries to estimate how much amperage you need, but I found this to be incorrect. For example, it told me I needed a 9A power supply to run 150 leds, while in practice all 150 leds at maximum brightness only needed around 4.8A. A Nice feature in Wled however is that you can set a limit on amps it can use, and it will keep the brightness lower so that it doesn't exceed it.

I still need to decide what I want to do for a power supply, the 2A just isn't cutting it anymore. My options are:

  • Mean Well LRS-50-5 [7]
  • Use a PC power supply
  • Rig together 3 5V wall-warts
  • Find something decent at work

Ended up using an m-atx PSU that can deliver 10A on the 5v rail. Powersupply died a few weeks of being in used and has been replaced with a Chieftec 500Watt power supply.

20200306 221107.jpg


Future