Commit Graph

54 Commits

Author SHA1 Message Date
Bill Somerville 9ea903b259
Merge branch 'develop' into feat-boost-log 2020-11-12 13:36:25 +00:00
Bill Somerville 9434c447cd
Ensure multicast UDP is sent to at least the loop-back interface
Also send multicast UDP to every selected network interface.
2020-11-06 00:33:53 +00:00
Bill Somerville c15f244a09
Comment out diagnostic prints 2020-11-05 11:30:48 +00:00
Bill Somerville caa23f1101
Message Client allows sending multicast UDP on multiple interfaces 2020-11-05 03:37:01 +00:00
Bill Somerville 11497cf0b1
Correct Qt version checks 2020-11-03 23:44:07 +00:00
Bill Somerville 698bd23a9c
Disallow sending UDP Message Protocol traffic to broadcast address 2020-11-03 23:08:12 +00:00
Bill Somerville 430d57c1ca
Network interface selection for outgoing UDP multicast datagrams
Default  selection  is  the  loop-back interface.  Users  who  require
interoperation  between  WSJT-X   instances  cooperating  applications
running on different hosts should  select a suitable network interface
and  carefully choose  a multicast  group address,  and TTL,  that has
minimal scope covering the necessary  network(s). Using 224.0.0.1 is a
reasonable    strategy    if   all    hosts    are    on   the    same
subnet. Administratively  scoped multicast group addresses  like those
within 239.255.0.0/16  can cover larger  boundaries, but care  must be
taken if the local subnet has access to a multicast enabled router.

The  IPv4  broadcast  address  (255.255.255.255) may  be  used  as  an
alternative  to multicast  UDP, but  note that  WSJT-X will  only send
broadcast UDP datagrams  on the loop-back interface,  so all recipient
applications must be running on the same host system.

The reference UDP Message protocol  applications are being extended to
be configurable  with a list of  interfaces to join a  multicast group
address on. By default they will only join on the loop-back interface,
which is also  recommended for any applications designed  to take part
in the WSJT-X  UDP Message Protocol. This allows full  user control of
the  scope of  multicast  group membership  with  a very  conservative
default  mode  that will  work  with  all interoperating  applications
running on the same host system.
2020-11-02 15:33:44 +00:00
Bill Somerville c0f11fb67b
Repair regression with UDP spotting to PSK Reporter
Recover correctly from broken connections, i.e. do nothing for UDP.
2020-10-23 04:36:28 +01:00
Bill Somerville 52b2084882
Update WSPRnet.org posts to allow mode to be determined
The  sent/received 'mode'  parameter  posted to  WSPRnet.org has  been
amended as follows:

        WSPR-2:     "2"
        FST4W-120:  "3"
        FST4W-300:  "5"
        FST4W-900:  "16"
        FST4W-1800: "30"

this change is designed to maintain backwards compatibility with older
versions of WSJT-X  and other software like WSPR-X  which already post
these values:

        WSPR-2:     "2"
        WSPR-15:    "15"

It is  expected that the  WSPRnet.org server  side will be  updated in
sync with  a WSJT-X  v2.3.0 RC2  (or GA) release  to account  for this
change.
2020-10-20 12:43:45 +01:00
Bill Somerville d8b16b31f4
Merge branch 'develop' into feat-boost-log 2020-10-13 19:20:37 +01:00
Bill Somerville 90b3fa2a46
Merge branch 'release-2.3.0' into develop 2020-10-13 16:51:40 +01:00
Bill Somerville 5a7291b690
Abort incomplete DNS lookup at shut down 2020-10-11 00:02:08 +01:00
Bill Somerville a2e8d8927b
Trivial typo fix 2020-10-07 13:11:45 +01:00
Bill Somerville add63fb374
Adapt WSPRnet.org spotting to moveable Rx analysis window
This allows spots at any frequency to be posted rather than just those
in the 1400 to 1600 Hz range above the VFO dial frequency.
2020-10-04 22:41:52 +01:00
Bill Somerville 5cc48497b8
Remove constraint on WSPRnet.org spots being in WSPR band segments
This seems harmless and will accommodate FST4W spots where operation
is outside of WSPR band segments.
2020-10-01 11:29:25 +01:00
Bill Somerville aae93e0d82
Qt <5.7 compatibility 2020-09-28 12:18:44 +01:00
Bill Somerville b37e419fc7
Qt 5.15 compatibility 2020-08-19 12:32:27 +01:00
Bill Somerville d1860df190
Only send local station info to PSK Reporter when necessary
Remove unneeded debug trace messages.
2020-08-18 12:47:17 +01:00
Bill Somerville 50da40413f
PSK Reporter connection opened & closed at the correct times 2020-08-16 00:38:19 +01:00
Bill Somerville 491a7b9a05
Ensure no connect with, or traffic to, PSK Reporter if not enabled 2020-08-15 23:32:10 +01:00
Bill Somerville 31742156fd
Qt v5.8 backwards compatibility 2020-08-07 22:53:21 +01:00
Bill Somerville 7bafb5b71e
Qt5.7 backwards compatibility 2020-08-07 22:40:15 +01:00
Bill Somerville 4d439e5248
Merge branch 'develop' into feat-fst280 2020-07-24 12:53:28 +01:00
Bill Somerville 345e4bc20e
Merge branch 'develop' into feat-fst280 2020-07-26 23:00:09 +01:00
Bill Somerville b0f76b2fe7
Backwards compatibility with Qt <5.11 2020-07-26 22:58:17 +01:00
Bill Somerville a580b1ff2c
Merge branch 'develop' into feat-fst280 2020-07-26 22:43:14 +01:00
Bill Somerville f6d16ea70c
Remove extraneous include 2020-07-26 22:42:14 +01:00
Bill Somerville 95d920f706
Merge branch 'develop' into feat-fst280 2020-07-26 21:57:02 +01:00
Bill Somerville 5994dd8a0d
Add a missing file 2020-07-26 21:56:10 +01:00
Bill Somerville 9c22eb321d
Merge branch 'develop' into feat-fst280 2020-07-26 16:20:11 +01:00
Bill Somerville 3527438a06
Merge branch 'feat-psk-reporter-re-work' into develop 2020-07-26 16:07:47 +01:00
Bill Somerville 8b0b2c15b2
Final adjustments for moving from test to live PSKReporter spotting 2020-07-26 15:55:54 +01:00
Bill Somerville 1f524026f9
Fix merging issue 2020-07-26 15:55:17 +01:00
Bill Somerville 7bb5a8e009
Merge branch 'develop' into feat-psk-reporter-re-work 2020-07-26 15:52:39 +01:00
Bill Somerville 843d491fdb
Mock PSKReporter.info Python script 2020-07-26 12:31:33 +01:00
Bill Somerville 2f700265b9
Merge branch 'develop' into feat-fst280 2020-07-26 10:20:55 +01:00
Bill Somerville 7566f3548d
Post FST4W spots to WSPRNet.org
Includes a re-factoring  of the WSPRNet class,  particularly to handle
direct spot posts as well as via  a file from wsprd. Switched from GET
http request method to POST method.

FST4W spots  post the same information  a WSPR spots except  the drift
field is  always zero (FST4W  has no  drift compensation, so  no drift
figure is calculated by the decoder),  and the mode field reflects the
T/R  period in  minutes.  This  means  FST4W-120A will  be similar  to
WSPR-2, an FST4W-900  will be similar to WSPR-15. I  don't see any way
to  view the  mode field  on  either the  new or  old database  format
queries on WSPRnet,  so it is hard  to tell if that  field is actually
stored.
2020-07-26 02:58:04 +01:00
Bill Somerville ea775c8b9a
Work around clang not having a consexpr strlen implementation 2020-07-24 12:51:20 +01:00
Bill Somerville bcff949025
Update some missing i18n strings 2020-07-13 00:55:42 +01:00
Bill Somerville 37ab6eecd1
Update contributors, and UDP Message Protocol documentation 2020-06-27 00:23:34 +01:00
phl0 6cbc91b653
Include prop mode in ADIF and UDP messages 2020-06-26 23:45:58 +01:00
Bill Somerville a24f402655
Skipping of connection refused net errors on Windows with Qt 5.15
Apparently this is still required.
2020-06-26 17:57:21 +01:00
Bill Somerville 147f29e271
Allow flush to send a receiver info data set without any spots 2020-06-21 16:11:36 +01:00
Bill Somerville af894c6039
Rename files to match class name
Avoiding case insensitive file system issues.
2020-06-21 02:15:31 +01:00
Bill Somerville b48b23450d
First iteration of optional TCP/IP client for PSK Reporter 2020-06-21 01:36:30 +01:00
Bill Somerville 9c22b5c3ed
Qt v5.15 compatibility 2020-06-13 16:04:41 +01:00
Bill Somerville 220cbc840a
Update UDP Status message documentation
This for  consistency, I  suspect inserting a  value into  the special
operations  type   enumeration  will  cause  external   programs  some
backwards compatibility issues. We  should consider reverting this and
adding the new value to the end.
2020-06-02 22:44:14 +01:00
Bill Somerville c6688534cd
Performance improvements to decode highlighting
The Highlight  Callsign (13)  UDP message now  operates in  a slightly
different way.  The  "Highlight last" field, when  true valued, causes
all  instances of  the specified  callsign  to be  highlighted in  the
decoding  period. This  allows external  applications to  highlight DX
callsigns even when  multiple stations are calling  them.  Before this
was  unlikely to  work since  the external  application would  have to
respond to  Decode (2) UDP  messages exceedingly quickly  to guarantee
successful highlighting  before another decode  with the same  DX call
was  printed.   There  should  be  no  changes  required  to  external
applications acting  as servers  to the  WSJT-X UDP  Message Protocol,
although  using  the  version  of the  Highlight  Callsign  (13)  with
"Highlight   last"  should   not  be   required  for   adhoc  callsign
highlighting. It should be reserved for commonly recurring targets and
limited to  no more than 100  active highlighting requests at  any one
time, otherwise there may be performance impacts on WSJT-X.
2020-05-24 16:33:14 +01:00
Bill Somerville f0b77de193
Document backward/forward compatibility rules for the UDP message protocol 2019-07-18 20:30:48 +01:00
Bill Somerville a9fd073023
Squash a compiler warning 2019-07-03 00:15:48 +01:00