ESP-NOW: Ocho Puntos que Debes Conocer
¿Qué es ESP-NOW?
Principio de funcionamiento de ESP-NOW
-
Inicialización: inicialice la biblioteca esp-now y configure la función del dispositivo (remitente o receptor).
-
Emparejamiento: antes de la comunicación, el remitente y el receptor deben realizar una operación de emparejamiento. Durante el proceso de emparejamiento, el remitente envía su dirección MAC al receptor para establecer una relación de confianza. 3.
-
Enviar datos: el remitente envía un paquete al receptor utilizando la API proporcionada por la biblioteca esp-now. El paquete puede ser cualquier tipo de datos, como información de configuración de red, archivo de actualización de firmware o información de depuración.
-
Recibir datos: el receptor escucha el canal Wi-Fi y recibe paquetes del remitente. Una vez recibido el paquete, el receptor activará la función de devolución de llamada () para procesarlo. 5.
-
Procesamiento de datos: el receptor procesa el paquete recibido a través de la función de devolución de llamada. Dependiendo del tipo de paquete, el receptor puede realizar las operaciones correspondientes, como actualizar la configuración de la red, realizar una actualización del firmware o realizar una depuración.
Características de ESP-NOW
-
Baja latencia: esp-now utiliza Wi-Fi para comunicarse directamente sin pasar por un enrutador u otros dispositivos intermedios, lo que reduce la latencia de transmisión.
-
Alta confiabilidad: esp-now utiliza el mecanismo confiable ARQ() (Solicitud de retransmisión automática) para garantizar una transmisión de datos confiable.
-
Bajo consumo de energía: esp-now utiliza un diseño de bajo consumo de energía para dispositivos integrados para reducir el consumo de energía y al mismo tiempo mantener la calidad de la comunicación.
-
Flexibilidad: esp-now admite la conexión y el control de dispositivos uno a muchos y muchos a muchos, lo que puede satisfacer las necesidades de diferentes escenarios de aplicaciones.
-
Facilidad de uso: la API fácil de usar de esp-now permite a los desarrolladores integrar e implementar rápidamente el protocolo.
-
Transferencia de datos uno a uno (cifrados y no cifrados).
-
Soporte para dispositivos pares cifrados y no cifrados. Para dispositivos cifrados, hay hasta 10 pares en modo Estación de trabajo y hasta 6 pares en SoftAP o una combinación de ambos modos. Sin embargo, para dispositivos no cifrados, se permite un máximo de 19 dispositivos sin restricción en su modo de operación.
-
En paquetes pequeños se puede transmitir un máximo de 250 bytes de datos.
-
Genera una función de devolución de llamada que informa a la capa de aplicación si la transferencia de datos fue exitosa.
¿Qué factores afectan a ESP-NOW?
-
Interferencia de RF: ESP-NOW opera en la banda de 2,4 GHz, que se comparte con otras tecnologías inalámbricas como Bluetooth y WiFi. Esto significa que puede haber interferencias de otros dispositivos que operan en la misma banda.
-
Entorno operativo: El alcance del ESP-NOW puede verse afectado por barreras físicas como paredes, techos y pisos, así como por factores ambientales como temperatura, humedad y presión atmosférica.
-
Diseño de antena: El alcance de ESP-NOW puede verse afectado por el tipo y diseño de la antena utilizada. Por ejemplo, el uso de una antena direccional puede aumentar el alcance del ESP-NOW, mientras que el uso de una antena omnidireccional puede disminuir el alcance.
¿Es seguro ESP-NOW?
-
Cifrado de datos: cifrar datos es una de las formas más útiles de proteger las comunicaciones ESP-NOW. Puede cifrar los datos utilizando diferentes algoritmos de cifrado, como AES o RSA. Cifrar los datos evitará que alguien intercepte y lea los datos transmitidos.
-
Uso de claves de seguridad: ESP-NOW admite el uso de claves de seguridad para autenticar y establecer conexiones entre dispositivos. Al utilizar claves de seguridad, puede asegurarse de que solo los dispositivos autorizados puedan comunicarse entre sí.
-
Utilice protocolos de comunicación seguros: si la seguridad de su aplicación requiere medidas de seguridad más avanzadas, es posible que desee considerar el uso de un protocolo de comunicación diferente, como WiFi, que tiene soporte integrado para cifrado y autenticación.
-
Utilice una capa de seguridad independiente: en algunos casos, puede resultar útil utilizar una capa de seguridad independiente además de ESP-NOW para proporcionar seguridad adicional. Por ejemplo, puede utilizar un protocolo de túnel seguro, como HTTPS, para proteger los datos transmitidos a través de ESP-NOW. ¿Qué tipos de comunicación están disponibles con ESP-NOW?
Comunicación Unidireccional ESP-NOW de ESP32
-
Una placa ESP32 enviando datos a otra placa ESP32
-
Una placa transmisora ESP32 que envía datos a otras placas receptoras ESP32
-
Una placa ESP32 recibe datos de varias otras placas transmisoras ESP32
¿En qué áreas se puede utilizar ESP-NOW?
-
Configuración de red: esp-now se puede utilizar para transferir rápidamente información de configuración de red para que los dispositivos puedan conectarse fácilmente a una red Wi-Fi específica.
-
Actualización de firmware: a través de esp-now, los dispositivos pueden recibir archivos de actualización de firmware y realizar la operación de actualización en consecuencia - Depuración y control remoto: esp-now se puede utilizar para depurar y controlar remotamente el dispositivo, lo cual es conveniente para que los desarrolladores lleven a cabo la solución de problemas y pruebas de funcionamiento.
-
Transmisión de datos del sensor: esp-now se puede utilizar para transmitir datos del sensor, como temperatura, humedad, etc., para realizar monitoreo y recopilación de datos en tiempo real.
-
Control del hogar inteligente: esp-now se puede utilizar para la comunicación y el control entre dispositivos domésticos inteligentes, como bombillas inteligentes, enchufes inteligentes, etc.
-
Automatización industrial: esp-now tiene potencial en el campo de la automatización industrial para la transmisión y control de datos en tiempo real entre dispositivos.
También puede que desee preguntar
¿Cuál es la tasa de bits uno a uno para ESP32 en modo ESP-NOW?
-
Placa de prueba: ESP32-DevKitC V4.
-
Modo Wi-Fi: estación.
-
La tasa PHY es de 1 Mbps por defecto.
-
Alrededor de 214 Kbps en un entorno abierto.
-
Alrededor de 555 Kbps en la caja de blindaje.
-
Si necesita una tarifa más alta, es posible configurar la tarifa a través de esp_wifi_config_espnow_rate.
¿Se puede utilizar Wi-Fi con ESP-NOW al mismo tiempo?
¿Cómo configuro la velocidad a la que se envían los datos ESP-NOW?
esp_wifi_config_espnow_rate(WIFI_IF_STA, WIFI_ PHY_RATE_MCS0_LGI)
.ESP-NOW permite el emparejamiento con un máximo de 20 dispositivos. ¿Hay alguna forma de controlar más dispositivos?