diff --git a/docs/docs/config/system.md b/docs/docs/config/system.md index 1a5306bda5fd..573a8c748492 100644 --- a/docs/docs/config/system.md +++ b/docs/docs/config/system.md @@ -135,3 +135,43 @@ Following [split keyboard](../features/split-keyboards.md) settings are defined | `CONFIG_ZMK_SPLIT_BLE_PERIPHERAL_STACK_SIZE` | int | Stack size of the BLE split peripheral notify thread | 650 | | `CONFIG_ZMK_SPLIT_BLE_PERIPHERAL_PRIORITY` | int | Priority of the BLE split peripheral notify thread | 5 | | `CONFIG_ZMK_SPLIT_BLE_PERIPHERAL_POSITION_QUEUE_SIZE` | int | Max number of key state events to queue to send to the central | 10 | + +## Snippets + +Snippets are a way to save common configuration separately when it applies to multiple different applications. + +More documentation is available from [Zephyr](https://docs.zephyrproject.org/3.5.0/build/snippets/index.html). + +Enable snippets with `-S ` for local builds, for example: + +```sh +west build -b nrfmicro_13_52833 -S nrf52833-nosd -- -DSHIELD=corne_left +``` + +Or by adding `snippet: ` to your `build.yaml` for the appropriate board: + +```yaml +- board: nrfmicro_13_52833 + snippet: nrf52833-nosd + shield: corne_left +``` + +ZMK implements the following snippets: + +### nrf52833-nosd + +Definition: [zmk/app/snippets/nrf52833-nosd](https://github.com/zmkfirmware/zmk/blob/main/app/snippets/nrf52833-nosd) + +On memory-constrained nRF52833 boards this snippet will extend the code partition to overwrite the Nordic SoftDevice. +This gives 428KB for the code partition as opposed to 280KB with the Nordic SoftDevice. + +The added memory allows the nRF52833 to fit displays and other memory-intensive features. + +:::danger +Erasing the SoftDevice will prevent the board from using firmware built without the snippet. + +Flashing such firmware **will** totally brick the board, disabling the USB flashing functionality. +The only way to restore functionality after that is to re-flash the bootloader. + +Re-flashing a bootloader built without the SoftDevice will require firmware built with this snippet. +:::