f072c9f753
style: format python files with isort and double-quote-string-fixer
2022-12-16 08:38:48 +01:00
3883bde0b0
ci: Add MQTT publish test to standard test apps
2022-12-16 08:38:48 +01:00
40fdf32793
ci: Extend the MQTT weekend test to check mqtt-enqueue api
2022-12-16 08:38:48 +01:00
2c3363e23a
MQTT: Add new config modes (outbox related, incremental id)
2022-12-16 08:38:48 +01:00
6756e62387
MQTT: Update submodule reference to support new config modes
...
* Queueing publish messages to outbox when the client is not connected (default=off -> messages are queued if disconnected)
* Use of incremental msg-id instead of random id (default=off -> msg-id uses platform_random())
* Posting a new event-id if a queued message gets deleted from the outbox (default=off -> events are not posted)
Detailed description of included `esp-mqtt` changes
(da850b0add1e71b3659bfac5d797cc834dc3e89b...9ea804e0ab5368d5ab53ae2301a5fec9d1f12f1a)
* mqtt: Remove unused mqtt_header_state_t
- esp-mqtt commit: b7158a4aea
- esp-mqtt MR: espressif/esp-mqtt!84
- Merges https://github.com/espressif/esp-mqtt/pull/180
* Cleanup public include dirs
- esp-mqtt commit: f65d5d05db
- esp-mqtt MR: espressif/esp-mqtt!85
* Config: Add a new option to use incremental message id
- esp-mqtt commit: 8bb4a26f46
- esp-mqtt MR: espressif/esp-mqtt!85
- Closes https://github.com/espressif/esp-mqtt/issues/176
* Publish: Add new API to enqueue qos>0 messages
- esp-mqtt commit: dc7fd5c0b1
- esp-mqtt MR: espressif/esp-mqtt!85
- Closes https://github.com/espressif/esp-mqtt/issues/155
* Config: Add a new option to disable publishing when disconnected
- esp-mqtt commit: f44dcb1c26
- esp-mqtt MR: espressif/esp-mqtt!85
- Related https://github.com/espressif/esp-mqtt/issues/177
* Events: Add new event to report deleted messages from outbox
- esp-mqtt commit: 2e35d4d4d5
- esp-mqtt MR: espressif/esp-mqtt!85
* Publish: Allow for qos=0 messages to be stored using esp_mqtt_client_enqueue()
- esp-mqtt commit: e2de0f3e3e
- esp-mqtt MR: espressif/esp-mqtt!85
2022-12-16 08:38:48 +01:00
10bba73d21
MQTT: Update submodule reference: config, error handle, minor fixes
...
Updates esp-mqtt reference to include fixes below related mainly to:
* configuration update (disable keepalive, network timeout)
* minor fixes (size_t for all sizes, unbalanced lock, api for
outbox-size)
* extended error handle to include socket's errno
Closes https://github.com/espressif/esp-idf/issues/5906
Config: Added config value to disable keepalive mechanism
esp-mqtt commit: 8562437c8a
Related https://github.com/espressif/esp-mqtt/issues/179
Added esp_mqtt_client_get_outbox_size API
esp-mqtt commit: 0a1d9d0300
Related https://github.com/espressif/esp-mqtt/pull/178
mqtt_outbox: Removed unused retry_count field from outbox_item_t
esp-mqtt commit: 673086e13a
config: Fixed typo for configuring OUTBOX_EXPIRED_TIMEOUT_MS
esp-mqtt commit: 259baaec96
Fixed missing MQTT_API_UNLOCK in esp_mqtt_client_stop error path
esp-mqtt commit: 845c2a3a1e
Related https://github.com/espressif/esp-mqtt/issues/173
Related https://github.com/espressif/esp-mqtt/pull/174
Extended mqtt error handle to capture transport's socket errno (IDF
v4.3+)
esp-mqtt commit: 23c8e1ecf5
Config: Added configuration value to set network timeout
esp-mqtt commit: a03228ac46
Related https://github.com/espressif/esp-mqtt/pull/166
Used size_t for all lengths to allow for other architectures
esp-mqtt commit: b9db8d9020
2022-12-16 08:38:48 +01:00
b342444746
riscv: Add new arch-level component
...
Changes come from internal branch commit a6723fc
2022-12-16 08:38:48 +01:00
5facf78673
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: e931168ed695 ("MQTT: add configurable msg expired timeout")
Signed-off-by: Axel Lin <axel.lin@gmail.com>
2022-12-16 08:38:48 +01:00
6c55757f70
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)
2022-12-16 08:38:48 +01:00
87d698cbc7
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
2022-12-16 08:38:48 +01:00
25b661c8ea
MQTT: add configurable msg expired timeout
2022-12-16 08:38:48 +01:00
8b3d3db10b
MQTT: Update submodule reference
...
SSL: add config option for skipping common name check
esp-mqtt commit: 5e8950e681
)
Closes https://github.com/espressif/esp-mqtt/issues/158
SSL: add support for tls with secure element (ATECC608A)
esp-mqtt commit: a7ff9afa3f
)
Closes https://github.com/espressif/esp-mqtt/issues/156
Websocket: Allow the query part of the uri to be a part of the path
esp-mqtt commit: 40b06deb10
)
Closes https://github.com/espressif/esp-mqtt/issues/161
Config: Add check for consistency between config settings
esp-mqtt commit: 8a412c147d
)
Add IDF version check for secure element feature
esp-mqtt commit: db4bce01ab
)
Fix esp_mqtt_client_stop deadlock
esp-mqtt commit: 5e17dcaeb2
)
Closes https://github.com/espressif/esp-mqtt/issues/163
Add dispatch error event for read errors
esp-mqtt commit: d4aaec08ff
Closes https://github.com/espressif/esp-idf/issues/5704
Cleanup expired messages when offline
esp-mqtt commit: bdadd77c6e
Closes https://github.com/espressif/esp-idf/issues/5668
esp_mqtt_client_publish now returns msg id for QoS > 0 when offline
esp-mqtt commit: f7325bfa10
Add support for Digital Signature through ESP-TLS
esp-mqtt commit: 7d8e59de00
2022-12-16 08:38:48 +01:00
691e7bca88
mqtt: clenaup logs and docs
...
esp_mqtt: Change an error print to use ESP_LOGE instead of ESP_LOGI
Move Sending MQTT connect message log from Info to Debug level
docs: Makes clear that publish API could block
Change the message printed after MQTT connection failure
Closes https://github.com/espressif/esp-idf/issues/5077
(by means of referencing commit 615aeae0c2
)
2022-12-16 08:38:48 +01:00
9b79fe3d00
esp_mqtt_abort_connection: Fixed an issue which could result in a race condition and subsequent crash
2022-12-16 08:38:48 +01:00
cb782cae1e
mqtt-tests: rename tests to match the actual group
2022-12-16 08:38:48 +01:00
9db10b5b7b
mqtt: reenable outbox unit tests for esp32s2
2022-12-16 08:38:48 +01:00
29ce3c5869
esp_mqtt: add option to configure mqtt task priority.
...
Merges https://github.com/espressif/esp-idf/pull/4947
2022-12-16 08:38:48 +01:00
605352c1c5
MQTT: Reference latest mqtt addressing c++ build and qos1/2 resend
...
Closes https://github.com/espressif/esp-idf/issues/4787
2022-12-16 08:38:48 +01:00
5ba36d511f
ci: disable failed cases for s2 temporarily
2022-12-16 08:38:48 +01:00
650328b021
mqtt: example test to check connection with different ssl parameters
2022-12-16 08:38:48 +01:00
5be3f7b5d4
mqtt: add basic set of unit tests
2022-12-16 08:38:48 +01:00
0178bafba8
mqtt: update submodule to point to latest commit.
...
Adds bugfixes for:
- Too early publishing
- Potential mutex memory leak
- CI related issues.
- Wait for entire connack message
- Event loop not getting cleaned up
Adds support for ALPN, configurable reconnect time, QEMU CI tests and password
protected client key.
MQTT MR: https://gitlab.espressif.cn:6688/espressif/esp-mqtt/merge_requests/46
Closes IDF-1162
Closes https://github.com/espressif/esp-mqtt/issues/137
MQTT MR: https://gitlab.espressif.cn:6688/espressif/esp-mqtt/merge_requests/47
Closes IDF-1126
MQTT MR: https://gitlab.espressif.cn:6688/espressif/esp-mqtt/merge_requests/48
Closes IDFGH-2197
Closes https://github.com/espressif/esp-idf/issues/4349
Closes https://github.com/espressif/esp-mqtt/issues/140
MQTT MR: https://gitlab.espressif.cn:6688/espressif/esp-mqtt/merge_requests/48
Closes IDFGH-2235
Closes https://github.com/espressif/esp-idf/issues/4384
MQTT MR: https://gitlab.espressif.cn:6688/espressif/esp-mqtt/merge_requests/49
Closes https://github.com/espressif/esp-idf/issues/4433
Closes IDFGH-2293
MQTT MR: https://gitlab.espressif.cn:6688/espressif/esp-mqtt/merge_requests/50
Closes FCS-254
MQTT MR: https://gitlab.espressif.cn:6688/espressif/esp-mqtt/merge_requests/53
Closes FCS-267
2022-12-16 08:38:48 +01:00
8a24bebbc0
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
2022-12-16 08:38:48 +01:00
62f3dc4705
mqtt: updated to latest version to include latest fixes, support for global CA store, extended error structure to receive mqtt specific errors. updated idf ssl example to use this error struct
...
https://github.com/espressif/esp-mqtt/issues/135
2022-12-16 08:38:48 +01:00
6cadfe519b
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
2022-12-16 08:38:48 +01:00
37e511bef1
ci: fix weekend test confguration update per latest refactoring of
...
grouping tests
2022-12-16 08:38:48 +01:00
b4ba09ce38
esp_wifi: wifi support new event mechanism
...
1. WiFi support new event mechanism
2. Update examples to use new event mechanism
2022-12-16 08:38:48 +01:00
25f423d69b
ci: limit example test to ESP32s
2022-12-16 08:38:48 +01:00
5a50fc0812
esp_tls: enable psk verification mode, added mqtt example using psk authentication
2022-12-16 08:38:48 +01:00
bef4fce9c1
mqtt: referenced esp-mqtt master to close disconnection issues and fix static analysis warnings
...
closes https://github.com/espressif/esp-idf/issues/3619 including mqtt commit 7223302deb
closes https://github.com/espressif/esp-idf/issues/3215 including mqtt commit caf5007b99
2022-12-16 08:38:48 +01:00
49296d851d
esp-tls: extending error handle to contain error descriptors with last mbedtls failure and latest certificate verification result flags, reworked tcp_transport to use this error handle
2022-12-16 08:38:48 +01:00
a903e5e3a9
esp-tls: capturing specific errors to be available in tcp_transport and then in application code
2022-12-16 08:38:48 +01:00
63b3f29ffc
components: use new component registration api
2022-12-16 08:38:48 +01:00
332fadfea6
esp_websocket_client: Add websocket client component
...
Closes https://github.com/espressif/esp-idf/issues/2829
2022-12-16 08:38:48 +01:00
3a2e82ec0f
mqtt: added support for esp event loop, updating examples to register and use event loop handler
2022-12-16 08:38:48 +01:00
7f77ad063d
mqtt_tests: add weekend test for sending and receiving empty payload messages, update config options per new naming convetions
2022-12-16 08:38:48 +01:00
6809fcb2df
tcp_transport: modified ws_read to read payload directly to the read buffer and separately from header bytes
...
Previous version read all data to the buffer including header which reduced maximum payload read. This version uses a local array to receive header and reads payload bytes to the buffer
2022-12-16 08:38:48 +01:00
6b70e14236
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 815623dfe5a0e41fa0e51ab4e336feb3eaa5ba15 from esp-mqtt
Closes https://github.com/espressif/esp-idf/issues/2975 by means of including commit 752953dc3be007cca4255b66a35d3087e61f6a54 from esp-mqtt
Closes https://github.com/espressif/esp-idf/issues/2850 by means of including commits df455d2a5fe562dd1b8351da99a1d6d82b66eff3 17fd713bced4f2d00df7ed664ed82a7d108ab317 from esp-mqtt
2022-12-16 08:38:48 +01:00
e19b9aa2df
separate rom from esp32 component to esp_rom
...
1. separate rom include files and linkscript to esp_rom
2. modefiy "include rom/xxx.h" to "include esp32/rom/xxx.h"
3. Forward compatible
4. update mqtt
2022-12-16 08:38:48 +01:00
9726859fa3
Correct Kconfigs according to the coding style
2022-12-16 08:38:48 +01:00
7437dce403
mqtt: support for BEFORE_CONNECT event in idf
...
Updated examples to use new event id, idf to use mqtt with fixed retained, oversized messages
2022-12-16 08:38:48 +01:00
60e39865e6
mqtt: ssl mutual authentication example added per PR from github, corrected cmake build, updated per idf style
...
Merges https://github.com/espressif/esp-idf/pull/2490
2022-12-16 08:38:48 +01:00
14e9df14ff
tcp_transport: Remove the ignore warning because we had idf/esp-idf!3359
2022-12-16 08:38:48 +01:00
a31ede754f
tcp_transport: transport set handle refactoring, web socket client name updated
2022-12-16 08:38:48 +01:00
229167f48a
tcp_transport: renamed possibly generic function names to be esp_ prefixed and not to colide with user namespace
2022-12-16 08:38:48 +01:00
71d6861d6a
tcp_transport: renamed transport related header files to esp_ prefixed to avoid collisions
...
tcp_transport component used public header files such as 'transport.h', etc. which are too generic and might collide with user or user libraries headers
This change closes #2417
2022-12-16 08:38:48 +01:00
78233fe7de
doc: Re-add summaries of what children each menu item has
...
Slightly different to the original version of this, but same goal.
2022-12-16 08:38:48 +01:00
1d49ac3249
mqtt: silence a format warning
2022-12-16 08:38:48 +01:00
20dda12b88
mqtt: list files manually in component cmake file
2022-12-16 08:38:48 +01:00
24b656ca4b
MQTT: Moved Kconfig from esp-mqtt submodule to esp-idf to support docs genration in RTD
2022-12-16 08:38:48 +01:00