unified_retro_keyboard/hardware/apple2-encoder/README.md

68 lines
3.4 KiB
Markdown
Raw Normal View History

# Apple II/II+ Encoder
This is a version of the ASCII interface wired up to be compatible with the
Apple II/Apple II+ keyboard matrix. This board was broken out as a separate PCB
from the Atmega2560-based interface board on which it was based, in order to
keep the "custom" connector customizable on that board.
This board is otherwise identical to rev 3.4 of the ATMega2560-based ASCII interface board, and shares the same firmware and features.
<img alt="Assembly Rendering" src="images/PCB-assembly-rendering.png" height=75%
width=75%>
## Features
- Parallel or serial output
- Up to 8 configuration settings via an up-to-8 position DIP switch
- Apple 1, Apple 2, and SOL-20 compatible outputs. Other configurations can be
supported by making a custom cable.
- Can decode arbitrary keyboards up 16 rows by 8 columns.
- Supports up to 3 keyboard LEDs
- Supports up to 3 "special" host outputs, such as RESET, SCREEN_CLEAR, BREAK, etc.
- Socket for custom connector
## Assembly Notes
1. You may build this board as if it is a general purpose ASCII interface. In
that case, you may want to avoid installing the 1x25 Apple2 keyboard header
if it interferes with the target keyboard matrix. Also, for use with a key
matrix that already has a diode for each key (or each row), you will need to
install jumpers across the footprints for diodes D1-D16.
1. If you ARE building this board as an Apple 2 encoder, then you may omit:
1. OMIT Sol-20 connector J5
1. OMIT Custom connector J7
1. OMIT D17,D18,D19 - These are used for the "classic" keyboard matrix.
1. OMIT D7,D8,D15,D16 - These are diodes for rows 12-15, which are not used.
1. OMIT the serial out connector J3 if you do not plan to use a serial output.
1. OMIT the I/O connector J4, as all the I/O lines are routed through the
keyboard connector.
1. OMIT RN1. Not needed since the microprocessor uses internal pullups.
1. If you will be using the keyboard with only an Apple 1 or Apple 2, then
you do not need to install both the Apple 2 connector (J1) AND the Apple
1 connector (J2). You may install only the one you plan to use, and
reduce the risk of plugging into the wrong socket (and possibly damaging
the encoder).
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 crystal, Y1. The orientation is not important.
1. Next, solder in the diodes D1-D7, D9-D14, and 20-D27
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 the In-circuit Serial Programming (ISP) header, J6. (right-angle, 2x3
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.