[wsjt-devel] R: Re: wsjtx-1.4.0-rc4-Darwin Rig Control Error

2015-03-14 Thread Franco

Hello Bill Franco politely ask if the version for windows to let the cat test 
so that we can give reports.

there is a compatibility list of the various models I own a Yaesu FT DX 3000
problems and cat Fake lt
  ditto with Icom 756pro3

Congratulations to the whole group developers are doing a great job

I wanted to alert you to a problem when you install various versions
  * * .txt files .adi replaced size zero so the log is lost

  folder
C: \ Users \ to \ AppData \ Local \ WSJT-X

73 Franco

excuse translation google

 
Ogg: Re: [wsjt-devel] wsjtx-1.4.0-rc4-Darwin Rig Control Error

On 13/03/2015 21:34, William Wuttke wrote:

Hi William,

CC'ing to John as he looks after Mac support for the WSJT programs.

Sorry you are having issues with the WSJT-X v1.4.0-rc4 beta release. So 
I can see what is going wrong, here is an instrumented version of WSJT-X:

https://dl.dropboxusercontent.com/u/4192709/wsjtx-1.4.0-rc4-Darwin-CAT-trace.
dmg

There is no need to install it, just run it directly from the installer 
DMG. Please run the following test:

1) Start the application,
2) Change band using the WSJT-X band drop down menu,
3) When the error occurs, click Cancel to exit the application.

The run will have created a trace log file:

$TMPDIR/WSJT-X_trace.log

 


--
Dive into the World of Parallel Programming The Go Parallel Website, sponsored
by Intel and developed in partnership with Slashdot Media, is your hub for all
things parallel software development, from weekly thought leadership blogs to
news, videos, case studies, tutorials and more. Take a look and join the 
conversation now. http://goparallel.sourceforge.net/
___
wsjt-devel mailing list
wsjt-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wsjt-devel


Re: [wsjt-devel] R: Re: wsjtx-1.4.0-rc4-Darwin Rig Control Error

2015-03-14 Thread Bill Somerville
On 14/03/2015 22:00, Franco wrote:

Hi Franco,
 Hello Bill Franco politely ask if the version for windows to let the cat test
 so that we can give reports.
I will reply to that off list a little later.

 there is a compatibility list of the various models I own a Yaesu FT DX 3000
 problems and cat Fake lt
ditto with Icom 756pro3

 Congratulations to the whole group developers are doing a great job

 I wanted to alert you to a problem when you install various versions
* * .txt files .adi replaced size zero so the log is lost
Your old log files are not lost, you need to move the old log files to 
the new folder. If you have made new QSOs then you must merge the log 
files together.

folder
 C: \ Users \ to \ AppData \ Local \ WSJT-X

 73 Franco

 excuse translation google
73
Bill
G4WJS.

   
 Ogg: Re: [wsjt-devel] wsjtx-1.4.0-rc4-Darwin Rig Control Error

 On 13/03/2015 21:34, William Wuttke wrote:

 Hi William,

 CC'ing to John as he looks after Mac support for the WSJT programs.

 Sorry you are having issues with the WSJT-X v1.4.0-rc4 beta release. So
 I can see what is going wrong, here is an instrumented version of WSJT-X:

 https://dl.dropboxusercontent.com/u/4192709/wsjtx-1.4.0-rc4-Darwin-CAT-trace.
 dmg
 There is no need to install it, just run it directly from the installer
 DMG. Please run the following test:

 1) Start the application,
 2) Change band using the WSJT-X band drop down menu,
 3) When the error occurs, click Cancel to exit the application.

 The run will have created a trace log file:

 $TMPDIR/WSJT-X_trace.log

   


 --
 Dive into the World of Parallel Programming The Go Parallel Website, sponsored
 by Intel and developed in partnership with Slashdot Media, is your hub for all
 things parallel software development, from weekly thought leadership blogs to
 news, videos, case studies, tutorials and more. Take a look and join the
 conversation now. http://goparallel.sourceforge.net/
 ___
 wsjt-devel mailing list
 wsjt-devel@lists.sourceforge.net
 https://lists.sourceforge.net/lists/listinfo/wsjt-devel


--
Dive into the World of Parallel Programming The Go Parallel Website, sponsored
by Intel and developed in partnership with Slashdot Media, is your hub for all
things parallel software development, from weekly thought leadership blogs to
news, videos, case studies, tutorials and more. Take a look and join the 
conversation now. http://goparallel.sourceforge.net/
___
wsjt-devel mailing list
wsjt-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wsjt-devel


Re: [wsjt-devel] WSJT-X: automatic processing of received messages enhancements

2015-03-14 Thread Bill Somerville
On 14/03/2015 21:14, Michael Black wrote:

Thanks for spotting that Mike.

73
Bill
G4WJS.

--
Dive into the World of Parallel Programming The Go Parallel Website, sponsored
by Intel and developed in partnership with Slashdot Media, is your hub for all
things parallel software development, from weekly thought leadership blogs to
news, videos, case studies, tutorials and more. Take a look and join the 
conversation now. http://goparallel.sourceforge.net/
___
wsjt-devel mailing list
wsjt-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wsjt-devel


Re: [wsjt-devel] CQ 000

2015-03-14 Thread Bob McCormick W1QA
John G4KLA mentioned:

 I see CQ 000 for some of the same stations that Mike reported:
 IW1ARK, VA3MJR, GW3UOF for example.   ALL.TXT goes back 
 to Oct 14.   First occurrence of CQ 000 on Feb 4.  All CQ 000 are 
 for JT65 decodes - none seen for JT9 but there are many fewer 
 JT9 decodes compared to JT65.

I too have seen quite a bit of these - I don't think I've worked any of the
stations that were calling CQ 000 ...

Here's the calls that I've seen with this in March 2015:
IW1ARK  DF9FP  RX4CG  IK8UHA  WA3MEZ  G6CHD  UN5J

I'm running 1.5 ... and I don't recall whether I saw this with 1.4.  

Bob W1QA


--
Dive into the World of Parallel Programming The Go Parallel Website, sponsored
by Intel and developed in partnership with Slashdot Media, is your hub for all
things parallel software development, from weekly thought leadership blogs to
news, videos, case studies, tutorials and more. Take a look and join the 
conversation now. http://goparallel.sourceforge.net/
___
wsjt-devel mailing list
wsjt-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wsjt-devel


Re: [wsjt-devel] WSJT-X: automatic processing of received messagesenhancements

2015-03-14 Thread richard stanley

I have had several qso's this evening using 5056 both calling cq and 
answering cq calls and the double clicking the sent text for a reply worked 
fine as did the log input but all calls were standard calls.

The 1 thing I noticed was I started to call cq but got distracted a station 
replied and I never noticed, while tx was still enabled it did not send a 
2nd cq it waited for me to reply so it missed a minute, normally it would 
continue to call cq, I noticed after the station called me twice and the qso 
went ahead as normal.

Richard m0clz

-Original Message- 
From: Bill Somerville
Sent: Saturday, March 14, 2015 7:26 PM
To: WSJT software development
Subject: [wsjt-devel] WSJT-X: automatic processing of received 
messagesenhancements

Hi All,

I have just committed the second phase of my changes related to compound
callsigns to the development branch. Here is the commit message:


r5055 | bsomervi | 2015-03-14 19:13:18 + (Sat, 14 Mar 2015) | 21 lines

Improved automatic message handling

More consistent and accurate processing of compund callsigns including
recognizing the  user's call  in both base  and fully  qualified form,
extracting reports  from special type  one and type two  compound call
messages.  Ensure that  CQ DX  message prefixes  are recognized and
processd correctly.

The  cycle of  double  clicking through  a QSO  has  been enhanced to
recognoize the  standard messages correctly  and use the  correct next
message. The automatic  transmission button Enable Tx  now does what
it says and does not double as a stop transmit button. This allows the
current transmission  to complete  even if the  automatic transmission
feature is  disabled. In line with  this the stop sending  after a 73
message is sent  feature turns off the  automatic transmission enable
at the start of the sending of  a 73 message and also the next message
is now set up as the CQ  message automatically in this scenario.  A 73
message is now  either a standard message containing the  word 73 or
any free text  message containing 73 (not necessarily  as a distinct
word).



This change is a fairly radical reworking of the way incoming messages
are parsed and the actions taken when messages are double clicked in the
activity windows. It should handle QSOs by and with compound callsign
holders far better than previously and has other benefits for all QSO types.

I strongly recommend that testers experiment with using double clicks in
the activity to progress their QSOs and report back any incorrect
behaviour of the application.

With these changes I find that having the settings Double-click on call
sets Tx enable and Disable Tx after sending 73 both checked makes the
QSO process extremely smooth using just double-clicks on calls and
responses, only having to revert to specific clicks and typing when I
want to send a free text message or if my QSO partner sends an out of
sequence message.

If you are testing these changes; please double check that, when you
come to log the QSO, the callsign, the report sent and received have
been correctly transferred to the Log QSO pop up dialog.

73
Bill
G4WJS.

--
Dive into the World of Parallel Programming The Go Parallel Website, 
sponsored
by Intel and developed in partnership with Slashdot Media, is your hub for 
all
things parallel software development, from weekly thought leadership blogs 
to
news, videos, case studies, tutorials and more. Take a look and join the
conversation now. http://goparallel.sourceforge.net/
___
wsjt-devel mailing list
wsjt-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wsjt-devel


-
No virus found in this message.
Checked by AVG - www.avg.com
Version: 2015.0.5751 / Virus Database: 4306/9299 - Release Date: 03/14/15 


--
Dive into the World of Parallel Programming The Go Parallel Website, sponsored
by Intel and developed in partnership with Slashdot Media, is your hub for all
things parallel software development, from weekly thought leadership blogs to
news, videos, case studies, tutorials and more. Take a look and join the 
conversation now. http://goparallel.sourceforge.net/
___
wsjt-devel mailing list
wsjt-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wsjt-devel


Re: [wsjt-devel] UDP Server

2015-03-14 Thread Bill Somerville

Hi again Mike,

related to this I have my new processing of decoded messages changes 
ready for commit. I was testing them but I have done enough to justify 
committing them to the development branch.


They are going to collide with your UDP receiver changes so I will 
commit them now, you probably want to update now before you get too 
involved in changing mainwindow.cpp otherwise the eventual merge is 
going to be complex.


I will commit in a few minutes.

73
Bill
G4WJS.

On 14/03/2015 15:08, Bill Somerville wrote:

Hi Mike,

I did note your comments on the Hamapps list related to this.

First off it would help to have a clear idea of what remote control 
features you are considering. I ask because the way that the activity 
windows are currently implemented may not be very amenable what you 
might wish to do.


With respect to processing incoming UDP datagrams, you have two 
choices, either asynchronous or synchronous. You might choose 
synchronous is there is likely to be long running activity as a result 
of receiving a datagram. In the synchronous case you would need to 
have a thread available and bind the UDP socket in that thread so that 
any activity does not block the GUI thread.


The asynchronous approach is normally harder to implement but Qt 
actually makes it the easiest and most natural approach. You bind the 
UDP socket in the main GUI thread and connect the readReady signal to 
a suitable slot. In that slot you process the incoming datagrams. The 
signal will only be emitted when there is a pending UDP datagram 
awaiting processing. Just be sure that slot that handles the readReady 
signal does not block. The BIG advantage of asynchronous processing is 
that it is thread safe since everything runs in the main thread.


Your doCall mechanism is duplicating what Qt does for you already when 
it emits the readReady signal.


Beware reading strings from a socket, sockets are byte oriented and 
the QString class is unicode, you need to define a protocol for the on 
the wire transfer - utf8 for strings is usually good ASCII may be 
acceptable - and translate as necessary.


Looks to me like you are attempting to receive a decoded message and 
trigger a double click on that message, you may find it easier to 
receive a callsign+DF pair and search for that in the activity list.


You should be starting with a protocol and defined messages that 
WSJT-X is willing to accept. Seems to me that you are starting with an 
implementation perhaps without thinking through how it is going to 
work for the user.


HTH
73
Bill
G4WJS.

On 14/03/2015 14:40, Michael Black wrote:

After some communication with Laurie on JTAlert we have started down the
path of integrating WSJT-X a bit more.

The idea is that WSJT-X should have a UDPServer that can receive commands to
do things so, for example, one could double-click on a JTAlert entry and it
could command WSJT-X to do its thing.

To this end I started coding one but am having QT class problems that are
befuddling me and was hoping someone (Bill?) could assist.
So far this implementation is intended to just take a CQ decoded message
and put it in the Rx Frequency window.  Then I was going to add the
double-click action once the first was working and stable.

I got this somewhat working but debugging complained about sending signals
when I just threaded a function inside then mainwindow.cpp plus gui stuff
isn't thread safe.
So I made the udp server a separate class and started trying slots/signals.
But now connecting the slot/signal burps on compiling and I can't quite
figure out the magic incantation to make it happy.

This is the line it complains about on MainWindow::doCall
   connect(m_UDPServer,UDPServer::on_doCall,this,MainWindow::doCall);
doCall is declared as a public slot in mainwindow.h and defined in
mainwindow.cpp


C:/JTSDK/qt5/5.2.1/mingw48_32/include/QtCore/qobject.h: In instantiation of
'static QMetaObject::Connection QObject::connect(const type
name QtPrivate::FunctionPointerFunc::Object*, Func1, const typename
QtPrivate::FunctionPointerFunc2::Object*, Func2, Qt::Connection
Type) [with Func1 = void (UDPServer::*)(DecodedText); Func2 = void
(MainWindow::*)(DecodedText); typename QtPrivate::FunctionPointerFu
nc::Object = UDPServer; typename QtPrivate::FunctionPointerFunc2::Object
= MainWindow]':
C:\JTSDK\src\wsjtx\mainwindow.cpp:461:69:   required from here
C:/JTSDK/qt5/5.2.1/mingw48_32/include/QtCore/qobject.h:222:9: error: static
assertion failed: No Q_OBJECT in the class with the signal
  Q_STATIC_ASSERT_X(QtPrivate::HasQ_OBJECT_Macrotypename
SignalType::Object::Value,
  ^

Here's a UDP client to work with it that just cycles through a few CQ
messages.  All being done on port 5001 right now.
https://www.dropbox.com/s/pp5z7nqrtdeug9a/UDPClient.exe?dl=0

Mike W9MDB


--
Dive into the World of Parallel Programming The Go Parallel Website, sponsored
by 

Re: [wsjt-devel] WSJT-X: automatic processing of received messages enhancements

2015-03-14 Thread Michael Black
Trivial patch to fix compiler warning about s1 initialization

Index: decodedtext.cpp
===
--- decodedtext.cpp (revision 5055)
+++ decodedtext.cpp (working copy)
@@ -5,7 +5,7 @@
 QString DecodedText::CQersCall()
 {
 // extract the CQer's call   TODO: does this work with all call
formats?
-  int s1;
+  int s1=0;
   int position;
   if ((position = _string.indexOf ( CQ DX )) = 0)
 {


-Original Message-
From: Bill Somerville [mailto:g4...@classdesign.com] 
Sent: Saturday, March 14, 2015 2:27 PM
To: WSJT software development
Subject: [wsjt-devel] WSJT-X: automatic processing of received messages
enhancements

Hi All,

I have just committed the second phase of my changes related to compound
callsigns to the development branch. Here is the commit message:


r5055 | bsomervi | 2015-03-14 19:13:18 + (Sat, 14 Mar 2015) | 21 lines

Improved automatic message handling

More consistent and accurate processing of compund callsigns including
recognizing the  user's call  in both base  and fully  qualified form,
extracting reports  from special type  one and type two  compound call
messages.  Ensure that  CQ DX  message prefixes  are recognized and
processd correctly.

The  cycle of  double  clicking through  a QSO  has  been enhanced to
recognoize the  standard messages correctly  and use the  correct next
message. The automatic  transmission button Enable Tx  now does what it
says and does not double as a stop transmit button. This allows the current
transmission  to complete  even if the  automatic transmission feature is
disabled. In line with  this the stop sending  after a 73 message is sent
feature turns off the  automatic transmission enable at the start of the
sending of  a 73 message and also the next message is now set up as the CQ
message automatically in this scenario.  A 73 message is now  either a
standard message containing the  word 73 or any free text  message
containing 73 (not necessarily  as a distinct word).



This change is a fairly radical reworking of the way incoming messages are
parsed and the actions taken when messages are double clicked in the
activity windows. It should handle QSOs by and with compound callsign
holders far better than previously and has other benefits for all QSO types.

I strongly recommend that testers experiment with using double clicks in the
activity to progress their QSOs and report back any incorrect behaviour of
the application.

With these changes I find that having the settings Double-click on call
sets Tx enable and Disable Tx after sending 73 both checked makes the QSO
process extremely smooth using just double-clicks on calls and responses,
only having to revert to specific clicks and typing when I want to send a
free text message or if my QSO partner sends an out of sequence message.

If you are testing these changes; please double check that, when you come to
log the QSO, the callsign, the report sent and received have been correctly
transferred to the Log QSO pop up dialog.

73
Bill
G4WJS.


--
Dive into the World of Parallel Programming The Go Parallel Website,
sponsored by Intel and developed in partnership with Slashdot Media, is your
hub for all things parallel software development, from weekly thought
leadership blogs to news, videos, case studies, tutorials and more. Take a
look and join the conversation now. http://goparallel.sourceforge.net/
___
wsjt-devel mailing list
wsjt-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wsjt-devel


--
Dive into the World of Parallel Programming The Go Parallel Website, sponsored
by Intel and developed in partnership with Slashdot Media, is your hub for all
things parallel software development, from weekly thought leadership blogs to
news, videos, case studies, tutorials and more. Take a look and join the 
conversation now. http://goparallel.sourceforge.net/
___
wsjt-devel mailing list
wsjt-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wsjt-devel


Re: [wsjt-devel] CQ 000

2015-03-14 Thread Michael Black
Turns out this is a bug with a recent JT65HF version.
Soon to be fixed we hope
Mike W9MDB

-Original Message-
From: Bob McCormick W1QA [mailto:e...@w1qa.com] 
Sent: Saturday, March 14, 2015 3:48 PM
To: 'WSJT software development'
Subject: Re: [wsjt-devel] CQ 000

John G4KLA mentioned:

 I see CQ 000 for some of the same stations that Mike reported:
 IW1ARK, VA3MJR, GW3UOF for example.   ALL.TXT goes back 
 to Oct 14.   First occurrence of CQ 000 on Feb 4.  All CQ 000 are 
 for JT65 decodes - none seen for JT9 but there are many fewer
 JT9 decodes compared to JT65.

I too have seen quite a bit of these - I don't think I've worked any of the
stations that were calling CQ 000 ...

Here's the calls that I've seen with this in March 2015:
IW1ARK  DF9FP  RX4CG  IK8UHA  WA3MEZ  G6CHD  UN5J

I'm running 1.5 ... and I don't recall whether I saw this with 1.4.  

Bob W1QA



--
Dive into the World of Parallel Programming The Go Parallel Website,
sponsored by Intel and developed in partnership with Slashdot Media, is your
hub for all things parallel software development, from weekly thought
leadership blogs to news, videos, case studies, tutorials and more. Take a
look and join the conversation now. http://goparallel.sourceforge.net/
___
wsjt-devel mailing list
wsjt-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wsjt-devel


--
Dive into the World of Parallel Programming The Go Parallel Website, sponsored
by Intel and developed in partnership with Slashdot Media, is your hub for all
things parallel software development, from weekly thought leadership blogs to
news, videos, case studies, tutorials and more. Take a look and join the 
conversation now. http://goparallel.sourceforge.net/
___
wsjt-devel mailing list
wsjt-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wsjt-devel


[wsjt-devel] DX Grid leftovers

2015-03-14 Thread Michael Black
DX Grid doesn't get cleared if you double-click on an entry that has no
grid.  Noticed this while debugging the udp server code.

 

The offsets from the diff are wrong on this patch (I'm in the middle of
other mods) but easy enough to find and fix.

Mike W9MDB

 

 

@@ -2027,12 +2030,12 @@

   // i.e. compound version of same base call

   ui-dxCallEntry-setText(hiscall);

 }

+  ui-dxGridEntry-setText();  // set empty in case we get no grid result

   if (gridOK(hisgrid))

 ui-dxGridEntry-setText(hisgrid);

   if (ui-dxGridEntry-text()==)

 lookup();

   m_hisGrid = ui-dxGridEntry-text();

-

   int n = decodedtext.timeInSeconds();

   int nmod=n%(m_TRperiod/30);

   m_txFirst=(nmod!=0);

 

--
Dive into the World of Parallel Programming The Go Parallel Website, sponsored
by Intel and developed in partnership with Slashdot Media, is your hub for all
things parallel software development, from weekly thought leadership blogs to
news, videos, case studies, tutorials and more. Take a look and join the 
conversation now. http://goparallel.sourceforge.net/___
wsjt-devel mailing list
wsjt-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wsjt-devel


[wsjt-devel] CALL3.TXT

2015-03-14 Thread Michael Black
I see there's an attempt to lookup grids if needed from call3.txt but no
such file seems to be included.

I assume it's the same CALL3.TXT that comes from HRD?

Is this an oversight or dead code?

 

Mike W9MDB

--
Dive into the World of Parallel Programming The Go Parallel Website, sponsored
by Intel and developed in partnership with Slashdot Media, is your hub for all
things parallel software development, from weekly thought leadership blogs to
news, videos, case studies, tutorials and more. Take a look and join the 
conversation now. http://goparallel.sourceforge.net/___
wsjt-devel mailing list
wsjt-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wsjt-devel


[wsjt-devel] wsjtx-1.4.0-rc4-Darwin Rig Control Error

2015-03-14 Thread William Wuttke
When changing bands - Rig Split operation enabled - Yaesu FT-DX1200 - use 
Hamlib FT-DX5000 settings on
a USB serial port 4800-8-1, No handshake, RTS enabled, USB mode, Poll interval 
2s.

I get the following error:

Rig Control Error

Hamlib error: Communication timed out while getting mode of split TX VFO

Retry OK.

The above rig setup has been working fine for me for a log time on v1.3, r3673.
--
Dive into the World of Parallel Programming The Go Parallel Website, sponsored
by Intel and developed in partnership with Slashdot Media, is your hub for all
things parallel software development, from weekly thought leadership blogs to
news, videos, case studies, tutorials and more. Take a look and join the 
conversation now. http://goparallel.sourceforge.net/
___
wsjt-devel mailing list
wsjt-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wsjt-devel


Re: [wsjt-devel] wsjtx-1.4.0-rc4-Darwin Rig Control Error

2015-03-14 Thread Joe Taylor
Please report your problem to Bill, G4WJS, who has handled most of the 
CAT control issues.  His email address is g4...@classdesign.com .

 -- 73, Joe, K1JT

On 3/13/2015 5:34 PM, William Wuttke wrote:
 When changing bands - Rig Split operation enabled - Yaesu FT-DX1200 - use 
 Hamlib FT-DX5000 settings on
 a USB serial port 4800-8-1, No handshake, RTS enabled, USB mode, Poll 
 interval 2s.

 I get the following error:

 Rig Control Error

 Hamlib error: Communication timed out while getting mode of split TX VFO

 Retry OK.

 The above rig setup has been working fine for me for a log time on v1.3, 
 r3673.
 --
 Dive into the World of Parallel Programming The Go Parallel Website, sponsored
 by Intel and developed in partnership with Slashdot Media, is your hub for all
 things parallel software development, from weekly thought leadership blogs to
 news, videos, case studies, tutorials and more. Take a look and join the
 conversation now. http://goparallel.sourceforge.net/
 ___
 wsjt-devel mailing list
 wsjt-devel@lists.sourceforge.net
 https://lists.sourceforge.net/lists/listinfo/wsjt-devel

--
Dive into the World of Parallel Programming The Go Parallel Website, sponsored
by Intel and developed in partnership with Slashdot Media, is your hub for all
things parallel software development, from weekly thought leadership blogs to
news, videos, case studies, tutorials and more. Take a look and join the 
conversation now. http://goparallel.sourceforge.net/
___
wsjt-devel mailing list
wsjt-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wsjt-devel


Re: [wsjt-devel] wsjtx-1.4.0-rc4-Darwin Rig Control Error

2015-03-14 Thread Bill Somerville
On 13/03/2015 21:34, William Wuttke wrote:

Hi William,

CC'ing to John as he looks after Mac support for the WSJT programs.

Sorry you are having issues with the WSJT-X v1.4.0-rc4 beta release. So 
I can see what is going wrong, here is an instrumented version of WSJT-X:

https://dl.dropboxusercontent.com/u/4192709/wsjtx-1.4.0-rc4-Darwin-CAT-trace.dmg

There is no need to install it, just run it directly from the installer 
DMG. Please run the following test:

1) Start the application,
2) Change band using the WSJT-X band drop down menu,
3) When the error occurs, click Cancel to exit the application.

The run will have created a trace log file:

$TMPDIR/WSJT-X_trace.log

please send me this file for analysis.
 When changing bands - Rig Split operation enabled - Yaesu FT-DX1200 - use 
 Hamlib FT-DX5000 settings on
 a USB serial port 4800-8-1, No handshake, RTS enabled, USB mode, Poll 
 interval 2s.

 I get the following error:

 Rig Control Error

 Hamlib error: Communication timed out while getting mode of split TX VFO

 Retry OK.

 The above rig setup has been working fine for me for a log time on v1.3, 
 r3673.

73
Bill
G4WJS.

--
Dive into the World of Parallel Programming The Go Parallel Website, sponsored
by Intel and developed in partnership with Slashdot Media, is your hub for all
things parallel software development, from weekly thought leadership blogs to
news, videos, case studies, tutorials and more. Take a look and join the 
conversation now. http://goparallel.sourceforge.net/
___
wsjt-devel mailing list
wsjt-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wsjt-devel


Re: [wsjt-devel] WSJT-X Version 1.4.0-rc4

2015-03-14 Thread Guy G4DWV/4X1LT
Bill Somerville g4wjs@... writes:

 What error message are you getting?
 
  Mni tnx,
 
  73 de Guy G4DWV/4X1LT
 
 73
 Bill
 G4WJS.

Hi Bill,

TS2000 support is broken wrt Flex rigs. TS-480 works FB. 
The error message is Hamlib error: IO error while opening connection to rig.

I am really looking forward to the 1.5 RC1 release. Hopefully, I will be
able to simultaneously decode JT65 and JT9 - I have spent ages trying to do
this with 1.3 and briefly with 1.4 RC4. Is there a known issue in this
regard? Sri to wonder OT.

Regards

Guy G4DWV/4X1LT


--
Dive into the World of Parallel Programming The Go Parallel Website, sponsored
by Intel and developed in partnership with Slashdot Media, is your hub for all
things parallel software development, from weekly thought leadership blogs to
news, videos, case studies, tutorials and more. Take a look and join the 
conversation now. http://goparallel.sourceforge.net/
___
wsjt-devel mailing list
wsjt-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wsjt-devel


[wsjt-devel] UDP Server

2015-03-14 Thread Michael Black
After some communication with Laurie on JTAlert we have started down the
path of integrating WSJT-X a bit more.

The idea is that WSJT-X should have a UDPServer that can receive commands to
do things so, for example, one could double-click on a JTAlert entry and it
could command WSJT-X to do its thing.

To this end I started coding one but am having QT class problems that are
befuddling me and was hoping someone (Bill?) could assist.
So far this implementation is intended to just take a CQ decoded message
and put it in the Rx Frequency window.  Then I was going to add the
double-click action once the first was working and stable.

I got this somewhat working but debugging complained about sending signals
when I just threaded a function inside then mainwindow.cpp plus gui stuff
isn't thread safe.
So I made the udp server a separate class and started trying slots/signals.
But now connecting the slot/signal burps on compiling and I can't quite
figure out the magic incantation to make it happy.

This is the line it complains about on MainWindow::doCall
  connect(m_UDPServer,UDPServer::on_doCall,this,MainWindow::doCall);
doCall is declared as a public slot in mainwindow.h and defined in
mainwindow.cpp


C:/JTSDK/qt5/5.2.1/mingw48_32/include/QtCore/qobject.h: In instantiation of
'static QMetaObject::Connection QObject::connect(const type
name QtPrivate::FunctionPointerFunc::Object*, Func1, const typename
QtPrivate::FunctionPointerFunc2::Object*, Func2, Qt::Connection
Type) [with Func1 = void (UDPServer::*)(DecodedText); Func2 = void
(MainWindow::*)(DecodedText); typename QtPrivate::FunctionPointerFu
nc::Object = UDPServer; typename QtPrivate::FunctionPointerFunc2::Object
= MainWindow]':
C:\JTSDK\src\wsjtx\mainwindow.cpp:461:69:   required from here
C:/JTSDK/qt5/5.2.1/mingw48_32/include/QtCore/qobject.h:222:9: error: static
assertion failed: No Q_OBJECT in the class with the signal
 Q_STATIC_ASSERT_X(QtPrivate::HasQ_OBJECT_Macrotypename
SignalType::Object::Value,
 ^

Here's a UDP client to work with it that just cycles through a few CQ
messages.  All being done on port 5001 right now.
https://www.dropbox.com/s/pp5z7nqrtdeug9a/UDPClient.exe?dl=0

Mike W9MDB
#include QUdpSocket
#include QHostInfo
#include UDPServer.h

UDPServer::UDPServer() {
  m_kill = false;
}

UDPServer::~UDPServer() {
  m_kill = true;
}

void UDPServer::stop() {
  m_kill = true;
}

void UDPServer::start() 
{
  udpSocket = new QUdpSocket(this);
  udpSocket-bind(QHostAddress::Any,5001);
  while(!m_kill) {
while(udpSocket-hasPendingDatagrams()) {
  QByteArray datagram;
  datagram.resize(udpSocket-pendingDatagramSize());
  QHostAddress sender;
  quint16 senderPort;
  
udpSocket-readDatagram(datagram.data(),datagram.size(),sender,senderPort);
  QString calltext(datagram);
  //doubleClickOnCall(false,false,calltext);
  DecodedText decodedtext;
  decodedtext = calltext;
  emit on_doCall(decodedtext);
}
  }
  QThread::msleep(100);
}

#ifndef UDPSERVER_h
#define UDPSERVER_h
#include QTWidgets
#include decodedtext.h

class UDPServer: public QObject
{
private:
  QUdpSocket *udpSocket;
  int m_kill;

public:
  UDPServer();
  ~UDPServer();
  void start();

signals:
  void on_doCall(DecodedText decodedtext);

public slots:
  void stop();


};

#endif // UDPSERVER_H


udpserver.diff
Description: Binary data
--
Dive into the World of Parallel Programming The Go Parallel Website, sponsored
by Intel and developed in partnership with Slashdot Media, is your hub for all
things parallel software development, from weekly thought leadership blogs to
news, videos, case studies, tutorials and more. Take a look and join the 
conversation now. http://goparallel.sourceforge.net/___
wsjt-devel mailing list
wsjt-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wsjt-devel


Re: [wsjt-devel] WSJT-X Version 1.4.0-rc4

2015-03-14 Thread Bill Somerville
On 14/03/2015 14:47, Guy G4DWV/4X1LT wrote:
 Bill Somerville g4wjs@... writes:

 What error message are you getting?
 Mni tnx,

 73 de Guy G4DWV/4X1LT

 73
 Bill
 G4WJS.
 Hi Bill,
Hi Guy,

 TS2000 support is broken wrt Flex rigs. TS-480 works FB.
 The error message is Hamlib error: IO error while opening connection to rig.

 I am really looking forward to the 1.5 RC1 release. Hopefully, I will be
 able to simultaneously decode JT65 and JT9 - I have spent ages trying to do
 this with 1.3 and briefly with 1.4 RC4. Is there a known issue in this
 regard? Sri to wonder OT.
See my reply to your other message off list.

 Regards

 Guy G4DWV/4X1LT
73
Bill
G4WJS.

--
Dive into the World of Parallel Programming The Go Parallel Website, sponsored
by Intel and developed in partnership with Slashdot Media, is your hub for all
things parallel software development, from weekly thought leadership blogs to
news, videos, case studies, tutorials and more. Take a look and join the 
conversation now. http://goparallel.sourceforge.net/
___
wsjt-devel mailing list
wsjt-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wsjt-devel


Re: [wsjt-devel] UDP Server

2015-03-14 Thread Bill Somerville

Hi Mike,

I did note your comments on the Hamapps list related to this.

First off it would help to have a clear idea of what remote control 
features you are considering. I ask because the way that the activity 
windows are currently implemented may not be very amenable what you 
might wish to do.


With respect to processing incoming UDP datagrams, you have two choices, 
either asynchronous or synchronous. You might choose synchronous is 
there is likely to be long running activity as a result of receiving a 
datagram. In the synchronous case you would need to have a thread 
available and bind the UDP socket in that thread so that any activity 
does not block the GUI thread.


The asynchronous approach is normally harder to implement but Qt 
actually makes it the easiest and most natural approach. You bind the 
UDP socket in the main GUI thread and connect the readReady signal to a 
suitable slot. In that slot you process the incoming datagrams. The 
signal will only be emitted when there is a pending UDP datagram 
awaiting processing. Just be sure that slot that handles the readReady 
signal does not block. The BIG advantage of asynchronous processing is 
that it is thread safe since everything runs in the main thread.


Your doCall mechanism is duplicating what Qt does for you already when 
it emits the readReady signal.


Beware reading strings from a socket, sockets are byte oriented and the 
QString class is unicode, you need to define a protocol for the on the 
wire transfer - utf8 for strings is usually good ASCII may be acceptable 
- and translate as necessary.


Looks to me like you are attempting to receive a decoded message and 
trigger a double click on that message, you may find it easier to 
receive a callsign+DF pair and search for that in the activity list.


You should be starting with a protocol and defined messages that WSJT-X 
is willing to accept. Seems to me that you are starting with an 
implementation perhaps without thinking through how it is going to work 
for the user.


HTH
73
Bill
G4WJS.

On 14/03/2015 14:40, Michael Black wrote:

After some communication with Laurie on JTAlert we have started down the
path of integrating WSJT-X a bit more.

The idea is that WSJT-X should have a UDPServer that can receive commands to
do things so, for example, one could double-click on a JTAlert entry and it
could command WSJT-X to do its thing.

To this end I started coding one but am having QT class problems that are
befuddling me and was hoping someone (Bill?) could assist.
So far this implementation is intended to just take a CQ decoded message
and put it in the Rx Frequency window.  Then I was going to add the
double-click action once the first was working and stable.

I got this somewhat working but debugging complained about sending signals
when I just threaded a function inside then mainwindow.cpp plus gui stuff
isn't thread safe.
So I made the udp server a separate class and started trying slots/signals.
But now connecting the slot/signal burps on compiling and I can't quite
figure out the magic incantation to make it happy.

This is the line it complains about on MainWindow::doCall
   connect(m_UDPServer,UDPServer::on_doCall,this,MainWindow::doCall);
doCall is declared as a public slot in mainwindow.h and defined in
mainwindow.cpp


C:/JTSDK/qt5/5.2.1/mingw48_32/include/QtCore/qobject.h: In instantiation of
'static QMetaObject::Connection QObject::connect(const type
name QtPrivate::FunctionPointerFunc::Object*, Func1, const typename
QtPrivate::FunctionPointerFunc2::Object*, Func2, Qt::Connection
Type) [with Func1 = void (UDPServer::*)(DecodedText); Func2 = void
(MainWindow::*)(DecodedText); typename QtPrivate::FunctionPointerFu
nc::Object = UDPServer; typename QtPrivate::FunctionPointerFunc2::Object
= MainWindow]':
C:\JTSDK\src\wsjtx\mainwindow.cpp:461:69:   required from here
C:/JTSDK/qt5/5.2.1/mingw48_32/include/QtCore/qobject.h:222:9: error: static
assertion failed: No Q_OBJECT in the class with the signal
  Q_STATIC_ASSERT_X(QtPrivate::HasQ_OBJECT_Macrotypename
SignalType::Object::Value,
  ^

Here's a UDP client to work with it that just cycles through a few CQ
messages.  All being done on port 5001 right now.
https://www.dropbox.com/s/pp5z7nqrtdeug9a/UDPClient.exe?dl=0

Mike W9MDB


--
Dive into the World of Parallel Programming The Go Parallel Website, sponsored
by Intel and developed in partnership with Slashdot Media, is your hub for all
things parallel software development, from weekly thought leadership blogs to
news, videos, case studies, tutorials and more. Take a look and join the
conversation now. http://goparallel.sourceforge.net/


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


--
Dive 

Re: [wsjt-devel] UDP Server

2015-03-14 Thread Michael Black
I am trying to figure out the best way to do this.  I had tried and was
successful on using readyReady but now that I think of it I had it in a
separate thread and that's not needed.

I'll go back and try that again as that is a lot more intuitive.

 

I can ultimately see controlling all button clicks and such..just wanted to
start with the obvious one which is Hey WSJT-X.here's a CQ message..do your
thing.

I was concerned a bit about using the activity list since there's been
discussion on when things should get cleared.so JTAlert might at some point
keep calls around after WSJT-X has cleared them giving bad behavior.

I figured handling an external CQ message was more like the result of
double-clicking a Band Activity entry so was trying to repeat the result and
if I put the CQ in the RX side I know it's there.

 

I'll play with it a bit and see what works.

 

Thanks.

Mike W9MDB

 

 

From: Bill Somerville [mailto:g4...@classdesign.com] 
Sent: Saturday, March 14, 2015 10:09 AM
To: wsjt-devel@lists.sourceforge.net
Subject: Re: [wsjt-devel] UDP Server

 

Hi Mike,

I did note your comments on the Hamapps list related to this.

First off it would help to have a clear idea of what remote control features
you are considering. I ask because the way that the activity windows are
currently implemented may not be very amenable what you might wish to do.

With respect to processing incoming UDP datagrams, you have two choices,
either asynchronous or synchronous. You might choose synchronous is there is
likely to be long running activity as a result of receiving a datagram. In
the synchronous case you would need to have a thread available and bind the
UDP socket in that thread so that any activity does not block the GUI
thread.

The asynchronous approach is normally harder to implement but Qt actually
makes it the easiest and most natural approach. You bind the UDP socket in
the main GUI thread and connect the readReady signal to a suitable slot. In
that slot you process the incoming datagrams. The signal will only be
emitted when there is a pending UDP datagram awaiting processing. Just be
sure that slot that handles the readReady signal does not block. The BIG
advantage of asynchronous processing is that it is thread safe since
everything runs in the main thread.

Your doCall mechanism is duplicating what Qt does for you already when it
emits the readReady signal.

Beware reading strings from a socket, sockets are byte oriented and the
QString class is unicode, you need to define a protocol for the on the wire
transfer - utf8 for strings is usually good ASCII may be acceptable - and
translate as necessary.

Looks to me like you are attempting to receive a decoded message and trigger
a double click on that message, you may find it easier to receive a
callsign+DF pair and search for that in the activity list.

You should be starting with a protocol and defined messages that WSJT-X is
willing to accept. Seems to me that you are starting with an implementation
perhaps without thinking through how it is going to work for the user.

HTH
73
Bill
G4WJS.

On 14/03/2015 14:40, Michael Black wrote:

After some communication with Laurie on JTAlert we have started down the
path of integrating WSJT-X a bit more.
 
The idea is that WSJT-X should have a UDPServer that can receive commands to
do things so, for example, one could double-click on a JTAlert entry and it
could command WSJT-X to do its thing.
 
To this end I started coding one but am having QT class problems that are
befuddling me and was hoping someone (Bill?) could assist.
So far this implementation is intended to just take a CQ decoded message
and put it in the Rx Frequency window.  Then I was going to add the
double-click action once the first was working and stable.
 
I got this somewhat working but debugging complained about sending signals
when I just threaded a function inside then mainwindow.cpp plus gui stuff
isn't thread safe.
So I made the udp server a separate class and started trying slots/signals.
But now connecting the slot/signal burps on compiling and I can't quite
figure out the magic incantation to make it happy.
 
This is the line it complains about on MainWindow::doCall
  connect(m_UDPServer,UDPServer::on_doCall,this,MainWindow::doCall);
doCall is declared as a public slot in mainwindow.h and defined in
mainwindow.cpp
 
 
C:/JTSDK/qt5/5.2.1/mingw48_32/include/QtCore/qobject.h: In instantiation of
'static QMetaObject::Connection QObject::connect(const type
name QtPrivate::FunctionPointerFunc::Object*, Func1, const typename
QtPrivate::FunctionPointerFunc2::Object*, Func2, Qt::Connection
Type) [with Func1 = void (UDPServer::*)(DecodedText); Func2 = void
(MainWindow::*)(DecodedText); typename QtPrivate::FunctionPointerFu
nc::Object = UDPServer; typename QtPrivate::FunctionPointerFunc2::Object
= MainWindow]':
C:\JTSDK\src\wsjtx\mainwindow.cpp:461:69:   required from here
C:/JTSDK/qt5/5.2.1/mingw48_32/include/QtCore/qobject.h:222:9: error: 

Re: [wsjt-devel] UDP Server

2015-03-14 Thread Bill Somerville
Hi All,

in case anyone is confused, in this thread all references by me to the 
readReady() Qt signal should be readyRead() as in QIODevice::readyRead().

I knew what I meant but not what I typed :(

73
Bill
G4WJS.

--
Dive into the World of Parallel Programming The Go Parallel Website, sponsored
by Intel and developed in partnership with Slashdot Media, is your hub for all
things parallel software development, from weekly thought leadership blogs to
news, videos, case studies, tutorials and more. Take a look and join the 
conversation now. http://goparallel.sourceforge.net/
___
wsjt-devel mailing list
wsjt-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wsjt-devel


Re: [wsjt-devel] UDP Server

2015-03-14 Thread Bill Somerville

On 14/03/2015 15:19, Michael Black wrote:
Hi Mike,


I am trying to figure out the best way to do this.  I had tried and 
was successful on using readyReady but now that I think of it I had it 
in a separate thread and that's not needed.


I'll go back and try that again as that is a lot more intuitive.

It takes a bit of practice to get used to the Qt asynchronous model. 
Once you get the hang of it you will see that it is an excellent way of 
handling multiple tasks in parallel without the complexities and hazards 
of multiple threads.


readReady in the main thread is the right way to go, stick with it ;)

The example here: http://doc.qt.io/qt-5/qudpsocket.html#details

has everything you need for processing incoming UDP datagrams. For 
Server you can safely read MainWindow if the processing of the 
datagrams (processTheDatagram()) doesn't block.


I can ultimately see controlling all button clicks and such….just 
wanted to start with the obvious one which is Hey WSJT-X…here's a CQ 
message….do your thing.



That's ambitious!


I was concerned a bit about using the activity list since there's been 
discussion on when things should get cleared…so JTAlert might at some 
point keep calls around after WSJT-X has cleared them giving bad behavior.



I would probably limit actions on activity to the last reported period.


I figured handling an external CQ message was more like the result of 
double-clicking a Band Activity entry so was trying to repeat the 
result and if I put the CQ in the RX side I know it's there.


OK, but for for now it might be best to limit the remote command to 
reply to a CQ from the station with callsign X and DF Y. This is 
probably the most useful remote command that JTAlert can utilize i.e. 
initiate a QSO from an alert.


I'll play with it a bit and see what works…

Thanks…

Mike W9MDB


73
Bill
G4WJS.


*From:*Bill Somerville [mailto:g4...@classdesign.com]
*Sent:* Saturday, March 14, 2015 10:09 AM
*To:* wsjt-devel@lists.sourceforge.net
*Subject:* Re: [wsjt-devel] UDP Server

Hi Mike,

I did note your comments on the Hamapps list related to this.

First off it would help to have a clear idea of what remote control 
features you are considering. I ask because the way that the activity 
windows are currently implemented may not be very amenable what you 
might wish to do.


With respect to processing incoming UDP datagrams, you have two 
choices, either asynchronous or synchronous. You might choose 
synchronous is there is likely to be long running activity as a result 
of receiving a datagram. In the synchronous case you would need to 
have a thread available and bind the UDP socket in that thread so that 
any activity does not block the GUI thread.


The asynchronous approach is normally harder to implement but Qt 
actually makes it the easiest and most natural approach. You bind the 
UDP socket in the main GUI thread and connect the readReady signal to 
a suitable slot. In that slot you process the incoming datagrams. The 
signal will only be emitted when there is a pending UDP datagram 
awaiting processing. Just be sure that slot that handles the readReady 
signal does not block. The BIG advantage of asynchronous processing is 
that it is thread safe since everything runs in the main thread.


Your doCall mechanism is duplicating what Qt does for you already when 
it emits the readReady signal.


Beware reading strings from a socket, sockets are byte oriented and 
the QString class is unicode, you need to define a protocol for the on 
the wire transfer - utf8 for strings is usually good ASCII may be 
acceptable - and translate as necessary.


Looks to me like you are attempting to receive a decoded message and 
trigger a double click on that message, you may find it easier to 
receive a callsign+DF pair and search for that in the activity list.


You should be starting with a protocol and defined messages that 
WSJT-X is willing to accept. Seems to me that you are starting with an 
implementation perhaps without thinking through how it is going to 
work for the user.


HTH
73
Bill
G4WJS.

On 14/03/2015 14:40, Michael Black wrote:

After some communication with Laurie on JTAlert we have started down the

path of integrating WSJT-X a bit more.

  


The idea is that WSJT-X should have a UDPServer that can receive commands to

do things so, for example, one could double-click on a JTAlert entry and it

could command WSJT-X to do its thing.

  


To this end I started coding one but am having QT class problems that are

befuddling me and was hoping someone (Bill?) could assist.

So far this implementation is intended to just take a CQ decoded message

and put it in the Rx Frequency window.  Then I was going to add the

double-click action once the first was working and stable.

  


I got this somewhat working but debugging complained about sending signals

when I just threaded a function inside then mainwindow.cpp