Update: 2024-03-10
Achtung!
Es wird nur gesendet.

Esp32 Udp senden als Arduino Tab.

SendUdp.ino

// ****************************************************************
// Arduino IDE Tab Esp32 Udp senden Modular
// created: Jens Fleischer, 2018-08-10
// last mod: Jens Fleischer, 2024-03-10
// ****************************************************************
// Hardware: ESP32
// Software: Esp32 Arduino Core 1.0.0 - 2.0.14
// Getestet auf: ESP32 NodeMCU-32s
/******************************************************************
  Copyright (c) 2018 Jens Fleischer. All rights reserved.

  This file is free software; you can redistribute it and/or
  modify it under the terms of the GNU Lesser General Public
  License as published by the Free Software Foundation; either
  version 2.1 of the License, or (at your option) any later version.
  This file is distributed in the hope that it will be useful,
  but WITHOUT ANY WARRANTY; without even the implied warranty of
  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
  Lesser General Public License for more details.
*******************************************************************/
// Diese Version von Udp senden sollte als Tab eingebunden werden.
// #include <WebServer.h> oder #include <WiFi.h> muss im Haupttab aufgerufen werden
// Die Übergabe der Nachricht an "sendUdp(string oder String-Object);" erfolgt als char oder String.
/**************************************************************************************/

void sendUdp(const String &message) {
  WiFiUDP Udp;
  const char* addr = "192.168.178.45";      // Adresse und Port vom Empfänger einstellen
  const uint16_t port = 4211;
  DEBUG_P("UDP Nachricht: " + message);
  Udp.beginPacket(addr, port);
  Udp.printf("%s", message.c_str());
  Udp.endPacket();
}

Der Aufruf der Funktion Udp senden ist nach ausführen von "Connect();" möglich.
Du kannst "sendUdp();" überall in deinem Sketch einbinden.

Beispiel:

****************** Udp senden **********************

sendUdp(localTime());                   // Datum und Uhrzeit
sendUdp(String(millis() / 1000));       // Laufzeit in Sekunden

Beispiel:

***************** Udp im Setup *********************

void setup() {
 Connect();
 .........
 sendUdp("Start Esp32 mit der IP: " + WiFi.localIP().toString());
 ......
}
Beispiel:

************ Udp sendet Lebenszeichen **************

void loop() {
 ......
 .........
  const unsigned long interval = 1000UL * 5;               // Interval in Sekunden einstellen
  static unsigned long letzteMillis = 0;
  unsigned long aktuelleMillis = millis();
  if (aktuelleMillis - letzteMillis >= interval) {
    const char* vivit = "Ich bin noch da!";
    sendUdp(vivit);
    letzteMillis = aktuelleMillis;
  }
 ......
}