Commit graph

28 commits

Author SHA1 Message Date
Pete Johanson
39f980a06d feat(bluetooth): Add back profiles, split fixes.
* Add back in profiles, not using Zephyr
  BT identity infrastructure.
* Restore additional `&bt` commands for profile
  operations.
* Fix for split pairing and subscriptions, since
  Zephyr persists subscriptions across connects.
* Remove keymap from peripheral builds, reduces
  firmware size, and avoids unneeded attempts
  to send HID data.
2020-09-13 22:33:29 -04:00
Pete Johanson
13842a8a1e fix(bluetooth): Kconfig to clear bonds on start 2020-09-13 22:33:05 -04:00
Pete Johanson
fc0812bd2e fix(bluetooth): Remove identity, minimal bt.
* Simplify the `bt` behavior to one current command
  `BT_CLEAR_BONDS_CMD`.
* Simplify BLE code for split and non-split keyboards.
* Remove keymap processing from split peripheral side.
2020-09-13 22:33:05 -04:00
Pete Johanson
a4d06f69ac fix(bluetooth): Fix max pair settings for non-split. 2020-09-13 22:33:05 -04:00
Pete Johanson
cf970efb98 feat(bluetooth): Proper bond management, identity support for non-splits
* Add `bt` behavior that can be used to perform certain actions,
  such as next/prev identity, reset identity, etc.
  NOTE: Multiple identities is only supported for non-split shields,
  due to missing Zephyr identity functionality for dual
  central/peripheral devices.
* Proper bond reset tied to action, that honors peripheral bonds,
  so folks can reset and pair to other hosts, without breaking
  bonds between splt halves.
2020-09-13 22:33:05 -04:00
Pete Johanson
9730876393 fix(shields): Load Kconfig for out-of-tree shields 2020-08-20 11:38:36 -04:00
Pete Johanson
fb3dadba87
fix(bluetooth): disable BT_SETTINGS for now. 2020-08-20 07:39:14 -04:00
Pete Johanson
a65b746a86 fix(bluetooth): Add unpair combo if DT node exists 2020-08-19 23:34:34 -04:00
Pete Johanson
4402e4fbc7 feeature(bt): Add "unpair combo" on startup.
* Especially for splits, we need the ability to
  unpair all paired devices as  sledgehammer
  if we need to "reset things", and doing so via
  keymaps isn't suitable.
* Allows shields to define a collection of key
  positions that if all held 2 seconds after
  startup, will unpair all existing pairs for the
  device.
2020-08-18 13:17:10 -04:00
Nick
087574f607 Create proper fix for split default conn bug 2020-08-16 15:36:43 -05:00
Pete Johanson
8b61beb2bb Bump max paired connections to 2 for central. 2020-08-14 16:44:13 -04:00
Nick
f26bd495ea Fix interval update, add PHY update 2020-08-02 14:51:42 -05:00
Pete Johanson
f548f2a87c Initial stab at mod-tap improvements.
* Not working: Roll over + mod-tap with multiple
  mod-tap bindings!
2020-07-31 00:07:16 -04:00
Pete Johanson
4e5a819f3a
Merge pull request #64 from Nicell/feature/rgb_underglow
Initial RGB Underglow implementation
2020-07-26 21:43:43 -04:00
Pete Johanson
d80063ff51 Initial display support. 2020-07-25 23:10:40 -04:00
Pete Johanson
91d8237cab Fixes for building with a different .conf file. 2020-07-25 00:50:42 -04:00
Nick
bb09707bd2 Add base files and configuration for RGB underglow 2020-07-24 01:06:56 -05:00
Pete Johanson
1951883def Bump max BT connections for testing. 2020-07-17 23:04:47 -04:00
Pete Johanson
339a15881a Tweaks for turning off USB for split peripherals. 2020-07-17 22:43:40 -04:00
Pete Johanson
6701b7babc Working BT settings. 2020-07-17 22:43:40 -04:00
Pete Johanson
d4afd989f3 More split implementation.
* Propogate key position state changes on central.
* Various BLE tweaks.
2020-07-17 22:43:40 -04:00
Pete Johanson
d74efb331a Kconfig fixes for split roles. 2020-07-17 22:43:40 -04:00
Pete Johanson
be537d0656 Lots of work on split peripheral/central logic. 2020-07-17 22:43:40 -04:00
Pete Johanson
3796f76c56 Initial exploration of split BLE service.
* Service for split peripheral to report
  position state to split central.
* Updated advertising info.
* Behavior for split BT until we have a proper
  event system.
2020-07-17 22:43:40 -04:00
Pete Johanson
4ab6132f70 Bump the default USB EP write retries. 2020-07-14 10:12:25 -04:00
Pete Johanson
7c5fb7adb5 Use SYS_INIT for BLE and USB init. 2020-07-07 10:20:23 -04:00
Pete Johanson
9a991bf019 Initial event manager work, and two first events.
* Add initial event manager implementation,
  roughly mimicking Nordic's API.
* Add `position_state_changed` and
  `keycode_state_changed` events.
* Hook up HID and keymap to new events
  instead of using behaviour global event
  crazy.
2020-06-30 00:31:09 -04:00
Pete Johanson
38f1dbd984 Move Zephyr app into subdirectory. 2020-06-08 21:07:16 -04:00
Renamed from Kconfig (Browse further)