Reading, Writing the TM-D700A - and Hyperterminal


by Dave - [email protected]

TM-D700A/E Serial Port Commands

Wanna have some fun 'talking' to your D700 and trying to figure out what it's telling you?

This tale is NOT for the faint of 'keyboard' and the author assumes no responsibility for lost sleep, data and whatever else may become of the explorer and his or her D700.

Play it safe.

*** USE THE KENWOOD SOFTWARE TO BACKUP YOUR D700 MEMORY AND SETTINGS ***


This page describes how to set up and use a simple terminal program (Hyperterminal in this case) to read data from and write data to the Kenwood TM-D700A/E radio.

The D700 uses simple ASCII commands to communicate via the serial port. These commands can be used to query the D700 to report current settings and memory contents, command the D700 to change settings and memory contents, and monitor D700 activity.

Once the commands and their function(s) are known it becomes a simple matter of sending a series of commands to and recording the responses from the D700. The responses can then be saved and used to restore the D700 settings and memory content. The collected data can also be manipulated and sorted quite easily with MS Excel or a good text editor 1 and then be written back to the D700.

The file D700-Read-Settings.txt is such a file that when sent to the D700, the D700 will respond with all of the current settings. Likewise the file D700-Read-Memories.txt will cause the D700 to respond with all of the current memory contents. (More on these files later)

The slick part of this process is in configuring Hyperterminal so it does all of the work for you. As you will see later in this article, during normal keyboard communications with the D700 you will need to configure Hyperterminal to 'echo' back everything that you type. The echo is necessary so you can keep track of what you are typing (the D700 is very strict at what it will accept). You will also need to configure Hyperterminal to add 'line-feed' characters so that each command and response will appear on a separate line on your screen.

This configuration is fine for 'Exploring' but not necessarily so for the purpose of reading and writing settings and memory to the D700.


First order of business is to configure Hyperterminal so that it will know which com port your D700 serial cable is connected to.

The Hyperterminal application is found on most versions of the Windows operating system and usually resides at:

Start >Programs >Accessories >Communications >Hyperterminal

If you can't locate it there just do a search for 'Hyperterminal'. Once located, launch the program.

Unless you clicked on an existing Hyperterminal connection shortcut you should be presented with a 'New Connection' dialog.

If you do not get the 'New Connection' dialog select 'File' >'New Connection'

  • Enter a meaningful name, such as 'D700-com3-9600'
  • Select an icon for the shortcut
  • Click 'OK'
  • At the 'Connect To' >'Connect using:' pull-down menu:

  • Select the com port your D700 is connected to
  • Click 'OK'
  • At the 'COMx Properties' dialog (where 'x' represents the selected com port) select:

  • 'Bits per second:' 9600
  • 'Data bits:' 8
  • 'Parity:' None
  • 'Stop bits:' 1
  • 'Flow control:' None
  • Click 'OK'

    At the 'File' >'Properties' >'Settings' >'ASCII Setup' dialog:

    Under 'ASCII Sending':

  • [CHECK] 'Send line ends with line feeds'
  • [CHECK] 'Echo typed characters locally'
  • Enter a 'Line delay:' of [0] 'milliseconds'
  • Enter a 'Character delay:' of [0] 'milliseconds'
  • Under 'ASCII Receiving':

  • [CHECK] 'Append line feeds to incoming line ends'
  • [UNCHECK] 'Force incoming data to 7-bit ASCII'
  • [UNCHECK] 'Wrap lines that exceed terminal width'
  • Click 'OK'
  • Click 'OK'

Type a '.' (period) and press 'Enter' on the keyboard; the D700 should respond with a '?'.

If all is well go to 'File' >'Save As...' and save the configuration. Name it something like 'D700 Explore' because we will create two more configurations, one for reading and saving D700 data and another for reading saved data and writing to the D700.

Let's create those configurations now so that we can get a backup of the D700 data before exploring.

Go to the 'File' >'Properties' >'Settings' >'ASCII Setup' dialog.

    Under 'ASCII Sending':

  • [CHECK] 'Send line ends with line feeds'
  • [UNCHECK] 'Echo typed characters locally'
  • Enter a 'Line delay:' of [150] 'milliseconds'
  • Enter a 'Character delay:' of [0] 'milliseconds'
  • Under 'ASCII Receiving':

  • [CHECK] 'Append line feeds to incoming line ends'
  • [UNCHECK] 'Force incoming data to 7-bit ASCII'
  • [UNCHECK] 'Wrap lines that exceed terminal width'
  • Click 'OK'
  • Click 'OK'

Go to 'File' >'Save As...' and save this configuration as something like 'Write D700 Config' as this is the configuration that will be used to read saved data and write it to the D700 memories and settings.

Go to the 'File' >'Properties' >'Settings' >'ASCII Setup' dialog.

    Under 'ASCII Sending':

  • [UNCHECK] 'Send line ends with line feeds'
  • [UNCHECK] 'Echo typed characters locally'
  • Enter a 'Line delay:' of [150] 'milliseconds'
  • Enter a 'Character delay:' of [0] 'milliseconds'
  • Under 'ASCII Receiving':

  • [CHECK] 'Append line feeds to incoming line ends'
  • [UNCHECK] 'Force incoming data to 7-bit ASCII'
  • [UNCHECK] 'Wrap lines that exceed terminal width'
  • Click 'OK'
  • Click 'OK'

Go to 'File' >'Save As...' and save this configuration as something like 'Read D700 Config' as this is the configuration that will be used to read the D700 memories and settings and save it to a file.


If you haven't already done so, read over and familiarize yourself with the data presented on the TM-D700 Serial Port Commands page. This page is a collection of responses that have been investigated and for the most part seem to do as stated.

The first entry in the left column is the command with input parameter notation. The input parameters are further explained in the middle column. The right column contains either a number or the notation 'soft' or 'port'. The numbers indicate the front panel 'MNU' equivalent (pages 23-27 in my Kenwood D700 Instruction Manual). 'Soft' indicates an equivalent front panel soft-key input. 'Port' indicates that, as best I can tell, there is no direct equivalent front panel entry. The yellow highlighted entries are commands that the D700 recognizes but have not been identifed as to input parameters or function. The blue highlighted entries are the ones that need to be completed.


A few more things to setup and you will be ready to see some data...

Make a copy of the two text files D700-Read-Settings.txt and D700-Read-Memories.txt. The easiest way to do that is to 'Right-Click' on the link and select 'Save Target/Link As...' (or whatever your Browser calls it) and save both text files to a location that will be easy to access later.

The configuration files described earlier will be required before proceeding to the next step.

Launch Hyperterminal. When the 'New Connection' dialog appears:

  • Click on 'Cancel'
  • Go to 'File' >'Open...'
  • Locate and select the 'Read D700 Config' configuration file
  • Go to 'Edit' >'Clear Backscroll'
  • Go to 'Edit' >'Clear Screen'
  • Go to 'Transfer' >'Capture Text...'
  • Enter a name and path for the captured data from the D700, 'Captured-Settings'
  • Click on 'Start'
  • Go to 'Transfer' >'Send Text File...'
  • NOTE: As soon as this file is selected in the next step, the contents will be sent to the D700 as commands and the responses from the D700 will be captured in the file 'Captured-Settings'.

  • Locate and select the 'd700-read-settings.txt' file.
  • The process should take about 30 seconds.

  • Go to 'Transfer' >'Capture Text...' >'Stop'

The 'Captured-Settings' file now contains all of your D700's settings.

Rename the file to something meaningful to you and then repeat the same steps for the 'd700-read-memories.txt' file.

You can now open the captured data file and the 'd700-read-settings.txt' or 'd700-read-memories.txt' and compare line for line how the D700 responded to the commands.


Work in progress - more to come...

NOTES:

1 By the way if you are looking for a good text editor to replace the standard 'TextEdit' may I suggest looking at 'UltraEdit-32'. I have been using this editor for many years and am thoroughly satisfied with its many features and performance. (I am not affiliated with this company in any way, just a satisfied customer). back