Matrix style keyboard. I am new and could use some help...

User avatar
lled3733

06 Nov 2018, 20:16

I would like to build a custom matrix style keyboard. row and columns. 8 x 23. Is there a controller that will handle this many keys ? Is there a maximum to the number of keys that can me handled. I am looking at making a large programmable keyboard. Just keyboard, no lights. Currently I am thinking cherry mx blue, but have also hear of Gateron. However I am clueless as to what is a good. Goal is to have a key style that is similar to k70 in the feel or perhaps a blue switch feel. between the two would be good. A suggestion to designing the keyboard backplane? I have submitted the layout to a couple of laser cutting companies in order to get idea of price and to fish for information. Look forward to reading what comes in....

Thanks to everyone for any assistance.

Findecanor

06 Nov 2018, 20:56

I know of no kit keyboard that is that large. Most keyboards with orthonormal ("matrix") layout are smaller than classic QWERTY.
The "Plank" kit keyboard is 4×12 keys and with no border around the keys. You could get four of these to build a 8×24 keyboard and connect them together in a custom-built enclosure together with a USB hub.

You might also be able to get what you want from an/multiple existing Tipro or Access-IS keyboards. There are some that have 8 rows, but only 15 or 16 keys in width so you would have to get several to get 23 columns. Those are usually quite programmable and able to connect multiple keyboards together to work as one unit.
Very expensive to get new (For point-of-sale systems), but not on the second-hand market. You would have to hunt for them though. Might use only PS/2 connection and require the manufacturer's special software to program.
(I don't have any (that works). I'm hoping someone else, who actually owns one of these would chip in. ;) )

If you do want to build it from scratch, the most effective tricks to reducing the numbers of MCU pins are
• Remake the logical matrix to be closer to a square. 8×23 = 184. sqrt(184) ~= 13.56, or 14+14 pins = 28 pins will do. A 16×12 matrix might be a better choice: then you could simply map two physical columns to each logical matrix column (except for one of them, you have 23 physical columns, not 24).
• Use external chips such as shift registers, decoders or I/O expanders for strobing the columns because you would strobe only one column at a time. The MCU would need only a couple of pins to communicate with them, and then the rest will be available for sensing the rows.

User avatar
lled3733

06 Nov 2018, 21:34

Firstly thanks for the information. I am interested in a build from scratch just as a project. I was aware of the Tipro daisy chain ability as I already have a 128 and it does indeed work well. I am looking at getting another USB or PS2 black (C10) in order to daisy chain them. As to the ones you may have lying around that do not work, if you wanted to possibly make use them, I was told you could take out the controller and then chain it to the working one. If I understood them correctly, the working controller would control both of them. Note: There can only be one active {connected} controller between all the devices. I am looking to finding a 128 or 64 etc to find out. Again thank you so much for replying. Depending on the homework on making one, then I may take your suggestion. However, I got a nag to build a custom project. Thank you for moving my understanding. much appreciated.

User avatar
kbdfr
The Tiproman

07 Nov 2018, 07:47

You can indeed daisy chain Tipro keyboards, but then you will have a "main" and an "auxiliary" keyboard (in other words: pressing e.g. Shift on one unit and "q" on the other will not necessarily issue a "Q".

The correct solution is rather to connect them internally (the necessary small flat cable is contained in every Tipro unit) and disconnect one of the controllers (no tools required for all that). This transforms your multi-unit Tipro keyboard in a "single" keyboard, which is also recognized as such by the Tipro software (needed only for programming, not for typing).

This has been my daily driver for several years now:

Image

User avatar
lled3733

07 Nov 2018, 08:21

Tiproman

That is pretty neat. Can you daisy chain USB and PS2 style of keyboards ? And if so, do I need to open physically to remove the circuit board in the corner ?

User avatar
kbdfr
The Tiproman

07 Nov 2018, 13:19

Sigh...

Yes, you can "daisy chain" a PS/2 keyboard to an USB keyboard itself connected to a computer, but anything you do with the USB keyboard will not affect the PS/2 keyboard. They are indeed two distinct keyboards, one PS/2 and one USB.

By contrast, internally connecting Tipro units (via "Tipro bus") will have the effect of "melting" the units into a single keyboard with either a PS/2 or USB controller.

If you do not understand what I mean, here are explanatory pics I posted long ago:
[…]
Image
Two Tipro MID units connected together. The additional PCB in the left unit is the controller.



Image
Controller removed, its connection to the PCB was the small red square socket at the bottom of the pic. The ribbon cable between both units is their internal connection. When they are connected, the Tipro ChangeMe software will identify them together as one keyboard.



Image
Connection cable removed, showing the "Tipro bus" with which both keyboards were connected. Tipro keyboard PCBs have such a "Tipro bus" socket on each side, allowing it to build virtually endless keyboards (I think I read somewhere about twelve as a maximum, maximum I tested was five).



Image
The plastic "joiner" with which units are physically put together (leaving just enough room for the ribbon cable when the bottom plate is in place). It fits exactly where the plastic side covers of both keyboards have been removed. […]
By the way, the only tool you will need when assembling/disassembling a Tipro keyboard is a small cruciform screwdriver.

Findecanor

07 Nov 2018, 14:59

If you connect multiple keyboards to a single host, each on its own interface, then the host should treat them all as one single keyboard. At least that has been the case with only using USB devices on Windows, Linux and MacOS, when I have tested.

But I did that a long time ago with only a handful of hosts, and there might be some weird OS version/drivers/host/device combo that may break ... I have noticed that lock-lights don't propagate from one keyboard to another on Linux.

User avatar
lled3733

07 Nov 2018, 15:19

Tiproman, I appreciate the added work involved with digging up and providing the visual above. Being new to all of this i fear i had not presented a very clear question which is nothing new for me, seems only i understand what i am asking at times. The correlations of a clean desk and a sick is more times than not true. When i had searched for Tipro information i had not ran across this previously.

All:

i want to express my thanks for taking the time out of your day to provide your assistance.

Moving forward: I have decided to order two of the expansions, one PS2 and one that looks like a 64 key expansion without an internal ps2/USB interface.

Looking forward to getting this setup and configured.

Thank you all once more.

macroxue

08 Nov 2018, 00:58

It looks like Teensy 3.2 has 34 digital pins, good for your 8x23.
Image

For an even bigger keyboard, there is Teensy 3.6 with 58 pins, enough for 8x50, a whopping total of 400 keys.
Image

The largest keyboard with 58 pins can have 29x29=841 keys with 2-D arrangement. If there is a smart way of 3-D scanning, it could support 19x19x20=7220 keys. Or 4-D with 14x14x15x15=44100 keys. You get the idea. ;)

User avatar
lled3733

08 Nov 2018, 07:49

Thank you macroxue, not to dig into the Teensy. daunting and exciting at the same time. guess that is how projects go... :)

Findecanor

08 Nov 2018, 12:27

I know only of HaaTa's Kiibohd controller firmware that supports the Teensy 3.2.
The Teensy 2.0 and 3.x use different microcontroller families (8-bit AVR vs Freescale Cortex-M)

Edit: Formatting :roll:
Last edited by Findecanor on 13 Nov 2018, 17:58, edited 3 times in total.

User avatar
lled3733

13 Nov 2018, 15:14

Thank you Findecano, downloaded and further researching. Have not zeroed in on which way to go from here. But plenty of things to find out.

Post Reply

Return to “Workshop”