DSD FME

radioopperator

Member
Feed Provider
Joined
Apr 15, 2019
Messages
375
Reaction score
86
It errors out on me ?
This is what I'm trying to run only edited at bottom
@rem Digital Speech Decoder: Florida Man Edition
@rem DSD-FME Cygwin Windows Portable Builds
@rem
@rem The source code of this software can be downloaded here:
@rem GitHub - lwvmobile/dsd-fme: Digital Speech Decoder - Florida Man Edition
@rem
@rem If you paid for, or were otherwise fleeced for this software, DEMAND YOUR MONEY BACK!
@rem
@rem This software is designed to be used with an SDR receiver (like SDR++ or SDR#) with TCP input,
@rem RTL Input, media file playback over virtual cables or null-sinks, or a Discriminator Tap input
@rem
@rem The complete options list can be seen by viewing complete_usage_options.txt
@rem Many examples can be found in example_options.txt
@rem
@rem Enjoy!

@rem Regarding the options string (or any string in .bat files)
@rem If your string may contain spaces, set the first '"' before options, and then an ending '"'
@rem Incorrect: set options="-fs -N -Z"
@rem Correct: set "options=-fs -N -Z"

@rem set options to pass to dsd-fme
set "options= -N -Z "

@rem Set Date Time for log (sourced from: Format date and time in a Windows batch script)
@Echo off
REM "%date: =0%" replaces spaces with zeros
set d=%date: =0%
REM "set yyyy=%d:~-4%" pulls the last 4 characters
set yyyy=%d:~-4%
set mm=%d:~4,2%
set dd=%d:~7,2%
set dow=%d:~0,3%
set d=%yyyy%%mm%%dd%

set t=%TIME: =0%
REM "%t::=%" removes semi-colons
REM Instead of above, you could use "%t::=-%" to
REM replace semi-colons with hyphens (or any
REM non-special character)
set t=%t::=%
set t=%t:.=%

set datetimestr=%d%_%t%
@rem @Echo Long date time str = %datetimestr%

@rem random number is used so that two log files don't share the same name
set rnd=%RANDOM%

@rem set log file relative filepath
set "log=.\logs\log_%datetimestr%_%rnd%.txt"

@rem create the log file now with touch
.\dsd-fme\touch.exe %log%

@rem Launch Tail to display the log in a seperate console window
start .\dsd-fme\tail.exe -n 40 -f %log%
@rem start dsd-fme with options and log
@REM.\dsd-fme\dsd-fme.exe %options% 2> %log%
.\dsd-fme\dsd-fme.exe -ft -i rtl:1:770.61875M:0:32:12:0 -T -K multi_key_hex.csv -N -H -Z -c capture.bin 2> log.ans
echo ----------------------------------------------------------------------------------
echo ----------------------------------------------------------------------------------
echo For any errors, see: %log%
echo Forward %log% and Options: "%options%"
echo to developer on Github or Radio Reference for troubleshooting.
echo ----------------------------------------------------------------------------------
echo ----------------------------------------------------------------------------------

@rem Set pause to diplay above message
PAUSE
 
Last edited:

lwvmobile

DSD-FME
Joined
Apr 26, 2020
Messages
1,440
Reaction score
992
Location
Lafayette County, FL
What command did you end up running, or what did you end up with in your bat file?

Not sure if you meant to or not, but this is in the forum, and not in the private messages, so not sure if you are replying to that conversation, or to something else here.
 

ki4hyf

Ridin' Dirty
Premium Subscriber
Joined
Mar 2, 2005
Messages
290
Reaction score
129
Location
Jackson, TN
.\dsd-fme\dsd-fme.exe -ft -i rtl:1:770.61875M:0:32:12:0 -T -K multi_key_hex.csv -N -H -Z -c capture.bin 2> log.ans
Options are very important. Unlike Homer, computers can't read minds or dismiss input errors. You are missing the "-C" and it's corresponding channel map file. Also, there's a stray "-H" that shouldn't be there, otherwise it looks good. BTW, %XXX% is windows way of using variables in batch files.
 

bcorbin

Member
Premium Subscriber
Joined
Jan 14, 2004
Messages
273
Reaction score
29
Location
Los Angeles
Out of curiosity... has anyone managed to get dsd-fme working in FreeBSD? I can get it to compile with minimal persuasion, it monitors a Phase I control channel just fine, but it crashes when a TDMA slot is assigned.

./dsd-fme -T -ft -i rtl:1:774.26875M:39:62:24:0:2
 

lwvmobile

DSD-FME
Joined
Apr 26, 2020
Messages
1,440
Reaction score
992
Location
Lafayette County, FL
Out of curiosity... has anyone managed to get dsd-fme working in FreeBSD? I can get it to compile with minimal persuasion, it monitors a Phase I control channel just fine, but it crashes when a TDMA slot is assigned.
What is the error when it crashes? Or what is the last things dumped into the console before it crashes, would be helpful to know what happens to cause it.
 

ki4hyf

Ridin' Dirty
Premium Subscriber
Joined
Mar 2, 2005
Messages
290
Reaction score
129
Location
Jackson, TN
You are missing the "-C" and it's corresponding channel map file.
@radioopperator, I was wrong about that. I missed lwvmobile's earlier reply "Also, just a note, but if you are doing P25, you don't need to specify the channel_map.csv file, that's just for systems that don't advertise their channel assignments.". I learn something new every day.

Were you able to get it working?
 

bcorbin

Member
Premium Subscriber
Joined
Jan 14, 2004
Messages
273
Reaction score
29
Location
Los Angeles
You have the ppm correction set to 62ppm, that's huge and could be the reason it crashes, it's an impossible value.

/Ubbe

Would that that were so, but - no - 62ppm brings this particular dongle (an older, blue, nooelec) into calibration. You can actually run up past 62ppm and watch the calibration signal drift off in the other direction.

I get the same crashes on a much newer dongle that is calibrated to 0 ppm correction.
 

bcorbin

Member
Premium Subscriber
Joined
Jan 14, 2004
Messages
273
Reaction score
29
Location
Los Angeles
What is the error when it crashes? Or what is the last things dumped into the console before it crashes, would be helpful to know what happens to cause it.

Yeah, sorry about that - when I posted this morning, I was still on my first pot of coffee 8*)

These are the last lines I see before the crash.

15:00:13 Sync: +P25p1 WACN: BEE00; SYS: 69F; NAC/CC: 690; Site: 021; RFSS: 001; TSBK
Secondary Control Channel Broadcast - Implicit
RFSS[001] SITE ID [021] CHAN1 [17AA] SSC [04] CHAN2 [17AA] SSC [04]
Frequency [774.268750] MHz
Frequency [774.268750] MHz
Group Voice Channel Grant Update - Implicit
Channel 1 [3782] Group 1 [2183][0887]
Frequency [774.018750] MHz
Channel 2 [375A] Group 2 [6][0006]
Frequency [773.768750] MHz
15:00:13 Sync: +P25p2 WACN: BEE00; SYS: 69F; NAC/CC: 690; Site: 021; RFSS: 001;
15:00:14 P25p2 LCH 0 4V 1
15:00:14 P25p2 LCH 1 4V 1
15:00:14 P25p2 LCH 0 4V 2
15:00:14 P25p2 LCH 1 DUID ERR -1
15:00:14 Sync: +P25p2 WACN: BEE00; SYS: 69F; NAC/CC: 690; Site: 021; RFSS: 001;
15:00:14 P25p2 SACCH Illegal instruction (core dumped)

and started again...

15:04:30 Sync: +P25p1 WACN: BEE00; SYS: 69F; NAC/CC: 690; Site: 021; RFSS: 001; TSBK
Encrypted Group Voice Channel Grant
SVC [44] CHAN [375A] Group [2512] Source [1961884]
Frequency [773.768750] MHz
15:04:30 Sync: +P25p2 WACN: BEE00; SYS: 69F; NAC/CC: 690; Site: 021; RFSS: 001;
15:04:30 P25p2 LCH 0 Illegal instruction (core dumped)

Similar behavior on two different FreeBSD boxes with two different dongles.
 

lwvmobile

DSD-FME
Joined
Apr 26, 2020
Messages
1,440
Reaction score
992
Location
Lafayette County, FL
Yeah, sorry about that - when I posted this morning, I was still on my first pot of coffee 8*)

These are the last lines I see before the crash.

Not quite sure, seems like it tries to make it partially through a phase 2 frame before dying.

By chance, do you know if there is any audio playback at all, is the audio device output working properly?

One way to test, see what happens when you run with the -o null argument, I want to see if its related to not having an audio device open and attempting to playback audio causing that. If it crashes with the above argument, then we can most likely remove audio device as a reason for the crash.

Other than that, I would have to get FreeBSD going on a VM sometime and see if I can troubleshoot and figure out what is going on.

Was there any compiler warnings when you compiled and installed dsd-fme?
 

Ubbe

Member
Joined
Sep 8, 2006
Messages
10,674
Reaction score
4,426
Location
Stockholm, Sweden
Would that that were so, but - no - 62ppm brings this particular dongle (an older, blue, nooelec) into calibration.
It's 48KHz off, almost 4 channels! And as you say that it drifts, I wouldn't be using it for digital signals.

/Ubbe
 

bcorbin

Member
Premium Subscriber
Joined
Jan 14, 2004
Messages
273
Reaction score
29
Location
Los Angeles
Not quite sure, seems like it tries to make it partially through a phase 2 frame before dying.

By chance, do you know if there is any audio playback at all, is the audio device output working properly?

One way to test, see what happens when you run with the -o null argument, I want to see if its related to not having an audio device open and attempting to playback audio causing that. If it crashes with the above argument, then we can most likely remove audio device as a reason for the crash.

Other than that, I would have to get FreeBSD going on a VM sometime and see if I can troubleshoot and figure out what is going on.

Was there any compiler warnings when you compiled and installed dsd-fme?

Adding -o null still produces the same crashes.

There are compiler warnings, for sure - not unexpected - since FreeBSD defaults to clang over gcc. If you're really curious, I can pm you - but I didn't really intend to rope you into this... I was just checking to see if anyone else had found a solution before I put any more time into it. I am grateful for the response, though!!

It's 48KHz off, almost 4 channels! And as you say that it drifts, I wouldn't be using it for digital signals.

/Ubbe

No... I said the calibration peak drifts through the waterfall as I increase the correction... or, maybe, I should have said that 8*). The dongle is stable - the large correction (which has remained constant over an interval measured in years) is due to the fact that this was manufactured back in the days when the principle market for SDR dongles was digital-TV over your computer. Calibration wasn't a serious consideration until hobbyists started buying up all the stock 8*)
 

lwvmobile

DSD-FME
Joined
Apr 26, 2020
Messages
1,440
Reaction score
992
Location
Lafayette County, FL
Adding -o null still produces the same crashes.

There are compiler warnings, for sure - not unexpected - since FreeBSD defaults to clang over gcc. If you're really curious, I can pm you - but I didn't really intend to rope you into this... I was just checking to see if anyone else had found a solution before I put any more time into it. I am grateful for the response, though!!

Yeah, just send me a copy and paste of all the compiler warning and what not, if nothing else, maybe we can pinpoint what is causing the issue.
 

bcorbin

Member
Premium Subscriber
Joined
Jan 14, 2004
Messages
273
Reaction score
29
Location
Los Angeles
I think I've got it! Well... I've verified that the following procedure will lead to a binary on FreeBSD that will decode and play audio for P25p1 and DMR and it's no longer crashing on TDMA channel grants on P25p2. I've not verified that I've actually got audio on P25p2, yet, as there's very little traffic in the clear on that particular system, but I've got reason to be hopeful 8*)


1) build libitpp:
cd build
cmake .. -DCMAKE_CXX_COMPILER:FILEPATH=/usr/local/bin/g++13 -DCMAKE_C_COMPILER:FILEPATH=/usr/local/bin/gcc13
make install

2) build mbelib:
cd build
cmake .. -DCMAKE_CXX_COMPILER:FILEPATH=/usr/local/bin/g++13 -DCMAKE_C_COMPILER:FILEPATH=/usr/local/bin/gcc13
make install

3) build dsd-fme:
cd src
add the following line to rtl_sdr_fm.cpp (in the block of include statements):
#include <sys/socket.h>
cd ../build
cmake .. -DCURSES_INCLUDE_PATH=/usr/local/include/ncurses -DCMAKE_CXX_COMPILER:FILEPATH=/usr/local/bin/g++13 -DCMAKE_C_COMPILER:FILEPATH=/usr/local/bin/gcc13

...and that should do it.

For some reason, the call history lines in the ncurses terminal are a mess. That's not a feature I need, so I'll leave that fight for another day...
 

lwvmobile

DSD-FME
Joined
Apr 26, 2020
Messages
1,440
Reaction score
992
Location
Lafayette County, FL
Sounds like a winner to me then.

For some reason, the call history lines in the ncurses terminal are a mess. That's not a feature I need, so I'll leave that fight for another day...
Which version are you currently running? If you haven't, I'm currently working on the event_history branch on Github, its going to have an all new event history to replace the old call history. If you have time, can you compile that and see if the same issues persist.
 

bcorbin

Member
Premium Subscriber
Joined
Jan 14, 2004
Messages
273
Reaction score
29
Location
Los Angeles
Sounds like a winner to me then.


Which version are you currently running? If you haven't, I'm currently working on the event_history branch on Github, its going to have an all new event history to replace the old call history. If you have time, can you compile that and see if the same issues persist.

Very much a winner.

I did a git clone yesterday, so I should be pretty up-to-date:
Build Version: AW 2025-92-g8bfdeee

Tacking a 2>log to the end of the command line sweeps the problem under the rug - unless - I'm sitting on the local NXDN trunked system (for some reason, the history is not being redirected to the log in that case).
 

dmrcoms

Newbie
Joined
Feb 15, 2024
Messages
1
Reaction score
1
Location
España
Good night!! and Greetings to all members of the FME group!! I'm new to the forum and very new to compilation topics and I'm learning by reading this group!!
Congratulations to the creator of FME..lwvmobile!! Excellent tool!! Thanks for all your time!! and also to all the members who collaborate!!
As I already said, I am very new and I am learning!! I have FME installed and it works perfectly!!
I have a question.
I found a video on YouTube of a person who has an FME dsd with AES256 and it caught my attention.
It's a private version!! It already says it and it is not Public.
My question is if in the future you will release the version with AES256? or if they are working on it??
This is the link to the FME video with AES256 published on YouTube.


I continue studying and learning from this excellent FME thread!!
Greetings to everyone from Spain!!
 

lwvmobile

DSD-FME
Joined
Apr 26, 2020
Messages
1,440
Reaction score
992
Location
Lafayette County, FL
I wonder who the stud in the video is? That's a manly French Canadien voice if I ever heard one :ROFLMAO:. Rumor is he may have assisted in adding advanced encryption to OP25.

Good night!! and Greetings to all members of the FME group!! I'm new to the forum and very new to compilation topics and I'm learning by reading this group!!
Congratulations to the creator of FME..lwvmobile!! Excellent tool!! Thanks for all your time!! and also to all the members who collaborate!!
As I already said, I am very new and I am learning!! I have FME installed and it works perfectly!!
I have a question.
I found a video on YouTube of a person who has an FME dsd with AES256 and it caught my attention.
It's a private version!! It already says it and it is not Public.
My question is if in the future you will release the version with AES256? or if they are working on it??
This is the link to the FME video with AES256 published on YouTube.

Well, I can't speak for what's going to happen in the future, but I wouldn't put it past me to add DES, DES-XL, AES128, AES256, Hytera Enhanced RC4, Scrambler, PDU Decryption, etc into DSD-FME.

Edit: With a known key, of course.
 
Last edited:
Top