OSK Keyer Modulev3
OSK Keyer Modulev3
This open source code is now installed it onto a Attiny85 chip, It fits on a small PCB and
can be built in less than an hour.
For more details of each feature read the user guide at the end of this document.
Parts List
This can be built into any homebrew radio or boxed for use with a main station rig etc.
If using the higher voltage input from a battery I would use a switch as the regulator
draws additional current at all times.
If you are new to kit building tick each part off in these instructions when you have it
fitted.
Both resistors are the same value so you can’t get them mixed up, they can be fitted
either way around.
Step 2 Capacitators
There are 5 capacitator’s and 2 different values use, make sure you fit the right one in
the right place, like the resistors they can be fitted either way around. One tip, if you
can fit them so the value marking can be seen when the board is completed in case of
any errors in placement.
Step 3 Diode
The diode is there to make sure that the 5v input does not back feed into the voltage
regulator and also will drop the voltage to below 5v from the regulator output, the chip
is only rated up to 5.5v so this gives us a little more head room. Unlike the resistors
and capacitator’s, the diode MUST be fitted the correct way round, if you look at the
diode you will see one end has a black band on the glass, this is the cathode side, on the
PCB you will find position D1 which is our diode, the symbol shows a extra white line at
one end (near R1) this is the end that MUST have the black band on the diode pointing
towards
D1 1N4148 #
This is the most difficult part of the project, only because the pins are very close on
the PCB and so it would be easy to make solder bridges between pins, take great care
when fitting these parts. The transistor and regulator again can only be fitted one way.
If you look at the body of these devices you will see one side is flat, this has the part
number printed on it. This flat side MUST be fitted towards the Flat line indicated in
position Q1 and U1. Now be extra careful that you do not fit the 5V regulator in the
wrong position. Fit the transistor in Q1. Use a magnifying glass if you must to make
sure that the part you fit say’s 2N2222 ( or 2N2222A) on the flat side and not 78L05
(that’s the voltage regulator). Once that’s fitted fit the regulator in position U2, make
sure the flat side is towards the flat line on the PCB screening. See the pictures below
to help identify the parts.
Image of 2N2222
( 2N2222A may be
supplied)
Q1/T1 2N2222 #
U2/IC1 78L05 #
This 8 legged little chip is the brain of the keyer, for its size it is very powerful. I had
computers back in the 1970‘s that sat on the desk that did not have the power and
speed of this chip, don’t let its size fool you. This is also the most expensive part of
the keyer. I have provided a socket for the chip that can be fitted onto the board
first, this way the chip can be removed if there is any problem with the rest of the
board and then reused, If soldered in place directly it can be very difficult to remove
without damage.
This must be fitted the right way on the board, if you look at the top of the chip you
will see a small dot in one of the corners.
8 pin Socket #
Atiny85 #
That’s the module built, now just to wire and test it.
The new board is easy to wire, the sounder is normally fitted directly on the PCB but
if you want it too can be fitted remotely so that it can be heard better.
One feature I really like is the CW training mode, at the selected keyer speed it will
generate a calllsign (not a real callsign but follows the typical format) and sends it to
the user, the user sends back the callsign, if right you get a ‘R’ and a new callsign is
sent. If you get it wrong you get the error signal (……..) and it resends the same callsign
again until you get it right. It a nice extra feature that makes practice more fun. BTW
if you turn Farnsworth mode on it will use that in this mode which is a big help if
learning the code.
After reset in default mode, the keyer plays "73" to verify that the Code and EEPROM
data are programmed correctly. The circuit operates as a regular IAMBIC keyer in
IAMBIC B at 15 WPM (words per minute = 60 CPM), with 800 Hz side tone. By default,
the transmitter keying signal is positive. The ATTINY85 will automatically power off
after 60 seconds into ultra-low power mode to conserve power. The unit draws only a
few microamps in this state, making battery power from a single 3V lithium coin cell
very practical.
Speed Change
Speed can be changed by pressing and holding the command key while operating the
DIT and DAH paddles, in any mode.
DIT reduces speed while DAH increases speed. The keyer plays an alternating sequence
of dit and dah while changing speed without keying the transmitter.
Command mode
Pressing the command button without changing speed will switch the keyer into
command mode. This will be confirmed with the '?' character. Another press of the
same button takes the keyer back into regular keyer mode and will be confirmed by the
'SK' prosign.
During Command Mode the transceiver is never keyed and side tone is always activated.
Further functions can be accessed by keying one-letter commands as listed below. In
general, changes made in Command Mode will be written to EEPROM after a short delay
following input and confirmed by an "R"
acknowledgement, or by another short press of the Command button (for some
commands). The unit will remain in Command Mode for subsequent commands, timing
out to Normal Mode after a few more seconds with an "SK" indication. The keyer can
also be returned to Normal Mode with an additional button press.
V -Version
The keyer responds with the current keyer software version number
P -Pitch
Allows modifying the side tone pitch to a higher or lower level. A sequence of dits will
be played and the pitch can be modified with the dit and dah paddles. If no paddle is
touched for 5 seconds, the acknowledgment signal 'R' is sounded and the mode
terminates, writing the new pitch to EEPROM and leaving the user in command mode.
All settings are returned to their default values except for the stored messages in the
message EEPROM area. Restored settings include speed and pitch, paddle swap, TX
level inversion, side tone Farnsworth setting, and TX keyer settings.
U -Tune
The transceiver is keyed for a duration of 20 seconds for tuning purposes. Tuning mode
is aborted once either DIT or DAH paddles are touched or the control key is pressed.
A -Iambic A
Keyer sets IAMBIC A as permanent keying mode. The setting is written to EEPROM
and an 'R' is sounded to acknowledge the request.
B -Iambic B
Keyer sets IAMBIC B as permanent keying mode. The setting is written to EEPROM
and an 'R' is sounded to acknowledge the request.
L -Ultimatic
Sets the keyer into ULTIMATIC mode as permanent keying mode. In Ultimatic mode
always the last paddle to be touched is repeated indefinitely when paddles are
squeezed. The setting is written to EEPROM and an 'R' is sounded to acknowledge the
request.
Sets the keyer into DAH priority mode as permanent keying mode. In squeezed state a
sequence of DAHs is sent. The setting is written to EEPROM and an 'R' is sounded to
acknowledge the request. Some of the first generation keyers exhibited this behaviour
so the chip can simulate that.
X -Paddle swapping
DIT and DAH paddles are swapped. The setting is written to EEPROM and an 'R' is
sounded to acknowledge the request.
The built-in side tone generator setting is toggled (ON -> OFF or OFF -> ON). NOTE:
This setting is only of relevance for regular keying mode. Side tone is always on in
Command Mode. The setting is written to EEPROM and an 'R' is sounded to
acknowledge the request.
Toggles the setting of the TX keyer output. In default state the keyer switches the
output line when it is in keyer mode. Toggling this setting enables or disables that
function. NOTE: Keying is always off in Command mode. The setting is written to
EEPROM and an 'R' is sounded to acknowledge the request.
Allows setting of an extended inter-character pause, which makes fast keying easier to
understand. A series of "Dit-Dah" sequences will be played. Pressing the "Dah" paddle
will decrease the Farnsworth intercharacter spacing. Pressing the "Dit" paddle will
increase the Farnsworth Intercharacter spacing. If no paddle is touched for 5 seconds,
the acknowledgment signal 'R' is sounded and the mode terminates, writing the new
setting to EEPROM and leaving the user in command mode. Note that this only affects
memory/program playback and transmission. If you desire Farnsworth mode in manual
transmission, please manually pause between characters.
This function toggles whether the "active" level on the keyer output is VCC or GND.
The default is VCC. This setting is dependent upon the attached keying circuit. The
setting is written to EEPROM and an 'R' is sounded to acknowledge the request.
The keyer immediately responds with "1" or "2" or "3" or "4" after which a message up
to 100 characters can be keyed at current WPM speed. If no paddle is touched for 5
seconds, the acknowledgment signal 'R' is sounded and the mode terminates, writing
the new setting to EEPROM and leaving the user in command mode. Choosing "1" or "2"
or "3" or "4" but not keying a new message deletes the chosen message buffer content.
A command key press during the recording function returns the keyer to command
mode, leaving the memory unchanged.
The stored messages 1, 2, 3, or 4 are played back with keying enabled (if configured). A
press of the command key aborts the message and immediately returns the keyer to
Normal Mode for a QSO, with an "SK" confirmation. After the message plays to
completion, the keyer remains in command mode with no "R" indication so another
message playback sequence may be started. If no additional message is started, the
keyer returns to Normal Mode with an "SK" confirmation.
The keyer responds with 'N' after which a number between 0 and 9999 can be keyed.
After a 5 second timeout the keyer responds by repeating the number and 'R'. Once
the keyer returns to keyer mode, the content of message buffer 4 is repeated in
intervals of n seconds. The setting is preserved in EEPROM so the chip can be used as a
fox hunt keyer. Returning to command mode and entering an interval of 0 (or none at
all) stops beacon mode.
The 0 (zero) command locks or unlocks the main configuration items but not Version,
Pitch, Tune, Callsign Training, WPM Query and Memory Playback functions.
C -Callsign trainer
The keyer plays a generated callsign (side tone only) and the user must repeat it. If it
was repeated correctly, 'R' is played and the next callsign is given. If a mistake was
sensed, the error prosign (8 dits) is sounded and the current callsign is repeated again
for the user to try once more. If nothing is keyed for 10 seconds, the keyer returns to
command mode.