zmk/app/boards/shields/cradio
Peter Johanson e0339a2a57 feat: Add shared layout .dtsi files to promote reuse.
* Add Corne and Ferris shared layouts, and update the respective
  shields to use them.
* Add a sample Hummingbird physical layout for testing posix xiao.
* Add Sofle physical layout as an additional reference.
2024-09-05 12:22:08 -06:00
..
Kconfig.defconfig
Kconfig.shield
README.md
cradio.conf
cradio.dtsi feat: Add shared layout .dtsi files to promote reuse. 2024-09-05 12:22:08 -06:00
cradio.keymap refactor(behaviors)!: Remove labels from behaviors 2023-12-04 20:06:54 -06:00
cradio.zmk.yml
cradio_left.conf
cradio_left.overlay
cradio_right.conf
cradio_right.overlay

README.md

Cradio

Cradio is a firmware for a few 34 key keyboards, including Cradio, Hypergolic and Sweep.

Pin arrangement

Some revisions of the aforementioned PCBs have slightly different pin arrangements compared to what's defined in cradio.dtsi. If you need to swap a few keys for your particular PCB, you can easily reorder the input-gpio definition in your own keymap file (i.e. in zmk-config/config/cradio.keymap):

/* Adjusted Cradio pin arrangement */
/* The position of Q and B keys have been swapped */
&kscan0 {
    input-gpios
    = <&pro_micro  6 (GPIO_ACTIVE_LOW | GPIO_PULL_UP)>
    , <&pro_micro 18 (GPIO_ACTIVE_LOW | GPIO_PULL_UP)>
    , <&pro_micro 19 (GPIO_ACTIVE_LOW | GPIO_PULL_UP)>
    , <&pro_micro 20 (GPIO_ACTIVE_LOW | GPIO_PULL_UP)>
    , <&pro_micro 21 (GPIO_ACTIVE_LOW | GPIO_PULL_UP)>
    , <&pro_micro 15 (GPIO_ACTIVE_LOW | GPIO_PULL_UP)>
    , <&pro_micro 14 (GPIO_ACTIVE_LOW | GPIO_PULL_UP)>
    , <&pro_micro 16 (GPIO_ACTIVE_LOW | GPIO_PULL_UP)>
    , <&pro_micro 10 (GPIO_ACTIVE_LOW | GPIO_PULL_UP)>
    , <&pro_micro  1 (GPIO_ACTIVE_LOW | GPIO_PULL_UP)>
    , <&pro_micro  2 (GPIO_ACTIVE_LOW | GPIO_PULL_UP)>
    , <&pro_micro  3 (GPIO_ACTIVE_LOW | GPIO_PULL_UP)>
    , <&pro_micro  4 (GPIO_ACTIVE_LOW | GPIO_PULL_UP)>
    , <&pro_micro  5 (GPIO_ACTIVE_LOW | GPIO_PULL_UP)>
    , <&pro_micro  7 (GPIO_ACTIVE_LOW | GPIO_PULL_UP)>
    , <&pro_micro  8 (GPIO_ACTIVE_LOW | GPIO_PULL_UP)>
    , <&pro_micro  9 (GPIO_ACTIVE_LOW | GPIO_PULL_UP)>
    ;
};

This &kscan0 block must be placed outside of any blocks surrounded by curly braces ({...}).