From 2ddb8aa18cbf4ae17b9612269ecdf7f82d6b6a6a Mon Sep 17 00:00:00 2001 From: Thomas Kolb Date: Fri, 9 Aug 2024 21:45:10 +0200 Subject: [PATCH] Randomize retransmit time --- impl/src/main.c | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/impl/src/main.c b/impl/src/main.c index a2d31cd..088a530 100644 --- a/impl/src/main.c +++ b/impl/src/main.c @@ -179,6 +179,8 @@ int main(int argc, char **argv) bool on_air = true; + srand((int)(get_hires_time() * 1e6)); + // ** Initialize ** char devname[IFNAMSIZ] = "hamnet70"; @@ -296,8 +298,6 @@ int main(int argc, char **argv) // ensure that the buffer is full before TX is turned on to avoid transmitting empty buffers RESULT_CHECK(transmit(&sdr, whole_burst, burst_len)); - retransmit_time = get_hires_time() + 4.0; - if(!on_air) { LOG(LVL_INFO, "RX -> TX"); RESULT_CHECK(sdr_stop_rx(&sdr)); @@ -318,6 +318,8 @@ int main(int argc, char **argv) RESULT_CHECK(sdr_start_rx(&sdr)); on_air = false; + retransmit_time = get_hires_time() + 1.0 + 1.0 * rand() / RAND_MAX; + block_tx_for(TX_SWITCH_BACKOFF_AFTER_RX_ON); } }