Split ergonomic keyboard project

User avatar
justcallmecrash

10 Aug 2012, 22:29

Just noticed something... how the hell am I going to game right handed? The space bar (universal jump) is on the right (mousing) hand.

... I guess I could assign backspace to jump, but it seems weird.

Anyway, this is awesome. I can't WAIT!

Tafryn

10 Aug 2012, 23:43

justcallmecrash wrote:Just noticed something... how the hell am I going to game right handed? The space bar (universal jump) is on the right (mousing) hand.

... I guess I could assign backspace to jump, but it seems weird.

Anyway, this is awesome. I can't WAIT!
That's a decent point. <Delete> could be moved to where the second <Tab> is on the right hand side, and then a second <Space> could take it's place. I like the idea of a centrally located <Tab> for ease of tab-completion, but it certainly does make gaming more of a challenge.

The shape of the ErgoDox will probably lend itself more to ESDF gaming (or .OEU in this case) rather than WASD since you'll want to keep your hand in the correct position to access the keys on the thumb cluster. This probably means you'll be doing some rebinding either way.

Ultimately, there's always the option of remapping the firmware, so you'll be able to put whatever you want where ever you want. However, I think it's worth the effort to try to come up with a default dvorak layout that meets as many people's needs as possible. Perhaps some more people could weigh in on specific key locations, and we'll see where that leads.

Sunspots

11 Aug 2012, 02:49

Since I started touch-typing, ESDF have become a natural control model for most games, It can be a bitch remapping all the things but it's mostly worth it. I do Colemak (ESDF becomes FRST but shit the same, the thing is that it moves to your default touch-typing finger setting, rather than one step to the left) I am quite fascinated by the Colemak alternative characters, I have so far skipped that part and only remapped the alpha-part of my keyboard and still keep my regular Swedish special characters, once I move to the ErgoDox, I think I can adapt to a few more changes.

OrangeJewce

11 Aug 2012, 05:07

Tafryn wrote:
justcallmecrash wrote:Just noticed something... how the hell am I going to game right handed? The space bar (universal jump) is on the right (mousing) hand.

... I guess I could assign backspace to jump, but it seems weird.

Anyway, this is awesome. I can't WAIT!
That's a decent point. <Delete> could be moved to where the second <Tab> is on the right hand side, and then a second <Space> could take it's place. I like the idea of a centrally located <Tab> for ease of tab-completion, but it certainly does make gaming more of a challenge.

The shape of the ErgoDox will probably lend itself more to ESDF gaming (or .OEU in this case) rather than WASD since you'll want to keep your hand in the correct position to access the keys on the thumb cluster. This probably means you'll be doing some rebinding either way.

Ultimately, there's always the option of remapping the firmware, so you'll be able to put whatever you want where ever you want. However, I think it's worth the effort to try to come up with a default dvorak layout that meets as many people's needs as possible. Perhaps some more people could weigh in on specific key locations, and we'll see where that leads.
As I've stated previously. My first release of the UI will have the following Presets:
ANSI
Dvorak
Colemak

You will be able to edit all of the presets if you find I did something wrong. The great thing about the way I'm implementing this is you all will be able to trade .hex files and open them up into the UI so that you can compare and contrast layouts, even if the default is no good for your purposes. When I put the official project up on Github/Codeplex then you can have direct input into what the default layouts should look like.

Cheers,

ic07

11 Aug 2012, 05:14

OrangeJewce wrote:As I've stated previously. My first release of the UI will have the following Presets:
ANSI
Dvorak
Colemak

You will be able to edit all of the presets if you find I did something wrong. The great thing about the way I'm implementing this is you all will be able to trade .hex files and open them up into the UI so that you can compare and contrast layouts, even if the default is no good for your purposes. When I put the official project up on Github/Codeplex then you can have direct input into what the default layouts should look like.

Cheers,
I'm not trying to be mean OJ - I do want to have a Dvorak layout in the source too though - for those of us running linux / os x, or wanting to hack on the key-functions and not worry about remapping as a second step. :)

ic07

11 Aug 2012, 05:55

Tafryn wrote:How about having <Left Func> and <Right Func>. Both could act as modifiers when holding them and pressing any other normal key. Locking a side to the function layer could be accomplished by holding one function key and pressing the other (e.g. Holding down <Left Func> and pressing <Right Func> would lock the right side to the function layer and vice versa). Unlocking could be accomplished by repeating the locking key-combination. That way the behavior of the function keys stays consistent regardless of which layer either side is in.

The behavior of a <*Func> + <Normal Key> keypress on a function locked side is still somewhat unclear. It could act like a keypress on the default layer, or it could act like a keypress on the function layer. For example, lock the right side to the function layer with <Left Func>+<Right Func> then press <Right Func>+<F10>. Should the resulting keypress be "8" or "F10"?
That should work :) . I'll have to rewrite some of the layer logic before it does - but I really need to rewrite that part anyway, I just haven't had time yet...

About the ambiguity: given how things are implemented, the result of your example will probably have to be "F10" - i.e. the <func> keys will *always* act as if they're on the default layer when they're pressed by themselves, and *always* act as if they're on the function layer when pressed after the other <func> key. It might be possible to have the other behavior, but I'm not sure how hard it'd be. I'll think about it more / see how things work when I get time to try it out :) .

User avatar
Kurk

11 Aug 2012, 11:16

Tafryn, i like that layout. I do have a few comments/suggestions though which are mostly based on my experience with a Kinesis Advantage (Dvorak).

*The top corners are good to reach with your ring finger that's why "plus" and "tilde" should switch places.
*I think it's better to have all four arrow keys next to each other; move "[{" and "]}" to the left.
*One thing I miss on the Kinesis is an Enter key for the left hand if the right hand is busy with the mouse. I suggest taking one of the Super keys for that.
*I would switch "Tab" and "Super" on the right unit.
*"Insert" could be moved to the function layer; this key position could be used for a prominent macro like Alt+Tab
*There's probably some more room for improvement. One thing I'm still struggling with on my Kinesis is the poor accessibility of the "Alt" key, its position in the thumb cluster is not the best.

Behold my IrfanView skills:
Attachments
ergodox-Dvorak_mod.jpg
ergodox-Dvorak_mod.jpg (149.52 KiB) Viewed 5772 times

bpiphany

11 Aug 2012, 14:54

I received 10 IO-expanders, and USB contacts, 1000 SOD-123 diodes, plus a lot of other stuff yesterday. Less than 48 hours from order with mouser to delivery in Sweden! Mouser don't have the 3.5mm connector though, and I think I will be satisfied with having a fixed cable. All the stock ones I have found are very long...

I don't know if dox and ic07 need any new components, but they are getting some of the prototype boards. They are half way completed at pcbwing. So they should arrive in a week or so. I will have some extra components when this thing rolls out for real. And if anyone want me to do some of the soldering I can probably do that for a few dollars extra. Need to work towards paying off my soldering station =D

yobfish

11 Aug 2012, 17:00

bpiphany: Hi, I am more than willing to pay for the soldering job as I don't have any soldering tools or skills. Better still, if you could assemble the whole thing (including the Cherry red switches and keycaps, though these I can do myself, I guess) I am more than willing to pay for the labor, shipping and handling.

As for the layout, it would be great if some version based on the Maltron layout were represented in the Presets. One thing I like about ErgoDox is that its design makes it possible to take advantage of the Maltron layout with the position of E on the left thumb cluster, which I heard is difficult to do on a Kinesis Advantage. This has been the second most important reason for me to delay buying a Kinesis, after the fact that it is not a split keyboard. (I am willing to try the remapping on my own if I have to, but I have yet to figure out how.)

Anyhow, I'm really thrilled at the thought of using this good a keyboard. It will make my life much easier and happier. Many thanks to everyone who has contributed to this effort.

OrangeJewce

12 Aug 2012, 03:11

ic07 wrote:
OrangeJewce wrote:As I've stated previously. My first release of the UI will have the following Presets:
ANSI
Dvorak
Colemak

You will be able to edit all of the presets if you find I did something wrong. The great thing about the way I'm implementing this is you all will be able to trade .hex files and open them up into the UI so that you can compare and contrast layouts, even if the default is no good for your purposes. When I put the official project up on Github/Codeplex then you can have direct input into what the default layouts should look like.

Cheers,
I'm not trying to be mean OJ - I do want to have a Dvorak layout in the source too though - for those of us running linux / os x, or wanting to hack on the key-functions and not worry about remapping as a second step. :)
ic,

You're not being mean; if anything you're being generous, as it means less work for me!

Cheers,

OrangeJewce

12 Aug 2012, 03:27

yobfish wrote:bpiphany: Hi, I am more than willing to pay for the soldering job as I don't have any soldering tools or skills. Better still, if you could assemble the whole thing (including the Cherry red switches and keycaps, though these I can do myself, I guess) I am more than willing to pay for the labor, shipping and handling.

As for the layout, it would be great if some version based on the Maltron layout were represented in the Presets. One thing I like about ErgoDox is that its design makes it possible to take advantage of the Maltron layout with the position of E on the left thumb cluster, which I heard is difficult to do on a Kinesis Advantage. This has been the second most important reason for me to delay buying a Kinesis, after the fact that it is not a split keyboard. (I am willing to try the remapping on my own if I have to, but I have yet to figure out how.)

Anyhow, I'm really thrilled at the thought of using this good a keyboard. It will make my life much easier and happier. Many thanks to everyone who has contributed to this effort.
If IC would like it to be in the preset, than it will be. Otherwise I don't think it would be too difficult to make that small change and save it as a different preset in the UI. What do you think of that idea? I can't commit just yet since I don't know what I will be given; regardless let me know.

Cheers,

yobfish

12 Aug 2012, 04:04

OrangeJewce wrote:
yobfish wrote:bpiphany: Hi, I am more than willing to pay for the soldering job as I don't have any soldering tools or skills. Better still, if you could assemble the whole thing (including the Cherry red switches and keycaps, though these I can do myself, I guess) I am more than willing to pay for the labor, shipping and handling.

As for the layout, it would be great if some version based on the Maltron layout were represented in the Presets. One thing I like about ErgoDox is that its design makes it possible to take advantage of the Maltron layout with the position of E on the left thumb cluster, which I heard is difficult to do on a Kinesis Advantage. This has been the second most important reason for me to delay buying a Kinesis, after the fact that it is not a split keyboard. (I am willing to try the remapping on my own if I have to, but I have yet to figure out how.)

Anyhow, I'm really thrilled at the thought of using this good a keyboard. It will make my life much easier and happier. Many thanks to everyone who has contributed to this effort.
If IC would like it to be in the preset, than it will be. Otherwise I don't think it would be too difficult to make that small change and save it as a different preset in the UI. What do you think of that idea? I can't commit just yet since I don't know what I will be given; regardless let me know.

Cheers,

Yeah, I've been re-reading the thread discussion on the UI remapping and trying to figure out how to do it. When the firmware is released, I will try my hand at it if need be. Thanks a lot for the comment.

ic07

12 Aug 2012, 05:42

yobfish wrote:
OrangeJewce wrote:If IC would like it to be in the preset, than it will be. Otherwise I don't think it would be too difficult to make that small change and save it as a different preset in the UI. What do you think of that idea? I can't commit just yet since I don't know what I will be given; regardless let me know.

Cheers,
Yeah, I've been re-reading the thread discussion on the UI remapping and trying to figure out how to do it. When the firmware is released, I will try my hand at it if need be. Thanks a lot for the comment.
I'd be happy to have as many layouts in the source as anyone cares to contribute. Though if it's easier for people, I won't be jealous if the UI ends up getting more :) lol. Qwerty and Dvorak (and Arensito, I hope) will be in the source if it's at all possible for me to get them there. Time's getting tight though, so I can't promise about others right now, sorry :/ .

OrangeJewce

12 Aug 2012, 05:48

ic07 wrote:
yobfish wrote:
OrangeJewce wrote:If IC would like it to be in the preset, than it will be. Otherwise I don't think it would be too difficult to make that small change and save it as a different preset in the UI. What do you think of that idea? I can't commit just yet since I don't know what I will be given; regardless let me know.

Cheers,
Yeah, I've been re-reading the thread discussion on the UI remapping and trying to figure out how to do it. When the firmware is released, I will try my hand at it if need be. Thanks a lot for the comment.
I'd be happy to have as many layouts in the source as anyone cares to contribute. Though if it's easier for people, I won't be jealous if the UI ends up getting more :) lol. Qwerty and Dvorak (and Arensito, I hope) will be in the source if it's at all possible for me to get them there. Time's getting tight though, so I can't promise about others right now, sorry :/ .
Sounds great IC. As I said earlier, the more that's built into the Firmware, the easier my job will be (means less files to ship out, etc.) If you want me to contribute to getting some of the pre-sets built into the firmware, shoot me another PM and I'll see what I can do whilst waiting for the next deliverable. Sound good?

Cheers,

User avatar
damorgue

12 Aug 2012, 06:17

I wonder if it wouldn't be best to write a small tutorial on how to create your own layouts. I think I have seen gui mentioned a few times. Will there be a gui to create layouts and generate files of your own, containing those layouts? There may already be one, in which case I apologize for not having read everything posted in this thread.

OrangeJewce

12 Aug 2012, 15:14

damorgue wrote:I wonder if it wouldn't be best to write a small tutorial on how to create your own layouts. I think I have seen gui mentioned a few times. Will there be a gui to create layouts and generate files of your own, containing those layouts? There may already be one, in which case I apologize for not having read everything posted in this thread.

I think I can handle your questions:

1) Will there be a UI for creating layouts that will be shipped when the Keyboards are (maybe earlier)? And will every key/layer be customizable?
A: Yes*
2) Will that UI contain presets, both built into the firmware and extras added on?
A: Yes to the former, And hopefully in the first release of the Latter.
3) Will the GUI create files that allow you to share your layout?
A: Yes.

*Currently I plan on not allowing duplicates of keys (other than most modifiers). This is to prevent you from soft bricking your board by flashing "caps lock" to every key, or something similar. Hey, you never know what your cat is going to do next. Let me know what you guys think about this.

Cheers,

User avatar
fossala
Elite +1

12 Aug 2012, 15:30

Will it have to be programmed on windows then? That I wouldn't like.

OrangeJewce

12 Aug 2012, 15:34

fossala wrote:Will it have to be programmed on windows then? That I wouldn't like.
Actually no, you can compile the firmware yourself on a linux machine, and can then flash the controller manually. However, there is no plan at this time to have a linux compatible UI. That being said, all the layouts that will come with the UI should be able to be flashed from a linux machine, so you should be able to use any of the communities offerings. I hope this helps!

Cheers,

User avatar
fossala
Elite +1

12 Aug 2012, 16:04

Good and bad news. Is there a way to edit the files by hand?

OrangeJewce

12 Aug 2012, 16:19

fossala wrote:Good and bad news. Is there a way to edit the files by hand?
Well, you can certainly edit the compiled hex by hand, but I wouldn't recommend that. You're much better off editing the C code (firmware source) and recompiling.

Cheers,

User avatar
fossala
Elite +1

12 Aug 2012, 16:46

OrangeJewce wrote:
fossala wrote:Good and bad news. Is there a way to edit the files by hand?
Well, you can certainly edit the compiled hex by hand, but I wouldn't recommend that. You're much better off editing the C code (firmware source) and recompiling.

Cheers,
Yeah, I was meaning editing the C code. Thanks.

bisl

13 Aug 2012, 22:14

dorkvader, or whoever is keeping track of interest: I'd like to up my order to 3 units, please!

maxrunner

14 Aug 2012, 01:16

I'm also interested depending cost but till 200/250$ i'm in.

Tafryn

14 Aug 2012, 01:39

Kurrk wrote:Tafryn, i like that layout. I do have a few comments/suggestions though which are mostly based on my experience with a Kinesis Advantage (Dvorak).

*The top corners are good to reach with your ring finger that's why "plus" and "tilde" should switch places.
*I think it's better to have all four arrow keys next to each other; move "[{" and "]}" to the left.
*One thing I miss on the Kinesis is an Enter key for the left hand if the right hand is busy with the mouse. I suggest taking one of the Super keys for that.
*I would switch "Tab" and "Super" on the right unit.
*"Insert" could be moved to the function layer; this key position could be used for a prominent macro like Alt+Tab
*There's probably some more room for improvement. One thing I'm still struggling with on my Kinesis is the poor accessibility of the "Alt" key, its position in the thumb cluster is not the best.
With my Dvorak layout I wanted to try to keep as many of the primary keys as possible on the main layer, and to keep them as close as possible to their positions on a standard Dvorak keyboard. I'm sure I'm not the only person with 10+ years of muscle memory telling me that ~ is the top-left most key on the keyboard. Similarly, I think macros (I also have alt+Tab on that key on my Kinesis Advantage) should be left as an exercise for the reader. I'd also like to keep the modifier keys on the default layout in a mirror configuration across both sides of the board to ensure a consistent experience for left and right handed people.

Since the brackets, arrows, and the keys in the middle, gray sections are already in non-standard positions I think there's some room to move those keys around. I've taken your advice about the arrows and brackets and justcallmecrash's concerns about the lack of a left hand space key and incorporated them into this revised Dvorak layout. I went with Vi ordering for the arrow keys since if they're going to be in a single row then they might as well match something a few people may have used.

With respect to the poor accessibility of the <Alt> key, I'm with you. I don't use <Alt> that much thanks to the afore mentioned macro, so it doesn't bother me too much. However, you might consider putting it on the CapsLock/Control key since there are already two control keys on the thumb clusters. This would have the added benefit of making Alt+Tab more accessible, and perhaps alleviate the need for the macro.
ergodox-dvorak-v0.2.png
ergodox-dvorak-v0.2.png (932.27 KiB) Viewed 5568 times
ergodox-dvorak-func-layer-v0.2.png
ergodox-dvorak-func-layer-v0.2.png (897.6 KiB) Viewed 5568 times

User avatar
dorkvader

14 Aug 2012, 06:05

Updated the list.

I will most likely be hand-editing my file, as I like to play with layouts. I will have a locking layer, that will switch between Dvorak and QWERTY, so I can type in Dvorak no matter where I go. If the firmware supports it, I'd also see about setting up a gaming mode for one hand.

bisl

14 Aug 2012, 08:57

dorkvader wrote:I'd also see about setting up a gaming mode for one hand.
What would a gaming mode entail? Would it be the ability to use only one of the two hands at a time or something?

User avatar
Icarium

14 Aug 2012, 17:13

Well, for example when you're playing Starcraft you need to have one hand on the mouse and the other hand needs to access all the number keys. Same goes for many shooters where you select you weapon using the number keys. This was not a problem on traditional keyboards but when both hands are separated it becomes tricky.

OrangeJewce

14 Aug 2012, 17:53

All,

I'm not entirely sure I'll be able to support macros in the UI. IC, if you're watching, could you comment on if/how macros are going to work in the firmware?

You will be able to make a "gaming" layer in the UI or by editing the firmware.

Tarfyn,
How are you making those diagrams? I totally would love to have a blank one which I would use in the UI. Shoot me a pm or reply. Thanks in advance!

Cheers,

bisl

14 Aug 2012, 18:04

Icarium wrote:you're playing Starcraft
If you ever get one of these in hand, you should check this out:
http://www.teamliquid.net/forum/viewmes ... _id=341878

Only one hand need apply!

ic07

14 Aug 2012, 23:46

OrangeJewce wrote:I'm not entirely sure I'll be able to support macros in the UI. IC, if you're watching, could you comment on if/how macros are going to work in the firmware?
I still haven't finished thinking about how to implement user-definable macros, and there is a bunch of stuff in front of them on the firmware todo list right now (though, some of it's related). So I can't promise them before keyboard release, sorry :/ . But if anyone's desperate to have them before I have time, and they're comfortable with C, it'd be really simple for them to implement the macro as a key-function, and recompile from source - in fact, if there's really a lot of interest for any few macros in particular (like 'alt+tab'?) I could probably make the functions myself, as a temporary solution till arbitrary macros are supported.

Post Reply

Return to “Workshop”