Access to Waveform Data by Code

I like wfview very much ! I can activate most or all of the controls on my IC-7300 via the CI-V interface and code using OCTAVE ( MATLAB-like ) language, its instrument-control package and a USB-to-CI_V cable.

I would like to be able to access the waveform ( spectrum scope ) data via code. I understand that this data is only provided over the radio’s USB interface, not the CI-V interface. For my application, a smaller number of spectrum scope outputs ( every Nth sweep, for example ) would be acceptable.

Is there any way that wfview can or could make ( reduced rate if necessary ) spectrum scope data available to MATLAB / OCTAVE or python or C ?

Thanks for any and all comments.
73’s, Paul K Wagner, WB8ICI

Hi Paul,

The spectrum actually is over CI-V. Once spectrum is enabled, the CI-V bus will show a massive spike in activity with spectrum messages coming out at regular intervals. This page pretty well describes the format of the spectra (scroll down):

We will probably not be adding any kind of spectrum export features to wfview, but you can easily build such a thing using a little python or C. You can use wfview to enable the spectrum, close wfview, and then just save the data coming over the port to a file. Then it’s just a matter of parsing out the data.

Let me know if that makes sense,

de W6EL

EXCELLENT ! Cryptic IC-7300 manual control command section suggests spectrum is only over CI-V.
I will definitely try this out. Thanks very much for the tip.

73’s, Paul Wagner, WB8ICI

Hi Paul,

The specific limitation that the manual is trying to say is:

  1. You have to have baud rate at 115200 for the waterfall
  2. The little single-wire CI-V connector on the rear of the radio maxes out at 19200 baud
  3. Therefore, you must get the spectrum over the USB port’s CI-V bus rather than the dedicated single-wire CI-V connector
  4. And also, you cannot have the CI-V connector and the USB CI-V bus connected together (CI-V Remote Link or whatever it is called)

You would not be the first to get confused about how they worded all that.

Let me know what you come up with,

de W6EL

The manual says “only when 27 10 and 27 11 are set to on … waveform data is output *4”.
( I made sure that Note *4 was performed before I attempted anything ).

I can set Scope ON/OFF status ( 27 10 ) to on or off, and the reply is OK ( 0xFB ), but …
I can NOT set Scope wave data output ( 27 11 ) to on or off, the reply is NG ( 0xFA ).

73’s, Paul

Make sure you are sending 01 after that command to enable it, or 00 to disable.

You can always start wfview with the “-d” switch for debug mode, then check the log, it will show you the exact command sent.

de W6EL

I used the command window to run wfview -d as you recommended.
I see evidence of a wide range of commands and responses with E1 as the CI-V PC address …
… but NO incidences of any commands or data containing 27 00 00 …
I followed your IC-7300 and wfview instructions to the letter.
( tried to upload my log file but couldn’t due to be a “new user” )

73’s, Paul


Please use termbin for the log file per these directions:

Come to think of it, I think we filter out spectrum commands from the logs due to how much data it is. This likely blocks the setup commands too.

If you are getting “FA” and you have sent the command just like the code I sent you does, then it may be that you do not have “unlink from remote = yes” or you have the wrong baud rate selected. I don’t know. I can tell you though, we wrote wfview per the 7300 documentation. There’s nothing magical about the commands we send to set it up.

de W6EL

1 Like

If wfview is receiving waveform data (the scope is working) then you can always connect to the TCP server provided by wfview, as this will forward all CIV data received from the radio, including waveform data.