DSD FME

EI9BAB

Member
Joined
Sep 3, 2021
Messages
58
Dongle Input Issues
Maybe someone can give me some suggestions here. I can use DSD-FME to decode signals very successfully with audio input but when use I use a dongle directly with the -i rtl: option for DMR decoding, especially with some weaker signals, then I just get a load of decoding errors (regardless of gain, bandwidth and ppm adjustment values). However, if I use the same dongle and first push the audio through FMP24, SDR# or SDR++ (with the same signal parameters) then DSD-FME decodes the same channel much much better. (I have tried both older V3 RTL-SDR dongles and the newer V4 ones and I have also then applied the latest drivers for these.) I know that they do work because on stronger signals in a slightly higher frequency range they receive those signals perfectly fine with no signifcant errors. Also, SDRTrunk appears much better able to decode these same frequencies much better with the same settings on the same computers.

I find FMP24 with the -N2 (Noise Filter 2) option works the best for me to tweak the audio with most frequencies in my location. However, I would really like to run this on a Raspberry Pi (with a Debian flavoured OS) but as it is a trunked system I need fast switching speeds and I have had some stability/link issues with TCP control of SDR++ and the other two options are more Windows-centric (although I know I could possibly run FPMx under Wine). I should be able to get this to work natively so it is very frustrating.

Possibly these other programs simply have some built in signal filtering that is just missing from DSD-FME and I'll just have to stick with SDRTrunk or something for this project but I'll probably need an extra dongle with that and there are some features in DSD-FME that I would really like to use so hoping someone can assist.
 

lwvmobile

DSD-FME
Joined
Apr 26, 2020
Messages
1,297
Location
Lafayette County, FL
Maybe someone can give me some suggestions here. I can use DSD-FME to decode signals very successfully with audio input but when use I use a dongle directly with the -i rtl: option for DMR decoding, especially with some weaker signals, then I just get a load of decoding errors (regardless of gain, bandwidth and ppm adjustment values). However, if I use the same dongle and first push the audio through FMP24, SDR# or SDR++ (with the same signal parameters) then DSD-FME decodes the same channel much much better. (I have tried both older V3 RTL-SDR dongles and the newer V4 ones and I have also then applied the latest drivers for these.) I know that they do work because on stronger signals in a slightly higher frequency range they receive those signals perfectly fine with no signifcant errors. Also, SDRTrunk appears much better able to decode these same frequencies much better with the same settings on the same computers.

Its a known issue with weak or marginal signal and using the RTL dongle internally with the rtl_fm handling. rtl_fm isn't good with weaker signal, so compared to the DSP stack in SDR++, or similar, its not going to work nearly as well. If the signal is good and strong, or decent, its usually fine, but weak signal, your better off with one of the other options. Unfortunately, on a Pi, you are a bit more limited on options to use for input. Maybe in the future, I can work out a better internal handling for using rtl input, or have an resource friendly input method that can use multiple devices and do a better job that rtl_fm can do with the internal handling.

Did you try the AGC gain on the rtl input by using gain value of 0?
 

lwvmobile

DSD-FME
Joined
Apr 26, 2020
Messages
1,297
Location
Lafayette County, FL
Another suggestion would be to use GQRX, it has a 'remote control' feature which is basically just RIGCTL, and use it with virtual sinks as the input method. I was able to successfully trunk with GQRX in the past during the testing phase, but haven't used it recently. I believe a certain person told me to use BW 12000 and max dev at APT 25 maybe. It should be a bit more resource friendly than using SDR++ at any rate.
 

URTK

Newbie
Joined
Mar 22, 2024
Messages
3
First of all, I would like to express my gratitude to the author for DSD-FME! This is a great tool today!
I'm new here, but I've looked through the previous pages of this thread and haven't found the answer to my question.
How to change Input level from RTL to DSD-FME? I'm using on Win 10 and I don't have any additional level control panel. I don’t really understand how I could change the level and make it higher - now the input is 30-40% and this is not enough to adequate decoding DMR.
Now I use it like this: dsd-fme.exe -i rtl:1:XXXM:38:0:12:25 -C examples\capacity_plus_chan.csv -1 1234567890 -fs -N -t2 -o pulse 2> log.ans
Thank you!
 

Attachments

  • level.PNG
    level.PNG
    17 KB · Views: 35

DaveNF2G

Member
Premium Subscriber
Joined
Jul 8, 2023
Messages
362
Location
Latham, NY
First of all, I would like to express my gratitude to the author for DSD-FME! This is a great tool today!
I'm new here, but I've looked through the previous pages of this thread and haven't found the answer to my question.
How to change Input level from RTL to DSD-FME? I'm using on Win 10 and I don't have any additional level control panel. I don’t really understand how I could change the level and make it higher - now the input is 30-40% and this is not enough to adequate decoding DMR.
Now I use it like this: dsd-fme.exe -i rtl:1:XXXM:38:0:12:25 -C examples\capacity_plus_chan.csv -1 1234567890 -fs -N -t2 -o pulse 2> log.ans
Thank you!
I sounds like your receiver needs more gain. That would be controlled by whatever program you are using to run it.
 

URTK

Newbie
Joined
Mar 22, 2024
Messages
3
I only use DSD-FME. But with RTL I don’t see where I can use audio amplification at the input to FME
 

DaveNF2G

Member
Premium Subscriber
Joined
Jul 8, 2023
Messages
362
Location
Latham, NY
I only use DSD-FME. But with RTL I don’t see where I can use audio amplification at the input to FME
I see a line on your screen that says Gain: 38dB.

In your command line, you have -i rtl:1:XXXM:38:0:12:25

I would try editing that 38 to a higher number.
 

Ubbe

Member
Joined
Sep 8, 2006
Messages
9,723
Location
Stockholm, Sweden
38dB of RF gain are around the max you can use in a RTL-SDR dongle. I use 36dB and then I am in a very weak RF area with no nearby transmitters. Increasing the gain any more than that and it just raise the noise floor and the S/N goes worse.

I use SDR# to tune and demodulate the signal and can set the audio level from that and then feed DSD-FME with a high enough audio signal.

/Ubbe
 

lwvmobile

DSD-FME
Joined
Apr 26, 2020
Messages
1,297
Location
Lafayette County, FL
How to change Input level from RTL to DSD-FME?

I have a method internally in the code that can multiply the sample values gathered from the rtl_fm input method, but its not exposed to the user. I think I'm going to drop the UDP port portion of the RTL input string and replace it with the multiplier value, and that will in effect, increase the level in. I've been doing some preliminary tests on a Cap+ system that drops a lot of beacon CSBKs when using the rtl_fm input, and going from 1 to 2 multiplier seems to improve that, so not today, but in a future release, you'll be able to manipulate those values a bit.
 

URTK

Newbie
Joined
Mar 22, 2024
Messages
3
so not today, but in a future release, you'll be able to manipulate those values a bit.
Thank you very much!
I don't know why other participants paid attention to RF amplification. We were, of course, talking about the audio input.

And I have another test for you if you're interested.
If you use **tera 10/64 and the radio system uses OTAE, decoding with the correct key will not be possible. OTAE has no effect on voice encryption, but FME cannot properly decode voice with the correct **tera 10/64 key.

I can send you the recordings, but unfortunately I only have them in sdr# IQ because... I don't know how to use sdr++ and other output tools.
 

noamlivne

Member
Joined
Sep 7, 2012
Messages
187
Thank you very much!
I don't know why other participants paid attention to RF amplification. We were, of course, talking about the audio input.

And I have another test for you if you're interested.
If you use **tera 10/64 and the radio system uses OTAE, decoding with the correct key will not be possible. OTAE has no effect on voice encryption, but FME cannot properly decode voice with the correct **tera 10/64 key.

I can send you the recordings, but unfortunately I only have them in sdr# IQ because... I don't know how to use sdr++ and other output tools.
For OTAE, use the -4 option, as well, to force it.
 

Hunno

Member
Joined
Sep 26, 2019
Messages
13
Hello.
I need help, I am desperate.
I'm not a programmer, or someone who works with linux, but I don't understand how to install dsd fme in windows? I found the wiki on Github, but the links under "Fully automated installation" are not active. I tried installing via docker, I don't understand where to put what files.... There is nothing described... Is there no youtube video on how to do this?

I would like some help on how to install dsd fme in windows. If this is at all possible....
 

racingfan360

Member
Joined
Dec 19, 2005
Messages
1,180
I would like some help on how to install dsd fme in windows. If this is at all possible....
To gte started, try downloading the first zip file listed on this page, unzip and follow the instructions in the readme file:
 

scanfan03

Member
Premium Subscriber
Joined
Jun 2, 2003
Messages
1,701
Location
Houston, Texas
There technically is no installation. You put all of the files in a folder, then run a bat file that will call the appropriate exe. So download both zip files in the above link then unzip them, then run DSD-FME.
 

Hunno

Member
Joined
Sep 26, 2019
Messages
13
I am grateful for your reply.
I think I have been doing that, but something is wrong. It seems to be a complicated launch.
It is not clear how to specify input, output, etc..
If someone could make a short screen recording of how to do all this, I would be extremely grateful. I think it would help more than just me.
 

scanfan03

Member
Premium Subscriber
Joined
Jun 2, 2003
Messages
1,701
Location
Houston, Texas
It's better to input from another SDR "tuner" software like SDR++. I tried SDR# with DSD-FME and it didn't like it. But, it's supposed to be all the same. You use the tuner software to interface with the SDR and tells the SDR which frequency to tune to. The tuner software then interfaces with DSD-FME through a local TCP connection (literally internally to the computer) which then decodes the data and ports the decoded data to your computer speakers (digital voice). For trunking, DSD-FME then interfaces back to the tuner software through UDP and tells it what voice channel to tune to, then sends the signal back to DSD-FME which decodes the audio and plays it on your speakers.

So with that said you have to open your tuner software first (aka SDR++, SDR#, etc...), then set up the TCP and UDP servers. Once those are running you open DSD-FME through the .bat files.

From what I think I read, DSD-FME doesn't really support direct input of RTL-SDRs very well (correct me if I'm wrong). So with that said you will HAVE to have 2 different programs open to have it receive.
 

ki4hyf

Member
Premium Subscriber
Joined
Mar 2, 2005
Messages
217
Location
Jackson, TN
From what I think I read, DSD-FME doesn't really support direct input of RTL-SDRs very well
It does. Works real well for me, and it just keeps getting better. I rarely use anything else, but I also don't do Windows, so YMMV.
 

tsapers

Member
Joined
Aug 25, 2011
Messages
68
I'm not quite sure I understand the behavior you are seeking from FME? Do you want it to report the payload on all AMBE frames for personal analysis, or do you want it to tell you when that exact frame F801A99F8CE080 occurs, or do you want it to tell you when any AMBE frame that is classed as a 'Silent Frame' occurs?
Hi and thanks for all the effort on this software.
What would it mean if one gets clear speech on frame F801A99F8CE000 instead of F801A99F8CE080? Would this mean the BP key is close, but not exact or more a case of bad decode?

Also, does Hytera BP also have a set number of keys as with MotoTrbo BP? (255 DEC)
 

lwvmobile

DSD-FME
Joined
Apr 26, 2020
Messages
1,297
Location
Lafayette County, FL
What would it mean if one gets clear speech on frame F801A99F8CE000 instead of F801A99F8CE080? Would this mean the BP key is close, but not exact or more a case of bad decode?

Nothing, really. The was F801A99F8CE080 is presented as output from dsd-fme, the last octet (80) only has one significant bit in it, its just packed so that it is either 80 or 00. Could be just a random decode error, but given how insignificant the bit is, probably is completely unnoticeable as far as voice quality, or lack thereof, since its silence. As far as Motorola BP, I don't even apply the bp keystream to that last bit, I just apply it to the 48-bits, since Moto BP is essentially a 16-bit key repeated three times with a small hole punch in one 4-bit range. Its possible that one bit from the keystream is supposed to be applied to the 49th bit, but honestly, nobody would be able to hear the difference if I did it or didn't do it. Honestly, just my opinion, if you were 'evaluating' AMBE frames for any particular purpose, I'd just ignore the last 2 hex values (the 00 or 80 value) since again, its only 1 bit of significance (the 49th bit of the AMBE frame).

Also, does Hytera BP also have a set number of keys as with MotoTrbo BP? (255 DEC)

Not that I'm aware of. Somebody can correct me if I'm wrong, but it can be any value from 1 up to its number of bits, be it 40, 128, or 256. (10/32/64 char keys).

EDIT: When I say number of bits, I mean if its a 40 bit key, it can be any value in the range of 1 to 0xFFFFFFFFFF;
 
Top