mirror of https://github.com/g4klx/MMDVM.git
Changes based on first NXDN RF tests.
This commit is contained in:
parent
615c705044
commit
dfc262bbcd
23
IO.cpp
23
IO.cpp
|
@ -300,15 +300,19 @@ void CIO::process()
|
||||||
dstarRX.samples(GMSKVals, rssi, RX_BLOCK_SIZE);
|
dstarRX.samples(GMSKVals, rssi, RX_BLOCK_SIZE);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (m_p25Enable) {
|
if (m_p25Enable || m_nxdnEnable) {
|
||||||
q15_t P25Vals[RX_BLOCK_SIZE];
|
q15_t C4FSKVals[RX_BLOCK_SIZE];
|
||||||
::arm_fir_fast_q15(&m_boxcarFilter, dcSamples, P25Vals, RX_BLOCK_SIZE);
|
::arm_fir_fast_q15(&m_boxcarFilter, dcSamples, C4FSKVals, RX_BLOCK_SIZE);
|
||||||
|
|
||||||
p25RX.samples(P25Vals, rssi, RX_BLOCK_SIZE);
|
if (m_p25Enable)
|
||||||
|
p25RX.samples(C4FSKVals, rssi, RX_BLOCK_SIZE);
|
||||||
|
|
||||||
|
if (m_nxdnEnable)
|
||||||
|
nxdnRX.samples(C4FSKVals, rssi, RX_BLOCK_SIZE);
|
||||||
}
|
}
|
||||||
|
|
||||||
// XXX YSF should use dcSamples, but DMR not
|
// XXX YSF should use dcSamples, but DMR not
|
||||||
if (m_dmrEnable || m_ysfEnable || m_nxdnEnable) {
|
if (m_dmrEnable || m_ysfEnable) {
|
||||||
q15_t C4FSKVals[RX_BLOCK_SIZE];
|
q15_t C4FSKVals[RX_BLOCK_SIZE];
|
||||||
::arm_fir_fast_q15(&m_rrcFilter, samples, C4FSKVals, RX_BLOCK_SIZE);
|
::arm_fir_fast_q15(&m_rrcFilter, samples, C4FSKVals, RX_BLOCK_SIZE);
|
||||||
|
|
||||||
|
@ -321,9 +325,6 @@ void CIO::process()
|
||||||
|
|
||||||
if (m_ysfEnable)
|
if (m_ysfEnable)
|
||||||
ysfRX.samples(C4FSKVals, rssi, RX_BLOCK_SIZE);
|
ysfRX.samples(C4FSKVals, rssi, RX_BLOCK_SIZE);
|
||||||
|
|
||||||
if (m_nxdnEnable)
|
|
||||||
nxdnRX.samples(C4FSKVals, rssi, RX_BLOCK_SIZE);
|
|
||||||
}
|
}
|
||||||
} else if (m_modemState == STATE_DSTAR) {
|
} else if (m_modemState == STATE_DSTAR) {
|
||||||
if (m_dstarEnable) {
|
if (m_dstarEnable) {
|
||||||
|
@ -363,10 +364,10 @@ void CIO::process()
|
||||||
}
|
}
|
||||||
} else if (m_modemState == STATE_NXDN) {
|
} else if (m_modemState == STATE_NXDN) {
|
||||||
if (m_nxdnEnable) {
|
if (m_nxdnEnable) {
|
||||||
q15_t C4FSKVals[RX_BLOCK_SIZE];
|
q15_t NXDNVals[RX_BLOCK_SIZE];
|
||||||
::arm_fir_fast_q15(&m_rrcFilter, dcSamples, C4FSKVals, RX_BLOCK_SIZE);
|
::arm_fir_fast_q15(&m_boxcarFilter, dcSamples, NXDNVals, RX_BLOCK_SIZE);
|
||||||
|
|
||||||
nxdnRX.samples(C4FSKVals, rssi, RX_BLOCK_SIZE);
|
nxdnRX.samples(NXDNVals, rssi, RX_BLOCK_SIZE);
|
||||||
}
|
}
|
||||||
} else if (m_modemState == STATE_DSTARCAL) {
|
} else if (m_modemState == STATE_DSTARCAL) {
|
||||||
q15_t GMSKVals[RX_BLOCK_SIZE];
|
q15_t GMSKVals[RX_BLOCK_SIZE];
|
||||||
|
|
|
@ -23,7 +23,7 @@
|
||||||
|
|
||||||
const q15_t SCALING_FACTOR = 18750; // Q15(0.55)
|
const q15_t SCALING_FACTOR = 18750; // Q15(0.55)
|
||||||
|
|
||||||
const uint8_t MAX_FSW_BIT_ERRS = 2U;
|
const uint8_t MAX_FSW_BIT_ERRS = 1U;
|
||||||
|
|
||||||
const uint8_t MAX_FSW_SYMBOLS_ERRS = 1U;
|
const uint8_t MAX_FSW_SYMBOLS_ERRS = 1U;
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue