Introduction: How to Set Up OSMC With Hyperion on Raspberry Pi With WS2812b Led Strip

About: Sometimes i english very well, sometimes ne.

Sometimes i english very well, sometimes no...

First things first. This is my first instructable and english isn't my native language, so please, don't be too hard on me. This will be not about how to build the frame, that's easy. It's about installing OSMC on RPi and mainly how to get Hyperion working . And pics, i've made lots of notes on them. Follow those and you'll be fine.

For starters, what is OSMC, Hyperion, etc.

"OSMC (Open Source Media Center) is a free and open source media player based on Linux and founded in 2014 that lets you play back media from your local network, attached storage and the Internet. OSMC is the leading media center in terms of feature set and community and is based on the Kodi project."

That's what their web says. Basicaly it's an succesor of XBMC.

I'm using Raspberry Pi ver.B for it, which is a small ARM based computer. It has not enough power to render websites, because it has no accelerated graphic. But it can render full hd movies, because of hardware video decoding. You can read more here.

Hyperion is an Abilight clone, similar to Boblight. It captures colors on tthe edge of picture and projects it on wall behind tv. You can see that on my pics.

EDIT 8/2020: This instructable mostly is outdated. Now you all you have to do is enable SSH on RPi, download HyperCon.jar, connect via HyperCon to RPi and click install/update. Works with RPi3, RPi4 not tested since there is no OSMC support. They are working on it. Settings remain the same, all via HyperCon.

Step 1: Gathering Stuff - What Do You Need?

So let's buy some stuff:

Raspberry Pi - i'm using model B and B+,i also have RasPi 2, but there are some known issues, so i stick with this older ones (and less powerfull), until they found solutions for those problems

SD Card - i recommend 16GB class 10. The faster the better. System speed depends on how fast it can read/write on that card,because RasPi has no own storrage, the OS and all data is on that card. Here's a list: http://elinux.org/RPi_SD_cards I'm using SanDisk and Kingston cards.

WS2812b led strip - this is a led strip with independently addressable led chips. Mine has one chip for every 16mm of strip. This is a digitaly controlled led strip, DON'T USE analog ones, it wont work. Use this specific type and everything will be easy. Those are similar to mine, look for WS2812b: http://www.ebay.com/sch/sis.html?_nkw=5V+WS2812B+...

5V Power Suply - i had a spare industrial 5V 20A (type S-100F-5), i think 5A would be enought. It's stable and that's what we need, since we are going to use it as RasPi power suply as well.

EDIT: 5A PSU is not enought, leds in my setup need almost 18A

Logic Level Converter - we could make one, but they are cheap.We need 5V logic signal to controll the led strip, but RasPi has only 3,3V output on GPIO and we don't want to damage it. http://www.ebay.com/sch/sis.html?_nkw=2PCS+IIC+I2...

And: 300Ohm resistor, USB micro B male connector (scavenged mine out of an cable i din't needed), wires, soldering tools.

As i wrote, this is not about the frame, but i will write down some advices, measurements, etc.

And finaly, software:
SD Formater https://www.sdcard.org/downloads/formatter_4/
OSMC Installer https://osmc.tv/download/windows/
PuTTY https://osmc.tv/download/windows/
WinSCP https://winscp.net/eng/download.php
HyperCon https://github.com/tvdzwan/hyperion/wiki/configura...

Step 2: Installing OSMC on SD Card

If you have OSMC installed, you can skip this and the next part. But clean start is better.

For sure let's start with formating our SD card with SD Formater. Once done start OSMC installer.
If you cicle throu images you can see every step of installation with notes. First part is on PC, once done, instert the card into RasPi then we go thru the rest of installation of OSMC.More info on pics.

EDIT 29.11.2015: OSMC update 2015.11-1 does not work with Hyperion properly. Instal 2015.10-1 instead.

EDIT 10.12.2015: There is spidev0.0 missing in 2015.11. Will be fixed in next update.

EDIT: it works

Step 3: Installation on RasPi

Plug the card into RasPi, power it up and follow the steps. It's simple, you wont need this part if you can read. But just to be sure look at those pictures i've added. You can controll RasPi with keyboard and/or mouse, or with TVs remote if it supports Anynet+.

Step 4: Wiring

We are going to do the wiring after installation of OSMC because you can do that with phone charger or original RasPi PSU (Power Suply Unit). But sure, you can do the wiring and frame, then the installation of OSMC.

WARNING! BE SURE YOUR CHOSEN PSU IS STABLE AT 5V EXACTLY, NOT MORE, SO YOU AVOID DAMAGING YOUR RASPI.

As i wrote before, mine is an industrial 5V 20A PSU. That's on the edge.

Look on the pictures for wiring details. But remember to keep the wires from RasPi to LED strip short. I had them about 20cm and they caused leds to flicker.

Tip for the frame:
I calculated the frame so it hides behind the tv and the leds bend on those cuting marks in the corners. Whole frame is made of aluminium, screwed together and mounted on screw threads for wall mounting.

Step 5: Time to Install Hyperion

We need to install PuTTY on Windows. It's a way to remote access terminal on OSMC. We need to know RasPis IP address, name and password. You can find it in OSMCs system info

EDIT 2019-12-23: HyperCon can instal Hyperion. I've upgraded From RPi2 to RPi3, only thing needed was to switch SD card from one to another, connect with hypercon and hit update button.

Start PuTTY. In host name put the IP address an press OPEN. You can also save the connection for future use.

Now enter these commands into PuTTYs terminal:

We need to update and upgrade the system:

sudo apt-get update
sudo apt-get upgrade

Now install required libraries:

sudo apt-get install libqtcore4 libqtgui4 libqt4-network libusb-1.0-0 ca-certificates  

Deployment of Hyperion:

wget -N  https://raw.github.com/tvdzwan/hyperion/master/bi...
sudo sh ./install_hyperion.sh

Does Hyperion run already?

sudo /etc/init.d/hyperion status

If everything goes well you should get "running" status.

Acces rights to Hyperions config folder need to be changed, so we can upload our config file into it.

sudo chmod +x /opt/hyperion/config

It wont work without correct config file, so let's learn how to create one in next step.

Step 6: Hyperion Configuration Tool

For our purspose we use HyperCon.jar, not the SSH version. It responds faster to changes done and we dont need the LED remote controll and grabber settings. It's slightly outdated, theres no WS2812b setting, so we need to alter the config manualy after upload to RasPi. Also try different settings for frame grabbers interval and smoothing.

Everything neded is noted on pictures, just some info on those two:

Interval - determines how often grabber updates color that is then send to leds.

Smoothing - smoothes the transition between colours of leds. I think this time should be shorter than interval.

After you are done press Create button and save the config somewhere where you can find it.

Step 7: Almost There

Now install WinSCP and open it. Create new place with SFPT protocol. Host will be RasPis IP address, same as for PuTTY. Same login and password as well. Save the connnection, so you dont need to do this again. Connect and find Hyperions config in /opt/hyperion/config/. Replace original with your hyperion.conf.json file. If there's a permission problem, run the chmod command again. Open it on RasPi in WinSCP and replace this:

"device" :
    {
        "name"       : "MyPi",
        "type"       : "adalight",
        "output"     : "/dev/spidev0.0",
        "rate"       : 250000,
        "colorOrder" : "rgb"
    },

with this to change led controll from SPI to dirrect GPIO controll:

"device" :
    {
        "name"       : "MyPi",
        "type"       : "ws2812b",
        "colorOrder" : "rgb"
    },

It's at begin of the file, so you wont need to search for it. Let's see if we done everything right. Enter this command to PuTTY, we need to restart Hyperion service so he loads new config file:

sudo /etc/init.d/hyperion restart

On PuTTY you should see hyperion running status - OK, and led should do whatever you have set as bootsequence.
In my case rainbowswirl. If not, somethings wrong. Either hyperion is not running (status was not OK), or more likely is a bad config. Check it again.

Step 8: Bonus

Congrats, you've done it.

And as a bonus download and install Hyperion Free ap from Google Play, so you can controll the leds remote from your phone. Only thin you need is RasPis IP address, again.

I suggest setting static IP to RasPi. I've locked mine against its MAC address on router. Everytime i connect this specific RasPi i obtains same IP address and i dont have to replace it in all those apps.

I hope i didn't forget something...

Le FIN and enjoy movies with this wonderfull lightbar.