This is a subject I’ve been kicking around for the past year or so and it has gone through a couple of revisions. My goal is to have any one of my transceivers work with any one of my radio interfaces with little or no adaptation. This started with diy cm108 interfaces for Allstar, but has grown to include interfaces for Dire Wolf along with other packet applications and MMDVM.

I had originally based my standard on’s USB RIM-lite. The standard connector is a DB-9 and uses 8 of the 9 pins. I modded several of my transceivers for this standard. It works well.

The problem I ran into had less to do with the connection and more to do with my choice of cabling. I purchased several off-the-shelf serial cables and cut them up to make my interfaces. With these types of cables, all of the conductors share a common shield. This left me vulnerable to lots of noise.

The fix is to use individually shielded cabling, at least for RX and TX. I didn’t want to have multiple bundled wires, so I began a search for cables containing individually shielded conductors. What I came across very quickly was the bulk cabling used for vga. Perfect. At least 3, and sometimes 5, individually shielded conductors.

On to “value engineering.” I started to think about alternate (cheap) sources of cable. I only need relatively short lengths. Wait a minute… I have boxes full of old VGA cables! I can just cut the ends off and solder on DB-9 connectors… OR… can I use the HD-15 connectors that are already there? Why not?

After cutting a couple of cables up, I found some slightly disappointing peculiarities. Many of the conductors are bonded. In particular, pins 6,7,8,10 and sometimes 4 and 11 are all bonded grounds! Not that I necessarily needed them, but 15 individual conductors would have been pretty cool. No matter. This still leaves us with 9 conductors, 3-5 of which are shielded, plus a very strong ground. That’s a net gain of 3 conductors over our previous model (the previous model had 2 ground pins.) For now, I’ve assigned them to Other GPIO, in addition to the PTT, COS and CTCSS GPIO.

PTT and COS have been assigned to the h sync and v sync pins for a couple of reasons. The first is that those pins are guaranteed to exist. At a minimum, for VGA to work, you need RGBHV and ground. The second is the potential additional shielding will help prevent stray RF on either of these commonly-used conductors from coupling with the audio conductors.

VGA Port
PinVGA StandardRadio Standard
1Red (shielded)Alt TX Audio
2Green (shielded)TX Audio
3Blue (sheilded)RX Audio
4Res/ID2 (sometimes bonded ground)Ground
5Ground (surprisingly, not bonded to ground)CTCSS
6shield for red (bonded ground)Ground
7shield for green (bonded ground)Ground
8shield for blue (bonded ground)Ground
9Key / +5vOther GPIO
10ground/shield for v sync (bonded ground)Ground
11Res/ID0 (sometimes bonded ground)Ground
13h sync (sometimes shielded)PTT
14v sync (sometimes shielded)COS