Commit Graph

878 Commits

Author SHA1 Message Date
Frank
8c92b76e2e attempt to fix issue #24 (untested)
an attempt to fix problems with SPI OLED displays. It compiles, but not tested yet.
2023-03-23 20:17:17 +01:00
Ewoud
d452da2642 NetDebug fix and small changes
AudioReactive: show ☾ specific
IR: cleanup
json.cpp: bugfix: NetDebug not in presets
wled.cpp and wled_server.cpp: show servername in DEBUG INFO
2023-03-22 16:31:07 +01:00
Frank
78f55bce70 small change
parameter tinkering
2023-03-22 16:10:52 +01:00
Frank
691ad17b04 Small oops 2023-03-20 22:33:10 +01:00
Frank
87069ef7c0 audio processing: MicLevel "FAST freeze mode"
This mode freezes MicLev even fast. However it makes some assumptions that may not always be true:
* At least 12 seconds of silence during start
* a high quality microphone with very low noise level.
--> If you are not sure about these preconditions, better use normal "Freeze" mode.
2023-03-20 22:16:35 +01:00
Frank
fc9f3a1c24 audio processing: minor updates
- small optimizations
- remove overlapping in fft bin -> geq channel mapping
- move "freqRMS" to last position in the UI list
2023-03-20 21:43:58 +01:00
Ewoud
b30438ab1a AR: Add Frequency Distribution Normal and RightShift
Experimental setting
2023-03-20 15:15:04 +01:00
Frank
c0be44e07f audioreactive: experimental options for sound processing
- micLev:  "freeze" mode - should help to prevent short "dropout" wen music is playing
- freqRMS: if set to "On", will use a different method for averaging higher frequencies. May give you more action in GEQ. Could lead to GEQ "overshooting" as Mic Profiles are not adjusted to this method.

* const.h: static json buffer (usermod settings pages) was getting tight, added some margin
2023-03-20 14:11:12 +01:00
Frank
feb5542046 enable filters for legacy PDM 2023-03-19 20:52:36 +01:00
Frank
a525c0633a legacy PDM driver option
for low-cost PDM mics that do not have enough volume when used with the standard PDM driver.
2023-03-19 20:29:09 +01:00
Frank
907679c2f5 Merge remote-tracking branch 'upstream/main' into mdev 2023-03-19 15:15:12 +01:00
Ryan Horricks
7789379914 Fix typing to resolve build errors after installing the mpu6050_imu usermod. 2023-03-18 18:29:19 -06:00
Ewoud
c928df9d70 Usermod class vars pt3:
Moved initDone, addToConfig and readFromConfig to Usermod superclass

Updated cleanup procedure:

Part 1
- remove bool enabled = false/true (now default false)
- remove static const char _name[] and _enabled[]
- add constructor which calls superclass (temp?): XXXUsermod(const char *name, bool enabled):Usermod(name, enabled) {} 
- replace _enabled with "enabled"
- remove const char PROGMEM init for  _name[] and _enabled[]
Part 2
- Remove bool initDone = false;
- addToConfig: replace createNestedObject with Usermod::addToConfig(root); JsonObject top = root[FPSTR(_name)];
- readFromConfig: replace !top.isNull and enabled with bool configComplete = Usermod::readFromConfig(root);JsonObject top = root[FPSTR(_name)];

See Temperature, MPU6050 and weather as examples (rest to be done)
2023-03-16 15:41:23 +01:00
Ewoud
0b841c0788 MM Help small changes (add MPU6050) 2023-03-15 20:36:31 +01:00
Ewoud
ff6d5136ac Usermod class vars pt2: enabled default value 2023-03-15 18:18:11 +01:00
Ewoud
7337efec02 Usermod class vars part1: add enabled and _name for imu and dallas
usermod_mpu6050_imu.h and usermod_temperature.h:
- remove bool enabled = false/true (now default false)
- remove static const char _name[] and _enabled[]
- add constructor which calls superclass (temp?)
- replace _enabled with "enabled"
- remove const char PROGMEM init for  _name[] and _enabled[]

settings_um.htm:
- Add usermod table with class properties (name and enabled) -> WIP as not all UM's now and enable will be checkbox ? (compare with info tab...?)

fcn_declare.h
- add _name and enabled to Usermod class and add name to constructor

usermods_list.cpp
- add Usermod name to constructor for mpu6050 and temperature)
- to do add enabled is true to constructor
2023-03-15 17:48:37 +01:00
Frank
2de7971623 mpu6050 usermod: allow to disable usermod
* added usermod config information (so it can be disabled)
* check that "INTERRUPT_PIN" does support interrupts (MM specific)
* expose "dmpReady" in public interface
* adjusted games usermod to switch to "simulation" in case mpu6050 is not active

Still toDo:
1. add interrupt PIN and errormessages to settings page.
2. de-alloc intPin when disabled (and disable interrupt)
3. usermod is still destroying DEBUG_PRINT macros.
4. temporarily disable MPU interrupt when  onUpdateBegin(true)
2023-03-14 20:52:48 +01:00
Ewoud
a0576ba591 restore MM functionality to not reset segments if 2D settings change!!!
customeffects.js:
- rename downloadCEFile to downloadGHFile
- downloadGHFile: add GH ledmaps folder

FX_fcn.cpp and set.cpp:
- change makeAutoSegments with resetSegments(true)
2023-03-13 21:35:48 +01:00
Frank
2f274399f3 UM rotary bugfix
fixing a crash that was caused by calling updateInterfaces() too often.
2023-03-13 19:13:46 +01:00
Frank
6d1fd3aaa0 usermod updates: RTC, BH1750
RTC: smarter rules for updating RTC time
BH1750 (light meter): allow to use without MQTT; updates for MM specific I2C handling.
2023-03-13 14:09:35 +01:00
Frank
910ce494b4 usermod bugfixes
* rotary ALT: changing brightness did not   have an effect (stateUpdated missing)
* four-line-display ALT: allow clockmode without NTP (network time)
 - there are other possible time sources, like RTC.
2023-03-13 11:35:48 +01:00
Ewoud
ab808c5522 Merge remote-tracking branch 'upstream/main' into mdev 2023-03-12 20:53:22 +01:00
Frank
559716867a minor rewording
seems that nobody understands what "GPIO config" means 😜 maybe "pin settings" is clearer.
2023-03-12 14:59:50 +01:00
Frank
6ea77954bf four-line-display: semaphores to avoid crashes
* some typos fixed
* Added semaphores around display calls; should fix https://github.com/Aircoookie/WLED/issues/3074
-- changes still need some cleanup to improve readability...
2023-03-10 22:44:25 +01:00
Frank
437284d380 4-line-display: font update, setup bugfix
* Improve clock mode for 128x64 OLED, using 2x3 font
* setup() bugfix: install display handler before activating logo
2023-03-09 21:44:27 +01:00
Frank
3a294d0852 four-line-display ALT: nicer font
use a nicer, less blocky font on 128x64 OLED displays (ESP32 only)
2023-03-08 20:44:30 +01:00
Frank
062eb75d06 usermod bugfixes
fixing some "missed corner cases" in popular usermods.
* acessing unitialized arrays
* trying to draw on a non-initialized display
2023-03-08 20:37:27 +01:00
Frank
9d60425d2e attempt to fix issue #21
set.cpp: introduce "-2" => "no value" in addition to "-1" => disable
4LD_ALT:  do not copy "global" pins into UM specific setting; just use them directly.
2023-03-08 19:39:41 +01:00
lost-hope
cb931d7af0 Merge branch 'main' of https://github.com/Aircoookie/WLED into klipper 2023-02-27 21:21:45 +01:00
Ewoud
bb6662ee35 NetDebug: switch between serial/netdebug, store ip and port in settings
pio.ini: enable WLED_DEBUG_HOST in esp32_4MB_M_debug and esp32_16MB_M_debug

audio_reactive, um6050, wled.h
- replace DEBUGOUT.print(x) by DEBUGOUT(x) etc

wled.h: switch between serial/netdebug

cfg.cpp, set.cpp, wled.cpp, xml.cpp
- store netDebugPrintIP and netDebugPrintPort in cfg.json

index.js: rename info tab on off to Net Debug

settings.sync: add netdebug

net_debug.h/cpp: use global netDebugPrintIP remove debugPrintHostIP
2023-02-24 15:40:16 +01:00
lost-hope
339d2a7bf3 Added spreading from center and fixed the enable 2023-02-23 19:47:27 +01:00
Ewoud
4a5cbc9879 Merge remote-tracking branch 'upstream/main' into mdev
Some additions:

pio.ini: add debug entries
cfg.cpp, set.cpp, xml/cpp: keep storing basic 2D setup

index.js: use ledmapFileNames

settings_2D.htm: keep using basic and advanced

FX_2Dfcn.cpp: use gaptable and also MM ledmaps

FX_fcn.cpp: extend enumerateledmaps with AC ledmapNames (but not used in UI)
2023-02-22 16:09:27 +01:00
Christian Schwinne
220718cb58 Remove Blynk support (#3102)
Change default palette for Railway to Colors 1 and 2
2023-02-21 17:07:32 +01:00
lost-hope
2b87817ba2 enabled IP Change and updated the Readme 2023-02-19 09:08:40 +01:00
Ewoud
57b8157e41 Bugfix 2023-02-15 21:38:01 +01:00
Ewoud
ab8b260608 Segment visualization fix show fx name 2023-02-15 18:13:30 +01:00
Ewoud
515c872770 Fix WLED_DISABLE_2D compile error 2023-02-15 10:59:14 +01:00
Ewoud
4ed1473bcc Ledmap not found no toast 2023-02-14 22:17:11 +01:00
Blaž Kristan
a7cded21f7 Merge branch 'main' into led-gaps 2023-02-14 14:28:10 +01:00
Blaz Kristan
821f320347 Add user selectable Gamma
Add panel visualisation (@ewoudwijma, #3090)

Bugfix:
- PIR onStateChange() ignored until inited
- remove matrix orientation
- ignore removing ledmap 0 if 2D
- _globalLeds size
2023-02-12 13:18:30 +01:00
Ewoud
81322a31fe Merge remote-tracking branch 'upstream/main' into mdev 2023-02-10 17:14:50 +01:00
Ewoud
40e82166bc Ledmap persistent/consistent and showing in segment graph +small changes
pio.ini: remove ping pong clock from _all
ce.js: change on error handling
liveviewws2D: add colorAdjust
json.cpp: ledmaps will be stored in json/info 
settings_2D: fieldChange at loadJS

FX_(2D)fcn.cpp:
- loadedLedmap default 0 (default)
- loadedLedmap active then only use if index <size

index.js:
- global ledmap set to active value
- draw to drawSegments
- gradient colored leds
- add ledmaps to graphics
- add fetchAndExecute (from custom effects), used by drawSegments to get ledmap contents
- graphics bigger in non pc mode
2023-02-10 16:26:35 +01:00
Blaž Kristan
f2459ea904 Add ability to use SHT temp. sensor in PWM fan 2023-02-10 09:33:27 +01:00
Ulrich Baumann
e2215ced34 allow alternative northern style ("viertel vor ..." instead of (#3085)
"dreiviertel ..")

Co-authored-by: Uli Baumann <github@uli-baumann.de>
2023-02-09 00:23:53 +01:00
Ewoud
3cf35f85f3 Merge remote-tracking branch 'upstream/main' into mdev 2023-02-06 21:06:13 +01:00
Ewoud
2a890f5e1e Segments: add graphical display of segments part 1
Custom Effects: Add 🥚🥚 for HBaas effect presons

Index.js/htm:
- add ctx (context)
- add hidden input field fx
- add draw() function for graphics (segment bounds, mirror/reverse/transpose/leds/Nr/FX

settings2D
- move ctx init to draw
- set space 0
- center text
2023-02-06 19:57:25 +01:00
Blaz Kristan
48c267c5c1 Bugfix. 2023-02-05 17:57:22 +01:00
Ewoud
f71e6262f6 2D setup: add graphical display of panels
FX.h, cfg.cpp, set.cpp, xml.cpp:
- add basic or advanced: bOrA / ba (mpv, mph done earlier)
- add 1st led: panelO / pbl, prl, pvl, psl

settings_2D.htm
- add canvas / context
- addPanel: 1st LED: copy from Matrix setup and draw() on all fields
2023-02-05 16:22:40 +01:00
Blaz Kristan
c041d39cab Usermod enhancements
- added onStateChange() callback
- added examples & comments to usermod_v2_example.h
- PIR sensor cancels countdown on state change
2023-02-05 12:23:05 +01:00
Frank
e1f14628b0 4LD + rotary hotfix: corrupted display on esp32
This s a temporary fix for display problems (corrupted display, sometimes crash). These problems exists since 0.14. as display updates are now running in a separate task.
The fix is still incomplete.

If nothing else works, you can use the 0.13.x behavior by compiling with `-D FLD_ESP32_NO_THREADS`

* fixing a few unsafe string operations and non-initialized strings
* fix max length for "two lines" names
* make sure that display methods are exiting early if display is not configured
* rotary_ALT : additional checks to ensure that drawing on the display does not overlap with redraw
* added some safeguards to prevent overlapping display redraw operations
--> Actually this should use semaphore/mutex instead of global booleans -> Still on my toDo list.
2023-02-02 18:37:13 +01:00