Commit Graph

1052 Commits

Author SHA1 Message Date
Will Tatam
f99856e863 Log packet counters 2023-10-08 19:35:26 +01:00
Will Tatam
3b5c95b5e0 Try adding frame counter to detect duplicate or out of order sync frames 2023-10-08 14:10:48 +01:00
Frank
1fa5dc8ea8 audioreactive - spelling corrections in comments 2023-10-08 01:36:08 +02:00
Frank
b249a5af5e arduino-esp32 2.0.14 still contains the left-right-swapped bug
* use left-right-workaround up IDF 4.4.6
* fix for small typos
2023-10-08 00:03:11 +02:00
Frank
0ba8402e72 Align ADC init with WLED-SR
Feedback from SR is "it works better with analog", so let's align the driver code as much as possible.
2023-09-23 22:49:09 +02:00
Frank
7425b437da (WIP) adjust Battery usermod for "MM Style"
seems to work, but still needs more testing.
2023-09-20 00:43:03 +02:00
Frank
e28d303d4c adjust RTC usermod for "MM Style" 2023-09-19 22:54:08 +02:00
Frank
acc2d3aa10 clean up I2C pin handling in audioreactive (ES7243+ES8388)
* remove double Wire.begin() - Wire cannot be re-initialized; its already started by pinManager.joinWire()
* Only use global I2C pins; make sure that audireactive I2C settings are aligned with global I2C pins
* minor cleanup
* remove I2C pins from AudioSource::initialize()

Note to self: sdaPin, sclPin are just dummy values now, good for UI consistency, but unused otherwise. Could be removed.
2023-09-19 19:33:36 +02:00
Frank
b3d9621427 fix wrong signature of SPH0654::initialize()
* debug messages added to different initializers
* SPH0654::initialize() was having a wrong signature: uint8 instead of int8.

C++ can be a real bastard ;-)
2023-09-19 16:42:45 +02:00
Frank
89c33607bc SR_DEBUG shows stack high water marks
some debug support for showing free stack space.
2023-09-18 22:05:53 +02:00
Frank
64223dbc02 audioreactive: stack size tuning
This gives ~3KB extra free heap on -S2.
2023-09-14 18:31:24 +02:00
Frank
1ddb654bab autosave usermod: minor fix
display->canDraw() is only availeable in _ALT four-line-display usermod
2023-09-11 12:02:10 +02:00
Blaz Kristan
a26ff4ccbd Button bugfix. 2023-09-01 10:48:33 +02:00
Frank
129f5ec312 release preparations
* npm run build
* enable CI build for esp32_4MB_S and esp32S3_8MB_S (both optimized for speed)
* add animartrix to esp32S3_8MB_S
* workaround for gcc ICE (only happens with V4 framework and -O2 optimize for speed)
2023-08-27 00:54:14 +02:00
Frank
523893be02 8266 audioreactive: fix crash during OTA
* fix crash when starting OTA: `Panic core_esp8266_main.cpp:191 __yield `
* prevent sound sync reconnect during OTA
2023-08-25 16:18:37 +02:00
Frank
07d204e431 enable AGC in new installs
if SR_SQUELCH is specified by the build env, change AGC default to enabled.
2023-08-25 15:00:49 +02:00
Frank
730b0ece87 cleanup for the cleanup
eliminating a duplicate condition in `#if`
2023-08-24 22:56:02 +02:00
Frank
31badb0e66 8266 onUpdateBegin, and minor cleanup
* 8266 audioreactive: added minimal `onUpdateBegin()`
* small cleanups
2023-08-24 22:50:50 +02:00
Frank
63375f5c84 esp32 audioreactive bugfix
small mistake, huge impact: the right way is to first create our FFT task, then check if task creation was successful.
2023-08-24 22:21:48 +02:00
netmindz
1b3ae20e6d Merge pull request #60 from MoonModules/ESP8266-Sync
Audio sync receive only - EPS8266
2023-08-23 18:59:45 +01:00
Frank
ecc6f1aa62 bugfix
seems I was too fast with removing _P from strncmp_P
2023-08-23 15:39:32 +02:00
Frank
3255530ee3 basic debug support on 8266 2023-08-23 14:40:47 +02:00
Frank
d221745e3f some improvements
* remove some internal variables (soundAgc, multAgc, ....)
* prototype for autoResetPeak(void)
* changed `#ifndef ESP8266` to `#ifdef ARDUINO_ARCH_ESP32`
* replacement code for computing max sample
* Info Page: "audio source" added (idle/receiving/not connected/Off)
2023-08-23 12:37:30 +02:00
Frank
2cc6925f17 agcSensitivity (to align um_data with esp32)
all elements of um_data must be filled, otherwise some effects will crash.
This adds a dummy " agcSensitivity" value that stays at 128.
2023-08-22 23:42:03 +02:00
Frank
f689d5115b 8266 hotfix: solving connectivity problems
* it seems that `WiFiUDP.flsuh()` does something completely different from 8266, and  its actually causing WLED to stall on UI calls. So not usable on 8266.
* fixing a few compiler warnings about "comparing signed and unsigned"

NB: its a hotfix, we have to check if there are other problems on 8266. Also its definitely ugly, but it helps as a band aid.
2023-08-22 23:17:57 +02:00
Frank
92e64b797a 8266 hotfix: solving connectivity problems
* it seems that `WiFiUDP.flsuh()` does something completely different from 8266, and  its actually causing WLED to stall on UI calls. So not usable on 8266.
* fixing a few compiler warnings about "comparing signed and unsigned"

NB: its a hotfix, we have to check if there are other problems on 8266. Also its definitely ugly, but it helps as a band aid.
2023-08-22 22:55:05 +02:00
Will Tatam
0672d1c59d Fix maxVol and binNum 2023-08-13 17:16:11 +01:00
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
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
5fe12eef5a Merge branch 'mdev' into audio_fastpath 2023-07-08 19:23:36 +02:00