output, supporting keyboards of up to 16 rows X 8 columns. This design uses the ATMega2560, since it's an easy port from the ATMega328P, which was initially selected for the sole reason of being familiar to hobbyists. The 2560 has much more I/O, which simplifies the design, assembly, and firmware, and opens up some additional possibilities.
- A serial (UART) port is provided. This could be used to provide serial output
instead or parallel output, to support a bootloader, or even to accept a serial
input stream from another source to send to the host as parallel ASCII data.
## Assembly Notes
1. Solder the surface-mount microcontroller first. Be sure to match pin 1 to the
dot on the silk-screen layer.
1. Next, install the surface mount crysta, Y1. The orientation is not important.
1. Next, solder in the Diodes D1-D3 and D4-D11
1. Do not populate diodes D12-D27. These diodes are jumpered short. If you are
using a key matrix with no diodes, then cut the jumpers with an x-acto knife
and populate the diodes.
1. Install all the capacitors. These are all 0.1 uF ceramic capacitors with 0.1"
lead spacing. Many capacitors with 0.2" lead spacing are actually 0.1"
emerging from the body, bent to 0.2", and can be straightened back to 0.1".
1. Next, solder in the resitor R1 and Resistor network RN1.
1. Install DIP switch SW1.
1. Install connector J7
1. Install the In-circuit Serial Programming (ISP) header, J6. (right-angle, 2x3
0.100")
1. (Optional) If you will be the digital outputs, or if you will be attaching
switches or other sources of open-collector signals (such as RESET), then
install connector J4 (right-angle, 1x5 0.100")
1. (Optional) If you will be using the serial port, install the serial header
J3. (right angle, 1x4 0.100")
1. If you will be using the Apple 1 connector, install the DIP socket J1 (16-pin
dip). If you plan to insert and remove the cable many times, a dual-wipe
socket may be preferable to machine-pin, since it has a lower insertion
force, and you will be less likely to bend pins. If you plan to insert the
cable once and leave it forever, I suggest a machine-pin DIP socket.
1. If you will be using the Apple 2 connector, install the DIP socket J2 (16-pin
dip). The note for the Apple 1 connector selection applies here as well.
1. If you will be using the SOL-20 connector, install connector J5 (vertical
2x10 0.100")
configuration or only a serial configuration, then you can jumper these
resistors with a piece of wire.
1. Any connectors required.
## Optional components
### Diodes D1-D16
These diodes are intended to prevent conflicts between high and low keyboard
driver outputs. They allow the row drivers to pull rows low, but not high,
emulating open collector outputs.
If you are attaching a keyboard with no diodes, then you only need to populate
the diodes corresponding to rows on the keyboard. If the keyboard has 8 rows,
then you may want to install 8 diodes corresponding to those rows.
Note that the footprints for these diodes include a copper jumper on the TOP
copper layer. If you install any of these diodes, you should cut the jumpers for
those diodes. Otherwise the diodes do nothing.
If you are attaching a keyboard with a diode per key, then the diodes on the keys perform the same function, in addition to preventing "ghosting", so the per-row diodes do not need to be installed.