DSD FME

MELERIX

Member
Joined
Nov 19, 2018
Messages
112
Reaction score
62
nothing strange in the log related with RTL

Code:
 ██████╗  ██████╗██████╗     ███████╗███╗   ███╗███████╗
 ██╔══██╗██╔════╝██╔══██╗    ██╔════╝████╗ ████║██╔════╝
 ██║  ██║╚█████╗ ██║  ██║    █████╗  ██╔████╔██║█████╗
 ██║  ██║ ╚═══██╗██║  ██║    ██╔══╝  ██║╚██╔╝██║██╔══╝
 ██████╔╝██████╔╝██████╔╝    ██║     ██║ ╚═╝ ██║███████╗
 ╚═════╝ ╚═════╝ ╚═════╝     ╚═╝     ╚═╝     ╚═╝╚══════╝
Build Version: AW 2025-216-gabf2859 (CYGWIN)
MBElib Version: 1.3.4
CODEC2 Support Enabled
Decoding P25 and DMR
Enabling NCurses Terminal.
RTL Input: Found 1 device(s):
  0:  RTLSDRBlog, Blog V4, SN: 00000001
Selected Device #0 with Serial Number: 00000001
Dev 0 Freq 868837500 Gain 20 PPM -4 BW 12 SQ 0 VOL 2
OSS Output /dev/dsp.
Using OSS Output with 8000k/2 channel configuration.
Audio In Device: rtl
Setting RTL PPM Error Set to -4
Setting RTL Bandwidth to 12000 Hz
Setting RTL RMS Squelch Level to 0
Found Rafael Micro R828D tuner
RTL-SDR Blog V4 Detected
Using RTLSDR Device Index: 0.
Tuner gain set to 19.70 dB.
Tuner error set to -4 ppm.
 (Center Frequency: 869089500 Hz.)
Oversampling input by: 84x.
Oversampling output by: 1x.
Buffer size: 8.13ms
Exact sample rate is: 1008000.009613 Hz
Sampling at 1008000 S/s.
Output at 12000 Hz.

but I think I'll need to make a video about the issue and sent it you in a private message xD
 
Last edited:

lwvmobile

DSD-FME
Joined
Apr 26, 2020
Messages
1,488
Reaction score
1,033
but I think I'll need to make a video about the issue and sent it you in a private message xD

Does it ever start decoding the control channel at any time? And 868837500 is the current control channel frequency? Have you tried different gain values?
 

MELERIX

Member
Joined
Nov 19, 2018
Messages
112
Reaction score
62
Does it ever start decoding the control channel at any time? And 868837500 is the current control channel frequency? Have you tried different gain values?

the main DSD-FME window stucks in a different frequency after few seconds and only some small values changes, like TG, SG, CH, MFID, RMS, IN LEVEL, but does not decode anything and no audio output

1781288148931.png

and yes 868837500 is the CC frequency, I've tested with different gain values but no difference due the repeater is near here (2km aprox) and most of the voice channels/frequencies have good signal too, so no ideal what could be causing the issue in RTL mode.
 

lwvmobile

DSD-FME
Joined
Apr 26, 2020
Messages
1,488
Reaction score
1,033
and yes 868837500 is the CC frequency, I've tested with different gain values but no difference due the repeater is near here (2km aprox) and most of the voice channels/frequencies have good signal too, so no ideal what could be causing the issue in RTL mode.

Looking at your image, I can see that it is decoding the control channel and that it is currently TUNER LOCKED and changed to frequency 855.5125, so the tuning logic does appear to work, but what I'm wondering now though is how well its decoding the signal that is coming in over the rtl input. If the signal is good, as you say, and there isn't any noise or anything, then I wonder if when the call grant is decoded in the log, if there is any random rtl related tuning errors or any random usb wr errors when telling the dongle to change frequencies. If there isn't anything like that, and I really don't know what else to suggest at this point.

If the signal is really strong, you might try changing the bandwidth to 24, and seeing what happens. You might even try changing it to 8 to see if that affects anything.

Other theory is that for some reason, its still locked onto the control channel (can't verify without seeing it perform in real time) but it thinks its locked onto a voice channel for some reason, which could potentially happen if some rtl related tuning error occurred and TSBK signals were still coming in.
 

gary123

Member
Joined
Sep 11, 2002
Messages
3,114
Reaction score
1,565
Could it be hanging on the Squelch value being 0?

I am thinking maybe FME thinks there is a signal present and is interpreting 'static' as a undecoded signal? Therefore its not returning to the CC when the actual signal drops.
 

MELERIX

Member
Joined
Nov 19, 2018
Messages
112
Reaction score
62
after a lot of research, seems I've found the issue, and also affect DSD-NEO... I'm not 100% sure yet, but I've tested my same batch file in a Notebook that I have here with same OS and same updates, but... it uses an INTEL CPU, specifically an Intel Core i5-3230M and guess? in this Notebook my batch file for P25P1 Trunking works fine! while in my main PC which now is an AMD Ryzen 7 5700G is where it does not works.

so, it makes me think that maybe there is a compatibility issue with AMD CPUs and DSD-FME and DSD-NEO, but as I said I'm not 100% sure yet, I have to check with same files in other AMD PC that I have somewhere, and after that I'll confirm if my hypothesis is right or not :p
 

MELERIX

Member
Joined
Nov 19, 2018
Messages
112
Reaction score
62
well, I've tested in other PC that have a AMD FX-4300 and works fine there too, so for now seems only in my main PC does not works, this is really strange xD
 

gary123

Member
Joined
Sep 11, 2002
Messages
3,114
Reaction score
1,565
I once ran into an issue where a certain file would not run on any Acer computer but ran perfectly fine on any other manufacturer. I was never able to resolve the issue and have moved on now. Could you be seeing something similar and its not CPU based?
 

MELERIX

Member
Joined
Nov 19, 2018
Messages
112
Reaction score
62
I once ran into an issue where a certain file would not run on any Acer computer but ran perfectly fine on any other manufacturer. I was never able to resolve the issue and have moved on now. Could you be seeing something similar and its not CPU based?

today I've reinstalled Windows 10 completely with all the updates and drivers properly installed, and the issue persist, but after few more research, I've discovered that the issue only happens if my RTL-SDR v4 is connected to an USB 2.0 port, but if I connect it to an USB 3.0 port it works fine.

basically, my RTL-SDR v4 works fine in USB 2.0 or 3.0 ports with DMR or analog signals in SDR# or SDR++, but in DSD-FME or NEO it fails in RTL mode for trunking when is connected in an USB 2.0 port.
 

arancormonk

DSD-neo | mbelib-neo
Joined
Dec 12, 2025
Messages
48
Reaction score
54
today I've reinstalled Windows 10 completely with all the updates and drivers properly installed, and the issue persist, but after few more research, I've discovered that the issue only happens if my RTL-SDR v4 is connected to an USB 2.0 port, but if I connect it to an USB 3.0 port it works fine.

basically, my RTL-SDR v4 works fine in USB 2.0 or 3.0 ports with DMR or analog signals in SDR# or SDR++, but in DSD-FME or NEO it fails in RTL mode for trunking when is connected in an USB 2.0 port.
does the problem machine use a MSI motherboard by chance? i have this problem with a MSI B550-A Pro mobo paired with a 5950x cpu... it seems like a USB controller/hardware issue because both the Windows and Linux rtl drivers (both V3 and V4) suffer from this exact problem on the same hardware regardless of OS. Park it on the control channel, issue a retune command (or anything really... freq, gain, ppm, etc), and 50% of the time it fails. you can try updating your BIOS/UEFI firmware to see if it helps, but no such luck in my testing with the B550. i'll check if the rtl driver supports readbacks, because i could just spam the hell out of the command until it does what it's supposed to... seems like a low level issue.
 

MELERIX

Member
Joined
Nov 19, 2018
Messages
112
Reaction score
62
does the problem machine use a MSI motherboard by chance? i have this problem with a MSI B550-A Pro mobo paired with a 5950x cpu... it seems like a USB controller/hardware issue because both the Windows and Linux rtl drivers (both V3 and V4) suffer from this exact problem on the same hardware regardless of OS. Park it on the control channel, issue a retune command (or anything really... freq, gain, ppm, etc), and 50% of the time it fails. you can try updating your BIOS/UEFI firmware to see if it helps, but no such luck in my testing with the B550. i'll check if the rtl driver supports readbacks, because i could just spam the hell out of the command until it does what it's supposed to... seems like a low level issue.

yes is a MSI mainboard, MSI B450M PRO-VDH PLUS and CPU is AMD Ryzen 7 5700G, BIOS is already updated, even chipset drivers.

maybe is a compatibility issue with Ryzen CPUs in the core of DSD-FME and NEO, maybe something related with USB 2.0 port bandwidth? but the strangest thing is that only in RTL Trunk mode fails, but if I test in TCP RIGCTL Trunk mode with SDR++ it works fine even in a USB 2.0 port.
 

lwvmobile

DSD-FME
Joined
Apr 26, 2020
Messages
1,488
Reaction score
1,033
The AMD / USB issue is a known issue to effect a range of B450 and B550 board and CPU combinations. You can google search all about it, or read other related issues from users on this board found here.

 

MELERIX

Member
Joined
Nov 19, 2018
Messages
112
Reaction score
62
btw, I'm trying to test Moto Basic Privacy with multi key file and a wav file, but it seems is not working or I'm misunderstanding how the format of the multikey file should be?

for example, with a wav (mono and 96khz) file from a DMR signal which I know the BP is 59 if I use this command line:

Code:
.\dsd-fme\dsd-fme.exe -i BP59.wav -s 96000 -b 59
it works fine, and the audio is decoded properly ;)

but... if I try the same with a multi key file like this:

Code:
.\dsd-fme\dsd-fme.exe -i BP59.wav -s 96000 -k multi_key.csv

and the key file like this (in order to guess the key)

Code:
key id or tg id (dec), key number or value (dec) //NXDN Scrambler, BP, 10-char Hytera BP only
1,58
2,59
3,60

DSD-FME load the keys at start (in the console):

Code:
 ██████╗  ██████╗██████╗     ███████╗███╗   ███╗███████╗
 ██╔══██╗██╔════╝██╔══██╗    ██╔════╝████╗ ████║██╔════╝
 ██║  ██║╚█████╗ ██║  ██║    █████╗  ██╔████╔██║█████╗
 ██║  ██║ ╚═══██╗██║  ██║    ██╔══╝  ██║╚██╔╝██║██╔══╝
 ██████╔╝██████╔╝██████╔╝    ██║     ██║ ╚═╝ ██║███████╗
 ╚═════╝ ╚═════╝ ╚═════╝     ╚═╝     ╚═╝     ╚═╝╚══════╝
Build Version: AW 2025-216-gabf2859 (CYGWIN)
MBElib Version: 1.3.4
CODEC2 Support Enabled
Key [001] [00058]
Key [002] [00059]
Key [003] [00060]

but does not use the keys to decode the audio, so I've tested like this (using the TG 34900)

Code:
key id or tg id (dec), key number or value (dec) //NXDN Scrambler, BP, 10-char Hytera BP only
349000,59

and it works, but, if i try with more keys (for guessing) like this:

Code:
key id or tg id (dec), key number or value (dec) //NXDN Scrambler, BP, 10-char Hytera BP only
349000,58
349000,59
349000,60

it only uses the last one (60) and not the others, so does not work.
 
Last edited:

lwvmobile

DSD-FME
Joined
Apr 26, 2020
Messages
1,488
Reaction score
1,033
There is no key id value associated with Motorola BP that is send OTA. You can load them, however, by the TG value. Also, its not going to try to make "guesses" for you. If you load multiple keys as the same id or tg value, its going to overwrite itself each time and only the last one will be entered.
 

gary123

Member
Joined
Sep 11, 2002
Messages
3,114
Reaction score
1,565
LOL its so obvious that we all missed it. Iwvmobile is correct almost all BP do not send a KID. They simply perform the XOR with the generated key bits.
 

MELERIX

Member
Joined
Nov 19, 2018
Messages
112
Reaction score
62
LOL its so obvious that we all missed it. Iwvmobile is correct almost all BP do not send a KID. They simply perform the XOR with the generated key bits.

yes, anyway I've created a batch for guessing BP keys, so I'll put it here if somebody needs (it may take a severa minutes and you have to be listening the audio attentively to know if the right key or not, especially if the audio file is big xD so procure to use small audio files)

Code:
@echo off
cls
title Moto BP Key finder
setlocal enabledelayedexpansion

for /L %%K in (1,1,255) do (
    echo Testing Moto BP Key %%K
    .\dsd-fme\dsd-fme.exe -i YOURAUDIOFILEHERE.wav -s 96000 -b %%K >NUL 2>NUL
)
pause
 
Top