DSD FME

n5pwp

Member
Joined
Jan 10, 2015
Messages
274
Location
Spring, Texas
no, that should be included in the ascending order. actually, it'll probably be one that you won't have the channel number for, since its not apart of the call grants
OK, I remember reading in one of the docs or somewhere in this thread that you said you made the CC 999. so I did that.
On Tier 3, they are probably all going to be pretty close together, might be worth looking into trying out an LCN calculator for Tier 3, see if that can help you any.
Actually that helped a lot. I had the calculator from back in my DSDPlus days. I popped it back up and as long as I had worked out one channel/frequency relationship I just worked my way down the the ch #s that the CC was calling and plugged them into the calculator. Some of the ch #s don't match up with the frequencies I had from the RR db. But all of the frequencies have been paired for the site 1-13. Now it seems to be working. I'm going to see if the site 1-13 frequencies match up with what the CC is calling for.

Also, I read elsewhere that my BW was too high (12.5KHz). the individual recomended 7.6KHz and I have narrowed it down and now I'm not geting as many errors as I was before.

I also discovered that I shouldn't have followed the RR db for doubling the frequencies. I only needed to have one copy of the frequency pair. I guess DSD-FME knows to pick the proper frequency for each slot.

Thanks for your help.
Mike
 

LimaZulu

Member
Joined
Jul 7, 2011
Messages
357
That's the way its supposed to work, but if it isn't working that way, could be a bug somewhere in the code. I'll have to review the code and see if there was any obvious errors along the way. Also, keep in mind, if its on a composite control channel or if it lands on that frequency while CC hunting and that group is present, it may or may not mute that group, just really depends on system type. The white list / blacklist is just to either only tune groups that are allowed with A, or block groups with a B or a DE.

Well, it seems to be a bug then

Is it possible that you have a TG value that is blocked, but that TG value is shared with a SRC value that isn't blocked. Early on, I had a request to code NXDN by examining both TG and SRC values due to TG 0 being a valid value on NXDN systems. The checkdown for a call to be blocked or not blocked examines for a TG value, and then a SRC value, so its entirely possible that the TG value has a B in it, but earlier in the list, there is a SRC value that is the same as the TG value that is allowed?

What's the log look like when it tunes to a group when running white list mode and that group isn't on your white list. It should print whether that group is A or B if its in the csv file. Is there any double prints, like [Name1][A][Name2][B]or something

TG and SRC values are different, so that's not the case
 

mtindor

OH/WV DB Admin
Database Admin
Joined
Dec 5, 2006
Messages
10,798
Location
Carroll Co OH / EN90LN
OK, I remember reading in one of the docs or somewhere in this thread that you said you made the CC 999. so I did that.

Actually that helped a lot. I had the calculator from back in my DSDPlus days. I popped it back up and as long as I had worked out one channel/frequency relationship I just worked my way down the the ch #s that the CC was calling and plugged them into the calculator. Some of the ch #s don't match up with the frequencies I had from the RR db. But all of the frequencies have been paired for the site 1-13. Now it seems to be working. I'm going to see if the site 1-13 frequencies match up with what the CC is calling for.

Also, I read elsewhere that my BW was too high (12.5KHz). the individual recomended 7.6KHz and I have narrowed it down and now I'm not geting as many errors as I was before.

I also discovered that I shouldn't have followed the RR db for doubling the frequencies. I only needed to have one copy of the frequency pair. I guess DSD-FME knows to pick the proper frequency for each slot.

Thanks for your help.
Mike

Mike,

if you do end up figuring out all the active freqs on that site and their associated LCNs, please submit an update to the RRDB for that system so that the database can be updated and other people can benefit from being able to listen.

Thanks
 

n5pwp

Member
Joined
Jan 10, 2015
Messages
274
Location
Spring, Texas
Mike,

if you do end up figuring out all the active freqs on that site and their associated LCNs, please submit an update to the RRDB for that system so that the database can be updated and other people can benefit from being able to listen.
Will do. I will check out the docs on how to do that. I have the system trunking pretty well now. I don't know any of the Talkgroups and I'm still getting calls to chan #s that point to frequencies not in the current mapping. So it appears I need to check out those frequencies. I've got site 1-14 mapped for the most active channels. I have not started on the 1-13 site yet. I'm not sure if the two systems interoperate and maybe the frequencies come from the other site. I'm not sure how CapMax TIII systems work to know if they can share voice frequencies. I will explore and report back.
Mike
 

mtindor

OH/WV DB Admin
Database Admin
Joined
Dec 5, 2006
Messages
10,798
Location
Carroll Co OH / EN90LN
Will do. I will check out the docs on how to do that. I have the system trunking pretty well now. I don't know any of the Talkgroups and I'm still getting calls to chan #s that point to frequencies not in the current mapping. So it appears I need to check out those frequencies. I've got site 1-14 mapped for the most active channels. I have not started on the 1-13 site yet. I'm not sure if the two systems interoperate and maybe the frequencies come from the other site. I'm not sure how CapMax TIII systems work to know if they can share voice frequencies. I will explore and report back.
Mike

I'd be glad to help you try to figure some of it out if you want to share what LCNs you know (from being broadcast on the CC). But this thread wouldn't be a good place to share it since I would be hijacking a thread. If you have any interest in some help (I can't help with DSD-FME itself, but with Tier III stuff) feel free to PM me. Otherwise, good luck. I'm sure you'll figure it out. I would not count on sharing of voice channels between sites, but I guess anything is a possibility.
 

n5pwp

Member
Joined
Jan 10, 2015
Messages
274
Location
Spring, Texas
I'd be glad to help you try to figure some of it out if you want to share what LCNs you know (from being broadcast on the CC).
I suppose we could use PM to work outside this thread. I have a list of the 'unknown' channels. I have been using the DMR TIII LCN Calculator to work out the frequencies but so far they are pointing to frequencies that have extremely little to no traffic. At least, that I have seen so far.
If you have any interest in some help (I can't help with DSD-FME itself, but with Tier III stuff) feel free to PM me.
Thanks, Mike. LWVMOBILE has been very helpful and patient (as you can see in this thread). Since he is the author of the program he is VERY knowledgeable.
Otherwise, good luck. I'm sure you'll figure it out.
I have submitted the info to the RRDB.

Mike
 

n5pwp

Member
Joined
Jan 10, 2015
Messages
274
Location
Spring, Texas
Now that I have the United site working I've decided to play with the TGs. In reading this thread it seems that the groups.csv file is for "Blocking' or 'Allowing' particular TGs. What I was curious about is what are the last two columns for in the file. It appears it is a Name field and a Tag field. What is the point of that information? then I thought maybe it dispalys the 'Name' or the 'Tag' field on the screen. I setup two TGs for United and when I see those two TGs appear I don't see the Name or Tag data show on the screen. I'm not sure what this file is for other than 'Allowing' or 'Blocking' certain TGs. I made sure to use commas for the CSV.

DEC Mode(A- Allow B - Block DE - Digital Enc) Name of Group Tag (do not delete this line or won't import properly)
4240115,A,Unknown,UNK
4240119,A,Maintenance,Maint

Mike
 

lwvmobile

DSD-FME
Joined
Apr 26, 2020
Messages
1,295
Location
Lafayette County, FL
The extra information in the group.csv file was honestly just never implemented. I pulled the group tags and extra meta like tags from an older project that I had worked on, EDACS-FM, and right now, those portions don't even get imported at all, they just get skipped. I just honestly didn't have any room in the ncurses display to put the extra meta tags, and decided to just use a much simpler logic to show a grouup name if available, and use the A, B, or DE. I used to use A = Analog, B = Block, D = Digital, and DE = Digital Enc back on EDACS, but that got trimmed and redone to just Allow, Block and EDACS still has DE, because I have a big SLERS csv file and don't want to change it. I think the idea was to use the meta tags like a toggle on to allow a subset for tuning, but I prefer the KISS method, if I ever do anything more complex, it'll be a completely new project where I can map out a lot of the ideas from the start, DSD-FME really is just a big ball of hacks onto the open-source DSD code, it was just never really planned with all the crazy stuff I added, I just kept adding things and tried to make a coherent working thing out of it, and this is what its come to so far.

If those groups aren't showing up at all in the ncurses terminal, and you've double checked the TG values to make sure they are still correct, then I'm not quite sure what's up with that. It could be that its not finding the group.csv file you've made when you go to load it with -G group.csv so you may need to specify the logical path to the file as well, or an absolute path if dsd-fme is running in a different folder than the group.csv file is running. At the top of the log.ans file, it should either tell you it couldn't find the group.csv file, or it'll list all your groups if it did find it.

Not found:

Code:
Build Version: AW v2.1-144-g8227b49
MBElib Version: 1.3.4
CODEC2 Support Enabled
Unable to open group file 'test.cs'

Found:

Code:
Build Version: AW v2.1-144-g8227b49
MBElib Version: 1.3.4
CODEC2 Support Enabled
4240115, A, Unknown
4240119, A, Maintenance
Audio In/Out Device: pulse
 

n5pwp

Member
Joined
Jan 10, 2015
Messages
274
Location
Spring, Texas
The extra information in the group.csv file was honestly just never implemented. I pulled the group tags and extra meta like tags from an older project that I had worked on, EDACS-FM, and right now, those portions don't even get imported at all, they just get skipped. I just honestly didn't have any room in the ncurses display to put the extra meta tags,
OK, so that explains it. They won't display on the screen because you're not importing them. Yeah, I was curious where the info would get displayed. Maybe playing around with the room reservered for displaying the TGT and SRC TG numbers (?)
if I ever do anything more complex, it'll be a completely new project where I can map out a lot of the ideas from the start, DSD-FME really is just a big ball of hacks onto the open-source DSD code,
I'll be interested to see what you come up with once you've had the opportunity to actually lay it all out ahead of time and build it the way you want rather than patching on to someone else's code. If I might, one of the things I would like to see would be a way to hold on a TG. Sometime all the jumping around once it goes back to the CC the nect channel that gets called may not be the same TG and you can't follow a conversation. OP25 has that ability and it is nice to lock it and then follow the action.

If those groups aren't showing up at all in the ncurses terminal, and you've double checked the TG values to make sure they are still correct, then I'm not quite sure what's up with that. It could be that its not finding the group.csv file you've made when you go to load it with -G group.csv so you may need to specify the logical path to the file as well, or an absolute path if dsd-fme is running in a different folder than the group.csv file is running. At the top of the log.ans file, it should either tell you it couldn't find the group.csv file, or it'll list all your groups if it did find it.
Ok, I'm confused. So you're saying it SHOULD show the tags? I thought you said you stripped that out?

Build Version: v2.1-19-g79339d0
MBElib Version: 1.3.2
Decoding DMR Stereo BS/MS Simplex
[33mRelax P25 Phase 2 MAC_SIGNAL CRC Checksum Pass/Fail
Relax DMR RAS/CRC CSBK/DATA Pass/Fail
Relax NXDN SACCH/FACCH/CAC/F2U CRC Pass/Fail
[0mChannel [00999] [936900000]
Channel [00174] [937162500]
Channel [00213] [937650000]
Channel [00215] [937675000]
Channel [00233] [937900000]
Enabling NCurses Terminal.
TCP Direct Link: localhost:7355
TCP Connection Success!
Audio In Device: tcp
Control Channel Signal Lost. Searching for Control Channel.
Tuning to Frequency: 936.900000 MHz

This is what I see in my log.ans file. It finds the channel mapping but it doesn't show the TGs.

This is my start command. I do give the absolute path to the resources. There is no complaint about not finding the -G 'groups.csv'

dsd-fme -fs -i tcp -U 4532 -T -F -C ~/examples/United_Site1-14.csv -G ~/examples/ united_groups.csv -N 2> log.ans
Mike
 

lwvmobile

DSD-FME
Joined
Apr 26, 2020
Messages
1,295
Location
Lafayette County, FL
If I might, one of the things I would like to see would be a way to hold on a TG.
Yep, I've been meaning to explore methods to do so, I even made an issue on it on my github page for me to do, I just never got around to it or thought of a simple way to do it. I think I just had an idea occur to me, so we'll see if it fleshes out or not for a TG hold. Alternatively, you could make a group.csv file with a single group you want to follow with an A tag, and then use the -W switch to run it in White List mode instead of Black List mode.

Ok, I'm confused. So you're saying it SHOULD show the tags? I thought you said you stripped that out?
the name, not the extra tags


dsd-fme -fs -i tcp -U 4532 -T -F -C ~/examples/United_Site1-14.csv -G ~/examples/ united_groups.csv -N 2> log.ans

I'm not sure if this is exactly the command you are using, but you have a space in the input for
-G ~/examples/ united_groups.csv
right between the / and united_groups.csv
 

n5pwp

Member
Joined
Jan 10, 2015
Messages
274
Location
Spring, Texas
Yep, I've been meaning to explore methods to do so, I even made an issue on it on my github page for me to do, I just never got around to it or thought of a simple way to do it. I think I just had an idea occur to me, so we'll see if it fleshes out or not for a TG hold.
I look forward to it coming to fruition.
Alternatively, you could make a group.csv file with a single group you want to follow
Ha, ha. I thought about doing that. Sounds Old School
I'm not sure if this is exactly the command you are using, but you have a space in the input for

right between the / and united_groups.csv
Damn! those things catch me every time.

Not quite sure why the' 'A printed. I would've thought the last two fields would print. Also would've thought the 'A' would be the ALLOW.
 

Attachments

  • DSD-FME With Group Info.png
    DSD-FME With Group Info.png
    453.4 KB · Views: 29

lwvmobile

DSD-FME
Joined
Apr 26, 2020
Messages
1,295
Location
Lafayette County, FL
I look forward to it coming to fruition.

Well, if you are feeling adventurous sometime, I did put some code in for DMR to allow a TG hold, but its only in the audio_work branch until it can be thoroughly tested. If you are interested in the bleeding edge version of DSD-FME (potential bugs included, not like it doesn't already have a couple of them in main) probably the safest route to test this and allow easy changing back and forth from the main branch to the audio work branch is to make a new folder, call it dsd-fme-dev or something, and you'll want to right click in that folder and open a terminal in that folder and run the commands:

Code:
git clone https://github.com/lwvmobile/dsd-fme.git
cd dsd-fme
git checkout audio_work
mkdir build
cd build
cmake ..
make -j `nproc`
sudo make install

and then you'll have the latest bleeding edge version installed. What you can do if you want to switch between versions later on on is just open the build folder for main or audio_work in the terminal (browse to it and right click and open terminal here) and just run the command sudo make install and that will install the main branch version, or the audio_work version if you are in their respective build folder.

With audio_work, in the ncurses terminal, I coded the shortcut keys 'k' and 'l' (lower case K and lower case L) to hold or clear a TG on slot 1 (k), or slot 2 (l) and some logic code to tell DSD-FME to block all tuning except to that TG, and to also, if applicable, allow that TG value to pre-empt any other call in progress and immediately tune to that TG if CSBK signalling shows that TG is active; I haven't been able to test it just yet on a remote (high speed internet is still down, so I'm on my phone's hotspot, and the only 'local'ish T3 site isn't busy right now, and signal isn't great either)

So, while a TG you want to follow is talking, what you want to do is hit 'k' if they are in Slot 1, or hit 'l' if they are in slot 2, and it'll attempt to hold on that group, only tuning that group, and also pre-empt other calls if required until you hit the k or l key again to clear the hold.

Just make sure you adjust for locations of where your channel map and group maps are if you are launching DSD-FME in a folder that is different from your csv files. Actually, just a little advice, the easiest thing I've found to do is just make a single folder for your csv files, and just always launch dsd-fme in that folder (right click, open terminal here) that way, you can just tell it the name of the files, and not worry about the logical or absolute path to those files.
 

lwvmobile

DSD-FME
Joined
Apr 26, 2020
Messages
1,295
Location
Lafayette County, FL
Not quite sure why the' 'A printed. I would've thought the last two fields would print. Also would've thought the 'A' would be the ALLOW.
Well, A is 'Allow' now, back in the days on EDACS, I used it for 'Analog', but even I don't need that now, since I figured out the difference between Analog and Digital Call grants.
 

n5pwp

Member
Joined
Jan 10, 2015
Messages
274
Location
Spring, Texas
Well, if you are feeling adventurous sometime, I did put some code in for DMR to allow a TG hold, but its only in the audio_work branch until it can be thoroughly tested. If you are interested in the bleeding edge version
That sounds like fun. I'm always up for some experimentation.
With audio_work, in the ncurses terminal, I coded the shortcut keys 'k' and 'l' (lower case K and lower case L) to hold or clear a TG on slot 1 (k), or slot 2 (l) and some logic code to tell DSD-FME to block all tuning except to that TG, and to also, if applicable, allow that TG value to pre-empt any other call in progress and immediately tune to that TG if CSBK signalling shows that TG is active;
Hmm, what if the TG moves from slot1 to slot2. Would you only hear that TG if it stays in the same slot?
I haven't been able to test it just yet on a remote (high speed internet is still down, so I'm on my phone's hotspot, and the only 'local'ish T3 site isn't busy right now, and signal isn't great either)
Luckily I was able to get on to AT&T's fiber internet earlier this year. I'm on a symmetrical 1Gbs connection now. Previously i was on comcast cable and although 75Mbs was ok for my streaming I only had 5Mbs up. Since I make screen videos and pass videos that I have converted from old VHS tapes and 8mm films I need more speed up. Of course I'm not that remote here. My SDRpp server is on a Linux machine in my office and I'm doing my streaming from a Linux laptop over my LAN.

Since this will only work on the audio module then I would need to bring up an SDRpp client on the server and play with the experimental version. I also feed ADSB/VDL2 and ACARS A/C data to a fellow enthusiast in Holland for developing software to aggregate all of the data in one program. That box is running about 45-55% CPU now. Of course can shut down the SDRPlay api program and the ADRpp server and just rung the SDRpp-dev app. I'll give it a shot and let you know how it goes.
Just make sure you adjust for locations of where your channel map and group maps are if you are launching DSD-FME in a folder that is different from your csv files. Actually, just a little advice, the easiest thing I've found to do is just make a single folder for your csv files, and just always launch dsd-fme in that folder (right click, open terminal here) that way, you can just tell it the name of the files, and not worry about the logical or absolute path to those files.
Actually that's what I'm doing now. I copied the Examples folder out to my home directory and then CD into it and run DSD-FME from there. I only entered the absolute path when we were troubleshooting why the groups.csv didn't seem to be having an affect.

By the way, the LCN mappings have now been added to the RRDB. So thatnks to you and your help and MTINDOR I was able to get the worked out.
Mike
 

n5pwp

Member
Joined
Jan 10, 2015
Messages
274
Location
Spring, Texas
Well, A is 'Allow' now, back in the days on EDACS, I used it for 'Analog', but even I don't need that now, since I figured out the difference between Analog and Digital Call grants.
Yeah, I'm blushing now. After I sent that question it dawned on me that it was there to let you know that TG was being Allowed. Don't know if 'B' shows up that its blocked or not (easy enough to find out though) but if it doesn't show it on the screen you would never know if it was blocked or not. If it shows it was allowed if not it wasn't but you wouldn't know. :cool:
Mike
 

lwvmobile

DSD-FME
Joined
Apr 26, 2020
Messages
1,295
Location
Lafayette County, FL
Hmm, what if the TG moves from slot1 to slot2. Would you only hear that TG if it stays in the same slot?
It doesn't matter, we just want to get the current talking TG of interest, if they are currently in slot 1, hit 'k', in slot 2, hit 'l', and it'll lock that TG into a hold and follow it, the subsequent slots they occur on doesn't matter. To release, just hit either key again, and it'll zero it out and resume all calls, sans whatever is blacklisted.

Luckily I was able to get on to AT&T's fiber internet earlier this year. I'm on a symmetrical 1Gbs connection now. Previously i was on comcast cable and although 75Mbs was ok for my streaming I only had 5Mbs up. Since I make screen videos and pass videos that I have converted from old VHS tapes and 8mm films I need more speed up. Of course I'm not that remote here. My SDRpp server is on a Linux machine in my office and I'm doing my streaming from a Linux laptop over my LAN.

Yeah, we had Hurricane Idalia happen, so still waiting on some of the infrastructure to be repaired, cables fixed, etc, etc. I'd probably run way over my data cap within a day or so of initiating a remote. I think for one day of remote, I had nearly 50GB or more of data transfer just for a busy screen with SDR++ waterfall. Here, we have Windstream/Kinetic (ADSL) but they are usually very stable and run at 100 MBPS Down / 25 Up or something like that, good enough, but hey, its a rural area, nobody is in a hurry to push fiber optic to the home around here. The only time I truly feel the pain of it being 'slow' is when downloading a large file or a game on Steam or something (50-100 GB) takes all day and some of the next sometimes.
 

n5pwp

Member
Joined
Jan 10, 2015
Messages
274
Location
Spring, Texas
Oh yeah, one more question: I noticed that the Tag and A/B/DE tag don't stay on the same line. Its as if there was no more room to display that text. Yet at the top of the Call History the dotted lines seem to indicate that is the printable area. Is there something else that is line wrapping the text?
 

Attachments

  • DSD-FME Line Wrap.png
    DSD-FME Line Wrap.png
    338.4 KB · Views: 19

lwvmobile

DSD-FME
Joined
Apr 26, 2020
Messages
1,295
Location
Lafayette County, FL
I noticed that the Tag and A/B/DE tag don't stay on the same line
Yeah, that's a bug. I must have entered a line break somewhere it wasn't meant to be. I noticed that a week or so ago, I can't remember if I pushed a fix for it or if I just had it fixed in some stashed code that hasn't been released yet. It might have already been fixed in the audio_work branch, I'll have to take a look at it.

By the way, the LCN mappings have now been added to the RRDB. So thatnks to you and your help and MTINDOR I was able to get the worked out.

I just looked over there and saw the LCNs loaded now, but you still have 999 for that control channel. Doing a little calculating here, I think I've figured out that the LCN value for the control channel should be 152, but not going to completely swear on that, just using the step value of 12500 and working backwards from a known LCN, I got the base frequency of 935000000 and LCN of 152.

Code:
12500 x 173 = 2162500 (173 and not 174, because valid frequencies start on channel 1, not channel 0)

937162500 - 2162500 = 935000000 (going backwards from LCN 174 to LCN 1 to find the base frequency)

935000000 + (152 × 12500) = 936900000 (Finding 152 * step = CC frequency of 936.9 Mhz)
 

lwvmobile

DSD-FME
Joined
Apr 26, 2020
Messages
1,295
Location
Lafayette County, FL
Oh yeah, one more question: I noticed that the Tag and A/B/DE tag don't stay on the same line. Its as if there was no more room to display that text. Yet at the top of the Call History the dotted lines seem to indicate that is the printable area. Is there something else that is line wrapping the text?
I just reviewed all that, and remembered, its not anything in the code, if you have any line breaks before a comma in or at the end of a TG in that csv file, then it'll do that, because it imports the line break. I had accidentally done the same thing in a csv file a week or so ago, and was scrambling to figure out what in the code broke only to realize it was an issue in the csv file that imported a line break into the string.

So, you'll want to make sure it looks like this:
Code:
DEC Mode(A- Allow B - Block DE - Digital Enc) Name of Group Tag (do not delete this li>
4240115,A,Unknown,UNK,
4240119,A,Maintenance,Maint,
1053377,A,KIWI2,Truck,

and not like this:
Code:
DEC Mode(A- Allow B - Block DE - Digital Enc) Name of Group Tag (do not delete this li>
4240115,A
,Unknown,UNK,
4240119,A,Maintenance
,Maint,
1053377,
A,KIWI2,Truck,
 

n5pwp

Member
Joined
Jan 10, 2015
Messages
274
Location
Spring, Texas
I just looked over there and saw the LCNs loaded now, but you still have 999 for that control channel. Doing a little calculating here, I think I've figured out that the LCN value for the control channel should be 152, but not going to completely swear on that, just using the step value of 12500 and working backwards from a known LCN, I got the base frequency of 935000000 and LCN of 152.
Is that a problem leaving it at 999? I thought what was more important was that it was the first line after the column headers. I think you had calculated it the 'Scientific' method and it was 153. Or maybe that was mtindor. According to the DMR TIII calculator the CC is 936.9 and the LCN comes to 153.
 
Top