[hpsdr] Manual transmitter control on CW mode
Roger Rehr W3SZ
w3sz at comcast.net
Sat Sep 26 10:16:27 PDT 2020
Hi All,
This is a very belated answer to the problem of not being able to defeat
semi-break in CW in PowerSDR. Hopefully others will find it useful.
For a couple of months I have been using this solution with a Hermes
unit that I am using as an IF radio. The modification eliminates CW semi
break in.
I needed to do this for an EME installation where I am switching
sequentially several radios, TWT amplifier, two LNAs, two waveguide
switches, etc. Of course I have tried to make everything "failsafe"
with the sequencing but still it is much better to avoid inadvertent
brief activations of the transmit mode when the CW key is accidentally
bumped when the system is not in transmit mode.
The modified code works here as intended with no apparent problems.
However, I am not a coding expert, so there may be problems with the
code modifications that I made of which I am unaware. Also, there
likely are better ways of doing this. But since no answers / help
appeared here for Bill in the 3 years since the question was asked, and
since I needed the same solution, I did what I could and this is a
solution that works for me here.
I just made very simple modifications to the PowerSDR console.cs file
and to the Hermes firmware file. I also made a trivial modification to
titlebar.cs file so that I could tell at a glance whether or not I was
running the modified PowerSDR software. I use my installation only with
Hermes for CW and Digital EME so I can't comment on suitability for
other use conditions.
Here are the diffs for each file:
Firmware Diff based on Hermes-v3.3 code:
2248c2248,2250
< assign FPGA_PTT = (IF_Rx_ctrl_0[0] | CW_PTT | clean_PTT_in); //
IF_Rx_ctrl_0 only updated when we get correct sync sequence. CW_PTT is
used when internal CW is selected
---
> assign FPGA_PTT = (IF_Rx_ctrl_0[0] | clean_PTT_in); // IF_Rx_ctrl_0
only updated when we get correct sync sequence.
>
> //w3sz assign FPGA_PTT = (IF_Rx_ctrl_0[0] | CW_PTT | clean_PTT_in);
// IF_Rx_ctrl_0 only updated when we get correct sync sequence. CW_PTT
is used when internal CW is selected
PowerSDR console.cs Diff based on PowerSDR OpenHPSDR mRx PS v
3.5.0(11/9/19):
33099c33099
< cw_ptt = CWInput.KeyerPTT;
---
> //w3sz cw_ptt = CWInput.KeyerPTT;
33123c33123
< current_ptt_mode = PTTMode.CW;
---
> current_ptt_mode = PTTMode.NONE;
33125,33130c33125,33132
< chkMOX.Checked = true;
< if (!mox)
< {
< chkPower.Checked = false;
< return;
< }
---
> //w3sz current_ptt_mode = PTTMode.CW;
>
> //w3sz chkMOX.Checked = true;
> //w3sz if (!mox)
> //w3sz {
> //w3sz chkPower.Checked = false;
> //w3sz return;
> //w3sz }
33198c33200
< chkMOX.Checked = false;
---
> //w3sz chkMOX.Checked = false;
PowerSDR titlebar.cs Diff based on PowerSDR OpenHPSDR mRx PS v
3.5.0(11/9/19):
43c43
< string s = "PowerSDR™ OpenHPSDR";
---
> string s = "PowerSDR™ OpenHPSDR -NO CW PTT- ";
-----------------------------------
73,
Roger Rehr
W3SZ
>/On May 26, 2017, at 3:07 PM, Bill Beam <wbeam at gci.net
<http://lists.openhpsdr.org/listinfo.cgi/hpsdr-openhpsdr.org>> wrote: />//>/To be more specific: />/There is a check box to enable semi break in. It has no effect. />/The program is stuck with break in always enabled. />/This appears to be an issue with PowerSDR. />/73, NL7F />//>/On Thu, 25 May 2017 18:37:39 -0800, Bill Beam wrote: />//>>/The point made was that it is not possible to disable CW break-in.
Whenever paddle is touched the rig />>/goes into transmit. PTT functions do work OK. />//>>/I find this with my 200D, PowerSDR v 3.3.17, firmware 4.9. I am unable
to find a way to disable CW break-in. />//>>/73, NL7F />//
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.openhpsdr.org/pipermail/hpsdr-openhpsdr.org/attachments/20200926/c274a701/attachment.html>
More information about the Hpsdr
mailing list