This is a nice little board I was able to pick up recently. It's an Epson Q503A with 3rd gen Fujitsu leaf spring switches.
Opened board, PCB and top switch plate:
I went ahead and did a controller replacement with a Teensy 2.0, Retobrighted the case and keys and reassembled.
Matrix:
Short video of the board:
Fujitsu leaf springs are some of my favorite switches and since I also like the XT layout, I plan on getting a fair amount of use out of this board.
Epson Q503A Keyboard
- OldIsNew
- Location: US
- DT Pro Member: 0248
I left the Ctrl and Alt keys the way they are on the board with Ctrl above and Alt below the left shift key and Caps Lock to the right of the space bar. It's the typical XT arrangement. I know a lot of people don't care for the XT layout, but I actually rather like it.John Doe wrote: 21 Mar 2020, 03:38 How did you layout the ctrl and alt keys? Seems have to choose one for the key left the spacebar, and another one right the spacebar.
-
- Location: San Francisco
- Main keyboard: Das Keyboard
- Main mouse: Logitech
- Favorite switch: MicroSwitch Hall Effect
- DT Pro Member: 0240
Should anyone care to convert without rebraining, it is not that complicated.
The DIN-8 pinout is as follows:
The eighth (high) bit indicates key release versus press.
The from-keyboard signals are open collector, coming from a 7407 buffer. So enable pull-up on the MCU inputs. Furthermore, it's fine to connect directly to a 3.3V pin.
The to-keyboard signals go to a MC14049UB inverting buffer. And there are pull-ups inside the keyboard, that is, to 5V. So one really ought to use a level shifter if driving from a lower voltage MCU. The standard Philips i2c one (bidirectional, open collector) kinda works, but a unidirectional one using a complementary buffer like a 74AHCT125 is simpler.
The DIN-8 pinout is as follows:
- 1, 8 Clock
- 2 Data
- 3 Reset
- 4 Ground
- 5 +5V
- 6 Busy
- 7 End
The eighth (high) bit indicates key release versus press.
Code: Select all
+---+---+ +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ +---+---+-------+
|F1 |F2 | | ` | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | - | = | \ |BS | |ESC|NUM|SCL LCK|
+-------+ +-----------------------------------------------------------+ +---------------+
|F3 |F3 | | TAB | Q | W | E | R | T | Y | U | I | O | P | [ | ] | | | 7 | 8 | 9 | * |
+-------+ +-----------------------------------------------------| | +---------------+
|F5 |F6 | | CTRL | A | S | D | F | G | H | J | K | L | ; | ' | ENTER | | 4 | 5 | 6 | - |
+-------+ +-----------------------------------------------------------+ +---------------+
|F7 |F8 | | SHIFT | Z | X | C | V | B | N | M | , | . | / | SHIFT | | 1 | 2 | 3 | |
+-------+ +-----------------------------------------------------------+ +-----------| + |
|F9 |F10| | ALT | | SPACE | |CAPS | | 0 | . | |
+---+---+ +-----+ +--------------------------------------+ +-----+ +-------+---+---+
+---+---+ +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ +---+---+-------+
|3B |3C | |29 |02 |03 |04 |05 |06 |07 |08 |09 |0A |0B |0C |0D |2B |0E | |01 |45 |46 |
+-------+ +-----------------------------------------------------------+ +---------------+
|3D |3E | |0F |10 |11 |12 |13 |14 |15 |16 |17 |18 |19 |1A |1B |1C | |47 |48 |49 |37 |
+-------+ +-----------------------------------------------------| | +---------------+
|3F |40 | |1D |1E |1F |20 |21 |22 |23 |24 |25 |26 |27 |28 | | |4B |4C |4D |4A |
+-------+ +-----------------------------------------------------------+ +---------------+
|41 |42 | |2A |2C |2D |2E |2F |30 |31 |32 |33 |34 |35 |36 | |4F |50 |51 |4E |
+-------+ +-----------------------------------------------------------+ +-----------| |
|43 |44 | |38 | |39 | |3A | |52 |53 | |
+---+---+ +-----+ +--------------------------------------+ +-----+ +-------+---+---+
The to-keyboard signals go to a MC14049UB inverting buffer. And there are pull-ups inside the keyboard, that is, to 5V. So one really ought to use a level shifter if driving from a lower voltage MCU. The standard Philips i2c one (bidirectional, open collector) kinda works, but a unidirectional one using a complementary buffer like a 74AHCT125 is simpler.