diff --git a/tasmota/tasmota_support/support_device_groups.ino b/tasmota/tasmota_support/support_device_groups.ino index 699db3911..63b9eb965 100644 --- a/tasmota/tasmota_support/support_device_groups.ino +++ b/tasmota/tasmota_support/support_device_groups.ino @@ -208,6 +208,9 @@ void DeviceGroupsStart() void DeviceGroupsStop() { device_groups_udp.flush(); +#ifdef ESP32 + device_groups_udp.clear(); // New with core3. Does what flush() did in core2; +#endif device_groups_up = false; } diff --git a/tasmota/tasmota_xdrv_driver/xdrv_04_light_artnet.ino b/tasmota/tasmota_xdrv_driver/xdrv_04_light_artnet.ino index d0d3b61ff..342c662f8 100644 --- a/tasmota/tasmota_xdrv_driver/xdrv_04_light_artnet.ino +++ b/tasmota/tasmota_xdrv_driver/xdrv_04_light_artnet.ino @@ -245,7 +245,8 @@ void ArtNetLoop(void) uint8_t packet_buffer[WS2812_ARTNET_UDP_BUFFER_SIZE]; // buffer to hold incoming UDP/SSDP packet packet_len = ArtNetUdp->read(packet_buffer, WS2812_ARTNET_UDP_BUFFER_SIZE); - ArtNetUdp->flush(); // Finish reading the current packet +// ArtNetUdp->flush(); // Finish reading the current packet + ArtNetUdp->clear(); // New with core3. Does what flush() did in core2; #endif // AddLog(LOG_LEVEL_DEBUG_MORE, PSTR("UDP: Packet %*_H (%d)"), 32, packet_buffer, packet_len); if (artnet_conf.on) { diff --git a/tasmota/tasmota_xdrv_driver/xdrv_10_scripter.ino b/tasmota/tasmota_xdrv_driver/xdrv_10_scripter.ino index edc2a0d1a..b2316a0f3 100755 --- a/tasmota/tasmota_xdrv_driver/xdrv_10_scripter.ino +++ b/tasmota/tasmota_xdrv_driver/xdrv_10_scripter.ino @@ -1387,6 +1387,9 @@ int32_t udp_call(char *url, uint32_t port, char *sbuf) { udp.write((const uint8_t*)sbuf, strlen(sbuf)); udp.endPacket(); udp.flush(); +#ifdef ESP32 + udp.clear(); // New with core3. Does what flush() did in core2; +#endif udp.stop(); return 0; }