Author Topic: Left-hand only programming keyboard  (Read 3074 times)

0 Members and 1 Guest are viewing this topic.

Offline GMatt

  • Thread Starter
  • Posts: 15
Left-hand only programming keyboard
« on: Sat, 29 July 2017, 23:37:31 »
So the concept for this keyboard was to see if I could make a one-handed keyboard which would allow my right hand to remain on the mouse 100% of the time.
Since this was to be used at work I needed it to work well for programming, so all the parenthesis keys would need to be easily accessible.
174560-0
This shows the basic layout. It's based on the Matias one-handed keyboards where the space bar acts as a modifier to switch the keys to those normally on the right hand. Eg space+F1 = F12. The keys remain under the same fingers as before, just on the other hand.
I've not tried to make this mega-small and as you can see I've included all the [] <> keys on the right because they're so heavily used in programming.
I also kept the key sizes standard so I'd have no trouble sourcing keycaps.

Offline GMatt

  • Thread Starter
  • Posts: 15
Re: Left-hand only programming keyboard
« Reply #1 on: Sat, 29 July 2017, 23:44:19 »
174562-0
Plates came from lasergist and are 3mm thick, which was a mistake on my part, but more on that later. Switches are Cherry brown; really wanted green but working in an open plan office so had to keep things quiet. Keycaps are from Tai Hao, they're new cubic profile in vintage white. Another small mistake here as I didn't realise these caps aren't dsa so they're not great for moving keys between rows.
The board is a teensy 2.0, bought 2 in case I frazzed one!

Offline GMatt

  • Thread Starter
  • Posts: 15
Re: Left-hand only programming keyboard
« Reply #2 on: Sat, 29 July 2017, 23:56:33 »
Ok here's the board with switches in and wiring done.
174564-0
I used 3M strong adhesive tape to mount the teensy, this worked really well as it suspends the board 1mm or so off the plate and keeps it totally still.
174566-1
Ok so remember I said that ordering 3mm plates was a mistake? Here's why, the switches are fine but the Cherry stabilisers clip above AND below the plate and they look designed for 1.5mm. No way they'd go into my plate, so I thought I'd have to reorder it thinner. Turns out I could thin it down where needed with (A LOT) of Dremelling. Bit of a pain but at least I could use the plate.
174568-2

Offline GMatt

  • Thread Starter
  • Posts: 15
Re: Left-hand only programming keyboard
« Reply #3 on: Sun, 30 July 2017, 00:09:50 »
Software wise I wrote my own from scratch. I program in C for work so I was ok with this bit. I also needed the custom handling for the space bar so it would act as a modifier. This worked out surprisingly easily, basically if you tap space quickly it'll register as a space, but only when the key is released. If you hold it and press another key it acts as a modifier.
Once I got all the letter and number keys modifying so I could get to all the keys of a normal keyboard I thought about what else I could use the space modification for. Looking at the punctuation keys to the right of the letters I realised they are quite far from the shift key so I made space act as a shift modifier for these. So space+ [ = {
Also I realised that open and close parenthesis are quite hard to get to, as you need shift + space + 2 to get (
So I used space + x = ( and space *c =) as x and c do not have mirrored letters they need to modify to.

This is the finished product, all works as expected, just have to get used to it now!
Note the slightly wonky Windows key because the keycap's not designed for it to be on the top row, but I think it's ok. And Tab became backspace, which modifies to tab if that makes sense!
174570-0
« Last Edit: Sun, 30 July 2017, 00:12:18 by GMatt »