Hi Bill,

Thank you for your reply. I understood both your preference for WSJT-X coverage 
and the issue of GPL licensing for closed source dynamic link libraries.

The USBIF4CW was designed as HID like keyboard and mouse. The current USBIF4CW 
supports not only CW software but also digital mode software such as MMTTY, 
MMSSTV and MMVARI with DLL.

We already considered to control PTT with either RTS or DTR signals via VCP 
driver for USBIF4CW. However, it is difficult to achieve complete operation on 
all versions of Windows with the developed VCP driver.

For personal use, we try to branch the WSJT-X code to control our equipment.

73 de Mutsuhiro, JG5CBR

On 2019/07/04 23:49, Bill Somerville wrote:
On 04/07/2019 13:54, usbif...@nksg.net wrote:
Hello all,

We are developing a digital mode / CW interface named USBIF4CW from 2002.
Could you please support our interface for the PTT method on WSJT-X?
You can access it from python code via dll for Windows-OS as shown below.

#####################################
self.lib = ctypes.windll.LoadLibrary("./usbif4cw.dll");
if (self.lib.usbif4cwOpen(0) < 0):
    tkmsg.showerror('err', 'USBIF4CW not found')
    self.dlg.destroy()

self.port0_data = 0xFF # port0 default value

# ON the PTT with audio
self.port0_data &= 0xFD # ptt on
self.port0_data &= 0xF7 # switch audio
self.lib.usbif4cwWriteData(0, 0, self.port0_data)

# OFF the PTT with audio
self.port0_data |= 0x02; # ptt off
self.port0_data |= 0x08; # switch audio
self.lib.usbif4cwWriteData(0, 0, self.port0_data)

self.lib.usbif4cwClose(0)
#####################################

For details, please see the link below.
http://nksg.net/usbif4cw/dll/usbif4cw-python-dev.zip
http://nksg.net/usbif4cw/lab/devlib/

73 de Mutsuhiro, JG5CBR

Hi Mutsuhiro san,

thank you for informing us about your project. Unfortunately at first sight it 
does not seem to be compatible with WSJT-X for the following reasons:

1) Implementation appears to require closed source library which must be dynamically 
linked, to use such a library in WSJT-X would be in violation of our GPL licence terms. 
The only exception for closed source code in a GPL project is what is referred to as 
"system libraries" 
(https://www.gnu.org/licenses/gpl-faq.html#SystemLibraryException),

2) WSJT-X defers PTT handling either to Hamlib or to other applications via 
networking or other inter-process communications,

3) WSJT-X is not a python application and we do not have any current ability to 
call out to Python (yes I realize that we could call the DLL API via direct 
C/C++ calls),

4) Our preference is to support all of WSJT-X's features on multiple platforms 
currently including MS Windows, MacOS, and many *nix versions and 
distributions. We do have a couple of historical exceptions in the case of HRD 
and DX Lab Suite Commander, but note that they are via inter-process network 
interfaces and could be used across platform boundaries. And the OmniRig rig 
control server which is again via inter-process communications albeit MS 
proprietary (note that OmniRig is an Open Source project and could be ported to 
other platforms although not easily).

So unfortunately at this stage it seems we must reject your kind offer to 
integrate your project with WSJT-X unless one or more of the above issues can 
be addressed or clarified.

I note the USBIF4CW utilizes virtual serial port devices over a USB connection, 
if there is a spare virtual serial device available in the USBIF4CW; have you 
considered using either the RTS or DTR signals from this virtual device for 
direct PTT control? Doing so would make it possible for many CAT control 
applications, including WSJT-X, to control the target rig's PTT without any 
software modifications. I think this would only be possible if the controlling 
application can open the COM port even if it does not do any RS-232 
communications on that port.

73
Bill
G4WJS.



_______________________________________________
wsjt-devel mailing list
wsjt-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wsjt-devel


_______________________________________________
wsjt-devel mailing list
wsjt-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wsjt-devel

Reply via email to