Following is a list of commands recognized in keyboard and batch modes. Note that the radio command must be given before any command that depends on the radio model. Other than this, there are no restrictions on the order of these commands. Note that several commands shown on the ? help billboard, but not documented here, have not been tested.
A command line consists of a string of keyword/argument subcommands executed in order from left to right. Subcommands take on zero, one or more arguments. If the subcommand is the last one on the command line and with no arguments, the general behavior is to display some program or internal radio value. In general, a question mark ? argument invokes a context-sensitive help menu giving all the valid arguments. If one or two arguments, the general behavior is to set some program or internal radio value. Due to variations in the many ICOM radio models, not all the values work in all radios. In such cases use of an unsupported value results in a "radio doesn't do that" message.
Following are the basic commands to control the radio, select the operating mode and control various basic functions. The command parser is designed for easy access to the most often used functions, such as changing the frequency or mode. When processing the next subcommand in the command line, the parser first looks up the function in the help menu and executes it if found. Next, it determines if the token is a valid frequency and sets the radio frequency if it is. Numbers below 1000 are interpreted in MHz, while those above 1000 are interpreted in kHz. If not a valid frequency, the parser looks up the mode in the help menu and sets it if found. If not found, the parser ignores it and displays an error message.
The following commands are used to read, write and empty (clear) memory channels and transfer memory contents to and from frequency (text) files. They take the argument range defining a single channel or range of channels that might be in the same or different banks. The channel notation used is represented b.c, where b is the bank number and c the channel number. For radios without banks, including the 706G and 756, the bank number is not used. A range of channels is represented by b1.c1:b2.c2. When spanning different banks, channels wrap from the last channel in one bank to the first channel in the next higher bank and vice versa. In addition, the channels wrap from the last channel in the radio to the first channel and vice versa. Numbering always goes from the first channel to the second channel number in either direction as indicated.
Various defaults apply in order to simplify operation. For instance, a chan, write or empty command with no arguments applies to the last selected bank and channel. When multiple banks are available, a channel number with no bank number applies to the last selected bank. The dollar sign $ replacing a bank or channel number applies to the entire range of banks or channels. For instance, a $:$ represents the entire contents of the memory array.
Additional subcommands can appear on these commands when certain features are selected and available. These include the name, split, tone, tsql, dtcs and, in the R8500, atten, step, pstep and scan. These subcommands are useful when channels are read from the radio, written to a file or read from a file.
These commands are used to inspect and change the various switches, controls and meters available in the radio. As each radio is different, not all commands work with all radios. By convention, a subcommand with no argument displays a menu of all functions that work with the particular radio, while a subcommand with one argument ? displays a help menu of all arguments along with a short description of the function.
Modern ICOM transceivers have two VFOs, called VFO A (or main VFO) and VFO B (or sub VFO). VFO A is ordinarily used for transmitting and receiving, but in split mode VFO A is used for receiving and VFO B for transmitting. A vfo swap command interchanges the contents of VFO A and VFO B. On the 706G and 7000 a vfo a command shows VFO A on the main display and VFO B on the sub display. A vfo b command shows VFO B on the main display and VFO A on the sub display. A vfo btoa command copies the contents of VFO B to VFO A. The 706G and 7000 can't do any of the other vfo commands.
On the 756 the main display is at the top in large bright font, while the sub display is at the bottom in small dim font. Ordinarily, updates from the panel controls and this program go to VFO A. A split sub command switches updates to VFO B, while a split main command switches back to the main VFO. A vfo equal command copies the contents of the main VFO to the sub VFO. The vfo watch and vfo nowatch turn the dual-watch function on and off.
ICOM transceivers can be switched to operate in either VFO or MEMO mode. In VFO mode the main display shows the frequency, mode and associated memory channel number. The frequency, mode, filter selection and other data can be changed by front panel controls and this program. The current VFO contents can be saved in a memory channel and recalled later. In VFO mode selecting a memory channel does not automatically transfer the contents to the VFO; however, this program does this with the read and restore commands.
In MEMO mode the memory channels are used directly. A read command automatically transfers the memory channel contents to the main VFO. While the VFO and MEMO modes can be selected by front panel controls, there are no explicit means to do this with the CI-V command set. Ordinarily, and to support memory channel operations like write and empty, MEMO mode is required. However, once one of the VFO subcommands is used, the radio switches to VFO mode. There appears no way with CI-V commands to switch back to MEMO mode.
Various transceivers and receivers have idiosyncratic means to control the preamps and attentuators. In the R8500 the attentuator and tuning step information are saved along with the frequency and mode in a memory channel. In modern transceivers the preamp and attenuator values selected for each band are saved in nonvolatile registers for each band separately.
These commands are used to set and display various internal functions such as AGC time constant, antenna selection, etc. By convention, a command with no argument displays a menu of all subcommands that work with the particular radio, while a command with one argument ? displays a help menu of all subcommands along with a short description of the function.
These commands set the radio dial tuning step and the variable tuning steps used in keypad mode. The dial and scan functions are provided by the radio, while the rate and step commands provide software control for the keypad tuning functions.
Modern ICOM transceivers include provisions for repeater tone and tone squelch (CTSS), and digital tone squelch (DTCS) functions used to access repeaters. At the moment, the only radio verified to support all three tone functions is the 7000. The 756 supports only the tone and tone squelch functions. The 706G tone functions cannot be programmed via CI-V commands.
The CTSS uses discrete analog frequencies in the range 67.0-254.1 Hz as shown by the tone ? and tsql ? commands. The DTCS uses discrete digital codes 023-754, as shown by the dtcs ? command. The DTCS codes are augmented by -NN, where the first N ndicates normal transmit polarity and the second N indicates normal receive polarity. The N for normal polarity can be replaced by R for reverse polarity.
All three of the following commands work the same way. A command with no arguments reports the tone status (on or off) and tone code. An argument on turns the function on and argument off turns it off. An argument matching one of the help menu selections sets that tone code and turns the function on.
These commands can provide software compensation for VFO and BFO frequency errors. Older radios generate LO frequencies from a single VFO synthesizer and generate BFO frequencies using a VCXO separately for each mode. Modern radios generate all LO and BFO frequencies from a single VFO synthesizer. The vfocomp command corrects for the VFO frequency error, while the bfocomp command corrects for the BFO frequency error in each mode.
Where all frequencies are synthesized from a common VFO, the calibration procedure is simple using a single WWV/H frequency. With keyboard commands, tune to the highest available WWV/H frequency in USB mode and note the beat note of the 500/600-Hz modulation tone, then switch to LSB mode and note the beat note. Use the vfocomp command to set the VFO compensation and retune the radio to implement it. Repeat as necessary until the beat notes are the same. Using this technique, it is readily possible to compensate within 0.1 PPM.
When the BFO frequencies are synthesized by a VCXO separately for each mode a different technique is necessary involving two WWV/H frequencies. As before, tune to the highest available frequency in USB mode and note the beat note. Then, retune to the lowest available WWV/H frequency and note the beat note. Use the vfocomp command to set the VFO compensation and retune the radio to implement it. Repeat as necessary between the highest and lowest frequencies until the beat notes are the same. This completes the VFO compensation.
The BFO compensation must be done for each mode separately, although usually only the USB and LSB modes are required. Using any available WWV/H frequency, note the difference between the 500/600-Hz modulation tones in AM mode and either USB or LSB mode. Adjust the USB and LSB BFO compensation so all three beat notes are the same.