Set the COS LED on incoming RF transmissions.

This commit is contained in:
Jonathan Naylor 2020-05-19 13:45:17 +01:00
parent 625749a546
commit e7a22482db
2 changed files with 22 additions and 1 deletions

21
FM.cpp
View File

@ -363,6 +363,9 @@ void CFM::listeningState(bool validRFSignal, bool validExtSignal)
m_callsignTimer.start(); m_callsignTimer.start();
io.setDecode(true);
io.setADCDetection(true);
m_statusTimer.start(); m_statusTimer.start();
serial.writeFMStatus(m_state); serial.writeFMStatus(m_state);
} else if (validExtSignal) { } else if (validExtSignal) {
@ -403,6 +406,9 @@ void CFM::kerchunkRFState(bool validSignal)
} }
} }
} else { } else {
io.setDecode(false);
io.setADCDetection(false);
DEBUG1("State to LISTENING"); DEBUG1("State to LISTENING");
m_state = FS_LISTENING; m_state = FS_LISTENING;
m_kerchunkTimer.stop(); m_kerchunkTimer.stop();
@ -430,6 +436,9 @@ void CFM::relayingRFState(bool validSignal)
serial.writeFMEOT(); serial.writeFMEOT();
} }
} else { } else {
io.setDecode(false);
io.setADCDetection(false);
DEBUG1("State to RELAYING_WAIT_RF"); DEBUG1("State to RELAYING_WAIT_RF");
m_state = FS_RELAYING_WAIT_RF; m_state = FS_RELAYING_WAIT_RF;
m_ackDelayTimer.start(); m_ackDelayTimer.start();
@ -447,6 +456,9 @@ void CFM::relayingRFState(bool validSignal)
void CFM::relayingRFWaitState(bool validSignal) void CFM::relayingRFWaitState(bool validSignal)
{ {
if (validSignal) { if (validSignal) {
io.setDecode(true);
io.setADCDetection(true);
DEBUG1("State to RELAYING_RF"); DEBUG1("State to RELAYING_RF");
m_state = FS_RELAYING_RF; m_state = FS_RELAYING_RF;
m_ackDelayTimer.stop(); m_ackDelayTimer.stop();
@ -562,6 +574,9 @@ void CFM::relayingExtWaitState(bool validSignal)
void CFM::hangState(bool validRFSignal, bool validExtSignal) void CFM::hangState(bool validRFSignal, bool validExtSignal)
{ {
if (validRFSignal) { if (validRFSignal) {
io.setDecode(true);
io.setADCDetection(true);
DEBUG1("State to RELAYING_RF"); DEBUG1("State to RELAYING_RF");
m_state = FS_RELAYING_RF; m_state = FS_RELAYING_RF;
DEBUG1("Stop ack"); DEBUG1("Stop ack");
@ -599,6 +614,9 @@ void CFM::hangState(bool validRFSignal, bool validExtSignal)
void CFM::timeoutRFState(bool validSignal) void CFM::timeoutRFState(bool validSignal)
{ {
if (!validSignal) { if (!validSignal) {
io.setDecode(false);
io.setADCDetection(false);
DEBUG1("State to TIMEOUT_WAIT_RF"); DEBUG1("State to TIMEOUT_WAIT_RF");
m_state = FS_TIMEOUT_WAIT_RF; m_state = FS_TIMEOUT_WAIT_RF;
@ -617,6 +635,9 @@ void CFM::timeoutRFState(bool validSignal)
void CFM::timeoutRFWaitState(bool validSignal) void CFM::timeoutRFWaitState(bool validSignal)
{ {
if (validSignal) { if (validSignal) {
io.setDecode(true);
io.setADCDetection(true);
DEBUG1("State to TIMEOUT_RF"); DEBUG1("State to TIMEOUT_RF");
m_state = FS_TIMEOUT_RF; m_state = FS_TIMEOUT_RF;
m_ackDelayTimer.stop(); m_ackDelayTimer.stop();

View File

@ -107,7 +107,7 @@ const uint8_t MMDVM_DEBUG5 = 0xF5U;
#define HW_TYPE "MMDVM" #define HW_TYPE "MMDVM"
#endif #endif
#define DESCRIPTION "20200512 (D-Star/DMR/System Fusion/P25/NXDN/POCSAG/FM)" #define DESCRIPTION "20200519 (D-Star/DMR/System Fusion/P25/NXDN/POCSAG/FM)"
#if defined(GITVERSION) #if defined(GITVERSION)
#define concat(h, a, b, c) h " " a " " b " GitID #" c "" #define concat(h, a, b, c) h " " a " " b " GitID #" c ""