From 1c080625f11ea6e8289149ab661ee5916fc0f7f5 Mon Sep 17 00:00:00 2001
From: zhaqian <80608733+zhaqian12@users.noreply.github.com>
Date: Wed, 25 May 2022 11:44:52 +0800
Subject: [PATCH] add old kb zq64
---
keyboards/zhaqian/readme.md | 6 +-
keyboards/zhaqian/readme_cn.md | 6 +-
keyboards/zhaqian/zq64/board.h | 23 +++
keyboards/zhaqian/zq64/chconf.h | 24 +++
keyboards/zhaqian/zq64/config.h | 75 ++++++++
keyboards/zhaqian/zq64/halconf.h | 21 +++
.../zhaqian/zq64/keymaps/default/keymap.c | 48 +++++
.../zq64/keymaps/default/rgb_matrix_kb.inc | 39 ++++
.../zhaqian/zq64/keymaps/default/rules.mk | 7 +
keyboards/zhaqian/zq64/keymaps/via/keymap.c | 48 +++++
.../zq64/keymaps/via/rgb_matrix_kb.inc | 39 ++++
keyboards/zhaqian/zq64/keymaps/via/rules.mk | 11 ++
keyboards/zhaqian/zq64/mcuconf.h | 23 +++
keyboards/zhaqian/zq64/readme.md | 15 ++
keyboards/zhaqian/zq64/rules.mk | 23 +++
keyboards/zhaqian/zq64/uf2_boot.c | 30 +++
keyboards/zhaqian/zq64/zq64.c | 53 ++++++
keyboards/zhaqian/zq64/zq64.h | 34 ++++
keyboards/zhaqian/zq64/zq64_via.json | 173 ++++++++++++++++++
.../zq68/keymaps/default/rgb_matrix_kb.inc | 39 ++--
keyboards/zhaqian/zq68/zq68_via.json | 2 +-
21 files changed, 707 insertions(+), 32 deletions(-)
create mode 100644 keyboards/zhaqian/zq64/board.h
create mode 100644 keyboards/zhaqian/zq64/chconf.h
create mode 100644 keyboards/zhaqian/zq64/config.h
create mode 100644 keyboards/zhaqian/zq64/halconf.h
create mode 100644 keyboards/zhaqian/zq64/keymaps/default/keymap.c
create mode 100644 keyboards/zhaqian/zq64/keymaps/default/rgb_matrix_kb.inc
create mode 100644 keyboards/zhaqian/zq64/keymaps/default/rules.mk
create mode 100644 keyboards/zhaqian/zq64/keymaps/via/keymap.c
create mode 100644 keyboards/zhaqian/zq64/keymaps/via/rgb_matrix_kb.inc
create mode 100644 keyboards/zhaqian/zq64/keymaps/via/rules.mk
create mode 100644 keyboards/zhaqian/zq64/mcuconf.h
create mode 100644 keyboards/zhaqian/zq64/readme.md
create mode 100644 keyboards/zhaqian/zq64/rules.mk
create mode 100644 keyboards/zhaqian/zq64/uf2_boot.c
create mode 100644 keyboards/zhaqian/zq64/zq64.c
create mode 100644 keyboards/zhaqian/zq64/zq64.h
create mode 100644 keyboards/zhaqian/zq64/zq64_via.json
diff --git a/keyboards/zhaqian/readme.md b/keyboards/zhaqian/readme.md
index 67b63b4066da..12d3e59ac907 100644
--- a/keyboards/zhaqian/readme.md
+++ b/keyboards/zhaqian/readme.md
@@ -31,9 +31,9 @@
| zq11800 | 0x00AA | 0xAA0A | Solder | Atmel atmega32u4 | ENCODER, RGB |
| wave87 | 0x00AA | 0xAA0B | Hotswap | Atmel atmega32u4 | LOGORGB |
| zq980mini | 0x00AA | 0xAA0C | Hotswap | Atmel atmega32u4 | RGB, UGRGB |
-| zq67rev2 | 0x00AA | 0xAA0D | Hotswap | ST stm32f103/f103 | RGB |
-| zq64 | 0x00AA | 0xAA0E | Hotswap | Atmel atmega32u4 | RGB, ENCODER |
-| zq68 | 0x00AA | 0xAA0F | Hotswap | Atmel atmega32u4 | RGB, ENCODER |
+| zq67rev2 | 0x00AA | 0xAA0D | Hotswap | Atmel atmega32u4 | RGB |
+| zq64 | 0x00AA | 0xAA0E | Hotswap | ST stm32f103/f103 | RGB, ENCODER |
+| zq68 | 0x00AA | 0xAA0F | Hotswap | ST stm32f103/f103 | RGB, ENCODER |
| toxic67 | 0x00AA | 0xAA10 | Hotswap | Atmel atmega32u4 | RGB |
| zq46 | 0x00AA | 0xAA11 | Hotswap | ST stm32f401 | RGB, UGRGB, LOGORGB, ENCODER |
| osu | 0x00AA | 0xAA12 | Hotswap | ST stm32f401 | UGRGB |
diff --git a/keyboards/zhaqian/readme_cn.md b/keyboards/zhaqian/readme_cn.md
index 0d68f8332e68..70def10082ae 100644
--- a/keyboards/zhaqian/readme_cn.md
+++ b/keyboards/zhaqian/readme_cn.md
@@ -30,9 +30,9 @@
| zq11800 | 0x00AA | 0xAA0A | Solder | Atmel atmega32u4 | ENCODER, RGB |
| wave87 | 0x00AA | 0xAA0B | Hotswap | Atmel atmega32u4 | LOGORGB |
| zq980mini | 0x00AA | 0xAA0C | Hotswap | Atmel atmega32u4 | RGB, UGRGB |
-| zq67rev2 | 0x00AA | 0xAA0D | Hotswap | ST stm32f103/f103 | RGB |
-| zq64 | 0x00AA | 0xAA0E | Hotswap | Atmel atmega32u4 | RGB, ENCODER |
-| zq68 | 0x00AA | 0xAA0F | Hotswap | Atmel atmega32u4 | RGB, ENCODER |
+| zq67rev2 | 0x00AA | 0xAA0D | Hotswap | Atmel atmega32u4 | RGB |
+| zq64 | 0x00AA | 0xAA0E | Hotswap | ST stm32f103/f103 | RGB, ENCODER |
+| zq68 | 0x00AA | 0xAA0F | Hotswap | ST stm32f103/f103 | RGB, ENCODER |
| toxic67 | 0x00AA | 0xAA10 | Hotswap | Atmel atmega32u4 | RGB |
| zq46 | 0x00AA | 0xAA11 | Hotswap | ST stm32f401 | RGB, UGRGB, LOGORGB, ENCODER |
| osu | 0x00AA | 0xAA12 | Hotswap | ST stm32f401 | UGRGB |
diff --git a/keyboards/zhaqian/zq64/board.h b/keyboards/zhaqian/zq64/board.h
new file mode 100644
index 000000000000..466f23dfa148
--- /dev/null
+++ b/keyboards/zhaqian/zq64/board.h
@@ -0,0 +1,23 @@
+/* Copyright 2020 Nick Brassel (tzarc)
+ *
+ * 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 3 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 .
+ */
+
+#pragma once
+
+#include_next "board.h"
+
+#undef STM32_HSECLK
+#define STM32_HSECLK 8000000
+
diff --git a/keyboards/zhaqian/zq64/chconf.h b/keyboards/zhaqian/zq64/chconf.h
new file mode 100644
index 000000000000..524194b39c08
--- /dev/null
+++ b/keyboards/zhaqian/zq64/chconf.h
@@ -0,0 +1,24 @@
+/* Copyright 2020 QMK
+ *
+ * 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 .
+ */
+
+#pragma once
+
+#define CH_CFG_ST_FREQUENCY 10000
+
+#define CH_CFG_ST_TIMEDELTA 0
+
+#include_next
+
diff --git a/keyboards/zhaqian/zq64/config.h b/keyboards/zhaqian/zq64/config.h
new file mode 100644
index 000000000000..76ebb07ce61c
--- /dev/null
+++ b/keyboards/zhaqian/zq64/config.h
@@ -0,0 +1,75 @@
+/* Copyright 2022 ZhaQian
+ *
+ * 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 .
+ */
+
+#pragma once
+
+#include "config_common.h"
+
+#define VENDOR_ID 0x00AA
+#define PRODUCT_ID 0xAA0E
+#define DEVICE_VER 0x0001
+#define MANUFACTURER ZhaQian
+#define PRODUCT zq64
+#define DESCRIPTION Keyboard
+
+#define MATRIX_ROWS 5
+#define MATRIX_COLS 14
+
+#define MATRIX_ROW_PINS { B15, A8, A9, B3, B10 }
+#define MATRIX_COL_PINS { B12, B13, B14, A15, B4, B5, A2, A3, A4, A5, A6, A7, B0, B1}
+#define UNUSED_PINS
+
+#define DIODE_DIRECTION COL2ROW
+
+#define DEBOUNCE 5
+
+#define LOCKING_SUPPORT_ENABLE
+#define LOCKING_RESYNC_ENABLE
+
+// #define QMK_KEYS_PER_SCAN 12
+// #define FORCE_NKRO
+
+#ifdef RGB_MATRIX_ENABLE
+#define RGB_DI_PIN A10
+#define RGBLED_NUM 64
+#define DRIVER_LED_TOTAL RGBLED_NUM
+#define WS2812_PWM_DRIVER PWMD1
+#define WS2812_PWM_CHANNEL 3
+#define WS2812_PWM_PAL_MODE 2
+#define WS2812_DMA_STREAM STM32_DMA1_STREAM5
+#define WS2812_DMA_CHANNEL 5
+#define RGB_MATRIX_MAXIMUM_BRIGHTNESS 200
+#define RGB_DISABLE_WHEN_USB_SUSPENDED true
+#define RGB_MATRIX_ANIMATION
+#define RGB_MATRIX_FRAMEBUFFER_EFFECTS
+#define RGB_MATRIX_KEYPRESSES
+#ifdef RGB_MATRIX_CUSTOM_KB
+#define RGB_MATRIX_CUSTOM_ANIMATION
+#endif
+#define RGB_MATRIX_TYPING_HEATMAP_DECREASE_DELAY_MS 50
+#endif
+
+#ifdef ENCODER_ENABLE
+#define ENCODERS_PAD_A { A0 }
+#define ENCODERS_PAD_B { A1 }
+#define ENCODER_RESOLUTION 4
+#ifdef ENCODER_TRIGGER_ENABLE
+#define ENCODER_PAD_A_KEY_POS {4, 4}
+#define ENCODER_PAD_B_KEY_POS {3, 4}
+#endif
+#endif
+
+
diff --git a/keyboards/zhaqian/zq64/halconf.h b/keyboards/zhaqian/zq64/halconf.h
new file mode 100644
index 000000000000..b1b259713f95
--- /dev/null
+++ b/keyboards/zhaqian/zq64/halconf.h
@@ -0,0 +1,21 @@
+/* Copyright 2020 QMK
+ *
+ * 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 .
+ */
+
+#pragma once
+
+#define HAL_USE_PWM TRUE
+
+#include_next
diff --git a/keyboards/zhaqian/zq64/keymaps/default/keymap.c b/keyboards/zhaqian/zq64/keymaps/default/keymap.c
new file mode 100644
index 000000000000..c02be6779639
--- /dev/null
+++ b/keyboards/zhaqian/zq64/keymaps/default/keymap.c
@@ -0,0 +1,48 @@
+/* Copyright 2022 ZhaQian
+ *
+ * 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 .
+ */
+
+#include "zq64.h"
+
+const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
+
+ LAYOUT(
+ KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSPC,
+ KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSLS,
+ KC_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT,
+ KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, KC_END,
+ KC_LCTL, KC_LGUI, KC_LALT, KC_VOLD, KC_VOLU, KC_SPC, MO(1), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT),
+
+ LAYOUT(
+ KC_GRV, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_TRNS,
+ KC_TRNS, RGB_TOG, RGB_MOD, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
+ KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
+ KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
+ RESET, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS),
+
+ LAYOUT(
+ KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
+ KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
+ KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
+ KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
+ KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS),
+
+ LAYOUT(
+ KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
+ KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
+ KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
+ KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
+ KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS)
+};
diff --git a/keyboards/zhaqian/zq64/keymaps/default/rgb_matrix_kb.inc b/keyboards/zhaqian/zq64/keymaps/default/rgb_matrix_kb.inc
new file mode 100644
index 000000000000..3c584068e822
--- /dev/null
+++ b/keyboards/zhaqian/zq64/keymaps/default/rgb_matrix_kb.inc
@@ -0,0 +1,39 @@
+#include "zqlib/rgb_matrix_effect/cycle_breathing.h"
+#include "zqlib/rgb_matrix_effect/cycle_bandval.h"
+#include "zqlib/rgb_matrix_effect/cycle_band_pinwheel_sat.h"
+#include "zqlib/rgb_matrix_effect/cycle_band_pinwheel_val.h"
+#include "zqlib/rgb_matrix_effect/cycle_band_spiral_sat.h"
+#include "zqlib/rgb_matrix_effect/cycle_band_spiral_val.h"
+#include "zqlib/rgb_matrix_effect/cycle_right_left.h"
+#include "zqlib/rgb_matrix_effect/cycle_down_up.h"
+#include "zqlib/rgb_matrix_effect/cycle_in_out.h"
+#include "zqlib/rgb_matrix_effect/cycle_in_out_dual.h"
+#include "zqlib/rgb_matrix_effect/fractal.h"
+#include "zqlib/rgb_matrix_effect/fractal_rgb.h"
+#include "zqlib/rgb_matrix_effect/kitt_rgb.h"
+#include "zqlib/rgb_matrix_effect/cycle_sin_wave.h"
+#include "zqlib/rgb_matrix_effect/rainbow_sin_wave.h"
+#include "zqlib/rgb_matrix_effect/rainbow_sin_wave_reverse.h"
+#include "zqlib/rgb_matrix_effect/alter.h"
+#include "zqlib/rgb_matrix_effect/breathing_circle.h"
+#include "zqlib/rgb_matrix_effect/bloom.h"
+#include "zqlib/rgb_matrix_effect/commet.h"
+#include "zqlib/rgb_matrix_effect/rotate_rainbow.h"
+#include "zqlib/rgb_matrix_effect/motion_point.h"
+#include "zqlib/rgb_matrix_effect/rotate_beam.h"
+#include "zqlib/rgb_matrix_effect/stack.h"
+#include "zqlib/rgb_matrix_effect/swap.h"
+#include "zqlib/rgb_matrix_effect/zigzag.h"
+
+#include "zqlib/rgb_matrix_effect/candy_tap.h"
+
+#include "zqlib/rgb_matrix_effect/cycle_reactive_multiwide.h"
+#include "zqlib/rgb_matrix_effect/cycle_reactive_multicross.h"
+#include "zqlib/rgb_matrix_effect/cycle_reactive_multinexus.h"
+#include "zqlib/rgb_matrix_effect/cycle_multisplash.h"
+
+
+#include "zqlib/rgb_matrix_effect/reactive_multiwide_rgb.h"
+#include "zqlib/rgb_matrix_effect/reactive_multicross_rgb.h"
+#include "zqlib/rgb_matrix_effect/reactive_multinexus_rgb.h"
+
diff --git a/keyboards/zhaqian/zq64/keymaps/default/rules.mk b/keyboards/zhaqian/zq64/keymaps/default/rules.mk
new file mode 100644
index 000000000000..97d27639e5e8
--- /dev/null
+++ b/keyboards/zhaqian/zq64/keymaps/default/rules.mk
@@ -0,0 +1,7 @@
+ENCODER_ENABLE = yes
+ENCODER_TRIGGER_ENABLE = yes
+RGB_MATRIX_ENABLE = yes
+RGB_MATRIX_DRIVER = WS2812
+RGB_MATRIX_CUSTOM_KB = yes
+WS2812_DRIVER = pwm
+RADIAL_CONTROLLER_ENABLE = yes
diff --git a/keyboards/zhaqian/zq64/keymaps/via/keymap.c b/keyboards/zhaqian/zq64/keymaps/via/keymap.c
new file mode 100644
index 000000000000..c02be6779639
--- /dev/null
+++ b/keyboards/zhaqian/zq64/keymaps/via/keymap.c
@@ -0,0 +1,48 @@
+/* Copyright 2022 ZhaQian
+ *
+ * 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 .
+ */
+
+#include "zq64.h"
+
+const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
+
+ LAYOUT(
+ KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSPC,
+ KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSLS,
+ KC_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT,
+ KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, KC_END,
+ KC_LCTL, KC_LGUI, KC_LALT, KC_VOLD, KC_VOLU, KC_SPC, MO(1), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT),
+
+ LAYOUT(
+ KC_GRV, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_TRNS,
+ KC_TRNS, RGB_TOG, RGB_MOD, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
+ KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
+ KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
+ RESET, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS),
+
+ LAYOUT(
+ KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
+ KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
+ KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
+ KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
+ KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS),
+
+ LAYOUT(
+ KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
+ KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
+ KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
+ KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
+ KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS)
+};
diff --git a/keyboards/zhaqian/zq64/keymaps/via/rgb_matrix_kb.inc b/keyboards/zhaqian/zq64/keymaps/via/rgb_matrix_kb.inc
new file mode 100644
index 000000000000..3c584068e822
--- /dev/null
+++ b/keyboards/zhaqian/zq64/keymaps/via/rgb_matrix_kb.inc
@@ -0,0 +1,39 @@
+#include "zqlib/rgb_matrix_effect/cycle_breathing.h"
+#include "zqlib/rgb_matrix_effect/cycle_bandval.h"
+#include "zqlib/rgb_matrix_effect/cycle_band_pinwheel_sat.h"
+#include "zqlib/rgb_matrix_effect/cycle_band_pinwheel_val.h"
+#include "zqlib/rgb_matrix_effect/cycle_band_spiral_sat.h"
+#include "zqlib/rgb_matrix_effect/cycle_band_spiral_val.h"
+#include "zqlib/rgb_matrix_effect/cycle_right_left.h"
+#include "zqlib/rgb_matrix_effect/cycle_down_up.h"
+#include "zqlib/rgb_matrix_effect/cycle_in_out.h"
+#include "zqlib/rgb_matrix_effect/cycle_in_out_dual.h"
+#include "zqlib/rgb_matrix_effect/fractal.h"
+#include "zqlib/rgb_matrix_effect/fractal_rgb.h"
+#include "zqlib/rgb_matrix_effect/kitt_rgb.h"
+#include "zqlib/rgb_matrix_effect/cycle_sin_wave.h"
+#include "zqlib/rgb_matrix_effect/rainbow_sin_wave.h"
+#include "zqlib/rgb_matrix_effect/rainbow_sin_wave_reverse.h"
+#include "zqlib/rgb_matrix_effect/alter.h"
+#include "zqlib/rgb_matrix_effect/breathing_circle.h"
+#include "zqlib/rgb_matrix_effect/bloom.h"
+#include "zqlib/rgb_matrix_effect/commet.h"
+#include "zqlib/rgb_matrix_effect/rotate_rainbow.h"
+#include "zqlib/rgb_matrix_effect/motion_point.h"
+#include "zqlib/rgb_matrix_effect/rotate_beam.h"
+#include "zqlib/rgb_matrix_effect/stack.h"
+#include "zqlib/rgb_matrix_effect/swap.h"
+#include "zqlib/rgb_matrix_effect/zigzag.h"
+
+#include "zqlib/rgb_matrix_effect/candy_tap.h"
+
+#include "zqlib/rgb_matrix_effect/cycle_reactive_multiwide.h"
+#include "zqlib/rgb_matrix_effect/cycle_reactive_multicross.h"
+#include "zqlib/rgb_matrix_effect/cycle_reactive_multinexus.h"
+#include "zqlib/rgb_matrix_effect/cycle_multisplash.h"
+
+
+#include "zqlib/rgb_matrix_effect/reactive_multiwide_rgb.h"
+#include "zqlib/rgb_matrix_effect/reactive_multicross_rgb.h"
+#include "zqlib/rgb_matrix_effect/reactive_multinexus_rgb.h"
+
diff --git a/keyboards/zhaqian/zq64/keymaps/via/rules.mk b/keyboards/zhaqian/zq64/keymaps/via/rules.mk
new file mode 100644
index 000000000000..deb660e5af22
--- /dev/null
+++ b/keyboards/zhaqian/zq64/keymaps/via/rules.mk
@@ -0,0 +1,11 @@
+VIA_ENABLE = yes
+ENCODER_ENABLE = yes
+ENCODER_TRIGGER_ENABLE = yes
+RGB_MATRIX_ENABLE = yes
+RGB_MATRIX_DRIVER = WS2812
+RGB_MATRIX_CUSTOM_KB = yes
+WS2812_DRIVER = pwm
+RADIAL_CONTROLLER_ENABLE = yes
+VIA_CUSTOM_KEYCODE_ENABLE = yes
+LTO_ENABLE = yes
+
diff --git a/keyboards/zhaqian/zq64/mcuconf.h b/keyboards/zhaqian/zq64/mcuconf.h
new file mode 100644
index 000000000000..866f9db153f5
--- /dev/null
+++ b/keyboards/zhaqian/zq64/mcuconf.h
@@ -0,0 +1,23 @@
+/* Copyright 2020 QMK
+ *
+ * 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 .
+ */
+
+#pragma once
+
+#include_next
+
+#undef STM32_PWM_USE_TIM1
+#define STM32_PWM_USE_TIM1 TRUE
+
diff --git a/keyboards/zhaqian/zq64/readme.md b/keyboards/zhaqian/zq64/readme.md
new file mode 100644
index 000000000000..1f2f0a3b492e
--- /dev/null
+++ b/keyboards/zhaqian/zq64/readme.md
@@ -0,0 +1,15 @@
+# zq64
+
+A 64 keys keyboard with rgb and encoder.
+
+* Keyboard Maintainer: [zhaqian](https://github.com/zhaqian12)
+* Hardware Supported: zq64
+* Hardware Availability: [qmk-zq](https://github.com/zhaqian12/qmk_firmware)
+
+Make example for this keyboard (after setting up your build environment):
+
+ make zhaqian/zq64:default
+ make zhaqian/zq64:via
+
+See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](https://docs.qmk.fm/#/newbs).
+
\ No newline at end of file
diff --git a/keyboards/zhaqian/zq64/rules.mk b/keyboards/zhaqian/zq64/rules.mk
new file mode 100644
index 000000000000..19babb81b0e9
--- /dev/null
+++ b/keyboards/zhaqian/zq64/rules.mk
@@ -0,0 +1,23 @@
+# MCU name
+MCU = STM32F103
+MCU_LDSCRIPT = STM32F103xB_uf2
+FIRMWARE_FORMAT = uf2
+BOARD = STM32_F103_STM32DUINO
+
+# Bootloader selection
+BOOTLOADER = custom
+
+# Build Options
+# comment out to disable the options.
+#
+BOOTMAGIC_ENABLE = yes
+MOUSEKEY_ENABLE = yes
+EXTRAKEY_ENABLE = yes
+CONSOLE_ENABLE = no
+COMMAND_ENABLE = no
+SLEEP_LED_ENABLE = no
+NKRO_ENABLE = yes
+RGBLIGHT_ENABLE = no
+
+OPT_DEFS += -DCORTEX_ENABLE_WFI_IDLE=TRUE
+SRC += uf2_boot.c
diff --git a/keyboards/zhaqian/zq64/uf2_boot.c b/keyboards/zhaqian/zq64/uf2_boot.c
new file mode 100644
index 000000000000..c09adb15d6f2
--- /dev/null
+++ b/keyboards/zhaqian/zq64/uf2_boot.c
@@ -0,0 +1,30 @@
+/* Copyright 2022 ZhaQian
+ *
+ * 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 .
+ */
+
+#include "bootloader.h"
+
+#include
+
+#define MAGIC_BOOT 0x544F4F42UL
+#define MAGIC_REG *(volatile uint32_t*)0x20004000
+
+void bootloader_jump(void) {
+ MAGIC_REG = MAGIC_BOOT;
+ NVIC_SystemReset();
+}
+
+void enter_bootloader_mode_if_requested(void) {}
+
diff --git a/keyboards/zhaqian/zq64/zq64.c b/keyboards/zhaqian/zq64/zq64.c
new file mode 100644
index 000000000000..16c7b1cb0bb2
--- /dev/null
+++ b/keyboards/zhaqian/zq64/zq64.c
@@ -0,0 +1,53 @@
+/* Copyright 2022 ZhaQian
+ *
+ * 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 .
+ */
+
+#include "zq64.h"
+
+#ifdef RGB_MATRIX_ENABLE
+led_config_t g_led_config = {
+{
+ {0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13},
+ {14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27},
+ {28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, NO_LED, 40},
+ {41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54},
+ {55, 56, 57, NO_LED, NO_LED, 58, NO_LED, NO_LED, NO_LED, 59, 60, 61, 62, 63},
+}, {
+ {0, 0}, {16, 0}, {32, 0}, {48, 0}, {64, 0}, {80, 0}, {96, 0}, {112, 0}, {128, 0}, {144, 0}, {160, 0}, {176, 0}, {192, 0}, {216, 0},
+ {4, 16}, {24, 16}, {40, 16}, {56, 16}, {72, 16}, {88, 16}, {104, 16}, {120, 16}, {136, 16}, {152, 16}, {168, 16}, {184, 16}, {200, 16}, {220, 16},
+ {6, 32}, {28, 32}, {44, 32}, {60, 32}, {76, 32}, {92, 32}, {108, 32}, {124, 32}, {140, 32}, {156, 32}, {172, 32}, {188, 32}, {214, 32},
+ {8, 48}, {32, 48}, {48, 48}, {64, 48}, {80, 48}, {96, 48}, {112, 48}, {128, 48}, {144, 48}, {160, 48}, {176, 48}, {192, 48}, {208, 48}, {224, 48},
+ {2, 64}, {22, 64}, {42, 64}, {102, 64}, {160, 64}, {176, 64}, {192, 64}, {208, 64}, {224, 64},
+}, {
+ 1, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1,
+ 1, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1,
+ 1, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1,
+ 1, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1, 4, 4, 4,
+ 1, 1, 1, 1, 1, 1, 4, 4, 4,
+}
+};
+#endif
+
+#ifdef RGB_DISABLE_WHEN_USB_SUSPENDED
+void suspend_power_down_kb(void) {
+ rgb_matrix_set_suspend_state(true);
+ suspend_power_down_user();
+}
+
+void suspend_wakeup_init_kb(void) {
+ rgb_matrix_set_suspend_state(false);
+ suspend_wakeup_init_user();
+}
+#endif
diff --git a/keyboards/zhaqian/zq64/zq64.h b/keyboards/zhaqian/zq64/zq64.h
new file mode 100644
index 000000000000..ffa200ac06d2
--- /dev/null
+++ b/keyboards/zhaqian/zq64/zq64.h
@@ -0,0 +1,34 @@
+/* Copyright 2022 ZhaQian
+ *
+ * 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 .
+ */
+
+#pragma once
+
+#include "quantum.h"
+
+#define LAYOUT( \
+ K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K013, \
+ K100, K101, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, K112, K113, \
+ K200, K201, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K213, \
+ K300, K301, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, K312, K313, \
+ K400, K401, K402, K403, K404, K405, K409, K410, K411, K412, K413 \
+) { \
+ { K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K013 }, \
+ { K100, K101, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, K112, K113 }, \
+ { K200, K201, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, KC_NO, K213 }, \
+ { K300, K301, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, K312, K313 }, \
+ { K400, K401, K402, K403, K404, K405, KC_NO, KC_NO, KC_NO, K409, K410, K411, K412, K413 } \
+}
+
diff --git a/keyboards/zhaqian/zq64/zq64_via.json b/keyboards/zhaqian/zq64/zq64_via.json
new file mode 100644
index 000000000000..5b69149ed846
--- /dev/null
+++ b/keyboards/zhaqian/zq64/zq64_via.json
@@ -0,0 +1,173 @@
+{
+ "name": "ZQ64",
+ "vendorId": "0x00AA",
+ "productId": "0xAA0E",
+ "lighting": {
+ "extends": "none",
+ "keycodes": "qmk"
+ },
+ "matrix": { "rows": 5, "cols": 14 },
+ "customKeycodes": [
+ {
+ "name": "Radial\nButton",
+ "title": "Radial Controller Button in Windows 10",
+ "shortName": "Radial\nButton"
+ },
+ {
+ "name": "Radial\nLeft",
+ "title": "Radial Controller Counter Clockwise in Windows 10",
+ "shortName": "Radial\nLeft"
+ },
+ {
+ "name": "Radial\nRight",
+ "title": "Radial Controller Clockwise in Windows 10",
+ "shortName": "Radial\nRight"
+ },
+ {
+ "name": "Radial\nLeft\nHold",
+ "title": "Radial Controller Continue Counter Clockwise in Windows 10",
+ "shortName": "Radial\nLeftC"
+ },
+ {
+ "name": "Radial\nRight\nHold",
+ "title": "Radial Controller Continue Clockwise in Windows 10",
+ "shortName": "Radial\nRightC"
+ }
+ ],
+ "layouts": {
+ "labels": [
+ ["Encoder","CLOSE","OPEN"]
+ ],
+ "keymap":[
+ [
+ "4,3\n\n\n0,1",
+ {
+ "x": -1,
+ "d": true
+ },
+ "\n\n\n0,0",
+ "0,0\n\n\n0,1",
+ {
+ "x": -1,
+ "c": "#777777"
+ },
+ "0,0\n\n\n0,0",
+ {
+ "c": "#cccccc"
+ },
+ "0,1",
+ "0,2",
+ "0,3",
+ "0,4",
+ "0,5",
+ "0,6",
+ "0,7",
+ "0,8",
+ "0,9",
+ "0,10",
+ "0,11",
+ "0,12",
+ {
+ "w": 2
+ },
+ "0,13"
+ ],
+ [
+ "4,4\n\n\n0,1",
+ {
+ "x": -1,
+ "d": true
+ },
+ "\n\n\n0,0",
+ {
+ "w": 1.5
+ },
+ "1,0",
+ "1,1",
+ "1,2",
+ "1,3",
+ "1,4",
+ "1,5",
+ "1,6",
+ "1,7",
+ "1,8",
+ "1,9",
+ "1,10",
+ "1,11",
+ "1,12",
+ {
+ "w": 1.5
+ },
+ "1,13"
+ ],
+ [
+ {
+ "x": 1,
+ "w": 1.75
+ },
+ "2,0",
+ "2,1",
+ "2,2",
+ "2,3",
+ "2,4",
+ "2,5",
+ "2,6",
+ "2,7",
+ "2,8",
+ "2,9",
+ "2,10",
+ "2,11",
+ {
+ "c": "#777777",
+ "w": 2.25
+ },
+ "2,13"
+ ],
+ [
+ {
+ "x": 1,
+ "c": "#cccccc",
+ "w": 2
+ },
+ "3,0",
+ "3,1",
+ "3,2",
+ "3,3",
+ "3,4",
+ "3,5",
+ "3,6",
+ "3,7",
+ "3,8",
+ "3,9",
+ "3,10",
+ "3,11",
+ "3,12",
+ "3,13"
+ ],
+ [
+ {
+ "x": 1,
+ "w": 1.25
+ },
+ "4,0",
+ {
+ "w": 1.25
+ },
+ "4,1",
+ {
+ "w": 1.25
+ },
+ "4,2",
+ {
+ "w": 6.25
+ },
+ "4,5",
+ "4,9",
+ "4,10",
+ "4,11",
+ "4,12",
+ "4,13"
+ ]
+ ]
+ }
+ }
diff --git a/keyboards/zhaqian/zq68/keymaps/default/rgb_matrix_kb.inc b/keyboards/zhaqian/zq68/keymaps/default/rgb_matrix_kb.inc
index 344eb4f5ac16..3c584068e822 100755
--- a/keyboards/zhaqian/zq68/keymaps/default/rgb_matrix_kb.inc
+++ b/keyboards/zhaqian/zq68/keymaps/default/rgb_matrix_kb.inc
@@ -1,27 +1,3 @@
-#ifdef RGB_MATRIX_CUSTOM_EFFECT_ANIMATION
-#define RGB_MATRIX_EFFECT_CANDY_TAP
-#define RGB_MATRIX_EFFECT_CYCLE_BAND_PINWHEEL_SAT
-#define RGB_MATRIX_EFFECT_CYCLE_BAND_PINWHEEL_VAL
-#define RGB_MATRIX_EFFECT_CYCLE_BAND_SPIRAL_SAT
-#define RGB_MATRIX_EFFECT_CYCLE_BAND_SPIRAL_VAL
-#define RGB_MATRIX_EFFECT_CYCLE_BANDVAL
-#define RGB_MATRIX_EFFECT_CYCLE_BREATHING
-#define RGB_MATRIX_EFFECT_CYCLE_DOWN_UP
-#define RGB_MATRIX_EFFECT_CYCLE_IN_OUT_DUAL
-#define RGB_MATRIX_EFFECT_CYCLE_IN_OUT
-#define RGB_MATRIX_EFFECT_CYCLE_MULTISPLASH
-#define RGB_MATRIX_EFFECT_CYCLE_REACTIVE_MULTICROSS
-#define RGB_MATRIX_EFFECT_CYCLE_REACTIVE_MULTINEXUS
-#define RGB_MATRIX_EFFECT_CYCLE_REACTIVE_MULTIWIDE
-#define RGB_MATRIX_EFFECT_CYCLE_RIGHT_LEFT
-#define RGB_MATRIX_EFFECT_FRACTAL_RGB
-#define RGB_MATRIX_EFFECT_FRACTAL
-#define RGB_MATRIX_EFFECT_KITT_RGB
-#define RGB_MATRIX_EFFECT_REACTIVE_MULTICROSS_RGB
-#define RGB_MATRIX_EFFECT_REACTIVE_MULTINEXUS_RGB
-#define RGB_MATRIX_EFFECT_REACTIVE_MULTIWIDE_RGB
-#endif
-
#include "zqlib/rgb_matrix_effect/cycle_breathing.h"
#include "zqlib/rgb_matrix_effect/cycle_bandval.h"
#include "zqlib/rgb_matrix_effect/cycle_band_pinwheel_sat.h"
@@ -35,8 +11,22 @@
#include "zqlib/rgb_matrix_effect/fractal.h"
#include "zqlib/rgb_matrix_effect/fractal_rgb.h"
#include "zqlib/rgb_matrix_effect/kitt_rgb.h"
+#include "zqlib/rgb_matrix_effect/cycle_sin_wave.h"
+#include "zqlib/rgb_matrix_effect/rainbow_sin_wave.h"
+#include "zqlib/rgb_matrix_effect/rainbow_sin_wave_reverse.h"
+#include "zqlib/rgb_matrix_effect/alter.h"
+#include "zqlib/rgb_matrix_effect/breathing_circle.h"
+#include "zqlib/rgb_matrix_effect/bloom.h"
+#include "zqlib/rgb_matrix_effect/commet.h"
+#include "zqlib/rgb_matrix_effect/rotate_rainbow.h"
+#include "zqlib/rgb_matrix_effect/motion_point.h"
+#include "zqlib/rgb_matrix_effect/rotate_beam.h"
+#include "zqlib/rgb_matrix_effect/stack.h"
+#include "zqlib/rgb_matrix_effect/swap.h"
+#include "zqlib/rgb_matrix_effect/zigzag.h"
#include "zqlib/rgb_matrix_effect/candy_tap.h"
+
#include "zqlib/rgb_matrix_effect/cycle_reactive_multiwide.h"
#include "zqlib/rgb_matrix_effect/cycle_reactive_multicross.h"
#include "zqlib/rgb_matrix_effect/cycle_reactive_multinexus.h"
@@ -47,4 +37,3 @@
#include "zqlib/rgb_matrix_effect/reactive_multicross_rgb.h"
#include "zqlib/rgb_matrix_effect/reactive_multinexus_rgb.h"
-
diff --git a/keyboards/zhaqian/zq68/zq68_via.json b/keyboards/zhaqian/zq68/zq68_via.json
index c3a4faec58d7..54ab1f1d6647 100755
--- a/keyboards/zhaqian/zq68/zq68_via.json
+++ b/keyboards/zhaqian/zq68/zq68_via.json
@@ -33,7 +33,7 @@
"title": "Radial Controller Continue Clockwise in Windows 10",
"shortName": "Radial\nRightC"
}
- ],
+ ],
"layouts": {
"labels": [
["Encoder", "CLOSE", "OPEN"]