// Hyperion configuration { /// 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', 'test' and /// 'none') /// * 'output' : The output specification depends on selected device /// - 'ws2801' this is the device (eg '/dev/spidev0.0') /// - 'test' this is the file used to write test output (eg /// '/home/pi/hyperion.out') /// * 'rate' : The baudrate of the output to the device (only applicable for 'ws2801') "device" : { "name" : "MyPi", "type" : "ws2801", "output" : "/dev/spidev0.0", "rate" : 1000000 }, /// Color manipulation configuration used to tune the output colors to specific surroundings. /// Contains the following fields: /// * '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) "color" : { "hsv" : { "saturationGain" : 1.2, "valueGain" : 1.5 }, "red" : { "threshold" : 0.1, "gamma" : 2.0, "blacklevel" : 0.0, "whitelevel" : 1.0 }, "green" : { "threshold" : 0.1, "gamma" : 2.0, "blacklevel" : 0.0, "whitelevel" : 1.0 }, "blue" : { "threshold" : 0.1, "gamma" : 2.0, "blacklevel" : 0.0, "whitelevel" : 1.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" : 47.0588, "maximum" : 52.9412 }, "vscan" : { "minimum" : 0, "maximum" : 10 } }, { "index" : 1, "hscan" : { "minimum" : 41.1765, "maximum" : 47.0588 }, "vscan" : { "minimum" : 0, "maximum" : 10 } }, { "index" : 2, "hscan" : { "minimum" : 35.2941, "maximum" : 41.1765 }, "vscan" : { "minimum" : 0, "maximum" : 10 } }, { "index" : 3, "hscan" : { "minimum" : 29.4118, "maximum" : 35.2941 }, "vscan" : { "minimum" : 0, "maximum" : 10 } }, { "index" : 4, "hscan" : { "minimum" : 23.5294, "maximum" : 29.4118 }, "vscan" : { "minimum" : 0, "maximum" : 10 } }, { "index" : 5, "hscan" : { "minimum" : 17.6471, "maximum" : 23.5294 }, "vscan" : { "minimum" : 0, "maximum" : 10 } }, { "index" : 6, "hscan" : { "minimum" : 11.7647, "maximum" : 17.6471 }, "vscan" : { "minimum" : 0, "maximum" : 10 } }, { "index" : 7, "hscan" : { "minimum" : 5.88235, "maximum" : 11.7647 }, "vscan" : { "minimum" : 0, "maximum" : 10 } }, { "index" : 8, "hscan" : { "minimum" : 0, "maximum" : 5.88235 }, "vscan" : { "minimum" : 0, "maximum" : 10 } }, { "index" : 9, "hscan" : { "minimum" : 0, "maximum" : 10 }, "vscan" : { "minimum" : 10, "maximum" : 20 } }, { "index" : 10, "hscan" : { "minimum" : 0, "maximum" : 10 }, "vscan" : { "minimum" : 20, "maximum" : 30 } }, { "index" : 11, "hscan" : { "minimum" : 0, "maximum" : 10 }, "vscan" : { "minimum" : 30, "maximum" : 40 } }, { "index" : 12, "hscan" : { "minimum" : 0, "maximum" : 10 }, "vscan" : { "minimum" : 40, "maximum" : 50 } }, { "index" : 13, "hscan" : { "minimum" : 0, "maximum" : 10 }, "vscan" : { "minimum" : 50, "maximum" : 60 } }, { "index" : 14, "hscan" : { "minimum" : 0, "maximum" : 10 }, "vscan" : { "minimum" : 60, "maximum" : 70 } }, { "index" : 15, "hscan" : { "minimum" : 0, "maximum" : 10 }, "vscan" : { "minimum" : 70, "maximum" : 80 } }, { "index" : 16, "hscan" : { "minimum" : 0, "maximum" : 10 }, "vscan" : { "minimum" : 80, "maximum" : 90 } }, { "index" : 17, "hscan" : { "minimum" : 0, "maximum" : 5.88235 }, "vscan" : { "minimum" : 90, "maximum" : 100 } }, { "index" : 18, "hscan" : { "minimum" : 5.88235, "maximum" : 11.7647 }, "vscan" : { "minimum" : 90, "maximum" : 100 } }, { "index" : 19, "hscan" : { "minimum" : 11.7647, "maximum" : 17.6471 }, "vscan" : { "minimum" : 90, "maximum" : 100 } }, { "index" : 20, "hscan" : { "minimum" : 17.6471, "maximum" : 23.5294 }, "vscan" : { "minimum" : 90, "maximum" : 100 } }, { "index" : 21, "hscan" : { "minimum" : 23.5294, "maximum" : 29.4118 }, "vscan" : { "minimum" : 90, "maximum" : 100 } }, { "index" : 22, "hscan" : { "minimum" : 29.4118, "maximum" : 35.2941 }, "vscan" : { "minimum" : 90, "maximum" : 100 } }, { "index" : 23, "hscan" : { "minimum" : 35.2941, "maximum" : 41.1765 }, "vscan" : { "minimum" : 90, "maximum" : 100 } }, { "index" : 24, "hscan" : { "minimum" : 41.1765, "maximum" : 47.0588 }, "vscan" : { "minimum" : 90, "maximum" : 100 } }, { "index" : 25, "hscan" : { "minimum" : 47.0588, "maximum" : 52.9412 }, "vscan" : { "minimum" : 90, "maximum" : 100 } }, { "index" : 26, "hscan" : { "minimum" : 52.9412, "maximum" : 58.8235 }, "vscan" : { "minimum" : 90, "maximum" : 100 } }, { "index" : 27, "hscan" : { "minimum" : 58.8235, "maximum" : 64.7059 }, "vscan" : { "minimum" : 90, "maximum" : 100 } }, { "index" : 28, "hscan" : { "minimum" : 64.7059, "maximum" : 70.5882 }, "vscan" : { "minimum" : 90, "maximum" : 100 } }, { "index" : 29, "hscan" : { "minimum" : 70.5882, "maximum" : 76.4706 }, "vscan" : { "minimum" : 90, "maximum" : 100 } }, { "index" : 30, "hscan" : { "minimum" : 76.4706, "maximum" : 82.3529 }, "vscan" : { "minimum" : 90, "maximum" : 100 } }, { "index" : 31, "hscan" : { "minimum" : 82.3529, "maximum" : 88.2353 }, "vscan" : { "minimum" : 90, "maximum" : 100 } }, { "index" : 32, "hscan" : { "minimum" : 88.2353, "maximum" : 94.1176 }, "vscan" : { "minimum" : 90, "maximum" : 100 } }, { "index" : 33, "hscan" : { "minimum" : 94.1176, "maximum" : 100 }, "vscan" : { "minimum" : 90, "maximum" : 100 } }, { "index" : 34, "hscan" : { "minimum" : 90, "maximum" : 100 }, "vscan" : { "minimum" : 80, "maximum" : 90 } }, { "index" : 35, "hscan" : { "minimum" : 90, "maximum" : 100 }, "vscan" : { "minimum" : 70, "maximum" : 80 } }, { "index" : 36, "hscan" : { "minimum" : 90, "maximum" : 100 }, "vscan" : { "minimum" : 60, "maximum" : 70 } }, { "index" : 37, "hscan" : { "minimum" : 90, "maximum" : 100 }, "vscan" : { "minimum" : 50, "maximum" : 60 } }, { "index" : 38, "hscan" : { "minimum" : 90, "maximum" : 100 }, "vscan" : { "minimum" : 40, "maximum" : 50 } }, { "index" : 39, "hscan" : { "minimum" : 90, "maximum" : 100 }, "vscan" : { "minimum" : 30, "maximum" : 40 } }, { "index" : 40, "hscan" : { "minimum" : 90, "maximum" : 100 }, "vscan" : { "minimum" : 20, "maximum" : 30 } }, { "index" : 41, "hscan" : { "minimum" : 90, "maximum" : 100 }, "vscan" : { "minimum" : 10, "maximum" : 20 } }, { "index" : 42, "hscan" : { "minimum" : 94.1176, "maximum" : 100 }, "vscan" : { "minimum" : 0, "maximum" : 10 } }, { "index" : 43, "hscan" : { "minimum" : 88.2353, "maximum" : 94.1176 }, "vscan" : { "minimum" : 0, "maximum" : 10 } }, { "index" : 44, "hscan" : { "minimum" : 82.3529, "maximum" : 88.2353 }, "vscan" : { "minimum" : 0, "maximum" : 10 } }, { "index" : 45, "hscan" : { "minimum" : 76.4706, "maximum" : 82.3529 }, "vscan" : { "minimum" : 0, "maximum" : 10 } }, { "index" : 46, "hscan" : { "minimum" : 70.5882, "maximum" : 76.4706 }, "vscan" : { "minimum" : 0, "maximum" : 10 } }, { "index" : 47, "hscan" : { "minimum" : 64.7059, "maximum" : 70.5882 }, "vscan" : { "minimum" : 0, "maximum" : 10 } }, { "index" : 48, "hscan" : { "minimum" : 58.8235, "maximum" : 64.7059 }, "vscan" : { "minimum" : 0, "maximum" : 10 } }, { "index" : 49, "hscan" : { "minimum" : 52.9412, "maximum" : 58.8235 }, "vscan" : { "minimum" : 0, "maximum" : 10 } } ], /// The boot-sequence configuration, contains the following items: /// * type : The type of the boot-sequence ('rainbow', 'knight_rider', 'none') /// * duration_ms : The length of the boot-sequence [ms] "bootsequence" : { "type" : "rainbow", "duration_ms" : 3000 }, /// 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 }, /// 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 }, /// 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 } }