Mercurial > louis > kiibohd-controller
annotate README.markdown @ 286:65df0d7b0f88
Add instructions for using Homebrew
author | aclowes <aclowes@gmail.com> |
---|---|
date | Sat, 21 Feb 2015 15:45:12 -0500 |
parents | aabd00e4b17b |
children | 8c9e4b8a1999 |
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 |
286
65df0d7b0f88
Add instructions for using Homebrew
aclowes <aclowes@gmail.com>
parents:
277
diff
changeset
|
12 Building on Mac should be ok for 99% of users with Macports or Homebrew. For |
65df0d7b0f88
Add instructions for using Homebrew
aclowes <aclowes@gmail.com>
parents:
277
diff
changeset
|
13 Homebrew, use `brew tap PX4/homebrew-px4` to get the arm-none-eabi-gcc installer. |
65df0d7b0f88
Add instructions for using Homebrew
aclowes <aclowes@gmail.com>
parents:
277
diff
changeset
|
14 The dfu Bootloader will not build correctly with the old version of |
277
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
15 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
|
16 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
|
17 fit on the chip (must be less than 4096 Bytes). |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
18 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
19 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
|
20 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
|
21 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
|
22 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
|
23 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
|
24 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
|
25 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
|
26 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
|
27 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
|
28 **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
|
29 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
|
30 regarding spaces in paths. |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
31 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
32 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
|
33 product :D |
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 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
36 General Dependencies |
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 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
39 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
|
40 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
41 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
|
42 one: |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
43 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
44 - cmake (2.8 and higher) |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
45 - git |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
46 - ctags (recommended, not required) |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
47 - python3 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
48 - libusb1.0 (and -devel) |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
49 - make |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
50 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
51 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
|
52 versions below) |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
53 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
54 - avr-gcc (~4.8.0) |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
55 - avr-binutils (~2.23.2) |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
56 - avr-libc (~1.8.0) |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
57 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
58 ARM Specific (Teensy 3.0/3.1, Infinity Keyboard, McHCK) |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
59 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
60 - Arch Linux / Mac Ports |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
61 - arm-none-eabi-gcc |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
62 - arm-none-eaby-binutils |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
63 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
64 - Windows (https://launchpad.net/gcc-arm-embedded/+download) |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
65 - gcc-arm-none-eabi (win32.zip) |
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 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
68 Windows Setup |
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 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
71 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
|
72 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
73 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
|
74 is fine. Make sure the following are installed: |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
75 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
76 - make |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
77 - git (needed for some compilation info) |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
78 - cmake |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
79 - gcc-core |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
80 - gcc-g++ |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
81 - libusb1.0 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
82 - libusb1.0-devel |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
83 - python3 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
84 - ctags (recommended, not required) |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
85 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
86 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
|
87 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
|
88 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
89 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
|
90 (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
|
91 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
|
92 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
|
93 is correct: |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
94 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
95 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
|
96 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
97 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
|
98 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
99 Next, install the compiler(s) you want. |
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 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
102 ### AVR GCC |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
103 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
104 You just need the |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
105 [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
|
106 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
|
107 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
108 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
|
109 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
|
110 `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
|
111 faster/simpler. Might screw up your Cygwin though). |
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 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
114 ### ARM EABI |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
115 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
116 Download the latest |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
117 [GNU Tools for Embedded Processors |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
118 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
|
119 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
120 Download `gcc-arm-none-eabi*win32.zip`. |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
121 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
122 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
|
123 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
|
124 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
|
125 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
126 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
127 CMake Info |
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 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
130 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
|
131 configurations (for different microcontrollers) at the same time. The |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
132 following sections explain in detail what each CMakeLists.txt configuration |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
133 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
|
134 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
|
135 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
136 For example, to build the Infinity Keyboard default configuration: |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
137 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
138 ```bash |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
139 $ mkdir build_infinity |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
140 $ cd build_infinity |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
141 $ cmake -DCHIP=mk20dx128vlf5 -DScanModule=MD1 -DMacroModule=PartialMap \ |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
142 -DOutputModule=pjrcUSB -DDebugModule=full -DBaseMap=defaultMap \ |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
143 -DDefaultMap="md1Overlay stdFuncMap" -DPartialMaps="hhkbpro2" \ |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
144 .. |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
145 $ make |
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 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
148 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
|
149 the command line. |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
150 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
151 > 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
|
152 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
153 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
154 Selecting Microcontroller |
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 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
157 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
|
158 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
|
159 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
160 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
|
161 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
162 ```cmake |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
163 ### |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
164 # Chip Selection |
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 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
167 #| 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
|
168 #| 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
|
169 #| |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
170 set( CHIP |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
171 # "at90usb162" # Teensy 1.0 (avr) |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
172 # "atmega32u4" # Teensy 2.0 (avr) |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
173 # "at90usb646" # Teensy++ 1.0 (avr) |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
174 # "at90usb1286" # Teensy++ 2.0 (avr) |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
175 # "mk20dx128" # Teensy 3.0 (arm) |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
176 "mk20dx128vlf5" # McHCK mk20dx128vlf5 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
177 # "mk20dx256" # Teensy 3.1 (arm) |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
178 CACHE STRING "Microcontroller Chip" ) |
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 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
181 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
|
182 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
183 > 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
|
184 > directory that is created in the Building sections below. |
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 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
187 Selecting Modules |
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 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
190 > 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
|
191 > dependencies on other modules. |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
192 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
193 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
|
194 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
|
195 functionality: |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
196 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
197 - Scan Module |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
198 - Macro Module |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
199 - Output Module |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
200 - Debug Module |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
201 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
202 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
|
203 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
|
204 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
|
205 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
|
206 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
|
207 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
|
208 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
|
209 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
|
210 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
211 Some scan modules have very specialized hardware requirements, each module |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
212 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
|
213 (TODO!). |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
214 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
215 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
|
216 an Output (USB) scan code. Any layering, macros, keypress |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
217 intelligence/reaction is done here. |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
218 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
219 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
|
220 Currently USB is the only output protocol. Different USB output |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
221 implementations are available, pjrc being the safest/least featureful one. |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
222 Debug capabilities may depend on the module selected. |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
223 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
224 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
|
225 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
|
226 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
227 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
|
228 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
229 ```cmake |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
230 ### |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
231 # Project Modules |
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 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
234 #| 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
|
235 #| 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
|
236 #| 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
|
237 #| 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
|
238 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
239 #| 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
|
240 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
241 ##| 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
|
242 set( ScanModule "MD1" |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
243 CACHE STRING "Scan Module" ) |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
244 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
245 ##| 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
|
246 set( MacroModule "PartialMap" |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
247 CACHE STRING "Macro Module" ) |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
248 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
249 ##| 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
|
250 set( OutputModule "pjrcUSB" |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
251 CACHE STRING "Output Module" ) |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
252 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
253 ##| 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
|
254 set( DebugModule "full" |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
255 CACHE STRING "Debug Module" ) |
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 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
258 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
|
259 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
|
260 be tested/compile. |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
261 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
262 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
|
263 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
|
264 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
265 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
266 Linux Building |
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 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
269 From this directory. |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
270 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
271 ```bash |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
272 $ mkdir build |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
273 $ cd build |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
274 $ cmake .. |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
275 $ make |
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 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
278 Example output: |
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 ``` |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
281 $ cmake .. |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
282 -- Compiler Family: |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
283 arm |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
284 -- Chip Selected: |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
285 mk20dx128vlf5 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
286 -- Chip Family: |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
287 mk20dx |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
288 -- CPU Selected: |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
289 cortex-m4 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
290 -- Compiler Source Files: |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
291 Lib/mk20dx.c;Lib/delay.c |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
292 -- Bootloader Type: |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
293 dfu |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
294 -- Detected Scan Module Source Files: |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
295 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
|
296 -- Detected Macro Module Source Files: |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
297 Macro/PartialMap/macro.c |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
298 -- Detected Output Module Source Files: |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
299 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
|
300 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
|
301 -- Detected Debug Module Source Files: |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
302 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
|
303 -- Found Git: /usr/bin/git (found version "2.2.1") |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
304 -- Found Ctags: /usr/bin/ctags (found version "5.8") |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
305 -- Checking for latest kll version: |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
306 Current branch master is up to date. |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
307 -- Detected Layout Files: |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
308 /home/hyatt/Source/controller/Macro/PartialMap/capabilities.kll |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
309 /home/hyatt/Source/controller/Output/pjrcUSB/capabilities.kll |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
310 /home/hyatt/Source/controller/Scan/MD1/defaultMap.kll |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
311 /home/hyatt/Source/controller/kll/layouts/md1Overlay.kll |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
312 /home/hyatt/Source/controller/kll/layouts/stdFuncMap.kll |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
313 /home/hyatt/Source/controller/kll/layouts/hhkbpro2.kll |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
314 -- Configuring done |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
315 -- Generating done |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
316 -- 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
|
317 [master]: make [~/Source/controller/build](hyatt@x230mas:pts/6) |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
318 [ 5%] Generating KLL Layout |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
319 Scanning dependencies of target kiibohd.elf |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
320 [ 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
|
321 [ 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
|
322 [ 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
|
323 [ 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
|
324 [ 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
|
325 [ 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
|
326 [ 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
|
327 [ 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
|
328 [ 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
|
329 [ 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
|
330 [ 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
|
331 [ 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
|
332 [ 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
|
333 [ 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
|
334 [ 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
|
335 Linking C executable kiibohd.elf |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
336 [ 94%] Built target kiibohd.elf |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
337 Scanning dependencies of target SizeAfter |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
338 [100%] Chip usage for mk20dx128vlf5 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
339 SRAM: 32% 5384/16384 bytes |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
340 Flash: 18% 23384/126976 bytes |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
341 [100%] Built target SizeAfter |
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 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
344 Linux Loading Firmware |
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 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
347 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
|
348 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
|
349 Virtual Serial Port and using the 'reload' command. |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
350 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
351 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
|
352 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
|
353 `/etc/udev/rules.d` and run: `udevadm control --reload-rules`. |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
354 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
355 To load the newly built firmware: `./load`. |
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 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
358 Linux Building Bootloader |
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 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
361 > NOTE: Does not apply to Teensy based builds. |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
362 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
363 From this directory. |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
364 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
365 ```bash |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
366 $ cd Bootloader |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
367 $ mkdir build |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
368 $ cd build |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
369 $ cmake .. |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
370 $ make |
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 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
373 Example output: |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
374 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
375 ```bash |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
376 $ cmake .. |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
377 -- Compiler Family: |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
378 arm |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
379 -- Chip Selected: |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
380 mk20dx128vlf5 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
381 -- Chip Family: |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
382 mk20dx |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
383 -- CPU Selected: |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
384 cortex-m4 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
385 -- Compiler Source Files: |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
386 Lib/mk20dx.c;Lib/delay.c |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
387 -- Bootloader Type: |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
388 dfu |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
389 -- Bootloader Source Files: |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
390 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
|
391 -- Found Git: /usr/bin/git (found version "2.2.1") |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
392 -- Found Ctags: /usr/bin/ctags (found version "5.8") |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
393 -- Configuring done |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
394 -- Generating done |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
395 -- 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
|
396 [master]: make [~/Source/controller/Bootloader/build](hyatt@x230mas:pts/6) |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
397 Scanning dependencies of target kiibohd_bootloader.elf |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
398 [ 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
|
399 [ 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
|
400 [ 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
|
401 [ 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
|
402 [ 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
|
403 [ 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
|
404 [ 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
|
405 [ 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
|
406 Linking C executable kiibohd_bootloader.elf |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
407 [ 88%] Built target kiibohd_bootloader.elf |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
408 Scanning dependencies of target SizeAfter |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
409 [100%] Chip usage for mk20dx128vlf5 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
410 SRAM: 19% 3176/16384 bytes |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
411 Flash: 2% 3736/126976 bytes |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
412 [100%] Built target SizeAfter |
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 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
416 Linux Loading Bootloader |
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 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
419 > NOTE: Does not apply to Teensy based builds. |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
420 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
421 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
|
422 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
|
423 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
424 ```bash |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
425 $ cd Bootloader/Scripts |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
426 $ ./swdLoad.bash |
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 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
429 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
|
430 `/dev/buspirate` udev rule. |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
431 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
432 Additional Notes: |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
433 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
434 * 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
|
435 * https://wiki.archlinux.org/index.php/Bus_pirate |
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 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
438 Windows Building |
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 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
441 From this directory. |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
442 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
443 ```bash |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
444 $ mkdir build |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
445 $ cd build |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
446 $ wincmake .. |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
447 $ make |
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 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
450 Example output: |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
451 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
452 ```bash |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
453 $ wincmake .. |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
454 -- Compiler Family: |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
455 arm |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
456 -- Chip Selected: |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
457 mk20dx128vlf5 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
458 -- Chip Family: |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
459 mk20dx |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
460 -- CPU Selected: |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
461 cortex-m4 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
462 -- Compiler Source Files: |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
463 Lib/mk20dx.c;Lib/delay.c |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
464 -- Bootloader Type: |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
465 dfu |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
466 -- Detected Scan Module Source Files: |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
467 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
|
468 -- Detected Macro Module Source Files: |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
469 Macro/PartialMap/macro.c |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
470 -- Detected Output Module Source Files: |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
471 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
|
472 -- Detected Debug Module Source Files: |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
473 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
|
474 -- 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
|
475 -- 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
|
476 -- Checking for latest kll version: |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
477 Current branch master is up to date. |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
478 -- Detected Layout Files: |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
479 C:/cygwin64/home/Jacob/controller/Macro/PartialMap/capabilities.kll |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
480 C:/cygwin64/home/Jacob/controller/Output/pjrcUSB/capabilities.kll |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
481 C:/cygwin64/home/Jacob/controller/Scan/MD1/defaultMap.kll |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
482 C:/cygwin64/home/Jacob/controller/kll/layouts/md1Overlay.kll |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
483 C:/cygwin64/home/Jacob/controller/kll/layouts/stdFuncMap.kll |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
484 C:/cygwin64/home/Jacob/controller/kll/layouts/hhkbpro2.kll |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
485 -- Configuring done |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
486 -- Generating done |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
487 -- 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
|
488 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
489 $ make |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
490 [ 5%] Generating KLL Layout |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
491 Scanning dependencies of target kiibohd.elf |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
492 [ 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
|
493 [ 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
|
494 [ 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
|
495 [ 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
|
496 [ 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
|
497 [ 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
|
498 [ 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
|
499 [ 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
|
500 [ 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
|
501 [ 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
|
502 [ 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
|
503 [ 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
|
504 [ 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
|
505 [ 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
|
506 [ 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
|
507 Linking C executable kiibohd.elf |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
508 [ 94%] Built target kiibohd.elf |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
509 Scanning dependencies of target SizeAfter |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
510 [100%] Chip usage for mk20dx128vlf5 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
511 SRAM: 32% 5384/16384 bytes |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
512 Flash: 18% 23296/126976 bytes |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
513 [100%] Built target SizeAfter |
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 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
516 ### NOTES: |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
517 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
518 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
|
519 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
520 ```bash |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
521 $ make |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
522 [ 5%] Generating KLL Layout |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
523 Scanning dependencies of target kiibohd.elf |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
524 [ 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
|
525 ../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
|
526 #include <macro.h> |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
527 ^ |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
528 compilation terminated. |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
529 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
|
530 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
|
531 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
|
532 make[1]: *** [CMakeFiles/kiibohd.elf.dir/all] Error 2 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
533 Makefile:75: recipe for target 'all' failed |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
534 make: *** [all] Error 2 |
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 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
537 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
|
538 cygwin shell. |
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 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
541 Windows Loading Firmware |
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 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
544 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
|
545 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
|
546 Virtual Serial Interface and using the `reload` command. |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
547 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
548 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
|
549 USB. |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
550 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
551 To load the newly built firmware: `./load` |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
552 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
553 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
|
554 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
555 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
556 Mac OS X Building |
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 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
559 From this directory. |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
560 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
561 ```bash |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
562 $ mkdir build |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
563 $ cd build |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
564 $ cmake .. |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
565 $ make |
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 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
568 Example output: |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
569 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
570 > TODO |
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 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
573 Mac OS X Loading Firmware |
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 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
576 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
|
577 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
|
578 Virtual Serial Port and using the `reload` command. |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
579 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
580 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
|
581 USB. |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
582 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
583 To load the newly built firmware: `./load`. |
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 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
586 Virtual Serial Port - CLI |
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 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
589 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
|
590 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
|
591 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
592 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
593 ### Linux |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
594 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
595 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
|
596 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
|
597 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
598 ``` |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
599 $ screen /dev/ttyACM0 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
600 # (Might be ACM1, ACM2, etc.) |
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 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
603 ### Windows |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
604 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
605 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
|
606 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
|
607 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
|
608 brackets it will say which COM port (e.g. COM3) |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
609 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
610 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
|
611 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
612 | Setting | Value | |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
613 | --------------- | ------------------------------------- | |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
614 | Connection type | Serial | |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
615 | Serial line | Your COM port, e.g. COM3 | |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
616 | Speed | doesn't matter, it's auto-negotiated | |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
617 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
618 Under `Category->Connections->Serial`: `Flow control: DTR/DSR`. |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
619 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
620 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
|
621 `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
|
622 least readable |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
623 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
624 > 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
|
625 > -HaaTa. |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
626 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
627 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
|
628 can try it... |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
629 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
630 ```bash |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
631 $ screen /dev/ttyS2 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
632 # Might be a different file, ttyS0, ttyACM0, ttyUSB0, etc. |
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 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
635 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
|
636 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
|
637 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
638 ### Mac OS X |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
639 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
640 I recommend screen (can be installed via Macports). |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
641 |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
642 ```bash |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
643 $ screen /dev/tty.<usb something> |
aabd00e4b17b
Convert README to Markdown format.
Mike Cooper <mythmon@gmail.com>
parents:
diff
changeset
|
644 ``` |