|
%!s(int64=2) %!d(string=hai) anos | |
---|---|---|
.. | ||
lufa_utils | %!s(int64=4) %!d(string=hai) anos | |
README.md | %!s(int64=9) %!d(string=hai) anos | |
chibios.c | %!s(int64=2) %!d(string=hai) anos | |
init_hooks.h | %!s(int64=5) %!d(string=hai) anos | |
usb_driver.c | %!s(int64=3) %!d(string=hai) anos | |
usb_driver.h | %!s(int64=4) %!d(string=hai) anos | |
usb_main.c | %!s(int64=2) %!d(string=hai) anos | |
usb_main.h | %!s(int64=2) %!d(string=hai) anos | |
usb_util.c | %!s(int64=2) %!d(string=hai) anos |
This code can be used to run TMK keyboard logic on top of ChibiOS, meaning that you can run TMK on whatever ChibiOS supports. The notable examples are ARM-based Teensies (3.x and LC) and on the boards with STM32 MCUs.
tmk_core/tool/chibios/chibios
; or you can just clone the repo there. For Freescale/NXP Kinetis support (meaning ARM Teensies and the Infinity keyboard), you'll also need a zip of chibios-contrib, unpacked/renamed to tmk_core/tool/chibios/chibios-contrib
. Likewise, for git-savvy people, just clone the repo there.CHIBIOS
and CHIBIOS_CONTRIB
variables in your Makefile
.gcc-arm
or something similar). On OS X, you can use homebrew with an appropriate tap.tmk_core/tool/chibios/chibios.mk
. For instance, I enabled -Wno-missing-field-initializers
, because TMK common bits generated a lot of warnings on that.-O0
to OPT_DEFS
in your Makefile
.config.h
are ugly as heck.main.c
, it will run independently of the keyboard business.Makefile
, or better, define it in <your_kb>/bootloader_defs.h
. An additional startup code is also needed; the best way to deal with this is to define custom board files. (Example forthcoming.) In any case, there are no problems for Teensies.