Ham Radio KITS - TOP PAGE
A memory doubling mod for the Elecraft K2 transceiver
12/14/2004
Chuck Olson, WB9KZY
Jackson Harbor Press
Several years ago, Meyer Minchen, AG5P, provided the inspiration for me
to try a couple of memory doubling experiments using serial eeprom devices.
Recently, someone on the Elecraft email list mentioned that he would like
extra memories for his K2. I immediately thought of using Meyer's idea
to double up the serial eeprom of the K2. This technique was also used
in the earlier pre-PC days of home computing with computers such as the
Atari 400/800 and others to increase the RAM of the computer. In the K2,
the eeprom holds the Morse code memories as well as the calibration
data and the frequency memories.
The basic idea of the memory doubler (you could also triple, quadruple
and on up but doubling is easiest ;) is to connect two memory ICs in
parallel except for the chip select pins (pin 1) which are brought out separately.
This can be done two ways: physically mount the ICs on top of each other
(piggy back) and solder all pins of the top IC to the bottom IC except
for the chip select pin 1 OR use a small circuit board to connect two
eeproms in parallel and then cable this board to the eeprom circuit board
position. In either case, a SPDT switch is used to select which IC
"memory bank" is in use. One final circuit note, two 100k "pullup" resistors
are connected between the +5V power supply and the chip
selects of the two eeproms. These resistors will turn off the eeprom which
is not in use. Here is a somewhat complicated schematic for the doubler:
In the K2, the serial eeprom (U7) is located on the K2 control board
(vertically mounted board behind the front panel) at the top middle
just above the 40 pin PIC device. The eeprom chip (the 25LC320 from
Microchip Technology) is available from either DigiKey (25LC320/P-ND, $1.04)
or Mouser (579-25LC320P, $0.96).
Here is a procedure for installing the memory doubler:
Step 1) RECONSIDER ! . . . then decide which
approach you wish to take: the conventional with a circuit board and
cabling or the "piggy back". Next, get the parts together: eeprom,
socket/s, circuit board (if needed), 100 k ohm resistors, et cetera.
Step 2) Unsolder the current eeprom and replace with a socket. This
is probably the hardest step, use either a good quality desoldering
braid or a desoldering sucker of some kind to remove the eeprom chip
(intact) without ruining the circuit board traces.
Step 3) optional: duplicate the contents of the current eeprom into
the new eeprom. I used Ponyprog
to read the eeprom from my K2 and then to save a
copy to disk and then finally to program the other eeprom as a
duplicate of the original. I selected the 25320 device in Ponyprog
which worked fine with the 25LC320. You can use any eprom programmer that
can handle serial eeproms to perform this step. Why duplicate the
serial eeprom ? - because the eeprom holds
not only the Morse messages but also all the calibration data and
frequency memories. One other approach might be to redo the
entire K2 calibration into the "new" eeprom, but that seemed like
a lot of trouble and I wanted to
try out Ponyprog anyway ;)
Step 4a) Piggy back approach:
Here are some views of the "piggy back" version of the memory doubler
(the wires are routed to a SPDT switch mounted on the rear of the K2)
the "doubled" eeprom is plugged into the eeprom socket:
I mounted the original desoldered eeprom on top of the new, duplicated
eeprom (after making sure the leads on both were formed to fit into the
socket). Then pins 2 to 8 were soldered together, taking care not to
let the solder go down into the contact area of the lower eeprom pins.
Pin 1 of each eeprom was then gently bent out until roughly horizontal.
The 100k resistors were then soldered from pin 8 to pin 1 of each eeprom.
The wires to the SPDT switch were then soldered to each pin 1.
The other end of the wires were connected to the two outer contacts
of the SPDT switch.
The center (common) contact of the switch was then wired to pin 1 of
the eeprom (U7) socket, I used thin solid wire, 26 gage ?, which can
be pushed directly into the socket. Finally insert the piggy backed
eeproms into the socket and the mod is complete.
Step 4b) Conventional approach:
Here is a view of the "conventional" version of the memory doubler (a
ribbon cable is plugged into the eeprom socket, the other end of the
cable goes to a small circuit board with the two eeproms and the
100 k ohm pullup resistors, the chip selects are then routed to a
SPDT switch on the rear panel of the K2):
Other K2 memory doubling modification ideas: 1) Use a flip flop IC to toggle between the chip selects,
connect the Q output to one eeprom and the Q bar output to the other. This
would allow the use of a momentary switch to select between the two banks
of memory rather than a SPDT switch, it would also minimize any chip select
waveforms being propagated into the receiver via the wires to the SPDT switch.
2) Annunciate the banks using one or two LEDs (or maybe a
single LED with two colors ?) the led/s could be connected to a second
pole of switching (use a DPDT switch instead of a SPDT switch).
3) Use a 2:1 mux IC with a SPDT or SPST switch to select which eeprom
is in use. This would also prevent the chip select waveforms from being
propagated into the K2 receiver.
4) Instead of removing the eeprom completely, just remove pin 1, then
piggy back the second eeprom on top of the first. The only problem with
this idea is that it would be necessary to do the complete calibration
and filter setup on the new eeprom since it wouldn't be possible to
make a copy of the contents of the original eeprom.
Page accesses: