P25 Fix Some Logic Regarding Symbol Rate Switch;

This commit is contained in:
lwvmobile
2023-08-04 17:07:18 -04:00
parent f9b74cf7e2
commit d6181e2dcd
3 changed files with 17 additions and 3 deletions

View File

@@ -154,8 +154,8 @@ getFrameSync (dsd_opts * opts, dsd_state * state)
if (state->dmr_rest_channel == -1 && opts->p25_is_tuned == 0 && opts->p25_trunk == 1 && ( (time(NULL) - state->last_cc_sync_time) > (opts->trunk_hangtime + 0) ) ) //was 3, go to hangtime value
{
//test to switch back to 10/4 P1 QPSK for P25 FDMA CC
if (opts->mod_qpsk == 1 && state->p25_cc_is_tdma == 0)
//if P25p2 VCH and going back to P25p1 CC, flip symbolrate
if (state->p25_cc_is_tdma == 0)
{
state->samplesPerSymbol = 10;
state->symbolCenter = 4;

View File

@@ -207,7 +207,7 @@ if(opts->frame_m17 == 1) //&& opts->audio_in_type == 5
state->last_cc_sync_time = time(NULL);
//test to switch back to 10/4 P1 QPSK for P25 FDMA CC
//reworked to always change back to 10/4 if p25_cc_is_tdma is set to 0 or 1 (inits on 2)
//if P25p2 VCH and going back to P25p1 CC, flip symbolrate
if (state->p25_cc_is_tdma == 0) //is set on signal from P25 TSBK or MAC_SIGNAL
{
state->samplesPerSymbol = 10;

View File

@@ -3827,6 +3827,13 @@ ncursesPrinter (dsd_opts * opts, dsd_state * state)
state->last_cc_sync_time = time(NULL);
//if P25p2 VCH and going back to P25p1 CC, flip symbolrate
if (state->p25_cc_is_tdma == 0)
{
state->samplesPerSymbol = 10;
state->symbolCenter = 4;
}
}
if (state->lasttgR != 0 && opts->frame_provoice != 1 && c == 64) //SHIFT+'2' key (@ at sign), lockout slot 2 tdma tgR from tuning/playback during session
@@ -3882,6 +3889,13 @@ ncursesPrinter (dsd_opts * opts, dsd_state * state)
state->last_cc_sync_time = time(NULL);
//if P25p2 VCH and going back to P25p1 CC, flip symbolrate
if (state->p25_cc_is_tdma == 0)
{
state->samplesPerSymbol = 10;
state->symbolCenter = 4;
}
}
// if (c == 48) //'0' key, toggle upsampled audio smoothing