DSD improvements I am working on

Status
Not open for further replies.

Ed_F

Member
Joined
Jan 6, 2014
Messages
5
No, I didn't. A number of reasons, the main is the copyright issue with the mbelib library. I rather keep DSD independent as much as possible of mbelib so this can be replaced easily by a different vocoder. Some people might need this.
The code could be refactored so there would be a library with all the FEC implementations and both mbelib and DSD will depend upon it.
You will find easy to replace the Golay24 implementation by something else. I made an effort to document the code and include unit test cases.
 

EricCottrell

Member
Premium Subscriber
Joined
Nov 8, 2002
Messages
2,426
Location
Boston, Ma
Hello,

I have been busy with my real job, but finally got started and setup an account on githib. I forked the dsd repository and even committed a small addition, ALSA support. ALSA support makes it easier to run dsd on newer Linux distributions. padsp is no longer needed. I submitted a pull request so hopefully the changes will make it back to the main program.

73 Eric
 

groovy

Member
Joined
Jul 10, 2013
Messages
29
Eric- If you have the time, could you also submit the NXDN trunking sync patch (I think you posted it in December) as a pull request?

Thanks,
groovy
 
S

screamin72

Guest
Is there a way to allow analogue voice to pass thru dsd+ 1.7 on a system with mixed digital and analogue? If not can you add it?

Unitrunker told me on another post he might look into adding another audio pipe but I don't know. I really really would like to be able to listen to both because I live in tornado alley and the county storm chasers have a talk group (analogue voice) on this system. Also Airport security uses analogue most of the time and provoice some of the time at my city's airport. Unitrunker for now only supports one audio pipe (at least I think it does...)

On another note on DSD+ I found best decodes with using these parameters in a shortcut "C:\Program Files\UniTrunker\DSD\dsd.exe" -dr0 -dh0 -u1 -fp -O NUL

For those wondering why I turned off saving the wav file (DSD+ readme calls it a mp3 but its extension is .wav when you look into the dsd+ folder) I just did it because I have no purpose for a growing .wav file. All the radio traffic I hear is confidential.
 
Last edited:

forums manager

Super Moderator
Staff member
Super Moderator
Joined
Nov 11, 2013
Messages
397
Is there a way to allow analogue voice to pass thru dsd+ 1.7 on a system with mixed digital and analogue? If not can you add it?
Wrong DSD. Eric is referring to the Linux based DSD, not DSD+. DSD+ is a private Windows-based fork of DSD.
 
S

screamin72

Guest
I have terrible times with Linux! Okay I just be quiet on this one. Sorry for interrupting :)
 

EricCottrell

Member
Premium Subscriber
Joined
Nov 8, 2002
Messages
2,426
Location
Boston, Ma
Hello,

I looked at the my NXDN code changes last night. I added code to decode one of the data fields that indicates the type of channel (Trunk Control, Trunk Traffic, Conventional, Composite). Composite is used on Icom's trunked system (Type D) as both voice and trunking control data are sent. More work needs to be done.

Over the weekend I bought a Hytera VHF Analog/DMR radio for use on the local ham DMR repeaters. I also have the local Water & Sewer department as a receive only DMR channel. Setup and using the radio has helped increase my understanding of DMR. I am thinking of getting a Icom IDAS radio as well, although most ham NXDN activity is on the South Shore.

I was surprised to see a listing for a local repeater that supports Yaesu's version of Digital Radio. I hope to capture some transmissions and see if I can figure it out.

73 Eric
 

EricCottrell

Member
Premium Subscriber
Joined
Nov 8, 2002
Messages
2,426
Location
Boston, Ma
Hello,

Recently I started a DMRECC branch on my dsd repository. I am slowly adding DMR error correction and decoding. Today I added additional NXDN sync types to sync up with both Kenwood (Type-C) and Icom IDAS (Type-D) systems.

Currently the DMR code will error correct and decode the CACH, EMB, and Slot Type. This gives some information such as Color Code, Voice Talkgroup, Voice Radio ID, and Mototurbo Connect Plus/Capacity Plus information like network id and site id..

The Respository is on GitHub at LinuxSheeple-E/dsd.

73 Eric
 

Forts

Mentor
Database Admin
Joined
Dec 19, 2002
Messages
6,985
Location
Ontario, Canada
Has anyone successfully compiled & installed this latest release? I went thru the motions and all seemed to go well... but it doesn't seem to actually install. Keep in mind I am nowhere even near being any sort of fluent in Linux which is likely a big contributing factor.
 

deboe

Member
Joined
Dec 19, 2002
Messages
142
Location
0x045C
Yes, just tried and it built fine.

If you want to share the errors you got, I am sure someone might be able point you in the right direction.

This was my build output
Code:
23:21 ~ $ git clone https://github.com/LinuxSheeple-E/dsd dsd_eric
Cloning into 'dsd_eric'...
remote: Counting objects: 518, done.
remote: Compressing objects: 100% (269/269), done.
remote: Total 518 (delta 257), reused 490 (delta 241)
Receiving objects: 100% (518/518), 653.54 KiB | 456.00 KiB/s, done.
Resolving deltas: 100% (257/257), done.
Checking connectivity... done.
23:22 ~ $ cd dsd_eric/
23:22 ~/dsd_eric (master)$ mkdir build
23:22 ~/dsd_eric (master)$ cd build/
23:22 ~/dsd_eric/build (master)$ cmake ../
-- The C compiler identification is GNU 4.8.2
-- The CXX compiler identification is GNU 4.8.2
-- Check for working C compiler: /usr/bin/cc
-- Check for working C compiler: /usr/bin/cc -- works
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Check for working CXX compiler: /usr/bin/c++
-- Check for working CXX compiler: /usr/bin/c++ -- works
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Found LibSndFile: /usr/lib64/libsndfile.so
-- Found LibMbe: /usr/local/lib/libmbe.so
-- Found ITPP: /usr/local/lib/libitpp.so
-- Found ALSA: /usr/lib64/libasound.so (found version "1.0.27.2") 
-- Found PythonInterp: /usr/bin/python (found version "2.7.5") 
-- Looking for include file pthread.h
-- Looking for include file pthread.h - found
-- Looking for pthread_create
-- Looking for pthread_create - not found
-- Looking for pthread_create in pthreads
-- Looking for pthread_create in pthreads - not found
-- Looking for pthread_create in pthread
-- Looking for pthread_create in pthread - found
-- Found Threads: TRUE  
-- Configuring done
-- Generating done
-- Build files have been written to: /home/dylan/dsd_eric/build
23:22 ~/dsd_eric/build (master)$ make
Scanning dependencies of target dsd
[  2%] Building C object CMakeFiles/dsd.dir/dsd_audio.c.o
[  4%] Building C object CMakeFiles/dsd.dir/p25p1_hdu.c.o
[  6%] Building C object CMakeFiles/dsd.dir/dstar.c.o
[  9%] Building C object CMakeFiles/dsd.dir/nxdn_data.c.o
[ 11%] Building C object CMakeFiles/dsd.dir/p25p1_ldu.c.o
[ 13%] Building C object CMakeFiles/dsd.dir/dsd_main.c.o
[ 15%] Building C object CMakeFiles/dsd.dir/p25p1_ldu1.c.o
[ 18%] Building C object CMakeFiles/dsd.dir/dmr_voice.c.o
[ 20%] Building C object CMakeFiles/dsd.dir/dsd_symbol.c.o
[ 22%] Building C object CMakeFiles/dsd.dir/dsd_frame_sync.c.o
[ 25%] Building C object CMakeFiles/dsd.dir/p25p1_ldu2.c.o
[ 27%] Building C object CMakeFiles/dsd.dir/provoice.c.o
[ 29%] Building C object CMakeFiles/dsd.dir/dstar_header.c.o
[ 31%] Building C object CMakeFiles/dsd.dir/dsd_mbe.c.o
[ 34%] Building C object CMakeFiles/dsd.dir/p25p1_tdu.c.o
[ 36%] Building C object CMakeFiles/dsd.dir/dsd_filters.c.o
[ 38%] Building C object CMakeFiles/dsd.dir/dmr_data.c.o
[ 40%] Building C object CMakeFiles/dsd.dir/dsd_upsample.c.o
[ 43%] Building C object CMakeFiles/dsd.dir/p25p1_tdulc.c.o
[ 45%] Building C object CMakeFiles/dsd.dir/dsd_dibit.c.o
[ 47%] Building C object CMakeFiles/dsd.dir/dsd_serial.c.o
[ 50%] Building C object CMakeFiles/dsd.dir/nxdn96.c.o
[ 52%] Building C object CMakeFiles/dsd.dir/dsd_frame.c.o
[ 54%] Building C object CMakeFiles/dsd.dir/p25p1_heuristics.c.o
[ 56%] Building C object CMakeFiles/dsd.dir/dsd_file.c.o
[ 59%] Building C object CMakeFiles/dsd.dir/p25_lcw.c.o
[ 61%] Building C object CMakeFiles/dsd.dir/nxdn_voice.c.o
[ 63%] Building C object CMakeFiles/dsd.dir/x2tdma_data.c.o
[ 65%] Building C object CMakeFiles/dsd.dir/x2tdma_voice.c.o
[ 68%] Building CXX object CMakeFiles/dsd.dir/p25p1_check_hdu.cpp.o
[ 70%] Building CXX object CMakeFiles/dsd.dir/Hamming.cpp.o
[ 72%] Building CXX object CMakeFiles/dsd.dir/p25p1_check_nid.cpp.o
[ 75%] Building CXX object CMakeFiles/dsd.dir/p25p1_check_ldu.cpp.o
[ 77%] Building C object CMakeFiles/dsd.dir/git_ver.c.o
Linking CXX executable dsd
[ 77%] Built target dsd
Scanning dependencies of target gmock
[ 79%] Building CXX object test/gmock/CMakeFiles/gmock.dir/src/gmock-all.cc.o
Linking CXX static library libgmock.a
[ 79%] Built target gmock
Scanning dependencies of target gtest
[ 81%] Building CXX object test/gtest/CMakeFiles/gtest.dir/src/gtest-all.cc.o
Linking CXX static library libgtest.a
[ 81%] Built target gtest
Scanning dependencies of target dsdtest
[ 84%] Building CXX object test/CMakeFiles/dsdtest.dir/hamming-test.cpp.o
[ 86%] Building CXX object test/CMakeFiles/dsdtest.dir/reedsolomon-test.cpp.o
[ 88%] Building CXX object test/CMakeFiles/dsdtest.dir/test.cpp.o
[ 90%] Building CXX object test/CMakeFiles/dsdtest.dir/golay24-test.cpp.o
[ 93%] Building CXX object test/CMakeFiles/dsdtest.dir/__/Hamming.cpp.o
Linking CXX executable dsdtest
[ 93%] Built target dsdtest
Scanning dependencies of target gtest_main
[ 95%] Building CXX object test/gtest/CMakeFiles/gtest_main.dir/src/gtest_main.cc.o
Linking CXX static library libgtest_main.a
[ 95%] Built target gtest_main
Scanning dependencies of target gmock_main
[ 97%] Building CXX object test/gmock/CMakeFiles/gmock_main.dir/src/gmock-all.cc.o
[100%] Building CXX object test/gmock/CMakeFiles/gmock_main.dir/src/gmock_main.cc.o
Linking CXX static library libgmock_main.a
[100%] Built target gmock_main
 
Last edited:

Forts

Mentor
Database Admin
Joined
Dec 19, 2002
Messages
6,985
Location
Ontario, Canada
Thanks for sharing that... I didn't get any errors but it doesn't look like it installed. I was using a bootable USB distro though which may be the culprit.
 

EricCottrell

Member
Premium Subscriber
Joined
Nov 8, 2002
Messages
2,426
Location
Boston, Ma
Hello,

What additional features you get depends on what branch in my repository you get.

Building from my master branch will only add ALSA support. This appears superseded by the Portaudio support recently added upstream. I need to test this out.

My Feature/DMRECC branch has the ALSA support, plus additional decoding of DMR and additional NXDN syncs. Besides doing some error detection/correction for DMR, it also decodes the CACH (SLCO) and EMB (FLCO). This limited decode does give some useful information like Connect Plus Network/Site/Channel Type, and Talkgroup/RadioID. I am currently working on decoding the CSBK.

73 Eric
 

deboe

Member
Joined
Dec 19, 2002
Messages
142
Location
0x045C
Eric made some changes and was just giving people a heads up if they want to try them.
if they work then most likely he will submit a pull request to szechjs/dsd project to be included.

Dylan

Sent from my MB886 using Tapatalk
 

groovy

Member
Joined
Jul 10, 2013
Messages
29
Eric- I looked over what you did but haven't had a chance to build it- it looks very nice.


Just thinking over where the next places to go, I can think of a few things. A few of these I'm qualified to work on, but not many:

1) (Large effort) Move to integer math and table-based trig functions. This is one of the performance bottlenecks in the application.
2) (Large effort) implement stereo output and simultaneous decoding of DMR timeslots (as in DSD+)
3) (Medium effort) convert +48... +48... strol-base2 to bit shifting. Performance improvement and easier to read IMHO.
4) (Medium effort) Implement Yaesu system fusion decoding for v/d mode, perhaps voice/extra ECC mode as well. High rate voice would be a large effort because MBElib doesn't have a AMBE+2 7200bps codec.
5) (Medium effort) Record to mp3 or opus files or whatnot. (as in DSD+)
6) (Medium to large effort) AOR ARD9800/ARD9000 decoding. I think this uses the same codec as D-STAR, but a completely different modem.

Any other items on the hitlist?
 

EricCottrell

Member
Premium Subscriber
Joined
Nov 8, 2002
Messages
2,426
Location
Boston, Ma
Hello,

Some of those ideas, and additional ones I have, require major changes and restructuring of code.

The math and trig functions would be more a bottleneck for embedded processors without floating point. I think the problem is all the calculations done to detect and decode QPSK, which I think is dubious when using discriminator output to begin with. I would put in the moving average filter specified in the P25 specifications.

The demodulator leaves out filters so it can detect different modulation types. This affects weak signal performance. Also the wrong modulation optimizations get selected on signals. I really think the audio input should be split into separate decode streams. The program could then detect Provoice and Narrowband NXDN. Some filtering can be shared as Wideband NXDN and DMR are both Four-level FSK with the same filter. I need to run some experiments to see if this can be done on slower processors.

The frame sync code has to change to decode two voice slots. The current code stays in the DMR Voice code during a voice superframe. This would have to be change so the frame sync code recognizes it is in a voice superframe and not to look for voice sync.

73 Eric
 

EricCottrell

Member
Premium Subscriber
Joined
Nov 8, 2002
Messages
2,426
Location
Boston, Ma
Hello,

I am interested in DMR so my current effort is in decoding some of the DMR data. Here are some examples.

Conventional DMR voice transmission through a repeater. Radio 1 is transmitting on Group 1 using Slot 1 and Color Code 3.
Code:
Sync:  -DMR       mod: GFSK inlvl: 18% [slot0]  slot1   CC: 3  Slot idle     
Sync:  -DMR       mod: GFSK inlvl: 18%  slot0  [slot1]  CC: 3  Slot idle     
Sync:  -DMR       mod: GFSK inlvl: 18% [slot0]  slot1   CC: 3  Slot idle     
Sync:  -DMR       mod: GFSK inlvl: 18%  slot0  [slot1]  CC: 3  Slot idle     
  CACH: Null 
Sync:  -DMR       mod: GFSK inlvl: 17% [slot0]  slot1   CC: 3  Slot idle     
Sync:  -DMR       mod: GFSK inlvl: 18%  slot0  [slot1]  CC: 3  Slot idle     
Sync:  -DMR       mod: GFSK inlvl: 18% [slot0]  slot1   CC: 3  Slot idle     
Sync:  -DMR       mod: GFSK inlvl: 18%  slot0  [slot1]  CC: 3  VOICE Header  pf:0 Standard FID - Group Voice Ch Usr Group:1 RadioId:1 
  CACH: Null 
Sync:  -DMR       mod: GFSK inlvl: 18% [slot0]  slot1   CC: 3  Slot idle     
Sync:  -DMR       mod: GFSK inlvl: 19%  slot0  [slot1]  CC: 3  VOICE Header  pf:0 Standard FID - Group Voice Ch Usr Group:1 RadioId:1 
Sync:  -DMR       mod: C4FM inlvl: 20% [slot0]  slot1   CC: 3  Slot idle     
Sync:  -DMR       mod: GFSK inlvl: 19%  slot0  [slot1]  CC: 3  VOICE Header  pf:0 Standard FID - Group Voice Ch Usr Group:1 RadioId:1 
  CACH: Activity Update - Slot 0: Idle              Slot 1: Group Voice      
Sync:  -DMR       mod: GFSK inlvl: 19% [slot0]  slot1   CC: 3  Slot idle     
Sync:  -DMR       mod: GFSK inlvl: 19%  slot0  [SLOT1]  VOICE e:==
  CACH: Activity Update - Slot 0: Idle              Slot 1: Group Voice      
  EMB: pf:0 Standard FID - Group Voice Ch Usr Group:1 RadioId:1  
Sync:  -DMR       mod: GFSK inlvl: 19%  slot0  [SLOT1]  VOICE e:
  CACH: Activity Update - Slot 0: Idle              Slot 1: Group Voice      
Sync:  -DMR       mod: GFSK inlvl: 18%  slot0  [SLOT1]  VOICE e:=
  CACH: Activity Update - Slot 0: Idle              Slot 1: Group Voice      
  EMB: pf:0 Standard FID - Group Voice Ch Usr Group:1 RadioId:1  
Sync:  -DMR       mod: GFSK inlvl: 19%  slot0  [SLOT1]  VOICE e:
  CACH: Activity Update - Slot 0: Idle              Slot 1: Group Voice      
  EMB: pf:0 Standard FID - Group Voice Ch Usr Group:1 RadioId:1  
Sync:  -DMR       mod: GFSK inlvl: 19%  slot0  [SLOT1]  VOICE e:
  CACH: Activity Update - Slot 0: Idle              Slot 1: Group Voice      
  EMB: pf:0 Standard FID - Group Voice Ch Usr Group:1 RadioId:1  
Sync:  -DMR       mod: GFSK inlvl: 19%  slot0  [slot1]  CC: 3  TLC           pf:0 Standard FID - Group Voice Ch Usr Group:1 RadioId:1 
Sync:  -DMR       mod: GFSK inlvl: 19% [slot0]  slot1   CC: 3  Slot idle     
Sync:  -DMR       mod: GFSK inlvl: 19%  slot0  [slot1]  CC: 3  TLC           pf:0 Standard FID - Group Voice Ch Usr Group:1 RadioId:1 
  CACH: Activity Update - Slot 0: Idle              Slot 1: Group Voice      
Sync:  -DMR       mod: GFSK inlvl: 19% [slot0]  slot1   CC: 3  Slot idle     
Sync:  -DMR       mod: GFSK inlvl: 19%  slot0  [slot1]  CC: 3  TLC           pf:0 Standard FID - Group Voice Ch Usr Group:1 RadioId:1 
Sync:  -DMR       mod: GFSK inlvl: 19% [slot0]  slot1   CC: 3  Slot idle     
Sync:  -DMR       mod: GFSK inlvl: 19%  slot0  [slot1]  CC: 3  TLC           pf:0 Standard FID - Group Voice Ch Usr Group:1 RadioId:1 
  CACH: Activity Update - Slot 0: Idle              Slot 1: Group Voice      
Sync:  -DMR       mod: GFSK inlvl: 19% [slot0]  slot1   CC: 3  Slot idle     
Sync:  -DMR       mod: GFSK inlvl: 19%  slot0  [slot1]  CC: 3  TLC           pf:0 Standard FID - Group Voice Ch Usr Group:1 RadioId:1 
Sync:  -DMR       mod: GFSK inlvl: 19% [slot0]  slot1   CC: 3  Slot idle     
Sync:  -DMR       mod: GFSK inlvl: 19%  slot0  [slot1]  CC: 3  TLC           pf:0 Standard FID - Group Voice Ch Usr Group:1 RadioId:1 
  CACH: Activity Update - Slot 0: Idle              Slot 1: Group Voice

Motorola Capacity Plus Voice Transmission. The rest channel is 4 and the transmission by Radio 3118 is on talkgroup 13 using channel 3 (Slot 0 of the same frequency). Color Code is 13.
Code:
Sync:  -DMR       mod: GFSK inlvl: 21%  slot0  [slot1]  CC:13  CSBK          lb:1 pf:0 Motorola - Capacity+ Ch Status FL:3 Slot 1 RestCh: 4 ActiveCh:  3      TGs: 13 
Sync:  -DMR       mod: GFSK inlvl: 21% [slot0]  slot1   CC:13  VOICE Header  pf:0 Motorola - Capacity+ Group Voice Group:13 RestCh:4 RadioId:3118 
Sync:  -DMR       mod: GFSK inlvl: 21%  slot0  [slot1]  CC:13  CSBK          lb:1 pf:0 Motorola - Capacity+ Ch Status FL:3 Slot 1 RestCh: 4 ActiveCh:  3      TGs: 13 
Sync:  -DMR       mod: GFSK inlvl: 21% [slot0]  slot1   CC:13  VOICE Header  pf:0 Motorola - Capacity+ Group Voice Group:13 RestCh:4 RadioId:3118 
  CACH: Motorola Capacity+ Op:0 RestCh:4 Rsrvd:0 
Sync:  -DMR       mod: GFSK inlvl: 21%  slot0  [slot1]  CC:13  CSBK          lb:1 pf:0 Motorola - Capacity+ Ch Status FL:3 Slot 1 RestCh: 4 ActiveCh:  3      TGs: 13 
Sync:  -DMR       mod: GFSK inlvl: 21% [slot0]  slot1   CC:13  VOICE Header  pf:0 Motorola - Capacity+ Group Voice Group:13 RestCh:4 RadioId:3118 
Sync:  -DMR       mod: GFSK inlvl: 21%  slot0  [slot1]  CC:13  CSBK          lb:1 pf:0 Motorola - Capacity+ Ch Status FL:3 Slot 1 RestCh: 4 ActiveCh:  3      TGs: 13 
Sync:  -DMR       mod: GFSK inlvl: 21% [slot0]  slot1   CC:13  VOICE Header  pf:0 Motorola - Capacity+ Group Voice Group:13 RestCh:4 RadioId:3118 
  CACH: Motorola Capacity+ Op:0 RestCh:4 Rsrvd:0 
Sync:  -DMR       mod: GFSK inlvl: 21%  slot0  [slot1]  CC:13  CSBK          lb:1 pf:0 Motorola - Capacity+ Ch Status FL:3 Slot 1 RestCh: 4 ActiveCh:  3      TGs: 13 
Sync:  -DMR       mod: GFSK inlvl: 20% [SLOT0]  slot1   VOICE e:
  CACH: Motorola Capacity+ Op:0 RestCh:4 Rsrvd:0 
  EMB: pf:0 Standard FID - Group Voice Ch Usr Group:13 RadioId:3118  
Sync:  -DMR       mod: GFSK inlvl: 20% [SLOT0]  slot1   VOICE e:
  CACH: Motorola Capacity+ Op:0 RestCh:4 Rsrvd:0 
  EMB: pf:0 Standard FID - Group Voice Ch Usr Group:13 RadioId:3118  
Sync:  -DMR       mod: GFSK inlvl: 20% [SLOT0]  slot1   VOICE e:
  CACH: Motorola Capacity+ Op:0 RestCh:4 Rsrvd:0 
  EMB: pf:0 Standard FID - Group Voice Ch Usr Group:13 RadioId:3118  
Sync:  -DMR       mod: GFSK inlvl: 20% [SLOT0]  slot1   VOICE e:
  CACH: Motorola Capacity+ Op:0 RestCh:4 Rsrvd:0 
  EMB: pf:0 Standard FID - Group Voice Ch Usr Group:13 RadioId:3118  
Sync:  -DMR       mod: GFSK inlvl: 19% [SLOT0]  slot1   VOICE e:
  CACH: Motorola Capacity+ Op:0 RestCh:4 Rsrvd:0 
  EMB: pf:0 Standard FID - Group Voice Ch Usr Group:13 RadioId:3118  
Sync:  -DMR       mod: GFSK inlvl: 20% [SLOT0]  slot1   VOICE e:
  CACH: Motorola Capacity+ Op:0 RestCh:4 Rsrvd:0 
  EMB: pf:0 Standard FID - Group Voice Ch Usr Group:13 RadioId:3118  
Sync:  -DMR       mod: GFSK inlvl: 19% [SLOT0]  slot1   VOICE e:
  CACH: Motorola Capacity+ Op:0 RestCh:4 Rsrvd:0 
  EMB: pf:0 Standard FID - Group Voice Ch Usr Group:13 RadioId:3118  
Sync:  -DMR       mod: GFSK inlvl: 19% [SLOT0]  slot1   VOICE e:
  CACH: Motorola Capacity+ Op:0 RestCh:4 Rsrvd:0 
  EMB: pf:0 Standard FID - Group Voice Ch Usr Group:13 RadioId:3118  
Sync:  -DMR       mod: GFSK inlvl: 20% [SLOT0]  slot1   VOICE e:
  CACH: Motorola Capacity+ Op:0 RestCh:4 Rsrvd:0 
  EMB: pf:0 Standard FID - Group Voice Ch Usr Group:13 RadioId:3118  
Sync:  -DMR       mod: GFSK inlvl: 19% [SLOT0]  slot1   VOICE e:
  CACH: Motorola Capacity+ Op:0 RestCh:4 Rsrvd:0 
  EMB: pf:0 Standard FID - Group Voice Ch Usr Group:13 RadioId:3118  
Sync:  -DMR       mod: GFSK inlvl: 19% [SLOT0]  slot1   VOICE e:
  CACH: Motorola Capacity+ Op:0 RestCh:4 Rsrvd:0 
  EMB: pf:0 Standard FID - Group Voice Ch Usr Group:13 RadioId:3118  
Sync:  -DMR       mod: GFSK inlvl: 20% [slot0]  slot1   CC:13  TLC           pf:0 Standard FID - Group Voice Ch Usr Group:13 RadioId:3118 
Sync:  -DMR       mod: GFSK inlvl: 20%  slot0  [slot1]  CC:13  CSBK          lb:1 pf:0 Motorola - Capacity+ Ch Status FL:3 Slot 1 RestCh: 4 ActiveCh:  3      TGs: 13 
Sync:  -DMR       mod: GFSK inlvl: 21% [slot0]  slot1   CC:13  TLC           pf:0 Standard FID - Group Voice Ch Usr Group:13 RadioId:3118 
  CACH: Motorola Capacity+ Op:0 RestCh:4 Rsrvd:0 
Sync:  -DMR       mod: GFSK inlvl: 21%  slot0  [slot1]  CC:13  CSBK          lb:1 pf:0 Motorola - Capacity+ Ch Status FL:3 Slot 1 RestCh: 4 ActiveCh:  3      TGs: 13 
Sync:  -DMR       mod: GFSK inlvl: 21% [slot0]  slot1   CC:13  TLC           pf:0 Standard FID - Group Voice Ch Usr Group:13 RadioId:3118 
Sync:  -DMR       mod: GFSK inlvl: 21%  slot0  [slot1]  CC:13  CSBK          lb:1 pf:0 Motorola - Capacity+ Ch Status FL:3 Slot 1 RestCh: 4 ActiveCh:  3      TGs: 13 
Sync:  -DMR       mod: GFSK inlvl: 21% [slot0]  slot1   CC:13  TLC           pf:0 Standard FID - Group Voice Ch Usr Group:13 RadioId:3118 
  CACH: Motorola Capacity+ Op:0 RestCh:4 Rsrvd:0

Connect Plus Control Channel with a Voice Goto. Trident Micro Systems developed Connect Plus, so it uses a different FSID.
Code:
Sync:  +DMR       mod: GFSK inlvl: 16% [slot0]  slot1   CC: 1  CSBK          lb:1 pf:0 Trident MS (Motorola) - Connect+ Neighbors:  2  7 28 29 27  ?:0x000009 
Sync:  +DMR       mod: GFSK inlvl: 16%  slot0  [slot1]  CC: 1  Slot idle     
Sync:  +DMR       mod: GFSK inlvl: 16% [slot0]  slot1   CC: 1  CSBK          lb:1 pf:0 Trident MS (Motorola) - Connect+ Neighbors:  2  7 28 29 27  ?:0x000009 
Sync:  +DMR       mod: GFSK inlvl: 16%  slot0  [slot1]  CC: 1  Slot idle     
  CACH: Motorola Connect+ Net:134 Site:1 Control Ch 
Sync:  +DMR       mod: GFSK inlvl: 16% [slot0]  slot1   CC: 1  CSBK          lb:1 pf:0 Trident MS (Motorola) - Connect+ Neighbors:  2  7 28 29 27  ?:0x000009 
Sync:  +DMR       mod: GFSK inlvl: 16%  slot0  [slot1]  CC: 1  Slot idle     
Sync:  +DMR       mod: GFSK inlvl: 16% [slot0]  slot1   CC: 1  CSBK          lb:1 pf:0 Trident MS (Motorola) - Connect+ Neighbors:  2  7 28 29 27  ?:0x000009 
Sync:  +DMR       mod: GFSK inlvl: 17%  slot0  [slot1]  CC: 1  Slot idle     
  CACH: Motorola Connect+ Net:134 Site:1 Control Ch 
Sync:  +DMR       mod: GFSK inlvl: 16% [slot0]  slot1   CC: 1  CSBK          lb:1 pf:0 Trident MS (Motorola) - Connect+ Neighbors:  2  7 28 29 27  ?:0x000009 
Sync:  +DMR       mod: GFSK inlvl: 16%  slot0  [slot1]  CC: 1  Slot idle     
Sync:  +DMR       mod: GFSK inlvl: 16% [slot0]  slot1   CC: 1  CSBK          lb:1 pf:0 Trident MS (Motorola) - Connect+ Voice Goto SourceRId:8388 GroupId:231 LCN:2 Slot:0 ?:0x002 
Sync:  +DMR       mod: GFSK inlvl: 17%  slot0  [slot1]  CC: 1  Slot idle     
  CACH: Motorola Connect+ Net:134 Site:1 Control Ch 
Sync:  +DMR       mod: GFSK inlvl: 16% [slot0]  slot1   CC: 1  CSBK          lb:1 pf:0 Trident MS (Motorola) - Connect+ Voice Goto SourceRId:8388 GroupId:231 LCN:2 Slot:0 ?:0x002 
Sync:  +DMR       mod: GFSK inlvl: 17%  slot0  [slot1]  CC: 1  Slot idle     
Sync:  +DMR       mod: GFSK inlvl: 16% [slot0]  slot1   CC: 1  CSBK          lb:1 pf:0 Trident MS (Motorola) - Connect+ Voice Goto SourceRId:8388 GroupId:231 LCN:2 Slot:0 ?:0x002 
Sync:  +DMR       mod: GFSK inlvl: 17%  slot0  [slot1]  CC: 1  Slot idle     
  CACH: Motorola Connect+ Net:134 Site:1 Control Ch 
Sync:  +DMR       mod: GFSK inlvl: 17% [slot0]  slot1   CC: 1  CSBK          lb:1 pf:0 Trident MS (Motorola) - Connect+ Voice Goto SourceRId:8388 GroupId:231 LCN:2 Slot:0 ?:0x002 
Sync:  +DMR       mod: GFSK inlvl: 17%  slot0  [slot1]  CC: 1  Slot idle     
Sync:  +DMR       mod: GFSK inlvl: 17% [slot0]  slot1   CC: 1  CSBK          lb:1 pf:0 Trident MS (Motorola) - Connect+ Neighbors:  2  7 28 29 27  ?:0x000009 
Sync:  +DMR       mod: GFSK inlvl: 17%  slot0  [slot1]  CC: 1  Slot idle     
  CACH: Motorola Connect+ Net:134 Site:1 Control Ch 
Sync:  +DMR       mod: GFSK inlvl: 16% [slot0]  slot1   CC: 1  CSBK          lb:1 pf:0 Trident MS (Motorola) - Connect+ Voice Goto SourceRId:8388 GroupId:231 LCN:2 Slot:0 ?:0x002 
Sync:  +DMR       mod: GFSK inlvl: 17%  slot0  [slot1]  CC: 1  Slot idle     
Sync:  +DMR       mod: GFSK inlvl: 17% [slot0]  slot1   CC: 1  CSBK          lb:1 pf:0 Trident MS (Motorola) - Connect+ Neighbors:  2  7 28 29 27  ?:0x000009 
Sync:  +DMR       mod: GFSK inlvl: 17%  slot0  [slot1]  CC: 1  Slot idle     
  CACH: Motorola Connect+ Net:134 Site:1 Control Ch 
Sync:  +DMR       mod: GFSK inlvl: 17% [slot0]  slot1   CC: 1  CSBK          lb:1 pf:0 Trident MS (Motorola) - csbk:010001 fid:00000110 payload:0xFFFCDA001D760500
Sync:  +DMR       mod: GFSK inlvl: 17%  slot0  [slot1]  CC: 1  Slot idle     
Sync:  +DMR       mod: GFSK inlvl: 16% [slot0]  slot1   CC: 1  CSBK          lb:1 pf:0 Trident MS (Motorola) - Connect+ Voice Goto SourceRId:8388 GroupId:231 LCN:2 Slot:0 ?:0x002 
Sync:  +DMR       mod: GFSK inlvl: 17%  slot0  [slot1]  CC: 1  Slot idle     
  CACH: Motorola Connect+ Net:134 Site:1 Control Ch 
Sync:  +DMR       mod: GFSK inlvl: 17% [slot0]  slot1   CC: 1  CSBK          lb:1 pf:0 Trident MS (Motorola) - Connect+ Neighbors:  2  7 28 29 27  ?:0x000009 
Sync:  +DMR       mod: GFSK inlvl: 17%  slot0  [slot1]  CC: 1  Slot idle     
Sync:  +DMR       mod: GFSK inlvl: 17% [slot0]  slot1   CC: 1  CSBK          lb:1 pf:0 Trident MS (Motorola) - Connect+ Voice Goto SourceRId:8388 GroupId:231 LCN:2 Slot:0 ?:0x002 
Sync:  +DMR       mod: GFSK inlvl: 17%  slot0  [slot1]  CC: 1  Slot idle     
  CACH: Motorola Connect+ Net:134 Site:1 Control Ch 
Sync:  +DMR       mod: GFSK inlvl: 17% [slot0]  slot1   CC: 1  CSBK          lb:1 pf:0 Trident MS (Motorola) - Connect+ Neighbors:  2  7 28 29 27  ?:0x000009 
Sync:  +DMR       mod: GFSK inlvl: 17%  slot0  [slot1]  CC: 1  Slot idle     
Sync:  +DMR       mod: GFSK inlvl: 17% [slot0]  slot1   CC: 1  CSBK          lb:1 pf:0 Trident MS (Motorola) - Connect+ Voice Goto SourceRId:8388 GroupId:231 LCN:2 Slot:0 ?:0x002 
Sync:  +DMR       mod: GFSK inlvl: 17%  slot0  [slot1]  CC: 1  Slot idle     
  CACH: Motorola Connect+ Net:134 Site:1 Control Ch

Connect Plus Voice Transmission with voice transmission ending on both slots, then a voice transmission by radio 8021 on Group 136 using slot one. One great feature of Connect Plus is the CACH has the Network ID and Site ID so you know the system.
Code:
Sync:  +DMR       mod: GFSK inlvl: 16%  slot0  [slot1]  CC: 0  TLC           pf:0 Standard FID - Group Voice Ch Usr Group:136 RadioId:8002 
Sync:  +DMR       mod: GFSK inlvl: 16% [slot0]  slot1   CC: 0  TLC           pf:0 Standard FID - Group Voice Ch Usr Group:137 RadioId:8033 
Sync:  +DMR       mod: GFSK inlvl: 16%  slot0  [slot1]  CC: 0  TLC           pf:0 Standard FID - Group Voice Ch Usr Group:136 RadioId:8002 
Sync:  +DMR       mod: GFSK inlvl: 16% [slot0]  slot1   CC: 0  TLC           pf:0 Standard FID - Group Voice Ch Usr Group:137 RadioId:8033 
  CACH: Motorola Connect+ Net:139 Site:1 Traffic Ch 
Sync:  +DMR       mod: GFSK inlvl: 16%  slot0  [slot1]  CC: 0  TLC           pf:0 Standard FID - Group Voice Ch Usr Group:136 RadioId:8002 
Sync:  +DMR       mod: GFSK inlvl: 16% [slot0]  slot1   CC: 0  TLC           pf:0 Standard FID - Group Voice Ch Usr Group:137 RadioId:8033 
Sync:  +DMR       mod: GFSK inlvl: 16%  slot0  [slot1]  CC: 0  TLC           pf:0 Standard FID - Group Voice Ch Usr Group:136 RadioId:8002 
Sync:  +DMR       mod: GFSK inlvl: 16% [slot0]  slot1   CC: 0  TLC           pf:0 Standard FID - Group Voice Ch Usr Group:137 RadioId:8033 
  CACH: Motorola Connect+ Net:139 Site:1 Traffic Ch 
Sync:  +DMR       mod: GFSK inlvl: 16%  slot0  [slot1]  CC: 0  VOICE Header  pf:0 Standard FID - Group Voice Ch Usr Group:136 RadioId:8021 
Sync:  +DMR       mod: GFSK inlvl: 16% [slot0]  slot1   CC: 0  TLC           pf:0 Standard FID - Group Voice Ch Usr Group:137 RadioId:8033 
Sync:  +DMR       mod: GFSK inlvl: 16%  slot0  [slot1]  CC: 0  VOICE Header  pf:0 Standard FID - Group Voice Ch Usr Group:136 RadioId:8021 
Sync:  +DMR       mod: GFSK inlvl: 16% [slot0]  slot1   CC: 0  TLC           pf:0 Standard FID - Group Voice Ch Usr Group:137 RadioId:8033 
  CACH: Motorola Connect+ Net:139 Site:1 Traffic Ch 
Sync:  +DMR       mod: GFSK inlvl: 16%  slot0  [SLOT1]  VOICE e:
  CACH: Motorola Connect+ Net:139 Site:1 Traffic Ch 
  EMB: pf:0 Standard FID - Group Voice Ch Usr Group:136 RadioId:8021  
Sync:  +DMR       mod: GFSK inlvl: 17%  slot0  [SLOT1]  VOICE e:
  CACH: Motorola Connect+ Net:139 Site:1 Traffic Ch 
  EMB: pf:0 Standard FID - Group Voice Ch Usr Group:136 RadioId:8021  
Sync:  +DMR       mod: GFSK inlvl: 17%  slot0  [SLOT1]  VOICE e:
  CACH: Motorola Connect+ Net:139 Site:1 Traffic Ch 
  EMB: pf:0 Standard FID - Group Voice Ch Usr Group:136 RadioId:8021  
Sync:  +DMR       mod: GFSK inlvl: 17%  slot0  [SLOT1]  VOICE e:
  CACH: Motorola Connect+ Net:139 Site:1 Traffic Ch 
  EMB: pf:0 Standard FID - Group Voice Ch Usr Group:136 RadioId:8021  
Sync:  +DMR       mod: GFSK inlvl: 16%  slot0  [SLOT1]  VOICE e:
  CACH: Motorola Connect+ Net:139 Site:1 Traffic Ch 
  EMB: pf:0 Standard FID - Group Voice Ch Usr Group:136 RadioId:8021  
Sync:  +DMR       mod: GFSK inlvl: 16%  slot0  [SLOT1]  VOICE e:
  CACH: Motorola Connect+ Net:139 Site:1 Traffic Ch 
  EMB: pf:0 Standard FID - Group Voice Ch Usr Group:136 RadioId:8021  
Sync:  +DMR       mod: GFSK inlvl: 16%  slot0  [SLOT1]  VOICE e:
  CACH: Motorola Connect+ Net:139 Site:1 Traffic Ch 
  EMB: pf:0 Standard FID - Group Voice Ch Usr Group:136 RadioId:8021  
Sync:  +DMR       mod: GFSK inlvl: 16%  slot0  [SLOT1]  VOICE e:
  CACH: Motorola Connect+ Net:139 Site:1 Traffic Ch 
  EMB: pf:0 Standard FID - Group Voice Ch Usr Group:136 RadioId:8021  
Sync:  +DMR       mod: GFSK inlvl: 17%  slot0  [SLOT1]  VOICE e:
  CACH: Motorola Connect+ Net:139 Site:1 Traffic Ch 
  EMB: pf:0 Standard FID - Group Voice Ch Usr Group:136 RadioId:8021  
Sync:  +DMR       mod: GFSK inlvl: 17%  slot0  [SLOT1]  VOICE e:
  CACH: Motorola Connect+ Net:139 Site:1 Traffic Ch 
  EMB: pf:0 Standard FID - Group Voice Ch Usr Group:136 RadioId:8021  
Sync:  +DMR       mod: GFSK inlvl: 17%  slot0  [SLOT1]  VOICE e:
  CACH: Motorola Connect+ Net:139 Site:1 Traffic Ch 
  EMB: pf:0 Standard FID - Group Voice Ch Usr Group:136 RadioId:8021  
Sync:  +DMR       mod: GFSK inlvl: 17%  slot0  [SLOT1]  VOICE e:
  CACH: Motorola Connect+ Net:139 Site:1 Traffic Ch 
  EMB: pf:0 Standard FID - Group Voice Ch Usr Group:136 RadioId:8021  
Sync:  +DMR       mod: GFSK inlvl: 16%  slot0  [SLOT1]  VOICE e:
  CACH: Motorola Connect+ Net:139 Site:1 Traffic Ch 
  EMB: pf:0 Standard FID - Group Voice Ch Usr Group:136 RadioId:8021  
Sync:  +DMR       mod: GFSK inlvl: 17%  slot0  [SLOT1]  VOICE e:
  CACH: Motorola Connect+ Net:139 Site:1 Traffic Ch 
  EMB: pf:0 Standard FID - Group Voice Ch Usr Group:136 RadioId:8021  
Sync:  +DMR       mod: GFSK inlvl: 16%  slot0  [slot1]  CC: 0  TLC           pf:0 Standard FID - Group Voice Ch Usr Group:136 RadioId:8021 
Sync:  +DMR       mod: GFSK inlvl: 16% [slot0]  slot1   CC: 0  Slot idle     
Sync:  +DMR       mod: GFSK inlvl: 16%  slot0  [slot1]  CC: 0  TLC           pf:0 Standard FID - Group Voice Ch Usr Group:136 RadioId:8021 
Sync:  +DMR       mod: GFSK inlvl: 16% [slot0]  slot1   CC: 0  Slot idle     
  CACH: Motorola Connect+ Net:139 Site:1 Traffic Ch 
Sync:  +DMR       mod: GFSK inlvl: 16%  slot0  [slot1]  CC: 0  TLC           pf:0 Standard FID - Group Voice Ch Usr Group:136 RadioId:8021 
Sync:  +DMR       mod: GFSK inlvl: 16% [slot0]  slot1   CC: 0  Slot idle     
Sync:  +DMR       mod: GFSK inlvl: 16%  slot0  [slot1]  CC: 0  TLC           pf:0 Standard FID - Group Voice Ch Usr Group:136 RadioId:8021 
Sync:  +DMR       mod: GFSK inlvl: 16% [slot0]  slot1   CC: 0  Slot idle

73 Eric
 

racingfan360

Member
Joined
Dec 19, 2005
Messages
1,195
So perhaps someone with a bit more linux experience can help ....

I needed to install libsndfile1-dev and libitpp-dev in order to progress the cmake ../ step listed above

Then when I get to the make step, I get errors:

jim@ubuntu:~/src/dsd-master/dsd_eric/build$ make

[ 2%] Building CXX object CMakeFiles/dsd.dir/p25p1_check_nid.cpp.o
/home/jim/src/dsd-master/dsd_eric/p25p1_check_nid.cpp: In function ‘int check_NID(char*, int*, char*, unsigned char)’:
/home/jim/src/dsd-master/dsd_eric/p25p1_check_nid.cpp:59: error: no matching function for call to ‘itpp::BCH::decode(itpp::bvec&, itpp::bvec&, itpp::bvec&)’
/usr/include/itpp/comm/bch.h:75: note: candidates are: virtual void itpp::BCH::decode(const itpp::bvec&, itpp::bvec&)
/usr/include/itpp/comm/bch.h:77: note:
virtual itpp::bvec itpp::BCH::decode(const itpp::bvec&)
/usr/include/itpp/comm/bch.h:80: note:
virtual void itpp::BCH::decode(const itpp::vec&, itpp::bvec&)
/usr/include/itpp/comm/bch.h:81: note:
virtual itpp::bvec itpp::BCH::decode(const itpp::vec&)
make[2]: *** [CMakeFiles/dsd.dir/p25p1_check_nid.cpp.o] Error 1
make[1]: *** [CMakeFiles/dsd.dir/all] Error 2
make: *** [all] Error 2

Anyone got any ideas?

TIA,

Jim
 

deboe

Member
Joined
Dec 19, 2002
Messages
142
Location
0x045C
The issue looks to be with ITPP. It might not have installed properly or the version is too old.
It needs to be 4.3 or greater.
Try
Code:
dpkg -s libitpp-dev
to see what version you have.
If its an older version you might need to install from source.
 

racingfan360

Member
Joined
Dec 19, 2005
Messages
1,195
ok thanks ...so I was running 4.0 not 4.3. But I'm running on Ubuntu 10.04 Lucid (to maintain compatibility with the original DSD, and I don't really want to upgrade to 12.04 and hit all the issues described elsewhere). To update to itpp-dev 4.3 I need cmake 2.8.6 or higher that doesn't look to be available on 10.04. Very frustrating.

Jim
 
Status
Not open for further replies.
Top