From 33f88344c30a650f42caa81c3840645e34886780 Mon Sep 17 00:00:00 2001 From: Jonathan Naylor Date: Fri, 24 Apr 2020 12:15:58 +0100 Subject: [PATCH] Run the holdoff timer permamnently. --- FM.cpp | 10 ++++------ 1 file changed, 4 insertions(+), 6 deletions(-) diff --git a/FM.cpp b/FM.cpp index 019e27e..de6338c 100644 --- a/FM.cpp +++ b/FM.cpp @@ -114,14 +114,15 @@ uint8_t CFM::setCallsign(const char* callsign, uint8_t speed, uint16_t frequency m_callsignAtStart = callsignAtStart; m_callsignAtEnd = callsignAtEnd; - uint16_t holdoffTime = 0U; + uint16_t holdoffTime = holdoff * 60U; uint16_t callsignTime = time * 60U; - if (holdoff > 0U) - holdoffTime = callsignTime / holdoff; m_holdoffTimer.setTimeout(holdoffTime, 0U); m_callsignTimer.setTimeout(callsignTime, 0U); + if (holdoffTime > 0U) + m_holdoffTimer.start(); + return m_callsign.setParams(callsign, speed, frequency, highLevel, lowLevel); } @@ -190,7 +191,6 @@ void CFM::stateMachine(bool validSignal, uint8_t length) m_modemState = STATE_IDLE; m_callsignTimer.stop(); m_timeoutTimer.stop(); - m_holdoffTimer.stop(); m_kerchunkTimer.stop(); m_ackMinTimer.stop(); m_ackDelayTimer.stop(); @@ -237,7 +237,6 @@ void CFM::kerchunkState(bool validSignal) m_timeoutTimer.stop(); m_ackMinTimer.stop(); m_callsignTimer.stop(); - m_holdoffTimer.stop(); } } @@ -316,7 +315,6 @@ void CFM::hangState(bool validSignal) sendCallsign(); m_callsignTimer.stop(); - m_holdoffTimer.stop(); } }