Протокол связи ESP-NOW. Применение для общения ESP32 или ESP8266.

Сегодня в статье узнаем, как использовать ESP-NOW для обмена данными между платами ESP32 (ESP8266), запрограммированными с помощью Arduino IDE. ESP-NOW - это протокол связи без установления соединения, разработанный Espressif, который поддерживает передачу коротких пакетов. Этот протокол позволяет нескольким устройствам легко общаться друг с другом.

Что такое ESP-NOW?

Что такое ESP-NOW?

Согласно веб-сайту Espressif, ESP-NOW - это «протокол, разработанный Espressif, который позволяет нескольким устройствам связываться друг с другом без использования Wi-Fi. Протокол аналогичен протоколу беспроводной связи с низким энергопотреблением 2,4 ГГц. Сопряжение между устройствами необходимо до их связи. После того, как соединение выполнено, соединение будет безопасным и одноранговым, без необходимости подтверждения связи».

Согласно веб-сайту Espressif, ESP-NOW - это «протокол, разработанный Espressif

Это означает, что после сопряжения устройств друг с другом соединение остается постоянным. Другими словами, если внезапно одна из ваших плат теряет питание или перезагружается, при перезапуске она автоматически подключится к своему узлу для продолжения связи.

ESP-NOW поддерживает следующие функции:

  • Зашифрованная и незашифрованная одноадресная передача;
  • Смешанные зашифрованные и незашифрованные одноранговые устройства;
  • Может передаваться полезная нагрузка до 250 байт;
  • Функция обратного вызова, которая может быть установлена для информирования прикладного уровня об успешной или неудачной передаче.

Технология ESP-NOW также имеет следующие ограничения:

  • Ограниченные зашифрованные одноранговые узлы. В режиме станции поддерживается не более 10 зашифрованных одноранговых узлов. И не более 6 в режиме SoftAP или SoftAP + Station;
  • Поддерживаются несколько незашифрованных одноранговых узлов, однако их общее количество должно быть меньше 20, включая зашифрованные одноранговые узлы;
  • Полезная нагрузка ограничена 250 байтами.

Проще говоря, ESP-NOW - это протокол быстрой связи, который можно использовать для обмена небольшими сообщениями (до 250 байт) между платами ESP32 и ESP8266.

ESP-NOW очень универсален, и вы можете иметь одностороннюю или двустороннюю связь с разными настройками.

ESP-NOW Односторонняя связь.

При одностороннем общении у вас могут быть такие сценарии:

  • Одна плата ESP32 отправляет данные на другую плату ESP32.

Одна плата ESP32 отправляет данные на другую плату ESP32

Эту конфигурацию очень легко реализовать, и она отлично подходит для

отправки данных с одной платы на другую, например, показаний датчиков

или команд включения и выключения для управления GPIO.

  • «Главный» ESP32 отправляет данные нескольким «подчиненным» ESP32.

«Главный» ESP32 отправляет данные нескольким «подчиненным» ESP32.

Одна плата ESP32 отправляет одинаковые или разные команды на разные

платы ESP32. Эта конфигурация идеально подходит для создания чего-то

вроде пульта дистанционного управления. В доме может быть несколько плат

ESP32, которые управляются одной основной платой ESP32.

  • Один «ведомый» ESP32, получающий данные от нескольких «мастеров»

Один «ведомый» ESP32, получающий данные от нескольких «мастеров»

Одна плата ESP32 отправляет одинаковые или разные команды на разные платы ESP32. Эта конфигурация идеально подходит для создания чего-то вроде пульта дистанционного управления. В доме может быть несколько плат ESP32, которые управляются одной основной платой ESP32.

Эта конфигурация идеальна, если вы хотите собрать данные с нескольких узлов датчиков на одну плату ESP32. Его можно настроить как веб-сервер, например, для отображения данных со всех других плат.

ESP-NOW Двусторонняя связь.

С ESP-NOW каждая плата может быть отправителем и получателем одновременно. Таким образом, вы можете установить двустороннюю связь между платами.

Например, у вас могут быть две платы, взаимодействующие друг с другом.

Например, у вас могут быть две платы, взаимодействующие друг с другом.

Вы можете добавить больше плат в эту конфигурацию и получить нечто похожее на сеть (все платы ESP32 взаимодействуют друг с другом).

Вы можете добавить больше плат в эту конфигурацию и получить нечто похожее на сеть

Таким образом, ESP-NOW идеально подходит для построения сети, в которой вы можете иметь несколько плат ESP32, обменивающихся данными друг с другом.

На этом с теорией все. Проверять работоспособность протокола ESP-NOW на практике будем в уроках ESP8266, ESP32.

Понравилась статья Протокол связи ESP-NOW. Применение для общения ESP32 или ESP8266? Не забудь поделиться с друзьями в соц. сетях.

А также подписаться на наш канал на YouTube, вступить в группу Вконтакте, в группу на Facebook.

Спасибо за внимание!

Технологии начинаются с простого!

Комментарии

Ваше Имя*


Разработка проектов