rigctld usage

2 posts / 0 new
Last post
rigctld usage

Once you have cqrlog installed and running ok with rigctld started by cqrlog, or started manually before cqrlog (you can even start it at boot time from rc.local) you can use several programs accessing rig at same time.

You just have to use "-m 2" (rig model 2, NET rigctld) for all other programs. Then they can access your rig and run at same time.

Do not try to set up other programs to use same serial device as cqrlog's rigctld does. If you want run just other program without cqrlog consider to start rigctld at boot time (from rc.local) and leave cqrlog/preferences/TRXcontorl/"Run rigctld when program starts" unchecked so you can randomly have any (or all) program(s) running at same time.

Some settings for other programs:
WSJT-X : Rig "Hamlib NET rigctl, Network server: localhost:4532 (other settings depends what your rig supports)
GRIG : grig -m 2 -r
FLDIGI: Rig/Hamlib: Rig:"Hamlib NET rigctl (Beta), Device, Retries:5 Retry interval:500:Write delay:5 Post twrite delay:5 (other settings what your rig supports).

You can also access rig with telnet:
telnet localhost 4532 (after connection support rigctld manual for commands)

Or you can access rig with bash scripts like voice_keyer.sh's PTT does (that script comes with cqrlog):

Accessing via script requires command nc (netcat). If you do not have nc you must install: sudo apt-get netcat-openbsd
to get it working.

This is an example script that scans FT8 frequencies on HF bands. If you leave cqrlog, wsjt-x and this script running while doing something else you can check afterwards from https://pskreporter.info/pskmap.html what stations you have heard.
Of course they all are recorded also to wsjt-x's ALL.TXT-file at ~/.local/share/WSJT-X/ALL.TXT
(in case you do not have internet connection at ham shack)

echo "Setting mode USB"
echo -n "M USB 0 ";echo "M USB 0" | nc localhost 4532
echo "(To stop loop press CTRL+C)"

for (( ; ; ))
do #infinite loop

while true;
do #wait for FT8 transmit period change
sec=$(date +%S)
case $sec in
00) break;;
15) break;;
30) break;;
45) break;;
printf "Next Qrg#: $qrg $sec\r"
sleep 1
done #wait for FT8 transmit period change

case $(($qrg)) in
10) echo -n "F 1840000 ";echo "F 1840000" | nc localhost 4532;((qrg--)); ;;
9) echo -n "F 3573000 ";echo "F 3573000" | nc localhost 4532;((qrg--)); ;;
8) echo -n "F 5357000 ";echo "F 5357000" | nc localhost 4532;((qrg--)); ;;
7) echo -n "F 7074000 ";echo "F 7074000" | nc localhost 4532;((qrg--)); ;;
6) echo -n "F 10136000 ";echo "F 10136000" | nc localhost 4532;((qrg--)); ;;
5) echo -n "F 14074000 ";echo "F 14074000" | nc localhost 4532;((qrg--)); ;;
4) echo -n "F 18100000 ";echo "F 18100000" | nc localhost 4532;((qrg--)); ;;
3) echo -n "F 21074000 ";echo "F 21074000" | nc localhost 4532;((qrg--)); ;;
2) echo -n "F 24915000 ";echo "F 24915000" | nc localhost 4532;((qrg--)); ;;
1) echo -n "F 28074000 ";echo "F 28074000" | nc localhost 4532;((qrg=10)); ;;
sleep 1
done #infinite loop


Once you have saved it use:
chmod a+x freqstep.sh
To give everyone permission to run script.
Start from console with ./freqstep.sh


rigctld usage

HI !

I have made short video about rigctld setup.

Now I have tested with little different way to run rigctld that I say in my video. It seems to work ok for so far.
I made a pdf document about that setup.

Both files, as also other cqrlog related stuff, are in my google drive folder: https://drive.google.com/open?id=1UNrLj8pP8ejjYncBmSRuIoydkBIbnJw8

video : https://drive.google.com/open?id=1ZB1croPCZjquhkCpInub9PhT8xOAtxqS
pdf : https://drive.google.com/open?id=1P9u9BxM9Ujtt7nz6Ir0n-RE-k4mGjYkl