Skip to content

Commit 53bb3c6

Browse files
authored
Merge pull request #63 from MrAlders0n/copilot/debug-session-pings-issue
Fix repeater telemetry loss due to race condition in timeout handlers
2 parents 6f7be90 + 0e02cf1 commit 53bb3c6

1 file changed

Lines changed: 5 additions & 8 deletions

File tree

content/wardrive.js

Lines changed: 5 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1171,11 +1171,8 @@ function startRepeaterTracking(payload, channelIdx) {
11711171
debugLog(`Registered LogRxData event handler`);
11721172
}
11731173

1174-
// Set timeout to stop listening after 7 seconds
1175-
state.repeaterTracking.listenTimeout = setTimeout(() => {
1176-
debugLog(`7-second rx_log listening window closed at ${new Date().toISOString()}`);
1177-
stopRepeaterTracking();
1178-
}, RX_LOG_LISTEN_WINDOW_MS);
1174+
// Note: The 7-second timeout to stop listening is managed by the caller (sendPing function)
1175+
// This allows the caller to both stop tracking AND retrieve results at the same time
11791176
}
11801177

11811178
/**
@@ -1362,16 +1359,16 @@ function stopRepeaterTracking() {
13621359
/**
13631360
* Format repeater telemetry for output
13641361
* @param {Array<{repeaterId: string, snr: number}>} repeaters - Array of repeater telemetry
1365-
* @returns {string} Formatted repeater string (e.g., "25(-112),2521(-109)" or "none")
1362+
* @returns {string} Formatted repeater string (e.g., "4e(11.5),77(9.75)" or "none")
13661363
*/
13671364
function formatRepeaterTelemetry(repeaters) {
13681365
if (repeaters.length === 0) {
13691366
return "none";
13701367
}
13711368

13721369
// Format as: path(snr), path(snr), ...
1373-
// Round SNR to integers for cleaner output (matches meshcore-cli behavior)
1374-
return repeaters.map(r => `${r.repeaterId}(${Math.round(r.snr)})`).join(',');
1370+
// Display exact SNR values as received
1371+
return repeaters.map(r => `${r.repeaterId}(${r.snr})`).join(',');
13751372
}
13761373

13771374
// ---- Ping ----

0 commit comments

Comments
 (0)