Commit Graph

4603 Commits

Author SHA1 Message Date
Frank
5fe12eef5a Merge branch 'mdev' into audio_fastpath 2023-07-08 19:23:36 +02:00
Frank
72b79608bf 2DPlasmaball - optimize out float 2023-07-08 19:13:20 +02:00
Frank
2562f308ca fix power calculation for NeoPixelBusLg
power estimation results from estimateCurrentAndLimitBri() were too low (example: estimated 1.3Amp, measured 1.6Amp). This change corrects the power calculation. Due to the changed behavior of getPixelColor, powerSum must be used as-is, not scaled down again by brightness.
2023-07-08 19:13:20 +02:00
Frank
601499b69b XY: minor bugfix
properly handle width=0 OR height=0
2023-07-06 10:02:01 +02:00
Ewoud
2c823d9937 Move AS, Weather, Games, Batt from _M to _XL 2023-07-04 09:47:10 +02:00
Ewoud
f477191d51 Changing Z prefix by Y 2023-07-03 20:26:59 +02:00
Frank
7e34781212 ABL optimization
this optimization avoids to apply brightness two times .

NeoPixelBusLg has already applied global brightness at sPC. Due to internal working of the Lg bus, its sufficient to only post-apply scaling, and set the new (scaled) brightness for the next frame.
2023-07-03 19:41:51 +02:00
Frank
a71be02b89 de-optimization
first version still cased some flickering.
This de-optimization makes LEDs more stable.
2023-07-03 19:41:51 +02:00
Frank
358f37b7ca optimization for ABL hotfix
* adding an optional parameter to setBrightness(). ApplyPostAdjustments() will only be called if `immediate=true`. Only ABL will use immediate=true, to ensure electrical safety of equipment.

This allows some optimizations of performance, as ApplyPostAdjustments() is time consuming.

* busses.setBrightness(bri) --> applied to all future pixels (fast, lossless)
* busses.setBrightness(bri, true) --> applied directly to all previously set pixels (slower, lossy)
2023-07-03 19:41:50 +02:00
Frank
29644ccf79 ABL optimization
this optimization avoids to apply brightness two times .

NeoPixelBusLg has already applied global brightness at sPC. Due to internal working of the Lg bus, its sufficient to only post-apply scaling, and set the new (scaled) brightness for the next frame.
2023-07-03 19:26:02 +02:00
Frank
ecf331792b de-optimization
first version still cased some flickering.
This de-optimization makes LEDs more stable.
2023-07-03 19:26:02 +02:00
Frank
a84c361fab build number ++ 2023-07-01 20:35:25 +02:00
Frank
3cc1d30090 optimization for ABL hotfix
* adding an optional parameter to setBrightness(). ApplyPostAdjustments() will only be called if `immediate=true`. Only ABL will use immediate=true, to ensure electrical safety of equipment.

This allows some optimizations of performance, as ApplyPostAdjustments() is time consuming.

* busses.setBrightness(bri) --> applied to all future pixels (fast, lossless)
* busses.setBrightness(bri, true) --> applied directly to all previously set pixels (slower, lossy)
2023-07-01 20:23:39 +02:00
Will Tatam
1c8c1bb657 Fix speed reduction in usermod_v2_animartrix 2023-06-29 23:31:56 +01:00
netmindz
40751b46bf Merge pull request #55 from netmindz/animartrix-updates
Animartrix updates
* Usermod to be disabled by default to not clutter the list of effects too much
* Disabling actually preventing the effects being listed (reboot required)
* Updated library with fix for SM1
* Pass speed slider to animartrix speed factor
2023-06-29 13:15:01 -07:00
Will Tatam
918ed57f1b Fix speedFactor midpoint 2023-06-29 21:13:27 +01:00
Will Tatam
0bd7acadf3 call init for RGB_Blobs5 2023-06-29 13:19:58 +01:00
Will Tatam
258a3e5bfb Dynamic radial_filter_radius 2023-06-29 13:05:04 +01:00
Will Tatam
1df0229a17 Dynamic radial_filter_radius 2023-06-29 13:00:34 +01:00
Will Tatam
850c9beec5 Add speed slider for animartrix effects 2023-06-29 12:53:55 +01:00
Will Tatam
1f0dc486ad animartrix update for fix for SM1 2023-06-29 12:22:54 +01:00
Will Tatam
a0b913db27 Disable Animartrix by default 2023-06-29 12:17:55 +01:00
Will Tatam
d41f24fb15 Only add animartrix effects when usermod is enabled 2023-06-29 12:16:45 +01:00
Will Tatam
417bef0026 setSpeedFactor for animartrix 2023-06-29 12:16:17 +01:00
Will Tatam
3eed40331f setSpeedFactor in animartrix 2023-06-29 12:04:46 +01:00
Ewoud
17147f3b50 Prepare for upstream merge: seperate declarations from definitions
In rotary and 4ld
2023-06-27 22:21:20 +02:00
Ewoud
d53de3d82b Fix for GFX to stay in view (part 1) 2023-06-27 15:42:33 +02:00
Blaz Kristan
1c53f14bd5 Temporary bugfix for #3264 2023-06-25 17:21:49 +02:00
Blaz Kristan
2afad2cd66 Temporary bugfix for #3264 2023-06-25 17:06:54 +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
708cd8e73d free udp receive buffers before parsePacket
robustness improvement - parsepacket() will fail if the udp handler still has an active receive buffer.
2023-06-21 00:29:16 +02:00
Frank
51a23bd62c parameter tuning
minor tweaks.
2023-06-19 11:16:35 +02:00
Frank
8aef4347a1 re-enable old peak detect algo, plus ripplepeak bugfix
* re-enabled old detector which does not detect beats. However something bad may still be better than nothing...

* fixed a typo in RipplePeak and Waterfall effect, which cased wrong configuration of the peak detector.

resolves https://github.com/MoonModules/WLED/issues/43
2023-06-18 22:08:55 +02:00
Frank
e0cb636706 re-enable old peak detect algo, plus ripplepeak bugfix
* re-enabled old detector which does not detect beats. However something bad may still be better than nothing...

* fixed a typo in RipplePeak and Waterfall effect, which cased wrong configuration of the peak detector.

resolves https://github.com/MoonModules/WLED/issues/43
2023-06-18 21:55:51 +02:00
Frank
553f2341d2 npm run build 2023-06-16 12:49:46 +02:00
Frank
a7d627bb97 Merge branch 'mdev' into audio_fastpath 2023-06-16 12:39:38 +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
Blaz Kristan
74b09b8576 Fix for #3251 2023-06-16 11:56:30 +02:00
Frank
d51a41f084 post-merge
* npm run build
* upstream fix for XSS vulnerability
2023-06-15 21:08:03 +02:00
Frank
3127c60b41 Merge branch 'mdev' into audio_fastpath 2023-06-15 20:54:57 +02:00
Ewoud
80df7ac703 Merge branch 'ledmap1D' into mdev 2023-06-15 13:21:57 +02:00
Ewoud
a450334e46 Part 3 2023-06-15 11:51:22 +02:00
Ewoud
3195606ca8 Part 2 2023-06-15 11:41:19 +02:00
Ewoud
117dd52ce4 Ledmap 1D / no width/height 2023-06-15 11:29:41 +02:00
Frank
b53f9ac4b0 2d Lissajous: make fade-out work
"Fade rate" slider works now.
2023-06-14 22:04:32 +02:00
Frank
2410c226f7 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:52:04 +02:00
Frank
47de28ebbb 2D Lissajous improvements
* allow user to control rotation speed (c3 slider)
* preserve accuracy by performing division _after_ multiplication: " (i * speed) / 32", instead of " i * (speed / 32)"
* proper rounding of "map" results, for better visual appearance
* avoid division by zero in map() function
2023-06-14 21:51:22 +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
Frank
bcea5cd148 2D Lissajous improvements
* allow user to control rotation speed (c3 slider)
* preserve accuracy by performing division _after_ multiplication: " (i * speed) / 32", instead of " i * (speed / 32)"
* proper rounding of "map" results, for better visual appearance
* avoid division by zero in map() function
2023-06-14 20:51:14 +02:00