Commit Graph

18 Commits

Author SHA1 Message Date
Euripedes Rocha
8af82c87b2 feat(mqtt): Stop cmake process if submodule is missing
Closes https://github.com/espressif/esp-idf/issues/12202
2023-09-14 08:38:55 +02:00
Euripedes Rocha
5afa3d347c [MQTT] - Moves compile definition out of idf
- MQTT build process is to be managed in esp-mqtt repository
- Componenf directory points directly to submodule, usage must be
  unchanged
2023-01-06 06:30:26 +00:00
Euripedes Rocha
4ec9d4bad6 mqtt: Set state on stoping; Add error code to Subscribed event
* Update submodule: git log --oneline ae53d799da294f03ef65c33e88fa33648e638134..fde00340f19b9f5ae81fff02ccfa9926f0e33687

Detailed description of the changes:
* Fix the default configuration for event queue
  - See merge request espressif/esp-mqtt!153
  - See commit https://github.com/espressif/esp-mqtt/commit/fb42588
* Adds missing header.
  - See merge request espressif/esp-mqtt!152
  - See commit https://github.com/espressif/esp-mqtt/commit/8a60057
* Moves state change when stopping the client
  - See merge request espressif/esp-mqtt!150
  - Closes https://github.com/espressif/esp-mqtt/issues/239
  - See commit https://github.com/espressif/esp-mqtt/commit/3738fcd
* Adds error code to MQTT_EVENT_SUBSCRIBED in case of failure
  - See merge request espressif/esp-mqtt!143
  - - Closes https://github.com/espressif/esp-mqtt/issues/233
  - See commit https://github.com/espressif/esp-mqtt/commit/9af5c26
* Adds debug information on sending dup messages
  - See merge request espressif/esp-mqtt!145
  - See commit https://github.com/espressif/esp-mqtt/commit/47b3f9b
* ci: Fix qemu build
  - See merge request espressif/esp-mqtt!147
  - See commit https://github.com/espressif/esp-mqtt/commit/68e8c4f
* ci: Build and Test QEMU on v5.0
  - See merge request espressif/esp-mqtt!142
  - See commit https://github.com/espressif/esp-mqtt/commit/9db9ee7
* client: Add support for user events
  - See merge request espressif/esp-mqtt!140
  - Closes https://github.com/espressif/esp-mqtt/issues/230
  - See commit https://github.com/espressif/esp-mqtt/commit/97503cc
* Adds unregister event API
  - See merge request espressif/esp-mqtt!139
  - Closes https://github.com/espressif/esp-idf/issues/9194
  - See commit https://github.com/espressif/esp-mqtt/commit/a9a9fe7
2022-12-13 15:34:31 +00:00
Euripedes Rocha
736424c366 [MQTT] Simplifies MQTT CMakeLists file
- Uses mocks from tools instead of creating them.
- Move host based definition to test code.
2022-09-19 09:11:15 +00:00
Ivan Grokhotkov
401c10ecfb build system: re-add -Wno-format as private flag for some components 2022-08-03 16:42:47 +04:00
yuanjm
5a7b17ff7d mqtt: Add mqtt5 Kconfig 2022-07-28 06:24:43 +00:00
David Cermak
5c383d7b73 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)
2022-07-20 14:59:07 +02:00
Euripedes Rocha
33fccf6405 [MQTT] - Adds esp-timer as dependency and change version.
- Current time is now from esp_timer.
2022-06-29 11:50:32 +00:00
David Cermak
1ad3e2db17 mqtt: Fix and add mqtt host test to CI 2022-06-11 14:23:30 +02:00
Ivan Grokhotkov
47659be5b8
build system: remove lwip from common requirements
lwip was added to common requirements list to provide "sys/socket.h"
header to all components without additional requirements specified.

However, lwip pulls in a lot of dependencies on other components.
This commit removes lwip from common requirements to reduce the number
of components in G1-only apps.

To compensate for this removal, the following changes are made:
- newlib (which is a common requirement) has a public dependency on
  lwip if lwip is present in the build. This ensures that sys/socket.h
  is available as long as lwip component is included into the build.
- lwip is now a public requirement of esp-tls since esp_tls.h includes
  sys/socket.h header.
- lwip is now a public requirement o esp_http_client because
  sys/socket.h is included from esp_http_client.h
- lwip is now a private requirement of esp_wifi for "smartconfig_ack"
- lwip is now a private requirement of mqtt for socket functions
- lwip is now a public requirement of tcp_transport because
  esp_transport_tcp.h includes sys/socket.h header.
- mbedtls checks if lwip component is present in the build. If yes,
  net_sockets.c is added to the build, along with the dependency on
  lwip. Previously lwip was a public requirement of mbedtls
  unconditionally.

system/g1_components test app is updated to reflect the changes

Default public dependencies of a component before and after this
change, except common requirements:

- esp_timer (public dependency of freertos)
- bootloader_support (public dependency of esp_hw_support)
- vfs (public dependency of lwip)
- esp_wifi (public dependency of lwip)
- esp_event (public dependency of esp_wifi)
- esp_netif (public dependency of esp_event)
- esp_eth (public dependency of esp_netif)
- esp_phy (public dependency of esp_wifi)

After:

- esp_timer (public dependency of freertos)
- bootloader_support (public dependency of esp_hw_support)

Altogether, the following components have been always added as
public requirements to all other components, and are not added now
([breaking-change]):

- lwip
- vfs
- esp_wifi
- esp_event
- esp_netif
- esp_eth
- esp_phy

Application components now need to explicitly declare dependencies on
these components.
2022-05-02 20:47:17 +02:00
Mahavir Jain
e7db313c63 mqtt: replace nghttp with http_parser references 2022-01-11 10:26:25 +05:30
Sudeep Mohanty
4846222102 freertos: update freertos folder structure to match upstream
The following changes have been made:
1. All FreeRTOS kernel source files are now placed in the
   freertos/FreeRTOS-Kernel folder to match with the upstream folder structure.
2. All kernel include files are now placed in freertos/FreeRTOS-Kernel/include.
3. All port files are now placed in freertos/FreeRTOS-Kernel/portable.
4. All additions/customizations are placed in freertos/esp_additions.
5. All other miscellaneous files (README, License files etc.) are moved to
   freertos/FreeRTOS-Kernel folder to match with the upstream.
6. Updated esp-cryptoauthlib to latest commit to resolve FreeRTOS
   include dependencies.

Signed-off-by: Sudeep Mohanty <sudeep.mohanty@espressif.com>
2021-10-29 12:05:13 +08:00
Euripedes Rocha Filho
f6d23bfee1 mqtt: Adds host tests for mqtt client 2021-06-30 08:55:39 +01:00
Renz Christian Bagaporo
9eccd7c082 components: use new component registration api 2019-06-21 19:53:29 +08:00
David Cermak
40c6cbb3ab 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
2018-10-02 14:15:00 +02:00
Anton Maklakov
d6a5cd6e82 mqtt: silence a format warning 2018-09-20 18:53:15 +08:00
Renz Bagaporo
8fdfc22e2e mqtt: list files manually in component cmake file 2018-09-19 16:48:12 +08:00
David Cermak
23345d2021 MQTT: Integrate esp-mqtt library into idf
added docs and tests for mqtt library, small fixes (removed warnings, option for custom outbox, websocket bug fixed for longer transports). refactored to use common tcp_transport component, support for CMake build system.
Closes #2108
2018-09-12 08:00:59 +02:00