Commit Graph

475 Commits

Author SHA1 Message Date
Frank
ffc9ec3cfb exclude HUB75 from auto brightness limiter
For a 64x64 panel, ABL assumes 4A of standby current. This does not make any sense.
2024-09-22 17:07:26 +02:00
Frank
fc2e1263cb new option don't use effect-specific palette or mapping modes
* new setting in UI page: "Don't use effect palette and segment parameters" - only meaningful when "Use effect default parameters" is enabled, too.

--> effect slider defaults will still be applied, however palette, 1D2D mapping mode and other segment settings will not change.
2024-09-06 13:06:28 +02:00
Frank
4051d5ddd8 increase limit for FX string: 127 --> 191 bytes 2024-07-16 18:40:11 +02:00
Blaz Kristan
3df3b9acaf ArduinoFFT update
shadow variables
2024-06-26 21:35:19 +02:00
Will Miles
775e07c6d6 serveLiveLeds: Use dynamic buffer
There were three problems here:
- AsyncWebServer is going to copy to a heap buffer anyways, so we might
   as well just pass it one it can use
- The buffer size estimate was wrong -- we need 9 bytes per pixel
   ("RRGGBB",), so the buffer could overflow, and it was not
   considering the extra 2D requirements
- On ESP8266, the stack allocation was overflowing the stack, causing
  corruption and crashes.
2024-06-26 21:20:41 +02:00
Frank
eb3200bb29 align JSON release info with upstream 0_15 (update page, JSON "info")
align with upstream /json/info
* info.release
* info.arch
* info.clock
* info.flash
2024-05-22 13:03:30 +02:00
Blaž Kristan
a25e608e2b Fix for #3991 2024-05-21 12:56:24 +02:00
Frank
1b9b2dcffe minimal Auto segment creation bugfix
based on 13bfda56ef
2024-05-18 21:49:09 +02:00
Frank
45d07190c9 -S3: show PSRAM mode (qspi or OPI) in info panel 2024-05-06 20:11:53 +02:00
Blaž Kristan
c3a908634a Merge pull request #3946 from freakintoddles2/0_15
Adds an API parameter to allow the user to skip to the next preset in a playlist at any time
2024-05-05 22:21:04 +02:00
Frank
70a5d8b843 a few more compile-time infos about enabled/disabled features
helps to understand what you'll get
2024-05-04 01:16:45 +02:00
Frank
858610e39b trying to reduce flickering
The NeoPixelBus RMT driver seems to get stalled when ESP.get.... functions are called (big kernel lock?). Also its glitching during flash file access.

This change tries to avoid some conflicts by first checking that the driver is not sending.
2024-04-26 21:21:32 +02:00
Will Miles
5117a72e52 LockedJsonResponse: Release early if possible
Release the json buffer lock as soon as we've finished serializing.
This should slightly reduce the number of lock collisions as the
response class isn't destructed until after the last packet is ack'd.
2024-02-23 10:58:58 +01:00
Blaz Kristan
e7285c7a03 Possible fix for #3589 & partial fix for #3605 2024-02-12 22:13:17 +01:00
Blaz Kristan
567d513a3b Prevent JSON buffer clear after failed lock attempt
(alternative to #3743)
2024-02-12 22:12:46 +01:00
Frank
27e0bff4ee make "segment off" work (MM specific) - fixes #90
fix for #90

In principle its dangerous to write pixels from the webserver callback, but in this case we should be save -  `suspendStripService=true` ensures that strip.service() is not active in the main loopTask.
2024-01-26 17:21:31 +01:00
Blaž Kristan
3b6100a057 Merge pull request #3648 from willmmiles/json-response-locking
Expand JSON buffer lock scope to entire web reply
2024-01-08 11:54:58 +01:00
Frank
03a909ac8a esp32_4MB_XL was over the limits (flash usage)
still only 256 bytes left for program
2023-12-29 22:53:26 +01:00
Frank
80a9736d0d print WLED error codes to serial + netdebug
These errors were shown in UI only, but missing in debug output.
2023-12-29 21:40:46 +01:00
Frank
8905992a89 code spell checking - part4 (MM specific) 2023-12-15 00:14:57 +01:00
Frank
ced03f1f08 code spell checking - part1 (core)
I've found a code spellchecker, so this is what can be corrected easily. Changes are only affecting comments, readme and a few user-visible strings. So no functional impact expected.
2023-12-14 22:05:55 +01:00
Blaz Kristan
ca3708ec60 Bugfix (#3526) 2023-11-27 17:50:11 +01:00
Ewoud
587e6766c1 Bugfix: uxTaskGetStackHighWaterMark only works in esp32 2023-11-23 13:56:02 +01:00
Ewoud
43a5a290c0 Presets default name incl icons and checkbox defaults, info free stack
index.js
- add checked default values for preset brightness and segment bounds
- show free stack
- preset default name including icons

json.cpp
- serializeInfo: add freestack
2023-11-23 13:23:44 +01:00
Ewoud
294a872462 json/info: brand and product configurable by compile variables
For MM builds brand = WLEDMM
Will be used in WLED-Native - by Moustachauve

Changed in bh1750, bme280, pir, json.cpp and wled.h
2023-10-15 21:43:55 +02:00
Blaz Kristan
3eb360dfe1 Fix for #3403 2023-10-06 17:19:25 +02:00
Ewoud
06220946c0 Refactor Nodes popup for SuperSync
(WIP)
2023-10-03 17:57:57 +02:00
Blaž Kristan
23916268f5 Merge pull request #3317 from chroma-tech/group-masks-api
Add send and receive groups to json api
2023-08-16 09:58:30 +02:00
Frank
8e678ffa5e allow gamma corrected preview without gamma corrected LEDs 2023-08-05 00:06:58 +02:00
Will Tatam
9d218299c4 Fix palette preview of Audio Responsive Ramp 2023-07-27 13:04:52 +01:00
Frank
5f55f91ff0 debug message cleanup
changed some non-critical USER_PRINT debug messages into DEBUG_PRINT
2023-07-14 16:17:42 +02:00
Frank
c64f74a611 fix for random crashes on changing presets (UI)
Segments are created/deleted on-the-fly; it seems that "local leds" buffers did not follow properly.
* revise segment copy/move constructors
* de-optimize use of local leds (as they need to be re-allocated when segment size changes)
* minor stability improvements
2023-07-08 22:40:43 +02:00
Frank
582b96f846 robustness improvements
* handling of stop = 0 when calculating sizes (avoid unsigned underflow)
* make sure groupLength() is never zero (to avoid div/0)
* gapmaps: check for "(gapSize > 0)" added.

not sure if all the checks are 100% needed, but they will improve robustness in corner cases.
2023-06-21 13:30:40 +02:00
Ewoud
b95ff2d74f Merge remote-tracking branch 'upstream/main' into mdev 2023-06-07 20:54:04 +02:00
Frank
404fb566fa partly disable waitUntilIdle() as its still work-in-progress
This disables parts of the new feature that might lead to delays, so basicially there is some detection, but no protection any more.

further development needed --> audio_fastpath branch

compile with -D WLEDMM_PROTECT_SERVICE to enable full protection.
2023-06-01 21:55:46 +02:00
Frank
333f5ac2a1 waitUntilIdle() improvements
* protect deserializeMap()
* better handling of recursion in deserializeSegment() and deserializeState
* don't use yield() on esp32
2023-06-01 21:28:46 +02:00
Frank
0a5bfb656d avoid updating strip / segments while draving effects (ESP32 only)
💫 this is the way🌟
A new locking mechanism that allows to wait until strip.service() has completed.
2023-06-01 17:41:36 +02:00
Blaž Kristan
69ab2ce402 Merge branch 'main' into feature 2023-05-30 16:20:20 +02:00
Blaz Kristan
5a8a8dc292 Feature implementation
- #2236
  - #1984
Better PSRAM handling
platformio.ini update
On/Off bus handling
2023-05-28 22:50:19 +02:00
Blaz Kristan
90431b662b Rename "group" to "set" 2023-05-15 17:06:29 +02:00
Ewoud
fede3dd54c Merge remote-tracking branch 'upstream/main' into mdev 2023-05-11 17:39:12 +02:00
Blaz Kristan
3d9160f2fa Merge branch 'main' into seg-groups 2023-05-05 23:01:17 +02:00
Ewoud
642dbfed85 GFX default on, if set off it stays off (until page refresh) 2023-05-04 17:51:33 +02:00
Blaz Kristan
f38851b7c6 Merge branch 'main' into cpal 2023-04-30 17:52:28 +02:00
Blaz Kristan
70e9187bcb Merge branch 'main' into seg-groups 2023-04-26 19:50:22 +02:00
Blaz Kristan
5e2fa13471 Bugfix.
- allow saving of reboot preset
- return Spread slider
2023-04-26 19:47:12 +02:00
Frank
d90ee766f6 PSRAM: you can have it, and eat it or not eat it
*This patch allows to compile with BOARD_HAS_PSRAM, but not set WLED_USE_PSRAM - reserved pins will be protected, and PSRAM usage will be shown in info.
* if you add `-D WLED_USE_PSRAM_JSON` then PSRAM will be used for some JSON buffers, but not for LEDs and Segments.
2023-04-19 17:58:50 +02:00
Frank
e2d3800fc3 woraround for spurious crash in serializePalettes
the root cause of the crash is not really clear, as the problem seems to occur randomly, mosr frequent with fresh installations.
This workaround prevents the array bounds violation, by re-using the last valid  gGradientPalettes entry.
2023-04-19 15:34:35 +02:00
Blaz Kristan
ece6759fa7 UI update. 2023-04-14 17:15:02 +02:00
Ewoud
212126b0ad esp8266_4MB_M: usermods maches max usermods, add net print,set flashsize 2023-04-07 16:40:24 +02:00