Author Topic: Prototyping New Keyboard Designs (Using Plate Mounting and Direct Wiring)  (Read 142678 times)

0 Members and 1 Guest are viewing this topic.

Offline bearcat

  • Posts: 99
  • Location: Seattle, WA
definitely a nice layout :)  Why not angle it out, even just a little, or make it hinged, a la the Goldtouch?

Offline SubGothius

  • Posts: 79
  • Location: Tucson, AZ USA
    • HTDoctor.com
Dude, congrats on making an amazing layout.  Better than the typematrix layout IMHO.

definitely a nice layout :)  Why not angle it out, even just a little, or make it hinged, a la the Goldtouch?

Thanks, glad y'all appreciate it. Even if I wanted to add a hinge/pivot or angled split here, it'd be tricky to split this layout without losing some key (heh) aspects of its current functional elegance, and of course that would also make the board wider; besides, this thread is about creating simple mounting plates to prototype/hand-wire new board designs, and adding hinges and odd angles may exceed, and certainly complicate, that purview. Besides, we already have the ErgoDox for those wanting major hand separation and custom angling potential; this is just a different approach.

The starting idea here was to make a layout which separated the hands widely enough that an angled split would be unnecessary, since that sort of thing is necessitated by having the forearms converge from shoulder width to meet a narrow keyboard with little or no separation between right- and left-hand keys. By pushing the alphanum keys to the outer edges of a Tipro 128-key (16x8) matrix to create the desired hand separation and minimize pinky-stressful key placements, I realized that left just enough room for thumb-shift keys, cursor nav, and a numpad in the middle; with those elements in place, the rest of the layout was just sorting out details for lesser-used key placements. Originally, I'd designed a layout making full use of the 128-key matrix (the layout shown here is a row short), with the extra 16 keys being assigned to shifted-numrow symbols (!@#$%^&*) and a full set of brackets ({[<>]}), but I'm actually more pleased with how this 112-key layout turned out.

The early TypeMatrix model 2020 had a similar concept, but IMO had inadequate separation between the hands and an otherwise muddled implementation with some odd key placements, layer-based numpad (which I've never liked in practice), and continued use of pinky-stressful keys in traditional positions. Their current model 2030 only exacerbates those concerns, separating the halves by only one column, along with other new quirks I don't care for.
« Last Edit: Tue, 07 May 2013, 04:09:27 by SubGothius »
"In theory there's no difference between theory and practice, but in practice there is." -Jan L.A. van de Snepscheut

Offline TotalChaos

  • Posts: 733
  • Location: Houston, Texas
  • Indy Game Coder
I had a similar idea for a matrix layout upon seeing this thread. I'd been thinking of getting one or two of those Tipro 128-key POS boards, but it'd be a PITA to unsolder all those switches just to swap in tactile MX clears or browns, as I really do not care for the linear blacks they come with, and the used units available on US eBay are usually pretty grungy looking anyway.

Here's a 112-key version of the sort of layout I was thinking of, designed to minimize pinky stress and maximize the spread between hands in normal typing use, without deviating too radically from a familiar layout for alphanumeric and common punctuation key positions:
(Attachment Link)

I Like how you allow the possibility of thumb-shifting.

But where did the Menu key / Help key go?
Rosewill RK-9000RE #1 (Broke on day 26, fixed with Scotch Tape on day 42, barely holding together)
Rosewill RK-9000RE #2 (Lubed, still in the box.  I am afraid to use it because it will break like the first one)

Offline TD22057

  • Posts: 177
  • Location: Southern California
Here's a play on the matrix idea with a 10 deg rotation on the hands.  Not really sure about some of the key placements - there are a lot of different options in this kind of layout.  AFAIK, it's hard/impossible to get custom key caps for the larger keys in this layout.


Offline The_Beast

  • * Maker
  • Posts: 3964
  • Location: Wisconsin
  • I like wood ಠ_๏
Here's a play on the matrix idea with a 10 deg rotation on the hands.  Not really sure about some of the key placements - there are a lot of different options in this kind of layout.  AFAIK, it's hard/impossible to get custom key caps for the larger keys in this layout.

Show Image


Try to grab a DSA set and find blanks for the uncommon 2x keys
Vendor Status: Sadly, not taking any orders/pre-orders at this time

Vendor Quick Links: | Vendor Forum | Hardwood Wrist Rests | Hardwood 60% Cases | Customer Gallery | Giveaway |

Offline bearcat

  • Posts: 99
  • Location: Seattle, WA
TD, love the layout!  Would you have trouble hitting the space instead of the back/enter keys like that?

Offline TD22057

  • Posts: 177
  • Location: Southern California
TD, love the layout!  Would you have trouble hitting the space instead of the back/enter keys like that?

Good point - I should probably stop playing w/ the CAD software and actually lay out some keys on the desk to try things out.

Offline TheFlyingRaccoon

  • HHKB Pro
  • * Maker
  • Posts: 666
  • Location: Texas
  • Cable maker and future engineer
Playing around with some spare keycaps and came up with this. Reminds me of like a 40% Model F.


HHKB Pro 2   SmallFry Keyboard

Offline HannibalChew

  • Formerly PixelScript
  • Posts: 109
  • Location: UK
    • gaffworks
Where do you all get your measurements from? I want to design my own plate but wouldn't know where to start with all the spacing :P

Offline jdcarpe

  • * Curator
  • Thread Starter
  • Posts: 8852
  • Location: Odessa, TX
  • Live long, and prosper.
Where do you all get your measurements from? I want to design my own plate but wouldn't know where to start with all the spacing :P

I just started with existing plate designs, i.e. Phantom and Poker. :)
KMAC :: LZ-GH :: WASD CODE :: WASD v2 :: GH60 :: Alps64 :: JD45 :: IBM Model M :: IBM 4704 "Pingmaster"

http://jd40.info :: http://jd45.info


in memoriam

"When I was a kid, I used to take things apart and never put them back together."

Offline HannibalChew

  • Formerly PixelScript
  • Posts: 109
  • Location: UK
    • gaffworks
ah i see. My poker has no plate so i have nothing to work from :(

Offline Zifle

  • Posts: 166
  • Location: Denmark
  • Nyaaa
Where do you all get your measurements from? I want to design my own plate but wouldn't know where to start with all the spacing :P

I just downloaded one of jdcarpes files, posted in this thread, to gather measurements. I assume those are fine.
I like cats.

Offline TD22057

  • Posts: 177
  • Location: Southern California
Where do you all get your measurements from? I want to design my own plate but wouldn't know where to start with all the spacing :P

See my post here:  http://geekhack.org/index.php?topic=40567.msg871748#msg871748

It has links to the cherry web site for their measurements and the overall keycap sizing.  I'll post a DWG file with hole and keycap measurements later tonight.


Offline TD22057

  • Posts: 177
  • Location: Southern California
Here is the DWG file I've been using to prototype plate designs. It contains some of my ideas for layouts and individual keys with the overall key cap shape and the hole for the switch on different layers (so the key cap and text can be turned off to leave the hole).  It's pretty easy to grab the various sizes of keys and arrange them how ever you want.  Original shapes are from jdcarpe and the phantom files.  I'm using the free DraftSight CAD software to work on everything. 

I haven't made a plate yet to try fitting switches in it so use at your own risk.  I think everything is OK but I can't be 100% sure.

Offline bazemk1979

  • Posts: 1625
I like ibm model F design
Quote from: IvanIvanovich on Wed, 08 January 2014, 18:02:50

When you bottom out dong cap... is it going balls deep?

Offline HannibalChew

  • Formerly PixelScript
  • Posts: 109
  • Location: UK
    • gaffworks
Here is the DWG file I've been using to prototype plate designs. It contains some of my ideas for layouts and individual keys with the overall key cap shape and the hole for the switch on different layers (so the key cap and text can be turned off to leave the hole).  It's pretty easy to grab the various sizes of keys and arrange them how ever you want.  Original shapes are from jdcarpe and the phantom files.  I'm using the free DraftSight CAD software to work on everything. 

I haven't made a plate yet to try fitting switches in it so use at your own risk.  I think everything is OK but I can't be 100% sure.
Thanks a lot! That should be i big help!

Offline HannibalChew

  • Formerly PixelScript
  • Posts: 109
  • Location: UK
    • gaffworks
I'v messed about with a few designs and ended up with this, which i really like. It nothing too crazy :P
I'm not sure about the double spacebar, maybe a 7x would be better.




Offline esoomenona

  • Gnillort?
  • Posts: 5323
Are those splits 2.75x?

Offline HannibalChew

  • Formerly PixelScript
  • Posts: 109
  • Location: UK
    • gaffworks
Are those splits 2.75x?
Yeah it's 2.75x, if i changed that to a 7x i would only have a 1.00 and a 1.25 on each side of the spacebar. I think that would work :confused:

Offline esoomenona

  • Gnillort?
  • Posts: 5323
I like it the way it is. Most people I've seen only use one side of the spacebar or the other, so having an exceptionally large spacebar is a waste of space. I could imagine using the other side for backspace or something else. Then the backspace could be split in two for two regular 1x keys.

Also, what size are the rest of the bottom row?

Offline HannibalChew

  • Formerly PixelScript
  • Posts: 109
  • Location: UK
    • gaffworks
The bottom row has two 1.25x and a 1x on each side of the spacebar.
What would you suggest the two 1x keys would be if i move backspace onto the spacebar?

Offline esoomenona

  • Gnillort?
  • Posts: 5323
I always use Delete, so that would be preferable for me. The other could also be like a Fn lock or Num lock, with a numpad/function/arrow layer? Also, I would think something more uniform with cap sets would be more desirable along the bottom, such as all 1.25x or two 1.5x and one 1x on each side.

Offline HannibalChew

  • Formerly PixelScript
  • Posts: 109
  • Location: UK
    • gaffworks
I changed them all to 1.25x and it looks a lot better. I like the look of having the two indents on each side, HHKB style :D


Offline HannibalChew

  • Formerly PixelScript
  • Posts: 109
  • Location: UK
    • gaffworks
A couple others i'v started.

1)

2)

Offline TD22057

  • Posts: 177
  • Location: Southern California
I was trying to prototype some designs using key caps laid out on a towel (the desk was too slippery) but it's hard to get a feel for what the keys will feel like.  I was thinking that what I really need is a modular key switch.  If I could mount a single switch in some kind of modular unit, then I could prototype switch placements and actually type on them to see what they feel like.  Basically something like a Lego brick with a switch in it that could be connected to other switches to make a layout.

I don't have any free switches to try this with yet (my shipment of browns is showing up in a few weeks) but I might look into inserting switches into a small pieces of plastic or hard board with holes in them to hold the switch.  If I can figure out an easy way to do this and hold the individual switches together, it would make trying out different keyboard layouts a lot easier before I get any plates made. 

Offline jdcarpe

  • * Curator
  • Thread Starter
  • Posts: 8852
  • Location: Odessa, TX
  • Live long, and prosper.
I was trying to prototype some designs using key caps laid out on a towel (the desk was too slippery) but it's hard to get a feel for what the keys will feel like.  I was thinking that what I really need is a modular key switch.  If I could mount a single switch in some kind of modular unit, then I could prototype switch placements and actually type on them to see what they feel like.  Basically something like a Lego brick with a switch in it that could be connected to other switches to make a layout.

I don't have any free switches to try this with yet (my shipment of browns is showing up in a few weeks) but I might look into inserting switches into a small pieces of plastic or hard board with holes in them to hold the switch.  If I can figure out an easy way to do this and hold the individual switches together, it would make trying out different keyboard layouts a lot easier before I get any plates made. 

kmiller8 did just that with cardboard. He cut holes for the switches to get a feel for the design before prototyping it.

http://geekhack.org/index.php?topic=38775.0
KMAC :: LZ-GH :: WASD CODE :: WASD v2 :: GH60 :: Alps64 :: JD45 :: IBM Model M :: IBM 4704 "Pingmaster"

http://jd40.info :: http://jd45.info


in memoriam

"When I was a kid, I used to take things apart and never put them back together."

Offline HannibalChew

  • Formerly PixelScript
  • Posts: 109
  • Location: UK
    • gaffworks
I was trying to prototype some designs using key caps laid out on a towel (the desk was too slippery) but it's hard to get a feel for what the keys will feel like.  I was thinking that what I really need is a modular key switch.  If I could mount a single switch in some kind of modular unit, then I could prototype switch placements and actually type on them to see what they feel like.  Basically something like a Lego brick with a switch in it that could be connected to other switches to make a layout.

I don't have any free switches to try this with yet (my shipment of browns is showing up in a few weeks) but I might look into inserting switches into a small pieces of plastic or hard board with holes in them to hold the switch.  If I can figure out an easy way to do this and hold the individual switches together, it would make trying out different keyboard layouts a lot easier before I get any plates made.
A big piece of polystyrene would be good. No need to cut any holes and i'm sure its cheap to get.

Offline TD22057

  • Posts: 177
  • Location: Southern California
A big piece of polystyrene would be good. No need to cut any holes and i'm sure its cheap to get.

That's a great idea!

Offline TheFlyingRaccoon

  • HHKB Pro
  • * Maker
  • Posts: 666
  • Location: Texas
  • Cable maker and future engineer
How hard would it be for someone with little programming knowledge to setup the teensy to do this: http://geekhack.org/index.php?topic=20898.0 I have a cnc mill so I can cut out the plate and I am confident enough in my soldering/ electronics knowledge to make the matrix and solder the ribbon cable. I just want some help with the teensy before I take on this project.
HHKB Pro 2   SmallFry Keyboard

Offline TotalChaos

  • Posts: 733
  • Location: Houston, Texas
  • Indy Game Coder
My thumbs press very close to the center of the spacebar on my normal keyboards.

I have long fingers.  :p
Rosewill RK-9000RE #1 (Broke on day 26, fixed with Scotch Tape on day 42, barely holding together)
Rosewill RK-9000RE #2 (Lubed, still in the box.  I am afraid to use it because it will break like the first one)

Offline HannibalChew

  • Formerly PixelScript
  • Posts: 109
  • Location: UK
    • gaffworks
I also press the center a lot as well, that's why i'm considering a 7x spacebar. I would want to test using the split design before getting one made.

Offline domoaligato

  • * Exquisite Elder
  • Posts: 1672
  • Location: USA
  • All your base are belong to us!
    • All your base are belong to us!
I am working on a hard wired winkeyless iso gh60 based design using yellow/orange omrons.
I am using this as a base.
http://wiki.geekhack.org/index.php?title=Hard-Wiring_How-To

can anyone help me understand what the 3 pins on the omron switches are for? I need to understand which pin I use for the diodes and rows and which for the columns and what the 3rd pin is for?

here is a few pics of the switches...



« Last Edit: Sat, 11 May 2013, 20:21:28 by domoaligato »

Offline metalliqaz

  • * Maker
  • Posts: 4951
  • Location: the Making Stuff subforum
  • Leopold fanboy
First thing I would do is dig up the datasheet for those things.

Offline Findecanor

  • Posts: 5036
  • Location: Koriko
Datasheet in Japanese (found on the Deskthority wiki.)

The diagram in the datasheet shows that pins 1 and 3 are connected.
« Last Edit: Tue, 14 May 2013, 04:46:08 by Findecanor »

Offline domoaligato

  • * Exquisite Elder
  • Posts: 1672
  • Location: USA
  • All your base are belong to us!
    • All your base are belong to us!
Datasheet in Japanese (found on the Deskthority wiki.)

The diagram in the datasheet shows that pins 1 and 3 are connected.

thanks!
So which pin would the diode go on? 1-3 or 2 ?

Offline Grimey

  • Posts: 262
  • Location: Eye Oh Wah
Datasheet in Japanese (found on the Deskthority wiki.)

The diagram in the datasheet shows that pins 1 and 3 are connected.

thanks!
So which pin would the diode go on? 1-3 or 2 ?

I would guess from the datasheet that Pin1 and Pin3 are already connected internally, thus the switch connects Pin1 and Pin3 to Pin2.  The diode would either need to be placed on Pin1/Pin3 or Pin2 as a switch like this does not have any directional current requirements or control (just bridging the gap).
Erlang your pants off

Offline domoaligato

  • * Exquisite Elder
  • Posts: 1672
  • Location: USA
  • All your base are belong to us!
    • All your base are belong to us!
cool. thanks for the easy answer.
here are my next steps in the omron alps gh60 project lol.
solder a diode two pin 1/3 and solder the other end to an ide cable.
solder pin 2 to the ide cable....
flash teensey firmware...

Here is where I have my next questions that will hopefully get me to the point of finishing this.
Will I end up with one wire from all the rows and one wire from all the columns?
which pins on the teensey do I attach these 2 wires?

Offline Grimey

  • Posts: 262
  • Location: Eye Oh Wah
cool. thanks for the easy answer.
here are my next steps in the omron alps gh60 project lol.
solder a diode two pin 1/3 and solder the other end to an ide cable.
solder pin 2 to the ide cable....
flash teensey firmware...

Here is where I have my next questions that will hopefully get me to the point of finishing this.
Will I end up with one wire from all the rows and one wire from all the columns?
which pins on the teensey do I attach these 2 wires?

1. When I wire a matrix I go for simplicity.  Each column gets wired to a separate pin, and each row gets wired to a separate pin.  EXAMPLE: if you have 10 rows and 10 columns you would need 20 pins.

2. That depends on your code, teensy pins can either be used to "Push" or "Pull".  A good practice would be to wire your matrix consistently with either all the columns or rows pushing and the opposite pulling.  EXAMPLE: your code would check to see what column was pulling current, then check which row is getting current pushed to it, thus getting your X and Y for the matrix.
« Last Edit: Fri, 17 May 2013, 21:33:07 by Grimey »
Erlang your pants off

Offline dorkvader

  • Posts: 6288
  • Location: Boston area
  • all about the "hack" in "geekhack"
Playing around with some spare keycaps and came up with this. Reminds me of like a 40% Model F.
Show Image

Show Image



I like the way you think!
Here's mine so far (I'm staring to think left numpad is good.

I would be using numpad as the following:
F# keys (possibly, may use front printed toprow for that)
# keys and symbols
navigation (arrowkeys, pgup, etc)

Having a layout like this means you really got to know your layer swap keys well, and how they work with a numlk key (very important) and a function key (layer swap key) I suspect having multiple dedicated keys for this is a good idea.

http://goo.gl/DY9Pf

This version has dedicated arrowkeys, but I'm almost positive I'll get rid of them.

Oh, I'd be using 1x keys for the odd-sized modifiers, most likely.

Now if we can 3D print some keycaps, maybe we can make custom hardwired hall effect keyswitch keyboards. The old honeywell (micros witch) HE switches are rated for 30 billion cycles.

Offline Pyrolistical

  • Posts: 60
  • Location: Vancouver, Canada
I am a huge fan of the Matrix layout.

So for my second keyboard I am going to make a compact version my first.

22594-0

The layout is similar, but now with bigger modifiers.  All keycaps will be R1, so no stair casing.


Offline domoaligato

  • * Exquisite Elder
  • Posts: 1672
  • Location: USA
  • All your base are belong to us!
    • All your base are belong to us!
1. When I wire a matrix I go for simplicity.  Each column gets wired to a separate pin, and each row gets wired to a separate pin.  EXAMPLE: if you have 10 rows and 10 columns you would need 20 pins.

2. That depends on your code, teensy pins can either be used to "Push" or "Pull".  A good practice would be to wire your matrix consistently with either all the columns or rows pushing and the opposite pulling.  EXAMPLE: your code would check to see what column was pulling current, then check which row is getting current pushed to it, thus getting your X and Y for the matrix.

ok so there are 23 pins on my teensey. not counting gnd ,5v, RST pins. just attach them to any of those pins?

Offline Grimey

  • Posts: 262
  • Location: Eye Oh Wah


ok so there are 23 pins on my teensey. not counting gnd ,5v, RST pins. just attach them to any of those pins?

So to make sure I am making sense let me make a super small example.

---------
| A | B |
---------
| C | D |
---------

Lets just say for argument sake that you want a 4 key keyboard as displayed above.  This 4 key keyboard would require 4 total pins to work if you just wanted to use a straight matrix wiring (no muxes or anything)

In your case any of the other pins you mentioned would be fine places to attach the 2 Column and 2 Row pins (not that familiar with the teensy to know if you can re-purpose the three you mentioned).  I am not sure what you plan on using for software for your teensy, but if you are planning to write your or modify someone else's code then wire it up however you want.
Erlang your pants off

Offline domoaligato

  • * Exquisite Elder
  • Posts: 1672
  • Location: USA
  • All your base are belong to us!
    • All your base are belong to us!


ok so there are 23 pins on my teensey. not counting gnd ,5v, RST pins. just attach them to any of those pins?

So to make sure I am making sense let me make a super small example.

---------
| A | B |
---------
| C | D |
---------

Lets just say for argument sake that you want a 4 key keyboard as displayed above.  This 4 key keyboard would require 4 total pins to work if you just wanted to use a straight matrix wiring (no muxes or anything)

In your case any of the other pins you mentioned would be fine places to attach the 2 Column and 2 Row pins (not that familiar with the teensy to know if you can re-purpose the three you mentioned).  I am not sure what you plan on using for software for your teensy, but if you are planning to write your or modify someone else's code then wire it up however you want.

i was planning on using the gh60 code. the teensey uses the same atmel controller as the gh60. phantom firmware should work also. i understand the concept now. i am in the process of testing all the omron switches and will test with one switch before wireing the entire matrix.

Offline bisl

  • Posts: 212
I want a 60% board containing nothing more than a 15x5 matrix of 1x keys.

Offline jdcarpe

  • * Curator
  • Thread Starter
  • Posts: 8852
  • Location: Odessa, TX
  • Live long, and prosper.
I want a 60% board containing nothing more than a 15x5 matrix of 1x keys.

75 non-staggered keys?
KMAC :: LZ-GH :: WASD CODE :: WASD v2 :: GH60 :: Alps64 :: JD45 :: IBM Model M :: IBM 4704 "Pingmaster"

http://jd40.info :: http://jd45.info


in memoriam

"When I was a kid, I used to take things apart and never put them back together."

Offline metalliqaz

  • * Maker
  • Posts: 4951
  • Location: the Making Stuff subforum
  • Leopold fanboy
I want a 60% board containing nothing more than a 15x5 matrix of 1x keys.

No space bar?

Offline bisl

  • Posts: 212
75 non-staggered keys?

Yep. Same dimensions as a Pure, but nothing but matrix-aligned 1x keys.

No space bar?

This was my Filco before I built my Ergodox: http://i.imgur.com/3qzpIZ1.jpg :)


Offline metalliqaz

  • * Maker
  • Posts: 4951
  • Location: the Making Stuff subforum
  • Leopold fanboy
You cray-cray!

Offline TheFlyingRaccoon

  • HHKB Pro
  • * Maker
  • Posts: 666
  • Location: Texas
  • Cable maker and future engineer
75 non-staggered keys?

Yep. Same dimensions as a Pure, but nothing but matrix-aligned 1x keys.

No space bar?

This was my Filco before I built my Ergodox: http://i.imgur.com/3qzpIZ1.jpg :)

Wow. I almost considered this when I got frustrated at issues with my spacebar stabilizers, but I didn't think someone would actually do this. Do you actually use it like that?
HHKB Pro 2   SmallFry Keyboard

Offline bisl

  • Posts: 212

Wow. I almost considered this when I got frustrated at issues with my spacebar stabilizers, but I didn't think someone would actually do this. Do you actually use it like that?

I did, and I loved it! With bpiphany's HID liberation board, it was a total dream. Even though I'm on ergodox now I'd definitely try out a 60% board so long as it had columnar layout and it was programmable. I mean you could use any of the bottom row keys for your spacebar; whichever was the most comfortable. Then the ones next to it could be your alt and a function layer, perhaps, plus you have all the keys reachable by your other thumb, too. Honestly I think it'd be a pretty sweet board to have. It would probably travel a little better than edox, too.