Chapter 2. API Reference
Application Example
ESP examples are based on standard asio protocols/asio:
•
protocols/asio/udp_echo_server
•
protocols/asio/tcp_echo_server
•
protocols/asio/asio_chat
•
protocols/asio/ssl_client_server
Please refer to the specific example README.md for details
2.3.2 ESP-MQTT
Overview
ESP-MQTT is an implementation of MQTT protocol client (MQTT is a lightweight publish/subscribe messaging
protocol).
Features
• Supports 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, last will messages, keep alive pings and all 3 QoS levels (it
should be a fully functional client).
Application Example
• protocols/mqtt/tcp: MQTT over tcp, default port 1883
• protocols/mqtt/ssl: MQTT over tcp, default port 8883
• protocols/mqtt/ssl_psk: MQTT over tcp using pre-shared keys for authentication, default port 8883
• protocols/mqtt/ws: MQTT over Websocket, default port 80
• protocols/mqtt/wss: MQTT over Websocket Secure, default port 443
Configuration
URI
• Curently support mqtt, mqtts, ws, wss schemes
• MQTT over TCP samples:
– mqtt://mqtt.eclipseprojects.io: MQTT over TCP, default port 1883:
– mqtt://mqtt.eclipseprojects.io:1884 MQTT over TCP, port 1884:
– mqtt://username:password@mqtt.eclipseprojects.io:1884 MQTT over TCP,
port 1884, with username and password
• MQTT over SSL samples:
– mqtts://mqtt.eclipseprojects.io: MQTT over SSL, port 8883
– mqtts://mqtt.eclipseprojects.io:8884: MQTT over SSL, port 8884
• MQTT over Websocket samples:
– ws://mqtt.eclipseprojects.io:80/mqtt
• MQTT over Websocket Secure samples:
– wss://mqtt.eclipseprojects.io:443/mqtt
• Minimal configurations:
Espressif Systems
508
Submit Document Feedback
Release v4.4
Need help?
Do you have a question about the ESP32-S2 and is the answer not in the manual?