{"id":15356,"date":"2019-02-18T18:26:42","date_gmt":"2019-02-18T23:26:42","guid":{"rendered":"http:\/\/scruss.com\/blog\/?p=15356"},"modified":"2019-02-18T18:26:43","modified_gmt":"2019-02-18T23:26:43","slug":"the-quirkey-chording-usb-keyboard","status":"publish","type":"post","link":"https:\/\/scruss.com\/blog\/2019\/02\/18\/the-quirkey-chording-usb-keyboard\/","title":{"rendered":"The Quirkey: chording USB keyboard"},"content":{"rendered":"\n<figure class=\"wp-block-image\"><img loading=\"lazy\" decoding=\"async\" width=\"480\" height=\"168\" src=\"https:\/\/scruss.com\/wordpress\/wp-content\/uploads\/2019\/02\/vik-microwriter-breadboard-smol.jpg\" alt=\"\" class=\"wp-image-15357\" srcset=\"https:\/\/scruss.com\/wordpress\/wp-content\/uploads\/2019\/02\/vik-microwriter-breadboard-smol.jpg 480w, https:\/\/scruss.com\/wordpress\/wp-content\/uploads\/2019\/02\/vik-microwriter-breadboard-smol-160x56.jpg 160w, https:\/\/scruss.com\/wordpress\/wp-content\/uploads\/2019\/02\/vik-microwriter-breadboard-smol-320x112.jpg 320w\" sizes=\"auto, (max-width: 480px) 100vw, 480px\" \/><\/figure>\n\n\n\n<p>This may not look much, but it&#8217;s a test build of Vik Olliver&#8217;s Quirkey USB chord keyboard. I didn&#8217;t quite build it to Vik&#8217;s specs, which are here:<\/p>\n\n\n\n<ul class=\"wp-block-list\"><li><strong>code<\/strong>: <a href=\"https:\/\/github.com\/VikOlliver\/Microwriter\">VikOlliver\/Microwriter: A reboot of the 80&#8217;s Microwriter accessible chord keyboard done using an Arduino<\/a><\/li><li><strong>case<\/strong>: <a href=\"https:\/\/www.thingiverse.com\/thing:3433244\">Quirkey Chord Keyboard Shell <\/a><\/li><\/ul>\n\n\n\n<p>The <a href=\"https:\/\/www.microsoft.com\/buxtoncollection\/detail.aspx?id=5\">Microwriter<\/a> was a late 1970s\/early 1980s gadget that was essentially a portable word processor. Unusually, its keyboard was a single-hand <strong>6<\/strong> key layout \u00e2\u20ac\u201d the thumb did double duty \u00e2\u20ac\u201d that was operated by chording multiple keys at the same time. Later on in the Microwriter&#8217;s life it evolved into the <strong>Quinkey<\/strong>, a chording adaptive keyboard for computers of the time.<\/p>\n\n\n\n<p>Technology has moved on a bit, and the ability to wire up a cheap USB-capable microcontroller and 3d print your own case is here. I used an Arduino Micro on a breadboard and six Omron momentary buttons.<\/p>\n\n\n\n<p>I didn&#8217;t quite wire it the way that Vik intended:<\/p>\n\n\n\n<figure class=\"wp-block-image\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"429\" src=\"https:\/\/scruss.com\/wordpress\/wp-content\/uploads\/2019\/02\/Vik-MicroWriter-1024x429.png\" alt=\"\" class=\"wp-image-15358\" srcset=\"https:\/\/scruss.com\/wordpress\/wp-content\/uploads\/2019\/02\/Vik-MicroWriter-1024x429.png 1024w, https:\/\/scruss.com\/wordpress\/wp-content\/uploads\/2019\/02\/Vik-MicroWriter-160x67.png 160w, https:\/\/scruss.com\/wordpress\/wp-content\/uploads\/2019\/02\/Vik-MicroWriter-320x134.png 320w, https:\/\/scruss.com\/wordpress\/wp-content\/uploads\/2019\/02\/Vik-MicroWriter-768x322.png 768w, https:\/\/scruss.com\/wordpress\/wp-content\/uploads\/2019\/02\/Vik-MicroWriter-1200x503.png 1200w, https:\/\/scruss.com\/wordpress\/wp-content\/uploads\/2019\/02\/Vik-MicroWriter.png 1817w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><figcaption>Note lifted pins to prevent useless buttons<\/figcaption><\/figure>\n\n\n\n<p>The buttons are wired like this:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">Pin      Button<br>=======  =======<br> D8       Control<br> D7       Thumb<br> D6       Index<br> D5       Middle<br> D4       Ring<br> D3       Pinkie<\/pre>\n\n\n\n<p>This requires changing <a href=\"https:\/\/github.com\/VikOlliver\/Microwriter\/blob\/master\/Microwriter.ino#L22\">line 22<\/a> of Vik&#8217;s code from:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">const int keyPorts[] = {8, 7, 6, 5, 4, 9};<\/pre>\n\n\n\n<p>to<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">const int keyPorts[] = {8, 3, 4, 5, 6, 7};<\/pre>\n\n\n\n<p>While there are great tutorials on &#8220;microwriting&#8221; in the original manuals on <a href=\"https:\/\/www.microsoft.com\/buxtoncollection\/detail.aspx?id=5#metaHolder\">Bill Buxton&#8217;s site<\/a>, here are the basic alphabetic set derived from Vik&#8217;s code:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">Thumb<br>|Index<br>||Middle<br>|||Ring<br>||||Pinkie<br>\u00e2\u2014\u008f\u00e2\u2014\u2039\u00e2\u2014\u2039\u00e2\u2014\u2039\u00e2\u2014\u2039 : Space<br>\u00e2\u2014\u2039\u00e2\u2014\u008f\u00e2\u2014\u2039\u00e2\u2014\u2039\u00e2\u2014\u2039 : e<br>\u00e2\u2014\u008f\u00e2\u2014\u008f\u00e2\u2014\u2039\u00e2\u2014\u2039\u00e2\u2014\u2039 : i<br>\u00e2\u2014\u2039\u00e2\u2014\u2039\u00e2\u2014\u008f\u00e2\u2014\u2039\u00e2\u2014\u2039 : o<br>\u00e2\u2014\u008f\u00e2\u2014\u2039\u00e2\u2014\u008f\u00e2\u2014\u2039\u00e2\u2014\u2039 : c<br>\u00e2\u2014\u2039\u00e2\u2014\u008f\u00e2\u2014\u008f\u00e2\u2014\u2039\u00e2\u2014\u2039 : a<br>\u00e2\u2014\u008f\u00e2\u2014\u008f\u00e2\u2014\u008f\u00e2\u2014\u2039\u00e2\u2014\u2039 : d<br>\u00e2\u2014\u2039\u00e2\u2014\u2039\u00e2\u2014\u2039\u00e2\u2014\u008f\u00e2\u2014\u2039 : s<br>\u00e2\u2014\u008f\u00e2\u2014\u2039\u00e2\u2014\u2039\u00e2\u2014\u008f\u00e2\u2014\u2039 : k<br>\u00e2\u2014\u2039\u00e2\u2014\u008f\u00e2\u2014\u2039\u00e2\u2014\u008f\u00e2\u2014\u2039 : t<br>\u00e2\u2014\u008f\u00e2\u2014\u008f\u00e2\u2014\u2039\u00e2\u2014\u008f\u00e2\u2014\u2039 : r<br>\u00e2\u2014\u2039\u00e2\u2014\u2039\u00e2\u2014\u008f\u00e2\u2014\u008f\u00e2\u2014\u2039 : n<br>\u00e2\u2014\u008f\u00e2\u2014\u2039\u00e2\u2014\u008f\u00e2\u2014\u008f\u00e2\u2014\u2039 : y<br>\u00e2\u2014\u2039\u00e2\u2014\u008f\u00e2\u2014\u008f\u00e2\u2014\u008f\u00e2\u2014\u2039 : .<br>\u00e2\u2014\u008f\u00e2\u2014\u008f\u00e2\u2014\u008f\u00e2\u2014\u008f\u00e2\u2014\u2039 : f<br>\u00e2\u2014\u2039\u00e2\u2014\u2039\u00e2\u2014\u2039\u00e2\u2014\u2039\u00e2\u2014\u008f : u<br>\u00e2\u2014\u008f\u00e2\u2014\u2039\u00e2\u2014\u2039\u00e2\u2014\u2039\u00e2\u2014\u008f : h<br>\u00e2\u2014\u2039\u00e2\u2014\u008f\u00e2\u2014\u2039\u00e2\u2014\u2039\u00e2\u2014\u008f : v<br>\u00e2\u2014\u008f\u00e2\u2014\u008f\u00e2\u2014\u2039\u00e2\u2014\u2039\u00e2\u2014\u008f : l<br>\u00e2\u2014\u2039\u00e2\u2014\u2039\u00e2\u2014\u008f\u00e2\u2014\u2039\u00e2\u2014\u008f : q<br>\u00e2\u2014\u008f\u00e2\u2014\u2039\u00e2\u2014\u008f\u00e2\u2014\u2039\u00e2\u2014\u008f : z<br>\u00e2\u2014\u2039\u00e2\u2014\u008f\u00e2\u2014\u008f\u00e2\u2014\u2039\u00e2\u2014\u008f : -<br>\u00e2\u2014\u008f\u00e2\u2014\u008f\u00e2\u2014\u008f\u00e2\u2014\u2039\u00e2\u2014\u008f : '<br>\u00e2\u2014\u2039\u00e2\u2014\u2039\u00e2\u2014\u2039\u00e2\u2014\u008f\u00e2\u2014\u008f : g<br>\u00e2\u2014\u008f\u00e2\u2014\u2039\u00e2\u2014\u2039\u00e2\u2014\u008f\u00e2\u2014\u008f : j<br>\u00e2\u2014\u2039\u00e2\u2014\u008f\u00e2\u2014\u2039\u00e2\u2014\u008f\u00e2\u2014\u008f : ,<br>\u00e2\u2014\u008f\u00e2\u2014\u008f\u00e2\u2014\u2039\u00e2\u2014\u008f\u00e2\u2014\u008f : w<br>\u00e2\u2014\u2039\u00e2\u2014\u2039\u00e2\u2014\u008f\u00e2\u2014\u008f\u00e2\u2014\u008f : b<br>\u00e2\u2014\u008f\u00e2\u2014\u2039\u00e2\u2014\u008f\u00e2\u2014\u008f\u00e2\u2014\u008f : x<br>\u00e2\u2014\u2039\u00e2\u2014\u008f\u00e2\u2014\u008f\u00e2\u2014\u008f\u00e2\u2014\u008f : m<br>\u00e2\u2014\u008f\u00e2\u2014\u008f\u00e2\u2014\u008f\u00e2\u2014\u008f\u00e2\u2014\u008f : p<br><\/pre>\n\n\n\n<p>The astute reader may note that these are binary values (low bit to high) of the character positions in Vik&#8217;s <a href=\"https:\/\/github.com\/VikOlliver\/Microwriter\/blob\/master\/Microwriter.ino#L24\">alphaTable<\/a> variable. And yes, that&#8217;s supposed to be preformatted text.<\/p>\n\n\n\n<p>Happy microwriting!<\/p>\n","protected":false},"excerpt":{"rendered":"<p>This may not look much, but it&#8217;s a test build of Vik Olliver&#8217;s Quirkey USB chord keyboard. I didn&#8217;t quite build it to Vik&#8217;s specs, which are here: code: VikOlliver\/Microwriter: A reboot of the 80&#8217;s Microwriter accessible chord keyboard done using an Arduino case: Quirkey Chord Keyboard Shell The Microwriter was a late 1970s\/early 1980s [&hellip;]<\/p>\n","protected":false},"author":2,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_jetpack_memberships_contains_paid_content":false,"footnotes":"","jetpack_publicize_message":"","jetpack_publicize_feature_enabled":true,"jetpack_social_post_already_shared":true,"jetpack_social_options":{"image_generator_settings":{"template":"highway","default_image_id":0,"font":"","enabled":false},"version":2}},"categories":[2],"tags":[],"class_list":["post-15356","post","type-post","status-publish","format-standard","hentry","category-goatee-stroking-musing-or-something"],"jetpack_publicize_connections":[],"jetpack_featured_media_url":"","jetpack_shortlink":"https:\/\/wp.me\/pQNZZ-3ZG","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/scruss.com\/blog\/wp-json\/wp\/v2\/posts\/15356","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/scruss.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/scruss.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/scruss.com\/blog\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/scruss.com\/blog\/wp-json\/wp\/v2\/comments?post=15356"}],"version-history":[{"count":2,"href":"https:\/\/scruss.com\/blog\/wp-json\/wp\/v2\/posts\/15356\/revisions"}],"predecessor-version":[{"id":15360,"href":"https:\/\/scruss.com\/blog\/wp-json\/wp\/v2\/posts\/15356\/revisions\/15360"}],"wp:attachment":[{"href":"https:\/\/scruss.com\/blog\/wp-json\/wp\/v2\/media?parent=15356"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/scruss.com\/blog\/wp-json\/wp\/v2\/categories?post=15356"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/scruss.com\/blog\/wp-json\/wp\/v2\/tags?post=15356"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}