Commit Graph

4335 Commits

Author SHA1 Message Date
Blaz Kristan
e629c90a71 Missing UDP sync notifications bugfix. 2022-12-05 22:56:44 +01:00
Frank
e7f07f5bfc pinmanager robustness improvement
make sure that array bounds are not violated in pinManager class.
2022-12-05 17:04:54 +01:00
Frank
da7972c119 use latest NeoPixelBus for -S3
NeoPixelBus 2.7.1 is the first release that has official support for ESP32-S3
2022-12-05 16:20:58 +01:00
Frank
a2c707831c rotarybugfix fix 2022-12-05 14:20:38 +01:00
Frank
fced662e49 rotary encoder bugfixes
- do not call pinMode on pin = -1 ([E][esp32-hal-gpio.c:102] __pinMode(): Invalid pin selected)
- support encoder without "C" pin, i.e. no pushbutton function
2022-12-05 14:04:16 +01:00
Frank
58688d25ae update for usermessages
wled.h:
- Don't use Serial directly -S2 as S2 serial driver is buggy.
- added USER_FLUSH macro
wled.cpp
- replace fluh with FLUSH
- print ArduionoOTA info (if enabled)
wled_server.cpp:
- added userlog info after file upload.
pinn_manager:
- don't show "(default)" is the PIN is actually assigned to HW drivers
- bugfix for getPinOwner()
2022-12-05 12:48:03 +01:00
Frank
6a96963ab1 serial.flush() when writing out GPIO table
i have experienced lost lines in the table
2022-12-04 22:46:00 +01:00
Frank
ce5e631ee4 removing serial.flush()
removed, as not strictly necessary, and it may cause delays of up to 4ms for a long line.
2022-12-04 21:49:29 +01:00
Frank
73d491eb40 MM version 0.14.0.9 2022-12-04 20:14:37 +01:00
Frank
0c3adf1f8a pin info small improvements 2022-12-04 20:09:10 +01:00
Frank
4eaa2b2d17 this looks a bit nicer 2022-12-04 18:31:10 +01:00
Frank
676cc26171 use Serial.print for important info like wifi stuff
.. and for other important info.
Will be muted automatically in case that serial is in used for other purposes.
2022-12-04 17:52:10 +01:00
Frank
1a9a1cbbbe small change to simplify pin info texts 2022-12-04 16:54:12 +01:00
Frank
bb8fb5f6aa pin info improvements
- add WLED_NUM_PINS constant, to get rid of magic number "50"
- only show I2S defaults when USERMOD_AUDIOREACTIVE is enabled
- added alternate names for SPI pins
- small correction for -C3
2022-12-04 14:43:31 +01:00
Frank
eaa619df69 pin info: conflicts include input-only
record conflict if pin was requested as in/out but pin is input-only
2022-12-04 02:50:57 +01:00
Frank
d2d8a86d81 pin info: show conflicts
* set.cpp: reject non-ADC pins as analog button pins (bugfix)
* pinmanager:
record conflicts
added getOwnerText(PinOwner tag) and getPinConflicts(int gpio)

GPIO    | Assigned to           | Info
--------|-----------------------|------------
i/o   0   Button            !! Conflict with AudioReactive (UM) !!        (default) I2S MCLK
i/o   1   debug output            Serial TX
i/o   2   ./.                     (default) LED pin
i/o   3   ./.                     Serial RX
i/o   5   ./.                     (default) SPI SS
i/o  13   Button            !! Conflict with IR Receiver !!

PIN ALLOC error: GPIO19 for analog button #2 is not an analog pin!
2022-12-04 02:22:50 +01:00
Frank
4bafc222f9 library upgrades for -S3 [env:esp32S3_8MB_max]
still trying to find the root case of problems on -S3 with 4LD and temperature usermods.
2022-12-03 22:58:49 +01:00
cschwinne
efc476e50b Disable register keyword to reduce compiler warnings
Minor formatting improvements
"ps" string optimization
Removed travis envs
2022-12-03 20:55:17 +01:00
Frank
52c3aa8378 small, very small change
JTAG debug pins seems to be irrelevant on ESP32
2022-12-02 20:32:53 +01:00
Frank
33f4e8cf73 pinmanager bugfix for -S2/-S3
pinmanager ran out out array bounds on -S2 and -S3, as these MCUs have more than 40 GPIO. As consequence, memory was overwriten, and pins > 39 were reported as "allocated" but not "owned".

Thisfixes the problem, by extending internal arrays so that up to 50 pins can be managed.
2022-12-02 20:08:11 +01:00
Frank
f9e31e0b56 update for env:esp32S3_8MB_max
- better allocation of default pins
- un-flag DMX output (driver hangs)
- un-flag Temperature (usermod setups hangs)
- temporarily un-flag I2C usermods. They also hang during init - probably a different I2C driver is needed. Will investigate later.
2022-12-02 19:10:33 +01:00
Frank
3b6f4bee4b Pinmanager bugfix
fixing some array-out-of-bounds problems that happens on MCUs with more than 40 GPIO (-S2, -S3).
PinManager wrongly reprted the pins as "allocated"  but "no owner"!
2022-12-02 17:57:50 +01:00
Frank
61f062d0e5 GPIO info - more infos
- include -S3, -S2, -C3
- include fixed hardware pins, and WLED default pins
2022-12-02 17:53:54 +01:00
Frank
aa5169b5f5 almost tiny update (GPIO info)
show special Info for WLED STATUSLED, and DMX hardcoded GPIO
2022-12-02 00:37:30 +01:00
Frank
fb45243023 DMX out: warning when compiling with new ESP-IDF versions
I have observed crashes (watchdog timeout) so let's warn users ...

E (24101) task_wdt: Task watchdog got triggered. The following tasks did not reset the watchdog in time:
E (24101) task_wdt:  - IDLE (CPU 0)
E (24101) task_wdt: Tasks currently running:
E (24101) task_wdt: CPU 0: FFT
E (24101) task_wdt: CPU 1: IDLE
E (24101) task_wdt: Aborting.
abort() was called at PC 0x40143b6c on core 0

Backtrace:0x4008500d:0x3ffbf28c |<-CORRUPTED
2022-12-02 00:18:03 +01:00
Frank
0dfc884c64 very medium updates (GPIO info, part1)
Improvements for debugging GPIO conflicts. HTML UI integration still pending.

* pinManager can be asked for pin owner (String) and pin special purpose (string).
* wled.cpp: show GPIO allocation when compiling with WLED_DEBUG
* pinmanager: show Pin Owner as name when possible.

The results looks like this

GPIO    | Assigned to           | Info
--------|-----------------------|------------
i/o   0   Button
i/o   1   debug                   Serial TX
i/o   2   DMX out
i/o   3   ./.                     Serial RX
i/o   5   ./.                     SPI SS
i/o  15   AudioReactive (UM)
i/o  16   LEDs (digital)
i/o  17   Relay
i/o  18   ./.                     SPI CLK
i/o  19   IR Receiver             SPI MISO
i/o  21   I2C                     I2C SDA
i/o  22   I2C                     I2C SCL
i/o  23   ./.                     SPI MOSI
i/o  32   AudioReactive (UM)
2022-12-02 00:11:28 +01:00
Ewoud
fc4170292a Very small updates 2022-11-30 19:53:10 +01:00
Blaz Kristan
643f300792 Playlist creation bugfix (preset 0 selected). 2022-11-30 19:34:32 +01:00
Ardi Loot
bd601ad2da PWM outputs usermod (#2912)
* first commit of PWM outputs

* fix pin deallocation issue

* refactoring

* removed debug prints

* fix compile error

* added readme

* added compile error for ESP8266

* added overloaded SetDuty method

* convert state to separate nested object

* Revert "added overloaded SetDuty method"

This reverts commit e8ea32f577c85cbdc5d5d130cbead66f37c0caca.

* move constant strings to flash

* reworked json info and config

* bugfixes

* more bugfixes

* updated readme

* use C strings instead of String

* added uint8 and uint16 overloads for SetDuty

* removed ambiguous overload
2022-11-30 09:15:07 +01:00
Frank
125017f57d small updates
- colors: add clarification that alternative table does not affect NeopPixelBus colors
- npm run build
- build number up
2022-11-29 22:20:37 +01:00
Frank
dc80a85c55 update V4 targets to new NeoPixelBus 2.7.1
makuna/NeoPixelBus @ 2.7.1 was just released. This upgrades all "V4" targets to use the new release.
2022-11-29 22:18:15 +01:00
Frank
c8bc917aaf color management: experimental CIE1931 lookup table
CIE table is better to preserve low brightness colors (original gamma table will map many low values to 0)
2022-11-29 21:26:34 +01:00
Frank
681987e52d samplePeak debugging feature (SR_DEBUG)
if SR_DEBUG
* Gravimeter: top 2 pixels show samplePeak status (green=peak)
* GEQ top left/right pixels show samplePeak status (green=peak)

I've used this trick so often, let's make it an official debug tool ;)
2022-11-29 19:20:07 +01:00
Ewoud
e799cb5bd1 CustomFX, platformIO and bin name: small updates
platformio: 
- remove ABL_MILLIAMPS_DEFAULT from build_flags_min, set default 1500 in const.h
- add default in wemos_shield_esp32_4MB_max_base
- add wemos_shield_esp32_16MB_SPM1423_max

arti_wled.h: bugfix use all leds in 2D
usermod_v2_customeffects.h: fill black if call==0

index.js and xml.cpp: bin name: replace one _ by ' ' to enable line wrap in info tab and ota update
2022-11-29 15:32:26 +01:00
Blaž Kristan
9f1a7a1c20 Swap info. 2022-11-29 15:02:56 +01:00
Frank
1f0b53ce7a prepare for merge with upstream
- prepare for merging upstream
--> audiorective files should stay the same after merging!
- makuna just release NeoPixelBus 2.7.1 -> use for "V4" build
2022-11-29 13:49:17 +01:00
mx
bd721c1310 Merge branch 'Aircoookie:main' into pr_fxsegs 2022-11-29 00:54:15 +01:00
Frank
98138a02e3 audioreactive usermod update (align with MoonMod code) (#2907)
* audioreactive driver update

- Better handling of PDM and I2S Line-in
- Bugfixes for ES7243 (allocateMultiplePins)
- More error messages for ES7243
- sample scaling (needed for sources that use full scale of samples)

* audiorective update

* align SR_DEBUG with WLED_DEBUG
* optional bandpass filter (needed for PDM mics)
* sample scaling for PDM and Line-In
* small improvements for analog input
* bugfixes and small performance improvements
* code for FFT task refactored, for better readablity. Introduces separate functions for filtering and post-processing
* small improvement for beat detection
* default mic settings can be configured at compile time
* correct mic type if MCU does not support PDM or ADC
* hide analog PIN config if not supported by MCU

* audioreactive updates

- minor updates to source code (see discussion in PR #2907)
- usermod readme improvements

* small readme update

* one think I overlooked

* ok, another edit. Now its final. Hopefully.

* small upps

wrong parameter order in debug message.
2022-11-28 20:52:33 +01:00
Ewoud
8f4c6d625d Fix typo USE_ALT_DISPl/LAY 2022-11-28 20:42:09 +01:00
Ewoud
bf51b0bdf1 addInfo fix and simpler version numbering system
- addInfo: revert back to initial solution to fix mixing up pre and post
- new version: 0.14.0.7 (stop using 2 digits at the end
2022-11-28 20:34:42 +01:00
Ewoud
91c2ce0d8f Merge remote-tracking branch 'origin/ac_main' into mdev 2022-11-28 19:58:51 +01:00
Will Tatam
0a8347fb74 Further work in progress on ES8388 driver 2022-11-27 16:54:05 +00:00
netmindz
91fd6b7a7c Merge branch 'MoonModules:mdev' into ES8388 2022-11-27 14:54:51 +00:00
Blaz Kristan
f7004e7a7c Allow disable internal pull-up resistors.
Fixes #2896 and #2899
2022-11-26 23:56:55 +01:00
Frank
4cedcf6ad8 PIO: fix platformV4_packages
It seems that "platformio/framework-arduinoespressif32@ ~3.20004.220825" was removed/renamed very recently.
2022-11-26 22:26:18 +01:00
Christian Schwinne
1db25d4b20 FX data optimization (#2908)
* Do not require commas between ! in fxdata

* Updating fxdata: Halfway through the FX list

* fxdata flags and optimizations

* Revert optional commas after !
2022-11-26 21:31:45 +01:00
mxklb
507e198b70 Minor cleanups 2022-11-26 17:22:03 +01:00
mx
5c721ee435 Merge branch 'Aircoookie:main' into pr_fxsegs 2022-11-26 17:15:55 +01:00
Frank
9a44f0c869 small update for env:esp32s3dev_8MB_PSRAM
- corrected board
- added link to workaround
2022-11-26 15:13:54 +01:00
mxklb
8c5f9b4501 Added missing DMX effect options and 3rd color 2022-11-26 14:41:59 +01:00