Programming the Motorola GM300

I recently purchased a Motorola GM300 on eBay to use as a packet radio in my QTH. The GM300 is a famous classic Motorola radio that can support from 8 to 16 channels depending on the model, and offers a sought-after 16 pin accessory connector on its back, which makes it easy to connect it to modems.

The main issue when receiving one of these old radios, is that the only way to program them is to connect through their RJ45 microphone plug in front, and run a DOS utility that was last updated in 1995.

What makes matters worse is that those radios communicate using non-standard 965 and 7700 baud, for reasons explained at length in this article. And the DOS utility of Motorola did a lot of busy loop waits as part of its protocol implementation and breaks on most modern and fast machines. Needless to say, there is no way you can run it on a modern computer and make it work.

Below are two scope captures I did while I was trying to understand how the radio communicates – modern scopes make this so easy 🙂

 

scope_13 scope_14

USB cable

The first order of business for the GM300 was to build a USB cable to connect to it. There is a lot of discussions on Internet forums around the fact USB cables should be avoided, but this is, I think, mostly related to the fact a lot of cheap USB cables cannot properly support non standard baud rates leading to a ‘it doesn’t work’ kind of scenario.

From an electrical standpoint though, USB is ideal: the radio uses TTL levels, so a standard FTDI to TTL adapter, if you have one in your toolbox, will be a perfect fit.

IMG_20160228_133040

 

The schematics for the adapter couldn’t be simpler:

GM300 simple adapter

GM300 simple adapter

As you can see, no diodes, no active component… I initially tried to be fancy and isolate TX and RX with a 1n4148 diode, but I never managed to make it work, until I just connected TX and RX and added a weak pull-up, which worked like a charm.

The RJ45 pin numbering starts at pin 1 on the left side when you look at the connector from the bottom (where you see the metal pins exposed, not the plastic tab).

Getting the RSS to work

There are two ways of programming the GM300 as of 2016: one is a Windows XP program called “Radio Doctor” which can be found on a Yahoo group. Not much to say about this one, it will connect to COM1 or COM2 and try to read/program a GM300. If you have access to an XP machine, this is an easy way to program the channels.

Note: did you catch the reference to COM1 or COM2 above? Make sure your FTDI adapter does show up as one of those on your machine, and if not, force it! Radio Doctor does not let you pick the COM port, so that’s an important detail.

GM300 RSS

Radio Doctor does not give you access to any of the accessory connector programming though, and you will need to use the Motorola GM300 “RSS” to do this. I am including it below, hoping that Motorola won’t have an issue with this – the last update of this program was 1995: gm300v.5 . Note the tiny 350KB size for a this fine piece of floppy disk era software!

DosBOX

The RSS will work fine on DosBOX, an MSDOS emulator that was written primarily for gaming. Please refer to the DosBOX manual for basic setup instructions.  As far as the Motorola RSS is concerned:

  • Configure your FTDI serial port as a “real port” in the config file of DosBOX. The config file is well commented.
  • Slow down DosBOX to about 190 “cycles” using ctrl-F11 / ctrl-F12 to simulate an old computer.

With the two point above, you should be able to setup the RSS and do a successful “comms test”, then read and program the radio.

Adding VMWare

In my own case, running on a Mac as my primary computer, I used a Windows XP image on VMWare, then DosBox on VMWare. Works perfectly fine!

2 comments on “Programming the Motorola GM300

  • March 1, 2016 at 02:03
    Permalink

    It’s also not necessary to run DOSBox within VMware, as there are native OS X versions of it, and you can map a USB to serial port through on the mac side.

    Reply
    • March 1, 2016 at 02:52
      Permalink

      Very good point – in my experience, the serial port implementation of the Mac version of DOSBox does not deal properly with the serial port and leaves it at its default baud rate, usually 9600 baud.

      The result is that the GM300 RSS does not actually set the port speed to 960 baud, and the radio does not understand it at all. Have you managed to make DOSBox work with the GM300 RSS on the Mac ?

      Reply

Leave a Reply

Your email address will not be published. Required fields are marked *