Skip to content

Commit 7b248c8

Browse files
committed
WLED 0.15.0-b4 release
- LED settings update (limit to available outputs) - minor fixes
1 parent f0e4dd9 commit 7b248c8

File tree

15 files changed

+2021
-1905
lines changed

15 files changed

+2021
-1905
lines changed

CHANGELOG.md

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

3+
#### Build 2406290
4+
- WLED 0.15.0-b4 release
5+
- Add LD2410 sensor usermod (#4013 by @wesleygas)
6+
- LED settings bus management update (WARNING only allow available outputs)
7+
- Add ETH support for LILYGO-POE-Pro (#4030 by @rorosaurus)
8+
- Update usermod_sn_photoresistor (#4017 by @xkvmoto)
9+
- Several internal fixes and optimisations
10+
- move LED_BUILTIN handling to BusManager class
11+
- reduce max panels (web server limitation)
12+
- edit WiFi TX power (ESP32)
13+
- keep current ledmap ID in UI
14+
- limit outputs in UI based on length
15+
- wifi.ap addition to JSON Info (JSON API)
16+
- relay pin init bugfix
17+
- file editor button in UI
18+
- ESP8266: update was restarting device on some occasions
19+
- a bit of throttling in UI (for ESP8266)
20+
21+
#### Build 2406120
22+
- Update NeoPixelBus to v2.8.0
23+
- Increased LED outputs one ESP32 using parallel I2S (up to 17)
24+
- use single/mono I2S + 4x RMT for 5 outputs or less
25+
- use parallel x8 I2S + 8x RMT for >5 outputs (limit of 300 LEDs per output)
26+
- Fixed code of Smartnest and updated documentation (#4001 by @DevilPro1)
27+
- ESP32-S3 WiFi fix (#4010 by @cstruck)
28+
- TetrisAI usermod fix (#3897 by @muebau)
29+
- ESP-NOW usermod hook
30+
- Update wled.h regarding OTA Password (#3993 by @gsieben)
31+
- Usermod BME68X Sensor Implementation (#3994 by @gsieben)
32+
- Add a usermod for AHT10, AHT15 and AHT20 temperature/humidity sensors (#3977 by @LordMike)
33+
- Update Battery usermod documentation (#3968 by @adamsthws)
34+
- Add INA226 usermod for reading current and power over i2c (#3986 by @LordMike)
35+
- Bugfixes: #3991
36+
- Several internal fixes and optimisations (WARNING: some effects may be broken that rely on overflow/narrow width)
37+
- replace uint8_t and uint16_t with unsigned
38+
- replace in8_t and int16_t with int
39+
- reduces code by 1kB
40+
341
#### Build 2405180
442
- Official 0.15.0-b3 release
543
- Merge 0.14.3 fixes

package-lock.json

Lines changed: 2 additions & 2 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "wled",
3-
"version": "0.15.0-b3",
3+
"version": "0.15.0-b4",
44
"description": "Tools for WLED project",
55
"main": "tools/cdata.js",
66
"directories": {

platformio_override.sample.ini

Lines changed: 20 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ default_envs = WLED_tasmota_1M # define as many as you need
1010
#----------
1111
# SAMPLE
1212
#----------
13-
[env:WLED_tasmota_1M]
13+
[env:WLED_generic8266_1M]
1414
extends = env:esp01_1m_full # when you want to extend the existing environment (define only updated options)
1515
; board = esp01_1m # uncomment when ou need different board
1616
; platform = ${common.platform_wled_default} # uncomment and change when you want particular platform
@@ -26,9 +26,9 @@ lib_deps = ${esp8266.lib_deps}
2626
; adafruit/Adafruit BME280 Library@^2.2.2
2727
; Wire
2828
; robtillaart/SHT85@~0.3.3
29-
; gmag11/QuickESPNow ;@ 0.6.2
29+
; ;gmag11/QuickESPNow @ ~0.7.0 # will also load QuickDebug
3030
; https://github.com/blazoncek/QuickESPNow.git#optional-debug ;; exludes debug library
31-
; https://github.com/kosme/arduinoFFT#develop @ 2.0.1 ;; used for USERMOD_AUDIOREACTIVE
31+
; ${esp32.AR_lib_deps} ;; used for USERMOD_AUDIOREACTIVE
3232
build_unflags = ${common.build_unflags}
3333
build_flags = ${common.build_flags} ${esp8266.build_flags}
3434
;
@@ -51,6 +51,11 @@ build_flags = ${common.build_flags} ${esp8266.build_flags}
5151
; -D WLED_DISABLE_ESPNOW
5252
; -D WLED_DISABLE_BROWNOUT_DET
5353
;
54+
; enable optional built-in features
55+
; -D WLED_ENABLE_PIXART
56+
; -D WLED_ENABLE_USERMOD_PAGE # if created
57+
; -D WLED_ENABLE_DMX
58+
;
5459
; PIN defines - uncomment and change, if needed:
5560
; -D LEDPIN=2
5661
; or use this for multiple outputs
@@ -64,6 +69,8 @@ build_flags = ${common.build_flags} ${esp8266.build_flags}
6469
;
6570
; Limit max buses
6671
; -D WLED_MAX_BUSSES=2
72+
; -D WLED_MAX_ANALOG_CHANNELS=3 # only 3 PWM HW pins available
73+
; -D WLED_MAX_DIGITAL_CHANNELS=2 # only 2 HW accelerated pins available
6774
;
6875
; Configure default WiFi
6976
; -D CLIENT_SSID='"MyNetwork"'
@@ -128,12 +135,12 @@ build_flags = ${common.build_flags} ${esp8266.build_flags}
128135
;
129136
; Use PIR sensor usermod and configure it to use GPIO4 and timer of 60s
130137
; -D USERMOD_PIRSWITCH
131-
; -D PIR_SENSOR_PIN=4
138+
; -D PIR_SENSOR_PIN=4 # use -1 to disable usermod
132139
; -D PIR_SENSOR_OFF_SEC=60
140+
; -D PIR_SENSOR_MAX_SENSORS=2 # max allowable sensors (uses OR logic for triggering)
133141
;
134142
; Use Audioreactive usermod and configure I2S microphone
135143
; -D USERMOD_AUDIOREACTIVE
136-
; -D UM_AUDIOREACTIVE_USE_NEW_FFT
137144
; -D AUDIOPIN=-1
138145
; -D DMTYPE=1 # 0-analog/disabled, 1-I2S generic, 2-ES7243, 3-SPH0645, 4-I2S+mclk, 5-I2S PDM
139146
; -D I2S_SDPIN=36
@@ -155,18 +162,22 @@ build_flags = ${common.build_flags} ${esp8266.build_flags}
155162
; -D DEFAULT_LED_COUNT=30
156163
; or this for multiple outputs
157164
; -D PIXEL_COUNTS=30,30
158-
;
159-
; set milliampere limit when using ESP pin to power leds
165+
;
166+
; set the default LED type
167+
; -D DEFAULT_LED_TYPE=22 # see const.h (TYPE_xxxx)
168+
;
169+
; set milliampere limit when using ESP power pin (or inadequate PSU) to power LEDs
160170
; -D ABL_MILLIAMPS_DEFAULT=850
171+
; -D LED_MILLIAMPS_DEFAULT=55
161172
;
162173
; enable IR by setting remote type
163-
; -D IRTYPE=0 ;0 Remote disabled | 1 24-key RGB | 2 24-key with CT | 3 40-key blue | 4 40-key RGB | 5 21-key RGB | 6 6-key black | 7 9-key red | 8 JSON remote
174+
; -D IRTYPE=0 # 0 Remote disabled | 1 24-key RGB | 2 24-key with CT | 3 40-key blue | 4 40-key RGB | 5 21-key RGB | 6 6-key black | 7 9-key red | 8 JSON remote
164175
;
165176
; set default color order of your led strip
166177
; -D DEFAULT_LED_COLOR_ORDER=COL_ORDER_GRB
167178
;
168179
; use PSRAM on classic ESP32 rev.1 (rev.3 or above has no issues)
169-
; -DBOARD_HAS_PSRAM -mfix-esp32-psram-cache-issue
180+
; -DBOARD_HAS_PSRAM -mfix-esp32-psram-cache-issue # needed only for classic ESP32 rev.1
170181
;
171182
; configure I2C and SPI interface (for various hardware)
172183
; -D I2CSDAPIN=33 # initialise interface

usermods/PIR_sensor_switch/usermod_PIR_sensor_switch.h

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -58,7 +58,11 @@ class PIRsensorSwitch : public Usermod
5858
bool sensorPinState[PIR_SENSOR_MAX_SENSORS] = {LOW}; // current PIR sensor pin state
5959

6060
// configurable parameters
61+
#if PIR_SENSOR_PIN < 0
62+
bool enabled = false; // PIR sensor disabled
63+
#else
6164
bool enabled = true; // PIR sensor enabled
65+
#endif
6266
int8_t PIRsensorPin[PIR_SENSOR_MAX_SENSORS] = {PIR_SENSOR_PIN}; // PIR sensor pin
6367
uint32_t m_switchOffDelay = PIR_SENSOR_OFF_SEC*1000; // delay before switch off after the sensor state goes LOW (10min)
6468
uint8_t m_onPreset = 0; // on preset

usermods/usermod_v2_auto_save/usermod_v2_auto_save.h

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -122,9 +122,9 @@ class AutoSaveUsermod : public Usermod {
122122
* Da loop.
123123
*/
124124
void loop() {
125-
if (!autoSaveAfterSec || !enabled || strip.isUpdating() || currentPreset>0) return; // setting 0 as autosave seconds disables autosave
126-
125+
static unsigned long lastRun = 0;
127126
unsigned long now = millis();
127+
if (!autoSaveAfterSec || !enabled || currentPreset>0 || (strip.isUpdating() && now - lastRun < 240)) return; // setting 0 as autosave seconds disables autosave
128128
uint8_t currentMode = strip.getMainSegment().mode;
129129
uint8_t currentPalette = strip.getMainSegment().palette;
130130

0 commit comments

Comments
 (0)