mirror of https://github.com/g4klx/MMDVM.git
Change the sampling poistion and rate for the RSSI.
This commit is contained in:
parent
eafc329cc9
commit
8c96a48b2b
|
@ -125,7 +125,7 @@ bool CDMRSlotRX::processSample(q15_t sample)
|
|||
} else {
|
||||
#if defined(SEND_RSSI_DATA)
|
||||
// Grab the RSSI data near the centre of the frame
|
||||
if (m_state == DMRRXS_VOICE && m_dataPtr == m_syncPtr && m_rssiCount == 0U)
|
||||
if (m_state == DMRRXS_VOICE && m_dataPtr == m_syncPtr && m_rssiCount == 2U)
|
||||
m_rssi = io.getRSSIValue();
|
||||
#endif
|
||||
uint16_t min = m_syncPtr - 1U;
|
||||
|
@ -206,8 +206,8 @@ bool CDMRSlotRX::processSample(q15_t sample)
|
|||
// Voice sync
|
||||
DEBUG5("DMRSlotRX: voice sync found slot/pos/centre/threshold", m_slot ? 2U : 1U, m_syncPtr, centre, threshold);
|
||||
#if defined(SEND_RSSI_DATA)
|
||||
// Send RSSI data approximately every 0.5 seconds
|
||||
if (m_rssiCount == 0U) {
|
||||
// Send RSSI data approximately every second
|
||||
if (m_rssiCount == 2U) {
|
||||
frame[34U] = (m_rssi >> 8) & 0xFFU;
|
||||
frame[35U] = (m_rssi >> 0) & 0xFFU;
|
||||
serial.writeDMRData(m_slot, frame, DMR_FRAME_LENGTH_BYTES + 3U);
|
||||
|
@ -216,7 +216,7 @@ bool CDMRSlotRX::processSample(q15_t sample)
|
|||
}
|
||||
|
||||
m_rssiCount++;
|
||||
if (m_rssiCount >= 8U)
|
||||
if (m_rssiCount >= 16U)
|
||||
m_rssiCount = 0U;
|
||||
#else
|
||||
serial.writeDMRData(m_slot, frame, DMR_FRAME_LENGTH_BYTES + 1U);
|
||||
|
@ -242,8 +242,8 @@ bool CDMRSlotRX::processSample(q15_t sample)
|
|||
frame[0U] = ++m_n;
|
||||
}
|
||||
#if defined(SEND_RSSI_DATA)
|
||||
// Send RSSI data approximately every 0.5 seconds
|
||||
if (m_rssiCount == 0U) {
|
||||
// Send RSSI data approximately every second
|
||||
if (m_rssiCount == 2U) {
|
||||
frame[34U] = (m_rssi >> 8) & 0xFFU;
|
||||
frame[35U] = (m_rssi >> 0) & 0xFFU;
|
||||
serial.writeDMRData(m_slot, frame, DMR_FRAME_LENGTH_BYTES + 3U);
|
||||
|
@ -252,7 +252,7 @@ bool CDMRSlotRX::processSample(q15_t sample)
|
|||
}
|
||||
|
||||
m_rssiCount++;
|
||||
if (m_rssiCount >= 8U)
|
||||
if (m_rssiCount >= 16U)
|
||||
m_rssiCount = 0U;
|
||||
#else
|
||||
serial.writeDMRData(m_slot, frame, DMR_FRAME_LENGTH_BYTES + 1U);
|
||||
|
|
|
@ -464,7 +464,7 @@ void CDStarRX::processData(bool bit)
|
|||
}
|
||||
|
||||
#if defined(SEND_RSSI_DATA)
|
||||
// Send RSSI data every 0.5 seconds
|
||||
// Send RSSI data every second
|
||||
if (m_rssiCount == 0U) {
|
||||
uint16_t rssi = io.getRSSIValue();
|
||||
m_rxBuffer[12U] = (rssi >> 8) & 0xFFU;
|
||||
|
@ -475,7 +475,7 @@ void CDStarRX::processData(bool bit)
|
|||
}
|
||||
|
||||
m_rssiCount++;
|
||||
if (m_rssiCount >= 25U)
|
||||
if (m_rssiCount >= 50U)
|
||||
m_rssiCount = 0U;
|
||||
#else
|
||||
serial.writeDStarData(m_rxBuffer, DSTAR_DATA_LENGTH_BYTES);
|
||||
|
|
|
@ -237,7 +237,7 @@ void CYSFRX::processData(q15_t sample)
|
|||
m_outBuffer[0U] = m_lostCount == (MAX_SYNC_FRAMES - 1U) ? 0x01U : 0x00U;
|
||||
|
||||
#if defined(SEND_RSSI_DATA)
|
||||
// Send RSSI data every 0.5 seconds
|
||||
// Send RSSI data every second
|
||||
if (m_rssiCount == 0U) {
|
||||
uint16_t rssi = io.getRSSIValue();
|
||||
m_outBuffer[121U] = (rssi >> 8) & 0xFFU;
|
||||
|
@ -248,7 +248,7 @@ void CYSFRX::processData(q15_t sample)
|
|||
}
|
||||
|
||||
m_rssiCount++;
|
||||
if (m_rssiCount >= 5U)
|
||||
if (m_rssiCount >= 10U)
|
||||
m_rssiCount = 0U;
|
||||
#else
|
||||
serial.writeYSFData(m_outBuffer, YSF_FRAME_LENGTH_BYTES + 1U);
|
||||
|
|
Loading…
Reference in New Issue