414 Commits

Author SHA1 Message Date
Will Tatam
f0cc7f04ed Fix maxVol and binNum 2023-08-13 17:11:32 +01:00
Will Tatam
f4a1deba34 Expose dynamics - limiter, rise and fall as calc runs on receive too 2023-08-13 16:54:16 +01:00
Will Tatam
96c19b6c50 Revert placement of arduinoFFT.h include as per comments on PR:60 2023-08-13 16:40:43 +01:00
netmindz
0ccf2b9c2e Revert "Remove I2C related code from ES8388 and ES7243 as blazoncek proposes …" 2023-08-11 20:59:34 +01:00
Frank
f7cd08c767 small correction 2023-08-07 18:07:24 +02:00
Frank
3503ccd958 Use MM specific I2C related functions for ES8388 and ES7243
In contrast to upstream, MM follows a "no pin stealing" approach, so the Wire interfaces are only initialized when needed.
pinManager.joinWire() will take care of the details, and will return false if something went wrong.
2023-08-07 18:06:31 +02:00
netmindz
e19e464e13 Merge pull request #48 from netmindz/ES-I2C-usage
Remove I2C related code from ES8388 and ES7243 as blazoncek proposes …
2023-08-07 02:05:22 -07:00
Frank
55b84d07e8 audio core improvements
* DC blocker: use higher quality filtering on boards with FPU (-S3 and classic esp32)
* experimental: build option to increase audio task priority - reduces latency
2023-07-29 17:12:10 +02:00
Will Tatam
e7209db038 Fix compile errors for um_data not present on receive node 2023-07-27 12:19:13 +01:00
Will Tatam
baff1a96ac add comment about limitSoundDynamics 2023-07-27 12:10:26 +01:00
Will Tatam
1b4bd50e26 soundAgc should be none by default 2023-07-27 12:08:42 +01:00
Will Tatam
3367039605 Fix compile errors for packet type 2023-07-27 12:04:53 +01:00
Will Tatam
555ea5c9b2 Fix compile errors for soundAgc and limitSoundDynamics - but not ideal, should only be on the sender 2023-07-27 11:57:28 +01:00
Frank
39db568ca9 increase STACK_BUF_SIZE after PR#59
* increase buffer by 64 bytes (sting added in AR usermod)
* better diag message when buffer is full
* change "Arduino  max stack" to debug message
2023-07-27 12:45:14 +02:00
Frank
1477798bb6 Merge pull request #59 from MoonModules/sync-label
Add extra label to give better info as to what sync actually is
2023-07-26 15:38:52 +02:00
Frank
6521717e90 consider human hearing for "Major Peak" frequency
The "Major Peak" (for double-notes effects) was computed on the raw FFT results.
However the human ear is more sensitive to higher frequencies (pink noise profile).

This code change considers human ear properties for major peak computations.
Effects like "freqmap" will look much more vivid afterwards, as higher frequencies will now have a stronger influence (harmonics are still suppressed properly).
2023-07-26 13:30:44 +02:00
Will Tatam
7a41771382 Attempt at creating audio sync listen EPS8266 2023-07-26 02:31:24 +01:00
Will Tatam
a7e0ba56e4 Attempt at creating audio sync listen EPS8266 2023-07-25 21:19:53 +01:00
Will Tatam
565293ca8c Attempt at creating audio sync listen EPS8266 2023-07-25 19:58:08 +01:00
Will Tatam
a44c14aa9e Attempt at creating audio sync listen EPS8266 2023-07-25 19:47:57 +01:00
Will Tatam
9968b1f9d1 Add extra label to give better info as to what sync actually is 2023-07-25 16:53:36 +01: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
af6091b493 fixing some memory leaks
* audio_reactive.h: catch memory errors from WiFiUDP
* udp: explicitly flush unused receive buffers.
* wled.cpp: additional debug info about "largest available block"
* FX_fcn.cpp: free _globalLeds before running purgeSegments().
2023-06-07 17:10:32 +02:00
TroyHacks
7e1d15c87b Merge branch 'audio_fastpath' of https://github.com/MoonModules/WLED into audio_fastpath 2023-06-07 10:35:51 -04:00
TroyHacks
06344aeb41 FFT UDP fush if not read. 2023-06-07 10:35:28 -04:00
Frank
f0dd66e736 SoundSync: use local static buffer
thanks @netmindz for pointing out.
2023-06-07 14:07:50 +02:00
Frank
b6f1a591ee global buffer for UDP sound sync
to prevent memory fragmentation.
* use global (static) buffer for receiving
* added missing flush()
2023-06-07 12:16:22 +02:00
Will Tatam
b62e9f7278 Remove I2C related code from ES8388 and ES7243 as blazoncek proposes that they are not required if we are always using the system default I2C bus 2023-05-29 18:30:48 +01:00
Frank
49f2e26ab5 arduinoFFT hash update
to fix the gh build, following latest dev.
2023-05-27 00:00:59 +02:00
Frank
df26430e42 audioreactive: replace dynamic buffer with static buffer
using a dynamic array for newSamples[num_samples] was never needed. It was a risks as the buffer was allcated/deallocated with every call of getSamples().
2023-05-25 21:50:44 +02:00
netmindz
e6fb6c4a50 Merge pull request #39 from troyhacks/ES8388-Lyra-T-Fixes-Test
ES8388 LyraT Fixes
2023-05-25 21:49:52 +02:00
Troy
0ff5918e9c Merge branch 'MoonModules:mdev' into ES8388-Lyra-T-Fixes-Test 2023-05-23 12:34:01 -04:00
Frank
6317dcb757 swapped-channel workaround needed a bit longer
It seems that ESP-IDF 4.4.5 will (finally) fix this old bug.  hallelujah.

73ca054b80 (diff-02a5aef0ab7d8485b0a165910efaab3dfc450b473eef0bab1b32bccb4ea85c69)
2023-05-12 19:10:51 +02:00
Frank
477aae95fd swapped-channel workaround needed a bit longer
It seems that ESP-IDF 4.4.5 will (finally) fix this old bug.  hallelujah.

73ca054b80 (diff-02a5aef0ab7d8485b0a165910efaab3dfc450b473eef0bab1b32bccb4ea85c69)
2023-05-11 22:57:18 +02:00
TroyHacks
3df2272791 Warnings about AudioKit rubbish 2023-05-04 08:55:00 -04:00
TroyHacks
1713204bfe Better ES8388 init and mic support 2023-05-01 21:07:33 -04:00
Frank
56b6290fdd Update audio_reactive.h
small oops
2023-04-30 21:03:00 +02:00
Frank
0c58c12d0f audio fastpath: reduce filter delay
- reduced filter strength, which also reduces delays
- increased I2S buffer count, and reduced I2S cycle time to recover from delays faster.
2023-04-30 20:58:06 +02:00
TroyHacks
32a501c2e3 It's offically the LyraT, not Lyra-T. 2023-04-25 23:47:28 -03:00
TroyHacks
00e3f5e5fa Mic settings for ES8388. Also ALC, pass-thru, etc. 2023-04-25 23:45:09 -03:00
TroyHacks
0fd9596860 Fixes for LyraT 2023-04-22 08:35:03 -04:00
TroyHacks
58e2a3992b Some fixes for LyraT and also better inits/docs 2023-04-21 13:58:41 -04:00
Frank
a1bdb47c30 trying to make sound pressure less boring for line-in
"sound pressure" for line-in was always close to max - which is expected, because the ADC chip utilize the full 24/16bit sample range.
The new calculation leads to some more "movement".
2023-04-10 23:57:44 +02:00
Frank
8ba43b63ec Sound pressure: modified correction factors for PDM and analog 2023-04-10 03:29:59 +02:00
Frank
61949cfdc8 Sound Pressure - some optimizations
- slightly extend input range
- add correction factors for some sound sources
- gravimeter: tweaking
2023-04-10 02:04:53 +02:00
Frank
197e120e3b estimated audio sound pressure 2023-04-06 18:58:20 +02:00
Frank
b09077627e low-cut audio input filtering
* 40Hz low-cut and DC blocker filter - will remove any signal offsets and also removes rumbling noise up to 12db
* DC blocker set as default for all sources (prerequisite for later measuring sound pressure)

additional filtering options are in the making :-)
2023-04-06 17:56:32 +02:00
TroyHacks
95d6d186c7 ES8388 init optimizations and fixes 2023-04-05 11:00:14 -04:00
Ewoud
cae1c00467 ARTIFX add support for pixelart + small changes
arti_wled.h:
- add jsonToPixels and frameTime
- change printf to print

usermod_v2_artifx
- return MAX(frameTime,FRAMETIME); 

FX.h and FX_2Dfcn.cpp
- add jsonToPixels

audioreactive.h
- ES8388 allow for default and add moon
2023-04-05 13:22:50 +02:00
TroyHacks
111c8c9202 Merge branch 'ES8388-troyhacks' of https://github.com/troyhacks/WLED into ES8388-troyhacks 2023-04-04 17:04:55 -04:00