knob1.c (1482B)
1 // Copyright 2022 Leon Anavi <leon@anavi.org> 2 // SPDX-License-Identifier: GPL-2.0-or-later 3 4 #include "quantum.h" 5 #include <stdio.h> 6 7 void keyboard_post_init_kb(void) { 8 // Enable RGB LED 9 gpio_set_pin_output(GP11); 10 gpio_write_pin_high(GP11); 11 rgblight_enable(); 12 13 // Offload to the user func 14 keyboard_post_init_user(); 15 } 16 17 #ifdef OLED_ENABLE 18 19 bool oled_task_kb(void) { 20 21 if (!oled_task_user()) { 22 return false; 23 } 24 25 // Host Keyboard Layer Status 26 oled_write_ln_P(PSTR("ANAVI Knob 1"), false); 27 oled_write_ln_P(PSTR("Keymap: Default"), false); 28 29 // Host Keyboard LED Status 30 led_t led_state = host_keyboard_led_state(); 31 oled_write_P(PSTR("Num Lock: "), false); 32 oled_write_ln_P(led_state.num_lock ? PSTR("On") : PSTR("Off"), false); 33 oled_write_P(PSTR("Caps Lock: "), false); 34 oled_write_ln_P(led_state.caps_lock ? PSTR("On") : PSTR("Off"), false); 35 oled_write_P(PSTR("Scroll Lock: "), false); 36 oled_write_ln_P(led_state.scroll_lock ? PSTR("On") : PSTR("Off"), false); 37 #ifdef RGBLIGHT_ENABLE 38 static char rgbStatusLine1[26] = {0}; 39 snprintf(rgbStatusLine1, sizeof(rgbStatusLine1), "RGB Mode: %d", rgblight_get_mode()); 40 oled_write_ln(rgbStatusLine1, false); 41 static char rgbStatusLine2[26] = {0}; 42 snprintf(rgbStatusLine2, sizeof(rgbStatusLine2), "h:%d s:%d v:%d", rgblight_get_hue(), rgblight_get_sat(), rgblight_get_val()); 43 oled_write_ln(rgbStatusLine2, false); 44 #endif 45 return false; 46 } 47 #endif