mirror of
				https://github.com/0xFEEDC0DE64/arduino-esp32.git
				synced 2025-10-31 06:01:39 +01:00 
			
		
		
		
	
		
			
				
	
	
		
			77 lines
		
	
	
		
			1.8 KiB
		
	
	
	
		
			C++
		
	
	
	
	
	
			
		
		
	
	
			77 lines
		
	
	
		
			1.8 KiB
		
	
	
	
		
			C++
		
	
	
	
	
	
| /*
 | |
|  *  This sketch sends random data over UDP on a ESP32 device
 | |
|  *
 | |
|  */
 | |
| #include <WiFi.h>
 | |
| #include <WiFiUdp.h>
 | |
| 
 | |
| // WiFi network name and password:
 | |
| const char * networkName = "your-ssid";
 | |
| const char * networkPswd = "your-password";
 | |
| 
 | |
| //IP address to send UDP data to:
 | |
| // either use the ip address of the server or 
 | |
| // a network broadcast address
 | |
| const char * udpAddress = "192.168.0.255";
 | |
| const int udpPort = 3333;
 | |
| 
 | |
| //Are we currently connected?
 | |
| boolean connected = false;
 | |
| 
 | |
| //The udp library class
 | |
| WiFiUDP udp;
 | |
| 
 | |
| void setup(){
 | |
|   // Initilize hardware serial:
 | |
|   Serial.begin(115200);
 | |
|   
 | |
|   //Connect to the WiFi network
 | |
|   connectToWiFi(networkName, networkPswd);
 | |
| }
 | |
| 
 | |
| void loop(){
 | |
|   //only send data when connected
 | |
|   if(connected){
 | |
|     //Send a packet
 | |
|     udp.beginPacket(udpAddress,udpPort);
 | |
|     udp.printf("Seconds since boot: %lu", millis()/1000);
 | |
|     udp.endPacket();
 | |
|   }
 | |
|   //Wait for 1 second
 | |
|   delay(1000);
 | |
| }
 | |
| 
 | |
| void connectToWiFi(const char * ssid, const char * pwd){
 | |
|   Serial.println("Connecting to WiFi network: " + String(ssid));
 | |
| 
 | |
|   // delete old config
 | |
|   WiFi.disconnect(true);
 | |
|   //register event handler
 | |
|   WiFi.onEvent(WiFiEvent);
 | |
|   
 | |
|   //Initiate connection
 | |
|   WiFi.begin(ssid, pwd);
 | |
| 
 | |
|   Serial.println("Waiting for WIFI connection...");
 | |
| }
 | |
| 
 | |
| //wifi event handler
 | |
| void WiFiEvent(WiFiEvent_t event){
 | |
|     switch(event) {
 | |
|       case SYSTEM_EVENT_STA_GOT_IP:
 | |
|           //When connected set 
 | |
|           Serial.print("WiFi connected! IP address: ");
 | |
|           Serial.println(WiFi.localIP());  
 | |
|           //initializes the UDP state
 | |
|           //This initializes the transfer buffer
 | |
|           udp.begin(WiFi.localIP(),udpPort);
 | |
|           connected = true;
 | |
|           break;
 | |
|       case SYSTEM_EVENT_STA_DISCONNECTED:
 | |
|           Serial.println("WiFi lost connection");
 | |
|           connected = false;
 | |
|           break;
 | |
|       default: break;
 | |
|     }
 | |
| }
 |