Skip to content

Instantly share code, notes, and snippets.

@nicholasknight
Last active January 2, 2024 02:39
Show Gist options
  • Star 30 You must be signed in to star a gist
  • Fork 4 You must be signed in to fork a gist
  • Save nicholasknight/181375ee15f9cb89d3c69f4cc2b63df9 to your computer and use it in GitHub Desktop.
Save nicholasknight/181375ee15f9cb89d3c69f4cc2b63df9 to your computer and use it in GitHub Desktop.
Kinesis Advantage 2 notes

(NOTE: Current and future versions of this and any other Advantage 2-related things I post will be at https://github.com/nicholasknight/adv2keyboard)

I received my Advantage 2 today. There's no full manual yet, even though keyboards are apparently arriving (hint, hint, Kinesis). The quick start guide leaves out the "power user mode", and there are some other quirks.

Update: A manual has been posted at http://www.kinesis-ergo.com/advantage2-resources/

It includes a dictionary for the key maps, but I know it leaves at least one possible key undocumented: it does not list f14, but I have successfully mapped my scrollock to f14 regardless.

It also mentions a firmware version (1.0.18) that doesn't seem to be available yet, with a new feature (status report playback speed).

The on-board drive.

To get at the on-board drive, you need to enter power user mode, and then "mount" the drive.

Power user mode: Program+Shift+Esc (lights will flash a couple times)

Mount drive: Program+Shift+F1

This presents a 2MB FAT12 (!) filesystem, so pretty much any OS that supports USB drives will be read/write capable on it.

At least on a Mac, if you try to safely eject the drive, it will, curiously, remount. As far as I can tell, to do it "safely", you have to eject and then quickly hit Program+Shift+F1. If you just hit the key combo, MacOS whines about unsafe removal. This all makes me a bit nervous about possible filesystem corruption down the line.

Layouts

Keyboard layouts are stored in the folder called "active". You'll find "dvorak.txt" and "qwerty.txt". You can create additional layouts by naming them X_dvorak.txt or X_qwerty.txt where "X" is any number or letter. You then switch between the layouts with Program+X. So, if you create a 2_dvorak.txt, you can switch to it with Program+2. To switch to the "base" layout (that is, dvorak.txt or qwerty.txt), you just hit Program+F3 (qwerty) or Program+F4 (dvorak), just like you were switching to that mode to begin with.

NOTE: You have to hit the original, physical key corresponding to the letter or number. So if you name a file g_dvorak.txt, You have to hit the original QWERTY "g" key -- Dvorak "i", even if you're already in dvorak mode. Probably less confusing to just stick to numbers.

The "language" of the layout files is simple yet arcane. It's [physicalkey]>[logicalkey]. The only trouble is that we don't have a complete list of available key names.

Below is a sample of what I have in my dvorak layout thus far, mostly created through the on-board remapping mechanism, though [scroll]>[f14] was a manual edit (that worked!).

[caps]>[rctrl]
[scroll]>[f14]
[intl-\]>[lalt]
[kp=]>[kp=mac]
[hyphen]>[\]
[lalt]>[rwin]
[lctrl]>[lalt]
[kp-lctrl]>[kp-lwin]
[rctrl]>[rwin]
[kp-rctrl]>[kp-rwin]
[\]>[hyphen]
[rwin]>[rctrl]
[kp-rwin]>[kp-rctrl]

Other files

state.txt appears to contain various settings, HOWEVER, I have not yet been able to get manual changes to this file to take effect, even by unplugging the keyboard and plugging it back in, so it appears that it may be effectively read-only.

The curiously-named do_not_edit.txt is empty and has an unknown function.

version.txt displays the model name and firmware version. I'm guessing this is effectively read-only like state.txt.

Quirk with remapping Mac modifier keys.

I do some unusual things with my modifier keys. First of all, I've always (long before I used an Advantage) remapped capslock to ctrl. I'm also not a fan of the default Mac modifier key layout on Advantage keyboards. So, I remap them (the "\|"/"insert" key (bottom left ring finger key) becomes an alt/option, then going left-to-right on the thumb modifiers, I do alt/option, cmd, ctrl, cmd).

However, trying to remap them can give surprising results. Specifically, you may find that when you thought you mapped a key to ctrl, you actually mapped it to cmd, or vice-versa (I haven't documented exactly what happens, mostly I was happy to finally get it right).

I believe this just has to do with the default layout that's active in remapping mode. It's actually the windows or PC modifier key layout, and you have to transpose. Someday I may have the patience to actually stop and think about what's happening. I recall having the same difficulty when I got my Advantage Pro.

@eyadsibai
Copy link

Is there a way to have mouse layout in the kinesis adv.?

@pgaertig
Copy link

pgaertig commented Mar 29, 2018

I have received my Advantage 2 today too! @nicholasknight thanks for your notes. Available key names can be extracted from https://github.com/KinesisCorporation/Advantage2-SmartSet-App/blob/master/Common/u_const.pas .
@eyadsibai logical values for mouse keys should be these: lmouse, rmouse, mmouse.

@yanshiyason
Copy link

Kinesis Advantage2 model KB600 key names are at:

13.1 Appendix- Map of Location Tokens & Dictionary of Action Tokens here

https://www.kinesis-ergo.com/wp-content/uploads/2018/02/Adv2-Users-Manual-2-16-18.pdf

@lionoggo
Copy link

I want to know if you are still using this keyboard?What is your latest keyboard layout?

@spazm-ma
Copy link

I've added this to remap the useless-to-me pipe-slash key to the left of the left arrow. This key is named intl-\
I remap this to insert so I can use it to paste with "shift-insert".

Unplugged and replogged my keyboard today and it lost its settings and I had to remember how to fix it again. Still getting used to my first Advantage2 after many years on the original. I've found this mapping to be crucial. Next time I forget, perhaps I will find this gist and remember. :)

[intl-\]>[kp-insert]

@spazm-ma
Copy link

ps. Manual location is now https://kinesis-ergo.com/wp-content/uploads/Adv2-Users-Manual-US_6-22-21.pdf and the key codes are still in section 13.1

@spazm
Copy link

spazm commented Jun 1, 2022

I've added this to remap the useless-to-me pipe-slash key to the left of the left arrow. This key is named intl-\ I remap this to insert so I can use it to paste with "shift-insert".

Unplugged and replogged my keyboard today and it lost its settings and I had to remember how to fix it again. Still getting used to my first Advantage2 after many years on the original. I've found this mapping to be crucial. Next time I forget, perhaps I will find this gist and remember. :)

[intl-\]>[kp-insert]

Lol, I did find this post later but then forgot to scroll down and find my comment.

I updated my change to use INSERT rather than KP-INSERT though they are the same for this purpose.
I also added a macro for a shifted version.

So for future-me:

{INTL-\}>{-Rshift}{INSERT}{+Rshift}
[INTL-\]>[INSERT]

The first creates a macro on the INTL-\ key, without any modifiers
The second maps the INTL-\ key to the insert key. With no modifier it is overridden by the macro. When shifted, it activates shift INSERT as desired.

Now to see if I can train myself to stop hitting shift when pasting. As a bonus the macro doesn't make the beep that shift-insert does.

Twice today my keyboard added a remapping of RSHIFT to -, rshift_qwerty.txt. Which is a pretty strange usb unplug-replug glitch.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment