Configuring a Baofeng 5RH-Pro radio to beacon your GPS position via APRS

I can’t really recommend the Baofeng 5RP-Pro radio, as the out of the box experience is annoying (having to delve into the depths of the internet to upgrade the firmware, and configure lots of things “just right” to get APRS position beaconing working).   It also isn’t supported by the open source CHIRP radio programmer (yet).  BUT, it is a $34 radio that CAN support GPS position beaconing via ARPS with a little work, so it has that going for it.  [If you want a nice inexpensive HT that “just works” (and is supported by CHIRP) and don’t care about GPS/APRS, I recommend the K6 instead.]

So, here is how to configure it to beacon your GPS position via APRS ( assuming you have upgraded it to at least firmware version 2.0.9) from the factory “reset” settings:

  1. Hit the green bar menu button (above the 1 key) to pull up the menu, and navigate to the GNSS section.  Go into “1. GNSS On/Off” and turn the GPS receiver to “ON”.  [If at any point you want to stop broadcasting your location, you can just turn the GPS off, as the APRS system won’t send out beacons if the GPS doesn’t have a position lock.]Note that while the GPS receiver on the radio is “good” it’s not “great” and you may need to go outside for it to get / keep a GPS fix.  You can navigate to the “2. GPS Info” section and then “1. my position” to see if it has a fix and how many satellites it can see. If your Lat/Long are all zeros, it doesn’t have a fix yet.
  2. Go back to the main menu, and navigate to the very bottom where the “APRS” section is.
    1. Under “1 APRS Ctrl” turn it to “ON”
    2. Under “2 Ana APRS” set “3. Source CallSign” to your licensed amateur radio callsign (I mean, you do have one, right?). Under “4. Source SSID” you COULD use the default -8 which is for “boats, sailboats, RV’s or second main mobile”, but I recommend using -7 instead, which is for “walkie talkies, HT’s or other human portable” unless you have it on your boat or RV.
    3. Under “2 Ana APRS” go into “8 Upload Freq”, and then “1 Upload Freq 1” and select “2 Edit” and change it to the APRS frequency you want to use. I’m using the 2m standard of 144.390 Mhz. Then use the “1 select” option to make sure that “upload freq 1” will be used.  If you commonly switch between frequencies, you can save others under the 2,3,4 etc… slots.
    4. I DO NOT recommend that you muck with the “Signal Path” variable, as I couldn’t get it to work correctly with firmware 2.0.9.  The default is “WIDE1 -1,_”  (note the space between WIDE1 and the -1…and I have no idea what the underscore means).  Also of note is that even with this default setting, the actual packets that come out of the radio say “WIDE1-6” when received by my direwolf digipeter.  I tried changing this path to something ‘normal’ and direwolf just complained about the packet format until I reset the radio to factory defaults.
    5. Under the main “APRS menu” navigate down to “5 Intervals Set” and pick your beaconing interval. (I’d use 1 min for testing, 5 min for walking around, or 30 seconds for driving fast…)
    6. Go to the “6 Upload Beacon” and change it to “GPS Beacon”
  3. Wait for the radio to get a GPS fix (you may need to go outside) and it will automatically start sending out APRS beacons. [Hint: If you tune the VFO on your radio to the same 144.390 frequency, you can hear the machine like “modem beep” when it goes out.] It’s very helpful to be running your own digipeter with a 2nd radio locally to look at the packets to make sure everything is working, but if you are close enough to an APRS internet gateway (igate), you can just look up your packets online at the https://aprs.fi website.

Halfway optional settings that you probably SHOULD change (but won’t prevent APRS Position beaconing if you don’t):

  1. “GNSS” -> “3. Time Zone”  If you want the time from the GPS to be correct, set this to your UTC offset. Note that it doesn’t automatically handle daylight savings time, so if you are on the US East coast, you need to pick -05 for EST and -04 for EDT.
  2. By default the radio is sending out “MIC-E” status of “emergency”. So under “APRS” go to “2. Ana APRS” “14. Encode type” and change it from “MIC-E” to “Position”.  [Alternatively, if you WANT to be sending out MIC-E status messages, I suggest you go into “13. MIC-E type” and change it from the default Emergency to something else like “En Route”.

 

Red Herring settings that LOOK like you should be messing with them, but are actually not involved with APRS position beaconing:

  1. GNSS->GPS Info-> Share Position (or Request Position) – These guys are used with other Baofeng 5RH radios to share/request positions between radios (which is a cool feature if everybody in your group is using the same radio) but does NOT interact with or affect the APRS settings / performance of the radio.  [It’s also not APRS packet compatible, but uses a similar encoding.]

 

Other optional settings you may want to change:

  • “APRS” -> “2 Ana APRS” -> “6 Upload Power” you might want middle or high instead of the default “low” depending upon how far away you are from digipeters.

Interesting information that you probably don’t need to worry about:

  • “APRS” -> “2 Ana APRS” -> “1. Target Callsign” – Because of the way APRS operates (broadcasting packets, and not directing them directly to a specific target) the AX.25 “target” part of the header does NOT have to be set to any specific callsign, and instead is typically used to “identify” the type of radio/device that is SENDING the packet. [VS the Source CallSign, which uses your Ham Radio callsign to identify the responsible party]. By default this is set to “APAT81” which is impersonating an “Anytone 878 HT”.  This isn’t strictly speaking correct, but does give people a good idea of your device capabilities (e.g. TX APRS packets) so they don’t try to send you text messages.   You can read the full list of “officially asigned” TOCALL codes here: https://www.aprs.org/aprs11/tocalls.txt
    As of 2021, Baofeng radios don’t have an officially assigned TOCALL from ARRL, but a github for aprsorg has a few here: https://github.com/aprsorg/aprs-deviceid/blob/main/tocalls.yaml  specifically for the BTECH UV-PRO and DMR 6×2, so you could use something like “APBTUV” to pretend to be a UV-Pro.

 

 

Upgrading a Baofeng 5RH-Pro radio firmware on Linux (Ubuntu 24.04)

I bought a Baofeng 5RH-Pro radio which claims GPS and APRS broadcasting features built in so that I could test my other radio and computer APRS setup inexpensively.

Unfortunately, it arrived with firmware 2.0.2, but to get (somewhat) working APRS beaconing you need to upgrade it to firmware 2.0.9.   Getting software for the Baofeng radios is a fraught experiance. There isn’t a “main website” to download it from, you are supposed to go through individual dealers, and the amazon seller provides a personal username / password to download software from a 3rd party website that isn’t sketchy at all…


Plus, I’m not even 100% sure that the CPS programming software (which typically is used to set up the saved channels and settings without having to type everything into the radio directly) can also upgrade the firmware. [Plus, at least one vendor on VirusTotal flagged it as having malware.]

[I really anti-recommend the 5RH-Pro as the out of the box experiance is abismal, unless you need a very inexpensive radio that (with a lot of work) can be made to beacon APRS packets with positions from the built in GPS reeiver.  Buy the K6 instead if you don’t need GPS/APRS, as you can program it using CHIRP on linux without jumping through any hoops and the default firmware on it worked great for me..]

Anyways, before putting in the effort of setting up a virtual box with a windows install just to run this questionable CPS software, which may or may not actually upgrade the firmware, I asked the Baofeng User Group (on Facebook) and eventually found a file  (5RH_engtool_fw_v2.7z) uploaded by “Larry Ficken” which worked for me.

This 7zip archive  contains a “radio.exe” (which does NOT flag in Virus Total, so that’s one point less of sketchyness when compared to the vendor suggested files…although you are still running an exe you downloaded from a random dude on FB, so there is that….)  and a firmware file “BF_5RH_501_v2_0_9.dat” which successfully upgraded my radio to 2.0.9 where the APRS positioning beacon system (mostly) works.

Now, it’s still a windows EXE file, but I was able to run it successfully under Ubuntu Linux 24.04 using WINE and MONO.  To do this I had to:

Linux: Installed wine & mono
Download wine-mono.msi from the official WineHQ site (matching the version of Mono I had on my Linux setup)
run ‘wine uninstaller’ from the command line (choose/install the wine-mono.msi file)

Check that my /dev/ttyUSB0 (USB serial port for my K1 programming cable) was linked to COM4 in ~/.wine/dosdevices

Run ‘wine regedit” at the command line and confirm that COM4 was set up correctly in HKEY_LOCAL_MACHINE\Software\Wine\Port

(On mine, it was listed as “COM4:” so I removed the “:” from the end and that made things work.)

Finally, I was able to type “wine radio.exe” at the command line and the very simplistic firmware updater tool loaded and successfully ran:

This successfully upgraded my radio’s firmware.  [It may also be possible to use wine to run the CPS programming software under Linux….but I haven’t tried that, because CHIRP works great with my K6 radio, and I really recommend you buy radios that CHIRP supports, especially if you are running Linux as your main OS.]