Ham on Linux – IC-706MkIIG Rig Control

Working on this page for a good friend who has been more than just generous with her time, and friendship, as I’ve fumbled through life as a brand-new General, then Amateur Extra, and Volunteer Examiner since last September or so…  She, and her husband, are Amateur Extras too and inspired me to serve as a Volunteer Examiner here in our local area. I know a bit about computers and this is my way of returning some of the past favors – believe me this IS worth my time. 🙂

I am drawing heavily on my previous post on the IC-718 radio, this copy will be tailored to the incredibly popular Icom IC-706MkIIG radio.  Both radios are similar in function and setup, so it should be a fairly easy task.  Our IC-718 is currently working *very* happily being controlled by CQRLOG and I anticipate very little difficulty translating that success over to her 706. 🙂

Unless you already have the appropriate cable for the IC-706MkIIG, you will need to acquire one.  If you are like me and have moved to newer laptop computers, you probably don’t have a true “Comm Port” on your computer and will need to pick up an appropriate FTDI USB-serial cable.  (I am continuing to use another Ham operator’s eBay Store – BlueMax49ers – one whom I’ve had excellent results with in the past, solely as a customer/consumer – he hasn’t failed me yet).

That cable will permit you to establish CAT control over your radio – but it will not permit you to do those fancy digital modes of operation that are so popular these days. To do so will require another cable and box, (something like the Tigertronics Signalink USB-13I if it has the 13 pin Accessory connector on the back). None of that is required if you are sticking with regular voice/CW/RTTY modes, just CAT control is sufficient.

Must start with the rig itself

Before we get started, lets pay attention to the rig itself.  We need to access the IC-706MkIIG initial set mode via the Menu button/switch – (not certain, don’t own this rig, but “I think” you press and hold Menu to switch between quick set mode and initial set mode).  Once in the initial set mode menus – use the “Up | Down” buttons to navigate through the menu, and turn the main knob to change a setting on the menu.  I most strongly recommend you do *NOT* change anything, except those listed below, at this point – just use the “Up | Down” buttons to find the:

  • 34 CI-V ADDRES – (CI-V address) the default address should be “4E” (if it is not, there may be reason for that – but the default load of rigctld, (the rig control daemon) will expect to find this radio with an address of “4E”.
  • 35 CI-V BAUD – (CI-V data rate) set to “Auto” (If that doesn’t work, we will try 19200).
  • 36 CI-V TRN – (CI-V transceive) set to “off“.
  • 37 CI-V 731 – (CI-V operating frequency data length) set to “off“. (Only used when rig connected to IC-735 unit)

You should now be able to turn the radio off and those settings will be remembered by your rig.

Have to admit, I used a downloaded copy of the “Instruction Manual” for this rig to determine the above menu items.  I have no actual experience operating the IC-706MkIIG, but will have soon.

Now lets get started on the software

The first step is to assure your Linux account has access to the serial ports:

Even if you are using an FTDI USB-serial cable purchased for the purpose – you still have to be in the appropriate Linux “group”…

Add your user account name to the “dialout” group via Menu | Administration | Users and groups

Click on your account, then in the right click on the groups you are currently a member of – a list will pop-up and all you have to do is put a check mark next to the “dialout” group

Why the group name “dialout”? Every file in Linux has a security setting for access in terms of read/write/execute “permissions”. You are either the owner, member of a group, or “other” – the owner of most things in the system is “root”, but you should never use root as your normal user within Linux to avoid accidents and security problems.  So – the next best thing is to be member of the group that has rights on the item you want to use. For instance, in this case we want to access/control the ttyUSBx port. (Probably ttyUSB0, [“zero”], but it may be 1, 2 or 3 depending upon your computer/peripherals).

Back in the ’80s and early ’90s, most of us hooked up a telephone modem, which is a serial device, so they named the group given control over serial devices “dialout”.  Know it seems a weird name today, but that is how it came about and it still is in use.  Adding your account to Group dialout will give you the desired rights/control over serial communication on Linux, including ttyUSBx (usually ttyUSB0).

Second Step – let’s download and install those “other” packages for associated software programs you may eventually want to use in conjunction with CQRLOG and get them set up to automatically get updated with system updates by enabling their PPA repositories where we can, that way they will be “ready” when you are.

Use Administration | Synaptic Package Manager to install the following:

In filter type xplanet and then select the xplanet and xplanet-images (Mark for install) go ahead and Apply (install).. Then delete the xplanet from filter box.

In left column click on Ham Radio Universe and mark the following for installation:

Chirp (if not already installed – very handy if you have a uhf/vhf radio – not applicable to CQRLOG)
FLdigi (if not already installed)
TrustedQSL (need this if you use Logbook of the World)

Go ahead and “Apply”/install the packages then close Synaptic Package Manager

Note: We skipped over wsjt – will get that later by other means rather than old package

Open a terminal – we will be installing PPA Updates one line at a time Terminal;

sudo rm -f /etc/apt/sources.list.d/ubuntu-hams-ppa-­*
# type your password when prompted

sudo apt-add-repository ppa:ubuntu-hams-updates/ppa
# press ENTER when prompted

sudo apt-get update
# wait for the “$” prompt to reappear

That’s it, now Linux Mint will keep all your Ham Apps up to date automatically. You can refresh updates, and all the latest updates will be installed.

sudo add-apt-repository ppa:kamalmostafa/hamlib
# press ENTER when prompted

sudo apt-get update
# wait for the “$” prompt to reappear


Now for WSJTX: The version in the software center is way out of date, so you will want to add the PPA for this as well, If you already installed, no worry, this will update that version. Open termial, copy and paste: again one line at a time and hit enter, follow prompts.

sudo add-apt-repository ppa:ki7mt/wsjtx

sudo apt-get update

sudo apt-get install wsjtx

Now you will want to install the Encoder:

sudo add-apt-repository ppa:ki7mt/kvasd-installer

sudo apt-get update

sudo apt-get install kvasd-installer

– Open A terminal and type: kvasd-installer
– Then, select Install decoder from the menu.

If you have difficulty with WJSTx, as far as selecting the sound card, you will need to install this as well. Open Terminal:

sudo apt-get install libqt5multimediawidgets5 libqt5multimedia5-plugins

Note copied from K8WDX blog: Then set it up, and you should be good to go. more info on future releases can be found here: https://launchpad.net/~ki7mt I strongly suggest going to this site and reading through it, there are a couple of things to do to get the latest updates as well and info about the future of WJSTX. I just like to wait until the versions are out of the development stage before I take the plunge.

Third Step – if you haven’t already done so, let’s install the latest CQRLOG package:

A *very* good installation can be had with a single command in terminal mode:

sudo add-apt-repository ppa:ok2cqr/ppa;sudo apt-get update;sudo apt-get install cqrlog

That command, (described here for version 2.0.1-1), will first, add the ppa repository to your linux system’s list of authorized spots to check for updates, then update the system list itself, and finally install the latest version found in that repository.

OK, you can finally close terminal – open Update Manager, click on Refresh, then install any new packages it found. Because you added the PPAs above, Update Manager will check and install updates to your Ham programs.

Its finally time to run CQRLOG!  (You will find it in your menu system, I recommend right-clicking on that menu item and pinning it to your panel).  When the program opens you will see the “Database Connection” window, which contains a default log file #1 entry.  Highlight that and click “Open”.  The system “should” ask you to agree to download/install a couple of necessary databases – click Yes for each of them.  (It will check for updates each time you open the program).  The Database Connection window will close and the “New QSO” window will open.

Configuring CQRLOG

In New QSO click on File | Preferences which will open the Preferences window to start your configuration of CQRLOG.  Down the left side of Preferences is a vertical column of tabs which lead to pages of settings.  I won’t cover all of them but here are my current recommendations for some of the more important stuff – you will have to play with them to suit your own desires – but pay particular attention to the TRX control stuff below:

Program tab:

  • Select “Show statistics in” MHz if it isn’t already checked
  • Select “Check for newer version of dxcc tables after program startup”
  • Select “Check for newer version of qsl managers database after program startup”
  • Select “Show distance in miles”
  • Select “get UTC time from computer time
  • Set “Grayline” to -1.25 (this setting worked for me on 05/24/2016)

Station tab:

  • Set “Call” to your FCC approved Call Sign
  • Set “Name” normally use your first name but…
  • Set “QTH” to your home area, (i.e. San Diego County, CA)
  • Set “Loc” to your Grid Square Locator (Hint – go here and type in your zip code if unsure) – This is a critical entry for the system to work correctly, make certain you have it right.

New QSO tab: (These are in addition to the defaults – some may now be new defaults in the latest version)

  • For now, I left the “Default values” at the top alone, including “Comment for QSO”
  • Also left “Enable auto mark QSO QSL_S field” as marked but with no value
  • Set “Use spacebar to move between fields”
  • Set “Skip over mode and frequency when radio is connected”
  • Set “Enable autosearch on HamQTH.com/QRZ.com”
  • Set “If ‘QSL via’ field contains other than a call sign, move to ‘Comment to QSO’ field”
  • Set “Show recent QSO records for last” to 7 days (rather than 5)
  • Set “In previous QSO list show QSO with call/p, call/m, W6/call etc.”
  • Set “Always overwrite info from previous QSO with callbook data”
  • Set “Always overwrite only CQ, ITU zones, County and US state”
  • Set “Capitalise first letter in QTH field (yeah I know how to spell capitalize, but they are from Europe).

Visible Columns tab:

  • Set “Date”
  • Set “Time on”
  • Set “CallSign” and “IOTA”
  • Set “Mode”
  • Set “Freq” and “QSL sent date”
  • Set “RST sent”
  • Set “RST Received” and DXCC
  • Set “Name” and “Comment to QSO”
  • Set “QTH” and “WAZ”
  • Set “QSL sent”
  • Set “QSL received”, “State”, and “Received QSL, LoTW, eQSL”
  • Set “Country Name”

Bands tab:

  • Set each band you plan to use your rig on

TRX control tab:  (many of these will now be default settings)

  • Set “Path to rigctl binary” to /usr/bin/rigctld
  • Set “Radio one Desc.” to IC-706MkIIG
  • Set “Host” to localhost
  • Set “Rig Model” to 311 Icom IC-706MkIIG (using the drop-down menu)
  • Set “Device” to /dev/ttyUSB0 (that last character is a zero – need to verify yours may be 1, 2, 3, etc.)
  • Set “Poll Rate” to 500
  • Set “Port Number” to 4532
  • Click to “X” Run rigctld when program starts
  • For now, leave the rest at their default settings

You should not need any additional arguments added for rigctld. CQRLOG will start it with the rig model number – it looks like “rigctld -m 311”, (mine is -m 313 for my IC-718), and that automatically sets it up for that specific radio, ready to communicate with CQRLOG via the Hamlib library, in other words “pure magic”. 🙂

ROT control tab:

  • ***To be determined at a later date – I do not currently own a rotor nor directional antenna

Modes tab:

  • You *must* set all modes to a value of Zero for your Icom radio.
  • I would have left the defaults for a rig other than Icom – (note on Icom radios for rig control the CQRLOG FAQ says to set them all to zero – I have confirmed my IC-718 will not accept Bandwidth changes via CAT cable)


QTH profiles tab:

  • ***To be determined at a later date

Export tab:

  • I set each and every item on this page – if I am “exporting” my log, I want *everything*.

DXCluster tab:

  • Colors are purely a personal decision – the darker colors generally work better for my eyes, but I wound up selecting Red, Lime, Blue and Navy respectively
  • Set “Show only spots” to those freqs/bands you are interested in – mine currently spans from 1.8 MHz to 28 MHz
  • Set “Show country name in the DX cluster spot”
  • Set “Connect to DX cluster after program startup”

Fonts tab:

  • I left this at defaults, (for now)

WAZ, ITU zones tab:

  • Colors are purely a personal decision – I am currently using Red, Red, Blue, Blue, and Fuchsia, Fuchsia
  • Set “Show info” for both WAZ and ITU

IOTA tab:

  • I chose to set “New IOTA” to Red and QSL needed for IOTA to Blue
  • Set “Show info”

Membership tab:

  • ***I haven’t set this up yet – not currently a member of anything associated with this

Bandmap Tab:

  • Set “Use the same color as the spot
  • Set “Ignore DX spots with freq equals to the start of the band (21.000, 14.000 etc., usually notes)”
  • ***I will need to revisit this one later on

xplanet support tab:

  • Set “Path for the xplanet” to /usr/bin/xplanet
  • I set “‘Window size” to 340 x 340 for now, will revisit later
  • Set “Show stations from” bandmap
  • Set “Projection” to azimuthal without background
  • Set “Use this xplanet font color” my selection was “White” by default, works well.

Zip code tracking tab:

  • ***I left at default settings for now

LoTW/eQSL support tab:

  • To use this tab, you will need an account with LoTW, (gained through TrustedQSL program), and register for an account on the eQSL web site.  I have done so, but with LoTW – now waiting on a snail-mail card from ARRL telling me how to proceed.  Note that part of this is to have a digital “certificate” file on your system to prove its actually “you” and your system doing the uploads to LoTW
  • Set “Include LoTW and eQSL confirmed countries in DXCC statistic”
  • Set “Use LoTW and eQSL confirmed countries for New country or New band etc. info”
  • Set “Show info in New QSO window if station uses LoTW/eQSL
  • Set “Use this color as a background in DX cluster and band map for stations using LoTW” (I chose Money Green)
  • Set “Use this color as a background in DX cluster and band map for stations using eQSL” (I chose Sky Blue)
  • Set “Upload to eQSL also data in COMMENT field”

CW interface tab:

  • ***Left at defaults until I discuss this with a very experienced Elmer

fldigi/wsjt interface tab:

  • ***Left at defaults until I have time to research this one

Auto backup tab:  I consider this one to be IMPORTANT!

  • Set “Enable autobackup after program ends
  • Set “Save backup to:” using the browse button – mine worked out to be /home/dave/.config/cqrlog/database/
  • Set “Backup file” by selecting “callsign, date and time (yourcall_yyyy-mm-dd_hh-mm-ss.adi)
  • Set “Compress backup with tar.gz

External viewers tab:

  • I left this one at defaults, it will probably stay that way for now

Callbook support tab:

  • Set Callbook search to either your HamQTH account or QRZ account.  Ham QTH is free – there is a minimal annual fee for QRZ – I elected to go with HamQTH for now – entering my User name and Password for that account in this tab

RBN support tab:

  • Left “Server:” at the default telnet address and port – telnet.reversebeacon.net:7000 – for now, (but know my friend will want to change it to his favorite)
  • Set “Login:” to your own callsign
  • For now, I also set “Watch for:” to my own callsign
  • Colors being subjective, I am using White, Purple, Maroon and Red in that order from the top down, (pretty sure these are now default colors)
  • Set “Delete old information after” 180 seconds, (I’m getting older, the default 60 seconds was too fast)

Online log upload tab:

  • Set “Enable upload to HamQTH” (if you have an account there)
  • Set in your Username and Password for HamQTH
  • I elected to “Set this” Blue “color to show information in status upload windowI left Clublog blank – not a member
  • Set “Use this” Red “color to show information in status upload window” in case I use Clublog in future
  • Left HRDLog.net entries blank
  • Set “Use this” Purple “color to show information in status upload window” in case I use HRDLog in future

Propagation tab:

  • Set “Show propagation as image
  • I was not happy with the tiny default display, so changed “Download data from:” to http://www.hamqsl.com/solar101pic.php
  • Set “Show A, K, SSN, FOF2 etc.”
  • Set “Show calculated prediction for HF bands”
  • Set “Show calculated prediction for VHF bands if you are interested

It should be as easy as that to get this going.

I spent over a week, troubleshooting a situation where some other (unknown) process, unrelated to CQRLOG, was periodically interfering with comms on device ttyUSB0, so I simply did a completely fresh install of Linux Mint 17.3 Cinnamon, then ran through the procedures above. CQRLOG has been running quite well and controlling our IC-718 rig very happily ever since. On a relatively “clean” Linux Mint installation, it should go well indeed – and you should be able to simply cut commands out of this document and past them into your linux terminal session to make it go *very* rapidly.

Its pretty easy to feel the installation for the Icom IC-706MkIIG should go a lot easier with the above procedure! 🙂

When I re-edit this post next time, will try to include the IC-706MkIIG specific settings that have to be made at the rig itself.



Ham Radio Control Libraries

USB Serial Converter support

Linux Ham apps, install | K8WDX

CQRLOG configure <–YouTube video on a previous version of CQRLOG also by K8WDX

This entry was posted by dave on Friday, May 27th, 2016 at 11:27 pm and is filed under Amateur Radio, Ham on Linux . You can follow any responses to this entry through the RSS 2.0 feed. Both comments and pings are currently closed.

Comments are closed.