Icom IC-R2 Cloning ICOM Receivers

Cloning ICOM Receivers
Using the ICOM IC-R2 Handheld Scanner as an example
Data structures and computer control information
Version 1.0 of 14 Sept 2001
by BlakkeKatte@yahoo.co.uk
Cloning ICOM Receivers (using the ICOM IC-R2 Handheld Scanner as an example.) Table of Contents
Acknowledgements.......................................................................................................... 3
Data Representations....................................................................................................... 4
The ASCII Character Set................................................................................................ 4
The ANSI Character Set................................................................................................. 4
Hexadecimal Numbers................................................................................................... 4
Binary Numbers............................................................................................................ 5
ASCII Represented Hexadecimal .................................................................................... 5
Background to Cloning an ICOM Radio. ......................................................................... 6
Background.................................................................................................................. 6
The CI-V System.......................................................................................................... 6
Understanding the Hardware Interface............................................................................. 7
Icom OPC-478 Interface. ............................................................................................... 9
Icom CT-17 Interface..................................................................................................... 9
Differences between the OPC-478 and CT-17 Interfaces.................................................. 10
Other designs.............................................................................................................. 10
Communication Parameters.......................................................................................... 11
Icom Command Language............................................................................................. 12
Commands Used when Cloning. ................................................................................... 12
Transferring Data........................................................................................................ 14
Example line of data.................................................................................................... 15
Calculating a Checksum............................................................................................... 16
Example Calculation:............................................................................................... 16
IC-R2 Memory Structure .............................................................................................. 18
Methodology.............................................................................................................. 18
Accuracy and Completeness......................................................................................... 18
Overall Structure......................................................................................................... 19
0000 - 0C7F : Memory Channel Data............................................................................ 19
Frequency Formats.................................................................................................. 21
Special Format – Broadcast band with 9kHz separation................................................ 21
CTCSS Tones Table ................................................................................................ 22
0C80-0DFF : Scan Edges............................................................................................. 23
0E10-0E5F : VFO (Band) Data..................................................................................... 23
0E60-0E6F : Common Parameters................................................................................. 23
0E70-0E77 : Values on Start-up.................................................................................... 25
0E80-0E87 : Values on Start-up.................................................................................... 26
0E88-0E8F : Channel Mode Values............................................................................... 26
0FA0-0FAF : User Comments ...................................................................................... 26
0FB0-0FBF : Icom Version Details ............................................................................... 27
Appendix A : ICOM's ICF Disk File Format.................................................................. 28
Icom’s .ICF format...................................................................................................... 28
The First Two Lines. ................................................................................................... 28
ICF File Coding.......................................................................................................... 28
Appendix B - ASCII Table............................................................................................. 30
Appendix C - ANSI Table.............................................................................................. 30
2

Acknowledgements

I developing this document, I have made extensive use of resources from the internet. I wish to acknowledge:
= Bruce A Pope for his document “Everything you always wanted to know about the IC-R10 that is not in the manual.” (http://people.we.mediaone.net/baptpdc/r10/r10.htm). In that document, Bruce describes his decoding of the Icom IC-R10 scanner.
= Ekki Plicht (http://www.plicht.de/ekki) who maintains a site with a lot of Icom programming material. Ekki has also written the CIVTest program (http://www.plicht.de/ekki/software/civt.htm) that allows commands to be sent to an ICOM radio and displays both the commands and the responses from the radio.
= Dave (AA6YQ) (http://www.ambersoft.com/Amateur_Radio/index.htm), author of the CI-V Explorer program (http://www.qsl.net/civ_commander) and other Icom computer control resources.
= Goran Vlaski (http://www.digital-laboratory.de/) for his freeware ICR2 programming utility and his Icom Clone Utility that can back up and restore the IC-R2 by storing clone files on disk.
= Gommert Buysen (http://www.butel.com.nl) for his Advanced Radio Control (ARC) program that can clone the IC-R2, and the iclone2 program which can back up and restore the IC-R2 by storing clone files on disk.
= Contributors to the IC-R2 discussion forum at
http://groups.yahoo.com/group/icomr2.
= Icom for the DOS based software for programming the IC-R2, and their 1991 guide entitled “CI-V : Icom Communications Interface - V Reference Manual”
= Raihan Kibria (http://www.tu-darmstadt.de/~rkibria) for his frhed (Free Hex Editor) program. This easy to use and free utility makes an easy task of exploring, comparing and changing data files in either ASCII or Hex.
BlakkeKatte September 2001
3

Data Representations

In this document, data is represented in a variety of ways:
= Characters are represented using the ASCII and ANSI character sets.
= Numbers are represented in hexadecimal, ASCII represented
hexadecimal, or binary.

The ASCII Character Set

The ASCII table describes the American Standard Code for Information Interchange, the basis of character sets used in most present-day computers. US-ASCII uses only the lower seven bits (characters 0 to 127) to convey some control codes, space, numbers, most basic punctuation, and unaccented letters a-z and A-Z. Appendix B shows the ASCII Character set.

The ANSI Character Set

The ANSI character set (developed by the American National Standards Institute
- ANSI), is a standard extension of the ASCII character set. The table at Appendix C shows characters 128-255 of the ANSI character set.

Hexadecimal Numbers.

Hexadecimal (Or "hex") numbers count in base 16 (decimal numbers count in base 10). Hexadecimal numbers are represented using the digits 0-9, with their usual meaning, plus the letters A-F (or a-f) to represent hexadecimal digits with values of (decimal) 10 to 15. The right-most digit counts ones, the next counts multiples of 16, then 16^2 = 256, etc.
There are many conventions for distinguishing hexadecimal numbers from decimal or other bases in programs. In the C programming language for example, the prefix "0x" is used, e.g. 0x694A11. In Visual Basic the prefix "&H" is used, e.g. &H3F6. In this document the prefix "$" is used, e.g. $3AF.
One of the advantages of using hexadecimal numbers is that two characters represent one byte of data (an 8 bit number). For example 159 (decimal) is represented as $9F.
In this document, numbers are usually represented in a hexadecimal format: Hexadecimal number Decimal equivalent
$0 $1 $2 $3 $4 $5 $6 $7 $8 $9 $A $B $C $D $E $F $10 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
4

Binary Numbers

A number representation consisting of zeros and ones used by practically all computers because of its ease of implementation using digital electronics and Boolean algebra.
A bit is a binary digit. A single one or zero in a binary number. A byte is eight bits. A byte typically holds one character. Two hexadecimal
characters can represent the contents of a byte. A nibble is half a byte. Since a byte is eight bits, a nibble is four bits. One
hexadecimal character can represent the contents of one nibble.

ASCII Represented Hexadecimal

A data scheme where two ASCII characters are used to represent one byte of data. For example, one data byte containing the hexadecimal value $7E (126 Decimal, or 1111110 binary) would be represented by the two ASCII characters '7E'. The value 3 is represented by the two ASCII characters '03'.
5

Background to Cloning an ICOM Radio.

Background

Icom equipment has provision for computer control and management. The full implementation can be used for two purposes:
= to 'clone' the configuration of a radio. That is, to set up the operational parameters of a radio (frequencies, modes, scanning rates etc) either by copying them from another radio of the same type (cloning) or by using software to send them to the radio. This process is called 'cloning' the radio. It generally involves turning the radio off after the cloning process is complete, and turning it back on to reinitialise.
= to control the radio while it is operating e.g. to tell the radio to change to another frequency or mode, or to obtain details from the radio such as received signal strength.
The Icom IC-R2 receiver only allows for 'cloning' by computer. It does not allow for operational control.

The CI-V System

The current ICOM standard system for communication between computer and radio is called the ICOM Computer Interface Version 5. This is commonly called the CI-V interface standard.
The CI-V system allows for a computer to communicate, through it's serial communications port, to an Icom radio.
In its full implementation, the CI-V system allows up to four radios to be controlled from the same cable and computer interface. Icom has developed the CT-17 interface to allow up to four radios to be connected to one computer.
Cloning uses the same protocol, but it is assumed that there will only be one radio communicating with one computer (or two radios communicating with each other) and the interface hardware can be simpler. Often the hardware is installed inside the plug for connection to the computer, with the hardware drawing its power from the computer's serial port. Icom has developed the OPC-478 interface for cloning from a computer.
6

Understanding the Hardware Interface.

An interface is needed to convert between the low voltage TTL transistor logic of the IC-R2 to the higher voltage levels of the RS-232 computer serial communications interface.
Hardware required for communication between radio and PC is described below. Circuits are provided for the two ICOM Interface units:
= the CT-17 interface used for remote control;
= the OPC-478 interface used for cloning
These devices perform similar functions, but the plugs for connection to the radio are wired differently.
The Icom CT-17 interface is based on the Maxim Max232 RS-232 Line Driver/Receiver (http://pdfserv.maxim-ic.com/arpdf/1798.pdf). The following block diagram of the CT-17 interface shows how the RS-232 and TTL voltages are matched together, and shows the flow of data through the device.
7
This diagram clearly shows how data transmitted from the computer is reflected back to the computer for monitoring of the transmission. The diagram also shows that radio data is also reflected b ack to the radio so that collisions can be detected.
Because the transmit-data line and the receive-data line are connected together, the CI-V interface is connected in a wire-OR configuration. When the computer transmits a command, the command is automatically echoed back as received data, followed by the radio's response to the command, if any. For exampl e, i f an eleven-byte command is transmitted to a device on the cable, and a six-byte response is sent, the computer will receive a total of seventeen bytes (11+6=17).
This configuration allows devices on the cable to monitor their own transmissions in order to detect interface co llisio ns.
A collision occurs when two or more devices transmit simultaneously. If a collision occurs, the command must be re-transmitted. The radio or computer that is transmitting reads its own transmissions back from the communications cable. If it detects that another device has transmitted at the same time (i.e. there has been a collision) the radio or computer stops transmitting, listens to make sure that there are no other data transmissions on the cable, transmits a jamming code (5 characters of value $FC), and retransmits the original command.
Question: does the cloning system actually follow this part of the protocol? The cloning system seems to assume that no more than two devices will be on the cable at any one time and the protocol seems to minimise the possibility of collisions occurring during cloning
8

Icom OPC-478 Interface.

Following is the Icom design for the OPC-478 interface used for cloning. Note that this interface derives its power from the RS-232 serial port of the connected computer.
Source : http://www.lumanet.org/pages/rogerwilco/r_cci.gif. This version adds common part numbers to the original ICOM design.

Icom CT-17 Interface.

Following is the Icom design for the CT-17 interface used for computer control of Icom equipment. This interface allows up to four devices to be controlled by one computer.
This example is taken from the Icom CI-V spec 1986 (source http://www.plicht.de)
9

Differences between the OPC-478 and CT-17 Interfaces.

These two items are electrically similar, except that they terminate in plugs that are wired differently. The OPC-478 cloning cable generally plugs into the earphone socket of the radio. The CT-17 serial cable generally plugs into a separate data socket. The difference in the plug wiring is:
Plug OPC 478 Cloning Cable CT-17 Serial Cable
Tip unused CI-V data Centre CI-V data unused Ring Ground Ground
A Tip. An OPC-478 cloning cable with a stereo plug can be converted for use as a serial cable by using a mono plug to stereo socket converter. This allows stereo earphones to be used in a mono socket. It effectively connects both the tip and the centre of the plug together, so that a signal applied to the tip of the plug, also appears on the centre of the stereo plug. If more than one device is to be connected, external cabling such as common 3.5mm Y-adapters can be used to connect multiple devices.

Other designs.

There are a number of sites on the internet that provide designs and construction details of RS232 to IC-R2 interfaces. See for example the collection of links at
http://www.plicht.de/ekki/civ/index.html.
An interface similar to the CT-17 is published each year in the ARRL Handbook (Chapter 22 in the 2001 Handbook). The original design was published in 1993 in the ARRL QST magazine (http://www.arrl.org/tis/info/pdf/9302037.pdf
http://groups.yahoo.com/group/Icom_R-10/files/9302037.pdf
each year in the Handbook. The article also gives a good summary of the RS­232 protocol and associated communications issues. The printed circuit board layout for the design is at http://www.arrl.org/notes/hbk-templates/iface.pdf.
) but is repeated
) (copy at
10
Loading...
+ 21 hidden pages