In many applications a small portable node such as a SHARI, HotSpotRadios or OpenSpot node might work fine and be fairly inexpensive. These are compact, portable, should meet the basic requirements, and can have good audio quality if properly assembled and tested. If you are new to AllStar and just want to try it out, starting out with a simple, off-the-shelf node is probably the best way to go. Then once you have used it for awhile you'll have a better idea of its limitations and may then want to upgrade. If you only use your node for mobile use then portability is probably the main priority and audio quality is not as important, but if you use your node mainly around your QTH then there's no good reason to settle for limitations or low audio or RF quality.
After a bit of R&D I have built several high-quality Full-Duplex AllStar nodes using readily available FCC-certified components, no mods/hacks or soldering required, that can be built by anyone with basic electronics skills. AllStar has been around a long time but I've seen no previous mentions online of anyone having been able to do all the above with full VOIP-grade audio quality (indistinguishable from Analog FM), excellent RF performance, with power supply, microPC, audio interface, and node radio(s), all for under $200.
AllStarLink (ASL) has been around a long time by tech standards and has a stable and mature code base. It has been used for controlling complex interlinked repeater systems for 15+ years, supporting a high-precision multiplexing receiver system that can precisely time-align audio feeds from any number of receivers and ensure perfect synchronization of audio even with unpredictable delays that occur over various IP and wireless links. It's based on Asterisk, a powerful open-source PBX system that supports every kind of telephony and VOIP feature including telecom-grade full-duplex communications, conference calling, integration with VOIP systems and equipment, voicemail, voice detection, Interactive Voice Response menus, support for a wide range of voice codecs, and extensive control and monitoring capabilities via web interfaces, DTMF commands, scripting and macros.
When you put an ASL image on a microSD card or flash drive, you're loading GigaBytes of software containing the result of millions of lines of code that make up Linux, Asterisk, ASL, and the 1,000's of other utilities and programs that come with Linux. The power and flexibility of all this is far higher than what you see in typical commercial products such as a modern digital HT. Linux, Asterisk and ASL are 100% open-source and free, meaning that not only is it free but that anyone can look at the source code, see how it works, edit it, add to it or improve it.
ASL usually uses a Carrier Operated Squelch (COS) line to determine if you are transmitting audio into the node. Most nicer mobile radios have a MiniDIN6 or DB9 jack that provides a COS output along with the PTT input and Rx & Tx audio lines. So if you pick up for example a Kenwood TM-V71A or a Yaesu FT-8800R mobile radio, you can plug it right into a standard USB interface such as a Masters Communications DRA-36. Then just put the ASL image onto a MicroSD card, put it in a RPi, hookup a keyboard, monitor and mouse, turn it on and run the install script. The standard cfg settings should all work fine and your node should be up and running within 15 minutes. This would be a great node, supporting cross-band full-duplex (set duplex=3 in rpt.conf), with 5+W power output, which with a good outdoor antenna at your QTH would allow you to use your node from an HT or mobile rig from 5-10+ miles away.
ASL doesn't actually need a COS input though. It comes with a "usbradio" driver that will detect the presence of Rx Audio automatically, and it does so very reliably. This is simple to enable, just uncomment out the "usbradio" line in rpt.conf and comment out the "simpleusb" line, and then in usbradio.conf set carrierfrom to "vox". Then adjust your audio levels reasonably close to where they should be, and you should be all set.
I had initially thought the usbradio "carrierfrom=vox" mode might work more like a typical VOX circuit, which have a somewhat high activation threshold and may look for voice vs. noise spectral signatures, but fortunately that is not the case and ASL's usbradio does exactly what it should - reliably detects the presence of any signal on the Rx audio line. Even if you're not talking, but are keyed up and there's just ~1mV of background room noise, it detects it very well. Thus the usbradio driver is a subtle secret of ASL. I never suspected it would work so well and as an experimnet had actually built a high-precision COS-detect Op-Amp circuit but it turns out that such a circuit is totally unnecessary. This is great news for anyone who was thinking of putting together a node using an HT as the node radio but who thought the lack of the COS line might be an issue or wasn't sure how to do it.
The first node I built uses a Yaesu FT-530 for the node radio and these work very well as full-duplex radios. Their built-in speaker does not significantly couple into the built-in mic and there's no echoing or feedback. A proper full-duplex implementation would be expected for something like a high-quality speakerphone with DSP echo cancellation and proper acoustic design and placement of the transducers, but I was surprised to see to see this level of quality on a 30-year old HT model. (Unfortunately the radio manufacturers later gave up full-duplex support, only to replace it with user-unfriendly low-bitrate digital modes.) Fortunately the old radios continue to work just fine and are cheap and easy to find. There are at least half a dozen other HT models from Yaesu, Kenwood and Icom that should also work well such as an FT-470, TH-D72 or IC-W32.
Using HT(s) for the node also makes it very portable. HTs already have a battery and are designed for portability - just add a small USB power pack to power the microPC and you can put the whole setup in a small bag or box and take it anywhere. And with HTs you don't need a separate antenna, duplexer or coax cables, and you have lower power options than mobile radios. An HT transmitting Low power is usually plenty of power for covering your QTH and within 1-2 miles.
In summary, it's simple and practical to use HTs for node radios. The only other thing you'll need is an audio cable or two to go between the HT and your audio interface. It's easy to find HT speaker mic pinouts online, just search for your HT model and 'speaker mic pinout'. Retevis and TYT radios use the same pinouts as Kenwood HTs are are simple to connect to, with no resistors or other components needed. This is great option if you already have some old HTs sitting around. This article focuses on the Retevis RT85 HTs because they are only $50 for a pair brand new, look nice, are very compact, and work great. But any other HTs could be easily substituted. An advantage of using a Full-Duplex HT such as an FT-530 is the node only needs one HT instead of 2, but unless you have multiple full-duplex HTs sitting around the shack it makes more sense to use a couple of cheap simple HTs for the node radios and then use your FT-530 or TH-D72 as the radio you talk into the node with.
There are several main pieces to an ASL node:
*There are also radio-less nodes, which just have a speaker and mic, and in that case you don't need a radio at all, but you then wouldn't have the flexibility of walking around your yard or neighborhood with an HT. You can also use a VOIP phone as a radio-less node by setting it up with a cloud VM running ASL (to key up dial *99 and then # to unkey), or you can use smartphone apps such as DVSwitch Mobile or DroidStar to connect your ASL cloud server over IAX.
I also often use my nodes with my VOIP desk phone. That way when I'm at my desk I don't need to turn on any radios and can use the node on my speakerphone (such as any model supported by Hamshack Hotline). If you're sitting right next to the node there's no reason to turn on multiple radios just to talk on it or listen to it. I also have DroidStar on my home-office PC and Android phone and can easily connect to the node through the IAX protocol. Thus with any ASL node you have multiple ways to talk on it, through RF, IAX apps, VOIP (SIP) phones, or in the case of radio-less nodes by plugging in a speaker-mic. Using real analog HTs is always nice though because you then have no dependence on IP devices/apps or wifi/cellular networks.
There are many HTs and mobiles that do cross-band full-duplex and are easy to find used for ~$150 or so. The node radio does not need to support full-duplex because you can just as easily use 2 separate HTs eg. one for Rx on 70cm and one for Tx on 2m, but for other radios you use to talk on your node cross-band full-duplex is a very nice feature.
The Main Node components I recommend are as follows, with purchase links and last-known prices:
Total: $173 (plus any sales tax that may need to be paid to amazon/ebay)
These should all be purchased directly from the links above or from any other reputable source you find. The Dell 3040s and the RT85s are widely available from many sources.
I have bought a number of 3040's from a specific ebay seller who has the 16GB version with power supply asking $53 ea. but I offered $47 ea. for 2 and they accepted. This seller has sold over 1,000 of them on ebay and they are apparently selling like hotcakes as it showed over 130 were sold in a 24 hour period when I was updating this section (1/31/23). Seems the word is getting out that these are a much better and cheaper option than RPis.
If you have been doing ham radio and electronics for any significant amount of time you may already have some of the various wiring, audio plugs/cables, ferrite filters, etc. around the QTH. The following are the additional parts you'll need:
You then just need some basic wiring (such as 24 ga. Hookup wire) to connect all the above together. If you plan to leave the node in one place such as on a shelf or in a closet then no enclosure or mounting system is needed but for more of a "professional" look or for better portability you could mount things as I have on a piece of 7"x16" DuraBoard, with the AC Adapters, power connections and switch in a metal box on the back.
These are what I have used but there are many different ways to build a node so you may not need any of the below or may already have various items that will do what you need.
The above can all be purchased directly from numerous sources but as they are small low-cost items I am able to provide any or all of the above parts in a Kit that can ship together thereby taking advantage of consolidated shipping and quantity pricing. Prices shown are my total price for each item and Qty. I would then add a flat rate shipping and handling charge. If you just need a few things it will probably be more cost-effective for you to get them directly from Amazon/Ebay/Mouser/DigiKey/etc. but if you need a number of the above items it may be easier and more cost-effective for me to send you a kit with what you need. Contact me with any questions on that. Parts availability does often change so you may need to look around a bit or improvise.
Re. an enclosure, the cast aluminum enclosure linked above works very well but it should also be fine to use a plastic enclosure such as this 7.9" x 4.7" x 3" ABS Project Box which are less than $8 w/free shipping, and which are much easier to cut and drill holes into for various connectors. I'm now building a node using one of these and suspect it should work just as well as one with a metal case but will be doing detailed testing to confirm if there is any difference in Audio & RF performance/noise. The black color should also look very nice with the RT85s and 3040.
Installing ASL on a Dell 3040 or other Mini/Micro PC is not hard if you're experienced in building/maintaining PCs. The 3040's have a UEFI-only BIOS that needs the boot file in a specific place. Making a UEFI USB drive is very simple: Download the ASL install image, then format the USB drive as FAT32 and unzip the image files onto it. Then boot the 3040 from the USB and it will guide you through the installation. Conveniently the Intel/AMD ASL install image is based on Debian Linux which happens to have the boot file where the 3040 expects it.
The Intel/AMD ASL image is different from the RPi image in that the latter just goes on an SD Card, into the RPi, and the install is done. The former however is an installer image, intended to boot on a removable device and install Debian and ASL on an internal device (or possibly on a separate removable USB/SDCard). The Debian installer is pretty quick and simple and should complete in less than 10-15 minutes. The default options should all be good. Make sure you install to the MicroPC's internal eMMC drive, overwriting ALL existing partitions.
Once the install finishes to the 3040 internal flash, it won't boot, but you can then boot from a UEFI clonezilla USB, select the Debian Local OS boot option, and do the following:
sudo mkdir /boot/efi/EFI/BOOT
sudo cp /boot/efi/EFI/debian/shimx64.efi /boot/efi/EFI/BOOT/BOOTX64.EFI
Then remove the USB drive and power cycle the PC. It will then boot fine, and the rest of the AllStar setup process is then the same as on an RPi. Refer to the AllStarLink.org Install Guide to complete the node configuration and properly provision it on the AllStarLink Web Portal.
Your node number (should have been set in asl-menu/initial setup)
rxboost = 0
rxctcssoverride = 1
carrierfrom = vox
voxhangtime = 500
ctcssfrom = no
rxdemod = speaker
txprelim = no
txlimonly = yes
txtoctype = no
txmixa = no
txmixb = voice
rxlpf = 2
rxhpf = 1
txlpf = 1
txhpf = 1
duplex = 1
Your node number (should have been set in asl-menu/initial setup)
rxchannel = Radio/usb_[node#] ; Comment out all other rxchannel lines
duplex = 3
hangtime = 100
althangtime = 100
linkunkeyct = none ; prevent extra courtesy tones and hang time
nounkeyct = 1
parrotmode = 1 ; 1 = Parrot On Command
Uncomment following lines:
921 = cop,21 ; Enable Parrot Mode
922 = cop,22 ; Disable Parrot Mode
Most HTs need a well-filtered DC power supply, as they're designed to run primarily on battery power and probably don't have much if any filtering or regulation. HTs will run much cooler on 7-8V and should not be run any higher than that for high duty cycle node TX. It's easy to find inexpensive DC power supplies (~$10) or inexpensive step-down regulators (~$5) on ebay that have a variable voltage regulator IC, filter capacitors, and terminal block connections. A larger filter cap eg. 2,200+uF can further reduce any power supply ripple. To get power to the RT85's I solder 24 ga. power wires onto the battery contacts on the back of the radio. You could run the HTs on their included batteries but for a node that will be transmitting a lot it's probably better to not constantly charge and discharge them, or have the battery die during a longer QSO or net. If you already have a 12V battery system in your shack, that could provide plenty of clean power, but HTs can overheat if run at high duty cycle on 12+V (even if on the low power setting) thus a step-down regulator / DC-DC converter should be used in that case.
Power to the radios is best provided by a small switch-mode power supply. Most devices now use small switching AC wall adapters and they're very efficient and compact. AC adapters have come a long way in recent decades, they used to have just a transformer, rectifier and small filter cap providing unregulated output with a lot of ripple, which can easily cause 60Hz hum and harmonics if used to directly power an HT. But these supplies now have good regulation and go through many certifications. I had originally tried to avoid switching supplies as they can cause RFI (birdies) particularly in the HF bands on harmonics of the switching frequency (eg. 100KHz typically but as high as 1 MHz), but if you confirm that's not an issue for a specific adapter you then have a clean power source that's inexpensive, compact, and energy-efficient. My measurements of the RT85's show that at 7.5V they have the following Current Draw & Power Output:
Low Power: 475mA ~1.5W
Mid Power: 906mA ~2.8W
Hi Power: 1020mA ~3.7W
A 7.5V DC 2A power supply thus easily accomodates 1 HT in receive and 1 HT transmitting low power, with plenty of margin. Note that a node Tx radio should only be used on Low transmit power because of the high Tx duty cycle. The RT85's Low power setting is already significantly higher than most HTs (1500mW vs. more like 500mW on most other HTs or as little as 100mW on HTs with an Extremely Low power setting). These power supplies are widely available on ebay/amazon for as little as $7. I've tested several models and they have all worked well, but ideally a 2,200+uF capacitor should be added which will reduce any remaining ripple to < 1mV. Because switching-supplies switch at a high frequency there should be little or no 60Hz harmonics on the output and large filter capacitors should not be needed but some additional small capacitance is good to eliminate any remaining switching noise. Switching supplies are used with many devices such as internet routers and other electronics and they do not seem to cause any RFI issues at my QTH. Be sure to thoroughly test any power supply for RFI issues however as every situation can be different.
The power adapters can be placed on the back of the node (behind the MicroPC and audio interface) thereby keeping them out of the way and keeping the wiring nicely organized. I used a 6"x4"x2" aluminum box to hold all the power wiring and components and this keeps things very clean, provides additional EMI/RFI shielding, and provides a solid metal box to anchor the Dura-Board and the rest of the node components to. The node then stands upright very sturdily and can be placed on a table or shelf, or hung on a wall.
For the power wires I solder 2 24 ga. wires onto the battery contacts on the back of the radios. These are very easy to solder to, just pre-tin the wires and the contacts and the wires can then be tacked on in less than a second, and can be just as easily removed later if need be. These should then go to a small terminal block, spring clips, or small wire nuts.
The node ideally should have either one AC power cord or one 12VDC power cord that connects to the 2 power supplies for the PC and HTs. This type of full-featured high-quality node will probably make more sense for use on 120V than 12V since it is significantly larger and less portable than the small Pi-Hat nodes. It's pretty portable if properly secured in an enclosure or on a peg board type of mounting surface, but even then the node will take up approximately 8" x 16" x 2" of space. If it were desired to run it on 12V the only thing that would change is that you'd use DC-DC converters instead of AC-DC adapters, which are widely available for < $2 ea. As a result there could be a significant cost savings in going with a 12V powered node rather than 120V. In that case 5.5x2.1mm DC Power Jacks could be used which are widely available and inexpensive.
The above minor details will result in a nicely-integrated node, with a single power cord, separate power switches for the PC and HT power supply, that is easy to access, power on/off, change frequency settings, etc.
For some good info on DC-DC converters and on CM109 Sound FOBs see G6OJB's site AllStarSetup.com. This also has info on building a node with an RPi and modified Baofeng in a plastic case, but I definitely recommend using fully-intact RT85s and a Dell 3040 mounted such that they are fully accessible and visible. This ensures optimal ventilation and cooling, enables the status of the radios and node PC to be clearly seen and settings easily changed, and keeps things simple with no need for extra LEDs or coax jumpers.
Making a cable to go from a DB9 to 2x 2.5mm plugs and 1x 3.5mm plug can be a bit of a hassle if you want it to look pretty, or, just get an old DB9 cable, cut it in half and splice on some aux cables. That's easier than soldering onto DB9 and mini-phone plugs. Or with a small terminal block there's no need to solder anything. But if you're good at soldering small parts, using the DB9 connector supplied with the RIM-Lite will save you the cost of a $5 DB9 to Terminal Block adapter, and the wiring will look nicer.
Wiring - RIM-Lite V2 to Kenwood, Retevis, TYT, QRZ, etc. HTs:
DB9 Pin 1 --- TX HT 3.5mm Ring (Tx Audio)
DB9 Pin 5 --- TX HT 3.5mm Sleeve (PTT)
DB9 Pin 6 --- RX HT 2.5mm Tip (Rx Audio)
DB9 Pin 8 --- TX HT 2.5mm Sleeve (Ground)
DB9 Pin 9 --- RX HT 2.5mm Sleeve (Ground)
Wiring - DRA-30 to Kenwood, Retevis, TYT, QRZ, etc. HTs:
DB9 Pin 1 --- TX HT 3.5mm Ring (Tx Audio)
DB9 Pin 3 --- TX HT 3.5mm Sleeve (PTT)
DB9 Pin 5 --- RX HT 2.5mm Tip (Rx Audio)
DB9 Pin 6 --- TX HT 2.5mm Sleeve (Ground)
DB9 Pin 9 --- RX HT 2.5mm Sleeve (Ground)
You'll need some clip-on ferrite cores on at least some of the cables. The Laird 28A2029-0A2 work well and have enough room to allow cables to be wrapped 2 or 3 times. They are less than $1.50 ea. in Qty's of 10, and often come in handy for other things around the shack. One of these is recommended on the cable from the HT power supply, and may be needed on other cables depending on your specific setup and RF environment.
Ferrite filters should generally be used with any switching power supply, with the cord wrapped around the ferrite a few times. Without that there can be significant buzz that comes through. This is a known issue with nodes in general, relating to Tx RF being picked up by the power cord and then causing 60Hz harmonics when the diodes in the power supply are near their zero-crossing points where they can be modulated by induced RF. This results in a broadbanded buzz on 60Hz harmonics that gets louder and quieter as you move antennas or cables around or move around with your HT that you're talking into the node with. Sometimes it won't be noticeable at all but then move just a little and you start hearing a buzz or digital whine. Ferrite cores placed appropriately can reduce this by 99+%.
Ferrites may not be needed with a linear power supply because there's no high-frequency digital switching noise and more capacitance between the diodes and the power supply output. A linear supply's filter time constant should be at least 10 times the 120Hz ripple period, whereas switching supplies are doing things closer to 100KHz and thus don't need nearly as much filter capacitance. However linear power supplies will tend to put out more low frequency ripple, which is harder to filter out. Therefore it can be even more important to add a good quality filter capacitor to a linear power supply than a switcher. As a general recommendation for any node, it should be confirmed that the output ripple of any power supply, converter or regulator is < 1mV (AC), and at least 2,200uF of low-impedance capacitance should be added to the power supply output as needed to achieve that, and for switching supplies a few turns of the DC power cable should be wrapped around a ferrite core as close to the power supply case as possible.
A ferrite filter was definitely needed with my RPi node on the USB cable going to the audio interface, but on my Dell 3040 nodes no ferrite is needed there. This is good news as it confirms that the FCC-certified Dell does in fact put out much less EMI/RFI than my RPi4 (which is in a high quality Vilros metal case). Rx and Tx Audio are as clear as can be. Thus this is another advantage of the Dell 3040 (which has about 15 different certification logos on the bottom) over RPis.
A ferrite core is recommended on the RX audio cable - I would get some occasional false carrier detects without that (in carrierfrom=vox mode). In general the more ferrites the better, they won't hurt anything. Adding a ferrite on the Tx audio cable may also help in some cases. Particularly if you are listening to a node on an SDRplay RSPdx with full audio bandwidth and no deemphasis, which will reveal much more detail than a normal radio that bandpasses everything to ~ 300Hz - 3KHz. An SDR can thus help to even further reduce quiet noise that wouldn't be audible on a normal radio. In total you'll probably need 3 or 4 ferrite cores. The Dell 3040's supply probably won't need one but the HT power supply most likely will. The same would probably apply to a node that runs off 12V using switching DC-DC converters.
Everyone's RFI/EMI environment can be different. As with with any product or project, you may run into issues and need to do some debugging. You might need to add some extra ferrites on certain cables, additional filtering/regulation on your DC power supplies, or move some things around on your desk or in your shack. Any time you have a receiver that's picking up and amplifying signals in the < 1 microVolt range it's easy for interference to occur if you have a noisy power supply nearby, or you're too close to a cell tower, wifi devices, power lines, or other possible EMI sources. Keeping the node antennas as far away from other electronic devices as possible is also generally a good idea.
Once your node is up and running you could mount things in some sort of enclosure, maybe a rack-mount shelf, or a clear plastic carry case. For a home node you don't really need a case, just set everything on a shelf in the closet and you're good to go, and can control the node from any web browser using Allmon, SuperMon, or AllScan.
By setting up the MicroPC BIOS to turn On by default after power is applied, and because the RT85's have a regular analog volume knob with on/off switch, everything can be placed inside a carrying case with no access needed to the PC or radios once they have been configured. You can then have a single power switch mounted in the case and either a 12V PowerPole, 5.5x2.1mm DC coaxial jack, or IEC AC inlet. One switch then easily turns everything on and off. If you opt to run it off 12V you'd need a couple step down regulators to drop the 12V to 5V for the PC and 7.5V for the radios, or if you run AC into the enclosure you can use the power adapter that came with the Micro PC and a 7.5V 2A DC power adapter for the radios.
To have the node be self-contained and look somewhat "professional" all components can be mounted on a piece of ~7"x16" pegboard (eg. "Dura Board") rather than in an enclosure, so that everything is easily accessible and well ventilated but is also well secured and organized. The MicroPC can then be turned on and off with its power switch, and a separate power switch for the HTs can be used, and the node is then easy to move around, set on a shelf or hang on a wall. Peg board is very inexpensive and the holes every 1" are perfect for nylon zip ties to keep the components and wiring in place, or velcro or twist ties for anything you might want to be able to take on and off more easily.
However Dura Board does need to be cut to size, and only comes in larger pieces costing about $19 for a package, thus it's not the simplest option. To keep things as simple as possible with my latest node design I'm planning to forego the Dura Board and just use a ~8"x5"x3" black ABS project box, and mount the radios on the sides, the 3040 on the front, and the power supplies inside. This will reduce the overall footprint from ~16"x3" to more like 10"x4" which is much more practical. The only disadvantage will be that the HTs will no longer face to the front but that's really an issue as the Rx/Tx LEDs are on top and easy to see from most angles. Stay tuned for updated pics of my newer node builds.
Note that clear visibility of the radios and PC are very important, particularly when first setting up the node. Sometimes things happen on AllStar such as disconnects or timeouts and it's nice to be able to look at the node and be able to see the HT LCDs and Tx & Rx LEDs, and the PTT/COS/Heartbeat LEDs on the radio interface. Thus I would recommend against any node design or encolosure configuration that makes it hard to see any of this or that does not have clearly separated individual LEDs for all the above.
A small case for the radio interface might also be nice, but as these are fairly small simple PCBs they work fine just zip tied or screwed onto the node case or mounting board (though ideally not directly on top of the PC or power supplies). If a clear plastic case is used the interface can be placed inside the case and the LEDs will still be visible.
Be sure to set up your node radios with Tone Squelch enabled, to prevent possible QRM from causing your node to TX, and to enable tone squelch on your other radios which is a nice way to shorten or eliminate squelch tails. Also check your local 2m and 70cm band plans (eg. in Southern California TASMA.org and SCRRBA.org) to find simplex frequencies specifically intended for analog FM hotspots so you won't possibly interfere with repeaters or calling frequencies.
Comments re. Frequency Coordination from Jim NO1PC: "...Hotspots are a 'new niche' not fully encompassed amid the more well-known realms of ATV, SSB, EME, repeaters, simplex, etc. Some regions have specifically addressed this, some not yet. "The ARRL Band Plan" is wholly inadequate in addressing this, but then they vacated much of the issue a decade or so ago. ... There are 53 repeater coordinating/spectrum management organizations in the United States. Links to them are provided by at least the following two web sites: https://w2xq.com/bm-repeaters.html, https://repeaters.us/"
When picking your node frequencies be sure to consult the above sources, and verify the frequencies are not being used by other nearby users or systems.
A general note on tone squelch settings, Yaesu HTs (FT-530, FT5D) have very good squelch that drops very quickly (maybe ~20mS max) and quietly, and my Icom-9700 is even faster with basically no squelch tail at all, but my Kenwood TH-D72 and D74 are not so quick and have a much more noticeable squelch tail, more like 50-100+mS and fairly loud. Therefore I enabled Tone Encode on the node TX HT and Tone Squelch on my other radios to minimize squelch tails after the node unkeys. Both Kenwoods now drop squelch immediately ie. no squelch tail at all. The FT-530 doesn't drop squelch any faster with Tone Squelch on but that's fine as the tail was short and quiet to begin with.
Important Note: Nodes (even if simplex only) can run at a 100% Tx duty cycle during nets or long QSOs, HTs don't have fans built in, and even at the lowest power setting HTs can get very hot if run at a higher voltage such as 12V, but will stay MUCH cooler at a lower voltage. My first homebrew node uses a Yaesu FT-530 which will run on anything from 6 to 16 Volts but to minimize voltage across the final I run it on 6-7V and it barely even gets warm at 100% Tx duty cycle. Transmitters typically have an RF final output transistor operating linearly between Vcc and Ground and thus even if you run the radio at the lowest power setting the transistor is still dissipating the majority of the voltage across it. Therefore reducing Vcc to the minimum necessary will greatly reduce the heat dissipation and energy use of the radio. Power dissipation = V×I, so if you run an HT off of 6V rather than 12V and are transmitting low power the power consumption and dissipation of the RF output section should be ~half as much. I confirmed this on the FT-530, which gets very hot during continuous Tx on 12V but barely even gets warm when run on 6-7V. As for the RT85's I have never tried running them on 12V and would not recommend that but when run on 7.5V they barely get warm even when transmitting 1.5 Watts for hours.
Having worked with PBX systems in the early 90's and in the Satcom, Telecom, and Pro-Audio industries for decades I'm familiar with the capabilities of Asterisk. It along with Linux provide a very powerful platform. Existing AllStar nodes have only begun to tap into its capabilities, and it's easy to overlook some of its more subtle features. To summarize some of the key points underlying this node design,
These subtle points together now enable a node to be built that has more features, better quality, AND a lower cost than any other currently-available commercial node.
All components I have used have FCC certifications indicating that at least some level of certification was done. As an example a 2020 December QST review and bench test of the Radioddity GA-510 (a similar HT) found that it was fully compliant with FCC specs. I have not verified the RF specs on the RT85 with precision test equipment but have had no issues such as intermod or degraded receive sensitivity. With this node one RT85 transmits on ~147 MHz and the other receives on ~431MHz and because it's Full-Duplex, it is always transmitting whenever it's receiving, thus if the TX spurious emissions were bad or the receive performance not good the RX HT would likely be overloaded and de-sensed. The RT85 will receive a 500mW signal very well from a mile away on 70cm when the other RT85 is transmitting 1 Watt on 2m from 12" away - which says a lot about the RF performance.
This is indeed the most important RF performance criteria of a full-duplex node, and whatever radio(s) you decide to use with a node, the first test you should do after your node has been set up is a sensitivity test where you transmit to it with low power from a mile or so away, and using the Parrot test mode confirm that your audio is clearly received. Also make sure your 70cm frequency is not a multiple of your 2m frequency. ie. if the node transmits on 145.0 MHz and receives on 435.0 MHz, it's not going to work. Your 70cm frequency should be at least a couple MHz away from the 3rd harmonic of the 2m frequency. If you want the absolute best receive sensitivity on your node, the Tx and Rx antennas should be as far apart as possible, but in my case I don't plan to use the node from more than about a mile away and it's working very well for me even with the antennas only 12" apart.
Because no modifications have been done to the radios, PC, or audio interface they are indeed FCC Part 15 compliant. If they were integrated into an enclosure with a different antenna setup then the system might technically not be considered FCC-certified but this is a simple node and there's no need for changes of that sort. And no one would expect a homebrew node using unmodified Part-15 certified components to go through a new certification process. That would make about as much sense as saying that if you add a dipole to an HF rig or plug it into a PC USB port that the rig is no longer FCC-certified.
Re. generalizations of Chinese radios, up until recently I was under the impression that Chinese radios are all junk, but after seeing reputable companies adopting them I did some research and found that Chinese radios have come a long way in the recent past. If it's good enough for Yaesu, Gigaparts and QRZ then it's worth some investigation, which has paid off because we now have some great node radio options that work very well and cost next to nothing. I can do full-duplex on an FT-530 or TH-D72 into my node from miles away and the audio quality is excellent, indistinguishable from local analog FM repeaters.
It would also be a broad overgeneralization to say that Chinese HTs should be not used in a cross-band full-duplex application. The node I have detailed here is intended for personal use, not as a repeater or for commercial use. There are big differences between cross-band full-duplex, full-duplex (on a single band), and a repeater. Cross-band full-duplex is very easy to do with HTs going as far back as the Yaesu FT-727, which I believe was the first ham HT on the market that supported cross-band full-duplex (I bought one new in 1987 when they first came out).
It also appears that nearly all the Chinese HTs are now FCC-certified. A web search for the model number and "FCC ID" will turn up lots of info, test reports, etc. These radios are certainly not as nice as a top-of-the-line Icom or Kenwood, but that is to be expected because it wouldn't make sense to spend $100's on a node radio that will be used on one frequency and only provide the most basic functionality. Pretty much any of the newer Chinese HTs should therefore work very well as basic node radios. The Baofeng UV-82 look very similar to the RT85s and are available for as little as $24 ea., and have been used in other nodes, for example see this pdf showing a UV-82 modified to access COS and other lines.
In the context of ASL where audio streams are typically filtered to a ~ 300Hz - 3KHz bandwidth, audio I/O through speaker/mic connections is not going to be any different generally than it would be on a professional commercial radio after the latter's signal has been properly filtered and encoded for ASL. The codecs will generally be the limiting factor. In my experience, audio from a good quality HT will sound very good over an ASL-linked repeater and will generally be indistinguishable from someone going into the repeater on Analog RF.
Many if not most Analog FM Repeaters are professional-grade systems, built and maintained by professional EE's with decades of experience in Audio, RF, etc. The key distinction in this context is does a node uphold that level of quality throughout the entire signal chain? The small SA818/Pi-Hat nodes often do not, whereas nodes using real FCC-certified radios should be much more likely to do so. If a node does not detract from the audio performance of the overall system relative to any other node, it upholds the performance of that professional-grade system. This node indeed has as good or better audio quality than any other node I've heard. Not to say it's perfect, but I don't hear any significant hums, buzzes, clunks, hiss, distortion, etc.
It would be nice to precisely measure the specs of various radio options and fully characterize their frequency response, phase response, SNR, input sensitivity, dynamic range, etc., however there's been no need to do that so far because the audio quality and performance of the nodes I've built are meeting all expectations. ASL and repeaters in general only have a bandwidth of ~300Hz to 4 or 5KHz at the very most thus we're not aiming for same level of performance as pro audio/Hi-Fi/recording equipment. ASL uses an 8KHz sample rate, which sounds very good for voice. If a repeater were set up with an unusually wide audio bandwidth and analog FM radios used with the widest possible audio bandwidths you could theoretically get HD audio quality through a repeater, and thus better audio quality than most VOIP codecs, but I've never seen a radio that has much if any options for this on VHF/UHF FM or heard of any repeaters set up for extended audio bandwidth. FM transceivers typically have very sharp filters on the Rx and Tx audio and few if any configuration options to adjust those.
It appears the ASL USB audio drivers use a fixed 8KHz sample rate (decimating the USB stream 1:6 from 48KHz) at 16-bits ie. a raw bitrate of 128Kbps. Once compressed by the codec it's probably more like 32 or 64 Kbps sent over IP. (Which is about 10-20x more bandwidth than what's used by AMBE/IMBE codecs ie. DMR, D-STAR, C4FM, P25, etc. - thus why AllStar sounds far better than all the digital radio modes.) There are a number of codecs that can be enabled in modules.conf, by default ADPCM, A/u-law, G.726, and GSM. It would be interesting to play with those on a test node and confirm if ASL nodes are going with the best-sounding codecs by default, or how much improvement could be made and what the differences would be in internet bandwidth. The 8KHz sample rate is probably the limiting factor though as that limits the frequency response to ~3.5KHz and my guess would be that the ASL-defaults are probably already pretty optimal.
ASL does support many codecs and could potentially do HD audio if both nodes enabled the appropriate codecs. It may not be easy for ASL to go higher than 8KHz sample-rate though as that appears to be hard-coded.
Re. the SA818 RF module: Some nodes have properly used this module with proper filtering, etc. thus providing good audio quality. But even then it does not support Full-Duplex, does not have the flexibility or RF performance of a real radio, may only be supported under HamVOIP, and is known to have other issues, for example using CTCSS tones below ~127 Hz results in loud harmonics that can intrude into the audio passband.
ASL fully supports a variety of audio sources, from unfiltered pre-emphasized FM discriminiator audio, to filtered speaker audio, covering a wide range of use cases. Both the ASL simpleusb and usbradio drivers have a configuration setting to specify if the Rx Audio line is speaker audio vs. raw discriminator audio. The HT does the CTCSS decode and tone squelch, and simpleusb/usbradio does not need to do any CTCSS encode/decode or DSP squelch detection. Usbradio does bandpass filtering of both the Rx and Tx audio, and does Rx carrier detection.
There are some settings in usbradio.conf and in rpt.conf that are important as described earlier. Usbradio's Rx and Tx filters may not be necessary since HTs should already do bandpass filtering on the speaker and mic audio but it shouldn't have any significant impact on audio quality to do additional filtering in usbradio with the wider frequency range options (250–3.5K Rx, 250–3.3K Tx). This additional filtering ensures the bandpass filtering is thorough and that no residual PL tones or high frequencies will get through that could potentially result in codec aliasing. It does not appear there is a way to disable usbradio's bandpass filters but if there was it would be interesting to see if that made any noticeable difference in audio quality. The frequency and phase response might be a little more linear with them off.
The audio level from the speaker jack is controlled by the HT's volume control, which once set at an optimum point remains perfectly calibrated with the audio interface trim and usbradio gain settings. Thus it's very easy to set the level at an optimum point, and there are many simple ways to ensure the volume knob stays where it should. For example:
BTW if you ever hear anyone on AllStar who is significantly too loud or too quiet – let them know. They will probably be happy to fix it, and the system then works better for everyone. Audio levels are pretty easy to adjust on AllStar (definitely much easier than with the low-bitrate AMBE/IMBE digital radio modes where people are using all sorts of random apps and devices and you get a huge range of volumes, glitches, artifacts, etc.)
This node is intended more for home than portable use, ideally with wired-internet for maximum performance, but USB WiFi adapters are available for as little as $2 and are easy to set up, and all components are small enough that the node could easily fit in a lunch box, small briefcase, Go-box, etc.
Originally repeaters and radios only supported half-duplex (from the user perspective) ie. remote users can either receive or transmit, but not both at the same time. This is in contrast to a phone call which is full-duplex and much more natural because anyone on the call can talk at any time which is a more interactive and efficient way of communicating. (Though phone calls today are not as good as they used be now that you have cheap cell-phones in bad coverage areas and people using bluetooth headsets.) Technically a repeater is full-duplex because it can transmit at the same time it's receiving, but, prior to ASL, only rarely did repeaters actually support true multi-user full-duplex communications. Most repeaters have only one FM receiver, which due to the FM capture effect can only properly receive one signal at a time, thus there was really no such thing as a repeater where any number of people could talk at any time while also hearing everyone else. To support that without ASL requires a repeater to have multiple receivers. Such systems do exist and work well for trivia nets or other cases where you have quick-witted hams jumping in with quick comments. Near my QTH is the infamous W6ZN repeater that does exactly this, and there are interlinked repeater systems that support this such as the SoCal DARN system where (if you're using a radio that supports cross-band full-duplex or 2 different radios) you can listen to one repeater on one mountain and transmit into a different linked repeater on another mountain. Even these repeaters have limits though because they only have so many receivers, and full-duplex users would need to know what frequencies those receivers are on and coordinate amongst themselves to prevent doubles.
Because ASL is based on Asterisk – an enterprise-grade PBX system, it supports full-duplex very well and makes it very simple. Even repeaters that have only one RF input, that would not ordinarily support multi-user full-duplex now if ASL linked support this capability by default for AllStar users. I have tested this on many repeaters and it works just like you're on a full duplex phone call on a speakerphone. You can talk just like you would on a simplex node but if someone else keys up you hear them and if someone doubles you hear it right away. This is a powerful feature that can greatly improve the interactivity, efficiency, and flexibility of amateur radio repeater communications. Doubles and echoing become a thing of the past, because you always hear the remote system, and if someone starts to double or you get looping, echoes, timeouts, interference, etc. you can just unkey until the repeater (or node / hub / bridge / etc.) is clear. This is a big step up in efficient, responsive, and interactive repeater use.
Although most people may not know it (even repeater owners), ASL-linked repeaters by default do support true multi-user Full-Duplex. This is a subtle detail that can be hard to understand until you've tried it for yourself. The repeater itself on analog will not support more than one analog RF input at a time if the repeater has only one RF receiver, but generally will support any number of simultaneous ASL full-duplex users and at least one analog RF input. There is only one repeater I've used so far that doesn't support full-duplex. I initially had doubts about how many would fully support it and was pleasantly surprised.
By default when a repeater links to ASL it will be with a node whose audio output gets mixed with the RF receiver audio input(s). Some repeaters may prioritize one over the other and only allow one audio channel at a time, or ASL may be linked through some intermediary interface, but even then multiple connected AllStar users can still be full-duplex and talk and hear each other fine, as that's a core feature of Asterisk's architecture. Audio streams from each connected node are always routed to all other connected nodes. No different than if you make a VOIP conference call.
Go on any repeater net that has more than a half dozen users and you'll frequently hear doubles, echoing, etc. This wastes minutes of everyone's time and sounds extremely "amateurish". But if you use full-duplex it's not an issue because you have full situational awareness. This goes back to the "amateur" vs. "professional" topic. "Amateur" just means we're not in it for money – not that we don't communicate well. Or at least that's how I see it. So if you can now very easily monitor your communications and prevent doubling and other issues, why not do it?
Another nice detail about full-duplex is that once you start transmitting from your cross-band full-duplex HT (I use an FT-530 or TH-D72) it's nice to see your node transmitting back to you right away. I can be over a mile from my house on my HT and start transmitting, its red Tx LED lights up, and then ~25mS later you see the green Rx LED light up which confirms that you're in range, the node is receiving you and transmitting back to you, and you hear if there is any path noise on the Rx side. This is another small example of how Full-Duplex improves your overall situational awareness.
Also note that cross-band full-duplex nodes are fully compatible with half-duplex radios if they are dual-band with dual-receive. For example my TH-D74 won't do full-duplex but I have the node's 70cm Rx frequency on one memory channel and the 2m Tx frequency on the next memory channel, with dual-watch on and when I transmit the D74 will not receive at the same time but once I unkey there's then no difference vs. a half-duplex node. Thus you can use any radios you'd like with a full-duplex node as long as they are true dual-band radios, which pretty much all modern HTs are.
Some Chinese HTs also support cross-band full-duplex, with the limitation that you can only Tx on 70cm and Rx on 2m – so their 70cm Rx doesn't get de-sensed/overloaded by the nearby 3rd harmonic of their 2m Tx. Several models such as the TYT 8000 support this and could work well for use with this node, and the 8000's are available new for as little as $65. Haven't tried one myself as I already have some good Japanese radios that fully support FDX, but it is nice to see the Chinese supporting it in new radios to at least some extent since there are few if any current production Japanese models that do. These would not be ideal for node radios though since the RT85's are only $25 and have no limitations in transmitting on 2m while another one receives on 70cm.
Note that a cross-band full-duplex node (ie. that has duplex=3 in rpt.conf) does not repeat the received audio into the transmitted audio. This is an important distinction and I do not recommend that anyone use this node as a repeater (ie. with duplex=4 in rpt.conf), or in a commercial application.
In summary, there are no disadvantages to Full-Duplex other than that it increases the cost of the node by $25 for a 2nd HT, which is a very small price for all the above advantages. This node could be made half-duplex if desired though, just use 1 HT instead of 2, plug the RX HT 2.5mm plug into the TX HT, and change the duplex settings in rpt.conf and usbradio.conf. That would be a quick and easy way to get going and you could then add a 2nd HT any time.
Q: I like the idea of Full-Duplex but I have to wonder wouldn't I get a lot of feedback? When I use Full Duplex on satellites I need earbuds.
A: The great thing about Full-duplex over AllStar (with duplex=3 in rpt.conf, not 4 which is a repeater), is that it does NOT repeat your Tx audio into the Rx audio that goes back to you. Thus it's just like talking on a speakerphone – you hear the other people on the call but it doesn't feed back your own audio. Because of this, Full-Duplex is actually much easier to use on AllStar than it is on satellites or analog-only repeaters.
When using ASL's usbradio driver in carrierfrom=vox mode there is by default a hardcoded 2000mS VOX Hangtime added that results in 2 seconds of silence being added after your transmissions to the node. This is not an extremely long time considering that repeaters already have a hang time and courtesy tone delay of anywhere from 1 to several seconds, but it is a noticeable delay and I found that it works more optimally when reduced to more like 500mS. I submitted a Pull Request to the ASL codebase in November to make this hangtime configurable by adding a voxhangtime parameter to usbradio.conf, but it could be some number of months until this makes it into a new release.
Until then, the easiest way to change this setting is to edit the file it's defined in (asterisk/channels/xpmr/xpmr.c) and on line 2761 ("#define XPMR_VOX_HANGTIME 2000") change the 2000 to 500. To do this requires downloading the source code onto your node and compiling, but this is actually very easy to do, and ASL has documented the process very clearly. This can be done as follows:
The whole process should only take about 10 minutes.
If you see any error messages, go to the ASL Forum App_rpt-users Category, do a search there to see if the error message you got was already reported and a solution provided, or if not open a new Topic there and describe the error(s) you saw. You should then likely get a response within a few hours. Because ASL is currently in the process of Beta testing the 2.0 release there can occasionally be compile errors but they are usually quick and easy to resolve thanks to the many excellent devs and contributors.
If the make process was successful you can now edit the one line in xpmr.c as described above, then run the 'make' and 'make install' commands again, and then restart the node. The voxhangtime will now be set to whatever you changed it to and no changes to any other files are needed.
This requires some extra steps but ensures you have all the latest & greatest PRs:
git clone email@example.com:AllStarLink/ASL-Asterisk.git ASL-with-PRs
git pull origin pull/34/head
git pull origin pull/41/head
git pull origin pull/42/head
sudo make install
When in full-duplex (duplex=3 in rpt.conf (not 4)) the hang time on the local RF TX is longer, but the node is not actually transmitting audio to the network during that extra time (beyond when RX CD dropped). It probably stays keyed a bit longer to prevent more squelch tails, and because it's full-duplex and thus you can key up anytime without having to wait for the node Tx to unkey, so it appears ASL/App-rpt took that into consideration and is making it work a little more like a repeater in this case, giving you a little extra hang time after each TX is complete so if you key up or a remote node keys up there's no unnecessary carrier drop and extra squelch tail.
To better characterize the timing I set up a script to get the rpt keyed vars from asterisk every 50mS, then keyed up just for a fraction of second, enough to trip CD. Results:
time 1671868925.527 [cos_keyed] => 1 [tx_keyed] => 1
time 1671868926.803 [cos_keyed] => 0 [tx_keyed] => 1 => diff: 1200 mS
time 1671868929.321 [cos_keyed] => 0 [tx_keyed] => 0 => diff: 2500 mS
This timing works great for me. The extra 1.2 secs of space is not noticeable or annoying during a normal QSO on a repeater, where there's already several seconds of hang time and a courtesy tone. When voxhangtime was 2000mS (vs. 500mS now) it was much more noticeable though and the time to drop COS was closer to 3 seconds.
If you have any noise on the node's transmit or receive audio these are some simple solutions:
If you have distorted audio or stuttering/dropouts, make sure all your port settings match on the ASL site for both the server and the node, and that those match the port settings in iax.conf (bindport), rpt.conf ([node#] = radio@ip:port), in the node's firewall (iptables) configuration, and in your router/cable modem. This is 6 different places the port has to be set. If it's your first node then you probably have the default of 4569 and didn't need to change anything, but if it's not your first node then you have to use a different port number (eg. 4570, 4571, ...), and make sure all 6 of those places have the same setting and that your router/cable modem has a port forwarding rule to forward traffic on that port# to your node. The node can still appear to be working fine if those settings don't match but the audio will be more likely to have stuttering/dropouts.
See this page for details on how a COS line can be installed in an RT85 if desired. This is not necessary if using the usbradio driver carrierfrom=vox mode, but having a hardware COS line does slightly simplify the settings and can in some cases provide a more reliable COS signal eg. in cases where you are transmitting 1+ Watt from or adjacent to the node and do not have ferrite filters everywhere they should be.
My goal has been to find the least-expensive possible way to build a full-duplex node using only high-quality off-the-shelf FCC-certified components. In addition I wanted it to be fully self-contained with everything mounted on a nice backboard or enclosure such that it's portable and compact.
I plan to sell a few fully assembled and tested nodes, not just to make money or to make a lot of them, but to create and document the whole process and know that the design is well-engineered and able to be sold as a turnkey product, for anyone who for whatever reason might prefer to pay a little more but have the node already fully assembled, configured and tested. And also so that anyone who builds one themselves will have all needed info and know that the important details have been thought through and properly tested. Because all the software is open-source and the node uses only commonly available off-the-shelf parts, anyone can make a node with the same main components and sell them on ebay/qrz/eham/etc., while adding their own unique touches, other features, options, or optimizations. I encourage anyone to do so and hope this article will be useful. There's nothing particularly groundbreaking about this approach, it's just a combination of a few subtle details and insights that together can result in a high-quality node at a low cost.
I can build custom nodes for a reasonable price or help with any steps in that process, and will be listing some full-duplex nodes on ebay and various sites - just search for "Full-Duplex AllStar Node" and be sure to only buy products made and supported by reputable hams using high-quality FCC-certified components.
Note for ebay users: Be sure to contact me (or any other node or ham radio equipment builder) directly before purchasing a node through ebay. Ebay fees are quite high and you can save 10-20% by ordering direct from a reputable seller and using no-fee payment services such as venmo or zelle.
For any questions, feedback or other enquiries email David NR9V at chc_media at yahoo dot com. See AllScan.info for the most up-to-date version of this article and for info on AllScan - a free & open source web app for AllStar nodes providing Scanning and Favorites Management features.
|How To Build a High-Quality Full-Duplex AllStar Node for Under $200|
|Thanks for taking the TIME and EFFORT to compile such a thorough post and your experiences with the components. It takes time to carefully go through this long post and digest it all (so that it won't be too far over my head!). Some of the prices have increased since your initial post, so $200 USD is a good estimate of the usual cost.|
|How To Build a High-Quality Full-Duplex AllStar Node for Under $200|
|excellent article - the process is almost like, but looks far easier than trying to renew your license using the FCC's new CORES2 system - LOL!|
|How To Build a High-Quality Full-Duplex AllStar Node for Under $200|
|Way, way, way over my head stuff.........Good luck to those who take this project on.|
|How To Build a High-Quality Full-Duplex AllStar Node for Under $200|
|While I don't plan to build a similar node, it was interesting to hear about the plentiful and cheap Dell Wyse 3040 computers, eBay has lots of them at good prices and I'm sure I can find a use for one or two.|