Passing DTMF on local repeater

Is there anyway to pass DTMF tones locally on a repeater controlled with Allstar?

I only noticed tonight when I had someone trying to control a remote link, they couldn’t because DTMF was being supressed.

dtmfpropagate = yes in my rpt.conf but i’m assuming that just allows the tones to be regenerated down remotely connected nodes, which in this case is not relevant as it’s just through the local repeater.

Directly … no.
You have to do a workaround in some fashion.
DTMF is automatically muted and not a option. So no pass through.
When it has been decoded or read, it is simply a RFC number. And can be shared in that same manor for control of a connected node (command mode) but is not DTMF at that point. It travels in the iax stream.

I had written a script a long time ago for a dtmf re-generator, so it would take a command and any sequence of digits you entered afterward and generate them internally for output on the node you were on when you entered the string.

This was useful when connecting the system in parallel with a hardwired controller.

I will look again for it or write anew since this keeps coming up.

Perhaps tell us what exactly you are trying to do and maybe there are other alternatives.

Oh…
I might mention that if you only need to output a handull of dtmf strings, you can create a macro and use the softwares built in generator, which I made use of in my script.

I hope this is correct from my old notes…
=ilink,200 thru 215 – (Send DTMF 0-9,,#,A-D) (200=0, 201=1, 210=, etc)

Thanks Mike,

What we’re trying to do is control an IRLP & Echolink node that is sitting offsite from the repeater in another location, linked via RF back to the repeater. Obviously to dial IRLP and Echolink nodes you need to send DTMF digits.

We also may have some DTMF controlled relays that sit on the repeater output frequency with a receiver attached to them - same thing.

It’s not really a handful of strings, as it can be quite variable for the IRLP & Echolink nodes. Getting IRLP onto Allstarlink is difficult I believe, Echolink not so much. We’re trying to edge our way away from these two linking systems, but for now, we still have to support them as it’s a club repeater.

Well if it were ASL to ASL, you can simply connect in command mode…
*4xxxxxx and issue the needed commands to the connected node. Then # to end.
And actually, I would suggest that for reasons of future expansion and your time.

As far as the relay control, you might take a peek at some of my posts for site control.

(just to present you with options to think on)

Thanks.

This still doesn’t fix the problem with IRLP and Echolink being off air linked system (at another location).

I read somewhere that there is a script which can regenerate tones it has heard over the repeater after you have sent them - but I cannot seem to find the post/way of doing that.

A post was split to a new topic: Allison announcements and node propagation

Is there no way to stop DTMF muting for local repeaters if you just want it to pass from RX to TX?

DTMF is automatically muted and not a option. So no pass through.

2 posts were merged into an existing topic: Allison announcements and node propagation

I don’t think this will fix your issue but perhaps with other methods ?

https://wiki.allstarlink.org/wiki/Rpt.conf#propagate_dtmf.3D

Ok, that’s wierd. We have 3 channels all using RTCM voters. One of them passes the DTMF tones and doesn’t recognize them in the asterisk console. I am thinking maybe it is adjusted somehow(By accident) so the system isn’t recognizing the tones. Perhaps there is a way to make the same adjustment to the other channels to do the same. These nodes are all private and not connected to any other system.

If it is passing the tone audio, it is likely not able to decode them.
For only a valid DTMF tone will be muted.

The whole purpose is to stop nodes downwind from getting erroneous dtmf.
Just imagine the implications.

Sounds like a audio level issue.

Is there a simple way to disable DTMF detection for all of asterisk if you don’t need it. IE: you have a stand alone system and only need to pass audio and don’t require DTMF detection for anything.

This all goes to network integrity.

I get that, this is a private system. I’m talking about breaking asterisk so it doesn’t detect dtmf.

Ok found a way for anyone interested. Downloaded the master branch source code. Moodified the dtmf tone freqs in dsp.c, recompile. Now dtmf is broken but if you dont need it, it will pass through the repeater.

Yes, it is open source.
It’s always a option to write the code as you want it.
I thought everyone kinda got that.
Great.

After a bit of searching I discovered a kind of workaround for controlling analog controllers/links downstream that listen to the repeater’s transmitter.

Cop 48 is the “Send Page Tone” command.

You can create a script or macro to send tones or do it from the command line.

"rpt cmd [node number] cop 48 1,2,3 would send DTMF 123.

https://wiki.allstarlink.org/wiki/Transmitting_Tone_Sequences

COP 48 is for page tones, not DTMF.

remote, 200 thru 215 – (Send DTMF 0-9,,#,A-D) (200=0, 201=1, 210=, etc)
on node may work for you depending on your config.
You might also try that with cop,# 200-215 and I don’t think that is documented, but may work if my memory has anything left to give.

While I know I did this for a remote analog repeater some time ago, I’m not sure this is the method I used.
Let me know if you succeed with that so I might document it for future.

The linked wiki article references being able to send DTMF with that cop command. I tested it with my Arcom RC210 and it works fine to control it.

1 Like