Although the original Raduino v 1.01 sketch included a CW mode I wasn't pleased with the signal produced from the side tone insertion into audio. Even when filtered to where it sounded acceptable there were multiple artifacts accompanying the tone. Since I like a 700 Hz tone there were three additional harmonics spread across the spectrum within the 2.8 KHz spectrum. These are attenuated by the degree of filtering but unless I used active filtering they were quite evident. Additionally, there was the suppressed carrier and the opposite side band both showing at several milliwatts. All this would not be detectable if my signal was quite weak, but there are many times when nearby stations will be annoyed by these “companions”.
I decided to use the CLK1 output of the Raduino module (P3 pin 11) inserted, at operating frequency, into the RF Power Amplifier predriver (Q13). I used a 470 ohm resistor soldered to C132 (either side, CLK1 has a blocking capacitor) fed with a shielded RG-174/u cable. I grounded the shield at the synthesizer at P3 pin 12 but left the other end open, dressed back ½” , and covered with tubing. The 470 ohm resistor throttled the CW output to 5 watts. If you want to chance it, a 220 ohm resistor at that point will output 10 watts. I prefer 5.
The T/R relays are keyed by placing a 2N7000 NMOS transistor from ground to the PTT pin on the microphone jack. Source to ground, Drain to PTT, and Gate to P3 pin 1 of the Raduino.
Another 2N7000 is placed across R44, the base of Q4 to ground. Source to ground, Drain to the base side of R44, and the Gate tied directly to the gate on the 2N7000 T/R driver that was just installed. This transistor disables the post-mixer transmit buffer in order to eliminate the remaining carrier and anything coming in from the microphone.
The result is a clean and clear CW tone.
I found that I could enable CLK1 output by just loading the output frequency into its register using the “set_freq() function.. Disabling it is done with the “output_enable()” function. This is what I used to key the CW carrier on and off.
In my software I use a side tone that matches my transmit offset. A 700 Hz offset will produce a 700 Hz side tone, making it easy to spot my transmit signal in the receiver. This side tone appears on P3 pin 2 on my build and is injected into the speaker jack through a 1 uF capacitor. Those users who have chosen to remove C113 from the audio output amplifier can use that capacitor: Just lay it on top of the jack and solder one end to the “tip” connector pin (the brown wire). Want a different level? Then either change the capacitor to a different value or put a resistor in series with the 1 uF. Another variable resistor on the front panel, perhaps? On one build I glued a little cube-form 10 Kohm trim pot to one side of the earphone jack for a quick 'n easy sidetone level adjustment.
The CW routine is called by just hitting the key. The relays are operated and the fun begins.
I wrote a primitive little iambic keyer routine and placed it in a “while” loop. The structure is timed by a simple iterative count and jumps back out to normal operation after about one and a half seconds of inactivity. That is the “semi-break in” time out and is changeable in software to meet your needs. The key inputs are fed into P3; pin 3 for the dits, pin 4 for the dahs.
Speed is set by a simple pot with one side attached to +5 volts and the other to reference ground (just like the tuning control). I used a 10K pot but most any linear taper would work. The CW function reads the value and converts directly to Words Per Minute. The display shows the two-digit speed at the end of line 1 right after the frequency indicator on my program. I have it set for 10 to 34 WPM, pretty much my normal range. It can be changed to cover whatever range the operator would like by a couple of simple changes in the code. That code is still extremely short, small, and in simple Arduino.
I am not a person that shuns Straight Key mode, though. In fact, I rather prefer it. It is simple, understandable, and has character. Much like a persons' hand-written messages. An operator's fist is as distinctive as his call. And who can send CW slower than 10 WPM on a paddle?
With the sketches using the iambic keyer, turning the keyer speed control to less than 10 WPM replaces the speed indication with “SK” and directs the program flow to the straight key function. Again, after 1.5 seconds of no key closure, the BITX returns to receive.
The only glitch occurs if the straight key uses a 2-conductor plug or has the sleeve and ring conductors shorted and is plugged into the 3-conductor key jack. Do that and the Raduino sees it as a request for a “dash” from paddle. This is handled by reading the speed control. If the control is set for “SK” then all is well. Leave it on a keyer speed position with such a straight key plugged in then you can expect the BITX to start transmitting “ DAH DAH DAH...” until you realize your error.
Although I was initially worried about key clicks due to the fast rise time of the keying envelope I don't see much difference from my other CW rigs. My Icom 746pro is not bothered just 100 Hz away from the 50dB over S9 signal when using a 50Hz receive filter. No one I have worked notices a problem.