summaryrefslogtreecommitdiffstats
path: root/keyboards/keychron/q8_pro/config.h
diff options
context:
space:
mode:
authorlokher <lokher@gmail.com>2023-07-06 10:16:57 +0800
committerlokher <lokher@gmail.com>2023-07-06 10:16:57 +0800
commitf78393413b9a1b0280baeade111d6b698898bf7d (patch)
tree68adfd40f2849e21e83f8505d82c6a826984edc1 /keyboards/keychron/q8_pro/config.h
parent009d525f93319017ac0c7791f6231a3b1b2dcb70 (diff)
parent22ff96d139b48325c962ea55e4b2fbffbfc87e4f (diff)
Merge branch 'bluetooth_playground' of https://github.com/Keychron/qmk_firmware into bluetooth_playground
Diffstat (limited to 'keyboards/keychron/q8_pro/config.h')
-rwxr-xr-xkeyboards/keychron/q8_pro/config.h84
1 files changed, 84 insertions, 0 deletions
diff --git a/keyboards/keychron/q8_pro/config.h b/keyboards/keychron/q8_pro/config.h
new file mode 100755
index 0000000000..b03b71ec30
--- /dev/null
+++ b/keyboards/keychron/q8_pro/config.h
@@ -0,0 +1,84 @@
+/* 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
+
+/* 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 HOST_DEVICES_COUNT 3
+
+# if defined(RGB_MATRIX_ENABLE)
+
+# define LED_DRIVER_SHUTDOWN_PIN C14
+
+# define HOST_LED_MATRIX_LIST \
+ { 15, 16, 17 }
+
+# define BAT_LEVEL_LED_LIST \
+ { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 }
+
+/* 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
+
+/* Emulated EEPROM configuration */
+#define FEE_DENSITY_BYTES FEE_PAGE_SIZE
+#define DYNAMIC_KEYMAP_EEPROM_MAX_ADDR 2047
+
+/* Old default behavior of mod-taps */
+#define HOLD_ON_OTHER_KEY_PRESS
+
+/* Factory test keys */
+#define FN_KEY1 MO(4)