Commit Graph

7975 Commits

Author SHA1 Message Date
harshal.patil
5ed711bc06 fix(esp_common/esp_fault): make ESP_FAULT_ASSERT survive optimization
ESP_FAULT_ASSERT(C) was silently deleted by the optimizer when C is a cached
flag/status already proven by a preceding `if (!C) return/goto`: the compiler
folds C to a constant and drops all three checks, removing the fault-injection
protection with no warning.
2026-06-18 19:41:56 +05:30
harshal.patil
5f824c8683 fix(secure_boot): range-check ECDSA r,s in bootloader before ROM verify 2026-06-12 17:32:38 +05:30
Aditya Patwardhan
94be07050f change(secure_boot): mark ECDSA based Secure Boot V2 as insecure on affected SoCs
ECDSA based Secure Boot V2 is not functional for certain input vectors on
ESP32-C5/C61/H2/P4 and on the preview targets ESP32-H4/H21. RSA based Secure
Boot V2 is the recommended scheme where the SoC supports it. This issue will be
fixed in a future hardware ECO revision; more details will be shared through the
hardware errata document.

A new hidden Kconfig option SECURE_BOOT_V2_ECDSA_INSECURE marks the affected
mass-production SoCs (ESP32-C5/C61/H2/P4). On these SoCs, when hardware Secure
Boot V2 is enabled, the ECDSA (V2) signing scheme is no longer offered by
default; it must be turned on explicitly via SECURE_BOOT_V2_FORCE_ENABLE_ECDSA
under "Allow potentially insecure options" (CONFIG_SECURE_BOOT_INSECURE). App
signing without hardware Secure Boot is not affected. Note that ESP32-C61 has no
RSA based Secure Boot V2, so it has no Secure Boot scheme enabled by default.

The preview targets ESP32-H4 and ESP32-H21 mark ECDSA Secure Boot V2 as not
supported in their SoC capabilities instead of using the option above. As
ESP32-H4 has no other Secure Boot V2 scheme, Secure Boot is disabled entirely on
it; ESP32-H21 retains RSA based Secure Boot V2.

The security documentation keeps the ECDSA Secure Boot V2 content visible and
adds a warning describing the limitation (including that ECDSA Secure Boot V2 on
ESP32-C61 is not recommended for production). CI apps that exercise ECDSA Secure
Boot V2 on the affected SoCs set CONFIG_SECURE_BOOT_V2_FORCE_ENABLE_ECDSA
accordingly.
2026-06-10 18:06:48 +05:30
Ashish Sharma
7f8dc336a6 fix(mbedtls): bring back deprecated config MBEDTLS_ECJPAKE_C 2026-05-18 14:56:18 +08:00
Jiang Jiang Jian
8f3d8b41c3 Merge branch 'feat/support_esp3261_cert_test_example_v6.0' into 'release/v6.0'
feat(phy): support esp32c61 example cert test and antenna(Backport v6.0)

See merge request espressif/esp-idf!48596
2026-05-16 10:27:40 +08:00
Jiang Jiang Jian
dc9276941e Merge branch 'fix/ota_resumption_ci_failures_v6.0' into 'release/v6.0'
fix(examples): solve OTA resumption CI failures (backport v6.0)

See merge request espressif/esp-idf!48578
2026-05-15 20:29:10 +08:00
muhaidong
33bbd87a80 feat(phy): support esp32c61 example cert test and antenna 2026-05-15 19:34:52 +08:00
nilesh.kale
62a67bbcb8 fix(examples): solve OTA resumption CI failures (backport v6.0)
This commit started threaded server to serve multiple clients
simultaneously in individual thread, eliminating the single-threaded
server limitation that caused the device's mid-OTA reconnect to time
out while the previous connection was still being torn down.

SSL is now wrapped per-connection inside the handler thread (in
setup()) so the main accept loop never blocks on a TLS handshake.

Closes IDFCI-3505

(cherry picked from commit 7647d54271)
2026-05-15 14:08:39 +05:30
Jin Cheng
ad6f33e9d1 feat(ci): added example tests for HFP using external codec 2026-05-15 16:07:08 +08:00
Jiang Jiang Jian
60b925ffcf Merge branch 'fix/bootloader-hooks-log-v2_v6.0' into 'release/v6.0'
fix(bootloader_hooks): Fix log_v2 support in bootloader hooks (v6.0)

See merge request espressif/esp-idf!48252
2026-05-15 15:52:06 +08:00
Jiang Jiang Jian
0f06a3c7e7 Merge branch 'fix_https_request_ci_failure_v6.0' into 'release/v6.0'
fix(https_request): write host time to NVS to eliminate SNTP dependency in CI (backport v6.0)

See merge request espressif/esp-idf!48415
2026-05-15 14:11:29 +08:00
Jiang Jiang Jian
91b378565a Merge branch 'feat/test_lp_core_debugging_v6.0' into 'release/v6.0'
feat(ulp): add pytest for debugging example (v6.0)

See merge request espressif/esp-idf!48255
2026-05-15 14:08:07 +08:00
Jiang Jiang Jian
a7b604fd33 Merge branch 'fix/lp_uart_data_bits_v6.0' into 'release/v6.0'
fix(ulp/lp_core): fix LP UART data_bits validation and add full word-length test coverage (v6.0)

See merge request espressif/esp-idf!48031
2026-05-15 14:03:13 +08:00
Jiang Jiang Jian
ecfe107ae5 Merge branch 'fix/x509_bundle_replace_unreliable_url_v6.0' into 'release/v6.0'
fix(examples): replace unreliable external URL in https_x509_bundle example (backport v6.0)

See merge request espressif/esp-idf!47718
2026-05-15 13:59:15 +08:00
Mahavir Jain
36f3329a23 Merge branch 'feature/recovery_bootloader_support_v6.0' into 'release/v6.0'
feat(bootloader): Support recovery bootloader for ESP32P4 (v6.0)

See merge request espressif/esp-idf!48468
2026-05-15 09:52:49 +05:30
Konstantin Kondrashov
555e5bf271 fix(bootloader_hooks): Fix log_v2 support in bootloader hooks
Closes https://github.com/espressif/esp-idf/issues/18482
2026-05-14 14:09:31 +03:00
Marius Vikhammer
bac55534a7 fix(examples): raise efuse ESP32-P4 CI partition offset for larger bootloader
Recovery bootloader support increased the ESP32-P4 bootloader image enough
that it no longer fits before 0xe000. Moving the partition table to 0x10000
restores slack for CI builds using secure boot and flash encryption together.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-05-14 13:59:23 +03:00
Xu Si Yu
ab4451dd99 fix(openthread): increase the app size in the partition table for the example 2026-05-14 15:24:55 +08:00
Xu Si Yu
3c17a336f7 fix(openthread): fix openthread ci ping case 2026-05-14 15:02:40 +08:00
sonika.rathi
1c01005ae1 fix(examples): add flaky reruns to nvs_rw_value pytest for CI flash 2026-05-13 13:35:08 +02:00
sonika.rathi
42b64128fa fix(examples): rerun flaky perf benchmark spiflash test 2026-05-13 10:32:43 +02:00
Konstantin Kondrashov
a742bd519a feat(bootloader): Support recovery bootloader for ESP32P4/C61 2026-05-13 10:18:15 +03:00
hrushikesh.bhosale
6036d714ba ci(pre-commit): convert .format() to f-string for ruff UP032
Apply ruff's UP032 auto-fix on examples/protocols/https_x509_bundle/pytest_https_x509_bundle.py
to make the file pass CI's check_pre_commit job.
2026-05-13 11:36:56 +05:30
Alexey Gerenkov
412e8e4ea4 Merge branch 'fix/apptrace_uart_flush_v6.0' into 'release/v6.0'
Replace ISR based Uart TX with polling (v6.0)

See merge request espressif/esp-idf!46816
2026-05-13 01:03:05 +08:00
sibeibei
baba004e0d feat(ci): add sleep cache safe check for wifi power save 2026-05-12 19:22:54 +08:00
muhaidong
636b285772 fix(wifi): add ESP_WIFI_MAX_CONN_NUM-aligned ranges for soft-AP max STA Kconfig 2026-05-12 19:22:54 +08:00
Samuel Obuch
ecf063c2f4 feat(ulp): add pytest for debugging example 2026-05-12 13:09:56 +02:00
Jiang Jiang Jian
9cf982000d Merge branch 'feat/add_auto_lightsleep_example_6.0' into 'release/v6.0'
feat(example): add power management example (v6.0)

See merge request espressif/esp-idf!48369
2026-05-12 18:11:28 +08:00
Jiang Jiang Jian
6d6aa6cccd Merge branch 'fix/fix_https_server_linux_build_v6.0' into 'release/v6.0'
fix(https_server): fixes failing example build for linux target (v6.0)

See merge request espressif/esp-idf!48205
2026-05-12 18:07:17 +08:00
Island
8e8e9f5545 Merge branch 'feat/share_ble_uart_component_and_refresh_docs_v6.0' into 'release/v6.0'
feat(bt): add shared ble_uart component and update ble_uart_service/docs (6.0)

See merge request espressif/esp-idf!48401
2026-05-12 18:02:52 +08:00
Jiang Jiang Jian
3aeda29119 Merge branch 'fix_otatool_serial_handoff_v6.0' into 'release/v6.0'
fix(otatool): fix flaky serial port handoff in otatool CI test (backport v6.0)

See merge request espressif/esp-idf!47713
2026-05-12 18:02:05 +08:00
Erhan Kurubas
e4ad52292a fix(app_trace): implement uart TX without using ISR 2026-05-12 10:13:07 +02:00
hrushikesh.bhosale
1713fd16c7 fix(examples/system/ota/otatool): fix serial port contention in pytest
The otatool pytest calls dut.serial.close() and then immediately
launches otatool_example.py as a subprocess that re-opens the same
serial port via esptool. This fails intermittently because:

1. pytest-embedded's QueueFeederThread still holds a reference to
   the serial port file descriptor when close() returns, causing
   'argument must be an int, or have a fileno() method' error.

2. The OS has not fully released the serial port by the time the
   subprocess tries to open it.

Add a delay after serial close and retry logic for the subprocess
to handle transient serial port contention.

Made-with: Cursor
2026-05-12 11:26:34 +05:30
hrushikesh.bhosale
7e43e5e4a4 fix(https_request): write host time to NVS to eliminate SNTP dependency in CI
Replace erase_nvs + SNTP time sync with direct NVS timestamp injection
from the pytest host. This eliminates CI flakiness caused by NTP servers
being unreachable from the CI lab network.

Changes:
- Add write_time_to_nvs() helper that generates an NVS partition image
  with the current host timestamp and flashes it to the DUT before each
  test. The firmware reads this via the existing update_time_from_nvs()
  path and skips SNTP entirely.
- Remove @pytest.mark.parametrize('erase_nvs', ['y']) from all 4
  Ethernet-based tests since NVS is now written with valid data.
2026-05-12 10:43:15 +05:30
wuzhenghui
17f49a9b79 feat(example): test power_save pd_top config for esp32c5 & esp32c61 2026-05-12 10:13:54 +08:00
wuzhenghui
68eeb5606d feat(example): implement power management example for ESP chips 2026-05-12 10:13:50 +08:00
Zhi Wei Jian
1b93addbd0 feat(bt): add shared ble_uart component and update ble_uart_service/docs
(cherry picked from commit 272793f7d5)

Co-authored-by: zhiweijian <zhiweijian@espressif.com>
2026-05-11 21:23:35 +08:00
Wang Meng Yang
4be0cc0f8a Merge branch 'bugfix/ai_review_example_critical_v6.0' into 'release/v6.0'
fix(bt/example): fix critical issues of classic_bt examples reported by AI review (v6.0)

See merge request espressif/esp-idf!48338
2026-05-11 19:13:54 +08:00
Mahavir Jain
38db686872 Merge branch 'feat/update_mbedtls_4_1_1_v6.0' into 'release/v6.0'
feat(mbedtls): update to version 4.1.0 (v6.0)

See merge request espressif/esp-idf!48175
2026-05-11 09:50:25 +05:30
yangfeng
aa10a3a2d1 fix(bt/example): fix critical issues of classic_bt examples reported by AI review 2026-05-11 11:24:52 +08:00
Jiang Jiang Jian
3414307179 Merge branch 'change/separate_nimble_host_mem_apis' into 'release/v6.0'
change(bt): separated host mem apis from bt_osi_mem.c

See merge request espressif/esp-idf!48183
2026-05-11 11:00:07 +08:00
Jiang Jiang Jian
5811e4129d Merge branch 'feat/remove_led_from_ble_mesh_examples_v6.0' into 'release/v6.0'
refactor(ble_mesh): remove LED hardware dependency from examples (6.0)

See merge request espressif/esp-idf!47439
2026-05-11 10:58:21 +08:00
Jiang Jiang Jian
1c0bc64bb8 Merge branch 'fix/disabel_ble50_by_default_for_blemesh_v6.0' into 'release/v6.0'
fix(ble_mesh): disabled ble50 by default for ble_mesh (6.0)

See merge request espressif/esp-idf!47752
2026-05-11 10:54:53 +08:00
Ashish Sharma
1d0cdd5602 fix(https_server): fixes failing example build for linux target 2026-05-10 19:29:25 +08:00
Ashish Sharma
eaac238545 fix(mbedtls): remove deprecated configs and migrate to PSA 2026-05-10 19:16:12 +08:00
Rahul Tank
e468727c02 Merge branch 'bugfix/ai_fixes_common_components_v6.0' into 'release/v6.0'
Bugfix/ai fixes common components (v6.0)

See merge request espressif/esp-idf!47566
2026-05-09 12:30:33 +05:30
Rahul Tank
55e359ad36 fix(nimble): Update example READMEs with correct console log information 2026-05-08 14:37:09 +05:30
Rahul Tank
3c0310c5aa fix(nimble): Address review comments for hidd / hidh code 2026-05-08 14:23:48 +05:30
Rahul Tank
81476b116d fix(nimble): Address review fixes for tinycrypt / and blufi code 2026-05-08 14:23:48 +05:30
Zhang Wen Xu
b8065b8372 Merge branch 'feat/merge_ot_autostart_v6.0' into 'release/v6.0'
feat(openthread): optimized the autostart macro (v6.0)

See merge request espressif/esp-idf!48273
2026-05-08 08:45:21 +00:00