Change the displays to show the DG-ID instead of the TO field for YSF.

This commit is contained in:
Jonathan Naylor 2020-08-09 19:23:18 +01:00
parent f070410f7e
commit c7fbeecc50
10 changed files with 45 additions and 45 deletions

View File

@ -103,7 +103,7 @@ void CCASTInfo::clearDMRInt(unsigned int slotNo)
void CCASTInfo::writeFusionInt(const char* source, const char* dest, unsigned char dgid, const char* type, const char* origin)
{
if (m_modem != NULL)
m_modem->writeYSFInfo(source, dest, type, origin);
m_modem->writeYSFInfo(source, dest, dgid, type, origin);
}
void CCASTInfo::clearFusionInt()

View File

@ -772,7 +772,7 @@ void CHD44780::writeFusionInt(const char* source, const char* dest, unsigned cha
::lcdPosition(m_fd, 0, 1);
::lcdPrintf(m_fd, "%.*s", m_cols, m_buffer1);
::sprintf(m_buffer1, "%.10s", dest);
::sprintf(m_buffer1, "DG-ID %u", dgid);
::lcdPosition(m_fd, 0, 2);
::lcdPrintf(m_fd, "%.*s", m_cols, m_buffer1);
} else if (m_rows == 4U && m_cols == 20U) {
@ -781,31 +781,31 @@ void CHD44780::writeFusionInt(const char* source, const char* dest, unsigned cha
::lcdPosition(m_fd, 0, 1);
::lcdPrintf(m_fd, "%.*s", m_cols, m_buffer1);
::sprintf(m_buffer1, "%.10s", dest);
::sprintf(m_buffer1, "DG-ID %u", dgid);
::lcdPosition(m_fd, 0, 2);
::lcdPrintf(m_fd, "%.*s", m_cols, m_buffer1);
} else if (m_rows == 2 && m_cols == 40U) {
char m_buffer1[40U];
::sprintf(m_buffer1, "%.10s > %.10s", source, dest);
::sprintf(m_buffer1, "%.10s > DG-ID %u", source, dgid);
::lcdPosition(m_fd, 0, 1);
::lcdPrintf(m_fd, "%.*s", m_cols, m_buffer1);
}
m_dmr = false;
m_rssiCount1 = 0U;
m_rssiCount1 = 0U;
}
void CHD44780::writeFusionRSSIInt(unsigned char rssi)
{
if (m_rssiCount1 == 0U && m_rows > 2) {
if (m_rssiCount1 == 0U && m_rows > 2) {
::lcdPosition(m_fd, 0, 3);
::lcdPrintf(m_fd, "-%3udBm", rssi);
}
}
m_rssiCount1++;
if (m_rssiCount1 >= YSF_RSSI_COUNT)
m_rssiCount1 = 0U;
m_rssiCount1++;
if (m_rssiCount1 >= YSF_RSSI_COUNT)
m_rssiCount1 = 0U;
}
void CHD44780::clearFusionInt()
@ -813,7 +813,6 @@ void CHD44780::clearFusionInt()
#ifdef ADAFRUIT_DISPLAY
adafruitLCDColour(AC_PURPLE);
#endif
m_clockDisplayTimer.stop(); // Stop the clock display
if (m_rows == 2U && m_cols == 16U) {

View File

@ -426,10 +426,10 @@ void CLCDproc::writeFusionInt(const char* source, const char* dest, unsigned cha
socketPrintf(m_socketfd, "widget_set YSF Mode 1 1 \"System Fusion\"");
if (m_rows == 2U) {
socketPrintf(m_socketfd, "widget_set YSF Line2 1 2 15 2 h 3 \"%.10s > %s%u\"", source, dest);
socketPrintf(m_socketfd, "widget_set YSF Line2 1 2 15 2 h 3 \"%.10s > DG-ID %u\"", source, dgid);
} else {
socketPrintf(m_socketfd, "widget_set YSF Line2 1 2 15 2 h 3 \"%.10s >\"", source);
socketPrintf(m_socketfd, "widget_set YSF Line3 1 3 15 3 h 3 \"%s%u\"", dest);
socketPrintf(m_socketfd, "widget_set YSF Line3 1 3 15 3 h 3 \"DG-ID %u\"", dgid);
socketPrintf(m_socketfd, "output 64"); // Set LED3 color red
}
@ -439,13 +439,12 @@ void CLCDproc::writeFusionInt(const char* source, const char* dest, unsigned cha
void CLCDproc::writeFusionRSSIInt(unsigned char rssi)
{
if (m_rssiCount1 == 0U) {
if (m_rssiCount1 == 0U)
socketPrintf(m_socketfd, "widget_set YSF Line4 1 4 %u 4 h 3 \"-%3udBm\"", m_cols - 1, rssi);
}
m_rssiCount1++;
if (m_rssiCount1 >= YSF_RSSI_COUNT)
m_rssiCount1 = 0U;
if (m_rssiCount1 >= YSF_RSSI_COUNT)
m_rssiCount1 = 0U;
}
void CLCDproc::clearFusionInt()

View File

@ -1273,7 +1273,7 @@ bool CModem::writeDMRInfo(unsigned int slotNo, const std::string& src, bool grou
return m_serial->write(buffer, 47U) != 47;
}
bool CModem::writeYSFInfo(const char* source, const char* dest, const char* type, const char* origin)
bool CModem::writeYSFInfo(const char* source, const char* dest, unsigned char dgid, const char* type, const char* origin)
{
assert(m_serial != NULL);
assert(source != NULL);
@ -1281,10 +1281,10 @@ bool CModem::writeYSFInfo(const char* source, const char* dest, const char* type
assert(type != NULL);
assert(origin != NULL);
unsigned char buffer[50U];
unsigned char buffer[40U];
buffer[0U] = MMDVM_FRAME_START;
buffer[1U] = 35U;
buffer[1U] = 36U;
buffer[2U] = MMDVM_QSO_INFO;
buffer[3U] = MODE_YSF;
@ -1296,7 +1296,9 @@ bool CModem::writeYSFInfo(const char* source, const char* dest, const char* type
::memcpy(buffer + 25U, origin, YSF_CALLSIGN_LENGTH);
return m_serial->write(buffer, 35U) != 35;
buffer[35U] = dgid;
return m_serial->write(buffer, 36U) != 36;
}
bool CModem::writeP25Info(const char* source, bool group, unsigned int dest, const char* type)

View File

@ -90,7 +90,7 @@ public:
virtual bool writeDStarInfo(const char* my1, const char* my2, const char* your, const char* type, const char* reflector);
virtual bool writeDMRInfo(unsigned int slotNo, const std::string& src, bool group, const std::string& dst, const char* type);
virtual bool writeYSFInfo(const char* source, const char* dest, const char* type, const char* origin);
virtual bool writeYSFInfo(const char* source, const char* dest, unsigned char dgid, const char* type, const char* origin);
virtual bool writeP25Info(const char* source, bool group, unsigned int dest, const char* type);
virtual bool writeNXDNInfo(const char* source, bool group, unsigned int dest, const char* type);
virtual bool writePOCSAGInfo(unsigned int ric, const std::string& message);

View File

@ -625,9 +625,10 @@ void CNextion::writeFusionInt(const char* source, const char* dest, unsigned cha
sendCommand(text);
sendCommandAction(82U);
::sprintf(text, "t1.txt=\"%.10s\"", dest);
::sprintf(text, "t1.txt=\"DG-ID %u\"", dgid);
sendCommand(text);
sendCommandAction(83U);
if (::strcmp(origin, " ") != 0) {
::sprintf(text, "t2.txt=\"at %.10s\"", origin);
sendCommand(text);

View File

@ -436,7 +436,6 @@ void COLED::clearDMRInt(unsigned int slotNo)
void COLED::writeFusionInt(const char* source, const char* dest, const char* type, const char* origin)
{
m_mode = MODE_YSF;
m_display.clearDisplay();
@ -446,11 +445,11 @@ void COLED::writeFusionInt(const char* source, const char* dest, const char* typ
m_display.printf("%s %.10s", type, source);
m_display.setCursor(0,OLED_LINE5);
m_display.printf(" %.10s", dest);
m_display.printf(" DG-ID %u", dgid);
OLED_statusbar();
m_display.display();
m_display.display();
}
void COLED::clearFusionInt()

View File

@ -316,7 +316,7 @@ void CTFTSerial::writeFusionInt(const char* source, const char* dest, unsigned c
gotoPosPixel(5U, 70U);
displayText(text);
::sprintf(text, " %.10s", dest);
::sprintf(text, " DG-ID %u", dgid);
gotoPosPixel(5U, 90U);
displayText(text);

View File

@ -283,7 +283,7 @@ void CTFTSurenoo::writeFusionInt(const char* source, const char* dest, unsigned
::snprintf(m_temp, sizeof(m_temp), "%s %s", type, source);
setStatusLine(statusLineNo(0), m_temp);
::snprintf(m_temp, sizeof(m_temp), "%s", dest);
::snprintf(m_temp, sizeof(m_temp), "DG-ID %u", dgid);
setStatusLine(statusLineNo(1), m_temp);
if (::strcmp(origin, " ") != 0)

View File

@ -212,7 +212,7 @@ bool CYSFControl::processVWData(bool valid, unsigned char *data)
if (m_selfOnly) {
bool ret = checkCallsign(m_rfSource);
if (!ret) {
LogMessage("YSF, invalid access attempt from %10.10s (DG-ID: %u)", m_rfSource, dgid);
LogMessage("YSF, invalid access attempt from %10.10s to DG-ID %u", m_rfSource, dgid);
m_rfState = RS_RF_REJECTED;
return false;
}
@ -238,7 +238,7 @@ bool CYSFControl::processVWData(bool valid, unsigned char *data)
openFile();
#endif
m_display->writeFusion((char*)m_rfSource, (char*)m_rfDest, dgid, "R", " ");
LogMessage("YSF, received RF header from %10.10s to %10.10s (DG-ID: %u)", m_rfSource, m_rfDest, dgid);
LogMessage("YSF, received RF header from %10.10s to DG-ID %u", m_rfSource, dgid);
CSync::addYSFSync(data + 2U);
@ -299,9 +299,9 @@ bool CYSFControl::processVWData(bool valid, unsigned char *data)
m_rfFrames++;
if (m_rssi != 0U)
LogMessage("YSF, received RF end of transmission from %10.10s to %10.10s (DG-ID: %u), %.1f seconds, BER: %.1f%%, RSSI: -%u/-%u/-%u dBm", m_rfSource, m_rfDest, dgid, float(m_rfFrames) / 10.0F, float(m_rfErrs * 100U) / float(m_rfBits), m_minRSSI, m_maxRSSI, m_aveRSSI / m_rssiCount);
LogMessage("YSF, received RF end of transmission from %10.10s to DG-ID %u, %.1f seconds, BER: %.1f%%, RSSI: -%u/-%u/-%u dBm", m_rfSource, dgid, float(m_rfFrames) / 10.0F, float(m_rfErrs * 100U) / float(m_rfBits), m_minRSSI, m_maxRSSI, m_aveRSSI / m_rssiCount);
else
LogMessage("YSF, received RF end of transmission from %10.10s to %10.10s (DG-ID: %u), %.1f seconds, BER: %.1f%%", m_rfSource, m_rfDest, dgid, float(m_rfFrames) / 10.0F, float(m_rfErrs * 100U) / float(m_rfBits));
LogMessage("YSF, received RF end of transmission from %10.10s to DG-ID %u, %.1f seconds, BER: %.1f%%", m_rfSource, dgid, float(m_rfFrames) / 10.0F, float(m_rfErrs * 100U) / float(m_rfBits));
writeEndRF();
}
@ -374,7 +374,7 @@ bool CYSFControl::processDNData(bool valid, unsigned char *data)
if (m_selfOnly) {
bool ret = checkCallsign(m_rfSource);
if (!ret) {
LogMessage("YSF, invalid access attempt from %10.10s (DG-ID: %u)", m_rfSource, dgid);
LogMessage("YSF, invalid access attempt from %10.10s to DG-ID %u", m_rfSource, dgid);
m_rfState = RS_RF_REJECTED;
return false;
}
@ -400,7 +400,7 @@ bool CYSFControl::processDNData(bool valid, unsigned char *data)
openFile();
#endif
m_display->writeFusion((char*)m_rfSource, (char*)m_rfDest, dgid, "R", " ");
LogMessage("YSF, received RF header from %10.10s to %10.10s (DG-ID: %u)", m_rfSource, m_rfDest, dgid);
LogMessage("YSF, received RF header from %10.10s to DG-ID %u", m_rfSource, dgid);
CSync::addYSFSync(data + 2U);
@ -461,9 +461,9 @@ bool CYSFControl::processDNData(bool valid, unsigned char *data)
m_rfFrames++;
if (m_rssi != 0U)
LogMessage("YSF, received RF end of transmission from %10.10s to %10.10s (DG-ID: %u), %.1f seconds, BER: %.1f%%, RSSI: -%u/-%u/-%u dBm", m_rfSource, m_rfDest, dgid, float(m_rfFrames) / 10.0F, float(m_rfErrs * 100U) / float(m_rfBits), m_minRSSI, m_maxRSSI, m_aveRSSI / m_rssiCount);
LogMessage("YSF, received RF end of transmission from %10.10s to DG-ID %u, %.1f seconds, BER: %.1f%%, RSSI: -%u/-%u/-%u dBm", m_rfSource, dgid, float(m_rfFrames) / 10.0F, float(m_rfErrs * 100U) / float(m_rfBits), m_minRSSI, m_maxRSSI, m_aveRSSI / m_rssiCount);
else
LogMessage("YSF, received RF end of transmission from %10.10s to %10.10s (DG-ID: %u), %.1f seconds, BER: %.1f%%", m_rfSource, m_rfDest, dgid, float(m_rfFrames) / 10.0F, float(m_rfErrs * 100U) / float(m_rfBits));
LogMessage("YSF, received RF end of transmission from %10.10s to DG-ID %u, %.1f seconds, BER: %.1f%%", m_rfSource, dgid, float(m_rfFrames) / 10.0F, float(m_rfErrs * 100U) / float(m_rfBits));
writeEndRF();
}
@ -570,7 +570,7 @@ bool CYSFControl::processDNData(bool valid, unsigned char *data)
if (m_selfOnly) {
bool ret = checkCallsign(m_rfSource);
if (!ret) {
LogMessage("YSF, invalid access attempt from %10.10s (DG-ID: %u)", m_rfSource, dgid);
LogMessage("YSF, invalid access attempt from %10.10s to DG-ID %u", m_rfSource, dgid);
m_rfState = RS_RF_REJECTED;
return false;
}
@ -626,7 +626,7 @@ bool CYSFControl::processDNData(bool valid, unsigned char *data)
writeFile(buffer + 2U);
#endif
m_display->writeFusion((char*)m_rfSource, (char*)m_rfDest, dgid, "R", " ");
LogMessage("YSF, received RF late entry from %10.10s to %10.10s (DG-ID: %u)", m_rfSource, m_rfDest, dgid);
LogMessage("YSF, received RF late entry from %10.10s to DG-ID %u", m_rfSource, dgid);
CSync::addYSFSync(data + 2U);
@ -676,7 +676,7 @@ bool CYSFControl::processFRData(bool valid, unsigned char *data)
if (m_selfOnly) {
bool ret = checkCallsign(m_rfSource);
if (!ret) {
LogMessage("YSF, invalid access attempt from %10.10s (DG-ID: %u)", m_rfSource, dgid);
LogMessage("YSF, invalid access attempt from %10.10s to DG-ID %u", m_rfSource, dgid);
m_rfState = RS_RF_REJECTED;
return false;
}
@ -699,7 +699,7 @@ bool CYSFControl::processFRData(bool valid, unsigned char *data)
openFile();
#endif
m_display->writeFusion((char*)m_rfSource, (char*)m_rfDest, dgid, "R", " ");
LogMessage("YSF, received RF header from %10.10s to %10.10s (DG-ID: %u)", m_rfSource, m_rfDest, dgid);
LogMessage("YSF, received RF header from %10.10s to DG-ID %u", m_rfSource, dgid);
CSync::addYSFSync(data + 2U);
@ -759,9 +759,9 @@ bool CYSFControl::processFRData(bool valid, unsigned char *data)
m_rfFrames++;
if (m_rssi != 0U)
LogMessage("YSF, received RF end of transmission from %10.10s to %10.10s (DG-ID: %u), %.1f seconds, RSSI: -%u/-%u/-%u dBm", m_rfSource, m_rfDest, dgid, float(m_rfFrames) / 10.0F, m_minRSSI, m_maxRSSI, m_aveRSSI / m_rssiCount);
LogMessage("YSF, received RF end of transmission from %10.10s to DG-ID %u, %.1f seconds, RSSI: -%u/-%u/-%u dBm", m_rfSource, dgid, float(m_rfFrames) / 10.0F, m_minRSSI, m_maxRSSI, m_aveRSSI / m_rssiCount);
else
LogMessage("YSF, received RF end of transmission from %10.10s to %10.10s (DG-ID: %u), %.1f seconds", m_rfSource, m_rfDest, dgid, float(m_rfFrames) / 10.0F);
LogMessage("YSF, received RF end of transmission from %10.10s to DG-ID %u, %.1f seconds", m_rfSource, dgid, float(m_rfFrames) / 10.0F);
writeEndRF();
}
@ -904,7 +904,7 @@ void CYSFControl::writeNetwork()
if (::memcmp(m_netSource, " ", 10U) != 0 && ::memcmp(m_netDest, " ", 10U) != 0) {
m_display->writeFusion((char*)m_netSource, (char*)m_netDest, dgid, "N", (char*)(data + 4U));
LogMessage("YSF, received network data from %10.10s to %10.10s (DG-ID: %u) at %10.10s", m_netSource, m_netDest, dgid, data + 4U);
LogMessage("YSF, received network data from %10.10s to DG-ID %u at %10.10s", m_netSource, dgid, data + 4U);
}
m_netTimeoutTimer.start();
@ -1016,7 +1016,7 @@ void CYSFControl::writeNetwork()
m_netN = n;
if (end) {
LogMessage("YSF, received network end of transmission from %10.10s to %10.10s (DG-ID: %u), %.1f seconds, %u%% packet loss, BER: %.1f%%", m_netSource, m_netDest, dgid, float(m_netFrames) / 10.0F, (m_netLost * 100U) / m_netFrames, float(m_netErrs * 100U) / float(m_netBits));
LogMessage("YSF, received network end of transmission from %10.10s to DG-ID %u, %.1f seconds, %u%% packet loss, BER: %.1f%%", m_netSource, dgid, float(m_netFrames) / 10.0F, (m_netLost * 100U) / m_netFrames, float(m_netErrs * 100U) / float(m_netBits));
writeEndNet();
}
}
@ -1159,7 +1159,7 @@ void CYSFControl::processNetCallsigns(const unsigned char* data, unsigned char d
if (::memcmp(m_netSource, " ", 10U) != 0 && ::memcmp(m_netDest, " ", 10U) != 0) {
m_display->writeFusion((char*)m_netSource, (char*)m_netDest, dgid, "N", (char*)(data + 4U));
LogMessage("YSF, received network data from %10.10s to %10.10s (DG-ID: %u) at %10.10s", m_netSource, m_netDest, dgid, data + 4U);
LogMessage("YSF, received network data from %10.10s to DG-ID %u at %10.10s", m_netSource, dgid, data + 4U);
}
}
}