Permalink
Browse files

cleanup

Former-commit-id: b2dbb71
  • Loading branch information...
1 parent 8310a6d commit 04414b11b929717784bff642f9cd58090759d384 @brindosch brindosch committed May 15, 2016
@@ -1,66 +0,0 @@
-BACKGROUND
----------------------------------------------------------
-The UDP led device type can be used to send LED data over UDP packets.
-It was originally designed to support an ESP8266 Wifi module based WS2812
-LED strip controller.
-
-I've used this to support :
-- A string of 600 LEDs as xmas decorations
- The effects development kit is great for these scenarios
-
-- a 61 LED collection of concentric circles
- This has been used as a "night light" and a super lo-res
- TV
-
-In each of these cases, the hyperion-remote iOS app is a great way to
-control the effects.
-
-
-CONFIG
----------------------------------------------------------
-Simple example for devices that support a raw binary protocol.
- "device" :
- {
- "name" : "MyPi",
- "type" : "udp",
- "output" : "esp201-0.home:2391", "protocol" : 0,
- "rate" : 1000000,
- "colorOrder" : "grb"
- },
-
-
-
-If you are using an ESP8266/Arduino device with a long LED strip, you chould use this alternate protocol.
-The ESP8266/Arduino doesnt support datagram re-assembly so will never see any udp packets greater than 1450.
- "device" :
- {
- "name" : "MyPi",
- "type" : "udp",
-// "output" : "esp201-0.home:2392", "protocol" : 2, "maxpacket" : 1450,
- "rate" : 1000000,
- "colorOrder" : "rgb"
- },
-
-PROTOCOL
----------------------------------------------------------
-Simple UDP packets are sent.
-
-Packet Format protocol 0:
-3 bytes per LED as R, G, B
-
-Packet Format protocol 2:
-0: update number & 0xf;
-1: fragment of this update
-2: 1st led# of this update - high byte
-3: 1st led# of this update - low byte
-4..n 3 bytes per LED as R, G, B
-
-Packet Format protocol 3: (simple TPM2.net implementation)
-0: 0x9C
-1: 0xDA
-2: number of databytes (leds * 3) - high byte
-3: number of databytes (leds * 3) - low byte
-4: fragment number (1-255)
-5: number of fragments (1-255)
-6..n: 3 bytes per LED as R, G, B
-n+1: 0x36
Binary file not shown.
@@ -1,165 +0,0 @@
-// Automatically generated configuration file for 'Hyperion daemon'
-// Generated by: HyperCon (The Hyperion deamon configuration file builder)
-// Created with HyperCon V1.00.0 (11.03.2016)
-
-{
- /// 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, AdalightAPA102, 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.).
- ///
- /// * 'Specific for AtmoOrb:
- /// * 'transitiontime' : Set the time of transition between color of Orb (not implemented)
- /// * 'port' : Multicast UDP port
- /// * 'numLeds' : Number of leds in Orb
- /// * 'orbIds' : The Orb ids to use
- /// * 'switchOffOnBlack': Define if Orb is to switch off when black is detected
- "device" :
- {
- "name" : "MyPi",
- "type" : "atmoorb",
- "output" : "239.15.18.2",
- "transitiontime" : 0,
- "port" : 49692,
- "numLeds" : 24,
- "orbIds" : "1",
- "switchOffOnBlack" : true,
- "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" : 2.2000,
- "blacklevel" : 0.0000,
- "whitelevel" : 1.0000
- },
- "green" :
- {
- "threshold" : 0.0000,
- "gamma" : 2.2000,
- "blacklevel" : 0.0000,
- "whitelevel" : 1.0000
- },
- "blue" :
- {
- "threshold" : 0.0000,
- "gamma" : 2.2000,
- "blacklevel" : 0.0000,
- "whitelevel" : 1.0000
- }
- }
- ],
- "smoothing" :
- {
- "type" : "linear",
- "time_ms" : 100,
- "updateFrequency" : 60.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)
- /// * unknownFrameCnt : Number of frames without any detection before the border is set to 0 (default 600)
- /// * borderFrameCnt : Number of frames before a consistent detected border gets set (default 50)
- /// * maxInconsistentCnt : Number of inconsistent frames that are ignored before a new border gets a chance to proof consistency
- /// * blurRemoveCnt : Number of pixels that get removed from the detected border to cut away blur (default 1)
- /// * mode : Border detection mode (values=default,classic,osd)
- "blackborderdetector" :
- {
- "enable" : false,
- "threshold" : 0.01,
- "unknownFrameCnt" : 600,
- "borderFrameCnt" : 50,
- "maxInconsistentCnt" : 10,
- "blurRemoveCnt" : 1,
- "mode" : "default"
- },
-
- /// The configuration of the effect engine, contains the following items:
- /// * paths : An array with absolute location(s) of directories with effects
- /// * color : Set static color after boot -> set effect to "" (empty) and input the values [R,G,B] and set duration_ms NOT to 0 (use 1) instead
- /// * effect : The effect selected as 'boot sequence'
- /// * duration_ms : The duration of the selected effect (0=endless)
- /// * priority : The priority of the selected effect/static color (default=990) HINT: lower value result in HIGHER priority!
- "effects" :
- {
- "paths" :
- [
- "/opt/hyperion/effects"
- ]
- },
-
- /// The configuration of the Json server which enables the json remote interface
- /// * port : Port at which the json server is started
- "jsonServer" :
- {
- "port" : 19446
- },
-
- /// The configuration of the Proto server which enables the protobuffer remote interface
- /// * port : Port at which the protobuffer server is started
- "protoServer" :
- {
- "port" : 19447
- },
-
- /// 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.0000, "maximum" : 1.0000 },
- "vscan" : { "minimum" : 0.0000, "maximum" : 1.0000 }
- }
- ],
-
- "endOfJson" : "endOfJson"
-}
Binary file not shown.
Binary file not shown.
Binary file not shown.
@@ -1,79 +0,0 @@
-Fadecandy: Open Pixel Control Protocol
-======================================
-
-The Fadecandy Server (`fcserver`) operates as a bridge between LED controllers attached over USB, and visual effects that communicate via a TCP socket.
-
-The primary protocol supported by `fcserver` is [Open Pixel Control](http://openpixelcontrol.org), a super simple way to send RGB values over a socket. We support the standard Open Pixel Control commands, as well as some Fadecandy extensions.
-
-Socket
-------
-
-Open Pixel Control uses a TCP socket, by default on port 7890. For the best performance, remember to set TCP_NODELAY socket option.
-
-Command Format
---------------
-
-All OPC commands follow the same general format. All multi-byte values in Open Pixel Control are in network byte order, high byte followed by low byte.
-
-Channel | Command | Length (N) | Data
----------- | --------- | ---------- | --------------------------
-1 byte | 1 byte | 2 bytes | N bytes of message data
-
-Set Pixel Colors
-----------------
-
-Video data arrives in a **Set Pixel Colors** command:
-
-Byte | **Set Pixel Colors** command
------- | --------------------------------
-0 | Channel Number
-1 | Command (0x00)
-2 - 3 | Data length
-4 | Pixel #0, Red
-5 | Pixel #0, Green
-6 | Pixel #0, Blue
-7 | Pixel #1, Red
-8 | Pixel #1, Green
-9 | Pixel #1, Blue
-… | …
-
-As soon as a complete Set Pixel Colors command is received, a new frame of video will be broadcast simultaneously to all attached Fadecandy devices.
-
-Set Global Color Correction
----------------------------
-
-The color correction data (from the 'color' configuration key) can also be changed at runtime, by sending a new blob of JSON text in a Fadecandy-specific command. Fadecandy's 16-bit System ID for Open Pixel Control's System Exclusive (0xFF) command is **0x0001**.
-
-Byte | **Set Global Color Correction** command
------- | ------------------------------------------
-0 | Channel Number (0x00, reserved)
-1 | Command (0xFF, System Exclusive)
-2 - 3 | Data length (JSON Length + 4)
-4 - 5 | System ID (0x0001, Fadecandy)
-6 - 7 | SysEx ID (0x0001, Set Global Color Correction)
-8 - … | JSON Text
-
-Set Firmware Configuration
---------------------------
-
-The firmware supports some runtime configuration options. Any OPC client can send a new firmware configuration packet using this command. If the supplied data is shorter than the firmware's configuration buffer, only the provided bytes will be changed.
-
-Byte | **Set Firmware Configuration** command
------- | ------------------------------------------
-0 | Channel Number (0x00, reserved)
-1 | Command (0xFF, System Exclusive)
-2 - 3 | Data length (Configuration Length + 4)
-4 - 5 | System ID (0x0001, Fadecandy)
-6 - 7 | SysEx ID (0x0002, Set Firmware Configuration)
-8 - … | Configuration Data
-
-Current firmwares support the following configuration options:
-
-Byte Offset | Bits | Description
------------ | ------ | ------------
-0 | 7 … 4 | (reserved)
-0 | 3 | Manual LED control bit
-0 | 2 | 0 = LED shows USB activity, 1 = LED under manual control
-0 | 1 | Disable keyframe interpolation
-0 | 0 | Disable dithering
-1 … 62 | 7 … 0 | (reserved)
@@ -1 +0,0 @@
-23f1b917ec588d71521aa698edf446a2e8c0ea5d

0 comments on commit 04414b1

Please sign in to comment.