Commit Graph

336 Commits

Author SHA1 Message Date
Blaž Kristan
8af445e72b Merge branch 'master' into merge-master 2022-02-22 10:42:00 +01:00
cschwinne
44739c5198 Merge effectChanged and colorChanged to stateChanged 2022-02-21 22:12:13 +01:00
Blaz Kristan
41b6f3ffa7 Merge branch 'master' into merge-master 2022-02-20 22:24:11 +01:00
Christian Schwinne
7138e891be
Add per-segment light capability info (#2552)
* Add per-segment light capability info

* Fix duplication

* Change to more lightweight seglc array

* Added segment capabilities.

* Differs and capabilities refactoring

* Add back selection differs option

Co-authored-by: Blaz Kristan <blaz@kristan-sp.si>
2022-02-20 00:20:22 +01:00
Blaz Kristan
d7dac57a07 Save a bit of RAM and flash. 2022-02-19 20:34:37 +01:00
cschwinne
613809c2af Do not turn rpt segments off 2022-02-16 23:54:14 +01:00
cschwinne
7b969bb8c2 Various state changed logic simplifications
Changed main segment, must be selected
2022-02-16 21:12:33 +01:00
Blaz Kristan
cd1765a0f3 Added permanent ledmap 0. 2022-02-11 14:43:15 +01:00
Blaz Kristan
5c744ad9aa Ledamp dropdown. 2022-02-10 23:14:48 +01:00
Blaz Kristan
2da14e5b2a Merge branch 'master' into merge-master 2022-02-04 16:29:39 +01:00
cschwinne
97f8eea302 Refactored isRgbw to hasWhiteChannel() 2022-02-04 13:28:00 +01:00
cschwinne
04d5932252 Un-F()-ed some strings
(that were either occuring at least 4 times, or were F()-ed in some places and not in others)
2022-02-04 10:10:37 +01:00
Blaz Kristan
52f0ae9350 Merge branch 'master' into master-merge
Few UI fixes.
2022-02-03 17:40:44 +01:00
Blaz Kristan
09bcf34050 Non-effect preset should not unload playlist. 2022-02-02 20:53:16 +01:00
Christian Schwinne
795c515999
Merge pull request #2517 from ChuckMash/serial+
Extend Serial functions. Baudrate changeable during runtime and fast LED data retrieval
2022-02-01 20:07:30 +01:00
cschwinne
32286888e5 PinManager, cleanup and tmp2 out 2022-02-01 18:21:30 +01:00
Christian Schwinne
565d8d8f04
Binary Websockets for Peek (#2516)
* Binary Websockets for Peek

* No IRAM_ATTR here

* Use builtin LittleFS for all ESP32 builds

* Attempt LittleFS compilation fix

* Use tasmota zip for all ESP32 builds

* Revert to Arduino Core 1 for the time being
2022-02-01 12:02:04 +01:00
Blaz Kristan
d31271fee3 Minor fixes:
- optimized setPixelSegment()
- moved extractModeName() to util.cpp
- optimized extractModeName()
- removed SR extensions from /json/effects endpoint (compatibility estabished)
2022-01-31 20:35:11 +01:00
Blaz Kristan
be8a9ae73b setPixelSegment() optimization 2022-01-31 17:56:21 +01:00
Blaz Kristan
599c7919ce Merge branch 'master' into dev 2022-01-27 21:15:35 +01:00
Blaz Kristan
778b601cd5 Playlist bugfix. 2022-01-27 21:01:03 +01:00
Blaz Kristan
3170fa2208 Playlist bugfix. 2022-01-27 21:00:43 +01:00
cschwinne
2c5eba335f Added white channel to Peek (closes #1716) 2022-01-26 13:26:57 +01:00
Blaz Kristan
86092541ed Merge branch 'master' into dev 2022-01-25 17:53:22 +01:00
Blaž Kristan
7f6adfa331 Converted indentation tabs to spaces. 2022-01-25 12:47:14 +01:00
cschwinne
5f0b102671 Send segment ID, start, stop, and cct 2022-01-24 18:31:05 +01:00
cschwinne
d28eb6ae21 Repeat other seg than 0 bugfix 2022-01-24 16:44:47 +01:00
Blaz Kristan
b0c40e1e37 Color change tracking. Minor fixes. 2022-01-15 21:15:37 +01:00
Blaz Kristan
e54819e7e5 Merge branch 'master' into sync-seg 2022-01-15 14:08:08 +01:00
Blaz Kristan
7eb029dcb6 Complete segment syncing.
Reduced complexity of colorUpdated regarding effect/color change.
Minor optimizations.
2022-01-15 14:04:16 +01:00
Blaž Kristan
1ab555b590 Cleaning colorUpdated() & UDP segment syncing.
Added selected segments only save.
2022-01-14 14:27:11 +01:00
cschwinne
7fb46cf982 WIP: Segment loop size byte 2022-01-09 14:16:07 +01:00
Blaz Kristan
e8b2d80037 Minor code optimizations. 2022-01-02 14:27:24 +01:00
Blaz Kristan
8386b9a0b4 Removed dynamic JSON buffer entirely.
Temporary presets in RAM (ESP32)
Async loading of presets (stability).
Other minor fixes.
Bumped version to 0.13.1-bl6
2022-01-01 12:52:50 +01:00
Christian Schwinne
754682577c
Configurable framerate (#2444)
Updated arduino core versions
Better performance on esp32 core 3.x due to IRAM_ATTR
Fixed analog busses init to full white/on
2021-12-30 01:48:27 +01:00
Blaz Kristan
eac5340b03 Merge branch 'configurable-fps' of https://github.com/aircoookie/WLED into dev 2021-12-26 11:59:22 +01:00
cschwinne
549dcd32ca Configurable framerate
Updated arduino core versions
Better performance on esp32 core 3.x due to IRAM_ATTR
Fixed analog busses init to full white/on
2021-12-25 01:30:27 +01:00
Blaž Kristan
b890b5f0dc millis() rollover fix for effects 2021-12-20 11:29:03 +01:00
Blaz Kristan
1270f2d577 Sync segment options.
Freeze effect.
Repeat last segment until end.
2021-12-17 20:33:48 +01:00
Blaz Kristan
80a067806d Spacing & grouping notification. 2021-12-17 17:36:12 +01:00
Blaz Kristan
f20065f546 Notification & UI fix 2021-12-17 17:29:39 +01:00
Blaz Kristan
156b499f93 Merge branch 'master' of https://github.com/aircoookie/WLED into dev 2021-12-07 17:18:38 +01:00
Christian Schwinne
66bad2b6f8
Single json buffer (#2336)
* Single/static JSON buffer for all requests.

* Missing json.cpp changes.

* Async fix.

* Added conditional compile (WLED_USE_DYNAMIC_JSON).

* Advanced locking with time-out.

* Missing releaseJSONBufferLock() on error response.

* Fix for config saving.

* Fixes and optimisations.
Dadded debugging information.

* Fix for ledmaps.

* No unsolicited serial sending if GPIO1 allocated

* Stray semicolons

* Fix JSON ledmap

Co-authored-by: Blaz Kristan <blaz@kristan-sp.si>
2021-12-04 01:05:01 +01:00
cschwinne
cadda12371 Fixed spacing LEDs not blanked if offset is changed 2021-12-02 00:52:36 +01:00
cschwinne
a643b56555 Fixed no color updated on full JSON state request 2021-12-01 23:03:30 +01:00
Blaž Kristan
aa34df7a4c Merge branch 'master' of https://github.com/Aircoookie/WLED into new-CCT 2021-12-01 14:51:45 +01:00
cschwinne
11c7ffad4e Alexa and UDP sync CCT support 2021-11-28 04:01:58 +01:00
cschwinne
1973424e05 Remove JSON ledmap
(to be implemented in #2336 )
2021-11-28 01:27:51 +01:00
Christian Schwinne
16d97d3c63
Merge branch 'master' into CCT-support 2021-11-28 01:21:57 +01:00
cschwinne
3e6728fedb Only do auto white calc for busses with white channel
Revert auto white to global setting
Rounded /settings buttons by blazoncek
Removed obsolete script from /settings
2021-11-28 01:21:17 +01:00
Blaz Kristan
fcfb73c755 Merge branch 'master' into dev 2021-11-27 15:05:32 +01:00
cschwinne
624993fc89 CCT transitions 2021-11-27 01:33:48 +01:00
cschwinne
ba8a00764a cctFromRgb option 2021-11-26 20:18:38 +01:00
Blaž Kristan
49f79a331c Allow different 1st segment. 2021-11-26 09:39:49 +01:00
Blaz Kristan
ac0a853030 Optimised autosegments. 2021-11-25 22:17:40 +01:00
Blaz Kristan
e8ae4e76a3 CRLF fix. 2021-11-25 22:05:16 +01:00
Blaz Kristan
c73b098f30 Autocreate identical segments. 2021-11-25 22:04:05 +01:00
cschwinne
ea0f37f5b9 CCT bus manager logic simplification
CCT from RGB if none set (-1)
2021-11-24 11:02:25 +01:00
Blaz Kristan
20d03cb817 Incrementing & random effect, palette via JSON API
Moved utility functions to util.cpp
2021-11-23 20:20:19 +01:00
Blaz Kristan
97b3c3db7b Incrementing & random effects, palettes via JSON. 2021-11-23 20:05:51 +01:00
cschwinne
b97b6dc144 Remove F macro for "ps" 2021-11-23 13:17:33 +01:00
Blaz Kristan
b07bbab069 Merge branch 'master' into dev
Retained GPIO16 as default on ESP32.
2021-11-22 22:50:26 +01:00
cschwinne
80a657965e Fixed preset cycle not working from preset called by UI 2021-11-22 21:41:04 +01:00
Blaz Kristan
856c8aa611 Bugfix for effect names. 2021-11-20 18:28:59 +01:00
Blaz Kristan
be8db602b8 New endpoint for UI slider control (WLED-SR ext.)
Minor UX optimizations.
2021-11-20 12:26:04 +01:00
Blaz Kristan
7871e868a9 Stupid bugfix. 2021-11-19 22:16:08 +01:00
Blaz Kristan
108fc4a0d8 Pin manager enhancements (sharing I2C pins).
Effect helpers in UI.
2021-11-19 21:49:23 +01:00
Christian Schwinne
0465298507
Merge branch 'master' into CCT-support 2021-11-18 16:50:24 +01:00
Blaz Kristan
65ac8d4b2b Merge branch 'master' into dev 2021-11-17 21:42:27 +01:00
cschwinne
bc403440ba 0.13.0-b5 2021-11-17 01:18:19 +01:00
Blaz Kristan
312cbc86e9 Bugfix.
Debugging info added.
2021-11-14 16:56:34 +01:00
Blaz Kristan
85ded6e500 Advanced locking with time-out.
Bugfixes.
2021-11-12 23:33:10 +01:00
Blaz Kristan
e9ac20a149 Merge branch 'master' into dev 2021-11-09 21:27:58 +01:00
cschwinne
83753a5f81 Fixed no gamma correction for JSON individual LED control 2021-11-09 17:50:29 +01:00
Blaz Kristan
f8da8f6929 Added conditional compile for dynamic JSON buffer.
- WLED_USE_DYNAMIC_JSON
Minor fixes.
2021-11-07 11:58:16 +01:00
Blaz Kristan
b93d72296c Async response bugfix. 2021-11-05 23:00:38 +01:00
Blaz Kristan
d590e01a58 Merge branch 'master' into CCT-support 2021-11-05 21:27:52 +01:00
Blaž Kristan
5cf26af9f0 Merge branch 'dev' into single-doc 2021-11-04 10:05:02 +01:00
Blaž Kristan
04c9646e05 Merge branch 'master' into dev 2021-11-04 10:04:21 +01:00
Blaz Kristan
67bf1a93e4 Removed dynamic dependency. 2021-11-03 22:47:34 +01:00
Blaz Kristan
c263f11170 Merge branch 'dev' into single-doc 2021-11-03 19:57:52 +01:00
Blaz Kristan
bb4c646714 Bugfix.
Added Enabled option to 4LD usermod.
2021-11-03 18:01:13 +01:00
Blaž Kristan
bd521f858e Single JSON buffer. 2021-11-03 14:52:22 +01:00
Blaž Kristan
f66fcfbe6d Minor change in handling mode names. 2021-11-03 12:08:29 +01:00
Blaž Kristan
10fc9fe268 Updated usermods for WLED-SR FX mode names. 2021-11-02 13:12:14 +01:00
Blaz Kristan
cc7d745ce6 Adopted WLED-SR slider, color & palette control.
Added "freeze" toggle to a stopwatch icon.
2021-10-31 15:52:41 +01:00
Christian Schwinne
7e1920dc4b
Remove ledCount (#2300)
Bus initialization on reading from eeprom
2021-10-31 11:57:41 +01:00
Christian Schwinne
00238247cd
JSON in/decrementing (#2258)
* Initial JSON in/decrementing

* Segment brightness in/decrement

* Update json-increment (#2290)

* Add Basic Overlay support to Usermods.

* Add seven segment overlay usermod

* Add seven_seg debug build

* Add scrolling message to seven seg um

* Fixed red color on IP address

* bh1750

* Add msg scroll. Add MQTT and Config support

* Add readme

* Restore platformio.inii

* Edit comments

* Add strip off refresh option in LED settings. (#2259)

* Add strip off refresh option in LED settings.
New strip initialization logic.
Minor code clen-up.

* Dev code removal.

* Missing ethernet include

* Renamed mainseg to selseg

* Fix for preset cycling bounds.

* "Preset 0" bugfix.

* Auto segments only if segments were not modified

Co-authored-by: cschwinne <dev.aircoookie@gmail.com>

* Exclude virtual busses from current calculation (#2262)

* Refactor string usage

* 0.13.0-b4

* Fix MQTT Null publish

* Additional Flash string concat

* Add AKST/AKDT

* UM RGB-Rotary-Encoder: Properly used PinOwner

* Cycling bugfix.

Co-authored-by: Gregory Schmidt <gregory.b.schmidt@hotmail.com>
Co-authored-by: Blaž Kristan <blaz@kristan-sp.si>
Co-authored-by: Caleb Mah <calebmah@gmail.com>
Co-authored-by: ezcGman <ich@andy-hofmann.com>

* Working JSON preset cycle

* Fix some Codacy style issues

Co-authored-by: Gregory Schmidt <gregory.b.schmidt@hotmail.com>
Co-authored-by: Blaž Kristan <blaz@kristan-sp.si>
Co-authored-by: Caleb Mah <calebmah@gmail.com>
Co-authored-by: ezcGman <ich@andy-hofmann.com>
2021-10-30 14:42:17 +02:00
Blaz Kristan
a696afaeb8 Color mangling macros.
Removed legacy Auto White caclulation.
2021-10-26 20:35:45 +02:00
Blaz Kristan
cde497c94e Fixing conflict merge errors. 2021-10-26 06:29:49 +02:00
Blaz Kristan
090e29effd Moved auto white calculation to bus manager.
Other minor fixes.
2021-10-25 20:15:42 +02:00
Blaz Kristan
b8013a57e2 Moved auto white calcualtion into bus manager. 2021-10-24 21:07:05 +02:00
Blaz Kristan
31bf615fe8 Playlist bugfix. 2021-10-22 21:31:03 +02:00
Blaz Kristan
1cf793233f Removed experimental v2 segment API.
Bugfix for white value.
2021-10-21 21:33:26 +02:00
Blaz Kristan
c2e6d1c6bf Squashed commit of the white-balance branch.
Updated simple UI.
Minor change in ST7789 display.
2021-10-16 15:13:30 +02:00
Blaž Kristan
5714578783 Refactoring & code clean-up.
- utility functions
- network functions
- math functions
2021-10-11 14:13:34 +02:00
Blaz Kristan
e682fd07cb Reverted currentPlaylist. 2021-10-07 15:41:30 +02:00
Blaz Kristan
9f230ae339 RAM optimizations:
- changed int16_t to byte for currentPreset and currentPlaylist
- removed presetCycXxxxx variables
2021-10-06 18:43:12 +02:00
cschwinne
6ddcba8917 Change currentPreset to byte
JSON API still returns -1 for no preset
2021-10-03 13:53:37 +02:00
Blaž Kristan
6db2240f8a Merge branch 'master' into dev
(mostly ignored index.js)
2021-09-22 06:58:49 +02:00
cschwinne
baf49b88f4 Semi-working segment on/off transition 2021-09-20 21:22:04 +02:00
Blaz Kristan
bc6652f443 Segment names fixes.
Minor UI changes:
 - new font
 - removed transition
2021-09-18 13:15:19 +02:00
cschwinne
c5eac298e6 Do not delete name if segment bounds are unchanged 2021-09-18 01:20:17 +02:00
cschwinne
bc18eda336 Segment name UI changes
Text field accessible by edit icon
Replaced magnifier with iconfont
Use woff2 font format
Fix scaled checkboxes visible in UI settings header
2021-09-18 00:31:39 +02:00
Blaz Kristan
95518f1948 Fix for incorrect memory de-allocation. 2021-09-12 12:33:23 +02:00
cschwinne
c8610b8ad2 Small improvements to segment names 2021-09-12 01:15:51 +02:00
Blaz Kristan
4d89ed701d FX optimisations.
Added segment names.
2021-09-08 23:10:54 +02:00
Blaž Kristan
b481c13829
Sync groups (#2150)
* Added UDP sync groups.

* Shortened string.

* Changed sync default to group 1 only.

* Make packets with version < 9 group 1

* Send sync group options as bytes, parse in JS

Co-authored-by: cschwinne <dev.aircoookie@gmail.com>
2021-08-25 16:39:12 +02:00
Blaz Kristan
84d0c17c4b Compile warnings eliminated.
Minor typo.
DEBUG_PRINTF fix for 8266
2021-08-24 21:35:47 +02:00
Blaz Kristan
f921d9a1f8 Added UDP sync groups. 2021-08-21 12:28:22 +02:00
Blaz Kristan
dcfbf2b154 Simplified UI and general UI polishing (CSS, HTML & JS).
Boot transition fix.
Local storage invalidation when uploading presets.json.
2021-08-10 17:11:17 +02:00
Blaz Kristan
392df6ba72 Added missing ir.json error type.
Hopefully fix for WS virtual disconnects.
WS debugging info.
2021-07-25 22:44:26 +02:00
Blaž Kristan
0e1ad39ede Merge branch 'master' into dev 2021-07-14 13:43:42 +02:00
cschwinne
123bd0bb92 v0.13.0-b2
Reduced unneeded websockets pushes
2021-07-11 02:38:31 +02:00
Blaz Kristan
b0cfcb1999 Merge branch 'master' into dev 2021-07-10 17:01:20 +02:00
cschwinne
6a8ed1192f Accept hex color strings in individual LED API
Version bump to 0.13.0-b2 "Toki"
Fixed transition property not applying unless power/bri/color changed next
Moved transition field below segments (temporarily)
2021-07-10 16:14:17 +02:00
cschwinne
a17f83cedd Renamed NOTIFIER_CALL_MODE_ to CALL_MODE_ 2021-07-09 18:54:28 +02:00
cschwinne
2c6850f6e4 Fixed presets using wrong call mode (e.g. causing buttons to send UDP under direct change type)
Increased hue buffer
2021-07-09 18:42:52 +02:00
Blaz Kristan
34c8f33c3c Bugfix WS saving preset. 2021-07-07 16:55:22 +02:00
Blaz Kristan
8769234e28 Merge branch 'master' into dev 2021-07-04 15:29:46 +02:00
cschwinne
1bb7e36a65 More compact playlist entries 2021-07-04 00:55:32 +02:00
Blaz Kristan
3066a142b8 Merge branch 'master' into dev
Minor tweaks.
2021-07-03 21:27:06 +02:00
cschwinne
dc01c907f1 Send websockets on every state change 2021-07-02 00:24:14 +02:00
Blaž Kristan
9f885407f5 Merge branch 'master' into dev 2021-07-01 13:24:48 +02:00
cschwinne
200960899e Removed preset cycle 2021-06-30 01:48:38 +02:00
cschwinne
7233c55428 Segment Offset 2021-06-30 00:45:36 +02:00
Blaz Kristan
14ac66ff4e Minor optimisations.
Removed all traces of v2 JSON API.
2021-06-19 23:16:40 +02:00
Blaz Kristan
75bf758042 Incerased max segments.
Removed v2 JSON API.
Replaced col[] array handling.
Settings UI optimisations.
Increased DEBUG output period to 60s.
2021-06-19 18:06:30 +02:00
cschwinne
1539e703e9 Use sprintf_P for color array generation 2021-06-19 11:13:05 +02:00
Blaz Kristan
3acc521741 Bugfix for ESP8266 saving segments. 2021-06-18 12:16:04 +02:00
cschwinne
dfdb22f584 Optimized JSON buffer usage (pre-serialized color arrays) 2021-06-17 19:46:18 +02:00
Blaz Kristan
b7fb9e182b WLED_USE_PSRAM fix 2021-06-16 12:19:16 +02:00
Blaz Kristan
1a80439825 Merge branch 'master' into dev 2021-06-15 23:36:12 +02:00
cschwinne
623694ab73 Playlist additions 2021-06-10 02:52:20 +02:00
Blaz Kristan
024ec86dc5 Unloading playlist on effect change. 2021-06-07 23:45:11 +02:00
Blaz Kristan
c58ad64a28 Bugfix.
- unloading playlist on playlist apply
- optimisations in handlePlaylist()
2021-06-07 20:44:20 +02:00
SpikeyHelmet
2178fd6ee9
CRONIXIE check in json.cpp 2021-06-01 06:37:35 +05:30
Blaz Kristan
62cb8358cc Added.
- analog for speed, intensity & palette
- legend in settings page
Fixed UI & UX.
- change of effect stops playlist
- new preset UI glitch
2021-05-27 17:57:04 +02:00
cschwinne
c2892d7887 Add UDP sync of system time 2021-05-27 02:02:02 +02:00
cschwinne
8431d0bd5c Replace Time with Toki 2021-05-25 09:59:19 +02:00
cschwinne
08d7a1c123 Set Nixie contents via JSON API
Elekstube mod support a subset of the cronixie display patterns
2021-05-21 22:23:12 +02:00
Blaz Kristan
bfd7be543a Merge branch 'master' of https://github.com/aircoookie/WLED into dev
Conflicts:
	tools/cdata.js
	usermods/PIR_sensor_switch/readme.md
	usermods/Temperature/readme.md
	wled00/FX.h
	wled00/FX_fcn.cpp
	wled00/bus_manager.h
	wled00/bus_wrapper.h
	wled00/cfg.cpp
	wled00/const.h
	wled00/data/settings.htm
	wled00/data/settings_leds.htm
	wled00/data/settings_um.htm
	wled00/html_settings.h
	wled00/json.cpp
	wled00/mqtt.cpp
	wled00/set.cpp
	wled00/wled.cpp
	wled00/wled.h
	wled00/wled_eeprom.cpp
	wled00/wled_server.cpp
	wled00/xml.cpp
2021-05-18 15:45:34 +02:00
cschwinne
6f843fcb27 Added experimental {"on":"t"} (resolves #1952 ) 2021-05-17 12:29:30 +02:00
Blaz Kristan
ec0feb68f4 Added (partial) PSRAM support for WROVER chips.
Minor fixes.
2021-05-13 16:05:52 +02:00
cschwinne
5ca8bc3f2a Fixed various Codacy code style and logic issues 2021-05-11 14:54:03 +02:00
cschwinne
d94d3d4bc5 Added experimental /json/cfg endpoint for changing settings from JSON 2021-05-11 01:11:16 +02:00
Blaz Kristan
65fd705d9a ESP32-S2 NPB methods filtered.
Default IR pin removed (set to -1).
Minor fixes.
2021-04-26 20:11:36 +02:00
acshef
9a0aac4745
Add IP Address to JsonInfo (#1912)
* Add IP Address to JsonInfo

The value is added to the JSON only if the device is connected to the network, and uses the JSON key `"sip"` to match [wled00/xml.cpp](wled00/xml.cpp#L249). The overarching goal of this is to expose the IP Address to the Home Assistant WLED Integration, so that Home Assistant can provide a link to the WLED device (either directly through the Integration/Device page 🤞 or *ad hoc* in Lovelace).

* IP in JSON info

Empty string if not connected

Co-authored-by: Aircoookie <cschwinne@gmail.com>
2021-04-25 01:37:16 +02:00
Blaz Kristan
8608c45309 Merge branch 'master' into dev
Conflicts:
	CHANGELOG.md
	wled00/FX.cpp
	wled00/FX_fcn.cpp
	wled00/ntp.cpp
	wled00/wled.h
	wled00/wled_math.h
2021-04-21 21:16:08 +02:00
cschwinne
7f6a554e1b Small adjustments 2021-04-21 17:21:55 +02:00