Announcement: wfview v2.03 released

We are pleased to announce the release of wfview v2.03

This release fixes a number of issues identified in v2.00/v2.01 and also introduces some new features.

Download as always from Download | wfview

Main fixes in this release

  • Many improvements to rigctld (please feedback your experience)
  • RTS based PTT support should now work. You must use the same version of wfview and wfserver.
  • CW Sender should now work properly
  • ATU, Preamp and CW fixed for IC-7100
  • Controls now deleted/disabled when not connected to a radio
  • Better handling of VFOA/B and Main/Sub for supported radios
  • Sample rate/Codec and Latency settings should be populated on initial startup
  • Virtual Serial Port now works correctly in all supported operating systems.
  • IC-9700 REF Level is now handled correctly
  • Various other stability fixes and updated all dependent libraries

New features in v2.03

  • Radios with VFOA/B now have various controls for VFO operation on scope/receiver window

  • Radios with Main/Sub also have similar controls within the main window

  • Ability to configure button on/off colours for “toggle” buttons within settings
    image

  • Add ability to PTT via DTR as well as RTS. This is selected via the radio settings

  • Custom rig files now must be the same or newer version as system provided rig files, otherwise they will not be loaded

  • The ability to operate in Split mode with ricgtl connected software like wsjt-x. This is not 100% but I am not sure how many issues are caused by other software

  • Added RF Power and SWR reporting to rigctl

3 Likes

Quick question: when I manually enter on a raspberry (IC7300 connected via USB)
rigctl -r localhost:4533 -m 2 f
if the “main” VFO is VFOA, it reads back the current qrg of VFOA. However it quickly switches VFOA<>VFOB twice.
if the “main” VFO is VFOB, it reads back the current qrg of VFOB. However it quickly switches VFOA<>VFOB once, so that after the command, the radio is on VFOA.

I assume, that is not intended.

More infos:
Main VFO is VFOA
rigctl -r localhost:4533 -m 2 v → Answer is “none”, toggles VFOs, Main is still VFOA
Main VFO is VFOB
rigctl -r localhost:4533 -m 2 v → Answer is “none”, but toggle VFOs that Main is VFOA
Main VFO is VFOA
rigctl -r localhost:4533 -m 2 V VFOA f → Answer is qrg from VFOA, toggles VFOs, Main is still VFOA
rigctl -r localhost:4533 -m 2 V VFOB f → Answer is qrg from VFOA (not expected), toggles VFOs, Main is VFOB (expected)

Thomas, DL3EL

That’s because rigctl doesn’t just send the command you selected, it initialises the connection and selects each VFO in turn.

If you don’t want this behaviour, make a direct connection using telnet or some other command.

Having said that, it’s entirely possible there are still some errors in the implementation :slight_smile:

Here is my log from running rigctl.exe -m 2 -r 127.0.0.1:4533 f

2025-01-03 23:30:29.537 DBG rigctld: 7216 RX: "\\get_powerstat"
2025-01-03 23:30:29.537 DBG rigctld: 7216 TX: "1"
2025-01-03 23:30:29.537 DBG rigctld: 7216 TX: "\n"
2025-01-03 23:30:29.538 DBG rigctld: 7216 RX: "\\chk_vfo"
2025-01-03 23:30:29.538 DBG rigctld: 7216 TX: "CHKVFO 1"
2025-01-03 23:30:29.538 DBG rigctld: 7216 TX: "\n"
2025-01-03 23:30:29.538 DBG rigctld: 7216 RX: "\\dump_state"
2025-01-03 23:30:29.539 DBG rigctld: 7216 TX: "1\n"
2025-01-03 23:30:29.539 DBG rigctld: 7216 TX: "3073\n"
2025-01-03 23:30:29.539 DBG rigctld: 7216 TX: "0\n"
2025-01-03 23:30:29.539 DBG rigctld: 7216 TX: "30000.000000 74800000.000000 0x3f -1 -1 0x10000003 0x0\n"
2025-01-03 23:30:29.539 DBG rigctld: 7216 TX: "0 0 0 0 0 0 0\n"
2025-01-03 23:30:29.539 DBG rigctld: 7216 TX: "70000000.000000 70500000.000000 0x3f 2000 100000 0x16000000 0x0\n"
2025-01-03 23:30:29.539 DBG rigctld: 7216 TX: "50000000.000000 54000000.000000 0x3f 2000 100000 0x16000000 0x0\n"
2025-01-03 23:30:29.539 DBG rigctld: 7216 TX: "28000000.000000 29700000.000000 0x3f 2000 100000 0x16000000 0x0\n"
2025-01-03 23:30:29.539 DBG rigctld: 7216 TX: "24890000.000000 24990000.000000 0x3f 2000 100000 0x16000000 0x0\n"
2025-01-03 23:30:29.539 DBG rigctld: 7216 TX: "21000000.000000 21450000.000000 0x3f 2000 100000 0x16000000 0x0\n"
2025-01-03 23:30:29.540 DBG rigctld: 7216 TX: "18068000.000000 18168000.000000 0x3f 2000 100000 0x16000000 0x0\n"
2025-01-03 23:30:29.540 DBG rigctld: 7216 TX: "14000000.000000 14350000.000000 0x3f 2000 100000 0x16000000 0x0\n"
2025-01-03 23:30:29.540 DBG rigctld: 7216 TX: "10100000.000000 10150000.000000 0x3f 2000 100000 0x16000000 0x0\n"
2025-01-03 23:30:29.540 DBG rigctld: 7216 TX: "7000000.000000 7300000.000000 0x3f 2000 100000 0x16000000 0x0\n"
2025-01-03 23:30:29.540 DBG rigctld: 7216 TX: "7000000.000000 7200000.000000 0x3f 2000 100000 0x16000000 0x0\n"
2025-01-03 23:30:29.540 DBG rigctld: 7216 TX: "7000000.000000 7200000.000000 0x3f 2000 100000 0x16000000 0x0\n"
2025-01-03 23:30:29.540 DBG rigctld: 7216 TX: "5250000.000000 5450000.000000 0x3f 2000 100000 0x16000000 0x0\n"
2025-01-03 23:30:29.540 DBG rigctld: 7216 TX: "3500000.000000 4000000.000000 0x3f 2000 100000 0x16000000 0x0\n"
2025-01-03 23:30:29.540 DBG rigctld: 7216 TX: "3500000.000000 3900000.000000 0x3f 2000 100000 0x16000000 0x0\n"
2025-01-03 23:30:29.540 DBG rigctld: 7216 TX: "3500000.000000 3800000.000000 0x3f 2000 100000 0x16000000 0x0\n"
2025-01-03 23:30:29.540 DBG rigctld: 7216 TX: "1800000.000000 2000000.000000 0x3f 2000 100000 0x16000000 0x0\n"
2025-01-03 23:30:29.540 DBG rigctld: 7216 TX: "493000.000000 595000.000000 0x3f 2000 100000 0x16000000 0x0\n"
2025-01-03 23:30:29.540 DBG rigctld: 7216 TX: "135000.000000 138000.000000 0x3f 2000 100000 0x16000000 0x0\n"
2025-01-03 23:30:29.540 DBG rigctld: 7216 TX: "30000.000000 74800000.000000 0x3f 2000 100000 0x16000000 0x0\n"
2025-01-03 23:30:29.540 DBG rigctld: 7216 TX: "0 0 0 0 0 0 0\n"
2025-01-03 23:30:29.540 DBG rigctld: 7216 TX: "0x3f 100\n"
2025-01-03 23:30:29.541 DBG rigctld: 7216 TX: "0x3f 1000\n"
2025-01-03 23:30:29.541 DBG rigctld: 7216 TX: "0x3f 5000\n"
2025-01-03 23:30:29.541 DBG rigctld: 7216 TX: "0x3f 9000\n"
2025-01-03 23:30:29.541 DBG rigctld: 7216 TX: "0x3f 10000\n"
2025-01-03 23:30:29.541 DBG rigctld: 7216 TX: "0x3f 12500\n"
2025-01-03 23:30:29.541 DBG rigctld: 7216 TX: "0x3f 20000\n"
2025-01-03 23:30:29.541 DBG rigctld: 7216 TX: "0x3f 25000\n"
2025-01-03 23:30:29.541 DBG rigctld: 7216 TX: "0 0\n"
2025-01-03 23:30:29.541 DBG rigctld: 7216 TX: "0x1 9000\n"
2025-01-03 23:30:29.541 DBG rigctld: 7216 TX: "0x1 6000\n"
2025-01-03 23:30:29.541 DBG rigctld: 7216 TX: "0x1 3000\n"
2025-01-03 23:30:29.541 DBG rigctld: 7216 TX: "0x2 1200\n"
2025-01-03 23:30:29.541 DBG rigctld: 7216 TX: "0x2 500\n"
2025-01-03 23:30:29.541 DBG rigctld: 7216 TX: "0x2 200\n"
2025-01-03 23:30:29.541 DBG rigctld: 7216 TX: "0x20 15000\n"
2025-01-03 23:30:29.541 DBG rigctld: 7216 TX: "0x20 10000\n"
2025-01-03 23:30:29.541 DBG rigctld: 7216 TX: "0x20 7000\n"
2025-01-03 23:30:29.542 DBG rigctld: 7216 TX: "0x10 2400\n"
2025-01-03 23:30:29.542 DBG rigctld: 7216 TX: "0x10 500\n"
2025-01-03 23:30:29.542 DBG rigctld: 7216 TX: "0x10 250\n"
2025-01-03 23:30:29.542 DBG rigctld: 7216 TX: "0 0\n"
2025-01-03 23:30:29.542 DBG rigctld: 7216 TX: "9900\n"
2025-01-03 23:30:29.542 DBG rigctld: 7216 TX: "9900\n"
2025-01-03 23:30:29.542 DBG rigctld: 7216 TX: "10000\n"
2025-01-03 23:30:29.542 DBG rigctld: 7216 TX: "0\n"
2025-01-03 23:30:29.542 DBG rigctld: 7216 TX: " 10 20\n"
2025-01-03 23:30:29.542 DBG rigctld: 7216 TX: " 20\n"
2025-01-03 23:30:29.542 DBG rigctld: 7216 TX: "0x00000001241013de\n"
2025-01-03 23:30:29.542 DBG rigctld: 7216 TX: "0x00000001241013de\n"
2025-01-03 23:30:29.542 DBG rigctld: 7216 TX: "0x0000000bfa657f3b\n"
2025-01-03 23:30:29.542 DBG rigctld: 7216 TX: "0x0000000bfa657f3b\n"
2025-01-03 23:30:29.542 DBG rigctld: 7216 TX: "0x0000000000000000\n"
2025-01-03 23:30:29.542 DBG rigctld: 7216 TX: "0x0000000000000000\n"
2025-01-03 23:30:29.543 DBG rigctld: 7216 TX: "vfo_ops=0xff\n"
2025-01-03 23:30:29.543 DBG rigctld: 7216 TX: "ptt_type=0x1\n"
2025-01-03 23:30:29.543 DBG rigctld: 7216 TX: "has_set_vfo=0x1\n"
2025-01-03 23:30:29.543 DBG rigctld: 7216 TX: "has_get_vfo=0x1\n"
2025-01-03 23:30:29.543 DBG rigctld: 7216 TX: "has_set_freq=0x1\n"
2025-01-03 23:30:29.543 DBG rigctld: 7216 TX: "has_get_freq=0x1\n"
2025-01-03 23:30:29.543 DBG rigctld: 7216 TX: "has_set_conf=0x1\n"
2025-01-03 23:30:29.543 DBG rigctld: 7216 TX: "has_get_conf=0x1\n"
2025-01-03 23:30:29.543 DBG rigctld: 7216 TX: "has_power2mW=0x1\n"
2025-01-03 23:30:29.543 DBG rigctld: 7216 TX: "has_mW2power=0x1\n"
2025-01-03 23:30:29.543 DBG rigctld: 7216 TX: "timeout=0x3e8\n"
2025-01-03 23:30:29.543 DBG rigctld: 7216 TX: "done"
2025-01-03 23:30:29.544 DBG rigctld: 7216 TX: "\n"
2025-01-03 23:30:29.573 DBG rigctld: 7216 RX: "v"
2025-01-03 23:30:29.573 DBG rigctld: 7216 TX: "None"
2025-01-03 23:30:29.573 DBG rigctld: 7216 TX: "\n"
2025-01-03 23:30:29.626 DBG rigctld: 7216 RX: "l KEYSPD"
2025-01-03 23:30:29.626 DBG rigctld: 7216 TX: "20"
2025-01-03 23:30:29.626 DBG rigctld: 7216 TX: "\n"
2025-01-03 23:30:29.630 DBG rigctld: 7216 RX: "f"
2025-01-03 23:30:29.630 DBG rigctld: 7216 TX: "14074000"
2025-01-03 23:30:29.630 DBG rigctld: 7216 TX: "\n"
2025-01-03 23:30:29.631 DBG rigctld: 7216 RX: "V VFOA"
2025-01-03 23:30:29.631 DBG rigctld: 7216 TX: "RPRT 0\n"
2025-01-03 23:30:29.632 DBG rigctld: 7216 RX: "f"
2025-01-03 23:30:29.632 DBG rigctld: 7216 TX: "14074000"
2025-01-03 23:30:29.632 DBG rigctld: 7216 TX: "\n"
2025-01-03 23:30:29.632 DBG rigctld: 7216 RX: "f"
2025-01-03 23:30:29.632 DBG rigctld: 7216 TX: "14074000"
2025-01-03 23:30:29.633 DBG rigctld: 7216 TX: "\n"
2025-01-03 23:30:29.633 DBG rigctld: 7216 RX: "V VFOB"
2025-01-03 23:30:29.634 DBG rigctld: 7216 TX: "RPRT 0\n"
2025-01-03 23:30:29.634 DBG rigctld: 7216 RX: "f"
2025-01-03 23:30:29.634 DBG rigctld: 7216 TX: "14074000"
2025-01-03 23:30:29.634 DBG rigctld: 7216 TX: "\n"
2025-01-03 23:30:29.635 DBG rigctld: 7216 RX: "V VFOA"
2025-01-03 23:30:29.635 DBG rigctld: 7216 TX: "RPRT 0\n"
2025-01-03 23:30:29.635 DBG rigctld: 7216 RX: "s"
2025-01-03 23:30:29.635 DBG rigctld: 7216 TX: "0\n"
2025-01-03 23:30:29.635 DBG rigctld: 7216 TX: "None"
2025-01-03 23:30:29.635 DBG rigctld: 7216 TX: "\n"
2025-01-03 23:30:29.636 DBG rigctld: 7216 RX: "m"
2025-01-03 23:30:29.636 DBG rigctld: 7216 TX: "USB\n"
2025-01-03 23:30:29.636 DBG rigctld: 7216 TX: "3000"
2025-01-03 23:30:29.636 DBG rigctld: 7216 TX: "\n"
2025-01-03 23:30:29.665 DBG rigctld: 7216 RX: "\\get_powerstat"
2025-01-03 23:30:29.666 DBG rigctld: 7216 TX: "1"
2025-01-03 23:30:29.666 DBG rigctld: 7216 TX: "\n"
2025-01-03 23:30:29.915 DBG rigctld: 7216 RX: "q"''

Oh, yes I forgot in the release notes, there is now an option to log all rigctld communications!

1 Like

hmm problems
a) the only way I know to talk directly to the radio, when wfview is running, is via the virtual serial ports. I use this, however, it seems not 100% reliable. Sometimes it takes a lomg while until an answer is sent, sometimes the answer is wrong (qrg = 0, ie)
b) with V2.03, it looks like it does not work anymore. Could it be, that the virtual serial prot is broken?
EDIT: I tried it three times and it did not work. On the fourth time it worked again …

absolutely no problem. I have currently set up my system i a way, that I can switch between 1.64 and what version ever we are testing :slight_smile:

uuh … very much for a simple “just give me the qrg from the main vfo” :slight_smile:

however, what is the reason for

I think it explains, why after the rigctl.exe -m 2 -r 127.0.0.1:4533 f we always end up with VFOA

and yes, I discovered the DBG rigctld a couple of days ago.

It should work fine, if you have updated your RPi, it may have broken something? I have tested the Windows version quite extensively. I don’t like using it as it bypasses the wfview queue and sends commands directly to the radio, which on some radios like the IC-7100 can cause collisions.

Of course, assuming a fairly recent version of rigctl you can always run:

rigctl-m 2 -r 127.0.0.1:4533 --skipinit

since the tests with the new version I have not changed the basis of the rpi. Before I report something strange, i check back with V1.64 on the same machine.

I am currently using
“rigctl Hamlib 4.7~git from indeterminate source revision. 64-bit”
and --skipinit does not seem to make a big difference. In my last tests
rigctl -r /home/pi/rig-pty1 -m 3073 --skipinit f
reported the correct qrg in 50% of all calls.

Why on earth are you using the pty with rigctl, the whole point of having a rigctld in wfview was to stop people having to talk directly and disrupt wfviews communications.

The fact is that --skipinit will stop rigctl from selecting any VFOs itself.

1 Like

my goal was to be able to send CW from FLDigi with the radio in CW Mode, not USB-Data. What would you suggest to achieve that?

Currently, I do not use pty in my scripts. It is used only by FLDigi to connect to the radio.

that was a misunderstanding. When I use
rigctl -r localhost:4533 -m 2 --skipinit f
it works as expected. Thanks

1 Like

Not sure what side the issue is on but after upgrading to v2 then I connect with SDR-Control on my iPad only the frequency loads and nothing else. I have already contacted the developer of the app to have him check it out.

The other thing I noticed is the “F Lock” is only locking the onscreen control, it is not locking my RC-28 remote controller.

Thanks for all the hard work!

Hi Aaron,

Unfortunately the developer of SDR Control has not answered our emails about the integration of wfview server and SDR Control, and we do not have copies of the app. So I cannot really tell why his app is not working.

I think our wfview F Lock checkbox only locks out the wfview UI, not any controllers or external apps. Locking out controllers connected to wfview makes sense, we will put it down for the next time we are in that area of the code :slight_smile:

–E
de W6EL

1 Like

I am e-mailing back and forth with the developer of SDR-Control. What we think is happening is wfview is not passing through the CI-V address of the radio. The app connects, and I get audio but because the app does not know the CI-V address of the radio it does not know what controls to load. The radio tab in the app shows a “?” for the radio model and “00” for the CI-V address.

Is the Radio Server offering the CI-V address?

Oh and according to his ticking system the developer was on vacation the last few weeks.