OSMC and Hyperion

I’ll be home in a couple hours to try again. Thus far, I have not been able to reinstall anything on the Vero. This morning I turned it on and saw it was asking for a root filesystem and if this is a USB install, the USB device was not detected.

I’ll upload a screenshot as well. There should be three files on the USB drive or SD card, correct?

This is currently a USB drive. I will try again on an SD card if it doesn’t work.

Flashed with Etcher. Tried all the different format types. Tried on Windows as well as OSX. Should work on exfat, eh?

I just got a red light, it tells me to stand-by for a second then HDMI signal blanks out and the light goes off the Vero 4k+

UPDATE: I am now back to factory, I assume? I am prompted with the welcome screen and all that new stuff. I did not see an install screen or anything.

If there are any, what are some alternatives I can purchase to get hyperion.ng to work with the Vero 4k+? Ideally, I like to get amlogic going though

I don’t know much about video capture devices. I just have my Arduino running straight to the Vero.

Still throwing the same errors.

Scanning dependencies of target amlogic-grabber
[ 73%] Building CXX object libsrc/grabber/amlogic/CMakeFiles/amlogic-grabber.dir/AmlogicGrabber.cpp.o
[ 73%] Building CXX object libsrc/protoserver/CMakeFiles/protoclient.dir/protoclient_automoc.cpp.o
In file included from /home/osmc/hyperion/libsrc/grabber/amlogic/Amvideocap.h:7:0,
from /home/osmc/hyperion/libsrc/grabber/amlogic/AmlogicGrabber.cpp:18:
/home/osmc/hyperion/libsrc/grabber/amlogic/IonBuffer.h: In destructor ‘virtual IonBuffer::~IonBuffer()’:
/home/osmc/hyperion/libsrc/grabber/amlogic/IonBuffer.h:153:51: warning: throw will always call terminate() [-Wterminate]
throw std::runtime_error(“ION_IOC_FREE failed.”);
^
/home/osmc/hyperion/libsrc/grabber/amlogic/IonBuffer.h:153:51: note: in C++11 destructors default to noexcept
[ 73%] Building CXX object libsrc/grabber/amlogic/CMakeFiles/amlogic-grabber.dir/AmlogicWrapper.cpp.o
[ 74%] Linking CXX static library …/…/lib/libprotoclient.a
[ 74%] Built target protoclient
Scanning dependencies of target framebuffer-grabber
[ 74%] Building CXX object libsrc/commandline/CMakeFiles/commandline.dir/ColorsOption.cpp.o
[ 74%] Building CXX object libsrc/grabber/framebuffer/CMakeFiles/framebuffer-grabber.dir/FramebufferFrameGrabber.cpp.o
[ 75%] Building CXX object libsrc/api/CMakeFiles/hyperion-api.dir/JsonCB.cpp.o
[ 75%] Building CXX object libsrc/grabber/amlogic/CMakeFiles/amlogic-grabber.dir/IonBuffer.cpp.o
In file included from /home/osmc/hyperion/libsrc/grabber/amlogic/IonBuffer.cpp:16:0:
/home/osmc/hyperion/libsrc/grabber/amlogic/IonBuffer.h: In destructor ‘virtual IonBuffer::~IonBuffer()’:
/home/osmc/hyperion/libsrc/grabber/amlogic/IonBuffer.h:153:51: warning: throw will always call terminate() [-Wterminate]
throw std::runtime_error(“ION_IOC_FREE failed.”);
^
/home/osmc/hyperion/libsrc/grabber/amlogic/IonBuffer.h:153:51: note: in C++11 destructors default to noexcept
[ 76%] Building CXX object libsrc/grabber/amlogic/CMakeFiles/amlogic-grabber.dir/amlogic-grabber_automoc.cpp.o

Scanning dependencies of target test_blackborderprocessor
[ 85%] Building CXX object test/CMakeFiles/test_blackborderprocessor.dir/TestBlackBorderProcessor.cpp.o
[ 85%] Building CXX object libsrc/webserver/CMakeFiles/webserver.dir/QtHttpRequest.cpp.o
[ 86%] Building CXX object test/CMakeFiles/test_image2ledsmap.dir/test_image2ledsmap_automoc.cpp.o
[ 86%] Linking CXX executable …/bin/test_image2ledsmap
/home/osmc/hyperion/test/TestBlackBorderProcessor.cpp: In function ‘int main()’:
/home/osmc/hyperion/test/TestBlackBorderProcessor.cpp:53:39: error: no matching function for call to ‘hyperion::BlackBorderProcessor::BlackBorderProcessor(QJsonObject&)’
BlackBorderProcessor processor(config);
^
In file included from /home/osmc/hyperion/test/TestBlackBorderProcessor.cpp:12:0:
/home/osmc/hyperion/include/blackborder/BlackBorderProcessor.h:27:3: note: candidate: hyperion::BlackBorderProcessor::BlackBorderProcessor(Hyperion*, QObject*)
BlackBorderProcessor(Hyperion* hyperion, QObject* parent);
^~~~~~~~~~~~~~~~~~~~
/home/osmc/hyperion/include/blackborder/BlackBorderProcessor.h:27:3: note: candidate expects 2 arguments, 1 provided
test/CMakeFiles/test_blackborderprocessor.dir/build.make:62: recipe for target ‘test/CMakeFiles/test_blackborderprocessor.dir/TestBlackBorderProcessor.cpp.o’ failed
make[2]: *** [test/CMakeFiles/test_blackborderprocessor.dir/TestBlackBorderProcessor.cpp.o] Error 1
CMakeFiles/Makefile2:3480: recipe for target ‘test/CMakeFiles/test_blackborderprocessor.dir/all’ failed
make[1]: *** [test/CMakeFiles/test_blackborderprocessor.dir/all] Error 2
make[1]: *** Waiting for unfinished jobs…
[ 86%] Building CXX object libsrc/webserver/CMakeFiles/webserver.dir/QtHttpServer.cpp.o
…/lib/libhyperion.a(Hyperion.cpp.o): In function hyperion::createColorOrder(QJsonObject const&)': Hyperion.cpp:(.text+0xa64): multiple definition of hyperion::createColorOrder(QJsonObject const&)’
CMakeFiles/test_image2ledsmap.dir/TestImage2LedsMap.cpp.o:TestImage2LedsMap.cpp:(.text+0x1180): first defined here
…/lib/libhyperion.a(Hyperion.cpp.o): In function hyperion::createRgbTransform(QJsonObject const&)': Hyperion.cpp:(.text+0xcb4): multiple definition of hyperion::createRgbTransform(QJsonObject const&)’
CMakeFiles/test_image2ledsmap.dir/TestImage2LedsMap.cpp.o:TestImage2LedsMap.cpp:(.text+0x13d0): first defined here
…/lib/libhyperion.a(Hyperion.cpp.o): In function hyperion::createRgbChannelAdjustment(QJsonObject const&, QString, int, int, int)': Hyperion.cpp:(.text+0xfdc): multiple definition of hyperion::createRgbChannelAdjustment(QJsonObject const&, QString, int, int, int)’
CMakeFiles/test_image2ledsmap.dir/TestImage2LedsMap.cpp.o:TestImage2LedsMap.cpp:(.text+0x16f4): first defined here
…/lib/libhyperion.a(Hyperion.cpp.o): In function hyperion::createColorAdjustment(QJsonObject const&)': Hyperion.cpp:(.text+0x114c): multiple definition of hyperion::createColorAdjustment(QJsonObject const&)’
CMakeFiles/test_image2ledsmap.dir/TestImage2LedsMap.cpp.o:TestImage2LedsMap.cpp:(.text+0x1864): first defined here
…/lib/libhyperion.a(Hyperion.cpp.o): In function hyperion::createLedColorsAdjustment(unsigned int, QJsonObject const&)': Hyperion.cpp:(.text+0x2b04): multiple definition of hyperion::createLedColorsAdjustment(unsigned int, QJsonObject const&)’
CMakeFiles/test_image2ledsmap.dir/TestImage2LedsMap.cpp.o:TestImage2LedsMap.cpp:(.text+0x3184): first defined here
…/lib/libhyperion.a(Hyperion.cpp.o): In function hyperion::createLedString(QJsonArray const&, ColorOrder)': Hyperion.cpp:(.text+0x3580): multiple definition of hyperion::createLedString(QJsonArray const&, ColorOrder)’
CMakeFiles/test_image2ledsmap.dir/TestImage2LedsMap.cpp.o:TestImage2LedsMap.cpp:(.text+0x3c60): first defined here
…/lib/libhyperion.a(Hyperion.cpp.o): In function hyperion::createLedStringClone(QJsonArray const&, ColorOrder)': Hyperion.cpp:(.text+0x3eb8): multiple definition of hyperion::createLedStringClone(QJsonArray const&, ColorOrder)’
CMakeFiles/test_image2ledsmap.dir/TestImage2LedsMap.cpp.o:TestImage2LedsMap.cpp:(.text+0x45b8): first defined here
…/lib/libhyperion.a(Hyperion.cpp.o): In function hyperion::handleInitialEffect(Hyperion*, QJsonObject const&)': Hyperion.cpp:(.text+0x4ea0): multiple definition of hyperion::handleInitialEffect(Hyperion*, QJsonObject const&)’
CMakeFiles/test_image2ledsmap.dir/TestImage2LedsMap.cpp.o:TestImage2LedsMap.cpp:(.text+0xa48): first defined here
…/lib/libhyperion.a(Hyperion.cpp.o): In function hyperion::getLedLayoutGridSize(QJsonArray const&)': Hyperion.cpp:(.text+0x5480): multiple definition of hyperion::getLedLayoutGridSize(QJsonArray const&)’
CMakeFiles/test_image2ledsmap.dir/TestImage2LedsMap.cpp.o:TestImage2LedsMap.cpp:(.text+0x4c38): first defined here
collect2: error: ld returned 1 exit status
test/CMakeFiles/test_image2ledsmap.dir/build.make:153: recipe for target ‘bin/test_image2ledsmap’ failed
make[2]: *** [bin/test_image2ledsmap] Error 1
CMakeFiles/Makefile2:3438: recipe for target ‘test/CMakeFiles/test_image2ledsmap.dir/all’ failed
make[1]: *** [test/CMakeFiles/test_image2ledsmap.dir/all] Error 2
[ 87%] Building CXX object libsrc/webserver/CMakeFiles/webserver.dir/StaticFileServing.cpp.o
[ 88%] Building CXX object libsrc/commandline/CMakeFiles/commandline.dir/commandline_automoc.cpp.o
[ 88%] Linking CXX static library …/…/lib/libcommandline.a
[ 88%] Built target commandline
[ 88%] Building CXX object libsrc/webserver/CMakeFiles/webserver.dir/WebJsonRpc.cpp.o
[ 88%] Building CXX object libsrc/webserver/CMakeFiles/webserver.dir/WebServer.cpp.o
[ 88%] Building CXX object libsrc/webserver/CMakeFiles/webserver.dir/WebSocketClient.cpp.o
[ 89%] Building CXX object libsrc/webserver/CMakeFiles/webserver.dir/webserver_automoc.cpp.o
[ 89%] Building CXX object libsrc/webserver/CMakeFiles/webserver.dir/webserver_automoc.dir/qrc_WebConfig_NXBAIHQSQM5QBD.cpp.o
[ 89%] Linking CXX static library …/…/lib/libwebserver.a
[ 89%] Built target webserver
Makefile:149: recipe for target ‘all’ failed
make: *** [all] Error 2

Using hyperion-vero4k builder I was able to create everything. I do have to run hyperiond /etc/hyperion/hyperion.config.json or it will say config file not found. I can edit the json file on the java applet and send information over just fine. I currently have amblight on the menu and am syncing my libraries now. I added framebuffer and amlogic to the config file as well manually. This is from post #160 that I used. How can I update to newer build on github? I don’t even need to run anything so it appears that I have a some sort of combination of hyperiond and classic installed. Not sure if I can play video yet. Everytime I create a new json file on the java applet, I must go in and add in amlogic.

/etc/hyperion/hyperion.config.json
ssh in: Apr 08 19:05:49 osmc hyperiond[5359]: HYPERION INFO: ColorTransform ‘default’ => [0; 215]
ssh in: Apr 08 19:05:49 osmc hyperiond[5359]: HYPERION INFO: ColorCorrection ‘default’ => [0; 215]
ssh in: Apr 08 19:05:49 osmc hyperiond[5359]: HYPERION INFO: ColorAdjustment ‘default’ => [0; 215]
ssh in: Apr 08 19:05:49 osmc hyperiond[5359]: LEDDEVICE INFO: configuration:
ssh in: Apr 08 19:05:49 osmc hyperiond[5359]: {
ssh in: Apr 08 19:05:49 osmc hyperiond[5359]: “colorOrder” : “grb”,
ssh in: Apr 08 19:05:49 osmc hyperiond[5359]: “delayAfterConnect” : 0,
ssh in: Apr 08 19:05:49 osmc hyperiond[5359]: “name” : “MyHyperionConfig”,
ssh in: Apr 08 19:05:49 osmc hyperiond[5359]: “output” : “/dev/ttyACM0”,
ssh in: Apr 08 19:05:49 osmc hyperiond[5359]: “rate” : 115200,
ssh in: Apr 08 19:05:49 osmc hyperiond[5359]: “type” : “adalight”
ssh in: Apr 08 19:05:49 osmc hyperiond[5359]: }
ssh in: Apr 08 19:05:49 osmc hyperiond[5359]: Opening UART: /dev/ttyACM0
ssh in: Apr 08 19:05:49 osmc hyperiond[5359]: INFO: Creating linear smoothing
ssh in: Apr 08 19:05:49 osmc hyperiond[5359]: HYPERION (CS) INFO: Created linear-smoothing(interval_ms=50;settlingTime_ms=200;updateDelay=0
ssh in: Apr 08 19:05:49 osmc hyperiond[5359]: EFFECTENGINE INFO: 27 effects loaded from directory /usr/share/hyperion/effects
ssh in: Apr 08 19:05:49 osmc hyperiond[5359]: EFFECTENGINE INFO: Initializing Python interpreter
ssh in: Apr 08 19:05:49 osmc hyperiond[5359]: INFO: Hyperion started and initialised
ssh in: Apr 08 19:05:49 osmc hyperiond[5359]: INFO: Json server created and started on port 19444
ssh in: Apr 08 19:05:49 osmc hyperiond[5359]: INFO: Proto server created and started on port 19445
ssh in: Apr 08 19:05:49 osmc hyperiond[5359]: QtHttpServer started on port 32472 “Qt Static HTTP File Server”
ssh in: Apr 08 19:05:49 osmc hyperiond[5359]: AMLOGICGRABBER INFO: [AmlogicGrabber::AmlogicGrabber(unsigned int, unsigned int)] constructed(160x160)
ssh in: Apr 08 19:05:49 osmc hyperiond[5359]: BLACKBORDER INFO: threshold set to 0.15 (39)
ssh in: Apr 08 19:05:49 osmc hyperiond[5359]: BLACKBORDER INFO: mode:default
ssh in: Apr 08 19:05:49 osmc hyperiond[5359]: INFO: AMLOGIC grabber created and started
ssh in: Apr 08 19:05:49 osmc hyperiond[5359]: FRAMEBUFFERGRABBER INFO: opened with resolution: 1920x1080@32bit
ssh in: Apr 08 19:05:49 osmc hyperiond[5359]: BLACKBORDER INFO: threshold set to 0.15 (39)
ssh in: Apr 08 19:05:49 osmc hyperiond[5359]: BLACKBORDER INFO: mode:default
ssh in: Apr 08 19:05:49 osmc hyperiond[5359]: INFO: Framebuffer grabber created and started

I would really like the web UI but thus far have been unsuccessful. So far this is the furthest I have been able to go. I noticed @hissingshark build is a little old compared to hyperion.ng which was updated a few days ago on github. Anyway it can be updated to reflect the newest Hyperion.ng version?

I noticed that QtHTTP server going with some odd port I never assigned. If I go to http://192.168.1.136:32472/ I am just shown this message:
Requested file index.html couldn’t be found !

Currently, anytime I try playing a video, “I get an error occured” and it returns back to the OSMC menu…

https://paste.osmc.tv/ebivazaqek

I think you may be building it for the wrong device. There are some instructions in this thread

Sam

I’ve got a Vero4k+, I’ve tried following @Anthrax guide to get things going, but I receive the error “Floating point exception” on execution. Has anyone seen this before? am i missing something outside of the guide?

# ./hyperiond -v
[hyperiond SettingsManager] <INFO> Selected configuration file: /root/.hyperion/config/hyperion_main.json
[hyperiond EFFECTFILES] <INFO> 36 effects loaded from directory :/effects/
[hyperiond EFFECTFILES] <INFO> 19 effect schemas loaded from directory :/effects/schema/
[hyperiond EFFECTFILES] <INFO> 0 effects loaded from directory /root/.hyperion/custom-effects
[hyperiond SettingsManager] <INFO> Selected configuration file: /root/.hyperion/config/hyperion_main.json
[hyperiond FLATBUFCONNECTION] <INFO> Connecting to Hyperion: 127.0.0.1:19401
[hyperiond LEDDEVICE] <INFO> LedDevice 'file' configured.
[hyperiond EFFECTENGINE] <INFO> run effect Rainbow swirl fast on channel 0
[hyperiond HYPERION] <INFO> Inital foreground effect 'Rainbow swirl fast' started
[hyperiond EFFECTENGINE] <INFO> run effect Warm mood blobs on channel 254
[hyperiond HYPERION] <INFO> Inital background effect 'Warm mood blobs' started
[hyperiond DAEMON] <INFO> Hyperion initialized
[hyperiond DAEMON] <INFO> set screen capture device to 'amlogic'
Floating point exception

Do you have framebuffer and amlogic to your hyperion.config.json file.

Try starting Hyperion with ‘/etc/hyperion/hyperion.config.json’ added to the end

I had to use the installer made by hissing shark back in 2017. After it’s finished just go in and run the install script. You will have to configure using the old Java application and after you’re finished ssh in and add the framebuffer and amlogic to your json file in /etc/hyperion

I had to double check I didn’t have two installations of Hyperion, I can restart it with systemctl restart hyperion. If you want to have both builds (I still have not figured out a way to compile for amlogic on the 4k+, you have to run systemctl disable hyperion and just use the Java applet

I think you may have installed Hyperion rather than Hyperion NG

I´ve tried this installation guide from anthrax on vero4k+ and i am in stuck on the same error.
Floating Point Exception. Any advice??
Thanks

I did, that is all I can get to compile right now. I actually had to use hissingsharks build for Hyperion NG and then run ./install.sh located in the folder. This is the only way to avoid that CPU error when installing classic. I have tried the fix many times with no result.

Sure do wish I could get that web configuration working.

^^

Chaps,

I’m happy to renew investigations in to lag (with hopefully promising results now) if we can get an updated guide on how to build and run Hyperion.

S

4 Likes

Looking forward to seeing Hyperion.ng on the appstore someday :slight_smile: I would be head over heels lol

It will happen – but there are other things to happen before that. The current App Store needs an architectural rework hence the lack of progress.

Sam

2 Likes

Is there a specific reason why the commenting/removing the lines in the cpu check does not work on my Vero 4k+?

I would like to remove everything related to Hyperion on my Vero and start from scratch.

In order for me to get hyperion to work now. I can either start the service via systemctl start hyperion which is using the /etc/hyperion/ config file that was created with my java applet. I can stop the service and decide to start it via the java applet. My problem lies in after sending over the config file from the Hyperion app, I then have to ssh in every time and add in amlogic and framebuffer to the config file and restart it again. I have it working on the menu as well as my videos without much issue. 100% of my video is just 1080p at most on my 4k TV so I don’t even bother, streams fine.

The only way I was able to actually install classic hyperion on my Vero was to install the old installer from hissing shark and go into /root/hyperion-vero4k/bin and and use the compile.sh. After that I was able to install hyperion via the java app and it works but not as I had hoped.

I still continue to try @Anthrax method but I get the same errors when trying to compile amlogic and frame buffer and it ultimately fails. I have tried the build feature on @hissingshark installer but I get numerous errors. I did install the preinstalled version with everything, albeit a new version it does work and gives me a different method to configure Hyperion but it is basically all the same. I have never been able to access the web configuration and ditch the java app but I have had zero luck. 2 fresh starts on the Vero 4k+ with the same results. They are three wire LEDs so I am utilizing #6 on my Arduino. Everything is physically is setup properly, at least to my knowledge.

I tried to switch over to the solder free corner and will be removing the this evening and soldering jumper wire in-between. The connection just isn’t right and I can tell when my whites start looking purple. Anyway, I got a little off topic there.

Is there just something I am missing regarding hyperion.ng install? I am reading up and down this forum and numerous people have gotten this to work. I just want to be able to try out the web based build. It looked so much better on my rPi using Dispmanx. I was still using the Arduino for some reason…I guess I could have avoided that. I did try moving some old parts from @hissingshark build with hyperion-aml into the failed build, that didn’t work because it seems to be outdated. For some reason that installer will let you build everything including amlogic without failures but if I try and create my own from the installer since it does clone from github, I just get errors. I can try and again and post them up if anyone wants to look at them.

I am using the latest FastLED on my Arduino as my sketch, recently updated yesterday. Not sure if this is part of the problem or not but I do have three or four rPi’s laying around.

I’m totally lost when it comes to fowarding Hyperion but before I purchased my Vero 4k+, I was able to successfully compile, build and use hyperion.ng rather than Classic. I just want to be able to do this with my Vero.

Any help is greatly appreciated. I think I have worked on this everyday since receiving my Vero 4k+. Thank you for taking the time to read this to whoever may be of some help :):thinking:

I can build without amlogic with any of the instruction pages scattered about, just doesn’t do me any good on the Vero with only framebuffer. Is there a way for someone who has had luck compiling it and manually adding it into my hyperion.ng build?

This is the sketch I am using on the Arduino. Seems to be pretty stable throughout all Hyperion builds.

Compiling from the @hissingshark installer gives me a lot of depreciated errors, etc.

Mainly at the beginning.

– ENABLE_ZEROCONF = ON
– ENABLE_AMLOGIC = ON
– ENABLE_DISPMANX = OFF
– ENABLE_FB = ON
– ENABLE_OSX = OFF
– ENABLE_SPIDEV = OFF
– ENABLE_TINKERFORGE = OFF
– ENABLE_V4L2 = OFF
– ENABLE_WS2812BPWM = OFF
– ENABLE_WS281XPWM = OFF
– ENABLE_X11 = OFF
– ENABLE_QT5 = ON
– ENABLE_TESTS = ON
– ENABLE_PROFILER = OFF
– Current Version: master (GitHub-40c474c/7684a75-1549667088)
– Found libusb-1.0:
– - Includes: /usr/include/libusb-1.0
– - Libraries: /usr/lib/arm-linux-gnueabihf/libusb-1.0.so
– Looking for pthread.h
– Looking for pthread.h - found
– Looking for pthread_create
– Looking for pthread_create - not found
– Looking for pthread_create in pthreads
– Looking for pthread_create in pthreads - not found
– Looking for pthread_create in pthread
– Looking for pthread_create in pthread - found
– Found Threads: TRUE
– Could NOT find ZLIB (missing: ZLIB_LIBRARY ZLIB_INCLUDE_DIR)
– Looking for dlfcn.h
– Looking for dlfcn.h - found
– Looking for inttypes.h
– Looking for inttypes.h - found
– Looking for memory.h
– Looking for memory.h - found
– Looking for stdint.h
– Looking for stdint.h - found
– Looking for stdlib.h
– Looking for stdlib.h - found
– Looking for strings.h
– Looking for strings.h - found
– Looking for string.h
– Looking for string.h - found
– Looking for sys/stat.h
– Looking for sys/stat.h - found
– Looking for sys/types.h
– Looking for sys/types.h - found
– Looking for unistd.h
– Looking for unistd.h - found
– Protobuf: doing try-compiles for hash map/set headers
– Protobuf: doing try-compiles for pthread test
– Looking for stddef.h
– Looking for stddef.h - found
– Using protobuf compiler: /root/hyperion-vero4k/source/build/bin/protoc
– Found PythonLibs: /usr/lib/arm-linux-gnueabihf/libpython3.5m.so (found version “3.5.3”)
CMake Warning at doc/CMakeLists.txt:31 (message):
Doxygen not found, unable to generate documenation!

– Configuring done
– Generating done
– Build files have been written to: /root/hyperion-vero4k/source/build
Scanning dependencies of target jsoncpp
Scanning dependencies of target hidapi-libusb
Scanning dependencies of target serialport
Scanning dependencies of target getoptPlusPlus
[ 1%] Building C object dependencies/build/hidapi/CMakeFiles/hidapi-libusb.dir/hid-libusb.c.o
[ 2%] Building CXX object dependencies/build/jsoncpp/CMakeFiles/jsoncpp.dir/json_reader.cpp.o
[ 2%] Building CXX object dependencies/build/serial/CMakeFiles/serialport.dir/src/serial.cc.o
[ 3%] Building CXX object dependencies/build/getoptPlusPlus/CMakeFiles/getoptPlusPlus.dir///include/getoptPlusPlus/parameter.include.cc.o
[ 3%] Building CXX object dependencies/build/getoptPlusPlus/CMakeFiles/getoptPlusPlus.dir/getoptpp.cc.o
[ 3%] Linking C static library …/…/…/lib/libhidapi-libusb.a
[ 3%] Built target hidapi-libusb
Scanning dependencies of target tinkerforge
[ 3%] Building C object dependencies/build/tinkerforge/CMakeFiles/tinkerforge.dir/bricklet_led_strip.c.o
[ 3%] Building C object dependencies/build/tinkerforge/CMakeFiles/tinkerforge.dir/ip_connection.c.o
In file included from /usr/include/errno.h:28:0,
from /root/hyperion-vero4k/source/dependencies/build/tinkerforge/ip_connection.c:13:
/usr/include/features.h:148:3: warning: #warning “_BSD_SOURCE and _SVID_SOURCE are deprecated, use _DEFAULT_SOURCE” [-Wcpp]

warning “_BSD_SOURCE and _SVID_SOURCE are deprecated, use _DEFAULT_SOURCE”

^~~~~~~
[ 4%] Building CXX object dependencies/build/serial/CMakeFiles/serialport.dir/src/impl/unix.cc.o
[ 5%] Linking C static library …/…/…/lib/libtinkerforge.a
[ 5%] Built target tinkerforge
[ 5%] Building CXX object dependencies/build/jsoncpp/CMakeFiles/jsoncpp.dir/json_value.cpp.o
[ 5%] Linking CXX static library …/…/…/lib/libgetoptPlusPlus.a
[ 5%] Built target getoptPlusPlus
[ 5%] Building CXX object dependencies/build/jsoncpp/CMakeFiles/jsoncpp.dir/json_writer.cpp.o
Scanning dependencies of target protobuf
[ 6%] Building CXX object dependencies/external/protobuf/src/CMakeFiles/protobuf.dir/google/protobuf/stubs/common.cc.o
[ 6%] Building CXX object dependencies/external/protobuf/src/CMakeFiles/protobuf.dir/google/protobuf/stubs/once.cc.o
[ 7%] Building CXX object dependencies/external/protobuf/src/CMakeFiles/protobuf.dir/google/protobuf/stubs/hash.cc.o
In file included from /usr/include/c++/6/map:60:0,
from /root/hyperion-vero4k/source/dependencies/include/json/value.h:16,
from /root/hyperion-vero4k/source/dependencies/build/jsoncpp/json_value.cpp:7:
/usr/include/c++/6/bits/stl_tree.h: In function ‘std::_Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>::iterator std::_Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>::M_insert_unique(std::_Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>::const_iterator, _Arg&&, _NodeGen&) [with _Arg = std::pair<const Json::Value::CZString, Json::Value>&; _NodeGen = std::_Rb_tree<Json::Value::CZString, std::pair<const Json::Value::CZString, Json::Value>, std::_Select1st<std::pair<const Json::Value::CZString, Json::Value> >, std::lessJson::Value::CZString, std::allocator<std::pair<const Json::Value::CZString, Json::Value> > >::_Alloc_node; _Key = Json::Value::CZString; _Val = std::pair<const Json::Value::CZString, Json::Value>; _KeyOfValue = std::_Select1st<std::pair<const Json::Value::CZString, Json::Value> >; _Compare = std::lessJson::Value::CZString; _Alloc = std::allocator<std::pair<const Json::Value::CZString, Json::Value> >]’:
/usr/include/c++/6/bits/stl_tree.h:1989:7: note: parameter passing for argument of type ‘std::_Rb_tree<Json::Value::CZString, std::pair<const Json::Value::CZString, Json::Value>, std::_Select1st<std::pair<const Json::Value::CZString, Json::Value> >, std::lessJson::Value::CZString, std::allocator<std::pair<const Json::Value::CZString, Json::Value> > >::const_iterator {aka std::_Rb_tree_const_iterator<std::pair<const Json::Value::CZString, Json::Value> >}’ will change in GCC 7.1
_Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>::
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/6/bits/stl_tree.h:1989:7: note: parameter passing for argument of type ‘std::_Rb_tree<Json::Value::CZString, std::pair<const Json::Value::CZString, Json::Value>, std::_Select1st<std::pair<const Json::Value::CZString, Json::Value> >, std::lessJson::Value::CZString, std::allocator<std::pair<const Json::Value::CZString, Json::Value> > >::const_iterator {aka std::_Rb_tree_const_iterator<std::pair<const Json::Value::CZString, Json::Value> >}’ will change in GCC 7.1
[ 7%] Linking CXX static library …/…/…/lib/libserialport.a
/usr/include/c++/6/bits/stl_tree.h: In member function ‘Json::Value& Json::Value::operator’:
/usr/include/c++/6/bits/stl_tree.h:950:65: note: parameter passing for argument of type ‘std::_Rb_tree<Json::Value::CZString, std::pair<const Json::Value::CZString, Json::Value>, std::_Select1st<std::pair<const Json::Value::CZString, Json::Value> >, std::lessJson::Value::CZString, std::allocator<std::pair<const Json::Value::CZString, Json::Value> > >::const_iterator {aka std::_Rb_tree_const_iterator<std::pair<const Json::Value::CZString, Json::Value> >}’ will change in GCC 7.1
return M_insert_unique(__pos, std::forward<_Arg>(__x), __an);
^
[ 7%] Built target serialport
Scanning dependencies of target protobuf-lite
[ 8%] Building CXX object dependencies/external/protobuf/src/CMakeFiles/protobuf-lite.dir/google/protobuf/stubs/common.cc.o
/usr/include/c++/6/bits/stl_tree.h: In member function ‘Json::Value& Json::Value::resolveReference(const char*, bool)’:
/usr/include/c++/6/bits/stl_tree.h:950:65: note: parameter passing for argument of type ‘std::_Rb_tree<Json::Value::CZString, std::pair<const Json::Value::CZString, Json::Value>, std::_Select1st<std::pair<const Json::Value::CZString, Json::Value> >, std::lessJson::Value::CZString, std::allocator<std::pair<const Json::Value::CZString, Json::Value> > >::const_iterator {aka std::_Rb_tree_const_iterator<std::pair<const Json::Value::CZString, Json::Value> >}’ will change in GCC 7.1
return M_insert_unique(__pos, std::forward<_Arg>(__x), __an);
^
[ 8%] Building CXX object dependencies/external/protobuf/src/CMakeFiles/protobuf.dir/google/protobuf/extension_set.cc.o
[ 8%] Building CXX object dependencies/external/protobuf/src/CMakeFiles/protobuf.dir/google/protobuf/generated_message_util.cc.o
[ 9%] Linking CXX static library …/…/…/lib/libjsoncpp.a
[ 9%] Built target jsoncpp
Scanning dependencies of target test_qregexp
[ 10%] Building CXX object test/CMakeFiles/test_qregexp.dir/TestQRegExp.cpp.o
[ 11%] Building CXX object dependencies/external/protobuf/src/CMakeFiles/protobuf.dir/google/protobuf/message_lite.cc.o
[ 11%] Building CXX object dependencies/external/protobuf/src/CMakeFiles/protobuf-lite.dir/google/protobuf/stubs/once.cc.o
[ 11%] Building CXX object dependencies/external/protobuf/src/CMakeFiles/protobuf-lite.dir/google/protobuf/stubs/hash.cc.o
[ 11%] Building CXX object dependencies/external/protobuf/src/CMakeFiles/protobuf.dir/google/protobuf/repeated_field.cc.o
[ 11%] Linking CXX executable …/bin/test_qregexp
[ 12%] Building CXX object dependencies/external/protobuf/src/CMakeFiles/protobuf-lite.dir/google/protobuf/extension_set.cc.o
[ 12%] Built target test_qregexp
Scanning dependencies of target test_qtscreenshot
[ 12%] Building CXX object dependencies/external/protobuf/src/CMakeFiles/protobuf.dir/google/protobuf/wire_format_lite.cc.o
[ 12%] Building CXX object test/CMakeFiles/test_qtscreenshot.dir/TestQtScreenshot.cpp.o
[ 13%] Building CXX object dependencies/external/protobuf/src/CMakeFiles/protobuf.dir/google/protobuf/io/coded_stream.cc.o
[ 14%] Linking CXX executable …/bin/test_qtscreenshot
[ 14%] Building CXX object dependencies/external/protobuf/src/CMakeFiles/protobuf.dir/google/protobuf/io/zero_copy_stream.cc.o
[ 14%] Built target test_qtscreenshot
[ 14%] Building CXX object dependencies/external/protobuf/src/CMakeFiles/protobuf.dir/google/protobuf/io/zero_copy_stream_impl_lite.cc.o
[ 15%] Building CXX object dependencies/external/protobuf/src/CMakeFiles/protobuf.dir/google/protobuf/stubs/strutil.cc.o
[ 15%] Building CXX object dependencies/external/protobuf/src/CMakeFiles/protobuf.dir/google/protobuf/stubs/substitute.cc.o
[ 15%] Building CXX object dependencies/external/protobuf/src/CMakeFiles/protobuf.dir/google/protobuf/stubs/structurally_valid.cc.o
[ 16%] Building CXX object dependencies/external/protobuf/src/CMakeFiles/protobuf.dir/google/protobuf/stubs/atomicops_internals_x86_gcc.cc.o

ends up failing at the end with amlogic again. I have fully installed Hyperion classic and all remnants on the Vero 4k+ before trying to install hyperion.ng again. I have the urge to try again this afternoon…maybe it’ll work if I cross my fingers. I actually do everytime lol

I wonder if there is a way for me to switch out my Arduino for an rPi, compile hyperion.ng on it with the web UI and forward the information onto the Vero4k+?

Does anyone use an rPi w/ a Vero 4k+ to be able to utilize hyperion.ng? I do not own a USB grabber, they aren’t cheap!

At least a temporary fix. I notice running hyperion.ng off OSMC with an rPi actually produces better color results than running Hyperion classic on the Vero. Big big difference.

An updated guide for the Vero would be amazing. I really would like to get this to work and make it easier for everyone else to install/compile.

Perhaps someone is knowledgeable enough to make a Vero4k/Vero4k+ installer for people who wish to test out hyperion.ng. Having to compile and build it is just not working. I’m sure a lot of us have the same platform here, one installer should suffice for the whole crowd, minus the rPi folks. I have no issues compiling/building and using Hyperion.ng running OSMC on an rPi. Vero4k+ is a different story. It’s hellish to get something up and going. I think I have installed some hybrid of 4 different versions, it works as classic should but it shouldn’t have to be that hard to get it installed.

If anyone wants to use what I have here as a testing platform, I am more than happy to help. I am comfortable navigating Linux through command line, etc. Figuring out things such as this though are beyond my capabilities.

I’m just trying different forked versions of hyperion.ng at the moment. That’s all we really need here with the appropriate changes made to it so we can compile it without any issues.

I can re-run the installer soon and document what’s needed to get it to install properly.

Sam

2 Likes

That would be awesome. I only have luck using the @hissingshark installer he provided a couple years ago in this forum. It seems to just override everything and amlogic installs properly and everything. It’s just an old version and cannot be updated as far as my knowledge.

I have tried taking parts of his out and mixing it in with the new one via SFTP, doesn’t work of course.

Holy crap, it built with no errors. I used:

git clone --recursive -b entertainment-api https://github.com/SJunkies/hyperion.ng.git hyperion.ng
cmake -DPLATFORM=amlogic -DENABLE_AMLOGIC=ON -DENABLE_DISPMANX=OFF -DENABLE_FB=ON -DENABLE_OSX=OFF -DENABLE_SPIDEV=OFF -DENABLE_TINKERFORGE=OFF -DENABLE_V4L2=ON -DENABLE_WS281XPWM=OFF -DENABLE_X11=OFF -DENABLE_TESTS=ON -DENABLE_PROFILER=OFF -DCMAKE_BUILD_TYPE=Release ..

I’m actually trying to compile the API based installer mentioned on here Anthrax OSMC Vero 4k steps and I actually ran systemctl stop mediacenter while compiling to see if having Kodi running while compiling is making things harder.

Scanning dependencies of target hyperion-remote
[ 93%] Building CXX object src/hyperion-remote/CMakeFiles/hyperion-remote.dir/hyperion-remote.cpp.o
[ 93%] Building CXX object libsrc/webconfig/CMakeFiles/webconfig.dir/webconfig_automoc.dir/qrc_WebConfig_NXBAIHQSQM5QBD.cpp.o
Scanning dependencies of target hyperion-aml
[ 93%] Building CXX object src/hyperion-aml/CMakeFiles/hyperion-aml.dir/hyperion-aml.cpp.o
[ 93%] Building CXX object src/hyperion-aml/CMakeFiles/hyperion-aml.dir/AmlogicWrapper.cpp.o
[ 94%] Building CXX object src/hyperion-aml/CMakeFiles/hyperion-aml.dir/hyperion-aml_automoc.cpp.o
[ 95%] Building CXX object src/hyperion-remote/CMakeFiles/hyperion-remote.dir/JsonConnection.cpp.o
[ 95%] Building CXX object src/hyperion-remote/CMakeFiles/hyperion-remote.dir/hyperion-remote_automoc.cpp.o
Scanning dependencies of target hyperion-v4l2
[ 95%] Building CXX object src/hyperion-v4l2/CMakeFiles/hyperion-v4l2.dir/hyperion-v4l2.cpp.o
[ 95%] Linking CXX executable …/…/bin/hyperion-aml
[ 95%] Built target hyperion-aml
Scanning dependencies of target hyperion-framebuffer
[ 96%] Building CXX object src/hyperion-framebuffer/CMakeFiles/hyperion-framebuffer.dir/hyperion-framebuffer.cpp.o
[ 96%] Linking CXX executable …/…/bin/hyperion-remote
[ 96%] Built target hyperion-remote
[ 96%] Building CXX object src/hyperion-framebuffer/CMakeFiles/hyperion-framebuffer.dir/FramebufferWrapper.cpp.o
[ 96%] Linking CXX static library …/…/lib/libwebconfig.a
[ 96%] Built target webconfig
Scanning dependencies of target hyperiond
[ 96%] Building CXX object src/hyperion-framebuffer/CMakeFiles/hyperion-framebuffer.dir/hyperion-framebuffer_automoc.cpp.o
[ 96%] Building CXX object src/hyperiond/CMakeFiles/hyperiond.dir/hyperiond.cpp.o
[ 97%] Building CXX object src/hyperiond/CMakeFiles/hyperiond.dir/systray.cpp.o
[ 98%] Linking CXX executable …/…/bin/hyperion-framebuffer
[ 99%] Building CXX object src/hyperion-v4l2/CMakeFiles/hyperion-v4l2.dir/ScreenshotHandler.cpp.o
[ 99%] Built target hyperion-framebuffer
[ 99%] Building CXX object src/hyperion-v4l2/CMakeFiles/hyperion-v4l2.dir/hyperion-v4l2_automoc.cpp.o
[ 99%] Building CXX object src/hyperiond/CMakeFiles/hyperiond.dir/main.cpp.o
[ 99%] Building CXX object src/hyperiond/CMakeFiles/hyperiond.dir/hyperiond_automoc.cpp.o
[ 99%] Linking CXX executable …/…/bin/hyperion-v4l2
[ 99%] Built target hyperion-v4l2
[100%] Linking CXX executable …/…/bin/hyperiond
[100%] Built target hyperiond
root@osmc:~/hyperion.ng/build#

Okay, it looks like you can compile and build hyperion.ng verion 2 but anything after that fails. I have classic and hyperion.ng installed on my Vero 4k+

I had to compile this one even though I use my amblight on my Arduino straight to the Vero so I need amlogic. This one seems to build with it but I am unable to install the newer version. Does anyone know a way I can change the source so when I run git pull origin it will pull from the non API version of hyperion? That would be cool as it appears on the webserver (which I can see!) I ran ```
/root/hyperion.ng/build/bin/hyperiond -v


I had to manually copy the webconfig folder over to the root hyperion.ng directory as it was asking me to provide a -r argument for the copy so I just used SFTP and dragged it over. 


git clone --recursive -b entertainment-api GitHub - SJunkies/hyperion.ng: PRE ALPHA - The reworked version (next generation) of Hyperion hyperion.ng

edit: I have basic hyperion functions with and old version of classic. All this troubleshooting can be shelved as we are going to have a successful way to install hyperion.ng just as easy as it is on an rPi. Updated to 18 today with a few issues, mainly due to having a large library. I believe I had a couple thermal shutdowns. Fresh start fixed that problem.

I do however notice hyperion classic runs like crap on kodi 18.

@nbraunstein @sam_nazarko
As far as I can tell my installer is still working fine for building Hyperion “classic”. I’m not clear what if anything has been an issue there.

I built Hyperion.ng last night just fine from its devs own instructions. My TV luminaire is currently dismantled due to decorating, so I’ve only tested up to running hyperiond from the commandline and then:

  1. Accessing the webUI on port 8090;
  2. Connecting the android app (still very alpha)

The only build failure was for one of the test programs. So building without tests enabled is the workaround in the first instance, by removing any -DENABLE_TESTS=ON when invoking cmake

I encountered the floating point error at runtime as others have done. This is fixing by specifying the CPU type prior to starting the build with:

export CFLAGS="-I/opt/vero3/include -L/opt/vero3/lib -O3 -march=armv8-a+crc -mtune=cortex-a53 -mfpu=neon-fp-armv8 -mfloat-abi=hard -ftree-vectorize -funsafe-math-optimizations"
export CPPFLAGS=$CFLAGS
export CXXFLAGS=$CFLAGS

Adding Hyperion-NG to the installer would be trivial. I did offer to do this last year, but as I’m not using it and there was no interest here I stuck to what I was doing (the RetroPie port to Vero4k).
I’ll add this to my to-do list

1 Like

@hissingshark

I compiled and built from GitHub - SJunkies/hyperion.ng: PRE ALPHA - The reworked version (next generation) of Hyperion hyperion.ng with amlogic platform. Works and on old hyperion.ng version 2.0

git remote set-url origin GitHub - hyperion-project/hyperion.ng: The successor to Hyperion aka Hyperion Next Generation
then git pull origin and it updated from the non-api vesion.