diff options
Diffstat (limited to 'keyboards/dumbpad/dumbpad.c')
| -rw-r--r-- | keyboards/dumbpad/dumbpad.c | 40 |
1 files changed, 36 insertions, 4 deletions
diff --git a/keyboards/dumbpad/dumbpad.c b/keyboards/dumbpad/dumbpad.c index b53856237..d9b649c71 100644 --- a/keyboards/dumbpad/dumbpad.c +++ b/keyboards/dumbpad/dumbpad.c | |||
| @@ -15,15 +15,49 @@ | |||
| 15 | */ | 15 | */ |
| 16 | #include "dumbpad.h" | 16 | #include "dumbpad.h" |
| 17 | 17 | ||
| 18 | void keyboard_pre_init_kb(void) { | ||
| 19 | // Set the layer LED IO as outputs | ||
| 20 | setPinOutput(LAYER_INDICATOR_LED_0); | ||
| 21 | setPinOutput(LAYER_INDICATOR_LED_1); | ||
| 22 | |||
| 23 | keyboard_pre_init_user(); | ||
| 24 | } | ||
| 25 | |||
| 26 | void shutdown_user() { | ||
| 27 | // Shutdown the layer LEDs | ||
| 28 | writePinLow(LAYER_INDICATOR_LED_0); | ||
| 29 | writePinLow(LAYER_INDICATOR_LED_1); | ||
| 30 | } | ||
| 31 | |||
| 32 | layer_state_t layer_state_set_kb(layer_state_t state) { | ||
| 33 | // Layer LEDs act as binary indication of current layer | ||
| 34 | uint8_t layer = biton32(state); | ||
| 35 | writePin(LAYER_INDICATOR_LED_0, layer & 0b1); | ||
| 36 | writePin(LAYER_INDICATOR_LED_1, (layer >> 1) & 0b1); | ||
| 37 | return layer_state_set_user(state); | ||
| 38 | } | ||
| 39 | |||
| 18 | // Optional override functions below. | 40 | // Optional override functions below. |
| 19 | // You can leave any or all of these undefined. | 41 | // You can leave any or all of these undefined. |
| 20 | // These are only required if you want to perform custom actions. | 42 | // These are only required if you want to perform custom actions. |
| 21 | 43 | ||
| 22 | /* | ||
| 23 | |||
| 24 | void matrix_init_kb(void) { | 44 | void matrix_init_kb(void) { |
| 25 | // put your keyboard start-up code here | 45 | // put your keyboard start-up code here |
| 26 | // runs once when the firmware starts up | 46 | // runs once when the firmware starts up |
| 47 | for (int i = 0; i < 2; i++) { | ||
| 48 | writePin(LAYER_INDICATOR_LED_0, true); | ||
| 49 | writePin(LAYER_INDICATOR_LED_1, false); | ||
| 50 | wait_ms(100); | ||
| 51 | writePin(LAYER_INDICATOR_LED_0, true); | ||
| 52 | writePin(LAYER_INDICATOR_LED_1, true); | ||
| 53 | wait_ms(100); | ||
| 54 | writePin(LAYER_INDICATOR_LED_0, false); | ||
| 55 | writePin(LAYER_INDICATOR_LED_1, true); | ||
| 56 | wait_ms(100); | ||
| 57 | writePin(LAYER_INDICATOR_LED_0, false); | ||
| 58 | writePin(LAYER_INDICATOR_LED_1, false); | ||
| 59 | wait_ms(100); | ||
| 60 | } | ||
| 27 | 61 | ||
| 28 | matrix_init_user(); | 62 | matrix_init_user(); |
| 29 | } | 63 | } |
| @@ -47,5 +81,3 @@ void led_set_kb(uint8_t usb_led) { | |||
| 47 | 81 | ||
| 48 | led_set_user(usb_led); | 82 | led_set_user(usb_led); |
| 49 | } | 83 | } |
| 50 | |||
| 51 | */ | ||
