]> git.friedersdorff.com Git - max/tmk_keyboard.git/blobdiff - keyboard/teensy_lc_onekey/instructions.md
Merge branch 'master' into chibios
[max/tmk_keyboard.git] / keyboard / teensy_lc_onekey / instructions.md
index b19b89848666efc95ea9440a58f2418dd4c3ed60..ed355e293c5365146932b8b3e238f656ad39558f 100644 (file)
@@ -4,7 +4,9 @@ These ARM Teensies are now supported through [chibios](http://chibios.org).
 
 You'll need to install an ARM toolchain, for instance from [gcc ARM embedded](https://launchpad.net/gcc-arm-embedded) website, or using your favourite package manager. After installing, you should be able to run `arm-none-eabi-gcc -v` in the command prompt and get sensible output. This toolchain is used instead of `avr-gcc`, which is only for AVR chips. Naturally you'll also need the usual development tools (e.g. `make`), just as in the AVR setting.
 
-Next, you'll need ChibiOS. The current release (3.0.2) does not have sufficient Kinetis support, so you'll need to get a patched version from [my fork](https://github.com/flabbergast/ChibiOS/tree/kinetis): you can download a current tree zipped from [here](https://github.com/flabbergast/ChibiOS/archive/kinetis.zip). Unpack the zip, rename the newly created `ChibiOS-kinetis` to `chibios`, and move it to `tmk/tool/chibios/` (so that the ChibiOS files reside in `tmk/tool/chibios/chibios`).
+You'll need this fork/branch of TMK. If you're reading this from your own hard drive, then you already have it ;) Anyway, you can get a zip from [here](https://https://github.com/flabbergast/tmk_keyboard/archive/chibios.zip) {or clone this repo from github and checkout the `chibios` branch}.
+
+Next, you'll need ChibiOS. The current release (3.0.2) does not have sufficient Kinetis support, so you'll need to get a patched version from [my fork](https://github.com/flabbergast/ChibiOS/tree/kinetis): you can download a current tree zipped from [here](https://github.com/flabbergast/ChibiOS/archive/kinetis.zip) {or clone that repo from github and checkout the `kinetis` branch}. Unpack the zip, rename the newly created `ChibiOS-kinetis` to `chibios`, and move it to `tmk/tool/chibios/` (so that the ChibiOS files reside in `tmk/tool/chibios/chibios`).
 
 This should be it. Running `make` in `keyboard/teensy_lc_onekey` should create a working firmware in `build/`, called `ch.hex`.
 
@@ -16,6 +18,8 @@ It's set up for Teensy LC. To use 3.x, you'll need to edit the `Makefile` (and c
 
 ## Credits
 
+TMK itself is written by hasu, original sources [here](https://github.com/tmk/tmk_keyboard).
+
 The USB support for Kinetis MCUs is due to RedoX. His ChibiOS fork is also [on github](https://github.com/RedoXyde/ChibiOS); but it doesn't include Teensy LC definitions.
 
 ## Features that are not implemented yet
@@ -53,6 +57,16 @@ or set LOW by
 
         palClearPad(TEENSY_PINn_IOPORT, TEENSY_PINn);
 
+Toggling can be done with
+
+        palTogglePad(TEENSY_PINn_IOPORT, TEENSY_PINn);
+
+Alternatively, you can use
+
+        palWritePad(TEENSY_PINn_IOPORT, TEENSY_PINn, bit);
+
+where `bit` is either `PAL_LOW` or `PAL_HIGH` (i.e. `0` or `1`).
+
 ### Reading
 
 Reading pin status is done with
@@ -60,3 +74,7 @@ Reading pin status is done with
         palReadPad(TEENSY_PINn_IOPORT, TEENSY_PINn);
 
 The function returns either `PAL_HIGH` (actually `1`) or `PAL_LOW` (actually `0`).
+
+### Further docs
+
+All the commands that are available for pin manipulation through ChibiOS HAL are documented in [ChibiOS PAL driver docs](http://chibios.sourceforge.net/docs3/hal/group___p_a_l.html).