* New Effect "TV Simulator"
based on "Fake TV Light for Engineers" by Phillip Burgess https://learn.adafruit.com/fake-tv-light-for-engineers/arduino-sketch
* removed some not-used functions
...from my 1st attempt with "Phoney TV" - but this one did not look good.
* Dynamic Effect extended with a "smooth" variant
...to close#1114 / the "Dynamice fade effect" in the projects section
Co-authored-by: Aircoookie <dev.aircoookie@gmail.com>
* New Effect "TV Simulator"
based on "Fake TV Light for Engineers" by Phillip Burgess https://learn.adafruit.com/fake-tv-light-for-engineers/arduino-sketch
* removed some not-used functions
...from my 1st attempt with "Phoney TV" - but this one did not look good.
* Created new version of tv_colors.h based on 18 movies
...and some corrections
* Add include guards for tv_colors.h and disable option
Co-authored-by: cschwinne <dev.aircoookie@gmail.com>
* Add fields for customization Blynk host
Add fields to 'Sync Interfaces' for customization Blynk host.
Now you can set you own Blynk server.
All you needs its set custom host and port to local Blync server.
* Lower blynk host length (memory usage)
Co-authored-by: cschwinne <dev.aircoookie@gmail.com>
Fixed AP hide not saving (fixes#1520)
Fixed MQTT password re-transmitted to HTML
Hide Update buttons while uploading, accept .bin
Make sure AP password is at least 8 characters long
* Removed usermod Fix_unreachable_webserver
* Changed README. Added a compiler warning for ESP32
* Fix ESP32 compiling issue. Add instance ptr API.
* Updated usermods. Store config values. ESP32 fix.
* Store analog clock settings
* Rename JSON values
bring them visually more in line with the other settings
Co-authored-by: cschwinne <dev.aircoookie@gmail.com>
* Prevent UI from sliding when using sliders (#1400)
An iro.js version bump in commit 98e4ac6 changed names for the slider &
colorwheel classes which made the filter in function lock() fail.
Also it seems that not all elements of the Iro sliders & colorwheel have
appropriate classes set. Just changing the names still sometimes failed
when the user accidentally grabbed a part of the slider / colorwheel
that has no class name set.
To mitigate this, lock() now checks the events classlist for classes
starting with "Iro" as well as it's parents classlist if no "Iro" classes
were found
* Regenerate wled00/html_ui.h
* Added Temperature Palette
Added cpt-city temperature_gp palette. Palette is nice combination of blues to reds to yellows. Reduced original cpt-city palette to 18 lines to fit WLED constraints. Tested palette and it visually is consistent with original cpt-city colors and look and works in WLED.
* Update palettes.h
* Update palettes.h
...in cfg.cpp the if statement used "IRPIN" (which is consistent to all other PIN names), but on the declaration-side "IR_PIN" was used.
Changed all occurences of "IR_PIN" to "IRPIN".
RGBW leds can be individually adressed through E1.31 control.
-Added option 'Multi RGBW' to the settings
-Modified e131.cpp accordingly
-Tuned other parameters to make it work
* Alexa RGBW Support
When adding an RGBW device to Alexa and then selecting a white color tone, Alexa will send CT values to the device. Having a warm white or cold white strip should use 100% of that strip and then add the RGB colors to get either a warmer color or a colder one.
* 40 keys IR Remote
Added IR remote with 40 keys to use with RGBW stripes.
* ESU8285 flash size corrected
* ESP32 fixes for Solid RGBW
...not implemented for ESP32 yet
ESP32 Solid RGBW defines
moved from env:esp32dev to env:esp32
ESP32 Solid RGBW defines
* Update readme.md
* Update readme.md
* Update readme.md
Update readme.md
* Use different IR remotes in the settings
To turn off IR remote use "0" in the settings, use 1 to 4 for different IR remote types.
* Use 5CH solid RGB stripes
adapt the logic to use CW and WW for different CT-values
* change from Opt-Out to Opt-In for solid (analoge) RGB stripes
Changed code from #define WLED_DISABLE_ANALOG_LEDS to #define WLED_USE_ANALOG_LEDS
* DEFINES for different devices added
* order of PINs alligned to hardware
* Update readme.md
* correct initialization of variable rgb[]
* SunRise Effect
NightLight used to brighten the light combined with fading from the actual (primary) color to the secondary color
* Fixed headline
RLYPIN definition dependant on WLED_USE_ANALOG_LEDS
Corrected list-item indents (readme.md)
updated to match upstream master (briLast in wled00.ino)
* Updates to adopt to upstream master
RLYPIN definition dependant on WLED_USE_ANALOG_LEDS
Fixed headline and corrected list-item indents (readme.md)
updated to match upstream master (briLast in wled00.ino)
* Sync with upstream master
* PIO ini correction
* sync of upstream readme.md
* FX intensity slider to desaturate Color in Colorloop FX
in default intensity (128) everything looks the same, decreasing the intensity will desaturate the color towards WHITE
* PIO changes
* adjusted linker scripts, debug settings etc.
* Override script updated accordingly
* ldscriipt for 1m0 adjusted
* backup files deleted
* deletion of wled00,ino.cpp
* remove travis build from PIO
* add custom builds to PIO
...to map the releases
* removed build_type = release (as this is default)
* updated to use espressif8266@2.3.3
...instead of espressif8266@2.3.2 (both on arduino 2.6.3)
* added more options to the PIO-override.ini
* analog, too
* build only 5 envs with Travis.CI
* should be include not exclude
* YAML correction
* next YAML
* UNDO
* some effects behave wrong with strips longer then 256 LEDs
This is particular true for the effects "Phased" and "Phased Noise" as well as for "Chase Rainbow".
The reason is that in this cases 256 is divided by SEGLEN and used in the formula, but with SEGLEN greater than 256 the integer result will always be ZERO.
Platformio.ini updates and streamlining (PR #1266)
my_config.h custom compile settings system (not yet used for much, adapted from PR #1266)
Linebreak after 5 quick select buttons
This returns the number of seconds remaining in the nightlight in the
"rem" field of the nightlight ("nl") state. If there is no nightlight
active, it returns -1.
The previous code only looked for certain keywords in the topic instead of comparing it completely.
For example if mqttDeviceTopic is set to "lights/colorRGB" the MQTT interface is unusable because
the search for "/col" will always return a match and therefore any MQTT command is interpreted as
a color.
The new code checks the full topic.
- Colorful effect now supports palettes
- Added C9 2 palette (#1291)
- Improved C9 palette brightness by 12%
- Disable onboard LED if LEDs are off (PR #1245)
- Added optional status LED (PR #1264)
- Realtime max. brightness now honors brightness factor (fixes#1271)
- Updated ArduinoJSON to 6.17.0
* Disable onboard LED when LEDs are not in use
* Remove unused variable
* Only disable onboard LED if LEDPIN == LED_BUILTIN
* Change LEDPIN to LED_BUILTIN
* A separate socket for UDP api has been added. This uses the same API as HTML. Commands for Loxone were added to the API.
* html files for udp api newly generated
* codm pixel controller board configurations added to platformio.ini file
* Parser for LX/LY commands adapted. Calculation of the values corrected. Segment handling for LX/LY removed.
* Lox parser moved to own file. Lox parser added to the JSON api. Within a segment LX and LY are now supported.
* serial port removed
* F() macro added
Co-authored-by: Marius Groos <marius.groos@codm.de>
* Add touch option to button handler
* Check if touch is pressed in setup
* Add TOUCHPIN build env and override example
Co-authored-by: Aircoookie <dev.aircoookie@gmail.com>
* Allow modem sleep if power off and sleep permitted
* Only add auto modem sleep handling for ESP8266
* Add comment and remove redundant condition
Co-authored-by: Aircoookie <cschwinne@gmail.com>
* Change Temperature usermod to use async reading to avoid blocking
* Fix comparison on wait time
* Add
* Simplify logic in the loop method
* Optimize calls to minimize latency, inform user how long till first measurement
* disable usermod if sensor not found
* Added debug statements on init, update readme
* fix spelling error of celsius
* Akemi on the welcome screen
* Move style element to CSS
* Use smaller Akemi image, improve margin, rounded buttons
* New WLED logo on welcome page
Co-authored-by: cschwinne <dev.aircoookie@gmail.com>
* New Segments are now initialized with default speed and intensity
* Open releases in new tab (#1152)
* open releases in new tab
* Revert "open releases in new tab"
This reverts commit 6e3940c8eb.
* open releases in new tab
Co-authored-by: Woody <>
Co-authored-by: Woody <27882680+WoodyLetsCode@users.noreply.github.com>
* Use maximum gzip compression
* Revert extra changes
* Remove extra code used when testing brotli compression
* Remove extra space on unrelated changes
* Add segment mirror option (#1010)
* Update new pull with playlist and palette changes
* Revert "Update new pull with playlist and palette changes"
This reverts commit 9802a7c4e2.
The existing code was very buggy - a 512 channel ArtNet packet sent data to
171 LEDs, not 170. Also the second ArtNet universe was off-by-one.
The math was very confusing with so many branches. The reduces the
amount of code and amount of branching.
Tested with Resolume + my own ArtNet software + 252 LEDs for ArtNet.
Tested with LedFx for e1.31
* Use string derived from serverDescription for wifi.hostname()
The code was sending illegal hostname strings to WiFi.hostname() (which is then submitted to DHCP and often times to DNS.) A valid hostname contains only alphanumeric characters and hyphens (though it can't start with a hypen.) This change simply alters the value passed to wifi.hostname() by replacing all non alphanum chars with hyphens while ensuring the first char is never a hyphen. If the resulting hostname is empty, it uses the escapedMac value (which I'm assuming is initialized by the time this code executes.)
This change would result issue #1033
* replace string with char array
prefix wled
improve documentation
Co-authored-by: garyd9 <garyd9@hotmail.com>
Co-authored-by: Gary Dezern <gdezern@internal.youforgot.net>
- Added Sunrise nightlight mode
- Added Chunchun effect
- Added `LO` (live override) command to HTTP API
- Added `mode` to `nl` object of JSON state API, deprecating `fade`
- Added light color scheme support to web UI (click sun next to brightness slider)
- Added option to hide labels in web UI (click flame icon next to intensity slider)
- Added hex color input (click palette icon next to palette select) (resolves#506)
- Added support for RGB sliders (need to set in localstorage)
- Added support for custom background color or image (need to set in localstorage)
- Added option to hide bottom tab bar in PC mode (need to set in localstorage)
- Fixed transition lag with multiple segments (fixes#985)
- Changed Nightlight wording (resolves#940)
Replace outdated CSS in HTML by style.css import
Fix missing button double press in time settings
FIx missing meta utf-8 in WiFi and UI settings
Modify cdata.js to add an info header to the top of auto-generated files
- Added realtime override option and `lor` JSON property
- Added `lm` (live mode) and `lip` (live IP) properties to info in JSON API
- Added reset commands to APIs
- Added `json/si`, returning state and info, but no FX or Palette lists
- Added rollover detection to millis(). Can track uptimes longer than 49 days
- Attempted to fix Wifi issues with Unifi brand APs
output a configurable universe (E1.31 or ArtNet) via MAX485 module that connects its DI to D4 on d1_mini.
as this function competes with DMX output for the same hardware, the universe to proxy acts as a switch.
0 = DMX OUTPUT (of configured WLED LEDs, which is the classic behaviour)
1-63999 = DMX PROXY (selected universe, ArtNet is limited up to 32768)
Fixed color of main segment returned in JSON API during transition not being target color
- Fixed arlsLock() being called after pixels set in E1.31, (closes#772)
- Fixed HTTP API calls not having an effect if no segment selected (now applies to main segment)