Hi,
I am trying to reverse engineer the keyboard from a 1989 Dell 316 laptop as a project. Unfortunately I cant get the thing to power up and they keyboard circuit is on a separate board.
here is a link to my post on reddit.
https://www.reddit.com/r/raspberry_pi/c ... om_a_dell/
Is there a way to find out how the 16 pin ribbon from the keyboard "board" to the main-board works? I have been looking for some circuit diagrams or repair manuals but have drawn a blank. Any help would be greatly appreciated.
Dell 316LT laptop
- XMIT
- [ XMIT ]
- Location: Austin, TX area
- Main keyboard: XMIT Hall Effect
- Main mouse: CST L-Trac Trackball
- Favorite switch: XMIT 60g Tactile Hall Effect
- DT Pro Member: 0093
How interesting. What key switches does this use?
My usual guidance is to figure out power and ground first. For this perhaps look up some of the integrated circuits (ICs) on the separate board, pull up their datasheets, figure out which pins are power and ground, and trace them around. From there, use a logic analyzer to reverse engineer the protocol.
Being a late 1980s IBM compatible chances are good that the AT or PS2 protocol is hiding there somewhere.
More photos would help. What is the interface between the keyboard and the rest of the system? What is on the separate PCB? Does it look like there are about 24 wires (think 16 columns, 8 rows) going to the main part of the system?
My usual guidance is to figure out power and ground first. For this perhaps look up some of the integrated circuits (ICs) on the separate board, pull up their datasheets, figure out which pins are power and ground, and trace them around. From there, use a logic analyzer to reverse engineer the protocol.
Being a late 1980s IBM compatible chances are good that the AT or PS2 protocol is hiding there somewhere.
More photos would help. What is the interface between the keyboard and the rest of the system? What is on the separate PCB? Does it look like there are about 24 wires (think 16 columns, 8 rows) going to the main part of the system?
-
- Location: NC, USA
- DT Pro Member: 0117
With 16 pins, it probably routes the row and column lines to the connector. If so, you can use a multimeter to determine which are rows and columns and which keys are on which. This post may help
http://deskthority.net/workshop-f7/reve ... ix-t7.html
A few of the pins may also drive the LEDs.
http://deskthority.net/workshop-f7/reve ... ix-t7.html
A few of the pins may also drive the LEDs.
- chzel
- Location: Athens, Greece
- Main keyboard: Phantom
- Main mouse: Mionix Avior 7000
- Favorite switch: Beamspring, BS, Vintage Blacks.
- DT Pro Member: 0086
Nah, it doesn't expose the matrix directly, too few pins.
16 pins can support a max of 64 keys (8x8 matrix) and there are more than 64 on this board.
There is logic before the connector, probably a mux?
XMIT is right, find what the chips are, find the supply, and probe around!
16 pins can support a max of 64 keys (8x8 matrix) and there are more than 64 on this board.
There is logic before the connector, probably a mux?
XMIT is right, find what the chips are, find the supply, and probe around!
- Halvar
- Location: Baden, DE
- Main keyboard: IBM Model M SSK / Filco MT 2
- Favorite switch: Beam & buckling spring, Monterey, MX Brown
- DT Pro Member: 0051
A big picture of the board with readable chip markings would be helpful. As well as one of the backside.
If you can't figure out the protocol of the original ribbon cable, you can probably still solder out the controller chip and replace it with a modern microcontroller board with USB, like a Teensy running a keyboard controller software. In the end, a keyboard is quite a simple thing electronically.
If you can't figure out the protocol of the original ribbon cable, you can probably still solder out the controller chip and replace it with a modern microcontroller board with USB, like a Teensy running a keyboard controller software. In the end, a keyboard is quite a simple thing electronically.
-
- Location: England
- DT Pro Member: -
Hey thanks for all the input, the chip is this thing: http://www.cpu-world.com/CPUs/8051/Intel-P80C51BH.html I have managed to work out the end 3 are power, spacer(unknown) and ground. The status led now flashes and they keys (num/caps) light up on for 3 secs when powered on. Measuring the other wires using the analogue inputs on an arduino on the other hand has not shown anything interesting yet though. Perhaps it needs a clock signal from the main board? Im going to take some better res pics of the board chips and back now.
-
- Location: England
- DT Pro Member: -
as promised some more high res shots of the chips http://imgur.com/a/qsCpj
- Halvar
- Location: Baden, DE
- Main keyboard: IBM Model M SSK / Filco MT 2
- Favorite switch: Beam & buckling spring, Monterey, MX Brown
- DT Pro Member: 0051
Great, so what you have is a controller (the huge chip), two times four 3 state buffers, and a 4-to-16 line decoder.
The 74HC125 chips should make it easy to identify GND and +Vcc on the ribbon cable like XMIT stated. Then you could look what the inputs and outputs of the 74HC125s are connected to, and see if you can identify if there are connections on the ribbon cable that only drive the LEDs or that are unconnected. If there is a simple AT protocol used somewhere in there, maybe you can somehow identify the CLOCK and DATA cable by exclusion that way. On the other hand, the 3 state buffers might mean that the keyboard is connected to some kind of system bus.
Alternatively, it looks like the controller board connects to the keyboard matrix (membrane?) through that wide connector in the middle of the board. So if in the end it turns out that the controller logic proves impenetrable, a more straightforward way would be to replace the whole controller PCB with something of your own making with a Teensy or something like that. You would have to find a (membrane ?) connector of compatible size or desolder the one on the original controller PCB, but the rest would be quite doable with some matrix PCB, and you could more easily get help with that on the forums.
The 74HC125 chips should make it easy to identify GND and +Vcc on the ribbon cable like XMIT stated. Then you could look what the inputs and outputs of the 74HC125s are connected to, and see if you can identify if there are connections on the ribbon cable that only drive the LEDs or that are unconnected. If there is a simple AT protocol used somewhere in there, maybe you can somehow identify the CLOCK and DATA cable by exclusion that way. On the other hand, the 3 state buffers might mean that the keyboard is connected to some kind of system bus.
Alternatively, it looks like the controller board connects to the keyboard matrix (membrane?) through that wide connector in the middle of the board. So if in the end it turns out that the controller logic proves impenetrable, a more straightforward way would be to replace the whole controller PCB with something of your own making with a Teensy or something like that. You would have to find a (membrane ?) connector of compatible size or desolder the one on the original controller PCB, but the rest would be quite doable with some matrix PCB, and you could more easily get help with that on the forums.
-
- Location: Philadelphia
- Main keyboard: IBM MOPAR FSSK
- Main mouse: Logitech G502 Lightspeed
- Favorite switch: Brown Alps
- Contact:
Probably my most egregious necro to date, but what switches does this come with?