Keyboard/Requirement Analysis Pyra
From Pandora Wiki
Discuss there.
- hardware
- keyboard:
- MUST: allows for both handheld thumb typing and desktop finger typing
- MUST: is possible to find the keys by touch (for thumb typing)
- surface form: flat? rounded? concave? (T4b: I would like them to be more or less flat and concave a little bit so you feel the different keys better)
- surface height: (T4b: no higher than on current Pandora, preferably almost (only almost!) flush with the rest of the surface)
- MUST: surface coating: non sticky, fingers must glide over it as easily as possible
- MUST: minimum force needed to trigger key: is possible to slide finger over key without triggering it
- SHOULD: possible to easily find central keys (e.g. f and j) by touch (e.g. raised markers)
- MUST: individual keys easy to press
- maximum force needed to trigger key: must not be so big as to make it difficult to press the key (clarified?) (too obvious to include? But I guess we should also include trivial things)
- maximum way/travel needed to trigger key: (T4b: must be low, say 0.3mm, max 0.5mm)
- room between keys: (T4b: I would like to get rid of it completely, but only technically possible if the plastic ribs between the keys aren't necessary anymore)
- size of individual keys:
- SHOULD: width is as wide if not wider than the Pandora (ED)
- MUST: height: is no taller than the Pandora (ED)
- MUST NOT: forces Pyra's dimensions to exceed 1-2mm beyond the Pandora's
- MUST: has easy to read labels:
- colors:
- MUST: high enough contrast -> easy to read
- SHOULD (?): backlighting
- MUST: variable intensity (PWM? - Levi)
- COULD: variable color
- is possible to map to (generally as many as possible):
- MUST: qwerty/qwertz/azerty (those are basically the same, so we can group them together)
- MUST: dvorak
- COULD: colemak
- COULD: non latin (Russian, Japanese, etc.) (clarify! what's needed for this?)
- MUST NOT: keyboard gets into the way when gaming
- <practical considerations>
- keyboard and gaming controls:
- MUST: is resistant to foreign matter (pocket lint) from getting into/between the keys: not possible with the Pandora, could be a problem with mechanical keyboards
- gaming controls:
- NOTE: I think the individual action buttons are fine on the Pandora (T4b)
- MUST: 4 action buttons, dpad, 2 shoulder buttons, 2 nubs
- SHOULD: 2 additional shoulder buttons, buttons between nubs
- COULD: x additional action buttons
- cost: well, this should maybe be a poll. (T4b: the keyboard could cost a lot more than CHF9.27 ($10) if it's also considerably better if you ask me)
- keyboard:
- software (default key bindings)
- SHOULD: is similar to Pandora's
- SHOULD: is similar to US international qwerty
- SHOULD NOT: break the correlation between a key and its shifted value (e.g. ; and : ) on the US international layout.
- Which keys need to be there?
- MUST: all keys and special characters found on a normal US keyboard layout (0-9,a-z, A-Z, ~!@#$%*()-_=+[{]}\|;:'"`,<.>/?, F1-F12, ESC, Tab, Capslock, shift, ctrl, alt, backspace, enter, insert, delete, home, end, pageup and pagedown.
- COULD: Omits Num Lock, Pause/Break, Print Scr, Sys Req
- MUST: support valid regular keyboard combinations from being input (e.g. shift-delete is a common shortcut in file managers that cannot be input on a Pandora keyboard)
- SHOULD: Characters commonly needed for shell usage ( Tab,;,",`,{},(),$,| ) are accessible using only one thumb (not counting sticky Fn) in combination with a modifier from the shoulder buttons. (Levi)
- SHOULD: German characters: äöüß (ED)
- SHOULD: two shift keys on main keyboard (ED)
- COULD: different keycodes for different versions of the same keys (T4b: "support" should be a given, it's more about the default layout, isn't it? Did I express it better?)
- what to map to the gaming controls?
- MUST: is usable using non-sticky modifiers in both of the handheld/desktop modes of typing. (clarify!) (T4b: I guess this is similar to 2.3.4, the most important characters shouldn't need sticky modifiers to input)
- Mouse emulation:
- MUST: allows mouse motion
- MUST: allows left/right mouse button clicks
- SHOULD: allows middle mouse button clicks (emulation through left mouse + right mouse is acceptable)
- COULD: allow mouse scrolling
- COULD: W-LAN, Bluetooth, etc.