diff options
author | Jonathan Rascher <jon@bcat.name> | 2019-11-03 16:30:15 -0600 |
---|---|---|
committer | fauxpark <fauxpark@gmail.com> | 2019-11-04 09:30:15 +1100 |
commit | 732d1dd4f6f9ec060b4b8332309c82ebb6c3ca25 (patch) | |
tree | 8c0161dd1eb1d9128f36f369beb6e84578acd937 | |
parent | e9c44e396d21df990b1d08e8b4c30e288797dffe (diff) | |
download | qmk_firmware-732d1dd4f6f9ec060b4b8332309c82ebb6c3ca25.tar.gz qmk_firmware-732d1dd4f6f9ec060b4b8332309c82ebb6c3ca25.zip |
Fix KBDPad MKI backlight, Num Lock LEDs; clean up firmware a bit (#6883)
* Update keyboard kit URL
* Replace custom RGB driver with new one from #7183
* Replace backlight with standard impl
* Remove some unnecessary default settings
* Disable COMMAND since docs want it off by default
(There's no working IS_COMMAND set for this board anyway, so it's
already a nop.)
-rw-r--r-- | keyboards/kbdfans/kbdpad/mk1/config.h | 9 | ||||
-rw-r--r-- | keyboards/kbdfans/kbdpad/mk1/info.json | 4 | ||||
-rw-r--r-- | keyboards/kbdfans/kbdpad/mk1/mk1.c | 71 | ||||
-rw-r--r-- | keyboards/kbdfans/kbdpad/mk1/readme.md | 2 | ||||
-rw-r--r-- | keyboards/kbdfans/kbdpad/mk1/rules.mk | 8 |
5 files changed, 17 insertions, 77 deletions
diff --git a/keyboards/kbdfans/kbdpad/mk1/config.h b/keyboards/kbdfans/kbdpad/mk1/config.h index 2c55d2aef..1f0b371af 100644 --- a/keyboards/kbdfans/kbdpad/mk1/config.h +++ b/keyboards/kbdfans/kbdpad/mk1/config.h | |||
@@ -27,12 +27,13 @@ along with this program. If not, see <http://www.gnu.org/licenses/>. | |||
27 | #define MATRIX_ROWS 6 | 27 | #define MATRIX_ROWS 6 |
28 | #define MATRIX_COLS 4 | 28 | #define MATRIX_COLS 4 |
29 | 29 | ||
30 | // 0 1 2 3 4 5 | ||
31 | #define MATRIX_ROW_PINS { B0, B1, B2, B3, B4, B5 } | 30 | #define MATRIX_ROW_PINS { B0, B1, B2, B3, B4, B5 } |
32 | #define MATRIX_COL_PINS { A0, A1, A2, A3 } | 31 | #define MATRIX_COL_PINS { A0, A1, A2, A3 } |
33 | #define UNUSED_PINS | ||
34 | 32 | ||
35 | #define DIODE_DIRECTION COL2ROW | 33 | #define DIODE_DIRECTION COL2ROW |
36 | #define DEBOUNCE 5 | ||
37 | 34 | ||
38 | #define BACKLIGHT_LEVELS 1 | 35 | #define BACKLIGHT_PIN D4 |
36 | #define BACKLIGHT_BREATHING | ||
37 | |||
38 | #define RGBLIGHT_ANIMATIONS | ||
39 | #define RGBLED_NUM 6 | ||
diff --git a/keyboards/kbdfans/kbdpad/mk1/info.json b/keyboards/kbdfans/kbdpad/mk1/info.json index 426a23b8d..4f0da62e8 100644 --- a/keyboards/kbdfans/kbdpad/mk1/info.json +++ b/keyboards/kbdfans/kbdpad/mk1/info.json | |||
@@ -1,6 +1,6 @@ | |||
1 | { | 1 | { |
2 | "keyboard_name": "KBDFans KBDPad MKI", | 2 | "keyboard_name": "KBDfans KBDPad MKI", |
3 | "url": "", | 3 | "url": "https://kbdfans.com/products/kbdfans-pad-custom-mechanical-keyboard-diy-kit", |
4 | "maintainer": "qmk", | 4 | "maintainer": "qmk", |
5 | "width": 4, | 5 | "width": 4, |
6 | "height": 6.25, | 6 | "height": 6.25, |
diff --git a/keyboards/kbdfans/kbdpad/mk1/mk1.c b/keyboards/kbdfans/kbdpad/mk1/mk1.c index c17cb0084..71a47b7ba 100644 --- a/keyboards/kbdfans/kbdpad/mk1/mk1.c +++ b/keyboards/kbdfans/kbdpad/mk1/mk1.c | |||
@@ -13,76 +13,17 @@ | |||
13 | * You should have received a copy of the GNU General Public License | 13 | * You should have received a copy of the GNU General Public License |
14 | * along with this program. If not, see <http://www.gnu.org/licenses/>. | 14 | * along with this program. If not, see <http://www.gnu.org/licenses/>. |
15 | */ | 15 | */ |
16 | #include "i2c_master.h" | ||
17 | #include "quantum.h" | ||
18 | 16 | ||
19 | #ifdef RGBLIGHT_ENABLE | 17 | #include "quantum.h" |
20 | #include "rgblight.h" | ||
21 | extern rgblight_config_t rgblight_config; | ||
22 | 18 | ||
23 | void rgblight_set(void) { | 19 | #define NUMLOCK_PIN D0 |
24 | if (!rgblight_config.enable) { | ||
25 | for (uint8_t i = 0; i < RGBLED_NUM; i++) { | ||
26 | led[i].r = 0; | ||
27 | led[i].g = 0; | ||
28 | led[i].b = 0; | ||
29 | } | ||
30 | } | ||
31 | |||
32 | i2c_init(); | ||
33 | i2c_transmit(0xb0, (uint8_t*)led, 3 * RGBLED_NUM, 100); | ||
34 | } | ||
35 | #endif | ||
36 | 20 | ||
37 | void matrix_init_kb(void) { | 21 | void matrix_init_kb(void) { |
38 | #ifdef RGBLIGHT_ENABLE | 22 | setPinOutput(NUMLOCK_PIN); |
39 | if (rgblight_config.enable) { | ||
40 | i2c_init(); | ||
41 | i2c_transmit(0xb0, (uint8_t*)led, 3 * RGBLED_NUM, 100); | ||
42 | } | ||
43 | #endif | ||
44 | // call user level keymaps, if any | ||
45 | matrix_init_user(); | 23 | matrix_init_user(); |
46 | } | 24 | } |
47 | 25 | ||
48 | void matrix_scan_kb(void) { | 26 | void led_set_kb(uint8_t usb_led) { |
49 | #ifdef RGBLIGHT_ENABLE | 27 | writePin(NUMLOCK_PIN, IS_LED_ON(usb_led, USB_LED_NUM_LOCK)); |
50 | rgblight_task(); | 28 | led_set_user(usb_led); |
51 | #endif | ||
52 | matrix_scan_user(); | ||
53 | /* Nothing else for now. */ | ||
54 | } | ||
55 | |||
56 | __attribute__ ((weak)) | ||
57 | void matrix_scan_user(void) { | ||
58 | } | 29 | } |
59 | |||
60 | void backlight_init_ports(void) { | ||
61 | // initialize pins D0, D1, D4 and D6 as output | ||
62 | setPinOutput(D0); | ||
63 | setPinOutput(D1); | ||
64 | setPinOutput(D4); | ||
65 | setPinOutput(D6); | ||
66 | |||
67 | // turn backlight LEDs on | ||
68 | writePinHigh(D0); | ||
69 | writePinHigh(D1); | ||
70 | writePinHigh(D4); | ||
71 | writePinHigh(D6); | ||
72 | } | ||
73 | |||
74 | void backlight_set(uint8_t level) { | ||
75 | if (level == 0) { | ||
76 | // turn backlight LEDs off | ||
77 | writePinLow(D0); | ||
78 | writePinLow(D1); | ||
79 | writePinLow(D4); | ||
80 | writePinLow(D6); | ||
81 | } else { | ||
82 | // turn backlight LEDs on | ||
83 | writePinHigh(D0); | ||
84 | writePinHigh(D1); | ||
85 | writePinHigh(D4); | ||
86 | writePinHigh(D6); | ||
87 | } | ||
88 | } \ No newline at end of file | ||
diff --git a/keyboards/kbdfans/kbdpad/mk1/readme.md b/keyboards/kbdfans/kbdpad/mk1/readme.md index 569fb88a2..e808d8934 100644 --- a/keyboards/kbdfans/kbdpad/mk1/readme.md +++ b/keyboards/kbdfans/kbdpad/mk1/readme.md | |||
@@ -4,7 +4,7 @@ Custom numpad. | |||
4 | 4 | ||
5 | Keyboard Maintainer: [MechMerlin](https://github.com/mechmerlin) | 5 | Keyboard Maintainer: [MechMerlin](https://github.com/mechmerlin) |
6 | Hardware Supported: KBDPad MKI | 6 | Hardware Supported: KBDPad MKI |
7 | Hardware Availability: No longer available. | 7 | Hardware Availability: [KBDfans](https://kbdfans.com/products/kbdfans-pad-custom-mechanical-keyboard-diy-kit) |
8 | 8 | ||
9 | 9 | ||
10 | Make example for this keyboard (after setting up your build environment): | 10 | Make example for this keyboard (after setting up your build environment): |
diff --git a/keyboards/kbdfans/kbdpad/mk1/rules.mk b/keyboards/kbdfans/kbdpad/mk1/rules.mk index e43baee5c..f1f740760 100644 --- a/keyboards/kbdfans/kbdpad/mk1/rules.mk +++ b/keyboards/kbdfans/kbdpad/mk1/rules.mk | |||
@@ -31,11 +31,9 @@ BOOTMAGIC_ENABLE = no | |||
31 | MOUSEKEY_ENABLE = yes | 31 | MOUSEKEY_ENABLE = yes |
32 | EXTRAKEY_ENABLE = yes | 32 | EXTRAKEY_ENABLE = yes |
33 | CONSOLE_ENABLE = yes | 33 | CONSOLE_ENABLE = yes |
34 | COMMAND_ENABLE = yes | 34 | COMMAND_ENABLE = no |
35 | BACKLIGHT_ENABLE = yes | 35 | BACKLIGHT_ENABLE = yes |
36 | RGBLIGHT_ENABLE = no | 36 | RGBLIGHT_ENABLE = no # PCB has underglow LEDs, but case doesn't let them show. |
37 | RGBLIGHT_CUSTOM_DRIVER = no | 37 | WS2812_DRIVER = i2c |
38 | 38 | ||
39 | OPT_DEFS = -DDEBUG_LEVEL=0 | 39 | OPT_DEFS = -DDEBUG_LEVEL=0 |
40 | |||
41 | QUANTUM_LIB_SRC = i2c_master.c | ||