<html>
  <head>

    <meta http-equiv="content-type" content="text/html; charset=UTF-8">
  </head>
  <body>
    <tt>Hi All,</tt><tt><br>
    </tt><tt><br>
    </tt><tt>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.  <br>
      <br>
      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.<br>
      <br>
      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.  <br>
      <br>
      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.<br>
      <br>
      Here are the diffs for each file:<br>
      <br>
      <br>
      Firmware Diff based on Hermes-v3.3 code:<br>
      <br>
      2248c2248,2250<br>
      < 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<br>
      ---<br>
      > assign FPGA_PTT = (IF_Rx_ctrl_0[0] | clean_PTT_in); //
      IF_Rx_ctrl_0 only updated when we get correct sync sequence. <br>
      > <br>
      > //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<br>
      <br>
      <br>
      PowerSDR console.cs Diff based on PowerSDR OpenHPSDR mRx PS v
      3.5.0(11/9/19):<br>
      <br>
      33099c33099<br>
      <                     cw_ptt = CWInput.KeyerPTT;<br>
      ---<br>
      >              //w3sz       cw_ptt = CWInput.KeyerPTT;<br>
      33123c33123<br>
      <                             current_ptt_mode = PTTMode.CW;<br>
      ---<br>
      >                             current_ptt_mode = PTTMode.NONE;<br>
      33125,33130c33125,33132<br>
      <                             chkMOX.Checked = true;<br>
      <                             if (!mox)<br>
      <                             {<br>
      <                                 chkPower.Checked = false;<br>
      <                                 return;<br>
      <                             }<br>
      ---<br>
      >                         //w3sz    current_ptt_mode =
      PTTMode.CW;<br>
      > <br>
      >                      //w3sz       chkMOX.Checked = true;<br>
      >                     //w3sz        if (!mox)<br>
      >                     //w3sz        {<br>
      >                     //w3sz            chkPower.Checked =
      false;<br>
      >                     //w3sz            return;<br>
      >                     //w3sz        }<br>
      33198c33200<br>
      <                                     chkMOX.Checked = false;<br>
      ---<br>
      >                   //w3sz                  chkMOX.Checked =
      false;<br>
      <br>
      <br>
      PowerSDR titlebar.cs </tt><tt><tt>Diff based on PowerSDR
        OpenHPSDR mRx PS v 3.5.0(11/9/19):<br>
        <br>
      </tt>43c43<br>
      <             string s = "PowerSDR™ OpenHPSDR";<br>
      ---<br>
      >             string s = "PowerSDR™ OpenHPSDR -NO CW PTT- ";<br>
      <br>
      <br>
      -----------------------------------<br>
      <br>
      73,<br>
      <br>
      Roger Rehr<br>
      W3SZ<br>
    </tt>
    <pre style="white-space: pre-wrap; color: rgb(0, 0, 0); font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; orphans: 2; text-align: start; text-indent: 0px; text-transform: none; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration-style: initial; text-decoration-color: initial;">

><i> On May 26, 2017, at 3:07 PM, Bill Beam <<a href="http://lists.openhpsdr.org/listinfo.cgi/hpsdr-openhpsdr.org">wbeam at gci.net</a>> wrote:
</i>><i> 
</i>><i> To be more specific:
</i>><i> There is a check box to enable semi break in.  It has no effect.
</i>><i> The program is stuck with break in always enabled.
</i>><i> This appears to be an issue with PowerSDR.
</i>><i> 73, NL7F
</i>><i> 
</i>><i> On Thu, 25 May 2017 18:37:39 -0800, Bill Beam wrote:
</i>><i> 
</i>>><i> The point made was that it is not possible to disable CW break-in. Whenever paddle is touched the rig
</i>>><i> goes into transmit. PTT functions do work OK.
</i>><i> 
</i>>><i> 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.
</i>><i> 
</i>>><i> 73, NL7F
</i>><i> </i></pre>
  </body>
</html>