Commit Graph

78 Commits

Author SHA1 Message Date
Ewoud
4197f98afe package.json and cdata.js: set urls to MoonModules
index.js: add logging (temp) and improve segment view redrawing
wled00.ini: add lps (temp)
wledserver.cpp: show client request done after its done
ws.cpp: show websocket events (temp?)
2023-05-25 21:50:43 +02:00
Frank
63e63ad156 minor speedup for liveview and websockets
it seems that getFreeHeap() needs some time, and blocks other tasks until completion.
sendDataWS() does not need ESP.getFreeHeap() results on esp32.
2023-05-21 21:01:23 +02:00
Frank
72f7f9c555 fix 8266 compile error
*hrmpf* 8266 does not support C++ try-catch and exceptions.
2023-05-15 21:38:23 +02:00
Frank
6d23eb6874 improve robustness when heap is low
* customMappingTable: allocate using calloc instead of new (new will throw exception if nor enough heap)
* fixing a few minor memory leaks
* ws.cpp: catch out-of-memory in sendLiveLedsWs
* ws.cpp: change interval to 80ms (120 ws very slow...)
2023-05-15 21:15:24 +02:00
Frank
7d0e627e14 some effect optimizations
* getpixelcolor: attribute pure - it reads memory, but does not write
* some optimizations for SEGMENT.blur() and SEGMENT.fadeToBlackBy()

* FX.c:pp remove double calls to blur() and fade_out()
* FX.cpp: SEGMENT.setUpLeds() added to effects, to enable LED buffering (safe some time because getPixelColor does not need to access NeopixelBus)

* a few other optimizations to safe time and avoid "expensive" operations
* set I2C bus speed to 400kHz (default is 100Khz)

* a few other small optimizations and tweaks
* pio: esp32 V4 builds use "patch5" toolchain version, which contains a few bugfixes especially for memory management.
2023-05-03 20:33:23 +02:00
Frank
e1cadbc337 (experimental) reduced websocket frequency
fastpath: reduced websocket frequency, to have more time for physically attached LEDs.

fingers crossed that this won't break anything....
2023-04-30 21:00:28 +02:00
Frank
40c96c14f5 a bunch of smaller speedups to core functions
*  make local functions "static"
* use fast_ int types where possible
* use native min/max instead of MIN/MAX macros. Macros evaluate each parameter TWICE!!
* adding __attribute__((pure)) and __attribute((const)) to help the compiler optimize
* ws.cpp: reduce max "live leds" in fastpath mode
2023-04-30 18:41:30 +02:00
Ewoud
753f5621d1 ws sendLiveLedsWs: no skiplines to show large matrices uncompressed 2023-04-06 11:49:16 +02:00
Ewoud
5991aa8624 UI/GFX improvements 2023-03-27 20:41:53 +02:00
Ewoud
9b25b6d8c6 Changes in Debug messages 2023-03-27 20:26:03 +02:00
Frank
f52e706c95 minor improvements for debugging
* Info page: status of Serial (can be disconnected on new MCUs), and owner of RX/TX pins
* improved handling of Serial (don't write if not connected)
* added min available stack size to debug output (esp32 only)
* webserver show remaining stack size
* webserver: show string buffer usage
2023-03-25 21:10:15 +01:00
Ewoud
8485be27f2 Merge remote-tracking branch 'upstream/main' into mdev 2023-03-21 11:39:30 +01:00
Blaz Kristan
08e2bfe9a2 Scale 2D peek for large matrices. 2023-03-18 18:22:31 +01:00
Ewoud
9f282f831e GEQ: even distribution of bands and small changes
FX.cpp: GEQ: even distribution of bands
FX_fcn: tiny change
wled.cpp: setupMatrix also if loadedledmap != 0
ws.cpp: replace getLengthTotal by width * height (for ledmaps)
2023-03-11 13:59:23 +01:00
Ewoud
d8f625beea show only ledmap pixels, show bus lengths in segment visualization
index.js: segment visualization:
- max width if no pc
- don't show nr if only one segment
- Ledmap nr color depending on bus output

FX_2Dfcn.cpp / FX_fcn.cpp
- don't show ledmap -1 pixels

json.cpp: add busses.length to outputs

ws.cpp: peek back to strip.gPC only
2023-02-14 17:22:58 +01:00
Ewoud
476105a267 Add serpentine to default peek + version date 2023-02-13 19:14:11 +01:00
Ewoud
9ba9a61af5 Add support for default ledmap.json + peek with ledmap if default panel
Thx to @Troy#2642
2023-02-13 19:09:02 +01:00
Ewoud
3139f5228d Merge remote-tracking branch 'origin/ac_main' into mdev 2022-12-19 14:00:52 +01:00
Blaz Kristan
3c5838cafd Remove "strip" dependency in Segment class 2022-12-16 22:31:07 +01:00
Ewoud
3160a0b090 Merge remote-tracking branch 'origin/ac_main' into mdev 2022-12-06 14:38:49 +01:00
cschwinne
efc476e50b Disable register keyword to reduce compiler warnings
Minor formatting improvements
"ps" string optimization
Removed travis envs
2022-12-03 20:55:17 +01:00
Ewoud
ace3035d4a Small changes and version 0.14.0.6.0
Including 2D peek max 4096 leds
2022-11-24 10:57:18 +01:00
Ewoud
c3c3ff39b5 Change WLEDSR to WLEDMM in comments 2022-11-09 12:14:42 +01:00
Ewowi
8e70176de6 Add compatibility for SR playlists (to support HB effects)
liveviewws2D and ws.cpp: show preset and playlist id
json.cpp: add SR preset compatibility
2022-10-20 10:39:50 +02:00
Blaz Kristan
7824f9ee63 Remove sync preset loading (ugly core check)
WS buffer check for ESP32-S2
Delay for Serial init on CDC USB
2022-09-20 21:17:44 +02:00
Blaz Kristan
957948f906 Code optimisations in effects.
Remove Wire initialisation from RTC.
Peek fix.
2022-08-09 21:14:37 +02:00
Blaž Kristan
c5f3e76b21 Compile optimisations, code reduction.
2D peek resize.
2022-08-03 14:23:24 +02:00
ewowi
affcca8034 Improve liveview2D: add width and height > 256 leds 2022-07-28 16:13:31 +02:00
Blaz Kristan
a46894f395 Bugfixes. 2022-07-19 16:16:43 +02:00
Blaz Kristan
6c6849d8d7 Vectors & dynamic loadJS.
- Segments
- Modes

NOTE: crashes ESP if effect is running while deleting segment.
2022-07-17 15:58:41 +02:00
Blaz Kristan
588c7a81fc Fix for transitions. 2022-07-12 18:10:07 +02:00
Blaz Kristan
14887d5e88 Multiple fixes.
- non matrix bugs in legacy effects
- preset loading (cycling)
- segment length in UI
- possible WS heap corruption prevention
2022-06-01 22:11:25 +02:00
Blaz Kristan
b4d6525899 Added new 2D effects:
- 2D Floating Blobs
- 2D Ghost Rider
Crash fix for 2D Game of Life.
Added support function fill_circle() & wu_pixel().
Removed obsolete debug strings.
2022-05-20 19:35:22 +02:00
Blaz Kristan
0f6b1e4ae1 Synchronus applyPreset() from HTTP JSON API call.
Bugfix for HTTP API preset.
WS multiple broadcast fix.
Turning segment on/off will not reset currentPreset/cause stateChanged.
2022-04-16 16:28:43 +02:00
Blaz Kristan
c14f16bdf1 Merge branch 'master' into master-merge 2022-03-19 21:05:28 +01:00
cschwinne
b93a9cb8bc FIxed liveview 2022-03-18 14:24:10 +01:00
cschwinne
8601052179 Fixed liveview buffer over-write (fixes #2586 )
(with odd LED counts > 256)
2022-03-18 14:08:37 +01:00
Blaz Kristan
41b6f3ffa7 Merge branch 'master' into merge-master 2022-02-20 22:24:11 +01:00
cschwinne
efbb7a034c Slight websocket reconnection tweaks 2022-02-19 22:47:17 +01:00
Blaž Kristan
3be4b69b44 WS reconnect logic & WS memory leak protection 2022-02-17 12:45:50 +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
2da14e5b2a Merge branch 'master' into merge-master 2022-02-04 16:29:39 +01:00
Blaž Kristan
84e38f765d Fix for incorrect buffer size when LED count = 256 2022-02-04 07:59:17 +01:00
cschwinne
b33c5798ee Changelog update 2022-02-03 23:37:30 +01:00
Blaz Kristan
81012e60ff Fix for overallocated LiveView buffer. 2022-02-03 20:24:52 +01:00
Blaz Kristan
6180c2f948 Fix for overallocated LiveView buffer. 2022-02-03 20:21:09 +01:00
Blaz Kristan
52f0ae9350 Merge branch 'master' into master-merge
Few UI fixes.
2022-02-03 17:40:44 +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
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
Blaz Kristan
59216a9ae1 UI refinements.
Disconnect all WS clients on low mem.
2021-12-18 17:13:15 +01:00