🧰 What You'll Need

πŸ“» The Radio

Your Baofeng UV-5R (or a close variant β€” see the note below on which model to select in CHIRP).

πŸ”Œ A Real Programming Cable

USB cable with a genuine FTDI or Silicon Labs CP210x chip. This is the single most common point of failure β€” more on this below.

πŸ’» A Computer (for CHIRP only)

Windows 10+, macOS, or Linux. Skip this entirely if you're using the manual keypad method.

⚠️
The Cable Is the #1 Cause of Programming Failures
Almost every "CHIRP won't connect to my radio" problem traces back to the cable, not the software. Cheap cables built with cloned Prolific PL2303 chips are unreliable and often rejected outright by Windows. Buy a cable with a genuine FTDI or CP210x chip β€” expect to pay somewhere in the $15–25 range for one that actually works. The cable bundled with most legitimate Baofeng kits is fine; a $4 unbranded cable from a random listing is the most common reason people give up before they ever get started.

πŸ’» Programming with CHIRP (Recommended)

CHIRP is free, open-source programming software that works with dozens of radios, including the entire UV-5R family. It turns programming into a simple spreadsheet-style interface instead of fighting the radio's tiny keypad. Most people are done in 15 minutes β€” and once your channel list is saved as a file, reprogramming a second radio or restoring after a mistake takes seconds.

1
Download and install CHIRP
Get the latest build at chirpmyradio.com. CHIRP runs on Windows 10+, macOS, and Linux. On Mac, you may need to bypass a security prompt the first time you open it since the app isn't signed.
2
Plug in the cable, then power on the radio
Connect the USB end to your computer and the other end to the SP/MIC port on the side of the UV-5R. Turn the radio on and turn the volume up roughly halfway β€” on some firmware versions a muted/zero volume can interfere with programming.
3
Download the current settings from the radio
In CHIRP, go to Radio β†’ Download From Radio. Pick the COM port (Windows) or /dev/ device (Mac/Linux) that matches your cable β€” if you're not sure which one, unplug the cable, check the list, then plug it back in and see which port appears. Set Vendor to Baofeng. For Model, most UV-5R variants β€” including the RA, RB, RC, RE, and Plus versions β€” use the plain "UV-5R" entry. Click OK.
4
Save a backup immediately
Before changing anything, go to File β†’ Save As and save this file. This is your restore point β€” if anything goes wrong later, you can re-upload this exact file and undo every change.
5
Add your channels
You'll see a spreadsheet-style memory list. For each channel, fill in: Frequency (the repeater's output, or the simplex frequency), Duplex (+ for positive offset, βˆ’ for negative, blank for simplex), Offset (usually 0.600 MHz on 2m, 5.000 MHz on 70cm), Tone (the PL/CTCSS tone if the repeater requires one), and Mode (FM for analog voice). You can also use Radio β†’ Query Data Source β†’ RepeaterBook to pull in local repeaters automatically by location instead of entering them by hand.
6
Upload to the radio
Once your channel list looks right, go to Radio β†’ Upload To Radio. The radio's screen will flash or show "USB" while it writes β€” this is normal. When it finishes, power the radio off and back on to confirm everything saved.
Heads up on model variants: CHIRP lists some UV-5R variants separately β€” the BF-F8HP, UV-5RTP, and UV-5X each have their own entry, and they are not interchangeable with plain UV-5R. Selecting the wrong one can appear to work but cause flaky, corrupted uploads. Check the sticker underneath the battery if you're not sure exactly which variant you own.

⌨️ Manual Keypad Programming (No Computer Needed)

No cable, no computer, no problem β€” every UV-5R can be fully programmed from its own keypad. It's slower and a little less forgiving than CHIRP, but it works in the field with nothing but the radio in your hand. This method works for both simplex frequencies and full duplex repeater channels.

1
Switch to Frequency Mode and the A side
Press [VFO/MR] to enter Frequency Mode. Press [A/B] to select the upper display (the A side) β€” channels can only be programmed from the A side; anything entered on the B side won't save.
2
Turn off TDR (Dual Watch)
Press [MENU] 7 [MENU], set it to OFF, then [MENU] [EXIT]. Leaving Dual Watch on during programming is a common cause of channels not saving correctly.
3
Enter the receive frequency
Type the frequency directly on the keypad β€” for example, 1, 4, 6, 9, 4, 0 for 146.940 MHz. For a simplex channel, this is the only frequency you'll need.
4
For repeaters: set the offset direction and amount
Press [MENU] 25 [MENU], choose 1 for a positive shift or 2 for a negative shift, then [MENU]. Next press [MENU] 26 [MENU] and enter the offset β€” typically 00600 for 2m repeaters or 05000 for 70cm repeaters in the US β€” then [MENU] [EXIT].
5
Set the PL/CTCSS tone if the repeater requires one
Press [MENU] 13 [MENU] for transmit CTCSS, enter the tone (for example 1035 for 103.5 Hz), then [MENU] [EXIT]. Skip this step entirely if the repeater doesn't use a tone.
6
Save the receive frequency to a channel
Press [MENU] 27 [MENU], enter a channel number (000–127), then [MENU] [EXIT]. This stores everything you've entered so far into that channel.
7
For repeaters: enter and save the transmit frequency separately
Calculate the transmit (input) frequency yourself β€” receive frequency plus or minus the offset β€” and key it in directly on the keypad. Then repeat step 6, saving it to the same channel number. This is the most reliable method across UV-5R firmware versions; relying on the radio to calculate the transmit frequency automatically from the offset alone is not consistent across every variant.
8
Verify it worked
Press [VFO/MR] to return to Channel Mode and scroll to your new channel. For a repeater, you should see a + or βˆ’ indicator on screen. Press the PTT button briefly β€” you should see CT appear (confirming the tone is transmitting) and the frequency shift to the offset amount.
Worked example β€” programming a real repeater into channel 12:
Repeater output: 146.940 MHz Β· Offset: negative, 0.600 MHz Β· PL tone: 103.5 Hz

1. Enter 146940 on the keypad.
2. Set offset direction to negative (2) and offset amount to 00600.
3. Set transmit CTCSS tone to 1035.
4. Save to channel 012.
5. Enter the transmit frequency directly β€” 146340 (146.940 minus 0.600) β€” and save it to channel 012 again.

πŸ“‘ Understanding Repeater Offsets & PL/CTCSS Tones

Simplex vs. Duplex

Simplex means everyone transmits and receives on the same single frequency β€” no repeater involved. Duplex means you receive on one frequency and transmit on a different one, which is how repeaters extend your range.

What "Offset" Means

The offset is the gap between the repeater's output (what you hear) and its input (what you transmit to). Standard US offsets are 0.600 MHz on 2m and 5.000 MHz on 70cm, but always confirm the exact value for your specific repeater β€” it isn't universal.

PL Tone / CTCSS

A sub-audible tone the repeater requires before it will repeat your transmission. If you don't set it, or set the wrong one, you'll hear the repeater fine but nobody will hear you when you key up. This is the #1 cause of "I can receive but can't transmit."

The easiest way to find the exact offset and tone for a specific repeater is RepeaterBook β€” search by your location, and it lists the output frequency, offset, and tone for every listed repeater in range. If you're in Southern California, our own SoCal repeater directory has this same information already organized by region.

πŸ”§ Troubleshooting Common Errors

CHIRP says it can't connect to the radio / "Radio did not respond"
Almost always the cable. Try a different USB port, confirm the cable has a genuine FTDI or CP210x chip (not a cloned Prolific chip), and make sure it's plugged firmly into both the computer and the radio's SP/MIC port β€” a slightly loose connection looks identical to a dead cable. Also confirm the radio is powered on with the volume turned up.
I can hear the repeater but nobody hears me when I transmit
This is a PL/CTCSS tone mismatch nearly every time. Double-check the exact tone the repeater requires (on RepeaterBook, listed as Tone or PL) and make sure your transmit CTCSS setting matches it exactly β€” 88.5 Hz and 100.0 Hz will sound completely silent to the repeater if they don't match.
CHIRP shows the wrong model name or odd behavior after upload
Confirm you picked the correct CHIRP model entry for your exact variant. A BF-F8HP selected as a generic UV-5R will often appear to upload successfully but behave incorrectly afterward β€” check the label under the battery and match it exactly.
A channel won't save when programming manually from the keypad
Make sure TDR (Dual Watch) is off and that you're working on the A side of the display, not the B side β€” channels entered on the B side are discarded. Also confirm you pressed [MENU] [EXIT] after every entry; skipping the confirmation step is the most common reason a setting silently fails to save.

❓ Frequently Asked Questions

Is CHIRP really free?
Yes β€” CHIRP is free, open-source software available at chirpmyradio.com for Windows, macOS, and Linux.
Can I copy one radio's settings to another Baofeng?
Yes. Download from the first radio in CHIRP, save the file, then upload that same file to the second radio. This is the fastest way to set up multiple radios identically.
Do I need a license to program or use a UV-5R?
You can program the radio without a license, but transmitting on amateur (ham) frequencies legally requires a Technician license or higher. If you're not yet licensed, see our guide to getting your ham radio license. Listening only, without transmitting, does not require a license.
How many channels can the UV-5R store?
The standard UV-5R holds 128 channels (000–127). Some newer variants, like the 5RM and 5RM Pro, hold up to 999.
Does this guide work for other Baofeng models too?
The CHIRP workflow is nearly identical for the UV-82, UV-82HP, BF-F8HP, UV-5R Plus, GT-5R, and most other CHIRP-supported Baofeng handhelds β€” the menu numbers in the manual keypad method may shift slightly between models, so check your radio's manual if a menu number doesn't match what's described here.
β˜€οΈ HF CONDITIONS
Loading solar data…