Kinesis Ergo setup

raw

README.rst

My keyboard setup. Also see http://cweiske.de/tagebuch/My%20new%20ergonomic%20keyboard.htm

2014, 7 years after the initial setup, the keyboard began to behave erratically. Pressing a lowercase Q often gave me the uppercase Q and sometimes the lowercase one. This went on for some weeks. Then the page down key sent key codes for number 3 and 4 at the same time. (The "Page Down" problem happened again 2020-01.)

This was the time I decided to reset the keyboard and re-program it. After resetting, all keys were back to normal and I reprogrammed it as follows.

Remappings

  • Switch Tab and Caps Lock key
  • Switch y and z key

Macros

  • Map Ctrl+F8 to Ctrl+T
  • Map Ctrl+T to $this->
  • Map Ctrl+= to `` => ``
  • Map Ctrl+- to ->
  • Map Ctrl+Backspace to Alt+Tab
raw

Xmodmap-modeswitches.txt

!fix broken mode switches (ctrl keys did not work anymore)
clear control
clear mod4

!... other remmappings here

keycode 133 = Control_L
keycode 134 = Control_R
add control = Control_L Control_R
keycode 105 = Mode_switch
raw

Xmodmap.txt

!Make umlauts available to "right Alt" + (shift) letter
keycode  26 = e E EuroSign EuroSign
keycode  30 = u U udiaeresis Udiaeresis
keycode  32 = o O odiaeresis Odiaeresis
keycode  38 = a A adiaeresis Adiaeresis
keycode  39 = s S ssharp ssharp

!Map "right Alt" to activate the äöüÖÜÄß above
keycode 108 = Mode_switch
raw

kinesis-manual.rst

From https://kinesis-ergo.com/wp-content/uploads/kb500-user_manual.pdf

Resetting keyboard memory

If the keyboard behaves strangely or you just want to re-create the factory settings, the first thing to try is a memory reset. If you have the Advantage Pro model, be sure the memory locking switch (see drawing later in this chapter) is to the right (unlocked). “Instant Configuration” settings are not affected by resetting the keyboards “On-board Programmability” features. Two different memory reset procedures are available:

Memory reset, Option One (Progrm + Shift + F10)

This procedure will erase all remapping and macros, but will not change macro memory settings or switch Dvorak back to QWERTY. Press and hold the Progrm key, then add one of the Shift keys, and finally add the F10 function key so that all three keys are depressed. The lights on the keyboard should begin flashing. Release the keys and when the flashing stops in several seconds, the keyboard’s memory has been reset.

Memory reset, Option Two (F7)

This procedure is more aggressive than Option One and will completely reset the memory back to factory settings (24 macros, QWERTY layout).

Hold down the F7 key before turning on the power to your computer. Start your computer and after a few seconds, release F7. A successful reset is indicated if the keyboard’s lights flash several times after releasing F7.

The Remapping process (Progrm + F12 )

Hold down the Program key and tap F12, then release both keys. The keyboard’s lights will begin flashing rapidly. To copy a key, first tap the “source” key whose action you want to copy somewhere else. The lights will begin flashing slowly. Now tap the key where you want the new action to appear. The lights will resume rapid flashing. To swap two keys, you can repeat this sequence for each key without exiting from remapping mode. When you are done making changes, exit with Program plus F12. The lights should immediately stop flashing.

Default layout always available when remapping

When you are in remapping mode, the default key layout is always active. Therefore you cannot “lose” a key action by remapping it. Any changes you make by remapping are only implemented when you exit remapping mode.

Creating a macro (Progrm + F11)

To create a macro, hold down the Program key and tap F11, then release both keys. The keyboard’s lights will begin flashing rapidly. First select a “trigger key” (the key or combination of keys that will initiate playback of the macro). The lights will begin flashing slowly. Now type the key or keys that will comprise the body of the macro. When you have finished, hold the Program key and tap F11. The lights should stop flashing on the first tap. If not, you have added F11 to the end of your macro and you should reprogram your macro.

Turning on and off the key click feature (Progrm + backslash \)

By default, the keyboard includes an audible key click for all keys, including the function keys. To turn off the key click, hold down Progrm and press the Backslash key (\) located just below the hyphen key). If you wish to turn on the key click again, simply repeat the process. Note: Most experienced Kinesis keyboard users find that leaving on the key click function makes it easier to use the function keys.

raw

z-xev-problem-pressing-pagedown.log

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
KeyPress event, serial 38, synthetic NO, window 0x6200001,
    root 0x4cb, subw 0x0, time 25265251, (172,68), root:(2096,140),
    state 0x0, keycode 117 (keysym 0xff56, Next), same_screen YES,
    XLookupString gives 0 bytes: 
    XmbLookupString gives 0 bytes: 
    XFilterEvent returns: False
 
KeyRelease event, serial 38, synthetic NO, window 0x6200001,
    root 0x4cb, subw 0x0, time 25265435, (172,68), root:(2096,140),
    state 0x0, keycode 117 (keysym 0xff56, Next), same_screen YES,
    XLookupString gives 0 bytes: 
    XFilterEvent returns: False
 
KeyPress event, serial 38, synthetic NO, window 0x6200001,
    root 0x4cb, subw 0x0, time 25265650, (172,68), root:(2096,140),
    state 0x0, keycode 9 (keysym 0xff1b, Escape), same_screen YES,
    XLookupString gives 1 bytes: (1b) ""
    XmbLookupString gives 1 bytes: (1b) ""
    XFilterEvent returns: False
 
KeyPress event, serial 38, synthetic NO, window 0x6200001,
    root 0x4cb, subw 0x0, time 25265659, (172,68), root:(2096,140),
    state 0x0, keycode 12 (keysym 0x33, 3), same_screen YES,
    XLookupString gives 1 bytes: (33) "3"
    XmbLookupString gives 1 bytes: (33) "3"
    XFilterEvent returns: False
 
KeyRelease event, serial 38, synthetic NO, window 0x6200001,
    root 0x4cb, subw 0x0, time 25265666, (172,68), root:(2096,140),
    state 0x0, keycode 12 (keysym 0x33, 3), same_screen YES,
    XLookupString gives 1 bytes: (33) "3"
    XFilterEvent returns: False
 
KeyRelease event, serial 38, synthetic NO, window 0x6200001,
    root 0x4cb, subw 0x0, time 25265674, (172,68), root:(2096,140),
    state 0x0, keycode 9 (keysym 0xff1b, Escape), same_screen YES,
    XLookupString gives 1 bytes: (1b) ""
    XFilterEvent returns: False
 
KeyPress event, serial 38, synthetic NO, window 0x6200001,
    root 0x4cb, subw 0x0, time 25265962, (172,68), root:(2096,140),
    state 0x0, keycode 117 (keysym 0xff56, Next), same_screen YES,
    XLookupString gives 0 bytes: 
    XmbLookupString gives 0 bytes: 
    XFilterEvent returns: False
 
KeyRelease event, serial 38, synthetic NO, window 0x6200001,
    root 0x4cb, subw 0x0, time 25266051, (172,68), root:(2096,140),
    state 0x0, keycode 117 (keysym 0xff56, Next), same_screen YES,
    XLookupString gives 0 bytes: 
    XFilterEvent returns: False
 
Christian Weiske Christian Weiske
owner

History