wfview is open-source software for the control of modern Icom radios, including the IC-7300, IC-7610, IC-705, IC-R8600 and IC-9700. USB and LAN are supported. See wfview.org
 
 
 
Go to file
Roeland Jansen db3dd17622 changelog 2021-04-19 18:48:22 +02:00
qdarkstyle
resampler Merge remote-tracking branch 'refs/remotes/origin/lan-alpha' 2021-03-13 16:57:12 +00:00
resources Automatic symlink of /tmp/rig to the pseudo-terminal device. Also, we 2020-03-23 14:58:31 -07:00
.gitignore remove intermediate files so they don't get accidentally committed. 2021-03-09 17:34:22 +00:00
CHANGELOG changelog 2021-04-19 18:48:22 +02:00
CONTRIBUTING.md Update CONTRIBUTING.md 2021-02-03 18:48:31 +00:00
INSTALL.md updated build instructions for opensuse, sles, tumbleweed 2021-03-24 08:01:13 +01:00
INSTALL_PREBUILT_BINARY.md added support info for prebuild-systems 2021-04-16 11:19:51 +02:00
LICENSE
README.md Added support for various spectrum sizes and rig capability support. 2021-02-10 17:32:56 +00:00
audiohandler.cpp Set AFGain to 100% on LAN connections 2021-03-23 18:19:47 +00:00
audiohandler.h Add local volume control for UDP connections. 2021-03-22 18:53:34 +00:00
calibrationwindow.cpp Add logging categories 2021-02-23 21:21:22 +00:00
calibrationwindow.h Minor changes to calibration window 2021-02-14 23:24:21 -08:00
calibrationwindow.ui Minor UI cleanup 2021-02-15 22:50:08 -08:00
commhandler.cpp Added conditional to debug on serial data write size. 2021-03-30 21:54:27 -07:00
commhandler.h Move pseudoterm into dedicated class 2021-03-04 20:19:05 +00:00
freqmemory.cpp Add logging categories 2021-02-23 21:21:22 +00:00
freqmemory.h Fixed busted keystroke assignments (mode and transmit). 2021-02-16 22:32:05 -08:00
logcategories.cpp Initial commit of rigctld (doesn't currently do anything useful!) 2021-04-19 17:26:26 +01:00
logcategories.h Initial commit of rigctld (doesn't currently do anything useful!) 2021-04-19 17:26:26 +01:00
main.cpp Fix some compile warnings and deprecation. 2021-03-13 16:56:48 +00:00
meter.cpp Added a nice s-meter. It isn't right yet, but it's a start. 2021-02-24 00:18:19 -08:00
meter.h Added a nice s-meter. It isn't right yet, but it's a start. 2021-02-24 00:18:19 -08:00
packettypes.h Add USB audio handling to UDP server 2021-03-22 09:10:03 +00:00
pttyhandler.cpp Better detection of transceive command 2021-03-07 09:55:28 +00:00
pttyhandler.h Move pseudoterm into dedicated class 2021-03-04 20:19:05 +00:00
qledlabel.cpp Add PTT Led and rigname to Permanent Widgets on Status Bar 2021-03-01 16:26:59 +00:00
qledlabel.h Add PTT Led and rigname to Permanent Widgets on Status Bar 2021-03-01 16:26:59 +00:00
repeaterattributes.h Tone, TSQL, and DTCS code added, but not complete. 2021-04-04 00:36:21 -07:00
repeatersetup.cpp Antenna selection might work, untested. 2021-04-09 15:57:16 -07:00
repeatersetup.h Added some helpers to the destructor in repeaterSetup. Not sure if it 2021-04-09 09:37:54 -07:00
repeatersetup.ui We can now read the repeater access mode and update the UI. What remains 2021-04-04 23:46:44 -07:00
rigcommander.cpp Added ATU featureon 7610. 2021-04-11 16:38:58 +00:00
rigcommander.h Now grabs scope state on startup. Found bug, did not fix, in the 2021-04-11 00:42:25 -07:00
rigctld.cpp Initial commit of rigctld (doesn't currently do anything useful!) 2021-04-19 17:26:26 +01:00
rigctld.h Initial commit of rigctld (doesn't currently do anything useful!) 2021-04-19 17:26:26 +01:00
rigidentities.cpp Add logging categories 2021-02-23 21:21:22 +00:00
rigidentities.h Antenna selection might work, untested. 2021-04-09 15:57:16 -07:00
rxaudiohandler.cpp Added support for various spectrum sizes and rig capability support. 2021-02-10 17:32:56 +00:00
rxaudiohandler.h Added support for various spectrum sizes and rig capability support. 2021-02-10 17:32:56 +00:00
satellitesetup.cpp Add logging categories 2021-02-23 21:21:22 +00:00
satellitesetup.h Changed spectrum to scale line plot to maximum amplitude of the rig. 2021-02-12 17:21:32 -08:00
satellitesetup.ui Minor UI cleanup 2021-02-15 22:50:08 -08:00
udphandler.cpp Fix crash when radio is shutdown while wfview is connected. 2021-03-29 09:38:31 +01:00
udphandler.h Allow user to configure client name 2021-03-27 16:07:17 +00:00
udpserver.cpp Small fixes to UDP server 2021-03-22 15:16:41 +00:00
udpserver.h Add USB audio handling to UDP server 2021-03-22 09:10:03 +00:00
udpserversetup.cpp Add logging categories 2021-02-23 21:21:22 +00:00
udpserversetup.h Add USB audio handling to UDP server 2021-03-22 09:10:03 +00:00
udpserversetup.ui Duplex controls now function. NB: "Auto" mode works as follows: User 2021-02-18 21:47:19 -08:00
wfmain.cpp Merge branch 'ui-enhance' into lan-alpha 2021-04-19 17:28:33 +01:00
wfmain.h Merge branch 'ui-enhance' into lan-alpha 2021-04-19 17:28:33 +01:00
wfmain.ui Goodbye tracer 2021-04-17 19:41:15 -07:00
wfview.code-workspace Added support for various spectrum sizes and rig capability support. 2021-02-10 17:32:56 +00:00
wfview.icns Add MacOS X Icon 2021-03-19 10:44:05 +00:00
wfview.pro Initial commit of rigctld (doesn't currently do anything useful!) 2021-04-19 17:26:26 +01:00
wfview.sln Add audio resampler 2021-03-09 17:22:16 +00:00
wfview.vcxproj Initial commit of rigctld (doesn't currently do anything useful!) 2021-04-19 17:26:26 +01:00
wfview.vcxproj.filters Initial commit of rigctld (doesn't currently do anything useful!) 2021-04-19 17:26:26 +01:00
wfview.vcxproj.user Add visual studio 2019 solution 2021-02-20 18:30:46 +00:00

README.md

wfview

wfview is an open-source front-end application for the

Other models to be tested/added (including the IC-705)..

wfview supports viewing the spectrum display waterfall and most normal radio controls. Using wfview, the radio can be operated using the mouse, or just the keyboard (great for those with visual impairments), or even a touch screen display. The gorgous waterfall spectrum can be displayed on a monitor of any size, and can even projected onto a wall for a presentation. Even a VNC session can make use of wfview for interesting remote rig posibilities. wfview runs on humble hardware, ranging from the $35 Raspberry Pi, to laptops, to desktops. wfview is designed to run on GNU Linux, but can probably be adapted to run on other operating systems. In fact we do have working example in windows as well.

wfview is unique in the radio control ecosystem in that it is free and open-source software and can take advantage of modern radio features (such as the waterfall). wfview also does not "eat the serial port", and can allow a second program, such as fldigi, access to the radio via a pseudo-terminal device.

For screenshots, documentation, User FAQ, Programmer FAQ, and more, please see the project's wiki.

wfview is copyright 2017-2020 Elliott H. Liggett. All rights reserved. wfview source code is licensed via the GNU GPLv3.

Features:

  1. Plot bandscope and bandscope waterfall. Optionally, also plot a "peak hold". A splitter lets the user adjust the space used for the waterfall and bandscope plots.
  2. Double-click anywhere on the bandscope or waterfall to tune the radio.
  3. Entry of frequency is permitted under the "Frequency" tab. Buttons are provided for touch-screen control
  4. Bandscope parameters (span and mode) are adjustable.
  5. Full keyboard and mouse control. Operate in whichever way you like. Most radio functions can be operated from a numberic keypad! This also enables those with visual impairments to use the IC-7300.
  6. 100 user memories stored in plain text on the computer
  7. Stylable GUI using CSS
  8. pseudo-terminal device, which allows for secondary program to control the radio while wfview is running
  9. works for radios that support the ethernet interface with compareable waterfall speeds as on the radio itself.

Build Requirements:

  1. gcc / g++ / make
  2. qmake
  3. qt5 (proably the package named "qt5-default")
  4. libqt5serialport5-dev
  5. libqcustomplot-dev
  • Debian-based Linux system (Debian Linux, Linux Mint, Ubuntu, etc). Any recent Linux system will do though!
  • QT Creator for building, designing, and debugging w/gdb

Build directions:

See INSTALL.md for directions.

Rig setting:

  1. CI-V Baud rate: Auto
  2. CI-V address: 94h (default)
  3. CI-V Transceive ON
  4. CI-V USB-> REMOTE Transceive Address: 00h
  5. CI-V Output (for ANT): OFF
  6. CI-V USB Port: Unlink from REMOTE
  7. CI-V USB Baud Rate: 15200
  8. CI-V USB Echo Back: OFF
  9. Turn on the bandscope on the rig screen
  • Note: The program currently assumes the radio is on a device like this:
/dev/serial/by-id/usb-Silicon_Labs_CP2102_USB_to_UART_Bridge_Controller_IC-7300_02010092-if00-port0

This is symlinked to a device like /dev/ttyUSB0 typically. Make sure the port is writable by your username. You can accomplish this using udev rules, or if you are in a hurry:

sudo chown `whoami` /dev/ttyUSB*

TODO (for developers and contributors):

  1. Re-work pseudo term code into separate thread
  2. Consider XML RPC to make flrig/fldigi interface easier
  3. Add hide/show for additional controls: SWR, ALC, Power, S-Meter interface
  4. Fix crash on close (order of delete operations is important)
  5. Add support for other compatible CI-V radios (IC-706, IC-7100, IC-7610, etc)
  6. Better settings panel (select serial port, CI-V address, more obvious exit button)
  7. Add support for festival or other text-to-speech method using the computer (as apposed to the radio's speech module)

see also the wiki: