Mercurial > louis > kiibohd-controller
annotate README.markdown @ 277:aabd00e4b17b
Convert README to Markdown format.
This makes it render nicely on GitHub's website, as well as having a
consistent plain-text format that should be familiar to many.
author | Mike Cooper <mythmon@gmail.com> |
---|---|
date | Wed, 11 Feb 2015 22:22:12 -0800 |
parents | |
children | 65df0d7b0f88 ab4515606277 |
rev | line source |
---|---|
277
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
1 The Kiibohd Controller |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
2 ====================== |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
3 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
4 This README is a bit long, just look at the sections you are interested in. |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
5 You only need to install avr-gcc if you want to build for the Teensy 2.0/2.0++. |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
6 Everything else needs an arm-none-eabi-gcc compiler (e.g. Infinity keyboard, |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
7 Teensy 3.0/3.1, McHCK). |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
8 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
9 Linux is the ideal build environment (preferably recent'ish). In the near |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
10 future I'll make available an Arch Linux VM for building/manufacturing tests. |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
11 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
12 Building on Mac should be ok for 99% of users with Macports (haven't tried |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
13 Brew). The dfu Bootloader will not build correctly with the old version of |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
14 arm-none-eabi-gcc that Macports currently has (4.7.3). This is due to a bug |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
15 with lto (link time optimizations) which makes the resulting binary too big to |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
16 fit on the chip (must be less than 4096 Bytes). |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
17 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
18 Building on Windows should also be fine for 99% of users, but takes a bunch of |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
19 work to setup (because Windows is a crappy dev environment). Cygwin is |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
20 currently required along with some non-Cygwin compilers and utilities (because |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
21 they are not available for Cygwin). The dfu Bootloader will not build because |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
22 of a Make 3.81+ bug/feature that removed support for non-Unix (Windows) |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
23 filenames as dependencies of targets. If you [replace the version of Make in |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
24 Cygwin](http://stackoverflow.com/questions/601516/cygwin-make-error-target-pattern-contains-no) |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
25 it should work. However, make sure that the flash size is no larger than 4096 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
26 Bytes or the bootloader will not work. Things will likely break if there are |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
27 **SPACES IN YOUR PATHS**. I install cygwin to `C:\cygwin64`. If you are brave |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
28 and have programming knowledge, I will accept patches to fix any issues |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
29 regarding spaces in paths. |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
30 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
31 Please give authors credit for modules used if you use in a distributed |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
32 product :D |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
33 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
34 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
35 General Dependencies |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
36 -------------------- |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
37 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
38 Below listed are the Arch Linux pacman names, AUR packages may be required. |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
39 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
40 These depend a bit on which targets you are trying to build, but the general |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
41 one: |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
42 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
43 - cmake (2.8 and higher) |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
44 - git |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
45 - ctags (recommended, not required) |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
46 - python3 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
47 - libusb1.0 (and -devel) |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
48 - make |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
49 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
50 AVR Specific (Teensy 1.0/++,2.0/++) (try to use something recent, suggested |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
51 versions below) |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
52 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
53 - avr-gcc (~4.8.0) |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
54 - avr-binutils (~2.23.2) |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
55 - avr-libc (~1.8.0) |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
56 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
57 ARM Specific (Teensy 3.0/3.1, Infinity Keyboard, McHCK) |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
58 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
59 - Arch Linux / Mac Ports |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
60 - arm-none-eabi-gcc |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
61 - arm-none-eaby-binutils |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
62 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
63 - Windows (https://launchpad.net/gcc-arm-embedded/+download) |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
64 - gcc-arm-none-eabi (win32.zip) |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
65 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
66 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
67 Windows Setup |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
68 ------------- |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
69 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
70 Compiling on Windows does work, just it's a bunch more work. |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
71 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
72 First make sure Cygwin is installed - http://www.cygwin.com/ - 32bit or 64bit |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
73 is fine. Make sure the following are installed: |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
74 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
75 - make |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
76 - git (needed for some compilation info) |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
77 - cmake |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
78 - gcc-core |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
79 - gcc-g++ |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
80 - libusb1.0 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
81 - libusb1.0-devel |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
82 - python3 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
83 - ctags (recommended, not required) |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
84 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
85 Please note, I use cygwin term exclusively for any command line options. |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
86 Unless mentioned otherwise, use it. Do NOT use CMD or Powershell. |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
87 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
88 Also install the [Windows version of CMake](http://cmake.org/cmake/resources/software.html) |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
89 (3+ is ideal) - Select "Do not add CMake to system PATH". This is in addition |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
90 to the Cygwin version. This is an easier alternative to installing another C |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
91 compiler. Add the following line to your .bashrc, making sure the CMake path |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
92 is correct: |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
93 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
94 echo "alias wincmake=\"PATH='/cygdrive/c/Program Files (x86)/CMake'/bin:'${PATH}' cmake -G 'Unix Makefiles'\"" >> ~/.bashrc |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
95 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
96 Install the [PJRC Virtual Serial Port Driver](http://pjrc.com/teensy/serial_install.exe). |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
97 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
98 Next, install the compiler(s) you want. |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
99 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
100 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
101 ### AVR GCC |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
102 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
103 You just need the |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
104 [Atmel AVR 8-bit Toolchain](http://www.atmel.com/tools/atmelavrtoolchainforwindows.aspx). |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
105 The latest should be fine, as of writing it was 3.4.3. |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
106 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
107 Extract the files to a directory, say `C:\avr8-gnu-toolchain`. Then copy all |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
108 the folders in that directory to the Cygwin `/usr/local` directory. Mine is |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
109 `C:\cygwin64\usr\local`. (You can also just setup the paths, but this is |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
110 faster/simpler. Might screw up your Cygwin though). |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
111 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
112 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
113 ### ARM EABI |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
114 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
115 Download the latest |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
116 [GNU Tools for Embedded Processors |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
117 gcc-arm-none-eabi](https://launchpad.net/gcc-arm-embedded/+download). |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
118 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
119 Download `gcc-arm-none-eabi*win32.zip`. |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
120 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
121 Then extract all the folders/files in the zip to the Cygwin `/usr/local` |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
122 directory. Mine is `C:\cygwin64\usr\local`. Or, you can setup paths using |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
123 the installer (you have to be more careful, avoid spaces in paths). |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
124 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
125 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
126 CMake Info |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
127 ---------- |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
128 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
129 One of the big benefits of using CMake is the ability to build multiple |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
130 configurations (for different microcontrollers) at the same time. The |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
131 following sections explain in detail what each CMakeLists.txt configuration |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
132 option does and what you can change it to. However, it is possible to |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
133 configure each of these options using the `-D` command line flag. |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
134 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
135 For example, to build the Infinity Keyboard default configuration: |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
136 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
137 ```bash |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
138 $ mkdir build_infinity |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
139 $ cd build_infinity |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
140 $ cmake -DCHIP=mk20dx128vlf5 -DScanModule=MD1 -DMacroModule=PartialMap \ |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
141 -DOutputModule=pjrcUSB -DDebugModule=full -DBaseMap=defaultMap \ |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
142 -DDefaultMap="md1Overlay stdFuncMap" -DPartialMaps="hhkbpro2" \ |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
143 .. |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
144 $ make |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
145 ``` |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
146 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
147 CMake defaults to the values specified in CMakeLists.txt if not overridden via |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
148 the command line. |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
149 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
150 > NOTE: On Windows, you will have to use "wincmake" instead of "cmake". |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
151 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
152 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
153 Selecting Microcontroller |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
154 ------------------------- |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
155 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
156 This is where you select the chip you want to compile for. The build system |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
157 will automatically select the compiler needed to compile for your chip. |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
158 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
159 Open up CMakeLists.txt in your favourite text editor. You are looking for: |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
160 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
161 ```cmake |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
162 ### |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
163 # Chip Selection |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
164 # |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
165 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
166 #| You _MUST_ set this to match the microcontroller you are trying to compile for |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
167 #| You _MUST_ clean the build directory if you change this value |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
168 #| |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
169 set( CHIP |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
170 # "at90usb162" # Teensy 1.0 (avr) |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
171 # "atmega32u4" # Teensy 2.0 (avr) |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
172 # "at90usb646" # Teensy++ 1.0 (avr) |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
173 # "at90usb1286" # Teensy++ 2.0 (avr) |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
174 # "mk20dx128" # Teensy 3.0 (arm) |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
175 "mk20dx128vlf5" # McHCK mk20dx128vlf5 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
176 # "mk20dx256" # Teensy 3.1 (arm) |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
177 CACHE STRING "Microcontroller Chip" ) |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
178 ``` |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
179 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
180 Just uncomment the chip you want, and comment out the old one. |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
181 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
182 > NOTE: If you change this option, you will *need* to delete the build |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
183 > directory that is created in the Building sections below. |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
184 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
185 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
186 Selecting Modules |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
187 ----------------- |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
188 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
189 > WARNING: Not all modules are compatible, and some modules may have |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
190 > dependencies on other modules. |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
191 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
192 This is where the options start getting interesting. The Kiibohd Controller |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
193 is designed around a set of 4 types of modules that correspond to different |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
194 functionality: |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
195 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
196 - Scan Module |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
197 - Macro Module |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
198 - Output Module |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
199 - Debug Module |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
200 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
201 The Scan Module is where the most interesting stuff happens. These modules |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
202 take in "keypress data". A converter Scan Module will interpret a protocol |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
203 into key press/releases. A matrix Scan Module may inherit from the matrix |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
204 module to scan keypress from a matrix This module just has to give |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
205 press/release codes, but does have some callback control to other modules |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
206 depending on the lifecycle for press/release codes (this can be very |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
207 complicated depending on the protocol). Each Scan Module has it's own default |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
208 keymap/modifier map. (TODO recommend keymap changing in the Macro Module). |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
209 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
210 Some scan modules have very specialized hardware requirements, each module |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
211 directory should have at least a link to the needed parts and/or schematics |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
212 (TODO!). |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
213 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
214 The Macro Module takes care of the mapping of the key press/release code into |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
215 an Output (USB) scan code. Any layering, macros, keypress |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
216 intelligence/reaction is done here. |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
217 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
218 The Output Module is the module dealing with output from the microcontroller. |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
219 Currently USB is the only output protocol. Different USB output |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
220 implementations are available, pjrc being the safest/least featureful one. |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
221 Debug capabilities may depend on the module selected. |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
222 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
223 The Debug Module enables various things like the Teensy LED on errors, debug |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
224 terminal output. (TODO get true UART working in avr, not just arm) |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
225 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
226 Open up CMakeLists.txt in your favourite text editor. Look for: |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
227 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
228 ```cmake |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
229 ### |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
230 # Project Modules |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
231 # |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
232 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
233 #| Note: This is the only section you probably want to modify |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
234 #| Each module is defined by it's own folder (e.g. Scan/Matrix represents the "Matrix" module) |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
235 #| All of the modules must be specified, as they generate the sources list of files to compile |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
236 #| Any modifications to this file will cause a complete rebuild of the project |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
237 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
238 #| Please look at the {Scan,Macro,Output,Debug} for information on the modules and how to create new ones |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
239 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
240 ##| Deals with acquiring the keypress information and turning it into a key index |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
241 set( ScanModule "MD1" |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
242 CACHE STRING "Scan Module" ) |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
243 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
244 ##| Provides the mapping functions for DefaultMap and handles any macro processing before sending to the OutputModule |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
245 set( MacroModule "PartialMap" |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
246 CACHE STRING "Macro Module" ) |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
247 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
248 ##| Sends the current list of usb key codes through USB HID |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
249 set( OutputModule "pjrcUSB" |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
250 CACHE STRING "Output Module" ) |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
251 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
252 ##| Debugging source to use, each module has it's own set of defines that it sets |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
253 set( DebugModule "full" |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
254 CACHE STRING "Debug Module" ) |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
255 ``` |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
256 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
257 Look at each module individually for it's requirements. There is |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
258 chip/architecture dependency checking but some permutations of modules may not |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
259 be tested/compile. |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
260 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
261 There are also CMake options for temporarily selecting modules. But it's |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
262 easier to just edit the file. e.g. `cmake -DScanModuleOverride=<module name>`. |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
263 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
264 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
265 Linux Building |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
266 -------------- |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
267 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
268 From this directory. |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
269 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
270 ```bash |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
271 $ mkdir build |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
272 $ cd build |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
273 $ cmake .. |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
274 $ make |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
275 ``` |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
276 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
277 Example output: |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
278 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
279 ``` |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
280 $ cmake .. |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
281 -- Compiler Family: |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
282 arm |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
283 -- Chip Selected: |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
284 mk20dx128vlf5 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
285 -- Chip Family: |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
286 mk20dx |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
287 -- CPU Selected: |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
288 cortex-m4 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
289 -- Compiler Source Files: |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
290 Lib/mk20dx.c;Lib/delay.c |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
291 -- Bootloader Type: |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
292 dfu |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
293 -- Detected Scan Module Source Files: |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
294 Scan/MD1/scan_loop.c;Scan/MD1/../MatrixARM/matrix_scan.c |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
295 -- Detected Macro Module Source Files: |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
296 Macro/PartialMap/macro.c |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
297 -- Detected Output Module Source Files: |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
298 Output/pjrcUSB/output_com.c;Output/pjrcUSB/arm/usb_desc.c;Output/pjrcUSB/arm/usb_dev.c; |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
299 Output/pjrcUSB/arm/usb_keyboard.c;Output/pjrcUSB/arm/usb_mem.c;Output/pjrcUSB/arm/usb_serial.c |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
300 -- Detected Debug Module Source Files: |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
301 Debug/full/../cli/cli.c;Debug/full/../led/led.c;Debug/full/../print/print.c |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
302 -- Found Git: /usr/bin/git (found version "2.2.1") |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
303 -- Found Ctags: /usr/bin/ctags (found version "5.8") |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
304 -- Checking for latest kll version: |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
305 Current branch master is up to date. |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
306 -- Detected Layout Files: |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
307 /home/hyatt/Source/controller/Macro/PartialMap/capabilities.kll |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
308 /home/hyatt/Source/controller/Output/pjrcUSB/capabilities.kll |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
309 /home/hyatt/Source/controller/Scan/MD1/defaultMap.kll |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
310 /home/hyatt/Source/controller/kll/layouts/md1Overlay.kll |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
311 /home/hyatt/Source/controller/kll/layouts/stdFuncMap.kll |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
312 /home/hyatt/Source/controller/kll/layouts/hhkbpro2.kll |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
313 -- Configuring done |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
314 -- Generating done |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
315 -- Build files have been written to: /home/hyatt/Source/controller/build |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
316 [master]: make [~/Source/controller/build](hyatt@x230mas:pts/6) |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
317 [ 5%] Generating KLL Layout |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
318 Scanning dependencies of target kiibohd.elf |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
319 [ 11%] Building C object CMakeFiles/kiibohd.elf.dir/main.c.o |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
320 [ 17%] Building C object CMakeFiles/kiibohd.elf.dir/Lib/mk20dx.c.o |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
321 [ 23%] Building C object CMakeFiles/kiibohd.elf.dir/Lib/delay.c.o |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
322 [ 29%] Building C object CMakeFiles/kiibohd.elf.dir/Scan/MD1/scan_loop.c.o |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
323 [ 35%] Building C object CMakeFiles/kiibohd.elf.dir/Scan/MatrixARM/matrix_scan.c.o |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
324 [ 41%] Building C object CMakeFiles/kiibohd.elf.dir/Macro/PartialMap/macro.c.o |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
325 [ 47%] Building C object CMakeFiles/kiibohd.elf.dir/Output/pjrcUSB/output_com.c.o |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
326 [ 52%] Building C object CMakeFiles/kiibohd.elf.dir/Output/pjrcUSB/arm/usb_desc.c.o |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
327 [ 58%] Building C object CMakeFiles/kiibohd.elf.dir/Output/pjrcUSB/arm/usb_dev.c.o |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
328 [ 64%] Building C object CMakeFiles/kiibohd.elf.dir/Output/pjrcUSB/arm/usb_keyboard.c.o |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
329 [ 70%] Building C object CMakeFiles/kiibohd.elf.dir/Output/pjrcUSB/arm/usb_mem.c.o |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
330 [ 76%] Building C object CMakeFiles/kiibohd.elf.dir/Output/pjrcUSB/arm/usb_serial.c.o |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
331 [ 82%] Building C object CMakeFiles/kiibohd.elf.dir/Debug/cli/cli.c.o |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
332 [ 88%] Building C object CMakeFiles/kiibohd.elf.dir/Debug/led/led.c.o |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
333 [ 94%] Building C object CMakeFiles/kiibohd.elf.dir/Debug/print/print.c.o |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
334 Linking C executable kiibohd.elf |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
335 [ 94%] Built target kiibohd.elf |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
336 Scanning dependencies of target SizeAfter |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
337 [100%] Chip usage for mk20dx128vlf5 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
338 SRAM: 32% 5384/16384 bytes |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
339 Flash: 18% 23384/126976 bytes |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
340 [100%] Built target SizeAfter |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
341 ``` |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
342 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
343 Linux Loading Firmware |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
344 ---------------------- |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
345 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
346 First place the keyboard into re-flash mode. This can be done either by |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
347 pressing the re-flash button on the PCB/Teensy. Or by entering the Kiibohd |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
348 Virtual Serial Port and using the 'reload' command. |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
349 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
350 The `load` script that is created during the build can load the firmware over |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
351 USB. Either run it with sudo, or install the `98-kiibohd.rules` to |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
352 `/etc/udev/rules.d` and run: `udevadm control --reload-rules`. |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
353 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
354 To load the newly built firmware: `./load`. |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
355 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
356 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
357 Linux Building Bootloader |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
358 ------------------------- |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
359 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
360 > NOTE: Does not apply to Teensy based builds. |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
361 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
362 From this directory. |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
363 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
364 ```bash |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
365 $ cd Bootloader |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
366 $ mkdir build |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
367 $ cd build |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
368 $ cmake .. |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
369 $ make |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
370 ``` |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
371 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
372 Example output: |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
373 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
374 ```bash |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
375 $ cmake .. |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
376 -- Compiler Family: |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
377 arm |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
378 -- Chip Selected: |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
379 mk20dx128vlf5 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
380 -- Chip Family: |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
381 mk20dx |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
382 -- CPU Selected: |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
383 cortex-m4 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
384 -- Compiler Source Files: |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
385 Lib/mk20dx.c;Lib/delay.c |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
386 -- Bootloader Type: |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
387 dfu |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
388 -- Bootloader Source Files: |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
389 main.c;dfu.c;dfu.desc.c;flash.c;kinetis.c;usb.c |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
390 -- Found Git: /usr/bin/git (found version "2.2.1") |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
391 -- Found Ctags: /usr/bin/ctags (found version "5.8") |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
392 -- Configuring done |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
393 -- Generating done |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
394 -- Build files have been written to: /home/hyatt/Source/controller/Bootloader/build |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
395 [master]: make [~/Source/controller/Bootloader/build](hyatt@x230mas:pts/6) |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
396 Scanning dependencies of target kiibohd_bootloader.elf |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
397 [ 11%] Building C object CMakeFiles/kiibohd_bootloader.elf.dir/main.c.o |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
398 [ 22%] Building C object CMakeFiles/kiibohd_bootloader.elf.dir/dfu.c.o |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
399 [ 33%] Building C object CMakeFiles/kiibohd_bootloader.elf.dir/dfu.desc.c.o |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
400 [ 44%] Building C object CMakeFiles/kiibohd_bootloader.elf.dir/flash.c.o |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
401 [ 55%] Building C object CMakeFiles/kiibohd_bootloader.elf.dir/kinetis.c.o |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
402 [ 66%] Building C object CMakeFiles/kiibohd_bootloader.elf.dir/usb.c.o |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
403 [ 77%] Building C object CMakeFiles/kiibohd_bootloader.elf.dir/home/hyatt/Source/controller/Lib/mk20dx.c.o |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
404 [ 88%] Building C object CMakeFiles/kiibohd_bootloader.elf.dir/home/hyatt/Source/controller/Lib/delay.c.o |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
405 Linking C executable kiibohd_bootloader.elf |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
406 [ 88%] Built target kiibohd_bootloader.elf |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
407 Scanning dependencies of target SizeAfter |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
408 [100%] Chip usage for mk20dx128vlf5 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
409 SRAM: 19% 3176/16384 bytes |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
410 Flash: 2% 3736/126976 bytes |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
411 [100%] Built target SizeAfter |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
412 ``` |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
413 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
414 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
415 Linux Loading Bootloader |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
416 ------------------------ |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
417 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
418 > NOTE: Does not apply to Teensy based builds. |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
419 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
420 It's recommended to use an SWD-type flasher like a Bus Pirate. There is a |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
421 convenience script for loading the firmware once the system is setup. |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
422 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
423 ```bash |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
424 $ cd Bootloader/Scripts |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
425 $ ./swdLoad.bash |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
426 ``` |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
427 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
428 The above script requires Ruby, Ruby serial port module, git, and a |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
429 `/dev/buspirate` udev rule. |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
430 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
431 Additional Notes: |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
432 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
433 * https://github.com/mchck/mchck/wiki/Getting-Started (See Bus-Pirate section) |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
434 * https://wiki.archlinux.org/index.php/Bus_pirate |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
435 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
436 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
437 Windows Building |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
438 ---------------- |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
439 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
440 From this directory. |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
441 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
442 ```bash |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
443 $ mkdir build |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
444 $ cd build |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
445 $ wincmake .. |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
446 $ make |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
447 ``` |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
448 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
449 Example output: |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
450 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
451 ```bash |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
452 $ wincmake .. |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
453 -- Compiler Family: |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
454 arm |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
455 -- Chip Selected: |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
456 mk20dx128vlf5 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
457 -- Chip Family: |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
458 mk20dx |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
459 -- CPU Selected: |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
460 cortex-m4 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
461 -- Compiler Source Files: |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
462 Lib/mk20dx.c;Lib/delay.c |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
463 -- Bootloader Type: |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
464 dfu |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
465 -- Detected Scan Module Source Files: |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
466 Scan/MD1/scan_loop.c;Scan/MD1/../MatrixARM/matrix_scan.c |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
467 -- Detected Macro Module Source Files: |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
468 Macro/PartialMap/macro.c |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
469 -- Detected Output Module Source Files: |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
470 Output/pjrcUSB/output_com.c;Output/pjrcUSB/arm/usb_desc.c;Output/pjrcUSB/arm/usb_dev.c;Output/pjrcUSB/arm/usb_keyboard.c;Output/pjrcUSB/arm/usb_mem.c;Output/pjrcUSB/arm/usb_serial.c |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
471 -- Detected Debug Module Source Files: |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
472 Debug/full/../cli/cli.c;Debug/full/../led/led.c;Debug/full/../print/print.c |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
473 -- Found Git: C:/cygwin64/bin/git.exe (found version "2.1.1") |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
474 -- Found Ctags: C:/cygwin64/bin/ctags.exe (found version "5.8") |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
475 -- Checking for latest kll version: |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
476 Current branch master is up to date. |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
477 -- Detected Layout Files: |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
478 C:/cygwin64/home/Jacob/controller/Macro/PartialMap/capabilities.kll |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
479 C:/cygwin64/home/Jacob/controller/Output/pjrcUSB/capabilities.kll |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
480 C:/cygwin64/home/Jacob/controller/Scan/MD1/defaultMap.kll |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
481 C:/cygwin64/home/Jacob/controller/kll/layouts/md1Overlay.kll |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
482 C:/cygwin64/home/Jacob/controller/kll/layouts/stdFuncMap.kll |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
483 C:/cygwin64/home/Jacob/controller/kll/layouts/hhkbpro2.kll |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
484 -- Configuring done |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
485 -- Generating done |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
486 -- Build files have been written to: C:/cygwin64/home/Jacob/controller/build |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
487 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
488 $ make |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
489 [ 5%] Generating KLL Layout |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
490 Scanning dependencies of target kiibohd.elf |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
491 [ 11%] Building C object CMakeFiles/kiibohd.elf.dir/main.c.obj |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
492 [ 17%] Building C object CMakeFiles/kiibohd.elf.dir/Lib/mk20dx.c.obj |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
493 [ 23%] Building C object CMakeFiles/kiibohd.elf.dir/Lib/delay.c.obj |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
494 [ 29%] Building C object CMakeFiles/kiibohd.elf.dir/Scan/MD1/scan_loop.c.obj |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
495 [ 35%] Building C object CMakeFiles/kiibohd.elf.dir/Scan/MatrixARM/matrix_scan.c.obj |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
496 [ 41%] Building C object CMakeFiles/kiibohd.elf.dir/Macro/PartialMap/macro.c.obj |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
497 [ 47%] Building C object CMakeFiles/kiibohd.elf.dir/Output/pjrcUSB/output_com.c.obj |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
498 [ 52%] Building C object CMakeFiles/kiibohd.elf.dir/Output/pjrcUSB/arm/usb_desc.c.obj |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
499 [ 58%] Building C object CMakeFiles/kiibohd.elf.dir/Output/pjrcUSB/arm/usb_dev.c.obj |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
500 [ 64%] Building C object CMakeFiles/kiibohd.elf.dir/Output/pjrcUSB/arm/usb_keyboard.c.obj |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
501 [ 70%] Building C object CMakeFiles/kiibohd.elf.dir/Output/pjrcUSB/arm/usb_mem.c.obj |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
502 [ 76%] Building C object CMakeFiles/kiibohd.elf.dir/Output/pjrcUSB/arm/usb_serial.c.obj |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
503 [ 82%] Building C object CMakeFiles/kiibohd.elf.dir/Debug/cli/cli.c.obj |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
504 [ 88%] Building C object CMakeFiles/kiibohd.elf.dir/Debug/led/led.c.obj |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
505 [ 94%] Building C object CMakeFiles/kiibohd.elf.dir/Debug/print/print.c.obj |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
506 Linking C executable kiibohd.elf |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
507 [ 94%] Built target kiibohd.elf |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
508 Scanning dependencies of target SizeAfter |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
509 [100%] Chip usage for mk20dx128vlf5 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
510 SRAM: 32% 5384/16384 bytes |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
511 Flash: 18% 23296/126976 bytes |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
512 [100%] Built target SizeAfter |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
513 ``` |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
514 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
515 ### NOTES: |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
516 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
517 If you get the following error, you have not setup wincmake correctly: |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
518 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
519 ```bash |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
520 $ make |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
521 [ 5%] Generating KLL Layout |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
522 Scanning dependencies of target kiibohd.elf |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
523 [ 11%] Building C object CMakeFiles/kiibohd.elf.dir/main.c.o |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
524 ../main.c:28:19: fatal error: macro.h: No such file or directory |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
525 #include <macro.h> |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
526 ^ |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
527 compilation terminated. |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
528 CMakeFiles/kiibohd.elf.dir/build.make:67: recipe for target 'CMakeFiles/kiibohd.elf.dir/main.c.o' failed |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
529 make[2]: *** [CMakeFiles/kiibohd.elf.dir/main.c.o] Error 1 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
530 CMakeFiles/Makefile2:98: recipe for target 'CMakeFiles/kiibohd.elf.dir/all' failed |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
531 make[1]: *** [CMakeFiles/kiibohd.elf.dir/all] Error 2 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
532 Makefile:75: recipe for target 'all' failed |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
533 make: *** [all] Error 2 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
534 ``` |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
535 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
536 If you have already added the line to your `~/.bashrc` try restarting your |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
537 cygwin shell. |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
538 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
539 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
540 Windows Loading Firmware |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
541 ------------------------ |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
542 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
543 First place the keyboard into re-flash mode. This can be done either by |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
544 pressing the re-flash button on the PCB/Teensy. Or by entering the Kiibohd |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
545 Virtual Serial Interface and using the `reload` command. |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
546 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
547 The `load` script that is created during the build can load the firmware over |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
548 USB. |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
549 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
550 To load the newly built firmware: `./load` |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
551 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
552 Be patient the couple of times, Windows is slow at installing drivers... |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
553 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
554 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
555 Mac OS X Building |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
556 ----------------- |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
557 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
558 From this directory. |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
559 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
560 ```bash |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
561 $ mkdir build |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
562 $ cd build |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
563 $ cmake .. |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
564 $ make |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
565 ``` |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
566 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
567 Example output: |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
568 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
569 > TODO |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
570 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
571 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
572 Mac OS X Loading Firmware |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
573 ------------------------- |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
574 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
575 First place the keyboard into re-flash mode. This can be done either by |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
576 pressing the re-flash button on the PCB/Teensy. Or by entering the Kiibohd |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
577 Virtual Serial Port and using the `reload` command. |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
578 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
579 The `load` script that is created during the build can load the firmware over |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
580 USB. |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
581 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
582 To load the newly built firmware: `./load`. |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
583 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
584 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
585 Virtual Serial Port - CLI |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
586 ------------------------- |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
587 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
588 Rather than use a special program that can interpret Raw HID, this controller exposes a USB Serial CDC endpoint. |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
589 This allows for you to use a generic serial terminal to debug/control the keyboard firmware (e.g. Tera Term, minicom, screen) |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
590 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
591 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
592 ### Linux |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
593 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
594 I generally use screen. You will need sudo/root priviledges if you haven't |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
595 installed the `98-kiibohd.rules` file to `/etc/udev/rules.d`. |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
596 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
597 ``` |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
598 $ screen /dev/ttyACM0 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
599 # (Might be ACM1, ACM2, etc.) |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
600 ``` |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
601 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
602 ### Windows |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
603 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
604 Make sure the Teensy Virtual Serial Port driver is installed. If possible use |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
605 screen (as part of Cygwin). Check which COM port the virtual serial port has |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
606 been assigned to: `Device Manager->Ports (COM & LPT)->Teensy USB Serial`. In |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
607 brackets it will say which COM port (e.g. COM3) |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
608 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
609 putty works well when using DTR/DSR or RTS/CTS flow control. |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
610 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
611 | Setting | Value | |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
612 | --------------- | ------------------------------------- | |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
613 | Connection type | Serial | |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
614 | Serial line | Your COM port, e.g. COM3 | |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
615 | Speed | doesn't matter, it's auto-negotiated | |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
616 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
617 Under `Category->Connections->Serial`: `Flow control: DTR/DSR`. |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
618 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
619 If stuff is hard to read (you have a dumb colour scheme): |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
620 `Category->Window->Colours->Use system color`. That seems to make text at |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
621 least readable |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
622 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
623 > I use a custom colour scheme that makes each colour easy to see. |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
624 > -HaaTa. |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
625 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
626 Unfortunately, screen for Cygwin seems to be broken for serial ports, but you |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
627 can try it... |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
628 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
629 ```bash |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
630 $ screen /dev/ttyS2 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
631 # Might be a different file, ttyS0, ttyACM0, ttyUSB0, etc. |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
632 ``` |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
633 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
634 Gnu screen doesn't seem to echo all the characters (it works though). |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
635 I believe it's a problem with stty, but I don't know how to fix it... |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
636 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
637 ### Mac OS X |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
638 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
639 I recommend screen (can be installed via Macports). |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
640 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
641 ```bash |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
642 $ screen /dev/tty.<usb something> |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
643 ``` |