Re: Two Frequency Operation in Simplex Mode
Posted: Thu Jan 30, 2020 9:02 pm
Almost There - YSF2DMR Crossover back to back with a Fusion Repeater(Bridge)
I edited YSFControl.cpp in the MMDVHHost package and commented out all the writeQueueRF(data) commands
and this gave me half duplex mode I need.
Sure would be nice to have this control in a toggle in the ini file. I am surprised that no one else has come across the looping problem with full duplex. I guess that when using a radio which is simplex they just don't hear the feedback. But then why do they need duplex. I can only think that full duplex would be usefull when using the hotspot as a repeater. Then there is a repeater toggle in the ini file that could be used to control hall/full duplex. When using a repeater on the RF side, Full Duplex causes unacceptable looping.
For whatever it is worth, this is what I did.
Duplex in the ini file = 1
added a variable fulldup=false, in the YSFControl.cpp file
then effectively blocked all the writeQueueRF(data); commands
The only RF I want out is from DMR (Network)
if (m_duplex) {
// Add the DG-ID information.
fich.setDGId(m_dgIdEnabled ? m_dgIdValue : 0U);
fich.setMR(m_remoteGateway ? YSF_MR_NOT_BUSY : YSF_MR_BUSY);
fich.setDev(m_lowDeviation);
fich.encode(data + 2U);
if (fulldup) writeQueueRF(data);
}
I edited YSFControl.cpp in the MMDVHHost package and commented out all the writeQueueRF(data) commands
and this gave me half duplex mode I need.
Sure would be nice to have this control in a toggle in the ini file. I am surprised that no one else has come across the looping problem with full duplex. I guess that when using a radio which is simplex they just don't hear the feedback. But then why do they need duplex. I can only think that full duplex would be usefull when using the hotspot as a repeater. Then there is a repeater toggle in the ini file that could be used to control hall/full duplex. When using a repeater on the RF side, Full Duplex causes unacceptable looping.
For whatever it is worth, this is what I did.
Duplex in the ini file = 1
added a variable fulldup=false, in the YSFControl.cpp file
then effectively blocked all the writeQueueRF(data); commands
The only RF I want out is from DMR (Network)
if (m_duplex) {
// Add the DG-ID information.
fich.setDGId(m_dgIdEnabled ? m_dgIdValue : 0U);
fich.setMR(m_remoteGateway ? YSF_MR_NOT_BUSY : YSF_MR_BUSY);
fich.setDev(m_lowDeviation);
fich.encode(data + 2U);
if (fulldup) writeQueueRF(data);
}