cqrlog & IC-7610 setup

7 posts / 0 new
Last post
cqrlog & IC-7610 setup

My config for remote control IC-7610 and CW keying through cwdaemon:

    cqrlog preferences TRX control
  • RIG model: 378 Icom IC-7610
  • Device: /dev/ttyUSB0 /* this should be ICOMs USB1 (A) Port */
  • Serial Speed: 57600, DTR OFF, RTS OFF
    ICOM IC-7610 Set > Connectors > CI-V
    In my setup, I use the CI-V plug to control my amplifier Expert 1k3-FA. PC rig control uses USB1 plug. That's why those should be not linked as in the default setting.
  • CI-V USB Port: Unlink from [REMOTE]
  • CI-V USB Baud Rate: 57600
  • CI-V USB Echo Back: ON
    Just for reference CI-V setting for Expert 1k3-FA:
  • CI-V Baud Rate: 9600
  • CI-V Address: 98h
  • CI-V Transceive: ON
  • USB/LAN ...: 00h
  • CI-V Output (for ANT): ON

cwdaemon settings in /etc/default/cwdaemon

# /etc/default/cwdaemon
# OK1ZIA 17 Aug 2004
# Start cwdaemon at boot? yes or no

# device without /dev/ e.g. ttyS0, ttyS1, ttyUSB0, ttyd0 (FreeBSD), parport0,
# parport1, ... or null for no port keying.
# Default for linux: parport0 with ppdev driver
# DEVICE="parport0"
# use here for IC-7610 PORT B

# default 6789

# priority -20 to +20

# CW speed in WPM. Default 24

# default 0

# volume for soundcard. 0 to 100, default 70

# weight -50 to 50. Default 0

# sound device:
# c: console, o: OSS, a: ALSA, p: PulseAudio,
# s: soundcard (autoselect from OSS/ALSA/PulseAudio), n: none. Default is c.

    cqrlog preferences CW interface
  • Interface type: cwdaemon
  • cwdaemon Address: localhost
  • cwdaemon Port: 6789
  • cwdaemon Default speed: 24
    ICOM IC-7610 Set > Connectors > USB SEND/Keying
  • USB Keying (CW): USB1 (B) DTR
  • Inhibit Timer at USB Connection: ON

Some findings:
in split mode, my TX frequency will be used for send spots (Ctrl-W), not my RX frequency
In some power off cases (PC / rig) ttyUSB port numbers changes, if you have other USB-2-Serial devices

73 de Rolf, DL3LAR


Where can I find and load my ic 7300 into the program for rig control?




Just set cqrlog/preferences/TRXcontrol right rig name and right ttyUSB port name where you have USB cable between rig and PC.
Good start point is to select 19200 as serial speed and all other selectors as Default.

At ic7300 side start with settings/ci-v/ci-v usb port=link to remote, CI.v baud rate = auto and CI-V Tranceive = OFF

With these you should get started and you do not need to have any other program than properly installed cqrlog.


cqrlog & IC-7610 setup

What happens if you just select HamLib as keyer in cqrlog.
It does not need any parameters and your rig should know how to send cw string with ci-v command (as ic7300 does).

Splt spotting is untested here, but cqrlog polls rig with "fmv" (freq,mode,vfo) that means the current vfo gives frequency to cqrlog. Icoms, at least my 7300 and 706 can not answer to "v" vfo question it gives RPRT -11
Could it be somehow possible that your model gives TX frequency as default when split is on?
(You should see from TRCcontol window the frequency change when toggling split-button of rig)

For steady usb ports you should use udev rule.

Go to /etc/udev/rules.d/ folder. You should find there a file named like: 92-persistent-usb.rules

If there is not one, create with text editor. Name should start with number "XX-" that places the reading priority of file.
Inside the file are long lines:

#own CI-V box
ACTION=="add", SUBSYSTEMS=="usb", ATTRS{idVendor}=="067b", ATTRS{idProduct}=="2303", ATTRS{product}=="USB 2.0 To COM Device", SYMLINK+="rig"
ACTION=="add", SUBSYSTEMS=="usb", ATTRS{idVendor}=="10c4", ATTRS{idProduct}=="ea60" , ATTRS{product}=="CP2102 USB to UART Bridge Controller", SYMLINK+="icom7300"
ACTION=="add", SUBSYSTEMS=="usb", ATTRS{idVendor}=="0403", ATTRS{idProduct}=="6001", ATTRS{serial}=="A601VSBR", SYMLINK+="cwkeyer"
ACTION=="add", SUBSYSTEMS=="usb", ATTRS{idVendor}=="067b", ATTRS{idProduct}=="2303", ATTRS{product}=="USB-Serial Controller D", SYMLINK+="gps"
#ESP WiFi device via USB-TTL converter
ACTION=="add", KERNELS=="ttyUSB*", SUBSYSTEMS=="usb-serial", DRIVERS=="cp210x", SYMLINK+="ardu"
#Xduino UNO V
ACTION=="add", SUBSYSTEMS=="usb", ATTRS{idVendor}=="1a86", ATTRS{idProduct}=="7523", SYMLINK+="ardu"
#Arduino UNO V2
ACTION=="add", SUBSYSTEMS=="usb", ATTRS{idVendor}=="2341", ATTRS{idProduct}=="0001", SYMLINK+="ardu"

# TYT MD-UV380
SUBSYSTEM=="usb", ATTRS{idVendor}=="0483", ATTRS{idProduct}=="df11", MODE="666"

# Baofeng RD-5R Radioddity
SUBSYSTEM=="usb", ATTRS{idVendor}=="15a2", ATTRS{idProduct}=="0073", MODE="666"

Kernel checks USB device ids at plugin phase and if they match makes a symlink to /dev/ folder.
In my case I have /dev/ic7300, /dev/rig, /dev/cwkeyer and so on.
Symlink points always to right ttyUSBX port.

For more help use Goggle with search words: udev symlink ttyusb
Symlinking device names is a MUST !


ham lib

I have downloaded the updated hamlib file. I am new to linux. How do I install this file?
Francis Farmer

ham lib


With hamlib alone there is not much to do. It is just a program that can communicate with many rigs on input and gives equal output from then all to some other program that needs information from rig.
That way programmers can do one program for many rig brands and models.

You should use your linux'es (what distribution? Fedora, Ubuntu or what?) installer to get programs. That is the easiest way to get then work.
If you install cqrlog it will also install hamlib. See download page of this website.


cqrlog & IC-7610 setup

Hi Saku,
thanks for the udev hints. Now I could complete my rules :-), although still depending on the specific serial number of the rig. So far I couldn't find another way to distinguish USB1(A) an USB1(B) of the rig

If someone like to use this rule, please replace 'nnnn' with your serial number. Find out with

sudo lsusb -vd 10c4:ea60 | grep iSerial

This is how my /etc/udev/rules.d/92-persistent-usb.rules looks like.

ACTION=="add", SUBSYSTEMS=="usb", ATTRS{idVendor}=="10c4", ATTRS{idProduct}=="ea60" , ATTRS{product}=="CP2102 USB to UART Bridge Controller", ATTRS{serial}=="IC-7610 1300nnnn A", SYMLINK+="radio_ic7610a"
ACTION=="add", SUBSYSTEMS=="usb", ATTRS{idVendor}=="10c4", ATTRS{idProduct}=="ea60" , ATTRS{product}=="CP2102 USB to UART Bridge Controller", ATTRS{serial}=="IC-7610 1300nnnn B", SYMLINK+="radio_ic7610b"

Change device setting in cqrlog to "radio_ic7610a" instead of "ttyUSB0" and in cwdaemon to "radio_ic7610b" instead of "ttyUSB1", if you try my previous settings from post #1.

Hamlib as a keyer, I'll try later.

Regarding hamlib and read current vfo - unfortunatly \dump_caps says

Can set VFO: Y
Can get VFO: N

so this rig could also not answer the VFO question. It's not always returned the TX frequency but that one, where the dial is linked to.

73 de Rolf, DL3LAR