Author Topic: help with Datanetics keyboard  (Read 308 times)

0 Members and 1 Guest are viewing this topic.

Offline DidgitalpunkTopic starter

  • Contributor
  • Posts: 24
  • Country: fr
help with Datanetics keyboard
« on: December 01, 2022, 11:59:39 am »
Hi,
I have an old datanetics keyboard.... board... that I want to reuse for a potential future project, I've drawn out the schematic, and I've hit a snag: I have no idea how to read the lines/columns from the key presses.

first things first, yes the keyboard works. I've got 6 unresponsive key-switches, but they're not on the same lines/columns, so it's clearly a dead key problem, and they failed open, meaning pressing them doesn't close the contact anymore. so no biggie for now.

No, it's not an apple1 or apple2 board, I have no precise answer as to what it came from, my best guess is an accounting machine, there's a separate keypad with 00 on one of the keycaps. pictures here -> https://twitter.com/Didgitalpunk/status/1594605328615751680.

The problem I'm running into is that both the lines and columns are hooked to VCC with a 15k resistor per line/col. and that's it.... so without any extra circuitry, pressing or depressing the switch just reads 5 volts. |O

I don't want to mod the board, it worked in whatever piece of 70's era gear it used to reside in, I want to make it work only by interfacing to it.
anyone run into this matrix topology before? does anyone have tips on how to solve my problem?

Freya
 

Offline minifloat

  • Contributor
  • Posts: 31
  • Country: de
  • loss of precision
Re: help with Datanetics keyboard
« Reply #1 on: December 02, 2022, 05:58:49 am »
Hi,

Pull all cols low.

Pin26 will give you a falling edge in case any key is pressed down. May or may not be used. Scan can be triggered by IRQ or cyclically.

Then initiate a scan by
step 1 pulling down cols one-by-one, read rows, pressed key appears as 0, write result to an array a
step 2 pulling down rows one-by-one, read cols, pressed key appears as 0, write result to an array b
step 3 compare arrays, debounce, send key events, ...

br, mf
« Last Edit: December 02, 2022, 06:04:17 am by minifloat »
 


Share me

Digg  Facebook  SlashDot  Delicious  Technorati  Twitter  Google  Yahoo
Smf