HamCon Guide

← Back to App
Contents
  1. Getting Started
  2. Cable & Driver Setup
  3. Reading & Writing
  4. Editing Channels
  5. Repeater Search
  6. Import & Export
  7. Troubleshooting

1. Getting Started

HamCon is a free, browser-based radio programmer. Connect your radio via USB, read its memory, edit channels in a spreadsheet-style table, and write the changes back. No software to install.

Supported Radios

RadioServiceChannels
Radioddity GM-15 ProGMRS30
Radioddity GM-5RHGMRS250
Baofeng UV-5RMGMRS250
Baofeng UV-5R MiniGMRS250
Baofeng K6GMRS250
Baofeng UV-5RHAmateur250
Baofeng UV-5RAmateur128
Baofeng UV-17ProAmateur250
Baofeng UV-17ProGPSAmateur250
Baofeng UV-17R-PlusAmateur250
Baofeng UV-25Amateur250
Baofeng K5-PlusAmateur250
Baofeng BF-F8HP-PROAmateur250
Yaesu FT-3DAmateur900

Browser Requirements

HamCon uses the Web Serial API to talk to your radio. This requires:

Safari and Firefox do not support Web Serial.

The 4-Step Workflow

  1. Connect — Plug in the USB cable and click Connect Radio. Select your radio's serial port from the browser prompt.
  2. Read — Click Read from Radio to download all channels from the radio's memory.
  3. Edit — Click any cell in the table to change a value. You can also import a CSV, search for repeaters, or load defaults.
  4. Write — Click Write to Radio to upload your channel list. This overwrites all channels in the radio.

2. Cable & Driver Setup

Most Baofeng and Radioddity radios use a Kenwood K1 two-pin programming cable. The USB end contains a serial adapter chip. The three most common chips are:

ChipDriver Needed?Notes
CH340Usually auto-detectedMost common on modern cables. macOS Sequoia+ may need a driver from wch-ic.com.
FTDI FT232Usually auto-detectedHigher quality chip. Drivers at ftdichip.com if needed.
Prolific PL2303Yes (often)Older cables. Prolific has dropped support for clones; genuine drivers at prolific.com.tw.

Installation Steps

  1. Plug the USB cable into your computer (do not connect the radio yet).
  2. If your OS prompts to install a driver, allow it.
  3. If no driver installs automatically, check the chip marking on the cable's USB plug and download the driver from the manufacturer's site.
  4. Verify the cable appears as a serial port: on Windows, check Device Manager → Ports (COM & LPT); on macOS, look for /dev/tty.usbserial-* or /dev/tty.wchusbserial*.
Tip If the cable works in CHIRP but not in HamCon, the driver is fine — the issue is likely browser or connection-related. See Troubleshooting.

3. Reading & Writing

Connecting

  1. Select your radio model from the dropdown in the toolbar.
  2. Plug the programming cable into both the radio and your computer.
  3. Turn the radio on.
  4. Click Connect Radio. A browser dialog will list available serial ports — select the one for your cable.
  5. The status bar will show a green dot and "Connected".

Reading Channels

Click Read from Radio. The progress bar shows transfer progress. When complete, the channel table populates with your radio's current programming.

Tip Always read from the radio before writing. This gives you a baseline to edit from and ensures you have a backup of the current programming.

Writing Channels

After editing, click Write to Radio. This uploads all channels to the radio's memory.

Warning Writing overwrites all channels on the radio, not just the ones you changed. Make sure your channel list is complete before writing.

Backing Up

Use Backup Image (in the File panel) to save a raw memory dump. This is a byte-for-byte copy of your radio's memory that you can restore later with Load Image/SD.

4. Editing Channels

Click any cell in the channel table to edit it. Changes are immediate — there is no separate "save" step (changes are held in the browser until you Write to the radio or Export).

Column Reference

ColumnDescription
#Channel number (memory slot). Cannot be changed.
NameChannel label (max 6–10 characters depending on radio).
RX FreqReceive frequency in MHz. This is the frequency your radio listens on.
TX FreqTransmit frequency in MHz. For simplex channels, TX = RX. For repeaters, TX is the input frequency (RX ± offset).
ToneTone squelch mode: None, CTCSS (analog sub-audible tone), DCS (digital coded squelch), or DCS-I (inverted DCS).
Tone ValueThe specific CTCSS frequency (e.g., 141.3 Hz) or DCS code (e.g., D023). Repeaters require a tone to open their squelch gate.
PowerHigh for maximum range, Low to conserve battery or for nearby contacts.
BandwidthWide (25 kHz) for standard FM channels, Narrow (12.5 kHz) for interstitial or Part 90 channels.
ScanInclude this channel in the radio's scan list. Uncheck to skip it during scanning.
LocationOptional. A note about where the repeater or channel is located (not sent to radio).
NotesOptional. Free-text notes for your reference (not sent to radio).

Simplex vs. Repeater

Simplex means you transmit and receive on the same frequency. Set TX Freq = RX Freq, and Tone to None (unless the simplex channel uses a tone).

Repeater channels use different TX and RX frequencies. The repeater listens on one frequency (your TX) and retransmits on another (your RX). You also need to set a CTCSS or DCS tone so the repeater accepts your signal.

Example A repeater listed as "147.060 MHz, +600 kHz offset, PL 100.0" means: RX Freq = 147.060, TX Freq = 147.660, Tone = CTCSS, Tone Value = 100.0.

CTCSS vs. DCS

CTCSS (Continuous Tone-Coded Squelch System) sends a low-frequency tone (67.0–254.1 Hz) beneath your voice signal. The repeater only opens when it detects the correct tone.

DCS (Digital-Coded Squelch) sends a digital code instead of an analog tone. It's less susceptible to false triggering. DCS-I (inverted) is the same protocol with inverted polarity — some repeaters require this.

HamCon can search RepeaterBook for repeaters in your state and import them directly into your channel list.

  1. Click Search Repeaters in the sub-toolbar.
  2. Select a service type (Auto, Amateur, GMRS, or All) and a state, then click Search.
  3. Browse the results. Use the filter box to narrow by callsign, city, or frequency.
  4. Check the "Open only" box to hide closed/off-air repeaters.
  5. Check the boxes next to the repeaters you want, then click Import Selected.

Imported repeaters are placed in the first available empty channel slots. RX/TX frequencies, tone mode, and tone values are set automatically.

Tip After importing, review the channels. You may want to adjust names, remove duplicates, or reorder channels.

6. Import & Export

CSV (CHIRP-compatible)

Import CSV loads a CHIRP-format .csv file. Column mappings (Location, Name, Frequency, etc.) follow the CHIRP standard.

Export CSV saves your channel list as a .csv file that can be opened in CHIRP, Excel, or any spreadsheet application.

Memory Images

Backup Image saves the raw memory contents read from your radio as an .img file. This is a byte-for-byte backup.

Load Image/SD loads a previously saved .img file or an FT-3D MEMORY.dat SD card dump.

FT-3D SD Card

The Yaesu FT-3D can import channels from an SD card. Use Export SD to create a MEMORY.dat file. Copy it to the root of the radio's SD card, then import on the radio.

Print

Print opens a clean, printer-friendly view of your channel list in a new tab. Use your browser's print dialog (Ctrl+P / Cmd+P) to print or save as PDF.

MXT575 Cheat Sheet

The Midland MXT575 uses numbered "privacy codes" instead of standard CTCSS/DCS values. The MXT575 Cheat Sheet button generates a printable reference sheet mapping each privacy code to its CTCSS tone or DCS code.

7. Troubleshooting

No serial ports appear

Read or write fails partway through

Wrong radio model selected

If you read from or write to the radio with the wrong model selected, the channel data may be garbled or the operation may fail. Always verify the radio model in the toolbar dropdown matches your physical radio.

Important Writing with the wrong radio model can corrupt your radio's memory. If this happens, use CHIRP or a factory reset to restore the radio.

"Port is already open" or connection errors

Channels look wrong after reading