K1EL
WKUSB with WinKeyer3 User Manual
WKUSB
WKUSB User Manual
12/20/2017 Rev 1.0
Page 12
Theory of Operation
This section will briefly describe how WKUSB works. As shown in the block diagram below, the
host PC is connected to WKUSB over a USB com port. WKUSB receives commands and Morse
letters from the PC. Letters will be sent in accurately timed Morse.
PC to WKUSB Block Diagram
Commands modify WKUSB’s operation in some way, for example changing operating speed,
pausing transmission, or asking for status. Commands and Morse letters are processed
differently in WKUSB. Morse is put into a FIFO* buffer memory that allows the host to send data
ahead of the Morse being sent. The size of this buffer is 160 bytes. Since there can be a
considerable delay from host input to Morse output, commands bypass the input FIFO and are
acted upon immediately. This allows changes to be made while sending is underway.
* First In First Out; bytes are taken out in the order they were put in.
Data and Command Flow inside WKUSB
Since there are times when you don't want commands to take effect immediately, WKUSB allows
commands to be buffered. This means that the command is placed in the serial buffer mixed with
Morse and won’t be acted on until it comes out of the buffer. An example would be sending two
words at two different speeds, the first at 15 WPM and the second at 20 WPM. By placing a
buffered speed command between the words, the speed will not be changed until the first word is
completely sent.
WKUSB will send data back to the host for processing. There are four reasons this will happen:
1) lnform the host of a WKUSB status change.
2) Inform the host of a speed pot or pushbutton change.
3) Respond to a request for status from the host.
4) Echo Morse as it’s being sent by message or by paddles.
160
byte
FIFO
Input
Parser
USB Serial
Input
Command
Bypass
to input processing
M orse &
Buffered
Commands
Host
PC
WKmini
Commands
& Data
Ke yboard
KEY1
Te st LED
Ke ye r Paddle
Display
USB
USB
PTT1/KEY2
AUX
PDL
OUT