Jason2866
ad671a557c
esp8266: Wrap printf and replace with stubs. Saves around 6 kb flash ( #24714 )
...
* wrap printf with stubs
* Remove flash savings message from wrap_printf
Removed print statement indicating flash savings for ESP8266.
* safe more by using rom function
2026-05-11 13:21:20 +02:00
Jason2866
5bc33d3fdd
Update Platforms to 2026.04.xx ( #24635 )
...
* Update Tasmota ESP32 version in PR template
* Update platform URL to version 2026.04.00
* Update platform URLs in platformio_tasmota32.ini
2026-04-12 15:41:10 +02: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
Jason2866
31d4a60d8c
Platform 2026.03 ( #24547 )
...
* Platform 2026.03
* changes as suggested from Theo
2026-03-14 21:35:28 +01:00
Jason2866
cb80aedcb5
Update platform URL to version 2026.02.00 ( #24460 )
2026-02-17 13:51:25 +01:00
Theo Arends
0e9246e428
Replace CRLF in LF
2026-02-13 11:24:01 +01:00
Jason2866
61dd7f5b92
Platform 2026.01.30 Tasmota Arduino Core 3.1.9 based on IDF 5.3.4.20251226 ( #24354 )
2026-01-17 15:14:33 +01:00
Jason2866
54a152f440
Platform 2025.12.31
2025-12-24 15:06:28 +01:00
Jason2866
48395fb016
Update esp8266 and esp32 Platform to 2025.10.xx ( #23971 )
...
* update esp8266 platform version 2025.10.00
* Update esp32 platform version 2025.10.30
2025-10-02 11:31:33 +02:00
Jason2866
b852aabdc1
Update esp8266 Platform to 2025.09.00 ( #23864 )
2025-09-01 19:49:46 +02:00
Jason2866
e18507f2db
esp8266 Platform 2025.08.00 ( #23801 )
2025-08-17 19:21:49 +02:00
Jason2866
0adf865163
esp8266 Platform 2025.07.00 ( #23700 )
2025-07-18 11:49:05 +02:00
Jason2866
cddcafbda3
Switch off not needed waiting for FS up and download ( #23677 )
2025-07-13 21:24:25 +02:00
Jason2866
08e1ff548b
Platform 2025.05.00 esp8266 Arduino core 2.7.8 ( #23448 )
...
- no changes in Arduino Core to previous Platform!
- Platform don't use Platformio registry any more
2025-05-19 20:13:12 +02:00
Jason2866
a088c8791f
provide serial upoload port from VSC to PIO ( #23436 )
2025-05-17 19:59:14 +02:00
Christian Baars
9be9bb8af3
faster 8266 builds, ignore audio libs ( #22942 )
2025-02-04 15:12:51 +01:00
Ryan Castellucci
dc531de02b
auto compress updated html ( #22738 )
2024-12-29 22:27:10 +01:00
Jason2866
a6075b2855
Platform 2024.09.00 for esp8266 ( #22199 )
...
* Platform 2024.09.00 for esp8266
Core 2.7.8
* esp8266 core 2.7.8
2024-09-24 17:25:28 +02:00
Edward Betts
fade4f867d
Correct spelling mistakes ( #22080 )
2024-09-07 15:35:04 +02:00
Jason2866
3537d18483
Update esp8266 platform to 2024.06.10 ( #21668 )
...
* Update esp8266 platform (2024.06.00)
* Update strip-floats.py
* Rename strip-floats.py to strip-flags.py
* rename to `strip_flags.py`
* esp8266 v2.7.7
2024-06-20 23:23:53 +02:00
Jason2866
a67f4f0c06
Make use of PIO Project Inspect possible
...
without the set option, Inspect tries to analyze every lib which does fail
2024-05-02 13:57:18 +02:00
Jason2866
951fba99b1
Breaking: ESP32 Core 3.0.0 only support ( #21180 )
...
* Core 3.0.0 only
* rm Arduino30 settings
* rm lib ignore `NimBLE-Arduino`
* rm obsolete or duplicate env entrys
2024-04-15 11:39:48 +02:00
Jason2866
2544cf0305
Update esptool.py ( #20890 )
...
* Tasmota esptool.py v4.7.1
* install only one esptool version
2024-03-07 14:46:22 +01:00
Jason2866
2b0d603d03
Esp8266 ipv6 ( #20539 )
...
* esp8266 ipv6 compatible framework
2024-01-18 22:39:50 +01:00
Jason2866
f2f0686601
rm IPv6 (esp8266) build options, not supported
2024-01-18 13:14:06 +01:00
Jason2866
8cc6154478
Update esp8266 Platformio Platform ( #20467 )
2024-01-11 15:21:53 +01:00
Jason2866
58f50045d9
Add the possibility to set global compile time settings ( #20013 )
2023-11-14 16:36:09 +01:00
Jason2866
75ec9da8a2
Refactoring of storing safeboot bin ( #19858 )
...
* Folder for storing safeboot is now configurable
* Platform 2023.10.06
* Platform 2023.10.12
2023-10-28 13:15:31 +02:00
Jason2866
2b398d309e
pio proper lib_ignore fix ( #19742 )
2023-10-14 20:30:48 +02:00
gneiss15
32d840d2b0
See Issue #19664 ( #19665 )
...
Signed-off-by: Günter Neiß <gneiss@web.de >
2023-10-04 19:06:44 +02:00
Theo Arends
dc68232f42
Phase 1 support C2/C6
2023-08-21 17:32:54 +02:00
Jason2866
112c254d54
refac firmware-metrics ( #18466 )
...
* refac firmware-metrics
* rm debugging print
* fix esp8266
2023-04-21 16:56:27 +02:00
Jason2866
11a43ea99b
Tasmota Core 208 ( #18460 )
...
* Tasmota Core 2.0.8
* Fix Linker errors
2023-04-20 20:01:35 +02:00
Jason2866
3dd154ab31
lib_archive = no (#18307 )
2023-03-31 18:46:09 +02:00
Jason2866
11645705e3
Flash firmware without run build ( #18233 )
...
* Flash without build
* Use firmwares from `build_output`
* simulate build with firmware from `build_output`
* rm debug code
2023-03-21 14:56:24 +01:00
Jason2866
8df25ccf9c
esptool.py v4.5.1 for esp8266 ( #18107 )
...
to align with esp32 platform. No reinstall of pip installed packages
2023-03-04 16:52:12 +01:00
Jason2866
71e14d62fe
all scripts working ( #18105 )
...
* mv obj-dump.py
* add pre: and post: to scripts
2023-03-04 11:31:34 +01:00
Jason2866
fe46f4d654
Try to workaround extra_scripts issues
2023-03-02 20:57:17 +01:00
Jason2866
deeed56610
Refactor set_partition_table.py ( #18072 )
2023-02-28 12:15:19 +01:00
Jason2866
cadab815ef
pio script to set env PARTITIONS_TABLE_CSV ( #18065 )
2023-02-27 17:15:19 +01:00
s-hadinger
ef1211b51f
Change compile options for ESP8266 IPv6 ( #17526 )
2022-12-27 21:27:03 +01:00
Jason2866
163456c3fc
Pio: Target: Erase and Upload ( #17474 )
2022-12-22 11:12:45 +01:00
Jason2866
9fa29c4f39
rm upload_port defaults ( #17443 )
...
* rm upload_port defaults
2022-12-20 09:27:10 +01:00
Jason2866
29705c15af
revert Platformio changes ( #17433 )
2022-12-18 17:56:24 +01:00
blakadder
c908dc289e
remove manual upload port and switch to autodiscovery in platformio ( #17427 )
2022-12-17 21:52:12 +01:00
Jason2866
e71913ed42
add option to gz esp32 firmware files ( #17379 )
...
* add option to gz esp32 fimrware files
* reverse esp32 gz logic
2022-12-13 16:40:48 +01:00
Stephan Hadinger
d3be3dfe8f
IPv6 preview for ESP32, also working for ESP8266
2022-11-30 19:40:58 +01:00
Jason2866
6738eec4c3
Change version naming
2022-11-13 18:04:44 +01:00