More work on sending data to the modem.

pull/1/head
Jonathan Naylor 8 years ago
parent a50a84688f
commit 7307fe1d5c

@ -133,9 +133,15 @@ void* CIcomController::Entry()
} }
break; break;
case RTI_STATUS:
// wxLogMessage(wxT("RTI_STATUS"));
if (m_buffer[2U] == 0x01U)
m_txSpace = true;
break;
case RTI_HEADER_ACK: case RTI_HEADER_ACK:
// wxLogMessage(wxT("RTI_HEADER_ACK")); // wxLogMessage(wxT("RTI_HEADER_ACK"));
m_txSpace = true; // m_txSpace = true;
break; break;
case RTI_DATA_ACK: case RTI_DATA_ACK:
@ -155,7 +161,7 @@ void* CIcomController::Entry()
unsigned int len = m_buffer[0U]; unsigned int len = m_buffer[0U];
m_txData.getData(m_buffer + 1U, len); m_txData.getData(m_buffer + 1U, len);
// CUtils::dump(wxT("Sending"), m_buffer, len + 1U); CUtils::dump(wxT("Sending"), m_buffer, len + 1U);
int ret = m_serial.write(m_buffer, len + 1U); int ret = m_serial.write(m_buffer, len + 1U);
if (ret != int(len + 1U)) if (ret != int(len + 1U))
@ -339,11 +345,11 @@ RESP_TYPE_ICOM CIcomController::getResponse(unsigned char *buffer, unsigned int&
Sleep(5UL); Sleep(5UL);
} }
// CUtils::dump(wxT("Received"), buffer, length + 1U); CUtils::dump(wxT("Received"), buffer, length + 1U);
switch (buffer[1U]) { switch (buffer[1U]) {
case 0x03U: case 0x03U:
return RTI_TIMEOUT; return RTI_STATUS;
case 0x10U: case 0x10U:
return RTI_HEADER; return RTI_HEADER;
case 0x12U: case 0x12U:

@ -34,7 +34,8 @@ enum RESP_TYPE_ICOM {
RTI_DATA, RTI_DATA,
RTI_EOT, RTI_EOT,
RTI_HEADER_ACK, RTI_HEADER_ACK,
RTI_DATA_ACK RTI_DATA_ACK,
RTI_STATUS
}; };
class CIcomController : public CModem { class CIcomController : public CModem {

@ -335,7 +335,7 @@ void CDStarRepeaterApp::createThread()
m_config->getModem(modemType); m_config->getModem(modemType);
// DVAP can only do simplex, force the mode accordingly // DVAP can only do simplex, force the mode accordingly
if (modemType.IsSameAs("DVAP") || modemType.IsSameAs(wxT("Icom Access Point / Terminal Mode"))) { if (modemType.IsSameAs("DVAP") || modemType.IsSameAs(wxT("Icom Access Point/Terminal Mode"))) {
if (mode == MODE_DUPLEX) { if (mode == MODE_DUPLEX) {
wxLogInfo("Changing mode from DUPLEX to SIMPLEX"); wxLogInfo("Changing mode from DUPLEX to SIMPLEX");
mode = MODE_SIMPLEX; mode = MODE_SIMPLEX;

Loading…
Cancel
Save

Powered by TurnKey Linux.