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() {