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
Phil Taylor 389f661c79 Working (in Windows) audio output 2022-04-03 20:16:52 +01:00
USERMANUAL Fix spelling errors 2022-03-23 15:45:51 +00:00
qdarkstyle A little less green in our gray. 2021-11-18 13:13:54 -08:00
resampler Fix spelling errors 2022-03-23 15:45:51 +00:00
resources Add MacOS serial port entitlement 2021-05-18 20:17:47 +01:00
ring Fix spelling errors 2022-03-23 15:45:51 +00:00
.gitignore remove intermediate files so they don't get accidentally committed. 2021-03-09 17:34:22 +00:00
.gitmodules Remove unneeded submodules 2021-08-17 17:54:41 +01:00
CHANGELOG Fix spelling errors 2022-03-23 15:45:51 +00:00
CONTRIBUTING.md Update CONTRIBUTING.md 2021-02-03 18:48:31 +00:00
INSTALL.md WHATSNEW and INSTALL.md: added opus 2021-08-16 14:40:54 +02:00
INSTALL_PREBUILT_BINARY.md small changes to INSTAll.md and addition of mint 20.2/openSUSE 15.3 2021-07-24 10:59:01 +02:00
LICENSE Added LICENSE 2018-06-20 18:45:50 -07:00
README.md Fix spelling errors 2022-03-23 15:45:51 +00:00
WHATSNEW Merge settings branch 2022-01-04 18:34:34 +00:00
aboutbox.cpp Merge settings branch 2022-01-04 18:34:34 +00:00
aboutbox.h New about box! 2021-07-08 00:31:59 -07:00
aboutbox.ui about box external links are now working 2021-07-08 08:39:13 -07:00
audiohandler.cpp Working (in Windows) audio output 2022-04-03 20:16:52 +01:00
audiohandler.h Working (in Windows) audio output 2022-04-03 20:16:52 +01:00
audiotaper.h Local af gain now has anti-log audio pot taper. 2021-07-06 12:02:09 -07: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 Fix spelling errors 2022-03-23 15:45:51 +00:00
commhandler.cpp Merge branch 'master' into wfserver 2022-03-23 17:28:11 +00:00
commhandler.h Added RTS PTT support commHandler and rigCommander. RTS is only sent 2021-11-05 23:21:36 -07:00
freqmemory.cpp Fix spelling errors 2022-03-23 15:45:51 +00:00
freqmemory.h Initial queued "set" command commit. Only the frequency set command is 2021-06-25 01:24:21 -07:00
logcategories.cpp Slightly better tcp server implementation (still needs UI adding) 2022-03-23 13:19:05 +00:00
logcategories.h Slightly better tcp server implementation (still needs UI adding) 2022-03-23 13:19:05 +00:00
main.cpp Merge branch 'master' into wfserver 2022-03-23 17:28:11 +00:00
meter.cpp Fix spelling errors 2022-03-23 15:45:51 +00:00
meter.h Fixed issue where the "none" selection didn't work quite right. Also 2021-08-20 22:19:47 -07:00
packettypes.h Hopefully fix Linux compile error 2022-01-30 10:29:23 +00:00
pttyhandler.cpp Fix spelling errors 2022-03-23 15:45:51 +00:00
pttyhandler.h Fix spelling errors 2022-03-23 15:45:51 +00:00
qledlabel.cpp Add --debug option to increase debugging for release builds 2021-05-15 18:53:16 +01: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 Fix spelling errors 2022-03-23 15:45:51 +00: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 Working (in Windows) audio output 2022-04-03 20:16:52 +01:00
rigcommander.h Initial tcpserver support (needs work) 2022-03-23 10:12:42 +00:00
rigctld.cpp Fixed broken implementation of "set_level RFPOWER" in rigctld 2022-03-19 14:05:46 -05:00
rigctld.h Merge settings branch 2022-01-04 18:34:34 +00:00
rigidentities.cpp Fix spelling errors 2022-03-23 15:45:51 +00:00
rigidentities.h Lots more fixes and tweaks 2022-01-29 22:50:58 +00:00
rigstate.h Fixed broken implementation of "set_level RFPOWER" in rigctld 2022-03-19 14:05:46 -05: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
selectradio.cpp Treat GUID as 16 bytes rather than trying to be clever! 2022-01-23 17:54:40 +00:00
selectradio.h Treat GUID as 16 bytes rather than trying to be clever! 2022-01-23 17:54:40 +00:00
selectradio.ui Make radio selection visible when there is more than 1 radio. 2022-01-22 22:53:06 +00:00
servermain.cpp Add metahandler 2022-02-02 16:26:40 +00:00
servermain.h Add metahandler 2022-02-02 16:26:40 +00:00
tcpserver.cpp Working (in Windows) audio output 2022-04-03 20:16:52 +01:00
tcpserver.h Working (in Windows) audio output 2022-04-03 20:16:52 +01:00
transceiveradjustments.cpp missing space 2021-11-26 18:05:32 +01:00
transceiveradjustments.h Change MAX/MIN to use qMax/qMin instead 2021-11-06 10:42:13 +00:00
transceiveradjustments.ui Added geometry constraints to the transceiver adjustments window, and 2021-11-05 17:38:07 -07:00
udphandler.cpp Working (in Windows) audio output 2022-04-03 20:16:52 +01:00
udphandler.h Lots more fixes and tweaks 2022-01-29 22:50:58 +00:00
udpserver.cpp Working (in Windows) audio output 2022-04-03 20:16:52 +01:00
udpserver.h Few more fixes 2022-02-02 16:02:40 +00:00
udpserversetup.ui Fix spelling errors 2022-03-23 15:45:51 +00:00
ulaw.h more 8bit fixes! 2021-08-14 16:11:48 +01:00
wfmain.cpp Working (in Windows) audio output 2022-04-03 20:16:52 +01:00
wfmain.h Add radio_cap_packet MetaType for server 2022-01-22 15:32:53 +00:00
wfmain.ui Merge branch 'master' into wfserver 2022-03-23 17:28:11 +00:00
wfserver.pro Fix wfserver linux build 2022-01-18 09:06:23 +00:00
wfserver.vcxproj Now supports multiple radios on OEM server 2022-01-23 15:06:31 +00:00
wfserver.vcxproj.filters Fix building both wfview and wfserver together 2022-01-18 09:03:41 +00:00
wfserver.vcxproj.user Fix some compile warnings 2022-01-23 16:43:58 +00:00
wfserver_resource.rc Initial server commit 2022-01-17 17:23:55 +00:00
wfview.code-workspace added wfview.code-workspace for vscode 2021-02-05 10:59:39 +00:00
wfview.pro Working (in Windows) audio output 2022-04-03 20:16:52 +01:00
wfview.sln Now supports multiple radios on OEM server 2022-01-23 15:06:31 +00:00
wfview.vcxproj Working (in Windows) audio output 2022-04-03 20:16:52 +01:00
wfview.vcxproj.filters Working (in Windows) audio output 2022-04-03 20:16:52 +01:00
wfview.vcxproj.user Make radio selection visible when there is more than 1 radio. 2022-01-22 22:53:06 +00:00
wfview_resource.rc Various file tidying for Windows/Mac builds 2021-05-18 17:51:20 +01:00

README.md

wfview

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

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

website - WFVIEW wfview.org

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 possibilities. 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 numeric 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 comparable waterfall speeds as on the radio itself.

Build Requirements:

  1. gcc / g++ / make
  2. qmake
  3. qt5 (probably the package named "qt5-default")
  4. libqt5serialport5-dev
  5. libqcustomplot-dev
  • Debian-based Linux system (Debian Linux, Linux Mint, Ubuntu, etc) or opensuse 15.x. 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:

THIRD PARTY code/hardware:

the following projects we would like to thank in alphabetical order:

  • ICOM for their well designed rigs

see ICOM Japan (https://www.icomjapan.com/)

  • ICOM for their well written RS-BA1 software

see ICOM JAPAN products page (https://www.icomjapan.com/lineup/options/RS-BA1_Version2/)

  • kappanhang which inspired us to enhance the original wfview project:

    Akos Marton ES1AKOS Elliot LiggettW6EL (passcode algorithm) Norbert Varga HA2NON nonoo@nonoo.hu

see for their fine s/w here kappanhang

see [sources] (https://github.com/xiph/opus/tree/master/silk)

  • QCP: the marvellous qt custom plot code

    Emanuel Eichhammer

see [QCP] (https://www.qcustomplot.com/)

If you feel that we forgot ayone, just drop a mail.