aboutsummaryrefslogtreecommitdiff
path: root/keyboards/dumbpad/v1x/v1x.c
diff options
context:
space:
mode:
Diffstat (limited to 'keyboards/dumbpad/v1x/v1x.c')
-rw-r--r--keyboards/dumbpad/v1x/v1x.c55
1 files changed, 40 insertions, 15 deletions
diff --git a/keyboards/dumbpad/v1x/v1x.c b/keyboards/dumbpad/v1x/v1x.c
index 1022ad0605..3fec6cb7e6 100644
--- a/keyboards/dumbpad/v1x/v1x.c
+++ b/keyboards/dumbpad/v1x/v1x.c
@@ -17,9 +17,9 @@
void keyboard_pre_init_kb(void) {
// Set LED IO as outputs
- setPinOutput(LED_00);
- setPinOutput(LED_01);
- setPinOutput(LED_02);
+ gpio_set_pin_output(LED_00);
+ gpio_set_pin_output(LED_01);
+ gpio_set_pin_output(LED_02);
keyboard_pre_init_user();
}
@@ -28,17 +28,17 @@ bool shutdown_kb(bool jump_to_bootloader) {
return false;
}
// Shutdown LEDs
- writePinLow(LED_00);
- writePinLow(LED_01);
- writePinLow(LED_02);
+ gpio_write_pin_low(LED_00);
+ gpio_write_pin_low(LED_01);
+ gpio_write_pin_low(LED_02);
return true;
}
layer_state_t layer_state_set_kb(layer_state_t state) {
// Layer LEDs act as binary indication of current layer
uint8_t layer = get_highest_layer(state);
- writePin(LED_00, layer & 0b1);
- writePin(LED_01, (layer >> 1) & 0b1);
+ gpio_write_pin(LED_00, layer & 0b1);
+ gpio_write_pin(LED_01, (layer >> 1) & 0b1);
return layer_state_set_user(state);
}
@@ -51,13 +51,13 @@ void matrix_init_kb(void) {
// runs once when the firmware starts up
uint8_t led_delay_ms = 80;
for (int i = 0; i < 2; i++) {
- writePinHigh(LED_00);
- writePinHigh(LED_01);
- writePinHigh(LED_02);
+ gpio_write_pin_high(LED_00);
+ gpio_write_pin_high(LED_01);
+ gpio_write_pin_high(LED_02);
wait_ms(led_delay_ms);
- writePinLow(LED_00);
- writePinLow(LED_01);
- writePinLow(LED_02);
+ gpio_write_pin_low(LED_00);
+ gpio_write_pin_low(LED_01);
+ gpio_write_pin_low(LED_02);
if (i < 1) {
wait_ms(led_delay_ms);
}
@@ -69,7 +69,32 @@ void matrix_init_kb(void) {
bool led_update_kb(led_t led_state) {
bool res = led_update_user(led_state);
if(res) {
- writePin(LED_02, !led_state.num_lock);
+ gpio_write_pin(LED_02, !led_state.num_lock);
}
return res;
}
+
+bool encoder_update_kb(uint8_t index, bool clockwise) {
+ if (!encoder_update_user(index, clockwise)) { return false; }
+
+ if (index == 0) {
+ switch (get_highest_layer(layer_state)) {
+ case 0:
+ if (clockwise) {
+ tap_code(KC_MS_R);
+ } else {
+ tap_code(KC_MS_L);
+ }
+ break;
+
+ default:
+ if (clockwise) {
+ tap_code(KC_EQL);
+ } else {
+ tap_code(KC_MINS);
+ }
+ break;
+ }
+ }
+ return true;
+}