BREAKING NEWS - new open source CW KEYER project that works great for iCW OPs

Skip to first unread message

Chuck Vaughn

Mar 25, 2021, 1:40:40 PMMar 25
to iCW - internet CW

see the above video for a 1st run test LIVE demo - after i just got it all put together...
     uses a
  TEENSY 4.0 USB board  and the arduino/teensy firmware 
    and the HASAK CW KEYER Firmware 

  this video shows it working with just PulseAudio...
     but since it shows up as a USB SOUND should
work for MAC and WIN10

Steven G. Steltzer

Mar 25, 2021, 2:25:01 PMMar 25
to Chuck Vaughn, 'joe living' via iCW - internet CW
Wow, that is one major undertaking they are into. Some great ideas there : full duplex QSK. Nice. 

Steve, WF3T


Mar 25, 2021, 3:14:56 PMMar 25
to iCW - internet CW

Im looking forward to following this project as they continue to develop it even further...

Chuck Broadwell W5UXH

Mar 25, 2021, 4:08:56 PMMar 25
Well, I never get along very well with Linux, but since it is not clear how I would do these two steps on MacOS:

3) Download into arduino/hardware/teensy/avr/cores
4) Download into arduino/hardware/teensy/avr/libraries/Audio

I went ahead and stumbled through with Ubuntu on the NUC system.  The sketch seems to have compiled error free on the first try (which was a surprise).

FYI:  On MacOS, the arduino hardware directory is not in a normal disk directory path like it is on Linux and Windows.  It is in the executable Arduino “package”.  I have no idea if it is appropriate or possible to add things inside the executable package, and an Arduino update would need to have this done again.  So I will continue with Linux, get my Teensy 4.0 out of the package it came in and see how much further I can get.

Chuck Vaughn

Mar 25, 2021, 5:14:53 PMMar 25
to iCW - internet CW
the Ctrl APP does have versions for mac and windows 10
this controls the cw keyer settings for many options like speed, pitch, rise/fall time, weight  et al.

 they both can run the same panel definition file as the linux version.


You received this message because you are subscribed to the Google Groups "iCW - internet CW" group.
To unsubscribe from this group and stop receiving emails from it, send an email to
To view this discussion on the web visit

Chuck Vaughn

Mar 25, 2021, 5:19:26 PMMar 25
to iCW - internet CW
This is the website tutorial i used to build the Arduino IDE 1.8.13 version, part of the Linux setup

Chuck Vaughn

Mar 25, 2021, 5:22:12 PMMar 25
to iCW - internet CW
ill send some of the help that the hasak keyer dev told me..

here is an early one...

FROM AD5DZ to me
You're getting there!  

The teensyduino stuff is done, it installed its extensions into arduino and you'll do the rest in arduino.

You can test that the Teensy stuff is installed in the Arduino "Tools > Boards" menu, it should list Teensyduino as an option.  

Open the Arduino "File > Open" menu and navigate to open .../hasak/hasak.ino

Open "Tools > Boards: ... > Teensyduino" and select "Teensy 4.0"

Open the "Tools > USB Type" menu and select "Serial + MIDI + Audio"

Plug in your Teensy and select "Sketch > Upload". 

There's also a button on the Arduino Icon Toolbar that will do Upload.

-- rec --

Chuck Vaughn

Mar 25, 2021, 5:23:58 PMMar 25
to iCW - internet CW
this was run a jumper on the teensy board between pin 20 and 22

Roger Critchlow via 

Mon, Mar 22, 3:31 PM (3 days ago)
to me
Sounds good.  The pins are listed in the, and in config.h, coming down the left hand side from the usb jack:

G ground
0 dah
1 dit
2 skey
3 ptt_sw
4 key_out
5 ptt_out
10 mqs_l
12 mqs_r

And you need a jumper between 20 and 22
 on the other side of the Teensy.

-- rec -

Chuck Vaughn

Mar 25, 2021, 5:31:36 PMMar 25
to iCW - internet CW
some more info is Roger's check list
Okay, so here are the steps again:

1) Download and install arduino-1.8.13 into arduino.
2) Download and install teensyduino-1.53 into arduino.
3) Download into arduino/hardware/teensy/avr/cores
4) Download into arduino/hardware/teensy/avr/libraries/Audio
5) Download into hasak
6) Open the Arduino IDE
>  7) Open the hask sketch in hasak/hasak.ino
>  8) Set the Tools > Board to Teensy 4.0
>  9) Set the Tools > USB Type to Serial+MIDI+Audio
>  10) Check that the Tools > Port has found the Teensy 4.0
>  11) Compile and upload the hasak keyer to the Teensy 4.0
>  12) Open the Arduino serial monitor and type s followed by newline.

I the serial monitor says:

 sample rate 44100.000000 buffer size 128
active 0 ies/ils/iws 66.0/200.0/466.0 ms
           total 2.227% 2.230%             isr 0.651% 0.654%         buffers 10 14

then you have the old cores and Audio, if it says:

 sample rate 48000.000000 buffer size 32
active 0 ies/ils/iws 66.0/200.0/466.0 ms
           total 3.406% 3.420%             isr 0.720% 0.719%         buffers  8 10

then you have the new cores and Audio.


Mar 26, 2021, 9:37:21 AMMar 26
to iCW - internet CW
Keying this TEENSY HASAK CW KEYER at QRQ SPEEDS using an external CW KEYER - THE mfj 451 AT 99 wpm top speed of the 451...results
were perfect      keying the STRAIGHT KEY LINE of the TEENSY 4.0    pin 4 to ground    using a simple FET OPTOisolator chip...
the FET OPTOisolator CHIP's voltage taken from the 3.3 volt source on the TEENSY 4.0 itself...   resistor from pos on FET diode to the 3.3 voltage source pin of the TEENSY
the mfj 451   KEY RIG RCA JACK output was keying the ground to the FET DIODE...and the TEENSY 4.0 was able to sample 
the STRAIGHT KEY line perfectly at the top qrq cw speed of the MFJ 451 -  99 WPM    every dit came out the perfect length of 12 ms

Chuck Vaughn

Mar 26, 2021, 9:57:22 AMMar 26
to iCW - internet CW
Here is a picture of the total setup...for  STRAIGHT KEY,  IAMBIC PADDLES &  MFJ 451 CW KEYBOARD...
plus attached is a short .wav file example of what the keying sounds like at 60 wpm from the mfj 451 keying
the teensy pin 4 'straight key line' using the optoisolator circuit(bottom left of picture)...


Chuck Vaughn

Mar 26, 2021, 10:36:54 AMMar 26
to iCW - internet CW
Here is a video showing the Straight Key, paddles, and MFJ 451 CW KEYBOARD in action 
using the TEENSY 4.0 Hasak CW KEYER setup...

Steven G. Steltzer

Mar 26, 2021, 11:29:10 AMMar 26
to Chuck Vaughn, 'joe living' via iCW - internet CW
Sounds good!


May 18, 2021, 3:21:26 PMMay 18
to iCW - internet CW
There has been an update to the hasak keyer's  CORES and AUDIO folder/files that has made some improvements...  
   just grab the new CORES and AUDIO folders/files from GITHUB ...  all i did was change the name of the current ones and named them OLD_CORES,  OLD_AUDIO  etc.
copy pasted in the new ones....  then you have to hit upload sketch again in your arduino IDE hasak sketch,    and then reboot everything and u should be good to go...

also noticed that by using this MOUSER AUDIO TRANSFORMER
the                    Mouser No. 42TU200 200/8  ohm audio transformer 

the teensy / hasak system on pins 10 and ground, was able to provide more volume out of the teensy audio system ...
i also tried adding a resonant speaker...and got even more  both hearing my sidetone and hearing mumble output filled the whole ROOM
with enough volume just using the TEENSY BOARD and the HASAK USB SOUND CARD/ pin 10/ground to audio transformer input, 
for sending CW AUDIO to the mumble input and also hearing my sidetone in real time with no delay,  AND hearing the mumble output audio all on the same speaker...

here is a picture of my pvc resonant CW SPEAKER setup with the audio transformer


May 19, 2021, 5:37:58 PMMay 19
to iCW - internet CW
Here is a new video demo of the state of the art status on this HASAK CW KEYER project
demo'N using it for iCW using CW KEYBOARDs, paddles, and straight key:


Jul 20, 2021, 9:16:20 AMJul 20
to iCW - internet CW
Here is another video demo of the HASAK CW KEYER in operation using 2 speakers with i/q phasing adjusted to minimize room echo and nulls
this setup also uses adjustable BASS TUBEs  sitting on top of each speaker, set to any pitch you would like for a major increase in volume
Reply all
Reply to author
0 new messages