logo

qmk_firmware

custom branch of QMK firmware git clone https://anongit.hacktivis.me/git/qmk_firmware.git

knob1.c (1482B)


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