mirror of
				https://github.com/0xFEEDC0DE64/arduino-esp32.git
				synced 2025-10-26 03:31:43 +01:00 
			
		
		
		
	
		
			
	
	
		
			53 lines
		
	
	
		
			1.5 KiB
		
	
	
	
		
			Arduino
		
	
	
	
	
	
		
		
			
		
	
	
			53 lines
		
	
	
		
			1.5 KiB
		
	
	
	
		
			Arduino
		
	
	
	
	
	
|   | #include "WiFi.h"
 | ||
|  | #include "AsyncUDP.h"
 | ||
|  | 
 | ||
|  | const char * ssid = "***********"; | ||
|  | const char * password = "***********"; | ||
|  | 
 | ||
|  | AsyncUDP udp; | ||
|  | 
 | ||
|  | void setup() | ||
|  | { | ||
|  |     Serial.begin(115200); | ||
|  |     WiFi.mode(WIFI_STA); | ||
|  |     WiFi.begin(ssid, password); | ||
|  |     if (WiFi.waitForConnectResult() != WL_CONNECTED) { | ||
|  |         Serial.println("WiFi Failed"); | ||
|  |         while(1) { | ||
|  |             delay(1000); | ||
|  |         } | ||
|  |     } | ||
|  |     if(udp.listenMulticast(IPAddress(239,1,2,3), 1234)) { | ||
|  |         Serial.print("UDP Listening on IP: "); | ||
|  |         Serial.println(WiFi.localIP()); | ||
|  |         udp.onPacket([](AsyncUDPPacket packet) { | ||
|  |             Serial.print("UDP Packet Type: "); | ||
|  |             Serial.print(packet.isBroadcast()?"Broadcast":packet.isMulticast()?"Multicast":"Unicast"); | ||
|  |             Serial.print(", From: "); | ||
|  |             Serial.print(packet.remoteIP()); | ||
|  |             Serial.print(":"); | ||
|  |             Serial.print(packet.remotePort()); | ||
|  |             Serial.print(", To: "); | ||
|  |             Serial.print(packet.localIP()); | ||
|  |             Serial.print(":"); | ||
|  |             Serial.print(packet.localPort()); | ||
|  |             Serial.print(", Length: "); | ||
|  |             Serial.print(packet.length()); | ||
|  |             Serial.print(", Data: "); | ||
|  |             Serial.write(packet.data(), packet.length()); | ||
|  |             Serial.println(); | ||
|  |             //reply to the client
 | ||
|  |             packet.printf("Got %u bytes of data", packet.length()); | ||
|  |         }); | ||
|  |         //Send multicast
 | ||
|  |         udp.print("Hello!"); | ||
|  |     } | ||
|  | } | ||
|  | 
 | ||
|  | void loop() | ||
|  | { | ||
|  |     delay(1000); | ||
|  |     //Send multicast
 | ||
|  |     udp.print("Anyone here?"); | ||
|  | } |