kopia lustrzana https://github.com/jamescoxon/dl-fldigi
Mod - RSID propability of detection improvements
* increased time between RSID tones and start of normal modem signal * corrected errors in decoder implementationpull/2/head
rodzic
6c0d3777b0
commit
4dfb2c596c
|
@ -120,11 +120,8 @@ public:
|
|||
~cRsId();
|
||||
void reset();
|
||||
void search( const double *pSamples, int nSamples );
|
||||
// , bool bReverse,
|
||||
// int *pSymbolOut, int *pBinOut, int *pDistanceOut,
|
||||
// int *pMetricsOut);
|
||||
void apply (int iSymbol, int iBin);
|
||||
void send();
|
||||
void send(bool postidle);
|
||||
|
||||
int samplerate() { return _samplerate;}
|
||||
|
||||
|
|
|
@ -495,10 +495,11 @@ void cRsId::apply(int iSymbol, int iBin)
|
|||
break;
|
||||
}
|
||||
|
||||
REQ(&configuration::loadDefaults, &progdefaults);
|
||||
// REQ(&configuration::loadDefaults, &progdefaults);
|
||||
|
||||
active_modem->set_freq(freq);
|
||||
// active_modem->set_freq(freq);
|
||||
REQ(init_modem, mbin);
|
||||
active_modem->set_freq(freq);
|
||||
|
||||
}
|
||||
|
||||
|
@ -601,7 +602,7 @@ bool cRsId::search_amp( int &SymbolOut, int &BinOut)
|
|||
// transmit rsid code for current mode
|
||||
//=============================================================================
|
||||
|
||||
void cRsId::send()
|
||||
void cRsId::send(bool postidle)
|
||||
{
|
||||
int iTone;
|
||||
uchar rsid[RSID_NSYMBOLS];
|
||||
|
@ -707,6 +708,12 @@ void cRsId::send()
|
|||
|
||||
outbuf = new double[symlen];
|
||||
|
||||
// transmit 6 symbol periods of silence
|
||||
if (!postidle) {
|
||||
for (int j = 0; j < symlen; j++) outbuf[j] = 0.0;
|
||||
for (int i = 0; i < 6; i++) active_modem->ModulateXmtr(outbuf, symlen);
|
||||
}
|
||||
|
||||
// transmit sequence of 15 symbols (tones)
|
||||
phase = 0.0;
|
||||
for (int i = 0; i < 15; i++) {
|
||||
|
@ -724,11 +731,11 @@ void cRsId::send()
|
|||
active_modem->ModulateXmtr(outbuf, symlen);
|
||||
|
||||
}
|
||||
// transmit 3 symbol periods of silence
|
||||
for (int j = 0; j < symlen; j++) outbuf[j] = 0.0;
|
||||
active_modem->ModulateXmtr(outbuf, symlen);
|
||||
active_modem->ModulateXmtr(outbuf, symlen);
|
||||
active_modem->ModulateXmtr(outbuf, symlen);
|
||||
// transmit 6 symbol periods of silence
|
||||
if (postidle) {
|
||||
for (int j = 0; j < symlen; j++) outbuf[j] = 0.0;
|
||||
for (int i = 0; i < 6; i++) active_modem->ModulateXmtr(outbuf, symlen);
|
||||
}
|
||||
// clean up
|
||||
|
||||
delete [] outbuf;
|
||||
|
|
|
@ -249,7 +249,7 @@ void trx_trx_transmit_loop()
|
|||
active_modem->tx_init(scard);
|
||||
|
||||
if (progdefaults.TransmitRSid == true)
|
||||
ReedSolomon->send();
|
||||
ReedSolomon->send(true);
|
||||
|
||||
while (trx_state == STATE_TX) {
|
||||
try {
|
||||
|
@ -266,7 +266,7 @@ void trx_trx_transmit_loop()
|
|||
}
|
||||
|
||||
if (progdefaults.TransmitRSid == true)
|
||||
ReedSolomon->send();
|
||||
ReedSolomon->send(false);
|
||||
|
||||
scard->flush();
|
||||
if (scard->must_close())
|
||||
|
|
Ładowanie…
Reference in New Issue