bdadd77c6e24382234c1960600ac2bdf4a6ace9d
As long as the client was disconnect no cleanup were performed, consuming memory for every message published. Even if they were already expired and would be discarded when reconnected. Also moves delete of expired msgs before retransmit is done. This avoids situtations where a message could be sent even if it was expired. Closes https://github.com/espressif/esp-idf/issues/5668
ESP32 MQTT Library
Features
- Based on: https://github.com/tuanpmt/esp_mqtt
- Support MQTT over TCP, SSL with mbedtls, MQTT over Websocket, MQTT over Websocket Secure
- Easy to setup with URI
- Multiple instances (Multiple clients in one application)
- Support subscribing, publishing, authentication, will messages, keep alive pings and all 3 QoS levels (it should be a fully functional client).
How to use
ESP-MQTT is a standard ESP-IDF component. Please refer to instructions in ESP-IDF
Documentation
-
Please refer to the standard ESP-IDF, documentation for the latest version: https://docs.espressif.com/projects/esp-idf/
-
Documentation of ESP-MQTT API: https://docs.espressif.com/projects/esp-idf/en/latest/api-reference/protocols/mqtt.html
License
- MQTT Package - Stephen Robinson - contiki-mqtt
- Others @tuanpmt Apache License
Older IDF verisons
For ESP-IDF versions prior to IDFv3.2, please clone as a component of ESP-IDF:
git submodule add https://github.com/espressif/esp-mqtt.git components/espmqtt
and checkout the ESP-MQTT_FOR_IDF_3.1 tag
Languages
C
96.5%
C++
1.7%
Shell
1.1%
CMake
0.7%