From 22b4f3fb769c6482a0352c5c313aa5f11ccbe9a5 Mon Sep 17 00:00:00 2001 From: korbinianbauer <64415847+korbinianbauer@users.noreply.github.com> Date: Thu, 6 Nov 2025 14:12:25 +0100 Subject: [PATCH 1/2] Client_Base - Dont rebroadcast in early (Router) window Removed early rebroadcast check for CLIENT_BASE role. --- src/mesh/RadioInterface.cpp | 5 ----- 1 file changed, 5 deletions(-) diff --git a/src/mesh/RadioInterface.cpp b/src/mesh/RadioInterface.cpp index 3c0da44944..e8df7f4c83 100644 --- a/src/mesh/RadioInterface.cpp +++ b/src/mesh/RadioInterface.cpp @@ -296,11 +296,6 @@ bool RadioInterface::shouldRebroadcastEarlyLikeRouter(meshtastic_MeshPacket *p) return true; } - // If we are a CLIENT_BASE and the packet is from or to a favorited node, we should rebroadcast early - if (config.device.role == meshtastic_Config_DeviceConfig_Role_CLIENT_BASE) { - return nodeDB->isFromOrToFavoritedNode(*p); - } - return false; } From 259082c9c843c321a22826c1cfb846612bb8cf55 Mon Sep 17 00:00:00 2001 From: korbinianbauer <64415847+korbinianbauer@users.noreply.github.com> Date: Thu, 6 Nov 2025 14:14:06 +0100 Subject: [PATCH 2/2] Client_Base - Clamp rebroadcast to late (Router_Late) window on dupe --- src/mesh/FloodingRouter.cpp | 3 +++ 1 file changed, 3 insertions(+) diff --git a/src/mesh/FloodingRouter.cpp b/src/mesh/FloodingRouter.cpp index 032be241b7..a2a0875ed8 100644 --- a/src/mesh/FloodingRouter.cpp +++ b/src/mesh/FloodingRouter.cpp @@ -124,6 +124,9 @@ void FloodingRouter::perhapsCancelDupe(const meshtastic_MeshPacket *p) if (config.device.role == meshtastic_Config_DeviceConfig_Role_ROUTER_LATE && iface) { iface->clampToLateRebroadcastWindow(getFrom(p), p->id); } + if (config.device.role == meshtastic_Config_DeviceConfig_Role_CLIENT_BASE && iface) { + iface->clampToLateRebroadcastWindow(getFrom(p), p->id); + } } bool FloodingRouter::isRebroadcaster()