7100 Computer Interface and Calibration

setting up USB audio levels, and frequency calibration

© 2018 by KV5R. All Rights Reserved. Rev. 2/9/2019.

Like most modern ham radios, the Icom IC-7100 comes with a built-in USB audio and serial ports, providing a one-cable connection to a PC without needing an external interface box, dongles, or audio cables. What this really means is that the radio contains a USB hub chip, two serial port chips, and a soundcard chip (just as you’d find in external interfaces) that presents a soundcard and two serial (COM) ports to the computer. To use them you just pick them from a list in your software’s audio and CAT setup, just as if they were external USB dongles.

Unfortunately the audio chip and the default settings that Icom uses are nowhere close to being matched with Windows. So we go on-line looking for good advice on settings, and as usual, we find a mess of conflicting information. But fortunately you landed here, and I’ll save you a bunch of trouble. So follow along by opening and adjusting your Windows Sound dialog box, and the radio’s Set → Connections menu.

Update: Windows 10 apparently identifies the radio’s sound chip properly and applies the normal line-level gain. The very low gain setting described below applies to Windows 7, and perhaps 8.


(Skip on down if you’ve already done this)

Do NOT plug in the USB cable before downloading and installing the Icom USB Driver! If you do, Windows will install a generic driver, and you’ll have to go into Device Manager and remove it, then install the Icom driver. Actually, it’s not an Icom driver (though you get it from them), it’s a Silicon Labs CP210x driver. Apparently, that’s the manufacturer of the serial UART chips used in the radio. The soundcard in the 7100 requires no special driver; Windows idetifies it as a “USB Soundcard Device” and uses a generic driver, just like if you plugged in any USB soundcard dongle.

Read the Icom USB Driver Installation Guide. Save the PDF for future reference. It has detailed instructions and screen-shots for Windows 7, 8, and 10.

Download the latest USB Driver (Version 1.30 {or latest} ), Driver Utility and manuals. Unzip it and click CP210xVCPInstaller_x64.exe (or _x86 for 32-bit Windows). AFTER installing the driver, reboot, then plug in the USB cable, and then turn on the radio.

In Device Manager, and programs that access COM ports, you’ll find two new (virtual) COM (RS-232 Serial) ports, named like COM3 and COM4 (or 5&6, or 7&8, if you already have some real or virtual COM ports). They will appear as “Silicon Labs CP210x USB to UART Bridge” in Device Manager, under the “Ports (COM & LPT)” branch of the device tree.

The first com port will be called USB1 in the radio’s docs and menus. This is the CAT (Computer Aided Transceiver, Icom CI-V commands) port you’ll use in all your radio software that provides and uses radio control. Yay! No more overpriced CI-V level converters, and no more overpriced interface boxes.

The second COM port is called USB2 in the radio. It can be set to output RTTY or DV data messages (to an ASCII terminal emulator software), or used for a NMEA GPS for D-Star.

The radio’s serial UART chips present RTS and DTR states, but the 7100 does not use them, so forget about PTT or CW keying via virtual hardware pins in your digi-mode software. You must use software that will PTT via CAT command, so older software that only sends PTT via RTS or DTR pin will not work. And forget about CW keying from the computer. Unlike the 7300, the 7100 does not implement RTS-pin keying for CW, so for computer CW you’ll have to either send a pure audio tone from the software in SSB (no, that is not MCW), or for “real” CW keying (with break-in) you’ll need a USB to Serial dongle (with real hardware RTS/DTR pins), and the usual grounded-emitter NPN transistor circuit wired to the straight-key jack on the radio. YUK. Shame on you, Icom!

Update: I found a little device for $10 that simply plugs into a USB port and the radio’s CW Key jack. It apparently contains (in the USB plug) a USB to UART bridge chip (it presents a virtual COM port to the computer), and uses RTS and a switching transistor to key (ground) the radio’s CW jack. It works fine. It’s called “LD-C103” and is a generic/unbranded part. Look on Amazon and Ebay.

In your rig control software settings, pick the first COM port and set it to 19200, N, 8, 1, and CTS/RTS doesn’t matter; I set them to “Forced Off.” Note that if you have a 7300, you can use them and there are settings for their functions in the 7300’s Connectors menu. Note also that two programs cannot share the COM port. If for example you have OmniRig running in the background, then start HRD, you’ll get that good ol’ DOS-days error, “COM port already in use.”

Actually, there’s a way around that—a utility called VPSE (Virtual Serial Ports Emulator), whereby you map a real (or virtual) serial port to a new virtual port, then point as many programs as you like to the new port, and all can use it at the same time. VPSE routes the traffic as needed. Why? You might run HDSDR as a panadapter, with OmniRig providing CAT control to it, and you might also run your digi-mode software, and logging software, all of which need access to the radio’s CAT data on the same COM port. Strangely, the 32-bit version is free, but the 64-bit version costs about $20. VPSE has a nice graphical interface and is easy to set up, then forget. Note that once you’ve set it up, you need to save it’s setup, and tell it to start automatically with Windows. Then remember to set all your software to use VPSE’s port, not the radio’s port, for CAT.

(There’s also a free one called com0com, but its setup is a bit too confusing, so I didn’t mess with it.)

The Icom USB connection also presents the USB soundcard chip in the radio, and it’s just like any USB Soundcard dongle—it shows “Speaker (USB Audio Codec)” and “Microphone (USB Audio Codec)” in the Sound dialog and anywhere you can select audio sources.

Audio Setup

Locate Windows’ “Sound” dialog in Control Panel, or right-click the little speaker in the Taskbar and pick “Recording Devices”.

In the Playback and Recording tabs of the Sound dialog, open Properties of both devices and rename them to something more meaningful:

Playback → Speaker (USB Audio Codec) → Properties → General, rename it to IC-7100 XMIT

Recording → Microphone (USB Audio Codec) → Properties → General, rename it to IC-7100 RECV

And in both of them, click the Change Icon button and set it to the 2-jack RCA cable icon. Showing a microphone that gets the radio’s output (like a speaker), and a speaker that modulates the radio (like a microphone), is pretty darn confusing, as are the generic device names… Yep, in good ol’ Windows, your radio transmits with a speaker and receives with a microphone. Why can’t they just say Input and Output? So don’t skip doing the above—it’ll make everything much easier.

Set Levels

Windows Sound Levels

First time plugging the radio into the computer, the USB audio levels will be set at 100% — EEK! Set them as shown below before starting any digi-mode software.

There is a known bug in the TI sound chip used in many modern amateur radios. This chip mis-identifies itself to Windows as a microphone device, causing Windows to add 30 dB gain to it. The solution is to lower the level slider, almost to the bottom, to -0.4dB.

In the Recording tab, open properties for the IC-7100 RECV (USB microphone) device, Levels tab, right-click the level slider and change it from percent to deciBels. To verify if your chip has the bug, lower the slider to minimum, then use the right-arrow key to raise it 3 clicks, til it shows -0.4 dB. But if your slider shows -96 to +30 dB, with 0dB in the middle, you don’t have the bug and/or Windows has properly identified the chip as a line-in device, and a medium level (0dB or 50%) is where you want it. Close the Properties box.

In the Playback tab, and open properties for the IC-7100 XMIT (USB Speaker) device. Set its level to -24 dB (20%). On my Windows 7 computer, I had to use 13%, but on the Windows 10 computer I use 20. YMMV. You will also set the radio’s USB MOD Level to 20. The trick is to balance them, not have one real high and one real low, lest you overdrive the audio chip and create distortion. And both must be set so the radio isn’t driven to any ALC indication, which is usually 25-30 watts on PSK-31, or 50-60 watts on a pure audio tone.

NOTE: YMMV, and the settings I gave above may be wrong for you, because Windows keeps changing the way it handles audio devices. Just be aware that your Recording (mic or line-in) may be normal, or may need to be set real low. You’ll soon know, when you send received audio from the radio to the computer, watching the green bar-graph in the Sound dialog. It should be bouncing around well under half-scale on band noise, and about three-quarters on a strong signal.

If you want to listen to the radio through the computer, you need to go to Sound → Recording → IC-7100 RECV → Properties → Listen, and check the “Listen to this device” box. It should pipe the audio to your default playback device, usually speakers or HDMI audio. And if your panadapter SDR isn’t muted, you can enjoy a nice echo from the differential latency… 🙂 I never listen to the radio on the computer, because of that latency.

As for monitoring your transmitted digi-mode audio, well, that’s not as easy, as there’s no Listen option for playback devices. Maybe turn on Set → Functions → Monitor in the radio. Yep, just tried it, that works even in SSB-DATA mode. I find it helpful to monitor the transmitted audio in digi-modes; it helps to know what you’re actually transmitting, when the tail stops, etc. Otherwise, you might not know you’re still transmitting, if your software macros didn’t go to receive as expected, and you’re not looking at the watt meter. I never want the computer transmitting anything I can’t hear.

Note: TURN OFF ALL WINDOWS SOUNDS! Transmitting chimes and other Windows’ noises is NOT LEGAL in the CW-Digi sub-bands. Sound (dialog) → Sounds (tab) → Sound Scheme, set to No Sounds.

Radio Levels

Next, in the 7100, press Set → Connectors:

  • USB AF Level: 50 (default)
  • USB MOD Level: 20 ← IMPORTANT! The input is WAAAY too hot at the default 50%!

Also, while in the Connectors menu, set:

  • ACC MOD Level and DATA MOD Level: set to 0%, if you’re not using those jacks. In this case, DATA MOD Level doesn’t mean SSB-DATA mode, it means the DATA jack on the back of the radio, where you’d connect something like a Pactor TNC.
  • DATA OFF MOD: set to MIC, ACC: disables mic and accessory jack inputs in SSB-DATA mode; enables them when NOT in DATA mode. (DATA OFF MOD means “MODulation source when DATA mode is OFF”, i.e., regular SSB voice operation.
  • DATA MOD: set to USB: ACC is the default, so it will not transmit USB audio until you set this! In this case, DATA MOD means “MODulation source when DATA mode is ON.” So, DATA MOD Level and DATA MOD are two entirely different things. Confused yet?

So, DATA MOD set to USB, level is controlled by USB MOD Level, and DATA MOD Level is only for the radio’s data jack. They could have done that a little better in the firmware…

On my Windows 7 system, with Playback at -30.9 dB (12%) and USB MOD Level at 21% produced the following results:

  • In DM780: 29 watts on PSK idle, 63 on PSK-off tone
  • In DM780: 50 watts on RTTY idle
  • In MixW3: 31 watts on PSK idle, 65 on menu Commands → Tune (it outputs a single tone but may also be set to two-tone)
  • In MixW3: 66 watts on RTTY idle

On my Windows 10 system, Playback at 20%, radio USB MOD Level at 20% produces the correct 30 watts on PSK-31.

So, if you’re on Windows 10, start with 50 and 50 for receive, and 20 and 20 for transmit. But in Windows 7, the receive (mic) will be near minimum, and the transmit (speaker) will be 12-13. YMMV.

Note that I have not tested this combination for distortion, I just set proper power levels. Also note that the USB MOD Level control is very sensitive — 20 produced 30 watts PSK and no ALC, while 25 produced 117 watts and full ALC (the default 50% would likely destroy something). You never want ANY ALC on digital modes, as it degrades the quality and readability of the signal, and splatters all over everybody else. See that LID on the waterfall that has 10 splatter images around his signal?


  1. The radio’s default USB MOD level of 50% is WAY TOO HIGH (sensitive), requiring setting computer level to 0-1% (no granularity). Reduce USB MOD to 20% then set computer level to 12-20% to set RF power to about 30 watts (no ALC indication) on PSK, or about 60 watts continuous tone.
  2. Do NOT limit RF power with the RF Power control, leave it at 100% and limit power with low audio drive. In Icoms, turning down RF Power just raises the ALC bias level, and we want no ALC action of any kind.
  3. Always decode and send digi-modes at 1500 Hz. Why? The 7100’s filters center on 1500 in SSB and DATA mode (unless you shift it with the PBT controls). So, if you tune somebody at 1000, then dial the filter down to 100Hz, oops! Where’d he go? Outside the filter. Of course, if you’d rather use 1000 as center, just engage the Twin PBT and dial both of them down 500.

Regarding #3 above, DM780 handles the 1500 Hz problem nicely:

  • Set: Program Options → Waterfall → Center Frequency Marker → 1500.

Then you can click on a signal anywhere in the waterfall, then click the “C” tag, and it will instantly tune the radio (via CAT) to move the signal to 1500. Then you can select narrow filter and start the QSO. Nifty! It’s like the CW Tune button on the radio, which tunes the signal to be at your selected CW offset.

Soundcard Software Calibration

All soundcard chips run a crystal oscillator, which establishes data sample rates, and they are all of rather low quality. The better digi-mode softwares provide a way to calibrate the soundcard’s sample rates by determining and then applying a correction factor, usually in parts per million (ppm). Having a calibrated soundcard clock is very important in determining exact audio frequencies and shift timings in the various digital modes.

The most visually obvious soundcard clock error is seen in SSTV, where the received pictures are slanted. But until you calibrate your soundcard clock, you don’t know if it’s you or the other guy that’s off!

MixW and fldigi use the best calibration method: an SSTV-like picture is painted with 60 LPM sweeps while tuned to WWV. The NIST’s cesium clock ticks will eventually paint a vertical line, and if it slants left or right, your soundcard clock calibration is off. The longer you let it run, the better the accuracy.

My results:

  • Using fldigi in WWV mode, 30 minutes of samples (native=44,100): -40ppm
  • Using checkSR.exe v.1.0 for 12 hours: -44 in, -1 out
  • High-res verify using MixW’s SSTV-WWV calibration, run 1 hour, no slant!

Note that there will be different calibration factor for different sample rates. This will be 8000 in DM780, and 11025 in fldigi and MixW.

IC-7100 Calibration

Now that the soundcard is calibrated to WWV, we can use it as an accurate audio frequency counter to measure beat frequencies and calibrate the radio’s REFerence oscillator.

Using MixW in PSK31 mode, AFC On, read audio frequency in the status line (0.1Hz resolution):

Set radio dial to exactly 10, 15, or 20 MHz. Switch to CW mode, and your dial changes by 600, put it back. Press the Speed/Pitch button and set your CW offset to 600 Hz. Switch back and forth between CW and CW-R. The 7100’s first IF will shift up or down exactly 600 Hz and produce a 600 Hz beat with WWV’s carrier. Go to Set → Functions → REF Adjust and carefully adjust it until MixW’s AFC reads 599.9-600.0 in both CW and CW-R. If you are not connected to a software that will read the audio frequency, just adjust REF Adjust until the CW/CW-R tones sound equal. You can also beat the 600Hz offset against the 600Hz tone that WWV plays on most alternate minutes, which will produce that WAAOOWAAOOWAAOO beat sound. This will allow you to get within a cycle or so by ear.

Verify Radio Calibration: Go to AM and read MixW’s AFC on the 500 or 600 Hz audio tone. Then switch to LSB and USB and read them again. When they are all equal, the radio is calibrated — and WWV is the defining standard — you couldn’t do any better with a $10,000 lab-grade frequency counter.

My results: At the change between 41-42%, ±0.2 Hz at 15 MHz! Room: 76.3F nominal temp. Note that after a year of crystal aging, my 7100 now runs 45% on the calibration scale (all crystals drift with age).

Note: At minute :02 they play a 440 Hz tone. Tune the A string on your guitar. Unless you believe that A should be 432 😉

Alternative to MixW for accurate audio frequency readings: Soundcard Scope, by C. Zeitnitz. There are also some musical instrument tuner software that may work. But MixW with PSK-AFC and 0.1 Hz resolution is the best I’ve found.

Linux: See the baudline site for info & Linux software.


  1. When you are “calibrating” the USB Audio Device, you are measuring the the actual sample rates of the IC-7100’s internal USB Sound chip, not the computer’s sound card.
  2. The correction factor (usually in ppm) is stored in your digital mode software, not the radio. Nothing about the radio’s USB sound device can be changed except picking a sample rate, bit rate, mono/stereo modes. So you’re actually calibrating the software’s correction factor, not the radio’s soundcard.
  3. Correction factors are different for each sample rate, so a correction in a digi-mode software that uses 11025 (MixW, fldigi) is not valid for another that uses 8000 (DM780).
  4. DM780’s internal soundcard calibration app looks nice but it takes many hours to stabilize. It does not use WWV but uses computer’s clock, which it updates on-line via NNTP every 5 minutes. Also, DM780 stores correction at actual calculated sample rate, such as 7.9983 kHz, not ppm like others, so it’s hard to calculate its setting to use in other programs.

What’s Next?

Adding an I.F. output and an SDR panadapter to the 7100!

73, — KV5R

Leave a Reply

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