CW with IC-7300

24 posts / 0 new
Last post
zp4kfx
CW with IC-7300

Hi,
The IC-7300 and similar new radios can transmit CW just sending to them ASCII characters via the
USB connection.

I made a simple program in GAMBAS3 for transmitting CW in this way, without needing cwdaemon.

If interested you developers might add this way of sending CW in CQRLog.

The source package is at:

https://cloud5.tcpsas.com/index.php/s/PxIT0kU9KABd9C8

Best 73
Pino ZP4KFX

oh1kh
CW with IC-7300

Hi!

Just set: preferences/CW interface/interfaces type: Hamlib
Then close preferences with OK
Next use: NewQSo/File/Reload CW interface

And the your 7300 send cw from cqrlog macros and NewQSO/Window/CQ type (use "word mode" there).
Thats all.
Connect your paddle to 7300 rear 6.3mm plug and you have manual keying.
When you change speed at cqrlog it changes in rig.

--
Saku
OH1KH

zp4kfx
CW with IC-7300

TU for answer ...it works here ... I notice that only = (BT) is implemented....
it would be nice to have also:
* AR
< SK
( KN
! SN
& AS
> BK

best 73
Pino ZP4KFX

oh1kh
CW with IC-7300

Hi !
Next version, or if you compile from Petr's GitHub source it is included, Also my test binary have this.

Versions (001) and (002) should be able to implement those in CW macros already, but not in CW type.

For sending SK from macro text write ^SK. For IC7300 the "hat" (^) char joins next 2 characters together. This is passed in macros, but as said 2.3.0(001) and (002) filters the "hat" away in CW type.

--
Saku
OH1KH

NK8O
CQRlog macors

Is it possible to pass rig control macros through CQRlog? There are boatloads of control macros for the KX2/KX3/K3, including changing power levels and/or powering down the radio. Maybe the facility is there and I have missed it, but it was nice to be able to send the command PS0; #PS0; and shut down my entire station all at once, or to chose the power level, PO5; PO10; etc. Certainly not a deal breaker but something that was included in my Mac logging program (RUMlogNG). I am moving away from the Mac to Linux because i suspect there will be a huge OS shakeup in the near future.

73,

Charles - NK8O/VE3ISD/5H3DX

Charles
NK8O
VE3ISD

oh1kh
CQRlog macors

HI Charles!

There is PWR On/OFF/StBy button set in TRXcontrol. (TRXControl/Preferences/show power buttons)
It uses standard rigctld commands so it should work, try it.

Also there are start.sh and stop.sh scripts (in ~./config/cqrlog) that cqrlog seeks and executes (if found) at program start and stop. With them and net cat (nc, sometimes called ncat) you can make scrpts that send rigctld commands to rig.
Rigctld has also "raw" command for cases that certain function is not supported by rigctld native command set. With that you can send any command that rig supports.

Unfortunately there are no user defined buttons for rig control macros. Maybe adding a set of 3 below power buttons to TRXcontrol would be a good idea.
Have to keep it in mind for dark, cold winter days.

--
Saku
OH1KH

NK8O
CQRlog macros

Well the power buttons work like a charm to turn off the radio, but not the PX3 panadapter. There is no way to turn on the KX3 remotely but it should work on a K3(S). Still, it's one more bit of control I have from the computer. Now that I have solved the USB-C hotplug issues, this is turning out to be exactly what I had hoped it would. Now if I can solve the problem of compiling TQSL for Xubuntu 20.04, I can transfer everything to CQRlog and leave OS X behind.

Charles
NK8O
VE3ISD

iu1hcc
IC-7300

Hello Saku, just for remember...
I use the 7300 on CW and, for switch from Paddle to Straight key we must do about 8-9 steps on menu.
Please add more than 3 buttons with user define cat commands macros...they are very useful

"Unfortunately there are no user defined buttons for rig control macros. Maybe adding a set of 3 below power buttons to TRXcontrol would be a good idea.
Have to keep it in mind for dark, cold winter days."

Thank you
73 de IU1HCC

oh1kh
IC-7300

HI!

More than 3 buttons is quite a lot. I made a test version with 3 user buttons above Power buttons. They can hide as everyone do not need them and then thy are taking just more space.

The testing phase is still on and I need to think should they be just for rigctld commands, or should there be a change to activate a script. Scripting with netcat can do as many rigctld commands (or what ever commands) that is needed. Script can have also feedback from rig.

Those buttons, when used only for predefined rigctld commands, can not receive any feedback from rig. So only one direction commands (to rig) is possible.

--
Saku
OH1KH

iu1hcc
IC-7300

Thank you and for sure you will do the best.
have a nice day

73 de IU1HCC

oh1kh
IC-7300

Hi!
You can now test it by making compile from official source https://github.com/ok2cqr/cqrlog
or try my test binaries https://github.com/OH1KH/cqrlog/tree/loc_testing/compiled

--
Saku
OH1KH

iu1hcc
Hi Saku

Hi Saku
Thank you, i will try it.
Have a nice day

73 de IU1HCC

iu1hcc
IC-7300

Hi Saku
Good news...it is working very well...and i will continue to use this update.
Following your instructions from test binaries , "manual install", the update (cqr3.zip) was an easy job...
The "user buttons" , following your new help file, i now used to change my S-Key and Paddle.
Straight key w /0xFE/0xFE/0x94/0xE0/0x1A/0x05/0x01/0x64/0x00/0xFD
Paddle w /0xFE/0xFE/0x94/0xE0/0x1A/0x05/0x01/0x64/0x02/0xFD

Thank you and have a nice weekend
Best 73 de IU1HCC

oh1kh
IC-7300 keying

HI !

I used your hex commands for script that does the switch. Now I spend only one user defined button for that because script is flip-flop.

At TRXControl setting I define one usr key:

S/P run /home/saku/.config/cqrlog/voice_keyer/swkeying.sh

And the /home/saku/.config/cqrlog/voice_keyer/swkeying.sh script goes like:
------------------------------------
#!/bin/bash
#
#Switch between straight key and keyer IC7300
#linux netcat (nc) progam must be installed for communication to rigctld via TCP/IP
#echo -n -e [rigctld command] | nc localhost 4532
#
#Script does not use return value
#Command sent via netcat and rigctld
#
#
if [ -e /home/saku/.config/cqrlog/voice_keyer/straight.key ]
then
#Paddle
echo -n -e 'w \\0xFE\\0xFE\\0x94\\0xE0\\0x1A\\0x05\\0x01\\0x64\\0x02\\0xFD' | nc localhost 4532
rm /home/saku/.config/cqrlog/voice_keyer/straight.key
notify-send 'CW keying via paddle'
else
#Straight key
echo -n -e 'w \\0xFE\\0xFE\\0x94\\0xE0\\0x1A\\0x05\\0x01\\0x64\\0x00\\0xFD' | nc localhost 4532
touch /home/saku/.config/cqrlog/voice_keyer/straight.key
notify-send 'CW keying via straight key'
fi
-------------------------------------------

--
Saku
OH1KH

iu1hcc
IC 7300 S/P

Hi Saku
that is awesome...
i have some problems, i use nano to create /home/billas/.config/cqrlog/voice_keyer/swkeying.sh file, copy/paste your command lines,replace saku username with my username... checking Synaptic Package for netcat, there is installed netcat-openbsd...in Preference there is localhost 4532..reboot computer,RTX control ok..all seems ok, but no changing from SK to Keyer...it is my first time using an script...
any help appreciated , thank you

oh1kh
IC 7300 S/P

HI!

Of course you have to change user name in path!
Test the netcat, it may be called "ncat" or "nc" in your system, using command console.
Start cqrlog and open command console. Give command:

echo -n -e 'f' | nc localhost 4532

Change "nc" to "ncat" if you have error. You should get rig's frequency as return.

When that works check the script. See that there are double "\\" in every place of hex string. Ensure that you have set execute rights to script. Give:

chmod a+x /home/billas/.config/cqrlog/voice_keyer/swkeying.sh

Test it entering the whole path and filename to command console. Cqrlog should be running.
Once it works from console then check TRXControl setting. There must be "run " (without quotes) as first word and after that /home/billas/.config/cqrlog/voice_keyer/swkeying.sh in definition.

--
Saku
OH1KH

iu1hcc
IC 7300 S/P

Hi
still some problems...
so...netcat is ok, "nc" in my system
echo -n -e 'f' | nc localhost 4532 command give the freq in terminal...ok.
give chmod a+x /home/billas/.config/cqrlog/voice_keyer/swkeying.sh...ok

Test /home/billas/.config/cqrlog/voice_keyer/swkeying.sh to command console with no results...

But...if i give the command in terminal echo -n -e 'w \\0xFE\\0xFE\\0x94\\0xE0\\0x1A\\0x05\\0x01\\0x64\\0x02\\0xFD' | nc localhost 4532 is working ,ONLY after i close the terminal command.

from the user define button S/P run /home/billas/.config/cqrlog/voice_keyer/swkeying.sh no results...sometime after the "refresh TRX-ROT control" notify display it show, but without changing Straight to Paddles key .

I have trying also to create the script in /cqrlog directory...but the same no success...

Thank you

oh1kh
IC 7300 S/P

Hi !

I have been thinking this over night. I can not understand why you get frequency from command line but the "w" command does not work or the script run ok.

Do you have line:
#!/bin/bash
as first line in script file? It is important.

You can also try the terminal command as:
bash -cv echo -n -e 'w \\0xFE\\0xFE\\0x94\\0xE0\\0x1A\\0x05\\0x01\\0x64\\0x02\\0xFD' | nc localhost 4532

and TRXControl definition as:
run bash -c /home/billas/.config/cqrlog/voice_keyer/swkeying.sh

But "bash -c" should not be needed if first line of script is "#!/bin/bash"
parameter "-cv" with bash should be verbose and might show error beihind the command execution.

If you have poll value under 1000 at TRXControl set it to 1500. How ever this should not be problem with Icoms as the CAT speed is 19200bps or more.

--
Saku
OH1KH

iu1hcc
IC 7300 S/P

Hi Saku
thank you for fast reply
yes, the script is like you wrote it...nothing missing...

after searching and reading on internet about the "rigctld" and "netcat" commands, being my first time using an script, i have change a little bit on command line "echo -n -e 'w \\0xFE\\0xFE\\0x94\\0xE0\\0x1A\\0x05\\0x01\\0x64\\0x02\\0xFD' | nc localhost 4532"

now is "echo -n -e 'w \\0xFE\\0xFE\\0x94\\0xE0\\0x1A\\0x05\\0x01\\0x64\\0x02\\0xFD' | nc -w 1 localhost 4532" ..."timeout -w 1" ....and now is up and running ok. test ok with poll value 500.

i will try to make another script to change "power 10W" for antenna tuning, to "power 50W" to see how is working.

Thank you again Saku
Best 73 de IU1HCC Raz

oh1kh
IC 7300 S/P

OK Raz!

It might be that there is difference in "nc" between my Fedora32 and your linux and so you need to specify timeout.

Very good note and perhaps helps someone other too. -w 1 does not make any harm with nc command.

Have you tested "echo -n -e 'w" and "echo -n -e 'W" (caps W)? The -"w" and "-W" is not explained in "man rigctld", but in "man rigctl" they exist.

--
Saku
OH1KH

oh1kh
IC-7300 key for 60m band

And here is TRXControl command to define 60m usr button for CW with legal power limit (here 15W):

60m F 5353000 M CW 500 w \0xFE\0xFE\0xFE\0x94\0xE0\0x14\0x0A\0x00\0x43\0xFD

--
Saku
OH1KH

iu1hcc
IC-7300 rf-power

Hi Saku
on "rigctld" i found only the "w" command...i didn't try W...

Base on your script for straight key - paddle i change the hex commands for switch from 10% to 50% RF-power, witch is very handy for antenna tuner...

Later i will like to add more ex...10% - 30% - 50% - 100%...do you thing is possible on the same button?

here is the script

---------------------------------------
#!/bin/bash
#
#Switch between straight key and keyer IC7300
#linux netcat (nc) progam must be installed for communication to rigctld via TCP/IP
#echo -n -e [rigctld command] | nc localhost 4532
#
#Script does not use return value
#Command sent via netcat and rigctld
#
#
if [ -e /home/billas/.config/cqrlog/voice_keyer/10%.pwr ]
then
#50%
echo -n -e 'w \\0xFE\\0xFE\\0x94\\0xE0\\0x14\\0x0A\\0x01\\0x25\\0xFD' | nc -w 1 localhost 4532
rm /home/billas/.config/cqrlog/voice_keyer/10%.pwr
notify-send '50% RF-POWER'
else
#10%
echo -n -e 'w \\0xFE\\0xFE\\0x94\\0xE0\\0x14\\0x0A\\0x00\\0x30\\0xFD' | nc -w 1 localhost 4532
touch /home/billas/.config/cqrlog/voice_keyer/10%.pwr
notify-send '10% RF-POWER'
fi
--------------------------------

Thank you
73 de IU1HCC Raz

oh1kh
IC-7300 rf-power

HI Raz!

Change your script so that you save the level of power to file (rename 10%.pwr to something like used.pwr).
if file do not exist set power to 10% then echo "10" > used.pwr
if file exists read contents and add fixed amount (makes easier to add always same %) set it as pwr and save to used.pwr
If adding results over 100% make it back as 10% before setting and save

That way you have circulating script 10%-X-X-100%-10%-X etc.

Actually there is no idea to save %. Save directly value from 0 to 255 and then convert it to two bytes to push to rig. Conversion is just cutting the 100's part to different byte than 10's part

--
Saku
OH1KH

iu1hcc
IC-7300 rf-power

sorry

#Switch between straight key and keyer IC7300
must be
#Switch between 10% - 50% rf-power IC7300