You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
Peter Johanson 2b9a0ce2a5 refactor(shields): Move to generic central role config. 2 years ago
..
Kconfig.defconfig refactor(shields): Move to generic central role config. 2 years ago
Kconfig.shield fix(shields): Proper cradio Kconfig setup. 4 years ago
README.md fix(shields): Add note about Cradio pin arrangement 3 years ago
cradio.conf fix(shields): Cradio v2 keymap/shield improvements 3 years ago
cradio.dtsi feat(boards): Remove usage of pro_micro_a/d nodes 3 years ago
cradio.keymap fix(shields): Cradio v2 keymap/shield improvements 3 years ago
cradio.zmk.yml refactor(shields): Add pro-micro shield metadata. 3 years ago
cradio_left.conf refactor(splits): Ability to override split role. 4 years ago
cradio_left.overlay fix(shields): Cradio v2 keymap/shield improvements 3 years ago
cradio_right.conf fix(shields): Cradio v2 keymap/shield improvements 3 years ago
cradio_right.overlay fix(shields): Cradio v2 keymap/shield improvements 3 years ago

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_d  6 (GPIO_ACTIVE_LOW | GPIO_PULL_UP)>
	, <&pro_micro_a  0 (GPIO_ACTIVE_LOW | GPIO_PULL_UP)>
	, <&pro_micro_a  1 (GPIO_ACTIVE_LOW | GPIO_PULL_UP)>
	, <&pro_micro_a  2 (GPIO_ACTIVE_LOW | GPIO_PULL_UP)>
	, <&pro_micro_a  3 (GPIO_ACTIVE_LOW | GPIO_PULL_UP)>
	, <&pro_micro_d 15 (GPIO_ACTIVE_LOW | GPIO_PULL_UP)>
	, <&pro_micro_d 14 (GPIO_ACTIVE_LOW | GPIO_PULL_UP)>
	, <&pro_micro_d 16 (GPIO_ACTIVE_LOW | GPIO_PULL_UP)>
	, <&pro_micro_d 10 (GPIO_ACTIVE_LOW | GPIO_PULL_UP)>
	, <&pro_micro_d  1 (GPIO_ACTIVE_LOW | GPIO_PULL_UP)>
	, <&pro_micro_d  2 (GPIO_ACTIVE_LOW | GPIO_PULL_UP)>
	, <&pro_micro_d  3 (GPIO_ACTIVE_LOW | GPIO_PULL_UP)>
	, <&pro_micro_d  4 (GPIO_ACTIVE_LOW | GPIO_PULL_UP)>
	, <&pro_micro_d  5 (GPIO_ACTIVE_LOW | GPIO_PULL_UP)>
	, <&pro_micro_d  7 (GPIO_ACTIVE_LOW | GPIO_PULL_UP)>
	, <&pro_micro_d  8 (GPIO_ACTIVE_LOW | GPIO_PULL_UP)>
	, <&pro_micro_d  9 (GPIO_ACTIVE_LOW | GPIO_PULL_UP)>
	;
};

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