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