ToughBook CF-31
For ham radio EmComm field work reconditioning a used Toughbook 31 with Linux Mint Xcfe can
be done for under $400.
In 2026 a new Toughbook 40 base unit retails with shipping for around $5,100 out the door.
With upgrades the cost exceeds $6,500.
As of June 2026 I offer CF-31 units reconditioned, loaded with emcomm software
and tested starting at $350 with a 30 day gaurantee for normal use and care.
These units are an excellant choice for POTA and off grid emergencies. Built for harsh environments, its
primary draw for hams is its massive, sunlight-readable screen, built-in serial ports for
rig control, and resilience against drops, rain, and freezing temperatures.
For SOTA you have to consider the Toughbook CF-31 8 pound weight.
Keys
Screen Brightness - FN->F1 Down, FN->F2 Up
Sound Volume - FN->F5 Down, FN->F6 Up
Distros - good audio, touch screen
Mint 22.3 Xfce (preferred)
MxLinux 25.1 Xfce
Bluetooth
Paired LC-B41 Earbud on Mint 22.3 Xfce
Repo
To get latest source for localhost:
You will need github login/password fron me.
Before you pull from git, wipe your current localhost
Backup /var/www/html
Thunar del html folder
Open terminal. Nav to /var/www/html.
git clone https://github.com/koglvt/toughbook.git .
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
If you prefer I can provide a zip file you can use to update your
localhost.
Install
Below script does it all. Skip JS8Call. Set JS8Call-2.5.2-x86_64.AppImage in site bin folder to
run as a program(Executable)
git clone https://github.com/km4ack/73Linux.git $HOME/73Linux && bash $HOME/73Linux/73.sh
Change Conky Callsign
Hamradio->Conky Preferences
Enter your callsign->Continue->Select default->Load config
Settings
Callsign
To change to your callsign for this reference localhost web site:
Open terminal: Ctrl->Alt-t
Enter
changecallsign
Revise the callsign variable to your callsign.(Be sure to use quotes)
const callsign = "KO6LVT";
Save the file and exit the editor (Ctrl + O, Enter, Ctrl + X in nano).
Close the terminal and clear your browser cache(Ctrl->r) to see your callsign updated in the
title and navbar.
Change callsign manually
Edit the const.js file in the js folder.
-
Open a terminal and edit the const.js file
nano /var/www/html/js/const.js
Revise the callsign variable to your callsign.(Be sure to use quotes)
const callsign = "KO6LVT";
Save the file and exit the editor (Ctrl + O, Enter, Ctrl + X in nano).
Close the terminal and clear your browser cache to see your callsign updated in the
title and navbar.
Ctrl-Shift-R on most browsers.
RTL-SDR
To get your RTL-SDR Blog V4 working on a Panasonic Toughbook CF-31 running Linux Mint,
you must purge generic drivers and build the customized Osmocom V4 drivers.
-
You cannot use the default repository drivers.
The RTL-SDR V4 requires a newer, modified
driver branch containing the necessary upconverter and tuner logic.
Follow this complete step-by-step pipeline to purge conflicting
TV drivers, compile the V4 drivers, and get your software running.
-
1. Purge Old Drivers
Standard Linux repositories distribute an older driver branch that
will cause the V4
to output only static or fail entirely.Open your terminal.
Remove any pre-installed RTL-SDR packages.
sudo apt purge ^librtlsdr
sudo apt autoremove
-
2. Install Build Dependencies
You must compile the official RTL-SDR Blog V4 Drivers from
source.
Install the required build tools first:
sudo apt update
sudo apt install libusb-1.0-0-dev git cmake pkg-config build-essential
-
3. Clone and Build the V4 DriverExecute these commands sequentially to clone the correct driver
branch, compile it, and install it to your system:
git clone https://github.com
cd rtl-sdr-blog
mkdir build
cd build
cmake ../ -DINSTALL_UDEV_RULES=ON
make
sudo make install
-
4. Reload Rules and Blacklist TV DriversLinux Mint will mistake your SDR for a generic USB DVB-T television
dongle and block access to it.Copy the hardware rules to your system:
sudo cp ../rtl-sdr.rules /etc/udev/rules.d/
-
5. Blacklist the default kernel TV module by creating a configuration file:
echo "blacklist dvb_usb_rtl28xxu" | sudo tee /etc/modprobe.d/blacklist-rtl.conf
-
Reboot your Toughbook CF-31.
-
5. Verify the Connection
Plug your RTL-SDR V4 into a USB port. Test if the system
initializes the hardware correctly by running:
rtl_test
Sound
- Debug sound:
-
Open terminal(Ctrl-Alt-T)
-
alsamixer
-
F6 Select Sound Card
-
Card s/b HDA Intel PCH
Verify no "MM"
Make sure Headphones have sound Volume turned up
configure PipeWire to use a 48 kHz sample rate
and a 32-bit format (S32_LE), as these are the most reliably supported by the
CF-31's Intel HDA audio hardware.
The key steps are:
Verify Hardware Support:
Use cat /proc/asound/card*/codec#* or
aplay -D hw:X --dump-hw-params /dev/zero (replace X with your card number) to confirm the
supported sample rates and formats.
The CF-31's audio typically supports S16_LE and S32_LE, but not S24_LE.
Set the Profile: Ensure the correct audio profile is active. For full duplex SDR work,
use
pactl set-card-profile alsa_card.pci-0000_00_1b.0 output:analog-stereo+input:analog-stereo.
/usr/share/alsa-card-profile/mixer/paths
analog-output.conf |
GPS
To determine if your Panasonic Toughbook CF-31 has GPS, you can check the
BIOS settings.
Check the BIOS:
Restart the Toughbook and press F2 when the Panasonic logo appears.
Navigate to Advanced and select the Network submenu.
Look for a GPS option; if it is listed as "Installed" or "Enabled," the hardware
is present.
tty port
dmesg | grep tty
gpsd
gpsd is the standard Linux service for translating raw NMEA GPS coordinates
into readable data.
sudo apt update && sudo apt install gpsd gpsd-clients libgps-dev
Edit gpsd config
sudo nano /etc/default/gpsd
Values
START_DAEMON="true"
USBAUTO="false"
DEVICES="/dev/ttyUSB0" <-- (Replace this with the correct tty port from
dmesg)
GPSD_OPTIONS="-n"
Bias Tee
The primary warning for the RTL-SDR Blog V4 bias tee is that you must not connect it to
a DC short-circuited antenna unless an LNA (Low Noise Amplifier) is placed between
the antenna and the dongle.
While the circuit includes thermal self-resetting fuses and overcurrent protection,
leaving the bias tee on while short-circuited for an extended period (days)
can permanently damage the LDO or fuse.
Key safety and usage guidelines
- Safe Configuration: The correct setup is DC Short Antenna → LNA → Coax → V4 (Bias Tee ON). This ensures the LNA protects the dongle from the short circuit.
- Power Limits: The V4 bias tee provides 4.5V and can continuously pull up to 180 mA.
- Driver Requirement: The software-controlled bias tee only functions if you are using the official RTL-SDR Blog drivers; standard generic drivers will ignore the bias tee settings.
- Clones: Be aware that many counterfeit V4 clones lack a functional bias tee and may use inferior components, leading to higher noise floors or hardware failure.
Online Reference
v4 Users Guide
SDR++
Users Guide |
Manual |
Linux Mint 22.4 Wilma needs the unbuntu noble release, ie - sdrpp_ubuntu_noble_amd64.deb
Copy from Downloads to Tmp to avoid install errors(permissions issue)
..
radio@radio-cf31wbp50lm:/tmp$ sudo apt install ./sdrpp_ubuntu_noble_amd64.deb
Initial Steps
- Increase the RF gain from zero to a higher value in the configure menu.
- Reduce the range slider on the right of the SDR# window to about -70
(for RTL-SDR dongles).
- Enable the “Correct IQ” setting to remove the center spike if using an R820T/R820T2,
or enable “Offset Tuning” in the configure menu if using an E4000/FC0012/13.
- Turn off the “Snap to grid” setting, or adjust the PPM offset accordingly.
- Set the 'Mode' to the correct setting for the signal that you are listing to.
Screen Layout
Dependancy Problems
Install fails
dpkg: dependency problems prevent configuration of sdrpp:
sdrpp depends on libfftw3-dev; however:
Package libfftw3-dev is not installed.
sdrpp depends on libglfw3-dev; however:
Package libglfw3-dev is not installed.
sdrpp depends on libvolk-dev; however:
Package libvolk-dev is not installed.
sdrpp depends on librtaudio-dev; however:
Package librtaudio-dev is not installed.
|
Fix
sudo apt install -y libfftw3-dev libglfw3-dev libvolk-dev librtaudio-dev
apt --fix-broken install
|
Online Vids
Quick Start |