From fe3a135a92cbbbbb453d68a54414881a05f712d5 Mon Sep 17 00:00:00 2001 From: lwvmobile Date: Sat, 26 Aug 2023 21:23:56 -0400 Subject: [PATCH] Disable DMR MS/Simplex When Trunking Enabled; --- src/dsd_frame.c | 12 +++++------- 1 file changed, 5 insertions(+), 7 deletions(-) diff --git a/src/dsd_frame.c b/src/dsd_frame.c index bdce893..c1caa8c 100644 --- a/src/dsd_frame.c +++ b/src/dsd_frame.c @@ -177,19 +177,19 @@ processFrame (dsd_opts * opts, dsd_state * state) { sprintf (state->fsubtype, " VOICE "); - if (opts->dmr_stereo == 0 && state->synctype < 32) // -T option for DMR (TDMA) stereo + if (opts->dmr_stereo == 0 && state->synctype < 32) { sprintf (state->slot1light, " slot1 "); sprintf (state->slot2light, " slot2 "); //we can safely open MBE on any MS or mono handling if ((opts->mbe_out_dir[0] != 0) && (opts->mbe_out_f == NULL)) openMbeOutFile (opts, state); - dmrMSBootstrap (opts, state); + if (opts->p25_trunk == 0) dmrMSBootstrap (opts, state); } if (opts->dmr_mono == 1 && state->synctype == 32) { //we can safely open MBE on any MS or mono handling if ((opts->mbe_out_dir[0] != 0) && (opts->mbe_out_f == NULL)) openMbeOutFile (opts, state); - dmrMSBootstrap (opts, state); + if (opts->p25_trunk == 0) dmrMSBootstrap (opts, state); } if (opts->dmr_stereo == 1) //opts->dmr_stereo == 1 { @@ -198,7 +198,7 @@ processFrame (dsd_opts * opts, dsd_state * state) { //we can safely open MBE on any MS or mono handling if ((opts->mbe_out_dir[0] != 0) && (opts->mbe_out_f == NULL)) openMbeOutFile (opts, state); - dmrMSBootstrap (opts, state); //bootstrap into MS Bootstrap (voice only) + if (opts->p25_trunk == 0) dmrMSBootstrap (opts, state); //bootstrap into MS Bootstrap (voice only) } else dmrBSBootstrap (opts, state); //bootstrap into BS Bootstrap } @@ -207,7 +207,7 @@ processFrame (dsd_opts * opts, dsd_state * state) { if (opts->mbe_out_f != NULL) closeMbeOutFile (opts, state); if (opts->mbe_out_fR != NULL) closeMbeOutFileR (opts, state); - dmrMSData (opts, state); + if (opts->p25_trunk == 0) dmrMSData (opts, state); } else { @@ -219,7 +219,6 @@ processFrame (dsd_opts * opts, dsd_state * state) state->err_str[0] = 0; sprintf (state->slot1light, " slot1 "); sprintf (state->slot2light, " slot2 "); - state->payload_miP = 0; //zero out when switching back to data sync dmr_data_sync (opts, state); } //switch dmr_stereo to 0 when handling BS data frame syncs with processDMRdata @@ -231,7 +230,6 @@ processFrame (dsd_opts * opts, dsd_state * state) state->dmr_stereo = 0; //set the state to zero for handling pure data frames sprintf (state->slot1light, " slot1 "); sprintf (state->slot2light, " slot2 "); - state->payload_miP = 0; //zero out when switching back to data sync dmr_data_sync (opts, state); } }