Commit Graph

6725 Commits

Author SHA1 Message Date
Jiang Jiang Jian
14ea84f668 Merge branch 'python_cert_macos_v5.5' into 'release/v5.5'
fix: Update idf_tools.py to print correct path to Install Certificates.command on macOS (v5.5)

See merge request espressif/esp-idf!46555
2026-04-17 11:05:52 +08:00
Marius Vikhammer
160151e8be test(system): enable panic tests for P4 2026-04-16 09:54:16 +08:00
Euripedes Rocha
e27c4bc8de Merge branch 'reduce_mqtt_ci_tests' into 'release/v5.5'
ci: Reduce scope of esp-mqtt tests

See merge request espressif/esp-idf!47430
2026-04-10 12:17:10 +02:00
Euripedes Rocha Filho
b19ee1650f ci: Reduce scope of esp-mqtt tests
To reduce failures due to CI environment the tests are reduced to a
minimum set. More extensive test suite is run at esp-mqtt repository.
2026-04-10 10:06:49 +02:00
Fu Hanxi
3cefdfb703 ci: rename eco tags to revision
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
2026-04-09 10:58:07 +02:00
Zhou Xiao
e31a9b5d9b fix(ble_log_console): use typing.Optional/Union for Python 3.9 mypy compat
Replace Python 3.10+ X|Y union syntax with Optional/Union and remove
@dataclass(slots=True) to fix mypy pre-commit failures on Python 3.9.
2026-04-07 16:34:57 +08:00
Peter Dragun
d37496dde5 fix(idf_tools.py): Print correct path to Install Certificates.command on macOS
Related to: https://github.com/espressif/esp-idf/issues/17787
2026-04-07 14:50:28 +08:00
Zhou Xiao
da680aa29a fix(ble_log_console): exclude from idf-ci pytest collection to fix CI
idf-ci discovers pyproject.toml pytest config and runs a separate
collection pass with --target all, which finds 0 target tests and
raises RuntimeError. Add to .idf_ci.toml exclude_dirs instead of
deleting tests. Restore all 227 unit tests with lint/mypy fixes.
2026-04-07 12:28:59 +08:00
Zhou Xiao
eb9f36be48 docs(ble_log_console): update user guides for new features and run/build scripts
- Recommend run.sh/run.bat as primary launch method with Launch Screen description
- Add build.sh/build.bat section for standalone executable packaging
- Document buffer utilization screen (m key) and two-table stats layout (d key)
- Update menuconfig path, status panel format, and Kconfig option names
- Remove obsolete textual ModuleNotFoundError troubleshooting
- Simplify manual configuration to single toggle (defaults cover most cases)
- Fix ESP32 -> ESP chip in introduction
2026-04-07 12:28:59 +08:00
Zhou Xiao
031e04cc65 feat(ble_log_console): add buffer utilization tracker and display
Add BufUtilTracker to record per-LBM inflight peak data, wire it
through StatsAccumulator and StatsUpdated message for thread-safe
delivery to the UI. Buffer utilization is displayed in a dedicated
BufUtilScreen accessible via the 'm' keybinding, separate from
the frame stats screen ('d').

Also reject false INIT_DONE frames with version==0 caused by
misaligned data during parser sync, preventing spurious stats resets.
2026-04-07 12:28:59 +08:00
Zhou Xiao
602fd8a317 feat(ble_log_console): add BUF_UTIL internal frame decoding
Add BUF_UTIL=5 to InternalSource, BufUtilPool enum, BufUtilResult
TypedDict, BufUtilEntry dataclass, and name resolution helpers.
Add decode branch in internal_decoder with pool/index extraction
from the packed lbm_id field. Tests cover valid decode, pool/index
extraction, and truncated payload handling.
2026-04-07 12:28:59 +08:00
Zhou Xiao
b3f7500f71 feat(ble_log_console): add CLI entry point, build scripts, and docs
- Click-based CLI entry point (console.py) with --port, --baudrate,
  --log-dir options and interactive Launch Screen when --port omitted
- Deprecation warning for --output CLI flag
- 'ls' subcommand to list saved capture files
- PyInstaller build scripts (build.sh, build.bat, build_exe.py)
- Convenience run scripts (run.sh, run.bat)
- README rewrite with installation, usage, architecture docs, and
  troubleshooting guide
- User guides in English and Chinese
- Remove old single-file ble_log_console.py
- Register new scripts in executable-list.txt
2026-04-07 12:28:59 +08:00
Zhou Xiao
ee1d8a277e feat(ble_log_console): add Textual frontend and app wiring
TUI frontend built on Textual with thread-safe backend integration:

- Launch screen with port/baud/log-dir selection and auto-refresh
- Log view with scrollable RichLog and color-coded write methods;
  Rich markup escaped to prevent crash on bracket characters
- Stats screen split into two tables by time base:
  - Firmware Counters (since chip init): Written and Buffer Loss
  - Console Measurements (since console start): Average Throughput
    and Peak Write — each with separate frames and bytes sub-columns
  - Column widths constrained with min_width/max_width for stable layout
  - Division-by-zero guard when peak window is zero
- Shortcut screen overlay
- Status panel with sync state, checksum mode, and transport metrics;
  speed display uses named UART_BITS_PER_BYTE constant
- Main app wiring: UART reader thread with threading.Lock for serial
  access, frame parser pipeline, stats emission via StatsUpdated
  messages (including funnel snapshots via public accessor for
  thread-safe delivery), BackendStopped message for disconnect
- BackendStopped posted on open_serial failure (prevents stuck status)
- Select.BLANK guard for baud rate in launch screen
- Explicit None guards replace asserts in backend worker
- Wall-clock burst tracking for REDIR frames (no chip-side timestamp)
- SN gap alerts (FrameLossDetected) and traffic spike notifications
2026-04-07 12:28:59 +08:00
Zhou Xiao
956f4b1b69 feat(ble_log_console): add backend with frame parser, stats, and data models
Modular backend for the BLE log console rewrite:

- Frame parser with sync state machine and checksum auto-detection
  (4 modes: XOR/Sum x Full/Header-only); handles incomplete frames
  during re-sync search when previously synced
- Internal frame decoder (INIT_DONE, ENH_STAT, FLUSH, INFO)
- Data models: SourceCode, FrameByteCount, FunnelSnapshot, LossType
- Stats package with composition-root StatsAccumulator orchestrating:
  - TransportMetrics (RX bytes, lifetime-average throughput)
  - FirmwareLossTracker / FirmwareWrittenTracker (ENH_STAT deltas
    with first-report absolute value initialization)
  - SNGapTracker (sliding window reorder-tolerant SN gap detection)
  - PeakBurstTracker (per-source sliding window burst density)
  - TrafficSpikeDetector (wire utilization spike detection)
  - Wall-clock burst tracker for non-timestamped sources (REDIR)
- Torn-read guard on ENH_STAT reports (baudrate-based plausibility)
  with prev-state update on discard to prevent cascading drops
- Console-local metrics (TransportMetrics, PeakBurstTracker) preserved
  across INIT_DONE resets; only ENH_STAT-coupled components reset
- UART transport with port validation and exclusive serial access
- Comprehensive test suite (17 test files, 223 tests)
2026-04-07 12:28:59 +08:00
Island
9651a6bc5d Merge branch 'feat/use_common_config_to_sel_crypt_lib_v5.5' into 'release/v5.5'
Feat/use common config to sel crypt lib (v5.5)

See merge request espressif/esp-idf!46407
2026-04-07 12:11:55 +08:00
Euripedes Rocha
54962cf514 Merge branch 'feat/eth_ci_improvements_v5.5' into 'release/v5.5'
Feat/eth ci improvements (v5.5)

See merge request espressif/esp-idf!46086
2026-04-02 09:10:54 +02:00
Mahavir Jain
9928d929c2 Merge branch 'fix/fix_possible_null_dereference_wifi_provisioning' into 'release/v5.5'
fix(wifi_provisioning): fixes potential null dereference on malformed packet

See merge request espressif/esp-idf!47012
2026-04-01 18:11:33 +05:30
Jiang Jiang Jian
a23df61812 Merge branch 'feature/update_gdbstub_v5.5' into 'release/v5.5'
gdbstub: backport fixes (v5.5)

See merge request espressif/esp-idf!46201
2026-03-31 14:15:09 +08:00
Jiang Jiang Jian
5408e1b08d Merge branch 'feature/update-openocd-to-v0.12.0-esp32-20260304_v5.5' into 'release/v5.5'
feat(tools): update openocd version to v0.12.0-esp32-20260304 (v5.5)

See merge request espressif/esp-idf!46364
2026-03-31 10:46:53 +08:00
luoxu
f6b555e33f remove(ble_mesh): deprecate the tinycrypt library within the Bluetooth Mesh component 2026-03-31 00:06:10 +08:00
Alexey Gerenkov
977a49635d Merge branch 'fix/cmake_flags_passing_to_external_project_v5.5' into 'release/v5.5'
fix(build): fix passing CMAKE_<LANG>_FLAGS from ExternalProject_Add (v5.5)

See merge request espressif/esp-idf!46654
2026-03-30 21:37:58 +08:00
Alexey Gerenkov
752c01ece0 Merge branch 'feature/refactor_linker_scripts_v5.5' into 'release/v5.5'
feat(esp_system): refactor linker scripts to reduce duplicated code (v5.5)

See merge request espressif/esp-idf!45729
2026-03-30 21:19:53 +08:00
Fu Hanxi
2513610910 Merge branch 'ci/fix-exclude-dir-check-build-test-rules_v5.5' into 'release/v5.5'
ci: fix check-build-test-rules exclude-dir (v5.5)

See merge request espressif/esp-idf!47088
2026-03-30 09:01:09 +02:00
Fu Hanxi
06df177352 Merge branch 'ci/missing_config_pre_commit_hook_v5.5' into 'release/v5.5'
ci: add pre-commit hook to detect missing configs (v5.5)

See merge request espressif/esp-idf!46206
2026-03-30 08:16:44 +02:00
Alexey Lapshin
36ac688705 feat(esp_gdbstub): support watchpoint trigger reason 2026-03-27 17:04:24 +08:00
Alexey Lapshin
9cb94a5a20 fix(gdbstub): fix task lookup by frame 2026-03-27 17:04:24 +08:00
Alexey Lapshin
c5cd8769ed fix(gdbstub): xtensa: fix FPU registers read and write
Closes https://github.com/espressif/esp-idf/issues/17944
2026-03-27 17:04:24 +08:00
Alexey Lapshin
4e2cb08534 feat(gdbstub): add f- and q-registers support 2026-03-27 17:04:24 +08:00
Fu Hanxi
3cdc303f02 ci: fix check-build-test-rules exclude-dir 2026-03-27 09:56:06 +01:00
Ashish Sharma
0f294a2d96 fix(wifi_provisioning): fixes potential null dereference on malformed packet 2026-03-26 11:45:06 +08:00
Wei Yuhan
735507283d change(version): Update version to 5.5.4 2026-03-24 14:55:26 +08:00
Alexey Lapshin
aef188ebd3 fix(build): fix passing CMAKE_<LANG>_FLAGS from ExternalProject_Add 2026-03-17 11:41:42 +07:00
Alexey Lapshin
3c237fcd86 fix(test): fix xfail panic test for esp32s2 2026-03-16 18:12:07 +07:00
Evgeny Torbin
6447e89a19 ci: fix pre-commit hook errors 2026-03-13 16:06:08 +08:00
Evgeny Torbin
d412f4b858 ci: remove unused test cases 2026-03-13 16:06:08 +08:00
Erhan Kurubas
5ba731c0fa feat(tools): update openocd version to v0.12.0-esp32-20260304 2026-03-12 08:50:23 +01:00
Ondrej Kosta
f2f30620e5 feat(esp_eth): Ethernet test refactor
ETH tests use setUp-tearDown to init/deinit resources
2026-03-10 15:58:11 +08:00
Jiang Jiang Jian
60bcaa6447 Merge branch 'fix/coredump_test_tcb_corrupted_v5.5' into 'release/v5.5'
test(espcoredump): fix test for corrupted TCB handling in coredump (v5.5)

See merge request espressif/esp-idf!45327
2026-03-03 19:37:10 +08:00
Fu Hanxi
6d0dfc32b6 ci: fix fast_template_app (v5.5) 2026-02-27 09:46:39 +01:00
Alexey Gerenkov
0c7eac2565 Merge branch 'feature/picolibc_v5.5' into 'release/v5.5'
feat(build): add Picolibc support (v5.5)

See merge request espressif/esp-idf!44108
2026-02-26 18:12:58 +08:00
Fu Hanxi
124a1d3b82 ci: backport master to 5.5 2026-02-25 11:38:38 +01:00
Roland Dobai
847ee14822 Merge branch 'fix/minimal_build_no_main_v5.5' into 'release/v5.5'
fix(build): ensure the main component exists when MINIMAL_BUILD is enabled (v5.5)

See merge request espressif/esp-idf!45916
2026-02-19 09:43:00 +01:00
Frantisek Hrbata
0d55253c8c fix(test_build_system): apply ruff formatting to test_components.py
Signed-off-by: Frantisek Hrbata <frantisek.hrbata@espressif.com>
2026-02-19 06:21:57 +01:00
Frantisek Hrbata
4818b0b2c5 fix(build): ensure the main component exists when MINIMAL_BUILD is enabled
The minimal build property is simply a shorthand for `set(COMPONENTS
main)`. The issue is that there is currently no check to verify whether
the `main` component actually exists or is known to the build system.
If the `main` component is not present, print an error message along
with suggestions on how to fix this inconsistency.

Closes https://github.com/espressif/esp-idf/issues/18219

Signed-off-by: Frantisek Hrbata <frantisek.hrbata@espressif.com>
2026-02-19 06:19:25 +01:00
Aditya Patwardhan
2c211b2367 change(version): Update version to 5.5.3 2026-02-17 19:24:16 +05:50
Alexey Lapshin
74ed018fc1 fix(test): fix tests according to the new toolchain flags 2026-02-05 13:40:11 +07:00
Fu Hanxi
3adb2a22c9 ci: ignore eco3 marker from adding rev_default marker 2026-02-02 12:36:42 +01:00
Alexey Lapshin
c482665638 fix(ci): fix check_public_headers.py to check system headers 2026-02-02 12:27:24 +07:00
Alexey Lapshin
0b3929d0d9 feat(esp_libc): add full support for picolibc 2026-01-30 23:39:53 +07:00
Alexey Lapshin
1c08b38b27 feat(build): propagate compiler flags from files to toolchain.cmake
This change improves build consistency across external projects integrated
through CMake by ensuring that compiler flags defined in configuration files
are passed correctly to the toolchain. It covers the majority of use cases,
as external projects are typically also CMake-based. For projects that use
a custom build system, users will still need to specify the required flags
manually.
2026-01-30 17:30:49 +07:00