~ruther/qmk_firmware

adfd34c4512f6215a49a8f705ce408d6c82fb8cc — Joel Challis 4 years ago 3c156e1
Refactor to use led config - Part 2 (#10906)

* Refactor to use led config

* Refactor to use led config

* Refactor to use led config
M keyboards/bpiphany/kitten_paw/config.h => keyboards/bpiphany/kitten_paw/config.h +6 -1
@@ 47,7 47,12 @@ along with this program.  If not, see <http://www.gnu.org/licenses/>.

/* COL2ROW or ROW2COL */
#define DIODE_DIRECTION COL2ROW
 

#define LED_NUM_LOCK_PIN B7
#define LED_CAPS_LOCK_PIN C6
#define LED_SCROLL_LOCK_PIN C5
#define LED_PIN_ON_STATE 0

// #define BACKLIGHT_PIN B7
// #define BACKLIGHT_BREATHING
// #define BACKLIGHT_LEVELS 3

M keyboards/bpiphany/kitten_paw/kitten_paw.c => keyboards/bpiphany/kitten_paw/kitten_paw.c +0 -50
@@ 1,51 1,1 @@
#include "kitten_paw.h"

void matrix_init_kb(void) {
	// put your keyboard start-up code here
	// runs once when the firmware starts up

	matrix_init_user();
}

void matrix_scan_kb(void) {
	// put your looping keyboard code here
	// runs every cycle (a lot)

    matrix_scan_user();
}

__attribute__ ((weak))
void matrix_init_user(void) {
}

__attribute__ ((weak))
void matrix_scan_user(void) {
}

bool process_record_kb(uint16_t keycode, keyrecord_t *record) {
	// put your per-action keyboard code here
	// runs for every action, just before processing by the firmware

	return process_record_user(keycode, record);
}

void led_set_kb(uint8_t usb_led) {
	// put your keyboard LED indicator (ex: Caps Lock LED) toggling code here
    CONFIG_LED_IO;
    CONFIG_LED_IO;
    print_dec(usb_led);
    if (usb_led & (1<<USB_LED_CAPS_LOCK))
        USB_LED_CAPS_LOCK_ON;
    else
        USB_LED_CAPS_LOCK_OFF;

    if (usb_led & (1<<USB_LED_NUM_LOCK))
        USB_LED_NUM_LOCK_ON;
    else
        USB_LED_NUM_LOCK_OFF;
    if (usb_led & (1<<USB_LED_SCROLL_LOCK))
        USB_LED_SCROLL_LOCK_ON;
    else
        USB_LED_SCROLL_LOCK_OFF;
	led_set_user(usb_led);
}

M keyboards/bpiphany/kitten_paw/kitten_paw.h => keyboards/bpiphany/kitten_paw/kitten_paw.h +0 -11
@@ 3,17 3,6 @@

#include "quantum.h"

#define CONFIG_LED_IO \
  DDRB |= (1<<7); \
  DDRC |= (1<<5) | (1<<6);

#define USB_LED_CAPS_LOCK_ON    PORTC &= ~(1<<6)
#define USB_LED_CAPS_LOCK_OFF   PORTC |=  (1<<6)
#define USB_LED_NUM_LOCK_ON     PORTB &= ~(1<<7)
#define USB_LED_NUM_LOCK_OFF    PORTB |=  (1<<7)
#define USB_LED_SCROLL_LOCK_ON  PORTC &= ~(1<<5)
#define USB_LED_SCROLL_LOCK_OFF PORTC |=  (1<<5)

// This a shortcut to help you visually see your layout.
// The first section contains all of the arguements
// The second converts the arguments into a two-dimensional array

M keyboards/bpiphany/tiger_lily/config.h => keyboards/bpiphany/tiger_lily/config.h +5 -0
@@ 44,6 44,11 @@ along with this program.  If not, see <http://www.gnu.org/licenses/>.
 */
#define UNUSED_PINS { B0, C4, D3 }

#define LED_NUM_LOCK_PIN C5
#define LED_CAPS_LOCK_PIN C6
#define LED_SCROLL_LOCK_PIN B7
#define LED_PIN_ON_STATE 0

/* Debounce reduces chatter (unintended double-presses) - set 0 if debouncing is not needed */
#define DEBOUNCE 5


M keyboards/bpiphany/tiger_lily/tiger_lily.c => keyboards/bpiphany/tiger_lily/tiger_lily.c +0 -62
@@ 1,63 1,1 @@
#include "tiger_lily.h"

void matrix_init_kb(void) {
    // put your keyboard start-up code here
    // runs once when the firmware starts up

    matrix_init_user();
}

void matrix_scan_kb(void) {
    // put your looping keyboard code here
    // runs every cycle (a lot)

    matrix_scan_user();
}

bool process_record_kb(uint16_t keycode, keyrecord_t *record) {
    // put your per-action keyboard code here
    // runs for every action, just before processing by the firmware

    return process_record_user(keycode, record);
}

void led_set_kb(uint8_t usb_led) {
    DDRB |= (1<<7);
    DDRC |= (1<<5) | (1<<6);

    print_dec(usb_led);

    if (usb_led & (1<<USB_LED_NUM_LOCK))
        PORTC &= ~(1<<5);
    else
        PORTC |=  (1<<5);

    if (usb_led & (1<<USB_LED_SCROLL_LOCK))
        PORTB &= ~(1<<7);
    else
        PORTB |=  (1<<7);

    if (usb_led & (1<<USB_LED_CAPS_LOCK))
        PORTC &= ~(1<<6);
    else
        PORTC |=  (1<<6);

    led_set_user(usb_led);
}

__attribute__ ((weak))
void matrix_init_user(void) {
}

__attribute__ ((weak))
void matrix_scan_user(void) {
}

__attribute__ ((weak))
bool process_record_user(uint16_t keycode, keyrecord_t *record) {
  return true;
}

__attribute__ ((weak))
void led_set_user(uint8_t usb_led) {
}
\ No newline at end of file

M keyboards/bpiphany/unloved_bastard/config.h => keyboards/bpiphany/unloved_bastard/config.h +5 -0
@@ 35,6 35,11 @@ along with this program.  If not, see <http://www.gnu.org/licenses/>.
/* Debounce reduces chatter (unintended double-presses) - set 0 if debouncing is not needed */
#define DEBOUNCE 5

#define LED_NUM_LOCK_PIN B7
#define LED_CAPS_LOCK_PIN C5
#define LED_SCROLL_LOCK_PIN C6
#define LED_PIN_ON_STATE 0

/* define if matrix has ghost (lacks anti-ghosting diodes) */
//#define MATRIX_HAS_GHOST


M keyboards/bpiphany/unloved_bastard/unloved_bastard.c => keyboards/bpiphany/unloved_bastard/unloved_bastard.c +0 -54
@@ 14,57 14,3 @@
 * along with this program.  If not, see <http://www.gnu.org/licenses/>.
 */
#include "unloved_bastard.h"

void matrix_init_kb(void) {
	// put your keyboard start-up code here
	// runs once when the firmware starts up
	led_init_ports();
	matrix_init_user();
}

void matrix_scan_kb(void) {
	// put your looping keyboard code here
	// runs every cycle (a lot)

	matrix_scan_user();
}

bool process_record_kb(uint16_t keycode, keyrecord_t *record) {
    // put your per-action keyboard code here
    // runs for every action, just before processing by the firmware
    return process_record_user(keycode, record);
}

// C5 left
// C6 middle led
// B7 right led
void led_init_ports(void) {
    DDRB |= (1<<7);
    DDRC |= (1<<5);
    DDRC |= (1<<6);

    PORTB |= (1<<7);
    PORTC |= (1<<5);
    PORTC |= (1<<6);
}


void led_set_kb(uint8_t usb_led) {

    if (usb_led & (1<<USB_LED_CAPS_LOCK))
        PORTC &= ~(1<<5);
    else
        PORTC |=  (1<<5);

    if (usb_led & (1<<USB_LED_NUM_LOCK))
        PORTB &= ~(1<<7);
    else
        PORTB |=  (1<<7);

    if (usb_led & (1<<USB_LED_SCROLL_LOCK))
        PORTC &= ~(1<<6);
    else
        PORTC |=  (1<<6);

    led_set_user(usb_led);
}

M keyboards/gray_studio/space65/config.h => keyboards/gray_studio/space65/config.h +2 -4
@@ 48,10 48,8 @@ along with this program.  If not, see <http://www.gnu.org/licenses/>.
/* COL2ROW, ROW2COL*/
#define DIODE_DIRECTION COL2ROW

/*
 * Split Keyboard specific options, make sure you have 'SPLIT_KEYBOARD = yes' in your rules.mk, and define SOFT_SERIAL_PIN.
 */
#define SOFT_SERIAL_PIN D0 // or D1, D2, D3, E6
#define LED_CAPS_LOCK_PIN E6
#define LED_PIN_ON_STATE 0

#define BACKLIGHT_PIN B7
#define BACKLIGHT_BREATHING

M keyboards/gray_studio/space65/space65.c => keyboards/gray_studio/space65/space65.c +0 -33
@@ 14,36 14,3 @@
 * along with this program.  If not, see <http://www.gnu.org/licenses/>.
 */
#include "space65.h"

void matrix_init_kb(void) {
	// put your keyboard start-up code here
	// runs once when the firmware starts up

	setPinOutput(E6);
	matrix_init_user();
}

void matrix_scan_kb(void) {
	// put your looping keyboard code here
	// runs every cycle (a lot)

	matrix_scan_user();
}

bool process_record_kb(uint16_t keycode, keyrecord_t *record) {
	// put your per-action keyboard code here
	// runs for every action, just before processing by the firmware

	return process_record_user(keycode, record);
}

void led_set_kb(uint8_t usb_led) {
	// put your keyboard LED indicator (ex: Caps Lock LED) toggling code here
  if (IS_LED_ON(usb_led, USB_LED_CAPS_LOCK)) {
    writePinLow(E6);
  } else {
    writePinHigh(E6);
  }

	led_set_user(usb_led);
}

M keyboards/gray_studio/think65/hotswap/config.h => keyboards/gray_studio/think65/hotswap/config.h +5 -0
@@ 46,6 46,11 @@ along with this program.  If not, see <http://www.gnu.org/licenses/>.

#define DIODE_DIRECTION COL2ROW

#define LED_NUM_LOCK_PIN C6
#define LED_CAPS_LOCK_PIN C7
#define LED_SCROLL_LOCK_PIN F7
#define LED_PIN_ON_STATE 0

#define RGB_DI_PIN E2
#ifdef RGB_DI_PIN
    #define RGBLED_NUM 22

M keyboards/gray_studio/think65/hotswap/hotswap.c => keyboards/gray_studio/think65/hotswap/hotswap.c +0 -55
@@ 14,58 14,3 @@
 * along with this program.  If not, see <http://www.gnu.org/licenses/>.
 */
#include "hotswap.h"

// Optional override functions below.
// You can leave any or all of these undefined.
// These are only required if you want to perform custom actions.


void matrix_init_kb(void) {
  // put your keyboard start-up code here
  // runs once when the firmware starts up

  setPinOutput(C6);
  setPinOutput(C7);
  setPinOutput(F7);
  
  matrix_init_user();
}

void matrix_scan_kb(void) {
  // put your looping keyboard code here
  // runs every cycle (a lot)

  matrix_scan_user();
}

bool process_record_kb(uint16_t keycode, keyrecord_t *record) {
  // put your per-action keyboard code here
  // runs for every action, just before processing by the firmware

  return process_record_user(keycode, record);
}

void led_set_kb(uint8_t usb_led) {
  // put your keyboard LED indicator (ex: Caps Lock LED) toggling code here

  if (IS_LED_ON(usb_led, USB_LED_CAPS_LOCK)) {
    writePinLow(C7);
  } else {
    writePinHigh(C7);
  }

  if (IS_LED_ON(usb_led, USB_LED_NUM_LOCK)) {
    writePinLow(C6);
  } else {
    writePinHigh(C6);
  }

  if (IS_LED_ON(usb_led, USB_LED_SCROLL_LOCK)) {
    writePinLow(F7);
  } else {
    writePinHigh(F7);
  }

  led_set_user(usb_led);
}


M keyboards/kbdfans/kbd19x/config.h => keyboards/kbdfans/kbd19x/config.h +5 -0
@@ 47,6 47,11 @@ along with this program.  If not, see <http://www.gnu.org/licenses/>.

/* COL2ROW, ROW2COL*/
#define DIODE_DIRECTION COL2ROW

#define LED_NUM_LOCK_PIN B2
#define LED_CAPS_LOCK_PIN B0
#define LED_SCROLL_LOCK_PIN B1

#define BACKLIGHT_PIN B6
#ifdef BACKLIGHT_PIN
#define BACKLIGHT_LEVELS 3

M keyboards/kbdfans/kbd19x/kbd19x.c => keyboards/kbdfans/kbd19x/kbd19x.c +0 -54
@@ 16,57 16,3 @@ along with this program.  If not, see <http://www.gnu.org/licenses/>.
*/

#include "kbd19x.h"

extern inline void kbd19x_caps_led_on(void);
extern inline void kbd19x_caps_led_off(void);

extern inline void kbd19x_sclk_led_on(void);
extern inline void kbd19x_sclk_led_off(void);

extern inline void kbd19x_nmlk_led_on(void);
extern inline void kbd19x_nmlk_led_off(void);

void matrix_init_kb(void) {
	// put your keyboard start-up code here
	// runs once when the firmware starts up

	matrix_init_user();
}

void matrix_scan_kb(void) {
	// put your looping keyboard code here
	// runs every cycle (a lot)

	matrix_scan_user();
}

bool process_record_kb(uint16_t keycode, keyrecord_t *record) {
	// put your per-action keyboard code here
	// runs for every action, just before processing by the firmware

	return process_record_user(keycode, record);
}

void led_set_kb(uint8_t usb_led) {
	// put your keyboard LED indicator (ex: Caps Lock LED) toggling code here

  if (usb_led & (1<<USB_LED_NUM_LOCK)) {
    kbd19x_nmlk_led_on();
  } else {
    kbd19x_nmlk_led_off();
  }

  if (usb_led & (1<<USB_LED_CAPS_LOCK)) {
    kbd19x_caps_led_on();
  } else {
    kbd19x_caps_led_off();
  }

  if (usb_led & (1<<USB_LED_SCROLL_LOCK)) {
    kbd19x_sclk_led_on();
  } else {
    kbd19x_sclk_led_off();
  }

  led_set_user(usb_led);
}

M keyboards/kbdfans/kbd19x/kbd19x.h => keyboards/kbdfans/kbd19x/kbd19x.h +6 -6
@@ 20,14 20,14 @@ along with this program.  If not, see <http://www.gnu.org/licenses/>.
#include "quantum.h"
#include "led.h"

inline void kbd19x_caps_led_on(void)    { DDRB |=  (1<<0); PORTB &= ~(1<<0); }
inline void kbd19x_caps_led_off(void)   { DDRB &= ~(1<<0); PORTB &= ~(1<<0); }
inline void kbd19x_caps_led_on(void)    { writePinHigh(LED_CAPS_LOCK_PIN); }
inline void kbd19x_caps_led_off(void)   { writePinLow(LED_CAPS_LOCK_PIN); }

inline void kbd19x_sclk_led_on(void)    { DDRB |=  (1<<1); PORTB &= ~(1<<1); }
inline void kbd19x_sclk_led_off(void)   { DDRB &= ~(1<<1); PORTB &= ~(1<<1); }
inline void kbd19x_sclk_led_on(void)    { writePinHigh(LED_SCROLL_LOCK_PIN); }
inline void kbd19x_sclk_led_off(void)   { writePinLow(LED_SCROLL_LOCK_PIN); }

inline void kbd19x_nmlk_led_on(void)    { DDRB |=  (1<<2); PORTB &= ~(1<<2); }
inline void kbd19x_nmlk_led_off(void)   { DDRB &= ~(1<<2); PORTB &= ~(1<<2); }
inline void kbd19x_nmlk_led_on(void)    { writePinHigh(LED_NUM_LOCK_PIN); }
inline void kbd19x_nmlk_led_off(void)   { writePinLow(LED_NUM_LOCK_PIN); }

// readability
#define XXX KC_NO

M keyboards/kbdfans/kbd67/rev1/config.h => keyboards/kbdfans/kbd67/rev1/config.h +2 -0
@@ 48,6 48,8 @@ along with this program.  If not, see <http://www.gnu.org/licenses/>.
/* COL2ROW, ROW2COL*/
#define DIODE_DIRECTION COL2ROW

#define LED_CAPS_LOCK_PIN B2

#define BACKLIGHT_PIN B6
#ifdef BACKLIGHT_PIN
#define BACKLIGHT_BREATHING

M keyboards/kbdfans/kbd67/rev1/rev1.c => keyboards/kbdfans/kbd67/rev1/rev1.c +0 -35
@@ 14,38 14,3 @@
 * along with this program.  If not, see <http://www.gnu.org/licenses/>.
 */
#include "rev1.h"

void matrix_init_kb(void) {
	// put your keyboard start-up code here
	// runs once when the firmware starts up

	matrix_init_user();
}

void matrix_scan_kb(void) {
	// put your looping keyboard code here
	// runs every cycle (a lot)

	matrix_scan_user();
}

bool process_record_kb(uint16_t keycode, keyrecord_t *record) {
	// put your per-action keyboard code here
	// runs for every action, just before processing by the firmware

	return process_record_user(keycode, record);
}

void led_set_kb(uint8_t usb_led) {
	// put your keyboard LED indicator (ex: Caps Lock LED) toggling code here

  if (usb_led & (1 << USB_LED_CAPS_LOCK)) {
		DDRB |= (1 << 2);
		PORTB &= ~(1 << 2);
	} else {
		DDRB &= ~(1 << 2);
		PORTB &= ~(1 << 2);
	}

	led_set_user(usb_led);
}

M keyboards/kbdfans/kbd6x/config.h => keyboards/kbdfans/kbd6x/config.h +3 -0
@@ 47,6 47,9 @@ along with this program.  If not, see <http://www.gnu.org/licenses/>.

/* COL2ROW, ROW2COL*/
#define DIODE_DIRECTION COL2ROW

#define LED_CAPS_LOCK_PIN B6

#define BACKLIGHT_PIN B7
#ifdef BACKLIGHT_PIN
#define BACKLIGHT_BREATHING

M keyboards/kbdfans/kbd6x/kbd6x.c => keyboards/kbdfans/kbd6x/kbd6x.c +0 -33
@@ 14,36 14,3 @@
 * along with this program.  If not, see <http://www.gnu.org/licenses/>.
 */
#include "kbd6x.h"

void matrix_init_kb(void) {
	// put your keyboard start-up code here
	// runs once when the firmware starts up

	matrix_init_user();
}

void matrix_scan_kb(void) {
	// put your looping keyboard code here
	// runs every cycle (a lot)

	matrix_scan_user();
}

bool process_record_kb(uint16_t keycode, keyrecord_t *record) {
	// put your per-action keyboard code here
	// runs for every action, just before processing by the firmware

	return process_record_user(keycode, record);
}

void led_set_kb(uint8_t usb_led) {
	if (usb_led & (1 << USB_LED_CAPS_LOCK)) {
		DDRB |= (1 << 6); 
		PORTB &= ~(1 << 6);
	} else {
		DDRB &= ~(1 << 6); 
		PORTB &= ~(1 << 6);
	}
	
	led_set_user(usb_led);
}
\ No newline at end of file

M keyboards/kbdfans/kbd75/config.h => keyboards/kbdfans/kbd75/config.h +3 -0
@@ 20,6 20,9 @@
/* COL2ROW or ROW2COL */
#define DIODE_DIRECTION COL2ROW

#define LED_CAPS_LOCK_PIN B2
#define LED_PIN_ON_STATE 0

/* number of backlight levels */
#define BACKLIGHT_PIN B6
#ifdef BACKLIGHT_PIN

M keyboards/kbdfans/kbd75/rev1/rev1.c => keyboards/kbdfans/kbd75/rev1/rev1.c +0 -16
@@ 1,17 1,1 @@
#include "rev1.h"

void led_set_kb(uint8_t usb_led) {
  // put your keyboard LED indicator (ex: Caps Lock LED) toggling code here
  if (IS_LED_ON(usb_led, USB_LED_CAPS_LOCK)) {
    writePinLow(B2);
  } else {
    writePinHigh(B2);
  }

  led_set_user(usb_led);
}

void matrix_init_kb(void) {
  setPinOutput(B2);
  matrix_init_user();
}

M keyboards/kbdfans/kbd75/rev2/rev2.c => keyboards/kbdfans/kbd75/rev2/rev2.c +0 -16
@@ 1,17 1,1 @@
#include "rev2.h"

void led_set_kb(uint8_t usb_led) {
  // put your keyboard LED indicator (ex: Caps Lock LED) toggling code here
  if (IS_LED_ON(usb_led, USB_LED_CAPS_LOCK)) {
    writePinLow(B2);
  } else {
    writePinHigh(B2);
  }

  led_set_user(usb_led);
}

void matrix_init_kb(void) {
  setPinOutput(B2);
  matrix_init_user();
}

M keyboards/kbdfans/kbd8x/config.h => keyboards/kbdfans/kbd8x/config.h +5 -0
@@ 47,6 47,11 @@ along with this program.  If not, see <http://www.gnu.org/licenses/>.

/* COL2ROW, ROW2COL*/
#define DIODE_DIRECTION COL2ROW

#define LED_NUM_LOCK_PIN B1
#define LED_CAPS_LOCK_PIN B3
#define LED_SCROLL_LOCK_PIN B2

#define BACKLIGHT_PIN B6
#ifdef BACKLIGHT_PIN
#define BACKLIGHT_BREATHING

M keyboards/kbdfans/kbd8x/kbd8x.c => keyboards/kbdfans/kbd8x/kbd8x.c +0 -55
@@ 15,58 15,3 @@
 */

#include "kbd8x.h"

extern inline void caps_led_off(void);
extern inline void caps_led_on(void);
extern inline void num_led_off(void);
extern inline void num_led_on(void);
extern inline void scroll_led_off(void);
extern inline void scroll_led_on(void);

void matrix_init_kb(void) {
	// put your keyboard start-up code here
	// runs once when the firmware starts up

	matrix_init_user();
}

void matrix_scan_kb(void) {
	// put your looping keyboard code here
	// runs every cycle (a lot)

	matrix_scan_user();
}

bool process_record_kb(uint16_t keycode, keyrecord_t *record) {
	// put your per-action keyboard code here
	// runs for every action, just before processing by the firmware

	return process_record_user(keycode, record);
}

void led_set_kb(uint8_t usb_led) {
	// put your keyboard LED indicator (ex: Caps Lock LED) toggling code here

  if(usb_led & (1<<USB_LED_NUM_LOCK))
    {
        num_led_on();
    } else {
        num_led_off();
    }

    if(usb_led & (1<<USB_LED_CAPS_LOCK))
    {
        caps_led_on();
    } else {
        caps_led_off();
    }

    if(usb_led & (1<<USB_LED_SCROLL_LOCK))
    {
        scroll_led_on();
    } else {
        scroll_led_off();
    }

	led_set_user(usb_led);
}

M keyboards/kbdfans/kbd8x/kbd8x.h => keyboards/kbdfans/kbd8x/kbd8x.h +6 -7
@@ 19,15 19,14 @@
#include "led.h"

// Functions for setting LEDs on toggle keys
inline void caps_led_on(void)     { DDRB |=  (1<<3); PORTB &= ~(1<<3); }
inline void caps_led_off(void)    { DDRB &= ~(1<<3); PORTB &= ~(1<<3); }
inline void caps_led_on(void)     { writePinHigh(LED_CAPS_LOCK_PIN); }
inline void caps_led_off(void)    { writePinLow(LED_CAPS_LOCK_PIN); }

inline void num_led_on(void)      { DDRB |=  (1<<1); PORTB &= ~(1<<1); }
inline void num_led_off(void)     { DDRB &= ~(1<<1); PORTB &= ~(1<<1); }

inline void scroll_led_on(void)   { DDRB |=  (1<<2); PORTB &= ~(1<<2); }
inline void scroll_led_off(void)  { DDRB &= ~(1<<2); PORTB &= ~(1<<2); }
inline void num_led_on(void)      { writePinHigh(LED_NUM_LOCK_PIN); }
inline void num_led_off(void)     { writePinLow(LED_NUM_LOCK_PIN); }

inline void scroll_led_on(void)   { writePinHigh(LED_SCROLL_LOCK_PIN); }
inline void scroll_led_off(void)  { writePinLow(LED_SCROLL_LOCK_PIN); }

// LAYOUT depicting all possible switch positions.
// LAYOUT_all supports ISO, split backspace and split left/right shift.

M keyboards/kbdfans/kbd8x_mk2/config.h => keyboards/kbdfans/kbd8x_mk2/config.h +4 -4
@@ 48,10 48,10 @@ along with this program.  If not, see <http://www.gnu.org/licenses/>.
/* COL2ROW, ROW2COL*/
#define DIODE_DIRECTION COL2ROW

/*
 * Split Keyboard specific options, make sure you have 'SPLIT_KEYBOARD = yes' in your rules.mk, and define SOFT_SERIAL_PIN.
 */
#define SOFT_SERIAL_PIN D0 // or D1, D2, D3, E6
#define LED_CAPS_LOCK_PIN E6
#define LED_SCROLL_LOCK_PIN B2
#define LED_PIN_ON_STATE 0

#define BACKLIGHT_PIN B7
#ifdef BACKLIGHT_PIN
#define BACKLIGHT_BREATHING

M keyboards/kbdfans/kbd8x_mk2/kbd8x_mk2.c => keyboards/kbdfans/kbd8x_mk2/kbd8x_mk2.c +0 -55
@@ 14,58 14,3 @@
 * along with this program.  If not, see <http://www.gnu.org/licenses/>.
 */
#include "kbd8x_mk2.h"

void matrix_init_kb(void) {  

  // Indicator pins
  // B2 - Scroll Lock
  // E6 - Caps Lock
  // Sinking setup - 5V -> LED/Resistor -> Pin
  
  setPinOutput(B2);
  setPinOutput(E6);

  matrix_init_user();
}

void led_set_kb(uint8_t usb_led) {
  
  // Toggle indicator LEDs
  // Since they are a sinking setup, write HIGH to DISABLE, LOW to ENABLE
  
  if (IS_LED_ON(usb_led, USB_LED_CAPS_LOCK)) {
    writePinLow(E6);
  } else {
    writePinHigh(E6);
  }
  
  if (IS_LED_ON(usb_led, USB_LED_SCROLL_LOCK)) {
    writePinLow(B2);
  } else {
    writePinHigh(B2);
  }

  led_set_user(usb_led);
}

// Optional override functions below.
// You can leave any or all of these undefined.
// These are only required if you want to perform custom actions.

/*

void matrix_scan_kb(void) {
  // put your looping keyboard code here
  // runs every cycle (a lot)

  matrix_scan_user();
}

bool process_record_kb(uint16_t keycode, keyrecord_t *record) {
  // put your per-action keyboard code here
  // runs for every action, just before processing by the firmware

  return process_record_user(keycode, record);
}

*/

M keyboards/kbdfans/kbdpad_mk2/config.h => keyboards/kbdfans/kbdpad_mk2/config.h +2 -4
@@ 48,10 48,8 @@ along with this program.  If not, see <http://www.gnu.org/licenses/>.
/* COL2ROW, ROW2COL*/
#define DIODE_DIRECTION COL2ROW

/*
 * Split Keyboard specific options, make sure you have 'SPLIT_KEYBOARD = yes' in your rules.mk, and define SOFT_SERIAL_PIN.
 */
#define SOFT_SERIAL_PIN D0 // or D1, D2, D3, E6
#define LED_CAPS_LOCK_PIN B4
#define LED_PIN_ON_STATE 0

#define BACKLIGHT_PIN B7
#ifdef BACKLIGHT_PIN

M keyboards/kbdfans/kbdpad_mk2/kbdpad_mk2.c => keyboards/kbdfans/kbdpad_mk2/kbdpad_mk2.c +0 -45
@@ 14,48 14,3 @@
 * along with this program.  If not, see <http://www.gnu.org/licenses/>.
 */
#include "kbdpad_mk2.h"

void matrix_init_kb(void) {
	
  // Num Lock LED = B4
  // Sinking setup (5V -> LED/Res -> Pin)
  
  setPinOutput(B4);

  matrix_init_user();
}

void led_set_kb(uint8_t usb_led) {
  
  // Sinking setup. Write HIGH to turn OFF, LOW to turn ON.
  
  if (IS_LED_ON(usb_led, USB_LED_NUM_LOCK)) {
    writePinLow(B4);
  } else {
    writePinHigh(B4);
  }

  led_set_user(usb_led);
}

// Optional override functions below.
// You can leave any or all of these undefined.
// These are only required if you want to perform custom actions.

/*

void matrix_scan_kb(void) {
  // put your looping keyboard code here
  // runs every cycle (a lot)

  matrix_scan_user();
}

bool process_record_kb(uint16_t keycode, keyrecord_t *record) {
  // put your per-action keyboard code here
  // runs for every action, just before processing by the firmware

  return process_record_user(keycode, record);
}

*/