PLEASE NOTE: These instructions only work on Intel-based hardware. ARM-based machines such as the Raspberry Pi do not run Winlink Express, VARA or WINMOR at all. This is because the underlying code is written exclusively for Intel compatible (including AMD) CPUs and has not been ported to ARM CPUs. For those machines we recommend using PAT as a Winlink Client and ARDOP as a modem for HF.

These updated instructions (updated as of Dec 2019) are based on the earlier versions found here (a big thanks to dcj21net):

The above instructions only worked with RMS Express 1.4.4 – these new instructions discovered and tested by K6ETA will work with the latest versions including VARA and ARDOP support.

Before we get started, please note that DotNET support using Winetricks is very tricky. If you aren’t computer-savvy, I strongly recommend you use a $39 commercial product called Crossover to avoid many frustrating issues getting DotNET to work properly. If you opt for the easier Crossover method, see Appendix 2. If not, the Winetricks method below may or may not work for you. You’ve been warned!

First we need to associate your user name with serial access for rig control, etc.

sudo usermod -a -G dialout $USERNAME

sudo usermod -a -G tty $USERNAME

sudo usermod -a -G audio $USERNAME

We need to start with a fresh version of Wine, so back up your old wine ‘bottle’ and clear caches.

mv ~/.wine ~/.wineBU     then (if it exists)     rm -rf ~/.cache/winetricks

We need Wine with 32bit architecture from the official Wine repository. 

Linux instructions (Ubuntu, Mint, Debian) to install Wine

export WINEARCH=win32

sudo add-apt-repository ppa:ubuntu-wine/ppa

sudo apt-get update

sudo apt-get install mono-complete

sudo apt-get install gnome-exe-thumbnailer

We need the latest winetricks utility to help us install components – see notes in appendix 2

sudo apt-get install winetricks

Windows emulation should be set to Win 7. Our sound driver must be ALSA …Pulseaudio causes distortion with many USB soundcards. We will also install Microsoft .NET 3.5sp1 and Visual Basic runtime using winetricks:

winetricks win7

winetricks sound=alsa

winetricks -q dotnet35sp1

winetricks vb6run

You may be prompted to download and install wine-mono or wine-gecko. You will need these too. IF YOU ENCOUNTER ANY ERRORS INSTALLING DOTNET, Winlink Express won’t install. See appendix 2.

We will need a COM1 port for rig control. This command will make a symlink (aka, an alias or shortcut) for COM1 in the dosdevices folder, which points to the USB device – usually ttyUSB0 on linux

ln -s /dev/ttyUSB0 ~/.wine/dosdevices/com1

Now add the COM port to the windows registry.

gedit ~/.wine/system.reg

After “#arch-win32”, add the following two lines, save and exit.

[Hardware\Devicemap\Serialcomm] 1131331688


For VARA support, download these components:

and place them in ~/.wine/drive_c/windows/system32 and if any exist, replace them.

Download Winlink Express (RMS Express) from the website.

Extract the zip file, and then double click on RMS Express Setup. Click Next and accept all defaults (yes, including installing on C: ) Once the Setup finishes, run RMS Express by clicking on the icon on the desktop or in the menu (under Wine)

Fill out your setup information – entering Call Sign and Password may pull your info. Click Update. Now you’re ready to use RMS Express. If the properties window keeps losing focus, move your mouse off the window.

Use RMS Express normally. You may be asked to install additional software. Install them normally, just like windows. Accept the default locations. I’ve tested two of the helper applications.

Install ITS HF using defaults when prompted for propagation information. Follow the link in the message box.

Appendix 1: Common Problems

Most problems stem from installation problems with DotNET 3.5sp1 or setting up the COM port. PLEASE NOTE that the newest version of Wine (and Crossover 17 and newer) use a new COM port scheme, which will erase your symlink every time you reboot! To fix it, see this post.

DotNET support is not very good using the free Winetricks software. Some versions of Linux simply won’t work and most will only work if you follow the above steps exactly. If you’re willing to pay $39 for Crossover, that software makes installing DotNET very easy on both Linux and Mac.

If you want to use the free Winetricks installation method, make sure there are no errors when installing DotNET 3.5sp1. If you see an error, it’s likely that your Wine installation wasn’t fresh or you installed the wrong version of Winetricks, wine-mono or wine-gecko. Make sure there are no existing “.wine” or “.cache/winetricks” folders in your home directory before starting.

You need you be sure not to install 64 bit versions of wine components. Be absolutely sure to use the following command in any terminal window before trying to install any wine components:

export WINEARCH=win32

If you opt for the commercial Crossover method, simply create a new Windows 7 bottle named “Ham Applications” or something similar, then click on “Install a Windows Application” and select “browse all applications” and find “Non-Applications/Components/Microsoft .NET 3.5 service pack 1”. Use the same method to install “Microsoft Visual Basic 6 Runtime Service Pack 6”. It’s also a good idea to install “Fonts/Core Fonts” to make everything appear correctly. Paying $40 is a pain, but trying to install DotNET using Winetricks may not work in the end. Your choice.

When making the COM port symlinks, be sure to follow the instructions verbatim. This will only work if your Wine folder is named “.wine” and it’s in the home directory. Also make sure you used the correct name (all things in Linux terminals are case sensitive) for the USB/Serial cable.

Appendix 2: Using Crossover for DotNET and Visual Basic

The $39 commercial product called Crossover can be used to avoid many frustrating issues getting DotNET to work properly. Here’s the process to use Crossover instead of Winetricks above.

Please note that Crossover uses the directory ~/.cxoffice instead of ~/.wine for its bottle structure. Substitute .cxoffice for .wine in any instructions above if you use Crossover.

Use Crossover to create a bottle (recommend using the name “Ham” or something similar). Install “Microsoft Dot NET 3.5 service pack 1” in that bottle, then install “Microsoft Visual Basic 6 Runtime Service Pack 6”, “Microsoft HTML Rendering Engine 8” and “Visual C++ 14.0” for VARA support. These components can be found in Crossover’s application list under “Non-Applications… Components”. Now download and install RMS Express in that bottle as well.

Some tips when using Crossover:

Always make sure you have the correct bottle selected before doing anything.Otherwise the default creates a new bottle each time. Everything should be in the “Ham” bottle you already created above.

If you get stuck installing programs, it’s because you need to tell Crossover it is an “Unlisted Program” by clicking on the “Browse All Applications” button and then clicking on “Unlisted Application”.