summaryrefslogtreecommitdiffstats
path: root/keyboards/keychron/k15_pro/config.h
diff options
context:
space:
mode:
authorlalalademaxiya1 <2831039915@qq.com>2023-09-13 15:42:01 +0800
committerlalalademaxiya1 <2831039915@qq.com>2023-09-13 15:42:01 +0800
commit747353348ecda25fd50ab47b802d1428f307fd1b (patch)
treeada65a50228fb93bcf07199e5d59dabe8c33b81f /keyboards/keychron/k15_pro/config.h
parent00af20f690b66b11c3c00826b5193a306b611ec4 (diff)
Added K10_Pro and K15_Pro
Diffstat (limited to 'keyboards/keychron/k15_pro/config.h')
-rwxr-xr-xkeyboards/keychron/k15_pro/config.h86
1 files changed, 86 insertions, 0 deletions
diff --git a/keyboards/keychron/k15_pro/config.h b/keyboards/keychron/k15_pro/config.h
new file mode 100755
index 0000000000..4c77054961
--- /dev/null
+++ b/keyboards/keychron/k15_pro/config.h
@@ -0,0 +1,86 @@
+/* Copyright 2023 @ Keychron (https://www.keychron.com)
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation, either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
+ */
+
+#pragma once
+
+/* turn off effects when suspended */
+#define RGB_DISABLE_WHEN_USB_SUSPENDED
+#define LED_DISABLE_WHEN_USB_SUSPENDED
+
+/* DIP switch */
+#define DIP_SWITCH_PINS \
+ { A8 }
+
+/* Increase I2C speed to 1000 KHz */
+#define I2C1_TIMINGR_PRESC 0U
+#define I2C1_TIMINGR_SCLDEL 3U
+#define I2C1_TIMINGR_SDADEL 0U
+#define I2C1_TIMINGR_SCLH 15U
+#define I2C1_TIMINGR_SCLL 51U
+
+#ifdef KC_BLUETOOTH_ENABLE
+/* Hardware configuration */
+# define USB_BT_MODE_SELECT_PIN C15
+
+# define CKBT51_RESET_PIN A9
+# define CKBT51_INT_INPUT_PIN A5
+# define BLUETOOTH_INT_INPUT_PIN A6
+
+# define USB_POWER_SENSE_PIN B1
+# define USB_POWER_CONNECTED_LEVEL 0
+
+# define BAT_LOW_LED_PIN H3
+# define BAT_LOW_LED_PIN_ON_STATE 1
+
+# define HOST_DEVICES_COUNT 3
+
+# if defined(RGB_MATRIX_ENABLE) || defined(LED_MATRIX_ENABLE)
+
+# define LED_DRIVER_SHUTDOWN_PIN C14
+
+# define HOST_LED_MATRIX_LIST \
+ { 17, 18, 19 }
+
+# define BAT_LEVEL_LED_LIST \
+ { 17, 18, 19, 20, 21, 22, 23, 24, 25, 26 }
+
+/* Backlit disable timeout when keyboard is disconnected(unit: second) */
+# define DISCONNECTED_BACKLIGHT_DISABLE_TIMEOUT 40
+
+/* Backlit disable timeout when keyboard is connected(unit: second) */
+# define CONNECTED_BACKLIGHT_DISABLE_TIMEOUT 600
+# endif
+
+/* Keep USB connection in blueooth mode */
+# define KEEP_USB_CONNECTION_IN_BLUETOOTH_MODE
+
+/* Enable bluetooth NKRO */
+# define BLUETOOTH_NKRO_ENABLE
+
+/* Raw hid command for factory test and bluetooth DFU */
+# define RAW_HID_CMD 0xAA ... 0xAB
+#else
+/* Raw hid command for factory test */
+# define RAW_HID_CMD 0xAB
+#endif // KC_BLUETOOTH_ENABLE
+
+/* Emulated EEPROM configuration */
+#define FEE_DENSITY_BYTES FEE_PAGE_SIZE
+#define DYNAMIC_KEYMAP_EEPROM_MAX_ADDR 2047
+
+/* Factory test keys */
+#define FN_KEY1 MO(1)
+#define FN_KEY2 MO(3)