Commit Graph

586 Commits

Author SHA1 Message Date
Frank
19fd5f61db update for ICS-43434 big speaker 2022-10-07 17:44:24 +02:00
Frank
f5b74a2b79 Merge remote-tracking branch 'origin/audioreactive-prototype' into audio-reactive 2022-10-06 18:22:58 +02:00
Frank
64441b39ac critical bugfix
it's possible that volume samples become negative. In this scenario, our simple noise gate does stupid things, and it looks like "effects temporarily lost the sound".
This fix improves the situation, and makes sure that volume samples are always >= 0.
2022-10-06 15:39:28 +02:00
Frank
5ed0bb8c2b Microphone calibration profiles 2022-10-05 17:55:54 +02:00
Frank
698a6c8f89 Merge remote-tracking branch 'origin/audioreactive-prototype' into audio-reactive 2022-10-04 16:20:40 +02:00
Frank
1ae0dd574d fix for ADC analog
the "wait until I2S buffer fills" trick does not work for ADC sources, as the I2S sampling does not run in background for ADC.
2022-10-04 16:00:36 +02:00
Frank
c00910e100 Merge remote-tracking branch 'origin/audioreactive-prototype' into audio-reactive 2022-10-04 14:00:53 +02:00
Frank
78e0c3dcca make MIC_LOGGER work again
- EVERY_N_MILLIS somehow does not work. Replaced it,
- make sure that WLED_DEBUG does not report "fake FFT times" whrn FFT code was not running
2022-10-04 13:47:07 +02:00
Frank
82b1e5c09d GEQ: more dynamics
work in progress.
This brings some more dynamics into GEQ, without causing flickering.
-> Try with Dynamcs Fall =  300ms.
2022-09-30 22:57:21 +02:00
Frank
d0278ddc83 tiny change
komma
2022-09-30 21:59:58 +02:00
Frank
a861059553 Merge remote-tracking branch 'origin/dev' into audio-reactive 2022-09-30 21:58:14 +02:00
Blaž Kristan
f385af595a Add setMode() and setPalette() methods
- automatically start transition
Implement load FX defaults for HTTP API (FXD)
2022-09-29 12:49:12 +02:00
Stefan Riese
b6adbc926f Usermod wordclock: support for upfront LEDs (#2668)
* - add ledOffset to support LEDs that are not effected by the usermode before the wordclock LEDs

* - adjust readme
2022-09-26 09:35:42 +02:00
Frank
fb00bef05f AR - necessary constants for 166Khz sampling rate
16kHz might be a good compromise on small MCU's:
- GEQ will show frequencies up to ~6Khz
- FFT process may use up to 32millis (-> 100% CPU load). Try to stay below <60% so FreeRTOS can schedule all tasks properly.

- more CPU time is left for other WLED, so it maintains LED FPS and stays responsive on web UI.
2022-09-20 18:29:27 +02:00
Frank
d7bc6b1be7 AR: optimization for small MCUs, part2
Only run FFT when the result will be used.
Please note that this also means that `FFTTime` shown in Info is only meaningful when there is sound input and not silence.

--> To get exact FFT times, the optimization can be disabled by compiling with `-D SR_DEBUG`
2022-09-19 14:09:45 +02:00
Frank
79776ae8bc AR: optimization for smaller MCUs
- this reduces "lagging behind" of I2S sampling on smaller MCU's. The maximum time for FFT is now ~20 millis.
- small improvement for SR_DEBUG
2022-09-19 13:38:52 +02:00
Frank
90b3f009af AR: small improvement for ADC analog mics
ensure that ADC parameters are properly configured.
2022-09-19 13:30:13 +02:00
Frank
6f8deb83e3 some relaxations for S2 and C3
- AR: changed "error" into warning.
- reducing max_busses (for AR) not needed on S2
2022-09-17 22:00:33 +02:00
Frank
85fc8710dd mics that need MCLK should work 2022-09-17 20:39:23 +02:00
Frank
a766ddbebc make I2S microphones work with buggy IDF4.4.x
I2S microphones were not working any more in with the newest framework - only delivers silence.
Ther reason is stupid bug in espressif I2S "compatibility" driver: RIGHT and LEFT channel are swapped, so when only asking for LEFT, we get silence from RIGHT.

Workaround: simply change LEFT to RIGHT, until the problem is fixed in ESP-IDF --> Fix tested on "classic ESP32", but still need to check behavior on -S3.
Code compiles also on -S3, -S2, and -C3.

smaller changes:
- a few changes to use new APIs (MCLK, rouing and sample resolution)
- a few additional debug messages
- put correct value into _pinConfig.mck_io_num
2022-09-16 16:58:04 +02:00
Frank
01acb08c83 minor fix (typo) 2022-09-16 16:38:24 +02:00
Blaz Kristan
dfe4d70198 Merge branch 'audioreactive-prototype' into esp32-s2 2022-09-16 15:38:44 +02:00
Frank
925bc3b3dd AR: get rid of annoying "type conversion" warning 2022-09-11 14:32:00 +02:00
Frank
ac10b3a5c7 compilation support for audioreactive
putting all parts that will not compile between #ifdef .... #endif
Tested on S3, cannot say what will happen on other MCUs
2022-09-11 00:12:51 +02:00
Frank
e73a08291d removed "small speaker" profile - not much difference 2022-09-10 21:18:04 +02:00
Frank
7cad63625f IMNP441 microphone profiles
- some more microphone profiles (mainly IMNP441)
- more frequency "flicker fixers" - 2 slower + 2 faster
2022-09-10 00:27:49 +02:00
Blaz Kristan
e4fbf70568 Preset loading tuning.
Multi-relay toggle support.
Fire2012 tuning.
2D functions tuning.
Global SPI comments & tuning.
Bugfix in 4LD usermod.
On & bri support fix.
2022-09-09 17:16:52 +02:00
Frank
cf93d6bb65 more precision for debug info (FFT timing)
keep more detailed timing info for FFT and I2S (WLED_DEBUG)
2022-09-08 22:45:32 +02:00
Frank
c4e7bc29cd microphone profiles (frequency scaling)
- added user-selectable frequency profiles, to allow adjustments for different I2S microphones (including line-in)
-  additionally show "GEQ Input Level" as number in percent.
2022-09-08 19:17:47 +02:00
Ewowi
7b1050bcb1 Merge branch 'custom-effects' into mdev 2022-09-08 11:38:39 +02:00
Ewowi
a20501a6a6 CustomEffects: Remove unused variables which conflict with other mods 2022-09-08 10:20:54 +02:00
Ewowi
01e67b500d Revert "Merge remote-tracking branch 'origin/mdev_new-FrameWork-V4' into mdev"
This reverts commit 0fad8ffd85.
2022-09-06 21:54:23 +02:00
Ewowi
0fad8ffd85 Merge remote-tracking branch 'origin/mdev_new-FrameWork-V4' into mdev 2022-09-06 17:53:02 +02:00
Ewowi
ab65970a9d Merge remote-tracking branch 'origin/audioreactive-prototype' into mdev 2022-09-06 17:49:39 +02:00
Ewowi
1b724dbc0b Merge branch 'json-mapping' into mdev 2022-09-06 17:44:25 +02:00
Blaz Kristan
e8942c2968 fix for repeating debug message 2022-09-06 15:52:09 +02:00
Frank
7894389f1d Compiling AR usermod on ESP32-S3 (future support)
Encapsulated all parts with #ifdef that will not compile on newer ESP32 variants.
It's still a long way to go before we have a working version on -S3 and -C3, bus this should help to get us started.

From MoonModule/WLED repo.
2022-09-03 19:03:00 +02:00
Frank
da5f6315be fix for repeating debug message 2022-09-03 18:43:28 +02:00
Frank
78d79be5a4 fix for repeating debug message 2022-09-03 18:21:37 +02:00
Frank
b13f13c2e4 typo 2022-09-03 14:31:18 +02:00
Frank
e70d2e7f0d this is how far we get on the -S2
was curious how much of the AR usemod would compile for the -S2 platform.
2022-09-03 14:26:27 +02:00
Frank
a2808bee29 compilation for ESP32-C3
this allows to compile for -C3  including audioreactive usermod.
** warning ** completely untested and premature. It compiles, that's all.
2022-09-03 13:16:12 +02:00
Blaz Kristan
42d1ab8a87 Separator in Info dialog. 2022-09-03 00:01:11 +02:00
Frank
a67f9d86f7 ESP32-S3: different number of RMT and PWM channels
ESP32-S3: 8 RMT channels (not sure if all 8 are usable by NeopixelBus), 8 LED-PWM channels
2022-09-02 22:30:56 +02:00
Frank
4162d8fdfa compilation support for IDF4.4.3, plus compiling for ESP32-S3
- Updated ESP32 targets to use IDF 4.4.3 (thanks tasmota!)
- Fixed a compilation problem in ARTI (WLED_FS instead of LITTLEFS)

- Initial compilation support for ESP32-S3. Warning: there are still many problems to be solved before -S3 becomes usable!
- audioreactive: added #ifdef for features not yet supported on ESP32-S3
2022-09-02 21:29:05 +02:00
Ewowi
526900fdc0 Merge branch 'audio-reactive' into mdev 2022-09-02 20:55:47 +02:00
Frank
77ace76e32 Bugfix: make UDP sound sync work in AP mode
- the connected() method only get called once a Wifi STA connection is established. UDP Sound Sync should also work when sender is in AP Mode.
- added a few comments that should help to understand the code structure.
2022-09-02 13:49:12 +02:00
Frank
37ba649930 audioreactive effect improvements
- Info Page: add a small horizontal line below usermod specific part. Improves readability.
- updated 2D mapping mode of some  1D soundreactive effects
- alllow some effects to fade slowly, even slower that possible with SEGMENT.fade_out(). Looks nice.

not sure why - most effects only fade when using SEGMENT.fade_out(), while some need SEGMENT.fadeToBlackBy().
2022-09-01 14:56:01 +02:00
Ewowi
5b8ad8d714 Merge branch 'custom-effects' into mdev 2022-08-31 20:58:44 +02:00
Ewowi
06c0c0edfb CustomEffects as usermod: step 4: modify wledv123.json, add drawLine/Arc
General (for CE, but also used by M12_pArc)
- add drawArc

Custom Effects
- add WLEDSR Custom Effects comment to places in WLED where it is hooked in
- move from wled.json to wledv123.json
- rename matrixWidth/Heigth to width/height and use virtualWidth/Height
- remove setPixels
- add drawLine / drawArc
2022-08-31 13:14:51 +02:00