qmk_firmware

QMK firmware for my keyboards (Corne, Sweep Ferris) and trackball (Ploopy Adept)
Log | Files | Refs | Submodules | LICENSE

idb_60.c (990B)


      1 #include "idb_60.h"
      2 
      3 void keyboard_pre_init_kb(void) {
      4     gpio_set_pin_output(C4);
      5     gpio_set_pin_output(C5);
      6 
      7     keyboard_pre_init_user();
      8 }
      9 
     10 inline void _idb_60_caps_led_on(void) {
     11     gpio_write_pin_low(C5);
     12 }
     13 
     14 inline void _idb_60_fn_led_on(void) {
     15     gpio_write_pin_low(C4);
     16 }
     17 
     18 inline void _idb_60_caps_led_off(void) {
     19     gpio_write_pin_high(C5);
     20 }
     21 
     22 inline void _idb_60_fn_led_off(void) {
     23     gpio_write_pin_high(C4);
     24 }
     25 
     26 // Capslock LED indicator
     27 
     28 bool led_update_kb(led_t led_state) {
     29     bool res = led_update_user(led_state);
     30     if (res) {
     31         if (led_state.caps_lock) {
     32             _idb_60_caps_led_on();
     33         } else {
     34             _idb_60_caps_led_off();
     35         }
     36     }
     37     return res;
     38 }
     39 
     40 // Layer LED indicator - drive LED when not on base layer
     41 
     42 __attribute__((weak)) layer_state_t layer_state_set_user(layer_state_t state) {
     43     if (get_highest_layer(state) == 0) {
     44         _idb_60_fn_led_off();
     45     } else {
     46         _idb_60_fn_led_on();
     47     }
     48     return state;
     49 }