Codeplug Magic

Available

One master channel database. Every radio you own.

Platforms
macOSWindowsLinux
Built with
Tauri 2RustReact 19TypeScript
License
GPL-3.0

Latest release

Builds for macOS, Windows and Linux — .dmg, .msi and .exe, AppImage, .deb and .rpm. Unsigned, so the first launch needs one extra step on macOS and Windows; the README covers both.

What it does

Master channel database

One library of repeaters and channels, reused across every codeplug you generate, instead of a separate vendor CPS and a separate list per radio.

Import from anywhere

RepeaterBook, CHIRP-style CSV, or manual entry with automatic lat/lon geocoding from a city name.

Direct USB programming

Reads the radio's current image, applies your changes, backs up the original, writes, and verifies the result byte-for-byte.

Cable-free radios too

For the Yaesu FT5D and Icom ID-52 it patches the radio's own microSD backup file — BACKUP.dat and .icf — so the radio restores it from its own menu with no vendor software involved.

DMR contacts

A local mirror of the radioid.net DMR-ID to callsign database, with prioritized export and, on the AnyTone D890UV, direct caller-ID database programming.

Honest about band limits

Channels the radio can hear but not transmit on — GMRS, marine, NOAA, air band, 220 — are programmed receive-only rather than dropped. Frequencies outside the receiver's real coverage are excluded with a reason, not silently written to an empty slot.

What it’s for

A codeplug is the channel, zone, scan-list and contact programming that goes into a handheld or mobile radio. Every manufacturer ships its own programming software, in its own format, with its own idea of what a channel is — so owning four radios means maintaining four separate channel lists that drift apart.

Codeplug Magic inverts that. You maintain one master database of repeaters and channels, then generate or directly program a codeplug for whichever radio you’re holding.

Supported radios

Radio Modes Programming Capacity
Baofeng UV-5R Analog FM Direct USB 128 channels, flat memory
TIDRADIO TD-H3 Analog FM/NFM/AM, tri-band Direct USB 200 channels
AnyTone AT-D890UV DMR + Analog Direct USB 4000 channels, full DMR zones and talkgroups, 308k-entry caller-ID database
Yaesu FT5D C4FM (System Fusion) + Analog microSD 900 channels in 24 banks
Icom ID-52 D-STAR + Analog microSD 1000 memories in 100 groups

Direct USB programming reads the radio’s current image, applies your changes, backs up the original, writes, and can verify the result byte-for-byte.

Cable-free radios are programmed through their own microSD card instead. The app patches the file the radio itself wrote, so the radio restores it from its own menu with no vendor software involved. Because those files carry the radio’s settings as well as its memories, the codeplug and the radio profile travel together.

Features

  • Zones, scan lists, and talkgroups with per-channel scan-list assignment.
  • Radio profiles — every radio’s menu settings are read out of the radio (or its card file), edited in the app, and written back alongside the channels.
  • CSV / JSON export for radios without a direct driver.
  • Whole-database backup and restore to a single portable file.

A word of caution

This is early software. The programming paths for the radios above have been verified on real hardware, but always keep a backup of your radio’s existing codeplug before writing to it. The app takes one automatically; keep your own too.

License and credits

GPLv3. Portions of the radio protocol logic are derived from CHIRP, also GPLv3 — struct layouts, tone tables and encode/decode routines for the Baofeng and TIDRADIO drivers, the FT5D settings map, and the Icom .icf container format.

Want to know when this ships? I'm at QRZ — or watch github.com/ww8l.