From 588d3ecbaad82c3b600761e915dca48260ef422f Mon Sep 17 00:00:00 2001 From: DJ2LS <75909252+DJ2LS@users.noreply.github.com> Date: Wed, 11 Aug 2021 22:05:28 +0200 Subject: [PATCH] delay between TX and RX necessary so we are not sending until other station is in RX mode --- tnc/data_handler.py | 13 +++++++++++-- tnc/static.py | 2 ++ 2 files changed, 13 insertions(+), 2 deletions(-) diff --git a/tnc/data_handler.py b/tnc/data_handler.py index 3410ad84..e312bc09 100644 --- a/tnc/data_handler.py +++ b/tnc/data_handler.py @@ -598,7 +598,11 @@ def arq_received_data_channel_opener(data_in): connection_frame[3:9] = static.MYCALLSIGN connection_frame[12:13] = bytes([static.ARQ_DATA_CHANNEL_MODE]) - + # wait before sending so we can sure, other station is ready for TX + wait_until_transmit = time.time() + static.TIME_BETWEEN_RX_TX + while time.time() < wait_until_transmit: + pass + modem.transmit_signalling(connection_frame) #modem.transmit_signalling(connection_frame) while static.CHANNEL_STATE == 'SENDING_SIGNALLING': @@ -668,7 +672,12 @@ def received_ping(data_in): ping_frame[1:2] = static.DXCALLSIGN_CRC8 ping_frame[2:3] = static.MYCALLSIGN_CRC8 ping_frame[3:9] = static.MYGRID - + + # wait before sending so we can sure, other station is ready for TX + wait_until_transmit = time.time() + static.TIME_BETWEEN_RX_TX + while time.time() < wait_until_transmit: + pass + # wait while sending.... modem.transmit_signalling(ping_frame) #modem.transmit_signalling(ping_frame) diff --git a/tnc/static.py b/tnc/static.py index f7b13a14..01e92637 100644 --- a/tnc/static.py +++ b/tnc/static.py @@ -67,6 +67,8 @@ HAMLIB_SERIAL_SPEED = '9600' HAMLIB_FREQUENCY = 0 HAMLIB_MODE = '' HAMLIB_BANDWITH = 0 + +TIME_BETWEEN_RX_TX = 1 # time between TX and RX in seconds # ------------------------- # FreeDV Defaults FREEDV_RECEIVE = True