How to install WSJT-X on Raspberry Pi?

Install WSJT-X

If you are an avid amateur radio operator or simply an interested electronic hobbyist, then this tutorial is perfect for you. This article will go over how to install WSJT-X on your Raspberry Pi. It undoubtedly is a bit more complex to install WSJT-X on a Linux operating system from Source as several libraries and packages are required to be installed before WSJT-X can function properly. This can be compared to a Windows or Mac operating system where a single installation file is all you need to get WSJT-X up and running effortlessly. All you need for this tutorial is a Raspberry Pi and a suitable OS (preferably Raspbian) so let’s get right into it!

Introduction to WSJT-X

For those that are unfamiliar with what WSJT-X is, it essentially is amateur radio (ham radio) software that is specifically designed for weak-signal radio communication. Within this software itself, you can access various digital modes of radio communication such as FT8, FT4, JT65, WSPR, etc. To achieve this, WSJT-X transmits and decodes specific audio signals between your computer and your radio transceiver via a USB soundcard. In terms of signal propagation, the fact that small bursts of high-frequency, audible pitches are being transmitted over radio waves allows for long-range radio communication even when solar conditions are not favourable.

From the perspective of amateur radio operators, you can then make contacts (also known as QSOs) with fellow operators right from your computer by sending short pre-generated messages (in the case of FT8) or straight audio tones (in the case of WSPR). 

Method A

If method A does not work, please try method B.

Step 1:

Before downloading any packages and libraries, run these two commands at the Terminal (command prompt) which essentially checks for any pending updates on your Raspberry Pi and then updates them:

sudo apt-get update

sudo apt-get upgrade

After running those two commands, reboot your Raspberry Pi to apply those changes with this command: sudo reboot

checks for any pending updates

Step 2:​

After your Raspberry Pi has been updated and rebooted, run the following command in the Terminal to download the media library for your Raspberry Pi. This is important as WSJT-X decodes and transmits audio to communicate with your radio.

sudo apt install -y qtmultimedia5-dev libqt5serialport5-dev

Do note that these commands may take a few minutes to run as they involve downloading and installing large files, packages and libraries to your Pi.

download the media

Step 3:​​

Then, you will need to run this command in the Terminal to install some additional libraries regarding developer tools:

sudo apt install -y qttools5-dev qttools5-dev-tools

install additional libraries

Step 4:​​​

Next, it is important that you run this command in the Terminal to install some required multimedia plugins:

sudo apt install -y libqt5multimedia5-plugins

install multimedia plugins

Step 5:​​​​

Run the below command in your Terminal to install the required libraries involved with Fast Fourier Transforms (FFT), which basically is used by WSJT-X to convert audio signals coming from your radio into readable frequency information:

sudo apt install -y libboost-all-dev libfftw3-dev

Step 6:​​​​​

Furthermore, run the following command to install the libusb library, which is responsible for managing communication between the computer (Raspberry Pi) and the radio (via the USB soundcard):

sudo apt install -y libreadline-dev libusb-1.0-0-dev

install the libusb library

Step 7:​​​​​​

Moreover, execute this command to install the portaudio library, which is responsible for audio playback and recording from I/O devices:

sudo apt install -y libudev-dev portaudio19-dev cmake

install the portaudio library

Step 8:​​​​​​​

The next installation that you will need to run is for the Fortran library, a very important library that is composed of code involved in handling geometry transformations, nonlinear optimization, Fourier transforms, clustering, statistics, mathematics, linear algebra, strings and chemistry. WSJT-X effectively uses this library for its mathematical calculations when decoding and transmitting signals to communicate over radio waves.

sudo apt install -y libgfortran5

run the Fortran library

Step 9:​​​​​​​​

Now, we have completed the installation of all the necessary packages and libraries for WSJT-X. Next, we will create a folder/directory called “build” to store the WSJT-X program file afterward. Run the three below commands:

cd ~

mkdir build

cd build

Step 10:​​​​​​​​​

To install WSJT-X itself for Linux, navigate to the following URL in a web browser (e.g. Chromium or Duck Duck Go) and download the file named ‘wsjtx-2.5.4.tgz’ as we will be working with version 2.5.4 of WSJT-X:

Step 11:​​​​​​​​​​

After downloading WSJT-X, copy and paste the downloaded file into the ‘build’ directory that you have just created, which should be under /home/pi. You can use the File Manager to help navigate through.

help navigate

Step 12:​​​​​​​​​​​

Go back to your Terminal window and assuming you are still in the ‘build’ directory (after cd build), enter the following command to extract the WSJT-X file from its .tgz file extension:

tar xzf wsjtx-2.5.4.tgz

extract the WSJT-X file

Step 13:​​​​​​​​​​​

In addition, create another ‘build’ directory within the existing ‘build’ directory to store all the packages and files that will support WSJT-X by running these two commands:

mkdir build

cd build

support WSJT-X

Step 14:​​​​​​​​​​​

Then, since you are now inside the second ‘build’ directory, run this command to build some packages for WSJT-X:


Step 15:​​​​​​​​​​​

At this stage, you have installed all of the required packages and libraries to support WSJT-X but with this command, you will now build the package to install WSJT-X from source to your Raspberry Pi. Do keep in mind that the installation may take some time as it is a fairly large file. 

sudo cmake –build . –target install

install to Raspberry Pi

Step 16:​​​​​​​​​​​

Lastly, run the below command to open up WSJT-X:


You can also open up WSJT-X by navigating to the top left Raspberry Pi logo, clicking on Sound & Video and then WSJT-X.

open up WSJT-X

Method B

Step 1: Update your Raspberry Pi

Ensure that your Raspberry Pi is up to date by running the following commands in the terminal:

sudo apt update
sudo apt upgrade

Step 2: Install dependencies:

WSJT-X has some dependencies that need to be installed first. Run the following command to install them:

sudo apt install libqt5multimedia5 libqt5serialport5

Step 3: Download WSJT-X:

You can download the WSJT-X package for ARM architecture (Raspberry Pi uses ARM architecture) from the official website:

Step 4: Extract the downloaded package:

Use the tar command to extract the downloaded package. Navigate to the directory where the package is downloaded and run:

tar -xzf wsjtx-x.xx.xx-armhf.deb.tar.xz

Step 5: Install WSJT-X:

Once extracted, navigate into the extracted directory and install WSJT-X using dpkg:

cd wsjtx-x.xx.xx-armhf
sudo dpkg -i wsjtx-x.xx.xx-armhf.deb

Step 6: Resolve dependencies:

If you encounter any dependency issues during installation, you might need to manually install the dependencies using apt:

sudo apt –fix-broken install

Step 7: Run WSJT-X

After successful installation, you should be able to run WSJT-X by searching for it in your applications menu or by running the command wsjtx in the terminal.

That’s it! You should now have WSJT-X installed and ready to use on your Raspberry Pi.


Hopefully from this tutorial, you have gotten WSJT-X set up and running successfully on your Raspberry Pi. As you have seen from all of these steps, it definitely is more complex than installing WSJT-X on other operating systems but now, you can have a functional copy of WSJT-X on your Pi which you could bring to the field when conducting portable ops or POTA/SOTA (Parks/Summits On The Air). In addition, integrating ham radio software into your Pi and essentially dedicating your Pi to amateur radio uses can be an extremely useful decision if you require a portable piece of kit to add to your go box or vehicle. Plus, it eliminates the need for a large power supply as the Raspberry Pi can easily be powered via solar panels or even a powerbank. There will definitely be more tutorials to come into how you could utilize your Raspberry Pi for amateur radio applications!

Try method B if the method A does not work, leave your message if you have any questions.

3 respostas

  1. As noted by others, the instructions are missing a step ( cmake –build . )
    It’s all in the extracted file, INSTALL (read it for yourself) 😉
    Should be:

    $ mkdir ~/build
    $ cd ~/build
    $ tar xzf wsjtx-2.3.0.tgz
    $ mkdir build
    $ cd build
    $ cmake –build .
    $ sudo cmake –build . –target install

  2. Sadly this did not work. I think there is a problem with the instructions.
    I carefully installed all of the debian packages, and downloaded the exact tgz file into the ~/build/build directory, gunziped and extracted the tarball.
    When I execute step 14
    I get a deprecation warning but it is just a warning for the developers I think.
    ejy@raspi-23:~/build/build $ cmake -DWSJT_SKIP_MANPAGES=ON -DWSJT_GENERATE_DOCS=OFF ../wsjtx-2.5.4
    CMake Deprecation Warning at CMakeLists.txt:1 (cmake_minimum_required):
    Compatibility with CMake < 2.8.12 will be removed from a future version of

    Update the VERSION argument value or use a … suffix to tell
    CMake that the project does not need compatibility with older versions.

    Then step 15 does not work. It again returns a deprecation warning and no wsjt binary is produced.
    — Configuring done
    — Generating done
    — Build files have been written to: /home/ejy/build/build
    ejy@raspi-23:~/build/build $ ls
    CMakeCache.txt CMakeFiles cmake_install.cmake hamlib-prefix Makefile wsjtx-prefix

  3. Didn’t work

    pi@hampi:~/build/build $ sudo cmake –build . –target install
    CMake Error: The source directory “/home/pi/build/build/install” does not exist.
    Specify –help for usage, or press the help button on the CMake GUI.
    pi@hampi:~/build/build $

Deixe um comentário

O seu endereço de email não será publicado. Campos obrigatórios marcados com *

Blogues relacionados

Gostaríamos muito de ouvir a sua opinião