<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: Adis Durakovic</title>
    <description>The latest articles on DEV Community by Adis Durakovic (@adonis).</description>
    <link>https://dev.to/adonis</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F486593%2F202f67de-95b9-4335-8cef-5ee8f7588d76.jpeg</url>
      <title>DEV Community: Adis Durakovic</title>
      <link>https://dev.to/adonis</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/adonis"/>
    <language>en</language>
    <item>
      <title>How I turned my old 55″ Samsung TV into a SmartTV with AmbiLight</title>
      <dc:creator>Adis Durakovic</dc:creator>
      <pubDate>Thu, 21 Oct 2021 22:23:15 +0000</pubDate>
      <link>https://dev.to/adonis/how-i-turned-my-old-55-samsung-tv-into-a-smarttv-with-ambilight-h8m</link>
      <guid>https://dev.to/adonis/how-i-turned-my-old-55-samsung-tv-into-a-smarttv-with-ambilight-h8m</guid>
      <description>&lt;h1&gt;
  
  
  TLDR;
&lt;/h1&gt;

&lt;p&gt;This solution, uses an AndroidTV box to provide the SmartTV functionality. For the ambilight, I had to “hack” into my TV to grab the pixel-information of what is shown on the screen and send that to an ESP8266-controller to control the LED-strip attached to it.&lt;/p&gt;

&lt;h1&gt;
  
  
  The Smart TV
&lt;/h1&gt;

&lt;p&gt;Looking around at many of the solutions, AppleTV, AndroidTV, etc… I opted for the Xiami MiBox, which recently got upgraded to AndroidTV Oreo.&lt;/p&gt;

&lt;p&gt;It’s a full working stock AndroidTV, with built in ChromeCast and which also allows me to sideload apps, that are not accessible from the GooglePlay-store.&lt;/p&gt;

&lt;p&gt;For 70,- bucks a great extension.&lt;/p&gt;

&lt;h1&gt;
  
  
  The Ambilight
&lt;/h1&gt;

&lt;p&gt;Now this one is tricky. As of now, there is a great ambilight project out there, the hyperion-project. But the fact, that I have to use an HDMI-splitter and not being able to switch HDMI-sources with my TV remote and automatically having the LED-strip using that source, bothered me.&lt;/p&gt;

&lt;p&gt;As a smartphone-user who is familiar with rooting and installing custom software, I thought of the idea, that there MUST be some “rooting” method for a TV, to gain access to the TV’s pixel data and to send that somehow to a LED-strip. Luckily, there actually is something like that, well… kind of.&lt;/p&gt;

&lt;p&gt;Doing my research, I stumbled upon SamyGO. Which is a community of programmers, providing useful instructions, how to “root” a Samsung TV, and offering some useful “libraries” to extend it’s functionality. Unfortunately, the information is just accessible to people who donate a small amount of BTC (10$) to the forum-owner. Which is really worth the money.&lt;/p&gt;

&lt;p&gt;After I rooted my TV, I hoped, that one of these programmers already had the same idea like me and developed a library for an ambilight-solution. But unfortunately there wasn’t — so I had to write my own.&lt;/p&gt;

&lt;p&gt;Since, I could not find any instructions on how to write libraries, I started digging into the source-code of other libraries to find out, how they’re developed. Well, after some trial&amp;amp;error, and after crashing my TV a bunch of times :-D, I finally had a working solution.&lt;/p&gt;

&lt;h1&gt;
  
  
  How it works
&lt;/h1&gt;

&lt;p&gt;The idea is very simple. I grab the TVs pixel, and send them via UDP to an ESP8266, which controls the LED-strip. This works no matter what is displayed on the TV, so the integrated tuner, every HDMI-source (AndroidTV, PlayStation4, … you name it).&lt;/p&gt;

&lt;h1&gt;
  
  
  Installation
&lt;/h1&gt;

&lt;p&gt;So, if you want to try it on your own, here are some instructions how to achieve the same result as I have.&lt;/p&gt;

&lt;h2&gt;
  
  
  Requirements
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;Samsung TV (E, F or H series)&lt;/li&gt;
&lt;li&gt;Good USB-Stick (16GB)&lt;/li&gt;
&lt;li&gt;ESP8266 12E (NodeMCU)&lt;/li&gt;
&lt;li&gt;Addressable LED-strip (WS2801, WS2811… etc)&lt;/li&gt;
&lt;li&gt;Power supply unit for the LED strip&lt;/li&gt;
&lt;li&gt;Xiaomi MiBox&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Rooting the TV
&lt;/h2&gt;

&lt;p&gt;Head over to &lt;a href="https://forum.samygo.tv/"&gt;https://forum.samygo.tv/&lt;/a&gt;, get into the Donator group and find a rooting method that works for your TV. I’d suggest one of these methods, where you install the root onto a USB stick. Since this is the saver method. If you screw anything up, you can remove the USB stick, and start over again, without messing with your TV system.&lt;/p&gt;

&lt;h2&gt;
  
  
  Setting up the AmbiLight
&lt;/h2&gt;

&lt;p&gt;When you’re in the donor group, you should be able to access the files provided by me in the libAmbilight-topic and follow the installation-instructions there: &lt;a href="https://forum.samygo.tv/viewtopic.php?f=75&amp;amp;t=12460"&gt;https://forum.samygo.tv/viewtopic.php?f=75&amp;amp;t=12460&lt;/a&gt;&lt;/p&gt;

&lt;h1&gt;
  
  
  Total costs
&lt;/h1&gt;

&lt;ul&gt;
&lt;li&gt;TV 55″: free (but 830 € if I hadn’t one)&lt;/li&gt;
&lt;li&gt;USB-Stick: 20 €&lt;/li&gt;
&lt;li&gt;ESP8266: 5 €&lt;/li&gt;
&lt;li&gt;LED-strip: 40€&lt;/li&gt;
&lt;li&gt;PSU for LED-strip: 10€&lt;/li&gt;
&lt;li&gt;Xiaomi MiBox: 70 €&lt;/li&gt;
&lt;li&gt;Total: ~ 145 € (975 € with TV)&lt;/li&gt;
&lt;li&gt;Hours spent in research and programming: ~ 70h&lt;/li&gt;
&lt;/ul&gt;

&lt;h1&gt;
  
  
  Conclusion
&lt;/h1&gt;

&lt;p&gt;Now the question is, was it worth all the effort. Considering that, if I haven’t had the TV and had to buy a new one, I would’ve spent 975 € for these setup, and another 70h of research and programming. Since there’s a Philips 55″ with AndroidTV and ambilight for around 700 €, it’d be much cheaper buying a new one with all the features included.&lt;/p&gt;

&lt;p&gt;Another option would be to sell the TV, since it’s an older model, I don’t think I’d get more than 400 € for it, so I’d have to spend 300€ to buy the Philips one, which would be 150€ more than extending it myself. Although, I’d save on the 70hrs of research and programming.&lt;/p&gt;

&lt;p&gt;IMHO: It was totally worth it. The 70 € for the MiBox is a really good deal. The nice-to-have-ambilight which is another 75€ was a great opportunity to improve my programming skills.&lt;/p&gt;

</description>
      <category>esp8266</category>
      <category>smarttv</category>
      <category>diy</category>
    </item>
  </channel>
</rss>
