- Added Sync groups (PR #2150)
- Added JSON API over Serial support
- Live color correction (PR #1902)
- Fixed JSON IR remote not working with codes greater than 0xFFFFFF (fixes #2135)
- Fixed transition 0 edge case
- Added application level pong websockets reply (#2139)
- Use AsyncTCP 1.0.3 as it mitigates the flickering issue from 0.13.0-b2
- Fixed transition manually updated in preset overriden by field value
- Fixed undesirable color transition from Orange to boot preset color on first boot
- Removed misleading Delete button on new playlist with one entry
- Updated NeoPixelBus to 2.6.7 and AsyncTCP to 1.1.1
- Added skinning (extra custom CSS) (PR #2084)
- Added presets/config backup/restore (PR #2084)
- Added option for using length instead of Stop LED in UI (PR #2048)
- Added custom
holidays.json
holiday list (PR #2048)
- Version bump to 0.13.0-b2 "Toki"
- Accept hex color strings in individual LED API
- Fixed transition property not applying unless power/bri/color changed next
- Moved transition field below segments (temporarily)
- Reduced unneeded websockets pushes
- Fixed presets using wrong call mode (e.g. causing buttons to send UDP under direct change type)
- Increased hue buffer
- Renamed
NOTIFIER_CALL_MODE_
toCALL_MODE_
- Busses extend total configured LEDs if required
- Fixed extra button pins defaulting to 0 on first boot
- Made Peek use the main websocket connection instead of opening a second one
- Temperature usermod fix (from @blazoncek's dev branch)
- More robust initial resource loading in UI
- Added
getJsonValue()
for usermod config parsing (PR #2061) - Fixed preset saving over websocket
- Alpha ESP32 S2 support (filesystem does not work) (PR #2067)
- Updated ArduinoJson to 6.18.1
- Improved Twinkleup effect
- Fixed preset immediately deselecting when set via HTTP API
PL=
- Restored support for "PL=~" mistakenly removed in 2106300
- JSON IR improvements
- Playlist entries are now more compact
- Added the possibility to enter negative numbers for segment offset
- Added WebSockets support to UI
- Send websockets on every state change
- Improved Aurora effect
- Added MQTT button feedback option (PR #2011)
- Added JSON IR codes (PR #1941)
- Adjusted the width of WiFi and LED settings input fields
- Fixed a minor visual issue with slider trail not reaching thumb on low values
- Fixed settings page broken by using "%" in input fields
- Fixed a problem with disabled buttons reverting to pin 0 causing conflict
- Version bump to 0.13.0-b0 "Toki"
- BREAKING: Removed preset cycle (use playlists)
- BREAKING: Removed
nl.fade
,leds.pin
andccnf
from JSON API - Added playlist editor UI
- Reordered segment UI and added offset field
- Raised maximum MQTT password length to 64 (closes #1373)
- Added Offset to segments, allows shifting the LED considered first within a segment
- Added
of
property to seg object in JSON API to set offset - Usermod settings improvements (PR #2043, PR #2045)
- Fixed preset only disabling on second effect/color change
- BREAKING: Added ability for usermods to force a config save if config incomplete.
readFromConfig()
needs to return abool
to indicate if the config is complete - Updated usermods implementing
readFromConfig()
- Auto-create segments based on configured busses
- Added 2 Ethernet boards and split Ethernet configs into separate file
- Fixed DOS on Chrome tab restore causing reboot
- Optimized JSON buffer usage (pre-serialized color arrays)
- Updated main logo
- Reduced flash usage by 0.8kB by using 8-bit instead of 32-bit PNGs for welcome and 404 pages
- Added a check to stop Alexa reporting an error if state set by macro differs from the expected state
- Added support for multiple buttons with various types (PR #1977)
- Fixed infinite playlists (PR #2020)
- Added
r
to playlist object, allows for shuffle regardless of therepeat
value - Improved accuracy of NTP time sync
- Added possibility for WLED UDP sync to sync system time
- Improved UDP sync accuracy, if both sender and receiver are NTP synced
- Fixed a cache issue with restored tabs
- Cache CORS request
- Disable WiFi sleep by default on ESP32
- No longer retain MQTT
/v
topic to alleviate storage loads on MQTT broker - Fixed Sunrise calculation (atan_t approx. used outside of value range)
- Fixed WS281x output on ESP32
- Fixed potential out-of-bounds write in MQTT
- Fixed IR pin not changeable if IR disabled
- Fixed XML API containing -1 on Manual only RGBW mode (see #888, #1783)
- Always copy MQTT payloads to prevent non-0-terminated strings
- Updated ArduinoJson to 6.18.0
- Added experimental support for
{"on":"t"}
to toggle on/off state via JSON
- Fixed possibility of non-0-terminated MQTT payloads
- Fixed two warnings regarding integer comparison
- Usermod settings page no usermods message
- Lowered min speed for Drip effect
- Fixed various Codacy code style and logic issues
- Added Usermod settings page and configurable usermods (PR #1951)
- Added experimental
/json/cfg
endpoint for changing settings from JSON (see #1944, not part of official API)
- Fixed not turning on after pressing "Off" on IR remote twice (#1950)
- Fixed OTA update file selection from Android app (TODO: file type verification in JS, since android can't deal with accept='.bin' attribute)
- Version bump to 0.12.1-b1 "Hikari"
- Release and build script improvements (PR #1844)
- Replace default TV simulator effect with the version that saves 18k of flash and appears visually identical
- Added
tb
to JSON state, allowing setting the timebase (set tb=0 to start e.g. wipe effect from the beginning). Receive only. - Slightly raised Solid mode refresh rate to work with LEDs (TM1814) that require refresh rates of at least 2fps
- Added sunrise and sunset calculation to the backup JSON time source
NUM_STRIPS
no longer required with compile-time strip defaults- Further optimizations in wled_math.h
- Added ability to add multiple busses as compile time defaults using the esp32_multistrip usermod define syntax
- Reduced memory usage by 540b by switching to a different trigonometric approximation
- Added dynamic location-based Sunrise/Sunset macros (PR #1889)
- Improved seasonal background handling (PR #1890)
- Fixed instance discovery not working if MQTT not compiled in
- Fixed Button, IR, Relay pin not assigned by default (resolves #1891)
- Added switch support (button macro is switch closing action, long press macro switch opening)
- Replaced Circus effect with new Running Dual effect (Circus is Tricolor Chase with Red/White/Black)
- Fixed ledmap with multiple segments (PR #1864)
- Fixed ESP32 crash on Drip effect with reversed segment (#1854)
- Added flag
WLED_DISABLE_BROWNOUT_DET
to disable ESP32 brownout detector (off by default)
- Allow clearing button/IR/relay pin on platforms that don't support negative numbers
- Removed AUX pin
- Hid some easter eggs, only to be found at easter
- Version bump to 0.12.0 "Hikari"
- Fixed LED settings submission in iOS app
- Version bump to 0.12.0-b5 "Hikari"
- Update to core [email protected]
- Fixed IR pin not configurable
- Version bump to 0.12.0-b4 "Hikari"
- Experimental use of [email protected]
- Fixed RGBW mode disabled after LED settings saved
- Fixed infrared support not compiled in if IRPIN is not defined
- Fixed current estimation
- Version bump to 0.12.0-b2 "Hikari"
- Worked around an issue causing a critical decrease in framerate (wled.cpp l.240 block)
- Bump to Espalexa v2.7.0, fixing discovery
- Version bump to 0.12.0-b1 "Hikari"
- More colors visible on Palette preview
- Fixed chevron icon not included
- Fixed color order override
- Cleanup
- Version bump to 0.12.0-b0 "Hikari"
- Added palette preview and search (PR #1637)
- Added Reverse checkbox for PWM busses - reverses logic level for on
- Fixed various problems with the Playlist feature (PR #1724)
- Replaced "Layer" icon with "i" icon for Info button
- Chunchun effect more fitting for various segment lengths (PR #1804)
- Removed global reverse (in favor of individual bus reverse)
- Removed some unused icons from UI icon font
- Added options for Auto Node discovery
- Optimized strings (no string both F() and raw)
- Added Auto Node discovery (PR #1683)
- Added tooltips to quick color selectors for accessibility
- Auto start field population in bus config
- Fixed incorrect over-memory indication in LED settings on ESP32
- Added destructor for BusPwm (fixes #1789)
- Fixed relay mode inverted when upgrading from 0.11.0
- Fixed no more than 2 pins per bus configurable in UI
- Changed to non-linear IR brightness steps (PR #1742)
- Fixed various warnings (PR #1744)
- Added UDP DNRGBW Mode (PR #1704)
- Added dynamic LED mapping with ledmap.json file (PR #1738)
- Added support for QuinLED-ESP32-Ethernet board
- Added support for WESP32 ethernet board (PR #1764)
- Added Caching for main UI (PR #1704)
- Added Tetrix mode (PR #1729)
- Added memory check on Bus creation
- Version bump to 0.12.0-a0 "Hikari"
- Added FPS indication in info
- Bumped max outputs from 7 to 10 busses for ESP32
- First alpha configurable multipin
- Added color transitions for all segments and slots and for segment brightness
- Fixed bug that prevented setting a boot preset higher than 25
- Replaced Red & Blue effect with Aurora effect (PR #1589)
- Fixed HTTP changing segments uncommanded (#1618)
- Updated copyright year and contributor page link
- Fixed Countdown mode
- (Hopefully actually) fixed display of usermod values in info screen
- Fixed display of usermod values in info screen
- 4 more effects now use FRAMETIME
- Remove unsupported environments from platformio.ini
- Split index.htm in separate CSS + JS files (PR #1542)
- Minify UI HTML, saving >1.5kB flash
- Fixed JShint warnings
- Boot brightness 0 will now use the brightness from preset
- Add iOS scrolling momentum (from PR #1528)
- Release of WLED 0.11.1 "Mirai"
- 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
- Bump Espalexa to 2.5.0, fixing discovery (PR Espalexa/#152, originally PR #1497)
- Added Blends FX (PR #1491)
- Fixed an issue that made it impossible to deactivate timed presets
- Added Preset ID quick display option (PR #1462)
- Fixed LEDs not turning on when using gamma correct brightness and LEDPIN 2 (default)
- Fixed notifier applying main segment to selected segments on notification with FX/Col disabled
- Fixed RGBW mode not saved between reboots (fixes #1457)
- Added brightness scaling in palette function for default (PR #1484)
- Fixed preset cycle default duration rounded down to nearest 10sec interval (#1458)
- Enabled E1.31/DDP/Art-Net in AP mode
- Fixed multi-segment preset cycle
- Fixed EEPROM (pre-0.11 settings) not cleared on factory reset
- Fixed an issue with intermittent crashes on FX change (PR #1465)
- Added function to know if strip is updating (PR #1466)
- Fixed using colorwheel sliding the UI (PR #1459)
- Fixed analog clock settings not saving (PR #1448)
- Added Temperature palette (PR #1430)
- Added Candy cane FX (PR #1445)
- UDP
parsePacket()
with sync disabled (#1390) - Added Multi RGBW DMX mode (PR #1383)
- Fixed compilation for analog (PWM) LEDs
- Release of WLED 0.11.0 "Mirai"
- Workaround for weird empty %f Espalexa issue
- Fixed crash on saving preset with HTTP API
PS
- Improved performance for color changes in non-main segment
- Added tooltips for speed and intensity sliders (PR #1378)
- Moved color order to NpbWrapper.h
- Added compile time define to override the color order for a specific range
- Add
live
property to state, allowing toggling of realtime (not incl. in state resp.) - PIO environment changes
- Version bump to 0.11.0 "Mirai"
- Improved preset name sorting
- Fixed Preset cycle not working beyond preset 16
- Fixed invalid save when modifying preset before refresh (might be related to #1361)
- Fixed brightness factor ignored on realtime timeout (fixes #1363)
- Fixed Phase and Chase effects with LED counts >256 (PR #1366)
- Fixed Brightness slider beneath color wheel not working (fixes #1360)
- Fixed invalid UI state after saving modified preset
- Added HEX color receiving to JSON API with
"col":["RRGGBBWW"]
format - Moved Kelvin color receiving in JSON API from
"col":[[val]]
to"col":[val]
format Notice: This is technically a breaking change. Since no release was made since the introduction and the Kelvin property was not previously documented in the wiki, impact should be minimal. - BTNPIN can now be disabled by setting to -1 (fixes #1237)
- Platformio.ini updates and streamlining (PR #1266)
- my_config.h custom compile settings system (not yet used for much, adapted from PR #1266)
- Added Hawaii timezone (HST)
- Linebreak after 5 quick select buttons
- Fixed RGBW saved incorrectly
- Fixed pmt caching requesting /presets.json too often
- Fixed deEEP not copying the first segment of EEPROM preset 16
- Fixed an ESP32 end-of-file issue
- Fixed strip.isRgbw not read from cfg.json
- Version bump to 0.11.0p "Mirai"
- Increased max. num of segments to 12 (ESP8266) / 16 (ESP32)
- Up to 250 presets stored in the
presets.json
file in filesystem - Complete overhaul of the Presets UI tab
- Updated iro.js to v5 (fixes black color wheel)
- Added white temperature slider to color wheel
- Add JSON settings serialization/deserialization to cfg.json and wsec.json
- Added deEEP to convert the EEPROM settings and presets to files
- Playlist support - JSON only for now
- New v2 usermod methods
addToConfig()
andreadFromConfig()
(see EXAMPLE_v2 for doc) - Added Ethernet support for ESP32 (PR #1316)
- IP addresses are now handled by the
Network
class - New
esp32_poe
PIO environment - Use EspAsyncWebserver Aircoookie fork v.2.0.0 (hiding wsec.json)
- Removed
WLED_DISABLE_FILESYSTEM
andWLED_ENABLE_FS_SERVING
defines as they are now required - Added pin manager
- UI performance improvements (no drop shadows)
- More explanatory error messages in UI
- Improved candle brightness
- Return remaining nightlight time
nl.rem
in JSON API (PR #1302) - UI sends timestamp with every command, allowing for timed presets without using NTP
- Added gamma calculation (yet unused)
- Added LED type definitions to const.h (yet unused)
- Added nicer 404 page
- Removed
NP
andMS=
macro HTTP API commands - Removed macros from Time settings
- Added the ability for the /api MQTT topic to receive JSON API payloads
- Inversed Rain direction (fixes #1147)
- Re-added previous C9 palette
- Renamed new C9 palette
- 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
- Fixed interaction of
T
andNL
HTTP API commands (#1214) - Fixed an issue where Sunrise mode nightlight does not activate if toggled on simultaneously
- Fixed MQTT bootloop (no F() macro, #1199)
- Added basic DDP protocol support
- Added Washing Machine effect (PR #1208)
- Added Loxone parser (PR #1185)
- Added support for kelvin input via
K=
HTTP and"col":[[val]]
JSON API calls Notice:"col":[[val]]
removed in build 2011200, use"col":[val]
- Added supplementary UDP socket (#1205)
- TMP2.net receivable by default
- UDP sockets accept HTTP and JSON API commands
- Fixed missing timezones (#1201)
- Fixed LPD8806 compilation
- Added support for preset cycle toggling using CY=2
- Added ESP32 touch pin support (#1190)
- Fixed modem sleep on ESP8266 (#1184)
- Increased available heap memory by 4kB
- Use F() macro for the majority of strings
- Restructure timezone code
- Restructured settings saved code
- Updated ArduinoJSON to 6.16.1
- New WLED logo on Welcome screen (#1164)
- Fixed 170th pixel dark in E1.31
- Fixed sunrise mode not reinitializing
- Fixed passwords not clearable
- New Segments are now initialized with default speed and intensity
- Fixed bootloop if mDNS is used on builds without OTA support
- Added new logo
- Maximum GZIP compression (#1126)
- Enable WebSockets by default
- Added new UI customization options to UI settings
- Added Dancing Shadows effect (#1108)
- Preset cycle is now paused if lights turned off or nightlight active
- Removed
esp01
andesp01_ota
envs from travis build (need too much flash)
- Added individual LED control support to JSON API
- Added internal Segment Freeze/Pause option
- Made
platformio_override.ini
example easier to use by including thedefault_envs
property - FastLED uses
now
as timer, so effects using e.g.beatsin88()
will sync correctly - Extended the speed range of Pacifica effect
- Improved TPM2.net receiving (#1100)
- Fixed exception on empty MQTT payload (#1101)
- Added segment mirroring to web UI
- Fixed segment mirroring when in reverse mode
- Removed verbose live mode info from
<ds>
in HTTP API response
- Fixed Auto White mode setting (fixes #1088)
- Added segment mirroring (
mi
property) (#1017) - Fixed DMX settings page not displayed (#1070)
- Fixed ArtNet multi universe and improve code style (#1076)
- Renamed global var
local
tolocalTime
(#1078)
- Fixed hostname containing illegal characters (#1035)
- Added
SV=2
to HTTP API, allow selecting single segment only
- Fix Alexa not turning off white channel (fixes #1012)
- Added Sunrise nightlight mode
- Added Chunchun effect
- Added
LO
(live override) command to HTTP API - Added
mode
tonl
object of JSON state API, deprecatingfade
- 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)
- Added five effects by Andrew Tuline (Phased, Phased Noise, Sine, Noise Pal and Twinkleup)
- Added two new effects by Aircoookie (Sunrise and Flow)
- Added US-style sequence to traffic light effect
- Merged pull request #964 adding 9 key IR remote
- Added v2 usermod API
- Added v2 example usermod
usermod_v2_example
in the usermods folder as prelimary documentation - Added DS18B20 Temperature usermod with Info page support
- Disabled MQTT on ESP01 build to make room in flash
- Fixed TPM2
- Added TPM2.NET protocol support (need to set WLED broadcast UDP port to 65506)
- Added TPM2 protocol support via Serial
- Support up to 6553 seconds preset cycle durations (backend, NOT yet in UI)
- Merged pull request #591 fixing WS2801 color order
- Merged pull request #858 adding fully featured travis builds
- Merged pull request #862 adding DMX proxy feature
- Update to Espalexa v2.4.6 (+1.6kB free heap memory)
- Added
m5atom
PlatformIO environment
- Default to ESP8266 Arduino core v2.7.1 in PlatformIO
- Fixed Preset Slot 16 always indicating as empty (#891)
- Disabled Alexa emulation by default (causes bootloop for some users)
- Added BWLT11 and SHOJO_PCB defines to NpbWrapper
- Merged pull request #898 adding Solid Glitter effect
- DMX Single RGW and Single DRGB modes now support an additional white channel
- Improved palettes derived from set colors and changed their names
- Added ACST and ACST/ACDT timezones
- Added module info page to web UI
- Added realtime override functionality to web UI
- Added individial segment power and brightness to web UI
- Added feature to one-click select single segment only by tapping segment name
- Removed palette jumping to default if color is changed
- Added realtime override option and
lor
JSON property - Added
lm
(live mode) andlip
(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
- Added brightness and power for individual segments
- Added
on
andbri
properties to Segment object in JSON API - Added
C3
anSB
commands to HTTP get API - Merged pull request #865 for 5CH_Shojo_PCB environment
- Added Candle Multi effect
- Added Palette capability to Pacifica effect
- Added TM1814 type LED defines
- Added Art-Net support
- Added OTA platform to platformio.ini
- Fixed DMX output compilation
- Added DMX start LED setting
- Fixed RBG and BGR getPixelColor (#825)
- Improved formatting
- Consolidated global variables in wled.h
- Major change of project structure from .ino to .cpp and func_declare.h
- Fixed compilation for Analog LEDs
- Fixed sync settings network port fields too small
- Fixed live preview not displaying whole light if over 255 LEDs
- Added Pacifica effect (tentative, doesn't yet support other colors)
- Added Atlantica palette
- Fixed ESP32 build of Espalexa
- Fixed Alexa Whites on non-RGBW lights (bump Espalexa to 2.4.5)
- Moved Cronixie driver from FX library to drawOverlay handler
- Added custom mapping compile define to FX_fcn.h
- Merged pull request #784 by @TravisDean: Fixed initialization bug when toggling skip first
- Added link to youtube videos by Room31 to readme
- Fixed color of main segment returned in JSON API during transition not being target color (closes #765)
- 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)
- Created changelog.md - make tracking changes to code easier
- Merged pull request #766 by @pille: Fix E1.31 out-of sequence detection