Commit Graph

21284 Commits

Author SHA1 Message Date
Theo Arends
a6089173ce Add HAss discovery to DDS75L and LHT52 2026-04-06 15:16:58 +02:00
Theo Arends
0cb2de76d1 Fix LoRaWan millis overflow (#24373)
- Fix lock/unlock icons
2026-04-06 12:54:13 +02:00
Theo Arends
62637ad16a Fix LoRaWan millis overflow (#24373)
- Fix lock/unlock icons
2026-04-06 12:47:08 +02:00
Theo Arends
d588821f26 Update changelogs 2026-04-04 11:23:17 +02:00
s-hadinger
e4c286dac3 Berry crash when comparing for equality float literals on ESP32 (#24610) 2026-04-04 09:47:12 +02:00
Theo Arends
fcef1b63b0 Add support for Shelly Pro EM-50 (#24604) 2026-04-03 11:46:31 +02:00
Theo Arends
7db333010b Prep Shelly Pro EM support 2026-03-31 14:25:09 +02:00
Theo Arends
74099b54e3 Fix Shelly Dimmer 2 serial timeout regression from v15.2.0.1 (#24560) 2026-03-30 14:38:20 +02:00
Theo Arends
f56d12b1bf Add Drivers PCA9685 and PCF8574 multi I2C bus support 2026-03-30 12:07:22 +02:00
s-hadinger
5cc4ddb5f0 Berry solidification with Python fix gc (#24601) 2026-03-29 22:00:05 +02:00
Theo Arends
c207cc27ae Add PWM driver PCA9685 multi I2C bus support 2026-03-28 17:28:35 +01:00
s-hadinger
26d9d6e14c Berry solidification made possible with Python runtime (#24599) 2026-03-28 09:43:06 +01:00
Jason2866
ee93c18e2e Prepare switch to IDF 5.5.3 based Tasmota Arduino (#24597)
* C2 Hybrid Compile safeboot
* Refactor firmware size check to use size tool output and regex.
2026-03-27 17:35:54 +01:00
Theo Arends
1f0e3f768d Update RELEASENOTES.md 2026-03-27 16:17:46 +01:00
Theo Arends
59c4d772c5 ESP8266 Remove unused I2C slave support 2026-03-26 18:00:21 +01:00
Jason2866
dd79556b29 fix: C++26 warning (#24586) 2026-03-26 14:29:42 +01:00
Jason2866
be7ab64492 Remove debug leftovers (#24595)
* Comment out check-wrapped-lwip-sntp-calls.py script

Comment out the check-wrapped-lwip-sntp-calls.py script in platformio.ini.

* Delete pio-tools/check-wrapped-lwip-sntp-calls.py
2026-03-26 14:21:10 +01:00
Theo Arends
84d456dbfc Remove obsolete sntp_stop() calls (#24593) 2026-03-26 10:53:32 +01:00
the-way-of-A-Wild
86bc033c86 Neutralize lwIP SNTP client to prevent heap drain on WiFi reconnects (#24593)
The ESP8266 SDK automatically invokes sntp_init() via
netif_sta_status_callback on every WiFi reconnect. This results in repeated
allocations of UDP PCBs (udp_new()), leading to heap exhaustion and
potential lwIP timeout list corruption due to unmatched sntp_stop() calls.

Tasmota does not use the lwIP SNTP client and relies solely on WifiGetNtp()
for time synchronization. To avoid unnecessary resource usage, wrap and
neutralize sntp_init() and sntp_stop() with no-op implementations.

This prevents UDP PCB allocations and avoids issues caused by repeated
initialization during reconnect cycles.

Additionally, a PlatformIO post-build script has been added to validate
that the linker wraps are correctly applied. The script runs after ELF
generation and uses xtensa-lx106-elf-nm to inspect symbols, ensuring that
the __wrap_sntp_init and __wrap_sntp_stop functions are present in the
final firmware. If the wrappers are missing, the build fails.

Confirmed via firmware disassembly:
- Single call site in netif_sta_status_callback
- Requires linker wraps: --wrap=sntp_init,--wrap=sntp_stop

Fixes: #24566
2026-03-26 10:42:02 +01:00
sfromis
4384f9c98a Update my_user_config.h, USER_MODULE (#24590)
`#define MODULE USER_MODULE` needed to have `USER_TEMPLATE` string enabled by default. Better have this hint included in the file.
2026-03-25 12:28:34 +01:00
Christian Andersen
3b92a1303a Suppress SML MQTT publish until valid meter data received (#24587)
Use existing dvalid[] array to gate JSON and immediate MQTT output,
preventing initial zero values from corrupting HA statistics on restart.

Signed-off-by: Christian Andersen <public@milindur.de>
2026-03-25 12:27:36 +01:00
Theo Arends
58b7d85c9e Update change logs 2026-03-23 15:54:47 +01:00
Norbert Richter
beed56f7fc NeoPool always output valid sensitive data (#24573)
Co-authored-by: Norbert Richter <nr@prsolution.eu>
2026-03-23 15:49:33 +01:00
Petr Golovachev
57b513b5ed vid6608-xdrv-92: allow set max steps per-motor (#24575) 2026-03-23 15:49:09 +01:00
Norbert Richter
d1a1bf15c1 NeoPool fix possible IntegerDivideByZero (#24578)
Co-authored-by: Norbert Richter <nr@prsolution.eu>
2026-03-23 15:48:23 +01:00
s-hadinger
e3c9271e21 Berry revert remove BE_USE_PRECOMPILED_OBJECT (#24581) 2026-03-22 21:21:59 +01:00
Theo Arends
38be7c7e23 Add I2C Bus2 support to GDK101 2026-03-21 23:05:40 +01:00
Theo Arends
3f38fe289e Refactor use of MAX_I2C 2026-03-21 22:08:51 +01:00
Theo Arends
954a048d39 Fix command I2CDriver for over 96 2026-03-21 17:23:19 +01:00
Jason2866
35cd817aeb add clangd config (#24571) 2026-03-19 17:28:15 +01:00
Theo Arends
7246748ffb Stop sntp every minute (#24566) 2026-03-19 16:39:33 +01:00
Theo Arends
7fed51de31 Add Environment sensor SCD30 second I2C bus support 2026-03-18 21:53:05 +01:00
Theo Arends
36c71bb2ea Quick Fix ESP8266 I2C Clock Stretch limit
- It seems the current implementation fails to set the clock stretch limit using functions from Wire library; It's set to 0 whatever the user wants it to be. This quick fix at least sets a default of 150ms to allow clock stretch to be used for devices that need it. It fixes support for Sensirion SCD30 and SGP30 which rely on clock stretching.. I'll dive deeper to solve the Wire provided functions.
2026-03-18 20:47:00 +01:00
Jason2866
475881a0e0 optimize C5 / C6 safeboot (#24569)
- enable ETHERNET W5500
- disable not common ethernet Phy
2026-03-18 18:48:59 +01:00
Jason2866
d7533aae2b fix: Regression from PR #24518 forgotten change ESP8266WebServer to TasmotaWebServer (#24568)
* Change Webserver type from ESP8266WebServer to TasmotaWebServer
* Cast webcam resolution to int32_t in WcSetup calls
2026-03-18 16:39:55 +01:00
Jason2866
7f9fdb7255 Platform 2026.03.50 to support IDF 55 (#24567) 2026-03-18 14:16:45 +01:00
lz64
378e1547c2 Fix uDisplay case 'T' parsing corruption for I80 parallel displays + WT32-SC01 Plus descriptor (#24506)
- Skip :TI (touch I2C) and :TS (touch SPI) lines in case 'T' of the uDisplay
  descriptor parser. These touch config lines are handled separately by
  xdsp_17_universal.ino via strstr(), but case 'T' was matching on the first
  character and unconditionally writing the subsequent values into
  panel_config->epd.lut_full_time/lut_partial_time/update_time. In the
  PanelConfigUnion, these EPD fields overlap with I80 panel bus pin config
  (cs_pin, dc_pin, wr_pin, rd_pin, data_pins), causing parallel displays to
  silently receive corrupted GPIO pin assignments and fail to render.

  The fix checks if the character after 'T' is 'I' or 'S' and skips EPD timing
  parsing for those lines. EPD descriptors using :T,<timing> continue to work
  as before.

- Remove dead reference to berry.lvgl_panel_loaded in xdrv_54_lvgl.ino.
  The member was removed from BerrySupport in commit e4c2cf591 (Berry Extension
  Manager) but the reference in start_lvgl() was left behind, causing a compile
  error when USE_BERRY_LVGL_PANEL is defined.

- Add verified display descriptor for WT32-SC01 Plus (ESP32-S3, ST7796U 480x320,
  8-bit parallel I80, FT5206 capacitive touch). Tested on Tasmota v15.3.0.1 with
  LVGL 9.5.0.

Co-authored-by: Ari Friedman <afriedman@millsupplyco.com>
2026-03-17 22:28:32 +01:00
s-hadinger
4b80f7e4ac Berry remove BE_USE_PRECOMPILED_OBJECT (#24565) 2026-03-17 22:06:58 +01:00
s-hadinger
3bbfc31cfe Berry improve type() builtin function (#24564) 2026-03-17 21:23:53 +01:00
s-hadinger
0aaae08e4e Matter don't advertize IPv6 global address, only link-local (#24563) 2026-03-17 20:53:26 +01:00
Theo Arends
17b1a64bee Fix I2cSetClock() 2026-03-16 17:11:42 +01:00
Theo Arends
72111857ce Fix ESP8266 heap drain and exception 29 when DHCP provides NTP server (#24515) 2026-03-16 12:14:35 +01:00
Jason2866
c446b9a87e Picolib (#24558) 2026-03-16 00:23:12 +01:00
Theo Arends
60f91ffc06 Disable Core sntp using DHCP NTP server (#24515) 2026-03-15 21:40:26 +01:00
Theo Arends
f868b61a73 Bump version v15.3.0.3
- Fix Athom esp32 2-3-4 gang change led behaviour after firmware update (#24509)
2026-03-15 14:20:22 +01:00
s-hadinger
fae4dab699 Berry improve test coverage (#24553) 2026-03-15 09:06:44 +01:00
Jason2866
31d4a60d8c Platform 2026.03 (#24547)
* Platform 2026.03

* changes as suggested from Theo
2026-03-14 21:35:28 +01:00
Milko Daskalov
ff0609d932 LVGL Panel optimizations (#24552)
* set no wait on connect

* removed incremental draw; reduced data moving; reduced touch events

* added set_nowait method to set TCP_NODELAY socket option

* added last chunk indicator for the stream callback

* writebytes optimizations
2026-03-14 15:42:09 +01:00
Theo Arends
3d57fe57f2 Update change logs 2026-03-14 15:29:56 +01:00
s-hadinger
d7c530663b Berry add loglevel to mqtt.publish() (#24551) 2026-03-14 15:03:36 +01:00