Commit Graph

56 Commits

Author SHA1 Message Date
Armando
f643b95118 partition: use esp_partition_munmap instead of spi_flash_munmap 2025-09-19 18:51:40 +08:00
Martin Vychodil
cc7d9b4b7c Storage: Partition APIs moved to the new component 'esp_partition'
All the partition handling API functions and data-types were moved from the 'spi_flash' component to the new one named 'esp_partition'. See Storage 5.x migration guide for more details
2025-09-19 18:51:40 +08:00
Euripedes Rocha
3ff7b48680 [MQTT] Simplifies MQTT CMakeLists file
- Uses mocks from tools instead of creating them.
- Move host based definition to test code.
2025-09-19 18:51:40 +08:00
Ivan Grokhotkov
54de87142c build system: re-add -Wno-format as private flag for some components 2025-09-19 18:51:40 +08:00
yuanjm
186dd8a18b test: Add mqtt5 unit-test 2025-09-19 18:51:40 +08:00
yuanjm
30c80f9631 mqtt: Add mqtt5 Kconfig 2025-09-19 18:51:40 +08:00
David Cermak
30b05ecead esp_netif/lwip: Fix deps cycles to "lwip -> esp_netif -> phy-drivers"
Fix dependency tree so that lwip doesn't depend on any specific network
interface component.
Network interface drivers shall depend on esp_netif.
esp_netif shall depend on lwip (but not on any specific interface
driver) -- it optionally depends on vfs and esp_eth (need ethernet
header for L2/bridge mode)
2025-09-19 18:51:40 +08:00
Euripedes Rocha
dd40fc3af2 [MQTT] - Updates esp_mqtt configuration struct
- Layered config struct
- Fix examples.
2025-09-19 18:51:40 +08:00
Fu Hanxi
4ebf448bcf docs: changes docs supported targets tables 2025-09-19 18:51:40 +08:00
Euripedes Rocha
4b884c421a [MQTT] - Adds esp-timer as dependency and change version.
- Current time is now from esp_timer.
2025-09-19 18:51:40 +08:00
David Cermak
c6951764a2 mqtt: Update tests to start with valid transport 2025-09-19 18:51:40 +08:00
David Cermak
7d9a22b4d4 mqtt: Fix and add mqtt host test to CI 2025-09-19 18:51:40 +08:00
David Cermak
8f8090e4ac esp-netif: Make dependency on esp-eth optional
* esp-netif to optionally depend on esp-eth (only for l2tap config)
* esp_eth.h now includes the original ethernet header and the
ethernet-netif glue layer
* Updated examples and test to explicitely use esp-eth dependency if
needed
2025-09-19 18:51:40 +08:00
Djordje Nedic
37ff11d0ed tools: Increase the minimal supported CMake version to 3.16
This updates the minimal supported version of CMake to 3.16, which in turn enables us to use more CMake features and have a cleaner build system.
This is the version that provides most new features and also the one we use in our latest docker image for CI.
2025-09-19 18:51:40 +08:00
Anton Maklakov
0edf4bee23 components: correct printf() placeholder for time_t
Using C99 %jd, https://en.cppreference.com/w/c/chrono/time_t
2025-09-19 18:51:40 +08:00
Laukik Hase
6b188eab14 kconfig: Changed default values of bool configs
- Some bool configs were using default values true and false,
  instead of y and n.
2025-09-19 18:51:40 +08:00
Sagar Bijwe
3a3457eb66 Remove legacy system event framework. 2025-09-19 18:51:40 +08:00
Sudeep Mohanty
af6b3bb9fe esp_hw_support/esp_system: Re-evaluate header inclusions and include directories
This commit updates the visibility of various header files and cleans up
some unnecessary inclusions. Also, this commit removes certain header
include paths which were maintained for backward compatibility.
2025-09-19 18:51:40 +08:00
Darian Leung
c1bc52fa31 freertos: Remove legacy hooks
This commit refactors the legacy hooks as follows:

- Removed CONFIG_FREERTOS_LEGACY_HOOKS
- FreeRTOS hooks are now enabled via:
    - CONFIG_FREERTOS_USE_IDLE_HOOK
    - CONFIG_FREERTOS_USE_TICK_HOOK
- Update IDF hooks documentation
2025-09-19 18:51:40 +08:00
David Cermak
64993a3270 esp_eth: Update esp32's EMAC API to decouple driver and vendor config 2025-09-19 18:51:40 +08:00
David Cermak
05231a9912 mqtt: Add docs on MQTT_CUSTOM_OUTBOX implentation
Closes https://github.com/espressif/esp-mqtt/issues/217
2025-09-19 18:51:40 +08:00
Jakob Hasse
92320ebdda refactor (test_utils)!: separate file for memory check functions
Memory check (leaks and heap tracing) functions for unit tests
now have a separate file now and are renamed for more consistency.

BREAKING CHANGE: renamed memory check function names which may be used
                 in unit tests outside IDF.
2025-09-19 18:51:40 +08:00
David Cermak
98d60c9a00 MQTT: Add more tests 2025-09-19 18:51:40 +08:00
David Cermak
afb3c084f1 MQTT: Add more unit tests with actual broker 2025-09-19 18:51:40 +08:00
Darian Leung
947a4f0908 freertos: Add portTRY_ENTRY_CRITICAL() and deprecate legacy spinlock fucntions
Add TRY_ENTRY_CRITICAL() API to all for timeouts when entering critical sections.
The following port API were added:
- portTRY_ENTER_CRITICAL()
- portTRY_ENTER_CRITICAL_ISR()
- portTRY_ENTER_CRITICAL_SAFE()

Deprecated legacy spinlock API in favor of spinlock.h. The following API were deprecated:
- vPortCPUInitializeMutex()
- vPortCPUAcquireMutex()
- vPortCPUAcquireMutexTimeout()
- vPortCPUReleaseMutex()

Other Changes:
- Added portMUX_INITIALIZE() to replace vPortCPUInitializeMutex()
- The assembly of the critical section functions ends up being about 50 instructions longer,
  thus the spinlock test pass threshold had to be increased to account for the extra runtime.

Closes https://github.com/espressif/esp-idf/issues/5301
2025-09-19 18:51:40 +08:00
Roland Dobai
5a8152580b Build & config: Remove leftover files from the unsupported "make" build system 2025-09-19 18:51:40 +08:00
Zim Kalinowski
0d4f84fe7a upgrade freertos version and history 2025-09-19 18:51:40 +08:00
Euripedes Rocha Filho
5cf3dad79a mqtt: Adds host tests for mqtt client 2025-09-19 18:51:40 +08:00
liuhan
531329d262 transport: Add CONFI_WS_TRANSPORT for optimize the code size 2025-09-19 18:51:40 +08:00
David Cermak
9bc1e1a011 mqtt: Moved weekend tests to test apps 2025-09-19 18:51:40 +08:00
Fu Hanxi
438b06bd6b style: format python files with isort and double-quote-string-fixer 2025-09-19 18:51:40 +08:00
David Cermak
b3550c0fa2 ci: Add MQTT publish test to standard test apps 2025-09-19 18:51:40 +08:00
David Cermak
7faa1a99fe ci: Extend the MQTT weekend test to check mqtt-enqueue api 2025-09-19 18:51:40 +08:00
David Cermak
8f5ebf26f4 MQTT: Add new config modes (outbox related, incremental id) 2025-09-19 18:51:40 +08:00
Axel Lin
121b7c7b13 MQTT: Restore default MQTT_OUTBOX_EXPIRED_TIMEOUT_MS to 30 sec
The OUTBOX_EXPIRED_TIMEOUT_MS was 30*1000 in original esp-mqtt code.
Don't change the default OUTBOX_EXPIRED_TIMEOUT_MS without good reason,
which may has impact on memory usage for existing applications.

Fixes: 8e50d4b3967f ("MQTT: add configurable msg expired timeout")
Signed-off-by: Axel Lin <axel.lin@gmail.com>
2025-09-19 18:51:40 +08:00
Angus Gratton
ebd802fa2c Whitespace: Automated whitespace fixes (large commit)
Apply the pre-commit hook whitespace fixes to all files in the repo.

(Line endings, blank lines at end of file, trailing whitespace)
2025-09-19 18:51:40 +08:00
Jakob Hasse
4b6dedee6a cmock: added cmock as component
* changing dependencies from unity->cmock
* added component.mk and Makefile.projbuild
* ignore test dir in gen_esp_err_to_name.py
* added some brief introduction of CMock in IDF
2025-09-19 18:51:40 +08:00
Marius Vikhammer
33f7fdf23b MQTT: add configurable msg expired timeout 2025-09-19 18:51:40 +08:00
David Cermak
d0f8eb10f3 mqtt-tests: rename tests to match the actual group 2025-09-19 18:51:40 +08:00
David Cermak
ef9a2db815 mqtt: reenable outbox unit tests for esp32s2 2025-09-19 18:51:40 +08:00
Simon Brélivet
14be739764 esp_mqtt: add option to configure mqtt task priority.
Merges https://github.com/espressif/esp-idf/pull/4947
2025-09-19 18:51:40 +08:00
michael
84f104bc71 ci: disable failed cases for s2 temporarily 2025-09-19 18:51:40 +08:00
David Cermak
2323b43c0d mqtt: example test to check connection with different ssl parameters 2025-09-19 18:51:40 +08:00
David Cermak
d52f5e084a mqtt: add basic set of unit tests 2025-09-19 18:51:40 +08:00
David Cermak
6b4a3b3759 ci: updated mqtt weekend test for qemu support
Added default sdkconfig for qemu build for the mqtt publish example,
Added environment configuration for running the same test on target
or in qemu
Updated missing example tests per latest ttfw refactoring
2025-09-19 18:51:40 +08:00
Marius Vikhammer
d67b4ec8b8 MQTT: update default broker URL for examples
The MQTT broker URL used as default in the examples has ceased operation. All examples and documention have been updated to point to the new domain mqtt.eclipse.org.
This also required an update of the python example test scripts to use TLS 1.2
2025-09-19 18:51:40 +08:00
David Cermak
43bc4ca622 ci: fix weekend test confguration update per latest refactoring of
grouping tests
2025-09-19 18:51:40 +08:00
Michael (XIAO Xufeng)
e6df783596 ci: limit example test to ESP32s 2025-09-19 18:51:40 +08:00
David Cermak
b09c4daf0d mqtt_tests: add weekend test for sending and receiving empty payload messages, update config options per new naming convetions 2025-09-19 18:51:40 +08:00
David Cermak
202acd4d6d mqtt tests: adding weekend test for mqtt library to exercise publishing/receiving different data and references esp-mqtt commits to pass these tests
testing conditions:
transports (tcp, ssl, ws..)
qos (0, 1, 2)
short repeated messages (packed packets)
oversized messages (fragmented packets)
publish from a different thread

Closes https://github.com/espressif/esp-idf/issues/2870 by means of including commit 815623dfe5 from esp-mqtt
Closes https://github.com/espressif/esp-idf/issues/2975 by means of including commit 752953dc3b from esp-mqtt
Closes https://github.com/espressif/esp-idf/issues/2850 by means of including commits df455d2a5f 17fd713bce from esp-mqtt
2025-09-19 18:51:40 +08:00