100 lines
3.2 KiB
Markdown
100 lines
3.2 KiB
Markdown
Pixelbox Firmware
|
|
=====================
|
|
## About
|
|
|
|
## Features
|
|
### LED 8x8 Field
|
|
|Topic |Descriptions |settable |Values |
|
|
|---------|--------------|:---------:|---------|
|
|
|`device_id`/pixel/pixel/|Range property from 0 - (number of pixels - 1)|yes|Color as uint32_t see [Color](#color)|
|
|
|`device_id`/pixel/pixels/|Range property from 0 - (number of pixels - 1)|yes|Color as #xxxxxx without spaces [Color](#color)|
|
|
|`device_id`/pixel/vu/|Range property from 0 - sqrt(number of pixels)-1|yes|sqrt(number of pixels) numbers, ranged 0-7
|
|
|`device_id`/pixel/color|Range property to set the effects colors 1 & 2 see: [effect colors](#effect-colors)|yes|Color as uint32_t see [Color](#color)|
|
|
|`device_id`/pixel/brightness|Sets the brightness of the pixel strip|yes|possible values: 0 - 255|
|
|
|`device_id`/pixel/effect|Set effect|yes|see: [effects](#effects)|
|
|
|`device_id`/pixel/clear|Clears the pixels strip|yes|any value is possible|
|
|
|`device_id`/pixel/length|Set the strip length|yes|Possible values: 0 - length|
|
|
|`device_id`/pixel/icon|Show the icon represented by given letter|yes|Possible values: a - Z|
|
|
|
|
## Color
|
|
To convert RGB value use the following bash code:
|
|
```shell
|
|
function rgbToColor {
|
|
echo $(( $(($1<<16)) + $(($2<<8)) + $(($3)) ));
|
|
}
|
|
|
|
function colorToRGB {
|
|
echo "Red: $(($1>>16&0xff))"
|
|
echo "Green: $(($1>>8&0xff))"
|
|
echo "Blue: $(($1&0xff))"
|
|
}
|
|
|
|
```
|
|
#### Example
|
|
RGB Value to color uint32_t
|
|
```shell
|
|
bash$ rgbToColor 155 230 32
|
|
10216992
|
|
bash$
|
|
```
|
|
uint32_t to RGB values
|
|
```shell
|
|
bash$ colorToRGB 10216992
|
|
Red: 155
|
|
Green: 230
|
|
Blue: 32
|
|
bash$
|
|
```
|
|
|
|
## Effects
|
|
* **larsonspiral**
|
|
Shows the moving larson scanner eye known form *Battlestar Galactica* and *Knight Rider*. The used effect color can be specified by *color_0*
|
|
* **randomscanner**
|
|
This is the same scanner then the scanner above but uses an alternating color pattern
|
|
* **larsonspiral**
|
|
This is the same scanner then the randomscanner above but uses a spiral pattern
|
|
* **rainbowcycle**
|
|
Shows a cycling rainbown on the LED strip
|
|
* **theaterchase**
|
|
Shows an color chasing LED strip.
|
|
You can specify the color by set *color_0* and *color_1*
|
|
* **fade**
|
|
Fades from effect color_0 to effect_color_1
|
|
* **randomfade**
|
|
Fades thru an alternating color pattern on all pixels with the same color.
|
|
* **randomfade|40**
|
|
Fades thru an alternating color pattern on all pixels with different color.
|
|
* **random**
|
|
Shows random static colors on all pixels differently.
|
|
* **smooth**
|
|
Smooth chainging effect.
|
|
* **plasma**
|
|
The all famous plasma effect known from many 8bit-Demos from the '80s and '90s.
|
|
* **none**
|
|
Stop all effects
|
|
|
|
## Effect colors
|
|
You can set to different effect colors
|
|
* *color_0* (default R: 255, G: 0 B: 0)
|
|
* *color_1* (default R: 0, G: 0 B: 255)
|
|
|
|
The effect color has to be set after the effect.
|
|
###### Example:
|
|
1. `homie/device_id/pixel/effect/set -m "fade"`
|
|
2. `homie/device_id/pixel/color_0/set -m "255"`
|
|
3. `homie/device_id/pixel/color_1/set -m "10216992"`
|
|
|
|
##### color_0
|
|
This color will be used for the following effects:
|
|
* *scanner*
|
|
* *theaterchase*
|
|
* *fade*
|
|
|
|
##### color_1
|
|
This color will be used for the following effects:
|
|
* *theaterchase*
|
|
* *fade*
|
|
|
|
##### Upload
|
|
* https://github.com/esp8266/arduino-esp8266fs-plugin/releases/tag/0.4.0
|