#include <dt-bindings/zmk/keys.h>

/ {
	chosen {
		zmk,keymap = &keymap0;
		zmk,kscan = &kscan0;
	};

	layers {
		compatible = "zmk,layers";

		default: layer_0 {
			label = "Default";
			keys =
	<
	KC_A KC_B
	KC_C ZC_CSTM(1)
	>;
		};

		lower: layer_1 {
			label = "Lower";
			keys = <KC_D KC_C KC_B KC_A>;
		};

		raise: layer_2 {
			label = "Raise";
			keys = <KC_C KC_D KC_A KC_B>;
		};
	};

	keymap0: keymap {
		compatible = "zmk,keymap";

		label ="Default keymap";
		layers = <&default &lower &raise>;
	};

	kscan0: kscan {
		compatible = "gpio-kscan";
		label = "KSCAN";

		diode-direction = "row2col";
		row-gpios = <&arduino_header 8 (GPIO_ACTIVE_LOW | GPIO_PULL_UP)>,
		            <&arduino_header 10 (GPIO_ACTIVE_LOW | GPIO_PULL_UP)>;
		col-gpios = <&arduino_header 13 (GPIO_ACTIVE_LOW | GPIO_PULL_UP)>,
		            <&arduino_header 14 (GPIO_ACTIVE_LOW | GPIO_PULL_UP)>;
	};
};