Radios

Baofeng UV-B5 · Volume 3

Baofeng UV-B5 — Vol 3: Programming

Earlier-generation Baofeng workhorse

Figure 1 — Figure — CHIRP settings/memory editor for a Baofeng handheld; the UV-B5 uses the same spreadsheet-style channel workflow. Source: m0pzt.com.
Figure 1 — Figure — CHIRP settings/memory editor for a Baofeng handheld; the UV-B5 uses the same spreadsheet-style channel workflow. Source: m0pzt.com.

3.1 Programming workflow

Programming cable. Standard Baofeng USB programming cable with the Kenwood K-1 / K-2 two-pin plug — same cable as the F8HP ↗ and most other Chinese dual-band HTs. Known-good versions use genuine FTDI FT232RL; clones use Prolific PL-2303 (often counterfeit — Windows driver headaches) or CH340 (works on Linux out of the box; needs the CH340 driver pack on Windows). Prefer the FTDI-genuine cable — about $20 mid-2026 from BTECH vs. $5-8 for clones; the driver pain you save the first time something goes wrong pays the difference in one session.

Software: CHIRP. CHIRP is the answer for the UV-B5 — the driver (uvb5.py) was added in the early 2010s; CHIRP still flags it as experimental, and it talks to the radio at 9600 baud. See Vol 3 (Programming software landscape) for the full CHIRP context. BaoFeng’s own factory program, “UV-B5 - PC Software” version 1.09 (program files dated 2012-09-22), is the only factory version found; it survives as a copy on Miklor, since BaoFeng’s download pages no longer list the UV-B5. Its Test Mode changes the power alignment and is best left alone. The factory software, CHIRP and the paid RT Systems alternative are listed at https://radios.fubsypoly.com/downloads/#baofeng-uv-b5.

CHIRP version matters. Use a recent CHIRP build (CHIRP-next, the rolling release that replaced the old stable releases in 2022). Older CHIRP versions (pre-2018) had known channel-name corruption bugs on the UV-B5 — writing certain characters could scramble adjacent channel names. Fix is running current CHIRP; install via the platform installer at chirpmyradio.com.

Codeplug structure. The UV-B5 codeplug is the simple 99-channel flat list — no zones, no groups, no contacts, no roaming. Each channel has:

  • Frequency (RX) and TX offset (split + sign for repeaters, or zero for simplex)
  • Channel name (5-character display name — CHIRP’s driver sets NAME_LENGTH = 5)
  • Power level (high / low)
  • Bandwidth (narrow 12.5 kHz / wide 25 kHz)
  • CTCSS / DCS encode and decode
  • Skip flag (skip this channel on scan)
  • BCL (busy-channel lockout) on / off

Plus a global settings page with VOX, dual-watch, beep on / off, squelch level, backlight timeout, transmit timeout (TOT), and the radio’s name display. That is the entire codeplug — small enough to import / export as a CSV from CHIRP in a few seconds, simple enough to backup as a binary .img and restore later without surprises.

Workflow.

  1. Plug in cable, identify the COM port (Device Manager on Windows; dmesg | grep tty or ls /dev/serial/by-id/ on Linux).
  2. Open CHIRP, read from radio (Radio → Download from radio → Baofeng → UV-B5).
  3. Save the read-back as uv-b5-YYYYMMDD-baseline.img immediately — this is your recovery point.
  4. Edit channels in the spreadsheet view, or import a .csv of channels from somewhere like RadioReference.
  5. Sanity-check the channel list — frequencies in valid ham allocations, offsets and tones correct for any repeaters.
  6. Write to radio (Radio → Upload to radio).
  7. Save the final codeplug as uv-b5-YYYYMMDD.img for archive.

Firmware version check. The CHIRP UV-B5 driver expects specific firmware version strings to identify the radio. If CHIRP cannot detect the radio (gives “unrecognized model” or hangs at the model-detect step), check the firmware version in the radio’s menu (typically menu item 40 or similar — TBD verify against the unit). CHIRP has a single UV-B5 driver (uvb5); no separate “uvb5_old” driver exists in either the CHIRP-next or the legacy build, so a detection failure is a cable, port or CHIRP-version problem rather than a matter of picking a different driver.

3.2 Codeplug backups

Storage location. Keep codeplug files in a per-radio folder, following the same convention as the F8HP ↗ codeplugs. Naming convention: uv-b5-YYYYMMDD[-tag].img for the binary image (CHIRP-native, byte-for-byte round-trippable), and the matching .csv export for human-readable diffing.

Backup cadence. Low — this is a legacy unit that doesn’t change configuration often. Read-and-save the codeplug:

  • After any session that edits channels (one save at the end is fine)
  • Before swapping the battery (the radio’s RAM is battery-backed; an extended battery-out condition can lose settings on some Baofeng firmware revisions — verify on the UV-B5 by checking the codeplug after a battery swap)
  • Before any service work — note that no UV-B5 firmware update has ever been published (none on BaoFeng’s, BTECH’s or Miklor’s download pages), so there is no firmware to flash
  • Once a year as a baseline hygiene practice

Restore. Full-image write through CHIRP — open the saved .img, then Radio → Upload to radio. The radio’s entire codeplug is overwritten; no partial / merge restore. This is the right behaviour for the UV-B5’s flat-channel-list architecture.

Comments (0)

  1. Loading…

Comments are held for moderation — nothing appears until approved.