Commit Graph

83 Commits

Author SHA1 Message Date
Nicolas Munnich 7d8dd64cdc
docs: Added a page on pin control for ZMK (#2508)
* docs(feat): Added a page on pin control for ZMK

* Added note on HAL modules

* docs: Added images of boards

---------

Co-authored-by: Cem Aksoylar <caksoylar@users.noreply.github.com>
2024-10-27 02:31:47 +02:00
Nicolas Munnich a72327bdff
docs: Physical layout docs improvements (#2533)
* docs: Added layout configuration reference page
* docs: Refactored and revamped physical layout creation information
* docs: Added note in studio features page
* docs: added studio_unlock note in features section
---------

Co-authored-by: Cem Aksoylar <caksoylar@users.noreply.github.com>
Co-authored-by: Joel Spadin <joelspadin@gmail.com>
Co-authored-by: Peter Johanson <peter@peterjohanson.com>
2024-10-12 21:25:45 +02:00
Nicolas Munnich a314128ea8
docs: Pull encoders from new shield guide to its own page (#2510)
Co-authored-by: Cem Aksoylar <caksoylar@users.noreply.github.com>
2024-09-30 10:06:00 -07:00
Nicolas Munnich f0319fde94
docs(feat): Added a page on shift registers (#2452)
Added a page on shift registers
---------

Co-authored-by: Cem Aksoylar <caksoylar@users.noreply.github.com>
2024-09-07 13:19:01 +02:00
Peter Johanson 3975d2fdaf feat: Add studio related documentation.
* Document setting up studio for a new keyboard definition.
* Document how to enable ZMK Studio for a build, adding reserved layers,
  and controlling which behaviors are built into a studio firmware.
* Document `&studio_unlock` behavior.
* Document studio configuration options.

Co-authored-by: Cem Aksoylar <caksoylar@users.noreply.github.com>
2024-09-05 12:22:08 -06:00
Nicolas Munnich 266227b580
refactor(docs): Refactor the development section (#2438) 2024-09-01 21:54:19 -07:00
Nicolas Munnich 5f056f7199
refactor(docs): Convert the keymaps section into a base folder (#2430)
Co-authored-by: Cem Aksoylar <caksoylar@users.noreply.github.com>
2024-08-21 10:39:18 -07:00
Peter Johanson feda96eb40 feat(studio): Initial RPC infrastructure and subsystems.
* UART and BLE/GATT transports for a protobuf encoded RPC
  request/response protocol.
* Custom framing protocol is used to frame a give message.
* Requests/responses are divided into major "subsystems" which
  handle requests and create response messages.
* Notification support, including mapping local events to RPC
  notifications by a given subsystem.
* Meta responses for "no response" and "unlock needed".
* Initial basic lock state support in a new core section, and allow specifying
  if a given RPC callback requires unlocked state or not.
* Add behavior subsystem with full metadata support and examples of
  using callback to serialize a repeated field without extra stack space needed.

Co-authored-by: Cem Aksoylar <caksoylar@users.noreply.github.com>
2024-08-15 11:45:18 -06:00
Cem Aksoylar d75e388593 feat(docs): Add split keyboards feature page
Co-authored-by: Nicolas Munnich <98408764+Nick-Munnich@users.noreply.github.com>
2024-08-07 23:57:58 -07:00
Nicolas Munnich f92dce43e9
feat(docs): Add modules feature page (#2380)
Co-authored-by: Cem Aksoylar <caksoylar@users.noreply.github.com>
2024-07-25 12:08:08 -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
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
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
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
Alexander Krikun d7d9eed317 feat(mouse): Initial mouse keys support.
* Add HID report/descriptor for a new report with mouse buttons,
  and x/y/wheel deltas.
* New mouse key press behavior for press/release of mouse keys.
* Add constants for HID main item values (e.g. data/array/absolute)
* Define and use constants for our HID report IDs.
2023-11-15 11:16:59 -08:00
Joel Spadin 7a352908ee docs: Add pre-commit documentation 2023-04-24 16:07:04 -07:00
Nick Conway 3db163aa2c feat(behaviors): Add reusable sensor behaviors.
* Add new sensor behaviors that either take full bindings
  add definition, or accept parameters when bound in the
  keymap.
* Remove existing hard-coded key press sensor behavior
  and instead leverage new generic sensor behaviors to
  achieve the same functionality.

Co-authored-by: nick@conway.dev
2023-04-21 21:13:31 -07:00
Peter Johanson 0c5bcf5fe4 feat(docs): Add BLE feature/config pages.
Co-authored-by: Cem Aksoylar <caksoylar@users.noreply.github.com>
2023-04-05 22:55:38 -07:00
Joel Spadin ae78aa247a feat(docs): Update power and lighting config pages
Moved battery configuration to its own page to match the feature page.

Documented that external power is disabled when in sleep mode.

Clarified that the *_START configs apply on first boot, and any changes
after that are persisted.
2022-07-03 18:55:54 +01:00
Joel Spadin 2b122acfc3 feat(docs): Updating lighting config docs 2022-07-03 18:55:54 +01:00
Joel Spadin 11861a4d30 docs: Add documentation for config options 2022-07-03 18:55:54 +01:00
Caleb Goates 0977be622a feat(docs): Add docs for key toggle behavior 2022-06-03 00:04:41 -04:00
Kurtis Lew 8a70d5fccc
feat(docs): Add New Behavior Guide
Co-authored-by: Henré Botha <henrebotha@gmail.com>
Co-authored-by: Cem Aksoylar <caksoylar@users.noreply.github.com>
Co-authored-by: Dom H <dom@hxy.io>
Co-authored-by: Pete Johanson <peter@peterjohanson.com>
2022-05-21 17:26:10 +01:00
Joel Spadin b7b026f20c feat(docs): Add battery sensor documentation 2022-04-17 11:30:57 -04:00
Peter Johanson 34e1de23fb feat(docs): Document the macro behavior. 2022-03-23 23:42:54 -04:00
Kurtis Lew 32ebe2cfb5
feat(behaviors): Add Tap-Dance behavior 2022-03-16 01:08:42 -04:00
Dom H 8e91e5ada1 fix(docs): Add `behaviors/key-repeat` to sidebar 2022-02-12 11:22:19 -05:00
Alessandro Bortolin da41391b1f feat(docs): add backlight documentation 2022-02-05 23:40:18 -05:00
Peter Johanson 54dabffd0d feat(behaviors): Add caps word (`&caps_word`).
* Add new `&caps_word` behavior that acts like caps lock, but
  releases automatically when any "break" keycode is pressed.
2021-11-28 22:41:35 -05:00
Jonathan Rascher cbf6e28e34 docs(conditional-layers): Document feature 2021-11-15 05:49:23 -05:00
Joel Spadin f946dc6893 feat(kscan): Improve matrix debouncing
Switched the GPIO matrix driver to debouncing using a simple integrator
algorithm. Whenever a key is pressed, we now scan at a rate controlled
by debounce-scan-period-ms (default 1 ms) until all keys are released,
then return to either waiting for an interrupt or polling more slowly.

The timers for key press and release can now be controlled separately,
so debounce-period is deprecated in favor of debounce-press-ms and
debounce-release-ms. Global Kconfig options
ZMK_KSCAN_DEBOUNCE_PRESS_MS and ZMK_KSCAN_DEBOUNCE_RELEASE_MS are also
added to make these easier to set.

Added documentation for debouncing options.
2021-10-26 23:52:13 -04:00
Peter Johanson f8e88d78c4 docs: Add docs on hardware metadata files. 2021-09-11 00:50:36 -04:00
measlesbagel 3893d50e13
Docs: added mod morph page (#749)
* docs(behaviors): add mod-morph doc page

* docs(behaviors): add mod-morph doc page

* docs(mod-morph): add note about sent modifiers

* docs(mod-morph): fixed prettier formatting
2021-04-05 18:04:38 -05:00
Cody McGinnis d956193251 change "Under Development" to "Beta Testing" 2021-03-10 13:45:50 -05:00
Cody McGinnis ac50e741be move the information to its own page 2021-03-10 13:45:50 -05:00
Joel Spadin 0955ffef65 docs: Add docs for setting up vscode
Added a docs page with tips for setting up VS Code's code completion to work
in ZMK's source files. Info for other IDEs can be added here later as needed.
2021-02-09 00:45:55 -05:00
KemoNine 1adb2d5f84 feat(docs): add information on how to update the documentation to the docs 2021-01-29 20:44:39 -06:00
Okke Formsma 89567d3150 docs(sticky keys): document sticky keys and sticky layers 2021-01-24 23:30:05 -05:00
Pete Johanson e8aa576781 refactor(docs): Move combos under Features.
* Since combos aren't a behavior, but a new high level keymap
  feature, move under Features section.
2021-01-24 16:42:44 -05:00
Okke Formsma feb0d5b90c feat(combos): initial implementation
closes #45
2021-01-13 21:07:41 -05:00
Joel Spadin 5aa8a07aa9 feat(docs): add keymap upgrader
Added a documentation page with a script that upgrades deprecated key
codes and behaviors to their replacements.

Fixes #299
2020-12-10 12:23:05 +00:00
innovaker 2744f44e73 refactor(docs): Integrate `Dev Guides` into `Development` section
Improves discoverability.
2020-11-20 22:31:56 -05:00
innovaker 2d50302a02 refactor(docs): Integrate `USB Logging` into `Development` section
Improves discoverability.
2020-11-20 22:31:56 -05:00
innovaker 532c1987b2 refactor(docs): Move `dev-` documents into `/development`
Aligns to conventions introduced by newer documentation.
2020-11-20 22:31:56 -05:00
innovaker bb43c7e053 docs: Rename `someSidebar` to `docs` 2020-11-18 10:47:08 +00:00
innovaker 2871dca9bf refactor(docs): Change `behavior` to `behaviors`
Makes a better URL.
2020-11-16 15:33:44 -05:00
innovaker a685d88744 refactor(docs): Change `feature` to `features`
Makes a better URL.
2020-11-16 15:33:44 -05:00
Okke Formsma 0d02441abe docs(codes): add modifier functions
Refactor and expand codes documentation to include modifier functions.

Closes #330.
2020-11-07 12:00:19 -05:00
innovaker ff638eb010 docs(codes): Add (key) codes documentation
Create codes documentation for standardized keys.

Closes #218.  Fixes #308.  Ref #21.
2020-11-06 15:02:12 -05:00