Home
JAQForum Ver 24.01
Log In or Join  
Active Topics
Local Time 17:50 26 Nov 2024 Privacy Policy
Jump to

Notice. New forum software under development. It's going to miss a few functions and look a bit ugly for a while, but I'm working on it full time now as the old forum was too unstable. Couple days, all good. If you notice any issues, please contact me.

Forum Index : Microcontroller and PC projects : Maximite keypad chip

Author Message
CircuitGizmos

Guru

Joined: 08/09/2011
Location: United States
Posts: 1425
Posted: 11:55am 27 Nov 2012
Copy link to clipboard 
Print this post

I have a 24 pin through-hole DIP package chip that can be used with a Maximite as a custom keyboard.

The chip lets you connect 12 buttons for keys, plus three for ALT, CONTROL, SHIFT modifiers. You would use simple buttons for all of the keys. The keychip can be used in conjunction with a PS/2 keyboard on the Maximite. The chip needs +5V and ground, plus data/clock connection to the keyboard port.

Here is a pic of a board made up to use the chip:



(Don: You should recognize those buttons.)

Right now the 12 keys are F1-F12.

The switch lets you select an alternate set of keys. I was thinking:

Up, down, left, right, space, page up, page down, enter, end, home

Could be used for games?

Or would 0-9, enter, escape be better for a keypad (like a password keypad)?

Thoughts, anyone?

Edited by CircuitGizmos 2012-11-28
Micromites and Maximites! - Beginning Maximite
 
cosmic frog
Senior Member

Joined: 09/02/2012
Location: United Kingdom
Posts: 284
Posted: 01:38pm 27 Nov 2012
Copy link to clipboard 
Print this post

Nice. What is the name of this chip and does it have a data sheet/pdf?

Thanks. Dave.
 
CircuitGizmos

Guru

Joined: 08/09/2011
Location: United States
Posts: 1425
Posted: 01:51pm 27 Nov 2012
Copy link to clipboard 
Print this post

  cosmic frog said   Nice. What is the name of this chip and does it have a data sheet/pdf?

Thanks. Dave.


I'll call the chip CGKEYCHIP1. I'll work on a data sheet for it as soon as I work out which keys will be on the keylist(s).
Micromites and Maximites! - Beginning Maximite
 
donmck

Guru

Joined: 09/06/2011
Location: Australia
Posts: 1313
Posted: 05:12pm 27 Nov 2012
Copy link to clipboard 
Print this post

  CircuitGizmos said  
(Don: You should recognize those buttons.)


Yes they look familiar. A few years ago now :-)

Don...
https://www.dontronics.com
 
Greg Fordyce
Senior Member

Joined: 16/09/2011
Location: United Kingdom
Posts: 153
Posted: 11:51am 28 Nov 2012
Copy link to clipboard 
Print this post

Can this be plugged directly into the PS2 keyboard connector on the MM/CMM? Would you supply a cable as well? I have been looking for something like this to use as a user interface with a simple 5 way joystick style button. Probably the arrow keys or numbers would be a good choice.

Greg
 
CircuitGizmos

Guru

Joined: 08/09/2011
Location: United States
Posts: 1425
Posted: 02:14pm 28 Nov 2012
Copy link to clipboard 
Print this post

It can be plugged directly into the keyboard connector signals (data/clock) and will run off of the 5V on that connector, too.

In different words four wires from the chip to the Maximite keyboard connector, 15 wires to buttons. The buttons act as F1-F12.

Pull a pin low on the chip and select another set of keys for the buttons (up, down, left, etc)

This works on any Maximite.

I'll consider the cable - I'll look around for a good candidate.
Micromites and Maximites! - Beginning Maximite
 
bigmik

Guru

Joined: 20/06/2011
Location: Australia
Posts: 2914
Posted: 04:04pm 28 Nov 2012
Copy link to clipboard 
Print this post

Interesting Rob,

I assume that it is a cheapo PIC chip or similar?

Another option might be to sacrifice an old PS2 keyboard and toss the key matrix away and run wires to a new `matrix' ... total cost would be sub $10 (probably get an old k/b for a dollar or two.

That way you get the cable as well

Regards,

Mick


Edited by bigmik 2012-11-30
Mick's uMite Stuff can be found >>> HERE (Kindly hosted by Dontronics) <<<
 
donmck

Guru

Joined: 09/06/2011
Location: Australia
Posts: 1313
Posted: 04:27pm 28 Nov 2012
Copy link to clipboard 
Print this post

There are other possible alternatives.


Glenn Littleford (TBS admin) did one a while ago, but I couldn't find it in a hurry, however here is a thread I am following that lopezjm2001 has come up with:

http://priuschat.com/threads/my-duinomite-mega-canview-v4-eq uivalent-project.112429/page-17



These use standard PS2 short keypads.

Don...

EDIT:
Fount the other thread:
http://www.thebackshed.com/forum/forum_posts.asp?TID=4480&KW =keypad&PN=0&TPN=3

and a link to a possible contender:
http://www.ioffer.com/i/PS-2-Numeric-Keypad-Numpad-Number-Mi ni-Pad-Keyboard-NEW-189231744 Edited by donmck 2012-11-30
https://www.dontronics.com
 
TinkersALot
Regular Member

Joined: 20/11/2012
Location: United States
Posts: 72
Posted: 04:57pm 28 Nov 2012
Copy link to clipboard 
Print this post

Here is another, but the keys are not described.

http://www.newegg.com/Product/Product.aspx?Item=N82E16823851 002

I like CG's design of having all the keys assigned to F-codes
 
elproducts

Senior Member

Joined: 19/06/2011
Location: United States
Posts: 282
Posted: 04:10pm 30 Nov 2012
Copy link to clipboard 
Print this post

Is there any way to make each key tied to a BASIC command?
Then it could make it easy to enter some of the most common commands in a program with a few keystrokes.
www.elproducts.com
 
CircuitGizmos

Guru

Joined: 08/09/2011
Location: United States
Posts: 1425
Posted: 06:37am 01 Dec 2012
Copy link to clipboard 
Print this post

  elproducts said   Is there any way to make each key tied to a BASIC command?
Then it could make it easy to enter some of the most common commands in a program with a few keystrokes.


There is OPTION Fnn for the function keys.
Micromites and Maximites! - Beginning Maximite
 
CircuitGizmos

Guru

Joined: 08/09/2011
Location: United States
Posts: 1425
Posted: 10:54am 01 Dec 2012
Copy link to clipboard 
Print this post

The Maximite design uses a PS/2 connection as a keyboard interface. You can use a full keyboard connected to either a CGCOLORMAX1 or the CGMMSTICK1.

If you want to embed either of these two setups into a project, you might choose to replace the full keyboard with something either more compact or custom for your application. The CGKEYCHIP1 wired into a “ColorMax” or “stick” lets you create your own keyboard by adding your own buttons.

The CGKEYCHIP1 is a 24 pin chip in a DIP (through-hole) package. Four wires connect to the Maximite that include ground, power, and the two PS/2 communication signals (data/clock). You can wire in twelve distinct buttons for the keyboard keys plus three “modifier” buttons.

The CGKEYCHIP1 has two sets of keys that it can transmit:


Set1 - Set2
F1 - Up Arrow
F2 - Down Arrow
F3 - Left Arrow
F4 - Right Arrow
F5 - Space Bar
F6 - Page Up
F7 - Page Down
F8 - Enter
F9 - End
F10 - Home
F11 - Tab
F12 - Backspace


An input pin on the chip selects between these sets of keys.



The CGKEYCHIP1 runs off of the 5V that the PS/2 connection provides. Both chip grounds should be connected to ground. The pins marked “NoConnect” should not be connected to anything.

Supplied with the CGKEYCHIP1 is a 1.3 kohm resistor that has to be connected from pin 11 to pin 15 for the chip to operate correctly

The PS/2 data signals are open-collector signals. When you connect the GCKEYCHIP1 to a CGCOLORMAX1 there are pull up resistors already on the ColorMax. When you connect to a CGMMSTICK1 and CGVGAKBD1 combination, the CGVGAKBD1 board already has pull up resistors in place for the two PS/2 lines. No additional resistors are needed in this case.

When you connect the CGKEYCHIP1 to just a CGMMSTICK1, you will need to attach two pull-up resistors in order to have the chip function correctly. Each of the two PS/2 lines should be pulled to 5V through a 10 kohm resistor.

The SetSelect input to the CGKEYCHIP1 selects the key set that you wish to use, either set 1 or set 2. Connecting this input directly to 5V will select set 1, while connecting this input to ground selects set 2.

The key inputs are activated by momentary contact to ground. Simple buttons can be used.



You can write a very simple MMBasic program to check the codes that the keys transmit against the list of codes found in this document:

[code]
do
a$ = inkey$
if a$ <> "" then
print asc(a$)
endif
loop
[/code]

When run, set 1 will return these codes:

[code]
Key - Plain - Control - Shift - Shift+Control
--- --- --- --- ---
F1 - 145 - 209 - 177 - 241
F2 - 146 - 210 - 178 - 242
F3 - 147 - 211 - 179 - 243
F4 - 148 - 212 - 180 - 244
F5 - 149 - 213 - 181 - 245
F6 - 150 - 214 - 182 - 246
F7 - 151 - 215 - 183 - 247
F8 - 152 - 216 - 184 - 248
F9 - 153 - 217 - 185 - 249
F10 - 154 - 218 - 186 - 250
F11 - 155 - 219 - 187 - 251
F12 - 156 - 220 - 188 - 252
[/code]

Set 2 returns these codes :

[code]
Key - Plain - Control
--- --- ---
Up Arrow - 128 - 192
Down Arrow - 129 - 193
Left Arrow - 130 - 194
Right Arrow - 131 - 195
Space Bar - 32 - 0
Page Up - 136 - 200
Page Down - 137 - 201
Enter - 13 - 13
End - 135 - 199
Home - 134 - 198
Tab - 9 - 9
Backspace - 8 - 8
[/code]

MMBasic interprets the Alt as a key by itself, not a modifier. The keycode for the Alt key is 139, Control-Alt is 203, Shift-Alt is 171, Control-Shift-Alt is 235. This program will return two key codes when Alt is used, first the Alt code, then the key code. Control-Shift-Alt-F1, for example, returns 235 241.


http://www.circuitgizmos.com/products/cgkeychip1/cgkeychip1. shtml
Edited by CircuitGizmos 2012-12-02
Micromites and Maximites! - Beginning Maximite
 
Print this page


To reply to this topic, you need to log in.

© JAQ Software 2024