Commit Graph

1007 Commits

Author SHA1 Message Date
Frank
e64aff28e7 (experimental) compiler optimization for speed instead of size
only for [env:esp32_4MB_S] and [env:esp32_16MB_V4_S]
2023-07-21 22:46:20 +02:00
Ewoud
54b321fb75 Release 0.14.0-b25.29 2023-07-15 14:14:09 +02:00
Frank
9a3a97eff1 pre-merge
cleanup:
- version increase
- clean up debug messages
- minor fixes in platformio.ini
- fix compilation with -D WLED_DISABLE_2D

helping the compiler to optimize:
- a few more __attribute__((pure))
- fx.cpp marked a few local functions as "static"
2023-07-13 19:58:48 +02:00
Frank
c22c92e3af preview at full brightness
* reverts global brightness in preview
* can NOT revert brightness reductions from auto brightness limiter.
2023-07-10 18:29:16 +02:00
Frank
9a832ed4ab build number upgrade 2023-07-08 23:11:02 +02:00
Frank
a84c361fab build number ++ 2023-07-01 20:35:25 +02:00
Blaz Kristan
1c53f14bd5 Temporary bugfix for #3264 2023-06-25 17:21:49 +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
Frank
310daa61a8 improve segment code robustness
* Avoid uint16 underflow in width() and height(): stop > start is possible, and means "inactive segment".

* use size_t for ledsrgbSize, _dataLen and _usedSegmentData -  uint16_t could overflow in some situations.

* try to catch attempts to allocate zero bytes (inactive segment => size 0)
2023-06-21 01:43:26 +02:00
Frank
b3677bd9b9 post merge
index.js: indentation (tabs vs. spaces)
npm run build
increment build number
2023-06-16 12:36:04 +02:00
Frank
4f370686e2 2D Lissajous: revive old anti-aliased code
* added option to use original floating point code that features anti-aliasing.
Looks nice, but requires hardware floating point support (ESP32-S3, or "classic" ESP32 dual core).
2023-06-14 21:49:32 +02:00
Ewoud
07fdeb3ab7 Ledmaps without width and height specified 2023-06-13 17:58:00 +02:00
Ewoud
3560b27dc1 Tiny things 2023-06-08 18:47:56 +02:00
Ewoud
8d43af6acc Bug fix segment view, use ledmapMaxSize (TroyHack) 2023-06-08 18:34:10 +02:00
Ewoud
b332204978 Moving to version 0.14.0-b15.27 2023-06-07 23:32:36 +02:00
Frank
6fd647ab15 post-merge
* restore WLED_USE_PSRAM_JSON - not existing in upstream
* fix compiler warning about ambiguous "&"
2023-06-07 21:45:52 +02:00
Ewoud
b95ff2d74f Merge remote-tracking branch 'upstream/main' into mdev 2023-06-07 20:54:04 +02:00
Frank
cc08d42984 version bump 0.14.0-b15.26 2023-06-06 13:03:36 +02:00
Aircoookie
d383bc93c7 Changelog update
Reduce width of ethernet mode dropdown
2023-06-02 10:51:37 +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
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
Ewoud
bd7f1678d0 Hack to show Animartrix effects last in effects list 2023-05-31 21:34:19 +02:00
Justin Mutter
a5161eb7f1 Use constant for mDNS name to allow setting from my_config.h (#3145) 2023-05-31 17:35:43 +02:00
Ewoud
e9a2777ee5 Dynamic Peek framerates 🎉 2023-05-29 21:53:48 +02:00
Ewoud
b1e9f825ca Bug fix, allocate string to store ledmap name 2023-05-29 18:33:49 +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
Ewoud
305a5b19c4 leds(rgb): also adjusted if new ledmap + grow not shrink (unless...)
FX.h: add ledsrgbSize and allocLeds()
FX_fcn.cpp: 
- copy constructor: allocLeds()
- move constructor: no change
- copy assignment: reuse! + allocLeds()
- move asignment: no change
- resetIfRequired: no free
- setUpLeds/resetSegments: allocLeds()

unless...: copy constructor aften called. That is the bad boy causing re-allocs at every effect change!
2023-05-24 14:59:39 +02:00
Ewoud
b195596ad7 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-24 11:49:47 +02:00
Frank
2cbdc55a85 Merge remote-tracking branch 'upstream/main' into mdev 2023-05-21 14:53:49 +02:00
Frank
e4a9f115cb fx functions: avoid memory corruption
* PSRAM_Allocator was missing the "reallocate" method, which lead to undefined behaviour when dynamic JSON doc needed to grow/shrink
* Segment::setUpLeds() quickfix for length() == 0 (should not happen, but it did happen for me once)
* leds in PSRAM causes major slowdown on wrover boards - disabled.
2023-05-21 14:33:25 +02:00
Ewoud
f491ad3a43 Nodes: DDS Ins bugfix 2023-05-18 09:44:19 +02:00
Ewoud
e0d2d28b19 Merge upstream post: temp usermod and new version 2023-05-17 11:50:24 +02:00
Ewoud
21c7347296 Minimal (de)allocs on customMappingTable (only grow, not shrink) 2023-05-16 15:13:30 +02:00
Ewoud
d6bc9967d0 Support for large ledmaps
optimize jMapC, enumerateLedmaps and deserializeMap
2023-05-16 13:12:30 +02:00
Ewoud
7e7d1065e9 Rename usermod_fastled to usermod_animartrix and add in _m 2023-05-13 22:33:03 +02:00
Ewoud
5b0551e59c From 0.14.0-b15.23 to 0.14.0-b15.24 2023-05-11 17:45:15 +02:00
Ewoud
eb6b890c6b Nodes tab more info + on/off button (WIP)
index.js:
- add callNode
- populateNodes more info and button calling node

remove fetchAndExecute from artifx.js (use the one in index.js) and add parms parameter

index.css: make #nodes div 980px wide
2023-05-11 17:08:33 +02:00
Frank
9e446210fb refresh build number 2023-05-09 17:57:17 +02:00
Ewoud
2077515b05 Bugfix: set colorwheel default on (for 1D) 2023-05-07 20:22:42 +02:00
Blaz Kristan
0aea75edb7 NeoPixelBus 2.7.5
UI bugfix
2023-04-28 16:52:48 +02:00
Frank
fb3477e5f6 soundreactive effect updated
* blurz: some visual improvements
* Matripix: improved color smoothness, Color by frequency (instead of volume), option to use sound pressure
* pixelwave: improved color selection, use sound energy instead of volume
* freqwave: some speedups, option to show frequency with "musical scale"

* gravfreq: fixed some math accidents that lead to horrible flickering
* default setting improved for some effects
2023-04-21 23:27:14 +02:00
Frank
9130e4be54 minor optimization of core LED functions
* use _fast_ integer types in loops - in contrast to "uint16_t" etc, the compiler can leave out range/overflow corrections, so it might run faster.
* fcn_declare.h: revive "WLED_USE_REAL_MATH" option, which can be a bit faster on ESP32.
2023-04-21 16:44:58 +02:00
Frank
00661de7fc accept up to 250 fps target in LED preferences
warning included.
2023-04-21 15:26:35 +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
Frank
8d85a52449 correct some stupid peak detection defaults
parameters C1 and C2 control peak detection. Previous defaults (c2=0 !!!) did not make any sense.
2023-04-17 21:35:47 +02:00
Frank
2585b785d9 remove duplictate dependancies (AsyncTCP 1.1.1)
* moving "pbolduc/AsyncTCP.git @ 1.2.0" on top of lib_deps, to prevent that AsyncTCP 1.1.1 is pulled in (due due dependacies from Aircoookie/ESPAsyncWebServer
* remove duplicate env.lib_deps from -S2 environments
2023-04-15 21:06:00 +02:00
Frank
cc9a19bc1d partial merge of upstream/main
* leaving out DotStarHspi5MhzMethod, as we are still on NPB 2.6.9 for eth boards
* leaving out the index.css/index.css changes, as I'm not sure how to merge this.

@ewoudwijma we need to merge the JS and CSS parts when you are back; I'll stay with our MM version for now.
2023-04-14 19:53:04 +02:00
Frank
10ca7c83ca enumerateLedmaps: prevent buffer overflow
make sure that bounds of char fileName[33] are not exceeded by sprintf.
2023-04-14 18:33:07 +02:00
Frank
122f54a274 prevent heat-up on tiny -C3 boards
* reduce LED default brightness
* unset "disable wifi sleep" when WLEDMM_WIFI_POWERON_HACK
2023-04-13 23:00:51 +02:00