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

SOLVED LibreElec Amlogic S905 + Arduino

Discussion in 'Software Support' started by galaxysalvo, 4 August 2016.

  1. galaxysalvo

    galaxysalvo New Member

    Messages:
    2
    Hardware:
    +Arduino
    Hi everybody, it was since yesterday that i'm trying to get to work hyperion on my configuration.
    The sketch on arduino is the common Adalight sketch, it works on pc with Ambibox application, so i think it should work as well on hyperion.
    Anyway I installed hyperion with HyperionConf, and upload as well the hyperion json file but nothing.
    Trying to get log, that's what i got
    Code:
    ssh out:     cat /storage/logfiles/hyperion.log
    ssh in:     /storage/hyperion/bin/hyperiond.sh: line 2: /storage/hyperion/bin/hyperiond: not found 
    That's my arduino sketch

    Code:
    #include "FastLED.h"
    //////////
    //
    // Arduino interface for the use of ws2812 operated LEDs
    // Uses Adalight protocol and is compatible with Boblight, Prismatik etc
    // "Magic Word" for synchronisation is 'Ada' followed by LED High, Low and Checksum
    //
    ///// User definitions /////
    
    // Define the number of LEDs
    #define NUM_LEDS 27
    
    // Define SPI Pin
    #define PIN 13
    
    // Baudrate, higher rate allows faster refresh rate and more LEDs (defined in /etc/boblight.conf)
    #define serialRate 115200
    
    //// End of user definitions /////
    
    // Utilises FastSPI_LED2
    #define FORCE_SOFTWARE_SPI
    #define FORCE_SOFTWARE_PINS
    #include <FastSPI_LED2.h>
    
    // Adalight sends a "Magic Word" (defined in /etc/boblight.conf) before sending the pixel data
    uint8_t prefix[] = {'A', 'd', 'a'}, hi, lo, chk, i;
    
    // initialise LED-array
    CRGB leds[NUM_LEDS];
    
    void setup()
    {
      FastLED.addLeds<WS2811, PIN, BRG>(leds, NUM_LEDS);
      // initial RGB flash
      LEDS.showColor(CRGB(255, 0, 0));
      delay(500);
      LEDS.showColor(CRGB(0, 255, 0));
      delay(500);
      LEDS.showColor(CRGB(0, 0, 255));
      delay(500);
      LEDS.showColor(CRGB(0, 0, 0));
      Serial.begin(serialRate);
      Serial.print("Ada\n"); // Send "Magic Word" string to host
    }
    
    void loop() { 
      // wait for first byte of Magic Word
      for(i = 0; i < sizeof prefix; ++i) {
        waitLoop: while (!Serial.available()) ;;
        // Check next byte in Magic Word
        if(prefix[i] == Serial.read()) continue;
        // otherwise, start over
        i = 0;
        goto waitLoop;
      }
      // Hi, Lo, Checksum
      while (!Serial.available()) ;;
      hi=Serial.read();
      while (!Serial.available()) ;;
      lo=Serial.read();
      while (!Serial.available()) ;;
      chk=Serial.read();
      // if checksum does not match go back to wait
      if (chk != (hi ^ lo ^ 0x55))
      {
        i=0;
        goto waitLoop;
      }
      memset(leds, 0, NUM_LEDS * sizeof(struct CRGB));
      // read the transmission data and set LED values
      for (uint8_t i = 0; i < NUM_LEDS; i++) {
        byte r, g, b;    
        while(!Serial.available());
        r = Serial.read();
        while(!Serial.available());
        g = Serial.read();
        while(!Serial.available());
        b = Serial.read();
        leds[i].r = r;
        leds[i].g = g;
        leds[i].b = b;
      }
      // shows new values
     FastLED.show();
    }
    
    
    And that's the Hyperion Json

    Code:
    // Automatically generated configuration file for Hyperion ambilight daemon
    // Notice: All values are explained with comments at our wiki: wiki.hyperion-project.org (config area) 
    // Generated by: HyperCon (The Hyperion deamon configuration file builder)
    // Created with HyperCon V1.03.1 (11.06.2016)
    
    {
        // DEVICE CONFIGURATION 
        "device" :
        {
            "name"       : "MyHyperionConfig",
            "type"       : "adalight",
            "output"     : "/dev/ttyACM0",
            "rate"     : 115200,
            "delayAfterConnect"     : 0,
            "colorOrder" : "rgb"
        },
    
        // COLOR CALIBRATION CONFIG
        "color" :
        {
            "channelAdjustment" :
            [
                {
                    "id"   : "default",
                    "leds" : "*",
                    "pureRed" :
                    {
                        "redChannel"        : 255,
                        "greenChannel"        : 0,
                        "blueChannel"        : 0
                    },
                    "pureGreen" :
                    {
                        "redChannel"        : 0,
                        "greenChannel"        : 255,
                        "blueChannel"        : 0
                    },
                    "pureBlue" :
                    {
                        "redChannel"        : 0,
                        "greenChannel"        : 0,
                        "blueChannel"        : 255
                    }
                }
            ],
            "temperature" :
            [
                {
                    "id"   : "default",
                    "leds" : "*",
                    "correctionValues" :
                    {
                        "red"     : 255,
                        "green"    : 255,
                        "blue"     : 255
                    }
                }
            ],
            "transform" :
            [
                {
                    "id"   : "default",
                    "leds" : "*",
                    "hsl" :
                    {
                        "saturationGain"    : 1.0000,
                        "luminanceGain"        : 1.0000,
                        "luminanceMinimum"        : 0.0000
                    },
                    "red" :
                    {
                        "threshold"     : 0.0000,
                        "gamma"         : 2.5000
                    },
                    "green" :
                    {
                        "threshold"     : 0.0000,
                        "gamma"         : 2.5000
                    },
                    "blue" :
                    {
                        "threshold"     : 0.0000,
                        "gamma"         : 2.5000
                    }
                }
            ]
        // NO SMOOTHING CONFIG
        },
    
        // NO V4L2 GRABBER CONFIG
        // FRAME GRABBER CONFIG
        "framegrabber" :
    {
    "width" : 64,
    "height" : 64,
    "frequency_Hz" : 10.0
    },
    "amlgrabber": {
    "width" : 64,
    "height" : 64,
    "frequency_Hz" : 10.0
    },
        // BLACKBORDER CONFIG
        "blackborderdetector" : 
        {
            "enable" : true,
            "threshold" : 0.0,
            "unknownFrameCnt" : 600,
            "borderFrameCnt" : 50,
            "maxInconsistentCnt" : 10,
            "blurRemoveCnt" : 1,
            "mode" : "default"
        },
    
        // BOOTEFFECT CONFIG
        "bootsequence" : 
        {
            "color" : [0,0,0],
            "effect" : "Rainbow swirl fast",
            "duration_ms" : 3000,
            "priority" : 700
        },
    
        // JSON SERVER CONFIG
        "jsonServer" : 
        {
            "port" : 19444
        },
    
        // PROTO SERVER CONFIG
        "protoServer" : 
        {
            "port" : 19445
        },
    
        // EFFECT PATH
        "effects" : 
        {
            "paths" : 
            [
                "/storage/hyperion/effects",
                "/usr/share/hyperion/effects"
            ]
        },
    
        // NO KODI CHECK CONFIG
        // NO BOBLIGHT SERVER CONFIG
        // NO JSON/PROTO FORWARD CONFIG
    
        // LED CONFIGURATION
        "leds" : 
        [
            {
                "index" : 0,
                "hscan" : { "minimum" : 0.3333, "maximum" : 0.4444 },
                "vscan" : { "minimum" : 0.9200, "maximum" : 1.0000 }
            },
            {
                "index" : 1,
                "hscan" : { "minimum" : 0.2222, "maximum" : 0.3333 },
                "vscan" : { "minimum" : 0.9200, "maximum" : 1.0000 }
            },
            {
                "index" : 2,
                "hscan" : { "minimum" : 0.1111, "maximum" : 0.2222 },
                "vscan" : { "minimum" : 0.9200, "maximum" : 1.0000 }
            },
            {
                "index" : 3,
                "hscan" : { "minimum" : 0.0000, "maximum" : 0.1111 },
                "vscan" : { "minimum" : 0.9200, "maximum" : 1.0000 }
            },
            {
                "index" : 4,
                "hscan" : { "minimum" : 0.0000, "maximum" : 0.0500 },
                "vscan" : { "minimum" : 0.9200, "maximum" : 1.0000 }
            },
            {
                "index" : 5,
                "hscan" : { "minimum" : 0.0000, "maximum" : 0.0500 },
                "vscan" : { "minimum" : 0.8000, "maximum" : 1.0000 }
            },
            {
                "index" : 6,
                "hscan" : { "minimum" : 0.0000, "maximum" : 0.0500 },
                "vscan" : { "minimum" : 0.6000, "maximum" : 0.8000 }
            },
            {
                "index" : 7,
                "hscan" : { "minimum" : 0.0000, "maximum" : 0.0500 },
                "vscan" : { "minimum" : 0.4000, "maximum" : 0.6000 }
            },
            {
                "index" : 8,
                "hscan" : { "minimum" : 0.0000, "maximum" : 0.0500 },
                "vscan" : { "minimum" : 0.2000, "maximum" : 0.4000 }
            },
            {
                "index" : 9,
                "hscan" : { "minimum" : 0.0000, "maximum" : 0.0500 },
                "vscan" : { "minimum" : 0.0000, "maximum" : 0.2000 }
            },
            {
                "index" : 10,
                "hscan" : { "minimum" : 0.0000, "maximum" : 0.1111 },
                "vscan" : { "minimum" : 0.0000, "maximum" : 0.0800 }
            },
            {
                "index" : 11,
                "hscan" : { "minimum" : 0.1111, "maximum" : 0.2222 },
                "vscan" : { "minimum" : 0.0000, "maximum" : 0.0800 }
            },
            {
                "index" : 12,
                "hscan" : { "minimum" : 0.2222, "maximum" : 0.3333 },
                "vscan" : { "minimum" : 0.0000, "maximum" : 0.0800 }
            },
            {
                "index" : 13,
                "hscan" : { "minimum" : 0.3333, "maximum" : 0.4444 },
                "vscan" : { "minimum" : 0.0000, "maximum" : 0.0800 }
            },
            {
                "index" : 14,
                "hscan" : { "minimum" : 0.4444, "maximum" : 0.5556 },
                "vscan" : { "minimum" : 0.0000, "maximum" : 0.0800 }
            },
            {
                "index" : 15,
                "hscan" : { "minimum" : 0.5556, "maximum" : 0.6667 },
                "vscan" : { "minimum" : 0.0000, "maximum" : 0.0800 }
            },
            {
                "index" : 16,
                "hscan" : { "minimum" : 0.6667, "maximum" : 0.7778 },
                "vscan" : { "minimum" : 0.0000, "maximum" : 0.0800 }
            },
            {
                "index" : 17,
                "hscan" : { "minimum" : 0.7778, "maximum" : 0.8889 },
                "vscan" : { "minimum" : 0.0000, "maximum" : 0.0800 }
            },
            {
                "index" : 18,
                "hscan" : { "minimum" : 0.8889, "maximum" : 1.0000 },
                "vscan" : { "minimum" : 0.0000, "maximum" : 0.0800 }
            },
            {
                "index" : 19,
                "hscan" : { "minimum" : 0.9500, "maximum" : 1.0000 },
                "vscan" : { "minimum" : 0.0000, "maximum" : 0.2000 }
            },
            {
                "index" : 20,
                "hscan" : { "minimum" : 0.9500, "maximum" : 1.0000 },
                "vscan" : { "minimum" : 0.2000, "maximum" : 0.4000 }
            },
            {
                "index" : 21,
                "hscan" : { "minimum" : 0.9500, "maximum" : 1.0000 },
                "vscan" : { "minimum" : 0.4000, "maximum" : 0.6000 }
            },
            {
                "index" : 22,
                "hscan" : { "minimum" : 0.9500, "maximum" : 1.0000 },
                "vscan" : { "minimum" : 0.6000, "maximum" : 0.8000 }
            },
            {
                "index" : 23,
                "hscan" : { "minimum" : 0.9500, "maximum" : 1.0000 },
                "vscan" : { "minimum" : 0.8000, "maximum" : 1.0000 }
            },
            {
                "index" : 24,
                "hscan" : { "minimum" : 0.8889, "maximum" : 1.0000 },
                "vscan" : { "minimum" : 0.9200, "maximum" : 1.0000 }
            },
            {
                "index" : 25,
                "hscan" : { "minimum" : 0.7778, "maximum" : 0.8889 },
                "vscan" : { "minimum" : 0.9200, "maximum" : 1.0000 }
            },
            {
                "index" : 26,
                "hscan" : { "minimum" : 0.6667, "maximum" : 0.7778 },
                "vscan" : { "minimum" : 0.9200, "maximum" : 1.0000 }
            },
            {
                "index" : 27,
                "hscan" : { "minimum" : 0.5556, "maximum" : 0.6667 },
                "vscan" : { "minimum" : 0.9200, "maximum" : 1.0000 }
            }
        ],
    
        "endOfJson" : "endOfJson"
    }
    
    
     
  2. galaxysalvo

    galaxysalvo New Member

    Messages:
    2
    Hardware:
    +Arduino
    That's the problem when I try to execute manually

    Code:
    LibreELEC:~ # #!/bin/sh
    LibreELEC:~ # LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/storage/hyperion/bin /storage/hy
    perion/bin/hyperiond "$@"
    -sh: /storage/hyperion/bin/hyperiond: not found
    
    And

    Code:
    LibreELEC:~ # /storage/hyperion/bin /storage/hyperion/bin/hyperiond
    -sh: /storage/hyperion/bin: Permission denied
    
     
  3. Szymon_Zy

    Szymon_Zy New Member

    Messages:
    8
    Hardware:
    RPi3, Wetek, +Arduino
    I'm going to move my configuration from rPi3 to S905. But .... i'm stuck at the same situation. The same "Not Found" errors while files are at this place.
    Code:
    /storage/hyperion/bin/hyperiond
    ends up with
    Code:
    -sh: /storage/hyperion/bin/hyperiond: not found
    but
    Code:
    LibreELEC:~/hyperion/bin # ls -la /storage/hyperion/bin/
    total 20431
    drwxr-xr-x    2 root     root          1024 Aug 14 23:52 .
    drwxr-xr-x    5 root     root          1024 Aug 14 23:21 ..
    -rwxrwxr-x    1 1000     1000       1203914 Jul 25 15:55 hyperion-aml
    -rwxrwxr-x    1 1000     1000       1204542 Jul 25 15:55 hyperion-framebuffer
    -rwxrwxr-x    1 1000     1000        299977 Jul 25 15:54 hyperion-remote
    -rwxrwxr-x    1 1000     1000            86 Aug 15 00:01 hyperion-remote.sh
    -rwxrwxr-x    1 1000     1000       1254885 Jul 25 15:55 hyperion-v4l2
    -rwxrwxr-x    1 1000     1000           106 Mar 22 14:30 hyperion-v4l2.sh
    -rwxrwxr-x    1 1000     1000       1978950 Jul 25 15:55 hyperiond
    -rwxrwxr-x    1 1000     1000            80 Aug 14 23:52 hyperiond.sh
    -rwxr-xr-x    1 root     root           102 Aug 14 23:52 hyperiond.sh.baq
    -rwxr-xr-x    1 1000     1000         76652 Jan  5  2014 libICE.so.6
    -rwxr-xr-x    1 1000     1000       2589604 Jan  5  2014 libQtCore.so.4
    -rwxr-xr-x    1 1000     1000       9022960 Jan  5  2014 libQtGui.so.4
    -rwxr-xr-x    1 1000     1000       1134760 Jan  5  2014 libQtNetwork.so.4
    -rwxr-xr-x    1 1000     1000         24832 Jan  5  2014 libSM.so.6
    -rwxr-xr-x    1 1000     1000       1096232 Jan  5  2014 libX11.so.6
    -rwxr-xr-x    1 1000     1000          7508 Jan  5  2014 libXau.so.6
    -rwxr-xr-x    1 1000     1000         15400 Jan  5  2014 libXdmcp.so.6
    -rwxr-xr-x    1 1000     1000         55800 Jan  5  2014 libXext.so.6
    -rwxr-xr-x    1 1000     1000         30732 Jan  5  2014 libXrender.so.1
    -rwxr-xr-x    1 1000     1000        318500 Jan  5  2014 libXt.so.6
    -rwxr-xr-x    1 1000     1000         84036 Jan  5  2014 libaudio.so.2
    -rwxr-xr-x    1 1000     1000         49712 Jan  5  2014 libffi.so.5
    -rwxr-xr-x    1 1000     1000        233000 Jan  5  2014 libpcre.so.3
    -rwxr-xr-x    1 1000     1000        129088 Jan  5  2014 libpng12.so.0
    -rwxr-xr-x    1 1000     1000         91972 Jan  5  2014 libxcb.so.1
    
    So it looks like files are in place but sh can't find them? I guess it is simple problem, but i'm blind.

    If i add /storage/hyperion/bin to path and invoke hyperiond with my config i see rainbow swirl at start - so config is propper and works.
     
  4. redPanther

    redPanther Moderator Developer

    Messages:
    205
    Hardware:
    RPi1/Zero, RPi2, 32/64bit, +Arduino
    Aml support in current hyperion is not the best. Please add
    "priority" : 899
    To aml grabber config section.
    This value must be lower then the value in framegrabber. If no value is written in config then 900 is set.

    Spoiler: next major release of hyperion will make that better ...
     
  5. Szymon_Zy

    Szymon_Zy New Member

    Messages:
    8
    Hardware:
    RPi3, Wetek, +Arduino
    When can we expect new release?
     
  6. redPanther

    redPanther Moderator Developer

    Messages:
    205
    Hardware:
    RPi1/Zero, RPi2, 32/64bit, +Arduino
    when we are ready ... sorry no other info so far
     
  7. somers

    somers New Member

    Messages:
    3
    This won't fix the "/storage/hyperion/bin/hyperiond.sh: line 2: /storage/hyperion/bin/hyperiond: not found" error right? I am having the same problem but i can't find anything to fix it

    https://hyperion-project.org/threads/s905-librelec-hyperion-not-working.341/
     
  8. redPanther

    redPanther Moderator Developer

    Messages:
    205
    Hardware:
    RPi1/Zero, RPi2, 32/64bit, +Arduino
    This should be fixed so easy. There are only a few posibilities. Check if:

    File exist in the same location how it is written in script.

    hyperiond has executable flag.

    When hyperiond exists, but not executable you get file not found message
     
  9. somers

    somers New Member

    Messages:
    3
    The file is in the right location and has the execution rights enabled:

    [​IMG]
     
  10. Szymon_Zy

    Szymon_Zy New Member

    Messages:
    8
    Hardware:
    RPi3, Wetek, +Arduino
    Of course that was first thing i've checked. And of course it was correct.
     
  11. ralf000

    ralf000 New Member

    Messages:
    3
    Hardware:
    32/64bit, +Arduino
    Same problem (hyperiond not found, openelec x64, aarch 64). All rights enabled.
    Also used x64 version here (Hyperion_OpenELEC_x64.tgz)
    https://github.com/hyperion-project/hyperion/issues/263
    But hyperiond gives error message
    line 1:syntax error: unexpected "(".
    I think need another version for x64
    Sorry for bad English :)
     
  12. Szymon_Zy

    Szymon_Zy New Member

    Messages:
    8
    Hardware:
    RPi3, Wetek, +Arduino
    Why this thread is marked as solved while no one gave any solution?
     
  13. TPmodding

    TPmodding Administrator Staff Member Administrator

    Messages:
    704
    Hardware:
    RPi1/Zero, RPi2, RPi3, +Arduino
    may the owner found a solution and marked it as solved?
     
  14. Szymon_Zy

    Szymon_Zy New Member

    Messages:
    8
    Hardware:
    RPi3, Wetek, +Arduino
    Does anyone fixed this error already?
     
  15. ralf000

    ralf000 New Member

    Messages:
    3
    Hardware:
    32/64bit, +Arduino
    It helped me (s905, amlogic, libreElec, Kodi 16.1):
    1) Installed Hyperion addon in kodi
    2) Moved service.hyperion from
    /storage/.kodi/addons/
    in
    /storage
    and renamed hyperion
    3) Created hyperiond.sh in /storage/hyperion/bin
    with content
    #!/bin/sh
    LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/storage/.kodi/addons/service.hyperion/bin /storage/.kodi/addons/service.hyperion/bin/hyperiond "$@"
    4) Created autostart.sh in /storage/.config
    with content
    /storage/hyperion/bin/hyperiond.sh /storage/.config/hyperion.config.json > /storage/logfiles/hyperion.log 2>&1 &
    5) Put hyperion.config.json in /storage/.config
    6) Restart
     
    Last edited: 6 November 2016
  16. Szymon_Zy

    Szymon_Zy New Member

    Messages:
    8
    Hardware:
    RPi3, Wetek, +Arduino
    Thanks a lot. It is working but i had to chmod both .sh files with execute bit. Also i had to copy service.hyperion instead of moving directory.
     
  17. Szymon_Zy

    Szymon_Zy New Member

    Messages:
    8
    Hardware:
    RPi3, Wetek, +Arduino
    Ralf000 does your hyperion config work with live tv fullscreen? In my case it lights up while i chose channel and while i switch full screen it turns off like in xbmc menu.
     
  18. ralf000

    ralf000 New Member

    Messages:
    3
    Hardware:
    32/64bit, +Arduino
    My config works fine.
    Try to change framegrabber section on amlgrabber in config
    Code:
    "amlgrabber" :
       {
          "priority" : 800,
          "width" : 70,
          "height" : 40,
          "frequency_Hz" : 20.0
       },
     
  19. Szymon_Zy

    Szymon_Zy New Member

    Messages:
    8
    Hardware:
    RPi3, Wetek, +Arduino
    My config ahave got problems with youtube and live tv. Maybe because of direct moving from rpi to a95x. Here is my config:
    Code:
    LibreELEC:~/.config # cat ./hyperion.config.json
    // Automatically generated configuration file for 'Hyperion daemon'
    // Generated by: HyperCon (The Hyperion deamon configuration file builder
    
    {
            /// Device configuration contains the following fields:
            /// * 'name'       : The user friendly name of the device (only used for display purposes)
            /// * 'type'       : The type of the device or leds (known types for now are
            /// APA102, Adalight, AmbiLed, Atmo, Hyperion-USBASP-WS2801, Hyperion-USBASP-WS2812, Lightberry, Lightpack, LPD6803, LPD8806, Multi-Lightpack, P9813, Paintpack, PhilipsHUE, PiBlaster, SEDU, Test, ThinkerForge, TPM2, WS2801, WS2812b, None)
            /// * [device type specific configuration]
            /// * 'colorOrder' : The order of the color bytes ('rgb', 'rbg', 'bgr', etc.).
            "device" :
            {
                    "name"       : "MyPi",
                    "type"       : "adalight",
                    "output"     : "/dev/ttyUSB0",
                    "rate"       : 115200,
                    "delayAfterConnect"     : 0,
                    "colorOrder" : "rgb"
            },
    
            /// Color manipulation configuration used to tune the output colors to specific surroundings.
            /// The configuration contains a list of color-transforms. Each transform contains the
            /// following fields:
            ///  * 'id'   : The unique identifier of the color transformation (eg 'device_1')       ///  * 'leds' : The indices (or index ranges) of the leds to which this color transform applies
            ///             (eg '0-5, 9, 11, 12-17'). The indices are zero based.   ///  * 'hsv' : The manipulation in the Hue-Saturation-Value color domain with the following
            ///            tuning parameters:
            ///            - 'saturationGain'  The gain adjustement of the saturation
            ///            - 'valueGain'       The gain adjustement of the value
            ///  * 'red'/'green'/'blue' : The manipulation in the Red-Green-Blue color domain with the
            ///                           following tuning parameters for each channel:
            ///            - 'threshold'       The minimum required input value for the channel to be on
            ///                                (else zero)
            ///            - 'gamma'           The gamma-curve correction factor
            ///            - 'blacklevel'      The lowest possible value (when the channel is black)
            ///            - 'whitelevel'      The highest possible value (when the channel is white)
            ///
            /// Next to the list with color transforms there is also a smoothing option.
            ///  * 'smoothing' : Smoothing of the colors in the time-domain with the following tuning
            ///                  parameters:
            ///            - 'type'            The type of smoothing algorithm ('linear' or 'none')
            ///            - 'time_ms'         The time constant for smoothing algorithm in milliseconds
            ///            - 'updateFrequency' The update frequency of the leds in Hz
            ///            - 'updateDelay'     The delay of the output to leds (in periods of smoothing)
            "color" :
            {
                    "transform" :
                    [
                            {
                                    "id"   : "default",
                                    "leds" : "*",
                                    "hsv" :
                                    {
                                            "saturationGain" : 1.0000,
                                            "valueGain"      : 1.0000
                                    },
                                    "red" :
                                    {
                                            "threshold"  : 0.0000,
                                            "gamma"      : 1.0000,
                                            "blacklevel" : 0.0000,
                                            "whitelevel" : 1.0000
                                    },
                                    "green" :
                                    {
                                            "threshold"  : 0.0000,
                                            "gamma"      : 1.0000,
                                            "blacklevel" : 0.0000,
                                            "whitelevel" : 1.0000
                                    },
                                    "blue" :
                                    {
                                            "threshold"  : 0.0000,
                                            "gamma"      : 1.0000,
                                            "blacklevel" : 0.0000,
                                            "whitelevel" : 1.0000
                                    }
                            }
                    ],
                    "smoothing" :
                    {
                            "type"            : "linear",
                            "time_ms"         : 200,
                            "updateFrequency" : 20.0000,
                            "updateDelay"     : 0
                    }
            },
    
            /// The black border configuration, contains the following items:
            ///  * enable    : true if the detector should be activated
            ///  * threshold : Value below which a pixel is regarded as black (value between 0.0 and 1.0)
            "blackborderdetector" :
            {
                    "enable" : true,
                    "threshold" : 0.01
            },
    
            /// The configuration of the effect engine, contains the following items:
            ///  * paths        : An array with absolute location(s) of directories with effects
            ///  * bootsequence : The effect selected as 'boot sequence'
            "effects" :
            {
                    "paths" :
                    [
                            "/storage/hyperion/effects"
                    ]
            },
    
            "bootsequence" :
            {
                    "effect" : "Rainbow swirl fast",
                    "duration_ms" : 10000
            },
    
            ///  The configuration for the frame-grabber, contains the following items:
            ///   * width        : The width of the grabbed frames [pixels]
            ///   * height       : The height of the grabbed frames [pixels]
            ///   * frequency_Hz : The frequency of the frame grab [Hz]
            "framegrabber" :
            {
                    "width" : 64,
                    "height" : 64,
                    "frequency_Hz" : 10.0
            },
            "amlgrabber" :
            {
                    "priority" : 800,
                    "width" : 70,
                    "height" : 40,
                    "frequency_Hz" : 20.0
            },
            /// The configuration of the XBMC connection used to enable and disable the frame-grabber. Contains the following fields:
            ///  * xbmcAddress       : The IP address of the XBMC-host
            ///  * xbmcTcpPort       : The TCP-port of the XBMC-server
            ///  * grabVideo         : Flag indicating that the frame-grabber is on(true) during video playback
            ///  * grabPictures      : Flag indicating that the frame-grabber is on(true) during picture show
            ///  * grabAudio         : Flag indicating that the frame-grabber is on(true) during audio playback
            ///  * grabMenu          : Flag indicating that the frame-grabber is on(true) in the XBMC menu
            ///  * grabScreensaver   : Flag indicating that the frame-grabber is on(true) when XBMC is on screensaver
            ///  * enable3DDetection : Flag indicating that the frame-grabber should switch to a 3D compatible modus if a 3D video is playing
            "xbmcVideoChecker" :
            {
                    "xbmcAddress" : "127.0.0.1",
                    "xbmcTcpPort" : 9090,
                    "grabVideo" : true,
                    "grabPictures" : false,
                    "grabAudio" : false,
                    "grabMenu" : false,
                    "grabScreensaver" : false,
                    "enable3DDetection" : false
            },
    
            /// The configuration of the Json server which enables the json remote interface
            ///  * port : Port at which the json server is started
            "jsonServer" :
            {
                    "port" : 19444
            },
    
            /// The configuration of the Proto server which enables the protobuffer remote interface
            ///  * port : Port at which the protobuffer server is started
            "protoServer" :
            {
                    "port" : 19445
            },
    
            /// The configuration of the boblight server which enables the boblight remote interface
            ///  * port : Port at which the boblight server is started
    //      "boblightServer" :
    //      {
    //              "port" : 19333
    //      },
    
            /// Configuration for the embedded V4L2 grabber
            ///  * device          : V4L2 Device to use [default="/dev/video0"]
            ///  * input           : V4L2 input to use [default=0]
            ///  * standard        : Video standard (no-change/PAL/NTSC) [default="no-change"]
            ///  * width                : V4L2 width to set [default=-1]
            ///  * height               : V4L2 height to set [default=-1]
            ///  * frameDecimation      : Frame decimation factor [default=2]
            ///  * sizeDecimation       : Size decimation factor [default=8]
            ///  * priority             : Hyperion priority channel [default=800]
            ///  * mode                 : 3D mode to use 2D/3DSBS/3DTAB (note: no autodetection) [default="2D"]
            ///  * cropLeft             : Cropping from the left [default=0]
            ///  * cropRight            : Cropping from the right [default=0]
            ///  * cropTop              : Cropping from the top [default=0]
            ///  * cropBottom           : Cropping from the bottom [default=0]
            ///  * redSignalThreshold   : Signal threshold for the red channel between 0.0 and 1.0 [default=0.0]
            ///  * greenSignalThreshold : Signal threshold for the green channel between 0.0 and 1.0 [default=0.0]
            ///  * blueSignalThreshold  : Signal threshold for the blue channel between 0.0 and 1.0 [default=0.0]
    //      "grabber-v4l2" :
    //      {
    //              "device" : "/dev/video0",
    //              "input" : 0,
    //              "standard" : "no-change",
    //              "width" : -1,
    //              "height" : -1,
    //              "frameDecimation" : 2,
    //              "sizeDecimation" : 8,
    //              "priority" : 800,
    //              "mode" : "2D",
    //              "cropLeft" : 0,
    //              "cropRight" : 0,
    //              "cropTop" : 0,
    //              "cropBottom" : 0,
    //              "redSignalThreshold" : 0.0,
    //              "greenSignalThreshold" : 0.0,
    //              "blueSignalThreshold" : 0.0
    //      },
    
            ///  The configuration for each individual led. This contains the specification of the area
            ///  averaged of an input image for each led to determine its color. Each item in the list
            ///  contains the following fields:
            ///  * index: The index of the led. This determines its location in the string of leds; zero
            ///           being the first led.
            ///  * hscan: The fractional part of the image along the horizontal used for the averaging
            ///           (minimum and maximum inclusive)
            ///  * vscan: The fractional part of the image along the vertical used for the averaging
            ///           (minimum and maximum inclusive)
            "leds" :
            [
                    {
                            "index" : 0,
                            "hscan" : { "minimum" : 0.2844, "maximum" : 0.3236 },
                            "vscan" : { "minimum" : 0.9100, "maximum" : 0.9900 }
                    },
                    {
                            "index" : 1,
                            "hscan" : { "minimum" : 0.2452, "maximum" : 0.2844 },
                            "vscan" : { "minimum" : 0.9100, "maximum" : 0.9900 }
                    },
                    {
                            "index" : 2,
                            "hscan" : { "minimum" : 0.2060, "maximum" : 0.2452 },
                            "vscan" : { "minimum" : 0.9100, "maximum" : 0.9900 }
                    },
                    {
                            "index" : 3,
                            "hscan" : { "minimum" : 0.1668, "maximum" : 0.2060 },
                            "vscan" : { "minimum" : 0.9100, "maximum" : 0.9900 }
                    },
                    {
                            "index" : 4,
                            "hscan" : { "minimum" : 0.1276, "maximum" : 0.1668 },
                            "vscan" : { "minimum" : 0.9100, "maximum" : 0.9900 }
                    },
                    {
                            "index" : 5,
                            "hscan" : { "minimum" : 0.0884, "maximum" : 0.1276 },
                            "vscan" : { "minimum" : 0.9100, "maximum" : 0.9900 }
                    },
                    {
                            "index" : 6,
                            "hscan" : { "minimum" : 0.0492, "maximum" : 0.0884 },
                            "vscan" : { "minimum" : 0.9100, "maximum" : 0.9900 }
                    },
                    {
                            "index" : 7,
                            "hscan" : { "minimum" : 0.0100, "maximum" : 0.0492 },
                            "vscan" : { "minimum" : 0.9100, "maximum" : 0.9900 }
                    },
                    {
                            "index" : 8,
                            "hscan" : { "minimum" : 0.0100, "maximum" : 0.0600 },
                            "vscan" : { "minimum" : 0.9100, "maximum" : 0.9900 }
                    },
                    {
                            "index" : 9,
                            "hscan" : { "minimum" : 0.0100, "maximum" : 0.0600 },
                            "vscan" : { "minimum" : 0.9247, "maximum" : 0.9900 }
                    },
                    {
                            "index" : 10,
                            "hscan" : { "minimum" : 0.0100, "maximum" : 0.0600 },
                            "vscan" : { "minimum" : 0.8593, "maximum" : 0.9247 }
                    },
                    {
                            "index" : 11,
                            "hscan" : { "minimum" : 0.0100, "maximum" : 0.0600 },
                            "vscan" : { "minimum" : 0.7940, "maximum" : 0.8593 }
                    },
                    {
                            "index" : 12,
                            "hscan" : { "minimum" : 0.0100, "maximum" : 0.0600 },
                            "vscan" : { "minimum" : 0.7287, "maximum" : 0.7940 }
                    },
                    {
                            "index" : 13,
                            "hscan" : { "minimum" : 0.0100, "maximum" : 0.0600 },
                            "vscan" : { "minimum" : 0.6633, "maximum" : 0.7287 }
                    },
                    {
                            "index" : 14,
                            "hscan" : { "minimum" : 0.0100, "maximum" : 0.0600 },
                            "vscan" : { "minimum" : 0.5980, "maximum" : 0.6633 }
                    },
                    {
                            "index" : 15,
                            "hscan" : { "minimum" : 0.0100, "maximum" : 0.0600 },
                            "vscan" : { "minimum" : 0.5327, "maximum" : 0.5980 }
                    },
                    {
                            "index" : 16,
                            "hscan" : { "minimum" : 0.0100, "maximum" : 0.0600 },
                            "vscan" : { "minimum" : 0.4673, "maximum" : 0.5327 }
                    },
                    {
                            "index" : 17,
                            "hscan" : { "minimum" : 0.0100, "maximum" : 0.0600 },
                            "vscan" : { "minimum" : 0.4020, "maximum" : 0.4673 }
                    },
                    {
                            "index" : 18,
                            "hscan" : { "minimum" : 0.0100, "maximum" : 0.0600 },
                            "vscan" : { "minimum" : 0.3367, "maximum" : 0.4020 }
                    },
                    {
                            "index" : 19,
                            "hscan" : { "minimum" : 0.0100, "maximum" : 0.0600 },
                            "vscan" : { "minimum" : 0.2713, "maximum" : 0.3367 }
                    },
                    {
                            "index" : 20,
                            "hscan" : { "minimum" : 0.0100, "maximum" : 0.0600 },
                            "vscan" : { "minimum" : 0.2060, "maximum" : 0.2713 }
                    },
                    {
                            "index" : 21,
                            "hscan" : { "minimum" : 0.0100, "maximum" : 0.0600 },
                            "vscan" : { "minimum" : 0.1407, "maximum" : 0.2060 }
                    },
                    {
                            "index" : 22,
                            "hscan" : { "minimum" : 0.0100, "maximum" : 0.0600 },
                            "vscan" : { "minimum" : 0.0753, "maximum" : 0.1407 }
                    },
                    {
                            "index" : 23,
                            "hscan" : { "minimum" : 0.0100, "maximum" : 0.0600 },
                            "vscan" : { "minimum" : 0.0100, "maximum" : 0.0753 }
                    },
                    {
                            "index" : 24,
                            "hscan" : { "minimum" : 0.0100, "maximum" : 0.0600 },
                            "vscan" : { "minimum" : 0.0100, "maximum" : 0.0900 }
                    },
                    {
                            "index" : 25,
                            "hscan" : { "minimum" : 0.0100, "maximum" : 0.0492 },
                            "vscan" : { "minimum" : 0.0100, "maximum" : 0.0900 }
                    },
                    {
                            "index" : 26,
                            "hscan" : { "minimum" : 0.0492, "maximum" : 0.0884 },
                            "vscan" : { "minimum" : 0.0100, "maximum" : 0.0900 }
                    },
                    {
                            "index" : 27,
                            "hscan" : { "minimum" : 0.0884, "maximum" : 0.1276 },
                            "vscan" : { "minimum" : 0.0100, "maximum" : 0.0900 }
                    },
                    {
                            "index" : 28,
                            "hscan" : { "minimum" : 0.1276, "maximum" : 0.1668 },
                            "vscan" : { "minimum" : 0.0100, "maximum" : 0.0900 }
                    },
                    {
                            "index" : 29,
                            "hscan" : { "minimum" : 0.1668, "maximum" : 0.2060 },
                            "vscan" : { "minimum" : 0.0100, "maximum" : 0.0900 }
                    },
                    {
                            "index" : 30,
                            "hscan" : { "minimum" : 0.2060, "maximum" : 0.2452 },
                            "vscan" : { "minimum" : 0.0100, "maximum" : 0.0900 }
                    },
                    {
                            "index" : 31,
                            "hscan" : { "minimum" : 0.2452, "maximum" : 0.2844 },
                            "vscan" : { "minimum" : 0.0100, "maximum" : 0.0900 }
                    },
                    {
                            "index" : 32,
                            "hscan" : { "minimum" : 0.2844, "maximum" : 0.3236 },
                            "vscan" : { "minimum" : 0.0100, "maximum" : 0.0900 }
                    },
                    {
                            "index" : 33,
                            "hscan" : { "minimum" : 0.3236, "maximum" : 0.3628 },
                            "vscan" : { "minimum" : 0.0100, "maximum" : 0.0900 }
                    },
                    {
                            "index" : 34,
                            "hscan" : { "minimum" : 0.3628, "maximum" : 0.4020 },
                            "vscan" : { "minimum" : 0.0100, "maximum" : 0.0900 }
                    },
                    {
                            "index" : 35,
                            "hscan" : { "minimum" : 0.4020, "maximum" : 0.4412 },
                            "vscan" : { "minimum" : 0.0100, "maximum" : 0.0900 }
                    },
                    {
                            "index" : 36,
                            "hscan" : { "minimum" : 0.4412, "maximum" : 0.4804 },
                            "vscan" : { "minimum" : 0.0100, "maximum" : 0.0900 }
                    },
                    {
                            "index" : 37,
                            "hscan" : { "minimum" : 0.4804, "maximum" : 0.5196 },
                            "vscan" : { "minimum" : 0.0100, "maximum" : 0.0900 }
                    },
                    {
                            "index" : 38,
                            "hscan" : { "minimum" : 0.5196, "maximum" : 0.5588 },
                            "vscan" : { "minimum" : 0.0100, "maximum" : 0.0900 }
                    },
                    {
                            "index" : 39,
                            "hscan" : { "minimum" : 0.5588, "maximum" : 0.5980 },
                            "vscan" : { "minimum" : 0.0100, "maximum" : 0.0900 }
                    },
                    {
                            "index" : 40,
                            "hscan" : { "minimum" : 0.5980, "maximum" : 0.6372 },
                            "vscan" : { "minimum" : 0.0100, "maximum" : 0.0900 }
                    },
                    {
                            "index" : 41,
                            "hscan" : { "minimum" : 0.6372, "maximum" : 0.6764 },
                            "vscan" : { "minimum" : 0.0100, "maximum" : 0.0900 }
                    },
                    {
                            "index" : 42,
                            "hscan" : { "minimum" : 0.6764, "maximum" : 0.7156 },
                            "vscan" : { "minimum" : 0.0100, "maximum" : 0.0900 }
                    },
                    {
                            "index" : 43,
                            "hscan" : { "minimum" : 0.7156, "maximum" : 0.7548 },
                            "vscan" : { "minimum" : 0.0100, "maximum" : 0.0900 }
                    },
                    {
                            "index" : 44,
                            "hscan" : { "minimum" : 0.7548, "maximum" : 0.7940 },
                            "vscan" : { "minimum" : 0.0100, "maximum" : 0.0900 }
                    },
                    {
                            "index" : 45,
                            "hscan" : { "minimum" : 0.7940, "maximum" : 0.8332 },
                            "vscan" : { "minimum" : 0.0100, "maximum" : 0.0900 }
                    },
                    {
                            "index" : 46,
                            "hscan" : { "minimum" : 0.8332, "maximum" : 0.8724 },
                            "vscan" : { "minimum" : 0.0100, "maximum" : 0.0900 }
                    },
                    {
                            "index" : 47,
                            "hscan" : { "minimum" : 0.8724, "maximum" : 0.9116 },
                            "vscan" : { "minimum" : 0.0100, "maximum" : 0.0900 }
                    },
                    {
                            "index" : 48,
                            "hscan" : { "minimum" : 0.9116, "maximum" : 0.9508 },
                            "vscan" : { "minimum" : 0.0100, "maximum" : 0.0900 }
                    },
                    {
                            "index" : 49,
                            "hscan" : { "minimum" : 0.9508, "maximum" : 0.9900 },
                            "vscan" : { "minimum" : 0.0100, "maximum" : 0.0900 }
                    },
                    {
                            "index" : 50,
                            "hscan" : { "minimum" : 0.9400, "maximum" : 0.9900 },
                            "vscan" : { "minimum" : 0.0100, "maximum" : 0.0900 }
                    },
                    {
                            "index" : 51,
                            "hscan" : { "minimum" : 0.9400, "maximum" : 0.9900 },
                            "vscan" : { "minimum" : 0.0100, "maximum" : 0.0753 }
                    },
                    {
                            "index" : 52,
                            "hscan" : { "minimum" : 0.9400, "maximum" : 0.9900 },
                            "vscan" : { "minimum" : 0.0753, "maximum" : 0.1407 }
                    },
                    {
                            "index" : 53,
                            "hscan" : { "minimum" : 0.9400, "maximum" : 0.9900 },
                            "vscan" : { "minimum" : 0.1407, "maximum" : 0.2060 }
                    },
                    {
                            "index" : 54,
                            "hscan" : { "minimum" : 0.9400, "maximum" : 0.9900 },
                            "vscan" : { "minimum" : 0.2060, "maximum" : 0.2713 }
                    },
                    {
                            "index" : 55,
                            "hscan" : { "minimum" : 0.9400, "maximum" : 0.9900 },
                            "vscan" : { "minimum" : 0.2713, "maximum" : 0.3367 }
                    },
                    {
                            "index" : 56,
                            "hscan" : { "minimum" : 0.9400, "maximum" : 0.9900 },
                            "vscan" : { "minimum" : 0.3367, "maximum" : 0.4020 }
                    },
                    {
                            "index" : 57,
                            "hscan" : { "minimum" : 0.9400, "maximum" : 0.9900 },
                            "vscan" : { "minimum" : 0.4020, "maximum" : 0.4673 }
                    },
                    {
                            "index" : 58,
                            "hscan" : { "minimum" : 0.9400, "maximum" : 0.9900 },
                            "vscan" : { "minimum" : 0.4673, "maximum" : 0.5327 }
                    },
                    {
                            "index" : 59,
                            "hscan" : { "minimum" : 0.9400, "maximum" : 0.9900 },
                            "vscan" : { "minimum" : 0.5327, "maximum" : 0.5980 }
                    },
                    {
                            "index" : 60,
                            "hscan" : { "minimum" : 0.9400, "maximum" : 0.9900 },
                            "vscan" : { "minimum" : 0.5980, "maximum" : 0.6633 }
                    },
                    {
                            "index" : 61,
                            "hscan" : { "minimum" : 0.9400, "maximum" : 0.9900 },
                            "vscan" : { "minimum" : 0.6633, "maximum" : 0.7287 }
                    },
                    {
                            "index" : 62,
                            "hscan" : { "minimum" : 0.9400, "maximum" : 0.9900 },
                            "vscan" : { "minimum" : 0.7287, "maximum" : 0.7940 }
                    },
                    {
                            "index" : 63,
                            "hscan" : { "minimum" : 0.9400, "maximum" : 0.9900 },
                            "vscan" : { "minimum" : 0.7940, "maximum" : 0.8593 }
                    },
                    {
                            "index" : 64,
                            "hscan" : { "minimum" : 0.9400, "maximum" : 0.9900 },
                            "vscan" : { "minimum" : 0.8593, "maximum" : 0.9247 }
                    },
                    {
                            "index" : 65,
                            "hscan" : { "minimum" : 0.9400, "maximum" : 0.9900 },
                            "vscan" : { "minimum" : 0.9247, "maximum" : 0.9900 }
                    },
                    {
                            "index" : 66,
                            "hscan" : { "minimum" : 0.9400, "maximum" : 0.9900 },
                            "vscan" : { "minimum" : 0.9100, "maximum" : 0.9900 }
                    },
                    {
                            "index" : 67,
                            "hscan" : { "minimum" : 0.9508, "maximum" : 0.9900 },
                            "vscan" : { "minimum" : 0.9100, "maximum" : 0.9900 }
                    },
                    {
                            "index" : 68,
                            "hscan" : { "minimum" : 0.9116, "maximum" : 0.9508 },
                            "vscan" : { "minimum" : 0.9100, "maximum" : 0.9900 }
                    },
                    {
                            "index" : 69,
                            "hscan" : { "minimum" : 0.8724, "maximum" : 0.9116 },
                            "vscan" : { "minimum" : 0.9100, "maximum" : 0.9900 }
                    },
                    {
                            "index" : 70,
                            "hscan" : { "minimum" : 0.8332, "maximum" : 0.8724 },
                            "vscan" : { "minimum" : 0.9100, "maximum" : 0.9900 }
                    },
                    {
                            "index" : 71,
                            "hscan" : { "minimum" : 0.7940, "maximum" : 0.8332 },
                            "vscan" : { "minimum" : 0.9100, "maximum" : 0.9900 }
                    },
                    {
                            "index" : 72,
                            "hscan" : { "minimum" : 0.7548, "maximum" : 0.7940 },
                            "vscan" : { "minimum" : 0.9100, "maximum" : 0.9900 }
                    },
                    {
                            "index" : 73,
                            "hscan" : { "minimum" : 0.7156, "maximum" : 0.7548 },
                            "vscan" : { "minimum" : 0.9100, "maximum" : 0.9900 }
                    },
                    {
                            "index" : 74,
                            "hscan" : { "minimum" : 0.6764, "maximum" : 0.7156 },
                            "vscan" : { "minimum" : 0.9100, "maximum" : 0.9900 }
                    }
            ],
    
            "endOfJson" : "endOfJson"
    }
    LibreELEC:~/.config #
    
    Do you think i should tweak something?
     
  20. Gates

    Gates New Member

    Messages:
    14
    Hardware:
    Wetek