Commit Graph

1246 Commits

Author SHA1 Message Date
Will Tatam
b280349573 Fix compile error with UsermodBME280 2025-06-29 20:17:35 +01:00
Will Tatam
f7529cb704 animartrix - use predictable effect IDs 2025-05-10 13:46:25 +01:00
Troy
5a06280935 receiveAudioData() process last packet in buffer now to account for slower refreshes 2025-01-29 18:10:08 -05:00
Frank
da8f907874 Merge pull request #4439 from dosipod/Upstream_PRs
Update readme.md for rgb-rotary-encoder usermod
2025-01-07 16:12:47 +01:00
Frank
fdc43e0a2b Update usermod_PIR_sensor_switch.h - avoid starvation due to strip.isupdating()
Another instance of the "if (strip.isupdating()) return;" problem that we inherited from upstream 🙄
2025-01-03 17:45:01 +01:00
Troy
b4323a3256 Fixes for ES8311 auto level control 2025-01-02 12:38:35 -05:00
Frank
257b7b5876 better audiosyncPacket description (audio_reactive.h)
clarify meaning of some fields
2024-12-29 19:56:28 +01:00
Troy
a5e9df6668 Revert "Merge pull request #204 from troyhacks/Strip_Level_Color_Adjust"
This reverts commit db55872732, reversing
changes made to 972257a7ee.
2024-12-10 12:14:03 -05:00
Troy
6ad0b2893a Merge branch 'mdev' into Strip_Level_Color_Adjust 2024-12-10 12:12:44 -05:00
netmindz
67e78296be Merge pull request #168 from troyhacks/ES8311-Support
ES8311 Support
2024-12-03 14:48:25 +00:00
Damian Schneider
e914417c74 Merge pull request #4181 from DedeHai/0_15_trig_math
Added integer based `sin()/cos()` functions, changed all trig functions to wled_math
2024-11-29 00:23:43 +01:00
Ewoud
33318dab25 Merge pull request #170 from MoonModules/license 2024-10-16 00:14:46 +02:00
Frank
22b16ab542 Align all licensing statements with EUPL-1.2 2024-10-14 21:52:52 +02:00
Frank
db983d80ca fir for 8266 build 2024-10-14 11:34:56 +02:00
Frank
68536635d7 show toast when reboot is needed, or error restart happened
less WTF, more information
2024-10-14 11:25:41 +02:00
Frank
0dd036cdce AR: trying to improve coexistence with HUB75
Hub75 is very memory hungry. So we try to make a bit more RAM available
* use 16bit samples when compiling with HUB75 support --> 3KB saved
* avoid using aPLL (HUB75 needs it)
* move audio buffers from BSS (always allocated) to heap (only allocated when FFTtask runs) --> 10Kb saved
* suspend live preview for 6 seconds when out-of-memory
2024-10-13 23:06:50 +02:00
Frank
98bdbd1eb2 AR: trying to improve co-existance with HUB75 DMA
bad news: wifi still crashes very frequently when I2S audio is in use.
2024-10-08 21:24:06 +02:00
Frank
5381119f9e AR: new input type 'None' for network receive only 2024-10-08 19:00:59 +02:00
Troy
283a7284b4 ES8311 support added for the ESP32-P4 EV board with mic. 2024-10-02 10:02:34 -04:00
Frank
f1088bb5c0 (experimental) loop2 to get fresh audio just before drawing
* introducing usermod::loop2() - runs just before strip.service()
--> expecting to reduce lagging between audio and visual to an absolute minimum.
2024-09-21 20:41:05 +02:00
Troy
98195b4d5d Merge branch 'MoonModules:mdev' into Strip_Level_Color_Adjust 2024-09-14 13:33:49 -04:00
Troy
9e65ab3be4 Stop issue playlist continuing when disabling AutoPlaylist
If you use the "music" playlist on boot, it'll keep it going even when you manually override to something else.  This seems to fix this condition.
2024-08-14 11:53:35 -04:00
Frank
7f9da309c9 const const const
adding hints for the compiler for optimization.
In case your custom build complains about "const", just remove the keyword. based on e82f38e277, but going further :-)

* "const" class functions : function does not modify any class attributes ( --> "this" becomes const)

* __attribute__((pure)) :  function return value depends only on the parameters and/or global variables. The function does not modify any global or static variables.
* __attribute__((const)) : function only examines arguments (no globals), and has no effects except the return value. This slightly more strict than "pure"
* hot: tells the compiler "this functions is called very often"
* cold: the opposite of hot
2024-08-07 14:58:38 +02:00
Frank
ecb8817c90 Update audio_source.h - swapped channel bug still exists in 2.0.17
Actually we could even check for " < 5.0.0 " - arduino 2.0.x is in maintenance mode now, and I see little chance that a fix will appear before 3.0.0.
2024-07-30 16:03:19 +02:00
Frank
982a4bb155 Merge pull request #139 from MoonModules/upstream_patch_clusterf
AC minor patch cluster
* Anti-Aliased Lines and Circles
* replacing deprecated functions in ws.cpp
* using global brightness in analogue clock overlay
* fix for palette names (custom palettes)
* bugfix for UI: when resizing the window, it always jumped to the Colors tab
* UI: add webpage shortcuts for tabs
2024-07-13 01:13:53 +02:00
Troy
1c33a4bbea Remove references to AC101 mic mode (not implemented) 2024-07-10 19:08:58 -04:00
Troy
f7e2f14ca4 Minor tab and comment clean-up. 2024-07-10 19:03:38 -04:00
Troy
1fe871c42c Fully working with analog loopthru 2024-07-10 18:54:02 -04:00
Troy
c069385600 Merge branch 'MoonModules:mdev' into AC101-Support 2024-07-10 15:32:43 -04:00
Frank
4d03af6466 mic quality dropdown, cleanup
* mic quality: When set to "low noise" or "perfect", only minimal smoothing is performed on the "Mic Volume" input.
Every filter adds a delay, so this option can lead to better on-spot responses from effects.

* cleanup: removed a few unused variables and unused code.
2024-07-05 17:53:43 +02:00
Frank
bd997f7056 added Blackman window 2024-07-05 15:37:03 +02:00
Frank
cba883c663 parameter tuning
*some filter parameter tinkering
* restore FFT_MajPeakSmth in UDP SoundSync receiver
2024-07-05 15:12:41 +02:00
Frank
160e66a766 user-selectable FFT window functions
experiments: user-selectable FFT "windowing" options

https://en.wikipedia.org/wiki/Window_function#Cosine-sum_windows
2024-07-04 21:44:09 +02:00
Frank
9b14de06b2 fix build error on -S2, -C3 2024-07-04 20:13:57 +02:00
Frank
7d04660b91 postProcessFFTResults adjustments for FastPath
samples arrive 2x as fast in fast mode - adjust filters accordingly
2024-07-04 20:06:13 +02:00
Frank
7883474404 postProcessFFTResults minor refactoring
* limiter on/off : made the logic a bit clearer.
* use a simpler way of writing filters: a = n*a + (1-n)*b --> a = a+ n*(b-a)

no functional impact.
2024-07-04 18:37:31 +02:00
Frank
eaf6117f31 Merge branch 'mdev' into Full_audio_FastPath 2024-07-04 17:55:12 +02:00
Troy
28cb5c88b6 Skeleton, not working yet. 2024-07-03 16:20:44 -04:00
Frank
27dd6bddac AudioReactive:digitalmic:pin[] --> uxp
before: String buffer usage: 2805 of 4037 bytes
after:    String buffer usage: 2566 of 4037 bytes
2024-07-01 22:56:18 +02:00
Frank
31a12f5098 AudioReactive -> ux
before: String buffer usage: 3530 of 4037 bytes
After:    String buffer usage: 3183 of 4037 bytes
2024-07-01 21:10:45 +02:00
Frank
a317af42fc trying to make effects respond to changes quicker in fastpath mode
filter parameter tuning
2024-07-01 16:37:44 +02:00
Frank
e98858c751 audio FASTPATH, part 2
* introducing sliding window FFT, which effectively doubles the rate of samples - and FFT results - produced per second. As a side-effect, it also makes FFT a bit less noisy.

As sliding window FFT requires double the number of FFT runs, the feature is only enabled on esp32 and esp32-S3.
2024-07-01 16:29:09 +02:00
Frank
61afb26d21 Update audio_reactive.h - fix compile error 2024-07-01 15:53:20 +02:00
Frank
2987f0d045 SR_STATS: filter time
adding "Filtering Time" to SR statistics (info page)
2024-07-01 15:46:51 +02:00
Frank
9803cecee2 new idea to reduce stack buffer usage
the JS string can be shortened, by putting the usermod into a variable `ux` that is used instead of repeating the string 'Aduioreactive'.

For now its just an experiment, to see if the idea works on several browsers.
2024-07-01 02:46:14 +02:00
Frank
f3cbe75506 remove support for old ArduinoFFT library < 1.9.2
there is no reason any more to still use the old arduinoFFT library version.
2024-07-01 02:39:44 +02:00
Frank
4f9f250a1d only run FFT.dcRemoval() when no filtering was applied
FFT.dcRemoval() may introduce unwanted artifacts into the FFT result.
2024-07-01 02:29:14 +02:00
Frank
f432cb20dc remove experiments:freqRMS option
the default value seems to work well.
2024-07-01 02:14:00 +02:00
Blaz Kristan
c5283da32a Fix for #3878 2024-06-26 21:38:02 +02:00
Blaz Kristan
3df3b9acaf ArduinoFFT update
shadow variables
2024-06-26 21:35:19 +02:00