]> git.donarmstrong.com Git - qmk_firmware.git/commitdiff
Keyboard: LED fixes for Kinesis Stapelberg controller, and keymap changes (#3564)
authorXyverz <xyverz@gmail.com>
Sat, 4 Aug 2018 16:01:26 +0000 (09:01 -0700)
committerDrashna Jaelre <drashna@live.com>
Sat, 4 Aug 2018 16:01:26 +0000 (09:01 -0700)
* Rules for vitamins_included

Added a section to disable RGB underglow for the Let's Split
   Vitamins Included board.

* fixing ortho_4x12 configs

* Using upstream/master version instead

* Additions and Corrections

Corrected the Kinesis/Stapelberg's .c file to allow LEDs to work
Removed excess cruft from my Kinesis keymap to reflect this change
Other minor tweaks and adjustments to my ortho_4x12 and 5x12 layouts

* Updated readme

keyboards/kinesis/keymaps/xyverz/keymap.c
keyboards/kinesis/keymaps/xyverz/readme.md
keyboards/kinesis/stapelberg/stapelberg.c
layouts/community/ortho_4x12/xyverz/config.h
layouts/community/ortho_5x12/xyverz/keymap.c
layouts/community/ortho_5x12/xyverz/rules.mk

index 533047b15688b9f6a51325f778b985ffa37d47ea..1025df07699ae9fab2788c5da346830b39c04cfc 100644 (file)
@@ -299,58 +299,6 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) {
     return true;
 };
 
-// getting the LEDs working...
-void led_set_user(uint8_t usb_led) {
-
-    DDRF |= (1<<0); // Keypad LED
-    if (usb_led & (1<<USB_LED_COMPOSE)) {
-        PORTF |= (1<<0);
-    } else {
-        PORTF &= ~(1<<0);
-    }
-
-    DDRF |= (1<<1); // ScrLock LED
-    if (usb_led & (1<<USB_LED_SCROLL_LOCK)) {
-        PORTF |= (1<<1);
-    } else {
-        PORTF &= ~(1<<1);
-    }
-
-    DDRF |= (1<<2); // NumLock LED
-    if (usb_led & (1<<USB_LED_NUM_LOCK)) {
-        PORTF |= (1<<2);
-    } else {
-        PORTF &= ~(1<<2);
-    }
-
-    DDRF |= (1<<3); // CapsLock LED
-    if (usb_led & (1<<USB_LED_CAPS_LOCK)) {
-        PORTF |= (1<<3);
-    } else {
-        PORTF &= ~(1<<3);
-    }
-
-}
-
 // Runs just one time when the keyboard initializes.
 void matrix_init_user(void) {
-
 };
-
-void led_set_user(uint8_t usb_led) {
-    if (usb_led & (1<<USB_LED_NUM_LOCK)) {
-        PORTF |= (1<<2);
-    } else {
-        PORTF &= ~(1<<2);
-    }
-    if (usb_led & (1<<USB_LED_CAPS_LOCK)) {
-        PORTF |= (1<<3);
-    } else {
-        PORTF &= ~(1<<3);
-    }
-    if (usb_led & (1<<USB_LED_SCROLL_LOCK)) {
-        PORTF |= (1<<1);
-    } else {
-        PORTF &= ~(1<<1);
-    }
-}
index 12320996edf48cceb49919f383c625ab47198c5c..4f270445d8486454109cd4190e0d36cc2e372fd9 100644 (file)
@@ -10,9 +10,11 @@ The QWERTY layout shown here is based entirely on the Kinesis Advantage layout.
 
 I've enabled persistent keymaps for Qwerty, Dvorak and Colemak layers, similar to the default Planck layouts.
 
+As of August 4 2018, I've got the LEDs working ... mostly. Caps Lock and Num Lock LEDs work for me. The Scroll Lock LED does work on my keyboard, but I can't get it to work when I use the Scroll Lock key on my keyboard. I also have no idea how to get the Num Pad LED working when I switch to the Numpad layer.
+
 ## Still to do:
 
- * Implement the CapsLock, NumLock, and ScrLck LEDs on the off-chance that I decide to actually solder some to the keyboard.
+ * Figure out how to make the Numpad and ScrLck LEDs work properly.
 
 ### Function Keys on All Layers (keypad toggles):
        ,-----------------------------------------------------------------.
index 94d15316df05cc130644fbc29ca7f86193b8f2de..af407ac4fc645d547d231b193c6b852eed5c7e6a 100644 (file)
@@ -27,65 +27,35 @@ bool process_record_kb(uint16_t keycode, keyrecord_t *record) {
 }
 
 void led_init_ports() {
-    // * Set our LED pins as output
-    DDRF |= (1<<0); // Keypad LED
-    DDRF |= (1<<1); // ScrLock LED
-    DDRF |= (1<<2); // NumLock LED
-    DDRF |= (1<<3); // CapsLock LED
+  // * Set our LED pins as output
+  DDRF |= (1<<0); // Keypad LED
+  DDRF |= (1<<1); // ScrLock LED
+  DDRF |= (1<<2); // NumLock LED
+  DDRF |= (1<<3); // CapsLock LED
 }
 
 void led_set_kb(uint8_t usb_led) {
-    DDRF |= (1<<0); // Keypad LED
-    if (usb_led & (1<<USB_LED_COMPOSE)) {
-        PORTF |= (1<<0);
-    } else {
-        PORTF &= ~(1<<0);
-    }
-
-    DDRF |= (1<<1); // ScrLock LED
-    if (usb_led & (1<<USB_LED_SCROLL_LOCK)) {
-        PORTF |= (1<<1);
-    } else {
-        PORTF &= ~(1<<1);
-    }
-
-    DDRF |= (1<<2); // NumLock LED
-    if (usb_led & (1<<USB_LED_NUM_LOCK)) {
-        PORTF |= (1<<2);
-    } else {
-        PORTF &= ~(1<<2);
-    }
-
-    DDRF |= (1<<3); // CapsLock LED
-    if (usb_led & (1<<USB_LED_CAPS_LOCK)) {
-        PORTF |= (1<<3);
-    } else {
-        PORTF &= ~(1<<3);
-    }
-
-       led_set_user(usb_led);
-
-inline void kinesis_keypad_led_on(void)    { DDRF |=  (1<<0); PORTF |=  (1<<0); }
-inline void kinesis_scroll_led_on(void)    { DDRF |=  (1<<1); PORTF |=  (1<<1); }
-inline void kinesis_num_led_on(void)    { DDRF |=  (1<<2); PORTF |=  (1<<2); }
-inline void kinesis_caps_led_on(void)    { DDRF |=  (1<<3); PORTF |=  (1<<3); }
-
-inline void kinesis_keypad_led_off(void)   { DDRF &= ~(1<<0); PORTF &= ~(1<<0); }
-inline void kinesis_scroll_led_off(void)   { DDRF &= ~(1<<1); PORTF &= ~(1<<1); }
-inline void kinesis_num_led_off(void)   { DDRF &= ~(1<<2); PORTF &= ~(1<<2); }
-inline void kinesis_caps_led_off(void)   { DDRF &= ~(1<<3); PORTF &= ~(1<<3); }
-
-
+  if (usb_led & (1<<USB_LED_COMPOSE)) {
+      PORTF &= ~(1<<0);
+  } else {
+      PORTF |= (1<<0);
+  }
+
+  if (usb_led & (1<<USB_LED_SCROLL_LOCK)) {
+      PORTF &= ~(1<<1);
+  } else {
+      PORTF |= (1<<1);
+  }
+
+  if (usb_led & (1<<USB_LED_NUM_LOCK)) {
+      PORTF &= ~(1<<2);
+  } else {
+      PORTF |= (1<<2);
+  }
+
+  if (usb_led & (1<<USB_LED_CAPS_LOCK)) {
+      PORTF &= ~(1<<3);
+  } else {
+      PORTF |= (1<<3);
+  }
 }
-
-/* This is the old code that has the port information in it.
-inline void kinesis_keypad_led_on(void)    { DDRF |=  (1<<0); PORTF |=  (1<<0); }
-inline void kinesis_scroll_led_on(void)    { DDRF |=  (1<<1); PORTF |=  (1<<1); }
-inline void kinesis_num_led_on(void)    { DDRF |=  (1<<2); PORTF |=  (1<<2); }
-inline void kinesis_caps_led_on(void)    { DDRF |=  (1<<3); PORTF |=  (1<<3); }
-
-inline void kinesis_keypad_led_off(void)   { DDRF &= ~(1<<0); PORTF &= ~(1<<0); }
-inline void kinesis_scroll_led_off(void)   { DDRF &= ~(1<<1); PORTF &= ~(1<<1); }
-inline void kinesis_num_led_off(void)   { DDRF &= ~(1<<2); PORTF &= ~(1<<2); }
-inline void kinesis_caps_led_off(void)   { DDRF &= ~(1<<3); PORTF &= ~(1<<3); }
-*/
index d2c32976778c7ce8916cf46ea584f1f0bab80cb6..0fa89d6c7bbcc6ca45049d9109aa82ff3c8d10a0 100644 (file)
   #define RGBLED_NUM 12
 #elif defined(KEYBOARD_lets_split_rev2)
   #define RGBLED_NUM 8
+#elif defined(KEYBOARD_jj40)
+  #define RGBLED_NUM 5
 #else
   #define RGBLED_NUM 1
 #endif
-#ifdef KEYBOARD_jj40
-  #define RGBLED_NUM 5
-#endif
 
 #define RGBLIGHT_ANIMATIONS
 #define RGBLIGHT_HUE_STEP 8
index a0f1274d0109779b4a8c12ec33c0eabedc3de1b6..23a456e6d6d48241551544a91c86c22c58726097 100644 (file)
@@ -175,6 +175,16 @@ void persistent_default_layer_set(uint16_t default_layer) {
   default_layer_set(default_layer);
 }
 
+void matrix_init_user(void) {
+#ifdef BOOTLOADER_CATERINA
+   // This will disable the red LEDs on the ProMicros
+   DDRD &= ~(1<<5);
+   PORTD &= ~(1<<5);
+   DDRB &= ~(1<<0);
+   PORTB &= ~(1<<0);
+#endif
+};
+
 bool process_record_user(uint16_t keycode, keyrecord_t *record) {
   switch (keycode) {
     case QWERTY:
index 44bbc61e5e079bb770c95810f38cef1212e03932..63c544ad579ae1a1f58b1762bdabdb290bfc61a7 100644 (file)
@@ -1,5 +1,5 @@
 # Build Options
-#   change to "no" to disable the options, or define them in the Makefile in 
+#   change to "no" to disable the options, or define them in the Makefile in
 #   the appropriate keymap folder that will get included automatically
 #
 BOOTMAGIC_ENABLE = no       # Virtual DIP switch configuration(+1000)
@@ -7,12 +7,18 @@ MOUSEKEY_ENABLE = no        # Mouse keys(+4700)
 EXTRAKEY_ENABLE = yes       # Audio control and System control(+450)
 CONSOLE_ENABLE = no         # Console for debug(+400)
 COMMAND_ENABLE = no         # Commands for debug and configuration
-BACKLIGHT_ENABLE = yes      # Enable keyboard backlight functionality
 MIDI_ENABLE = no            # MIDI controls
 AUDIO_ENABLE = no           # Audio output on port C6
 UNICODE_ENABLE = no         # Unicode
 BLUETOOTH_ENABLE = no       # Enable Bluetooth with the Adafruit EZ-Key HID
-RGBLIGHT_ENABLE = yes       # Enable WS2812 RGB underlight.  Do not enable this with audio at the same time.
+
+ifneq ("$(KEYBOARD)","nyquist")
+  RGBLIGHT_ENABLE = yes
+  BACKLIGHT_ENABLE = yes
+else
+  RGBLIGHT_ENABLE = no
+  BACKLIGHT_ENABLE = no
+endif
 
 # Do not enable SLEEP_LED_ENABLE. it uses the same timer as BACKLIGHT_ENABLE
 SLEEP_LED_ENABLE = no       # Breathing sleep LED during USB suspend