Pat (Winlink) on Linux: Installation and configuration
Table of Contents
Installation
https://github.com/la5nta/pat/releases
For example
 | 
 | 
  
      
        Permalink 
        
   
   
 
       
  Pat Configuration
 | 
 | 
- Set your callsign
 - Set your maidenhead locator
 
Also setup pat to use hamlib over rigctld (and optionally set it’s http
address)
 | 
 | 
This assumes you’ve got rigctld already running, and the rig name here matches the 3rd column in
$(rigctl -l)
Next tell Pat some rig specifics for ardop (set these in addition to the defaults)
 | 
 | 
Note the
rigname must match your rig mentioned inhamlib_rigs
Then create aliases like
these in $(pat configure) (in addition to telnet), and leverage $(pat rmslist) for choices
 | 
 | 
Note: The frequency is in
kHz, notMHz
  
      
        Permalink 
        
   
   
 
       
  Setup Ardop
https://github.com/la5nta/pat/wiki/ARDOP
First download ardopcf for your platform.
For example:
 | 
 | 
Next configure alsa with specifics for ardop in ~/.asoundrc (this example
happens to match my FT-991A)
 | 
 | 
Now you can run ardopcf and leave it running (or use systemd)
 | 
 | 
You can also find RMS relay stations using ardop via:
 | 
 | 
  
      
        Permalink 
        
   
   
 
       
  ardopcf vs ardopc
Just to clarify, this project now (as of 2024) recommends ardopcf from
https://github.com/pflarue/ardop. Previously it documented using
ardopc from
John Wiseman (which used a binary named ardopc).
You might need to change references from
ardopctoardopcf(for example if you’re using a systemd unit file)
Reference: https://github.com/pflarue/ardop/blob/master/changelog.md
  
      
        Permalink 
        
   
   
 
       
  Run pat
 | 
 | 
  
      
        Permalink 
        
   
   
 
       
  DT GAIN
The goal is to use the highest value, but with no visible ALC
- Set the radio 
METERtoALC - Connect to an RMS reflector
 - Raise the 
DT GAINuntil you seeALC - Then dial it back down until the 
ALCis no longer visible 
For example, I’ve had good luck at 50W with DT Gain of 20
  
      
        Permalink 
        
   
   
 
       
  Winlink account creation
If you don’t yet have a winlink connection, you’ll do the following:
- Leave the password field empty in 
$(pat configure) - Connect via 
telnet(internet connection needed, no radio needed) - You’ll get a message telling you about your new password
 - Put that password into your config (and ideally change it)
 
  
      
        Permalink 
        
   
   
 
       
  Winlink RMS Reflectors
When connecting to RMS reflectors, there are center and dial frequencies.
I’ve read the Winlink FAQ and
it really seems to tell you to use the center frequency. That being said, I
think you should use the dial frequency. The fact that pat takes the
time to formulate the connection string off the dial makes sense… and I’ve
tried to connect to both - and I use the dial frequency :)
  
      
        Permalink 
        
   
   
 
       
  Overview of path with ax.25
This setup seems reasonably complex. On Linux it goes something like this:
- You tell ax.25 about your callsign and some baud rate settings and stuff
 - You point Direwolf at your radio sound card
 - You attach an ax.25 port to the resulting Direwolf device
 - Pat talks to the ax.25 port
 - I’ve not actually tried this yet… below are just notes while researching it a bit
 
  
      
        Permalink 
        
   
   
 
       
  Dependencies
 | 
 | 
  
      
        Permalink 
        
   
   
 
       
  Systemd
Edit and write this to /lib/systemd/system/ax25.service
 | 
 | 
 | 
 | 
Then copy the init file that sets all the bits
 | 
 | 
  
      
        Permalink 
        
   
   
 
       
  ax25
Append to /etc/ax25/axports (avoid trailing line breaks so it seems)
 | 
 | 
Follow the upstream docs
 | 
 | 
Watch the ax25 interface for activity:
 | 
 | 
  
      
        Permalink 
        
   
   
 
       
  Configure pat
You want pat’s ax25 config to match /etc/ax25/aexports
 | 
 | 
Then create aliases like
these in $(pat configure), and leverage $(pat rmslist) for choices
 | 
 | 
  
      
        Permalink 
        
   
   
 
       
  References (random order)
- https://www.winlink.org/sites/default/files/download/wl2k_faq_7.pdf
 - https://getpat.io/
 - https://github.com/la5nta/pat/wiki/AX25-Linux
 - https://www.youtube.com/playlist?list=PL1QTYT4Qo9cY98NFmxrTvtGyWI9pgxtFq
 - https://feeding.cloud.geek.nz/posts/using-kenwood-th-d72a-with-pat-linux-ax25/
 - http://www.trinityos.com/HAM/CentosDigitalModes/hampacketizing-centos.html
 - https://www.kevinhooke.com/2017/05/24/building-and-running-a-packet-radio-winlink-solution-in-a-docker-container-on-a-raspberry-pi/
 - https://github.com/kevinhooke/DockerRPiPATWinlink
 - https://github.com/rfrht/Voicemeeter-FT-991A
 - https://www.reddit.com/r/amateurradio/comments/72wgpc/packet_radio_over_usb_data_cable/