- git (needed for some compilation info)
- cmake
- gcc-core
+- gcc-g++
- libusb1.0
- libusb1.0-devel
+Please note, I use cygwin term exclusively for any command line options. Unless mentioned otherwise use it.
+Do NOT use CMD or Powershell.
+
Also install the Windows version of CMake - http://cmake.org/cmake/resources/software.html
This is in addition to the Cygwin version. This is an easier alternative to installing another C compiler.
Add the following line to your .bashrc, making sure the CMake path is correct:
- alias wincmake="PATH='/cygdrive/c/Program Files (x86)/CMake 2.8'/bin:\"${PATH}\" cmake"
+ echo "alias wincmake=\"PATH='/cygdrive/c/Program Files (x86)/CMake 2.8'/bin:\"${PATH}\" cmake" >> ~/.bashrc
+
+Install the PJRC Virtual Serial Port Driver:
+(http://pjrc.com/teensy/serial_install.exe)
Next, install the compiler(s) you want.
http://www.mentor.com/embedded-software/sourcery-tools/sourcery-codebench/editions/lite-edition/
+Look for "Download the EABI Release".
+Enter your info to get the download link.
+Select the most recent download.
+Then download the "IA32 Windows Installer".
+
Use the installer and make sure you add the binaries to your path within the installer.
Linux Loading Firmware
----------------------
+First place the keyboard into re-flash mode.
+This can be done either by pressing the re-flash button on the PCB/Teensy.
+Or by entering the Kiibohd Virtual Serial Port and using the 'reload' command.
+
The 'load' script that is created during the build can load the firmware over USB.
-It uses sudo, so make sure you have the priviledges.
+Either run it with sudo, or install the 98-kiibohd.rules to /etc/udev/rules.d
+ and run: udevadm control --reload-rules
+
+To load the newly built firmware:
./load
mkdir build
cd build
wincmake -G "Unix Makefiles" ..
+make
Example output:
Windows Loading Firmware
----------------------
-TODO
+First place the keyboard into re-flash mode.
+This can be done either by pressing the re-flash button on the PCB/Teensy.
+Or by entering the Kiibohd Virtual Serial Interface and using the 'reload' command.
+
+The 'load' script that is created during the build can load the firmware over USB.
+
+To load the newly built firmware:
+./load
+
+Be patient the couple of times, Windows is slow at installing drivers...
+
+
----------------------
Mac OS X Building
TODO
+
+
----------------------
Mac OS X Loading Firmware
----------------------
TODO
+
----------------------
Virtual Serial Port - CLI
----------------------
Rather than use a special program that can interpret Raw HID, this controller exposes a USB Serial CDC endpoint.
This allows for you to use a generic serial terminal to debug/control the keyboard firmware (e.g. Tera Term, minicom, screen)
+
-------
| Linux |
-------
I generally use screen.
+You will need sudo/root priviledges if you haven't installed the 98-kiibohd.rules file to /etc/udev/rules.d
-sudo screen /dev/ttyACM0
+screen /dev/ttyACM0
+(Might be ACM1, ACM2, etc.)
---------
| Windows |
---------
-TODO Probably COM1, but not exactly sure. Tera Term.
+Make sure the Teensy Virtual Serial Port driver is installed.
+If possible use screen (as part of Cygwin).
+
+screen /dev/ttyS3
+(Might be a different file, ttyS0, ttyACM0, ttyUSB0, etc.)
+
+Gnu screen doesn't seem to echo all the characters (it works though).
+I believe it's a problem with stty, but I don't know how to fix it...
+
+putty works well when using DTR/DSR or RTS/CTS flow control.
----------