Status stopped: Error: hyperion.service: Changing to the requested working directory failed: No such file or directory


  • In an attempt to update my Raspberry Pi with HyperBian to the latest stable (v. 2.0.14) I can't get the Hyperion service to start. Before the update and right after the update, I was perfectly able to use Hyperion and the issue I had was that the LEDs and TV image went black/dark for a second from time to time. I hoped the update would resolve (and, updating should be done once in a while).


    I now do think it's the grabber that was faulty.


    I have had the power of the Raspberry Pi to be turned off and after this, I'm having this issue.


    Weird thing, I stumbled upon this https://docs.hyperion-project.…tml#example-backtrace-log page and I've followed the steps with great luck!


    So:

    Code
    gdb
    file /usr/share/hyperion/bin/hyperiond
    run


    And suddenly the LEDs turned on (rainbow) and I could access the UI webpage again. Only, I cannot leave this gdb opened and needed to quit. After this, I wasn't able to load the UI webpage anymore.


    Anyone any clue?

  • Go to Best Answer
  • With /usr/share/hyperion/bin/hyperiond in the console you can start Hyperion, which will then run until the console is closed or you cancel it.

    Hyperion fails to start from systemd due to errors. Something went wrong. hyperion@username is the service for you that would be if hyperion is not running under root systemctl start hyperion@pi and systemctl status hyperion@pi


    What grabber are you using? Have you tested it on another device such as a PC?


    regards pclin

    Dreambox ONE / TWO

    dreamOS OE2.6

    Amlogic S922X - 53.000 DMIPS - 2 GB RAM - 16 GB Flash - Twin-DVB-S2X Tuner - HDR10 - HLG
    -
    AudioDSP: miniDSP 2x4HD - Amp: Pentagon - Lautsprecher ELAC / ARENDAL
    LG OLED65BX9LB (PicCap, hyperion.NG webOS)

    FireTV 4K max

    -
    hyperion (classic) & Plugin HyperionControl | hyperion-ng 2.0.16-beta.1 (dreamOS)
    Hyperion-ng (Debian bullseye)
    -
    6 x ESP32/Wemos D1 mini - WLED - SK6812 RGBW-NW 60 LEDs/m
    FeinTech VSP01201 - Grabber Macrosilicon

    LG TV Hyperion webOS & PicCap


    snoozer_likelinux_manvtkns.gif


    Ambilight for ever

  • After some looking around on the forum and as I have a FHD TV, I now got this grabber:

    https://www.amazon.nl/dp/B08DR275MQ?tag=hyperioforum-21&psc=1&ref=ppx_yo2ov_dt_b_product_details


    But the grabber should not matter for Hyperion to boot up/load, right? If it's an incompatible grabber, I would have a different issue.


    Anyways: with the command /usr/share/hyperion/bin/hyperiond it workes, only your other commands (run under user root) don't work. I still get the error:


    Code
    root@HyperBian:/home/pi# systemctl start hyperion@pi
    Failed to start hyperion@pi.service: Unit hyperion@pi.service not found.

    The video coming out is from a Chromecast and even the default home page (photo) does not work with the LEDs. The standard effect is just being played, meaning - in my case - a few warm blobs are swirling around the TV, slowly.


    Next, I get this live logging from the instance running in my console:


    Code
    pi@HyperBian:~ $ /usr/share/hyperion/bin/hyperiond
    2023-01-31T08:16:09.561 |I0| LEDDEVICE         : <WARNING> SPI rate 5000000 outside recommended range (2050000 -> 4000000)
    2023-01-31T08:16:11.513 |__| V4L2              : <ERROR> Throws error nr: VIDIOC_DQBUF error code 19, No such device
    2023-01-31T08:16:11.513 |__| V4L2              : <ERROR> VIDIOC_STREAMOFF  error code  19, No such device

    What would this error be?


    So, OK. It seems I'm one step further: now I finally can access the UI web interface again, but in here nothing has changed and I've updated the USB grabber:



    It's the only USB grabber in there.


    Any idea?

  • Quote from koen

    I have had the power of the Raspberry Pi to be turned off and after this, I'm having this issue.

    Something must have gone wrong, otherwise Hyperion would start automatically.

    Did you install the latest Hyperbian or just updated to 2.0.14?


    Your grabber probably has a Macrosilicon 2109 built in, which is actually good.

    LoopOut cards always have limitations.

    It looks like the grabber might have a problem though.

    How is the live video in Hyperion?

    Have you made any other settings in /boot/config.txt?

    Have you tested the grabber on PC?

    Switch to Settings level = Expert

    Frames per second 25 or 30

    Encoding format MJPEG

    Size decimation 6


    regards pclin

    Dreambox ONE / TWO

    dreamOS OE2.6

    Amlogic S922X - 53.000 DMIPS - 2 GB RAM - 16 GB Flash - Twin-DVB-S2X Tuner - HDR10 - HLG
    -
    AudioDSP: miniDSP 2x4HD - Amp: Pentagon - Lautsprecher ELAC / ARENDAL
    LG OLED65BX9LB (PicCap, hyperion.NG webOS)

    FireTV 4K max

    -
    hyperion (classic) & Plugin HyperionControl | hyperion-ng 2.0.16-beta.1 (dreamOS)
    Hyperion-ng (Debian bullseye)
    -
    6 x ESP32/Wemos D1 mini - WLED - SK6812 RGBW-NW 60 LEDs/m
    FeinTech VSP01201 - Grabber Macrosilicon

    LG TV Hyperion webOS & PicCap


    snoozer_likelinux_manvtkns.gif


    Ambilight for ever

  • Thanks, I'll check that out.

    If it doesn't work, I'll make a clean install of HyperBian: I have screenshots of each screen just in case, so I should be able to set up via the web interface.


    This time I tried updating, but the update button does not work, so I installed the latest Hyperion instance and then in the web UI it showed the latest version. The update seemed to work fine, but after a powerloss it didn't anymore.


    Would you suggest to use a seperate USB grabber? And then simply use an HDMI splitter instead?

    • Official Post

    It looks like your systemctl config is wrong/corrupt.


    Try


    1. Copy Hyperion's service file

    sudo cp /usr/share/hyperion/service/hyperion.systemd /etc/systemd/system/hyperion@.service


    2. Establish the service for the current user (if it should be a different user, use the -u option)

    sudo /usr/share/hyperion/scripts/updateHyperionUser.sh


    3. Check that the service is running for your current user (or replace ${USER} with the username given with the -u option before)

    systemctl status hyperion@${USER}

  • I've re-installed Raspberry Pi OS and installed Hyperion 2.0.14 on this device. Out of the box, all seems to work. Could set all the parameters the same as before and the LEDs enable fine.


    I still have the issue of my image not being capture (I think?) correctly from the Chromecast or any other input, into the RPi. The colord blobs keep spinning around the TV, but no image gets synced. I'll try with my old capture card and otherwise I'll best go for a USB card (HDMI > USB) and a HDMI splitter. Any suggestions for that one? Budget: 50 EUR in total and it all should be fitting behind the TV (there's some room).


    - edit -

    My old loop capture card has the same issue: moving blobs around as idle, no sync with the image on screen.


    - edit 2 -

    When checking the status of the hyperion service, I still (again?) get this, even with the old capture card with loop that has been working before:



    - edit 3 -

    With the other capture card, I obv. had to re-select the right USB capture input in the Hyperion Web UI. After doing so, I get the LEDs to light up differently, only it's fading in and out/flickering. Also, it's not really a sync: it's more that all the LEDs light up kinda white/purple with some other colors, but they don't change when the image changes on TV. It does not correspond.


    I used the default settings: 640 x 480, 5 FPS, 8x size decimation.


    I just have purchased the following items to test out and hopefully they will resolve the issues I'm encountering:


    Aliexpress (ETA: end of the month):

    - RULLZ HDMI Video Capture with MS2130 chip


    Amazon (ETA: tomorrow):

    - Papeaso 4K HDMI to USB with MS2109 chip

    - EZCOO HDMI Splitter EZ-SP12H2

    - FeinTech VSP01201 HDMI splitter



    Found this information over here: Splitter / Matrix / Grabber Übersicht/Overview

    Edited 3 times, last by koen: Merged a post created by koen into this post. ().

  • Soooo, small update (with major results).


    I have now in use:

    - FeinTech VSP01201 HDMI splitter

    - Papeaso 4K HDMI to USB with MS2109 chip


    And it works fine! Had some issue with my RPi as it didn't appear to connect to WiFi: reboot with LAN cable and I've set 'wait for network to boot' and again the WiFi SSID and password via sudo raspi-config


    That worked out, but now the image was inverted (left/right mirrored), so I had to change the LED layout.

    Then I had the issue that the instance was set to RGB but needed to be set as GRB.


    It's even better now, as there is way less input lag on the LEDs than I had before with my 'old' setup. So I'm very pleased it's working and even better than before.


    Thanks for the help over here!

  • koen

    Selected a post as the best answer.
  • Settings level Expert and you can set RGB byte order (LED Controller).

    But there is also the RGB Byte Order Wizard at the top right (Magic wand). ;)

    In the settings for the LED Layout you have a few options to make it suitable.


    regards pclin

    Dreambox ONE / TWO

    dreamOS OE2.6

    Amlogic S922X - 53.000 DMIPS - 2 GB RAM - 16 GB Flash - Twin-DVB-S2X Tuner - HDR10 - HLG
    -
    AudioDSP: miniDSP 2x4HD - Amp: Pentagon - Lautsprecher ELAC / ARENDAL
    LG OLED65BX9LB (PicCap, hyperion.NG webOS)

    FireTV 4K max

    -
    hyperion (classic) & Plugin HyperionControl | hyperion-ng 2.0.16-beta.1 (dreamOS)
    Hyperion-ng (Debian bullseye)
    -
    6 x ESP32/Wemos D1 mini - WLED - SK6812 RGBW-NW 60 LEDs/m
    FeinTech VSP01201 - Grabber Macrosilicon

    LG TV Hyperion webOS & PicCap


    snoozer_likelinux_manvtkns.gif


    Ambilight for ever

    Edited once, last by pclin ().

  • Strangely enough, I'm having the same issue as before with my previous instance of the RPi with an older version of Hyperion.ng installed an with my older, USB/loop grabber.


    From time to time, the image of the TV goes black, LEDs and audio stop and after a few seconds it's back. All via incoming signal from Chromecast, doesn't matter if it's a Disney+ (encrypted?) signal or plain YouTube.


    This is either with the FeinTech and EZCOO splitter and I've set all different copy/4K settings/scaler (4K > 1080 for the grabber)/etc. settings I can to test out on these splitters. HDMI 1 out always goes to the TV, HDMI 2 out goes to the USB grabber.


    Perhaps it's the USB grabber that's too light? It's connected to a USB 3.0 port on the Pi.


    Power for the splitter goes via the USB 2.0 port on the Pi: could that be it? Perhaps better to use USB from the TV for power? Or external? Just thinking out loud here.


    I've also played around with the Hyperion settings via the dashboard. I've set the resolution to it's lowest, changed the frame rate (20 and 10), size decimation (default 8, changed to 16) and frame skip (0 and 1) - all still the same issue. So I don't think it's the Pi's hardware that isn't capable enough for example.


    Any ideas?


    Can't wait for the RULLZ btw, I hope that one solves the issue as the chip is newer (if I'm correct).

    • Best Answer

    Power for the splitter goes via the USB 2.0 port on the Pi: could that be it?

    Power it from other source I would recommend 👌 PSU or smartcharger is fine.


    I powered the Rullz LOOP capture devive with Nvidia Shield USB port.


    Later on I make a updated video of my setup.

  • koen

    Selected a post as the best answer.
  • Ambientheater77 I've used the USB power of the TV now and it works flawlessly. Some tweaking needs to be done as darker spots on the screen show green LEDs which is weird, but this topic seems to be resolved.


    Also, a big plus, is that the LEDs automatically enable and disable when I turn on and off the TV.

  • 2. Establish the service for the current user (if it should be a different user, use the -u option)

    sudo /usr/share/hyperion/scripts/updateHyperionUser.sh

    Can you please tell me how to do that??

    I have located the file updateHyperionUser.sh but I have no idea how to use the -u option :(

    My hyperion is under user pi and it is very annoying having to do those two commands (systemctl start hyperion@pi and systemctl status hyperion@pi) each time

    Thanks in advance..

Participate now!

Don’t have an account yet? Register yourself now and be a part of our community!