Chirp + Baofeng UV-17R
Chirp + Baofeng UV-17R
This is just a set of notes on getting this radio to work with Linux Mint and Chirp. For the most part everything worked but there was a lot of more configuration and miscellaneous troubleshooting needed. It wasn't as easy as installing the Chirp package from APT.
Permissions
First thing is to make sure that your user has access to the /dev/ttyUSB0 device. Do this first:
sudo addgroup <username> dialout
You'll need to logout and log back in for this to take effect. If this is not set you'll see various permission denied errors when accessing the /dev/ttyUSBx devices.
Remove Conflicting Software
Next, you'll need to remove the brltty package. This is for some braille device but unfortunately interferes with the programming cable from showing up.
sudo apt remove brltty
Build a Recent CHIRP Package
The Chirp that is available from APT is too old to support the UV-17R so you'll need to download and compile a recent version.
Download and Extract the Chirp Source
Go here first: https://chirpmyradio.com/projects/chirp/wiki/Download
Click the link to download the source for chirp-<date>.tar.gz.
Create a temporary directory to hold the build:
mkdir -p ~/tmp/chirp && cd ~/tmp/chirp
tar xf ~/path/to/chirp-<date>.tar.gz
Create a Python Virtual Environment
From the /tmp/chirp directory, create a Python virtual environment. This allows you to customize the Python environment without overwriting your system environment.
sudo apt install virtualenv
virtualenv py_venv
source py_venv/bin/activate
If all went fine your prompt should change to reflect that you are running from the virtual environment.
Build Chirp
Now it's time to build the software:
cd ~/tmp/chirp/chirp-<date>
pip install -r requirements.txt
python setup.py build
Take a look at the output for errors. If you see errors related to missing packages, you may need to "sudo apt install" those. I had to add libgtk-3-dev.
Get the Right Hardware
This part was frustrating. After doing all the above and slowly making progress, I was greeted with various messages about the radio not sending any data. The cable that worked has a sticker that says "Baofeng Abbree: CH340 Chip". All the cables were around the $12 range . I spent a lot of time troubleshooting various red herring errors until finally switching out the cable. When I did, everything finally worked.
Run the software
Once you have the cable in place, run the software. Make sure you're still in the Python virtualenv first:
cd ~/tmp/chirp
source py_venv/bin/activate
chirp
You should see the Chirp window pop up.
Download and Upload
At this point you should be able to Download from the radio, make your changes and re-upload.
My typical process is as follows:
Download from the Radio
Select /dev/ttyUSB0 as the device
Manufacturer is Baofend
Radio is UV-17R (or which radio you have)
Once downloaded, save the IMG as something like baofeng-uv17r-pristine.img
Next, I open the Stock Configs and cut/paste the ones I want. For example, I always add the FRS/GMRS bands, the NOAA weather feeds, and the nautical channels.