]> git.donarmstrong.com Git - qmk_firmware.git/blobdiff - keyboards/ergodox/readme.md
update pics and readme
[qmk_firmware.git] / keyboards / ergodox / readme.md
index 1627883c9186e5739055b2185a72ca2306227fad..3bbe98fd699b1532d182e0f9fca88ca88d09ac3a 100644 (file)
@@ -1,18 +1,16 @@
-# Customizing Keymap
+# The Easy Way
 
-There are external tools for customizing the layout, but those do not use
-the featurs of this qmk firmware.  These sites include:
+If you can find firmware someone else has made that does what you want, that
+is the easiest way to customize your ErgoDox.  It requires no programming
+experience or the setup of a build environment.
 
-  - [Massdrop configurator](https://keyboard-configurator.massdrop.com/ext/ergodox) for Ez
-  - [Input Club configurator](https://input.club/configurator-ergodox) for Infinity, provides left and right files
+Quickstart:
 
-You can also find an existing firmware that you like, for example from:
+  - Find and download an existing firmware
+    [from Other Firmware Options](#other-firmware-options)
 
-  - [Dozens of community-contributed keymaps](http://qmk.fm/keyboards/ergodox/)
-
-This qmk firmware also provides the ability to customize keymaps, but requires
-a toolchain to build the firmware.  See below for instructions on building
-firmware and customizing keymaps.
+  - Then flash the firmware to your [ErgoDox Ez](#ergodox-ez)
+    or [ErgoDox Infinity](#ergodox-infinity)
 
 # Customizing Keymaps
 
@@ -74,9 +72,7 @@ Some distributions provide a binary, maybe called `teensy-loader-cli`).
 
 To flash the firmware:
 
-  - Build the firmware with `make keymap=keymapname`, for example `make
-    keymap=default`
-
+  - Build the firmware with `make keymapname`, for example `make default` 
   - This will result in a hex file called `ergodox_ez_keymapname.hex`, e.g.
     `ergodox_ez_default.hex`
 
@@ -94,30 +90,48 @@ To flash the firmware:
 The Infinity is two completely independent keyboards, and needs to be flashed
 for the left and right halves seperately.  To flash them:
 
-  - Remove the build directory with `rm -rf ../../.build`
-
-  - Build the firmware with `make keymap=keymapname subproject=infinity`
+  - Build the firmware with `make infinity-keymapname`
 
   - Plug in the left hand keyboard only.
 
   - Press the program button (back of keyboard, above thumb pad).
 
-  - Install the firmware with `sudo make dfu-util keymap=keymapname subproject=infinity`
-
-  - Remove the left-hand build with `rm -rf ../../.build`
+  - Install the firmware with `sudo make infinity-keymapname-dfu-util`
 
-  - Build left hand firmware with `make keymap=keymapname subproject=infinity MASTER=right`
+  - Build left hand firmware with `make infinity-keymapname MASTER=right`
 
   - Plug in the right hand keyboard only.
 
   - Press the program button (back of keyboard, above thumb pad).
 
-  - Install the firmware with `sudo make dfu-util keymap=keymapname subproject=infinity MASTER=right`
+  - Install the firmware with `sudo make infinity-keymapname-dfu-util MASTER=right`
 
 More information on the Infinity firmware is available in the [TMK/chibios for
 Input Club Infinity Ergodox](https://github.com/fredizzimo/infinity_ergodox/blob/master/README.md)
 
-## Contributing your keymap
+### Infinity Master/Two Halves
+
+The Infinity is two completely independent keyboards, that can connect together.
+You have a few options in how you flash the firmware:
+
+- Flash the left half, rebuild the firmware with "MASTER=right" and then flash
+  the right half.  This allows you to plug in either half directly to the
+  computer and is what the above instructions do.
+
+- Flash the left half, then flash the same firmware on the right.  This only
+  works when the left half is plugged directly to the computer and the keymap
+  is mirrored.  It saves the small extra step of rebuilding with
+  "MASTER=right".
+
+- The same as the previous one but with "MASTER=right" when you build the
+  firmware, then flash the same firmware to both halves.  You just have to
+  directly connect the right half to the computer.
+
+- For minor changes such as changing only the keymap without having updated
+  any part of the firmware code itself, you can program only the MASTER half.
+  It is safest to program both halves though.
+
+# Contributing your keymap
 
 The QMK firmware is open-source, so it would be wonderful to have your contribution! Within a very short time after launching we already amassed dozens of user-contributed keymaps, with all sorts of creative improvements and tweaks. This is very valuable for people who aren't comfortable coding, but do want to customize their ErgoDox. To make it easy for these people to use your layout, I recommend submitting your PR in the following format.
 
@@ -126,10 +140,26 @@ The QMK firmware is open-source, so it would be wonderful to have your contribut
 3. `readme.md` - a readme file, which GitHub would display by default when people go to your directory. Explain what's different about your keymap, what you tweaked or how it works. No specific format to follow, just communicate what you did. :)
 4. Any graphics you wish to add. This is absolutely not a must. If you feel like it, you can use [Keyboard Layout Editor](http://keyboard-layout-editor.com) to make something and grab a screenshot, but it's really not a must. If you do have graphics, your readme can just embed the graphic as a link, just like I did with the default layout.
 
-## Finding the keycodes you need
+# Finding the keycodes you need
 
 Let's say you want a certain key in your layout to send a colon; to figure out what keycode to use to make it do that, you're going to need `quantum/keymap_common.h`.
 
 That file contains a big list of all of the special, fancy keys (like, being able to send % on its own and whatnot).
 
 If you want to send a plain vanilla key, you can look up its code under `doc/keycode.txt`. That's where all the boring keys hang out.
+
+# Other Firmware Options
+
+There are external tools for customizing the layout, but those do not use
+the featurs of this qmk firmware.  These sites include:
+
+  - [Massdrop configurator](https://keyboard-configurator.massdrop.com/ext/ergodox) for Ez
+  - [Input Club configurator](https://input.club/configurator-ergodox) for Infinity, provides left and right files
+
+You can also find an existing firmware that you like, for example from:
+
+  - [Dozens of community-contributed keymaps](http://qmk.fm/keyboards/ergodox/)
+
+This qmk firmware also provides the ability to customize keymaps, but requires
+a toolchain to build the firmware.  See below for instructions on building
+firmware and customizing keymaps.