Split ergonomic keyboard project
- justcallmecrash
- Location: Greensboro, NC, USA
- Main keyboard: ErgoDox 80g Blacks (home); Ergodox Browns (work)
- Main mouse: Logitech M570/Slimblade
- Favorite switch: Cherry MX 80g Black (NovelKeys pale blues, too)
- DT Pro Member: -
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!
... I guess I could assign backspace to jump, but it seems weird.
Anyway, this is awesome. I can't WAIT!
-
- Location: USA
- Main keyboard: Kinesis Advantage QD
- Main mouse: Evoluent VerticalMouse 3
- Favorite switch: Cherry Browns
- DT Pro Member: -
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.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!
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.
-
- Location: Stockholm, Sweden
- Main keyboard: Ergodox MX Clear
- Main mouse: Mionix Naos 3200
- DT Pro Member: -
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.
-
- Main keyboard: IBM Model M 1390120 Custom
- Main mouse: MX Revolution
- Favorite switch: Buckling Spring
- DT Pro Member: -
As I've stated previously. My first release of the UI will have the following Presets:Tafryn wrote: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.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!
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.
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,
-
- DT Pro Member: -
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. :)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,
-
- DT Pro Member: -
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...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"?
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 :) .
- Kurk
- Location: Sauce Hollondaise (=The Netherlands)
- Main keyboard: Kinesis Advantage // Filco MJ2 + HID liberation
- Main mouse: ITAC Mousetrak Professional
- DT Pro Member: 0027
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:
*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 (149.52 KiB) Viewed 5767 times
-
- Location: Stockhom, Sweden
- Main keyboard: Symmetric Stagger Board
- Main mouse: Kinzu
- Favorite switch: Topre
- DT Pro Member: -
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
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
-
- Main keyboard: Apple Bluetooth Keyboard
- Main mouse: Bamboo Tablet
- Favorite switch: Cherry MX Red Shaft
- DT Pro Member: -
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.
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.
-
- Main keyboard: IBM Model M 1390120 Custom
- Main mouse: MX Revolution
- Favorite switch: Buckling Spring
- DT Pro Member: -
ic,ic07 wrote: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.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,
You're not being mean; if anything you're being generous, as it means less work for me!
Cheers,
-
- Main keyboard: IBM Model M 1390120 Custom
- Main mouse: MX Revolution
- Favorite switch: Buckling Spring
- DT Pro Member: -
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.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.
Cheers,
-
- Main keyboard: Apple Bluetooth Keyboard
- Main mouse: Bamboo Tablet
- Favorite switch: Cherry MX Red Shaft
- DT Pro Member: -
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.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.
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.
-
- DT Pro Member: -
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 :/ .yobfish wrote: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.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,
-
- Main keyboard: IBM Model M 1390120 Custom
- Main mouse: MX Revolution
- Favorite switch: Buckling Spring
- DT Pro Member: -
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?ic07 wrote: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 :/ .yobfish wrote: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.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,
Cheers,
- damorgue
- Location: Sweden
- Main mouse: MX500
- Favorite switch: BS, MX Green and MX Clear
- DT Pro Member: -
- Contact:
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.
-
- Main keyboard: IBM Model M 1390120 Custom
- Main mouse: MX Revolution
- Favorite switch: Buckling Spring
- DT Pro Member: -
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,
-
- Main keyboard: IBM Model M 1390120 Custom
- Main mouse: MX Revolution
- Favorite switch: Buckling Spring
- DT Pro Member: -
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!fossala wrote:Will it have to be programmed on windows then? That I wouldn't like.
Cheers,
-
- Main keyboard: IBM Model M 1390120 Custom
- Main mouse: MX Revolution
- Favorite switch: Buckling Spring
- DT Pro Member: -
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.fossala wrote:Good and bad news. Is there a way to edit the files by hand?
Cheers,
- fossala
- Elite +1
- Location: UK
- Main keyboard: HHKB Type-S
- Main mouse: Rollermouse Free2
- Favorite switch: Topre
- DT Pro Member: -
Yeah, I was meaning editing the C code. Thanks.OrangeJewce wrote: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.fossala wrote:Good and bad news. Is there a way to edit the files by hand?
Cheers,
-
- Location: USA
- Main keyboard: Kinesis Advantage QD
- Main mouse: Evoluent VerticalMouse 3
- Favorite switch: Cherry Browns
- DT Pro Member: -
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.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.
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.
- dorkvader
- Main keyboard: Unicomp
- Main mouse: CST 1550
- Favorite switch: Buckling Spring over Capacitave. (Model F)
- DT Pro Member: -
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.
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.
-
- Main keyboard: Filco Majestouch-2 TKL Red
- Main mouse: SteelSeries Sensei (left) Xai (right)
- Favorite switch: Cherry MX Red
- DT Pro Member: -
What would a gaming mode entail? Would it be the ability to use only one of the two hands at a time or something?dorkvader wrote:I'd also see about setting up a gaming mode for one hand.
- Icarium
- Location: Germany
- Main keyboard: These fields just
- Main mouse: opened my eyes
- Favorite switch: I need to bring stuff to work
- DT Pro Member: -
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.
-
- Main keyboard: IBM Model M 1390120 Custom
- Main mouse: MX Revolution
- Favorite switch: Buckling Spring
- DT Pro Member: -
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,
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,
-
- Main keyboard: Filco Majestouch-2 TKL Red
- Main mouse: SteelSeries Sensei (left) Xai (right)
- Favorite switch: Cherry MX Red
- DT Pro Member: -
If you ever get one of these in hand, you should check this out:Icarium wrote:you're playing Starcraft
http://www.teamliquid.net/forum/viewmes ... _id=341878
Only one hand need apply!
-
- DT Pro Member: -
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.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?