hyperion-project / hyperion.ng

The successor to Hyperion aka Hyperion Next Generation
https://hyperion-project.org/
MIT License
3.11k stars 384 forks source link

Segmentation fault on Hyperion 2.0.0-alpha.7 #903

Closed RaymondMouthaan closed 4 years ago

RaymondMouthaan commented 4 years ago

Bug report

Hyperion 2.0.0-alpha.7 crashes after setting up LED hardware with a segmentation fault

Steps to reproduce

  1. Flash HyperBian
  2. Open Hyperion UI from the browser
  3. Setup LED Hardware:
    • LED Controller
    • Controller Type: adalight
    • Output path: /dev/ttyUSB0
  4. Save Settings

What is expected?

Hyperion running

What is actually happening?

Hyperion crashes as soon as the Settings are saved. Because by default Hyperion runs as service, Hyperion restarts and crashes again, and again ...

Stopping the service and manual starting hyperiond shows these logs:

2020-07-25T11:13:20.076 hyperiond EFFECTENGINE : <ERROR> ###### PYTHON EXCEPTION ######
2020-07-25T11:13:20.077 hyperiond EFFECTENGINE : <ERROR> ## In effect 'Rainbow swirl fast'
2020-07-25T11:13:20.077 hyperiond EFFECTENGINE : <ERROR> ## ZipImportError: can't decompress data; zlib not available
2020-07-25T11:13:20.843 hyperiond EFFECTENGINE : <ERROR> ## Traceback (most recent call last):
2020-07-25T11:13:20.844 hyperiond EFFECTENGINE : <ERROR> ## File "<string>", line 1, in <module>
2020-07-25T11:13:20.845 hyperiond EFFECTENGINE : <ERROR> ## File "/usr/share/hyperion/bin/python35.zip/random.py", line 40, in <module>
    from types import MethodType as _MethodType, BuiltinMethodType as _BuiltinMethodType
2020-07-25T11:13:20.846 hyperiond EFFECTENGINE : <ERROR> ## File "/usr/share/hyperion/bin/python35.zip/types.py", line 166, in <module>
    import functools as _functools
2020-07-25T11:13:20.846 hyperiond EFFECTENGINE : <ERROR> ## File "/usr/share/hyperion/bin/python35.zip/functools.py", line 21, in <module>
    from collections import namedtuple
2020-07-25T11:13:20.847 hyperiond EFFECTENGINE : <ERROR> ## File "/usr/share/hyperion/bin/python35.zip/collections/__init__.py", line 32, in <module>
    from reprlib import recursive_repr as _recursive_repr
2020-07-25T11:13:20.848 hyperiond EFFECTENGINE : <ERROR> ## zipimport.ZipImportError: can't decompress data; zlib not available
2020-07-25T11:13:20.848 hyperiond EFFECTENGINE : <ERROR> ###### EXCEPTION END ######

Hyperion caught signal :SIGSEGV
2020-07-25T11:13:20.923 hyperiond CORE         : <ERROR>    /lib/arm-linux-gnueabihf/libc.so.6(__default_rt_sa_restorer+0) [0x7561e130]
2020-07-25T11:13:20.924 hyperiond CORE         : <ERROR>    /usr/share/hyperion/bin/../lib/libQt5Core.so.5(QRingBuffer::reserve(long long)+0x44) [0x75af1b74]
Segmentation fault

From above logs multiple errors occur, not sure if they are related. The zipimport.ZipImportError: can't decompress data; zlib not available error was reported earlier at #881

Removing hyperion.db make Hyperion start again.

System

Hyperion Server: 
- Build:       (HEAD detached at ffa2fd45) (Paulchen-Panther-69e9fa6d/ffa2fd45-1595517126)
- Build time:  Jul 24 2020 15:49:41
- Git Remote:  https://github.com/hyperion-project/hyperion.ng
- Version:     2.0.0-alpha.7
- UI Lang:     auto (BrowserLang: en-gb)
- UI Access:   expert
- Avail Capt:  dispmanx,v4l2,framebuffer,qt

Hyperion Server OS: 
- Distribution: HyperBian GNU/Linux 10 (buster)
- Arch:         arm
- Kernel:       linux (5.4.51-v7+ (WS: 32))
- Browser:      Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_6) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/13.1.2 Safari/605.1.15 
RaymondMouthaan commented 4 years ago

@RaymondMouthaan Thanks for the further test. That proves we didn't fix it and there should be a dependency issue. You can install the latest mater to your system as I mentioned above.

@m-seker, your welcome! I assume you you know what to do to get it fixed? .. if further assistance is required, don't hesitate to contact me.

I just created a package and use it to install it for now, as you suggested 👍

m-seker commented 4 years ago

Unfortunately we currently don't know what dependency causes the issue but we will look further. Glad it now works for you.

Paulchen-Panther commented 4 years ago

compile

I had these two commits compiled individually in the docker container. could you please test these two for us? I want to rule out that Lord-Grey's PR was responsible for this. Many thanks.

Commit 7389068 -> Artifact Commit 3b48d8c -> Artifact

RaymondMouthaan commented 4 years ago

@Paulchen-Panther, happy to test it for you.

Can you please supply the commands to be sure I test the right thing?

I assume the commits are not yet merge in master, therefore the command below wouldn't do the trick?

wget -qN https://raw.github.com/hyperion-project/hyperion.ng/master/bin/scripts/docker-compile.sh && chmod +x *.sh && ./docker-compile.sh
Paulchen-Panther commented 4 years ago

Just download the two artifacts and extract them. Then run Hyperion in the extracted share/hyperion/bin directory. It is best to delete the hidden .hyperion folder in the home directory before testing the unzipped artifacts.

RaymondMouthaan commented 4 years ago

@Paulchen-Panther,

The first artifact 201195248 extracts alpha.6:

I removed all previous installed hyperion files.

Then I installed Hyperion-2.0.0-alpha.6-Linux-armv6l.deb with:

This artifact runs fine without removing ./hyperion, which has adalight device for /dev/ttyUSB0 configured. And also with it deleted and reconfigered.

Hyperion Server: 
- Build:       (HEAD detached at b3b0f27f) (Paulchen-Panther-909b9228/b3b0f27f-1596964770)
- Build time:  Aug  9 2020 09:48:26
- Git Remote:  https://github.com/Paulchen-Panther/hyperion.ng
- Version:     2.0.0-alpha.6
- UI Lang:     auto (BrowserLang: en-gb)
- UI Access:   expert
- Avail Capt:  v4l2,framebuffer,qt

Hyperion Server OS: 
- Distribution: Raspbian GNU/Linux 10 (buster)
- Arch:         arm
- Kernel:       linux (5.4.51-v7+ (WS: 32))
- Browser:      Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_6) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/13.1.2 Safari/605.1.15 

The second arifact 201194434 also extracts:

Installed it following the same procedure like above and it started successfully as well: in both case of removing and not removing .hyperion.

Hyperion Server: 
- Build:       (HEAD detached at 7cb9cc00) (Paulchen-Panther-e43bae82/7cb9cc00-1596965117)
- Build time:  Aug  9 2020 09:44:41
- Git Remote:  https://github.com/Paulchen-Panther/hyperion.ng
- Version:     2.0.0-alpha.6
- UI Lang:     auto (BrowserLang: en-gb)
- UI Access:   expert
- Avail Capt:  v4l2,framebuffer,qt

Hyperion Server OS: 
- Distribution: Raspbian GNU/Linux 10 (buster)
- Arch:         arm
- Kernel:       linux (5.4.51-v7+ (WS: 32))
- Browser:      Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_6) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/13.1.2 Safari/605.1.15 

In other words, both artefacts don't face the segment error we saw earlier.

Paulchen-Panther commented 4 years ago

I can't really confirm that. That artifact b3b0f27f creates the same error. https://prnt.sc/twmtga

Paulchen-Panther commented 4 years ago

Can you please test this on HyperBian? Thanks

Paulchen-Panther commented 4 years ago

screen_record_3b48d8c.zip

RaymondMouthaan commented 4 years ago

screen_record_3b48d8c.zip

Great, at least you can reproduce the error, but indeed here also b3b0f27 fails. During previous tests I forgot to connect the usb device #oeps

RaymondMouthaan commented 4 years ago

Also the second artefact (201194434) fails but with a different error:

hyperiond LEDDEVICE] <ERROR> Device disabled, device 'adalight' signals error: 'Invalid serial device name: [/dev/ttyUSB0]!'
[hyperiond LEDDEVICE] <ERROR> Device disabled, device 'adalight' signals error: 'Error opening device!'

I removed all and reinstalled my compiled Alpha.7 from yesterday which works fine again

Paulchen-Panther commented 4 years ago

[hyperiond LEDDEVICE] <ERROR> Device disabled, device 'adalight' signals error: 'Error opening device!' This is because hyperion was not executed with root privileges.

RaymondMouthaan commented 4 years ago

[hyperiond LEDDEVICE] <ERROR> Device disabled, device 'adalight' signals error: 'Error opening device!' This is because hyperion was not executed with root privileges.

that's odd, while letting it start via systemctl it should have root privileges and also when stopping the service and start hyperiond manually with sudo hyperiond the same error occurs.

sudo systemctl status hyperiond@pi.service
● hyperiond@pi.service - Hyperion ambient light systemd service  for user pi
   Loaded: loaded (/etc/systemd/system/hyperiond@.service; enabled; vendor preset: enabled)
   Active: active (running) since Sun 2020-08-09 15:17:30 BST; 49s ago
 Main PID: 1129 (hyperiond)
    Tasks: 11 (limit: 2068)
   CGroup: /system.slice/system-hyperiond.slice/hyperiond@pi.service
           └─1129 /usr/bin/hyperiond

Aug 09 15:17:33 raspberrypi hyperiond[1129]: ## File "/usr/share/hyperion/bin/python35.zip/types.py", line 166, in <module>
                                                 import functools as _functools
Aug 09 15:17:33 raspberrypi hyperiond[1129]: ## File "/usr/share/hyperion/bin/python35.zip/functools.py", line 21, in <module>
                                                 from collections import namedtuple
Aug 09 15:17:33 raspberrypi hyperiond[1129]: ## File "/usr/share/hyperion/bin/python35.zip/collections/__init__.py", line 22, in <module>
                                                 from _collections_abc import *
Aug 09 15:17:33 raspberrypi hyperiond[1129]: ## zipimport.ZipImportError: can't decompress data; zlib not available
Aug 09 15:17:33 raspberrypi hyperiond[1129]: ###### EXCEPTION END ######
Aug 09 15:17:55 raspberrypi hyperiond[1129]: [hyperiond LedDeviceWrapper] <INFO> LedDevice 'adalight' closed
Aug 09 15:17:55 raspberrypi hyperiond[1129]: [hyperiond LEDDEVICE] <ERROR> Device disabled, device 'adalight' signals error: 'Invalid serial device name: [/dev/ttyU
Aug 09 15:17:55 raspberrypi hyperiond[1129]: Device disabled, device 'adalight' signals error: 'Invalid serial device name: [/dev/ttyUSB0]!'
Aug 09 15:17:55 raspberrypi hyperiond[1129]: [hyperiond LEDDEVICE] <ERROR> Device disabled, device 'adalight' signals error: 'Error opening device!'
Aug 09 15:17:55 raspberrypi hyperiond[1129]: Device disabled, device 'adalight' signals error: 'Error opening device!'
sudo hyperiond
[hyperiond DAEMON] <ERROR> The dispmanx framegrabber can not be instantiated, because it has been left out from the build
[hyperiond LEDDEVICE] <ERROR> Device disabled, device 'adalight' signals error: 'Invalid serial device name: [/dev/ttyUSB0]!'
[hyperiond LEDDEVICE] <ERROR> Device disabled, device 'adalight' signals error: 'Error opening device!'
Paulchen-Panther commented 4 years ago

with root privileges: https://prnt.sc/twmrm2

Paulchen-Panther commented 4 years ago

the service is not run as root: https://github.com/hyperion-project/hyperion.ng/blob/master/bin/service/hyperion.systemd#L8 hyperiond@pi.service

remove the line 'user' and reboot

RaymondMouthaan commented 4 years ago

Okay, far enough but why is it suddenly required to run with root privileges while the released alpha.6 and my alpha.7 doesn't require it? Both are using hyperiond@pi.service.

RaymondMouthaan commented 4 years ago
image
hyperiond@pi.service - Hyperion ambient light systemd service  for user pi
   Loaded: loaded (/etc/systemd/system/hyperiond@.service; enabled; vendor preset: enabled)
   Active: active (running) since Sun 2020-08-09 15:29:07 BST; 1min 30s ago
 Main PID: 558 (hyperiond)
    Tasks: 11 (limit: 2068)
   CGroup: /system.slice/system-hyperiond.slice/hyperiond@pi.service
           └─558 /usr/bin/hyperiond

Aug 09 15:29:12 raspberrypi hyperiond[558]: [hyperiond EFFECTENGINE] <ERROR> ###### EXCEPTION END ######
Aug 09 15:29:12 raspberrypi hyperiond[558]: ## File "/usr/share/hyperion/bin/python35.zip/os.py", line 57, in <module>
                                                import posixpath as path
Aug 09 15:29:12 raspberrypi hyperiond[558]: ## File "/usr/share/hyperion/bin/python35.zip/posixpath.py", line 16, in <module>
                                                import genericpath
Aug 09 15:29:12 raspberrypi hyperiond[558]: ## zipimport.ZipImportError: can't decompress data; zlib not available
Aug 09 15:29:12 raspberrypi hyperiond[558]: ###### EXCEPTION END ######
Aug 09 15:30:08 raspberrypi hyperiond[558]: [hyperiond LedDeviceWrapper] <INFO> LedDevice 'file' closed
Aug 09 15:30:08 raspberrypi hyperiond[558]: [hyperiond LEDDEVICE] <ERROR> Device disabled, device 'adalight' signals error: 'Invalid serial device name: [/dev/ttyUS
Aug 09 15:30:08 raspberrypi hyperiond[558]: [hyperiond LEDDEVICE] <ERROR> Device disabled, device 'adalight' signals error: 'Error opening device!'
Aug 09 15:30:08 raspberrypi hyperiond[558]: Device disabled, device 'adalight' signals error: 'Invalid serial device name: [/dev/ttyUSB0]!'
Aug 09 15:30:08 raspberrypi hyperiond[558]: Device disabled, device 'adalight' signals error: 'Error opening device!'

Running as root still raises the error .. guess my PI is %#^%@$#%$#!

Paulchen-Panther commented 4 years ago

I hope you test this whole thing on HyperBian! If not, we can end this conversation.

RaymondMouthaan commented 4 years ago

I hope you test this whole thing on HyperBian! If not, we can end this conversation.

Well no I didn't test it on HyperBian, if that's required - I can start all over if it help to mash the issue?

Paulchen-Panther commented 4 years ago

If everyone takes an operating system of their choice to test, we never get there. Note on the margin: Screenshot_1

RaymondMouthaan commented 4 years ago

Yeah, the error appeared on HyperBian at first but also on Raspbian Lite .. in the end I assume hyperion should work properly on HyperBian as wel as the released dep file on Raspbian as wel as the build deb file using the docker script.

So if HyperBian is a good starting point to fix the issue, I can do testing with it as a base and hopefully it can be fixed run on all above successfully.

Paulchen-Panther commented 4 years ago
pi@HyperBian:~/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> New Effect path "/home/pi/.hyperion/custom-effects" created successfull
[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 DAEMON] <ERROR> The dispmanx framegrabber can not be instantiated, because it has been left out from the build
[hyperiond V4L2:auto] <DEBUG> <Grabber.cpp:31:setVideoMode()> Set videomode to 0
[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:498: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 LEDDEVICE] <INFO> LedDevice 'file' found.
[hyperiond LEDDEVICE] <DEBUG> <LedDeviceFile.cpp:59:open()> QIODevice::WriteOnly, /dev/null
[hyperiond ComponentRegister] <DEBUG> <ComponentRegister.cpp:36:setNewComponentState()> Smoothing: enabled
[hyperiond FLATBUFCONNECTION] <INFO> Connecting to Hyperion: 127.0.0.1:19401
[hyperiond EFFECTENGINE] <INFO> Run effect "Rainbow swirl fast" on channel 0
[hyperiond EFFECTENGINE] <DEBUG> <EffectEngine.cpp:187: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:187: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] <INFO> Hyperion instance 'First LED Hardware instance' has been started
[hyperiond WEBSERVER] <DEBUG> <WebServer.cpp:91:handleSettingsUpdate()> Apply Webserver settings
[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> Previous line repeats 1 times
[hyperiond WEBSERVER] <INFO> Started on port 8090 name 'Hyperion Webserver'
[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 HYPERION] <DEBUG> <PriorityMuxer.cpp:238:setInputImage()> Priority 0 is now active
[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 HYPERION] <DEBUG> <PriorityMuxer.cpp:298:setCurrentTime()> Timeout clear for priority 0
[hyperiond HYPERION] <DEBUG> <PriorityMuxer.cpp:333:setCurrentTime()> Set visible priority to 254
[hyperiond WEBSOCKET] <DEBUG> <WebSocketClient.cpp:30:WebSocketClient()> New connection from ::ffff:192.168.0.90
[hyperiond WEBSOCKET] <DEBUG> <JsonAPI.cpp:103:handleInstanceSwitch()> Client '::ffff:192.168.0.90' switch to Hyperion instance 0
[hyperiond LEDDEVICE] <DEBUG> <LedDeviceFile.cpp:90:close()> File: /dev/null
[hyperiond LedDeviceWrapper] <INFO> LedDevice 'file' closed
[hyperiond LEDDEVICE] <INFO> LedDevice 'adalight' found.
[hyperiond LEDDEVICE] <DEBUG> <LedDeviceAdalight.cpp:56:init()> Adalight header for 26 leds: Ada 0x00 0x19 0x4c
[hyperiond LEDDEVICE] <INFO> Opening UART: /dev/ttyUSB0
[hyperiond LEDDEVICE] <ERROR> Device disabled, device 'adalight' signals error: 'Invalid serial device name: [/dev/ttyUSB0]!'
[hyperiond LEDDEVICE] <ERROR> Device disabled, device 'adalight' signals error: 'Error opening device!'
[hyperiond ComponentRegister] <DEBUG> <ComponentRegister.cpp:36:setNewComponentState()> LED device: disabled
^C[hyperiond SIGNAL] <INFO> Signal received : Interrupt
[hyperiond DAEMON] <DEBUG> <hyperiond.cpp:167:freeObjects()> Cleaning up Hyperion before quit.
[hyperiond FLATBUFSERVER] <INFO> Stopped
[hyperiond PROTOSERVER] <INFO> Stopped
[hyperiond HYPERION] <INFO> Hyperion instance 'First LED Hardware instance' has been stopped
^X[hyperiond LedDeviceWrapper] <INFO> LedDevice 'adalight' closed
QObject::killTimer: Timers cannot be stopped from another thread
QObject::~QObject: Timers cannot be stopped from another thread
[hyperiond V4L2:auto] <DEBUG> <GrabberWrapper.cpp:43:~GrabberWrapper()> Close grabber: V4L2:auto
[hyperiond MAIN] <INFO> Application closed with code 0
[hyperiond DAEMON] <DEBUG> <PythonInit.cpp:58:~PythonInit()> Cleaning up Python interpreter
pi@HyperBian:~/hyperion/bin $
pi@HyperBian:~/hyperion/bin $
pi@HyperBian:~/hyperion/bin $
pi@HyperBian:~/hyperion/bin $
pi@HyperBian:~/hyperion/bin $
pi@HyperBian:~/hyperion/bin $ sudo ./hyperiond -d
[hyperiond MAIN] <INFO> Set user data path to '/root/.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 /root/.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 DAEMON] <ERROR> The dispmanx framegrabber can not be instantiated, because it has been left out from the build
[hyperiond V4L2:auto] <DEBUG> <Grabber.cpp:31:setVideoMode()> Set videomode to 0
[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:498: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 LEDDEVICE] <INFO> LedDevice 'adalight' found.
[hyperiond ComponentRegister] <DEBUG> <ComponentRegister.cpp:36:setNewComponentState()> Smoothing: enabled
[hyperiond LEDDEVICE] <DEBUG> <LedDeviceAdalight.cpp:56:init()> Adalight header for 26 leds: Ada 0x00 0x19 0x4c
[hyperiond LEDDEVICE] <INFO> Opening UART: ttyUSB0
[hyperiond FLATBUFCONNECTION] <INFO> Connecting to Hyperion: 127.0.0.1:19401
[hyperiond EFFECTENGINE] <INFO> Run effect "Rainbow swirl fast" on channel 0
[hyperiond EFFECTENGINE] <DEBUG> <EffectEngine.cpp:187: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:187: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 HYPERION] <INFO> Hyperion instance 'First LED Hardware instance' has been started
[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: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 LEDDEVICE] <DEBUG> <ProviderRs232.cpp:221:tryOpen()> Setting baud rate to 1000000
[hyperiond LEDDEVICE] <DEBUG> <ProviderRs232.cpp:239:tryOpen()> Device blocked for 1500 ms
[hyperiond ComponentRegister] <DEBUG> <ComponentRegister.cpp:36:setNewComponentState()> LED device: enabled
[hyperiond LEDDEVICE] <DEBUG> <LedDeviceAdalight.cpp:83:receivedData()> >>received 1 bytes data
[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 HYPERION] <DEBUG> <PriorityMuxer.cpp:238:setInputImage()> Priority 0 is now active
[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 LEDDEVICE] <DEBUG> <ProviderRs232.cpp:257:writeBytes()> 36 frames dropped
[hyperiond WEBSOCKET] <DEBUG> <WebSocketClient.cpp:30:WebSocketClient()> New connection from ::ffff:192.168.0.90
[hyperiond WEBSOCKET] <DEBUG> <JsonAPI.cpp:103:handleInstanceSwitch()> Client '::ffff:192.168.0.90' switch to Hyperion instance 0
[hyperiond LEDDEVICE] <DEBUG> <LedDeviceAdalight.cpp:83:receivedData()> >>received 4 bytes data
[hyperiond HYPERION] <DEBUG> <PriorityMuxer.cpp:298:setCurrentTime()> Timeout clear for priority 0
[hyperiond HYPERION] <DEBUG> <PriorityMuxer.cpp:333:setCurrentTime()> Set visible priority to 254

Tested with this Artifact as tar.gz on HyperBian

Steps to reproduce:

  1. Stop old hyperion service: systemctl stop hyperion@pi.service
  2. Extract tar.gz from artifact.zip (eg. on WIndows)
  3. Transfer tar.gz to rpi (eg. WinSCP)
  4. make new folder hyperion: mkdir hyperion
  5. extract tar.gz with: tar -xzf Hyperion-2.0.0-alpha.6-Linux-armv6l.tar.gz --strip-components=2 -C /home/pi/hyperion share/hyperion/
  6. extract the packed python package. (post)
  7. run hyperion from hyperion folder: sudo ./hyperiond
RaymondMouthaan commented 4 years ago

From a fresh installed HyperBian ... this artifact 3b48d8c

Extracted the tar.gz and copied all of the /share/hyperion content to /usr/share/hyperion as sudo then a cd to /usr/share/hyperion where I ran the hyperiond -d and sudo hyperiond -d

./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 DAEMON] <ERROR> The dispmanx framegrabber can not be instantiated, because it has been left out from the build
[hyperiond V4L2:auto] <DEBUG> <Grabber.cpp:31:setVideoMode()> Set videomode to 0
[hyperiond LEDDEVICE] <INFO> LedDevice 'adalight' found.
[hyperiond LEDDEVICE] <DEBUG> <LedDeviceAdalight.cpp:56:init()> Adalight header for 26 leds: Ada 0x00 0x19 0x4c
[hyperiond LEDDEVICE] <INFO> Opening UART: /dev/ttyUSB0
[hyperiond ComponentRegister] <DEBUG> <ComponentRegister.cpp:36:setNewComponentState()> Smoothing: enabled
[hyperiond FLATBUFCONNECTION] <INFO> Connecting to Hyperion: 127.0.0.1:19401
[hyperiond EFFECTENGINE] <INFO> Run effect "Rainbow swirl fast" on channel 0
[hyperiond EFFECTENGINE] <DEBUG> <EffectEngine.cpp:187: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:187: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 LEDDEVICE] <ERROR> Device disabled, device 'adalight' signals error: 'Invalid serial device name: [/dev/ttyUSB0]!'
[hyperiond LEDDEVICE] <ERROR> Device disabled, device 'adalight' signals error: 'Error opening device!'
[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:498: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 WEBSERVER] <DEBUG> <WebServer.cpp:33:initServer()> Initialize Webserver
[hyperiond WEBSERVER] <DEBUG> Previous line repeats 1 times
[hyperiond HYPERION] <INFO> Hyperion instance 'First LED Hardware instance' has been started
[hyperiond PROTOSERVER] <INFO> Started on port 19445
[hyperiond WEBSERVER] <DEBUG> <WebServer.cpp:91:handleSettingsUpdate()> Apply Webserver settings[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:109:handleSettingsUpdate()> Set document root to: :/webconfig
[hyperiond HYPERION] <DEBUG> <PriorityMuxer.cpp:333:setCurrentTime()> Set visible priority to 0
[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 HYPERION] <DEBUG> <PriorityMuxer.cpp:238:setInputImage()> Priority 0 is now active
[hyperiond HYPERION] <DEBUG> <PriorityMuxer.cpp:198:setInput()> Priority 254 is now active
[hyperiond HYPERION] <DEBUG> <PriorityMuxer.cpp:298:setCurrentTime()> Timeout clear for priority 0
[hyperiond HYPERION] <DEBUG> <PriorityMuxer.cpp:333:setCurrentTime()> Set visible priority to 254
[hyperiond WEBSOCKET] <DEBUG> <WebSocketClient.cpp:30:WebSocketClient()> New connection from ::ffff:10.0.10.40
[hyperiond WEBSOCKET] <DEBUG> <JsonAPI.cpp:103:handleInstanceSwitch()> Client '::ffff:10.0.10.40' switch to Hyperion instance 0

pi@HyperBian:/usr/share/hyperion/bin $ sudo ./hyperiond -d
[hyperiond MAIN] <INFO> Set user data path to '/root/.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 /root/.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 DAEMON] <ERROR> The dispmanx framegrabber can not be instantiated, because it has been left out from the build
[hyperiond V4L2:auto] <DEBUG> <Grabber.cpp:31:setVideoMode()> Set videomode to 0
[hyperiond LEDDEVICE] <INFO> LedDevice 'adalight' found.
[hyperiond LEDDEVICE] <DEBUG> <LedDeviceAdalight.cpp:56:init()> Adalight header for 26 leds: Ada 0x00 0x19 0x4c
[hyperiond LEDDEVICE] <INFO> Opening UART: /dev/ttyUSB0
[hyperiond ComponentRegister] <DEBUG> <ComponentRegister.cpp:36:setNewComponentState()> Smoothing: enabled
[hyperiond FLATBUFCONNECTION] <INFO> Connecting to Hyperion: 127.0.0.1:19401
[hyperiond EFFECTENGINE] <INFO> Run effect "Rainbow swirl fast" on channel 0
[hyperiond EFFECTENGINE] <DEBUG> <EffectEngine.cpp:187: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:187: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 LEDDEVICE] <ERROR> Device disabled, device 'adalight' signals error: 'Invalid serial device name: [/dev/ttyUSB0]!'
[hyperiond LEDDEVICE] <ERROR> Device disabled, device 'adalight' signals error: 'Error opening device!'
[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:498: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 WEBSERVER] <DEBUG> <WebServer.cpp:33:initServer()> Initialize Webserver
[hyperiond WEBSERVER] <DEBUG> Previous line repeats 1 times
[hyperiond PROTOSERVER] <INFO> Started on port 19445
[hyperiond HYPERION] <INFO> Hyperion instance 'First LED Hardware instance' has been started
[hyperiond WEBSERVER] <DEBUG> <WebServer.cpp:91:handleSettingsUpdate()> Apply Webserver settings
[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:109:handleSettingsUpdate()> Set document root to: :/webconfig
[hyperiond WEBSERVER] <INFO> Started on port 8090 name 'Hyperion Webserver'
[hyperiond HYPERION] <DEBUG> <PriorityMuxer.cpp:333:setCurrentTime()> Set visible priority to 0
[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 EFFECTENGINE] <ERROR> ###### PYTHON EXCEPTION ######
[hyperiond EFFECTENGINE] <ERROR> ## In effect 'Rainbow swirl fast'
[hyperiond EFFECTENGINE] <ERROR> ## ZipImportError: can't decompress data; zlib not available
[hyperiond EFFECTENGINE] <ERROR> ###### PYTHON EXCEPTION ######
[hyperiond EFFECTENGINE] <ERROR> ## In effect 'Warm mood blobs'
[hyperiond EFFECTENGINE] <ERROR> ## ZipImportError: can't decompress data; zlib not available
[hyperiond WEBSOCKET] <DEBUG> <WebSocketClient.cpp:30:WebSocketClient()> New connection from ::ffff:10.0.10.40
[hyperiond WEBSOCKET] <DEBUG> <JsonAPI.cpp:103:handleInstanceSwitch()> Client '::ffff:10.0.10.40' switch to Hyperion instance 0
[hyperiond EFFECTENGINE] <ERROR> ## Traceback (most recent call last):
[hyperiond EFFECTENGINE] <ERROR> ## File "<string>", line 2, in <module>
[hyperiond EFFECTENGINE] <ERROR> ## File "/usr/share/hyperion/bin/python35.zip/random.py", line 43, in <module>
    from os import urandom as _urandom
[hyperiond EFFECTENGINE] <ERROR> ## File "/usr/share/hyperion/bin/python35.zip/os.py", line 57, in <module>
    import posixpath as path
[hyperiond EFFECTENGINE] <ERROR> ## zipimport.ZipImportError: can't decompress data; zlib not available
[hyperiond EFFECTENGINE] <ERROR> ###### EXCEPTION END ######
[hyperiond HYPERION] <DEBUG> <PriorityMuxer.cpp:255:clearInput()> Removed source priority 254
[hyperiond EFFECTENGINE] <INFO> effect finished
[hyperiond EFFECTENGINE] <ERROR> ## Traceback (most recent call last):
[hyperiond EFFECTENGINE] <ERROR> ## File "<string>", line 1, in <module>
[hyperiond EFFECTENGINE] <ERROR> ## File "/usr/share/hyperion/bin/python35.zip/random.py", line 40, in <module>
    from types import MethodType as _MethodType, BuiltinMethodType as _BuiltinMethodType
[hyperiond EFFECTENGINE] <ERROR> ## File "/usr/share/hyperion/bin/python35.zip/types.py", line 166, in <module>
    import functools as _functools
[hyperiond EFFECTENGINE] <ERROR> ## File "/usr/share/hyperion/bin/python35.zip/functools.py", line 21, in <module>
    from collections import namedtuple
[hyperiond EFFECTENGINE] <ERROR> ## File "/usr/share/hyperion/bin/python35.zip/collections/__init__.py", line 29, in <module>
    import heapq as _heapq
[hyperiond EFFECTENGINE] <ERROR> ## zipimport.ZipImportError: can't decompress data; zlib not available
[hyperiond EFFECTENGINE] <ERROR> ###### EXCEPTION END ######
[hyperiond HYPERION] <DEBUG> <PriorityMuxer.cpp:255:clearInput()> Removed source priority 0
[hyperiond HYPERION] <DEBUG> <PriorityMuxer.cpp:333:setCurrentTime()> Set visible priority to 255
[hyperiond EFFECTENGINE] <INFO> effect finished

Same thing when running it from its own dir in ~/3b48d8c/share/hyperion/bin, so I am lost ..

Lord-Grey commented 4 years ago

@RaymondMouthaan could you give it a try and put „auto“ as device name in the configuration? Let us check which serial device ist automatically detected....

RaymondMouthaan commented 4 years ago

@Lord-Grey, seems 'auto' detects the correct device /dev/ttyUSB0 as shown in the log.

notice the hyperion version (HEAD detached at 7cb9cc00) (Paulchen-Panther-e43bae82/7cb9cc00-1596965117)

image
pi@HyperBian:~/3b48d8c/share/hyperion/bin $ sudo ./hyperiond -d --deleteDatabase
[hyperiond MAIN] <INFO> Set user data path to '/root/.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 /root/.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 DAEMON] <ERROR> The dispmanx framegrabber can not be instantiated, because it has been left out from the build
[hyperiond V4L2:auto] <DEBUG> <Grabber.cpp:31:setVideoMode()> Set videomode to 0
[hyperiond LEDDEVICE] <INFO> LedDevice 'file' found.
[hyperiond LEDDEVICE] <DEBUG> <LedDeviceFile.cpp:59:open()> QIODevice::WriteOnly, /dev/null
[hyperiond ComponentRegister] <DEBUG> <ComponentRegister.cpp:36:setNewComponentState()> Smoothing: enabled
[hyperiond FLATBUFCONNECTION] <INFO> Connecting to Hyperion: 127.0.0.1:19401
[hyperiond EFFECTENGINE] <INFO> Run effect "Rainbow swirl fast" on channel 0
[hyperiond EFFECTENGINE] <DEBUG> <EffectEngine.cpp:187: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:187: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 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:498: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 HYPERION] <INFO> Hyperion instance 'First LED Hardware instance' has been started
[hyperiond WEBSERVER] <DEBUG> <WebServer.cpp:33:initServer()> Initialize Webserver
[hyperiond WEBSERVER] <DEBUG> <WebServer.cpp:91:handleSettingsUpdate()> Apply Webserver settings
[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> Previous line repeats 1 times
[hyperiond WEBSERVER] <INFO> Started on port 8090 name 'Hyperion Webserver'
[hyperiond HYPERION] <DEBUG> <PriorityMuxer.cpp:333:setCurrentTime()> Set visible priority to 0
[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 HYPERION] <DEBUG> <PriorityMuxer.cpp:238:setInputImage()> Priority 0 is now active
[hyperiond HYPERION] <DEBUG> <PriorityMuxer.cpp:198:setInput()> Priority 254 is now active
[hyperiond HYPERION] <DEBUG> <PriorityMuxer.cpp:298:setCurrentTime()> Timeout clear for priority 0
[hyperiond HYPERION] <DEBUG> <PriorityMuxer.cpp:333:setCurrentTime()> Set visible priority to 254
[hyperiond WEBSOCKET] <DEBUG> <WebSocketClient.cpp:30:WebSocketClient()> New connection from ::ffff:10.0.10.40
[hyperiond WEBSOCKET] <DEBUG> <JsonAPI.cpp:103:handleInstanceSwitch()> Client '::ffff:10.0.10.40' switch to Hyperion instance 0
[hyperiond LEDDEVICE] <DEBUG> <LedDeviceFile.cpp:90:close()> File: /dev/null
[hyperiond LedDeviceWrapper] <INFO> LedDevice 'file' closed
[hyperiond LEDDEVICE] <INFO> LedDevice 'adalight' found.
[hyperiond LEDDEVICE] <DEBUG> <LedDeviceAdalight.cpp:56:init()> Adalight header for 26 leds: Ada 0x00 0x19 0x4c
[hyperiond LEDDEVICE] <INFO> found serial device: /dev/ttyUSB0
[hyperiond LEDDEVICE] <INFO> Opening UART: /dev/ttyUSB0
[hyperiond LEDDEVICE] <ERROR> Device disabled, device 'adalight' signals error: 'Invalid serial device name: [/dev/ttyUSB0]!'
[hyperiond LEDDEVICE] <ERROR> Device disabled, device 'adalight' signals error: 'Error opening device!'
[hyperiond ComponentRegister] <DEBUG> <ComponentRegister.cpp:36:setNewComponentState()> LED device: disabled```
Hyperion Server: 
- Build:       (HEAD detached at 7cb9cc00) (Paulchen-Panther-e43bae82/7cb9cc00-1596965117)
- Build time:  Aug  9 2020 09:44:41
- Git Remote:  https://github.com/Paulchen-Panther/hyperion.ng
- Version:     2.0.0-alpha.6
- UI Lang:     auto (BrowserLang: en-gb)
- UI Access:   expert
- Avail Capt:  v4l2,framebuffer,qt

Hyperion Server OS: 
- Distribution: HyperBian GNU/Linux 10 (buster)
- Arch:         arm
- Kernel:       linux (5.4.51-v7+ (WS: 32))
- Browser:      Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_6) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/13.1.2 Safari/605.1.15 
Paulchen-Panther commented 4 years ago

@Lord-Grey Ich habe angefangen zu suchen wo der Fehler liegt. Dazu habe ich erst mal ein paar Debug Zeilen eingefügt. Siehe hier: https://github.com/Paulchen-Panther/hyperion.ng/blob/c8df2c1703eb7a3b44cb938934e1e47e509bdded/libsrc/leddevice/dev_serial/LedDeviceAdalight.cpp

Gibt zwar nur die Zeilennummer aus aber man weiß ungefähr nach was man schauen muss.

Und hier die Ausgabe von der Konsole:

pi@HyperBian:~/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> New Effect path "/home/pi/.hyperion/custom-effects" created successfull
[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 DAEMON] <ERROR> The dispmanx framegrabber can not be instantiated, because it has been left out from the build
[hyperiond V4L2:auto] <DEBUG> <Grabber.cpp:31:setVideoMode()> Set videomode to 0
[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:498: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 ComponentRegister] <DEBUG> <ComponentRegister.cpp:36:setNewComponentState()> Smoothing: enabled
[hyperiond LEDDEVICE] <INFO> Start LedDevice 'file'.
[hyperiond LEDDEVICE] <DEBUG> <LedDevice.cpp:133:init()> deviceConfig: [{"colorOrder":"rgb","currentLedCount":26,"hardwareLedCount":1,"latchTime":0,"output":"/dev/null","rewriteTime":0,"type":"file"}]
[hyperiond LEDDEVICE] <DEBUG> <LedDeviceFile.cpp:55:open()> QIODevice::WriteOnly, /dev/null
[hyperiond FLATBUFCONNECTION] <INFO> Connecting to Hyperion: 127.0.0.1:19401
[hyperiond EFFECTENGINE] <INFO> Run effect "Rainbow swirl fast" on channel 0
[hyperiond EFFECTENGINE] <DEBUG> <EffectEngine.cpp:187: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:187: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] <INFO> Hyperion instance 'First LED Hardware instance' has been started
[hyperiond WEBSERVER] <DEBUG> <WebServer.cpp:91:handleSettingsUpdate()> Apply Webserver settings[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:109:handleSettingsUpdate()> Set document root to: :/webconfig
[hyperiond WEBSERVER] <INFO> Started on port 8090 name 'Hyperion Webserver'
[hyperiond HYPERION] <DEBUG> <PriorityMuxer.cpp:333:setCurrentTime()> Set visible priority to 0
[hyperiond HYPERION] <DEBUG> <PriorityMuxer.cpp:238:setInputImage()> Priority 0 is now active
[hyperiond HYPERION] <DEBUG> <PriorityMuxer.cpp:198:setInput()> Priority 254 is now active
[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 HYPERION] <DEBUG> <PriorityMuxer.cpp:298:setCurrentTime()> Timeout clear for priority 0
[hyperiond HYPERION] <DEBUG> <PriorityMuxer.cpp:333:setCurrentTime()> Set visible priority to 254
[hyperiond WEBSOCKET] <DEBUG> <WebSocketClient.cpp:30:WebSocketClient()> New connection from ::ffff:192.168.0.90
[hyperiond WEBSOCKET] <DEBUG> <JsonAPI.cpp:107:handleInstanceSwitch()> Client '::ffff:192.168.0.90' switch to Hyperion instance 0
[hyperiond LEDDEVICE] <DEBUG> <LedDeviceFile.cpp:81:close()> File: /dev/null
[hyperiond LedDeviceWrapper] <INFO> LedDevice 'file' closed
[hyperiond LEDDEVICE] <INFO> Start LedDevice 'adalight'.
23
[hyperiond LEDDEVICE] <DEBUG> <LedDevice.cpp:133:init()> deviceConfig: [{"colorOrder":"rgb","currentLedCount":26,"delayAfterConnect":1500,"hardwareLedCount":1,"latchTime":30,"lightberry_apa102_mode":false,"output":"ttyUSB0","rate":1e+06,"rewriteTime":1000,"type":"adalight"}]
[hyperiond LEDDEVICE] <DEBUG> <LedDevice.cpp:153:init()> Refresh interval = 1000ms
[hyperiond LEDDEVICE] <DEBUG> <ProviderRs232.cpp:36:init()> DeviceType   : adalight
[hyperiond LEDDEVICE] <DEBUG> <ProviderRs232.cpp:37:init()> LedCount     : 26
[hyperiond LEDDEVICE] <DEBUG> <ProviderRs232.cpp:38:init()> ColorOrder   : rgb
[hyperiond LEDDEVICE] <DEBUG> <ProviderRs232.cpp:39:init()> RefreshTime  : 1000
[hyperiond LEDDEVICE] <DEBUG> <ProviderRs232.cpp:40:init()> LatchTime    : 30
[hyperiond LEDDEVICE] <DEBUG> <ProviderRs232.cpp:52:init()> deviceName   : ttyUSB0
[hyperiond LEDDEVICE] <DEBUG> <ProviderRs232.cpp:53:init()> AutoDevice   : 0
[hyperiond LEDDEVICE] <DEBUG> <ProviderRs232.cpp:54:init()> baudRate_Hz  : 1000000
[hyperiond LEDDEVICE] <DEBUG> <ProviderRs232.cpp:55:init()> delayAfCon ms: 1500
30
34
54
56
[hyperiond LEDDEVICE] <DEBUG> <LedDeviceAdalight.cpp:67:init()> Adalight header for 26 leds: Ada 0x00 0x19 0x4c
[hyperiond LEDDEVICE] <INFO> Opening UART: ttyUSB0
[hyperiond LEDDEVICE] <DEBUG> <ProviderRs232.cpp:141:tryOpen()> _rs232Port.open(QIODevice::WriteOnly): ttyUSB0, Baud rate [1000000]bps
[hyperiond ComponentRegister] <DEBUG> <ComponentRegister.cpp:36:setNewComponentState()> LED device: disabled
[hyperiond LEDDEVICE] <DEBUG> <ProviderRs232.cpp:146:tryOpen()> portName:          ttyUSB0
[hyperiond LEDDEVICE] <DEBUG> <ProviderRs232.cpp:147:tryOpen()> systemLocation:    /dev/ttyUSB0
[hyperiond LEDDEVICE] <DEBUG> <ProviderRs232.cpp:148:tryOpen()> description:       USB2.0-Serial
[hyperiond LEDDEVICE] <DEBUG> <ProviderRs232.cpp:149:tryOpen()> manufacturer:      1a86
[hyperiond LEDDEVICE] <DEBUG> <ProviderRs232.cpp:150:tryOpen()> productIdentifier: 0x7523
[hyperiond LEDDEVICE] <DEBUG> <ProviderRs232.cpp:151:tryOpen()> vendorIdentifier:  0x1a86
[hyperiond LEDDEVICE] <DEBUG> <ProviderRs232.cpp:152:tryOpen()> serialNumber:
[hyperiond LEDDEVICE] <DEBUG> <ProviderRs232.cpp:173:tryOpen()> delayAfterConnect for 1500 ms - start
[hyperiond LEDDEVICE] <DEBUG> <ProviderRs232.cpp:180:tryOpen()> delayAfterConnect for 1500 ms - finished
[hyperiond ComponentRegister] <DEBUG> <ComponentRegister.cpp:36:setNewComponentState()> LED device: enabled
88
90
93
95
88
90
93
95
88
90
93
95
88
90
93
95
88
90
93
95
88
90
93
95
88
90
93
95
88
90
93
95
88
90
93
95
88
90
93
95
88
90
93
95
88
90
93
95
88
90
93
95
88
90
93
95
88
90
93
95
88
90
93
95
88
90
93
95
88
90
93
95
88
90
93
95
88
90
93
95
88
90
93
95
88
90
93
95
88
90
93
95
88
90
93
[hyperiond SIGNAL] <INFO> Signal received : Segmentation fault
[hyperiond CORE] <ERROR>        ./hyperiond(DefaultSignalHandler::print_trace()+0x24) [0x39ad54]
[hyperiond CORE] <ERROR>        ./hyperiond(DefaultSignalHandler::signal_handler(int, siginfo_t*, void*)+0xc4) [0x39afe4]
[hyperiond CORE] <ERROR>        /lib/arm-linux-gnueabihf/libc.so.6(__default_rt_sa_restorer+0) [0x756be130]
[hyperiond CORE] <ERROR>        /home/pi/hyperion/bin/../lib/libQt5Core.so.5(QRingBuffer::reserve(long long)+0x44) [0x75ae2b74]
[hyperiond SIGNAL] <INFO> Signal received : Segmentation fault
[hyperiond CORE] <ERROR>        ./hyperiond(DefaultSignalHandler::print_trace()+0x24) [0x39ad54]
[hyperiond CORE] <ERROR>        ./hyperiond(DefaultSignalHandler::signal_handler(int, siginfo_t*, void*)+0xc4) [0x39afe4]
[hyperiond CORE] <ERROR>        /lib/arm-linux-gnueabihf/libc.so.6(__default_rt_sa_restorer+0) [0x756be130]
free(): invalid next size (fast)
[hyperiond SIGNAL] <INFO> Signal received : Aborted
Paulchen-Panther commented 4 years ago

Beim nächsten neustart gibt es nicht mehr so viele Zeilen.

pi@HyperBian:~/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 DAEMON] <ERROR> The dispmanx framegrabber can not be instantiated, because it has been left out from the build
[hyperiond V4L2:auto] <DEBUG> <Grabber.cpp:31:setVideoMode()> Set videomode to 0
[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:498: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 ComponentRegister] <DEBUG> <ComponentRegister.cpp:36:setNewComponentState()> Smoothing: enabled
[hyperiond LEDDEVICE] <INFO> Start LedDevice 'adalight'.
23
[hyperiond FLATBUFCONNECTION] <INFO> Connecting to Hyperion: 127.0.0.1:19401
[hyperiond LEDDEVICE] <DEBUG> <LedDevice.cpp:133:init()> deviceConfig: [{"colorOrder":"rgb","currentLedCount":26,"delayAfterConnect":1500,"hardwareLedCount":1,"latchTime":30,"lightberry_apa102_mode":false,"output":"ttyUSB0","rate":1e+06,"rewriteTime":1000,"type":"adalight"}]
[hyperiond LEDDEVICE] <DEBUG> <LedDevice.cpp:153:init()> Refresh interval = 1000ms
[hyperiond LEDDEVICE] <DEBUG> <ProviderRs232.cpp:36:init()> DeviceType   : adalight
[hyperiond LEDDEVICE] <DEBUG> <ProviderRs232.cpp:37:init()> LedCount     : 26
[hyperiond EFFECTENGINE] <INFO> Run effect "Rainbow swirl fast" on channel 0
[hyperiond LEDDEVICE] <DEBUG> <ProviderRs232.cpp:38:init()> ColorOrder   : rgb
[hyperiond LEDDEVICE] <DEBUG> <ProviderRs232.cpp:39:init()> RefreshTime  : 1000
[hyperiond LEDDEVICE] <DEBUG> <ProviderRs232.cpp:40:init()> LatchTime    : 30
[hyperiond EFFECTENGINE] <DEBUG> <EffectEngine.cpp:187: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 LEDDEVICE] <DEBUG> <ProviderRs232.cpp:52:init()> deviceName   : ttyUSB0
[hyperiond LEDDEVICE] <DEBUG> <ProviderRs232.cpp:53:init()> AutoDevice   : 0
[hyperiond LEDDEVICE] <DEBUG> <ProviderRs232.cpp:54:init()> baudRate_Hz  : 1000000
[hyperiond EFFECTENGINE] <INFO> Run effect "Warm mood blobs" on channel 254
[hyperiond LEDDEVICE] <DEBUG> <ProviderRs232.cpp:55:init()> delayAfCon ms: 1500
[hyperiond EFFECTENGINE] <DEBUG> <EffectEngine.cpp:187: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
30
34
[hyperiond HYPERION] <INFO> Inital background effect 'Warm mood blobs' started
54
56
[hyperiond LEDDEVICE] <DEBUG> <LedDeviceAdalight.cpp:67:init()> Adalight header for 26 leds: Ada 0x00 0x19 0x4c
[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 LEDDEVICE] <INFO> Opening UART: ttyUSB0
[hyperiond LEDDEVICE] <DEBUG> <ProviderRs232.cpp:141:tryOpen()> _rs232Port.open(QIODevice::WriteOnly): ttyUSB0, Baud rate [1000000]bps
[hyperiond BOBLIGHT] <DEBUG> <BoblightServer.cpp:28:BoblightServer()> Instance created
[hyperiond HYPERION] <INFO> Hyperion instance 'First LED Hardware instance' has been started
[hyperiond WEBSERVER] <DEBUG> <WebServer.cpp:91:handleSettingsUpdate()> Apply Webserver settings
[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:109:handleSettingsUpdate()> Set document root to: :/webconfig
[hyperiond WEBSERVER] <INFO> Started on port 8090 name 'Hyperion Webserver'
[hyperiond LEDDEVICE] <DEBUG> <ProviderRs232.cpp:146:tryOpen()> portName:          ttyUSB0
[hyperiond LEDDEVICE] <DEBUG> <ProviderRs232.cpp:147:tryOpen()> systemLocation:    /dev/ttyUSB0
[hyperiond LEDDEVICE] <DEBUG> <ProviderRs232.cpp:148:tryOpen()> description:       USB2.0-Serial
[hyperiond LEDDEVICE] <DEBUG> <ProviderRs232.cpp:149:tryOpen()> manufacturer:      1a86
[hyperiond LEDDEVICE] <DEBUG> <ProviderRs232.cpp:150:tryOpen()> productIdentifier: 0x7523
[hyperiond LEDDEVICE] <DEBUG> <ProviderRs232.cpp:151:tryOpen()> vendorIdentifier:  0x1a86
[hyperiond LEDDEVICE] <DEBUG> <ProviderRs232.cpp:152:tryOpen()> serialNumber:
[hyperiond LEDDEVICE] <DEBUG> <ProviderRs232.cpp:173:tryOpen()> delayAfterConnect for 1500 ms - start
[hyperiond HYPERION] <DEBUG> <PriorityMuxer.cpp:333:setCurrentTime()> Set visible priority to 0
[hyperiond HYPERION] <DEBUG> <PriorityMuxer.cpp:238:setInputImage()> Priority 0 is now active
[hyperiond HYPERION] <DEBUG> <PriorityMuxer.cpp:198:setInput()> Priority 254 is now active
[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 LEDDEVICE] <DEBUG> <ProviderRs232.cpp:180:tryOpen()> delayAfterConnect for 1500 ms - finished
[hyperiond ComponentRegister] <DEBUG> <ComponentRegister.cpp:36:setNewComponentState()> LED device: enabled
88
90
93
[hyperiond SIGNAL] <INFO> Signal received : Segmentation fault
[hyperiond CORE] <ERROR>        ./hyperiond(DefaultSignalHandler::print_trace()+0x24) [0x39ad54]
[hyperiond CORE] <ERROR>        ./hyperiond(DefaultSignalHandler::signal_handler(int, siginfo_t*, void*)+0xc4) [0x39afe4]
[hyperiond CORE] <ERROR>        /lib/arm-linux-gnueabihf/libc.so.6(__default_rt_sa_restorer+0) [0x756d2130]
[hyperiond CORE] <ERROR>        /home/pi/hyperion/bin/../lib/libQt5Core.so.5(QRingBuffer::reserve(long long)+0x44) [0x75af6b74]
[hyperiond SIGNAL] <INFO> Signal received : Segmentation fault
[hyperiond CORE] <ERROR>        ./hyperiond(DefaultSignalHandler::print_trace()+0x24) [0x39ad54]
[hyperiond CORE] <ERROR>        ./hyperiond(DefaultSignalHandler::signal_handler(int, siginfo_t*, void*)+0xc4) [0x39afe4]
[hyperiond CORE] <ERROR>        /lib/arm-linux-gnueabihf/libc.so.6(__default_rt_sa_restorer+0) [0x756d2130]
m-seker commented 4 years ago

@Paulchen-Panther Sie haben die wichtigsten Informationen übersprungen, size of the incoming vector and _ledBuffer :D

Paulchen-Panther commented 4 years ago

@RaymondMouthaan Could you please test this artifact? Many thanks https://github.com/Paulchen-Panther/hyperion.ng/actions/runs/202890120

RaymondMouthaan commented 4 years ago

@RaymondMouthaan Could you please test this artifact? Many thanks https://github.com/Paulchen-Panther/hyperion.ng/actions/runs/202890120

@Paulchen-Panther,

First thing to notice is that while starting hyperiond from the artifact an error occurred:

pi@HyperBian:~/7a8552f/hyperion/share/hyperion/bin $ ./hyperiond
./hyperiond: error while loading shared libraries: libcec.so.4: cannot open shared object file: No such file or directory

I suppose current HyperBian doesn't have libcec-dev pre-installed and therefore I installed it manually:

sudo apt update && sudo apt install libcec-dev

Next:

./hyperiond -d --deleteDatabase
2020-08-10T21:56:30.886 hyperiond MAIN         : <INFO> Set user data path to '/home/pi/.hyperion'
2020-08-10T21:56:31.079 hyperiond DAEMON       : <DEBUG> PythonInit.cpp:45:PythonInit() | Initializing Python interpreter
2020-08-10T21:56:31.415 hyperiond SETTINGSMGR  : <DEBUG> SettingsManager.cpp:107:SettingsManager() | Settings database initialized
2020-08-10T21:56:31.416 hyperiond DAEMON       : <INFO> CEC handler created
2020-08-10T21:56:31.432 hyperiond EFFECTFILES  : <INFO> 39 effects loaded from directory :/effects/
2020-08-10T21:56:31.439 hyperiond EFFECTFILES  : <INFO> 22 effect schemas loaded from directory :/effects/schema/
2020-08-10T21:56:31.439 hyperiond EFFECTFILES  : <INFO> 0 effects loaded from directory /home/pi/.hyperion/custom-effects
2020-08-10T21:56:31.478 hyperiond SETTINGSMGR  : <DEBUG> SettingsManager.cpp:107:SettingsManager() | Settings database initialized
2020-08-10T21:56:31.481 hyperiond BLACKBORDER  : <DEBUG> BlackBorderProcessor.cpp:65:handleSettingsUpdate() | Set mode to: default
2020-08-10T21:56:31.481 hyperiond COMPONENTREG : <DEBUG> ComponentRegister.cpp:36:setNewComponentState() | Blackborder detector: enabled
2020-08-10T21:56:31.505 hyperiond DAEMON       : <INFO> set screen capture device to 'dispmanx'
2020-08-10T21:56:31.505 hyperiond DISPMANXGRAB : <DEBUG> Grabber.cpp:31:setVideoMode() | Set videomode to 0
2020-08-10T21:56:31.508 hyperiond LEDDEVICE    : <INFO> Start LedDevice 'file'.
2020-08-10T21:56:31.508 hyperiond DISPMANXGRAB : <INFO> Display opened with resolution: 640x480
2020-08-10T21:56:31.508 hyperiond DISPMANXGRAB : <DEBUG> Grabber.cpp:91:setWidthHeight() | Set new width: 80, height: 45 for capture
2020-08-10T21:56:31.508 hyperiond COMPONENTREG : <DEBUG> ComponentRegister.cpp:36:setNewComponentState() | Smoothing: enabled
2020-08-10T21:56:31.508 hyperiond LEDDEVICE    : <DEBUG> LedDevice.cpp:133:init() | deviceConfig: [{"colorOrder":"rgb","currentLedCount":26,"hardwareLedCount":1,"latchTime":0,"output":"/dev/null","rewriteTime":0,"type":"file"}]
2020-08-10T21:56:31.509 hyperiond LEDDEVICE    : <DEBUG> LedDeviceFile.cpp:55:open() | QIODevice::WriteOnly, /dev/null
2020-08-10T21:56:31.509 hyperiond DAEMON       : <INFO> DISPMANX frame grabber created
2020-08-10T21:56:31.511 hyperiond FLATBUFCONN  : <INFO> Connecting to Hyperion: 127.0.0.1:19401
2020-08-10T21:56:31.511 hyperiond V4L2:AUTO    : <DEBUG> Grabber.cpp:31:setVideoMode() | Set videomode to 0
2020-08-10T21:56:31.513 hyperiond EFFECTENGINE : <INFO> Run effect "Rainbow swirl fast" on channel 0
2020-08-10T21:56:31.514 hyperiond EFFECTENGINE : <DEBUG> EffectEngine.cpp:187:runEffectScript() | Start the effect: name [Rainbow swirl fast], smoothCfg [2]
2020-08-10T21:56:31.514 hyperiond HYPERION     : <DEBUG> PriorityMuxer.cpp:158:registerInput() | Register new input 'System/EFFECT' with priority 0 as inactive
2020-08-10T21:56:31.514 hyperiond HYPERION     : <INFO> Initial foreground effect 'Rainbow swirl fast' started
2020-08-10T21:56:31.515 hyperiond EFFECTENGINE : <INFO> Run effect "Warm mood blobs" on channel 254
2020-08-10T21:56:31.516 hyperiond EFFECTENGINE : <DEBUG> EffectEngine.cpp:187:runEffectScript() | Start the effect: name [Warm mood blobs], smoothCfg [2]
2020-08-10T21:56:31.516 hyperiond HYPERION     : <DEBUG> PriorityMuxer.cpp:158:registerInput() | Register new input 'System/EFFECT' with priority 254 as inactive
2020-08-10T21:56:31.516 hyperiond HYPERION     : <INFO> Inital background effect 'Warm mood blobs' started
2020-08-10T21:56:31.517 hyperiond HYPERION     : <DEBUG> PriorityMuxer.cpp:158:registerInput() | Register new input 'System/GRABBER' with priority 250 as inactive
2020-08-10T21:56:31.518 hyperiond COMPONENTREG : <DEBUG> ComponentRegister.cpp:36:setNewComponentState() | Framegrabber: enabled
2020-08-10T21:56:31.519 hyperiond BOBLIGHT     : <DEBUG> BoblightServer.cpp:28:BoblightServer() | Instance created
2020-08-10T21:56:31.519 hyperiond COMPONENTREG : <DEBUG> ComponentRegister.cpp:36:setNewComponentState() | LED device: enabled
2020-08-10T21:56:31.600 hyperiond V4L2:AUTO    : <INFO> Signal threshold set to: {12, 12, 12}
2020-08-10T21:56:31.601 hyperiond V4L2:AUTO    : <INFO> CEC detection is now disabled
2020-08-10T21:56:31.601 hyperiond V4L2:AUTO    : <INFO> Signal detection is now disabled
2020-08-10T21:56:31.602 hyperiond V4L2:AUTO    : <INFO> Signal detection area set to: 0.250000,0.250000 x 0.750000,0.750000
2020-08-10T21:56:31.603 hyperiond DAEMON       : <DEBUG> hyperiond.cpp:567:handleSettingsUpdate() | V4L2 grabber created
2020-08-10T21:56:31.605 hyperiond JSONSERVER   : <DEBUG> JsonServer.cpp:27:JsonServer() | Created instance
2020-08-10T21:56:31.606 hyperiond JSONSERVER   : <INFO> Started on port 19444
2020-08-10T21:56:31.609 hyperiond FLATBUFSERVE : <INFO> Started on port 19400
2020-08-10T21:56:31.611 hyperiond PROTOSERVER  : <INFO> Started on port 19445
2020-08-10T21:56:31.614 hyperiond WEBSERVER    : <DEBUG> WebServer.cpp:32:initServer() | Initialize Webserver
2020-08-10T21:56:31.616 hyperiond WEBSERVER    : <DEBUG> WebServer.cpp:32:initServer() | Initialize Webserver
2020-08-10T21:56:31.617 hyperiond Dispmanx     : <DEBUG> GrabberWrapper.cpp:49:start() | Grabber start()
2020-08-10T21:56:31.620 hyperiond HYPERION     : <INFO> Hyperion instance 'First LED Hardware instance' has been started
2020-08-10T21:56:31.667 hyperiond WEBSERVER    : <DEBUG> WebServer.cpp:90:handleSettingsUpdate() | Apply Webserver settings
2020-08-10T21:56:31.667 hyperiond WEBSERVER    : <DEBUG> WebServer.cpp:90:handleSettingsUpdate() | Apply Webserver settings
2020-08-10T21:56:31.667 hyperiond WEBSERVER    : <DEBUG> WebServer.cpp:108:handleSettingsUpdate() | Set document root to: :/webconfig
2020-08-10T21:56:31.667 hyperiond WEBSERVER    : <DEBUG> WebServer.cpp:108:handleSettingsUpdate() | Set document root to: :/webconfig
2020-08-10T21:56:31.668 hyperiond WEBSERVER    : <INFO> Started on port 8090 name 'Hyperion Webserver'
2020-08-10T21:56:31.725 hyperiond HYPERION     : <DEBUG> PriorityMuxer.cpp:238:setInputImage() | Priority 250 is now active
2020-08-10T21:56:31.725 hyperiond HYPERION     : <DEBUG> PriorityMuxer.cpp:333:setCurrentTime() | Set visible priority to 0
2020-08-10T21:56:31.765 hyperiond HYPERION     : <DEBUG> PriorityMuxer.cpp:238:setInputImage() | Priority 0 is now active
2020-08-10T21:56:31.780 hyperiond HYPERION     : <DEBUG> PriorityMuxer.cpp:198:setInput() | Priority 254 is now active
2020-08-10T21:56:31.859 hyperiond WEBSERVER    : <DEBUG> WebServer.cpp:174:handleSettingsUpdate() | Setup SSL certificate
2020-08-10T21:56:31.860 hyperiond WEBSERVER    : <DEBUG> WebServer.cpp:190:handleSettingsUpdate() | Setup private SSL key
2020-08-10T21:56:31.860 hyperiond WEBSERVER    : <INFO> Started on port 8092 name 'Hyperion Webserver'
2020-08-10T21:56:34.799 hyperiond HYPERION     : <DEBUG> PriorityMuxer.cpp:298:setCurrentTime() | Timeout clear for priority 0
2020-08-10T21:56:35.050 hyperiond HYPERION     : <DEBUG> PriorityMuxer.cpp:333:setCurrentTime() | Set visible priority to 250
2020-08-10T21:56:36.992 hyperiond WEBSOCKET    : <DEBUG> WebSocketClient.cpp:30:WebSocketClient() | New connection from ::ffff:10.0.10.40
2020-08-10T21:56:36.992 hyperiond WEBSOCKET    : <DEBUG> JsonAPI.cpp:107:handleInstanceSwitch() | Client '::ffff:10.0.10.40' switch to Hyperion instance 0

Configure adalight device @ /dev/ttyUSB0

2020-08-10T21:57:34.873 hyperiond WEBSOCKET    : <DEBUG> WebSocketClient.cpp:30:WebSocketClient() | New connection from ::ffff:10.0.10.40
2020-08-10T21:57:34.873 hyperiond WEBSOCKET    : <DEBUG> JsonAPI.cpp:107:handleInstanceSwitch() | Client '::ffff:10.0.10.40' switch to Hyperion instance 0
2020-08-10T21:58:01.783 hyperiond LEDDEVICE    : <DEBUG> LedDeviceFile.cpp:81:close() | File: /dev/null
[hyperiond LedDeviceWrapper] <INFO> LedDevice 'file' closed
2020-08-10T21:58:01.786 hyperiond LEDDEVICE    : <INFO> Start LedDevice 'adalight'.
2020-08-10T21:58:01.786 hyperiond LEDDEVICE    : <DEBUG> LedDevice.cpp:133:init() | deviceConfig: [{"colorOrder":"rgb","currentLedCount":26,"delayAfterConnect":1500,"hardwareLedCount":1,"latchTime":30,"lightberry_apa102_mode":false,"output":"/dev/ttyUSB0","rate":1e+06,"rewriteTime":1000,"type":"adalight"}]
2020-08-10T21:58:01.787 hyperiond LEDDEVICE    : <DEBUG> LedDevice.cpp:153:init() | Refresh interval = 1000ms
2020-08-10T21:58:01.787 hyperiond LEDDEVICE    : <DEBUG> ProviderRs232.cpp:35:init() | DeviceType   : adalight
2020-08-10T21:58:01.787 hyperiond LEDDEVICE    : <DEBUG> ProviderRs232.cpp:36:init() | LedCount     : 26
2020-08-10T21:58:01.787 hyperiond LEDDEVICE    : <DEBUG> ProviderRs232.cpp:37:init() | ColorOrder   : rgb
2020-08-10T21:58:01.788 hyperiond LEDDEVICE    : <DEBUG> ProviderRs232.cpp:38:init() | RefreshTime  : 1000
2020-08-10T21:58:01.788 hyperiond LEDDEVICE    : <DEBUG> ProviderRs232.cpp:39:init() | LatchTime    : 30
2020-08-10T21:58:01.788 hyperiond LEDDEVICE    : <DEBUG> ProviderRs232.cpp:51:init() | deviceName   : ttyUSB0
2020-08-10T21:58:01.788 hyperiond LEDDEVICE    : <DEBUG> ProviderRs232.cpp:52:init() | AutoDevice   : 0
2020-08-10T21:58:01.789 hyperiond LEDDEVICE    : <DEBUG> ProviderRs232.cpp:53:init() | baudRate_Hz  : 1000000
2020-08-10T21:58:01.789 hyperiond LEDDEVICE    : <DEBUG> ProviderRs232.cpp:54:init() | delayAfCon ms: 1500
2020-08-10T21:58:01.789 hyperiond LEDDEVICE    : <DEBUG> LedDeviceAdalight.cpp:62:init() | Adalight header for 26 leds: Ada 0x00 0x19 0x4c
2020-08-10T21:58:01.789 hyperiond LEDDEVICE    : <INFO> Opening UART: ttyUSB0
2020-08-10T21:58:01.790 hyperiond LEDDEVICE    : <DEBUG> ProviderRs232.cpp:140:tryOpen() | _rs232Port.open(QIODevice::WriteOnly): ttyUSB0, Baud rate [1000000]bps
2020-08-10T21:58:01.797 hyperiond COMPONENTREG : <DEBUG> ComponentRegister.cpp:36:setNewComponentState() | LED device: disabled
2020-08-10T21:58:01.852 hyperiond LEDDEVICE    : <DEBUG> ProviderRs232.cpp:145:tryOpen() | portName:          ttyUSB0
2020-08-10T21:58:01.853 hyperiond LEDDEVICE    : <DEBUG> ProviderRs232.cpp:146:tryOpen() | systemLocation:    /dev/ttyUSB0
2020-08-10T21:58:01.853 hyperiond LEDDEVICE    : <DEBUG> ProviderRs232.cpp:147:tryOpen() | description:       USB2.0-Serial
2020-08-10T21:58:01.853 hyperiond LEDDEVICE    : <DEBUG> ProviderRs232.cpp:148:tryOpen() | manufacturer:      1a86
2020-08-10T21:58:01.853 hyperiond LEDDEVICE    : <DEBUG> ProviderRs232.cpp:149:tryOpen() | productIdentifier: 0x7523
2020-08-10T21:58:01.854 hyperiond LEDDEVICE    : <DEBUG> ProviderRs232.cpp:150:tryOpen() | vendorIdentifier:  0x1a86
2020-08-10T21:58:01.854 hyperiond LEDDEVICE    : <DEBUG> ProviderRs232.cpp:151:tryOpen() | serialNumber:
2020-08-10T21:58:01.857 hyperiond LEDDEVICE    : <DEBUG> ProviderRs232.cpp:172:tryOpen() | delayAfterConnect for 1500 ms - start
2020-08-10T21:58:03.358 hyperiond LEDDEVICE    : <DEBUG> ProviderRs232.cpp:179:tryOpen() | delayAfterConnect for 1500 ms - finished
2020-08-10T21:58:03.358 hyperiond COMPONENTREG : <DEBUG> ComponentRegister.cpp:36:setNewComponentState() | LED device: enabled

An image says it all 💯 ...

Screenshot 2020-08-10 at 22 59 43
Hyperion Server: 
- Build:       (HEAD detached at 7a8552fa) (GitHub-dfef7ea9/7a8552fa-1597082858)
- Build time:  Aug 10 2020 18:25:59
- Git Remote:  https://github.com/Paulchen-Panther/hyperion.ng
- Version:     2.0.0-alpha.7
- UI Lang:     auto (BrowserLang: en-gb)
- UI Access:   expert
- Avail Capt:  dispmanx,v4l2,framebuffer,qt

Hyperion Server OS: 
- Distribution: HyperBian GNU/Linux 10 (buster)
- Arch:         arm
- Kernel:       linux (5.4.51-v7+ (WS: 32))
- Browser:      Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_6) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/13.1.2 Safari/605.1.15 

Stopped hyperiond and restarted it without deleting the database and this works as well 💯

Another thing to notice is that it works without running with root privileges and extracting python35.zip wasn't needed.

Saving the LED layout still make hyperiond crash, but this is reported in another issue.

Also tested with actual a movie playing and let hyperiond do the amiblight magic and it works perfectly 👍

Paulchen-Panther commented 4 years ago

I suppose current HyperBian doesn't have libcec-dev pre-installed and therefore I installed it manually:

I had already fixed this bug. https://github.com/hyperion-project/HyperBian/commit/8db2ef9f961084b5cde5a820ca30ea0b8a3c56fe

The rest of the bug is now known to us. It is due to a QT function that is available in Raspbian Stretch (QT version 5.7). In Debian Buster (QT version 5.11) this has been fixed. Since the automatic release creation is still based on Raspbian Stretch, we might consider switching to Buster, but that should and shouldn't bother you. We're working on it. Thank you for your cooperation and your strong nerves with us.

TheEsch commented 4 years ago

Hallo,

habe das selbe Problem.

libcec Installation brachte leider keine Besserung...

Gibt es hier schon etwas neues?

Grüße

Paulchen-Panther commented 4 years ago

@TheEsch Ab diesem Post findest du Hilfe. https://github.com/hyperion-project/hyperion.ng/issues/903#issuecomment-671543512

iLLiac4 commented 4 years ago

I think i see the same error. Took latest release alpha7 selected output as /dev/ttyUSB0 adalight and as soon as i press save the leds blink and then the error message in console appears. It i select a non existing port the hyperion does not crash.

`Hyperion caught signal :SIGSEGV 2020-08-13T06:53:50.260 hyperiond CORE : /usr/lib/libpthread.so.0(+0x12350) [0x7f10cf232350] 2020-08-13T06:53:50.260 hyperiond CORE : /storage/hyperion/bin/../lib/libQt5Core.so.5(QRingBuffer::reserve(long long)+0x2a) [0x7f10ce15ec3a] 2020-08-13T06:53:50.260 hyperiond CORE : /storage/hyperion/bin/../lib/libQt5SerialPort.so.5(+0xacec) [0x7f10cf24bcec] 2020-08-13T06:53:50.260 hyperiond CORE : /storage/hyperion/bin/../lib/libQt5SerialPort.so.5(+0xb5eb) [0x7f10cf24c5eb] 2020-08-13T06:53:50.261 hyperiond CORE : /storage/hyperion/bin/hyperiond(ProviderRs232::writeBytes(long long, unsigned char const)+0x352) [0x5569e316cc4e] 2020-08-13T06:53:50.261 hyperiond CORE : /storage/hyperion/bin/hyperiond(LedDeviceAdalight::write(std::vector<ColorRgb, std::allocator > const&)+0x1d3) [0x5569e31673cf] 2020-08-13T06:53:50.261 hyperiond CORE : /storage/hyperion/bin/hyperiond(LedDevice::updateLeds(std::vector<ColorRgb, std::allocator > const&)+0xd4) [0x5569e31b8910] 2020-08-13T06:53:50.261 hyperiond CORE : /storage/hyperion/bin/hyperiond(QtPrivate::FunctorCall<QtPrivate::IndexesList<0>, QtPrivate::List<std::vector<ColorRgb, std::allocator > const&>, int, int (LedDevice::)(std::vector<ColorRgb, std::allocator > const&)>::call(int (LedDevice::)(std::vector<ColorRgb, std::allocator > const&), LedDevice, void)+0x8f) [0x5569e316672a] 2020-08-13T06:53:50.262 hyperiond CORE : /storage/hyperion/bin/hyperiond(void QtPrivate::FunctionPointer<int (LedDevice::)(std::vector<ColorRgb, std::allocator > const&)>::call<QtPrivate::List<std::vector<ColorRgb, std::allocator > const&>, int>(int (LedDevice::)(std::vector<ColorRgb, std::allocator > const&), LedDevice*, void*)+0x42) [0x5569e3166300] 2020-08-13T06:53:50.262 hyperiond CORE : /storage/hyperion/bin/hyperiond(QtPrivate::QSlotObject<int (LedDevice::)(std::vector<ColorRgb, std::allocator > const&), QtPrivate::List<std::vector<ColorRgb, std::allocator > const&>, int>::impl(int, QtPrivate::QSlotObjectBase, QObject, void, bool)+0x6c) [0x5569e3165c7b] 2020-08-13T06:53:50.262 hyperiond CORE : /storage/hyperion/bin/../lib/libQt5Core.so.5(QObject::event(QEvent)+0xe9) [0x7f10ce2da659] 2020-08-13T06:53:50.262 hyperiond CORE : /storage/hyperion/bin/../lib/libQt5Widgets.so.5(QApplicationPrivate::notify_helper(QObject, QEvent)+0x9c) [0x7f10ceb94b8c] 2020-08-13T06:53:50.263 hyperiond CORE : /storage/hyperion/bin/../lib/libQt5Widgets.so.5(QApplication::notify(QObject, QEvent)+0x261) [0x7f10ceb9c351] 2020-08-13T06:53:50.263 hyperiond CORE : /storage/hyperion/bin/../lib/libQt5Core.so.5(QCoreApplication::notifyInternal2(QObject, QEvent)+0x110) [0x7f10ce2adc20] 2020-08-13T06:53:50.263 hyperiond CORE : /storage/hyperion/bin/../lib/libQt5Core.so.5(QCoreApplicationPrivate::sendPostedEvents(QObject, int, QThreadData)+0x2dd) [0x7f10ce2b03bd] 2020-08-13T06:53:50.263 hyperiond CORE : /storage/hyperion/bin/../lib/libQt5Core.so.5(+0x2d1cb3) [0x7f10ce301cb3] 2020-08-13T06:53:50.263 hyperiond CORE : /usr/lib/libglib-2.0.so.0(g_main_context_dispatch+0x125) [0x7f10cbb4e8a3] 2020-08-13T06:53:50.263 hyperiond CORE : /usr/lib/libglib-2.0.so.0(+0x40af7) [0x7f10cbb4eaf7] 2020-08-13T06:53:50.264 hyperiond CORE : /usr/lib/libglib-2.0.so.0(g_main_context_iteration+0x34) [0x7f10cbb4eb90] 2020-08-13T06:53:50.264 hyperiond CORE : /storage/hyperion/bin/../lib/libQt5Core.so.5(QEventDispatcherGlib::processEvents(QFlags)+0x7b) [0x7f10ce3020db] 2020-08-13T06:53:50.264 hyperiond CORE : /storage/hyperion/bin/../lib/libQt5Core.so.5(QEventLoop::exec(QFlags)+0xfa) [0x7f10ce2abc0a] 2020-08-13T06:53:50.264 hyperiond CORE : /storage/hyperion/bin/../lib/libQt5Core.so.5(QThread::exec()+0xc3) [0x7f10ce0da093] 2020-08-13T06:53:50.264 hyperiond CORE : /storage/hyperion/bin/../lib/libQt5Core.so.5(+0xaed48) [0x7f10ce0ded48] 2020-08-13T06:53:50.264 hyperiond CORE : /usr/lib/libpthread.so.0(+0x7fb5) [0x7f10cf227fb5] 2020-08-13T06:53:50.264 hyperiond CORE : /usr/lib/libc.so.6(clone+0x3f) [0x7f10cd9f210f] Segmentation fault LibreELEC:~ #

`

TheEsch commented 4 years ago

@TheEsch Ab diesem Post findest du Hilfe. #903 (comment)

Hi,

habe es vorrübergehend mit einem Workround behoben. (Raspian Baster + Hyperion alpha 6.0

So funktioniert es ohne Probleme.

Bitte informiert, sobald das Problem in Hyperbian gefixed ist. würde es sehr gerne verwenden.

Grüße

Grüße Andi

cyptus commented 4 years ago

Selbes problem mit HyperBian, alpha 6 läuft das webinterface bei mir mit der neusten raspbian leider auch nicht.

EDIT: das artifakt von hier funktioniert auf dem hyperbian install

Paulchen-Panther commented 4 years ago

984

Paulchen-Panther commented 4 years ago

@Lord-Grey Hast du schon was mit den Buster Docker Builds erreichen können? Evtl. eine Ausnahme für die Stretch Releases hinzufügen?

Lord-Grey commented 4 years ago

@Paulchen-Panther Ich war mal ein paar Tage weg. Werde bei Gelegenheit jetzt mal ein Buster Image bauen und dann Hyperion installieren.

Lord-Grey commented 4 years ago

@RaymondMouthaan As an immediate workaround for the adalight issue, you could comment out the following line in the adalight.ino sketch file:

//Serial.print("Ada\n"); // Send "Magic Word" string to host

Please give, it a try and report back, if this helped. I will in the meantime look for a solution incl. the statement above.

Lord-Grey commented 4 years ago

@RaymondMouthaan I did a fix with PR #991 . At my end this seems to work. Would you mind testing with your configuration, please?

PS: There is currently no need to update the adalight.ino sketch.

RaymondMouthaan commented 4 years ago

@RaymondMouthaan I did a fix with PR #991 . At my end this seems to work. Would you mind testing with your configuration, please?

PS: There is currently no need to update the adalight.ino sketch.

Hello @Lord-Grey, sorry to keep you waiting, I have been busy. I am happy to do some tests related to this issue :-).

Can you please provide the steps to be taken to make sure ill test the right thing?

Cheers, Raymond

Lord-Grey commented 4 years ago

@RaymondMouthaan Thanks for your support!

You test following the procedure you executed before.

Load the Fix from PR911. Artifact: https://github.com/hyperion-project/hyperion.ng/suites/1139918452/artifacts/16349211

Extracted the tar.gz and copied all of the /share/hyperion content to /usr/share/hyperion as sudo Then cd to /usr/share/hyperion where you run ./bin/hyperiond -d

Thank you!

Edit:

You can validate that you have the correct codebase by checking the following log-line

LEDDEVICE : <DEBUG> ProviderRs232.cpp:141:tryOpen() | _rs232Port.open(QIODevice::ReadWrite): ttyACM0, Baud rate [115200]bps

It must show "ReadWrite"

RaymondMouthaan commented 4 years ago

@Lord-Grey, thanks for the procedure. I'll do the testing tomorrow and report back asap. 💪

iLLiac4 commented 4 years ago

Hi. It looks like it works.

RaymondMouthaan commented 4 years ago

@Lord-Grey,

I can confirm that the artifact of #991 works perfectly! 💯

image

Debug log:

2020-09-05T10:21:37.919 hyperiond LEDDEVICE    : <DEBUG> ProviderRs232.cpp:141:tryOpen() | _rs232Port.open(QIODevice::ReadWrite): ttyUSB0, Baud rate [1000000]bps
2020-09-05T10:21:37.971 hyperiond LEDDEVICE    : <DEBUG> ProviderRs232.cpp:146:tryOpen() | portName:          ttyUSB0
2020-09-05T10:21:37.971 hyperiond LEDDEVICE    : <DEBUG> ProviderRs232.cpp:147:tryOpen() | systemLocation:    /dev/ttyUSB0
2020-09-05T10:21:37.975 hyperiond LEDDEVICE    : <DEBUG> ProviderRs232.cpp:148:tryOpen() | description:       USB2.0-Serial
2020-09-05T10:21:37.975 hyperiond LEDDEVICE    : <DEBUG> ProviderRs232.cpp:149:tryOpen() | manufacturer:      1a86
2020-09-05T10:21:37.976 hyperiond LEDDEVICE    : <DEBUG> ProviderRs232.cpp:150:tryOpen() | productIdentifier: 0x7523
2020-09-05T10:21:37.976 hyperiond LEDDEVICE    : <DEBUG> ProviderRs232.cpp:151:tryOpen() | vendorIdentifier:  0x1a86
2020-09-05T10:21:37.977 hyperiond LEDDEVICE    : <DEBUG> ProviderRs232.cpp:152:tryOpen() | serialNumber:
2020-09-05T10:21:37.981 hyperiond LEDDEVICE    : <DEBUG> ProviderRs232.cpp:173:tryOpen() | delayAfterConnect for 1500 ms - start

Just a quick summery for others, how to apply the fix: 1) Download HyperBian from here and flash it to a sd card. Add a ssh file in the root of the sd card to enable ssh on the Pi. Boot the Pi with freshly installed HyperBian.

2) Download the artifact from #PR991, copy armv6hf.zip to the Pi using Winscp or scp.

scp armv6hf.zip pi@<ip_of_the_raspberri_pi>:~

3) Log in to the Pi using ssh and stop hyperion service:

sudo systemctl stop hyperiond@pi.service

And prevent it from starting at boot:

sudo systemctl disable hyperiond@pi.service

4) Extract the artifact:

unzip armv6hf.zip
mkdir hyperion
tar -xzf Hyperion-2.0.0-alpha.7-PR#991-Linux-armv6l.tar.gz --strip-components=2 -C /home/pi/hyperion share/hyperion/

5) Install libcec-dev:

sudo apt update && sudo apt install libcec-dev

6) Launch hyperiond:

hyperion/bin/hyperiond -d
Paulchen-Panther commented 4 years ago

@RaymondMouthaan In the future, you can test PRs on HyperBian faster. Simply attach a suitable PR number to the following script and execute it. The script downloads the appropriate artifact, extracts it to a new folder, and creates an startup script. Example for PR # 991: wget -qO- https://git.io/JUsob | bash -s 991

RaymondMouthaan commented 4 years ago

@Paulchen-Panther, that's just great to have such a script, let me test the script right a way 👍

edit: it works perfect 💯

Lord-Grey commented 4 years ago

@RaymondMouthaan Just checking... Does the script works perfect and/or the fix?

RaymondMouthaan commented 4 years ago

@RaymondMouthaan Just checking... Does the script works perfect and/or the fix?

Both :-) .. This is without the script -> https://github.com/hyperion-project/hyperion.ng/issues/903#issuecomment-687580254

And this is using the handy script of @Paulchen-Panther -> https://github.com/hyperion-project/hyperion.ng/issues/903#issuecomment-687582462