INT 21h

Hi, I am Vladimir Smagin, SysAdmin, DevOps and barely good guy. Telegram Email / GIT / Микроблог / Thingiverse / GPG

ESP8266: Правильная отправка широковещательного пакета

№ 8380 В разделах: Программирование Электроника ESP8266 от August 11th, 2017,

Для создания умного дома необходимо сделать протокол по которому все устройства, датчики и реле будут общаться. Часть этого протокола – поиск головного устройства в локальной сети. Поскольку broadcast уже не вариант и шибко умные маршрутизаторы его не пропускают я использовал multicast. Вот тут можно в кратце почитать отличия, если кому интересно.

Пример кода:

#include <ESP8266WiFi.h>
#include <WiFiUdp.h>
...
int BroadcastPort = 9210;
WiFiUDP Udp;
...
void searchCoreModule() {
 Udp.begin(BroadcastPort);
 IPAddress broadcastIp;
 broadcastIp = ~WiFi.subnetMask() | WiFi.gatewayIP();
 Udp.beginPacketMulticast(broadcastIp, BroadcastPort, WiFi.localIP());
 Udp.write("test");
 Serial.print("BROADCAST TEST PACKET SENT");
 Udp.endPacket();
}

А вот теперь можно посмотреть на результат

Что было принято в терминале

Ну вот, как видим, все работает, пакеты летают, данные принимаются.

Нет комментариев »

Leave a Reply

Your email address will not be published. Required fields are marked *

*

Микроблог перейти

# 2019-09-12 07:54:26

git.apache.org все еще не работает, но можно фиксануть go mod с помощью replace git.apache.org/thrift.git => github.com/apache/thrift v0.0.0-20180902110319-2566ecd5

# 2019-09-10 13:58:22

офигенное хранилище абсолютно бесплатных svg www.svgrepo.com/

# 2019-09-09 16:29:21

Цикл статей тщательно разжевывающих Amazon IAM, очень рекомендую для прочтения medium.com/@thomas.storm/aws-i medium.com/@thomas.storm/aws-i medium.com/@thomas.storm/aws-i medium.com/@thomas.storm/aws-i


© Vladimir Smagin, 2005-2019. Копирование материалов без разрешения запрещено. GPG DA4CD0F5E222EA727D6A40C413BCE12E5618F071 *
Яндекс.Метрика

Fortune cookie: Q: Why do men marry women? A: You can't teach sheep to do housework.