¿ªÔÆÌåÓý

ctrl + shift + ? for shortcuts
© 2025 Groups.io

Integrating VHF SHARI-Pi and ASL3 to an Over-The-Air VHF Repeater


Shawnerz
 

First off, I want to acknowledge I've gotten good advice from several people like @Partick Perdue, Freddie Mac (Ham Radio Crusader on YT), Mike (K5MDK) and a few others. @Chris Smart did say to check the Repeater Builder. But, the Repeater Builder group has so many posts that are not relevant to my search question. I couldn't find anything useful. Thanks anyway, Chris.

I am sending this email mainly for @NH6BF who said:
I have been trying to do a RF link, also!!! Same results...
I would really appreciate some discussion on this from people who have succeeded.
I sure there are, or will be, other who can benefit from it.

Like others has said, integrating ALS3 with SHARI-Pi over the air is not the best way to do this. The ideal solution is to hardware the Pi to the repeater with an interface cable enabling the Pi to monitor the Carrier Operated Squelch (COS) or Carrier Operated Relay (COR) signals directly. Also, use SHARI-Pi or the repeater controller to control transmit, receive, and telemetry, but not both.?
Using the RF link method, there are delays and drawbacks. But, it does work.?Freddie Mac has a good video here:? he brings up a good point: maybe you have a mountaintop repeater that has power, but no internet and you want to extend ALS3 (or some other VOIP solution) to it. Or, maybe the site lost its internet access and you need to bring up ASL3 for a temporary or emergency situation. Freddie might be a member. IDK. I did let him know this, so I'm not "talking behind his back". In my opinion, the video is kind of long and can really be condensed to "its better to directly interface the repeater" and "properly set the rpt.conf rxondelay setting."

Having said that, let me get to the settings that work best for our set up. Your results are going to vary.?Assuming you already have your ASL node number and password:
1)? In a terminal on the Pi- set up the asl-menu and sa818-menu for your site. Freddie Mac has a great videos on the subject.

2) If not already there, cd /etc/asterisk. Make copies of your original rpt.conf and simpleusb.conf files by entering 'sudo cp rpt.conf rpt.orig && sudo cp simpleusb.conf simpleusb.orig".

3) sudo nano rpt.conf
? ? a) I wanted to increase some audio levels, so I changed erxgain = 3 and etxgain = 0.
? ? b) hangtime = 1500 althangtime = 0 These values are probably not applicable or being overridden by simpleusb. Maybe someone can tell me when and if they're used.
? ? c) Set the telemetry to your liking.
? ? d) I like Parrot, so I have parrotmode = 1 and parrottime = 200. This can get annoying if you have a lot of other users who like parrot. ?
? ? e) Per Freddie, I installed Supermon and added SMUPDATE=cmd,/usr/local/sbin/supermonASL_latest_update
? ? f) I uncommented 921 and 922 for Parrot. But I don't know if this does anything because in simpleusb, I changed the command to another DTMF number. So,? ? ? please advise.
? ? g) Freddie has another great video on installing the time and weather module. For me, this works great! Video here:? In the [functions] stanza, in the Status Commands section, I added "8 = cmd, perl /usr/local/sbin/saytime.pl <your_airport_code> <your_node_number> Mine is set to 8, but change yours to whatever you like. I do have a problem, though. It only plays the time and temp it got at the top of the last hour. It isn't playing the current time and weather. I saw somewhere there is a fix for it, but I had other fish to fry. I'll look for it later.
? ? h) In the [telemetry] stanza, I saw some emails about disabling the connect tones. I don't recommend this. Yes, the double set of tones may be annoying. But, the tones will tell you if your last transmission made it to the Asterisk server. Enabling the tones also let you know if another node is connected to your node (bonk vs. be-bop). But, you do you.
? ? i) Near the beginning of rpt.conf, wait_times = wait-times line commented out. So, the [wait_times] and [wait_times_hd] stanzas probably don't apply. I don't know. If they are being applied, there might be default values. I don't know. Maybe someone could tell me.
? ? j) I also read? somewhere to get the SHARI LED to light up red when transmitting, in the [events] stanza, add "cop,62,GPIO4:1 = c|t|RPT_RXKEYED" and? "cop,62,GPIO4:0 = c|f|RPT_RXKEYED". Because of the sticker, I thought it would light green when connected and red with transmitting and yellow with COS. It only flashes red when transmitting for me. Maybe I did something wrong.
? ? k) ctrl-o, enter, ctrl-x (or however you like to save and exit).

4) sudo nano simpleusb.conf
? ? a) In the [node-main] stanza, the printed documentation from Kits4Hams says to set "ctcssfrom = no. This didn't seem to make any changes in the operation of my set up . However, their next setting *did* make a change. The docs says to change plfilter from 'yes' to "plfliter = no". If your repeater uses a PL (or CTCSS tone), I *do not* recommend this. The setting does what it says: it turns off any receive PL filtering. The problem with this is any interference on your repeater's output frequency will be picked up and transmitted back on the ASL3 link. Also, if there is another distant repeater on the same frequency, or skip propagation is active, it too will be transmitted on the ASL3 link. For my installation, this is set to "plfilter = yes".
? ? b) "carrierfrom = usbinvert" works for me.
? ? c) By far, THE MOST IMPORTANT setting of this email is "rxondelay". Most of the advice is, "Set it to 200 and call it good." But this doesn't tell you what it's setting and the impacts of of the setting. What happens if you set it to 500? What happens if you set it 100? 0? -10?
The comment in the code says, "Number of 20msec intervals following the release of PTT. Uncomment and/or adjust for simplex nodes to eliminate "Ping Ponging"...
This is true. However, if you're new to this (like I am), the next question is "Who's transmit are we talking about here? The user with the HT? The repeater? The user on the ASL3 side?" The answer is: the repeater - no matter how it's keyed up.
The longer this value, the longer a user needs to be keyed up before his/her audio is sent over the ASL3 link. So setting it to 200 and calling it good works in most instances. But that means the user has to be keyed up for 4 seconds before their audio is sent back on the ASL3 link. You want this value to be as short as possible so people can start talking as soon as possible (or delay talking as soon as possible), but you want it to be slightly longer than your repeater hang time. For our repeater, this value is about 50. HOWEVER, there is a gotcha: we have a CW ID. That CW ID + hang time is about 1.9 seconds. Let's say I set this value to 65 (1.3 sec). The repeater does not ping-pong. But when the repeater does a CW ID, it unkeys, SHARI-Pi keys up, then unkeys. The VHF repeater control never has the ability to fully reset. This means that, with no activity, 5 or 10 minutes later, the repeater will do another CW ID, and the cycle repeats. You may think its not a big deal. "At least the repeater is ID-ing every 10 minutes."?
Well, if your repeater is on solar generated power, or extended battery operation, or you're trying to conserve electricity costs at your site, you might want to minimize your transmitter time. 95 seems to work good for our site.
? ? d) txoffdelay No clue. "Ignore the receiver for a specified number of 20 millisecond intervals after the transmitter unkeys." Again, who's transmit? Who's receive? What happens if this value is too long or too short? I set it to 65, but I have no clue what it affects.
? ? e) I set txmixb to "voice" only because txmixa was set to "voice". And, why not? I mean, everybody likes stereo, right?
? ? f) preemphasis is set to "no". I let the repeater handle that.
? ? g) ctrl-o, enter, ctrl-x
? ? h) sudo reboot (yeah, you might get by with just astres.sh or however, you restart Asterisk. But way not just reboot to make sure everything gets applied.)

One other big RF problem: desense. Since the SHARI-Pi is an SDR, receiver filtering is good, but not great. It took me a long time of making change to the config files, keying up and seeing no performance changes. I realized my local HT was blowing away the SHARI-Pi receiver. I had to find a setting where the power was strong enough to hit the local repeater without blowing away the SHARI-Pi receiver.
You may find at your repeater site, adjacent transmitters, or your repeater's transmitter overloads the SHARI-Pi. An attenuator might be in order. Again, this underscores the point that, while this solution works, it is not ideal.

This works for my setup on our repeater. Feel free to respond if you disagree (or agree) with my settings. Yours *will* be different.

Question for me: In looking over modules.conf, am I correct that the usbradio.so module is unloaded there for making no need for changes in usbradio.conf?

73 and good luck,
-Shawn
P.S. All errors, bugs and typos are mine.
P.P.S This took a lot of work testing, and writing. I know several AI bots are going to see this, scrape it into their LLM, and add it to their data set. I hope it goes to make a world a better place.
P.P.P.S I sure hope no one responds with, "Everything you just said is here: <link>." Thanks for attending my TED Talk.


 

Thanks, I think.... I believe in the USMC higher learning method.... "If you don't get it the first ten times, then you go the second ten times..."? Might be awhile!!!!?