From e6d83e730521400ef45263dab9d73208b8087212 Mon Sep 17 00:00:00 2001 From: lwvmobile Date: Thu, 15 Jun 2023 17:29:33 -0400 Subject: [PATCH 1/2] Fix CMake Options error; Update Readme; --- CMakeLists.txt | 4 ++-- README.md | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index e63934d..a3bddb8 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -46,14 +46,14 @@ if (LZ) endif () #use cmake option -DTONES to change default location of the tones.wav files (lwvmobile precompiled 'Aero' releases only) -option(NXDN +option(TN "Build with tone wav files in the dsd-fme folder and not in /usr/share/" OFF) if (TN) add_definitions(-DTONES) endif () #use cmake option -DZDEV to change designation of this build from MAIN to zDEV -option(NXDN +option(ZDEV "change designation of this build from MAIN to zDEV" OFF) if (ZDEV) add_definitions(-DZDEV_BUILD) diff --git a/README.md b/README.md index 4c39ee8..105e1fa 100644 --- a/README.md +++ b/README.md @@ -4,7 +4,7 @@ DSD-FME is an evolution of the original DSD project from 'DSD Author' using the base code of [szechyjs](https://github.com/szechyjs/dsd "szechyjs"), some code and ideas from [LouisErigHerve](https://github.com/LouisErigHerve/dsd "LouisErigHerve"), [Boatbod OP25](https://github.com/boatbod/op25 "Boatbod OP25") and [Osmocom OP25](https://gitea.osmocom.org/op25/op25 "Osmocom OP25"), along with other snippets of code, information, and inspirations from other projects including [DSDcc](https://github.com/f4exb/dsdcc "DSDcc"), [SDRTRunk](https://github.com/DSheirer/sdrtrunk "SDRTrunk"), [MMDVMHost](https://github.com/g4klx/MMDVMHost "MMDVMHost"), [LFSR](https://github.com/mattames/LFSR "LFSR"), [OK-DMRlib](https://github.com/OK-DMR/ok-dmrlib "OK-DMRlib"), and [EZPWD-Reed-Solomon](https://github.com/pjkundert/ezpwd-reed-solomon "EZPWD"), Eric Cottrell, SP5WWP and others. Finally, this is all brought together with original code to extend the fuctionality and add new features including NCurses Terminal and Menu system, Pulse Audio, TCP Direct Link Audio, RIGCTL, Trunking Features, LRRP/GPS Mapping, P25 Phase 2, EDACS, OP25 Capture Bin compatability, etc. DSD-FME is primarily focused with Linux Desktop users in mind, so please understand that this version may not compile, compile easily, or run correctly in other environments. -This project wouldn't be possible without a few good people providing me plenty of sample audio files to run over and over again. Special thanks to jurek1111, KrisMar, noamlivne, racingfan360, iScottyBotty, LimaZulu, Forts, thewraithe2008, RayAir, and others for the many hours of wav samples and information provided by them. Most importantly, HRH17, whose insight, information, samples, and willingness to let me remote into a computer half-way across the globe in order to test trunking features are what make DSD-FME what it has become. I'd also like to thank mrscanner2008 for providing an additional remote where additional NXDN Type-C, 'Idas' Type-D, and XPT decoding and trunking could be sorted out. Thank you everybody. +This project wouldn't be possible without a few good people providing me plenty of sample audio files to run over and over again. Special thanks to jurek1111, KrisMar, noamlivne, racingfan360, iScottyBotty, LimaZulu, Forts, thewraithe2008, RayAir, Cretu, and others for the many hours of wav samples and information provided by them. Most importantly, HRH17, whose insight, information, samples, and willingness to let me remote into a computer half-way across the globe in order to test trunking features are what make DSD-FME what it has become. I'd also like to thank mrscanner2008 for providing an additional remote where additional NXDN Type-C, 'Idas' Type-D, and XPT decoding and trunking could be sorted out. Thank you everybody. ![DSD-FME](https://github.com/lwvmobile/dsd-fme/blob/main/dsd-fme2.png) From 5e68580fa650bd0a476a993e99d0ab1de94d72bf Mon Sep 17 00:00:00 2001 From: lwvmobile Date: Thu, 15 Jun 2023 17:35:42 -0400 Subject: [PATCH 2/2] DMR - Minor Cosmetic Tweaks; --- src/dmr_bs.c | 13 ------------- src/dmr_csbk.c | 10 ++++++++-- src/dmr_flco.c | 2 +- 3 files changed, 9 insertions(+), 16 deletions(-) diff --git a/src/dmr_bs.c b/src/dmr_bs.c index a35540d..99045fb 100644 --- a/src/dmr_bs.c +++ b/src/dmr_bs.c @@ -363,19 +363,6 @@ void dmrBS (dsd_opts * opts, dsd_state * state) memcpy (m2, ambe_fr2, sizeof(m2)); memcpy (m3, ambe_fr3, sizeof(m3)); - // if ( opts->audio_in_type == 5 && internalslot == 0 && state->dmrburstR != 16 ) //(OSS shim) - // { - // processMbeFrame (opts, state, NULL, ambe_fr, NULL); - // processMbeFrame (opts, state, NULL, ambe_fr2, NULL); - // processMbeFrame (opts, state, NULL, ambe_fr3, NULL); - // } - // if ( opts->audio_in_type == 5 && internalslot == 1 && state->dmrburstL != 16 ) //(OSS shim) - // { - // processMbeFrame (opts, state, NULL, ambe_fr, NULL); - // processMbeFrame (opts, state, NULL, ambe_fr2, NULL); - // processMbeFrame (opts, state, NULL, ambe_fr3, NULL); - // } - processMbeFrame (opts, state, NULL, ambe_fr, NULL); processMbeFrame (opts, state, NULL, ambe_fr2, NULL); processMbeFrame (opts, state, NULL, ambe_fr3, NULL); diff --git a/src/dmr_csbk.c b/src/dmr_csbk.c index 2676abc..ae12800 100644 --- a/src/dmr_csbk.c +++ b/src/dmr_csbk.c @@ -686,7 +686,7 @@ void dmr_cspdu (dsd_opts * opts, dsd_state * state, uint8_t cs_pdu_bits[], uint8 if (gi == 0) target = (uint32_t)ConvertBitIntoBytes(&cs_pdu_bits[40], 16); source = (uint32_t)ConvertBitIntoBytes(&cs_pdu_bits[64], 16); int rest = (uint32_t)ConvertBitIntoBytes(&cs_pdu_bits[60], 4); - fprintf (stderr, "Source: %d - Target: %d - Rest Channel: %d", source, target, rest); + fprintf (stderr, "Source: %d - Target: %d - Rest LSN: %d", source, target, rest); } else fprintf (stderr, "Source: %d - Target: %d ", source, target); @@ -820,7 +820,7 @@ void dmr_cspdu (dsd_opts * opts, dsd_state * state, uint8_t cs_pdu_bits[], uint8 opts->p25_is_tuned = 1; } - fprintf (stderr, " Capacity Plus Channel Status - FL: %d TS: %d RS: %d - Rest Channel %d", fl, ts, res, rest_channel); + fprintf (stderr, " Capacity Plus Channel Status - FL: %d TS: %d RS: %d - Rest LSN: %d", fl, ts, res, rest_channel); if (fl == 0) fprintf (stderr, " - Appended Block"); //have not yet observed a system use this fl value if (fl == 1) fprintf (stderr, " - Final Block"); if (fl == 2) fprintf (stderr, " - Initial Block"); @@ -1018,6 +1018,9 @@ void dmr_cspdu (dsd_opts * opts, dsd_state * state, uint8_t cs_pdu_bits[], uint8 //Skip tuning group calls if group calls are disabled -- moved to individual switches in the parsing phase // if (opts->trunk_tune_group_calls == 0) goto SKIPCAP; + //Test allowing a group in the white list to preempt a call in progress and tune to a white listed call + if (opts->trunk_use_allow_list == 1) state->last_vc_sync_time = 0; + //don't tune if vc on the current channel if ( (time(NULL) - state->last_vc_sync_time > 2) ) { @@ -1354,6 +1357,9 @@ void dmr_cspdu (dsd_opts * opts, dsd_state * state, uint8_t cs_pdu_bits[], uint8 //Skip tuning calls if group calls are disabled if (opts->trunk_tune_group_calls == 0) goto SKIPXPT; + //Test allowing a group in the white list to preempt a call in progress and tune to a white listed call + if (opts->trunk_use_allow_list == 1) state->last_vc_sync_time = 0; + //don't tune if vc on the current channel if ( (time(NULL) - state->last_vc_sync_time) > 2 ) //parenthesis error fixed { diff --git a/src/dmr_flco.c b/src/dmr_flco.c index fc5eb27..f684960 100644 --- a/src/dmr_flco.c +++ b/src/dmr_flco.c @@ -494,7 +494,7 @@ void dmr_flco (dsd_opts * opts, dsd_state * state, uint8_t lc_bits[], uint32_t C if (restchannel != -1) { fprintf (stderr, "%s ", KYEL); - fprintf (stderr, "Cap+ R-Ch %d", restchannel); + fprintf (stderr, "Rest LSN: %d", restchannel); } }