This article first appeared in 'P5' December 1995 issue.

A while ago I asked what kind of projects readers would like to see in P5.  Strangely, the only reply I received was a suggestion for something that has  little to do with TV, a Morse callsign generator!

Well here it is, and it costs all of 10 (about $15 / 15 Euros) to build, compare that with the  cost of the equivalent Maplin unit. The circuit is so simple it can be built on  a small piece of Veroboard so no PCB has been designed. No on/off switch is  needed as the unit switches itself off after about 5 seconds if not used and  then only draws about 2uA. It will work of supplies from 4.5V to 6V so a battery  can be used if you want to make a self-contained unit. To keep it simple and to  minimise costs, the speed and tone controls will cover a range far wider than  necessary. If you want to restrict their ranges you can do so by adding  resistors in series with each end of the potentiometer tracks. If the monitor  volume is too low, add the single transistor amplifier as shown in the diagram.  Exactly how the "key" output is connected to a transmitter will depend  on the type of equipment used. As shown, it will sink about 50mA which is  sufficient for most transmitters, if this isn't enough, use the output to drive  a small relay.

The keyer works in "straight" (conventional) key mode, in automatic  dot or dash mode, in iambic mode and in memory mode, There is a slight warble on  the monitor tone in "straight" mode as the chips internal timers are  reset but it shouldn't be objectionable. In automatic mode, closing one of the  switches causes a stream of dots (dits) to be sent, closing the other causes a  stream of dashes (dahs). If both are closed, alternating dots and dashes are  sent. In "Straight" mode, the shortest interval and tone period is  equal to one dot length, this nicely cleans up sloppy keying! to disable this  function, simply set the speed faster than you would manually send.

The 16C71 must be programmed before it can be used. I have attached the  source code (asm file) so you can pre-set the three programmed messages as you  wish. It will compile under MPLAB 6.2 and most earlier versions.
Parts list:

2 x 220pF  capacitors
1 x 100nF capacitor
1 x 455Khz resonator
1 x 180R resistor
1 x 1K resistor
1 x BC337 transistor
1 x 1N914 diode
1 x PIC16C71 microcontroller
2 x 22K potentiometers
1 x 3-way rotary switch.

Click HERE for downloadable source code files.