From 08f4671fb122f486f6cf0bba0ff8e4c6d93a9c7c Mon Sep 17 00:00:00 2001 From: Phil Hagelberg Date: Thu, 30 Oct 2014 21:34:31 -0700 Subject: [PATCH] A few more readme tweaks. --- README.org | 96 ++++++++++++++++++++++-------------------------------- 1 file changed, 39 insertions(+), 57 deletions(-) diff --git a/README.org b/README.org index 182527b..d0b5b33 100644 --- a/README.org +++ b/README.org @@ -1,23 +1,15 @@ * Atreus Keyboard -The [[http://ergodox.org][Ergodox]] keyboard is an absolutely fantastic design; I use it every -day at my office. However, I like to work away from the office -frequently, and I thought I might try my hand at designing something a -little more portable. The great thing about assembling my Ergodox is -that it taught me there's really nothing magical about it; it's just a -piece of circuitry with a bunch of switches read by a microcontroller -that speaks the USB HID interface. - -The Atreus is meant to be complementary to the Ergodox as something -smaller, cheaper, and more travel-friendly. The case measures 25x11cm -and lacks even a number row, relying heavily upon the fn key. There is -no PCB in this design, requiring [[http://wiki.geekhack.org/index.php?title=Hard-Wiring_How-To][a manual matrix wiring approach]]. -However, given that there are only 4 rows and 11 columns, this isn't -as daunting as it could be. +The Atreus is a mechanical keyboard designed primarily to match the +shape of human hands and to be as portable as possible. The case +measures 25x11cm and lacks even a number row, relying heavily upon the +fn key. There is no PCB in this design, requiring [[http://wiki.geekhack.org/index.php?title=Hard-Wiring_How-To][a manual matrix +wiring approach]]. However, given that there are only 4 rows and 11 +columns, the wiring process isn't as daunting as it could be. I've seen a number of existing DIY 40% keyboard designs, but most of them stagger the rows, which I find very annoying now that I've gotten -used to the columnar layout of the Ergodox. In addition, many of the +used to the columnar layout of the [[http://ergodox.org][Ergodox]]. In addition, many of the designs I've seen waste a lot of room on the space bar, failing to take into account the fact that the thumb is the strongest and most versatile of the fingers. This design avoids both these problems while @@ -25,31 +17,23 @@ taking a more couch-friendly single-piece approach. [[./atreus.jpg]] -Having so few keys, this board is pretty idiosyncratic. It works very -well for the kind of work that I do, but it probably wouldn't be a -good fit for you if you do a lot of numerical data entry or make heavy -use of function keys, arrows, or home/end. If you primarily use -[[https://github.com/technomancy/dotfiles/commit/856a638350a26b0cdb0bcc82042ed77a3fa4bdea][programs with good key rebinding functionality]], you're probably in -good shape. For instance, =enter= and =tab= are in a bit of an awkward -position, but many programs treat =control-m= and =control-i= as -=enter= and =tab= respectively. - ** Kits You can buy [[http://atreus.technomancy.us][Atreus kits]] that have all the parts you need along with detailed assembly instructions from http://atreus.technomancy.us. If -you'd rather round up all the parts yourself, that's possible too; see -the bill of materials below. +you'd rather round up all the parts yourself, that's possible too +since the design is completely open source; see the bill of materials +below. ** Layout Only a handful of punctuation marks (and no digits) are available unshifted, and all the modifiers are on the bottom row: - : ' , . p y || f g c r l - : a o e u i || d h t n s - : ; q j k x || b m w v z - : esc tab super shift bksp ctrl || alt space fn - / enter + : q w e r t || y u i o p + : a s d f g || h j k l ; + : z x c v b || n m , . / + : esc tab super shift bksp ctrl || alt space fn - ' enter The numbers and most of the punctuation are on the fn layer with a numpad-style arrangement under the right hand: @@ -57,25 +41,15 @@ numpad-style arrangement under the right hand: : ! @ { } | || pgup 7 8 9 * : # $ ( ) ` || pgdn 4 5 6 + : % ^ [ ] ~ || \ 1 2 3 ? - : reset paste || hwdv . 0 = - -An alternate layout has the numbers in a more traditional row across the top: + : L2 insert || . 0 = - : 1 2 3 4 5 || 6 7 8 9 0 - : - + ( ) = || . [ ] { } - : ! @ # $ % || ^ & * ~ ? - : reset paste ` || hwdv pgup pgdn \ +The =L2= key switches it to the function layer, and tapping =fn= here +brings it back. -I type in Dvorak but prefer to do the remapping in software rather -than hardware so I don't have to change layouts when I switch to my -laptop's internal keyboard. However, the =hwdv= key switches it to -hardware Dvorak mode, which is useful for attaching to computers that -may not have software Dvorak set up. The =paste= key sends -shift+insert, while the =reset= button activates the bootloader, -allowing easy reprogramming without opening the case. - -This is all a matter of firmware though; the layout is easy to change -after the fact. +The firmware project includes a number of other options, including +colemak, dvorak, and "software dvorak" which sends keycodes assuming +the OS will perform the translation into dvorak. Adding new layouts or +changing existing ones is easy. ** Parts @@ -96,8 +70,11 @@ In order to avoid ghosting, each switch needs a [[https://www.radioshack.com/pro *** Microcontroller -A [[http://www.pjrc.com/teensy/index.html][Teensy 2]] is recommended. Be sure to get one without headers so it -will fit in between the bottom layer and the plate. +A [[http://www.pjrc.com/teensy/index.html][Teensy 2]], [[http://www.pololu.com/product/3101][Pololu A-star micro]], or [[http://arduino.cc/en/Main/ArduinoBoardMicro][Arduino Micro]] is recommended. + +Be sure to get one without headers so it will fit in between the +bottom layer and the plate. USB micro is preferred over USB mini for +this reason as well. *** Keycaps @@ -107,14 +84,17 @@ few extras we won't use. There are two "deep dish" keys in that set which you can place under your index fingers on the home row to help guide your hands to the right spot without looking. However, you only get a single 1.5x keycap, and the middle two thumb keys both use them, -so you might want to pick up an extra. (You can buy a single DSA 1.5x -keycap from [[http://www.keycapsdirect.com/key-capsinventory.php][Signature Plastics]].) +so you might want to pick up an extra. You can buy a single DSA 1.5x +keycap from [[http://www.keycapsdirect.com/key-capsinventory.php][Signature Plastics]] as well as keys with homing bumps if +you prefer those to the deep dish keys for the keys under the index +fingers. However, note that on a board as small as the Atreus, finding +the home row is much easier than it is on a conventional keyboard. ** Case Layered laser-cut wood or acrylic. The original case (=case-mk-i.svg=) is slightly less wide and has a minor asymmetry with the screws on the -bottom side. The [[http://geekhack.org/index.php?topic%3D54759.msg1304117#msg1304117][mark II case]] (in the `case` directory) is implemented +bottom side. The [[http://geekhack.org/index.php?topic%3D54759.msg1304117#msg1304117][mark II case]] (in the =case= directory) is implemented programmatically in openscad, though dxf files are available as a convenience, which can be converted to SVG or EPS for laser cutting with Inkscape. Mark II features 8 screw holes and a kind of "stair @@ -124,10 +104,10 @@ pictured below. [[./layers.jpg]] The bottom and top covers (black in the photo) should be cut in 3mm. -The switch plate (frosted in the photo) can be cut in 4.5mm or -3mm. The spacer should be cut in 6mm; it needs to be at least as -thick as the mini USB cable you connect to the microcontroller. I -recommend using a mini USB cable with as thin a connector as you can +The switch plate (frosted in the photo) can be cut in 4.5 or +3mm. The spacer should be cut in 5 or 6mm; it needs to be at least as +thick as the USB cable you connect to the microcontroller. I +recommend using a USB cable with as thin a connector as you can find or sanding the connector down to the required thickness. TODO: describe finishing process for wood. @@ -144,7 +124,8 @@ to produce a qwerty =atreus.hex= file. You will probably want to create your own layout once you've gotten a chance to try it and see what works for you. -In either case you would use the =.hex= file produced with the [[http://www.pjrc.com/teensy/loader.html][teensy loader]] to upload to the microcontroller. +In either case you would use the =.hex= file you just produced with +=avrdude= or the [[http://www.pjrc.com/teensy/loader.html][teensy loader]] to upload to the microcontroller. Once the firmware is loaded and the keyboard is assembled, pressing the onboard reset button to update new versions of the firmware is @@ -201,6 +182,7 @@ otherwise) and get your name and link added here: - [[http://blog.tarn-vedra.de/2014/04/reproducing-keyboard-science_1707.html][Moritz Ulrich]] - [[http://geekhack.org/index.php?topic=57007.0][Constantine]] - [[http://blog.mattgauger.com/blog/2014/08/19/atreus-my-custom-keyboard/][Matt Gauger]] +- [[http://aaronash.com.au/posts/atreus-keyboard/][Aaron Ash]] ** Orestes -- 2.39.2