Commit graph

1691 commits

Author SHA1 Message Date
Joel Spadin
600bba25f0 feat(endpoints): add preferred endpoint setting
Added a new setting to remember the user's preferred endpoint. When both USB and
BLE are connected, the preferred endpoint will be used.

Added a new behavior to control this setting. It supports commands:

    &end END_USB - Prefer USB output
    &end END_BLE - Prefer BLE output
    &end END_TOG - Toggle between USB and BLE
2020-10-28 18:15:05 -05:00
Joel Spadin
b538e60532 feat(endpoints): update on BLE profile change
Added zmk_ble_active_profile_is_connected() to allow code outside ble.c to check
the status of the active profile, and changed the ble_active_profile_changed
event to also notify when the active profile connects or disconnects.

Changed endpoint selection to to also update when the active profile changes,
connects, or disconnects.
2020-10-28 18:15:05 -05:00
Joel Spadin
8f666cecc9 feat(endpoints): clear HID report on endpoint change
This prevents stuck keys when switching endpoints by clearing
everything in the HID report and sending one last report before
switching to the new endpoint.
2020-10-28 18:15:05 -05:00
Joel Spadin
1d369ffa73 feat: only send HID reports to one endpoint
Added some utility functions and an event for tracking the state of the
USB connection.

Updated endpoints.c to select a single endpoint to send HID reports to
based on the status of the USB and BLE connections. Partially fixes #206.

Future commits will add a user setting to control which endpoint is used if
both USB and BLE are ready.
2020-10-28 18:15:05 -05:00
Pete Johanson
dfb69d8727
Merge pull request #309 from innovaker/netlify-node-version
docs: Set netlify node version to lts/*
2020-10-28 18:41:06 -04:00
Carey
c5172e4337 move initialization priorities to advanced menu 2020-10-28 07:47:22 -05:00
Carey
99ad9cbdef Merge https://github.com/zmkfirmware/zmk into refactor_kconfig 2020-10-28 07:40:54 -05:00
Pete Johanson
cb922fd8a2 feat(docs): Add Boardsource 3x4 to hardware list. 2020-10-27 23:32:44 -04:00
Pete Johanson
73c83e81ce
Merge pull request #296 from neegool/add_boardsource3x4
Add Boardsource 3x4 shield
2020-10-27 23:24:10 -04:00
innovaker
c402e953f6 feat(hid): Make keypad report boot friendly
Add missing byte to make keypad report boot friendly.
2020-10-27 22:55:40 +00:00
Nigel Rodriguez
75b7f2a7c5 Remove bt unpair combo + fix keymap 2020-10-28 06:55:00 +08:00
innovaker
8ce7d8de01 refactor(hid): Refactor consumer report to a configurable size 2020-10-27 22:36:26 +00:00
innovaker
f4596fc784 refactor(hid): Refactor keypad report to use a configurable integer array
Replace NKRO bit array with configurable integer (DV) array.
2020-10-27 22:36:26 +00:00
Pete Johanson
f3153b17d2
Merge pull request #292 from nullbitsco/nullbitsco_nibble
Add zmk_kscan_gpio_demux kscan driver & NIBBLE keyboard
2020-10-27 15:57:28 -04:00
Jay Greco
8a98212a02 Update demux kscan driver as per PR feedback
- Remove kscan_gpio_irq_callback
- Remove kscan_gpio_irq_callback_handler
- Remove irq_callbacks
+ Add TODO noting timer and sleep state interactions
2020-10-27 12:44:59 -07:00
Jay Greco
1a6fe846e4 Update NIBBLE keyboard name as per PR feedback
- Revert accidental VS code settings change
2020-10-27 12:44:59 -07:00
Jay Greco
d90592aac5 Add NIBBLE shield
+ Added required files for nullbits NIBBLE
2020-10-27 12:44:59 -07:00
Jay Greco
1522c91d73 Add new kscan_gpio_demux driver
+ zmk,kscan_gpio_demux is now a compatible kscan option
+ kscan_gpio_demux is based heavily off of the implementation of
kscan_gpio_matrix, modified to address cols using an n-to-1
demultiplexer chip instead of discrete IO
+ Added zmk,kscan_gpio_demux.yaml file
* modified CMakeLists to include new source files
2020-10-27 18:58:58 +00:00
Pete Johanson
3b9caaaf90
Merge pull request #304 from petejohanson/docs/cc-license-details
Explicitly license documentation as CC-BY-NC-SA.
2020-10-27 14:10:47 -04:00
Pete Johanson
2f09957ae2
Merge pull request #301 from innovaker/docs-eslint-prettier
docs: Add eslint, prettier and eslint-mdx support
2020-10-27 12:56:44 -04:00
Pete Johanson
c707ab45ef
Merge pull request #297 from Nicell/boards/reviung41
Add Reviung41 Shield Definitions
2020-10-27 00:27:17 -04:00
Pete Johanson
07cf103747
Merge pull request #303 from innovaker/kscan-mock-32
feat(kscan_mock): Increase max number of events
2020-10-27 00:03:23 -04:00
Pete Johanson
7aca8c3d35
Merge pull request #263 from joelspadin/nested-zmk-config
fix: allow nested zmk-config for dev container
2020-10-26 23:46:53 -04:00
Pete Johanson
571d045c75 fix(docs): Explicit CC-BY-NC-SA license for docs. 2020-10-26 23:15:48 -04:00
Pete Johanson
2c9737ad14 fix: Typo in the toplevel README. 2020-10-26 23:14:34 -04:00
Pete Johanson
8c6862f4ba
Merge pull request #293 from Nicell/bluetooth/battery-reporting
Add Battery Voltage Divider Driver
2020-10-26 22:56:54 -04:00
Pete Johanson
85d1a10490
Merge pull request #302 from innovaker/docs-docusaurus-scripts
docs: Add missing docusaurus scripts
2020-10-26 22:50:20 -04:00
innovaker
806ea545f8 docs: Set netlify node version to lts/*
Prerequisite of #218 and PR #308.
2020-10-26 22:55:15 +00:00
Nick
a008731103 Implement Kconfig and enhance error checks 2020-10-26 16:01:57 -05:00
Nick
1ac78498eb docs: Set prettier endOfLine to auto
As discussed in PR #301.
2020-10-26 05:28:31 +00:00
Pete Johanson
b1bfff5b5a
Merge pull request #264 from careyk007/setup_sh__curl_always_required
Add support for wget to setup.sh
2020-10-25 23:39:47 -04:00
Nick
fd892d53cd fix: eslint proptype errors 2020-10-25 23:45:28 +00:00
innovaker
288e60ea97 docs: Format docs with prettier
npx prettier --write .
2020-10-25 21:25:08 +00:00
innovaker
aefcc592f2 docs: Add eslint-mdx support
Official guidelines:
https://github.com/mdx-js/eslint-mdx

Steps taken:
npm i -D eslint-plugin-mdx
Edit .eslintrc.js
2020-10-25 21:25:01 +00:00
innovaker
18d4d619e4 docs: Add prettier support
Official guidelines:
https://prettier.io/docs/en/install.html
https://prettier.io/docs/en/integrating-with-linters.html
https://github.com/prettier/eslint-config-prettier

Steps taken:
npm install --save-dev --save-exact prettier
Create .prettierignore
Create .prettierrc.js
npm install --save-dev eslint-config-prettier
Edit .eslintrc.js
2020-10-25 21:24:55 +00:00
innovaker
ab65bf49db docs: Add eslint support
Official guidelines:
https://eslint.org/docs/user-guide/getting-started

Steps taken:
npm install eslint --save-dev
npx eslint --init
Create .eslintignore
Edit .eslintrc.js (tweaks)
2020-10-25 21:23:16 +00:00
innovaker
9c4b766bc6 feat(kscan_mock): Increase max number of events
This is necessary for testing a large number of events (e.g. every key code) within a single build/pass.

The u8_t limitation became apparent during end-to-end testing of #21.
2020-10-25 20:36:03 +00:00
innovaker
ca0bcc0ae4 docs: Add missing docusaurus scripts
Add:
- docusaurus serve
- docusaurus clear
2020-10-25 19:45:04 +00:00
Nick
7296b96797 Add Reviung41 Shield Definitions 2020-10-24 21:08:00 -05:00
Nick
63007fb6c1 fix: clang-format 2020-10-24 18:54:56 -05:00
Nick
adb07926b1 Remove newlib dep 2020-10-24 18:52:34 -05:00
Nigel Rodriguez
9d624740d9 Fix wrong comment tokens 2020-10-24 12:40:49 +08:00
Nigel Rodriguez
6a9a6e6d8e Add Boardsource 3x4 shield 2020-10-24 12:21:15 +08:00
Nick
a67a8cd3b8 Check if fetch channel is supported 2020-10-23 22:37:44 -05:00
Pete Johanson
518bcacba1
Merge pull request #280 from Tsquash/txpowerdocs
DocumentedTX Power Config in Troubleshooting
2020-10-23 12:36:28 -04:00
Nick
6047415b1c Fix build for boards without voltage divider 2020-10-23 01:19:47 -05:00
Nick
8efcd80f3a Add missing ADC and fix formatting 2020-10-23 00:57:32 -05:00
Nick Winans
70ffcca3b4
Merge branch 'main' into bluetooth/battery-reporting 2020-10-23 00:55:50 -05:00
Nick
162c6b77db clang-format and add missing defconfig values 2020-10-23 00:50:39 -05:00
Nick
3082455aec Refactor driver to use Sensor API 2020-10-23 00:45:59 -05:00