Log file

wfview writes a log file, which can be useful to look at when things don’t work. Debug builds offer even more insight into the inner workings of the program.

Here is how to view the log file for each operating system:

Linux: run the following terminal command:

 xdg-open /tmp/wfview.log

Mac: run the following terminal command

open ~/Downloads/wfview.log

Windows 10: run the following command from within Powershell

Get-Content $env:TEMP\wfview.log -Wait -Tail 30

Older versions of Windows (7 and 8) will require Powershell 3 to be installed, alternatively you can open the file using Notepad

notepad %TEMP%\wfview.log

Debug Logging

To aid in debugging, wfview may be started with a debugging flag, which causes much more data to be logged to the log file. To start wfview with debug logging, run wfview with either a -d flag or --debug. For example:

wfview --debug

Once done, the log file will contain a much greater amount of information. For macOS, you will need to navigate into the application’s bundle ( wfview.app/Contents/MacOS/ )and then run it like this: ./wfview --debug. You can drag the application into the terminal to type the first part.

Each time wfview is started, the log file is appended to. Therefore, if you want a clean logfile, it may be helpful to delete it prior to starting wfview, so that it is not too cluttered.

Logging Features

When wfview starts, it will begin with “INF system: Starting wfview”. Each line has the current date, time, logging category, and subsystem label. Logging categories include:

  • INF (informative)
  • DBG (debug)

Subsystems (logical units of code basically) include:

  • system (wfmain.cpp)
  • audio
  • udp (communication to and from a radio over network)
  • rig (rigCommander)
  • serial (pseudo-term and serial-connected rigs)
  • gui (gui-specific parts of wfmain.cpp)

Useful Log Messages:

Briefly, here are some useful things to look for:

Rig-ID: This is how the radio is identified:

2021-05-15 16:38:41.230 DBG rig: ---Rig FOUND from broadcast query:
2021-05-15 16:38:41.230 INF rig: Using incomingCIVAddr: (int): 148 hex: 94
2021-05-15 16:38:41.230 INF rig: Have rig ID: decimal: 148
2021-05-15 16:38:41.230 DBG system: Rig name: "IC-7300"
2021-05-15 16:38:41.230 DBG system: Has LAN capabilities: false
2021-05-15 16:38:41.230 DBG system: Rig ID received into wfmain: spectLenMax: 475
2021-05-15 16:38:41.230 DBG system: Rig ID received into wfmain: spectAmpMax: 160
2021-05-15 16:38:41.230 DBG system: Rig ID received into wfmain: spectSeqMax: 11
2021-05-15 16:38:41.230 DBG system: Rig ID received into wfmain: hasSpectrum: true

In the above case, the rig was identified by means of a broadcast request (to CI-V address 0x00).

With debug logging enabled, the following additional data are available:

Traffic to the radio: wfview logs data to the radio, except for regularly polled queries (such as the s-meter). The format is as follows:

2021-05-15 16:38:41.267 DBG rig: Final payload in rig commander to be sent to rig:
2021-05-15 16:38:41.267 DBG rig: ---- Begin hex dump -----:
2021-05-15 16:38:41.267 DBG rig: "INDEX: 00 01 02 03 04 05 "
2021-05-15 16:38:41.267 DBG rig: "DATA: fe fe 94 e1 03 fd "
2021-05-15 16:38:41.267 DBG rig: ----- End hex dump -----

Here, we are requesting the current frequency (command 0x03) from the radio at address 0x94.

Traffic from radio: wfview logs any data received from the radio, except for spectrum and metering data, since these requests happen so frequently that logging them takes a lot of resources. The format is as follows:

2021-05-15 16:38:41.270 DBG rig: ---- Begin hex dump -----:
2021-05-15 16:38:41.271 DBG rig: "INDEX: 00 01 02 03 04 05 06 "
2021-05-15 16:38:41.271 DBG rig: "DATA: 03 00 20 28 07 00 fd "
2021-05-15 16:38:41.271 DBG rig: ----- End hex dump -----

You can see that the CI-V preamble and to/from address portion is already stripped out. In this case, the rig is responding to a frequency query request (command 0x03). The indicated frequency is 7.282000 MHz.