CHIRP on Ubuntu

Installing CHIRP is relatively easy. It’s connecting the radio to the computer that can be troublesome. I needed a cable that did not rely on Windows since I go between Ubuntu, macOS, and Windows. I found a MIRKIT FTDI USB Programming Cable Model 3 on Amazon.com that has worked without any fuss with Windows and Linux so far.

I created a virtual machine with a desktop version of Ubuntu 24.04.1 LTS on it. I wanted to go through the process of installing and configuring CHIRP on a clean system as well as document any issues I encounter. This way, when I go to install on a more permanent system, I should have less trouble.

App Center Option

Just a note, here. App Center (snap-store) actually has a result for CHIRP in the list of Debian packages.

There isn’t anything wrong with this option, but configuration options may be lacking or out of date. Even the version listed is somewhat out of date as of this writing. If the software was configured without options you need, you will likely need to build from source anyways.

Installing via Source

A Python graphical user interface (GUI) and pipx are required to be installed.

sudo apt install python3-wxgtk4.0 pipx

Optionally, you can verify the components are installed by replacing the install with list in the apt command.

Next, you will want to download the most recent version of CHIRP-next.

https://archive.chirpmyradio.com/chirp_next/

Select the most recent version, which should be at the top of the list.

Select the version ending in .whl and labeled Python 3 wheel.

Install CHIRP with pipx.

pipx install --system-site-packages ./chirp-20240926-py3-none-any.whl

I received a Note regarding the directory not being in my PATH environment variable. Rather than have to remember where it is installed and use an absolute path, I am going to update my PATH environment variable using the pipx option.

pipx ensurepath

Pay attention to the line telling you that you need to open a new terminal or re-login. Once you open a new Terminal, you should be able to run CHIRP.

Running CHIRP

If you updated your PATH environment variable:

chirp

If you did not update your PATH environment variable:

~/.local/bin/chirp

The first run should prompt you asking if you would like a desktop icon, choose appropriately.

Using CHIRP

Connecting a Radio

Be sure to consult with the CHIRP wiki on the main page for radio compatibility.

https://chirpmyradio.com/projects/chirp/wiki/Home

From the command line, we will need to figure out what USB port is being used. Normally, I would rely on lsusb, but in this case it will not help when running CHIRP.

ls -la /dev | grep -i usb

My device is on ttyUSB0. You might have a different connection, substitute accordingly.

Back in CHIRP, select the Radio menu, then Download from radio….

From the Communicate with radio window, select the Port, choosing the appropriate port for your configuration. Select the Vendor and Model for the radio you intend to use.

In my case, for this demonstration, I am using a Wouxun KG-UV2D handheld transceiver (HT). From the compatibility list, I will use the KG-UVD1P model.

When I select that model, I receive another pop-up letting me know the driver is experimental. This is just a precautionary statement, but know that if your programming does something you aren’t expecting or doesn’t work at all, this may be the reason. In this case, I am going to select Yes. Optionally, if this is a radio you program often and do not experience trouble with, it may be safe to select the Do not prompt again for … message.

I am returned back to the Communicate with radio window.

Select OK.

The Download instructions window opens.

Plug your cable into the computer and the radio, be sure to turn the radio on and provide enough audio volume. Important: tune the radio to a channel with no activity! I have a blank channel 0 that I can use on this HT, so I am using that.

Select OK when ready to download. See the Troubleshooting section below if there are issues connecting.

Programming a Radio

Some radios will have more options than others. Some radios will have settings that can only be modified with programming. For this demonstration, I am still using the Wouxun. The first thing we will notice is that there are two tabs. One is for programming the memory channels (Memories) and the other is for modifying the settings (Settings). The Settings menu also has sub-menus, Configuration Settings, Freq Ranges, and FM Presets.

For the Settings menu and sub-menus, click around and make changes as needed for your particular situation. Again, each radio will have different options available.

For the Memories, consult your local club or find websites with information you want to program in. When I started out, I didn’t know where to look. I ended up finding RepeaterBook and started a list of repeaters in my area.

When it comes to order of programming, it is up to you and your equipment. I have a handheld that displays the frequency as well as the call sign, which I particularly like. But, I do have a few handhelds, too. So as I was getting started, I had repeaters programmed all over the place. I quickly realized that I needed to standardize the list. But then, how? By frequency? By name? This is something you will have to decide.

After configuring the Memories and Settings you want, you can save the file and send them to the radio. This makes programming and updating easier in the future.

Select Radio, then Upload to radio…. Verify the port is correct and select OK when ready.

The Upload instructions window pops up. This is similar to the Download instructions window during the download.

Select OK when ready.

Troubleshooting

In the case of trying to access the radio with CHIRP, when I tried to download from the radio, nothing happened in the GUI; it just sat there. When I went back to the command line, I noticed Permission denied: ‘/dev/ttyUSB0’.

What are the permissions on the device (substitute the appropriate device)?

ls -la /dev | grep -i usb
crw-rw---- 1 root dialout 188, 0 Sep 27 12:14 ttyUSB0

I see that the group is dialout so I am going to add my user account to the group and reboot. You do not have to reboot, but you do at least have to log out and log back in for it to take effect.

sudo usermod -aG dialout arombaut

Leave a Reply

Your email address will not be published. Required fields are marked *