16 de marzo de 2020

NodeMCU: 02_ ESPNOW (Comunicación punto a punto // funciones usadas )

Pretendo hacer lo siguiente:
  1.  Un módulo ESP8266 actuará como emisor y el otro como receptor
  2.  Mandaremos una estructura de datos, que puede contener variables de tipo char, int, float, String, boolean. Se podrá modificar para enviar otra estructura de datos.
  3. ESPNOW trabaja con funciones callback (de retorno) que serán llamadas cuando se produce un evento: se recibe o se envía un mensaje, o se produce un error en el envío.
  4. Respecto al emisor:
    1.  Se inicializa ESP-NOW
    2. Se creará una función callback (OnDataSent) que se ejecutará al enviar un mensaje, y así sabremos si el mensaje se ha enviado con éxito o no.
    3. Añadiremos un receptor a través de su dirección MAC.
    4. Enviaremos el mensaje a este receptor
  5. Respecto al receptor:
    1.  Se inicializa ESP-NOW
    2.  Se creará una función callback (OnDataRecv) que se ejecutará cuando se reciba un mensaje.
    3. Dentro de esa función, se almacenará una variable con el valor del mensaje, y se podrá realizar cualquier tarea con dicha información.
==============

Las funciones que usa el protocolo son:

  1. esp_now_init() --> Inicializa ESP-NOW. hay que inicializar Wi-Fi antes. Si tiene exito, retorna 0.
  2. esp_now_set_self_role(role) --> establece perfil; puede ser. ESP_NOW_ROLE_IDLE = 0,
    ESP_NOW_ROLE_CONTROLLER, ESP_NOW_ROLE_SLAVE, ESP_NOW_ROLE_COMBO, ESP_NOW_ROLE_MAX
  3. esp_now_add_peer (uint8 mac_addr, uint8 role, uint8 channel, uint8 key, uint8 key_len) --> llamar a esta función para emparejarse a otro nodeMCU
  4. esp_now_register_send_cb() --> registra una función callback que se dispara tras enviar datos, y devuelve si la entrega tuvo éxito o no.
  5. esp_now_register_rcv_cb() --> registra una función callback que se dispara tras recibir datos via ESP-NOW.

Más información en: 








No hay comentarios:

Publicar un comentario