• 1
  • 4
  • 5
  • 6(current)
  • 7
  • 8
  • 9
[Tutorial] Hyperion Ambilight on Linux and OpenELEC x64
#76
I can use some help. I am new to Hyperion. I make a 250 LEDs with ws2812b. I am using an Ardiuno Uno R3 with sketch someone sent me. Not sure which I should be using but think not my issue yet. I am having issues getting it working. Sorry but I am a noob.

Running current version of OpenELEC on Intel NUC. I am getting this error when starting it up:

Code:
OpenELEC:~/hyperion/config # /storage/hyperion/bin/hyperiond.sh /storage/hyperion/config/hyperion.config.json
Application build time: May 16 2015 07:36:26
QCoreApplication initialised
Selected configuration file: /storage/hyperion/config/hyperion.config.json
ColorTransform 'default' => [0; 117]
Device configuration:
{
        "colorOrder" : "rgb",
        "name" : "MyPi",
        "output" : "/dev/ttyUSB0",
        "rate" : 115200,
        "type" : "adalight"
}

Opening UART: /dev/ttyUSB0
Black border threshold set to 0.01 (3)
Creating linear smoothing
Created linear-smoothing(interval_ms=40;settlingTime_ms=100;updateDelay=0
Effect loaded: Knight rider
Effect loaded: Blue mood blobs
Effect loaded: Cold mood blobs
Effect loaded: Full color mood blobs
Effect loaded: Green mood blobs
Effect loaded: Red mood blobs
Effect loaded: Warm mood blobs
Effect loaded: Rainbow mood
Effect loaded: Rainbow swirl fast
Effect loaded: Rainbow swirl
Effect loaded: Snake
Effect loaded: Strobe blue
Effect loaded: Strobe Raspbmc
Effect loaded: Strobe white
Initializing Python interpreter
Hyperion created and initialised
run effect Rainbow swirl fast on channel 0
Boot sequence(Rainbow swirl fast) created and started
XBMC video checker created and started
The dispmanx framegrabber can not be instantiated, becuse it has been left out from the build
The framebuffer grabber can not be instantiated, becuse it has been left out from the build
The osx grabber can not be instantiated, becuse it has been left out from the build
Json server created and started on port 19444
Proto server created and started on port 19445
XBMC Connected
Message from XBMC: {"id":666,"jsonrpc":"2.0","result":[{"playerid":1,"type":"video"}]}
XBMC checker: switching to VIDEO mode
Message from XBMC: {"id":668,"jsonrpc":"2.0","result":{"System.ScreenSaverActive":false}}
Message from XBMC: {"id":667,"jsonrpc":"2.0","result":{"item":{"file":"smb://FREENAS/Media/videos/movies/A History of Violence (2005)/A History of Violence (2005).mkv","id":784,"label":"A History of Violence","type":"movie"}}}
Message from XBMC: {"id":670,"jsonrpc":"2.0","result":{"version":{"major":14,"minor":2,"revision":"7cc53a9","tag":"stable"}}}
effect finished

Here is my hyperion.config.json:

Code:
// 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 'ws2801', 'ldp8806',
    ///                  'lpd6803', 'sedu', 'adalight', 'lightpack', 'test' and 'none')
    /// * 'output'     : The output specification depends on selected device. This can for example be the
    ///                  device specifier, device serial number, or the output file name
    /// * 'rate'       : The baudrate of the output to the device
    /// * 'colorOrder' : The order of the color bytes ('rgb', 'rbg', 'bgr', etc.).
    "device" :
    {
        "name"       : "MyPi",
        "type"       : "adalight",
    ///    "output"     : "/dev/ttyUSB_FTDI",
    ///    "output"     : "/dev/ttyACM0",
           "output"     : "/dev/ttyUSB0",
        "rate"       : 115200,
        "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
    "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"         : 100,
            "updateFrequency" : 25.0000
        }
    },

    ///  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.4865, "maximum" : 0.5135 },
            "vscan" : { "minimum" : 0.8500, "maximum" : 1.0000 }
        },
        {
            "index" : 1,
            "hscan" : { "minimum" : 0.4595, "maximum" : 0.4865 },
            "vscan" : { "minimum" : 0.8500, "maximum" : 1.0000 }
        },
        {
            "index" : 2,
            "hscan" : { "minimum" : 0.4324, "maximum" : 0.4595 },
            "vscan" : { "minimum" : 0.8500, "maximum" : 1.0000 }
        },
        {
            "index" : 3,
            "hscan" : { "minimum" : 0.4054, "maximum" : 0.4324 },
            "vscan" : { "minimum" : 0.8500, "maximum" : 1.0000 }
        },
        {
            "index" : 4,
            "hscan" : { "minimum" : 0.3784, "maximum" : 0.4054 },
            "vscan" : { "minimum" : 0.8500, "maximum" : 1.0000 }
        },
        {
            "index" : 5,
            "hscan" : { "minimum" : 0.3514, "maximum" : 0.3784 },
            "vscan" : { "minimum" : 0.8500, "maximum" : 1.0000 }
        },
        {
            "index" : 6,
            "hscan" : { "minimum" : 0.3243, "maximum" : 0.3514 },
            "vscan" : { "minimum" : 0.8500, "maximum" : 1.0000 }
        },
        {
            "index" : 7,
            "hscan" : { "minimum" : 0.2973, "maximum" : 0.3243 },
            "vscan" : { "minimum" : 0.8500, "maximum" : 1.0000 }
        },
        {
            "index" : 8,
            "hscan" : { "minimum" : 0.2703, "maximum" : 0.2973 },
            "vscan" : { "minimum" : 0.8500, "maximum" : 1.0000 }
        },
        {
            "index" : 9,
            "hscan" : { "minimum" : 0.2432, "maximum" : 0.2703 },
            "vscan" : { "minimum" : 0.8500, "maximum" : 1.0000 }
        },
        {
            "index" : 10,
            "hscan" : { "minimum" : 0.2162, "maximum" : 0.2432 },
            "vscan" : { "minimum" : 0.8500, "maximum" : 1.0000 }
        },
        {
            "index" : 11,
            "hscan" : { "minimum" : 0.1892, "maximum" : 0.2162 },
            "vscan" : { "minimum" : 0.8500, "maximum" : 1.0000 }
        },
        {
            "index" : 12,
            "hscan" : { "minimum" : 0.1622, "maximum" : 0.1892 },
            "vscan" : { "minimum" : 0.8500, "maximum" : 1.0000 }
        },
        {
            "index" : 13,
            "hscan" : { "minimum" : 0.1351, "maximum" : 0.1622 },
            "vscan" : { "minimum" : 0.8500, "maximum" : 1.0000 }
        },
        {
            "index" : 14,
            "hscan" : { "minimum" : 0.1081, "maximum" : 0.1351 },
            "vscan" : { "minimum" : 0.8500, "maximum" : 1.0000 }
        },
        {
            "index" : 15,
            "hscan" : { "minimum" : 0.0811, "maximum" : 0.1081 },
            "vscan" : { "minimum" : 0.8500, "maximum" : 1.0000 }
        },
        {
            "index" : 16,
            "hscan" : { "minimum" : 0.0541, "maximum" : 0.0811 },
            "vscan" : { "minimum" : 0.8500, "maximum" : 1.0000 }
        },
        {
            "index" : 17,
            "hscan" : { "minimum" : 0.0270, "maximum" : 0.0541 },
            "vscan" : { "minimum" : 0.8500, "maximum" : 1.0000 }
        },
        {
            "index" : 18,
            "hscan" : { "minimum" : 0.0000, "maximum" : 0.0270 },
            "vscan" : { "minimum" : 0.8500, "maximum" : 1.0000 }
        },
        {
            "index" : 19,
            "hscan" : { "minimum" : 0.0000, "maximum" : 0.0800 },
            "vscan" : { "minimum" : 0.8500, "maximum" : 1.0000 }
        },
        {
            "index" : 20,
            "hscan" : { "minimum" : 0.0000, "maximum" : 0.0800 },
            "vscan" : { "minimum" : 0.9524, "maximum" : 1.0000 }
        },
        {
            "index" : 21,
            "hscan" : { "minimum" : 0.0000, "maximum" : 0.0800 },
            "vscan" : { "minimum" : 0.9048, "maximum" : 0.9524 }
        },
        {
            "index" : 22,
            "hscan" : { "minimum" : 0.0000, "maximum" : 0.0800 },
            "vscan" : { "minimum" : 0.8571, "maximum" : 0.9048 }
        },
        {
            "index" : 23,
            "hscan" : { "minimum" : 0.0000, "maximum" : 0.0800 },
            "vscan" : { "minimum" : 0.8095, "maximum" : 0.8571 }
        },
        {
            "index" : 24,
            "hscan" : { "minimum" : 0.0000, "maximum" : 0.0800 },
            "vscan" : { "minimum" : 0.7619, "maximum" : 0.8095 }
        },
        {
            "index" : 25,
            "hscan" : { "minimum" : 0.0000, "maximum" : 0.0800 },
            "vscan" : { "minimum" : 0.7143, "maximum" : 0.7619 }
        },
        {
            "index" : 26,
            "hscan" : { "minimum" : 0.0000, "maximum" : 0.0800 },
            "vscan" : { "minimum" : 0.6667, "maximum" : 0.7143 }
        },
        {
            "index" : 27,
            "hscan" : { "minimum" : 0.0000, "maximum" : 0.0800 },
            "vscan" : { "minimum" : 0.6190, "maximum" : 0.6667 }
        },
        {
            "index" : 28,
            "hscan" : { "minimum" : 0.0000, "maximum" : 0.0800 },
            "vscan" : { "minimum" : 0.5714, "maximum" : 0.6190 }
        },
        {
            "index" : 29,
            "hscan" : { "minimum" : 0.0000, "maximum" : 0.0800 },
            "vscan" : { "minimum" : 0.5238, "maximum" : 0.5714 }
        },
        {
            "index" : 30,
            "hscan" : { "minimum" : 0.0000, "maximum" : 0.0800 },
            "vscan" : { "minimum" : 0.4762, "maximum" : 0.5238 }
        },
        {
            "index" : 31,
            "hscan" : { "minimum" : 0.0000, "maximum" : 0.0800 },
            "vscan" : { "minimum" : 0.4286, "maximum" : 0.4762 }
        },
        {
            "index" : 32,
            "hscan" : { "minimum" : 0.0000, "maximum" : 0.0800 },
            "vscan" : { "minimum" : 0.3810, "maximum" : 0.4286 }
        },
        {
            "index" : 33,
            "hscan" : { "minimum" : 0.0000, "maximum" : 0.0800 },
            "vscan" : { "minimum" : 0.3333, "maximum" : 0.3810 }
        },
        {
            "index" : 34,
            "hscan" : { "minimum" : 0.0000, "maximum" : 0.0800 },
            "vscan" : { "minimum" : 0.2857, "maximum" : 0.3333 }
        },
        {
            "index" : 35,
            "hscan" : { "minimum" : 0.0000, "maximum" : 0.0800 },
            "vscan" : { "minimum" : 0.2381, "maximum" : 0.2857 }
        },
        {
            "index" : 36,
            "hscan" : { "minimum" : 0.0000, "maximum" : 0.0800 },
            "vscan" : { "minimum" : 0.1905, "maximum" : 0.2381 }
        },
        {
            "index" : 37,
            "hscan" : { "minimum" : 0.0000, "maximum" : 0.0800 },
            "vscan" : { "minimum" : 0.1429, "maximum" : 0.1905 }
        },
        {
            "index" : 38,
            "hscan" : { "minimum" : 0.0000, "maximum" : 0.0800 },
            "vscan" : { "minimum" : 0.0952, "maximum" : 0.1429 }
        },
        {
            "index" : 39,
            "hscan" : { "minimum" : 0.0000, "maximum" : 0.0800 },
            "vscan" : { "minimum" : 0.0476, "maximum" : 0.0952 }
        },
        {
            "index" : 40,
            "hscan" : { "minimum" : 0.0000, "maximum" : 0.0800 },
            "vscan" : { "minimum" : 0.0000, "maximum" : 0.0476 }
        },
        {
            "index" : 41,
            "hscan" : { "minimum" : 0.0000, "maximum" : 0.0270 },
            "vscan" : { "minimum" : 0.0000, "maximum" : 0.1500 }
        },
        {
            "index" : 42,
            "hscan" : { "minimum" : 0.0270, "maximum" : 0.0541 },
            "vscan" : { "minimum" : 0.0000, "maximum" : 0.1500 }
        },
        {
            "index" : 43,
            "hscan" : { "minimum" : 0.0541, "maximum" : 0.0811 },
            "vscan" : { "minimum" : 0.0000, "maximum" : 0.1500 }
        },
        {
            "index" : 44,
            "hscan" : { "minimum" : 0.0811, "maximum" : 0.1081 },
            "vscan" : { "minimum" : 0.0000, "maximum" : 0.1500 }
        },
        {
            "index" : 45,
            "hscan" : { "minimum" : 0.1081, "maximum" : 0.1351 },
            "vscan" : { "minimum" : 0.0000, "maximum" : 0.1500 }
        },
        {
            "index" : 46,
            "hscan" : { "minimum" : 0.1351, "maximum" : 0.1622 },
            "vscan" : { "minimum" : 0.0000, "maximum" : 0.1500 }
        },
        {
            "index" : 47,
            "hscan" : { "minimum" : 0.1622, "maximum" : 0.1892 },
            "vscan" : { "minimum" : 0.0000, "maximum" : 0.1500 }
        },
        {
            "index" : 48,
            "hscan" : { "minimum" : 0.1892, "maximum" : 0.2162 },
            "vscan" : { "minimum" : 0.0000, "maximum" : 0.1500 }
        },
        {
            "index" : 49,
            "hscan" : { "minimum" : 0.2162, "maximum" : 0.2432 },
            "vscan" : { "minimum" : 0.0000, "maximum" : 0.1500 }
        },
        {
            "index" : 50,
            "hscan" : { "minimum" : 0.2432, "maximum" : 0.2703 },
            "vscan" : { "minimum" : 0.0000, "maximum" : 0.1500 }
        },
        {
            "index" : 51,
            "hscan" : { "minimum" : 0.2703, "maximum" : 0.2973 },
            "vscan" : { "minimum" : 0.0000, "maximum" : 0.1500 }
        },
        {
            "index" : 52,
            "hscan" : { "minimum" : 0.2973, "maximum" : 0.3243 },
            "vscan" : { "minimum" : 0.0000, "maximum" : 0.1500 }
        },
        {
            "index" : 53,
            "hscan" : { "minimum" : 0.3243, "maximum" : 0.3514 },
            "vscan" : { "minimum" : 0.0000, "maximum" : 0.1500 }
        },
        {
            "index" : 54,
            "hscan" : { "minimum" : 0.3514, "maximum" : 0.3784 },
            "vscan" : { "minimum" : 0.0000, "maximum" : 0.1500 }
        },
        {
            "index" : 55,
            "hscan" : { "minimum" : 0.3784, "maximum" : 0.4054 },
            "vscan" : { "minimum" : 0.0000, "maximum" : 0.1500 }
        },
        {
            "index" : 56,
            "hscan" : { "minimum" : 0.4054, "maximum" : 0.4324 },
            "vscan" : { "minimum" : 0.0000, "maximum" : 0.1500 }
        },
        {
            "index" : 57,
            "hscan" : { "minimum" : 0.4324, "maximum" : 0.4595 },
            "vscan" : { "minimum" : 0.0000, "maximum" : 0.1500 }
        },
        {
            "index" : 58,
            "hscan" : { "minimum" : 0.4595, "maximum" : 0.4865 },
            "vscan" : { "minimum" : 0.0000, "maximum" : 0.1500 }
        },
        {
            "index" : 59,
            "hscan" : { "minimum" : 0.4865, "maximum" : 0.5135 },
            "vscan" : { "minimum" : 0.0000, "maximum" : 0.1500 }
        },
        {
            "index" : 60,
            "hscan" : { "minimum" : 0.5135, "maximum" : 0.5405 },
            "vscan" : { "minimum" : 0.0000, "maximum" : 0.1500 }
        },
        {
            "index" : 61,
            "hscan" : { "minimum" : 0.5405, "maximum" : 0.5676 },
            "vscan" : { "minimum" : 0.0000, "maximum" : 0.1500 }
        },
        {
            "index" : 62,
            "hscan" : { "minimum" : 0.5676, "maximum" : 0.5946 },
            "vscan" : { "minimum" : 0.0000, "maximum" : 0.1500 }
        },
        {
            "index" : 63,
            "hscan" : { "minimum" : 0.5946, "maximum" : 0.6216 },
            "vscan" : { "minimum" : 0.0000, "maximum" : 0.1500 }
        },
        {
            "index" : 64,
            "hscan" : { "minimum" : 0.6216, "maximum" : 0.6486 },
            "vscan" : { "minimum" : 0.0000, "maximum" : 0.1500 }
        },
        {
            "index" : 65,
            "hscan" : { "minimum" : 0.6486, "maximum" : 0.6757 },
            "vscan" : { "minimum" : 0.0000, "maximum" : 0.1500 }
        },
        {
            "index" : 66,
            "hscan" : { "minimum" : 0.6757, "maximum" : 0.7027 },
            "vscan" : { "minimum" : 0.0000, "maximum" : 0.1500 }
        },
        {
            "index" : 67,
            "hscan" : { "minimum" : 0.7027, "maximum" : 0.7297 },
            "vscan" : { "minimum" : 0.0000, "maximum" : 0.1500 }
        },
        {
            "index" : 68,
            "hscan" : { "minimum" : 0.7297, "maximum" : 0.7568 },
            "vscan" : { "minimum" : 0.0000, "maximum" : 0.1500 }
        },
        {
            "index" : 69,
            "hscan" : { "minimum" : 0.7568, "maximum" : 0.7838 },
            "vscan" : { "minimum" : 0.0000, "maximum" : 0.1500 }
        },
        {
            "index" : 70,
            "hscan" : { "minimum" : 0.7838, "maximum" : 0.8108 },
            "vscan" : { "minimum" : 0.0000, "maximum" : 0.1500 }
        },
        {
            "index" : 71,
            "hscan" : { "minimum" : 0.8108, "maximum" : 0.8378 },
            "vscan" : { "minimum" : 0.0000, "maximum" : 0.1500 }
        },
        {
            "index" : 72,
            "hscan" : { "minimum" : 0.8378, "maximum" : 0.8649 },
            "vscan" : { "minimum" : 0.0000, "maximum" : 0.1500 }
        },
        {
            "index" : 73,
            "hscan" : { "minimum" : 0.8649, "maximum" : 0.8919 },
            "vscan" : { "minimum" : 0.0000, "maximum" : 0.1500 }
        },
        {
            "index" : 74,
            "hscan" : { "minimum" : 0.8919, "maximum" : 0.9189 },
            "vscan" : { "minimum" : 0.0000, "maximum" : 0.1500 }
        },
        {
            "index" : 75,
            "hscan" : { "minimum" : 0.9189, "maximum" : 0.9459 },
            "vscan" : { "minimum" : 0.0000, "maximum" : 0.1500 }
        },
        {
            "index" : 76,
            "hscan" : { "minimum" : 0.9459, "maximum" : 0.9730 },
            "vscan" : { "minimum" : 0.0000, "maximum" : 0.1500 }
        },
        {
            "index" : 77,
            "hscan" : { "minimum" : 0.9730, "maximum" : 1.0000 },
            "vscan" : { "minimum" : 0.0000, "maximum" : 0.1500 }
        },
        {
            "index" : 78,
            "hscan" : { "minimum" : 0.9200, "maximum" : 1.0000 },
            "vscan" : { "minimum" : 0.0000, "maximum" : 0.0476 }
        },
        {
            "index" : 79,
            "hscan" : { "minimum" : 0.9200, "maximum" : 1.0000 },
            "vscan" : { "minimum" : 0.0476, "maximum" : 0.0952 }
        },
        {
            "index" : 80,
            "hscan" : { "minimum" : 0.9200, "maximum" : 1.0000 },
            "vscan" : { "minimum" : 0.0952, "maximum" : 0.1429 }
        },
        {
            "index" : 81,
            "hscan" : { "minimum" : 0.9200, "maximum" : 1.0000 },
            "vscan" : { "minimum" : 0.1429, "maximum" : 0.1905 }
        },
        {
            "index" : 82,
            "hscan" : { "minimum" : 0.9200, "maximum" : 1.0000 },
            "vscan" : { "minimum" : 0.1905, "maximum" : 0.2381 }
        },
        {
            "index" : 83,
            "hscan" : { "minimum" : 0.9200, "maximum" : 1.0000 },
            "vscan" : { "minimum" : 0.2381, "maximum" : 0.2857 }
        },
        {
            "index" : 84,
            "hscan" : { "minimum" : 0.9200, "maximum" : 1.0000 },
            "vscan" : { "minimum" : 0.2857, "maximum" : 0.3333 }
        },
        {
            "index" : 85,
            "hscan" : { "minimum" : 0.9200, "maximum" : 1.0000 },
            "vscan" : { "minimum" : 0.3333, "maximum" : 0.3810 }
        },
        {
            "index" : 86,
            "hscan" : { "minimum" : 0.9200, "maximum" : 1.0000 },
            "vscan" : { "minimum" : 0.3810, "maximum" : 0.4286 }
        },
        {
            "index" : 87,
            "hscan" : { "minimum" : 0.9200, "maximum" : 1.0000 },
            "vscan" : { "minimum" : 0.4286, "maximum" : 0.4762 }
        },
        {
            "index" : 88,
            "hscan" : { "minimum" : 0.9200, "maximum" : 1.0000 },
            "vscan" : { "minimum" : 0.4762, "maximum" : 0.5238 }
        },
        {
            "index" : 89,
            "hscan" : { "minimum" : 0.9200, "maximum" : 1.0000 },
            "vscan" : { "minimum" : 0.5238, "maximum" : 0.5714 }
        },
        {
            "index" : 90,
            "hscan" : { "minimum" : 0.9200, "maximum" : 1.0000 },
            "vscan" : { "minimum" : 0.5714, "maximum" : 0.6190 }
        },
        {
            "index" : 91,
            "hscan" : { "minimum" : 0.9200, "maximum" : 1.0000 },
            "vscan" : { "minimum" : 0.6190, "maximum" : 0.6667 }
        },
        {
            "index" : 92,
            "hscan" : { "minimum" : 0.9200, "maximum" : 1.0000 },
            "vscan" : { "minimum" : 0.6667, "maximum" : 0.7143 }
        },
        {
            "index" : 93,
            "hscan" : { "minimum" : 0.9200, "maximum" : 1.0000 },
            "vscan" : { "minimum" : 0.7143, "maximum" : 0.7619 }
        },
        {
            "index" : 94,
            "hscan" : { "minimum" : 0.9200, "maximum" : 1.0000 },
            "vscan" : { "minimum" : 0.7619, "maximum" : 0.8095 }
        },
        {
            "index" : 95,
            "hscan" : { "minimum" : 0.9200, "maximum" : 1.0000 },
            "vscan" : { "minimum" : 0.8095, "maximum" : 0.8571 }
        },
        {
            "index" : 96,
            "hscan" : { "minimum" : 0.9200, "maximum" : 1.0000 },
            "vscan" : { "minimum" : 0.8571, "maximum" : 0.9048 }
        },
        {
            "index" : 97,
            "hscan" : { "minimum" : 0.9200, "maximum" : 1.0000 },
            "vscan" : { "minimum" : 0.9048, "maximum" : 0.9524 }
        },
        {
            "index" : 98,
            "hscan" : { "minimum" : 0.9200, "maximum" : 1.0000 },
            "vscan" : { "minimum" : 0.9524, "maximum" : 1.0000 }
        },
        {
            "index" : 99,
            "hscan" : { "minimum" : 0.9200, "maximum" : 1.0000 },
            "vscan" : { "minimum" : 0.8500, "maximum" : 1.0000 }
        },
        {
            "index" : 100,
            "hscan" : { "minimum" : 0.9730, "maximum" : 1.0000 },
            "vscan" : { "minimum" : 0.8500, "maximum" : 1.0000 }
        },
        {
            "index" : 101,
            "hscan" : { "minimum" : 0.9459, "maximum" : 0.9730 },
            "vscan" : { "minimum" : 0.8500, "maximum" : 1.0000 }
        },
        {
            "index" : 102,
            "hscan" : { "minimum" : 0.9189, "maximum" : 0.9459 },
            "vscan" : { "minimum" : 0.8500, "maximum" : 1.0000 }
        },
        {
            "index" : 103,
            "hscan" : { "minimum" : 0.8919, "maximum" : 0.9189 },
            "vscan" : { "minimum" : 0.8500, "maximum" : 1.0000 }
        },
        {
            "index" : 104,
            "hscan" : { "minimum" : 0.8649, "maximum" : 0.8919 },
            "vscan" : { "minimum" : 0.8500, "maximum" : 1.0000 }
        },
        {
            "index" : 105,
            "hscan" : { "minimum" : 0.8378, "maximum" : 0.8649 },
            "vscan" : { "minimum" : 0.8500, "maximum" : 1.0000 }
        },
        {
            "index" : 106,
            "hscan" : { "minimum" : 0.8108, "maximum" : 0.8378 },
            "vscan" : { "minimum" : 0.8500, "maximum" : 1.0000 }
        },
        {
            "index" : 107,
            "hscan" : { "minimum" : 0.7838, "maximum" : 0.8108 },
            "vscan" : { "minimum" : 0.8500, "maximum" : 1.0000 }
        },
        {
            "index" : 108,
            "hscan" : { "minimum" : 0.7568, "maximum" : 0.7838 },
            "vscan" : { "minimum" : 0.8500, "maximum" : 1.0000 }
        },
        {
            "index" : 109,
            "hscan" : { "minimum" : 0.7297, "maximum" : 0.7568 },
            "vscan" : { "minimum" : 0.8500, "maximum" : 1.0000 }
        },
        {
            "index" : 110,
            "hscan" : { "minimum" : 0.7027, "maximum" : 0.7297 },
            "vscan" : { "minimum" : 0.8500, "maximum" : 1.0000 }
        },
        {
            "index" : 111,
            "hscan" : { "minimum" : 0.6757, "maximum" : 0.7027 },
            "vscan" : { "minimum" : 0.8500, "maximum" : 1.0000 }
        },
        {
            "index" : 112,
            "hscan" : { "minimum" : 0.6486, "maximum" : 0.6757 },
            "vscan" : { "minimum" : 0.8500, "maximum" : 1.0000 }
        },
        {
            "index" : 113,
            "hscan" : { "minimum" : 0.6216, "maximum" : 0.6486 },
            "vscan" : { "minimum" : 0.8500, "maximum" : 1.0000 }
        },
        {
            "index" : 114,
            "hscan" : { "minimum" : 0.5946, "maximum" : 0.6216 },
            "vscan" : { "minimum" : 0.8500, "maximum" : 1.0000 }
        },
        {
            "index" : 115,
            "hscan" : { "minimum" : 0.5676, "maximum" : 0.5946 },
            "vscan" : { "minimum" : 0.8500, "maximum" : 1.0000 }
        },
        {
            "index" : 116,
            "hscan" : { "minimum" : 0.5405, "maximum" : 0.5676 },
            "vscan" : { "minimum" : 0.8500, "maximum" : 1.0000 }
        },
        {
            "index" : 117,
            "hscan" : { "minimum" : 0.5135, "maximum" : 0.5405 },
            "vscan" : { "minimum" : 0.8500, "maximum" : 1.0000 }
        }
    ],

    /// 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
    "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" : 5000
    },

    ///  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
    },

    /// 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
    "xbmcVideoChecker" :
    {
        "xbmcAddress" : "127.0.0.1",
        "xbmcTcpPort" : 9090,
        "grabVideo" : true,
        "grabPictures" : true,
        "grabAudio" : true,
        "grabMenu" : false,
                "grabScreensaver" : true,
                "enable3DDetection" : true
    },

        /// 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" : "PAL",
//                "width" : -1,
//                "height" : -1,
//                "frameDecimation" : 2,
//                "sizeDecimation" : 8,
//                "priority" : 800,
//                "mode" : "2D",
//                "cropLeft" : 10,
//                "cropRight" : 10,
//                "cropTop" : 1,
//                "cropBottom" : 1,      
//                "redSignalThreshold" : 0.1,
//                "greenSignalThreshold" : 0.1,
//                "blueSignalThreshold" : 0.1
//        },

    /// 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
//  },

    "endOfJson" : "endOfJson"
}

When running I get no lights from LED. When I boot system up I get some but not during playback.

Other thing if I use the JAVA program to make the config file I get different error when start up:

Code:
OpenELEC:~/hyperion/config # /storage/hyperion/bin/hyperiond.sh /storage/hyperion/config/hyperion.config.json
Application build time: May 16 2015 07:36:26
QCoreApplication initialised
Selected configuration file: /storage/hyperion/config/hyperion.config.json
ColorTransform 'default' => [0; 249]
Device configuration:
{
        "colorOrder" : "rgb",
        "name" : "MyPi",
        "output" : "/dev/USB0",
        "rate" : 115200,
        "type" : "adalight"
}

Opening UART: /dev/USB0
Unable to open RS232 device (IO Exception (2): No such file or directory, file /tmp/hyperion/dependencies/build/serial/src/impl/unix.cc, line 100.)
Black border threshold set to 0.01 (3)
Not creating any smoothing
Effect directory can not be loaded: /opt/hyperion/effects
Initializing Python interpreter
Hyperion created and initialised
run effect Rainbow swirl fast on channel 0
effect Rainbow swirl fast not found
Failed to start boot sequence: Rainbow swirl fast
XBMC video checker created and started
The dispmanx framegrabber can not be instantiated, becuse it has been left out from the build
The framebuffer grabber can not be instantiated, becuse it has been left out from the build
The osx grabber can not be instantiated, becuse it has been left out from the build
Json server created and started on port 19444
Proto server created and started on port 19445
XBMC Connected
Message from XBMC: {"id":666,"jsonrpc":"2.0","result":[{"playerid":1,"type":"video"}]}
XBMC checker: switching to VIDEO mode
Message from XBMC: {"id":668,"jsonrpc":"2.0","result":{"System.ScreenSaverActive":false}}
Message from XBMC: {"id":667,"jsonrpc":"2.0","result":{"item":{"file":"smb://FREENAS/Media/videos/movies/A History of Violence (2005)/A History of Violence (2005).mkv","id":784,"label":"A History of Violence","type":"movie"}}}
Message from XBMC: {"id":670,"jsonrpc":"2.0","result":{"version":{"major":14,"minor":2,"revision":"7cc53a9","tag":"stable"}}}
Reply
#77
Hmm looks like you have dependencies problem. From looking at your command lines I assume that you are using my build. What openelec version do you use (I assume that it is openelec) or. are you compiling by yourself.
Second if you are using my build try this one as alternative:

Code:
curl -L -O https://raw.github.com/Gamadril/hyperion/master/bin/install_hyperion.sh
bash install_hyperion.sh

Third paste one pastebin the modified arduino code and also sketches so that we can see what are you using since adalight does not include 2812 support by default.

Another note:
Also there seems that the config file is strange. Are you sure that you have /dev/ttyUSB0 and not /dev/USB0
as i see in your log file? Also check what new device is created when you insert arduino into usb under folder /dev/ it should be ttyUSB0 and not USB.
Reply
#78
(2015-06-12, 05:16)illiac4 Wrote: Hmm looks like you have dependencies problem. From looking at your command lines I assume that you are using my build. What openelec version do you use (I assume that it is openelec) or. are you compiling by yourself.
Second if you are using my build try this one as alternative:

Code:
curl -L -O https://raw.github.com/Gamadril/hyperion/master/bin/install_hyperion.sh
bash install_hyperion.sh

Third paste one pastebin the modified arduino code and also sketches so that we can see what are you using since adalight does not include 2812 support by default.

Another note:
Also there seems that the config file is strange. Are you sure that you have /dev/ttyUSB0 and not /dev/USB0
as i see in your log file? Also check what new device is created when you insert arduino into usb under folder /dev/ it should be ttyUSB0 and not USB.

I am getting closer. However I think might be the sketch and or prefix. How can you figure out prefix? I am using ws2812b LEDs with 250 of them. Also anyone have a sketch I SHOULD be using?
Reply
#79
(2015-06-12, 17:17)rmilyard Wrote:
(2015-06-12, 05:16)illiac4 Wrote: Hmm looks like you have dependencies problem. From looking at your command lines I assume that you are using my build. What openelec version do you use (I assume that it is openelec) or. are you compiling by yourself.
Second if you are using my build try this one as alternative:

Code:
curl -L -O https://raw.github.com/Gamadril/hyperion/master/bin/install_hyperion.sh
bash install_hyperion.sh

Third paste one pastebin the modified arduino code and also sketches so that we can see what are you using since adalight does not include 2812 support by default.

Another note:
Also there seems that the config file is strange. Are you sure that you have /dev/ttyUSB0 and not /dev/USB0
as i see in your log file? Also check what new device is created when you insert arduino into usb under folder /dev/ it should be ttyUSB0 and not USB.

I am getting closer. However I think might be the sketch and or prefix. How can you figure out prefix? I am using ws2812b LEDs with 250 of them. Also anyone have a sketch I SHOULD be using?

How do I figure out prefix for sketch? I think might be the issue but can't figure this part out.
Reply
#80
Think I got Hyperion running. However when play movie LEDs don't come on. Is there a log file or something to look for issues?
Reply
#81
run in foreground paste to pastebin. Also make sure you have installed hyperion addon. Static lights works?
Reply
#82
(2015-06-13, 06:17)illiac4 Wrote: run in foreground paste to pastebin. Also make sure you have installed hyperion addon. Static lights works?

Addon? Someone told me there wasn't one. Maybe this is reason no LEDs?
Reply
#83
https://github.com/tvdzwan/hyperion/wiki...t-for-RPi)
Reply
#84
Thanks for the openelec x64 Port . Its working like a charm Big Grin

The only thing that is broken = Hyperion + Cinema Experince

Hyperion not work correctly after starting a Movie with cinema Experience
When i start CE the lights have a big delay and looking some kind of static.

Any one else managed to get Hyperion work with CE ?

I posted this also in the CE Thread, but i didn't get a solution
Reply
#85
(2015-05-16, 08:21)illiac4 Wrote: There it is:
http://bite-in.com/hyperion/Hyperion_OpenELEC_x64.tgz

File not found..... can anyone up it again please?
Living Room: ASRock J3455 , 8GB RAM, Sandisk SSD 120GB, LibreELEC Testbuild,- Pioneer VSX-930 - Sony KD-65XD7505
Test HDR Setup: Bqeel M9Cmax (S905X 2GB RAM, 16G Flash) LibreElec HDR 10Bit Build Test6 from johngalt
R.I.P. DAD: 17.06.1952 - 21.01.2017
Reply
#86
just saw you have a OE x64 patch now and omg the transition from rpi to OE was smooth.
even my video grabber is working flawlessly. playing destiny on my PS4 right now Smile

thank you so much!!!

**Tip**

if your lights are on all the time you can create commands to turn on and off the lights via keymaps

To Turn Lights On Add:
Code:
/storage/hyperion/bin/hyperiond.sh /storage/hyperion/config/hyperion.config.json </dev/null >/dev/null 2>&1 &

into /storage/.config/on.sh

To Turn Lights Off Add:
Code:
killall hyperiond

into /storage/.config/off.sh

and then edit your keymap to excute command
im using a logitech remote and used my red and green buttons

My Example:
Code:
<red>System.Exec(/storage/.config/on.sh)</red>
<green>System.Exec(/storage/.config/off.sh)</green>
TV - 70" LG UM6970PUA  
AVR - Denon x2400h 5.2.2 Surround
Devices - Apple TV 4K, nVIDIA Shield TV Pro
Server - unRAID Pro, v6.9 | Asus TUF Gaming x570-Plus (Wifi) | AMD Ryzen 9 3950x | 64GB G.SKILL | 12TB Dual Parity + 92TB Storage
Remote - Logitech Harmony Smart Hub & Control
Reply
#87
I'm new to ambient lighting and have been thinking of building one for a while. I was looking into getting the Adalight kit but since I was planning to buy a raspberry pi 2 for my home automation software (OpenHAB) I figured I would look at hyperion. My goal is to be able to do ambient lighting for anything using a frame grabber and an HDMI splitter. The other goal is to use the ambient light as mood lighting when I am not watching anything and the TV is powered down. The mood lighting would be controlled via OpenHAB and would match the RGB of my Phillips Hue bulbs. The only question I have is I am not planning on running a Kodi-based OS on my raspberry pi. I have a high powered Kodi DSPlayer machine for that which gets powered down when I leave the house or when I fall asleep.

Will I be able to run hyperion on say a raspbian OS?
Image
Reply
#88
http://bite-in.com/?p=9
Reply
#89
(2015-09-10, 06:48)illiac4 Wrote: http://bite-in.com/?p=9
Thanks a lot. That was exactly what I was looking for. Now you wouldn't happen to know of a program that could do music visualization bases on the sound from the capture card do you?
Image
Reply
#90
Hi, im working on this for i think almost 15 hours straight now but i just cant get it to work, can someone please take a look at my files an tell me what im missing or doing wrong?

My setup.
A HTPC Desktop PC with kodibuntu on it, i installed the x64 openelec files provided in earlier post.
I have a arduino nano and ws2801 leds.
The problem is that the lights are not switching, not even to a static colour with the android app, i can succesfully connect to the hyperion server tough.

Here are my configs:

arduino sketch
Code:
// Slightly modified Adalight protocol implementation that uses FastLED
// library (http://fastled.io) for driving WS2811/WS2812 led stripe
// Was tested only with Prismatik software from Lightpack project (version 5.9.1, 5.9.6 and 5.11.1 so far - 5.11.1 has some issues on startup in windows so I'm not using it)

#include "FastLED.h"

#define NUM_LEDS 100 // Max LED count
#define LED_PIN 11 // arduino output pin - probably not required for WS2801
#define GROUND_PIN 10 // probably not required for WS2801
#define BRIGHTNESS 96 // maximum brightness
#define SPEED 115200 // virtual serial port speed, must be the same in boblight_config

CRGB leds[NUM_LEDS];
uint8_t * ledsRaw = (uint8_t *)leds;

// A 'magic word' (along with LED count & checksum) precedes each block
// of LED data; this assists the microcontroller in syncing up with the
// host-side software and properly issuing the latch (host I/O is
// likely buffered, making usleep() unreliable for latch).  You may see
// an initial glitchy frame or two until the two come into alignment.
// The magic word can be whatever sequence you like, but each character
// should be unique, and frequent pixel values like 0 and 255 are
// avoided -- fewer false positives.  The host software will need to
// generate a compatible header: immediately following the magic word
// are three bytes: a 16-bit count of the number of LEDs (high byte
// first) followed by a simple checksum value (high byte XOR low byte
// XOR 0x55).  LED data follows, 3 bytes per LED, in order R, G, B,
// where 0 = off and 255 = max brightness.

static const uint8_t magic[] = {'A','d','a'};
#define MAGICSIZE  sizeof(magic)
#define HEADERSIZE (MAGICSIZE + 3)

#define MODE_HEADER 0
#define MODE_DATA   2

// If no serial data is received for a while, the LEDs are shut off
// automatically.  This avoids the annoying "stuck pixel" look when
// quitting LED display programs on the host computer.
static const unsigned long serialTimeout = 150000; // 150 seconds

void setup()
{
  // pinMode(GROUND_PIN, OUTPUT);
  // digitalWrite(GROUND_PIN, LOW);
  // FastLED.addLeds<WS2811, LED_PIN, BRG>(leds, NUM_LEDS);
  FastLED.addLeds<WS2801, RGB>(leds, NUM_LEDS);

  // Dirty trick: the circular buffer for serial data is 256 bytes,
  // and the "in" and "out" indices are unsigned 8-bit types -- this
  // much simplifies the cases where in/out need to "wrap around" the
  // beginning/end of the buffer.  Otherwise there'd be a ton of bit-
  // masking and/or conditional code every time one of these indices
  // needs to change, slowing things down tremendously.
  uint8_t
    buffer[256],
    indexIn       = 0,
    indexOut      = 0,
    mode          = MODE_HEADER,
    hi, lo, chk, i, spiFlag;
  int16_t
    bytesBuffered = 0,
    hold          = 0,
    c;
  int32_t
    bytesRemaining;
  unsigned long
    startTime,
    lastByteTime,
    lastAckTime,
    t;
  int32_t outPos = 0;

  Serial.begin(SPEED); // Teensy/32u4 disregards baud rate; is OK!

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

  startTime    = micros();
  lastByteTime = lastAckTime = millis();

  // loop() is avoided as even that small bit of function overhead
  // has a measurable impact on this code's overall throughput.

  for(;;) {

    // Implementation is a simple finite-state machine.
    // Regardless of mode, check for serial input each time:
    t = millis();
    if((bytesBuffered < 256) && ((c = Serial.read()) >= 0)) {
      buffer[indexIn++] = c;
      bytesBuffered++;
      lastByteTime = lastAckTime = t; // Reset timeout counters
    } else {
      // No data received.  If this persists, send an ACK packet
      // to host once every second to alert it to our presence.
      if((t - lastAckTime) > 1000) {
        Serial.print("Ada\n"); // Send ACK string to host
        lastAckTime = t; // Reset counter
      }
      // If no data received for an extended time, turn off all LEDs.
      if((t - lastByteTime) > serialTimeout) {
        memset(leds, 0,  NUM_LEDS * sizeof(struct CRGB)); //filling Led array by zeroes
        FastLED.show();
        lastByteTime = t; // Reset counter
      }
    }

    switch(mode) {

     case MODE_HEADER:

      // In header-seeking mode.  Is there enough data to check?
      if(bytesBuffered >= HEADERSIZE) {
        // Indeed.  Check for a 'magic word' match.
        for(i=0; (i<MAGICSIZE) && (buffer[indexOut++] == magic[i++]););
        if(i == MAGICSIZE) {
          // Magic word matches.  Now how about the checksum?
          hi  = buffer[indexOut++];
          lo  = buffer[indexOut++];
          chk = buffer[indexOut++];
          if(chk == (hi ^ lo ^ 0x55)) {
            // Checksum looks valid.  Get 16-bit LED count, add 1
            // (# LEDs is always > 0) and multiply by 3 for R,G,B.
            bytesRemaining = 3L * (256L * (long)hi + (long)lo + 1L);
            bytesBuffered -= 3;
            outPos = 0;
            memset(leds, 0,  NUM_LEDS * sizeof(struct CRGB));
            mode           = MODE_DATA; // Proceed to latch wait mode
          } else {
            // Checksum didn't match; search resumes after magic word.
            indexOut  -= 3; // Rewind
          }
        } // else no header match.  Resume at first mismatched byte.
        bytesBuffered -= i;
      }
      break;

     case MODE_DATA:

      if(bytesRemaining > 0) {
        if(bytesBuffered > 0) {
          if (outPos < sizeof(leds))
            ledsRaw[outPos++] = buffer[indexOut++];   // Issue next byte
          bytesBuffered--;
          bytesRemaining--;
        }
        // If serial buffer is threatening to underrun, start
        // introducing progressively longer pauses to allow more
        // data to arrive (up to a point).
      } else {
        // End of data -- issue latch:
        startTime  = micros();
        mode       = MODE_HEADER; // Begin next header search
        FastLED.show();
      }
    } // end switch
  } // end for(;;)
}

void loop()
{
  // Not used.  See note in setup() function.
}




hyperion.config.json
Code:
// 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 'ws2801', 'ldp8806',
    ///                  'lpd6803', 'sedu', 'adalight', 'lightpack', 'test' and 'none')
    /// * 'output'     : The output specification depends on selected device. This can for example be the
    ///                  device specifier, device serial number, or the output file name
    /// * 'rate'       : The baudrate of the output to the device
    /// * 'colorOrder' : The order of the color bytes ('rgb', 'rbg', 'bgr', etc.).
    "device" :
    {
        "name"       : "HTPC",
        "type"       : "adalight",
        "output"     : "/dev/ttyUSB0",
        "rate"       : 115200,
        "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
    "color" :
    {
        "transform" :
        [
            {
                "id"   : "default",
                "leds" : "*",
                "hsv" :
                {
                    "saturationGain" : 1.1000,
                    "valueGain"      : 1.5000
                },
                "red" :
                {
                    "threshold"  : 0.2000,
                    "gamma"      : 2.0000,
                    "blacklevel" : 0.0000,
                    "whitelevel" : 1.0000
                },
                "green" :
                {
                    "threshold"  : 0.2000,
                    "gamma"      : 2.0000,
                    "blacklevel" : 0.0000,
                    "whitelevel" : 0.8000
                },
                "blue" :
                {
                    "threshold"  : 0.2000,
                    "gamma"      : 2.0000,
                    "blacklevel" : 0.0000,
                    "whitelevel" : 0.5000
                }
            }
        ],
        "smoothing" :
        {
            "type"            : "linear",
            "time_ms"         : 15,
            "updateFrequency" : 24.0000,
            "updateDelay"     : 6
        }
    },

    ///  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.9900, "maximum" : 1.0000 },
            "vscan" : { "minimum" : 0.9583, "maximum" : 1.0000 }
        },
        {
            "index" : 1,
            "hscan" : { "minimum" : 0.9900, "maximum" : 1.0000 },
            "vscan" : { "minimum" : 0.9167, "maximum" : 0.9583 }
        },
        {
            "index" : 2,
            "hscan" : { "minimum" : 0.9900, "maximum" : 1.0000 },
            "vscan" : { "minimum" : 0.8750, "maximum" : 0.9167 }
        },
        {
            "index" : 3,
            "hscan" : { "minimum" : 0.9900, "maximum" : 1.0000 },
            "vscan" : { "minimum" : 0.8333, "maximum" : 0.8750 }
        },
        {
            "index" : 4,
            "hscan" : { "minimum" : 0.9900, "maximum" : 1.0000 },
            "vscan" : { "minimum" : 0.7917, "maximum" : 0.8333 }
        },
        {
            "index" : 5,
            "hscan" : { "minimum" : 0.9900, "maximum" : 1.0000 },
            "vscan" : { "minimum" : 0.7500, "maximum" : 0.7917 }
        },
        {
            "index" : 6,
            "hscan" : { "minimum" : 0.9900, "maximum" : 1.0000 },
            "vscan" : { "minimum" : 0.7083, "maximum" : 0.7500 }
        },
        {
            "index" : 7,
            "hscan" : { "minimum" : 0.9900, "maximum" : 1.0000 },
            "vscan" : { "minimum" : 0.6667, "maximum" : 0.7083 }
        },
        {
            "index" : 8,
            "hscan" : { "minimum" : 0.9900, "maximum" : 1.0000 },
            "vscan" : { "minimum" : 0.6250, "maximum" : 0.6667 }
        },
        {
            "index" : 9,
            "hscan" : { "minimum" : 0.9900, "maximum" : 1.0000 },
            "vscan" : { "minimum" : 0.5833, "maximum" : 0.6250 }
        },
        {
            "index" : 10,
            "hscan" : { "minimum" : 0.9900, "maximum" : 1.0000 },
            "vscan" : { "minimum" : 0.5417, "maximum" : 0.5833 }
        },
        {
            "index" : 11,
            "hscan" : { "minimum" : 0.9900, "maximum" : 1.0000 },
            "vscan" : { "minimum" : 0.5000, "maximum" : 0.5417 }
        },
        {
            "index" : 12,
            "hscan" : { "minimum" : 0.9900, "maximum" : 1.0000 },
            "vscan" : { "minimum" : 0.4583, "maximum" : 0.5000 }
        },
        {
            "index" : 13,
            "hscan" : { "minimum" : 0.9900, "maximum" : 1.0000 },
            "vscan" : { "minimum" : 0.4167, "maximum" : 0.4583 }
        },
        {
            "index" : 14,
            "hscan" : { "minimum" : 0.9900, "maximum" : 1.0000 },
            "vscan" : { "minimum" : 0.3750, "maximum" : 0.4167 }
        },
        {
            "index" : 15,
            "hscan" : { "minimum" : 0.9900, "maximum" : 1.0000 },
            "vscan" : { "minimum" : 0.3333, "maximum" : 0.3750 }
        },
        {
            "index" : 16,
            "hscan" : { "minimum" : 0.9900, "maximum" : 1.0000 },
            "vscan" : { "minimum" : 0.2917, "maximum" : 0.3333 }
        },
        {
            "index" : 17,
            "hscan" : { "minimum" : 0.9900, "maximum" : 1.0000 },
            "vscan" : { "minimum" : 0.2500, "maximum" : 0.2917 }
        },
        {
            "index" : 18,
            "hscan" : { "minimum" : 0.9900, "maximum" : 1.0000 },
            "vscan" : { "minimum" : 0.2083, "maximum" : 0.2500 }
        },
        {
            "index" : 19,
            "hscan" : { "minimum" : 0.9900, "maximum" : 1.0000 },
            "vscan" : { "minimum" : 0.1667, "maximum" : 0.2083 }
        },
        {
            "index" : 20,
            "hscan" : { "minimum" : 0.9900, "maximum" : 1.0000 },
            "vscan" : { "minimum" : 0.1250, "maximum" : 0.1667 }
        },
        {
            "index" : 21,
            "hscan" : { "minimum" : 0.9900, "maximum" : 1.0000 },
            "vscan" : { "minimum" : 0.0833, "maximum" : 0.1250 }
        },
        {
            "index" : 22,
            "hscan" : { "minimum" : 0.9900, "maximum" : 1.0000 },
            "vscan" : { "minimum" : 0.0417, "maximum" : 0.0833 }
        },
        {
            "index" : 23,
            "hscan" : { "minimum" : 0.9900, "maximum" : 1.0000 },
            "vscan" : { "minimum" : 0.0000, "maximum" : 0.0417 }
        },
        {
            "index" : 24,
            "hscan" : { "minimum" : 0.9756, "maximum" : 1.0000 },
            "vscan" : { "minimum" : 0.0000, "maximum" : 0.0700 }
        },
        {
            "index" : 25,
            "hscan" : { "minimum" : 0.9512, "maximum" : 0.9756 },
            "vscan" : { "minimum" : 0.0000, "maximum" : 0.0700 }
        },
        {
            "index" : 26,
            "hscan" : { "minimum" : 0.9268, "maximum" : 0.9512 },
            "vscan" : { "minimum" : 0.0000, "maximum" : 0.0700 }
        },
        {
            "index" : 27,
            "hscan" : { "minimum" : 0.9024, "maximum" : 0.9268 },
            "vscan" : { "minimum" : 0.0000, "maximum" : 0.0700 }
        },
        {
            "index" : 28,
            "hscan" : { "minimum" : 0.8780, "maximum" : 0.9024 },
            "vscan" : { "minimum" : 0.0000, "maximum" : 0.0700 }
        },
        {
            "index" : 29,
            "hscan" : { "minimum" : 0.8537, "maximum" : 0.8780 },
            "vscan" : { "minimum" : 0.0000, "maximum" : 0.0700 }
        },
        {
            "index" : 30,
            "hscan" : { "minimum" : 0.8293, "maximum" : 0.8537 },
            "vscan" : { "minimum" : 0.0000, "maximum" : 0.0700 }
        },
        {
            "index" : 31,
            "hscan" : { "minimum" : 0.8049, "maximum" : 0.8293 },
            "vscan" : { "minimum" : 0.0000, "maximum" : 0.0700 }
        },
        {
            "index" : 32,
            "hscan" : { "minimum" : 0.7805, "maximum" : 0.8049 },
            "vscan" : { "minimum" : 0.0000, "maximum" : 0.0700 }
        },
        {
            "index" : 33,
            "hscan" : { "minimum" : 0.7561, "maximum" : 0.7805 },
            "vscan" : { "minimum" : 0.0000, "maximum" : 0.0700 }
        },
        {
            "index" : 34,
            "hscan" : { "minimum" : 0.7317, "maximum" : 0.7561 },
            "vscan" : { "minimum" : 0.0000, "maximum" : 0.0700 }
        },
        {
            "index" : 35,
            "hscan" : { "minimum" : 0.7073, "maximum" : 0.7317 },
            "vscan" : { "minimum" : 0.0000, "maximum" : 0.0700 }
        },
        {
            "index" : 36,
            "hscan" : { "minimum" : 0.6829, "maximum" : 0.7073 },
            "vscan" : { "minimum" : 0.0000, "maximum" : 0.0700 }
        },
        {
            "index" : 37,
            "hscan" : { "minimum" : 0.6585, "maximum" : 0.6829 },
            "vscan" : { "minimum" : 0.0000, "maximum" : 0.0700 }
        },
        {
            "index" : 38,
            "hscan" : { "minimum" : 0.6341, "maximum" : 0.6585 },
            "vscan" : { "minimum" : 0.0000, "maximum" : 0.0700 }
        },
        {
            "index" : 39,
            "hscan" : { "minimum" : 0.6098, "maximum" : 0.6341 },
            "vscan" : { "minimum" : 0.0000, "maximum" : 0.0700 }
        },
        {
            "index" : 40,
            "hscan" : { "minimum" : 0.5854, "maximum" : 0.6098 },
            "vscan" : { "minimum" : 0.0000, "maximum" : 0.0700 }
        },
        {
            "index" : 41,
            "hscan" : { "minimum" : 0.5610, "maximum" : 0.5854 },
            "vscan" : { "minimum" : 0.0000, "maximum" : 0.0700 }
        },
        {
            "index" : 42,
            "hscan" : { "minimum" : 0.5366, "maximum" : 0.5610 },
            "vscan" : { "minimum" : 0.0000, "maximum" : 0.0700 }
        },
        {
            "index" : 43,
            "hscan" : { "minimum" : 0.5122, "maximum" : 0.5366 },
            "vscan" : { "minimum" : 0.0000, "maximum" : 0.0700 }
        },
        {
            "index" : 44,
            "hscan" : { "minimum" : 0.4878, "maximum" : 0.5122 },
            "vscan" : { "minimum" : 0.0000, "maximum" : 0.0700 }
        },
        {
            "index" : 45,
            "hscan" : { "minimum" : 0.4634, "maximum" : 0.4878 },
            "vscan" : { "minimum" : 0.0000, "maximum" : 0.0700 }
        },
        {
            "index" : 46,
            "hscan" : { "minimum" : 0.4390, "maximum" : 0.4634 },
            "vscan" : { "minimum" : 0.0000, "maximum" : 0.0700 }
        },
        {
            "index" : 47,
            "hscan" : { "minimum" : 0.4146, "maximum" : 0.4390 },
            "vscan" : { "minimum" : 0.0000, "maximum" : 0.0700 }
        },
        {
            "index" : 48,
            "hscan" : { "minimum" : 0.3902, "maximum" : 0.4146 },
            "vscan" : { "minimum" : 0.0000, "maximum" : 0.0700 }
        },
        {
            "index" : 49,
            "hscan" : { "minimum" : 0.3659, "maximum" : 0.3902 },
            "vscan" : { "minimum" : 0.0000, "maximum" : 0.0700 }
        },
        {
            "index" : 50,
            "hscan" : { "minimum" : 0.3415, "maximum" : 0.3659 },
            "vscan" : { "minimum" : 0.0000, "maximum" : 0.0700 }
        },
        {
            "index" : 51,
            "hscan" : { "minimum" : 0.3171, "maximum" : 0.3415 },
            "vscan" : { "minimum" : 0.0000, "maximum" : 0.0700 }
        },
        {
            "index" : 52,
            "hscan" : { "minimum" : 0.2927, "maximum" : 0.3171 },
            "vscan" : { "minimum" : 0.0000, "maximum" : 0.0700 }
        },
        {
            "index" : 53,
            "hscan" : { "minimum" : 0.2683, "maximum" : 0.2927 },
            "vscan" : { "minimum" : 0.0000, "maximum" : 0.0700 }
        },
        {
            "index" : 54,
            "hscan" : { "minimum" : 0.2439, "maximum" : 0.2683 },
            "vscan" : { "minimum" : 0.0000, "maximum" : 0.0700 }
        },
        {
            "index" : 55,
            "hscan" : { "minimum" : 0.2195, "maximum" : 0.2439 },
            "vscan" : { "minimum" : 0.0000, "maximum" : 0.0700 }
        },
        {
            "index" : 56,
            "hscan" : { "minimum" : 0.1951, "maximum" : 0.2195 },
            "vscan" : { "minimum" : 0.0000, "maximum" : 0.0700 }
        },
        {
            "index" : 57,
            "hscan" : { "minimum" : 0.1707, "maximum" : 0.1951 },
            "vscan" : { "minimum" : 0.0000, "maximum" : 0.0700 }
        },
        {
            "index" : 58,
            "hscan" : { "minimum" : 0.1463, "maximum" : 0.1707 },
            "vscan" : { "minimum" : 0.0000, "maximum" : 0.0700 }
        },
        {
            "index" : 59,
            "hscan" : { "minimum" : 0.1220, "maximum" : 0.1463 },
            "vscan" : { "minimum" : 0.0000, "maximum" : 0.0700 }
        },
        {
            "index" : 60,
            "hscan" : { "minimum" : 0.0976, "maximum" : 0.1220 },
            "vscan" : { "minimum" : 0.0000, "maximum" : 0.0700 }
        },
        {
            "index" : 61,
            "hscan" : { "minimum" : 0.0732, "maximum" : 0.0976 },
            "vscan" : { "minimum" : 0.0000, "maximum" : 0.0700 }
        },
        {
            "index" : 62,
            "hscan" : { "minimum" : 0.0488, "maximum" : 0.0732 },
            "vscan" : { "minimum" : 0.0000, "maximum" : 0.0700 }
        },
        {
            "index" : 63,
            "hscan" : { "minimum" : 0.0244, "maximum" : 0.0488 },
            "vscan" : { "minimum" : 0.0000, "maximum" : 0.0700 }
        },
        {
            "index" : 64,
            "hscan" : { "minimum" : 0.0000, "maximum" : 0.0244 },
            "vscan" : { "minimum" : 0.0000, "maximum" : 0.0700 }
        },
        {
            "index" : 65,
            "hscan" : { "minimum" : 0.0000, "maximum" : 0.0100 },
            "vscan" : { "minimum" : 0.0000, "maximum" : 0.0417 }
        },
        {
            "index" : 66,
            "hscan" : { "minimum" : 0.0000, "maximum" : 0.0100 },
            "vscan" : { "minimum" : 0.0417, "maximum" : 0.0833 }
        },
        {
            "index" : 67,
            "hscan" : { "minimum" : 0.0000, "maximum" : 0.0100 },
            "vscan" : { "minimum" : 0.0833, "maximum" : 0.1250 }
        },
        {
            "index" : 68,
            "hscan" : { "minimum" : 0.0000, "maximum" : 0.0100 },
            "vscan" : { "minimum" : 0.1250, "maximum" : 0.1667 }
        },
        {
            "index" : 69,
            "hscan" : { "minimum" : 0.0000, "maximum" : 0.0100 },
            "vscan" : { "minimum" : 0.1667, "maximum" : 0.2083 }
        },
        {
            "index" : 70,
            "hscan" : { "minimum" : 0.0000, "maximum" : 0.0100 },
            "vscan" : { "minimum" : 0.2083, "maximum" : 0.2500 }
        },
        {
            "index" : 71,
            "hscan" : { "minimum" : 0.0000, "maximum" : 0.0100 },
            "vscan" : { "minimum" : 0.2500, "maximum" : 0.2917 }
        },
        {
            "index" : 72,
            "hscan" : { "minimum" : 0.0000, "maximum" : 0.0100 },
            "vscan" : { "minimum" : 0.2917, "maximum" : 0.3333 }
        },
        {
            "index" : 73,
            "hscan" : { "minimum" : 0.0000, "maximum" : 0.0100 },
            "vscan" : { "minimum" : 0.3333, "maximum" : 0.3750 }
        },
        {
            "index" : 74,
            "hscan" : { "minimum" : 0.0000, "maximum" : 0.0100 },
            "vscan" : { "minimum" : 0.3750, "maximum" : 0.4167 }
        },
        {
            "index" : 75,
            "hscan" : { "minimum" : 0.0000, "maximum" : 0.0100 },
            "vscan" : { "minimum" : 0.4167, "maximum" : 0.4583 }
        },
        {
            "index" : 76,
            "hscan" : { "minimum" : 0.0000, "maximum" : 0.0100 },
            "vscan" : { "minimum" : 0.4583, "maximum" : 0.5000 }
        },
        {
            "index" : 77,
            "hscan" : { "minimum" : 0.0000, "maximum" : 0.0100 },
            "vscan" : { "minimum" : 0.5000, "maximum" : 0.5417 }
        },
        {
            "index" : 78,
            "hscan" : { "minimum" : 0.0000, "maximum" : 0.0100 },
            "vscan" : { "minimum" : 0.5417, "maximum" : 0.5833 }
        },
        {
            "index" : 79,
            "hscan" : { "minimum" : 0.0000, "maximum" : 0.0100 },
            "vscan" : { "minimum" : 0.5833, "maximum" : 0.6250 }
        },
        {
            "index" : 80,
            "hscan" : { "minimum" : 0.0000, "maximum" : 0.0100 },
            "vscan" : { "minimum" : 0.6250, "maximum" : 0.6667 }
        },
        {
            "index" : 81,
            "hscan" : { "minimum" : 0.0000, "maximum" : 0.0100 },
            "vscan" : { "minimum" : 0.6667, "maximum" : 0.7083 }
        },
        {
            "index" : 82,
            "hscan" : { "minimum" : 0.0000, "maximum" : 0.0100 },
            "vscan" : { "minimum" : 0.7083, "maximum" : 0.7500 }
        },
        {
            "index" : 83,
            "hscan" : { "minimum" : 0.0000, "maximum" : 0.0100 },
            "vscan" : { "minimum" : 0.7500, "maximum" : 0.7917 }
        },
        {
            "index" : 84,
            "hscan" : { "minimum" : 0.0000, "maximum" : 0.0100 },
            "vscan" : { "minimum" : 0.7917, "maximum" : 0.8333 }
        },
        {
            "index" : 85,
            "hscan" : { "minimum" : 0.0000, "maximum" : 0.0100 },
            "vscan" : { "minimum" : 0.8333, "maximum" : 0.8750 }
        },
        {
            "index" : 86,
            "hscan" : { "minimum" : 0.0000, "maximum" : 0.0100 },
            "vscan" : { "minimum" : 0.8750, "maximum" : 0.9167 }
        },
        {
            "index" : 87,
            "hscan" : { "minimum" : 0.0000, "maximum" : 0.0100 },
            "vscan" : { "minimum" : 0.9167, "maximum" : 0.9583 }
        },
        {
            "index" : 88,
            "hscan" : { "minimum" : 0.0000, "maximum" : 0.0100 },
            "vscan" : { "minimum" : 0.9583, "maximum" : 1.0000 }
        },
        {
            "index" : 89,
            "hscan" : { "minimum" : 0.0000, "maximum" : 0.0244 },
            "vscan" : { "minimum" : 0.9300, "maximum" : 1.0000 }
        },
        {
            "index" : 90,
            "hscan" : { "minimum" : 0.0244, "maximum" : 0.0488 },
            "vscan" : { "minimum" : 0.9300, "maximum" : 1.0000 }
        },
        {
            "index" : 91,
            "hscan" : { "minimum" : 0.0488, "maximum" : 0.0732 },
            "vscan" : { "minimum" : 0.9300, "maximum" : 1.0000 }
        },
        {
            "index" : 92,
            "hscan" : { "minimum" : 0.0732, "maximum" : 0.0976 },
            "vscan" : { "minimum" : 0.9300, "maximum" : 1.0000 }
        },
        {
            "index" : 93,
            "hscan" : { "minimum" : 0.0976, "maximum" : 0.1220 },
            "vscan" : { "minimum" : 0.9300, "maximum" : 1.0000 }
        },
        {
            "index" : 94,
            "hscan" : { "minimum" : 0.1220, "maximum" : 0.1463 },
            "vscan" : { "minimum" : 0.9300, "maximum" : 1.0000 }
        },
        {
            "index" : 95,
            "hscan" : { "minimum" : 0.1463, "maximum" : 0.1707 },
            "vscan" : { "minimum" : 0.9300, "maximum" : 1.0000 }
        },
        {
            "index" : 96,
            "hscan" : { "minimum" : 0.1707, "maximum" : 0.1951 },
            "vscan" : { "minimum" : 0.9300, "maximum" : 1.0000 }
        },
        {
            "index" : 97,
            "hscan" : { "minimum" : 0.1951, "maximum" : 0.2195 },
            "vscan" : { "minimum" : 0.9300, "maximum" : 1.0000 }
        },
        {
            "index" : 98,
            "hscan" : { "minimum" : 0.2195, "maximum" : 0.2439 },
            "vscan" : { "minimum" : 0.9300, "maximum" : 1.0000 }
        },
        {
            "index" : 99,
            "hscan" : { "minimum" : 0.2439, "maximum" : 0.2683 },
            "vscan" : { "minimum" : 0.9300, "maximum" : 1.0000 }
        },
        {
            "index" : 100,
            "hscan" : { "minimum" : 0.2683, "maximum" : 0.2927 },
            "vscan" : { "minimum" : 0.9300, "maximum" : 1.0000 }
        },
        {
            "index" : 101,
            "hscan" : { "minimum" : 0.2927, "maximum" : 0.3171 },
            "vscan" : { "minimum" : 0.9300, "maximum" : 1.0000 }
        },
        {
            "index" : 102,
            "hscan" : { "minimum" : 0.3171, "maximum" : 0.3415 },
            "vscan" : { "minimum" : 0.9300, "maximum" : 1.0000 }
        },
        {
            "index" : 103,
            "hscan" : { "minimum" : 0.3415, "maximum" : 0.3659 },
            "vscan" : { "minimum" : 0.9300, "maximum" : 1.0000 }
        },
        {
            "index" : 104,
            "hscan" : { "minimum" : 0.3659, "maximum" : 0.3902 },
            "vscan" : { "minimum" : 0.9300, "maximum" : 1.0000 }
        },
        {
            "index" : 105,
            "hscan" : { "minimum" : 0.3902, "maximum" : 0.4146 },
            "vscan" : { "minimum" : 0.9300, "maximum" : 1.0000 }
        },
        {
            "index" : 106,
            "hscan" : { "minimum" : 0.4146, "maximum" : 0.4390 },
            "vscan" : { "minimum" : 0.9300, "maximum" : 1.0000 }
        },
        {
            "index" : 107,
            "hscan" : { "minimum" : 0.4390, "maximum" : 0.4634 },
            "vscan" : { "minimum" : 0.9300, "maximum" : 1.0000 }
        },
        {
            "index" : 108,
            "hscan" : { "minimum" : 0.5366, "maximum" : 0.5610 },
            "vscan" : { "minimum" : 0.9300, "maximum" : 1.0000 }
        },
        {
            "index" : 109,
            "hscan" : { "minimum" : 0.5610, "maximum" : 0.5854 },
            "vscan" : { "minimum" : 0.9300, "maximum" : 1.0000 }
        },
        {
            "index" : 110,
            "hscan" : { "minimum" : 0.5854, "maximum" : 0.6098 },
            "vscan" : { "minimum" : 0.9300, "maximum" : 1.0000 }
        },
        {
            "index" : 111,
            "hscan" : { "minimum" : 0.6098, "maximum" : 0.6341 },
            "vscan" : { "minimum" : 0.9300, "maximum" : 1.0000 }
        },
        {
            "index" : 112,
            "hscan" : { "minimum" : 0.6341, "maximum" : 0.6585 },
            "vscan" : { "minimum" : 0.9300, "maximum" : 1.0000 }
        },
        {
            "index" : 113,
            "hscan" : { "minimum" : 0.6585, "maximum" : 0.6829 },
            "vscan" : { "minimum" : 0.9300, "maximum" : 1.0000 }
        },
        {
            "index" : 114,
            "hscan" : { "minimum" : 0.6829, "maximum" : 0.7073 },
            "vscan" : { "minimum" : 0.9300, "maximum" : 1.0000 }
        },
        {
            "index" : 115,
            "hscan" : { "minimum" : 0.7073, "maximum" : 0.7317 },
            "vscan" : { "minimum" : 0.9300, "maximum" : 1.0000 }
        },
        {
            "index" : 116,
            "hscan" : { "minimum" : 0.7317, "maximum" : 0.7561 },
            "vscan" : { "minimum" : 0.9300, "maximum" : 1.0000 }
        },
        {
            "index" : 117,
            "hscan" : { "minimum" : 0.7561, "maximum" : 0.7805 },
            "vscan" : { "minimum" : 0.9300, "maximum" : 1.0000 }
        },
        {
            "index" : 118,
            "hscan" : { "minimum" : 0.7805, "maximum" : 0.8049 },
            "vscan" : { "minimum" : 0.9300, "maximum" : 1.0000 }
        },
        {
            "index" : 119,
            "hscan" : { "minimum" : 0.8049, "maximum" : 0.8293 },
            "vscan" : { "minimum" : 0.9300, "maximum" : 1.0000 }
        },
        {
            "index" : 120,
            "hscan" : { "minimum" : 0.8293, "maximum" : 0.8537 },
            "vscan" : { "minimum" : 0.9300, "maximum" : 1.0000 }
        },
        {
            "index" : 121,
            "hscan" : { "minimum" : 0.8537, "maximum" : 0.8780 },
            "vscan" : { "minimum" : 0.9300, "maximum" : 1.0000 }
        },
        {
            "index" : 122,
            "hscan" : { "minimum" : 0.8780, "maximum" : 0.9024 },
            "vscan" : { "minimum" : 0.9300, "maximum" : 1.0000 }
        },
        {
            "index" : 123,
            "hscan" : { "minimum" : 0.9024, "maximum" : 0.9268 },
            "vscan" : { "minimum" : 0.9300, "maximum" : 1.0000 }
        },
        {
            "index" : 124,
            "hscan" : { "minimum" : 0.9268, "maximum" : 0.9512 },
            "vscan" : { "minimum" : 0.9300, "maximum" : 1.0000 }
        },
        {
            "index" : 125,
            "hscan" : { "minimum" : 0.9512, "maximum" : 0.9756 },
            "vscan" : { "minimum" : 0.9300, "maximum" : 1.0000 }
        },
        {
            "index" : 126,
            "hscan" : { "minimum" : 0.9756, "maximum" : 1.0000 },
            "vscan" : { "minimum" : 0.9300, "maximum" : 1.0000 }
        }
    ],

    /// 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" : false,
        "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" :
        [
            "/opt/hyperion/effects"
        ]
    },

    "bootsequence" :
    {
        "effect" : "Rainbow swirl fast",
        "duration_ms" : 5000
    },

    ///  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" : 41.666666666666664
    },

    /// 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" : true,
        "grabAudio" : true,
        "grabMenu" : true,
        "grabScreensaver" : true,
        "enable3DDetection" : true
    },

    /// 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
//     },

    "endOfJson" : "endOfJson"
}

im also not shure which pins i need to use

Image
Reply
  • 1
  • 4
  • 5
  • 6(current)
  • 7
  • 8
  • 9

Logout Mark Read Team Forum Stats Members Help
[Tutorial] Hyperion Ambilight on Linux and OpenELEC x641