|
|
3 years ago | |
|---|---|---|
| .. | ||
| lufa_utils | 9366ed7282 Normalise include statements in keyboard code (#11185) | 5 years ago |
| CMakeLists.txt | 5dd8efc7c0 chibios compiling, layout keymaps | 3 years ago |
| README.md | 4d4f7684e6 Add ChibiOS support for QMK (#465) | 10 years ago |
| chibios.c | 6dbbeea46a Refactor `send_extra` (#18615) | 3 years ago |
| init_hooks.h | 05e9ff6554 Add support for hardware and board initialisation overrides. (#8330) | 6 years ago |
| usb_driver.c | 4d107feca9 Check for ongoing transfers on the OUT endpoint (#16974) | 4 years ago |
| usb_driver.h | 1d1d5da43f Change include guards in tmk_core/ and drivers/ to pragma once (#11240) | 5 years ago |
| usb_main.c | 7acc3f4449 ChibiOS: Consolidate report sending code (#19607) | 3 years ago |
| usb_main.h | f99b9ba270 Widen the ARM Cortex-M family support. Allow USB peripheral change. (#18767) | 3 years ago |
| usb_util.c | f99b9ba270 Widen the ARM Cortex-M family support. Allow USB peripheral change. (#18767) | 3 years ago |
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.