Commit Graph

23 Commits

Author SHA1 Message Date
Josh Klar
d379acfc97 Support ItsyBitsy M4 Express as an effective clone of the Feather M4 Express with less pins. Because that's what it is. 2018-10-07 00:45:34 -07:00
Josh Klar
e11934ab2d Able to build a VERY basic KMK image for Feather M4 Express, flashable over UF2 only 2018-10-07 00:45:30 -07:00
Josh Klar
184e4d5f98 Improve Makefile: Stop clobbering /vendor, detect submodule changes more intelligently 2018-10-05 15:31:00 -07:00
Josh Klar
1ed2be66e6 Load KMK from frozen modules on STM32 (no more ampy-flashed entrypoints) 2018-10-01 22:14:55 -07:00
Kyle Brown
b3469d9fb2 Most changes requested were done, and other general improvements. 2018-09-28 20:20:10 -07:00
Kyle Brown
97f70d7a13 Clean up pyboard and add 2 utilities 2018-09-28 20:20:10 -07:00
Josh Klar
c39c91af12 Remove useless crap from Makefile 2018-09-23 04:51:27 -07:00
Josh Klar
32dd2cecc4 Run the keymap tester on board builds usually 2018-09-23 03:12:31 -07:00
Josh Klar
94130740c4 Write a basic keymap sanity checker utility 2018-09-23 03:03:49 -07:00
Josh Klar
91c6a2128e Build the Unix port of MicroPython so we can sanity-check layouts using the actual target Python, rather than CPython with all its niceties 2018-09-23 03:03:48 -07:00
Josh Klar
97091ff4fd Make user keymaps fully declarative
This removes the need for the user to define... most things, honestly.
Notably, `main()` is no longer the end user's responsibility. This also
allows us to do fun stuff going forward like validating keymaps for
sanity (ex: the key assigned to `KC_MO(x)` should be assigned to
`KC_TRNS` on the target layer or the user will never be able to escape
that layer).

This also disambiguates `BOARD` to always refer to an actual slab of
silicon, renaming to `USER_KEYMAP`.

Entrypoints are now a bit more wild, and mostly-unsupported boards no
longer have working entrypoints. It's probably just time to scrap those
boards for now (until we have BLE HID and/or bitbang USB HID, at least).
2018-09-23 03:03:47 -07:00
Josh Klar
8a55dcca04 Helper makefile task to autofix some linter noise 2018-09-23 00:13:31 -07:00
Josh Klar
904e7641e7 CircleCI: Ensure all boards can at least compile a hex on each commit 2018-09-17 15:30:31 -07:00
Josh Klar
88807837d5 Misc. cleanup around the tree 2018-09-16 20:50:05 -07:00
Josh Klar
f5fc555ac5 Support the PyBoard v1.1 as much as the Feather was, at least 2018-09-16 00:17:30 -07:00
Kyle Brown
e26997d815 Fixed environment variables for ARDUINO. Added default, but will be overridden if set by the user 2018-09-03 17:32:42 -07:00
Kyle Brown
b69fed1199 Teensy 3.1 support 2018-09-03 17:32:42 -07:00
Josh Klar
cb923096b6 Clean up NRF builds big time 2018-09-03 13:51:04 -07:00
Josh Klar
d5de2601d9 Prepare things for the event loop, also abstract gross stuff from end users 2018-09-03 03:22:11 -07:00
Josh Klar
4ea5fcd004 Make builds a bit more robust and reusable
- Lock our vendored dependencies (also pull in some new ones I will be
needing soon)

- Ensure we have a sane way of pulling those vendored dependencies into
the DFU-flashable images (upy-freeze.txt)

- Break up the Makefile into a bunch of smaller, sometimes reusable
chunks

- Add a noop keyboard that simply exits, so we can flash a "keyboard"
that just dumps us straight to REPL

- Remove my personal ampy config since that's not portable at all
2018-09-03 01:23:15 -07:00
Josh Klar
4295267b44 If the entrypoint is already what I want it to be, ignore error states 2018-09-02 23:43:30 -07:00
Josh Klar
e4b19de009 Escape hatches: flash the user keyboard script as part of DFU rather than pushing with ampy. WAY more stable, mostly unbrickable now 2018-09-02 23:39:55 -07:00
Josh Klar
e9d448af44 A basic 2x2 matrix that can auto-flash to a Feather with a compatible bootloader 2018-09-02 20:07:07 -07:00