System
| OS | Raspberry Pi OS Lite, 64-bit |
| Hardware | Raspberry Pi Zero 2W |
| Audio Device | Digirig Mobile |
| Radio | Baofeng UV-5R |
Audio Devices
| Direction | Path | Channels | Sample Rate |
| Input |
plughw:CARD=Device,DEV=0 |
Mono |
8000 Hz |
| Output |
plughw:CARD=Device,DEV=0 |
Mono |
8000 Hz |
Pick the audio devices that have USB in their name
(the Digirig enumerates as a USB sound card). On a low-powered Pi
Zero 2W, an 8000 Hz sample rate noticeably reduces CPU load versus
the 48000 Hz default and decodes just as well. A faster board can
stay at 48000 Hz.
Push-to-Talk
| Method | Serial RTS |
| Device Path | /dev/ttyUSB0 |
| Invert Polarity | Disabled |
On the Digirig Mobile, use the USB-Serial port for
keying. The CM108 HID PTT method does not key the radio through this
interface — Serial RTS is the one that works.
Baofeng UV-5R Radio Setup
APRS on a Baofeng works best with open squelch and most of the
radio's convenience features turned off. Set the channel to your
local APRS frequency (144.390 MHz in North America) and configure
the menu items below.
| Menu | Setting | Value | Why |
| SQL | Squelch | 0 | Open squelch — the radio's squelch is too slow and clips the start of packets |
| TXP | Transmit Power | HIGH or LOW | HIGH to reach a distant digipeater; LOW if you send packets rapidly and want to avoid overheating |
| SAVE | Battery Saver | OFF | Power-save can cut the receiver between packets |
| WN | Bandwidth | WIDE | Standard for 2m amateur use |
| VOX | Voice-Activated TX | OFF | VOX can delay PTT release after Serial RTS drops |
| TDR | Dual Watch | OFF | Keeps the radio locked on the APRS channel; also prevents open squelch from working |
| R-DCS | Receive DCS | OFF | Any receive tone/code squelch defeats open squelch |
| R-CTCS | Receive CTCSS | OFF | Any receive tone/code squelch defeats open squelch |
| BCL | Busy Channel Lockout | OFF | Incompatible with open squelch |
| SFT-D | Frequency Shift | OFF | Transmit and receive on the same frequency — no offset |
| STE | Squelch Tail Elimination | OFF | Not needed for packet |
| ROGER | Roger Beep | OFF | A roger beep would corrupt the end of each packet |
Set the radio's volume to roughly 30–50% as a
starting point, then fine-tune the input level as described below.
With the Digirig cable unplugged from the radio and SQL=0, you
should hear a constant stream of static — if you don't, recheck
the volume and the R-DCS / R-CTCS settings.
Setting the Audio Input Level
Correct receive audio level matters. Three controls feed into it:
the radio's volume knob, the Linux capture (mic) level, and the
graywolf input gain. Leave the graywolf input gain at
0.0 dB and set the level with the other two so
that nothing upstream clips.
- Set the graywolf input audio gain to 0.0 dB
on the Audio Devices screen.
- With the Digirig cable temporarily unplugged from the radio,
adjust the volume knob by ear to a steady, moderate stream of
static and APRS chatter, then plug the cable back in. Baofeng
volume is sensitive, so set it roughly here and trim with Linux.
- Run
alsamixer, press F6 to select
USB Audio Device, then F4 to show
Capture controls. Raise or lower the capture level while watching
the LEVEL graph in graywolf.
- Aim for an idle (no-signal) level just below
-20 dBFS. A good received packet will read
lower, around -30 to -35 dBFS. A capture value near 30 of 100 is
typical; if you need it very near 0 or 100, adjust the radio
volume knob and try again.
ⓘ
After configuring audio devices and the channel, restart graywolf
so it picks them up:
sudo systemctl restart graywolf. Enable it to start
at boot with sudo systemctl enable --now graywolf. If
received audio is absent or intermittent, unplug the Digirig cable
from the radio and plug it back in — a flaky TRRS connection
is a common culprit.