1. This site uses cookies. By continuing to use this site, you are agreeing to our use of cookies. Learn More.

BUG Hyperion.ng, hyperiond uses 100% CPU with Camera Module

Discussion in 'Bug Reports' started by 0matic, 17 June 2020.

  1. 0matic

    0matic New Member

    Messages:
    4
    Hardware:
    RPi1/Zero
    I want to try and use the camera module for usb grabbing. The module is working and I can grab a photo with it, but hyperion website is unavailable or unresponsive. Hyperiond is taking up all CPU and it will only get responsive again when I unplug the Camera Module or deactivate it through raspi-config.
    This will happen regardless of having usb grabbing activated or not.

    I'm using ws2801 with an Raspi 1b. I used to use it through an USB grabber for years, now I'm trying to get it to work through camera due to an updated Android TV.
    Hier is the debuglog:

    Code:
    [email protected]:/usr/share/hyperion/bin $ ./hyperiond -d
    [hyperiond MAIN] <INFO> Set user data path to '/home/pi/.hyperion'
    [hyperiond DAEMON] <DEBUG> <PythonInit.cpp:45:PythonInit()> Initializing Python interpreter
    [hyperiond SettingsManager] <DEBUG> <SettingsManager.cpp:108:SettingsManager()> Settings database initialized
    [hyperiond EFFECTFILES] <INFO> 39 effects loaded from directory :/effects/
    [hyperiond EFFECTFILES] <INFO> 22 effect schemas loaded from directory :/effects/schema/
    [hyperiond EFFECTFILES] <INFO> 0 effects loaded from directory /home/pi/.hyperion/custom-effects
    [hyperiond SettingsManager] <DEBUG> <SettingsManager.cpp:108:SettingsManager()> Settings database initialized
    [hyperiond BLACKBORDER] <DEBUG> <BlackBorderProcessor.cpp:65:handleSettingsUpdate()> Set mode to: default
    [hyperiond ComponentRegister] <DEBUG> <ComponentRegister.cpp:36:setNewComponentState()> Blackborder detector: enabled
    [hyperiond DAEMON] <INFO> set screen capture device to 'dispmanx'
    [hyperiond DISPMANXGRABBER] <DEBUG> <Grabber.cpp:34:setVideoMode()> Set videomode to 0
    [hyperiond DISPMANXGRABBER] <INFO> Display opened with resolution: 720x480
    [hyperiond DISPMANXGRABBER] <DEBUG> <Grabber.cpp:83:setWidthHeight()> Set new width: 80, height: 45 for capture
    [hyperiond DAEMON] <INFO> DISPMANX frame grabber created
    [hyperiond V4L2:auto] <DEBUG> <Grabber.cpp:34:setVideoMode()> Set videomode to 0
    [hyperiond LEDDEVICE] <INFO> LedDevice 'ws2801' found.
    [hyperiond ComponentRegister] <DEBUG> <ComponentRegister.cpp:36:setNewComponentState()> Smoothing: enabled
    [hyperiond FLATBUFCONNECTION] <INFO> Connecting to Hyperion: 127.0.0.1:19401
    [hyperiond LEDDEVICE] <DEBUG> <ProviderSpi.cpp:55:open()> _baudRate_Hz [1000000], _latchTime_ms [0]
    [hyperiond LEDDEVICE] <DEBUG> <ProviderSpi.cpp:56:open()> _spiDataInvert [0], _spiMode [0]
    [hyperiond EFFECTENGINE] <INFO> Run effect "Rainbow swirl fast" on channel 0
    [hyperiond EFFECTENGINE] <DEBUG> <EffectEngine.cpp:183:runEffectScript()> Start the effect: name [Rainbow swirl fast], smoothCfg [2]
    [hyperiond HYPERION] <DEBUG> <PriorityMuxer.cpp:158:registerInput()> Register new input 'System/EFFECT' with priority 0 as inactive
    [hyperiond HYPERION] <INFO> Initial foreground effect 'Rainbow swirl fast' started
    [hyperiond EFFECTENGINE] <INFO> Run effect "Warm mood blobs" on channel 254
    [hyperiond EFFECTENGINE] <DEBUG> <EffectEngine.cpp:183:runEffectScript()> Start the effect: name [Warm mood blobs], smoothCfg [2]
    [hyperiond HYPERION] <DEBUG> <PriorityMuxer.cpp:158:registerInput()> Register new input 'System/EFFECT' with priority 254 as inactive
    [hyperiond HYPERION] <INFO> Inital background effect 'Warm mood blobs' started
    [hyperiond HYPERION] <DEBUG> <PriorityMuxer.cpp:158:registerInput()> Register new input 'System/GRABBER' with priority 250 as inactive
    [hyperiond ComponentRegister] <DEBUG> <ComponentRegister.cpp:36:setNewComponentState()> Framegrabber: enabled
    [hyperiond BOBLIGHT] <DEBUG> <BoblightServer.cpp:28:BoblightServer()> Instance created
    [hyperiond ComponentRegister] <DEBUG> <ComponentRegister.cpp:36:setNewComponentState()> LED device: enabled
    [hyperiond HYPERION] <DEBUG> <PriorityMuxer.cpp:238:setInputImage()> Priority 0 is now active
    [hyperiond HYPERION] <DEBUG> <PriorityMuxer.cpp:333:setCurrentTime()> Set visible priority to 0
    [hyperiond HYPERION] <DEBUG> <PriorityMuxer.cpp:198:setInput()> Priority 254 is now active
    [hyperiond V4L2:auto] <INFO> Signal threshold set to: {12, 12, 12}
    [hyperiond V4L2:auto] <INFO> Signal detection is now disabled
    [hyperiond V4L2:auto] <INFO> Signal detection area set to: 0.250000,0.250000 x 0.750000,0.750000
    [hyperiond DAEMON] <DEBUG> <hyperiond.cpp:484:handleSettingsUpdate()> V4L2 grabber created
    [hyperiond JSONSERVER] <DEBUG> <JsonServer.cpp:27:JsonServer()> Created instance
    [hyperiond JSONSERVER] <INFO> Started on port 19444
    [hyperiond FLATBUFSERVER] <INFO> Started on port 19400
    [hyperiond PROTOSERVER] <INFO> Started on port 19445
    [hyperiond WEBSERVER] <DEBUG> <WebServer.cpp:33:initServer()> Initialize Webserver
    [hyperiond WEBSERVER] <DEBUG> Previous line repeats 1 times
    [hyperiond Dispmanx] <DEBUG> <GrabberWrapper.cpp:49:start()> Grabber start()
    [hyperiond HYPERION] <INFO> Hyperion instance 'First LED Hardware instance' has been started
    [hyperiond HYPERION] <DEBUG> <PriorityMuxer.cpp:298:setCurrentTime()> Timeout clear for priority 0
    [hyperiond HYPERION] <DEBUG> <PriorityMuxer.cpp:238:setInputImage()> Priority 250 is now active
    [hyperiond HYPERION] <DEBUG> <PriorityMuxer.cpp:333:setCurrentTime()> Set visible priority to 250
    [hyperiond WEBSERVER] <DEBUG> <WebServer.cpp:91:handleSettingsUpdate()> Apply Webserver settings
    [hyperiond WEBSERVER] <DEBUG> <WebServer.cpp:109:handleSettingsUpdate()> Set document root to: :/webconfig
    [hyperiond WEBSERVER] <INFO> Started on port 8090 name 'Hyperion Webserver'
    [hyperiond WEBSERVER] <DEBUG> <WebServer.cpp:91:handleSettingsUpdate()> Apply Webserver settings
    [hyperiond WEBSERVER] <DEBUG> <WebServer.cpp:109:handleSettingsUpdate()> Set document root to: :/webconfig
    [hyperiond WEBSERVER] <DEBUG> <WebServer.cpp:175:handleSettingsUpdate()> Setup SSL certificate
    [hyperiond WEBSERVER] <DEBUG> <WebServer.cpp:191:handleSettingsUpdate()> Setup private SSL key
    [hyperiond WEBSERVER] <INFO> Started on port 8092 name 'Hyperion Webserver'
    [hyperiond WEBSOCKET] <DEBUG> <WebSocketClient.cpp:30:WebSocketClient()> New connection from ::ffff:10.0.0.51
    [hyperiond WEBSOCKET] <DEBUG> <JsonAPI.cpp:102:handleInstanceSwitch()> Client '::ffff:10.0.0.51' switch to Hyperion instance 0
     
  2. TPmodding

    TPmodding Administrator Staff Member Administrator

    Messages:
    1,840
    Hardware:
    RPi1/Zero, RPi2, RPi3, +Arduino, +nodeMCU/ESP8266
    which version?
     
  3. 0matic

    0matic New Member

    Messages:
    4
    Hardware:
    RPi1/Zero
    2.0.0-alpha 6
    Camera module 1.3
     
  4. TPmodding

    TPmodding Administrator Staff Member Administrator

    Messages:
    1,840
    Hardware:
    RPi1/Zero, RPi2, RPi3, +Arduino, +nodeMCU/ESP8266
  5. 0matic

    0matic New Member

    Messages:
    4
    Hardware:
    RPi1/Zero
    Can I start everything from the hyperion folder or should I copy it over the installed stuff?
     
  6. TPmodding

    TPmodding Administrator Staff Member Administrator

    Messages:
    1,840
    Hardware:
    RPi1/Zero, RPi2, RPi3, +Arduino, +nodeMCU/ESP8266
    from the folder is enough to test
     
  7. 0matic

    0matic New Member

    Messages:
    4
    Hardware:
    RPi1/Zero
    Ok, the CPU isn't at 100%, but I can't get the cam to work with hyperion. Hyperion-v4l2 --screenshot uses 100% CPU and takes forever and afterwards I have a small black picture. Raspistill and raspivid are working good.
     
  8. 4LTJ

    4LTJ New Member

    Messages:
    13