[HowTo] [RPi] Hyperion.NG under OSMC (english)

[RPi] Hyperion.NG under OSMC (english)

Contents:

Step 1: Activate SPI
Step 2: Install dependencies
Step 3: Compile and install Hyperion.NG
Step 4: Run Hyperion as a service

Step 1:
Connect with Putty to your RPi and enter the following command:

Code:
sudo nano /boot/config.txt

Search for the line # dtparam = spi = on and remove the hash (hash) symbol in front of it.
Then save the file (Ctrl + o), quit nano (Ctrl + x) and restart your RPi with this command:

Code:

sudo reboot

edit: You can also go to My OSMC -> Pi Config -> Hardware Support -> Enable SPI Support
Activate SPI.

Step 2:
The dependencies are installed via the following commands in Putty:

Code:

sudo apt-get update sudo apt-get install git cmake build-essential qtbase5-dev libqt5serialport5-dev libusb-1.0-0-dev python3-dev libxrender-dev libavahi-core-dev libavahi-compat-libdnssd-dev libjpeg-dev libqt5sql5-sqlite rbp-userland-dev-osmc

Step 3:
To compile and install Hyperion.NG, run this one-liners in Putty and cook your best tea or coffee. :wink:
Code:

wget -qO- https://raw.githubusercontent.com/hyperion-project/hyperion.ng/master/bin/compile.sh | sh -s hyperion Release install

Step 4:
You’ve probably already drunk your hot drink?!? :slight_smile:
Let us now turn to the automated execution (service) of Hyperion.NG.
With the following command (under Putty) you create a new file called hyperion.service under /lib/systemd/system/

Code:

sudo nano /lib/systemd/system/hyperion.service

… and insert the following content in it.

Code:

[Unit]
Description=Hyperion ambient light systemd service
After=network.target

[Service]
ExecStart=/usr/local/bin/hyperiond
WorkingDirectory=/usr/local/share/hyperion/bin
User=osmc
TimeoutStopSec=5
KillMode=mixed
Restart=on-failure
RestartSec=2

[Install]
WantedBy=multi-user.target

edit: do not forget to save (Ctrl + o) and finish (Ctrl + x) of nano.

Finally, restart the systemd service and activate / start the Hyperion.NG service.

Code:

sudo systemctl daemon-reload
sudo systemctl enable hyperion.service
sudo systemctl start hyperion.service

voilà

2 Likes

I hope this HowTo is useful.

3 Likes

Can I follow these instructions to install hyperion on a Vero 4k+?

The thread for Vero 4k is here

1 Like

So there is stuff missing that ti thought i append to this howto

the webui which was missing which is the key feature for hyperion.ng is reached on

http://<insert your ip here>:8090/

there is a great setup tool and wizards available under the webui but for lightpack users running under osmc will result in segment fault when a it tries to recover a serial for the application since it cant retrieve the serial from usb this an be solved by either running it as root or creating a udev rule

/etc/udev/rules.d/90-usbpermission.rules

SUBSYSTEM==“usb”,GROUP=“users”,MODE=“0666”

then type sudo udevadm control --reload to get the serial type

sudo lsusb -d 1d50:6022 -v | grep iSerial

another method is to apply sudo to the systemd file see opening post to the line ExecStart so it looks like this

ExecStart=/usr/bin/sudo /usr/local/bin/hyperiond -u /home/osmc/.hyperion

then it wont result in the application going into segfault its nice too see that there is a path forward from the devs which hyperion was clearly missing it has some bugs and is in beta so remember it wont run stable and it is missing key features like menus being lit up instead of just movies like in the older version but im sure it will get a patch for that in the future

Hello,
First of all thanks @Cosmicbase for the excellent step by step!
I was able to setup HyperionNG on a Raspi3.
I’ve a question though - cause I can’t accomplish a thing which is almost…essential :slight_smile:

When I turn Off the TV the leds are still on.
I’ve setup that OSMC should Hibernate,sleep, … through CEC but without luck.
I then though well, I could start/stop the hyperionNG service through a button… but the only PY Script I found is for Hyperion not for HyperionNG.

I noticed also, that when I stop manually the HyperionNG Service (sudo systemctl stop hyperion.service) the led stay powered on on WHITE (led stripe is an APA102c)

Can someone help?
Thanks in advice :slight_smile:

check my hyperion helper it could be modified to suit your needs it just need to check for cec status instead of time

I’ll check it out when I get home.
I’m not really good with bash scripting since I’m a WinEng, then your script should become something like this?
if [[ $(echo 'pow 0' | cec-client -s -d 1 RPI) =~ "power status: on" ]]; then hyperion_service_check_disabled; exit 1; fi hyperion_service_check_enabled else if if [[ $(echo 'pow 0' | cec-client -s -d 1 RPI) =~ "power status: standby" ]]; then hyperion_service_check_disabled; fi

Needs to be a while do statement