encoder 2560 notes - osiweb/unified_retro_keyboard GitHub Wiki
Fuse settings for the ATMega2560:
Extended: 0xFF High: 0x99 Low: 0xE7
This corresponds to the following fuse settings
- Brownout Detection Disabled (Extended byte)
- JTAGEN (in system programming over JTAG) Enabled (High byte)
- SPIEN (in system programming over SPI) Enabled (High byte)
- Boot flash size 4096 ((high byte)
- Full Swing Oscillator, xtal, fast rise, 4.1 ms startup (low byte)
All other fuses disabled.
Errata:
rev 4.2:
The footprints for D1-D16 are supposed to have a shorting jumper trace built in. For keyboards with a diode installed per-key, these diodes are not installed. Since the jumpers are not pre-configured, wire jumpers must be installed in the D1-D16 positions for the keyboard to scan correctly.If you are using a keyboard without any built-in diodes (such as a prefabricated key matrix), then install the diodes D1-D16 (1n914, in4148, or similar) to protect the row-scanning TTL outputs from conflicting logic levels in the event of simultaneous keypresses.
Here is an example of wire jumpers in stalled:
For a neater look, you can also use low value DIP resistor arrays (I suggest 100 ohms or less) 8-wide parallel configuration to accomplish the same effect. The picture below shows a pair of 22-ohm networks installed as jumpers. The ends had to be ground down to make them fit.