Commit Graph

933 Commits

Author SHA1 Message Date
Cem Aksoylar 7c09eb217e refactor(docs): Document and enforce header casing conventions 2024-06-17 11:46:32 -07:00
Cem Aksoylar e56db304ea refactor(docs): Split up troubleshooting page into a section 2024-06-17 11:46:32 -07:00
Nicolas Munnich 308d6bce6e
feat(docs): Improve the toolchain setup page (#2272)
Split the toolchain setup into separate docker and native pages
and improve instructions to better refer to Zephyr docs in certain steps.
Also refactor to improve consistency and add virtualenv instructions.

---------

Co-authored-by: KemoNine <mcrosson@kemonine.info>
Co-authored-by: Cem Aksoylar <caksoylar@users.noreply.github.com>
2024-06-01 21:51:08 -07:00
Nicolas Munnich 2d96f469c8
fix(docs): Removing to-to typos (#2310) 2024-05-25 22:16:33 -07:00
Horu 7d1f84e3eb
chore: fix typos in various places 2024-05-13 16:47:33 -04:00
ReFil 4dfc45d4ab
feat(docs): Document example toggle-mode implementation
---------

Co-authored-by: Cem Aksoylar <caksoylar@users.noreply.github.com>
2024-05-03 14:17:09 -04:00
Cem Aksoylar a9021deef6 fix(docs): Add wakeup-source to split new shield example 2024-04-09 16:27:27 -07:00
Cem Aksoylar dfc6dc84b8 fix(docs): Make clear the matrix transform example is incomplete 2024-04-09 16:27:27 -07:00
Cem Aksoylar 7a51a46b9f feat(docs): Add pointer to shields folder in new shield docs 2024-04-09 16:27:27 -07:00
フィルターペーパー 7d5aa0c0bf feat(docs): Update section for devicetree_generated error 2024-04-04 18:31:09 -07:00
Tobias Arndt e7d6519534 fix(docs): Fix and note GPIO flags for charlieplex config 2024-03-30 19:13:39 -07:00
Cem Aksoylar eb5a6fcfe1 refactor(docs): Split DT props table for sensor rotate variants 2024-03-30 17:03:51 -07:00
Cem Aksoylar e65a1227d8 fix(docs): Correct property types for behavior bindings 2024-03-30 17:03:51 -07:00
zhiayang 4bef4e98f5
feat(boards): Support board revisions in setup scripts.
* Make setup.sh/ps1 prompt for board revision for boards that have revisions
2024-03-30 19:12:37 -04:00
dependabot[bot] d672b0c705 chore(deps): bump react-toastify from 7.0.4 to 10.0.5 in /docs
Bumps [react-toastify](https://github.com/fkhadra/react-toastify) from 7.0.4 to 10.0.5.
- [Release notes](https://github.com/fkhadra/react-toastify/releases)
- [Commits](https://github.com/fkhadra/react-toastify/compare/v7.0.4...v10.0.5)

---
updated-dependencies:
- dependency-name: react-toastify
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-03-28 10:41:56 -07:00
dependabot[bot] 18b86b7720 chore(deps): bump follow-redirects from 1.15.5 to 1.15.6 in /docs
Bumps [follow-redirects](https://github.com/follow-redirects/follow-redirects) from 1.15.5 to 1.15.6.
- [Release notes](https://github.com/follow-redirects/follow-redirects/releases)
- [Commits](https://github.com/follow-redirects/follow-redirects/compare/v1.15.5...v1.15.6)

---
updated-dependencies:
- dependency-name: follow-redirects
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-03-28 10:31:21 -07:00
dependabot[bot] 25bb126a11 chore(deps): bump express from 4.18.2 to 4.19.2 in /docs
Bumps [express](https://github.com/expressjs/express) from 4.18.2 to 4.19.2.
- [Release notes](https://github.com/expressjs/express/releases)
- [Changelog](https://github.com/expressjs/express/blob/master/History.md)
- [Commits](https://github.com/expressjs/express/compare/4.18.2...4.19.2)

---
updated-dependencies:
- dependency-name: express
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-03-28 10:22:10 -07:00
dependabot[bot] 34910787ff chore(deps): bump webpack-dev-middleware from 5.3.3 to 5.3.4 in /docs
Bumps [webpack-dev-middleware](https://github.com/webpack/webpack-dev-middleware) from 5.3.3 to 5.3.4.
- [Release notes](https://github.com/webpack/webpack-dev-middleware/releases)
- [Changelog](https://github.com/webpack/webpack-dev-middleware/blob/v5.3.4/CHANGELOG.md)
- [Commits](https://github.com/webpack/webpack-dev-middleware/compare/v5.3.3...v5.3.4)

---
updated-dependencies:
- dependency-name: webpack-dev-middleware
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-03-28 10:15:51 -07:00
Peter Johanson f9bb18b676 fix(docs): Add `&soft_off` to behaviors index. 2024-03-27 22:52:32 -07:00
Peter Johanson e66f068fb5 fix(docs): Minor soft-off docs tweaks from review. 2024-03-27 20:59:26 -07:00
Peter Johanson d0e0ecb4e3 refactor: Use kscan directly to wake when we can.
* When adding a dedicated GPIO pin for soft off/on, use the direct
  kscan as the waker, instead of adding an additional node.
2024-03-27 20:59:26 -07:00
Pete Johanson fa9ea9ea8b fix(docs): Fix soft off waker prop name, headers.
* Use the correct property for extra GPIOs to
  make active for the waker before going into soft
  off state.
* Change header depth for easier navigation of the
  soft off feature page.

Co-authored-by: Pablo Martínez <58857054+elpekenin@users.noreply.github.com>
2024-03-27 20:59:26 -07:00
Peter Johanson cac999b1d6 feat: Updated soft-off docs.
* Document new sideband behavior kscan driver for integrated
  soft-off support.
2024-03-27 20:59:26 -07:00
Pete Johanson 933fdcd364 refactor(pm): Remove scanned behavior trigger.
* Remove the painful scanned behavior trigger for now, future enhancement
  will restore this high level functionality using kscan directly.
2024-03-27 20:59:26 -07:00
Peter Johanson fceb0351a5 refactor: Fixes for soft-off based on review.
* Better naming for gpio-key behavior triggers.
* Tweaks to scanned behavior trigger to avoid bad semaphore use,
  and reduce chance of issues with slowly scanned matrixes.
* Various code cleanups of style issues.
2024-03-27 20:59:26 -07:00
Pete Johanson 96968514e3 fix(docs): Apply suggestions from code review
Co-authored-by: Cem Aksoylar <caksoylar@users.noreply.github.com>
2024-03-27 20:59:26 -07:00
Peter Johanson e78249ee06 fix(bt): Fix BT tests after soft off work.
* Move to explicit enable of `ZMK_PM_SOFT_OFF` to turn
  on the feature and use the behaviors, which matches
  how other features work, and helps with split and
  testing schemes.
2024-03-27 20:59:26 -07:00
Peter Johanson adb3a13dc5 feat: Add soft on/off support.
Initial work on a soft on/off support for ZMK. Triggering soft off
puts the device into deep sleep with only a specific GPIO pin
configured to wake the device, avoiding waking from other key
presses in the matrix like the normal deep sleep.

Co-authored-by: Cem Aksoylar <caksoylar@users.noreply.github.com>
2024-03-27 20:59:26 -07:00
Cem Aksoylar c684cee76f refactor(docs): Refer to overview page for behaviors 2024-03-24 18:29:29 -07:00
Thomas Huber f2d8b9b0a3 feat(docs): Add Behavior overview page
Co-authored-by: Cem Aksoylar <caksoylar@users.noreply.github.com>
2024-03-24 17:50:33 -07:00
Cem Aksoylar 931a36ff4a feat(docs): Add a note on using BT with dual boot systems 2024-03-20 11:49:23 -07:00
フィルターペーパー 1f7cd7a107 feat(docs): Add troubleshooting section for empty_file error 2024-03-19 23:48:57 -07:00
Theo Lemay 828943156a
fix(docs): Fix hold-tap info callout (#2211)
The hold-while-undecided callout does not properly render in the docs. This fixes it.
2024-03-18 15:34:45 -07:00
フィルターペーパー 736c5fb46e feat(docs): Add a note on macOS v14.3 file copy error message 2024-03-18 10:38:09 -07:00
Theo Lemay 341534aa15 feat(behaviors): lazy sticky keys 2024-03-18 10:30:14 -07:00
Cem Aksoylar 325e207781 feat(docs): Add pointers to HID descriptor refresh 2024-03-18 09:58:16 -07:00
Cem Aksoylar aa6cfe250d feat(docs): Document refreshing the HID descriptor 2024-03-18 09:58:16 -07:00
Cem Aksoylar bddee70b6b refactor(docs): Remove outdated Windows battery advice and unnecessary header 2024-03-18 09:58:16 -07:00
ReFil 388ad71385
feat(build): Explicit missing keymap node error
* Explicit error if zmk,keymap not set
* Document keymap error

---------

Co-authored-by: Cem Aksoylar <caksoylar@users.noreply.github.com>
2024-03-18 12:54:47 -04:00
Joel Spadin 14b06a36bf docs: Update settings_reset documentation
Updated the section for troubleshooting split halves unable to pair now
that the settings_reset shield resets all settings and explicitly
disables CONFIG_ZMK_BLE:

- Added a note that all settings will be reset.
- Removed the section about immediately putting the halves into
  bootloader mode to prevent pairing, as this is not necessary anymore.
- Added a note that you will not be able to see or pair the Bluetooth
  keyboard until you have flashed regular firmware again.
- Added a sentence to clarify that you will need to re-pair the
  keyboard to all host devices.

Also added some text describing common scenarios where this procedure
might be needed.
2024-03-18 09:48:19 -07:00
Joel Spadin 1dfcfc7d3f feat(shields): Make settings_reset shield reset all settings
Added a new CONFIG_ZMK_SETTINGS_RESET_ON_START option which enables init
code to call zmk_settings_erase(), and changed the settings_reset shield
to use it instead of CONFIG_ZMK_BLE_CLEAR_BONDS_ON_START, so it now
resets all settings instead of just clearing BLE bonds.

CONFIG_ZMK_BLE_CLEAR_BONDS_ON_START is left in place for now in case
someone still needs it. It may be replaced in the future once we find a
better way to repair a broken split connection.
2024-03-18 09:48:19 -07:00
Thomas Huber 37af94edde feat(docs): Add warning to new shield docs how Kconfig treats whitspaces
Added a warning to the shield section explaining that Kconfig does
not ignore whitespaces on function calls and therefore adding whitespaces
after the comma will break functionality.
2024-03-04 20:08:52 -08:00
Andrew Kannan db7b197790
fix(docs): Add underglow brightness min/max (#2180) 2024-02-28 10:39:04 -08:00
Theo Lemay c007d60357 feat(behaviors): hold while undecided 2024-02-20 00:25:53 -08:00
Dennis 604af2ebd3
feat(docs): Add pointers for peripheral battery monitoring (#2177)
Co-authored-by: Cem Aksoylar <caksoylar@users.noreply.github.com>

Fixes #2166
2024-02-17 21:51:09 -08:00
Pete Johanson f72f415c5b fix(docs): More Zephyr docs link updates.
Co-authored-by: Cem Aksoylar <caksoylar@users.noreply.github.com>
2024-02-09 14:32:46 -08:00
Peter Johanson edc72c1166 chore(docs): Update Zephyr links to 3.5.0 versions. 2024-02-09 14:32:46 -08:00
Peter Johanson 18e5a1a26b feat: Add Zephyr 3.5 blog post. 2024-02-09 14:32:46 -08:00
Peter Johanson d6de8a3acc refactor: Move to POST_KERNEL phase for behavior inits. 2024-02-09 14:32:46 -08:00
Joel Spadin 5826b80374 chore: Fix formatting
Fixed the formatting in a file that wasn't passing pre-commit checks.
2024-02-03 21:56:20 -08:00
Joel Spadin 3a4cf185a1 feat(keymap-upgrader): Upgrade encoder resolution
Added an upgrade function to the keymap upgrader to replace the encoder
"resolution" property with "steps" and (if it is not already present)
"triggers-per-rotation".
2024-02-03 18:45:21 -06:00
Joel Spadin be75da096c fix(keymap-upgrader): Fix highlight on last line
Fixed an issue where a text edit at the very end of a file would cause
it to highlight from the start of the edit to the start of the file
instead of to the end of the file.
2024-02-03 18:45:21 -06:00
Johan Friis aab09d504c
feat(docs): Document Karabiner interference with Mod-Morphs (#2146) 2024-01-30 00:07:48 -08:00
Dhruvin Shah 5685074835 docs: correcting file path in config.md 2024-01-27 11:40:12 -06:00
Joel Spadin 1dbd6910cb chore(docs): Update tree-sitter-devicetree to 0.9.0 2024-01-25 18:03:37 -06:00
Joel Spadin 08d9391a8a feat(keymap-upgrader): Upgrade renamed nodes
Added an upgrade function to fix renamed behavior nodes in the unlikely
event that someone was changing behavior settings this way instead of
using references.
2024-01-25 18:03:37 -06:00
Joel Spadin bf5284b3b9 fix(keymap-upgrader): Note that changed lines are highlighted 2024-01-25 18:03:37 -06:00
Joel Spadin d4be70587d fix(keymap-upgrader): Filter key codes to bindings
Changed the key code upgrader to only replace codes that appear in
"bindings" properties. Modifier flags such as MOD_LCTL are no longer
valid as key codes, but they are still used in "mods" properties and
should not be replaced there.
2024-01-25 18:03:37 -06:00
Joel Spadin 37fcf190e6 feat(keymap-upgrader): Highlight changes
Updated the keymap upgrader to highlight which lines it changed as well
as indicate when nothing needed to be upgraded.

Also adjusted the line highlight colors to be more readable in both
light and dark color schemes.
2024-01-25 18:03:37 -06:00
Joel Spadin 84e056793b fix(docs): Fix links to keymap upgrader 2024-01-25 18:03:37 -06:00
Joel Spadin a0465391be refactor: Improve keymap upgrader
Moved the keymap upgrader to a top-level page like the power profiler
to make it more discoverable. It upgrades more things than key codes
now, so putting it in the codes category doesn't make much sense.

Converted the upgrader code to TypeScript and split it up into smaller
files to make it easier to add new upgrade functions.

Added upgrade functions to remove/replace "label" properties and rename
matrix-transform.h to matrix_transform.h.
2024-01-25 18:03:37 -06:00
honorless a3fbc2a5ba docs: suggest zmk,matrix-transform over zmk,matrix_transform
* While functionally equivalent, the hyphenated form of this property
  is more consistent with other ZMK properties and adheres to DTS style
  guidelines.

* Additionally, update links to use Zephyr 3.2 documentation instead
  of 2.5 where appropriate.
2024-01-23 23:02:35 -06:00
Cem Aksoylar 19613128b9 fix(docs): Fix extra line issue in hardware headers
Need to make prettier ignore these, because otherwise it splits
them to separate lines and reverts the whole change
2024-01-20 22:28:41 -08:00
Cem Aksoylar 0dc04df09c fix(docs): Fix eslint-plugin-react errors
Remove unused components, and disable proptype checking for children
in OsTabs custom component since I can't figure out a way to assign
propTypes to it in an mdx file.
2024-01-20 22:28:41 -08:00
Cem Aksoylar 7196f9f075 ci(docs): Disable eslint rule for unescaped entities
eslint-plugin-react is emitting a lot of react/no-unescaped-entities
errors in mdx files, primarily due to apostrophes. It seems not ideal
to have to escape every apostrophe in all mdx text, so this commit
disables the check.

There might be a better way to handle this issue, but I am not aware
of one right now.
2024-01-20 22:28:41 -08:00
Cem Aksoylar fa91648cce ci(docs): Use eslint plugin for automatic JSX runtime
Ref: https://docusaurus.io/docs/migration/v3#automatic-jsx-runtime
and https://github.com/jsx-eslint/eslint-plugin-react/blob/master/docs/rules/react-in-jsx-scope.md#when-not-to-use-it
2024-01-20 22:28:41 -08:00
Cem Aksoylar e3f458e539 ci(docs): Fix tsc config for docusaurus 3 2024-01-20 22:28:41 -08:00
Cem Aksoylar 57684f8a66 fix(docs): Fix broken anchors in docs (but not blog) 2024-01-20 22:28:41 -08:00
Cem Aksoylar 5cbffd6625 fix(docs): Work around docusaurus bug causing broken links
Some links ended up broken after docusaurus 3 upgrade,
especially if they are the second on the same line and have anchors.
Likely due to https://github.com/facebook/docusaurus/issues/9518
2024-01-20 22:28:41 -08:00
Cem Aksoylar 1b326ff856 fix(docs): Fix relative links with trailing slashes 2024-01-20 22:28:41 -08:00
Cem Aksoylar dcfe07d9f6 refactor(docs): Use new admonition title syntax and disable mdx v1 compat 2024-01-20 22:28:41 -08:00
Cem Aksoylar ee855de349 fix(docs): Fix incorrect admonition title 2024-01-20 22:28:41 -08:00
Cem Aksoylar f014eb45a7 refactor(docs): Use .mdx for docs with mdx features
Also applies prettier changes in touched files due to precommit
2024-01-20 22:28:41 -08:00
Cem Aksoylar 00962a7255 refactor(docs): Remove no longer necessary React imports 2024-01-20 22:28:41 -08:00
Cem Aksoylar a0a952413a fix(docs): Fix deprecated admonition types 2024-01-20 22:28:41 -08:00
Cem Aksoylar 13c856d1d3 fix(docs): Fix mdx 3 incompatibility 2024-01-20 22:28:41 -08:00
Cem Aksoylar 0827ff245f chore(docs): Update docusaurus to 3
Following https://docusaurus.io/docs/migration/v3#upgrading-dependencies
and `npm update`
2024-01-20 22:28:41 -08:00
crides 8c14b155e8 docs: confirm some consumer codes on iOS
Tested on iOS 16.6
2024-01-15 18:07:48 -08:00
typorian 466cf92029
fix(docs): Document `CONFIG_ZMK_USB_BOOT` 2024-01-12 11:02:47 -08:00
dependabot[bot] 2829185a94 chore(deps): bump follow-redirects from 1.15.2 to 1.15.4 in /docs
Bumps [follow-redirects](https://github.com/follow-redirects/follow-redirects) from 1.15.2 to 1.15.4.
- [Release notes](https://github.com/follow-redirects/follow-redirects/releases)
- [Commits](https://github.com/follow-redirects/follow-redirects/compare/v1.15.2...v1.15.4)

---
updated-dependencies:
- dependency-name: follow-redirects
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-01-12 10:42:52 -08:00
Chris Andreae 7d1c1ae8fd fixup! docs
Co-authored-by: Cem Aksoylar <caksoylar@users.noreply.github.com>
2024-01-05 12:16:38 -08:00
Chris Andreae 7b9466c7dc fixup! add documentation for BT_CLR_ALL 2024-01-05 12:16:38 -08:00
Cem Aksoylar b3146e665e
feat(blog): Add post for joelspadin projects for spotlight series (#2092)
Co-authored-by: Joel Spadin <joelspadin@gmail.com>
2024-01-05 10:42:04 -08:00
Gabor Hornyak 0e2f94b73b feat(ble): Support perhipheral battery levels.
* Add ability to fetch and report peripheral battery levels
  on split centrals.
* Add additional support for adding a new Battery Level
  service to split centrals that exposes fetched peripheral
  battery levels to connected hosts.

Co-authored-by: Peter Johanson <peter@peterjohanson.com>
2024-01-03 09:26:51 -08:00
Cem Aksoylar 12d73ba4f9 fix(docs): Fix remark on &bt parameter #2 2023-12-17 17:38:07 -08:00
Cem Aksoylar 78fa1e77c4 feat(blog): Add nodefree-config post for spotlight series
Co-authored-by: Robert U <978080+urob@users.noreply.github.com>
2023-12-16 21:55:45 -08:00
Peter Johanson 9b3a98691c refactor(bt): Split security and conn exp. Kconfig
* Split connection and security experimental changes into dedicated
  Kconfig flags for easier testing of only connection related fixes.

Co-authored-by: Cem Aksoylar <caksoylar@users.noreply.github.com>
2023-12-15 08:59:03 -08:00
Hooky 2c50cff891
feat(kscan): Add charlieplex keyscan driver
* Supports matrixes with and without additional interrupt pin use.

Co-authored-by: Peter Johanson <peter@peterjohanson.com>
2023-12-09 17:10:05 -05:00
Peter Johanson 63c8c5700a feat(bt): Add more experimental tweaks.
* Support auto security upgrade for splits properly.
* Disable 2M and legacy LLCP if the experimental
  Kconfig flag is selected.
2023-12-08 14:57:23 -08:00
Cem Aksoylar 384637ae6c fix(docs): Fix text blurb about split Kconfig.defconfig 2023-12-06 22:50:06 -08:00
Cem Aksoylar 09d47d8117 refactor(docs): Convert breaks to unordered lists in tables
Co-authored-by: Joel Spadin <joelspadin@gmail.com>
2023-12-06 22:46:03 -08:00
Cem Aksoylar 55bf7cae7e feat(docs): Note how parameters are forwarded for behaviors 2023-12-06 22:46:03 -08:00
Cem Aksoylar 56d863cba6 feat(docs): Document sensor-rotate in behaviors config 2023-12-06 22:46:03 -08:00
Cem Aksoylar 2bab81a304 fix(docs): Note -var definition files for macros 2023-12-06 22:46:03 -08:00
Cem Aksoylar 76a209c728 fix(docs): Fix sticky key #binding-cells 2023-12-06 22:46:03 -08:00
Cem Aksoylar f3ad08b619 fix(docs): Add missing page pointers in behaviors config 2023-12-06 22:46:03 -08:00
Peter Johanson 291bbc2257 refactor(docs): New shield guide to suggest modules
* Update the new shield guide to position Zephyr module location
  as the default when creating new shields, with a note about
  using ZMK repository itself as a last resort.
* Document building with additional Zephyr modules.

Co-authored-by: Cem Aksoylar <caksoylar@users.noreply.github.com>
2023-12-06 09:36:37 -08:00
Peter Johanson 0ab6a0ad11 feat(bt): Add new experimental Kconfig setting.
* In order to have an easy way to test and phase in BT changes, add a
  new `ZMK_BLE_EXPERIMENTAL_FEATURES` Kconfig setting.
2023-12-06 09:22:50 -08:00
Joel Spadin 0fd8e25807 docs: Document behavior name length limit
Added a section to the new behavior guide to document that the names of
behaviors invoked on the peripheral side of a split must be at most 8
characters long.
2023-12-04 20:06:54 -06:00
Joel Spadin 36eda571b7 refactor(behaviors): Create a list to lookup behaviors
Added BEHAVIOR_DT_DEFINE() and BEHAVIOR_DT_INST_DEFINE(), which work
exactly like the DEVICE_*_DEFINE() macros, except they also register the
device as a behavior by adding a pointer to it to a memory section.

Added zmk_behavior_get_binding(), which works like device_get_binding()
except that it only searches the devices that have been registered as
behaviors. This ensures that behaviors cannot have name collisions with
other devices defined by the SoC, which will be important when we remove
the label property from behaviors so they are given their node names.

As an added benefit, this is faster since it searches a smaller list.
Some basic benchmark code I wrote indicates it takes 30-70% as long,
depending on where the behavior is in the list and whether the name
string is an exact pointer match.

From now on, behaviors should use BEHAVIOR_*_DEFINe() instead of
DEVICE_*_DEFINE(), and any code that looks up a behavior by name should
use zmk_behavior_get_binding() instead of device_get_binding().
2023-12-04 20:06:54 -06:00