From 14cec533ac60c5e2e0188d3b67f1ee64a06d1a04 Mon Sep 17 00:00:00 2001 From: Winston Lowe Date: Mon, 16 Feb 2026 12:58:55 -0800 Subject: [PATCH] Adjust ranking calculation for direct repeaters by adding offset to SNR for improved accuracy --- lib/connector/meshcore_connector.dart | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/lib/connector/meshcore_connector.dart b/lib/connector/meshcore_connector.dart index b096005..a46305e 100644 --- a/lib/connector/meshcore_connector.dart +++ b/lib/connector/meshcore_connector.dart @@ -59,12 +59,13 @@ class DirectRepeater { return -1; // Stale repeaters get lowest rank } // Higher SNR gets higher rank and recency within maxAgeMinutes breaks ties. + final snrOffset = snr + 31.75; final ageMs = DateTime.now().millisecondsSinceEpoch - lastUpdated.millisecondsSinceEpoch; final maxAgeMs = maxAgeMinutes * 60 * 1000; final recencyScore = (maxAgeMs - ageMs).clamp(0, maxAgeMs); - return (snr * 1000).round() + recencyScore; + return (snrOffset * 1000).round() + recencyScore; } bool isStale() {