Skip to content

Commit ba337ab

Browse files
committed
Merge remote-tracking branch 'upstream/0_15' into FXparticleSystem
2 parents 0b45f66 + 3f9a6ca commit ba337ab

File tree

12 files changed

+375
-360
lines changed

12 files changed

+375
-360
lines changed

CHANGELOG.md

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,15 @@
11
## WLED changelog
22

3+
#### Build 240503
4+
- Using brightness in analog clock overlay (#3944 by @paspiz85)
5+
- Add Webpage shortcuts (#3945 by @w00000dy)
6+
- ArtNet Poll reply (#3892 by @askask)
7+
- Improved brightness change via long button presses (#3933 by @gaaat98)
8+
- Relay open drain output (#3920 by @Suxsem)
9+
- NEW JSON API: release info (update page, `info.release`)
10+
- update esp32 platform to arduino-esp32 v2.0.9 (#3902)
11+
- various optimisations and bugfixes (#3952, #3922, #3878, #3926, #3919, #3904 @DedeHai)
12+
313
#### Build 2404120
414
- v0.15.0-b3
515
- fix for #3896 & WS2815 current saving

usermods/audioreactive/audio_reactive.h

Lines changed: 7 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -183,7 +183,6 @@ constexpr uint16_t samplesFFT_2 = 256; // meaningfull part of FFT resul
183183
// These are the input and output vectors. Input vectors receive computed results from FFT.
184184
static float vReal[samplesFFT] = {0.0f}; // FFT sample inputs / freq output - these are our raw result bins
185185
static float vImag[samplesFFT] = {0.0f}; // imaginary parts
186-
static float windowWeighingFactors[samplesFFT] = {0.0f};
187186

188187
// Create FFT object
189188
// lib_deps += https://github.com/kosme/arduinoFFT#develop @ 1.9.2
@@ -196,7 +195,8 @@ static float windowWeighingFactors[samplesFFT] = {0.0f};
196195

197196
#include <arduinoFFT.h>
198197

199-
static ArduinoFFT<float> FFT = ArduinoFFT<float>( vReal, vImag, samplesFFT, SAMPLE_RATE, windowWeighingFactors);
198+
/* Create FFT object with weighing factor storage */
199+
static ArduinoFFT<float> FFT = ArduinoFFT<float>( vReal, vImag, samplesFFT, SAMPLE_RATE, true);
200200

201201
// Helper functions
202202

@@ -1121,6 +1121,11 @@ class AudioReactive : public Usermod {
11211121
delay(100); // Give that poor microphone some time to setup.
11221122

11231123
useBandPassFilter = false;
1124+
1125+
#if !defined(CONFIG_IDF_TARGET_ESP32S2) && !defined(CONFIG_IDF_TARGET_ESP32C3)
1126+
if ((i2sckPin == I2S_PIN_NO_CHANGE) && (i2ssdPin >= 0) && (i2swsPin >= 0) && ((dmType == 1) || (dmType == 4)) ) dmType = 5; // dummy user support: SCK == -1 --means--> PDM microphone
1127+
#endif
1128+
11241129
switch (dmType) {
11251130
#if defined(CONFIG_IDF_TARGET_ESP32S2) || defined(CONFIG_IDF_TARGET_ESP32C3) || defined(CONFIG_IDF_TARGET_ESP32S3)
11261131
// stub cases for not-yet-supported I2S modes on other ESP32 chips

wled00/data/index.js

Lines changed: 18 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -272,6 +272,7 @@ function onLoad()
272272

273273
selectSlot(0);
274274
updateTablinks(0);
275+
handleLocationHash();
275276
cpick.on("input:end", () => {setColor(1);});
276277
cpick.on("color:change", () => {updatePSliders()});
277278
pmtLS = localStorage.getItem('wledPmt');
@@ -304,7 +305,6 @@ function updateTablinks(tabI)
304305
{
305306
var tablinks = gEBCN("tablinks");
306307
for (var i of tablinks) i.classList.remove('active');
307-
if (pcMode) return;
308308
tablinks[tabI].classList.add('active');
309309
}
310310

@@ -315,6 +315,21 @@ function openTab(tabI, force = false)
315315
_C.classList.toggle('smooth', false);
316316
_C.style.setProperty('--i', iSlide);
317317
updateTablinks(tabI);
318+
switch (tabI) {
319+
case 0: window.location.hash = "Colors"; break;
320+
case 1: window.location.hash = "Effects"; break;
321+
case 2: window.location.hash = "Segments"; break;
322+
case 3: window.location.hash = "Presets"; break;
323+
}
324+
}
325+
326+
function handleLocationHash() {
327+
switch (window.location.hash) {
328+
case "#Colors": openTab(0); break;
329+
case "#Effects": openTab(1); break;
330+
case "#Segments": openTab(2); break;
331+
case "#Presets": openTab(3); break;
332+
}
318333
}
319334

320335
var timeout;
@@ -3051,8 +3066,7 @@ function togglePcMode(fromB = false)
30513066
pcMode = (wW >= 1024) && pcModeA;
30523067
if (cpick) cpick.resize(pcMode && wW>1023 && wW<1250 ? 230 : 260); // for tablet in landscape
30533068
if (!fromB && ((wW < 1024 && lastw < 1024) || (wW >= 1024 && lastw >= 1024))) return; // no change in size and called from size()
3054-
openTab(0, true);
3055-
updateTablinks(0);
3069+
if (pcMode) openTab(0, true);
30563070
gId('buttonPcm').className = (pcMode) ? "active":"";
30573071
gId('bot').style.height = (pcMode && !cfg.comp.pcmbot) ? "0":"auto";
30583072
sCol('--bh', gId('bot').clientHeight + "px");
@@ -3214,6 +3228,7 @@ size();
32143228
_C.style.setProperty('--n', N);
32153229

32163230
window.addEventListener('resize', size, true);
3231+
window.addEventListener('hashchange', handleLocationHash);
32173232

32183233
_C.addEventListener('mousedown', lock, false);
32193234
_C.addEventListener('touchstart', lock, false);

wled00/fcn_declare.h

Lines changed: 1 addition & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -143,20 +143,8 @@ void handleImprovWifiScan();
143143
void sendImprovIPRPCResult(ImprovRPCType type);
144144

145145
//ir.cpp
146-
void applyRepeatActions();
147-
byte relativeChange(byte property, int8_t amount, byte lowerBoundary = 0, byte higherBoundary = 0xFF);
148-
void decodeIR(uint32_t code);
149-
void decodeIR24(uint32_t code);
150-
void decodeIR24OLD(uint32_t code);
151-
void decodeIR24CT(uint32_t code);
152-
void decodeIR40(uint32_t code);
153-
void decodeIR44(uint32_t code);
154-
void decodeIR21(uint32_t code);
155-
void decodeIR6(uint32_t code);
156-
void decodeIR9(uint32_t code);
157-
void decodeIRJson(uint32_t code);
158-
159146
void initIR();
147+
void deInitIR();
160148
void handleIR();
161149

162150
//json.cpp

0 commit comments

Comments
 (0)