dsdcc


Steve <kb9mwr@...>
 

There is a new C++ rewrite of dsd, the digital speech decoder, that can decode P25, DMR, D-Star etc. It's called dsdcc ( https://github.com/f4exb/dsdcc ) It also supports doing the decoding with a AMBE hardware dongle.

Wondering if anyone has tried it? I recently tried giving it a go on a Raspberry Pi 2 (not sure that will have enough snot), but ran into endless problems with dsdcc and its output to the pi sound. I get "Error writing to output" when when I try and tell it to use-o ( Audio output device) hw:0,0 .  Same error after I install alsa-oss and do the modprobe to enable /dev/dsp.

The prior version of dsd supports port audio, this one doesn't appear to.

pi@raspberrypi:~ $ dsdccx -help
DSDDstar::reset_header_strings
DSDDecoder::resetFrameSync: symbol 0 (0)
Digital Speech Decoder DSDcc

Usage:
  dsd [options] Live scanner mode
  dsd -h        Show help

Display Options:
  -e            Show Frame Info and errorbars (default)
  -pe           Show P25 encryption sync bits - not supported
  -pl           Show P25 link control bits - not supported
  -ps           Show P25 status bits and low speed data - not supported
  -pt           Show P25 talkgroup info - not supported
  -q            Don't show Frame Info/errorbars
  -t            Show symbol timing during sync
  -v <num>      Frame information Verbosity

Input/Output options:
  -i <device>   Audio input device (default is /dev/audio, - for piped stdin)
  -o <device>   Audio output device (default is /dev/audio, - for stdout)
  -g <num>      Audio output gain (default = 0 = auto, disable = -1)
  -U <num>      Audio output upsampling
                0: no upsampling (8k) default
                6: normal upsampling to 48k
                7: 7x upsampling to trade audio drops against bad audio quality
  -n            Do not send synthesized speech to audio output device
  -L <filename> Log messages to file with file name <filename>. Default is stderr
                If file name is invalid messages will go to stderr
  -D <device>   Use DVSI AMBE3000 based device for AMBE decoding (e.g. ThumbDV)
                You must have compiled with serialDV support (see Readme.md)
                Device name is the corresponding TTY USB device e.g /dev/ttyUSB0

Scanner control options:
  -R <num>      Resume scan after <num> TDULC frames or any PDU or TSDU

Decoder options:
  -d <num>      Set data rate:
     0          2400 bauds
     1          4800 bauds (default)
     2          9800 bauds
  -fa           Auto-detect frame type (default)
  -fr           Decode only DMR/MOTOTRBO
  -fd           Decode only D-STAR
  -fm           Decode only DPMR Tier 1 or 2 (6.25 kHz)
  -fy           Decode only YSF
  -fi           Decode only NXDN48 (6.25 kHz) / IDAS* - detection only
  -fn           Decode only NXDN96 (12.5 kHz)  - detection only
  -f1           Decode only P25 Phase 1 - not supported
  -fp           Decode only ProVoice - not supported
  -fx           Decode only X2-TDMA - not supported
  -T <num>      TDMA slots processed:
     0          none
     1          slot #1 (default) use this one for FDMA
     2          slot #2
     3          slots #1+2 mixed
  -l            Disable matched filter
  -pu           Unmute Encrypted P25 - not supported
  -u <num>      Unvoiced speech quality (default=3)

pi@raspberrypi:~ $

Join ambe@nw-digital-radio.groups.io to automatically receive all group messages.