馃搼 Gu铆a paso a paso 馃Ξ
1️⃣ Proyecto base: configuraci贸n inicial en Espressif IDF
Iniciamos creando un nuevo proyecto, seleccionamos
NEW PROJECT
Seleccionamos la versi贸n del Espressif
Nombramos a nuestro proyecto "TAGOIO_MQTT", elegimos el ESP32-S3 y seleccionamos
Choose Template
Elegimos una plantilla base:
template-app
2️⃣ Comunicaci贸n segura: conexi贸n MQTTs desde el ESP32-S3
Recursos que usaremos:
mqtt_conn.h
mqtt_conn.c
wifi_conn.h
wifi_conn.c
Kconfig.projbuild
menu "Marse Settings"
menu "WiFi Settings"
config WIFI_SSID
string "SSID de la red Wi-Fi"
default "MiRed"
help
Nombre de la red Wi-Fi (AP) a la que se conectar谩 el ESP32-S3 en modo estaci贸n.
Debe coincidir exactamente con el SSID del router o punto de acceso.
config WIFI_PASSWORD
string "Password de la red Wi-Fi"
default "12345678"
help
Contrase帽a de la red Wi-Fi. Si tu red no tiene clave, puedes dejarlo vac铆o.
El driver se configura por defecto para WPA2-PSK. Ajusta la seguridad en
tu c贸digo si usas otros modos avanzados.
config WIFI_MAX_RETRY
int "N煤mero m谩ximo de reintentos"
range 1 10
default 3
help
N煤mero m谩ximo de intentos de conexi贸n antes de rendirse.
Si se alcanza este n煤mero, el ESP32-S3 dejar谩 de intentar conectarse
hasta que se reinicie o se llame a la funci贸n de conexi贸n nuevamente.
config WIFI_POWER_SAVE
int "Wi-Fi Power Save mode"
range 0 2
default 0
help
0 = WIFI_PS_NONE
1 = WIFI_PS_MIN_MODEM
2 = WIFI_PS_MAX_MODEM
endmenu
menu "MQTT Settings"
config MQTT_URI
string "Broker URI"
default "mqtts://mqtt.tago.io:8883"
help
URI del broker MQTT. Esquemas soportados: mqtt, mqtts, ws, wss.
Ejemplos:
- mqtts://mqtt.tu-broker.io:8883
- wss://tu-dominio:443/mqtt
config MQTT_USERNAME
string "Username"
default ""
help
Nombre de usuario para autenticaci贸n MQTT (p.ej., "Token" en TagoIO).
config MQTT_PASSWORD
string "Password"
default ""
help
Contrase帽a/Token del dispositivo. Considera usar NVS/Flash Encryption en producci贸n.
config MQTT_CLIENT_ID
string "Client ID (opcional)"
default ""
help
Identificador del cliente. Si se deja vac铆o, el firmware genera uno con la MAC.
config MQTT_TOPIC_PUB
string "Publish topic"
default "esp32s3/data"
help
T贸pico al que publicar谩 el dispositivo.
config MQTT_TOPIC_SUB
string "Subscribe topic"
default "esp32s3/cmd"
help
T贸pico al que el dispositivo se suscribir谩 para recibir comandos.
config MQTT_KEEPALIVE
int "Keepalive (seconds)"
range 10 65535
default 120
help
Intervalo de keepalive MQTT en segundos.
config MQTT_RECONNECT_MS
int "Reconnect timeout (ms)"
range 1000 600000
default 10000
help
Tiempo de espera antes de reintentar la conexi贸n.
config MQTT_CLEAN_SESSION
bool "Clean session"
default y
help
Si est谩 activado: clean session = true
(en esp-mqtt v5 se mapea a disable_clean_session = false).
endmenu
endmenu





0 Comentarios