Cargo Features

[dependencies]
rmk = { version = "0.4.1", default-features = false, features = ["col2row", "async_matrix", "rapid_debouncer", "split", "nrf52840_ble", "nrf52833_ble", "nrf52832_ble", "nrf52811_ble", "nrf52810_ble", "esp32c3_ble", "esp32c6_ble", "esp32s3_ble"] }
default = col2row

The col2row feature is set by default whenever rmk is added without default-features = false somewhere in the dependency tree.

col2row default

If your PCB diode's direction is col2row, enable this feature. If it's row2col, disable this feature.

async_matrix

Enable async matrix scan

Enables embedded-hal-async

rapid_debouncer

Use rapid debouncer

split

Feature for split keyboard

Affects rmk::split

nrf52840_ble = _nrf_ble

BLE feature flags

⚠️ Due to the limitation of docs.rs, functions gated by BLE features won't show in docs.rs. You have to head to examples folder of RMK repo for their usages. Enable feature if you want to use nRF52840 with BLE.

Enables ble-central, nrf52840 and s140 of nrf-softdevice

nrf52833_ble = _nrf_ble

Enable feature if you want to use nRF52833 with BLE.

Enables ble-central, nrf52833 and s140 of nrf-softdevice

nrf52832_ble = _nrf_ble

Enable feature if you want to use nRF52832 with BLE.

Enables ble-central, nrf52832 and s132 of nrf-softdevice

nrf52811_ble = _nrf_ble

Enable feature if you want to use nRF52811 with BLE.

Enables nrf52811 and s112 of nrf-softdevice

nrf52810_ble = _nrf_ble

Enable feature if you want to use nRF52810 with BLE.

Enables nrf52810 and s112 of nrf-softdevice

esp32c3_ble = _esp_ble

Enable feature if you want to use ESP32C3 with BLE.

esp32c6_ble = _esp_ble

Enable feature if you want to use ESP32C6 with BLE.

esp32s3_ble = _esp_ble

Enable feature if you want to use ESP32S3 with BLE.

_ble _esp_ble? _nrf_ble?

Affects rmk::ble

_esp_ble esp32c3_ble? esp32c6_ble? esp32s3_ble? = _ble

Enables std of ssmarshal and esp-idf-svc, esp32-nimble, and rmk-config

esp32-nimble:

Espressif dependencies

Affects ble::esp, nor_flash::esp_partition

_nrf_ble nrf52810_ble? nrf52811_ble? nrf52832_ble? nrf52833_ble? nrf52840_ble? = _ble

Enables embassy-nrf of rmk-config and embassy-nrf, nrf-softdevice, and once_cell

once_cell:

Optional dependencies
nRF dependencies

Affects ble::nrf