From 96ba94843b25f787148e3353a7476ed175518b3b Mon Sep 17 00:00:00 2001 From: Jorropo Date: Mon, 17 Mar 2025 01:36:02 +0100 Subject: [PATCH] Send UDP packets to multicast address rather than broadcast address (#6331) A smart router or switch is able to snoop the multicast address to only send the packets to nodes listening on the multicast address. Before all machines reachable on the L2 layer would receive the packet. --- src/mesh/udp/UdpMulticastThread.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/mesh/udp/UdpMulticastThread.h b/src/mesh/udp/UdpMulticastThread.h index 69b1d2282..675d4ce15 100644 --- a/src/mesh/udp/UdpMulticastThread.h +++ b/src/mesh/udp/UdpMulticastThread.h @@ -56,7 +56,7 @@ class UdpMulticastThread : public concurrency::OSThread LOG_DEBUG("Broadcasting packet over UDP (id=%u)", mp->id); uint8_t buffer[meshtastic_MeshPacket_size]; size_t encodedLength = pb_encode_to_bytes(buffer, sizeof(buffer), &meshtastic_MeshPacket_msg, mp); - udp.broadcastTo(buffer, encodedLength, UDP_MULTICAST_DEFAUL_PORT); + udp.writeTo(buffer, encodedLength, udpIpAddress, UDP_MULTICAST_DEFAUL_PORT); return true; }