I describe how to compile WSJTX, version 2.5.1, for a Raspberry Pi 4(00) running under Ubuntu 21.10 for ARM processors. This has the advantage that a Raspberry Pi 4(00) can be used as a shack PC, since Ubuntu is a full fledged desktop operating system, and that the Raspberry Pi only draws about 5W of power, which makes it suitable for continuous running, e.g. for reporting to pskreporter.info.
I have an old shack PC running Ubuntu Desktop, which is big and draws about 40W of power. But since a few years Ubuntu Desktop is also available for the Raspberry Pi, including Raspberry Pi 4 and 400, which only draws about 5W of power, with a similar performance of the old PC, such that it can run 24/7 for pskreporting. Compared to Raspbian, Ubuntu also has the advantage that Ubuntu is a full desktop OS, including screen lock and audio support and controls.
But a direct installation of WSJTX using the ARM binary for Raspbian seems not to work because of missing dependencies (and no installation candidates for them). Hence a solution is the compilation of the source code. This is usually quite tricky and lengthy, so here is a concise step by step description for setting up Ubuntu and compiling WSJTX.
- Fix “freezing” bug in Ubuntu 21.10 for ARM:
change the following line in /boot/firmware/config.txt:
To the following:
1 dtoverlay=vc4-fkms-v3d In other words, to use the "fake" KMS overlay (fkms) instead of the "full" KMS overlay (kms).
-Fix lost ttyUSB in Ubuntu 21.10 for ARM: https://bugs.launchpad.net/ubuntu/+source/linux-raspi/+bug/1947723
1 sudo apt install linux-modules-extra-raspi
-Download the latest source code for wsjtx from https://physics.princeton.edu/pulsar/k1jt/wsjtx.html And unpack it e.g. with
1 tar -zxvf wsjtx*.gz
-Instructions are based on http://www.kk5jy.net/wsjtx-build/ -In a terminal install the needed libraries:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 sudo apt-get install -y cmake automake libtool asciidoctor asciidoc gfortran qtmultimedia5-dev libqt5serialport5-dev qttools5-dev qttools5-dev-tools libboost-all-dev libfftw3-dev libreadline-dev libusb-1.0-0-dev libudev-dev portaudio19-dev -Change directory to wjtx source directory: cd wsjtx*/src -Remove perhaps existing older hamlib sudo apt-get remove libhamlib* -Unpack hamlib: tar -zxvf hamlib*.tar.gz cd hamlib* ./configure --prefix=/usr/local --enable-static make sudo make install sudo ldconfig cd .. -Then compile wsjtx: tar -zxvf wsjtx.tgz mkdir build cd build cmake ../wsjtx make sudo make install cd ~ -Start wsjtx with: wsjtx &
Now, wsjtx should start up normally and it can be set up.
Many greetings, 73, Gerald, DL5BBN