Commit Graph

21 Commits

Author SHA1 Message Date
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