* remove analog LED flicker
run SetRgbwPwm from main loop and with GetPixelColor(0) to get all effects using fade_out() working.
* correct unintended bitwise AND to logical AND
* Update analogLastShow
* new Arduino Core WaveForm library included
* new Arduino Core only for 8266
* correct formating + define for MQTT_KEEP_ALIVE
* fix for ESP32
* reduce scope of variable "done"
* call analogWrite only if Color or Bri did change
* Remove duplicate wifi sleep code
Co-authored-by: Aircoookie <cschwinne@gmail.com>
Enable intensity slider for the Effects based on "police_base"
the intensity slider controls the width of the "dot" from 1 pixel (as now) to 64 pixels.
DISABLED: don't act on packets
SINGLE_RGB: treat all LEDs the same and controll them using 3 channels: RGB
SINGLE_DRGB: as above, but has an additional first channel for Dimmer
EFFECT: not a realtime mode. disables fadeTransition to reduce delay. just exposes parameters as 11 channels to trigger effects locally: Dimmer Effect Speed Intensity Palette PriRed PriGreen PriBlue SecRed SecGreen SecBlue
MULTIPLE_RGB: legacy mode. address each LED individually with 3 channels: RGB.
MULTIPLE_DRGB as above, but has an additional first channel for master Dimmer
add client stats (IP + user agent)
add support for DMX address (so you don't need a whole universe per fixture)
skip out-of-order packets
from 0 to 100 the strip will get color(0) starting at the ESP, from 200 to 100 to strip will do it the other way around.
So, when using this effect for the staircase usermod, a person entering area near the ESP would set an intensity starting with 1 and getting bigger and leaving on the other side would need to further increase the intensity until 200. then the strip has color(1) again.
The speed slider defines the "size" of pixels that will be added or substracted each refresh. If this size is bigger than the last value and you quickly move the intensity slider to zero, then the effect shows 100% all the time until it will be changed.