diff --git a/keyboards/keychron/bluetooth/bat_level_animation.c b/keyboards/keychron/bluetooth/bat_level_animation.c deleted file mode 100644 index e63735bcff..0000000000 --- a/keyboards/keychron/bluetooth/bat_level_animation.c +++ /dev/null @@ -1,142 +0,0 @@ - -#include "quantum.h" -#include "bluetooth.h" -#include "indicator.h" -#include "lpm.h" -#if defined(PROTOCOL_CHIBIOS) -# include -#elif if defined(PROTOCOL_LUFA) -# include "lufa.h" -#endif -#include "eeprom.h" - -#ifndef BAT_LEVEL_GROWING_INTERVAL -# define BAT_LEVEL_GROWING_INTERVAL 150 -#endif - -#ifndef BAT_LEVEL_ON_INTERVAL -# define BAT_LEVEL_ON_INTERVAL 3000 -#endif - -#ifdef LED_MATRIX_ENABLE -# define LED_DRIVER_IS_ENABLED led_matrix_is_enabled -#endif - -#ifdef RGB_MATRIX_ENABLE -# define LED_DRIVER_IS_ENABLED rgb_matrix_is_enabled -#endif - -enum { - BAT_LVL_ANI_NONE, - BAT_LVL_ANI_GROWING, - BAT_LVL_ANI_BLINK_OFF, - BAT_LVL_ANI_BLINK_ON, -}; - -static uint8_t animation_state = 0; -static uint32_t bat_lvl_ani_timer_buffer = 0; -static uint8_t bat_percentage; -static uint8_t cur_percentage; -static uint32_t time_interval; -#ifdef RGB_MATRIX_ENABLE -static uint8_t r, g, b; -#endif - -extern indicator_config_t indicator_config; -extern backlight_state_t original_backlight_state; - -void bat_level_animiation_start(uint8_t percentage) { - /* Turn on backlight mode for indicator */ - indicator_enable(); - - animation_state = BAT_LVL_ANI_GROWING; - bat_percentage = percentage; - bat_lvl_ani_timer_buffer = sync_timer_read32(); - cur_percentage = 0; - time_interval = BAT_LEVEL_GROWING_INTERVAL; -#ifdef RGB_MATRIX_ENABLE - r = g = b = 255; -#endif -} - -void bat_level_animiation_stop(void) { - animation_state = BAT_LVL_ANI_NONE; -} - -bool bat_level_animiation_actived(void) { - return animation_state; -} - -void bat_level_animiation_indicate(void) { -#ifdef LED_MATRIX_ENABLE - uint8_t bat_lvl_led_list[10] = BAT_LEVEL_LED_LIST; - - for (uint8_t i = 0; i <= LED_MATRIX_LED_COUNT; i++) { - led_matrix_set_value(i, 0); - } - - if (animation_state == BAT_LVL_ANI_GROWING || animation_state == BAT_LVL_ANI_BLINK_ON) - for (uint8_t i = 0; i < cur_percentage / 10; i++) - led_matrix_set_value(bat_lvl_led_list[i], 255); -#endif - -#ifdef RGB_MATRIX_ENABLE - uint8_t bat_lvl_led_list[10] = BAT_LEVEL_LED_LIST; - - for (uint8_t i = 0; i <= RGB_MATRIX_LED_COUNT; i++) { - rgb_matrix_set_color(i, 0, 0, 0); - } - - if (animation_state == BAT_LVL_ANI_GROWING || animation_state == BAT_LVL_ANI_BLINK_ON) { - for (uint8_t i = 0; i < cur_percentage / 10; i++) { - rgb_matrix_set_color(bat_lvl_led_list[i], r, g, b); - } - } -#endif -} - -void bat_level_animiation_update(void) { - switch (animation_state) { - case BAT_LVL_ANI_GROWING: - if (cur_percentage < bat_percentage) - cur_percentage += 10; - else { - if (cur_percentage == 0) cur_percentage = 10; - animation_state = BAT_LVL_ANI_BLINK_OFF; - } - break; - - case BAT_LVL_ANI_BLINK_OFF: -#ifdef RGB_MATRIX_ENABLE - if (bat_percentage < 30) { - r = 255; - b = g = 0; - } else { - r = b = 0; - g = 255; - } -#endif - time_interval = BAT_LEVEL_ON_INTERVAL; - animation_state = BAT_LVL_ANI_BLINK_ON; - break; - - case BAT_LVL_ANI_BLINK_ON: - animation_state = BAT_LVL_ANI_NONE; - indicator_eeconfig_reload(); - if (indicator_config.value == 0 && !LED_DRIVER_IS_ENABLED()) { - indicator_disable(); - } - break; - - default: - break; - } - - bat_lvl_ani_timer_buffer = sync_timer_read32(); -} - -void bat_level_animiation_task(void) { - if (animation_state && sync_timer_elapsed32(bat_lvl_ani_timer_buffer) > time_interval) { - bat_level_animiation_update(); - } -} diff --git a/keyboards/keychron/bluetooth/bat_level_animation.h b/keyboards/keychron/bluetooth/bat_level_animation.h deleted file mode 100644 index 716e924103..0000000000 --- a/keyboards/keychron/bluetooth/bat_level_animation.h +++ /dev/null @@ -1,23 +0,0 @@ -/* Copyright 2022 @ lokher (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 . - */ - -#pragma once - -void bat_level_animiation_start(uint8_t percentage); -void bat_level_animiation_stop(void); -bool bat_level_animiation_actived(void); -void bat_level_animiation_indicate(void); -void bat_level_animiation_task(void); diff --git a/keyboards/keychron/bluetooth/battery.c b/keyboards/keychron/bluetooth/battery.c deleted file mode 100644 index 8c6438d4c5..0000000000 --- a/keyboards/keychron/bluetooth/battery.c +++ /dev/null @@ -1,140 +0,0 @@ -/* Copyright 2022 @ lokher (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 . - */ - -#include "quantum.h" -#include "bluetooth.h" -#include "battery.h" -#include "transport.h" -#include "ckbt51.h" -#include "lpm.h" -#include "indicator.h" -#include "rtc_timer.h" - -#define BATTERY_EMPTY_COUNT 10 -#define CRITICAL_LOW_COUNT 20 - -static uint32_t bat_monitor_timer_buffer = 0; -static uint16_t voltage = FULL_VOLTAGE_VALUE; -static uint8_t bat_empty = 0; -static uint8_t critical_low = 0; -static uint8_t bat_state; -static uint8_t power_on_sample = 0; - -void battery_init(void) { - bat_state = BAT_NOT_CHARGING; -} -__attribute__((weak)) void battery_measure(void) { - ckbt51_read_state_reg(0x05, 0x02); -} - -/* Calculate the voltage */ -__attribute__((weak)) void battery_calculate_voltage(uint16_t value) {} - -void battery_set_voltage(uint16_t value) { - voltage = value; -} - -uint16_t battery_get_voltage(void) { - return voltage; -} - -uint8_t battery_get_percentage(void) { - if (voltage > FULL_VOLTAGE_VALUE) return 100; - - if (voltage > EMPTY_VOLTAGE_VALUE) { - return ((uint32_t)voltage - EMPTY_VOLTAGE_VALUE) * 80 / (FULL_VOLTAGE_VALUE - EMPTY_VOLTAGE_VALUE) + 20; - } - - if (voltage > SHUTDOWN_VOLTAGE_VALUE) { - return ((uint32_t)voltage - SHUTDOWN_VOLTAGE_VALUE) * 20 / (EMPTY_VOLTAGE_VALUE - SHUTDOWN_VOLTAGE_VALUE); - } else - return 0; -} - -bool battery_is_empty(void) { - return bat_empty > BATTERY_EMPTY_COUNT; -} - -bool battery_is_critical_low(void) { - return critical_low > CRITICAL_LOW_COUNT; -} - -void battery_check_empty(void) { - if (voltage < EMPTY_VOLTAGE_VALUE) { - if (bat_empty <= BATTERY_EMPTY_COUNT) { - if (++bat_empty > BATTERY_EMPTY_COUNT) { -#if defined(BAT_LOW_LED_PIN) || defined(BAT_LOW_LED_PIN_STATE) - indicator_battery_low_enable(true); -#endif -#if defined(LOW_BAT_IND_INDEX) - indicator_battery_low_backlit_enable(true); -#endif - power_on_sample = VOLTAGE_POWER_ON_MEASURE_COUNT; - } - } - } -} - -void battery_check_critical_low(void) { - if (voltage < SHUTDOWN_VOLTAGE_VALUE) { - if (critical_low <= CRITICAL_LOW_COUNT) { - if (++critical_low > CRITICAL_LOW_COUNT) bluetooth_low_battery_shutdown(); - } - } else if (critical_low <= CRITICAL_LOW_COUNT) { - critical_low = 0; - } -} - -bool battery_power_on_sample(void) { - return power_on_sample < VOLTAGE_POWER_ON_MEASURE_COUNT; -} - -void battery_task(void) { - uint32_t t = rtc_timer_elapsed_ms(bat_monitor_timer_buffer); - if (get_transport() == TRANSPORT_BLUETOOTH && bluetooth_get_state() == BLUETOOTH_CONNECTED) { - if ((battery_power_on_sample() -#if defined(LED_MATRIX_ENABLE) || defined(RGB_MATRIX_ENABLE) - && !indicator_is_enabled() -#endif - && t > BACKLIGHT_OFF_VOLTAGE_MEASURE_INTERVAL) || - t > VOLTAGE_MEASURE_INTERVAL) { - - battery_check_empty(); - battery_check_critical_low(); - - bat_monitor_timer_buffer = rtc_timer_read_ms(); - if (bat_monitor_timer_buffer > RTC_MAX_TIME) { - bat_monitor_timer_buffer = 0; - rtc_timer_clear(); - } - - battery_measure(); - power_on_sample++; - if (power_on_sample > VOLTAGE_POWER_ON_MEASURE_COUNT) power_on_sample = VOLTAGE_POWER_ON_MEASURE_COUNT; - } - } - - if ((bat_empty || critical_low) && usb_power_connected()) { - bat_empty = false; - critical_low = false; -#if defined(BAT_LOW_LED_PIN) || defined(BAT_LOW_LED_PIN_STATE) - indicator_battery_low_enable(false); -#endif -#if defined(LOW_BAT_IND_INDEX) - indicator_battery_low_backlit_enable(false); -#endif - } -} diff --git a/keyboards/keychron/bluetooth/battery.h b/keyboards/keychron/bluetooth/battery.h deleted file mode 100644 index 45de2bc23a..0000000000 --- a/keyboards/keychron/bluetooth/battery.h +++ /dev/null @@ -1,60 +0,0 @@ -/* Copyright 2022 @ lokher (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 . - */ - -#pragma once - -enum { - BAT_NOT_CHARGING = 0, - BAT_CHARGING, - BAT_CHARGING_FINISHED, -}; - -#ifndef FULL_VOLTAGE_VALUE -# define FULL_VOLTAGE_VALUE 4100 -#endif - -#ifndef EMPTY_VOLTAGE_VALUE -# define EMPTY_VOLTAGE_VALUE 3500 -#endif - -#ifndef SHUTDOWN_VOLTAGE_VALUE -# define SHUTDOWN_VOLTAGE_VALUE 3300 -#endif - -#ifndef VOLTAGE_MEASURE_INTERVAL -# define VOLTAGE_MEASURE_INTERVAL 3000 -#endif - -#ifndef VOLTAGE_POWER_ON_MEASURE_COUNT -# define VOLTAGE_POWER_ON_MEASURE_COUNT 15 -#endif - -#ifndef BACKLIGHT_OFF_VOLTAGE_MEASURE_INTERVAL -# define BACKLIGHT_OFF_VOLTAGE_MEASURE_INTERVAL 200 -#endif - -void battery_init(void); -void battery_measure(void); -void battery_calculte_voltage(uint16_t value); -void battery_set_voltage(uint16_t value); -uint16_t battery_get_voltage(void); -uint8_t battery_get_percentage(void); -void indicator_battery_low_enable(bool enable); -bool battery_is_empty(void); -bool battery_is_critical_low(void); -bool battery_power_on_sample(void); - -void battery_task(void); diff --git a/keyboards/keychron/bluetooth/bluetooth.c b/keyboards/keychron/bluetooth/bluetooth.c deleted file mode 100644 index 3f539e271f..0000000000 --- a/keyboards/keychron/bluetooth/bluetooth.c +++ /dev/null @@ -1,493 +0,0 @@ -/* Copyright 2022 @ lokher (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 . - */ - -#include "action.h" -#include "quantum.h" -#include "bluetooth.h" -#include "report_buffer.h" -#include "lpm.h" -#include "battery.h" -#include "indicator.h" -#include "transport.h" -#include "rtc_timer.h" - -extern uint8_t pairing_indication; -extern host_driver_t chibios_driver; -extern report_buffer_t kb_rpt; -extern uint32_t retry_time_buffer; -extern uint8_t retry; - -#ifdef NKRO_ENABLE -extern nkro_t nkro; -#endif - -static uint8_t host_index = 0; -static uint8_t led_state = 0; - -extern bluetooth_transport_t bluetooth_transport; -static bluetooth_state_t bt_state = BLUETOOTH_RESET; -static bool pincodeEntry = false; -uint8_t bluetooth_report_protocol = true; - -/* declarations */ -uint8_t bluetooth_keyboard_leds(void); -void bluetooth_send_keyboard(report_keyboard_t *report); -void bluetooth_send_nkro(report_nkro_t *report); -void bluetooth_send_mouse(report_mouse_t *report); -void bluetooth_send_extra(report_extra_t *report); - -/* host struct */ -host_driver_t bluetooth_driver = {bluetooth_keyboard_leds, bluetooth_send_keyboard, bluetooth_send_nkro, bluetooth_send_mouse, bluetooth_send_extra}; - -#define BLUETOOTH_EVENT_QUEUE_SIZE 16 -bluetooth_event_t bt_event_queue[BLUETOOTH_EVENT_QUEUE_SIZE]; -uint8_t bt_event_queue_head; -uint8_t bt_event_queue_tail; - -void bluetooth_bt_event_queue_init(void) { - // Initialise the event queue - memset(&bt_event_queue, 0, sizeof(bt_event_queue)); - bt_event_queue_head = 0; - bt_event_queue_tail = 0; -} - -bool bluetooth_event_queue_enqueue(bluetooth_event_t event) { - uint8_t next = (bt_event_queue_head + 1) % BLUETOOTH_EVENT_QUEUE_SIZE; - if (next == bt_event_queue_tail) { - /* Override the first report */ - bt_event_queue_tail = (bt_event_queue_tail + 1) % BLUETOOTH_EVENT_QUEUE_SIZE; - } - bt_event_queue[bt_event_queue_head] = event; - bt_event_queue_head = next; - return true; -} - -static inline bool bluetooth_event_queue_dequeue(bluetooth_event_t *event) { - if (bt_event_queue_head == bt_event_queue_tail) { - return false; - } - *event = bt_event_queue[bt_event_queue_tail]; - bt_event_queue_tail = (bt_event_queue_tail + 1) % BLUETOOTH_EVENT_QUEUE_SIZE; - return true; -} - -/* - * Bluetooth init. - */ -void bluetooth_init(void) { - bt_state = BLUETOOTH_INITIALIZED; - - bluetooth_bt_event_queue_init(); -#ifndef DISABLE_REPORT_BUFFER - report_buffer_init(); -#endif - indicator_init(); -#ifdef BLUETOOTH_INT_INPUT_PIN - setPinInputHigh(BLUETOOTH_INT_INPUT_PIN); -#endif - - lpm_init(); - rtc_timer_init(); - -#ifdef BLUETOOTH_NKRO_ENABLE - keymap_config.raw = eeconfig_read_keymap(); - nkro.bluetooth = keymap_config.nkro; -#endif -} - -/* - * Bluetooth trasponrt init. Bluetooth module driver shall use this function to register a callback - * to its implementation. - */ -void bluetooth_set_transport(bluetooth_transport_t *transport) { - if (transport) memcpy(&bluetooth_transport, transport, sizeof(bluetooth_transport_t)); -} - -/* - * Enter pairing with current host index - */ -void bluetooth_pairing(void) { - if (battery_is_critical_low()) return; - - bluetooth_pairing_ex(0, NULL); - bt_state = BLUETOOTH_PARING; -} - -/* - * Enter pairing with specified host index and param - */ -void bluetooth_pairing_ex(uint8_t host_idx, void *param) { - if (battery_is_critical_low()) return; - - if (bluetooth_transport.pairing_ex) bluetooth_transport.pairing_ex(host_idx, param); - bt_state = BLUETOOTH_PARING; - - host_index = host_idx; -} - -/* - * Initiate connection request to paired host - */ -void bluetooth_connect(void) { - /* Work around empty report after wakeup, which leads to reconneect/disconnected loop */ - if (battery_is_critical_low() || sync_timer_read32() == 0) return; - - bluetooth_transport.connect_ex(0, 0); - bt_state = BLUETOOTH_RECONNECTING; -} - -/* - * Initiate connection request to paired host with argument - */ -void bluetooth_connect_ex(uint8_t host_idx, uint16_t timeout) { - if (battery_is_critical_low()) return; - - if (host_idx != 0) { - if (host_index == host_idx && bt_state == BLUETOOTH_CONNECTED) return; - host_index = host_idx; - led_state = 0; - } - bluetooth_transport.connect_ex(host_idx, timeout); - bt_state = BLUETOOTH_RECONNECTING; -} - -/* Initiate a disconnection */ -void bluetooth_disconnect(void) { - if (bluetooth_transport.disconnect) bluetooth_transport.disconnect(); -} - -/* Called when the BT device is reset. */ -static void bluetooth_enter_reset(uint8_t reason) { - bt_state = BLUETOOTH_RESET; - bluetooth_enter_reset_kb(reason); -} - -/* Enters discoverable state. Upon entering this state we perform the following actions: - * - change state to BLUETOOTH_PARING - * - set pairing indication - */ -static void bluetooth_enter_discoverable(uint8_t host_idx) { - bt_state = BLUETOOTH_PARING; - indicator_set(bt_state, host_idx); - bluetooth_enter_discoverable_kb(host_idx); -} - -/* - * Enters reconnecting state. Upon entering this state we perform the following actions: - * - change state to RECONNECTING - * - set reconnect indication - */ -static void bluetooth_enter_reconnecting(uint8_t host_idx) { - bt_state = BLUETOOTH_RECONNECTING; - indicator_set(bt_state, host_idx); - bluetooth_enter_reconnecting_kb(host_idx); -} - -/* Enters connected state. Upon entering this state we perform the following actions: - * - change state to CONNECTED - * - set connected indication - * - enable bluetooth NKRO is support - */ -static void bluetooth_enter_connected(uint8_t host_idx) { - bt_state = BLUETOOTH_CONNECTED; - indicator_set(bt_state, host_idx); - host_index = host_idx; - - clear_keyboard(); - - /* Enable NKRO since it may be disabled in pin code entry */ -#if defined(NKRO_ENABLE) && defined(BLUETOOTH_NKRO_ENABLE) - keymap_config.nkro = nkro.bluetooth; -#else - keymap_config.nkro = false; -#endif - - bluetooth_enter_connected_kb(host_idx); -#if defined(BAT_LOW_LED_PIN) || defined(BAT_LOW_LED_PIN_STATE) - if (battery_is_empty()) { - indicator_battery_low_enable(true); - } -#endif -} - -/* Enters disconnected state. Upon entering this state we perform the following actions: - * - change state to DISCONNECTED - * - set disconnected indication - */ -static void bluetooth_enter_disconnected(uint8_t host_idx) { - uint8_t previous_state = bt_state; - bt_state = BLUETOOTH_DISCONNECTED; - - if (previous_state == BLUETOOTH_CONNECTED) { - lpm_timer_reset(); - indicator_set(BLUETOOTH_SUSPEND, host_idx); - } else - indicator_set(bt_state, host_idx); - -#ifndef DISABLE_REPORT_BUFFER - report_buffer_init(); -#endif - retry = 0; - bluetooth_enter_disconnected_kb(host_idx); -#if defined(BAT_LOW_LED_PIN) || defined(BAT_LOW_LED_PIN_STATE) - indicator_battery_low_enable(false); -#endif -#if defined(LOW_BAT_IND_INDEX) - indicator_battery_low_backlit_enable(false); -#endif -} - -/* Enter pin code entry state. */ -static void bluetooth_enter_pin_code_entry(void) { -#if defined(NKRO_ENABLE) - keymap_config.nkro = FALSE; -#endif - pincodeEntry = true; - bluetooth_enter_pin_code_entry_kb(); -} - -/* Exit pin code entry state. */ -static void bluetooth_exit_pin_code_entry(void) { -#if defined(NKRO_ENABLE) - keymap_config.nkro = true; -#endif - pincodeEntry = false; - bluetooth_exit_pin_code_entry_kb(); -} - -__attribute__((weak)) void bluetooth_enter_reset_kb(uint8_t reason){}; -__attribute__((weak)) void bluetooth_enter_discoverable_kb(uint8_t host_idx){}; -__attribute__((weak)) void bluetooth_enter_reconnecting_kb(uint8_t host_idx){}; -__attribute__((weak)) void bluetooth_enter_connected_kb(uint8_t host_idx){}; -__attribute__((weak)) void bluetooth_enter_disconnected_kb(uint8_t host_idx){}; -__attribute__((weak)) void bluetooth_enter_pin_code_entry_kb(void) {} -__attribute__((weak)) void bluetooth_exit_pin_code_entry_kb(void){}; - -/* */ -static void bluetooth_hid_set_protocol(bool report_protocol) { - bluetooth_report_protocol = false; -} - -uint8_t bluetooth_keyboard_leds(void) { - if (bt_state == BLUETOOTH_CONNECTED) { - return led_state; - } - - return 0; -} - -extern keymap_config_t keymap_config; - -void bluetooth_send_keyboard(report_keyboard_t *report) { - if (bt_state == BLUETOOTH_PARING && !pincodeEntry) return; - - if (bt_state == BLUETOOTH_CONNECTED || (bt_state == BLUETOOTH_PARING && pincodeEntry)) { - if (bluetooth_transport.send_keyboard) { -#ifndef DISABLE_REPORT_BUFFER - bool firstBuffer = false; - if (report_buffer_is_empty() && report_buffer_next_inverval() && report_buffer_get_retry() == 0) { - firstBuffer = true; - } - - report_buffer_t report_buffer; - report_buffer.type = REPORT_TYPE_KB; - memcpy(&report_buffer.keyboard, report, sizeof(report_keyboard_t)); - report_buffer_enqueue(&report_buffer); - - if (firstBuffer) { - report_buffer_set_retry(0); - report_buffer_task(); - } -#else - bluetooth_transport.send_keyboard(&report->nkro.mods); -#endif - } - } else if (bt_state != BLUETOOTH_RESET) { - bluetooth_connect(); - } -} -void bluetooth_send_nkro(report_nkro_t *report) { - if (bt_state == BLUETOOTH_PARING && !pincodeEntry) return; - - if (bt_state == BLUETOOTH_CONNECTED || (bt_state == BLUETOOTH_PARING && pincodeEntry)) { - if (bluetooth_transport.send_keyboard) { -#ifndef DISABLE_REPORT_BUFFER - if (report_buffer_is_empty() && report_buffer_next_inverval()) { - bluetooth_transport.send_keyboard(&report->mods); - report_buffer_update_timer(); - } else { - report_buffer_t report_buffer; - report_buffer.type = REPORT_TYPE_NKRO; - memcpy(&report_buffer.nkro, report, sizeof(report_nkro_t)); - report_buffer_enqueue(&report_buffer); - } -#else - bluetooth_transport.send_nkro(&report->mods); -#endif - } - } else if (bt_state != BLUETOOTH_RESET) { - bluetooth_connect(); - } -} - -void bluetooth_send_mouse(report_mouse_t *report) { - if (bt_state == BLUETOOTH_CONNECTED) { - if (bluetooth_transport.send_mouse) bluetooth_transport.send_mouse((uint8_t *)report); - } else if (bt_state != BLUETOOTH_RESET) { - bluetooth_connect(); - } -} - -void bluetooth_send_system(uint16_t data) { - if (bt_state == BLUETOOTH_CONNECTED) { - if (bluetooth_transport.send_system) bluetooth_transport.send_system(data); - } else if (bt_state != BLUETOOTH_RESET) { - bluetooth_connect(); - } -} - -void bluetooth_send_consumer(uint16_t data) { - if (bt_state == BLUETOOTH_CONNECTED) { -#ifndef DISABLE_REPORT_BUFFER - if (report_buffer_is_empty() && report_buffer_next_inverval()) { - if (bluetooth_transport.send_consumer) bluetooth_transport.send_consumer(data); - report_buffer_update_timer(); - } else { - report_buffer_t report_buffer; - report_buffer.type = REPORT_TYPE_CONSUMER; - report_buffer.consumer = data; - report_buffer_enqueue(&report_buffer); - } -#else - if (bluetooth_transport.send_consumer) bluetooth_transport.send_consumer(data); -#endif - } else if (bt_state != BLUETOOTH_RESET) { - bluetooth_connect(); - } -} - -void bluetooth_send_extra(report_extra_t *report) { - if (report->report_id == REPORT_ID_SYSTEM) { - bluetooth_send_system(report->usage); - } else if (report->report_id == REPORT_ID_CONSUMER) { - bluetooth_send_consumer(report->usage); - } -} - -void bluetooth_low_battery_shutdown(void) { -#if defined(BAT_LOW_LED_PIN) || defined(BAT_LOW_LED_PIN_STATE) - indicator_battery_low_enable(false); -#endif -#if defined(LOW_BAT_IND_INDEX) - indicator_battery_low_backlit_enable(false); -#endif - clear_keyboard(); - send_keyboard_report(); - wait_ms(50); - bluetooth_disconnect(); -} - -void bluetooth_event_queue_task(void) { - bluetooth_event_t event; - while (bluetooth_event_queue_dequeue(&event)) { - switch (event.evt_type) { - case EVT_RESET: - bluetooth_enter_reset(event.params.reason); - break; - case EVT_CONNECTED: - bluetooth_enter_connected(event.params.hostIndex); - break; - case EVT_DISCOVERABLE: - bluetooth_enter_discoverable(event.params.hostIndex); - break; - case EVT_RECONNECTING: - bluetooth_enter_reconnecting(event.params.hostIndex); - break; - case EVT_DISCONNECTED: - led_state = 0; - bluetooth_enter_disconnected(event.params.hostIndex); - break; - case EVT_BT_PINCODE_ENTRY: - bluetooth_enter_pin_code_entry(); - break; - case EVT_EXIT_BT_PINCODE_ENTRY: - bluetooth_exit_pin_code_entry(); - break; - case EVT_HID_INDICATOR: - led_state = event.params.led; - break; - case EVT_HID_SET_PROTOCOL: - bluetooth_hid_set_protocol(event.params.protocol); - break; - case EVT_CONECTION_INTERVAL: - report_buffer_set_inverval(event.params.interval); - break; - default: - break; - } - } -} - -void bluetooth_task(void) { - bluetooth_transport.task(); - bluetooth_event_queue_task(); -#ifndef DISABLE_REPORT_BUFFER - report_buffer_task(); -#endif - indicator_task(); - battery_task(); - lpm_task(); -} - -void send_string_task(void) { - if (get_transport() == TRANSPORT_BLUETOOTH && bluetooth_get_state()== BLUETOOTH_CONNECTED) { - bluetooth_transport.task(); -#ifndef DISABLE_REPORT_BUFFER - report_buffer_task(); -#endif - } -} - -bluetooth_state_t bluetooth_get_state(void) { - return bt_state; -}; - -__attribute__((weak)) bool process_record_kb_bt(uint16_t keycode, keyrecord_t *record) { - return true; -}; - -bool process_record_kb(uint16_t keycode, keyrecord_t *record) { - if (!process_record_user(keycode, record)) { - return false; - } - - if (get_transport() == TRANSPORT_BLUETOOTH) { - lpm_timer_reset(); - -#if defined(BAT_LOW_LED_PIN) || defined(LOW_BAT_IND_INDEX) - if (battery_is_empty() && bluetooth_get_state() == BLUETOOTH_CONNECTED && record->event.pressed) { -# if defined(BAT_LOW_LED_PIN) || defined(BAT_LOW_LED_PIN_STATE) - indicator_battery_low_enable(true); -# endif -# if defined(LOW_BAT_IND_INDEX) - indicator_battery_low_backlit_enable(true); -# endif - } -#endif - } - return process_record_kb_bt(keycode, record); - // return process_record_user(keycode, record); -} diff --git a/keyboards/keychron/bluetooth/bluetooth.h b/keyboards/keychron/bluetooth/bluetooth.h deleted file mode 100644 index 44e8ffdc70..0000000000 --- a/keyboards/keychron/bluetooth/bluetooth.h +++ /dev/null @@ -1,89 +0,0 @@ -/* Copyright 2022 @ lokher (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 . - */ - -#pragma once - -#include "bluetooth_event_type.h" -#include "action.h" - -/* Low power mode */ -#ifndef LOW_POWER_MODE -# define LOW_POWER_MODE PM_STOP1 -#endif - -/* Wake pin used for blueooth module/controller to wake up MCU in low power mode*/ -#ifndef BLUETOOTH_INT_INPUT_PIN -# define WAKE_PIN A5 -#endif - -/* Type of an enumeration of the possible BT state.*/ -typedef enum { - BLUETOOTH_RESET, - BLUETOOTH_INITIALIZED, // 1 - BLUETOOTH_DISCONNECTED, // 2 - BLUETOOTH_CONNECTED, // 3 - BLUETOOTH_PARING, // 4 - BLUETOOTH_RECONNECTING, // 5 - BLUETOOTH_SUSPEND -} bluetooth_state_t; - -extern event_listener_t bt_driver; - -typedef struct { - void (*init)(bool); - void (*connect_ex)(uint8_t, uint16_t); - void (*pairing_ex)(uint8_t, void *); - void (*disconnect)(void); - void (*send_keyboard)(uint8_t *); - void (*send_nkro)(uint8_t *); - void (*send_consumer)(uint16_t); - void (*send_system)(uint16_t); - void (*send_mouse)(uint8_t *); - void (*task)(void); -} bluetooth_transport_t; - -void bluetooth_init(void); -void bluetooth_set_transport(bluetooth_transport_t *transport); -void bluetooth_task(void); - -bool bluetooth_event_queue_enqueue(bluetooth_event_t event); - -void bluetooth_connect(void); -void bluetooth_connect_ex(uint8_t host_idx, uint16_t timeout); -void bluetooth_disconnect(void); - -void bluetooth_pairing(void); -void bluetooth_pairing_ex(uint8_t host_idx, void *param); -bool bluetooth_is_activated(void); - -void bluetooth_enter_reset_kb(uint8_t reason); -void bluetooth_enter_discoverable_kb(uint8_t host_idx); -void bluetooth_enter_reconnecting_kb(uint8_t host_idx); -void bluetooth_enter_connected_kb(uint8_t host_idx); -void bluetooth_enter_disconnected_kb(uint8_t host_idx); -void bluetooth_enter_pin_code_entry_kb(void); -void bluetooth_exit_pin_code_entry_kb(void); - -void bluetooth_task(void); -void bluetooth_pre_task(void); -void bluetooth_post_task(void); -void send_string_task(void); - -bluetooth_state_t bluetooth_get_state(void); - -void bluetooth_low_battery_shutdown(void); - -bool process_record_kb_bt(uint16_t keycode, keyrecord_t *record); diff --git a/keyboards/keychron/bluetooth/bluetooth.mk b/keyboards/keychron/bluetooth/bluetooth.mk deleted file mode 100644 index 3a57a6d75d..0000000000 --- a/keyboards/keychron/bluetooth/bluetooth.mk +++ /dev/null @@ -1,23 +0,0 @@ - -OPT_DEFS += -DKC_BLUETOOTH_ENABLE - -BLUETOOTH_DIR = bluetooth -SRC += \ - $(BLUETOOTH_DIR)/bluetooth.c \ - $(BLUETOOTH_DIR)/report_buffer.c \ - $(BLUETOOTH_DIR)/ckbt51.c \ - $(BLUETOOTH_DIR)/indicator.c \ - $(BLUETOOTH_DIR)/bluetooth_main.c \ - $(BLUETOOTH_DIR)/transport.c \ - $(BLUETOOTH_DIR)/lpm.c \ - $(BLUETOOTH_DIR)/lpm_stm32l432.c \ - $(BLUETOOTH_DIR)/battery.c \ - $(BLUETOOTH_DIR)/factory_test.c \ - $(BLUETOOTH_DIR)/bat_level_animation.c \ - $(BLUETOOTH_DIR)/rtc_timer.c - -VPATH += $(TOP_DIR)/keyboards/keychron/$(BLUETOOTH_DIR) - -# Work around RTC clock issue without touching chibios, refer to the link for this bug -# https://forum.chibios.org/viewtopic.php?f=35&t=6197 -OPT_DEFS += -DRCC_APBENR1_RTCAPBEN diff --git a/keyboards/keychron/bluetooth/bluetooth_config.h b/keyboards/keychron/bluetooth/bluetooth_config.h deleted file mode 100644 index 26dbc81f6c..0000000000 --- a/keyboards/keychron/bluetooth/bluetooth_config.h +++ /dev/null @@ -1,38 +0,0 @@ -/* Copyright 2022 @ lokher (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 . - */ - -#ifndef BLUETOOTH_CONFIG_H -#define BLUETOOTH_CONFIG_H - -#include "config.h" - -// -#ifndef HOST_DEVICES_COUNT -# define HOST_DEVICES_COUNT 3 -#endif - -// Uint: Second -#ifndef DISCONNECTED_BACKLIGHT_OFF_DELAY_TIME -# define DISCONNECTED_BACKLIGHT_OFF_DELAY_TIME 40 -#endif - -// Uint: Second, the timer restarts on key activities. -#ifndef CONNECTED_BACKLIGHT_OFF_DELAY_TIME -# define CONNECTED_BACKLIGHT_OFF_DELAY_TIME 600 -#endif - -#endif - diff --git a/keyboards/keychron/bluetooth/bluetooth_event_type.h b/keyboards/keychron/bluetooth/bluetooth_event_type.h deleted file mode 100644 index 47d8adbcf4..0000000000 --- a/keyboards/keychron/bluetooth/bluetooth_event_type.h +++ /dev/null @@ -1,44 +0,0 @@ -/* Copyright 2022 @ lokher (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 . - */ - -#pragma once - -/* Type of an enumeration of the possible BT events.*/ -typedef enum { - EVT_NONE = 0, - EVT_RESET, - EVT_DISCOVERABLE, - EVT_RECONNECTING, - EVT_CONNECTED, - EVT_DISCONNECTED, - EVT_BT_PINCODE_ENTRY, - EVT_EXIT_BT_PINCODE_ENTRY, - EVT_HID_SET_PROTOCOL, - EVT_HID_INDICATOR, - EVT_CONECTION_INTERVAL, -} event_type_t; - -typedef struct { - event_type_t evt_type; /*The type of the event. */ - union { - uint8_t reason; /* Parameters to BLUETOOTH_RESET event */ - uint8_t hostIndex; /* Parameters to connection event from EVT_DISCOVERABLE to EVT_DISCONECTED */ - uint8_t led; /* Parameters to EVT_HID_INDICATOR event */ - uint8_t protocol; /* Parameters to EVT_HID_SET_PROTOCOL event */ - uint8_t interval; /* Parameters to EVT_CONECTION_INTERVAL event */ - } params; -} bluetooth_event_t; - diff --git a/keyboards/keychron/bluetooth/bluetooth_main.c b/keyboards/keychron/bluetooth/bluetooth_main.c deleted file mode 100644 index eabcc83826..0000000000 --- a/keyboards/keychron/bluetooth/bluetooth_main.c +++ /dev/null @@ -1,37 +0,0 @@ -/* Copyright 2022 @ lokher (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 . - */ - -#include "quantum.h" -#include "bluetooth.h" -#include "transport.h" - -__attribute__((weak)) void bluetooth_pre_task(void) {} -__attribute__((weak)) void bluetooth_post_task(void) {} - -void bluetooth_tasks(void) { - bluetooth_pre_task(); - bluetooth_task(); - bluetooth_post_task(); - - /* usb_remote_wakeup() should be invoked last so that we have chance - * to switch to bluetooth after start-up when usb is not connected - */ - if (get_transport() == TRANSPORT_USB) usb_remote_wakeup(); -} - -void housekeeping_task_kb(void) { - bluetooth_tasks(); -} diff --git a/keyboards/keychron/bluetooth/ckbt51.c b/keyboards/keychron/bluetooth/ckbt51.c deleted file mode 100644 index 8c8233996e..0000000000 --- a/keyboards/keychron/bluetooth/ckbt51.c +++ /dev/null @@ -1,606 +0,0 @@ -/* Copyright 2021 @ 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 . - */ - -#include -#include "quantum.h" -#include "ckbt51.h" -#include "bluetooth.h" -#include "battery.h" -#include "raw_hid.h" -#include "report_buffer.h" - -#ifndef RAW_EPSIZE -# define RAW_EPSIZE 32 -#endif - -#ifndef CKBT51_INT_INPUT_PIN -# error "CKBT51_INT_INPUT_PIN is not defined" -#endif - -#ifndef CKBT51_TX_RETRY_COUNT -# define CKBT51_TX_RETRY_COUNT 3 -#endif - -/* CKBT51 disable its uart peripheral to save power if uart inactivity for 3s, need to - * assert this pin and wait some time for its uart getting ready before sending data*/ -#define CKBT51_WAKE_WAIT_TIME 3000 // us - -enum { - /* HID Report */ - CKBT51_CMD_SEND_KB = 0x11, - CKBT51_CMD_SEND_KB_NKRO = 0x12, - CKBT51_CMD_SEND_CONSUMER = 0x13, - CKBT51_CMD_SEND_SYSTEM = 0x14, - CKBT51_CMD_SEND_FN = 0x15, // Not used currently - CKBT51_CMD_SEND_MOUSE = 0x16, // Not used currently - CKBT51_CMD_SEND_BOOT_KB = 0x17, - /* Bluetooth connections */ - CKBT51_CMD_PAIRING = 0x21, - CKBT51_CMD_CONNECT = 0x22, - CKBT51_CMD_DISCONNECT = 0x23, - CKBT51_CMD_SWITCH_HOST = 0x24, - CKBT51_CMD_READ_STATE_REG = 0x25, - /* Battery */ - CKBT51_CMD_BATTERY_MANAGE = 0x31, - CKBT51_CMD_UPDATE_BAT_LVL = 0x32, - /* Set/get parameters */ - CKBT51_CMD_GET_MODULE_INFO = 0x40, - CKBT51_CMD_SET_CONFIG = 0x41, - CKBT51_CMD_GET_CONFIG = 0x42, - CKBT51_CMD_SET_BDA = 0x43, - CKBT51_CMD_GET_BDA = 0x44, - CKBT51_CMD_SET_NAME = 0x45, - CKBT51_CMD_GET_NAME = 0x46, - /* DFU */ - CKBT51_CMD_GET_DFU_VER = 0x60, - CKBT51_CMD_HAND_SHAKE_TOKEN = 0x61, - CKBT51_CMD_START_DFU = 0x62, - CKBT51_CMD_SEND_FW_DATA = 0x63, - CKBT51_CMD_VERIFY_CRC32 = 0x64, - CKBT51_CMD_SWITCH_FW = 0x65, - /* Factory test */ - CKBT51_CMD_FACTORY_RESET = 0x71, - CKBT51_CMD_INT_PIN_TEST = 0x72, - CKBT51_CMD_RADIO_TEST = 0x73, - /* Event */ - CKBT51_EVT_CKBT51_CMD_RECEIVED = 0xA1, - CKBT51_EVT_OTA_RSP = 0xA3, - CKBT51_CONNECTION_EVT_ACK = 0xA4, -}; - -enum { - CKBT51_EVT_ACK = 0xA1, - CKBT51_EVT_QUERY_RSP = 0xA2, - CKBT51_EVT_RESET = 0xB0, - CKBT51_EVT_LE_CONNECTION = 0xB1, - CKBT51_EVT_HOST_TYPE = 0xB2, - CKBT51_EVT_CONNECTION = 0xB3, - CKBT51_EVT_HID_EVENT = 0xB4, - CKBT51_EVT_BATTERY = 0xB5, -}; - -enum { CKBT51_CONNECTED = 0x20, CKBT51_DISCOVERABLE = 0x21, CKBT51_RECONNECTING = 0x22, CKBT51_DISCONNECTED = 0x23, CKBT51_PINCODE_ENTRY = 0x24, CKBT51_EXIT_PINCODE_ENTRY = 0x25 }; - -enum { - ACK_SUCCESS = 0x00, - ACK_CHECKSUM_ERROR, - ACK_FIFO_HALF_WARNING, - ACK_FIFO_FULL_ERROR, -}; - -static uint8_t payload[PACKET_MAX_LEN]; -static uint8_t reg_offset = 0xFF; - -bluetooth_transport_t bluetooth_transport = {ckbt51_init, ckbt51_connect, ckbt51_become_discoverable, ckbt51_disconnect, ckbt51_send_keyboard, ckbt51_send_nkro, ckbt51_send_consumer, ckbt51_send_system, ckbt51_send_mouse, ckbt51_task}; - -void ckbt51_init(bool wakeup_from_low_power_mode) { -#if (HAL_USE_SERIAL == TRUE) - SerialConfig config = {460800, 0, USART_CR2_STOP1_BITS, 0}; - - if (wakeup_from_low_power_mode) { - sdInit(); - sdStart(&WT_DRIVER, &config); - - return; - } - - sdStart(&WT_DRIVER, &config); - palSetPadMode(WT_DRIVER_UART_TX_BANK, WT_DRIVER_UART_TX, PAL_MODE_ALTERNATE(WT_DRIVER_UART_TX_PAL_MODE)); - palSetPadMode(WT_DRIVER_UART_RX_BANK, WT_DRIVER_UART_RX, PAL_MODE_ALTERNATE(WT_DRIVER_UART_RX_PAL_MODE)); -#endif - - setPinOutput(CKBT51_INT_INPUT_PIN); - writePinHigh(CKBT51_INT_INPUT_PIN); -} - -void ckbt51_send_cmd(uint8_t* payload, uint8_t len, bool ack_enable, bool retry) { - static uint8_t sn = 0; - uint8_t i; - uint8_t pkt[PACKET_MAX_LEN] = {0}; - memset(pkt, 0, PACKET_MAX_LEN); - - if (!retry) ++sn; - if (sn == 0) ++sn; - - systime_t start = 0; - - for (i = 0; i < 3; i++) { - writePin(CKBT51_INT_INPUT_PIN, i % 2); - start = chVTGetSystemTime(); - while (chTimeI2US(chVTTimeElapsedSinceX(start)) < CKBT51_WAKE_WAIT_TIME / 3) { - }; - } - writePinHigh(CKBT51_INT_INPUT_PIN); - - uint16_t checksum = 0; - for (i = 0; i < len; i++) - checksum += payload[i]; - - i = 0; - pkt[i++] = 0xAA; - pkt[i++] = ack_enable ? 0x56 : 0x55; - pkt[i++] = len + 2; - pkt[i++] = ~(len + 2) & 0xFF; - pkt[i++] = sn; - memcpy(pkt + i, payload, len); - i += len; - pkt[i++] = checksum & 0xFF; - pkt[i++] = (checksum >> 8) & 0xFF; - - sdWrite(&WT_DRIVER, pkt, i); -} - -void ckbt51_send_keyboard(uint8_t* report) { - uint8_t i = 0; - memset(payload, 0, PACKET_MAX_LEN); - - payload[i++] = CKBT51_CMD_SEND_KB; - memcpy(payload + i, report, 8); - i += 8; - - ckbt51_send_cmd(payload, i, true, false); -} - -void ckbt51_send_nkro(uint8_t* report) { - uint8_t i = 0; - memset(payload, 0, PACKET_MAX_LEN); - - payload[i++] = CKBT51_CMD_SEND_KB_NKRO; - memcpy(payload + i, report, 20); // NKRO report lenght is limited to 20 bytes - i += 20; - - ckbt51_send_cmd(payload, i, true, false); -} - -void ckbt51_send_consumer(uint16_t report) { - uint8_t i = 0; - memset(payload, 0, PACKET_MAX_LEN); - - payload[i++] = CKBT51_CMD_SEND_CONSUMER; - payload[i++] = report & 0xFF; - payload[i++] = ((report) >> 8) & 0xFF; - i += 4; // QMK doesn't send multiple consumer reports, just skip 2nd and 3rd consumer reports - - ckbt51_send_cmd(payload, i, true, false); -} - -void ckbt51_send_system(uint16_t report) { - /* CKBT51 supports only System Sleep */ - if ((report & 0xFF) != 0x82) return; - - uint8_t i = 0; - memset(payload, 0, PACKET_MAX_LEN); - - payload[i++] = CKBT51_CMD_SEND_SYSTEM; - payload[i++] = 0x01 << ((report & 0xFF) - 0x82); - - ckbt51_send_cmd(payload, i, true, false); -} - -void ckbt51_send_mouse(uint8_t* report) { - uint8_t i = 0; - memset(payload, 0, PACKET_MAX_LEN); - - payload[i++] = CKBT51_CMD_SEND_MOUSE; // Cmd type - payload[i++] = report[1]; // Button - payload[i++] = report[2]; // X - payload[i++] = (report[2] & 0x80) ? 0xff : 0x00; // ckbt51 use 16bit report, set high byte - payload[i++] = report[3]; // Y - payload[i++] = (report[3] & 0x80) ? 0xff : 0x00; // ckbt51 use 16bit report, set high byte - payload[i++] = report[4]; // V wheel - payload[i++] = report[5]; // H wheel - - ckbt51_send_cmd(payload, i, false, false); -} - -/* Send ack to connection event, bluetooth module will retry 2 times if no ack received */ -void ckbt51_send_conn_evt_ack(void) { - uint8_t i = 0; - memset(payload, 0, PACKET_MAX_LEN); - - payload[i++] = CKBT51_CONNECTION_EVT_ACK; - - ckbt51_send_cmd(payload, i, false, false); -} - -void ckbt51_become_discoverable(uint8_t host_idx, void* param) { - uint8_t i = 0; - memset(payload, 0, PACKET_MAX_LEN); - - pairing_param_t default_pairing_param = {0, 0, PAIRING_MODE_LESC_OR_SSP, BT_MODE_CLASSIC, 0, NULL}; - - if (param == NULL) { - param = &default_pairing_param; - } - pairing_param_t* p = (pairing_param_t*)param; - - payload[i++] = CKBT51_CMD_PAIRING; // Cmd type - payload[i++] = host_idx; // Host Index - payload[i++] = p->timeout & 0xFF; // Timeout - payload[i++] = (p->timeout >> 8) & 0xFF; - payload[i++] = p->pairingMode; - payload[i++] = p->BRorLE; // BR/LE - payload[i++] = p->txPower; // LE TX POWER - if (p->leName) { - memcpy(&payload[i], p->leName, strlen(p->leName)); - i += strlen(p->leName); - } - - ckbt51_send_cmd(payload, i, true, false); -} - -/* Timeout : 2 ~ 255 seconds */ -void ckbt51_connect(uint8_t hostIndex, uint16_t timeout) { - uint8_t i = 0; - memset(payload, 0, PACKET_MAX_LEN); - - payload[i++] = CKBT51_CMD_CONNECT; - payload[i++] = hostIndex; // Host index - payload[i++] = timeout & 0xFF; // Timeout - payload[i++] = (timeout >> 8) & 0xFF; - - ckbt51_send_cmd(payload, i, true, false); -} - -void ckbt51_disconnect(void) { - uint8_t i = 0; - memset(payload, 0, PACKET_MAX_LEN); - - payload[i++] = CKBT51_CMD_DISCONNECT; - payload[i++] = 0; // Sleep mode - - ckbt51_send_cmd(payload, i, true, false); -} - -void ckbt51_switch_host(uint8_t hostIndex) { - uint8_t i = 0; - memset(payload, 0, PACKET_MAX_LEN); - - payload[i++] = CKBT51_CMD_SWITCH_HOST; - payload[i++] = hostIndex; - - ckbt51_send_cmd(payload, i, true, false); -} - -void ckbt51_read_state_reg(uint8_t reg, uint8_t len) { - uint8_t i = 0; - memset(payload, 0, PACKET_MAX_LEN); - - payload[i++] = CKBT51_CMD_READ_STATE_REG; - payload[i++] = reg_offset = reg; - payload[i++] = len; - - // TODO - ckbt51_send_cmd(payload, i, false, false); -} - -void ckbt51_get_info(module_info_t* info) { - uint8_t i = 0; - memset(payload, 0, PACKET_MAX_LEN); - - payload[i++] = CKBT51_CMD_GET_MODULE_INFO; - ckbt51_send_cmd(payload, i, false, false); -} - -void ckbt51_set_param(module_param_t* param) { - uint8_t i = 0; - memset(payload, 0, PACKET_MAX_LEN); - - payload[i++] = CKBT51_CMD_SET_CONFIG; - memcpy(payload + i, param, sizeof(module_param_t)); - i += sizeof(module_param_t); - - ckbt51_send_cmd(payload, i, true, false); -} - -void ckbt51_get_param(module_param_t* param) { - uint8_t i = 0; - memset(payload, 0, PACKET_MAX_LEN); - - payload[i++] = CKBT51_CMD_GET_CONFIG; - - ckbt51_send_cmd(payload, i, false, false); -} - -void ckbt51_set_local_name(const char* name) { - uint8_t i = 0; - uint8_t len = strlen(name); - memset(payload, 0, PACKET_MAX_LEN); - - payload[i++] = CKBT51_CMD_SET_NAME; - memcpy(payload + i, name, len); - i += len; - ckbt51_send_cmd(payload, i, true, false); -} - -void ckbt51_get_local_name(void) { - uint8_t i = 0; - memset(payload, 0, PACKET_MAX_LEN); - - payload[i++] = CKBT51_CMD_GET_NAME; - - ckbt51_send_cmd(payload, i, false, false); -} - -void ckbt51_factory_reset(void) { - uint8_t i = 0; - memset(payload, 0, PACKET_MAX_LEN); - - payload[i++] = CKBT51_CMD_FACTORY_RESET; - - ckbt51_send_cmd(payload, i, false, false); -} - -void ckbt51_int_pin_test(bool enable) { - uint8_t i = 0; - memset(payload, 0, PACKET_MAX_LEN); - payload[i++] = CKBT51_CMD_INT_PIN_TEST; - payload[i++] = enable; - - ckbt51_send_cmd(payload, i, false, false); -} - -void ckbt51_radio_test(uint8_t channel) { - uint8_t i = 0; - memset(payload, 0, PACKET_MAX_LEN); - payload[i++] = CKBT51_CMD_RADIO_TEST; - payload[i++] = channel; - payload[i++] = 0; - - ckbt51_send_cmd(payload, i, false, false); -} - -void ckbt51_dfu_tx(uint8_t rsp, uint8_t* data, uint8_t len, uint8_t sn) { - uint16_t checksum = 0; - uint8_t buf[RAW_EPSIZE] = {0}; - uint8_t i = 0; - - buf[i++] = 0x03; - buf[i++] = 0xAA; - buf[i++] = 0x57; - buf[i++] = len; - buf[i++] = ~len; - buf[i++] = sn; - buf[i++] = rsp; - memcpy(&buf[i], data, len); - i += len; - - for (uint8_t k = 0; k < i; k++) - checksum += buf[i]; - - raw_hid_send(buf, RAW_EPSIZE); - - if (len > 25) { - i = 0; - memset(buf, 0, RAW_EPSIZE); - buf[i++] = 0x03; - memcpy(&buf[i], data + 25, len - 25); - i = i + len - 25; - raw_hid_send(buf, RAW_EPSIZE); - } -} - -void ckbt51_dfu_rx(uint8_t* data, uint8_t length) { - if (data[0] == 0xAA && (data[1] == 0x55 || data[1] == 0x56) && data[2] == (~data[3] & 0xFF)) { - uint16_t checksum = 0; - uint8_t payload_len = data[2]; - - /* Check payload_len validity */ - if (payload_len > RAW_EPSIZE - PACKECT_HEADER_LEN) return; - - uint8_t* payload = &data[PACKECT_HEADER_LEN]; - - for (uint8_t i = 0; i < payload_len - 2; i++) { - checksum += payload[i]; - } - - /* Verify checksum */ - if ((checksum & 0xFF) != payload[payload_len - 2] || checksum >> 8 != payload[payload_len - 1]) return; - static uint8_t sn = 0; - - bool retry = true; - if (sn != data[4]) { - sn = data[4]; - retry = false; - } - - if ((payload[0] & 0xF0) == 0x60) { - ckbt51_send_cmd(payload, payload_len - 2, data[1] == 0x56, retry); - } - } -} - -__attribute__((weak)) void ckbt51_default_ack_handler(uint8_t* data, uint8_t len){}; - -static void ack_handler(uint8_t* data, uint8_t len) { - switch (data[1]) { - case CKBT51_CMD_SEND_KB: - case CKBT51_CMD_SEND_KB_NKRO: - case CKBT51_CMD_SEND_CONSUMER: - case CKBT51_CMD_SEND_SYSTEM: - case CKBT51_CMD_SEND_MOUSE: - switch (data[2]) { - case ACK_SUCCESS: - report_buffer_set_retry(0); - report_buffer_set_inverval(DEFAULT_REPORT_INVERVAL_MS); - break; - case ACK_FIFO_HALF_WARNING: - report_buffer_set_retry(0); - report_buffer_set_inverval(DEFAULT_REPORT_INVERVAL_MS + 5); - break; - case ACK_FIFO_FULL_ERROR: - report_buffer_set_retry(10); - break; - } - break; - default: - ckbt51_default_ack_handler(data, len); - break; - } -} - -static void query_rsp_handler(uint8_t* data, uint8_t len) { - if (data[2]) return; - - switch (data[1]) { - case CKBT51_CMD_READ_STATE_REG: - switch (reg_offset) { - case 0x05: - battery_calculte_voltage(data[3] | (data[4] << 8)); - break; - } - reg_offset = 0xFF; - break; - default: - break; - } -} - -static void ckbt51_event_handler(uint8_t evt_type, uint8_t* data, uint8_t len, uint8_t sn) { - bluetooth_event_t event = {0}; - - switch (evt_type) { - case CKBT51_EVT_ACK: - ack_handler(data, len); - break; - case CKBT51_EVT_RESET: - dprintf("CKBT51_EVT_RESET\n"); - event.evt_type = EVT_RESET; - event.params.reason = data[0]; - break; - case CKBT51_EVT_LE_CONNECTION: - dprintf("CKBT51_EVT_LE_CONNECTION\n"); - break; - case CKBT51_EVT_HOST_TYPE: - dprintf("CKBT51_EVT_HOST_TYPE\n"); - break; - case CKBT51_EVT_CONNECTION: - dprintf("CKBT51_EVT_CONNECTION %d\n", data[0]); - /* Only connection status change message will retry 2 times if no ack */ - ckbt51_send_conn_evt_ack(); - switch (data[0]) { - case CKBT51_CONNECTED: - event.evt_type = EVT_CONNECTED; - break; - case CKBT51_DISCOVERABLE: - event.evt_type = EVT_DISCOVERABLE; - break; - case CKBT51_RECONNECTING: - event.evt_type = EVT_RECONNECTING; - break; - case CKBT51_DISCONNECTED: - event.evt_type = EVT_DISCONNECTED; - break; - case CKBT51_PINCODE_ENTRY: - event.evt_type = EVT_BT_PINCODE_ENTRY; - break; - case CKBT51_EXIT_PINCODE_ENTRY: - event.evt_type = EVT_EXIT_BT_PINCODE_ENTRY; - break; - } - event.params.hostIndex = data[2]; - break; - case CKBT51_EVT_HID_EVENT: - dprintf("CKBT51_EVT_HID_EVENT\n"); - event.evt_type = EVT_HID_INDICATOR; - event.params.led = data[0]; - break; - case CKBT51_EVT_QUERY_RSP: - dprintf("CKBT51_EVT_QUERY_RSP\n"); - query_rsp_handler(data, len); - break; - case CKBT51_EVT_OTA_RSP: - dprintf("CKBT51_EVT_OTA_RSP\n"); - ckbt51_dfu_tx(CKBT51_EVT_OTA_RSP, data, len, sn); - break; - case CKBT51_EVT_BATTERY: - if (data[0] == 0x01) { - dprintf("CKBT51_EVT_BATTERY\n"); - battery_calculte_voltage(data[1] | (data[2] << 8)); - } - break; - default: - dprintf("Unknown event!!!\n"); - break; - } - - if (event.evt_type) bluetooth_event_queue_enqueue(event); -} - -void ckbt51_task(void) { - static bool wait_for_new_pkt = true; - static uint8_t len = 0xff; - static uint8_t sn = 0; - - if (wait_for_new_pkt && WT_DRIVER.iqueue.q_counter >= PACKECT_HEADER_LEN) { - uint8_t buf[32] = {0}; - - if (wait_for_new_pkt) { - if (sdGet(&WT_DRIVER) == 0xAA && sdGet(&WT_DRIVER) == 0x57) { - for (uint8_t i = 0; i < 3; i++) { - buf[i] = sdGet(&WT_DRIVER); - } - // Check wheather len is valid - if ((~buf[0] & 0xFF) == buf[1]) { - len = buf[0]; - sn = buf[2]; - - wait_for_new_pkt = false; - } - } - } - } - - if (!wait_for_new_pkt && WT_DRIVER.iqueue.q_counter >= len) { - uint8_t buf[32] = {0}; - - for (uint8_t i = 0; i < len; i++) { - buf[i] = sdGetTimeout(&WT_DRIVER, TIME_IMMEDIATE); - } - - wait_for_new_pkt = true; - - uint16_t checksum = 0; - for (int i = 0; i < len - 2; i++) - checksum += buf[i]; - - if ((checksum & 0xff) == buf[len - 2] && ((checksum >> 8) & 0xff) == buf[len - 1]) { - ckbt51_event_handler(buf[0], buf + 1, len - 3, sn); - } else { - // TODO: Error handle - } - } -} diff --git a/keyboards/keychron/bluetooth/ckbt51.h b/keyboards/keychron/bluetooth/ckbt51.h deleted file mode 100644 index 123290f949..0000000000 --- a/keyboards/keychron/bluetooth/ckbt51.h +++ /dev/null @@ -1,157 +0,0 @@ -/* Copyright 2021 @ 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 . - */ - -#pragma once - -#include "stdint.h" - -#ifdef WT_DRIVER_UART_BANK -# define WT_DRIVER_UART_TX_BANK WT_DRIVER_UART_BANK -# define WT_DRIVER_UART_RX_BANK WT_DRIVER_UART_BANK -#endif - -#ifndef WT_DRIVER_UART_TX_BANK -# define WT_DRIVER_UART_TX_BANK GPIOA -#endif - -#ifndef WT_DRIVER_UART_RX_BANK -# define WT_DRIVER_UART_RX_BANK GPIOA -#endif - -#ifndef WT_DRIVER_UART_TX -# define WT_DRIVER_UART_TX 2 -#endif - -#ifndef WT_DRIVER_UART_RX -# define WT_DRIVER_UART_RX 3 -#endif - -#ifndef WT_DRIVER -# define WT_DRIVER SD2 -#endif - -#ifdef USE_GPIOV1 -# ifndef WT_DRIVER_UART_TX_PAL_MODE -# define WT_DRIVER_UART_TX_PAL_MODE PAL_MODE_STM32_ALTERNATE_PUSHPULL -# endif -# ifndef WT_DRIVER_UART_RX_PAL_MODE -# define WT_DRIVER_UART_RX_PAL_MODE PAL_MODE_STM32_ALTERNATE_PUSHPULL -# endif -#else -// The default PAL alternate modes are used to signal that the pins are used for I2C -# ifndef WT_DRIVER_UART_TX_PAL_MODE -# define WT_DRIVER_UART_TX_PAL_MODE 7 -# endif -# ifndef WT_DRIVER_UART_RX_PAL_MODE -# define WT_DRIVER_UART_RX_PAL_MODE 7 -# endif -#endif - -// Error checking -#if !STM32_SERIAL_USE_USART1 && !STM32_SERIAL_USE_USART2 && !STM32_SERIAL_USE_USART3 && !STM32_SERIAL_USE_UART4 && !STM32_SERIAL_USE_UART5 && !STM32_SERIAL_USE_USART6 && !STM32_SERIAL_USE_UART7 && !STM32_SERIAL_USE_UART8 && !STM32_SERIAL_USE_LPUART1 -# error "BT driver activated but no USART/UART peripheral assigned" -#endif - -#define PACKECT_HEADER_LEN 5 -#define BDA_LEN 6 -#define PACKET_MAX_LEN 64 - -enum { - PAIRING_MODE_DEFAULT = 0x00, - PAIRING_MODE_JUST_WORK, - PAIRING_MODE_PASSKEY_ENTRY, - PAIRING_MODE_LESC_OR_SSP, - PAIRING_MODE_INVALID -}; - -enum { - BT_MODE_DEFAUL, - BT_MODE_CLASSIC, - BT_MODE_LE, // Note: CKBT51 doesn't support BLE - BT_MODE_INVALID, -}; - -typedef struct { - uint8_t hostIndex; - uint16_t timeout; /* Pairing timeout, valid value range from 30 to 3600 seconds, 0 for default */ - uint8_t pairingMode; /* 0: default, 1: Just Works, 2: Passkey Entry */ - uint8_t BRorLE; /* Only available for dual mode module. Keep 0 for single mode module */ - uint8_t txPower; /* Only available for BLE module */ - const char* leName; /* Only available for BLE module */ -} pairing_param_t; - -typedef struct { - uint8_t type; - uint16_t full_votage; - uint16_t empty_voltage; - uint16_t shutdown_voltage; -} battery_param_t; - -typedef struct { - uint8_t model_name[11]; - uint8_t mode; - uint8_t bluetooth_version; - uint8_t firmware_version[11]; - uint8_t hardware_version[11]; - uint16_t cmd_set_verson; -} __attribute__((packed)) module_info_t; - -typedef struct { - uint8_t event_mode; /* Must be 0x02 */ - uint16_t connected_idle_timeout; - uint16_t pairing_timeout; /* Range: 30 ~ 3600 second, 0 for default */ - uint8_t pairing_mode; /* 0: default, 1: Just Works, 2: Passkey Entry */ - uint16_t reconnect_timeout; /* 0: default, 0xFF: Unlimited time, 2 ~ 254 seconds */ - uint8_t report_rate; /* 90 or 133 */ - uint8_t rsvd1; - uint8_t rsvd2; - uint8_t vendor_id_source; /* 0: From Bluetooth SIG, 1: From USB-IF */ - uint16_t verndor_id; /* No effect, the vendor ID is 0x3434 */ - uint16_t product_id; - /* Below parametes is only available for BLE module */ - uint16_t le_connection_interval_min; - uint16_t le_connection_interval_max; - uint16_t le_connection_interval_timeout; -} __attribute__((packed)) module_param_t; - -void ckbt51_init(bool wakeup_from_low_power_mode); -void ckbt51_send_cmd(uint8_t* payload, uint8_t len, bool ack_enable, bool retry); - -void ckbt51_send_keyboard(uint8_t* report); -void ckbt51_send_nkro(uint8_t* report); -void ckbt51_send_consumer(uint16_t report); -void ckbt51_send_system(uint16_t report); -void ckbt51_send_mouse(uint8_t* report); - -void ckbt51_become_discoverable(uint8_t host_idx, void* param); -void ckbt51_connect(uint8_t hostIndex, uint16_t timeout); -void ckbt51_disconnect(void); -void ckbt51_switch_host(uint8_t hostIndex); -void ckbt51_read_state_reg(uint8_t reg, uint8_t len); - -void ckbt51_get_info(module_info_t* info); -void ckbt51_set_param(module_param_t* param); -void ckbt51_get_param(module_param_t* param); -void ckbt51_set_local_name(const char* name); -void ckbt51_get_local_name(void); - -void ckbt51_factory_reset(void); -void ckbt51_int_pin_test(bool enable); -void ckbt51_dfu_rx(uint8_t* data, uint8_t length); -void ckbt51_radio_test(uint8_t channel); - -void ckbt51_task(void); - diff --git a/keyboards/keychron/bluetooth/factory_test.c b/keyboards/keychron/bluetooth/factory_test.c deleted file mode 100644 index ebf5f4fef6..0000000000 --- a/keyboards/keychron/bluetooth/factory_test.c +++ /dev/null @@ -1,343 +0,0 @@ -/* Copyright 2021 @ 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 . - */ - -#include "quantum.h" -#include "raw_hid.h" -#ifdef KC_BLUETOOTH_ENABLE -# include "transport.h" -# include "ckbt51.h" -#endif - -#ifndef RAW_EPSIZE -# define RAW_EPSIZE 32 -#endif - -#ifndef BL_TEST_KEY1 -# define BL_TEST_KEY1 KC_RIGHT -#endif - -#ifndef BL_TEST_KEY2 -# define BL_TEST_KEY2 KC_HOME -#endif - -extern bool bt_factory_reset; - -enum { - BACKLIGHT_TEST_OFF = 0, - BACKLIGHT_TEST_WHITE, - BACKLIGHT_TEST_RED, - BACKLIGHT_TEST_GREEN, - BACKLIGHT_TEST_BLUE, - BACKLIGHT_TEST_MAX, -}; - -enum { - KEY_PRESS_FN = 0x01 << 0, - KEY_PRESS_J = 0x01 << 1, - KEY_PRESS_Z = 0x01 << 2, - KEY_PRESS_BL_KEY1 = 0x01 << 3, - KEY_PRESS_BL_KEY2 = 0x01 << 4, - KEY_PRESS_FACTORY_RESET = KEY_PRESS_FN | KEY_PRESS_J | KEY_PRESS_Z, - KEY_PRESS_BACKLIGTH_TEST = KEY_PRESS_FN | KEY_PRESS_BL_KEY1 | KEY_PRESS_BL_KEY2, -}; - -enum { - FACTORY_TEST_CMD_BACKLIGHT = 0x01, - FACTORY_TEST_CMD_OS_SWITCH, - FACTORY_TEST_CMD_JUMP_TO_BL, - FACTORY_TEST_CMD_INT_PIN, - FACTORY_TEST_CMD_GET_TRANSPORT, - FACTORY_TEST_CMD_CHARGING_ADC, - FACTORY_TEST_CMD_RADIO_CARRIER, -}; - -enum { - OS_SWITCH = 0x01, -}; - -static uint32_t factory_reset_timer = 0; -static uint8_t factory_reset_state = 0; -static uint8_t backlight_test_mode = BACKLIGHT_TEST_OFF; - -static uint32_t factory_reset_ind_timer = 0; -static uint8_t factory_reset_ind_state = 0; -static bool report_os_sw_state = false; - -void factory_timer_start(void) { - factory_reset_timer = timer_read32() == 0 ? 1 : timer_read32(); -} - -static inline void factory_timer_check(void) { - if (sync_timer_elapsed32(factory_reset_timer) > 3000) { - factory_reset_timer = 0; - - if (factory_reset_state == KEY_PRESS_FACTORY_RESET) { - factory_reset_ind_timer = timer_read32() == 0 ? 1 : timer_read32(); - factory_reset_ind_state++; - - layer_state_t default_layer_tmp = default_layer_state; - eeconfig_init(); - default_layer_set(default_layer_tmp); -#ifdef LED_MATRIX_ENABLE - if (!led_matrix_is_enabled()) led_matrix_enable(); - led_matrix_init(); -#endif -#ifdef RGB_MATRIX_ENABLE - if (!rgb_matrix_is_enabled()) rgb_matrix_enable(); - rgb_matrix_init(); -#endif -#ifdef KC_BLUETOOTH_ENABLE - ckbt51_factory_reset(); - bt_factory_reset = true; -#endif - } else if (factory_reset_state == KEY_PRESS_BACKLIGTH_TEST) { -#ifdef LED_MATRIX_ENABLE - if (!led_matrix_is_enabled()) led_matrix_enable(); -#endif -#ifdef RGB_MATRIX_ENABLE - if (!rgb_matrix_is_enabled()) rgb_matrix_enable(); -#endif - backlight_test_mode = BACKLIGHT_TEST_WHITE; - } - - factory_reset_state = 0; - } -} - -static inline void factory_reset_ind_timer_check(void) { - if (factory_reset_ind_timer && timer_elapsed32(factory_reset_ind_timer) > 250) { - if (factory_reset_ind_state++ > 6) { - factory_reset_ind_timer = factory_reset_ind_state = 0; - } else { - factory_reset_ind_timer = timer_read32() == 0 ? 1 : timer_read32(); - } - } -} - -void process_record_factory_reset(uint16_t keycode, keyrecord_t *record) { - switch (keycode) { -#if defined(FN_KEY1) || defined(FN_KEY2) -# ifdef FN_KEY1 - case FN_KEY1: /* fall through */ -# endif -# ifdef FN_KEY2 - case FN_KEY2: -# endif - if (record->event.pressed) { - factory_reset_state |= KEY_PRESS_FN; - } else { - factory_reset_state &= ~KEY_PRESS_FN; - factory_reset_timer = 0; - } - break; -#endif - case KC_J: - if (record->event.pressed) { - factory_reset_state |= KEY_PRESS_J; - if (factory_reset_state == 0x07) factory_timer_start(); - } else { - factory_reset_state &= ~KEY_PRESS_J; - factory_reset_timer = 0; - } - break; - case KC_Z: - if (record->event.pressed) { - factory_reset_state |= KEY_PRESS_Z; - if (factory_reset_state == 0x07) factory_timer_start(); - } else { - factory_reset_state &= ~KEY_PRESS_Z; - factory_reset_timer = 0; - } - break; -#ifdef BL_TEST_KEY1 - case BL_TEST_KEY1: - if (record->event.pressed) { - if (backlight_test_mode) { - if (++backlight_test_mode >= BACKLIGHT_TEST_MAX) { - backlight_test_mode = BACKLIGHT_TEST_WHITE; - } - } else { - factory_reset_state |= KEY_PRESS_BL_KEY1; - if (factory_reset_state == 0x19) factory_timer_start(); - } - } else { - factory_reset_state &= ~KEY_PRESS_BL_KEY1; - factory_reset_timer = 0; - } - break; -#endif -#ifdef BL_TEST_KEY2 - case BL_TEST_KEY2: - if (record->event.pressed) { - if (backlight_test_mode) { - backlight_test_mode = BACKLIGHT_TEST_OFF; - } else { - factory_reset_state |= KEY_PRESS_BL_KEY2; - if (factory_reset_state == 0x19) factory_timer_start(); - } - } else { - factory_reset_state &= ~KEY_PRESS_BL_KEY2; - factory_reset_timer = 0; - } - break; -#endif - } -} - -#ifdef LED_MATRIX_ENABLE -bool led_matrix_indicators_user(void) { - if (factory_reset_ind_state) { - led_matrix_set_value_all(factory_reset_ind_state % 2 ? 0 : 255); - } - - return true; -} -#endif - -#ifdef RGB_MATRIX_ENABLE -bool rgb_matrix_indicators_user(void) { - if (factory_reset_ind_state) { - backlight_test_mode = BACKLIGHT_TEST_OFF; - rgb_matrix_set_color_all(factory_reset_ind_state % 2 ? 0 : 255, 0, 0); - } else if (backlight_test_mode) { - switch (backlight_test_mode) { - case BACKLIGHT_TEST_WHITE: - rgb_matrix_set_color_all(255, 255, 255); - break; - case BACKLIGHT_TEST_RED: - rgb_matrix_set_color_all(255, 0, 0); - break; - case BACKLIGHT_TEST_GREEN: - rgb_matrix_set_color_all(0, 255, 0); - break; - case BACKLIGHT_TEST_BLUE: - rgb_matrix_set_color_all(0, 0, 255); - break; - } - } - - return true; -} -#endif - -void factory_reset_task(void) { - if (factory_reset_timer) factory_timer_check(); - if (factory_reset_ind_timer) factory_reset_ind_timer_check(); -} - -void factory_test_send(uint8_t *payload, uint8_t length) { - uint16_t checksum = 0; - uint8_t data[RAW_EPSIZE] = {0}; - - uint8_t i = 0; - data[i++] = 0xAB; - - memcpy(&data[i], payload, length); - i += length; - - for (uint8_t i = 1; i < RAW_EPSIZE - 3; i++) - checksum += data[i]; - data[RAW_EPSIZE - 2] = checksum & 0xFF; - data[RAW_EPSIZE - 1] = (checksum >> 8) & 0xFF; - - raw_hid_send(data, RAW_EPSIZE); -} - -void factory_test_rx(uint8_t *data, uint8_t length) { - if (data[0] == 0xAB) { - uint16_t checksum = 0; - - for (uint8_t i = 1; i < RAW_EPSIZE - 3; i++) { - checksum += data[i]; - } - /* Verify checksum */ - if ((checksum & 0xFF) != data[RAW_EPSIZE - 2] || checksum >> 8 != data[RAW_EPSIZE - 1]) return; - -#ifdef KC_BLUETOOTH_ENABLE - uint8_t payload[32]; - uint8_t len = 0; -#endif - - switch (data[1]) { - case FACTORY_TEST_CMD_BACKLIGHT: - backlight_test_mode = data[2]; - factory_reset_timer = 0; - break; - case FACTORY_TEST_CMD_OS_SWITCH: - report_os_sw_state = data[2]; - if (report_os_sw_state) { - dip_switch_read(true); - } - break; - case FACTORY_TEST_CMD_JUMP_TO_BL: - // if (memcmp(&data[2], "JumpToBootloader", strlen("JumpToBootloader")) == 0) bootloader_jump(); - break; -#ifdef KC_BLUETOOTH_ENABLE - case FACTORY_TEST_CMD_INT_PIN: - switch (data[2]) { - /* Enalbe/disable test */ - case 0xA1: - ckbt51_int_pin_test(data[3]); - break; - /* Set INT state */ - case 0xA2: - writePin(CKBT51_INT_INPUT_PIN, data[3]); - break; - /* Report INT state */ - case 0xA3: - payload[len++] = FACTORY_TEST_CMD_INT_PIN; - payload[len++] = 0xA3; - payload[len++] = readPin(BLUETOOTH_INT_INPUT_PIN); - factory_test_send(payload, len); - break; - } - break; - case FACTORY_TEST_CMD_GET_TRANSPORT: - payload[len++] = FACTORY_TEST_CMD_GET_TRANSPORT; - payload[len++] = get_transport(); - payload[len++] = readPin(USB_POWER_SENSE_PIN); - factory_test_send(payload, len); - break; -#endif -#ifdef BATTERY_CHARGE_DONE_DETECT_ADC - case FACTORY_TEST_CMD_CHARGING_ADC: - case 0xA1: - battery_charging_monitor(data[3]); - break; - case 0xA2: - payload[len++] = FACTORY_TEST_CMD_CHARGING_ADC; - payload[len++] = battery_adc_read_charging_pin(); - factory_test_send(payload, len); - break; -#endif - case FACTORY_TEST_CMD_RADIO_CARRIER: - if (data[2] < 79) ckbt51_radio_test(data[2]); - break; - } - } -} - -bool dip_switch_update_user(uint8_t index, bool active) { - if (report_os_sw_state) { -#ifdef INVERT_OS_SWITCH_STATE - active = !active; -#endif - uint8_t payload[3] = {FACTORY_TEST_CMD_OS_SWITCH, OS_SWITCH, active}; - factory_test_send(payload, 3); - } - - return true; -} diff --git a/keyboards/keychron/bluetooth/factory_test.h b/keyboards/keychron/bluetooth/factory_test.h deleted file mode 100644 index d5ef301512..0000000000 --- a/keyboards/keychron/bluetooth/factory_test.h +++ /dev/null @@ -1,24 +0,0 @@ -/* Copyright 2022 @ lokher (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 . - */ - -#pragma once - -#define FACTORY_RESET_CHECK process_record_factory_reset -#define FACTORY_RESET_TASK factory_reset_task - -void process_record_factory_reset(uint16_t keycode, keyrecord_t *record); -void factory_reset_task(void); -void factory_test_rx(uint8_t *data, uint8_t length); diff --git a/keyboards/keychron/bluetooth/indicator.c b/keyboards/keychron/bluetooth/indicator.c deleted file mode 100644 index 4348460700..0000000000 --- a/keyboards/keychron/bluetooth/indicator.c +++ /dev/null @@ -1,607 +0,0 @@ -/* Copyright 2021 @ lokher (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 . - */ - -#include "quantum.h" -#include "indicator.h" -#include "transport.h" -#include "battery.h" -#include "eeconfig.h" -#include "bluetooth_config.h" -#include "config.h" -#include "rtc_timer.h" - -#if defined(LED_MATRIX_ENABLE) || defined(RGB_MATRIX_ENABLE) -# ifdef LED_MATRIX_ENABLE -# include "led_matrix.h" -# endif -# ifdef RGB_MATRIX_ENABLE -# include "rgb_matrix.h" -# endif -# include "i2c_master.h" -# include "bat_level_animation.h" -# include "eeprom.h" -#endif - -#ifdef LED_MATRIX_ENABLE -# define DECIDE_TIME(t, duration) (duration == 0 ? LED_MATRIX_TIMEOUT_INFINITE : ((t > duration) ? t : duration)) -#endif -#ifdef RGB_MATRIX_ENABLE -# define DECIDE_TIME(t, duration) (duration == 0 ? RGB_MATRIX_TIMEOUT_INFINITE : ((t > duration) ? t : duration)) -#endif - -#define LED_ON 0x80 -#define INDICATOR_SET(s) memcpy(&indicator_config, &s##_config, sizeof(indicator_config_t)); - -enum { - BACKLIGHT_OFF = 0x00, - BACKLIGHT_ON_CONNECTED = 0x01, - BACKLIGHT_ON_UNCONNECTED = 0x02, -}; - -static indicator_config_t pairing_config = INDICATOR_CONFIG_PARING; -static indicator_config_t connected_config = INDICATOR_CONFIG_CONNECTD; -static indicator_config_t reconnecting_config = INDICATOR_CONFIG_RECONNECTING; -static indicator_config_t disconnected_config = INDICATOR_CONFIG_DISCONNECTED; -indicator_config_t indicator_config; -static bluetooth_state_t indicator_state; -static uint16_t next_period; -static indicator_type_t type; -static uint32_t indicator_timer_buffer = 0; - -#if defined(BAT_LOW_LED_PIN) || defined(BAT_LOW_LED_PIN_STATE) -static uint32_t bat_low_pin_indicator = 0; -static uint32_t bat_low_blink_duration = 0; -# ifdef BAT_LOW_LED_PIN_STATE -bool bat_low_led_pin_state = false; -# endif -#endif - -#if defined(LOW_BAT_IND_INDEX) -static uint32_t bat_low_backlit_indicator = 0; -static uint8_t bat_low_ind_state = 0; -static uint32_t rtc_time = 0; -#endif - -#if defined(LED_MATRIX_ENABLE) || defined(RGB_MATRIX_ENABLE) -backlight_state_t original_backlight_state; - -static uint8_t host_led_matrix_list[HOST_DEVICES_COUNT] = HOST_LED_MATRIX_LIST; -#endif - -#ifdef HOST_LED_PIN_LIST -static pin_t host_led_pin_list[HOST_DEVICES_COUNT] = HOST_LED_PIN_LIST; -#endif - -#ifdef LED_MATRIX_ENABLE -# define LED_DRIVER led_matrix_driver -# define LED_INDICATORS_KB led_matrix_indicators_kb -# define LED_INDICATORS_USER led_matrix_indicators_user -# define LED_NONE_INDICATORS_KB led_matrix_none_indicators_kb -# define SET_ALL_LED_OFF() led_matrix_set_value_all(0) -# define SET_LED_OFF(idx) led_matrix_set_value(idx, 0) -# define SET_LED_ON(idx) led_matrix_set_value(idx, 255) -# define SET_LED_BT(idx) led_matrix_set_value(idx, 255) -# define SET_LED_LOW_BAT(idx) led_matrix_set_value(idx, 255) -# define LED_DRIVER_IS_ENABLED led_matrix_is_enabled -# define LED_DRIVER_EECONFIG_RELOAD() \ - eeprom_read_block(&led_matrix_eeconfig, EECONFIG_LED_MATRIX, sizeof(led_matrix_eeconfig)); \ - if (!led_matrix_eeconfig.mode) { \ - eeconfig_update_led_matrix_default(); \ - } -# define LED_DRIVER_ALLOW_SHUTDOWN led_matrix_driver_allow_shutdown -# define LED_DRIVER_ENABLE_NOEEPROM led_matrix_enable_noeeprom -# define LED_DRIVER_DISABLE_NOEEPROM led_matrix_disable_noeeprom -# define LED_DRIVER_DISABLE_TIMEOUT_SET led_matrix_disable_timeout_set -# define LED_DRIVER_DISABLE_TIME_RESET led_matrix_disable_time_reset -#endif - -#ifdef RGB_MATRIX_ENABLE -# define LED_DRIVER rgb_matrix_driver -# define LED_INDICATORS_KB rgb_matrix_indicators_kb -# define LED_INDICATORS_USER rgb_matrix_indicators_user -# define LED_NONE_INDICATORS_KB rgb_matrix_none_indicators_kb -# define SET_ALL_LED_OFF() rgb_matrix_set_color_all(0, 0, 0) -# define SET_LED_OFF(idx) rgb_matrix_set_color(idx, 0, 0, 0) -# define SET_LED_ON(idx) rgb_matrix_set_color(idx, 255, 255, 255) -# define SET_LED_BT(idx) rgb_matrix_set_color(idx, 0, 0, 255) -# define SET_LED_LOW_BAT(idx) rgb_matrix_set_color(idx, 255, 0, 0) -# define LED_DRIVER_IS_ENABLED rgb_matrix_is_enabled -# define LED_DRIVER_EECONFIG_RELOAD() \ - eeprom_read_block(&rgb_matrix_config, EECONFIG_RGB_MATRIX, sizeof(rgb_matrix_config)); \ - if (!rgb_matrix_config.mode) { \ - eeconfig_update_rgb_matrix_default(); \ - } -# define LED_DRIVER_ALLOW_SHUTDOWN rgb_matrix_driver_allow_shutdown -# define LED_DRIVER_ENABLE_NOEEPROM rgb_matrix_enable_noeeprom -# define LED_DRIVER_DISABLE_NOEEPROM rgb_matrix_disable_noeeprom -# define LED_DRIVER_DISABLE_TIMEOUT_SET rgb_matrix_disable_timeout_set -# define LED_DRIVER_DISABLE_TIME_RESET rgb_matrix_disable_time_reset -#endif -void indicator_init(void) { - memset(&indicator_config, 0, sizeof(indicator_config)); - -#ifdef HOST_LED_PIN_LIST - for (uint8_t i = 0; i < HOST_DEVICES_COUNT; i++) { - setPinOutput(host_led_pin_list[i]); - writePin(host_led_pin_list[i], !HOST_LED_PIN_ON_STATE); - } -#endif - -#ifdef BAT_LOW_LED_PIN - setPinOutput(BAT_LOW_LED_PIN); - writePin(BAT_LOW_LED_PIN, !BAT_LOW_LED_PIN_ON_STATE); -#endif -} - -#if defined(LED_MATRIX_ENABLE) || defined(RGB_MATRIX_ENABLE) -void indicator_enable(void) { - if (!LED_DRIVER_IS_ENABLED()) { - LED_DRIVER_ENABLE_NOEEPROM(); - } -} - -inline void indicator_disable(void) { - LED_DRIVER_DISABLE_NOEEPROM(); -} - -void indicator_set_backlit_timeout(uint32_t time) { - LED_DRIVER_DISABLE_TIMEOUT_SET(time); -} - -static inline void indicator_reset_backlit_time(void) { - LED_DRIVER_DISABLE_TIME_RESET(); -} - -bool indicator_is_enabled(void) { - return LED_DRIVER_IS_ENABLED(); -} - -void indicator_eeconfig_reload(void) { - LED_DRIVER_EECONFIG_RELOAD(); -} - -#endif - -bool indicator_is_running(void) { - return -#if defined(BAT_LOW_LED_PIN) || defined(BAT_LOW_LED_PIN_STATE) - bat_low_blink_duration || -#endif -#if defined(LOW_BAT_IND_INDEX) - bat_low_ind_state || -#endif - !!indicator_config.value; -} - -static void indicator_timer_cb(void *arg) { - if (*(indicator_type_t *)arg != INDICATOR_LAST) type = *(indicator_type_t *)arg; - - bool time_up = false; - switch (type) { - case INDICATOR_NONE: - break; - case INDICATOR_OFF: - next_period = 0; - time_up = true; - break; - - case INDICATOR_ON: - if (indicator_config.value) { - if (indicator_config.elapsed == 0) { - indicator_config.value |= LED_ON; - - if (indicator_config.duration) { - indicator_config.elapsed += indicator_config.duration; - } - } else - time_up = true; - } - break; - - case INDICATOR_ON_OFF: - if (indicator_config.value) { - if (indicator_config.elapsed == 0) { - indicator_config.value |= LED_ON; - next_period = indicator_config.on_time; - } else { - indicator_config.value = indicator_config.value & 0x0F; - next_period = indicator_config.duration - indicator_config.on_time; - } - - if ((indicator_config.duration == 0 || indicator_config.elapsed <= indicator_config.duration) && next_period != 0) { - indicator_config.elapsed += next_period; - } else { - time_up = true; - } - } - break; - - case INDICATOR_BLINK: - if (indicator_config.value) { - if (indicator_config.value & LED_ON) { - indicator_config.value = indicator_config.value & 0x0F; - next_period = indicator_config.off_time; - } else { - indicator_config.value |= LED_ON; - next_period = indicator_config.on_time; - } - - if ((indicator_config.duration == 0 || indicator_config.elapsed <= indicator_config.duration) && next_period != 0) { - indicator_config.elapsed += next_period; - } else { - time_up = true; - } - } - break; - default: - time_up = true; - - next_period = 0; - break; - } - -#ifdef HOST_LED_PIN_LIST - if (indicator_config.value) { - uint8_t idx = (indicator_config.value & 0x0F) - 1; - - if (idx < HOST_DEVICES_COUNT) { - if ((indicator_config.value & 0x80) && !time_up) { - writePin(host_led_pin_list[idx], HOST_LED_PIN_ON_STATE); - } else { - writePin(host_led_pin_list[idx], !HOST_LED_PIN_ON_STATE); - } - } - } -#endif - - if (time_up) { - /* Set indicator to off on timeup, avoid keeping light up until next update in raindrop effect */ - indicator_config.value = indicator_config.value & 0x0F; -#if defined(LED_MATRIX_ENABLE) || defined(RGB_MATRIX_ENABLE) - LED_INDICATORS_KB(); -#endif - indicator_config.value = 0; - } - - if (indicator_config.value == 0) { - indicator_eeconfig_reload(); - if (!LED_DRIVER_IS_ENABLED()) indicator_disable(); - } -} - -void indicator_set(bluetooth_state_t state, uint8_t host_index) { - if (get_transport() != TRANSPORT_BLUETOOTH) return; - dprintf("indicator set: %d, %d\n", state, host_index); - - static uint8_t current_state = 0; - static uint8_t current_host = 0; - - bool host_index_changed = false; - if (current_host != host_index && state != BLUETOOTH_DISCONNECTED) { - host_index_changed = true; - current_host = host_index; - } - - if (current_state != state || host_index_changed) { - current_state = state; - } else { - return; - } - - indicator_timer_buffer = sync_timer_read32(); - - /* Turn on backlight mode for indicator */ - indicator_enable(); - indicator_reset_backlit_time(); - - switch (state) { - case BLUETOOTH_DISCONNECTED: -#ifdef HOST_LED_PIN_LIST - writePin(host_led_pin_list[host_index - 1], !HOST_LED_PIN_ON_STATE); -#endif - INDICATOR_SET(disconnected); - indicator_config.value = (indicator_config.type == INDICATOR_NONE) ? 0 : host_index; - indicator_timer_cb((void *)&indicator_config.type); - - if (battery_is_critical_low()) { - indicator_set_backlit_timeout(1000); - } else { - /* Set timer so that user has chance to turn on the backlight when is off */ - indicator_set_backlit_timeout(DECIDE_TIME(DISCONNECTED_BACKLIGHT_DISABLE_TIMEOUT * 1000, indicator_config.duration)); - } - break; - - case BLUETOOTH_CONNECTED: - if (indicator_state != BLUETOOTH_CONNECTED) { - INDICATOR_SET(connected); - indicator_config.value = (indicator_config.type == INDICATOR_NONE) ? 0 : host_index; - indicator_timer_cb((void *)&indicator_config.type); - } - indicator_set_backlit_timeout(DECIDE_TIME(CONNECTED_BACKLIGHT_DISABLE_TIMEOUT * 1000, indicator_config.duration)); - break; - - case BLUETOOTH_PARING: - INDICATOR_SET(pairing); - indicator_config.value = (indicator_config.type == INDICATOR_NONE) ? 0 : LED_ON | host_index; - indicator_timer_cb((void *)&indicator_config.type); - indicator_set_backlit_timeout(DECIDE_TIME(DISCONNECTED_BACKLIGHT_DISABLE_TIMEOUT * 1000, indicator_config.duration)); - break; - - case BLUETOOTH_RECONNECTING: - INDICATOR_SET(reconnecting); - indicator_config.value = (indicator_config.type == INDICATOR_NONE) ? 0 : LED_ON | host_index; - indicator_timer_cb((void *)&indicator_config.type); - indicator_set_backlit_timeout(DECIDE_TIME(DISCONNECTED_BACKLIGHT_DISABLE_TIMEOUT * 1000, indicator_config.duration)); - break; - - case BLUETOOTH_SUSPEND: - INDICATOR_SET(disconnected); - indicator_config.value = (indicator_config.type == INDICATOR_NONE) ? 0 : host_index; - indicator_timer_cb((void *)&indicator_config.type); - indicator_set_backlit_timeout(100); - break; - - default: - break; - } - - indicator_state = state; -} - -void indicator_stop(void) { - indicator_config.value = 0; - indicator_eeconfig_reload(); - - if (indicator_is_enabled()) { - indicator_enable(); - } else { - indicator_disable(); - } -} - -#if defined(BAT_LOW_LED_PIN) || defined(BAT_LOW_LED_PIN_STATE) -void indicator_battery_low_enable(bool enable) { - if (enable) { - if (bat_low_blink_duration == 0) { - bat_low_blink_duration = bat_low_pin_indicator = sync_timer_read32() | 1; - } else - bat_low_blink_duration = sync_timer_read32() | 1; - } else { -# if defined(BAT_LOW_LED_PIN) - writePin(BAT_LOW_LED_PIN, !BAT_LOW_LED_PIN_ON_STATE); -# else - bat_low_led_pin_state = false; -# endif - } -} -#endif - -#if defined(LOW_BAT_IND_INDEX) -void indicator_battery_low_backlit_enable(bool enable) { - if (enable) { - uint32_t t = rtc_timer_read_ms(); - /* Check overflow */ - if (rtc_time > t) { - if (bat_low_ind_state == 0) - rtc_time = t; // Update rtc_time if indicating is not running - else { - rtc_time += t; - } - } - /* Indicating at first time or after the interval */ - if ((rtc_time == 0 || t - rtc_time > LOW_BAT_LED_TRIG_INTERVAL) && bat_low_ind_state == 0) { - bat_low_backlit_indicator = enable ? (timer_read32() == 0 ? 1 : timer_read32()) : 0; - rtc_time = rtc_timer_read_ms(); - bat_low_ind_state = 1; - - indicator_enable(); - } - } else { - rtc_time = 0; - bat_low_ind_state = 0; - - indicator_eeconfig_reload(); - if (!LED_DRIVER_IS_ENABLED()) indicator_disable(); - } -} -#endif - -void indicator_battery_low(void) { -#if defined(BAT_LOW_LED_PIN) || defined(BAT_LOW_LED_PIN_STATE) - if (bat_low_pin_indicator && sync_timer_elapsed32(bat_low_pin_indicator) > (LOW_BAT_LED_BLINK_PERIOD)) { -# if defined(BAT_LOW_LED_PIN) - togglePin(BAT_LOW_LED_PIN); -# else - bat_low_led_pin_state = !bat_low_led_pin_state; -# endif - bat_low_pin_indicator = sync_timer_read32() | 1; - // Turn off low battery indication if we reach the duration -# if defined(BAT_LOW_LED_PIN) - if (sync_timer_elapsed32(bat_low_blink_duration) > LOW_BAT_LED_BLINK_DURATION && palReadLine(BAT_LOW_LED_PIN) != BAT_LOW_LED_PIN_ON_STATE) { -# elif defined(BAT_LOW_LED_PIN_STATE) - if (sync_timer_elapsed32(bat_low_blink_duration) > LOW_BAT_LED_BLINK_DURATION) { -# endif - bat_low_blink_duration = bat_low_pin_indicator = 0; - } - } -#endif -#if defined(LOW_BAT_IND_INDEX) - if (bat_low_ind_state) { - if ((bat_low_ind_state & 0x0F) <= (LOW_BAT_LED_BLINK_TIMES) && sync_timer_elapsed32(bat_low_backlit_indicator) > (LOW_BAT_LED_BLINK_PERIOD)) { - if (bat_low_ind_state & 0x80) { - bat_low_ind_state &= 0x7F; - bat_low_ind_state++; - } else { - bat_low_ind_state |= 0x80; - } - - bat_low_backlit_indicator = sync_timer_read32() == 0 ? 1 : sync_timer_read32(); - - /* Restore backligth state */ - if ((bat_low_ind_state & 0x0F) > (LOW_BAT_LED_BLINK_TIMES)) { -# if defined(NUM_LOCK_INDEX) || defined(CAPS_LOCK_INDEX) || defined(SCROLL_LOCK_INDEX) || defined(COMPOSE_LOCK_INDEX) || defined(KANA_LOCK_INDEX) - if (LED_DRIVER_ALLOW_SHUTDOWN()) -# endif - indicator_disable(); - } - } else if ((bat_low_ind_state & 0x0F) > (LOW_BAT_LED_BLINK_TIMES)) { - bat_low_ind_state = 0; - } - } -#endif -} - -void indicator_task(void) { - bat_level_animiation_task(); - - if (indicator_config.value && sync_timer_elapsed32(indicator_timer_buffer) >= next_period) { - indicator_timer_cb((void *)&type); - indicator_timer_buffer = sync_timer_read32(); - } - - indicator_battery_low(); -} - -#if defined(LED_MATRIX_ENABLE) || defined(RGB_MATRIX_ENABLE) -__attribute__((weak)) void os_state_indicate(void) { -# if defined(NUM_LOCK_INDEX) - if (host_keyboard_led_state().num_lock) { - SET_LED_ON(NUM_LOCK_INDEX); - } -# endif -# if defined(CAPS_LOCK_INDEX) - if (host_keyboard_led_state().caps_lock) { -# if defined(DIM_CAPS_LOCK) - SET_LED_OFF(CAPS_LOCK_INDEX); -# else - SET_LED_ON(CAPS_LOCK_INDEX); -# endif - } -# endif -# if defined(SCROLL_LOCK_INDEX) - if (host_keyboard_led_state().scroll_lock) { - SET_LED_ON(SCROLL_LOCK_INDEX); - } -# endif -# if defined(COMPOSE_LOCK_INDEX) - if (host_keyboard_led_state().compose) { - SET_LED_ON(COMPOSE_LOCK_INDEX); - } -# endif -# if defined(KANA_LOCK_INDEX) - if (host_keyboard_led_state().kana) { - SET_LED_ON(KANA_LOCK_INDEX); - } -# endif -} - -bool LED_INDICATORS_KB(void) { - if (!LED_INDICATORS_USER()) { - return false; - } - - if (get_transport() == TRANSPORT_BLUETOOTH) { - /* Prevent backlight flash caused by key activities */ - if (battery_is_critical_low()) { - SET_ALL_LED_OFF(); - return false; - } - -# if (defined(LED_MATRIX_ENABLE) || defined(RGB_MATRIX_ENABLE)) && defined(LOW_BAT_IND_INDEX) - if (battery_is_empty()) SET_ALL_LED_OFF(); - if (bat_low_ind_state && (bat_low_ind_state & 0x0F) <= LOW_BAT_LED_BLINK_TIMES) { - if (bat_low_ind_state & 0x80) - SET_LED_LOW_BAT(LOW_BAT_IND_INDEX); - else - SET_LED_OFF(LOW_BAT_IND_INDEX); - } -# endif - if (bat_level_animiation_actived()) { - bat_level_animiation_indicate(); - } - static uint8_t last_host_index = 0xFF; - - if (indicator_config.value) { - uint8_t host_index = indicator_config.value & 0x0F; - - if (indicator_config.highlight) { - SET_ALL_LED_OFF(); - } else if (last_host_index != host_index) { - SET_LED_OFF(host_led_matrix_list[last_host_index - 1]); - last_host_index = host_index; - } - - if (indicator_config.value & 0x80) { - SET_LED_BT(host_led_matrix_list[host_index - 1]); - } else { - SET_LED_OFF(host_led_matrix_list[host_index - 1]); - } - } else - os_state_indicate(); - - } else - os_state_indicate(); - - return false; -} - -bool led_update_kb(led_t led_state) { - bool res = led_update_user(led_state); - if (res) { - led_update_ports(led_state); - - if (!LED_DRIVER_IS_ENABLED()) { - # if defined(LED_MATRIX_DRIVER_SHUTDOWN_ENABLE) || defined(RGB_MATRIX_DRIVER_SHUTDOWN_ENABLE) - LED_DRIVER.exit_shutdown(); - # endif - SET_ALL_LED_OFF(); - os_state_indicate(); - LED_DRIVER.flush(); - # if defined(LED_MATRIX_DRIVER_SHUTDOWN_ENABLE) || defined(RGB_MATRIX_DRIVER_SHUTDOWN_ENABLE) - if (LED_DRIVER_ALLOW_SHUTDOWN()) LED_DRIVER.shutdown(); - # endif - } - } - - return res; -} - -void LED_NONE_INDICATORS_KB(void) { - os_state_indicate(); -} - -# if defined(LED_MATRIX_DRIVER_SHUTDOWN_ENABLE) || defined(RGB_MATRIX_DRIVER_SHUTDOWN_ENABLE) -bool LED_DRIVER_ALLOW_SHUTDOWN(void) { -# if defined(NUM_LOCK_INDEX) - if (host_keyboard_led_state().num_lock) return false; -# endif -# if defined(CAPS_LOCK_INDEX) && !defined(DIM_CAPS_LOCK) - if (host_keyboard_led_state().caps_lock) return false; -# endif -# if defined(SCROLL_LOCK_INDEX) - if (host_keyboard_led_state().scroll_lock) return false; -# endif -# if defined(COMPOSE_LOCK_INDEX) - if (host_keyboard_led_state().compose) return false; -# endif -# if defined(KANA_LOCK_INDEX) - if (host_keyboard_led_state().kana) return false; -# endif - return true; -} -# endif - -#endif diff --git a/keyboards/keychron/bluetooth/indicator.h b/keyboards/keychron/bluetooth/indicator.h deleted file mode 100644 index a2eb3f019c..0000000000 --- a/keyboards/keychron/bluetooth/indicator.h +++ /dev/null @@ -1,118 +0,0 @@ -/* Copyright 2022 @ lokher (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 . - */ - -#pragma once - -#include "config.h" -#include "bluetooth.h" - -/* Indication of pairing */ -#ifndef INDICATOR_CONFIG_PARING -# define INDICATOR_CONFIG_PARING {INDICATOR_BLINK, 1000, 1000, 0, true, 0}; -#endif - -/* Indication on Connected */ -#ifndef INDICATOR_CONFIG_CONNECTD -# define INDICATOR_CONFIG_CONNECTD {INDICATOR_ON_OFF, 2000, 250, 2000, true, 0}; -#endif - -/* Reconnecting indication */ -#ifndef INDICATOR_CONFIG_RECONNECTING -# define INDICATOR_CONFIG_RECONNECTING {INDICATOR_BLINK, 100, 100, 600, true, 0}; -#endif - -/* Disconnected indication */ -#ifndef INDICATOR_CONFIG_DISCONNECTED -# define INDICATOR_CONFIG_DISCONNECTED {INDICATOR_NONE, 100, 100, 600, false, 0}; -#endif - -/* Uint: Second */ -#ifndef DISCONNECTED_BACKLIGHT_DISABLE_TIMEOUT -# define DISCONNECTED_BACKLIGHT_OFF_DELAY_TIME 40 -#endif - -/* Uint: Second, the timer restarts on key activities. */ -#ifndef CONNECTED_BACKLIGHT_DISABLE_TIMEOUT -# define CONNECTED_BACKLIGHT_OFF_DELAY_TIME 600 -#endif - -#if defined(BAT_LOW_LED_PIN) || defined(BAT_LOW_LED_PIN_STATE) -/* Uint: ms */ -# ifndef LOW_BAT_LED_BLINK_PERIOD -# define LOW_BAT_LED_BLINK_PERIOD 1000 -# endif - -# ifndef LOW_BAT_LED_BLINK_DURATION -# define LOW_BAT_LED_BLINK_DURATION 10000 -# endif -#endif - -#ifdef LOW_BAT_IND_INDEX -/* Uint: ms */ -# ifndef LOW_BAT_LED_BLINK_PERIOD -# define LOW_BAT_LED_BLINK_PERIOD 500 -# endif - -# ifndef LOW_BAT_LED_BLINK_TIMES -# define LOW_BAT_LED_BLINK_TIMES 3 -# endif - -# ifndef LOW_BAT_LED_TRIG_INTERVAL -# define LOW_BAT_LED_TRIG_INTERVAL 30000 -# endif -#endif - -#if BT_HOST_MAX_COUNT > 6 -# pragma error("HOST_COUNT max value is 6") -#endif - -typedef enum { INDICATOR_NONE, INDICATOR_OFF, INDICATOR_ON, INDICATOR_ON_OFF, INDICATOR_BLINK, INDICATOR_LAST } indicator_type_t; - -typedef struct PACKED { - indicator_type_t type; - uint32_t on_time; - uint32_t off_time; - uint32_t duration; - bool highlight; - uint8_t value; - uint32_t elapsed; -} indicator_config_t; - -typedef struct PACKED { - uint8_t value; - bool saved; -} backlight_state_t; - -void indicator_init(void); -void indicator_set(bluetooth_state_t state, uint8_t host_index); -void indicator_backlight_timer_reset(bool enable); -bool indicator_hook_key(uint16_t keycode); -void indicator_enable(void); -void indicator_disable(void); -void indicator_stop(void); -void indicator_eeconfig_reload(void); -bool indicator_is_enabled(void); -bool indicator_is_running(void); -void os_state_indicate(void); - -#ifdef BAT_LOW_LED_PIN -void indicator_battery_low_enable(bool enable); -#endif -#if defined(LOW_BAT_IND_INDEX) -void indicator_battery_low_backlit_enable(bool enable); -#endif - -void indicator_task(void); diff --git a/keyboards/keychron/bluetooth/lpm.c b/keyboards/keychron/bluetooth/lpm.c deleted file mode 100644 index 187c6d75c0..0000000000 --- a/keyboards/keychron/bluetooth/lpm.c +++ /dev/null @@ -1,92 +0,0 @@ -/* Copyright 2022 @ lokher (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 . - */ - -/****************************************************************************** - * - * Filename: lpm.c - * - * Description: Contains low power mode implementation - * - ******************************************************************************/ - -#include "quantum.h" -#if defined(PROTOCOL_CHIBIOS) -# include -#endif -#include "bluetooth.h" -#include "indicator.h" -#include "lpm.h" -#include "transport.h" -#include "battery.h" - -extern matrix_row_t matrix[MATRIX_ROWS]; -extern bluetooth_transport_t bluetooth_transport; - -static uint32_t lpm_timer_buffer; -static bool lpm_time_up = false; -static matrix_row_t empty_matrix[MATRIX_ROWS] = {0}; - -void lpm_init(void) { -#ifdef USB_POWER_SENSE_PIN -# if (USB_POWER_CONNECTED_LEVEL == 0) - setPinInputHigh(USB_POWER_SENSE_PIN); -# else - setPinInputLow(USB_POWER_SENSE_PIN); -# endif -#endif - lpm_timer_reset(); -} - -inline void lpm_timer_reset(void) { - lpm_time_up = false; - lpm_timer_buffer = sync_timer_read32(); -} - -void lpm_timer_stop(void) { - lpm_time_up = false; - lpm_timer_buffer = 0; -} - -static inline bool lpm_any_matrix_action(void) { return memcmp(matrix, empty_matrix, sizeof(empty_matrix)); } - -/* Implement of entering low power mode and wakeup varies per mcu or platform */ -__attribute__((weak)) void enter_power_mode(pm_t mode) {} - -__attribute__((weak)) bool usb_power_connected(void) { -#ifdef USB_POWER_SENSE_PIN - return readPin(USB_POWER_SENSE_PIN) == USB_POWER_CONNECTED_LEVEL; -#endif - - return true; -} - -void lpm_task(void) { - if (!lpm_time_up && sync_timer_elapsed32(lpm_timer_buffer) > RUN_MODE_PROCESS_TIME) { - lpm_time_up = true; - lpm_timer_buffer = 0; - } - - if (get_transport() == TRANSPORT_BLUETOOTH && lpm_time_up && !indicator_is_running() -#ifdef LED_MATRIX_ENABLE - && led_matrix_is_driver_shutdown() -#endif -#ifdef RGB_MATRIX_ENABLE - && rgb_matrix_is_driver_shutdown() -#endif - && !lpm_any_matrix_action() && !battery_power_on_sample()) - - enter_power_mode(LOW_POWER_MODE); -} diff --git a/keyboards/keychron/bluetooth/lpm.h b/keyboards/keychron/bluetooth/lpm.h deleted file mode 100644 index bacc82a716..0000000000 --- a/keyboards/keychron/bluetooth/lpm.h +++ /dev/null @@ -1,30 +0,0 @@ -/* Copyright 2022 @ lokher (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 . - */ - -#pragma once - -#ifndef RUN_MODE_PROCESS_TIME -# define RUN_MODE_PROCESS_TIME 1000 -#endif - -typedef enum { PM_RUN, PM_LOW_POWER_RUN, PM_SLEEP, PM_LOW_POWER_SLEEP, PM_STOP0, PM_STOP1, PM_STOP2, PM_STANDBY_WITH_RAM, PM_STANDBY, PM_SHUTDOWN } pm_t; - -void lpm_init(void); -void lpm_timer_reset(void); -void lpm_timer_stop(void); -bool usb_power_connected(void); -void enter_power_mode(pm_t mode); -void lpm_task(void); diff --git a/keyboards/keychron/bluetooth/lpm_stm32l432.c b/keyboards/keychron/bluetooth/lpm_stm32l432.c deleted file mode 100644 index 288cb66765..0000000000 --- a/keyboards/keychron/bluetooth/lpm_stm32l432.c +++ /dev/null @@ -1,330 +0,0 @@ -/* Copyright 2022 @ lokher (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 . - */ - -/****************************************************************************** - * - * Filename: lpm_stm32l432.c - * - * Description: Contains low power mode implementation - * - ******************************************************************************/ - -#include "quantum.h" -#include -#include "bluetooth.h" -#include "indicator.h" -#include "lpm.h" -#include "transport.h" -#include "battery.h" -#include "report_buffer.h" -#include "stm32_bd.inc" -#include "debounce.h" - -extern pin_t row_pins[MATRIX_ROWS]; -extern void select_all_cols(void); -extern bluetooth_transport_t bluetooth_transport; - -static pm_t power_mode = PM_RUN; - -static inline void stm32_clock_fast_init(void); - -bool lpm_set(pm_t mode) { - switch (mode) { -#ifdef LOW_POWER_RUN_MODE_ENABLE - case PM_RUN: - if (power_mode != PM_LOW_POWER_RUN)) return; - /* Set main regulator */ - PWR->CR1 &= ~PWR_CR1_LPR; - while (PWR->SR2 & PWR_SR2_REGLPF) - ; - // TODO: restore sysclk - return true; - // break; - - case PM_LOW_POWER_RUN: - if (power_mode != PM_RUN) return; - - // FLASH->ACR |= FLASH_ACR_RUN_PD; // Optional - // TODO: Decrease sysclk below 2 MHz - PWR->CR1 |= PWR_CR1_LPR; - return true; - // break; -#endif - case PM_SLEEP: - /* Wake source: Any interrupt or event */ - if (power_mode != PM_RUN) return false; - - SCB->SCR &= ~SCB_SCR_SLEEPDEEP_Msk; - break; - -#ifdef LOW_POWER_RUN_MODE_ENABLE - case PM_LOW_POWER_SLEEP: - /* Wake source: Any interrupt or event */ - if (power_mode != PM_LOW_POWER_RUN) return; /* Can only transit from PM_LOW_POWER_RUN */ - - SCB->SCR &= ~SCB_SCR_SLEEPDEEP_Msk; - __WFI(); - exit_low_power_mode(); - break; -#endif - case PM_STOP0: - /* Wake source: Reset pin, all I/Os, BOR, PVD, PVM, RTC, LCD, IWDG, - COMPx, USARTx, LPUART1, I2Cx, LPTIMx, USB, SWPMI */ - if (power_mode != PM_RUN) return false; - - SCB->SCR |= SCB_SCR_SLEEPDEEP_Msk; - PWR->CR1 |= PWR_CR1_LPMS_STOP0; - break; - - case PM_STOP1: - /* Wake source: Reset pin, all I/Os, BOR, PVD, PVM, RTC, LCD, IWDG, - COMPx, USARTx, LPUART1, I2Cx, LPTIMx, USB, SWPMI */ - if (power_mode != PM_RUN && power_mode != PM_LOW_POWER_RUN) return false; - - SCB->SCR |= SCB_SCR_SLEEPDEEP_Msk; - PWR->CR1 |= PWR_CR1_LPMS_STOP1; - break; - - case PM_STOP2: - /* Wake source: Reset pin, all I/Os, BOR, PVD, PVM, RTC, LCD, IWDG, - COMPx (x=1, 2), I2C3, LPUART1, LPTIM1, LPTIM2 */ - if (power_mode != PM_RUN) return false; - - SCB->SCR |= SCB_SCR_SLEEPDEEP_Msk; - PWR->CR1 |= PWR_CR1_LPMS_STOP2; - break; - - case PM_STANDBY_WITH_RAM: - /* Wake source: Reset, 5 I/O(PA0, PC13, PE6, PA2, PC5), BOR, RTC, IWDG */ - if (power_mode != PM_RUN && power_mode != PM_LOW_POWER_RUN) return false; - - SCB->SCR |= SCB_SCR_SLEEPDEEP_Msk; - PWR->CR1 |= PWR_CR1_LPMS_STANDBY; - PWR->CR3 |= PWR_CR3_RRS; - break; - - case PM_STANDBY: - /* Wake source: Reset, 2 I/O(PA0, PA2) in STM32L432Kx,, BOR, RTC, IWDG */ - if (power_mode != PM_RUN && power_mode != PM_LOW_POWER_RUN) return false; - - SCB->SCR |= SCB_SCR_SLEEPDEEP_Msk; - PWR->CR1 |= PWR_CR1_LPMS_STANDBY; - PWR->CR3 &= ~PWR_CR3_RRS; - break; - - case PM_SHUTDOWN: - /* Wake source: Reset, 2 I/O(PA0, PA2) in STM32L432Kx, RTC */ - if (power_mode != PM_RUN && power_mode != PM_LOW_POWER_RUN) return false; - - SCB->SCR |= SCB_SCR_SLEEPDEEP_Msk; - PWR->CR1 |= PWR_CR1_LPMS_SHUTDOWN; - break; - - default: - return false; - } - - return true; -} - -static inline void enter_low_power_mode_prepare(void) { -#if defined(KEEP_USB_CONNECTION_IN_BLUETOOTH_MODE) - /* Usb unit is actived and running, stop and disconnect first */ - usbStop(&USBD1); - usbDisconnectBus(&USBD1); - - /* Isolate USB to save power.*/ - PWR->CR2 &= ~PWR_CR2_USV; /*PWR_CR2_USV is available on STM32L4x2xx and STM32L4x3xx devices only. */ -#endif - - palEnableLineEvent(BLUETOOTH_INT_INPUT_PIN, PAL_EVENT_MODE_FALLING_EDGE); - palEnableLineEvent(USB_POWER_SENSE_PIN, PAL_EVENT_MODE_BOTH_EDGES); - - /* Enable key matrix wake up */ - pin_t row_pins[MATRIX_ROWS] = MATRIX_ROW_PINS; - - for (uint8_t x = 0; x < MATRIX_ROWS; x++) { - if (row_pins[x] != NO_PIN) { - palEnableLineEvent(row_pins[x], PAL_EVENT_MODE_BOTH_EDGES); - } - } - - select_all_cols(); - -#if defined(DIP_SWITCH_PINS) -# define NUMBER_OF_DIP_SWITCHES (sizeof(dip_switch_pad) / sizeof(pin_t)) - static pin_t dip_switch_pad[] = DIP_SWITCH_PINS; - - for (uint8_t i = 0; i < NUMBER_OF_DIP_SWITCHES; i++) { - setPinInputLow(dip_switch_pad[i]); - } -#endif -} - -static inline void lpm_wakeup(void) { - chSysLock(); - stm32_clock_fast_init(); - chSysUnlock(); - - if (bluetooth_transport.init) bluetooth_transport.init(true); - - chSysLock(); - SCB->SCR &= ~SCB_SCR_SLEEPDEEP_Msk; - - PWR->SCR |= PWR_SCR_CWUF; - PWR->SCR |= PWR_SCR_CSBF; - - /* TIMx is disable during stop/standby/sleep mode, init after wakeup */ - stInit(); - timer_init(); - chSysUnlock(); - battery_init(); - - /* Disable all wake up pins */ - for (uint8_t x = 0; x < MATRIX_ROWS; x++) { - if (row_pins[x] != NO_PIN) { - palDisableLineEvent(row_pins[x]); - } - } - palDisableLineEvent(BLUETOOTH_INT_INPUT_PIN); - -#ifdef USB_POWER_SENSE_PIN - palDisableLineEvent(USB_POWER_SENSE_PIN); - -# if defined(KEEP_USB_CONNECTION_IN_BLUETOOTH_MODE) - if (usb_power_connected()) { - hsi48_init(); - /* Remove USB isolation.*/ - // PWR->CR2 |= PWR_CR2_USV; /* PWR_CR2_USV is available on STM32L4x2xx and STM32L4x3xx devices only. */ - usb_power_connect(); - usb_start(&USBD1); - } -# endif - -#endif - -#if defined(DIP_SWITCH_PINS) - dip_switch_init(); - dip_switch_read(true); -#endif -} - -/* - * NOTE: - * 1. Shall not use PM_LOW_POWER_RUN, PM_LOW_POWER_SLEEP, due to PM_LOW_POWER_RUN - * need to decrease system clock below 2 MHz. Dynamic clock is not yet supported - * for STM32L432xx in latest ChibiOS 21.6.0 so far. - * 2. Care must be taken to use PM_STANDBY_WITH_RAM, PM_STANDBY, PM_SHUTDOWN due to - * limited wake source, thus can't be waken via keyscan. PM_SHUTDOWN need LSE. - * 3. Reference from AN4621: STM32L4 and STM32L4+ ultra-low-power features overview - * for detail wake source - */ - -void enter_power_mode(pm_t mode) { -#if defined(KEEP_USB_CONNECTION_IN_BLUETOOTH_MODE) - /* Don't enter low power mode if attached to the host */ - if (mode > PM_SLEEP && usb_power_connected()) return; -#endif - - if (!lpm_set(mode)) return; - enter_low_power_mode_prepare(); - - // __DSB(); - __WFI(); - // __ISB(); - - lpm_wakeup(); - lpm_timer_reset(); - report_buffer_init(); - - /* Call debounce_free() to avoid memory leak as debounce_init() invoked in matrix_init() allocates - * new memory when using per row/key debounce - */ - debounce_free(); - matrix_init(); - power_mode = PM_RUN; -} - -void usb_power_connect(void) { - PWR->CR2 |= PWR_CR2_USV; -} - -void usb_power_disconnect(void) { - PWR->CR2 &= ~PWR_CR2_USV; -} - -/* - * This is a simplified version of stm32_clock_init() by removing unnecessary clock initlization - * code snippet. The original stm32_clock_init() take about 2ms, but ckbt51 sends data via uart - * about 200us after wakeup pin is assert, it means that we must get everything ready before data - * coming when wakeup pin interrupt of MCU is triggerred. - * Here we reduce clock init time to less than 100us. - */ -void stm32_clock_fast_init(void) { -#if !STM32_NO_INIT - /* Clocks setup.*/ - msi_init(); // 6.x us - hsi16_init(); // 4.x us - - /* PLLs activation, if required.*/ - pll_init(); - pllsai1_init(); - pllsai2_init(); - /* clang-format off */ - /* Other clock-related settings (dividers, MCO etc).*/ - RCC->CFGR = STM32_MCOPRE | STM32_MCOSEL | STM32_STOPWUCK | - STM32_PPRE2 | STM32_PPRE1 | STM32_HPRE; - /* CCIPR register initialization, note, must take care of the _OFF - pseudo settings.*/ - { - uint32_t ccipr = STM32_DFSDMSEL | STM32_SWPMI1SEL | STM32_ADCSEL | - STM32_CLK48SEL | STM32_LPTIM2SEL | STM32_LPTIM1SEL | - STM32_I2C3SEL | STM32_I2C2SEL | STM32_I2C1SEL | - STM32_UART5SEL | STM32_UART4SEL | STM32_USART3SEL | - STM32_USART2SEL | STM32_USART1SEL | STM32_LPUART1SEL; -/* clang-format on */ -# if STM32_SAI2SEL != STM32_SAI2SEL_OFF - ccipr |= STM32_SAI2SEL; -# endif -# if STM32_SAI1SEL != STM32_SAI1SEL_OFF - ccipr |= STM32_SAI1SEL; -# endif - RCC->CCIPR = ccipr; - } - - /* Set flash WS's for SYSCLK source */ - if (STM32_FLASHBITS > STM32_MSI_FLASHBITS) { - FLASH->ACR = (FLASH->ACR & ~FLASH_ACR_LATENCY_Msk) | STM32_FLASHBITS; - while ((FLASH->ACR & FLASH_ACR_LATENCY_Msk) != (STM32_FLASHBITS & FLASH_ACR_LATENCY_Msk)) { - } - } - - /* Switching to the configured SYSCLK source if it is different from MSI.*/ -# if (STM32_SW != STM32_SW_MSI) - RCC->CFGR |= STM32_SW; /* Switches on the selected clock source. */ - /* Wait until SYSCLK is stable.*/ - while ((RCC->CFGR & RCC_CFGR_SWS) != (STM32_SW << 2)) - ; -# endif - - /* Reduce the flash WS's for SYSCLK source if they are less than MSI WSs */ - if (STM32_FLASHBITS < STM32_MSI_FLASHBITS) { - FLASH->ACR = (FLASH->ACR & ~FLASH_ACR_LATENCY_Msk) | STM32_FLASHBITS; - while ((FLASH->ACR & FLASH_ACR_LATENCY_Msk) != (STM32_FLASHBITS & FLASH_ACR_LATENCY_Msk)) { - } - } -#endif /* STM32_NO_INIT */ -} diff --git a/keyboards/keychron/bluetooth/lpm_stm32l432.h b/keyboards/keychron/bluetooth/lpm_stm32l432.h deleted file mode 100644 index 065bf96b47..0000000000 --- a/keyboards/keychron/bluetooth/lpm_stm32l432.h +++ /dev/null @@ -1,19 +0,0 @@ -/* Copyright 2022 @ lokher (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 . - */ - -#pragma once - -typedef enum { PM_RUN, PM_LOW_POWER_RUN, PM_SLEEP, PM_LOW_POWER_SLEEP, PM_STOP0, PM_STOP1, PM_STOP2, PM_STANDBY_WITH_RAM, PM_STANDBY, PM_SHUTDOWN } pm_t; diff --git a/keyboards/keychron/bluetooth/report_buffer.c b/keyboards/keychron/bluetooth/report_buffer.c deleted file mode 100644 index 7494c42b97..0000000000 --- a/keyboards/keychron/bluetooth/report_buffer.c +++ /dev/null @@ -1,141 +0,0 @@ -/* Copyright 2022 @ lokher (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 . - */ - -#include "quantum.h" -#include "report_buffer.h" -#include "bluetooth.h" -#include "lpm.h" - -/* The report buffer is mainly used to fix key press lost issue of macro - * when bluetooth module fifo isn't large enough. The maximun macro - * string length is determined by this queue size, and should be - * REPORT_BUFFER_QUEUE_SIZE devided by 2 since each character is implemented - * by sending a key pressing then a key releasing report. - * Please note that it cosume sizeof(report_buffer_t) * REPORT_BUFFER_QUEUE_SIZE - * bytes RAM, with default setting, used RAM size is - * sizeof(report_buffer_t) * 256 = 34* 256 = 8704 bytes - */ -#ifndef REPORT_BUFFER_QUEUE_SIZE -# define REPORT_BUFFER_QUEUE_SIZE 512 -#endif - -extern bluetooth_transport_t bluetooth_transport; - -/* report_interval value should be less than bluetooth connection interval because - * it takes some time for communicating between mcu and bluetooth module. Carefully - * set this value to feed the bt module so that we don't lost the key report nor lost - * the anchor point of bluetooth interval. The bluetooth connection interval varies - * if BLE is used, invoke report_buffer_set_inverval() to update the value - */ -uint8_t report_interval = DEFAULT_REPORT_INVERVAL_MS; - -static uint32_t report_timer_buffer = 0; -uint32_t retry_time_buffer = 0; -report_buffer_t report_buffer_queue[REPORT_BUFFER_QUEUE_SIZE]; -uint16_t report_buffer_queue_head; -uint16_t report_buffer_queue_tail; -report_buffer_t kb_rpt; -uint8_t retry = 0; - -void report_buffer_init(void) { - // Initialise the report queue - memset(&report_buffer_queue, 0, sizeof(report_buffer_queue)); - report_buffer_queue_head = 0; - report_buffer_queue_tail = 0; - retry = 0; - report_timer_buffer = sync_timer_read32(); -} - -bool report_buffer_enqueue(report_buffer_t *report) { - uint16_t next = (report_buffer_queue_head + 1) % REPORT_BUFFER_QUEUE_SIZE; - if (next == report_buffer_queue_tail) { - return false; - } - - report_buffer_queue[report_buffer_queue_head] = *report; - report_buffer_queue_head = next; - return true; -} - -inline bool report_buffer_dequeue(report_buffer_t *report) { - if (report_buffer_queue_head == report_buffer_queue_tail) { - return false; - } - - *report = report_buffer_queue[report_buffer_queue_tail]; - report_buffer_queue_tail = (report_buffer_queue_tail + 1) % REPORT_BUFFER_QUEUE_SIZE; - return true; -} - -bool report_buffer_is_empty() { - return report_buffer_queue_head == report_buffer_queue_tail; -} - -void report_buffer_update_timer(void) { - report_timer_buffer = sync_timer_read32(); -} - -bool report_buffer_next_inverval(void) { - return sync_timer_elapsed32(report_timer_buffer) > report_interval; -} - -void report_buffer_set_inverval(uint8_t interval) { - report_interval = interval; -} - -uint8_t report_buffer_get_retry(void) { - return retry; -} - -void report_buffer_set_retry(uint8_t times) { - retry = times; -} - -void report_buffer_task(void) { - if (bluetooth_get_state() == BLUETOOTH_CONNECTED && (!report_buffer_is_empty() || retry) && report_buffer_next_inverval()) { - bool pending_data = false; - - if (!retry) { - if (report_buffer_dequeue(&kb_rpt) && kb_rpt.type != REPORT_TYPE_NONE) { - if (sync_timer_read32() > 2) { - pending_data = true; - retry = RETPORT_RETRY_COUNT; - retry_time_buffer = sync_timer_read32(); - } - } - } else { - if (sync_timer_elapsed32(retry_time_buffer) > 7) { - pending_data = true; - --retry; - retry_time_buffer = sync_timer_read32(); - } - } - - if (pending_data) { -#if defined(NKRO_ENABLE) && defined(BLUETOOTH_NKRO_ENABLE) - if (kb_rpt.type == REPORT_TYPE_NKRO && bluetooth_transport.send_nkro) { - bluetooth_transport.send_nkro(&kb_rpt.nkro.mods); - } else if (kb_rpt.type == REPORT_TYPE_KB && bluetooth_transport.send_keyboard) - bluetooth_transport.send_keyboard(&kb_rpt.keyboard.mods); -#else - if (kb_rpt.type == REPORT_TYPE_KB && bluetooth_transport.send_keyboard) bluetooth_transport.send_keyboard(&kb_rpt.keyboard.mods); -#endif - if (kb_rpt.type == REPORT_TYPE_CONSUMER && bluetooth_transport.send_consumer) bluetooth_transport.send_consumer(kb_rpt.consumer); - report_timer_buffer = sync_timer_read32(); - lpm_timer_reset(); - } - } -} diff --git a/keyboards/keychron/bluetooth/report_buffer.h b/keyboards/keychron/bluetooth/report_buffer.h deleted file mode 100644 index 64cffacffc..0000000000 --- a/keyboards/keychron/bluetooth/report_buffer.h +++ /dev/null @@ -1,56 +0,0 @@ -/* Copyright 2022 @ lokher (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 . - */ - -#pragma once - -#include "report.h" - -/* Default report interval value */ -#ifndef DEFAULT_REPORT_INVERVAL_MS -# define DEFAULT_REPORT_INVERVAL_MS 3 -#endif - -/* Default report interval value */ -#ifndef RETPORT_RETRY_COUNT -# define RETPORT_RETRY_COUNT 30 -#endif - -enum { - REPORT_TYPE_NONE, - REPORT_TYPE_KB, - REPORT_TYPE_NKRO, - REPORT_TYPE_CONSUMER, -}; - -typedef struct { - uint8_t type; - union { - report_keyboard_t keyboard; - report_nkro_t nkro; - uint16_t consumer; - }; -} report_buffer_t; - -void report_buffer_init(void); -bool report_buffer_enqueue(report_buffer_t *report); -bool report_buffer_dequeue(report_buffer_t *report); -bool report_buffer_is_empty(void); -void report_buffer_update_timer(void); -bool report_buffer_next_inverval(void); -void report_buffer_set_inverval(uint8_t interval); -uint8_t report_buffer_get_retry(void); -void report_buffer_set_retry(uint8_t times); -void report_buffer_task(void); diff --git a/keyboards/keychron/bluetooth/rtc_timer.c b/keyboards/keychron/bluetooth/rtc_timer.c deleted file mode 100644 index 04ebd43995..0000000000 --- a/keyboards/keychron/bluetooth/rtc_timer.c +++ /dev/null @@ -1,43 +0,0 @@ -/* Copyright 2023 @ lokher (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 . - */ - -#include "hal.h" - -#if (HAL_USE_RTC) - -# include "rtc_timer.h" - -void rtc_timer_init(void) { - rtc_timer_clear(); -} - -void rtc_timer_clear(void) { - RTCDateTime tm = {0, 0, 0, 0, 0, 0}; - rtcSetTime(&RTCD1, &tm); -} - -uint32_t rtc_timer_read_ms(void) { - RTCDateTime tm; - rtcGetTime(&RTCD1, &tm); - - return tm.millisecond; -} - -uint32_t rtc_timer_elapsed_ms(uint32_t last) { - return TIMER_DIFF_32(rtc_timer_read_ms(), last); -} - -#endif diff --git a/keyboards/keychron/bluetooth/rtc_timer.h b/keyboards/keychron/bluetooth/rtc_timer.h deleted file mode 100644 index aa73a31c8a..0000000000 --- a/keyboards/keychron/bluetooth/rtc_timer.h +++ /dev/null @@ -1,43 +0,0 @@ -/* Copyright 2023 @ lokher (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 . - */ - -#pragma once - -#include "timer.h" -#include - -#define RTC_MAX_TIME (24 * 3600 * 1000) // Set to 1 day - -#if 0 -# define TIMER_DIFF(a, b, max) ((max == UINT8_MAX) ? ((uint8_t)((a) - (b))) : ((max == UINT16_MAX) ? ((uint16_t)((a) - (b))) : ((max == UINT32_MAX) ? ((uint32_t)((a) - (b))) : ((a) >= (b) ? (a) - (b) : (max) + 1 - (b) + (a))))) -# define TIMER_DIFF_8(a, b) TIMER_DIFF(a, b, UINT8_MAX) -# define TIMER_DIFF_16(a, b) TIMER_DIFF(a, b, UINT16_MAX) -# define TIMER_DIFF_32(a, b) TIMER_DIFF(a, b, UINT32_MAX) -# define TIMER_DIFF_RAW(a, b) TIMER_DIFF_8(a, b) -#endif - -#ifdef __cplusplus -extern "C" { -#endif - -void rtc_timer_init(void); -void rtc_timer_clear(void); -uint32_t rtc_timer_read_ms(void); -uint32_t rtc_timer_elapsed_ms(uint32_t last); - -#ifdef __cplusplus -} -#endif diff --git a/keyboards/keychron/bluetooth/transport.c b/keyboards/keychron/bluetooth/transport.c deleted file mode 100644 index 9fab44fcc8..0000000000 --- a/keyboards/keychron/bluetooth/transport.c +++ /dev/null @@ -1,190 +0,0 @@ -/* Copyright 2022 @ lokher (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 . - */ - -#include "quantum.h" -#include "bluetooth.h" -#include "indicator.h" -#include "lpm.h" -#if defined(PROTOCOL_CHIBIOS) -# include -#endif -#include "transport.h" - -#ifndef REINIT_LED_DRIVER -# define REINIT_LED_DRIVER 1 -#endif - -#if defined(PROTOCOL_CHIBIOS) -extern host_driver_t chibios_driver; -#endif -extern host_driver_t bluetooth_driver; -extern keymap_config_t keymap_config; - -static transport_t transport = TRANSPORT_USB; - -#ifdef NKRO_ENABLE -nkro_t nkro = {false, false}; -#endif - -static void transport_changed(transport_t new_transport); - -__attribute__((weak)) void bt_transport_enable(bool enable) { - if (enable) { - if (host_get_driver() != &bluetooth_driver) { - host_set_driver(&bluetooth_driver); - - /* Disconnect and reconnect to sync the bluetooth state - * TODO: query bluetooth state to sync - */ - bluetooth_disconnect(); - bluetooth_connect(); - // TODO: Clear USB report - } - } else { - indicator_stop(); - - if (bluetooth_get_state() == BLUETOOTH_CONNECTED) { - report_keyboard_t empty_report = {0}; - bluetooth_driver.send_keyboard(&empty_report); - } - } -} - -/* There is no dedicated pin for USB power on chip such as STM32L432, but USB power - * can be connected and disconnected via registers. - * Overwrite these two functions if such chip is used. */ -__attribute__((weak)) void usb_power_connect(void) {} -__attribute__((weak)) void usb_power_disconnect(void) {} - -__attribute__((weak)) void usb_transport_enable(bool enable) { - if (enable) { - if (host_get_driver() != &chibios_driver) { -#if !defined(KEEP_USB_CONNECTION_IN_BLUETOOTH_MODE) - usb_power_connect(); - usb_start(&USBD1); -#endif - host_set_driver(&chibios_driver); - } - } else { - if (USB_DRIVER.state == USB_ACTIVE) { - report_keyboard_t empty_report = {0}; - chibios_driver.send_keyboard(&empty_report); - } - -#if !defined(KEEP_USB_CONNECTION_IN_BLUETOOTH_MODE) - usbStop(&USBD1); - usbDisconnectBus(&USBD1); - usb_power_disconnect(); -#endif - } -} - -void set_transport(transport_t new_transport) { - if (transport != new_transport) { - transport = new_transport; - - clear_keyboard(); - - switch (transport) { - case TRANSPORT_USB: - usb_transport_enable(true); - bt_transport_enable(false); - lpm_timer_stop(); -#ifdef NKRO_ENABLE -# if defined(BLUETOOTH_NKRO_ENABLE) - nkro.bluetooth = keymap_config.nkro; -# endif - keymap_config.nkro = nkro.usb; -#endif - break; - - case TRANSPORT_BLUETOOTH: - bt_transport_enable(true); - usb_transport_enable(false); - lpm_timer_reset(); -#if defined(NKRO_ENABLE) - nkro.usb = keymap_config.nkro; -# if defined(BLUETOOTH_NKRO_ENABLE) - keymap_config.nkro = nkro.bluetooth; -# else - keymap_config.nkro = FALSE; -# endif -#endif - break; - default: - break; - } - - transport_changed(transport); - } -} - -transport_t get_transport(void) { - return transport; -} - -/* Changing transport may cause bronw-out reset of led driver - * withoug MCU reset, which lead backlight to not work, - * reinit the led driver workgound this issue */ -static void reinit_led_drvier(void) { - /* Wait circuit to discharge for a while */ - systime_t start = chVTGetSystemTime(); - while (chTimeI2MS(chVTTimeElapsedSinceX(start)) < 100) { - }; - -#ifdef LED_MATRIX_ENABLE - led_matrix_init(); -#endif -#ifdef RGB_MATRIX_ENABLE - rgb_matrix_init(); -#endif -} - -void transport_changed(transport_t new_transport) { -#if (REINIT_LED_DRIVER) - reinit_led_drvier(); -#endif - -#if defined(RGB_MATRIX_ENABLE) && defined(RGB_MATRIX_TIMEOUT) -# if (RGB_MATRIX_TIMEOUT > 0) - rgb_matrix_disable_timeout_set(RGB_MATRIX_TIMEOUT_INFINITE); - rgb_matrix_disable_time_reset(); -# endif -#endif -#if defined(LED_MATRIX_ENABLE) && defined(LED_MATRIX_TIMEOUT) -# if (LED_MATRIX_TIMEOUT > 0) - led_matrix_disable_timeout_set(LED_MATRIX_TIMEOUT_INFINITE); - led_matrix_disable_time_reset(); -# endif -#endif -} - -void usb_remote_wakeup(void) { - if (USB_DRIVER.state == USB_SUSPENDED) { - while (USB_DRIVER.state == USB_SUSPENDED) { - /* Do this in the suspended state */ - suspend_power_down(); // on AVR this deep sleeps for 15ms - /* Remote wakeup */ - if (suspend_wakeup_condition()) { - usbWakeupHost(&USB_DRIVER); - } - } - wait_ms(500); - /* Woken up */ - // variables has been already cleared by the wakeup hook - send_keyboard_report(); - } -} diff --git a/keyboards/keychron/bluetooth/transport.h b/keyboards/keychron/bluetooth/transport.h deleted file mode 100644 index 29722cd265..0000000000 --- a/keyboards/keychron/bluetooth/transport.h +++ /dev/null @@ -1,39 +0,0 @@ -/* Copyright 2022 @ lokher (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 . - */ - -#pragma once - -typedef enum { - TRANSPORT_NONE, - TRANSPORT_USB, - TRANSPORT_BLUETOOTH, -} transport_t; - -#ifdef NKRO_ENABLE -typedef struct { - bool usb : 1; - bool bluetooth : 1; -} nkro_t; -#endif - -void set_transport(transport_t new_transport); -transport_t get_transport(void); - -void bt_transport_enable(bool enable); -void usb_power_connect(void); -void usb_power_disconnect(void); -void usb_transport_enable(bool enable); -void usb_remote_wakeup(void); diff --git a/keyboards/keychron/common/common.mk b/keyboards/keychron/common/common.mk deleted file mode 100644 index d3f283ef9a..0000000000 --- a/keyboards/keychron/common/common.mk +++ /dev/null @@ -1,6 +0,0 @@ -COMMON_DIR = common -SRC += $(COMMON_DIR)/matrix.c - -VPATH += $(TOP_DIR)/keyboards/keychron/$(COMMON_DIR) - -include $(TOP_DIR)/keyboards/keychron/$(COMMON_DIR)/debounce/debounce.mk diff --git a/keyboards/keychron/common/debounce/asym_eager_defer_pk.c b/keyboards/keychron/common/debounce/asym_eager_defer_pk.c deleted file mode 100644 index db24cb9359..0000000000 --- a/keyboards/keychron/common/debounce/asym_eager_defer_pk.c +++ /dev/null @@ -1,170 +0,0 @@ -/* - * Copyright 2017 Alex Ong - * Copyright 2020 Andrei Purdea - * Copyright 2021 Simon Arlott - * Copyright 2024 @ 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 . - */ - -/* -Basic symmetric per-key algorithm. Uses an 8-bit counter per key. -When no state changes have occured for DEBOUNCE milliseconds, we push the state. -*/ - -#include "debounce.h" -#include "timer.h" -#include - -#ifdef PROTOCOL_CHIBIOS -# if CH_CFG_USE_MEMCORE == FALSE -# error ChibiOS is configured without a memory allocator. Your keyboard may have set `#define CH_CFG_USE_MEMCORE FALSE`, which is incompatible with this debounce algorithm. -# endif -#endif - -#define ROW_SHIFTER ((matrix_row_t)1) - -typedef struct { - bool pressed : 1; - uint8_t time : 7; -} debounce_counter_t; - -extern uint8_t debounce_time; - -static debounce_counter_t *debounce_counters = NULL; -static fast_timer_t last_time; -static bool counters_need_update; -static bool matrix_need_update; -static bool cooked_changed; - -# define DEBOUNCE_ELAPSED 0 - -static void update_debounce_counters_and_transfer_if_expired(matrix_row_t raw[], matrix_row_t cooked[], uint8_t num_rows, uint8_t elapsed_time); -static void transfer_matrix_values(matrix_row_t raw[], matrix_row_t cooked[], uint8_t num_rows); - -// we use num_rows rather than MATRIX_ROWS to support split keyboards -void asym_eager_defer_pk_debounce_init(uint8_t num_rows) { - debounce_counters = malloc(num_rows * MATRIX_COLS * sizeof(debounce_counter_t)); - - int i = 0; - for (uint8_t r = 0; r < num_rows; r++) { - for (uint8_t c = 0; c < MATRIX_COLS; c++) { - debounce_counters[i++].time = DEBOUNCE_ELAPSED; - } - } -} - -void asym_eager_defer_pk_debounce_free(void) { - if (debounce_counters != NULL) { - free(debounce_counters); - debounce_counters = NULL; - } -} - -bool asym_eager_defer_pk_debounce(matrix_row_t raw[], matrix_row_t cooked[], uint8_t num_rows, bool changed) { - - bool updated_last = false; - cooked_changed = false; - - if (counters_need_update) { - fast_timer_t now = timer_read_fast(); - fast_timer_t elapsed_time = TIMER_DIFF_FAST(now, last_time); - - last_time = now; - updated_last = true; - if (elapsed_time > UINT8_MAX) { - elapsed_time = UINT8_MAX; - } - - if (elapsed_time > 0) { - update_debounce_counters_and_transfer_if_expired(raw, cooked, num_rows, elapsed_time); - } - } - - if (changed || matrix_need_update) { - if (!updated_last) { - last_time = timer_read_fast(); - } - - transfer_matrix_values(raw, cooked, num_rows); - } - - return cooked_changed; -} - -static void update_debounce_counters_and_transfer_if_expired(matrix_row_t raw[], matrix_row_t cooked[], uint8_t num_rows, uint8_t elapsed_time) { - debounce_counter_t *debounce_pointer = debounce_counters; - - counters_need_update = false; - matrix_need_update = false; - - for (uint8_t row = 0; row < num_rows; row++) { - for (uint8_t col = 0; col < MATRIX_COLS; col++) { - matrix_row_t col_mask = (ROW_SHIFTER << col); - - if (debounce_pointer->time != DEBOUNCE_ELAPSED) { - if (debounce_pointer->time <= elapsed_time) { - debounce_pointer->time = DEBOUNCE_ELAPSED; - - if (debounce_pointer->pressed) { - // key-down: eager - matrix_need_update = true; - } else { - // key-up: defer - matrix_row_t cooked_next = (cooked[row] & ~col_mask) | (raw[row] & col_mask); - cooked_changed |= cooked_next ^ cooked[row]; - cooked[row] = cooked_next; - } - } else { - debounce_pointer->time -= elapsed_time; - counters_need_update = true; - } - } - debounce_pointer++; - } - } -} - -static void transfer_matrix_values(matrix_row_t raw[], matrix_row_t cooked[], uint8_t num_rows) { - debounce_counter_t *debounce_pointer = debounce_counters; - - matrix_need_update = false; - - for (uint8_t row = 0; row < num_rows; row++) { - matrix_row_t delta = raw[row] ^ cooked[row]; - for (uint8_t col = 0; col < MATRIX_COLS; col++) { - matrix_row_t col_mask = (ROW_SHIFTER << col); - - if (delta & col_mask) { - if (debounce_pointer->time == DEBOUNCE_ELAPSED) { - debounce_pointer->pressed = (raw[row] & col_mask); - debounce_pointer->time = debounce_time;; - counters_need_update = true; - - if (debounce_pointer->pressed) { - // key-down: eager - cooked[row] ^= col_mask; - cooked_changed = true; - } - } - } else if (debounce_pointer->time != DEBOUNCE_ELAPSED) { - if (!debounce_pointer->pressed) { - // key-up: defer - debounce_pointer->time = DEBOUNCE_ELAPSED; - } - } - debounce_pointer++; - } - } -} diff --git a/keyboards/keychron/common/debounce/debounce.mk b/keyboards/keychron/common/debounce/debounce.mk deleted file mode 100644 index d84c479ab5..0000000000 --- a/keyboards/keychron/common/debounce/debounce.mk +++ /dev/null @@ -1,14 +0,0 @@ -DEBOUNCE_DIR = common/debounce -SRC += \ - $(DEBOUNCE_DIR)/sym_defer_g.c \ - $(DEBOUNCE_DIR)/sym_defer_pr.c \ - $(DEBOUNCE_DIR)/sym_defer_pk.c \ - $(DEBOUNCE_DIR)/sym_eager_pr.c \ - $(DEBOUNCE_DIR)/sym_eager_pk.c \ - $(DEBOUNCE_DIR)/asym_eager_defer_pk.c \ - $(DEBOUNCE_DIR)/none.c \ - $(DEBOUNCE_DIR)/keychron_debounce.c - -VPATH += $(TOP_DIR)/keyboards/keychron/$(DEBOUNCE_DIR) - -OPT_DEFS += -DDYNAMIC_DEBOUNCE_ENABLE diff --git a/keyboards/keychron/common/debounce/eeconfig_debounce.h b/keyboards/keychron/common/debounce/eeconfig_debounce.h deleted file mode 100644 index 7c12f0f189..0000000000 --- a/keyboards/keychron/common/debounce/eeconfig_debounce.h +++ /dev/null @@ -1,20 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#pragma once - -#define EECONFIG_SIZE_DEBOUNCE 2 - diff --git a/keyboards/keychron/common/debounce/keychron_debounce.c b/keyboards/keychron/common/debounce/keychron_debounce.c deleted file mode 100644 index 6296d85b81..0000000000 --- a/keyboards/keychron/common/debounce/keychron_debounce.c +++ /dev/null @@ -1,214 +0,0 @@ - -/* Copyright 2024 @ 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 . - */ - -#include "keychron_debounce.h" -#include "raw_hid.h" -#include "quantum.h" -#include "eeconfig.h" -#include "eeconfig_kb.h" -#include "keychron_raw_hid.h" - -#ifdef SPLIT_KEYBOARD -# pragma(error "Split keyboard is not supported") -#endif - -#ifndef DEBOUNCE -# define DEBOUNCE 5 -#endif - -// Maximum debounce: 255ms -#if DEBOUNCE > UINT8_MAX -# undef DEBOUNCE -# define DEBOUNCE UINT8_MAX -#endif - -#ifndef DEFAULT_DEBOUNCE_TYPE - #define DEFAULT_DEBOUNCE_TYPE DEBOUNCE_SYM_EAGER_PER_KEY -#endif - -#define DEBOUNCE_SET_QMK 0 -#define OFFSET_DEBOUNCE ((uint8_t *)(EECONFIG_BASE_DYNAMIC_DEBOUNCE)) - -static uint8_t debounce_type = 0; -uint8_t debounce_time = 0; -static debounce_t debounce_func = {NULL, NULL, NULL}; - -extern void sym_defer_g_debounce_init(uint8_t num_rows); -extern bool sym_defer_g_debounce(matrix_row_t raw[], matrix_row_t cooked[], uint8_t num_rows, bool changed); -extern void sym_defer_g_debounce_free(void); - -extern void sym_defer_pr_debounce_init(uint8_t num_rows); -extern bool sym_defer_pr_debounce(matrix_row_t raw[], matrix_row_t cooked[], uint8_t num_rows, bool changed); -extern void sym_defer_pr_debounce_free(void); - -extern void sym_defer_pk_debounce_init(uint8_t num_rows); -extern bool sym_defer_pk_debounce(matrix_row_t raw[], matrix_row_t cooked[], uint8_t num_rows, bool changed); -extern void sym_defer_pk_debounce_free(void); - -extern void sym_eager_pr_debounce_init(uint8_t num_rows); -extern bool sym_eager_pr_debounce(matrix_row_t raw[], matrix_row_t cooked[], uint8_t num_rows, bool changed); -extern void sym_eager_pr_debounce_free(void); - -extern void sym_eager_pk_debounce_init(uint8_t num_rows); -extern bool sym_eager_pk_debounce(matrix_row_t raw[], matrix_row_t cooked[], uint8_t num_rows, bool changed); -extern void sym_eager_pk_debounce_free(void); - -extern void asym_eager_defer_pk_debounce_init(uint8_t num_rows); -extern bool asym_eager_defer_pk_debounce(matrix_row_t raw[], matrix_row_t cooked[], uint8_t num_rows, bool changed); -extern void asym_eager_defer_pk_debounce_free(void); - -extern void none_debounce_init(uint8_t num_rows); -extern bool none_debounce(matrix_row_t raw[], matrix_row_t cooked[], uint8_t num_rows, bool changed); -extern void none_debounce_free(void); - -void debounce_set(uint8_t new_debounce_type, uint8_t time, bool force); - -/** - * @brief Debounce raw matrix events according to the choosen debounce algorithm. - * - * @param raw The current key state - * @param cooked The debounced key state - * @param num_rows Number of rows to debounce - * @param changed True if raw has changed since the last call - * @return true Cooked has new keychanges after debouncing - * @return false Cooked is the same as before - */ - -bool debounce(matrix_row_t raw[], matrix_row_t cooked[], uint8_t num_rows, bool changed) { - if (debounce_func.debounce) debounce_func.debounce(raw, cooked, num_rows, changed); - - return false; -} - -void debounce_init(uint8_t num_rows) { - debounce_type = 0; - - // debounce_set(DEBOUNCE_SYM_EAGER_PER_KEY, DEBOUNCE); - if (!eeconfig_is_enabled()) { - eeconfig_init(); - } - uint8_t type = eeprom_read_byte(OFFSET_DEBOUNCE); - uint8_t time = eeprom_read_byte(OFFSET_DEBOUNCE + 1); - - if (type >= DEBOUNCE_MAX) type = DEFAULT_DEBOUNCE_TYPE; - - debounce_set(type, time, debounce_type == type); -} - -void debounce_free(void) { - if (debounce_func.debounce_free) debounce_func.debounce_free(); -} - -static bool debounce_save(void) { - eeprom_update_byte(OFFSET_DEBOUNCE, debounce_type); - eeprom_update_byte(OFFSET_DEBOUNCE + 1, debounce_time); - return true; -} - -void debounce_config_reset(void) { - debounce_set(DEFAULT_DEBOUNCE_TYPE, DEBOUNCE, true); - debounce_save(); -} - -void debounce_set(uint8_t new_debounce_type, uint8_t time, bool force) { - if (new_debounce_type == debounce_type && time == debounce_time && !force) return; - - debounce_free(); - - debounce_type = new_debounce_type; - debounce_time = time; - - if (debounce_time == 0) new_debounce_type = DEBOUNCE_NONE; - - switch (new_debounce_type) { - case DEBOUNCE_SYM_DEFER_GLOBAL: - debounce_func.debounce_init = sym_defer_g_debounce_init; - debounce_func.debounce = sym_defer_g_debounce; - debounce_func.debounce_free = sym_defer_g_debounce_free; - break; - - case DEBOUNCE_SYM_DEFER_PER_ROW: - debounce_func.debounce_init = sym_defer_pr_debounce_init; - debounce_func.debounce = sym_defer_pr_debounce; - debounce_func.debounce_free = sym_defer_pr_debounce_free; - break; - - case DEBOUNCE_SYM_DEFER_PER_KEY: - debounce_func.debounce_init = sym_defer_pk_debounce_init; - debounce_func.debounce = sym_defer_pk_debounce; - debounce_func.debounce_free = sym_defer_pk_debounce_free; - break; - - case DEBOUNCE_SYM_EAGER_PER_ROW: - debounce_func.debounce_init = sym_eager_pr_debounce_init; - debounce_func.debounce = sym_eager_pr_debounce; - debounce_func.debounce_free = sym_eager_pr_debounce_free; - break; - - case DEBOUNCE_SYM_EAGER_PER_KEY: - debounce_func.debounce_init = sym_eager_pk_debounce_init; - debounce_func.debounce = sym_eager_pk_debounce; - debounce_func.debounce_free = sym_eager_pk_debounce_free; - break; - - case DEBOUNCE_ASYM_EAGER_DEFER_PER_KEY: - debounce_func.debounce_init = asym_eager_defer_pk_debounce_init; - debounce_func.debounce = asym_eager_defer_pk_debounce; - debounce_func.debounce_free = asym_eager_defer_pk_debounce_free; - if (debounce_time > 127) debounce_time = 127; - break; - - case DEBOUNCE_NONE: - debounce_func.debounce_init = none_debounce_init; - debounce_func.debounce = none_debounce; - debounce_func.debounce_free = none_debounce_free; - break; - } - - if (debounce_func.debounce_init) debounce_func.debounce_init(MATRIX_ROWS); -} - -void debounce_time_set(uint8_t time) { - debounce_time = time; -} - -void debounce_rx(uint8_t *data, uint8_t length) { - uint8_t cmd = data[1]; - switch (cmd) { - case DEBOUNCE_GET: - data[2] = 0; - data[3] = DEBOUNCE_SET_QMK; - data[4] = debounce_type; - data[5] = debounce_time; - break; - - case DEBOUNCE_SET: { - uint8_t type = data[2]; - uint8_t time = data[3]; - if (type < DEBOUNCE_MAX) { - data[2] = 0; - debounce_set(type, time, false); - debounce_save(); - } else - data[2] = 1; - } break; - - default: - data[0] = 0xFF; - break; - } -} diff --git a/keyboards/keychron/common/debounce/keychron_debounce.h b/keyboards/keychron/common/debounce/keychron_debounce.h deleted file mode 100644 index 40ea5800e2..0000000000 --- a/keyboards/keychron/common/debounce/keychron_debounce.h +++ /dev/null @@ -1,56 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#pragma once - -#include -#include -#include "matrix.h" - -enum { - DEBOUNCE_SYM_DEFER_GLOBAL, - DEBOUNCE_SYM_DEFER_PER_ROW, - DEBOUNCE_SYM_DEFER_PER_KEY, - DEBOUNCE_SYM_EAGER_PER_ROW, - DEBOUNCE_SYM_EAGER_PER_KEY, - DEBOUNCE_ASYM_EAGER_DEFER_PER_KEY, - DEBOUNCE_NONE, - DEBOUNCE_MAX, -}; - -typedef struct { - void (*debounce_init)(uint8_t); - bool (*debounce)(matrix_row_t [], matrix_row_t [], uint8_t, bool); - void (*debounce_free)(void); -} debounce_t; - -/** - * @brief Debounce raw matrix events according to the choosen debounce algorithm. - * - * @param raw The current key state - * @param cooked The debounced key state - * @param num_rows Number of rows to debounce - * @param changed True if raw has changed since the last call - * @return true Cooked has new keychanges after debouncing - * @return false Cooked is the same as before - */ -bool debounce(matrix_row_t raw[], matrix_row_t cooked[], uint8_t num_rows, bool changed); - -void debounce_init(uint8_t num_rows); -void debounce_config_reset(void); - -void debounce_free(void); -void debounce_rx(uint8_t *data, uint8_t length); diff --git a/keyboards/keychron/common/debounce/none.c b/keyboards/keychron/common/debounce/none.c deleted file mode 100644 index 244236803c..0000000000 --- a/keyboards/keychron/common/debounce/none.c +++ /dev/null @@ -1,36 +0,0 @@ -/* Copyright 2021 Simon Arlott - * - * 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 "debounce.h" -#include - -void none_debounce_init(uint8_t num_rows) {} - -bool none_debounce(matrix_row_t raw[], matrix_row_t cooked[], uint8_t num_rows, bool changed) { - bool cooked_changed = false; - - if (changed) { - size_t matrix_size = num_rows * sizeof(matrix_row_t); - if (memcmp(cooked, raw, matrix_size) != 0) { - memcpy(cooked, raw, matrix_size); - cooked_changed = true; - } - } - - return cooked_changed; -} - -void none_debounce_free(void) {} diff --git a/keyboards/keychron/common/debounce/none.h b/keyboards/keychron/common/debounce/none.h deleted file mode 100644 index 244236803c..0000000000 --- a/keyboards/keychron/common/debounce/none.h +++ /dev/null @@ -1,36 +0,0 @@ -/* Copyright 2021 Simon Arlott - * - * 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 "debounce.h" -#include - -void none_debounce_init(uint8_t num_rows) {} - -bool none_debounce(matrix_row_t raw[], matrix_row_t cooked[], uint8_t num_rows, bool changed) { - bool cooked_changed = false; - - if (changed) { - size_t matrix_size = num_rows * sizeof(matrix_row_t); - if (memcmp(cooked, raw, matrix_size) != 0) { - memcpy(cooked, raw, matrix_size); - cooked_changed = true; - } - } - - return cooked_changed; -} - -void none_debounce_free(void) {} diff --git a/keyboards/keychron/common/debounce/sym_defer_g.c b/keyboards/keychron/common/debounce/sym_defer_g.c deleted file mode 100644 index f1b475846c..0000000000 --- a/keyboards/keychron/common/debounce/sym_defer_g.c +++ /dev/null @@ -1,51 +0,0 @@ -/* -Copyright 2017 Alex Ong -Copyright 2021 Simon Arlott -Copyright 2024 @ 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 . -*/ - -/* -Basic global debounce algorithm. Used in 99% of keyboards at time of implementation -When no state changes have occured for DEBOUNCE milliseconds, we push the state. -*/ -#include "debounce.h" -#include "timer.h" -#include - -extern uint8_t debounce_time; -static bool debouncing = false; -static fast_timer_t debouncing_time; - -void sym_defer_g_debounce_init(uint8_t num_rows) {} - -bool sym_defer_g_debounce(matrix_row_t raw[], matrix_row_t cooked[], uint8_t num_rows, bool changed) { - bool cooked_changed = false; - - if (changed) { - debouncing = true; - debouncing_time = timer_read_fast(); - } else if (debouncing && timer_elapsed_fast(debouncing_time) >= debounce_time) { - size_t matrix_size = num_rows * sizeof(matrix_row_t); - if (memcmp(cooked, raw, matrix_size) != 0) { - memcpy(cooked, raw, matrix_size); - cooked_changed = true; - } - debouncing = false; - } - - return cooked_changed; -} - -void sym_defer_g_debounce_free(void) {} - diff --git a/keyboards/keychron/common/debounce/sym_defer_pk.c b/keyboards/keychron/common/debounce/sym_defer_pk.c deleted file mode 100644 index 633d5c3ebc..0000000000 --- a/keyboards/keychron/common/debounce/sym_defer_pk.c +++ /dev/null @@ -1,137 +0,0 @@ -/* -Copyright 2017 Alex Ong -Copyright 2020 Andrei Purdea -Copyright 2021 Simon Arlott -Copyright 2024 @ 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 . -*/ - -/* -Basic symmetric per-key algorithm. Uses an 8-bit counter per key. -When no state changes have occured for DEBOUNCE milliseconds, we push the state. -*/ - -#include "debounce.h" -#include "timer.h" -#include - -#ifdef PROTOCOL_CHIBIOS -# if CH_CFG_USE_MEMCORE == FALSE -# error ChibiOS is configured without a memory allocator. Your keyboard may have set `#define CH_CFG_USE_MEMCORE FALSE`, which is incompatible with this debounce algorithm. -# endif -#endif - - -#define ROW_SHIFTER ((matrix_row_t)1) - -typedef uint8_t debounce_counter_t; - -extern uint8_t debounce_time; - -static debounce_counter_t *debounce_counters = NULL; -static fast_timer_t last_time; -static bool counters_need_update; -static bool cooked_changed; - -# define DEBOUNCE_ELAPSED 0 - -static void update_debounce_counters_and_transfer_if_expired(matrix_row_t raw[], matrix_row_t cooked[], uint8_t num_rows, uint8_t elapsed_time); -static void start_debounce_counters(matrix_row_t raw[], matrix_row_t cooked[], uint8_t num_rows); - -// we use num_rows rather than MATRIX_ROWS to support split keyboards -void sym_defer_pk_debounce_init(uint8_t num_rows) { - debounce_counters = (debounce_counter_t *)malloc(num_rows * MATRIX_COLS * sizeof(debounce_counter_t)); - - int i = 0; - for (uint8_t r = 0; r < num_rows; r++) { - for (uint8_t c = 0; c < MATRIX_COLS; c++) { - debounce_counters[i++] = DEBOUNCE_ELAPSED; - } - } -} - -void sym_defer_pk_debounce_free(void) { - if (debounce_counters != NULL) { - free(debounce_counters); - debounce_counters = NULL; - } -} - -bool sym_defer_pk_debounce(matrix_row_t raw[], matrix_row_t cooked[], uint8_t num_rows, bool changed) { - bool updated_last = false; - cooked_changed = false; - - if (counters_need_update) { - fast_timer_t now = timer_read_fast(); - fast_timer_t elapsed_time = TIMER_DIFF_FAST(now, last_time); - - last_time = now; - updated_last = true; - if (elapsed_time > UINT8_MAX) { - elapsed_time = UINT8_MAX; - } - - if (elapsed_time > 0) { - update_debounce_counters_and_transfer_if_expired(raw, cooked, num_rows, elapsed_time); - } - } - - if (changed) { - if (!updated_last) { - last_time = timer_read_fast(); - } - - start_debounce_counters(raw, cooked, num_rows); - } - - return cooked_changed; -} - -static void update_debounce_counters_and_transfer_if_expired(matrix_row_t raw[], matrix_row_t cooked[], uint8_t num_rows, uint8_t elapsed_time) { - counters_need_update = false; - debounce_counter_t *debounce_pointer = debounce_counters; - for (uint8_t row = 0; row < num_rows; row++) { - for (uint8_t col = 0; col < MATRIX_COLS; col++) { - if (*debounce_pointer != DEBOUNCE_ELAPSED) { - if (*debounce_pointer <= elapsed_time) { - *debounce_pointer = DEBOUNCE_ELAPSED; - matrix_row_t cooked_next = (cooked[row] & ~(ROW_SHIFTER << col)) | (raw[row] & (ROW_SHIFTER << col)); - cooked_changed |= cooked[row] ^ cooked_next; - cooked[row] = cooked_next; - } else { - *debounce_pointer -= elapsed_time; - counters_need_update = true; - } - } - debounce_pointer++; - } - } -} - -static void start_debounce_counters(matrix_row_t raw[], matrix_row_t cooked[], uint8_t num_rows) { - debounce_counter_t *debounce_pointer = debounce_counters; - for (uint8_t row = 0; row < num_rows; row++) { - matrix_row_t delta = raw[row] ^ cooked[row]; - for (uint8_t col = 0; col < MATRIX_COLS; col++) { - if (delta & (ROW_SHIFTER << col)) { - if (*debounce_pointer == DEBOUNCE_ELAPSED) { - *debounce_pointer = debounce_time;; - counters_need_update = true; - } - } else { - *debounce_pointer = DEBOUNCE_ELAPSED; - } - debounce_pointer++; - } - } -} diff --git a/keyboards/keychron/common/debounce/sym_defer_pr.c b/keyboards/keychron/common/debounce/sym_defer_pr.c deleted file mode 100644 index c295855061..0000000000 --- a/keyboards/keychron/common/debounce/sym_defer_pr.c +++ /dev/null @@ -1,80 +0,0 @@ -/* -Copyright 2021 Chad Austin -Copyright 2024 @ 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 . -*/ - -/* -Symmetric per-row debounce algorithm. Changes only apply when -DEBOUNCE milliseconds have elapsed since the last change. -*/ - -#include "debounce.h" -#include "timer.h" -#include - -extern uint8_t debounce_time; - -static uint16_t last_time; -// [row] milliseconds until key's state is considered debounced. -static uint8_t* countdowns = NULL; -// [row] -static matrix_row_t* last_raw = NULL; - -void sym_defer_pr_debounce_init(uint8_t num_rows) { - countdowns = (uint8_t*)calloc(num_rows, sizeof(uint8_t)); - last_raw = (matrix_row_t*)calloc(num_rows, sizeof(matrix_row_t)); - last_time = timer_read(); -} - -void sym_defer_pr_debounce_free(void) { - if (countdowns != NULL) { - free(countdowns); - countdowns = NULL; - } - if (last_raw != NULL) { - free(last_raw); - last_raw = NULL; - } -} - -bool sym_defer_pr_debounce(matrix_row_t raw[], matrix_row_t cooked[], uint8_t num_rows, bool changed) { - uint16_t now = timer_read(); - uint16_t elapsed16 = TIMER_DIFF_16(now, last_time); - last_time = now; - uint8_t elapsed = (elapsed16 > 255) ? 255 : elapsed16; - bool cooked_changed = false; - - uint8_t* countdown = countdowns; - - for (uint8_t row = 0; row < num_rows; ++row, ++countdown) { - matrix_row_t raw_row = raw[row]; - - if (raw_row != last_raw[row]) { - *countdown = debounce_time; - last_raw[row] = raw_row; - } else if (*countdown > elapsed) { - *countdown -= elapsed; - } else if (*countdown) { - cooked_changed |= cooked[row] ^ raw_row; - cooked[row] = raw_row; - *countdown = 0; - } - } - - return cooked_changed; -} - -bool debounce_active(void) { - return true; -} diff --git a/keyboards/keychron/common/debounce/sym_eager_pk.c b/keyboards/keychron/common/debounce/sym_eager_pk.c deleted file mode 100644 index fe3655172c..0000000000 --- a/keyboards/keychron/common/debounce/sym_eager_pk.c +++ /dev/null @@ -1,142 +0,0 @@ -/* -Copyright 2017 Alex Ong -Copyright 2021 Simon Arlott -Copyright 2024 @ 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 . -*/ - -/* -Basic per-key algorithm. Uses an 8-bit counter per key. -After pressing a key, it immediately changes state, and sets a counter. -No further inputs are accepted until DEBOUNCE milliseconds have occurred. -*/ - -#include "debounce.h" -#include "timer.h" -#include - -#ifdef PROTOCOL_CHIBIOS -# if CH_CFG_USE_MEMCORE == FALSE -# error ChibiOS is configured without a memory allocator. Your keyboard may have set `#define CH_CFG_USE_MEMCORE FALSE`, which is incompatible with this debounce algorithm. -# endif -#endif - -extern uint8_t debounce_time; - -#define ROW_SHIFTER ((matrix_row_t)1) - -typedef uint8_t debounce_counter_t; - - -static debounce_counter_t *debounce_counters = NULL; -static fast_timer_t last_time; -static bool counters_need_update; -static bool matrix_need_update; -static bool cooked_changed; - -# define DEBOUNCE_ELAPSED 0 - -static void update_debounce_counters(uint8_t num_rows, uint8_t elapsed_time); -static void transfer_matrix_values(matrix_row_t raw[], matrix_row_t cooked[], uint8_t num_rows); - -// we use num_rows rather than MATRIX_ROWS to support split keyboards -void sym_eager_pk_debounce_init(uint8_t num_rows) { - debounce_counters = (debounce_counter_t *)malloc(num_rows * MATRIX_COLS * sizeof(debounce_counter_t)); - int i = 0; - for (uint8_t r = 0; r < num_rows; r++) { - for (uint8_t c = 0; c < MATRIX_COLS; c++) { - debounce_counters[i++] = DEBOUNCE_ELAPSED; - } - } -} - -void sym_eager_pk_debounce_free(void) { - if (debounce_counters != NULL) { - free(debounce_counters); - debounce_counters = NULL; - } -} - -bool sym_eager_pk_debounce(matrix_row_t raw[], matrix_row_t cooked[], uint8_t num_rows, bool changed) { - bool updated_last = false; - cooked_changed = false; - - if (counters_need_update) { - fast_timer_t now = timer_read_fast(); - fast_timer_t elapsed_time = TIMER_DIFF_FAST(now, last_time); - - last_time = now; - updated_last = true; - if (elapsed_time > UINT8_MAX) { - elapsed_time = UINT8_MAX; - } - - if (elapsed_time > 0) { - update_debounce_counters(num_rows, elapsed_time); - } - } - - if (changed || matrix_need_update) { - if (!updated_last) { - last_time = timer_read_fast(); - } - - transfer_matrix_values(raw, cooked, num_rows); - } - - return cooked_changed; -} - -// If the current time is > debounce counter, set the counter to enable input. -static void update_debounce_counters(uint8_t num_rows, uint8_t elapsed_time) { - counters_need_update = false; - matrix_need_update = false; - debounce_counter_t *debounce_pointer = debounce_counters; - for (uint8_t row = 0; row < num_rows; row++) { - for (uint8_t col = 0; col < MATRIX_COLS; col++) { - if (*debounce_pointer != DEBOUNCE_ELAPSED) { - if (*debounce_pointer <= elapsed_time) { - *debounce_pointer = DEBOUNCE_ELAPSED; - matrix_need_update = true; - } else { - *debounce_pointer -= elapsed_time; - counters_need_update = true; - } - } - debounce_pointer++; - } - } -} - -// upload from raw_matrix to final matrix; -static void transfer_matrix_values(matrix_row_t raw[], matrix_row_t cooked[], uint8_t num_rows) { - matrix_need_update = false; - debounce_counter_t *debounce_pointer = debounce_counters; - for (uint8_t row = 0; row < num_rows; row++) { - matrix_row_t delta = raw[row] ^ cooked[row]; - matrix_row_t existing_row = cooked[row]; - for (uint8_t col = 0; col < MATRIX_COLS; col++) { - matrix_row_t col_mask = (ROW_SHIFTER << col); - if (delta & col_mask) { - if (*debounce_pointer == DEBOUNCE_ELAPSED) { - *debounce_pointer = debounce_time; - counters_need_update = true; - existing_row ^= col_mask; // flip the bit. - cooked_changed = true; - } - } - debounce_pointer++; - } - cooked[row] = existing_row; - } -} diff --git a/keyboards/keychron/common/debounce/sym_eager_pr.c b/keyboards/keychron/common/debounce/sym_eager_pr.c deleted file mode 100644 index 85488f1063..0000000000 --- a/keyboards/keychron/common/debounce/sym_eager_pr.c +++ /dev/null @@ -1,134 +0,0 @@ -/* -Copyright 2019 Alex Ong -Copyright 2021 Simon Arlott -Copyright 2024 @ 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 . -*/ - -/* -Basic per-row algorithm. Uses an 8-bit counter per row. -After pressing a key, it immediately changes state, and sets a counter. -No further inputs are accepted until DEBOUNCE milliseconds have occurred. -*/ - -#include "debounce.h" -#include "timer.h" -#include - -#ifdef PROTOCOL_CHIBIOS -# if CH_CFG_USE_MEMCORE == FALSE -# error ChibiOS is configured without a memory allocator. Your keyboard may have set `#define CH_CFG_USE_MEMCORE FALSE`, which is incompatible with this debounce algorithm. -# endif -#endif - - -typedef uint8_t debounce_counter_t; - -extern uint8_t debounce_time; - -static bool matrix_need_update; - -static debounce_counter_t *debounce_counters = NULL; -static fast_timer_t last_time; -static bool counters_need_update; -static bool cooked_changed; - -# define DEBOUNCE_ELAPSED 0 - -static void update_debounce_counters(uint8_t num_rows, uint8_t elapsed_time); -static void transfer_matrix_values(matrix_row_t raw[], matrix_row_t cooked[], uint8_t num_rows); - -// we use num_rows rather than MATRIX_ROWS to support split keyboards -void sym_eager_pr_debounce_init(uint8_t num_rows) { - debounce_counters = (debounce_counter_t *)malloc(num_rows * sizeof(debounce_counter_t)); - for (uint8_t r = 0; r < num_rows; r++) { - debounce_counters[r] = DEBOUNCE_ELAPSED; - } -} - -void sym_eager_pr_debounce_free(void) { - if (debounce_counters != NULL) { - free(debounce_counters); - debounce_counters = NULL; - } -} - -bool sym_eager_pr_debounce(matrix_row_t raw[], matrix_row_t cooked[], uint8_t num_rows, bool changed) { - bool updated_last = false; - cooked_changed = false; - - if (counters_need_update) { - fast_timer_t now = timer_read_fast(); - fast_timer_t elapsed_time = TIMER_DIFF_FAST(now, last_time); - - last_time = now; - updated_last = true; - if (elapsed_time > UINT8_MAX) { - elapsed_time = UINT8_MAX; - } - - if (elapsed_time > 0) { - update_debounce_counters(num_rows, elapsed_time); - } - } - - if (changed || matrix_need_update) { - if (!updated_last) { - last_time = timer_read_fast(); - } - - transfer_matrix_values(raw, cooked, num_rows); - } - - return cooked_changed; -} - -// If the current time is > debounce counter, set the counter to enable input. -static void update_debounce_counters(uint8_t num_rows, uint8_t elapsed_time) { - counters_need_update = false; - matrix_need_update = false; - debounce_counter_t *debounce_pointer = debounce_counters; - for (uint8_t row = 0; row < num_rows; row++) { - if (*debounce_pointer != DEBOUNCE_ELAPSED) { - if (*debounce_pointer <= elapsed_time) { - *debounce_pointer = DEBOUNCE_ELAPSED; - matrix_need_update = true; - } else { - *debounce_pointer -= elapsed_time; - counters_need_update = true; - } - } - debounce_pointer++; - } -} - -// upload from raw_matrix to final matrix; -static void transfer_matrix_values(matrix_row_t raw[], matrix_row_t cooked[], uint8_t num_rows) { - matrix_need_update = false; - debounce_counter_t *debounce_pointer = debounce_counters; - for (uint8_t row = 0; row < num_rows; row++) { - matrix_row_t existing_row = cooked[row]; - matrix_row_t raw_row = raw[row]; - - // determine new value basd on debounce pointer + raw value - if (existing_row != raw_row) { - if (*debounce_pointer == DEBOUNCE_ELAPSED) { - *debounce_pointer = debounce_time; - cooked_changed |= cooked[row] ^ raw_row; - cooked[row] = raw_row; - counters_need_update = true; - } - } - debounce_pointer++; - } -} diff --git a/keyboards/keychron/common/dfu_info.c b/keyboards/keychron/common/dfu_info.c deleted file mode 100644 index 47c6012046..0000000000 --- a/keyboards/keychron/common/dfu_info.c +++ /dev/null @@ -1,49 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#include -#include "quantum.h" - -enum { - DFU_INFO_CHIP = 1, - DFU_INFO_TYPE, -}; - -enum { - BL_TYPE_STM32 = 1, - BL_TYPE_WB32, -}; - -void dfu_info_rx(uint8_t *data, uint8_t length) { - uint8_t i = 2; - - data[i++] = 0; // success - data[i++] = DFU_INFO_CHIP, - data[i++] = strlen(STR(QMK_MCU)); - memcpy(&data[i], STR(QMK_MCU), strlen(STR(QMK_MCU))); - i += strlen(STR(QMK_MCU)); - data[i++] = DFU_INFO_TYPE; - data[i++] = 1; - data[i++] = -#if defined(BOOTLOADER_STM32_DFU) - BL_TYPE_STM32 -#elif defined(BOOTLOADER_WB32_DFU) - BL_TYPE_WB32 -#else - 0 -#endif - ; -} diff --git a/keyboards/keychron/common/eeconfig_kb.c b/keyboards/keychron/common/eeconfig_kb.c deleted file mode 100644 index a0a15828ac..0000000000 --- a/keyboards/keychron/common/eeconfig_kb.c +++ /dev/null @@ -1,35 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#include "eeconfig_kb.h" -#ifdef DYNAMIC_DEBOUNCE_ENABLE -# include "keychron_debounce.h" -#endif - -void eeconfig_init_kb_datablock(void) { -#ifdef DYNAMIC_DEBOUNCE_ENABLE - extern void debounce_config_reset(void); - debounce_config_reset(); -#endif -#if defined(SNAP_CLICK_ENABLE) - extern void snap_click_config_reset(void); - snap_click_config_reset(); -#endif -#if defined(KEYCHRON_RGB_ENABLE) && defined(RGB_MATRIX_ENABLE) - extern void eeconfig_reset_custom_rgb(void); - eeconfig_reset_custom_rgb(); -#endif -} diff --git a/keyboards/keychron/common/eeconfig_kb.h b/keyboards/keychron/common/eeconfig_kb.h deleted file mode 100644 index dd995bb993..0000000000 --- a/keyboards/keychron/common/eeconfig_kb.h +++ /dev/null @@ -1,61 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#pragma once - -#include "eeconfig_language.h" - -#define EECONFIG_BASE_LANGUAGE 37 -#define EECONFIG_END_LANGUAGE (EECONFIG_BASE_LANGUAGE + EECONFIG_SIZE_LANGUAGE) - -#ifdef DYNAMIC_DEBOUNCE_ENABLE -# include "eeconfig_debounce.h" -# define __EECONFIG_SIZE_DEBOUNCE EECONFIG_SIZE_DEBOUNCE -#else -# define __EECONFIG_SIZE_DEBOUNCE 0 -#endif -#define EECONFIG_BASE_DYNAMIC_DEBOUNCE EECONFIG_END_LANGUAGE -#define EECONFIG_END_DYNAMIC_DEBOUNCE (EECONFIG_BASE_DYNAMIC_DEBOUNCE + __EECONFIG_SIZE_DEBOUNCE) - -#ifdef SNAP_CLICK_ENABLE -# include "eeconfig_snap_click.h" -# define __EECONFIG_SIZE_SNAP_CLICK EECONFIG_SIZE_SNAP_CLICK -#else -# define __EECONFIG_SIZE_SNAP_CLICK 0 -#endif -#define EECONFIG_BASE_SNAP_CLICK (EECONFIG_END_DYNAMIC_DEBOUNCE) -#define EECONFIG_END_SNAP_CLICK (EECONFIG_BASE_SNAP_CLICK + __EECONFIG_SIZE_SNAP_CLICK) - -#if defined(KEYCHRON_RGB_ENABLE) && defined(RGB_MATRIX_ENABLE) -# include "eeconfig_custom_rgb.h" -# define __EECONFIG_SIZE_CUSTOM_RGB EECONFIG_SIZE_CUSTOM_RGB -#else -# define __EECONFIG_SIZE_CUSTOM_RGB 0 -#endif -#define EECONFIG_BASE_CUSTOM_RGB EECONFIG_END_SNAP_CLICK -#define EECONFIG_END_CUSTOM_RGB (EECONFIG_BASE_CUSTOM_RGB + __EECONFIG_SIZE_CUSTOM_RGB) - -#if defined(WIRELESS_CONFIG_ENABLE) -# include "eeconfig_wireless.h" -# define __EECONFIG_SIZE_WIRELESS_CONFIG EECONFIG_SIZE_WIRELESS_CONFIG -#else -# define __EECONFIG_SIZE_WIRELESS_CONFIG 0 -#endif -#define EECONFIG_BASE_WIRELESS_CONFIG EECONFIG_END_CUSTOM_RGB -#define EECONFIG_END_WIRELESS_CONFIG (EECONFIG_BASE_WIRELESS_CONFIG + __EECONFIG_SIZE_WIRELESS_CONFIG) - -#define EECONFIG_KB_DATA_SIZE (EECONFIG_END_WIRELESS_CONFIG - EECONFIG_BASE_LANGUAGE) - diff --git a/keyboards/keychron/common/factory_test.c b/keyboards/keychron/common/factory_test.c deleted file mode 100644 index ebf0e460b0..0000000000 --- a/keyboards/keychron/common/factory_test.c +++ /dev/null @@ -1,465 +0,0 @@ -/* Copyright 2021~2025 @ 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 . - */ - -#include "quantum.h" -#include "raw_hid.h" -#include "via.h" - -#include "keychron_task.h" -#ifdef LK_WIRELESS_ENABLE -# include "transport.h" -# include "battery.h" -# include "lpm.h" -# include "lkbt51.h" -# include "indicator.h" -#endif -#ifdef DYNAMIC_DEBOUNCE_ENABLE -# include "keychron_debounce.h" -#endif -#ifdef SNAP_CLICK_ENABLE -# include "snap_click.h" -#endif -#include "config.h" -#include "version.h" - -#ifndef RAW_EPSIZE -# define RAW_EPSIZE 32 -#endif - -#ifndef BL_CYCLE_KEY -# define BL_CYCLE_KEY KC_RIGHT -#endif - -#ifndef BL_TRIG_KEY -# define BL_TRIG_KEY KC_HOME -#endif - -#ifndef P2P4G_CELAR_MASK -# define P2P4G_CELAR_MASK P2P4G_CLEAR_PAIRING_TYPE_C -#endif - -enum { - BACKLIGHT_TEST_OFF = 0, - BACKLIGHT_TEST_WHITE, - BACKLIGHT_TEST_RED, - BACKLIGHT_TEST_GREEN, - BACKLIGHT_TEST_BLUE, - BACKLIGHT_TEST_MAX, -}; - -enum { - KEY_PRESS_FN = 0x01 << 0, - KEY_PRESS_J = 0x01 << 1, - KEY_PRESS_Z = 0x01 << 2, - KEY_PRESS_BL_KEY1 = 0x01 << 3, - KEY_PRESS_BL_KEY2 = 0x01 << 4, - KEY_PRESS_FACTORY_RESET = KEY_PRESS_FN | KEY_PRESS_J | KEY_PRESS_Z, - KEY_PRESS_BACKLIGTH_TEST = KEY_PRESS_FN | KEY_PRESS_BL_KEY1 | KEY_PRESS_BL_KEY2, -}; - -enum { FACTORY_TEST_CMD_BACKLIGHT = 0x01, FACTORY_TEST_CMD_OS_SWITCH, FACTORY_TEST_CMD_JUMP_TO_BL, FACTORY_TEST_CMD_INT_PIN, FACTORY_TEST_CMD_GET_TRANSPORT, FACTORY_TEST_CMD_CHARGING_ADC, FACTORY_TEST_CMD_RADIO_CARRIER, FACTORY_TEST_CMD_GET_BUILD_TIME, FACTORY_TEST_CMD_GET_DEVICE_ID }; - -enum { - P2P4G_CLEAR_PAIRING_TYPE_A = 0x01 << 0, - P2P4G_CLEAR_PAIRING_TYPE_C = 0x01 << 1, -}; - -enum { - OS_SWITCH = 0x01, -}; - -static uint32_t factory_reset_timer = 0; -static uint8_t factory_reset_state = 0; -static uint8_t backlight_test_mode = BACKLIGHT_TEST_OFF; - -static uint32_t factory_reset_ind_timer = 0; -static uint8_t factory_reset_ind_state = 0; -static bool report_os_sw_state = false; -static uint8_t keys_released = 0; - -extern void eeconfig_reset_custom_rgb(void); - -void factory_timer_start(void) { - factory_reset_timer = timer_read32(); -} - -static inline void factory_timer_check(void) { - if (timer_elapsed32(factory_reset_timer) > 3000) { - factory_reset_timer = 0; - - if (factory_reset_state == KEY_PRESS_FACTORY_RESET) { - factory_reset_ind_timer = timer_read32(); - factory_reset_ind_state++; - keys_released = false; - - clear_keyboard(); // Avoid key being pressed after NKRO state changed - layer_state_t default_layer_tmp = default_layer_state; - eeconfig_init(); - keymap_config.raw = eeconfig_read_keymap(); - default_layer_set(default_layer_tmp); -#ifdef DYNAMIC_DEBOUNCE_ENABLE - debounce_config_reset(); -#endif -#ifdef SNAP_CLICK_ENABLE - snap_click_config_reset(); -#endif -#ifdef LED_MATRIX_ENABLE - if (!led_matrix_is_enabled()) led_matrix_enable(); - led_matrix_init(); -#endif -#ifdef RGB_MATRIX_ENABLE - if (!rgb_matrix_is_enabled()) rgb_matrix_enable(); - rgb_matrix_init(); -# if defined(KEYCHRON_RGB_ENABLE) && defined(EECONFIG_SIZE_CUSTOM_RGB) - eeconfig_reset_custom_rgb(); -# endif -#endif -#ifdef LK_WIRELESS_ENABLE -# ifdef EECONFIG_SIZE_WIRELESS_CONFIG - wireless_config_reset(); -# endif - wait_ms(50); - lkbt51_factory_reset(P2P4G_CELAR_MASK); -#endif - } else if (factory_reset_state == KEY_PRESS_BACKLIGTH_TEST) { -#ifdef LED_MATRIX_ENABLE - if (!led_matrix_is_enabled()) led_matrix_enable(); -#endif -#ifdef RGB_MATRIX_ENABLE - if (!rgb_matrix_is_enabled()) rgb_matrix_enable(); -#endif - backlight_test_mode = BACKLIGHT_TEST_WHITE; - } - - factory_reset_state = 0; - } -} - -static inline void factory_reset_ind_timer_check(void) { - if (factory_reset_ind_timer && timer_elapsed32(factory_reset_ind_timer) > 250) { - if (factory_reset_ind_state++ > 6) { - factory_reset_ind_timer = factory_reset_ind_state = 0; - } else { - factory_reset_ind_timer = timer_read32(); - } - } -} - -bool process_record_factory_test(uint16_t keycode, keyrecord_t *record) { - switch (keycode) { -#if defined(FN_KEY_1) || defined(FN_KEY_2) -# if defined(FN_KEY_1) - case FN_KEY_1: /* fall through */ -# endif -# if defined(FN_KEY_2) - case FN_KEY_2: -# endif -# if defined(FN_KEY_3) - case FN_KEY_3: -# endif - if (record->event.pressed) { - factory_reset_state |= KEY_PRESS_FN; - } else { - factory_reset_state &= ~KEY_PRESS_FN; - factory_reset_timer = 0; - } - break; -#endif - case KC_J: -#if defined(FN_J_KEY) - case FN_J_KEY: -#endif - if (record->event.pressed) { - factory_reset_state |= KEY_PRESS_J; - if (factory_reset_state == 0x07) factory_timer_start(); - if ((factory_reset_state & KEY_PRESS_FN) && keycode == KC_J) return false; - } else { - factory_reset_state &= ~KEY_PRESS_J; - factory_reset_timer = 0; - /* Avoid changing backlight effect on key released if FN_Z_KEY is mode*/ - if (keys_released & KEY_PRESS_J) { - keys_released &= ~KEY_PRESS_J; - if (keycode >= QK_BACKLIGHT_ON && keycode <= RGB_MODE_TWINKLE) return false; - } - } - break; - case KC_Z: -#if defined(FN_Z_KEY) - case FN_Z_KEY: -#endif - if (record->event.pressed) { - factory_reset_state |= KEY_PRESS_Z; - if (factory_reset_state == 0x07) factory_timer_start(); - if ((factory_reset_state & KEY_PRESS_FN) && keycode == KC_Z) return false; - } else { - factory_reset_state &= ~KEY_PRESS_Z; - factory_reset_timer = 0; - /* Avoid changing backlight effect on key released if FN_Z_KEY is mode*/ - if (keys_released & KEY_PRESS_Z) { - keys_released &= ~KEY_PRESS_Z; - if (keycode >= QK_BACKLIGHT_ON && keycode <= RGB_MODE_TWINKLE) return false; - } - } - break; -#if defined(BL_CYCLE_KEY) || defined(BL_CYCLE_KEY_2) -# if defined(BL_CYCLE_KEY) - case BL_CYCLE_KEY: -# endif -# if defined(FN_BL_CYCLE_KEY) - case FN_BL_CYCLE_KEY: -# endif - if (record->event.pressed) { - if (backlight_test_mode) { - if (++backlight_test_mode >= BACKLIGHT_TEST_MAX) { - backlight_test_mode = BACKLIGHT_TEST_WHITE; - } - } else { - factory_reset_state |= KEY_PRESS_BL_KEY1; - if (factory_reset_state == 0x19) { - factory_timer_start(); - } - } - } else { - factory_reset_state &= ~KEY_PRESS_BL_KEY1; - factory_reset_timer = 0; - } - break; -#endif -#if defined(BL_TRIG_KEY) || defined(BL_TRIG_KEY_2) -# if defined(BL_TRIG_KEY) - case BL_TRIG_KEY: -# endif -# if defined(FN_BL_TRIG_KEY) - case FN_BL_TRIG_KEY: -# endif - if (record->event.pressed) { - if (backlight_test_mode) { - backlight_test_mode = BACKLIGHT_TEST_OFF; - } else { - factory_reset_state |= KEY_PRESS_BL_KEY2; - if (factory_reset_state == 0x19) { - factory_timer_start(); - } - } - } else { - factory_reset_state &= ~KEY_PRESS_BL_KEY2; - factory_reset_timer = 0; - } - break; -#endif - } - - return true; -} - -#ifdef LED_MATRIX_ENABLE -bool factory_test_indicator(void) { - if (factory_reset_ind_state) { - led_matrix_set_value_all(factory_reset_ind_state % 2 ? 0 : 255); - return false; - } - - return true; -} -#endif - -#ifdef RGB_MATRIX_ENABLE -bool factory_test_indicator(void) { - if (factory_reset_ind_state) { - backlight_test_mode = BACKLIGHT_TEST_OFF; - rgb_matrix_set_color_all(factory_reset_ind_state % 2 ? 0 : 255, 0, 0); - return false; - } else if (backlight_test_mode) { - switch (backlight_test_mode) { - case BACKLIGHT_TEST_WHITE: - rgb_matrix_set_color_all(255, 255, 255); - break; - case BACKLIGHT_TEST_RED: - rgb_matrix_set_color_all(255, 0, 0); - break; - case BACKLIGHT_TEST_GREEN: - rgb_matrix_set_color_all(0, 255, 0); - break; - case BACKLIGHT_TEST_BLUE: - rgb_matrix_set_color_all(0, 0, 255); - break; - } - return false; - } - - return true; -} -#endif - -bool factory_reset_indicating(void) { - return factory_reset_ind_timer; -} - -bool factory_test_task(void) { - if (factory_reset_timer) factory_timer_check(); - if (factory_reset_ind_timer) factory_reset_ind_timer_check(); - - return true; -} - -void factory_test_send(uint8_t *payload, uint8_t length) { -#ifdef RAW_ENABLE - uint16_t checksum = 0; - uint8_t data[RAW_EPSIZE] = {0}; - - uint8_t i = 0; - data[i++] = 0xAB; - - memcpy(&data[i], payload, length); - i += length; - - for (uint8_t i = 1; i < RAW_EPSIZE - 3; i++) - checksum += data[i]; - data[RAW_EPSIZE - 2] = checksum & 0xFF; - data[RAW_EPSIZE - 1] = (checksum >> 8) & 0xFF; - - raw_hid_send(data, RAW_EPSIZE); -#endif -} - -void factory_test_rx(uint8_t *data, uint8_t length) { - if (data[0] == 0xAB) { - uint16_t checksum = 0; - - for (uint8_t i = 1; i < RAW_EPSIZE - 3; i++) { - checksum += data[i]; - } - /* Verify checksum */ - if ((checksum & 0xFF) != data[RAW_EPSIZE - 2] || checksum >> 8 != data[RAW_EPSIZE - 1]) return; - - uint8_t payload[32]; - uint8_t len = 0; - - switch (data[1]) { - case FACTORY_TEST_CMD_BACKLIGHT: - backlight_test_mode = data[2]; - factory_reset_timer = 0; - break; - case FACTORY_TEST_CMD_OS_SWITCH: - report_os_sw_state = data[2]; - if (report_os_sw_state) { - // dip_switch_read(true); - } - break; - case FACTORY_TEST_CMD_JUMP_TO_BL: - // if (memcmp(&data[2], "JumpToBootloader", strlen("JumpToBootloader")) == 0) bootloader_jump(); - break; -#ifdef LK_WIRELESS_ENABLE - case FACTORY_TEST_CMD_INT_PIN: - switch (data[2]) { - /* Enalbe/disable test */ - case 0xA1: - lkbt51_int_pin_test(data[3]); - break; - /* Set INT state */ - case 0xA2: - kc_printf("pin %d\n\r", data[3]); - writePin(BLUETOOTH_INT_OUTPUT_PIN, data[3]); - break; - /* Report INT state */ - // case 0xA3: - // payload[len++] = FACTORY_TEST_CMD_INT_PIN; - // payload[len++] = 0xA3; - // payload[len++] = readPin(LKBT51_INT_INPUT_PIN); - // factory_test_send(payload, len); - // break; - } - break; - case FACTORY_TEST_CMD_GET_TRANSPORT: - payload[len++] = FACTORY_TEST_CMD_GET_TRANSPORT; - payload[len++] = get_transport(); - payload[len++] = readPin(USB_POWER_SENSE_PIN); - factory_test_send(payload, len); - break; -#endif -#ifdef BATTERY_CHARGE_DONE_DETECT_ADC - case FACTORY_TEST_CMD_CHARGING_ADC: - case 0xA1: - battery_charging_monitor(data[3]); - break; - case 0xA2: - payload[len++] = FACTORY_TEST_CMD_CHARGING_ADC; - payload[len++] = battery_adc_read_charging_pin(); - factory_test_send(payload, len); - break; -#endif -#ifdef LK_WIRELESS_ENABLE - case FACTORY_TEST_CMD_RADIO_CARRIER: - if (data[2] < 79) lkbt51_radio_test(data[2]); - break; - -# ifdef WERELESS_PRESSURE_TEST - case 0x70: - switch (data[2]) { - /* Enalbe/disable test */ - case 0xB1: - SEND_STRING("abcdefghijklmnopqrstuvwxyz1234567890abcdefghijklmnopqrstuvwxyz1234567890abcdefghijklmnopqrstuvwxyz1234567890\n"); - break; - case 0xB2: - payload[len++] = 0x70; - payload[len++] = 0xB2; - payload[len++] = wireless_get_state(); - factory_test_send(payload, len); - break; - } - break; -# endif -#endif - case FACTORY_TEST_CMD_GET_BUILD_TIME: { - payload[len++] = FACTORY_TEST_CMD_GET_BUILD_TIME; - payload[len++] = 'v'; - if ((DEVICE_VER & 0xF000) != 0) itoa((DEVICE_VER >> 12), (char *)&payload[len++], 16); - itoa((DEVICE_VER >> 8) & 0xF, (char *)&payload[len++], 16); - payload[len++] = '.'; - itoa((DEVICE_VER >> 4) & 0xF, (char *)&payload[len++], 16); - payload[len++] = '.'; - itoa((DEVICE_VER >> 4) & 0xF, (char *)&payload[len++], 16); - payload[len++] = ' '; - memcpy(&payload[len], QMK_BUILDDATE, sizeof(QMK_BUILDDATE)); - len += sizeof(QMK_BUILDDATE); - factory_test_send(payload, len); - } break; - - case FACTORY_TEST_CMD_GET_DEVICE_ID: - payload[len++] = FACTORY_TEST_CMD_GET_DEVICE_ID; - payload[len++] = 12; // UUID length - memcpy(&payload[len], (uint32_t *)UID_BASE, 4); - memcpy(&payload[len + 4], (uint32_t *)UID_BASE + 4, 4); - memcpy(&payload[len + 8], (uint32_t *)UID_BASE + 8, 4); - - len += 12; - factory_test_send(payload, len); - break; - } - } -} - -/* bool dip_switch_update_user(uint8_t index, bool active) { */ -/* if (report_os_sw_state) { */ -/* #ifdef INVERT_OS_SWITCH_STATE */ -/* active = !active; */ -/* #endif */ -/* uint8_t payload[3] = {FACTORY_TEST_CMD_OS_SWITCH, OS_SWITCH, active}; */ -/* factory_test_send(payload, 3); */ -/* } */ - -/* return true; */ -/* } */ diff --git a/keyboards/keychron/common/factory_test.h b/keyboards/keychron/common/factory_test.h deleted file mode 100644 index a98d10043c..0000000000 --- a/keyboards/keychron/common/factory_test.h +++ /dev/null @@ -1,34 +0,0 @@ -/* Copyright 2022 @ lokher (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 . - */ - -#pragma once - -#define FACTORY_RESET_CHECK process_record_factory_test -#define FACTORY_RESET_TASK factory_test_task - -void factory_test_init(void); - -#if defined(LED_MATRIX_ENABLE) || defined(RGB_MATRIX_ENABLE) -bool factory_test_indicator(void); -#endif - -//void process_record_factory_test(uint16_t keycode, keyrecord_t *record); -bool factory_reset_indicating(void); -void factory_test_task(void); -void factory_test_rx(uint8_t *data, uint8_t length); - -bool process_record_factory_test(uint16_t keycode, keyrecord_t *record); - diff --git a/keyboards/keychron/common/keychron_common.c b/keyboards/keychron/common/keychron_common.c deleted file mode 100644 index 043960454d..0000000000 --- a/keyboards/keychron/common/keychron_common.c +++ /dev/null @@ -1,184 +0,0 @@ -/* 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 . - */ - -#include QMK_KEYBOARD_H -#include "keychron_common.h" -#ifdef FACTORY_TEST_ENABLE -# include "factory_test.h" -#endif -#ifdef RETAIL_DEMO_ENABLE -# include "retail_demo.h" -#endif -#ifdef LK_WIRELESS_ENABLE -# include "lkbt51.h" -# include "wireless.h" -#endif -#ifdef LED_MATRIX_ENABLE -# include "led_matrix.h" -#endif - -bool is_siri_active = false; -uint32_t siri_timer = 0; - -static uint8_t mac_keycode[4] = { - KC_LOPT, - KC_ROPT, - KC_LCMD, - KC_RCMD, -}; - -// clang-format off -static key_combination_t key_comb_list[] = { - {2, {KC_LWIN, KC_TAB}}, - {2, {KC_LWIN, KC_E}}, - {3, {KC_LSFT, KC_LCMD, KC_4}}, - {2, {KC_LWIN, KC_C}}, -#ifdef WIN_LOCK_SCREEN_ENABLE - {2, {KC_LWIN, KC_L}}, -#endif -#ifdef MAC_LOCK_SCREEN_ENABLE - {3, {KC_LCTL, KC_LCMD, KC_Q}}, -#endif -}; -// clang-format on - -void keychron_common_init(void) { -#ifdef SNAP_CLICK_ENABLE - extern void snap_click_init(void); - snap_click_init(); -#endif -#if defined(RGB_MATRIX_ENABLE) && defined(KEYCHRON_RGB_ENABLE) - extern void eeconfig_init_custom_rgb(void); - eeconfig_init_custom_rgb(); -#endif -#ifdef LK_WIRELESS_ENABLE -# ifdef P2P4_MODE_SELECT_PIN - palSetLineMode(P2P4_MODE_SELECT_PIN, PAL_MODE_INPUT); -# endif -# ifdef BT_MODE_SELECT_PIN - palSetLineMode(BT_MODE_SELECT_PIN, PAL_MODE_INPUT); -# endif -# ifdef BAT_LOW_LED_PIN - writePin(BAT_LOW_LED_PIN, BAT_LOW_LED_PIN_ON_STATE); -# endif - - lkbt51_init(false); - wireless_init(); -#endif - -#ifdef ENCODER_ENABLE - encoder_cb_init(); -#endif -} - -bool process_record_keychron_common(uint16_t keycode, keyrecord_t *record) { - switch (keycode) { - case KC_MCTRL: - if (record->event.pressed) { - register_code(KC_MISSION_CONTROL); - } else { - unregister_code(KC_MISSION_CONTROL); - } - return false; // Skip all further processing of this key - case KC_LNPAD: - if (record->event.pressed) { - register_code(KC_LAUNCHPAD); - } else { - unregister_code(KC_LAUNCHPAD); - } - return false; // Skip all further processing of this key - case KC_LOPTN: - case KC_ROPTN: - case KC_LCMMD: - case KC_RCMMD: - if (record->event.pressed) { - register_code(mac_keycode[keycode - KC_LOPTN]); - } else { - unregister_code(mac_keycode[keycode - KC_LOPTN]); - } - return false; // Skip all further processing of this key - case KC_SIRI: - if (record->event.pressed) { - if (!is_siri_active) { - is_siri_active = true; - register_code(KC_LCMD); - register_code(KC_SPACE); - } - siri_timer = timer_read32(); - } else { - // Do something else when release - } - return false; // Skip all further processing of this key - case KC_TASK: - case KC_FILE: - case KC_SNAP: - case KC_CTANA: -#ifdef WIN_LOCK_SCREEN_ENABLE - case KC_WLCK: -#endif -#ifdef MAC_LOCK_SCREEN_ENABLE - case KC_MLCK: -#endif - if (record->event.pressed) { - for (uint8_t i = 0; i < key_comb_list[keycode - KC_TASK].len; i++) { - register_code(key_comb_list[keycode - KC_TASK].keycode[i]); - } - } else { - for (uint8_t i = 0; i < key_comb_list[keycode - KC_TASK].len; i++) { - unregister_code(key_comb_list[keycode - KC_TASK].keycode[i]); - } - } - return false; // Skip all further processing of this key -#ifdef LED_MATRIX_ENABLE - case BL_SPI: - led_matrix_increase_speed(); - break; - case BL_SPD: - led_matrix_decrease_speed(); - break; -#endif - default: - return true; // Process all other keycodes normally - } - return true; -} - -void keychron_common_task(void) { - if (is_siri_active && timer_elapsed32(siri_timer) > 500) { - unregister_code(KC_LCMD); - unregister_code(KC_SPACE); - is_siri_active = false; - siri_timer = 0; - } -} - -#ifdef ENCODER_ENABLE -static void encoder_pad_cb(void *param) { - uint8_t index = (uint32_t)param; - encoder_inerrupt_read(index); -} - -void encoder_cb_init(void) { - pin_t encoders_pad_a[] = ENCODERS_PAD_A; - pin_t encoders_pad_b[] = ENCODERS_PAD_B; - for (uint32_t i = 0; i < NUM_ENCODERS; i++) { - palEnableLineEvent(encoders_pad_a[i], PAL_EVENT_MODE_BOTH_EDGES); - palEnableLineEvent(encoders_pad_b[i], PAL_EVENT_MODE_BOTH_EDGES); - palSetLineCallback(encoders_pad_a[i], encoder_pad_cb, (void *)i); - palSetLineCallback(encoders_pad_b[i], encoder_pad_cb, (void *)i); - } -} -#endif diff --git a/keyboards/keychron/common/keychron_common.h b/keyboards/keychron/common/keychron_common.h deleted file mode 100644 index e2a4a70480..0000000000 --- a/keyboards/keychron/common/keychron_common.h +++ /dev/null @@ -1,96 +0,0 @@ -/* 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 . - */ - -#pragma once - -#include "stdint.h" - -// clang-format off -enum { - KC_LOPTN = QK_KB_0, - KC_ROPTN, - KC_LCMMD, - KC_RCMMD, - KC_MCTRL, - KC_LNPAD, - KC_TASK_VIEW, - KC_FILE_EXPLORER, - KC_SCREEN_SHOT, - KC_CORTANA, -#ifdef WIN_LOCK_SCREEN_ENABLE - KC_WIN_LOCK_SCREEN, - __KC_WIN_LOCK_SCREEN_NEXT, -#else - __KC_WIN_LOCK_SCREEN_NEXT = KC_CORTANA + 1, -#endif -#ifdef MAC_LOCK_SCREEN_ENABLE - KC_MAC_LOCK_SCREEN = __KC_WIN_LOCK_SCREEN_NEXT, - __KC_MAC_LOCK_SCREEN_NEXT, -#else - __KC_MAC_LOCK_SCREEN_NEXT = __KC_WIN_LOCK_SCREEN_NEXT, -#endif - KC_SIRI = __KC_MAC_LOCK_SCREEN_NEXT, -#ifdef LK_WIRELESS_ENABLE - BT_HST1, - BT_HST2, - BT_HST3, - P2P4G, - BAT_LVL, -#endif -#ifdef ANANLOG_MATRIX - PROF1, - PROF2, - PROF3, -#endif -#ifdef LED_MATRIX_ENABLE - BL_SPI, - BL_SPD, -#endif - NEW_SAFE_RANGE, -}; - -#ifndef LK_WIRELESS_ENABLE - #define BT_HST1 KC_TRANS - #define BT_HST2 KC_TRANS - #define BT_HST3 KC_TRANS - #define P2P4G KC_TRANS - #define BAT_LVL KC_TRANS -#endif -#ifndef ANANLOG_MATRIX - #define PROF1 KC_TRANS - #define PROF2 KC_TRANS - #define PROF3 KC_TRANS -#endif - -#define KC_TASK KC_TASK_VIEW -#define KC_FILE KC_FILE_EXPLORER -#define KC_SNAP KC_SCREEN_SHOT -#define KC_CTANA KC_CORTANA -#define KC_WLCK KC_WIN_LOCK_SCREEN -#define KC_MLCK KC_MAC_LOCK_SCREEN - -typedef struct PACKED { - uint8_t len; - uint8_t keycode[3]; -} key_combination_t; - -void keychron_common_init(void); -bool process_record_keychron_common(uint16_t keycode, keyrecord_t *record); -void keychron_common_task(void); - -#ifdef ENCODER_ENABLE -void encoder_cb_init(void); -#endif diff --git a/keyboards/keychron/common/keychron_common.mk b/keyboards/keychron/common/keychron_common.mk deleted file mode 100644 index 3b1bf6d240..0000000000 --- a/keyboards/keychron/common/keychron_common.mk +++ /dev/null @@ -1,31 +0,0 @@ -OPT_DEFS += -DFACTORY_TEST_ENABLE -DAPDAPTIVE_NKRO_ENABLE - -KEYCHRON_COMMON_DIR = common -SRC += \ - $(KEYCHRON_COMMON_DIR)/keychron_task.c \ - $(KEYCHRON_COMMON_DIR)/keychron_common.c \ - $(KEYCHRON_COMMON_DIR)/keychron_raw_hid.c \ - $(KEYCHRON_COMMON_DIR)/factory_test.c \ - $(KEYCHRON_COMMON_DIR)/eeconfig_kb.c \ - $(KEYCHRON_COMMON_DIR)/dfu_info.c - -VPATH += $(TOP_DIR)/keyboards/keychron/$(KEYCHRON_COMMON_DIR) - -INFO_RULES_MK = $(shell $(QMK_BIN) generate-rules-mk --quiet --escape --keyboard $(KEYBOARD) --output $(INTERMEDIATE_OUTPUT)/src/info_rules.mk) -include $(INFO_RULES_MK) - -include $(TOP_DIR)/keyboards/keychron/$(KEYCHRON_COMMON_DIR)/language/language.mk - -ifeq ($(strip $(DEBOUNCE_TYPE)), custom) -include $(TOP_DIR)/keyboards/keychron/$(KEYCHRON_COMMON_DIR)/debounce/debounce.mk -endif - -ifeq ($(strip $(SNAP_CLICK_ENABLE)), yes) -include $(TOP_DIR)/keyboards/keychron/$(KEYCHRON_COMMON_DIR)/snap_click/snap_click.mk -endif - -ifeq ($(strip $(KEYCHRON_RGB_ENABLE)), yes) -ifeq ($(strip $(RGB_MATRIX_ENABLE)), yes) -include $(TOP_DIR)/keyboards/keychron/$(KEYCHRON_COMMON_DIR)/rgb/rgb.mk -endif -endif diff --git a/keyboards/keychron/common/keychron_raw_hid.c b/keyboards/keychron/common/keychron_raw_hid.c deleted file mode 100644 index e21776f5c8..0000000000 --- a/keyboards/keychron/common/keychron_raw_hid.c +++ /dev/null @@ -1,203 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#include QMK_KEYBOARD_H -#include "keychron_common.h" -#include "keychron_raw_hid.h" -#include "raw_hid.h" -#include "version.h" -#include "language.h" -#ifdef FACTORY_TEST_ENABLE -# include "factory_test.h" -#endif -#ifdef LK_WIRELESS_ENABLE -# include "lkbt51.h" -#endif -#ifdef ANANLOG_MATRIX -# include "analog_matrix.h" -#endif -#ifdef DYNAMIC_DEBOUNCE_ENABLE -# include "keychron_debounce.h" -#endif -#ifdef SNAP_CLICK_ENABLE -# include "snap_click.h" -#endif -#ifdef LK_WIRELESS_ENABLE -# include "wireless.h" -#endif - -extern void dfu_info_rx(uint8_t *data, uint8_t length); - -void get_support_feature(uint8_t *data) { - data[0] = 0; - data[1] = FEATURE_DEFAULT_LAYER -#ifdef KC_BLUETOOTH_ENABLE - | FEATURE_BLUETOOTH -#endif -#ifdef LK_WIRELESS_ENABLE - | FEATURE_BLUETOOTH | FEATURE_P24G -#endif -#ifdef ANANLOG_MATRIX - | FEATURE_ANALOG_MATRIX -#endif -#ifdef INFO_CHAGNED_NOTIFY_ENABLE - | FEATURE_INFO_CHAGNED_NOTIFY -#endif -#ifdef DYNAMIC_DEBOUNCE_ENABLE - | FEATURE_DYNAMIC_DEBOUNCE -#endif -#ifdef SNAP_CLICK_ENABLE - | FEATURE_SNAP_CLICK -#endif -#ifdef KEYCHRON_RGB_ENABLE - | FEATURE_KEYCHRON_RGB -#endif - ; -} - -void get_firmware_version(uint8_t *data) { - uint8_t i = 0; - data[i++] = 'v'; - if ((DEVICE_VER & 0xF000) != 0) itoa((DEVICE_VER >> 12), (char *)&data[i++], 16); - itoa((DEVICE_VER >> 8) & 0xF, (char *)&data[i++], 16); - data[i++] = '.'; - itoa((DEVICE_VER >> 4) & 0xF, (char *)&data[i++], 16); - data[i++] = '.'; - itoa(DEVICE_VER & 0xF, (char *)&data[i++], 16); - data[i++] = ' '; - memcpy(&data[i], QMK_BUILDDATE, sizeof(QMK_BUILDDATE)); - i += sizeof(QMK_BUILDDATE); -} - - -__attribute__((weak)) void kc_rgb_matrix_rx(uint8_t *data, uint8_t length) {} - -bool kc_raw_hid_rx(uint8_t *data, uint8_t length) { - switch (data[0]) { - case KC_GET_PROTOCOL_VERSION: - data[1] = PROTOCOL_VERSION; - data[2] = 0; - data[3] = QMK_COMMAND_SET; - break; - - case KC_GET_FIRMWARE_VERSION: - get_firmware_version(&data[1]); - break; - - case KC_GET_SUPPORT_FEATURE: - get_support_feature(&data[1]); - break; - - case KC_GET_DEFAULT_LAYER: - data[1] = get_highest_layer(default_layer_state); - break; - - case 0xA7: - switch (data[1]) { - case MISC_GET_PROTOCOL_VER: - data[2] = 0; - data[3] = MISC_PROTOCOL_VERSION & 0xFF; - data[4] = (MISC_PROTOCOL_VERSION >> 8) & 0xFF; - data[5] = MISC_DFU_INFO | MISC_LANGUAGE -#ifdef DYNAMIC_DEBOUNCE_ENABLE - | MISC_DEBOUNCE -#endif -#ifdef SNAP_CLICK_ENABLE - | MISC_SNAP_CLICK -#endif -#ifdef LK_WIRELESS_ENABLE - | MISC_WIRELESS_LPM -#endif -#ifdef HSUSB_8K_ENABLE - | MISC_REPORT_REATE -#endif - ; - break; - - case DFU_INFO_GET: - dfu_info_rx(data, length); - break; - case LANGUAGE_GET ... LANGUAGE_SET: - language_rx(data, length); - break; - -#if defined(DYNAMIC_DEBOUNCE_ENABLE) - case DEBOUNCE_GET ... DEBOUNCE_SET: - debounce_rx(data, length); - break; -#endif -#if defined(SNAP_CLICK_ENABLE) - case SNAP_CLICK_GET_INFO ... SNAP_CLICK_SAVE: - snap_click_rx(data, length); - break; -#endif -#if defined(LK_WIRELESS_ENABLE) && defined(EECONFIG_BASE_WIRELESS_CONFIG) - case WIRELESS_LPM_GET ... WIRELESS_LPM_SET: - wireless_raw_hid_rx(data, length); - break; -#endif -#if defined(HSUSB_8K_ENABLE) - case REPORT_RATE_GET ... REPORT_RATE_SET: - report_rate_hid_rx(data, length); - break; -#endif - default: - data[0] = 0xFF; - data[1] = 0; - break; - } - break; - -#if defined(KEYCHRON_RGB_ENABLE) - case 0xA8: - kc_rgb_matrix_rx(data, length); - break; -#endif - -#ifdef ANANLOG_MATRIX - case 0xA9: - analog_matrix_rx(data, length); - return true; -#endif -#ifdef LK_WIRELESS_ENABLE - case 0xAA: - lkbt51_dfu_rx(data, length); - return true; - -#endif -#ifdef FACTORY_TEST_ENABLE - case 0xAB: - factory_test_rx(data, length); - return true; - -#endif - default: - return false; - } - - raw_hid_send(data, length); - return true; -} - -#if defined(VIA_ENABLE) -bool via_command_kb(uint8_t *data, uint8_t length) { - return kc_raw_hid_rx(data, length); -} -#else -void raw_hid_receive(uint8_t *data, uint8_t length) { - kc_raw_hid_rx(data, length); -} -#endif diff --git a/keyboards/keychron/common/keychron_raw_hid.h b/keyboards/keychron/common/keychron_raw_hid.h deleted file mode 100644 index 4419f0f73f..0000000000 --- a/keyboards/keychron/common/keychron_raw_hid.h +++ /dev/null @@ -1,65 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#pragma once - -#define PROTOCOL_VERSION 0x02 -#define MISC_PROTOCOL_VERSION 0x0002 -#define QMK_COMMAND_SET 2 - -enum { - KC_GET_PROTOCOL_VERSION = 0xA0, - KC_GET_FIRMWARE_VERSION = 0xA1, - KC_GET_SUPPORT_FEATURE = 0xA2, - KC_GET_DEFAULT_LAYER = 0xA3, -}; - -enum { - FEATURE_DEFAULT_LAYER = 0x01U << 0, - FEATURE_BLUETOOTH = 0x01U << 1, - FEATURE_P24G = 0x01U << 2, - FEATURE_ANALOG_MATRIX = 0x01U << 3, - FEATURE_INFO_CHAGNED_NOTIFY = 0x01U << 4, - FEATURE_DYNAMIC_DEBOUNCE = 0x01U << 5, - FEATURE_SNAP_CLICK = 0x01U << 6, - FEATURE_KEYCHRON_RGB = 0x01U << 7, -}; - -enum { - MISC_DFU_INFO = 0x01 << 0, - MISC_LANGUAGE = 0x01 << 1, - MISC_DEBOUNCE = 0x01 << 2, - MISC_SNAP_CLICK = 0x01 << 3, - MISC_WIRELESS_LPM = 0x01 << 4, - MISC_REPORT_REATE = 0x01 << 5, -}; - -enum { - MISC_GET_PROTOCOL_VER = 0x01, - DFU_INFO_GET, - LANGUAGE_GET, - LANGUAGE_SET, - DEBOUNCE_GET, // 5 - DEBOUNCE_SET, - SNAP_CLICK_GET_INFO, - SNAP_CLICK_GET, - SNAP_CLICK_SET, - SNAP_CLICK_SAVE, // A - WIRELESS_LPM_GET, - WIRELESS_LPM_SET, - REPORT_RATE_GET, - REPORT_RATE_SET, -}; diff --git a/keyboards/keychron/common/keychron_task.c b/keyboards/keychron/common/keychron_task.c deleted file mode 100644 index 95fca0a9e5..0000000000 --- a/keyboards/keychron/common/keychron_task.c +++ /dev/null @@ -1,141 +0,0 @@ -/* Copyright 2023~2025 @ 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 . - */ - -#include -#include "keychron_task.h" -#include "quantum.h" -#include "keychron_common.h" -#ifdef FACTORY_TEST_ENABLE -# include "factory_test.h" -#endif -#ifdef RETAIL_DEMO_ENABLE -# include "retail_demo.h" -#endif - -__attribute__((weak)) bool process_record_keychron_kb(uint16_t keycode, keyrecord_t *record) { - return true; -} - -bool process_record_keychron(uint16_t keycode, keyrecord_t *record) { -#ifdef LK_WIRELESS_ENABLE - extern bool process_record_wireless(uint16_t keycode, keyrecord_t * record); - if (!process_record_wireless(keycode, record)) return false; -#endif -#ifdef FACTORY_TEST_ENABLE - if (!process_record_factory_test(keycode, record)) return false; -#endif - -#ifdef SNAP_CLICK_ENABLE - extern bool process_record_snap_click(uint16_t keycode, keyrecord_t * record); - if (!process_record_snap_click(keycode, record)) return false; -#endif - - if (!process_record_keychron_kb(keycode, record)) return false; - -#if defined(KEYCHRON_RGB_ENABLE) && defined(EECONFIG_SIZE_CUSTOM_RGB) -# if defined(RETAIL_DEMO_ENABLE) - if (!process_record_retail_demo(keycode, record)) { - return false; - } -# endif - - extern bool process_record_keychron_rgb(uint16_t keycode, keyrecord_t *record); - if (!process_record_keychron_rgb(keycode, record)) { - return false; - } -#endif - - return true; -} - -#if defined(LED_MATRIX_ENABLE) -bool led_matrix_indicators_keychron(void) { -# ifdef LK_WIRELESS_ENABLE - extern bool led_matrix_indicators_bt(void); - led_matrix_indicators_bt(); -# endif -# ifdef FACTORY_TEST_ENABLE - factory_test_indicator(); -# endif - return true; -} -#endif - -#if defined(RGB_MATRIX_ENABLE) -bool rgb_matrix_indicators_keychron(void) { -# ifdef LK_WIRELESS_ENABLE - extern bool rgb_matrix_indicators_bt(void); - rgb_matrix_indicators_bt(); -# endif -# ifdef FACTORY_TEST_ENABLE - factory_test_indicator(); -# endif - return true; -} -#endif - -__attribute__((weak)) bool keychron_task_kb(void) { - return true; -} - -void keychron_task(void) { -#ifdef LK_WIRELESS_ENABLE - extern void wireless_tasks(void); - wireless_tasks(); -#endif -#ifdef FACTORY_TEST_ENABLE - factory_test_task(); -#endif -#if defined(RETAIL_DEMO_ENABLE) && defined(KEYCHRON_RGB_ENABLE) && defined(EECONFIG_SIZE_CUSTOM_RGB) - retail_demo_task(); -#endif - - keychron_common_task(); - - keychron_task_kb(); -} - -bool process_record_kb(uint16_t keycode, keyrecord_t *record) { - if (!process_record_user(keycode, record)) return false; - - if (!process_record_keychron(keycode, record)) return false; - - return true; -} - -#ifdef RGB_MATRIX_ENABLE -bool rgb_matrix_indicators_kb(void) { - if (!rgb_matrix_indicators_user()) return false; - - rgb_matrix_indicators_keychron(); - - return true; -} -#endif - -#ifdef LED_MATRIX_ENABLE -bool led_matrix_indicators_kb(void) { - if (!led_matrix_indicators_user()) return false; - - led_matrix_indicators_keychron(); - - return true; -} -#endif - -void housekeeping_task_kb(void) { - keychron_task(); -} diff --git a/keyboards/keychron/common/keychron_task.h b/keyboards/keychron/common/keychron_task.h deleted file mode 100644 index c96141a32a..0000000000 --- a/keyboards/keychron/common/keychron_task.h +++ /dev/null @@ -1,25 +0,0 @@ -/* Copyright 2022 @ 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 . - */ - -#pragma once - -#include "stdint.h" -#include "action.h" - -bool keychron_task_kb(void); -bool process_record_keychron_kb(uint16_t keycode, keyrecord_t *record); - -void keychron_task(void); diff --git a/keyboards/keychron/common/language/eeconfig_language.h b/keyboards/keychron/common/language/eeconfig_language.h deleted file mode 100644 index 16aefcd147..0000000000 --- a/keyboards/keychron/common/language/eeconfig_language.h +++ /dev/null @@ -1,20 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#pragma once - -#define EECONFIG_SIZE_LANGUAGE 1 - diff --git a/keyboards/keychron/common/language/language.c b/keyboards/keychron/common/language/language.c deleted file mode 100644 index 934cc31cdf..0000000000 --- a/keyboards/keychron/common/language/language.c +++ /dev/null @@ -1,60 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#include -#include "eeconfig_kb.h" -#include "raw_hid.h" -#include "eeconfig.h" -#include "matrix.h" -#include "quantum.h" -#include "keychron_raw_hid.h" - -static uint8_t lang; - -static bool language_get(uint8_t *data) { - eeprom_read_block(&lang, (uint8_t *)(EECONFIG_BASE_LANGUAGE), sizeof(lang)); - data[1] = lang; - - return true; -} - -static bool language_set(uint8_t *data) { - lang = data[0]; - eeprom_update_block(&lang, (uint8_t *)(EECONFIG_BASE_LANGUAGE), sizeof(lang)); - - return true; -} - -void language_rx(uint8_t *data, uint8_t length) { - uint8_t cmd = data[1]; - bool success = true; - - switch (cmd) { - case LANGUAGE_GET: - success = language_get(&data[2]); - break; - - case LANGUAGE_SET: - success = language_set(&data[2]); - break; - - default: - data[0] = 0xFF; - break; - } - - data[2] = success ? 0 : 1; -} diff --git a/keyboards/keychron/common/language/language.h b/keyboards/keychron/common/language/language.h deleted file mode 100644 index 0a320d7903..0000000000 --- a/keyboards/keychron/common/language/language.h +++ /dev/null @@ -1,21 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#pragma once - -void language_config_reset(void); -void language_rx(uint8_t *data, uint8_t length); - diff --git a/keyboards/keychron/common/language/language.mk b/keyboards/keychron/common/language/language.mk deleted file mode 100644 index 6a9d01d0a1..0000000000 --- a/keyboards/keychron/common/language/language.mk +++ /dev/null @@ -1,7 +0,0 @@ -LANGUAGE_DIR = common/language -SRC += \ - $(LANGUAGE_DIR)/language.c \ - -VPATH += $(TOP_DIR)/keyboards/keychron/$(LANGUAGE_DIR) - -OPT_DEFS += -DLANGUAGE_ENABLE diff --git a/keyboards/keychron/common/matrix.c b/keyboards/keychron/common/matrix.c deleted file mode 100644 index 8fe7588118..0000000000 --- a/keyboards/keychron/common/matrix.c +++ /dev/null @@ -1,218 +0,0 @@ -/* 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 . - */ - -#include "quantum.h" - -#ifndef HC595_STCP -# define HC595_STCP B0 -#endif -#ifndef HC595_SHCP -# define HC595_SHCP A1 -#endif -#ifndef HC595_DS -# define HC595_DS A7 -#endif - -#ifndef HC595_START_INDEX -# define HC595_START_INDEX 0 -#endif -#ifndef HC595_END_INDEX -# define HC595_END_INDEX 15 -#endif -#ifndef HC595_OFFSET_INDEX -# define HC595_OFFSET_INDEX 0 -#endif - -#if defined(HC595_START_INDEX) && defined(HC595_END_INDEX) -# if ((HC595_END_INDEX - HC595_START_INDEX + 1) > 16) -# define SIZE_T uint32_t -# define UNSELECT_ALL_COL 0xFFFFFFFF -# define SELECT_ALL_COL 0x00000000 -# elif ((HC595_END_INDEX - HC595_START_INDEX + 1) > 8) -# define SIZE_T uint16_t -# define UNSELECT_ALL_COL 0xFFFF -# define SELECT_ALL_COL 0x0000 -# else -# define SIZE_T uint8_t -# define UNSELECT_ALL_COL 0xFF -# define SELECT_ALL_COL 0x00 -# endif -#endif - -pin_t row_pins[MATRIX_ROWS] = MATRIX_ROW_PINS; -pin_t col_pins[MATRIX_COLS] = MATRIX_COL_PINS; - -static inline uint8_t readMatrixPin(pin_t pin) { - if (pin != NO_PIN) { - return readPin(pin); - } else { - return 1; - } -} - -static inline void setPinOutput_writeLow(pin_t pin) { - setPinOutput(pin); - writePinLow(pin); -} - -static inline void setPinOutput_writeHigh(pin_t pin) { - setPinOutput(pin); - writePinHigh(pin); -} - -static inline void HC595_delay(uint16_t n) { - while (n-- > 0) { - asm volatile("nop" ::: "memory"); - } -} - -static void HC595_output(SIZE_T data, bool bit_flag) { - uint8_t n = 1; - - ATOMIC_BLOCK_FORCEON { - for (uint8_t i = 0; i < (HC595_END_INDEX - HC595_START_INDEX + 1); i++) { - if (data & 0x1) { - writePinHigh(HC595_DS); - } else { - writePinLow(HC595_DS); - } - writePinHigh(HC595_SHCP); - HC595_delay(n); - writePinLow(HC595_SHCP); - HC595_delay(n); - if (bit_flag) { - break; - } else { - data = data >> 1; - } - } - writePinHigh(HC595_STCP); - HC595_delay(n); - writePinLow(HC595_STCP); - HC595_delay(n); - } -} - -static void select_col(uint8_t col) { - if (col < HC595_START_INDEX || col > HC595_END_INDEX) { - setPinOutput_writeLow(col_pins[col]); - } else { - if (col == HC595_START_INDEX) { - HC595_output(0x00, true); - if (col < HC595_OFFSET_INDEX) { - HC595_output(0x01, true); - } - } - } -} - -static void unselect_col(uint8_t col) { - if (col < HC595_START_INDEX || col > HC595_END_INDEX) { -#ifdef MATRIX_UNSELECT_DRIVE_HIGH - setPinOutput_writeHigh(col_pins[col]); -#else - setPinInputHigh(col_pins[col]); -#endif - } else { - HC595_output(0x01, true); - } -} - -static void unselect_cols(void) { - for (uint8_t col = 0; col < MATRIX_COLS; col++) { - if (col < HC595_START_INDEX || col > HC595_END_INDEX) { -#ifdef MATRIX_UNSELECT_DRIVE_HIGH - setPinOutput_writeHigh(col_pins[col]); -#else - setPinInputHigh(col_pins[col]); -#endif - } else { - if (col == HC595_START_INDEX) { - HC595_output(UNSELECT_ALL_COL, false); - } - break; - } - } -} - -void select_all_cols(void) { - for (uint8_t col = 0; col < MATRIX_COLS; col++) { - if (col < HC595_START_INDEX || col > HC595_END_INDEX) { - setPinOutput_writeLow(col_pins[col]); - } else { - if (col == HC595_START_INDEX) { - HC595_output(SELECT_ALL_COL, false); - } - break; - } - } -} - -static void matrix_read_rows_on_col(matrix_row_t current_matrix[], uint8_t current_col, matrix_row_t row_shifter) { - // Select col - select_col(current_col); // select col - HC595_delay(200); - - // For each row... - for (uint8_t row_index = 0; row_index < MATRIX_ROWS; row_index++) { - // Check row pin state - if (readMatrixPin(row_pins[row_index]) == 0) { - // Pin LO, set col bit - current_matrix[row_index] |= row_shifter; - } else { - // Pin HI, clear col bit - current_matrix[row_index] &= ~row_shifter; - } - } - - // Unselect col - unselect_col(current_col); - HC595_delay(200); // wait for all Row signals to go HIGH -} - -void matrix_init_custom(void) { - setPinOutput(HC595_DS); - setPinOutput(HC595_STCP); - setPinOutput(HC595_SHCP); - - for (uint8_t x = 0; x < MATRIX_ROWS; x++) { - if (row_pins[x] != NO_PIN) { - setPinInputHigh(row_pins[x]); - } - } - - unselect_cols(); -} - -bool matrix_scan_custom(matrix_row_t current_matrix[]) { - matrix_row_t curr_matrix[MATRIX_ROWS] = {0}; - - // Set col, read rows - matrix_row_t row_shifter = MATRIX_ROW_SHIFTER; - for (uint8_t current_col = 0; current_col < MATRIX_COLS; current_col++, row_shifter <<= 1) { - matrix_read_rows_on_col(curr_matrix, current_col, row_shifter); - } - - bool changed = memcmp(current_matrix, curr_matrix, sizeof(curr_matrix)) != 0; - if (changed) memcpy(current_matrix, curr_matrix, sizeof(curr_matrix)); - - return changed; -} - -void suspend_wakeup_init_kb(void) { - // code will run on keyboard wakeup - clear_keyboard(); -} diff --git a/keyboards/keychron/common/rgb/eeconfig_custom_rgb.h b/keyboards/keychron/common/rgb/eeconfig_custom_rgb.h deleted file mode 100644 index bc0cf34f49..0000000000 --- a/keyboards/keychron/common/rgb/eeconfig_custom_rgb.h +++ /dev/null @@ -1,39 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#pragma once - -#include "rgb_matrix_kb_config.h" - -#define OS_INDICATOR_CONFIG_SIZE 4 // sizeof(os_indicator_config_t) - -//#define OS_INDICATOR_CONFIG_OFFSET (PER_KEY_RGB_LED_COLOR_LIST_SIZE + RGB_MATRIX_LED_COUNT) -#define RETAIL_DEMO_SIZE 1 // sizeof(retail_demo_enable) - -#define PER_KEY_RGB_TYPE_SIZE 1 -#define PER_KEY_RGB_LED_COLOR_LIST_SIZE (RGB_MATRIX_LED_COUNT * 3) - -#define MIX_RGB_LAYER_FLAG_SIZE RGB_MATRIX_LED_COUNT -#define EFFECT_CONFIG_SIZE 8 // sizeof(effect_config_t) -#define EFFECT_LIST_SIZE (EFFECT_LAYERS * EFFECTS_PER_LAYER * EFFECT_CONFIG_SIZE) - -#define EECONFIG_SIZE_CUSTOM_RGB ( \ - OS_INDICATOR_CONFIG_SIZE \ - + RETAIL_DEMO_SIZE \ - + PER_KEY_RGB_TYPE_SIZE \ - + PER_KEY_RGB_LED_COLOR_LIST_SIZE \ - + MIX_RGB_LAYER_FLAG_SIZE \ - + EFFECT_LIST_SIZE) diff --git a/keyboards/keychron/common/rgb/keychron_rgb.c b/keyboards/keychron/common/rgb/keychron_rgb.c deleted file mode 100644 index 83d9451d44..0000000000 --- a/keyboards/keychron/common/rgb/keychron_rgb.c +++ /dev/null @@ -1,494 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#include QMK_KEYBOARD_H -#include "raw_hid.h" -#include "keychron_common.h" -#include "keychron_rgb_type.h" -#include "eeconfig_kb.h" -#include "usb_main.h" -#include "color.h" -#ifdef LK_WIRELESS_ENABLE -#include "transport.h" -#endif -#include - -#if defined(KEYCHRON_RGB_ENABLE) && defined(EECONFIG_SIZE_CUSTOM_RGB) - -# define PER_KEY_RGB_VER 0x0001 - -# define OFFSET_OS_INDICATOR ((uint8_t *)(EECONFIG_BASE_CUSTOM_RGB)) -# define OFFSET_RETAIL_DEMO (OFFSET_OS_INDICATOR + sizeof(os_indicator_config_t)) -# define OFFSET_PER_KEY_RGB_TYPE (OFFSET_RETAIL_DEMO + sizeof(retail_demo_enable)) -# define OFFSET_PER_KEY_RGBS (OFFSET_PER_KEY_RGB_TYPE + sizeof(per_key_rgb_type)) -# define OFFSET_LAYER_FLAGS (OFFSET_PER_KEY_RGBS + sizeof(per_key_led)) -# define OFFSET_EFFECT_LIST (OFFSET_LAYER_FLAGS + sizeof(regions)) - -enum { - RGB_GET_PROTOCOL_VER = 0x01, - RGB_SAVE, - GET_INDICATORS_CONFIG, - SET_INDICATORS_CONFIG, - RGB_GET_LED_COUNT, - RGB_GET_LED_IDX, - PER_KEY_RGB_GET_TYPE, - PER_KEY_RGB_SET_TYPE, - PER_KEY_RGB_GET_COLOR, - PER_KEY_RGB_SET_COLOR, //10 - MIXED_EFFECT_RGB_GET_INFO, - MIXED_EFFECT_RGB_GET_REGIONS, - MIXED_EFFECT_RGB_SET_REGIONS, - MIXED_EFFECT_RGB_GET_EFFECT_LIST, - MIXED_EFFECT_RGB_SET_EFFECT_LIST, -}; - -extern uint8_t retail_demo_enable; -extern uint8_t per_key_rgb_type; -extern HSV per_key_led[RGB_MATRIX_LED_COUNT]; -extern HSV default_per_key_led[RGB_MATRIX_LED_COUNT]; - -extern uint8_t regions[RGB_MATRIX_LED_COUNT]; -extern uint8_t rgb_regions[RGB_MATRIX_LED_COUNT]; -extern effect_config_t effect_list[EFFECT_LAYERS][EFFECTS_PER_LAYER]; -extern uint8_t default_region[RGB_MATRIX_LED_COUNT]; - -os_indicator_config_t os_ind_cfg; - -extern void update_mixed_rgb_effect_count(void); - -void eeconfig_reset_custom_rgb(void) { - os_ind_cfg.disable.raw = 0; - os_ind_cfg.hsv.s = 0; - os_ind_cfg.hsv.h = os_ind_cfg.hsv.v = 0xFF; - - eeprom_update_block(&os_ind_cfg, OFFSET_OS_INDICATOR, sizeof(os_ind_cfg)); - retail_demo_enable = 0; - eeprom_read_block(&retail_demo_enable, (uint8_t *)(OFFSET_RETAIL_DEMO), sizeof(retail_demo_enable)); - per_key_rgb_type = 0; - eeprom_update_block(&per_key_rgb_type, OFFSET_PER_KEY_RGB_TYPE, sizeof(per_key_rgb_type)); - - memcpy(per_key_led, default_per_key_led, sizeof(per_key_led)); - eeprom_update_block(per_key_led, OFFSET_PER_KEY_RGBS, sizeof(per_key_led)); - - memcpy(regions, default_region, RGB_MATRIX_LED_COUNT); - eeprom_update_block(regions, OFFSET_LAYER_FLAGS, sizeof(regions)); - - memset(effect_list, 0, sizeof(effect_list)); - - effect_list[0][0].effect = 5; - effect_list[0][0].sat = 255; - effect_list[0][0].speed = 127; - effect_list[0][0].time = 5000; - - effect_list[1][0].effect = 2; - effect_list[1][0].hue = 0; - effect_list[1][0].sat = 255; - effect_list[1][0].speed = 127; - effect_list[1][0].time = 5000; - - eeprom_update_block(effect_list, OFFSET_EFFECT_LIST, sizeof(effect_list)); - update_mixed_rgb_effect_count(); -} - -void eeconfig_init_custom_rgb(void) { - memcpy(per_key_led, default_per_key_led, sizeof(per_key_led)); - eeprom_update_dword(EECONFIG_KEYBOARD, (EECONFIG_KB_DATA_VERSION)); - - eeprom_read_block(&os_ind_cfg, OFFSET_OS_INDICATOR, sizeof(os_ind_cfg)); - eeprom_read_block(&retail_demo_enable, (uint8_t *)(OFFSET_RETAIL_DEMO), sizeof(retail_demo_enable)); - - if (os_ind_cfg.hsv.v < 128) os_ind_cfg.hsv.v = 128; - // Load per key rgb led - eeprom_read_block(&per_key_rgb_type, OFFSET_PER_KEY_RGB_TYPE, sizeof(per_key_rgb_type)); - eeprom_read_block(per_key_led, OFFSET_PER_KEY_RGBS, sizeof(per_key_led)); - // Load mixed rgb - eeprom_read_block(regions, OFFSET_LAYER_FLAGS, sizeof(regions)); - eeprom_read_block(effect_list, OFFSET_EFFECT_LIST, sizeof(effect_list)); - update_mixed_rgb_effect_count(); - -} - -void rgb_save_retail_demo(void) { - eeprom_update_block(&retail_demo_enable, (uint8_t *)(OFFSET_RETAIL_DEMO), sizeof(retail_demo_enable)); -} - -static bool rgb_get_version(uint8_t *data) { - data[1] = PER_KEY_RGB_VER & 0xFF; - data[2] = (PER_KEY_RGB_VER >> 8) & 0xFF; - - return true; -} - -static bool rgb_get_led_count(uint8_t *data) { - data[1] = RGB_MATRIX_LED_COUNT; - - return true; -} - -static bool rgb_get_led_idx(uint8_t *data) { - uint8_t row = data[0]; - if (row > MATRIX_ROWS) return false; - - uint8_t led_idx[128]; - uint32_t row_mask = 0; - memcpy(&row_mask, &data[1], 3); - - for (uint8_t c = 0; c < MATRIX_COLS; c++) { - led_idx[0] = 0xFF; - if (row_mask & (0x01 << c)) { - rgb_matrix_map_row_column_to_led(row, c, led_idx); - } - data[1 + c] = led_idx[0]; - } - - return true; -} - -static bool per_key_rgb_get_type(uint8_t *data) { - extern uint8_t per_key_rgb_type; - data[1] = per_key_rgb_type; - - return true; -} - -static bool per_key_rgb_set_type(uint8_t *data) { - uint8_t type = data[0]; - - if (type >= PER_KEY_RGB_MAX) return false; - - per_key_rgb_type = data[0]; - - return true; -} - -static bool per_key_rgb_get_led_color(uint8_t *data) { - uint8_t start = data[0]; - uint8_t count = data[1]; - - if (count > 9) return false; - - for (uint8_t i = 0; i < count; i++) { - data[1 + i * 3] = per_key_led[start + i].h; - data[2 + i * 3] = per_key_led[start + i].s; - data[3 + i * 3] = per_key_led[start + i].v; - } - - return true; -} - -static bool per_key_rgb_set_led_color(uint8_t *data) { - uint8_t start = data[0]; - uint8_t count = data[1]; - - if (count > 9) return false; - - for (uint8_t i = 0; i < count; i++) { - per_key_led[start + i].h = data[2 + i * 3]; - per_key_led[start + i].s = data[3 + i * 3]; - per_key_led[start + i].v = data[4 + i * 3]; - } - - return true; -} - -static bool mixed_rgb_get_effect_info(uint8_t *data) { - data[1] = EFFECT_LAYERS; - data[2] = EFFECTS_PER_LAYER; - - return true; -} - -static bool mixed_rgb_get_regions(uint8_t *data) { - uint8_t start = data[0]; - uint8_t count = data[1]; - - if (count > 29 || start + count > RGB_MATRIX_LED_COUNT) return false; - memcpy(&data[1], ®ions[start], count); - - return true; -} - -bool mixed_rgb_set_regions(uint8_t *data) { - uint8_t start = data[0]; - uint8_t count = data[1]; - - if (count > 28 || start + count > RGB_MATRIX_LED_COUNT) return false; - for (uint8_t i = 0; i < count; i++) - if (data[2 + i] >= EFFECT_LAYERS) return false; - - memcpy(®ions[start], &data[2], count); - memcpy(&rgb_regions[start], &data[2], count); - - return true; -} -#define EFFECT_DATA_LEN 8 - -static bool mixed_rgb_get_effect_list(uint8_t *data) { - uint8_t region = data[0]; - uint8_t start = data[1]; - uint8_t count = data[2]; - - if (count > 3 || region > EFFECT_LAYERS || start + count > EFFECTS_PER_LAYER) return false; - - for (uint8_t i = 0; i < count; i++) { - data[1 + i * EFFECT_DATA_LEN] = effect_list[region][start + i].effect; - data[2 + i * EFFECT_DATA_LEN] = effect_list[region][start + i].hue; - data[3 + i * EFFECT_DATA_LEN] = effect_list[region][start + i].sat; - data[4 + i * EFFECT_DATA_LEN] = effect_list[region][start + i].speed; - memcpy(&data[5 + i * EFFECT_DATA_LEN], &effect_list[region][start + i].time, 4); - } - - return true; -} - -bool mixed_rgb_set_effect_list(uint8_t *data) { - uint8_t region = data[0]; - uint8_t start = data[1]; - uint8_t count = data[2]; - - if (count > 3 || region > EFFECT_LAYERS || start + count > EFFECTS_PER_LAYER) return false; - for (uint8_t i = 0; i < count; i++) { - if (data[3 + i * EFFECT_DATA_LEN] >= RGB_MATRIX_CUSTOM_MIXED_RGB) return false; - } - - for (uint8_t i = 0; i < count; i++) { - effect_list[region][start + i].effect = data[3 + i * EFFECT_DATA_LEN]; - effect_list[region][start + i].hue = data[4 + i * EFFECT_DATA_LEN]; - effect_list[region][start + i].sat = data[5 + i * EFFECT_DATA_LEN]; - effect_list[region][start + i].speed = data[6 + i * EFFECT_DATA_LEN]; - memcpy(&effect_list[region][start + i].time, &data[7 + i * EFFECT_DATA_LEN], 4); - } - update_mixed_rgb_effect_count(); - - return true; -} - -static bool kc_rgb_save(void) { - eeprom_update_block(&os_ind_cfg, OFFSET_OS_INDICATOR, sizeof(os_ind_cfg)); - eeprom_update_block(&per_key_rgb_type, OFFSET_PER_KEY_RGB_TYPE, sizeof(per_key_rgb_type)); - eeprom_update_block(per_key_led, OFFSET_PER_KEY_RGBS, RGB_MATRIX_LED_COUNT * sizeof(rgb_led_t)); - eeprom_update_block(regions, OFFSET_LAYER_FLAGS, RGB_MATRIX_LED_COUNT); - eeprom_update_block(effect_list, OFFSET_EFFECT_LIST, sizeof(effect_list)); - - return true; -} - -static bool get_indicators_config(uint8_t *data) { - data[1] = 0 -#if defined(NUM_LOCK_INDEX) && !defined(DIM_NUM_LOCK) - | (1 << 0x00) -#endif -#if defined(CAPS_LOCK_INDEX) && !defined(DIM_CAPS_LOCK) - | (1 << 0x01) -#endif -#if defined(SCROLL_LOCK_INDEX) - | (1 << 0x02) -#endif -#if defined(COMPOSE_LOCK_INDEX) - | (1 << 0x03) -#endif -#if defined(KANA_LOCK_INDEX) - | (1 << 0x04) -#endif -; - data[2] = os_ind_cfg.disable.raw; - data[3] = os_ind_cfg.hsv.h; - data[4] = os_ind_cfg.hsv.s; - data[5] = os_ind_cfg.hsv.v; - - return true; -} - -static bool set_indicators_config(uint8_t *data) { - os_ind_cfg.disable.raw = data[0]; - os_ind_cfg.hsv.h = data[1]; - os_ind_cfg.hsv.s = data[2]; - os_ind_cfg.hsv.v = data[3]; - - if (os_ind_cfg.hsv.v < 128) os_ind_cfg.hsv.v = 128; - led_update_kb(host_keyboard_led_state()); - - return true; -} - -void kc_rgb_matrix_rx(uint8_t *data, uint8_t length) { - uint8_t cmd = data[1]; - bool success = true; - - switch (cmd) { - case RGB_GET_PROTOCOL_VER: - success = rgb_get_version(&data[2]); - break; - - case RGB_SAVE: - success = kc_rgb_save(); - break; - - case GET_INDICATORS_CONFIG: - success = get_indicators_config(&data[2]); - break; - - case SET_INDICATORS_CONFIG: - success = set_indicators_config(&data[2]); - break; - - case RGB_GET_LED_COUNT: - success = rgb_get_led_count(&data[2]); - break; - - case RGB_GET_LED_IDX: - success = rgb_get_led_idx(&data[2]); - break; - - case PER_KEY_RGB_GET_TYPE: - success = per_key_rgb_get_type(&data[2]); - break; - - case PER_KEY_RGB_SET_TYPE: - success = per_key_rgb_set_type(&data[2]); - break; - - case PER_KEY_RGB_GET_COLOR: - success = per_key_rgb_get_led_color(&data[2]); - break; - - case PER_KEY_RGB_SET_COLOR: - success = per_key_rgb_set_led_color(&data[2]); - break; - - case MIXED_EFFECT_RGB_GET_INFO: - success = mixed_rgb_get_effect_info(&data[2]); - break; - - case MIXED_EFFECT_RGB_GET_REGIONS: - success = mixed_rgb_get_regions(&data[2]); - break; - - case MIXED_EFFECT_RGB_SET_REGIONS: - success = mixed_rgb_set_regions(&data[2]); - break; - - case MIXED_EFFECT_RGB_GET_EFFECT_LIST: - success = mixed_rgb_get_effect_list(&data[2]); - break; - - case MIXED_EFFECT_RGB_SET_EFFECT_LIST: - success = mixed_rgb_set_effect_list(&data[2]); - break; - - default: - data[0] = 0xFF; - break; - } - - data[2] = success ? 0 : 1; -} - -void os_state_indicate(void) { -# if defined(RGB_DISABLE_WHEN_USB_SUSPENDED) || defined(LED_DISABLE_WHEN_USB_SUSPENDED) - if (get_transport() == TRANSPORT_USB && USB_DRIVER.state == USB_SUSPENDED) return; -# endif - - RGB rgb = hsv_to_rgb(os_ind_cfg.hsv); - -# if defined(NUM_LOCK_INDEX) - if (host_keyboard_led_state().num_lock && !os_ind_cfg.disable.num_lock) { - rgb_matrix_set_color(NUM_LOCK_INDEX, rgb.r, rgb.g, rgb.b); - } -# endif -# if defined(CAPS_LOCK_INDEX) - if (host_keyboard_led_state().caps_lock && !os_ind_cfg.disable.caps_lock) { - rgb_matrix_set_color(CAPS_LOCK_INDEX, rgb.r, rgb.g, rgb.b); - } -# endif -# if defined(SCROLL_LOCK_INDEX) - if (host_keyboard_led_state().compose && !os_ind_cfg.disable.scroll_lock) { - rgb_matrix_set_color(SCROLL_LOCK_INDEX, rgb.r, rgb.g, rgb.b); - } -# endif -# if defined(COMPOSE_LOCK_INDEX) - if (host_keyboard_led_state().compose && !os_ind_cfg.disable.compose) { - rgb_matrix_set_color(COMPOSE_LOCK_INDEX, rgb.r, rgb.g, rgb.b); - } -# endif -# if defined(KANA_LOCK_INDEX) - if (host_keyboard_led_state().kana && !os_ind_cfg.disable.kana) { - rgb_matrix_set_color(KANA_LOCK_INDEX, rgb.r, rgb.g, rgb.b); - } -# endif - (void)rgb; -} - -bool process_record_keychron_rgb(uint16_t keycode, keyrecord_t *record) { - if (rgb_matrix_get_mode() == RGB_MATRIX_CUSTOM_MIXED_RGB || rgb_matrix_get_mode() == RGB_MATRIX_CUSTOM_PER_KEY_RGB) { - switch (keycode) { - case RGB_HUI ... RGB_SAD: - return false; - - case RGB_SPI: - if (rgb_matrix_get_mode() == RGB_MATRIX_CUSTOM_MIXED_RGB) { - return false; - } else { - rgb_matrix_config.speed = qadd8(rgb_matrix_config.speed, RGB_MATRIX_SPD_STEP); - eeprom_write_byte((uint8_t *)EECONFIG_RGB_MATRIX + offsetof(rgb_config_t, speed), rgb_matrix_config.speed); - } - break; - case RGB_SPD: - if (rgb_matrix_get_mode() == RGB_MATRIX_CUSTOM_MIXED_RGB) { - return false; - } else { - rgb_matrix_config.speed = qsub8(rgb_matrix_config.speed, RGB_MATRIX_SPD_STEP); - eeprom_write_byte((uint8_t *)EECONFIG_RGB_MATRIX + offsetof(rgb_config_t, speed), rgb_matrix_config.speed); - } - break; - - case RGB_VAI: -# ifdef RGB_MATRIX_BRIGHTNESS_TURN_OFF_VAL - if (!rgb_matrix_config.enable) { - rgb_matrix_toggle(); - return false; - } -# endif - rgb_matrix_config.hsv.v = qadd8(rgb_matrix_config.hsv.v, RGB_MATRIX_VAL_STEP); -# ifdef RGB_MATRIX_BRIGHTNESS_TURN_OFF_VAL - while (rgb_matrix_config.hsv.v <= RGB_MATRIX_BRIGHTNESS_TURN_OFF_VAL) - rgb_matrix_config.hsv.v = qadd8(rgb_matrix_config.hsv.v, RGB_MATRIX_VAL_STEP); -# endif - eeprom_write_byte((uint8_t *)EECONFIG_RGB_MATRIX + offsetof(rgb_config_t, hsv.v), rgb_matrix_config.hsv.v); - return false; - - case RGB_VAD: -# ifdef RGB_MATRIX_BRIGHTNESS_TURN_OFF_VAL - if (rgb_matrix_config.enable && rgb_matrix_config.hsv.v > RGB_MATRIX_BRIGHTNESS_TURN_OFF_VAL) -# endif - { - rgb_matrix_config.hsv.v = qsub8(rgb_matrix_config.hsv.v, RGB_MATRIX_VAL_STEP); - eeprom_write_byte((uint8_t *)EECONFIG_RGB_MATRIX + offsetof(rgb_config_t, hsv.v), rgb_matrix_config.hsv.v); - } -# ifdef RGB_MATRIX_BRIGHTNESS_TURN_OFF_VAL - if (rgb_matrix_config.enable && rgb_matrix_config.hsv.v <= RGB_MATRIX_BRIGHTNESS_TURN_OFF_VAL) { - rgb_matrix_toggle(); - } -# endif - return false; - - default: - break; - } - } - return true; -} -#endif diff --git a/keyboards/keychron/common/rgb/keychron_rgb_type.h b/keyboards/keychron/common/rgb/keychron_rgb_type.h deleted file mode 100644 index f9e17d548c..0000000000 --- a/keyboards/keychron/common/rgb/keychron_rgb_type.h +++ /dev/null @@ -1,59 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#pragma once -#include "color.h" - -enum { - PER_KEY_RGB_SOLID, - PER_KEY_RGB_BREATHING, - PER_KEY_RGB_REATIVE_SIMPLE, - PER_KEY_RGB_REATIVE_MULTI_WIDE, - PER_KEY_RGB_REATIVE_SPLASH, - PER_KEY_RGB_MAX, -}; - -typedef struct PACKED { - uint8_t effect; - uint8_t hue; - uint8_t sat; - uint8_t speed; - uint32_t time; -} effect_config_t; - -typedef union { - uint8_t raw; - struct { - bool num_lock : 1; - bool caps_lock : 1; - bool scroll_lock : 1; - bool compose : 1; - bool kana : 1; - uint8_t reserved : 3; - }; -} os_led_t; - -// TODO: -// typedef struct PACKED HSV2 { -// uint8_t h; -// uint8_t s; -// uint8_t v; -// } HSV2; - -typedef struct PACKED { - os_led_t disable; - HSV hsv; -} os_indicator_config_t; diff --git a/keyboards/keychron/common/rgb/mixed_rgb.c b/keyboards/keychron/common/rgb/mixed_rgb.c deleted file mode 100644 index 16fcafa0ac..0000000000 --- a/keyboards/keychron/common/rgb/mixed_rgb.c +++ /dev/null @@ -1,191 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#if defined(KEYCHRON_RGB_ENABLE) && defined(EECONFIG_SIZE_CUSTOM_RGB) - -#include "quantum.h" -#include "rgb_matrix.h" -#include "keychron_rgb_type.h" - -#define RGB_MATRIX_EFFECT(name, ...) \ - extern bool name(effect_params_t *params); -#include "rgb_matrix_effects.inc" -#include "rgb_matrix_kb.inc" -#undef RGB_MATRIX_EFFECT - -// PER_KEY_RGB data -extern uint8_t per_key_rgb_type; - -// MIXED_RGB data -extern uint8_t rgb_regions[RGB_MATRIX_LED_COUNT]; -uint8_t regions[RGB_MATRIX_LED_COUNT] = {0}; // -effect_config_t effect_list[EFFECT_LAYERS][EFFECTS_PER_LAYER]; - -uint8_t layer_effect_count[EFFECT_LAYERS] = {0}; -uint8_t layer_effect_index[EFFECT_LAYERS] = {0}; -uint32_t layer_effect_timer[EFFECT_LAYERS] = {0}; - -// Typing heatmap -uint8_t typingHeatmap = 0; - -static bool multiple_rgb_effect_runner(effect_params_t *params); - -void mixed_rgb_reset(void) { - typingHeatmap = 0; - for (uint8_t i=0; iinit) { - memcpy(rgb_regions, regions, RGB_MATRIX_LED_COUNT); - memset(layer_effect_index, 0, sizeof(layer_effect_index)); - - mixed_rgb_reset(); - } - - for (int8_t i=EFFECT_LAYERS-1; i>=0; i--) { - params->region = i; - ret = multiple_rgb_effect_runner(params); - } - - return ret; -} - -#define TRANSITION_TIME 1000 - -bool multiple_rgb_effect_runner(effect_params_t *params) { - HSV hsv= rgb_matrix_get_hsv(); - uint8_t backup_value = hsv.v; - - bool transation = false; - bool rendering = false; - uint8_t layer = params->region; - - uint8_t effect_index = layer_effect_index[layer]; - - if (effect_list[layer][effect_index].effect == RGB_MATRIX_TYPING_HEATMAP) - typingHeatmap |= 0x01 << layer; - else - typingHeatmap &= ~(0x01 << layer); - - uint8_t last_effect = effect_list[layer][layer_effect_index[layer]].effect; - - if (layer_effect_count[layer] > 1) { - if (timer_elapsed32(layer_effect_timer[layer]) > effect_list[layer][effect_index].time) { - layer_effect_timer[layer] = timer_read32(); - if (++layer_effect_index[layer] >= EFFECTS_PER_LAYER) layer_effect_index[layer] = 0; - - effect_index = layer_effect_index[layer]; - - if (effect_list[layer][effect_index].time == 0) return true; // - } - else if (timer_elapsed32(layer_effect_timer[layer]) > effect_list[layer][effect_index].time - TRANSITION_TIME) - { - hsv.v = backup_value*(effect_list[layer][effect_index].time - timer_elapsed32(layer_effect_timer[layer]))/TRANSITION_TIME; - transation = true; - } - - if (timer_elapsed32(layer_effect_timer[layer]) < TRANSITION_TIME) - { - hsv.v = backup_value*timer_elapsed32(layer_effect_timer[layer])/TRANSITION_TIME; - transation = true; - } - } else if (layer_effect_count[layer] == 1 && effect_list[layer][effect_index].effect == 0) { - for (uint8_t i=0; iregion] = i; - break; - } - } - } - - uint8_t effect = effect_list[layer][effect_index].effect; - if (effect == 0) ++layer_effect_index[layer]; // Skip effect 0 - if (layer_effect_index[layer] >= EFFECTS_PER_LAYER) layer_effect_index[layer] = 0; - - effect = effect_list[layer][effect_index].effect; - hsv.h = effect_list[layer][effect_index].hue; - hsv.s = effect_list[layer][effect_index].sat; - rgb_matrix_sethsv_noeeprom(hsv.h, hsv.s, hsv.v); - - rgb_matrix_set_speed_noeeprom(effect_list[layer][effect_index].speed); - - params->init = last_effect != effect; - - // each effect can opt to do calculations - // and/or request PWM buffer updates. - switch (effect) { - // --------------------------------------------- - // -----Begin rgb effect switch case macros----- -#define RGB_MATRIX_EFFECT(name, ...) \ - case RGB_MATRIX_##name: \ - rendering = name(params); \ - break; -#include "rgb_matrix_effects.inc" -#undef RGB_MATRIX_EFFECT - -#if defined(RGB_MATRIX_CUSTOM_KB) || defined(RGB_MATRIX_CUSTOM_USER) -# define RGB_MATRIX_EFFECT(name, ...) \ - case RGB_MATRIX_CUSTOM_##name: \ - rendering = name(params); \ - break; -# ifdef RGB_MATRIX_CUSTOM_KB -# include "rgb_matrix_kb.inc" -# endif -# undef RGB_MATRIX_EFFECT -#endif - // -----End rgb effect switch case macros------- - // --------------------------------------------- - } - - if (transation) { - rgb_matrix_sethsv_noeeprom(hsv.h, hsv.s, backup_value); - } - - return rendering; - -} - -void process_rgb_matrix_kb(uint8_t row, uint8_t col, bool pressed) { - if (pressed) - { - if (rgb_matrix_config.mode == RGB_MATRIX_CUSTOM_MIXED_RGB) { - extern void process_rgb_matrix_typing_heatmap(uint8_t row, uint8_t col); - if (typingHeatmap) process_rgb_matrix_typing_heatmap(row, col); - } - } -} -#endif diff --git a/keyboards/keychron/common/rgb/per_key_rgb.c b/keyboards/keychron/common/rgb/per_key_rgb.c deleted file mode 100644 index 8cf18af824..0000000000 --- a/keyboards/keychron/common/rgb/per_key_rgb.c +++ /dev/null @@ -1,160 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#include "quantum.h" -#include "rgb_matrix.h" -#include "keychron_rgb_type.h" -#include -#include - -#if defined(KEYCHRON_RGB_ENABLE) - -// PER_KEY_RGB data -uint8_t per_key_rgb_type; -HSV per_key_led[RGB_MATRIX_LED_COUNT] = {0}; - -bool per_key_rgb_solid(effect_params_t *params) { - RGB_MATRIX_USE_LIMITS(led_min, led_max); - HSV hsv; - - for (uint8_t i = led_min; i < led_max; i++) { - hsv = per_key_led[i]; - hsv.v = rgb_matrix_config.hsv.v; - RGB rgb = hsv_to_rgb(hsv); - rgb_matrix_region_set_color(params->region, i, rgb.r, rgb.g, rgb.b); - } - return rgb_matrix_check_finished_leds(led_max); -} - -bool per_key_rgb_breahting(effect_params_t *params) { - RGB_MATRIX_USE_LIMITS(led_min, led_max); - HSV hsv; - uint16_t time = scale16by8(g_rgb_timer, rgb_matrix_config.speed / 8); - - for (uint8_t i = led_min; i < led_max; i++) { - hsv = per_key_led[i]; - hsv.v = scale8(abs8(sin8(time) - 128) * 2, rgb_matrix_config.hsv.v); - RGB rgb = hsv_to_rgb(hsv); - RGB_MATRIX_TEST_LED_FLAGS(); - rgb_matrix_region_set_color(params->region, i, rgb.r, rgb.g, rgb.b); - } - - return rgb_matrix_check_finished_leds(led_max); -} - -bool per_key_rgb_reactive_simple(effect_params_t *params) { - RGB_MATRIX_USE_LIMITS(led_min, led_max); - - uint16_t max_tick = 65535 / qadd8(rgb_matrix_config.speed, 1); - for (uint8_t i = led_min; i < led_max; i++) { - RGB_MATRIX_TEST_LED_FLAGS(); - uint16_t tick = max_tick; - // Reverse search to find most recent key hit - for (int8_t j = g_last_hit_tracker.count - 1; j >= 0; j--) { - if (g_last_hit_tracker.index[j] == i && g_last_hit_tracker.tick[j] < tick) { - tick = g_last_hit_tracker.tick[j]; - break; - } - } - - uint16_t offset = scale16by8(tick, qadd8(rgb_matrix_config.speed, 1)); - HSV hsv = per_key_led[i]; - - hsv.v = scale8(255 - offset, rgb_matrix_config.hsv.v); - if (per_key_led[i].v < hsv.v) - hsv.v = per_key_led[i].v; - - RGB rgb = hsv_to_rgb(hsv); - rgb_matrix_region_set_color(params->region, i, rgb.r, rgb.g, rgb.b); - } - return rgb_matrix_check_finished_leds(led_max); - -} - -typedef HSV (*reactive_splash_f)(HSV hsv, int16_t dx, int16_t dy, uint8_t dist, uint16_t tick); - -bool per_key_rgb_effect_runner_reactive_splash(uint8_t start, effect_params_t* params, reactive_splash_f effect_func) { - RGB_MATRIX_USE_LIMITS(led_min, led_max); - - uint8_t count = g_last_hit_tracker.count; - for (uint8_t i = led_min; i < led_max; i++) { - RGB_MATRIX_TEST_LED_FLAGS(); - HSV hsv = rgb_matrix_config.hsv; - hsv.v = 0; - for (uint8_t j = start; j < count; j++) { - int16_t dx = g_led_config.point[i].x - g_last_hit_tracker.x[j]; - int16_t dy = g_led_config.point[i].y - g_last_hit_tracker.y[j]; - uint8_t dist = sqrt16(dx * dx + dy * dy); - uint16_t tick = scale16by8(g_last_hit_tracker.tick[j], qadd8(rgb_matrix_config.speed, 1)); - hsv = effect_func(hsv, dx, dy, dist, tick); - } - hsv.h = per_key_led[i].h; - hsv.s = per_key_led[i].s; - hsv.v = scale8(hsv.v, rgb_matrix_config.hsv.v); - if (per_key_led[i].v < hsv.v) - hsv.v = per_key_led[i].v; - RGB rgb = hsv_to_rgb(hsv); - rgb_matrix_region_set_color(params->region, i, rgb.r, rgb.g, rgb.b); - } - return rgb_matrix_check_finished_leds(led_max); -} - -static HSV solid_reactive_wide_math(HSV hsv, int16_t dx, int16_t dy, uint8_t dist, uint16_t tick) { - uint16_t effect = tick + dist * 5; - if (effect > 255) effect = 255; -# ifdef RGB_MATRIX_SOLID_REACTIVE_GRADIENT_MODE - hsv.h = scale16by8(g_rgb_timer, qadd8(rgb_matrix_config.speed, 8) >> 4); -# endif - hsv.v = qadd8(hsv.v, 255 - effect); - return hsv; -} - -bool per_key_rgb_reactive_multi_wide(effect_params_t *params) { - return per_key_rgb_effect_runner_reactive_splash(0, params, &solid_reactive_wide_math); -} - -static HSV SPLASH_math(HSV hsv, int16_t dx, int16_t dy, uint8_t dist, uint16_t tick) { - uint16_t effect = tick - dist; - if (effect > 255) effect = 255; - hsv.h += effect; - hsv.v = qadd8(hsv.v, 255 - effect); - return hsv; -} - -bool per_key_rgb_reactive_splash(effect_params_t *params) { - return per_key_rgb_effect_runner_reactive_splash(qsub8(g_last_hit_tracker.count, 1), params, &SPLASH_math); -} - -bool per_key_rgb(effect_params_t *params) { - switch (per_key_rgb_type) { - case PER_KEY_RGB_BREATHING: - return per_key_rgb_breahting(params); - - case PER_KEY_RGB_REATIVE_SIMPLE: - return per_key_rgb_reactive_simple(params); - - case PER_KEY_RGB_REATIVE_MULTI_WIDE: - return per_key_rgb_reactive_multi_wide(params); - - case PER_KEY_RGB_REATIVE_SPLASH: - return per_key_rgb_reactive_splash(params); - - default: - return per_key_rgb_solid(params); - } -} - -#endif diff --git a/keyboards/keychron/common/rgb/retail_demo.c b/keyboards/keychron/common/rgb/retail_demo.c deleted file mode 100644 index 03f5360706..0000000000 --- a/keyboards/keychron/common/rgb/retail_demo.c +++ /dev/null @@ -1,185 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#include -#include "eeconfig_kb.h" -#include "retail_demo.h" -#include "eeconfig.h" -#include "matrix.h" -#include "quantum.h" -#ifdef LK_WIRELESS_ENABLE -# include "transport.h" -#endif - -#if defined(RETAIL_DEMO_ENABLE) && defined(KEYCHRON_RGB_ENABLE) && defined(EECONFIG_SIZE_CUSTOM_RGB) - -# ifndef RETAIL_DEMO_KEY_1 -# ifdef RGB_MATRIX_ENABLE -# define RETAIL_DEMO_KEY_1 RGB_HUI -# else -# define RETAIL_DEMO_KEY_1 KC_D -# endif -# endif - -# ifndef RETAIL_DEMO_KEY_2 -# ifdef RGB_MATRIX_ENABLE -# define RETAIL_DEMO_KEY_2 RGB_HUD -# else -# define RETAIL_DEMO_KEY_2 KC_E -# endif -# endif - -# ifndef EFFECT_DURATION -# define EFFECT_DURATION 10000 -# endif - -enum { - KEY_PRESS_FN = 0x01 << 0, - KEY_PRESS_D = 0x01 << 1, - KEY_PRESS_E = 0x01 << 2, - KEY_PRESS_RETAIL_DEMO = KEY_PRESS_FN | KEY_PRESS_D | KEY_PRESS_E, -}; - -uint8_t retail_demo_enable = 0; -static uint8_t retail_demo_combo = 0; -static uint32_t retail_demo_timer = 0; - -extern void rgb_save_retail_demo(void); - -bool process_record_retail_demo(uint16_t keycode, keyrecord_t *record) { - switch (keycode) { - case MO(0)... MO(15): - if (record->event.pressed) - retail_demo_combo |= KEY_PRESS_FN; - else - retail_demo_combo &= ~KEY_PRESS_FN; - break; - - case RETAIL_DEMO_KEY_1: - if (record->event.pressed) { - retail_demo_combo |= KEY_PRESS_D; - if (retail_demo_combo == KEY_PRESS_RETAIL_DEMO) retail_demo_timer = timer_read32(); - } else { - retail_demo_combo &= ~KEY_PRESS_D; - retail_demo_timer = 0; - } - break; - - case RETAIL_DEMO_KEY_2: - if (record->event.pressed) { - retail_demo_combo |= KEY_PRESS_E; - if (retail_demo_combo == KEY_PRESS_RETAIL_DEMO) retail_demo_timer = timer_read32(); - } else { - retail_demo_combo &= ~KEY_PRESS_E; - retail_demo_timer = 0; - } - break; - } - - if (retail_demo_enable && keycode >= RGB_TOG && keycode <= RGB_SPD) return false; - - return true; -} - -void retail_demo_start(void) { - extern bool mixed_rgb_set_regions(uint8_t * data); - extern bool mixed_rgb_set_effect_list(uint8_t * data); - - uint8_t index = 0; - uint8_t this_count = 28; - uint8_t data[31] = {0}; - - // Set all LED to region 0 - while (index < RGB_MATRIX_LED_COUNT - 1) { - memset(data, 0, 31); - - if ((index + this_count) >= RGB_MATRIX_LED_COUNT) - this_count = RGB_MATRIX_LED_COUNT - 1 - index; - else - this_count = 28; - - data[0] = index; - data[1] = this_count; - mixed_rgb_set_regions(data); - - index += this_count; - } - - uint8_t effect_list[5] = {4, 7, 8, 11, 14}; - // Set effect list - for (uint8_t i = 0; i < 5; i++) { - data[0] = 0; // regsion - data[1] = i; // start - data[2] = 1; // count - data[3] = effect_list[i]; // effect - data[4] = 0; // hue - data[5] = 255; // sat - data[6] = 127; // speed; - data[7] = EFFECT_DURATION & 0xFF; - data[8] = (EFFECT_DURATION >> 8) & 0xFF; - data[9] = (EFFECT_DURATION >> 16) & 0xFF; - data[10] = (EFFECT_DURATION >> 24) & 0xFF; - - mixed_rgb_set_effect_list(data); - } - - HSV hsv = rgb_matrix_get_hsv(); - hsv.v = hsv.s = UINT8_MAX; - rgb_matrix_sethsv_noeeprom(hsv.h, hsv.s, hsv.v); - rgb_matrix_set_speed_noeeprom(RGB_MATRIX_DEFAULT_SPD); - rgb_matrix_mode_noeeprom(RGB_MATRIX_CUSTOM_MIXED_RGB); -} - -void retail_demo_stop(void) { - retail_demo_enable = false; - rgb_save_retail_demo(); - eeprom_read_block(&rgb_matrix_config, EECONFIG_RGB_MATRIX, sizeof(rgb_matrix_config)); -} - -static inline void retail_demo_timer_check(void) { - if (timer_elapsed32(retail_demo_timer) > 5000) { - retail_demo_timer = 0; - - if (retail_demo_combo == KEY_PRESS_RETAIL_DEMO) { - retail_demo_combo = 0; - retail_demo_enable = !retail_demo_enable; - - if (retail_demo_enable) { -# ifdef LK_WIRELESS_ENABLE - // Retail demo is allowed only in wireless mode - if (get_transport() != TRANSPORT_USB) { - retail_demo_enable = false; - return; - } -# endif - } else { - eeprom_read_block(&rgb_matrix_config, EECONFIG_RGB_MATRIX, sizeof(rgb_matrix_config)); - } - rgb_save_retail_demo(); - - if (!retail_demo_enable) { - extern void eeconfig_init_custom_rgb(void); - eeconfig_init_custom_rgb(); - } - } - } -} - -void retail_demo_task(void) { - if (retail_demo_timer) retail_demo_timer_check(); - if (retail_demo_enable && rgb_matrix_get_mode() != RGB_MATRIX_CUSTOM_MIXED_RGB) retail_demo_start(); -} -#endif diff --git a/keyboards/keychron/common/rgb/retail_demo.h b/keyboards/keychron/common/rgb/retail_demo.h deleted file mode 100644 index 2870a91b60..0000000000 --- a/keyboards/keychron/common/rgb/retail_demo.h +++ /dev/null @@ -1,25 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#pragma once -#include "stdint.h" -#include "action.h" - -void retail_demo_start(void); -void retail_demo_stop(void); - -bool process_record_retail_demo(uint16_t keycode, keyrecord_t * record); -void retail_demo_task(void); diff --git a/keyboards/keychron/common/rgb/rgb.mk b/keyboards/keychron/common/rgb/rgb.mk deleted file mode 100644 index 93e0b7ad21..0000000000 --- a/keyboards/keychron/common/rgb/rgb.mk +++ /dev/null @@ -1,14 +0,0 @@ -OPT_DEFS += -DKEYCHRON_RGB_ENABLE -DRETAIL_DEMO_ENABLE - -RGB_MATRIX_CUSTOM_KB = yes -RGB_MATRIX_DIR = common/rgb - -SRC += \ - $(RGB_MATRIX_DIR)/keychron_rgb.c \ - $(RGB_MATRIX_DIR)/per_key_rgb.c \ - $(RGB_MATRIX_DIR)/mixed_rgb.c \ - $(RGB_MATRIX_DIR)/retail_demo.c - -VPATH += $(TOP_DIR)/keyboards/keychron/$(RGB_MATRIX_DIR) - - diff --git a/keyboards/keychron/common/rgb/rgb_matrix_kb.inc b/keyboards/keychron/common/rgb/rgb_matrix_kb.inc deleted file mode 100644 index 4a538f0cac..0000000000 --- a/keyboards/keychron/common/rgb/rgb_matrix_kb.inc +++ /dev/null @@ -1,39 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#include "rgb_matrix_kb_config.h" - -#if defined(KEYCHRON_RGB_ENABLE) && defined(EECONFIG_SIZE_CUSTOM_RGB) -//extern bool MIXED_RGB(effect_params_t *params); - -RGB_MATRIX_EFFECT(PER_KEY_RGB) -RGB_MATRIX_EFFECT(MIXED_RGB) - -# ifdef RGB_MATRIX_CUSTOM_EFFECT_IMPLS - -bool PER_KEY_RGB(effect_params_t *params) { - extern bool per_key_rgb(effect_params_t *params); - return per_key_rgb(params); -} - -bool MIXED_RGB(effect_params_t *params) { - extern bool mixed_rgb(effect_params_t *params); - return mixed_rgb(params); -} - -#endif - -#endif diff --git a/keyboards/keychron/common/rgb/rgb_matrix_kb_config.h b/keyboards/keychron/common/rgb/rgb_matrix_kb_config.h deleted file mode 100644 index 530a46b11c..0000000000 --- a/keyboards/keychron/common/rgb/rgb_matrix_kb_config.h +++ /dev/null @@ -1,26 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#pragma once -#include "config.h" - -#ifndef EFFECT_LAYERS -#define EFFECT_LAYERS 2 -#endif - -#ifndef EFFECTS_PER_LAYER -#define EFFECTS_PER_LAYER 5 -#endif diff --git a/keyboards/keychron/common/snap_click/eeconfig_snap_click.h b/keyboards/keychron/common/snap_click/eeconfig_snap_click.h deleted file mode 100644 index d53879ca92..0000000000 --- a/keyboards/keychron/common/snap_click/eeconfig_snap_click.h +++ /dev/null @@ -1,26 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#pragma once - -#ifndef SNAP_CLICK_COUNT -# define SNAP_CLICK_COUNT 20 -#endif - -#define SIZE_OF_SNAP_CLICK_CONFIG_T 3 - -#define EECONFIG_SIZE_SNAP_CLICK (SNAP_CLICK_COUNT * SIZE_OF_SNAP_CLICK_CONFIG_T) - diff --git a/keyboards/keychron/common/snap_click/snap_click.c b/keyboards/keychron/common/snap_click/snap_click.c deleted file mode 100644 index b795df70b1..0000000000 --- a/keyboards/keychron/common/snap_click/snap_click.c +++ /dev/null @@ -1,201 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#include -#include "eeconfig_kb.h" -#include "snap_click.h" -#include "raw_hid.h" -#include "eeconfig.h" -#include "matrix.h" -#include "quantum.h" -#include "keychron_raw_hid.h" - -#if defined(SNAP_CLICK_ENABLE) &&defined(EECONFIG_SIZE_SNAP_CLICK) - -enum { - SNAP_CLICK_TYPE_NONE = 0, - SNAP_CLICK_TYPE_REGULAR, - SNAP_CLICK_TYPE_LAST_INPUT, - SNAP_CLICK_TYPE_FIRST_KEY, - SNAP_CLICK_TYPE_SECOND_KEY, - SNAP_CLICK_TYPE_NEUTRAL, - SNAP_CLICK_TYPE_MAX, -}; - -#define SC_MASK_BOTH_KEYS_PRESSED 3 - -snap_click_config_t snap_click_pair[SNAP_CLICK_COUNT]; -snap_click_state_t snap_click_state[SNAP_CLICK_COUNT]; - -void snap_click_config_reset(void) { - memset(snap_click_pair, 0, sizeof(snap_click_pair)); - eeprom_update_block(snap_click_pair, (uint8_t *)(EECONFIG_BASE_SNAP_CLICK), sizeof(snap_click_pair)); -} - -void snap_click_init(void) { - eeprom_read_block(snap_click_pair, (uint8_t *)(EECONFIG_BASE_SNAP_CLICK), sizeof(snap_click_pair)); - memset(snap_click_state, 0, sizeof(snap_click_state)); -} - -bool process_record_snap_click(uint16_t keycode, keyrecord_t * record) -{ - for (uint8_t i=0; itype && (keycode == p->key[0] || keycode == p->key[1])) - { - snap_click_state_t *pState = &snap_click_state[i]; - uint8_t index = keycode == p->key[1]; // 0 or 1 of key pair - - if (record->event.pressed) { - uint8_t state = 0x01 << index; - - if (pState->state == 0) { - // Single key down - pState->state_keys = pState->last_single_key = state; - } else if ((state & pState->state_keys) == 0) { // TODO: do we need checking? - // Both keys are pressed - pState->state_keys = SC_MASK_BOTH_KEYS_PRESSED; - switch (p->type) { - case SNAP_CLICK_TYPE_REGULAR: - case SNAP_CLICK_TYPE_LAST_INPUT: - unregister_code(p->key[1-index]); - register_code(p->key[index]); - break; - case SNAP_CLICK_TYPE_FIRST_KEY: - unregister_code(p->key[1]); - register_code(p->key[0]); - break; - case SNAP_CLICK_TYPE_SECOND_KEY: - unregister_code(p->key[0]); - register_code(p->key[1]); - break; - case SNAP_CLICK_TYPE_NEUTRAL: - unregister_code(p->key[1-index]); - break; - } - return false; - } - } else { - if (pState->state_keys == SC_MASK_BOTH_KEYS_PRESSED) { - // Snap click active - uint8_t state = 0x01 << (1-index); - pState->state_keys = pState->last_single_key = state; - - switch (p->type) { - case SNAP_CLICK_TYPE_REGULAR: - unregister_code(p->key[index]); - break; - case SNAP_CLICK_TYPE_LAST_INPUT: - case SNAP_CLICK_TYPE_FIRST_KEY: - case SNAP_CLICK_TYPE_SECOND_KEY: - if (is_key_pressed(p->key[index])) { - unregister_code(p->key[index]); - } - if (!is_key_pressed(p->key[1-index])) { - register_code(p->key[1-index]); - } - break; - case SNAP_CLICK_TYPE_NEUTRAL: - register_code(p->key[1-index]); - break; - } - - return false; - } else { - pState->state = 0; - } - } - } - } - - return true; -} - -static bool snap_click_get_info(uint8_t *data) { - data[1] = SNAP_CLICK_COUNT; - - return true; -} - -static bool snap_click_get(uint8_t *data) { - uint8_t start = data[0]; - uint8_t count = data[1]; - - if (count > 9 || start + count > SNAP_CLICK_COUNT) return false; - memcpy(&data[1], &snap_click_pair[start], count * sizeof(snap_click_config_t)); - - return true; -} - -static bool snap_click_set(uint8_t *data) { - uint8_t start = data[0]; - uint8_t count = data[1]; - - if (count > 9 || start + count > SNAP_CLICK_COUNT) return false; - for (uint8_t i=0; i= SNAP_CLICK_TYPE_MAX) - return false; - - if (type != 0 && (keycode1 == 0 || keycode2 == 0)) - return false; - } - memcpy(&snap_click_pair[start], &data[2], count * sizeof(snap_click_config_t)); - - return true; -} - -static bool snap_click_save(uint8_t *data) { - eeprom_update_block(snap_click_pair, (uint8_t *)(EECONFIG_BASE_SNAP_CLICK), sizeof(snap_click_pair)); - - return true; -} - -void snap_click_rx(uint8_t *data, uint8_t length) { - uint8_t cmd = data[1]; - bool success = true; - - switch (cmd) { - case SNAP_CLICK_GET_INFO: - success = snap_click_get_info(&data[2]); - break; - - case SNAP_CLICK_GET: - success = snap_click_get(&data[2]); - break; - - case SNAP_CLICK_SET: - success = snap_click_set(&data[2]); - break; - - case SNAP_CLICK_SAVE: - success = snap_click_save(&data[2]); - break; - - default: - data[0] = 0xFF; - break; - } - - data[2] = success ? 0 : 1; -} -#endif diff --git a/keyboards/keychron/common/snap_click/snap_click.h b/keyboards/keychron/common/snap_click/snap_click.h deleted file mode 100644 index 6432116909..0000000000 --- a/keyboards/keychron/common/snap_click/snap_click.h +++ /dev/null @@ -1,43 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#pragma once - -typedef struct __attribute__((__packed__)) { - uint8_t type; - uint8_t key[2]; -} snap_click_config_t; -// size = 3 bytes - -typedef union { - uint8_t state; - struct { - uint8_t state_key_1:1; - uint8_t state_key_2:1; - uint8_t last_single_key_1:1; - uint8_t last_single_key_2:1; - uint8_t reserved:4; - }; - struct { - uint8_t state_keys:2; - uint8_t last_single_key:2; - uint8_t reserved2:4; - }; -} snap_click_state_t; - -void snap_click_config_reset(void); -void snap_click_rx(uint8_t *data, uint8_t length); - diff --git a/keyboards/keychron/common/snap_click/snap_click.mk b/keyboards/keychron/common/snap_click/snap_click.mk deleted file mode 100644 index cf86fe732d..0000000000 --- a/keyboards/keychron/common/snap_click/snap_click.mk +++ /dev/null @@ -1,7 +0,0 @@ -SNAP_CLICK_DIR = common/snap_click -SRC += \ - $(SNAP_CLICK_DIR)/snap_click.c \ - -VPATH += $(TOP_DIR)/keyboards/keychron/$(SNAP_CLICK_DIR) - -OPT_DEFS += -DSNAP_CLICK_ENABLE diff --git a/keyboards/keychron/common/wireless/bat_level_animation.c b/keyboards/keychron/common/wireless/bat_level_animation.c deleted file mode 100644 index 43269d6836..0000000000 --- a/keyboards/keychron/common/wireless/bat_level_animation.c +++ /dev/null @@ -1,163 +0,0 @@ - -/* Copyright 2023~2025 @ 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 . - */ - -#include "quantum.h" -#include "wireless.h" -#include "indicator.h" -#include "lpm.h" -#if defined(PROTOCOL_CHIBIOS) -# include -#elif if defined(PROTOCOL_LUFA) -# include "lufa.h" -#endif -#include "eeprom.h" - -#if (defined(LED_MATRIX_ENABLE) || defined(RGB_MATRIX_ENABLE)) && defined(BAT_LEVEL_LED_LIST) - -#ifndef BAT_LEVEL_GROWING_INTERVAL -# define BAT_LEVEL_GROWING_INTERVAL 150 -#endif - -#ifndef BAT_LEVEL_ON_INTERVAL -# define BAT_LEVEL_ON_INTERVAL 3000 -#endif - -#ifdef LED_MATRIX_ENABLE -# define LED_DRIVER_IS_ENABLED led_matrix_is_enabled -#endif - -#ifdef RGB_MATRIX_ENABLE -# define LED_DRIVER_IS_ENABLED rgb_matrix_is_enabled -#endif - -enum { - BAT_LVL_ANI_NONE, - BAT_LVL_ANI_GROWING, - BAT_LVL_ANI_BLINK_OFF, - BAT_LVL_ANI_BLINK_ON, -}; - -static uint8_t animation_state = 0; -static uint32_t bat_lvl_ani_timer_buffer = 0; -static uint8_t bat_percentage; -static uint8_t cur_percentage; -static uint32_t time_interval; -#ifdef RGB_MATRIX_ENABLE -static uint8_t r, g, b; -#endif - -extern indicator_config_t indicator_config; -extern backlight_state_t original_backlight_state; - -void bat_level_animiation_start(uint8_t percentage) { - /* Turn on backlight mode for indicator */ - indicator_enable(); - - animation_state = BAT_LVL_ANI_GROWING; - bat_percentage = percentage; - bat_lvl_ani_timer_buffer = timer_read32(); - cur_percentage = 0; - time_interval = BAT_LEVEL_GROWING_INTERVAL; -#ifdef RGB_MATRIX_ENABLE - r = g = b = 255; -#endif -} - -void bat_level_animiation_stop(void) { - animation_state = BAT_LVL_ANI_NONE; -} - -bool bat_level_animiation_actived(void) { - return animation_state; -} - -void bat_level_animiation_indicate(void) { -#ifdef LED_MATRIX_ENABLE - uint8_t bat_lvl_led_list[10] = BAT_LEVEL_LED_LIST; - - for (uint8_t i = 0; i <= LED_MATRIX_LED_COUNT; i++) { - led_matrix_set_value(i, 0); - } - - if (animation_state == BAT_LVL_ANI_GROWING || animation_state == BAT_LVL_ANI_BLINK_ON) - for (uint8_t i = 0; i < cur_percentage / 10; i++) - led_matrix_set_value(bat_lvl_led_list[i], 255); -#endif - -#ifdef RGB_MATRIX_ENABLE - uint8_t bat_lvl_led_list[10] = BAT_LEVEL_LED_LIST; - - for (uint8_t i = 0; i <= RGB_MATRIX_LED_COUNT; i++) { - rgb_matrix_set_color(i, 0, 0, 0); - } - - if (animation_state == BAT_LVL_ANI_GROWING || animation_state == BAT_LVL_ANI_BLINK_ON) { - for (uint8_t i = 0; i < cur_percentage / 10; i++) { - rgb_matrix_set_color(bat_lvl_led_list[i], r, g, b); - } - } -#endif -} - -void bat_level_animiation_update(void) { - switch (animation_state) { - case BAT_LVL_ANI_GROWING: - if (cur_percentage < bat_percentage) - cur_percentage += 10; - else { - if (cur_percentage == 0) cur_percentage = 10; - animation_state = BAT_LVL_ANI_BLINK_OFF; - } - break; - - case BAT_LVL_ANI_BLINK_OFF: -#ifdef RGB_MATRIX_ENABLE - if (bat_percentage < 30) { - r = 255; - b = g = 0; - } else { - r = b = 0; - g = 255; - } -#endif - time_interval = BAT_LEVEL_ON_INTERVAL; - animation_state = BAT_LVL_ANI_BLINK_ON; - break; - - case BAT_LVL_ANI_BLINK_ON: - animation_state = BAT_LVL_ANI_NONE; - indicator_eeconfig_reload(); - if (indicator_config.value == 0 && !LED_DRIVER_IS_ENABLED()) { - indicator_disable(); - } - lpm_timer_reset(); - break; - - default: - break; - } - - bat_lvl_ani_timer_buffer = timer_read32(); -} - -void bat_level_animiation_task(void) { - if (animation_state && sync_timer_elapsed32(bat_lvl_ani_timer_buffer) > time_interval) { - bat_level_animiation_update(); - } -} - -#endif diff --git a/keyboards/keychron/common/wireless/bat_level_animation.h b/keyboards/keychron/common/wireless/bat_level_animation.h deleted file mode 100644 index d8e0e9f2ce..0000000000 --- a/keyboards/keychron/common/wireless/bat_level_animation.h +++ /dev/null @@ -1,23 +0,0 @@ -/* Copyright 2023~2025 @ lokher (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 . - */ - -#pragma once - -void bat_level_animiation_start(uint8_t percentage); -void bat_level_animiation_stop(void); -bool bat_level_animiation_actived(void); -void bat_level_animiation_indicate(void); -void bat_level_animiation_task(void); diff --git a/keyboards/keychron/common/wireless/battery.c b/keyboards/keychron/common/wireless/battery.c deleted file mode 100644 index 60ab7722df..0000000000 --- a/keyboards/keychron/common/wireless/battery.c +++ /dev/null @@ -1,229 +0,0 @@ -/* Copyright 2022~2023 @ lokher (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 . - */ - -#include "quantum.h" -#include "wireless.h" -#include "battery.h" -#include "transport.h" -#include "lkbt51.h" -#include "lpm.h" -#include "indicator.h" -#include "rtc_timer.h" -#include "analog.h" - -#define BATTERY_EMPTY_COUNT 10 -#define CRITICAL_LOW_COUNT 20 - -/* Battery voltage resistive voltage divider setting of MCU */ -#ifndef RVD_R1 -# define RVD_R1 10 // Upper side resitor value (uint: KΩ) -#endif -#ifndef RVD_R2 -# define RVD_R2 10 // Lower side resitor value (uint: KΩ) -#endif - -/* Battery voltage resistive voltage divider setting of Bluetooth */ -#ifndef LKBT51_RVD_R1 -# define LKBT51_RVD_R1 560 -#endif -#ifndef LKBT51_RVD_R2 -# define LKBT51_RVD_R2 499 -#endif - -#ifndef VOLTAGE_TRIM_LED_MATRIX -# define VOLTAGE_TRIM_LED_MATRIX 30 -#endif - -#ifndef VOLTAGE_TRIM_RGB_MATRIX -# define VOLTAGE_TRIM_RGB_MATRIX 60 -#endif - -#if defined(LED_MATRIX_ENABLE) || defined(RGB_MATRIX_ENABLE) -extern uint8_t g_pwm_buffer[DRIVER_COUNT][192]; -#endif - -static uint32_t bat_monitor_timer_buffer = 0; -static uint16_t voltage = FULL_VOLTAGE_VALUE; -static uint8_t bat_empty = 0; -static uint8_t critical_low = 0; -static uint8_t bat_state; -static uint8_t power_on_sample = 0; - -void battery_init(void) { - bat_state = BAT_NOT_CHARGING; -#if defined(BAT_CHARGING_PIN) -# if (BAT_CHARGING_LEVEL == 0) - palSetLineMode(BAT_CHARGING_PIN, PAL_MODE_INPUT_PULLUP); -# else - palSetLineMode(BAT_CHARGING_PIN, PAL_MODE_INPUT_PULLDOWN); -# endif -#endif - -#ifdef BAT_ADC_ENABLE_PIN - palSetLineMode(BAT_ADC_ENABLE_PIN, PAL_MODE_OUTPUT_PUSHPULL); - writePin(BAT_ADC_ENABLE_PIN, 1); -#endif -#ifdef BAT_ADC_PIN - palSetLineMode(BAT_ADC_PIN, PAL_MODE_INPUT_ANALOG); -#endif -} - -void battery_stop(void) { -#if (HAL_USE_ADC) -# ifdef BAT_ADC_ENABLE_PIN - writePin(BAT_ADC_ENABLE_PIN, 0); -# endif -# ifdef BAT_ADC_PIN - palSetLineMode(BAT_ADC_PIN, PAL_MODE_INPUT_ANALOG); - analog_stop(BAT_ADC_PIN); -# endif -#endif -} - -__attribute__((weak)) void battery_measure(void) { - lkbt51_read_state_reg(0x05, 0x02); -} - -/* Calculate the voltage */ -__attribute__((weak)) void battery_calculate_voltage(bool vol_src_bt, uint16_t value) { - uint16_t voltage; - - if (vol_src_bt) - voltage = ((uint32_t)value) * (LKBT51_RVD_R1 + LKBT51_RVD_R2) / LKBT51_RVD_R2; - else - voltage = (uint32_t)value * 3300 / 1024 * (RVD_R1 + RVD_R2) / RVD_R2; - -#ifdef LED_MATRIX_ENABLE - if (led_matrix_is_enabled()) { - uint32_t totalBuf = 0; - - for (uint8_t i = 0; i < DRIVER_COUNT; i++) - for (uint8_t j = 0; j < 192; j++) - totalBuf += g_pwm_buffer[i][j]; - /* We assumpt it is linear relationship*/ - voltage += (VOLTAGE_TRIM_LED_MATRIX * totalBuf / LED_MATRIX_LED_COUNT / 255); - } -#endif -#ifdef RGB_MATRIX_ENABLE - if (rgb_matrix_is_enabled()) { - uint32_t totalBuf = 0; - - for (uint8_t i = 0; i < DRIVER_COUNT; i++) - for (uint8_t j = 0; j < 192; j++) - totalBuf += g_pwm_buffer[i][j]; - /* We assumpt it is linear relationship*/ - uint32_t compensation = VOLTAGE_TRIM_RGB_MATRIX * totalBuf / RGB_MATRIX_LED_COUNT / 255 / 3; - - voltage += compensation; - } -#endif - - battery_set_voltage(voltage); -} - -void battery_set_voltage(uint16_t value) { - voltage = value; -} - -uint16_t battery_get_voltage(void) { - return voltage; -} - -uint8_t battery_get_percentage(void) { - if (voltage > FULL_VOLTAGE_VALUE) return 100; - - if (voltage > EMPTY_VOLTAGE_VALUE) { - return ((uint32_t)voltage - EMPTY_VOLTAGE_VALUE) * 80 / (FULL_VOLTAGE_VALUE - EMPTY_VOLTAGE_VALUE) + 20; - } - - if (voltage > SHUTDOWN_VOLTAGE_VALUE) { - return ((uint32_t)voltage - SHUTDOWN_VOLTAGE_VALUE) * 20 / (EMPTY_VOLTAGE_VALUE - SHUTDOWN_VOLTAGE_VALUE); - } else - return 0; -} - -bool battery_is_empty(void) { - return bat_empty > BATTERY_EMPTY_COUNT; -} - -bool battery_is_critical_low(void) { - return critical_low > CRITICAL_LOW_COUNT; -} - -void battery_check_empty(void) { - if (voltage < EMPTY_VOLTAGE_VALUE) { - if (bat_empty <= BATTERY_EMPTY_COUNT) { - if (++bat_empty > BATTERY_EMPTY_COUNT) { - indicator_battery_low_enable(true); - power_on_sample = VOLTAGE_POWER_ON_MEASURE_COUNT; - } - } - } -} - -void battery_check_critical_low(void) { - if (voltage < SHUTDOWN_VOLTAGE_VALUE) { - if (critical_low <= CRITICAL_LOW_COUNT) { - if (++critical_low > CRITICAL_LOW_COUNT) wireless_low_battery_shutdown(); - } - } else if (critical_low <= CRITICAL_LOW_COUNT) { - critical_low = 0; - } -} - -bool battery_power_on_sample(void) { - return power_on_sample < VOLTAGE_POWER_ON_MEASURE_COUNT; -} - -void battery_task(void) { - uint32_t t = rtc_timer_elapsed_ms(bat_monitor_timer_buffer); - if ((get_transport() & TRANSPORT_WIRELESS) && (wireless_get_state() == WT_CONNECTED || battery_power_on_sample())) { -#if defined(BAT_CHARGING_PIN) - if (usb_power_connected() && t > VOLTAGE_MEASURE_INTERVAL) { - if (readPin(BAT_CHARGING_PIN) == BAT_CHARGING_LEVEL) - lkbt51_update_bat_state(BAT_CHARGING); - else - lkbt51_update_bat_state(BAT_FULL_CHARGED); - } -#endif - - if ((battery_power_on_sample() -#if defined(LED_MATRIX_ENABLE) || defined(RGB_MATRIX_ENABLE) - && !indicator_is_enabled() -#endif - && t > BACKLIGHT_OFF_VOLTAGE_MEASURE_INTERVAL) || - t > VOLTAGE_MEASURE_INTERVAL) { - - battery_check_empty(); - battery_check_critical_low(); - - bat_monitor_timer_buffer = rtc_timer_read_ms(); - if (bat_monitor_timer_buffer > RTC_MAX_TIME) { - bat_monitor_timer_buffer = 0; - rtc_timer_clear(); - } - - battery_measure(); - if (power_on_sample < VOLTAGE_POWER_ON_MEASURE_COUNT) power_on_sample++; - } - } - - if ((bat_empty || critical_low) && usb_power_connected()) { - bat_empty = false; - critical_low = false; - indicator_battery_low_enable(false); - } -} diff --git a/keyboards/keychron/common/wireless/battery.h b/keyboards/keychron/common/wireless/battery.h deleted file mode 100644 index caa4d0db81..0000000000 --- a/keyboards/keychron/common/wireless/battery.h +++ /dev/null @@ -1,61 +0,0 @@ -/* Copyright 2022~2023 @ lokher (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 . - */ - -#pragma once - -enum { - BAT_NOT_CHARGING = 0, - BAT_CHARGING, - BAT_FULL_CHARGED, -}; - -#ifndef FULL_VOLTAGE_VALUE -# define FULL_VOLTAGE_VALUE 4100 -#endif - -#ifndef EMPTY_VOLTAGE_VALUE -# define EMPTY_VOLTAGE_VALUE 3500 -#endif - -#ifndef SHUTDOWN_VOLTAGE_VALUE -# define SHUTDOWN_VOLTAGE_VALUE 3300 -#endif - -#ifndef VOLTAGE_MEASURE_INTERVAL -# define VOLTAGE_MEASURE_INTERVAL 3000 -#endif - -#ifndef VOLTAGE_POWER_ON_MEASURE_COUNT -# define VOLTAGE_POWER_ON_MEASURE_COUNT 15 -#endif - -#ifndef BACKLIGHT_OFF_VOLTAGE_MEASURE_INTERVAL -# define BACKLIGHT_OFF_VOLTAGE_MEASURE_INTERVAL 200 -#endif - -void battery_init(void); -void battery_stop(void); - -void battery_measure(void); -void battery_calculate_voltage(bool vol_src_bt, uint16_t value); -void battery_set_voltage(uint16_t value); -uint16_t battery_get_voltage(void); -uint8_t battery_get_percentage(void); -bool battery_is_empty(void); -bool battery_is_critical_low(void); -bool battery_power_on_sample(void); - -void battery_task(void); diff --git a/keyboards/keychron/common/wireless/eeconfig_wireless.h b/keyboards/keychron/common/wireless/eeconfig_wireless.h deleted file mode 100644 index 109e6d3c9a..0000000000 --- a/keyboards/keychron/common/wireless/eeconfig_wireless.h +++ /dev/null @@ -1,20 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#pragma once - -#define EECONFIG_SIZE_WIRELESS_CONFIG 4 //sizeof(backlit_disable_time) + sizeof (connected_idle_time) - diff --git a/keyboards/keychron/common/wireless/indicator.c b/keyboards/keychron/common/wireless/indicator.c deleted file mode 100644 index 6271466fe2..0000000000 --- a/keyboards/keychron/common/wireless/indicator.c +++ /dev/null @@ -1,773 +0,0 @@ -/* Copyright 2023~2025 @ lokher (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 . - */ - -#include "quantum.h" -#include "indicator.h" -#include "transport.h" -#include "battery.h" -#include "eeconfig.h" -#include "wireless_config.h" -#include "config.h" -#include "rtc_timer.h" -#include "keychron_common.h" -#include "usb_main.h" -#ifdef FACTORY_TEST_ENABLE -# include "factory_test.h" -#endif -#include "lpm.h" -#include "keychron_task.h" -#if defined(LED_MATRIX_ENABLE) || defined(RGB_MATRIX_ENABLE) -# ifdef LED_MATRIX_ENABLE -# include "led_matrix.h" -# endif -# ifdef RGB_MATRIX_ENABLE -# include "rgb_matrix.h" -# endif -# include "bat_level_animation.h" -# include "eeprom.h" -#endif - -#define HOST_INDEX_MASK 0x0F -#define HOST_P2P4G 0x10 -#define LED_ON 0x80 - -// #define RGB_MATRIX_TIMEOUT_INFINITE 0xFFFFFFFF -#ifdef LED_MATRIX_ENABLE -# define DECIDE_TIME(t, duration) (duration == 0 ? LED_MATRIX_TIMEOUT_INFINITE : ((t > duration) ? t : duration)) -#endif -#ifdef RGB_MATRIX_ENABLE -# define DECIDE_TIME(t, duration) (duration == 0 ? RGB_MATRIX_TIMEOUT_INFINITE : ((t > duration) ? t : duration)) -#endif - -#define INDICATOR_SET(s) memcpy(&indicator_config, &s##_config, sizeof(indicator_config_t)); - -enum { - BACKLIGHT_OFF = 0x00, - BACKLIGHT_ON_CONNECTED = 0x01, - BACKLIGHT_ON_UNCONNECTED = 0x02, -}; - -extern uint16_t backlit_disable_time; - -static indicator_config_t pairing_config = INDICATOR_CONFIG_PARING; -static indicator_config_t connected_config = INDICATOR_CONFIG_CONNECTD; -static indicator_config_t reconnecting_config = INDICATOR_CONFIG_RECONNECTING; -static indicator_config_t disconnected_config = INDICATOR_CONFIG_DISCONNECTED; -indicator_config_t indicator_config; -static wt_state_t indicator_state; -static uint16_t next_period; -static indicator_type_t type; -static uint32_t indicator_timer_buffer = 0; - -#if defined(BAT_LOW_LED_PIN) || defined(SPACE_KEY_LOW_BAT_IND) -static uint32_t bat_low_backlit_indicator = 0; -static uint8_t bat_low_ind_state = 0; -static uint32_t rtc_time = 0; -#endif - -#if defined(LED_MATRIX_ENABLE) || defined(RGB_MATRIX_ENABLE) -backlight_state_t original_backlight_state; - -# ifdef BT_HOST_LED_MATRIX_LIST -static uint8_t bt_host_led_matrix_list[BT_HOST_DEVICES_COUNT] = BT_HOST_LED_MATRIX_LIST; -# endif - -# ifdef P2P4G_HOST_LED_MATRIX_LIST -static uint8_t p2p4g_host_led_matrix_list[P2P4G_HOST_DEVICES_COUNT] = P2P4G_HOST_LED_MATRIX_LIST; -# endif -#endif - -#ifdef BT_HOST_LED_PIN_LIST -static pin_t bt_led_pin_list[BT_HOST_DEVICES_COUNT] = BT_HOST_LED_PIN_LIST; -#endif - -#ifdef P24G_HOST_LED_PIN_LIST -static pin_t p24g_led_pin_list[P24G_HOST_DEVICES_COUNT] = P24G_HOST_LED_PIN_LIST; -#endif - -#ifdef LED_MATRIX_ENABLE -# define LED_DRIVER led_matrix_driver -# define LED_INDICATORS_KB led_matrix_indicators_bt -# define LED_INDICATORS_USER led_matrix_indicators_user -# define LED_NONE_INDICATORS_KB led_matrix_none_indicators_kb -# define SET_ALL_LED_OFF() led_matrix_set_value_all(0) -# define SET_LED_OFF(idx) led_matrix_set_value(idx, 0) -# define SET_LED_ON(idx) led_matrix_set_value(idx, 255) -# define SET_LED_BT(idx) led_matrix_set_value(idx, 255) -# define SET_LED_P24G(idx) led_matrix_set_value(idx, 255) -# define SET_LED_LOW_BAT(idx) led_matrix_set_value(idx, 255) -# define LED_DRIVER_IS_ENABLED led_matrix_is_enabled -# define LED_DRIVER_EECONFIG_RELOAD() \ - eeprom_read_block(&led_matrix_eeconfig, EECONFIG_LED_MATRIX, sizeof(led_matrix_eeconfig)); \ - if (!led_matrix_eeconfig.mode) { \ - eeconfig_update_led_matrix_default(); \ - } -# define LED_DRIVER_ALLOW_SHUTDOWN led_matrix_driver_allow_shutdown -# define LED_DRIVER_SHUTDOWN led_matrix_driver_shutdown -# define LED_DRIVER_EXIT_SHUTDOWN led_matrix_driver_exit_shutdown -# define LED_DRIVER_ENABLE_NOEEPROM led_matrix_enable_noeeprom -# define LED_DRIVER_DISABLE_NOEEPROM led_matrix_disable_noeeprom -# define LED_DRIVER_DISABLE_TIMEOUT_SET led_matrix_disable_timeout_set -# define LED_DRIVER_DISABLE_TIME_RESET led_matrix_disable_time_reset -# define LED_DRIVER_TIMEOUTED led_matrix_timeouted -#endif - -#ifdef RGB_MATRIX_ENABLE -# define LED_DRIVER rgb_matrix_driver -# define LED_INDICATORS_KB rgb_matrix_indicators_bt -# define LED_INDICATORS_USER rgb_matrix_indicators_user -# define LED_NONE_INDICATORS_KB rgb_matrix_none_indicators_kb -# define SET_ALL_LED_OFF() rgb_matrix_set_color_all(0, 0, 0) -# define SET_LED_OFF(idx) rgb_matrix_set_color(idx, 0, 0, 0) -# define SET_LED_ON(idx) rgb_matrix_set_color(idx, 255, 255, 255) -# define SET_LED_BT(idx) rgb_matrix_set_color(idx, 0, 0, 255) -# define SET_LED_P24G(idx) rgb_matrix_set_color(idx, 0, 255, 0) -# define SET_LED_LOW_BAT(idx) rgb_matrix_set_color(idx, 255, 0, 0) -# define LED_DRIVER_IS_ENABLED rgb_matrix_is_enabled -# define LED_DRIVER_EECONFIG_RELOAD() \ - eeprom_read_block(&rgb_matrix_config, EECONFIG_RGB_MATRIX, sizeof(rgb_matrix_config)); \ - if (!rgb_matrix_config.mode) { \ - eeconfig_update_rgb_matrix_default(); \ - } -# define LED_DRIVER_ALLOW_SHUTDOWN rgb_matrix_driver_allow_shutdown -# define LED_DRIVER_SHUTDOWN rgb_matrix_driver_shutdown -# define LED_DRIVER_EXIT_SHUTDOWN rgb_matrix_driver_exit_shutdown -# define LED_DRIVER_ENABLE_NOEEPROM rgb_matrix_enable_noeeprom -# define LED_DRIVER_DISABLE_NOEEPROM rgb_matrix_disable_noeeprom -# define LED_DRIVER_DISABLE_TIMEOUT_SET rgb_matrix_disable_timeout_set -# define LED_DRIVER_DISABLE_TIME_RESET rgb_matrix_disable_time_reset -# define LED_DRIVER_TIMEOUTED rgb_matrix_timeouted -#endif - -bool LED_INDICATORS_KB(void); - -void indicator_init(void) { - memset(&indicator_config, 0, sizeof(indicator_config)); - -#if defined(BT_HOST_LED_PIN_LIST) - for (uint8_t i = 0; i < BT_HOST_DEVICES_COUNT; i++) { - setPinOutput(bt_led_pin_list[i]); - writePin(bt_led_pin_list[i], !HOST_LED_PIN_ON_STATE); - } -#endif - -#ifdef P24G_HOST_LED_PIN_LIST - for (uint8_t i = 0; i < P24G_HOST_DEVICES_COUNT; i++) { - setPinOutput(p24g_led_pin_list[i]); - writePin(p24g_led_pin_list[i], !HOST_LED_PIN_ON_STATE); - } -#endif - -#ifdef COMMON_BT_LED_PIN - setPinOutput(COMMON_BT_LED_PIN); - writePin(COMMON_BT_LED_PIN, !COMMON_BT_LED_PIN_ON_STATE); -#endif - -#ifdef COMMON_P24G_LED_PIN - setPinOutput(COMMON_P24G_LED_PIN); - writePin(COMMON_P24G_LED_PIN, !COMMON_BT_LED_PIN_ON_STATE); -#endif - -#ifdef BAT_LOW_LED_PIN -# ifdef POWER_ON_LED_DURATION - if (timer_read32() > POWER_ON_LED_DURATION) -# endif - { - setPinOutput(BAT_LOW_LED_PIN); - writePin(BAT_LOW_LED_PIN, !BAT_LOW_LED_PIN_ON_STATE); - } -#endif -} - -#if defined(LED_MATRIX_ENABLE) || defined(RGB_MATRIX_ENABLE) -void indicator_enable(void) { - if (!LED_DRIVER_IS_ENABLED()) { - LED_DRIVER_ENABLE_NOEEPROM(); - } -} - -inline void indicator_disable(void) { - LED_DRIVER_DISABLE_NOEEPROM(); -} - -void indicator_reset_backlit_time(void) { - LED_DRIVER_DISABLE_TIME_RESET(); -} - -void indicator_set_backlit_timeout(uint32_t time) { - LED_DRIVER_DISABLE_TIMEOUT_SET(time); - indicator_reset_backlit_time(); -} - -bool indicator_is_enabled(void) { - return LED_DRIVER_IS_ENABLED(); -} - -void indicator_eeconfig_reload(void) { - LED_DRIVER_EECONFIG_RELOAD(); -} - -#endif - -bool indicator_is_running(void) { - return -#if defined(BAT_LOW_LED_PIN) || defined(SPACE_KEY_LOW_BAT_IND) - bat_low_ind_state || -#endif - !!indicator_config.value; -} - -static void indicator_timer_cb(void *arg) { - if (*(indicator_type_t *)arg != INDICATOR_LAST) type = *(indicator_type_t *)arg; - - bool time_up = false; - switch (type) { - case INDICATOR_NONE: - break; - case INDICATOR_OFF: - next_period = 0; - time_up = true; - break; - - case INDICATOR_ON: - if (indicator_config.value) { - if (indicator_config.elapsed == 0) { - indicator_config.value |= LED_ON; - - if (indicator_config.duration) { - indicator_config.elapsed += indicator_config.duration; - } - } else - time_up = true; - } - break; - - case INDICATOR_ON_OFF: - if (indicator_config.value) { - if (indicator_config.elapsed == 0) { - indicator_config.value |= LED_ON; - next_period = indicator_config.on_time; - } else { - indicator_config.value = indicator_config.value & 0x1F; - next_period = indicator_config.duration - indicator_config.on_time; - } - - if ((indicator_config.duration == 0 || indicator_config.elapsed <= indicator_config.duration) && next_period != 0) { - indicator_config.elapsed += next_period; - } else { - time_up = true; - } - } - break; - - case INDICATOR_BLINK: - if (indicator_config.value) { - if (indicator_config.value & LED_ON) { - indicator_config.value = indicator_config.value & 0x1F; - next_period = indicator_config.off_time; - } else { - indicator_config.value |= LED_ON; - next_period = indicator_config.on_time; - } - - if ((indicator_config.duration == 0 || indicator_config.elapsed <= indicator_config.duration) && next_period != 0) { - indicator_config.elapsed += next_period; - } else { - time_up = true; - } - } - break; - default: - time_up = true; - - next_period = 0; - break; - } - -#if defined(BT_HOST_LED_PIN_LIST) || defined(P24G_HOST_LED_PIN_LIST) || defined(COMMON_BT_LED_PIN) || defined(COMMON_P24G_LED_PIN) - if (indicator_config.value) { - uint8_t idx = (indicator_config.value & HOST_INDEX_MASK) - 1; -# if defined(BT_HOST_LED_PIN_LIST) || defined(P24G_HOST_LED_PIN_LIST) - pin_t *led_lin_list = NULL; -# endif -# if defined(COMMON_BT_LED_PIN) || defined(COMMON_P24G_LED_PIN) - pin_t led_pin = NO_PIN; -# endif - uint8_t led_count; -# if defined(P24G_HOST_LED_PIN_LIST) || defined(COMMON_P24G_LED_PIN) - if (indicator_config.value & HOST_P2P4G) { - if (idx < P24G_HOST_DEVICES_COUNT) { -# if defined(P24G_HOST_LED_PIN_LIST) - led_lin_list = p24g_led_pin_list; -# endif -# if defined(COMMON_P24G_LED_PIN) - led_pin = COMMON_P24G_LED_PIN; -# endif - } - led_count = P24G_HOST_DEVICES_COUNT; - } else -# endif - { - if (idx < BT_HOST_DEVICES_COUNT) { -# if defined(BT_HOST_LED_PIN_LIST) - led_lin_list = bt_led_pin_list; -# endif -# if defined(COMMON_BT_LED_PIN) - led_pin = COMMON_BT_LED_PIN; -# endif - } - led_count = BT_HOST_DEVICES_COUNT; - } - -#if defined(BT_HOST_LED_PIN_LIST) || defined(P24G_HOST_LED_PIN_LIST) - for (uint8_t i = 0; i < led_count; i++) { - if (i != idx) { - if (led_lin_list) writePin(led_lin_list[idx], !HOST_LED_PIN_ON_STATE); - } - } -#endif - - if ((indicator_config.value & LED_ON) && !time_up) { - if (led_lin_list) writePin(led_lin_list[idx], HOST_LED_PIN_ON_STATE); -# if defined(COMMON_BT_LED_PIN) || defined(COMMON_P24G_LED_PIN) - if (led_pin != NO_PIN) writePin(led_pin, COMMON_BT_LED_PIN_ON_STATE); -# endif - } else { - if (led_lin_list) writePin(led_lin_list[idx], !HOST_LED_PIN_ON_STATE); -# if defined(COMMON_BT_LED_PIN) || defined(COMMON_P24G_LED_PIN) - if (led_pin != NO_PIN) writePin(led_pin, !COMMON_BT_LED_PIN_ON_STATE); -# endif - } - - } -#endif - - if (time_up) { - /* Set indicator to off on timeup, avoid keeping light up until next update in raindrop effect */ - indicator_config.value = indicator_config.value & 0x1F; -#if defined(LED_MATRIX_ENABLE) || defined(RGB_MATRIX_ENABLE) - LED_INDICATORS_KB(); -#endif - - indicator_config.value = 0; - lpm_timer_reset(); - } - - if (indicator_config.value == 0) { -#if defined(LED_MATRIX_ENABLE) || defined(RGB_MATRIX_ENABLE) - indicator_eeconfig_reload(); - if (!LED_DRIVER_IS_ENABLED()) indicator_disable(); -#endif - } -} - -void indicator_set(wt_state_t state, uint8_t host_index) { - if (get_transport() == TRANSPORT_USB) return; - - static uint8_t pre_state = 0; - static uint8_t current_state = 0; - static uint8_t current_host = 0; - bool host_index_changed = false; - - if (host_index == 24) host_index = HOST_P2P4G | 0x01; - - if (current_host != host_index && state != WT_DISCONNECTED) { - host_index_changed = true; - current_host = host_index; - } - - if (current_state != state || host_index_changed || state == WT_RECONNECTING) { - // Some BT chips need to reset to enter sleep mode, ignore it. - if (current_state == WT_SUSPEND && state == WT_DISCONNECTED) return; - - pre_state = current_state; - current_state = state; - (void)pre_state; - } else { - return; - } - - indicator_timer_buffer = timer_read32(); - -#if defined(LED_MATRIX_ENABLE) || defined(RGB_MATRIX_ENABLE) - /* Turn on backlight mode for indicator */ - indicator_enable(); - indicator_reset_backlit_time(); -#endif - - switch (state) { - case WT_DISCONNECTED: -#if defined(BT_HOST_LED_PIN_LIST) - if ((host_index & HOST_P2P4G) != HOST_P2P4G) writePin(bt_led_pin_list[(host_index & HOST_INDEX_MASK) - 1], !HOST_LED_PIN_ON_STATE); -#endif -#if defined(P24G_HOST_LED_PIN_LIST) - if (host_index & HOST_P2P4G) writePin(p24g_led_pin_list[(host_index & HOST_INDEX_MASK) - 1], !HOST_LED_PIN_ON_STATE); -#endif -#ifdef COMMON_BT_LED_PIN - writePin(COMMON_BT_LED_PIN, !COMMON_BT_LED_PIN_ON_STATE); -#endif -#ifdef COMMON_P24G_LED_PIN - writePin(COMMON_P24G_LED_PIN, !COMMON_BT_LED_PIN_ON_STATE); -#endif - INDICATOR_SET(disconnected); - indicator_config.value = (indicator_config.type == INDICATOR_NONE) ? 0 : host_index; - indicator_timer_cb((void *)&indicator_config.type); -#if defined(LED_MATRIX_ENABLE) || defined(RGB_MATRIX_ENABLE) - if (battery_is_critical_low()) { - indicator_set_backlit_timeout(1000); - - } else { - if (pre_state == WT_CONNECTED) - indicator_set_backlit_timeout(1000); - else - /* Set timer so that user has chance to turn on the backlight when is off */ - indicator_set_backlit_timeout(DECIDE_TIME(DISCONNECTED_BACKLIGHT_DISABLE_TIMEOUT * 1000, indicator_config.duration)); - } -#endif - break; - - case WT_CONNECTED: - if (indicator_state != WT_CONNECTED) { - INDICATOR_SET(connected); - indicator_config.value = (indicator_config.type == INDICATOR_NONE) ? 0 : host_index; - indicator_timer_cb((void *)&indicator_config.type); - } -#if defined(LED_MATRIX_ENABLE) || defined(RGB_MATRIX_ENABLE) - indicator_set_backlit_timeout(DECIDE_TIME(backlit_disable_time * 1000, indicator_config.duration)); -#endif - break; - - case WT_PARING: - INDICATOR_SET(pairing); - indicator_config.value = (indicator_config.type == INDICATOR_NONE) ? 0 : LED_ON | host_index; - indicator_timer_cb((void *)&indicator_config.type); -#if defined(LED_MATRIX_ENABLE) || defined(RGB_MATRIX_ENABLE) - indicator_set_backlit_timeout(DECIDE_TIME(DISCONNECTED_BACKLIGHT_DISABLE_TIMEOUT * 1000, indicator_config.duration)); -#endif - break; - - case WT_RECONNECTING: - INDICATOR_SET(reconnecting); - indicator_config.value = (indicator_config.type == INDICATOR_NONE) ? 0 : LED_ON | host_index; - indicator_timer_cb((void *)&indicator_config.type); -#if defined(LED_MATRIX_ENABLE) || defined(RGB_MATRIX_ENABLE) - indicator_set_backlit_timeout(DECIDE_TIME(DISCONNECTED_BACKLIGHT_DISABLE_TIMEOUT * 1000, indicator_config.duration)); -#endif - break; - - case WT_SUSPEND: - INDICATOR_SET(disconnected); - indicator_config.value = (indicator_config.type == INDICATOR_NONE) ? 0 : host_index; - indicator_timer_cb((void *)&indicator_config.type); -#if defined(LED_MATRIX_ENABLE) || defined(RGB_MATRIX_ENABLE) -# ifdef FACTORY_TEST_ENABLE - if (factory_reset_indicating()) - indicator_set_backlit_timeout(3000); - else -# endif - { - indicator_set_backlit_timeout(1000); - } -#endif - -#if defined(BT_HOST_LED_PIN_LIST) - for (uint8_t i = 0; i < BT_HOST_DEVICES_COUNT; i++) writePin(bt_led_pin_list[i], !HOST_LED_PIN_ON_STATE); -#endif -#if defined(P24G_HOST_LED_PIN_LIST) - for (uint8_t i = 0; i < P24G_HOST_DEVICES_COUNT; i++) writePin(p24g_led_pin_list[i], !HOST_LED_PIN_ON_STATE); -#endif -#ifdef COMMON_BT_LED_PIN - writePin(COMMON_BT_LED_PIN, !COMMON_BT_LED_PIN_ON_STATE); -#endif -#ifdef COMMON_P24G_LED_PIN - writePin(COMMON_P24G_LED_PIN, !COMMON_BT_LED_PIN_ON_STATE); -#endif - - break; - - default: - break; - } - - indicator_state = state; -} - -void indicator_stop(void) { - indicator_config.value = 0; -#if defined(LED_MATRIX_ENABLE) || defined(RGB_MATRIX_ENABLE) - indicator_eeconfig_reload(); - - if (indicator_is_enabled()) { - indicator_enable(); - } else { - indicator_disable(); - } -#endif -} - -void indicator_battery_low_enable(bool enable) { -#if defined(BAT_LOW_LED_PIN) || defined(SPACE_KEY_LOW_BAT_IND) - if (enable) { - uint32_t t = rtc_timer_read_ms(); - - /* Check overflow */ - if (rtc_time > t) { - if (bat_low_ind_state == 0) - rtc_time = t; // Update rtc_time if indicating is not running - else { - rtc_time += t; - } - } - - /* Indicating at first time or after the interval */ - if ((rtc_time == 0 || t - rtc_time > LOW_BAT_LED_TRIG_INTERVAL) && bat_low_ind_state == 0) { - bat_low_backlit_indicator = enable ? timer_read32() : 0; - rtc_time = rtc_timer_read_ms(); - bat_low_ind_state = 1; -# if defined(SPACE_KEY_LOW_BAT_IND) - indicator_enable(); -# endif - } - } else { - rtc_time = 0; - bat_low_ind_state = 0; -# if defined(BAT_LOW_LED_PIN) - writePin(BAT_LOW_LED_PIN, !BAT_LOW_LED_PIN_ON_STATE); -# endif -# if defined(SPACE_KEY_LOW_BAT_IND) - indicator_eeconfig_reload(); - if (!LED_DRIVER_IS_ENABLED()) indicator_disable(); -# endif - } -#endif -} - -void indicator_battery_low(void) { -#if defined(BAT_LOW_LED_PIN) || defined(SPACE_KEY_LOW_BAT_IND) - if (bat_low_ind_state) { - if ((bat_low_ind_state & 0x0F) <= (LOW_BAT_LED_BLINK_TIMES) && - timer_elapsed32(bat_low_backlit_indicator) > (LOW_BAT_LED_BLINK_PERIOD)) { - if (bat_low_ind_state & 0x80) { - bat_low_ind_state &= 0x7F; - bat_low_ind_state++; -# if defined(BAT_LOW_LED_PIN) - writePin(BAT_LOW_LED_PIN, !BAT_LOW_LED_PIN_ON_STATE); -# endif - } else { - bat_low_ind_state |= 0x80; -# if defined(BAT_LOW_LED_PIN) - writePin(BAT_LOW_LED_PIN, BAT_LOW_LED_PIN_ON_STATE); -# endif - } - - bat_low_backlit_indicator = timer_read32(); - - /* Restore backligth state */ - if ((bat_low_ind_state & 0x0F) > (LOW_BAT_LED_BLINK_TIMES)) { -# if defined(BAT_LOW_LED_PIN) - writePin(BAT_LOW_LED_PIN, !BAT_LOW_LED_PIN_ON_STATE); -# endif -# if defined(SPACE_KEY_LOW_BAT_IND) -# if defined(NUM_LOCK_INDEX) || defined(CAPS_LOCK_INDEX) || defined(SCROLL_LOCK_INDEX) || defined(COMPOSE_LOCK_INDEX) || defined(KANA_LOCK_INDEX) - if (LED_DRIVER_ALLOW_SHUTDOWN()) -# endif - indicator_disable(); -# endif - } - } else if ((bat_low_ind_state & 0x0F) > (LOW_BAT_LED_BLINK_TIMES)) { -# if defined(BAT_LOW_LED_PIN) - writePin(BAT_LOW_LED_PIN, !BAT_LOW_LED_PIN_ON_STATE); -# endif - bat_low_ind_state = 0; - lpm_timer_reset(); - } - } -#endif -} - -void indicator_task(void) { -#if defined(BAT_LEVEL_LED_LIST) - bat_level_animiation_task(); -#endif - if (indicator_config.value && timer_elapsed32(indicator_timer_buffer) >= next_period) { - indicator_timer_cb((void *)&type); - indicator_timer_buffer = timer_read32(); - } - - indicator_battery_low(); -} - -#if defined(LED_MATRIX_ENABLE) || defined(RGB_MATRIX_ENABLE) -__attribute__((weak)) void os_state_indicate(void) { -# if defined(RGB_DISABLE_WHEN_USB_SUSPENDED) || defined(LED_DISABLE_WHEN_USB_SUSPENDED) - if (get_transport() == TRANSPORT_USB && USB_DRIVER.state == USB_SUSPENDED) return; -# endif - -# if defined(NUM_LOCK_INDEX) - if (host_keyboard_led_state().num_lock) { -# if defined(DIM_NUM_LOCK) - SET_LED_OFF(NUM_LOCK_INDEX); -# else - SET_LED_ON(NUM_LOCK_INDEX); -# endif - } -# endif -# if defined(CAPS_LOCK_INDEX) - if (host_keyboard_led_state().caps_lock) { -# if defined(DIM_CAPS_LOCK) - SET_LED_OFF(CAPS_LOCK_INDEX); -# else - SET_LED_ON(CAPS_LOCK_INDEX); -# endif - } -# endif -# if defined(SCROLL_LOCK_INDEX) - if (host_keyboard_led_state().scroll_lock) { - SET_LED_ON(SCROLL_LOCK_INDEX); - } -# endif -# if defined(COMPOSE_LOCK_INDEX) - if (host_keyboard_led_state().compose) { - SET_LED_ON(COMPOSE_LOCK_INDEX); - } -# endif -# if defined(KANA_LOCK_INDEX) - if (host_keyboard_led_state().kana) { - SET_LED_ON(KANA_LOCK_INDEX); - } -# endif -} - -bool LED_INDICATORS_KB(void) { - if (get_transport() & TRANSPORT_WIRELESS) { - /* Prevent backlight flash caused by key activities */ - if (battery_is_critical_low()) { - SET_ALL_LED_OFF(); - return true; - } - - if (battery_is_empty()) SET_ALL_LED_OFF(); -# if defined(LOW_BAT_IND_INDEX) - if (bat_low_ind_state && (bat_low_ind_state & 0x0F) <= LOW_BAT_LED_BLINK_TIMES) { - uint8_t idx_list[] = LOW_BAT_IND_INDEX; - for (uint8_t i = 0; i < sizeof(idx_list); i++) { - if (bat_low_ind_state & LED_ON) { - SET_LED_LOW_BAT(idx_list[i]); - } else { - SET_LED_OFF(idx_list[i]); - } - } - } -# endif - -# if (defined(LED_MATRIX_ENABLE) || defined(RGB_MATRIX_ENABLE)) && defined(BAT_LEVEL_LED_LIST) - if (bat_level_animiation_actived()) { - bat_level_animiation_indicate(); - } -# endif - static uint8_t last_host_index = 0xFF; - - if (indicator_config.value) { - uint8_t host_index = indicator_config.value & HOST_INDEX_MASK; - - if (indicator_config.highlight) { - SET_ALL_LED_OFF(); - } else if (last_host_index != host_index) { - if (indicator_config.value & HOST_P2P4G) - SET_LED_OFF(p2p4g_host_led_matrix_list[host_index - 1]); - else - SET_LED_OFF(bt_host_led_matrix_list[host_index - 1]); - last_host_index = host_index; - } - - if (indicator_config.value & LED_ON) { -# ifdef P2P4G_HOST_LED_MATRIX_LIST - if (indicator_config.value & HOST_P2P4G) - SET_LED_P24G(p2p4g_host_led_matrix_list[host_index - 1]); - else -# endif - SET_LED_BT(bt_host_led_matrix_list[host_index - 1]); - - } else { -# ifdef P2P4G_HOST_LED_MATRIX_LIST - if (indicator_config.value & HOST_P2P4G) - SET_LED_OFF(p2p4g_host_led_matrix_list[host_index - 1]); - else -# endif - SET_LED_OFF(bt_host_led_matrix_list[host_index - 1]); - } - } else - os_state_indicate(); - - } else - os_state_indicate(); - - if (!LED_INDICATORS_USER()) return true; - - return true; -} - -bool led_update_kb(led_t led_state) { - bool res = led_update_user(led_state); - if (res) { - led_update_ports(led_state); - - if (!LED_DRIVER_IS_ENABLED() || (LED_DRIVER_IS_ENABLED() && LED_DRIVER_TIMEOUTED())) { -# if defined(LED_MATRIX_DRIVER_SHUTDOWN_ENABLE) || defined(RGB_MATRIX_DRIVER_SHUTDOWN_ENABLE) - LED_DRIVER_EXIT_SHUTDOWN(); -# endif - SET_ALL_LED_OFF(); - os_state_indicate(); - LED_DRIVER.flush(); -# if defined(LED_MATRIX_DRIVER_SHUTDOWN_ENABLE) || defined(RGB_MATRIX_DRIVER_SHUTDOWN_ENABLE) - if (LED_DRIVER_ALLOW_SHUTDOWN()) LED_DRIVER_SHUTDOWN(); -# endif - } - } - - return res; -} - -void LED_NONE_INDICATORS_KB(void) { -# if defined(RGB_DISABLE_WHEN_USB_SUSPENDED) || defined(LED_DISABLE_WHEN_USB_SUSPENDED) - if (get_transport() == TRANSPORT_USB && USB_DRIVER.state == USB_SUSPENDED) return; -# endif - - os_state_indicate(); -} - -# if defined(LED_MATRIX_DRIVER_SHUTDOWN_ENABLE) || defined(RGB_MATRIX_DRIVER_SHUTDOWN_ENABLE) -bool LED_DRIVER_ALLOW_SHUTDOWN(void) { -# if defined(NUM_LOCK_INDEX) - if (host_keyboard_led_state().num_lock) return false; -# endif -# if defined(CAPS_LOCK_INDEX) && !defined(DIM_CAPS_LOCK) - if (host_keyboard_led_state().caps_lock) return false; -# endif -# if defined(SCROLL_LOCK_INDEX) - if (host_keyboard_led_state().scroll_lock) return false; -# endif -# if defined(COMPOSE_LOCK_INDEX) - if (host_keyboard_led_state().compose) return false; -# endif -# if defined(KANA_LOCK_INDEX) - if (host_keyboard_led_state().kana) return false; -# endif - return true; -} -# endif - -#endif diff --git a/keyboards/keychron/common/wireless/indicator.h b/keyboards/keychron/common/wireless/indicator.h deleted file mode 100644 index 6bbae137c4..0000000000 --- a/keyboards/keychron/common/wireless/indicator.h +++ /dev/null @@ -1,114 +0,0 @@ -/* Copyright 2023~2025 @ lokher (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 . - */ - -#pragma once - -#include "config.h" -#include "wireless.h" - -/* Indication of pairing */ -#ifndef INDICATOR_CONFIG_PARING -# define INDICATOR_CONFIG_PARING {INDICATOR_BLINK, 1000, 1000, 0, true, 0}; -#endif - -/* Indication on Connected */ -#ifndef INDICATOR_CONFIG_CONNECTD -# define INDICATOR_CONFIG_CONNECTD {INDICATOR_ON_OFF, 2000, 250, 2000, true, 0}; -#endif - -/* Reconnecting indication */ -#ifndef INDICATOR_CONFIG_RECONNECTING -# define INDICATOR_CONFIG_RECONNECTING {INDICATOR_BLINK, 100, 100, 600, true, 0}; -#endif - -/* Disconnected indication */ -#ifndef INDICATOR_CONFIG_DISCONNECTED -# define INDICATOR_CONFIG_DISCONNECTED {INDICATOR_NONE, 100, 100, 600, false, 0}; -#endif - -/* Uint: Second */ -#ifndef DISCONNECTED_BACKLIGHT_DISABLE_TIMEOUT -# define DISCONNECTED_BACKLIGHT_DISABLE_TIMEOUT 40 -#endif - -/* Uint: Second, the timer restarts on key activities. */ -#ifndef CONNECTED_BACKLIGHT_DISABLE_TIMEOUT -# define CONNECTED_BACKLIGHT_DISABLE_TIMEOUT 600 -#endif - -/* Uint: ms */ -#ifndef LOW_BAT_LED_BLINK_PERIOD -# define LOW_BAT_LED_BLINK_PERIOD 1000 -#endif - -#ifndef LOW_BAT_LED_BLINK_TIMES -# define LOW_BAT_LED_BLINK_TIMES 5 -#endif - -#ifndef LOW_BAT_LED_TRIG_INTERVAL -# define LOW_BAT_LED_TRIG_INTERVAL 30000 -#endif - -#if ((defined(LED_MATRIX_ENABLE) || defined(RGB_MATRIX_ENABLE)) && defined(LOW_BAT_IND_INDEX)) -# define SPACE_KEY_LOW_BAT_IND -#endif - -#if BT_HOST_MAX_COUNT > 6 -# pragma error("HOST_COUNT max value is 6") -#endif - -#ifndef P24G_HOST_DEVICES_COUNT -# define P24G_HOST_DEVICES_COUNT 1 -#endif - -typedef enum { - INDICATOR_NONE, - INDICATOR_OFF, - INDICATOR_ON, - INDICATOR_ON_OFF, - INDICATOR_BLINK, - INDICATOR_LAST, -} indicator_type_t; - -typedef struct { - indicator_type_t type; - uint32_t on_time; - uint32_t off_time; - uint32_t duration; - bool highlight; - uint8_t value; - uint32_t elapsed; -} indicator_config_t; - -typedef struct { - uint8_t value; - bool saved; -} backlight_state_t; - -void indicator_init(void); -void indicator_set(wt_state_t state, uint8_t host_index); -void indicator_set_backlit_timeout(uint32_t time); -void indicator_reset_backlit_time(void); -bool indicator_hook_key(uint16_t keycode); -void indicator_enable(void); -void indicator_disable(void); -void indicator_stop(void); -void indicator_eeconfig_reload(void); -bool indicator_is_enabled(void); -bool indicator_is_running(void); -void indicator_battery_low_enable(bool enable); - -void indicator_task(void); diff --git a/keyboards/keychron/common/wireless/keychron_wireless_common.c b/keyboards/keychron/common/wireless/keychron_wireless_common.c deleted file mode 100644 index 2fa6273fa6..0000000000 --- a/keyboards/keychron/common/wireless/keychron_wireless_common.c +++ /dev/null @@ -1,156 +0,0 @@ -/* Copyright 2022~2025 @ 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 . - */ - -#include QMK_KEYBOARD_H -#ifdef LK_WIRELESS_ENABLE -# include "lkbt51.h" -# include "wireless.h" -# include "indicator.h" -# include "transport.h" -# include "battery.h" -# include "bat_level_animation.h" -# include "lpm.h" -# include "keychron_wireless_common.h" -# include "keychron_task.h" -#endif -#include "keychron_common.h" - -bool firstDisconnect = true; - -static uint32_t pairing_key_timer; -static uint8_t host_idx = 0; -extern uint32_t connected_idle_time; - -bool process_record_keychron_wireless(uint16_t keycode, keyrecord_t *record) { - static uint8_t host_idx; - - switch (keycode) { - case BT_HST1 ... BT_HST3: - if (get_transport() == TRANSPORT_BLUETOOTH) { - if (record->event.pressed) { - host_idx = keycode - BT_HST1 + 1; - - pairing_key_timer = timer_read32(); - wireless_connect_ex(host_idx, 0); - } else { - host_idx = 0; - pairing_key_timer = 0; - } - } - break; - case P2P4G: - if (get_transport() == TRANSPORT_P2P4) { - if (record->event.pressed) { - host_idx = P24G_INDEX; - - pairing_key_timer = timer_read32(); - } else { - host_idx = 0; - pairing_key_timer = 0; - } - } - break; -#if (defined(LED_MATRIX_ENABLE) || defined(RGB_MATRIX_ENABLE)) && defined(BAT_LEVEL_LED_LIST) - case BAT_LVL: - if ((get_transport() & TRANSPORT_WIRELESS) && !usb_power_connected()) { - bat_level_animiation_start(battery_get_percentage()); - } - break; -#endif - - default: - break; - } - - return true; -} - -void lkbt51_param_init(void) { - /* Set bluetooth device name */ - lkbt51_set_local_name(PRODUCT); - wait_ms(3); - // clang-format off - /* Set bluetooth parameters */ - module_param_t param = {.event_mode = 0x02, - .connected_idle_timeout = connected_idle_time, - .pairing_timeout = 180, - .pairing_mode = 0, - .reconnect_timeout = 5, - .report_rate = 90, - .vendor_id_source = 1, - .verndor_id = 0x3434, // Must be 0x3434 - .product_id = PRODUCT_ID}; - // clang-format on - lkbt51_set_param(¶m); -} - -void wireless_enter_reset_kb(uint8_t reason) { - lkbt51_param_init(); -} - -void wireless_enter_disconnected_kb(uint8_t host_idx, uint8_t reason) { - /* CKBT51 bluetooth module boot time is slower, it enters disconnected after boot, - so we place initialization here. */ - if (firstDisconnect && timer_read32() < 1000) { - lkbt51_param_init(); - if (get_transport() == TRANSPORT_BLUETOOTH) wireless_connect(); - firstDisconnect = false; - } -} - -void keychron_wireless_common_task(void) { - if (pairing_key_timer) { - if (timer_elapsed32(pairing_key_timer) > 2000) { - pairing_key_timer = 0; - wireless_pairing_ex(host_idx, NULL); - } - } -} - -void wireless_pre_task(void) { - static uint8_t mode = 0; - static uint32_t time = 0; - - if (time == 0) { - if ((readPin(BT_MODE_SELECT_PIN) << 1 | readPin(P2P4_MODE_SELECT_PIN)) != mode) { - mode = readPin(BT_MODE_SELECT_PIN) << 1 | readPin(P2P4_MODE_SELECT_PIN); - time = timer_read32(); - } - } - - if ((time && timer_elapsed32(time) > 100) || get_transport() == TRANSPORT_NONE) { - if ((readPin(BT_MODE_SELECT_PIN) << 1 | readPin(P2P4_MODE_SELECT_PIN)) == mode) { - time = 0; - - switch (mode) { - case 0x01: - set_transport(TRANSPORT_BLUETOOTH); - break; - case 0x02: - set_transport(TRANSPORT_P2P4); - break; - case 0x03: - set_transport(TRANSPORT_USB); - break; - default: - break; - } - } else { - mode = readPin(BT_MODE_SELECT_PIN) << 1 | readPin(P2P4_MODE_SELECT_PIN); - time = timer_read32(); - } - } -} diff --git a/keyboards/keychron/common/wireless/keychron_wireless_common.h b/keyboards/keychron/common/wireless/keychron_wireless_common.h deleted file mode 100644 index eedfff8740..0000000000 --- a/keyboards/keychron/common/wireless/keychron_wireless_common.h +++ /dev/null @@ -1,26 +0,0 @@ -/* 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 . - */ - -#include "stdint.h" -#ifdef VIA_ENABLE -# include "via.h" -#endif -#include "quantum_keycodes.h" - -void lkbt51_param_init(void); - -bool process_record_keychron_wireless(uint16_t keycode, keyrecord_t *record); -void keychron_wireless_common_task(void); diff --git a/keyboards/keychron/common/wireless/lkbt51.c b/keyboards/keychron/common/wireless/lkbt51.c deleted file mode 100644 index df380102b3..0000000000 --- a/keyboards/keychron/common/wireless/lkbt51.c +++ /dev/null @@ -1,875 +0,0 @@ -/* 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 . - */ - -#include "quantum.h" -#include "lkbt51.h" -#include "wireless.h" -#include "wireless_event_type.h" -#include "battery.h" -#include "raw_hid.h" -#include "report_buffer.h" -#include "factory_test.h" - -extern void factory_test_send(uint8_t* payload, uint8_t length); - -#ifndef RAW_EPSIZE -# define RAW_EPSIZE 32 -#endif - -#ifndef SPI_SCK_PIN -# define SPI_SCK_PIN A5 -#endif -#ifndef SPI_MISO_PIN -# define SPI_MISO_PIN A6 -#endif -#ifndef SPI_MOSI_PIN -# define SPI_MOSI_PIN A7 -#endif - -#ifndef SPI_CLK_PAL_MODE -# define SPI_CLK_PAL_MODE 5 -#endif -#ifndef SPI_MISO_PAL_MODE -# define SPI_MISO_PAL_MODE 5 -#endif -#ifndef SPI_MOSI_PAL_MODE -# define SPI_MOSI_PAL_MODE 5 -#endif - -#ifndef LKBT51_INT_INPUT_PIN -# error "LKBT51_INT_INPUT_PIN is not defined" -#endif - -#ifndef LKBT51_TX_RETRY_COUNT -# define LKBT51_TX_RETRY_COUNT 3 -#endif - -// clang-format off -enum { - /* HID Report */ - LKBT51_CMD_SEND_KB = 0x11, - LKBT51_CMD_SEND_KB_NKRO = 0x12, - LKBT51_CMD_SEND_CONSUMER = 0x13, - LKBT51_CMD_SEND_SYSTEM = 0x14, - LKBT51_CMD_SEND_FN = 0x15, // Not used currently - LKBT51_CMD_SEND_MOUSE = 0x16, - LKBT51_CMD_SEND_BOOT_KB = 0x17, - /* Bluetooth connections */ - LKBT51_CMD_PAIRING = 0x21, - LKBT51_CMD_CONNECT = 0x22, - LKBT51_CMD_DISCONNECT = 0x23, - LKBT51_CMD_SWITCH_HOST = 0x24, - LKBT51_CMD_READ_STATE_REG = 0x25, - /* Battery */ - LKBT51_CMD_BATTERY_MANAGE = 0x31, - LKBT51_CMD_UPDATE_BAT_LVL = 0x32, - LKBT51_CMD_UPDATE_BAT_STATE = 0x33, - /* Set/get parameters */ - LKBT51_CMD_GET_MODULE_INFO = 0x40, - LKBT51_CMD_SET_CONFIG = 0x41, - LKBT51_CMD_GET_CONFIG = 0x42, - LKBT51_CMD_SET_BDA = 0x43, - LKBT51_CMD_GET_BDA = 0x44, - LKBT51_CMD_SET_NAME = 0x45, - LKBT51_CMD_GET_NAME = 0x46, - LKBT51_CMD_WRTE_CSTM_DATA = 0x49, - /* DFU */ - LKBT51_CMD_GET_DFU_VER = 0x60, - LKBT51_CMD_HAND_SHAKE_TOKEN = 0x61, - LKBT51_CMD_START_DFU = 0x62, - LKBT51_CMD_SEND_FW_DATA = 0x63, - LKBT51_CMD_VERIFY_CRC32 = 0x64, - LKBT51_CMD_SWITCH_FW = 0x65, - /* Factory test */ - LKBT51_CMD_FACTORY_RESET = 0x71, - LKBT51_CMD_IO_TEST = 0x72, - LKBT51_CMD_RADIO_TEST = 0x73, - /* Event */ - LKBT51_EVT_LKBT51_CMD_RECEIVED = 0xA1, - LKBT51_EVT_OTA_RSP = 0xA3, - LKBT51_CONNECTION_EVT_ACK = 0xA4, -}; - -enum { - LKBT51_EVT_ACK = 0xA1, - LKBT51_EVT_QUERY_RSP = 0xA2, - LKBT51_EVT_RESET = 0xB0, - LKBT51_EVT_LE_CONNECTION = 0xB1, - LKBT51_EVT_HOST_TYPE = 0xB2, - LKBT51_EVT_CONNECTION = 0xB3, - LKBT51_EVT_HID_EVENT = 0xB4, - LKBT51_EVT_BATTERY = 0xB5, -}; - -enum { - LKBT51_CONNECTED = 0x20, - LKBT51_DISCOVERABLE = 0x21, - LKBT51_RECONNECTING = 0x22, - LKBT51_DISCONNECTED = 0x23, - LKBT51_PINCODE_ENTRY = 0x24, - LKBT51_EXIT_PINCODE_ENTRY = 0x25, - LKBT51_SLEEP = 0x26 -}; - -enum { - ACK_SUCCESS = 0x00, - ACK_CHECKSUM_ERROR, - ACK_FIFO_HALF_WARNING, - ACK_FIFO_FULL_ERROR, -}; - -enum{ - LK_EVT_MSK_CONNECTION = 0x01 << 0, - LK_EVT_MSK_LED = 0x01 << 1, - LK_EVT_MSK_BATT = 0x01 << 2, - LK_EVT_MSK_RESET = 0x01 << 3, - LK_EVT_MSK_RPT_INTERVAL = 0x01 << 4, - LK_EVT_MSK_MD = 0x01 << 7, -}; - -// clang-format on - -static uint8_t payload[PACKET_MAX_LEN]; -static uint8_t reg_offset = 0xFF; -static uint8_t expect_len = 22; -static uint16_t connection_interval = 1; -static uint32_t wake_time; -static uint32_t factory_reset = 0; - -// clang-format off -wt_func_t wireless_transport = { - lkbt51_init, - lkbt51_connect, - lkbt51_become_discoverable, - lkbt51_disconnect, - lkbt51_send_keyboard, - lkbt51_send_nkro, - lkbt51_send_consumer, - lkbt51_send_system, - lkbt51_send_mouse, - lkbt51_update_bat_lvl, - lkbt51_task -}; -// clang-format on - -/* Init SPI */ -const SPIConfig spicfg = { - .circular = false, - .slave = false, - .data_cb = NULL, - .error_cb = NULL, - .ssport = PAL_PORT(BLUETOOTH_INT_OUTPUT_PIN), - .sspad = PAL_PAD(BLUETOOTH_INT_OUTPUT_PIN), - .cr1 = SPI_CR1_MSTR | SPI_CR1_BR_1 | SPI_CR1_BR_0, - .cr2 = 0U, -}; - -void lkbt51_init(bool wakeup_from_low_power_mode) { -#ifdef LKBT51_RESET_PIN - if (!wakeup_from_low_power_mode) { - setPinOutput(LKBT51_RESET_PIN); - writePinLow(LKBT51_RESET_PIN); - wait_ms(1); - writePinHigh(LKBT51_RESET_PIN); - } -#endif - -#if (HAL_USE_SPI == TRUE) - if (WT_DRIVER.state == SPI_UNINIT) { - setPinOutput(SPI_SCK_PIN); - writePinHigh(SPI_SCK_PIN); - - palSetLineMode(SPI_SCK_PIN, PAL_MODE_ALTERNATE(SPI_CLK_PAL_MODE)); - palSetLineMode(SPI_MISO_PIN, PAL_MODE_ALTERNATE(SPI_MISO_PAL_MODE)); - palSetLineMode(SPI_MOSI_PIN, PAL_MODE_ALTERNATE(SPI_MOSI_PAL_MODE)); - - if (wakeup_from_low_power_mode) { - spiInit(); - return; - } - - spiInit(); - } -#endif - - setPinOutput(BLUETOOTH_INT_OUTPUT_PIN); - writePinHigh(BLUETOOTH_INT_OUTPUT_PIN); - - setPinInputHigh(LKBT51_INT_INPUT_PIN); -} - -static inline void lkbt51_wake(void) { - if (timer_elapsed32(wake_time) > 3000) { - wake_time = timer_read32(); - - palWriteLine(BLUETOOTH_INT_OUTPUT_PIN, 0); - wait_ms(10); - palWriteLine(BLUETOOTH_INT_OUTPUT_PIN, 1); - wait_ms(300); - } -} - -void lkbt51_send_protocol_ver(uint16_t ver) { - uint8_t pkt[PACKET_MAX_LEN] = {0}; - memset(pkt, 0, PACKET_MAX_LEN); - - uint8_t i = 0; - - pkt[i++] = 0x84; - pkt[i++] = 0x7e; - pkt[i++] = 0x00; - pkt[i++] = 0x00; - pkt[i++] = 0xAA; - pkt[i++] = 0x54; - pkt[i++] = ver & 0xFF; - pkt[i++] = (ver >> 8) & 0xFF; - pkt[i++] = (uint8_t)(~0x54); - pkt[i++] = (uint8_t)(~0xAA); - -#if HAL_USE_SPI - expect_len = 10; - spiStart(&WT_DRIVER, &spicfg); - spiSelect(&WT_DRIVER); - spiSend(&WT_DRIVER, i, pkt); - spiUnselectI(&WT_DRIVER); - spiStop(&WT_DRIVER); -#endif -} - -void lkbt51_send_cmd(uint8_t* payload, uint8_t len, bool ack_enable, bool retry) { - static uint8_t sn = 0; - uint8_t i; - uint8_t pkt[PACKET_MAX_LEN] = {0}; - memset(pkt, 0, PACKET_MAX_LEN); - - if (!retry) ++sn; - if (sn == 0) ++sn; - - uint16_t checksum = 0; - for (i = 0; i < len; i++) - checksum += payload[i]; - - i = 0; - pkt[i++] = 0x84; - pkt[i++] = 0x7e; - pkt[i++] = 0x00; - pkt[i++] = 0x00; - pkt[i++] = 0xAA; - pkt[i++] = ack_enable ? 0x56 : 0x55; - pkt[i++] = len + 2; - pkt[i++] = ~(len + 2) & 0xFF; - pkt[i++] = sn; - - memcpy(pkt + i, payload, len); - i += len; - pkt[i++] = checksum & 0xFF; - pkt[i++] = (checksum >> 8) & 0xFF; -#if HAL_USE_SPI - if ((payload[0] & 0xF0) == 0x60) - expect_len = 64; - else - expect_len = 64; - - spiStart(&WT_DRIVER, &spicfg); - spiSelect(&WT_DRIVER); - spiSend(&WT_DRIVER, i, pkt); - spiUnselectI(&WT_DRIVER); - spiStop(&WT_DRIVER); -#endif -} - -void lkbt51_read(uint8_t* payload, uint8_t len) { - uint8_t i; - uint8_t pkt[PACKET_MAX_LEN] = {0}; - memset(pkt, 0, PACKET_MAX_LEN); - - i = 0; - pkt[i++] = 0x84; - pkt[i++] = 0x7f; - pkt[i++] = 0x00; - pkt[i++] = 0x80; - - i += len; - -#if HAL_USE_SPI - spiStart(&WT_DRIVER, &spicfg); - spiSelect(&WT_DRIVER); - spiExchange(&WT_DRIVER, i, pkt, payload); - spiUnselect(&WT_DRIVER); - spiStop(&WT_DRIVER); -#endif -} - -void lkbt51_send_keyboard(uint8_t* report) { - uint8_t i = 0; - memset(payload, 0, PACKET_MAX_LEN); - - payload[i++] = LKBT51_CMD_SEND_KB; - memcpy(payload + i, report, 8); - i += 8; - - lkbt51_send_cmd(payload, i, true, false); -} - -void lkbt51_send_nkro(uint8_t* report) { - uint8_t i = 0; - memset(payload, 0, PACKET_MAX_LEN); - - payload[i++] = LKBT51_CMD_SEND_KB_NKRO; - memcpy(payload + i, report, 20); // NKRO report lenght is limited to 20 bytes - i += 20; - - lkbt51_send_cmd(payload, i, true, false); -} - -void lkbt51_send_consumer(uint16_t report) { - uint8_t i = 0; - memset(payload, 0, PACKET_MAX_LEN); - - payload[i++] = LKBT51_CMD_SEND_CONSUMER; - payload[i++] = report & 0xFF; - payload[i++] = ((report) >> 8) & 0xFF; - i += 4; // QMK doesn't send multiple consumer reports, just skip 2nd and 3rd consumer reports - - lkbt51_send_cmd(payload, i, true, false); -} - -void lkbt51_send_system(uint16_t report) { - uint8_t hid_usage = report & 0xFF; - - if (hid_usage < 0x81 || hid_usage > 0x83) return; - - uint8_t i = 0; - memset(payload, 0, PACKET_MAX_LEN); - - payload[i++] = LKBT51_CMD_SEND_SYSTEM; - payload[i++] = 0x01 << (hid_usage - 0x81); - - lkbt51_send_cmd(payload, i, true, false); -} - -void lkbt51_send_mouse(uint8_t* report) { - uint8_t i = 0; - memset(payload, 0, PACKET_MAX_LEN); - - payload[i++] = LKBT51_CMD_SEND_MOUSE; // Cmd type - payload[i++] = report[1]; // Button - payload[i++] = report[2]; // X - payload[i++] = (report[2] & 0x80) ? 0xff : 0x00; // ckbt51 use 16bit report, set high byte - payload[i++] = report[3]; // Y - payload[i++] = (report[3] & 0x80) ? 0xff : 0x00; // ckbt51 use 16bit report, set high byte - payload[i++] = report[4]; // V wheel - payload[i++] = report[5]; // H wheel - - lkbt51_send_cmd(payload, i, false, false); -} - -/* Send ack to connection event, wireless module will retry 2 times if no ack received */ -void lkbt51_send_conn_evt_ack(void) { - uint8_t i = 0; - memset(payload, 0, PACKET_MAX_LEN); - - payload[i++] = LKBT51_CONNECTION_EVT_ACK; - - lkbt51_send_cmd(payload, i, false, false); -} - -void lkbt51_become_discoverable(uint8_t host_idx, void* param) { - uint8_t i = 0; - memset(payload, 0, PACKET_MAX_LEN); - - pairing_param_t default_pairing_param = {0, 0, PAIRING_MODE_LESC_OR_SSP, BT_MODE_CLASSIC, 0, NULL}; - - if (param == NULL) { - param = &default_pairing_param; - } - pairing_param_t* p = (pairing_param_t*)param; - - payload[i++] = LKBT51_CMD_PAIRING; // Cmd type - payload[i++] = host_idx; // Host Index - payload[i++] = p->timeout & 0xFF; // Timeout - payload[i++] = (p->timeout >> 8) & 0xFF; - payload[i++] = p->pairingMode; - payload[i++] = p->BRorLE; // BR/LE - payload[i++] = p->txPower; // LE TX POWER - if (p->leName) { - memcpy(&payload[i], p->leName, strlen(p->leName)); - i += strlen(p->leName); - } - - lkbt51_wake(); - lkbt51_send_cmd(payload, i, true, false); -} - -/* Timeout : 2 ~ 255 seconds */ -void lkbt51_connect(uint8_t hostIndex, uint16_t timeout) { - uint8_t i = 0; - memset(payload, 0, PACKET_MAX_LEN); - - payload[i++] = LKBT51_CMD_CONNECT; - payload[i++] = hostIndex; // Host index - payload[i++] = timeout & 0xFF; // Timeout - payload[i++] = (timeout >> 8) & 0xFF; - - lkbt51_wake(); - lkbt51_send_cmd(payload, i, true, false); -} - -void lkbt51_disconnect(void) { - uint8_t i = 0; - memset(payload, 0, PACKET_MAX_LEN); - - payload[i++] = LKBT51_CMD_DISCONNECT; - payload[i++] = 0; // Sleep mode - - if (WT_DRIVER.state != SPI_READY) - spiStart(&WT_DRIVER, &spicfg); - spiSelect(&SPID1); - wait_ms(30); - // spiUnselect(&SPID1); - wait_ms(70); - - lkbt51_send_cmd(payload, i, true, false); -} - -void lkbt51_switch_host(uint8_t hostIndex) { - uint8_t i = 0; - memset(payload, 0, PACKET_MAX_LEN); - - payload[i++] = LKBT51_CMD_SWITCH_HOST; - payload[i++] = hostIndex; - - lkbt51_send_cmd(payload, i, true, false); -} - -void lkbt51_read_state_reg(uint8_t reg, uint8_t len) { - uint8_t i = 0; - memset(payload, 0, PACKET_MAX_LEN); - - payload[i++] = LKBT51_CMD_READ_STATE_REG; - payload[i++] = reg_offset = reg; - payload[i++] = len; - - // TODO - lkbt51_send_cmd(payload, i, false, false); -} - -void lkbt51_update_bat_lvl(uint8_t bat_lvl) { - uint8_t i = 0; - memset(payload, 0, PACKET_MAX_LEN); - - payload[i++] = LKBT51_CMD_UPDATE_BAT_LVL; - payload[i++] = bat_lvl; - lkbt51_send_cmd(payload, i, false, false); -} - -void lkbt51_update_bat_state(uint8_t bat_state) { - uint8_t i = 0; - memset(payload, 0, PACKET_MAX_LEN); - - payload[i++] = LKBT51_CMD_UPDATE_BAT_STATE; - payload[i++] = bat_state; - lkbt51_send_cmd(payload, i, false, false); -} - -void lkbt51_get_info(module_info_t* info) { - uint8_t i = 0; - memset(payload, 0, PACKET_MAX_LEN); - - payload[i++] = LKBT51_CMD_GET_MODULE_INFO; - lkbt51_send_cmd(payload, i, false, false); -} - -void lkbt51_set_param(module_param_t* param) { - uint8_t i = 0; - memset(payload, 0, PACKET_MAX_LEN); - - payload[i++] = LKBT51_CMD_SET_CONFIG; - memcpy(payload + i, param, sizeof(module_param_t)); - i += sizeof(module_param_t); - - lkbt51_send_cmd(payload, i, false, false); -} - -void lkbt51_get_param(module_param_t* param) { - uint8_t i = 0; - memset(payload, 0, PACKET_MAX_LEN); - - payload[i++] = LKBT51_CMD_GET_CONFIG; - - lkbt51_send_cmd(payload, i, false, false); -} - -void lkbt51_set_local_name(const char* name) { - uint8_t i = 0; - uint8_t len = strlen(name); - memset(payload, 0, PACKET_MAX_LEN); - - payload[i++] = LKBT51_CMD_SET_NAME; - memcpy(payload + i, name, len); - i += len; - lkbt51_send_cmd(payload, i, false, false); -} - -void lkbt51_get_local_name(void) { - uint8_t i = 0; - memset(payload, 0, PACKET_MAX_LEN); - - payload[i++] = LKBT51_CMD_GET_NAME; - - lkbt51_send_cmd(payload, i, false, false); -} - -void lkbt51_factory_reset(uint8_t p2p4g_clr_msk) { - uint8_t i = 0; - memset(payload, 0, PACKET_MAX_LEN); - - payload[i++] = LKBT51_CMD_FACTORY_RESET; - payload[i++] = p2p4g_clr_msk; - - lkbt51_wake(); - lkbt51_send_cmd(payload, i, false, false); - factory_reset = timer_read32(); -} - -void lkbt51_int_pin_test(bool enable) { - uint8_t i = 0; - memset(payload, 0, PACKET_MAX_LEN); - payload[i++] = LKBT51_CMD_IO_TEST; - payload[i++] = enable; - - lkbt51_send_cmd(payload, i, false, false); -} - -void lkbt51_radio_test(uint8_t channel) { - uint8_t i = 0; - memset(payload, 0, PACKET_MAX_LEN); - payload[i++] = LKBT51_CMD_RADIO_TEST; - payload[i++] = channel; - payload[i++] = 0; - - lkbt51_send_cmd(payload, i, false, false); -} - -bool lkbt51_read_customize_data(uint8_t* data, uint8_t len) { - uint8_t i; - uint8_t buf[20] = {0}; - - i = 0; - buf[i++] = 0x84; - buf[i++] = 0x7a; - buf[i++] = 0x00; - buf[i++] = 0x80; - -#if HAL_USE_SPI - spiStart(&WT_DRIVER, &spicfg); - spiSelect(&WT_DRIVER); - spiExchange(&WT_DRIVER, 20, buf, payload); - uint16_t state = buf[5] | (buf[6] << 8); - if (state == 0x9527) spiExchange(&WT_DRIVER, len, data, payload); - spiUnselect(&WT_DRIVER); - spiStop(&WT_DRIVER); -#endif - - return true; -} - -void lkbt51_write_customize_data(uint8_t* data, uint8_t len) { - uint8_t i; - uint8_t pkt[PACKET_MAX_LEN] = {0}; - - i = 0; - pkt[i++] = 0x84; - pkt[i++] = 0x7a; - pkt[i++] = 0x00; - pkt[i++] = 0x00; - -#if HAL_USE_SPI - spiStart(&WT_DRIVER, &spicfg); - spiSelect(&WT_DRIVER); - spiSend(&WT_DRIVER, i, pkt); - spiSend(&WT_DRIVER, len, data); - spiUnselectI(&WT_DRIVER); - spiStop(&WT_DRIVER); -#endif - - i = 0; - memset(payload, 0, PACKET_MAX_LEN); - payload[i++] = LKBT51_CMD_WRTE_CSTM_DATA; - - lkbt51_send_cmd(payload, i, false, false); -} -#ifdef RAW_ENABLE -void lkbt51_dfu_tx(uint8_t rsp, uint8_t* data, uint8_t len, uint8_t sn) { - uint16_t checksum = 0; - uint8_t buf[RAW_EPSIZE] = {0}; - uint8_t i = 0; - - buf[i++] = 0x03; - buf[i++] = 0xAA; - buf[i++] = 0x57; - buf[i++] = len; - buf[i++] = ~len; - buf[i++] = sn; - buf[i++] = rsp; - memcpy(&buf[i], data, len); - i += len; - - for (uint8_t k = 0; k < i; k++) - checksum += buf[i]; - - raw_hid_send(buf, RAW_EPSIZE); - - if (len > 25) { - i = 0; - memset(buf, 0, RAW_EPSIZE); - buf[i++] = 0x03; - memcpy(&buf[i], data + 25, len - 25); - i = i + len - 25; - raw_hid_send(buf, RAW_EPSIZE); - } -} -#endif -void lkbt51_dfu_rx(uint8_t* data, uint8_t length) { - if (data[0] == 0xAA && (data[1] == 0x55 || data[1] == 0x56) && data[2] == (~data[3] & 0xFF)) { - uint16_t checksum = 0; - uint8_t payload_len = data[2]; - - /* Check payload_len validity */ - if (payload_len > RAW_EPSIZE - PACKECT_HEADER_LEN) return; - - uint8_t* payload = &data[PACKECT_HEADER_LEN]; - - for (uint8_t i = 0; i < payload_len - 2; i++) { - checksum += payload[i]; - } - - /* Verify checksum */ - if ((checksum & 0xFF) != payload[payload_len - 2] || checksum >> 8 != payload[payload_len - 1]) return; - static uint8_t sn = 0; - - bool retry = true; - if (sn != data[4]) { - sn = data[4]; - retry = false; - } - - if ((payload[0] & 0xF0) == 0x60) { - lkbt51_wake(); - lkbt51_send_cmd(payload, payload_len - 2, data[1] == 0x56, retry); - } - } -} - -static void ack_handler(uint8_t* data, uint8_t len) { - switch (data[1]) { - case LKBT51_CMD_SEND_KB: - case LKBT51_CMD_SEND_KB_NKRO: - case LKBT51_CMD_SEND_CONSUMER: - case LKBT51_CMD_SEND_SYSTEM: - case LKBT51_CMD_SEND_MOUSE: - switch (data[2]) { - case ACK_SUCCESS: - report_buffer_set_retry(0); - report_buffer_set_inverval(connection_interval); - break; - case ACK_FIFO_HALF_WARNING: - report_buffer_set_retry(0); - report_buffer_set_inverval(connection_interval + 5); - break; - case ACK_FIFO_FULL_ERROR: - report_buffer_set_inverval(connection_interval + 10); - break; - } - break; - default: - break; - } -} - -static void query_rsp_handler(uint8_t* data, uint8_t len) { - if (data[2]) return; - - switch (data[1]) { - case LKBT51_CMD_IO_TEST: - factory_test_send(data, len); - break; - default: - break; - } -} - -static void lkbt51_event_handler(uint8_t evt_type, uint8_t* data, uint8_t len, uint8_t sn) { - wireless_event_t event = {0}; - - switch (evt_type) { - case LKBT51_EVT_ACK: - ack_handler(data, len); - break; - case LKBT51_EVT_RESET: - kc_printf("LKBT51_EVT_RESET\n"); - event.evt_type = EVT_RESET; - event.params.reason = data[0]; - break; - case LKBT51_EVT_LE_CONNECTION: - kc_printf("LKBT51_EVT_LE_CONNECTION\n"); - break; - case LKBT51_EVT_HOST_TYPE: - kc_printf("LKBT51_EVT_HOST_TYPE\n"); - break; - case LKBT51_EVT_HID_EVENT: - kc_printf("LKBT51_EVT_HID_EVENT\n"); - event.evt_type = EVT_HID_INDICATOR; - event.params.led = data[0]; - break; - case LKBT51_EVT_QUERY_RSP: - kc_printf("LKBT51_EVT_QUERY_RSP\n\r"); - query_rsp_handler(data, len); - break; - case LKBT51_EVT_OTA_RSP: -#ifdef RAW_ENABLE - kc_printf("LKBT51_EVT_OTA_RSP\n"); - lkbt51_dfu_tx(LKBT51_EVT_OTA_RSP, data, len, sn); -#endif - break; - default: - kc_printf("Unknown event!!!\n"); - break; - } - - if (event.evt_type) wireless_event_enqueue(event); -} - -void lkbt51_task(void) { -#define VALID_DATA_START_INDEX 4 -#define BUFFER_SIZE 64 - - static bool wait_for_new_pkt = true; - static uint8_t len = 0xff; - static uint8_t sn = 0; - - if (readPin(LKBT51_INT_INPUT_PIN) == 0) { - uint8_t buf[BUFFER_SIZE] = {0}; - lkbt51_read(buf, expect_len); - - uint8_t* pbuf = buf + VALID_DATA_START_INDEX; - - if (pbuf[0] == 0xAA && pbuf[1] == 0x54 && pbuf[4] == (uint8_t)(~0x54) && pbuf[5] == (uint8_t)(~0xAA)) { - uint16_t protol_ver = pbuf[3] << 8 | pbuf[2]; - kc_printf("protol_ver: %x\n\r", protol_ver); - (void)protol_ver; - } else if (pbuf[0] == 0xAA) { - wireless_event_t event = {0}; - uint8_t evt_mask = pbuf[1]; - - if (evt_mask & LK_EVT_MSK_RESET) { - event.evt_type = EVT_RESET; - event.params.reason = pbuf[2]; - wireless_event_enqueue(event); - } - - if (evt_mask & LK_EVT_MSK_CONNECTION) { - lkbt51_send_conn_evt_ack(); - switch (pbuf[2]) { - case LKBT51_CONNECTED: - event.evt_type = EVT_CONNECTED; - break; - case LKBT51_DISCOVERABLE: - event.evt_type = EVT_DISCOVERABLE; - break; - case LKBT51_RECONNECTING: - event.evt_type = EVT_RECONNECTING; - break; - case LKBT51_DISCONNECTED: - event.evt_type = EVT_DISCONNECTED; - if (factory_reset && timer_elapsed32(factory_reset) < 3000) { - factory_reset = 0; - event.data = 1; - } - break; - case LKBT51_PINCODE_ENTRY: - event.evt_type = EVT_BT_PINCODE_ENTRY; - break; - case LKBT51_EXIT_PINCODE_ENTRY: - event.evt_type = EVT_EXIT_BT_PINCODE_ENTRY; - break; - case LKBT51_SLEEP: - event.evt_type = EVT_SLEEP; - break; - } - event.params.hostIndex = pbuf[3]; - - wireless_event_enqueue(event); - } - - if (evt_mask & LK_EVT_MSK_LED) { - memset(&event, 0, sizeof(event)); - event.evt_type = EVT_HID_INDICATOR; - event.params.led = pbuf[4]; - wireless_event_enqueue(event); - } - - if (evt_mask & LK_EVT_MSK_RPT_INTERVAL) { - uint32_t interval; - if (pbuf[8] & 0x80) { - interval = (pbuf[8] & 0x7F) * 1250; - } else { - interval = (pbuf[8] & 0x7F) * 125; - } - - connection_interval = interval / 1000; - if (connection_interval > 7) connection_interval /= 3; - - memset(&event, 0, sizeof(event)); - event.evt_type = EVT_CONECTION_INTERVAL; - event.params.interval = connection_interval; - wireless_event_enqueue(event); - } - - if (evt_mask & LK_EVT_MSK_BATT) { - battery_calculate_voltage(true, pbuf[6] << 8 | pbuf[5]); - } - } - - pbuf = buf; - if (wait_for_new_pkt) { - for (uint8_t i = 10; i < BUFFER_SIZE - 5; i++) { - if (buf[i] == 0xAA && buf[i + 1] == 0x57 // Packet Head - && (~buf[i + 2] & 0xFF) == buf[i + 3]) { // Check wheather len is valid - len = buf[i + 2]; - sn = buf[i + 4]; - pbuf = &buf[i + 5]; - wait_for_new_pkt = false; - } - } - } - - if (!wait_for_new_pkt && BUFFER_SIZE - 5 >= len) { - wait_for_new_pkt = true; - - uint16_t checksum = 0; - for (int i = 0; i < len - 2; i++) { - checksum += pbuf[i]; - } - - if ((checksum & 0xff) == pbuf[len - 2] && ((checksum >> 8) & 0xff) == pbuf[len - 1]) { - lkbt51_event_handler(pbuf[0], pbuf + 1, len - 3, sn); - } else { - // TODO: Error handle - } - } - } -} diff --git a/keyboards/keychron/common/wireless/lkbt51.h b/keyboards/keychron/common/wireless/lkbt51.h deleted file mode 100644 index 529a7813bd..0000000000 --- a/keyboards/keychron/common/wireless/lkbt51.h +++ /dev/null @@ -1,131 +0,0 @@ -/* 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 . - */ - -#pragma once - -#include "stdint.h" -#include "hal.h" - -#ifndef WT_DRIVER -# define WT_DRIVER SPID1 -#endif - -// Error checking -#if HAL_USE_SPI == FALSE -# error "Please enable SPI to use LKBT51" -#endif - -#if !STM32_SPI_USE_SPI1 && !STM32_SPI_USE_SPI2 && !STM32_SPI_USE_SPI3 -# error "WT driver activated but no SPI peripheral assigned" -#endif - -#define PACKECT_HEADER_LEN 5 -#define BDA_LEN 6 -#define PACKET_MAX_LEN 64 -#define P24G_INDEX 24 - -enum { - PAIRING_MODE_DEFAULT = 0x00, - PAIRING_MODE_JUST_WORK, - PAIRING_MODE_PASSKEY_ENTRY, - PAIRING_MODE_LESC_OR_SSP, - PAIRING_MODE_INVALID, -}; - -enum { - BT_MODE_DEFAUL, - BT_MODE_CLASSIC, - BT_MODE_LE, - BT_MODE_INVALID, -}; - -typedef struct { - uint8_t hostIndex; - uint16_t timeout; /* Pairing timeout, valid value range from 30 to 3600 seconds, 0 for default */ - uint8_t pairingMode; /* 0: default, 1: Just Works, 2: Passkey Entry */ - uint8_t BRorLE; /* Only available for dual mode module. Keep 0 for single mode module */ - uint8_t txPower; /* Only available for BLE module */ - const char* leName; /* Only available for BLE module */ -} pairing_param_t; - -typedef struct { - uint8_t type; - uint16_t full_votage; - uint16_t empty_voltage; - uint16_t shutdown_voltage; -} battery_param_t; - -typedef struct { - uint8_t model_name[11]; - uint8_t mode; - uint8_t bluetooth_version; - uint8_t firmware_version[11]; - uint8_t hardware_version[11]; - uint16_t cmd_set_verson; -} __attribute__((packed)) module_info_t; - -typedef struct { - uint8_t event_mode; /* Must be 0x02 */ - uint16_t connected_idle_timeout; - uint16_t pairing_timeout; /* Range: 30 ~ 3600 second, 0 for default */ - uint8_t pairing_mode; /* 0: default, 1: Just Works, 2: Passkey Entry */ - uint16_t reconnect_timeout; /* 0: default, 0xFF: Unlimited time, 2 ~ 254 seconds */ - uint8_t report_rate; /* 90 or 133 */ - uint8_t rsvd1; - uint8_t rsvd2; - uint8_t vendor_id_source; /* 0: From Bluetooth SIG, 1: From USB-IF */ - uint16_t verndor_id; /* No effect, the vendor ID is 0x3434 */ - uint16_t product_id; - /* Below parametes is only available for BLE module */ - uint16_t le_connection_interval_min; - uint16_t le_connection_interval_max; - uint16_t le_connection_interval_timeout; -} __attribute__((packed)) module_param_t; - -void lkbt51_init(bool wakeup_from_low_power_mode); -void lkbt51_send_protocol_ver(uint16_t ver); - -void lkbt51_send_cmd(uint8_t* payload, uint8_t len, bool ack_enable, bool retry); - -void lkbt51_send_keyboard(uint8_t* report); -void lkbt51_send_nkro(uint8_t* report); -void lkbt51_send_consumer(uint16_t report); -void lkbt51_send_system(uint16_t report); -void lkbt51_send_mouse(uint8_t* report); - -void lkbt51_become_discoverable(uint8_t host_idx, void* param); -void lkbt51_connect(uint8_t hostIndex, uint16_t timeout); -void lkbt51_disconnect(void); -void lkbt51_switch_host(uint8_t hostIndex); -void lkbt51_read_state_reg(uint8_t reg, uint8_t len); - -void lkbt51_update_bat_lvl(uint8_t bat_lvl); -void lkbt51_update_bat_state(uint8_t bat_state); - -void lkbt51_get_info(module_info_t* info); -void lkbt51_set_param(module_param_t* param); -void lkbt51_get_param(module_param_t* param); -void lkbt51_set_local_name(const char* name); -void lkbt51_get_local_name(void); - -void lkbt51_factory_reset(uint8_t p2p4g_clr_msk); -void lkbt51_int_pin_test(bool enable); -void lkbt51_dfu_rx(uint8_t* data, uint8_t length); -void lkbt51_radio_test(uint8_t channel); -void lkbt51_write_customize_data(uint8_t* data, uint8_t len); -bool lkbt51_read_customize_data(uint8_t* data, uint8_t len); - -void lkbt51_task(void); diff --git a/keyboards/keychron/common/wireless/lpm.c b/keyboards/keychron/common/wireless/lpm.c deleted file mode 100644 index c6f9a12c1c..0000000000 --- a/keyboards/keychron/common/wireless/lpm.c +++ /dev/null @@ -1,298 +0,0 @@ -/* Copyright 2022~2023 @ lokher (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 . - */ - -/****************************************************************************** - * - * Filename: lpm.c - * - * Description: Contains low power mode implementation - * - ******************************************************************************/ - -#include "quantum.h" -#if defined(PROTOCOL_CHIBIOS) -# include -#endif -#include "debounce.h" -#include "wireless.h" -#include "indicator.h" -#include "lpm.h" -#include "transport.h" -#include "battery.h" -#include "report_buffer.h" -#include "keychron_common.h" - -extern matrix_row_t matrix[MATRIX_ROWS]; -extern wt_func_t wireless_transport; - -static uint32_t lpm_timer_buffer; -static bool lpm_time_up = false; -#ifndef OPTICAL_SWITCH -static matrix_row_t empty_matrix[MATRIX_ROWS] = {0}; -#endif - -pin_t pins_row[MATRIX_ROWS] = MATRIX_ROW_PINS; -pin_t pins_col[MATRIX_COLS] = MATRIX_COL_PINS; -; - -__attribute__((weak)) void select_all_cols(void) { - for (uint8_t i = 0; i < MATRIX_COLS; i++) { - if (pins_col[i] == NO_PIN) continue; - setPinOutput(pins_col[i]); - writePinLow(pins_col[i]); - } -} - -void lpm_init(void) { -#ifdef USB_POWER_SENSE_PIN -# if (USB_POWER_CONNECTED_LEVEL == 0) - setPinInputHigh(USB_POWER_SENSE_PIN); -# else - setPinInputLow(USB_POWER_SENSE_PIN); -# endif -#endif - lpm_timer_reset(); -} - -inline void lpm_timer_reset(void) { - lpm_time_up = false; - lpm_timer_buffer = timer_read32(); -} - -void lpm_timer_stop(void) { - lpm_time_up = false; - lpm_timer_buffer = 0; -} - -static inline bool lpm_any_matrix_action(void) { -#ifdef OPTICAL_SWITCH - bool any_key = false; - for (uint8_t i = 0; i < MATRIX_ROWS; i++) - if (matrix_get_row(i) != 0) { - any_key = true; - } - return any_key; -#else - return memcmp(matrix, empty_matrix, sizeof(empty_matrix)); -#endif -} - -/* Implement of entering low power mode and wakeup varies per mcu or platform */ -__attribute__((weak)) void enter_power_mode(pm_t mode) {} - -__attribute__((weak)) bool usb_power_connected(void) { -#ifdef USB_POWER_SENSE_PIN - return readPin(USB_POWER_SENSE_PIN) == USB_POWER_CONNECTED_LEVEL; -#else - return true; -#endif -} - -__attribute__((weak)) bool lpm_is_kb_idle(void) { - return true; -} - -__attribute__((weak)) bool lpm_set(pm_t mode) { - return false; -} - -bool pre_enter_low_power_mode(pm_t mode) { -#if defined(KEEP_USB_CONNECTION_IN_WIRELESS_MODE) - /* Don't enter low power mode if attached to the host */ - if (mode > PM_SLEEP && usb_power_connected()) return false; -#endif - - if (!lpm_set(mode)) return false; - -#if defined(KEEP_USB_CONNECTION_IN_WIRELESS_MODE) - /* Usb unit is actived and running, stop and disconnect first */ - usbStop(&USBD1); - usbDisconnectBus(&USBD1); - - /* Isolate USB to save power.*/ - // PWR->CR2 &= ~PWR_CR2_USV; /*PWR_CR2_USV is available on STM32L4x2xx and STM32L4x3xx devices only. */ -#endif - - palEnableLineEvent(LKBT51_INT_INPUT_PIN, PAL_EVENT_MODE_FALLING_EDGE); -#ifdef USB_POWER_SENSE_PIN - palEnableLineEvent(USB_POWER_SENSE_PIN, PAL_EVENT_MODE_BOTH_EDGES); -#endif -#ifdef P2P4_MODE_SELECT_PIN - palEnableLineEvent(P2P4_MODE_SELECT_PIN, PAL_EVENT_MODE_BOTH_EDGES); -#endif -#ifdef BT_MODE_SELECT_PIN - palEnableLineEvent(BT_MODE_SELECT_PIN, PAL_EVENT_MODE_BOTH_EDGES); -#endif - -#ifdef OPTICAL_SWITCH - - for (uint8_t x = 0; x < MATRIX_ROWS; x++) { - if (pins_row[x] != NO_PIN) { - writePinLow(pins_row[x]); - } - } - - for (uint8_t x = 0; x < MATRIX_COLS; x++) { - if (pins_col[x] != NO_PIN) { - setPinInputLow(pins_col[x]); - } - } -#else - - /* Enable key matrix wake up */ - for (uint8_t x = 0; x < MATRIX_ROWS; x++) { - if (pins_row[x] != NO_PIN) { - palEnableLineEvent(pins_row[x], PAL_EVENT_MODE_BOTH_EDGES); - } - } -#endif - select_all_cols(); - -#if (HAL_USE_SPI == TRUE) - palSetLineMode(SPI_SCK_PIN, PAL_MODE_INPUT_PULLDOWN); - palSetLineMode(SPI_MISO_PIN, PAL_MODE_INPUT_PULLDOWN); - palSetLineMode(SPI_MOSI_PIN, PAL_MODE_INPUT_PULLDOWN); -#endif - palSetLineMode(A12, PAL_MODE_INPUT_PULLDOWN); - palSetLineMode(A11, PAL_MODE_INPUT_PULLDOWN); - -#if defined(DIP_SWITCH_PINS) -# define NUMBER_OF_DIP_SWITCHES (sizeof(dip_switch_pad) / sizeof(pin_t)) - static pin_t dip_switch_pad[] = DIP_SWITCH_PINS; - - for (uint8_t i = 0; i < NUMBER_OF_DIP_SWITCHES; i++) { - setPinInputLow(dip_switch_pad[i]); - } -#endif - battery_stop(); - - return true; -} - -static inline void lpm_wakeup(void) { - palSetLineMode(A11, PAL_STM32_OTYPE_PUSHPULL | PAL_STM32_OSPEED_HIGHEST | PAL_STM32_PUPDR_FLOATING | PAL_MODE_ALTERNATE(10U)); - palSetLineMode(A12, PAL_STM32_OTYPE_PUSHPULL | PAL_STM32_OSPEED_HIGHEST | PAL_STM32_PUPDR_FLOATING | PAL_MODE_ALTERNATE(10U)); - -#if (HAL_USE_SPI == TRUE) - palSetLineMode(SPI_SCK_PIN, PAL_MODE_ALTERNATE(5)); - palSetLineMode(SPI_MISO_PIN, PAL_MODE_ALTERNATE(5)); - palSetLineMode(SPI_MOSI_PIN, PAL_MODE_ALTERNATE(5)); -#endif - - halInit(); - -#if defined(DIP_SWITCH_PINS) - /* Init dip switch as early as possible, and read it later. */ - dip_switch_init(); -#endif - -#ifdef ENCODER_ENABLE - encoder_cb_init(); -#endif - - if (wireless_transport.init) wireless_transport.init(true); - battery_init(); - - /* Disable all wake up pins */ - for (uint8_t x = 0; x < MATRIX_ROWS; x++) { - if (pins_row[x] != NO_PIN) { - palDisableLineEvent(pins_row[x]); - } - } - - palDisableLineEvent(LKBT51_INT_INPUT_PIN); -#ifdef P2P4_MODE_SELECT_PIN - palDisableLineEvent(P2P4_MODE_SELECT_PIN); -#endif -#ifdef BT_MODE_SELECT_PIN - palDisableLineEvent(BT_MODE_SELECT_PIN); -#endif -#ifdef USB_POWER_SENSE_PIN - palDisableLineEvent(USB_POWER_SENSE_PIN); - -# if defined(KEEP_USB_CONNECTION_IN_WIRELESS_MODE) - if (usb_power_connected()) { - usb_event_queue_init(); - init_usb_driver(&USB_DRIVER); - } -# endif - -#endif - - - /* Call debounce_free() to avoiding memory leak of debounce_counters as debounce_init() - invoked in matrix_init() alloc new memory to debounce_counters */ - debounce_free(); - matrix_init(); - -#ifdef ENABLE_RGB_MATRIX_PIXEL_RAIN - extern void PIXEL_RAIN_init(void); - PIXEL_RAIN_init(); -#endif - -#ifdef ENABLE_RGB_MATRIX_PIXEL_FLOW - extern void PIXEL_FLOW_init(void); - PIXEL_FLOW_init(); -#endif - -#ifdef ENABLE_RGB_MATRIX_PIXEL_FRACTAL - extern void PIXEL_FRACTAL_init(void); - PIXEL_FRACTAL_init(); -#endif - -#if defined(DIP_SWITCH_PINS) - dip_switch_read(true); -#endif -} - -void lpm_task(void) { - if (!lpm_time_up && sync_timer_elapsed32(lpm_timer_buffer) > RUN_MODE_PROCESS_TIME) { - lpm_time_up = true; - lpm_timer_buffer = 0; - } - - if (usb_power_connected() && USBD1.state == USB_STOP) { - usb_event_queue_init(); - init_usb_driver(&USB_DRIVER); - } - - if ((get_transport() == TRANSPORT_BLUETOOTH || get_transport() == TRANSPORT_P2P4) && lpm_time_up && !indicator_is_running() && lpm_is_kb_idle()) { -#if defined(LED_MATRIX_ENABLE) || defined(RGB_MATRIX_ENABLE) - if ( -# ifdef LED_MATRIX_ENABLE - !led_matrix_is_enabled() || - (led_matrix_is_enabled() && led_matrix_is_driver_shutdown()) -# endif -# ifdef RGB_MATRIX_ENABLE - !rgb_matrix_is_enabled() || - (rgb_matrix_is_enabled() && rgb_matrix_is_driver_shutdown()) -# endif - ) -#endif - { - if (!lpm_any_matrix_action()) { - if (pre_enter_low_power_mode(LOW_POWER_MODE)) { - enter_power_mode(LOW_POWER_MODE); - - lpm_wakeup(); - lpm_timer_reset(); - report_buffer_init(); - lpm_set(PM_RUN); - } - } - } - } -} diff --git a/keyboards/keychron/common/wireless/lpm.h b/keyboards/keychron/common/wireless/lpm.h deleted file mode 100644 index ca6fc5d450..0000000000 --- a/keyboards/keychron/common/wireless/lpm.h +++ /dev/null @@ -1,36 +0,0 @@ -/* Copyright 2023 @ lokher (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 . - */ - -#pragma once - -#ifndef RUN_MODE_PROCESS_TIME -# define RUN_MODE_PROCESS_TIME 1000 -#endif - -typedef enum { - PM_RUN, - PM_SLEEP, - PM_STOP, - PM_STANDBY, -} pm_t; - -void lpm_init(void); -void lpm_timer_reset(void); -void lpm_timer_stop(void); -bool usb_power_connected(void); -bool lpm_is_kb_idle(void); -void enter_power_mode(pm_t mode); -void lpm_task(void); diff --git a/keyboards/keychron/common/wireless/lpm_stm32f401.c b/keyboards/keychron/common/wireless/lpm_stm32f401.c deleted file mode 100644 index 7a7e59109b..0000000000 --- a/keyboards/keychron/common/wireless/lpm_stm32f401.c +++ /dev/null @@ -1,114 +0,0 @@ -/* Copyright 2023 @ lokher (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 . - */ - -/****************************************************************************** - * - * Filename: lpm_stm32f401.c - * - * Description: Contains low power mode implementation - * - ******************************************************************************/ - -#include "quantum.h" -#include -#include "wireless.h" -#include "lpm.h" -#include "lpm_stm32f401.h" -#include "config.h" - -static pm_t power_mode = PM_RUN; - -bool lpm_set(pm_t mode) { - bool ret = true; - - switch (mode) { - case PM_SLEEP: - /* Wake source: Any interrupt or event */ - if (power_mode != PM_RUN) - ret = false; - else - SCB->SCR &= ~SCB_SCR_SLEEPDEEP_Msk; - break; - - case PM_STOP: - /* Wake source: Reset pin, all I/Os, BOR, PVD, PVM, RTC, LCD, IWDG, - COMPx, USARTx, LPUART1, I2Cx, LPTIMx, USB, SWPMI */ - if (power_mode != PM_RUN) - ret = false; - else { - SCB->SCR |= SCB_SCR_SLEEPDEEP_Msk; - PWR->CR |= -#if STOP_MODE_MAIN_REGULATOR_LOW_VOLTAGE - PWR_CR_MRLVDS | -#endif -#if STOP_MODE_LOW_POWER_REGULATOR_LOW_VOLTAG - PWR_CR_LPLVDS | -#endif -#if STOP_MODE_FLASH_POWER_DOWN - PWR_CR_FPDS | -#endif -#if STOP_MODE_LOW_POWER_DEEPSLEEP - PWR_CR_LPDS | -#endif - 0; - } - break; - - case PM_STANDBY: - if (power_mode != PM_RUN) - ret = false; - else { - SCB->SCR |= SCB_SCR_SLEEPDEEP_Msk; - } - break; - - default: - break; - } - power_mode = mode; - - return ret; -} - -void enter_power_mode(pm_t mode) { -#if STM32_HSE_ENABLED - /* Switch to HSI */ - RCC->CFGR = (RCC->CFGR & (~STM32_SW_MASK)) | STM32_SW_HSI; - while ((RCC->CFGR & RCC_CFGR_SWS) != (STM32_SW_HSI << 2)) - ; - - /* Set HSE off */ - RCC->CR &= ~RCC_CR_HSEON; - while ((RCC->CR & RCC_CR_HSERDY)) - ; - - /* To avoid power consumption of floating GPIO */ - palSetLineMode(H0, PAL_MODE_INPUT_PULLDOWN); - palSetLineMode(H1, PAL_MODE_INPUT_PULLDOWN); -#endif - - __WFI(); - - SCB->SCR &= ~SCB_SCR_SLEEPDEEP_Msk; - - writePinLow(BLUETOOTH_INT_OUTPUT_PIN); - stm32_clock_init(); - writePinHigh(BLUETOOTH_INT_OUTPUT_PIN); -} - -void usb_power_connect(void) {} - -void usb_power_disconnect(void) {} diff --git a/keyboards/keychron/common/wireless/lpm_stm32f401.h b/keyboards/keychron/common/wireless/lpm_stm32f401.h deleted file mode 100644 index 3b25c3d57c..0000000000 --- a/keyboards/keychron/common/wireless/lpm_stm32f401.h +++ /dev/null @@ -1,33 +0,0 @@ -/* Copyright 2023 @ lokher (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 . - */ - -#pragma once - -#ifndef STOP_MODE_MAIN_REGULATOR_LOW_VOLTAGE -# define STOP_MODE_MAIN_REGULATOR_LOW_VOLTAGE TRUE -#endif - -#ifndef STOP_MODE_LOW_POWER_REGULATOR_LOW_VOLTAG -# define STOP_MODE_LOW_POWER_REGULATOR_LOW_VOLTAG TRUE -#endif - -#ifndef STOP_MODE_FLASH_POWER_DOWN -# define STOP_MODE_FLASH_POWER_DOWN TRUE -#endif - -#ifndef STOP_MODE_LOW_POWER_DEEPSLEEP -# define STOP_MODE_LOW_POWER_DEEPSLEEP TRUE -#endif diff --git a/keyboards/keychron/common/wireless/report_buffer.c b/keyboards/keychron/common/wireless/report_buffer.c deleted file mode 100644 index 317ba8ce1d..0000000000 --- a/keyboards/keychron/common/wireless/report_buffer.c +++ /dev/null @@ -1,144 +0,0 @@ -/* Copyright 2023 @ lokher (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 . - */ - -#include "quantum.h" -#include "report_buffer.h" -#include "wireless.h" -#include "lpm.h" - -/* The report buffer is mainly used to fix key press lost issue of macro - * when wireless module fifo isn't large enough. The maximun macro - * string length is determined by this queue size, and should be - * REPORT_BUFFER_QUEUE_SIZE devided by 2 since each character is implemented - * by sending a key pressing then a key releasing report. - * Please note that it cosume sizeof(report_buffer_t) * REPORT_BUFFER_QUEUE_SIZE - * bytes RAM, with default setting, used RAM size is - * sizeof(report_buffer_t) * 256 = 34* 256 = 8704 bytes - */ -#ifndef REPORT_BUFFER_QUEUE_SIZE -# define REPORT_BUFFER_QUEUE_SIZE 256 -#endif - -extern wt_func_t wireless_transport; - -/* report_interval value should be less than bluetooth connection interval because - * it takes some time for communicating between mcu and bluetooth module. Carefully - * set this value to feed the bt module so that we don't lost the key report nor lost - * the anchor point of bluetooth interval. The bluetooth connection interval varies - * if BLE is used, invoke report_buffer_set_inverval() to update the value - */ -uint8_t report_interval = DEFAULT_2P4G_REPORT_INVERVAL_MS; - -static uint32_t report_timer_buffer = 0; -uint32_t retry_time_buffer = 0; -report_buffer_t report_buffer_queue[REPORT_BUFFER_QUEUE_SIZE]; -uint16_t report_buffer_queue_head; -uint16_t report_buffer_queue_tail; -report_buffer_t kb_rpt; -uint8_t retry = 0; - -void report_buffer_task(void); - -void report_buffer_init(void) { - // Initialise the report queue - memset(&report_buffer_queue, 0, sizeof(report_buffer_queue)); - report_buffer_queue_head = 0; - report_buffer_queue_tail = 0; - retry = 0; - report_timer_buffer = timer_read32(); -} - -bool report_buffer_enqueue(report_buffer_t *report) { - uint16_t next = (report_buffer_queue_head + 1) % REPORT_BUFFER_QUEUE_SIZE; - if (next == report_buffer_queue_tail) { - return false; - } - - report_buffer_queue[report_buffer_queue_head] = *report; - report_buffer_queue_head = next; - return true; -} - -inline bool report_buffer_dequeue(report_buffer_t *report) { - if (report_buffer_queue_head == report_buffer_queue_tail) { - return false; - } - - *report = report_buffer_queue[report_buffer_queue_tail]; - report_buffer_queue_tail = (report_buffer_queue_tail + 1) % REPORT_BUFFER_QUEUE_SIZE; - return true; -} - -bool report_buffer_is_empty() { - return report_buffer_queue_head == report_buffer_queue_tail; -} - -void report_buffer_update_timer(void) { - report_timer_buffer = timer_read32(); -} - -bool report_buffer_next_inverval(void) { - return timer_elapsed32(report_timer_buffer) > report_interval; -} - -void report_buffer_set_inverval(uint8_t interval) { - // OG_TRACE("report_buffer_set_inverval: %d\n\r", interval); - report_interval = interval; -} - -uint8_t report_buffer_get_retry(void) { - return retry; -} - -void report_buffer_set_retry(uint8_t times) { - retry = times; -} - -void report_buffer_task(void) { - if (wireless_get_state() == WT_CONNECTED && (!report_buffer_is_empty() || retry) && report_buffer_next_inverval()) { - bool pending_data = false; - - if (!retry) { - if (report_buffer_dequeue(&kb_rpt) && kb_rpt.type != REPORT_TYPE_NONE) { - if (timer_read32() > 2) { - pending_data = true; - retry = RETPORT_RETRY_COUNT; - retry_time_buffer = timer_read32(); - } - } - } else { - if (timer_elapsed32(retry_time_buffer) > 2) { - pending_data = true; - --retry; - retry_time_buffer = timer_read32(); - } - } - - if (pending_data) { -#if defined(NKRO_ENABLE) && defined(WIRELESS_NKRO_ENABLE) - if (kb_rpt.type == REPORT_TYPE_NKRO && wireless_transport.send_nkro) { - wireless_transport.send_nkro(&kb_rpt.nkro.mods); - } else if (kb_rpt.type == REPORT_TYPE_KB && wireless_transport.send_keyboard) - wireless_transport.send_keyboard(&kb_rpt.keyboard.mods); -#else - if (kb_rpt.type == REPORT_TYPE_KB && wireless_transport.send_keyboard) wireless_transport.send_keyboard(&kb_rpt.keyboard.mods); -#endif - if (kb_rpt.type == REPORT_TYPE_CONSUMER && wireless_transport.send_consumer) wireless_transport.send_consumer(kb_rpt.consumer); - report_timer_buffer = timer_read32(); - lpm_timer_reset(); - } - } -} diff --git a/keyboards/keychron/common/wireless/report_buffer.h b/keyboards/keychron/common/wireless/report_buffer.h deleted file mode 100644 index 4d03d291e7..0000000000 --- a/keyboards/keychron/common/wireless/report_buffer.h +++ /dev/null @@ -1,61 +0,0 @@ -/* Copyright 2022~2023 @ lokher (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 . - */ - -#pragma once - -#include "report.h" - -/* Default report interval value */ -#ifndef DEFAULT_BLE_REPORT_INVERVAL_MS -# define DEFAULT_BLE_REPORT_INVERVAL_MS 3 -#endif - -/* Default report interval value */ -#ifndef DEFAULT_2P4G_REPORT_INVERVAL_MS -# define DEFAULT_2P4G_REPORT_INVERVAL_MS 1 -#endif - -/* Default report interval value */ -#ifndef RETPORT_RETRY_COUNT -# define RETPORT_RETRY_COUNT 30 -#endif - -enum { - REPORT_TYPE_NONE, - REPORT_TYPE_KB, - REPORT_TYPE_NKRO, - REPORT_TYPE_CONSUMER, -}; - -typedef struct { - uint8_t type; - union { - report_keyboard_t keyboard; - report_nkro_t nkro; - uint16_t consumer; - }; -} report_buffer_t; - -void report_buffer_init(void); -bool report_buffer_enqueue(report_buffer_t *report); -bool report_buffer_dequeue(report_buffer_t *report); -bool report_buffer_is_empty(void); -void report_buffer_update_timer(void); -bool report_buffer_next_inverval(void); -void report_buffer_set_inverval(uint8_t interval); -uint8_t report_buffer_get_retry(void); -void report_buffer_set_retry(uint8_t times); -void report_buffer_task(void); diff --git a/keyboards/keychron/common/wireless/rtc_timer.c b/keyboards/keychron/common/wireless/rtc_timer.c deleted file mode 100644 index 9a35b9bddb..0000000000 --- a/keyboards/keychron/common/wireless/rtc_timer.c +++ /dev/null @@ -1,43 +0,0 @@ -/* Copyright 2023 @ lokher (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 . - */ - -#include "hal.h" - -#if (HAL_USE_RTC) - -# include "rtc_timer.h" - -void rtc_timer_init(void) { - rtc_timer_clear(); -} - -void rtc_timer_clear(void) { - RTCDateTime tm = {0, 0, 0, 0, 0, 0}; - rtcSetTime(&RTCD1, &tm); -} - -uint32_t rtc_timer_read_ms(void) { - RTCDateTime tm; - rtcGetTime(&RTCD1, &tm); - - return tm.millisecond; -} - -uint32_t rtc_timer_elapsed_ms(uint32_t last) { - return TIMER_DIFF_32(rtc_timer_read_ms(), last); -} - -#endif diff --git a/keyboards/keychron/common/wireless/rtc_timer.h b/keyboards/keychron/common/wireless/rtc_timer.h deleted file mode 100644 index cf6dfb5720..0000000000 --- a/keyboards/keychron/common/wireless/rtc_timer.h +++ /dev/null @@ -1,35 +0,0 @@ -/* Copyright 2023 @ lokher (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 . - */ - -#pragma once - -#include "timer.h" -#include - -#define RTC_MAX_TIME (24 * 3600 * 1000) // Set to 1 day - -#ifdef __cplusplus -extern "C" { -#endif - -void rtc_timer_init(void); -void rtc_timer_clear(void); -uint32_t rtc_timer_read_ms(void); -uint32_t rtc_timer_elapsed_ms(uint32_t last); - -#ifdef __cplusplus -} -#endif diff --git a/keyboards/keychron/common/wireless/transport.c b/keyboards/keychron/common/wireless/transport.c deleted file mode 100644 index d452d1d6c8..0000000000 --- a/keyboards/keychron/common/wireless/transport.c +++ /dev/null @@ -1,259 +0,0 @@ -/* Copyright 2022~2023 @ lokher (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 . - */ - -#include "quantum.h" -#include "wireless.h" -#include "indicator.h" -#include "lpm.h" -#include "mousekey.h" -#if defined(PROTOCOL_CHIBIOS) -# include -#endif -#include "transport.h" -#include "lkbt51.h" - -#ifndef REINIT_LED_DRIVER -# define REINIT_LED_DRIVER 0 -#endif - -#if defined(PROTOCOL_CHIBIOS) -extern host_driver_t chibios_driver; -#endif -extern host_driver_t wireless_driver; -extern keymap_config_t keymap_config; -extern wt_func_t wireless_transport; - -static transport_t transport = TRANSPORT_NONE; - -#ifdef NKRO_ENABLE -nkro_t nkro = {false, false}; -#endif - -static void transport_changed(transport_t new_transport); - -__attribute__((weak)) void bt_transport_enable(bool enable) { - if (enable) { - // if (host_get_driver() != &wireless_driver) { - host_set_driver(&wireless_driver); - - /* Disconnect and reconnect to sync the wireless state - * TODO: query wireless state to sync - */ - wireless_disconnect(); - - uint32_t t = timer_read32(); - while (timer_elapsed32(t) < 50) { - wireless_transport.task(); - } - // wireless_connect(); - wireless_connect_ex(30, 0); - // TODO: Clear USB report - //} - } else { - indicator_stop(); - - if (wireless_get_state() == WT_CONNECTED && transport == TRANSPORT_BLUETOOTH) { - report_keyboard_t empty_report = {0}; - wireless_driver.send_keyboard(&empty_report); - } - } -} - -__attribute__((weak)) void p24g_transport_enable(bool enable) { - if (enable) { - // if (host_get_driver() != &wireless_driver) { - host_set_driver(&wireless_driver); - - /* Disconnect and reconnect to sync the wireless state - * TODO: query bluetooth state to sync - */ - wireless_disconnect(); - - uint32_t t = timer_read32(); - while (timer_elapsed32(t) < 50) { - wireless_transport.task(); - } - wireless_connect_ex(P24G_INDEX, 0); - // wireless_connect(); - // TODO: Clear USB report - //} - } else { - indicator_stop(); - - if (wireless_get_state() == WT_CONNECTED && transport == TRANSPORT_P2P4) { - report_keyboard_t empty_report = {0}; - wireless_driver.send_keyboard(&empty_report); - } - } -} - -__attribute__((weak)) void usb_power_connect(void) {} -__attribute__((weak)) void usb_power_disconnect(void) {} - -__attribute__((weak)) void usb_transport_enable(bool enable) { - if (enable) { - if (host_get_driver() != &chibios_driver) { -#if !defined(KEEP_USB_CONNECTION_IN_WIRELESS_MODE) - usb_power_connect(); - usb_start(&USBD1); -#endif - host_set_driver(&chibios_driver); - } - } else { - if (USB_DRIVER.state == USB_ACTIVE) { - report_keyboard_t empty_report = {0}; - chibios_driver.send_keyboard(&empty_report); - } - -#if !defined(KEEP_USB_CONNECTION_IN_WIRELESS_MODE) - usbStop(&USBD1); - usbDisconnectBus(&USBD1); - usb_power_disconnect(); -#endif - } -} - -void set_transport(transport_t new_transport) { - if (transport != new_transport) { - if (transport == TRANSPORT_USB || ((transport != TRANSPORT_USB) && wireless_get_state() == WT_CONNECTED)) clear_keyboard(); - - transport = new_transport; - - switch (transport) { - case TRANSPORT_USB: - usb_transport_enable(true); - bt_transport_enable(false); - wait_ms(5); - p24g_transport_enable(false); - wireless_disconnect(); - lpm_timer_stop(); - break; - - case TRANSPORT_BLUETOOTH: - p24g_transport_enable(false); - wait_ms(1); - bt_transport_enable(true); - usb_transport_enable(false); - lpm_timer_reset(); - break; - - case TRANSPORT_P2P4: - bt_transport_enable(false); - wait_ms(1); - p24g_transport_enable(true); - usb_transport_enable(false); - lpm_timer_reset(); - break; - - default: - break; - } - - transport_changed(transport); - } -} - -transport_t get_transport(void) { - return transport; -} - -#if (REINIT_LED_DRIVER) -/* Changing transport may cause bronw-out reset of led driver - * withoug MCU reset, which lead backlight to not work, - * reinit the led driver workgound this issue */ -static void reinit_led_drvier(void) { - /* Wait circuit to discharge for a while */ - systime_t start = chVTGetSystemTime(); - while (chTimeI2MS(chVTTimeElapsedSinceX(start)) < 100) { - }; - -# ifdef LED_MATRIX_ENABLE - led_matrix_init(); -# endif -# ifdef RGB_MATRIX_ENABLE - rgb_matrix_init(); -# endif -} -#endif - -void transport_changed(transport_t new_transport) { - kc_printf("transport_changed %d\n\r", new_transport); - indicator_init(); - -#if (REINIT_LED_DRIVER) - reinit_led_drvier(); -#endif - -#if defined(RGB_MATRIX_ENABLE) && defined(RGB_MATRIX_TIMEOUT) -# if (RGB_MATRIX_TIMEOUT > 0) - rgb_matrix_disable_timeout_set(RGB_MATRIX_TIMEOUT_INFINITE); - rgb_matrix_disable_time_reset(); -# endif -#endif -#if defined(LED_MATRIX_ENABLE) && defined(LED_MATRIX_TIMEOUT) -# if (LED_MATRIX_TIMEOUT > 0) - led_matrix_disable_timeout_set(LED_MATRIX_TIMEOUT_INFINITE); - led_matrix_disable_time_reset(); -# endif -#endif -} - -void usb_remote_wakeup(void) { - if (USB_DRIVER.state == USB_SUSPENDED) { - while (USB_DRIVER.state == USB_SUSPENDED) { - wireless_pre_task(); - if (get_transport() != TRANSPORT_USB) { - suspend_wakeup_init_quantum(); - return; - } - /* Do this in the suspended state */ - suspend_power_down(); // on AVR this deep sleeps for 15ms - /* Remote wakeup */ - if (suspend_wakeup_condition() -#ifdef ENCODER_ENABLE - || encoder_read() -#endif - ) { - usbWakeupHost(&USB_DRIVER); - wait_ms(300); -#ifdef MOUSEKEY_ENABLE - // Wiggle to wakeup - mousekey_on(KC_MS_LEFT); - mousekey_send(); - wait_ms(10); - mousekey_on(KC_MS_RIGHT); - mousekey_send(); - wait_ms(10); - mousekey_off((KC_MS_RIGHT)); - mousekey_send(); -#else - set_mods(0x02); - send_keyboard_report(); - wait_ms(10); - del_mods(0x02); - send_keyboard_report(); -#endif - } - } - /* Woken up */ - // variables has been already cleared by the wakeup hook - send_keyboard_report(); -#ifdef MOUSEKEY_ENABLE - mousekey_send(); -#endif /* MOUSEKEY_ENABLE */ - usb_event_queue_task(); - } -} diff --git a/keyboards/keychron/common/wireless/transport.h b/keyboards/keychron/common/wireless/transport.h deleted file mode 100644 index b9796078ce..0000000000 --- a/keyboards/keychron/common/wireless/transport.h +++ /dev/null @@ -1,42 +0,0 @@ -/* Copyright 2022~2023 @ lokher (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 . - */ - -#pragma once - -typedef enum { - TRANSPORT_NONE, - TRANSPORT_USB = 0x01 << 0, - TRANSPORT_BLUETOOTH = 0x01 << 1, - TRANSPORT_P2P4 = 0x01 << 2, - TRANSPORT_MAX, -} transport_t; - -#ifdef NKRO_ENABLE -typedef struct { - bool usb : 1; - bool bluetooth : 1; -} nkro_t; -#endif - -#define TRANSPORT_WIRELESS (TRANSPORT_BLUETOOTH | TRANSPORT_P2P4) - -void set_transport(transport_t new_transport); -transport_t get_transport(void); - -void usb_power_connect(void); -void usb_power_disconnect(void); -void usb_transport_enable(bool enable); -void usb_remote_wakeup(void); diff --git a/keyboards/keychron/common/wireless/wireless.c b/keyboards/keychron/common/wireless/wireless.c deleted file mode 100644 index 24e9b18fdb..0000000000 --- a/keyboards/keychron/common/wireless/wireless.c +++ /dev/null @@ -1,657 +0,0 @@ -/* Copyright 2023 @ lokher (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 . - */ - -#include "quantum.h" -#include "wireless.h" -#include "report_buffer.h" -#include "lpm.h" -#include "battery.h" -#include "indicator.h" -#include "transport.h" -#include "rtc_timer.h" -#include "keychron_wireless_common.h" -#include "keychron_task.h" -#include "wireless_config.h" -#include "keychron_raw_hid.h" - -extern uint8_t pairing_indication; -extern host_driver_t chibios_driver; -extern report_buffer_t kb_rpt; -extern uint32_t retry_time_buffer; -extern uint8_t retry; - -static uint8_t host_index = 0; -static uint8_t led_state = 0; - -extern wt_func_t wireless_transport; -static wt_state_t wireless_state = WT_RESET; -static bool pincodeEntry = false; -uint8_t wireless_report_protocol = true; - -uint16_t backlit_disable_time = CONNECTED_BACKLIGHT_DISABLE_TIMEOUT; -uint16_t connected_idle_time = CONNECTED_IDLE_TIME; - -/* declarations */ -uint8_t wreless_keyboard_leds(void); -void wireless_send_keyboard(report_keyboard_t *report); -void wireless_send_nkro(report_nkro_t *report); -void wireless_send_mouse(report_mouse_t *report); -void wireless_send_extra(report_extra_t *report); -bool process_record_wireless(uint16_t keycode, keyrecord_t *record); - -/* host struct */ -host_driver_t wireless_driver = {wreless_keyboard_leds, wireless_send_keyboard, wireless_send_nkro, wireless_send_mouse, wireless_send_extra}; - -#define WT_EVENT_QUEUE_SIZE 16 -wireless_event_t wireless_event_queue[WT_EVENT_QUEUE_SIZE]; -uint8_t wireless_event_queue_head; -uint8_t wireless_event_queue_tail; - -bool wireless_lpm_set(uint8_t *data); - -void wireless_event_queue_init(void) { - // Initialise the event queue - memset(&wireless_event_queue, 0, sizeof(wireless_event_queue)); - wireless_event_queue_head = 0; - wireless_event_queue_tail = 0; -} - -bool wireless_event_enqueue(wireless_event_t event) { - uint8_t next = (wireless_event_queue_head + 1) % WT_EVENT_QUEUE_SIZE; - if (next == wireless_event_queue_tail) { - /* Override the first report */ - wireless_event_queue_tail = (wireless_event_queue_tail + 1) % WT_EVENT_QUEUE_SIZE; - } - wireless_event_queue[wireless_event_queue_head] = event; - wireless_event_queue_head = next; - return true; -} - -static inline bool wireless_event_dequeue(wireless_event_t *event) { - if (wireless_event_queue_head == wireless_event_queue_tail) { - return false; - } - *event = wireless_event_queue[wireless_event_queue_tail]; - wireless_event_queue_tail = (wireless_event_queue_tail + 1) % WT_EVENT_QUEUE_SIZE; - return true; -} - -#if defined(EECONFIG_BASE_WIRELESS_CONFIG) -void wireless_config_reset(void) { - uint8_t data[4] = { 0 }; - - uint16_t backlit_disable_time = CONNECTED_BACKLIGHT_DISABLE_TIMEOUT; - uint16_t connected_idle_time = CONNECTED_IDLE_TIME; - - memcpy(&data[0], &backlit_disable_time, sizeof(backlit_disable_time)); - memcpy(&data[2], &connected_idle_time, sizeof(connected_idle_time)); - wireless_lpm_set(data); -} - -void wireless_config_load(void) { - uint8_t offset = 0; - eeprom_read_block(&backlit_disable_time, (uint8_t *)(EECONFIG_BASE_WIRELESS_CONFIG+offset), sizeof(backlit_disable_time)); - offset += sizeof(backlit_disable_time); - eeprom_read_block(&connected_idle_time, (uint8_t *)(EECONFIG_BASE_WIRELESS_CONFIG+offset), sizeof(connected_idle_time)); - - if (backlit_disable_time == 0) - backlit_disable_time = CONNECTED_BACKLIGHT_DISABLE_TIMEOUT; - else if (backlit_disable_time < 5 ) backlit_disable_time = 5; - - if (connected_idle_time == 0) - connected_idle_time = CONNECTED_IDLE_TIME; - else if (connected_idle_time < 30 ) connected_idle_time = 30; -} - -void wireless_config_save(void) { - uint8_t offset = 0; - eeprom_update_block(&backlit_disable_time, (uint8_t *)(EECONFIG_BASE_WIRELESS_CONFIG+offset), sizeof(backlit_disable_time)); - offset += sizeof(backlit_disable_time); - eeprom_update_block(&connected_idle_time, (uint8_t *)(EECONFIG_BASE_WIRELESS_CONFIG+offset), sizeof(connected_idle_time)); -} -#endif - -/* - * Bluetooth init. - */ -void wireless_init(void) { - wireless_state = WT_INITIALIZED; - - wireless_event_queue_init(); -#ifndef DISABLE_REPORT_BUFFER - report_buffer_init(); -#endif - indicator_init(); -#ifdef BLUETOOTH_INT_INPUT_PIN - setPinInputHigh(BLUETOOTH_INT_INPUT_PIN); -#endif - - battery_init(); - lpm_init(); -#if HAL_USE_RTC - rtc_timer_init(); -#endif - -#if defined(EECONFIG_BASE_WIRELESS_CONFIG) - wireless_config_load(); -#endif -} - -/* - * Bluetooth trasponrt init. Bluetooth module driver shall use this function to register a callback - * to its implementation. - */ -void wireless_set_transport(wt_func_t *transport) { - if (transport) memcpy(&wireless_transport, transport, sizeof(wt_func_t)); -} - -/* - * Enter pairing with current host index - */ -void wireless_pairing(void) { - if (battery_is_critical_low()) return; - - wireless_pairing_ex(0, NULL); - wireless_state = WT_PARING; -} - -/* - * Enter pairing with specified host index and param - */ -void wireless_pairing_ex(uint8_t host_idx, void *param) { - kc_printf("wireless_pairing_ex %d\n\r", host_idx); - if (battery_is_critical_low()) return; - - if (wireless_transport.pairing_ex) wireless_transport.pairing_ex(host_idx, param); - wireless_state = WT_PARING; - - host_index = host_idx; -} - -/* - * Initiate connection request to paired host - */ -void wireless_connect(void) { - /* Work around empty report after wakeup, which leads to reconneect/disconnected loop */ - if (battery_is_critical_low() || timer_read32() == 0) return; - - if (wireless_state == WT_RECONNECTING && !indicator_is_running()) { - indicator_set(wireless_state, host_index); - } - wireless_transport.connect_ex(0, 0); - wireless_state = WT_RECONNECTING; -} - -/* - * Initiate connection request to paired host with argument - */ -void wireless_connect_ex(uint8_t host_idx, uint16_t timeout) { - kc_printf("wireless_connect_ex %d\n\r", host_idx); - if (battery_is_critical_low()) return; - - if (host_idx != 0) { - /* Do nothing when trying to connect to current connected host*/ - if (host_index == host_idx && wireless_state == WT_CONNECTED) return; - - host_index = host_idx; - led_state = 0; - } - wireless_transport.connect_ex(host_idx, timeout); - wireless_state = WT_RECONNECTING; -} - -/* Initiate a disconnection */ -void wireless_disconnect(void) { - kc_printf("wireless_disconnect\n\r"); - if (wireless_transport.disconnect) wireless_transport.disconnect(); -} - -/* Called when the BT device is reset. */ -static void wireless_enter_reset(uint8_t reason) { - kc_printf("wireless_enter_reset\n\r"); - wireless_state = WT_RESET; - wireless_enter_reset_kb(reason); -} - -/* Enters discoverable state. Upon entering this state we perform the following actions: - * - change state to WT_PARING - * - set pairing indication - */ -static void wireless_enter_discoverable(uint8_t host_idx) { - kc_printf("wireless_enter_discoverable: %d\n\r", host_idx); - host_index = host_idx; - - wireless_state = WT_PARING; - indicator_set(wireless_state, host_idx); - wireless_enter_discoverable_kb(host_idx); -} - -/* - * Enters reconnecting state. Upon entering this state we perform the following actions: - * - change state to RECONNECTING - * - set reconnect indication - */ -static void wireless_enter_reconnecting(uint8_t host_idx) { - host_index = host_idx; - - kc_printf("wireless_reconnecting %d\n\r", host_idx); - wireless_state = WT_RECONNECTING; - indicator_set(wireless_state, host_idx); - wireless_enter_reconnecting_kb(host_idx); -} - -/* Enters connected state. Upon entering this state we perform the following actions: - * - change state to CONNECTED - * - set connected indication - * - enable NKRO if it is support - */ -static void wireless_enter_connected(uint8_t host_idx) { - kc_printf("wireless_connected %d\n\r", host_idx); - - wireless_state = WT_CONNECTED; - indicator_set(wireless_state, host_idx); - host_index = host_idx; - - clear_keyboard(); - - /* Enable NKRO since it may be disabled in pin code entry */ -#if defined(NKRO_ENABLE) && !defined(WIRELESS_NKRO_ENABLE) - keymap_config.nkro = false; -#endif - - wireless_enter_connected_kb(host_idx); - if (battery_is_empty()) { - indicator_battery_low_enable(true); - } - if (wireless_transport.update_bat_level) wireless_transport.update_bat_level(battery_get_percentage()); - lpm_timer_reset(); -} - -/* Enters disconnected state. Upon entering this state we perform the following actions: - * - change state to DISCONNECTED - * - set disconnected indication - */ -static void wireless_enter_disconnected(uint8_t host_idx, uint8_t reason) { - kc_printf("wireless_disconnected %d, %d\n\r", host_idx, reason); - - uint8_t previous_state = wireless_state; - led_state = 0; - if (get_transport() & TRANSPORT_WIRELESS) - led_update_kb((led_t)led_state); - - wireless_state = WT_DISCONNECTED; - - if (previous_state == WT_CONNECTED) { - lpm_timer_reset(); - indicator_set(WT_SUSPEND, host_idx); - } else { - indicator_set(wireless_state, host_idx); -#if defined(RGB_MATRIX_ENABLE) || defined(LED_MATRIX_ENABLE) - if (reason && (get_transport() & TRANSPORT_WIRELESS)) { - indicator_set_backlit_timeout(DISCONNECTED_BACKLIGHT_DISABLE_TIMEOUT*1000); - } -#endif - } - -#ifndef DISABLE_REPORT_BUFFER - report_buffer_init(); -#endif - retry = 0; - wireless_enter_disconnected_kb(host_idx, reason); - - indicator_battery_low_enable(false); -} - -/* Enter pin code entry state. */ -static void wireless_enter_bluetooth_pin_code_entry(void) { -#if defined(NKRO_ENABLE) - keymap_config.nkro = FALSE; -#endif - pincodeEntry = true; - wireless_enter_bluetooth_pin_code_entry_kb(); -} - -/* Exit pin code entry state. */ -static void wireless_exit_bluetooth_pin_code_entry(void) { -#if defined(NKRO_ENABLE) || defined(WIRELESS_NKRO_ENABLE) - keymap_config.raw = eeconfig_read_keymap(); -#endif - pincodeEntry = false; - wireless_exit_bluetooth_pin_code_entry_kb(); -} - -/* Enters disconnected state. Upon entering this state we perform the following actions: - * - change state to DISCONNECTED - * - set disconnected indication - */ -static void wireless_enter_sleep(void) { - kc_printf("wireless_enter_sleep %d\n\r", wireless_state); - - led_state = 0; - - if (wireless_state == WT_CONNECTED || wireless_state == WT_PARING) { - wireless_state = WT_SUSPEND; - kc_printf("WT_SUSPEND\n\r"); - lpm_timer_reset(); - - wireless_enter_sleep_kb(); - indicator_set(wireless_state, 0); - indicator_battery_low_enable(false); - } -} - -__attribute__((weak)) void wireless_enter_reset_kb(uint8_t reason) {} -__attribute__((weak)) void wireless_enter_discoverable_kb(uint8_t host_idx) {} -__attribute__((weak)) void wireless_enter_reconnecting_kb(uint8_t host_idx) {} -__attribute__((weak)) void wireless_enter_connected_kb(uint8_t host_idx) {} -__attribute__((weak)) void wireless_enter_disconnected_kb(uint8_t host_idx, uint8_t reason) {} -__attribute__((weak)) void wireless_enter_bluetooth_pin_code_entry_kb(void) {} -__attribute__((weak)) void wireless_exit_bluetooth_pin_code_entry_kb(void) {} -__attribute__((weak)) void wireless_enter_sleep_kb(void) {} - -/* */ -static void wireless_hid_set_protocol(bool report_protocol) { - wireless_report_protocol = false; -} - -uint8_t wreless_keyboard_leds(void) { - if (wireless_state == WT_CONNECTED) { - return led_state; - } - - return 0; -} - -extern keymap_config_t keymap_config; - -void wireless_send_keyboard(report_keyboard_t *report) { - if (battery_is_critical_low()) return; - - if (wireless_state == WT_PARING && !pincodeEntry) return; - - if (wireless_state == WT_CONNECTED || (wireless_state == WT_PARING && pincodeEntry)) { - if (wireless_transport.send_keyboard) { -#ifndef DISABLE_REPORT_BUFFER - bool empty = report_buffer_is_empty(); - - report_buffer_t report_buffer; - report_buffer.type = REPORT_TYPE_KB; - memcpy(&report_buffer.keyboard, report, sizeof(report_keyboard_t)); - report_buffer_enqueue(&report_buffer); - - if (empty) - report_buffer_task(); -#else - wireless_transport.send_keyboard(&report->mods); -#endif - } - } else if (wireless_state != WT_RESET) { - wireless_connect(); - } -} - -void wireless_send_nkro(report_nkro_t *report) { - if (battery_is_critical_low()) return; - - if (wireless_state == WT_PARING && !pincodeEntry) return; - - if (wireless_state == WT_CONNECTED || (wireless_state == WT_PARING && pincodeEntry)) { - if (wireless_transport.send_nkro) { -#ifndef DISABLE_REPORT_BUFFER - bool empty = report_buffer_is_empty(); - - report_buffer_t report_buffer; - report_buffer.type = REPORT_TYPE_NKRO; - memcpy(&report_buffer.nkro, report, sizeof(report_nkro_t)); - report_buffer_enqueue(&report_buffer); - - if (empty) - report_buffer_task(); -#else - wireless_transport.send_nkro(&report->mods); -#endif - } - } else if (wireless_state != WT_RESET) { - wireless_connect(); - } -} - -void wireless_send_mouse(report_mouse_t *report) { - if (battery_is_critical_low()) return; - - if (wireless_state == WT_CONNECTED) { - if (wireless_transport.send_mouse) wireless_transport.send_mouse((uint8_t *)report); - } else if (wireless_state != WT_RESET) { - wireless_connect(); - } -} - -void wireless_send_system(uint16_t data) { - if (wireless_state == WT_CONNECTED) { - if (wireless_transport.send_system) wireless_transport.send_system(data); - } else if (wireless_state != WT_RESET) { - wireless_connect(); - } -} - -void wireless_send_consumer(uint16_t data) { - if (wireless_state == WT_CONNECTED) { -#ifndef DISABLE_REPORT_BUFFER - if (report_buffer_is_empty() && report_buffer_next_inverval()) { - if (wireless_transport.send_consumer) wireless_transport.send_consumer(data); - report_buffer_update_timer(); - } else { - report_buffer_t report_buffer; - report_buffer.type = REPORT_TYPE_CONSUMER; - report_buffer.consumer = data; - report_buffer_enqueue(&report_buffer); - } -#else - if (wireless_transport.send_consumer) wireless_transport.send_consumer(data); -#endif - } else if (wireless_state != WT_RESET) { - wireless_connect(); - } -} - -void wireless_send_extra(report_extra_t *report) { - if (battery_is_critical_low()) return; - - if (report->report_id == REPORT_ID_SYSTEM) { - wireless_send_system(report->usage); - } else if (report->report_id == REPORT_ID_CONSUMER) { - wireless_send_consumer(report->usage); - } -} - -void wireless_low_battery_shutdown(void) { - indicator_battery_low_enable(false); - - - report_buffer_init(); - clear_keyboard(); // - wait_ms(50); // wait a while for bt module to free buffer by sending report - - // Release all keys by sending empty reports - if (keymap_config.nkro) { - report_nkro_t empty_nkro_report; - memset(&empty_nkro_report, 0, sizeof(empty_nkro_report)); - wireless_transport.send_nkro(&empty_nkro_report.mods); - } else { - report_keyboard_t empty_report; - memset(&empty_report, 0, sizeof(empty_report)); - wireless_transport.send_keyboard(&empty_report.mods); - } - wait_ms(10); - wireless_transport.send_consumer(0); - wait_ms(10); - report_mouse_t empty_mouse_report; - memset(&empty_mouse_report, 0, sizeof(empty_mouse_report)); - wireless_transport.send_mouse((uint8_t *)&empty_mouse_report); - wait_ms(300); // Wait for bt module to send all buffered report - - wireless_disconnect(); -} - -void wireless_event_task(void) { - wireless_event_t event; - while (wireless_event_dequeue(&event)) { - switch (event.evt_type) { - case EVT_RESET: - wireless_enter_reset(event.params.reason); - break; - case EVT_CONNECTED: - wireless_enter_connected(event.params.hostIndex); - break; - case EVT_DISCOVERABLE: - wireless_enter_discoverable(event.params.hostIndex); - break; - case EVT_RECONNECTING: - wireless_enter_reconnecting(event.params.hostIndex); - break; - case EVT_DISCONNECTED: - wireless_enter_disconnected(event.params.hostIndex, event.data); - break; - case EVT_BT_PINCODE_ENTRY: - wireless_enter_bluetooth_pin_code_entry(); - break; - case EVT_EXIT_BT_PINCODE_ENTRY: - wireless_exit_bluetooth_pin_code_entry(); - break; - case EVT_SLEEP: - wireless_enter_sleep(); - break; - case EVT_HID_INDICATOR: - led_state = event.params.led; - break; - case EVT_HID_SET_PROTOCOL: - wireless_hid_set_protocol(event.params.protocol); - break; - case EVT_CONECTION_INTERVAL: - report_buffer_set_inverval(event.params.interval); - break; - default: - break; - } - } -} - -void wireless_task(void) { - wireless_transport.task(); - wireless_event_task(); -#ifndef DISABLE_REPORT_BUFFER - report_buffer_task(); -#endif - indicator_task(); - keychron_wireless_common_task(); - battery_task(); - lpm_task(); -} - -void send_string_task(void) { - if ((get_transport() & TRANSPORT_WIRELESS) && wireless_get_state() == WT_CONNECTED) { - wireless_transport.task(); -#ifndef DISABLE_REPORT_BUFFER - report_buffer_task(); -#endif - } -} -wt_state_t wireless_get_state(void) { - return wireless_state; -}; - -bool process_record_wireless(uint16_t keycode, keyrecord_t *record) { - if (get_transport() & TRANSPORT_WIRELESS) { - lpm_timer_reset(); - - if (battery_is_empty() && wireless_get_state() == WT_CONNECTED && record->event.pressed) { - indicator_battery_low_enable(true); - } - } - - if (!process_record_keychron_wireless(keycode, record)) return false; - - return true; -} - -#if defined(EECONFIG_BASE_WIRELESS_CONFIG) -bool wireless_lpm_get(uint8_t *data) { - uint8_t index = 1; - memcpy(&data[index], &backlit_disable_time, sizeof(backlit_disable_time)); - index += sizeof(backlit_disable_time); - memcpy(&data[index], &connected_idle_time, sizeof(connected_idle_time)); - - return true; -} - -bool wireless_lpm_set(uint8_t *data) { - uint8_t index = 0; - - memcpy(&backlit_disable_time, &data[index], sizeof(backlit_disable_time)); - index += sizeof(backlit_disable_time); - memcpy(&connected_idle_time, &data[index], sizeof(connected_idle_time)); - - if (backlit_disable_time < 5 || connected_idle_time < 60) { - wireless_config_load(); - return false; - } - - wireless_config_save(); - - // Reset backlight timeout - if ((get_transport() & TRANSPORT_WIRELESS) && wireless_state == WT_CONNECTED) - { - indicator_set_backlit_timeout(backlit_disable_time*1000); - indicator_reset_backlit_time(); - - // Wiggle mouse to reset bluetooth module timer - mousekey_on(KC_MS_LEFT); - mousekey_send(); - wait_ms(10); - mousekey_on(KC_MS_RIGHT); - mousekey_send(); - wait_ms(10); - mousekey_off((KC_MS_RIGHT)); - mousekey_send(); - wait_ms(10); - } - - // Update bluetooth module param - lkbt51_param_init(); - return true; -} - -void wireless_raw_hid_rx(uint8_t *data, uint8_t length) { - uint8_t cmd = data[1]; - bool success = true; - - switch (cmd) { - case WIRELESS_LPM_GET: - success = wireless_lpm_get(&data[2]); - break; - - case WIRELESS_LPM_SET: - success = wireless_lpm_set(&data[2]); - break; - - default: - data[0] = 0xFF; - break; - } - - data[2] = success ? 0 : 1; -} -#endif diff --git a/keyboards/keychron/common/wireless/wireless.h b/keyboards/keychron/common/wireless/wireless.h deleted file mode 100644 index 0ead527d47..0000000000 --- a/keyboards/keychron/common/wireless/wireless.h +++ /dev/null @@ -1,106 +0,0 @@ -/* Copyright 2023~2025 @ lokher (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 . - */ - -#pragma once - -#include "wireless_event_type.h" -#include "action.h" - -#ifdef KC_DEBUG -# define kc_printf dprintf -#else -# define kc_printf(format, ...) -#endif - -/* Low power mode */ -#ifndef LOW_POWER_MODE -# define LOW_POWER_MODE PM_STOP -#endif - -/* Wake pin used for blueooth module/controller to wake up MCU in low power mode*/ -#ifndef BLUETOOTH_INT_INPUT_PIN -# define WAKE_PIN A5 -#endif - -// clang-format off -/* Type of an enumeration of the possible wireless transport state.*/ -typedef enum { - WT_RESET, - WT_INITIALIZED, // 1 - WT_DISCONNECTED, // 2 - WT_CONNECTED, // 3 - WT_PARING, // 4 - WT_RECONNECTING, // 5 - WT_SUSPEND -} wt_state_t; - -//extern event_listener_t wireless_driver; - -typedef struct { - void (*init)(bool); - void (*connect_ex)(uint8_t, uint16_t); - void (*pairing_ex)(uint8_t, void *); - void (*disconnect)(void); - void (*send_keyboard)(uint8_t *); - void (*send_nkro)(uint8_t *); - void (*send_consumer)(uint16_t); - void (*send_system)(uint16_t); - void (*send_mouse)(uint8_t *); - void (*update_bat_level)(uint8_t); - void (*task)(void); -} wt_func_t; -// clang-format on - -extern void register_wt_tasks(void); - -void wireless_init(void); -void wireless_config_reset(void); - -void wireless_set_transport(wt_func_t *transport); -void wireless(void); - -bool wireless_event_enqueue(wireless_event_t event); - -void wireless_connect(void); -void wireless_connect_ex(uint8_t host_idx, uint16_t timeout); -void wireless_disconnect(void); - -void wireless_pairing(void); -void wireless_pairing_ex(uint8_t host_idx, void *param); -// bool bluetooth_is_activated(void); - -void wireless_enter_reset_kb(uint8_t reason); -void wireless_enter_discoverable_kb(uint8_t host_idx); -void wireless_enter_reconnecting_kb(uint8_t host_idx); -void wireless_enter_connected_kb(uint8_t host_idx); -void wireless_enter_disconnected_kb(uint8_t host_idx, uint8_t reason); -void wireless_enter_bluetooth_pin_code_entry_kb(void); -void wireless_exit_bluetooth_pin_code_entry_kb(void); -void wireless_enter_sleep_kb(void); - -void wireless_task(void); -void wireless_pre_task(void); -void wireless_post_task(void); -void send_string_task(void); - -wt_state_t wireless_get_state(void); - -void wireless_low_battery_shutdown(void); - -bool process_record_wireless(uint16_t keycode, keyrecord_t *record); - -void wireless_raw_hid_rx(uint8_t *data, uint8_t length); - diff --git a/keyboards/keychron/common/wireless/wireless.mk b/keyboards/keychron/common/wireless/wireless.mk deleted file mode 100644 index b575624b06..0000000000 --- a/keyboards/keychron/common/wireless/wireless.mk +++ /dev/null @@ -1,21 +0,0 @@ -OPT_DEFS += -DLK_WIRELESS_ENABLE -DWIRELESS_CONFIG_ENABLE -OPT_DEFS += -DNO_USB_STARTUP_CHECK -OPT_DEFS += -DCORTEX_ENABLE_WFI_IDLE=TRUE - -WIRELESS_DIR = common/wireless -SRC += \ - $(WIRELESS_DIR)/wireless.c \ - $(WIRELESS_DIR)/report_buffer.c \ - $(WIRELESS_DIR)/lkbt51.c \ - $(WIRELESS_DIR)/indicator.c \ - $(WIRELESS_DIR)/wireless_main.c \ - $(WIRELESS_DIR)/transport.c \ - $(WIRELESS_DIR)/lpm.c \ - $(WIRELESS_DIR)/lpm_stm32f401.c \ - $(WIRELESS_DIR)/battery.c \ - $(WIRELESS_DIR)/bat_level_animation.c \ - $(WIRELESS_DIR)/rtc_timer.c \ - $(WIRELESS_DIR)/keychron_wireless_common.c - -VPATH += $(TOP_DIR)/keyboards/keychron/$(WIRELESS_DIR) - diff --git a/keyboards/keychron/common/wireless/wireless_config.h b/keyboards/keychron/common/wireless/wireless_config.h deleted file mode 100644 index f1305f3fd1..0000000000 --- a/keyboards/keychron/common/wireless/wireless_config.h +++ /dev/null @@ -1,31 +0,0 @@ -/* Copyright 2023~2025 @ lokher (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 . - */ - -#pragma once - -#include "config.h" - -// -#ifndef BT_HOST_DEVICES_COUNT -# define BT_HOST_DEVICES_COUNT 3 -#endif - -#define P2P4G_HOST_DEVICES_COUNT 1 - -// Uint: Second, the timer restarts on key activities. -#ifndef CONNECTED_IDLE_TIME -# define CONNECTED_IDLE_TIME 7200 -#endif diff --git a/keyboards/keychron/common/wireless/wireless_event_type.h b/keyboards/keychron/common/wireless/wireless_event_type.h deleted file mode 100644 index 430ace916f..0000000000 --- a/keyboards/keychron/common/wireless/wireless_event_type.h +++ /dev/null @@ -1,45 +0,0 @@ -/* Copyright 2023~2025 @ lokher (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 . - */ - -#pragma once - -/* Type of an enumeration of the possible wireless events.*/ -typedef enum { - EVT_NONE = 0, - EVT_RESET, - EVT_DISCOVERABLE, - EVT_RECONNECTING, - EVT_CONNECTED, - EVT_DISCONNECTED, - EVT_BT_PINCODE_ENTRY, - EVT_EXIT_BT_PINCODE_ENTRY, - EVT_SLEEP, - EVT_HID_SET_PROTOCOL, - EVT_HID_INDICATOR, - EVT_CONECTION_INTERVAL, -} event_type_t; - -typedef struct { - event_type_t evt_type; /*The type of the event. */ - union { - uint8_t reason; /* Parameters to WT_RESET event */ - uint8_t hostIndex; /* Parameters to connection event from EVT_DISCOVERABLE to EVT_DISCONECTED */ - uint8_t led; /* Parameters to EVT_HID_INDICATOR event */ - uint8_t protocol; /* Parameters to EVT_HID_SET_PROTOCOL event */ - uint8_t interval; /* Parameters to EVT_CONECTION_INTERVAL event */ - } params; - uint8_t data; -} wireless_event_t; diff --git a/keyboards/keychron/common/wireless/wireless_main.c b/keyboards/keychron/common/wireless/wireless_main.c deleted file mode 100644 index e37a218a35..0000000000 --- a/keyboards/keychron/common/wireless/wireless_main.c +++ /dev/null @@ -1,36 +0,0 @@ -/* Copyright 2023 @ lokher (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 . - */ - -#include "quantum.h" -#include "wireless.h" -#include "transport.h" -#include "factory_test.h" -#include "keychron_task.h" - -__attribute__((weak)) void wireless_pre_task(void) {} -__attribute__((weak)) void wireless_post_task(void) {} - -bool wireless_tasks(void) { - wireless_pre_task(); - wireless_task(); - wireless_post_task(); - - /* usb_remote_wakeup() should be invoked last so that we have chance - * to switch to wireless after start-up when usb is not connected - */ - if (get_transport() == TRANSPORT_USB) usb_remote_wakeup(); - return true; -} diff --git a/keyboards/keychron/k10_max/ansi/rgb/config.h b/keyboards/keychron/k10_max/ansi/rgb/config.h deleted file mode 100644 index dbd6620fc7..0000000000 --- a/keyboards/keychron/k10_max/ansi/rgb/config.h +++ /dev/null @@ -1,48 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#pragma once - -#ifdef RGB_MATRIX_ENABLE -/* RGB Matrix driver configuration */ -# define DRIVER_COUNT 2 -# define RGB_MATRIX_LED_COUNT 108 - -# define DRIVER_CS_PINS \ - { B8, B9 } - -/* Scan phase of led driver set as MSKPHASE_12CHANNEL(defined as 0x03 in snled27351.h) */ -# define SNLED27351_PHASE_CHANNEL MSKPHASE_12CHANNEL - -/* Set LED driver current */ -# define SNLED27351_CURRENT_TUNE \ - { 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30 } - -/* Set to infinit, which is use in USB mode by default */ -# define RGB_MATRIX_TIMEOUT RGB_MATRIX_TIMEOUT_INFINITE - -/* Allow shutdown of led driver to save power */ -# define RGB_MATRIX_DRIVER_SHUTDOWN_ENABLE -/* Turn off backlight on low brightness to save power */ -# define RGB_MATRIX_BRIGHTNESS_TURN_OFF_VAL 48 - -/* Indications */ -# define NUM_LOCK_INDEX 36 - -# define RGB_MATRIX_KEYPRESSES -# define RGB_MATRIX_FRAMEBUFFER_EFFECTS - -#endif diff --git a/keyboards/keychron/k10_max/ansi/rgb/info.json b/keyboards/keychron/k10_max/ansi/rgb/info.json deleted file mode 100644 index a103b78158..0000000000 --- a/keyboards/keychron/k10_max/ansi/rgb/info.json +++ /dev/null @@ -1,40 +0,0 @@ -{ - "usb": { - "pid": "0x0AA0", - "device_version": "1.0.0" - }, - "features": { - "rgb_matrix": true - }, - "rgb_matrix": { - "driver": "snled27351_spi", - "sleep": true, - "animations": { - "band_spiral_val": true, - "breathing": true, - "cycle_all": true, - "cycle_left_right": true, - "cycle_out_in": true, - "cycle_out_in_dual": true, - "cycle_pinwheel": true, - "cycle_spiral": true, - "cycle_up_down": true, - "digital_rain": true, - "dual_beacon": true, - "jellybean_raindrops": true, - "pixel_rain": true, - "rainbow_beacon": true, - "rainbow_moving_chevron": true, - "solid_reactive_multinexus": true, - "solid_reactive_multiwide": true, - "solid_reactive_simple": true, - "solid_splash": true, - "splash": true, - "typing_heatmap": true - } - }, - "indicators": { - "caps_lock": "C9", - "on_state": 1 - } -} diff --git a/keyboards/keychron/k10_max/ansi/rgb/keymaps/default/keymap.c b/keyboards/keychron/k10_max/ansi/rgb/keymaps/default/keymap.c deleted file mode 100644 index 71d1d3f881..0000000000 --- a/keyboards/keychron/k10_max/ansi/rgb/keymaps/default/keymap.c +++ /dev/null @@ -1,67 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#include QMK_KEYBOARD_H -#include "keychron_common.h" - -enum layers { - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN, -}; -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_ansi_108( - KC_ESC, KC_BRID, KC_BRIU, KC_MCTRL, KC_LNPAD, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_SNAP, KC_SIRI, RGB_MOD, KC_F13, KC_F14, KC_F15, KC_F16, - KC_GRV, 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_INS, KC_HOME, KC_PGUP, KC_NUM, KC_PSLS, KC_PAST, KC_PMNS, - 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_DEL, KC_END, KC_PGDN, KC_P7, KC_P8, KC_P9, - 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_P4, KC_P5, KC_P6, KC_PPLS, - 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_P1, KC_P2, KC_P3, - KC_LCTL, KC_LOPTN, KC_LCMMD, KC_SPC, KC_RCMMD, KC_ROPTN, MO(MAC_FN), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT, KC_P0, KC_PDOT, KC_PENT), - - [MAC_FN] = LAYOUT_ansi_108( - _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, RGB_TOG, _______, _______, _______, _______, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - - [WIN_BASE] = LAYOUT_ansi_108( - KC_ESC, 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_PSCR, KC_CTANA, RGB_MOD, _______, _______, _______, _______, - KC_GRV, 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_INS, KC_HOME, KC_PGUP, KC_NUM, KC_PSLS, KC_PAST, KC_PMNS, - 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_DEL, KC_END, KC_PGDN, KC_P7, KC_P8, KC_P9, - 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_P4, KC_P5, KC_P6, KC_PPLS, - 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_P1, KC_P2, KC_P3, - KC_LCTL, KC_LWIN, KC_LALT, KC_SPC, KC_RALT, KC_RWIN, MO(WIN_FN), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT, KC_P0, KC_PDOT, KC_PENT), - - [WIN_FN] = LAYOUT_ansi_108( - _______, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, RGB_TOG, _______, _______, _______, _______, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______) -}; - -// clang-format on -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - if (!process_record_keychron_common(keycode, record)) { - return false; - } - return true; -} diff --git a/keyboards/keychron/k10_max/ansi/rgb/keymaps/via/keymap.c b/keyboards/keychron/k10_max/ansi/rgb/keymaps/via/keymap.c deleted file mode 100644 index 71d1d3f881..0000000000 --- a/keyboards/keychron/k10_max/ansi/rgb/keymaps/via/keymap.c +++ /dev/null @@ -1,67 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#include QMK_KEYBOARD_H -#include "keychron_common.h" - -enum layers { - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN, -}; -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_ansi_108( - KC_ESC, KC_BRID, KC_BRIU, KC_MCTRL, KC_LNPAD, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_SNAP, KC_SIRI, RGB_MOD, KC_F13, KC_F14, KC_F15, KC_F16, - KC_GRV, 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_INS, KC_HOME, KC_PGUP, KC_NUM, KC_PSLS, KC_PAST, KC_PMNS, - 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_DEL, KC_END, KC_PGDN, KC_P7, KC_P8, KC_P9, - 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_P4, KC_P5, KC_P6, KC_PPLS, - 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_P1, KC_P2, KC_P3, - KC_LCTL, KC_LOPTN, KC_LCMMD, KC_SPC, KC_RCMMD, KC_ROPTN, MO(MAC_FN), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT, KC_P0, KC_PDOT, KC_PENT), - - [MAC_FN] = LAYOUT_ansi_108( - _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, RGB_TOG, _______, _______, _______, _______, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - - [WIN_BASE] = LAYOUT_ansi_108( - KC_ESC, 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_PSCR, KC_CTANA, RGB_MOD, _______, _______, _______, _______, - KC_GRV, 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_INS, KC_HOME, KC_PGUP, KC_NUM, KC_PSLS, KC_PAST, KC_PMNS, - 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_DEL, KC_END, KC_PGDN, KC_P7, KC_P8, KC_P9, - 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_P4, KC_P5, KC_P6, KC_PPLS, - 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_P1, KC_P2, KC_P3, - KC_LCTL, KC_LWIN, KC_LALT, KC_SPC, KC_RALT, KC_RWIN, MO(WIN_FN), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT, KC_P0, KC_PDOT, KC_PENT), - - [WIN_FN] = LAYOUT_ansi_108( - _______, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, RGB_TOG, _______, _______, _______, _______, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______) -}; - -// clang-format on -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - if (!process_record_keychron_common(keycode, record)) { - return false; - } - return true; -} diff --git a/keyboards/keychron/k10_max/ansi/rgb/keymaps/via/rules.mk b/keyboards/keychron/k10_max/ansi/rgb/keymaps/via/rules.mk deleted file mode 100644 index 1e5b99807c..0000000000 --- a/keyboards/keychron/k10_max/ansi/rgb/keymaps/via/rules.mk +++ /dev/null @@ -1 +0,0 @@ -VIA_ENABLE = yes diff --git a/keyboards/keychron/k10_max/ansi/rgb/rgb.c b/keyboards/keychron/k10_max/ansi/rgb/rgb.c deleted file mode 100644 index 8d8e2ce44d..0000000000 --- a/keyboards/keychron/k10_max/ansi/rgb/rgb.c +++ /dev/null @@ -1,175 +0,0 @@ -/* Copyright 2024 @ 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/>. - */ - -#include "quantum.h" - -// clang-format off - -#ifdef RGB_MATRIX_ENABLE -const snled27351_led_t g_snled27351_leds[RGB_MATRIX_LED_COUNT] = { -/* Refer to SNLED27351 manual for these locations - * driver - * | R location - * | | G location - * | | | B location - * | | | | */ - {0, G_16, I_16, H_16}, - {0, G_14, I_14, H_14}, - {0, G_13, I_13, H_13}, - {0, G_12, I_12, H_12}, - {0, G_11, I_11, H_11}, - {0, G_10, I_10, H_10}, - {0, G_9, I_9, H_9}, - {0, G_8, I_8, H_8}, - {0, G_7, I_7, H_7}, - {0, G_6, I_6, H_6}, - {0, G_5, I_5, H_5}, - {0, G_4, I_4, H_4}, - {0, G_3, I_3, H_3}, - {0, G_2, I_2, H_2}, - {0, G_1, I_1, H_1}, - {1, A_3, C_3, B_3}, - {0, D_4, F_4, E_4}, - {0, D_3, F_3, E_3}, - {0, D_2, F_2, E_2}, - - {0, A_16, C_16, B_16}, - {0, A_15, C_15, B_15}, - {0, A_14, C_14, B_14}, - {0, A_13, C_13, B_13}, - {0, A_12, C_12, B_12}, - {0, A_11, C_11, B_11}, - {0, A_10, C_10, B_10}, - {0, A_9, C_9, B_9}, - {0, A_8, C_8, B_8}, - {0, A_7, C_7, B_7}, - {0, A_6, C_6, B_6}, - {0, A_5, C_5, B_5}, - {0, A_4, C_4, B_4}, - {0, A_3, C_3, B_3}, - {0, A_2, C_2, B_2}, - {0, A_1, C_1, B_1}, - {1, A_2, C_2, B_2}, - {0, D_8, F_8, E_8}, - {0, D_7, F_7, E_7}, - {0, D_6, F_6, E_6}, - - {0, J_16, L_16, K_16}, - {0, J_15, L_15, K_15}, - {0, J_14, L_14, K_14}, - {0, J_13, L_13, K_13}, - {0, J_12, L_12, K_12}, - {0, J_11, L_11, K_11}, - {0, J_10, L_10, K_10}, - {0, J_9, L_9, K_9}, - {0, J_8, L_8, K_8}, - {0, J_7, L_7, K_7}, - {0, J_6, L_6, K_6}, - {0, J_5, L_5, K_5}, - {0, J_4, L_4, K_4}, - {0, J_3, L_3, K_3}, - {0, J_2, L_2, K_2}, - {0, J_1, L_1, K_1}, - {1, A_1, C_1, B_1}, - {0, D_12, F_12, E_12}, - {0, D_11, F_11, E_11}, - {0, D_10, F_10, E_10}, - - {1, A_16, C_16, B_16}, - {1, A_15, C_15, B_15}, - {1, A_14, C_14, B_14}, - {1, A_13, C_13, B_13}, - {1, A_12, C_12, B_12}, - {1, A_11, C_11, B_11}, - {1, A_10, C_10, B_10}, - {1, A_9, C_9, B_9}, - {1, A_8, C_8, B_8}, - {1, A_7, C_7, B_7}, - {1, A_6, C_6, B_6}, - {1, A_5, C_5, B_5}, - {1, A_4, C_4, B_4}, - {0, D_1, F_1, E_1}, - {0, D_5, F_5, E_5}, - {0, D_9, F_9, E_9}, - {1, J_3, L_3, K_3}, - {1, J_9, L_9, K_9}, - {1, J_8, L_8, K_8}, - {1, J_7, L_7, K_7}, - - {1, G_16, I_16, H_16}, - {1, G_14, I_14, H_14}, - {1, G_13, I_13, H_13}, - {1, G_12, I_12, H_12}, - {1, G_11, I_11, H_11}, - {1, G_10, I_10, H_10}, - {1, G_9, I_9, H_9}, - {1, G_8, I_8, H_8}, - {1, G_7, I_7, H_7}, - {1, G_6, I_6, H_6}, - {1, G_5, I_5, H_5}, - {1, G_3, I_3, H_3}, - {1, G_1, I_1, H_1}, - {1, J_6, L_6, K_6}, - {1, J_5, L_5, K_5}, - {1, J_4, L_4, K_4}, - - {1, D_16, F_16, E_16}, - {1, D_15, F_15, E_15}, - {1, D_14, F_14, E_14}, - {1, D_10, F_10, E_10}, - {1, D_6, F_6, E_6}, - {1, D_5, F_5, E_5}, - {1, D_4, F_4, E_4}, - {1, D_3, F_3, E_3}, - {1, D_2, F_2, E_2}, - {1, D_1, F_1, E_1}, - {1, G_2, I_2, H_2}, - {1, J_2, L_2, K_2}, - {1, J_1, L_1, K_1}, -}; - -#define __ NO_LED - -led_config_t g_led_config = { - { - // Key Matrix to RGB Index - { 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, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58 }, - { 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78 }, - { 79, __, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, __, 90, __, 91, __, 92, 93, 94 }, - { 95, 96, 97, __, __, __, 98, __, __, __, 99, 100, 101, 102, 103, 104, 105, __, 106, 107 }, - }, - { - // RGB Index to Physical Position - {0, 0}, {21, 0}, {31, 0}, {42, 0}, {52, 0}, {68, 0}, {78, 0}, {89, 0}, {99, 0}, {115, 0}, {125, 0}, {136, 0}, {146, 0}, {159, 0}, {169, 0}, {180, 0}, {193, 0}, {203, 0}, {214, 0}, - {0,15}, {10,15}, {21,15}, {31,15}, {42,15}, {52,15}, {63,15}, {73,15}, {83,15}, {94,15}, {104,15}, {115,15}, {125,15}, {141,15}, {159,15}, {169,15}, {180,15}, {193,15}, {203,15}, {214,15}, - {3,27}, {16,27}, {26,27}, {36,27}, {47,27}, {57,27}, {68,27}, {78,27}, {89,27}, {99,27}, {109,27}, {120,27}, {130,27}, {143,27}, {159,27}, {169,27}, {180,27}, {193,27}, {203,27}, {214,27}, - {4,40}, {18,40}, {29,40}, {39,40}, {50,40}, {60,40}, {70,40}, {81,40}, {91,40}, {102,40},{112,40}, {123,40}, {139,40}, {224, 0}, {224,15}, {224,34}, {224,58}, {193,40}, {203,40}, {214,40}, - {7,52}, {23,52}, {34,52}, {44,52}, {55,52}, {65,52}, {76,52}, {86,52}, {96,52}, {107,52}, {117,52}, {137,52}, {169,52}, {193,52}, {203,52}, {214,52}, - {1,64}, {14,64}, {27,64}, {66,64}, {105,64}, {118,64}, {131,64}, {145,64}, {159,64}, {169,64}, {180,64}, {198,64}, {214,64}, - }, - { - // RGB Index to Flag - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - } -}; -#endif diff --git a/keyboards/keychron/k10_max/ansi/rgb/rules.mk b/keyboards/keychron/k10_max/ansi/rgb/rules.mk deleted file mode 100644 index 6e7633bfe0..0000000000 --- a/keyboards/keychron/k10_max/ansi/rgb/rules.mk +++ /dev/null @@ -1 +0,0 @@ -# This file intentionally left blank diff --git a/keyboards/keychron/k10_max/ansi/white/config.h b/keyboards/keychron/k10_max/ansi/white/config.h deleted file mode 100644 index 0a16cbf38c..0000000000 --- a/keyboards/keychron/k10_max/ansi/white/config.h +++ /dev/null @@ -1,48 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#pragma once - -#ifdef LED_MATRIX_ENABLE -/* LED matrix driver configuration */ -# define DRIVER_COUNT 1 -# define LED_MATRIX_LED_COUNT 108 -# define LED_MATRIX_VAL_STEP 16 - -# define DRIVER_CS_PINS \ - { B9 } - -/* Use first 9 channels of LED driver */ -# define SNLED27351_PHASE_CHANNEL MSKPHASE_9CHANNEL - -/* Set LED driver current */ -# define SNLED27351_CURRENT_TUNE \ - { 0x56, 0x56, 0x56, 0x56, 0x56, 0x56, 0x56, 0x56, 0x56, 0x56, 0x56, 0x56 } - -/* Set to infinit, which is use in USB mode by default */ -# define LED_MATRIX_TIMEOUT LED_MATRIX_TIMEOUT_INFINITE - -/* Allow shutdown of led driver to save power */ -# define LED_MATRIX_DRIVER_SHUTDOWN_ENABLE -/* Turn off backlight on low brightness to save power */ -# define LED_MATRIX_BRIGHTNESS_TURN_OFF_VAL 48 - -/* Indications */ -# define DIM_NUM_LOCK -# define NUM_LOCK_INDEX 36 - -# define LED_MATRIX_KEYPRESSES -#endif diff --git a/keyboards/keychron/k10_max/ansi/white/info.json b/keyboards/keychron/k10_max/ansi/white/info.json deleted file mode 100644 index 5b73b8e274..0000000000 --- a/keyboards/keychron/k10_max/ansi/white/info.json +++ /dev/null @@ -1,34 +0,0 @@ -{ - "usb": { - "pid": "0x0AA3", - "device_version": "1.0.0" - }, - "features": { - "led_matrix": true, - "encoder": false - }, - "indicators": { - "num_lock": "B2" - }, - "led_matrix": { - "driver": "snled27351_spi", - "sleep": true, - "animations": { - "none": true, - "solid": true, - "breathing": true, - "band_pinwheel": true, - "band_spiral": true, - "cycle_left_right": true, - "cycle_up_down": true, - "cycle_out_in": true, - "dual_beacon": true, - "solid_reactive_simple": true, - "solid_reactive_multiwide": true, - "solid_reactive_multinexus": true, - "solid_splash": true, - "wave_left_right": true, - "wave_up_down": true - } - } -} diff --git a/keyboards/keychron/k10_max/ansi/white/keymaps/default/keymap.c b/keyboards/keychron/k10_max/ansi/white/keymaps/default/keymap.c deleted file mode 100644 index 40db4abaf8..0000000000 --- a/keyboards/keychron/k10_max/ansi/white/keymaps/default/keymap.c +++ /dev/null @@ -1,67 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#include QMK_KEYBOARD_H -#include "keychron_common.h" - -enum layers { - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN, -}; -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_ansi_108( - KC_ESC, KC_BRID, KC_BRIU, KC_MCTRL, KC_LNPAD, BL_DOWN, BL_UP, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_SNAP, KC_SIRI, BL_STEP, KC_F13, KC_F14, KC_F15, KC_F16, - KC_GRV, 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_INS, KC_HOME, KC_PGUP, KC_NUM, KC_PSLS, KC_PAST, KC_PMNS, - 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_DEL, KC_END, KC_PGDN, KC_P7, KC_P8, KC_P9, - 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_P4, KC_P5, KC_P6, KC_PPLS, - 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_P1, KC_P2, KC_P3, - KC_LCTL, KC_LOPTN, KC_LCMMD, KC_SPC, KC_RCMMD, KC_ROPTN, MO(MAC_FN), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT, KC_P0, KC_PDOT, KC_PENT), - - [MAC_FN] = LAYOUT_ansi_108( - _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, BL_TOGG, _______, _______, _______, _______, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - BL_TOGG, BL_STEP, BL_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, BL_DOWN, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - - [WIN_BASE] = LAYOUT_ansi_108( - KC_ESC, 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_PSCR, KC_CTANA, BL_STEP, _______, _______, _______, _______, - KC_GRV, 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_INS, KC_HOME, KC_PGUP, KC_NUM, KC_PSLS, KC_PAST, KC_PMNS, - 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_DEL, KC_END, KC_PGDN, KC_P7, KC_P8, KC_P9, - 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_P4, KC_P5, KC_P6, KC_PPLS, - 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_P1, KC_P2, KC_P3, - KC_LCTL, KC_LWIN, KC_LALT, KC_SPC, KC_RALT, KC_RWIN, MO(WIN_FN), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT, KC_P0, KC_PDOT, KC_PENT), - - [WIN_FN] = LAYOUT_ansi_108( - _______, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, BL_DOWN, BL_UP, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, BL_TOGG, _______, _______, _______, _______, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - BL_TOGG, BL_STEP, BL_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, BL_DOWN, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______) -}; - -// clang-format on -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - if (!process_record_keychron_common(keycode, record)) { - return false; - } - return true; -} diff --git a/keyboards/keychron/k10_max/ansi/white/keymaps/via/keymap.c b/keyboards/keychron/k10_max/ansi/white/keymaps/via/keymap.c deleted file mode 100644 index 40db4abaf8..0000000000 --- a/keyboards/keychron/k10_max/ansi/white/keymaps/via/keymap.c +++ /dev/null @@ -1,67 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#include QMK_KEYBOARD_H -#include "keychron_common.h" - -enum layers { - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN, -}; -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_ansi_108( - KC_ESC, KC_BRID, KC_BRIU, KC_MCTRL, KC_LNPAD, BL_DOWN, BL_UP, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_SNAP, KC_SIRI, BL_STEP, KC_F13, KC_F14, KC_F15, KC_F16, - KC_GRV, 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_INS, KC_HOME, KC_PGUP, KC_NUM, KC_PSLS, KC_PAST, KC_PMNS, - 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_DEL, KC_END, KC_PGDN, KC_P7, KC_P8, KC_P9, - 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_P4, KC_P5, KC_P6, KC_PPLS, - 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_P1, KC_P2, KC_P3, - KC_LCTL, KC_LOPTN, KC_LCMMD, KC_SPC, KC_RCMMD, KC_ROPTN, MO(MAC_FN), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT, KC_P0, KC_PDOT, KC_PENT), - - [MAC_FN] = LAYOUT_ansi_108( - _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, BL_TOGG, _______, _______, _______, _______, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - BL_TOGG, BL_STEP, BL_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, BL_DOWN, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - - [WIN_BASE] = LAYOUT_ansi_108( - KC_ESC, 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_PSCR, KC_CTANA, BL_STEP, _______, _______, _______, _______, - KC_GRV, 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_INS, KC_HOME, KC_PGUP, KC_NUM, KC_PSLS, KC_PAST, KC_PMNS, - 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_DEL, KC_END, KC_PGDN, KC_P7, KC_P8, KC_P9, - 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_P4, KC_P5, KC_P6, KC_PPLS, - 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_P1, KC_P2, KC_P3, - KC_LCTL, KC_LWIN, KC_LALT, KC_SPC, KC_RALT, KC_RWIN, MO(WIN_FN), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT, KC_P0, KC_PDOT, KC_PENT), - - [WIN_FN] = LAYOUT_ansi_108( - _______, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, BL_DOWN, BL_UP, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, BL_TOGG, _______, _______, _______, _______, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - BL_TOGG, BL_STEP, BL_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, BL_DOWN, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______) -}; - -// clang-format on -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - if (!process_record_keychron_common(keycode, record)) { - return false; - } - return true; -} diff --git a/keyboards/keychron/k10_max/ansi/white/keymaps/via/rules.mk b/keyboards/keychron/k10_max/ansi/white/keymaps/via/rules.mk deleted file mode 100644 index 1e5b99807c..0000000000 --- a/keyboards/keychron/k10_max/ansi/white/keymaps/via/rules.mk +++ /dev/null @@ -1 +0,0 @@ -VIA_ENABLE = yes diff --git a/keyboards/keychron/k10_max/ansi/white/rules.mk b/keyboards/keychron/k10_max/ansi/white/rules.mk deleted file mode 100644 index 6e7633bfe0..0000000000 --- a/keyboards/keychron/k10_max/ansi/white/rules.mk +++ /dev/null @@ -1 +0,0 @@ -# This file intentionally left blank diff --git a/keyboards/keychron/k10_max/ansi/white/white.c b/keyboards/keychron/k10_max/ansi/white/white.c deleted file mode 100644 index b17a57e6f9..0000000000 --- a/keyboards/keychron/k10_max/ansi/white/white.c +++ /dev/null @@ -1,172 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#include "quantum.h" - -// clang-format off -#ifdef LED_MATRIX_ENABLE -const snled27351_led_t g_snled27351_leds[LED_MATRIX_LED_COUNT] = { -/* Refer to SNLED27351 manual for these locations - * driver - * | LED address - * | | */ - {0, A_16}, - {0, A_14}, - {0, A_13}, - {0, A_12}, - {0, A_11}, - {0, A_10}, - {0, A_9}, - {0, A_8}, - {0, A_7}, - {0, A_6}, - {0, A_5}, - {0, A_4}, - {0, A_3}, - {0, A_2}, - {0, A_1}, - {0, G_1}, - {0, G_2}, - {0, G_3}, - {0, G_4}, - - {0, B_16}, - {0, B_15}, - {0, B_14}, - {0, B_13}, - {0, B_12}, - {0, B_11}, - {0, B_10}, - {0, B_9}, - {0, B_8}, - {0, B_7}, - {0, B_6}, - {0, B_5}, - {0, B_4}, - {0, B_3}, - {0, B_2}, - {0, B_1}, - {0, H_1}, - {0, H_2}, - {0, H_3}, - {0, H_4}, - - {0, C_16}, - {0, C_15}, - {0, C_14}, - {0, C_13}, - {0, C_12}, - {0, C_11}, - {0, C_10}, - {0, C_9}, - {0, C_8}, - {0, C_7}, - {0, C_6}, - {0, C_5}, - {0, C_4}, - {0, C_3}, - {0, C_2}, - {0, C_1}, - {0, G_6}, - {0, G_7}, - {0, G_8}, - {0, G_9}, - - {0, D_16}, - {0, D_15}, - {0, D_14}, - {0, D_13}, - {0, D_12}, - {0, D_11}, - {0, D_10}, - {0, D_9}, - {0, D_8}, - {0, D_7}, - {0, D_6}, - {0, D_5}, - {0, D_4}, - {0, G_5}, - {0, H_5}, - {0, G_10}, - {0, H_10}, - {0, H_7}, - {0, H_8}, - {0, H_9}, - - {0, E_16}, - {0, E_14}, - {0, E_13}, - {0, E_12}, - {0, E_11}, - {0, E_10}, - {0, E_9}, - {0, E_8}, - {0, E_7}, - {0, E_6}, - {0, E_5}, - {0, E_3}, - {0, E_1}, - {0, H_6}, - {0, H_11}, - {0, H_12}, - - {0, F_16}, - {0, F_15}, - {0, F_14}, - {0, F_10}, - {0, F_6}, - {0, F_5}, - {0, F_4}, - {0, F_3}, - {0, F_2}, - {0, F_1}, - {0, G_13}, - {0, G_11}, - {0, G_12}, -}; - -#define __ NO_LED - -led_config_t g_led_config = { - { - // Key Matrix to LED Index - { 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, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58 }, - { 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78 }, - { 79, __, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, __, 90, __, 91, __, 92, 93, 94 }, - { 95, 96, 97, __, __, __, 98, __, __, __, 99, 100, 101, 102, 103, 104, 105, __, 106, 107 }, - }, - { - // LED Index to Physical Position - {0, 0}, {21, 0}, {31, 0}, {42, 0}, {52, 0}, {68, 0}, {78, 0}, {89, 0}, {99, 0}, {115, 0}, {125, 0}, {136, 0}, {146, 0}, {159, 0}, {169, 0}, {180, 0}, {193, 0}, {203, 0}, {214, 0}, - {0,15}, {10,15}, {21,15}, {31,15}, {42,15}, {52,15}, {63,15}, {73,15}, {83,15}, {94,15}, {104,15}, {115,15}, {125,15}, {141,15}, {159,15}, {169,15}, {180,15}, {193,15}, {203,15}, {214,15}, - {3,27}, {16,27}, {26,27}, {36,27}, {47,27}, {57,27}, {68,27}, {78,27}, {89,27}, {99,27}, {109,27}, {120,27}, {130,27}, {143,27}, {159,27}, {169,27}, {180,27}, {193,27}, {203,27}, {214,27}, - {4,40}, {18,40}, {29,40}, {39,40}, {50,40}, {60,40}, {70,40}, {81,40}, {91,40}, {102,40},{112,40}, {123,40}, {139,40}, {224, 0}, {224,15}, {224,34}, {224,58}, {193,40}, {203,40}, {214,40}, - {7,52}, {23,52}, {34,52}, {44,52}, {55,52}, {65,52}, {76,52}, {86,52}, {96,52}, {107,52}, {117,52}, {137,52}, {169,52}, {193,52}, {203,52}, {214,52}, - {1,64}, {14,64}, {27,64}, {66,64}, {105,64}, {118,64}, {131,64}, {145,64}, {159,64}, {169,64}, {180,64}, {198,64}, {214,64}, - }, - { - // LED Index to Flag - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - } -}; -#endif diff --git a/keyboards/keychron/k10_max/board.h b/keyboards/keychron/k10_max/board.h deleted file mode 100644 index d044339908..0000000000 --- a/keyboards/keychron/k10_max/board.h +++ /dev/null @@ -1,225 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#pragma once - -#include_next - -// clang-format off - -/* Set GPIOA_SWDIO to INPUT and NOT FLOATING */ -#undef VAL_GPIOA_MODER -#define VAL_GPIOA_MODER (PIN_MODE_INPUT(GPIOA_BUTTON) | \ - PIN_MODE_INPUT(GPIOA_PIN1) | \ - PIN_MODE_INPUT(GPIOA_PIN2) | \ - PIN_MODE_INPUT(GPIOA_PIN3) | \ - PIN_MODE_ALTERNATE(GPIOA_CS43L22_LRCK) |\ - PIN_MODE_ALTERNATE(GPIOA_L3GD20_SCL) | \ - PIN_MODE_ALTERNATE(GPIOA_L3GD20_SD0) | \ - PIN_MODE_ALTERNATE(GPIOA_L3GD20_SDI) | \ - PIN_MODE_INPUT(GPIOA_PIN8) | \ - PIN_MODE_INPUT(GPIOA_VBUS_FS) | \ - PIN_MODE_ALTERNATE(GPIOA_OTG_FS_ID) | \ - PIN_MODE_ALTERNATE(GPIOA_OTG_FS_DM) | \ - PIN_MODE_ALTERNATE(GPIOA_OTG_FS_DP) | \ - PIN_MODE_INPUT(GPIOA_SWDIO) | \ - PIN_MODE_INPUT(GPIOA_SWCLK) | \ - PIN_MODE_INPUT(GPIOA_PIN15)) - -#undef VAL_GPIOA_PUPDR -#define VAL_GPIOA_PUPDR (PIN_PUPDR_FLOATING(GPIOA_BUTTON) | \ - PIN_PUPDR_PULLUP(GPIOA_PIN1) | \ - PIN_PUPDR_PULLUP(GPIOA_PIN2) | \ - PIN_PUPDR_PULLUP(GPIOA_PIN3) | \ - PIN_PUPDR_FLOATING(GPIOA_CS43L22_LRCK) |\ - PIN_PUPDR_FLOATING(GPIOA_L3GD20_SCL) | \ - PIN_PUPDR_PULLUP(GPIOA_L3GD20_SD0) | \ - PIN_PUPDR_PULLUP(GPIOA_L3GD20_SDI) | \ - PIN_PUPDR_PULLDOWN(GPIOA_PIN8) | \ - PIN_PUPDR_FLOATING(GPIOA_VBUS_FS) | \ - PIN_PUPDR_FLOATING(GPIOA_OTG_FS_ID) | \ - PIN_PUPDR_FLOATING(GPIOA_OTG_FS_DM) | \ - PIN_PUPDR_FLOATING(GPIOA_OTG_FS_DP) | \ - PIN_PUPDR_PULLDOWN(GPIOA_SWDIO) | \ - PIN_PUPDR_PULLUP(GPIOA_SWCLK) | \ - PIN_PUPDR_PULLUP(GPIOA_PIN15)) - -#undef VAL_GPIOB_MODER -#define VAL_GPIOB_MODER (PIN_MODE_INPUT(GPIOB_PIN0) | \ - PIN_MODE_INPUT(GPIOB_PIN1) | \ - PIN_MODE_INPUT(GPIOB_PIN2) | \ - PIN_MODE_INPUT(GPIOB_SWO) | \ - PIN_MODE_INPUT(GPIOB_PIN4) | \ - PIN_MODE_INPUT(GPIOB_PIN5) | \ - PIN_MODE_INPUT(GPIOB_LSM303DLHC_SCL) | \ - PIN_MODE_INPUT(GPIOB_PIN7) | \ - PIN_MODE_INPUT(GPIOB_PIN8) | \ - PIN_MODE_INPUT(GPIOB_LSM303DLHC_SDA) | \ - PIN_MODE_INPUT(GPIOB_MP45DT02_CLK_IN) |\ - PIN_MODE_INPUT(GPIOB_PIN11) | \ - PIN_MODE_INPUT(GPIOB_PIN12) | \ - PIN_MODE_INPUT(GPIOB_PIN13) | \ - PIN_MODE_INPUT(GPIOB_PIN14) | \ - PIN_MODE_INPUT(GPIOB_PIN15)) - -#undef VAL_GPIOB_PUPDR -#define VAL_GPIOB_PUPDR (PIN_PUPDR_PULLDOWN(GPIOB_PIN0) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN1) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN2) | \ - PIN_PUPDR_PULLDOWN(GPIOB_SWO) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN4) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN5) | \ - PIN_PUPDR_PULLDOWN(GPIOB_LSM303DLHC_SCL) |\ - PIN_PUPDR_PULLDOWN(GPIOB_PIN7) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN8) | \ - PIN_PUPDR_PULLDOWN(GPIOB_LSM303DLHC_SDA) |\ - PIN_PUPDR_PULLDOWN(GPIOB_MP45DT02_CLK_IN) |\ - PIN_PUPDR_PULLDOWN(GPIOB_PIN11) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN12) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN13) | \ - PIN_PUPDR_PULLUP(GPIOB_PIN14) | \ - PIN_PUPDR_PULLUP(GPIOB_PIN15)) - -#undef VAL_GPIOB_AFRL -#define VAL_GPIOB_AFRL (PIN_AFIO_AF(GPIOB_PIN0, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN1, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN2, 0U) | \ - PIN_AFIO_AF(GPIOB_SWO, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN4, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN5, 0U) | \ - PIN_AFIO_AF(GPIOB_LSM303DLHC_SCL, 0) | \ - PIN_AFIO_AF(GPIOB_PIN7, 0U)) - -#undef VAL_GPIOB_AFRH -#define VAL_GPIOB_AFRH (PIN_AFIO_AF(GPIOB_PIN8, 0U) | \ - PIN_AFIO_AF(GPIOB_LSM303DLHC_SDA, 0) | \ - PIN_AFIO_AF(GPIOB_MP45DT02_CLK_IN, 0U) |\ - PIN_AFIO_AF(GPIOB_PIN11, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN12, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN13, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN14, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN15, 0U)) - -/* C5 Need to be pulldown */ -#undef VAL_GPIOC_MODER -#define VAL_GPIOC_MODER (PIN_MODE_INPUT(GPIOC_OTG_FS_POWER_ON) |\ - PIN_MODE_INPUT(GPIOC_PIN1) | \ - PIN_MODE_INPUT(GPIOC_PIN2) | \ - PIN_MODE_INPUT(GPIOC_CS43L22_AIN4x) | \ - PIN_MODE_INPUT(GPIOC_PIN4) | \ - PIN_MODE_INPUT(GPIOC_PIN5) | \ - PIN_MODE_INPUT(GPIOC_PIN6) | \ - PIN_MODE_INPUT(GPIOC_CS43L22_MCLK) | \ - PIN_MODE_INPUT(GPIOC_PIN8) | \ - PIN_MODE_INPUT(GPIOC_PIN9) | \ - PIN_MODE_INPUT(GPIOC_CS43L22_SCLK) | \ - PIN_MODE_INPUT(GPIOC_PIN11) | \ - PIN_MODE_INPUT(GPIOC_CS43L22_SDIN) | \ - PIN_MODE_INPUT(GPIOC_PIN13) | \ - PIN_MODE_INPUT(GPIOC_OSC32_IN) | \ - PIN_MODE_INPUT(GPIOC_OSC32_OUT)) - -#undef VAL_GPIOC_PUPDR -#define VAL_GPIOC_PUPDR (PIN_PUPDR_PULLUP(GPIOC_OTG_FS_POWER_ON) |\ - PIN_PUPDR_PULLUP(GPIOC_PIN1) | \ - PIN_PUPDR_PULLUP(GPIOC_PIN2) | \ - PIN_PUPDR_PULLUP(GPIOC_CS43L22_AIN4x) |\ - PIN_PUPDR_PULLUP(GPIOC_PIN4) | \ - PIN_PUPDR_PULLDOWN(GPIOC_PIN5) | \ - PIN_PUPDR_PULLDOWN(GPIOC_PIN6) | \ - PIN_PUPDR_PULLUP(GPIOC_CS43L22_MCLK) | \ - PIN_PUPDR_PULLDOWN(GPIOC_PIN8) | \ - PIN_PUPDR_PULLDOWN(GPIOC_PIN9) | \ - PIN_PUPDR_PULLUP(GPIOC_CS43L22_SCLK) | \ - PIN_PUPDR_PULLUP(GPIOC_PIN11) | \ - PIN_PUPDR_PULLUP(GPIOC_CS43L22_SDIN) | \ - PIN_PUPDR_PULLUP(GPIOC_PIN13) | \ - PIN_PUPDR_PULLUP(GPIOC_OSC32_IN) | \ - PIN_PUPDR_PULLUP(GPIOC_OSC32_OUT)) - -/* Set all GPIOD pins to INPUT & PULLUP to avoid FLOATING */ -#undef VAL_GPIOD_MODER -#define VAL_GPIOD_MODER (PIN_MODE_INPUT(GPIOD_PIN0) | \ - PIN_MODE_INPUT(GPIOD_PIN1) | \ - PIN_MODE_INPUT(GPIOD_PIN2) | \ - PIN_MODE_INPUT(GPIOD_PIN3) | \ - PIN_MODE_INPUT(GPIOD_CS43L22_RESET) | \ - PIN_MODE_INPUT(GPIOD_OverCurrent) | \ - PIN_MODE_INPUT(GPIOD_PIN6) | \ - PIN_MODE_INPUT(GPIOD_PIN7) | \ - PIN_MODE_INPUT(GPIOD_PIN8) | \ - PIN_MODE_INPUT(GPIOD_PIN9) | \ - PIN_MODE_INPUT(GPIOD_PIN10) | \ - PIN_MODE_INPUT(GPIOD_PIN11) | \ - PIN_MODE_INPUT(GPIOD_LED4) | \ - PIN_MODE_INPUT(GPIOD_LED3) | \ - PIN_MODE_INPUT(GPIOD_LED5) | \ - PIN_MODE_INPUT(GPIOD_LED6)) - -#undef VAL_GPIOD_PUPDR -#define VAL_GPIOD_PUPDR (PIN_PUPDR_PULLUP(GPIOD_PIN0) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN1) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN2) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN3) | \ - PIN_PUPDR_PULLUP(GPIOD_CS43L22_RESET) |\ - PIN_PUPDR_PULLUP(GPIOD_OverCurrent) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN6) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN7) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN8) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN9) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN10) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN11) | \ - PIN_PUPDR_PULLUP(GPIOD_LED4) | \ - PIN_PUPDR_PULLUP(GPIOD_LED3) | \ - PIN_PUPDR_PULLUP(GPIOD_LED5) | \ - PIN_PUPDR_PULLUP(GPIOD_LED6)) - -/* Set all GPIOE pins to INPUT & PULLUP to avoid FLOATING */ -#undef VAL_GPIOE_MODER -#define VAL_GPIOE_MODER (PIN_MODE_INPUT(GPIOE_L3GD20_INT1) | \ - PIN_MODE_INPUT(GPIOE_L3GD20_INT2) | \ - PIN_MODE_INPUT(GPIOE_LSM303DLHC_DRDY) |\ - PIN_MODE_INPUT(GPIOE_L3GD20_CS) | \ - PIN_MODE_INPUT(GPIOE_LSM303DLHC_INT1) |\ - PIN_MODE_INPUT(GPIOE_LSM303DLHC_INT2) |\ - PIN_MODE_INPUT(GPIOE_PIN6) | \ - PIN_MODE_INPUT(GPIOE_PIN7) | \ - PIN_MODE_INPUT(GPIOE_PIN8) | \ - PIN_MODE_INPUT(GPIOE_PIN9) | \ - PIN_MODE_INPUT(GPIOE_PIN10) | \ - PIN_MODE_INPUT(GPIOE_PIN11) | \ - PIN_MODE_INPUT(GPIOE_PIN12) | \ - PIN_MODE_INPUT(GPIOE_PIN13) | \ - PIN_MODE_INPUT(GPIOE_PIN14) | \ - PIN_MODE_INPUT(GPIOE_PIN15)) - -#undef VAL_GPIOE_PUPDR -#define VAL_GPIOE_PUPDR (PIN_PUPDR_PULLUP(GPIOE_L3GD20_INT1) | \ - PIN_PUPDR_PULLUP(GPIOE_L3GD20_INT2) | \ - PIN_PUPDR_PULLUP(GPIOE_LSM303DLHC_DRDY) |\ - PIN_PUPDR_PULLUP(GPIOE_L3GD20_CS) | \ - PIN_PUPDR_PULLUP(GPIOE_LSM303DLHC_INT1) |\ - PIN_PUPDR_PULLUP(GPIOE_LSM303DLHC_INT2) |\ - PIN_PUPDR_PULLUP(GPIOE_PIN6) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN7) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN8) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN9) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN10) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN11) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN12) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN13) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN14) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN15)) diff --git a/keyboards/keychron/k10_max/config.h b/keyboards/keychron/k10_max/config.h deleted file mode 100644 index 4c33f9dd2b..0000000000 --- a/keyboards/keychron/k10_max/config.h +++ /dev/null @@ -1,95 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#pragma once - -#if defined(RGB_MATRIX_ENABLE) || defined(LED_MATRIX_ENABLE) -/* Hardware configuration */ -# define SPI_DRIVER SPID1 -# define SPI_SCK_PIN A5 -# define SPI_MISO_PIN A6 -# define SPI_MOSI_PIN A7 -# define LED_DRIVER_SHUTDOWN_PIN B7 -# define SNLED23751_SPI_DIVISOR 16 - -# ifdef LK_WIRELESS_ENABLE -# define BT_HOST_LED_MATRIX_LIST \ - { 20, 21, 22 } - -# define P2P4G_HOST_LED_MATRIX_LIST \ - { 23 } - -# define BAT_LEVEL_LED_LIST \ - { 20, 21, 22, 23, 24, 25, 26, 27, 28, 29 } - -/* 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 - -/* Reinit LED driver on tranport changed */ -# define REINIT_LED_DRIVER 1 -# endif -#endif - -#ifdef LK_WIRELESS_ENABLE -/* Hardware configuration */ -# define P2P4_MODE_SELECT_PIN A9 -# define BT_MODE_SELECT_PIN A10 - -# define LKBT51_RESET_PIN C4 -# define LKBT51_INT_INPUT_PIN B1 -# define BLUETOOTH_INT_OUTPUT_PIN A4 - -# define USB_POWER_SENSE_PIN B0 -# define USB_POWER_CONNECTED_LEVEL 0 - -# define BAT_CHARGING_PIN B13 -# define BAT_CHARGING_LEVEL 0 - -# define BAT_LOW_LED_PIN C5 -# define BAT_LOW_LED_PIN_ON_STATE 1 - -# define BT_HOST_DEVICES_COUNT 3 - -# define BT_HOST_LED_PIN_LIST \ - { B15, B15, B15 } -# define HOST_LED_PIN_ON_STATE 0 - -# define P24G_HOST_DEVICES_COUNT 1 - -# define P24G_HOST_LED_PIN_LIST \ - { B14 } - -/* Keep USB connection in blueooth mode */ -# define KEEP_USB_CONNECTION_IN_WIRELESS_MODE - -/* Enable bluetooth NKRO */ -# define WIRELESS_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 - -/* Factory test keys */ -#define FN_KEY_1 MO(1) -#define FN_KEY_2 MO(3) - -#define MATRIX_IO_DELAY 10 diff --git a/keyboards/keychron/k10_max/firmware/keychron_k10_max_ansi_rgb_via.bin b/keyboards/keychron/k10_max/firmware/keychron_k10_max_ansi_rgb_via.bin deleted file mode 100644 index 2b0e78adbf..0000000000 Binary files a/keyboards/keychron/k10_max/firmware/keychron_k10_max_ansi_rgb_via.bin and /dev/null differ diff --git a/keyboards/keychron/k10_max/firmware/keychron_k10_max_ansi_white_via.bin b/keyboards/keychron/k10_max/firmware/keychron_k10_max_ansi_white_via.bin deleted file mode 100644 index 427a1c5779..0000000000 Binary files a/keyboards/keychron/k10_max/firmware/keychron_k10_max_ansi_white_via.bin and /dev/null differ diff --git a/keyboards/keychron/k10_max/firmware/keychron_k10_max_iso_rgb_via.bin b/keyboards/keychron/k10_max/firmware/keychron_k10_max_iso_rgb_via.bin deleted file mode 100644 index 0b1cf18956..0000000000 Binary files a/keyboards/keychron/k10_max/firmware/keychron_k10_max_iso_rgb_via.bin and /dev/null differ diff --git a/keyboards/keychron/k10_max/firmware/keychron_k10_max_iso_white_via.bin b/keyboards/keychron/k10_max/firmware/keychron_k10_max_iso_white_via.bin deleted file mode 100644 index 85295ff2f7..0000000000 Binary files a/keyboards/keychron/k10_max/firmware/keychron_k10_max_iso_white_via.bin and /dev/null differ diff --git a/keyboards/keychron/k10_max/halconf.h b/keyboards/keychron/k10_max/halconf.h deleted file mode 100644 index be6b5564c0..0000000000 --- a/keyboards/keychron/k10_max/halconf.h +++ /dev/null @@ -1,28 +0,0 @@ -/* Copyright 2024 @ 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 - -#define _CHIBIOS_HAL_CONF_VER_8_0_ - -#define HAL_USE_SPI TRUE - -#ifdef LK_WIRELESS_ENABLE -# define HAL_USE_RTC TRUE -# define PAL_USE_CALLBACKS TRUE -#endif - -#include_next diff --git a/keyboards/keychron/k10_max/info.json b/keyboards/keychron/k10_max/info.json deleted file mode 100644 index 3c5e7d1d73..0000000000 --- a/keyboards/keychron/k10_max/info.json +++ /dev/null @@ -1,281 +0,0 @@ -{ - "keyboard_name": "Keychron K10 Max", - "manufacturer": "Keychron", - "url": "https://github.com/Keychron", - "maintainer": "Keychron", - "processor": "STM32F401", - "bootloader": "stm32-dfu", - "usb": { - "vid": "0x3434" - }, - "features": { - "bootmagic": true, - "extrakey": true, - "mousekey": true, - "dip_switch": true, - "encoder": false, - "encoder_map": false, - "nkro": true, - "raw": true, - "sendstring": true - }, - "diode_direction": "ROW2COL", - "dip_switch" :{ - "pins": ["B12"] - }, - "dynamic_keymap": { - "layer_count": 4 - }, - "eeprom": { - "wear_leveling": { - "driver": "embedded_flash", - "logical_size": 2048, - "backing_size": 4096 - } - }, - "indicators": { - "caps_lock": "C9", - "on_state": 1 - }, - "matrix_pins": { - "cols": ["C6", "C7", "C8", "A13", "A14", "A15", "C10", "C11", "C13", "C14", "C15", "C0", "C1", "C2", "C3", "A0", "A1", "A2", "A3", "B10"], - "rows": ["C12", "D2", "B3", "B4", "B5", "B6"] - }, - "layouts": { - "LAYOUT_ansi_108": { - "layout": [ - {"matrix": [0, 0], "x": 0, "y": 0}, - {"matrix": [0, 2], "x": 2, "y": 0}, - {"matrix": [0, 3], "x": 3, "y": 0}, - {"matrix": [0, 4], "x": 4, "y": 0}, - {"matrix": [0, 5], "x": 5, "y": 0}, - {"matrix": [0, 6], "x": 6.5, "y": 0}, - {"matrix": [0, 7], "x": 7.5, "y": 0}, - {"matrix": [0, 8], "x": 8.5, "y": 0}, - {"matrix": [0, 9], "x": 9.5, "y": 0}, - {"matrix": [0, 10], "x": 11, "y": 0}, - {"matrix": [0, 11], "x": 12, "y": 0}, - {"matrix": [0, 12], "x": 13, "y": 0}, - {"matrix": [0, 13], "x": 14, "y": 0}, - {"matrix": [0, 14], "x": 15.25, "y": 0}, - {"matrix": [0, 15], "x": 16.25, "y": 0}, - {"matrix": [0, 16], "x": 17.25, "y": 0}, - {"matrix": [0, 17], "x": 18.5, "y": 0}, - {"matrix": [0, 18], "x": 19.5, "y": 0}, - {"matrix": [0, 19], "x": 20.5, "y": 0}, - {"matrix": [3, 13], "x": 21.5, "y": 0}, - - {"matrix": [1, 0], "x": 0, "y": 1.25}, - {"matrix": [1, 1], "x": 1, "y": 1.25}, - {"matrix": [1, 2], "x": 2, "y": 1.25}, - {"matrix": [1, 3], "x": 3, "y": 1.25}, - {"matrix": [1, 4], "x": 4, "y": 1.25}, - {"matrix": [1, 5], "x": 5, "y": 1.25}, - {"matrix": [1, 6], "x": 6, "y": 1.25}, - {"matrix": [1, 7], "x": 7, "y": 1.25}, - {"matrix": [1, 8], "x": 8, "y": 1.25}, - {"matrix": [1, 9], "x": 9, "y": 1.25}, - {"matrix": [1, 10], "x": 10, "y": 1.25}, - {"matrix": [1, 11], "x": 11, "y": 1.25}, - {"matrix": [1, 12], "x": 12, "y": 1.25}, - {"matrix": [1, 13], "x": 13, "y": 1.25, "w": 2}, - {"matrix": [1, 14], "x": 15.25, "y": 1.25}, - {"matrix": [1, 15], "x": 16.25, "y": 1.25}, - {"matrix": [1, 16], "x": 17.25, "y": 1.25}, - {"matrix": [1, 17], "x": 18.5, "y": 1.25}, - {"matrix": [1, 18], "x": 19.5, "y": 1.25}, - {"matrix": [1, 19], "x": 20.5, "y": 1.25}, - {"matrix": [3, 14], "x": 21.5, "y": 1.25}, - - {"matrix": [2, 0], "x": 0, "y": 2.25, "w": 1.5}, - {"matrix": [2, 1], "x": 1.5, "y": 2.25}, - {"matrix": [2, 2], "x": 2.5, "y": 2.25}, - {"matrix": [2, 3], "x": 3.5, "y": 2.25}, - {"matrix": [2, 4], "x": 4.5, "y": 2.25}, - {"matrix": [2, 5], "x": 5.5, "y": 2.25}, - {"matrix": [2, 6], "x": 6.5, "y": 2.25}, - {"matrix": [2, 7], "x": 7.5, "y": 2.25}, - {"matrix": [2, 8], "x": 8.5, "y": 2.25}, - {"matrix": [2, 9], "x": 9.5, "y": 2.25}, - {"matrix": [2, 10], "x": 10.5, "y": 2.25}, - {"matrix": [2, 11], "x": 11.5, "y": 2.25}, - {"matrix": [2, 12], "x": 12.5, "y": 2.25}, - {"matrix": [2, 13], "x": 13.5, "y": 2.25, "w": 1.5}, - {"matrix": [2, 14], "x": 15.25, "y": 2.25}, - {"matrix": [2, 15], "x": 16.25, "y": 2.25}, - {"matrix": [2, 16], "x": 17.25, "y": 2.25}, - {"matrix": [2, 17], "x": 18.5, "y": 2.25}, - {"matrix": [2, 18], "x": 19.5, "y": 2.25}, - {"matrix": [2, 19], "x": 20.5, "y": 2.25}, - - {"matrix": [3, 0], "x": 0, "y": 3.25, "w": 1.75}, - {"matrix": [3, 1], "x": 1.75, "y": 3.25}, - {"matrix": [3, 2], "x": 2.75, "y": 3.25}, - {"matrix": [3, 3], "x": 3.75, "y": 3.25}, - {"matrix": [3, 4], "x": 4.75, "y": 3.25}, - {"matrix": [3, 5], "x": 5.75, "y": 3.25}, - {"matrix": [3, 6], "x": 6.75, "y": 3.25}, - {"matrix": [3, 7], "x": 7.75, "y": 3.25}, - {"matrix": [3, 8], "x": 8.75, "y": 3.25}, - {"matrix": [3, 9], "x": 9.75, "y": 3.25}, - {"matrix": [3, 10], "x": 10.75, "y": 3.25}, - {"matrix": [3, 11], "x": 11.75, "y": 3.25}, - {"matrix": [3, 12], "x": 12.75, "y": 3.25, "w": 2.25}, - {"matrix": [3, 17], "x": 18.5, "y": 3.25}, - {"matrix": [3, 18], "x": 19.5, "y": 3.25}, - {"matrix": [3, 19], "x": 20.5, "y": 3.25}, - {"matrix": [3, 15], "x": 21.5, "y": 2.25, "h": 2}, - - {"matrix": [4, 0], "x": 0, "y": 4.25, "w": 2.25}, - {"matrix": [4, 2], "x": 2.25, "y": 4.25}, - {"matrix": [4, 3], "x": 3.25, "y": 4.25}, - {"matrix": [4, 4], "x": 4.25, "y": 4.25}, - {"matrix": [4, 5], "x": 5.25, "y": 4.25}, - {"matrix": [4, 6], "x": 6.25, "y": 4.25}, - {"matrix": [4, 7], "x": 7.25, "y": 4.25}, - {"matrix": [4, 8], "x": 8.25, "y": 4.25}, - {"matrix": [4, 9], "x": 9.25, "y": 4.25}, - {"matrix": [4, 10], "x": 10.25, "y": 4.25}, - {"matrix": [4, 11], "x": 11.25, "y": 4.25}, - {"matrix": [4, 13], "x": 12.25, "y": 4.25, "w": 2.75}, - {"matrix": [4, 15], "x": 16.25, "y": 4.25}, - {"matrix": [4, 17], "x": 18.5, "y": 4.25}, - {"matrix": [4, 18], "x": 19.5, "y": 4.25}, - {"matrix": [4, 19], "x": 20.5, "y": 4.25}, - - {"matrix": [5, 0], "x": 0, "y": 5.25, "w": 1.25}, - {"matrix": [5, 1], "x": 1.25, "y": 5.25, "w": 1.25}, - {"matrix": [5, 2], "x": 2.5, "y": 5.25, "w": 1.25}, - {"matrix": [5, 6], "x": 3.75, "y": 5.25, "w": 6.25}, - {"matrix": [5, 10], "x": 10, "y": 5.25, "w": 1.25}, - {"matrix": [5, 11], "x": 11.25, "y": 5.25, "w": 1.25}, - {"matrix": [5, 12], "x": 12.5, "y": 5.25, "w": 1.25}, - {"matrix": [5, 13], "x": 13.75, "y": 5.25, "w": 1.25}, - {"matrix": [5, 14], "x": 15.25, "y": 5.25}, - {"matrix": [5, 15], "x": 16.25, "y": 5.25}, - {"matrix": [5, 16], "x": 17.25, "y": 5.25}, - {"matrix": [5, 18], "x": 18.5, "y": 5.25, "w": 2}, - {"matrix": [5, 19], "x": 20.5, "y": 5.25}, - {"matrix": [3, 16], "x": 21.5, "y": 4.25, "h": 2} - ] - }, - "LAYOUT_iso_109": { - "layout": [ - {"matrix": [0, 0], "x": 0, "y": 0}, - {"matrix": [0, 2], "x": 2, "y": 0}, - {"matrix": [0, 3], "x": 3, "y": 0}, - {"matrix": [0, 4], "x": 4, "y": 0}, - {"matrix": [0, 5], "x": 5, "y": 0}, - {"matrix": [0, 6], "x": 6.5, "y": 0}, - {"matrix": [0, 7], "x": 7.5, "y": 0}, - {"matrix": [0, 8], "x": 8.5, "y": 0}, - {"matrix": [0, 9], "x": 9.5, "y": 0}, - {"matrix": [0, 10], "x": 11, "y": 0}, - {"matrix": [0, 11], "x": 12, "y": 0}, - {"matrix": [0, 12], "x": 13, "y": 0}, - {"matrix": [0, 13], "x": 14, "y": 0}, - {"matrix": [0, 14], "x": 15.25, "y": 0}, - {"matrix": [0, 15], "x": 16.25, "y": 0}, - {"matrix": [0, 16], "x": 17.25, "y": 0}, - {"matrix": [0, 17], "x": 18.5, "y": 0}, - {"matrix": [0, 18], "x": 19.5, "y": 0}, - {"matrix": [0, 19], "x": 20.5, "y": 0}, - {"matrix": [3, 13], "x": 21.5, "y": 0}, - - {"matrix": [1, 0], "x": 0, "y": 1.25}, - {"matrix": [1, 1], "x": 1, "y": 1.25}, - {"matrix": [1, 2], "x": 2, "y": 1.25}, - {"matrix": [1, 3], "x": 3, "y": 1.25}, - {"matrix": [1, 4], "x": 4, "y": 1.25}, - {"matrix": [1, 5], "x": 5, "y": 1.25}, - {"matrix": [1, 6], "x": 6, "y": 1.25}, - {"matrix": [1, 7], "x": 7, "y": 1.25}, - {"matrix": [1, 8], "x": 8, "y": 1.25}, - {"matrix": [1, 9], "x": 9, "y": 1.25}, - {"matrix": [1, 10], "x": 10, "y": 1.25}, - {"matrix": [1, 11], "x": 11, "y": 1.25}, - {"matrix": [1, 12], "x": 12, "y": 1.25}, - {"matrix": [1, 13], "x": 13, "y": 1.25, "w": 2}, - {"matrix": [1, 14], "x": 15.25, "y": 1.25}, - {"matrix": [1, 15], "x": 16.25, "y": 1.25}, - {"matrix": [1, 16], "x": 17.25, "y": 1.25}, - {"matrix": [1, 17], "x": 18.5, "y": 1.25}, - {"matrix": [1, 18], "x": 19.5, "y": 1.25}, - {"matrix": [1, 19], "x": 20.5, "y": 1.25}, - {"matrix": [3, 14], "x": 21.5, "y": 1.25}, - - {"matrix": [2, 0], "x": 0, "y": 2.25, "w": 1.5}, - {"matrix": [2, 1], "x": 1.5, "y": 2.25}, - {"matrix": [2, 2], "x": 2.5, "y": 2.25}, - {"matrix": [2, 3], "x": 3.5, "y": 2.25}, - {"matrix": [2, 4], "x": 4.5, "y": 2.25}, - {"matrix": [2, 5], "x": 5.5, "y": 2.25}, - {"matrix": [2, 6], "x": 6.5, "y": 2.25}, - {"matrix": [2, 7], "x": 7.5, "y": 2.25}, - {"matrix": [2, 8], "x": 8.5, "y": 2.25}, - {"matrix": [2, 9], "x": 9.5, "y": 2.25}, - {"matrix": [2, 10], "x": 10.5, "y": 2.25}, - {"matrix": [2, 11], "x": 11.5, "y": 2.25}, - {"matrix": [2, 12], "x": 12.5, "y": 2.25}, - {"matrix": [2, 14], "x": 15.25, "y": 2.25}, - {"matrix": [2, 15], "x": 16.25, "y": 2.25}, - {"matrix": [2, 16], "x": 17.25, "y": 2.25}, - {"matrix": [2, 17], "x": 18.5, "y": 2.25}, - {"matrix": [2, 18], "x": 19.5, "y": 2.25}, - {"matrix": [2, 19], "x": 20.5, "y": 2.25}, - - {"matrix": [3, 0], "x": 0, "y": 3.25, "w": 1.75}, - {"matrix": [3, 1], "x": 1.75, "y": 3.25}, - {"matrix": [3, 2], "x": 2.75, "y": 3.25}, - {"matrix": [3, 3], "x": 3.75, "y": 3.25}, - {"matrix": [3, 4], "x": 4.75, "y": 3.25}, - {"matrix": [3, 5], "x": 5.75, "y": 3.25}, - {"matrix": [3, 6], "x": 6.75, "y": 3.25}, - {"matrix": [3, 7], "x": 7.75, "y": 3.25}, - {"matrix": [3, 8], "x": 8.75, "y": 3.25}, - {"matrix": [3, 9], "x": 9.75, "y": 3.25}, - {"matrix": [3, 10], "x": 10.75, "y": 3.25}, - {"matrix": [3, 11], "x": 11.75, "y": 3.25}, - {"matrix": [3, 12], "x": 12.75, "y": 3.25}, - {"matrix": [2, 13], "x": 13.75, "y": 2.25, "w": 1.25, "h": 2}, - {"matrix": [3, 17], "x": 18.5, "y": 3.25}, - {"matrix": [3, 18], "x": 19.5, "y": 3.25}, - {"matrix": [3, 19], "x": 20.5, "y": 3.25}, - {"matrix": [3, 15], "x": 21.5, "y": 2.25, "h": 2}, - - {"matrix": [4, 0], "x": 0, "y": 4.25, "w": 1.25}, - {"matrix": [4, 1], "x": 1.25, "y": 4.25}, - {"matrix": [4, 2], "x": 2.25, "y": 4.25}, - {"matrix": [4, 3], "x": 3.25, "y": 4.25}, - {"matrix": [4, 4], "x": 4.25, "y": 4.25}, - {"matrix": [4, 5], "x": 5.25, "y": 4.25}, - {"matrix": [4, 6], "x": 6.25, "y": 4.25}, - {"matrix": [4, 7], "x": 7.25, "y": 4.25}, - {"matrix": [4, 8], "x": 8.25, "y": 4.25}, - {"matrix": [4, 9], "x": 9.25, "y": 4.25}, - {"matrix": [4, 10], "x": 10.25, "y": 4.25}, - {"matrix": [4, 11], "x": 11.25, "y": 4.25}, - {"matrix": [4, 13], "x": 12.25, "y": 4.25, "w": 2.75}, - {"matrix": [4, 15], "x": 16.25, "y": 4.25}, - {"matrix": [4, 17], "x": 18.5, "y": 4.25}, - {"matrix": [4, 18], "x": 19.5, "y": 4.25}, - {"matrix": [4, 19], "x": 20.5, "y": 4.25}, - - {"matrix": [5, 0], "x": 0, "y": 5.25, "w": 1.25}, - {"matrix": [5, 1], "x": 1.25, "y": 5.25, "w": 1.25}, - {"matrix": [5, 2], "x": 2.5, "y": 5.25, "w": 1.25}, - {"matrix": [5, 6], "x": 3.75, "y": 5.25, "w": 6.25}, - {"matrix": [5, 10], "x": 10, "y": 5.25, "w": 1.25}, - {"matrix": [5, 11], "x": 11.25, "y": 5.25, "w": 1.25}, - {"matrix": [5, 12], "x": 12.5, "y": 5.25, "w": 1.25}, - {"matrix": [5, 13], "x": 13.75, "y": 5.25, "w": 1.25}, - {"matrix": [5, 14], "x": 15.25, "y": 5.25}, - {"matrix": [5, 15], "x": 16.25, "y": 5.25}, - {"matrix": [5, 16], "x": 17.25, "y": 5.25}, - {"matrix": [5, 18], "x": 18.5, "y": 5.25, "w": 2}, - {"matrix": [5, 19], "x": 20.5, "y": 5.25}, - {"matrix": [3, 16], "x": 21.5, "y": 4.25, "h": 2} - ] - } - } -} diff --git a/keyboards/keychron/k10_max/iso/rgb/config.h b/keyboards/keychron/k10_max/iso/rgb/config.h deleted file mode 100644 index 3d8a100b0b..0000000000 --- a/keyboards/keychron/k10_max/iso/rgb/config.h +++ /dev/null @@ -1,48 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#pragma once - -#ifdef RGB_MATRIX_ENABLE -/* RGB Matrix driver configuration */ -# define DRIVER_COUNT 2 -# define RGB_MATRIX_LED_COUNT 109 - -# define DRIVER_CS_PINS \ - { B8, B9 } - -/* Scan phase of led driver set as MSKPHASE_12CHANNEL(defined as 0x03 in snled27351.h) */ -# define SNLED27351_PHASE_CHANNEL MSKPHASE_12CHANNEL - -/* Set LED driver current */ -# define SNLED27351_CURRENT_TUNE \ - { 0x2C, 0x2C, 0x2C, 0x2C, 0x2C, 0x2C, 0x2C, 0x2C, 0x2C, 0x2C, 0x2C, 0x2C } - -/* Set to infinit, which is use in USB mode by default */ -# define RGB_MATRIX_TIMEOUT RGB_MATRIX_TIMEOUT_INFINITE - -/* Allow shutdown of led driver to save power */ -# define RGB_MATRIX_DRIVER_SHUTDOWN_ENABLE -/* Turn off backlight on low brightness to save power */ -# define RGB_MATRIX_BRIGHTNESS_TURN_OFF_VAL 48 - -/* Indications */ -# define NUM_LOCK_INDEX 36 - -# define RGB_MATRIX_KEYPRESSES -# define RGB_MATRIX_FRAMEBUFFER_EFFECTS - -#endif diff --git a/keyboards/keychron/k10_max/iso/rgb/info.json b/keyboards/keychron/k10_max/iso/rgb/info.json deleted file mode 100644 index ecb4228294..0000000000 --- a/keyboards/keychron/k10_max/iso/rgb/info.json +++ /dev/null @@ -1,36 +0,0 @@ -{ - "usb": { - "pid": "0x0AA1", - "device_version": "1.0.0" - }, - "features": { - "rgb_matrix": true - }, - "rgb_matrix": { - "driver": "snled27351_spi", - "sleep": true, - "animations": { - "band_spiral_val": true, - "breathing": true, - "cycle_all": true, - "cycle_left_right": true, - "cycle_out_in": true, - "cycle_out_in_dual": true, - "cycle_pinwheel": true, - "cycle_spiral": true, - "cycle_up_down": true, - "digital_rain": true, - "dual_beacon": true, - "jellybean_raindrops": true, - "pixel_rain": true, - "rainbow_beacon": true, - "rainbow_moving_chevron": true, - "solid_reactive_multinexus": true, - "solid_reactive_multiwide": true, - "solid_reactive_simple": true, - "solid_splash": true, - "splash": true, - "typing_heatmap": true - } - } -} diff --git a/keyboards/keychron/k10_max/iso/rgb/keymaps/default/keymap.c b/keyboards/keychron/k10_max/iso/rgb/keymaps/default/keymap.c deleted file mode 100644 index 3b986a3003..0000000000 --- a/keyboards/keychron/k10_max/iso/rgb/keymaps/default/keymap.c +++ /dev/null @@ -1,67 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#include QMK_KEYBOARD_H -#include "keychron_common.h" - -enum layers { - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN, -}; -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_iso_109( - KC_ESC, KC_BRID, KC_BRIU, KC_MCTRL, KC_LNPAD, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_SNAP, KC_SIRI, RGB_MOD, KC_F13, KC_F14, KC_F15, KC_F16, - KC_GRV, 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_INS, KC_HOME, KC_PGUP, KC_NUM, KC_PSLS, KC_PAST, KC_PMNS, - 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_DEL, KC_END, KC_PGDN, KC_P7, KC_P8, KC_P9, - 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_NUHS, KC_ENT, KC_P4, KC_P5, KC_P6, KC_PPLS, - KC_LSFT, KC_NUBS, 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_P1, KC_P2, KC_P3, - KC_LCTL, KC_LOPTN, KC_LCMMD, KC_SPC, KC_RCMMD, KC_ROPTN, MO(MAC_FN), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT, KC_P0, KC_PDOT, KC_PENT), - - [MAC_FN] = LAYOUT_iso_109( - _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, RGB_TOG, _______, _______, _______, _______, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - - [WIN_BASE] = LAYOUT_iso_109( - KC_ESC, 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_PSCR, KC_CTANA, RGB_MOD, _______, _______, _______, _______, - KC_GRV, 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_INS, KC_HOME, KC_PGUP, KC_NUM, KC_PSLS, KC_PAST, KC_PMNS, - 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_DEL, KC_END, KC_PGDN, KC_P7, KC_P8, KC_P9, - 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_NUHS, KC_ENT, KC_P4, KC_P5, KC_P6, KC_PPLS, - KC_LSFT, KC_NUBS, 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_P1, KC_P2, KC_P3, - KC_LCTL, KC_LWIN, KC_LALT, KC_SPC, KC_RALT, KC_RWIN, MO(WIN_FN), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT, KC_P0, KC_PDOT, KC_PENT), - - [WIN_FN] = LAYOUT_iso_109( - _______, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, RGB_TOG, _______, _______, _______, _______, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______) -}; - -// clang-format on -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - if (!process_record_keychron_common(keycode, record)) { - return false; - } - return true; -} diff --git a/keyboards/keychron/k10_max/iso/rgb/keymaps/via/keymap.c b/keyboards/keychron/k10_max/iso/rgb/keymaps/via/keymap.c deleted file mode 100644 index 3b986a3003..0000000000 --- a/keyboards/keychron/k10_max/iso/rgb/keymaps/via/keymap.c +++ /dev/null @@ -1,67 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#include QMK_KEYBOARD_H -#include "keychron_common.h" - -enum layers { - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN, -}; -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_iso_109( - KC_ESC, KC_BRID, KC_BRIU, KC_MCTRL, KC_LNPAD, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_SNAP, KC_SIRI, RGB_MOD, KC_F13, KC_F14, KC_F15, KC_F16, - KC_GRV, 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_INS, KC_HOME, KC_PGUP, KC_NUM, KC_PSLS, KC_PAST, KC_PMNS, - 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_DEL, KC_END, KC_PGDN, KC_P7, KC_P8, KC_P9, - 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_NUHS, KC_ENT, KC_P4, KC_P5, KC_P6, KC_PPLS, - KC_LSFT, KC_NUBS, 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_P1, KC_P2, KC_P3, - KC_LCTL, KC_LOPTN, KC_LCMMD, KC_SPC, KC_RCMMD, KC_ROPTN, MO(MAC_FN), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT, KC_P0, KC_PDOT, KC_PENT), - - [MAC_FN] = LAYOUT_iso_109( - _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, RGB_TOG, _______, _______, _______, _______, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - - [WIN_BASE] = LAYOUT_iso_109( - KC_ESC, 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_PSCR, KC_CTANA, RGB_MOD, _______, _______, _______, _______, - KC_GRV, 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_INS, KC_HOME, KC_PGUP, KC_NUM, KC_PSLS, KC_PAST, KC_PMNS, - 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_DEL, KC_END, KC_PGDN, KC_P7, KC_P8, KC_P9, - 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_NUHS, KC_ENT, KC_P4, KC_P5, KC_P6, KC_PPLS, - KC_LSFT, KC_NUBS, 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_P1, KC_P2, KC_P3, - KC_LCTL, KC_LWIN, KC_LALT, KC_SPC, KC_RALT, KC_RWIN, MO(WIN_FN), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT, KC_P0, KC_PDOT, KC_PENT), - - [WIN_FN] = LAYOUT_iso_109( - _______, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, RGB_TOG, _______, _______, _______, _______, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______) -}; - -// clang-format on -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - if (!process_record_keychron_common(keycode, record)) { - return false; - } - return true; -} diff --git a/keyboards/keychron/k10_max/iso/rgb/keymaps/via/rules.mk b/keyboards/keychron/k10_max/iso/rgb/keymaps/via/rules.mk deleted file mode 100644 index 1e5b99807c..0000000000 --- a/keyboards/keychron/k10_max/iso/rgb/keymaps/via/rules.mk +++ /dev/null @@ -1 +0,0 @@ -VIA_ENABLE = yes diff --git a/keyboards/keychron/k10_max/iso/rgb/rgb.c b/keyboards/keychron/k10_max/iso/rgb/rgb.c deleted file mode 100644 index 438807429c..0000000000 --- a/keyboards/keychron/k10_max/iso/rgb/rgb.c +++ /dev/null @@ -1,176 +0,0 @@ -/* Copyright 2024 @ 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/>. - */ - -#include "quantum.h" - -// clang-format off - -#ifdef RGB_MATRIX_ENABLE -const snled27351_led_t g_snled27351_leds[RGB_MATRIX_LED_COUNT] = { -/* Refer to SNLED27351 manual for these locations - * driver - * | R location - * | | G location - * | | | B location - * | | | | */ - {0, G_16, I_16, H_16}, - {0, G_14, I_14, H_14}, - {0, G_13, I_13, H_13}, - {0, G_12, I_12, H_12}, - {0, G_11, I_11, H_11}, - {0, G_10, I_10, H_10}, - {0, G_9, I_9, H_9}, - {0, G_8, I_8, H_8}, - {0, G_7, I_7, H_7}, - {0, G_6, I_6, H_6}, - {0, G_5, I_5, H_5}, - {0, G_4, I_4, H_4}, - {0, G_3, I_3, H_3}, - {0, G_2, I_2, H_2}, - {0, G_1, I_1, H_1}, - {1, A_3, C_3, B_3}, - {0, D_4, F_4, E_4}, - {0, D_3, F_3, E_3}, - {0, D_2, F_2, E_2}, - - {0, A_16, C_16, B_16}, - {0, A_15, C_15, B_15}, - {0, A_14, C_14, B_14}, - {0, A_13, C_13, B_13}, - {0, A_12, C_12, B_12}, - {0, A_11, C_11, B_11}, - {0, A_10, C_10, B_10}, - {0, A_9, C_9, B_9}, - {0, A_8, C_8, B_8}, - {0, A_7, C_7, B_7}, - {0, A_6, C_6, B_6}, - {0, A_5, C_5, B_5}, - {0, A_4, C_4, B_4}, - {0, A_3, C_3, B_3}, - {0, A_2, C_2, B_2}, - {0, A_1, C_1, B_1}, - {1, A_2, C_2, B_2}, - {0, D_8, F_8, E_8}, - {0, D_7, F_7, E_7}, - {0, D_6, F_6, E_6}, - - {0, J_16, L_16, K_16}, - {0, J_15, L_15, K_15}, - {0, J_14, L_14, K_14}, - {0, J_13, L_13, K_13}, - {0, J_12, L_12, K_12}, - {0, J_11, L_11, K_11}, - {0, J_10, L_10, K_10}, - {0, J_9, L_9, K_9}, - {0, J_8, L_8, K_8}, - {0, J_7, L_7, K_7}, - {0, J_6, L_6, K_6}, - {0, J_5, L_5, K_5}, - {0, J_4, L_4, K_4}, - {0, J_3, L_3, K_3}, - {0, J_2, L_2, K_2}, - {0, J_1, L_1, K_1}, - {1, A_1, C_1, B_1}, - {0, D_12, F_12, E_12}, - {0, D_11, F_11, E_11}, - {0, D_10, F_10, E_10}, - - {1, A_16, C_16, B_16}, - {1, A_15, C_15, B_15}, - {1, A_14, C_14, B_14}, - {1, A_13, C_13, B_13}, - {1, A_12, C_12, B_12}, - {1, A_11, C_11, B_11}, - {1, A_10, C_10, B_10}, - {1, A_9, C_9, B_9}, - {1, A_8, C_8, B_8}, - {1, A_7, C_7, B_7}, - {1, A_6, C_6, B_6}, - {1, A_5, C_5, B_5}, - {1, A_4, C_4, B_4}, - {0, D_1, F_1, E_1}, - {0, D_5, F_5, E_5}, - {0, D_9, F_9, E_9}, - {1, J_3, L_3, K_3}, - {1, J_9, L_9, K_9}, - {1, J_8, L_8, K_8}, - {1, J_7, L_7, K_7}, - - {1, G_16, I_16, H_16}, - {1, G_15, I_15, H_15}, - {1, G_14, I_14, H_14}, - {1, G_13, I_13, H_13}, - {1, G_12, I_12, H_12}, - {1, G_11, I_11, H_11}, - {1, G_10, I_10, H_10}, - {1, G_9, I_9, H_9}, - {1, G_8, I_8, H_8}, - {1, G_7, I_7, H_7}, - {1, G_6, I_6, H_6}, - {1, G_5, I_5, H_5}, - {1, G_3, I_3, H_3}, - {1, G_1, I_1, H_1}, - {1, J_6, L_6, K_6}, - {1, J_5, L_5, K_5}, - {1, J_4, L_4, K_4}, - - {1, D_16, F_16, E_16}, - {1, D_15, F_15, E_15}, - {1, D_14, F_14, E_14}, - {1, D_10, F_10, E_10}, - {1, D_6, F_6, E_6}, - {1, D_5, F_5, E_5}, - {1, D_4, F_4, E_4}, - {1, D_3, F_3, E_3}, - {1, D_2, F_2, E_2}, - {1, D_1, F_1, E_1}, - {1, G_2, I_2, H_2}, - {1, J_2, L_2, K_2}, - {1, J_1, L_1, K_1}, -}; - -#define __ NO_LED - -led_config_t g_led_config = { - { - // Key Matrix to RGB Index - { 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, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58 }, - { 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78 }, - { 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, __, 91, __, 92, __, 93, 94, 95 }, - { 96, 97, 98, __, __, __, 99, __, __, __, 100, 101, 102, 103, 104, 105, 106, __, 107, 108 }, - }, - { - // RGB Index to Physical Position - {0, 0}, {21, 0}, {31, 0}, {42, 0}, {52, 0}, {68, 0}, {78, 0}, {89, 0}, {99, 0}, {115, 0}, {125, 0}, {136, 0}, {146, 0}, {159, 0}, {169, 0}, {180, 0}, {193, 0}, {203, 0}, {214, 0}, - {0,15}, {10,15}, {21,15}, {31,15}, {42,15}, {52,15}, {63,15}, {73,15}, {83,15}, {94,15}, {104,15}, {115,15}, {125,15}, {141,15}, {159,15}, {169,15}, {180,15}, {193,15}, {203,15}, {214,15}, - {3,27}, {16,27}, {26,27}, {36,27}, {47,27}, {57,27}, {68,27}, {78,27}, {89,27}, {99,27}, {109,27}, {120,27}, {130,27}, {143,33}, {159,27}, {169,27}, {180,27}, {193,27}, {203,27}, {214,27}, - {4,40}, {18,40}, {29,40}, {39,40}, {50,40}, {60,40}, {70,40}, {81,40}, {91,40}, {102,40},{112,40}, {123,40}, {134,40}, {224, 0}, {224,15}, {224,34}, {224,58}, {193,40}, {203,40}, {214,40}, - {1,52}, {13,52}, {23,52}, {34,52}, {44,52}, {55,52}, {65,52}, {76,52}, {86,52}, {96,52}, {107,52}, {117,52}, {137,52}, {169,52}, {193,52}, {203,52}, {214,52}, - {1,64}, {14,64}, {27,64}, {66,64}, {105,64}, {118,64}, {131,64}, {145,64}, {159,64}, {169,64}, {180,64}, {198,64}, {214,64}, - }, - { - // RGB Index to Flag - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - } -}; -#endif diff --git a/keyboards/keychron/k10_max/iso/rgb/rules.mk b/keyboards/keychron/k10_max/iso/rgb/rules.mk deleted file mode 100644 index 6e7633bfe0..0000000000 --- a/keyboards/keychron/k10_max/iso/rgb/rules.mk +++ /dev/null @@ -1 +0,0 @@ -# This file intentionally left blank diff --git a/keyboards/keychron/k10_max/iso/white/config.h b/keyboards/keychron/k10_max/iso/white/config.h deleted file mode 100644 index 44cf90270b..0000000000 --- a/keyboards/keychron/k10_max/iso/white/config.h +++ /dev/null @@ -1,48 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#pragma once - -#ifdef LED_MATRIX_ENABLE -/* LED matrix driver configuration */ -# define DRIVER_COUNT 1 -# define LED_MATRIX_LED_COUNT 109 -# define LED_MATRIX_VAL_STEP 16 - -# define DRIVER_CS_PINS \ - { B9 } - -/* Use first 9 channels of LED driver */ -# define SNLED27351_PHASE_CHANNEL MSKPHASE_9CHANNEL - -/* Set LED driver current */ -# define SNLED27351_CURRENT_TUNE \ - { 0x56, 0x56, 0x56, 0x56, 0x56, 0x56, 0x56, 0x56, 0x56, 0x56, 0x56, 0x56 } - -/* Set to infinit, which is use in USB mode by default */ -# define LED_MATRIX_TIMEOUT LED_MATRIX_TIMEOUT_INFINITE - -/* Allow shutdown of led driver to save power */ -# define LED_MATRIX_DRIVER_SHUTDOWN_ENABLE -/* Turn off backlight on low brightness to save power */ -# define LED_MATRIX_BRIGHTNESS_TURN_OFF_VAL 48 - -/* Low battery indicating led */ -# define DIM_NUM_LOCK -# define NUM_LOCK_INDEX 36 - -# define LED_MATRIX_KEYPRESSES -#endif diff --git a/keyboards/keychron/k10_max/iso/white/info.json b/keyboards/keychron/k10_max/iso/white/info.json deleted file mode 100644 index 3ce478c3ec..0000000000 --- a/keyboards/keychron/k10_max/iso/white/info.json +++ /dev/null @@ -1,33 +0,0 @@ -{ - "usb": { - "pid": "0x0AA4", - "device_version": "1.0.0" - }, - "features": { - "led_matrix": true - }, - "indicators": { - "num_lock": "B2" - }, - "led_matrix": { - "driver": "snled27351_spi", - "sleep": true, - "animations": { - "none": true, - "solid": true, - "breathing": true, - "band_pinwheel": true, - "band_spiral": true, - "cycle_left_right": true, - "cycle_up_down": true, - "cycle_out_in": true, - "dual_beacon": true, - "solid_reactive_simple": true, - "solid_reactive_multiwide": true, - "solid_reactive_multinexus": true, - "solid_splash": true, - "wave_left_right": true, - "wave_up_down": true - } - } -} diff --git a/keyboards/keychron/k10_max/iso/white/keymaps/default/keymap.c b/keyboards/keychron/k10_max/iso/white/keymaps/default/keymap.c deleted file mode 100644 index ce830041e7..0000000000 --- a/keyboards/keychron/k10_max/iso/white/keymaps/default/keymap.c +++ /dev/null @@ -1,68 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#include QMK_KEYBOARD_H -#include "keychron_common.h" - -enum layers { - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN, -}; -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_iso_109( - KC_ESC, KC_BRID, KC_BRIU, KC_MCTRL, KC_LNPAD, BL_DOWN, BL_UP, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_SNAP, KC_SIRI, BL_STEP, KC_F13, KC_F14, KC_F15, KC_F16, - KC_GRV, 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_INS, KC_HOME, KC_PGUP, KC_NUM, KC_PSLS, KC_PAST, KC_PMNS, - 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_DEL, KC_END, KC_PGDN, KC_P7, KC_P8, KC_P9, - 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_NUHS, KC_ENT, KC_P4, KC_P5, KC_P6, KC_PPLS, - KC_LSFT, KC_NUBS, 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_P1, KC_P2, KC_P3, - KC_LCTL, KC_LOPTN, KC_LCMMD, KC_SPC, KC_RCMMD, KC_ROPTN, MO(MAC_FN), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT, KC_P0, KC_PDOT, KC_PENT), - - [MAC_FN] = LAYOUT_iso_109( - _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, BL_TOGG, _______, _______, _______, _______, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - BL_TOGG, BL_STEP, BL_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, BL_DOWN, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, BAT_LVL, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - - [WIN_BASE] = LAYOUT_iso_109( - KC_ESC, 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_PSCR, KC_CTANA, BL_STEP, _______, _______, _______, _______, - KC_GRV, 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_INS, KC_HOME, KC_PGUP, KC_NUM, KC_PSLS, KC_PAST, KC_PMNS, - 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_DEL, KC_END, KC_PGDN, KC_P7, KC_P8, KC_P9, - 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_NUHS, KC_ENT, KC_P4, KC_P5, KC_P6, KC_PPLS, - KC_LSFT, KC_NUBS, 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_P1, KC_P2, KC_P3, - KC_LCTL, KC_LWIN, KC_LALT, KC_SPC, KC_RALT, KC_RWIN, MO(WIN_FN), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT, KC_P0, KC_PDOT, KC_PENT), - - [WIN_FN] = LAYOUT_iso_109( - _______, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, BL_DOWN, BL_UP, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, BL_TOGG, _______, _______, _______, _______, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - BL_TOGG, BL_STEP, BL_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, BL_DOWN, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, BAT_LVL, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______) -}; - -// clang-format on -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - if (!process_record_keychron_common(keycode, record)) { - return false; - } - return true; -} - diff --git a/keyboards/keychron/k10_max/iso/white/keymaps/via/keymap.c b/keyboards/keychron/k10_max/iso/white/keymaps/via/keymap.c deleted file mode 100644 index ce830041e7..0000000000 --- a/keyboards/keychron/k10_max/iso/white/keymaps/via/keymap.c +++ /dev/null @@ -1,68 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#include QMK_KEYBOARD_H -#include "keychron_common.h" - -enum layers { - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN, -}; -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_iso_109( - KC_ESC, KC_BRID, KC_BRIU, KC_MCTRL, KC_LNPAD, BL_DOWN, BL_UP, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_SNAP, KC_SIRI, BL_STEP, KC_F13, KC_F14, KC_F15, KC_F16, - KC_GRV, 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_INS, KC_HOME, KC_PGUP, KC_NUM, KC_PSLS, KC_PAST, KC_PMNS, - 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_DEL, KC_END, KC_PGDN, KC_P7, KC_P8, KC_P9, - 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_NUHS, KC_ENT, KC_P4, KC_P5, KC_P6, KC_PPLS, - KC_LSFT, KC_NUBS, 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_P1, KC_P2, KC_P3, - KC_LCTL, KC_LOPTN, KC_LCMMD, KC_SPC, KC_RCMMD, KC_ROPTN, MO(MAC_FN), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT, KC_P0, KC_PDOT, KC_PENT), - - [MAC_FN] = LAYOUT_iso_109( - _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, BL_TOGG, _______, _______, _______, _______, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - BL_TOGG, BL_STEP, BL_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, BL_DOWN, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, BAT_LVL, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - - [WIN_BASE] = LAYOUT_iso_109( - KC_ESC, 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_PSCR, KC_CTANA, BL_STEP, _______, _______, _______, _______, - KC_GRV, 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_INS, KC_HOME, KC_PGUP, KC_NUM, KC_PSLS, KC_PAST, KC_PMNS, - 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_DEL, KC_END, KC_PGDN, KC_P7, KC_P8, KC_P9, - 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_NUHS, KC_ENT, KC_P4, KC_P5, KC_P6, KC_PPLS, - KC_LSFT, KC_NUBS, 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_P1, KC_P2, KC_P3, - KC_LCTL, KC_LWIN, KC_LALT, KC_SPC, KC_RALT, KC_RWIN, MO(WIN_FN), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT, KC_P0, KC_PDOT, KC_PENT), - - [WIN_FN] = LAYOUT_iso_109( - _______, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, BL_DOWN, BL_UP, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, BL_TOGG, _______, _______, _______, _______, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - BL_TOGG, BL_STEP, BL_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, BL_DOWN, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, BAT_LVL, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______) -}; - -// clang-format on -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - if (!process_record_keychron_common(keycode, record)) { - return false; - } - return true; -} - diff --git a/keyboards/keychron/k10_max/iso/white/keymaps/via/rules.mk b/keyboards/keychron/k10_max/iso/white/keymaps/via/rules.mk deleted file mode 100644 index 1e5b99807c..0000000000 --- a/keyboards/keychron/k10_max/iso/white/keymaps/via/rules.mk +++ /dev/null @@ -1 +0,0 @@ -VIA_ENABLE = yes diff --git a/keyboards/keychron/k10_max/iso/white/rules.mk b/keyboards/keychron/k10_max/iso/white/rules.mk deleted file mode 100644 index 6e7633bfe0..0000000000 --- a/keyboards/keychron/k10_max/iso/white/rules.mk +++ /dev/null @@ -1 +0,0 @@ -# This file intentionally left blank diff --git a/keyboards/keychron/k10_max/iso/white/white.c b/keyboards/keychron/k10_max/iso/white/white.c deleted file mode 100644 index c2154b8001..0000000000 --- a/keyboards/keychron/k10_max/iso/white/white.c +++ /dev/null @@ -1,173 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#include "quantum.h" - -// clang-format off -#ifdef LED_MATRIX_ENABLE -const snled27351_led_t g_snled27351_leds[LED_MATRIX_LED_COUNT] = { -/* Refer to SNLED27351 manual for these locations - * driver - * | LED address - * | | */ - {0, A_16}, - {0, A_14}, - {0, A_13}, - {0, A_12}, - {0, A_11}, - {0, A_10}, - {0, A_9}, - {0, A_8}, - {0, A_7}, - {0, A_6}, - {0, A_5}, - {0, A_4}, - {0, A_3}, - {0, A_2}, - {0, A_1}, - {0, G_1}, - {0, G_2}, - {0, G_3}, - {0, G_4}, - - {0, B_16}, - {0, B_15}, - {0, B_14}, - {0, B_13}, - {0, B_12}, - {0, B_11}, - {0, B_10}, - {0, B_9}, - {0, B_8}, - {0, B_7}, - {0, B_6}, - {0, B_5}, - {0, B_4}, - {0, B_3}, - {0, B_2}, - {0, B_1}, - {0, H_1}, - {0, H_2}, - {0, H_3}, - {0, H_4}, - - {0, C_16}, - {0, C_15}, - {0, C_14}, - {0, C_13}, - {0, C_12}, - {0, C_11}, - {0, C_10}, - {0, C_9}, - {0, C_8}, - {0, C_7}, - {0, C_6}, - {0, C_5}, - {0, C_4}, - {0, C_3}, - {0, C_2}, - {0, C_1}, - {0, G_6}, - {0, G_7}, - {0, G_8}, - {0, G_9}, - - {0, D_16}, - {0, D_15}, - {0, D_14}, - {0, D_13}, - {0, D_12}, - {0, D_11}, - {0, D_10}, - {0, D_9}, - {0, D_8}, - {0, D_7}, - {0, D_6}, - {0, D_5}, - {0, D_4}, - {0, G_5}, - {0, H_5}, - {0, G_10}, - {0, H_10}, - {0, H_7}, - {0, H_8}, - {0, H_9}, - - {0, E_16}, - {0, E_15}, - {0, E_14}, - {0, E_13}, - {0, E_12}, - {0, E_11}, - {0, E_10}, - {0, E_9}, - {0, E_8}, - {0, E_7}, - {0, E_6}, - {0, E_5}, - {0, E_3}, - {0, E_1}, - {0, H_6}, - {0, H_11}, - {0, H_12}, - - {0, F_16}, - {0, F_15}, - {0, F_14}, - {0, F_10}, - {0, F_6}, - {0, F_5}, - {0, F_4}, - {0, F_3}, - {0, F_2}, - {0, F_1}, - {0, G_13}, - {0, G_11}, - {0, G_12}, -}; - -#define __ NO_LED - -led_config_t g_led_config = { - { - // Key Matrix to LED Index - { 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, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58 }, - { 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78 }, - { 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, __, 91, __, 92, __, 93, 94, 95 }, - { 96, 97, 98, __, __, __, 99, __, __, __, 100, 101, 102, 103, 104, 105, 106, __, 107, 108 }, - }, - { - // LED Index to Physical Position - {0, 0}, {21, 0}, {31, 0}, {42, 0}, {52, 0}, {68, 0}, {78, 0}, {89, 0}, {99, 0}, {115, 0}, {125, 0}, {136, 0}, {146, 0}, {159, 0}, {169, 0}, {180, 0}, {193, 0}, {203, 0}, {214, 0}, - {0,15}, {10,15}, {21,15}, {31,15}, {42,15}, {52,15}, {63,15}, {73,15}, {83,15}, {94,15}, {104,15}, {115,15}, {125,15}, {141,15}, {159,15}, {169,15}, {180,15}, {193,15}, {203,15}, {214,15}, - {3,27}, {16,27}, {26,27}, {36,27}, {47,27}, {57,27}, {68,27}, {78,27}, {89,27}, {99,27}, {109,27}, {120,27}, {130,27}, {143,33}, {159,27}, {169,27}, {180,27}, {193,27}, {203,27}, {214,27}, - {4,40}, {18,40}, {29,40}, {39,40}, {50,40}, {60,40}, {70,40}, {81,40}, {91,40}, {102,40},{112,40}, {123,40}, {134,40}, {224, 0}, {224,15}, {224,34}, {224,58}, {193,40}, {203,40}, {214,40}, - {1,52}, {13,52}, {23,52}, {34,52}, {44,52}, {55,52}, {65,52}, {76,52}, {86,52}, {96,52}, {107,52}, {117,52}, {137,52}, {169,52}, {193,52}, {203,52}, {214,52}, - {1,64}, {14,64}, {27,64}, {66,64}, {105,64}, {118,64}, {131,64}, {145,64}, {159,64}, {169,64}, {180,64}, {198,64}, {214,64}, - }, - { - // LED Index to Flag - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - } -}; -#endif diff --git a/keyboards/keychron/k10_max/k10_max.c b/keyboards/keychron/k10_max/k10_max.c deleted file mode 100644 index 05a4c4e4a2..0000000000 --- a/keyboards/keychron/k10_max/k10_max.c +++ /dev/null @@ -1,96 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#include "quantum.h" -#include "keychron_task.h" -#ifdef FACTORY_TEST_ENABLE -# include "factory_test.h" -# include "keychron_common.h" -#endif -#ifdef LK_WIRELESS_ENABLE -# include "lkbt51.h" -# include "wireless.h" -# include "transport.h" -# include "keychron_wireless_common.h" -# include "battery.h" -#endif - -#define POWER_ON_LED_DURATION 3000 -static uint32_t power_on_indicator_timer; - -#ifdef LK_WIRELESS_ENABLE -pin_t bt_led_pins[] = BT_HOST_LED_PIN_LIST; -pin_t p24g_led_pins[] = P24G_HOST_LED_PIN_LIST; -#endif - -bool dip_switch_update_kb(uint8_t index, bool active) { - if (index == 0) { - default_layer_set(1UL << (active ? 0 : 2)); - } - dip_switch_update_user(index, active); - - return true; -} - -void keyboard_post_init_kb(void) { -#ifdef LK_WIRELESS_ENABLE - palSetLineMode(P2P4_MODE_SELECT_PIN, PAL_MODE_INPUT); - palSetLineMode(BT_MODE_SELECT_PIN, PAL_MODE_INPUT); - - lkbt51_init(false); - wireless_init(); -#endif - - power_on_indicator_timer = timer_read32(); - keyboard_post_init_user(); -} - -bool keychron_task_kb(void) { - if (power_on_indicator_timer) { - if (timer_elapsed32(power_on_indicator_timer) > POWER_ON_LED_DURATION) { - power_on_indicator_timer = 0; - - if (!host_keyboard_led_state().caps_lock) writePin(LED_CAPS_LOCK_PIN, !LED_PIN_ON_STATE); -#ifdef LK_WIRELESS_ENABLE - writePin(BAT_LOW_LED_PIN, !BAT_LOW_LED_PIN_ON_STATE); - for (uint8_t i = 0; i < sizeof(bt_led_pins) / sizeof(pin_t); i++) - writePin(bt_led_pins[i], 1); - for (uint8_t i = 0; i < sizeof(p24g_led_pins) / sizeof(pin_t); i++) - writePin(p24g_led_pins[i], 1); -#endif - - } else { - writePin(LED_CAPS_LOCK_PIN, LED_PIN_ON_STATE); -#ifdef LK_WIRELESS_ENABLE - writePin(BAT_LOW_LED_PIN, BAT_LOW_LED_PIN_ON_STATE); - if (get_transport() != TRANSPORT_P2P4) - for (uint8_t i = 0; i < sizeof(bt_led_pins) / sizeof(pin_t); i++) - writePin(bt_led_pins[i], 0); - if (get_transport() != TRANSPORT_BLUETOOTH) - for (uint8_t i = 0; i < sizeof(p24g_led_pins) / sizeof(pin_t); i++) - writePin(p24g_led_pins[i], 0); -#endif - } - } - - return true; -} - -#ifdef LK_WIRELESS_ENABLE -bool lpm_is_kb_idle(void) { - return power_on_indicator_timer == 0 && !factory_reset_indicating(); -} -#endif diff --git a/keyboards/keychron/k10_max/mcuconf.h b/keyboards/keychron/k10_max/mcuconf.h deleted file mode 100644 index a616c82cdf..0000000000 --- a/keyboards/keychron/k10_max/mcuconf.h +++ /dev/null @@ -1,37 +0,0 @@ -/* Copyright 2024 @ lokher (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 . - */ - -#pragma once - -#include_next - -#undef STM32_HSECLK -#define STM32_HSECLK 16000000 - -#undef STM32_PLLM_VALUE -#define STM32_PLLM_VALUE 8 - -#undef STM32_PLLN_VALUE -#define STM32_PLLN_VALUE 96 - -#undef STM32_PLLP_VALUE -#define STM32_PLLP_VALUE 4 - -#undef STM32_PLLQ_VALUE -#define STM32_PLLQ_VALUE 4 - -#undef STM32_SPI_USE_SPI1 -#define STM32_SPI_USE_SPI1 TRUE diff --git a/keyboards/keychron/k10_max/readme.md b/keyboards/keychron/k10_max/readme.md deleted file mode 100644 index 263d3985e7..0000000000 --- a/keyboards/keychron/k10_max/readme.md +++ /dev/null @@ -1,29 +0,0 @@ -# Keychron K10 Max - -![Keychron K10 Max](https://cdn.shopify.com/s/files/1/0059/0630/1017/files/K10-Max-1.jpg?v=1722492751) - -A customizable 108 keys TKL keyboard. - -* Keyboard Maintainer: [Keychron](https://github.com/keychron) -* Hardware Supported: Keychron K10 Max -* Hardware Availability: [Keychron K10 Max QMK/VIA Wireless Custom Mechanical Keyboard](https://www.keychron.com/products/keychron-k10-max-qmk-wireless-mechanical-keyboard) - -Make example for this keyboard (after setting up your build environment): - - make keychron/k10_max/ansi/rgb:default - make keychron/k10_max/ansi/white:default - - make keychron/k10_max/iso/rgb:default - make keychron/k10_max/iso/white:default - -Flashing example for this keyboard: - - make keychron/k10_max/ansi/rgb:default:flash - make keychron/k10_max/ansi/white:default:flash - - make keychron/k10_max/iso/rgb:default:flash - make keychron/k10_max/iso/white:default:flash - -**Reset Key**: Toggle mode switch to "Cable", hold down the *Esc* key or reset button underneath space bar while connecting the USB cable, - -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). diff --git a/keyboards/keychron/k10_max/rules.mk b/keyboards/keychron/k10_max/rules.mk deleted file mode 100644 index 4eaf6820bc..0000000000 --- a/keyboards/keychron/k10_max/rules.mk +++ /dev/null @@ -1,4 +0,0 @@ -include keyboards/keychron/common/wireless/wireless.mk -include keyboards/keychron/common/keychron_common.mk - -VPATH += $(TOP_DIR)/keyboards/keychron diff --git a/keyboards/keychron/k10_max/via_json/k10_max_ansi_rgb.json b/keyboards/keychron/k10_max/via_json/k10_max_ansi_rgb.json deleted file mode 100644 index e975bcfbc3..0000000000 --- a/keyboards/keychron/k10_max/via_json/k10_max_ansi_rgb.json +++ /dev/null @@ -1,345 +0,0 @@ -{ - "name": "Keychron K10 Max ANSI RGB", - "vendorId": "0x3434", - "productId": "0x0AA0", - "keycodes": ["qmk_lighting"], - "menus": [ - { - "label": "Lighting", - "content": [ - { - "label": "Backlight", - "content": [ - { - "label": "Brightness", - "type": "range", - "options": [0, 255], - "content": ["id_qmk_rgb_matrix_brightness", 3, 1] - }, - { - "label": "Effect", - "type": "dropdown", - "content": ["id_qmk_rgb_matrix_effect", 3, 2], - "options": [ - ["None", 0], - ["Solid Color", 1], - ["Breathing", 2], - ["Band Spiral Val", 3], - ["Cycle All", 4], - ["Cycle Left Right", 5], - ["Cycle Up Down", 6], - ["Rainbow Moving Chevron", 7], - ["Cycle Out In", 8], - ["Cycle Out In Dual", 9], - ["Cycle Pinwheel", 10], - ["Cycle Spiral", 11], - ["Dual Beacon", 12], - ["Rainbow Beacon", 13], - ["Jellybean Raindrops", 14], - ["Pixel Rain", 15], - ["Typing Heatmap", 16], - ["Digital Rain", 17], - ["Reactive Simple", 18], - ["Reactive Multiwide", 19], - ["Reactive Multinexus", 20], - ["Splash", 21], - ["Solid Splash", 22] - ] - }, - { - "showIf": "{id_qmk_rgb_matrix_effect} > 1", - "label": "Effect Speed", - "type": "range", - "options": [0, 255], - "content": ["id_qmk_rgb_matrix_effect_speed", 3, 3] - }, - { - "showIf": "{id_qmk_rgb_matrix_effect} != 0 && ( {id_qmk_rgb_matrix_effect} < 4 || {id_qmk_rgb_matrix_effect} == 18 || ({id_qmk_rgb_matrix_effect} > 17 && {id_qmk_rgb_matrix_effect} != 21) ) ", - "label": "Color", - "type": "color", - "content": ["id_qmk_rgb_matrix_color", 3, 4] - } - ] - } - ] - } - ], - "customKeycodes": [ - {"name": "Left Option", "title": "Left Option", "shortName": "LOpt"}, - {"name": "Right Option", "title": "Right Option", "shortName": "ROpt"}, - {"name": "Left Cmd", "title": "Left Command", "shortName": "LCmd"}, - {"name": "Right Cmd", "title": "Right Command", "shortName": "RCmd"}, - {"name": "Misson Control", "title": "Misson Control in Mac", "shortName": "MCtl"}, - {"name": "Lanuch Pad", "title": "Lanuch Pad in Windows", "shortName": "LPad"}, - {"name": "Task View", "title": "Task View in Windows", "shortName": "Task"}, - {"name": "File Explorer", "title": "File Explorer in Windows", "shortName": "File"}, - {"name": "Screen shot", "title": "Screenshot in macOS", "shortName": "SShot"}, - {"name": "Cortana", "title": "Cortana in Windows", "shortName": "Cortana"}, - {"name": "Siri", "title": "Siri in macOS", "shortName": "Siri"}, - {"name": "Bluetooth Host 1", "title": "Bluetooth Host 1", "shortName": "BTH1"}, - {"name": "Bluetooth Host 2", "title": "Bluetooth Host 2", "shortName": "BTH2"}, - {"name": "Bluetooth Host 3", "title": "Bluetooth Host 3", "shortName": "BTH3"}, - {"name": "2.4G", "title": "2.4G", "shortName": "2.4G"}, - {"name": "Battery Level", "title": "Show battery level", "shortName": "Batt"} - ], - "matrix": {"rows": 6, "cols" : 20}, - "layouts": { - "keymap": [ - [ - { - "c": "#777777" - }, - "0, 0", - { - "x": 1, - "c": "#aaaaaa" - }, - "0, 2", - "0, 3", - "0, 4", - "0, 5", - { - "x": 0.5, - "c": "#cccccc" - }, - "0, 6", - "0, 7", - "0, 8", - "0, 9", - { - "x": 0.5, - "c": "#aaaaaa" - }, - "0, 10", - "0, 11", - "0, 12", - "0, 13", - { - "x": 0.25, - "c": "#cccccc" - }, - "0, 14", - "0, 15", - "0, 16", - { - "x": 0.25, - "c": "#aaaaaa" - }, - "0, 17", - "0, 18", - "0, 19", - "3, 13" - ], - [ - { - "y": 0.25, - "c": "#cccccc" - }, - "1, 0", - { - "c": "#aaaaaa" - }, - "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": 2, - "c": "#cccccc" - }, - "1, 13", - { - "x": 0.25 - }, - "1, 14", - "1, 15", - "1, 16", - { - "x": 0.25, - "c": "#aaaaaa" - }, - "1, 17", - "1, 18", - "1, 19", - "3, 14" - ], - [ - { - "w": 1.5, - "c": "#cccccc" - }, - "2, 0", - { - "c": "#aaaaaa" - }, - "2, 1", - "2, 2", - "2, 3", - "2, 4", - "2, 5", - "2, 6", - "2, 7", - "2, 8", - "2, 9", - "2, 10", - "2, 11", - "2, 12", - { - "w": 1.5, - "c": "#cccccc" - }, - "2, 13", - { - "x": 0.25 - }, - "2, 14", - "2, 15", - "2, 16", - { - "x": 0.25, - "c": "#aaaaaa" - }, - "2, 17", - "2, 18", - "2, 19", - { - "h": 2, - "c": "#aaaaaa" - }, - "3, 15" - ], - [ - { - "w": 1.75, - "c": "#cccccc" - }, - "3, 0", - { - "c": "#aaaaaa" - }, - "3, 1", - "3, 2", - "3, 3", - "3, 4", - "3, 5", - "3, 6", - "3, 7", - "3, 8", - "3, 9", - "3, 10", - "3, 11", - { - "w": 2.25, - "c": "#777777" - }, - "3, 12", - { - "x": 3.5, - "c": "#aaaaaa" - }, - "3, 17", - "3, 18", - "3, 19" - ], - [ - { - "w": 2.25, - "c": "#cccccc" - }, - "4, 0", - { - "c": "#aaaaaa" - }, - "4, 2", - "4, 3", - "4, 4", - "4, 5", - "4, 6", - "4, 7", - "4, 8", - "4, 9", - "4, 10", - "4, 11", - { - "w": 2.75, - "c": "#cccccc" - }, - "4, 13", - { - "x": 1.25, - "c": "#aaaaaa" - }, - "4, 15", - { - "x": 1.25 - }, - "4, 17", - "4, 18", - "4, 19", - { - "h": 2 - }, - "3, 16" - ], - [ - { - "w": 1.25, - "c": "#cccccc" - }, - "5, 0", - { - "w": 1.25 - }, - "5, 1", - { - "w": 1.25 - }, - "5, 2", - { - "w": 6.25, - "c": "#aaaaaa" - }, - "5, 6", - { - "w": 1.25, - "c": "#cccccc" - }, - "5, 10", - { - "w": 1.25 - }, - "5, 11", - { - "w": 1.25, - "c": "#cccccc" - }, - "5, 12", - { - "w": 1.25 - }, - "5, 13", - { - "x": 0.25, - "c": "#aaaaaa" - }, - "5, 14", - "5, 15", - "5, 16", - { - "x": 0.25, - "w": 2 - }, - "5, 18", - "5, 19" - ] - ] - } - } \ No newline at end of file diff --git a/keyboards/keychron/k10_max/via_json/k10_max_ansi_white.json b/keyboards/keychron/k10_max/via_json/k10_max_ansi_white.json deleted file mode 100644 index 12c8422dc1..0000000000 --- a/keyboards/keychron/k10_max/via_json/k10_max_ansi_white.json +++ /dev/null @@ -1,284 +0,0 @@ -{ - "name": "Keychron K10 Max ANSI White", - "vendorId": "0x3434", - "productId": "0x0AA3", - "keycodes": ["qmk_lighting"], - "customKeycodes": [ - {"name": "Left Option", "title": "Left Option", "shortName": "LOpt"}, - {"name": "Right Option", "title": "Right Option", "shortName": "ROpt"}, - {"name": "Left Cmd", "title": "Left Command", "shortName": "LCmd"}, - {"name": "Right Cmd", "title": "Right Command", "shortName": "RCmd"}, - {"name": "Misson Control", "title": "Misson Control in Mac", "shortName": "MCtl"}, - {"name": "Lanuch Pad", "title": "Lanuch Pad in Windows", "shortName": "LPad"}, - {"name": "Task View", "title": "Task View in Windows", "shortName": "Task"}, - {"name": "File Explorer", "title": "File Explorer in Windows", "shortName": "File"}, - {"name": "Screen shot", "title": "Screenshot in macOS", "shortName": "SShot"}, - {"name": "Cortana", "title": "Cortana in Windows", "shortName": "Cortana"}, - {"name": "Siri", "title": "Siri in macOS", "shortName": "Siri"}, - {"name": "Bluetooth Host 1", "title": "Bluetooth Host 1", "shortName": "BTH1"}, - {"name": "Bluetooth Host 2", "title": "Bluetooth Host 2", "shortName": "BTH2"}, - {"name": "Bluetooth Host 3", "title": "Bluetooth Host 3", "shortName": "BTH3"}, - {"name": "2.4G", "title": "2.4G", "shortName": "2.4G"}, - {"name": "Battery Level", "title": "Show battery level", "shortName": "Batt"} - ], - "matrix": {"rows": 6, "cols" : 20}, - "layouts": { - "keymap": [ - [ - { - "c": "#777777" - }, - "0, 0", - { - "x": 1, - "c": "#aaaaaa" - }, - "0, 2", - "0, 3", - "0, 4", - "0, 5", - { - "x": 0.5, - "c": "#cccccc" - }, - "0, 6", - "0, 7", - "0, 8", - "0, 9", - { - "x": 0.5, - "c": "#aaaaaa" - }, - "0, 10", - "0, 11", - "0, 12", - "0, 13", - { - "x": 0.25, - "c": "#cccccc" - }, - "0, 14", - "0, 15", - "0, 16", - { - "x": 0.25, - "c": "#aaaaaa" - }, - "0, 17", - "0, 18", - "0, 19", - "3, 13" - ], - [ - { - "y": 0.25, - "c": "#cccccc" - }, - "1, 0", - { - "c": "#aaaaaa" - }, - "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": 2, - "c": "#cccccc" - }, - "1, 13", - { - "x": 0.25 - }, - "1, 14", - "1, 15", - "1, 16", - { - "x": 0.25, - "c": "#aaaaaa" - }, - "1, 17", - "1, 18", - "1, 19", - "3, 14" - ], - [ - { - "w": 1.5, - "c": "#cccccc" - }, - "2, 0", - { - "c": "#aaaaaa" - }, - "2, 1", - "2, 2", - "2, 3", - "2, 4", - "2, 5", - "2, 6", - "2, 7", - "2, 8", - "2, 9", - "2, 10", - "2, 11", - "2, 12", - { - "w": 1.5, - "c": "#cccccc" - }, - "2, 13", - { - "x": 0.25 - }, - "2, 14", - "2, 15", - "2, 16", - { - "x": 0.25, - "c": "#aaaaaa" - }, - "2, 17", - "2, 18", - "2, 19", - { - "h": 2, - "c": "#aaaaaa" - }, - "3, 15" - ], - [ - { - "w": 1.75, - "c": "#cccccc" - }, - "3, 0", - { - "c": "#aaaaaa" - }, - "3, 1", - "3, 2", - "3, 3", - "3, 4", - "3, 5", - "3, 6", - "3, 7", - "3, 8", - "3, 9", - "3, 10", - "3, 11", - { - "w": 2.25, - "c": "#777777" - }, - "3, 12", - { - "x": 3.5, - "c": "#aaaaaa" - }, - "3, 17", - "3, 18", - "3, 19" - ], - [ - { - "w": 2.25, - "c": "#cccccc" - }, - "4, 0", - { - "c": "#aaaaaa" - }, - "4, 2", - "4, 3", - "4, 4", - "4, 5", - "4, 6", - "4, 7", - "4, 8", - "4, 9", - "4, 10", - "4, 11", - { - "w": 2.75, - "c": "#cccccc" - }, - "4, 13", - { - "x": 1.25, - "c": "#aaaaaa" - }, - "4, 15", - { - "x": 1.25 - }, - "4, 17", - "4, 18", - "4, 19", - { - "h": 2 - }, - "3, 16" - ], - [ - { - "w": 1.25, - "c": "#cccccc" - }, - "5, 0", - { - "w": 1.25 - }, - "5, 1", - { - "w": 1.25 - }, - "5, 2", - { - "w": 6.25, - "c": "#aaaaaa" - }, - "5, 6", - { - "w": 1.25, - "c": "#cccccc" - }, - "5, 10", - { - "w": 1.25 - }, - "5, 11", - { - "w": 1.25, - "c": "#cccccc" - }, - "5, 12", - { - "w": 1.25 - }, - "5, 13", - { - "x": 0.25, - "c": "#aaaaaa" - }, - "5, 14", - "5, 15", - "5, 16", - { - "x": 0.25, - "w": 2 - }, - "5, 18", - "5, 19" - ] - ] - } - } \ No newline at end of file diff --git a/keyboards/keychron/k10_max/via_json/k10_max_iso_rgb.json b/keyboards/keychron/k10_max/via_json/k10_max_iso_rgb.json deleted file mode 100644 index 8b09edb2a5..0000000000 --- a/keyboards/keychron/k10_max/via_json/k10_max_iso_rgb.json +++ /dev/null @@ -1,347 +0,0 @@ -{ - "name": "Keychron K10 Max ISO RGB", - "vendorId": "0x3434", - "productId": "0x0AA1", - "keycodes": ["qmk_lighting"], - "menus": [ - { - "label": "Lighting", - "content": [ - { - "label": "Backlight", - "content": [ - { - "label": "Brightness", - "type": "range", - "options": [0, 255], - "content": ["id_qmk_rgb_matrix_brightness", 3, 1] - }, - { - "label": "Effect", - "type": "dropdown", - "content": ["id_qmk_rgb_matrix_effect", 3, 2], - "options": [ - ["None", 0], - ["Solid Color", 1], - ["Breathing", 2], - ["Band Spiral Val", 3], - ["Cycle All", 4], - ["Cycle Left Right", 5], - ["Cycle Up Down", 6], - ["Rainbow Moving Chevron", 7], - ["Cycle Out In", 8], - ["Cycle Out In Dual", 9], - ["Cycle Pinwheel", 10], - ["Cycle Spiral", 11], - ["Dual Beacon", 12], - ["Rainbow Beacon", 13], - ["Jellybean Raindrops", 14], - ["Pixel Rain", 15], - ["Typing Heatmap", 16], - ["Digital Rain", 17], - ["Reactive Simple", 18], - ["Reactive Multiwide", 19], - ["Reactive Multinexus", 20], - ["Splash", 21], - ["Solid Splash", 22] - ] - }, - { - "showIf": "{id_qmk_rgb_matrix_effect} > 1", - "label": "Effect Speed", - "type": "range", - "options": [0, 255], - "content": ["id_qmk_rgb_matrix_effect_speed", 3, 3] - }, - { - "showIf": "{id_qmk_rgb_matrix_effect} != 0 && ( {id_qmk_rgb_matrix_effect} < 4 || {id_qmk_rgb_matrix_effect} == 18 || ({id_qmk_rgb_matrix_effect} > 17 && {id_qmk_rgb_matrix_effect} != 21) ) ", - "label": "Color", - "type": "color", - "content": ["id_qmk_rgb_matrix_color", 3, 4] - } - ] - } - ] - } - ], - "customKeycodes": [ - {"name": "Left Option", "title": "Left Option", "shortName": "LOpt"}, - {"name": "Right Option", "title": "Right Option", "shortName": "ROpt"}, - {"name": "Left Cmd", "title": "Left Command", "shortName": "LCmd"}, - {"name": "Right Cmd", "title": "Right Command", "shortName": "RCmd"}, - {"name": "Misson Control", "title": "Misson Control in Mac", "shortName": "MCtl"}, - {"name": "Lanuch Pad", "title": "Lanuch Pad in Windows", "shortName": "LPad"}, - {"name": "Task View", "title": "Task View in Windows", "shortName": "Task"}, - {"name": "File Explorer", "title": "File Explorer in Windows", "shortName": "File"}, - {"name": "Screen shot", "title": "Screenshot in macOS", "shortName": "SShot"}, - {"name": "Cortana", "title": "Cortana in Windows", "shortName": "Cortana"}, - {"name": "Siri", "title": "Siri in macOS", "shortName": "Siri"}, - {"name": "Bluetooth Host 1", "title": "Bluetooth Host 1", "shortName": "BTH1"}, - {"name": "Bluetooth Host 2", "title": "Bluetooth Host 2", "shortName": "BTH2"}, - {"name": "Bluetooth Host 3", "title": "Bluetooth Host 3", "shortName": "BTH3"}, - {"name": "2.4G", "title": "2.4G", "shortName": "2.4G"}, - {"name": "Battery Level", "title": "Show battery level", "shortName": "Batt"} - ], - "matrix": {"rows": 6, "cols" : 20}, - "layouts": { - "keymap": [ - [ - { - "c": "#777777" - }, - "0, 0", - { - "x": 1, - "c": "#aaaaaa" - }, - "0, 2", - "0, 3", - "0, 4", - "0, 5", - { - "x": 0.5, - "c": "#cccccc" - }, - "0, 6", - "0, 7", - "0, 8", - "0, 9", - { - "x": 0.5, - "c": "#aaaaaa" - }, - "0, 10", - "0, 11", - "0, 12", - "0, 13", - { - "x": 0.25, - "c": "#cccccc" - }, - "0, 14", - "0, 15", - "0, 16", - { - "x": 0.25, - "c": "#aaaaaa" - }, - "0, 17", - "0, 18", - "0, 19", - "3, 13" - ], - [ - { - "y": 0.25, - "c": "#cccccc" - }, - "1, 0", - { - "c": "#aaaaaa" - }, - "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": 2, - "c": "#cccccc" - }, - "1, 13", - { - "x": 0.25 - }, - "1, 14", - "1, 15", - "1, 16", - { - "x": 0.25, - "c": "#aaaaaa" - }, - "1, 17", - "1, 18", - "1, 19", - "3, 14" - ], - [ - { - "w": 1.5, - "c": "#cccccc" - }, - "2, 0", - { - "c": "#aaaaaa" - }, - "2, 1", - "2, 2", - "2, 3", - "2, 4", - "2, 5", - "2, 6", - "2, 7", - "2, 8", - "2, 9", - "2, 10", - "2, 11", - "2, 12", - { - "x": 0.25, - "c": "#cccccc", - "w": 1.25, - "h": 2, - "w2": 1.5, - "h2": 1, - "x2": -0.25 - }, - "2, 13", - { - "x": 0.25 - }, - "2, 14", - "2, 15", - "2, 16", - { - "x": 0.25, - "c": "#aaaaaa" - }, - "2, 17", - "2, 18", - "2, 19", - { - "h": 2, - "c": "#aaaaaa" - }, - "3, 15" - ], - [ - { - "w": 1.75, - "c": "#cccccc" - }, - "3, 0", - { - "c": "#aaaaaa" - }, - "3, 1", - "3, 2", - "3, 3", - "3, 4", - "3, 5", - "3, 6", - "3, 7", - "3, 8", - "3, 9", - "3, 10", - "3, 11", - "3, 12", - { - "x": 4.75, - "c": "#aaaaaa" - }, - "3, 17", - "3, 18", - "3, 19" - ], - [ - { - "w": 1.25, - "c": "#cccccc" - }, - "4, 0", - { - "c": "#aaaaaa" - }, - "4, 1", - "4, 2", - "4, 3", - "4, 4", - "4, 5", - "4, 6", - "4, 7", - "4, 8", - "4, 9", - "4, 10", - "4, 11", - { - "w": 2.75, - "c": "#cccccc" - }, - "4, 13", - { - "x": 1.25, - "c": "#aaaaaa" - }, - "4, 15", - { - "x": 1.25 - }, - "4, 17", - "4, 18", - "4, 19", - { - "h": 2 - }, - "3, 16" - ], - [ - { - "w": 1.25, - "c": "#cccccc" - }, - "5, 0", - { - "w": 1.25 - }, - "5, 1", - { - "w": 1.25 - }, - "5, 2", - { - "w": 6.25, - "c": "#aaaaaa" - }, - "5, 6", - { - "w": 1.25, - "c": "#cccccc" - }, - "5, 10", - { - "w": 1.25 - }, - "5, 11", - { - "w": 1.25, - "c": "#cccccc" - }, - "5, 12", - { - "w": 1.25 - }, - "5, 13", - { - "x": 0.25, - "c": "#aaaaaa" - }, - "5, 14", - "5, 15", - "5, 16", - { - "x": 0.25, - "w": 2 - }, - "5, 18", - "5, 19" - ] - ] - } - } \ No newline at end of file diff --git a/keyboards/keychron/k10_max/via_json/k10_max_iso_white.json b/keyboards/keychron/k10_max/via_json/k10_max_iso_white.json deleted file mode 100644 index 616914f362..0000000000 --- a/keyboards/keychron/k10_max/via_json/k10_max_iso_white.json +++ /dev/null @@ -1,286 +0,0 @@ -{ - "name": "Keychron K10 Max ISO White", - "vendorId": "0x3434", - "productId": "0x0AA4", - "keycodes": ["qmk_lighting"], - "customKeycodes": [ - {"name": "Left Option", "title": "Left Option", "shortName": "LOpt"}, - {"name": "Right Option", "title": "Right Option", "shortName": "ROpt"}, - {"name": "Left Cmd", "title": "Left Command", "shortName": "LCmd"}, - {"name": "Right Cmd", "title": "Right Command", "shortName": "RCmd"}, - {"name": "Misson Control", "title": "Misson Control in Mac", "shortName": "MCtl"}, - {"name": "Lanuch Pad", "title": "Lanuch Pad in Windows", "shortName": "LPad"}, - {"name": "Task View", "title": "Task View in Windows", "shortName": "Task"}, - {"name": "File Explorer", "title": "File Explorer in Windows", "shortName": "File"}, - {"name": "Screen shot", "title": "Screenshot in macOS", "shortName": "SShot"}, - {"name": "Cortana", "title": "Cortana in Windows", "shortName": "Cortana"}, - {"name": "Siri", "title": "Siri in macOS", "shortName": "Siri"}, - {"name": "Bluetooth Host 1", "title": "Bluetooth Host 1", "shortName": "BTH1"}, - {"name": "Bluetooth Host 2", "title": "Bluetooth Host 2", "shortName": "BTH2"}, - {"name": "Bluetooth Host 3", "title": "Bluetooth Host 3", "shortName": "BTH3"}, - {"name": "2.4G", "title": "2.4G", "shortName": "2.4G"}, - {"name": "Battery Level", "title": "Show battery level", "shortName": "Batt"} - ], - "matrix": {"rows": 6, "cols" : 20}, - "layouts": { - "keymap": [ - [ - { - "c": "#777777" - }, - "0, 0", - { - "x": 1, - "c": "#aaaaaa" - }, - "0, 2", - "0, 3", - "0, 4", - "0, 5", - { - "x": 0.5, - "c": "#cccccc" - }, - "0, 6", - "0, 7", - "0, 8", - "0, 9", - { - "x": 0.5, - "c": "#aaaaaa" - }, - "0, 10", - "0, 11", - "0, 12", - "0, 13", - { - "x": 0.25, - "c": "#cccccc" - }, - "0, 14", - "0, 15", - "0, 16", - { - "x": 0.25, - "c": "#aaaaaa" - }, - "0, 17", - "0, 18", - "0, 19", - "3, 13" - ], - [ - { - "y": 0.25, - "c": "#cccccc" - }, - "1, 0", - { - "c": "#aaaaaa" - }, - "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": 2, - "c": "#cccccc" - }, - "1, 13", - { - "x": 0.25 - }, - "1, 14", - "1, 15", - "1, 16", - { - "x": 0.25, - "c": "#aaaaaa" - }, - "1, 17", - "1, 18", - "1, 19", - "3, 14" - ], - [ - { - "w": 1.5, - "c": "#cccccc" - }, - "2, 0", - { - "c": "#aaaaaa" - }, - "2, 1", - "2, 2", - "2, 3", - "2, 4", - "2, 5", - "2, 6", - "2, 7", - "2, 8", - "2, 9", - "2, 10", - "2, 11", - "2, 12", - { - "x": 0.25, - "c": "#cccccc", - "w": 1.25, - "h": 2, - "w2": 1.5, - "h2": 1, - "x2": -0.25 - }, - "2, 13", - { - "x": 0.25 - }, - "2, 14", - "2, 15", - "2, 16", - { - "x": 0.25, - "c": "#aaaaaa" - }, - "2, 17", - "2, 18", - "2, 19", - { - "h": 2, - "c": "#aaaaaa" - }, - "3, 15" - ], - [ - { - "w": 1.75, - "c": "#cccccc" - }, - "3, 0", - { - "c": "#aaaaaa" - }, - "3, 1", - "3, 2", - "3, 3", - "3, 4", - "3, 5", - "3, 6", - "3, 7", - "3, 8", - "3, 9", - "3, 10", - "3, 11", - "3, 12", - { - "x": 4.75, - "c": "#aaaaaa" - }, - "3, 17", - "3, 18", - "3, 19" - ], - [ - { - "w": 1.25, - "c": "#cccccc" - }, - "4, 0", - { - "c": "#aaaaaa" - }, - "4, 1", - "4, 2", - "4, 3", - "4, 4", - "4, 5", - "4, 6", - "4, 7", - "4, 8", - "4, 9", - "4, 10", - "4, 11", - { - "w": 2.75, - "c": "#cccccc" - }, - "4, 13", - { - "x": 1.25, - "c": "#aaaaaa" - }, - "4, 15", - { - "x": 1.25 - }, - "4, 17", - "4, 18", - "4, 19", - { - "h": 2 - }, - "3, 16" - ], - [ - { - "w": 1.25, - "c": "#cccccc" - }, - "5, 0", - { - "w": 1.25 - }, - "5, 1", - { - "w": 1.25 - }, - "5, 2", - { - "w": 6.25, - "c": "#aaaaaa" - }, - "5, 6", - { - "w": 1.25, - "c": "#cccccc" - }, - "5, 10", - { - "w": 1.25 - }, - "5, 11", - { - "w": 1.25, - "c": "#cccccc" - }, - "5, 12", - { - "w": 1.25 - }, - "5, 13", - { - "x": 0.25, - "c": "#aaaaaa" - }, - "5, 14", - "5, 15", - "5, 16", - { - "x": 0.25, - "w": 2 - }, - "5, 18", - "5, 19" - ] - ] - } - } \ No newline at end of file diff --git a/keyboards/keychron/k10_pro/ansi/rgb/config.h b/keyboards/keychron/k10_pro/ansi/rgb/config.h deleted file mode 100644 index a2d2ac4d87..0000000000 --- a/keyboards/keychron/k10_pro/ansi/rgb/config.h +++ /dev/null @@ -1,56 +0,0 @@ -/* 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 . - */ - -#pragma once - -#ifdef RGB_MATRIX_ENABLE -/* RGB Matrix driver configuration */ -# define DRIVER_COUNT 2 -# define DRIVER_ADDR_1 0b1110111 -# define DRIVER_ADDR_2 0b1110100 - -/* RGB Matrix configuration */ -# define RGB_MATRIX_LED_COUNT 108 - -/* Set to infinit, which is use in USB mode by default */ -# define RGB_MATRIX_TIMEOUT RGB_MATRIX_TIMEOUT_INFINITE - -/* Allow shutdown of led driver to save power */ -# define RGB_MATRIX_DRIVER_SHUTDOWN_ENABLE -/* Turn off backlight on low brightness to save power */ -# define RGB_MATRIX_BRIGHTNESS_TURN_OFF_VAL 32 - -/* Indication led */ -# define CAPS_LOCK_INDEX 62 -# define NUM_LOCK_INDEX 37 - -# ifdef VIA_ENABLE -# define VIA_QMK_RGBLIGHT_ENABLE -# endif - -/* RGB Matrix Animation modes. Explicitly enabled - * For full list of effects, see: - * https://docs.qmk.fm/#/feature_rgb_matrix?id=rgb-matrix-effects - */ - -# define RGB_MATRIX_KEYPRESSES -# define RGB_MATRIX_FRAMEBUFFER_EFFECTS - -/* Set LED driver current */ -# define SNLED27351_CURRENT_TUNE \ - { 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30 } - -#endif diff --git a/keyboards/keychron/k10_pro/ansi/rgb/info.json b/keyboards/keychron/k10_pro/ansi/rgb/info.json deleted file mode 100644 index 3200163b2a..0000000000 --- a/keyboards/keychron/k10_pro/ansi/rgb/info.json +++ /dev/null @@ -1,150 +0,0 @@ -{ - "usb": { - "pid": "0x02A0", - "device_version": "1.0.0" - }, - "features": { - "rgb_matrix": true - }, - "rgb_matrix": { - "driver": "snled27351", - "animations": { - "breathing": true, - "band_spiral_val": true, - "cycle_all": true, - "cycle_left_right": true, - "cycle_up_down": true, - "rainbow_moving_chevron": true, - "cycle_out_in": true, - "cycle_out_in_dual": true, - "cycle_pinwheel": true, - "cycle_spiral": true, - "dual_beacon": true, - "rainbow_beacon": true, - "jellybean_raindrops": true, - "pixel_rain": true, - "typing_heatmap": true, - "digital_rain": true, - "solid_reactive_simple": true, - "solid_reactive_multiwide": true, - "solid_reactive_multinexus": true, - "splash": true, - "solid_splash": true - }, - "layout": [ - {"matrix":[0,0], "flags":1, "x":0, "y":0}, - {"matrix":[0,1], "flags":1, "x":20, "y":0}, - {"matrix":[0,2], "flags":1, "x":31, "y":0}, - {"matrix":[0,3], "flags":1, "x":42, "y":0}, - {"matrix":[0,4], "flags":1, "x":52, "y":0}, - {"matrix":[0,5], "flags":1, "x":67, "y":0}, - {"matrix":[0,6], "flags":1, "x":78, "y":0}, - {"matrix":[0,7], "flags":1, "x":88, "y":0}, - {"matrix":[0,8], "flags":1, "x":98, "y":0}, - {"matrix":[0,9], "flags":1, "x":114, "y":0}, - {"matrix":[0,10], "flags":1, "x":125, "y":0}, - {"matrix":[0,11], "flags":1, "x":135, "y":0}, - {"matrix":[0,12], "flags":1, "x":145, "y":0}, - {"matrix":[0,14], "flags":1, "x":158, "y":0}, - {"matrix":[0,15], "flags":1, "x":169, "y":0}, - {"matrix":[0,16], "flags":1, "x":179, "y":0}, - {"matrix":[0,17], "flags":4, "x":192, "y":0}, - {"matrix":[0,18], "flags":4, "x":203, "y":0}, - {"matrix":[0,19], "flags":4, "x":213, "y":0}, - {"matrix":[0,20], "flags":4, "x":224, "y":0}, - - {"matrix":[1,0], "flags":1, "x":0, "y":15}, - {"matrix":[1,1], "flags":8, "x":10, "y":15}, - {"matrix":[1,2], "flags":8, "x":20, "y":15}, - {"matrix":[1,3], "flags":8, "x":31, "y":15}, - {"matrix":[1,4], "flags":4, "x":41, "y":15}, - {"matrix":[1,5], "flags":4, "x":52, "y":15}, - {"matrix":[1,6], "flags":4, "x":62, "y":15}, - {"matrix":[1,7], "flags":4, "x":72, "y":15}, - {"matrix":[1,8], "flags":4, "x":83, "y":15}, - {"matrix":[1,9], "flags":4, "x":93, "y":15}, - {"matrix":[1,10], "flags":4, "x":104, "y":15}, - {"matrix":[1,11], "flags":4, "x":114, "y":15}, - {"matrix":[1,12], "flags":4, "x":124, "y":15}, - {"matrix":[1,13], "flags":1, "x":140, "y":15}, - {"matrix":[1,14], "flags":1, "x":158, "y":15}, - {"matrix":[1,15], "flags":1, "x":169, "y":15}, - {"matrix":[1,16], "flags":1, "x":180, "y":15}, - {"matrix":[1,17], "flags":8, "x":192, "y":15}, - {"matrix":[1,18], "flags":4, "x":203, "y":15}, - {"matrix":[1,19], "flags":4, "x":213, "y":15}, - {"matrix":[1,20], "flags":4, "x":224, "y":15}, - - {"matrix":[2,0], "flags":1, "x":2, "y":28}, - {"matrix":[2,1], "flags":4, "x":15, "y":28}, - {"matrix":[2,2], "flags":4, "x":26, "y":28}, - {"matrix":[2,3], "flags":4, "x":36, "y":28}, - {"matrix":[2,4], "flags":4, "x":46, "y":28}, - {"matrix":[2,5], "flags":4, "x":57, "y":28}, - {"matrix":[2,6], "flags":4, "x":67, "y":28}, - {"matrix":[2,7], "flags":4, "x":78, "y":28}, - {"matrix":[2,8], "flags":4, "x":88, "y":28}, - {"matrix":[2,9], "flags":4, "x":98, "y":28}, - {"matrix":[2,10], "flags":4, "x":109, "y":28}, - {"matrix":[2,11], "flags":4, "x":119, "y":28}, - {"matrix":[2,12], "flags":4, "x":130, "y":28}, - {"matrix":[2,13], "flags":1, "x":143, "y":28}, - {"matrix":[2,14], "flags":1, "x":158, "y":28}, - {"matrix":[2,15], "flags":1, "x":169, "y":28}, - {"matrix":[2,16], "flags":1, "x":179, "y":28}, - {"matrix":[2,17], "flags":4, "x":192, "y":28}, - {"matrix":[2,18], "flags":4, "x":203, "y":28}, - {"matrix":[2,19], "flags":4, "x":213, "y":28}, - {"matrix":[2,20], "flags":4, "x":224, "y":28}, - - {"matrix":[3,0], "flags":8, "x":3, "y":39}, - {"matrix":[3,1], "flags":4, "x":18, "y":39}, - {"matrix":[3,2], "flags":4, "x":28, "y":39}, - {"matrix":[3,3], "flags":4, "x":39, "y":39}, - {"matrix":[3,4], "flags":4, "x":49, "y":39}, - {"matrix":[3,5], "flags":4, "x":59, "y":39}, - {"matrix":[3,6], "flags":4, "x":70, "y":39}, - {"matrix":[3,7], "flags":4, "x":80, "y":39}, - {"matrix":[3,8], "flags":4, "x":91, "y":39}, - {"matrix":[3,9], "flags":4, "x":101, "y":39}, - {"matrix":[3,10], "flags":4, "x":111, "y":39}, - {"matrix":[3,11], "flags":4, "x":122, "y":39}, - {"matrix":[3,13], "flags":4, "x":139, "y":39}, - {"matrix":[3,17], "flags":4, "x":192, "y":39}, - {"matrix":[3,18], "flags":4, "x":203, "y":39}, - {"matrix":[3,19], "flags":4, "x":213, "y":39}, - - {"matrix":[4,0], "flags":1, "x":6, "y":52}, - {"matrix":[4,2], "flags":4, "x":23, "y":52}, - {"matrix":[4,3], "flags":4, "x":33, "y":52}, - {"matrix":[4,4], "flags":4, "x":44, "y":52}, - {"matrix":[4,5], "flags":4, "x":54, "y":52}, - {"matrix":[4,6], "flags":4, "x":65, "y":52}, - {"matrix":[4,7], "flags":4, "x":75, "y":52}, - {"matrix":[4,8], "flags":4, "x":85, "y":52}, - {"matrix":[4,9], "flags":4, "x":96, "y":52}, - {"matrix":[4,10], "flags":4, "x":106, "y":52}, - {"matrix":[4,11], "flags":4, "x":117, "y":52}, - {"matrix":[4,13], "flags":1, "x":136, "y":52}, - {"matrix":[4,15], "flags":1, "x":169, "y":52}, - {"matrix":[4,17], "flags":4, "x":192, "y":52}, - {"matrix":[4,18], "flags":4, "x":203, "y":52}, - {"matrix":[4,19], "flags":4, "x":213, "y":52}, - {"matrix":[4,20], "flags":4, "x":224, "y":58}, - - {"matrix":[5,0], "flags":1, "x":1, "y":64}, - {"matrix":[5,1], "flags":1, "x":14, "y":64}, - {"matrix":[5,2], "flags":1, "x":27, "y":64}, - {"matrix":[5,6], "flags":4, "x":66, "y":64}, - {"matrix":[5,10], "flags":1, "x":105, "y":64}, - {"matrix":[5,11], "flags":1, "x":118, "y":64}, - {"matrix":[5,12], "flags":1, "x":131, "y":64}, - {"matrix":[5,13], "flags":1, "x":144, "y":64}, - {"matrix":[5,14], "flags":1, "x":158, "y":64}, - {"matrix":[5,15], "flags":1, "x":169, "y":64}, - {"matrix":[5,16], "flags":1, "x":179, "y":64}, - {"matrix":[5,17], "flags":4, "x":197, "y":64}, - {"matrix":[5,19], "flags":4, "x":213, "y":64} - ] - } -} \ No newline at end of file diff --git a/keyboards/keychron/k10_pro/ansi/rgb/keymaps/default/keymap.c b/keyboards/keychron/k10_pro/ansi/rgb/keymaps/default/keymap.c deleted file mode 100644 index 170a7690a3..0000000000 --- a/keyboards/keychron/k10_pro/ansi/rgb/keymaps/default/keymap.c +++ /dev/null @@ -1,56 +0,0 @@ -/* 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 . - */ - -#include QMK_KEYBOARD_H - -enum layers { - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN, -}; - -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_ansi_108( - KC_ESC, KC_BRID, KC_BRIU, KC_MCTL, KC_LPAD, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_SNAP, KC_SIRI, RGB_MOD, KC_F13, KC_F14, KC_F15, KC_F16, - KC_GRV, 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_INS, KC_HOME, KC_PGUP, KC_NUM, KC_PSLS, KC_PAST, KC_PMNS, - 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_DEL, KC_END, KC_PGDN, KC_P7, KC_P8, KC_P9, KC_PPLS, - 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_P4, KC_P5, KC_P6, - 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_P1, KC_P2, KC_P3, KC_PENT, - KC_LCTL, KC_LOPTN, KC_LCMMD, KC_SPC, KC_RCMMD, KC_ROPTN, MO(MAC_FN), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT, KC_P0, KC_PDOT ), - [MAC_FN] = LAYOUT_ansi_108( - _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, RGB_TOG, _______, _______, _______, _______, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ), - [WIN_BASE] = LAYOUT_ansi_108( - KC_ESC, 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_PSCR, KC_CTANA, RGB_MOD, _______, _______, _______, _______, - KC_GRV, 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_INS, KC_HOME, KC_PGUP, KC_NUM, KC_PSLS, KC_PAST, KC_PMNS, - 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_DEL, KC_END, KC_PGDN, KC_P7, KC_P8, KC_P9, KC_PPLS, - 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_P4, KC_P5, KC_P6, - 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_P1, KC_P2, KC_P3, KC_PENT, - KC_LCTL, KC_LWIN, KC_LALT, KC_SPC, KC_RALT, KC_RWIN, MO(WIN_FN), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT, KC_P0, KC_PDOT ), - [WIN_FN] = LAYOUT_ansi_108( - _______, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, RGB_TOG, _______, _______, _______, _______, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ) -}; diff --git a/keyboards/keychron/k10_pro/ansi/rgb/keymaps/via/keymap.c b/keyboards/keychron/k10_pro/ansi/rgb/keymaps/via/keymap.c deleted file mode 100644 index 6eddf66e6a..0000000000 --- a/keyboards/keychron/k10_pro/ansi/rgb/keymaps/via/keymap.c +++ /dev/null @@ -1,57 +0,0 @@ -/* 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 . - */ - -#include QMK_KEYBOARD_H - -enum layers { - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN, -}; - -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_ansi_108( - KC_ESC, KC_BRID, KC_BRIU, KC_MICT, KC_LAPA, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_SNAP, KC_SIRI, RGB_MOD, KC_F13, KC_F14, KC_F15, KC_F16, - KC_GRV, 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_INS, KC_HOME, KC_PGUP, KC_NUM, KC_PSLS, KC_PAST, KC_PMNS, - 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_DEL, KC_END, KC_PGDN, KC_P7, KC_P8, KC_P9, KC_PPLS, - 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_P4, KC_P5, KC_P6, - 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_P1, KC_P2, KC_P3, KC_PENT, - KC_LCTL, KC_LOPTN, KC_LCMMD, KC_SPC, KC_RCMMD, KC_ROPTN, MO(MAC_FN), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT, KC_P0, KC_PDOT ), - [MAC_FN] = LAYOUT_ansi_108( - _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, RGB_TOG, _______, _______, _______, _______, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ), - [WIN_BASE] = LAYOUT_ansi_108( - KC_ESC, 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_PSCR, KC_CTANA, RGB_MOD, _______, _______, _______, _______, - KC_GRV, 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_INS, KC_HOME, KC_PGUP, KC_NUM, KC_PSLS, KC_PAST, KC_PMNS, - 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_DEL, KC_END, KC_PGDN, KC_P7, KC_P8, KC_P9, KC_PPLS, - 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_P4, KC_P5, KC_P6, - 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_P1, KC_P2, KC_P3, KC_PENT, - KC_LCTL, KC_LWIN, KC_LALT, KC_SPC, KC_RALT, KC_RWIN, MO(WIN_FN), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT, KC_P0, KC_PDOT ), - [WIN_FN] = LAYOUT_ansi_108( - _______, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, RGB_TOG, _______, _______, _______, _______, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ) -}; - diff --git a/keyboards/keychron/k10_pro/ansi/rgb/keymaps/via/rules.mk b/keyboards/keychron/k10_pro/ansi/rgb/keymaps/via/rules.mk deleted file mode 100644 index 1e5b99807c..0000000000 --- a/keyboards/keychron/k10_pro/ansi/rgb/keymaps/via/rules.mk +++ /dev/null @@ -1 +0,0 @@ -VIA_ENABLE = yes diff --git a/keyboards/keychron/k10_pro/ansi/rgb/rgb.c b/keyboards/keychron/k10_pro/ansi/rgb/rgb.c deleted file mode 100644 index 00b624115b..0000000000 --- a/keyboards/keychron/k10_pro/ansi/rgb/rgb.c +++ /dev/null @@ -1,171 +0,0 @@ -/* Copyright 2021 @ 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 . - */ - -#include "quantum.h" - -// clang-format off -#ifdef RGB_MATRIX_ENABLE -const snled27351_led_t g_snled27351_leds[RGB_MATRIX_LED_COUNT] = { -/* Refer to CKLED manual for these locations - * driver - * | R location - * | | G location - * | | | B location - * | | | | */ - {0, I_1, G_1, H_1}, - {0, I_2, G_2, H_2}, - {0, I_3, G_3, H_3}, - {0, I_4, G_4, H_4}, - {0, I_5, G_5, H_5}, - {0, I_6, G_6, H_6}, - {0, I_7, G_7, H_7}, - {0, I_8, G_8, H_8}, - {0, I_9, G_9, H_9}, - {0, I_10, G_10, H_10}, - {0, I_11, G_11, H_11}, - {0, I_12, G_12, H_12}, - {0, I_13, G_13, H_13}, - {0, I_15, G_15, H_15}, - {0, I_16, G_16, H_16}, - {0, L_5, J_5, K_5}, - {0, L_6, J_6, K_6}, - {0, L_7, J_7, K_7}, - {0, L_8, J_8, K_8}, - {0, L_4, J_4, K_4}, - - {0, C_1, A_1, B_1}, - {0, C_2, A_2, B_2}, - {0, C_3, A_3, B_3}, - {0, C_4, A_4, B_4}, - {0, C_5, A_5, B_5}, - {0, C_6, A_6, B_6}, - {0, C_7, A_7, B_7}, - {0, C_8, A_8, B_8}, - {0, C_9, A_9, B_9}, - {0, C_10, A_10, B_10}, - {0, C_11, A_11, B_11}, - {0, C_12, A_12, B_12}, - {0, C_13, A_13, B_13}, - {0, C_14, A_14, B_14}, - {0, C_15, A_15, B_15}, - {0, C_16, A_16, B_16}, - {0, L_9, J_9, K_9}, - {0, L_10, J_10, K_10}, - {0, L_11, J_11, K_11}, - {0, L_12, J_12, K_12}, - {0, L_13, J_13, K_13}, - - {0, F_1, D_1, E_1}, - {0, F_2, D_2, E_2}, - {0, F_3, D_3, E_3}, - {0, F_4, D_4, E_4}, - {0, F_5, D_5, E_5}, - {0, F_6, D_6, E_6}, - {0, F_7, D_7, E_7}, - {0, F_8, D_8, E_8}, - {0, F_9, D_9, E_9}, - {0, F_10, D_10, E_10}, - {0, F_11, D_11, E_11}, - {0, F_12, D_12, E_12}, - {0, F_13, D_13, E_13}, - {0, F_14, D_14, E_14}, - {0, F_15, D_15, E_15}, - {0, F_16, D_16, E_16}, - {0, L_14, J_14, K_14}, - {0, L_15, J_15, K_15}, - {0, L_16, J_16, K_16}, - {1, F_1, D_1, E_1}, - {1, F_2, D_2, E_2}, - - {1, C_16, A_16, B_16}, - {1, C_15, A_15, B_15}, - {1, C_14, A_14, B_14}, - {1, C_13, A_13, B_13}, - {1, C_12, A_12, B_12}, - {1, C_11, A_11, B_11}, - {1, C_10, A_10, B_10}, - {1, C_9, A_9, B_9}, - {1, C_8, A_8, B_8}, - {1, C_7, A_7, B_7}, - {1, C_6, A_6, B_6}, - {1, C_5, A_5, B_5}, - {1, C_3, A_3, B_3}, - {1, F_3, D_3, E_3}, - {1, F_4, D_4, E_4}, - {1, F_5, D_5, E_5}, - - {1, I_16, G_16, H_16}, - {1, I_14, G_14, H_14}, - {1, I_13, G_13, H_13}, - {1, I_12, G_12, H_12}, - {1, I_11, G_11, H_11}, - {1, I_10, G_10, H_10}, - {1, I_9, G_9, H_9}, - {1, I_8, G_8, H_8}, - {1, I_7, G_7, H_7}, - {1, I_6, G_6, H_6}, - {1, I_5, G_5, H_5}, - {1, I_3, G_3, H_3}, - {1, I_1, G_1, H_1}, - {1, F_6, D_6, E_6}, - {1, F_7, D_7, E_7}, - {1, F_8, D_8, E_8}, - {1, F_9, D_9, E_9}, - - {1, L_16, J_16, K_16}, - {1, L_15, J_15, K_15}, - {1, L_14, J_14, K_14}, - {1, L_10, J_10, K_10}, - {1, L_6, J_6, K_6}, - {1, L_5, J_5, K_5}, - {1, L_4, J_4, K_4}, - {1, L_3, J_3, K_3}, - {1, L_2, J_2, K_2}, - {1, L_1, J_1, K_1}, - {1, F_10, D_10, E_10}, - {1, F_11, D_11, E_11}, - {1, F_12, D_12, E_12}, -}; - -led_config_t g_led_config = { - { - { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, NO_LED, 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, 40 }, - { 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61 }, - { 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, NO_LED, 74, NO_LED, NO_LED, NO_LED, 75, 76, 77, NO_LED }, - { 78, NO_LED, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, NO_LED, 89, NO_LED, 90, NO_LED, 91, 92, 93, 94 }, - { 95, 96, 97, NO_LED, NO_LED, NO_LED, 98, NO_LED, NO_LED, NO_LED, 99, 100, 101, 102, 103, 104, 105, 106, NO_LED, 107, NO_LED } - }, - { - {0, 0}, {20, 0}, {31, 0}, {41, 0}, {52, 0}, {67, 0}, {78, 0}, {88, 0}, {98, 0}, {114, 0}, {124, 0}, {135, 0}, {145, 0}, {158, 0}, {169, 0}, {179, 0}, {192, 0}, {203, 0}, {213, 0}, {224, 0}, - {0,15}, {10,15}, {20,15}, {31,15}, {41,15}, {52,15}, {62,15}, {72,15}, {83,15}, { 93, 15}, {104, 15}, {114, 15}, {124, 15}, {140, 15}, {158, 15}, {169, 15}, {179, 15}, {192, 15}, {203, 15}, {213, 15}, {224, 15}, - {2,28}, {15,28}, {26,28}, {36,28}, {46,28}, {57,28}, {67,28}, {78,28}, {88,28}, { 98, 28}, {109, 28}, {119, 28}, {130, 28}, {143, 28}, {158, 28}, {169, 28}, {179, 28}, {192, 28}, {203, 28}, {213, 28}, {224, 28}, - {3,39}, {18,39}, {28,39}, {39,39}, {49,39}, {59,39}, {70,39}, {80,39}, {91,39}, {101, 39}, {111, 39}, {122, 39}, {139, 39}, {192, 39}, {203, 39}, {213, 39}, - {6,52}, {23,52}, {33,52}, {44,52}, {54,52}, {65,52}, {75,52}, {85,52}, { 96, 52}, {106, 52}, {117, 52}, {136, 52}, {169, 52}, {192, 52}, {203, 52}, {213, 52}, {224, 52}, - {1,64}, {14,64}, {27,64}, {66,64}, {105, 64}, {118, 64}, {131, 64}, {144, 64}, {158, 64}, {169, 64}, {179, 64}, {197, 64}, {213, 64}, - - }, - { - 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, - 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, - 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, - 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, - 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, - 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, - - } -}; -#endif diff --git a/keyboards/keychron/k10_pro/ansi/rgb/rules.mk b/keyboards/keychron/k10_pro/ansi/rgb/rules.mk deleted file mode 100644 index f886ea2e8e..0000000000 --- a/keyboards/keychron/k10_pro/ansi/rgb/rules.mk +++ /dev/null @@ -1 +0,0 @@ -# This file intentionally blank \ No newline at end of file diff --git a/keyboards/keychron/k10_pro/ansi/white/config.h b/keyboards/keychron/k10_pro/ansi/white/config.h deleted file mode 100644 index fc5f06f5b4..0000000000 --- a/keyboards/keychron/k10_pro/ansi/white/config.h +++ /dev/null @@ -1,51 +0,0 @@ -/* 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 . - */ - -#pragma once - -#ifdef LED_MATRIX_ENABLE -/* LED matrix driver configuration */ -# define DRIVER_COUNT 1 -# define SNLED27351_I2C_ADDRESS_1 SNLED27351_I2C_ADDRESS_GND - -/* LED matrix configuration */ -# define LED_MATRIX_LED_COUNT 108 - -/* Set to infinit, which is use in USB mode by default */ -# define LED_MATRIX_TIMEOUT LED_MATRIX_TIMEOUT_INFINITE -/* Allow shutdown of led driver to save power */ -# define LED_MATRIX_DRIVER_SHUTDOWN_ENABLE -/* Turn off backlight on low brightness to save power */ -# define LED_MATRIX_BRIGHTNESS_TURN_OFF_VAL 32 - -/* Indicatoon led */ -# define CAPS_LOCK_INDEX 62 -# define NUM_LOCK_INDEX 37 - -/* LED Matrix Animation modes. Explicitly enabled - * For full list of effects, see: - * https://docs.qmk.fm/#/feature_led_matrix?id=led-matrix-effects - */ -# define LED_MATRIX_KEYPRESSES - -/* Use first 8 channels of LED driver */ -# define PHASE_CHANNEL MSKPHASE_8CHANNEL - -/* Set LED driver current */ -# define SNLED27351_CURRENT_TUNE \ - { 0x60, 0x60, 0x60, 0x60, 0x60, 0x60, 0x60, 0x60, 0x60, 0x60, 0x60, 0x60 } - -#endif \ No newline at end of file diff --git a/keyboards/keychron/k10_pro/ansi/white/info.json b/keyboards/keychron/k10_pro/ansi/white/info.json deleted file mode 100644 index 2d6c8e67fb..0000000000 --- a/keyboards/keychron/k10_pro/ansi/white/info.json +++ /dev/null @@ -1,145 +0,0 @@ -{ - "usb": { - "pid": "0x02A3", - "device_version": "1.0.0" - }, - "features": { - "led_matrix": true - }, - "led_matrix": { - "driver": "snled27351", - "animations": { - "none": true, - "solid": true, - "breathing": true, - "band_pinwheel": true, - "band_spiral": true, - "cycle_left_right": true, - "cycle_up_down": true, - "cycle_out_in": true, - "dual_beacon": true, - "solid_reactive_simple": true, - "solid_reactive_multiwide": true, - "solid_reactive_multinexus": true, - "solid_splash": true, - "wave_left_right": true, - "wave_up_down": true, - "effect_max": true - }, - "layout": [ - {"matrix":[0,0], "flags":1, "x":0, "y":0}, - {"matrix":[0,1], "flags":1, "x":20, "y":0}, - {"matrix":[0,2], "flags":1, "x":31, "y":0}, - {"matrix":[0,3], "flags":1, "x":42, "y":0}, - {"matrix":[0,4], "flags":1, "x":52, "y":0}, - {"matrix":[0,5], "flags":1, "x":67, "y":0}, - {"matrix":[0,6], "flags":1, "x":78, "y":0}, - {"matrix":[0,7], "flags":1, "x":88, "y":0}, - {"matrix":[0,8], "flags":1, "x":98, "y":0}, - {"matrix":[0,9], "flags":1, "x":114, "y":0}, - {"matrix":[0,10], "flags":1, "x":125, "y":0}, - {"matrix":[0,11], "flags":1, "x":135, "y":0}, - {"matrix":[0,12], "flags":1, "x":145, "y":0}, - {"matrix":[0,14], "flags":1, "x":158, "y":0}, - {"matrix":[0,15], "flags":1, "x":169, "y":0}, - {"matrix":[0,16], "flags":1, "x":179, "y":0}, - {"matrix":[0,17], "flags":4, "x":192, "y":0}, - {"matrix":[0,18], "flags":4, "x":203, "y":0}, - {"matrix":[0,19], "flags":4, "x":213, "y":0}, - {"matrix":[0,20], "flags":4, "x":224, "y":0}, - - {"matrix":[1,0], "flags":1, "x":0, "y":15}, - {"matrix":[1,1], "flags":8, "x":10, "y":15}, - {"matrix":[1,2], "flags":8, "x":20, "y":15}, - {"matrix":[1,3], "flags":8, "x":31, "y":15}, - {"matrix":[1,4], "flags":4, "x":41, "y":15}, - {"matrix":[1,5], "flags":4, "x":52, "y":15}, - {"matrix":[1,6], "flags":4, "x":62, "y":15}, - {"matrix":[1,7], "flags":4, "x":72, "y":15}, - {"matrix":[1,8], "flags":4, "x":83, "y":15}, - {"matrix":[1,9], "flags":4, "x":93, "y":15}, - {"matrix":[1,10], "flags":4, "x":104, "y":15}, - {"matrix":[1,11], "flags":4, "x":114, "y":15}, - {"matrix":[1,12], "flags":4, "x":124, "y":15}, - {"matrix":[1,13], "flags":1, "x":140, "y":15}, - {"matrix":[1,14], "flags":1, "x":158, "y":15}, - {"matrix":[1,15], "flags":1, "x":169, "y":15}, - {"matrix":[1,16], "flags":1, "x":180, "y":15}, - {"matrix":[1,17], "flags":8, "x":192, "y":15}, - {"matrix":[1,18], "flags":4, "x":203, "y":15}, - {"matrix":[1,19], "flags":4, "x":213, "y":15}, - {"matrix":[1,20], "flags":4, "x":224, "y":15}, - - {"matrix":[2,0], "flags":1, "x":2, "y":28}, - {"matrix":[2,1], "flags":4, "x":15, "y":28}, - {"matrix":[2,2], "flags":4, "x":26, "y":28}, - {"matrix":[2,3], "flags":4, "x":36, "y":28}, - {"matrix":[2,4], "flags":4, "x":46, "y":28}, - {"matrix":[2,5], "flags":4, "x":57, "y":28}, - {"matrix":[2,6], "flags":4, "x":67, "y":28}, - {"matrix":[2,7], "flags":4, "x":78, "y":28}, - {"matrix":[2,8], "flags":4, "x":88, "y":28}, - {"matrix":[2,9], "flags":4, "x":98, "y":28}, - {"matrix":[2,10], "flags":4, "x":109, "y":28}, - {"matrix":[2,11], "flags":4, "x":119, "y":28}, - {"matrix":[2,12], "flags":4, "x":130, "y":28}, - {"matrix":[2,13], "flags":1, "x":143, "y":28}, - {"matrix":[2,14], "flags":1, "x":158, "y":28}, - {"matrix":[2,15], "flags":1, "x":169, "y":28}, - {"matrix":[2,16], "flags":1, "x":179, "y":28}, - {"matrix":[2,17], "flags":4, "x":192, "y":28}, - {"matrix":[2,18], "flags":4, "x":203, "y":28}, - {"matrix":[2,19], "flags":4, "x":213, "y":28}, - {"matrix":[2,20], "flags":4, "x":224, "y":28}, - - {"matrix":[3,0], "flags":8, "x":3, "y":39}, - {"matrix":[3,1], "flags":4, "x":18, "y":39}, - {"matrix":[3,2], "flags":4, "x":28, "y":39}, - {"matrix":[3,3], "flags":4, "x":39, "y":39}, - {"matrix":[3,4], "flags":4, "x":49, "y":39}, - {"matrix":[3,5], "flags":4, "x":59, "y":39}, - {"matrix":[3,6], "flags":4, "x":70, "y":39}, - {"matrix":[3,7], "flags":4, "x":80, "y":39}, - {"matrix":[3,8], "flags":4, "x":91, "y":39}, - {"matrix":[3,9], "flags":4, "x":101, "y":39}, - {"matrix":[3,10], "flags":4, "x":111, "y":39}, - {"matrix":[3,11], "flags":4, "x":122, "y":39}, - {"matrix":[3,13], "flags":4, "x":139, "y":39}, - {"matrix":[3,17], "flags":4, "x":192, "y":39}, - {"matrix":[3,18], "flags":4, "x":203, "y":39}, - {"matrix":[3,19], "flags":4, "x":213, "y":39}, - - {"matrix":[4,0], "flags":1, "x":6, "y":52}, - {"matrix":[4,2], "flags":4, "x":23, "y":52}, - {"matrix":[4,3], "flags":4, "x":33, "y":52}, - {"matrix":[4,4], "flags":4, "x":44, "y":52}, - {"matrix":[4,5], "flags":4, "x":54, "y":52}, - {"matrix":[4,6], "flags":4, "x":65, "y":52}, - {"matrix":[4,7], "flags":4, "x":75, "y":52}, - {"matrix":[4,8], "flags":4, "x":85, "y":52}, - {"matrix":[4,9], "flags":4, "x":96, "y":52}, - {"matrix":[4,10], "flags":4, "x":106, "y":52}, - {"matrix":[4,11], "flags":4, "x":117, "y":52}, - {"matrix":[4,13], "flags":1, "x":136, "y":52}, - {"matrix":[4,15], "flags":1, "x":169, "y":52}, - {"matrix":[4,17], "flags":4, "x":192, "y":52}, - {"matrix":[4,18], "flags":4, "x":203, "y":52}, - {"matrix":[4,19], "flags":4, "x":213, "y":52}, - {"matrix":[4,20], "flags":4, "x":224, "y":58}, - - {"matrix":[5,0], "flags":1, "x":1, "y":64}, - {"matrix":[5,1], "flags":1, "x":14, "y":64}, - {"matrix":[5,2], "flags":1, "x":27, "y":64}, - {"matrix":[5,6], "flags":4, "x":66, "y":64}, - {"matrix":[5,10], "flags":1, "x":105, "y":64}, - {"matrix":[5,11], "flags":1, "x":118, "y":64}, - {"matrix":[5,12], "flags":1, "x":131, "y":64}, - {"matrix":[5,13], "flags":1, "x":144, "y":64}, - {"matrix":[5,14], "flags":1, "x":158, "y":64}, - {"matrix":[5,15], "flags":1, "x":169, "y":64}, - {"matrix":[5,16], "flags":1, "x":179, "y":64}, - {"matrix":[5,17], "flags":4, "x":197, "y":64}, - {"matrix":[5,19], "flags":4, "x":213, "y":64} - ] - } -} diff --git a/keyboards/keychron/k10_pro/ansi/white/keymaps/default/keymap.c b/keyboards/keychron/k10_pro/ansi/white/keymaps/default/keymap.c deleted file mode 100644 index d9e854a9c7..0000000000 --- a/keyboards/keychron/k10_pro/ansi/white/keymaps/default/keymap.c +++ /dev/null @@ -1,56 +0,0 @@ -/* 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 . - */ - -#include QMK_KEYBOARD_H - -enum layers{ - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN, -}; - -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_ansi_108( - KC_ESC, KC_BRID, KC_BRIU, KC_MCTL, KC_LPAD, BL_DOWN, BL_UP, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_SNAP, KC_SIRI, BL_STEP, KC_F13, KC_F14, KC_F15, KC_F16, - KC_GRV, 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_INS, KC_HOME, KC_PGUP, KC_NUM, KC_PSLS, KC_PAST, KC_PMNS, - 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_DEL, KC_END, KC_PGDN, KC_P7, KC_P8, KC_P9, KC_PPLS, - 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_P4, KC_P5, KC_P6, - 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_P1, KC_P2, KC_P3, KC_PENT, - KC_LCTL, KC_LOPTN, KC_LCMMD, KC_SPC, KC_RCMMD, KC_ROPTN, MO(MAC_FN), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT, KC_P0, KC_PDOT ), - [MAC_FN] = LAYOUT_ansi_108( - _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, BL_TOGG, _______, _______, _______, _______, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - BL_TOGG, BL_STEP, BL_UP, KC_TRNS, KC_TRNS, KC_TRNS, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, KC_TRNS, BL_DOWN, KC_TRNS, KC_TRNS, KC_TRNS, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ), - [WIN_BASE] = LAYOUT_ansi_108( - KC_ESC, 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_PSCR, KC_CTANA, BL_STEP, _______, _______, _______, _______, - KC_GRV, 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_INS, KC_HOME, KC_PGUP, KC_NUM, KC_PSLS, KC_PAST, KC_PMNS, - 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_DEL, KC_END, KC_PGDN, KC_P7, KC_P8, KC_P9, KC_PPLS, - 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_P4, KC_P5, KC_P6, - 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_P1, KC_P2, KC_P3, KC_PENT, - KC_LCTL, KC_LWIN, KC_LALT, KC_SPC, KC_RALT, KC_RWIN, MO(WIN_FN), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT, KC_P0, KC_PDOT ), - [WIN_FN] = LAYOUT_ansi_108( - _______, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, BL_DOWN, BL_UP, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, BL_TOGG, _______, _______, _______, _______, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - BL_TOGG, BL_STEP, BL_UP, KC_TRNS, KC_TRNS, KC_TRNS, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, KC_TRNS, BL_DOWN, KC_TRNS, KC_TRNS, KC_TRNS, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ) -}; diff --git a/keyboards/keychron/k10_pro/ansi/white/keymaps/via/keymap.c b/keyboards/keychron/k10_pro/ansi/white/keymaps/via/keymap.c deleted file mode 100644 index 5c29bc5fc4..0000000000 --- a/keyboards/keychron/k10_pro/ansi/white/keymaps/via/keymap.c +++ /dev/null @@ -1,56 +0,0 @@ -/* 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 . - */ - -#include QMK_KEYBOARD_H - -enum layers { - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN, -}; - -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_ansi_108( - KC_ESC, KC_BRID, KC_BRIU, KC_MICT, KC_LAPA, BL_DOWN, BL_UP, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_SNAP, KC_SIRI, BL_STEP, KC_F13, KC_F14, KC_F15, KC_F16, - KC_GRV, 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_INS, KC_HOME, KC_PGUP, KC_NUM, KC_PSLS, KC_PAST, KC_PMNS, - 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_DEL, KC_END, KC_PGDN, KC_P7, KC_P8, KC_P9, KC_PPLS, - 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_P4, KC_P5, KC_P6, - 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_P1, KC_P2, KC_P3, KC_PENT, - KC_LCTL, KC_LOPTN, KC_LCMMD, KC_SPC, KC_RCMMD, KC_ROPTN, MO(MAC_FN), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT, KC_P0, KC_PDOT ), - [MAC_FN] = LAYOUT_ansi_108( - _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, BL_TOGG, _______, _______, _______, _______, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - BL_TOGG, BL_STEP, BL_UP, KC_TRNS, KC_TRNS, KC_TRNS, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, KC_TRNS, BL_DOWN, KC_TRNS, KC_TRNS, KC_TRNS, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ), - [WIN_BASE] = LAYOUT_ansi_108( - KC_ESC, 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_PSCR, KC_CTANA, BL_STEP, _______, _______, _______, _______, - KC_GRV, 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_INS, KC_HOME, KC_PGUP, KC_NUM, KC_PSLS, KC_PAST, KC_PMNS, - 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_DEL, KC_END, KC_PGDN, KC_P7, KC_P8, KC_P9, KC_PPLS, - 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_P4, KC_P5, KC_P6, - 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_P1, KC_P2, KC_P3, KC_PENT, - KC_LCTL, KC_LWIN, KC_LALT, KC_SPC, KC_RALT, KC_RWIN, MO(WIN_FN), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT, KC_P0, KC_PDOT ), - [WIN_FN] = LAYOUT_ansi_108( - _______, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, BL_DOWN, BL_UP, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, BL_TOGG, _______, _______, _______, _______, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - BL_TOGG, BL_STEP, BL_UP, KC_TRNS, KC_TRNS, KC_TRNS, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, KC_TRNS, BL_DOWN, KC_TRNS, KC_TRNS, KC_TRNS, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ) -}; diff --git a/keyboards/keychron/k10_pro/ansi/white/keymaps/via/rules.mk b/keyboards/keychron/k10_pro/ansi/white/keymaps/via/rules.mk deleted file mode 100644 index 1e5b99807c..0000000000 --- a/keyboards/keychron/k10_pro/ansi/white/keymaps/via/rules.mk +++ /dev/null @@ -1 +0,0 @@ -VIA_ENABLE = yes diff --git a/keyboards/keychron/k10_pro/ansi/white/rules.mk b/keyboards/keychron/k10_pro/ansi/white/rules.mk deleted file mode 100644 index f886ea2e8e..0000000000 --- a/keyboards/keychron/k10_pro/ansi/white/rules.mk +++ /dev/null @@ -1 +0,0 @@ -# This file intentionally blank \ No newline at end of file diff --git a/keyboards/keychron/k10_pro/ansi/white/white.c b/keyboards/keychron/k10_pro/ansi/white/white.c deleted file mode 100644 index 9ac1da90ff..0000000000 --- a/keyboards/keychron/k10_pro/ansi/white/white.c +++ /dev/null @@ -1,140 +0,0 @@ -/* Copyright 2021 @ 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 . - */ - -#include "quantum.h" - -// clang-format off -#ifdef LED_MATRIX_ENABLE -const snled27351_led_t g_snled27351_leds[LED_MATRIX_LED_COUNT] = { -/* Refer to snled27351manual for these locations - * driver - * | LED address - * | | */ - {0, A_16}, - {0, A_15}, - {0, A_14}, - {0, A_13}, - {0, A_12}, - {0, A_11}, - {0, A_10}, - {0, A_9}, - {0, A_8}, - {0, A_7}, - {0, A_6}, - {0, A_5}, - {0, A_4}, - {0, A_2}, - {0, A_1}, - {0, G_1}, - {0, G_2}, - {0, G_3}, - {0, G_4}, - {0, G_5}, - - {0, B_16}, - {0, B_15}, - {0, B_14}, - {0, B_13}, - {0, B_12}, - {0, B_11}, - {0, B_10}, - {0, B_9}, - {0, B_8}, - {0, B_7}, - {0, B_6}, - {0, B_5}, - {0, B_4}, - {0, B_3}, - {0, B_2}, - {0, B_1}, - {0, H_1}, - {0, H_2}, - {0, H_3}, - {0, H_4}, - {0, H_5}, - - {0, C_16}, - {0, C_15}, - {0, C_14}, - {0, C_13}, - {0, C_12}, - {0, C_11}, - {0, C_10}, - {0, C_9}, - {0, C_8}, - {0, C_7}, - {0, C_6}, - {0, C_5}, - {0, C_4}, - {0, C_3}, - {0, C_2}, - {0, C_1}, - {0, G_6}, - {0, G_7}, - {0, G_8}, - {0, G_9}, - {0, G_10}, - - {0, D_16}, - {0, D_15}, - {0, D_14}, - {0, D_13}, - {0, D_12}, - {0, D_11}, - {0, D_10}, - {0, D_9}, - {0, D_8}, - {0, D_7}, - {0, D_6}, - {0, D_5}, - {0, D_3}, - {0, H_7}, - {0, H_8}, - {0, H_9}, - - {0, E_16}, - {0, E_14}, - {0, E_13}, - {0, E_12}, - {0, E_11}, - {0, E_10}, - {0, E_9}, - {0, E_8}, - {0, E_7}, - {0, E_6}, - {0, E_5}, - {0, E_3}, - {0, E_1}, - {0, H_6}, - {0, H_11}, - {0, H_12}, - {0, H_10}, - - {0, F_16}, - {0, F_15}, - {0, F_14}, - {0, F_10}, - {0, F_6}, - {0, F_5}, - {0, F_4}, - {0, F_3}, - {0, F_2}, - {0, F_1}, - {0, G_13}, - {0, G_11}, - {0, G_12}, -}; -#endif diff --git a/keyboards/keychron/k10_pro/config.h b/keyboards/keychron/k10_pro/config.h deleted file mode 100644 index c466df5c89..0000000000 --- a/keyboards/keychron/k10_pro/config.h +++ /dev/null @@ -1,102 +0,0 @@ -/* 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 . - */ - -#pragma once - -/* turn off effects when suspended */ -#define RGB_DISABLE_WHEN_USB_SUSPENDED -#define LED_DISABLE_WHEN_USB_SUSPENDED - -/* DIP switch for Mac/win OS switch */ -#define DIP_SWITCH_PINS \ - { A8 } - -/* Caps lock LED Pin */ -#define LED_CAPS_LOCK_PIN A7 -#define LED_PIN_ON_STATE 1 - -/* 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 A10 - -# 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 A4 -# define BAT_LOW_LED_PIN_ON_STATE 1 - -# define HOST_DEVICES_COUNT 3 - -# define HOST_LED_PIN_LIST \ - { H3, H3, H3 } -# define HOST_LED_PIN_ON_STATE 1 - -# if defined(RGB_MATRIX_ENABLE) || defined(LED_MATRIX_ENABLE) - -# define LED_DRIVER_SHUTDOWN_PIN C14 - -# define HOST_LED_MATRIX_LIST \ - { 21, 22, 23 } - -# define BAT_LEVEL_LED_LIST \ - { 21, 22, 23, 24, 25, 26, 27, 28, 29, 30 } - -/* 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 WEAR_LEVELING_LOGICAL_SIZE 2048 -#define WEAR_LEVELING_BACKING_SIZE (WEAR_LEVELING_LOGICAL_SIZE * 2) -#define DYNAMIC_KEYMAP_EEPROM_MAX_ADDR 2047 - -/* HC595 driver configuration */ -#define HC595_STCP A0 -#define HC595_SHCP A1 -#define HC595_DS C15 -#define HC595_START_INDEX 1 -#define HC595_END_INDEX 20 - -/* Factory test keys */ -#define FN_KEY1 MO(1) -#define FN_KEY2 MO(3) diff --git a/keyboards/keychron/k10_pro/halconf.h b/keyboards/keychron/k10_pro/halconf.h deleted file mode 100644 index 306f917783..0000000000 --- a/keyboards/keychron/k10_pro/halconf.h +++ /dev/null @@ -1,29 +0,0 @@ -/* 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 _CHIBIOS_HAL_CONF_VER_8_0_ - -#define HAL_USE_I2C TRUE - -#ifdef KC_BLUETOOTH_ENABLE -# define PAL_USE_CALLBACKS TRUE -# define HAL_USE_SERIAL TRUE -# define HAL_USE_RTC TRUE -#endif - -#include_next diff --git a/keyboards/keychron/k10_pro/info.json b/keyboards/keychron/k10_pro/info.json deleted file mode 100644 index c82cc7f871..0000000000 --- a/keyboards/keychron/k10_pro/info.json +++ /dev/null @@ -1,388 +0,0 @@ -{ - "keyboard_name": "Keychron K10 Pro", - "manufacturer": "Keychron", - "url": "https://github.com/Keychron", - "maintainer": "lokher", - "processor": "STM32L432", - "bootloader": "stm32-dfu", - "usb": { - "vid": "0x3434" - }, - "features": { - "bootmagic": true, - "mousekey": true, - "extrakey": true, - "nkro": true, - "dip_switch": true, - "raw": true - }, - "diode_direction": "ROW2COL", - "matrix_size": { - "rows": 6, - "cols": 21 - }, - "matrix_pins": { - "rows": ["B5", "B4", "B3", "A15", "A14", "A13"], - "cols": ["B0", null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null], - "custom": true, - "custom_lite": true - }, - "layouts": { - "LAYOUT_ansi_108": { - "layout": [ - {"matrix":[0, 0], "x":0, "y":0}, - {"matrix":[0, 1], "x":2, "y":0}, - {"matrix":[0, 2], "x":3, "y":0}, - {"matrix":[0, 3], "x":4, "y":0}, - {"matrix":[0, 4], "x":5, "y":0}, - {"matrix":[0, 5], "x":6.5, "y":0}, - {"matrix":[0, 6], "x":7.5, "y":0}, - {"matrix":[0, 7], "x":8.5, "y":0}, - {"matrix":[0, 8], "x":9.5, "y":0}, - {"matrix":[0, 9], "x":11, "y":0}, - {"matrix":[0,10], "x":12, "y":0}, - {"matrix":[0,11], "x":13, "y":0}, - {"matrix":[0,12], "x":14, "y":0}, - {"matrix":[0,14], "x":15.25, "y":0}, - {"matrix":[0,15], "x":16.25, "y":0}, - {"matrix":[0,16], "x":17.25, "y":0}, - {"matrix":[0,17], "x":18.5, "y":0}, - {"matrix":[0,18], "x":19.5, "y":0}, - {"matrix":[0,19], "x":20.5, "y":0}, - {"matrix":[0,20], "x":21.5, "y":0}, - - {"matrix":[1, 0], "x":0, "y":1.25}, - {"matrix":[1, 1], "x":1, "y":1.25}, - {"matrix":[1, 2], "x":2, "y":1.25}, - {"matrix":[1, 3], "x":3, "y":1.25}, - {"matrix":[1, 4], "x":4, "y":1.25}, - {"matrix":[1, 5], "x":5, "y":1.25}, - {"matrix":[1, 6], "x":6, "y":1.25}, - {"matrix":[1, 7], "x":7, "y":1.25}, - {"matrix":[1, 8], "x":8, "y":1.25}, - {"matrix":[1, 9], "x":9, "y":1.25}, - {"matrix":[1,10], "x":10, "y":1.25}, - {"matrix":[1,11], "x":11, "y":1.25}, - {"matrix":[1,12], "x":12, "y":1.25}, - {"matrix":[1,13], "x":13, "y":1.25, "w":2}, - {"matrix":[1,14], "x":15.25, "y":1.25}, - {"matrix":[1,15], "x":16.25, "y":1.25}, - {"matrix":[1,16], "x":17.25, "y":1.25}, - {"matrix":[1,17], "x":18.5, "y":1.25}, - {"matrix":[1,18], "x":19.5, "y":1.25}, - {"matrix":[1,19], "x":20.5, "y":1.25}, - {"matrix":[1,20], "x":21.5, "y":1.25}, - - {"matrix":[2, 0], "x":0, "y":2.25, "w":1.5}, - {"matrix":[2, 1], "x":1.5, "y":2.25}, - {"matrix":[2, 2], "x":2.5, "y":2.25}, - {"matrix":[2, 3], "x":3.5, "y":2.25}, - {"matrix":[2, 4], "x":4.5, "y":2.25}, - {"matrix":[2, 5], "x":5.5, "y":2.25}, - {"matrix":[2, 6], "x":6.5, "y":2.25}, - {"matrix":[2, 7], "x":7.5, "y":2.25}, - {"matrix":[2, 8], "x":8.5, "y":2.25}, - {"matrix":[2, 9], "x":9.5, "y":2.25}, - {"matrix":[2,10], "x":10.5, "y":2.25}, - {"matrix":[2,11], "x":11.5, "y":2.25}, - {"matrix":[2,12], "x":12.5, "y":2.25}, - {"matrix":[2,13], "x":13.5, "y":2.25, "w":1.5}, - {"matrix":[2,14], "x":15.25, "y":2.25}, - {"matrix":[2,15], "x":16.25, "y":2.25}, - {"matrix":[2,16], "x":17.25, "y":2.25}, - {"matrix":[2,17], "x":18.5, "y":2.25}, - {"matrix":[2,18], "x":19.5, "y":2.25}, - {"matrix":[2,19], "x":20.5, "y":2.25}, - {"matrix":[2,20], "x":21.5, "y":2.25}, - - {"matrix":[3, 0], "x":0, "y":3.25, "w":1.75}, - {"matrix":[3, 1], "x":1.75, "y":3.25}, - {"matrix":[3, 2], "x":2.75, "y":3.25}, - {"matrix":[3, 3], "x":3.75, "y":3.25}, - {"matrix":[3, 4], "x":4.75, "y":3.25}, - {"matrix":[3, 5], "x":5.75, "y":3.25}, - {"matrix":[3, 6], "x":6.75, "y":3.25}, - {"matrix":[3, 7], "x":7.75, "y":3.25}, - {"matrix":[3, 8], "x":8.75, "y":3.25}, - {"matrix":[3, 9], "x":9.75, "y":3.25}, - {"matrix":[3,10], "x":10.75, "y":3.25}, - {"matrix":[3,11], "x":11.75, "y":3.25}, - {"matrix":[3,13], "x":12.75, "y":3.25, "w":2.25}, - {"matrix":[3,17], "x":18.5, "y":3.25}, - {"matrix":[3,18], "x":19.5, "y":3.25}, - {"matrix":[3,19], "x":20.5, "y":3.25}, - - {"matrix":[4, 0], "x":0, "y":4.25, "w":2.25}, - {"matrix":[4, 2], "x":2.25, "y":4.25}, - {"matrix":[4, 3], "x":3.25, "y":4.25}, - {"matrix":[4, 4], "x":4.25, "y":4.25}, - {"matrix":[4, 5], "x":5.25, "y":4.25}, - {"matrix":[4, 6], "x":6.25, "y":4.25}, - {"matrix":[4, 7], "x":7.25, "y":4.25}, - {"matrix":[4, 8], "x":8.25, "y":4.25}, - {"matrix":[4, 9], "x":9.25, "y":4.25}, - {"matrix":[4,10], "x":10.25, "y":4.25}, - {"matrix":[4,11], "x":11.25, "y":4.25}, - {"matrix":[4,13], "x":12.25, "y":4.25, "w":2.75}, - {"matrix":[4,15], "x":16.25, "y":4.25}, - {"matrix":[4,17], "x":18.5, "y":4.25}, - {"matrix":[4,18], "x":19.5, "y":4.25}, - {"matrix":[4,19], "x":20.5, "y":4.25}, - {"matrix":[4,20], "x":21.5, "y":4.25}, - - {"matrix":[5, 0], "x":0, "y":5.25, "w":1.25}, - {"matrix":[5, 1], "x":1.25, "y":5.25, "w":1.25}, - {"matrix":[5, 2], "x":2.5, "y":5.25, "w":1.25}, - {"matrix":[5, 6], "x":3.75, "y":5.25, "w":6.25}, - {"matrix":[5,10], "x":10, "y":5.25, "w":1.25}, - {"matrix":[5,11], "x":11.25, "y":5.25, "w":1.25}, - {"matrix":[5,12], "x":12.5, "y":5.25, "w":1.25}, - {"matrix":[5,13], "x":13.75, "y":5.25, "w":1.25}, - {"matrix":[5,14], "x":15.25, "y":5.25}, - {"matrix":[5,15], "x":16.25, "y":5.25}, - {"matrix":[5,16], "x":17.25, "y":5.25}, - {"matrix":[5,17], "x":18.5, "y":5.25}, - {"matrix":[5,19], "x":20.5, "y":5.25} - ] - }, - "LAYOUT_iso_109": { - "layout": [ - {"matrix":[0,0], "x":0, "y":0}, - {"matrix":[0,1], "x":2, "y":0}, - {"matrix":[0,2], "x":3, "y":0}, - {"matrix":[0,3], "x":4, "y":0}, - {"matrix":[0,4], "x":5, "y":0}, - {"matrix":[0,5], "x":6.5, "y":0}, - {"matrix":[0,6], "x":7.5, "y":0}, - {"matrix":[0,7], "x":8.5, "y":0}, - {"matrix":[0,8], "x":9.5, "y":0}, - {"matrix":[0,9], "x":11, "y":0}, - {"matrix":[0,10], "x":12, "y":0}, - {"matrix":[0,11], "x":13, "y":0}, - {"matrix":[0,12], "x":14, "y":0}, - {"matrix":[0,14], "x":15.25, "y":0}, - {"matrix":[0,15], "x":16.25, "y":0}, - {"matrix":[0,16], "x":17.25, "y":0}, - {"matrix":[0,17], "x":18.5, "y":0}, - {"matrix":[0,18], "x":19.5, "y":0}, - {"matrix":[0,19], "x":20.5, "y":0}, - {"matrix":[0,20], "x":21.5, "y":0}, - - {"matrix":[1,0], "x":0, "y":1.25}, - {"matrix":[1,1], "x":1, "y":1.25}, - {"matrix":[1,2], "x":2, "y":1.25}, - {"matrix":[1,3], "x":3, "y":1.25}, - {"matrix":[1,4], "x":4, "y":1.25}, - {"matrix":[1,5], "x":5, "y":1.25}, - {"matrix":[1,6], "x":6, "y":1.25}, - {"matrix":[1,7], "x":7, "y":1.25}, - {"matrix":[1,8], "x":8, "y":1.25}, - {"matrix":[1,9], "x":9, "y":1.25}, - {"matrix":[1,10], "x":10, "y":1.25}, - {"matrix":[1,11], "x":11, "y":1.25}, - {"matrix":[1,12], "x":12, "y":1.25}, - {"matrix":[1,13], "x":13, "y":1.25, "w":2}, - {"matrix":[1,14], "x":15.25, "y":1.25}, - {"matrix":[1,15], "x":16.25, "y":1.25}, - {"matrix":[1,16], "x":17.25, "y":1.25}, - {"matrix":[1,17], "x":18.5, "y":1.25}, - {"matrix":[1,18], "x":19.5, "y":1.25}, - {"matrix":[1,19], "x":20.5, "y":1.25}, - {"matrix":[1,20], "x":21.5, "y":1.25}, - - {"matrix":[2,0], "x":0, "y":2.25, "w":1.5}, - {"matrix":[2,1], "x":1.5, "y":2.25}, - {"matrix":[2,2], "x":2.5, "y":2.25}, - {"matrix":[2,3], "x":3.5, "y":2.25}, - {"matrix":[2,4], "x":4.5, "y":2.25}, - {"matrix":[2,5], "x":5.5, "y":2.25}, - {"matrix":[2,6], "x":6.5, "y":2.25}, - {"matrix":[2,7], "x":7.5, "y":2.25}, - {"matrix":[2,8], "x":8.5, "y":2.25}, - {"matrix":[2,9], "x":9.5, "y":2.25}, - {"matrix":[2,10], "x":10.5, "y":2.25}, - {"matrix":[2,11], "x":11.5, "y":2.25}, - {"matrix":[2,12], "x":12.5, "y":2.25}, - {"matrix":[2,14], "x":15.25, "y":2.25}, - {"matrix":[2,15], "x":16.25, "y":2.25}, - {"matrix":[2,16], "x":17.25, "y":2.25}, - {"matrix":[2,17], "x":18.5, "y":2.25}, - {"matrix":[2,18], "x":19.5, "y":2.25}, - {"matrix":[2,19], "x":20.5, "y":2.25}, - {"matrix":[2,20], "x":21.5, "y":2.25, "h":2}, - - {"matrix":[3,0], "x":0, "y":3.25, "w":1.75}, - {"matrix":[3,1], "x":1.75, "y":3.25}, - {"matrix":[3,2], "x":2.75, "y":3.25}, - {"matrix":[3,3], "x":3.75, "y":3.25}, - {"matrix":[3,4], "x":4.75, "y":3.25}, - {"matrix":[3,5], "x":5.75, "y":3.25}, - {"matrix":[3,6], "x":6.75, "y":3.25}, - {"matrix":[3,7], "x":7.75, "y":3.25}, - {"matrix":[3,8], "x":8.75, "y":3.25}, - {"matrix":[3,9], "x":9.75, "y":3.25}, - {"matrix":[3,10], "x":10.75, "y":3.25}, - {"matrix":[3,11], "x":11.75, "y":3.25}, - {"matrix":[3,13], "x":12.75, "y":3.25}, - {"matrix":[2,13], "x":13.75, "y":2.25, "w":1.25, "h":2}, - {"matrix":[3,17], "x":18.5, "y":3.25}, - {"matrix":[3,18], "x":19.5, "y":3.25}, - {"matrix":[3,19], "x":20.5, "y":3.25}, - - {"matrix":[4,0], "x":0, "y":4.25, "w":1.25}, - {"matrix":[4,1], "x":1.25, "y":4.25}, - {"matrix":[4,2], "x":2.25, "y":4.25}, - {"matrix":[4,3], "x":3.25, "y":4.25}, - {"matrix":[4,4], "x":4.25, "y":4.25}, - {"matrix":[4,5], "x":5.25, "y":4.25}, - {"matrix":[4,6], "x":6.25, "y":4.25}, - {"matrix":[4,7], "x":7.25, "y":4.25}, - {"matrix":[4,8], "x":8.25, "y":4.25}, - {"matrix":[4,9], "x":9.25, "y":4.25}, - {"matrix":[4,10], "x":10.25, "y":4.25}, - {"matrix":[4,11], "x":11.25, "y":4.25}, - {"matrix":[4,13], "x":12.25, "y":4.25, "w":2.75}, - {"matrix":[4,15], "x":16.25, "y":4.25}, - {"matrix":[4,17], "x":18.5, "y":4.25}, - {"matrix":[4,18], "x":19.5, "y":4.25}, - {"matrix":[4,19], "x":20.5, "y":4.25}, - {"matrix":[4,20], "x":21.5, "y":4.25, "h":2}, - - {"matrix":[5,0], "x":0, "y":5.25, "w":1.25}, - {"matrix":[5,1], "x":1.25, "y":5.25, "w":1.25}, - {"matrix":[5,2], "x":2.5, "y":5.25, "w":1.25}, - {"matrix":[5,6], "x":3.75, "y":5.25, "w":6.25}, - {"matrix":[5,10], "x":10, "y":5.25, "w":1.25}, - {"matrix":[5,11], "x":11.25, "y":5.25, "w":1.25}, - {"matrix":[5,12], "x":12.5, "y":5.25, "w":1.25}, - {"matrix":[5,13], "x":13.75, "y":5.25, "w":1.25}, - {"matrix":[5,14], "x":15.25, "y":5.25}, - {"matrix":[5,15], "x":16.25, "y":5.25}, - {"matrix":[5,16], "x":17.25, "y":5.25}, - {"matrix":[5,17], "x":18.5, "y":5.25, "w":2}, - {"matrix":[5,19], "x":20.5, "y":5.25} - ] - }, - "LAYOUT_112_jis": { - "layout": [ - {"matrix":[0,0], "x":0, "y":0}, - {"matrix":[0,1], "x":2, "y":0}, - {"matrix":[0,2], "x":3, "y":0}, - {"matrix":[0,3], "x":4, "y":0}, - {"matrix":[0,4], "x":5, "y":0}, - {"matrix":[0,5], "x":6.5, "y":0}, - {"matrix":[0,6], "x":7.5, "y":0}, - {"matrix":[0,7], "x":8.5, "y":0}, - {"matrix":[0,8], "x":9.5, "y":0}, - {"matrix":[0,9], "x":11, "y":0}, - {"matrix":[0,10], "x":12, "y":0}, - {"matrix":[0,11], "x":13, "y":0}, - {"matrix":[0,12], "x":14, "y":0}, - {"matrix":[0,14], "x":15.25, "y":0}, - {"matrix":[0,15], "x":16.25, "y":0}, - {"matrix":[0,16], "x":17.25, "y":0}, - {"matrix":[0,17], "x":18.5, "y":0}, - {"matrix":[0,18], "x":19.5, "y":0}, - {"matrix":[0,19], "x":20.5, "y":0}, - {"matrix":[0,20], "x":21.5, "y":0}, - - {"matrix":[1,0], "x":0, "y":1.25}, - {"matrix":[1,1], "x":1, "y":1.25}, - {"matrix":[1,2], "x":2, "y":1.25}, - {"matrix":[1,3], "x":3, "y":1.25}, - {"matrix":[1,4], "x":4, "y":1.25}, - {"matrix":[1,5], "x":5, "y":1.25}, - {"matrix":[1,6], "x":6, "y":1.25}, - {"matrix":[1,7], "x":7, "y":1.25}, - {"matrix":[1,8], "x":8, "y":1.25}, - {"matrix":[1,9], "x":9, "y":1.25}, - {"matrix":[1,10], "x":10, "y":1.25}, - {"matrix":[1,11], "x":11, "y":1.25}, - {"matrix":[1,12], "x":12, "y":1.25}, - {"matrix":[1,13], "x":13, "y":1.25}, - {"matrix":[0,13], "x":14, "y":1.25}, - {"matrix":[1,14], "x":15.25, "y":1.25}, - {"matrix":[1,15], "x":16.25, "y":1.25}, - {"matrix":[1,16], "x":17.25, "y":1.25}, - {"matrix":[1,17], "x":18.5, "y":1.25}, - {"matrix":[1,18], "x":19.5, "y":1.25}, - {"matrix":[1,19], "x":20.5, "y":1.25}, - {"matrix":[1,20], "x":21.5, "y":1.25}, - - {"matrix":[2,0], "x":0, "y":2.25, "w":1.5}, - {"matrix":[2,1], "x":1.5, "y":2.25}, - {"matrix":[2,2], "x":2.5, "y":2.25}, - {"matrix":[2,3], "x":3.5, "y":2.25}, - {"matrix":[2,4], "x":4.5, "y":2.25}, - {"matrix":[2,5], "x":5.5, "y":2.25}, - {"matrix":[2,6], "x":6.5, "y":2.25}, - {"matrix":[2,7], "x":7.5, "y":2.25}, - {"matrix":[2,8], "x":8.5, "y":2.25}, - {"matrix":[2,9], "x":9.5, "y":2.25}, - {"matrix":[2,10], "x":10.5, "y":2.25}, - {"matrix":[2,11], "x":11.5, "y":2.25}, - {"matrix":[2,12], "x":12.5, "y":2.25}, - {"matrix":[2,14], "x":15.25, "y":2.25}, - {"matrix":[2,15], "x":16.25, "y":2.25}, - {"matrix":[2,16], "x":17.25, "y":2.25}, - {"matrix":[2,17], "x":18.5, "y":2.25}, - {"matrix":[2,18], "x":19.5, "y":2.25}, - {"matrix":[2,19], "x":20.5, "y":2.25}, - {"matrix":[2,20], "x":21.5, "y":2.25, "h":2}, - - {"matrix":[3,0], "x":0, "y":3.25, "w":1.75}, - {"matrix":[3,1], "x":1.75, "y":3.25}, - {"matrix":[3,2], "x":2.75, "y":3.25}, - {"matrix":[3,3], "x":3.75, "y":3.25}, - {"matrix":[3,4], "x":4.75, "y":3.25}, - {"matrix":[3,5], "x":5.75, "y":3.25}, - {"matrix":[3,6], "x":6.75, "y":3.25}, - {"matrix":[3,7], "x":7.75, "y":3.25}, - {"matrix":[3,8], "x":8.75, "y":3.25}, - {"matrix":[3,9], "x":9.75, "y":3.25}, - {"matrix":[3,10], "x":10.75, "y":3.25}, - {"matrix":[3,11], "x":11.75, "y":3.25}, - {"matrix":[3,13], "x":12.75, "y":3.25}, - {"matrix":[2,13], "x":13.75, "y":2.25, "w":1.25, "h":2}, - {"matrix":[3,17], "x":18.5, "y":3.25}, - {"matrix":[3,18], "x":19.5, "y":3.25}, - {"matrix":[3,19], "x":20.5, "y":3.25}, - - {"matrix":[4,0], "x":0, "y":4.25, "w":2.25}, - {"matrix":[4,2], "x":2.25, "y":4.25}, - {"matrix":[4,3], "x":3.25, "y":4.25}, - {"matrix":[4,4], "x":4.25, "y":4.25}, - {"matrix":[4,5], "x":5.25, "y":4.25}, - {"matrix":[4,6], "x":6.25, "y":4.25}, - {"matrix":[4,7], "x":7.25, "y":4.25}, - {"matrix":[4,8], "x":8.25, "y":4.25}, - {"matrix":[4,9], "x":9.25, "y":4.25}, - {"matrix":[4,10], "x":10.25, "y":4.25}, - {"matrix":[4,11], "x":11.25, "y":4.25}, - {"matrix":[4,12], "x":12.25, "y":4.25}, - {"matrix":[4,13], "x":13.25, "y":4.25, "w":1.75}, - {"matrix":[4,15], "x":16.25, "y":4.25}, - {"matrix":[4,17], "x":18.5, "y":4.25}, - {"matrix":[4,18], "x":19.5, "y":4.25}, - {"matrix":[4,19], "x":20.5, "y":4.25}, - {"matrix":[4,20], "x":21.5, "y":4.25, "h":2}, - - {"matrix":[5,0], "x":0, "y":5.25, "w":1.25}, - {"matrix":[5,1], "x":1.25, "y":5.25}, - {"matrix":[5,2], "x":2.25, "y":5.25, "w":1.25}, - {"matrix":[5,3], "x":3.5, "y":5.25}, - {"matrix":[5,6], "x":4.5, "y":5.25, "w":4.5}, - {"matrix":[5,9], "x":9, "y":5.25, "w":1.25}, - {"matrix":[5,10], "x":10.25, "y":5.25, "w":1.25}, - {"matrix":[5,11], "x":11.5, "y":5.25, "w":1.25}, - {"matrix":[5,12], "x":12.75, "y":5.25}, - {"matrix":[5,13], "x":13.75, "y":5.25, "w":1.25}, - {"matrix":[5,14], "x":15.25, "y":5.25}, - {"matrix":[5,15], "x":16.25, "y":5.25}, - {"matrix":[5,16], "x":17.25, "y":5.25}, - {"matrix":[5,17], "x":18.5, "y":5.25, "w":2}, - {"matrix":[5,19], "x":20.5, "y":5.25} - ] - } - } -} \ No newline at end of file diff --git a/keyboards/keychron/k10_pro/iso/rgb/config.h b/keyboards/keychron/k10_pro/iso/rgb/config.h deleted file mode 100644 index 34a167c04d..0000000000 --- a/keyboards/keychron/k10_pro/iso/rgb/config.h +++ /dev/null @@ -1,54 +0,0 @@ -/* 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 . - */ - -#pragma once - -#ifdef RGB_MATRIX_ENABLE -/* RGB Matrix Driver Configuration */ -# define DRIVER_COUNT 2 -# define DRIVER_ADDR_1 0b1110111 -# define DRIVER_ADDR_2 0b1110100 - -/* RGB Matrix Configuration */ -# define DRIVER_1_LED_TOTAL 60 -# define DRIVER_2_LED_TOTAL 49 -# define RGB_MATRIX_LED_COUNT (DRIVER_1_LED_TOTAL + DRIVER_2_LED_TOTAL) - -/* Set to infinit, which is use in USB mode by default */ -# define RGB_MATRIX_TIMEOUT RGB_MATRIX_TIMEOUT_INFINITE - -/* Allow to shutdown driver to save power */ -# define RGB_MATRIX_DRIVER_SHUTDOWN_ENABLE - -/* Turn off backllit if brightness value is low */ -# define RGB_MATRIX_TURN_OFF_VAL 48 - -# define NUM_LOCK_INDEX 37 // NumLock - -# define LOW_BAT_IND_INDEX 99 // Space - -// RGB Matrix Animation modes. Explicitly enabled -// For full list of effects, see: -// https://docs.qmk.fm/#/feature_rgb_matrix?id=rgb-matrix-effects - -# define RGB_MATRIX_KEYPRESSES -# define RGB_MATRIX_FRAMEBUFFER_EFFECTS - -/* Set LED driver current */ -# define SNLED27351_CURRENT_TUNE \ - { 0x2D, 0x2D, 0x2D, 0x2D, 0x2D, 0x2D, 0x2D, 0x2D, 0x2D, 0x2D, 0x2D, 0x2D } - -#endif diff --git a/keyboards/keychron/k10_pro/iso/rgb/info.json b/keyboards/keychron/k10_pro/iso/rgb/info.json deleted file mode 100644 index 200de61f1c..0000000000 --- a/keyboards/keychron/k10_pro/iso/rgb/info.json +++ /dev/null @@ -1,151 +0,0 @@ -{ - "usb": { - "pid": "0x02A1", - "device_version": "1.0.0" - }, - "features": { - "rgb_matrix": true - }, - "rgb_matrix": { - "driver": "snled27351", - "animations": { - "breathing": true, - "band_spiral_val": true, - "cycle_all": true, - "cycle_left_right": true, - "cycle_up_down": true, - "rainbow_moving_chevron": true, - "cycle_out_in": true, - "cycle_out_in_dual": true, - "cycle_pinwheel": true, - "cycle_spiral": true, - "dual_beacon": true, - "rainbow_beacon": true, - "jellybean_raindrops": true, - "pixel_rain": true, - "typing_heatmap": true, - "digital_rain": true, - "solid_reactive_simple": true, - "solid_reactive_multiwide": true, - "solid_reactive_multinexus": true, - "splash": true, - "solid_splash": true - }, - "layout": [ - {"matrix":[0,0], "flags":1, "x":0, "y":0}, - {"matrix":[0,1], "flags":1, "x":21, "y":0}, - {"matrix":[0,2], "flags":1, "x":31, "y":0}, - {"matrix":[0,3], "flags":1, "x":42, "y":0}, - {"matrix":[0,4], "flags":1, "x":52, "y":0}, - {"matrix":[0,5], "flags":1, "x":68, "y":0}, - {"matrix":[0,6], "flags":1, "x":78, "y":0}, - {"matrix":[0,7], "flags":1, "x":88, "y":0}, - {"matrix":[0,8], "flags":1, "x":99, "y":0}, - {"matrix":[0,9], "flags":1, "x":114, "y":0}, - {"matrix":[0,10], "flags":1, "x":125, "y":0}, - {"matrix":[0,11], "flags":1, "x":135, "y":0}, - {"matrix":[0,12], "flags":1, "x":146, "y":0}, - {"matrix":[0,14], "flags":1, "x":159, "y":0}, - {"matrix":[0,15], "flags":1, "x":169, "y":0}, - {"matrix":[0,16], "flags":1, "x":180, "y":0}, - {"matrix":[0,17], "flags":4, "x":193, "y":0}, - {"matrix":[0,18], "flags":4, "x":203, "y":0}, - {"matrix":[0,19], "flags":4, "x":214, "y":0}, - {"matrix":[0,20], "flags":4, "x":224, "y":0}, - - {"matrix":[1,0], "flags":1, "x":0, "y":15}, - {"matrix":[1,1], "flags":8, "x":10, "y":15}, - {"matrix":[1,2], "flags":8, "x":21, "y":15}, - {"matrix":[1,3], "flags":8, "x":31, "y":15}, - {"matrix":[1,4], "flags":4, "x":42, "y":15}, - {"matrix":[1,5], "flags":4, "x":52, "y":15}, - {"matrix":[1,6], "flags":4, "x":62, "y":15}, - {"matrix":[1,7], "flags":4, "x":73, "y":15}, - {"matrix":[1,8], "flags":4, "x":83, "y":15}, - {"matrix":[1,9], "flags":4, "x":94, "y":15}, - {"matrix":[1,10], "flags":4, "x":104, "y":15}, - {"matrix":[1,11], "flags":4, "x":114, "y":15}, - {"matrix":[1,12], "flags":4, "x":125, "y":15}, - {"matrix":[1,13], "flags":1, "x":141, "y":15}, - {"matrix":[1,14], "flags":1, "x":159, "y":15}, - {"matrix":[1,15], "flags":1, "x":169, "y":15}, - {"matrix":[1,16], "flags":1, "x":180, "y":15}, - {"matrix":[1,17], "flags":8, "x":193, "y":15}, - {"matrix":[1,18], "flags":4, "x":203, "y":15}, - {"matrix":[1,19], "flags":4, "x":214, "y":15}, - {"matrix":[1,20], "flags":4, "x":224, "y":15}, - - {"matrix":[2,0], "flags":1, "x":3, "y":27}, - {"matrix":[2,1], "flags":4, "x":16, "y":27}, - {"matrix":[2,2], "flags":4, "x":26, "y":27}, - {"matrix":[2,3], "flags":4, "x":36, "y":27}, - {"matrix":[2,4], "flags":4, "x":47, "y":27}, - {"matrix":[2,5], "flags":4, "x":57, "y":27}, - {"matrix":[2,6], "flags":4, "x":68, "y":27}, - {"matrix":[2,7], "flags":4, "x":78, "y":27}, - {"matrix":[2,8], "flags":4, "x":88, "y":27}, - {"matrix":[2,9], "flags":4, "x":99, "y":27}, - {"matrix":[2,10], "flags":4, "x":109, "y":27}, - {"matrix":[2,11], "flags":4, "x":120, "y":27}, - {"matrix":[2,12], "flags":4, "x":130, "y":27}, - {"matrix":[2,14], "flags":1, "x":159, "y":27}, - {"matrix":[2,15], "flags":1, "x":169, "y":27}, - {"matrix":[2,16], "flags":1, "x":180, "y":27}, - {"matrix":[2,17], "flags":4, "x":193, "y":27}, - {"matrix":[2,18], "flags":4, "x":203, "y":27}, - {"matrix":[2,19], "flags":4, "x":214, "y":27}, - {"matrix":[2,20], "flags":4, "x":224, "y":34}, - - {"matrix":[3,0], "flags":8, "x":4, "y":40}, - {"matrix":[3,1], "flags":4, "x":18, "y":40}, - {"matrix":[3,2], "flags":4, "x":29, "y":40}, - {"matrix":[3,3], "flags":4, "x":39, "y":40}, - {"matrix":[3,4], "flags":4, "x":49, "y":40}, - {"matrix":[3,5], "flags":4, "x":60, "y":40}, - {"matrix":[3,6], "flags":4, "x":70, "y":40}, - {"matrix":[3,7], "flags":4, "x":81, "y":40}, - {"matrix":[3,8], "flags":4, "x":91, "y":40}, - {"matrix":[3,9], "flags":4, "x":101, "y":40}, - {"matrix":[3,10], "flags":4, "x":112, "y":40}, - {"matrix":[3,11], "flags":4, "x":122, "y":40}, - {"matrix":[3,13], "flags":4, "x":133, "y":40}, - {"matrix":[2,13], "flags":1, "x":147, "y":36}, - {"matrix":[3,17], "flags":4, "x":193, "y":40}, - {"matrix":[3,18], "flags":4, "x":203, "y":40}, - {"matrix":[3,19], "flags":4, "x":214, "y":40}, - - {"matrix":[4,0], "flags":1, "x":1, "y":52}, - {"matrix":[4,1], "flags":4, "x":13, "y":52}, - {"matrix":[4,2], "flags":4, "x":23, "y":52}, - {"matrix":[4,3], "flags":4, "x":34, "y":52}, - {"matrix":[4,4], "flags":4, "x":44, "y":52}, - {"matrix":[4,5], "flags":4, "x":55, "y":52}, - {"matrix":[4,6], "flags":4, "x":65, "y":52}, - {"matrix":[4,7], "flags":4, "x":75, "y":52}, - {"matrix":[4,8], "flags":4, "x":86, "y":52}, - {"matrix":[4,9], "flags":4, "x":96, "y":52}, - {"matrix":[4,10], "flags":4, "x":107, "y":52}, - {"matrix":[4,11], "flags":4, "x":117, "y":52}, - {"matrix":[4,13], "flags":1, "x":137, "y":52}, - {"matrix":[4,15], "flags":1, "x":169, "y":52}, - {"matrix":[4,17], "flags":4, "x":193, "y":52}, - {"matrix":[4,18], "flags":4, "x":203, "y":52}, - {"matrix":[4,19], "flags":4, "x":213, "y":52}, - {"matrix":[4,20], "flags":4, "x":224, "y":58}, - - {"matrix":[5,0], "flags":1, "x":1, "y":64}, - {"matrix":[5,1], "flags":1, "x":14, "y":64}, - {"matrix":[5,2], "flags":1, "x":27, "y":64}, - {"matrix":[5,6], "flags":4, "x":66, "y":64}, - {"matrix":[5,10], "flags":1, "x":105, "y":64}, - {"matrix":[5,11], "flags":1, "x":118, "y":64}, - {"matrix":[5,12], "flags":1, "x":131, "y":64}, - {"matrix":[5,13], "flags":1, "x":144, "y":64}, - {"matrix":[5,14], "flags":1, "x":159, "y":64}, - {"matrix":[5,15], "flags":1, "x":169, "y":64}, - {"matrix":[5,16], "flags":1, "x":180, "y":64}, - {"matrix":[5,17], "flags":4, "x":198, "y":64}, - {"matrix":[5,19], "flags":4, "x":214, "y":64} - ] - } -} diff --git a/keyboards/keychron/k10_pro/iso/rgb/keymaps/default/keymap.c b/keyboards/keychron/k10_pro/iso/rgb/keymaps/default/keymap.c deleted file mode 100644 index e503829f4f..0000000000 --- a/keyboards/keychron/k10_pro/iso/rgb/keymaps/default/keymap.c +++ /dev/null @@ -1,59 +0,0 @@ -/* 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 . - */ - -#include QMK_KEYBOARD_H - -// clang-format off -enum layers{ - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN -}; - -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_iso_109( - KC_ESC, KC_BRID, KC_BRIU, KC_MCTL, KC_LPAD, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_SNAP, KC_SIRI, RGB_MOD, KC_F13, KC_F14, KC_F15, KC_F16, - KC_GRV, 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_INS, KC_HOME, KC_PGUP, KC_NUM, KC_PSLS, KC_PAST, KC_PMNS, - 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_DEL, KC_END, KC_PGDN, KC_P7, KC_P8, KC_P9, KC_PPLS, - 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_NUHS, KC_ENT, KC_P4, KC_P5, KC_P6, - KC_LSFT, KC_NUBS, 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_P1, KC_P2, KC_P3, KC_PENT, - KC_LCTL, KC_LOPTN, KC_LCMMD, KC_SPC, KC_RCMMD, KC_ROPTN, MO(MAC_FN), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT, KC_P0, KC_PDOT ), - - [MAC_FN] = LAYOUT_iso_109( - _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, RGB_TOG, _______, _______, _______, _______, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ), - - [WIN_BASE] = LAYOUT_iso_109( - KC_ESC, 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_PSCR, KC_CTANA, RGB_MOD, _______, _______, _______, _______, - KC_GRV, 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_INS, KC_HOME, KC_PGUP, KC_NUM, KC_PSLS, KC_PAST, KC_PMNS, - 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_DEL, KC_END, KC_PGDN, KC_P7, KC_P8, KC_P9, KC_PPLS, - 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_NUHS, KC_ENT, KC_P4, KC_P5, KC_P6, - KC_LSFT, KC_NUBS, 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_P1, KC_P2, KC_P3, KC_PENT, - KC_LCTL, KC_LWIN, KC_LALT, KC_SPC, KC_RALT, KC_RWIN, MO(WIN_FN), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT, KC_P0, KC_PDOT ), - - [WIN_FN] = LAYOUT_iso_109( - _______, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, RGB_TOG, _______, _______, _______, _______, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ) -}; diff --git a/keyboards/keychron/k10_pro/iso/rgb/keymaps/via/keymap.c b/keyboards/keychron/k10_pro/iso/rgb/keymaps/via/keymap.c deleted file mode 100644 index 7154ab96e3..0000000000 --- a/keyboards/keychron/k10_pro/iso/rgb/keymaps/via/keymap.c +++ /dev/null @@ -1,59 +0,0 @@ -/* 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 . - */ - -#include QMK_KEYBOARD_H - -enum layers{ - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN, -}; - -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_iso_109( - KC_ESC, KC_BRID, KC_BRIU, KC_MICT, KC_LAPA, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_SNAP, KC_SIRI, RGB_MOD, KC_F13, KC_F14, KC_F15, KC_F16, - KC_GRV, 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_INS, KC_HOME, KC_PGUP, KC_NUM, KC_PSLS, KC_PAST, KC_PMNS, - 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_DEL, KC_END, KC_PGDN, KC_P7, KC_P8, KC_P9, KC_PPLS, - 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_NUHS, KC_ENT, KC_P4, KC_P5, KC_P6, - KC_LSFT, KC_NUBS, 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_P1, KC_P2, KC_P3, KC_PENT, - KC_LCTL, KC_LOPTN, KC_LCMMD, KC_SPC, KC_RCMMD, KC_ROPTN, MO(MAC_FN), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT, KC_P0, KC_PDOT ), - - [MAC_FN] = LAYOUT_iso_109( - _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, RGB_TOG, _______, _______, _______, _______, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ), - - [WIN_BASE] = LAYOUT_iso_109( - KC_ESC, 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_PSCR, KC_CTANA, RGB_MOD, _______, _______, _______, _______, - KC_GRV, 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_INS, KC_HOME, KC_PGUP, KC_NUM, KC_PSLS, KC_PAST, KC_PMNS, - 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_DEL, KC_END, KC_PGDN, KC_P7, KC_P8, KC_P9, KC_PPLS, - 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_NUHS, KC_ENT, KC_P4, KC_P5, KC_P6, - KC_LSFT, KC_NUBS, 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_P1, KC_P2, KC_P3, KC_PENT, - KC_LCTL, KC_LWIN, KC_LALT, KC_SPC, KC_RALT, KC_RWIN, MO(WIN_FN), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT, KC_P0, KC_PDOT ), - - [WIN_FN] = LAYOUT_iso_109( - _______, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, RGB_TOG, _______, _______, _______, _______, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ) -}; diff --git a/keyboards/keychron/k10_pro/iso/rgb/keymaps/via/rules.mk b/keyboards/keychron/k10_pro/iso/rgb/keymaps/via/rules.mk deleted file mode 100644 index 1e5b99807c..0000000000 --- a/keyboards/keychron/k10_pro/iso/rgb/keymaps/via/rules.mk +++ /dev/null @@ -1 +0,0 @@ -VIA_ENABLE = yes diff --git a/keyboards/keychron/k10_pro/iso/rgb/rgb.c b/keyboards/keychron/k10_pro/iso/rgb/rgb.c deleted file mode 100644 index 2d0de388c6..0000000000 --- a/keyboards/keychron/k10_pro/iso/rgb/rgb.c +++ /dev/null @@ -1,143 +0,0 @@ -/* 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 . - */ - -#include "quantum.h" - -#ifdef RGB_MATRIX_ENABLE -// clang-format off -const snled27351_led_t g_snled27351_leds[RGB_MATRIX_LED_COUNT] = { -/* Refer to snled27351manual for these locations - * driver - * | R location - * | | G location - * | | | B location - * | | | | */ - {0, I_1, G_1, H_1}, - {0, I_2, G_2, H_2}, - {0, I_3, G_3, H_3}, - {0, I_4, G_4, H_4}, - {0, I_5, G_5, H_5}, - {0, I_6, G_6, H_6}, - {0, I_7, G_7, H_7}, - {0, I_8, G_8, H_8}, - {0, I_9, G_9, H_9}, - {0, I_10, G_10, H_10}, - {0, I_11, G_11, H_11}, - {0, I_12, G_12, H_12}, - {0, I_13, G_13, H_13}, - {0, I_15, G_15, H_15}, - {0, I_16, G_16, H_16}, - {0, L_5, J_5, K_5}, - {0, L_6, J_6, K_6}, - {0, L_7, J_7, K_7}, - {0, L_8, J_8, K_8}, - {0, L_4, J_4, K_4}, - - {0, C_1, A_1, B_1}, - {0, C_2, A_2, B_2}, - {0, C_3, A_3, B_3}, - {0, C_4, A_4, B_4}, - {0, C_5, A_5, B_5}, - {0, C_6, A_6, B_6}, - {0, C_7, A_7, B_7}, - {0, C_8, A_8, B_8}, - {0, C_9, A_9, B_9}, - {0, C_10, A_10, B_10}, - {0, C_11, A_11, B_11}, - {0, C_12, A_12, B_12}, - {0, C_13, A_13, B_13}, - {0, C_14, A_14, B_14}, - {0, C_15, A_15, B_15}, - {0, C_16, A_16, B_16}, - {0, L_9, J_9, K_9}, - {0, L_10, J_10, K_10}, - {0, L_11, J_11, K_11}, - {0, L_12, J_12, K_12}, - {0, L_13, J_13, K_13}, - - {0, F_1, D_1, E_1}, - {0, F_2, D_2, E_2}, - {0, F_3, D_3, E_3}, - {0, F_4, D_4, E_4}, - {0, F_5, D_5, E_5}, - {0, F_6, D_6, E_6}, - {0, F_7, D_7, E_7}, - {0, F_8, D_8, E_8}, - {0, F_9, D_9, E_9}, - {0, F_10, D_10, E_10}, - {0, F_11, D_11, E_11}, - {0, F_12, D_12, E_12}, - {0, F_13, D_13, E_13}, - {0, F_15, D_15, E_15}, - {0, F_16, D_16, E_16}, - {0, L_14, J_14, K_14}, - {0, L_15, J_15, K_15}, - {0, L_16, J_16, K_16}, - {1, F_1, D_1, E_1}, - {1, F_2, D_2, E_2}, - - {1, C_16, A_16, B_16}, - {1, C_15, A_15, B_15}, - {1, C_14, A_14, B_14}, - {1, C_13, A_13, B_13}, - {1, C_12, A_12, B_12}, - {1, C_11, A_11, B_11}, - {1, C_10, A_10, B_10}, - {1, C_9, A_9, B_9}, - {1, C_8, A_8, B_8}, - {1, C_7, A_7, B_7}, - {1, C_6, A_6, B_6}, - {1, C_5, A_5, B_5}, - {1, C_3, A_3, B_3}, - {0, F_14, D_14, E_14}, - {1, F_3, D_3, E_3}, - {1, F_4, D_4, E_4}, - {1, F_5, D_5, E_5}, - - {1, I_16, G_16, H_16}, - {1, I_15, G_15, H_15}, - {1, I_14, G_14, H_14}, - {1, I_13, G_13, H_13}, - {1, I_12, G_12, H_12}, - {1, I_11, G_11, H_11}, - {1, I_10, G_10, H_10}, - {1, I_9, G_9, H_9}, - {1, I_8, G_8, H_8}, - {1, I_7, G_7, H_7}, - {1, I_6, G_6, H_6}, - {1, I_5, G_5, H_5}, - {1, I_3, G_3, H_3}, - {1, I_1, G_1, H_1}, - {1, F_6, D_6, E_6}, - {1, F_7, D_7, E_7}, - {1, F_8, D_8, E_8}, - {1, F_9, D_9, E_9}, - - {1, L_16, J_16, K_16}, - {1, L_15, J_15, K_15}, - {1, L_14, J_14, K_14}, - {1, L_10, J_10, K_10}, - {1, L_6, J_6, K_6}, - {1, L_5, J_5, K_5}, - {1, L_4, J_4, K_4}, - {1, L_3, J_3, K_3}, - {1, L_2, J_2, K_2}, - {1, L_1, J_1, K_1}, - {1, F_10, D_10, E_10}, - {1, F_11, D_11, E_11}, - {1, F_12, D_12, E_12}, -}; -#endif diff --git a/keyboards/keychron/k10_pro/iso/rgb/rules.mk b/keyboards/keychron/k10_pro/iso/rgb/rules.mk deleted file mode 100644 index f886ea2e8e..0000000000 --- a/keyboards/keychron/k10_pro/iso/rgb/rules.mk +++ /dev/null @@ -1 +0,0 @@ -# This file intentionally blank \ No newline at end of file diff --git a/keyboards/keychron/k10_pro/iso/white/config.h b/keyboards/keychron/k10_pro/iso/white/config.h deleted file mode 100644 index 3cd4b96d89..0000000000 --- a/keyboards/keychron/k10_pro/iso/white/config.h +++ /dev/null @@ -1,51 +0,0 @@ -/* 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 . - */ - -#pragma once - -#ifdef LED_MATRIX_ENABLE -/* LED Matrix Driver Configuration */ -# define DRIVER_COUNT 1 -# define SNLED27351_I2C_ADDRESS_1 SNLED27351_I2C_ADDRESS_GND - -/* LED Matrix Configuration */ -# define LED_MATRIX_LED_COUNT 109 - -/* Set to infinit, which is use in USB mode by default */ -# define LED_MATRIX_TIMEOUT LED_MATRIX_TIMEOUT_INFINITE - -/* Allow to shutdown driver to save power */ -# define LED_MATRIX_DRIVER_SHUTDOWN_ENABLE - -/* Turn off backllit if brightness value is low */ -# define LED_MATRIX_BRIGHTNESS_TURN_OFF_VAL 48 - -# define LOW_BAT_IND_INDEX 99 // Space - -// LED Matrix Animation modes. Explicitly enabled -// For full list of effects, see: -// https://docs.qmk.fm/#/feature_led_matrix?id=led-matrix-effects - -# define LED_MATRIX_KEYPRESSES - -/* Use first 8 channels of LED driver */ -# define PHASE_CHANNEL MSKPHASE_8CHANNEL - -/* Set LED driver current */ -# define SNLED27351_CURRENT_TUNE \ - { 0x60, 0x60, 0x60, 0x60, 0x60, 0x60, 0x60, 0x60, 0x60, 0x60, 0x60, 0x60 } - -#endif diff --git a/keyboards/keychron/k10_pro/iso/white/info.json b/keyboards/keychron/k10_pro/iso/white/info.json deleted file mode 100644 index fa58e1d327..0000000000 --- a/keyboards/keychron/k10_pro/iso/white/info.json +++ /dev/null @@ -1,146 +0,0 @@ -{ - "usb": { - "pid": "0x02A4", - "device_version": "1.0.0" - }, - "features": { - "led_matrix": true - }, - "led_matrix": { - "driver": "snled27351", - "animations": { - "none": true, - "solid": true, - "breathing": true, - "band_pinwheel": true, - "band_spiral": true, - "cycle_left_right": true, - "cycle_up_down": true, - "cycle_out_in": true, - "dual_beacon": true, - "solid_reactive_simple": true, - "solid_reactive_multiwide": true, - "solid_reactive_multinexus": true, - "solid_splash": true, - "wave_left_right": true, - "wave_up_down": true, - "effect_max": true - }, - "layout": [ - {"matrix":[0,0], "flags":1, "x":0, "y":0}, - {"matrix":[0,1], "flags":1, "x":21, "y":0}, - {"matrix":[0,2], "flags":1, "x":31, "y":0}, - {"matrix":[0,3], "flags":1, "x":42, "y":0}, - {"matrix":[0,4], "flags":1, "x":52, "y":0}, - {"matrix":[0,5], "flags":1, "x":68, "y":0}, - {"matrix":[0,6], "flags":1, "x":78, "y":0}, - {"matrix":[0,7], "flags":1, "x":88, "y":0}, - {"matrix":[0,8], "flags":1, "x":99, "y":0}, - {"matrix":[0,9], "flags":1, "x":114, "y":0}, - {"matrix":[0,10], "flags":1, "x":125, "y":0}, - {"matrix":[0,11], "flags":1, "x":135, "y":0}, - {"matrix":[0,12], "flags":1, "x":146, "y":0}, - {"matrix":[0,14], "flags":1, "x":159, "y":0}, - {"matrix":[0,15], "flags":1, "x":169, "y":0}, - {"matrix":[0,16], "flags":1, "x":180, "y":0}, - {"matrix":[0,17], "flags":4, "x":193, "y":0}, - {"matrix":[0,18], "flags":4, "x":203, "y":0}, - {"matrix":[0,19], "flags":4, "x":214, "y":0}, - {"matrix":[0,20], "flags":4, "x":224, "y":0}, - - {"matrix":[1,0], "flags":1, "x":0, "y":15}, - {"matrix":[1,1], "flags":8, "x":10, "y":15}, - {"matrix":[1,2], "flags":8, "x":21, "y":15}, - {"matrix":[1,3], "flags":8, "x":31, "y":15}, - {"matrix":[1,4], "flags":4, "x":42, "y":15}, - {"matrix":[1,5], "flags":4, "x":52, "y":15}, - {"matrix":[1,6], "flags":4, "x":62, "y":15}, - {"matrix":[1,7], "flags":4, "x":73, "y":15}, - {"matrix":[1,8], "flags":4, "x":83, "y":15}, - {"matrix":[1,9], "flags":4, "x":94, "y":15}, - {"matrix":[1,10], "flags":4, "x":104, "y":15}, - {"matrix":[1,11], "flags":4, "x":114, "y":15}, - {"matrix":[1,12], "flags":4, "x":125, "y":15}, - {"matrix":[1,13], "flags":1, "x":141, "y":15}, - {"matrix":[1,14], "flags":1, "x":159, "y":15}, - {"matrix":[1,15], "flags":1, "x":169, "y":15}, - {"matrix":[1,16], "flags":1, "x":180, "y":15}, - {"matrix":[1,17], "flags":8, "x":193, "y":15}, - {"matrix":[1,18], "flags":4, "x":203, "y":15}, - {"matrix":[1,19], "flags":4, "x":214, "y":15}, - {"matrix":[1,20], "flags":4, "x":224, "y":15}, - - {"matrix":[2,0], "flags":1, "x":3, "y":27}, - {"matrix":[2,1], "flags":4, "x":16, "y":27}, - {"matrix":[2,2], "flags":4, "x":26, "y":27}, - {"matrix":[2,3], "flags":4, "x":36, "y":27}, - {"matrix":[2,4], "flags":4, "x":47, "y":27}, - {"matrix":[2,5], "flags":4, "x":57, "y":27}, - {"matrix":[2,6], "flags":4, "x":68, "y":27}, - {"matrix":[2,7], "flags":4, "x":78, "y":27}, - {"matrix":[2,8], "flags":4, "x":88, "y":27}, - {"matrix":[2,9], "flags":4, "x":99, "y":27}, - {"matrix":[2,10], "flags":4, "x":109, "y":27}, - {"matrix":[2,11], "flags":4, "x":120, "y":27}, - {"matrix":[2,12], "flags":4, "x":130, "y":27}, - {"matrix":[2,14], "flags":1, "x":159, "y":27}, - {"matrix":[2,15], "flags":1, "x":169, "y":27}, - {"matrix":[2,16], "flags":1, "x":180, "y":27}, - {"matrix":[2,17], "flags":4, "x":193, "y":27}, - {"matrix":[2,18], "flags":4, "x":203, "y":27}, - {"matrix":[2,19], "flags":4, "x":214, "y":27}, - {"matrix":[2,20], "flags":4, "x":224, "y":34}, - - {"matrix":[3,0], "flags":8, "x":4, "y":40}, - {"matrix":[3,1], "flags":4, "x":18, "y":40}, - {"matrix":[3,2], "flags":4, "x":29, "y":40}, - {"matrix":[3,3], "flags":4, "x":39, "y":40}, - {"matrix":[3,4], "flags":4, "x":49, "y":40}, - {"matrix":[3,5], "flags":4, "x":60, "y":40}, - {"matrix":[3,6], "flags":4, "x":70, "y":40}, - {"matrix":[3,7], "flags":4, "x":81, "y":40}, - {"matrix":[3,8], "flags":4, "x":91, "y":40}, - {"matrix":[3,9], "flags":4, "x":101, "y":40}, - {"matrix":[3,10], "flags":4, "x":112, "y":40}, - {"matrix":[3,11], "flags":4, "x":122, "y":40}, - {"matrix":[3,13], "flags":4, "x":133, "y":40}, - {"matrix":[2,13], "flags":1, "x":147, "y":36}, - {"matrix":[3,17], "flags":4, "x":193, "y":40}, - {"matrix":[3,18], "flags":4, "x":203, "y":40}, - {"matrix":[3,19], "flags":4, "x":214, "y":40}, - - {"matrix":[4,0], "flags":1, "x":1, "y":52}, - {"matrix":[4,1], "flags":4, "x":13, "y":52}, - {"matrix":[4,2], "flags":4, "x":23, "y":52}, - {"matrix":[4,3], "flags":4, "x":34, "y":52}, - {"matrix":[4,4], "flags":4, "x":44, "y":52}, - {"matrix":[4,5], "flags":4, "x":55, "y":52}, - {"matrix":[4,6], "flags":4, "x":65, "y":52}, - {"matrix":[4,7], "flags":4, "x":75, "y":52}, - {"matrix":[4,8], "flags":4, "x":86, "y":52}, - {"matrix":[4,9], "flags":4, "x":96, "y":52}, - {"matrix":[4,10], "flags":4, "x":107, "y":52}, - {"matrix":[4,11], "flags":4, "x":117, "y":52}, - {"matrix":[4,13], "flags":1, "x":137, "y":52}, - {"matrix":[4,15], "flags":1, "x":169, "y":52}, - {"matrix":[4,17], "flags":4, "x":193, "y":52}, - {"matrix":[4,18], "flags":4, "x":203, "y":52}, - {"matrix":[4,19], "flags":4, "x":213, "y":52}, - {"matrix":[4,20], "flags":4, "x":224, "y":58}, - - {"matrix":[5,0], "flags":1, "x":1, "y":64}, - {"matrix":[5,1], "flags":1, "x":14, "y":64}, - {"matrix":[5,2], "flags":1, "x":27, "y":64}, - {"matrix":[5,6], "flags":4, "x":66, "y":64}, - {"matrix":[5,10], "flags":1, "x":105, "y":64}, - {"matrix":[5,11], "flags":1, "x":118, "y":64}, - {"matrix":[5,12], "flags":1, "x":131, "y":64}, - {"matrix":[5,13], "flags":1, "x":144, "y":64}, - {"matrix":[5,14], "flags":1, "x":159, "y":64}, - {"matrix":[5,15], "flags":1, "x":169, "y":64}, - {"matrix":[5,16], "flags":1, "x":180, "y":64}, - {"matrix":[5,17], "flags":4, "x":198, "y":64}, - {"matrix":[5,19], "flags":4, "x":214, "y":64} - ] - } -} diff --git a/keyboards/keychron/k10_pro/iso/white/keymaps/default/keymap.c b/keyboards/keychron/k10_pro/iso/white/keymaps/default/keymap.c deleted file mode 100644 index a004a50728..0000000000 --- a/keyboards/keychron/k10_pro/iso/white/keymaps/default/keymap.c +++ /dev/null @@ -1,59 +0,0 @@ -/* 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 . - */ - -#include QMK_KEYBOARD_H - -enum layers { - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN, -}; - -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_iso_109( - KC_ESC, KC_BRID, KC_BRIU, KC_MCTL, KC_LPAD, BL_DOWN, BL_UP, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_SNAP, KC_SIRI, BL_STEP, KC_F13, KC_F14, KC_F15, KC_F16, - KC_GRV, 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_INS, KC_HOME, KC_PGUP, KC_NUM, KC_PSLS, KC_PAST, KC_PMNS, - 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_DEL, KC_END, KC_PGDN, KC_P7, KC_P8, KC_P9, KC_PPLS, - 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_NUHS, KC_ENT, KC_P4, KC_P5, KC_P6, - KC_LSFT, KC_NUBS, 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_P1, KC_P2, KC_P3, KC_PENT, - KC_LCTL, KC_LOPTN, KC_LCMMD, KC_SPC, KC_RCMMD, KC_ROPTN, MO(MAC_FN), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT, KC_P0, KC_PDOT ), - - [MAC_FN] = LAYOUT_iso_109( - _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, BL_TOGG, _______, _______, _______, _______, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - BL_TOGG, BL_STEP, BL_UP, KC_TRNS, KC_TRNS, KC_TRNS, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, KC_TRNS, BL_DOWN, KC_TRNS, KC_TRNS, KC_TRNS, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ), - - [WIN_BASE] = LAYOUT_iso_109( - KC_ESC, 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_PSCR, KC_CTANA, BL_STEP, _______, _______, _______, _______, - KC_GRV, 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_INS, KC_HOME, KC_PGUP, KC_NUM, KC_PSLS, KC_PAST, KC_PMNS, - 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_DEL, KC_END, KC_PGDN, KC_P7, KC_P8, KC_P9, KC_PPLS, - 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_NUHS, KC_ENT, KC_P4, KC_P5, KC_P6, - KC_LSFT, KC_NUBS, 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_P1, KC_P2, KC_P3, KC_PENT, - KC_LCTL, KC_LWIN, KC_LALT, KC_SPC, KC_RALT, KC_RWIN, MO(WIN_FN), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT, KC_P0, KC_PDOT ), - - [WIN_FN] = LAYOUT_iso_109( - RESET, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, BL_DOWN, BL_UP, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, BL_TOGG, _______, _______, _______, _______, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - BL_TOGG, BL_STEP, BL_UP, KC_TRNS, KC_TRNS, KC_TRNS, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, KC_TRNS, BL_DOWN, KC_TRNS, KC_TRNS, KC_TRNS, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ) -}; diff --git a/keyboards/keychron/k10_pro/iso/white/keymaps/via/keymap.c b/keyboards/keychron/k10_pro/iso/white/keymaps/via/keymap.c deleted file mode 100644 index 6200a7fb9e..0000000000 --- a/keyboards/keychron/k10_pro/iso/white/keymaps/via/keymap.c +++ /dev/null @@ -1,59 +0,0 @@ -/* 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 . - */ - -#include QMK_KEYBOARD_H - -enum layers { - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN, -}; - -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_iso_109( - KC_ESC, KC_BRID, KC_BRIU, KC_MICT, KC_LAPA, BL_DOWN, BL_UP, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_SNAP, KC_SIRI, BL_STEP, KC_F13, KC_F14, KC_F15, KC_F16, - KC_GRV, 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_INS, KC_HOME, KC_PGUP, KC_NUM, KC_PSLS, KC_PAST, KC_PMNS, - 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_DEL, KC_END, KC_PGDN, KC_P7, KC_P8, KC_P9, KC_PPLS, - 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_NUHS, KC_ENT, KC_P4, KC_P5, KC_P6, - KC_LSFT, KC_NUBS, 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_P1, KC_P2, KC_P3, KC_PENT, - KC_LCTL, KC_LOPTN, KC_LCMMD, KC_SPC, KC_RCMMD, KC_ROPTN, MO(MAC_FN), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT, KC_P0, KC_PDOT ), - - [MAC_FN] = LAYOUT_iso_109( - _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, BL_TOGG, _______, _______, _______, _______, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - BL_TOGG, BL_STEP, BL_UP, KC_TRNS, KC_TRNS, KC_TRNS, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, KC_TRNS, BL_DOWN, KC_TRNS, KC_TRNS, KC_TRNS, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ), - - [WIN_BASE] = LAYOUT_iso_109( - KC_ESC, 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_PSCR, KC_CTANA, BL_STEP, _______, _______, _______, _______, - KC_GRV, 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_INS, KC_HOME, KC_PGUP, KC_NUM, KC_PSLS, KC_PAST, KC_PMNS, - 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_DEL, KC_END, KC_PGDN, KC_P7, KC_P8, KC_P9, KC_PPLS, - 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_NUHS, KC_ENT, KC_P4, KC_P5, KC_P6, - KC_LSFT, KC_NUBS, 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_P1, KC_P2, KC_P3, KC_PENT, - KC_LCTL, KC_LWIN, KC_LALT, KC_SPC, KC_RALT, KC_RWIN, MO(WIN_FN), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT, KC_P0, KC_PDOT ), - - [WIN_FN] = LAYOUT_iso_109( - RESET, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, BL_DOWN, BL_UP, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, BL_TOGG, _______, _______, _______, _______, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - BL_TOGG, BL_STEP, BL_UP, KC_TRNS, KC_TRNS, KC_TRNS, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, KC_TRNS, BL_DOWN, KC_TRNS, KC_TRNS, KC_TRNS, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ) -}; diff --git a/keyboards/keychron/k10_pro/iso/white/keymaps/via/rules.mk b/keyboards/keychron/k10_pro/iso/white/keymaps/via/rules.mk deleted file mode 100644 index 1e5b99807c..0000000000 --- a/keyboards/keychron/k10_pro/iso/white/keymaps/via/rules.mk +++ /dev/null @@ -1 +0,0 @@ -VIA_ENABLE = yes diff --git a/keyboards/keychron/k10_pro/iso/white/rules.mk b/keyboards/keychron/k10_pro/iso/white/rules.mk deleted file mode 100644 index f886ea2e8e..0000000000 --- a/keyboards/keychron/k10_pro/iso/white/rules.mk +++ /dev/null @@ -1 +0,0 @@ -# This file intentionally blank \ No newline at end of file diff --git a/keyboards/keychron/k10_pro/iso/white/white.c b/keyboards/keychron/k10_pro/iso/white/white.c deleted file mode 100644 index 82025a85e8..0000000000 --- a/keyboards/keychron/k10_pro/iso/white/white.c +++ /dev/null @@ -1,141 +0,0 @@ -/* 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 . - */ - -#include "quantum.h" - -#ifdef LED_MATRIX_ENABLE -// clang-format off -const snled27351_led_t g_snled27351_leds[LED_MATRIX_LED_COUNT] = { -/* Refer to snled27351manual for these locations - * driver - * | LED address - * | | */ - {0, A_16}, - {0, A_15}, - {0, A_14}, - {0, A_13}, - {0, A_12}, - {0, A_11}, - {0, A_10}, - {0, A_9}, - {0, A_8}, - {0, A_7}, - {0, A_6}, - {0, A_5}, - {0, A_4}, - {0, A_2}, - {0, A_1}, - {0, G_1}, - {0, G_2}, - {0, G_3}, - {0, G_4}, - {0, G_5}, - - {0, B_16}, - {0, B_15}, - {0, B_14}, - {0, B_13}, - {0, B_12}, - {0, B_11}, - {0, B_10}, - {0, B_9}, - {0, B_8}, - {0, B_7}, - {0, B_6}, - {0, B_5}, - {0, B_4}, - {0, B_3}, - {0, B_2}, - {0, B_1}, - {0, H_1}, - {0, H_2}, - {0, H_3}, - {0, H_4}, - {0, H_5}, - - {0, C_16}, - {0, C_15}, - {0, C_14}, - {0, C_13}, - {0, C_12}, - {0, C_11}, - {0, C_10}, - {0, C_9}, - {0, C_8}, - {0, C_7}, - {0, C_6}, - {0, C_5}, - {0, C_4}, - {0, C_3}, - {0, C_2}, - {0, C_1}, - {0, G_6}, - {0, G_7}, - {0, G_8}, - {0, G_9}, - {0, G_10}, - - {0, D_16}, - {0, D_15}, - {0, D_14}, - {0, D_13}, - {0, D_12}, - {0, D_11}, - {0, D_10}, - {0, D_9}, - {0, D_8}, - {0, D_7}, - {0, D_6}, - {0, D_5}, - {0, D_3}, - {0, H_7}, - {0, H_8}, - {0, H_9}, - - {0, E_16}, - {0, E_15}, - {0, E_14}, - {0, E_13}, - {0, E_12}, - {0, E_11}, - {0, E_10}, - {0, E_9}, - {0, E_8}, - {0, E_7}, - {0, E_6}, - {0, E_5}, - {0, E_3}, - {0, E_1}, - {0, H_6}, - {0, H_11}, - {0, H_12}, - {0, H_10}, - - {0, F_16}, - {0, F_15}, - {0, F_14}, - {0, F_10}, - {0, F_6}, - {0, F_5}, - {0, F_4}, - {0, F_3}, - {0, F_2}, - {0, F_1}, - {0, G_13}, - {0, G_11}, - {0, G_12}, -}; -#endif diff --git a/keyboards/keychron/k10_pro/jis/rgb/config.h b/keyboards/keychron/k10_pro/jis/rgb/config.h deleted file mode 100644 index 1ac59c44d9..0000000000 --- a/keyboards/keychron/k10_pro/jis/rgb/config.h +++ /dev/null @@ -1,53 +0,0 @@ -/* 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 . - */ - -#pragma once - -#ifdef RGB_MATRIX_ENABLE -/* RGB Matrix Driver Configuration */ -# define DRIVER_COUNT 2 -# define DRIVER_ADDR_1 0b1110111 -# define DRIVER_ADDR_2 0b1110100 - -/* RGB Matrix Configuration */ -# define DRIVER_1_LED_TOTAL 61 -# define DRIVER_2_LED_TOTAL 51 -# define RGB_MATRIX_LED_COUNT (DRIVER_1_LED_TOTAL + DRIVER_2_LED_TOTAL) - -/* Set to infinit, which is use in USB mode by default */ -# define RGB_MATRIX_TIMEOUT RGB_MATRIX_TIMEOUT_INFINITE - -/* Allow to shutdown driver to save power */ -# define RGB_MATRIX_DRIVER_SHUTDOWN_ENABLE - -/* Turn off backllit if brightness value is low */ -# define RGB_MATRIX_TURN_OFF_VAL 48 - -/* Indication led index */ -# define CPAS_LOCK_INDEX 63 -# define NUM_LOCK_INDEX 38 -# define LOW_BAT_IND_INDEX 101 - -// RGB Matrix Animation modes. Explicitly enabled -// For full list of effects, see: -// https://docs.qmk.fm/#/feature_rgb_matrix?id=rgb-matrix-effects -# define RGB_MATRIX_KEYPRESSES -# define RGB_MATRIX_FRAMEBUFFER_EFFECTS - -/* Set LED driver current */ -# define SNLED27351_CURRENT_TUNE \ - { 0x2D, 0x2D, 0x2D, 0x2D, 0x2D, 0x2D, 0x2D, 0x2D, 0x2D, 0x2D, 0x2D, 0x2D } -#endif diff --git a/keyboards/keychron/k10_pro/jis/rgb/info.json b/keyboards/keychron/k10_pro/jis/rgb/info.json deleted file mode 100644 index a5b492018f..0000000000 --- a/keyboards/keychron/k10_pro/jis/rgb/info.json +++ /dev/null @@ -1,154 +0,0 @@ -{ - "usb": { - "pid": "0x02A2", - "device_version": "1.0.0" - }, - "features": { - "rgb_matrix": true - }, - "rgb_matrix": { - "driver": "snled27351", - "animations": { - "breathing": true, - "band_spiral_val": true, - "cycle_all": true, - "cycle_left_right": true, - "cycle_up_down": true, - "rainbow_moving_chevron": true, - "cycle_out_in": true, - "cycle_out_in_dual": true, - "cycle_pinwheel": true, - "cycle_spiral": true, - "dual_beacon": true, - "rainbow_beacon": true, - "jellybean_raindrops": true, - "pixel_rain": true, - "typing_heatmap": true, - "digital_rain": true, - "solid_reactive_simple": true, - "solid_reactive_multiwide": true, - "solid_reactive_multinexus": true, - "splash": true, - "solid_splash": true - }, - "layout": [ - {"matrix":[0, 0], "flags":1, "x":0, "y":0}, - {"matrix":[0, 1], "flags":1, "x":21, "y":0}, - {"matrix":[0, 2], "flags":1, "x":31, "y":0}, - {"matrix":[0, 3], "flags":1, "x":42, "y":0}, - {"matrix":[0, 4], "flags":1, "x":52, "y":0}, - {"matrix":[0, 5], "flags":1, "x":68, "y":0}, - {"matrix":[0, 6], "flags":1, "x":78, "y":0}, - {"matrix":[0, 7], "flags":1, "x":88, "y":0}, - {"matrix":[0, 8], "flags":1, "x":99, "y":0}, - {"matrix":[0, 9], "flags":1, "x":114, "y":0}, - {"matrix":[0, 10], "flags":1, "x":125, "y":0}, - {"matrix":[0, 11], "flags":1, "x":135, "y":0}, - {"matrix":[0, 12], "flags":1, "x":146, "y":0}, - {"matrix":[0, 14], "flags":1, "x":159, "y":0}, - {"matrix":[0, 15], "flags":1, "x":169, "y":0}, - {"matrix":[0, 16], "flags":1, "x":180, "y":0}, - {"matrix":[0, 17], "flags":4, "x":193, "y":0}, - {"matrix":[0, 18], "flags":4, "x":203, "y":0}, - {"matrix":[0, 19], "flags":4, "x":214, "y":0}, - {"matrix":[0, 20], "flags":4, "x":224, "y":0}, - - {"matrix":[1, 0], "flags":1, "x":0, "y":15}, - {"matrix":[1, 1], "flags":8, "x":10, "y":15}, - {"matrix":[1, 2], "flags":8, "x":21, "y":15}, - {"matrix":[1, 3], "flags":8, "x":31, "y":15}, - {"matrix":[1, 4], "flags":4, "x":42, "y":15}, - {"matrix":[1, 5], "flags":4, "x":52, "y":15}, - {"matrix":[1, 6], "flags":4, "x":62, "y":15}, - {"matrix":[1, 7], "flags":4, "x":73, "y":15}, - {"matrix":[1, 8], "flags":4, "x":83, "y":15}, - {"matrix":[1, 9], "flags":4, "x":94, "y":15}, - {"matrix":[1, 10], "flags":4, "x":104, "y":15}, - {"matrix":[1, 11], "flags":4, "x":114, "y":15}, - {"matrix":[1, 12], "flags":4, "x":125, "y":15}, - {"matrix":[1, 13], "flags":1, "x":135, "y":15}, - {"matrix":[0, 13], "flags":1, "x":146, "y":15}, - {"matrix":[1, 14], "flags":1, "x":159, "y":15}, - {"matrix":[1, 15], "flags":1, "x":169, "y":15}, - {"matrix":[1, 16], "flags":1, "x":180, "y":15}, - {"matrix":[1, 17], "flags":8, "x":193, "y":15}, - {"matrix":[1, 18], "flags":4, "x":203, "y":15}, - {"matrix":[1, 19], "flags":4, "x":214, "y":15}, - {"matrix":[1, 20], "flags":4, "x":224, "y":15}, - - {"matrix":[2, 0], "flags":1, "x":3, "y":27}, - {"matrix":[2, 1], "flags":4, "x":16, "y":27}, - {"matrix":[2, 2], "flags":4, "x":26, "y":27}, - {"matrix":[2, 3], "flags":4, "x":36, "y":27}, - {"matrix":[2, 4], "flags":4, "x":47, "y":27}, - {"matrix":[2, 5], "flags":4, "x":57, "y":27}, - {"matrix":[2, 6], "flags":4, "x":68, "y":27}, - {"matrix":[2, 7], "flags":4, "x":78, "y":27}, - {"matrix":[2, 8], "flags":4, "x":88, "y":27}, - {"matrix":[2, 9], "flags":4, "x":99, "y":27}, - {"matrix":[2, 10], "flags":4, "x":109, "y":27}, - {"matrix":[2, 11], "flags":4, "x":120, "y":27}, - {"matrix":[2, 12], "flags":4, "x":130, "y":27}, - {"matrix":[2, 14], "flags":1, "x":159, "y":27}, - {"matrix":[2, 15], "flags":1, "x":169, "y":27}, - {"matrix":[2, 16], "flags":1, "x":180, "y":27}, - {"matrix":[2, 17], "flags":4, "x":193, "y":27}, - {"matrix":[2, 18], "flags":4, "x":203, "y":27}, - {"matrix":[2, 19], "flags":4, "x":214, "y":27}, - {"matrix":[2, 20], "flags":4, "x":224, "y":27}, - - {"matrix":[3, 0], "flags":8, "x":4, "y":40}, - {"matrix":[3, 1], "flags":4, "x":18, "y":40}, - {"matrix":[3, 2], "flags":4, "x":29, "y":40}, - {"matrix":[3, 3], "flags":4, "x":39, "y":40}, - {"matrix":[3, 4], "flags":4, "x":49, "y":40}, - {"matrix":[3, 5], "flags":4, "x":60, "y":40}, - {"matrix":[3, 6], "flags":4, "x":70, "y":40}, - {"matrix":[3, 7], "flags":4, "x":81, "y":40}, - {"matrix":[3, 8], "flags":4, "x":91, "y":40}, - {"matrix":[3, 9], "flags":4, "x":101, "y":40}, - {"matrix":[3, 10], "flags":4, "x":112, "y":40}, - {"matrix":[3, 11], "flags":1, "x":122, "y":40}, - {"matrix":[3, 13], "flags":1, "x":133, "y":40}, - {"matrix":[2, 13], "flags":4, "x":147, "y":36}, - {"matrix":[3, 17], "flags":4, "x":193, "y":40}, - {"matrix":[3, 18], "flags":4, "x":214, "y":40}, - {"matrix":[3, 19], "flags":4, "x":224, "y":40}, - - {"matrix":[4, 0], "flags":1, "x":6, "y":52}, - {"matrix":[4, 2], "flags":4, "x":23, "y":52}, - {"matrix":[4, 3], "flags":4, "x":34, "y":52}, - {"matrix":[4, 4], "flags":4, "x":44, "y":52}, - {"matrix":[4, 5], "flags":4, "x":55, "y":52}, - {"matrix":[4, 6], "flags":4, "x":65, "y":52}, - {"matrix":[4, 7], "flags":4, "x":75, "y":52}, - {"matrix":[4, 8], "flags":4, "x":86, "y":52}, - {"matrix":[4, 9], "flags":4, "x":96, "y":52}, - {"matrix":[4, 10], "flags":4, "x":107, "y":52}, - {"matrix":[4, 11], "flags":4, "x":117, "y":52}, - {"matrix":[4, 12], "flags":1, "x":127, "y":52}, - {"matrix":[4, 13], "flags":1, "x":142, "y":52}, - {"matrix":[4, 15], "flags":1, "x":169, "y":52}, - {"matrix":[4, 17], "flags":4, "x":193, "y":52}, - {"matrix":[4, 18], "flags":4, "x":203, "y":52}, - {"matrix":[4, 19], "flags":4, "x":214, "y":52}, - {"matrix":[4, 20], "flags":4, "x":224, "y":52}, - - {"matrix":[5, 0], "flags":1, "x":1, "y":64}, - {"matrix":[5, 1], "flags":1, "x":13, "y":64}, - {"matrix":[5, 2], "flags":1, "x":25, "y":64}, - {"matrix":[5, 3], "flags":1, "x":36, "y":64}, - {"matrix":[5, 6], "flags":4, "x":65, "y":64}, - {"matrix":[5, 9], "flags":1, "x":95, "y":64}, - {"matrix":[5, 10], "flags":1, "x":108, "y":64}, - {"matrix":[5, 11], "flags":1, "x":121, "y":64}, - {"matrix":[5, 12], "flags":1, "x":133, "y":64}, - {"matrix":[5, 13], "flags":1, "x":144, "y":64}, - {"matrix":[5, 14], "flags":1, "x":159, "y":64}, - {"matrix":[5, 15], "flags":1, "x":169, "y":64}, - {"matrix":[5, 16], "flags":1, "x":180, "y":64}, - {"matrix":[5, 17], "flags":4, "x":198, "y":64}, - {"matrix":[5, 19], "flags":4, "x":214, "y":64} - ] - } -} diff --git a/keyboards/keychron/k10_pro/jis/rgb/keymaps/default/keymap.c b/keyboards/keychron/k10_pro/jis/rgb/keymaps/default/keymap.c deleted file mode 100644 index 54cdcd4886..0000000000 --- a/keyboards/keychron/k10_pro/jis/rgb/keymaps/default/keymap.c +++ /dev/null @@ -1,59 +0,0 @@ -/* 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 . - */ - -#include QMK_KEYBOARD_H - -enum layers{ - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN, -}; - -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_112_jis( - KC_ESC, KC_BRID, KC_BRIU, KC_MCTL, KC_LPAD, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_SNAP, KC_SIRI, RGB_MOD, KC_F13, KC_F14, KC_F15, KC_F16, - KC_GRV, 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_INT3, KC_BSPC, KC_INS, KC_HOME, KC_PGUP, KC_NUM, KC_PSLS, KC_PAST, KC_PMNS, - 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_DEL, KC_END, KC_PGDN, KC_P7, KC_P8, KC_P9, KC_PPLS, - 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_NUHS, KC_ENT, KC_P4, KC_P5, KC_P6, - KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_INT1, KC_RSFT, KC_UP, KC_P1, KC_P2, KC_P3, KC_PENT, - KC_LCTL, KC_LOPTN, KC_LCMMD, KC_LNG2, KC_SPC, KC_LNG1, KC_RCMMD, KC_ROPTN, MO(MAC_FN), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT, KC_P0, KC_PDOT ), - - [MAC_FN] = LAYOUT_112_jis( - _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, RGB_TOG, _______, _______, _______, _______, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ), - - [WIN_BASE] = LAYOUT_112_jis( - KC_ESC, 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_PSCR, KC_CTANA, RGB_MOD, _______, _______, _______, _______, - KC_GRV, 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_INT3, KC_BSPC, KC_INS, KC_HOME, KC_PGUP, KC_NUM, KC_PSLS, KC_PAST, KC_PMNS, - 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_DEL, KC_END, KC_PGDN, KC_P7, KC_P8, KC_P9, KC_PPLS, - 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_NUHS, KC_ENT, KC_P4, KC_P5, KC_P6, - KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_INT1, KC_RSFT, KC_UP, KC_P1, KC_P2, KC_P3, KC_PENT, - KC_LCTL, KC_LWIN, KC_LALT, KC_INT5, KC_SPC, KC_INT4, KC_RALT, KC_RWIN, MO(WIN_FN), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT, KC_P0, KC_PDOT ), - - [WIN_FN] = LAYOUT_112_jis( - _______, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, RGB_TOG, _______, _______, _______, _______, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ) -}; diff --git a/keyboards/keychron/k10_pro/jis/rgb/keymaps/via/keymap.c b/keyboards/keychron/k10_pro/jis/rgb/keymaps/via/keymap.c deleted file mode 100644 index d932123251..0000000000 --- a/keyboards/keychron/k10_pro/jis/rgb/keymaps/via/keymap.c +++ /dev/null @@ -1,59 +0,0 @@ -/* 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 . - */ - -#include QMK_KEYBOARD_H - -enum layers { - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN, -}; - -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_112_jis( - KC_ESC, KC_BRID, KC_BRIU, KC_MICT, KC_LAPA, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_SNAP, KC_SIRI, RGB_MOD, KC_F13, KC_F14, KC_F15, KC_F16, - KC_GRV, 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_INT3, KC_BSPC, KC_INS, KC_HOME, KC_PGUP, KC_NUM, KC_PSLS, KC_PAST, KC_PMNS, - 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_DEL, KC_END, KC_PGDN, KC_P7, KC_P8, KC_P9, KC_PPLS, - 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_NUHS, KC_ENT, KC_P4, KC_P5, KC_P6, - KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_INT1, KC_RSFT, KC_UP, KC_P1, KC_P2, KC_P3, KC_PENT, - KC_LCTL, KC_LOPTN, KC_LCMMD, KC_LNG2, KC_SPC, KC_LNG1, KC_RCMMD, KC_ROPTN, MO(MAC_FN), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT, KC_P0, KC_PDOT ), - - [MAC_FN] = LAYOUT_112_jis( - _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, RGB_TOG, _______, _______, _______, _______, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ), - - [WIN_BASE] = LAYOUT_112_jis( - KC_ESC, 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_PSCR, KC_CTANA, RGB_MOD, _______, _______, _______, _______, - KC_GRV, 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_INT3, KC_BSPC, KC_INS, KC_HOME, KC_PGUP, KC_NUM, KC_PSLS, KC_PAST, KC_PMNS, - 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_DEL, KC_END, KC_PGDN, KC_P7, KC_P8, KC_P9, KC_PPLS, - 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_NUHS, KC_ENT, KC_P4, KC_P5, KC_P6, - KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_INT1, KC_RSFT, KC_UP, KC_P1, KC_P2, KC_P3, KC_PENT, - KC_LCTL, KC_LWIN, KC_LALT, KC_INT5, KC_SPC, KC_INT4, KC_RALT, KC_RWIN, MO(WIN_FN), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT, KC_P0, KC_PDOT ), - - [WIN_FN] = LAYOUT_112_jis( - _______, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, RGB_TOG, _______, _______, _______, _______, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ) -}; diff --git a/keyboards/keychron/k10_pro/jis/rgb/keymaps/via/rules.mk b/keyboards/keychron/k10_pro/jis/rgb/keymaps/via/rules.mk deleted file mode 100644 index 1e5b99807c..0000000000 --- a/keyboards/keychron/k10_pro/jis/rgb/keymaps/via/rules.mk +++ /dev/null @@ -1 +0,0 @@ -VIA_ENABLE = yes diff --git a/keyboards/keychron/k10_pro/jis/rgb/rgb.c b/keyboards/keychron/k10_pro/jis/rgb/rgb.c deleted file mode 100644 index 15031672d2..0000000000 --- a/keyboards/keychron/k10_pro/jis/rgb/rgb.c +++ /dev/null @@ -1,146 +0,0 @@ -/* 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 . - */ - -#include "quantum.h" - -#ifdef RGB_MATRIX_ENABLE -// clang-format off -const snled27351_led_t g_snled27351_leds[RGB_MATRIX_LED_COUNT] = { -/* Refer to snled27351manual for these locations - * driver - * | R location - * | | G location - * | | | B location - * | | | | */ - {0, I_1, G_1, H_1}, - {0, I_2, G_2, H_2}, - {0, I_3, G_3, H_3}, - {0, I_4, G_4, H_4}, - {0, I_5, G_5, H_5}, - {0, I_6, G_6, H_6}, - {0, I_7, G_7, H_7}, - {0, I_8, G_8, H_8}, - {0, I_9, G_9, H_9}, - {0, I_10, G_10, H_10}, - {0, I_11, G_11, H_11}, - {0, I_12, G_12, H_12}, - {0, I_13, G_13, H_13}, - {0, I_15, G_15, H_15}, - {0, I_16, G_16, H_16}, - {0, L_5, J_5, K_5}, - {0, L_6, J_6, K_6}, - {0, L_7, J_7, K_7}, - {0, L_8, J_8, K_8}, - {0, L_4, J_4, K_4}, - - {0, C_1, A_1, B_1}, - {0, C_2, A_2, B_2}, - {0, C_3, A_3, B_3}, - {0, C_4, A_4, B_4}, - {0, C_5, A_5, B_5}, - {0, C_6, A_6, B_6}, - {0, C_7, A_7, B_7}, - {0, C_8, A_8, B_8}, - {0, C_9, A_9, B_9}, - {0, C_10, A_10, B_10}, - {0, C_11, A_11, B_11}, - {0, C_12, A_12, B_12}, - {0, C_13, A_13, B_13}, - {0, C_14, A_14, B_14}, - {0, I_14, G_14, H_14}, - {0, C_15, A_15, B_15}, - {0, C_16, A_16, B_16}, - {0, L_9, J_9, K_9}, - {0, L_10, J_10, K_10}, - {0, L_11, J_11, K_11}, - {0, L_12, J_12, K_12}, - {0, L_13, J_13, K_13}, - - {0, F_1, D_1, E_1}, - {0, F_2, D_2, E_2}, - {0, F_3, D_3, E_3}, - {0, F_4, D_4, E_4}, - {0, F_5, D_5, E_5}, - {0, F_6, D_6, E_6}, - {0, F_7, D_7, E_7}, - {0, F_8, D_8, E_8}, - {0, F_9, D_9, E_9}, - {0, F_10, D_10, E_10}, - {0, F_11, D_11, E_11}, - {0, F_12, D_12, E_12}, - {0, F_13, D_13, E_13}, - {0, F_15, D_15, E_15}, - {0, F_16, D_16, E_16}, - {0, L_14, J_14, K_14}, - {0, L_15, J_15, K_15}, - {0, L_16, J_16, K_16}, - {1, F_1, D_1, E_1}, - {1, F_2, D_2, E_2}, - - {1, C_16, A_16, B_16}, - {1, C_15, A_15, B_15}, - {1, C_14, A_14, B_14}, - {1, C_13, A_13, B_13}, - {1, C_12, A_12, B_12}, - {1, C_11, A_11, B_11}, - {1, C_10, A_10, B_10}, - {1, C_9, A_9, B_9}, - {1, C_8, A_8, B_8}, - {1, C_7, A_7, B_7}, - {1, C_6, A_6, B_6}, - {1, C_5, A_5, B_5}, - {1, C_3, A_3, B_3}, - {0, F_14, D_14, E_14}, - {1, F_3, D_3, E_3}, - {1, F_4, D_4, E_4}, - {1, F_5, D_5, E_5}, - - {1, I_16, G_16, H_16}, - {1, I_14, G_14, H_14}, - {1, I_13, G_13, H_13}, - {1, I_12, G_12, H_12}, - {1, I_11, G_11, H_11}, - {1, I_10, G_10, H_10}, - {1, I_9, G_9, H_9}, - {1, I_8, G_8, H_8}, - {1, I_7, G_7, H_7}, - {1, I_6, G_6, H_6}, - {1, I_5, G_5, H_5}, - {1, I_4, G_4, H_4}, - {1, I_3, G_3, H_3}, - {1, I_1, G_1, H_1}, - {1, F_6, D_6, E_6}, - {1, F_7, D_7, E_7}, - {1, F_8, D_8, E_8}, - {1, F_9, D_9, E_9}, - - {1, L_16, J_16, K_16}, - {1, L_15, J_15, K_15}, - {1, L_14, J_14, K_14}, - {1, L_13, J_13, K_13}, - {1, L_10, J_10, K_10}, - {1, L_7, J_7, K_7}, - {1, L_6, J_6, K_6}, - {1, L_5, J_5, K_5}, - {1, L_4, J_4, K_4}, - {1, L_3, J_3, K_3}, - {1, L_2, J_2, K_2}, - {1, L_1, J_1, K_1}, - {1, F_10, D_10, E_10}, - {1, F_11, D_11, E_11}, - {1, F_12, D_12, E_12}, -}; -#endif diff --git a/keyboards/keychron/k10_pro/jis/rgb/rules.mk b/keyboards/keychron/k10_pro/jis/rgb/rules.mk deleted file mode 100644 index f886ea2e8e..0000000000 --- a/keyboards/keychron/k10_pro/jis/rgb/rules.mk +++ /dev/null @@ -1 +0,0 @@ -# This file intentionally blank \ No newline at end of file diff --git a/keyboards/keychron/k10_pro/jis/white/config.h b/keyboards/keychron/k10_pro/jis/white/config.h deleted file mode 100644 index 07cd9e49b4..0000000000 --- a/keyboards/keychron/k10_pro/jis/white/config.h +++ /dev/null @@ -1,52 +0,0 @@ -/* 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 . - */ - -#pragma once - -#ifdef LED_MATRIX_ENABLE -/* LED Matrix Driver Configuration */ -# define DRIVER_COUNT 1 -# define SNLED27351_I2C_ADDRESS_1 SNLED27351_I2C_ADDRESS_GND - -/* LED Matrix Configuration */ -# define LED_MATRIX_LED_COUNT 112 - -/* Set to infinit, which is use in USB mode by default */ -# define LED_MATRIX_TIMEOUT LED_MATRIX_TIMEOUT_INFINITE - -/* Allow to shutdown driver to save power */ -# define LED_MATRIX_DRIVER_SHUTDOWN_ENABLE - -/* Turn off backllit if brightness value is low */ -# define LED_MATRIX_TURN_OFF_VAL 48 - -/* Indication led index */ -# define CPAS_LOCK_INDEX 63 -# define NUM_LOCK_INDEX 38 -# define LOW_BAT_IND_INDEX 101 - -// LED Matrix Animation modes. Explicitly enabled -// For full list of effects, see: -// https://docs.qmk.fm/#/feature_led_matrix?id=led-matrix-effects -# define LED_MATRIX_KEYPRESSES - -/* Use first 8 channels of LED driver */ -# define PHASE_CHANNEL MSKPHASE_8CHANNEL - -/* Set LED driver current */ -# define SNLED27351_CURRENT_TUNE \ - { 0x60, 0x60, 0x60, 0x60, 0x60, 0x60, 0x60, 0x60, 0x60, 0x60, 0x60, 0x60 } -#endif diff --git a/keyboards/keychron/k10_pro/jis/white/info.json b/keyboards/keychron/k10_pro/jis/white/info.json deleted file mode 100644 index 9e44879f37..0000000000 --- a/keyboards/keychron/k10_pro/jis/white/info.json +++ /dev/null @@ -1,149 +0,0 @@ -{ - "usb": { - "pid": "0x02A5", - "device_version": "1.0.0" - }, - "features": { - "led_matrix": true - }, - "led_matrix": { - "driver": "snled27351", - "animations": { - "none": true, - "solid": true, - "breathing": true, - "band_pinwheel": true, - "band_spiral": true, - "cycle_left_right": true, - "cycle_up_down": true, - "cycle_out_in": true, - "dual_beacon": true, - "solid_reactive_simple": true, - "solid_reactive_multiwide": true, - "solid_reactive_multinexus": true, - "solid_splash": true, - "wave_left_right": true, - "wave_up_down": true, - "effect_max": true - }, - "layout": [ - {"matrix":[0, 0], "flags":1, "x":0, "y":0}, - {"matrix":[0, 1], "flags":1, "x":21, "y":0}, - {"matrix":[0, 2], "flags":1, "x":31, "y":0}, - {"matrix":[0, 3], "flags":1, "x":42, "y":0}, - {"matrix":[0, 4], "flags":1, "x":52, "y":0}, - {"matrix":[0, 5], "flags":1, "x":68, "y":0}, - {"matrix":[0, 6], "flags":1, "x":78, "y":0}, - {"matrix":[0, 7], "flags":1, "x":88, "y":0}, - {"matrix":[0, 8], "flags":1, "x":99, "y":0}, - {"matrix":[0, 9], "flags":1, "x":114, "y":0}, - {"matrix":[0, 10], "flags":1, "x":125, "y":0}, - {"matrix":[0, 11], "flags":1, "x":135, "y":0}, - {"matrix":[0, 12], "flags":1, "x":146, "y":0}, - {"matrix":[0, 14], "flags":1, "x":159, "y":0}, - {"matrix":[0, 15], "flags":1, "x":169, "y":0}, - {"matrix":[0, 16], "flags":1, "x":180, "y":0}, - {"matrix":[0, 17], "flags":4, "x":193, "y":0}, - {"matrix":[0, 18], "flags":4, "x":203, "y":0}, - {"matrix":[0, 19], "flags":4, "x":214, "y":0}, - {"matrix":[0, 20], "flags":4, "x":224, "y":0}, - - {"matrix":[1, 0], "flags":1, "x":0, "y":15}, - {"matrix":[1, 1], "flags":8, "x":10, "y":15}, - {"matrix":[1, 2], "flags":8, "x":21, "y":15}, - {"matrix":[1, 3], "flags":8, "x":31, "y":15}, - {"matrix":[1, 4], "flags":4, "x":42, "y":15}, - {"matrix":[1, 5], "flags":4, "x":52, "y":15}, - {"matrix":[1, 6], "flags":4, "x":62, "y":15}, - {"matrix":[1, 7], "flags":4, "x":73, "y":15}, - {"matrix":[1, 8], "flags":4, "x":83, "y":15}, - {"matrix":[1, 9], "flags":4, "x":94, "y":15}, - {"matrix":[1, 10], "flags":4, "x":104, "y":15}, - {"matrix":[1, 11], "flags":4, "x":114, "y":15}, - {"matrix":[1, 12], "flags":4, "x":125, "y":15}, - {"matrix":[1, 13], "flags":1, "x":135, "y":15}, - {"matrix":[0, 13], "flags":1, "x":146, "y":15}, - {"matrix":[1, 14], "flags":1, "x":159, "y":15}, - {"matrix":[1, 15], "flags":1, "x":169, "y":15}, - {"matrix":[1, 16], "flags":1, "x":180, "y":15}, - {"matrix":[1, 17], "flags":8, "x":193, "y":15}, - {"matrix":[1, 18], "flags":4, "x":203, "y":15}, - {"matrix":[1, 19], "flags":4, "x":214, "y":15}, - {"matrix":[1, 20], "flags":4, "x":224, "y":15}, - - {"matrix":[2, 0], "flags":1, "x":3, "y":27}, - {"matrix":[2, 1], "flags":4, "x":16, "y":27}, - {"matrix":[2, 2], "flags":4, "x":26, "y":27}, - {"matrix":[2, 3], "flags":4, "x":36, "y":27}, - {"matrix":[2, 4], "flags":4, "x":47, "y":27}, - {"matrix":[2, 5], "flags":4, "x":57, "y":27}, - {"matrix":[2, 6], "flags":4, "x":68, "y":27}, - {"matrix":[2, 7], "flags":4, "x":78, "y":27}, - {"matrix":[2, 8], "flags":4, "x":88, "y":27}, - {"matrix":[2, 9], "flags":4, "x":99, "y":27}, - {"matrix":[2, 10], "flags":4, "x":109, "y":27}, - {"matrix":[2, 11], "flags":4, "x":120, "y":27}, - {"matrix":[2, 12], "flags":4, "x":130, "y":27}, - {"matrix":[2, 14], "flags":1, "x":159, "y":27}, - {"matrix":[2, 15], "flags":1, "x":169, "y":27}, - {"matrix":[2, 16], "flags":1, "x":180, "y":27}, - {"matrix":[2, 17], "flags":4, "x":193, "y":27}, - {"matrix":[2, 18], "flags":4, "x":203, "y":27}, - {"matrix":[2, 19], "flags":4, "x":214, "y":27}, - {"matrix":[2, 20], "flags":4, "x":224, "y":27}, - - {"matrix":[3, 0], "flags":8, "x":4, "y":40}, - {"matrix":[3, 1], "flags":4, "x":18, "y":40}, - {"matrix":[3, 2], "flags":4, "x":29, "y":40}, - {"matrix":[3, 3], "flags":4, "x":39, "y":40}, - {"matrix":[3, 4], "flags":4, "x":49, "y":40}, - {"matrix":[3, 5], "flags":4, "x":60, "y":40}, - {"matrix":[3, 6], "flags":4, "x":70, "y":40}, - {"matrix":[3, 7], "flags":4, "x":81, "y":40}, - {"matrix":[3, 8], "flags":4, "x":91, "y":40}, - {"matrix":[3, 9], "flags":4, "x":101, "y":40}, - {"matrix":[3, 10], "flags":4, "x":112, "y":40}, - {"matrix":[3, 11], "flags":1, "x":122, "y":40}, - {"matrix":[3, 13], "flags":1, "x":133, "y":40}, - {"matrix":[2, 13], "flags":4, "x":147, "y":36}, - {"matrix":[3, 17], "flags":4, "x":193, "y":40}, - {"matrix":[3, 18], "flags":4, "x":214, "y":40}, - {"matrix":[3, 19], "flags":4, "x":224, "y":40}, - - {"matrix":[4, 0], "flags":1, "x":6, "y":52}, - {"matrix":[4, 2], "flags":4, "x":23, "y":52}, - {"matrix":[4, 3], "flags":4, "x":34, "y":52}, - {"matrix":[4, 4], "flags":4, "x":44, "y":52}, - {"matrix":[4, 5], "flags":4, "x":55, "y":52}, - {"matrix":[4, 6], "flags":4, "x":65, "y":52}, - {"matrix":[4, 7], "flags":4, "x":75, "y":52}, - {"matrix":[4, 8], "flags":4, "x":86, "y":52}, - {"matrix":[4, 9], "flags":4, "x":96, "y":52}, - {"matrix":[4, 10], "flags":4, "x":107, "y":52}, - {"matrix":[4, 11], "flags":4, "x":117, "y":52}, - {"matrix":[4, 12], "flags":1, "x":127, "y":52}, - {"matrix":[4, 13], "flags":1, "x":142, "y":52}, - {"matrix":[4, 15], "flags":1, "x":169, "y":52}, - {"matrix":[4, 17], "flags":4, "x":193, "y":52}, - {"matrix":[4, 18], "flags":4, "x":203, "y":52}, - {"matrix":[4, 19], "flags":4, "x":214, "y":52}, - {"matrix":[4, 20], "flags":4, "x":224, "y":52}, - - {"matrix":[5, 0], "flags":1, "x":1, "y":64}, - {"matrix":[5, 1], "flags":1, "x":13, "y":64}, - {"matrix":[5, 2], "flags":1, "x":25, "y":64}, - {"matrix":[5, 3], "flags":1, "x":36, "y":64}, - {"matrix":[5, 6], "flags":4, "x":65, "y":64}, - {"matrix":[5, 9], "flags":1, "x":95, "y":64}, - {"matrix":[5, 10], "flags":1, "x":108, "y":64}, - {"matrix":[5, 11], "flags":1, "x":121, "y":64}, - {"matrix":[5, 12], "flags":1, "x":133, "y":64}, - {"matrix":[5, 13], "flags":1, "x":144, "y":64}, - {"matrix":[5, 14], "flags":1, "x":159, "y":64}, - {"matrix":[5, 15], "flags":1, "x":169, "y":64}, - {"matrix":[5, 16], "flags":1, "x":180, "y":64}, - {"matrix":[5, 17], "flags":4, "x":198, "y":64}, - {"matrix":[5, 19], "flags":4, "x":214, "y":64} - ] - } -} diff --git a/keyboards/keychron/k10_pro/jis/white/keymaps/default/keymap.c b/keyboards/keychron/k10_pro/jis/white/keymaps/default/keymap.c deleted file mode 100644 index 87bf59c3ff..0000000000 --- a/keyboards/keychron/k10_pro/jis/white/keymaps/default/keymap.c +++ /dev/null @@ -1,59 +0,0 @@ -/* 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 . - */ - -#include QMK_KEYBOARD_H - -enum layers { - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN, -}; - -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_112_jis( - KC_ESC, KC_BRID, KC_BRIU, KC_MCTL, KC_LPAD, BL_DOWN, BL_UP, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_SNAP, KC_SIRI, BL_STEP, KC_F13, KC_F14, KC_F15, KC_F16, - KC_GRV, 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_INT3, KC_BSPC, KC_INS, KC_HOME, KC_PGUP, KC_NUM, KC_PSLS, KC_PAST, KC_PMNS, - 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_DEL, KC_END, KC_PGDN, KC_P7, KC_P8, KC_P9, KC_PPLS, - 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_NUHS, KC_ENT, KC_P4, KC_P5, KC_P6, - KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_INT1, KC_RSFT, KC_UP, KC_P1, KC_P2, KC_P3, KC_PENT, - KC_LCTL, KC_LOPTN, KC_LCMMD, KC_LNG2, KC_SPC, KC_LNG1, KC_RCMMD, KC_ROPTN, MO(MAC_FN), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT, KC_P0, KC_PDOT ), - - [MAC_FN] = LAYOUT_112_jis( - _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, BL_TOGG, _______, _______, _______, _______, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - BL_TOGG, BL_STEP, BL_UP, KC_TRNS, KC_TRNS, KC_TRNS, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, KC_TRNS, BL_DOWN, KC_TRNS, KC_TRNS, KC_TRNS, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ), - - [WIN_BASE] = LAYOUT_112_jis( - KC_ESC, 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_PSCR, KC_CTANA, BL_STEP, _______, _______, _______, _______, - KC_GRV, 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_INT3, KC_BSPC, KC_INS, KC_HOME, KC_PGUP, KC_NUM, KC_PSLS, KC_PAST, KC_PMNS, - 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_DEL, KC_END, KC_PGDN, KC_P7, KC_P8, KC_P9, KC_PPLS, - 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_NUHS, KC_ENT, KC_P4, KC_P5, KC_P6, - KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_INT1, KC_RSFT, KC_UP, KC_P1, KC_P2, KC_P3, KC_PENT, - KC_LCTL, KC_LWIN, KC_LALT, KC_INT5, KC_SPC, KC_INT4, KC_RALT, KC_RWIN, MO(WIN_FN), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT, KC_P0, KC_PDOT ), - - [WIN_FN] = LAYOUT_112_jis( - RESET, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, BL_DOWN, BL_UP, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, BL_TOGG, _______, _______, _______, _______, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - BL_TOGG, BL_STEP, BL_UP, KC_TRNS, KC_TRNS, KC_TRNS, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, KC_TRNS, BL_DOWN, KC_TRNS, KC_TRNS, KC_TRNS, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ) -}; diff --git a/keyboards/keychron/k10_pro/jis/white/keymaps/via/keymap.c b/keyboards/keychron/k10_pro/jis/white/keymaps/via/keymap.c deleted file mode 100644 index 2973ddad56..0000000000 --- a/keyboards/keychron/k10_pro/jis/white/keymaps/via/keymap.c +++ /dev/null @@ -1,59 +0,0 @@ -/* 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 . - */ - -#include QMK_KEYBOARD_H - -enum layers { - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN, -}; - -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_112_jis( - KC_ESC, KC_BRID, KC_BRIU, KC_MICT, KC_LAPA, BL_DOWN, BL_UP, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_SNAP, KC_SIRI, BL_STEP, KC_F13, KC_F14, KC_F15, KC_F16, - KC_GRV, 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_INT3, KC_BSPC, KC_INS, KC_HOME, KC_PGUP, KC_NUM, KC_PSLS, KC_PAST, KC_PMNS, - 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_DEL, KC_END, KC_PGDN, KC_P7, KC_P8, KC_P9, KC_PPLS, - 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_NUHS, KC_ENT, KC_P4, KC_P5, KC_P6, - KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_INT1, KC_RSFT, KC_UP, KC_P1, KC_P2, KC_P3, KC_PENT, - KC_LCTL, KC_LOPTN, KC_LCMMD, KC_LNG2, KC_SPC, KC_LNG1, KC_RCMMD, KC_ROPTN, MO(MAC_FN), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT, KC_P0, KC_PDOT ), - - [MAC_FN] = LAYOUT_112_jis( - _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, BL_TOGG, _______, _______, _______, _______, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - BL_TOGG, BL_STEP, BL_UP, KC_TRNS, KC_TRNS, KC_TRNS, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, KC_TRNS, BL_DOWN, KC_TRNS, KC_TRNS, KC_TRNS, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ), - - [WIN_BASE] = LAYOUT_112_jis( - KC_ESC, 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_PSCR, KC_CTANA, BL_STEP, _______, _______, _______, _______, - KC_GRV, 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_INT3, KC_BSPC, KC_INS, KC_HOME, KC_PGUP, KC_NUM, KC_PSLS, KC_PAST, KC_PMNS, - 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_DEL, KC_END, KC_PGDN, KC_P7, KC_P8, KC_P9, KC_PPLS, - 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_NUHS, KC_ENT, KC_P4, KC_P5, KC_P6, - KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_INT1, KC_RSFT, KC_UP, KC_P1, KC_P2, KC_P3, KC_PENT, - KC_LCTL, KC_LWIN, KC_LALT, KC_INT5, KC_SPC, KC_INT4, KC_RALT, KC_RWIN, MO(WIN_FN), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT, KC_P0, KC_PDOT ), - - [WIN_FN] = LAYOUT_112_jis( - RESET, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, BL_DOWN, BL_UP, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, BL_TOGG, _______, _______, _______, _______, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - BL_TOGG, BL_STEP, BL_UP, KC_TRNS, KC_TRNS, KC_TRNS, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, KC_TRNS, BL_DOWN, KC_TRNS, KC_TRNS, KC_TRNS, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ) -}; diff --git a/keyboards/keychron/k10_pro/jis/white/keymaps/via/rules.mk b/keyboards/keychron/k10_pro/jis/white/keymaps/via/rules.mk deleted file mode 100644 index 1e5b99807c..0000000000 --- a/keyboards/keychron/k10_pro/jis/white/keymaps/via/rules.mk +++ /dev/null @@ -1 +0,0 @@ -VIA_ENABLE = yes diff --git a/keyboards/keychron/k10_pro/jis/white/rules.mk b/keyboards/keychron/k10_pro/jis/white/rules.mk deleted file mode 100644 index f886ea2e8e..0000000000 --- a/keyboards/keychron/k10_pro/jis/white/rules.mk +++ /dev/null @@ -1 +0,0 @@ -# This file intentionally blank \ No newline at end of file diff --git a/keyboards/keychron/k10_pro/jis/white/white.c b/keyboards/keychron/k10_pro/jis/white/white.c deleted file mode 100644 index a6936169f1..0000000000 --- a/keyboards/keychron/k10_pro/jis/white/white.c +++ /dev/null @@ -1,144 +0,0 @@ -/* 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 . - */ - -#include "quantum.h" - -#ifdef LED_MATRIX_ENABLE -// clang-format off -const snled27351_led_t g_snled27351_leds[LED_MATRIX_LED_COUNT] = { -/* Refer to snled27351manual for these locations - * driver - * | LED address - * | | */ - {0, A_16}, - {0, A_15}, - {0, A_14}, - {0, A_13}, - {0, A_12}, - {0, A_11}, - {0, A_10}, - {0, A_9}, - {0, A_8}, - {0, A_7}, - {0, A_6}, - {0, A_5}, - {0, A_4}, - {0, A_2}, - {0, A_1}, - {0, G_1}, - {0, G_2}, - {0, G_3}, - {0, G_4}, - {0, G_5}, - - {0, B_16}, - {0, B_15}, - {0, B_14}, - {0, B_13}, - {0, B_12}, - {0, B_11}, - {0, B_10}, - {0, B_9}, - {0, B_8}, - {0, B_7}, - {0, B_6}, - {0, B_5}, - {0, B_4}, - {0, B_3}, - {0, A_3}, - {0, B_2}, - {0, B_1}, - {0, G_6}, - {0, G_7}, - {0, G_8}, - {0, G_9}, - {0, G_10}, - - {0, C_16}, - {0, C_15}, - {0, C_14}, - {0, C_13}, - {0, C_12}, - {0, C_11}, - {0, C_10}, - {0, C_9}, - {0, C_8}, - {0, C_7}, - {0, C_6}, - {0, C_5}, - {0, C_4}, - {0, C_2}, - {0, C_1}, - {0, G_11}, - {0, G_12}, - {0, G_13}, - {0, H_1}, - {0, H_2}, - - {0, D_16}, - {0, D_15}, - {0, D_14}, - {0, D_13}, - {0, D_12}, - {0, D_11}, - {0, D_10}, - {0, D_9}, - {0, D_8}, - {0, D_7}, - {0, D_6}, - {0, D_5}, - {0, D_3}, - {0, C_3}, - {0, H_3}, - {0, H_4}, - {0, H_5}, - - {0, E_16}, - {0, E_14}, - {0, E_13}, - {0, E_12}, - {0, E_11}, - {0, E_10}, - {0, E_9}, - {0, E_8}, - {0, E_7}, - {0, E_6}, - {0, E_5}, - {0, E_4}, - {0, E_3}, - {0, E_1}, - {0, H_6}, - {0, H_7}, - {0, H_8}, - {0, H_9}, - - {0, F_16}, - {0, F_15}, - {0, F_14}, - {0, F_13}, - {0, F_10}, - {0, F_7}, - {0, F_6}, - {0, F_5}, - {0, F_4}, - {0, F_3}, - {0, F_2}, - {0, F_1}, - {0, H_10}, - {0, H_11}, - {0, H_12}, -}; -#endif diff --git a/keyboards/keychron/k10_pro/k10_pro.c b/keyboards/keychron/k10_pro/k10_pro.c deleted file mode 100644 index 7f06a423c6..0000000000 --- a/keyboards/keychron/k10_pro/k10_pro.c +++ /dev/null @@ -1,328 +0,0 @@ -/* 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 . - */ - -#include "k10_pro.h" -#ifdef KC_BLUETOOTH_ENABLE -# include "ckbt51.h" -# include "bluetooth.h" -# include "indicator.h" -# include "transport.h" -# include "battery.h" -# include "bat_level_animation.h" -# include "lpm.h" -#endif - -#ifdef ENABLE_FACTORY_TEST -# include "factory_test.h" -#endif - -#define POWER_ON_LED_DURATION 3000 - -typedef struct PACKED { - uint8_t len; - uint8_t keycode[3]; -} key_combination_t; - -static uint32_t factory_timer_buffer = 0; -static uint32_t power_on_indicator_timer_buffer = 0; -static uint32_t siri_timer_buffer = 0; -static uint8_t mac_keycode[4] = {KC_LOPT, KC_ROPT, KC_LCMD, KC_RCMD}; - -key_combination_t key_comb_list[4] = { - {2, {KC_LWIN, KC_TAB}}, // Task (win) - {2, {KC_LWIN, KC_E}}, // Files (win) - {3, {KC_LSFT, KC_LGUI, KC_4}}, // Snapshot (mac) - {2, {KC_LWIN, KC_C}} // Cortana (win) -}; - -#ifdef KC_BLUETOOTH_ENABLE -bool firstDisconnect = true; -bool bt_factory_reset = false; -static virtual_timer_t pairing_key_timer; -extern uint8_t g_pwm_buffer[DRIVER_COUNT][192]; - -static void pairing_key_timer_cb(void *arg) { - bluetooth_pairing_ex(*(uint8_t *)arg, NULL); -} -#endif - -bool dip_switch_update_kb(uint8_t index, bool active) { - if (index == 0) { - default_layer_set(1UL << (active ? 0 : 2)); - } - dip_switch_update_user(index, active); - - return true; -} - -#ifdef KC_BLUETOOTH_ENABLE -bool process_record_kb_bt(uint16_t keycode, keyrecord_t *record) { -#else -bool process_record_kb(uint16_t keycode, keyrecord_t *record) { -#endif - static uint8_t host_idx = 0; - - switch (keycode) { - case KC_MICT: - if (record->event.pressed) { - register_code(KC_MISSION_CONTROL); - } else { - unregister_code(KC_MISSION_CONTROL); - } - return false; // Skip all further processing of this key - case KC_LAPA: - if (record->event.pressed) { - register_code(KC_LAUNCHPAD); - } else { - unregister_code(KC_LAUNCHPAD); - } - return false; // Skip all further processing of this key - case KC_LOPTN: - case KC_ROPTN: - case KC_LCMMD: - case KC_RCMMD: - if (record->event.pressed) { - register_code(mac_keycode[keycode - KC_LOPTN]); - } else { - unregister_code(mac_keycode[keycode - KC_LOPTN]); - } - return false; // Skip all further processing of this key) - case KC_TASK: - case KC_FILE: - case KC_SNAP: - case KC_CTANA: - if (record->event.pressed) { - for (uint8_t i = 0; i < key_comb_list[keycode - KC_TASK].len; i++) - register_code(key_comb_list[keycode - KC_TASK].keycode[i]); - } else { - for (uint8_t i = 0; i < key_comb_list[keycode - KC_TASK].len; i++) - unregister_code(key_comb_list[keycode - KC_TASK].keycode[i]); - } - return false; // Skip all further processing of this key - case KC_SIRI: - if (record->event.pressed && siri_timer_buffer == 0) { - register_code(KC_LGUI); - register_code(KC_SPACE); - siri_timer_buffer = sync_timer_read32() | 1; - } - return false; // Skip all further processing of this key -#ifdef KC_BLUETOOTH_ENABLE - case BT_HST1 ... BT_HST3: - if (get_transport() == TRANSPORT_BLUETOOTH) { - if (record->event.pressed) { - host_idx = keycode - BT_HST1 + 1; - chVTSet(&pairing_key_timer, TIME_MS2I(2000), (vtfunc_t)pairing_key_timer_cb, &host_idx); - bluetooth_connect_ex(host_idx, 0); - } else { - host_idx = 0; - chVTReset(&pairing_key_timer); - } - } - break; - case BAT_LVL: - if (get_transport() == TRANSPORT_BLUETOOTH && !usb_power_connected()) { - bat_level_animiation_start(battery_get_percentage()); - } - break; -#endif - default: -#ifdef FACTORY_RESET_CHECK - FACTORY_RESET_CHECK(keycode, record); -#endif - break; - } - return true; -} - -void keyboard_post_init_kb(void) { - dip_switch_read(true); - -#ifdef KC_BLUETOOTH_ENABLE - /* Currently we don't use this reset pin */ - palSetLineMode(CKBT51_RESET_PIN, PAL_MODE_OUTPUT_PUSHPULL); - palWriteLine(CKBT51_RESET_PIN, PAL_HIGH); - - /* IMPORTANT: DO NOT enable internal pull-up resistor - * as there is an external pull-down resistor. - */ - palSetLineMode(USB_BT_MODE_SELECT_PIN, PAL_MODE_INPUT); - - ckbt51_init(false); - bluetooth_init(); -#endif - - power_on_indicator_timer_buffer = sync_timer_read32() | 1; - writePin(BAT_LOW_LED_PIN, BAT_LOW_LED_PIN_ON_STATE); - writePin(LED_CAPS_LOCK_PIN, LED_PIN_ON_STATE); -#ifdef KC_BLUETOOTH_ENABLE - writePin(H3, HOST_LED_PIN_ON_STATE); -#endif - - keyboard_post_init_user(); -} - -void matrix_scan_kb(void) { - if (factory_timer_buffer && timer_elapsed32(factory_timer_buffer) > 2000) { - factory_timer_buffer = 0; - if (bt_factory_reset) { - bt_factory_reset = false; - palWriteLine(CKBT51_RESET_PIN, PAL_LOW); - wait_ms(5); - palWriteLine(CKBT51_RESET_PIN, PAL_HIGH); - } - } - - if (power_on_indicator_timer_buffer) { - if (sync_timer_elapsed32(power_on_indicator_timer_buffer) > POWER_ON_LED_DURATION) { - power_on_indicator_timer_buffer = 0; - - writePin(BAT_LOW_LED_PIN, !BAT_LOW_LED_PIN_ON_STATE); - writePin(H3, !HOST_LED_PIN_ON_STATE); - if (!host_keyboard_led_state().caps_lock) writePin(LED_CAPS_LOCK_PIN, !LED_PIN_ON_STATE); - } else { - writePin(BAT_LOW_LED_PIN, BAT_LOW_LED_PIN_ON_STATE); - writePin(H3, HOST_LED_PIN_ON_STATE); - writePin(LED_CAPS_LOCK_PIN, LED_PIN_ON_STATE); - } - } - - if (siri_timer_buffer && sync_timer_elapsed32(siri_timer_buffer) > 500) { - siri_timer_buffer = 0; - unregister_code(KC_LGUI); - unregister_code(KC_SPACE); - } - -#ifdef FACTORY_RESET_TASK - FACTORY_RESET_TASK(); -#endif - matrix_scan_user(); -} - -#ifdef KC_BLUETOOTH_ENABLE -static void ckbt51_param_init(void) { - /* Set bluetooth device name */ - ckbt51_set_local_name(PRODUCT); - /* Set bluetooth parameters */ - module_param_t param = {.event_mode = 0x02, - .connected_idle_timeout = 7200, - .pairing_timeout = 180, - .pairing_mode = 0, - .reconnect_timeout = 5, - .report_rate = 90, - .vendor_id_source = 1, - .verndor_id = 0, // Must be 0x3434 - .product_id = PRODUCT_ID}; - ckbt51_set_param(¶m); -} - -void bluetooth_enter_disconnected_kb(uint8_t host_idx) { - if (bt_factory_reset) { - ckbt51_param_init(); - factory_timer_buffer = timer_read32(); - } - /* CKBT51 bluetooth module boot time is slower, it enters disconnected after boot, - so we place initialization here. */ - if (firstDisconnect && sync_timer_read32() < 1000 && get_transport() == TRANSPORT_BLUETOOTH) { - ckbt51_param_init(); - bluetooth_connect(); - firstDisconnect = false; - } -} - -void ckbt51_default_ack_handler(uint8_t *data, uint8_t len) { - if (data[1] == 0x45) { - module_param_t param = {.event_mode = 0x02, - .connected_idle_timeout = 7200, - .pairing_timeout = 180, - .pairing_mode = 0, - .reconnect_timeout = 5, - .report_rate = 90, - .vendor_id_source = 1, - .verndor_id = 0, // Must be 0x3434 - .product_id = PRODUCT_ID}; - ckbt51_set_param(¶m); - } -} - -void bluetooth_pre_task(void) { - static uint8_t mode = 1; - - if (readPin(USB_BT_MODE_SELECT_PIN) != mode) { - if (readPin(USB_BT_MODE_SELECT_PIN) != mode) { - mode = readPin(USB_BT_MODE_SELECT_PIN); - set_transport(mode == 0 ? TRANSPORT_BLUETOOTH : TRANSPORT_USB); - } - } -} -#endif - -void battery_calculte_voltage(uint16_t value) { - uint16_t voltage = ((uint32_t)value) * 2246 / 1000; - -#ifdef LED_MATRIX_ENABLE - if (led_matrix_is_enabled()) { - uint32_t totalBuf = 0; - - for (uint8_t i = 0; i < DRIVER_COUNT; i++) - for (uint8_t j = 0; j < 192; j++) - totalBuf += g_pwm_buffer[i][j]; - /* We assumpt it is linear relationship*/ - voltage += (30 * totalBuf / LED_MATRIX_LED_COUNT / 255); - } -#endif -#ifdef RGB_MATRIX_ENABLE - if (rgb_matrix_is_enabled()) { - uint32_t totalBuf = 0; - - for (uint8_t i = 0; i < DRIVER_COUNT; i++) - for (uint8_t j = 0; j < 192; j++) - totalBuf += g_pwm_buffer[i][j]; - /* We assumpt it is linear relationship*/ - uint32_t compensation = 60 * totalBuf / RGB_MATRIX_LED_COUNT / 255 / 3; - voltage += compensation; - } -#endif - battery_set_voltage(voltage); -} - -bool via_command_kb(uint8_t *data, uint8_t length) { - switch (data[0]) { -#ifdef KC_BLUETOOTH_ENABLE - case 0xAA: - ckbt51_dfu_rx(data, length); - break; -#endif -#ifdef ENABLE_FACTORY_TEST - case 0xAB: - factory_test_rx(data, length); - break; -#endif - default: - return false; - } - - return true; -} - -#if !defined(VIA_ENABLE) -void raw_hid_receive(uint8_t *data, uint8_t length) { - switch (data[0]) { - case RAW_HID_CMD: - via_command_kb(data, length); - break; - } -} -#endif diff --git a/keyboards/keychron/k10_pro/k10_pro.h b/keyboards/keychron/k10_pro/k10_pro.h deleted file mode 100644 index bc6e1effc8..0000000000 --- a/keyboards/keychron/k10_pro/k10_pro.h +++ /dev/null @@ -1,57 +0,0 @@ -/* 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 . - */ - -#pragma once - -#include "quantum.h" -#ifdef VIA_ENABLE -# include "via.h" -#endif - -#define ___ KC_NO -#define KC_MICT QK_KB_0 -#define KC_LAPA QK_KB_1 - -#ifdef VIA_ENABLE -# define USER_START QK_KB_2 -#else -# define USER_START SAFE_RANGE -#endif - -// clang-format off -enum { - KC_LOPTN = USER_START, - KC_ROPTN, - KC_LCMMD, - KC_RCMMD, - KC_TASK, - KC_FILE, - KC_SNAP, - KC_CTANA, - KC_SIRI, -#ifdef KC_BLUETOOTH_ENABLE - BT_HST1, - BT_HST2, - BT_HST3, - BAT_LVL, -#else - BT_HST1 = KC_TRNS, - BT_HST2 = KC_TRNS, - BT_HST3 = KC_TRNS, - BAT_LVL = KC_TRNS, -#endif - NEW_SAFE_RANGE -}; diff --git a/keyboards/keychron/k10_pro/matrix.c b/keyboards/keychron/k10_pro/matrix.c deleted file mode 100644 index d2d1ae8916..0000000000 --- a/keyboards/keychron/k10_pro/matrix.c +++ /dev/null @@ -1,170 +0,0 @@ -/* 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 . - */ - -#include "stdint.h" -#include "hal.h" -#include "gpio.h" -#include "quantum.h" - -#define HC595_STCP A0 -#define HC595_SHCP A1 -#define HC595_DS C15 - -#define DIRECT_COL_NUM 1 - -pin_t row_pins[MATRIX_ROWS] = MATRIX_ROW_PINS; -pin_t col_pins[MATRIX_COLS] = MATRIX_COL_PINS; - -static inline void HC595_delay(uint16_t n) { - while (n-- > 0) { - asm volatile("nop" ::: "memory"); - }; -} - -static void HC595_output(uint32_t data) { - uint8_t i; - uint8_t n = 1; - - for (i = 24; i > 0; i--) { - writePinLow(HC595_SHCP); - - if(data & 0x800000) - writePinHigh(HC595_DS); - else - writePinLow(HC595_DS); - - data <<= 1; - - HC595_delay(n); - - writePinHigh(HC595_SHCP); - HC595_delay(n); - } - - HC595_delay(n); - writePinLow(HC595_STCP); - HC595_delay(n); - writePinHigh(HC595_STCP); -} - -static inline void setPinOutput_writeLow(pin_t pin) { - ATOMIC_BLOCK_FORCEON { - setPinOutput(pin); - writePinLow(pin); - } -} - -static inline void setPinInputHigh_atomic(pin_t pin) { - ATOMIC_BLOCK_FORCEON { - setPinInputHigh(pin); - } -} - -static inline uint8_t readMatrixPin(pin_t pin) { - if (pin != NO_PIN) { - return readPin(pin); - } else { - return 1; - } -} - -static bool select_col(uint8_t col) { - pin_t pin = col_pins[col]; - - if (col < DIRECT_COL_NUM) { - setPinOutput_writeLow(pin); - return true; - } else { - HC595_output(~(0x01 << (col - DIRECT_COL_NUM))); - return true; - } - return false; -} - -static void unselect_col(uint8_t col) { - pin_t pin = col_pins[col]; - - if (col < DIRECT_COL_NUM) { - setPinInputHigh_atomic(pin); - } else { - HC595_output(0xFFFFFF); - } -} - -static void unselect_cols(void) { - for (uint8_t i = 0; i < DIRECT_COL_NUM; i++) - writePinHigh(col_pins[i]); - HC595_output(0xFFFFFF); -} - -void select_all_cols(void) { - for (uint8_t i = 0; i < DIRECT_COL_NUM; i++) - setPinOutput_writeLow(col_pins[i]); - HC595_output(0x000000); -} - -void matrix_read_rows_on_col(matrix_row_t current_matrix[], uint8_t current_col) { - // Select col - if (!select_col(current_col)) { // select col - return; // skip NO_PIN col - } - - HC595_delay(100); - - // For each row... - for (uint8_t row_index = 0; row_index < MATRIX_ROWS; row_index++) { - // Check row pin state - if (readMatrixPin(row_pins[row_index]) == 0) { - // Pin LO, set col bit - current_matrix[row_index] |= (MATRIX_ROW_SHIFTER << current_col); - // key_pressed = true; - } else { - // Pin HI, clear col bit - current_matrix[row_index] &= ~(MATRIX_ROW_SHIFTER << current_col); - } - } - - unselect_col(current_col); - HC595_delay(100); -} - -void matrix_init_custom(void) { - for (uint8_t x = 0; x < MATRIX_ROWS; x++) { - if (row_pins[x] != NO_PIN) { - setPinInputHigh_atomic(row_pins[x]); - } - } - setPinOutput(HC595_DS); - setPinOutput(HC595_STCP); - setPinOutput(HC595_SHCP); - unselect_cols(); -} - -bool matrix_scan_custom(matrix_row_t current_matrix[]) { - bool matrix_has_changed = false; - - matrix_row_t curr_matrix[MATRIX_ROWS] = {0}; - - // Set col, read rows - for (uint8_t current_col = 0; current_col < MATRIX_COLS; current_col++) { - matrix_read_rows_on_col(curr_matrix, current_col); - } - - matrix_has_changed = memcmp(current_matrix, curr_matrix, sizeof(curr_matrix)) != 0; - if (matrix_has_changed) memcpy(current_matrix, curr_matrix, sizeof(curr_matrix)); - - return matrix_has_changed; -} diff --git a/keyboards/keychron/k10_pro/mcuconf.h b/keyboards/keychron/k10_pro/mcuconf.h deleted file mode 100644 index 4dae767a44..0000000000 --- a/keyboards/keychron/k10_pro/mcuconf.h +++ /dev/null @@ -1,36 +0,0 @@ -/* 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 - -/* Set HCLK to 48 MHz as tradeoff of USB lowest clockand and - * lower power comsumption for bluetooth. Will use dynamic - * clock when STM32L4 is supported in ChibiOS */ -#undef STM32_PLLM_VALUE -#define STM32_PLLM_VALUE 2 - -#undef STM32_PLLN_VALUE -#define STM32_PLLN_VALUE 12 - -#undef STM32_I2C_USE_I2C1 -#define STM32_I2C_USE_I2C1 TRUE - -#ifdef KC_BLUETOOTH_ENABLE -# undef STM32_SERIAL_USE_USART2 -# define STM32_SERIAL_USE_USART2 TRUE -#endif diff --git a/keyboards/keychron/k10_pro/readme.md b/keyboards/keychron/k10_pro/readme.md deleted file mode 100644 index 8b95c10da1..0000000000 --- a/keyboards/keychron/k10_pro/readme.md +++ /dev/null @@ -1,31 +0,0 @@ -# Keychron K10 Pro - -![Keychron K10 Pro](https://github.com/Keychron/ProductImage/blob/main/K_Pro/k10_pro.jpg?raw=true) - -A customizable 108 keys keyboard. - -* Keyboard Maintainer: [Keychron](https://github.com/keychron) -* Hardware Supported: Keychron K10 Pro -* Hardware Availability: [Keychron K10 Pro QMK/VIA Wireless Mechanical Keyboard](https://www.keychron.com/collections/keychron-k-pro-series-keyboard/products/keychron-k10-pro-qmk-via-wireless-mechanical-keyboard) - -Make example for this keyboard (after setting up your build environment): - - make keychron/k10_pro/ansi/rgb:default - make keychron/k10_pro/ansi/white:default - make keychron/k10_pro/iso/rgb:default - make keychron/k10_pro/iso/white:default - make keychron/k10_pro/jis/rgb:default - make keychron/k10_pro/jis/white:default - -Flashing example for this keyboard: - - make keychron/k10_pro/ansi/rgb:default:flash - make keychron/k10_pro/ansi/white:default:flash - make keychron/k10_pro/iso/rgb:default:flash - make keychron/k10_pro/iso/white:default:flash - make keychron/k10_pro/jis/rgb:default:flash - make keychron/k10_pro/jis/white:default:flash - -**Reset Key**: Connect the USB cable, toggle mode switch to "Off", hold down the *Esc* key or reset button underneath space bar, then toggle then switch to "Cable". - -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). diff --git a/keyboards/keychron/k10_pro/rules.mk b/keyboards/keychron/k10_pro/rules.mk deleted file mode 100644 index f995372f9c..0000000000 --- a/keyboards/keychron/k10_pro/rules.mk +++ /dev/null @@ -1,6 +0,0 @@ -# Enter lower-power sleep mode when on the ChibiOS idle thread -OPT_DEFS += -DCORTEX_ENABLE_WFI_IDLE=TRUE -OPT_DEFS += -DNO_USB_STARTUP_CHECK -DENABLE_FACTORY_TEST - -include keyboards/keychron/bluetooth/bluetooth.mk -include keyboards/keychron/common/common.mk diff --git a/keyboards/keychron/k10_pro/via_json/k10_pro_ansi_rgb.json b/keyboards/keychron/k10_pro/via_json/k10_pro_ansi_rgb.json deleted file mode 100644 index f033b05774..0000000000 --- a/keyboards/keychron/k10_pro/via_json/k10_pro_ansi_rgb.json +++ /dev/null @@ -1,344 +0,0 @@ -{ - "name": "Keychron K10 Pro ANSI RGB", - "vendorId": "0x3434", - "productId": "0x02A0", - "keycodes": ["qmk_lighting"], - "menus": [ - { - "label": "Lighting", - "content": [ - { - "label": "Backlight", - "content": [ - { - "label": "Brightness", - "type": "range", - "options": [0, 255], - "content": ["id_qmk_rgb_matrix_brightness", 3, 1] - }, - { - "label": "Effect", - "type": "dropdown", - "content": ["id_qmk_rgb_matrix_effect", 3, 2], - "options": [ - ["None", 0], - ["Solid Color", 1], - ["Breathing", 2], - ["Band Spiral Val", 3], - ["Cycle All", 4], - ["Cycle Left Right", 5], - ["Cycle Up Down", 6], - ["Rainbow Moving Chevron", 7], - ["Cycle Out In", 8], - ["Cycle Out In Dual", 9], - ["Cycle Pinwheel", 10], - ["Cycle Spiral", 11], - ["Dual Beacon", 12], - ["Rainbow Beacon", 13], - ["Jellybean Raindrops", 14], - ["Pixel Rain", 15], - ["Typing Heatmap", 16], - ["Digital Rain", 17], - ["Reactive Simple", 18], - ["Reactive Multiwide", 19], - ["Reactive Multinexus", 20], - ["Splash", 21], - ["Solid Splash", 22] - ] - }, - { - "showIf": "{id_qmk_rgb_matrix_effect} > 1", - "label": "Effect Speed", - "type": "range", - "options": [0, 255], - "content": ["id_qmk_rgb_matrix_effect_speed", 3, 3] - }, - { - "showIf": "{id_qmk_rgb_matrix_effect} != 0 && ( {id_qmk_rgb_matrix_effect} < 4 || {id_qmk_rgb_matrix_effect} == 18 || ({id_qmk_rgb_matrix_effect} > 17 && {id_qmk_rgb_matrix_effect} != 21) ) ", - "label": "Color", - "type": "color", - "content": ["id_qmk_rgb_matrix_color", 3, 4] - } - ] - } - ] - } - ], - "customKeycodes": [ - {"name": "Misson Control", "title": "Misson Control, availabe in macOS", "shortName": "MCtrl"}, - {"name": "Launch pad", "title": "Launch pad, availabe in macOS", "shortName": "LPad"}, - {"name": "Left Option", "title": "Left Option", "shortName": "LOpt"}, - {"name": "Right Option", "title": "Right Option", "shortName": "ROpt"}, - {"name": "Left Cmd", "title": "Left Command", "shortName": "LCmd"}, - {"name": "Right Cmd", "title": "Right Command", "shortName": "RCmd"}, - {"name": "Task View", "title": "Task View in Windows", "shortName": "Task"}, - {"name": "File Explorer", "title": "File Explorer in Windows", "shortName": "File"}, - {"name": "Screen shot", "title": "Screenshot in macOS", "shortName": "SShot"}, - {"name": "Cortana", "title": "Cortana in Windows", "shortName": "Cortana"}, - {"name": "Siri", "title": "Siri in macOS", "shortName": "Siri"}, - {"name": "Bluetooth Host 1", "title": "Bluetooth Host 1", "shortName": "BTH1"}, - {"name": "Bluetooth Host 2", "title": "Bluetooth Host 2", "shortName": "BTH2"}, - {"name": "Bluetooth Host 3", "title": "Bluetooth Host 3", "shortName": "BTH3"}, - {"name": "Battery Level", "title": "Show battery level", "shortName": "Batt"} - ], - "matrix": {"rows": 6, "cols": 21}, - "layouts": { - "keymap": [ - [ - { - "c": "#777777" - }, - "0,0", - { - "x": 1, - "c": "#cccccc" - }, - "0,1", - "0,2", - "0,3", - "0,4", - { - "x": 0.5, - "c": "#aaaaaa" - }, - "0,5", - "0,6", - "0,7", - "0,8", - { - "x": 0.5, - "c": "#cccccc" - }, - "0,9", - "0,10", - "0,11", - "0,12", - { - "x": 0.25, - "c": "#aaaaaa" - }, - "0,14", - "0,15", - "0,16", - { - "x": 0.25, - "c": "#cccccc" - }, - "0,17", - "0,18", - "0,19", - "0,20" - ], - [ - { - "y": 0.25, - "c": "#aaaaaa" - }, - "1,0", - { - "c": "#cccccc" - }, - "1,1", - "1,2", - "1,3", - "1,4", - "1,5", - "1,6", - "1,7", - "1,8", - "1,9", - "1,10", - "1,11", - "1,12", - { - "c": "#aaaaaa", - "w": 2 - }, - "1,13", - { - "x": 0.25 - }, - "1,14", - "1,15", - "1,16", - { - "x": 0.25, - "c": "#cccccc" - }, - "1,17", - "1,18", - "1,19", - "1,20" - ], - [ - { - "c": "#aaaaaa", - "w": 1.5 - }, - "2,0", - { - "c": "#cccccc" - }, - "2,1", - "2,2", - "2,3", - "2,4", - "2,5", - "2,6", - "2,7", - "2,8", - "2,9", - "2,10", - "2,11", - "2,12", - { - "c": "#aaaaaa", - "w": 1.5 - }, - "2,13", - { - "x": 0.25 - }, - "2,14", - "2,15", - "2,16", - { - "x": 0.25, - "c": "#cccccc" - }, - "2,17", - "2,18", - "2,19", - { - "h": 2 - }, - "2,20" - ], - [ - { - "c": "#aaaaaa", - "w": 1.75 - }, - "3,0", - { - "c": "#cccccc" - }, - "3,1", - "3,2", - "3,3", - "3,4", - "3,5", - "3,6", - "3,7", - "3,8", - "3,9", - "3,10", - "3,11", - { - "c": "#777777", - "w": 2.25 - }, - "3,13", - { - "x": 3.5, - "c": "#cccccc" - }, - "3,17", - "3,18", - "3,19" - ], - [ - { - "c": "#aaaaaa", - "w": 2.25 - }, - "4,0", - { - "c": "#cccccc" - }, - "4,2", - "4,3", - "4,4", - "4,5", - "4,6", - "4,7", - "4,8", - "4,9", - "4,10", - "4,11", - { - "c": "#aaaaaa", - "w": 2.75 - }, - "4,13", - { - "x": 1.25, - "c": "#777777" - }, - "4,15", - { - "x": 1.25, - "c": "#cccccc" - }, - "4,17", - "4,18", - "4,19", - { - "h": 2 - }, - "4,20" - ], - [ - { - "c": "#aaaaaa", - "w": 1.25 - }, - "5,0", - { - "w": 1.25 - }, - "5,1", - { - "w": 1.25 - }, - "5,2", - { - "c": "#cccccc", - "w": 6.25 - }, - "5,6", - { - "c": "#aaaaaa", - "w": 1.25 - }, - "5,10", - { - "w": 1.25 - }, - "5,11", - { - "w": 1.25 - }, - "5,12", - { - "w": 1.25 - }, - "5,13", - { - "x": 0.25, - "c": "#777777" - }, - "5,14", - "5,15", - "5,16", - { - "x": 0.25, - "c": "#cccccc", - "w": 2 - }, - "5,17", - "5,19" - ] - ] - } -} diff --git a/keyboards/keychron/k10_pro/via_json/k10_pro_ansi_white.json b/keyboards/keychron/k10_pro/via_json/k10_pro_ansi_white.json deleted file mode 100644 index 6352afe5f0..0000000000 --- a/keyboards/keychron/k10_pro/via_json/k10_pro_ansi_white.json +++ /dev/null @@ -1,284 +0,0 @@ -{ - "name": "Keychron K10 Pro ANSI White", - "vendorId": "0x3434", - "productId": "0x02A3", - "keycodes": ["qmk_lighting"], - "menus": ["qmk_rgb_matrix"], - "customKeycodes": [ - {"name": "Misson Control", "title": "Misson Control, availabe in macOS", "shortName": "MCtrl"}, - {"name": "Launch pad", "title": "Launch pad, availabe in macOS", "shortName": "LPad"}, - {"name": "Left Option", "title": "Left Option", "shortName": "LOpt"}, - {"name": "Right Option", "title": "Right Option", "shortName": "ROpt"}, - {"name": "Left Cmd", "title": "Left Command", "shortName": "LCmd"}, - {"name": "Right Cmd", "title": "Right Command", "shortName": "RCmd"}, - {"name": "Task View", "title": "Task View in Windows", "shortName": "Task"}, - {"name": "File Explorer", "title": "File Explorer in Windows", "shortName": "File"}, - {"name": "Screen shot", "title": "Screenshot in macOS", "shortName": "SShot"}, - {"name": "Cortana", "title": "Cortana in Windows", "shortName": "Cortana"}, - {"name": "Siri", "title": "Siri in macOS", "shortName": "Siri"}, - {"name": "Bluetooth Host 1", "title": "Bluetooth Host 1", "shortName": "BTH1"}, - {"name": "Bluetooth Host 2", "title": "Bluetooth Host 2", "shortName": "BTH2"}, - {"name": "Bluetooth Host 3", "title": "Bluetooth Host 3", "shortName": "BTH3"}, - {"name": "Battery Level", "title": "Show battery level", "shortName": "Batt"} - ], - "matrix": {"rows": 6, "cols": 21}, - "layouts": { - "keymap": [ - [ - { - "c": "#777777" - }, - "0,0", - { - "x": 1, - "c": "#cccccc" - }, - "0,1", - "0,2", - "0,3", - "0,4", - { - "x": 0.5, - "c": "#aaaaaa" - }, - "0,5", - "0,6", - "0,7", - "0,8", - { - "x": 0.5, - "c": "#cccccc" - }, - "0,9", - "0,10", - "0,11", - "0,12", - { - "x": 0.25, - "c": "#aaaaaa" - }, - "0,14", - "0,15", - "0,16", - { - "x": 0.25, - "c": "#cccccc" - }, - "0,17", - "0,18", - "0,19", - "0,20" - ], - [ - { - "y": 0.25, - "c": "#aaaaaa" - }, - "1,0", - { - "c": "#cccccc" - }, - "1,1", - "1,2", - "1,3", - "1,4", - "1,5", - "1,6", - "1,7", - "1,8", - "1,9", - "1,10", - "1,11", - "1,12", - { - "c": "#aaaaaa", - "w": 2 - }, - "1,13", - { - "x": 0.25 - }, - "1,14", - "1,15", - "1,16", - { - "x": 0.25, - "c": "#cccccc" - }, - "1,17", - "1,18", - "1,19", - "1,20" - ], - [ - { - "c": "#aaaaaa", - "w": 1.5 - }, - "2,0", - { - "c": "#cccccc" - }, - "2,1", - "2,2", - "2,3", - "2,4", - "2,5", - "2,6", - "2,7", - "2,8", - "2,9", - "2,10", - "2,11", - "2,12", - { - "c": "#aaaaaa", - "w": 1.5 - }, - "2,13", - { - "x": 0.25 - }, - "2,14", - "2,15", - "2,16", - { - "x": 0.25, - "c": "#cccccc" - }, - "2,17", - "2,18", - "2,19", - { - "h": 2 - }, - "2,20" - ], - [ - { - "c": "#aaaaaa", - "w": 1.75 - }, - "3,0", - { - "c": "#cccccc" - }, - "3,1", - "3,2", - "3,3", - "3,4", - "3,5", - "3,6", - "3,7", - "3,8", - "3,9", - "3,10", - "3,11", - { - "c": "#777777", - "w": 2.25 - }, - "3,13", - { - "x": 3.5, - "c": "#cccccc" - }, - "3,17", - "3,18", - "3,19" - ], - [ - { - "c": "#aaaaaa", - "w": 2.25 - }, - "4,0", - { - "c": "#cccccc" - }, - "4,2", - "4,3", - "4,4", - "4,5", - "4,6", - "4,7", - "4,8", - "4,9", - "4,10", - "4,11", - { - "c": "#aaaaaa", - "w": 2.75 - }, - "4,13", - { - "x": 1.25, - "c": "#777777" - }, - "4,15", - { - "x": 1.25, - "c": "#cccccc" - }, - "4,17", - "4,18", - "4,19", - { - "h": 2 - }, - "4,20" - ], - [ - { - "c": "#aaaaaa", - "w": 1.25 - }, - "5,0", - { - "w": 1.25 - }, - "5,1", - { - "w": 1.25 - }, - "5,2", - { - "c": "#cccccc", - "w": 6.25 - }, - "5,6", - { - "c": "#aaaaaa", - "w": 1.25 - }, - "5,10", - { - "w": 1.25 - }, - "5,11", - { - "w": 1.25 - }, - "5,12", - { - "w": 1.25 - }, - "5,13", - { - "x": 0.25, - "c": "#777777" - }, - "5,14", - "5,15", - "5,16", - { - "x": 0.25, - "c": "#cccccc", - "w": 2 - }, - "5,17", - "5,19" - ] - ] - } -} diff --git a/keyboards/keychron/k10_pro/via_json/k10_pro_iso_rgb.json b/keyboards/keychron/k10_pro/via_json/k10_pro_iso_rgb.json deleted file mode 100644 index 3676b9200f..0000000000 --- a/keyboards/keychron/k10_pro/via_json/k10_pro_iso_rgb.json +++ /dev/null @@ -1,350 +0,0 @@ -{ - "name": "Keychron K10 Pro ISO RGB", - "vendorId": "0x3434", - "productId": "0x02A1", - "keycodes": ["qmk_lighting"], - "menus": [ - { - "label": "Lighting", - "content": [ - { - "label": "Backlight", - "content": [ - { - "label": "Brightness", - "type": "range", - "options": [0, 255], - "content": ["id_qmk_rgb_matrix_brightness", 3, 1] - }, - { - "label": "Effect", - "type": "dropdown", - "content": ["id_qmk_rgb_matrix_effect", 3, 2], - "options": [ - ["00. None", 0], - ["01. SOLID_COLOR", 1], - ["02. BREATHING", 2], - ["03. BAND_SPIRAL_VAL", 3], - ["04. CYCLE_ALL", 4], - ["05. CYCLE_LEFT_RIGHT", 5], - ["06. CYCLE_UP_DOWN", 6], - ["07. RAINBOW_MOVING_CHEVRON", 7], - ["08. CYCLE_OUT_IN", 8], - ["09. CYCLE_OUT_IN_DUAL", 9], - ["10. CYCLE_PINWHEEL", 10], - ["11. CYCLE_SPIRAL", 11], - ["12. DUAL_BEACON", 12], - ["13. RAINBOW_BEACON", 13], - ["14. JELLYBEAN_RAINDROPS", 14], - ["15. PIXEL_RAIN", 15], - ["16. TYPING_HEATMAP", 16], - ["17. DIGITAL_RAIN", 17], - ["18. REACTIVE_SIMPLE", 18], - ["19. REACTIVE_MULTIWIDE", 19], - ["20. REACTIVE_MULTINEXUS", 20], - ["21. SPLASH", 21], - ["22. SOLID_SPLASH", 22] - ] - }, - { - "showIf": "{id_qmk_rgb_matrix_effect} > 1", - "label": "Effect Speed", - "type": "range", - "options": [0, 255], - "content": ["id_qmk_rgb_matrix_effect_speed", 3, 3] - }, - { - "showIf": "{id_qmk_rgb_matrix_effect} != 0", - "label": "Color", - "type": "color", - "content": ["id_qmk_rgb_matrix_color", 3, 4] - } - ] - } - ] - } - ], - "customKeycodes": [ - {"name": "Misson Control", "title": "Misson Control, availabe in macOS", "shortName": "MCtrl"}, - {"name": "Launch pad", "title": "Launch pad, availabe in macOS", "shortName": "LPad"}, - {"name": "Left Option", "title": "Left Option", "shortName": "LOpt"}, - {"name": "Right Option", "title": "Right Option", "shortName": "ROpt"}, - {"name": "Left Cmd", "title": "Left Command", "shortName": "LCmd"}, - {"name": "Right Cmd", "title": "Right Command", "shortName": "RCmd"}, - {"name": "Task View", "title": "Task View in Windows", "shortName": "Task"}, - {"name": "File Explorer", "title": "File Explorer in Windows", "shortName": "File"}, - {"name": "Screen shot", "title": "Screenshot in macOS", "shortName": "SShot"}, - {"name": "Cortana", "title": "Cortana in Windows", "shortName": "Cortana"}, - {"name": "Siri", "title": "Siri in macOS", "shortName": "Siri"}, - {"name": "Bluetooth Host 1", "title": "Bluetooth Host 1", "shortName": "BTH1"}, - {"name": "Bluetooth Host 2", "title": "Bluetooth Host 2", "shortName": "BTH2"}, - {"name": "Bluetooth Host 3", "title": "Bluetooth Host 3", "shortName": "BTH3"}, - {"name": "Battery Level", "title": "Show battery level", "shortName": "Batt"} - ], - "matrix": {"rows": 6, "cols": 21}, - "layouts": { - "keymap": [ - [ - { - "c": "#777777" - }, - "0,0", - { - "x": 1, - "c": "#cccccc" - }, - "0,1", - "0,2", - "0,3", - "0,4", - { - "x": 0.5, - "c": "#aaaaaa" - }, - "0,5", - "0,6", - "0,7", - "0,8", - { - "x": 0.5, - "c": "#cccccc" - }, - "0,9", - "0,10", - "0,11", - "0,12", - { - "x": 0.25, - "c": "#aaaaaa" - }, - "0,14", - "0,15", - "0,16", - { - "x": 0.25, - "c": "#cccccc" - }, - "0,17", - "0,18", - "0,19", - "0,20" - ], - [ - { - "y": 0.25, - "c": "#aaaaaa" - }, - "1,0", - { - "c": "#cccccc" - }, - "1,1", - "1,2", - "1,3", - "1,4", - "1,5", - "1,6", - "1,7", - "1,8", - "1,9", - "1,10", - "1,11", - "1,12", - { - "c": "#aaaaaa", - "w": 2 - }, - "1,13", - { - "x": 0.25 - }, - "1,14", - "1,15", - "1,16", - { - "x": 0.25, - "c": "#cccccc" - }, - "1,17", - "1,18", - "1,19", - "1,20" - ], - [ - { - "c": "#aaaaaa", - "w": 1.5 - }, - "2,0", - { - "c": "#cccccc" - }, - "2,1", - "2,2", - "2,3", - "2,4", - "2,5", - "2,6", - "2,7", - "2,8", - "2,9", - "2,10", - "2,11", - "2,12", - { - "x": 0.25, - "c": "#777777", - "w": 1.25, - "h": 2, - "w2": 1.5, - "h2": 1, - "x2": -0.25 - }, - "2,13", - { - "x": 0.25, - "c": "#aaaaaa" - }, - "2,14", - "2,15", - "2,16", - { - "x": 0.25, - "c": "#cccccc" - }, - "2,17", - "2,18", - "2,19", - { - "h": 2 - }, - "2,20" - ], - [ - { - "c": "#aaaaaa", - "w": 1.75 - }, - "3,0", - { - "c": "#cccccc" - }, - "3,1", - "3,2", - "3,3", - "3,4", - "3,5", - "3,6", - "3,7", - "3,8", - "3,9", - "3,10", - "3,11", - { - "c": "#aaaaaa" - }, - "3,13", - { - "x": 4.75, - "c": "#cccccc" - }, - "3,17", - "3,18", - "3,19" - ], - [ - { - "c": "#aaaaaa", - "w": 1.25 - }, - "4,0", - "4,1", - { - "c": "#cccccc" - }, - "4,2", - "4,3", - "4,4", - "4,5", - "4,6", - "4,7", - "4,8", - "4,9", - "4,10", - "4,11", - { - "c": "#aaaaaa", - "w": 2.75 - }, - "4,13", - { - "x": 1.25, - "c": "#777777" - }, - "4,15", - { - "x": 1.25, - "c": "#cccccc" - }, - "4,17", - "4,18", - "4,19", - { - "h": 2 - }, - "4,20" - ], - [ - { - "c": "#aaaaaa", - "w": 1.25 - }, - "5,0", - { - "w": 1.25 - }, - "5,1", - { - "w": 1.25 - }, - "5,2", - { - "c": "#cccccc", - "w": 6.25 - }, - "5,6", - { - "c": "#aaaaaa", - "w": 1.25 - }, - "5,10", - { - "w": 1.25 - }, - "5,11", - { - "w": 1.25 - }, - "5,12", - { - "w": 1.25 - }, - "5,13", - { - "x": 0.25, - "c": "#777777" - }, - "5,14", - "5,15", - "5,16", - { - "x": 0.25, - "c": "#cccccc", - "w": 2 - }, - "5,17", - "5,19" - ] - ] - } -} diff --git a/keyboards/keychron/k10_pro/via_json/k10_pro_iso_white.json b/keyboards/keychron/k10_pro/via_json/k10_pro_iso_white.json deleted file mode 100644 index eb79bc575d..0000000000 --- a/keyboards/keychron/k10_pro/via_json/k10_pro_iso_white.json +++ /dev/null @@ -1,289 +0,0 @@ -{ - "name": "Keychron K10 Pro ISO White", - "vendorId": "0x3434", - "productId": "0x02A4", - "keycodes": ["qmk_lighting"], - "customKeycodes": [ - {"name": "Misson Control", "title": "Misson Control, availabe in macOS", "shortName": "MCtrl"}, - {"name": "Launch pad", "title": "Launch pad, availabe in macOS", "shortName": "LPad"}, - {"name": "Left Option", "title": "Left Option", "shortName": "LOpt"}, - {"name": "Right Option", "title": "Right Option", "shortName": "ROpt"}, - {"name": "Left Cmd", "title": "Left Command", "shortName": "LCmd"}, - {"name": "Right Cmd", "title": "Right Command", "shortName": "RCmd"}, - {"name": "Task View", "title": "Task View in Windows", "shortName": "Task"}, - {"name": "File Explorer", "title": "File Explorer in Windows", "shortName": "File"}, - {"name": "Screen shot", "title": "Screenshot in macOS", "shortName": "SShot"}, - {"name": "Cortana", "title": "Cortana in Windows", "shortName": "Cortana"}, - {"name": "Siri", "title": "Siri in macOS", "shortName": "Siri"}, - {"name": "Bluetooth Host 1", "title": "Bluetooth Host 1", "shortName": "BTH1"}, - {"name": "Bluetooth Host 2", "title": "Bluetooth Host 2", "shortName": "BTH2"}, - {"name": "Bluetooth Host 3", "title": "Bluetooth Host 3", "shortName": "BTH3"}, - {"name": "Battery Level", "title": "Show battery level", "shortName": "Batt"} - ], - "matrix": {"rows": 6, "cols": 21}, - "layouts": { - "keymap": [ - [ - { - "c": "#777777" - }, - "0,0", - { - "x": 1, - "c": "#cccccc" - }, - "0,1", - "0,2", - "0,3", - "0,4", - { - "x": 0.5, - "c": "#aaaaaa" - }, - "0,5", - "0,6", - "0,7", - "0,8", - { - "x": 0.5, - "c": "#cccccc" - }, - "0,9", - "0,10", - "0,11", - "0,12", - { - "x": 0.25, - "c": "#aaaaaa" - }, - "0,14", - "0,15", - "0,16", - { - "x": 0.25, - "c": "#cccccc" - }, - "0,17", - "0,18", - "0,19", - "0,20" - ], - [ - { - "y": 0.25, - "c": "#aaaaaa" - }, - "1,0", - { - "c": "#cccccc" - }, - "1,1", - "1,2", - "1,3", - "1,4", - "1,5", - "1,6", - "1,7", - "1,8", - "1,9", - "1,10", - "1,11", - "1,12", - { - "c": "#aaaaaa", - "w": 2 - }, - "1,13", - { - "x": 0.25 - }, - "1,14", - "1,15", - "1,16", - { - "x": 0.25, - "c": "#cccccc" - }, - "1,17", - "1,18", - "1,19", - "1,20" - ], - [ - { - "c": "#aaaaaa", - "w": 1.5 - }, - "2,0", - { - "c": "#cccccc" - }, - "2,1", - "2,2", - "2,3", - "2,4", - "2,5", - "2,6", - "2,7", - "2,8", - "2,9", - "2,10", - "2,11", - "2,12", - { - "x": 0.25, - "c": "#777777", - "w": 1.25, - "h": 2, - "w2": 1.5, - "h2": 1, - "x2": -0.25 - }, - "2,13", - { - "x": 0.25, - "c": "#aaaaaa" - }, - "2,14", - "2,15", - "2,16", - { - "x": 0.25, - "c": "#cccccc" - }, - "2,17", - "2,18", - "2,19", - { - "h": 2 - }, - "2,20" - ], - [ - { - "c": "#aaaaaa", - "w": 1.75 - }, - "3,0", - { - "c": "#cccccc" - }, - "3,1", - "3,2", - "3,3", - "3,4", - "3,5", - "3,6", - "3,7", - "3,8", - "3,9", - "3,10", - "3,11", - { - "c": "#aaaaaa" - }, - "3,13", - { - "x": 4.75, - "c": "#cccccc" - }, - "3,17", - "3,18", - "3,19" - ], - [ - { - "c": "#aaaaaa", - "w": 1.25 - }, - "4,0", - "4,1", - { - "c": "#cccccc" - }, - "4,2", - "4,3", - "4,4", - "4,5", - "4,6", - "4,7", - "4,8", - "4,9", - "4,10", - "4,11", - { - "c": "#aaaaaa", - "w": 2.75 - }, - "4,13", - { - "x": 1.25, - "c": "#777777" - }, - "4,15", - { - "x": 1.25, - "c": "#cccccc" - }, - "4,17", - "4,18", - "4,19", - { - "h": 2 - }, - "4,20" - ], - [ - { - "c": "#aaaaaa", - "w": 1.25 - }, - "5,0", - { - "w": 1.25 - }, - "5,1", - { - "w": 1.25 - }, - "5,2", - { - "c": "#cccccc", - "w": 6.25 - }, - "5,6", - { - "c": "#aaaaaa", - "w": 1.25 - }, - "5,10", - { - "w": 1.25 - }, - "5,11", - { - "w": 1.25 - }, - "5,12", - { - "w": 1.25 - }, - "5,13", - { - "x": 0.25, - "c": "#777777" - }, - "5,14", - "5,15", - "5,16", - { - "x": 0.25, - "c": "#cccccc", - "w": 2 - }, - "5,17", - "5,19" - ] - ] - } -} diff --git a/keyboards/keychron/k10_pro/via_json/k10_pro_jis_rgb.json b/keyboards/keychron/k10_pro/via_json/k10_pro_jis_rgb.json deleted file mode 100644 index 9360904173..0000000000 --- a/keyboards/keychron/k10_pro/via_json/k10_pro_jis_rgb.json +++ /dev/null @@ -1,351 +0,0 @@ -{ - "name": "Keychron K10 Pro JIS RGB", - "vendorId": "0x3434", - "productId": "0x02A2", - "keycodes": ["qmk_lighting"], - "menus": [ - { - "label": "Lighting", - "content": [ - { - "label": "Backlight", - "content": [ - { - "label": "Brightness", - "type": "range", - "options": [0, 255], - "content": ["id_qmk_rgb_matrix_brightness", 3, 1] - }, - { - "label": "Effect", - "type": "dropdown", - "content": ["id_qmk_rgb_matrix_effect", 3, 2], - "options": [ - ["00. None", 0], - ["01. SOLID_COLOR", 1], - ["02. BREATHING", 2], - ["03. BAND_SPIRAL_VAL", 3], - ["04. CYCLE_ALL", 4], - ["05. CYCLE_LEFT_RIGHT", 5], - ["06. CYCLE_UP_DOWN", 6], - ["07. RAINBOW_MOVING_CHEVRON", 7], - ["08. CYCLE_OUT_IN", 8], - ["09. CYCLE_OUT_IN_DUAL", 9], - ["10. CYCLE_PINWHEEL", 10], - ["11. CYCLE_SPIRAL", 11], - ["12. DUAL_BEACON", 12], - ["13. RAINBOW_BEACON", 13], - ["14. JELLYBEAN_RAINDROPS", 14], - ["15. PIXEL_RAIN", 15], - ["16. TYPING_HEATMAP", 16], - ["17. DIGITAL_RAIN", 17], - ["18. REACTIVE_SIMPLE", 18], - ["19. REACTIVE_MULTIWIDE", 19], - ["20. REACTIVE_MULTINEXUS", 20], - ["21. SPLASH", 21], - ["22. SOLID_SPLASH", 22] - ] - }, - { - "showIf": "{id_qmk_rgb_matrix_effect} > 1", - "label": "Effect Speed", - "type": "range", - "options": [0, 255], - "content": ["id_qmk_rgb_matrix_effect_speed", 3, 3] - }, - { - "showIf": "{id_qmk_rgb_matrix_effect} != 0", - "label": "Color", - "type": "color", - "content": ["id_qmk_rgb_matrix_color", 3, 4] - } - ] - } - ] - } - ], - "customKeycodes": [ - {"name": "Misson Control", "title": "Misson Control, availabe in macOS", "shortName": "MCtrl"}, - {"name": "Launch pad", "title": "Launch pad, availabe in macOS", "shortName": "LPad"}, - {"name": "Left Option", "title": "Left Option", "shortName": "LOpt"}, - {"name": "Right Option", "title": "Right Option", "shortName": "ROpt"}, - {"name": "Left Cmd", "title": "Left Command", "shortName": "LCmd"}, - {"name": "Right Cmd", "title": "Right Command", "shortName": "RCmd"}, - {"name": "Task View", "title": "Task View in Windows", "shortName": "Task"}, - {"name": "File Explorer", "title": "File Explorer in Windows", "shortName": "File"}, - {"name": "Screen shot", "title": "Screenshot in macOS", "shortName": "SShot"}, - {"name": "Cortana", "title": "Cortana in Windows", "shortName": "Cortana"}, - {"name": "Siri", "title": "Siri in macOS", "shortName": "Siri"}, - {"name": "Bluetooth Host 1", "title": "Bluetooth Host 1", "shortName": "BTH1"}, - {"name": "Bluetooth Host 2", "title": "Bluetooth Host 2", "shortName": "BTH2"}, - {"name": "Bluetooth Host 3", "title": "Bluetooth Host 3", "shortName": "BTH3"}, - {"name": "Battery Level", "title": "Show battery level", "shortName": "Batt"} - ], - "matrix": {"rows": 6, "cols": 21}, - "layouts": { - "keymap": [ - [ - { - "c": "#777777" - }, - "0,0", - { - "x": 1, - "c": "#cccccc" - }, - "0,1", - "0,2", - "0,3", - "0,4", - { - "x": 0.5, - "c": "#aaaaaa" - }, - "0,5", - "0,6", - "0,7", - "0,8", - { - "x": 0.5, - "c": "#cccccc" - }, - "0,9", - "0,10", - "0,11", - "0,12", - { - "x": 0.25, - "c": "#aaaaaa" - }, - "0,14", - "0,15", - "0,16", - { - "x": 0.25, - "c": "#cccccc" - }, - "0,17", - "0,18", - "0,19", - "0,20" - ], - [ - { - "y": 0.25, - "c": "#aaaaaa" - }, - "1,0", - { - "c": "#cccccc" - }, - "1,1", - "1,2", - "1,3", - "1,4", - "1,5", - "1,6", - "1,7", - "1,8", - "1,9", - "1,10", - "1,11", - "1,12", - { - "c": "#aaaaaa" - }, - "1,13", - "0,13", - { - "x": 0.25 - }, - "1,14", - "1,15", - "1,16", - { - "x": 0.25, - "c": "#cccccc" - }, - "1,17", - "1,18", - "1,19", - "1,20" - ], - [ - { - "c": "#aaaaaa", - "w": 1.5 - }, - "2,0", - { - "c": "#cccccc" - }, - "2,1", - "2,2", - "2,3", - "2,4", - "2,5", - "2,6", - "2,7", - "2,8", - "2,9", - "2,10", - "2,11", - "2,12", - { - "x": 0.25, - "c": "#777777", - "w": 1.25, - "h": 2, - "w2": 1.5, - "h2": 1, - "x2": -0.25 - }, - "2,13", - { - "x": 0.25, - "c": "#aaaaaa" - }, - "2,14", - "2,15", - "2,16", - { - "x": 0.25, - "c": "#cccccc" - }, - "2,17", - "2,18", - "2,19", - { - "h": 2 - }, - "2,20" - ], - [ - { - "c": "#aaaaaa", - "w": 1.75 - }, - "3,0", - { - "c": "#cccccc" - }, - "3,1", - "3,2", - "3,3", - "3,4", - "3,5", - "3,6", - "3,7", - "3,8", - "3,9", - "3,10", - "3,11", - { - "c": "#aaaaaa" - }, - "3,13", - { - "x": 4.75, - "c": "#cccccc" - }, - "3,17", - "3,18", - "3,19" - ], - [ - { - "c": "#aaaaaa", - "w": 2.25 - }, - "4,0", - { - "c": "#cccccc" - }, - "4,2", - "4,3", - "4,4", - "4,5", - "4,6", - "4,7", - "4,8", - "4,9", - "4,10", - "4,11", - { - "c": "#aaaaaa" - }, - "4,12", - { - "w": 1.75 - }, - "4,13", - { - "x": 1.25, - "c": "#777777" - }, - "4,15", - { - "x": 1.25, - "c": "#cccccc" - }, - "4,17", - "4,18", - "4,19", - { - "h": 2 - }, - "4,20" - ], - [ - { - "c": "#aaaaaa", - "w": 1.25 - }, - "5,0", - "5,1", - { - "w": 1.25 - }, - "5,2", - "5,3", - { - "c": "#cccccc", - "w": 4.5 - }, - "5,6", - { - "c": "#aaaaaa", - "w": 1.25 - }, - "5,9", - { - "w": 1.25 - }, - "5,10", - { - "w": 1.25 - }, - "5,11", - "5,12", - { - "w": 1.25 - }, - "5,13", - { - "x": 0.25, - "c": "#777777" - }, - "5,14", - "5,15", - "5,16", - { - "x": 0.25, - "c": "#cccccc", - "w": 2 - }, - "5,17", - "5,19" - ] - ] - } -} diff --git a/keyboards/keychron/k10_pro/via_json/k10_pro_jis_white.json b/keyboards/keychron/k10_pro/via_json/k10_pro_jis_white.json deleted file mode 100644 index 1d7aa40f9d..0000000000 --- a/keyboards/keychron/k10_pro/via_json/k10_pro_jis_white.json +++ /dev/null @@ -1,290 +0,0 @@ -{ - "name": "Keychron K10 Pro JIS White", - "vendorId": "0x3434", - "productId": "0x02A5", - "keycodes": ["qmk_lighting"], - "customKeycodes": [ - {"name": "Misson Control", "title": "Misson Control, availabe in macOS", "shortName": "MCtrl"}, - {"name": "Launch pad", "title": "Launch pad, availabe in macOS", "shortName": "LPad"}, - {"name": "Left Option", "title": "Left Option", "shortName": "LOpt"}, - {"name": "Right Option", "title": "Right Option", "shortName": "ROpt"}, - {"name": "Left Cmd", "title": "Left Command", "shortName": "LCmd"}, - {"name": "Right Cmd", "title": "Right Command", "shortName": "RCmd"}, - {"name": "Task View", "title": "Task View in Windows", "shortName": "Task"}, - {"name": "File Explorer", "title": "File Explorer in Windows", "shortName": "File"}, - {"name": "Screen shot", "title": "Screenshot in macOS", "shortName": "SShot"}, - {"name": "Cortana", "title": "Cortana in Windows", "shortName": "Cortana"}, - {"name": "Siri", "title": "Siri in macOS", "shortName": "Siri"}, - {"name": "Bluetooth Host 1", "title": "Bluetooth Host 1", "shortName": "BTH1"}, - {"name": "Bluetooth Host 2", "title": "Bluetooth Host 2", "shortName": "BTH2"}, - {"name": "Bluetooth Host 3", "title": "Bluetooth Host 3", "shortName": "BTH3"}, - {"name": "Battery Level", "title": "Show battery level", "shortName": "Batt"} - ], - "matrix": {"rows": 6, "cols": 21}, - "layouts": { - "keymap": [ - [ - { - "c": "#777777" - }, - "0,0", - { - "x": 1, - "c": "#cccccc" - }, - "0,1", - "0,2", - "0,3", - "0,4", - { - "x": 0.5, - "c": "#aaaaaa" - }, - "0,5", - "0,6", - "0,7", - "0,8", - { - "x": 0.5, - "c": "#cccccc" - }, - "0,9", - "0,10", - "0,11", - "0,12", - { - "x": 0.25, - "c": "#aaaaaa" - }, - "0,14", - "0,15", - "0,16", - { - "x": 0.25, - "c": "#cccccc" - }, - "0,17", - "0,18", - "0,19", - "0,20" - ], - [ - { - "y": 0.25, - "c": "#aaaaaa" - }, - "1,0", - { - "c": "#cccccc" - }, - "1,1", - "1,2", - "1,3", - "1,4", - "1,5", - "1,6", - "1,7", - "1,8", - "1,9", - "1,10", - "1,11", - "1,12", - { - "c": "#aaaaaa" - }, - "1,13", - "0,13", - { - "x": 0.25 - }, - "1,14", - "1,15", - "1,16", - { - "x": 0.25, - "c": "#cccccc" - }, - "1,17", - "1,18", - "1,19", - "1,20" - ], - [ - { - "c": "#aaaaaa", - "w": 1.5 - }, - "2,0", - { - "c": "#cccccc" - }, - "2,1", - "2,2", - "2,3", - "2,4", - "2,5", - "2,6", - "2,7", - "2,8", - "2,9", - "2,10", - "2,11", - "2,12", - { - "x": 0.25, - "c": "#777777", - "w": 1.25, - "h": 2, - "w2": 1.5, - "h2": 1, - "x2": -0.25 - }, - "2,13", - { - "x": 0.25, - "c": "#aaaaaa" - }, - "2,14", - "2,15", - "2,16", - { - "x": 0.25, - "c": "#cccccc" - }, - "2,17", - "2,18", - "2,19", - { - "h": 2 - }, - "2,20" - ], - [ - { - "c": "#aaaaaa", - "w": 1.75 - }, - "3,0", - { - "c": "#cccccc" - }, - "3,1", - "3,2", - "3,3", - "3,4", - "3,5", - "3,6", - "3,7", - "3,8", - "3,9", - "3,10", - "3,11", - { - "c": "#aaaaaa" - }, - "3,13", - { - "x": 4.75, - "c": "#cccccc" - }, - "3,17", - "3,18", - "3,19" - ], - [ - { - "c": "#aaaaaa", - "w": 2.25 - }, - "4,0", - { - "c": "#cccccc" - }, - "4,2", - "4,3", - "4,4", - "4,5", - "4,6", - "4,7", - "4,8", - "4,9", - "4,10", - "4,11", - { - "c": "#aaaaaa" - }, - "4,12", - { - "w": 1.75 - }, - "4,13", - { - "x": 1.25, - "c": "#777777" - }, - "4,15", - { - "x": 1.25, - "c": "#cccccc" - }, - "4,17", - "4,18", - "4,19", - { - "h": 2 - }, - "4,20" - ], - [ - { - "c": "#aaaaaa", - "w": 1.25 - }, - "5,0", - "5,1", - { - "w": 1.25 - }, - "5,2", - "5,3", - { - "c": "#cccccc", - "w": 4.5 - }, - "5,6", - { - "c": "#aaaaaa", - "w": 1.25 - }, - "5,9", - { - "w": 1.25 - }, - "5,10", - { - "w": 1.25 - }, - "5,11", - "5,12", - { - "w": 1.25 - }, - "5,13", - { - "x": 0.25, - "c": "#777777" - }, - "5,14", - "5,15", - "5,16", - { - "x": 0.25, - "c": "#cccccc", - "w": 2 - }, - "5,17", - "5,19" - ] - ] - } -} diff --git a/keyboards/keychron/k10_pro_se2/ansi_lightless/config.h b/keyboards/keychron/k10_pro_se2/ansi_lightless/config.h deleted file mode 100644 index a51f29b0f5..0000000000 --- a/keyboards/keychron/k10_pro_se2/ansi_lightless/config.h +++ /dev/null @@ -1,23 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#pragma once - -#define BT_HOST_LED_PIN_LIST \ - { B8, B9, B7 } -#define P24G_HOST_LED_PIN_LIST \ - { A8 } -#define HOST_LED_PIN_ON_STATE 1 diff --git a/keyboards/keychron/k10_pro_se2/ansi_lightless/info.json b/keyboards/keychron/k10_pro_se2/ansi_lightless/info.json deleted file mode 100644 index e8f94d7c1e..0000000000 --- a/keyboards/keychron/k10_pro_se2/ansi_lightless/info.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "usb": { - "pid": "0x0AAA", - "device_version": "1.0.0" - } -} diff --git a/keyboards/keychron/k10_pro_se2/ansi_lightless/keymaps/default/keymap.c b/keyboards/keychron/k10_pro_se2/ansi_lightless/keymaps/default/keymap.c deleted file mode 100644 index 0b96355cf0..0000000000 --- a/keyboards/keychron/k10_pro_se2/ansi_lightless/keymaps/default/keymap.c +++ /dev/null @@ -1,68 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#include QMK_KEYBOARD_H -#include "keychron_common.h" - -enum layers { - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN, -}; - -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_ansi_108( - KC_ESC, KC_BRID, KC_BRIU, KC_MCTRL, KC_LNPAD, KC_BRID, KC_BRIU, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_SNAP, KC_SIRI, KC_MLCK, KC_F13, KC_F14, KC_F15, KC_F16, - KC_GRV, 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_INS, KC_HOME, KC_PGUP, KC_NUM, KC_PSLS, KC_PAST, KC_PMNS, - 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_DEL, KC_END, KC_PGDN, KC_P7, KC_P8, KC_P9, - 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_P4, KC_P5, KC_P6, KC_PPLS, - 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_P1, KC_P2, KC_P3, - KC_LCTL, KC_LOPTN, KC_LCMMD, KC_SPC, KC_RCMMD, KC_ROPTN, MO(MAC_FN), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT, KC_P0, KC_PDOT, KC_PENT), - - [MAC_FN] = LAYOUT_ansi_108( - _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, _______, _______, _______, _______, _______, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - - [WIN_BASE] = LAYOUT_ansi_108( - KC_ESC, 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_PSCR, KC_CTANA, KC_WLCK, _______, _______, _______, _______, - KC_GRV, 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_INS, KC_HOME, KC_PGUP, KC_NUM, KC_PSLS, KC_PAST, KC_PMNS, - 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_DEL, KC_END, KC_PGDN, KC_P7, KC_P8, KC_P9, - 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_P4, KC_P5, KC_P6, KC_PPLS, - 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_P1, KC_P2, KC_P3, - KC_LCTL, KC_LWIN, KC_LALT, KC_SPC, KC_RALT, KC_RWIN, MO(WIN_FN), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT, KC_P0, KC_PDOT, KC_PENT), - - [WIN_FN] = LAYOUT_ansi_108( - _______, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, KC_BRID, KC_BRIU, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, _______, _______, _______, _______, _______, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______) -}; - -// clang-format on -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - if (!process_record_keychron_common(keycode, record)) { - return false; - } - return true; -} diff --git a/keyboards/keychron/k10_pro_se2/ansi_lightless/keymaps/via/keymap.c b/keyboards/keychron/k10_pro_se2/ansi_lightless/keymaps/via/keymap.c deleted file mode 100644 index 3c11e7cacb..0000000000 --- a/keyboards/keychron/k10_pro_se2/ansi_lightless/keymaps/via/keymap.c +++ /dev/null @@ -1,68 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#include QMK_KEYBOARD_H -#include "keychron_common.h" - -enum layers { - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN, -}; - -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_ansi_108( - KC_ESC, KC_BRID, KC_BRIU, KC_MCTRL, KC_LNPAD, KC_BRID, KC_BRIU, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_SNAP, KC_SIRI, KC_MLCK, KC_F13, KC_F14, KC_F15, KC_F16, - KC_GRV, 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_INS, KC_HOME, KC_PGUP, KC_NUM, KC_PSLS, KC_PAST, KC_PMNS, - 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_DEL, KC_END, KC_PGDN, KC_P7, KC_P8, KC_P9, - 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_P4, KC_P5, KC_P6, KC_PPLS, - 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_P1, KC_P2, KC_P3, - KC_LCTL, KC_LOPTN, KC_LCMMD, KC_SPC, KC_RCMMD, KC_ROPTN, MO(MAC_FN), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT, KC_P0, KC_PDOT, KC_PENT), - - [MAC_FN] = LAYOUT_ansi_108( - _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, _______, _______, _______, _______, _______, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - - [WIN_BASE] = LAYOUT_ansi_108( - KC_ESC, 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_PSCR, KC_CTANA, KC_WLCK, _______, _______, _______, _______, - KC_GRV, 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_INS, KC_HOME, KC_PGUP, KC_NUM, KC_PSLS, KC_PAST, KC_PMNS, - 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_DEL, KC_END, KC_PGDN, KC_P7, KC_P8, KC_P9, - 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_P4, KC_P5, KC_P6, KC_PPLS, - 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_P1, KC_P2, KC_P3, - KC_LCTL, KC_LWIN, KC_LALT, KC_SPC, KC_RALT, KC_RWIN, MO(WIN_FN), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT, KC_P0, KC_PDOT, KC_PENT), - - [WIN_FN] = LAYOUT_ansi_108( - _______, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, KC_BRID, KC_BRIU, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, _______, _______, _______, _______, _______, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______) -}; - -// clang-format on -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - if (!process_record_keychron_common(keycode, record)) { - return false; - } - return true; -} diff --git a/keyboards/keychron/k10_pro_se2/ansi_lightless/keymaps/via/rules.mk b/keyboards/keychron/k10_pro_se2/ansi_lightless/keymaps/via/rules.mk deleted file mode 100644 index 1e5b99807c..0000000000 --- a/keyboards/keychron/k10_pro_se2/ansi_lightless/keymaps/via/rules.mk +++ /dev/null @@ -1 +0,0 @@ -VIA_ENABLE = yes diff --git a/keyboards/keychron/k10_pro_se2/ansi_lightless/rules.mk b/keyboards/keychron/k10_pro_se2/ansi_lightless/rules.mk deleted file mode 100644 index 6e7633bfe0..0000000000 --- a/keyboards/keychron/k10_pro_se2/ansi_lightless/rules.mk +++ /dev/null @@ -1 +0,0 @@ -# This file intentionally left blank diff --git a/keyboards/keychron/k10_pro_se2/board.h b/keyboards/keychron/k10_pro_se2/board.h deleted file mode 100644 index d044339908..0000000000 --- a/keyboards/keychron/k10_pro_se2/board.h +++ /dev/null @@ -1,225 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#pragma once - -#include_next - -// clang-format off - -/* Set GPIOA_SWDIO to INPUT and NOT FLOATING */ -#undef VAL_GPIOA_MODER -#define VAL_GPIOA_MODER (PIN_MODE_INPUT(GPIOA_BUTTON) | \ - PIN_MODE_INPUT(GPIOA_PIN1) | \ - PIN_MODE_INPUT(GPIOA_PIN2) | \ - PIN_MODE_INPUT(GPIOA_PIN3) | \ - PIN_MODE_ALTERNATE(GPIOA_CS43L22_LRCK) |\ - PIN_MODE_ALTERNATE(GPIOA_L3GD20_SCL) | \ - PIN_MODE_ALTERNATE(GPIOA_L3GD20_SD0) | \ - PIN_MODE_ALTERNATE(GPIOA_L3GD20_SDI) | \ - PIN_MODE_INPUT(GPIOA_PIN8) | \ - PIN_MODE_INPUT(GPIOA_VBUS_FS) | \ - PIN_MODE_ALTERNATE(GPIOA_OTG_FS_ID) | \ - PIN_MODE_ALTERNATE(GPIOA_OTG_FS_DM) | \ - PIN_MODE_ALTERNATE(GPIOA_OTG_FS_DP) | \ - PIN_MODE_INPUT(GPIOA_SWDIO) | \ - PIN_MODE_INPUT(GPIOA_SWCLK) | \ - PIN_MODE_INPUT(GPIOA_PIN15)) - -#undef VAL_GPIOA_PUPDR -#define VAL_GPIOA_PUPDR (PIN_PUPDR_FLOATING(GPIOA_BUTTON) | \ - PIN_PUPDR_PULLUP(GPIOA_PIN1) | \ - PIN_PUPDR_PULLUP(GPIOA_PIN2) | \ - PIN_PUPDR_PULLUP(GPIOA_PIN3) | \ - PIN_PUPDR_FLOATING(GPIOA_CS43L22_LRCK) |\ - PIN_PUPDR_FLOATING(GPIOA_L3GD20_SCL) | \ - PIN_PUPDR_PULLUP(GPIOA_L3GD20_SD0) | \ - PIN_PUPDR_PULLUP(GPIOA_L3GD20_SDI) | \ - PIN_PUPDR_PULLDOWN(GPIOA_PIN8) | \ - PIN_PUPDR_FLOATING(GPIOA_VBUS_FS) | \ - PIN_PUPDR_FLOATING(GPIOA_OTG_FS_ID) | \ - PIN_PUPDR_FLOATING(GPIOA_OTG_FS_DM) | \ - PIN_PUPDR_FLOATING(GPIOA_OTG_FS_DP) | \ - PIN_PUPDR_PULLDOWN(GPIOA_SWDIO) | \ - PIN_PUPDR_PULLUP(GPIOA_SWCLK) | \ - PIN_PUPDR_PULLUP(GPIOA_PIN15)) - -#undef VAL_GPIOB_MODER -#define VAL_GPIOB_MODER (PIN_MODE_INPUT(GPIOB_PIN0) | \ - PIN_MODE_INPUT(GPIOB_PIN1) | \ - PIN_MODE_INPUT(GPIOB_PIN2) | \ - PIN_MODE_INPUT(GPIOB_SWO) | \ - PIN_MODE_INPUT(GPIOB_PIN4) | \ - PIN_MODE_INPUT(GPIOB_PIN5) | \ - PIN_MODE_INPUT(GPIOB_LSM303DLHC_SCL) | \ - PIN_MODE_INPUT(GPIOB_PIN7) | \ - PIN_MODE_INPUT(GPIOB_PIN8) | \ - PIN_MODE_INPUT(GPIOB_LSM303DLHC_SDA) | \ - PIN_MODE_INPUT(GPIOB_MP45DT02_CLK_IN) |\ - PIN_MODE_INPUT(GPIOB_PIN11) | \ - PIN_MODE_INPUT(GPIOB_PIN12) | \ - PIN_MODE_INPUT(GPIOB_PIN13) | \ - PIN_MODE_INPUT(GPIOB_PIN14) | \ - PIN_MODE_INPUT(GPIOB_PIN15)) - -#undef VAL_GPIOB_PUPDR -#define VAL_GPIOB_PUPDR (PIN_PUPDR_PULLDOWN(GPIOB_PIN0) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN1) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN2) | \ - PIN_PUPDR_PULLDOWN(GPIOB_SWO) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN4) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN5) | \ - PIN_PUPDR_PULLDOWN(GPIOB_LSM303DLHC_SCL) |\ - PIN_PUPDR_PULLDOWN(GPIOB_PIN7) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN8) | \ - PIN_PUPDR_PULLDOWN(GPIOB_LSM303DLHC_SDA) |\ - PIN_PUPDR_PULLDOWN(GPIOB_MP45DT02_CLK_IN) |\ - PIN_PUPDR_PULLDOWN(GPIOB_PIN11) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN12) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN13) | \ - PIN_PUPDR_PULLUP(GPIOB_PIN14) | \ - PIN_PUPDR_PULLUP(GPIOB_PIN15)) - -#undef VAL_GPIOB_AFRL -#define VAL_GPIOB_AFRL (PIN_AFIO_AF(GPIOB_PIN0, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN1, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN2, 0U) | \ - PIN_AFIO_AF(GPIOB_SWO, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN4, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN5, 0U) | \ - PIN_AFIO_AF(GPIOB_LSM303DLHC_SCL, 0) | \ - PIN_AFIO_AF(GPIOB_PIN7, 0U)) - -#undef VAL_GPIOB_AFRH -#define VAL_GPIOB_AFRH (PIN_AFIO_AF(GPIOB_PIN8, 0U) | \ - PIN_AFIO_AF(GPIOB_LSM303DLHC_SDA, 0) | \ - PIN_AFIO_AF(GPIOB_MP45DT02_CLK_IN, 0U) |\ - PIN_AFIO_AF(GPIOB_PIN11, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN12, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN13, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN14, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN15, 0U)) - -/* C5 Need to be pulldown */ -#undef VAL_GPIOC_MODER -#define VAL_GPIOC_MODER (PIN_MODE_INPUT(GPIOC_OTG_FS_POWER_ON) |\ - PIN_MODE_INPUT(GPIOC_PIN1) | \ - PIN_MODE_INPUT(GPIOC_PIN2) | \ - PIN_MODE_INPUT(GPIOC_CS43L22_AIN4x) | \ - PIN_MODE_INPUT(GPIOC_PIN4) | \ - PIN_MODE_INPUT(GPIOC_PIN5) | \ - PIN_MODE_INPUT(GPIOC_PIN6) | \ - PIN_MODE_INPUT(GPIOC_CS43L22_MCLK) | \ - PIN_MODE_INPUT(GPIOC_PIN8) | \ - PIN_MODE_INPUT(GPIOC_PIN9) | \ - PIN_MODE_INPUT(GPIOC_CS43L22_SCLK) | \ - PIN_MODE_INPUT(GPIOC_PIN11) | \ - PIN_MODE_INPUT(GPIOC_CS43L22_SDIN) | \ - PIN_MODE_INPUT(GPIOC_PIN13) | \ - PIN_MODE_INPUT(GPIOC_OSC32_IN) | \ - PIN_MODE_INPUT(GPIOC_OSC32_OUT)) - -#undef VAL_GPIOC_PUPDR -#define VAL_GPIOC_PUPDR (PIN_PUPDR_PULLUP(GPIOC_OTG_FS_POWER_ON) |\ - PIN_PUPDR_PULLUP(GPIOC_PIN1) | \ - PIN_PUPDR_PULLUP(GPIOC_PIN2) | \ - PIN_PUPDR_PULLUP(GPIOC_CS43L22_AIN4x) |\ - PIN_PUPDR_PULLUP(GPIOC_PIN4) | \ - PIN_PUPDR_PULLDOWN(GPIOC_PIN5) | \ - PIN_PUPDR_PULLDOWN(GPIOC_PIN6) | \ - PIN_PUPDR_PULLUP(GPIOC_CS43L22_MCLK) | \ - PIN_PUPDR_PULLDOWN(GPIOC_PIN8) | \ - PIN_PUPDR_PULLDOWN(GPIOC_PIN9) | \ - PIN_PUPDR_PULLUP(GPIOC_CS43L22_SCLK) | \ - PIN_PUPDR_PULLUP(GPIOC_PIN11) | \ - PIN_PUPDR_PULLUP(GPIOC_CS43L22_SDIN) | \ - PIN_PUPDR_PULLUP(GPIOC_PIN13) | \ - PIN_PUPDR_PULLUP(GPIOC_OSC32_IN) | \ - PIN_PUPDR_PULLUP(GPIOC_OSC32_OUT)) - -/* Set all GPIOD pins to INPUT & PULLUP to avoid FLOATING */ -#undef VAL_GPIOD_MODER -#define VAL_GPIOD_MODER (PIN_MODE_INPUT(GPIOD_PIN0) | \ - PIN_MODE_INPUT(GPIOD_PIN1) | \ - PIN_MODE_INPUT(GPIOD_PIN2) | \ - PIN_MODE_INPUT(GPIOD_PIN3) | \ - PIN_MODE_INPUT(GPIOD_CS43L22_RESET) | \ - PIN_MODE_INPUT(GPIOD_OverCurrent) | \ - PIN_MODE_INPUT(GPIOD_PIN6) | \ - PIN_MODE_INPUT(GPIOD_PIN7) | \ - PIN_MODE_INPUT(GPIOD_PIN8) | \ - PIN_MODE_INPUT(GPIOD_PIN9) | \ - PIN_MODE_INPUT(GPIOD_PIN10) | \ - PIN_MODE_INPUT(GPIOD_PIN11) | \ - PIN_MODE_INPUT(GPIOD_LED4) | \ - PIN_MODE_INPUT(GPIOD_LED3) | \ - PIN_MODE_INPUT(GPIOD_LED5) | \ - PIN_MODE_INPUT(GPIOD_LED6)) - -#undef VAL_GPIOD_PUPDR -#define VAL_GPIOD_PUPDR (PIN_PUPDR_PULLUP(GPIOD_PIN0) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN1) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN2) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN3) | \ - PIN_PUPDR_PULLUP(GPIOD_CS43L22_RESET) |\ - PIN_PUPDR_PULLUP(GPIOD_OverCurrent) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN6) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN7) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN8) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN9) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN10) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN11) | \ - PIN_PUPDR_PULLUP(GPIOD_LED4) | \ - PIN_PUPDR_PULLUP(GPIOD_LED3) | \ - PIN_PUPDR_PULLUP(GPIOD_LED5) | \ - PIN_PUPDR_PULLUP(GPIOD_LED6)) - -/* Set all GPIOE pins to INPUT & PULLUP to avoid FLOATING */ -#undef VAL_GPIOE_MODER -#define VAL_GPIOE_MODER (PIN_MODE_INPUT(GPIOE_L3GD20_INT1) | \ - PIN_MODE_INPUT(GPIOE_L3GD20_INT2) | \ - PIN_MODE_INPUT(GPIOE_LSM303DLHC_DRDY) |\ - PIN_MODE_INPUT(GPIOE_L3GD20_CS) | \ - PIN_MODE_INPUT(GPIOE_LSM303DLHC_INT1) |\ - PIN_MODE_INPUT(GPIOE_LSM303DLHC_INT2) |\ - PIN_MODE_INPUT(GPIOE_PIN6) | \ - PIN_MODE_INPUT(GPIOE_PIN7) | \ - PIN_MODE_INPUT(GPIOE_PIN8) | \ - PIN_MODE_INPUT(GPIOE_PIN9) | \ - PIN_MODE_INPUT(GPIOE_PIN10) | \ - PIN_MODE_INPUT(GPIOE_PIN11) | \ - PIN_MODE_INPUT(GPIOE_PIN12) | \ - PIN_MODE_INPUT(GPIOE_PIN13) | \ - PIN_MODE_INPUT(GPIOE_PIN14) | \ - PIN_MODE_INPUT(GPIOE_PIN15)) - -#undef VAL_GPIOE_PUPDR -#define VAL_GPIOE_PUPDR (PIN_PUPDR_PULLUP(GPIOE_L3GD20_INT1) | \ - PIN_PUPDR_PULLUP(GPIOE_L3GD20_INT2) | \ - PIN_PUPDR_PULLUP(GPIOE_LSM303DLHC_DRDY) |\ - PIN_PUPDR_PULLUP(GPIOE_L3GD20_CS) | \ - PIN_PUPDR_PULLUP(GPIOE_LSM303DLHC_INT1) |\ - PIN_PUPDR_PULLUP(GPIOE_LSM303DLHC_INT2) |\ - PIN_PUPDR_PULLUP(GPIOE_PIN6) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN7) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN8) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN9) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN10) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN11) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN12) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN13) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN14) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN15)) diff --git a/keyboards/keychron/k10_pro_se2/config.h b/keyboards/keychron/k10_pro_se2/config.h deleted file mode 100644 index ebb52f9fb8..0000000000 --- a/keyboards/keychron/k10_pro_se2/config.h +++ /dev/null @@ -1,57 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#pragma once - -#define MAC_LOCK_SCREEN_ENABLE -#define WIN_LOCK_SCREEN_ENABLE - -#ifdef LK_WIRELESS_ENABLE -# define SPI_SCK_PIN A5 -# define SPI_MISO_PIN A6 -# define SPI_MOSI_PIN A7 -# define SPI_DRIVER SPID1 - -/* Hardware configuration */ -# define P2P4_MODE_SELECT_PIN A9 -// # define USB_MODE_SELECT_PIN A9 -# define BT_MODE_SELECT_PIN A10 - -# define LKBT51_RESET_PIN C4 -# define LKBT51_INT_INPUT_PIN B1 -# define BLUETOOTH_INT_OUTPUT_PIN A4 - -# define USB_POWER_SENSE_PIN B0 -# define USB_POWER_CONNECTED_LEVEL 0 - -# define BAT_CHARGING_PIN B13 -# define BAT_CHARGING_LEVEL 0 - -# define BAT_LOW_LED_PIN C5 -# define BAT_LOW_LED_PIN_ON_STATE 1 - -# define COMMON_BT_LED_PIN B15 -# define COMMON_P24G_LED_PIN B14 -# define COMMON_BT_LED_PIN_ON_STATE 0 - -/* Keep USB connection in blueooth mode */ -# define KEEP_USB_CONNECTION_IN_WIRELESS_MODE - -/* Enable bluetooth NKRO */ -# define WIRELESS_NKRO_ENABLE -#endif - -#define MATRIX_IO_DELAY 10 diff --git a/keyboards/keychron/k10_pro_se2/halconf.h b/keyboards/keychron/k10_pro_se2/halconf.h deleted file mode 100644 index be6b5564c0..0000000000 --- a/keyboards/keychron/k10_pro_se2/halconf.h +++ /dev/null @@ -1,28 +0,0 @@ -/* Copyright 2024 @ 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 - -#define _CHIBIOS_HAL_CONF_VER_8_0_ - -#define HAL_USE_SPI TRUE - -#ifdef LK_WIRELESS_ENABLE -# define HAL_USE_RTC TRUE -# define PAL_USE_CALLBACKS TRUE -#endif - -#include_next diff --git a/keyboards/keychron/k10_pro_se2/info.json b/keyboards/keychron/k10_pro_se2/info.json deleted file mode 100644 index 9435381163..0000000000 --- a/keyboards/keychron/k10_pro_se2/info.json +++ /dev/null @@ -1,157 +0,0 @@ -{ - "keyboard_name": "Keychron K10 Pro SE2", - "manufacturer": "Keychron", - "url": "https://github.com/Keychron", - "maintainer": "Keychron", - "processor": "STM32F401", - "bootloader": "stm32-dfu", - "usb": { - "vid": "0x3434" - }, - "features": { - "bootmagic": true, - "extrakey": true, - "mousekey": true, - "dip_switch": true, - "nkro": true, - "raw": true, - "sendstring": true - }, - "diode_direction": "ROW2COL", - "dip_switch" :{ - "pins": ["B12"] - }, - "dynamic_keymap": { - "layer_count": 4 - }, - "eeprom": { - "wear_leveling": { - "driver": "embedded_flash", - "logical_size": 2048, - "backing_size": 4096 - } - }, - "indicators": { - "caps_lock": "C9", - "num_lock": "B2", - "on_state": 1 - }, - "matrix_pins": { - "cols": ["C6", "C7", "C8", "A13", "A14", "A15", "C10", "C11", "C13", "C14", "C15", "C0", "C1", "C2", "C3", "A0", "A1", "A2", "A3", "B10"], - "rows": ["C12", "D2", "B3", "B4", "B5", "B6"] - }, - "layouts": { - "LAYOUT_ansi_108": { - "layout": [ - {"matrix": [0, 0], "x": 0, "y": 0}, - {"matrix": [0, 2], "x": 2.25, "y": 0}, - {"matrix": [0, 3], "x": 3.25, "y": 0}, - {"matrix": [0, 4], "x": 4.25, "y": 0}, - {"matrix": [0, 5], "x": 5.5, "y": 0}, - {"matrix": [0, 6], "x": 6.5, "y": 0}, - {"matrix": [0, 7], "x": 7.5, "y": 0}, - {"matrix": [0, 8], "x": 8.5, "y": 0}, - {"matrix": [0, 9], "x": 9.75, "y": 0}, - {"matrix": [0, 10], "x": 10.75, "y": 0}, - {"matrix": [0, 11], "x": 11.75, "y": 0}, - {"matrix": [0, 12], "x": 12.75, "y": 0}, - {"matrix": [0, 13], "x": 14, "y": 0}, - {"matrix": [0, 14], "x": 15.25, "y": 0}, - {"matrix": [0, 15], "x": 16.25, "y": 0}, - {"matrix": [0, 16], "x": 17.25, "y": 0}, - {"matrix": [0, 17], "x": 18.5, "y": 0}, - {"matrix": [0, 18], "x": 19.5, "y": 0}, - {"matrix": [0, 19], "x": 20.5, "y": 0}, - {"matrix": [3, 13], "x": 21.5, "y": 0}, - {"matrix": [1, 0], "x": 0, "y": 1.25}, - {"matrix": [1, 1], "x": 1, "y": 1.25}, - {"matrix": [1, 2], "x": 2, "y": 1.25}, - {"matrix": [1, 3], "x": 3, "y": 1.25}, - {"matrix": [1, 4], "x": 4, "y": 1.25}, - {"matrix": [1, 5], "x": 5, "y": 1.25}, - {"matrix": [1, 6], "x": 6, "y": 1.25}, - {"matrix": [1, 7], "x": 7, "y": 1.25}, - {"matrix": [1, 8], "x": 8, "y": 1.25}, - {"matrix": [1, 9], "x": 9, "y": 1.25}, - {"matrix": [1, 10], "x": 10, "y": 1.25}, - {"matrix": [1, 11], "x": 11, "y": 1.25}, - {"matrix": [1, 12], "x": 12, "y": 1.25}, - {"matrix": [1, 13], "x": 13, "y": 1.25, "w": 2}, - {"matrix": [1, 14], "x": 15.25, "y": 1.25}, - {"matrix": [1, 15], "x": 16.25, "y": 1.25}, - {"matrix": [1, 16], "x": 17.25, "y": 1.25}, - {"matrix": [1, 17], "x": 18.5, "y": 1.25}, - {"matrix": [1, 18], "x": 19.5, "y": 1.25}, - {"matrix": [1, 19], "x": 20.5, "y": 1.25}, - {"matrix": [3, 14], "x": 21.5, "y": 1.25}, - {"matrix": [2, 0], "x": 0, "y": 2.25, "w": 1.5}, - {"matrix": [2, 1], "x": 1.5, "y": 2.25}, - {"matrix": [2, 2], "x": 2.5, "y": 2.25}, - {"matrix": [2, 3], "x": 3.5, "y": 2.25}, - {"matrix": [2, 4], "x": 4.5, "y": 2.25}, - {"matrix": [2, 5], "x": 5.5, "y": 2.25}, - {"matrix": [2, 6], "x": 6.5, "y": 2.25}, - {"matrix": [2, 7], "x": 7.5, "y": 2.25}, - {"matrix": [2, 8], "x": 8.5, "y": 2.25}, - {"matrix": [2, 9], "x": 9.5, "y": 2.25}, - {"matrix": [2, 10], "x": 10.5, "y": 2.25}, - {"matrix": [2, 11], "x": 11.5, "y": 2.25}, - {"matrix": [2, 12], "x": 12.5, "y": 2.25}, - {"matrix": [2, 13], "x": 13.5, "y": 2.25, "w": 1.5}, - {"matrix": [2, 14], "x": 15.25, "y": 2.25}, - {"matrix": [2, 15], "x": 16.25, "y": 2.25}, - {"matrix": [2, 16], "x": 17.25, "y": 2.25}, - {"matrix": [2, 17], "x": 18.5, "y": 2.25}, - {"matrix": [2, 18], "x": 19.5, "y": 2.25}, - {"matrix": [2, 19], "x": 20.5, "y": 2.25}, - {"matrix": [3, 0], "x": 0, "y": 3.25, "w": 1.75}, - {"matrix": [3, 1], "x": 1.75, "y": 3.25}, - {"matrix": [3, 2], "x": 2.75, "y": 3.25}, - {"matrix": [3, 3], "x": 3.75, "y": 3.25}, - {"matrix": [3, 4], "x": 4.75, "y": 3.25}, - {"matrix": [3, 5], "x": 5.75, "y": 3.25}, - {"matrix": [3, 6], "x": 6.75, "y": 3.25}, - {"matrix": [3, 7], "x": 7.75, "y": 3.25}, - {"matrix": [3, 8], "x": 8.75, "y": 3.25}, - {"matrix": [3, 9], "x": 9.75, "y": 3.25}, - {"matrix": [3, 10], "x": 10.75, "y": 3.25}, - {"matrix": [3, 11], "x": 11.75, "y": 3.25}, - {"matrix": [3, 12], "x": 12.75, "y": 3.25, "w": 2.25}, - {"matrix": [3, 17], "x": 18.5, "y": 3.25}, - {"matrix": [3, 18], "x": 19.5, "y": 3.25}, - {"matrix": [3, 19], "x": 20.5, "y": 3.25}, - {"matrix": [3, 15], "x": 21.5, "y": 2.25, "h": 2}, - {"matrix": [4, 0], "x": 0, "y": 4.25, "w": 2.25}, - {"matrix": [4, 2], "x": 2.25, "y": 4.25}, - {"matrix": [4, 3], "x": 3.25, "y": 4.25}, - {"matrix": [4, 4], "x": 4.25, "y": 4.25}, - {"matrix": [4, 5], "x": 5.25, "y": 4.25}, - {"matrix": [4, 6], "x": 6.25, "y": 4.25}, - {"matrix": [4, 7], "x": 7.25, "y": 4.25}, - {"matrix": [4, 8], "x": 8.25, "y": 4.25}, - {"matrix": [4, 9], "x": 9.25, "y": 4.25}, - {"matrix": [4, 10], "x": 10.25, "y": 4.25}, - {"matrix": [4, 11], "x": 11.25, "y": 4.25}, - {"matrix": [4, 13], "x": 12.25, "y": 4.25, "w": 2.75}, - {"matrix": [4, 15], "x": 16.25, "y": 4.25}, - {"matrix": [4, 17], "x": 18.5, "y": 4.25}, - {"matrix": [4, 18], "x": 19.5, "y": 4.25}, - {"matrix": [4, 19], "x": 20.5, "y": 4.25}, - {"matrix": [5, 0], "x": 0, "y": 5.25, "w": 1.25}, - {"matrix": [5, 1], "x": 1.25, "y": 5.25, "w": 1.25}, - {"matrix": [5, 2], "x": 2.5, "y": 5.25, "w": 1.25}, - {"matrix": [5, 6], "x": 3.75, "y": 5.25, "w": 6.25}, - {"matrix": [5, 10], "x": 10, "y": 5.25, "w": 1.25}, - {"matrix": [5, 11], "x": 11.25, "y": 5.25, "w": 1.25}, - {"matrix": [5, 12], "x": 12.5, "y": 5.25, "w": 1.25}, - {"matrix": [5, 13], "x": 13.75, "y": 5.25, "w": 1.25}, - {"matrix": [5, 14], "x": 15.25, "y": 5.25}, - {"matrix": [5, 15], "x": 16.25, "y": 5.25}, - {"matrix": [5, 16], "x": 17.25, "y": 5.25}, - {"matrix": [5, 18], "x": 18.5, "y": 5.25, "w": 2}, - {"matrix": [5, 19], "x": 20.5, "y": 5.25}, - {"matrix": [3, 16], "x": 21.5, "y": 4.25, "h": 2} - ] - } - } -} diff --git a/keyboards/keychron/k10_pro_se2/k10_pro_se2.c b/keyboards/keychron/k10_pro_se2/k10_pro_se2.c deleted file mode 100644 index 2ffd456f17..0000000000 --- a/keyboards/keychron/k10_pro_se2/k10_pro_se2.c +++ /dev/null @@ -1,215 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#include "quantum.h" -#include "keychron_task.h" -#ifdef FACTORY_TEST_ENABLE -# include "factory_test.h" -# include "keychron_common.h" -#endif -#ifdef LK_WIRELESS_ENABLE -# include "lkbt51.h" -# include "wireless.h" -# include "transport.h" -# include "keychron_wireless_common.h" -# include "battery.h" -#endif - -#define POWER_ON_LED_DURATION 3000 -static uint32_t power_on_indicator_timer; - -#ifdef LK_WIRELESS_ENABLE -pin_t bt_led_pins[] = BT_HOST_LED_PIN_LIST; -pin_t p24g_led_pins[] = P24G_HOST_LED_PIN_LIST; -#endif - -bool dip_switch_update_kb(uint8_t index, bool active) { - if (index == 0) { - default_layer_set(1UL << (active ? 0 : 2)); - } - dip_switch_update_user(index, active); - - return true; -} - -void keyboard_post_init_kb(void) { -#ifdef LK_WIRELESS_ENABLE - palSetLineMode(BT_MODE_SELECT_PIN, PAL_MODE_INPUT); -# ifdef P2P4_MODE_SELECT_PIN - palSetLineMode(P2P4_MODE_SELECT_PIN, PAL_MODE_INPUT); -# elif defined(USB_MODE_SELECT_PIN) - palSetLineMode(USB_MODE_SELECT_PIN, PAL_MODE_INPUT); -# endif - - lkbt51_init(false); - wireless_init(); -#endif - - power_on_indicator_timer = timer_read32(); - keyboard_post_init_user(); -} - -bool keychron_task_kb(void) { - if (power_on_indicator_timer) { - if (timer_elapsed32(power_on_indicator_timer) > POWER_ON_LED_DURATION) { - power_on_indicator_timer = 0; - - if (!host_keyboard_led_state().caps_lock) writePin(LED_CAPS_LOCK_PIN, !LED_PIN_ON_STATE); -#ifdef LK_WIRELESS_ENABLE - writePin(BAT_LOW_LED_PIN, !BAT_LOW_LED_PIN_ON_STATE); - writePin(COMMON_BT_LED_PIN, !COMMON_BT_LED_PIN_ON_STATE); - writePin(COMMON_P24G_LED_PIN, !COMMON_BT_LED_PIN_ON_STATE); - if (get_transport() == TRANSPORT_USB) { - for (uint8_t i = 0; i < sizeof(bt_led_pins) / sizeof(pin_t); i++) - writePin(bt_led_pins[i], !HOST_LED_PIN_ON_STATE); - for (uint8_t i = 0; i < sizeof(p24g_led_pins) / sizeof(pin_t); i++) - writePin(p24g_led_pins[i], !HOST_LED_PIN_ON_STATE); - } -#endif - } else { - writePin(LED_CAPS_LOCK_PIN, LED_PIN_ON_STATE); -#ifdef LK_WIRELESS_ENABLE - writePin(BAT_LOW_LED_PIN, BAT_LOW_LED_PIN_ON_STATE); - switch (get_transport()) { - case TRANSPORT_P2P4: - writePin(COMMON_P24G_LED_PIN, COMMON_BT_LED_PIN_ON_STATE); - break; - case TRANSPORT_BLUETOOTH: - writePin(COMMON_BT_LED_PIN, COMMON_BT_LED_PIN_ON_STATE); - break; - default: - writePin(COMMON_P24G_LED_PIN, COMMON_BT_LED_PIN_ON_STATE); - writePin(COMMON_BT_LED_PIN, COMMON_BT_LED_PIN_ON_STATE); - for (uint8_t i = 0; i < sizeof(bt_led_pins) / sizeof(pin_t); i++) - writePin(bt_led_pins[i], HOST_LED_PIN_ON_STATE); - for (uint8_t i = 0; i < sizeof(p24g_led_pins) / sizeof(pin_t); i++) - writePin(p24g_led_pins[i], HOST_LED_PIN_ON_STATE); - break; - } -#endif - } - } - - return true; -} - -#ifdef LK_WIRELESS_ENABLE -bool lpm_is_kb_idle(void) { - return power_on_indicator_timer == 0 && !factory_reset_indicating(); -} -#endif -#if 0 -bool wireless_pre_task_kb(void) { -# ifdef TRANSPORT_SOFT_SWITCH_ENABLE - if (get_transport() == 0) { - uint8_t mode = eeprom_read_transport(); - if (mode == 0) { - mode = TRANSPORT_USB; - eeprom_update_transport(mode); - } - - set_transport(mode); - } -# else - static uint8_t dip_switch_state = 0; - static uint32_t time = 0; - - if (time == 0) { - uint8_t pins_state = (readPin(BT_MODE_SELECT_PIN) << 1) -# ifdef P2P4_MODE_SELECT_PIN - | readPin(P2P4_MODE_SELECT_PIN) -# elif defined(USB_MODE_SELECT_PIN) - | readPin(USB_MODE_SELECT_PIN) -# endif - ; - - if (pins_state != dip_switch_state) { - dip_switch_state = pins_state; - time = timer_read32(); - } - } - - if ((time && timer_elapsed32(time) > 100) || get_transport() == TRANSPORT_NONE) { - uint8_t pins_state = (readPin(BT_MODE_SELECT_PIN) << 1) -# ifdef P2P4_MODE_SELECT_PIN - | readPin(P2P4_MODE_SELECT_PIN) -# elif defined(USB_MODE_SELECT_PIN) - | readPin(USB_MODE_SELECT_PIN) -# endif - ; - - if (pins_state == dip_switch_state) { - time = 0; - - switch (dip_switch_state) { - case 0x01: - set_transport(TRANSPORT_BLUETOOTH); - break; - case 0x02: -# ifdef P2P4_MODE_SELECT_PIN - set_transport(TRANSPORT_P2P4); -# elif defined(USB_MODE_SELECT_PIN) - set_transport(TRANSPORT_USB); -# endif - break; - case 0x03: -# ifdef P2P4_MODE_SELECT_PIN - set_transport(TRANSPORT_USB); -# endif - break; - default: - break; - } - } else { - dip_switch_state = pins_state; - time = timer_read32(); - } - } -# endif - return false; -} -#endif -#if 0 -void wireless_pre_task(void) { - static uint8_t dip_switch_state = 0; - static uint32_t time = 0; - - if (time == 0) { - uint8_t pins_state = (readPin(BT_MODE_SELECT_PIN) << 1); - - if (pins_state != dip_switch_state) { - dip_switch_state = pins_state; - time = timer_read32(); - } - } - - if ((time && timer_elapsed32(time) > 100) || get_transport() == TRANSPORT_NONE) { - uint8_t pins_state = (readPin(BT_MODE_SELECT_PIN) << 1); - - if (pins_state == dip_switch_state) { - time = 0; - - if (pins_state == 0) - set_transport(TRANSPORT_BLUETOOTH); - else - set_transport(TRANSPORT_USB); - } else { - dip_switch_state = pins_state; - time = timer_read32(); - } - } -} -#endif diff --git a/keyboards/keychron/k10_pro_se2/mcuconf.h b/keyboards/keychron/k10_pro_se2/mcuconf.h deleted file mode 100644 index a616c82cdf..0000000000 --- a/keyboards/keychron/k10_pro_se2/mcuconf.h +++ /dev/null @@ -1,37 +0,0 @@ -/* Copyright 2024 @ lokher (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 . - */ - -#pragma once - -#include_next - -#undef STM32_HSECLK -#define STM32_HSECLK 16000000 - -#undef STM32_PLLM_VALUE -#define STM32_PLLM_VALUE 8 - -#undef STM32_PLLN_VALUE -#define STM32_PLLN_VALUE 96 - -#undef STM32_PLLP_VALUE -#define STM32_PLLP_VALUE 4 - -#undef STM32_PLLQ_VALUE -#define STM32_PLLQ_VALUE 4 - -#undef STM32_SPI_USE_SPI1 -#define STM32_SPI_USE_SPI1 TRUE diff --git a/keyboards/keychron/k10_pro_se2/readme.md b/keyboards/keychron/k10_pro_se2/readme.md deleted file mode 100644 index 1634da4948..0000000000 --- a/keyboards/keychron/k10_pro_se2/readme.md +++ /dev/null @@ -1,23 +0,0 @@ -# Keychron K10 Pro SE2 - -![Keychron K10 Pro SE2](https://cdn.shopify.com/s/files/1/0059/0630/1017/files/K10-Max-1.jpg?v=1722492751) - -A customizable 108 keys TKL keyboard. - -* Keyboard Maintainer: [Keychron](https://github.com/keychron) -* Hardware Supported: Keychron K10 Pro SE2 -* Hardware Availability: [Keychron](https://www.keychron.com/) - -Make example for this keyboard (after setting up your build environment): - - make keychron/k10_pro_se2/ansi/rgb:default - make keychron/k10_pro_se2/ansi/white:default - -Flashing example for this keyboard: - - make keychron/k10_pro_se2/ansi/rgb:default:flash - make keychron/k10_pro_se2/ansi/white:default:flash - -**Reset Key**: Toggle mode switch to "Cable", hold down the *Esc* key or reset button underneath space bar while connecting the USB cable, - -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). diff --git a/keyboards/keychron/k10_pro_se2/rules.mk b/keyboards/keychron/k10_pro_se2/rules.mk deleted file mode 100644 index 4eaf6820bc..0000000000 --- a/keyboards/keychron/k10_pro_se2/rules.mk +++ /dev/null @@ -1,4 +0,0 @@ -include keyboards/keychron/common/wireless/wireless.mk -include keyboards/keychron/common/keychron_common.mk - -VPATH += $(TOP_DIR)/keyboards/keychron diff --git a/keyboards/keychron/k10_pro_se2/via_json/k10_pro_se2_ansi.json b/keyboards/keychron/k10_pro_se2/via_json/k10_pro_se2_ansi.json deleted file mode 100644 index dff113e8af..0000000000 --- a/keyboards/keychron/k10_pro_se2/via_json/k10_pro_se2_ansi.json +++ /dev/null @@ -1,285 +0,0 @@ -{ - "name": "Keychron K10 Pro SE2", - "vendorId": "0x3434", - "productId": "0x0AAA", - "customKeycodes": [ - {"name": "Left Option", "title": "Left Option", "shortName": "LOpt"}, - {"name": "Right Option", "title": "Right Option", "shortName": "ROpt"}, - {"name": "Left Cmd", "title": "Left Command", "shortName": "LCmd"}, - {"name": "Right Cmd", "title": "Right Command", "shortName": "RCmd"}, - {"name": "Misson Control", "title": "Misson Control in Mac", "shortName": "MCtl"}, - {"name": "Lanuch Pad", "title": "Lanuch Pad in Windows", "shortName": "LPad"}, - {"name": "Task View", "title": "Task View in Windows", "shortName": "Task"}, - {"name": "File Explorer", "title": "File Explorer in Windows", "shortName": "File"}, - {"name": "Screen shot", "title": "Screenshot in macOS", "shortName": "SShot"}, - {"name": "Cortana", "title": "Cortana in Windows", "shortName": "Cortana"}, - {"name": "Lock Sreen(Win)", "title": "Lock Screen in Windows", "shortName": "WLock"}, - {"name": "Lock Sreen(Mac)", "title": "Lock Screen in Mac", "shortName": "MLock"}, - {"name": "Siri", "title": "Siri in macOS", "shortName": "Siri"}, - {"name": "Bluetooth Host 1", "title": "Bluetooth Host 1", "shortName": "BTH1"}, - {"name": "Bluetooth Host 2", "title": "Bluetooth Host 2", "shortName": "BTH2"}, - {"name": "Bluetooth Host 3", "title": "Bluetooth Host 3", "shortName": "BTH3"}, - {"name": "2.4G", "title": "2.4G", "shortName": "2.4G"}, - {"name": "Battery Level", "title": "Show battery level", "shortName": "Batt"} - ], - "matrix": {"rows": 6, "cols" : 20}, - "layouts": { - "keymap": [ - [ - { - "c": "#777777" - }, - "0, 0", - { - "x": 1, - "c": "#aaaaaa" - }, - "0, 2", - "0, 3", - "0, 4", - "0, 5", - { - "x": 0.5, - "c": "#cccccc" - }, - "0, 6", - "0, 7", - "0, 8", - "0, 9", - { - "x": 0.5, - "c": "#aaaaaa" - }, - "0, 10", - "0, 11", - "0, 12", - "0, 13", - { - "x": 0.25, - "c": "#cccccc" - }, - "0, 14", - "0, 15", - "0, 16", - { - "x": 0.25, - "c": "#aaaaaa" - }, - "0, 17", - "0, 18", - "0, 19", - "3, 13" - ], - [ - { - "y": 0.25, - "c": "#cccccc" - }, - "1, 0", - { - "c": "#aaaaaa" - }, - "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": 2, - "c": "#cccccc" - }, - "1, 13", - { - "x": 0.25 - }, - "1, 14", - "1, 15", - "1, 16", - { - "x": 0.25, - "c": "#aaaaaa" - }, - "1, 17", - "1, 18", - "1, 19", - "3, 14" - ], - [ - { - "w": 1.5, - "c": "#cccccc" - }, - "2, 0", - { - "c": "#aaaaaa" - }, - "2, 1", - "2, 2", - "2, 3", - "2, 4", - "2, 5", - "2, 6", - "2, 7", - "2, 8", - "2, 9", - "2, 10", - "2, 11", - "2, 12", - { - "w": 1.5, - "c": "#cccccc" - }, - "2, 13", - { - "x": 0.25 - }, - "2, 14", - "2, 15", - "2, 16", - { - "x": 0.25, - "c": "#aaaaaa" - }, - "2, 17", - "2, 18", - "2, 19", - { - "h": 2, - "c": "#aaaaaa" - }, - "3, 15" - ], - [ - { - "w": 1.75, - "c": "#cccccc" - }, - "3, 0", - { - "c": "#aaaaaa" - }, - "3, 1", - "3, 2", - "3, 3", - "3, 4", - "3, 5", - "3, 6", - "3, 7", - "3, 8", - "3, 9", - "3, 10", - "3, 11", - { - "w": 2.25, - "c": "#777777" - }, - "3, 12", - { - "x": 3.5, - "c": "#aaaaaa" - }, - "3, 17", - "3, 18", - "3, 19" - ], - [ - { - "w": 2.25, - "c": "#cccccc" - }, - "4, 0", - { - "c": "#aaaaaa" - }, - "4, 2", - "4, 3", - "4, 4", - "4, 5", - "4, 6", - "4, 7", - "4, 8", - "4, 9", - "4, 10", - "4, 11", - { - "w": 2.75, - "c": "#cccccc" - }, - "4, 13", - { - "x": 1.25, - "c": "#aaaaaa" - }, - "4, 15", - { - "x": 1.25 - }, - "4, 17", - "4, 18", - "4, 19", - { - "h": 2 - }, - "3, 16" - ], - [ - { - "w": 1.25, - "c": "#cccccc" - }, - "5, 0", - { - "w": 1.25 - }, - "5, 1", - { - "w": 1.25 - }, - "5, 2", - { - "w": 6.25, - "c": "#aaaaaa" - }, - "5, 6", - { - "w": 1.25, - "c": "#cccccc" - }, - "5, 10", - { - "w": 1.25 - }, - "5, 11", - { - "w": 1.25, - "c": "#cccccc" - }, - "5, 12", - { - "w": 1.25 - }, - "5, 13", - { - "x": 0.25, - "c": "#aaaaaa" - }, - "5, 14", - "5, 15", - "5, 16", - { - "x": 0.25, - "w": 2 - }, - "5, 18", - "5, 19" - ] - ] - } - } \ No newline at end of file diff --git a/keyboards/keychron/k11_max/ansi_encoder/rgb/config.h b/keyboards/keychron/k11_max/ansi_encoder/rgb/config.h deleted file mode 100644 index ab67456d00..0000000000 --- a/keyboards/keychron/k11_max/ansi_encoder/rgb/config.h +++ /dev/null @@ -1,57 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#pragma once - -#ifdef RGB_MATRIX_ENABLE -/* RGB Matrix driver configuration */ -# define DRIVER_COUNT 2 -# define RGB_MATRIX_LED_COUNT 68 - -# define SPI_SCK_PIN A5 -# define SPI_MISO_PIN A6 -# define SPI_MOSI_PIN A7 - -# define DRIVER_CS_PINS \ - { B8, B9 } -# define SNLED23751_SPI_DIVISOR 16 -# define SPI_DRIVER SPID1 - -/* Scan phase of led driver set as MSKPHASE_12CHANNEL(defined as 0x03 in snled27351.h) */ -# define SNLED27351_PHASE_CHANNEL MSKPHASE_12CHANNEL - -/* Set LED driver current */ -# define SNLED27351_CURRENT_TUNE \ - { 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20 } - -/* Set to infinit, which is use in USB mode by default */ -# define RGB_MATRIX_TIMEOUT RGB_MATRIX_TIMEOUT_INFINITE - -/* Allow shutdown of led driver to save power */ -# define RGB_MATRIX_DRIVER_SHUTDOWN_ENABLE -/* Turn off backlight on low brightness to save power */ -# define RGB_MATRIX_BRIGHTNESS_TURN_OFF_VAL 48 - -/* Indications */ -# define DIM_CAPS_LOCK -# define CAPS_LOCK_INDEX 29 -# define LOW_BAT_IND_INDEX \ - { 60, 63 } - -# define RGB_MATRIX_KEYPRESSES -# define RGB_MATRIX_FRAMEBUFFER_EFFECTS - -#endif diff --git a/keyboards/keychron/k11_max/ansi_encoder/rgb/info.json b/keyboards/keychron/k11_max/ansi_encoder/rgb/info.json deleted file mode 100644 index 6b3ea7f118..0000000000 --- a/keyboards/keychron/k11_max/ansi_encoder/rgb/info.json +++ /dev/null @@ -1,36 +0,0 @@ -{ - "usb": { - "pid": "0x0AB3", - "device_version": "1.0.0" - }, - "features": { - "rgb_matrix": true - }, - "rgb_matrix": { - "driver": "snled27351_spi", - "sleep": true, - "animations": { - "band_spiral_val": true, - "breathing": true, - "cycle_all": true, - "cycle_left_right": true, - "cycle_out_in": true, - "cycle_out_in_dual": true, - "cycle_pinwheel": true, - "cycle_spiral": true, - "cycle_up_down": true, - "digital_rain": true, - "dual_beacon": true, - "jellybean_raindrops": true, - "pixel_rain": true, - "rainbow_beacon": true, - "rainbow_moving_chevron": true, - "solid_reactive_multinexus": true, - "solid_reactive_multiwide": true, - "solid_reactive_simple": true, - "solid_splash": true, - "splash": true, - "typing_heatmap": true - } - } -} diff --git a/keyboards/keychron/k11_max/ansi_encoder/rgb/keymaps/default/keymap.c b/keyboards/keychron/k11_max/ansi_encoder/rgb/keymaps/default/keymap.c deleted file mode 100644 index 2251a38b2d..0000000000 --- a/keyboards/keychron/k11_max/ansi_encoder/rgb/keymaps/default/keymap.c +++ /dev/null @@ -1,82 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#include QMK_KEYBOARD_H -#include "keychron_common.h" - -enum layers{ - MAC_BASE, - WIN_BASE, - MAC_FN1, - WIN_FN1, - FN2, -}; - -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_69_ansi( - 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_MUTE, - 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_DEL, - 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_HOME, - KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, - KC_LCTL, KC_LOPTN, KC_LCMMD, KC_SPC, MO(MAC_FN1), MO(FN2), KC_SPC, KC_RCMMD, KC_LEFT, KC_DOWN, KC_RGHT), - - [WIN_BASE] = LAYOUT_69_ansi( - 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_MUTE, - 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_DEL, - 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_HOME, - KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, - KC_LCTL, KC_LWIN, KC_LALT, KC_SPC, MO(WIN_FN1), MO(FN2), KC_SPC, KC_RALT, KC_LEFT, KC_DOWN, KC_RGHT), - - [MAC_FN1] = LAYOUT_69_ansi( - KC_GRV, KC_BRID, KC_BRIU, KC_MCTRL, KC_LNPAD,RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, RGB_TOG, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_INS, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, KC_END, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, NK_TOGG, _______, _______, _______, _______, _______, KC_PGUP, - _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_PGDN, _______), - - [WIN_FN1] = LAYOUT_69_ansi( - KC_GRV, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, RGB_TOG, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_INS, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, KC_END, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, NK_TOGG, _______, _______, _______, _______, _______, KC_PGUP, - _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_PGDN, _______), - - [FN2] = LAYOUT_69_ansi( - KC_TILD, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, BAT_LVL, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______) -}; - -#if defined(ENCODER_MAP_ENABLE) - const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][2] = { - [MAC_BASE] = {ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [WIN_BASE] = {ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [MAC_FN1] = {ENCODER_CCW_CW(RGB_VAD, RGB_VAI)}, - [WIN_FN1] = {ENCODER_CCW_CW(RGB_VAD, RGB_VAI)}, - [FN2] = {ENCODER_CCW_CW(_______, _______)}, - }; -#endif // ENCODER_MAP_ENABLE - -// clang-format on -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - if (!process_record_keychron_common(keycode, record)) { - return false; - } - return true; -} diff --git a/keyboards/keychron/k11_max/ansi_encoder/rgb/keymaps/via/keymap.c b/keyboards/keychron/k11_max/ansi_encoder/rgb/keymaps/via/keymap.c deleted file mode 100644 index 2251a38b2d..0000000000 --- a/keyboards/keychron/k11_max/ansi_encoder/rgb/keymaps/via/keymap.c +++ /dev/null @@ -1,82 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#include QMK_KEYBOARD_H -#include "keychron_common.h" - -enum layers{ - MAC_BASE, - WIN_BASE, - MAC_FN1, - WIN_FN1, - FN2, -}; - -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_69_ansi( - 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_MUTE, - 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_DEL, - 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_HOME, - KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, - KC_LCTL, KC_LOPTN, KC_LCMMD, KC_SPC, MO(MAC_FN1), MO(FN2), KC_SPC, KC_RCMMD, KC_LEFT, KC_DOWN, KC_RGHT), - - [WIN_BASE] = LAYOUT_69_ansi( - 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_MUTE, - 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_DEL, - 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_HOME, - KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, - KC_LCTL, KC_LWIN, KC_LALT, KC_SPC, MO(WIN_FN1), MO(FN2), KC_SPC, KC_RALT, KC_LEFT, KC_DOWN, KC_RGHT), - - [MAC_FN1] = LAYOUT_69_ansi( - KC_GRV, KC_BRID, KC_BRIU, KC_MCTRL, KC_LNPAD,RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, RGB_TOG, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_INS, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, KC_END, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, NK_TOGG, _______, _______, _______, _______, _______, KC_PGUP, - _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_PGDN, _______), - - [WIN_FN1] = LAYOUT_69_ansi( - KC_GRV, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, RGB_TOG, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_INS, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, KC_END, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, NK_TOGG, _______, _______, _______, _______, _______, KC_PGUP, - _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_PGDN, _______), - - [FN2] = LAYOUT_69_ansi( - KC_TILD, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, BAT_LVL, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______) -}; - -#if defined(ENCODER_MAP_ENABLE) - const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][2] = { - [MAC_BASE] = {ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [WIN_BASE] = {ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [MAC_FN1] = {ENCODER_CCW_CW(RGB_VAD, RGB_VAI)}, - [WIN_FN1] = {ENCODER_CCW_CW(RGB_VAD, RGB_VAI)}, - [FN2] = {ENCODER_CCW_CW(_______, _______)}, - }; -#endif // ENCODER_MAP_ENABLE - -// clang-format on -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - if (!process_record_keychron_common(keycode, record)) { - return false; - } - return true; -} diff --git a/keyboards/keychron/k11_max/ansi_encoder/rgb/keymaps/via/rules.mk b/keyboards/keychron/k11_max/ansi_encoder/rgb/keymaps/via/rules.mk deleted file mode 100644 index 1e5b99807c..0000000000 --- a/keyboards/keychron/k11_max/ansi_encoder/rgb/keymaps/via/rules.mk +++ /dev/null @@ -1 +0,0 @@ -VIA_ENABLE = yes diff --git a/keyboards/keychron/k11_max/ansi_encoder/rgb/rgb.c b/keyboards/keychron/k11_max/ansi_encoder/rgb/rgb.c deleted file mode 100644 index 1e3d42da4d..0000000000 --- a/keyboards/keychron/k11_max/ansi_encoder/rgb/rgb.c +++ /dev/null @@ -1,131 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#include "quantum.h" - -// clang-format off -#ifdef RGB_MATRIX_ENABLE -const snled27351_led_t PROGMEM g_snled27351_leds[RGB_MATRIX_LED_COUNT] = { -/* Refer to SNLED27351 manual for these locations - * driver - * | R location - * | | G location - * | | | B location - * | | | | */ - {0, A_1, C_1, B_1}, - {0, A_2, C_2, B_2}, - {0, A_3, C_3, B_3}, - {0, A_4, C_4, B_4}, - {0, A_5, C_5, B_5}, - {0, A_6, C_6, B_6}, - {0, A_7, C_7, B_7}, - {0, A_8, C_8, B_8}, - {0, A_9, C_9, B_9}, - {0, A_10, C_10, B_10}, - {0, A_11, C_11, B_11}, - {0, A_12, C_12, B_12}, - {0, A_13, C_13, B_13}, - {0, A_14, C_14, B_14}, - - {0, F_1, D_1, E_1}, - {0, F_2, D_2, E_2}, - {0, F_3, D_3, E_3}, - {0, F_4, D_4, E_4}, - {0, F_5, D_5, E_5}, - {0, F_6, D_6, E_6}, - {0, F_7, D_7, E_7}, - {0, F_8, D_8, E_8}, - {0, F_9, D_9, E_9}, - {0, F_10, D_10, E_10}, - {0, F_11, D_11, E_11}, - {0, F_12, D_12, E_12}, - {0, F_13, D_13, E_13}, - {0, F_14, D_14, E_14}, - {0, F_16, D_16, E_16}, - - {1, I_1, G_1, H_1}, - {1, I_2, G_2, H_2}, - {1, I_3, G_3, H_3}, - {1, I_4, G_4, H_4}, - {1, I_5, G_5, H_5}, - {1, I_6, G_6, H_6}, - {1, I_7, G_7, H_7}, - {1, I_8, G_8, H_8}, - {1, I_9, G_9, H_9}, - {1, I_10, G_10, H_10}, - {1, I_11, G_11, H_11}, - {1, I_12, G_12, H_12}, - {1, I_14, G_14, H_14}, - {1, I_16, G_16, H_16}, - - {1, C_1, A_1, B_1}, - {1, C_3, A_3, B_3}, - {1, C_4, A_4, B_4}, - {1, C_5, A_5, B_5}, - {1, C_6, A_6, B_6}, - {1, C_7, A_7, B_7}, - {1, C_8, A_8, B_8}, - {1, C_9, A_9, B_9}, - {1, C_10, A_10, B_10}, - {1, C_11, A_11, B_11}, - {1, C_12, A_12, B_12}, - {1, C_14, A_14, B_14}, - {1, C_15, A_15, B_15}, - {1, C_16, A_16, B_16}, - - {1, F_1, D_1, E_1}, - {1, F_2, D_2, E_2}, - {1, F_3, D_3, E_3}, - {1, F_6, D_6, E_6}, - {1, F_7, D_7, E_7}, - {1, F_8, D_8, E_8}, - {1, F_10, D_10, E_10}, - {1, F_13, D_13, E_13}, - {1, F_14, D_14, E_14}, - {1, F_15, D_15, E_15}, - {1, F_16, D_16, E_16} -}; - -#define __ NO_LED - -led_config_t g_led_config = { - { - // Key Matrix to LED Index - { 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, 40, __, 41, __, 42 }, - { 43, __, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, __, 54, 55, 56 }, - { 57, 58, 59, __, __, 60, 61, 62, __, 63, __, __, 64, 65, 66, 67 }, - }, - { - // LED Index to Physical Position - {8, 1}, {20, 1}, {33, 0}, {48, 3}, {61, 6}, {74, 8}, {87,11}, {106,11}, {119, 8}, {132, 6}, {145, 3}, {160, 0}, {173, 1}, {193, 1}, - {8,14}, {24,14}, {39,14}, {52,17}, {65,20}, {78,22}, {103,25},{116,22}, {129,20}, {142,17}, {155,14}, {170,14}, {183,14}, {200,14}, {222,14}, - {8,27}, {24,27}, {39,28}, {52,30}, {65,33}, {78,36}, {109,37},{122,34}, {135,32}, {148,29}, {162,27}, {176,27}, {197,27}, {224,27}, - {8,40}, {28,40}, {43,42}, {56,44}, {69,47}, {82,50}, {102,52}, {115,49}, {128,46}, {141,44}, {154,44}, {169,40}, {189,40}, {209,43}, - {0,53}, {16,53}, {42,55}, {65,60}, {86,64}, {107,64}, {131,59}, {156,54}, {196,56}, {209,56}, {222,56}, - }, - { - // RGB LED Index to Flag - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - } -}; - -#endif diff --git a/keyboards/keychron/k11_max/ansi_encoder/rgb/rules.mk b/keyboards/keychron/k11_max/ansi_encoder/rgb/rules.mk deleted file mode 100644 index 6e7633bfe0..0000000000 --- a/keyboards/keychron/k11_max/ansi_encoder/rgb/rules.mk +++ /dev/null @@ -1 +0,0 @@ -# This file intentionally left blank diff --git a/keyboards/keychron/k11_max/ansi_encoder/white/config.h b/keyboards/keychron/k11_max/ansi_encoder/white/config.h deleted file mode 100644 index d4f499f219..0000000000 --- a/keyboards/keychron/k11_max/ansi_encoder/white/config.h +++ /dev/null @@ -1,55 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#pragma once - -#ifdef LED_MATRIX_ENABLE -/* LED matrix driver configuration */ -# define DRIVER_COUNT 1 -# define LED_MATRIX_LED_COUNT 68 - -# define SPI_SCK_PIN A5 -# define SPI_MISO_PIN A6 -# define SPI_MOSI_PIN A7 - -# define DRIVER_CS_PINS \ - { B9 } -# define SNLED23751_SPI_DIVISOR 16 -# define SPI_DRIVER SPID1 - -/* Use first 6 channels of LED driver */ -# define SNLED27351_PHASE_CHANNEL MSKPHASE_6CHANNEL - -/* Set LED driver current */ -# define SNLED27351_CURRENT_TUNE \ - { 0x50, 0x50, 0x50, 0x50, 0x50, 0x50, 0x50, 0x50, 0x50, 0x50, 0x50, 0x50 } - -/* Set to infinit, which is use in USB mode by default */ -# define LED_MATRIX_TIMEOUT LED_MATRIX_TIMEOUT_INFINITE - -/* Allow shutdown of led driver to save power */ -# define LED_MATRIX_DRIVER_SHUTDOWN_ENABLE -/* Turn off backlight on low brightness to save power */ -# define LED_MATRIX_BRIGHTNESS_TURN_OFF_VAL 48 - -/* Indications */ -# define DIM_CAPS_LOCK -# define CAPS_LOCK_INDEX 29 -# define LOW_BAT_IND_INDEX \ - { 60, 63 } - -# define LED_MATRIX_KEYPRESSES -#endif diff --git a/keyboards/keychron/k11_max/ansi_encoder/white/info.json b/keyboards/keychron/k11_max/ansi_encoder/white/info.json deleted file mode 100644 index 87e2a2967c..0000000000 --- a/keyboards/keychron/k11_max/ansi_encoder/white/info.json +++ /dev/null @@ -1,30 +0,0 @@ -{ - "usb": { - "pid": "0x0AB9", - "device_version": "1.0.0" - }, - "features": { - "led_matrix": true - }, - "led_matrix": { - "driver": "snled27351_spi", - "sleep": true, - "animations": { - "none": true, - "solid": true, - "breathing": true, - "band_pinwheel": true, - "band_spiral": true, - "cycle_left_right": true, - "cycle_up_down": true, - "cycle_out_in": true, - "dual_beacon": true, - "solid_reactive_simple": true, - "solid_reactive_multiwide": true, - "solid_reactive_multinexus": true, - "solid_splash": true, - "wave_left_right": true, - "wave_up_down": true - } - } -} diff --git a/keyboards/keychron/k11_max/ansi_encoder/white/keymaps/default/keymap.c b/keyboards/keychron/k11_max/ansi_encoder/white/keymaps/default/keymap.c deleted file mode 100644 index 38a7cb915e..0000000000 --- a/keyboards/keychron/k11_max/ansi_encoder/white/keymaps/default/keymap.c +++ /dev/null @@ -1,83 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#include QMK_KEYBOARD_H -#include "keychron_common.h" - -enum layers{ - MAC_BASE, - WIN_BASE, - MAC_FN1, - WIN_FN1, - FN2, -}; - -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_69_ansi( - 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_MUTE, - 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_DEL, - 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_HOME, - KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, - KC_LCTL, KC_LOPTN, KC_LCMMD, KC_SPC, MO(MAC_FN1), MO(FN2), KC_SPC, KC_RCMMD, KC_LEFT, KC_DOWN, KC_RGHT), - - [WIN_BASE] = LAYOUT_69_ansi( - 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_MUTE, - 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_DEL, - 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_HOME, - KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, - KC_LCTL, KC_LWIN, KC_LALT, KC_SPC, MO(WIN_FN1), MO(FN2), KC_SPC, KC_RALT, KC_LEFT, KC_DOWN, KC_RGHT), - - [MAC_FN1] = LAYOUT_69_ansi( - KC_GRV, KC_BRID, KC_BRIU, KC_MCTRL,KC_LNPAD, BL_DOWN, BL_UP, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, BL_TOGG, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_INS, - BL_TOGG, BL_STEP, BL_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_END, - _______, _______, BL_DOWN, _______, _______, _______, _______, NK_TOGG, _______, _______, _______, _______, _______, KC_PGUP, - _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_PGDN, _______), - - [WIN_FN1] = LAYOUT_69_ansi( - KC_GRV, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, BL_DOWN, BL_UP, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, BL_TOGG, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_INS, - BL_TOGG, BL_STEP, BL_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_END, - _______, _______, BL_DOWN, _______, _______, _______, _______, NK_TOGG, _______, _______, _______, _______, _______, KC_PGUP, - _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_PGDN, _______), - - [FN2] = LAYOUT_69_ansi( - KC_TILD, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, BAT_LVL, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______) -}; - -#if defined(ENCODER_MAP_ENABLE) -const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][2] = { - [MAC_BASE] = {ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [WIN_BASE] = {ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [MAC_FN1] = {ENCODER_CCW_CW(BL_DOWN, BL_UP)}, - [WIN_FN1] = {ENCODER_CCW_CW(BL_DOWN, BL_UP)}, - [FN2] = {ENCODER_CCW_CW(_______, _______)}, -}; -#endif // ENCODER_MAP_ENABLE - -// clang-format on -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - if (!process_record_keychron_common(keycode, record)) { - return false; - } - return true; -} - diff --git a/keyboards/keychron/k11_max/ansi_encoder/white/keymaps/via/keymap.c b/keyboards/keychron/k11_max/ansi_encoder/white/keymaps/via/keymap.c deleted file mode 100644 index 38a7cb915e..0000000000 --- a/keyboards/keychron/k11_max/ansi_encoder/white/keymaps/via/keymap.c +++ /dev/null @@ -1,83 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#include QMK_KEYBOARD_H -#include "keychron_common.h" - -enum layers{ - MAC_BASE, - WIN_BASE, - MAC_FN1, - WIN_FN1, - FN2, -}; - -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_69_ansi( - 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_MUTE, - 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_DEL, - 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_HOME, - KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, - KC_LCTL, KC_LOPTN, KC_LCMMD, KC_SPC, MO(MAC_FN1), MO(FN2), KC_SPC, KC_RCMMD, KC_LEFT, KC_DOWN, KC_RGHT), - - [WIN_BASE] = LAYOUT_69_ansi( - 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_MUTE, - 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_DEL, - 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_HOME, - KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, - KC_LCTL, KC_LWIN, KC_LALT, KC_SPC, MO(WIN_FN1), MO(FN2), KC_SPC, KC_RALT, KC_LEFT, KC_DOWN, KC_RGHT), - - [MAC_FN1] = LAYOUT_69_ansi( - KC_GRV, KC_BRID, KC_BRIU, KC_MCTRL,KC_LNPAD, BL_DOWN, BL_UP, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, BL_TOGG, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_INS, - BL_TOGG, BL_STEP, BL_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_END, - _______, _______, BL_DOWN, _______, _______, _______, _______, NK_TOGG, _______, _______, _______, _______, _______, KC_PGUP, - _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_PGDN, _______), - - [WIN_FN1] = LAYOUT_69_ansi( - KC_GRV, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, BL_DOWN, BL_UP, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, BL_TOGG, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_INS, - BL_TOGG, BL_STEP, BL_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_END, - _______, _______, BL_DOWN, _______, _______, _______, _______, NK_TOGG, _______, _______, _______, _______, _______, KC_PGUP, - _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_PGDN, _______), - - [FN2] = LAYOUT_69_ansi( - KC_TILD, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, BAT_LVL, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______) -}; - -#if defined(ENCODER_MAP_ENABLE) -const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][2] = { - [MAC_BASE] = {ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [WIN_BASE] = {ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [MAC_FN1] = {ENCODER_CCW_CW(BL_DOWN, BL_UP)}, - [WIN_FN1] = {ENCODER_CCW_CW(BL_DOWN, BL_UP)}, - [FN2] = {ENCODER_CCW_CW(_______, _______)}, -}; -#endif // ENCODER_MAP_ENABLE - -// clang-format on -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - if (!process_record_keychron_common(keycode, record)) { - return false; - } - return true; -} - diff --git a/keyboards/keychron/k11_max/ansi_encoder/white/keymaps/via/rules.mk b/keyboards/keychron/k11_max/ansi_encoder/white/keymaps/via/rules.mk deleted file mode 100644 index 1e5b99807c..0000000000 --- a/keyboards/keychron/k11_max/ansi_encoder/white/keymaps/via/rules.mk +++ /dev/null @@ -1 +0,0 @@ -VIA_ENABLE = yes diff --git a/keyboards/keychron/k11_max/ansi_encoder/white/rules.mk b/keyboards/keychron/k11_max/ansi_encoder/white/rules.mk deleted file mode 100644 index 6e7633bfe0..0000000000 --- a/keyboards/keychron/k11_max/ansi_encoder/white/rules.mk +++ /dev/null @@ -1 +0,0 @@ -# This file intentionally left blank diff --git a/keyboards/keychron/k11_max/ansi_encoder/white/white.c b/keyboards/keychron/k11_max/ansi_encoder/white/white.c deleted file mode 100644 index 940fab3fd6..0000000000 --- a/keyboards/keychron/k11_max/ansi_encoder/white/white.c +++ /dev/null @@ -1,129 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#include "quantum.h" - -// clang-format off -#ifdef LED_MATRIX_ENABLE -const snled27351_led_t g_snled27351_leds[LED_MATRIX_LED_COUNT] = { -/* Refer to SNLED27351 manual for these locations - * driver - * | LED address - * | | */ - {0, E_1}, - {0, E_2}, - {0, E_3}, - {0, E_4}, - {0, E_5}, - {0, E_6}, - {0, E_7}, - {0, E_8}, - {0, E_9}, - {0, E_10}, - {0, E_11}, - {0, E_12}, - {0, E_13}, - {0, E_14}, - - {0, D_1}, - {0, D_2}, - {0, D_3}, - {0, D_4}, - {0, D_5}, - {0, D_6}, - {0, D_7}, - {0, D_8}, - {0, D_9}, - {0, D_10}, - {0, D_11}, - {0, D_12}, - {0, D_13}, - {0, D_14}, - {0, D_16}, - - {0, C_1}, - {0, C_2}, - {0, C_3}, - {0, C_4}, - {0, C_5}, - {0, C_6}, - {0, C_7}, - {0, C_8}, - {0, C_9}, - {0, C_10}, - {0, C_11}, - {0, C_12}, - {0, C_14}, - {0, C_16}, - - {0, B_1}, - {0, B_3}, - {0, B_4}, - {0, B_5}, - {0, B_6}, - {0, B_7}, - {0, B_8}, - {0, B_9}, - {0, B_10}, - {0, B_11}, - {0, B_12}, - {0, B_14}, - {0, B_15}, - {0, B_16}, - - {0, A_1}, - {0, A_2}, - {0, A_3}, - {0, A_6}, - {0, A_7}, - {0, A_8}, - {0, A_10}, - {0, A_13}, - {0, A_14}, - {0, A_15}, - {0, A_16}, -}; - -#define __ NO_LED - -led_config_t g_led_config = { - { - // Key Matrix to LED Index - { 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, 40, __, 41, __, 42 }, - { 43, __, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, __, 54, 55, 56 }, - { 57, 58, 59, __, __, 60, 61, 62, __, 63, __, __, 64, 65, 66, 67 }, - }, - { - // LED Index to Physical Position - {8, 1}, {20, 1}, {33, 0}, {48, 3}, {61, 6}, {74, 8}, {87,11}, {106,11}, {119, 8}, {132, 6}, {145, 3}, {160, 0}, {173, 1}, {193, 1}, - {8,14}, {24,14}, {39,14}, {52,17}, {65,20}, {78,22}, {103,25},{116,22}, {129,20}, {142,17}, {155,14}, {170,14}, {183,14}, {200,14}, {222,14}, - {8,27}, {24,27}, {39,28}, {52,30}, {65,33}, {78,36}, {109,37},{122,34}, {135,32}, {148,29}, {162,27}, {176,27}, {197,27}, {224,27}, - {8,40}, {28,40}, {43,42}, {56,44}, {69,47}, {82,50}, {102,52}, {115,49}, {128,46}, {141,44}, {154,44}, {169,40}, {189,40}, {209,43}, - {0,53}, {16,53}, {42,55}, {65,60}, {86,64}, {107,64}, {131,59}, {156,54}, {196,56}, {209,56}, {222,56}, - }, - { - //LED Index to Flag - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - } -}; - -#endif diff --git a/keyboards/keychron/k11_max/board.h b/keyboards/keychron/k11_max/board.h deleted file mode 100644 index b200f82d61..0000000000 --- a/keyboards/keychron/k11_max/board.h +++ /dev/null @@ -1,226 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#pragma once - -#include_next - -// clang-format off - -/* Set GPIOA_SWDIO to INPUT and NOT FLOATING */ -#undef VAL_GPIOA_MODER -#define VAL_GPIOA_MODER (PIN_MODE_INPUT(GPIOA_BUTTON) | \ - PIN_MODE_INPUT(GPIOA_PIN1) | \ - PIN_MODE_INPUT(GPIOA_PIN2) | \ - PIN_MODE_INPUT(GPIOA_PIN3) | \ - PIN_MODE_ALTERNATE(GPIOA_CS43L22_LRCK) |\ - PIN_MODE_ALTERNATE(GPIOA_L3GD20_SCL) | \ - PIN_MODE_ALTERNATE(GPIOA_L3GD20_SD0) | \ - PIN_MODE_ALTERNATE(GPIOA_L3GD20_SDI) | \ - PIN_MODE_INPUT(GPIOA_PIN8) | \ - PIN_MODE_INPUT(GPIOA_VBUS_FS) | \ - PIN_MODE_ALTERNATE(GPIOA_OTG_FS_ID) | \ - PIN_MODE_ALTERNATE(GPIOA_OTG_FS_DM) | \ - PIN_MODE_ALTERNATE(GPIOA_OTG_FS_DP) | \ - PIN_MODE_INPUT(GPIOA_SWDIO) | \ - PIN_MODE_INPUT(GPIOA_SWCLK) | \ - PIN_MODE_INPUT(GPIOA_PIN15)) - -#undef VAL_GPIOA_PUPDR -#define VAL_GPIOA_PUPDR (PIN_PUPDR_FLOATING(GPIOA_BUTTON) | \ - PIN_PUPDR_PULLUP(GPIOA_PIN1) | \ - PIN_PUPDR_PULLUP(GPIOA_PIN2) | \ - PIN_PUPDR_PULLUP(GPIOA_PIN3) | \ - PIN_PUPDR_FLOATING(GPIOA_CS43L22_LRCK) |\ - PIN_PUPDR_FLOATING(GPIOA_L3GD20_SCL) | \ - PIN_PUPDR_PULLUP(GPIOA_L3GD20_SD0) | \ - PIN_PUPDR_PULLUP(GPIOA_L3GD20_SDI) | \ - PIN_PUPDR_PULLUP(GPIOA_PIN8) | \ - PIN_PUPDR_FLOATING(GPIOA_VBUS_FS) | \ - PIN_PUPDR_FLOATING(GPIOA_OTG_FS_ID) | \ - PIN_PUPDR_FLOATING(GPIOA_OTG_FS_DM) | \ - PIN_PUPDR_FLOATING(GPIOA_OTG_FS_DP) | \ - PIN_PUPDR_PULLDOWN(GPIOA_SWDIO) | \ - PIN_PUPDR_PULLUP(GPIOA_SWCLK) | \ - PIN_PUPDR_PULLUP(GPIOA_PIN15)) - -#undef VAL_GPIOB_MODER -#define VAL_GPIOB_MODER (PIN_MODE_INPUT(GPIOB_PIN0) | \ - PIN_MODE_INPUT(GPIOB_PIN1) | \ - PIN_MODE_INPUT(GPIOB_PIN2) | \ - PIN_MODE_INPUT(GPIOB_SWO) | \ - PIN_MODE_INPUT(GPIOB_PIN4) | \ - PIN_MODE_INPUT(GPIOB_PIN5) | \ - PIN_MODE_INPUT(GPIOB_LSM303DLHC_SCL) | \ - PIN_MODE_INPUT(GPIOB_PIN7) | \ - PIN_MODE_INPUT(GPIOB_PIN8) | \ - PIN_MODE_INPUT(GPIOB_LSM303DLHC_SDA) | \ - PIN_MODE_INPUT(GPIOB_MP45DT02_CLK_IN) |\ - PIN_MODE_INPUT(GPIOB_PIN11) | \ - PIN_MODE_INPUT(GPIOB_PIN12) | \ - PIN_MODE_INPUT(GPIOB_PIN13) | \ - PIN_MODE_INPUT(GPIOB_PIN14) | \ - PIN_MODE_INPUT(GPIOB_PIN15)) - -#undef VAL_GPIOB_PUPDR -#define VAL_GPIOB_PUPDR (PIN_PUPDR_PULLDOWN(GPIOB_PIN0) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN1) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN2) | \ - PIN_PUPDR_PULLDOWN(GPIOB_SWO) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN4) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN5) | \ - PIN_PUPDR_PULLDOWN(GPIOB_LSM303DLHC_SCL) |\ - PIN_PUPDR_PULLDOWN(GPIOB_PIN7) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN8) | \ - PIN_PUPDR_PULLDOWN(GPIOB_LSM303DLHC_SDA) |\ - PIN_PUPDR_PULLDOWN(GPIOB_MP45DT02_CLK_IN) |\ - PIN_PUPDR_PULLDOWN(GPIOB_PIN11) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN12) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN13) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN14) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN15)) - -#undef VAL_GPIOB_AFRL -#define VAL_GPIOB_AFRL (PIN_AFIO_AF(GPIOB_PIN0, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN1, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN2, 0U) | \ - PIN_AFIO_AF(GPIOB_SWO, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN4, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN5, 0U) | \ - PIN_AFIO_AF(GPIOB_LSM303DLHC_SCL, 0) | \ - PIN_AFIO_AF(GPIOB_PIN7, 0U)) - -#undef VAL_GPIOB_AFRH -#define VAL_GPIOB_AFRH (PIN_AFIO_AF(GPIOB_PIN8, 0U) | \ - PIN_AFIO_AF(GPIOB_LSM303DLHC_SDA, 0) | \ - PIN_AFIO_AF(GPIOB_MP45DT02_CLK_IN, 0U) |\ - PIN_AFIO_AF(GPIOB_PIN11, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN12, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN13, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN14, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN15, 0U)) - -/* C5 Need to be pulldown */ -#undef VAL_GPIOC_MODER -#define VAL_GPIOC_MODER (PIN_MODE_INPUT(GPIOC_OTG_FS_POWER_ON) |\ - PIN_MODE_INPUT(GPIOC_PIN1) | \ - PIN_MODE_INPUT(GPIOC_PIN2) | \ - PIN_MODE_INPUT(GPIOC_CS43L22_AIN4x) | \ - PIN_MODE_INPUT(GPIOC_PIN4) | \ - PIN_MODE_INPUT(GPIOC_PIN5) | \ - PIN_MODE_INPUT(GPIOC_PIN6) | \ - PIN_MODE_INPUT(GPIOC_CS43L22_MCLK) | \ - PIN_MODE_INPUT(GPIOC_PIN8) | \ - PIN_MODE_INPUT(GPIOC_PIN9) | \ - PIN_MODE_INPUT(GPIOC_CS43L22_SCLK) | \ - PIN_MODE_INPUT(GPIOC_PIN11) | \ - PIN_MODE_INPUT(GPIOC_CS43L22_SDIN) | \ - PIN_MODE_INPUT(GPIOC_PIN13) | \ - PIN_MODE_INPUT(GPIOC_OSC32_IN) | \ - PIN_MODE_INPUT(GPIOC_OSC32_OUT)) - -#undef VAL_GPIOC_PUPDR -#define VAL_GPIOC_PUPDR (PIN_PUPDR_PULLUP(GPIOC_OTG_FS_POWER_ON) |\ - PIN_PUPDR_PULLUP(GPIOC_PIN1) | \ - PIN_PUPDR_PULLUP(GPIOC_PIN2) | \ - PIN_PUPDR_PULLUP(GPIOC_CS43L22_AIN4x) |\ - PIN_PUPDR_PULLUP(GPIOC_PIN4) | \ - PIN_PUPDR_PULLDOWN(GPIOC_PIN5) | \ - PIN_PUPDR_PULLUP(GPIOC_PIN6) | \ - PIN_PUPDR_PULLUP(GPIOC_CS43L22_MCLK) | \ - PIN_PUPDR_PULLUP(GPIOC_PIN8) | \ - PIN_PUPDR_PULLUP(GPIOC_PIN9) | \ - PIN_PUPDR_PULLUP(GPIOC_CS43L22_SCLK) | \ - PIN_PUPDR_PULLUP(GPIOC_PIN11) | \ - PIN_PUPDR_PULLUP(GPIOC_CS43L22_SDIN) | \ - PIN_PUPDR_PULLUP(GPIOC_PIN13) | \ - PIN_PUPDR_PULLUP(GPIOC_OSC32_IN) | \ - PIN_PUPDR_PULLUP(GPIOC_OSC32_OUT)) - -/* Set all GPIOD pins to INPUT & PULLUP to avoid FLOATING */ -#undef VAL_GPIOD_MODER -#define VAL_GPIOD_MODER (PIN_MODE_INPUT(GPIOD_PIN0) | \ - PIN_MODE_INPUT(GPIOD_PIN1) | \ - PIN_MODE_INPUT(GPIOD_PIN2) | \ - PIN_MODE_INPUT(GPIOD_PIN3) | \ - PIN_MODE_INPUT(GPIOD_CS43L22_RESET) | \ - PIN_MODE_INPUT(GPIOD_OverCurrent) | \ - PIN_MODE_INPUT(GPIOD_PIN6) | \ - PIN_MODE_INPUT(GPIOD_PIN7) | \ - PIN_MODE_INPUT(GPIOD_PIN8) | \ - PIN_MODE_INPUT(GPIOD_PIN9) | \ - PIN_MODE_INPUT(GPIOD_PIN10) | \ - PIN_MODE_INPUT(GPIOD_PIN11) | \ - PIN_MODE_INPUT(GPIOD_LED4) | \ - PIN_MODE_INPUT(GPIOD_LED3) | \ - PIN_MODE_INPUT(GPIOD_LED5) | \ - PIN_MODE_INPUT(GPIOD_LED6)) - -#undef VAL_GPIOD_PUPDR -#define VAL_GPIOD_PUPDR (PIN_PUPDR_PULLUP(GPIOD_PIN0) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN1) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN2) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN3) | \ - PIN_PUPDR_PULLUP(GPIOD_CS43L22_RESET) |\ - PIN_PUPDR_PULLUP(GPIOD_OverCurrent) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN6) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN7) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN8) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN9) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN10) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN11) | \ - PIN_PUPDR_PULLUP(GPIOD_LED4) | \ - PIN_PUPDR_PULLUP(GPIOD_LED3) | \ - PIN_PUPDR_PULLUP(GPIOD_LED5) | \ - PIN_PUPDR_PULLUP(GPIOD_LED6)) - -/* Set all GPIOE pins to INPUT & PULLUP to avoid FLOATING */ -#undef VAL_GPIOE_MODER -#define VAL_GPIOE_MODER (PIN_MODE_INPUT(GPIOE_L3GD20_INT1) | \ - PIN_MODE_INPUT(GPIOE_L3GD20_INT2) | \ - PIN_MODE_INPUT(GPIOE_LSM303DLHC_DRDY) |\ - PIN_MODE_INPUT(GPIOE_L3GD20_CS) | \ - PIN_MODE_INPUT(GPIOE_LSM303DLHC_INT1) |\ - PIN_MODE_INPUT(GPIOE_LSM303DLHC_INT2) |\ - PIN_MODE_INPUT(GPIOE_PIN6) | \ - PIN_MODE_INPUT(GPIOE_PIN7) | \ - PIN_MODE_INPUT(GPIOE_PIN8) | \ - PIN_MODE_INPUT(GPIOE_PIN9) | \ - PIN_MODE_INPUT(GPIOE_PIN10) | \ - PIN_MODE_INPUT(GPIOE_PIN11) | \ - PIN_MODE_INPUT(GPIOE_PIN12) | \ - PIN_MODE_INPUT(GPIOE_PIN13) | \ - PIN_MODE_INPUT(GPIOE_PIN14) | \ - PIN_MODE_INPUT(GPIOE_PIN15)) - -#undef VAL_GPIOE_PUPDR -#define VAL_GPIOE_PUPDR (PIN_PUPDR_PULLUP(GPIOE_L3GD20_INT1) | \ - PIN_PUPDR_PULLUP(GPIOE_L3GD20_INT2) | \ - PIN_PUPDR_PULLUP(GPIOE_LSM303DLHC_DRDY) |\ - PIN_PUPDR_PULLUP(GPIOE_L3GD20_CS) | \ - PIN_PUPDR_PULLUP(GPIOE_LSM303DLHC_INT1) |\ - PIN_PUPDR_PULLUP(GPIOE_LSM303DLHC_INT2) |\ - PIN_PUPDR_PULLUP(GPIOE_PIN6) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN7) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN8) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN9) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN10) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN11) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN12) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN13) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN14) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN15)) - diff --git a/keyboards/keychron/k11_max/config.h b/keyboards/keychron/k11_max/config.h deleted file mode 100644 index 0d5601eaa0..0000000000 --- a/keyboards/keychron/k11_max/config.h +++ /dev/null @@ -1,85 +0,0 @@ -/* Copyright 2024 ~ 2025 @ 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 . - */ - -#pragma once -/* Encoder Configuration */ -#define ENCODER_DEFAULT_POS 0x3 -#define ENCODER_MAP_KEY_DELAY 2 - -#if defined(RGB_MATRIX_ENABLE) || defined(LED_MATRIX_ENABLE) || defined(LK_WIRELESS_ENABLE) -/* SPI configuration */ -# define SPI_DRIVER SPID1 -# define SPI_SCK_PIN A5 -# define SPI_MISO_PIN A6 -# define SPI_MOSI_PIN A7 -#endif - -#if defined(RGB_MATRIX_ENABLE) || defined(LED_MATRIX_ENABLE) -# define LED_DRIVER_SHUTDOWN_PIN B7 -# define SNLED23751_SPI_DIVISOR 16 -#endif - -#ifdef LK_WIRELESS_ENABLE -/* Hardware configuration */ -# define P2P4_MODE_SELECT_PIN A10 -# define BT_MODE_SELECT_PIN A9 - -# define LKBT51_RESET_PIN C4 -# define LKBT51_INT_INPUT_PIN B1 -# define BLUETOOTH_INT_OUTPUT_PIN A4 - -# define USB_POWER_SENSE_PIN B0 -# define USB_POWER_CONNECTED_LEVEL 0 - -# define BAT_CHARGING_PIN B13 -# define BAT_CHARGING_LEVEL 0 - -# define BAT_LOW_LED_PIN B12 -# define BAT_LOW_LED_PIN_ON_STATE 1 - -# define BT_HOST_DEVICES_COUNT 3 - -# define P24G_HOST_DEVICES_COUNT 1 - -# if defined(RGB_MATRIX_ENABLE) || defined(LED_MATRIX_ENABLE) - -# define BT_HOST_LED_MATRIX_LIST \ - { 15, 16, 17 } -# define P2P4G_HOST_LED_MATRIX_LIST \ - { 18 } -# 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 -/* Reinit LED driver on tranport changed */ -# define REINIT_LED_DRIVER 1 -# endif - -/* Keep USB connection in blueooth mode */ -# define KEEP_USB_CONNECTION_IN_WIRELESS_MODE - -/* Enable bluetooth NKRO */ -# define WIRELESS_NKRO_ENABLE - -#endif - -/* Factory test keys */ -#define FN_KEY_1 MO(4) - -#define MATRIX_IO_DELAY 10 diff --git a/keyboards/keychron/k11_max/firmware/keychron_k11_max_ansi_encoder_rgb_via.bin b/keyboards/keychron/k11_max/firmware/keychron_k11_max_ansi_encoder_rgb_via.bin deleted file mode 100644 index 52bc46652e..0000000000 Binary files a/keyboards/keychron/k11_max/firmware/keychron_k11_max_ansi_encoder_rgb_via.bin and /dev/null differ diff --git a/keyboards/keychron/k11_max/firmware/keychron_k11_max_ansi_encoder_white_via.bin b/keyboards/keychron/k11_max/firmware/keychron_k11_max_ansi_encoder_white_via.bin deleted file mode 100644 index f52d5df7b9..0000000000 Binary files a/keyboards/keychron/k11_max/firmware/keychron_k11_max_ansi_encoder_white_via.bin and /dev/null differ diff --git a/keyboards/keychron/k11_max/firmware/keychron_k11_max_iso_encoder_rgb_via.bin b/keyboards/keychron/k11_max/firmware/keychron_k11_max_iso_encoder_rgb_via.bin deleted file mode 100644 index 74fad55364..0000000000 Binary files a/keyboards/keychron/k11_max/firmware/keychron_k11_max_iso_encoder_rgb_via.bin and /dev/null differ diff --git a/keyboards/keychron/k11_max/firmware/keychron_k11_max_iso_encoder_white_via.bin b/keyboards/keychron/k11_max/firmware/keychron_k11_max_iso_encoder_white_via.bin deleted file mode 100644 index 86a4622d7b..0000000000 Binary files a/keyboards/keychron/k11_max/firmware/keychron_k11_max_iso_encoder_white_via.bin and /dev/null differ diff --git a/keyboards/keychron/k11_max/halconf.h b/keyboards/keychron/k11_max/halconf.h deleted file mode 100644 index 37bcc7c47b..0000000000 --- a/keyboards/keychron/k11_max/halconf.h +++ /dev/null @@ -1,31 +0,0 @@ -/* Copyright 2024 @ 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 - -#define _CHIBIOS_HAL_CONF_VER_8_0_ - -#define HAL_USE_SPI TRUE - -#ifdef LK_WIRELESS_ENABLE -# define HAL_USE_RTC TRUE -#endif - -#if defined(LK_WIRELESS_ENABLE) || defined(ENCODER_ENABLE) -# define PAL_USE_CALLBACKS TRUE -#endif - -#include_next diff --git a/keyboards/keychron/k11_max/info.json b/keyboards/keychron/k11_max/info.json deleted file mode 100644 index 6e3a29a767..0000000000 --- a/keyboards/keychron/k11_max/info.json +++ /dev/null @@ -1,290 +0,0 @@ -{ - "keyboard_name": "Keychron K11 Max", - "manufacturer": "Keychron", - "url": "https://github.com/Keychron", - "maintainer": "lokher", - "processor": "STM32F401", - "bootloader": "stm32-dfu", - "usb": { - "vid": "0x3434" - }, - "features": { - "bootmagic": true, - "extrakey": true, - "mousekey": true, - "dip_switch": true, - "encoder": true, - "encoder_map": true, - "nkro": true, - "raw": true, - "sendstring": true - }, - "matrix_pins": { - "cols": ["C6", "C7", "C8", "A14", "A15", "C10", "C11", "C13", "C14", "C15", "C0", "C1", "C2", "C3", "A0", "A1"], - "rows": ["D2", "B3", "B4", "B5", "B6"] - }, - "diode_direction": "ROW2COL", - "dip_switch": { - "pins": ["B14"] - }, - "encoder": { - "rotary": [ - { - "pin_a": "A8", - "pin_b": "C9" - } - ] - }, - "indicators": { - "caps_lock": "A13", - "on_state": 1 - }, - "dynamic_keymap": { - "layer_count": 5 - }, - "eeprom": { - "wear_leveling": { - "driver": "embedded_flash", - "logical_size": 2048, - "backing_size": 4096 - } - }, - "layouts": { - "LAYOUT_69_ansi": { - "layout": [ - {"matrix":[0, 0], "x":0.75, "y":0.25}, - {"matrix":[0, 1], "x":1.75, "y":0.25}, - {"matrix":[0, 2], "x":2.75, "y":0}, - {"matrix":[0, 3], "x":3.75, "y":0.25}, - {"matrix":[0, 4], "x":4.75, "y":0.25}, - {"matrix":[0, 5], "x":5.75, "y":0.25}, - {"matrix":[0, 6], "x":6.75, "y":0.25}, - {"matrix":[0, 7], "x":9.5, "y":0.25}, - {"matrix":[0, 8], "x":10.5, "y":0.25}, - {"matrix":[0, 9], "x":11.5, "y":0.25}, - {"matrix":[0,10], "x":12.5, "y":0.25}, - {"matrix":[0,11], "x":13.5, "y":0}, - {"matrix":[0,12], "x":14.5, "y":0.25}, - {"matrix":[0,13], "x":15.5, "y":0.25, "w":2}, - {"matrix":[0,15], "x":18, "y":0}, - - {"matrix":[1, 0], "x":0.5, "y":1.25, "w":1.5}, - {"matrix":[1, 1], "x":2, "y":1.25}, - {"matrix":[1, 2], "x":3.25, "y":1.25}, - {"matrix":[1, 3], "x":4.25, "y":1.25}, - {"matrix":[1, 4], "x":5.25, "y":1.25}, - {"matrix":[1, 5], "x":6.25, "y":1.25}, - {"matrix":[1, 6], "x":9, "y":1.25}, - {"matrix":[1, 7], "x":10, "y":1.25}, - {"matrix":[1, 8], "x":11, "y":1.25}, - {"matrix":[1, 9], "x":12, "y":1.25}, - {"matrix":[1,10], "x":13.25, "y":1.25}, - {"matrix":[1,11], "x":14.25, "y":1.25}, - {"matrix":[1,12], "x":15.25, "y":1.25}, - {"matrix":[1,13], "x":16.25, "y":1.25, "w":1.5}, - {"matrix":[1,15], "x":18.25, "y":1.5}, - - {"matrix":[2, 0], "x":0.25, "y":2.25, "w":1.75}, - {"matrix":[2, 1], "x":2, "y":2.25}, - {"matrix":[2, 2], "x":3.5, "y":2.25}, - {"matrix":[2, 3], "x":4.5, "y":2.25}, - {"matrix":[2, 4], "x":5.5, "y":2.25}, - {"matrix":[2, 5], "x":6.5, "y":2.25}, - {"matrix":[2, 6], "x":9.5, "y":2.25}, - {"matrix":[2, 7], "x":10.25, "y":2.25}, - {"matrix":[2, 8], "x":11.25, "y":2.25}, - {"matrix":[2, 9], "x":12.25, "y":2.25}, - {"matrix":[2,10], "x":13.25, "y":2.25}, - {"matrix":[2,11], "x":14.75, "y":2.25}, - {"matrix":[2,13], "x":15.75, "y":2.25, "w":2.25}, - {"matrix":[2,15], "x":18.5, "y":2.5}, - - {"matrix":[3, 0], "x":0, "y":3.25, "w":2.25}, - {"matrix":[3, 2], "x":2.25, "y":3.25}, - {"matrix":[3, 3], "x":3.75, "y":3.25}, - {"matrix":[3, 4], "x":4.75, "y":3.25}, - {"matrix":[3, 5], "x":5.75, "y":3.25}, - {"matrix":[3, 6], "x":6.75, "y":3.25}, - {"matrix":[3, 7], "x":8.5, "y":3.25}, - {"matrix":[3, 8], "x":9.5, "y":3.25}, - {"matrix":[3, 9], "x":10.5, "y":3.25}, - {"matrix":[3,10], "x":11.5, "y":3.25}, - {"matrix":[3,11], "x":12.5, "y":3.25}, - {"matrix":[3,13], "x":14.25, "y":3.25}, - {"matrix":[3,14], "x":15.25, "y":3.25, "w":1.75}, - {"matrix":[3,15], "x":17.25, "y":3.5}, - - {"matrix":[4, 0], "x":0, "y":4.25, "w":1.25}, - {"matrix":[4, 1], "x":1.25, "y":4.25, "w":1.25}, - {"matrix":[4, 2], "x":3.75, "y":4.25, "w":1.25}, - {"matrix":[4, 5], "x":5, "y":4.25, "w":2.25}, - {"matrix":[4, 6], "x":7.25, "y":4.25}, - {"matrix":[4, 7], "x":8.75, "y":4.25}, - {"matrix":[4, 9], "x":9.75, "y":4.25, "w":2.75}, - {"matrix":[4,12], "x":12.5, "y":4.25}, - {"matrix":[4,13], "x":16.25, "y":4.5}, - {"matrix":[4,14], "x":17.25, "y":4.5}, - {"matrix":[4,15], "x":18.25, "y":4.5} - ] - }, - "LAYOUT_70_iso": { - "layout": [ - {"matrix":[0, 0], "x":0.75, "y":0.25}, - {"matrix":[0, 1], "x":1.75, "y":0.25}, - {"matrix":[0, 2], "x":2.75, "y":0}, - {"matrix":[0, 3], "x":3.75, "y":0.25}, - {"matrix":[0, 4], "x":4.75, "y":0.25}, - {"matrix":[0, 5], "x":5.75, "y":0.25}, - {"matrix":[0, 6], "x":6.75, "y":0.25}, - {"matrix":[0, 7], "x":9.5, "y":0.25}, - {"matrix":[0, 8], "x":10.5, "y":0.25}, - {"matrix":[0, 9], "x":11.5, "y":0.25}, - {"matrix":[0,10], "x":12.5, "y":0.25}, - {"matrix":[0,11], "x":13.5, "y":0}, - {"matrix":[0,12], "x":14.5, "y":0.25}, - {"matrix":[0,13], "x":15.5, "y":0.25, "w":2}, - {"matrix":[0,15], "x":18, "y":0}, - - {"matrix":[1, 0], "x":0.5, "y":1.25, "w":1.5}, - {"matrix":[1, 1], "x":2, "y":1.25}, - {"matrix":[1, 2], "x":3.25, "y":1.25}, - {"matrix":[1, 3], "x":4.25, "y":1.25}, - {"matrix":[1, 4], "x":5.25, "y":1.25}, - {"matrix":[1, 5], "x":6.25, "y":1.25}, - {"matrix":[1, 6], "x":9, "y":1.25}, - {"matrix":[1, 7], "x":10, "y":1.25}, - {"matrix":[1, 8], "x":11, "y":1.25}, - {"matrix":[1, 9], "x":12, "y":1.25}, - {"matrix":[1,10], "x":13.25, "y":1.25}, - {"matrix":[1,11], "x":14.25, "y":1.25}, - {"matrix":[1,12], "x":15.25, "y":1.25}, - {"matrix":[1,15], "x":18.25, "y":1.5}, - - {"matrix":[2, 0], "x":0.25, "y":2.25, "w":1.75}, - {"matrix":[2, 1], "x":2, "y":2.25}, - {"matrix":[2, 2], "x":3.5, "y":2.25}, - {"matrix":[2, 3], "x":4.5, "y":2.25}, - {"matrix":[2, 4], "x":5.5, "y":2.25}, - {"matrix":[2, 5], "x":6.5, "y":2.25}, - {"matrix":[2, 6], "x":9.5, "y":2.25}, - {"matrix":[2, 7], "x":10.25, "y":2.25}, - {"matrix":[2, 8], "x":11.25, "y":2.25}, - {"matrix":[2, 9], "x":12.25, "y":2.25}, - {"matrix":[2,10], "x":13.25, "y":2.25}, - {"matrix":[2,11], "x":14.75, "y":2.25}, - {"matrix":[2,13], "x":15.75, "y":2.25}, - {"matrix":[1,13], "x":16.75, "y":1.25, "w":1.25, "h":2}, - {"matrix":[2,15], "x":18.5, "y":2.5}, - - {"matrix":[3, 0], "x":0, "y":3.25, "w":1.25}, - {"matrix":[3, 1], "x":2.25, "y":3.25}, - {"matrix":[3, 2], "x":2.25, "y":3.25}, - {"matrix":[3, 3], "x":3.75, "y":3.25}, - {"matrix":[3, 4], "x":4.75, "y":3.25}, - {"matrix":[3, 5], "x":5.75, "y":3.25}, - {"matrix":[3, 6], "x":6.75, "y":3.25}, - {"matrix":[3, 7], "x":8.5, "y":3.25}, - {"matrix":[3, 8], "x":9.5, "y":3.25}, - {"matrix":[3, 9], "x":10.5, "y":3.25}, - {"matrix":[3,10], "x":11.5, "y":3.25}, - {"matrix":[3,11], "x":12.5, "y":3.25}, - {"matrix":[3,13], "x":14.25, "y":3.25}, - {"matrix":[3,14], "x":15.25, "y":3.25, "w":1.75}, - {"matrix":[3,15], "x":17.25, "y":3.5}, - - {"matrix":[4, 0], "x":0, "y":4.25, "w":1.25}, - {"matrix":[4, 1], "x":1.25, "y":4.25, "w":1.25}, - {"matrix":[4, 2], "x":3.75, "y":4.25, "w":1.25}, - {"matrix":[4, 5], "x":5, "y":4.25, "w":2.25}, - {"matrix":[4, 6], "x":7.25, "y":4.25}, - {"matrix":[4, 7], "x":8.75, "y":4.25}, - {"matrix":[4, 9], "x":9.75, "y":4.25, "w":2.75}, - {"matrix":[4,12], "x":12.5, "y":4.25}, - {"matrix":[4,13], "x":16.25, "y":4.5}, - {"matrix":[4,14], "x":17.25, "y":4.5}, - {"matrix":[4,15], "x":18.25, "y":4.5} - ] - }, - "LAYOUT_73_jis": { - "layout": [ - {"matrix":[0, 0], "x":0.75, "y":0.25}, - {"matrix":[0, 1], "x":1.75, "y":0.25}, - {"matrix":[0, 2], "x":2.75, "y":0}, - {"matrix":[0, 3], "x":3.75, "y":0.25}, - {"matrix":[0, 4], "x":4.75, "y":0.25}, - {"matrix":[0, 5], "x":5.75, "y":0.25}, - {"matrix":[0, 6], "x":6.75, "y":0.25}, - {"matrix":[0, 7], "x":9.5, "y":0.25}, - {"matrix":[0, 8], "x":10.5, "y":0.25}, - {"matrix":[0, 9], "x":11.5, "y":0.25}, - {"matrix":[0,10], "x":12.5, "y":0.25}, - {"matrix":[0,11], "x":13.5, "y":0}, - {"matrix":[0,12], "x":14.5, "y":0.25}, - {"matrix":[0,13], "x":15.5, "y":0.25}, - {"matrix":[0,14], "x":15.5, "y":0.25}, - {"matrix":[0,15], "x":18, "y":0}, - - {"matrix":[1, 0], "x":0.5, "y":1.25, "w":1.5}, - {"matrix":[1, 1], "x":2, "y":1.25}, - {"matrix":[1, 2], "x":3.25, "y":1.25}, - {"matrix":[1, 3], "x":4.25, "y":1.25}, - {"matrix":[1, 4], "x":5.25, "y":1.25}, - {"matrix":[1, 5], "x":6.25, "y":1.25}, - {"matrix":[1, 6], "x":9, "y":1.25}, - {"matrix":[1, 7], "x":10, "y":1.25}, - {"matrix":[1, 8], "x":11, "y":1.25}, - {"matrix":[1, 9], "x":12, "y":1.25}, - {"matrix":[1,10], "x":13.25, "y":1.25}, - {"matrix":[1,11], "x":14.25, "y":1.25}, - {"matrix":[1,12], "x":15.25, "y":1.25}, - {"matrix":[1,15], "x":18.25, "y":1.5}, - - {"matrix":[2, 0], "x":0.25, "y":2.25, "w":1.75}, - {"matrix":[2, 1], "x":2, "y":2.25}, - {"matrix":[2, 2], "x":3.5, "y":2.25}, - {"matrix":[2, 3], "x":4.5, "y":2.25}, - {"matrix":[2, 4], "x":5.5, "y":2.25}, - {"matrix":[2, 5], "x":6.5, "y":2.25}, - {"matrix":[2, 6], "x":9.5, "y":2.25}, - {"matrix":[2, 7], "x":10.25, "y":2.25}, - {"matrix":[2, 8], "x":11.25, "y":2.25}, - {"matrix":[2, 9], "x":12.25, "y":2.25}, - {"matrix":[2,10], "x":13.25, "y":2.25}, - {"matrix":[2,11], "x":14.75, "y":2.25}, - {"matrix":[2,13], "x":15.75, "y":2.25, "w":2.25}, - {"matrix":[1,13], "x":16.75, "y":1.25, "w":1.25, "h":2}, - {"matrix":[2,15], "x":18.5, "y":2.5}, - - {"matrix":[3, 0], "x":0, "y":3.25, "w":2.25}, - {"matrix":[3, 2], "x":2.25, "y":3.25}, - {"matrix":[3, 3], "x":3.75, "y":3.25}, - {"matrix":[3, 4], "x":4.75, "y":3.25}, - {"matrix":[3, 5], "x":5.75, "y":3.25}, - {"matrix":[3, 6], "x":6.75, "y":3.25}, - {"matrix":[3, 7], "x":8.5, "y":3.25}, - {"matrix":[3, 8], "x":9.5, "y":3.25}, - {"matrix":[3, 9], "x":10.5, "y":3.25}, - {"matrix":[3,10], "x":11.5, "y":3.25}, - {"matrix":[3,11], "x":12.5, "y":3.25}, - {"matrix":[3,12], "x":13.5, "y":3.25}, - {"matrix":[3,13], "x":14.25, "y":3.25}, - {"matrix":[3,14], "x":15.25, "y":3.25}, - {"matrix":[3,15], "x":17.25, "y":3.5}, - - {"matrix":[4, 0], "x":0, "y":4.25, "w":1.25}, - {"matrix":[4, 1], "x":1.25, "y":4.25}, - {"matrix":[4, 2], "x":2.25, "y":4.25}, - {"matrix":[4, 3], "x":3.75, "y":4.25, "w":1.25}, - {"matrix":[4, 4], "x":5, "y":4.25, "w":2.25}, - {"matrix":[4, 6], "x":7.25, "y":4.25}, - {"matrix":[4, 7], "x":8.75, "y":4.25}, - {"matrix":[4, 9], "x":9.75, "y":4.25}, - {"matrix":[4,11], "x":10.75, "y":4.25}, - {"matrix":[4,12], "x":12.5, "y":4.25}, - {"matrix":[4,13], "x":16.25, "y":4.5}, - {"matrix":[4,14], "x":17.25, "y":4.5}, - {"matrix":[4,15], "x":18.25, "y":4.5} - ] - } - } -} diff --git a/keyboards/keychron/k11_max/iso_encoder/rgb/config.h b/keyboards/keychron/k11_max/iso_encoder/rgb/config.h deleted file mode 100644 index edbfcff912..0000000000 --- a/keyboards/keychron/k11_max/iso_encoder/rgb/config.h +++ /dev/null @@ -1,57 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#pragma once - -#ifdef RGB_MATRIX_ENABLE -/* RGB Matrix driver configuration */ -# define DRIVER_COUNT 2 -# define RGB_MATRIX_LED_COUNT 69 - -# define SPI_SCK_PIN A5 -# define SPI_MISO_PIN A6 -# define SPI_MOSI_PIN A7 - -# define DRIVER_CS_PINS \ - { B8, B9 } -# define SNLED23751_SPI_DIVISOR 16 -# define SPI_DRIVER SPID1 - -/* Scan phase of led driver set as MSKPHASE_12CHANNEL(defined as 0x03 in snled27351.h) */ -# define SNLED27351_PHASE_CHANNEL MSKPHASE_12CHANNEL - -/* Set LED driver current */ -# define SNLED27351_CURRENT_TUNE \ - { 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20 } - -/* Set to infinit, which is use in USB mode by default */ -# define RGB_MATRIX_TIMEOUT RGB_MATRIX_TIMEOUT_INFINITE - -/* Allow shutdown of led driver to save power */ -# define RGB_MATRIX_DRIVER_SHUTDOWN_ENABLE -/* Turn off backlight on low brightness to save power */ -# define RGB_MATRIX_BRIGHTNESS_TURN_OFF_VAL 48 - -/* Indications */ -# define DIM_CAPS_LOCK -# define CAPS_LOCK_INDEX 29 -# define LOW_BAT_IND_INDEX \ - { 61, 64 } - -# define RGB_MATRIX_KEYPRESSES -# define RGB_MATRIX_FRAMEBUFFER_EFFECTS - -#endif diff --git a/keyboards/keychron/k11_max/iso_encoder/rgb/info.json b/keyboards/keychron/k11_max/iso_encoder/rgb/info.json deleted file mode 100644 index ee2871e590..0000000000 --- a/keyboards/keychron/k11_max/iso_encoder/rgb/info.json +++ /dev/null @@ -1,36 +0,0 @@ -{ - "usb": { - "pid": "0x0AB4", - "device_version": "1.0.0" - }, - "features": { - "rgb_matrix": true - }, - "rgb_matrix": { - "driver": "snled27351_spi", - "sleep": true, - "animations": { - "band_spiral_val": true, - "breathing": true, - "cycle_all": true, - "cycle_left_right": true, - "cycle_out_in": true, - "cycle_out_in_dual": true, - "cycle_pinwheel": true, - "cycle_spiral": true, - "cycle_up_down": true, - "digital_rain": true, - "dual_beacon": true, - "jellybean_raindrops": true, - "pixel_rain": true, - "rainbow_beacon": true, - "rainbow_moving_chevron": true, - "solid_reactive_multinexus": true, - "solid_reactive_multiwide": true, - "solid_reactive_simple": true, - "solid_splash": true, - "splash": true, - "typing_heatmap": true - } - } -} diff --git a/keyboards/keychron/k11_max/iso_encoder/rgb/keymaps/default/keymap.c b/keyboards/keychron/k11_max/iso_encoder/rgb/keymaps/default/keymap.c deleted file mode 100644 index 33b701055d..0000000000 --- a/keyboards/keychron/k11_max/iso_encoder/rgb/keymaps/default/keymap.c +++ /dev/null @@ -1,82 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#include QMK_KEYBOARD_H -#include "keychron_common.h" - -enum layers{ - MAC_BASE, - WIN_BASE, - MAC_FN1, - WIN_FN1, - FN2, -}; - -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_70_iso( - 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_MUTE, - 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_DEL, - 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_NUHS, KC_ENT, KC_HOME, - KC_LSFT, KC_NUBS, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, - KC_LCTL, KC_LOPTN, KC_LCMMD, KC_SPC, MO(MAC_FN1), MO(FN2), KC_SPC, KC_RCMMD, KC_LEFT, KC_DOWN, KC_RGHT), - - [WIN_BASE] = LAYOUT_70_iso( - 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_MUTE, - 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_DEL, - 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_NUHS, KC_ENT, KC_HOME, - KC_LSFT, KC_NUBS, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, - KC_LCTL, KC_LWIN, KC_LALT, KC_SPC, MO(WIN_FN1), MO(FN2), KC_SPC, KC_RALT, KC_LEFT, KC_DOWN, KC_RGHT), - - [MAC_FN1] = LAYOUT_70_iso( - KC_GRV, KC_BRID, KC_BRIU, KC_MCTRL, KC_LNPAD,RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, RGB_TOG, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, KC_INS, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, KC_END, - _______, _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, NK_TOGG, _______, _______, _______, _______, _______, KC_PGUP, - _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_PGDN, _______), - - [WIN_FN1] = LAYOUT_70_iso( - KC_GRV, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, RGB_TOG, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, KC_INS, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, KC_END, - _______, _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, NK_TOGG, _______, _______, _______, _______, _______, KC_PGUP, - _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_PGDN, _______), - - [FN2] = LAYOUT_70_iso( - KC_TILD, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, BAT_LVL, BAT_LVL, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______) -}; - -#if defined(ENCODER_MAP_ENABLE) - const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][2] = { - [MAC_BASE] = {ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [WIN_BASE] = {ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [MAC_FN1] = {ENCODER_CCW_CW(RGB_VAD, RGB_VAI)}, - [WIN_FN1] = {ENCODER_CCW_CW(RGB_VAD, RGB_VAI)}, - [FN2] = {ENCODER_CCW_CW(_______, _______)}, - }; -#endif // ENCODER_MAP_ENABLE - -// clang-format on -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - if (!process_record_keychron_common(keycode, record)) { - return false; - } - return true; -} diff --git a/keyboards/keychron/k11_max/iso_encoder/rgb/keymaps/via/keymap.c b/keyboards/keychron/k11_max/iso_encoder/rgb/keymaps/via/keymap.c deleted file mode 100644 index 33b701055d..0000000000 --- a/keyboards/keychron/k11_max/iso_encoder/rgb/keymaps/via/keymap.c +++ /dev/null @@ -1,82 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#include QMK_KEYBOARD_H -#include "keychron_common.h" - -enum layers{ - MAC_BASE, - WIN_BASE, - MAC_FN1, - WIN_FN1, - FN2, -}; - -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_70_iso( - 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_MUTE, - 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_DEL, - 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_NUHS, KC_ENT, KC_HOME, - KC_LSFT, KC_NUBS, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, - KC_LCTL, KC_LOPTN, KC_LCMMD, KC_SPC, MO(MAC_FN1), MO(FN2), KC_SPC, KC_RCMMD, KC_LEFT, KC_DOWN, KC_RGHT), - - [WIN_BASE] = LAYOUT_70_iso( - 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_MUTE, - 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_DEL, - 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_NUHS, KC_ENT, KC_HOME, - KC_LSFT, KC_NUBS, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, - KC_LCTL, KC_LWIN, KC_LALT, KC_SPC, MO(WIN_FN1), MO(FN2), KC_SPC, KC_RALT, KC_LEFT, KC_DOWN, KC_RGHT), - - [MAC_FN1] = LAYOUT_70_iso( - KC_GRV, KC_BRID, KC_BRIU, KC_MCTRL, KC_LNPAD,RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, RGB_TOG, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, KC_INS, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, KC_END, - _______, _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, NK_TOGG, _______, _______, _______, _______, _______, KC_PGUP, - _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_PGDN, _______), - - [WIN_FN1] = LAYOUT_70_iso( - KC_GRV, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, RGB_TOG, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, KC_INS, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, KC_END, - _______, _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, NK_TOGG, _______, _______, _______, _______, _______, KC_PGUP, - _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_PGDN, _______), - - [FN2] = LAYOUT_70_iso( - KC_TILD, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, BAT_LVL, BAT_LVL, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______) -}; - -#if defined(ENCODER_MAP_ENABLE) - const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][2] = { - [MAC_BASE] = {ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [WIN_BASE] = {ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [MAC_FN1] = {ENCODER_CCW_CW(RGB_VAD, RGB_VAI)}, - [WIN_FN1] = {ENCODER_CCW_CW(RGB_VAD, RGB_VAI)}, - [FN2] = {ENCODER_CCW_CW(_______, _______)}, - }; -#endif // ENCODER_MAP_ENABLE - -// clang-format on -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - if (!process_record_keychron_common(keycode, record)) { - return false; - } - return true; -} diff --git a/keyboards/keychron/k11_max/iso_encoder/rgb/keymaps/via/rules.mk b/keyboards/keychron/k11_max/iso_encoder/rgb/keymaps/via/rules.mk deleted file mode 100644 index 1e5b99807c..0000000000 --- a/keyboards/keychron/k11_max/iso_encoder/rgb/keymaps/via/rules.mk +++ /dev/null @@ -1 +0,0 @@ -VIA_ENABLE = yes diff --git a/keyboards/keychron/k11_max/iso_encoder/rgb/rgb.c b/keyboards/keychron/k11_max/iso_encoder/rgb/rgb.c deleted file mode 100644 index 60803e7a18..0000000000 --- a/keyboards/keychron/k11_max/iso_encoder/rgb/rgb.c +++ /dev/null @@ -1,132 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#include "quantum.h" - -// clang-format off -#ifdef RGB_MATRIX_ENABLE -const snled27351_led_t PROGMEM g_snled27351_leds[RGB_MATRIX_LED_COUNT] = { -/* Refer to SNLED27351 manual for these locations - * driver - * | R location - * | | G location - * | | | B location - * | | | | */ - {0, A_1, C_1, B_1}, - {0, A_2, C_2, B_2}, - {0, A_3, C_3, B_3}, - {0, A_4, C_4, B_4}, - {0, A_5, C_5, B_5}, - {0, A_6, C_6, B_6}, - {0, A_7, C_7, B_7}, - {0, A_8, C_8, B_8}, - {0, A_9, C_9, B_9}, - {0, A_10, C_10, B_10}, - {0, A_11, C_11, B_11}, - {0, A_12, C_12, B_12}, - {0, A_13, C_13, B_13}, - {0, A_14, C_14, B_14}, - - {0, F_1, D_1, E_1}, - {0, F_2, D_2, E_2}, - {0, F_3, D_3, E_3}, - {0, F_4, D_4, E_4}, - {0, F_5, D_5, E_5}, - {0, F_6, D_6, E_6}, - {0, F_7, D_7, E_7}, - {0, F_8, D_8, E_8}, - {0, F_9, D_9, E_9}, - {0, F_10, D_10, E_10}, - {0, F_11, D_11, E_11}, - {0, F_12, D_12, E_12}, - {0, F_13, D_13, E_13}, - {0, F_14, D_14, E_14}, - {0, F_16, D_16, E_16}, - - {1, I_1, G_1, H_1}, - {1, I_2, G_2, H_2}, - {1, I_3, G_3, H_3}, - {1, I_4, G_4, H_4}, - {1, I_5, G_5, H_5}, - {1, I_6, G_6, H_6}, - {1, I_7, G_7, H_7}, - {1, I_8, G_8, H_8}, - {1, I_9, G_9, H_9}, - {1, I_10, G_10, H_10}, - {1, I_11, G_11, H_11}, - {1, I_12, G_12, H_12}, - {1, I_14, G_14, H_14}, - {1, I_16, G_16, H_16}, - - {1, C_1, A_1, B_1}, - {1, C_2, A_2, B_2}, - {1, C_3, A_3, B_3}, - {1, C_4, A_4, B_4}, - {1, C_5, A_5, B_5}, - {1, C_6, A_6, B_6}, - {1, C_7, A_7, B_7}, - {1, C_8, A_8, B_8}, - {1, C_9, A_9, B_9}, - {1, C_10, A_10, B_10}, - {1, C_11, A_11, B_11}, - {1, C_12, A_12, B_12}, - {1, C_14, A_14, B_14}, - {1, C_15, A_15, B_15}, - {1, C_16, A_16, B_16}, - - {1, F_1, D_1, E_1}, - {1, F_2, D_2, E_2}, - {1, F_3, D_3, E_3}, - {1, F_6, D_6, E_6}, - {1, F_7, D_7, E_7}, - {1, F_8, D_8, E_8}, - {1, F_10, D_10, E_10}, - {1, F_13, D_13, E_13}, - {1, F_14, D_14, E_14}, - {1, F_15, D_15, E_15}, - {1, F_16, D_16, E_16} -}; - -#define __ NO_LED - -led_config_t g_led_config = { - { - // Key Matrix to LED Index - { 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, 40, __, 41, __, 42 }, - { 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, __, 55, 56, 57 }, - { 58, 59, 60, __, __, 61, 62, 63, __, 64, __, __, 65, 66, 67, 68 }, - }, - { - // LED Index to Physical Position - {8, 1}, {20, 1}, {33, 0}, {48, 3}, {61, 6}, {74, 8}, {87,11}, {106,11}, {119, 8}, {132, 6}, {145, 3}, {160, 0}, {173, 1}, {193, 1}, - {8,14}, {24,14}, {39,14}, {52,17}, {65,20}, {78,22}, {103,25},{116,22}, {129,20}, {142,17}, {155,14}, {170,14}, {183,14}, {200,20}, {222,14}, - {8,27}, {24,27}, {39,28}, {52,30}, {65,33}, {78,36}, {109,37},{122,34}, {135,32}, {148,29}, {162,27}, {176,27}, {190,27}, {224,27}, - {8,40}, {13,40}, {28,40}, {43,42}, {56,44}, {69,47}, {82,50}, {102,52}, {115,49}, {128,46}, {141,44}, {154,44}, {169,40}, {189,40}, {209,43}, - {0,53}, {16,53}, {42,55}, {65,60}, {86,64}, {107,64}, {131,59}, {156,54}, {196,56}, {209,56}, {222,56}, - }, - { - // RGB LED Index to Flag - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - } -}; - -#endif diff --git a/keyboards/keychron/k11_max/iso_encoder/rgb/rules.mk b/keyboards/keychron/k11_max/iso_encoder/rgb/rules.mk deleted file mode 100644 index 6e7633bfe0..0000000000 --- a/keyboards/keychron/k11_max/iso_encoder/rgb/rules.mk +++ /dev/null @@ -1 +0,0 @@ -# This file intentionally left blank diff --git a/keyboards/keychron/k11_max/iso_encoder/white/config.h b/keyboards/keychron/k11_max/iso_encoder/white/config.h deleted file mode 100644 index a8e37ba5af..0000000000 --- a/keyboards/keychron/k11_max/iso_encoder/white/config.h +++ /dev/null @@ -1,55 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#pragma once - -#ifdef LED_MATRIX_ENABLE -/* LED matrix driver configuration */ -# define DRIVER_COUNT 1 -# define LED_MATRIX_LED_COUNT 69 - -# define SPI_SCK_PIN A5 -# define SPI_MISO_PIN A6 -# define SPI_MOSI_PIN A7 - -# define DRIVER_CS_PINS \ - { B9 } -# define SNLED23751_SPI_DIVISOR 16 -# define SPI_DRIVER SPID1 - -/* Use first 6 channels of LED driver */ -# define SNLED27351_PHASE_CHANNEL MSKPHASE_6CHANNEL - -/* Set LED driver current */ -# define SNLED27351_CURRENT_TUNE \ - { 0x50, 0x50, 0x50, 0x50, 0x50, 0x50, 0x50, 0x50, 0x50, 0x50, 0x50, 0x50 } - -/* Set to infinit, which is use in USB mode by default */ -# define LED_MATRIX_TIMEOUT LED_MATRIX_TIMEOUT_INFINITE - -/* Allow shutdown of led driver to save power */ -# define LED_MATRIX_DRIVER_SHUTDOWN_ENABLE -/* Turn off backlight on low brightness to save power */ -# define LED_MATRIX_BRIGHTNESS_TURN_OFF_VAL 48 - -/* Indications */ -# define DIM_CAPS_LOCK -# define CAPS_LOCK_INDEX 29 -# define LOW_BAT_IND_INDEX \ - { 61, 64 } - -# define LED_MATRIX_KEYPRESSES -#endif diff --git a/keyboards/keychron/k11_max/iso_encoder/white/info.json b/keyboards/keychron/k11_max/iso_encoder/white/info.json deleted file mode 100644 index 51a1ebd748..0000000000 --- a/keyboards/keychron/k11_max/iso_encoder/white/info.json +++ /dev/null @@ -1,30 +0,0 @@ -{ - "usb": { - "pid": "0x0ABA", - "device_version": "1.0.0" - }, - "features": { - "led_matrix": true - }, - "led_matrix": { - "driver": "snled27351_spi", - "sleep": true, - "animations": { - "none": true, - "solid": true, - "breathing": true, - "band_pinwheel": true, - "band_spiral": true, - "cycle_left_right": true, - "cycle_up_down": true, - "cycle_out_in": true, - "dual_beacon": true, - "solid_reactive_simple": true, - "solid_reactive_multiwide": true, - "solid_reactive_multinexus": true, - "solid_splash": true, - "wave_left_right": true, - "wave_up_down": true - } - } -} diff --git a/keyboards/keychron/k11_max/iso_encoder/white/keymaps/default/keymap.c b/keyboards/keychron/k11_max/iso_encoder/white/keymaps/default/keymap.c deleted file mode 100644 index d504b90fe1..0000000000 --- a/keyboards/keychron/k11_max/iso_encoder/white/keymaps/default/keymap.c +++ /dev/null @@ -1,83 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#include QMK_KEYBOARD_H -#include "keychron_common.h" - -enum layers{ - MAC_BASE, - WIN_BASE, - MAC_FN1, - WIN_FN1, - FN2, -}; - -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_70_iso( - 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_MUTE, - 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_DEL, - 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_NUHS, KC_ENT, KC_HOME, - KC_LSFT, KC_NUBS, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, - KC_LCTL, KC_LOPTN, KC_LCMMD, KC_SPC, MO(MAC_FN1), MO(FN2), KC_SPC, KC_RCMMD, KC_LEFT, KC_DOWN, KC_RGHT), - - [WIN_BASE] = LAYOUT_70_iso( - 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_MUTE, - 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_DEL, - 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_NUHS, KC_ENT, KC_HOME, - KC_LSFT, KC_NUBS, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, - KC_LCTL, KC_LWIN, KC_LALT, KC_SPC, MO(WIN_FN1), MO(FN2), KC_SPC, KC_RALT, KC_LEFT, KC_DOWN, KC_RGHT), - - [MAC_FN1] = LAYOUT_70_iso( - KC_GRV, KC_BRID, KC_BRIU, KC_MCTRL,KC_LNPAD, BL_DOWN, BL_UP, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, BL_TOGG, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, KC_INS, - BL_TOGG, BL_STEP, BL_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_END, - _______, _______, _______, BL_DOWN, _______, _______, _______, _______, NK_TOGG, _______, _______, _______, _______, _______, KC_PGUP, - _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_PGDN, _______), - - [WIN_FN1] = LAYOUT_70_iso( - KC_GRV, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, BL_DOWN, BL_UP, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, BL_TOGG, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, KC_INS, - BL_TOGG, BL_STEP, BL_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_END, - _______, _______, _______, BL_DOWN, _______, _______, _______, _______, NK_TOGG, _______, _______, _______, _______, _______, KC_PGUP, - _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_PGDN, _______), - - [FN2] = LAYOUT_70_iso( - KC_TILD, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, BAT_LVL, BAT_LVL, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______) -}; - -#if defined(ENCODER_MAP_ENABLE) -const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][2] = { - [MAC_BASE] = {ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [WIN_BASE] = {ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [MAC_FN1] = {ENCODER_CCW_CW(BL_DOWN, BL_UP)}, - [WIN_FN1] = {ENCODER_CCW_CW(BL_DOWN, BL_UP)}, - [FN2] = {ENCODER_CCW_CW(_______, _______)}, -}; -#endif // ENCODER_MAP_ENABLE - -// clang-format on -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - if (!process_record_keychron_common(keycode, record)) { - return false; - } - return true; -} - diff --git a/keyboards/keychron/k11_max/iso_encoder/white/keymaps/via/keymap.c b/keyboards/keychron/k11_max/iso_encoder/white/keymaps/via/keymap.c deleted file mode 100644 index d504b90fe1..0000000000 --- a/keyboards/keychron/k11_max/iso_encoder/white/keymaps/via/keymap.c +++ /dev/null @@ -1,83 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#include QMK_KEYBOARD_H -#include "keychron_common.h" - -enum layers{ - MAC_BASE, - WIN_BASE, - MAC_FN1, - WIN_FN1, - FN2, -}; - -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_70_iso( - 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_MUTE, - 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_DEL, - 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_NUHS, KC_ENT, KC_HOME, - KC_LSFT, KC_NUBS, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, - KC_LCTL, KC_LOPTN, KC_LCMMD, KC_SPC, MO(MAC_FN1), MO(FN2), KC_SPC, KC_RCMMD, KC_LEFT, KC_DOWN, KC_RGHT), - - [WIN_BASE] = LAYOUT_70_iso( - 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_MUTE, - 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_DEL, - 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_NUHS, KC_ENT, KC_HOME, - KC_LSFT, KC_NUBS, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, - KC_LCTL, KC_LWIN, KC_LALT, KC_SPC, MO(WIN_FN1), MO(FN2), KC_SPC, KC_RALT, KC_LEFT, KC_DOWN, KC_RGHT), - - [MAC_FN1] = LAYOUT_70_iso( - KC_GRV, KC_BRID, KC_BRIU, KC_MCTRL,KC_LNPAD, BL_DOWN, BL_UP, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, BL_TOGG, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, KC_INS, - BL_TOGG, BL_STEP, BL_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_END, - _______, _______, _______, BL_DOWN, _______, _______, _______, _______, NK_TOGG, _______, _______, _______, _______, _______, KC_PGUP, - _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_PGDN, _______), - - [WIN_FN1] = LAYOUT_70_iso( - KC_GRV, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, BL_DOWN, BL_UP, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, BL_TOGG, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, KC_INS, - BL_TOGG, BL_STEP, BL_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_END, - _______, _______, _______, BL_DOWN, _______, _______, _______, _______, NK_TOGG, _______, _______, _______, _______, _______, KC_PGUP, - _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_PGDN, _______), - - [FN2] = LAYOUT_70_iso( - KC_TILD, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, BAT_LVL, BAT_LVL, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______) -}; - -#if defined(ENCODER_MAP_ENABLE) -const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][2] = { - [MAC_BASE] = {ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [WIN_BASE] = {ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [MAC_FN1] = {ENCODER_CCW_CW(BL_DOWN, BL_UP)}, - [WIN_FN1] = {ENCODER_CCW_CW(BL_DOWN, BL_UP)}, - [FN2] = {ENCODER_CCW_CW(_______, _______)}, -}; -#endif // ENCODER_MAP_ENABLE - -// clang-format on -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - if (!process_record_keychron_common(keycode, record)) { - return false; - } - return true; -} - diff --git a/keyboards/keychron/k11_max/iso_encoder/white/keymaps/via/rules.mk b/keyboards/keychron/k11_max/iso_encoder/white/keymaps/via/rules.mk deleted file mode 100644 index 1e5b99807c..0000000000 --- a/keyboards/keychron/k11_max/iso_encoder/white/keymaps/via/rules.mk +++ /dev/null @@ -1 +0,0 @@ -VIA_ENABLE = yes diff --git a/keyboards/keychron/k11_max/iso_encoder/white/rules.mk b/keyboards/keychron/k11_max/iso_encoder/white/rules.mk deleted file mode 100644 index 6e7633bfe0..0000000000 --- a/keyboards/keychron/k11_max/iso_encoder/white/rules.mk +++ /dev/null @@ -1 +0,0 @@ -# This file intentionally left blank diff --git a/keyboards/keychron/k11_max/iso_encoder/white/white.c b/keyboards/keychron/k11_max/iso_encoder/white/white.c deleted file mode 100644 index 4fd49f462c..0000000000 --- a/keyboards/keychron/k11_max/iso_encoder/white/white.c +++ /dev/null @@ -1,130 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#include "quantum.h" - -// clang-format off -#ifdef LED_MATRIX_ENABLE -const snled27351_led_t g_snled27351_leds[LED_MATRIX_LED_COUNT] = { -/* Refer to SNLED27351 manual for these locations - * driver - * | LED address - * | | */ - {0, E_1}, - {0, E_2}, - {0, E_3}, - {0, E_4}, - {0, E_5}, - {0, E_6}, - {0, E_7}, - {0, E_8}, - {0, E_9}, - {0, E_10}, - {0, E_11}, - {0, E_12}, - {0, E_13}, - {0, E_14}, - - {0, D_1}, - {0, D_2}, - {0, D_3}, - {0, D_4}, - {0, D_5}, - {0, D_6}, - {0, D_7}, - {0, D_8}, - {0, D_9}, - {0, D_10}, - {0, D_11}, - {0, D_12}, - {0, D_13}, - {0, D_14}, - {0, D_16}, - - {0, C_1}, - {0, C_2}, - {0, C_3}, - {0, C_4}, - {0, C_5}, - {0, C_6}, - {0, C_7}, - {0, C_8}, - {0, C_9}, - {0, C_10}, - {0, C_11}, - {0, C_12}, - {0, C_14}, - {0, C_16}, - - {0, B_1}, - {0, B_2}, - {0, B_3}, - {0, B_4}, - {0, B_5}, - {0, B_6}, - {0, B_7}, - {0, B_8}, - {0, B_9}, - {0, B_10}, - {0, B_11}, - {0, B_12}, - {0, B_14}, - {0, B_15}, - {0, B_16}, - - {0, A_1}, - {0, A_2}, - {0, A_3}, - {0, A_6}, - {0, A_7}, - {0, A_8}, - {0, A_10}, - {0, A_13}, - {0, A_14}, - {0, A_15}, - {0, A_16}, -}; - -#define __ NO_LED - -led_config_t g_led_config = { - { - // Key Matrix to LED Index - { 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, 40, __, 41, __, 42 }, - { 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, __, 55, 56, 57 }, - { 58, 59, 60, __, __, 61, 62, 63, __, 64, __, __, 65, 66, 67, 68 }, - }, - { - // LED Index to Physical Position - {8, 1}, {20, 1}, {33, 0}, {48, 3}, {61, 6}, {74, 8}, {87,11}, {106,11}, {119, 8}, {132, 6}, {145, 3}, {160, 0}, {173, 1}, {193, 1}, - {8,14}, {24,14}, {39,14}, {52,17}, {65,20}, {78,22}, {103,25},{116,22}, {129,20}, {142,17}, {155,14}, {170,14}, {183,14}, {200,20}, {222,14}, - {8,27}, {24,27}, {39,28}, {52,30}, {65,33}, {78,36}, {109,37},{122,34}, {135,32}, {148,29}, {162,27}, {176,27}, {190,27}, {224,27}, - {8,40}, {13,40}, {28,40}, {43,42}, {56,44}, {69,47}, {82,50}, {102,52}, {115,49}, {128,46}, {141,44}, {154,44}, {169,40}, {189,40}, {209,43}, - {0,53}, {16,53}, {42,55}, {65,60}, {86,64}, {107,64}, {131,59}, {156,54}, {196,56}, {209,56}, {222,56}, - }, - { - //LED Index to Flag - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - } -}; - -#endif diff --git a/keyboards/keychron/k11_max/jis_encoder/rgb/config.h b/keyboards/keychron/k11_max/jis_encoder/rgb/config.h deleted file mode 100644 index c928db9850..0000000000 --- a/keyboards/keychron/k11_max/jis_encoder/rgb/config.h +++ /dev/null @@ -1,46 +0,0 @@ -/* Copyright 2025 @ 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 . - */ - -#pragma once - -#ifdef RGB_MATRIX_ENABLE -/* RGB Matrix driver configuration */ -# define DRIVER_COUNT 2 -# define RGB_MATRIX_LED_COUNT 72 -# define DRIVER_CS_PINS \ - { B8, B9 } - -/* Set LED driver current */ -# define SNLED27351_CURRENT_TUNE \ - { 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20 } - -/* Set to infinit, which is use in USB mode by default */ -# define RGB_MATRIX_TIMEOUT RGB_MATRIX_TIMEOUT_INFINITE -/* Allow shutdown of led driver to save power */ -# define RGB_MATRIX_DRIVER_SHUTDOWN_ENABLE -/* Turn off backlight on low brightness to save power */ -# define RGB_MATRIX_BRIGHTNESS_TURN_OFF_VAL 48 - -/* Indications */ -# define LOW_BAT_IND_INDEX \ - { 63, 66 } -# define DIM_CAPS_LOCK -# define CAPS_LOCK_INDEX 30 - -# define RGB_MATRIX_KEYPRESSES -# define RGB_MATRIX_FRAMEBUFFER_EFFECTS - -#endif diff --git a/keyboards/keychron/k11_max/jis_encoder/rgb/info.json b/keyboards/keychron/k11_max/jis_encoder/rgb/info.json deleted file mode 100644 index 62a1bb0674..0000000000 --- a/keyboards/keychron/k11_max/jis_encoder/rgb/info.json +++ /dev/null @@ -1,35 +0,0 @@ -{ - "usb": { - "pid": "0x0AB5", - "device_version": "1.0.0" - }, - "features": { - "rgb_matrix": true - }, - "rgb_matrix": { - "driver": "snled27351_spi", - "animations": { - "band_spiral_val": true, - "breathing": true, - "cycle_all": true, - "cycle_left_right": true, - "cycle_out_in": true, - "cycle_out_in_dual": true, - "cycle_pinwheel": true, - "cycle_spiral": true, - "cycle_up_down": true, - "digital_rain": true, - "dual_beacon": true, - "jellybean_raindrops": true, - "pixel_rain": true, - "rainbow_beacon": true, - "rainbow_moving_chevron": true, - "solid_reactive_multinexus": true, - "solid_reactive_multiwide": true, - "solid_reactive_simple": true, - "solid_splash": true, - "splash": true, - "typing_heatmap": true - } - } -} diff --git a/keyboards/keychron/k11_max/jis_encoder/rgb/keymaps/default/keymap.c b/keyboards/keychron/k11_max/jis_encoder/rgb/keymaps/default/keymap.c deleted file mode 100644 index 263038063b..0000000000 --- a/keyboards/keychron/k11_max/jis_encoder/rgb/keymaps/default/keymap.c +++ /dev/null @@ -1,81 +0,0 @@ -/* Copyright 2025 @ 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 . - */ - - #include QMK_KEYBOARD_H - #include "keychron_common.h" - - enum layers { - MAC_BASE, - WIN_BASE, - MAC_FN1, - WIN_FN1, - FN2, - }; - // clang-format off - const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_73_jis( - 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_INT3, KC_BSPC, KC_MUTE, - 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_DEL, - 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_BSLS, KC_ENT, KC_HOME, - KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_INT1, KC_RSFT, KC_UP, - KC_LCTL, KC_LOPTN, KC_LCMMD, KC_LNG2, KC_SPC, MO(MAC_FN1), MO(FN2), KC_SPC, KC_LNG1, KC_RCMMD, KC_LEFT, KC_DOWN, KC_RGHT), - - [WIN_BASE] = LAYOUT_73_jis( - 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_INT3, KC_BSPC, KC_MUTE, - 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_DEL, - 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_BSLS, KC_ENT, KC_HOME, - KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_INT1, KC_RSFT, KC_UP, - KC_LCTL, KC_LWIN, KC_LALT, KC_INT5, KC_SPC, MO(WIN_FN1), MO(FN2), KC_SPC, KC_INT4, KC_RALT, KC_LEFT, KC_DOWN, KC_RGHT), - - [MAC_FN1] = LAYOUT_73_jis( - KC_GRV, KC_BRID, KC_BRIU, KC_MCTRL, KC_LNPAD, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, RGB_TOG, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, KC_INS, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, KC_END, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, NK_TOGG, _______, _______, _______, _______, _______, _______, KC_PGUP, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_PGDN, _______), - - [WIN_FN1] = LAYOUT_73_jis( - KC_GRV, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, RGB_TOG, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, KC_INS, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, KC_END, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, NK_TOGG, _______, _______, _______, _______, _______, _______, KC_PGUP, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_PGDN, _______), - - [FN2] = LAYOUT_73_jis( - KC_TILD, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, BAT_LVL, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______) - }; - - #if defined(ENCODER_MAP_ENABLE) - const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][2] = { - [MAC_BASE] = { ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [WIN_BASE] = { ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [MAC_FN1] = { ENCODER_CCW_CW(RGB_VAD, RGB_VAI)}, - [WIN_FN1] = { ENCODER_CCW_CW(RGB_VAD, RGB_VAI)}, - [FN2] = { ENCODER_CCW_CW(_______, _______)}, - }; - #endif // ENCODER_MAP_ENABLE - - // clang-format on - bool process_record_user(uint16_t keycode, keyrecord_t *record) { - if (!process_record_keychron_common(keycode, record)) { - return false; - } - return true; - } diff --git a/keyboards/keychron/k11_max/jis_encoder/rgb/keymaps/via/keymap.c b/keyboards/keychron/k11_max/jis_encoder/rgb/keymaps/via/keymap.c deleted file mode 100644 index 5037354b86..0000000000 --- a/keyboards/keychron/k11_max/jis_encoder/rgb/keymaps/via/keymap.c +++ /dev/null @@ -1,81 +0,0 @@ -/* Copyright 2025 @ 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 . - */ - -#include QMK_KEYBOARD_H -#include "keychron_common.h" - -enum layers { - MAC_BASE, - WIN_BASE, - MAC_FN1, - WIN_FN1, - FN2, -}; -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_73_jis( - 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_INT3, KC_BSPC, KC_MUTE, - 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_DEL, - 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_BSLS, KC_ENT, KC_HOME, - KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_INT1, KC_RSFT, KC_UP, - KC_LCTL, KC_LOPTN, KC_LCMMD, KC_LNG2, KC_SPC, MO(MAC_FN1), MO(FN2), KC_SPC, KC_LNG1, KC_RCMMD, KC_LEFT, KC_DOWN, KC_RGHT), - - [WIN_BASE] = LAYOUT_73_jis( - 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_INT3, KC_BSPC, KC_MUTE, - 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_DEL, - 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_BSLS, KC_ENT, KC_HOME, - KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_INT1, KC_RSFT, KC_UP, - KC_LCTL, KC_LWIN, KC_LALT, KC_INT5, KC_SPC, MO(WIN_FN1), MO(FN2), KC_SPC, KC_INT4, KC_RALT, KC_LEFT, KC_DOWN, KC_RGHT), - - [MAC_FN1] = LAYOUT_73_jis( - KC_GRV, KC_BRID, KC_BRIU, KC_MCTRL, KC_LNPAD, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, RGB_TOG, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, KC_INS, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, KC_END, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, NK_TOGG, _______, _______, _______, _______, _______, _______, KC_PGUP, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_PGDN, _______), - - [WIN_FN1] = LAYOUT_73_jis( - KC_GRV, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, RGB_TOG, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, KC_INS, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, KC_END, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, NK_TOGG, _______, _______, _______, _______, _______, _______, KC_PGUP, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_PGDN, _______), - - [FN2] = LAYOUT_73_jis( - KC_TILD, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, BAT_LVL, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______) -}; - -#if defined(ENCODER_MAP_ENABLE) - const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][2] = { - [MAC_BASE] = { ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [WIN_BASE] = { ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [MAC_FN1] = { ENCODER_CCW_CW(RGB_VAD, RGB_VAI)}, - [WIN_FN1] = { ENCODER_CCW_CW(RGB_VAD, RGB_VAI)}, - [FN2] = { ENCODER_CCW_CW(_______, _______)}, - }; -#endif // ENCODER_MAP_ENABLE - -// clang-format on -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - if (!process_record_keychron_common(keycode, record)) { - return false; - } - return true; -} diff --git a/keyboards/keychron/k11_max/jis_encoder/rgb/keymaps/via/rules.mk b/keyboards/keychron/k11_max/jis_encoder/rgb/keymaps/via/rules.mk deleted file mode 100644 index 1e5b99807c..0000000000 --- a/keyboards/keychron/k11_max/jis_encoder/rgb/keymaps/via/rules.mk +++ /dev/null @@ -1 +0,0 @@ -VIA_ENABLE = yes diff --git a/keyboards/keychron/k11_max/jis_encoder/rgb/rgb.c b/keyboards/keychron/k11_max/jis_encoder/rgb/rgb.c deleted file mode 100644 index fe1cd2bb5c..0000000000 --- a/keyboards/keychron/k11_max/jis_encoder/rgb/rgb.c +++ /dev/null @@ -1,135 +0,0 @@ -/* Copyright 2025 @ 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 . - */ - -#include "quantum.h" - -// clang-format off -#ifdef RGB_MATRIX_ENABLE -const snled27351_led_t PROGMEM g_snled27351_leds[RGB_MATRIX_LED_COUNT] = { -/* Refer to SNLED27351 manual for these locations - * driver - * | R location - * | | G location - * | | | B location - * | | | | */ - {0, A_1, C_1, B_1}, - {0, A_2, C_2, B_2}, - {0, A_3, C_3, B_3}, - {0, A_4, C_4, B_4}, - {0, A_5, C_5, B_5}, - {0, A_6, C_6, B_6}, - {0, A_7, C_7, B_7}, - {0, A_8, C_8, B_8}, - {0, A_9, C_9, B_9}, - {0, A_10, C_10, B_10}, - {0, A_11, C_11, B_11}, - {0, A_12, C_12, B_12}, - {0, A_13, C_13, B_13}, - {0, A_14, C_14, B_14}, - {0, A_15, C_15, B_15}, - - {0, F_1, D_1, E_1}, - {0, F_2, D_2, E_2}, - {0, F_3, D_3, E_3}, - {0, F_4, D_4, E_4}, - {0, F_5, D_5, E_5}, - {0, F_6, D_6, E_6}, - {0, F_7, D_7, E_7}, - {0, F_8, D_8, E_8}, - {0, F_9, D_9, E_9}, - {0, F_10, D_10, E_10}, - {0, F_11, D_11, E_11}, - {0, F_12, D_12, E_12}, - {0, F_13, D_13, E_13}, - {0, F_14, D_14, E_14}, - {0, F_16, D_16, E_16}, - - {1, I_1, G_1, H_1}, - {1, I_2, G_2, H_2}, - {1, I_3, G_3, H_3}, - {1, I_4, G_4, H_4}, - {1, I_5, G_5, H_5}, - {1, I_6, G_6, H_6}, - {1, I_7, G_7, H_7}, - {1, I_8, G_8, H_8}, - {1, I_9, G_9, H_9}, - {1, I_10, G_10, H_10}, - {1, I_11, G_11, H_11}, - {1, I_12, G_12, H_12}, - {1, I_14, G_14, H_14}, - {1, I_16, G_16, H_16}, - - {1, C_1, A_1, B_1}, - {1, C_3, A_3, B_3}, - {1, C_4, A_4, B_4}, - {1, C_5, A_5, B_5}, - {1, C_6, A_6, B_6}, - {1, C_7, A_7, B_7}, - {1, C_8, A_8, B_8}, - {1, C_9, A_9, B_9}, - {1, C_10, A_10, B_10}, - {1, C_11, A_11, B_11}, - {1, C_12, A_12, B_12}, - {1, C_13, A_13, B_13}, - {1, C_14, A_14, B_14}, - {1, C_15, A_15, B_15}, - {1, C_16, A_16, B_16}, - - {1, F_1, D_1, E_1}, - {1, F_2, D_2, E_2}, - {1, F_3, D_3, E_3}, - {1, F_4, D_4, E_4}, - {1, F_5, D_5, E_5}, - {1, F_7, D_7, E_7}, - {1, F_8, D_8, E_8}, - {1, F_10, D_10, E_10}, - {1, F_12, D_12, E_12}, - {1, F_13, D_13, E_13}, - {1, F_14, D_14, E_14}, - {1, F_15, D_15, E_15}, - {1, F_16, D_16, E_16} -}; - -#define __ NO_LED - -led_config_t g_led_config = { - { - // Key Matrix to LED Index - { 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, 40, 41, __, 42, __, 43 }, - { 44, __, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58 }, - { 59, 60, 61, 62, 63, __, 64, 65, __, 66, __, 67, 68, 69, 70, 71 }, - }, - { - // LED Index to Physical Position - {8, 1}, {20, 1}, {33, 0}, {48, 3}, {61, 6}, {74, 8}, {86,11}, {106,11}, {119, 8}, {132, 6}, {145, 3}, {160, 0}, {173, 1}, {186, 1}, {199, 1}, - {8,14}, {24,14}, {39,14}, {52,17}, {65,20}, {78,22}, {103,25},{116,22}, {129,20}, {142,17}, {155,14}, {171,14}, {184,14}, {204,20}, {222,14}, - {8,27}, {24,27}, {39,28}, {52,30}, {65,33}, {78,36}, {109,37},{122,34}, {135,32}, {148,29}, {162,27}, {176,27}, {190,27}, {224,27}, - {8,40}, {28,40}, {43,42}, {56,44}, {69,47}, {82,50}, {102,52},{115,49}, {128,46}, {141,44}, {154,44}, {169,40}, {182,40}, {196,40}, {209,43}, - {0,53}, {15,53}, {28,53}, {42,55}, {65,60}, {86,64}, {107,64}, {131,59}, {156,54}, {169,53}, {196,56}, {209,56}, {222,56}, - }, - { - // LED Index to Flag - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - } -}; - -#endif diff --git a/keyboards/keychron/k11_max/jis_encoder/rgb/rules.mk b/keyboards/keychron/k11_max/jis_encoder/rgb/rules.mk deleted file mode 100644 index 6e7633bfe0..0000000000 --- a/keyboards/keychron/k11_max/jis_encoder/rgb/rules.mk +++ /dev/null @@ -1 +0,0 @@ -# This file intentionally left blank diff --git a/keyboards/keychron/k11_max/jis_encoder/white/config.h b/keyboards/keychron/k11_max/jis_encoder/white/config.h deleted file mode 100644 index 966958a001..0000000000 --- a/keyboards/keychron/k11_max/jis_encoder/white/config.h +++ /dev/null @@ -1,51 +0,0 @@ -/* Copyright 2025 @ 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 . - */ - -#pragma once - -#ifdef LED_MATRIX_ENABLE -/* LED matrix driver configuration */ -# define DRIVER_COUNT 1 -# define LED_MATRIX_LED_COUNT 72 -# define LED_MATRIX_VAL_STEP 16 -# define DRIVER_CS_PINS \ - { B9 } - -/* Set LED driver scan phase */ -# define SNLED27351_PHASE_CHANNEL MSKPHASE_6CHANNEL -/* Set LED driver current */ -# define SNLED27351_CURRENT_TUNE \ - { 0x50, 0x50, 0x50, 0x50, 0x50, 0x50, 0x50, 0x50, 0x50, 0x50, 0x50, 0x50 } - -/* Set to infinit, which is use in USB mode by default */ -# define LED_MATRIX_TIMEOUT LED_MATRIX_TIMEOUT_INFINITE -/* Allow shutdown of led driver to save power */ -# define LED_MATRIX_DRIVER_SHUTDOWN_ENABLE -/* Turn off backlight on low brightness to save power */ -# define LED_MATRIX_BRIGHTNESS_TURN_OFF_VAL 48 - -/* Indications */ -# define DIM_CAPS_LOCK -# define CAPS_LOCK_INDEX 30 - -/* Low battery indicating led */ -# define LOW_BAT_IND_INDEX \ - { 63, 66 } - -# define LED_MATRIX_KEYPRESSES - -# define VOLTAGE_TRIM_LED_MATRIX 200 -#endif diff --git a/keyboards/keychron/k11_max/jis_encoder/white/info.json b/keyboards/keychron/k11_max/jis_encoder/white/info.json deleted file mode 100644 index c24cb3487f..0000000000 --- a/keyboards/keychron/k11_max/jis_encoder/white/info.json +++ /dev/null @@ -1,29 +0,0 @@ -{ - "usb": { - "pid": "0x0ABB", - "device_version": "1.0.0" - }, - "features": { - "led_matrix": true - }, - "led_matrix": { - "driver": "snled27351_spi", - "animations": { - "none": true, - "solid": true, - "breathing": true, - "band_pinwheel": true, - "band_spiral": true, - "cycle_left_right": true, - "cycle_up_down": true, - "cycle_out_in": true, - "dual_beacon": true, - "solid_reactive_simple": true, - "solid_reactive_multiwide": true, - "solid_reactive_multinexus": true, - "solid_splash": true, - "wave_left_right": true, - "wave_up_down": true - } - } -} diff --git a/keyboards/keychron/k11_max/jis_encoder/white/keymaps/default/keymap.c b/keyboards/keychron/k11_max/jis_encoder/white/keymaps/default/keymap.c deleted file mode 100644 index cd47ccb89a..0000000000 --- a/keyboards/keychron/k11_max/jis_encoder/white/keymaps/default/keymap.c +++ /dev/null @@ -1,82 +0,0 @@ -/* Copyright 2025 @ 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 . - */ - - #include QMK_KEYBOARD_H - #include "keychron_common.h" - - enum layers{ - MAC_BASE, - WIN_BASE, - MAC_FN1, - WIN_FN1, - FN2, - }; - // clang-format off - const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_73_jis( - 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_INT3, KC_BSPC, KC_MUTE, - 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_DEL, - 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_BSLS, KC_ENT, KC_HOME, - KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_INT1, KC_RSFT, KC_UP, - KC_LCTL, KC_LOPTN, KC_LCMMD, KC_LNG2, KC_SPC, MO(MAC_FN1), MO(FN2), KC_SPC, KC_LNG1, KC_RCMMD, KC_LEFT, KC_DOWN, KC_RGHT), - - [WIN_BASE] = LAYOUT_73_jis( - 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_INT3, KC_BSPC, KC_MUTE, - 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_DEL, - 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_BSLS, KC_ENT, KC_HOME, - KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_INT1, KC_RSFT, KC_UP, - KC_LCTL, KC_LWIN, KC_LALT, KC_INT5, KC_SPC, MO(WIN_FN1), MO(FN2), KC_SPC, KC_INT4, KC_RALT, KC_LEFT, KC_DOWN, KC_RGHT), - - [MAC_FN1] = LAYOUT_73_jis( - KC_GRV, KC_BRID, KC_BRIU, KC_MCTRL, KC_LNPAD, BL_DOWN, BL_UP, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, BL_TOGG, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, KC_INS, - BL_TOGG, BL_STEP, BL_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_END, - _______, _______, BL_DOWN, _______, _______, _______, _______, NK_TOGG, _______, _______, _______, _______, _______, _______, KC_PGUP, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_PGDN, _______), - - [WIN_FN1] = LAYOUT_73_jis( - KC_GRV, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, BL_DOWN, BL_UP, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, BL_TOGG, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, KC_INS, - BL_TOGG, BL_STEP, BL_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_END, - _______, _______, BL_DOWN, _______, _______, _______, _______, NK_TOGG, _______, _______, _______, _______, _______, _______, KC_PGUP, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_PGDN, _______), - - [FN2] = LAYOUT_73_jis( - KC_TILD, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, BAT_LVL, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______) - }; - - #if defined(ENCODER_MAP_ENABLE) - const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][2] = { - [MAC_BASE] = { ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [WIN_BASE] = { ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [MAC_FN1] = { ENCODER_CCW_CW(BL_DOWN, BL_UP)}, - [WIN_FN1] = { ENCODER_CCW_CW(BL_DOWN, BL_UP)}, - [FN2] = { ENCODER_CCW_CW(_______, _______)}, - }; - #endif // ENCODER_MAP_ENABLE - - // clang-format on - bool process_record_user(uint16_t keycode, keyrecord_t *record) { - if (!process_record_keychron_common(keycode, record)) { - return false; - } - return true; - } - diff --git a/keyboards/keychron/k11_max/jis_encoder/white/keymaps/via/keymap.c b/keyboards/keychron/k11_max/jis_encoder/white/keymaps/via/keymap.c deleted file mode 100644 index 45d8cebf16..0000000000 --- a/keyboards/keychron/k11_max/jis_encoder/white/keymaps/via/keymap.c +++ /dev/null @@ -1,82 +0,0 @@ -/* Copyright 2025 @ 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 . - */ - -#include QMK_KEYBOARD_H -#include "keychron_common.h" - -enum layers{ - MAC_BASE, - WIN_BASE, - MAC_FN1, - WIN_FN1, - FN2, -}; -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_73_jis( - 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_INT3, KC_BSPC, KC_MUTE, - 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_DEL, - 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_BSLS, KC_ENT, KC_HOME, - KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_INT1, KC_RSFT, KC_UP, - KC_LCTL, KC_LOPTN, KC_LCMMD, KC_LNG2, KC_SPC, MO(MAC_FN1), MO(FN2), KC_SPC, KC_LNG1, KC_RCMMD, KC_LEFT, KC_DOWN, KC_RGHT), - - [WIN_BASE] = LAYOUT_73_jis( - 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_INT3, KC_BSPC, KC_MUTE, - 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_DEL, - 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_BSLS, KC_ENT, KC_HOME, - KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_INT1, KC_RSFT, KC_UP, - KC_LCTL, KC_LWIN, KC_LALT, KC_INT5, KC_SPC, MO(WIN_FN1), MO(FN2), KC_SPC, KC_INT4, KC_RALT, KC_LEFT, KC_DOWN, KC_RGHT), - - [MAC_FN1] = LAYOUT_73_jis( - KC_GRV, KC_BRID, KC_BRIU, KC_MCTRL, KC_LNPAD, BL_DOWN, BL_UP, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, BL_TOGG, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, KC_INS, - BL_TOGG, BL_STEP, BL_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_END, - _______, _______, BL_DOWN, _______, _______, _______, _______, NK_TOGG, _______, _______, _______, _______, _______, _______, KC_PGUP, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_PGDN, _______), - - [WIN_FN1] = LAYOUT_73_jis( - KC_GRV, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, BL_DOWN, BL_UP, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, BL_TOGG, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, KC_INS, - BL_TOGG, BL_STEP, BL_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_END, - _______, _______, BL_DOWN, _______, _______, _______, _______, NK_TOGG, _______, _______, _______, _______, _______, _______, KC_PGUP, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_PGDN, _______), - - [FN2] = LAYOUT_73_jis( - KC_TILD, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, BAT_LVL, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______) -}; - -#if defined(ENCODER_MAP_ENABLE) -const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][2] = { - [MAC_BASE] = { ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [WIN_BASE] = { ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [MAC_FN1] = { ENCODER_CCW_CW(BL_DOWN, BL_UP)}, - [WIN_FN1] = { ENCODER_CCW_CW(BL_DOWN, BL_UP)}, - [FN2] = { ENCODER_CCW_CW(_______, _______)}, -}; -#endif // ENCODER_MAP_ENABLE - -// clang-format on -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - if (!process_record_keychron_common(keycode, record)) { - return false; - } - return true; -} - diff --git a/keyboards/keychron/k11_max/jis_encoder/white/keymaps/via/rules.mk b/keyboards/keychron/k11_max/jis_encoder/white/keymaps/via/rules.mk deleted file mode 100644 index 1e5b99807c..0000000000 --- a/keyboards/keychron/k11_max/jis_encoder/white/keymaps/via/rules.mk +++ /dev/null @@ -1 +0,0 @@ -VIA_ENABLE = yes diff --git a/keyboards/keychron/k11_max/jis_encoder/white/rules.mk b/keyboards/keychron/k11_max/jis_encoder/white/rules.mk deleted file mode 100644 index 6e7633bfe0..0000000000 --- a/keyboards/keychron/k11_max/jis_encoder/white/rules.mk +++ /dev/null @@ -1 +0,0 @@ -# This file intentionally left blank diff --git a/keyboards/keychron/k11_max/jis_encoder/white/white.c b/keyboards/keychron/k11_max/jis_encoder/white/white.c deleted file mode 100644 index 9e31272000..0000000000 --- a/keyboards/keychron/k11_max/jis_encoder/white/white.c +++ /dev/null @@ -1,133 +0,0 @@ -/* Copyright 2025 @ 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 . - */ - -#include "quantum.h" - -// clang-format off -#ifdef LED_MATRIX_ENABLE -const snled27351_led_t g_snled27351_leds[LED_MATRIX_LED_COUNT] = { -/* Refer to SNLED27351 manual for these locations - * driver - * | LED address - * | | */ - {0, E_1}, - {0, E_2}, - {0, E_3}, - {0, E_4}, - {0, E_5}, - {0, E_6}, - {0, E_7}, - {0, E_8}, - {0, E_9}, - {0, E_10}, - {0, E_11}, - {0, E_12}, - {0, E_13}, - {0, E_14}, - {0, E_15}, - - {0, D_1}, - {0, D_2}, - {0, D_3}, - {0, D_4}, - {0, D_5}, - {0, D_6}, - {0, D_7}, - {0, D_8}, - {0, D_9}, - {0, D_10}, - {0, D_11}, - {0, D_12}, - {0, D_13}, - {0, D_14}, - {0, D_16}, - - {0, C_1}, - {0, C_2}, - {0, C_3}, - {0, C_4}, - {0, C_5}, - {0, C_6}, - {0, C_7}, - {0, C_8}, - {0, C_9}, - {0, C_10}, - {0, C_11}, - {0, C_12}, - {0, C_14}, - {0, C_16}, - - {0, B_1}, - {0, B_3}, - {0, B_4}, - {0, B_5}, - {0, B_6}, - {0, B_7}, - {0, B_8}, - {0, B_9}, - {0, B_10}, - {0, B_11}, - {0, B_12}, - {0, B_13}, - {0, B_14}, - {0, B_15}, - {0, B_16}, - - {0, A_1}, - {0, A_2}, - {0, A_3}, - {0, A_4}, - {0, A_5}, - {0, A_7}, - {0, A_8}, - {0, A_10}, - {0, A_12}, - {0, A_13}, - {0, A_14}, - {0, A_15}, - {0, A_16}, -}; - -#define __ NO_LED - -led_config_t g_led_config = { - { - // Key Matrix to LED Index - { 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, 40, 41, __, 42, __, 43 }, - { 44, __, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58 }, - { 59, 60, 61, 62, 63, __, 64, 65, __, 66, __, 67, 68, 69, 70, 71 }, - }, - { - // LED Index to Physical Position - {8, 1}, {20, 1}, {33, 0}, {48, 3}, {61, 6}, {74, 8}, {86,11}, {106,11}, {119, 8}, {132, 6}, {145, 3}, {160, 0}, {173, 1}, {186, 1}, {199, 1}, - {8,14}, {24,14}, {39,14}, {52,17}, {65,20}, {78,22}, {103,25},{116,22}, {129,20}, {142,17}, {155,14}, {171,14}, {184,14}, {204,20}, {222,14}, - {8,27}, {24,27}, {39,28}, {52,30}, {65,33}, {78,36}, {109,37},{122,34}, {135,32}, {148,29}, {162,27}, {176,27}, {190,27}, {224,27}, - {8,40}, {28,40}, {43,42}, {56,44}, {69,47}, {82,50}, {102,52},{115,49}, {128,46}, {141,44}, {154,44}, {169,40}, {182,40}, {196,40}, {209,43}, - {0,53}, {15,53}, {28,53}, {42,55}, {65,60}, {86,64}, {107,64}, {131,59}, {156,54}, {169,53}, {196,56}, {209,56}, {222,56}, - }, - { - // LED Index to Flag - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - } -}; - -#endif diff --git a/keyboards/keychron/k11_max/k11_max.c b/keyboards/keychron/k11_max/k11_max.c deleted file mode 100644 index f86384d3ad..0000000000 --- a/keyboards/keychron/k11_max/k11_max.c +++ /dev/null @@ -1,82 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#include "quantum.h" -#include "keychron_task.h" -#ifdef FACTORY_TEST_ENABLE -# include "factory_test.h" -# include "keychron_common.h" -#endif -#ifdef LK_WIRELESS_ENABLE -# include "lkbt51.h" -# include "wireless.h" -# include "transport.h" -# include "keychron_wireless_common.h" -# include "battery.h" -#endif - -#define POWER_ON_LED_DURATION 3000 -static uint32_t power_on_indicator_timer; - -bool dip_switch_update_kb(uint8_t index, bool active) { - if (index == 0) { - default_layer_set(1UL << (active ? 0 : 1)); - } - dip_switch_update_user(index, active); - - return true; -} - -void keyboard_post_init_kb(void) { -#ifdef LK_WIRELESS_ENABLE - palSetLineMode(P2P4_MODE_SELECT_PIN, PAL_MODE_INPUT); - palSetLineMode(BT_MODE_SELECT_PIN, PAL_MODE_INPUT); - - writePin(BAT_LOW_LED_PIN, BAT_LOW_LED_PIN_ON_STATE); - lkbt51_init(false); - wireless_init(); -#endif - - power_on_indicator_timer = timer_read32(); -#ifdef ENCODER_ENABLE - encoder_cb_init(); -#endif - keyboard_post_init_user(); -} - -bool keychron_task_kb(void) { - if (power_on_indicator_timer) { - if (timer_elapsed32(power_on_indicator_timer) > POWER_ON_LED_DURATION) { - power_on_indicator_timer = 0; - -#ifdef LK_WIRELESS_ENABLE - writePin(BAT_LOW_LED_PIN, !BAT_LOW_LED_PIN_ON_STATE); -#endif - - } else { -#ifdef LK_WIRELESS_ENABLE - writePin(BAT_LOW_LED_PIN, BAT_LOW_LED_PIN_ON_STATE); -#endif - } - } - return true; -} - -#ifdef LK_WIRELESS_ENABLE -bool lpm_is_kb_idle(void) { - return power_on_indicator_timer == 0 && !factory_reset_indicating(); -} -#endif diff --git a/keyboards/keychron/k11_max/mcuconf.h b/keyboards/keychron/k11_max/mcuconf.h deleted file mode 100644 index 58a40bd91e..0000000000 --- a/keyboards/keychron/k11_max/mcuconf.h +++ /dev/null @@ -1,37 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#pragma once - -#include_next - -#undef STM32_HSECLK -#define STM32_HSECLK 16000000 - -#undef STM32_PLLM_VALUE -#define STM32_PLLM_VALUE 8 - -#undef STM32_PLLN_VALUE -#define STM32_PLLN_VALUE 96 - -#undef STM32_PLLP_VALUE -#define STM32_PLLP_VALUE 4 - -#undef STM32_PLLQ_VALUE -#define STM32_PLLQ_VALUE 4 - -#undef STM32_SPI_USE_SPI1 -#define STM32_SPI_USE_SPI1 TRUE diff --git a/keyboards/keychron/k11_max/readme.md b/keyboards/keychron/k11_max/readme.md deleted file mode 100644 index ab41c473e5..0000000000 --- a/keyboards/keychron/k11_max/readme.md +++ /dev/null @@ -1,23 +0,0 @@ -# Keychron K11 Max - -![Keychron K11 Max](https://cdn.shopify.com/s/files/1/0059/0630/1017/files/K11-Max-page-5.jpg?v=1713336023) - -A customizable 75% ergonomic keyboard. - -* Keyboard Maintainer: [Keychron](https://github.com/keychron) -* Hardware Supported: Keychron K11 Max -* Hardware Availability: [Keychron K11 Max QMK/VIA Wireless Custom Mechanical Keyboard](https://www.keychron.com/products/keychron-k11-max-qmk-via-wireless-custom-mechanical-keyboard) - -Make example for this keyboard (after setting up your build environment): - - make keychron/k11_max/ansi_encoder/rgb:default - make keychron/k11_max/ansi_encoder/white:default - -Flashing example for this keyboard: - - make keychron/k11_max/ansi_encoder/rgb:default:flash - make keychron/k11_max/ansi_encoder/white:default:flash - -**Reset Key**: Toggle mode switch to "Cable", hold down the *Esc* key or reset button underneath space bar while connecting the USB cable, - -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). diff --git a/keyboards/keychron/k11_max/rules.mk b/keyboards/keychron/k11_max/rules.mk deleted file mode 100644 index 4eaf6820bc..0000000000 --- a/keyboards/keychron/k11_max/rules.mk +++ /dev/null @@ -1,4 +0,0 @@ -include keyboards/keychron/common/wireless/wireless.mk -include keyboards/keychron/common/keychron_common.mk - -VPATH += $(TOP_DIR)/keyboards/keychron diff --git a/keyboards/keychron/k11_max/via_json/k11_max_ansi_rgb_encoder.json b/keyboards/keychron/k11_max/via_json/k11_max_ansi_rgb_encoder.json deleted file mode 100644 index 1642ae8e38..0000000000 --- a/keyboards/keychron/k11_max/via_json/k11_max_ansi_rgb_encoder.json +++ /dev/null @@ -1,350 +0,0 @@ -{ - "name": "Keychron K11 Max ANSI RGB Knob", - "vendorId": "0x3434", - "productId": "0x0AB3", - "keycodes": ["qmk_lighting"], - "menus": [ - { - "label": "Lighting", - "content": [ - { - "label": "Backlight", - "content": [ - { - "label": "Brightness", - "type": "range", - "options": [0, 255], - "content": ["id_qmk_rgb_matrix_brightness", 3, 1] - }, - { - "label": "Effect", - "type": "dropdown", - "content": ["id_qmk_rgb_matrix_effect", 3, 2], - "options": [ - ["None", 0], - ["Solid Color", 1], - ["Breathing", 2], - ["Band Spiral Val", 3], - ["Cycle All", 4], - ["Cycle Left Right", 5], - ["Cycle Up Down", 6], - ["Rainbow Moving Chevron", 7], - ["Cycle Out In", 8], - ["Cycle Out In Dual", 9], - ["Cycle Pinwheel", 10], - ["Cycle Spiral", 11], - ["Dual Beacon", 12], - ["Rainbow Beacon", 13], - ["Jellybean Raindrops", 14], - ["Pixel Rain", 15], - ["Typing Heatmap", 16], - ["Digital Rain", 17], - ["Reactive Simple", 18], - ["Reactive Multiwide", 19], - ["Reactive Multinexus", 20], - ["Splash", 21], - ["Solid Splash", 22] - ] - }, - { - "showIf": "{id_qmk_rgb_matrix_effect} > 1", - "label": "Effect Speed", - "type": "range", - "options": [0, 255], - "content": ["id_qmk_rgb_matrix_effect_speed", 3, 3] - }, - { - "showIf": "{id_qmk_rgb_matrix_effect} != 0 && ( {id_qmk_rgb_matrix_effect} < 4 || {id_qmk_rgb_matrix_effect} == 18 || ({id_qmk_rgb_matrix_effect} > 17 && {id_qmk_rgb_matrix_effect} != 21) ) ", - "label": "Color", - "type": "color", - "content": ["id_qmk_rgb_matrix_color", 3, 4] - } - ] - } - ] - } - ], - "customKeycodes": [ - {"name": "Left Option", "title": "Left Option", "shortName": "LOpt"}, - {"name": "Right Option", "title": "Right Option", "shortName": "ROpt"}, - {"name": "Left Cmd", "title": "Left Command", "shortName": "LCmd"}, - {"name": "Right Cmd", "title": "Right Command", "shortName": "RCmd"}, - {"name": "Misson Control", "title": "Misson Control in Mac", "shortName": "MCtl"}, - {"name": "Lanuch Pad", "title": "Lanuch Pad in Windows", "shortName": "LPad"}, - {"name": "Task View", "title": "Task View in Windows", "shortName": "Task"}, - {"name": "File Explorer", "title": "File Explorer in Windows", "shortName": "File"}, - {"name": "Screen shot", "title": "Screenshot in macOS", "shortName": "SShot"}, - {"name": "Cortana", "title": "Cortana in Windows", "shortName": "Cortana"}, - {"name": "Siri", "title": "Siri in macOS", "shortName": "Siri"}, - {"name": "Bluetooth Host 1", "title": "Bluetooth Host 1", "shortName": "BTH1"}, - {"name": "Bluetooth Host 2", "title": "Bluetooth Host 2", "shortName": "BTH2"}, - {"name": "Bluetooth Host 3", "title": "Bluetooth Host 3", "shortName": "BTH3"}, - {"name": "2.4G", "title": "2.4G", "shortName": "2.4G"}, - {"name": "Battery Level", "title": "Show battery level", "shortName": "Batt"} - ], - "matrix": {"rows": 5, "cols": 16}, - "layouts": { - "keymap": [ - [ - { - "x": 2.75 - }, - "0,2", - { - "x": 8.85 - }, - "0,11" - ], - [ - { - "y": -0.85, - "x": 0.75, - "c": "#777777" - }, - "0,0\nESC", - { - "c": "#cccccc" - }, - "0,1" - ], - [ - { - "y": -0.85, - "x": 14.6, - "c": "#aaaaaa", - "w": 2 - }, - "0,13", - { - "x": 0.5 - }, - "0,15\n\n\n\n\n\n\n\n\ne0" - ], - [ - { - "y": -1, - "x": 13.6, - "c": "#cccccc" - }, - "0,12" - ], - [ - { - "y": -0.15, - "x": 0.5, - "c": "#aaaaaa", - "w": 1.5 - }, - "1,0", - { - "c": "#cccccc" - }, - "1,1" - ], - [ - { - "y": -0.85, - "x": 13.3 - }, - "1,11", - "1,12", - { - "c": "#aaaaaa", - "w": 1.5 - }, - "1,13", - { - "x": 0.5 - }, - "1,15" - ], - [ - { - "y": -0.15, - "x": 0.25, - "w": 1.75 - }, - "2,0", - { - "c": "#cccccc" - }, - "2,1" - ], - [ - { - "y": -0.85, - "x": 12.75 - }, - "2,10", - "2,11", - { - "c": "#aaaaaa", - "w": 2.25 - }, - "2,13", - { - "x": 0.5 - }, - "2,15" - ], - [ - { - "y": -0.15, - "w": 2.25 - }, - "3,0", - { - "c": "#cccccc" - }, - "3,2" - ], - [ - { - "y": -0.85, - "x": 13.4 - }, - "3,13", - { - "c": "#aaaaaa", - "w": 1.75 - }, - "3,14" - ], - [ - { - "y": -0.75, - "x": 16.4, - "c": "#cccccc" - }, - "3,15" - ], - [ - { - "y": -0.4, - "c": "#aaaaaa", - "w": 1.25 - }, - "4,0", - { - "w": 1.25 - }, - "4,1" - ], - [ - { - "y": -0.6, - "x": 15.4, - "c": "#cccccc" - }, - "4,13", - "4,14", - "4,15" - ], - [ - { - "r": 6, - "y": -5.7, - "x": 3.85, - "c": "#cccccc" - }, - "0,3", - "0,4", - "0,5", - "0,6" - ], - [ - { - "x": 3.35 - }, - "1,2", - "1,3", - "1,4", - "1,5" - ], - [ - { - "x": 3.55 - }, - "2,2", - "2,3", - "2,4", - "2,5" - ], - [ - { - "x": 3.9 - }, - "3,3", - "3,4", - "3,5", - "3,6" - ], - [ - { - "x": 3.9, - "c": "#aaaaaa", - "w": 1.25 - }, - "4,2", - { - "w": 2.25 - }, - "4,5", - "4,6" - ], - [ - { - "r": -6, - "y": -3.3, - "x": 8.35, - "c": "#cccccc" - }, - "0,7", - "0,8", - "0,9", - "0,10" - ], - [ - { - "x": 7.9 - }, - "1,6", - "1,7", - "1,8", - "1,9", - "1,10" - ], - [ - { - "x": 8.25 - }, - "2,6", - "2,7", - "2,8", - "2,9" - ], - [ - { - "x": 7.8 - }, - "3,7", - "3,8", - "3,9", - "3,10", - "3,11" - ], - [ - { - "x": 7.8, - "c": "#aaaaaa" - }, - "4,7", - { - "w": 2.75 - }, - "4,9", - "4,12" - ] - ] - } -} \ No newline at end of file diff --git a/keyboards/keychron/k11_max/via_json/k11_max_ansi_white_encoder.json b/keyboards/keychron/k11_max/via_json/k11_max_ansi_white_encoder.json deleted file mode 100644 index bc381bfa37..0000000000 --- a/keyboards/keychron/k11_max/via_json/k11_max_ansi_white_encoder.json +++ /dev/null @@ -1,289 +0,0 @@ -{ - "name": "Keychron K11 Max ANSI White Knob", - "vendorId": "0x3434", - "productId": "0x0AB9", - "keycodes": ["qmk_lighting"], - "customKeycodes": [ - {"name": "Left Option", "title": "Left Option", "shortName": "LOpt"}, - {"name": "Right Option", "title": "Right Option", "shortName": "ROpt"}, - {"name": "Left Cmd", "title": "Left Command", "shortName": "LCmd"}, - {"name": "Right Cmd", "title": "Right Command", "shortName": "RCmd"}, - {"name": "Misson Control", "title": "Misson Control in Mac", "shortName": "MCtl"}, - {"name": "Lanuch Pad", "title": "Lanuch Pad in Windows", "shortName": "LPad"}, - {"name": "Task View", "title": "Task View in Windows", "shortName": "Task"}, - {"name": "File Explorer", "title": "File Explorer in Windows", "shortName": "File"}, - {"name": "Screen shot", "title": "Screenshot in macOS", "shortName": "SShot"}, - {"name": "Cortana", "title": "Cortana in Windows", "shortName": "Cortana"}, - {"name": "Siri", "title": "Siri in macOS", "shortName": "Siri"}, - {"name": "Bluetooth Host 1", "title": "Bluetooth Host 1", "shortName": "BTH1"}, - {"name": "Bluetooth Host 2", "title": "Bluetooth Host 2", "shortName": "BTH2"}, - {"name": "Bluetooth Host 3", "title": "Bluetooth Host 3", "shortName": "BTH3"}, - {"name": "2.4G", "title": "2.4G", "shortName": "2.4G"}, - {"name": "Battery Level", "title": "Show battery level", "shortName": "Batt"} - ], - "matrix": {"rows": 5, "cols": 16}, - "layouts": { - "keymap": [ - [ - { - "x": 2.75 - }, - "0,2", - { - "x": 8.85 - }, - "0,11" - ], - [ - { - "y": -0.85, - "x": 0.75, - "c": "#777777" - }, - "0,0\nESC", - { - "c": "#cccccc" - }, - "0,1" - ], - [ - { - "y": -0.85, - "x": 14.6, - "c": "#aaaaaa", - "w": 2 - }, - "0,13", - { - "x": 0.5 - }, - "0,15\n\n\n\n\n\n\n\n\ne0" - ], - [ - { - "y": -1, - "x": 13.6, - "c": "#cccccc" - }, - "0,12" - ], - [ - { - "y": -0.15, - "x": 0.5, - "c": "#aaaaaa", - "w": 1.5 - }, - "1,0", - { - "c": "#cccccc" - }, - "1,1" - ], - [ - { - "y": -0.85, - "x": 13.3 - }, - "1,11", - "1,12", - { - "c": "#aaaaaa", - "w": 1.5 - }, - "1,13", - { - "x": 0.5 - }, - "1,15" - ], - [ - { - "y": -0.15, - "x": 0.25, - "w": 1.75 - }, - "2,0", - { - "c": "#cccccc" - }, - "2,1" - ], - [ - { - "y": -0.85, - "x": 12.75 - }, - "2,10", - "2,11", - { - "c": "#aaaaaa", - "w": 2.25 - }, - "2,13", - { - "x": 0.5 - }, - "2,15" - ], - [ - { - "y": -0.15, - "w": 2.25 - }, - "3,0", - { - "c": "#cccccc" - }, - "3,2" - ], - [ - { - "y": -0.85, - "x": 13.4 - }, - "3,13", - { - "c": "#aaaaaa", - "w": 1.75 - }, - "3,14" - ], - [ - { - "c": "#cccccc", - "y": -0.75, - "x": 16.4 - }, - "3,15" - ], - [ - { - "y": -0.4, - "c": "#aaaaaa", - "w": 1.25 - }, - "4,0", - { - "w": 1.25 - }, - "4,1" - ], - [ - { - "y": -0.6, - "x": 15.4, - "c": "#cccccc" - }, - "4,13", - "4,14", - "4,15" - ], - [ - { - "r": 6, - "y": -5.7, - "x": 3.85, - "c": "#cccccc" - }, - "0,3", - "0,4", - "0,5", - "0,6" - ], - [ - { - "x": 3.35 - }, - "1,2", - "1,3", - "1,4", - "1,5" - ], - [ - { - "x": 3.55 - }, - "2,2", - "2,3", - "2,4", - "2,5" - ], - [ - { - "x": 3.9 - }, - "3,3", - "3,4", - "3,5", - "3,6" - ], - [ - { - "x": 3.9, - "c": "#aaaaaa", - "w": 1.25 - }, - "4,2", - { - "w": 2.25 - }, - "4,5", - "4,6" - ], - [ - { - "r": -6, - "y": -3.3, - "x": 8.35, - "c": "#cccccc" - }, - "0,7", - "0,8", - "0,9", - "0,10" - ], - [ - { - "x": 7.9 - }, - "1,6", - "1,7", - "1,8", - "1,9", - "1,10" - ], - [ - { - "x": 8.25 - }, - "2,6", - "2,7", - "2,8", - "2,9" - ], - [ - { - "x": 7.8 - }, - "3,7", - "3,8", - "3,9", - "3,10", - "3,11" - ], - [ - { - "x": 7.8, - "c": "#aaaaaa" - }, - "4,7", - { - "w": 2.75 - }, - "4,9", - "4,12" - ] - ] - } -} \ No newline at end of file diff --git a/keyboards/keychron/k11_max/via_json/k11_max_iso_rgb_encoder.json b/keyboards/keychron/k11_max/via_json/k11_max_iso_rgb_encoder.json deleted file mode 100644 index 04ef61649d..0000000000 --- a/keyboards/keychron/k11_max/via_json/k11_max_iso_rgb_encoder.json +++ /dev/null @@ -1,356 +0,0 @@ -{ - "name": "Keychron K11 Max ISO RGB Knob", - "vendorId": "0x3434", - "productId": "0x0AB4", - "keycodes": ["qmk_lighting"], - "menus": [ - { - "label": "Lighting", - "content": [ - { - "label": "Backlight", - "content": [ - { - "label": "Brightness", - "type": "range", - "options": [0, 255], - "content": ["id_qmk_rgb_matrix_brightness", 3, 1] - }, - { - "label": "Effect", - "type": "dropdown", - "content": ["id_qmk_rgb_matrix_effect", 3, 2], - "options": [ - ["None", 0], - ["Solid Color", 1], - ["Breathing", 2], - ["Band Spiral Val", 3], - ["Cycle All", 4], - ["Cycle Left Right", 5], - ["Cycle Up Down", 6], - ["Rainbow Moving Chevron", 7], - ["Cycle Out In", 8], - ["Cycle Out In Dual", 9], - ["Cycle Pinwheel", 10], - ["Cycle Spiral", 11], - ["Dual Beacon", 12], - ["Rainbow Beacon", 13], - ["Jellybean Raindrops", 14], - ["Pixel Rain", 15], - ["Typing Heatmap", 16], - ["Digital Rain", 17], - ["Reactive Simple", 18], - ["Reactive Multiwide", 19], - ["Reactive Multinexus", 20], - ["Splash", 21], - ["Solid Splash", 22] - ] - }, - { - "showIf": "{id_qmk_rgb_matrix_effect} > 1", - "label": "Effect Speed", - "type": "range", - "options": [0, 255], - "content": ["id_qmk_rgb_matrix_effect_speed", 3, 3] - }, - { - "showIf": "{id_qmk_rgb_matrix_effect} != 0 && ( {id_qmk_rgb_matrix_effect} < 4 || {id_qmk_rgb_matrix_effect} == 18 || ({id_qmk_rgb_matrix_effect} > 17 && {id_qmk_rgb_matrix_effect} != 21) ) ", - "label": "Color", - "type": "color", - "content": ["id_qmk_rgb_matrix_color", 3, 4] - } - ] - } - ] - } - ], - "customKeycodes": [ - {"name": "Left Option", "title": "Left Option", "shortName": "LOpt"}, - {"name": "Right Option", "title": "Right Option", "shortName": "ROpt"}, - {"name": "Left Cmd", "title": "Left Command", "shortName": "LCmd"}, - {"name": "Right Cmd", "title": "Right Command", "shortName": "RCmd"}, - {"name": "Misson Control", "title": "Misson Control in Mac", "shortName": "MCtl"}, - {"name": "Lanuch Pad", "title": "Lanuch Pad in Windows", "shortName": "LPad"}, - {"name": "Task View", "title": "Task View in Windows", "shortName": "Task"}, - {"name": "File Explorer", "title": "File Explorer in Windows", "shortName": "File"}, - {"name": "Screen shot", "title": "Screenshot in macOS", "shortName": "SShot"}, - {"name": "Cortana", "title": "Cortana in Windows", "shortName": "Cortana"}, - {"name": "Siri", "title": "Siri in macOS", "shortName": "Siri"}, - {"name": "Bluetooth Host 1", "title": "Bluetooth Host 1", "shortName": "BTH1"}, - {"name": "Bluetooth Host 2", "title": "Bluetooth Host 2", "shortName": "BTH2"}, - {"name": "Bluetooth Host 3", "title": "Bluetooth Host 3", "shortName": "BTH3"}, - {"name": "2.4G", "title": "2.4G", "shortName": "2.4G"}, - {"name": "Battery Level", "title": "Show battery level", "shortName": "Batt"} - ], - "matrix": {"rows": 5, "cols": 16}, - "layouts": { - "keymap": [ - [ - { - "x": 2.75 - }, - "0,2", - { - "x": 8.85 - }, - "0,11" - ], - [ - { - "y": -0.85, - "x": 0.75, - "c": "#777777" - }, - "0,0\nESC", - { - "c": "#cccccc" - }, - "0,1" - ], - [ - { - "y": -0.85, - "x": 14.6, - "c": "#aaaaaa", - "w": 2 - }, - "0,13", - { - "x": 0.5 - }, - "0,15\n\n\n\n\n\n\n\n\ne0" - ], - [ - { - "y": -1, - "x": 13.6, - "c": "#cccccc" - }, - "0,12" - ], - [ - { - "y": -0.15, - "x": 0.5, - "c": "#aaaaaa", - "w": 1.5 - }, - "1,0", - { - "c": "#cccccc" - }, - "1,1" - ], - [ - { - "y": -0.85, - "x": 13.5 - }, - "1,11", - "1,12", - { - "x": 0.25, - "c": "#777777", - "w": 1.5, - "h": 2, - "w2": 1.75, - "h2": 1, - "x2": -0.25 - }, - "1,13", - { - "x": 0.25, - "c": "#aaaaaa" - }, - "1,15" - ], - [ - { - "y": -0.15, - "x": 0.25, - "w": 1.75 - }, - "2,0", - { - "c": "#cccccc" - }, - "2,1" - ], - [ - { - "y": -0.85, - "x": 12.75 - }, - "2,10", - "2,11", - { - "c": "#aaaaaa" - }, - "2,13", - { - "x": 1.75 - }, - "2,15" - ], - [ - { - "y": -0.15, - "w": 1.25 - }, - "3,0", - { - "c": "#cccccc" - }, - "3,1", - "3,2" - ], - [ - { - "y": -0.85, - "x": 13.4 - }, - "3,13", - { - "c": "#aaaaaa", - "w": 1.75 - }, - "3,14" - ], - [ - { - "y": -0.75, - "x": 16.4, - "c": "#cccccc" - }, - "3,15" - ], - [ - { - "y": -0.4, - "c": "#aaaaaa", - "w": 1.25 - }, - "4,0", - { - "w": 1.25 - }, - "4,1" - ], - [ - { - "y": -0.6, - "x": 15.4, - "c": "#cccccc" - }, - "4,13", - "4,14", - "4,15" - ], - [ - { - "r": 6, - "y": -5.7, - "x": 3.85, - "c": "#cccccc" - }, - "0,3", - "0,4", - "0,5", - "0,6" - ], - [ - { - "x": 3.35 - }, - "1,2", - "1,3", - "1,4", - "1,5" - ], - [ - { - "x": 3.55 - }, - "2,2", - "2,3", - "2,4", - "2,5" - ], - [ - { - "x": 3.9 - }, - "3,3", - "3,4", - "3,5", - "3,6" - ], - [ - { - "x": 3.9, - "c": "#aaaaaa", - "w": 1.25 - }, - "4,2", - { - "w": 2.25 - }, - "4,5", - "4,6" - ], - [ - { - "r": -6, - "y": -3.3, - "x": 8.35, - "c": "#cccccc" - }, - "0,7", - "0,8", - "0,9", - "0,10" - ], - [ - { - "x": 7.9 - }, - "1,6", - "1,7", - "1,8", - "1,9", - "1,10" - ], - [ - { - "x": 8.25 - }, - "2,6", - "2,7", - "2,8", - "2,9" - ], - [ - { - "x": 7.8 - }, - "3,7", - "3,8", - "3,9", - "3,10", - "3,11" - ], - [ - { - "x": 7.8, - "c": "#aaaaaa" - }, - "4,7", - { - "w": 2.75 - }, - "4,9", - "4,12" - ] - ] - } -} diff --git a/keyboards/keychron/k11_max/via_json/k11_max_iso_white_encoder.json b/keyboards/keychron/k11_max/via_json/k11_max_iso_white_encoder.json deleted file mode 100644 index 60747a6da3..0000000000 --- a/keyboards/keychron/k11_max/via_json/k11_max_iso_white_encoder.json +++ /dev/null @@ -1,295 +0,0 @@ -{ - "name": "Keychron K11 Max ISO White Knob", - "vendorId": "0x3434", - "productId": "0x0ABA", - "keycodes": ["qmk_lighting"], - "customKeycodes": [ - {"name": "Left Option", "title": "Left Option", "shortName": "LOpt"}, - {"name": "Right Option", "title": "Right Option", "shortName": "ROpt"}, - {"name": "Left Cmd", "title": "Left Command", "shortName": "LCmd"}, - {"name": "Right Cmd", "title": "Right Command", "shortName": "RCmd"}, - {"name": "Misson Control", "title": "Misson Control in Mac", "shortName": "MCtl"}, - {"name": "Lanuch Pad", "title": "Lanuch Pad in Windows", "shortName": "LPad"}, - {"name": "Task View", "title": "Task View in Windows", "shortName": "Task"}, - {"name": "File Explorer", "title": "File Explorer in Windows", "shortName": "File"}, - {"name": "Screen shot", "title": "Screenshot in macOS", "shortName": "SShot"}, - {"name": "Cortana", "title": "Cortana in Windows", "shortName": "Cortana"}, - {"name": "Siri", "title": "Siri in macOS", "shortName": "Siri"}, - {"name": "Bluetooth Host 1", "title": "Bluetooth Host 1", "shortName": "BTH1"}, - {"name": "Bluetooth Host 2", "title": "Bluetooth Host 2", "shortName": "BTH2"}, - {"name": "Bluetooth Host 3", "title": "Bluetooth Host 3", "shortName": "BTH3"}, - {"name": "2.4G", "title": "2.4G", "shortName": "2.4G"}, - {"name": "Battery Level", "title": "Show battery level", "shortName": "Batt"} - ], - "matrix": {"rows": 5, "cols": 16}, - "layouts": { - "keymap": [ - [ - { - "x": 2.75 - }, - "0,2", - { - "x": 8.85 - }, - "0,11" - ], - [ - { - "y": -0.85, - "x": 0.75, - "c": "#777777" - }, - "0,0\nESC", - { - "c": "#cccccc" - }, - "0,1" - ], - [ - { - "y": -0.85, - "x": 14.6, - "c": "#aaaaaa", - "w": 2 - }, - "0,13", - { - "x": 0.5 - }, - "0,15\n\n\n\n\n\n\n\n\ne0" - ], - [ - { - "y": -1, - "x": 13.6, - "c": "#cccccc" - }, - "0,12" - ], - [ - { - "y": -0.15, - "x": 0.5, - "c": "#aaaaaa", - "w": 1.5 - }, - "1,0", - { - "c": "#cccccc" - }, - "1,1" - ], - [ - { - "y": -0.85, - "x": 13.5 - }, - "1,11", - "1,12", - { - "x": 0.25, - "c": "#777777", - "w": 1.5, - "h": 2, - "w2": 1.75, - "h2": 1, - "x2": -0.25 - }, - "1,13", - { - "x": 0.25, - "c": "#aaaaaa" - }, - "1,15" - ], - [ - { - "y": -0.15, - "x": 0.25, - "w": 1.75 - }, - "2,0", - { - "c": "#cccccc" - }, - "2,1" - ], - [ - { - "y": -0.85, - "x": 12.75 - }, - "2,10", - "2,11", - { - "c": "#aaaaaa" - }, - "2,13", - { - "x": 1.75 - }, - "2,15" - ], - [ - { - "y": -0.15, - "w": 1.25 - }, - "3,0", - { - "c": "#cccccc" - }, - "3,1", - "3,2" - ], - [ - { - "y": -0.85, - "x": 13.4 - }, - "3,13", - { - "c": "#aaaaaa", - "w": 1.75 - }, - "3,14" - ], - [ - { - "y": -0.75, - "x": 16.4, - "c": "#cccccc" - }, - "3,15" - ], - [ - { - "y": -0.4, - "c": "#aaaaaa", - "w": 1.25 - }, - "4,0", - { - "w": 1.25 - }, - "4,1" - ], - [ - { - "y": -0.6, - "x": 15.4, - "c": "#cccccc" - }, - "4,13", - "4,14", - "4,15" - ], - [ - { - "r": 6, - "y": -5.7, - "x": 3.85, - "c": "#cccccc" - }, - "0,3", - "0,4", - "0,5", - "0,6" - ], - [ - { - "x": 3.35 - }, - "1,2", - "1,3", - "1,4", - "1,5" - ], - [ - { - "x": 3.55 - }, - "2,2", - "2,3", - "2,4", - "2,5" - ], - [ - { - "x": 3.9 - }, - "3,3", - "3,4", - "3,5", - "3,6" - ], - [ - { - "x": 3.9, - "c": "#aaaaaa", - "w": 1.25 - }, - "4,2", - { - "w": 2.25 - }, - "4,5", - "4,6" - ], - [ - { - "r": -6, - "y": -3.3, - "x": 8.35, - "c": "#cccccc" - }, - "0,7", - "0,8", - "0,9", - "0,10" - ], - [ - { - "x": 7.9 - }, - "1,6", - "1,7", - "1,8", - "1,9", - "1,10" - ], - [ - { - "x": 8.25 - }, - "2,6", - "2,7", - "2,8", - "2,9" - ], - [ - { - "x": 7.8 - }, - "3,7", - "3,8", - "3,9", - "3,10", - "3,11" - ], - [ - { - "x": 7.8, - "c": "#aaaaaa" - }, - "4,7", - { - "w": 2.75 - }, - "4,9", - "4,12" - ] - ] - } -} \ No newline at end of file diff --git a/keyboards/keychron/k11_max/via_json/k11_max_jis_rgb_encoder.json b/keyboards/keychron/k11_max/via_json/k11_max_jis_rgb_encoder.json deleted file mode 100644 index 431c8387be..0000000000 --- a/keyboards/keychron/k11_max/via_json/k11_max_jis_rgb_encoder.json +++ /dev/null @@ -1,358 +0,0 @@ -{ - "name": "Keychron K11 Max JIS RGB Knob", - "vendorId": "0x3434", - "productId": "0x0AB5", - "keycodes": ["qmk_lighting"], - "menus": [ - { - "label": "Lighting", - "content": [ - { - "label": "Backlight", - "content": [ - { - "label": "Brightness", - "type": "range", - "options": [0, 255], - "content": ["id_qmk_rgb_matrix_brightness", 3, 1] - }, - { - "label": "Effect", - "type": "dropdown", - "content": ["id_qmk_rgb_matrix_effect", 3, 2], - "options": [ - ["None", 0], - ["Solid Color", 1], - ["Breathing", 2], - ["Band Spiral Val", 3], - ["Cycle All", 4], - ["Cycle Left Right", 5], - ["Cycle Up Down", 6], - ["Rainbow Moving Chevron", 7], - ["Cycle Out In", 8], - ["Cycle Out In Dual", 9], - ["Cycle Pinwheel", 10], - ["Cycle Spiral", 11], - ["Dual Beacon", 12], - ["Rainbow Beacon", 13], - ["Jellybean Raindrops", 14], - ["Pixel Rain", 15], - ["Typing Heatmap", 16], - ["Digital Rain", 17], - ["Reactive Simple", 18], - ["Reactive Multiwide", 19], - ["Reactive Multinexus", 20], - ["Splash", 21], - ["Solid Splash", 22] - ] - }, - { - "showIf": "{id_qmk_rgb_matrix_effect} > 1", - "label": "Effect Speed", - "type": "range", - "options": [0, 255], - "content": ["id_qmk_rgb_matrix_effect_speed", 3, 3] - }, - { - "showIf": "{id_qmk_rgb_matrix_effect} != 0 && ( {id_qmk_rgb_matrix_effect} < 4 || {id_qmk_rgb_matrix_effect} == 18 || ({id_qmk_rgb_matrix_effect} > 17 && {id_qmk_rgb_matrix_effect} != 21) ) ", - "label": "Color", - "type": "color", - "content": ["id_qmk_rgb_matrix_color", 3, 4] - } - ] - } - ] - } - ], - "customKeycodes": [ - {"name": "Left Option", "title": "Left Option", "shortName": "LOpt"}, - {"name": "Right Option", "title": "Right Option", "shortName": "ROpt"}, - {"name": "Left Cmd", "title": "Left Command", "shortName": "LCmd"}, - {"name": "Right Cmd", "title": "Right Command", "shortName": "RCmd"}, - {"name": "Misson Control", "title": "Misson Control in Mac", "shortName": "MCtl"}, - {"name": "Lanuch Pad", "title": "Lanuch Pad in Windows", "shortName": "LPad"}, - {"name": "Task View", "title": "Task View in Windows", "shortName": "Task"}, - {"name": "File Explorer", "title": "File Explorer in Windows", "shortName": "File"}, - {"name": "Screen shot", "title": "Screenshot in macOS", "shortName": "SShot"}, - {"name": "Cortana", "title": "Cortana in Windows", "shortName": "Cortana"}, - {"name": "Siri", "title": "Siri in macOS", "shortName": "Siri"}, - {"name": "Bluetooth Host 1", "title": "Bluetooth Host 1", "shortName": "BTH1"}, - {"name": "Bluetooth Host 2", "title": "Bluetooth Host 2", "shortName": "BTH2"}, - {"name": "Bluetooth Host 3", "title": "Bluetooth Host 3", "shortName": "BTH3"}, - {"name": "2.4G", "title": "2.4G", "shortName": "2.4G"}, - {"name": "Battery Level", "title": "Show battery level", "shortName": "Batt"} - ], - "matrix": {"rows": 5, "cols": 16}, - "layouts": { - "keymap": [ - [ - { - "x": 2.75 - }, - "0,2", - { - "x": 8.85 - }, - "0,11" - ], - [ - { - "y": -0.95, - "x": 0.75, - "c": "#777777" - }, - "0,0\nESC", - { - "c": "#cccccc" - }, - "0,1" - ], - [ - { - "y": -0.85, - "x": 14.6, - "c": "#aaaaaa" - }, - "0,13", - "0,14", - { - "x": 0.5 - }, - "0,15\n\n\n\n\n\n\n\n\ne0" - ], - [ - { - "y": -1, - "x": 13.6, - "c": "#cccccc" - }, - "0,12" - ], - [ - { - "y": -0.15, - "x": 0.5, - "c": "#aaaaaa", - "w": 1.5 - }, - "1,0", - { - "c": "#cccccc" - }, - "1,1" - ], - [ - { - "y": -0.85, - "x": 13.6 - }, - "1,11", - "1,12", - { - "x": 0.25, - "c": "#aaaaaa", - "w": 1.25, - "h": 2, - "w2": 1.5, - "h2": 1, - "x2": -0.25 - }, - "1,13", - { - "x": 0.25 - }, - "1,15" - ], - [ - { - "y": -0.15, - "x": 0.25, - "w": 1.75 - }, - "2,0", - { - "c": "#cccccc" - }, - "2,1" - ], - [ - { - "y": -0.85, - "x": 12.85 - }, - "2,10", - "2,11", - { - "c": "#aaaaaa" - }, - "2,13", - { - "x": 1.75 - }, - "2,15" - ], - [ - { - "y": -0.15, - "w": 2.25 - }, - "3,0", - { - "c": "#cccccc" - }, - "3,2" - ], - [ - { - "y": -0.85, - "x": 13.3 - }, - "3,12", - { - "c": "#aaaaaa" - }, - "3,13", - "3,14" - ], - [ - { - "y": -0.75, - "x": 16.3, - "c": "#cccccc" - }, - "3,15" - ], - [ - { - "y": -0.4, - "c": "#aaaaaa", - "w": 1.25 - }, - "4,0", - "4,1", - "4,2" - ], - [ - { - "y": -0.85, - "x":13.3 - }, - "4,12" - ], - [ - { - "y": -0.76, - "x": 15.3, - "c": "#cccccc" - }, - "4,13", - "4,14", - "4,15" - ], - [ - { - "r": 6, - "y": -5.7, - "x": 3.85, - "c": "#cccccc" - }, - "0,3", - "0,4", - "0,5", - "0,6" - ], - [ - { - "x": 3.3 - }, - "1,2", - "1,3", - "1,4", - "1,5" - ], - [ - { - "x": 3.55 - }, - "2,2", - "2,3", - "2,4", - "2,5" - ], - [ - { - "x": 3.9 - }, - "3,3", - "3,4", - "3,5", - "3,6" - ], - [ - { - "x": 4.2, - "c": "#aaaaaa" - }, - "4,3", - { - "w": 2.25 - }, - "4,4", - "4,6" - ], - [ - { - "r": -6, - "y": -3.3, - "x": 8.45, - "c": "#cccccc" - }, - "0,7", - "0,8", - "0,9", - "0,10" - ], - [ - { - "x": 8.0 - }, - "1,6", - "1,7", - "1,8", - "1,9", - "1,10" - ], - [ - { - "x": 8.35 - }, - "2,6", - "2,7", - "2,8", - "2,9" - ], - [ - { - "x": 7.65 - }, - "3,7", - "3,8", - "3,9", - "3,10", - "3,11" - ], - [ - { - "x": 7.65, - "c": "#aaaaaa" - }, - "4,7", - { - "w": 2.75 - }, - "4,9", - "4,11" - ] - ] - } -} \ No newline at end of file diff --git a/keyboards/keychron/k11_max/via_json/k11_max_jis_white_encoder.json b/keyboards/keychron/k11_max/via_json/k11_max_jis_white_encoder.json deleted file mode 100644 index cc991ee4b4..0000000000 --- a/keyboards/keychron/k11_max/via_json/k11_max_jis_white_encoder.json +++ /dev/null @@ -1,297 +0,0 @@ -{ - "name": "Keychron K11 Max JIS White Knob", - "vendorId": "0x3434", - "productId": "0x0ABB", - "keycodes": ["qmk_lighting"], - "customKeycodes": [ - {"name": "Left Option", "title": "Left Option", "shortName": "LOpt"}, - {"name": "Right Option", "title": "Right Option", "shortName": "ROpt"}, - {"name": "Left Cmd", "title": "Left Command", "shortName": "LCmd"}, - {"name": "Right Cmd", "title": "Right Command", "shortName": "RCmd"}, - {"name": "Misson Control", "title": "Misson Control in Mac", "shortName": "MCtl"}, - {"name": "Lanuch Pad", "title": "Lanuch Pad in Windows", "shortName": "LPad"}, - {"name": "Task View", "title": "Task View in Windows", "shortName": "Task"}, - {"name": "File Explorer", "title": "File Explorer in Windows", "shortName": "File"}, - {"name": "Screen shot", "title": "Screenshot in macOS", "shortName": "SShot"}, - {"name": "Cortana", "title": "Cortana in Windows", "shortName": "Cortana"}, - {"name": "Siri", "title": "Siri in macOS", "shortName": "Siri"}, - {"name": "Bluetooth Host 1", "title": "Bluetooth Host 1", "shortName": "BTH1"}, - {"name": "Bluetooth Host 2", "title": "Bluetooth Host 2", "shortName": "BTH2"}, - {"name": "Bluetooth Host 3", "title": "Bluetooth Host 3", "shortName": "BTH3"}, - {"name": "2.4G", "title": "2.4G", "shortName": "2.4G"}, - {"name": "Battery Level", "title": "Show battery level", "shortName": "Batt"} - ], - "matrix": {"rows": 5, "cols": 16}, - "layouts": { - "keymap": [ - [ - { - "x": 2.75 - }, - "0,2", - { - "x": 8.85 - }, - "0,11" - ], - [ - { - "y": -0.95, - "x": 0.75, - "c": "#777777" - }, - "0,0\nESC", - { - "c": "#cccccc" - }, - "0,1" - ], - [ - { - "y": -0.85, - "x": 14.6, - "c": "#aaaaaa" - }, - "0,13", - "0,14", - { - "x": 0.5 - }, - "0,15\n\n\n\n\n\n\n\n\ne0" - ], - [ - { - "y": -1, - "x": 13.6, - "c": "#cccccc" - }, - "0,12" - ], - [ - { - "y": -0.15, - "x": 0.5, - "c": "#aaaaaa", - "w": 1.5 - }, - "1,0", - { - "c": "#cccccc" - }, - "1,1" - ], - [ - { - "y": -0.85, - "x": 13.6 - }, - "1,11", - "1,12", - { - "x": 0.25, - "c": "#aaaaaa", - "w": 1.25, - "h": 2, - "w2": 1.5, - "h2": 1, - "x2": -0.25 - }, - "1,13", - { - "x": 0.25 - }, - "1,15" - ], - [ - { - "y": -0.15, - "x": 0.25, - "w": 1.75 - }, - "2,0", - { - "c": "#cccccc" - }, - "2,1" - ], - [ - { - "y": -0.85, - "x": 12.85 - }, - "2,10", - "2,11", - { - "c": "#aaaaaa" - }, - "2,13", - { - "x": 1.75 - }, - "2,15" - ], - [ - { - "y": -0.15, - "w": 2.25 - }, - "3,0", - { - "c": "#cccccc" - }, - "3,2" - ], - [ - { - "y": -0.85, - "x": 13.3 - }, - "3,12", - { - "c": "#aaaaaa" - }, - "3,13", - "3,14" - ], - [ - { - "y": -0.75, - "x": 16.3, - "c": "#cccccc" - }, - "3,15" - ], - [ - { - "y": -0.4, - "c": "#aaaaaa", - "w": 1.25 - }, - "4,0", - "4,1", - "4,2" - ], - [ - { - "y": -0.85, - "x":13.3 - }, - "4,12" - ], - [ - { - "y": -0.76, - "x": 15.3, - "c": "#cccccc" - }, - "4,13", - "4,14", - "4,15" - ], - [ - { - "r": 6, - "y": -5.7, - "x": 3.85, - "c": "#cccccc" - }, - "0,3", - "0,4", - "0,5", - "0,6" - ], - [ - { - "x": 3.3 - }, - "1,2", - "1,3", - "1,4", - "1,5" - ], - [ - { - "x": 3.55 - }, - "2,2", - "2,3", - "2,4", - "2,5" - ], - [ - { - "x": 3.9 - }, - "3,3", - "3,4", - "3,5", - "3,6" - ], - [ - { - "x": 4.2, - "c": "#aaaaaa" - }, - "4,3", - { - "w": 2.25 - }, - "4,4", - "4,6" - ], - [ - { - "r": -6, - "y": -3.3, - "x": 8.45, - "c": "#cccccc" - }, - "0,7", - "0,8", - "0,9", - "0,10" - ], - [ - { - "x": 8.0 - }, - "1,6", - "1,7", - "1,8", - "1,9", - "1,10" - ], - [ - { - "x": 8.35 - }, - "2,6", - "2,7", - "2,8", - "2,9" - ], - [ - { - "x": 7.65 - }, - "3,7", - "3,8", - "3,9", - "3,10", - "3,11" - ], - [ - { - "x": 7.65, - "c": "#aaaaaa" - }, - "4,7", - { - "w": 2.75 - }, - "4,9", - "4,11" - ] - ] - } -} \ No newline at end of file diff --git a/keyboards/keychron/k11_pro/ansi/rgb/config.h b/keyboards/keychron/k11_pro/ansi/rgb/config.h deleted file mode 100644 index c7bca08601..0000000000 --- a/keyboards/keychron/k11_pro/ansi/rgb/config.h +++ /dev/null @@ -1,57 +0,0 @@ -/* 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 . - */ - -#pragma once - -#ifdef RGB_MATRIX_ENABLE -/* RGB Matrix Driver Configuration */ -# define DRIVER_COUNT 2 -# define DRIVER_ADDR_1 0b1110111 -# define DRIVER_ADDR_2 0b1110100 - -/* RGB Matrix Configuration */ -# define DRIVER_1_LED_COUNT 30 -# define DRIVER_2_LED_COUNT 39 -# define RGB_MATRIX_LED_COUNT (DRIVER_1_LED_COUNT + DRIVER_2_LED_COUNT) - -/* Set to infinit, which is use in USB mode by default - */ -# define RGB_MATRIX_TIMEOUT RGB_MATRIX_TIMEOUT_INFINITE - -/* Allow shutdown of led driver to save power */ -# define RGB_MATRIX_DRIVER_SHUTDOWN_ENABLE - -/* Turn off backlight on low brightness to save power */ -# define RGB_MATRIX_BRIGHTNESS_TURN_OFF_VAL 48 - -/* Indication led index */ -# define CAPS_LOCK_INDEX 30 -# define LOW_BAT_IND_INDEX 61 - -/* RGB Matrix Animation modes. Explicitly enabled - * For full list of effects, see: - * https://docs.qmk.fm/#/feature_rgb_matrix?id=rgb-matrix-effects - */ -# define RGB_MATRIX_KEYPRESSES -# define RGB_MATRIX_FRAMEBUFFER_EFFECTS - -/* Use the first 9 channels of led driver */ -# define PHASE_CHANNEL MSKPHASE_9CHANNEL - -/* Set LED driver current */ -# define SNLED27351_CURRENT_TUNE \ - { 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18 } -#endif diff --git a/keyboards/keychron/k11_pro/ansi/rgb/info.json b/keyboards/keychron/k11_pro/ansi/rgb/info.json deleted file mode 100644 index 9984eebffe..0000000000 --- a/keyboards/keychron/k11_pro/ansi/rgb/info.json +++ /dev/null @@ -1,189 +0,0 @@ -{ - "usb": { - "pid": "0x02B0", - "device_version": "1.0.0" - }, - "features": { - "rgb_matrix": true - }, - "layouts": { - "LAYOUT_69_ansi": { - "layout": [ - {"matrix":[0, 0], "x":0.75, "y":0.25}, - {"matrix":[0, 1], "x":1.75, "y":0.25}, - {"matrix":[0, 2], "x":2.75, "y":0}, - {"matrix":[0, 3], "x":3.75, "y":0.25}, - {"matrix":[0, 4], "x":4.75, "y":0.25}, - {"matrix":[0, 5], "x":5.75, "y":0.25}, - {"matrix":[0, 6], "x":6.75, "y":0.25}, - {"matrix":[0, 7], "x":9.5, "y":0.25}, - {"matrix":[0, 8], "x":10.5, "y":0.25}, - {"matrix":[0, 9], "x":11.5, "y":0.25}, - {"matrix":[0,10], "x":12.5, "y":0.25}, - {"matrix":[0,11], "x":13.5, "y":0}, - {"matrix":[0,12], "x":14.5, "y":0.25}, - {"matrix":[0,13], "x":15.5, "y":0.25, "w":2}, - {"matrix":[0,15], "x":18, "y":0}, - - {"matrix":[1, 0], "x":0.5, "y":1.25, "w":1.5}, - {"matrix":[1, 1], "x":2, "y":1.25}, - {"matrix":[1, 2], "x":3.25, "y":1.25}, - {"matrix":[1, 3], "x":4.25, "y":1.25}, - {"matrix":[1, 4], "x":5.25, "y":1.25}, - {"matrix":[1, 5], "x":6.25, "y":1.25}, - {"matrix":[1, 6], "x":9, "y":1.25}, - {"matrix":[1, 7], "x":10, "y":1.25}, - {"matrix":[1, 8], "x":11, "y":1.25}, - {"matrix":[1, 9], "x":12, "y":1.25}, - {"matrix":[1,10], "x":13.25, "y":1.25}, - {"matrix":[1,11], "x":14.25, "y":1.25}, - {"matrix":[1,12], "x":15.25, "y":1.25}, - {"matrix":[1,13], "x":16.25, "y":1.25, "w":1.5}, - {"matrix":[1,15], "x":18.25, "y":1.5}, - - {"matrix":[2, 0], "x":0.25, "y":2.25, "w":1.75}, - {"matrix":[2, 1], "x":2, "y":2.25}, - {"matrix":[2, 2], "x":3.5, "y":2.25}, - {"matrix":[2, 3], "x":4.5, "y":2.25}, - {"matrix":[2, 4], "x":5.5, "y":2.25}, - {"matrix":[2, 5], "x":6.5, "y":2.25}, - {"matrix":[2, 6], "x":9.5, "y":2.25}, - {"matrix":[2, 7], "x":10.25, "y":2.25}, - {"matrix":[2, 8], "x":11.25, "y":2.25}, - {"matrix":[2, 9], "x":12.25, "y":2.25}, - {"matrix":[2,10], "x":13.25, "y":2.25}, - {"matrix":[2,11], "x":14.75, "y":2.25}, - {"matrix":[2,13], "x":15.75, "y":2.25, "w":2.25}, - {"matrix":[2,15], "x":18.5, "y":2.5}, - - {"matrix":[3, 0], "x":0, "y":3.25, "w":2.25}, - {"matrix":[3, 2], "x":2.25, "y":3.25}, - {"matrix":[3, 3], "x":3.75, "y":3.25}, - {"matrix":[3, 4], "x":4.75, "y":3.25}, - {"matrix":[3, 5], "x":5.75, "y":3.25}, - {"matrix":[3, 6], "x":6.75, "y":3.25}, - {"matrix":[3, 7], "x":8.5, "y":3.25}, - {"matrix":[3, 8], "x":9.5, "y":3.25}, - {"matrix":[3, 9], "x":10.5, "y":3.25}, - {"matrix":[3,10], "x":11.5, "y":3.25}, - {"matrix":[3,11], "x":12.5, "y":3.25}, - {"matrix":[3,13], "x":14.25, "y":3.25}, - {"matrix":[3,14], "x":15.25, "y":3.25, "w":1.75}, - {"matrix":[3,15], "x":17.25, "y":3.5}, - - {"matrix":[4, 0], "x":0, "y":4.25, "w":1.25}, - {"matrix":[4, 1], "x":1.25, "y":4.25, "w":1.25}, - {"matrix":[4, 2], "x":3.75, "y":4.25, "w":1.25}, - {"matrix":[4, 3], "x":5, "y":4.25, "w":2.25}, - {"matrix":[4, 6], "x":7.25, "y":4.25}, - {"matrix":[4,10], "x":8.75, "y":4.25}, - {"matrix":[4,11], "x":9.75, "y":4.25, "w":2.75}, - {"matrix":[4,12], "x":12.5, "y":4.25}, - {"matrix":[4,13], "x":16.25, "y":4.5}, - {"matrix":[4,14], "x":17.25, "y":4.5}, - {"matrix":[4,15], "x":18.25, "y":4.5} - ] - } - }, - "rgb_matrix": { - "driver": "snled27351", - "animations": { - "breathing": true, - "band_spiral_val": true, - "cycle_all": true, - "cycle_left_right": true, - "cycle_up_down": true, - "rainbow_moving_chevron": true, - "cycle_out_in": true, - "cycle_out_in_dual": true, - "cycle_pinwheel": true, - "cycle_spiral": true, - "dual_beacon": true, - "rainbow_beacon": true, - "jellybean_raindrops": true, - "pixel_rain": true, - "typing_heatmap": true, - "digital_rain": true, - "solid_reactive_simple": true, - "solid_reactive_multiwide": true, - "solid_reactive_multinexus": true, - "splash": true, - "solid_splash": true - }, - "layout": [ - {"matrix":[0, 0], "flags":1, "x":7, "y":1}, - {"matrix":[0, 1], "flags":4, "x":20, "y":1}, - {"matrix":[0, 2], "flags":4, "x":33, "y":0}, - {"matrix":[0, 3], "flags":4, "x":48, "y":3}, - {"matrix":[0, 4], "flags":4, "x":61, "y":6}, - {"matrix":[0, 5], "flags":4, "x":74, "y":8}, - {"matrix":[0, 6], "flags":4, "x":87, "y":11}, - {"matrix":[0, 7], "flags":4, "x":106, "y":11}, - {"matrix":[0, 8], "flags":4, "x":119, "y":8}, - {"matrix":[0, 9], "flags":4, "x":132, "y":6}, - {"matrix":[0, 10], "flags":4, "x":145, "y":3}, - {"matrix":[0, 11], "flags":4, "x":160, "y":0}, - {"matrix":[0, 12], "flags":4, "x":173, "y":1}, - {"matrix":[0, 13], "flags":1, "x":193, "y":1}, - {"matrix":[0, 15], "flags":1, "x":220, "y":0}, - - {"matrix":[1, 0], "flags":1, "x":7, "y":14}, - {"matrix":[1, 1], "flags":8, "x":24, "y":14}, - {"matrix":[1, 2], "flags":8, "x":39, "y":14}, - {"matrix":[1, 3], "flags":8, "x":52, "y":17}, - {"matrix":[1, 4], "flags":4, "x":65, "y":20}, - {"matrix":[1, 5], "flags":4, "x":78, "y":22}, - {"matrix":[1, 6], "flags":4, "x":103, "y":25}, - {"matrix":[1, 7], "flags":4, "x":116, "y":22}, - {"matrix":[1, 8], "flags":4, "x":129, "y":20}, - {"matrix":[1, 9], "flags":4, "x":142, "y":17}, - {"matrix":[1, 10], "flags":4, "x":155, "y":14}, - {"matrix":[1, 11], "flags":4, "x":170, "y":14}, - {"matrix":[1, 12], "flags":4, "x":183, "y":14}, - {"matrix":[1, 13], "flags":1, "x":200, "y":14}, - {"matrix":[1, 15], "flags":1, "x":222, "y":16}, - - {"matrix":[2, 0], "flags":8, "x":6, "y":27}, - {"matrix":[2, 1], "flags":4, "x":24, "y":27}, - {"matrix":[2, 2], "flags":4, "x":39, "y":28}, - {"matrix":[2, 3], "flags":4, "x":52, "y":30}, - {"matrix":[2, 4], "flags":4, "x":65, "y":33}, - {"matrix":[2, 5], "flags":4, "x":78, "y":36}, - {"matrix":[2, 6], "flags":4, "x":109, "y":37}, - {"matrix":[2, 7], "flags":4, "x":122, "y":34}, - {"matrix":[2, 8], "flags":4, "x":135, "y":32}, - {"matrix":[2, 9], "flags":4, "x":148, "y":29}, - {"matrix":[2, 10], "flags":4, "x":162, "y":27}, - {"matrix":[2, 11], "flags":4, "x":176, "y":27}, - {"matrix":[2, 13], "flags":1, "x":197, "y":27}, - {"matrix":[2, 15], "flags":1, "x":224, "y":29}, - - {"matrix":[3, 0], "flags":1, "x":7, "y":40}, - {"matrix":[3, 2], "flags":4, "x":28, "y":40}, - {"matrix":[3, 3], "flags":4, "x":43, "y":42}, - {"matrix":[3, 4], "flags":4, "x":56, "y":44}, - {"matrix":[3, 5], "flags":4, "x":69, "y":47}, - {"matrix":[3, 6], "flags":4, "x":82, "y":50}, - {"matrix":[3, 7], "flags":4, "x":102, "y":52}, - {"matrix":[3, 8], "flags":4, "x":115, "y":49}, - {"matrix":[3, 9], "flags":4, "x":128, "y":46}, - {"matrix":[3, 10], "flags":4, "x":141, "y":44}, - {"matrix":[3, 11], "flags":4, "x":154, "y":44}, - {"matrix":[3, 13], "flags":4, "x":169, "y":40}, - {"matrix":[3, 14], "flags":1, "x":187, "y":40}, - {"matrix":[3, 15], "flags":1, "x":209, "y":43}, - - {"matrix":[4, 0], "flags":1, "x":0, "y":53}, - {"matrix":[4, 1], "flags":1, "x":17, "y":63}, - {"matrix":[4, 2], "flags":1, "x":42, "y":55}, - {"matrix":[4, 3], "flags":4, "x":65, "y":60}, - {"matrix":[4, 6], "flags":1, "x":86, "y":64}, - {"matrix":[4, 10], "flags":1, "x":107, "y":64}, - {"matrix":[4, 11], "flags":4, "x":131, "y":59}, - {"matrix":[4, 12], "flags":1, "x":156, "y":54}, - {"matrix":[4, 13], "flags":1, "x":196, "y":56}, - {"matrix":[4, 14], "flags":1, "x":209, "y":56}, - {"matrix":[4, 15], "flags":1, "x":222, "y":56} - ] - } -} diff --git a/keyboards/keychron/k11_pro/ansi/rgb/keymaps/default/keymap.c b/keyboards/keychron/k11_pro/ansi/rgb/keymaps/default/keymap.c deleted file mode 100644 index 7209347d11..0000000000 --- a/keyboards/keychron/k11_pro/ansi/rgb/keymaps/default/keymap.c +++ /dev/null @@ -1,63 +0,0 @@ -/* 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 . - */ - -#include QMK_KEYBOARD_H - -enum layers{ - MAC_BASE, - WIN_BASE, - MAC_FN1, - WIN_FN1, - FN2, -}; - -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_69_ansi( - 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_INS, - 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_DEL, - 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_HOME, - KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, - KC_LCTL, KC_LOPTN, KC_LCMMD, KC_SPC, MO(MAC_FN1), MO(FN2), KC_SPC, KC_RCMMD, KC_LEFT, KC_DOWN, KC_RGHT), - - [WIN_BASE] = LAYOUT_69_ansi( - 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_INS, - 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_DEL, - 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_HOME, - KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, - KC_LCTL, KC_LWIN, KC_LALT, KC_SPC, MO(WIN_FN1), MO(FN2), KC_SPC, KC_RALT, KC_LEFT, KC_DOWN, KC_RGHT), - - [MAC_FN1] = LAYOUT_69_ansi( - KC_GRV, KC_BRID, KC_BRIU, KC_MCTL, KC_LPAD, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, _______, KC_INS, KC_PGUP, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, KC_SNAP, KC_PGDN, KC_END, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, NK_TOGG, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - - [WIN_FN1] = LAYOUT_69_ansi( - KC_GRV, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, KC_APP, KC_SCRL, KC_INS, KC_PGUP, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, KC_PSCR, KC_PGDN, KC_END, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, NK_TOGG, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - - [FN2] = LAYOUT_69_ansi( - KC_TILD, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, BAT_LVL, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______) -}; diff --git a/keyboards/keychron/k11_pro/ansi/rgb/keymaps/via/keymap.c b/keyboards/keychron/k11_pro/ansi/rgb/keymaps/via/keymap.c deleted file mode 100644 index 7209347d11..0000000000 --- a/keyboards/keychron/k11_pro/ansi/rgb/keymaps/via/keymap.c +++ /dev/null @@ -1,63 +0,0 @@ -/* 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 . - */ - -#include QMK_KEYBOARD_H - -enum layers{ - MAC_BASE, - WIN_BASE, - MAC_FN1, - WIN_FN1, - FN2, -}; - -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_69_ansi( - 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_INS, - 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_DEL, - 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_HOME, - KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, - KC_LCTL, KC_LOPTN, KC_LCMMD, KC_SPC, MO(MAC_FN1), MO(FN2), KC_SPC, KC_RCMMD, KC_LEFT, KC_DOWN, KC_RGHT), - - [WIN_BASE] = LAYOUT_69_ansi( - 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_INS, - 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_DEL, - 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_HOME, - KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, - KC_LCTL, KC_LWIN, KC_LALT, KC_SPC, MO(WIN_FN1), MO(FN2), KC_SPC, KC_RALT, KC_LEFT, KC_DOWN, KC_RGHT), - - [MAC_FN1] = LAYOUT_69_ansi( - KC_GRV, KC_BRID, KC_BRIU, KC_MCTL, KC_LPAD, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, _______, KC_INS, KC_PGUP, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, KC_SNAP, KC_PGDN, KC_END, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, NK_TOGG, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - - [WIN_FN1] = LAYOUT_69_ansi( - KC_GRV, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, KC_APP, KC_SCRL, KC_INS, KC_PGUP, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, KC_PSCR, KC_PGDN, KC_END, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, NK_TOGG, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - - [FN2] = LAYOUT_69_ansi( - KC_TILD, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, BAT_LVL, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______) -}; diff --git a/keyboards/keychron/k11_pro/ansi/rgb/keymaps/via/rules.mk b/keyboards/keychron/k11_pro/ansi/rgb/keymaps/via/rules.mk deleted file mode 100644 index 1e5b99807c..0000000000 --- a/keyboards/keychron/k11_pro/ansi/rgb/keymaps/via/rules.mk +++ /dev/null @@ -1 +0,0 @@ -VIA_ENABLE = yes diff --git a/keyboards/keychron/k11_pro/ansi/rgb/rgb.c b/keyboards/keychron/k11_pro/ansi/rgb/rgb.c deleted file mode 100644 index 5143d380e1..0000000000 --- a/keyboards/keychron/k11_pro/ansi/rgb/rgb.c +++ /dev/null @@ -1,102 +0,0 @@ -/* Copyright 2021 @ 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 . - */ - -#include "quantum.h" - -// clang-format off -#ifdef RGB_MATRIX_ENABLE -const snled27351_led_t PROGMEM g_snled27351_leds[RGB_MATRIX_LED_COUNT] = { -/* Refer to snled27351manual for these locations - * driver - * | R location - * | | G location - * | | | B location - * | | | | */ - {0, A_1, C_1, B_1}, - {0, A_2, C_2, B_2}, - {0, A_3, C_3, B_3}, - {0, A_4, C_4, B_4}, - {0, A_5, C_5, B_5}, - {0, A_6, C_6, B_6}, - {0, A_7, C_7, B_7}, - {0, A_8, C_8, B_8}, - {0, A_9, C_9, B_9}, - {0, A_10, C_10, B_10}, - {0, A_11, C_11, B_11}, - {0, A_12, C_12, B_12}, - {0, A_13, C_13, B_13}, - {0, A_14, C_14, B_14}, - {0, A_16, C_16, B_16}, - - {0, F_1, D_1, E_1}, - {0, F_2, D_2, E_2}, - {0, F_3, D_3, E_3}, - {0, F_4, D_4, E_4}, - {0, F_5, D_5, E_5}, - {0, F_6, D_6, E_6}, - {0, F_7, D_7, E_7}, - {0, F_8, D_8, E_8}, - {0, F_9, D_9, E_9}, - {0, F_10, D_10, E_10}, - {0, F_11, D_11, E_11}, - {0, F_12, D_12, E_12}, - {0, F_13, D_13, E_13}, - {0, F_14, D_14, E_14}, - {0, F_16, D_16, E_16}, - - {1, I_1, G_1, H_1}, - {1, I_2, G_2, H_2}, - {1, I_3, G_3, H_3}, - {1, I_4, G_4, H_4}, - {1, I_5, G_5, H_5}, - {1, I_6, G_6, H_6}, - {1, I_7, G_7, H_7}, - {1, I_8, G_8, H_8}, - {1, I_9, G_9, H_9}, - {1, I_10, G_10, H_10}, - {1, I_11, G_11, H_11}, - {1, I_12, G_12, H_12}, - {1, I_14, G_14, H_14}, - {1, I_16, G_16, H_16}, - - {1, C_1, A_1, B_1}, - {1, C_3, A_3, B_3}, - {1, C_4, A_4, B_4}, - {1, C_5, A_5, B_5}, - {1, C_6, A_6, B_6}, - {1, C_7, A_7, B_7}, - {1, C_8, A_8, B_8}, - {1, C_9, A_9, B_9}, - {1, C_10, A_10, B_10}, - {1, C_11, A_11, B_11}, - {1, C_12, A_12, B_12}, - {1, C_14, A_14, B_14}, - {1, C_15, A_15, B_15}, - {1, C_16, A_16, B_16}, - - {1, F_1, D_1, E_1}, - {1, F_2, D_2, E_2}, - {1, F_3, D_3, E_3}, - {1, F_4, D_4, E_4}, - {1, F_7, D_7, E_7}, - {1, F_11, D_11, E_11}, - {1, F_12, D_12, E_12}, - {1, F_13, D_13, E_13}, - {1, F_14, D_14, E_14}, - {1, F_15, D_15, E_15}, - {1, F_16, D_16, E_16} -}; -#endif diff --git a/keyboards/keychron/k11_pro/ansi/rgb/rules.mk b/keyboards/keychron/k11_pro/ansi/rgb/rules.mk deleted file mode 100644 index 6e7633bfe0..0000000000 --- a/keyboards/keychron/k11_pro/ansi/rgb/rules.mk +++ /dev/null @@ -1 +0,0 @@ -# This file intentionally left blank diff --git a/keyboards/keychron/k11_pro/ansi/white/config.h b/keyboards/keychron/k11_pro/ansi/white/config.h deleted file mode 100644 index 0f9a670167..0000000000 --- a/keyboards/keychron/k11_pro/ansi/white/config.h +++ /dev/null @@ -1,53 +0,0 @@ -/* 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 . - */ - -#pragma once - -#ifdef LED_MATRIX_ENABLE -/* LED Matrix Driver Configuration */ -# define DRIVER_COUNT 1 -# define SNLED27351_I2C_ADDRESS_1 SNLED27351_I2C_ADDRESS_GND - -/* LED Matrix Configuration */ -# define LED_MATRIX_LED_COUNT 69 - -/* Set to infinit, which is use in USB mode by default */ -# define LED_MATRIX_TIMEOUT LED_MATRIX_TIMEOUT_INFINITE - -/* Allow shutdown of led driver to save power */ -# define LED_MATRIX_DRIVER_SHUTDOWN_ENABLE - -/* Turn off backlight on low brightness to save power */ -# define LED_MATRIX_BRIGHTNESS_TURN_OFF_VAL 48 - -/* Indication led */ -# define CAPS_LOCK_INDEX 30 -# define LOW_BAT_IND_INDEX 61 - -// LED Matrix Animation modes. Explicitly enabled -// For full list of effects, see: -// https://docs.qmk.fm/#/feature_led_matrix?id=led-matrix-effects -// #if defined(LED_MATRIX_KEYPRESSES) || defined(LED_MATRIX_KEYRELEASES) -# define LED_MATRIX_KEYPRESSES -# define LED_MATRIX_KEYRELEASES - -/* Use first 5 channels of LED driver */ -# define PHASE_CHANNEL MSKPHASE_5CHANNEL - -/* Set LED driver current */ -# define SNLED27351_CURRENT_TUNE \ - { 0x28, 0x28, 0x28, 0x28, 0x28, 0x28, 0x28, 0x28, 0x28, 0x28, 0x28, 0x28 } -#endif diff --git a/keyboards/keychron/k11_pro/ansi/white/info.json b/keyboards/keychron/k11_pro/ansi/white/info.json deleted file mode 100644 index 160bb3c7a8..0000000000 --- a/keyboards/keychron/k11_pro/ansi/white/info.json +++ /dev/null @@ -1,184 +0,0 @@ -{ - "usb": { - "pid": "0x02B3", - "device_version": "1.0.0" - }, - "features": { - "led_matrix": true - }, - "layouts": { - "LAYOUT_69_ansi": { - "layout": [ - {"matrix":[0, 0], "x":0.75, "y":0.25}, - {"matrix":[0, 1], "x":1.75, "y":0.25}, - {"matrix":[0, 2], "x":2.75, "y":0}, - {"matrix":[0, 3], "x":3.75, "y":0.25}, - {"matrix":[0, 4], "x":4.75, "y":0.25}, - {"matrix":[0, 5], "x":5.75, "y":0.25}, - {"matrix":[0, 6], "x":6.75, "y":0.25}, - {"matrix":[0, 7], "x":9.5, "y":0.25}, - {"matrix":[0, 8], "x":10.5, "y":0.25}, - {"matrix":[0, 9], "x":11.5, "y":0.25}, - {"matrix":[0,10], "x":12.5, "y":0.25}, - {"matrix":[0,11], "x":13.5, "y":0}, - {"matrix":[0,12], "x":14.5, "y":0.25}, - {"matrix":[0,13], "x":15.5, "y":0.25, "w":2}, - {"matrix":[0,15], "x":18, "y":0}, - - {"matrix":[1, 0], "x":0.5, "y":1.25, "w":1.5}, - {"matrix":[1, 1], "x":2, "y":1.25}, - {"matrix":[1, 2], "x":3.25, "y":1.25}, - {"matrix":[1, 3], "x":4.25, "y":1.25}, - {"matrix":[1, 4], "x":5.25, "y":1.25}, - {"matrix":[1, 5], "x":6.25, "y":1.25}, - {"matrix":[1, 6], "x":9, "y":1.25}, - {"matrix":[1, 7], "x":10, "y":1.25}, - {"matrix":[1, 8], "x":11, "y":1.25}, - {"matrix":[1, 9], "x":12, "y":1.25}, - {"matrix":[1,10], "x":13.25, "y":1.25}, - {"matrix":[1,11], "x":14.25, "y":1.25}, - {"matrix":[1,12], "x":15.25, "y":1.25}, - {"matrix":[1,13], "x":16.25, "y":1.25, "w":1.5}, - {"matrix":[1,15], "x":18.25, "y":1.5}, - - {"matrix":[2, 0], "x":0.25, "y":2.25, "w":1.75}, - {"matrix":[2, 1], "x":2, "y":2.25}, - {"matrix":[2, 2], "x":3.5, "y":2.25}, - {"matrix":[2, 3], "x":4.5, "y":2.25}, - {"matrix":[2, 4], "x":5.5, "y":2.25}, - {"matrix":[2, 5], "x":6.5, "y":2.25}, - {"matrix":[2, 6], "x":9.5, "y":2.25}, - {"matrix":[2, 7], "x":10.25, "y":2.25}, - {"matrix":[2, 8], "x":11.25, "y":2.25}, - {"matrix":[2, 9], "x":12.25, "y":2.25}, - {"matrix":[2,10], "x":13.25, "y":2.25}, - {"matrix":[2,11], "x":14.75, "y":2.25}, - {"matrix":[2,13], "x":15.75, "y":2.25, "w":2.25}, - {"matrix":[2,15], "x":18.5, "y":2.5}, - - {"matrix":[3, 0], "x":0, "y":3.25, "w":2.25}, - {"matrix":[3, 2], "x":2.25, "y":3.25}, - {"matrix":[3, 3], "x":3.75, "y":3.25}, - {"matrix":[3, 4], "x":4.75, "y":3.25}, - {"matrix":[3, 5], "x":5.75, "y":3.25}, - {"matrix":[3, 6], "x":6.75, "y":3.25}, - {"matrix":[3, 7], "x":8.5, "y":3.25}, - {"matrix":[3, 8], "x":9.5, "y":3.25}, - {"matrix":[3, 9], "x":10.5, "y":3.25}, - {"matrix":[3,10], "x":11.5, "y":3.25}, - {"matrix":[3,11], "x":12.5, "y":3.25}, - {"matrix":[3,13], "x":14.25, "y":3.25}, - {"matrix":[3,14], "x":15.25, "y":3.25, "w":1.75}, - {"matrix":[3,15], "x":17.25, "y":3.5}, - - {"matrix":[4, 0], "x":0, "y":4.25, "w":1.25}, - {"matrix":[4, 1], "x":1.25, "y":4.25, "w":1.25}, - {"matrix":[4, 2], "x":3.75, "y":4.25, "w":1.25}, - {"matrix":[4, 3], "x":5, "y":4.25, "w":2.25}, - {"matrix":[4, 6], "x":7.25, "y":4.25}, - {"matrix":[4,10], "x":8.75, "y":4.25}, - {"matrix":[4,11], "x":9.75, "y":4.25, "w":2.75}, - {"matrix":[4,12], "x":12.5, "y":4.25}, - {"matrix":[4,13], "x":16.25, "y":4.5}, - {"matrix":[4,14], "x":17.25, "y":4.5}, - {"matrix":[4,15], "x":18.25, "y":4.5} - ] - } - }, - "led_matrix": { - "driver": "snled27351", - "animations": { - "none": true, - "solid": true, - "breathing": true, - "band_pinwheel": true, - "band_spiral": true, - "cycle_left_right": true, - "cycle_up_down": true, - "cycle_out_in": true, - "dual_beacon": true, - "solid_reactive_simple": true, - "solid_reactive_multiwide": true, - "solid_reactive_multinexus": true, - "solid_splash": true, - "wave_left_right": true, - "wave_up_down": true, - "effect_max": true - }, - "layout": [ - {"matrix":[0, 0], "flags":1, "x":7, "y":1}, - {"matrix":[0, 1], "flags":4, "x":20, "y":1}, - {"matrix":[0, 2], "flags":4, "x":33, "y":0}, - {"matrix":[0, 3], "flags":4, "x":48, "y":3}, - {"matrix":[0, 4], "flags":4, "x":61, "y":6}, - {"matrix":[0, 5], "flags":4, "x":74, "y":8}, - {"matrix":[0, 6], "flags":4, "x":87, "y":11}, - {"matrix":[0, 7], "flags":4, "x":106, "y":11}, - {"matrix":[0, 8], "flags":4, "x":119, "y":8}, - {"matrix":[0, 9], "flags":4, "x":132, "y":6}, - {"matrix":[0, 10], "flags":4, "x":145, "y":3}, - {"matrix":[0, 11], "flags":4, "x":160, "y":0}, - {"matrix":[0, 12], "flags":4, "x":173, "y":1}, - {"matrix":[0, 13], "flags":1, "x":193, "y":1}, - {"matrix":[0, 15], "flags":1, "x":220, "y":0}, - - {"matrix":[1, 0], "flags":1, "x":7, "y":14}, - {"matrix":[1, 1], "flags":8, "x":24, "y":14}, - {"matrix":[1, 2], "flags":8, "x":39, "y":14}, - {"matrix":[1, 3], "flags":8, "x":52, "y":17}, - {"matrix":[1, 4], "flags":4, "x":65, "y":20}, - {"matrix":[1, 5], "flags":4, "x":78, "y":22}, - {"matrix":[1, 6], "flags":4, "x":103, "y":25}, - {"matrix":[1, 7], "flags":4, "x":116, "y":22}, - {"matrix":[1, 8], "flags":4, "x":129, "y":20}, - {"matrix":[1, 9], "flags":4, "x":142, "y":17}, - {"matrix":[1, 10], "flags":4, "x":155, "y":14}, - {"matrix":[1, 11], "flags":4, "x":170, "y":14}, - {"matrix":[1, 12], "flags":4, "x":183, "y":14}, - {"matrix":[1, 13], "flags":1, "x":200, "y":14}, - {"matrix":[1, 15], "flags":1, "x":222, "y":16}, - - {"matrix":[2, 0], "flags":8, "x":6, "y":27}, - {"matrix":[2, 1], "flags":4, "x":24, "y":27}, - {"matrix":[2, 2], "flags":4, "x":39, "y":28}, - {"matrix":[2, 3], "flags":4, "x":52, "y":30}, - {"matrix":[2, 4], "flags":4, "x":65, "y":33}, - {"matrix":[2, 5], "flags":4, "x":78, "y":36}, - {"matrix":[2, 6], "flags":4, "x":109, "y":37}, - {"matrix":[2, 7], "flags":4, "x":122, "y":34}, - {"matrix":[2, 8], "flags":4, "x":135, "y":32}, - {"matrix":[2, 9], "flags":4, "x":148, "y":29}, - {"matrix":[2, 10], "flags":4, "x":162, "y":27}, - {"matrix":[2, 11], "flags":4, "x":176, "y":27}, - {"matrix":[2, 13], "flags":1, "x":197, "y":27}, - {"matrix":[2, 15], "flags":1, "x":224, "y":29}, - - {"matrix":[3, 0], "flags":1, "x":7, "y":40}, - {"matrix":[3, 2], "flags":4, "x":28, "y":40}, - {"matrix":[3, 3], "flags":4, "x":43, "y":42}, - {"matrix":[3, 4], "flags":4, "x":56, "y":44}, - {"matrix":[3, 5], "flags":4, "x":69, "y":47}, - {"matrix":[3, 6], "flags":4, "x":82, "y":50}, - {"matrix":[3, 7], "flags":4, "x":102, "y":52}, - {"matrix":[3, 8], "flags":4, "x":115, "y":49}, - {"matrix":[3, 9], "flags":4, "x":128, "y":46}, - {"matrix":[3, 10], "flags":4, "x":141, "y":44}, - {"matrix":[3, 11], "flags":4, "x":154, "y":44}, - {"matrix":[3, 13], "flags":4, "x":169, "y":40}, - {"matrix":[3, 14], "flags":1, "x":187, "y":40}, - {"matrix":[3, 15], "flags":1, "x":209, "y":43}, - - {"matrix":[4, 0], "flags":1, "x":0, "y":53}, - {"matrix":[4, 1], "flags":1, "x":17, "y":63}, - {"matrix":[4, 2], "flags":1, "x":42, "y":55}, - {"matrix":[4, 3], "flags":4, "x":65, "y":60}, - {"matrix":[4, 6], "flags":1, "x":86, "y":64}, - {"matrix":[4, 10], "flags":1, "x":107, "y":64}, - {"matrix":[4, 11], "flags":4, "x":131, "y":59}, - {"matrix":[4, 12], "flags":1, "x":156, "y":54}, - {"matrix":[4, 13], "flags":1, "x":196, "y":56}, - {"matrix":[4, 14], "flags":1, "x":209, "y":56}, - {"matrix":[4, 15], "flags":1, "x":222, "y":56} - ] - } -} diff --git a/keyboards/keychron/k11_pro/ansi/white/keymaps/default/keymap.c b/keyboards/keychron/k11_pro/ansi/white/keymaps/default/keymap.c deleted file mode 100644 index 4a3923eb1a..0000000000 --- a/keyboards/keychron/k11_pro/ansi/white/keymaps/default/keymap.c +++ /dev/null @@ -1,63 +0,0 @@ -/* 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 . - */ - -#include QMK_KEYBOARD_H - -enum layers{ - MAC_BASE, - WIN_BASE, - MAC_FN1, - WIN_FN1, - FN2, -}; - -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_69_ansi( - 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_INS, - 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_DEL, - 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_HOME, - KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, - KC_LCTL, KC_LOPTN, KC_LCMMD, KC_SPC, MO(MAC_FN1), MO(FN2), KC_SPC, KC_RCMMD, KC_LEFT, KC_DOWN, KC_RGHT), - - [WIN_BASE] = LAYOUT_69_ansi( - 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_INS, - 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_DEL, - 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_HOME, - KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, - KC_LCTL, KC_LWIN, KC_LALT, KC_SPC, MO(WIN_FN1), MO(FN2), KC_SPC, KC_RALT, KC_LEFT, KC_DOWN, KC_RGHT), - - [MAC_FN1] = LAYOUT_69_ansi( - KC_GRV, KC_BRID, KC_BRIU, KC_MCTL, KC_LPAD, BL_DOWN, BL_UP, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, _______, KC_INS, KC_PGUP, _______, _______, - BL_TOGG, BL_STEP, BL_UP, _______, _______, _______, _______, _______, _______, KC_SNAP, KC_PGDN, KC_END, _______, _______, - _______, _______, BL_DOWN, _______, _______, _______, _______, NK_TOGG, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - - [WIN_FN1] = LAYOUT_69_ansi( - KC_GRV, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, BL_DOWN, BL_UP, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, KC_APP, KC_SCRL, KC_INS, KC_PGUP, _______, _______, - BL_TOGG, BL_STEP, BL_UP, _______, _______, _______, _______, _______, _______, KC_PSCR, KC_PGDN, KC_END, _______, _______, - _______, _______, BL_DOWN, _______, _______, _______, _______, NK_TOGG, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - - [FN2] = LAYOUT_69_ansi( - KC_TILD, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, BAT_LVL, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______) -}; diff --git a/keyboards/keychron/k11_pro/ansi/white/keymaps/via/keymap.c b/keyboards/keychron/k11_pro/ansi/white/keymaps/via/keymap.c deleted file mode 100644 index 4a3923eb1a..0000000000 --- a/keyboards/keychron/k11_pro/ansi/white/keymaps/via/keymap.c +++ /dev/null @@ -1,63 +0,0 @@ -/* 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 . - */ - -#include QMK_KEYBOARD_H - -enum layers{ - MAC_BASE, - WIN_BASE, - MAC_FN1, - WIN_FN1, - FN2, -}; - -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_69_ansi( - 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_INS, - 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_DEL, - 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_HOME, - KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, - KC_LCTL, KC_LOPTN, KC_LCMMD, KC_SPC, MO(MAC_FN1), MO(FN2), KC_SPC, KC_RCMMD, KC_LEFT, KC_DOWN, KC_RGHT), - - [WIN_BASE] = LAYOUT_69_ansi( - 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_INS, - 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_DEL, - 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_HOME, - KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, - KC_LCTL, KC_LWIN, KC_LALT, KC_SPC, MO(WIN_FN1), MO(FN2), KC_SPC, KC_RALT, KC_LEFT, KC_DOWN, KC_RGHT), - - [MAC_FN1] = LAYOUT_69_ansi( - KC_GRV, KC_BRID, KC_BRIU, KC_MCTL, KC_LPAD, BL_DOWN, BL_UP, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, _______, KC_INS, KC_PGUP, _______, _______, - BL_TOGG, BL_STEP, BL_UP, _______, _______, _______, _______, _______, _______, KC_SNAP, KC_PGDN, KC_END, _______, _______, - _______, _______, BL_DOWN, _______, _______, _______, _______, NK_TOGG, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - - [WIN_FN1] = LAYOUT_69_ansi( - KC_GRV, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, BL_DOWN, BL_UP, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, KC_APP, KC_SCRL, KC_INS, KC_PGUP, _______, _______, - BL_TOGG, BL_STEP, BL_UP, _______, _______, _______, _______, _______, _______, KC_PSCR, KC_PGDN, KC_END, _______, _______, - _______, _______, BL_DOWN, _______, _______, _______, _______, NK_TOGG, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - - [FN2] = LAYOUT_69_ansi( - KC_TILD, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, BAT_LVL, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______) -}; diff --git a/keyboards/keychron/k11_pro/ansi/white/keymaps/via/rules.mk b/keyboards/keychron/k11_pro/ansi/white/keymaps/via/rules.mk deleted file mode 100644 index 1e5b99807c..0000000000 --- a/keyboards/keychron/k11_pro/ansi/white/keymaps/via/rules.mk +++ /dev/null @@ -1 +0,0 @@ -VIA_ENABLE = yes diff --git a/keyboards/keychron/k11_pro/ansi/white/rules.mk b/keyboards/keychron/k11_pro/ansi/white/rules.mk deleted file mode 100644 index 6e7633bfe0..0000000000 --- a/keyboards/keychron/k11_pro/ansi/white/rules.mk +++ /dev/null @@ -1 +0,0 @@ -# This file intentionally left blank diff --git a/keyboards/keychron/k11_pro/ansi/white/white.c b/keyboards/keychron/k11_pro/ansi/white/white.c deleted file mode 100644 index c5e3f22a51..0000000000 --- a/keyboards/keychron/k11_pro/ansi/white/white.c +++ /dev/null @@ -1,100 +0,0 @@ -/* 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 . - */ - -#include "quantum.h" - -// clang-format off -#ifdef LED_MATRIX_ENABLE -const snled27351_led_t g_snled27351_leds[LED_MATRIX_LED_COUNT] = { -/* Refer to snled27351manual for these locations - * driver - * | LED address - * | | */ - {0, E_1}, - {0, E_2}, - {0, E_3}, - {0, E_4}, - {0, E_5}, - {0, E_6}, - {0, E_7}, - {0, E_8}, - {0, E_9}, - {0, E_10}, - {0, E_11}, - {0, E_12}, - {0, E_13}, - {0, E_14}, - {0, E_16}, - - {0, D_1}, - {0, D_2}, - {0, D_3}, - {0, D_4}, - {0, D_5}, - {0, D_6}, - {0, D_7}, - {0, D_8}, - {0, D_9}, - {0, D_10}, - {0, D_11}, - {0, D_12}, - {0, D_13}, - {0, D_14}, - {0, D_16}, - - {0, C_1}, - {0, C_2}, - {0, C_3}, - {0, C_4}, - {0, C_5}, - {0, C_6}, - {0, C_7}, - {0, C_8}, - {0, C_9}, - {0, C_10}, - {0, C_11}, - {0, C_12}, - {0, C_14}, - {0, C_16}, - - {0, B_1}, - {0, B_3}, - {0, B_4}, - {0, B_5}, - {0, B_6}, - {0, B_7}, - {0, B_8}, - {0, B_9}, - {0, B_10}, - {0, B_11}, - {0, B_12}, - {0, B_14}, - {0, B_15}, - {0, B_16}, - - {0, A_1}, - {0, A_2}, - {0, A_3}, - {0, A_4}, - {0, A_7}, - {0, A_11}, - {0, A_12}, - {0, A_13}, - {0, A_14}, - {0, A_15}, - {0, A_16}, -}; -#endif diff --git a/keyboards/keychron/k11_pro/ansi_encoder/rgb/config.h b/keyboards/keychron/k11_pro/ansi_encoder/rgb/config.h deleted file mode 100644 index c7bca08601..0000000000 --- a/keyboards/keychron/k11_pro/ansi_encoder/rgb/config.h +++ /dev/null @@ -1,57 +0,0 @@ -/* 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 . - */ - -#pragma once - -#ifdef RGB_MATRIX_ENABLE -/* RGB Matrix Driver Configuration */ -# define DRIVER_COUNT 2 -# define DRIVER_ADDR_1 0b1110111 -# define DRIVER_ADDR_2 0b1110100 - -/* RGB Matrix Configuration */ -# define DRIVER_1_LED_COUNT 30 -# define DRIVER_2_LED_COUNT 39 -# define RGB_MATRIX_LED_COUNT (DRIVER_1_LED_COUNT + DRIVER_2_LED_COUNT) - -/* Set to infinit, which is use in USB mode by default - */ -# define RGB_MATRIX_TIMEOUT RGB_MATRIX_TIMEOUT_INFINITE - -/* Allow shutdown of led driver to save power */ -# define RGB_MATRIX_DRIVER_SHUTDOWN_ENABLE - -/* Turn off backlight on low brightness to save power */ -# define RGB_MATRIX_BRIGHTNESS_TURN_OFF_VAL 48 - -/* Indication led index */ -# define CAPS_LOCK_INDEX 30 -# define LOW_BAT_IND_INDEX 61 - -/* RGB Matrix Animation modes. Explicitly enabled - * For full list of effects, see: - * https://docs.qmk.fm/#/feature_rgb_matrix?id=rgb-matrix-effects - */ -# define RGB_MATRIX_KEYPRESSES -# define RGB_MATRIX_FRAMEBUFFER_EFFECTS - -/* Use the first 9 channels of led driver */ -# define PHASE_CHANNEL MSKPHASE_9CHANNEL - -/* Set LED driver current */ -# define SNLED27351_CURRENT_TUNE \ - { 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18 } -#endif diff --git a/keyboards/keychron/k11_pro/ansi_encoder/rgb/info.json b/keyboards/keychron/k11_pro/ansi_encoder/rgb/info.json deleted file mode 100644 index a9f3205f55..0000000000 --- a/keyboards/keychron/k11_pro/ansi_encoder/rgb/info.json +++ /dev/null @@ -1,195 +0,0 @@ -{ - "usb": { - "pid": "0x02B6", - "device_version": "1.0.1" - }, - "features": { - "encoder": true, - "rgb_matrix": true - }, - "encoder": { - "rotary": [ - {"pin_a": "A0", "pin_b": "A10"} - ] - }, - "layouts": { - "LAYOUT_69_ansi": { - "layout": [ - {"matrix":[0, 0], "x":0.75, "y":0.25}, - {"matrix":[0, 1], "x":1.75, "y":0.25}, - {"matrix":[0, 2], "x":2.75, "y":0}, - {"matrix":[0, 3], "x":3.75, "y":0.25}, - {"matrix":[0, 4], "x":4.75, "y":0.25}, - {"matrix":[0, 5], "x":5.75, "y":0.25}, - {"matrix":[0, 6], "x":6.75, "y":0.25}, - {"matrix":[0, 7], "x":9.5, "y":0.25}, - {"matrix":[0, 8], "x":10.5, "y":0.25}, - {"matrix":[0, 9], "x":11.5, "y":0.25}, - {"matrix":[0,10], "x":12.5, "y":0.25}, - {"matrix":[0,11], "x":13.5, "y":0}, - {"matrix":[0,12], "x":14.5, "y":0.25}, - {"matrix":[0,13], "x":15.5, "y":0.25, "w":2}, - {"matrix":[0,15], "x":18, "y":0}, - - {"matrix":[1, 0], "x":0.5, "y":1.25, "w":1.5}, - {"matrix":[1, 1], "x":2, "y":1.25}, - {"matrix":[1, 2], "x":3.25, "y":1.25}, - {"matrix":[1, 3], "x":4.25, "y":1.25}, - {"matrix":[1, 4], "x":5.25, "y":1.25}, - {"matrix":[1, 5], "x":6.25, "y":1.25}, - {"matrix":[1, 6], "x":9, "y":1.25}, - {"matrix":[1, 7], "x":10, "y":1.25}, - {"matrix":[1, 8], "x":11, "y":1.25}, - {"matrix":[1, 9], "x":12, "y":1.25}, - {"matrix":[1,10], "x":13.25, "y":1.25}, - {"matrix":[1,11], "x":14.25, "y":1.25}, - {"matrix":[1,12], "x":15.25, "y":1.25}, - {"matrix":[1,13], "x":16.25, "y":1.25, "w":1.5}, - {"matrix":[1,15], "x":18.25, "y":1.5}, - - {"matrix":[2, 0], "x":0.25, "y":2.25, "w":1.75}, - {"matrix":[2, 1], "x":2, "y":2.25}, - {"matrix":[2, 2], "x":3.5, "y":2.25}, - {"matrix":[2, 3], "x":4.5, "y":2.25}, - {"matrix":[2, 4], "x":5.5, "y":2.25}, - {"matrix":[2, 5], "x":6.5, "y":2.25}, - {"matrix":[2, 6], "x":9.5, "y":2.25}, - {"matrix":[2, 7], "x":10.25, "y":2.25}, - {"matrix":[2, 8], "x":11.25, "y":2.25}, - {"matrix":[2, 9], "x":12.25, "y":2.25}, - {"matrix":[2,10], "x":13.25, "y":2.25}, - {"matrix":[2,11], "x":14.75, "y":2.25}, - {"matrix":[2,13], "x":15.75, "y":2.25, "w":2.25}, - {"matrix":[2,15], "x":18.5, "y":2.5}, - - {"matrix":[3, 0], "x":0, "y":3.25, "w":2.25}, - {"matrix":[3, 2], "x":2.25, "y":3.25}, - {"matrix":[3, 3], "x":3.75, "y":3.25}, - {"matrix":[3, 4], "x":4.75, "y":3.25}, - {"matrix":[3, 5], "x":5.75, "y":3.25}, - {"matrix":[3, 6], "x":6.75, "y":3.25}, - {"matrix":[3, 7], "x":8.5, "y":3.25}, - {"matrix":[3, 8], "x":9.5, "y":3.25}, - {"matrix":[3, 9], "x":10.5, "y":3.25}, - {"matrix":[3,10], "x":11.5, "y":3.25}, - {"matrix":[3,11], "x":12.5, "y":3.25}, - {"matrix":[3,13], "x":14.25, "y":3.25}, - {"matrix":[3,14], "x":15.25, "y":3.25, "w":1.75}, - {"matrix":[3,15], "x":17.25, "y":3.5}, - - {"matrix":[4, 0], "x":0, "y":4.25, "w":1.25}, - {"matrix":[4, 1], "x":1.25, "y":4.25, "w":1.25}, - {"matrix":[4, 2], "x":3.75, "y":4.25, "w":1.25}, - {"matrix":[4, 3], "x":5, "y":4.25, "w":2.25}, - {"matrix":[4, 6], "x":7.25, "y":4.25}, - {"matrix":[4,10], "x":8.75, "y":4.25}, - {"matrix":[4,11], "x":9.75, "y":4.25, "w":2.75}, - {"matrix":[4,12], "x":12.5, "y":4.25}, - {"matrix":[4,13], "x":16.25, "y":4.5}, - {"matrix":[4,14], "x":17.25, "y":4.5}, - {"matrix":[4,15], "x":18.25, "y":4.5} - ] - } - }, - "rgb_matrix": { - "driver": "snled27351", - "animations": { - "breathing": true, - "band_spiral_val": true, - "cycle_all": true, - "cycle_left_right": true, - "cycle_up_down": true, - "rainbow_moving_chevron": true, - "cycle_out_in": true, - "cycle_out_in_dual": true, - "cycle_pinwheel": true, - "cycle_spiral": true, - "dual_beacon": true, - "rainbow_beacon": true, - "jellybean_raindrops": true, - "pixel_rain": true, - "typing_heatmap": true, - "digital_rain": true, - "solid_reactive_simple": true, - "solid_reactive_multiwide": true, - "solid_reactive_multinexus": true, - "splash": true, - "solid_splash": true - }, - "layout": [ - {"matrix":[0, 0], "flags":1, "x":7, "y":1}, - {"matrix":[0, 1], "flags":4, "x":20, "y":1}, - {"matrix":[0, 2], "flags":4, "x":33, "y":0}, - {"matrix":[0, 3], "flags":4, "x":48, "y":3}, - {"matrix":[0, 4], "flags":4, "x":61, "y":6}, - {"matrix":[0, 5], "flags":4, "x":74, "y":8}, - {"matrix":[0, 6], "flags":4, "x":87, "y":11}, - {"matrix":[0, 7], "flags":4, "x":106, "y":11}, - {"matrix":[0, 8], "flags":4, "x":119, "y":8}, - {"matrix":[0, 9], "flags":4, "x":132, "y":6}, - {"matrix":[0, 10], "flags":4, "x":145, "y":3}, - {"matrix":[0, 11], "flags":4, "x":160, "y":0}, - {"matrix":[0, 12], "flags":4, "x":173, "y":1}, - {"matrix":[0, 13], "flags":1, "x":193, "y":1}, - {"matrix":[0, 15], "flags":1, "x":220, "y":0}, - - {"matrix":[1, 0], "flags":1, "x":7, "y":14}, - {"matrix":[1, 1], "flags":8, "x":24, "y":14}, - {"matrix":[1, 2], "flags":8, "x":39, "y":14}, - {"matrix":[1, 3], "flags":8, "x":52, "y":17}, - {"matrix":[1, 4], "flags":4, "x":65, "y":20}, - {"matrix":[1, 5], "flags":4, "x":78, "y":22}, - {"matrix":[1, 6], "flags":4, "x":103, "y":25}, - {"matrix":[1, 7], "flags":4, "x":116, "y":22}, - {"matrix":[1, 8], "flags":4, "x":129, "y":20}, - {"matrix":[1, 9], "flags":4, "x":142, "y":17}, - {"matrix":[1, 10], "flags":4, "x":155, "y":14}, - {"matrix":[1, 11], "flags":4, "x":170, "y":14}, - {"matrix":[1, 12], "flags":4, "x":183, "y":14}, - {"matrix":[1, 13], "flags":1, "x":200, "y":14}, - {"matrix":[1, 15], "flags":1, "x":222, "y":16}, - - {"matrix":[2, 0], "flags":8, "x":6, "y":27}, - {"matrix":[2, 1], "flags":4, "x":24, "y":27}, - {"matrix":[2, 2], "flags":4, "x":39, "y":28}, - {"matrix":[2, 3], "flags":4, "x":52, "y":30}, - {"matrix":[2, 4], "flags":4, "x":65, "y":33}, - {"matrix":[2, 5], "flags":4, "x":78, "y":36}, - {"matrix":[2, 6], "flags":4, "x":109, "y":37}, - {"matrix":[2, 7], "flags":4, "x":122, "y":34}, - {"matrix":[2, 8], "flags":4, "x":135, "y":32}, - {"matrix":[2, 9], "flags":4, "x":148, "y":29}, - {"matrix":[2, 10], "flags":4, "x":162, "y":27}, - {"matrix":[2, 11], "flags":4, "x":176, "y":27}, - {"matrix":[2, 13], "flags":1, "x":197, "y":27}, - {"matrix":[2, 15], "flags":1, "x":224, "y":29}, - - {"matrix":[3, 0], "flags":1, "x":7, "y":40}, - {"matrix":[3, 2], "flags":4, "x":28, "y":40}, - {"matrix":[3, 3], "flags":4, "x":43, "y":42}, - {"matrix":[3, 4], "flags":4, "x":56, "y":44}, - {"matrix":[3, 5], "flags":4, "x":69, "y":47}, - {"matrix":[3, 6], "flags":4, "x":82, "y":50}, - {"matrix":[3, 7], "flags":4, "x":102, "y":52}, - {"matrix":[3, 8], "flags":4, "x":115, "y":49}, - {"matrix":[3, 9], "flags":4, "x":128, "y":46}, - {"matrix":[3, 10], "flags":4, "x":141, "y":44}, - {"matrix":[3, 11], "flags":4, "x":154, "y":44}, - {"matrix":[3, 13], "flags":4, "x":169, "y":40}, - {"matrix":[3, 14], "flags":1, "x":187, "y":40}, - {"matrix":[3, 15], "flags":1, "x":209, "y":43}, - - {"matrix":[4, 0], "flags":1, "x":0, "y":53}, - {"matrix":[4, 1], "flags":1, "x":17, "y":63}, - {"matrix":[4, 2], "flags":1, "x":42, "y":55}, - {"matrix":[4, 3], "flags":4, "x":65, "y":60}, - {"matrix":[4, 6], "flags":1, "x":86, "y":64}, - {"matrix":[4, 10], "flags":1, "x":107, "y":64}, - {"matrix":[4, 11], "flags":4, "x":131, "y":59}, - {"matrix":[4, 12], "flags":1, "x":156, "y":54}, - {"matrix":[4, 13], "flags":1, "x":196, "y":56}, - {"matrix":[4, 14], "flags":1, "x":209, "y":56}, - {"matrix":[4, 15], "flags":1, "x":222, "y":56} - ] - } -} diff --git a/keyboards/keychron/k11_pro/ansi_encoder/rgb/keymaps/default/keymap.c b/keyboards/keychron/k11_pro/ansi_encoder/rgb/keymaps/default/keymap.c deleted file mode 100644 index 2dc0d9a891..0000000000 --- a/keyboards/keychron/k11_pro/ansi_encoder/rgb/keymaps/default/keymap.c +++ /dev/null @@ -1,73 +0,0 @@ -/* 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 . - */ - -#include QMK_KEYBOARD_H - -enum layers{ - MAC_BASE, - WIN_BASE, - MAC_FN1, - WIN_FN1, - FN2, -}; - -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_69_ansi( - 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_MUTE, - 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_DEL, - 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_HOME, - KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, - KC_LCTL, KC_LOPTN, KC_LCMMD, KC_SPC, MO(MAC_FN1), MO(FN2), KC_SPC, KC_RCMMD, KC_LEFT, KC_DOWN, KC_RGHT), - - [WIN_BASE] = LAYOUT_69_ansi( - 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_MUTE, - 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_DEL, - 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_HOME, - KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, - KC_LCTL, KC_LWIN, KC_LALT, KC_SPC, MO(WIN_FN1), MO(FN2), KC_SPC, KC_RALT, KC_LEFT, KC_DOWN, KC_RGHT), - - [MAC_FN1] = LAYOUT_69_ansi( - KC_GRV, KC_BRID, KC_BRIU, KC_MCTL, KC_LPAD, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, RGB_TOG, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, KC_INS, KC_PGUP, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, KC_SNAP, KC_PGDN, KC_END, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, NK_TOGG, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - - [WIN_FN1] = LAYOUT_69_ansi( - KC_GRV, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, RGB_TOG, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, KC_APP, KC_SCRL, KC_INS, KC_PGUP, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, KC_PSCR, KC_PGDN, KC_END, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, NK_TOGG, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - - [FN2] = LAYOUT_69_ansi( - KC_TILD, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, BAT_LVL, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______) -}; - -#if defined(ENCODER_MAP_ENABLE) -const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][2] = { - [MAC_BASE] = { ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [WIN_BASE] = { ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [MAC_FN1] = { ENCODER_CCW_CW(RGB_VAD, RGB_VAI)}, - [WIN_FN1] = { ENCODER_CCW_CW(RGB_VAD, RGB_VAI)}, - [FN2] = { ENCODER_CCW_CW(_______, _______)}, -}; -#endif // ENCODER_MAP_ENABLE diff --git a/keyboards/keychron/k11_pro/ansi_encoder/rgb/keymaps/default/rules.mk b/keyboards/keychron/k11_pro/ansi_encoder/rgb/keymaps/default/rules.mk deleted file mode 100644 index ee32568148..0000000000 --- a/keyboards/keychron/k11_pro/ansi_encoder/rgb/keymaps/default/rules.mk +++ /dev/null @@ -1 +0,0 @@ -ENCODER_MAP_ENABLE = yes diff --git a/keyboards/keychron/k11_pro/ansi_encoder/rgb/keymaps/via/keymap.c b/keyboards/keychron/k11_pro/ansi_encoder/rgb/keymaps/via/keymap.c deleted file mode 100644 index 2dc0d9a891..0000000000 --- a/keyboards/keychron/k11_pro/ansi_encoder/rgb/keymaps/via/keymap.c +++ /dev/null @@ -1,73 +0,0 @@ -/* 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 . - */ - -#include QMK_KEYBOARD_H - -enum layers{ - MAC_BASE, - WIN_BASE, - MAC_FN1, - WIN_FN1, - FN2, -}; - -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_69_ansi( - 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_MUTE, - 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_DEL, - 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_HOME, - KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, - KC_LCTL, KC_LOPTN, KC_LCMMD, KC_SPC, MO(MAC_FN1), MO(FN2), KC_SPC, KC_RCMMD, KC_LEFT, KC_DOWN, KC_RGHT), - - [WIN_BASE] = LAYOUT_69_ansi( - 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_MUTE, - 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_DEL, - 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_HOME, - KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, - KC_LCTL, KC_LWIN, KC_LALT, KC_SPC, MO(WIN_FN1), MO(FN2), KC_SPC, KC_RALT, KC_LEFT, KC_DOWN, KC_RGHT), - - [MAC_FN1] = LAYOUT_69_ansi( - KC_GRV, KC_BRID, KC_BRIU, KC_MCTL, KC_LPAD, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, RGB_TOG, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, KC_INS, KC_PGUP, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, KC_SNAP, KC_PGDN, KC_END, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, NK_TOGG, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - - [WIN_FN1] = LAYOUT_69_ansi( - KC_GRV, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, RGB_TOG, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, KC_APP, KC_SCRL, KC_INS, KC_PGUP, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, KC_PSCR, KC_PGDN, KC_END, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, NK_TOGG, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - - [FN2] = LAYOUT_69_ansi( - KC_TILD, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, BAT_LVL, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______) -}; - -#if defined(ENCODER_MAP_ENABLE) -const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][2] = { - [MAC_BASE] = { ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [WIN_BASE] = { ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [MAC_FN1] = { ENCODER_CCW_CW(RGB_VAD, RGB_VAI)}, - [WIN_FN1] = { ENCODER_CCW_CW(RGB_VAD, RGB_VAI)}, - [FN2] = { ENCODER_CCW_CW(_______, _______)}, -}; -#endif // ENCODER_MAP_ENABLE diff --git a/keyboards/keychron/k11_pro/ansi_encoder/rgb/keymaps/via/rules.mk b/keyboards/keychron/k11_pro/ansi_encoder/rgb/keymaps/via/rules.mk deleted file mode 100644 index f1adcab005..0000000000 --- a/keyboards/keychron/k11_pro/ansi_encoder/rgb/keymaps/via/rules.mk +++ /dev/null @@ -1,2 +0,0 @@ -VIA_ENABLE = yes -ENCODER_MAP_ENABLE = yes diff --git a/keyboards/keychron/k11_pro/ansi_encoder/rgb/rgb.c b/keyboards/keychron/k11_pro/ansi_encoder/rgb/rgb.c deleted file mode 100644 index d63cbbca06..0000000000 --- a/keyboards/keychron/k11_pro/ansi_encoder/rgb/rgb.c +++ /dev/null @@ -1,102 +0,0 @@ -/* 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 . - */ - -#include "quantum.h" - -// clang-format off -#ifdef RGB_MATRIX_ENABLE -const snled27351_led_t PROGMEM g_snled27351_leds[RGB_MATRIX_LED_COUNT] = { -/* Refer to snled27351manual for these locations - * driver - * | R location - * | | G location - * | | | B location - * | | | | */ - {0, A_1, C_1, B_1}, - {0, A_2, C_2, B_2}, - {0, A_3, C_3, B_3}, - {0, A_4, C_4, B_4}, - {0, A_5, C_5, B_5}, - {0, A_6, C_6, B_6}, - {0, A_7, C_7, B_7}, - {0, A_8, C_8, B_8}, - {0, A_9, C_9, B_9}, - {0, A_10, C_10, B_10}, - {0, A_11, C_11, B_11}, - {0, A_12, C_12, B_12}, - {0, A_13, C_13, B_13}, - {0, A_14, C_14, B_14}, - {0, A_16, C_16, B_16}, - - {0, F_1, D_1, E_1}, - {0, F_2, D_2, E_2}, - {0, F_3, D_3, E_3}, - {0, F_4, D_4, E_4}, - {0, F_5, D_5, E_5}, - {0, F_6, D_6, E_6}, - {0, F_7, D_7, E_7}, - {0, F_8, D_8, E_8}, - {0, F_9, D_9, E_9}, - {0, F_10, D_10, E_10}, - {0, F_11, D_11, E_11}, - {0, F_12, D_12, E_12}, - {0, F_13, D_13, E_13}, - {0, F_14, D_14, E_14}, - {0, F_16, D_16, E_16}, - - {1, I_1, G_1, H_1}, - {1, I_2, G_2, H_2}, - {1, I_3, G_3, H_3}, - {1, I_4, G_4, H_4}, - {1, I_5, G_5, H_5}, - {1, I_6, G_6, H_6}, - {1, I_7, G_7, H_7}, - {1, I_8, G_8, H_8}, - {1, I_9, G_9, H_9}, - {1, I_10, G_10, H_10}, - {1, I_11, G_11, H_11}, - {1, I_12, G_12, H_12}, - {1, I_14, G_14, H_14}, - {1, I_16, G_16, H_16}, - - {1, C_1, A_1, B_1}, - {1, C_3, A_3, B_3}, - {1, C_4, A_4, B_4}, - {1, C_5, A_5, B_5}, - {1, C_6, A_6, B_6}, - {1, C_7, A_7, B_7}, - {1, C_8, A_8, B_8}, - {1, C_9, A_9, B_9}, - {1, C_10, A_10, B_10}, - {1, C_11, A_11, B_11}, - {1, C_12, A_12, B_12}, - {1, C_14, A_14, B_14}, - {1, C_15, A_15, B_15}, - {1, C_16, A_16, B_16}, - - {1, F_1, D_1, E_1}, - {1, F_2, D_2, E_2}, - {1, F_3, D_3, E_3}, - {1, F_4, D_4, E_4}, - {1, F_7, D_7, E_7}, - {1, F_11, D_11, E_11}, - {1, F_12, D_12, E_12}, - {1, F_13, D_13, E_13}, - {1, F_14, D_14, E_14}, - {1, F_15, D_15, E_15}, - {1, F_16, D_16, E_16} -}; -#endif diff --git a/keyboards/keychron/k11_pro/ansi_encoder/rgb/rules.mk b/keyboards/keychron/k11_pro/ansi_encoder/rgb/rules.mk deleted file mode 100644 index 6e7633bfe0..0000000000 --- a/keyboards/keychron/k11_pro/ansi_encoder/rgb/rules.mk +++ /dev/null @@ -1 +0,0 @@ -# This file intentionally left blank diff --git a/keyboards/keychron/k11_pro/ansi_encoder/white/config.h b/keyboards/keychron/k11_pro/ansi_encoder/white/config.h deleted file mode 100644 index c9bcd78cf3..0000000000 --- a/keyboards/keychron/k11_pro/ansi_encoder/white/config.h +++ /dev/null @@ -1,53 +0,0 @@ -/* 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 . - */ - -#pragma once - -#ifdef LED_MATRIX_ENABLE -/* LED Matrix Driver Configuration */ -# define DRIVER_COUNT 1 -# define SNLED27351_I2C_ADDRESS_1 SNLED27351_I2C_ADDRESS_GND - -/* LED Matrix Configuration */ -# define LED_MATRIX_LED_COUNT 69 - -/* Set to infinit, which is use in USB mode by default */ -# define LED_MATRIX_TIMEOUT LED_MATRIX_TIMEOUT_INFINITE - -/* Allow shutdown of led driver to save power */ -# define LED_MATRIX_DRIVER_SHUTDOWN_ENABLE - -/* Turn off backlight on low brightness to save power */ -# define LED_MATRIX_BRIGHTNESS_TURN_OFF_VAL 48 - -/* Indication led index */ -# define CAPS_LOCK_INDEX 30 -# define LOW_BAT_IND_INDEX 61 - -// LED Matrix Animation modes. Explicitly enabled -// For full list of effects, see: -// https://docs.qmk.fm/#/feature_led_matrix?id=led-matrix-effects -// #if defined(LED_MATRIX_KEYPRESSES) || defined(LED_MATRIX_KEYRELEASES) -# define LED_MATRIX_KEYPRESSES -# define LED_MATRIX_KEYRELEASES - -/* Use the first 5 channels of LED driver */ -# define PHASE_CHANNEL MSKPHASE_5CHANNEL - -/* Set LED driver current */ -# define SNLED27351_CURRENT_TUNE \ - { 0x28, 0x28, 0x28, 0x28, 0x28, 0x28, 0x28, 0x28, 0x28, 0x28, 0x28, 0x28 } -#endif diff --git a/keyboards/keychron/k11_pro/ansi_encoder/white/info.json b/keyboards/keychron/k11_pro/ansi_encoder/white/info.json deleted file mode 100644 index 6b7cc552e7..0000000000 --- a/keyboards/keychron/k11_pro/ansi_encoder/white/info.json +++ /dev/null @@ -1,190 +0,0 @@ -{ - "usb": { - "pid": "0x02B9", - "device_version": "1.0.1" - }, - "features": { - "encoder": true, - "led_matrix": true - }, - "encoder": { - "rotary": [ - {"pin_a": "A0", "pin_b": "A10"} - ] - }, - "layouts": { - "LAYOUT_69_ansi": { - "layout": [ - {"matrix":[0, 0], "x":0.75, "y":0.25}, - {"matrix":[0, 1], "x":1.75, "y":0.25}, - {"matrix":[0, 2], "x":2.75, "y":0}, - {"matrix":[0, 3], "x":3.75, "y":0.25}, - {"matrix":[0, 4], "x":4.75, "y":0.25}, - {"matrix":[0, 5], "x":5.75, "y":0.25}, - {"matrix":[0, 6], "x":6.75, "y":0.25}, - {"matrix":[0, 7], "x":9.5, "y":0.25}, - {"matrix":[0, 8], "x":10.5, "y":0.25}, - {"matrix":[0, 9], "x":11.5, "y":0.25}, - {"matrix":[0,10], "x":12.5, "y":0.25}, - {"matrix":[0,11], "x":13.5, "y":0}, - {"matrix":[0,12], "x":14.5, "y":0.25}, - {"matrix":[0,13], "x":15.5, "y":0.25, "w":2}, - {"matrix":[0,15], "x":18, "y":0}, - - {"matrix":[1, 0], "x":0.5, "y":1.25, "w":1.5}, - {"matrix":[1, 1], "x":2, "y":1.25}, - {"matrix":[1, 2], "x":3.25, "y":1.25}, - {"matrix":[1, 3], "x":4.25, "y":1.25}, - {"matrix":[1, 4], "x":5.25, "y":1.25}, - {"matrix":[1, 5], "x":6.25, "y":1.25}, - {"matrix":[1, 6], "x":9, "y":1.25}, - {"matrix":[1, 7], "x":10, "y":1.25}, - {"matrix":[1, 8], "x":11, "y":1.25}, - {"matrix":[1, 9], "x":12, "y":1.25}, - {"matrix":[1,10], "x":13.25, "y":1.25}, - {"matrix":[1,11], "x":14.25, "y":1.25}, - {"matrix":[1,12], "x":15.25, "y":1.25}, - {"matrix":[1,13], "x":16.25, "y":1.25, "w":1.5}, - {"matrix":[1,15], "x":18.25, "y":1.5}, - - {"matrix":[2, 0], "x":0.25, "y":2.25, "w":1.75}, - {"matrix":[2, 1], "x":2, "y":2.25}, - {"matrix":[2, 2], "x":3.5, "y":2.25}, - {"matrix":[2, 3], "x":4.5, "y":2.25}, - {"matrix":[2, 4], "x":5.5, "y":2.25}, - {"matrix":[2, 5], "x":6.5, "y":2.25}, - {"matrix":[2, 6], "x":9.5, "y":2.25}, - {"matrix":[2, 7], "x":10.25, "y":2.25}, - {"matrix":[2, 8], "x":11.25, "y":2.25}, - {"matrix":[2, 9], "x":12.25, "y":2.25}, - {"matrix":[2,10], "x":13.25, "y":2.25}, - {"matrix":[2,11], "x":14.75, "y":2.25}, - {"matrix":[2,13], "x":15.75, "y":2.25, "w":2.25}, - {"matrix":[2,15], "x":18.5, "y":2.5}, - - {"matrix":[3, 0], "x":0, "y":3.25, "w":2.25}, - {"matrix":[3, 2], "x":2.25, "y":3.25}, - {"matrix":[3, 3], "x":3.75, "y":3.25}, - {"matrix":[3, 4], "x":4.75, "y":3.25}, - {"matrix":[3, 5], "x":5.75, "y":3.25}, - {"matrix":[3, 6], "x":6.75, "y":3.25}, - {"matrix":[3, 7], "x":8.5, "y":3.25}, - {"matrix":[3, 8], "x":9.5, "y":3.25}, - {"matrix":[3, 9], "x":10.5, "y":3.25}, - {"matrix":[3,10], "x":11.5, "y":3.25}, - {"matrix":[3,11], "x":12.5, "y":3.25}, - {"matrix":[3,13], "x":14.25, "y":3.25}, - {"matrix":[3,14], "x":15.25, "y":3.25, "w":1.75}, - {"matrix":[3,15], "x":17.25, "y":3.5}, - - {"matrix":[4, 0], "x":0, "y":4.25, "w":1.25}, - {"matrix":[4, 1], "x":1.25, "y":4.25, "w":1.25}, - {"matrix":[4, 2], "x":3.75, "y":4.25, "w":1.25}, - {"matrix":[4, 3], "x":5, "y":4.25, "w":2.25}, - {"matrix":[4, 6], "x":7.25, "y":4.25}, - {"matrix":[4,10], "x":8.75, "y":4.25}, - {"matrix":[4,11], "x":9.75, "y":4.25, "w":2.75}, - {"matrix":[4,12], "x":12.5, "y":4.25}, - {"matrix":[4,13], "x":16.25, "y":4.5}, - {"matrix":[4,14], "x":17.25, "y":4.5}, - {"matrix":[4,15], "x":18.25, "y":4.5} - ] - } - }, - "led_matrix": { - "driver": "snled27351", - "animations": { - "none": true, - "solid": true, - "breathing": true, - "band_pinwheel": true, - "band_spiral": true, - "cycle_left_right": true, - "cycle_up_down": true, - "cycle_out_in": true, - "dual_beacon": true, - "solid_reactive_simple": true, - "solid_reactive_multiwide": true, - "solid_reactive_multinexus": true, - "solid_splash": true, - "wave_left_right": true, - "wave_up_down": true, - "effect_max": true - }, - "layout": [ - {"matrix":[0, 0], "flags":1, "x":7, "y":1}, - {"matrix":[0, 1], "flags":4, "x":20, "y":1}, - {"matrix":[0, 2], "flags":4, "x":33, "y":0}, - {"matrix":[0, 3], "flags":4, "x":48, "y":3}, - {"matrix":[0, 4], "flags":4, "x":61, "y":6}, - {"matrix":[0, 5], "flags":4, "x":74, "y":8}, - {"matrix":[0, 6], "flags":4, "x":87, "y":11}, - {"matrix":[0, 7], "flags":4, "x":106, "y":11}, - {"matrix":[0, 8], "flags":4, "x":119, "y":8}, - {"matrix":[0, 9], "flags":4, "x":132, "y":6}, - {"matrix":[0, 10], "flags":4, "x":145, "y":3}, - {"matrix":[0, 11], "flags":4, "x":160, "y":0}, - {"matrix":[0, 12], "flags":4, "x":173, "y":1}, - {"matrix":[0, 13], "flags":1, "x":193, "y":1}, - {"matrix":[0, 15], "flags":1, "x":220, "y":0}, - - {"matrix":[1, 0], "flags":1, "x":7, "y":14}, - {"matrix":[1, 1], "flags":8, "x":24, "y":14}, - {"matrix":[1, 2], "flags":8, "x":39, "y":14}, - {"matrix":[1, 3], "flags":8, "x":52, "y":17}, - {"matrix":[1, 4], "flags":4, "x":65, "y":20}, - {"matrix":[1, 5], "flags":4, "x":78, "y":22}, - {"matrix":[1, 6], "flags":4, "x":103, "y":25}, - {"matrix":[1, 7], "flags":4, "x":116, "y":22}, - {"matrix":[1, 8], "flags":4, "x":129, "y":20}, - {"matrix":[1, 9], "flags":4, "x":142, "y":17}, - {"matrix":[1, 10], "flags":4, "x":155, "y":14}, - {"matrix":[1, 11], "flags":4, "x":170, "y":14}, - {"matrix":[1, 12], "flags":4, "x":183, "y":14}, - {"matrix":[1, 13], "flags":1, "x":200, "y":14}, - {"matrix":[1, 15], "flags":1, "x":222, "y":16}, - - {"matrix":[2, 0], "flags":8, "x":6, "y":27}, - {"matrix":[2, 1], "flags":4, "x":24, "y":27}, - {"matrix":[2, 2], "flags":4, "x":39, "y":28}, - {"matrix":[2, 3], "flags":4, "x":52, "y":30}, - {"matrix":[2, 4], "flags":4, "x":65, "y":33}, - {"matrix":[2, 5], "flags":4, "x":78, "y":36}, - {"matrix":[2, 6], "flags":4, "x":109, "y":37}, - {"matrix":[2, 7], "flags":4, "x":122, "y":34}, - {"matrix":[2, 8], "flags":4, "x":135, "y":32}, - {"matrix":[2, 9], "flags":4, "x":148, "y":29}, - {"matrix":[2, 10], "flags":4, "x":162, "y":27}, - {"matrix":[2, 11], "flags":4, "x":176, "y":27}, - {"matrix":[2, 13], "flags":1, "x":197, "y":27}, - {"matrix":[2, 15], "flags":1, "x":224, "y":29}, - - {"matrix":[3, 0], "flags":1, "x":7, "y":40}, - {"matrix":[3, 2], "flags":4, "x":28, "y":40}, - {"matrix":[3, 3], "flags":4, "x":43, "y":42}, - {"matrix":[3, 4], "flags":4, "x":56, "y":44}, - {"matrix":[3, 5], "flags":4, "x":69, "y":47}, - {"matrix":[3, 6], "flags":4, "x":82, "y":50}, - {"matrix":[3, 7], "flags":4, "x":102, "y":52}, - {"matrix":[3, 8], "flags":4, "x":115, "y":49}, - {"matrix":[3, 9], "flags":4, "x":128, "y":46}, - {"matrix":[3, 10], "flags":4, "x":141, "y":44}, - {"matrix":[3, 11], "flags":4, "x":154, "y":44}, - {"matrix":[3, 13], "flags":4, "x":169, "y":40}, - {"matrix":[3, 14], "flags":1, "x":187, "y":40}, - {"matrix":[3, 15], "flags":1, "x":209, "y":43}, - - {"matrix":[4, 0], "flags":1, "x":0, "y":53}, - {"matrix":[4, 1], "flags":1, "x":17, "y":63}, - {"matrix":[4, 2], "flags":1, "x":42, "y":55}, - {"matrix":[4, 3], "flags":4, "x":65, "y":60}, - {"matrix":[4, 6], "flags":1, "x":86, "y":64}, - {"matrix":[4, 10], "flags":1, "x":107, "y":64}, - {"matrix":[4, 11], "flags":4, "x":131, "y":59}, - {"matrix":[4, 12], "flags":1, "x":156, "y":54}, - {"matrix":[4, 13], "flags":1, "x":196, "y":56}, - {"matrix":[4, 14], "flags":1, "x":209, "y":56}, - {"matrix":[4, 15], "flags":1, "x":222, "y":56} - ] - } -} diff --git a/keyboards/keychron/k11_pro/ansi_encoder/white/keymaps/default/keymap.c b/keyboards/keychron/k11_pro/ansi_encoder/white/keymaps/default/keymap.c deleted file mode 100644 index 2872bb59cd..0000000000 --- a/keyboards/keychron/k11_pro/ansi_encoder/white/keymaps/default/keymap.c +++ /dev/null @@ -1,73 +0,0 @@ -/* 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 . - */ - -#include QMK_KEYBOARD_H - -enum layers{ - MAC_BASE, - WIN_BASE, - MAC_FN1, - WIN_FN1, - FN2, -}; - -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_69_ansi( - 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_MUTE, - 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_DEL, - 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_HOME, - KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, - KC_LCTL, KC_LOPTN, KC_LCMMD, KC_SPC, MO(MAC_FN1), MO(FN2), KC_SPC, KC_RCMMD, KC_LEFT, KC_DOWN, KC_RGHT), - - [WIN_BASE] = LAYOUT_69_ansi( - 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_MUTE, - 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_DEL, - 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_HOME, - KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, - KC_LCTL, KC_LWIN, KC_LALT, KC_SPC, MO(WIN_FN1), MO(FN2), KC_SPC, KC_RALT, KC_LEFT, KC_DOWN, KC_RGHT), - - [MAC_FN1] = LAYOUT_69_ansi( - KC_GRV, KC_BRID, KC_BRIU, KC_MCTL, KC_LPAD, BL_DOWN, BL_UP, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, BL_TOGG, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, KC_INS, KC_PGUP, _______, _______, _______, - BL_TOGG, BL_STEP, BL_UP, _______, _______, _______, _______, _______, _______, KC_SNAP, KC_PGDN, KC_END, _______, _______, - _______, _______, BL_DOWN, _______, _______, _______, _______, NK_TOGG, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - - [WIN_FN1] = LAYOUT_69_ansi( - KC_GRV, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, BL_DOWN, BL_UP, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, BL_TOGG, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, KC_APP, KC_SCRL, KC_INS, KC_PGUP, _______, _______, _______, - BL_TOGG, BL_STEP, BL_UP, _______, _______, _______, _______, _______, _______, KC_PSCR, KC_PGDN, KC_END, _______, _______, - _______, _______, BL_DOWN, _______, _______, _______, _______, NK_TOGG, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - - [FN2] = LAYOUT_69_ansi( - KC_TILD, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, BAT_LVL, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______) -}; - -#if defined(ENCODER_MAP_ENABLE) -const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][2] = { - [MAC_BASE] = { ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [WIN_BASE] = { ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [MAC_FN1] = { ENCODER_CCW_CW(BL_DOWN, BL_UP)}, - [WIN_FN1] = { ENCODER_CCW_CW(BL_DOWN, BL_UP)}, - [FN2] = { ENCODER_CCW_CW(_______, _______)}, -}; -#endif // ENCODER_MAP_ENABLE diff --git a/keyboards/keychron/k11_pro/ansi_encoder/white/keymaps/default/rules.mk b/keyboards/keychron/k11_pro/ansi_encoder/white/keymaps/default/rules.mk deleted file mode 100644 index ee32568148..0000000000 --- a/keyboards/keychron/k11_pro/ansi_encoder/white/keymaps/default/rules.mk +++ /dev/null @@ -1 +0,0 @@ -ENCODER_MAP_ENABLE = yes diff --git a/keyboards/keychron/k11_pro/ansi_encoder/white/keymaps/via/keymap.c b/keyboards/keychron/k11_pro/ansi_encoder/white/keymaps/via/keymap.c deleted file mode 100644 index 2872bb59cd..0000000000 --- a/keyboards/keychron/k11_pro/ansi_encoder/white/keymaps/via/keymap.c +++ /dev/null @@ -1,73 +0,0 @@ -/* 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 . - */ - -#include QMK_KEYBOARD_H - -enum layers{ - MAC_BASE, - WIN_BASE, - MAC_FN1, - WIN_FN1, - FN2, -}; - -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_69_ansi( - 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_MUTE, - 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_DEL, - 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_HOME, - KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, - KC_LCTL, KC_LOPTN, KC_LCMMD, KC_SPC, MO(MAC_FN1), MO(FN2), KC_SPC, KC_RCMMD, KC_LEFT, KC_DOWN, KC_RGHT), - - [WIN_BASE] = LAYOUT_69_ansi( - 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_MUTE, - 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_DEL, - 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_HOME, - KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, - KC_LCTL, KC_LWIN, KC_LALT, KC_SPC, MO(WIN_FN1), MO(FN2), KC_SPC, KC_RALT, KC_LEFT, KC_DOWN, KC_RGHT), - - [MAC_FN1] = LAYOUT_69_ansi( - KC_GRV, KC_BRID, KC_BRIU, KC_MCTL, KC_LPAD, BL_DOWN, BL_UP, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, BL_TOGG, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, KC_INS, KC_PGUP, _______, _______, _______, - BL_TOGG, BL_STEP, BL_UP, _______, _______, _______, _______, _______, _______, KC_SNAP, KC_PGDN, KC_END, _______, _______, - _______, _______, BL_DOWN, _______, _______, _______, _______, NK_TOGG, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - - [WIN_FN1] = LAYOUT_69_ansi( - KC_GRV, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, BL_DOWN, BL_UP, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, BL_TOGG, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, KC_APP, KC_SCRL, KC_INS, KC_PGUP, _______, _______, _______, - BL_TOGG, BL_STEP, BL_UP, _______, _______, _______, _______, _______, _______, KC_PSCR, KC_PGDN, KC_END, _______, _______, - _______, _______, BL_DOWN, _______, _______, _______, _______, NK_TOGG, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - - [FN2] = LAYOUT_69_ansi( - KC_TILD, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, BAT_LVL, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______) -}; - -#if defined(ENCODER_MAP_ENABLE) -const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][2] = { - [MAC_BASE] = { ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [WIN_BASE] = { ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [MAC_FN1] = { ENCODER_CCW_CW(BL_DOWN, BL_UP)}, - [WIN_FN1] = { ENCODER_CCW_CW(BL_DOWN, BL_UP)}, - [FN2] = { ENCODER_CCW_CW(_______, _______)}, -}; -#endif // ENCODER_MAP_ENABLE diff --git a/keyboards/keychron/k11_pro/ansi_encoder/white/keymaps/via/rules.mk b/keyboards/keychron/k11_pro/ansi_encoder/white/keymaps/via/rules.mk deleted file mode 100644 index f1adcab005..0000000000 --- a/keyboards/keychron/k11_pro/ansi_encoder/white/keymaps/via/rules.mk +++ /dev/null @@ -1,2 +0,0 @@ -VIA_ENABLE = yes -ENCODER_MAP_ENABLE = yes diff --git a/keyboards/keychron/k11_pro/ansi_encoder/white/rules.mk b/keyboards/keychron/k11_pro/ansi_encoder/white/rules.mk deleted file mode 100644 index 6e7633bfe0..0000000000 --- a/keyboards/keychron/k11_pro/ansi_encoder/white/rules.mk +++ /dev/null @@ -1 +0,0 @@ -# This file intentionally left blank diff --git a/keyboards/keychron/k11_pro/ansi_encoder/white/white.c b/keyboards/keychron/k11_pro/ansi_encoder/white/white.c deleted file mode 100644 index c5e3f22a51..0000000000 --- a/keyboards/keychron/k11_pro/ansi_encoder/white/white.c +++ /dev/null @@ -1,100 +0,0 @@ -/* 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 . - */ - -#include "quantum.h" - -// clang-format off -#ifdef LED_MATRIX_ENABLE -const snled27351_led_t g_snled27351_leds[LED_MATRIX_LED_COUNT] = { -/* Refer to snled27351manual for these locations - * driver - * | LED address - * | | */ - {0, E_1}, - {0, E_2}, - {0, E_3}, - {0, E_4}, - {0, E_5}, - {0, E_6}, - {0, E_7}, - {0, E_8}, - {0, E_9}, - {0, E_10}, - {0, E_11}, - {0, E_12}, - {0, E_13}, - {0, E_14}, - {0, E_16}, - - {0, D_1}, - {0, D_2}, - {0, D_3}, - {0, D_4}, - {0, D_5}, - {0, D_6}, - {0, D_7}, - {0, D_8}, - {0, D_9}, - {0, D_10}, - {0, D_11}, - {0, D_12}, - {0, D_13}, - {0, D_14}, - {0, D_16}, - - {0, C_1}, - {0, C_2}, - {0, C_3}, - {0, C_4}, - {0, C_5}, - {0, C_6}, - {0, C_7}, - {0, C_8}, - {0, C_9}, - {0, C_10}, - {0, C_11}, - {0, C_12}, - {0, C_14}, - {0, C_16}, - - {0, B_1}, - {0, B_3}, - {0, B_4}, - {0, B_5}, - {0, B_6}, - {0, B_7}, - {0, B_8}, - {0, B_9}, - {0, B_10}, - {0, B_11}, - {0, B_12}, - {0, B_14}, - {0, B_15}, - {0, B_16}, - - {0, A_1}, - {0, A_2}, - {0, A_3}, - {0, A_4}, - {0, A_7}, - {0, A_11}, - {0, A_12}, - {0, A_13}, - {0, A_14}, - {0, A_15}, - {0, A_16}, -}; -#endif diff --git a/keyboards/keychron/k11_pro/config.h b/keyboards/keychron/k11_pro/config.h deleted file mode 100644 index c375a342d8..0000000000 --- a/keyboards/keychron/k11_pro/config.h +++ /dev/null @@ -1,86 +0,0 @@ -/* 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 . - */ - -#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 A4 - -# 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 B5 -# 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 \ - { 16, 17, 18 } - -# 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 30 -# 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 WEAR_LEVELING_LOGICAL_SIZE 2048 -#define WEAR_LEVELING_BACKING_SIZE (WEAR_LEVELING_LOGICAL_SIZE * 2) -#define DYNAMIC_KEYMAP_EEPROM_MAX_ADDR 2047 - -/* Factory test keys */ -#define FN_KEY1 MO(4) diff --git a/keyboards/keychron/k11_pro/halconf.h b/keyboards/keychron/k11_pro/halconf.h deleted file mode 100644 index 8312a64f86..0000000000 --- a/keyboards/keychron/k11_pro/halconf.h +++ /dev/null @@ -1,32 +0,0 @@ -/* 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 _CHIBIOS_HAL_CONF_VER_8_0_ - -#define HAL_USE_I2C TRUE - -#if defined(ENCODER_ENBALE) || defined(KC_BLUETOOTH_ENABLE) -# define PAL_USE_CALLBACKS TRUE -#endif - -#ifdef KC_BLUETOOTH_ENABLE -# define HAL_USE_SERIAL TRUE -# define HAL_USE_RTC TRUE -#endif - -#include_next diff --git a/keyboards/keychron/k11_pro/info.json b/keyboards/keychron/k11_pro/info.json deleted file mode 100644 index 5851ba824c..0000000000 --- a/keyboards/keychron/k11_pro/info.json +++ /dev/null @@ -1,31 +0,0 @@ -{ - "keyboard_name": "Keychron K11 Pro", - "manufacturer": "Keychron", - "url": "https://github.com/Keychron", - "maintainer": "lalalademaxiya1", - "processor": "STM32L432", - "bootloader": "stm32-dfu", - "usb": { - "vid": "0x3434" - }, - "features": { - "bootmagic": true, - "command": false, - "console": false, - "dip_switch": true, - "extrakey": true, - "mousekey": true, - "nkro": true, - "raw": true - }, - "matrix_pins": { - "cols": [null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null], - "rows": ["B4", "B3", "A15", "A14", "A13"], - "custom": true, - "custom_lite": true - }, - "diode_direction": "ROW2COL", - "dynamic_keymap": { - "layer_count": 5 - } -} diff --git a/keyboards/keychron/k11_pro/k11_pro.c b/keyboards/keychron/k11_pro/k11_pro.c deleted file mode 100644 index 6ad7649bab..0000000000 --- a/keyboards/keychron/k11_pro/k11_pro.c +++ /dev/null @@ -1,325 +0,0 @@ -/* Copyright 2022 @ 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 . - */ - -#include "k11_pro.h" -#ifdef KC_BLUETOOTH_ENABLE -# include "ckbt51.h" -# include "bluetooth.h" -# include "indicator.h" -# include "transport.h" -# include "battery.h" -# include "bat_level_animation.h" -# include "lpm.h" -#endif - -#ifdef ENABLE_FACTORY_TEST -# include "factory_test.h" -#endif - -#define POWER_ON_LED_DURATION 3000 - -typedef struct PACKED { - uint8_t len; - uint8_t keycode[3]; -} key_combination_t; - -static uint32_t factory_timer_buffer = 0; -static uint32_t power_on_indicator_timer_buffer = 0; -static uint32_t siri_timer_buffer = 0; -static uint8_t mac_keycode[4] = {KC_LOPT, KC_ROPT, KC_LCMD, KC_RCMD}; - -key_combination_t key_comb_list[4] = { - {2, {KC_LWIN, KC_TAB}}, // Task (win) - {2, {KC_LWIN, KC_E}}, // Files (win) - {3, {KC_LSFT, KC_LGUI, KC_4}}, // Snapshot (mac) - {2, {KC_LWIN, KC_C}} // Cortana (win) -}; - -#ifdef KC_BLUETOOTH_ENABLE -bool firstDisconnect = true; -bool bt_factory_reset = false; -static virtual_timer_t pairing_key_timer; -extern uint8_t g_pwm_buffer[DRIVER_COUNT][192]; - -static void pairing_key_timer_cb(void *arg) { - bluetooth_pairing_ex(*(uint8_t *)arg, NULL); -} -#endif - -bool dip_switch_update_kb(uint8_t index, bool active) { -#ifdef INVERT_OS_SWITCH_STATE - default_layer_set(1UL << (!active ? 0 : 1)); -#else - default_layer_set(1UL << (active ? 0 : 1)); -#endif - dip_switch_update_user(index, active); - - return true; -} - -#ifdef KC_BLUETOOTH_ENABLE -bool process_record_kb_bt(uint16_t keycode, keyrecord_t *record) { -#else -bool process_record_kb(uint16_t keycode, keyrecord_t *record) { -#endif - static uint8_t host_idx = 0; - - switch (keycode) { - case KC_LOPTN: - case KC_ROPTN: - case KC_LCMMD: - case KC_RCMMD: - if (record->event.pressed) { - register_code(mac_keycode[keycode - KC_LOPTN]); - } else { - unregister_code(mac_keycode[keycode - KC_LOPTN]); - } - return false; // Skip all further processing of this key) - case KC_TASK: - case KC_FILE: - case KC_SNAP: - case KC_CTANA: - if (record->event.pressed) { - for (uint8_t i = 0; i < key_comb_list[keycode - KC_TASK].len; i++) - register_code(key_comb_list[keycode - KC_TASK].keycode[i]); - } else { - for (uint8_t i = 0; i < key_comb_list[keycode - KC_TASK].len; i++) - unregister_code(key_comb_list[keycode - KC_TASK].keycode[i]); - } - return false; // Skip all further processing of this key - case KC_SIRI: - if (record->event.pressed && siri_timer_buffer == 0) { - register_code(KC_LGUI); - register_code(KC_SPACE); - siri_timer_buffer = sync_timer_read32() | 1; - } - return false; // Skip all further processing of this key -#ifdef KC_BLUETOOTH_ENABLE - case BT_HST1 ... BT_HST3: - if (get_transport() == TRANSPORT_BLUETOOTH) { - if (record->event.pressed) { - host_idx = keycode - BT_HST1 + 1; - chVTSet(&pairing_key_timer, TIME_MS2I(2000), (vtfunc_t)pairing_key_timer_cb, &host_idx); - bluetooth_connect_ex(host_idx, 0); - } else { - host_idx = 0; - chVTReset(&pairing_key_timer); - } - } - break; - case BAT_LVL: - if (get_transport() == TRANSPORT_BLUETOOTH && !usb_power_connected()) { - bat_level_animiation_start(battery_get_percentage()); - } - break; -#endif - default: -#ifdef FACTORY_RESET_CHECK - FACTORY_RESET_CHECK(keycode, record); -#endif - break; - } - return true; -} - -#if defined(ENCODER_ENABLE) -static void encoder_pad_cb(void *param) { - encoder_inerrupt_read((uint32_t)param & 0xFF); -} -#endif - -void keyboard_post_init_kb(void) { - dip_switch_read(true); - -#ifdef KC_BLUETOOTH_ENABLE - /* Currently we don't use this reset pin */ - palSetLineMode(CKBT51_RESET_PIN, PAL_MODE_OUTPUT_PUSHPULL); - palWriteLine(CKBT51_RESET_PIN, PAL_HIGH); - - /* IMPORTANT: DO NOT enable internal pull-up resistor - * as there is an external pull-down resistor. - */ - palSetLineMode(USB_BT_MODE_SELECT_PIN, PAL_MODE_INPUT); - - ckbt51_init(false); - bluetooth_init(); -#endif - -#ifdef ENCODER_ENABLE - pin_t encoders_pad_a[NUM_ENCODERS] = ENCODERS_PAD_A; - pin_t encoders_pad_b[NUM_ENCODERS] = ENCODERS_PAD_B; - for (uint32_t i = 0; i < NUM_ENCODERS; i++) { - palEnableLineEvent(encoders_pad_a[i], PAL_EVENT_MODE_BOTH_EDGES); - palEnableLineEvent(encoders_pad_b[i], PAL_EVENT_MODE_BOTH_EDGES); - palSetLineCallback(encoders_pad_a[i], encoder_pad_cb, (void *)i); - palSetLineCallback(encoders_pad_b[i], encoder_pad_cb, (void *)i); - } -#endif - - power_on_indicator_timer_buffer = sync_timer_read32() | 1; - writePin(BAT_LOW_LED_PIN, BAT_LOW_LED_PIN_ON_STATE); - keyboard_post_init_user(); -} - -void matrix_scan_kb(void) { - if (factory_timer_buffer && timer_elapsed32(factory_timer_buffer) > 2000) { - factory_timer_buffer = 0; - if (bt_factory_reset) { - bt_factory_reset = false; - palWriteLine(CKBT51_RESET_PIN, PAL_LOW); - wait_ms(5); - palWriteLine(CKBT51_RESET_PIN, PAL_HIGH); - } - } - - if (power_on_indicator_timer_buffer) { - if (sync_timer_elapsed32(power_on_indicator_timer_buffer) > POWER_ON_LED_DURATION) { - power_on_indicator_timer_buffer = 0; - writePin(BAT_LOW_LED_PIN, !BAT_LOW_LED_PIN_ON_STATE); - } else { - writePin(BAT_LOW_LED_PIN, BAT_LOW_LED_PIN_ON_STATE); - } - } - - if (siri_timer_buffer && sync_timer_elapsed32(siri_timer_buffer) > 500) { - siri_timer_buffer = 0; - unregister_code(KC_LGUI); - unregister_code(KC_SPACE); - } - -#ifdef FACTORY_RESET_TASK - FACTORY_RESET_TASK(); -#endif - matrix_scan_user(); -} - -#ifdef KC_BLUETOOTH_ENABLE -static void ckbt51_param_init(void) { - /* Set bluetooth device name */ - ckbt51_set_local_name(PRODUCT); - wait_ms(10); - /* Set bluetooth parameters */ - module_param_t param = {.event_mode = 0x02, - .connected_idle_timeout = 7200, - .pairing_timeout = 180, - .pairing_mode = 0, - .reconnect_timeout = 5, - .report_rate = 90, - .vendor_id_source = 1, - .verndor_id = 0, // Must be 0x3434 - .product_id = PRODUCT_ID}; - ckbt51_set_param(¶m); - wait_ms(10); -} - -void bluetooth_enter_disconnected_kb(uint8_t host_idx) { - if (bt_factory_reset) { - ckbt51_param_init(); - factory_timer_buffer = timer_read32(); - } - /* CKBT51 bluetooth module boot time is slower, it enters disconnected after boot, - so we place initialization here. */ - if (firstDisconnect && sync_timer_read32() < 1000 && get_transport() == TRANSPORT_BLUETOOTH) { - ckbt51_param_init(); - bluetooth_connect(); - firstDisconnect = false; - } -} - -void ckbt51_default_ack_handler(uint8_t *data, uint8_t len) { - if (data[1] == 0x45) { - module_param_t param = {.event_mode = 0x02, - .connected_idle_timeout = 7200, - .pairing_timeout = 180, - .pairing_mode = 0, - .reconnect_timeout = 5, - .report_rate = 90, - .vendor_id_source = 1, - .verndor_id = 0, // Must be 0x3434 - .product_id = PRODUCT_ID}; - ckbt51_set_param(¶m); - } -} - -void bluetooth_pre_task(void) { - static uint8_t mode = 1; - - if (readPin(USB_BT_MODE_SELECT_PIN) != mode) { - if (readPin(USB_BT_MODE_SELECT_PIN) != mode) { - mode = readPin(USB_BT_MODE_SELECT_PIN); - set_transport(mode == 0 ? TRANSPORT_BLUETOOTH : TRANSPORT_USB); - } - } -} -#endif - -void battery_calculte_voltage(uint16_t value) { - uint16_t voltage = ((uint32_t)value) * 2246 / 1000; - -#ifdef LED_MATRIX_ENABLE - if (led_matrix_is_enabled()) { - uint32_t totalBuf = 0; - - for (uint8_t i = 0; i < DRIVER_COUNT; i++) - for (uint8_t j = 0; j < 192; j++) - totalBuf += g_pwm_buffer[i][j]; - /* We assumpt it is linear relationship*/ - voltage += (30 * totalBuf / LED_MATRIX_LED_COUNT / 255); - } -#endif -#ifdef RGB_MATRIX_ENABLE - if (rgb_matrix_is_enabled()) { - uint32_t totalBuf = 0; - - for (uint8_t i = 0; i < DRIVER_COUNT; i++) - for (uint8_t j = 0; j < 192; j++) - totalBuf += g_pwm_buffer[i][j]; - /* We assumpt it is linear relationship*/ - uint32_t compensation = 60 * totalBuf / RGB_MATRIX_LED_COUNT / 255 / 3; - voltage += compensation; - } -#endif - battery_set_voltage(voltage); -} - -bool via_command_kb(uint8_t *data, uint8_t length) { - switch (data[0]) { -#ifdef KC_BLUETOOTH_ENABLE - case 0xAA: - ckbt51_dfu_rx(data, length); - break; -#endif -#ifdef ENABLE_FACTORY_TEST - case 0xAB: - factory_test_rx(data, length); - break; -#endif - default: - return false; - } - - return true; -} - -#if !defined(VIA_ENABLE) -void raw_hid_receive(uint8_t *data, uint8_t length) { - switch (data[0]) { - case RAW_HID_CMD: - via_command_kb(data, length); - break; - } -} -#endif diff --git a/keyboards/keychron/k11_pro/k11_pro.h b/keyboards/keychron/k11_pro/k11_pro.h deleted file mode 100644 index da19432963..0000000000 --- a/keyboards/keychron/k11_pro/k11_pro.h +++ /dev/null @@ -1,55 +0,0 @@ -/* Copyright 2022 @ 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 . - */ - -#pragma once - -#include "quantum.h" -#ifdef VIA_ENABLE -# include "via.h" -#endif - -#define ___ KC_NO - -#ifdef VIA_ENABLE -# define USER_START QK_KB_0 -#else -# define USER_START SAFE_RANGE -#endif - -// clang-format off -enum { - KC_LOPTN = USER_START, - KC_ROPTN, - KC_LCMMD, - KC_RCMMD, - KC_TASK, - KC_FILE, - KC_SNAP, - KC_CTANA, - KC_SIRI, -#ifdef KC_BLUETOOTH_ENABLE - BT_HST1, - BT_HST2, - BT_HST3, - BAT_LVL, -#else - BT_HST1 = KC_TRNS, - BT_HST2 = KC_TRNS, - BT_HST3 = KC_TRNS, - BAT_LVL = KC_TRNS, -#endif - NEW_SAFE_RANGE -}; diff --git a/keyboards/keychron/k11_pro/matrix.c b/keyboards/keychron/k11_pro/matrix.c deleted file mode 100644 index 023e863c03..0000000000 --- a/keyboards/keychron/k11_pro/matrix.c +++ /dev/null @@ -1,190 +0,0 @@ -/* 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 . - */ - -#include "quantum.h" - -#define HC595_STCP B0 -#define HC595_SHCP A1 -#define HC595_DS A7 - -#define DIRECT_COL_NUM 0 - -pin_t row_pins[MATRIX_ROWS] = MATRIX_ROW_PINS; -pin_t col_pins[MATRIX_COLS] = MATRIX_COL_PINS; - -static inline uint8_t readMatrixPin(pin_t pin) { - if (pin != NO_PIN) { - return readPin(pin); - } else { - return 1; - } -} - -static inline void setPinOutput_writeLow(pin_t pin) { - setPinOutput(pin); - writePinLow(pin); -} - -static inline void setPinOutput_writeHigh(pin_t pin) { - setPinOutput(pin); - writePinHigh(pin); -} - -static inline void HC595_delay(uint16_t n) { - while (n-- > 0) { - asm volatile("nop" ::: "memory"); - } -} - -static void HC595_output(uint16_t data) { - uint8_t n = 1; - uint8_t i; - - for (i = 0; i < (MATRIX_COLS - DIRECT_COL_NUM); i++) { - writePinLow(HC595_SHCP); - if (data & 0x1) { - writePinHigh(HC595_DS); - } else { - writePinLow(HC595_DS); - } - HC595_delay(n); - writePinHigh(HC595_SHCP); - HC595_delay(n); - - data = data >> 1; - } - writePinLow(HC595_STCP); - HC595_delay(n); - writePinHigh(HC595_STCP); -} - -static void HC595_output_bit(uint16_t data) { - uint8_t n = 1; - - writePinLow(HC595_SHCP); - if (data & 0x1) { - writePinHigh(HC595_DS); - } else { - writePinLow(HC595_DS); - } - HC595_delay(n); - - writePinHigh(HC595_SHCP); - HC595_delay(n); - - writePinLow(HC595_STCP); - HC595_delay(n); - writePinHigh(HC595_STCP); -} - -static void select_col(uint8_t col) { - if (col < DIRECT_COL_NUM) { - setPinOutput_writeLow(col_pins[col]); - } else { - if (col == DIRECT_COL_NUM) { - HC595_output_bit(0x00); - } - } -} - -static void unselect_col(uint8_t col) { - if (col < DIRECT_COL_NUM) { -#ifdef MATRIX_UNSELECT_DRIVE_HIGH - setPinOutput_writeHigh(col_pins[col]); -#else - setPinInputHigh(col_pins[col]); -#endif - } else { - HC595_output_bit(0x01); - } -} - -static void unselect_cols(void) { - for (uint8_t x = 0; x < MATRIX_COLS; x++) { - if (x < DIRECT_COL_NUM) { -#ifdef MATRIX_UNSELECT_DRIVE_HIGH - setPinOutput_writeHigh(col_pins[x]); -#else - setPinInputHigh(col_pins[x]); -#endif - } else { - if (x == DIRECT_COL_NUM) HC595_output(0xFFFF); - break; - } - } -} - -void select_all_cols(void) { - for (uint8_t x = 0; x < MATRIX_COLS; x++) { - if (x < DIRECT_COL_NUM) { - setPinOutput_writeLow(col_pins[x]); - } else { - if (x == DIRECT_COL_NUM) HC595_output(0x0000); - break; - } - } -} - -static void matrix_read_rows_on_col(matrix_row_t current_matrix[], uint8_t current_col, matrix_row_t row_shifter) { - // Select col - select_col(current_col); - HC595_delay(200); - - // For each row... - for (uint8_t row_index = 0; row_index < MATRIX_ROWS; row_index++) { - // Check row pin state - if (readMatrixPin(row_pins[row_index]) == 0) { - // Pin LO, set col bit - current_matrix[row_index] |= row_shifter; - } else { - // Pin HI, clear col bit - current_matrix[row_index] &= ~row_shifter; - } - } - - // Unselect col - unselect_col(current_col); - HC595_delay(200); // wait for all Row signals to go HIGH -} - -void matrix_init_custom(void) { - setPinOutput(HC595_DS); - setPinOutput(HC595_STCP); - setPinOutput(HC595_SHCP); - - for (uint8_t x = 0; x < MATRIX_ROWS; x++) { - if (row_pins[x] != NO_PIN) { - setPinInputHigh(row_pins[x]); - } - } - - unselect_cols(); -} - -bool matrix_scan_custom(matrix_row_t current_matrix[]) { - matrix_row_t curr_matrix[MATRIX_ROWS] = {0}; - - // Set col, read rows - matrix_row_t row_shifter = MATRIX_ROW_SHIFTER; - for (uint8_t current_col = 0; current_col < MATRIX_COLS; current_col++, row_shifter <<= 1) { - matrix_read_rows_on_col(curr_matrix, current_col, row_shifter); - } - - bool changed = memcmp(current_matrix, curr_matrix, sizeof(curr_matrix)) != 0; - if (changed) memcpy(current_matrix, curr_matrix, sizeof(curr_matrix)); - - return changed; -} diff --git a/keyboards/keychron/k11_pro/mcuconf.h b/keyboards/keychron/k11_pro/mcuconf.h deleted file mode 100644 index 72d4f6795f..0000000000 --- a/keyboards/keychron/k11_pro/mcuconf.h +++ /dev/null @@ -1,37 +0,0 @@ -/* 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 - -/* Set HCLK to 48 MHz as tradeoff of USB lowest clockand and - * lower power comsumption for bluetooth. Will use dynamic - * clock when STM32L4 is supported in ChibiOS */ -#undef STM32_PLLM_VALUE -#define STM32_PLLM_VALUE 2 - -#undef STM32_PLLN_VALUE -#define STM32_PLLN_VALUE 12 - -#undef STM32_I2C_USE_I2C1 -#define STM32_I2C_USE_I2C1 TRUE - -#ifdef KC_BLUETOOTH_ENABLE -# undef STM32_SERIAL_USE_USART2 -# define STM32_SERIAL_USE_USART2 TRUE -#endif diff --git a/keyboards/keychron/k11_pro/readme.md b/keyboards/keychron/k11_pro/readme.md deleted file mode 100644 index 8c70432594..0000000000 --- a/keyboards/keychron/k11_pro/readme.md +++ /dev/null @@ -1,23 +0,0 @@ -# Keychron K11 Pro - -![Keychron K11 Pro](https://i.imgur.com/9U5ajXf.jpg) - -A customizable 65% and ergonomic keyboard. - -* Keyboard Maintainer: [Keychron](https://github.com/keychron) -* Hardware Supported: Keychron K11 Pro -* Hardware Availability:[Keychron K11 Pro (Alice Layout) QMK/VIA Wireless Custom Mechanical Keyboard](https://www.keychron.com/products/keychron-k11-pro-alice-layout-qmk-via-wireless-custom-mechanical-keyboard) - -Make example for this keyboard (after setting up your build environment): - - make keychron/k11_pro/ansi:default - make keychron/k11_pro/ansi_encoder:default - -Flashing example for this keyboard ([after setting up the bootloadHID flashing environment](https://docs.qmk.fm/#/flashing_bootloadhid)) - - make keychron/k11_pro/ansi:default:flash - make keychron/k11_pro/ansi_encoder:default:flash - -**Reset Key**: Hold down the key located at *K00*, commonly programmed as *Esc* while plugging in the keyboard. - -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). diff --git a/keyboards/keychron/k11_pro/rules.mk b/keyboards/keychron/k11_pro/rules.mk deleted file mode 100644 index 1f9fc1ab58..0000000000 --- a/keyboards/keychron/k11_pro/rules.mk +++ /dev/null @@ -1,7 +0,0 @@ -# Enter lower-power sleep mode when on the ChibiOS idle thread -OPT_DEFS += -DCORTEX_ENABLE_WFI_IDLE=TRUE -OPT_DEFS += -DNO_USB_STARTUP_CHECK -DENABLE_FACTORY_TEST - -SRC += matrix.c - -include keyboards/keychron/bluetooth/bluetooth.mk diff --git a/keyboards/keychron/k11_pro/via_json/k11_pro_ansi_encoder_rgb.json b/keyboards/keychron/k11_pro/via_json/k11_pro_ansi_encoder_rgb.json deleted file mode 100644 index e0e3a10a84..0000000000 --- a/keyboards/keychron/k11_pro/via_json/k11_pro_ansi_encoder_rgb.json +++ /dev/null @@ -1,356 +0,0 @@ -{ - "name": "Keychron K11 Pro ANSI RGB Knob", - "vendorId": "0x3434", - "productId": "0x02B6", - "keycodes": ["qmk_lighting"], - "menus": [ - { - "label": "Lighting", - "content": [ - { - "label": "Backlight", - "content": [ - { - "label": "Brightness", - "type": "range", - "options": [0, 255], - "content": ["id_qmk_rgb_matrix_brightness", 3, 1] - }, - { - "label": "Effect", - "type": "dropdown", - "content": ["id_qmk_rgb_matrix_effect", 3, 2], - "options": [ - ["None", 0], - ["Solid Color", 1], - ["Breathing", 2], - ["Band Spiral Val", 3], - ["Cycle All", 4], - ["Cycle Left Right", 5], - ["Cycle Up Down", 6], - ["Rainbow Moving Chevron", 7], - ["Cycle Out In", 8], - ["Cycle Out In Dual", 9], - ["Cycle Pinwheel", 10], - ["Cycle Spiral", 11], - ["Dual Beacon", 12], - ["Rainbow Beacon", 13], - ["Jellybean Raindrops", 14], - ["Pixel Rain", 15], - ["Typing Heatmap", 16], - ["Digital Rain", 17], - ["Reactive Simple", 18], - ["Reactive Multiwide", 19], - ["Reactive Multinexus", 20], - ["Splash", 21], - ["Solid Splash", 22] - ] - }, - { - "showIf": "{id_qmk_rgb_matrix_effect} > 1", - "label": "Effect Speed", - "type": "range", - "options": [0, 255], - "content": ["id_qmk_rgb_matrix_effect_speed", 3, 3] - }, - { - "showIf": "{id_qmk_rgb_matrix_effect} != 0 && ( {id_qmk_rgb_matrix_effect} < 4 || {id_qmk_rgb_matrix_effect} == 18 || ({id_qmk_rgb_matrix_effect} > 17 && {id_qmk_rgb_matrix_effect} != 21) ) ", - "label": "Color", - "type": "color", - "content": ["id_qmk_rgb_matrix_color", 3, 4] - } - ] - } - ] - } - ], - "customKeycodes": [ - {"name": "Left Option", "title": "Left Option", "shortName": "LOpt"}, - {"name": "Right Option", "title": "Right Option", "shortName": "ROpt"}, - {"name": "Left Cmd", "title": "Left Command", "shortName": "LCmd"}, - {"name": "Right Cmd", "title": "Right Command", "shortName": "RCmd"}, - {"name": "Task View", "title": "Task View in Windows", "shortName": "Task"}, - {"name": "File Explorer", "title": "File Explorer in Windows", "shortName": "File"}, - {"name": "Screen shot", "title": "Screenshot in macOS", "shortName": "SShot"}, - {"name": "Cortana", "title": "Cortana in Windows", "shortName": "Cortana"}, - {"name": "Siri", "title": "Siri in macOS", "shortName": "Siri"}, - {"name": "Bluetooth Host 1", "title": "Bluetooth Host 1", "shortName": "BTH1"}, - {"name": "Bluetooth Host 2", "title": "Bluetooth Host 2", "shortName": "BTH2"}, - {"name": "Bluetooth Host 3", "title": "Bluetooth Host 3", "shortName": "BTH3"}, - {"name": "Battery Level", "title": "Show battery level", "shortName": "Batt"} - ], - "matrix": {"rows": 5, "cols": 16}, - "layouts": { - "keymap": [ - [ - { - "x": 2.75 - }, - "0,2", - { - "x": 8.85 - }, - "0,11" - ], - [ - { - "y": -0.85, - "x": 0.75, - "c": "#777777" - }, - "0,0\nESC", - { - "c": "#cccccc" - }, - "0,1" - ], - [ - { - "y": -0.85, - "x": 14.6, - "c": "#aaaaaa", - "w": 2 - }, - "0,13", - { - "x": 0.5 - }, - "0,15\n\n\n\n\n\n\n\n\ne0" - ], - [ - { - "y": -1, - "x": 13.6, - "c": "#cccccc" - }, - "0,12" - ], - [ - { - "y": -0.15, - "x": 0.5, - "c": "#aaaaaa", - "w": 1.5 - }, - "1,0", - { - "c": "#cccccc" - }, - "1,1" - ], - [ - { - "y": -0.85, - "x": 13.3 - }, - "1,11", - "1,12", - { - "c": "#aaaaaa", - "w": 1.5 - }, - "1,13", - { - "x": 0.5 - }, - "1,15" - ], - [ - { - "y": -0.15, - "x": 0.25, - "w": 1.75 - }, - "2,0", - { - "c": "#cccccc" - }, - "2,1" - ], - [ - { - "y": -0.85, - "x": 12.75 - }, - "2,10", - "2,11", - { - "c": "#777777", - "w": 2.25 - }, - "2,13", - { - "x": 0.5, - "c": "#aaaaaa" - }, - "2,15" - ], - [ - { - "y": -0.15, - "w": 2.25 - }, - "3,0", - { - "c": "#cccccc" - }, - "3,2" - ], - [ - { - "y": -0.85, - "x": 13.4 - }, - "3,13", - { - "c": "#aaaaaa", - "w": 1.75 - }, - "3,14" - ], - [ - { - "y": -0.75, - "x": 16.4, - "c": "#777777" - }, - "3,15" - ], - [ - { - "y": -0.4, - "c": "#aaaaaa", - "w": 1.25 - }, - "4,0", - { - "w": 1.25 - }, - "4,1" - ], - [ - { - "y": -0.6, - "x": 15.4, - "c": "#777777" - }, - "4,13", - "4,14", - "4,15" - ], - [ - { - "r": 6, - "y": -5.7, - "x": 3.85, - "c": "#cccccc" - }, - "0,3", - "0,4", - "0,5", - "0,6" - ], - [ - { - "x": 3.35 - }, - "1,2", - "1,3", - "1,4", - "1,5" - ], - [ - { - "x": 3.55 - }, - "2,2", - "2,3", - "2,4", - "2,5" - ], - [ - { - "x": 3.9 - }, - "3,3", - "3,4", - "3,5", - "3,6" - ], - [ - { - "x": 3.9, - "c": "#aaaaaa", - "w": 1.25 - }, - "4,2", - { - "c": "#cccccc", - "w": 2.25 - }, - "4,3", - { - "c": "#aaaaaa" - }, - "4,6" - ], - [ - { - "r": -6, - "y": -3.2, - "x": 8.35, - "c": "#cccccc" - }, - "0,7", - "0,8", - "0,9", - "0,10" - ], - [ - { - "x": 7.9 - }, - "1,6", - "1,7", - "1,8", - "1,9", - "1,10" - ], - [ - { - "x": 8.25 - }, - "2,6", - "2,7", - "2,8", - "2,9" - ], - [ - { - "x": 7.8 - }, - "3,7", - "3,8", - "3,9", - "3,10", - "3,11" - ], - [ - { - "x": 7.8, - "c": "#aaaaaa" - }, - "4,10", - { - "c": "#cccccc", - "w": 2.75 - }, - "4,11", - { - "c": "#aaaaaa" - }, - "4,12" - ] - ] - } -} diff --git a/keyboards/keychron/k11_pro/via_json/k11_pro_ansi_encoder_white.json b/keyboards/keychron/k11_pro/via_json/k11_pro_ansi_encoder_white.json deleted file mode 100644 index 49279b4765..0000000000 --- a/keyboards/keychron/k11_pro/via_json/k11_pro_ansi_encoder_white.json +++ /dev/null @@ -1,295 +0,0 @@ -{ - "name": "Keychron K11 Pro ANSI White Knob", - "vendorId": "0x3434", - "productId": "0x02B9", - "keycodes": ["qmk_lighting"], - "customKeycodes": [ - {"name": "Left Option", "title": "Left Option", "shortName": "LOpt"}, - {"name": "Right Option", "title": "Right Option", "shortName": "ROpt"}, - {"name": "Left Cmd", "title": "Left Command", "shortName": "LCmd"}, - {"name": "Right Cmd", "title": "Right Command", "shortName": "RCmd"}, - {"name": "Task View", "title": "Task View in Windows", "shortName": "Task"}, - {"name": "File Explorer", "title": "File Explorer in Windows", "shortName": "File"}, - {"name": "Screen shot", "title": "Screenshot in macOS", "shortName": "SShot"}, - {"name": "Cortana", "title": "Cortana in Windows", "shortName": "Cortana"}, - {"name": "Siri", "title": "Siri in macOS", "shortName": "Siri"}, - {"name": "Bluetooth Host 1", "title": "Bluetooth Host 1", "shortName": "BTH1"}, - {"name": "Bluetooth Host 2", "title": "Bluetooth Host 2", "shortName": "BTH2"}, - {"name": "Bluetooth Host 3", "title": "Bluetooth Host 3", "shortName": "BTH3"}, - {"name": "Battery Level", "title": "Show battery level", "shortName": "Batt"} - ], - "matrix": {"rows": 5, "cols": 16}, - "layouts": { - "keymap": [ - [ - { - "x": 2.75 - }, - "0,2", - { - "x": 8.85 - }, - "0,11" - ], - [ - { - "y": -0.85, - "x": 0.75, - "c": "#777777" - }, - "0,0\nESC", - { - "c": "#cccccc" - }, - "0,1" - ], - [ - { - "y": -0.85, - "x": 14.6, - "c": "#aaaaaa", - "w": 2 - }, - "0,13", - { - "x": 0.5 - }, - "0,15\n\n\n\n\n\n\n\n\ne0" - ], - [ - { - "y": -1, - "x": 13.6, - "c": "#cccccc" - }, - "0,12" - ], - [ - { - "y": -0.15, - "x": 0.5, - "c": "#aaaaaa", - "w": 1.5 - }, - "1,0", - { - "c": "#cccccc" - }, - "1,1" - ], - [ - { - "y": -0.85, - "x": 13.3 - }, - "1,11", - "1,12", - { - "c": "#aaaaaa", - "w": 1.5 - }, - "1,13", - { - "x": 0.5 - }, - "1,15" - ], - [ - { - "y": -0.15, - "x": 0.25, - "w": 1.75 - }, - "2,0", - { - "c": "#cccccc" - }, - "2,1" - ], - [ - { - "y": -0.85, - "x": 12.75 - }, - "2,10", - "2,11", - { - "c": "#777777", - "w": 2.25 - }, - "2,13", - { - "x": 0.5, - "c": "#aaaaaa" - }, - "2,15" - ], - [ - { - "y": -0.15, - "w": 2.25 - }, - "3,0", - { - "c": "#cccccc" - }, - "3,2" - ], - [ - { - "y": -0.85, - "x": 13.4 - }, - "3,13", - { - "c": "#aaaaaa", - "w": 1.75 - }, - "3,14" - ], - [ - { - "y": -0.75, - "x": 16.4, - "c": "#777777" - }, - "3,15" - ], - [ - { - "y": -0.4, - "c": "#aaaaaa", - "w": 1.25 - }, - "4,0", - { - "w": 1.25 - }, - "4,1" - ], - [ - { - "y": -0.6, - "x": 15.4, - "c": "#777777" - }, - "4,13", - "4,14", - "4,15" - ], - [ - { - "r": 6, - "y": -5.7, - "x": 3.85, - "c": "#cccccc" - }, - "0,3", - "0,4", - "0,5", - "0,6" - ], - [ - { - "x": 3.35 - }, - "1,2", - "1,3", - "1,4", - "1,5" - ], - [ - { - "x": 3.55 - }, - "2,2", - "2,3", - "2,4", - "2,5" - ], - [ - { - "x": 3.9 - }, - "3,3", - "3,4", - "3,5", - "3,6" - ], - [ - { - "x": 3.9, - "c": "#aaaaaa", - "w": 1.25 - }, - "4,2", - { - "c": "#cccccc", - "w": 2.25 - }, - "4,3", - { - "c": "#aaaaaa" - }, - "4,6" - ], - [ - { - "r": -6, - "y": -3.2, - "x": 8.35, - "c": "#cccccc" - }, - "0,7", - "0,8", - "0,9", - "0,10" - ], - [ - { - "x": 7.9 - }, - "1,6", - "1,7", - "1,8", - "1,9", - "1,10" - ], - [ - { - "x": 8.25 - }, - "2,6", - "2,7", - "2,8", - "2,9" - ], - [ - { - "x": 7.8 - }, - "3,7", - "3,8", - "3,9", - "3,10", - "3,11" - ], - [ - { - "x": 7.8, - "c": "#aaaaaa" - }, - "4,10", - { - "c": "#cccccc", - "w": 2.75 - }, - "4,11", - { - "c": "#aaaaaa" - }, - "4,12" - ] - ] - } -} diff --git a/keyboards/keychron/k11_pro/via_json/k11_pro_ansi_rgb.json b/keyboards/keychron/k11_pro/via_json/k11_pro_ansi_rgb.json deleted file mode 100644 index 55a3d2153c..0000000000 --- a/keyboards/keychron/k11_pro/via_json/k11_pro_ansi_rgb.json +++ /dev/null @@ -1,356 +0,0 @@ -{ - "name": "Keychron K11 Pro ANSI RGB", - "vendorId": "0x3434", - "productId": "0x02B0", - "keycodes": ["qmk_lighting"], - "menus": [ - { - "label": "Lighting", - "content": [ - { - "label": "Backlight", - "content": [ - { - "label": "Brightness", - "type": "range", - "options": [0, 255], - "content": ["id_qmk_rgb_matrix_brightness", 3, 1] - }, - { - "label": "Effect", - "type": "dropdown", - "content": ["id_qmk_rgb_matrix_effect", 3, 2], - "options": [ - ["None", 0], - ["Solid Color", 1], - ["Breathing", 2], - ["Band Spiral Val", 3], - ["Cycle All", 4], - ["Cycle Left Right", 5], - ["Cycle Up Down", 6], - ["Rainbow Moving Chevron", 7], - ["Cycle Out In", 8], - ["Cycle Out In Dual", 9], - ["Cycle Pinwheel", 10], - ["Cycle Spiral", 11], - ["Dual Beacon", 12], - ["Rainbow Beacon", 13], - ["Jellybean Raindrops", 14], - ["Pixel Rain", 15], - ["Typing Heatmap", 16], - ["Digital Rain", 17], - ["Reactive Simple", 18], - ["Reactive Multiwide", 19], - ["Reactive Multinexus", 20], - ["Splash", 21], - ["Solid Splash", 22] - ] - }, - { - "showIf": "{id_qmk_rgb_matrix_effect} > 1", - "label": "Effect Speed", - "type": "range", - "options": [0, 255], - "content": ["id_qmk_rgb_matrix_effect_speed", 3, 3] - }, - { - "showIf": "{id_qmk_rgb_matrix_effect} != 0 && ( {id_qmk_rgb_matrix_effect} < 4 || {id_qmk_rgb_matrix_effect} == 18 || ({id_qmk_rgb_matrix_effect} > 17 && {id_qmk_rgb_matrix_effect} != 21) ) ", - "label": "Color", - "type": "color", - "content": ["id_qmk_rgb_matrix_color", 3, 4] - } - ] - } - ] - } - ], - "customKeycodes": [ - {"name": "Left Option", "title": "Left Option", "shortName": "LOpt"}, - {"name": "Right Option", "title": "Right Option", "shortName": "ROpt"}, - {"name": "Left Cmd", "title": "Left Command", "shortName": "LCmd"}, - {"name": "Right Cmd", "title": "Right Command", "shortName": "RCmd"}, - {"name": "Task View", "title": "Task View in Windows", "shortName": "Task"}, - {"name": "File Explorer", "title": "File Explorer in Windows", "shortName": "File"}, - {"name": "Screen shot", "title": "Screenshot in macOS", "shortName": "SShot"}, - {"name": "Cortana", "title": "Cortana in Windows", "shortName": "Cortana"}, - {"name": "Siri", "title": "Siri in macOS", "shortName": "Siri"}, - {"name": "Bluetooth Host 1", "title": "Bluetooth Host 1", "shortName": "BTH1"}, - {"name": "Bluetooth Host 2", "title": "Bluetooth Host 2", "shortName": "BTH2"}, - {"name": "Bluetooth Host 3", "title": "Bluetooth Host 3", "shortName": "BTH3"}, - {"name": "Battery Level", "title": "Show battery level", "shortName": "Batt"} - ], - "matrix": {"rows": 5, "cols": 16}, - "layouts": { - "keymap": [ - [ - { - "x": 2.75 - }, - "0,2", - { - "x": 8.85 - }, - "0,11" - ], - [ - { - "y": -0.85, - "x": 0.75, - "c": "#777777" - }, - "0,0\nESC", - { - "c": "#cccccc" - }, - "0,1" - ], - [ - { - "y": -0.85, - "x": 14.6, - "c": "#aaaaaa", - "w": 2 - }, - "0,13", - { - "x": 0.5 - }, - "0,15" - ], - [ - { - "y": -1, - "x": 13.6, - "c": "#cccccc" - }, - "0,12" - ], - [ - { - "y": -0.15, - "x": 0.5, - "c": "#aaaaaa", - "w": 1.5 - }, - "1,0", - { - "c": "#cccccc" - }, - "1,1" - ], - [ - { - "y": -0.85, - "x": 13.3 - }, - "1,11", - "1,12", - { - "c": "#aaaaaa", - "w": 1.5 - }, - "1,13", - { - "x": 0.5 - }, - "1,15" - ], - [ - { - "y": -0.15, - "x": 0.25, - "w": 1.75 - }, - "2,0", - { - "c": "#cccccc" - }, - "2,1" - ], - [ - { - "y": -0.85, - "x": 12.75 - }, - "2,10", - "2,11", - { - "c": "#777777", - "w": 2.25 - }, - "2,13", - { - "x": 0.5, - "c": "#aaaaaa" - }, - "2,15" - ], - [ - { - "y": -0.15, - "w": 2.25 - }, - "3,0", - { - "c": "#cccccc" - }, - "3,2" - ], - [ - { - "y": -0.85, - "x": 13.4 - }, - "3,13", - { - "c": "#aaaaaa", - "w": 1.75 - }, - "3,14" - ], - [ - { - "y": -0.75, - "x": 16.4, - "c": "#777777" - }, - "3,15" - ], - [ - { - "y": -0.4, - "c": "#aaaaaa", - "w": 1.25 - }, - "4,0", - { - "w": 1.25 - }, - "4,1" - ], - [ - { - "y": -0.6, - "x": 15.4, - "c": "#777777" - }, - "4,13", - "4,14", - "4,15" - ], - [ - { - "r": 6, - "y": -5.7, - "x": 3.85, - "c": "#cccccc" - }, - "0,3", - "0,4", - "0,5", - "0,6" - ], - [ - { - "x": 3.35 - }, - "1,2", - "1,3", - "1,4", - "1,5" - ], - [ - { - "x": 3.55 - }, - "2,2", - "2,3", - "2,4", - "2,5" - ], - [ - { - "x": 3.9 - }, - "3,3", - "3,4", - "3,5", - "3,6" - ], - [ - { - "x": 3.9, - "c": "#aaaaaa", - "w": 1.25 - }, - "4,2", - { - "c": "#cccccc", - "w": 2.25 - }, - "4,3", - { - "c": "#aaaaaa" - }, - "4,6" - ], - [ - { - "r": -6, - "y": -3.2, - "x": 8.35, - "c": "#cccccc" - }, - "0,7", - "0,8", - "0,9", - "0,10" - ], - [ - { - "x": 7.9 - }, - "1,6", - "1,7", - "1,8", - "1,9", - "1,10" - ], - [ - { - "x": 8.25 - }, - "2,6", - "2,7", - "2,8", - "2,9" - ], - [ - { - "x": 7.8 - }, - "3,7", - "3,8", - "3,9", - "3,10", - "3,11" - ], - [ - { - "x": 7.8, - "c": "#aaaaaa" - }, - "4,10", - { - "c": "#cccccc", - "w": 2.75 - }, - "4,11", - { - "c": "#aaaaaa" - }, - "4,12" - ] - ] - } -} diff --git a/keyboards/keychron/k11_pro/via_json/k11_pro_ansi_white.json b/keyboards/keychron/k11_pro/via_json/k11_pro_ansi_white.json deleted file mode 100644 index c1ad185bee..0000000000 --- a/keyboards/keychron/k11_pro/via_json/k11_pro_ansi_white.json +++ /dev/null @@ -1,295 +0,0 @@ -{ - "name": "Keychron K11 Pro ANSI White", - "vendorId": "0x3434", - "productId": "0x02B3", - "keycodes": ["qmk_lighting"], - "customKeycodes": [ - {"name": "Left Option", "title": "Left Option", "shortName": "LOpt"}, - {"name": "Right Option", "title": "Right Option", "shortName": "ROpt"}, - {"name": "Left Cmd", "title": "Left Command", "shortName": "LCmd"}, - {"name": "Right Cmd", "title": "Right Command", "shortName": "RCmd"}, - {"name": "Task View", "title": "Task View in Windows", "shortName": "Task"}, - {"name": "File Explorer", "title": "File Explorer in Windows", "shortName": "File"}, - {"name": "Screen shot", "title": "Screenshot in macOS", "shortName": "SShot"}, - {"name": "Cortana", "title": "Cortana in Windows", "shortName": "Cortana"}, - {"name": "Siri", "title": "Siri in macOS", "shortName": "Siri"}, - {"name": "Bluetooth Host 1", "title": "Bluetooth Host 1", "shortName": "BTH1"}, - {"name": "Bluetooth Host 2", "title": "Bluetooth Host 2", "shortName": "BTH2"}, - {"name": "Bluetooth Host 3", "title": "Bluetooth Host 3", "shortName": "BTH3"}, - {"name": "Battery Level", "title": "Show battery level", "shortName": "Batt"} - ], - "matrix": {"rows": 5, "cols": 16}, - "layouts": { - "keymap": [ - [ - { - "x": 2.75 - }, - "0,2", - { - "x": 8.85 - }, - "0,11" - ], - [ - { - "y": -0.85, - "x": 0.75, - "c": "#777777" - }, - "0,0\nESC", - { - "c": "#cccccc" - }, - "0,1" - ], - [ - { - "y": -0.85, - "x": 14.6, - "c": "#aaaaaa", - "w": 2 - }, - "0,13", - { - "x": 0.5 - }, - "0,15" - ], - [ - { - "y": -1, - "x": 13.6, - "c": "#cccccc" - }, - "0,12" - ], - [ - { - "y": -0.15, - "x": 0.5, - "c": "#aaaaaa", - "w": 1.5 - }, - "1,0", - { - "c": "#cccccc" - }, - "1,1" - ], - [ - { - "y": -0.85, - "x": 13.3 - }, - "1,11", - "1,12", - { - "c": "#aaaaaa", - "w": 1.5 - }, - "1,13", - { - "x": 0.5 - }, - "1,15" - ], - [ - { - "y": -0.15, - "x": 0.25, - "w": 1.75 - }, - "2,0", - { - "c": "#cccccc" - }, - "2,1" - ], - [ - { - "y": -0.85, - "x": 12.75 - }, - "2,10", - "2,11", - { - "c": "#777777", - "w": 2.25 - }, - "2,13", - { - "x": 0.5, - "c": "#aaaaaa" - }, - "2,15" - ], - [ - { - "y": -0.15, - "w": 2.25 - }, - "3,0", - { - "c": "#cccccc" - }, - "3,2" - ], - [ - { - "y": -0.85, - "x": 13.4 - }, - "3,13", - { - "c": "#aaaaaa", - "w": 1.75 - }, - "3,14" - ], - [ - { - "y": -0.75, - "x": 16.4, - "c": "#777777" - }, - "3,15" - ], - [ - { - "y": -0.4, - "c": "#aaaaaa", - "w": 1.25 - }, - "4,0", - { - "w": 1.25 - }, - "4,1" - ], - [ - { - "y": -0.6, - "x": 15.4, - "c": "#777777" - }, - "4,13", - "4,14", - "4,15" - ], - [ - { - "r": 6, - "y": -5.7, - "x": 3.85, - "c": "#cccccc" - }, - "0,3", - "0,4", - "0,5", - "0,6" - ], - [ - { - "x": 3.35 - }, - "1,2", - "1,3", - "1,4", - "1,5" - ], - [ - { - "x": 3.55 - }, - "2,2", - "2,3", - "2,4", - "2,5" - ], - [ - { - "x": 3.9 - }, - "3,3", - "3,4", - "3,5", - "3,6" - ], - [ - { - "x": 3.9, - "c": "#aaaaaa", - "w": 1.25 - }, - "4,2", - { - "c": "#cccccc", - "w": 2.25 - }, - "4,3", - { - "c": "#aaaaaa" - }, - "4,6" - ], - [ - { - "r": -6, - "y": -3.2, - "x": 8.35, - "c": "#cccccc" - }, - "0,7", - "0,8", - "0,9", - "0,10" - ], - [ - { - "x": 7.9 - }, - "1,6", - "1,7", - "1,8", - "1,9", - "1,10" - ], - [ - { - "x": 8.25 - }, - "2,6", - "2,7", - "2,8", - "2,9" - ], - [ - { - "x": 7.8 - }, - "3,7", - "3,8", - "3,9", - "3,10", - "3,11" - ], - [ - { - "x": 7.8, - "c": "#aaaaaa" - }, - "4,10", - { - "c": "#cccccc", - "w": 2.75 - }, - "4,11", - { - "c": "#aaaaaa" - }, - "4,12" - ] - ] - } -} diff --git a/keyboards/keychron/k12_pro/ansi/rgb/config.h b/keyboards/keychron/k12_pro/ansi/rgb/config.h deleted file mode 100644 index 5be4b9351a..0000000000 --- a/keyboards/keychron/k12_pro/ansi/rgb/config.h +++ /dev/null @@ -1,48 +0,0 @@ -/* 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 . - */ - -#pragma once - -#ifdef RGB_MATRIX_ENABLE -/* RGB Matrix driver configuration */ -# define DRIVER_COUNT 1 -# define DRIVER_ADDR_1 0b1110100 -# define RGB_MATRIX_LED_COUNT 61 - -/* Set to infinit, which is use in USB mode by default */ -# define RGB_MATRIX_TIMEOUT RGB_MATRIX_TIMEOUT_INFINITE - -/* Allow shutdown of led driver to save power */ -# define RGB_MATRIX_DRIVER_SHUTDOWN_ENABLE - -/* Turn off backlight on low brightness to save power */ -# define RGB_MATRIX_BRIGHTNESS_TURN_OFF_VAL 48 - -/* Indication led */ -# define DIM_CAPS_LOCK -# define CAPS_LOCK_INDEX 28 -# define LOW_BAT_IND_INDEX 56 - -// RGB Matrix Animation modes. Explicitly enabled -// For full list of effects, see: -// https://docs.qmk.fm/#/feature_rgb_matrix?id=rgb-matrix-effects -# define RGB_MATRIX_KEYPRESSES -# define RGB_MATRIX_FRAMEBUFFER_EFFECTS - -/* Set LED driver current */ -# define SNLED27351_CURRENT_TUNE \ - { 0x50, 0x50, 0x50, 0x50, 0x50, 0x50, 0x50, 0x50, 0x50, 0x50, 0x50, 0x50 } -#endif diff --git a/keyboards/keychron/k12_pro/ansi/rgb/info.json b/keyboards/keychron/k12_pro/ansi/rgb/info.json deleted file mode 100644 index f8ea111816..0000000000 --- a/keyboards/keychron/k12_pro/ansi/rgb/info.json +++ /dev/null @@ -1,102 +0,0 @@ -{ - "usb": { - "pid": "0x02C0", - "device_version": "1.0.1" - }, - "features": { - "rgb_matrix": true - }, - "rgb_matrix": { - "driver": "snled27351", - "animations": { - "breathing": true, - "band_spiral_val": true, - "cycle_all": true, - "cycle_left_right": true, - "cycle_up_down": true, - "rainbow_moving_chevron": true, - "cycle_out_in": true, - "cycle_out_in_dual": true, - "cycle_pinwheel": true, - "cycle_spiral": true, - "dual_beacon": true, - "rainbow_beacon": true, - "jellybean_raindrops": true, - "pixel_rain": true, - "typing_heatmap": true, - "digital_rain": true, - "solid_reactive_simple": true, - "solid_reactive_multiwide": true, - "solid_reactive_multinexus": true, - "splash": true, - "solid_splash": true - }, - "layout": [ - {"matrix":[0, 0], "flags":1, "x":0, "y":0}, - {"matrix":[0, 1], "flags":4, "x":16, "y":0}, - {"matrix":[0, 2], "flags":4, "x":32, "y":0}, - {"matrix":[0, 3], "flags":4, "x":48, "y":0}, - {"matrix":[0, 4], "flags":4, "x":65, "y":0}, - {"matrix":[0, 5], "flags":4, "x":81, "y":0}, - {"matrix":[0, 6], "flags":4, "x":97, "y":0}, - {"matrix":[0, 7], "flags":4, "x":113, "y":0}, - {"matrix":[0, 8], "flags":4, "x":129, "y":0}, - {"matrix":[0, 9], "flags":4, "x":145, "y":0}, - {"matrix":[0, 10], "flags":4, "x":161, "y":0}, - {"matrix":[0, 11], "flags":4, "x":178, "y":0}, - {"matrix":[0, 12], "flags":4, "x":194, "y":0}, - {"matrix":[0, 13], "flags":1, "x":218, "y":0}, - - {"matrix":[1, 0], "flags":1, "x":4, "y":16}, - {"matrix":[1, 1], "flags":8, "x":24, "y":16}, - {"matrix":[1, 2], "flags":8, "x":40, "y":16}, - {"matrix":[1, 3], "flags":8, "x":57, "y":16}, - {"matrix":[1, 4], "flags":4, "x":73, "y":16}, - {"matrix":[1, 5], "flags":4, "x":89, "y":16}, - {"matrix":[1, 6], "flags":4, "x":105, "y":16}, - {"matrix":[1, 7], "flags":4, "x":121, "y":16}, - {"matrix":[1, 8], "flags":4, "x":137, "y":16}, - {"matrix":[1, 9], "flags":4, "x":153, "y":16}, - {"matrix":[1, 10], "flags":4, "x":170, "y":16}, - {"matrix":[1, 11], "flags":4, "x":186, "y":16}, - {"matrix":[1, 12], "flags":4, "x":202, "y":16}, - {"matrix":[1, 13], "flags":1, "x":222, "y":16}, - - {"matrix":[2, 0], "flags":8, "x":6, "y":32}, - {"matrix":[2, 1], "flags":4, "x":28, "y":32}, - {"matrix":[2, 2], "flags":4, "x":44, "y":32}, - {"matrix":[2, 3], "flags":4, "x":61, "y":32}, - {"matrix":[2, 4], "flags":4, "x":77, "y":32}, - {"matrix":[2, 5], "flags":4, "x":93, "y":32}, - {"matrix":[2, 6], "flags":4, "x":109, "y":32}, - {"matrix":[2, 7], "flags":4, "x":125, "y":32}, - {"matrix":[2, 8], "flags":4, "x":141, "y":32}, - {"matrix":[2, 9], "flags":4, "x":157, "y":32}, - {"matrix":[2, 10], "flags":4, "x":174, "y":32}, - {"matrix":[2, 11], "flags":4, "x":190, "y":32}, - {"matrix":[2, 13], "flags":1, "x":216, "y":32}, - - {"matrix":[3, 0], "flags":1, "x":10, "y":48}, - {"matrix":[3, 2], "flags":4, "x":36, "y":48}, - {"matrix":[3, 3], "flags":4, "x":52, "y":48}, - {"matrix":[3, 4], "flags":4, "x":69, "y":48}, - {"matrix":[3, 5], "flags":4, "x":85, "y":48}, - {"matrix":[3, 6], "flags":4, "x":101, "y":48}, - {"matrix":[3, 7], "flags":4, "x":117, "y":48}, - {"matrix":[3, 8], "flags":4, "x":133, "y":48}, - {"matrix":[3, 9], "flags":4, "x":149, "y":48}, - {"matrix":[3, 10], "flags":4, "x":165, "y":48}, - {"matrix":[3, 11], "flags":4, "x":182, "y":48}, - {"matrix":[3, 13], "flags":1, "x":212, "y":48}, - - {"matrix":[4, 0], "flags":1, "x":2, "y":64}, - {"matrix":[4, 1], "flags":1, "x":22, "y":64}, - {"matrix":[4, 2], "flags":1, "x":42, "y":64}, - {"matrix":[4, 6], "flags":4, "x":103, "y":64}, - {"matrix":[4, 10], "flags":1, "x":163, "y":64}, - {"matrix":[4, 11], "flags":1, "x":184, "y":64}, - {"matrix":[4, 12], "flags":1, "x":204, "y":64}, - {"matrix":[4, 13], "flags":1, "x":224, "y":64} - ] - } -} diff --git a/keyboards/keychron/k12_pro/ansi/rgb/keymaps/default/keymap.c b/keyboards/keychron/k12_pro/ansi/rgb/keymaps/default/keymap.c deleted file mode 100644 index fe95a35ea7..0000000000 --- a/keyboards/keychron/k12_pro/ansi/rgb/keymaps/default/keymap.c +++ /dev/null @@ -1,63 +0,0 @@ -/* 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 . - */ - -#include QMK_KEYBOARD_H - -// clang-format off -enum layers{ - MAC_BASE, - WIN_BASE, - MAC_FN1, - WIN_FN1, - FN2, -}; - -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_61_ansi( - 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_LCTL, KC_LOPTN, KC_LCMMD, KC_SPC, KC_RCMMD,MO(MAC_FN1),MO(FN2), KC_RCTL), - - [WIN_BASE] = LAYOUT_61_ansi( - 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_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(WIN_FN1),MO(FN2), KC_RCTL), - - [MAC_FN1] = LAYOUT_61_ansi( - KC_GRV, KC_BRID, KC_BRIU, KC_MCTL, KC_LPAD, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, RGB_MOD, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, KC_INS, KC_PGUP, KC_HOME, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, KC_UP, KC_SNAP, KC_PGDN, KC_END, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, NK_TOGG, KC_LEFT, KC_DOWN, KC_RIGHT, KC_DEL, _______, - _______, _______, _______, _______, _______, _______, _______, _______), - - [WIN_FN1] = LAYOUT_61_ansi( - KC_GRV, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, RGB_MOD, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, KC_APP, KC_SCRL, KC_INS, KC_PGUP, KC_HOME, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, KC_UP, KC_PSCR, KC_PGDN, KC_END, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, NK_TOGG, KC_LEFT, KC_DOWN, KC_RIGHT, KC_DEL, _______, - _______, _______, _______, _______, _______, _______, _______, _______), - - [FN2] = LAYOUT_61_ansi( - KC_TILD, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______), -}; diff --git a/keyboards/keychron/k12_pro/ansi/rgb/keymaps/via/keymap.c b/keyboards/keychron/k12_pro/ansi/rgb/keymaps/via/keymap.c deleted file mode 100644 index fe95a35ea7..0000000000 --- a/keyboards/keychron/k12_pro/ansi/rgb/keymaps/via/keymap.c +++ /dev/null @@ -1,63 +0,0 @@ -/* 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 . - */ - -#include QMK_KEYBOARD_H - -// clang-format off -enum layers{ - MAC_BASE, - WIN_BASE, - MAC_FN1, - WIN_FN1, - FN2, -}; - -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_61_ansi( - 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_LCTL, KC_LOPTN, KC_LCMMD, KC_SPC, KC_RCMMD,MO(MAC_FN1),MO(FN2), KC_RCTL), - - [WIN_BASE] = LAYOUT_61_ansi( - 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_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(WIN_FN1),MO(FN2), KC_RCTL), - - [MAC_FN1] = LAYOUT_61_ansi( - KC_GRV, KC_BRID, KC_BRIU, KC_MCTL, KC_LPAD, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, RGB_MOD, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, KC_INS, KC_PGUP, KC_HOME, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, KC_UP, KC_SNAP, KC_PGDN, KC_END, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, NK_TOGG, KC_LEFT, KC_DOWN, KC_RIGHT, KC_DEL, _______, - _______, _______, _______, _______, _______, _______, _______, _______), - - [WIN_FN1] = LAYOUT_61_ansi( - KC_GRV, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, RGB_MOD, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, KC_APP, KC_SCRL, KC_INS, KC_PGUP, KC_HOME, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, KC_UP, KC_PSCR, KC_PGDN, KC_END, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, NK_TOGG, KC_LEFT, KC_DOWN, KC_RIGHT, KC_DEL, _______, - _______, _______, _______, _______, _______, _______, _______, _______), - - [FN2] = LAYOUT_61_ansi( - KC_TILD, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______), -}; diff --git a/keyboards/keychron/k12_pro/ansi/rgb/keymaps/via/rules.mk b/keyboards/keychron/k12_pro/ansi/rgb/keymaps/via/rules.mk deleted file mode 100644 index 4eae6e776c..0000000000 --- a/keyboards/keychron/k12_pro/ansi/rgb/keymaps/via/rules.mk +++ /dev/null @@ -1,2 +0,0 @@ -VIA_ENABLE = yes -OPT_DEFS += -DDYNAMIC_KEYMAP_LAYER_COUNT=5 diff --git a/keyboards/keychron/k12_pro/ansi/rgb/rgb.c b/keyboards/keychron/k12_pro/ansi/rgb/rgb.c deleted file mode 100644 index 6979b2e3d5..0000000000 --- a/keyboards/keychron/k12_pro/ansi/rgb/rgb.c +++ /dev/null @@ -1,94 +0,0 @@ -/* 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 . - */ - -#include "quantum.h" - -// clang-format off -#ifdef RGB_MATRIX_ENABLE -const snled27351_led_t g_snled27351_leds[RGB_MATRIX_LED_COUNT] = { -/* Refer to snled27351manual for these locations - * driver - * | R location - * | | G location - * | | | B location - * | | | | */ - {0, I_16, G_16, H_16}, - {0, I_15, G_15, H_15}, - {0, I_14, G_14, H_14}, - {0, I_13, G_13, H_13}, - {0, I_12, G_12, H_12}, - {0, I_11, G_11, H_11}, - {0, I_10, G_10, H_10}, - {0, I_9, G_9, H_9}, - {0, I_8, G_8, H_8}, - {0, I_7, G_7, H_7}, - {0, I_6, G_6, H_6}, - {0, I_5, G_5, H_5}, - {0, I_4, G_4, H_4}, - {0, I_3, G_3, H_3}, - - {0, F_16, D_16, E_16}, - {0, F_15, D_15, E_15}, - {0, F_14, D_14, E_14}, - {0, F_13, D_13, E_13}, - {0, F_12, D_12, E_12}, - {0, F_11, D_11, E_11}, - {0, F_10, D_10, E_10}, - {0, F_9, D_9, E_9}, - {0, F_8, D_8, E_8}, - {0, F_7, D_7, E_7}, - {0, F_6, D_6, E_6}, - {0, F_5, D_5, E_5}, - {0, F_4, D_4, E_4}, - {0, F_3, D_3, E_3}, - - {0, C_16, A_16, B_16}, - {0, C_15, A_15, B_15}, - {0, C_14, A_14, B_14}, - {0, C_13, A_13, B_13}, - {0, C_12, A_12, B_12}, - {0, C_11, A_11, B_11}, - {0, C_10, A_10, B_10}, - {0, C_9, A_9, B_9}, - {0, C_8, A_8, B_8}, - {0, C_7, A_7, B_7}, - {0, C_6, A_6, B_6}, - {0, C_5, A_5, B_5}, - {0, C_3, A_3, B_3}, - - {0, L_16, J_16, K_16}, - {0, L_14, J_14, K_14}, - {0, L_13, J_13, K_13}, - {0, L_12, J_12, K_12}, - {0, L_11, J_11, K_11}, - {0, L_10, J_10, K_10}, - {0, L_9, J_9, K_9}, - {0, L_8, J_8, K_8}, - {0, L_7, J_7, K_7}, - {0, L_6, J_6, K_6}, - {0, L_5, J_5, K_5}, - {0, L_3, J_3, K_3}, - - {0, C_1, A_1, B_1}, - {0, C_2, A_2, B_2}, - {0, L_1, J_1, K_1}, - {0, L_2, J_2, K_2}, - {0, F_1, D_1, E_1}, - {0, F_2, D_2, E_2}, - {0, I_1, G_1, H_1}, - {0, I_2, G_2, H_2} -}; -#endif diff --git a/keyboards/keychron/k12_pro/ansi/rgb/rules.mk b/keyboards/keychron/k12_pro/ansi/rgb/rules.mk deleted file mode 100644 index 6e7633bfe0..0000000000 --- a/keyboards/keychron/k12_pro/ansi/rgb/rules.mk +++ /dev/null @@ -1 +0,0 @@ -# This file intentionally left blank diff --git a/keyboards/keychron/k12_pro/ansi/white/config.h b/keyboards/keychron/k12_pro/ansi/white/config.h deleted file mode 100644 index 46b219a133..0000000000 --- a/keyboards/keychron/k12_pro/ansi/white/config.h +++ /dev/null @@ -1,49 +0,0 @@ -/* 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 . - */ - -#pragma once - -#ifdef LED_MATRIX_ENABLE -/* LED matrix driver configuration */ -# define DRIVER_COUNT 1 -# define SNLED27351_I2C_ADDRESS_1 SNLED27351_I2C_ADDRESS_GND -# define LED_MATRIX_LED_COUNT 61 - -/* Set to infinit, which is use in USB mode by default */ -# define LED_MATRIX_TIMEOUT LED_MATRIX_TIMEOUT_INFINITE - -/* Allow shutdown of led driver to save power */ -# define LED_MATRIX_DRIVER_SHUTDOWN_ENABLE - -/* Turn off backlight on low brightness to save power */ -# define LED_MATRIX_BRIGHTNESS_TURN_OFF_VAL 48 - -/* Indication led */ -# define DIM_CAPS_LOCK -# define CAPS_LOCK_INDEX 28 -# define LOW_BAT_IND_INDEX 56 - -/* Enable Reactive Animation */ -# define LED_MATRIX_KEYPRESSES -# define LED_MATRIX_KEYRELEASES - -/* Use first 6 channels of LED driver */ -# define PHASE_CHANNEL MSKPHASE_6CHANNEL - -/* Set LED driver current */ -# define SNLED27351_CURRENT_TUNE \ - { 0x70, 0x70, 0x70, 0x70, 0x70, 0x70, 0x70, 0x70, 0x70, 0x70, 0x70, 0x70 } -#endif diff --git a/keyboards/keychron/k12_pro/ansi/white/info.json b/keyboards/keychron/k12_pro/ansi/white/info.json deleted file mode 100644 index 8bf2cd8b7d..0000000000 --- a/keyboards/keychron/k12_pro/ansi/white/info.json +++ /dev/null @@ -1,97 +0,0 @@ -{ - "usb": { - "pid": "0x02C3", - "device_version": "1.0.1" - }, - "features": { - "led_matrix": true - }, - "led_matrix": { - "driver": "snled27351", - "animations": { - "none": true, - "solid": true, - "breathing": true, - "band_pinwheel": true, - "band_spiral": true, - "cycle_left_right": true, - "cycle_up_down": true, - "cycle_out_in": true, - "dual_beacon": true, - "solid_reactive_simple": true, - "solid_reactive_multiwide": true, - "solid_reactive_multinexus": true, - "solid_splash": true, - "wave_left_right": true, - "wave_up_down": true, - "effect_max": true - }, - "layout": [ - {"matrix":[0, 0], "flags":1, "x":0, "y":0}, - {"matrix":[0, 1], "flags":4, "x":16, "y":0}, - {"matrix":[0, 2], "flags":4, "x":32, "y":0}, - {"matrix":[0, 3], "flags":4, "x":48, "y":0}, - {"matrix":[0, 4], "flags":4, "x":65, "y":0}, - {"matrix":[0, 5], "flags":4, "x":81, "y":0}, - {"matrix":[0, 6], "flags":4, "x":97, "y":0}, - {"matrix":[0, 7], "flags":4, "x":113, "y":0}, - {"matrix":[0, 8], "flags":4, "x":129, "y":0}, - {"matrix":[0, 9], "flags":4, "x":145, "y":0}, - {"matrix":[0, 10], "flags":4, "x":161, "y":0}, - {"matrix":[0, 11], "flags":4, "x":178, "y":0}, - {"matrix":[0, 12], "flags":4, "x":194, "y":0}, - {"matrix":[0, 13], "flags":1, "x":218, "y":0}, - - {"matrix":[1, 0], "flags":1, "x":4, "y":16}, - {"matrix":[1, 1], "flags":8, "x":24, "y":16}, - {"matrix":[1, 2], "flags":8, "x":40, "y":16}, - {"matrix":[1, 3], "flags":8, "x":57, "y":16}, - {"matrix":[1, 4], "flags":4, "x":73, "y":16}, - {"matrix":[1, 5], "flags":4, "x":89, "y":16}, - {"matrix":[1, 6], "flags":4, "x":105, "y":16}, - {"matrix":[1, 7], "flags":4, "x":121, "y":16}, - {"matrix":[1, 8], "flags":4, "x":137, "y":16}, - {"matrix":[1, 9], "flags":4, "x":153, "y":16}, - {"matrix":[1, 10], "flags":4, "x":170, "y":16}, - {"matrix":[1, 11], "flags":4, "x":186, "y":16}, - {"matrix":[1, 12], "flags":4, "x":202, "y":16}, - {"matrix":[1, 13], "flags":1, "x":222, "y":16}, - - {"matrix":[2, 0], "flags":8, "x":6, "y":32}, - {"matrix":[2, 1], "flags":4, "x":28, "y":32}, - {"matrix":[2, 2], "flags":4, "x":44, "y":32}, - {"matrix":[2, 3], "flags":4, "x":61, "y":32}, - {"matrix":[2, 4], "flags":4, "x":77, "y":32}, - {"matrix":[2, 5], "flags":4, "x":93, "y":32}, - {"matrix":[2, 6], "flags":4, "x":109, "y":32}, - {"matrix":[2, 7], "flags":4, "x":125, "y":32}, - {"matrix":[2, 8], "flags":4, "x":141, "y":32}, - {"matrix":[2, 9], "flags":4, "x":157, "y":32}, - {"matrix":[2, 10], "flags":4, "x":174, "y":32}, - {"matrix":[2, 11], "flags":4, "x":190, "y":32}, - {"matrix":[2, 13], "flags":1, "x":216, "y":32}, - - {"matrix":[3, 0], "flags":1, "x":10, "y":48}, - {"matrix":[3, 2], "flags":4, "x":36, "y":48}, - {"matrix":[3, 3], "flags":4, "x":52, "y":48}, - {"matrix":[3, 4], "flags":4, "x":69, "y":48}, - {"matrix":[3, 5], "flags":4, "x":85, "y":48}, - {"matrix":[3, 6], "flags":4, "x":101, "y":48}, - {"matrix":[3, 7], "flags":4, "x":117, "y":48}, - {"matrix":[3, 8], "flags":4, "x":133, "y":48}, - {"matrix":[3, 9], "flags":4, "x":149, "y":48}, - {"matrix":[3, 10], "flags":4, "x":165, "y":48}, - {"matrix":[3, 11], "flags":4, "x":182, "y":48}, - {"matrix":[3, 13], "flags":1, "x":212, "y":48}, - - {"matrix":[4, 0], "flags":1, "x":2, "y":64}, - {"matrix":[4, 1], "flags":1, "x":22, "y":64}, - {"matrix":[4, 2], "flags":1, "x":42, "y":64}, - {"matrix":[4, 6], "flags":4, "x":103, "y":64}, - {"matrix":[4, 10], "flags":1, "x":163, "y":64}, - {"matrix":[4, 11], "flags":1, "x":184, "y":64}, - {"matrix":[4, 12], "flags":1, "x":204, "y":64}, - {"matrix":[4, 13], "flags":1, "x":224, "y":64} - ] - } -} diff --git a/keyboards/keychron/k12_pro/ansi/white/keymaps/default/keymap.c b/keyboards/keychron/k12_pro/ansi/white/keymaps/default/keymap.c deleted file mode 100644 index f9e24ea577..0000000000 --- a/keyboards/keychron/k12_pro/ansi/white/keymaps/default/keymap.c +++ /dev/null @@ -1,63 +0,0 @@ -/* 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 . - */ - -#include QMK_KEYBOARD_H - -// clang-format off -enum layers{ - MAC_BASE, - WIN_BASE, - MAC_FN1, - WIN_FN1, - FN2, -}; - -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_61_ansi( - 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_LCTL, KC_LOPTN, KC_LCMMD, KC_SPC, KC_RCMMD,MO(MAC_FN1),MO(FN2), KC_RCTL), - - [WIN_BASE] = LAYOUT_61_ansi( - 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_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(WIN_FN1),MO(FN2), KC_RCTL), - - [MAC_FN1] = LAYOUT_61_ansi( - KC_GRV, KC_BRID, KC_BRIU, KC_MCTL, KC_LPAD, BL_DOWN, BL_UP, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, BL_STEP, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, KC_INS, KC_PGUP, KC_HOME, _______, - BL_TOGG, BL_STEP, BL_UP, _______, _______, _______, _______, _______, KC_UP, KC_SNAP, KC_PGDN, KC_END, _______, - _______, _______, BL_DOWN, _______, _______, _______, NK_TOGG, KC_LEFT, KC_DOWN, KC_RIGHT, KC_DEL, _______, - _______, _______, _______, _______, _______, _______, _______, _______), - - [WIN_FN1] = LAYOUT_61_ansi( - KC_GRV, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, BL_DOWN, BL_UP, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, BL_STEP, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, KC_APP, KC_SCRL, KC_INS, KC_PGUP, KC_HOME, _______, - BL_TOGG, BL_STEP, BL_UP, _______, _______, _______, _______, _______, KC_UP, KC_PSCR, KC_PGDN, KC_END, _______, - _______, _______, BL_DOWN, _______, _______, _______, NK_TOGG, KC_LEFT, KC_DOWN, KC_RIGHT, KC_DEL, _______, - _______, _______, _______, _______, _______, _______, _______, _______), - - [FN2] = LAYOUT_61_ansi( - KC_TILD, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______), -}; diff --git a/keyboards/keychron/k12_pro/ansi/white/keymaps/via/keymap.c b/keyboards/keychron/k12_pro/ansi/white/keymaps/via/keymap.c deleted file mode 100644 index f9e24ea577..0000000000 --- a/keyboards/keychron/k12_pro/ansi/white/keymaps/via/keymap.c +++ /dev/null @@ -1,63 +0,0 @@ -/* 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 . - */ - -#include QMK_KEYBOARD_H - -// clang-format off -enum layers{ - MAC_BASE, - WIN_BASE, - MAC_FN1, - WIN_FN1, - FN2, -}; - -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_61_ansi( - 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_LCTL, KC_LOPTN, KC_LCMMD, KC_SPC, KC_RCMMD,MO(MAC_FN1),MO(FN2), KC_RCTL), - - [WIN_BASE] = LAYOUT_61_ansi( - 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_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(WIN_FN1),MO(FN2), KC_RCTL), - - [MAC_FN1] = LAYOUT_61_ansi( - KC_GRV, KC_BRID, KC_BRIU, KC_MCTL, KC_LPAD, BL_DOWN, BL_UP, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, BL_STEP, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, KC_INS, KC_PGUP, KC_HOME, _______, - BL_TOGG, BL_STEP, BL_UP, _______, _______, _______, _______, _______, KC_UP, KC_SNAP, KC_PGDN, KC_END, _______, - _______, _______, BL_DOWN, _______, _______, _______, NK_TOGG, KC_LEFT, KC_DOWN, KC_RIGHT, KC_DEL, _______, - _______, _______, _______, _______, _______, _______, _______, _______), - - [WIN_FN1] = LAYOUT_61_ansi( - KC_GRV, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, BL_DOWN, BL_UP, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, BL_STEP, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, KC_APP, KC_SCRL, KC_INS, KC_PGUP, KC_HOME, _______, - BL_TOGG, BL_STEP, BL_UP, _______, _______, _______, _______, _______, KC_UP, KC_PSCR, KC_PGDN, KC_END, _______, - _______, _______, BL_DOWN, _______, _______, _______, NK_TOGG, KC_LEFT, KC_DOWN, KC_RIGHT, KC_DEL, _______, - _______, _______, _______, _______, _______, _______, _______, _______), - - [FN2] = LAYOUT_61_ansi( - KC_TILD, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______), -}; diff --git a/keyboards/keychron/k12_pro/ansi/white/keymaps/via/rules.mk b/keyboards/keychron/k12_pro/ansi/white/keymaps/via/rules.mk deleted file mode 100644 index 4eae6e776c..0000000000 --- a/keyboards/keychron/k12_pro/ansi/white/keymaps/via/rules.mk +++ /dev/null @@ -1,2 +0,0 @@ -VIA_ENABLE = yes -OPT_DEFS += -DDYNAMIC_KEYMAP_LAYER_COUNT=5 diff --git a/keyboards/keychron/k12_pro/ansi/white/rules.mk b/keyboards/keychron/k12_pro/ansi/white/rules.mk deleted file mode 100644 index 6e7633bfe0..0000000000 --- a/keyboards/keychron/k12_pro/ansi/white/rules.mk +++ /dev/null @@ -1 +0,0 @@ -# This file intentionally left blank diff --git a/keyboards/keychron/k12_pro/ansi/white/white.c b/keyboards/keychron/k12_pro/ansi/white/white.c deleted file mode 100644 index 41146809ad..0000000000 --- a/keyboards/keychron/k12_pro/ansi/white/white.c +++ /dev/null @@ -1,92 +0,0 @@ -/* 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 . - */ - -#include "quantum.h" - -// clang-format off -#ifdef LED_MATRIX_ENABLE -const snled27351_led_t g_snled27351_leds[LED_MATRIX_LED_COUNT] = { -/* Refer to snled27351manual for these locations - * driver - * | LED address - * | | */ - {0, B_16}, - {0, B_15}, - {0, B_14}, - {0, B_13}, - {0, B_12}, - {0, B_11}, - {0, B_10}, - {0, B_9}, - {0, B_8}, - {0, B_7}, - {0, B_6}, - {0, B_5}, - {0, B_4}, - {0, B_3}, - - {0, C_16}, - {0, C_15}, - {0, C_14}, - {0, C_13}, - {0, C_12}, - {0, C_11}, - {0, C_10}, - {0, C_9}, - {0, C_8}, - {0, C_7}, - {0, C_6}, - {0, C_5}, - {0, C_4}, - {0, C_3}, - - {0, D_16}, - {0, D_15}, - {0, D_14}, - {0, D_13}, - {0, D_12}, - {0, D_11}, - {0, D_10}, - {0, D_9}, - {0, D_8}, - {0, D_7}, - {0, D_6}, - {0, D_5}, - {0, D_3}, - - {0, E_16}, - {0, E_14}, - {0, E_13}, - {0, E_12}, - {0, E_11}, - {0, E_10}, - {0, E_9}, - {0, E_8}, - {0, E_7}, - {0, E_6}, - {0, E_5}, - {0, E_3}, - - {0, F_16}, - {0, F_15}, - {0, F_14}, - {0, F_10}, - {0, F_6}, - {0, F_5}, - {0, F_4}, - {0, F_3}, -}; -#endif diff --git a/keyboards/keychron/k12_pro/config.h b/keyboards/keychron/k12_pro/config.h deleted file mode 100644 index 767445eda1..0000000000 --- a/keyboards/keychron/k12_pro/config.h +++ /dev/null @@ -1,93 +0,0 @@ -/* 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 . - */ - -#pragma once - -/* Turn off effects when suspended */ -#define RGB_DISABLE_WHEN_USB_SUSPENDED -#define LED_DISABLE_WHEN_USB_SUSPENDED - -/* DIP switch for Mac/win OS switch */ -#define DIP_SWITCH_PINS \ - { A8 } - -/* Caps lock LED Pin */ -#define LED_CAPS_LOCK_PIN A0 -#define LED_PIN_ON_STATE 1 - -/* 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 A10 - -# 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 A4 -# 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 \ - { 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 WEAR_LEVELING_LOGICAL_SIZE 2048 -#define WEAR_LEVELING_BACKING_SIZE (WEAR_LEVELING_LOGICAL_SIZE * 2) -#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) diff --git a/keyboards/keychron/k12_pro/halconf.h b/keyboards/keychron/k12_pro/halconf.h deleted file mode 100644 index 306f917783..0000000000 --- a/keyboards/keychron/k12_pro/halconf.h +++ /dev/null @@ -1,29 +0,0 @@ -/* 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 _CHIBIOS_HAL_CONF_VER_8_0_ - -#define HAL_USE_I2C TRUE - -#ifdef KC_BLUETOOTH_ENABLE -# define PAL_USE_CALLBACKS TRUE -# define HAL_USE_SERIAL TRUE -# define HAL_USE_RTC TRUE -#endif - -#include_next diff --git a/keyboards/keychron/k12_pro/info.json b/keyboards/keychron/k12_pro/info.json deleted file mode 100644 index fae987b4a1..0000000000 --- a/keyboards/keychron/k12_pro/info.json +++ /dev/null @@ -1,99 +0,0 @@ -{ - "keyboard_name": "Keychron K12 Pro", - "manufacturer": "Keychron", - "url": "https://github.com/Keychron", - "maintainer": "lalalademaxiya1", - "processor": "STM32L432", - "bootloader": "stm32-dfu", - "usb": { - "vid": "0x3434" - }, - "features": { - "bootmagic": true, - "command": false, - "console": false, - "dip_switch": true, - "extrakey": true, - "mousekey": true, - "nkro": true, - "raw": true - }, - "matrix_pins": { - "cols": [null, null, null, null, null, null, null, null, null, null, null, null, null, null ], - "rows": ["B4", "B3", "A15", "A14", "A13"], - "custom": true, - "custom_lite": true - }, - "diode_direction": "ROW2COL", - "layouts": { - "LAYOUT_61_ansi": { - "layout": [ - {"matrix":[0,0], "x":0, "y":0}, - {"matrix":[0,1], "x":1, "y":0}, - {"matrix":[0,2], "x":2, "y":0}, - {"matrix":[0,3], "x":3, "y":0}, - {"matrix":[0,4], "x":4, "y":0}, - {"matrix":[0,5], "x":5, "y":0}, - {"matrix":[0,6], "x":6, "y":0}, - {"matrix":[0,7], "x":7, "y":0}, - {"matrix":[0,8], "x":8, "y":0}, - {"matrix":[0,9], "x":9, "y":0}, - {"matrix":[0,10], "x":10, "y":0}, - {"matrix":[0,11], "x":11, "y":0}, - {"matrix":[0,12], "x":12, "y":0}, - {"matrix":[0,13], "x":13, "y":0, "w":2}, - - {"matrix":[1,0], "x":0, "y":1, "w":1.5}, - {"matrix":[1,1], "x":1.5, "y":1}, - {"matrix":[1,2], "x":2.5, "y":1}, - {"matrix":[1,3], "x":3.5, "y":1}, - {"matrix":[1,4], "x":4.5, "y":1}, - {"matrix":[1,5], "x":5.5, "y":1}, - {"matrix":[1,6], "x":6.5, "y":1}, - {"matrix":[1,7], "x":7.5, "y":1}, - {"matrix":[1,8], "x":8.5, "y":1}, - {"matrix":[1,9], "x":9.5, "y":1}, - {"matrix":[1,10], "x":10.5, "y":1}, - {"matrix":[1,11], "x":11.5, "y":1}, - {"matrix":[1,12], "x":12.5, "y":1}, - {"matrix":[1,13], "x":13.5, "y":1, "w":1.5}, - - {"matrix":[2,0], "x":0, "y":2, "w":1.75}, - {"matrix":[2,1], "x":1.75, "y":2}, - {"matrix":[2,2], "x":2.75, "y":2}, - {"matrix":[2,3], "x":3.75, "y":2}, - {"matrix":[2,4], "x":4.75, "y":2}, - {"matrix":[2,5], "x":5.75, "y":2}, - {"matrix":[2,6], "x":6.75, "y":2}, - {"matrix":[2,7], "x":7.75, "y":2}, - {"matrix":[2,8], "x":8.75, "y":2}, - {"matrix":[2,9], "x":9.75, "y":2}, - {"matrix":[2,10], "x":10.75, "y":2}, - {"matrix":[2,11], "x":11.75, "y":2}, - {"matrix":[2,13], "x":12.75, "y":2, "w":2.25}, - - {"matrix":[3,0], "x":0, "y":3, "w":2.25}, - {"matrix":[3,2], "x":2.25, "y":3}, - {"matrix":[3,3], "x":3.25, "y":3}, - {"matrix":[3,4], "x":4.25, "y":3}, - {"matrix":[3,5], "x":5.25, "y":3}, - {"matrix":[3,6], "x":6.25, "y":3}, - {"matrix":[3,7], "x":7.25, "y":3}, - {"matrix":[3,8], "x":8.25, "y":3}, - {"matrix":[3,9], "x":9.25, "y":3}, - {"matrix":[3,10], "x":10.25, "y":3}, - {"matrix":[3,11], "x":11.25, "y":3}, - {"matrix":[3,13], "x":12.25, "y":3, "w":2.75}, - - {"matrix":[4,0], "x":0, "y":4, "w":1.25}, - {"matrix":[4,1], "x":1.25, "y":4, "w":1.25}, - {"matrix":[4,2], "x":2.5, "y":4, "w":1.25}, - {"matrix":[4,6], "x":3.75, "y":4, "w":6.25}, - {"matrix":[4,10], "x":10, "y":4, "w":1.25}, - {"matrix":[4,11], "x":11.25, "y":4, "w":1.25}, - {"matrix":[4,12], "x":12.5, "y":4, "w":1.25}, - {"matrix":[4,13], "x":13.75, "y":4, "w":1.25} - ] - } - } -} diff --git a/keyboards/keychron/k12_pro/k12_pro.c b/keyboards/keychron/k12_pro/k12_pro.c deleted file mode 100644 index 6fde4e6f92..0000000000 --- a/keyboards/keychron/k12_pro/k12_pro.c +++ /dev/null @@ -1,312 +0,0 @@ -/* 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 . - */ - -#include "k12_pro.h" -#ifdef KC_BLUETOOTH_ENABLE -# include "ckbt51.h" -# include "bluetooth.h" -# include "indicator.h" -# include "transport.h" -# include "battery.h" -# include "bat_level_animation.h" -# include "lpm.h" -#endif - -#ifdef ENABLE_FACTORY_TEST -# include "factory_test.h" -#endif - -#define POWER_ON_LED_DURATION 3000 - -typedef struct PACKED { - uint8_t len; - uint8_t keycode[3]; -} key_combination_t; - -static uint32_t factory_timer_buffer = 0; -static uint32_t power_on_indicator_timer_buffer = 0; -static uint32_t siri_timer_buffer = 0; -static uint8_t mac_keycode[4] = {KC_LOPT, KC_ROPT, KC_LCMD, KC_RCMD}; - -key_combination_t key_comb_list[4] = { - {2, {KC_LWIN, KC_TAB}}, // Task (win) - {2, {KC_LWIN, KC_E}}, // Files (win) - {3, {KC_LSFT, KC_LGUI, KC_4}}, // Snapshot (mac) - {2, {KC_LWIN, KC_C}} // Cortana (win) -}; - -#ifdef KC_BLUETOOTH_ENABLE -bool firstDisconnect = true; -bool bt_factory_reset = false; -static virtual_timer_t pairing_key_timer; -extern uint8_t g_pwm_buffer[DRIVER_COUNT][192]; - -static void pairing_key_timer_cb(void *arg) { - bluetooth_pairing_ex(*(uint8_t *)arg, NULL); -} -#endif - -bool dip_switch_update_kb(uint8_t index, bool active) { - if (index == 0) { -#ifdef INVERT_OS_SWITCH_STATTE - default_layer_set(1UL << (!active ? 1 : 0)); -#else - default_layer_set(1UL << (active ? 1 : 0)); -#endif - } - dip_switch_update_user(index, active); - - return true; -} - -#ifdef KC_BLUETOOTH_ENABLE -bool process_record_kb_bt(uint16_t keycode, keyrecord_t *record) { -#else -bool process_record_kb(uint16_t keycode, keyrecord_t *record) { -#endif - static uint8_t host_idx = 0; - - switch (keycode) { - case KC_LOPTN: - case KC_ROPTN: - case KC_LCMMD: - case KC_RCMMD: - if (record->event.pressed) { - register_code(mac_keycode[keycode - KC_LOPTN]); - } else { - unregister_code(mac_keycode[keycode - KC_LOPTN]); - } - return false; // Skip all further processing of this key) - case KC_TASK: - case KC_FILE: - case KC_SNAP: - case KC_CTANA: - if (record->event.pressed) { - for (uint8_t i = 0; i < key_comb_list[keycode - KC_TASK].len; i++) - register_code(key_comb_list[keycode - KC_TASK].keycode[i]); - } else { - for (uint8_t i = 0; i < key_comb_list[keycode - KC_TASK].len; i++) - unregister_code(key_comb_list[keycode - KC_TASK].keycode[i]); - } - return false; // Skip all further processing of this key - case KC_SIRI: - if (record->event.pressed && siri_timer_buffer == 0) { - register_code(KC_LGUI); - register_code(KC_SPACE); - siri_timer_buffer = sync_timer_read32() | 1; - } - return false; // Skip all further processing of this key -#ifdef KC_BLUETOOTH_ENABLE - case BT_HST1 ... BT_HST3: - if (get_transport() == TRANSPORT_BLUETOOTH) { - if (record->event.pressed) { - host_idx = keycode - BT_HST1 + 1; - chVTSet(&pairing_key_timer, TIME_MS2I(2000), (vtfunc_t)pairing_key_timer_cb, &host_idx); - bluetooth_connect_ex(host_idx, 0); - } else { - host_idx = 0; - chVTReset(&pairing_key_timer); - } - } - break; - case BAT_LVL: - if (get_transport() == TRANSPORT_BLUETOOTH && !usb_power_connected()) { - bat_level_animiation_start(battery_get_percentage()); - } - break; -#endif - default: -#ifdef FACTORY_RESET_CHECK - FACTORY_RESET_CHECK(keycode, record); -#endif - break; - } - return true; -} - -void keyboard_post_init_kb(void) { - dip_switch_read(true); - -#ifdef KC_BLUETOOTH_ENABLE - /* Currently we don't use this reset pin */ - // palSetLineMode(CKBT51_RESET_PIN, PAL_MODE_UNCONNECTED); - palSetLineMode(CKBT51_RESET_PIN, PAL_MODE_OUTPUT_PUSHPULL); - palWriteLine(CKBT51_RESET_PIN, PAL_HIGH); - - /* IMPORTANT: DO NOT enable internal pull-up resistor - * as there is an external pull-down resistor. - */ - palSetLineMode(USB_BT_MODE_SELECT_PIN, PAL_MODE_INPUT); - - ckbt51_init(false); - bluetooth_init(); -#endif - - power_on_indicator_timer_buffer = sync_timer_read32() | 1; - writePin(BAT_LOW_LED_PIN, BAT_LOW_LED_PIN_ON_STATE); - keyboard_post_init_user(); -} - -void matrix_scan_kb(void) { - if (factory_timer_buffer && timer_elapsed32(factory_timer_buffer) > 2000) { - factory_timer_buffer = 0; - if (bt_factory_reset) { - bt_factory_reset = false; - palWriteLine(CKBT51_RESET_PIN, PAL_LOW); - wait_ms(5); - palWriteLine(CKBT51_RESET_PIN, PAL_HIGH); - } - } - - if (power_on_indicator_timer_buffer) { - if (sync_timer_elapsed32(power_on_indicator_timer_buffer) > POWER_ON_LED_DURATION) { - power_on_indicator_timer_buffer = 0; - writePin(BAT_LOW_LED_PIN, !BAT_LOW_LED_PIN_ON_STATE); - } else { - writePin(BAT_LOW_LED_PIN, BAT_LOW_LED_PIN_ON_STATE); - } - } - - if (siri_timer_buffer && sync_timer_elapsed32(siri_timer_buffer) > 500) { - siri_timer_buffer = 0; - unregister_code(KC_LGUI); - unregister_code(KC_SPACE); - } - -#ifdef FACTORY_RESET_TASK - FACTORY_RESET_TASK(); -#endif - matrix_scan_user(); -} - -#ifdef KC_BLUETOOTH_ENABLE -static void ckbt51_param_init(void) { - /* Set bluetooth device name */ - // ckbt51_set_local_name(STR(PRODUCT)); - ckbt51_set_local_name(PRODUCT); - wait_ms(10); - /* Set bluetooth parameters */ - module_param_t param = {.event_mode = 0x02, - .connected_idle_timeout = 7200, - .pairing_timeout = 180, - .pairing_mode = 0, - .reconnect_timeout = 5, - .report_rate = 90, - .vendor_id_source = 1, - .verndor_id = 0, // Must be 0x3434 - .product_id = PRODUCT_ID}; - ckbt51_set_param(¶m); - wait_ms(10); -} - -void bluetooth_enter_disconnected_kb(uint8_t host_idx) { - if (bt_factory_reset) { - ckbt51_param_init(); - factory_timer_buffer = timer_read32(); - } - /* CKBT51 bluetooth module boot time is slower, it enters disconnected after boot, - so we place initialization here. */ - if (firstDisconnect && sync_timer_read32() < 1000 && get_transport() == TRANSPORT_BLUETOOTH) { - ckbt51_param_init(); - bluetooth_connect(); - firstDisconnect = false; - } -} - -void ckbt51_default_ack_handler(uint8_t *data, uint8_t len) { - if (data[1] == 0x45) { - module_param_t param = {.event_mode = 0x02, - .connected_idle_timeout = 7200, - .pairing_timeout = 180, - .pairing_mode = 0, - .reconnect_timeout = 5, - .report_rate = 90, - .vendor_id_source = 1, - .verndor_id = 0, // Must be 0x3434 - .product_id = PRODUCT_ID}; - ckbt51_set_param(¶m); - } -} - -void bluetooth_pre_task(void) { - static uint8_t mode = 1; - - if (readPin(USB_BT_MODE_SELECT_PIN) != mode) { - if (readPin(USB_BT_MODE_SELECT_PIN) != mode) { - mode = readPin(USB_BT_MODE_SELECT_PIN); - set_transport(mode == 0 ? TRANSPORT_BLUETOOTH : TRANSPORT_USB); - } - } -} -#endif - -void battery_calculte_voltage(uint16_t value) { - uint16_t voltage = ((uint32_t)value) * 2246 / 1000; - -#ifdef LED_MATRIX_ENABLE - if (led_matrix_is_enabled()) { - uint32_t totalBuf = 0; - - for (uint8_t i = 0; i < DRIVER_COUNT; i++) - for (uint8_t j = 0; j < 192; j++) - totalBuf += g_pwm_buffer[i][j]; - /* We assumpt it is linear relationship*/ - voltage += (30 * totalBuf / LED_MATRIX_LED_COUNT / 255); - } -#endif -#ifdef RGB_MATRIX_ENABLE - if (rgb_matrix_is_enabled()) { - uint32_t totalBuf = 0; - - for (uint8_t i = 0; i < DRIVER_COUNT; i++) - for (uint8_t j = 0; j < 192; j++) - totalBuf += g_pwm_buffer[i][j]; - /* We assumpt it is linear relationship*/ - uint32_t compensation = 60 * totalBuf / RGB_MATRIX_LED_COUNT / 255 / 3; - voltage += compensation; - } -#endif - battery_set_voltage(voltage); -} - -bool via_command_kb(uint8_t *data, uint8_t length) { - switch (data[0]) { -#ifdef KC_BLUETOOTH_ENABLE - case 0xAA: - ckbt51_dfu_rx(data, length); - break; -#endif -#ifdef ENABLE_FACTORY_TEST - case 0xAB: - factory_test_rx(data, length); - break; -#endif - default: - return false; - } - - return true; -} - -#if !defined(VIA_ENABLE) -void raw_hid_receive(uint8_t *data, uint8_t length) { - switch (data[0]) { - case RAW_HID_CMD: - via_command_kb(data, length); - break; - } -} -#endif diff --git a/keyboards/keychron/k12_pro/k12_pro.h b/keyboards/keychron/k12_pro/k12_pro.h deleted file mode 100644 index 9cc6693d4d..0000000000 --- a/keyboards/keychron/k12_pro/k12_pro.h +++ /dev/null @@ -1,55 +0,0 @@ -/* 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 . - */ - -#pragma once - -#include "quantum.h" -#ifdef VIA_ENABLE -# include "via.h" -#endif - -#define ___ KC_NO - -#ifdef VIA_ENABLE -# define USER_START QK_KB_0 -#else -# define USER_START SAFE_RANGE -#endif - -// clang-format off -enum { - KC_LOPTN = USER_START, - KC_ROPTN, - KC_LCMMD, - KC_RCMMD, - KC_TASK, - KC_FILE, - KC_SNAP, - KC_CTANA, - KC_SIRI, -#ifdef KC_BLUETOOTH_ENABLE - BT_HST1, - BT_HST2, - BT_HST3, - BAT_LVL, -#else - BT_HST1 = KC_TRNS, - BT_HST2 = KC_TRNS, - BT_HST3 = KC_TRNS, - BAT_LVL = KC_TRNS, -#endif - NEW_SAFE_RANGE -}; diff --git a/keyboards/keychron/k12_pro/matrix.c b/keyboards/keychron/k12_pro/matrix.c deleted file mode 100644 index 21b3a775a4..0000000000 --- a/keyboards/keychron/k12_pro/matrix.c +++ /dev/null @@ -1,190 +0,0 @@ -/* 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 . - */ - -#include "quantum.h" - -#define HC595_STCP B0 -#define HC595_SHCP A1 -#define HC595_DS A7 - -#define DIRECT_COL_NUM 0 - -pin_t row_pins[MATRIX_ROWS] = MATRIX_ROW_PINS; -pin_t col_pins[MATRIX_COLS] = MATRIX_COL_PINS; - -static inline uint8_t readMatrixPin(pin_t pin) { - if (pin != NO_PIN) { - return readPin(pin); - } else { - return 1; - } -} - -static inline void setPinOutput_writeLow(pin_t pin) { - setPinOutput(pin); - writePinLow(pin); -} - -static inline void setPinOutput_writeHigh(pin_t pin) { - setPinOutput(pin); - writePinHigh(pin); -} - -static inline void HC595_delay(uint16_t n) { - while (n-- > 0) { - asm volatile("nop" ::: "memory"); - } -} - -static void HC595_output(uint16_t data) { - uint8_t n = 1; - uint8_t i; - - for (i = 0; i < (MATRIX_COLS - DIRECT_COL_NUM); i++) { - writePinLow(HC595_SHCP); - if (data & 0x1) { - writePinHigh(HC595_DS); - } else { - writePinLow(HC595_DS); - } - HC595_delay(n); - writePinHigh(HC595_SHCP); - HC595_delay(n); - - data = data >> 1; - } - writePinLow(HC595_STCP); - HC595_delay(n); - writePinHigh(HC595_STCP); -} - -static void HC595_output_bit(uint8_t data) { - uint8_t n = 1; - - writePinLow(HC595_SHCP); - if (data & 0x1) { - writePinHigh(HC595_DS); - } else { - writePinLow(HC595_DS); - } - HC595_delay(n); - - writePinHigh(HC595_SHCP); - HC595_delay(n); - - writePinLow(HC595_STCP); - HC595_delay(n); - writePinHigh(HC595_STCP); -} - -static void select_col(uint8_t col) { - if (col < DIRECT_COL_NUM) { - setPinOutput_writeLow(col_pins[col]); - } else { - if (col == DIRECT_COL_NUM) { - HC595_output_bit(0x00); - } - } -} - -static void unselect_col(uint8_t col) { - if (col < DIRECT_COL_NUM) { -#ifdef MATRIX_UNSELECT_DRIVE_HIGH - setPinOutput_writeHigh(col_pins[col]); -#else - setPinInputHigh(col_pins[col]); -#endif - } else { - HC595_output_bit(0x01); - } -} - -static void unselect_cols(void) { - for (uint8_t x = 0; x < MATRIX_COLS; x++) { - if (x < DIRECT_COL_NUM) { -#ifdef MATRIX_UNSELECT_DRIVE_HIGH - setPinOutput_writeHigh(col_pins[x]); -#else - setPinInputHigh(col_pins[x]); -#endif - } else { - if (x == DIRECT_COL_NUM) HC595_output(0xFFFF); - break; - } - } -} - -void select_all_cols(void) { - for (uint8_t x = 0; x < MATRIX_COLS; x++) { - if (x < DIRECT_COL_NUM) { - setPinOutput_writeLow(col_pins[x]); - } else { - if (x == DIRECT_COL_NUM) HC595_output(0x0000); - break; - } - } -} - -static void matrix_read_rows_on_col(matrix_row_t current_matrix[], uint8_t current_col, matrix_row_t row_shifter) { - // Select col - select_col(current_col); - HC595_delay(200); - - // For each row... - for (uint8_t row_index = 0; row_index < MATRIX_ROWS; row_index++) { - // Check row pin state - if (readMatrixPin(row_pins[row_index]) == 0) { - // Pin LO, set col bit - current_matrix[row_index] |= row_shifter; - } else { - // Pin HI, clear col bit - current_matrix[row_index] &= ~row_shifter; - } - } - - // Unselect col - unselect_col(current_col); - HC595_delay(200); // wait for all Row signals to go HIGH -} - -void matrix_init_custom(void) { - setPinOutput(HC595_DS); - setPinOutput(HC595_STCP); - setPinOutput(HC595_SHCP); - - for (uint8_t x = 0; x < MATRIX_ROWS; x++) { - if (row_pins[x] != NO_PIN) { - setPinInputHigh(row_pins[x]); - } - } - - unselect_cols(); -} - -bool matrix_scan_custom(matrix_row_t current_matrix[]) { - matrix_row_t curr_matrix[MATRIX_ROWS] = {0}; - - // Set col, read rows - matrix_row_t row_shifter = MATRIX_ROW_SHIFTER; - for (uint8_t current_col = 0; current_col < MATRIX_COLS; current_col++, row_shifter <<= 1) { - matrix_read_rows_on_col(curr_matrix, current_col, row_shifter); - } - - bool changed = memcmp(current_matrix, curr_matrix, sizeof(curr_matrix)) != 0; - if (changed) memcpy(current_matrix, curr_matrix, sizeof(curr_matrix)); - - return changed; -} diff --git a/keyboards/keychron/k12_pro/mcuconf.h b/keyboards/keychron/k12_pro/mcuconf.h deleted file mode 100644 index 4dae767a44..0000000000 --- a/keyboards/keychron/k12_pro/mcuconf.h +++ /dev/null @@ -1,36 +0,0 @@ -/* 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 - -/* Set HCLK to 48 MHz as tradeoff of USB lowest clockand and - * lower power comsumption for bluetooth. Will use dynamic - * clock when STM32L4 is supported in ChibiOS */ -#undef STM32_PLLM_VALUE -#define STM32_PLLM_VALUE 2 - -#undef STM32_PLLN_VALUE -#define STM32_PLLN_VALUE 12 - -#undef STM32_I2C_USE_I2C1 -#define STM32_I2C_USE_I2C1 TRUE - -#ifdef KC_BLUETOOTH_ENABLE -# undef STM32_SERIAL_USE_USART2 -# define STM32_SERIAL_USE_USART2 TRUE -#endif diff --git a/keyboards/keychron/k12_pro/readme.md b/keyboards/keychron/k12_pro/readme.md deleted file mode 100644 index 34cc89c63d..0000000000 --- a/keyboards/keychron/k12_pro/readme.md +++ /dev/null @@ -1,23 +0,0 @@ -# Keychron K12 Pro - -![Keychron K12 Pro](https://i.imgur.com/1nFRfJs.jpg) - -A customizable 60% keyboard. - -* Keyboard Maintainer: [Keychron](https://github.com/keychron) -* Hardware Supported: Keychron K12 Pro -* Hardware Availability: [Keychron K12 Pro QMK/VIA Wireless Mechanical Keyboard]() - -Make example for this keyboard (after setting up your build environment): - - make keychron/k12_pro/ansi/rgb:default - make keychron/k12_pro/ansi/white:default - -Flashing example for this keyboard: - - make keychron/k12_pro/ansi/rgb:default:flash - make keychron/k12_pro/ansi/white:default:flash - -**Reset Key**: Connect the USB cable, toggle mode switch to "Off", hold down the *Esc* key or reset button underneath space bar, then toggle then switch to "Cable". - -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). diff --git a/keyboards/keychron/k12_pro/rules.mk b/keyboards/keychron/k12_pro/rules.mk deleted file mode 100644 index 98cf5c564b..0000000000 --- a/keyboards/keychron/k12_pro/rules.mk +++ /dev/null @@ -1,8 +0,0 @@ -# Enter lower-power sleep mode when on the ChibiOS idle thread -OPT_DEFS += -DCORTEX_ENABLE_WFI_IDLE=TRUE -OPT_DEFS += -DNO_USB_STARTUP_CHECK -DENABLE_FACTORY_TEST -OPT_DEFS += -DKC_BLUETOOTH_ENABLE - -SRC += matrix.c - -include keyboards/keychron/bluetooth/bluetooth.mk diff --git a/keyboards/keychron/k12_pro/via_json/k12_pro_ansi_rgb.json b/keyboards/keychron/k12_pro/via_json/k12_pro_ansi_rgb.json deleted file mode 100644 index ce4e7a5a8f..0000000000 --- a/keyboards/keychron/k12_pro/via_json/k12_pro_ansi_rgb.json +++ /dev/null @@ -1,225 +0,0 @@ -{ - "name": "Keychron K12 Pro ANSI RGB", - "vendorId": "0x3434", - "productId": "0x02C0", - "keycodes": ["qmk_lighting"], - "menus": [ - { - "label": "Lighting", - "content": [ - { - "label": "Backlight", - "content": [ - { - "label": "Brightness", - "type": "range", - "options": [0, 255], - "content": ["id_qmk_rgb_matrix_brightness", 3, 1] - }, - { - "label": "Effect", - "type": "dropdown", - "content": ["id_qmk_rgb_matrix_effect", 3, 2], - "options": [ - ["None", 0], - ["Solid Color", 1], - ["Breathing", 2], - ["Band Spiral Val", 3], - ["Cycle All", 4], - ["Cycle Left Right", 5], - ["Cycle Up Down", 6], - ["Rainbow Moving Chevron", 7], - ["Cycle Out In", 8], - ["Cycle Out In Dual", 9], - ["Cycle Pinwheel", 10], - ["Cycle Spiral", 11], - ["Dual Beacon", 12], - ["Rainbow Beacon", 13], - ["Jellybean Raindrops", 14], - ["Pixel Rain", 15], - ["Typing Heatmap", 16], - ["Digital Rain", 17], - ["Reactive Simple", 18], - ["Reactive Multiwide", 19], - ["Reactive Multinexus", 20], - ["Splash", 21], - ["Solid Splash", 22] - ] - }, - { - "showIf": "{id_qmk_rgb_matrix_effect} > 1", - "label": "Effect Speed", - "type": "range", - "options": [0, 255], - "content": ["id_qmk_rgb_matrix_effect_speed", 3, 3] - }, - { - "showIf": "{id_qmk_rgb_matrix_effect} != 0 && ( {id_qmk_rgb_matrix_effect} < 4 || {id_qmk_rgb_matrix_effect} == 18 || ({id_qmk_rgb_matrix_effect} > 17 && {id_qmk_rgb_matrix_effect} != 21) ) ", - "label": "Color", - "type": "color", - "content": ["id_qmk_rgb_matrix_color", 3, 4] - } - ] - } - ] - } - ], - "customKeycodes": [ - {"name": "Left Option", "title": "Left Option", "shortName": "LOpt"}, - {"name": "Right Option", "title": "Right Option", "shortName": "ROpt"}, - {"name": "Left Cmd", "title": "Left Command", "shortName": "LCmd"}, - {"name": "Right Cmd", "title": "Right Command", "shortName": "RCmd"}, - {"name": "Task View", "title": "Task View in Windows", "shortName": "Task"}, - {"name": "File Explorer", "title": "File Explorer in Windows", "shortName": "File"}, - {"name": "Screen shot", "title": "Screenshot in macOS", "shortName": "SShot"}, - {"name": "Cortana", "title": "Cortana in Windows", "shortName": "Cortana"}, - {"name": "Siri", "title": "Siri in macOS", "shortName": "Siri"}, - {"name": "Bluetooth Host 1", "title": "Bluetooth Host 1", "shortName": "BTH1"}, - {"name": "Bluetooth Host 2", "title": "Bluetooth Host 2", "shortName": "BTH2"}, - {"name": "Bluetooth Host 3", "title": "Bluetooth Host 3", "shortName": "BTH3"}, - {"name": "Battery Level", "title": "Show battery level", "shortName": "Batt"} - ], - "matrix": {"rows": 5, "cols": 14}, - "layouts": { - "keymap": [ - [ - { - "c": "#777777" - }, - "0,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", - { - "c": "#aaaaaa", - "w": 2 - }, - "0,13" - ], - [ - { - "w": 1.5 - }, - "1,0", - { - "c": "#cccccc" - }, - "1,1", - "1,2", - "1,3", - "1,4", - "1,5", - "1,6", - "1,7", - "1,8", - "1,9", - "1,10", - "1,11", - "1,12", - { - "c": "#aaaaaa", - "w": 1.5 - }, - "1,13" - ], - [ - { - "w": 1.75 - }, - "2,0", - { - "c": "#cccccc" - }, - "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" - ], - [ - { - "c": "#aaaaaa", - "w": 2.25 - }, - "3,0", - { - "c": "#cccccc" - }, - "3,2", - "3,3", - "3,4", - "3,5", - "3,6", - "3,7", - "3,8", - "3,9", - "3,10", - "3,11", - { - "c": "#aaaaaa", - "w": 2.75 - }, - "3,13" - ], - [ - { - "w": 1.25 - }, - "4,0", - { - "w": 1.25 - }, - "4,1", - { - "w": 1.25 - }, - "4,2", - { - "c": "#cccccc", - "w": 6.25 - }, - "4,6", - { - "c": "#aaaaaa", - "w": 1.25 - }, - "4,10", - { - "w": 1.25 - }, - "4,11", - { - "w": 1.25 - }, - "4,12", - { - "w": 1.25 - }, - "4,13" - ] - ] - } -} diff --git a/keyboards/keychron/k12_pro/via_json/k12_pro_ansi_white.json b/keyboards/keychron/k12_pro/via_json/k12_pro_ansi_white.json deleted file mode 100644 index 06b5c0e006..0000000000 --- a/keyboards/keychron/k12_pro/via_json/k12_pro_ansi_white.json +++ /dev/null @@ -1,164 +0,0 @@ -{ - "name": "Keychron K12 Pro ANSI White", - "vendorId": "0x3434", - "productId": "0x02C3", - "keycodes": ["qmk_lighting"], - "customKeycodes": [ - {"name": "Left Option", "title": "Left Option", "shortName": "LOpt"}, - {"name": "Right Option", "title": "Right Option", "shortName": "ROpt"}, - {"name": "Left Cmd", "title": "Left Command", "shortName": "LCmd"}, - {"name": "Right Cmd", "title": "Right Command", "shortName": "RCmd"}, - {"name": "Task View", "title": "Task View in Windows", "shortName": "Task"}, - {"name": "File Explorer", "title": "File Explorer in Windows", "shortName": "File"}, - {"name": "Screen shot", "title": "Screenshot in macOS", "shortName": "SShot"}, - {"name": "Cortana", "title": "Cortana in Windows", "shortName": "Cortana"}, - {"name": "Siri", "title": "Siri in macOS", "shortName": "Siri"}, - {"name": "Bluetooth Host 1", "title": "Bluetooth Host 1", "shortName": "BTH1"}, - {"name": "Bluetooth Host 2", "title": "Bluetooth Host 2", "shortName": "BTH2"}, - {"name": "Bluetooth Host 3", "title": "Bluetooth Host 3", "shortName": "BTH3"}, - {"name": "Battery Level", "title": "Show battery level", "shortName": "Batt"} - ], - "matrix": {"rows": 5, "cols": 14}, - "layouts": { - "keymap": [ - [ - { - "c": "#777777" - }, - "0,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", - { - "c": "#aaaaaa", - "w": 2 - }, - "0,13" - ], - [ - { - "w": 1.5 - }, - "1,0", - { - "c": "#cccccc" - }, - "1,1", - "1,2", - "1,3", - "1,4", - "1,5", - "1,6", - "1,7", - "1,8", - "1,9", - "1,10", - "1,11", - "1,12", - { - "c": "#aaaaaa", - "w": 1.5 - }, - "1,13" - ], - [ - { - "w": 1.75 - }, - "2,0", - { - "c": "#cccccc" - }, - "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" - ], - [ - { - "c": "#aaaaaa", - "w": 2.25 - }, - "3,0", - { - "c": "#cccccc" - }, - "3,2", - "3,3", - "3,4", - "3,5", - "3,6", - "3,7", - "3,8", - "3,9", - "3,10", - "3,11", - { - "c": "#aaaaaa", - "w": 2.75 - }, - "3,13" - ], - [ - { - "w": 1.25 - }, - "4,0", - { - "w": 1.25 - }, - "4,1", - { - "w": 1.25 - }, - "4,2", - { - "c": "#cccccc", - "w": 6.25 - }, - "4,6", - { - "c": "#aaaaaa", - "w": 1.25 - }, - "4,10", - { - "w": 1.25 - }, - "4,11", - { - "w": 1.25 - }, - "4,12", - { - "w": 1.25 - }, - "4,13" - ] - ] - } -} diff --git a/keyboards/keychron/k13_max/ansi/rgb/config.h b/keyboards/keychron/k13_max/ansi/rgb/config.h deleted file mode 100644 index 3fc392fb9a..0000000000 --- a/keyboards/keychron/k13_max/ansi/rgb/config.h +++ /dev/null @@ -1,55 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#pragma once - -#ifdef RGB_MATRIX_ENABLE -/* RGB Matrix driver configuration */ -# define DRIVER_COUNT 2 -# define RGB_MATRIX_LED_COUNT 90 - -# define SPI_SCK_PIN A5 -# define SPI_MISO_PIN A6 -# define SPI_MOSI_PIN A7 - -# define DRIVER_CS_PINS \ - { B8, B9 } -# define SNLED23751_SPI_DIVISOR 16 -# define SPI_DRIVER SPID1 - -/* Scan phase of led driver set as MSKPHASE_9CHANNEL(defined as 0x03 in snled27351.h) */ -# define SNLED27351_PHASE_CHANNEL MSKPHASE_12CHANNEL - -/* Set LED driver current */ -# define SNLED27351_CURRENT_TUNE \ - { 0x14, 0x14, 0x14, 0x14, 0x14, 0x14, 0x14, 0x14, 0x14, 0x14, 0x14, 0x14 } - -/* Set to infinit, which is use in USB mode by default */ -# define RGB_MATRIX_TIMEOUT RGB_MATRIX_TIMEOUT_INFINITE - -/* Allow shutdown of led driver to save power */ -# define RGB_MATRIX_DRIVER_SHUTDOWN_ENABLE -/* Turn off backlight on low brightness to save power */ -# define RGB_MATRIX_BRIGHTNESS_TURN_OFF_VAL 48 - -/* Indications */ -# define LOW_BAT_IND_INDEX \ - { 82 } - -# define RGB_MATRIX_KEYPRESSES -# define RGB_MATRIX_FRAMEBUFFER_EFFECTS - -#endif diff --git a/keyboards/keychron/k13_max/ansi/rgb/info.json b/keyboards/keychron/k13_max/ansi/rgb/info.json deleted file mode 100644 index ad8cf6b16d..0000000000 --- a/keyboards/keychron/k13_max/ansi/rgb/info.json +++ /dev/null @@ -1,36 +0,0 @@ -{ - "usb": { - "pid": "0x0AD0", - "device_version": "1.0.0" - }, - "features": { - "rgb_matrix": true - }, - "rgb_matrix": { - "driver": "snled27351_spi", - "sleep": true, - "animations": { - "band_spiral_val": true, - "breathing": true, - "cycle_all": true, - "cycle_left_right": true, - "cycle_out_in": true, - "cycle_out_in_dual": true, - "cycle_pinwheel": true, - "cycle_spiral": true, - "cycle_up_down": true, - "digital_rain": true, - "dual_beacon": true, - "jellybean_raindrops": true, - "pixel_rain": true, - "rainbow_beacon": true, - "rainbow_moving_chevron": true, - "solid_reactive_multinexus": true, - "solid_reactive_multiwide": true, - "solid_reactive_simple": true, - "solid_splash": true, - "splash": true, - "typing_heatmap": true - } - } -} diff --git a/keyboards/keychron/k13_max/ansi/rgb/keymaps/default/keymap.c b/keyboards/keychron/k13_max/ansi/rgb/keymaps/default/keymap.c deleted file mode 100644 index aef6444aab..0000000000 --- a/keyboards/keychron/k13_max/ansi/rgb/keymaps/default/keymap.c +++ /dev/null @@ -1,67 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#include QMK_KEYBOARD_H -#include "keychron_common.h" - -enum layers { - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN, -}; -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_ansi_90( - KC_ESC, KC_BRID, KC_BRIU, KC_MCTRL, KC_LNPAD, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_P7, KC_P8, KC_P9, - KC_GRV, 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_P4, KC_P5, KC_P6, - 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_P1, KC_P2, KC_P3, - 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_DEL, KC_P0, KC_PDOT, - 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_LCTL, KC_LOPTN, KC_LCMMD, KC_SPC, KC_RCMMD, KC_ROPTN, MO(MAC_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - - [MAC_FN] = LAYOUT_ansi_90( - _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, _______, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, KC_NUM, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - - [WIN_BASE] = LAYOUT_ansi_90( - KC_ESC, 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_P7, KC_P8, KC_P9, - KC_GRV, 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_P4, KC_P5, KC_P6, - 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_P1, KC_P2, KC_P3, - 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_DEL, KC_P0, KC_PDOT, - 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_LCTL, KC_LWIN, KC_LALT, KC_SPC, KC_RALT, KC_RGUI, MO(WIN_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - - [WIN_FN] = LAYOUT_ansi_90( - _______, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, _______, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, KC_NUM, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______) -}; - -// clang-format on -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - if (!process_record_keychron_common(keycode, record)) { - return false; - } - return true; -} diff --git a/keyboards/keychron/k13_max/ansi/rgb/keymaps/via/keymap.c b/keyboards/keychron/k13_max/ansi/rgb/keymaps/via/keymap.c deleted file mode 100644 index aef6444aab..0000000000 --- a/keyboards/keychron/k13_max/ansi/rgb/keymaps/via/keymap.c +++ /dev/null @@ -1,67 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#include QMK_KEYBOARD_H -#include "keychron_common.h" - -enum layers { - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN, -}; -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_ansi_90( - KC_ESC, KC_BRID, KC_BRIU, KC_MCTRL, KC_LNPAD, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_P7, KC_P8, KC_P9, - KC_GRV, 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_P4, KC_P5, KC_P6, - 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_P1, KC_P2, KC_P3, - 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_DEL, KC_P0, KC_PDOT, - 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_LCTL, KC_LOPTN, KC_LCMMD, KC_SPC, KC_RCMMD, KC_ROPTN, MO(MAC_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - - [MAC_FN] = LAYOUT_ansi_90( - _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, _______, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, KC_NUM, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - - [WIN_BASE] = LAYOUT_ansi_90( - KC_ESC, 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_P7, KC_P8, KC_P9, - KC_GRV, 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_P4, KC_P5, KC_P6, - 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_P1, KC_P2, KC_P3, - 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_DEL, KC_P0, KC_PDOT, - 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_LCTL, KC_LWIN, KC_LALT, KC_SPC, KC_RALT, KC_RGUI, MO(WIN_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - - [WIN_FN] = LAYOUT_ansi_90( - _______, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, _______, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, KC_NUM, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______) -}; - -// clang-format on -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - if (!process_record_keychron_common(keycode, record)) { - return false; - } - return true; -} diff --git a/keyboards/keychron/k13_max/ansi/rgb/keymaps/via/rules.mk b/keyboards/keychron/k13_max/ansi/rgb/keymaps/via/rules.mk deleted file mode 100644 index 1e5b99807c..0000000000 --- a/keyboards/keychron/k13_max/ansi/rgb/keymaps/via/rules.mk +++ /dev/null @@ -1 +0,0 @@ -VIA_ENABLE = yes diff --git a/keyboards/keychron/k13_max/ansi/rgb/rgb.c b/keyboards/keychron/k13_max/ansi/rgb/rgb.c deleted file mode 100644 index b9f2ec2b56..0000000000 --- a/keyboards/keychron/k13_max/ansi/rgb/rgb.c +++ /dev/null @@ -1,156 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#include "quantum.h" - -// clang-format off -#ifdef RGB_MATRIX_ENABLE -const snled27351_led_t g_snled27351_leds[RGB_MATRIX_LED_COUNT] = { -/* Refer to SNLED27351 manual for these locations - * driver - * | R location - * | | G location - * | | | B location - * | | | | */ - {0, I_1, G_1, H_1}, - {0, I_2, G_2, H_2}, - {0, I_3, G_3, H_3}, - {0, I_4, G_4, H_4}, - {0, I_5, G_5, H_5}, - {0, I_6, G_6, H_6}, - {0, I_7, G_7, H_7}, - {0, I_8, G_8, H_8}, - {0, I_9, G_9, H_9}, - {0, I_10, G_10, H_10}, - {0, I_11, G_11, H_11}, - {0, I_12, G_12, H_12}, - {0, I_13, G_13, H_13}, - {0, I_15, G_15, H_15}, - {0, I_16, G_16, H_16}, - {1, F_8, D_8, E_8}, - - {0, F_1, D_1, E_1}, - {0, F_2, D_2, E_2}, - {0, F_3, D_3, E_3}, - {0, F_4, D_4, E_4}, - {0, F_5, D_5, E_5}, - {0, F_6, D_6, E_6}, - {0, F_7, D_7, E_7}, - {0, F_8, D_8, E_8}, - {0, F_9, D_9, E_9}, - {0, F_10, D_10, E_10}, - {0, F_11, D_11, E_11}, - {0, F_12, D_12, E_12}, - {0, F_13, D_13, E_13}, - {0, F_14, D_14, E_14}, - {0, F_15, D_15, E_15}, - {0, F_16, D_16, E_16}, - {1, F_9, D_9, E_9}, - - {0, A_1, C_1, B_1}, - {0, A_2, C_2, B_2}, - {0, A_3, C_3, B_3}, - {0, A_4, C_4, B_4}, - {0, A_5, C_5, B_5}, - {0, A_6, C_6, B_6}, - {0, A_7, C_7, B_7}, - {0, A_8, C_8, B_8}, - {0, A_9, C_9, B_9}, - {0, A_10, C_10, B_10}, - {0, A_11, C_11, B_11}, - {0, A_12, C_12, B_12}, - {0, A_13, C_13, B_13}, - {0, A_14, C_14, B_14}, - {0, A_15, C_15, B_15}, - {0, A_16, C_16, B_16}, - {1, F_6, D_6, E_6}, - - {1, I_1, G_1, H_1}, - {1, I_2, G_2, H_2}, - {1, I_3, G_3, H_3}, - {1, I_4, G_4, H_4}, - {1, I_5, G_5, H_5}, - {1, I_6, G_6, H_6}, - {1, I_7, G_7, H_7}, - {1, I_8, G_8, H_8}, - {1, I_9, G_9, H_9}, - {1, I_10, G_10, H_10}, - {1, I_11, G_11, H_11}, - {1, I_12, G_12, H_12}, - {1, I_14, G_14, H_14}, - {1, I_15, G_15, H_15}, - {1, I_16, G_16, H_16}, - {1, I_13, G_13, H_13}, - - {1, C_1, A_1, B_1}, - {1, C_3, A_3, B_3}, - {1, C_4, A_4, B_4}, - {1, C_5, A_5, B_5}, - {1, C_6, A_6, B_6}, - {1, C_7, A_7, B_7}, - {1, C_8, A_8, B_8}, - {1, C_9, A_9, B_9}, - {1, C_10, A_10, B_10}, - {1, C_11, A_11, B_11}, - {1, C_12, A_12, B_12}, - {1, C_14, A_14, B_14}, - {1, C_16, A_16, B_16}, - - {1, F_1, D_1, E_1}, - {1, F_2, D_2, E_2}, - {1, F_3, D_3, E_3}, - {1, F_7, D_7, E_7}, - {1, F_11, D_11, E_11}, - {1, F_12, D_12, E_12}, - {1, F_13, D_13, E_13}, - {1, F_14, D_14, E_14}, - {1, F_15, D_15, E_15}, - {1, F_16, D_16, E_16}, - {1, C_15, A_15, B_15}, -}; - -#define __ NO_LED - -led_config_t g_led_config = { - { - // Key Matrix to LED Index - { 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, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49 }, - { 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, __, 62, 63, 64, 65 }, - { 66, __, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, __, 77, __, 78, __ }, - { 79, 80, 81, __, __, __, 82, __, __, __, 83, 84, 85, 86, 87, 88, 89 }, - }, - { - // LED Index to Physical Position - {0, 0}, {26, 0}, {39, 0}, {52, 0}, {65, 0}, {85, 0}, { 98, 0}, {111, 0}, {124, 0}, {144, 0}, {157, 0}, {170, 0}, {183, 0}, {198, 0}, {211, 0}, {224, 0}, - {0,14}, {13,14}, {26,14}, {39,14}, {52,14}, {65,14}, {79,14}, { 92,14}, {105,14}, {118,14}, {131,14}, {144,14}, {157,14}, {177,14}, {198,14}, {211,14}, {224,14}, - {3,26}, {20,26}, {33,26}, {46,26}, {59,26}, {72,26}, {85,26}, { 98,26}, {111,26}, {124,26}, {138,26}, {151,26}, {164,26}, {180,26}, {198,26}, {211,26}, {224,26}, - {5,39}, {23,39}, {36,39}, {49,39}, {62,39}, {75,39}, {88,39}, {102,39}, {115,39}, {128,39}, {141,39}, {154,39}, {175,39}, {198,39}, {211,39}, {224,39}, - {8,51}, {30,51}, {43,51}, {56,51}, {69,51}, {82,51}, { 95,51}, {108,51}, {121,51}, {134,51}, {147,51}, {172,51}, {211,51}, - {2,64}, {18,64}, {34,64}, {84,64}, {133,64}, {149,64}, {165,64}, {182,64}, {198,64}, {211,64}, {224,64}, - }, - { - // RGB LED Index to Flag - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - } -}; -#endif diff --git a/keyboards/keychron/k13_max/ansi/rgb/rules.mk b/keyboards/keychron/k13_max/ansi/rgb/rules.mk deleted file mode 100644 index 6e7633bfe0..0000000000 --- a/keyboards/keychron/k13_max/ansi/rgb/rules.mk +++ /dev/null @@ -1 +0,0 @@ -# This file intentionally left blank diff --git a/keyboards/keychron/k13_max/ansi/white/config.h b/keyboards/keychron/k13_max/ansi/white/config.h deleted file mode 100644 index 5a059b96e3..0000000000 --- a/keyboards/keychron/k13_max/ansi/white/config.h +++ /dev/null @@ -1,52 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#pragma once - -#ifdef LED_MATRIX_ENABLE -/* LED matrix driver configuration */ -# define DRIVER_COUNT 1 -# define LED_MATRIX_LED_COUNT 90 - -# define SPI_SCK_PIN A5 -# define SPI_MISO_PIN A6 -# define SPI_MOSI_PIN A7 - -# define DRIVER_CS_PINS \ - { B9 } -# define SNLED23751_SPI_DIVISOR 16 -# define SPI_DRIVER SPID1 - -/* Use first 6 channels of LED driver */ -# define SNLED27351_PHASE_CHANNEL MSKPHASE_6CHANNEL - -/* Set LED driver current */ -# define SNLED27351_CURRENT_TUNE \ - { 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20 } - -/* Set to infinit, which is use in USB mode by default */ -# define LED_MATRIX_TIMEOUT LED_MATRIX_TIMEOUT_INFINITE -/* Allow shutdown of led driver to save power */ -# define LED_MATRIX_DRIVER_SHUTDOWN_ENABLE -/* Turn off backlight on low brightness to save power */ -# define LED_MATRIX_BRIGHTNESS_TURN_OFF_VAL 48 - -/* Low battery indicating led */ -# define LOW_BAT_IND_INDEX \ - { 82 } - -# define LED_MATRIX_KEYPRESSES -#endif diff --git a/keyboards/keychron/k13_max/ansi/white/info.json b/keyboards/keychron/k13_max/ansi/white/info.json deleted file mode 100644 index 42e70e0f83..0000000000 --- a/keyboards/keychron/k13_max/ansi/white/info.json +++ /dev/null @@ -1,30 +0,0 @@ -{ - "usb": { - "pid": "0x0AD3", - "device_version": "1.0.0" - }, - "features": { - "led_matrix": true - }, - "led_matrix": { - "driver": "snled27351_spi", - "sleep": true, - "animations": { - "none": true, - "solid": true, - "breathing": true, - "band_pinwheel": true, - "band_spiral": true, - "cycle_left_right": true, - "cycle_up_down": true, - "cycle_out_in": true, - "dual_beacon": true, - "solid_reactive_simple": true, - "solid_reactive_multiwide": true, - "solid_reactive_multinexus": true, - "solid_splash": true, - "wave_left_right": true, - "wave_up_down": true - } - } -} diff --git a/keyboards/keychron/k13_max/ansi/white/keymaps/default/keymap.c b/keyboards/keychron/k13_max/ansi/white/keymaps/default/keymap.c deleted file mode 100644 index 67f2492a18..0000000000 --- a/keyboards/keychron/k13_max/ansi/white/keymaps/default/keymap.c +++ /dev/null @@ -1,67 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#include QMK_KEYBOARD_H -#include "keychron_common.h" - -enum layers { - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN, -}; -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_ansi_90( - KC_ESC, KC_BRID, KC_BRIU, KC_MCTRL, KC_LNPAD, BL_DOWN, BL_UP, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_P7, KC_P8, KC_P9, - KC_GRV, 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_P4, KC_P5, KC_P6, - 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_P1, KC_P2, KC_P3, - 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_DEL, KC_P0, KC_PDOT, - 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_LCTL, KC_LOPTN, KC_LCMMD, KC_SPC, KC_RCMMD, KC_ROPTN, MO(MAC_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - - [MAC_FN] = LAYOUT_ansi_90( - _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, _______, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - BL_TOGG, BL_STEP, BL_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, BL_DOWN, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_NUM, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - - [WIN_BASE] = LAYOUT_ansi_90( - KC_ESC, 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_P7, KC_P8, KC_P9, - KC_GRV, 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_P4, KC_P5, KC_P6, - 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_P1, KC_P2, KC_P3, - 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_DEL, KC_P0, KC_PDOT, - 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_LCTL, KC_LWIN, KC_LALT, KC_SPC, KC_RALT, KC_RGUI, MO(WIN_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - - [WIN_FN] = LAYOUT_ansi_90( - _______, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, BL_DOWN, BL_UP, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, _______, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - BL_TOGG, BL_STEP, BL_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, BL_DOWN, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_NUM, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______) -}; - -// clang-format on -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - if (!process_record_keychron_common(keycode, record)) { - return false; - } - return true; -} diff --git a/keyboards/keychron/k13_max/ansi/white/keymaps/via/keymap.c b/keyboards/keychron/k13_max/ansi/white/keymaps/via/keymap.c deleted file mode 100644 index 67f2492a18..0000000000 --- a/keyboards/keychron/k13_max/ansi/white/keymaps/via/keymap.c +++ /dev/null @@ -1,67 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#include QMK_KEYBOARD_H -#include "keychron_common.h" - -enum layers { - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN, -}; -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_ansi_90( - KC_ESC, KC_BRID, KC_BRIU, KC_MCTRL, KC_LNPAD, BL_DOWN, BL_UP, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_P7, KC_P8, KC_P9, - KC_GRV, 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_P4, KC_P5, KC_P6, - 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_P1, KC_P2, KC_P3, - 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_DEL, KC_P0, KC_PDOT, - 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_LCTL, KC_LOPTN, KC_LCMMD, KC_SPC, KC_RCMMD, KC_ROPTN, MO(MAC_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - - [MAC_FN] = LAYOUT_ansi_90( - _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, _______, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - BL_TOGG, BL_STEP, BL_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, BL_DOWN, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_NUM, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - - [WIN_BASE] = LAYOUT_ansi_90( - KC_ESC, 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_P7, KC_P8, KC_P9, - KC_GRV, 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_P4, KC_P5, KC_P6, - 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_P1, KC_P2, KC_P3, - 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_DEL, KC_P0, KC_PDOT, - 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_LCTL, KC_LWIN, KC_LALT, KC_SPC, KC_RALT, KC_RGUI, MO(WIN_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - - [WIN_FN] = LAYOUT_ansi_90( - _______, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, BL_DOWN, BL_UP, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, _______, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - BL_TOGG, BL_STEP, BL_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, BL_DOWN, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_NUM, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______) -}; - -// clang-format on -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - if (!process_record_keychron_common(keycode, record)) { - return false; - } - return true; -} diff --git a/keyboards/keychron/k13_max/ansi/white/keymaps/via/rules.mk b/keyboards/keychron/k13_max/ansi/white/keymaps/via/rules.mk deleted file mode 100644 index 1e5b99807c..0000000000 --- a/keyboards/keychron/k13_max/ansi/white/keymaps/via/rules.mk +++ /dev/null @@ -1 +0,0 @@ -VIA_ENABLE = yes diff --git a/keyboards/keychron/k13_max/ansi/white/rules.mk b/keyboards/keychron/k13_max/ansi/white/rules.mk deleted file mode 100644 index 6e7633bfe0..0000000000 --- a/keyboards/keychron/k13_max/ansi/white/rules.mk +++ /dev/null @@ -1 +0,0 @@ -# This file intentionally left blank diff --git a/keyboards/keychron/k13_max/ansi/white/white.c b/keyboards/keychron/k13_max/ansi/white/white.c deleted file mode 100644 index 559a86eb5b..0000000000 --- a/keyboards/keychron/k13_max/ansi/white/white.c +++ /dev/null @@ -1,154 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#include "quantum.h" - -// clang-format off -#ifdef LED_MATRIX_ENABLE -const snled27351_led_t g_snled27351_leds[LED_MATRIX_LED_COUNT] = { -/* Refer to SNLED27351 manual for these locations - * driver - * | LED address - * | | */ - {0, F_1}, - {0, F_2}, - {0, F_3}, - {0, F_4}, - {0, F_5}, - {0, F_6}, - {0, F_7}, - {0, F_8}, - {0, F_9}, - {0, F_10}, - {0, F_11}, - {0, F_12}, - {0, F_13}, - {0, F_15}, - {0, F_16}, - {0, A_8}, - - {0, E_1}, - {0, E_2}, - {0, E_3}, - {0, E_4}, - {0, E_5}, - {0, E_6}, - {0, E_7}, - {0, E_8}, - {0, E_9}, - {0, E_10}, - {0, E_11}, - {0, E_12}, - {0, E_13}, - {0, E_14}, - {0, E_15}, - {0, E_16}, - {0, A_9}, - - {0, D_1}, - {0, D_2}, - {0, D_3}, - {0, D_4}, - {0, D_5}, - {0, D_6}, - {0, D_7}, - {0, D_8}, - {0, D_9}, - {0, D_10}, - {0, D_11}, - {0, D_12}, - {0, D_13}, - {0, D_14}, - {0, D_15}, - {0, D_16}, - {0, A_6}, - - {0, C_1}, - {0, C_2}, - {0, C_3}, - {0, C_4}, - {0, C_5}, - {0, C_6}, - {0, C_7}, - {0, C_8}, - {0, C_9}, - {0, C_10}, - {0, C_11}, - {0, C_12}, - {0, C_14}, - {0, C_15}, - {0, C_16}, - {0, C_13}, - - {0, B_1}, - {0, B_3}, - {0, B_4}, - {0, B_5}, - {0, B_6}, - {0, B_7}, - {0, B_8}, - {0, B_9}, - {0, B_10}, - {0, B_11}, - {0, B_12}, - {0, B_14}, - {0, B_16}, - - {0, A_1}, - {0, A_2}, - {0, A_3}, - {0, A_7}, - {0, A_11}, - {0, A_12}, - {0, A_13}, - {0, A_14}, - {0, A_15}, - {0, A_16}, - {0, B_15}, -}; - -#define __ NO_LED - -led_config_t g_led_config = { - { - // Key Matrix to LED Index - { 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, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49 }, - { 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, __, 62, 63, 64, 65 }, - { 66, __, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, __, 77, __, 78, __ }, - { 79, 80, 81, __, __, __, 82, __, __, __, 83, 84, 85, 86, 87, 88, 89 }, - }, - { - // LED Index to Physical Position - {0, 0}, {26, 0}, {39, 0}, {52, 0}, {65, 0}, {85, 0}, { 98, 0}, {111, 0}, {124, 0}, {144, 0}, {157, 0}, {170, 0}, {183, 0}, {198, 0}, {211, 0}, {224, 0}, - {0,14}, {13,14}, {26,14}, {39,14}, {52,14}, {65,14}, {79,14}, { 92,14}, {105,14}, {118,14}, {131,14}, {144,14}, {157,14}, {177,14}, {198,14}, {211,14}, {224,14}, - {3,26}, {20,26}, {33,26}, {46,26}, {59,26}, {72,26}, {85,26}, { 98,26}, {111,26}, {124,26}, {138,26}, {151,26}, {164,26}, {180,26}, {198,26}, {211,26}, {224,26}, - {5,39}, {23,39}, {36,39}, {49,39}, {62,39}, {75,39}, {88,39}, {102,39}, {115,39}, {128,39}, {141,39}, {154,39}, {175,39}, {198,39}, {211,39}, {224,39}, - {8,51}, {30,51}, {43,51}, {56,51}, {69,51}, {82,51}, { 95,51}, {108,51}, {121,51}, {134,51}, {147,51}, {172,51}, {211,51}, - {2,64}, {18,64}, {34,64}, {84,64}, {133,64}, {149,64}, {165,64}, {182,64}, {198,64}, {211,64}, {224,64}, - }, - { - // RGB LED Index to Flag - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - } -}; -#endif diff --git a/keyboards/keychron/k13_max/board.h b/keyboards/keychron/k13_max/board.h deleted file mode 100644 index b200f82d61..0000000000 --- a/keyboards/keychron/k13_max/board.h +++ /dev/null @@ -1,226 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#pragma once - -#include_next - -// clang-format off - -/* Set GPIOA_SWDIO to INPUT and NOT FLOATING */ -#undef VAL_GPIOA_MODER -#define VAL_GPIOA_MODER (PIN_MODE_INPUT(GPIOA_BUTTON) | \ - PIN_MODE_INPUT(GPIOA_PIN1) | \ - PIN_MODE_INPUT(GPIOA_PIN2) | \ - PIN_MODE_INPUT(GPIOA_PIN3) | \ - PIN_MODE_ALTERNATE(GPIOA_CS43L22_LRCK) |\ - PIN_MODE_ALTERNATE(GPIOA_L3GD20_SCL) | \ - PIN_MODE_ALTERNATE(GPIOA_L3GD20_SD0) | \ - PIN_MODE_ALTERNATE(GPIOA_L3GD20_SDI) | \ - PIN_MODE_INPUT(GPIOA_PIN8) | \ - PIN_MODE_INPUT(GPIOA_VBUS_FS) | \ - PIN_MODE_ALTERNATE(GPIOA_OTG_FS_ID) | \ - PIN_MODE_ALTERNATE(GPIOA_OTG_FS_DM) | \ - PIN_MODE_ALTERNATE(GPIOA_OTG_FS_DP) | \ - PIN_MODE_INPUT(GPIOA_SWDIO) | \ - PIN_MODE_INPUT(GPIOA_SWCLK) | \ - PIN_MODE_INPUT(GPIOA_PIN15)) - -#undef VAL_GPIOA_PUPDR -#define VAL_GPIOA_PUPDR (PIN_PUPDR_FLOATING(GPIOA_BUTTON) | \ - PIN_PUPDR_PULLUP(GPIOA_PIN1) | \ - PIN_PUPDR_PULLUP(GPIOA_PIN2) | \ - PIN_PUPDR_PULLUP(GPIOA_PIN3) | \ - PIN_PUPDR_FLOATING(GPIOA_CS43L22_LRCK) |\ - PIN_PUPDR_FLOATING(GPIOA_L3GD20_SCL) | \ - PIN_PUPDR_PULLUP(GPIOA_L3GD20_SD0) | \ - PIN_PUPDR_PULLUP(GPIOA_L3GD20_SDI) | \ - PIN_PUPDR_PULLUP(GPIOA_PIN8) | \ - PIN_PUPDR_FLOATING(GPIOA_VBUS_FS) | \ - PIN_PUPDR_FLOATING(GPIOA_OTG_FS_ID) | \ - PIN_PUPDR_FLOATING(GPIOA_OTG_FS_DM) | \ - PIN_PUPDR_FLOATING(GPIOA_OTG_FS_DP) | \ - PIN_PUPDR_PULLDOWN(GPIOA_SWDIO) | \ - PIN_PUPDR_PULLUP(GPIOA_SWCLK) | \ - PIN_PUPDR_PULLUP(GPIOA_PIN15)) - -#undef VAL_GPIOB_MODER -#define VAL_GPIOB_MODER (PIN_MODE_INPUT(GPIOB_PIN0) | \ - PIN_MODE_INPUT(GPIOB_PIN1) | \ - PIN_MODE_INPUT(GPIOB_PIN2) | \ - PIN_MODE_INPUT(GPIOB_SWO) | \ - PIN_MODE_INPUT(GPIOB_PIN4) | \ - PIN_MODE_INPUT(GPIOB_PIN5) | \ - PIN_MODE_INPUT(GPIOB_LSM303DLHC_SCL) | \ - PIN_MODE_INPUT(GPIOB_PIN7) | \ - PIN_MODE_INPUT(GPIOB_PIN8) | \ - PIN_MODE_INPUT(GPIOB_LSM303DLHC_SDA) | \ - PIN_MODE_INPUT(GPIOB_MP45DT02_CLK_IN) |\ - PIN_MODE_INPUT(GPIOB_PIN11) | \ - PIN_MODE_INPUT(GPIOB_PIN12) | \ - PIN_MODE_INPUT(GPIOB_PIN13) | \ - PIN_MODE_INPUT(GPIOB_PIN14) | \ - PIN_MODE_INPUT(GPIOB_PIN15)) - -#undef VAL_GPIOB_PUPDR -#define VAL_GPIOB_PUPDR (PIN_PUPDR_PULLDOWN(GPIOB_PIN0) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN1) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN2) | \ - PIN_PUPDR_PULLDOWN(GPIOB_SWO) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN4) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN5) | \ - PIN_PUPDR_PULLDOWN(GPIOB_LSM303DLHC_SCL) |\ - PIN_PUPDR_PULLDOWN(GPIOB_PIN7) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN8) | \ - PIN_PUPDR_PULLDOWN(GPIOB_LSM303DLHC_SDA) |\ - PIN_PUPDR_PULLDOWN(GPIOB_MP45DT02_CLK_IN) |\ - PIN_PUPDR_PULLDOWN(GPIOB_PIN11) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN12) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN13) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN14) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN15)) - -#undef VAL_GPIOB_AFRL -#define VAL_GPIOB_AFRL (PIN_AFIO_AF(GPIOB_PIN0, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN1, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN2, 0U) | \ - PIN_AFIO_AF(GPIOB_SWO, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN4, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN5, 0U) | \ - PIN_AFIO_AF(GPIOB_LSM303DLHC_SCL, 0) | \ - PIN_AFIO_AF(GPIOB_PIN7, 0U)) - -#undef VAL_GPIOB_AFRH -#define VAL_GPIOB_AFRH (PIN_AFIO_AF(GPIOB_PIN8, 0U) | \ - PIN_AFIO_AF(GPIOB_LSM303DLHC_SDA, 0) | \ - PIN_AFIO_AF(GPIOB_MP45DT02_CLK_IN, 0U) |\ - PIN_AFIO_AF(GPIOB_PIN11, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN12, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN13, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN14, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN15, 0U)) - -/* C5 Need to be pulldown */ -#undef VAL_GPIOC_MODER -#define VAL_GPIOC_MODER (PIN_MODE_INPUT(GPIOC_OTG_FS_POWER_ON) |\ - PIN_MODE_INPUT(GPIOC_PIN1) | \ - PIN_MODE_INPUT(GPIOC_PIN2) | \ - PIN_MODE_INPUT(GPIOC_CS43L22_AIN4x) | \ - PIN_MODE_INPUT(GPIOC_PIN4) | \ - PIN_MODE_INPUT(GPIOC_PIN5) | \ - PIN_MODE_INPUT(GPIOC_PIN6) | \ - PIN_MODE_INPUT(GPIOC_CS43L22_MCLK) | \ - PIN_MODE_INPUT(GPIOC_PIN8) | \ - PIN_MODE_INPUT(GPIOC_PIN9) | \ - PIN_MODE_INPUT(GPIOC_CS43L22_SCLK) | \ - PIN_MODE_INPUT(GPIOC_PIN11) | \ - PIN_MODE_INPUT(GPIOC_CS43L22_SDIN) | \ - PIN_MODE_INPUT(GPIOC_PIN13) | \ - PIN_MODE_INPUT(GPIOC_OSC32_IN) | \ - PIN_MODE_INPUT(GPIOC_OSC32_OUT)) - -#undef VAL_GPIOC_PUPDR -#define VAL_GPIOC_PUPDR (PIN_PUPDR_PULLUP(GPIOC_OTG_FS_POWER_ON) |\ - PIN_PUPDR_PULLUP(GPIOC_PIN1) | \ - PIN_PUPDR_PULLUP(GPIOC_PIN2) | \ - PIN_PUPDR_PULLUP(GPIOC_CS43L22_AIN4x) |\ - PIN_PUPDR_PULLUP(GPIOC_PIN4) | \ - PIN_PUPDR_PULLDOWN(GPIOC_PIN5) | \ - PIN_PUPDR_PULLUP(GPIOC_PIN6) | \ - PIN_PUPDR_PULLUP(GPIOC_CS43L22_MCLK) | \ - PIN_PUPDR_PULLUP(GPIOC_PIN8) | \ - PIN_PUPDR_PULLUP(GPIOC_PIN9) | \ - PIN_PUPDR_PULLUP(GPIOC_CS43L22_SCLK) | \ - PIN_PUPDR_PULLUP(GPIOC_PIN11) | \ - PIN_PUPDR_PULLUP(GPIOC_CS43L22_SDIN) | \ - PIN_PUPDR_PULLUP(GPIOC_PIN13) | \ - PIN_PUPDR_PULLUP(GPIOC_OSC32_IN) | \ - PIN_PUPDR_PULLUP(GPIOC_OSC32_OUT)) - -/* Set all GPIOD pins to INPUT & PULLUP to avoid FLOATING */ -#undef VAL_GPIOD_MODER -#define VAL_GPIOD_MODER (PIN_MODE_INPUT(GPIOD_PIN0) | \ - PIN_MODE_INPUT(GPIOD_PIN1) | \ - PIN_MODE_INPUT(GPIOD_PIN2) | \ - PIN_MODE_INPUT(GPIOD_PIN3) | \ - PIN_MODE_INPUT(GPIOD_CS43L22_RESET) | \ - PIN_MODE_INPUT(GPIOD_OverCurrent) | \ - PIN_MODE_INPUT(GPIOD_PIN6) | \ - PIN_MODE_INPUT(GPIOD_PIN7) | \ - PIN_MODE_INPUT(GPIOD_PIN8) | \ - PIN_MODE_INPUT(GPIOD_PIN9) | \ - PIN_MODE_INPUT(GPIOD_PIN10) | \ - PIN_MODE_INPUT(GPIOD_PIN11) | \ - PIN_MODE_INPUT(GPIOD_LED4) | \ - PIN_MODE_INPUT(GPIOD_LED3) | \ - PIN_MODE_INPUT(GPIOD_LED5) | \ - PIN_MODE_INPUT(GPIOD_LED6)) - -#undef VAL_GPIOD_PUPDR -#define VAL_GPIOD_PUPDR (PIN_PUPDR_PULLUP(GPIOD_PIN0) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN1) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN2) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN3) | \ - PIN_PUPDR_PULLUP(GPIOD_CS43L22_RESET) |\ - PIN_PUPDR_PULLUP(GPIOD_OverCurrent) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN6) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN7) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN8) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN9) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN10) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN11) | \ - PIN_PUPDR_PULLUP(GPIOD_LED4) | \ - PIN_PUPDR_PULLUP(GPIOD_LED3) | \ - PIN_PUPDR_PULLUP(GPIOD_LED5) | \ - PIN_PUPDR_PULLUP(GPIOD_LED6)) - -/* Set all GPIOE pins to INPUT & PULLUP to avoid FLOATING */ -#undef VAL_GPIOE_MODER -#define VAL_GPIOE_MODER (PIN_MODE_INPUT(GPIOE_L3GD20_INT1) | \ - PIN_MODE_INPUT(GPIOE_L3GD20_INT2) | \ - PIN_MODE_INPUT(GPIOE_LSM303DLHC_DRDY) |\ - PIN_MODE_INPUT(GPIOE_L3GD20_CS) | \ - PIN_MODE_INPUT(GPIOE_LSM303DLHC_INT1) |\ - PIN_MODE_INPUT(GPIOE_LSM303DLHC_INT2) |\ - PIN_MODE_INPUT(GPIOE_PIN6) | \ - PIN_MODE_INPUT(GPIOE_PIN7) | \ - PIN_MODE_INPUT(GPIOE_PIN8) | \ - PIN_MODE_INPUT(GPIOE_PIN9) | \ - PIN_MODE_INPUT(GPIOE_PIN10) | \ - PIN_MODE_INPUT(GPIOE_PIN11) | \ - PIN_MODE_INPUT(GPIOE_PIN12) | \ - PIN_MODE_INPUT(GPIOE_PIN13) | \ - PIN_MODE_INPUT(GPIOE_PIN14) | \ - PIN_MODE_INPUT(GPIOE_PIN15)) - -#undef VAL_GPIOE_PUPDR -#define VAL_GPIOE_PUPDR (PIN_PUPDR_PULLUP(GPIOE_L3GD20_INT1) | \ - PIN_PUPDR_PULLUP(GPIOE_L3GD20_INT2) | \ - PIN_PUPDR_PULLUP(GPIOE_LSM303DLHC_DRDY) |\ - PIN_PUPDR_PULLUP(GPIOE_L3GD20_CS) | \ - PIN_PUPDR_PULLUP(GPIOE_LSM303DLHC_INT1) |\ - PIN_PUPDR_PULLUP(GPIOE_LSM303DLHC_INT2) |\ - PIN_PUPDR_PULLUP(GPIOE_PIN6) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN7) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN8) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN9) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN10) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN11) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN12) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN13) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN14) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN15)) - diff --git a/keyboards/keychron/k13_max/config.h b/keyboards/keychron/k13_max/config.h deleted file mode 100644 index 78b0a00f30..0000000000 --- a/keyboards/keychron/k13_max/config.h +++ /dev/null @@ -1,94 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#pragma once - -/* Caps lock LED */ -#define LED_CAPS_LOCK_PIN A13 -#define LED_PIN_ON_STATE 1 - -#ifdef LK_WIRELESS_ENABLE -/* Hardware configuration */ -# define P2P4_MODE_SELECT_PIN A10 -# define BT_MODE_SELECT_PIN A9 - -# define LKBT51_RESET_PIN C4 -# define LKBT51_INT_INPUT_PIN B1 -# define BLUETOOTH_INT_OUTPUT_PIN A4 - -# define USB_POWER_SENSE_PIN B0 -# define USB_POWER_CONNECTED_LEVEL 0 - -# define BAT_CHARGING_PIN B13 -# define BAT_CHARGING_LEVEL 0 - -# define BAT_LOW_LED_PIN B12 -# define BAT_LOW_LED_PIN_ON_STATE 1 - -# define BT_HOST_DEVICES_COUNT 3 - -# define BT_HOST_LED_PIN_LIST \ - { C9, C9, C9 } -# define HOST_LED_PIN_ON_STATE 0 - -# define P24G_HOST_DEVICES_COUNT 1 - -# define P24G_HOST_LED_PIN_LIST \ - { A8 } - -# if defined(RGB_MATRIX_ENABLE) || defined(LED_MATRIX_ENABLE) - -# define LED_DRIVER_SHUTDOWN_PIN B7 - -# define BT_HOST_LED_MATRIX_LIST \ - { 17, 18, 19 } - -# define P2P4G_HOST_LED_MATRIX_LIST \ - { 20 } - -# 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 - -/* Reinit LED driver on tranport changed */ -# define REINIT_LED_DRIVER 1 - -# endif - -/* Keep USB connection in blueooth mode */ -# define KEEP_USB_CONNECTION_IN_WIRELESS_MODE - -/* Enable bluetooth NKRO */ -# define WIRELESS_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 - -/* Factory test keys */ -#define FN_KEY_1 MO(1) -#define FN_KEY_2 MO(3) -#define BL_TRIG_KEY KC_P5 - -#define MATRIX_IO_DELAY 10 diff --git a/keyboards/keychron/k13_max/firmware/keychron_k13_max_ansi_rgb_via.bin b/keyboards/keychron/k13_max/firmware/keychron_k13_max_ansi_rgb_via.bin deleted file mode 100644 index d66bfb4a40..0000000000 Binary files a/keyboards/keychron/k13_max/firmware/keychron_k13_max_ansi_rgb_via.bin and /dev/null differ diff --git a/keyboards/keychron/k13_max/firmware/keychron_k13_max_ansi_white_via.bin b/keyboards/keychron/k13_max/firmware/keychron_k13_max_ansi_white_via.bin deleted file mode 100644 index 6ba25a3109..0000000000 Binary files a/keyboards/keychron/k13_max/firmware/keychron_k13_max_ansi_white_via.bin and /dev/null differ diff --git a/keyboards/keychron/k13_max/firmware/keychron_k13_max_iso_rgb_via.bin b/keyboards/keychron/k13_max/firmware/keychron_k13_max_iso_rgb_via.bin deleted file mode 100644 index 3be345351d..0000000000 Binary files a/keyboards/keychron/k13_max/firmware/keychron_k13_max_iso_rgb_via.bin and /dev/null differ diff --git a/keyboards/keychron/k13_max/firmware/keychron_k13_max_iso_white_via.bin b/keyboards/keychron/k13_max/firmware/keychron_k13_max_iso_white_via.bin deleted file mode 100644 index 1491cc6574..0000000000 Binary files a/keyboards/keychron/k13_max/firmware/keychron_k13_max_iso_white_via.bin and /dev/null differ diff --git a/keyboards/keychron/k13_max/halconf.h b/keyboards/keychron/k13_max/halconf.h deleted file mode 100644 index 37bcc7c47b..0000000000 --- a/keyboards/keychron/k13_max/halconf.h +++ /dev/null @@ -1,31 +0,0 @@ -/* Copyright 2024 @ 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 - -#define _CHIBIOS_HAL_CONF_VER_8_0_ - -#define HAL_USE_SPI TRUE - -#ifdef LK_WIRELESS_ENABLE -# define HAL_USE_RTC TRUE -#endif - -#if defined(LK_WIRELESS_ENABLE) || defined(ENCODER_ENABLE) -# define PAL_USE_CALLBACKS TRUE -#endif - -#include_next diff --git a/keyboards/keychron/k13_max/info.json b/keyboards/keychron/k13_max/info.json deleted file mode 100644 index 4c237c9fbb..0000000000 --- a/keyboards/keychron/k13_max/info.json +++ /dev/null @@ -1,236 +0,0 @@ -{ - "keyboard_name": "Keychron K13 Max", - "manufacturer": "Keychron", - "url": "https://github.com/Keychron", - "maintainer": "lokher", - "processor": "STM32F401", - "bootloader": "stm32-dfu", - "usb": { - "vid": "0x3434" - }, - "features": { - "bootmagic": true, - "extrakey": true, - "mousekey": true, - "dip_switch": true, - "nkro": true, - "raw": true, - "send_string": true - }, - "matrix_pins": { - "cols": ["C6", "C7", "C8", "A14", "A15", "C10", "C11", "C13", "C14", "C15", "C0", "C1", "C2", "C3", "A0", "A1", "A2"], - "rows": ["C12", "D2", "B3", "B4", "B5", "B6"] - }, - "diode_direction": "ROW2COL", - "dip_switch": { - "pins": ["B14"] - }, - "eeprom": { - "wear_leveling": { - "driver": "embedded_flash", - "logical_size": 2048, - "backing_size": 4096 - } - }, - "layouts": { - "LAYOUT_ansi_90": { - "layout": [ - {"matrix": [0, 0], "x": 0, "y": 0}, - {"matrix": [0, 2], "x": 2, "y": 0}, - {"matrix": [0, 3], "x": 3, "y": 0}, - {"matrix": [0, 4], "x": 4, "y": 0}, - {"matrix": [0, 5], "x": 5, "y": 0}, - {"matrix": [0, 6], "x": 6.5, "y": 0}, - {"matrix": [0, 7], "x": 7.5, "y": 0}, - {"matrix": [0, 8], "x": 8.5, "y": 0}, - {"matrix": [0, 9], "x": 9.5, "y": 0}, - {"matrix": [0, 10], "x": 11, "y": 0}, - {"matrix": [0, 11], "x": 12, "y": 0}, - {"matrix": [0, 12], "x": 13, "y": 0}, - {"matrix": [0, 13], "x": 14, "y": 0}, - {"matrix": [0, 14], "x": 15, "y": 0}, - {"matrix": [0, 15], "x": 16, "y": 0}, - {"matrix": [0, 16], "x": 17, "y": 0}, - - {"matrix": [1, 0], "x": 0, "y": 1.25}, - {"matrix": [1, 1], "x": 1, "y": 1.25}, - {"matrix": [1, 2], "x": 2, "y": 1.25}, - {"matrix": [1, 3], "x": 3, "y": 1.25}, - {"matrix": [1, 4], "x": 4, "y": 1.25}, - {"matrix": [1, 5], "x": 5, "y": 1.25}, - {"matrix": [1, 6], "x": 6, "y": 1.25}, - {"matrix": [1, 7], "x": 7, "y": 1.25}, - {"matrix": [1, 8], "x": 8, "y": 1.25}, - {"matrix": [1, 9], "x": 9, "y": 1.25}, - {"matrix": [1, 10], "x": 10, "y": 1.25}, - {"matrix": [1, 11], "x": 11, "y": 1.25}, - {"matrix": [1, 12], "x": 12, "y": 1.25}, - {"matrix": [1, 13], "x": 13, "y": 1.25, "w": 2}, - {"matrix": [1, 14], "x": 15, "y": 1.25}, - {"matrix": [1, 15], "x": 16, "y": 1.25}, - {"matrix": [1, 16], "x": 17, "y": 1.25}, - - {"matrix": [2, 0], "x": 0, "y": 2.25, "w": 1.5}, - {"matrix": [2, 1], "x": 1.5, "y": 2.25}, - {"matrix": [2, 2], "x": 2.5, "y": 2.25}, - {"matrix": [2, 3], "x": 3.5, "y": 2.25}, - {"matrix": [2, 4], "x": 4.5, "y": 2.25}, - {"matrix": [2, 5], "x": 5.5, "y": 2.25}, - {"matrix": [2, 6], "x": 6.5, "y": 2.25}, - {"matrix": [2, 7], "x": 7.5, "y": 2.25}, - {"matrix": [2, 8], "x": 8.5, "y": 2.25}, - {"matrix": [2, 9], "x": 9.5, "y": 2.25}, - {"matrix": [2, 10], "x": 10.5, "y": 2.25}, - {"matrix": [2, 11], "x": 11.5, "y": 2.25}, - {"matrix": [2, 12], "x": 12.5, "y": 2.25}, - {"matrix": [2, 13], "x": 13.5, "y": 2.25, "w": 1.5}, - {"matrix": [2, 14], "x": 15, "y": 2.25}, - {"matrix": [2, 15], "x": 16, "y": 2.25}, - {"matrix": [2, 16], "x": 17, "y": 2.25}, - - {"matrix": [3, 0], "x": 0, "y": 3.25, "w": 1.75}, - {"matrix": [3, 1], "x": 1.75, "y": 3.25}, - {"matrix": [3, 2], "x": 2.75, "y": 3.25}, - {"matrix": [3, 3], "x": 3.75, "y": 3.25}, - {"matrix": [3, 4], "x": 4.75, "y": 3.25}, - {"matrix": [3, 5], "x": 5.75, "y": 3.25}, - {"matrix": [3, 6], "x": 6.75, "y": 3.25}, - {"matrix": [3, 7], "x": 7.75, "y": 3.25}, - {"matrix": [3, 8], "x": 8.75, "y": 3.25}, - {"matrix": [3, 9], "x": 9.75, "y": 3.25}, - {"matrix": [3, 10], "x": 10.75, "y": 3.25}, - {"matrix": [3, 11], "x": 11.75, "y": 3.25}, - {"matrix": [3, 13], "x": 12.75, "y": 3.25, "w": 2.25}, - {"matrix": [3, 14], "x": 15, "y": 3.25}, - {"matrix": [3, 15], "x": 16, "y": 3.25}, - {"matrix": [3, 16], "x": 17, "y": 3.25}, - - {"matrix": [4, 0], "x": 0, "y": 4.25, "w": 2.25}, - {"matrix": [4, 2], "x": 2.25, "y": 4.25}, - {"matrix": [4, 3], "x": 3.25, "y": 4.25}, - {"matrix": [4, 4], "x": 4.25, "y": 4.25}, - {"matrix": [4, 5], "x": 5.25, "y": 4.25}, - {"matrix": [4, 6], "x": 6.25, "y": 4.25}, - {"matrix": [4, 7], "x": 7.25, "y": 4.25}, - {"matrix": [4, 8], "x": 8.25, "y": 4.25}, - {"matrix": [4, 9], "x": 9.25, "y": 4.25}, - {"matrix": [4, 10], "x": 10.25, "y": 4.25}, - {"matrix": [4, 11], "x": 11.25, "y": 4.25}, - {"matrix": [4, 13], "x": 12.25, "y": 4.25, "w": 2.75}, - {"matrix": [4, 15], "x": 16, "y": 4.25}, - - {"matrix": [5, 0], "x": 0, "y": 5.25, "w": 1.25}, - {"matrix": [5, 1], "x": 1.25, "y": 5.25, "w": 1.25}, - {"matrix": [5, 2], "x": 2.5, "y": 5.25, "w": 1.25}, - {"matrix": [5, 6], "x": 3.75, "y": 5.25, "w": 6.25}, - {"matrix": [5, 10], "x": 10, "y": 5.25, "w": 1.25}, - {"matrix": [5, 11], "x": 11.25, "y": 5.25, "w": 1.25}, - {"matrix": [5, 12], "x": 12.5, "y": 5.25, "w": 1.25}, - {"matrix": [5, 13], "x": 13.75, "y": 5.25, "w": 1.25}, - {"matrix": [5, 14], "x": 15, "y": 5.25}, - {"matrix": [5, 15], "x": 16, "y": 5.25}, - {"matrix": [5, 16], "x": 17, "y": 5.25} - ] - }, - "LAYOUT_iso_91": { - "layout": [ - {"matrix": [0, 0], "x": 0, "y": 0}, - {"matrix": [0, 2], "x": 2, "y": 0}, - {"matrix": [0, 3], "x": 3, "y": 0}, - {"matrix": [0, 4], "x": 4, "y": 0}, - {"matrix": [0, 5], "x": 5, "y": 0}, - {"matrix": [0, 6], "x": 6.5, "y": 0}, - {"matrix": [0, 7], "x": 7.5, "y": 0}, - {"matrix": [0, 8], "x": 8.5, "y": 0}, - {"matrix": [0, 9], "x": 9.5, "y": 0}, - {"matrix": [0, 10], "x": 11, "y": 0}, - {"matrix": [0, 11], "x": 12, "y": 0}, - {"matrix": [0, 12], "x": 13, "y": 0}, - {"matrix": [0, 13], "x": 14, "y": 0}, - {"matrix": [0, 14], "x": 15, "y": 0}, - {"matrix": [0, 15], "x": 16, "y": 0}, - {"matrix": [0, 16], "x": 17, "y": 0}, - - {"matrix": [1, 0], "x": 0, "y": 1.25}, - {"matrix": [1, 1], "x": 1, "y": 1.25}, - {"matrix": [1, 2], "x": 2, "y": 1.25}, - {"matrix": [1, 3], "x": 3, "y": 1.25}, - {"matrix": [1, 4], "x": 4, "y": 1.25}, - {"matrix": [1, 5], "x": 5, "y": 1.25}, - {"matrix": [1, 6], "x": 6, "y": 1.25}, - {"matrix": [1, 7], "x": 7, "y": 1.25}, - {"matrix": [1, 8], "x": 8, "y": 1.25}, - {"matrix": [1, 9], "x": 9, "y": 1.25}, - {"matrix": [1, 10], "x": 10, "y": 1.25}, - {"matrix": [1, 11], "x": 11, "y": 1.25}, - {"matrix": [1, 12], "x": 12, "y": 1.25}, - {"matrix": [1, 13], "x": 13, "y": 1.25, "w": 2}, - {"matrix": [1, 14], "x": 15, "y": 1.25}, - {"matrix": [1, 15], "x": 16, "y": 1.25}, - {"matrix": [1, 16], "x": 17, "y": 1.25}, - - {"matrix": [2, 0], "x": 0, "y": 2.25, "w": 1.5}, - {"matrix": [2, 1], "x": 1.5, "y": 2.25}, - {"matrix": [2, 2], "x": 2.5, "y": 2.25}, - {"matrix": [2, 3], "x": 3.5, "y": 2.25}, - {"matrix": [2, 4], "x": 4.5, "y": 2.25}, - {"matrix": [2, 5], "x": 5.5, "y": 2.25}, - {"matrix": [2, 6], "x": 6.5, "y": 2.25}, - {"matrix": [2, 7], "x": 7.5, "y": 2.25}, - {"matrix": [2, 8], "x": 8.5, "y": 2.25}, - {"matrix": [2, 9], "x": 9.5, "y": 2.25}, - {"matrix": [2, 10], "x": 10.5, "y": 2.25}, - {"matrix": [2, 11], "x": 11.5, "y": 2.25}, - {"matrix": [2, 12], "x": 12.5, "y": 2.25}, - {"matrix": [2, 14], "x": 15, "y": 2.25}, - {"matrix": [2, 15], "x": 16, "y": 2.25}, - {"matrix": [2, 16], "x": 17, "y": 2.25}, - - {"matrix": [3, 0], "x": 0, "y": 3.25, "w": 1.75}, - {"matrix": [3, 1], "x": 1.75, "y": 3.25}, - {"matrix": [3, 2], "x": 2.75, "y": 3.25}, - {"matrix": [3, 3], "x": 3.75, "y": 3.25}, - {"matrix": [3, 4], "x": 4.75, "y": 3.25}, - {"matrix": [3, 5], "x": 5.75, "y": 3.25}, - {"matrix": [3, 6], "x": 6.75, "y": 3.25}, - {"matrix": [3, 7], "x": 7.75, "y": 3.25}, - {"matrix": [3, 8], "x": 8.75, "y": 3.25}, - {"matrix": [3, 9], "x": 9.75, "y": 3.25}, - {"matrix": [3, 10], "x": 10.75, "y": 3.25}, - {"matrix": [3, 11], "x": 11.75, "y": 3.25}, - {"matrix": [3, 13], "x": 12.75, "y": 3.25}, - {"matrix": [2, 13], "x": 13.75, "y": 2.25, "w": 1.25, "h": 2}, - {"matrix": [3, 14], "x": 15, "y": 3.25}, - {"matrix": [3, 15], "x": 16, "y": 3.25}, - {"matrix": [3, 16], "x": 17, "y": 3.25}, - - {"matrix": [4, 0], "x": 0, "y": 4.25, "w": 1.25}, - {"matrix": [4, 1], "x": 1.25, "y": 4.25}, - {"matrix": [4, 2], "x": 2.25, "y": 4.25}, - {"matrix": [4, 3], "x": 3.25, "y": 4.25}, - {"matrix": [4, 4], "x": 4.25, "y": 4.25}, - {"matrix": [4, 5], "x": 5.25, "y": 4.25}, - {"matrix": [4, 6], "x": 6.25, "y": 4.25}, - {"matrix": [4, 7], "x": 7.25, "y": 4.25}, - {"matrix": [4, 8], "x": 8.25, "y": 4.25}, - {"matrix": [4, 9], "x": 9.25, "y": 4.25}, - {"matrix": [4, 10], "x": 10.25, "y": 4.25}, - {"matrix": [4, 11], "x": 11.25, "y": 4.25}, - {"matrix": [4, 13], "x": 12.25, "y": 4.25, "w": 2.75}, - {"matrix": [4, 15], "x": 16, "y": 4.25}, - - {"matrix": [5, 0], "x": 0, "y": 5.25, "w": 1.25}, - {"matrix": [5, 1], "x": 1.25, "y": 5.25, "w": 1.25}, - {"matrix": [5, 2], "x": 2.5, "y": 5.25, "w": 1.25}, - {"matrix": [5, 6], "x": 3.75, "y": 5.25, "w": 6.25}, - {"matrix": [5, 10], "x": 10, "y": 5.25, "w": 1.25}, - {"matrix": [5, 11], "x": 11.25, "y": 5.25, "w": 1.25}, - {"matrix": [5, 12], "x": 12.5, "y": 5.25, "w": 1.25}, - {"matrix": [5, 13], "x": 13.75, "y": 5.25, "w": 1.25}, - {"matrix": [5, 14], "x": 15, "y": 5.25}, - {"matrix": [5, 15], "x": 16, "y": 5.25}, - {"matrix": [5, 16], "x": 17, "y": 5.25} - ] - } - } -} diff --git a/keyboards/keychron/k13_max/iso/rgb/config.h b/keyboards/keychron/k13_max/iso/rgb/config.h deleted file mode 100644 index 7d2f5c71b9..0000000000 --- a/keyboards/keychron/k13_max/iso/rgb/config.h +++ /dev/null @@ -1,55 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#pragma once - -#ifdef RGB_MATRIX_ENABLE -/* RGB Matrix driver configuration */ -# define DRIVER_COUNT 2 -# define RGB_MATRIX_LED_COUNT 91 - -# define SPI_SCK_PIN A5 -# define SPI_MISO_PIN A6 -# define SPI_MOSI_PIN A7 - -# define DRIVER_CS_PINS \ - { B8, B9 } -# define SNLED23751_SPI_DIVISOR 16 -# define SPI_DRIVER SPID1 - -/* Scan phase of led driver set as MSKPHASE_9CHANNEL(defined as 0x03 in snled27351.h) */ -# define SNLED27351_PHASE_CHANNEL MSKPHASE_12CHANNEL - -/* Set LED driver current */ -# define SNLED27351_CURRENT_TUNE \ - { 0x14, 0x14, 0x14, 0x14, 0x14, 0x14, 0x14, 0x14, 0x14, 0x14, 0x14, 0x14 } - -/* Set to infinit, which is use in USB mode by default */ -# define RGB_MATRIX_TIMEOUT RGB_MATRIX_TIMEOUT_INFINITE - -/* Allow shutdown of led driver to save power */ -# define RGB_MATRIX_DRIVER_SHUTDOWN_ENABLE -/* Turn off backlight on low brightness to save power */ -# define RGB_MATRIX_BRIGHTNESS_TURN_OFF_VAL 48 - -/* Indications */ -# define LOW_BAT_IND_INDEX \ - { 83 } - -# define RGB_MATRIX_KEYPRESSES -# define RGB_MATRIX_FRAMEBUFFER_EFFECTS - -#endif diff --git a/keyboards/keychron/k13_max/iso/rgb/info.json b/keyboards/keychron/k13_max/iso/rgb/info.json deleted file mode 100644 index 2925983ec4..0000000000 --- a/keyboards/keychron/k13_max/iso/rgb/info.json +++ /dev/null @@ -1,36 +0,0 @@ -{ - "usb": { - "pid": "0x0AD1", - "device_version": "1.0.0" - }, - "features": { - "rgb_matrix": true - }, - "rgb_matrix": { - "driver": "snled27351_spi", - "sleep": true, - "animations": { - "band_spiral_val": true, - "breathing": true, - "cycle_all": true, - "cycle_left_right": true, - "cycle_out_in": true, - "cycle_out_in_dual": true, - "cycle_pinwheel": true, - "cycle_spiral": true, - "cycle_up_down": true, - "digital_rain": true, - "dual_beacon": true, - "jellybean_raindrops": true, - "pixel_rain": true, - "rainbow_beacon": true, - "rainbow_moving_chevron": true, - "solid_reactive_multinexus": true, - "solid_reactive_multiwide": true, - "solid_reactive_simple": true, - "solid_splash": true, - "splash": true, - "typing_heatmap": true - } - } -} diff --git a/keyboards/keychron/k13_max/iso/rgb/keymaps/default/keymap.c b/keyboards/keychron/k13_max/iso/rgb/keymaps/default/keymap.c deleted file mode 100644 index 36543a59e8..0000000000 --- a/keyboards/keychron/k13_max/iso/rgb/keymaps/default/keymap.c +++ /dev/null @@ -1,67 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#include QMK_KEYBOARD_H -#include "keychron_common.h" - -enum layers { - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN, -}; -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_iso_91( - KC_ESC, KC_BRID, KC_BRIU, KC_MCTRL, KC_LNPAD, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_P7, KC_P8, KC_P9, - KC_GRV, 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_P4, KC_P5, KC_P6, - 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_P1, KC_P2, KC_P3, - 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_NUHS, KC_ENT, KC_DEL, KC_P0, KC_PDOT, - KC_LSFT, KC_NUBS, 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_LCTL, KC_LOPTN, KC_LCMMD, KC_SPC, KC_RCMMD, KC_ROPTN, MO(MAC_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - - [MAC_FN] = LAYOUT_iso_91( - _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, _______, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, KC_NUM, _______, _______, - _______, _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - - [WIN_BASE] = LAYOUT_iso_91( - KC_ESC, 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_P7, KC_P8, KC_P9, - KC_GRV, 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_P4, KC_P5, KC_P6, - 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_P1, KC_P2, KC_P3, - 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_NUHS, KC_ENT, KC_DEL, KC_P0, KC_PDOT, - KC_LSFT, KC_NUBS, 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_LCTL, KC_LWIN, KC_LALT, KC_SPC, KC_RALT, KC_RGUI, MO(WIN_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - - [WIN_FN] = LAYOUT_iso_91( - _______, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, _______, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, KC_NUM, _______, _______, - _______, _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______) -}; - -// clang-format on -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - if (!process_record_keychron_common(keycode, record)) { - return false; - } - return true; -} diff --git a/keyboards/keychron/k13_max/iso/rgb/keymaps/via/keymap.c b/keyboards/keychron/k13_max/iso/rgb/keymaps/via/keymap.c deleted file mode 100644 index 36543a59e8..0000000000 --- a/keyboards/keychron/k13_max/iso/rgb/keymaps/via/keymap.c +++ /dev/null @@ -1,67 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#include QMK_KEYBOARD_H -#include "keychron_common.h" - -enum layers { - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN, -}; -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_iso_91( - KC_ESC, KC_BRID, KC_BRIU, KC_MCTRL, KC_LNPAD, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_P7, KC_P8, KC_P9, - KC_GRV, 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_P4, KC_P5, KC_P6, - 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_P1, KC_P2, KC_P3, - 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_NUHS, KC_ENT, KC_DEL, KC_P0, KC_PDOT, - KC_LSFT, KC_NUBS, 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_LCTL, KC_LOPTN, KC_LCMMD, KC_SPC, KC_RCMMD, KC_ROPTN, MO(MAC_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - - [MAC_FN] = LAYOUT_iso_91( - _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, _______, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, KC_NUM, _______, _______, - _______, _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - - [WIN_BASE] = LAYOUT_iso_91( - KC_ESC, 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_P7, KC_P8, KC_P9, - KC_GRV, 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_P4, KC_P5, KC_P6, - 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_P1, KC_P2, KC_P3, - 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_NUHS, KC_ENT, KC_DEL, KC_P0, KC_PDOT, - KC_LSFT, KC_NUBS, 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_LCTL, KC_LWIN, KC_LALT, KC_SPC, KC_RALT, KC_RGUI, MO(WIN_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - - [WIN_FN] = LAYOUT_iso_91( - _______, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, _______, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, KC_NUM, _______, _______, - _______, _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______) -}; - -// clang-format on -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - if (!process_record_keychron_common(keycode, record)) { - return false; - } - return true; -} diff --git a/keyboards/keychron/k13_max/iso/rgb/keymaps/via/rules.mk b/keyboards/keychron/k13_max/iso/rgb/keymaps/via/rules.mk deleted file mode 100644 index 1e5b99807c..0000000000 --- a/keyboards/keychron/k13_max/iso/rgb/keymaps/via/rules.mk +++ /dev/null @@ -1 +0,0 @@ -VIA_ENABLE = yes diff --git a/keyboards/keychron/k13_max/iso/rgb/rgb.c b/keyboards/keychron/k13_max/iso/rgb/rgb.c deleted file mode 100644 index 131f48b267..0000000000 --- a/keyboards/keychron/k13_max/iso/rgb/rgb.c +++ /dev/null @@ -1,157 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#include "quantum.h" - -// clang-format off -#ifdef RGB_MATRIX_ENABLE -const snled27351_led_t g_snled27351_leds[RGB_MATRIX_LED_COUNT] = { -/* Refer to SNLED27351 manual for these locations - * driver - * | R location - * | | G location - * | | | B location - * | | | | */ - {0, I_1, G_1, H_1}, - {0, I_2, G_2, H_2}, - {0, I_3, G_3, H_3}, - {0, I_4, G_4, H_4}, - {0, I_5, G_5, H_5}, - {0, I_6, G_6, H_6}, - {0, I_7, G_7, H_7}, - {0, I_8, G_8, H_8}, - {0, I_9, G_9, H_9}, - {0, I_10, G_10, H_10}, - {0, I_11, G_11, H_11}, - {0, I_12, G_12, H_12}, - {0, I_13, G_13, H_13}, - {0, I_15, G_15, H_15}, - {0, I_16, G_16, H_16}, - {1, F_8, D_8, E_8}, - - {0, F_1, D_1, E_1}, - {0, F_2, D_2, E_2}, - {0, F_3, D_3, E_3}, - {0, F_4, D_4, E_4}, - {0, F_5, D_5, E_5}, - {0, F_6, D_6, E_6}, - {0, F_7, D_7, E_7}, - {0, F_8, D_8, E_8}, - {0, F_9, D_9, E_9}, - {0, F_10, D_10, E_10}, - {0, F_11, D_11, E_11}, - {0, F_12, D_12, E_12}, - {0, F_13, D_13, E_13}, - {0, F_14, D_14, E_14}, - {0, F_15, D_15, E_15}, - {0, F_16, D_16, E_16}, - {1, F_9, D_9, E_9}, - - {0, A_1, C_1, B_1}, - {0, A_2, C_2, B_2}, - {0, A_3, C_3, B_3}, - {0, A_4, C_4, B_4}, - {0, A_5, C_5, B_5}, - {0, A_6, C_6, B_6}, - {0, A_7, C_7, B_7}, - {0, A_8, C_8, B_8}, - {0, A_9, C_9, B_9}, - {0, A_10, C_10, B_10}, - {0, A_11, C_11, B_11}, - {0, A_12, C_12, B_12}, - {0, A_13, C_13, B_13}, - {0, A_14, C_14, B_14}, - {0, A_15, C_15, B_15}, - {0, A_16, C_16, B_16}, - {1, F_6, D_6, E_6}, - - {1, I_1, G_1, H_1}, - {1, I_2, G_2, H_2}, - {1, I_3, G_3, H_3}, - {1, I_4, G_4, H_4}, - {1, I_5, G_5, H_5}, - {1, I_6, G_6, H_6}, - {1, I_7, G_7, H_7}, - {1, I_8, G_8, H_8}, - {1, I_9, G_9, H_9}, - {1, I_10, G_10, H_10}, - {1, I_11, G_11, H_11}, - {1, I_12, G_12, H_12}, - {1, I_14, G_14, H_14}, - {1, I_15, G_15, H_15}, - {1, I_16, G_16, H_16}, - {1, I_13, G_13, H_13}, - - {1, C_1, A_1, B_1}, - {1, C_2, A_2, B_2}, - {1, C_3, A_3, B_3}, - {1, C_4, A_4, B_4}, - {1, C_5, A_5, B_5}, - {1, C_6, A_6, B_6}, - {1, C_7, A_7, B_7}, - {1, C_8, A_8, B_8}, - {1, C_9, A_9, B_9}, - {1, C_10, A_10, B_10}, - {1, C_11, A_11, B_11}, - {1, C_12, A_12, B_12}, - {1, C_14, A_14, B_14}, - {1, C_16, A_16, B_16}, - - {1, F_1, D_1, E_1}, - {1, F_2, D_2, E_2}, - {1, F_3, D_3, E_3}, - {1, F_7, D_7, E_7}, - {1, F_11, D_11, E_11}, - {1, F_12, D_12, E_12}, - {1, F_13, D_13, E_13}, - {1, F_14, D_14, E_14}, - {1, F_15, D_15, E_15}, - {1, F_16, D_16, E_16}, - {1, C_15, A_15, B_15}, -}; - -#define __ NO_LED - -led_config_t g_led_config = { - { - // Key Matrix to LED Index - { 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, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49 }, - { 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, __, 62, 63, 64, 65 }, - { 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, __, 78, __, 79, __ }, - { 80, 81, 82, __, __, __, 83, __, __, __, 84, 85, 86, 87, 88, 89, 90 }, - }, - { - // LED Index to Physical Position - {0, 0}, {26, 0}, {39, 0}, {52, 0}, {65, 0}, {85, 0}, { 98, 0}, {111, 0}, {124, 0}, {144, 0}, {157, 0}, {170, 0}, {183, 0}, {198, 0}, {211, 0}, {224, 0}, - {0,14}, {13,14}, {26,14}, {39,14}, {52,14}, {65,14}, {79,14}, { 92,14}, {105,14}, {118,14}, {131,14}, {144,14}, {157,14}, {177,14}, {198,14}, {211,14}, {224,14}, - {3,26}, {20,26}, {33,26}, {46,26}, {59,26}, {72,26}, {85,26}, { 98,26}, {111,26}, {124,26}, {138,26}, {151,26}, {164,26}, {180,32}, {198,26}, {211,26}, {224,26}, - {5,39}, {23,39}, {36,39}, {49,39}, {62,39}, {75,39}, {88,39}, {102,39}, {115,39}, {128,39}, {141,39}, {154,39}, {167,39}, {198,39}, {211,39}, {224,39}, - {3,51}, {16,51}, {30,51}, {43,51}, {56,51}, {69,51}, {82,51}, { 95,51}, {108,51}, {121,51}, {134,51}, {147,51}, {172,51}, {211,51}, - {2,64}, {18,64}, {34,64}, {84,64}, {133,64}, {149,64}, {165,64}, {182,64}, {198,64}, {211,64}, {224,64}, - }, - { - // RGB LED Index to Flag - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - } -}; -#endif diff --git a/keyboards/keychron/k13_max/iso/rgb/rules.mk b/keyboards/keychron/k13_max/iso/rgb/rules.mk deleted file mode 100644 index 6e7633bfe0..0000000000 --- a/keyboards/keychron/k13_max/iso/rgb/rules.mk +++ /dev/null @@ -1 +0,0 @@ -# This file intentionally left blank diff --git a/keyboards/keychron/k13_max/iso/white/config.h b/keyboards/keychron/k13_max/iso/white/config.h deleted file mode 100644 index fb7e6158bc..0000000000 --- a/keyboards/keychron/k13_max/iso/white/config.h +++ /dev/null @@ -1,52 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#pragma once - -#ifdef LED_MATRIX_ENABLE -/* LED matrix driver configuration */ -# define DRIVER_COUNT 1 -# define LED_MATRIX_LED_COUNT 91 - -# define SPI_SCK_PIN A5 -# define SPI_MISO_PIN A6 -# define SPI_MOSI_PIN A7 - -# define DRIVER_CS_PINS \ - { B9 } -# define SNLED23751_SPI_DIVISOR 16 -# define SPI_DRIVER SPID1 - -/* Use first 6 channels of LED driver */ -# define SNLED27351_PHASE_CHANNEL MSKPHASE_6CHANNEL - -/* Set LED driver current */ -# define SNLED27351_CURRENT_TUNE \ - { 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20 } - -/* Set to infinit, which is use in USB mode by default */ -# define LED_MATRIX_TIMEOUT LED_MATRIX_TIMEOUT_INFINITE -/* Allow shutdown of led driver to save power */ -# define LED_MATRIX_DRIVER_SHUTDOWN_ENABLE -/* Turn off backlight on low brightness to save power */ -# define LED_MATRIX_BRIGHTNESS_TURN_OFF_VAL 48 - -/* Low battery indicating led */ -# define LOW_BAT_IND_INDEX \ - { 83 } - -# define LED_MATRIX_KEYPRESSES -#endif diff --git a/keyboards/keychron/k13_max/iso/white/info.json b/keyboards/keychron/k13_max/iso/white/info.json deleted file mode 100644 index 8b71a53ddd..0000000000 --- a/keyboards/keychron/k13_max/iso/white/info.json +++ /dev/null @@ -1,30 +0,0 @@ -{ - "usb": { - "pid": "0x0AD4", - "device_version": "1.0.0" - }, - "features": { - "led_matrix": true - }, - "led_matrix": { - "driver": "snled27351_spi", - "sleep": true, - "animations": { - "none": true, - "solid": true, - "breathing": true, - "band_pinwheel": true, - "band_spiral": true, - "cycle_left_right": true, - "cycle_up_down": true, - "cycle_out_in": true, - "dual_beacon": true, - "solid_reactive_simple": true, - "solid_reactive_multiwide": true, - "solid_reactive_multinexus": true, - "solid_splash": true, - "wave_left_right": true, - "wave_up_down": true - } - } -} diff --git a/keyboards/keychron/k13_max/iso/white/keymaps/default/keymap.c b/keyboards/keychron/k13_max/iso/white/keymaps/default/keymap.c deleted file mode 100644 index ef8e4001d8..0000000000 --- a/keyboards/keychron/k13_max/iso/white/keymaps/default/keymap.c +++ /dev/null @@ -1,67 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#include QMK_KEYBOARD_H -#include "keychron_common.h" - -enum layers { - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN, -}; -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_iso_91( - KC_ESC, KC_BRID, KC_BRIU, KC_MCTRL, KC_LNPAD, BL_DOWN, BL_UP, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_P7, KC_P8, KC_P9, - KC_GRV, 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_P4, KC_P5, KC_P6, - 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_P1, KC_P2, KC_P3, - 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_NUHS, KC_ENT, KC_DEL, KC_P0, KC_PDOT, - KC_LSFT, KC_NUBS, 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_LCTL, KC_LOPTN, KC_LCMMD, KC_SPC, KC_RCMMD, KC_ROPTN, MO(MAC_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - - [MAC_FN] = LAYOUT_iso_91( - _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, _______, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - BL_TOGG, BL_STEP, BL_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, BL_DOWN, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_NUM, _______, _______, - _______, _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - - [WIN_BASE] = LAYOUT_iso_91( - KC_ESC, 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_P7, KC_P8, KC_P9, - KC_GRV, 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_P4, KC_P5, KC_P6, - 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_P1, KC_P2, KC_P3, - 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_NUHS, KC_ENT, KC_DEL, KC_P0, KC_PDOT, - KC_LSFT, KC_NUBS, 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_LCTL, KC_LWIN, KC_LALT, KC_SPC, KC_RALT, KC_RGUI, MO(WIN_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - - [WIN_FN] = LAYOUT_iso_91( - _______, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, BL_DOWN, BL_UP, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, _______, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - BL_TOGG, BL_STEP, BL_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, BL_DOWN, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_NUM, _______, _______, - _______, _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______) -}; - -// clang-format on -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - if (!process_record_keychron_common(keycode, record)) { - return false; - } - return true; -} diff --git a/keyboards/keychron/k13_max/iso/white/keymaps/via/keymap.c b/keyboards/keychron/k13_max/iso/white/keymaps/via/keymap.c deleted file mode 100644 index ef8e4001d8..0000000000 --- a/keyboards/keychron/k13_max/iso/white/keymaps/via/keymap.c +++ /dev/null @@ -1,67 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#include QMK_KEYBOARD_H -#include "keychron_common.h" - -enum layers { - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN, -}; -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_iso_91( - KC_ESC, KC_BRID, KC_BRIU, KC_MCTRL, KC_LNPAD, BL_DOWN, BL_UP, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_P7, KC_P8, KC_P9, - KC_GRV, 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_P4, KC_P5, KC_P6, - 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_P1, KC_P2, KC_P3, - 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_NUHS, KC_ENT, KC_DEL, KC_P0, KC_PDOT, - KC_LSFT, KC_NUBS, 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_LCTL, KC_LOPTN, KC_LCMMD, KC_SPC, KC_RCMMD, KC_ROPTN, MO(MAC_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - - [MAC_FN] = LAYOUT_iso_91( - _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, _______, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - BL_TOGG, BL_STEP, BL_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, BL_DOWN, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_NUM, _______, _______, - _______, _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - - [WIN_BASE] = LAYOUT_iso_91( - KC_ESC, 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_P7, KC_P8, KC_P9, - KC_GRV, 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_P4, KC_P5, KC_P6, - 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_P1, KC_P2, KC_P3, - 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_NUHS, KC_ENT, KC_DEL, KC_P0, KC_PDOT, - KC_LSFT, KC_NUBS, 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_LCTL, KC_LWIN, KC_LALT, KC_SPC, KC_RALT, KC_RGUI, MO(WIN_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - - [WIN_FN] = LAYOUT_iso_91( - _______, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, BL_DOWN, BL_UP, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, _______, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - BL_TOGG, BL_STEP, BL_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, BL_DOWN, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_NUM, _______, _______, - _______, _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______) -}; - -// clang-format on -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - if (!process_record_keychron_common(keycode, record)) { - return false; - } - return true; -} diff --git a/keyboards/keychron/k13_max/iso/white/keymaps/via/rules.mk b/keyboards/keychron/k13_max/iso/white/keymaps/via/rules.mk deleted file mode 100644 index 1e5b99807c..0000000000 --- a/keyboards/keychron/k13_max/iso/white/keymaps/via/rules.mk +++ /dev/null @@ -1 +0,0 @@ -VIA_ENABLE = yes diff --git a/keyboards/keychron/k13_max/iso/white/rules.mk b/keyboards/keychron/k13_max/iso/white/rules.mk deleted file mode 100644 index 6e7633bfe0..0000000000 --- a/keyboards/keychron/k13_max/iso/white/rules.mk +++ /dev/null @@ -1 +0,0 @@ -# This file intentionally left blank diff --git a/keyboards/keychron/k13_max/iso/white/white.c b/keyboards/keychron/k13_max/iso/white/white.c deleted file mode 100644 index d5a54555b7..0000000000 --- a/keyboards/keychron/k13_max/iso/white/white.c +++ /dev/null @@ -1,155 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#include "quantum.h" - -// clang-format off -#ifdef LED_MATRIX_ENABLE -const snled27351_led_t g_snled27351_leds[LED_MATRIX_LED_COUNT] = { -/* Refer to SNLED27351 manual for these locations - * driver - * | LED address - * | | */ - {0, F_1}, - {0, F_2}, - {0, F_3}, - {0, F_4}, - {0, F_5}, - {0, F_6}, - {0, F_7}, - {0, F_8}, - {0, F_9}, - {0, F_10}, - {0, F_11}, - {0, F_12}, - {0, F_13}, - {0, F_15}, - {0, F_16}, - {0, A_8}, - - {0, E_1}, - {0, E_2}, - {0, E_3}, - {0, E_4}, - {0, E_5}, - {0, E_6}, - {0, E_7}, - {0, E_8}, - {0, E_9}, - {0, E_10}, - {0, E_11}, - {0, E_12}, - {0, E_13}, - {0, E_14}, - {0, E_15}, - {0, E_16}, - {0, A_9}, - - {0, D_1}, - {0, D_2}, - {0, D_3}, - {0, D_4}, - {0, D_5}, - {0, D_6}, - {0, D_7}, - {0, D_8}, - {0, D_9}, - {0, D_10}, - {0, D_11}, - {0, D_12}, - {0, D_13}, - {0, D_14}, - {0, D_15}, - {0, D_16}, - {0, A_6}, - - {0, C_1}, - {0, C_2}, - {0, C_3}, - {0, C_4}, - {0, C_5}, - {0, C_6}, - {0, C_7}, - {0, C_8}, - {0, C_9}, - {0, C_10}, - {0, C_11}, - {0, C_12}, - {0, C_14}, - {0, C_15}, - {0, C_16}, - {0, C_13}, - - {0, B_1}, - {0, B_2}, - {0, B_3}, - {0, B_4}, - {0, B_5}, - {0, B_6}, - {0, B_7}, - {0, B_8}, - {0, B_9}, - {0, B_10}, - {0, B_11}, - {0, B_12}, - {0, B_14}, - {0, B_16}, - - {0, A_1}, - {0, A_2}, - {0, A_3}, - {0, A_7}, - {0, A_11}, - {0, A_12}, - {0, A_13}, - {0, A_14}, - {0, A_15}, - {0, A_16}, - {0, B_15}, -}; - -#define __ NO_LED - -led_config_t g_led_config = { - { - // Key Matrix to LED Index - { 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, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49 }, - { 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, __, 62, 63, 64, 65 }, - { 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, __, 78, __, 79, __ }, - { 80, 81, 82, __, __, __, 83, __, __, __, 84, 85, 86, 87, 88, 89, 90 }, - }, - { - // LED Index to Physical Position - {0, 0}, {26, 0}, {39, 0}, {52, 0}, {65, 0}, {85, 0}, { 98, 0}, {111, 0}, {124, 0}, {144, 0}, {157, 0}, {170, 0}, {183, 0}, {198, 0}, {211, 0}, {224, 0}, - {0,14}, {13,14}, {26,14}, {39,14}, {52,14}, {65,14}, {79,14}, { 92,14}, {105,14}, {118,14}, {131,14}, {144,14}, {157,14}, {177,14}, {198,14}, {211,14}, {224,14}, - {3,26}, {20,26}, {33,26}, {46,26}, {59,26}, {72,26}, {85,26}, { 98,26}, {111,26}, {124,26}, {138,26}, {151,26}, {164,26}, {180,32}, {198,26}, {211,26}, {224,26}, - {5,39}, {23,39}, {36,39}, {49,39}, {62,39}, {75,39}, {88,39}, {102,39}, {115,39}, {128,39}, {141,39}, {154,39}, {167,39}, {198,39}, {211,39}, {224,39}, - {3,51}, {16,51}, {30,51}, {43,51}, {56,51}, {69,51}, {82,51}, { 95,51}, {108,51}, {121,51}, {134,51}, {147,51}, {172,51}, {211,51}, - {2,64}, {18,64}, {34,64}, {84,64}, {133,64}, {149,64}, {165,64}, {182,64}, {198,64}, {211,64}, {224,64}, - }, - { - // LED Index to Flag - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - } -}; -#endif diff --git a/keyboards/keychron/k13_max/k13_max.c b/keyboards/keychron/k13_max/k13_max.c deleted file mode 100644 index f499a3c701..0000000000 --- a/keyboards/keychron/k13_max/k13_max.c +++ /dev/null @@ -1,101 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#include "quantum.h" -#include "keychron_task.h" -#ifdef FACTORY_TEST_ENABLE -# include "factory_test.h" -# include "keychron_common.h" -#endif -#ifdef LK_WIRELESS_ENABLE -# include "lkbt51.h" -# include "wireless.h" -# include "transport.h" -# include "keychron_wireless_common.h" -# include "battery.h" -#endif - -#define POWER_ON_LED_DURATION 3000 -static uint32_t power_on_indicator_timer; - -#ifdef LK_WIRELESS_ENABLE -pin_t bt_led_pins[] = BT_HOST_LED_PIN_LIST; -pin_t p24g_led_pins[] = P24G_HOST_LED_PIN_LIST; -#endif - -bool dip_switch_update_kb(uint8_t index, bool active) { - if (index == 0) { - default_layer_set(1UL << (active ? 0 : 2)); - } - dip_switch_update_user(index, active); - - return true; -} - -void keyboard_post_init_kb(void) { -#ifdef LK_WIRELESS_ENABLE - palSetLineMode(P2P4_MODE_SELECT_PIN, PAL_MODE_INPUT); - palSetLineMode(BT_MODE_SELECT_PIN, PAL_MODE_INPUT); - - writePin(BAT_LOW_LED_PIN, BAT_LOW_LED_PIN_ON_STATE); - lkbt51_init(false); - wireless_init(); -#endif - - power_on_indicator_timer = timer_read32(); -#ifdef ENCODER_ENABLE - encoder_cb_init(); -#endif - - keyboard_post_init_user(); -} - -bool keychron_task_kb(void) { - if (power_on_indicator_timer) { - if (timer_elapsed32(power_on_indicator_timer) > POWER_ON_LED_DURATION) { - power_on_indicator_timer = 0; - - if (!host_keyboard_led_state().caps_lock) writePin(LED_CAPS_LOCK_PIN, !LED_PIN_ON_STATE); -#ifdef LK_WIRELESS_ENABLE - writePin(BAT_LOW_LED_PIN, !BAT_LOW_LED_PIN_ON_STATE); - for (uint8_t i = 0; i < sizeof(bt_led_pins) / sizeof(pin_t); i++) - writePin(bt_led_pins[i], 1); - for (uint8_t i = 0; i < sizeof(p24g_led_pins) / sizeof(pin_t); i++) - writePin(p24g_led_pins[i], 1); -#endif - - } else { - writePin(LED_CAPS_LOCK_PIN, LED_PIN_ON_STATE); -#ifdef LK_WIRELESS_ENABLE - writePin(BAT_LOW_LED_PIN, BAT_LOW_LED_PIN_ON_STATE); - if (get_transport() != TRANSPORT_P2P4) - for (uint8_t i = 0; i < sizeof(bt_led_pins) / sizeof(pin_t); i++) - writePin(bt_led_pins[i], 0); - if (get_transport() != TRANSPORT_BLUETOOTH) - for (uint8_t i = 0; i < sizeof(p24g_led_pins) / sizeof(pin_t); i++) - writePin(p24g_led_pins[i], 0); - -#endif - } - } - return true; -} - -#ifdef LK_WIRELESS_ENABLE -bool lpm_is_kb_idle(void) { - return power_on_indicator_timer == 0 && !factory_reset_indicating(); -} -#endif diff --git a/keyboards/keychron/k13_max/mcuconf.h b/keyboards/keychron/k13_max/mcuconf.h deleted file mode 100644 index 89294ee64b..0000000000 --- a/keyboards/keychron/k13_max/mcuconf.h +++ /dev/null @@ -1,37 +0,0 @@ -/* Copyright 2024 @ 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 - -#include_next - -#undef STM32_HSECLK -#define STM32_HSECLK 16000000 - -#undef STM32_PLLM_VALUE -#define STM32_PLLM_VALUE 8 - -#undef STM32_PLLN_VALUE -#define STM32_PLLN_VALUE 96 - -#undef STM32_PLLP_VALUE -#define STM32_PLLP_VALUE 4 - -#undef STM32_PLLQ_VALUE -#define STM32_PLLQ_VALUE 4 - -#undef STM32_SPI_USE_SPI1 -#define STM32_SPI_USE_SPI1 TRUE diff --git a/keyboards/keychron/k13_max/readme.md b/keyboards/keychron/k13_max/readme.md deleted file mode 100644 index 0e38c8887f..0000000000 --- a/keyboards/keychron/k13_max/readme.md +++ /dev/null @@ -1,22 +0,0 @@ -# Keychron K13 Max - -![Keychron K13 Max](https://cdn.shopify.com/s/files/1/0059/0630/1017/files/K13-Max-4.jpg?v=1707097937) - -A customizable 80% keyboard with a numpad -* Keyboard Maintainer: [Keychron](https://github.com/keychron) -* Hardware Supported: Keychron K13 Max -* Hardware Availability: [Keychron K13 Max QMK/VIA Wireless Custom Mechanical Keyboard](https://www.keychron.com/products/keychron-k13-max-qmk-via-wireless-custom-mechanical-keyboard) - -Make example for this keyboard (after setting up your build environment): - - make keychron/k13_max/ansi/rgb:default - make keychron/k13_max/ansi/white:default - -Flashing example for this keyboard: - - make keychron/k13_max/ansi/rgb:default:flash - make keychron/k13_max/ansi/white:default:flash - -**Reset Key**: Toggle mode switch to "Cable", hold down the *Esc* key or reset button underneath space bar while connecting the USB cable, - -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). diff --git a/keyboards/keychron/k13_max/rules.mk b/keyboards/keychron/k13_max/rules.mk deleted file mode 100644 index 4eaf6820bc..0000000000 --- a/keyboards/keychron/k13_max/rules.mk +++ /dev/null @@ -1,4 +0,0 @@ -include keyboards/keychron/common/wireless/wireless.mk -include keyboards/keychron/common/keychron_common.mk - -VPATH += $(TOP_DIR)/keyboards/keychron diff --git a/keyboards/keychron/k13_max/via_json/k13_max_ansi_rgb.json b/keyboards/keychron/k13_max/via_json/k13_max_ansi_rgb.json deleted file mode 100644 index 36cbdeb1bd..0000000000 --- a/keyboards/keychron/k13_max/via_json/k13_max_ansi_rgb.json +++ /dev/null @@ -1,300 +0,0 @@ -{ - "name": "Keychron K13 Max ANSI RGB", - "vendorId": "0x3434", - "productId": "0x0AD0", - "keycodes": ["qmk_lighting"], - "menus": [ - { - "label": "Lighting", - "content": [ - { - "label": "Backlight", - "content": [ - { - "label": "Brightness", - "type": "range", - "options": [0, 255], - "content": ["id_qmk_rgb_matrix_brightness", 3, 1] - }, - { - "label": "Effect", - "type": "dropdown", - "content": ["id_qmk_rgb_matrix_effect", 3, 2], - "options": [ - ["None", 0], - ["Solid Color", 1], - ["Breathing", 2], - ["Band Spiral Val", 3], - ["Cycle All", 4], - ["Cycle Left Right", 5], - ["Cycle Up Down", 6], - ["Rainbow Moving Chevron", 7], - ["Cycle Out In", 8], - ["Cycle Out In Dual", 9], - ["Cycle Pinwheel", 10], - ["Cycle Spiral", 11], - ["Dual Beacon", 12], - ["Rainbow Beacon", 13], - ["Jellybean Raindrops", 14], - ["Pixel Rain", 15], - ["Typing Heatmap", 16], - ["Digital Rain", 17], - ["Reactive Simple", 18], - ["Reactive Multiwide", 19], - ["Reactive Multinexus", 20], - ["Splash", 21], - ["Solid Splash", 22] - ] - }, - { - "showIf": "{id_qmk_rgb_matrix_effect} > 1", - "label": "Effect Speed", - "type": "range", - "options": [0, 255], - "content": ["id_qmk_rgb_matrix_effect_speed", 3, 3] - }, - { - "showIf": "{id_qmk_rgb_matrix_effect} != 0 && ( {id_qmk_rgb_matrix_effect} < 4 || {id_qmk_rgb_matrix_effect} == 18 || ({id_qmk_rgb_matrix_effect} > 17 && {id_qmk_rgb_matrix_effect} != 21) ) ", - "label": "Color", - "type": "color", - "content": ["id_qmk_rgb_matrix_color", 3, 4] - } - ] - } - ] - } - ], - "customKeycodes": [ - {"name": "Left Option", "title": "Left Option", "shortName": "LOpt"}, - {"name": "Right Option", "title": "Right Option", "shortName": "ROpt"}, - {"name": "Left Cmd", "title": "Left Command", "shortName": "LCmd"}, - {"name": "Right Cmd", "title": "Right Command", "shortName": "RCmd"}, - {"name": "Misson Control", "title": "Misson Control in Mac", "shortName": "MCtl"}, - {"name": "Lanuch Pad", "title": "Lanuch Pad in Windows", "shortName": "LPad"}, - {"name": "Task View", "title": "Task View in Windows", "shortName": "Task"}, - {"name": "File Explorer", "title": "File Explorer in Windows", "shortName": "File"}, - {"name": "Screen shot", "title": "Screenshot in macOS", "shortName": "SShot"}, - {"name": "Cortana", "title": "Cortana in Windows", "shortName": "Cortana"}, - {"name": "Siri", "title": "Siri in macOS", "shortName": "Siri"}, - {"name": "Bluetooth Host 1", "title": "Bluetooth Host 1", "shortName": "BTH1"}, - {"name": "Bluetooth Host 2", "title": "Bluetooth Host 2", "shortName": "BTH2"}, - {"name": "Bluetooth Host 3", "title": "Bluetooth Host 3", "shortName": "BTH3"}, - {"name": "2.4G", "title": "2.4G", "shortName": "2.4G"}, - {"name": "Battery Level", "title": "Show battery level", "shortName": "Batt"} - ], - "matrix": {"rows": 6, "cols" : 17}, - "layouts": { - "keymap": [ - [ - { - "c": "#777777" - }, - "0, 0", - { - "x": 1, - "c": "#cccccc" - }, - "0, 2", - "0, 3", - "0, 4", - "0, 5", - { - "x": 0.5, - "c": "#aaaaaa" - }, - "0, 6", - "0, 7", - "0, 8", - "0, 9", - { - "x": 0.5, - "c": "#cccccc" - }, - "0, 10", - "0, 11", - "0, 12", - "0, 13", - { - "x": 0.2 - }, - "0, 14", - "0, 15", - "0, 16" - ], - [ - { - "c": "#aaaaaa" - }, - "1, 0", - { - "c": "#cccccc" - }, - "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": 2, - "c": "#aaaaaa" - }, - "1, 13", - { - "x": 0.2, - "c": "#cccccc" - }, - "1, 14", - "1, 15", - "1, 16" - ], - [ - { - "w": 1.5, - "c": "#aaaaaa" - }, - "2, 0", - { - "c": "#cccccc" - }, - "2, 1", - "2, 2", - "2, 3", - "2, 4", - "2, 5", - "2, 6", - "2, 7", - "2, 8", - "2, 9", - "2, 10", - "2, 11", - "2, 12", - { - "w": 1.5, - "c": "#aaaaaa" - }, - "2, 13", - { - "x": 0.2, - "c": "#cccccc" - }, - "2, 14", - "2, 15", - "2, 16" - ], - [ - { - "w": 1.75, - "c": "#aaaaaa" - }, - "3, 0", - { - "c": "#cccccc" - }, - "3, 1", - "3, 2", - "3, 3", - "3, 4", - "3, 5", - "3, 6", - "3, 7", - "3, 8", - "3, 9", - "3, 10", - "3, 11", - { - "w": 2.25, - "c": "#777777" - }, - "3, 13", - { - "x": 0.2, - "c": "#cccccc" - }, - "3, 14", - "3, 15", - "3, 16" - ], - [ - { - "w": 2.25, - "c": "#aaaaaa" - }, - "4, 0", - { - "c": "#cccccc" - }, - "4, 2", - "4, 3", - "4, 4", - "4, 5", - "4, 6", - "4, 7", - "4, 8", - "4, 9", - "4, 10", - "4, 11", - { - "w": 2.75, - "c": "#aaaaaa" - }, - "4, 13", - { - "x": 1.2, - "c": "#cccccc" - }, - "4, 15" - ], - [ - { - "w": 1.25, - "c": "#aaaaaa" - }, - "5, 0", - { - "w": 1.25 - }, - "5, 1", - { - "w": 1.25 - }, - "5, 2", - { - "w": 6.25, - "c": "#cccccc" - }, - "5, 6", - { - "w": 1.25, - "c": "#aaaaaa" - }, - "5, 10", - { - "w": 1.25 - }, - "5, 11", - { - "w": 1.25 - }, - "5, 12", - { - "w": 1.25 - }, - "5, 13", - { - "x": 0.2, - "c": "#cccccc" - }, - "5, 14", - "5, 15", - "5, 16" - ] - ] - } - } diff --git a/keyboards/keychron/k13_max/via_json/k13_max_ansi_white.json b/keyboards/keychron/k13_max/via_json/k13_max_ansi_white.json deleted file mode 100644 index 7efdd96b3d..0000000000 --- a/keyboards/keychron/k13_max/via_json/k13_max_ansi_white.json +++ /dev/null @@ -1,239 +0,0 @@ -{ - "name": "Keychron K13 Max ANSI White", - "vendorId": "0x3434", - "productId": "0x0AD3", - "keycodes": ["qmk_lighting"], - "customKeycodes": [ - {"name": "Left Option", "title": "Left Option", "shortName": "LOpt"}, - {"name": "Right Option", "title": "Right Option", "shortName": "ROpt"}, - {"name": "Left Cmd", "title": "Left Command", "shortName": "LCmd"}, - {"name": "Right Cmd", "title": "Right Command", "shortName": "RCmd"}, - {"name": "Misson Control", "title": "Misson Control in Mac", "shortName": "MCtl"}, - {"name": "Lanuch Pad", "title": "Lanuch Pad in Windows", "shortName": "LPad"}, - {"name": "Task View", "title": "Task View in Windows", "shortName": "Task"}, - {"name": "File Explorer", "title": "File Explorer in Windows", "shortName": "File"}, - {"name": "Screen shot", "title": "Screenshot in macOS", "shortName": "SShot"}, - {"name": "Cortana", "title": "Cortana in Windows", "shortName": "Cortana"}, - {"name": "Siri", "title": "Siri in macOS", "shortName": "Siri"}, - {"name": "Bluetooth Host 1", "title": "Bluetooth Host 1", "shortName": "BTH1"}, - {"name": "Bluetooth Host 2", "title": "Bluetooth Host 2", "shortName": "BTH2"}, - {"name": "Bluetooth Host 3", "title": "Bluetooth Host 3", "shortName": "BTH3"}, - {"name": "2.4G", "title": "2.4G", "shortName": "2.4G"}, - {"name": "Battery Level", "title": "Show battery level", "shortName": "Batt"} - ], - "matrix": {"rows": 6, "cols" : 17}, - "layouts": { - "keymap": [ - [ - { - "c": "#777777" - }, - "0, 0", - { - "x": 1, - "c": "#cccccc" - }, - "0, 2", - "0, 3", - "0, 4", - "0, 5", - { - "x": 0.5, - "c": "#aaaaaa" - }, - "0, 6", - "0, 7", - "0, 8", - "0, 9", - { - "x": 0.5, - "c": "#cccccc" - }, - "0, 10", - "0, 11", - "0, 12", - "0, 13", - { - "x": 0.2 - }, - "0, 14", - "0, 15", - "0, 16" - ], - [ - { - "c": "#aaaaaa" - }, - "1, 0", - { - "c": "#cccccc" - }, - "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": 2, - "c": "#aaaaaa" - }, - "1, 13", - { - "x": 0.2, - "c": "#cccccc" - }, - "1, 14", - "1, 15", - "1, 16" - ], - [ - { - "w": 1.5, - "c": "#aaaaaa" - }, - "2, 0", - { - "c": "#cccccc" - }, - "2, 1", - "2, 2", - "2, 3", - "2, 4", - "2, 5", - "2, 6", - "2, 7", - "2, 8", - "2, 9", - "2, 10", - "2, 11", - "2, 12", - { - "w": 1.5, - "c": "#aaaaaa" - }, - "2, 13", - { - "x": 0.2, - "c": "#cccccc" - }, - "2, 14", - "2, 15", - "2, 16" - ], - [ - { - "w": 1.75, - "c": "#aaaaaa" - }, - "3, 0", - { - "c": "#cccccc" - }, - "3, 1", - "3, 2", - "3, 3", - "3, 4", - "3, 5", - "3, 6", - "3, 7", - "3, 8", - "3, 9", - "3, 10", - "3, 11", - { - "w": 2.25, - "c": "#777777" - }, - "3, 13", - { - "x": 0.2, - "c": "#cccccc" - }, - "3, 14", - "3, 15", - "3, 16" - ], - [ - { - "w": 2.25, - "c": "#aaaaaa" - }, - "4, 0", - { - "c": "#cccccc" - }, - "4, 2", - "4, 3", - "4, 4", - "4, 5", - "4, 6", - "4, 7", - "4, 8", - "4, 9", - "4, 10", - "4, 11", - { - "w": 2.75, - "c": "#aaaaaa" - }, - "4, 13", - { - "x": 1.2, - "c": "#cccccc" - }, - "4, 15" - ], - [ - { - "w": 1.25, - "c": "#aaaaaa" - }, - "5, 0", - { - "w": 1.25 - }, - "5, 1", - { - "w": 1.25 - }, - "5, 2", - { - "w": 6.25, - "c": "#cccccc" - }, - "5, 6", - { - "w": 1.25, - "c": "#aaaaaa" - }, - "5, 10", - { - "w": 1.25 - }, - "5, 11", - { - "w": 1.25 - }, - "5, 12", - { - "w": 1.25 - }, - "5, 13", - { - "x": 0.2, - "c": "#cccccc" - }, - "5, 14", - "5, 15", - "5, 16" - ] - ] - } - } diff --git a/keyboards/keychron/k13_max/via_json/k13_max_iso_rgb.json b/keyboards/keychron/k13_max/via_json/k13_max_iso_rgb.json deleted file mode 100644 index f528f6a917..0000000000 --- a/keyboards/keychron/k13_max/via_json/k13_max_iso_rgb.json +++ /dev/null @@ -1,301 +0,0 @@ -{ - "name": "Keychron K13 Max ISO RGB", - "vendorId": "0x3434", - "productId": "0x0AD1", - "keycodes": ["qmk_lighting"], - "menus": [ - { - "label": "Lighting", - "content": [ - { - "label": "Backlight", - "content": [ - { - "label": "Brightness", - "type": "range", - "options": [0, 255], - "content": ["id_qmk_rgb_matrix_brightness", 3, 1] - }, - { - "label": "Effect", - "type": "dropdown", - "content": ["id_qmk_rgb_matrix_effect", 3, 2], - "options": [ - ["None", 0], - ["Solid Color", 1], - ["Breathing", 2], - ["Band Spiral Val", 3], - ["Cycle All", 4], - ["Cycle Left Right", 5], - ["Cycle Up Down", 6], - ["Rainbow Moving Chevron", 7], - ["Cycle Out In", 8], - ["Cycle Out In Dual", 9], - ["Cycle Pinwheel", 10], - ["Cycle Spiral", 11], - ["Dual Beacon", 12], - ["Rainbow Beacon", 13], - ["Jellybean Raindrops", 14], - ["Pixel Rain", 15], - ["Typing Heatmap", 16], - ["Digital Rain", 17], - ["Reactive Simple", 18], - ["Reactive Multiwide", 19], - ["Reactive Multinexus", 20], - ["Splash", 21], - ["Solid Splash", 22] - ] - }, - { - "showIf": "{id_qmk_rgb_matrix_effect} > 1", - "label": "Effect Speed", - "type": "range", - "options": [0, 255], - "content": ["id_qmk_rgb_matrix_effect_speed", 3, 3] - }, - { - "showIf": "{id_qmk_rgb_matrix_effect} != 0 && ( {id_qmk_rgb_matrix_effect} < 4 || {id_qmk_rgb_matrix_effect} == 18 || ({id_qmk_rgb_matrix_effect} > 17 && {id_qmk_rgb_matrix_effect} != 21) ) ", - "label": "Color", - "type": "color", - "content": ["id_qmk_rgb_matrix_color", 3, 4] - } - ] - } - ] - } - ], - "customKeycodes": [ - {"name": "Left Option", "title": "Left Option", "shortName": "LOpt"}, - {"name": "Right Option", "title": "Right Option", "shortName": "ROpt"}, - {"name": "Left Cmd", "title": "Left Command", "shortName": "LCmd"}, - {"name": "Right Cmd", "title": "Right Command", "shortName": "RCmd"}, - {"name": "Misson Control", "title": "Misson Control, availabe in macOS", "shortName": "MCtrl"}, - {"name": "Launch pad", "title": "Launch pad, availabe in macOS", "shortName": "LPad"}, - {"name": "Task View", "title": "Task View in Windows", "shortName": "Task"}, - {"name": "File Explorer", "title": "File Explorer in Windows", "shortName": "File"}, - {"name": "Screen shot", "title": "Screenshot in macOS", "shortName": "SShot"}, - {"name": "Cortana", "title": "Cortana in Windows", "shortName": "Cortana"}, - {"name": "Siri", "title": "Siri in macOS", "shortName": "Siri"}, - {"name": "Bluetooth Host 1", "title": "Bluetooth Host 1", "shortName": "BTH1"}, - {"name": "Bluetooth Host 2", "title": "Bluetooth Host 2", "shortName": "BTH2"}, - {"name": "Bluetooth Host 3", "title": "Bluetooth Host 3", "shortName": "BTH3"}, - {"name": "2.4G", "title": "2.4G", "shortName": "2.4G"}, - {"name": "Battery Level", "title": "Show battery level", "shortName": "Batt"} - ], - "matrix": {"rows": 6, "cols": 17}, - "layouts": { - "keymap": [ - [ - { - "c": "#777777" - }, - "0,0", - { - "x": 1, - "c": "#cccccc" - }, - "0,2", - "0,3", - "0,4", - "0,5", - { - "x": 0.5, - "c": "#aaaaaa" - }, - "0,6", - "0,7", - "0,8", - "0,9", - { - "x": 0.5, - "c": "#cccccc" - }, - - "0,10", - "0,11", - "0,12", - "0,13", - { - "x": 0.25 - }, - "0,14", - "0,15", - "0,16" - ], - [ - { - "y": 0.2, - "c": "#cccccc" - }, - "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", - { - "c": "#aaaaaa", - "w": 2 - }, - "1,13", - { - "x": 0.25, - "c": "#cccccc" - }, - "1,14", - "1,15", - "1,16" - ], - [ - { - "c": "#aaaaaa", - "w": 1.5 - }, - "2,0", - { - "c": "#cccccc" - }, - "2,1", - "2,2", - "2,3", - "2,4", - "2,5", - "2,6", - "2,7", - "2,8", - "2,9", - "2,10", - "2,11", - "2,12", - { - "x": 0.25, - "c": "#777777", - "w": 1.25, - "h": 2, - "w2": 1.5, - "h2": 1, - "x2": -0.25 - }, - "2,13", - { - "x": 0.25, - "c": "#cccccc" - }, - "2,14", - "2,15", - "2,16" - ], - [ - { - "c": "#aaaaaa", - "w": 1.75 - }, - "3,0", - { - "c": "#cccccc" - }, - "3,1", - "3,2", - "3,3", - "3,4", - "3,5", - "3,6", - "3,7", - "3,8", - "3,9", - "3,10", - "3,11", - "3,13", - { - "x": 1.5, - "c": "#cccccc" - }, - "3,14", - "3,15", - "3,16" - ], - [ - { - "c": "#aaaaaa", - "w": 1.25 - }, - "4,0", - { - "c": "#cccccc" - }, - "4,1", - "4,2", - "4,3", - "4,4", - "4,5", - "4,6", - "4,7", - "4,8", - "4,9", - "4,10", - "4,11", - { - "c": "#aaaaaa", - "w": 2.75 - }, - "4,13", - { - "x": 1.25, - "c": "#cccccc" - }, - "4,15" - ], - [ - { - "c": "#aaaaaa", - "w": 1.25 - }, - "5,0", - { - "w": 1.25 - }, - "5,1", - { - "w": 1.25 - }, - "5,2", - { - "c": "#cccccc", - "w": 6.25 - }, - "5,6", - { - "c": "#aaaaaa", - "w": 1.25 - }, - "5,10", - { - "w": 1.25 - }, - "5,11", - { - "w": 1.25 - }, - "5,12", - { - "w": 1.25 - }, - "5,13", - { - "x": 0.25, - "c": "#cccccc" - }, - "5,14", - "5,15", - "5,16" - ] - ] - } -} diff --git a/keyboards/keychron/k13_max/via_json/k13_max_iso_white.json b/keyboards/keychron/k13_max/via_json/k13_max_iso_white.json deleted file mode 100644 index ffe525df73..0000000000 --- a/keyboards/keychron/k13_max/via_json/k13_max_iso_white.json +++ /dev/null @@ -1,240 +0,0 @@ -{ - "name": "Keychron K13 Max ISO White", - "vendorId": "0x3434", - "productId": "0x0AD4", - "keycodes": ["qmk_lighting"], - "customKeycodes": [ - {"name": "Left Option", "title": "Left Option", "shortName": "LOpt"}, - {"name": "Right Option", "title": "Right Option", "shortName": "ROpt"}, - {"name": "Left Cmd", "title": "Left Command", "shortName": "LCmd"}, - {"name": "Right Cmd", "title": "Right Command", "shortName": "RCmd"}, - {"name": "Misson Control", "title": "Misson Control, availabe in macOS", "shortName": "MCtrl"}, - {"name": "Launch pad", "title": "Launch pad, availabe in macOS", "shortName": "LPad"}, - {"name": "Task View", "title": "Task View in Windows", "shortName": "Task"}, - {"name": "File Explorer", "title": "File Explorer in Windows", "shortName": "File"}, - {"name": "Screen shot", "title": "Screenshot in macOS", "shortName": "SShot"}, - {"name": "Cortana", "title": "Cortana in Windows", "shortName": "Cortana"}, - {"name": "Siri", "title": "Siri in macOS", "shortName": "Siri"}, - {"name": "Bluetooth Host 1", "title": "Bluetooth Host 1", "shortName": "BTH1"}, - {"name": "Bluetooth Host 2", "title": "Bluetooth Host 2", "shortName": "BTH2"}, - {"name": "Bluetooth Host 3", "title": "Bluetooth Host 3", "shortName": "BTH3"}, - {"name": "2.4G", "title": "2.4G", "shortName": "2.4G"}, - {"name": "Battery Level", "title": "Show battery level", "shortName": "Batt"} - ], - "matrix": {"rows": 6, "cols": 17}, - "layouts": { - "keymap": [ - [ - { - "c": "#777777" - }, - "0,0", - { - "x": 1, - "c": "#cccccc" - }, - "0,2", - "0,3", - "0,4", - "0,5", - { - "x": 0.5, - "c": "#aaaaaa" - }, - "0,6", - "0,7", - "0,8", - "0,9", - { - "x": 0.5, - "c": "#cccccc" - }, - - "0,10", - "0,11", - "0,12", - "0,13", - { - "x": 0.25 - }, - "0,14", - "0,15", - "0,16" - ], - [ - { - "y": 0.2, - "c": "#cccccc" - }, - "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", - { - "c": "#aaaaaa", - "w": 2 - }, - "1,13", - { - "x": 0.25, - "c": "#cccccc" - }, - "1,14", - "1,15", - "1,16" - ], - [ - { - "c": "#aaaaaa", - "w": 1.5 - }, - "2,0", - { - "c": "#cccccc" - }, - "2,1", - "2,2", - "2,3", - "2,4", - "2,5", - "2,6", - "2,7", - "2,8", - "2,9", - "2,10", - "2,11", - "2,12", - { - "x": 0.25, - "c": "#777777", - "w": 1.25, - "h": 2, - "w2": 1.5, - "h2": 1, - "x2": -0.25 - }, - "2,13", - { - "x": 0.25, - "c": "#cccccc" - }, - "2,14", - "2,15", - "2,16" - ], - [ - { - "c": "#aaaaaa", - "w": 1.75 - }, - "3,0", - { - "c": "#cccccc" - }, - "3,1", - "3,2", - "3,3", - "3,4", - "3,5", - "3,6", - "3,7", - "3,8", - "3,9", - "3,10", - "3,11", - "3,13", - { - "x": 1.5, - "c": "#cccccc" - }, - "3,14", - "3,15", - "3,16" - ], - [ - { - "c": "#aaaaaa", - "w": 1.25 - }, - "4,0", - { - "c": "#cccccc" - }, - "4,1", - "4,2", - "4,3", - "4,4", - "4,5", - "4,6", - "4,7", - "4,8", - "4,9", - "4,10", - "4,11", - { - "c": "#aaaaaa", - "w": 2.75 - }, - "4,13", - { - "x": 1.25, - "c": "#cccccc" - }, - "4,15" - ], - [ - { - "c": "#aaaaaa", - "w": 1.25 - }, - "5,0", - { - "w": 1.25 - }, - "5,1", - { - "w": 1.25 - }, - "5,2", - { - "c": "#cccccc", - "w": 6.25 - }, - "5,6", - { - "c": "#aaaaaa", - "w": 1.25 - }, - "5,10", - { - "w": 1.25 - }, - "5,11", - { - "w": 1.25 - }, - "5,12", - { - "w": 1.25 - }, - "5,13", - { - "x": 0.25, - "c": "#cccccc" - }, - "5,14", - "5,15", - "5,16" - ] - ] - } -} diff --git a/keyboards/keychron/k13_pro/ansi/rgb/config.h b/keyboards/keychron/k13_pro/ansi/rgb/config.h deleted file mode 100644 index 1e9e8b3794..0000000000 --- a/keyboards/keychron/k13_pro/ansi/rgb/config.h +++ /dev/null @@ -1,52 +0,0 @@ -/* 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 . - */ - -#pragma once - -#ifdef RGB_MATRIX_ENABLE -/* RGB Matrix Driver Configuration */ -# define DRIVER_COUNT 2 -# define DRIVER_ADDR_1 0b1110111 -# define DRIVER_ADDR_2 0b1110100 -# define DRIVER_1_LED_TOTAL 47 -# define DRIVER_2_LED_TOTAL 43 -# define RGB_MATRIX_LED_COUNT (DRIVER_1_LED_TOTAL + DRIVER_2_LED_TOTAL) - -/* Set to infinit, which is use in USB mode by default */ -# define RGB_MATRIX_TIMEOUT RGB_MATRIX_TIMEOUT_INFINITE - -/* Allow to shutdown driver to save power */ -# define RGB_MATRIX_DRIVER_SHUTDOWN_ENABLE - -/* Turn off backllit if brightness value is low */ -# define RGB_MATRIX_BRIGHTNESS_TURN_OFF_VAL 48 - -# define LOW_BAT_IND_INDEX 82 - -// RGB Matrix Animation modes. Explicitly enabled -// For full list of effects, see: -// https://docs.qmk.fm/#/feature_rgb_matrix?id=rgb-matrix-effects - -# define RGB_MATRIX_KEYPRESSES -# define RGB_MATRIX_FRAMEBUFFER_EFFECTS - -/* Use first 9 channels of LED driver */ -# define PHASE_CHANNEL MSKPHASE_9CHANNEL - -/* Set LED driver current */ -# define SNLED27351_CURRENT_TUNE \ - { 0x12, 0x12, 0x12, 0x12, 0x12, 0x12, 0x12, 0x12, 0x12, 0x12, 0x12, 0x12 } -#endif diff --git a/keyboards/keychron/k13_pro/ansi/rgb/info.json b/keyboards/keychron/k13_pro/ansi/rgb/info.json deleted file mode 100644 index 4f2698d2d6..0000000000 --- a/keyboards/keychron/k13_pro/ansi/rgb/info.json +++ /dev/null @@ -1,35 +0,0 @@ -{ - "usb": { - "pid": "0x02D0", - "device_version": "1.0.0" - }, - "features": { - "rgb_matrix": true - }, - "rgb_matrix": { - "driver": "snled27351", - "animations": { - "breathing": true, - "band_spiral_val": true, - "cycle_all": true, - "cycle_left_right": true, - "cycle_up_down": true, - "rainbow_moving_chevron": true, - "cycle_out_in": true, - "cycle_out_in_dual": true, - "cycle_pinwheel": true, - "cycle_spiral": true, - "dual_beacon": true, - "rainbow_beacon": true, - "jellybean_raindrops": true, - "pixel_rain": true, - "typing_heatmap": true, - "digital_rain": true, - "solid_reactive_simple": true, - "solid_reactive_multiwide": true, - "solid_reactive_multinexus": true, - "splash": true, - "solid_splash": true - } - } -} diff --git a/keyboards/keychron/k13_pro/ansi/rgb/keymaps/default/keymap.c b/keyboards/keychron/k13_pro/ansi/rgb/keymaps/default/keymap.c deleted file mode 100644 index b9f0211b1d..0000000000 --- a/keyboards/keychron/k13_pro/ansi/rgb/keymaps/default/keymap.c +++ /dev/null @@ -1,59 +0,0 @@ -/* 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 . - */ - -#include QMK_KEYBOARD_H - -// clang-format off -enum layers{ - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN -}; - -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_ansi_90( - KC_ESC, KC_BRID, KC_BRIU, KC_MCTL, KC_LPAD, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_P7, KC_P8, KC_P9, - KC_GRV, 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_P4, KC_P5, KC_P6, - 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_P1, KC_P2, KC_P3, - 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_DEL, KC_P0, KC_PDOT, - 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_LCTL, KC_LOPTN, KC_LCMMD, KC_SPC, KC_RCMMD, KC_ROPTN, MO(MAC_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - - [MAC_FN] = LAYOUT_ansi_90( - _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, _______, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, KC_INS, KC_PGUP, KC_HOME, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, KC_SNAP, KC_PGDN, KC_END, _______, KC_NUM, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - - [WIN_BASE] = LAYOUT_ansi_90( - KC_ESC, 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_P7, KC_P8, KC_P9, - KC_GRV, 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_P4, KC_P5, KC_P6, - 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_P1, KC_P2, KC_P3, - 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_DEL, KC_P0, KC_PDOT, - 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_LCTL, KC_LWIN, KC_LALT, KC_SPC, KC_RALT, KC_RGUI, MO(WIN_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - - [WIN_FN] = LAYOUT_ansi_90( - _______, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, _______, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, KC_APP, KC_SCRL, KC_INS, KC_PGUP, KC_HOME, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, KC_PSCR, KC_PGDN, KC_END, _______, KC_NUM, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______) -}; diff --git a/keyboards/keychron/k13_pro/ansi/rgb/keymaps/via/keymap.c b/keyboards/keychron/k13_pro/ansi/rgb/keymaps/via/keymap.c deleted file mode 100644 index b9f0211b1d..0000000000 --- a/keyboards/keychron/k13_pro/ansi/rgb/keymaps/via/keymap.c +++ /dev/null @@ -1,59 +0,0 @@ -/* 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 . - */ - -#include QMK_KEYBOARD_H - -// clang-format off -enum layers{ - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN -}; - -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_ansi_90( - KC_ESC, KC_BRID, KC_BRIU, KC_MCTL, KC_LPAD, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_P7, KC_P8, KC_P9, - KC_GRV, 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_P4, KC_P5, KC_P6, - 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_P1, KC_P2, KC_P3, - 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_DEL, KC_P0, KC_PDOT, - 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_LCTL, KC_LOPTN, KC_LCMMD, KC_SPC, KC_RCMMD, KC_ROPTN, MO(MAC_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - - [MAC_FN] = LAYOUT_ansi_90( - _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, _______, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, KC_INS, KC_PGUP, KC_HOME, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, KC_SNAP, KC_PGDN, KC_END, _______, KC_NUM, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - - [WIN_BASE] = LAYOUT_ansi_90( - KC_ESC, 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_P7, KC_P8, KC_P9, - KC_GRV, 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_P4, KC_P5, KC_P6, - 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_P1, KC_P2, KC_P3, - 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_DEL, KC_P0, KC_PDOT, - 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_LCTL, KC_LWIN, KC_LALT, KC_SPC, KC_RALT, KC_RGUI, MO(WIN_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - - [WIN_FN] = LAYOUT_ansi_90( - _______, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, _______, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, KC_APP, KC_SCRL, KC_INS, KC_PGUP, KC_HOME, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, KC_PSCR, KC_PGDN, KC_END, _______, KC_NUM, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______) -}; diff --git a/keyboards/keychron/k13_pro/ansi/rgb/keymaps/via/rules.mk b/keyboards/keychron/k13_pro/ansi/rgb/keymaps/via/rules.mk deleted file mode 100644 index 45fa68954c..0000000000 --- a/keyboards/keychron/k13_pro/ansi/rgb/keymaps/via/rules.mk +++ /dev/null @@ -1 +0,0 @@ -VIA_ENABLE = yes diff --git a/keyboards/keychron/k13_pro/ansi/rgb/rgb.c b/keyboards/keychron/k13_pro/ansi/rgb/rgb.c deleted file mode 100644 index a782634e68..0000000000 --- a/keyboards/keychron/k13_pro/ansi/rgb/rgb.c +++ /dev/null @@ -1,156 +0,0 @@ -/* 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 . - */ - -#include "quantum.h" - -// clang-format off -#ifdef RGB_MATRIX_ENABLE -const snled27351_led_t g_snled27351_leds[RGB_MATRIX_LED_COUNT] = { -/* Refer to snled27351manual for these locations - * driver - * | R location - * | | G location - * | | | B location - * | | | | */ - {0, I_1, G_1, H_1}, - {0, I_2, G_2, H_2}, - {0, I_3, G_3, H_3}, - {0, I_4, G_4, H_4}, - {0, I_5, G_5, H_5}, - {0, I_6, G_6, H_6}, - {0, I_7, G_7, H_7}, - {0, I_8, G_8, H_8}, - {0, I_9, G_9, H_9}, - {0, I_10, G_10, H_10}, - {0, I_11, G_11, H_11}, - {0, I_12, G_12, H_12}, - {0, I_13, G_13, H_13}, - {0, I_15, G_15, H_15}, - {0, I_16, G_16, H_16}, - {1, F_8, D_8, E_8}, - - {0, F_1, D_1, E_1}, - {0, F_2, D_2, E_2}, - {0, F_3, D_3, E_3}, - {0, F_4, D_4, E_4}, - {0, F_5, D_5, E_5}, - {0, F_6, D_6, E_6}, - {0, F_7, D_7, E_7}, - {0, F_8, D_8, E_8}, - {0, F_9, D_9, E_9}, - {0, F_10, D_10, E_10}, - {0, F_11, D_11, E_11}, - {0, F_12, D_12, E_12}, - {0, F_13, D_13, E_13}, - {0, F_14, D_14, E_14}, - {0, F_15, D_15, E_15}, - {0, F_16, D_16, E_16}, - {1, F_9, D_9, E_9}, - - {0, A_1, C_1, B_1}, - {0, A_2, C_2, B_2}, - {0, A_3, C_3, B_3}, - {0, A_4, C_4, B_4}, - {0, A_5, C_5, B_5}, - {0, A_6, C_6, B_6}, - {0, A_7, C_7, B_7}, - {0, A_8, C_8, B_8}, - {0, A_9, C_9, B_9}, - {0, A_10, C_10, B_10}, - {0, A_11, C_11, B_11}, - {0, A_12, C_12, B_12}, - {0, A_13, C_13, B_13}, - {0, A_14, C_14, B_14}, - {0, A_15, C_15, B_15}, - {0, A_16, C_16, B_16}, - {1, F_6, D_6, E_6}, - - {1, I_1, G_1, H_1}, - {1, I_2, G_2, H_2}, - {1, I_3, G_3, H_3}, - {1, I_4, G_4, H_4}, - {1, I_5, G_5, H_5}, - {1, I_6, G_6, H_6}, - {1, I_7, G_7, H_7}, - {1, I_8, G_8, H_8}, - {1, I_9, G_9, H_9}, - {1, I_10, G_10, H_10}, - {1, I_11, G_11, H_11}, - {1, I_12, G_12, H_12}, - {1, I_14, G_14, H_14}, - {1, I_15, G_15, H_15}, - {1, I_16, G_16, H_16}, - {1, I_13, G_13, H_13}, - - {1, C_1, A_1, B_1}, - {1, C_3, A_3, B_3}, - {1, C_4, A_4, B_4}, - {1, C_5, A_5, B_5}, - {1, C_6, A_6, B_6}, - {1, C_7, A_7, B_7}, - {1, C_8, A_8, B_8}, - {1, C_9, A_9, B_9}, - {1, C_10, A_10, B_10}, - {1, C_11, A_11, B_11}, - {1, C_12, A_12, B_12}, - {1, C_14, A_14, B_14}, - {1, C_16, A_16, B_16}, - - {1, F_1, D_1, E_1}, - {1, F_2, D_2, E_2}, - {1, F_3, D_3, E_3}, - {1, F_7, D_7, E_7}, - {1, F_11, D_11, E_11}, - {1, F_12, D_12, E_12}, - {1, F_13, D_13, E_13}, - {1, F_14, D_14, E_14}, - {1, F_15, D_15, E_15}, - {1, F_16, D_16, E_16}, - {1, C_15, A_15, B_15} -}; - -#define __ NO_LED - -led_config_t g_led_config = { - { - // Key Matrix to LED Index - { 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, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49 }, - { 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, __, 62, 63, 64, 65 }, - { 66, __, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, __, 77, __, 78, __ }, - { 79, 80, 81, __, __, __, 82, __, __, __, 83, 84, 85, 86, 87, 88, 89 } - }, - { - // LED Index to Physical Position - {0,0}, {26,0}, {39,0}, {52,0}, {65,0}, {85,0}, {98,0}, {111,0}, {124,0}, {144,0}, {157,0}, {170,0}, {183,0}, {198,0}, {211,0}, {224,0}, - {0,14}, {13,14}, {26,14}, {39,14}, {52,14}, {65,14}, {79,14}, {92,14}, {105,14}, {118,14}, {131,14}, {144,14}, {157,14}, {177,14}, {198,14}, {211,14}, {224,14}, - {3,26}, {20,26}, {33,26}, {46,26}, {59,26}, {72,26}, {85,26}, {98,26}, {111,26}, {124,26}, {138,26}, {151,26}, {164,26}, {180,26}, {198,26}, {211,26}, {224,26}, - {5,39}, {23,39}, {36,39}, {49,39}, {62,39}, {75,39}, {88,39}, {101,39}, {115,39}, {128,39}, {141,39}, {154,39}, {175,39}, {198,39}, {211,39}, {224,39}, - {8,51}, {29,51}, {43,51}, {56,51}, {69,51}, {82,51}, {95,51}, {108,51}, {121,51}, {134,51}, {147,51}, {172,51}, {211,51}, - {2,64}, {18,64}, {34,64}, {83,64}, {133,64}, {149,64}, {165,64}, {182,64}, {198,64}, {211,64}, {224,64}, - }, - { - // RGB LED Index to Flag - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 4, 4, 4, - 4, 8, 8, 8, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1, 4, 4, 4, - 1, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, - 8, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1, 4, 4, 4, - 1, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1, 1, - 1, 1, 1, 4, 1, 1, 1, 1, 1, 1, 1 - } -}; -#endif diff --git a/keyboards/keychron/k13_pro/ansi/rgb/rules.mk b/keyboards/keychron/k13_pro/ansi/rgb/rules.mk deleted file mode 100644 index f886ea2e8e..0000000000 --- a/keyboards/keychron/k13_pro/ansi/rgb/rules.mk +++ /dev/null @@ -1 +0,0 @@ -# This file intentionally blank \ No newline at end of file diff --git a/keyboards/keychron/k13_pro/ansi/white/config.h b/keyboards/keychron/k13_pro/ansi/white/config.h deleted file mode 100644 index 8ecbee2b98..0000000000 --- a/keyboards/keychron/k13_pro/ansi/white/config.h +++ /dev/null @@ -1,49 +0,0 @@ -/* 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 . - */ - -#pragma once - -#ifdef LED_MATRIX_ENABLE -/* LED Matrix Driver Configuration */ -# define DRIVER_COUNT 1 -# define SNLED27351_I2C_ADDRESS_1 SNLED27351_I2C_ADDRESS_GND -# define DRIVER_1_LED_TOTAL 90 -# define LED_MATRIX_LED_COUNT DRIVER_1_LED_TOTAL - -/* Set to infinit, which is use in USB mode by default */ -# define LED_MATRIX_TIMEOUT LED_MATRIX_TIMEOUT_INFINITE - -/* Allow to shutdown driver to save power */ -# define LED_MATRIX_DRIVER_SHUTDOWN_ENABLE - -/* Turn off backllit if brightness value is low */ -# define LED_MATRIX_BRIGHTNESS_TURN_OFF_VAL 48 - -# define LOW_BAT_IND_INDEX 82 - -// LED Matrix Animation modes. Explicitly enabled -// For full list of effects, see: -// https://docs.qmk.fm/#/feature_led_matrix?id=led-matrix-effects - -# define LED_MATRIX_KEYPRESSES - -/* Use first 6 channels of LED driver */ -# define PHASE_CHANNEL MSKPHASE_6CHANNEL - -/* Set LED driver current */ -# define SNLED27351_CURRENT_TUNE \ - { 0x28, 0x28, 0x28, 0x28, 0x28, 0x28, 0x28, 0x28, 0x28, 0x28, 0x28, 0x28 } -#endif diff --git a/keyboards/keychron/k13_pro/ansi/white/info.json b/keyboards/keychron/k13_pro/ansi/white/info.json deleted file mode 100644 index 2c62a8d6e0..0000000000 --- a/keyboards/keychron/k13_pro/ansi/white/info.json +++ /dev/null @@ -1,30 +0,0 @@ -{ - "usb": { - "pid": "0x02D3", - "device_version": "1.0.0" - }, - "features": { - "led_matrix": true - }, - "led_matrix": { - "driver": "snled27351", - "animations": { - "none": true, - "solid": true, - "breathing": true, - "band_pinwheel": true, - "band_spiral": true, - "cycle_left_right": true, - "cycle_up_down": true, - "cycle_out_in": true, - "dual_beacon": true, - "solid_reactive_simple": true, - "solid_reactive_multiwide": true, - "solid_reactive_multinexus": true, - "solid_splash": true, - "wave_left_right": true, - "wave_up_down": true, - "effect_max": true - } - } -} diff --git a/keyboards/keychron/k13_pro/ansi/white/keymaps/default/keymap.c b/keyboards/keychron/k13_pro/ansi/white/keymaps/default/keymap.c deleted file mode 100644 index 6f2ecf6af5..0000000000 --- a/keyboards/keychron/k13_pro/ansi/white/keymaps/default/keymap.c +++ /dev/null @@ -1,59 +0,0 @@ -/* 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 . - */ - -#include QMK_KEYBOARD_H - -// clang-format off -enum layers{ - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN -}; - -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_ansi_90( - KC_ESC, KC_BRID, KC_BRIU, KC_MCTL, KC_LPAD, BL_DOWN, BL_UP, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_P7, KC_P8, KC_P9, - KC_GRV, 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_P4, KC_P5, KC_P6, - 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_P1, KC_P2, KC_P3, - 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_DEL, KC_P0, KC_PDOT, - 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_LCTL, KC_LOPTN, KC_LCMMD, KC_SPC, KC_RCMMD, KC_ROPTN, MO(MAC_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - - [MAC_FN] = LAYOUT_ansi_90( - _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, _______, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - BL_TOGG, BL_STEP, BL_UP, _______, _______, _______, _______, _______, _______, _______, KC_INS, KC_PGUP, KC_HOME, _______, _______, _______, _______, - _______, _______, BL_DOWN, _______, _______, _______, _______, _______, _______, KC_SNAP, KC_PGDN, KC_END, _______, KC_NUM, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - - [WIN_BASE] = LAYOUT_ansi_90( - KC_ESC, 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_P7, KC_P8, KC_P9, - KC_GRV, 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_P4, KC_P5, KC_P6, - 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_P1, KC_P2, KC_P3, - 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_DEL, KC_P0, KC_PDOT, - 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_LCTL, KC_LWIN, KC_LALT, KC_SPC, KC_RALT, KC_RGUI, MO(WIN_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - - [WIN_FN] = LAYOUT_ansi_90( - _______, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, BL_DOWN, BL_UP, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, _______, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - BL_TOGG, BL_STEP, BL_UP, _______, _______, _______, _______, _______, KC_APP, KC_SCRL, KC_INS, KC_PGUP, KC_HOME, _______, _______, _______, _______, - _______, _______, BL_DOWN, _______, _______, _______, _______, _______, _______, KC_PSCR, KC_PGDN, KC_END, _______, KC_NUM, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______) -}; diff --git a/keyboards/keychron/k13_pro/ansi/white/keymaps/via/keymap.c b/keyboards/keychron/k13_pro/ansi/white/keymaps/via/keymap.c deleted file mode 100644 index 3f500e5d0e..0000000000 --- a/keyboards/keychron/k13_pro/ansi/white/keymaps/via/keymap.c +++ /dev/null @@ -1,59 +0,0 @@ -/* 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 . - */ - -#include QMK_KEYBOARD_H - -// clang-format off -enum layers{ - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN -}; - -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_ansi_90( - KC_ESC, KC_BRID, KC_BRIU, KC_MCTL, KC_LPAD, BL_DOWN, BL_UP, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_P7, KC_P8, KC_P9, - KC_GRV, 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_P4, KC_P5, KC_P6, - 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_P1, KC_P2, KC_P3, - 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_DEL, KC_P0, KC_PDOT, - 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_LCTL, KC_LOPTN, KC_LCMMD, KC_SPC, KC_RCMMD, KC_ROPTN, MO(MAC_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - - [MAC_FN] = LAYOUT_ansi_90( - _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, _______, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - BL_TOGG, BL_STEP, BL_UP, _______, _______, _______, _______, _______, _______, _______, KC_INS, KC_PGUP, KC_HOME, _______, _______, _______, _______, - _______, _______, BL_DOWN, _______, _______, _______, _______, _______, _______, KC_SNAP, KC_PGDN, KC_END, _______, KC_NUM, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - - [WIN_BASE] = LAYOUT_ansi_90( - KC_ESC, 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_P7, KC_P8, KC_P9, - KC_GRV, 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_P4, KC_P5, KC_P6, - 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_P1, KC_P2, KC_P3, - 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_DEL, KC_P0, KC_PDOT, - 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_LCTL, KC_LWIN, KC_LALT, KC_SPC, KC_RALT, KC_RGUI, MO(WIN_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - - [WIN_FN] = LAYOUT_ansi_90( - _______, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, BL_DOWN, BL_UP, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, _______, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - BL_TOGG, BL_STEP, BL_UP, _______, _______, _______, _______, _______, KC_APP, KC_SCRL, KC_INS, KC_PGUP, KC_HOME, _______, _______, _______, _______, - _______, _______, BL_DOWN, _______, _______, _______, _______, _______, _______, KC_PSCR, KC_PGDN, KC_END, _______, KC_NUM, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______) -}; diff --git a/keyboards/keychron/k13_pro/ansi/white/keymaps/via/rules.mk b/keyboards/keychron/k13_pro/ansi/white/keymaps/via/rules.mk deleted file mode 100644 index 45fa68954c..0000000000 --- a/keyboards/keychron/k13_pro/ansi/white/keymaps/via/rules.mk +++ /dev/null @@ -1 +0,0 @@ -VIA_ENABLE = yes diff --git a/keyboards/keychron/k13_pro/ansi/white/rules.mk b/keyboards/keychron/k13_pro/ansi/white/rules.mk deleted file mode 100644 index f886ea2e8e..0000000000 --- a/keyboards/keychron/k13_pro/ansi/white/rules.mk +++ /dev/null @@ -1 +0,0 @@ -# This file intentionally blank \ No newline at end of file diff --git a/keyboards/keychron/k13_pro/ansi/white/white.c b/keyboards/keychron/k13_pro/ansi/white/white.c deleted file mode 100644 index 6c93c28e9f..0000000000 --- a/keyboards/keychron/k13_pro/ansi/white/white.c +++ /dev/null @@ -1,154 +0,0 @@ -/* 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 . - */ - -#include "quantum.h" - -// clang-format off -#ifdef LED_MATRIX_ENABLE -const snled27351_led_t g_snled27351_leds[LED_MATRIX_LED_COUNT] = { -/* Refer to snled27351manual for these locations - * driver - * | LED address - * | | */ - {0, F_1}, - {0, F_2}, - {0, F_3}, - {0, F_4}, - {0, F_5}, - {0, F_6}, - {0, F_7}, - {0, F_8}, - {0, F_9}, - {0, F_10}, - {0, F_11}, - {0, F_12}, - {0, F_13}, - {0, F_15}, - {0, F_16}, - {0, A_8}, - - {0, E_1}, - {0, E_2}, - {0, E_3}, - {0, E_4}, - {0, E_5}, - {0, E_6}, - {0, E_7}, - {0, E_8}, - {0, E_9}, - {0, E_10}, - {0, E_11}, - {0, E_12}, - {0, E_13}, - {0, E_14}, - {0, E_15}, - {0, E_16}, - {0, A_9}, - - {0, D_1}, - {0, D_2}, - {0, D_3}, - {0, D_4}, - {0, D_5}, - {0, D_6}, - {0, D_7}, - {0, D_8}, - {0, D_9}, - {0, D_10}, - {0, D_11}, - {0, D_12}, - {0, D_13}, - {0, D_14}, - {0, D_15}, - {0, D_16}, - {0, A_6}, - - {0, C_1}, - {0, C_2}, - {0, C_3}, - {0, C_4}, - {0, C_5}, - {0, C_6}, - {0, C_7}, - {0, C_8}, - {0, C_9}, - {0, C_10}, - {0, C_11}, - {0, C_12}, - {0, C_14}, - {0, C_15}, - {0, C_16}, - {0, C_13}, - - {0, B_1}, - {0, B_3}, - {0, B_4}, - {0, B_5}, - {0, B_6}, - {0, B_7}, - {0, B_8}, - {0, B_9}, - {0, B_10}, - {0, B_11}, - {0, B_12}, - {0, B_14}, - {0, B_16}, - - {0, A_1}, - {0, A_2}, - {0, A_3}, - {0, A_7}, - {0, A_11}, - {0, A_12}, - {0, A_13}, - {0, A_14}, - {0, A_15}, - {0, A_16}, - {0, B_15} -}; - -#define __ NO_LED - -led_config_t g_led_config = { - { - // Key Matrix to LED Index - { 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, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49 }, - { 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, __, 62, 63, 64, 65 }, - { 66, __, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, __, 77, __, 78, __ }, - { 79, 80, 81, __, __, __, 82, __, __, __, 83, 84, 85, 86, 87, 88, 89 } - }, - { - // LED Index to Physical Position - {0,0}, {26,0}, {39,0}, {52,0}, {65,0}, {85,0}, {98,0}, {111,0}, {124,0}, {144,0}, {157,0}, {170,0}, {183,0}, {198,0}, {211,0}, {224,0}, - {0,14}, {13,14}, {26,14}, {39,14}, {52,14}, {65,14}, {79,14}, {92,14}, {105,14}, {118,14}, {131,14}, {144,14}, {157,14}, {177,14}, {198,14}, {211,14}, {224,14}, - {3,26}, {20,26}, {33,26}, {46,26}, {59,26}, {72,26}, {85,26}, {98,26}, {111,26}, {124,26}, {138,26}, {151,26}, {164,26}, {180,26}, {198,26}, {211,26}, {224,26}, - {5,39}, {23,39}, {36,39}, {49,39}, {62,39}, {75,39}, {88,39}, {101,39}, {115,39}, {128,39}, {141,39}, {154,39}, {175,39}, {198,39}, {211,39}, {224,39}, - {8,51}, {29,51}, {43,51}, {56,51}, {69,51}, {82,51}, {95,51}, {108,51}, {121,51}, {134,51}, {147,51}, {172,51}, {211,51}, - {2,64}, {18,64}, {34,64}, {83,64}, {133,64}, {149,64}, {165,64}, {182,64}, {198,64}, {211,64}, {224,64}, - }, - { - // RGB LED Index to Flag - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 4, 4, 4, - 4, 8, 8, 8, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1, 4, 4, 4, - 1, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, - 8, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1, 4, 4, 4, - 1, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1, 1, - 1, 1, 1, 4, 1, 1, 1, 1, 1, 1, 1 - } -}; -#endif diff --git a/keyboards/keychron/k13_pro/config.h b/keyboards/keychron/k13_pro/config.h deleted file mode 100644 index 61b19bfea1..0000000000 --- a/keyboards/keychron/k13_pro/config.h +++ /dev/null @@ -1,93 +0,0 @@ -/* Copyright 2021 @ 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 . - */ - -#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 } - -/* Caps lock LED */ -#define LED_CAPS_LOCK_PIN A0 -#define LED_PIN_ON_STATE 1 - -/* 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 A10 - -# 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 A4 -# define BAT_LOW_LED_PIN_ON_STATE 1 - -# define HOST_DEVICES_COUNT 3 - -# define HOST_LED_PIN_LIST \ - { H3, H3, H3 } -# define HOST_LED_PIN_ON_STATE 1 - -# 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 WEAR_LEVELING_LOGICAL_SIZE 2048 -#define WEAR_LEVELING_BACKING_SIZE (WEAR_LEVELING_LOGICAL_SIZE * 2) -#define DYNAMIC_KEYMAP_EEPROM_MAX_ADDR 2047 - -#define INVERT_OS_SWITCH_STATTE diff --git a/keyboards/keychron/k13_pro/halconf.h b/keyboards/keychron/k13_pro/halconf.h deleted file mode 100644 index 306f917783..0000000000 --- a/keyboards/keychron/k13_pro/halconf.h +++ /dev/null @@ -1,29 +0,0 @@ -/* 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 _CHIBIOS_HAL_CONF_VER_8_0_ - -#define HAL_USE_I2C TRUE - -#ifdef KC_BLUETOOTH_ENABLE -# define PAL_USE_CALLBACKS TRUE -# define HAL_USE_SERIAL TRUE -# define HAL_USE_RTC TRUE -#endif - -#include_next diff --git a/keyboards/keychron/k13_pro/info.json b/keyboards/keychron/k13_pro/info.json deleted file mode 100644 index abdf3a3720..0000000000 --- a/keyboards/keychron/k13_pro/info.json +++ /dev/null @@ -1,227 +0,0 @@ -{ - "keyboard_name": "Keychron K13 Pro", - "manufacturer": "Keychron", - "url": "https://github.com/Keychron", - "maintainer": "lalalademaxiya1", - "processor": "STM32L432", - "bootloader": "stm32-dfu", - "usb": { - "vid": "0x3434" - }, - "features": { - "bootmagic": true, - "mousekey": true, - "extrakey": true, - "nkro": true, - "dip_switch": true, - "raw": true - }, - "diode_direction": "ROW2COL", - "matrix_size": { - "rows": 6, - "cols": 17 - }, - "matrix_pins": { - "rows": ["B5", "B4", "B3", "A15", "A14", "A13"], - "cols": ["C15", null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null], - "custom": true, - "custom_lite": true - }, - "layouts": { - "LAYOUT_ansi_90": { - "layout": [ - {"matrix":[0,0], "x":0, "y":0}, - {"matrix":[0,1], "x":2, "y":0}, - {"matrix":[0,2], "x":3, "y":0}, - {"matrix":[0,3], "x":4, "y":0}, - {"matrix":[0,4], "x":5, "y":0}, - {"matrix":[0,5], "x":6.5, "y":0}, - {"matrix":[0,6], "x":7.5, "y":0}, - {"matrix":[0,7], "x":8.5, "y":0}, - {"matrix":[0,8], "x":9.5, "y":0}, - {"matrix":[0,9], "x":11, "y":0}, - {"matrix":[0,10], "x":12, "y":0}, - {"matrix":[0,11], "x":13, "y":0}, - {"matrix":[0,12], "x":14, "y":0}, - {"matrix":[0,14], "x":15.25, "y":0}, - {"matrix":[0,15], "x":16.25, "y":0}, - {"matrix":[0,16], "x":17.25, "y":0}, - {"matrix":[1,0], "x":0, "y":1.25}, - {"matrix":[1,1], "x":1, "y":1.25}, - {"matrix":[1,2], "x":2, "y":1.25}, - {"matrix":[1,3], "x":3, "y":1.25}, - {"matrix":[1,4], "x":4, "y":1.25}, - {"matrix":[1,5], "x":5, "y":1.25}, - {"matrix":[1,6], "x":6, "y":1.25}, - {"matrix":[1,7], "x":7, "y":1.25}, - {"matrix":[1,8], "x":8, "y":1.25}, - {"matrix":[1,9], "x":9, "y":1.25}, - {"matrix":[1,10], "x":10, "y":1.25}, - {"matrix":[1,11], "x":11, "y":1.25}, - {"matrix":[1,12], "x":12, "y":1.25}, - {"matrix":[1,13], "x":13, "y":1.25, "w":2}, - {"matrix":[1,14], "x":15.25, "y":1.25}, - {"matrix":[1,15], "x":16.25, "y":1.25}, - {"matrix":[1,16], "x":17.25, "y":1.25}, - {"matrix":[2,0], "x":0, "y":2.25, "w":1.5}, - {"matrix":[2,1], "x":1.5, "y":2.25}, - {"matrix":[2,2], "x":2.5, "y":2.25}, - {"matrix":[2,3], "x":3.5, "y":2.25}, - {"matrix":[2,4], "x":4.5, "y":2.25}, - {"matrix":[2,5], "x":5.5, "y":2.25}, - {"matrix":[2,6], "x":6.5, "y":2.25}, - {"matrix":[2,7], "x":7.5, "y":2.25}, - {"matrix":[2,8], "x":8.5, "y":2.25}, - {"matrix":[2,9], "x":9.5, "y":2.25}, - {"matrix":[2,10], "x":10.5, "y":2.25}, - {"matrix":[2,11], "x":11.5, "y":2.25}, - {"matrix":[2,12], "x":12.5, "y":2.25}, - {"matrix":[2,13], "x":13.5, "y":2.25, "w":1.5}, - {"matrix":[2,14], "x":15.25, "y":2.25}, - {"matrix":[2,15], "x":16.25, "y":2.25}, - {"matrix":[2,16], "x":17.25, "y":2.25}, - {"matrix":[3,0], "x":0, "y":3.25, "w":1.75}, - {"matrix":[3,1], "x":1.75, "y":3.25}, - {"matrix":[3,2], "x":2.75, "y":3.25}, - {"matrix":[3,3], "x":3.75, "y":3.25}, - {"matrix":[3,4], "x":4.75, "y":3.25}, - {"matrix":[3,5], "x":5.75, "y":3.25}, - {"matrix":[3,6], "x":6.75, "y":3.25}, - {"matrix":[3,7], "x":7.75, "y":3.25}, - {"matrix":[3,8], "x":8.75, "y":3.25}, - {"matrix":[3,9], "x":9.75, "y":3.25}, - {"matrix":[3,10], "x":10.75, "y":3.25}, - {"matrix":[3,11], "x":11.75, "y":3.25}, - {"matrix":[3,13], "x":12.75, "y":3.25, "w":2.25}, - {"matrix":[3,14], "x":15.25, "y":3.25}, - {"matrix":[3,15], "x":16.25, "y":3.25}, - {"matrix":[3,16], "x":17.25, "y":3.25}, - {"matrix":[4,0], "x":0, "y":4.25, "w":2.25}, - {"matrix":[4,2], "x":2.25, "y":4.25}, - {"matrix":[4,3], "x":3.25, "y":4.25}, - {"matrix":[4,4], "x":4.25, "y":4.25}, - {"matrix":[4,5], "x":5.25, "y":4.25}, - {"matrix":[4,6], "x":6.25, "y":4.25}, - {"matrix":[4,7], "x":7.25, "y":4.25}, - {"matrix":[4,8], "x":8.25, "y":4.25}, - {"matrix":[4,9], "x":9.25, "y":4.25}, - {"matrix":[4,10], "x":10.25, "y":4.25}, - {"matrix":[4,11], "x":11.25, "y":4.25}, - {"matrix":[4,13], "x":12.25, "y":4.25, "w":2.75}, - {"matrix":[4,15], "x":16.25, "y":4.25}, - - {"matrix":[5,0], "x":0, "y":5.25, "w":1.25}, - {"matrix":[5,1], "x":1.25, "y":5.25, "w":1.25}, - {"matrix":[5,2], "x":2.5, "y":5.25, "w":1.25}, - {"matrix":[5,6], "x":3.75, "y":5.25, "w":6.25}, - {"matrix":[5,10], "x":10, "y":5.25, "w":1.25}, - {"matrix":[5,11], "x":11.25, "y":5.25, "w":1.25}, - {"matrix":[5,12], "x":12.5, "y":5.25, "w":1.25}, - {"matrix":[5,13], "x":13.75, "y":5.25, "w":1.25}, - {"matrix":[5,14], "x":15.25, "y":5.25}, - {"matrix":[5,15], "x":16.25, "y":5.25}, - {"matrix":[5,16], "x":17.25, "y":5.25} - ] - }, - "LAYOUT_iso_91": { - "layout": [ - {"matrix":[0,0], "x":0, "y":0}, - {"matrix":[0,1], "x":2, "y":0}, - {"matrix":[0,2], "x":3, "y":0}, - {"matrix":[0,3], "x":4, "y":0}, - {"matrix":[0,4], "x":5, "y":0}, - {"matrix":[0,5], "x":6.5, "y":0}, - {"matrix":[0,6], "x":7.5, "y":0}, - {"matrix":[0,7], "x":8.5, "y":0}, - {"matrix":[0,8], "x":9.5, "y":0}, - {"matrix":[0,9], "x":11, "y":0}, - {"matrix":[0,10], "x":12, "y":0}, - {"matrix":[0,11], "x":13, "y":0}, - {"matrix":[0,12], "x":14, "y":0}, - {"matrix":[0,14], "x":15.25, "y":0}, - {"matrix":[0,15], "x":16.25, "y":0}, - {"matrix":[0,16], "x":17.25, "y":0}, - - {"matrix":[1,0], "x":0, "y":1.25}, - {"matrix":[1,1], "x":1, "y":1.25}, - {"matrix":[1,2], "x":2, "y":1.25}, - {"matrix":[1,3], "x":3, "y":1.25}, - {"matrix":[1,4], "x":4, "y":1.25}, - {"matrix":[1,5], "x":5, "y":1.25}, - {"matrix":[1,6], "x":6, "y":1.25}, - {"matrix":[1,7], "x":7, "y":1.25}, - {"matrix":[1,8], "x":8, "y":1.25}, - {"matrix":[1,9], "x":9, "y":1.25}, - {"matrix":[1,10], "x":10, "y":1.25}, - {"matrix":[1,11], "x":11, "y":1.25}, - {"matrix":[1,12], "x":12, "y":1.25}, - {"matrix":[1,13], "x":13, "y":1.25, "w":2}, - {"matrix":[1,14], "x":15.25, "y":1.25}, - {"matrix":[1,15], "x":16.25, "y":1.25}, - {"matrix":[1,16], "x":17.25, "y":1.25}, - - {"matrix":[2,0], "x":0, "y":2.25, "w":1.5}, - {"matrix":[2,1], "x":1.5, "y":2.25}, - {"matrix":[2,2], "x":2.5, "y":2.25}, - {"matrix":[2,3], "x":3.5, "y":2.25}, - {"matrix":[2,4], "x":4.5, "y":2.25}, - {"matrix":[2,5], "x":5.5, "y":2.25}, - {"matrix":[2,6], "x":6.5, "y":2.25}, - {"matrix":[2,7], "x":7.5, "y":2.25}, - {"matrix":[2,8], "x":8.5, "y":2.25}, - {"matrix":[2,9], "x":9.5, "y":2.25}, - {"matrix":[2,10], "x":10.5, "y":2.25}, - {"matrix":[2,11], "x":11.5, "y":2.25}, - {"matrix":[2,12], "x":12.5, "y":2.25}, - {"matrix":[2,14], "x":15.25, "y":2.25}, - {"matrix":[2,15], "x":16.25, "y":2.25}, - {"matrix":[2,16], "x":17.25, "y":2.25}, - - {"matrix":[3,0], "x":0, "y":3.25, "w":1.75}, - {"matrix":[3,1], "x":1.75, "y":3.25}, - {"matrix":[3,2], "x":2.75, "y":3.25}, - {"matrix":[3,3], "x":3.75, "y":3.25}, - {"matrix":[3,4], "x":4.75, "y":3.25}, - {"matrix":[3,5], "x":5.75, "y":3.25}, - {"matrix":[3,6], "x":6.75, "y":3.25}, - {"matrix":[3,7], "x":7.75, "y":3.25}, - {"matrix":[3,8], "x":8.75, "y":3.25}, - {"matrix":[3,9], "x":9.75, "y":3.25}, - {"matrix":[3,10], "x":10.75, "y":3.25}, - {"matrix":[3,11], "x":11.75, "y":3.25}, - {"matrix":[3,13], "x":12.75, "y":3.25}, - {"matrix":[2,13], "x":13.75, "y":2.25, "w":1.25, "h":2}, - {"matrix":[3,14], "x":15.25, "y":3.25}, - {"matrix":[3,15], "x":16.25, "y":3.25}, - {"matrix":[3,16], "x":17.25, "y":3.25}, - - {"matrix":[4,0], "x":0, "y":4.25, "w":1.25}, - {"matrix":[4,1], "x":1.25, "y":4.25}, - {"matrix":[4,2], "x":2.25, "y":4.25}, - {"matrix":[4,3], "x":3.25, "y":4.25}, - {"matrix":[4,4], "x":4.25, "y":4.25}, - {"matrix":[4,5], "x":5.25, "y":4.25}, - {"matrix":[4,6], "x":6.25, "y":4.25}, - {"matrix":[4,7], "x":7.25, "y":4.25}, - {"matrix":[4,8], "x":8.25, "y":4.25}, - {"matrix":[4,9], "x":9.25, "y":4.25}, - {"matrix":[4,10], "x":10.25, "y":4.25}, - {"matrix":[4,11], "x":11.25, "y":4.25}, - {"matrix":[4,13], "x":12.25, "y":4.25, "w":2.75}, - {"matrix":[4,15], "x":16.25, "y":4.25}, - - {"matrix":[5,0], "x":0, "y":5.25, "w":1.25}, - {"matrix":[5,1], "x":1.25, "y":5.25, "w":1.25}, - {"matrix":[5,2], "x":2.5, "y":5.25, "w":1.25}, - {"matrix":[5,6], "x":3.75, "y":5.25, "w":6.25}, - {"matrix":[5,10], "x":10, "y":5.25, "w":1.25}, - {"matrix":[5,11], "x":11.25, "y":5.25, "w":1.25}, - {"matrix":[5,12], "x":12.5, "y":5.25, "w":1.25}, - {"matrix":[5,13], "x":13.75, "y":5.25, "w":1.25}, - {"matrix":[5,14], "x":15.25, "y":5.25}, - {"matrix":[5,15], "x":16.25, "y":5.25}, - {"matrix":[5,16], "x":17.25, "y":5.25} - ] - } - } -} diff --git a/keyboards/keychron/k13_pro/iso/rgb/config.h b/keyboards/keychron/k13_pro/iso/rgb/config.h deleted file mode 100644 index 0e3d05825d..0000000000 --- a/keyboards/keychron/k13_pro/iso/rgb/config.h +++ /dev/null @@ -1,49 +0,0 @@ -/* 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 . - */ - -#pragma once - -#ifdef RGB_MATRIX_ENABLE -/* RGB Matrix Driver Configuration */ -# define DRIVER_COUNT 2 -# define DRIVER_ADDR_1 0b1110111 -# define DRIVER_ADDR_2 0b1110100 -# define DRIVER_1_LED_TOTAL 47 -# define DRIVER_2_LED_TOTAL 44 -# define RGB_MATRIX_LED_COUNT (DRIVER_1_LED_TOTAL + DRIVER_2_LED_TOTAL) - -/* Set to infinit, which is use in USB mode by default */ -# define RGB_MATRIX_TIMEOUT RGB_MATRIX_TIMEOUT_INFINITE - -/* Allow to shutdown driver to save power */ -# define RGB_MATRIX_DRIVER_SHUTDOWN_ENABLE - -/* Turn off backllit if brightness value is low */ -# define RGB_MATRIX_BRIGHTNESS_TURN_OFF_VAL 48 - -/* Indication led */ -# define LOW_BAT_IND_INDEX 83 - -# define RGB_MATRIX_KEYPRESSES -# define RGB_MATRIX_FRAMEBUFFER_EFFECTS - -/* Use first 9 channels of LED driver */ -# define PHASE_CHANNEL MSKPHASE_9CHANNEL - -/* Set LED driver current */ -# define SNLED27351_CURRENT_TUNE \ - { 0x12, 0x12, 0x12, 0x12, 0x12, 0x12, 0x12, 0x12, 0x12, 0x12, 0x12, 0x12 } -#endif diff --git a/keyboards/keychron/k13_pro/iso/rgb/info.json b/keyboards/keychron/k13_pro/iso/rgb/info.json deleted file mode 100644 index 722223a486..0000000000 --- a/keyboards/keychron/k13_pro/iso/rgb/info.json +++ /dev/null @@ -1,35 +0,0 @@ -{ - "usb": { - "pid": "0x02D1", - "device_version": "1.0.0" - }, - "features": { - "rgb_matrix": true - }, - "rgb_matrix": { - "driver": "snled27351", - "animations": { - "breathing": true, - "band_spiral_val": true, - "cycle_all": true, - "cycle_left_right": true, - "cycle_up_down": true, - "rainbow_moving_chevron": true, - "cycle_out_in": true, - "cycle_out_in_dual": true, - "cycle_pinwheel": true, - "cycle_spiral": true, - "dual_beacon": true, - "rainbow_beacon": true, - "jellybean_raindrops": true, - "pixel_rain": true, - "typing_heatmap": true, - "digital_rain": true, - "solid_reactive_simple": true, - "solid_reactive_multiwide": true, - "solid_reactive_multinexus": true, - "splash": true, - "solid_splash": true - } - } -} diff --git a/keyboards/keychron/k13_pro/iso/rgb/keymaps/default/keymap.c b/keyboards/keychron/k13_pro/iso/rgb/keymaps/default/keymap.c deleted file mode 100644 index f381b1f3a6..0000000000 --- a/keyboards/keychron/k13_pro/iso/rgb/keymaps/default/keymap.c +++ /dev/null @@ -1,59 +0,0 @@ -/* 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 . - */ - -#include QMK_KEYBOARD_H - -// clang-format off -enum layers{ - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN -}; - -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_iso_91( - KC_ESC, KC_BRID, KC_BRIU, KC_MCTL, KC_LPAD, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_P7, KC_P8, KC_P9, - KC_GRV, 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_P4, KC_P5, KC_P6, - 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_P1, KC_P2, KC_P3, - 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_NUHS, KC_ENT, KC_DEL, KC_P0, KC_PDOT, - KC_LSFT, KC_NUBS, 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_LCTL, KC_LOPTN, KC_LCMMD, KC_SPC, KC_RCMMD, KC_ROPTN, MO(MAC_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - - [MAC_FN] = LAYOUT_iso_91( - _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, _______, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, KC_INS, KC_PGUP, KC_HOME, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, KC_SNAP, KC_PGDN, KC_END, _______, _______, KC_NUM, _______, _______, - _______, _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - - [WIN_BASE] = LAYOUT_iso_91( - KC_ESC, 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_P7, KC_P8, KC_P9, - KC_GRV, 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_P4, KC_P5, KC_P6, - 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_P1, KC_P2, KC_P3, - 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_NUHS, KC_ENT, KC_DEL, KC_P0, KC_PDOT, - KC_LSFT, KC_NUBS, 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_LCTL, KC_LWIN, KC_LALT, KC_SPC, KC_RALT, KC_RGUI, MO(WIN_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - - [WIN_FN] = LAYOUT_iso_91( - _______, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, _______, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, KC_APP, KC_SCRL, KC_INS, KC_PGUP, KC_HOME, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, KC_PSCR, KC_PGDN, KC_END, _______, _______, KC_NUM, _______, _______, - _______, _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______) -}; diff --git a/keyboards/keychron/k13_pro/iso/rgb/keymaps/via/keymap.c b/keyboards/keychron/k13_pro/iso/rgb/keymaps/via/keymap.c deleted file mode 100644 index f381b1f3a6..0000000000 --- a/keyboards/keychron/k13_pro/iso/rgb/keymaps/via/keymap.c +++ /dev/null @@ -1,59 +0,0 @@ -/* 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 . - */ - -#include QMK_KEYBOARD_H - -// clang-format off -enum layers{ - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN -}; - -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_iso_91( - KC_ESC, KC_BRID, KC_BRIU, KC_MCTL, KC_LPAD, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_P7, KC_P8, KC_P9, - KC_GRV, 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_P4, KC_P5, KC_P6, - 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_P1, KC_P2, KC_P3, - 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_NUHS, KC_ENT, KC_DEL, KC_P0, KC_PDOT, - KC_LSFT, KC_NUBS, 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_LCTL, KC_LOPTN, KC_LCMMD, KC_SPC, KC_RCMMD, KC_ROPTN, MO(MAC_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - - [MAC_FN] = LAYOUT_iso_91( - _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, _______, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, KC_INS, KC_PGUP, KC_HOME, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, KC_SNAP, KC_PGDN, KC_END, _______, _______, KC_NUM, _______, _______, - _______, _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - - [WIN_BASE] = LAYOUT_iso_91( - KC_ESC, 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_P7, KC_P8, KC_P9, - KC_GRV, 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_P4, KC_P5, KC_P6, - 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_P1, KC_P2, KC_P3, - 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_NUHS, KC_ENT, KC_DEL, KC_P0, KC_PDOT, - KC_LSFT, KC_NUBS, 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_LCTL, KC_LWIN, KC_LALT, KC_SPC, KC_RALT, KC_RGUI, MO(WIN_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - - [WIN_FN] = LAYOUT_iso_91( - _______, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, _______, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, KC_APP, KC_SCRL, KC_INS, KC_PGUP, KC_HOME, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, KC_PSCR, KC_PGDN, KC_END, _______, _______, KC_NUM, _______, _______, - _______, _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______) -}; diff --git a/keyboards/keychron/k13_pro/iso/rgb/keymaps/via/rules.mk b/keyboards/keychron/k13_pro/iso/rgb/keymaps/via/rules.mk deleted file mode 100644 index 45fa68954c..0000000000 --- a/keyboards/keychron/k13_pro/iso/rgb/keymaps/via/rules.mk +++ /dev/null @@ -1 +0,0 @@ -VIA_ENABLE = yes diff --git a/keyboards/keychron/k13_pro/iso/rgb/rgb.c b/keyboards/keychron/k13_pro/iso/rgb/rgb.c deleted file mode 100644 index f212932f66..0000000000 --- a/keyboards/keychron/k13_pro/iso/rgb/rgb.c +++ /dev/null @@ -1,158 +0,0 @@ - -/* 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 . - */ - -#include "quantum.h" - -// clang-format off -#ifdef RGB_MATRIX_ENABLE -const snled27351_led_t g_snled27351_leds[RGB_MATRIX_LED_COUNT] = { -/* Refer to snled27351manual for these locations - * driver - * | R location - * | | G location - * | | | B location - * | | | | */ - {0, I_1, G_1, H_1}, - {0, I_2, G_2, H_2}, - {0, I_3, G_3, H_3}, - {0, I_4, G_4, H_4}, - {0, I_5, G_5, H_5}, - {0, I_6, G_6, H_6}, - {0, I_7, G_7, H_7}, - {0, I_8, G_8, H_8}, - {0, I_9, G_9, H_9}, - {0, I_10, G_10, H_10}, - {0, I_11, G_11, H_11}, - {0, I_12, G_12, H_12}, - {0, I_13, G_13, H_13}, - {0, I_15, G_15, H_15}, - {0, I_16, G_16, H_16}, - {1, F_8, D_8, E_8}, - - {0, F_1, D_1, E_1}, - {0, F_2, D_2, E_2}, - {0, F_3, D_3, E_3}, - {0, F_4, D_4, E_4}, - {0, F_5, D_5, E_5}, - {0, F_6, D_6, E_6}, - {0, F_7, D_7, E_7}, - {0, F_8, D_8, E_8}, - {0, F_9, D_9, E_9}, - {0, F_10, D_10, E_10}, - {0, F_11, D_11, E_11}, - {0, F_12, D_12, E_12}, - {0, F_13, D_13, E_13}, - {0, F_14, D_14, E_14}, - {0, F_15, D_15, E_15}, - {0, F_16, D_16, E_16}, - {1, F_9, D_9, E_9}, - - {0, A_1, C_1, B_1}, - {0, A_2, C_2, B_2}, - {0, A_3, C_3, B_3}, - {0, A_4, C_4, B_4}, - {0, A_5, C_5, B_5}, - {0, A_6, C_6, B_6}, - {0, A_7, C_7, B_7}, - {0, A_8, C_8, B_8}, - {0, A_9, C_9, B_9}, - {0, A_10, C_10, B_10}, - {0, A_11, C_11, B_11}, - {0, A_12, C_12, B_12}, - {0, A_13, C_13, B_13}, - {0, A_14, C_14, B_14}, - {0, A_15, C_15, B_15}, - {0, A_16, C_16, B_16}, - {1, F_6, D_6, E_6}, - - {1, I_1, G_1, H_1}, - {1, I_2, G_2, H_2}, - {1, I_3, G_3, H_3}, - {1, I_4, G_4, H_4}, - {1, I_5, G_5, H_5}, - {1, I_6, G_6, H_6}, - {1, I_7, G_7, H_7}, - {1, I_8, G_8, H_8}, - {1, I_9, G_9, H_9}, - {1, I_10, G_10, H_10}, - {1, I_11, G_11, H_11}, - {1, I_12, G_12, H_12}, - {1, I_14, G_14, H_14}, - {1, I_15, G_15, H_15}, - {1, I_16, G_16, H_16}, - {1, I_13, G_13, H_13}, - - {1, C_1, A_1, B_1}, - {1, C_2, A_2, B_2}, - {1, C_3, A_3, B_3}, - {1, C_4, A_4, B_4}, - {1, C_5, A_5, B_5}, - {1, C_6, A_6, B_6}, - {1, C_7, A_7, B_7}, - {1, C_8, A_8, B_8}, - {1, C_9, A_9, B_9}, - {1, C_10, A_10, B_10}, - {1, C_11, A_11, B_11}, - {1, C_12, A_12, B_12}, - {1, C_14, A_14, B_14}, - {1, C_16, A_16, B_16}, - - {1, F_1, D_1, E_1}, - {1, F_2, D_2, E_2}, - {1, F_3, D_3, E_3}, - {1, F_7, D_7, E_7}, - {1, F_11, D_11, E_11}, - {1, F_12, D_12, E_12}, - {1, F_13, D_13, E_13}, - {1, F_14, D_14, E_14}, - {1, F_15, D_15, E_15}, - {1, F_16, D_16, E_16}, - {1, C_15, A_15, B_15} -}; - -#define __ NO_LED - -led_config_t g_led_config = { - { - // Key Matrix to LED Index - { 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, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49 }, - { 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, __, 62, 63, 64, 65 }, - { 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, __, 78, __, 79, __ }, - { 80, 81, 82, __, __, __, 83, __, __, __, 84, 85, 86, 87, 88, 89, 90 } - }, - { - // LED Index to Physical Position - {0,0}, {26,0}, {39,0}, {52,0}, {65,0}, {85,0}, {98,0}, {111,0}, {124,0}, {144,0}, {157,0}, {170,0}, {183,0}, {198,0}, {211,0}, {224,0}, - {0,14}, {13,14}, {26,14}, {39,14}, {52,14}, {65,14}, {79,14}, {92,14}, {105,14}, {118,14}, {131,14}, {144,14}, {157,14}, {177,14}, {198,14}, {211,14}, {224,14}, - {3,26}, {20,26}, {33,26}, {46,26}, {59,26}, {72,26}, {85,26}, {98,26}, {111,26}, {124,26}, {138,26}, {151,26}, {164,26}, {180,32}, {198,26}, {211,26}, {224,26}, - {5,39}, {23,39}, {36,39}, {49,39}, {62,39}, {75,39}, {88,39}, {101,39}, {115,39}, {128,39}, {141,39}, {154,39}, {167,39}, {198,39}, {211,39}, {224,39}, - {4,51}, {15,51}, {29,51}, {43,51}, {56,51}, {69,51}, {82,51}, {95,51}, {108,51}, {121,51}, {134,51}, {147,51}, {172,51}, {211,51}, - {2,64}, {18,64}, {34,64}, {83,64}, {133,64}, {149,64}, {165,64}, {182,64}, {198,64}, {211,64}, {224,64}, - }, - { - // RGB LED Index to Flag - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 4, 4, 4, - 4, 8, 8, 8, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1, 4, 4, 4, - 1, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, - 8, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1, 4, 4, 4, - 1, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1, 1, - 1, 1, 1, 4, 1, 1, 1, 1, 1, 1, 1 - } -}; -#endif diff --git a/keyboards/keychron/k13_pro/iso/rgb/rules.mk b/keyboards/keychron/k13_pro/iso/rgb/rules.mk deleted file mode 100644 index f886ea2e8e..0000000000 --- a/keyboards/keychron/k13_pro/iso/rgb/rules.mk +++ /dev/null @@ -1 +0,0 @@ -# This file intentionally blank \ No newline at end of file diff --git a/keyboards/keychron/k13_pro/iso/white/config.h b/keyboards/keychron/k13_pro/iso/white/config.h deleted file mode 100644 index 913de58896..0000000000 --- a/keyboards/keychron/k13_pro/iso/white/config.h +++ /dev/null @@ -1,44 +0,0 @@ -/* 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 . - */ - -#pragma once - -#ifdef LED_MATRIX_ENABLE -/* LED Matrix Driver Configuration */ -# define DRIVER_COUNT 1 -# define SNLED27351_I2C_ADDRESS_1 SNLED27351_I2C_ADDRESS_GND -# define DRIVER_1_LED_TOTAL 91 -# define LED_MATRIX_LED_COUNT DRIVER_1_LED_TOTAL - -/* Set to infinit, which is use in USB mode by default */ -# define LED_MATRIX_TIMEOUT LED_MATRIX_TIMEOUT_INFINITE - -/* Allow to shutdown driver to save power */ -# define LED_MATRIX_DRIVER_SHUTDOWN_ENABLE - -/* Turn off backllit if brightness value is low */ -# define LED_MATRIX_BRIGHTNESS_TURN_OFF_VAL 48 - -# define LOW_BAT_IND_INDEX 83 -# define LED_MATRIX_KEYPRESSES - -/* Use first 6 channels of LED driver */ -# define PHASE_CHANNEL MSKPHASE_6CHANNEL - -/* Set LED driver current */ -# define SNLED27351_CURRENT_TUNE \ - { 0x28, 0x28, 0x28, 0x28, 0x28, 0x28, 0x28, 0x28, 0x28, 0x28, 0x28, 0x28 } -#endif diff --git a/keyboards/keychron/k13_pro/iso/white/info.json b/keyboards/keychron/k13_pro/iso/white/info.json deleted file mode 100644 index 0309f87704..0000000000 --- a/keyboards/keychron/k13_pro/iso/white/info.json +++ /dev/null @@ -1,30 +0,0 @@ -{ - "usb": { - "pid": "0x02D4", - "device_version": "1.0.0" - }, - "features": { - "led_matrix": true - }, - "led_matrix": { - "driver": "snled27351", - "animations": { - "none": true, - "solid": true, - "breathing": true, - "band_pinwheel": true, - "band_spiral": true, - "cycle_left_right": true, - "cycle_up_down": true, - "cycle_out_in": true, - "dual_beacon": true, - "solid_reactive_simple": true, - "solid_reactive_multiwide": true, - "solid_reactive_multinexus": true, - "solid_splash": true, - "wave_left_right": true, - "wave_up_down": true, - "effect_max": true - } - } -} diff --git a/keyboards/keychron/k13_pro/iso/white/keymaps/default/keymap.c b/keyboards/keychron/k13_pro/iso/white/keymaps/default/keymap.c deleted file mode 100644 index d83fbdde58..0000000000 --- a/keyboards/keychron/k13_pro/iso/white/keymaps/default/keymap.c +++ /dev/null @@ -1,59 +0,0 @@ -/* 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 . - */ - -#include QMK_KEYBOARD_H - -// clang-format off -enum layers{ - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN -}; - -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_iso_91( - KC_ESC, KC_BRID, KC_BRIU, KC_MCTL, KC_LPAD, BL_DOWN, BL_UP, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_P7, KC_P8, KC_P9, - KC_GRV, 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_P4, KC_P5, KC_P6, - 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_P1, KC_P2, KC_P3, - 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_NUHS, KC_ENT, KC_DEL, KC_P0, KC_PDOT, - KC_LSFT, KC_NUBS, 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_LCTL, KC_LOPTN, KC_LCMMD, KC_SPC, KC_RCMMD, KC_ROPTN, MO(MAC_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - - [MAC_FN] = LAYOUT_iso_91( - _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, _______, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - BL_TOGG, BL_STEP, BL_UP, _______, _______, _______, _______, _______, _______, _______, KC_INS, KC_PGUP, KC_HOME, _______, _______, _______, - _______, _______, BL_DOWN, _______, _______, _______, _______, _______, _______, KC_SNAP, KC_PGDN, KC_END, _______, _______, KC_NUM, _______, _______, - _______, _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - - [WIN_BASE] = LAYOUT_iso_91( - KC_ESC, 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_P7, KC_P8, KC_P9, - KC_GRV, 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_P4, KC_P5, KC_P6, - 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_P1, KC_P2, KC_P3, - 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_NUHS, KC_ENT, KC_DEL, KC_P0, KC_PDOT, - KC_LSFT, KC_NUBS, 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_LCTL, KC_LWIN, KC_LALT, KC_SPC, KC_RALT, KC_RGUI, MO(WIN_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - - [WIN_FN] = LAYOUT_iso_91( - _______, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, BL_DOWN, BL_UP, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, _______, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - BL_TOGG, BL_STEP, BL_UP, _______, _______, _______, _______, _______, KC_APP, KC_SCRL, KC_INS, KC_PGUP, KC_HOME, _______, _______, _______, - _______, _______, BL_DOWN, _______, _______, _______, _______, _______, _______, KC_PSCR, KC_PGDN, KC_END, _______, _______, KC_NUM, _______, _______, - _______, _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______) -}; diff --git a/keyboards/keychron/k13_pro/iso/white/keymaps/via/keymap.c b/keyboards/keychron/k13_pro/iso/white/keymaps/via/keymap.c deleted file mode 100644 index a02b19cc15..0000000000 --- a/keyboards/keychron/k13_pro/iso/white/keymaps/via/keymap.c +++ /dev/null @@ -1,59 +0,0 @@ -/* 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 . - */ - -#include QMK_KEYBOARD_H - -// clang-format off -enum layers{ - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN -}; - -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_iso_91( - KC_ESC, KC_BRID, KC_BRIU, KC_MCTL, KC_LPAD, BL_DOWN, BL_UP, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_P7, KC_P8, KC_P9, - KC_GRV, 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_P4, KC_P5, KC_P6, - 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_P1, KC_P2, KC_P3, - 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_NUHS, KC_ENT, KC_DEL, KC_P0, KC_PDOT, - KC_LSFT, KC_NUBS, 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_LCTL, KC_LOPTN, KC_LCMMD, KC_SPC, KC_RCMMD, KC_ROPTN, MO(MAC_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - - [MAC_FN] = LAYOUT_iso_91( - _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, _______, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - BL_TOGG, BL_STEP, BL_UP, _______, _______, _______, _______, _______, _______, _______, KC_INS, KC_PGUP, KC_HOME, _______, _______, _______, - _______, _______, BL_DOWN, _______, _______, _______, _______, _______, _______, KC_SNAP, KC_PGDN, KC_END, _______, _______, KC_NUM, _______, _______, - _______, _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - - [WIN_BASE] = LAYOUT_iso_91( - KC_ESC, 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_P7, KC_P8, KC_P9, - KC_GRV, 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_P4, KC_P5, KC_P6, - 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_P1, KC_P2, KC_P3, - 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_NUHS, KC_ENT, KC_DEL, KC_P0, KC_PDOT, - KC_LSFT, KC_NUBS, 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_LCTL, KC_LWIN, KC_LALT, KC_SPC, KC_RALT, KC_RGUI, MO(WIN_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - - [WIN_FN] = LAYOUT_iso_91( - _______, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, BL_DOWN, BL_UP, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, _______, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - BL_TOGG, BL_STEP, BL_UP, _______, _______, _______, _______, _______, KC_APP, KC_SCRL, KC_INS, KC_PGUP, KC_HOME, _______, _______, _______, - _______, _______, BL_DOWN, _______, _______, _______, _______, _______, _______, KC_PSCR, KC_PGDN, KC_END, _______, _______, KC_NUM, _______, _______, - _______, _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______) -}; diff --git a/keyboards/keychron/k13_pro/iso/white/keymaps/via/rules.mk b/keyboards/keychron/k13_pro/iso/white/keymaps/via/rules.mk deleted file mode 100644 index 45fa68954c..0000000000 --- a/keyboards/keychron/k13_pro/iso/white/keymaps/via/rules.mk +++ /dev/null @@ -1 +0,0 @@ -VIA_ENABLE = yes diff --git a/keyboards/keychron/k13_pro/iso/white/rules.mk b/keyboards/keychron/k13_pro/iso/white/rules.mk deleted file mode 100644 index f886ea2e8e..0000000000 --- a/keyboards/keychron/k13_pro/iso/white/rules.mk +++ /dev/null @@ -1 +0,0 @@ -# This file intentionally blank \ No newline at end of file diff --git a/keyboards/keychron/k13_pro/iso/white/white.c b/keyboards/keychron/k13_pro/iso/white/white.c deleted file mode 100644 index 6d67ce2c50..0000000000 --- a/keyboards/keychron/k13_pro/iso/white/white.c +++ /dev/null @@ -1,155 +0,0 @@ -/* 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 . - */ - -#include "quantum.h" - -// clang-format off -#ifdef LED_MATRIX_ENABLE -const snled27351_led_t g_snled27351_leds[LED_MATRIX_LED_COUNT] = { -/* Refer to snled27351manual for these locations - * driver - * | LED address - * | | */ - {0, F_1}, - {0, F_2}, - {0, F_3}, - {0, F_4}, - {0, F_5}, - {0, F_6}, - {0, F_7}, - {0, F_8}, - {0, F_9}, - {0, F_10}, - {0, F_11}, - {0, F_12}, - {0, F_13}, - {0, F_15}, - {0, F_16}, - {0, A_8}, - - {0, E_1}, - {0, E_2}, - {0, E_3}, - {0, E_4}, - {0, E_5}, - {0, E_6}, - {0, E_7}, - {0, E_8}, - {0, E_9}, - {0, E_10}, - {0, E_11}, - {0, E_12}, - {0, E_13}, - {0, E_14}, - {0, E_15}, - {0, E_16}, - {0, A_9}, - - {0, D_1}, - {0, D_2}, - {0, D_3}, - {0, D_4}, - {0, D_5}, - {0, D_6}, - {0, D_7}, - {0, D_8}, - {0, D_9}, - {0, D_10}, - {0, D_11}, - {0, D_12}, - {0, D_13}, - {0, D_14}, - {0, D_15}, - {0, D_16}, - {0, A_6}, - - {0, C_1}, - {0, C_2}, - {0, C_3}, - {0, C_4}, - {0, C_5}, - {0, C_6}, - {0, C_7}, - {0, C_8}, - {0, C_9}, - {0, C_10}, - {0, C_11}, - {0, C_12}, - {0, C_14}, - {0, C_15}, - {0, C_16}, - {0, C_13}, - - {0, B_1}, - {0, B_2}, - {0, B_3}, - {0, B_4}, - {0, B_5}, - {0, B_6}, - {0, B_7}, - {0, B_8}, - {0, B_9}, - {0, B_10}, - {0, B_11}, - {0, B_12}, - {0, B_14}, - {0, B_16}, - - {0, A_1}, - {0, A_2}, - {0, A_3}, - {0, A_7}, - {0, A_11}, - {0, A_12}, - {0, A_13}, - {0, A_14}, - {0, A_15}, - {0, A_16}, - {0, B_15} -}; - -#define __ NO_LED - -led_config_t g_led_config = { - { - // Key Matrix to LED Index - { 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, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49 }, - { 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, __, 62, 63, 64, 65 }, - { 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, __, 78, __, 79, __ }, - { 80, 81, 82, __, __, __, 83, __, __, __, 84, 85, 86, 87, 88, 89, 90 } - }, - { - // LED Index to Physical Position - {0,0}, {26,0}, {39,0}, {52,0}, {65,0}, {85,0}, {98,0}, {111,0}, {124,0}, {144,0}, {157,0}, {170,0}, {183,0}, {198,0}, {211,0}, {224,0}, - {0,14}, {13,14}, {26,14}, {39,14}, {52,14}, {65,14}, {79,14}, {92,14}, {105,14}, {118,14}, {131,14}, {144,14}, {157,14}, {177,14}, {198,14}, {211,14}, {224,14}, - {3,26}, {20,26}, {33,26}, {46,26}, {59,26}, {72,26}, {85,26}, {98,26}, {111,26}, {124,26}, {138,26}, {151,26}, {164,26}, {180,32}, {198,26}, {211,26}, {224,26}, - {5,39}, {23,39}, {36,39}, {49,39}, {62,39}, {75,39}, {88,39}, {101,39}, {115,39}, {128,39}, {141,39}, {154,39}, {167,39}, {198,39}, {211,39}, {224,39}, - {4,51}, {15,51}, {29,51}, {43,51}, {56,51}, {69,51}, {82,51}, {95,51}, {108,51}, {121,51}, {134,51}, {147,51}, {172,51}, {211,51}, - {2,64}, {18,64}, {34,64}, {83,64}, {133,64}, {149,64}, {165,64}, {182,64}, {198,64}, {211,64}, {224,64}, - }, - { - // RGB LED Index to Flag - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 4, 4, 4, - 4, 8, 8, 8, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1, 4, 4, 4, - 1, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, - 8, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1, 4, 4, 4, - 1, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1, 1, - 1, 1, 1, 4, 1, 1, 1, 1, 1, 1, 1 - } -}; -#endif diff --git a/keyboards/keychron/k13_pro/k13_pro.c b/keyboards/keychron/k13_pro/k13_pro.c deleted file mode 100644 index 4830f3c69d..0000000000 --- a/keyboards/keychron/k13_pro/k13_pro.c +++ /dev/null @@ -1,308 +0,0 @@ -/* 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 . - */ - -#include "k13_pro.h" -#ifdef KC_BLUETOOTH_ENABLE -# include "ckbt51.h" -# include "bluetooth.h" -# include "indicator.h" -# include "transport.h" -# include "battery.h" -# include "bat_level_animation.h" -# include "lpm.h" -#endif - -#ifdef ENABLE_FACTORY_TEST -# include "factory_test.h" -#endif - -#ifndef POWER_ON_LED_DURATION -# define POWER_ON_LED_DURATION 3000 -#endif - -typedef struct PACKED { - uint8_t len; - uint8_t keycode[3]; -} key_combination_t; - -static uint32_t power_on_indicator_timer_buffer; -static uint32_t siri_timer_buffer = 0; -static uint8_t mac_keycode[4] = {KC_LOPT, KC_ROPT, KC_LCMD, KC_RCMD}; - -key_combination_t key_comb_list[4] = { - {2, {KC_LWIN, KC_TAB}}, // Task (win) - {2, {KC_LWIN, KC_E}}, // Files (win) - {3, {KC_LSFT, KC_LGUI, KC_4}}, // Snapshot (mac) - {2, {KC_LWIN, KC_C}} // Cortana (win) -}; - -#ifdef KC_BLUETOOTH_ENABLE -bool firstDisconnect = true; -bool bt_factory_reset = false; -static virtual_timer_t pairing_key_timer; -extern uint8_t g_pwm_buffer[DRIVER_COUNT][192]; - -static void pairing_key_timer_cb(void *arg) { - bluetooth_pairing_ex(*(uint8_t *)arg, NULL); -} -#endif - -bool dip_switch_update_kb(uint8_t index, bool active) { - if (index == 0) { -#ifdef INVERT_OS_SWITCH_STATTE - default_layer_set(1UL << (!active ? 2 : 0)); -#else - default_layer_set(1UL << (active ? 2 : 0)); -#endif - } - dip_switch_update_user(index, active); - - return true; -} - -#ifdef KC_BLUETOOTH_ENABLE -bool process_record_kb_bt(uint16_t keycode, keyrecord_t *record) { -#else -bool process_record_kb(uint16_t keycode, keyrecord_t *record) { -#endif - static uint8_t host_idx = 0; - - switch (keycode) { - case KC_LOPTN: - case KC_ROPTN: - case KC_LCMMD: - case KC_RCMMD: - if (record->event.pressed) { - register_code(mac_keycode[keycode - KC_LOPTN]); - } else { - unregister_code(mac_keycode[keycode - KC_LOPTN]); - } - return false; // Skip all further processing of this key) - case KC_TASK: - case KC_FILE: - case KC_SNAP: - case KC_CTANA: - if (record->event.pressed) { - for (uint8_t i = 0; i < key_comb_list[keycode - KC_TASK].len; i++) - register_code(key_comb_list[keycode - KC_TASK].keycode[i]); - } else { - for (uint8_t i = 0; i < key_comb_list[keycode - KC_TASK].len; i++) - unregister_code(key_comb_list[keycode - KC_TASK].keycode[i]); - } - return false; // Skip all further processing of this key - case KC_SIRI: - if (record->event.pressed && siri_timer_buffer == 0) { - register_code(KC_LGUI); - register_code(KC_SPACE); - siri_timer_buffer = sync_timer_read32() | 1; - } - return false; // Skip all further processing of this key -#ifdef KC_BLUETOOTH_ENABLE - case BT_HST1 ... BT_HST3: - if (get_transport() == TRANSPORT_BLUETOOTH) { - if (record->event.pressed) { - host_idx = keycode - BT_HST1 + 1; - chVTSet(&pairing_key_timer, TIME_MS2I(2000), (vtfunc_t)pairing_key_timer_cb, &host_idx); - bluetooth_connect_ex(host_idx, 0); - } else { - host_idx = 0; - chVTReset(&pairing_key_timer); - } - } - break; - case BAT_LVL: - if (get_transport() == TRANSPORT_BLUETOOTH && !usb_power_connected()) { - bat_level_animiation_start(battery_get_percentage()); - } - break; -#endif - default: -#ifdef FACTORY_RESET_CHECK - FACTORY_RESET_CHECK(keycode, record); -#endif - break; - } - return true; -} - -void keyboard_post_init_kb(void) { - dip_switch_read(true); - -#ifdef KC_BLUETOOTH_ENABLE - /* Currently we don't use this reset pin */ - palSetLineMode(CKBT51_RESET_PIN, PAL_MODE_UNCONNECTED); - - /* IMPORTANT: DO NOT enable internal pull-up resistor - * as there is an external pull-down resistor. - */ - palSetLineMode(USB_BT_MODE_SELECT_PIN, PAL_MODE_INPUT); - - ckbt51_init(false); - bluetooth_init(); -#endif - - power_on_indicator_timer_buffer = sync_timer_read32() == 0 ? 1 : sync_timer_read32(); -#ifdef KC_BLUETOOTH_ENABLE - writePin(H3, HOST_LED_PIN_ON_STATE); -#endif - writePin(BAT_LOW_LED_PIN, BAT_LOW_LED_PIN_ON_STATE); - writePin(LED_CAPS_LOCK_PIN, LED_PIN_ON_STATE); - - keyboard_post_init_user(); -} - -void matrix_scan_kb(void) { - if (power_on_indicator_timer_buffer) { - if (sync_timer_elapsed32(power_on_indicator_timer_buffer) > POWER_ON_LED_DURATION) { - power_on_indicator_timer_buffer = 0; - writePin(H3, !HOST_LED_PIN_ON_STATE); - writePin(BAT_LOW_LED_PIN, !BAT_LOW_LED_PIN_ON_STATE); - if (!host_keyboard_led_state().caps_lock) writePin(LED_CAPS_LOCK_PIN, !LED_PIN_ON_STATE); - } else { - writePin(H3, HOST_LED_PIN_ON_STATE); - writePin(BAT_LOW_LED_PIN, BAT_LOW_LED_PIN_ON_STATE); - writePin(LED_CAPS_LOCK_PIN, LED_PIN_ON_STATE); - } - } - - if (siri_timer_buffer && sync_timer_elapsed32(siri_timer_buffer) > 500) { - siri_timer_buffer = 0; - unregister_code(KC_LGUI); - unregister_code(KC_SPACE); - } - -#ifdef FACTORY_RESET_TASK - FACTORY_RESET_TASK(); -#endif - matrix_scan_user(); -} - -#ifdef KC_BLUETOOTH_ENABLE -static void ckbt51_param_init(void) { - /* Set bluetooth device name */ - // ckbt51_set_local_name(STR(PRODUCT)); - ckbt51_set_local_name(PRODUCT); - /* Set bluetooth parameters */ - module_param_t param = {.event_mode = 0x02, - .connected_idle_timeout = 7200, - .pairing_timeout = 180, - .pairing_mode = 0, - .reconnect_timeout = 5, - .report_rate = 90, - .vendor_id_source = 1, - .verndor_id = 0, // Must be 0x3434 - .product_id = PRODUCT_ID}; - ckbt51_set_param(¶m); -} - -void bluetooth_enter_disconnected_kb(uint8_t host_idx) { - if (bt_factory_reset) { - bt_factory_reset = false; - ckbt51_param_init(); - } - /* CKBT51 bluetooth module boot time is slower, it enters disconnected after boot, - so we place initialization here. */ - if (firstDisconnect && sync_timer_read32() < 1000 && get_transport() == TRANSPORT_BLUETOOTH) { - ckbt51_param_init(); - bluetooth_connect(); - firstDisconnect = false; - } -} - -void ckbt51_default_ack_handler(uint8_t *data, uint8_t len) { - if (data[1] == 0x45) { - module_param_t param = {.event_mode = 0x02, - .connected_idle_timeout = 7200, - .pairing_timeout = 180, - .pairing_mode = 0, - .reconnect_timeout = 5, - .report_rate = 90, - .vendor_id_source = 1, - .verndor_id = 0, // Must be 0x3434 - .product_id = PRODUCT_ID}; - ckbt51_set_param(¶m); - } -} - -void bluetooth_pre_task(void) { - static uint8_t mode = 1; - - if (readPin(USB_BT_MODE_SELECT_PIN) != mode) { - if (readPin(USB_BT_MODE_SELECT_PIN) != mode) { - mode = readPin(USB_BT_MODE_SELECT_PIN); - set_transport(mode == 0 ? TRANSPORT_BLUETOOTH : TRANSPORT_USB); - } - } -} -#endif - -void battery_calculte_voltage(uint16_t value) { - uint16_t voltage = ((uint32_t)value) * 2246 / 1000; - -#ifdef LED_MATRIX_ENABLE - if (led_matrix_is_enabled()) { - uint32_t totalBuf = 0; - - for (uint8_t i = 0; i < DRIVER_COUNT; i++) - for (uint8_t j = 0; j < 192; j++) - totalBuf += g_pwm_buffer[i][j]; - /* We assumpt it is linear relationship*/ - voltage += (30 * totalBuf / LED_MATRIX_LED_COUNT / 255); - } -#endif -#ifdef RGB_MATRIX_ENABLE - if (rgb_matrix_is_enabled()) { - uint32_t totalBuf = 0; - - for (uint8_t i = 0; i < DRIVER_COUNT; i++) - for (uint8_t j = 0; j < 192; j++) - totalBuf += g_pwm_buffer[i][j]; - /* We assumpt it is linear relationship*/ - uint32_t compensation = 60 * totalBuf / RGB_MATRIX_LED_COUNT / 255 / 3; - voltage += compensation; - } -#endif - battery_set_voltage(voltage); -} - -bool via_command_kb(uint8_t *data, uint8_t length) { - switch (data[0]) { -#ifdef KC_BLUETOOTH_ENABLE - case 0xAA: - ckbt51_dfu_rx(data, length); - break; -#endif -#ifdef ENABLE_FACTORY_TEST - case 0xAB: - factory_test_rx(data, length); - break; -#endif - default: - return false; - } - - return true; -} - -#if !defined(VIA_ENABLE) -void raw_hid_receive(uint8_t *data, uint8_t length) { - switch (data[0]) { - case RAW_HID_CMD: - via_command_kb(data, length); - break; - } -} -#endif diff --git a/keyboards/keychron/k13_pro/k13_pro.h b/keyboards/keychron/k13_pro/k13_pro.h deleted file mode 100644 index cd0954d579..0000000000 --- a/keyboards/keychron/k13_pro/k13_pro.h +++ /dev/null @@ -1,55 +0,0 @@ -/* 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 . - */ - -#pragma once - -#include "quantum.h" -#ifdef VIA_ENABLE -# include "via.h" -#endif - -#define ___ KC_NO - -#ifdef VIA_ENABLE -# define USER_START QK_KB_0 -#else -# define USER_START SAFE_RANGE -#endif - -// clang-format off -enum { - KC_LOPTN = USER_START, - KC_ROPTN, - KC_LCMMD, - KC_RCMMD, - KC_TASK, - KC_FILE, - KC_SNAP, - KC_CTANA, - KC_SIRI, -#ifdef KC_BLUETOOTH_ENABLE - BT_HST1, - BT_HST2, - BT_HST3, - BAT_LVL, -#else - BT_HST1 = KC_TRNS, - BT_HST2 = KC_TRNS, - BT_HST3 = KC_TRNS, - BAT_LVL = KC_TRNS, -#endif - NEW_SAFE_RANGE -}; diff --git a/keyboards/keychron/k13_pro/matrix.c b/keyboards/keychron/k13_pro/matrix.c deleted file mode 100644 index 22d2ac1e11..0000000000 --- a/keyboards/keychron/k13_pro/matrix.c +++ /dev/null @@ -1,213 +0,0 @@ -/* 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 . - */ - -#include "quantum.h" - -#define HC595_STCP B0 -#define HC595_SHCP A1 -#define HC595_DS A7 - -pin_t row_pins[MATRIX_ROWS] = MATRIX_ROW_PINS; -pin_t col_pins[MATRIX_COLS] = MATRIX_COL_PINS; - -static inline void setPinOutput_writeLow(pin_t pin) { - ATOMIC_BLOCK_FORCEON { - setPinOutput(pin); - writePinLow(pin); - } -} - -static inline void setPinOutput_writeHigh(pin_t pin) { - ATOMIC_BLOCK_FORCEON { - setPinOutput(pin); - writePinHigh(pin); - } -} - -static inline void setPinInput_high(pin_t pin) { - ATOMIC_BLOCK_FORCEON { - setPinInputHigh(pin); - } -} - -static inline uint8_t readMatrixPin(pin_t pin) { - if (pin != NO_PIN) { - return readPin(pin); - } else { - return 1; - } -} - -static inline void HC595_delay(uint16_t n) { - while (n-- > 0) { - asm volatile("nop" ::: "memory"); - } -} - -static void HC595_output(uint16_t data) { - ATOMIC_BLOCK_FORCEON { - for (uint8_t i = 0; i < MATRIX_COLS; i++) { - if (data & 0x1) { - writePinHigh(HC595_DS); - } else { - writePinLow(HC595_DS); - } - - data = data >> 1; - - writePinHigh(HC595_SHCP); - HC595_delay(1); - writePinLow(HC595_SHCP); - HC595_delay(1); - } - writePinHigh(HC595_STCP); - HC595_delay(1); - writePinLow(HC595_STCP); - HC595_delay(1); - } -} - -static void HC595_output_oneBit(uint8_t data) { - ATOMIC_BLOCK_FORCEON { - if (data & 0x1) { - writePinHigh(HC595_DS); - } else { - writePinLow(HC595_DS); - } - - writePinHigh(HC595_SHCP); - HC595_delay(1); - writePinLow(HC595_SHCP); - HC595_delay(1); - - writePinHigh(HC595_STCP); - HC595_delay(1); - writePinLow(HC595_STCP); - HC595_delay(1); - } -} - -static bool select_col(uint8_t col) { - pin_t pin = col_pins[col]; - - if (pin != NO_PIN) { - setPinOutput_writeLow(pin); - return true; - } else { - if (col == 1) { - HC595_output_oneBit(0x00); - } - return true; - } - return false; -} - -static void unselect_col(uint8_t col) { - pin_t pin = col_pins[col]; - - if (pin != NO_PIN) { -#ifdef MATRIX_UNSELECT_DRIVE_HIGH - setPinOutput_writeHigh(pin); -#else - setPinInput_high(pin); -#endif - } else { - HC595_output_oneBit(0x01); - } -} - -static void unselect_cols(void) { - for (uint8_t x = 0; x < MATRIX_COLS; x++) { - pin_t pin = col_pins[x]; - if (pin != NO_PIN) { -#ifdef MATRIX_UNSELECT_DRIVE_HIGH - setPinOutput_writeHigh(pin); -#else - setPinInput_high(pin); -#endif - } else { - if (x == 1) HC595_output(0xFFFF); - } - } -} - -void select_all_cols(void) { - for (uint8_t x = 0; x < MATRIX_COLS; x++) { - pin_t pin = col_pins[x]; - if (pin != NO_PIN) { - setPinOutput_writeLow(pin); - } else { - if (x == 1) HC595_output(0x0000); - } - } -} - -static void matrix_read_rows_on_col(matrix_row_t current_matrix[], uint8_t current_col, matrix_row_t row_shifter) { - bool key_pressed = false; - - // Select col - if (!select_col(current_col)) { // select col - return; // skip NO_PIN col - } - - matrix_output_select_delay(); - - // For each row... - for (uint8_t row_index = 0; row_index < MATRIX_ROWS; row_index++) { - // Check row pin state - if (readMatrixPin(row_pins[row_index]) == 0) { - // Pin LO, set col bit - current_matrix[row_index] |= row_shifter; - key_pressed = true; - } else { - // Pin HI, clear col bit - current_matrix[row_index] &= ~row_shifter; - } - } - - // Unselect col - unselect_col(current_col); - matrix_output_unselect_delay(current_col, key_pressed); // wait for all Row signals to go HIGH -} - -void matrix_init_custom(void) { - setPinOutput(HC595_DS); - setPinOutput(HC595_STCP); - setPinOutput(HC595_SHCP); - - for (uint8_t x = 0; x < MATRIX_ROWS; x++) { - if (row_pins[x] != NO_PIN) { - setPinInput_high(row_pins[x]); - } - } - - unselect_cols(); -} - -bool matrix_scan_custom(matrix_row_t current_matrix[]) { - matrix_row_t curr_matrix[MATRIX_ROWS] = {0}; - - // Set col, read rows - matrix_row_t row_shifter = MATRIX_ROW_SHIFTER; - for (uint8_t current_col = 0; current_col < MATRIX_COLS; current_col++, row_shifter <<= 1) { - matrix_read_rows_on_col(curr_matrix, current_col, row_shifter); - } - - bool changed = memcmp(current_matrix, curr_matrix, sizeof(curr_matrix)) != 0; - if (changed) memcpy(current_matrix, curr_matrix, sizeof(curr_matrix)); - - return changed; -} diff --git a/keyboards/keychron/k13_pro/mcuconf.h b/keyboards/keychron/k13_pro/mcuconf.h deleted file mode 100644 index 30b6109616..0000000000 --- a/keyboards/keychron/k13_pro/mcuconf.h +++ /dev/null @@ -1,39 +0,0 @@ -/* 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 - -/* Set HCLK to 48 MHz as tradeoff of USB lowest clockand and - * lower power comsumption for bluetooth. Will use dynamic - * clock when STM32L4 is supported in ChibiOS */ -#undef STM32_PLLM_VALUE -#define STM32_PLLM_VALUE 2 - -#undef STM32_PLLN_VALUE -#define STM32_PLLN_VALUE 12 - -#undef STM32_I2C_USE_I2C1 -#define STM32_I2C_USE_I2C1 TRUE - -#ifdef KC_BLUETOOTH_ENABLE -# undef STM32_SERIAL_USE_USART2 -# define STM32_SERIAL_USE_USART2 TRUE -#endif - - - diff --git a/keyboards/keychron/k13_pro/readme.md b/keyboards/keychron/k13_pro/readme.md deleted file mode 100644 index 080a275609..0000000000 --- a/keyboards/keychron/k13_pro/readme.md +++ /dev/null @@ -1,21 +0,0 @@ -# Keychron K13 Pro - -![Keychron K13 Pro](https://github.com/Keychron/ProductImage/blob/main/K_Pro/k13_pro.jpg?raw=true) - -A customizable 80% TKL keyboard. - -* Keyboard Maintainer: [Keychron](https://github.com/keychron) -* Hardware Supported: Keychron K13 Pro -* Hardware Availability: [Keychron K13 Pro]() - -Make example for this keyboard (after setting up your build environment): - - make keychron/k13_pro/ansi/rgb:default - -Flashing example for this keyboard: - - make keychron/k13_pro/ansi/rgb:default:flash - -**Reset Key**: Connect the USB cable, toggle mode switch to "Off", hold down the *Esc* key or reset button underneath space bar, then toggle then switch to "Cable". - -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). diff --git a/keyboards/keychron/k13_pro/rules.mk b/keyboards/keychron/k13_pro/rules.mk deleted file mode 100644 index 1f9fc1ab58..0000000000 --- a/keyboards/keychron/k13_pro/rules.mk +++ /dev/null @@ -1,7 +0,0 @@ -# Enter lower-power sleep mode when on the ChibiOS idle thread -OPT_DEFS += -DCORTEX_ENABLE_WFI_IDLE=TRUE -OPT_DEFS += -DNO_USB_STARTUP_CHECK -DENABLE_FACTORY_TEST - -SRC += matrix.c - -include keyboards/keychron/bluetooth/bluetooth.mk diff --git a/keyboards/keychron/k13_pro/via_json/k13_pro_ansi_rgb.json b/keyboards/keychron/k13_pro/via_json/k13_pro_ansi_rgb.json deleted file mode 100644 index 032d92721b..0000000000 --- a/keyboards/keychron/k13_pro/via_json/k13_pro_ansi_rgb.json +++ /dev/null @@ -1,294 +0,0 @@ -{ - "name": "Keychron K13 Pro ANSI RGB", - "vendorId": "0x3434", - "productId": "0x0D10", - "keycodes": ["qmk_lighting"], - "menus": [ - { - "label": "Lighting", - "content": [ - { - "label": "Backlight", - "content": [ - { - "label": "Brightness", - "type": "range", - "options": [0, 255], - "content": ["id_qmk_rgb_matrix_brightness", 3, 1] - }, - { - "label": "Effect", - "type": "dropdown", - "content": ["id_qmk_rgb_matrix_effect", 3, 2], - "options": [ - ["None", 0], - ["Solid Color", 1], - ["Breathing", 2], - ["Band Spiral Val", 3], - ["Cycle All", 4], - ["Cycle Left Right", 5], - ["Cycle Up Down", 6], - ["Rainbow Moving Chevron", 7], - ["Cycle Out In", 8], - ["Cycle Out In Dual", 9], - ["Cycle Pinwheel", 10], - ["Cycle Spiral", 11], - ["Dual Beacon", 12], - ["Rainbow Beacon", 13], - ["Jellybean Raindrops", 14], - ["Pixel Rain", 15], - ["Typing Heatmap", 16], - ["Digital Rain", 17], - ["Reactive Simple", 18], - ["Reactive Multiwide", 19], - ["Reactive Multinexus", 20], - ["Splash", 21], - ["Solid Splash", 22] - ] - }, - { - "showIf": "{id_qmk_rgb_matrix_effect} > 1", - "label": "Effect Speed", - "type": "range", - "options": [0, 255], - "content": ["id_qmk_rgb_matrix_effect_speed", 3, 3] - }, - { - "showIf": "{id_qmk_rgb_matrix_effect} != 0 && ( {id_qmk_rgb_matrix_effect} < 4 || {id_qmk_rgb_matrix_effect} == 18 || ({id_qmk_rgb_matrix_effect} > 17 && {id_qmk_rgb_matrix_effect} != 21) ) ", - "label": "Color", - "type": "color", - "content": ["id_qmk_rgb_matrix_color", 3, 4] - } - ] - } - ] - } - ], - "customKeycodes": [ - {"name": "Left Option", "title": "Left Option", "shortName": "LOpt"}, - {"name": "Right Option", "title": "Right Option", "shortName": "ROpt"}, - {"name": "Left Cmd", "title": "Left Command", "shortName": "LCmd"}, - {"name": "Right Cmd", "title": "Right Command", "shortName": "RCmd"}, - {"name": "Task View", "title": "Task View in Windows", "shortName": "Task"}, - {"name": "File Explorer", "title": "File Explorer in Windows", "shortName": "File"}, - {"name": "Screen shot", "title": "Screenshot in macOS", "shortName": "SShot"}, - {"name": "Cortana", "title": "Cortana in Windows", "shortName": "Cortana"}, - {"name": "Siri", "title": "Siri in macOS", "shortName": "Siri"}, - {"name": "Bluetooth Host 1", "title": "Bluetooth Host 1", "shortName": "BTH1"}, - {"name": "Bluetooth Host 2", "title": "Bluetooth Host 2", "shortName": "BTH2"}, - {"name": "Bluetooth Host 3", "title": "Bluetooth Host 3", "shortName": "BTH3"}, - {"name": "Battery Level", "title": "Show battery level", "shortName": "Batt"} - ], - "matrix": {"rows": 6, "cols": 17}, - "layouts": { - "keymap": [ - [ - { - "c": "#777777" - }, - "0,0", - { - "x": 1, - "c": "#cccccc" - }, - "0,1", - "0,2", - "0,3", - "0,4", - { - "x": 0.5, - "c": "#aaaaaa" - }, - "0,5", - "0,6", - "0,7", - "0,8", - { - "x": 0.5, - "c": "#cccccc" - }, - "0,9", - "0,10", - "0,11", - "0,12", - { - "x": 0.25, - "c": "#aaaaaa" - }, - "0,14", - "0,15", - "0,16" - ], - [ - { - "y": 0.25 - }, - "1,0", - { - "c": "#cccccc" - }, - "1,1", - "1,2", - "1,3", - "1,4", - "1,5", - "1,6", - "1,7", - "1,8", - "1,9", - "1,10", - "1,11", - "1,12", - { - "c": "#aaaaaa", - "w": 2 - }, - "1,13", - { - "x": 0.25 - }, - "1,14", - "1,15", - "1,16" - ], - [ - { - "w": 1.5 - }, - "2,0", - { - "c": "#cccccc" - }, - "2,1", - "2,2", - "2,3", - "2,4", - "2,5", - "2,6", - "2,7", - "2,8", - "2,9", - "2,10", - "2,11", - "2,12", - { - "c": "#aaaaaa", - "w": 1.5 - }, - "2,13", - { - "x": 0.25 - }, - "2,14", - "2,15", - "2,16" - ], - [ - { - "w": 1.75 - }, - "3,0", - { - "c": "#cccccc" - }, - "3,1", - "3,2", - "3,3", - "3,4", - "3,5", - "3,6", - "3,7", - "3,8", - "3,9", - "3,10", - "3,11", - { - "c": "#777777", - "w": 2.25 - }, - "3,13", - { - "x": 0.25, - "c": "#aaaaaa" - }, - "3,14", - "3,15", - "3,16" - ], - [ - { - "c": "#aaaaaa", - "w": 2.25 - }, - "4,0", - { - "c": "#cccccc" - }, - "4,2", - "4,3", - "4,4", - "4,5", - "4,6", - "4,7", - "4,8", - "4,9", - "4,10", - "4,11", - { - "c": "#aaaaaa", - "w": 2.75 - }, - "4,13", - { - "x": 1.25, - "c": "#777777" - }, - "4,15" - ], - [ - { - "c": "#aaaaaa", - "w": 1.25 - }, - "5,0", - { - "w": 1.25 - }, - "5,1", - { - "w": 1.25 - }, - "5,2", - { - "c": "#cccccc", - "w": 6.25 - }, - "5,6", - { - "c": "#aaaaaa", - "w": 1.25 - }, - "5,10", - { - "w": 1.25 - }, - "5,11", - { - "w": 1.25 - }, - "5,12", - { - "w": 1.25 - }, - "5,13", - { - "x": 0.25, - "c": "#777777" - }, - "5,14", - "5,15", - "5,16" - ] - ] - } -} diff --git a/keyboards/keychron/k13_pro/via_json/k13_pro_ansi_white.json b/keyboards/keychron/k13_pro/via_json/k13_pro_ansi_white.json deleted file mode 100644 index 43e5acc282..0000000000 --- a/keyboards/keychron/k13_pro/via_json/k13_pro_ansi_white.json +++ /dev/null @@ -1,233 +0,0 @@ -{ - "name": "Keychron K13 Pro ANSI White", - "vendorId": "0x3434", - "productId": "0x02D3", - "keycodes": ["qmk_lighting"], - "customKeycodes": [ - {"name": "Left Option", "title": "Left Option", "shortName": "LOpt"}, - {"name": "Right Option", "title": "Right Option", "shortName": "ROpt"}, - {"name": "Left Cmd", "title": "Left Command", "shortName": "LCmd"}, - {"name": "Right Cmd", "title": "Right Command", "shortName": "RCmd"}, - {"name": "Task View", "title": "Task View in Windows", "shortName": "Task"}, - {"name": "File Explorer", "title": "File Explorer in Windows", "shortName": "File"}, - {"name": "Screen shot", "title": "Screenshot in macOS", "shortName": "SShot"}, - {"name": "Cortana", "title": "Cortana in Windows", "shortName": "Cortana"}, - {"name": "Siri", "title": "Siri in macOS", "shortName": "Siri"}, - {"name": "Bluetooth Host 1", "title": "Bluetooth Host 1", "shortName": "BTH1"}, - {"name": "Bluetooth Host 2", "title": "Bluetooth Host 2", "shortName": "BTH2"}, - {"name": "Bluetooth Host 3", "title": "Bluetooth Host 3", "shortName": "BTH3"}, - {"name": "Battery Level", "title": "Show battery level", "shortName": "Batt"} - ], - "matrix": {"rows": 6, "cols": 17}, - "layouts": { - "keymap": [ - [ - { - "c": "#777777" - }, - "0,0", - { - "x": 1, - "c": "#cccccc" - }, - "0,1", - "0,2", - "0,3", - "0,4", - { - "x": 0.5, - "c": "#aaaaaa" - }, - "0,5", - "0,6", - "0,7", - "0,8", - { - "x": 0.5, - "c": "#cccccc" - }, - "0,9", - "0,10", - "0,11", - "0,12", - { - "x": 0.25, - "c": "#aaaaaa" - }, - "0,14", - "0,15", - "0,16" - ], - [ - { - "y": 0.25 - }, - "1,0", - { - "c": "#cccccc" - }, - "1,1", - "1,2", - "1,3", - "1,4", - "1,5", - "1,6", - "1,7", - "1,8", - "1,9", - "1,10", - "1,11", - "1,12", - { - "c": "#aaaaaa", - "w": 2 - }, - "1,13", - { - "x": 0.25 - }, - "1,14", - "1,15", - "1,16" - ], - [ - { - "w": 1.5 - }, - "2,0", - { - "c": "#cccccc" - }, - "2,1", - "2,2", - "2,3", - "2,4", - "2,5", - "2,6", - "2,7", - "2,8", - "2,9", - "2,10", - "2,11", - "2,12", - { - "c": "#aaaaaa", - "w": 1.5 - }, - "2,13", - { - "x": 0.25 - }, - "2,14", - "2,15", - "2,16" - ], - [ - { - "w": 1.75 - }, - "3,0", - { - "c": "#cccccc" - }, - "3,1", - "3,2", - "3,3", - "3,4", - "3,5", - "3,6", - "3,7", - "3,8", - "3,9", - "3,10", - "3,11", - { - "c": "#777777", - "w": 2.25 - }, - "3,13", - { - "x": 0.25, - "c": "#aaaaaa" - }, - "3,14", - "3,15", - "3,16" - ], - [ - { - "c": "#aaaaaa", - "w": 2.25 - }, - "4,0", - { - "c": "#cccccc" - }, - "4,2", - "4,3", - "4,4", - "4,5", - "4,6", - "4,7", - "4,8", - "4,9", - "4,10", - "4,11", - { - "c": "#aaaaaa", - "w": 2.75 - }, - "4,13", - { - "x": 1.25, - "c": "#777777" - }, - "4,15" - ], - [ - { - "c": "#aaaaaa", - "w": 1.25 - }, - "5,0", - { - "w": 1.25 - }, - "5,1", - { - "w": 1.25 - }, - "5,2", - { - "c": "#cccccc", - "w": 6.25 - }, - "5,6", - { - "c": "#aaaaaa", - "w": 1.25 - }, - "5,10", - { - "w": 1.25 - }, - "5,11", - { - "w": 1.25 - }, - "5,12", - { - "w": 1.25 - }, - "5,13", - { - "x": 0.25, - "c": "#777777" - }, - "5,14", - "5,15", - "5,16" - ] - ] - } -} diff --git a/keyboards/keychron/k13_pro/via_json/k13_pro_iso_rgb.json b/keyboards/keychron/k13_pro/via_json/k13_pro_iso_rgb.json deleted file mode 100644 index 35637b07f7..0000000000 --- a/keyboards/keychron/k13_pro/via_json/k13_pro_iso_rgb.json +++ /dev/null @@ -1,296 +0,0 @@ -{ - "name": "Keychron K13 Pro ISO RGB", - "vendorId": "0x3434", - "productId": "0x02D1", - "keycodes": ["qmk_lighting"], - "menus": [ - { - "label": "Lighting", - "content": [ - { - "label": "Backlight", - "content": [ - { - "label": "Brightness", - "type": "range", - "options": [0, 255], - "content": ["id_qmk_rgb_matrix_brightness", 3, 1] - }, - { - "label": "Effect", - "type": "dropdown", - "content": ["id_qmk_rgb_matrix_effect", 3, 2], - "options": [ - ["None", 0], - ["Solid Color", 1], - ["Breathing", 2], - ["Band Spiral Val", 3], - ["Cycle All", 4], - ["Cycle Left Right", 5], - ["Cycle Up Down", 6], - ["Rainbow Moving Chevron", 7], - ["Cycle Out In", 8], - ["Cycle Out In Dual", 9], - ["Cycle Pinwheel", 10], - ["Cycle Spiral", 11], - ["Dual Beacon", 12], - ["Rainbow Beacon", 13], - ["Jellybean Raindrops", 14], - ["Pixel Rain", 15], - ["Typing Heatmap", 16], - ["Digital Rain", 17], - ["Reactive Simple", 18], - ["Reactive Multiwide", 19], - ["Reactive Multinexus", 20], - ["Splash", 21], - ["Solid Splash", 22] - ] - }, - { - "showIf": "{id_qmk_rgb_matrix_effect} > 1", - "label": "Effect Speed", - "type": "range", - "options": [0, 255], - "content": ["id_qmk_rgb_matrix_effect_speed", 3, 3] - }, - { - "showIf": "{id_qmk_rgb_matrix_effect} != 0 && ( {id_qmk_rgb_matrix_effect} < 4 || {id_qmk_rgb_matrix_effect} == 18 || ({id_qmk_rgb_matrix_effect} > 17 && {id_qmk_rgb_matrix_effect} != 21) ) ", - "label": "Color", - "type": "color", - "content": ["id_qmk_rgb_matrix_color", 3, 4] - } - ] - } - ] - } - ], - "customKeycodes": [ - {"name": "Left Option", "title": "Left Option", "shortName": "LOpt"}, - {"name": "Right Option", "title": "Right Option", "shortName": "ROpt"}, - {"name": "Left Cmd", "title": "Left Command", "shortName": "LCmd"}, - {"name": "Right Cmd", "title": "Right Command", "shortName": "RCmd"}, - {"name": "Task View", "title": "Task View in Windows", "shortName": "Task"}, - {"name": "File Explorer", "title": "File Explorer in Windows", "shortName": "File"}, - {"name": "Screen shot", "title": "Screenshot in macOS", "shortName": "SShot"}, - {"name": "Cortana", "title": "Cortana in Windows", "shortName": "Cortana"}, - {"name": "Siri", "title": "Siri in macOS", "shortName": "Siri"}, - {"name": "Bluetooth Host 1", "title": "Bluetooth Host 1", "shortName": "BTH1"}, - {"name": "Bluetooth Host 2", "title": "Bluetooth Host 2", "shortName": "BTH2"}, - {"name": "Bluetooth Host 3", "title": "Bluetooth Host 3", "shortName": "BTH3"}, - {"name": "Battery Level", "title": "Show battery level", "shortName": "Batt"} - ], - "matrix": {"rows": 6, "cols": 17}, - "layouts": { - "keymap": [ - [ - { - "c": "#777777" - }, - "0,0", - { - "x": 1, - "c": "#cccccc" - }, - "0,1", - "0,2", - "0,3", - "0,4", - { - "x": 0.5, - "c": "#aaaaaa" - }, - "0,5", - "0,6", - "0,7", - "0,8", - { - "x": 0.5, - "c": "#cccccc" - }, - "0,9", - "0,10", - "0,11", - "0,12", - { - "x": 0.25, - "c": "#aaaaaa" - }, - "0,14", - "0,15", - "0,16" - ], - [ - { - "y": 0.25 - }, - "1,0", - { - "c": "#cccccc" - }, - "1,1", - "1,2", - "1,3", - "1,4", - "1,5", - "1,6", - "1,7", - "1,8", - "1,9", - "1,10", - "1,11", - "1,12", - { - "c": "#aaaaaa", - "w": 2 - }, - "1,13", - { - "x": 0.25 - }, - "1,14", - "1,15", - "1,16" - ], - [ - { - "w": 1.5 - }, - "2,0", - { - "c": "#cccccc" - }, - "2,1", - "2,2", - "2,3", - "2,4", - "2,5", - "2,6", - "2,7", - "2,8", - "2,9", - "2,10", - "2,11", - "2,12", - { - "x": 0.25, - "c": "#777777", - "w": 1.25, - "h": 2, - "w2": 1.5, - "h2": 1, - "x2": -0.25 - }, - "2,13", - { - "x": 0.25, - "c": "#aaaaaa" - }, - "2,14", - "2,15", - "2,16" - ], - [ - { - "w": 1.75 - }, - "3,0", - { - "c": "#cccccc" - }, - "3,1", - "3,2", - "3,3", - "3,4", - "3,5", - "3,6", - "3,7", - "3,8", - "3,9", - "3,10", - "3,11", - "3,13", - { - "x": 1.5, - "c": "#aaaaaa" - }, - "3,14", - "3,15", - "3,16" - ], - [ - { - "w": 1.25 - }, - "4,0", - "4,1", - { - "c": "#cccccc" - }, - "4,2", - "4,3", - "4,4", - "4,5", - "4,6", - "4,7", - "4,8", - "4,9", - "4,10", - "4,11", - { - "c": "#aaaaaa", - "w": 2.75 - }, - "4,13", - { - "x": 1.25, - "c": "#777777" - }, - "4,15" - ], - [ - { - "c": "#aaaaaa", - "w": 1.25 - }, - "5,0", - { - "w": 1.25 - }, - "5,1", - { - "w": 1.25 - }, - "5,2", - { - "c": "#cccccc", - "w": 6.25 - }, - "5,6", - { - "c": "#aaaaaa", - "w": 1.25 - }, - "5,10", - { - "w": 1.25 - }, - "5,11", - { - "w": 1.25 - }, - "5,12", - { - "w": 1.25 - }, - "5,13", - { - "x": 0.25, - "c": "#777777" - }, - "5,14", - "5,15", - "5,16" - ] - ] - } -} diff --git a/keyboards/keychron/k13_pro/via_json/k13_pro_iso_white.json b/keyboards/keychron/k13_pro/via_json/k13_pro_iso_white.json deleted file mode 100644 index 6e71718e39..0000000000 --- a/keyboards/keychron/k13_pro/via_json/k13_pro_iso_white.json +++ /dev/null @@ -1,235 +0,0 @@ -{ - "name": "Keychron K13 Pro ISO White", - "vendorId": "0x3434", - "productId": "0x02D4", - "keycodes": ["qmk_lighting"], - "customKeycodes": [ - {"name": "Left Option", "title": "Left Option", "shortName": "LOpt"}, - {"name": "Right Option", "title": "Right Option", "shortName": "ROpt"}, - {"name": "Left Cmd", "title": "Left Command", "shortName": "LCmd"}, - {"name": "Right Cmd", "title": "Right Command", "shortName": "RCmd"}, - {"name": "Task View", "title": "Task View in Windows", "shortName": "Task"}, - {"name": "File Explorer", "title": "File Explorer in Windows", "shortName": "File"}, - {"name": "Screen shot", "title": "Screenshot in macOS", "shortName": "SShot"}, - {"name": "Cortana", "title": "Cortana in Windows", "shortName": "Cortana"}, - {"name": "Siri", "title": "Siri in macOS", "shortName": "Siri"}, - {"name": "Bluetooth Host 1", "title": "Bluetooth Host 1", "shortName": "BTH1"}, - {"name": "Bluetooth Host 2", "title": "Bluetooth Host 2", "shortName": "BTH2"}, - {"name": "Bluetooth Host 3", "title": "Bluetooth Host 3", "shortName": "BTH3"}, - {"name": "Battery Level", "title": "Show battery level", "shortName": "Batt"} - ], - "matrix": {"rows": 6, "cols": 17}, - "layouts": { - "keymap": [ - [ - { - "c": "#777777" - }, - "0,0", - { - "x": 1, - "c": "#cccccc" - }, - "0,1", - "0,2", - "0,3", - "0,4", - { - "x": 0.5, - "c": "#aaaaaa" - }, - "0,5", - "0,6", - "0,7", - "0,8", - { - "x": 0.5, - "c": "#cccccc" - }, - "0,9", - "0,10", - "0,11", - "0,12", - { - "x": 0.25, - "c": "#aaaaaa" - }, - "0,14", - "0,15", - "0,16" - ], - [ - { - "y": 0.25 - }, - "1,0", - { - "c": "#cccccc" - }, - "1,1", - "1,2", - "1,3", - "1,4", - "1,5", - "1,6", - "1,7", - "1,8", - "1,9", - "1,10", - "1,11", - "1,12", - { - "c": "#aaaaaa", - "w": 2 - }, - "1,13", - { - "x": 0.25 - }, - "1,14", - "1,15", - "1,16" - ], - [ - { - "w": 1.5 - }, - "2,0", - { - "c": "#cccccc" - }, - "2,1", - "2,2", - "2,3", - "2,4", - "2,5", - "2,6", - "2,7", - "2,8", - "2,9", - "2,10", - "2,11", - "2,12", - { - "x": 0.25, - "c": "#777777", - "w": 1.25, - "h": 2, - "w2": 1.5, - "h2": 1, - "x2": -0.25 - }, - "2,13", - { - "x": 0.25, - "c": "#aaaaaa" - }, - "2,14", - "2,15", - "2,16" - ], - [ - { - "w": 1.75 - }, - "3,0", - { - "c": "#cccccc" - }, - "3,1", - "3,2", - "3,3", - "3,4", - "3,5", - "3,6", - "3,7", - "3,8", - "3,9", - "3,10", - "3,11", - "3,13", - { - "x": 1.5, - "c": "#aaaaaa" - }, - "3,14", - "3,15", - "3,16" - ], - [ - { - "w": 1.25 - }, - "4,0", - "4,1", - { - "c": "#cccccc" - }, - "4,2", - "4,3", - "4,4", - "4,5", - "4,6", - "4,7", - "4,8", - "4,9", - "4,10", - "4,11", - { - "c": "#aaaaaa", - "w": 2.75 - }, - "4,13", - { - "x": 1.25, - "c": "#777777" - }, - "4,15" - ], - [ - { - "c": "#aaaaaa", - "w": 1.25 - }, - "5,0", - { - "w": 1.25 - }, - "5,1", - { - "w": 1.25 - }, - "5,2", - { - "c": "#cccccc", - "w": 6.25 - }, - "5,6", - { - "c": "#aaaaaa", - "w": 1.25 - }, - "5,10", - { - "w": 1.25 - }, - "5,11", - { - "w": 1.25 - }, - "5,12", - { - "w": 1.25 - }, - "5,13", - { - "x": 0.25, - "c": "#777777" - }, - "5,14", - "5,15", - "5,16" - ] - ] - } -} diff --git a/keyboards/keychron/k14_pro/ansi/rgb/config.h b/keyboards/keychron/k14_pro/ansi/rgb/config.h deleted file mode 100644 index b9f1dafba4..0000000000 --- a/keyboards/keychron/k14_pro/ansi/rgb/config.h +++ /dev/null @@ -1,52 +0,0 @@ -/* 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 . - */ - -#pragma once - -#ifdef RGB_MATRIX_ENABLE -/* RGB Matrix Driver Configuration */ -# define DRIVER_COUNT 2 -# define DRIVER_ADDR_1 0b1110111 -# define DRIVER_ADDR_2 0b1110100 - -/* RGB Matrix Configuration */ -# define DRIVER_1_LED_COUNT 47 -# define DRIVER_2_LED_COUNT 40 -# define RGB_MATRIX_LED_COUNT (DRIVER_1_LED_COUNT + DRIVER_2_LED_COUNT) - -/* Set to infinit, which is use in USB mode by default */ -# define RGB_MATRIX_TIMEOUT RGB_MATRIX_TIMEOUT_INFINITE - -/* Allow shutdown of led driver to save power */ -# define RGB_MATRIX_DRIVER_SHUTDOWN_ENABLE - -/* Turn off backlight on low brightness to save power */ -# define RGB_MATRIX_BRIGHTNESS_TURN_OFF_VAL 32 - -/* Indication led */ -# define CAPS_LOCK_INDEX 50 -# define LOW_BAT_IND_INDEX 79 - -# define RGB_MATRIX_FRAMEBUFFER_EFFECTS -# define RGB_MATRIX_KEYPRESSES - -/* Use the first 9 channels of led driver */ -# define PHASE_CHANNEL MSKPHASE_9CHANNEL - -/* Set LED driver current */ -# define SNLED27351_CURRENT_TUNE \ - { 0x28, 0x28, 0x28, 0x28, 0x28, 0x28, 0x28, 0x28, 0x28, 0x28, 0x28, 0x28 } -#endif diff --git a/keyboards/keychron/k14_pro/ansi/rgb/info.json b/keyboards/keychron/k14_pro/ansi/rgb/info.json deleted file mode 100644 index 00cb17ef19..0000000000 --- a/keyboards/keychron/k14_pro/ansi/rgb/info.json +++ /dev/null @@ -1,195 +0,0 @@ -{ - "usb": { - "pid": "0x02E0", - "device_version": "1.0.0" - }, - "features": { - "rgb_matrix": true - }, - "layouts": { - "LAYOUT_72_ansi": { - "layout": [ - {"matrix":[0,0], "x":0, "y":0}, - {"matrix":[0,1], "x":1, "y":0}, - {"matrix":[0,2], "x":2, "y":0}, - {"matrix":[0,3], "x":3, "y":0}, - {"matrix":[0,4], "x":4, "y":0}, - {"matrix":[0,5], "x":5, "y":0}, - {"matrix":[0,6], "x":6, "y":0}, - {"matrix":[0,7], "x":7, "y":0}, - {"matrix":[0,8], "x":8, "y":0}, - {"matrix":[0,9], "x":9, "y":0}, - {"matrix":[0,10], "x":10, "y":0}, - {"matrix":[0,11], "x":11, "y":0}, - {"matrix":[0,12], "x":12, "y":0}, - {"matrix":[0,13], "x":13, "y":0, "w":2}, - {"matrix":[0,14], "x":15, "y":0}, - {"matrix":[0,15], "x":16, "y":0}, - - {"matrix":[1,0], "x":0, "y":1, "w":1.5}, - {"matrix":[1,1], "x":1.5, "y":1}, - {"matrix":[1,2], "x":2.5, "y":1}, - {"matrix":[1,3], "x":3.5, "y":1}, - {"matrix":[1,4], "x":4.5, "y":1}, - {"matrix":[1,5], "x":5.5, "y":1}, - {"matrix":[1,6], "x":6.5, "y":1}, - {"matrix":[1,7], "x":7.5, "y":1}, - {"matrix":[1,8], "x":8.5, "y":1}, - {"matrix":[1,9], "x":9.5, "y":1}, - {"matrix":[1,10], "x":10.5, "y":1}, - {"matrix":[1,11], "x":11.5, "y":1}, - {"matrix":[1,12], "x":12.5, "y":1}, - {"matrix":[1,13], "x":13.5, "y":1, "w":1.5}, - {"matrix":[1,14], "x":15, "y":1}, - {"matrix":[1,15], "x":16, "y":1}, - - {"matrix":[2,0], "x":0, "y":2, "w":1.75}, - {"matrix":[2,1], "x":1.75, "y":2}, - {"matrix":[2,2], "x":2.75, "y":2}, - {"matrix":[2,3], "x":3.75, "y":2}, - {"matrix":[2,4], "x":4.75, "y":2}, - {"matrix":[2,5], "x":5.75, "y":2}, - {"matrix":[2,6], "x":6.75, "y":2}, - {"matrix":[2,7], "x":7.75, "y":2}, - {"matrix":[2,8], "x":8.75, "y":2}, - {"matrix":[2,9], "x":9.75, "y":2}, - {"matrix":[2,10], "x":10.75, "y":2}, - {"matrix":[2,11], "x":11.75, "y":2}, - {"matrix":[2,13], "x":12.75, "y":2, "w":2.25}, - {"matrix":[2,14], "x":15, "y":2}, - {"matrix":[2,15], "x":16, "y":2}, - - {"matrix":[3,0], "x":0, "y":3, "w":2.25}, - {"matrix":[3,2], "x":2.25, "y":3}, - {"matrix":[3,3], "x":3.25, "y":3}, - {"matrix":[3,4], "x":4.25, "y":3}, - {"matrix":[3,5], "x":5.25, "y":3}, - {"matrix":[3,6], "x":6.25, "y":3}, - {"matrix":[3,7], "x":7.25, "y":3}, - {"matrix":[3,8], "x":8.25, "y":3}, - {"matrix":[3,9], "x":9.25, "y":3}, - {"matrix":[3,10], "x":10.25, "y":3}, - {"matrix":[3,11], "x":11.25, "y":3}, - {"matrix":[3,13], "x":12.25, "y":3, "w":2.75}, - {"matrix":[3,14], "x":15, "y":3}, - {"matrix":[3,15], "x":16, "y":3}, - - {"matrix":[4,0], "x":0, "y":4, "w":1.25}, - {"matrix":[4,1], "x":1.25, "y":4, "w":1.25}, - {"matrix":[4,2], "x":2.5, "y":4, "w":1.25}, - {"matrix":[4,6], "x":3.75, "y":4, "w":6.25}, - {"matrix":[4,9], "x":10, "y":4}, - {"matrix":[4,10], "x":11, "y":4}, - {"matrix":[4,11], "x":12, "y":4}, - {"matrix":[4,12], "x":13, "y":4}, - {"matrix":[4,13], "x":14, "y":4}, - {"matrix":[4,14], "x":15, "y":4}, - {"matrix":[4,15], "x":16, "y":4} - ] - } - }, - "rgb_matrix": { - "driver": "snled27351", - "animations": { - "breathing": true, - "band_spiral_val": true, - "cycle_all": true, - "cycle_left_right": true, - "cycle_up_down": true, - "rainbow_moving_chevron": true, - "cycle_out_in": true, - "cycle_out_in_dual": true, - "cycle_pinwheel": true, - "cycle_spiral": true, - "dual_beacon": true, - "rainbow_beacon": true, - "jellybean_raindrops": true, - "pixel_rain": true, - "typing_heatmap": true, - "digital_rain": true, - "solid_reactive_simple": true, - "solid_reactive_multiwide": true, - "solid_reactive_multinexus": true, - "splash": true, - "solid_splash": true - }, - "layout": [ - {"matrix":[0, 0], "flags":1, "x":0, "y":0}, - {"matrix":[0, 1], "flags":4, "x":14, "y":0}, - {"matrix":[0, 2], "flags":4, "x":28, "y":0}, - {"matrix":[0, 3], "flags":4, "x":42, "y":0}, - {"matrix":[0, 4], "flags":4, "x":56, "y":0}, - {"matrix":[0, 5], "flags":4, "x":70, "y":0}, - {"matrix":[0, 6], "flags":4, "x":84, "y":0}, - {"matrix":[0, 7], "flags":4, "x":98, "y":0}, - {"matrix":[0, 8], "flags":4, "x":112, "y":0}, - {"matrix":[0, 9], "flags":4, "x":126, "y":0}, - {"matrix":[0, 10], "flags":4, "x":140, "y":0}, - {"matrix":[0, 11], "flags":4, "x":154, "y":0}, - {"matrix":[0, 12], "flags":4, "x":168, "y":0}, - {"matrix":[0, 13], "flags":1, "x":189, "y":0}, - {"matrix":[0, 14], "flags":1, "x":210, "y":0}, - {"matrix":[0, 15], "flags":1, "x":224, "y":0}, - - {"matrix":[1, 0], "flags":1, "x":3, "y":13}, - {"matrix":[1, 1], "flags":8, "x":21, "y":13}, - {"matrix":[1, 2], "flags":8, "x":35, "y":13}, - {"matrix":[1, 3], "flags":8, "x":49, "y":13}, - {"matrix":[1, 4], "flags":4, "x":63, "y":13}, - {"matrix":[1, 5], "flags":4, "x":77, "y":13}, - {"matrix":[1, 6], "flags":4, "x":91, "y":13}, - {"matrix":[1, 7], "flags":4, "x":105, "y":13}, - {"matrix":[1, 8], "flags":4, "x":119, "y":13}, - {"matrix":[1, 9], "flags":4, "x":133, "y":13}, - {"matrix":[1, 10], "flags":4, "x":147, "y":13}, - {"matrix":[1, 11], "flags":4, "x":161, "y":13}, - {"matrix":[1, 12], "flags":4, "x":175, "y":13}, - {"matrix":[1, 13], "flags":1, "x":193, "y":13}, - {"matrix":[1, 14], "flags":1, "x":220, "y":13}, - {"matrix":[1, 15], "flags":1, "x":224, "y":13}, - - {"matrix":[2, 0], "flags":8, "x":5, "y":32}, - {"matrix":[2, 1], "flags":4, "x":24, "y":32}, - {"matrix":[2, 2], "flags":4, "x":38, "y":32}, - {"matrix":[2, 3], "flags":4, "x":52, "y":32}, - {"matrix":[2, 4], "flags":4, "x":66, "y":32}, - {"matrix":[2, 5], "flags":4, "x":80, "y":32}, - {"matrix":[2, 6], "flags":4, "x":94, "y":32}, - {"matrix":[2, 7], "flags":4, "x":108, "y":32}, - {"matrix":[2, 8], "flags":4, "x":122, "y":32}, - {"matrix":[2, 9], "flags":4, "x":136, "y":32}, - {"matrix":[2, 10], "flags":4, "x":150, "y":32}, - {"matrix":[2, 11], "flags":4, "x":164, "y":32}, - {"matrix":[2, 13], "flags":1, "x":187, "y":32}, - {"matrix":[2, 14], "flags":1, "x":210, "y":32}, - {"matrix":[2, 15], "flags":1, "x":224, "y":32}, - - {"matrix":[3, 0], "flags":1, "x":9, "y":48}, - {"matrix":[3, 2], "flags":4, "x":31, "y":48}, - {"matrix":[3, 3], "flags":4, "x":45, "y":48}, - {"matrix":[3, 4], "flags":4, "x":59, "y":48}, - {"matrix":[3, 5], "flags":4, "x":73, "y":48}, - {"matrix":[3, 6], "flags":4, "x":87, "y":48}, - {"matrix":[3, 7], "flags":4, "x":101, "y":48}, - {"matrix":[3, 8], "flags":4, "x":115, "y":48}, - {"matrix":[3, 9], "flags":4, "x":129, "y":48}, - {"matrix":[3, 10], "flags":4, "x":143, "y":48}, - {"matrix":[3, 11], "flags":4, "x":157, "y":48}, - {"matrix":[3, 13], "flags":1, "x":184, "y":48}, - {"matrix":[3, 14], "flags":1, "x":210, "y":48}, - {"matrix":[3, 15], "flags":1, "x":224, "y":48}, - - {"matrix":[4, 0], "flags":1, "x":0, "y":64}, - {"matrix":[4, 1], "flags":1, "x":19, "y":64}, - {"matrix":[4, 2], "flags":1, "x":37, "y":64}, - {"matrix":[4, 6], "flags":4, "x":89, "y":64}, - {"matrix":[4, 9], "flags":1, "x":140, "y":64}, - {"matrix":[4, 10], "flags":1, "x":154, "y":64}, - {"matrix":[4, 11], "flags":1, "x":168, "y":64}, - {"matrix":[4, 12], "flags":1, "x":182, "y":64}, - {"matrix":[4, 13], "flags":1, "x":196, "y":64}, - {"matrix":[4, 14], "flags":1, "x":210, "y":64}, - {"matrix":[4, 15], "flags":1, "x":224, "y":64} - ] - } -} diff --git a/keyboards/keychron/k14_pro/ansi/rgb/keymaps/default/keymap.c b/keyboards/keychron/k14_pro/ansi/rgb/keymaps/default/keymap.c deleted file mode 100644 index aa533985c8..0000000000 --- a/keyboards/keychron/k14_pro/ansi/rgb/keymaps/default/keymap.c +++ /dev/null @@ -1,63 +0,0 @@ -/* 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 . - */ - -#include QMK_KEYBOARD_H - -// clang-format off -enum layers{ - MAC_BASE, - WIN_BASE, - MAC_FN1, - WIN_FN1, - FN2, -}; - -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_72_ansi( - 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_INS, RGB_MOD, - 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_END, KC_DEL, - 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_HOME, KC_PGUP, - 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_PGDN, - KC_LCTL, KC_LOPTN, KC_LCMMD, KC_SPC, KC_RCMMD, KC_RCTL, MO(MAC_FN1),MO(FN2), KC_LEFT, KC_DOWN, KC_RGHT), - - [WIN_BASE] = LAYOUT_72_ansi( - 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_INS, RGB_MOD, - 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_END, KC_DEL, - 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_HOME, KC_PGUP, - 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_PGDN, - KC_LCTL, KC_LWIN, KC_LALT, KC_SPC, KC_RALT, KC_RCTL, MO(WIN_FN1),MO(FN2), KC_LEFT, KC_DOWN, KC_RGHT), - - [MAC_FN1] = LAYOUT_72_ansi( - KC_GRV, KC_BRID, KC_BRIU, KC_MCTL, KC_LPAD, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, RGB_TOG, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - - [WIN_FN1] = LAYOUT_72_ansi( - KC_GRV, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, RGB_TOG, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - - [FN2] = LAYOUT_72_ansi( - KC_TILD, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), -}; diff --git a/keyboards/keychron/k14_pro/ansi/rgb/keymaps/via/keymap.c b/keyboards/keychron/k14_pro/ansi/rgb/keymaps/via/keymap.c deleted file mode 100644 index aa533985c8..0000000000 --- a/keyboards/keychron/k14_pro/ansi/rgb/keymaps/via/keymap.c +++ /dev/null @@ -1,63 +0,0 @@ -/* 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 . - */ - -#include QMK_KEYBOARD_H - -// clang-format off -enum layers{ - MAC_BASE, - WIN_BASE, - MAC_FN1, - WIN_FN1, - FN2, -}; - -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_72_ansi( - 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_INS, RGB_MOD, - 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_END, KC_DEL, - 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_HOME, KC_PGUP, - 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_PGDN, - KC_LCTL, KC_LOPTN, KC_LCMMD, KC_SPC, KC_RCMMD, KC_RCTL, MO(MAC_FN1),MO(FN2), KC_LEFT, KC_DOWN, KC_RGHT), - - [WIN_BASE] = LAYOUT_72_ansi( - 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_INS, RGB_MOD, - 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_END, KC_DEL, - 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_HOME, KC_PGUP, - 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_PGDN, - KC_LCTL, KC_LWIN, KC_LALT, KC_SPC, KC_RALT, KC_RCTL, MO(WIN_FN1),MO(FN2), KC_LEFT, KC_DOWN, KC_RGHT), - - [MAC_FN1] = LAYOUT_72_ansi( - KC_GRV, KC_BRID, KC_BRIU, KC_MCTL, KC_LPAD, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, RGB_TOG, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - - [WIN_FN1] = LAYOUT_72_ansi( - KC_GRV, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, RGB_TOG, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - - [FN2] = LAYOUT_72_ansi( - KC_TILD, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), -}; diff --git a/keyboards/keychron/k14_pro/ansi/rgb/keymaps/via/rules.mk b/keyboards/keychron/k14_pro/ansi/rgb/keymaps/via/rules.mk deleted file mode 100644 index 4eae6e776c..0000000000 --- a/keyboards/keychron/k14_pro/ansi/rgb/keymaps/via/rules.mk +++ /dev/null @@ -1,2 +0,0 @@ -VIA_ENABLE = yes -OPT_DEFS += -DDYNAMIC_KEYMAP_LAYER_COUNT=5 diff --git a/keyboards/keychron/k14_pro/ansi/rgb/rgb.c b/keyboards/keychron/k14_pro/ansi/rgb/rgb.c deleted file mode 100644 index afaa48ce66..0000000000 --- a/keyboards/keychron/k14_pro/ansi/rgb/rgb.c +++ /dev/null @@ -1,105 +0,0 @@ -/* 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 . - */ - -#include "quantum.h" - -// clang-format off -#ifdef RGB_MATRIX_ENABLE -const snled27351_led_t g_snled27351_leds[RGB_MATRIX_LED_COUNT] = { -/* Refer to snled27351manual for these locations - * driver - * | R location - * | | G location - * | | | B location - * | | | | */ - {0, C_16, A_16, B_16}, - {0, C_15, A_15, B_15}, - {0, C_14, A_14, B_14}, - {0, C_13, A_13, B_13}, - {0, C_12, A_12, B_12}, - {0, C_11, A_11, B_11}, - {0, C_10, A_10, B_10}, - {0, C_9, A_9, B_9}, - {0, C_8, A_8, B_8}, - {0, C_7, A_7, B_7}, - {0, C_6, A_6, B_6}, - {0, C_5, A_5, B_5}, - {0, C_4, A_4, B_4}, - {0, C_3, A_3, B_3}, - {0, C_2, A_2, B_2}, - {0, C_1, A_1, B_1}, - - {0, F_16, D_16, E_16}, - {0, F_15, D_15, E_15}, - {0, F_14, D_14, E_14}, - {0, F_13, D_13, E_13}, - {0, F_12, D_12, E_12}, - {0, F_11, D_11, E_11}, - {0, F_10, D_10, E_10}, - {0, F_9, D_9, E_9}, - {0, F_8, D_8, E_8}, - {0, F_7, D_7, E_7}, - {0, F_6, D_6, E_6}, - {0, F_5, D_5, E_5}, - {0, F_4, D_4, E_4}, - {0, F_3, D_3, E_3}, - {0, F_2, D_2, E_2}, - {0, F_1, D_1, E_1}, - - {1, C_16, A_16, B_16}, - {1, C_15, A_15, B_15}, - {1, C_14, A_14, B_14}, - {1, C_13, A_13, B_13}, - {1, C_12, A_12, B_12}, - {1, C_11, A_11, B_11}, - {1, C_10, A_10, B_10}, - {1, C_9, A_9, B_9}, - {1, C_8, A_8, B_8}, - {1, C_7, A_7, B_7}, - {1, C_6, A_6, B_6}, - {1, C_5, A_5, B_5}, - {1, C_3, A_3, B_3}, - {1, C_2, A_2, B_2}, - {1, C_1, A_1, B_1}, - - {1, I_16, G_16, H_16}, - {1, I_14, G_14, H_14}, - {1, I_13, G_13, H_13}, - {1, I_12, G_12, H_12}, - {1, I_11, G_11, H_11}, - {1, I_10, G_10, H_10}, - {1, I_9, G_9, H_9}, - {1, I_8, G_8, H_8}, - {1, I_7, G_7, H_7}, - {1, I_6, G_6, H_6}, - {1, I_5, G_5, H_5}, - {1, I_3, G_3, H_3}, - {1, I_2, G_2, H_2}, - {1, I_1, G_1, H_1}, - - {1, F_16, D_16, E_16}, - {1, F_15, D_15, E_15}, - {1, F_14, D_14, E_14}, - {1, F_10, D_10, E_10}, - {1, F_7, D_7, E_7}, - {1, F_6, D_6, E_6}, - {1, F_5, D_5, E_5}, - {1, F_4, D_4, E_4}, - {1, F_3, D_3, E_3}, - {1, F_2, D_2, E_2}, - {1, F_1, D_1, E_1} -}; -#endif diff --git a/keyboards/keychron/k14_pro/ansi/rgb/rules.mk b/keyboards/keychron/k14_pro/ansi/rgb/rules.mk deleted file mode 100644 index 6e7633bfe0..0000000000 --- a/keyboards/keychron/k14_pro/ansi/rgb/rules.mk +++ /dev/null @@ -1 +0,0 @@ -# This file intentionally left blank diff --git a/keyboards/keychron/k14_pro/ansi/white/config.h b/keyboards/keychron/k14_pro/ansi/white/config.h deleted file mode 100644 index 5602c8f470..0000000000 --- a/keyboards/keychron/k14_pro/ansi/white/config.h +++ /dev/null @@ -1,54 +0,0 @@ -/* Copyright 2021 @ 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 . - */ - -#pragma once - -#ifdef LED_MATRIX_ENABLE -/* LED Matrix Driver Configuration */ -# define DRIVER_COUNT 1 -# define SNLED27351_I2C_ADDRESS_1 SNLED27351_I2C_ADDRESS_GND - -/* LED Matrix Configuration */ -# define LED_MATRIX_LED_COUNT 72 - -/* Set to infinit, which is use in USB mode by default */ -# define LED_MATRIX_TIMEOUT LED_MATRIX_TIMEOUT_INFINITE - -/* Allow shutdown of led driver to save power */ -# define LED_MATRIX_DRIVER_SHUTDOWN_ENABLE - -/* Turn off backlight on low brightness to save power */ -# define LED_MATRIX_BRIGHTNESS_TURN_OFF_VAL 32 - -/* Indication led */ -# define DIM_CAPS_LOCK -# define CAPS_LOCK_INDEX 32 -# define LOW_BAT_IND_INDEX 64 - -// LED Matrix Animation modes. Explicitly enabled -// For full list of effects, see: -// https://docs.qmk.fm/#/feature_led_matrix?id=led-matrix-effects -// #if defined(LED_MATRIX_KEYPRESSES) || defined(LED_MATRIX_KEYRELEASES) -# define LED_MATRIX_KEYPRESSES -# define LED_MATRIX_KEYRELEASES - -/* Use first 6 channels of LED driver */ -# define PHASE_CHANNEL MSKPHASE_6CHANNEL - -/* Set LED driver current */ -# define SNLED27351_CURRENT_TUNE \ - { 0x24, 0x24, 0x24, 0x24, 0x24, 0x24, 0x24, 0x24, 0x24, 0x24, 0x24, 0x24 } -#endif diff --git a/keyboards/keychron/k14_pro/ansi/white/info.json b/keyboards/keychron/k14_pro/ansi/white/info.json deleted file mode 100644 index e652bea159..0000000000 --- a/keyboards/keychron/k14_pro/ansi/white/info.json +++ /dev/null @@ -1,190 +0,0 @@ -{ - "usb": { - "pid": "0x02E3", - "device_version": "1.0.0" - }, - "features": { - "led_matrix": true - }, - "layouts": { - "LAYOUT_72_ansi": { - "layout": [ - {"matrix":[0,0], "x":0, "y":0}, - {"matrix":[0,1], "x":1, "y":0}, - {"matrix":[0,2], "x":2, "y":0}, - {"matrix":[0,3], "x":3, "y":0}, - {"matrix":[0,4], "x":4, "y":0}, - {"matrix":[0,5], "x":5, "y":0}, - {"matrix":[0,6], "x":6, "y":0}, - {"matrix":[0,7], "x":7, "y":0}, - {"matrix":[0,8], "x":8, "y":0}, - {"matrix":[0,9], "x":9, "y":0}, - {"matrix":[0,10], "x":10, "y":0}, - {"matrix":[0,11], "x":11, "y":0}, - {"matrix":[0,12], "x":12, "y":0}, - {"matrix":[0,13], "x":13, "y":0, "w":2}, - {"matrix":[0,14], "x":15, "y":0}, - {"matrix":[0,15], "x":16, "y":0}, - - {"matrix":[1,0], "x":0, "y":1, "w":1.5}, - {"matrix":[1,1], "x":1.5, "y":1}, - {"matrix":[1,2], "x":2.5, "y":1}, - {"matrix":[1,3], "x":3.5, "y":1}, - {"matrix":[1,4], "x":4.5, "y":1}, - {"matrix":[1,5], "x":5.5, "y":1}, - {"matrix":[1,6], "x":6.5, "y":1}, - {"matrix":[1,7], "x":7.5, "y":1}, - {"matrix":[1,8], "x":8.5, "y":1}, - {"matrix":[1,9], "x":9.5, "y":1}, - {"matrix":[1,10], "x":10.5, "y":1}, - {"matrix":[1,11], "x":11.5, "y":1}, - {"matrix":[1,12], "x":12.5, "y":1}, - {"matrix":[1,13], "x":13.5, "y":1, "w":1.5}, - {"matrix":[1,14], "x":15, "y":1}, - {"matrix":[1,15], "x":16, "y":1}, - - {"matrix":[2,0], "x":0, "y":2, "w":1.75}, - {"matrix":[2,1], "x":1.75, "y":2}, - {"matrix":[2,2], "x":2.75, "y":2}, - {"matrix":[2,3], "x":3.75, "y":2}, - {"matrix":[2,4], "x":4.75, "y":2}, - {"matrix":[2,5], "x":5.75, "y":2}, - {"matrix":[2,6], "x":6.75, "y":2}, - {"matrix":[2,7], "x":7.75, "y":2}, - {"matrix":[2,8], "x":8.75, "y":2}, - {"matrix":[2,9], "x":9.75, "y":2}, - {"matrix":[2,10], "x":10.75, "y":2}, - {"matrix":[2,11], "x":11.75, "y":2}, - {"matrix":[2,13], "x":12.75, "y":2, "w":2.25}, - {"matrix":[2,14], "x":15, "y":2}, - {"matrix":[2,15], "x":16, "y":2}, - - {"matrix":[3,0], "x":0, "y":3, "w":2.25}, - {"matrix":[3,2], "x":2.25, "y":3}, - {"matrix":[3,3], "x":3.25, "y":3}, - {"matrix":[3,4], "x":4.25, "y":3}, - {"matrix":[3,5], "x":5.25, "y":3}, - {"matrix":[3,6], "x":6.25, "y":3}, - {"matrix":[3,7], "x":7.25, "y":3}, - {"matrix":[3,8], "x":8.25, "y":3}, - {"matrix":[3,9], "x":9.25, "y":3}, - {"matrix":[3,10], "x":10.25, "y":3}, - {"matrix":[3,11], "x":11.25, "y":3}, - {"matrix":[3,13], "x":12.25, "y":3, "w":2.75}, - {"matrix":[3,14], "x":15, "y":3}, - {"matrix":[3,15], "x":16, "y":3}, - - {"matrix":[4,0], "x":0, "y":4, "w":1.25}, - {"matrix":[4,1], "x":1.25, "y":4, "w":1.25}, - {"matrix":[4,2], "x":2.5, "y":4, "w":1.25}, - {"matrix":[4,6], "x":3.75, "y":4, "w":6.25}, - {"matrix":[4,9], "x":10, "y":4}, - {"matrix":[4,10], "x":11, "y":4}, - {"matrix":[4,11], "x":12, "y":4}, - {"matrix":[4,12], "x":13, "y":4}, - {"matrix":[4,13], "x":14, "y":4}, - {"matrix":[4,14], "x":15, "y":4}, - {"matrix":[4,15], "x":16, "y":4} - ] - } - }, - "led_matrix": { - "driver": "snled27351", - "animations": { - "none": true, - "solid": true, - "breathing": true, - "band_pinwheel": true, - "band_spiral": true, - "cycle_left_right": true, - "cycle_up_down": true, - "cycle_out_in": true, - "dual_beacon": true, - "solid_reactive_simple": true, - "solid_reactive_multiwide": true, - "solid_reactive_multinexus": true, - "solid_splash": true, - "wave_left_right": true, - "wave_up_down": true, - "effect_max": true - }, - "layout": [ - {"matrix":[0, 0], "flags":1, "x":0, "y":0}, - {"matrix":[0, 1], "flags":4, "x":14, "y":0}, - {"matrix":[0, 2], "flags":4, "x":28, "y":0}, - {"matrix":[0, 3], "flags":4, "x":42, "y":0}, - {"matrix":[0, 4], "flags":4, "x":56, "y":0}, - {"matrix":[0, 5], "flags":4, "x":70, "y":0}, - {"matrix":[0, 6], "flags":4, "x":84, "y":0}, - {"matrix":[0, 7], "flags":4, "x":98, "y":0}, - {"matrix":[0, 8], "flags":4, "x":112, "y":0}, - {"matrix":[0, 9], "flags":4, "x":126, "y":0}, - {"matrix":[0, 10], "flags":4, "x":140, "y":0}, - {"matrix":[0, 11], "flags":4, "x":154, "y":0}, - {"matrix":[0, 12], "flags":4, "x":168, "y":0}, - {"matrix":[0, 13], "flags":1, "x":189, "y":0}, - {"matrix":[0, 14], "flags":1, "x":210, "y":0}, - {"matrix":[0, 15], "flags":1, "x":224, "y":0}, - - {"matrix":[1, 0], "flags":1, "x":3, "y":13}, - {"matrix":[1, 1], "flags":8, "x":21, "y":13}, - {"matrix":[1, 2], "flags":8, "x":35, "y":13}, - {"matrix":[1, 3], "flags":8, "x":49, "y":13}, - {"matrix":[1, 4], "flags":4, "x":63, "y":13}, - {"matrix":[1, 5], "flags":4, "x":77, "y":13}, - {"matrix":[1, 6], "flags":4, "x":91, "y":13}, - {"matrix":[1, 7], "flags":4, "x":105, "y":13}, - {"matrix":[1, 8], "flags":4, "x":119, "y":13}, - {"matrix":[1, 9], "flags":4, "x":133, "y":13}, - {"matrix":[1, 10], "flags":4, "x":147, "y":13}, - {"matrix":[1, 11], "flags":4, "x":161, "y":13}, - {"matrix":[1, 12], "flags":4, "x":175, "y":13}, - {"matrix":[1, 13], "flags":1, "x":193, "y":13}, - {"matrix":[1, 14], "flags":1, "x":220, "y":13}, - {"matrix":[1, 15], "flags":1, "x":224, "y":13}, - - {"matrix":[2, 0], "flags":8, "x":5, "y":32}, - {"matrix":[2, 1], "flags":4, "x":24, "y":32}, - {"matrix":[2, 2], "flags":4, "x":38, "y":32}, - {"matrix":[2, 3], "flags":4, "x":52, "y":32}, - {"matrix":[2, 4], "flags":4, "x":66, "y":32}, - {"matrix":[2, 5], "flags":4, "x":80, "y":32}, - {"matrix":[2, 6], "flags":4, "x":94, "y":32}, - {"matrix":[2, 7], "flags":4, "x":108, "y":32}, - {"matrix":[2, 8], "flags":4, "x":122, "y":32}, - {"matrix":[2, 9], "flags":4, "x":136, "y":32}, - {"matrix":[2, 10], "flags":4, "x":150, "y":32}, - {"matrix":[2, 11], "flags":4, "x":164, "y":32}, - {"matrix":[2, 13], "flags":1, "x":187, "y":32}, - {"matrix":[2, 14], "flags":1, "x":210, "y":32}, - {"matrix":[2, 15], "flags":1, "x":224, "y":32}, - - {"matrix":[3, 0], "flags":1, "x":9, "y":48}, - {"matrix":[3, 2], "flags":4, "x":31, "y":48}, - {"matrix":[3, 3], "flags":4, "x":45, "y":48}, - {"matrix":[3, 4], "flags":4, "x":59, "y":48}, - {"matrix":[3, 5], "flags":4, "x":73, "y":48}, - {"matrix":[3, 6], "flags":4, "x":87, "y":48}, - {"matrix":[3, 7], "flags":4, "x":101, "y":48}, - {"matrix":[3, 8], "flags":4, "x":115, "y":48}, - {"matrix":[3, 9], "flags":4, "x":129, "y":48}, - {"matrix":[3, 10], "flags":4, "x":143, "y":48}, - {"matrix":[3, 11], "flags":4, "x":157, "y":48}, - {"matrix":[3, 13], "flags":1, "x":184, "y":48}, - {"matrix":[3, 14], "flags":1, "x":210, "y":48}, - {"matrix":[3, 15], "flags":1, "x":224, "y":48}, - - {"matrix":[4, 0], "flags":1, "x":0, "y":64}, - {"matrix":[4, 1], "flags":1, "x":19, "y":64}, - {"matrix":[4, 2], "flags":1, "x":37, "y":64}, - {"matrix":[4, 6], "flags":4, "x":89, "y":64}, - {"matrix":[4, 9], "flags":1, "x":140, "y":64}, - {"matrix":[4, 10], "flags":1, "x":154, "y":64}, - {"matrix":[4, 11], "flags":1, "x":168, "y":64}, - {"matrix":[4, 12], "flags":1, "x":182, "y":64}, - {"matrix":[4, 13], "flags":1, "x":196, "y":64}, - {"matrix":[4, 14], "flags":1, "x":210, "y":64}, - {"matrix":[4, 15], "flags":1, "x":224, "y":64} - ] - } -} diff --git a/keyboards/keychron/k14_pro/ansi/white/keymaps/default/keymap.c b/keyboards/keychron/k14_pro/ansi/white/keymaps/default/keymap.c deleted file mode 100644 index 8bd0865c89..0000000000 --- a/keyboards/keychron/k14_pro/ansi/white/keymaps/default/keymap.c +++ /dev/null @@ -1,63 +0,0 @@ -/* 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 . - */ - -#include QMK_KEYBOARD_H - -// clang-format off -enum layers{ - MAC_BASE, - WIN_BASE, - MAC_FN1, - WIN_FN1, - FN2, -}; - -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_72_ansi( - 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_INS, BL_STEP, - 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_END, KC_DEL, - 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_HOME, KC_PGUP, - 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_PGDN, - KC_LCTL, KC_LOPTN, KC_LCMMD, KC_SPC, KC_RCMMD, KC_RCTL, MO(MAC_FN1),MO(FN2), KC_LEFT, KC_DOWN, KC_RGHT), - - [WIN_BASE] = LAYOUT_72_ansi( - 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_INS, BL_STEP, - 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_END, KC_DEL, - 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_HOME, KC_PGUP, - 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_PGDN, - KC_LCTL, KC_LWIN, KC_LALT, KC_SPC, KC_RALT, KC_RCTL, MO(WIN_FN1),MO(FN2), KC_LEFT, KC_DOWN, KC_RGHT), - - [MAC_FN1] = LAYOUT_72_ansi( - KC_GRV, KC_BRID, KC_BRIU, KC_MCTL, KC_LPAD, BL_DOWN, BL_UP, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, BL_TOGG, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - BL_TOGG, BL_STEP, BL_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, BL_DOWN, _______, _______, _______, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - - [WIN_FN1] = LAYOUT_72_ansi( - KC_GRV, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, BL_DOWN, BL_UP, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, BL_TOGG, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - BL_TOGG, BL_STEP, BL_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, BL_DOWN, _______, _______, _______, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - - [FN2] = LAYOUT_72_ansi( - KC_TILD, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), -}; diff --git a/keyboards/keychron/k14_pro/ansi/white/keymaps/via/keymap.c b/keyboards/keychron/k14_pro/ansi/white/keymaps/via/keymap.c deleted file mode 100644 index 8bd0865c89..0000000000 --- a/keyboards/keychron/k14_pro/ansi/white/keymaps/via/keymap.c +++ /dev/null @@ -1,63 +0,0 @@ -/* 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 . - */ - -#include QMK_KEYBOARD_H - -// clang-format off -enum layers{ - MAC_BASE, - WIN_BASE, - MAC_FN1, - WIN_FN1, - FN2, -}; - -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_72_ansi( - 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_INS, BL_STEP, - 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_END, KC_DEL, - 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_HOME, KC_PGUP, - 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_PGDN, - KC_LCTL, KC_LOPTN, KC_LCMMD, KC_SPC, KC_RCMMD, KC_RCTL, MO(MAC_FN1),MO(FN2), KC_LEFT, KC_DOWN, KC_RGHT), - - [WIN_BASE] = LAYOUT_72_ansi( - 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_INS, BL_STEP, - 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_END, KC_DEL, - 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_HOME, KC_PGUP, - 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_PGDN, - KC_LCTL, KC_LWIN, KC_LALT, KC_SPC, KC_RALT, KC_RCTL, MO(WIN_FN1),MO(FN2), KC_LEFT, KC_DOWN, KC_RGHT), - - [MAC_FN1] = LAYOUT_72_ansi( - KC_GRV, KC_BRID, KC_BRIU, KC_MCTL, KC_LPAD, BL_DOWN, BL_UP, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, BL_TOGG, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - BL_TOGG, BL_STEP, BL_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, BL_DOWN, _______, _______, _______, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - - [WIN_FN1] = LAYOUT_72_ansi( - KC_GRV, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, BL_DOWN, BL_UP, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, BL_TOGG, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - BL_TOGG, BL_STEP, BL_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, BL_DOWN, _______, _______, _______, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - - [FN2] = LAYOUT_72_ansi( - KC_TILD, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), -}; diff --git a/keyboards/keychron/k14_pro/ansi/white/keymaps/via/rules.mk b/keyboards/keychron/k14_pro/ansi/white/keymaps/via/rules.mk deleted file mode 100644 index 4eae6e776c..0000000000 --- a/keyboards/keychron/k14_pro/ansi/white/keymaps/via/rules.mk +++ /dev/null @@ -1,2 +0,0 @@ -VIA_ENABLE = yes -OPT_DEFS += -DDYNAMIC_KEYMAP_LAYER_COUNT=5 diff --git a/keyboards/keychron/k14_pro/ansi/white/rules.mk b/keyboards/keychron/k14_pro/ansi/white/rules.mk deleted file mode 100644 index 6e7633bfe0..0000000000 --- a/keyboards/keychron/k14_pro/ansi/white/rules.mk +++ /dev/null @@ -1 +0,0 @@ -# This file intentionally left blank diff --git a/keyboards/keychron/k14_pro/ansi/white/white.c b/keyboards/keychron/k14_pro/ansi/white/white.c deleted file mode 100644 index 78a033b63b..0000000000 --- a/keyboards/keychron/k14_pro/ansi/white/white.c +++ /dev/null @@ -1,103 +0,0 @@ -/* Copyright 2022 @ 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 . - */ - -#include "quantum.h" - -// clang-format off -#ifdef LED_MATRIX_ENABLE -const snled27351_led_t g_snled27351_leds[LED_MATRIX_LED_COUNT] = { -/* Refer to snled27351manual for these locations - * driver - * | LED address - * | | */ - {0, B_16}, - {0, B_15}, - {0, B_14}, - {0, B_13}, - {0, B_12}, - {0, B_11}, - {0, B_10}, - {0, B_9}, - {0, B_8}, - {0, B_7}, - {0, B_6}, - {0, B_5}, - {0, B_4}, - {0, B_3}, - {0, B_2}, - {0, B_1}, - - {0, C_16}, - {0, C_15}, - {0, C_14}, - {0, C_13}, - {0, C_12}, - {0, C_11}, - {0, C_10}, - {0, C_9}, - {0, C_8}, - {0, C_7}, - {0, C_6}, - {0, C_5}, - {0, C_4}, - {0, C_3}, - {0, C_2}, - {0, C_1}, - - {0, D_16}, - {0, D_15}, - {0, D_14}, - {0, D_13}, - {0, D_12}, - {0, D_11}, - {0, D_10}, - {0, D_9}, - {0, D_8}, - {0, D_7}, - {0, D_6}, - {0, D_5}, - {0, D_3}, - {0, D_2}, - {0, D_1}, - - {0, E_16}, - {0, E_14}, - {0, E_13}, - {0, E_12}, - {0, E_11}, - {0, E_10}, - {0, E_9}, - {0, E_8}, - {0, E_7}, - {0, E_6}, - {0, E_5}, - {0, E_3}, - {0, E_2}, - {0, E_1}, - - {0, F_16}, - {0, F_15}, - {0, F_14}, - {0, F_10}, - {0, F_7}, - {0, F_6}, - {0, F_5}, - {0, F_4}, - {0, F_3}, - {0, F_2}, - {0, F_1} -}; -#endif diff --git a/keyboards/keychron/k14_pro/config.h b/keyboards/keychron/k14_pro/config.h deleted file mode 100644 index 6d14a9dfed..0000000000 --- a/keyboards/keychron/k14_pro/config.h +++ /dev/null @@ -1,90 +0,0 @@ -/* 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 . - */ - -#pragma once - -/* Turn off effects when suspended */ -#define RGB_DISABLE_WHEN_USB_SUSPENDED -#define LED_DISABLE_WHEN_USB_SUSPENDED - -/* DIP switch for Mac/win OS switch */ -#define DIP_SWITCH_PINS \ - { A8 } - -/* Caps lock LED Pin */ -#define LED_CAPS_LOCK_PIN A0 -#define LED_PIN_ON_STATE 1 - -/* 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 A10 - -# 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 A4 -# 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 \ - { 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 WEAR_LEVELING_LOGICAL_SIZE 2048 -#define WEAR_LEVELING_BACKING_SIZE (WEAR_LEVELING_LOGICAL_SIZE * 2) -#define DYNAMIC_KEYMAP_EEPROM_MAX_ADDR 2047 - -/* Factory test keys */ -#define FN_KEY1 MO(4) diff --git a/keyboards/keychron/k14_pro/halconf.h b/keyboards/keychron/k14_pro/halconf.h deleted file mode 100644 index 306f917783..0000000000 --- a/keyboards/keychron/k14_pro/halconf.h +++ /dev/null @@ -1,29 +0,0 @@ -/* 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 _CHIBIOS_HAL_CONF_VER_8_0_ - -#define HAL_USE_I2C TRUE - -#ifdef KC_BLUETOOTH_ENABLE -# define PAL_USE_CALLBACKS TRUE -# define HAL_USE_SERIAL TRUE -# define HAL_USE_RTC TRUE -#endif - -#include_next diff --git a/keyboards/keychron/k14_pro/info.json b/keyboards/keychron/k14_pro/info.json deleted file mode 100644 index abb3295b28..0000000000 --- a/keyboards/keychron/k14_pro/info.json +++ /dev/null @@ -1,28 +0,0 @@ -{ - "keyboard_name": "Keychron K14 Pro", - "manufacturer": "Keychron", - "url": "https://github.com/Keychron", - "maintainer": "lalalademaxiya1", - "processor": "STM32L432", - "bootloader": "stm32-dfu", - "usb": { - "vid": "0x3434" - }, - "features": { - "bootmagic": true, - "command": false, - "console": false, - "dip_switch": true, - "extrakey": true, - "mousekey": true, - "nkro": true, - "raw": true - }, - "matrix_pins": { - "cols": [null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null ], - "rows": ["B4", "B3", "A15", "A14", "A13"], - "custom": true, - "custom_lite": true - }, - "diode_direction": "ROW2COL" -} diff --git a/keyboards/keychron/k14_pro/k14_pro.c b/keyboards/keychron/k14_pro/k14_pro.c deleted file mode 100644 index cdf4a03322..0000000000 --- a/keyboards/keychron/k14_pro/k14_pro.c +++ /dev/null @@ -1,316 +0,0 @@ -/* 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 . - */ - -#include "k14_pro.h" -#ifdef KC_BLUETOOTH_ENABLE -# include "ckbt51.h" -# include "bluetooth.h" -# include "indicator.h" -# include "transport.h" -# include "battery.h" -# include "bat_level_animation.h" -# include "lpm.h" -#endif - -#ifdef ENABLE_FACTORY_TEST -# include "factory_test.h" -#endif - -#define POWER_ON_LED_DURATION 3000 - -typedef struct PACKED { - uint8_t len; - uint8_t keycode[3]; -} key_combination_t; - -static uint32_t factory_timer_buffer = 0; -static uint32_t power_on_indicator_timer_buffer = 0; -static uint32_t siri_timer_buffer = 0; -static uint8_t mac_keycode[4] = {KC_LOPT, KC_ROPT, KC_LCMD, KC_RCMD}; - -key_combination_t key_comb_list[4] = { - {2, {KC_LWIN, KC_TAB}}, // Task (win) - {2, {KC_LWIN, KC_E}}, // Files (win) - {3, {KC_LSFT, KC_LGUI, KC_4}}, // Snapshot (mac) - {2, {KC_LWIN, KC_C}} // Cortana (win) -}; - -#ifdef KC_BLUETOOTH_ENABLE -bool firstDisconnect = true; -bool bt_factory_reset = false; -static virtual_timer_t pairing_key_timer; -extern uint8_t g_pwm_buffer[DRIVER_COUNT][192]; - -static void pairing_key_timer_cb(void *arg) { - bluetooth_pairing_ex(*(uint8_t *)arg, NULL); -} -#endif - -bool dip_switch_update_kb(uint8_t index, bool active) { - if (index == 0) { -#ifdef INVERT_OS_SWITCH_STATE - default_layer_set(1UL << (!active ? 1 : 0)); -#else - default_layer_set(1UL << (active ? 1 : 0)); -#endif - } - dip_switch_update_user(index, active); - - return true; -} - -#ifdef KC_BLUETOOTH_ENABLE -bool process_record_kb_bt(uint16_t keycode, keyrecord_t *record) { -#else -bool process_record_kb(uint16_t keycode, keyrecord_t *record) { -#endif - static uint8_t host_idx = 0; - - switch (keycode) { - case KC_LOPTN: - case KC_ROPTN: - case KC_LCMMD: - case KC_RCMMD: - if (record->event.pressed) { - register_code(mac_keycode[keycode - KC_LOPTN]); - } else { - unregister_code(mac_keycode[keycode - KC_LOPTN]); - } - return false; // Skip all further processing of this key) - case KC_TASK: - case KC_FILE: - case KC_SNAP: - case KC_CTANA: - if (record->event.pressed) { - for (uint8_t i = 0; i < key_comb_list[keycode - KC_TASK].len; i++) - register_code(key_comb_list[keycode - KC_TASK].keycode[i]); - } else { - for (uint8_t i = 0; i < key_comb_list[keycode - KC_TASK].len; i++) - unregister_code(key_comb_list[keycode - KC_TASK].keycode[i]); - } - return false; // Skip all further processing of this key - case KC_SIRI: - if (record->event.pressed && siri_timer_buffer == 0) { - register_code(KC_LGUI); - register_code(KC_SPACE); - siri_timer_buffer = sync_timer_read32() | 1; - } - return false; // Skip all further processing of this key -#ifdef KC_BLUETOOTH_ENABLE - case BT_HST1 ... BT_HST3: - if (get_transport() == TRANSPORT_BLUETOOTH) { - if (record->event.pressed) { - host_idx = keycode - BT_HST1 + 1; - chVTSet(&pairing_key_timer, TIME_MS2I(2000), (vtfunc_t)pairing_key_timer_cb, &host_idx); - bluetooth_connect_ex(host_idx, 0); - } else { - host_idx = 0; - chVTReset(&pairing_key_timer); - } - } - break; - case BAT_LVL: - if (get_transport() == TRANSPORT_BLUETOOTH && !usb_power_connected()) { - bat_level_animiation_start(battery_get_percentage()); - } - break; -#endif - default: -#ifdef FACTORY_RESET_CHECK - FACTORY_RESET_CHECK(keycode, record); -#endif - break; - } - return true; -} - -void keyboard_post_init_kb(void) { - dip_switch_read(true); - -#ifdef KC_BLUETOOTH_ENABLE - /* Currently we don't use this reset pin */ - palSetLineMode(CKBT51_RESET_PIN, PAL_MODE_OUTPUT_PUSHPULL); - palWriteLine(CKBT51_RESET_PIN, PAL_HIGH); - - /* IMPORTANT: DO NOT enable internal pull-up resistor - * as there is an external pull-down resistor. - */ - palSetLineMode(USB_BT_MODE_SELECT_PIN, PAL_MODE_INPUT); - - ckbt51_init(false); - bluetooth_init(); -#endif - - power_on_indicator_timer_buffer = sync_timer_read32() | 1; - writePin(BAT_LOW_LED_PIN, BAT_LOW_LED_PIN_ON_STATE); - keyboard_post_init_user(); -} - -void matrix_scan_kb(void) { - if (factory_timer_buffer && timer_elapsed32(factory_timer_buffer) > 2000) { - factory_timer_buffer = 0; - if (bt_factory_reset) { - bt_factory_reset = false; - palWriteLine(CKBT51_RESET_PIN, PAL_LOW); - wait_ms(5); - palWriteLine(CKBT51_RESET_PIN, PAL_HIGH); - } - } - - if (power_on_indicator_timer_buffer) { - if (sync_timer_elapsed32(power_on_indicator_timer_buffer) > POWER_ON_LED_DURATION) { - power_on_indicator_timer_buffer = 0; - writePin(BAT_LOW_LED_PIN, !BAT_LOW_LED_PIN_ON_STATE); - } else { - writePin(BAT_LOW_LED_PIN, BAT_LOW_LED_PIN_ON_STATE); - } - } - - if (siri_timer_buffer && sync_timer_elapsed32(siri_timer_buffer) > 500) { - siri_timer_buffer = 0; - unregister_code(KC_LGUI); - unregister_code(KC_SPACE); - } - -#ifdef FACTORY_RESET_TASK - FACTORY_RESET_TASK(); -#endif - matrix_scan_user(); -} - -#ifdef KC_BLUETOOTH_ENABLE -static void ckbt51_param_init(void) { - /* Set bluetooth device name */ - ckbt51_set_local_name(PRODUCT); - wait_ms(10); - /* Set bluetooth parameters */ - module_param_t param = {.event_mode = 0x02, - .connected_idle_timeout = 7200, - .pairing_timeout = 180, - .pairing_mode = 0, - .reconnect_timeout = 5, - .report_rate = 90, - .vendor_id_source = 1, - .verndor_id = 0, // Must be 0x3434 - .product_id = PRODUCT_ID}; - ckbt51_set_param(¶m); - wait_ms(10); -} - -void bluetooth_enter_disconnected_kb(uint8_t host_idx) { - if (bt_factory_reset) { - ckbt51_param_init(); - factory_timer_buffer = timer_read32(); - } - /* CKBT51 bluetooth module boot time is slower, it enters disconnected after boot, - so we place initialization here. */ - if (firstDisconnect && sync_timer_read32() < 1000 && get_transport() == TRANSPORT_BLUETOOTH) { - ckbt51_param_init(); - bluetooth_connect(); - firstDisconnect = false; - } -} - -void ckbt51_default_ack_handler(uint8_t *data, uint8_t len) { - if (data[1] == 0x45) { - module_param_t param = {.event_mode = 0x02, - .connected_idle_timeout = 7200, - .pairing_timeout = 180, - .pairing_mode = 0, - .reconnect_timeout = 5, - .report_rate = 90, - .vendor_id_source = 1, - .verndor_id = 0, // Must be 0x3434 - .product_id = PRODUCT_ID}; - ckbt51_set_param(¶m); - } -} - -void bluetooth_pre_task(void) { - static uint8_t mode = 1; - - if (readPin(USB_BT_MODE_SELECT_PIN) != mode) { - if (readPin(USB_BT_MODE_SELECT_PIN) != mode) { - mode = readPin(USB_BT_MODE_SELECT_PIN); - set_transport(mode == 0 ? TRANSPORT_BLUETOOTH : TRANSPORT_USB); - } - } -} -#endif - -void battery_calculte_voltage(uint16_t value) { - uint16_t voltage = ((uint32_t)value) * 2246 / 1000; - -#ifdef LED_MATRIX_ENABLE - if (led_matrix_is_enabled()) { - uint32_t totalBuf = 0; - - for (uint8_t i = 0; i < DRIVER_COUNT; i++) - for (uint8_t j = 0; j < 192; j++) - totalBuf += g_pwm_buffer[i][j]; - /* We assumpt it is linear relationship*/ - voltage += (30 * totalBuf / LED_MATRIX_LED_COUNT / 255); - } -#endif -#ifdef RGB_MATRIX_ENABLE - if (rgb_matrix_is_enabled()) { - uint32_t totalBuf = 0; - - for (uint8_t i = 0; i < DRIVER_COUNT; i++) - for (uint8_t j = 0; j < 192; j++) - totalBuf += g_pwm_buffer[i][j]; - /* We assumpt it is linear relationship*/ - uint32_t compensation = 60 * totalBuf / RGB_MATRIX_LED_COUNT / 255 / 3; - voltage += compensation; - } -#endif - battery_set_voltage(voltage); -} - -bool via_command_kb(uint8_t *data, uint8_t length) { - switch (data[0]) { -#ifdef KC_BLUETOOTH_ENABLE - case 0xAA: - ckbt51_dfu_rx(data, length); - break; -#endif -#ifdef ENABLE_FACTORY_TEST - case 0xAB: - factory_test_rx(data, length); - break; -#endif - default: - return false; - } - - return true; -} - -#if !defined(VIA_ENABLE) -void raw_hid_receive(uint8_t *data, uint8_t length) { - switch (data[0]) { - case RAW_HID_CMD: - via_command_kb(data, length); - break; - } -} -#endif - -void suspend_wakeup_init_kb(void) { - // code will run on keyboard wakeup - clear_keyboard(); - send_keyboard_report(); -} diff --git a/keyboards/keychron/k14_pro/k14_pro.h b/keyboards/keychron/k14_pro/k14_pro.h deleted file mode 100644 index 9cc6693d4d..0000000000 --- a/keyboards/keychron/k14_pro/k14_pro.h +++ /dev/null @@ -1,55 +0,0 @@ -/* 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 . - */ - -#pragma once - -#include "quantum.h" -#ifdef VIA_ENABLE -# include "via.h" -#endif - -#define ___ KC_NO - -#ifdef VIA_ENABLE -# define USER_START QK_KB_0 -#else -# define USER_START SAFE_RANGE -#endif - -// clang-format off -enum { - KC_LOPTN = USER_START, - KC_ROPTN, - KC_LCMMD, - KC_RCMMD, - KC_TASK, - KC_FILE, - KC_SNAP, - KC_CTANA, - KC_SIRI, -#ifdef KC_BLUETOOTH_ENABLE - BT_HST1, - BT_HST2, - BT_HST3, - BAT_LVL, -#else - BT_HST1 = KC_TRNS, - BT_HST2 = KC_TRNS, - BT_HST3 = KC_TRNS, - BAT_LVL = KC_TRNS, -#endif - NEW_SAFE_RANGE -}; diff --git a/keyboards/keychron/k14_pro/matrix.c b/keyboards/keychron/k14_pro/matrix.c deleted file mode 100644 index 8c0d9d4eba..0000000000 --- a/keyboards/keychron/k14_pro/matrix.c +++ /dev/null @@ -1,190 +0,0 @@ -/* 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 . - */ - -#include "quantum.h" - -#define HC595_STCP B0 -#define HC595_SHCP A1 -#define HC595_DS A7 - -#define DIRECT_COL_NUM 0 - -pin_t row_pins[MATRIX_ROWS] = MATRIX_ROW_PINS; -pin_t col_pins[MATRIX_COLS] = MATRIX_COL_PINS; - -static inline uint8_t readMatrixPin(pin_t pin) { - if (pin != NO_PIN) { - return readPin(pin); - } else { - return 1; - } -} - -static inline void setPinOutput_writeLow(pin_t pin) { - setPinOutput(pin); - writePinLow(pin); -} - -static inline void setPinOutput_writeHigh(pin_t pin) { - setPinOutput(pin); - writePinHigh(pin); -} - -static inline void HC595_delay(uint16_t n) { - while (n-- > 0) { - asm volatile("nop" ::: "memory"); - } -} - -static void HC595_output(uint16_t data) { - uint8_t i; - uint8_t n = 1; - - for (i = 0; i < (MATRIX_COLS - DIRECT_COL_NUM); i++) { - writePinLow(HC595_SHCP); - if (data & 0x1) { - writePinHigh(HC595_DS); - } else { - writePinLow(HC595_DS); - } - HC595_delay(n); - writePinHigh(HC595_SHCP); - HC595_delay(n); - - data = data >> 1; - } - writePinLow(HC595_STCP); - HC595_delay(n); - writePinHigh(HC595_STCP); -} - -static void HC595_output_bit(uint8_t data) { - uint8_t n = 1; - - writePinLow(HC595_SHCP); - if (data & 0x1) { - writePinHigh(HC595_DS); - } else { - writePinLow(HC595_DS); - } - HC595_delay(n); - - writePinHigh(HC595_SHCP); - HC595_delay(n); - - writePinLow(HC595_STCP); - HC595_delay(n); - writePinHigh(HC595_STCP); -} - -static void select_col(uint8_t col) { - if (col < DIRECT_COL_NUM) { - setPinOutput_writeLow(col_pins[col]); - } else { - if (col == DIRECT_COL_NUM) { - HC595_output_bit(0x00); - } - } -} - -static void unselect_col(uint8_t col) { - if (col < DIRECT_COL_NUM) { -#ifdef MATRIX_UNSELECT_DRIVE_HIGH - setPinOutput_writeHigh(col_pins[col]); -#else - setPinInputHigh(col_pins[col]); -#endif - } else { - HC595_output_bit(0x01); - } -} - -static void unselect_cols(void) { - for (uint8_t x = 0; x < MATRIX_COLS; x++) { - if (x < DIRECT_COL_NUM) { -#ifdef MATRIX_UNSELECT_DRIVE_HIGH - setPinOutput_writeHigh(col_pins[x]); -#else - setPinInputHigh(col_pins[x]); -#endif - } else { - if (x == DIRECT_COL_NUM) HC595_output(0xFFFF); - break; - } - } -} - -void select_all_cols(void) { - for (uint8_t x = 0; x < MATRIX_COLS; x++) { - if (x < DIRECT_COL_NUM) { - setPinOutput_writeLow(col_pins[x]); - } else { - if (x == DIRECT_COL_NUM) HC595_output(0x0000); - break; - } - } -} - -static void matrix_read_rows_on_col(matrix_row_t current_matrix[], uint8_t current_col, matrix_row_t row_shifter) { - // Select col - select_col(current_col); - HC595_delay(200); - - // For each row... - for (uint8_t row_index = 0; row_index < MATRIX_ROWS; row_index++) { - // Check row pin state - if (readMatrixPin(row_pins[row_index]) == 0) { - // Pin LO, set col bit - current_matrix[row_index] |= row_shifter; - } else { - // Pin HI, clear col bit - current_matrix[row_index] &= ~row_shifter; - } - } - - // Unselect col - unselect_col(current_col); - HC595_delay(200); // wait for all Row signals to go HIGH -} - -void matrix_init_custom(void) { - setPinOutput(HC595_DS); - setPinOutput(HC595_STCP); - setPinOutput(HC595_SHCP); - - for (uint8_t x = 0; x < MATRIX_ROWS; x++) { - if (row_pins[x] != NO_PIN) { - setPinInputHigh(row_pins[x]); - } - } - - unselect_cols(); -} - -bool matrix_scan_custom(matrix_row_t current_matrix[]) { - matrix_row_t curr_matrix[MATRIX_ROWS] = {0}; - - // Set col, read rows - matrix_row_t row_shifter = MATRIX_ROW_SHIFTER; - for (uint8_t current_col = 0; current_col < MATRIX_COLS; current_col++, row_shifter <<= 1) { - matrix_read_rows_on_col(curr_matrix, current_col, row_shifter); - } - - bool changed = memcmp(current_matrix, curr_matrix, sizeof(curr_matrix)) != 0; - if (changed) memcpy(current_matrix, curr_matrix, sizeof(curr_matrix)); - - return changed; -} diff --git a/keyboards/keychron/k14_pro/mcuconf.h b/keyboards/keychron/k14_pro/mcuconf.h deleted file mode 100644 index fc7c1de23c..0000000000 --- a/keyboards/keychron/k14_pro/mcuconf.h +++ /dev/null @@ -1,37 +0,0 @@ -/* 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 - -/* Set HCLK to 48 MHz as tradeoff of USB lowest clockand and - * lower power comsumption for bluetooth. Will use dynamic - * clock when STM32L4 is supported in ChibiOS */ -#undef STM32_PLLM_VALUE -#define STM32_PLLM_VALUE 2 - -#undef STM32_PLLN_VALUE -#define STM32_PLLN_VALUE 12 - -#undef STM32_I2C_USE_I2C1 -#define STM32_I2C_USE_I2C1 TRUE - -#ifdef KC_BLUETOOTH_ENABLE -# undef STM32_SERIAL_USE_USART2 -# define STM32_SERIAL_USE_USART2 TRUE -#endif \ No newline at end of file diff --git a/keyboards/keychron/k14_pro/readme.md b/keyboards/keychron/k14_pro/readme.md deleted file mode 100644 index 4276424e47..0000000000 --- a/keyboards/keychron/k14_pro/readme.md +++ /dev/null @@ -1,23 +0,0 @@ -# Keychron K14 Pro - -![Keychron K14 Pro](https://i.imgur.com/oDkNCbI.jpg) - -A customizable 70% keyboard. - -* Keyboard Maintainer: [Keychron](https://github.com/keychron) -* Hardware Supported: Keychron K14 Pro -* Hardware Availability:[Keychron K14 Pro QMK/VIA Wireless Mechanical Keyboard](https://www.keychron.com/products/keychron-k14-pro-qmk-via-wireless-mechanical-keyboard) - -Make example for this keyboard (after setting up your build environment): - - make keychron/k14_pro/ansi/rgb:default - make keychron/k14_pro/ansi/white:default - -Flashing example for this keyboard: - - make keychron/k14_pro/ansi/rgb:default:flash - make keychron/k14_pro/ansi/white:default:flash - -**Reset Key**: Connect the USB cable, toggle mode switch to "Off", hold down the *Esc* key or reset button underneath space bar, then toggle the switch to "Cable". - -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). diff --git a/keyboards/keychron/k14_pro/rules.mk b/keyboards/keychron/k14_pro/rules.mk deleted file mode 100644 index 1f9fc1ab58..0000000000 --- a/keyboards/keychron/k14_pro/rules.mk +++ /dev/null @@ -1,7 +0,0 @@ -# Enter lower-power sleep mode when on the ChibiOS idle thread -OPT_DEFS += -DCORTEX_ENABLE_WFI_IDLE=TRUE -OPT_DEFS += -DNO_USB_STARTUP_CHECK -DENABLE_FACTORY_TEST - -SRC += matrix.c - -include keyboards/keychron/bluetooth/bluetooth.mk diff --git a/keyboards/keychron/k14_pro/via_json/k14_pro_ansi_rgb.json b/keyboards/keychron/k14_pro/via_json/k14_pro_ansi_rgb.json deleted file mode 100644 index de44713e5c..0000000000 --- a/keyboards/keychron/k14_pro/via_json/k14_pro_ansi_rgb.json +++ /dev/null @@ -1,239 +0,0 @@ -{ - "name": "Keychron K14 Pro ANSI RGB", - "vendorId": "0x3434", - "productId": "0x02E0", - "keycodes": ["qmk_lighting"], - "menus": [ - { - "label": "Lighting", - "content": [ - { - "label": "Backlight", - "content": [ - { - "label": "Brightness", - "type": "range", - "options": [0, 255], - "content": ["id_qmk_rgb_matrix_brightness", 3, 1] - }, - { - "label": "Effect", - "type": "dropdown", - "content": ["id_qmk_rgb_matrix_effect", 3, 2], - "options": [ - ["None", 0], - ["Solid Color", 1], - ["Breathing", 2], - ["Band Spiral Val", 3], - ["Cycle All", 4], - ["Cycle Left Right", 5], - ["Cycle Up Down", 6], - ["Rainbow Moving Chevron", 7], - ["Cycle Out In", 8], - ["Cycle Out In Dual", 9], - ["Cycle Pinwheel", 10], - ["Cycle Spiral", 11], - ["Dual Beacon", 12], - ["Rainbow Beacon", 13], - ["Jellybean Raindrops", 14], - ["Pixel Rain", 15], - ["Typing Heatmap", 16], - ["Digital Rain", 17], - ["Reactive Simple", 18], - ["Reactive Multiwide", 19], - ["Reactive Multinexus", 20], - ["Splash", 21], - ["Solid Splash", 22] - ] - }, - { - "showIf": "{id_qmk_rgb_matrix_effect} > 1", - "label": "Effect Speed", - "type": "range", - "options": [0, 255], - "content": ["id_qmk_rgb_matrix_effect_speed", 3, 3] - }, - { - "showIf": "{id_qmk_rgb_matrix_effect} != 0 && ( {id_qmk_rgb_matrix_effect} < 4 || {id_qmk_rgb_matrix_effect} == 18 || ({id_qmk_rgb_matrix_effect} > 17 && {id_qmk_rgb_matrix_effect} != 21) ) ", - "label": "Color", - "type": "color", - "content": ["id_qmk_rgb_matrix_color", 3, 4] - } - ] - } - ] - } - ], - "customKeycodes": [ - {"name": "Left Option", "title": "Left Option", "shortName": "LOpt"}, - {"name": "Right Option", "title": "Right Option", "shortName": "ROpt"}, - {"name": "Left Cmd", "title": "Left Command", "shortName": "LCmd"}, - {"name": "Right Cmd", "title": "Right Command", "shortName": "RCmd"}, - {"name": "Misson Control", "title": "Misson Control, availabe in macOS", "shortName": "MCtrl"}, - {"name": "Launch pad", "title": "Launch pad, availabe in macOS", "shortName": "LPad"}, - {"name": "Task View", "title": "Task View in Windows", "shortName": "Task"}, - {"name": "File Explorer", "title": "File Explorer in Windows", "shortName": "File"}, - {"name": "Screen shot", "title": "Screenshot in macOS", "shortName": "SShot"}, - {"name": "Cortana", "title": "Cortana in Windows", "shortName": "Cortana"}, - {"name": "Siri", "title": "Siri in macOS", "shortName": "Siri"}, - {"name": "Bluetooth Host 1", "title": "Bluetooth Host 1", "shortName": "BTH1"}, - {"name": "Bluetooth Host 2", "title": "Bluetooth Host 2", "shortName": "BTH2"}, - {"name": "Bluetooth Host 3", "title": "Bluetooth Host 3", "shortName": "BTH3"}, - {"name": "Battery Level", "title": "Show battery level", "shortName": "Batt"} - ], - "matrix": {"rows": 5, "cols": 16}, - "layouts": { - "keymap": [ - [ - { - "c": "#777777" - }, - "0,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", - { - "c": "#aaaaaa", - "w": 2 - }, - "0,13", - "0,14", - "0,15" - ], - [ - { - "w": 1.5 - }, - "1,0", - { - "c": "#cccccc" - }, - "1,1", - "1,2", - "1,3", - "1,4", - "1,5", - "1,6", - "1,7", - "1,8", - "1,9", - "1,10", - "1,11", - "1,12", - { - "c": "#aaaaaa", - "w": 1.5 - }, - "1,13", - "1,14", - "1,15" - ], - [ - { - "w": 1.75 - }, - "2,0", - { - "c": "#cccccc" - }, - "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", - { - "c": "#aaaaaa" - }, - "2,14", - "2,15" - ], - [ - { - "w": 2.25 - }, - "3,0", - { - "c": "#cccccc" - }, - "3,2", - "3,3", - "3,4", - "3,5", - "3,6", - "3,7", - "3,8", - "3,9", - "3,10", - "3,11", - { - "c": "#aaaaaa", - "w": 2.75 - }, - "3,13", - { - "c": "#777777" - }, - "3,14", - { - "c": "#aaaaaa" - }, - "3,15" - ], - [ - { - "w": 1.25 - }, - "4,0", - { - "w": 1.25 - }, - "4,1", - { - "w": 1.25 - }, - "4,2", - { - "c": "#cccccc", - "w": 6.25 - }, - "4,6", - { - "c": "#aaaaaa" - }, - "4,9", - "4,10", - "4,11", - "4,12", - { - "c": "#777777" - }, - "4,13", - "4,14", - "4,15" - ] - ] - } -} diff --git a/keyboards/keychron/k14_pro/via_json/k14_pro_ansi_rgb_v1.00_20230330.json b/keyboards/keychron/k14_pro/via_json/k14_pro_ansi_rgb_v1.00_20230330.json deleted file mode 100644 index a7ba6ba5d3..0000000000 --- a/keyboards/keychron/k14_pro/via_json/k14_pro_ansi_rgb_v1.00_20230330.json +++ /dev/null @@ -1,239 +0,0 @@ -{ - "name": "Keychron K14 Pro", - "vendorId": "0x3434", - "productId": "0x02E0", - "keycodes": ["qmk_lighting"], - "menus": [ - { - "label": "Lighting", - "content": [ - { - "label": "Backlight", - "content": [ - { - "label": "Brightness", - "type": "range", - "options": [0, 255], - "content": ["id_qmk_rgb_matrix_brightness", 3, 1] - }, - { - "label": "Effect", - "type": "dropdown", - "content": ["id_qmk_rgb_matrix_effect", 3, 2], - "options": [ - ["None", 0], - ["Solid Color", 1], - ["Breathing", 2], - ["Band Spiral Val", 3], - ["Cycle All", 4], - ["Cycle Left Right", 5], - ["Cycle Up Down", 6], - ["Rainbow Moving Chevron", 7], - ["Cycle Out In", 8], - ["Cycle Out In Dual", 9], - ["Cycle Pinwheel", 10], - ["Cycle Spiral", 11], - ["Dual Beacon", 12], - ["Rainbow Beacon", 13], - ["Jellybean Raindrops", 14], - ["Pixel Rain", 15], - ["Typing Heatmap", 16], - ["Digital Rain", 17], - ["Reactive Simple", 18], - ["Reactive Multiwide", 19], - ["Reactive Multinexus", 20], - ["Splash", 21], - ["Solid Splash", 22] - ] - }, - { - "showIf": "{id_qmk_rgb_matrix_effect} > 1", - "label": "Effect Speed", - "type": "range", - "options": [0, 255], - "content": ["id_qmk_rgb_matrix_effect_speed", 3, 3] - }, - { - "showIf": "{id_qmk_rgb_matrix_effect} != 0 && ( {id_qmk_rgb_matrix_effect} < 4 || {id_qmk_rgb_matrix_effect} == 18 || ({id_qmk_rgb_matrix_effect} > 17 && {id_qmk_rgb_matrix_effect} != 21) ) ", - "label": "Color", - "type": "color", - "content": ["id_qmk_rgb_matrix_color", 3, 4] - } - ] - } - ] - } - ], - "customKeycodes": [ - {"name": "Left Option", "title": "Left Option", "shortName": "LOpt"}, - {"name": "Right Option", "title": "Right Option", "shortName": "ROpt"}, - {"name": "Left Cmd", "title": "Left Command", "shortName": "LCmd"}, - {"name": "Right Cmd", "title": "Right Command", "shortName": "RCmd"}, - {"name": "Misson Control", "title": "Misson Control, availabe in macOS", "shortName": "MCtrl"}, - {"name": "Launch pad", "title": "Launch pad, availabe in macOS", "shortName": "LPad"}, - {"name": "Task View", "title": "Task View in Windows", "shortName": "Task"}, - {"name": "File Explorer", "title": "File Explorer in Windows", "shortName": "File"}, - {"name": "Screen shot", "title": "Screenshot in macOS", "shortName": "SShot"}, - {"name": "Cortana", "title": "Cortana in Windows", "shortName": "Cortana"}, - {"name": "Siri", "title": "Siri in macOS", "shortName": "Siri"}, - {"name": "Bluetooth Host 1", "title": "Bluetooth Host 1", "shortName": "BTH1"}, - {"name": "Bluetooth Host 2", "title": "Bluetooth Host 2", "shortName": "BTH2"}, - {"name": "Bluetooth Host 3", "title": "Bluetooth Host 3", "shortName": "BTH3"}, - {"name": "Battery Level", "title": "Show battery level", "shortName": "Batt"} - ], - "matrix": {"rows": 5, "cols": 16}, - "layouts": { - "keymap": [ - [ - { - "c": "#777777" - }, - "0,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", - { - "c": "#aaaaaa", - "w": 2 - }, - "0,13", - "0,14", - "0,15" - ], - [ - { - "w": 1.5 - }, - "1,0", - { - "c": "#cccccc" - }, - "1,1", - "1,2", - "1,3", - "1,4", - "1,5", - "1,6", - "1,7", - "1,8", - "1,9", - "1,10", - "1,11", - "1,12", - { - "c": "#aaaaaa", - "w": 1.5 - }, - "1,13", - "1,14", - "1,15" - ], - [ - { - "w": 1.75 - }, - "2,0", - { - "c": "#cccccc" - }, - "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", - { - "c": "#aaaaaa" - }, - "2,14", - "2,15" - ], - [ - { - "w": 2.25 - }, - "3,0", - { - "c": "#cccccc" - }, - "3,2", - "3,3", - "3,4", - "3,5", - "3,6", - "3,7", - "3,8", - "3,9", - "3,10", - "3,11", - { - "c": "#aaaaaa", - "w": 2.75 - }, - "3,13", - { - "c": "#777777" - }, - "3,14", - { - "c": "#aaaaaa" - }, - "3,15" - ], - [ - { - "w": 1.25 - }, - "4,0", - { - "w": 1.25 - }, - "4,1", - { - "w": 1.25 - }, - "4,2", - { - "c": "#cccccc", - "w": 6.25 - }, - "4,6", - { - "c": "#aaaaaa" - }, - "4,9", - "4,10", - "4,11", - "4,12", - { - "c": "#777777" - }, - "4,13", - "4,14", - "4,15" - ] - ] - } -} diff --git a/keyboards/keychron/k14_pro/via_json/k14_pro_ansi_white.json b/keyboards/keychron/k14_pro/via_json/k14_pro_ansi_white.json deleted file mode 100644 index 4280b8a714..0000000000 --- a/keyboards/keychron/k14_pro/via_json/k14_pro_ansi_white.json +++ /dev/null @@ -1,178 +0,0 @@ -{ - "name": "Keychron K14 Pro ANSI White", - "vendorId": "0x3434", - "productId": "0x02E3", - "keycodes": ["qmk_lighting"], - "customKeycodes": [ - {"name": "Left Option", "title": "Left Option", "shortName": "LOpt"}, - {"name": "Right Option", "title": "Right Option", "shortName": "ROpt"}, - {"name": "Left Cmd", "title": "Left Command", "shortName": "LCmd"}, - {"name": "Right Cmd", "title": "Right Command", "shortName": "RCmd"}, - {"name": "Misson Control", "title": "Misson Control, availabe in macOS", "shortName": "MCtrl"}, - {"name": "Launch pad", "title": "Launch pad, availabe in macOS", "shortName": "LPad"}, - {"name": "Task View", "title": "Task View in Windows", "shortName": "Task"}, - {"name": "File Explorer", "title": "File Explorer in Windows", "shortName": "File"}, - {"name": "Screen shot", "title": "Screenshot in macOS", "shortName": "SShot"}, - {"name": "Cortana", "title": "Cortana in Windows", "shortName": "Cortana"}, - {"name": "Siri", "title": "Siri in macOS", "shortName": "Siri"}, - {"name": "Bluetooth Host 1", "title": "Bluetooth Host 1", "shortName": "BTH1"}, - {"name": "Bluetooth Host 2", "title": "Bluetooth Host 2", "shortName": "BTH2"}, - {"name": "Bluetooth Host 3", "title": "Bluetooth Host 3", "shortName": "BTH3"}, - {"name": "Battery Level", "title": "Show battery level", "shortName": "Batt"} - ], - "matrix": {"rows": 5, "cols": 16}, - "layouts": { - "keymap": [ - [ - { - "c": "#777777" - }, - "0,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", - { - "c": "#aaaaaa", - "w": 2 - }, - "0,13", - "0,14", - "0,15" - ], - [ - { - "w": 1.5 - }, - "1,0", - { - "c": "#cccccc" - }, - "1,1", - "1,2", - "1,3", - "1,4", - "1,5", - "1,6", - "1,7", - "1,8", - "1,9", - "1,10", - "1,11", - "1,12", - { - "c": "#aaaaaa", - "w": 1.5 - }, - "1,13", - "1,14", - "1,15" - ], - [ - { - "w": 1.75 - }, - "2,0", - { - "c": "#cccccc" - }, - "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", - { - "c": "#aaaaaa" - }, - "2,14", - "2,15" - ], - [ - { - "w": 2.25 - }, - "3,0", - { - "c": "#cccccc" - }, - "3,2", - "3,3", - "3,4", - "3,5", - "3,6", - "3,7", - "3,8", - "3,9", - "3,10", - "3,11", - { - "c": "#aaaaaa", - "w": 2.75 - }, - "3,13", - { - "c": "#777777" - }, - "3,14", - { - "c": "#aaaaaa" - }, - "3,15" - ], - [ - { - "w": 1.25 - }, - "4,0", - { - "w": 1.25 - }, - "4,1", - { - "w": 1.25 - }, - "4,2", - { - "c": "#cccccc", - "w": 6.25 - }, - "4,6", - { - "c": "#aaaaaa" - }, - "4,9", - "4,10", - "4,11", - "4,12", - { - "c": "#777777" - }, - "4,13", - "4,14", - "4,15" - ] - ] - } -} diff --git a/keyboards/keychron/k14_pro/via_json/k14_pro_ansi_white_v1.00_20230330.json b/keyboards/keychron/k14_pro/via_json/k14_pro_ansi_white_v1.00_20230330.json deleted file mode 100644 index 26420f5bb7..0000000000 --- a/keyboards/keychron/k14_pro/via_json/k14_pro_ansi_white_v1.00_20230330.json +++ /dev/null @@ -1,178 +0,0 @@ -{ - "name": "Keychron K14 Pro", - "vendorId": "0x3434", - "productId": "0x02E3", - "keycodes": ["qmk_lighting"], - "customKeycodes": [ - {"name": "Left Option", "title": "Left Option", "shortName": "LOpt"}, - {"name": "Right Option", "title": "Right Option", "shortName": "ROpt"}, - {"name": "Left Cmd", "title": "Left Command", "shortName": "LCmd"}, - {"name": "Right Cmd", "title": "Right Command", "shortName": "RCmd"}, - {"name": "Misson Control", "title": "Misson Control, availabe in macOS", "shortName": "MCtrl"}, - {"name": "Launch pad", "title": "Launch pad, availabe in macOS", "shortName": "LPad"}, - {"name": "Task View", "title": "Task View in Windows", "shortName": "Task"}, - {"name": "File Explorer", "title": "File Explorer in Windows", "shortName": "File"}, - {"name": "Screen shot", "title": "Screenshot in macOS", "shortName": "SShot"}, - {"name": "Cortana", "title": "Cortana in Windows", "shortName": "Cortana"}, - {"name": "Siri", "title": "Siri in macOS", "shortName": "Siri"}, - {"name": "Bluetooth Host 1", "title": "Bluetooth Host 1", "shortName": "BTH1"}, - {"name": "Bluetooth Host 2", "title": "Bluetooth Host 2", "shortName": "BTH2"}, - {"name": "Bluetooth Host 3", "title": "Bluetooth Host 3", "shortName": "BTH3"}, - {"name": "Battery Level", "title": "Show battery level", "shortName": "Batt"} - ], - "matrix": {"rows": 5, "cols": 16}, - "layouts": { - "keymap": [ - [ - { - "c": "#777777" - }, - "0,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", - { - "c": "#aaaaaa", - "w": 2 - }, - "0,13", - "0,14", - "0,15" - ], - [ - { - "w": 1.5 - }, - "1,0", - { - "c": "#cccccc" - }, - "1,1", - "1,2", - "1,3", - "1,4", - "1,5", - "1,6", - "1,7", - "1,8", - "1,9", - "1,10", - "1,11", - "1,12", - { - "c": "#aaaaaa", - "w": 1.5 - }, - "1,13", - "1,14", - "1,15" - ], - [ - { - "w": 1.75 - }, - "2,0", - { - "c": "#cccccc" - }, - "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", - { - "c": "#aaaaaa" - }, - "2,14", - "2,15" - ], - [ - { - "w": 2.25 - }, - "3,0", - { - "c": "#cccccc" - }, - "3,2", - "3,3", - "3,4", - "3,5", - "3,6", - "3,7", - "3,8", - "3,9", - "3,10", - "3,11", - { - "c": "#aaaaaa", - "w": 2.75 - }, - "3,13", - { - "c": "#777777" - }, - "3,14", - { - "c": "#aaaaaa" - }, - "3,15" - ], - [ - { - "w": 1.25 - }, - "4,0", - { - "w": 1.25 - }, - "4,1", - { - "w": 1.25 - }, - "4,2", - { - "c": "#cccccc", - "w": 6.25 - }, - "4,6", - { - "c": "#aaaaaa" - }, - "4,9", - "4,10", - "4,11", - "4,12", - { - "c": "#777777" - }, - "4,13", - "4,14", - "4,15" - ] - ] - } -} diff --git a/keyboards/keychron/k15_max/ansi_encoder/rgb/config.h b/keyboards/keychron/k15_max/ansi_encoder/rgb/config.h deleted file mode 100644 index 076ba12bb4..0000000000 --- a/keyboards/keychron/k15_max/ansi_encoder/rgb/config.h +++ /dev/null @@ -1,55 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#pragma once - -#ifdef RGB_MATRIX_ENABLE -/* RGB Matrix driver configuration */ -# define DRIVER_COUNT 2 -# define RGB_MATRIX_LED_COUNT 89 - -# define SPI_SCK_PIN A5 -# define SPI_MISO_PIN A6 -# define SPI_MOSI_PIN A7 - -# define DRIVER_CS_PINS \ - { B8, B9 } -# define SNLED23751_SPI_DIVISOR 16 -# define SPI_DRIVER SPID1 - -/* Scan phase of led driver set as MSKPHASE_12CHANNEL(defined as 0x03 in snled27351.h) */ -# define SNLED27351_PHASE_CHANNEL MSKPHASE_12CHANNEL - -/* Set LED driver current */ -# define SNLED27351_CURRENT_TUNE \ - { 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18 } - -/* Set to infinit, which is use in USB mode by default */ -# define RGB_MATRIX_TIMEOUT RGB_MATRIX_TIMEOUT_INFINITE -/* Allow shutdown of led driver to save power */ -# define RGB_MATRIX_DRIVER_SHUTDOWN_ENABLE -/* Turn off backlight on low brightness to save power */ -# define RGB_MATRIX_BRIGHTNESS_TURN_OFF_VAL 48 - -/* Indications */ -# define DIM_CAPS_LOCK -# define CAPS_LOCK_INDEX 48 -# define LOW_BAT_IND_INDEX \ - { 81, 83 } - -# define RGB_MATRIX_KEYPRESSES -# define RGB_MATRIX_FRAMEBUFFER_EFFECTS -#endif diff --git a/keyboards/keychron/k15_max/ansi_encoder/rgb/info.json b/keyboards/keychron/k15_max/ansi_encoder/rgb/info.json deleted file mode 100644 index 25ab20787b..0000000000 --- a/keyboards/keychron/k15_max/ansi_encoder/rgb/info.json +++ /dev/null @@ -1,36 +0,0 @@ -{ - "usb": { - "pid": "0x0AF0", - "device_version": "1.0.0" - }, - "features": { - "rgb_matrix": true - }, - "rgb_matrix": { - "driver": "snled27351_spi", - "sleep": true, - "animations": { - "band_spiral_val": true, - "breathing": true, - "cycle_all": true, - "cycle_left_right": true, - "cycle_out_in": true, - "cycle_out_in_dual": true, - "cycle_pinwheel": true, - "cycle_spiral": true, - "cycle_up_down": true, - "digital_rain": true, - "dual_beacon": true, - "jellybean_raindrops": true, - "pixel_rain": true, - "rainbow_beacon": true, - "rainbow_moving_chevron": true, - "solid_reactive_multinexus": true, - "solid_reactive_multiwide": true, - "solid_reactive_simple": true, - "solid_splash": true, - "splash": true, - "typing_heatmap": true - } - } -} diff --git a/keyboards/keychron/k15_max/ansi_encoder/rgb/keymaps/default/keymap.c b/keyboards/keychron/k15_max/ansi_encoder/rgb/keymaps/default/keymap.c deleted file mode 100644 index 2352cc9ad0..0000000000 --- a/keyboards/keychron/k15_max/ansi_encoder/rgb/keymaps/default/keymap.c +++ /dev/null @@ -1,76 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#include QMK_KEYBOARD_H -#include "keychron_common.h" - -enum layers { - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN, -}; -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_ansi_90( - KC_MUTE, KC_ESC, KC_BRID, KC_BRIU, KC_MCTRL, KC_LNPAD, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_INS, KC_DEL, - MC_1, KC_GRV, 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_PGUP, - MC_2, 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_PGDN, - MC_3, 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_HOME, - MC_4, KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, - MC_5, KC_LCTL, KC_LOPTN, KC_LCMMD, KC_SPC, MO(MAC_FN), KC_SPC, KC_RCMMD, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - - [MAC_FN] = LAYOUT_ansi_90( - RGB_TOG, _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, - _______, _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, KC_END, - _______, _______, _______, _______, _______, _______, BAT_LVL, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - - [WIN_BASE] = LAYOUT_ansi_90( - KC_MUTE, KC_ESC, 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_INS, KC_DEL, - MC_1, KC_GRV, 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_PGUP, - MC_2, 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_PGDN, - MC_3, 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_HOME, - MC_4, KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, - MC_5, KC_LCTL, KC_LWIN, KC_LALT, KC_SPC, MO(WIN_FN), KC_SPC, KC_RALT, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - - [WIN_FN] = LAYOUT_ansi_90( - RGB_TOG, _______, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, - _______, _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, KC_END, - _______, _______, _______, _______, _______, _______, BAT_LVL, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______) -}; - -#if defined(ENCODER_MAP_ENABLE) - const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][2] = { - [MAC_BASE] = { ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [MAC_FN] = { ENCODER_CCW_CW(RGB_VAD, RGB_VAI)}, - [WIN_BASE] = { ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [WIN_FN] = { ENCODER_CCW_CW(RGB_VAD, RGB_VAI)}, - }; -#endif // ENCODER_MAP_ENABLE - -// clang-format on -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - if (!process_record_keychron_common(keycode, record)) { - return false; - } - return true; -} diff --git a/keyboards/keychron/k15_max/ansi_encoder/rgb/keymaps/via/keymap.c b/keyboards/keychron/k15_max/ansi_encoder/rgb/keymaps/via/keymap.c deleted file mode 100644 index 2352cc9ad0..0000000000 --- a/keyboards/keychron/k15_max/ansi_encoder/rgb/keymaps/via/keymap.c +++ /dev/null @@ -1,76 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#include QMK_KEYBOARD_H -#include "keychron_common.h" - -enum layers { - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN, -}; -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_ansi_90( - KC_MUTE, KC_ESC, KC_BRID, KC_BRIU, KC_MCTRL, KC_LNPAD, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_INS, KC_DEL, - MC_1, KC_GRV, 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_PGUP, - MC_2, 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_PGDN, - MC_3, 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_HOME, - MC_4, KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, - MC_5, KC_LCTL, KC_LOPTN, KC_LCMMD, KC_SPC, MO(MAC_FN), KC_SPC, KC_RCMMD, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - - [MAC_FN] = LAYOUT_ansi_90( - RGB_TOG, _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, - _______, _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, KC_END, - _______, _______, _______, _______, _______, _______, BAT_LVL, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - - [WIN_BASE] = LAYOUT_ansi_90( - KC_MUTE, KC_ESC, 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_INS, KC_DEL, - MC_1, KC_GRV, 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_PGUP, - MC_2, 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_PGDN, - MC_3, 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_HOME, - MC_4, KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, - MC_5, KC_LCTL, KC_LWIN, KC_LALT, KC_SPC, MO(WIN_FN), KC_SPC, KC_RALT, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - - [WIN_FN] = LAYOUT_ansi_90( - RGB_TOG, _______, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, - _______, _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, KC_END, - _______, _______, _______, _______, _______, _______, BAT_LVL, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______) -}; - -#if defined(ENCODER_MAP_ENABLE) - const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][2] = { - [MAC_BASE] = { ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [MAC_FN] = { ENCODER_CCW_CW(RGB_VAD, RGB_VAI)}, - [WIN_BASE] = { ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [WIN_FN] = { ENCODER_CCW_CW(RGB_VAD, RGB_VAI)}, - }; -#endif // ENCODER_MAP_ENABLE - -// clang-format on -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - if (!process_record_keychron_common(keycode, record)) { - return false; - } - return true; -} diff --git a/keyboards/keychron/k15_max/ansi_encoder/rgb/keymaps/via/rules.mk b/keyboards/keychron/k15_max/ansi_encoder/rgb/keymaps/via/rules.mk deleted file mode 100644 index 1e5b99807c..0000000000 --- a/keyboards/keychron/k15_max/ansi_encoder/rgb/keymaps/via/rules.mk +++ /dev/null @@ -1 +0,0 @@ -VIA_ENABLE = yes diff --git a/keyboards/keychron/k15_max/ansi_encoder/rgb/rgb.c b/keyboards/keychron/k15_max/ansi_encoder/rgb/rgb.c deleted file mode 100644 index 13c3d22477..0000000000 --- a/keyboards/keychron/k15_max/ansi_encoder/rgb/rgb.c +++ /dev/null @@ -1,155 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#include "quantum.h" - -// clang-format off -#ifdef RGB_MATRIX_ENABLE -const snled27351_led_t PROGMEM g_snled27351_leds[RGB_MATRIX_LED_COUNT] = { -/* Refer to snled27351manual for these locations - * driver - * | R location - * | | G location - * | | | B location - * | | | | */ - {0, I_2, G_2, H_2}, - {0, I_3, G_3, H_3}, - {0, I_4, G_4, H_4}, - {0, I_5, G_5, H_5}, - {0, I_6, G_6, H_6}, - {0, I_7, G_7, H_7}, - {0, I_8, G_8, H_8}, - {0, I_9, G_9, H_9}, - {0, I_10, G_10, H_10}, - {0, I_11, G_11, H_11}, - {0, I_12, G_12, H_12}, - {0, I_13, G_13, H_13}, - {0, I_14, G_14, H_14}, - {0, I_15, G_15, H_15}, - {0, I_16, G_16, H_16}, - - {0, C_1, A_1, B_1}, - {0, C_2, A_2, B_2}, - {0, C_3, A_3, B_3}, - {0, C_4, A_4, B_4}, - {0, C_5, A_5, B_5}, - {0, C_6, A_6, B_6}, - {0, C_7, A_7, B_7}, - {0, C_8, A_8, B_8}, - {0, C_9, A_9, B_9}, - {0, C_10, A_10, B_10}, - {0, C_11, A_11, B_11}, - {0, C_12, A_12, B_12}, - {0, C_13, A_13, B_13}, - {0, C_14, A_14, B_14}, - {0, C_15, A_15, B_15}, - {0, C_16, A_16, B_16}, - - {0, F_1, D_1, E_1}, - {0, F_2, D_2, E_2}, - {0, F_3, D_3, E_3}, - {0, F_4, D_4, E_4}, - {0, F_5, D_5, E_5}, - {0, F_6, D_6, E_6}, - {0, F_7, D_7, E_7}, - {0, F_8, D_8, E_8}, - {0, F_9, D_9, E_9}, - {0, F_10, D_10, E_10}, - {0, F_11, D_11, E_11}, - {0, F_12, D_12, E_12}, - {0, F_13, D_13, E_13}, - {0, F_14, D_14, E_14}, - {0, F_15, D_15, E_15}, - {0, F_16, D_16, E_16}, - - {1, C_16, A_16, B_16}, - {1, C_15, A_15, B_15}, - {1, C_14, A_14, B_14}, - {1, C_13, A_13, B_13}, - {1, C_12, A_12, B_12}, - {1, C_11, A_11, B_11}, - {1, C_10, A_10, B_10}, - {1, C_8, A_8, B_8}, - {1, C_7, A_7, B_7}, - {1, C_6, A_6, B_6}, - {1, C_5, A_5, B_5}, - {1, C_4, A_4, B_4}, - {1, C_3, A_3, B_3}, - {1, C_2, A_2, B_2}, - {1, C_1, A_1, B_1}, - - {1, I_16, G_16, H_16}, - {1, I_14, G_14, H_14}, - {1, I_13, G_13, H_13}, - {1, I_12, G_12, H_12}, - {1, I_11, G_11, H_11}, - {1, I_10, G_10, H_10}, - {1, I_9, G_9, H_9}, - {1, I_8, G_8, H_8}, - {1, I_7, G_7, H_7}, - {1, I_6, G_6, H_6}, - {1, I_5, G_5, H_5}, - {1, I_4, G_4, H_4}, - {1, I_3, G_3, H_3}, - {1, I_2, G_2, H_2}, - {1, I_1, G_1, H_1}, - - {1, F_16, D_16, E_16}, - {1, F_15, D_15, E_15}, - {1, F_14, D_14, E_14}, - {1, F_13, D_13, E_13}, - {1, F_12, D_12, E_12}, - {1, F_10, D_10, E_10}, - {1, F_7, D_7, E_7}, - {1, F_6, D_6, E_6}, - {1, F_5, D_5, E_5}, - {1, F_3, D_3, E_3}, - {1, F_2, D_2, E_2}, - {1, F_1, D_1, E_1}, -}; - -#define __ NO_LED - -led_config_t g_led_config = { - { - // Key Matrix to LED Index - { __, 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, 40, 41, 42, 43, 44, 45, 46 }, - { 47, 48, 49, 50, 51, 52, __, 53, 54, 55, 56, 57, 58, 59, 60, 61 }, - { 62, 63, __, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76 }, - { 77, 78, 79, 80, __, 81, __, 82, __, 83, 84, 85, __, 86, 87, 88 }, - }, - { - // LED Index to Physical Position - {19, 0}, {34, 0}, {46, 0}, {59, 1}, {71, 3}, {86, 6}, { 98, 8}, {121, 8}, {133, 6}, {147, 3}, {159, 1}, {173, 0}, {185, 0}, {203, 0}, {220, 0}, - {5,14}, {24,14}, {36,14}, {48,13}, {61,15}, {73,17}, {85,20}, { 97,22}, {116,22}, {128,20}, {140,17}, {152,15}, {165,13}, {177,14}, {195,14}, {220,14}, - {4,24}, {24,24}, {40,24}, {53,24}, {65,27}, {77,29}, {89,31}, {113,33}, {125,31}, {137,29}, {149,26}, {161,24}, {174,24}, {186,24}, {201,24}, {222,24}, - {2,34}, {23,34}, {40,34}, {53,35}, {65,37}, {77,39}, {89,42}, {118,42}, {130,40}, {142,38}, {154,36}, {167,34}, {179,34}, {199,34}, {224,35}, - {0,45}, {24,45}, {44,45}, {57,46}, {69,48}, {81,51}, { 93,53}, {112,54}, {124,52}, {136,50}, {148,48}, {160,46}, {173,45}, {190,45}, {210,47}, - {0,55}, {18,55}, {33,55}, {56,57}, {77,61}, { 96,64}, {125,63}, {147,58}, {159,56}, {198,58}, {210,58}, {222,58} - }, - { - // RGB LED Index to Flag - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 - } -}; -#endif diff --git a/keyboards/keychron/k15_max/ansi_encoder/rgb/rules.mk b/keyboards/keychron/k15_max/ansi_encoder/rgb/rules.mk deleted file mode 100644 index 6e7633bfe0..0000000000 --- a/keyboards/keychron/k15_max/ansi_encoder/rgb/rules.mk +++ /dev/null @@ -1 +0,0 @@ -# This file intentionally left blank diff --git a/keyboards/keychron/k15_max/ansi_encoder/white/config.h b/keyboards/keychron/k15_max/ansi_encoder/white/config.h deleted file mode 100644 index e30b6f246e..0000000000 --- a/keyboards/keychron/k15_max/ansi_encoder/white/config.h +++ /dev/null @@ -1,54 +0,0 @@ -/* Copyright 2024 @ 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 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 - -#ifdef LED_MATRIX_ENABLE -/* LED matrix driver configuration */ -# define DRIVER_COUNT 1 -# define LED_MATRIX_LED_COUNT 89 - -# define SPI_SCK_PIN A5 -# define SPI_MISO_PIN A6 -# define SPI_MOSI_PIN A7 - -# define DRIVER_CS_PINS \ - { B8 } -# define SNLED23751_SPI_DIVISOR 16 -# define SPI_DRIVER SPID1 - -/* Use first 6 channels of LED driver */ -# define SNLED27351_PHASE_CHANNEL MSKPHASE_8CHANNEL - -/* Set LED driver current */ -# define SNLED27351_CURRENT_TUNE \ - { 0x3C, 0x3C, 0x3C, 0x3C, 0x3C, 0x3C, 0x3C, 0x3C, 0x3C, 0x3C, 0x3C, 0x3C } - -/* Set to infinit, which is use in USB mode by default */ -# define LED_MATRIX_TIMEOUT LED_MATRIX_TIMEOUT_INFINITE -/* Allow shutdown of led driver to save power */ -# define LED_MATRIX_DRIVER_SHUTDOWN_ENABLE -/* Turn off backlight on low brightness to save power */ -# define LED_MATRIX_BRIGHTNESS_TURN_OFF_VAL 48 - -/* Indications */ -# define DIM_CAPS_LOCK -# define CAPS_LOCK_INDEX 48 -# define LOW_BAT_IND_INDEX \ - { 81, 83 } - -# define LED_MATRIX_KEYPRESSES -#endif diff --git a/keyboards/keychron/k15_max/ansi_encoder/white/info.json b/keyboards/keychron/k15_max/ansi_encoder/white/info.json deleted file mode 100644 index dd6ad88864..0000000000 --- a/keyboards/keychron/k15_max/ansi_encoder/white/info.json +++ /dev/null @@ -1,30 +0,0 @@ -{ - "usb": { - "pid": "0x0AF3", - "device_version": "1.0.0" - }, - "features": { - "led_matrix": true - }, - "led_matrix": { - "driver": "snled27351_spi", - "sleep": true, - "animations": { - "none": true, - "solid": true, - "breathing": true, - "band_pinwheel": true, - "band_spiral": true, - "cycle_left_right": true, - "cycle_up_down": true, - "cycle_out_in": true, - "dual_beacon": true, - "solid_reactive_simple": true, - "solid_reactive_multiwide": true, - "solid_reactive_multinexus": true, - "solid_splash": true, - "wave_left_right": true, - "wave_up_down": true - } - } -} diff --git a/keyboards/keychron/k15_max/ansi_encoder/white/keymaps/default/keymap.c b/keyboards/keychron/k15_max/ansi_encoder/white/keymaps/default/keymap.c deleted file mode 100644 index cb8bc1b4d8..0000000000 --- a/keyboards/keychron/k15_max/ansi_encoder/white/keymaps/default/keymap.c +++ /dev/null @@ -1,77 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#include QMK_KEYBOARD_H -#include "keychron_common.h" - -enum layers{ - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN, -}; -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_ansi_90( - KC_MUTE, KC_ESC, BL_DOWN, BL_UP, KC_MCTRL, KC_LNPAD, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_INS, KC_DEL, - MC_1, KC_GRV, 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_PGUP, - MC_2, 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_PGDN, - MC_3, 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_HOME, - MC_4, KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, - MC_5, KC_LCTL, KC_LOPTN, KC_LCMMD, KC_SPC, MO(MAC_FN), KC_SPC, KC_RCMMD, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - - [MAC_FN] = LAYOUT_ansi_90( - BL_TOGG, _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, - _______, _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, BL_TOGG, BL_STEP, BL_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, BL_DOWN, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_END, - _______, _______, _______, _______, _______, _______, BAT_LVL, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - - [WIN_BASE] = LAYOUT_ansi_90( - KC_MUTE, KC_ESC, 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_INS, KC_DEL, - MC_1, KC_GRV, 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_PGUP, - MC_2, 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_PGDN, - MC_3, 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_HOME, - MC_4, KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, - MC_5, KC_LCTL, KC_LWIN, KC_LALT, KC_SPC, MO(WIN_FN), KC_SPC, KC_RALT, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - - [WIN_FN] = LAYOUT_ansi_90( - BL_TOGG, _______, BL_DOWN, BL_UP, KC_TASK, KC_FILE, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, - _______, _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, BL_TOGG, BL_STEP, BL_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, BL_DOWN, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_END, - _______, _______, _______, _______, _______, _______, BAT_LVL, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______) -}; - -#if defined(ENCODER_MAP_ENABLE) -const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][2] = { - [MAC_BASE] = { ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [MAC_FN] = { ENCODER_CCW_CW(BL_DOWN, BL_UP)}, - [WIN_BASE] = { ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [WIN_FN] = { ENCODER_CCW_CW(BL_DOWN, BL_UP)} -}; -#endif // ENCODER_MAP_ENABLE - -// clang-format on -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - if (!process_record_keychron_common(keycode, record)) { - return false; - } - return true; -} - diff --git a/keyboards/keychron/k15_max/ansi_encoder/white/keymaps/via/keymap.c b/keyboards/keychron/k15_max/ansi_encoder/white/keymaps/via/keymap.c deleted file mode 100644 index cb8bc1b4d8..0000000000 --- a/keyboards/keychron/k15_max/ansi_encoder/white/keymaps/via/keymap.c +++ /dev/null @@ -1,77 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#include QMK_KEYBOARD_H -#include "keychron_common.h" - -enum layers{ - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN, -}; -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_ansi_90( - KC_MUTE, KC_ESC, BL_DOWN, BL_UP, KC_MCTRL, KC_LNPAD, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_INS, KC_DEL, - MC_1, KC_GRV, 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_PGUP, - MC_2, 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_PGDN, - MC_3, 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_HOME, - MC_4, KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, - MC_5, KC_LCTL, KC_LOPTN, KC_LCMMD, KC_SPC, MO(MAC_FN), KC_SPC, KC_RCMMD, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - - [MAC_FN] = LAYOUT_ansi_90( - BL_TOGG, _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, - _______, _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, BL_TOGG, BL_STEP, BL_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, BL_DOWN, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_END, - _______, _______, _______, _______, _______, _______, BAT_LVL, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - - [WIN_BASE] = LAYOUT_ansi_90( - KC_MUTE, KC_ESC, 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_INS, KC_DEL, - MC_1, KC_GRV, 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_PGUP, - MC_2, 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_PGDN, - MC_3, 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_HOME, - MC_4, KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, - MC_5, KC_LCTL, KC_LWIN, KC_LALT, KC_SPC, MO(WIN_FN), KC_SPC, KC_RALT, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - - [WIN_FN] = LAYOUT_ansi_90( - BL_TOGG, _______, BL_DOWN, BL_UP, KC_TASK, KC_FILE, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, - _______, _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, BL_TOGG, BL_STEP, BL_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, BL_DOWN, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_END, - _______, _______, _______, _______, _______, _______, BAT_LVL, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______) -}; - -#if defined(ENCODER_MAP_ENABLE) -const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][2] = { - [MAC_BASE] = { ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [MAC_FN] = { ENCODER_CCW_CW(BL_DOWN, BL_UP)}, - [WIN_BASE] = { ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [WIN_FN] = { ENCODER_CCW_CW(BL_DOWN, BL_UP)} -}; -#endif // ENCODER_MAP_ENABLE - -// clang-format on -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - if (!process_record_keychron_common(keycode, record)) { - return false; - } - return true; -} - diff --git a/keyboards/keychron/k15_max/ansi_encoder/white/keymaps/via/rules.mk b/keyboards/keychron/k15_max/ansi_encoder/white/keymaps/via/rules.mk deleted file mode 100644 index 1e5b99807c..0000000000 --- a/keyboards/keychron/k15_max/ansi_encoder/white/keymaps/via/rules.mk +++ /dev/null @@ -1 +0,0 @@ -VIA_ENABLE = yes diff --git a/keyboards/keychron/k15_max/ansi_encoder/white/rules.mk b/keyboards/keychron/k15_max/ansi_encoder/white/rules.mk deleted file mode 100644 index 6e7633bfe0..0000000000 --- a/keyboards/keychron/k15_max/ansi_encoder/white/rules.mk +++ /dev/null @@ -1 +0,0 @@ -# This file intentionally left blank diff --git a/keyboards/keychron/k15_max/ansi_encoder/white/white.c b/keyboards/keychron/k15_max/ansi_encoder/white/white.c deleted file mode 100644 index e42f842daf..0000000000 --- a/keyboards/keychron/k15_max/ansi_encoder/white/white.c +++ /dev/null @@ -1,153 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#include "quantum.h" - -// clang-format off -#ifdef LED_MATRIX_ENABLE -const snled27351_led_t g_snled27351_leds[LED_MATRIX_LED_COUNT] = { -/* Refer to snled27351manual for these locations - * driver - * | LED address - * | | */ - {0, F_2}, - {0, F_3}, - {0, F_4}, - {0, F_5}, - {0, F_6}, - {0, F_7}, - {0, F_8}, - {0, F_9}, - {0, F_10}, - {0, F_11}, - {0, F_12}, - {0, F_13}, - {0, F_14}, - {0, F_15}, - {0, F_16}, - - {0, E_1}, - {0, E_2}, - {0, E_3}, - {0, E_4}, - {0, E_5}, - {0, E_6}, - {0, E_7}, - {0, E_8}, - {0, E_9}, - {0, E_10}, - {0, E_11}, - {0, E_12}, - {0, E_13}, - {0, E_14}, - {0, E_15}, - {0, E_16}, - - {0, D_1}, - {0, D_2}, - {0, D_3}, - {0, D_4}, - {0, D_5}, - {0, D_6}, - {0, D_7}, - {0, D_8}, - {0, D_9}, - {0, D_10}, - {0, D_11}, - {0, D_12}, - {0, D_13}, - {0, D_14}, - {0, D_15}, - {0, D_16}, - - {0, C_1}, - {0, C_2}, - {0, C_3}, - {0, C_4}, - {0, C_5}, - {0, C_6}, - {0, C_7}, - {0, C_9}, - {0, C_10}, - {0, C_11}, - {0, C_12}, - {0, C_13}, - {0, C_14}, - {0, C_15}, - {0, C_16}, - - {0, B_1}, - {0, B_3}, - {0, B_4}, - {0, B_5}, - {0, B_6}, - {0, B_7}, - {0, B_8}, - {0, B_9}, - {0, B_10}, - {0, B_11}, - {0, B_12}, - {0, B_13}, - {0, B_14}, - {0, B_15}, - {0, B_16}, - - {0, A_1}, - {0, A_2}, - {0, A_3}, - {0, A_4}, - {0, A_5}, - {0, A_7}, - {0, A_10}, - {0, A_11}, - {0, A_12}, - {0, A_14}, - {0, A_15}, - {0, A_16}, -}; - -#define __ NO_LED - -led_config_t g_led_config = { - { - // Key Matrix to LED Index - { __, 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, 40, 41, 42, 43, 44, 45, 46 }, - { 47, 48, 49, 50, 51, 52, __, 53, 54, 55, 56, 57, 58, 59, 60, 61 }, - { 62, 63, __, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76 }, - { 77, 78, 79, 80, __, 81, __, 82, __, 83, 84, 85, __, 86, 87, 88 }, - }, - { - // LED Index to Physical Position - {19, 0}, {34, 0}, {46, 0}, {59, 1}, {71, 3}, {86, 6}, { 98, 8}, {121, 8}, {133, 6}, {147, 3}, {159, 1}, {173, 0}, {185, 0}, {203, 0}, {220, 0}, - {5,14}, {24,14}, {36,14}, {48,13}, {61,15}, {73,17}, {85,20}, { 97,22}, {116,22}, {128,20}, {140,17}, {152,15}, {165,13}, {177,14}, {195,14}, {220,14}, - {4,24}, {24,24}, {40,24}, {53,24}, {65,27}, {77,29}, {89,31}, {113,33}, {125,31}, {137,29}, {149,26}, {161,24}, {174,24}, {186,24}, {201,24}, {222,24}, - {2,34}, {23,34}, {40,34}, {53,35}, {65,37}, {77,39}, {89,42}, {118,42}, {130,40}, {142,38}, {154,36}, {167,34}, {179,34}, {199,34}, {224,35}, - {0,45}, {24,45}, {44,45}, {57,46}, {69,48}, {81,51}, { 93,53}, {112,54}, {124,52}, {136,50}, {148,48}, {160,46}, {173,45}, {190,45}, {210,47}, - {0,55}, {18,55}, {33,55}, {56,57}, {77,61}, { 96,64}, {125,63}, {147,58}, {159,56}, {198,58}, {210,58}, {222,58} - }, - { - // LED Index to Flag - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 - } -}; -#endif diff --git a/keyboards/keychron/k15_max/board.h b/keyboards/keychron/k15_max/board.h deleted file mode 100644 index b200f82d61..0000000000 --- a/keyboards/keychron/k15_max/board.h +++ /dev/null @@ -1,226 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#pragma once - -#include_next - -// clang-format off - -/* Set GPIOA_SWDIO to INPUT and NOT FLOATING */ -#undef VAL_GPIOA_MODER -#define VAL_GPIOA_MODER (PIN_MODE_INPUT(GPIOA_BUTTON) | \ - PIN_MODE_INPUT(GPIOA_PIN1) | \ - PIN_MODE_INPUT(GPIOA_PIN2) | \ - PIN_MODE_INPUT(GPIOA_PIN3) | \ - PIN_MODE_ALTERNATE(GPIOA_CS43L22_LRCK) |\ - PIN_MODE_ALTERNATE(GPIOA_L3GD20_SCL) | \ - PIN_MODE_ALTERNATE(GPIOA_L3GD20_SD0) | \ - PIN_MODE_ALTERNATE(GPIOA_L3GD20_SDI) | \ - PIN_MODE_INPUT(GPIOA_PIN8) | \ - PIN_MODE_INPUT(GPIOA_VBUS_FS) | \ - PIN_MODE_ALTERNATE(GPIOA_OTG_FS_ID) | \ - PIN_MODE_ALTERNATE(GPIOA_OTG_FS_DM) | \ - PIN_MODE_ALTERNATE(GPIOA_OTG_FS_DP) | \ - PIN_MODE_INPUT(GPIOA_SWDIO) | \ - PIN_MODE_INPUT(GPIOA_SWCLK) | \ - PIN_MODE_INPUT(GPIOA_PIN15)) - -#undef VAL_GPIOA_PUPDR -#define VAL_GPIOA_PUPDR (PIN_PUPDR_FLOATING(GPIOA_BUTTON) | \ - PIN_PUPDR_PULLUP(GPIOA_PIN1) | \ - PIN_PUPDR_PULLUP(GPIOA_PIN2) | \ - PIN_PUPDR_PULLUP(GPIOA_PIN3) | \ - PIN_PUPDR_FLOATING(GPIOA_CS43L22_LRCK) |\ - PIN_PUPDR_FLOATING(GPIOA_L3GD20_SCL) | \ - PIN_PUPDR_PULLUP(GPIOA_L3GD20_SD0) | \ - PIN_PUPDR_PULLUP(GPIOA_L3GD20_SDI) | \ - PIN_PUPDR_PULLUP(GPIOA_PIN8) | \ - PIN_PUPDR_FLOATING(GPIOA_VBUS_FS) | \ - PIN_PUPDR_FLOATING(GPIOA_OTG_FS_ID) | \ - PIN_PUPDR_FLOATING(GPIOA_OTG_FS_DM) | \ - PIN_PUPDR_FLOATING(GPIOA_OTG_FS_DP) | \ - PIN_PUPDR_PULLDOWN(GPIOA_SWDIO) | \ - PIN_PUPDR_PULLUP(GPIOA_SWCLK) | \ - PIN_PUPDR_PULLUP(GPIOA_PIN15)) - -#undef VAL_GPIOB_MODER -#define VAL_GPIOB_MODER (PIN_MODE_INPUT(GPIOB_PIN0) | \ - PIN_MODE_INPUT(GPIOB_PIN1) | \ - PIN_MODE_INPUT(GPIOB_PIN2) | \ - PIN_MODE_INPUT(GPIOB_SWO) | \ - PIN_MODE_INPUT(GPIOB_PIN4) | \ - PIN_MODE_INPUT(GPIOB_PIN5) | \ - PIN_MODE_INPUT(GPIOB_LSM303DLHC_SCL) | \ - PIN_MODE_INPUT(GPIOB_PIN7) | \ - PIN_MODE_INPUT(GPIOB_PIN8) | \ - PIN_MODE_INPUT(GPIOB_LSM303DLHC_SDA) | \ - PIN_MODE_INPUT(GPIOB_MP45DT02_CLK_IN) |\ - PIN_MODE_INPUT(GPIOB_PIN11) | \ - PIN_MODE_INPUT(GPIOB_PIN12) | \ - PIN_MODE_INPUT(GPIOB_PIN13) | \ - PIN_MODE_INPUT(GPIOB_PIN14) | \ - PIN_MODE_INPUT(GPIOB_PIN15)) - -#undef VAL_GPIOB_PUPDR -#define VAL_GPIOB_PUPDR (PIN_PUPDR_PULLDOWN(GPIOB_PIN0) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN1) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN2) | \ - PIN_PUPDR_PULLDOWN(GPIOB_SWO) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN4) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN5) | \ - PIN_PUPDR_PULLDOWN(GPIOB_LSM303DLHC_SCL) |\ - PIN_PUPDR_PULLDOWN(GPIOB_PIN7) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN8) | \ - PIN_PUPDR_PULLDOWN(GPIOB_LSM303DLHC_SDA) |\ - PIN_PUPDR_PULLDOWN(GPIOB_MP45DT02_CLK_IN) |\ - PIN_PUPDR_PULLDOWN(GPIOB_PIN11) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN12) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN13) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN14) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN15)) - -#undef VAL_GPIOB_AFRL -#define VAL_GPIOB_AFRL (PIN_AFIO_AF(GPIOB_PIN0, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN1, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN2, 0U) | \ - PIN_AFIO_AF(GPIOB_SWO, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN4, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN5, 0U) | \ - PIN_AFIO_AF(GPIOB_LSM303DLHC_SCL, 0) | \ - PIN_AFIO_AF(GPIOB_PIN7, 0U)) - -#undef VAL_GPIOB_AFRH -#define VAL_GPIOB_AFRH (PIN_AFIO_AF(GPIOB_PIN8, 0U) | \ - PIN_AFIO_AF(GPIOB_LSM303DLHC_SDA, 0) | \ - PIN_AFIO_AF(GPIOB_MP45DT02_CLK_IN, 0U) |\ - PIN_AFIO_AF(GPIOB_PIN11, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN12, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN13, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN14, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN15, 0U)) - -/* C5 Need to be pulldown */ -#undef VAL_GPIOC_MODER -#define VAL_GPIOC_MODER (PIN_MODE_INPUT(GPIOC_OTG_FS_POWER_ON) |\ - PIN_MODE_INPUT(GPIOC_PIN1) | \ - PIN_MODE_INPUT(GPIOC_PIN2) | \ - PIN_MODE_INPUT(GPIOC_CS43L22_AIN4x) | \ - PIN_MODE_INPUT(GPIOC_PIN4) | \ - PIN_MODE_INPUT(GPIOC_PIN5) | \ - PIN_MODE_INPUT(GPIOC_PIN6) | \ - PIN_MODE_INPUT(GPIOC_CS43L22_MCLK) | \ - PIN_MODE_INPUT(GPIOC_PIN8) | \ - PIN_MODE_INPUT(GPIOC_PIN9) | \ - PIN_MODE_INPUT(GPIOC_CS43L22_SCLK) | \ - PIN_MODE_INPUT(GPIOC_PIN11) | \ - PIN_MODE_INPUT(GPIOC_CS43L22_SDIN) | \ - PIN_MODE_INPUT(GPIOC_PIN13) | \ - PIN_MODE_INPUT(GPIOC_OSC32_IN) | \ - PIN_MODE_INPUT(GPIOC_OSC32_OUT)) - -#undef VAL_GPIOC_PUPDR -#define VAL_GPIOC_PUPDR (PIN_PUPDR_PULLUP(GPIOC_OTG_FS_POWER_ON) |\ - PIN_PUPDR_PULLUP(GPIOC_PIN1) | \ - PIN_PUPDR_PULLUP(GPIOC_PIN2) | \ - PIN_PUPDR_PULLUP(GPIOC_CS43L22_AIN4x) |\ - PIN_PUPDR_PULLUP(GPIOC_PIN4) | \ - PIN_PUPDR_PULLDOWN(GPIOC_PIN5) | \ - PIN_PUPDR_PULLUP(GPIOC_PIN6) | \ - PIN_PUPDR_PULLUP(GPIOC_CS43L22_MCLK) | \ - PIN_PUPDR_PULLUP(GPIOC_PIN8) | \ - PIN_PUPDR_PULLUP(GPIOC_PIN9) | \ - PIN_PUPDR_PULLUP(GPIOC_CS43L22_SCLK) | \ - PIN_PUPDR_PULLUP(GPIOC_PIN11) | \ - PIN_PUPDR_PULLUP(GPIOC_CS43L22_SDIN) | \ - PIN_PUPDR_PULLUP(GPIOC_PIN13) | \ - PIN_PUPDR_PULLUP(GPIOC_OSC32_IN) | \ - PIN_PUPDR_PULLUP(GPIOC_OSC32_OUT)) - -/* Set all GPIOD pins to INPUT & PULLUP to avoid FLOATING */ -#undef VAL_GPIOD_MODER -#define VAL_GPIOD_MODER (PIN_MODE_INPUT(GPIOD_PIN0) | \ - PIN_MODE_INPUT(GPIOD_PIN1) | \ - PIN_MODE_INPUT(GPIOD_PIN2) | \ - PIN_MODE_INPUT(GPIOD_PIN3) | \ - PIN_MODE_INPUT(GPIOD_CS43L22_RESET) | \ - PIN_MODE_INPUT(GPIOD_OverCurrent) | \ - PIN_MODE_INPUT(GPIOD_PIN6) | \ - PIN_MODE_INPUT(GPIOD_PIN7) | \ - PIN_MODE_INPUT(GPIOD_PIN8) | \ - PIN_MODE_INPUT(GPIOD_PIN9) | \ - PIN_MODE_INPUT(GPIOD_PIN10) | \ - PIN_MODE_INPUT(GPIOD_PIN11) | \ - PIN_MODE_INPUT(GPIOD_LED4) | \ - PIN_MODE_INPUT(GPIOD_LED3) | \ - PIN_MODE_INPUT(GPIOD_LED5) | \ - PIN_MODE_INPUT(GPIOD_LED6)) - -#undef VAL_GPIOD_PUPDR -#define VAL_GPIOD_PUPDR (PIN_PUPDR_PULLUP(GPIOD_PIN0) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN1) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN2) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN3) | \ - PIN_PUPDR_PULLUP(GPIOD_CS43L22_RESET) |\ - PIN_PUPDR_PULLUP(GPIOD_OverCurrent) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN6) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN7) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN8) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN9) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN10) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN11) | \ - PIN_PUPDR_PULLUP(GPIOD_LED4) | \ - PIN_PUPDR_PULLUP(GPIOD_LED3) | \ - PIN_PUPDR_PULLUP(GPIOD_LED5) | \ - PIN_PUPDR_PULLUP(GPIOD_LED6)) - -/* Set all GPIOE pins to INPUT & PULLUP to avoid FLOATING */ -#undef VAL_GPIOE_MODER -#define VAL_GPIOE_MODER (PIN_MODE_INPUT(GPIOE_L3GD20_INT1) | \ - PIN_MODE_INPUT(GPIOE_L3GD20_INT2) | \ - PIN_MODE_INPUT(GPIOE_LSM303DLHC_DRDY) |\ - PIN_MODE_INPUT(GPIOE_L3GD20_CS) | \ - PIN_MODE_INPUT(GPIOE_LSM303DLHC_INT1) |\ - PIN_MODE_INPUT(GPIOE_LSM303DLHC_INT2) |\ - PIN_MODE_INPUT(GPIOE_PIN6) | \ - PIN_MODE_INPUT(GPIOE_PIN7) | \ - PIN_MODE_INPUT(GPIOE_PIN8) | \ - PIN_MODE_INPUT(GPIOE_PIN9) | \ - PIN_MODE_INPUT(GPIOE_PIN10) | \ - PIN_MODE_INPUT(GPIOE_PIN11) | \ - PIN_MODE_INPUT(GPIOE_PIN12) | \ - PIN_MODE_INPUT(GPIOE_PIN13) | \ - PIN_MODE_INPUT(GPIOE_PIN14) | \ - PIN_MODE_INPUT(GPIOE_PIN15)) - -#undef VAL_GPIOE_PUPDR -#define VAL_GPIOE_PUPDR (PIN_PUPDR_PULLUP(GPIOE_L3GD20_INT1) | \ - PIN_PUPDR_PULLUP(GPIOE_L3GD20_INT2) | \ - PIN_PUPDR_PULLUP(GPIOE_LSM303DLHC_DRDY) |\ - PIN_PUPDR_PULLUP(GPIOE_L3GD20_CS) | \ - PIN_PUPDR_PULLUP(GPIOE_LSM303DLHC_INT1) |\ - PIN_PUPDR_PULLUP(GPIOE_LSM303DLHC_INT2) |\ - PIN_PUPDR_PULLUP(GPIOE_PIN6) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN7) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN8) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN9) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN10) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN11) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN12) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN13) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN14) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN15)) - diff --git a/keyboards/keychron/k15_max/config.h b/keyboards/keychron/k15_max/config.h deleted file mode 100644 index 893d4f793a..0000000000 --- a/keyboards/keychron/k15_max/config.h +++ /dev/null @@ -1,89 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#pragma once -/* Encoder Configuration */ -#define ENCODER_DEFAULT_POS 0x3 -#define ENCODER_MAP_KEY_DELAY 2 - -/* Caps lock LED */ -#define LED_CAPS_LOCK_PIN A13 -#define LED_PIN_ON_STATE 1 - -#ifdef LK_WIRELESS_ENABLE -/* Hardware configuration */ -# define P2P4_MODE_SELECT_PIN A10 -# define BT_MODE_SELECT_PIN A9 - -# define LKBT51_RESET_PIN C4 -# define LKBT51_INT_INPUT_PIN B1 -# define BLUETOOTH_INT_OUTPUT_PIN A4 - -# define USB_POWER_SENSE_PIN B0 -# define USB_POWER_CONNECTED_LEVEL 0 - -# define BAT_CHARGING_PIN B13 -# define BAT_CHARGING_LEVEL 0 - -# define BAT_LOW_LED_PIN B12 -# define BAT_LOW_LED_PIN_ON_STATE 1 - -# define BT_HOST_DEVICES_COUNT 3 - -# if defined(RGB_MATRIX_ENABLE) || defined(LED_MATRIX_ENABLE) - -# define LED_DRIVER_SHUTDOWN_PIN B7 - -# define BT_HOST_LED_MATRIX_LIST \ - { 17, 18, 19 } - -# define P2P4G_HOST_LED_MATRIX_LIST \ - { 20 } - -# 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 - -/* Reinit LED driver on tranport changed */ -# define REINIT_LED_DRIVER 1 - -# endif - -/* Keep USB connection in blueooth mode */ -# define KEEP_USB_CONNECTION_IN_WIRELESS_MODE - -/* Enable bluetooth NKRO */ -# define WIRELESS_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 - -/* Factory test keys */ -#define FN_KEY_1 MO(1) -#define FN_KEY_2 MO(3) - -#define FN_BL_TRIG_KEY KC_END - -#define MATRIX_IO_DELAY 10 diff --git a/keyboards/keychron/k15_max/firmware/keychron_k15_max_ansi_encoder_rgb_via.bin b/keyboards/keychron/k15_max/firmware/keychron_k15_max_ansi_encoder_rgb_via.bin deleted file mode 100644 index 1ef634a23c..0000000000 Binary files a/keyboards/keychron/k15_max/firmware/keychron_k15_max_ansi_encoder_rgb_via.bin and /dev/null differ diff --git a/keyboards/keychron/k15_max/firmware/keychron_k15_max_ansi_encoder_white_via.bin b/keyboards/keychron/k15_max/firmware/keychron_k15_max_ansi_encoder_white_via.bin deleted file mode 100644 index bd8b5495aa..0000000000 Binary files a/keyboards/keychron/k15_max/firmware/keychron_k15_max_ansi_encoder_white_via.bin and /dev/null differ diff --git a/keyboards/keychron/k15_max/firmware/keychron_k15_max_iso_encoder_rgb_via.bin b/keyboards/keychron/k15_max/firmware/keychron_k15_max_iso_encoder_rgb_via.bin deleted file mode 100644 index e625b2cfea..0000000000 Binary files a/keyboards/keychron/k15_max/firmware/keychron_k15_max_iso_encoder_rgb_via.bin and /dev/null differ diff --git a/keyboards/keychron/k15_max/firmware/keychron_k15_max_iso_encoder_white_via.bin b/keyboards/keychron/k15_max/firmware/keychron_k15_max_iso_encoder_white_via.bin deleted file mode 100644 index 4098b408b1..0000000000 Binary files a/keyboards/keychron/k15_max/firmware/keychron_k15_max_iso_encoder_white_via.bin and /dev/null differ diff --git a/keyboards/keychron/k15_max/halconf.h b/keyboards/keychron/k15_max/halconf.h deleted file mode 100644 index 37bcc7c47b..0000000000 --- a/keyboards/keychron/k15_max/halconf.h +++ /dev/null @@ -1,31 +0,0 @@ -/* Copyright 2024 @ 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 - -#define _CHIBIOS_HAL_CONF_VER_8_0_ - -#define HAL_USE_SPI TRUE - -#ifdef LK_WIRELESS_ENABLE -# define HAL_USE_RTC TRUE -#endif - -#if defined(LK_WIRELESS_ENABLE) || defined(ENCODER_ENABLE) -# define PAL_USE_CALLBACKS TRUE -#endif - -#include_next diff --git a/keyboards/keychron/k15_max/info.json b/keyboards/keychron/k15_max/info.json deleted file mode 100644 index cacca530a7..0000000000 --- a/keyboards/keychron/k15_max/info.json +++ /dev/null @@ -1,351 +0,0 @@ -{ - "keyboard_name": "Keychron K15 Max", - "manufacturer": "Keychron", - "url": "https://github.com/Keychron", - "maintainer": "Chae", - "processor": "STM32F401", - "bootloader": "stm32-dfu", - "usb": { - "vid": "0x3434" - }, - "features": { - "bootmagic": true, - "extrakey": true, - "mousekey": true, - "dip_switch": true, - "encoder": true, - "encoder_map": true, - "nkro": true, - "raw": true, - "send_string": true - }, - "matrix_pins": { - "cols": ["C6", "C7", "C8", "A14", "A15", "C10", "C11", "C13", "C14", "C15", "C0", "C1", "C2", "C3", "A0", "A1"], - "rows": ["C12", "D2", "B3", "B4", "B5", "B6"] - }, - "diode_direction": "ROW2COL", - "bootmagic": { - "matrix": [0, 1] - }, - "encoder": { - "rotary": [ - { - "pin_a": "A8", - "pin_b": "C9" - } - ] - }, - "dip_switch" :{ - "pins": ["B14"] - }, - "eeprom": { - "wear_leveling": { - "driver": "embedded_flash", - "logical_size": 2048, - "backing_size": 4096 - } - }, - "layouts": { - "LAYOUT_ansi_90": { - "layout": [ - {"matrix": [0, 0], "x": 0, "y": 0}, - {"matrix": [0, 1], "x": 1.5, "y": 0}, - {"matrix": [0, 2], "x": 2.75, "y": 0}, - {"matrix": [0, 3], "x": 3.75, "y": 0}, - {"matrix": [0, 4], "x": 4.75, "y": 0}, - {"matrix": [0, 5], "x": 5.75, "y": 0.25}, - {"matrix": [0, 6], "x": 7, "y": 0.5}, - {"matrix": [0, 7], "x": 8, "y": 0.75}, - {"matrix": [0, 8], "x": 9.75, "y": 0.75}, - {"matrix": [0, 9], "x": 10.75, "y": 0.5}, - {"matrix": [0, 10], "x": 12, "y": 0.25}, - {"matrix": [0, 11], "x": 13, "y": 0}, - {"matrix": [0, 12], "x": 14, "y": 0}, - {"matrix": [0, 13], "x": 15, "y": 0}, - {"matrix": [0, 14], "x": 16.5, "y": 0}, - {"matrix": [0, 15], "x": 18, "y": 0}, - - {"matrix": [1, 0], "x": 0.5, "y": 1.25}, - {"matrix": [1, 1], "x": 2, "y": 1.25}, - {"matrix": [1, 2], "x": 3, "y": 1.25}, - {"matrix": [1, 3], "x": 4, "y": 1.25}, - {"matrix": [1, 4], "x": 5, "y": 1.5}, - {"matrix": [1, 5], "x": 6, "y": 1.75}, - {"matrix": [1, 6], "x": 7, "y": 2}, - {"matrix": [1, 7], "x": 8, "y": 2}, - {"matrix": [1, 8], "x": 9.5, "y": 2}, - {"matrix": [1, 9], "x": 10.5, "y": 2}, - {"matrix": [1, 10], "x": 11.5, "y": 1.75}, - {"matrix": [1, 11], "x": 12.5, "y": 1.5}, - {"matrix": [1, 12], "x": 13.5, "y": 1.25}, - {"matrix": [1, 13], "x": 14.5, "y": 1.25}, - {"matrix": [1, 14], "x": 15.5, "y": 1.25, "w": 2}, - {"matrix": [1, 15], "x": 18, "y": 1.25}, - - {"matrix": [2, 0], "x": 0.25, "y": 2.25}, - {"matrix": [2, 1], "x": 1.75, "y": 2.25, "w": 1.5}, - {"matrix": [2, 2], "x": 3.25, "y": 2.25}, - {"matrix": [2, 3], "x": 4.25, "y": 2.25}, - {"matrix": [2, 4], "x": 5.25, "y": 2.5}, - {"matrix": [2, 5], "x": 6.25, "y": 2.75}, - {"matrix": [2, 6], "x": 7.25, "y": 3}, - {"matrix": [2, 7], "x": 9.25, "y": 3.25}, - {"matrix": [2, 8], "x": 10.25, "y": 3}, - {"matrix": [2, 9], "x": 11.25, "y": 2.75}, - {"matrix": [2, 10], "x": 12.25, "y": 2.5}, - {"matrix": [2, 11], "x": 13, "y": 2.25}, - {"matrix": [2, 12], "x": 14.25, "y": 2.25}, - {"matrix": [2, 13], "x": 15.25, "y": 2.25}, - {"matrix": [2, 14], "x": 16.25, "y": 2.25, "w": 1.5}, - {"matrix": [2, 15], "x": 18, "y": 2.25}, - - {"matrix": [3, 0], "x": 0.25, "y": 3.25}, - {"matrix": [3, 1], "x": 1.5, "y": 3.25, "w": 1.75}, - {"matrix": [3, 2], "x": 3.25, "y": 3.25}, - {"matrix": [3, 3], "x": 4.25, "y": 3.5}, - {"matrix": [3, 4], "x": 5.25, "y": 3.5}, - {"matrix": [3, 5], "x": 6.25, "y": 3.75}, - {"matrix": [3, 7], "x": 7.25, "y": 4}, - {"matrix": [3, 8], "x": 9.75, "y": 4}, - {"matrix": [3, 9], "x": 10.5, "y": 4}, - {"matrix": [3, 10], "x": 11.5, "y": 3.75}, - {"matrix": [3, 11], "x": 12.5, "y": 3.5}, - {"matrix": [3, 12], "x": 13.75, "y": 3.25}, - {"matrix": [3, 13], "x": 14.75, "y": 3.25}, - {"matrix": [3, 14], "x": 15.75, "y": 3.25, "w": 2.25}, - {"matrix": [3, 15], "x": 18.25, "y": 3.25}, - - {"matrix": [4, 0], "x": 0, "y": 4.25}, - {"matrix": [4, 1], "x": 1.25, "y": 4.25, "w": 2.25}, - {"matrix": [4, 3], "x": 3.5, "y": 4.25}, - {"matrix": [4, 4], "x": 4.75, "y": 4.5}, - {"matrix": [4, 5], "x": 5.5, "y": 4.75}, - {"matrix": [4, 6], "x": 6.5, "y": 4.75}, - {"matrix": [4, 7], "x": 7.5, "y": 5}, - {"matrix": [4, 8], "x": 9, "y": 5.25}, - {"matrix": [4, 9], "x": 10, "y": 5}, - {"matrix": [4, 10], "x": 11, "y": 4.75}, - {"matrix": [4, 11], "x": 12, "y": 4.5}, - {"matrix": [4, 12], "x": 13, "y": 4.5}, - {"matrix": [4, 13], "x": 14, "y": 4.25}, - {"matrix": [4, 14], "x": 15, "y": 4.25, "w": 1.75}, - {"matrix": [4, 15], "x": 17.25, "y": 4.5}, - - {"matrix": [5, 0], "x": 0, "y": 5.25}, - {"matrix": [5, 1], "x": 1.25, "y": 5.25, "w": 1.25}, - {"matrix": [5, 2], "x": 2.5, "y": 5.25, "w": 1.25}, - {"matrix": [5, 3], "x": 4.5, "y": 5.5, "w": 1.25}, - {"matrix": [5, 5], "x": 5.75, "y": 5.75, "w": 2.25}, - {"matrix": [5, 7], "x": 7.75, "y": 6.25}, - {"matrix": [5, 9], "x": 9.25, "y": 6, "w": 2.75}, - {"matrix": [5, 10], "x": 12, "y": 5.75}, - {"matrix": [5, 11], "x": 13, "y": 5.5}, - {"matrix": [5, 13], "x": 16.25, "y": 5.5}, - {"matrix": [5, 14], "x": 17.25, "y": 5.5}, - {"matrix": [5, 15], "x": 18.25, "y": 5.5} - ] - }, - "LAYOUT_iso_91": { - "layout": [ - {"matrix": [0, 0], "x": 0, "y": 0}, - {"matrix": [0, 1], "x": 1.5, "y": 0}, - {"matrix": [0, 2], "x": 2.75, "y": 0}, - {"matrix": [0, 3], "x": 3.75, "y": 0}, - {"matrix": [0, 4], "x": 4.75, "y": 0}, - {"matrix": [0, 5], "x": 5.75, "y": 0.25}, - {"matrix": [0, 6], "x": 7, "y": 0.5}, - {"matrix": [0, 7], "x": 8, "y": 0.75}, - {"matrix": [0, 8], "x": 9.75, "y": 0.75}, - {"matrix": [0, 9], "x": 10.75, "y": 0.5}, - {"matrix": [0, 10], "x": 12, "y": 0.25}, - {"matrix": [0, 11], "x": 13, "y": 0}, - {"matrix": [0, 12], "x": 14, "y": 0}, - {"matrix": [0, 13], "x": 15, "y": 0}, - {"matrix": [0, 14], "x": 16.5, "y": 0}, - {"matrix": [0, 15], "x": 18, "y": 0}, - - {"matrix": [1, 0], "x": 0.5, "y": 1.25}, - {"matrix": [1, 1], "x": 2, "y": 1.25}, - {"matrix": [1, 2], "x": 3, "y": 1.25}, - {"matrix": [1, 3], "x": 4, "y": 1.25}, - {"matrix": [1, 4], "x": 5, "y": 1.5}, - {"matrix": [1, 5], "x": 6, "y": 1.75}, - {"matrix": [1, 6], "x": 7, "y": 2}, - {"matrix": [1, 7], "x": 8, "y": 2}, - {"matrix": [1, 8], "x": 9.5, "y": 2}, - {"matrix": [1, 9], "x": 10.5, "y": 2}, - {"matrix": [1, 10], "x": 11.5, "y": 1.75}, - {"matrix": [1, 11], "x": 12.5, "y": 1.5}, - {"matrix": [1, 12], "x": 13.5, "y": 1.25}, - {"matrix": [1, 13], "x": 14.5, "y": 1.25}, - {"matrix": [1, 14], "x": 15.5, "y": 1.25, "w": 2}, - {"matrix": [1, 15], "x": 18, "y": 1.25}, - - {"matrix": [2, 0], "x": 0.25, "y": 2.25}, - {"matrix": [2, 1], "x": 1.75, "y": 2.25, "w": 1.5}, - {"matrix": [2, 2], "x": 3.25, "y": 2.25}, - {"matrix": [2, 3], "x": 4.25, "y": 2.25}, - {"matrix": [2, 4], "x": 5.25, "y": 2.5}, - {"matrix": [2, 5], "x": 6.25, "y": 2.75}, - {"matrix": [2, 6], "x": 7.25, "y": 3}, - {"matrix": [2, 7], "x": 9.25, "y": 3.25}, - {"matrix": [2, 8], "x": 10.25, "y": 3}, - {"matrix": [2, 9], "x": 11.25, "y": 2.75}, - {"matrix": [2, 10], "x": 12.25, "y": 2.5}, - {"matrix": [2, 11], "x": 13, "y": 2.25}, - {"matrix": [2, 12], "x": 14.25, "y": 2.25}, - {"matrix": [2, 13], "x": 15.25, "y": 2.25}, - {"matrix": [2, 15], "x": 18, "y": 2.25}, - - {"matrix": [3, 0], "x": 0.25, "y": 3.25}, - {"matrix": [3, 1], "x": 1.5, "y": 3.25, "w": 1.75}, - {"matrix": [3, 2], "x": 3.25, "y": 3.25}, - {"matrix": [3, 3], "x": 4.25, "y": 3.5}, - {"matrix": [3, 4], "x": 5.25, "y": 3.5}, - {"matrix": [3, 5], "x": 6.25, "y": 3.75}, - {"matrix": [3, 7], "x": 7.25, "y": 4}, - {"matrix": [3, 8], "x": 9.75, "y": 4}, - {"matrix": [3, 9], "x": 10.5, "y": 4}, - {"matrix": [3, 10], "x": 11.5, "y": 3.75}, - {"matrix": [3, 11], "x": 12.5, "y": 3.5}, - {"matrix": [3, 12], "x": 13.75, "y": 3.25}, - {"matrix": [3, 13], "x": 14.75, "y": 3.25}, - {"matrix": [3, 14], "x": 15.75, "y": 3.25}, - {"matrix": [2, 14], "x": 16.25, "y": 2.25, "w": 1.25, "h": 2}, - {"matrix": [3, 15], "x": 18.25, "y": 3.25}, - - {"matrix": [4, 0], "x": 0, "y": 4.25}, - {"matrix": [4, 1], "x": 1.25, "y": 4.25, "w": 1.25}, - {"matrix": [4, 2], "x": 1.25, "y": 4.25}, - {"matrix": [4, 3], "x": 3.5, "y": 4.25}, - {"matrix": [4, 4], "x": 4.75, "y": 4.5}, - {"matrix": [4, 5], "x": 5.5, "y": 4.75}, - {"matrix": [4, 6], "x": 6.5, "y": 4.75}, - {"matrix": [4, 7], "x": 7.5, "y": 5}, - {"matrix": [4, 8], "x": 9, "y": 5.25}, - {"matrix": [4, 9], "x": 10, "y": 5}, - {"matrix": [4, 10], "x": 11, "y": 4.75}, - {"matrix": [4, 11], "x": 12, "y": 4.5}, - {"matrix": [4, 12], "x": 13, "y": 4.5}, - {"matrix": [4, 13], "x": 14, "y": 4.25}, - {"matrix": [4, 14], "x": 15, "y": 4.25, "w": 1.75}, - {"matrix": [4, 15], "x": 17.25, "y": 4.5}, - - {"matrix": [5, 0], "x": 0, "y": 5.25}, - {"matrix": [5, 1], "x": 1.25, "y": 5.25, "w": 1.25}, - {"matrix": [5, 2], "x": 2.5, "y": 5.25, "w": 1.25}, - {"matrix": [5, 3], "x": 4.5, "y": 5.5, "w": 1.25}, - {"matrix": [5, 5], "x": 5.75, "y": 5.75, "w": 2.25}, - {"matrix": [5, 7], "x": 7.75, "y": 6.25}, - {"matrix": [5, 9], "x": 9.25, "y": 6, "w": 2.75}, - {"matrix": [5, 10], "x": 12, "y": 5.75}, - {"matrix": [5, 11], "x": 13, "y": 5.5}, - {"matrix": [5, 13], "x": 16.25, "y": 5.5}, - {"matrix": [5, 14], "x": 17.25, "y": 5.5}, - {"matrix": [5, 15], "x": 18.25, "y": 5.5} - ] - }, - "LAYOUT_jis_93": { - "layout": [ - {"matrix": [0, 0], "x": 0, "y": 0}, - {"matrix": [0, 1], "x": 1.5, "y": 0}, - {"matrix": [0, 2], "x": 2.75, "y": 0}, - {"matrix": [0, 3], "x": 3.75, "y": 0}, - {"matrix": [0, 4], "x": 4.75, "y": 0}, - {"matrix": [0, 5], "x": 5.75, "y": 0.25}, - {"matrix": [0, 6], "x": 7, "y": 0.5}, - {"matrix": [0, 7], "x": 8, "y": 0.75}, - {"matrix": [0, 8], "x": 9.75, "y": 0.75}, - {"matrix": [0, 9], "x": 10.75, "y": 0.5}, - {"matrix": [0, 10], "x": 12, "y": 0.25}, - {"matrix": [0, 11], "x": 13, "y": 0}, - {"matrix": [0, 12], "x": 14, "y": 0}, - {"matrix": [0, 13], "x": 15, "y": 0}, - {"matrix": [0, 14], "x": 16.5, "y": 0}, - {"matrix": [0, 15], "x": 18, "y": 0}, - - {"matrix": [1, 0], "x": 0.5, "y": 1.25}, - {"matrix": [1, 1], "x": 2, "y": 1.25}, - {"matrix": [1, 2], "x": 3, "y": 1.25}, - {"matrix": [1, 3], "x": 4, "y": 1.25}, - {"matrix": [1, 4], "x": 5, "y": 1.5}, - {"matrix": [1, 5], "x": 6, "y": 1.75}, - {"matrix": [1, 6], "x": 7, "y": 2}, - {"matrix": [1, 7], "x": 8, "y": 2}, - {"matrix": [1, 8], "x": 9.5, "y": 2}, - {"matrix": [1, 9], "x": 10.5, "y": 2}, - {"matrix": [1, 10], "x": 11.5, "y": 1.75}, - {"matrix": [1, 11], "x": 12.5, "y": 1.5}, - {"matrix": [1, 12], "x": 13.5, "y": 1.25}, - {"matrix": [1, 13], "x": 14.5, "y": 1.25}, - {"matrix": [1, 14], "x": 15.5, "y": 1.25}, - {"matrix": [1, 15], "x": 16.5, "y": 1.25}, - {"matrix": [5, 7], "x": 16.5, "y": 1.25}, - - {"matrix": [2, 0], "x": 0.25, "y": 2.25}, - {"matrix": [2, 1], "x": 1.75, "y": 2.25, "w": 1.5}, - {"matrix": [2, 2], "x": 3.25, "y": 2.25}, - {"matrix": [2, 3], "x": 4.25, "y": 2.25}, - {"matrix": [2, 4], "x": 5.25, "y": 2.5}, - {"matrix": [2, 5], "x": 6.25, "y": 2.75}, - {"matrix": [2, 6], "x": 7.25, "y": 3}, - {"matrix": [2, 7], "x": 9.25, "y": 3.25}, - {"matrix": [2, 8], "x": 10.25, "y": 3}, - {"matrix": [2, 9], "x": 11.25, "y": 2.75}, - {"matrix": [2, 10], "x": 12.25, "y": 2.5}, - {"matrix": [2, 11], "x": 13, "y": 2.25}, - {"matrix": [2, 12], "x": 14.25, "y": 2.25}, - {"matrix": [2, 13], "x": 15.25, "y": 2.25}, - {"matrix": [2, 15], "x": 18, "y": 2.25}, - - {"matrix": [3, 0], "x": 0.25, "y": 3.25}, - {"matrix": [3, 1], "x": 1.5, "y": 3.25, "w": 1.75}, - {"matrix": [3, 2], "x": 3.25, "y": 3.25}, - {"matrix": [3, 3], "x": 4.25, "y": 3.5}, - {"matrix": [3, 4], "x": 5.25, "y": 3.5}, - {"matrix": [3, 5], "x": 6.25, "y": 3.75}, - {"matrix": [3, 7], "x": 7.25, "y": 4}, - {"matrix": [3, 8], "x": 9.75, "y": 4}, - {"matrix": [3, 9], "x": 10.5, "y": 4}, - {"matrix": [3, 10], "x": 11.5, "y": 3.75}, - {"matrix": [3, 11], "x": 12.5, "y": 3.5}, - {"matrix": [3, 12], "x": 13.75, "y": 3.25}, - {"matrix": [3, 13], "x": 14.75, "y": 3.25}, - {"matrix": [3, 14], "x": 15.75, "y": 3.25}, - {"matrix": [2, 14], "x": 16.25, "y": 2.25, "w": 1.25, "h": 2}, - {"matrix": [3, 15], "x": 18.25, "y": 3.25}, - - {"matrix": [4, 0], "x": 0, "y": 4.25, "w": 2}, - {"matrix": [4, 1], "x": 1.25, "y": 4.25}, - {"matrix": [4, 3], "x": 3.5, "y": 4.25}, - {"matrix": [4, 4], "x": 4.75, "y": 4.5}, - {"matrix": [4, 5], "x": 5.5, "y": 4.75}, - {"matrix": [4, 6], "x": 6.5, "y": 4.75}, - {"matrix": [4, 7], "x": 7.5, "y": 5}, - {"matrix": [4, 8], "x": 9, "y": 5.25}, - {"matrix": [4, 9], "x": 10, "y": 5}, - {"matrix": [4, 10], "x": 11, "y": 4.75}, - {"matrix": [4, 11], "x": 12, "y": 4.5}, - {"matrix": [4, 12], "x": 13, "y": 4.5}, - {"matrix": [4, 13], "x": 14, "y": 4.25}, - {"matrix": [4, 14], "x": 15, "y": 4.25}, - {"matrix": [4, 15], "x": 16, "y": 4.5}, - - {"matrix": [5, 0], "x": 0, "y": 5.25}, - {"matrix": [5, 1], "x": 1.25, "y": 5.25, "w": 1.25}, - {"matrix": [5, 2], "x": 2.5, "y": 5.25}, - {"matrix": [5, 3], "x": 3.5, "y": 5.5}, - {"matrix": [5, 4], "x": 4.5, "y": 5.5}, - {"matrix": [5, 5], "x": 5.5, "y": 5.75, "w": 2.25}, - {"matrix": [5, 8], "x": 18, "y": 1.25}, - {"matrix": [5, 9], "x": 9.25, "y": 6, "w": 2.75}, - {"matrix": [5, 10], "x": 12, "y": 5.75}, - {"matrix": [5, 11], "x": 13, "y": 5.5}, - {"matrix": [5, 12], "x": 17, "y": 4.5}, - {"matrix": [5, 13], "x": 16.25, "y": 5.5}, - {"matrix": [5, 14], "x": 17.25, "y": 5.5}, - {"matrix": [5, 15], "x": 18.25, "y": 5.5} - ] - } - } -} diff --git a/keyboards/keychron/k15_max/iso_encoder/rgb/config.h b/keyboards/keychron/k15_max/iso_encoder/rgb/config.h deleted file mode 100644 index 81c1900fde..0000000000 --- a/keyboards/keychron/k15_max/iso_encoder/rgb/config.h +++ /dev/null @@ -1,55 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#pragma once - -#ifdef RGB_MATRIX_ENABLE -/* RGB Matrix driver configuration */ -# define DRIVER_COUNT 2 -# define RGB_MATRIX_LED_COUNT 90 - -# define SPI_SCK_PIN A5 -# define SPI_MISO_PIN A6 -# define SPI_MOSI_PIN A7 - -# define DRIVER_CS_PINS \ - { B8, B9 } -# define SNLED23751_SPI_DIVISOR 16 -# define SPI_DRIVER SPID1 - -/* Scan phase of led driver set as MSKPHASE_9CHANNEL(defined as 0x03 in snled27351.h) */ -# define SNLED27351_PHASE_CHANNEL MSKPHASE_12CHANNEL - -/* Set LED driver current */ -# define SNLED27351_CURRENT_TUNE \ - { 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18 } - -/* Set to infinit, which is use in USB mode by default */ -# define RGB_MATRIX_TIMEOUT RGB_MATRIX_TIMEOUT_INFINITE -/* Allow shutdown of led driver to save power */ -# define RGB_MATRIX_DRIVER_SHUTDOWN_ENABLE -/* Turn off backlight on low brightness to save power */ -# define RGB_MATRIX_BRIGHTNESS_TURN_OFF_VAL 48 - -/* Indications */ -# define DIM_CAPS_LOCK -# define CAPS_LOCK_INDEX 48 -# define LOW_BAT_IND_INDEX \ - { 82, 84 } - -# define RGB_MATRIX_KEYPRESSES -# define RGB_MATRIX_FRAMEBUFFER_EFFECTS -#endif diff --git a/keyboards/keychron/k15_max/iso_encoder/rgb/info.json b/keyboards/keychron/k15_max/iso_encoder/rgb/info.json deleted file mode 100644 index 25e2acc16d..0000000000 --- a/keyboards/keychron/k15_max/iso_encoder/rgb/info.json +++ /dev/null @@ -1,36 +0,0 @@ -{ - "usb": { - "pid": "0x0AF1", - "device_version": "1.0.0" - }, - "features": { - "rgb_matrix": true - }, - "rgb_matrix": { - "driver": "snled27351_spi", - "sleep": true, - "animations": { - "band_spiral_val": true, - "breathing": true, - "cycle_all": true, - "cycle_left_right": true, - "cycle_out_in": true, - "cycle_out_in_dual": true, - "cycle_pinwheel": true, - "cycle_spiral": true, - "cycle_up_down": true, - "digital_rain": true, - "dual_beacon": true, - "jellybean_raindrops": true, - "pixel_rain": true, - "rainbow_beacon": true, - "rainbow_moving_chevron": true, - "solid_reactive_multinexus": true, - "solid_reactive_multiwide": true, - "solid_reactive_simple": true, - "solid_splash": true, - "splash": true, - "typing_heatmap": true - } - } -} diff --git a/keyboards/keychron/k15_max/iso_encoder/rgb/keymaps/default/keymap.c b/keyboards/keychron/k15_max/iso_encoder/rgb/keymaps/default/keymap.c deleted file mode 100644 index 27e5a5cc92..0000000000 --- a/keyboards/keychron/k15_max/iso_encoder/rgb/keymaps/default/keymap.c +++ /dev/null @@ -1,76 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#include QMK_KEYBOARD_H -#include "keychron_common.h" - -enum layers { - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN, -}; -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_iso_91( - KC_MUTE, KC_ESC, KC_BRID, KC_BRIU, KC_MCTRL, KC_LNPAD, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_INS, KC_DEL, - MC_1, KC_GRV, 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_PGUP, - MC_2, 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_PGDN, - MC_3, 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_NUHS, KC_ENT, KC_HOME, - MC_4, KC_LSFT, KC_NUBS, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, - MC_5, KC_LCTL, KC_LOPTN, KC_LCMMD, KC_SPC, MO(MAC_FN), KC_SPC, KC_RCMMD, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - - [MAC_FN] = LAYOUT_iso_91( - RGB_TOG, _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, - _______, _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, KC_END, - _______, _______, _______, _______, _______, _______, _______, BAT_LVL, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - - [WIN_BASE] = LAYOUT_iso_91( - KC_MUTE, KC_ESC, 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_INS, KC_DEL, - MC_1, KC_GRV, 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_PGUP, - MC_2, 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_PGDN, - MC_3, 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_NUHS, KC_ENT, KC_HOME, - MC_4, KC_LSFT, KC_NUBS, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, - MC_5, KC_LCTL, KC_LWIN, KC_LALT, KC_SPC, MO(WIN_FN), KC_SPC, KC_RALT, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - - [WIN_FN] = LAYOUT_iso_91( - RGB_TOG, _______, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, - _______, _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, KC_END, - _______, _______, _______, _______, _______, _______, _______, BAT_LVL, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______) -}; - -#if defined(ENCODER_MAP_ENABLE) - const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][2] = { - [MAC_BASE] = { ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [MAC_FN] = { ENCODER_CCW_CW(RGB_VAD, RGB_VAI)}, - [WIN_BASE] = { ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [WIN_FN] = { ENCODER_CCW_CW(RGB_VAD, RGB_VAI)}, - }; -#endif // ENCODER_MAP_ENABLE - -// clang-format on -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - if (!process_record_keychron_common(keycode, record)) { - return false; - } - return true; -} diff --git a/keyboards/keychron/k15_max/iso_encoder/rgb/keymaps/via/keymap.c b/keyboards/keychron/k15_max/iso_encoder/rgb/keymaps/via/keymap.c deleted file mode 100644 index 27e5a5cc92..0000000000 --- a/keyboards/keychron/k15_max/iso_encoder/rgb/keymaps/via/keymap.c +++ /dev/null @@ -1,76 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#include QMK_KEYBOARD_H -#include "keychron_common.h" - -enum layers { - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN, -}; -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_iso_91( - KC_MUTE, KC_ESC, KC_BRID, KC_BRIU, KC_MCTRL, KC_LNPAD, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_INS, KC_DEL, - MC_1, KC_GRV, 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_PGUP, - MC_2, 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_PGDN, - MC_3, 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_NUHS, KC_ENT, KC_HOME, - MC_4, KC_LSFT, KC_NUBS, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, - MC_5, KC_LCTL, KC_LOPTN, KC_LCMMD, KC_SPC, MO(MAC_FN), KC_SPC, KC_RCMMD, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - - [MAC_FN] = LAYOUT_iso_91( - RGB_TOG, _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, - _______, _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, KC_END, - _______, _______, _______, _______, _______, _______, _______, BAT_LVL, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - - [WIN_BASE] = LAYOUT_iso_91( - KC_MUTE, KC_ESC, 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_INS, KC_DEL, - MC_1, KC_GRV, 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_PGUP, - MC_2, 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_PGDN, - MC_3, 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_NUHS, KC_ENT, KC_HOME, - MC_4, KC_LSFT, KC_NUBS, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, - MC_5, KC_LCTL, KC_LWIN, KC_LALT, KC_SPC, MO(WIN_FN), KC_SPC, KC_RALT, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - - [WIN_FN] = LAYOUT_iso_91( - RGB_TOG, _______, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, - _______, _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, KC_END, - _______, _______, _______, _______, _______, _______, _______, BAT_LVL, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______) -}; - -#if defined(ENCODER_MAP_ENABLE) - const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][2] = { - [MAC_BASE] = { ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [MAC_FN] = { ENCODER_CCW_CW(RGB_VAD, RGB_VAI)}, - [WIN_BASE] = { ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [WIN_FN] = { ENCODER_CCW_CW(RGB_VAD, RGB_VAI)}, - }; -#endif // ENCODER_MAP_ENABLE - -// clang-format on -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - if (!process_record_keychron_common(keycode, record)) { - return false; - } - return true; -} diff --git a/keyboards/keychron/k15_max/iso_encoder/rgb/keymaps/via/rules.mk b/keyboards/keychron/k15_max/iso_encoder/rgb/keymaps/via/rules.mk deleted file mode 100644 index 1e5b99807c..0000000000 --- a/keyboards/keychron/k15_max/iso_encoder/rgb/keymaps/via/rules.mk +++ /dev/null @@ -1 +0,0 @@ -VIA_ENABLE = yes diff --git a/keyboards/keychron/k15_max/iso_encoder/rgb/rgb.c b/keyboards/keychron/k15_max/iso_encoder/rgb/rgb.c deleted file mode 100644 index 39682bbabd..0000000000 --- a/keyboards/keychron/k15_max/iso_encoder/rgb/rgb.c +++ /dev/null @@ -1,156 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#include "quantum.h" - -// clang-format off -#ifdef RGB_MATRIX_ENABLE -const snled27351_led_t PROGMEM g_snled27351_leds[RGB_MATRIX_LED_COUNT] = { -/* Refer to snled27351manual for these locations - * driver - * | R location - * | | G location - * | | | B location - * | | | | */ - {0, I_2, G_2, H_2}, - {0, I_3, G_3, H_3}, - {0, I_4, G_4, H_4}, - {0, I_5, G_5, H_5}, - {0, I_6, G_6, H_6}, - {0, I_7, G_7, H_7}, - {0, I_8, G_8, H_8}, - {0, I_9, G_9, H_9}, - {0, I_10, G_10, H_10}, - {0, I_11, G_11, H_11}, - {0, I_12, G_12, H_12}, - {0, I_13, G_13, H_13}, - {0, I_14, G_14, H_14}, - {0, I_15, G_15, H_15}, - {0, I_16, G_16, H_16}, - - {0, C_1, A_1, B_1}, - {0, C_2, A_2, B_2}, - {0, C_3, A_3, B_3}, - {0, C_4, A_4, B_4}, - {0, C_5, A_5, B_5}, - {0, C_6, A_6, B_6}, - {0, C_7, A_7, B_7}, - {0, C_8, A_8, B_8}, - {0, C_9, A_9, B_9}, - {0, C_10, A_10, B_10}, - {0, C_11, A_11, B_11}, - {0, C_12, A_12, B_12}, - {0, C_13, A_13, B_13}, - {0, C_14, A_14, B_14}, - {0, C_15, A_15, B_15}, - {0, C_16, A_16, B_16}, - - {0, F_1, D_1, E_1}, - {0, F_2, D_2, E_2}, - {0, F_3, D_3, E_3}, - {0, F_4, D_4, E_4}, - {0, F_5, D_5, E_5}, - {0, F_6, D_6, E_6}, - {0, F_7, D_7, E_7}, - {0, F_8, D_8, E_8}, - {0, F_9, D_9, E_9}, - {0, F_10, D_10, E_10}, - {0, F_11, D_11, E_11}, - {0, F_12, D_12, E_12}, - {0, F_13, D_13, E_13}, - {0, F_14, D_14, E_14}, - {0, F_15, D_15, E_15}, - {0, F_16, D_16, E_16}, - - {1, C_16, A_16, B_16}, - {1, C_15, A_15, B_15}, - {1, C_14, A_14, B_14}, - {1, C_13, A_13, B_13}, - {1, C_12, A_12, B_12}, - {1, C_11, A_11, B_11}, - {1, C_10, A_10, B_10}, - {1, C_8, A_8, B_8}, - {1, C_7, A_7, B_7}, - {1, C_6, A_6, B_6}, - {1, C_5, A_5, B_5}, - {1, C_4, A_4, B_4}, - {1, C_3, A_3, B_3}, - {1, C_2, A_2, B_2}, - {1, C_1, A_1, B_1}, - - {1, I_16, G_16, H_16}, - {1, I_15, G_15, H_15}, - {1, I_14, G_14, H_14}, - {1, I_13, G_13, H_13}, - {1, I_12, G_12, H_12}, - {1, I_11, G_11, H_11}, - {1, I_10, G_10, H_10}, - {1, I_9, G_9, H_9}, - {1, I_8, G_8, H_8}, - {1, I_7, G_7, H_7}, - {1, I_6, G_6, H_6}, - {1, I_5, G_5, H_5}, - {1, I_4, G_4, H_4}, - {1, I_3, G_3, H_3}, - {1, I_2, G_2, H_2}, - {1, I_1, G_1, H_1}, - - {1, F_16, D_16, E_16}, - {1, F_15, D_15, E_15}, - {1, F_14, D_14, E_14}, - {1, F_13, D_13, E_13}, - {1, F_12, D_12, E_12}, - {1, F_10, D_10, E_10}, - {1, F_7, D_7, E_7}, - {1, F_6, D_6, E_6}, - {1, F_5, D_5, E_5}, - {1, F_3, D_3, E_3}, - {1, F_2, D_2, E_2}, - {1, F_1, D_1, E_1}, -}; - -#define __ NO_LED - -led_config_t g_led_config = { - { - // Key Matrix to LED Index - { __, 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, 40, 41, 42, 43, 44, 45, 46 }, - { 47, 48, 49, 50, 51, 52, __, 53, 54, 55, 56, 57, 58, 59, 60, 61 }, - { 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77 }, - { 78, 79, 80, 81, __, 82, __, 83, __, 84, 85, 86, __, 87, 88, 89 }, - }, - { - // LED Index to Physical Position - {19, 0}, {34, 0}, {46, 0}, {59, 1}, {71, 3}, {86, 6}, { 98, 8}, {121, 8}, {133, 6}, {147, 3}, {159, 1}, {173, 0}, {185, 0}, {203, 0}, {220, 0}, - {5,14}, {24,14}, {36,14}, {48,13}, {61,15}, {73,17}, {85,20}, { 97,22}, {116,22}, {128,20}, {140,17}, {152,15}, {165,13}, {177,14}, {195,14}, {220,14}, - {4,24}, {24,24}, {40,24}, {53,24}, {65,27}, {77,29}, {89,31}, {113,33}, {125,31}, {137,29}, {149,26}, {161,24}, {174,24}, {186,24}, {201,29}, {222,24}, - {2,34}, {23,34}, {40,34}, {53,35}, {65,37}, {77,39}, {89,42}, {118,42}, {130,40}, {142,38}, {154,36}, {167,34}, {179,34}, {192,34}, {224,35}, - {0,45}, {18,45}, {33,45}, {44,45}, {57,46}, {69,48}, {81,51}, { 93,53}, {112,54}, {124,52}, {136,50}, {148,48}, {160,46}, {173,45}, {190,45}, {210,47}, - {0,55}, {18,55}, {33,55}, {56,57}, {77,61}, { 96,64}, {125,63}, {147,58}, {159,56}, {198,58}, {210,58}, {222,58} - }, - { - // RGB LED Index to Flag - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 - } -}; -#endif diff --git a/keyboards/keychron/k15_max/iso_encoder/rgb/rules.mk b/keyboards/keychron/k15_max/iso_encoder/rgb/rules.mk deleted file mode 100644 index 6e7633bfe0..0000000000 --- a/keyboards/keychron/k15_max/iso_encoder/rgb/rules.mk +++ /dev/null @@ -1 +0,0 @@ -# This file intentionally left blank diff --git a/keyboards/keychron/k15_max/iso_encoder/white/config.h b/keyboards/keychron/k15_max/iso_encoder/white/config.h deleted file mode 100644 index 592307f8f7..0000000000 --- a/keyboards/keychron/k15_max/iso_encoder/white/config.h +++ /dev/null @@ -1,54 +0,0 @@ -/* Copyright 2024 @ 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 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 - -#ifdef LED_MATRIX_ENABLE -/* LED matrix driver configuration */ -# define DRIVER_COUNT 1 -# define LED_MATRIX_LED_COUNT 90 - -# define SPI_SCK_PIN A5 -# define SPI_MISO_PIN A6 -# define SPI_MOSI_PIN A7 - -# define DRIVER_CS_PINS \ - { B8 } -# define SNLED23751_SPI_DIVISOR 16 -# define SPI_DRIVER SPID1 - -/* Use first 6 channels of LED driver */ -# define SNLED27351_PHASE_CHANNEL MSKPHASE_8CHANNEL - -/* Set LED driver current */ -# define SNLED27351_CURRENT_TUNE \ - { 0x3C, 0x3C, 0x3C, 0x3C, 0x3C, 0x3C, 0x3C, 0x3C, 0x3C, 0x3C, 0x3C, 0x3C } - -/* Set to infinit, which is use in USB mode by default */ -# define LED_MATRIX_TIMEOUT LED_MATRIX_TIMEOUT_INFINITE -/* Allow shutdown of led driver to save power */ -# define LED_MATRIX_DRIVER_SHUTDOWN_ENABLE -/* Turn off backlight on low brightness to save power */ -# define LED_MATRIX_BRIGHTNESS_TURN_OFF_VAL 48 - -/* Indications */ -# define DIM_CAPS_LOCK -# define CAPS_LOCK_INDEX 48 -# define LOW_BAT_IND_INDEX \ - { 82, 84 } - -# define LED_MATRIX_KEYPRESSES -#endif diff --git a/keyboards/keychron/k15_max/iso_encoder/white/info.json b/keyboards/keychron/k15_max/iso_encoder/white/info.json deleted file mode 100644 index d1546b2c16..0000000000 --- a/keyboards/keychron/k15_max/iso_encoder/white/info.json +++ /dev/null @@ -1,30 +0,0 @@ -{ - "usb": { - "pid": "0x0AF4", - "device_version": "1.0.0" - }, - "features": { - "led_matrix": true - }, - "led_matrix": { - "driver": "snled27351_spi", - "sleep": true, - "animations": { - "none": true, - "solid": true, - "breathing": true, - "band_pinwheel": true, - "band_spiral": true, - "cycle_left_right": true, - "cycle_up_down": true, - "cycle_out_in": true, - "dual_beacon": true, - "solid_reactive_simple": true, - "solid_reactive_multiwide": true, - "solid_reactive_multinexus": true, - "solid_splash": true, - "wave_left_right": true, - "wave_up_down": true - } - } -} diff --git a/keyboards/keychron/k15_max/iso_encoder/white/keymaps/default/keymap.c b/keyboards/keychron/k15_max/iso_encoder/white/keymaps/default/keymap.c deleted file mode 100644 index d4647b2da1..0000000000 --- a/keyboards/keychron/k15_max/iso_encoder/white/keymaps/default/keymap.c +++ /dev/null @@ -1,77 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#include QMK_KEYBOARD_H -#include "keychron_common.h" - -enum layers { - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN, -}; - -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_iso_91( - KC_MUTE, KC_ESC, BL_DOWN, BL_UP, KC_MCTRL, KC_LNPAD, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_INS, KC_DEL, - MC_1, KC_GRV, 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_PGUP, - MC_2, 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_PGDN, - MC_3, 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_NUHS, KC_ENT, KC_HOME, - MC_4, KC_LSFT, KC_NUBS, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, - MC_5, KC_LCTL, KC_LOPTN, KC_LCMMD, KC_SPC, MO(MAC_FN), KC_SPC, KC_RCMMD, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - - [MAC_FN] = LAYOUT_iso_91( - BL_TOGG, _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, - _______, _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, BL_TOGG, BL_STEP, BL_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, BL_DOWN, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_END, - _______, _______, _______, _______, _______, _______, _______, BAT_LVL, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - - [WIN_BASE] = LAYOUT_iso_91( - KC_MUTE, KC_ESC, 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_INS, KC_DEL, - MC_1, KC_GRV, 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_PGUP, - MC_2, 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_PGDN, - MC_3, 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_NUHS, KC_ENT, KC_HOME, - MC_4, KC_LSFT, KC_NUBS, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, - MC_5, KC_LCTL, KC_LWIN, KC_LALT, KC_SPC, MO(WIN_FN), KC_SPC, KC_RALT, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - - [WIN_FN] = LAYOUT_iso_91( - BL_TOGG, _______, BL_DOWN, BL_UP, KC_TASK, KC_FILE, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, - _______, _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, BL_TOGG, BL_STEP, BL_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, BL_DOWN, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_END, - _______, _______, _______, _______, _______, _______, _______, BAT_LVL, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______) -}; - -#if defined(ENCODER_MAP_ENABLE) -const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][2] = { - [MAC_BASE] = { ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [MAC_FN] = { ENCODER_CCW_CW(BL_DOWN, BL_UP)}, - [WIN_BASE] = { ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [WIN_FN] = { ENCODER_CCW_CW(BL_DOWN, BL_UP)} -}; -#endif // ENCODER_MAP_ENABLE - -// clang-format on -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - if (!process_record_keychron_common(keycode, record)) { - return false; - } - return true; -} diff --git a/keyboards/keychron/k15_max/iso_encoder/white/keymaps/via/keymap.c b/keyboards/keychron/k15_max/iso_encoder/white/keymaps/via/keymap.c deleted file mode 100644 index d4647b2da1..0000000000 --- a/keyboards/keychron/k15_max/iso_encoder/white/keymaps/via/keymap.c +++ /dev/null @@ -1,77 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#include QMK_KEYBOARD_H -#include "keychron_common.h" - -enum layers { - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN, -}; - -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_iso_91( - KC_MUTE, KC_ESC, BL_DOWN, BL_UP, KC_MCTRL, KC_LNPAD, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_INS, KC_DEL, - MC_1, KC_GRV, 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_PGUP, - MC_2, 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_PGDN, - MC_3, 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_NUHS, KC_ENT, KC_HOME, - MC_4, KC_LSFT, KC_NUBS, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, - MC_5, KC_LCTL, KC_LOPTN, KC_LCMMD, KC_SPC, MO(MAC_FN), KC_SPC, KC_RCMMD, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - - [MAC_FN] = LAYOUT_iso_91( - BL_TOGG, _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, - _______, _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, BL_TOGG, BL_STEP, BL_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, BL_DOWN, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_END, - _______, _______, _______, _______, _______, _______, _______, BAT_LVL, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - - [WIN_BASE] = LAYOUT_iso_91( - KC_MUTE, KC_ESC, 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_INS, KC_DEL, - MC_1, KC_GRV, 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_PGUP, - MC_2, 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_PGDN, - MC_3, 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_NUHS, KC_ENT, KC_HOME, - MC_4, KC_LSFT, KC_NUBS, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, - MC_5, KC_LCTL, KC_LWIN, KC_LALT, KC_SPC, MO(WIN_FN), KC_SPC, KC_RALT, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - - [WIN_FN] = LAYOUT_iso_91( - BL_TOGG, _______, BL_DOWN, BL_UP, KC_TASK, KC_FILE, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, - _______, _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, BL_TOGG, BL_STEP, BL_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, BL_DOWN, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_END, - _______, _______, _______, _______, _______, _______, _______, BAT_LVL, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______) -}; - -#if defined(ENCODER_MAP_ENABLE) -const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][2] = { - [MAC_BASE] = { ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [MAC_FN] = { ENCODER_CCW_CW(BL_DOWN, BL_UP)}, - [WIN_BASE] = { ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [WIN_FN] = { ENCODER_CCW_CW(BL_DOWN, BL_UP)} -}; -#endif // ENCODER_MAP_ENABLE - -// clang-format on -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - if (!process_record_keychron_common(keycode, record)) { - return false; - } - return true; -} diff --git a/keyboards/keychron/k15_max/iso_encoder/white/keymaps/via/rules.mk b/keyboards/keychron/k15_max/iso_encoder/white/keymaps/via/rules.mk deleted file mode 100644 index 1e5b99807c..0000000000 --- a/keyboards/keychron/k15_max/iso_encoder/white/keymaps/via/rules.mk +++ /dev/null @@ -1 +0,0 @@ -VIA_ENABLE = yes diff --git a/keyboards/keychron/k15_max/iso_encoder/white/rules.mk b/keyboards/keychron/k15_max/iso_encoder/white/rules.mk deleted file mode 100644 index 6e7633bfe0..0000000000 --- a/keyboards/keychron/k15_max/iso_encoder/white/rules.mk +++ /dev/null @@ -1 +0,0 @@ -# This file intentionally left blank diff --git a/keyboards/keychron/k15_max/iso_encoder/white/white.c b/keyboards/keychron/k15_max/iso_encoder/white/white.c deleted file mode 100644 index 93dd63a035..0000000000 --- a/keyboards/keychron/k15_max/iso_encoder/white/white.c +++ /dev/null @@ -1,154 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#include "quantum.h" - -// clang-format off -#ifdef LED_MATRIX_ENABLE -const snled27351_led_t g_snled27351_leds[LED_MATRIX_LED_COUNT] = { -/* Refer to snled27351manual for these locations - * driver - * | LED address - * | | */ - {0, F_2}, - {0, F_3}, - {0, F_4}, - {0, F_5}, - {0, F_6}, - {0, F_7}, - {0, F_8}, - {0, F_9}, - {0, F_10}, - {0, F_11}, - {0, F_12}, - {0, F_13}, - {0, F_14}, - {0, F_15}, - {0, F_16}, - - {0, E_1}, - {0, E_2}, - {0, E_3}, - {0, E_4}, - {0, E_5}, - {0, E_6}, - {0, E_7}, - {0, E_8}, - {0, E_9}, - {0, E_10}, - {0, E_11}, - {0, E_12}, - {0, E_13}, - {0, E_14}, - {0, E_15}, - {0, E_16}, - - {0, D_1}, - {0, D_2}, - {0, D_3}, - {0, D_4}, - {0, D_5}, - {0, D_6}, - {0, D_7}, - {0, D_8}, - {0, D_9}, - {0, D_10}, - {0, D_11}, - {0, D_12}, - {0, D_13}, - {0, D_14}, - {0, D_15}, - {0, D_16}, - - {0, C_1}, - {0, C_2}, - {0, C_3}, - {0, C_4}, - {0, C_5}, - {0, C_6}, - {0, C_7}, - {0, C_9}, - {0, C_10}, - {0, C_11}, - {0, C_12}, - {0, C_13}, - {0, C_14}, - {0, C_15}, - {0, C_16}, - - {0, B_1}, - {0, B_2}, - {0, B_3}, - {0, B_4}, - {0, B_5}, - {0, B_6}, - {0, B_7}, - {0, B_8}, - {0, B_9}, - {0, B_10}, - {0, B_11}, - {0, B_12}, - {0, B_13}, - {0, B_14}, - {0, B_15}, - {0, B_16}, - - {0, A_1}, - {0, A_2}, - {0, A_3}, - {0, A_4}, - {0, A_5}, - {0, A_7}, - {0, A_10}, - {0, A_11}, - {0, A_12}, - {0, A_14}, - {0, A_15}, - {0, A_16}, -}; - -#define __ NO_LED - -led_config_t g_led_config = { - { - // Key Matrix to LED Index - { __, 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, 40, 41, 42, 43, 44, 45, 46 }, - { 47, 48, 49, 50, 51, 52, __, 53, 54, 55, 56, 57, 58, 59, 60, 61 }, - { 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77 }, - { 78, 79, 80, 81, __, 82, __, 83, __, 84, 85, 86, __, 87, 88, 89 }, - }, - { - // LED Index to Physical Position - {19, 0}, {34, 0}, {46, 0}, {59, 1}, {71, 3}, {86, 6}, { 98, 8}, {121, 8}, {133, 6}, {147, 3}, {159, 1}, {173, 0}, {185, 0}, {203, 0}, {220, 0}, - {5,14}, {24,14}, {36,14}, {48,13}, {61,15}, {73,17}, {85,20}, { 97,22}, {116,22}, {128,20}, {140,17}, {152,15}, {165,13}, {177,14}, {195,14}, {220,14}, - {4,24}, {24,24}, {40,24}, {53,24}, {65,27}, {77,29}, {89,31}, {113,33}, {125,31}, {137,29}, {149,26}, {161,24}, {174,24}, {186,24}, {201,29}, {222,24}, - {2,34}, {23,34}, {40,34}, {53,35}, {65,37}, {77,39}, {89,42}, {118,42}, {130,40}, {142,38}, {154,36}, {167,34}, {179,34}, {192,34}, {224,35}, - {0,45}, {18,45}, {33,45}, {44,45}, {57,46}, {69,48}, {81,51}, { 93,53}, {112,54}, {124,52}, {136,50}, {148,48}, {160,46}, {173,45}, {190,45}, {210,47}, - {0,55}, {18,55}, {33,55}, {56,57}, {77,61}, { 96,64}, {125,63}, {147,58}, {159,56}, {198,58}, {210,58}, {222,58} - }, - { - // LED LED Index to Flag - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 - } -}; -#endif diff --git a/keyboards/keychron/k15_max/k15_max.c b/keyboards/keychron/k15_max/k15_max.c deleted file mode 100644 index e635c7862b..0000000000 --- a/keyboards/keychron/k15_max/k15_max.c +++ /dev/null @@ -1,70 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#include "quantum.h" -#include "keychron_task.h" -#include "keychron_common.h" -#ifdef FACTORY_TEST_ENABLE -# include "factory_test.h" -#endif -#ifdef LK_WIRELESS_ENABLE -# include "lkbt51.h" -# include "wireless.h" -# include "transport.h" -# include "keychron_wireless_common.h" -# include "battery.h" -#endif - -bool dip_switch_update_kb(uint8_t index, bool active) { - if (index == 0) { - default_layer_set(1UL << (active ? 0 : 2)); - } - dip_switch_update_user(index, active); - - return true; -} - -void keyboard_post_init_kb(void) { -#ifdef LK_WIRELESS_ENABLE - palSetLineMode(P2P4_MODE_SELECT_PIN, PAL_MODE_INPUT); - palSetLineMode(BT_MODE_SELECT_PIN, PAL_MODE_INPUT); - - writePin(BAT_LOW_LED_PIN, BAT_LOW_LED_PIN_ON_STATE); - lkbt51_init(false); - wireless_init(); -#endif - -#ifdef ENCODER_ENABLE - encoder_cb_init(); -#endif - - keyboard_post_init_user(); -} - -bool keychron_task_kb(void) { - if (factory_reset_indicating()) { - writePin(LED_CAPS_LOCK_PIN, !LED_PIN_ON_STATE); - } else { - if (host_keyboard_led_state().caps_lock) writePin(LED_CAPS_LOCK_PIN, LED_PIN_ON_STATE); - } - return true; -} - -#ifdef LK_WIRELESS_ENABLE -bool lpm_is_kb_idle(void) { - return !factory_reset_indicating(); -} -#endif diff --git a/keyboards/keychron/k15_max/mcuconf.h b/keyboards/keychron/k15_max/mcuconf.h deleted file mode 100644 index 89294ee64b..0000000000 --- a/keyboards/keychron/k15_max/mcuconf.h +++ /dev/null @@ -1,37 +0,0 @@ -/* Copyright 2024 @ 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 - -#include_next - -#undef STM32_HSECLK -#define STM32_HSECLK 16000000 - -#undef STM32_PLLM_VALUE -#define STM32_PLLM_VALUE 8 - -#undef STM32_PLLN_VALUE -#define STM32_PLLN_VALUE 96 - -#undef STM32_PLLP_VALUE -#define STM32_PLLP_VALUE 4 - -#undef STM32_PLLQ_VALUE -#define STM32_PLLQ_VALUE 4 - -#undef STM32_SPI_USE_SPI1 -#define STM32_SPI_USE_SPI1 TRUE diff --git a/keyboards/keychron/k15_max/readme.md b/keyboards/keychron/k15_max/readme.md deleted file mode 100644 index 6c45eac5ef..0000000000 --- a/keyboards/keychron/k15_max/readme.md +++ /dev/null @@ -1,24 +0,0 @@ -# Keychron K15 Max - -![Keychron K15 Max](https://cdn.shopify.com/s/files/1/0059/0630/1017/files/K15-Max-page7.jpg?v=1717487401) - -A customizable 87 keys TKL keyboard. - -* Keyboard Maintainer: [Keychron](https://github.com/keychron) -* Hardware Supported: Keychron K15 Max -* Hardware Availability: [Keychron K15 Max QMK/VIA Wireless Custom Mechanical Keyboard](https://www.keychron.com/products/keychron-k15-max-alice-layout-qmk-wireless-custom-mechanical-keyboard?srsltid=AfmBOopYgEhFIVG8J1zdO92O-GHx2nnAQfw_LTJHs5GntK29gFbKy5b5) - -Make example for this keyboard (after setting up your build environment): - - make keychron/k15_max/ansi/rgb:default - make keychron/k15_max/ansi/white:default - - -Flashing example for this keyboard: - - make keychron/k15_max/ansi/rgb:default:flash - make keychron/k15_max/ansi/white:default:flash - -**Reset Key**: Toggle mode switch to "Cable", hold down the *Esc* key or reset button underneath space bar while connecting the USB cable, - -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). diff --git a/keyboards/keychron/k15_max/rules.mk b/keyboards/keychron/k15_max/rules.mk deleted file mode 100644 index 4eaf6820bc..0000000000 --- a/keyboards/keychron/k15_max/rules.mk +++ /dev/null @@ -1,4 +0,0 @@ -include keyboards/keychron/common/wireless/wireless.mk -include keyboards/keychron/common/keychron_common.mk - -VPATH += $(TOP_DIR)/keyboards/keychron diff --git a/keyboards/keychron/k15_max/via_json/k15_max_ansi_knob_rgb.json b/keyboards/keychron/k15_max/via_json/k15_max_ansi_knob_rgb.json deleted file mode 100644 index 9d50cbf0ea..0000000000 --- a/keyboards/keychron/k15_max/via_json/k15_max_ansi_knob_rgb.json +++ /dev/null @@ -1,397 +0,0 @@ -{ - "name": "Keychron K15 Max ANSI Knob RGB", - "vendorId": "0x3434", - "productId": "0x0AF0", - "keycodes": ["qmk_lighting"], - "menus": [ - { - "label": "Lighting", - "content": [ - { - "label": "Backlight", - "content": [ - { - "label": "Brightness", - "type": "range", - "options": [0, 255], - "content": ["id_qmk_rgb_matrix_brightness", 3, 1] - }, - { - "label": "Effect", - "type": "dropdown", - "content": ["id_qmk_rgb_matrix_effect", 3, 2], - "options": [ - ["None", 0], - ["Solid Color", 1], - ["Breathing", 2], - ["Band Spiral Val", 3], - ["Cycle All", 4], - ["Cycle Left Right", 5], - ["Cycle Up Down", 6], - ["Rainbow Moving Chevron", 7], - ["Cycle Out In", 8], - ["Cycle Out In Dual", 9], - ["Cycle Pinwheel", 10], - ["Cycle Spiral", 11], - ["Dual Beacon", 12], - ["Rainbow Beacon", 13], - ["Jellybean Raindrops", 14], - ["Pixel Rain", 15], - ["Typing Heatmap", 16], - ["Digital Rain", 17], - ["Reactive Simple", 18], - ["Reactive Multiwide", 19], - ["Reactive Multinexus", 20], - ["Splash", 21], - ["Solid Splash", 22] - ] - }, - { - "showIf": "{id_qmk_rgb_matrix_effect} > 1", - "label": "Effect Speed", - "type": "range", - "options": [0, 255], - "content": ["id_qmk_rgb_matrix_effect_speed", 3, 3] - }, - { - "showIf": "{id_qmk_rgb_matrix_effect} != 0 && ( {id_qmk_rgb_matrix_effect} < 4 || {id_qmk_rgb_matrix_effect} == 18 || ({id_qmk_rgb_matrix_effect} > 17 && {id_qmk_rgb_matrix_effect} != 21) ) ", - "label": "Color", - "type": "color", - "content": ["id_qmk_rgb_matrix_color", 3, 4] - } - ] - } - ] - } - ], - "customKeycodes": [ - {"name": "Left Option", "title": "Left Option", "shortName": "LOpt"}, - {"name": "Right Option", "title": "Right Option", "shortName": "ROpt"}, - {"name": "Left Cmd", "title": "Left Command", "shortName": "LCmd"}, - {"name": "Right Cmd", "title": "Right Command", "shortName": "RCmd"}, - {"name": "Misson Control", "title": "Misson Control in Mac", "shortName": "MCtl"}, - {"name": "Lanuch Pad", "title": "Lanuch Pad in Windows", "shortName": "LPad"}, - {"name": "Task View", "title": "Task View in Windows", "shortName": "Task"}, - {"name": "File Explorer", "title": "File Explorer in Windows", "shortName": "File"}, - {"name": "Screen shot", "title": "Screenshot in macOS", "shortName": "SShot"}, - {"name": "Cortana", "title": "Cortana in Windows", "shortName": "Cortana"}, - {"name": "Siri", "title": "Siri in macOS", "shortName": "Siri"}, - {"name": "Bluetooth Host 1", "title": "Bluetooth Host 1", "shortName": "BTH1"}, - {"name": "Bluetooth Host 2", "title": "Bluetooth Host 2", "shortName": "BTH2"}, - {"name": "Bluetooth Host 3", "title": "Bluetooth Host 3", "shortName": "BTH3"}, - {"name": "2.4G", "title": "2.4G", "shortName": "2.4G"}, - {"name": "Battery Level", "title": "Show battery level", "shortName": "Batt"} - ], - "matrix": {"rows": 6, "cols": 16}, - "layouts": { - "keymap": [ - [ - { - "c": "#aaaaaa", - "x": 0.5 - }, - "0,0\n\n\n\n\n\n\n\n\ne0", - { - "x": 0.5, - "c": "#777777" - }, - "0,1\nESC", - { - "x": 0.25, - "c": "#cccccc" - }, - "0,2", - "0,3", - { - "x": 9.35 - }, - "0,12", - "0,13", - { - "c": "#aaaaaa", - "x": 0.25 - }, - "0,14", - { - "x": 0.25 - }, - "0,15" - ], - [ - { - "y": 0.25, - "x": 0.75 - }, - "1,0", - { - "x": 0.5 - }, - "1,1", - { - "c": "#cccccc" - }, - "1,2", - "1,3", - { - "x": 8.65 - }, - "1,12", - "1,13", - { - "c": "#aaaaaa", - "w": 2 - }, - "1,14", - { - "x": 0.6 - }, - "1,15" - ], - [ - { - "x": 0.5 - }, - "2,0", - { - "x": 0.5, - "w": 1.5 - }, - "2,1", - { - "c": "#cccccc" - }, - "2,2", - { - "x": 9.9 - }, - "2,12", - "2,13", - { - "c": "#aaaaaa", - "w": 1.75 - }, - "2,14", - { - "x": 0.5 - }, - "2,15" - ], - [ - { - "x": 0.25 - }, - "3,0", - { - "x": 0.5, - "w": 1.75 - }, - "3,1", - { - "c": "#cccccc" - }, - "3,2", - { - "x": 9.6 - }, - "3,12", - "3,13", - { - "c": "#777777", - "w": 2.25 - }, - "3,14", - { - "x": 0.5, - "c": "#aaaaaa" - }, - "3,15" - ], - [ - "4,0", - { - "x": 0.5, - "w": 2.25 - }, - "4,1", - { - "c": "#cccccc" - }, - "4,3", - { - "x": 9.95 - }, - "4,13", - { - "c": "#aaaaaa", - "w": 1.75 - }, - "4,14" - ], - [ - { - "y": -0.75, - "x": 17.7, - "c": "#cccccc" - }, - "4,15" - ], - [ - { - "c": "#aaaaaa", - "y": -0.25 - }, - "5,0", - { - "x": 0.5, - "w": 1.25 - }, - "5,1", - { - "w": 1.25 - }, - "5,2" - ], - [ - { - "y": -0.75, - "x": 16.7, - "c": "#cccccc" - }, - "5,13", - "5,14", - "5,15" - ], - [ - { - "r": 6, - "y": -7.05, - "x": 5.4 - }, - "0,4", - "0,5", - { - "c": "#aaaaaa", - "x": 0.25 - }, - "0,6", - "0,7" - ], - [ - { - "y": 0.25, - "x": 5.55, - "c": "#cccccc" - }, - "1,4", - "1,5", - "1,6", - "1,7" - ], - [ - { - "x": 4.9 - }, - "2,3", - "2,4", - "2,5", - "2,6" - ], - [ - { - "x": 5 - }, - "3,3", - "3,4", - "3,5", - "3,7" - ], - [ - { - "x": 5.35 - }, - "4,4", - "4,5", - "4,6", - "4,7" - ], - [ - { - "x": 5.35, - "c": "#aaaaaa", - "w": 1.25 - }, - "5,3", - { - "w": 2.25 - }, - "5,5", - "5,7" - ], - [ - { - "r": -6, - "y": -4.25, - "x": 10.05 - }, - "0,8", - "0,9", - { - "c": "#cccccc", - "x": 0.25 - }, - "0,10", - "0,11" - ], - [ - { - "y": 0.25, - "x": 9.4, - "c": "#cccccc" - }, - "1,8", - "1,9", - "1,10", - "1,11" - ], - [ - { - "x": 8.9 - }, - "2,7", - "2,8", - "2,9", - "2,10", - "2,11" - ], - [ - { - "x": 9.4 - }, - "3,8", - "3,9", - "3,10", - "3,11" - ], - [ - { - "x": 8.85 - }, - "4,8", - "4,9", - "4,10", - "4,11", - "4,12" - ], - [ - { - "c": "#aaaaaa", - "x": 8.85, - "w": 2.55 - }, - "5,9", - "5,10", - "5,11" - ] - ] - } -} diff --git a/keyboards/keychron/k15_max/via_json/k15_max_ansi_knob_white.json b/keyboards/keychron/k15_max/via_json/k15_max_ansi_knob_white.json deleted file mode 100644 index 84e3f49c46..0000000000 --- a/keyboards/keychron/k15_max/via_json/k15_max_ansi_knob_white.json +++ /dev/null @@ -1,336 +0,0 @@ -{ - "name": "Keychron K15 Max ANSI Knob", - "vendorId": "0x3434", - "productId": "0x0AF3", - "keycodes": ["qmk_lighting"], - "customKeycodes": [ - {"name": "Left Option", "title": "Left Option", "shortName": "LOpt"}, - {"name": "Right Option", "title": "Right Option", "shortName": "ROpt"}, - {"name": "Left Cmd", "title": "Left Command", "shortName": "LCmd"}, - {"name": "Right Cmd", "title": "Right Command", "shortName": "RCmd"}, - {"name": "Misson Control", "title": "Misson Control in Mac", "shortName": "MCtl"}, - {"name": "Lanuch Pad", "title": "Lanuch Pad in Windows", "shortName": "LPad"}, - {"name": "Task View", "title": "Task View in Windows", "shortName": "Task"}, - {"name": "File Explorer", "title": "File Explorer in Windows", "shortName": "File"}, - {"name": "Screen shot", "title": "Screenshot in macOS", "shortName": "SShot"}, - {"name": "Cortana", "title": "Cortana in Windows", "shortName": "Cortana"}, - {"name": "Siri", "title": "Siri in macOS", "shortName": "Siri"}, - {"name": "Bluetooth Host 1", "title": "Bluetooth Host 1", "shortName": "BTH1"}, - {"name": "Bluetooth Host 2", "title": "Bluetooth Host 2", "shortName": "BTH2"}, - {"name": "Bluetooth Host 3", "title": "Bluetooth Host 3", "shortName": "BTH3"}, - {"name": "2.4G", "title": "2.4G", "shortName": "2.4G"}, - {"name": "Battery Level", "title": "Show battery level", "shortName": "Batt"} - ], - "matrix": {"rows": 6, "cols": 16}, - "layouts": { - "keymap": [ - [ - { - "c": "#aaaaaa", - "x": 0.5 - }, - "0,0\n\n\n\n\n\n\n\n\ne0", - { - "x": 0.5, - "c": "#777777" - }, - "0,1\nESC", - { - "x": 0.25, - "c": "#cccccc" - }, - "0,2", - "0,3", - { - "x": 9.35 - }, - "0,12", - "0,13", - { - "c": "#aaaaaa", - "x": 0.25 - }, - "0,14", - { - "x": 0.25 - }, - "0,15" - ], - [ - { - "y": 0.25, - "x": 0.75 - }, - "1,0", - { - "x": 0.5 - }, - "1,1", - { - "c": "#cccccc" - }, - "1,2", - "1,3", - { - "x": 8.65 - }, - "1,12", - "1,13", - { - "c": "#aaaaaa", - "w": 2 - }, - "1,14", - { - "x": 0.6 - }, - "1,15" - ], - [ - { - "x": 0.5 - }, - "2,0", - { - "x": 0.5, - "w": 1.5 - }, - "2,1", - { - "c": "#cccccc" - }, - "2,2", - { - "x": 9.9 - }, - "2,12", - "2,13", - { - "c": "#aaaaaa", - "w": 1.75 - }, - "2,14", - { - "x": 0.5 - }, - "2,15" - ], - [ - { - "x": 0.25 - }, - "3,0", - { - "x": 0.5, - "w": 1.75 - }, - "3,1", - { - "c": "#cccccc" - }, - "3,2", - { - "x": 9.6 - }, - "3,12", - "3,13", - { - "c": "#777777", - "w": 2.25 - }, - "3,14", - { - "x": 0.5, - "c": "#aaaaaa" - }, - "3,15" - ], - [ - "4,0", - { - "x": 0.5, - "w": 2.25 - }, - "4,1", - { - "c": "#cccccc" - }, - "4,3", - { - "x": 9.95 - }, - "4,13", - { - "c": "#aaaaaa", - "w": 1.75 - }, - "4,14" - ], - [ - { - "y": -0.75, - "x": 17.7, - "c": "#cccccc" - }, - "4,15" - ], - [ - { - "c": "#aaaaaa", - "y": -0.25 - }, - "5,0", - { - "x": 0.5, - "w": 1.25 - }, - "5,1", - { - "w": 1.25 - }, - "5,2" - ], - [ - { - "y": -0.75, - "x": 16.7, - "c": "#cccccc" - }, - "5,13", - "5,14", - "5,15" - ], - [ - { - "r": 6, - "y": -7.05, - "x": 5.4 - }, - "0,4", - "0,5", - { - "c": "#aaaaaa", - "x": 0.25 - }, - "0,6", - "0,7" - ], - [ - { - "y": 0.25, - "x": 5.55, - "c": "#cccccc" - }, - "1,4", - "1,5", - "1,6", - "1,7" - ], - [ - { - "x": 4.9 - }, - "2,3", - "2,4", - "2,5", - "2,6" - ], - [ - { - "x": 5 - }, - "3,3", - "3,4", - "3,5", - "3,7" - ], - [ - { - "x": 5.35 - }, - "4,4", - "4,5", - "4,6", - "4,7" - ], - [ - { - "x": 5.35, - "c": "#aaaaaa", - "w": 1.25 - }, - "5,3", - { - "w": 2.25 - }, - "5,5", - "5,7" - ], - [ - { - "r": -6, - "y": -4.25, - "x": 10.05 - }, - "0,8", - "0,9", - { - "c": "#cccccc", - "x": 0.25 - }, - "0,10", - "0,11" - ], - [ - { - "y": 0.25, - "x": 9.4, - "c": "#cccccc" - }, - "1,8", - "1,9", - "1,10", - "1,11" - ], - [ - { - "x": 8.9 - }, - "2,7", - "2,8", - "2,9", - "2,10", - "2,11" - ], - [ - { - "x": 9.4 - }, - "3,8", - "3,9", - "3,10", - "3,11" - ], - [ - { - "x": 8.85 - }, - "4,8", - "4,9", - "4,10", - "4,11", - "4,12" - ], - [ - { - "c": "#aaaaaa", - "x": 8.85, - "w": 2.55 - }, - "5,9", - "5,10", - "5,11" - ] - ] - } -} diff --git a/keyboards/keychron/k15_max/via_json/k15_max_iso_knob_rgb.json b/keyboards/keychron/k15_max/via_json/k15_max_iso_knob_rgb.json deleted file mode 100644 index a09e9fc28e..0000000000 --- a/keyboards/keychron/k15_max/via_json/k15_max_iso_knob_rgb.json +++ /dev/null @@ -1,400 +0,0 @@ -{ - "name": "Keychron K15 Max ISO Knob RGB", - "vendorId": "0x3434", - "productId": "0x0AF1", - "keycodes": ["qmk_lighting"], - "menus": [ - { - "label": "Lighting", - "content": [ - { - "label": "Backlight", - "content": [ - { - "label": "Brightness", - "type": "range", - "options": [0, 255], - "content": ["id_qmk_rgb_matrix_brightness", 3, 1] - }, - { - "label": "Effect", - "type": "dropdown", - "content": ["id_qmk_rgb_matrix_effect", 3, 2], - "options": [ - ["None", 0], - ["Solid Color", 1], - ["Breathing", 2], - ["Band Spiral Val", 3], - ["Cycle All", 4], - ["Cycle Left Right", 5], - ["Cycle Up Down", 6], - ["Rainbow Moving Chevron", 7], - ["Cycle Out In", 8], - ["Cycle Out In Dual", 9], - ["Cycle Pinwheel", 10], - ["Cycle Spiral", 11], - ["Dual Beacon", 12], - ["Rainbow Beacon", 13], - ["Jellybean Raindrops", 14], - ["Pixel Rain", 15], - ["Typing Heatmap", 16], - ["Digital Rain", 17], - ["Reactive Simple", 18], - ["Reactive Multiwide", 19], - ["Reactive Multinexus", 20], - ["Splash", 21], - ["Solid Splash", 22] - ] - }, - { - "showIf": "{id_qmk_rgb_matrix_effect} > 1", - "label": "Effect Speed", - "type": "range", - "options": [0, 255], - "content": ["id_qmk_rgb_matrix_effect_speed", 3, 3] - }, - { - "showIf": "{id_qmk_rgb_matrix_effect} != 0 && ( {id_qmk_rgb_matrix_effect} < 4 || {id_qmk_rgb_matrix_effect} == 18 || ({id_qmk_rgb_matrix_effect} > 17 && {id_qmk_rgb_matrix_effect} != 21) ) ", - "label": "Color", - "type": "color", - "content": ["id_qmk_rgb_matrix_color", 3, 4] - } - ] - } - ] - } - ], - "customKeycodes": [ - {"name": "Left Option", "title": "Left Option", "shortName": "LOpt"}, - {"name": "Right Option", "title": "Right Option", "shortName": "ROpt"}, - {"name": "Left Cmd", "title": "Left Command", "shortName": "LCmd"}, - {"name": "Right Cmd", "title": "Right Command", "shortName": "RCmd"}, - {"name": "Misson Control", "title": "Misson Control in Mac", "shortName": "MCtl"}, - {"name": "Lanuch Pad", "title": "Lanuch Pad in Windows", "shortName": "LPad"}, - {"name": "Task View", "title": "Task View in Windows", "shortName": "Task"}, - {"name": "File Explorer", "title": "File Explorer in Windows", "shortName": "File"}, - {"name": "Screen shot", "title": "Screenshot in macOS", "shortName": "SShot"}, - {"name": "Cortana", "title": "Cortana in Windows", "shortName": "Cortana"}, - {"name": "Siri", "title": "Siri in macOS", "shortName": "Siri"}, - {"name": "Bluetooth Host 1", "title": "Bluetooth Host 1", "shortName": "BTH1"}, - {"name": "Bluetooth Host 2", "title": "Bluetooth Host 2", "shortName": "BTH2"}, - {"name": "Bluetooth Host 3", "title": "Bluetooth Host 3", "shortName": "BTH3"}, - {"name": "2.4G", "title": "2.4G", "shortName": "2.4G"}, - {"name": "Battery Level", "title": "Show battery level", "shortName": "Batt"} - ], - "matrix": {"rows": 6, "cols": 16}, - "layouts": { - "keymap": [ - [ - { - "c": "#aaaaaa", - "x": 0.5 - }, - "0,0\n\n\n\n\n\n\n\n\ne0", - { - "x": 0.5, - "c": "#777777" - }, - "0,1\nESC", - { - "x": 0.25, - "c": "#cccccc" - }, - "0,2", - "0,3", - { - "x": 9.35 - }, - "0,12", - "0,13", - { - "c": "#aaaaaa", - "x": 0.25 - }, - "0,14", - { - "x": 0.25 - }, - "0,15" - ], - [ - { - "y": 0.25, - "x": 0.75 - }, - "1,0", - { - "x": 0.5 - }, - "1,1", - { - "c": "#cccccc" - }, - "1,2", - "1,3", - { - "x": 8.65 - }, - "1,12", - "1,13", - { - "c": "#aaaaaa", - "w": 2 - }, - "1,14", - { - "x": 0.6 - }, - "1,15" - ], - [ - { - "x": 0.5 - }, - "2,0", - { - "x": 0.5, - "w": 1.5 - }, - "2,1", - { - "c": "#cccccc" - }, - "2,2", - { - "x": 10.35 - }, - "2,12", - "2,13", - { - "x": 0.25, - "c": "#777777", - "w": 1.25, - "h": 2, - "w2": 1.5, - "h2": 1, - "x2": -0.25 - }, - "2,14", - { - "x": 0.4, - "c": "#aaaaaa" - }, - "2,15" - ], - [ - { - "x": 0.25 - }, - "3,0", - { - "x": 0.5, - "w": 1.75 - }, - "3,1", - { - "c": "#cccccc" - }, - "3,2", - { - "x": 9.6 - }, - "3,12", - "3,13", - "3,14", - { - "x": 1.85, - "c": "#aaaaaa" - }, - "3,15" - ], - [ - "4,0", - { - "x": 0.5, - "w": 1.25 - }, - "4,1", - { - "c": "#cccccc" - }, - "4,2", - "4,3", - { - "x": 9.95 - }, - "4,13", - { - "c": "#aaaaaa", - "w": 1.75 - }, - "4,14" - ], - [ - { - "y": -0.75, - "x": 17.7, - "c": "#cccccc" - }, - "4,15" - ], - [ - { - "c": "#aaaaaa", - "y": -0.25 - }, - "5,0", - { - "x": 0.5, - "w": 1.25 - }, - "5,1", - { - "w": 1.25 - }, - "5,2" - ], - [ - { - "y": -0.75, - "x": 16.7, - "c": "#cccccc" - }, - "5,13", - "5,14", - "5,15" - ], - [ - { - "r": 6, - "y": -7.05, - "x": 5.4 - }, - "0,4", - "0,5", - { - "c": "#aaaaaa", - "x": 0.25 - }, - "0,6", - "0,7" - ], - [ - { - "y": 0.25, - "x": 5.55, - "c": "#cccccc" - }, - "1,4", - "1,5", - "1,6", - "1,7" - ], - [ - { - "x": 5.0 - }, - "2,3", - "2,4", - "2,5", - "2,6" - ], - [ - { - "x": 5.15 - }, - "3,3", - "3,4", - "3,5", - "3,7" - ], - [ - { - "x": 5.45 - }, - "4,4", - "4,5", - "4,6", - "4,7" - ], - [ - { - "x": 5.45, - "c": "#aaaaaa", - "w": 1.25 - }, - "5,3", - { - "w": 2.25 - }, - "5,5", - "5,7" - ], - [ - { - "r": -6, - "y": -4.25, - "x": 10.05 - }, - "0,8", - "0,9", - { - "c": "#cccccc", - "x": 0.25 - }, - "0,10", - "0,11" - ], - [ - { - "y": 0.25, - "x": 9.5, - "c": "#cccccc" - }, - "1,8", - "1,9", - "1,10", - "1,11" - ], - [ - { - "x": 9.15 - }, - "2,7", - "2,8", - "2,9", - "2,10", - "2,11" - ], - [ - { - "x": 9.5 - }, - "3,8", - "3,9", - "3,10", - "3,11" - ], - [ - { - "x": 8.95 - }, - "4,8", - "4,9", - "4,10", - "4,11", - "4,12" - ], - [ - { - "c": "#aaaaaa", - "x": 8.95, - "w": 2.55 - }, - "5,9", - "5,10", - "5,11" - ] - ] - } -} diff --git a/keyboards/keychron/k15_max/via_json/k15_max_iso_knob_white.json b/keyboards/keychron/k15_max/via_json/k15_max_iso_knob_white.json deleted file mode 100644 index cadd32eb8d..0000000000 --- a/keyboards/keychron/k15_max/via_json/k15_max_iso_knob_white.json +++ /dev/null @@ -1,338 +0,0 @@ -{ - "name": "Keychron K15 Max ISO White Knob", - "vendorId": "0x3434", - "productId": "0x0AF4", - "keycodes": ["qmk_lighting"], - "customKeycodes": [ - {"name": "Left Option", "title": "Left Option", "shortName": "LOpt"}, - {"name": "Right Option", "title": "Right Option", "shortName": "ROpt"}, - {"name": "Left Cmd", "title": "Left Command", "shortName": "LCmd"}, - {"name": "Right Cmd", "title": "Right Command", "shortName": "RCmd"}, - {"name": "Misson Control", "title": "Misson Control in Mac", "shortName": "MCtl"}, - {"name": "Lanuch Pad", "title": "Lanuch Pad in Windows", "shortName": "LPad"}, - {"name": "Task View", "title": "Task View in Windows", "shortName": "Task"}, - {"name": "File Explorer", "title": "File Explorer in Windows", "shortName": "File"}, - {"name": "Screen shot", "title": "Screenshot in macOS", "shortName": "SShot"}, - {"name": "Cortana", "title": "Cortana in Windows", "shortName": "Cortana"}, - {"name": "Siri", "title": "Siri in macOS", "shortName": "Siri"}, - {"name": "Bluetooth Host 1", "title": "Bluetooth Host 1", "shortName": "BTH1"}, - {"name": "Bluetooth Host 2", "title": "Bluetooth Host 2", "shortName": "BTH2"}, - {"name": "Bluetooth Host 3", "title": "Bluetooth Host 3", "shortName": "BTH3"}, - {"name": "2.4G", "title": "2.4G", "shortName": "2.4G"}, - {"name": "Battery Level", "title": "Show battery level", "shortName": "Batt"} - ], - "matrix": {"rows": 6, "cols": 16}, - "layouts": { - "keymap": [ - [ - { - "c": "#aaaaaa", - "x": 0.5 - }, - "0,0\n\n\n\n\n\n\n\n\ne0", - { - "x": 0.5, - "c": "#777777" - }, - "0,1\nESC", - { - "x": 0.25, - "c": "#cccccc" - }, - "0,2", - "0,3", - { - "x": 9.35 - }, - "0,12", - "0,13", - { - "c": "#aaaaaa", - "x": 0.25 - }, - "0,14", - { - "x": 0.25 - }, - "0,15" - ], - [ - { - "y": 0.25, - "x": 0.75 - }, - "1,0", - { - "x": 0.5 - }, - "1,1", - { - "c": "#cccccc" - }, - "1,2", - "1,3", - { - "x": 8.65 - }, - "1,12", - "1,13", - { - "c": "#aaaaaa", - "w": 2 - }, - "1,14", - { - "x": 0.6 - }, - "1,15" - ], - [ - { - "x": 0.5 - }, - "2,0", - { - "x": 0.5, - "w": 1.5 - }, - "2,1", - { - "c": "#cccccc" - }, - "2,2", - { - "x": 10.35 - }, - "2,12", - "2,13", - { - "x": 0.25, - "c": "#aaaaaa", - "w": 1.25, - "h": 2, - "w2": 1.5, - "h2": 1, - "x2": -0.25 - }, - "2,14", - { - "x": 0.4 - }, - "2,15" - ], - [ - { - "x": 0.25 - }, - "3,0", - { - "x": 0.5, - "w": 1.75 - }, - "3,1", - { - "c": "#cccccc" - }, - "3,2", - { - "x": 9.6 - }, - "3,12", - "3,13", - "3,14", - { - "x": 1.85, - "c": "#aaaaaa" - }, - "3,15" - ], - [ - "4,0", - { - "x": 0.5, - "w": 1.25 - }, - "4,1", - { - "c": "#cccccc" - }, - "4,2", - "4,3", - { - "x": 9.95 - }, - "4,13", - { - "c": "#aaaaaa", - "w": 1.75 - }, - "4,14" - ], - [ - { - "y": -0.75, - "x": 17.7, - "c": "#cccccc" - }, - "4,15" - ], - [ - { - "c": "#aaaaaa", - "y": -0.25 - }, - "5,0", - { - "x": 0.5, - "w": 1.25 - }, - "5,1", - { - "w": 1.25 - }, - "5,2" - ], - [ - { - "y": -0.75, - "x": 16.7, - "c": "#cccccc" - }, - "5,13", - "5,14", - "5,15" - ], - [ - { - "r": 6, - "y": -7.05, - "x": 5.4 - }, - "0,4", - "0,5", - { - "c": "#aaaaaa", - "x": 0.25 - }, - "0,6", - "0,7" - ], - [ - { - "y": 0.25, - "x": 5.55, - "c": "#cccccc" - }, - "1,4", - "1,5", - "1,6", - "1,7" - ], - [ - { - "x": 5.0 - }, - "2,3", - "2,4", - "2,5", - "2,6" - ], - [ - { - "x": 5.15 - }, - "3,3", - "3,4", - "3,5", - "3,7" - ], - [ - { - "x": 5.45 - }, - "4,4", - "4,5", - "4,6", - "4,7" - ], - [ - { - "x": 5.45, - "c": "#aaaaaa", - "w": 1.25 - }, - "5,3", - { - "w": 2.25 - }, - "5,5", - "5,7" - ], - [ - { - "r": -6, - "y": -4.25, - "x": 10.05 - }, - "0,8", - "0,9", - { - "c": "#cccccc", - "x": 0.25 - }, - "0,10", - "0,11" - ], - [ - { - "y": 0.25, - "x": 9.5, - "c": "#cccccc" - }, - "1,8", - "1,9", - "1,10", - "1,11" - ], - [ - { - "x": 9.15 - }, - "2,7", - "2,8", - "2,9", - "2,10", - "2,11" - ], - [ - { - "x": 9.5 - }, - "3,8", - "3,9", - "3,10", - "3,11" - ], - [ - { - "x": 8.95 - }, - "4,8", - "4,9", - "4,10", - "4,11", - "4,12" - ], - [ - { - "c": "#aaaaaa", - "x": 8.95, - "w": 2.55 - }, - "5,9", - "5,10", - "5,11" - ] - ] - } -} diff --git a/keyboards/keychron/k15_max/via_json/k15_max_jis_knob_rgb.json b/keyboards/keychron/k15_max/via_json/k15_max_jis_knob_rgb.json deleted file mode 100644 index 376d7e0aca..0000000000 --- a/keyboards/keychron/k15_max/via_json/k15_max_jis_knob_rgb.json +++ /dev/null @@ -1,395 +0,0 @@ -{ - "name": "Keychron K15 Max JIS Knob RGB", - "vendorId": "0x3434", - "productId": "0x0AF2", - "keycodes": ["qmk_lighting"], - "menus": [ - { - "label": "Lighting", - "content": [ - { - "label": "Backlight", - "content": [ - { - "label": "Brightness", - "type": "range", - "options": [0, 255], - "content": ["id_qmk_rgb_matrix_brightness", 3, 1] - }, - { - "label": "Effect", - "type": "dropdown", - "content": ["id_qmk_rgb_matrix_effect", 3, 2], - "options": [ - ["None", 0], - ["Solid Color", 1], - ["Breathing", 2], - ["Band Spiral Val", 3], - ["Cycle All", 4], - ["Cycle Left Right", 5], - ["Cycle Up Down", 6], - ["Rainbow Moving Chevron", 7], - ["Cycle Out In", 8], - ["Cycle Out In Dual", 9], - ["Cycle Pinwheel", 10], - ["Cycle Spiral", 11], - ["Dual Beacon", 12], - ["Rainbow Beacon", 13], - ["Jellybean Raindrops", 14], - ["Pixel Rain", 15], - ["Typing Heatmap", 16], - ["Digital Rain", 17], - ["Reactive Simple", 18], - ["Reactive Multiwide", 19], - ["Reactive Multinexus", 20], - ["Splash", 21], - ["Solid Splash", 22] - ] - }, - { - "showIf": "{id_qmk_rgb_matrix_effect} > 1", - "label": "Effect Speed", - "type": "range", - "options": [0, 255], - "content": ["id_qmk_rgb_matrix_effect_speed", 3, 3] - }, - { - "showIf": "{id_qmk_rgb_matrix_effect} != 0 && ( {id_qmk_rgb_matrix_effect} < 4 || {id_qmk_rgb_matrix_effect} == 18 || ({id_qmk_rgb_matrix_effect} > 17 && {id_qmk_rgb_matrix_effect} != 21) ) ", - "label": "Color", - "type": "color", - "content": ["id_qmk_rgb_matrix_color", 3, 4] - } - ] - } - ] - } - ], - "customKeycodes": [ - {"name": "Left Option", "title": "Left Option", "shortName": "LOpt"}, - {"name": "Right Option", "title": "Right Option", "shortName": "ROpt"}, - {"name": "Left Cmd", "title": "Left Command", "shortName": "LCmd"}, - {"name": "Right Cmd", "title": "Right Command", "shortName": "RCmd"}, - {"name": "Misson Control", "title": "Misson Control in Mac", "shortName": "MCtl"}, - {"name": "Lanuch Pad", "title": "Lanuch Pad in Windows", "shortName": "LPad"}, - {"name": "Task View", "title": "Task View in Windows", "shortName": "Task"}, - {"name": "File Explorer", "title": "File Explorer in Windows", "shortName": "File"}, - {"name": "Screen shot", "title": "Screenshot in macOS", "shortName": "SShot"}, - {"name": "Cortana", "title": "Cortana in Windows", "shortName": "Cortana"}, - {"name": "Siri", "title": "Siri in macOS", "shortName": "Siri"}, - {"name": "Bluetooth Host 1", "title": "Bluetooth Host 1", "shortName": "BTH1"}, - {"name": "Bluetooth Host 2", "title": "Bluetooth Host 2", "shortName": "BTH2"}, - {"name": "Bluetooth Host 3", "title": "Bluetooth Host 3", "shortName": "BTH3"}, - {"name": "2.4G", "title": "2.4G", "shortName": "2.4G"}, - {"name": "Battery Level", "title": "Show battery level", "shortName": "Batt"} - ], - "matrix": {"rows": 6, "cols": 16}, - "layouts": { - "keymap": [ - [ - { - "c": "#aaaaaa", - "x": 0.5 - }, - "0,0\n\n\n\n\n\n\n\n\ne0", - { - "x": 0.5, - "c": "#777777" - }, - "0,1\nESC", - { - "x": 0.25, - "c": "#cccccc" - }, - "0,2", - "0,3", - { - "x": 9.35 - }, - "0,12", - "0,13", - { - "c": "#aaaaaa", - "x": 0.25 - }, - "0,14", - { - "x": 0.25 - }, - "0,15" - ], - [ - { - "y": 0.25, - "x": 0.75 - }, - "1,0", - { - "x": 0.5 - }, - "1,1", - { - "c": "#cccccc" - }, - "1,2", - "1,3", - { - "x": 8.65 - }, - "1,12", - "1,13", - { - "c": "#aaaaaa" - }, - "1,14", - "1,15", - { - "x": 0.6 - }, - "5,8" - ], - [ - { - "x": 0.5 - }, - "2,0", - { - "x": 0.5, - "w": 1.5 - }, - "2,1", - { - "c": "#cccccc" - }, - "2,2", - { - "x": 10.35 - }, - "2,12", - "2,13", - { - "x": 0.25, - "c": "#aaaaaa", - "w": 1.25, - "h": 2, - "w2": 1.5, - "h2": 1, - "x2": -0.25 - }, - "2,14", - { - "x": 0.4 - }, - "2,15" - ], - [ - { - "x": 0.25 - }, - "3,0", - { - "x": 0.5, - "w": 1.75 - }, - "3,1", - { - "c": "#cccccc" - }, - "3,2", - { - "x": 9.6 - }, - "3,12", - "3,13", - "3,14", - { - "x": 1.85, - "c": "#aaaaaa" - }, - "3,15" - ], - [ - "4,0", - { - "x": 0.5, - "w": 2.25 - }, - "4,1", - { - "c": "#cccccc" - }, - "4,3", - { - "x": 9.95 - }, - "4,13", - { - "c": "#aaaaaa" - }, - "4,14", - "4,15" - ], - [ - { - "y": -0.75, - "x": 17.7, - "c": "#cccccc" - }, - "5,12" - ], - [ - { - "c": "#aaaaaa", - "y": -0.25 - }, - "5,0", - { - "x": 0.5, - "w": 1.25 - }, - "5,1", - "5,2", - "5,3" - ], - [ - { - "y": -0.75, - "x": 16.7, - "c": "#cccccc" - }, - "5,13", - "5,14", - "5,15" - ], - [ - { - "r": 6, - "y": -7.05, - "x": 5.4 - }, - "0,4", - "0,5", - { - "c": "#aaaaaa", - "x": 0.25 - }, - "0,6", - "0,7" - ], - [ - { - "y": 0.25, - "x": 5.55, - "c": "#cccccc" - }, - "1,4", - "1,5", - "1,6", - "1,7" - ], - [ - { - "x": 5.0 - }, - "2,3", - "2,4", - "2,5", - "2,6" - ], - [ - { - "x": 5.15 - }, - "3,3", - "3,4", - "3,5", - "3,7" - ], - [ - { - "x": 5.45 - }, - "4,4", - "4,5", - "4,6", - "4,7" - ], - [ - { - "x": 5.45, - "c": "#aaaaaa" - }, - "5,4", - { - "w": 2.25 - }, - "5,5", - "5,7" - ], - [ - { - "r": -6, - "y": -4.25, - "x": 10.05 - }, - "0,8", - "0,9", - { - "c": "#cccccc", - "x": 0.25 - }, - "0,10", - "0,11" - ], - [ - { - "y": 0.25, - "x": 9.5, - "c": "#cccccc" - }, - "1,8", - "1,9", - "1,10", - "1,11" - ], - [ - { - "x": 9.15 - }, - "2,7", - "2,8", - "2,9", - "2,10", - "2,11" - ], - [ - { - "x": 9.5 - }, - "3,8", - "3,9", - "3,10", - "3,11" - ], - [ - { - "x": 8.95 - }, - "4,8", - "4,9", - "4,10", - "4,11", - "4,12" - ], - [ - { - "c": "#aaaaaa", - "x": 8.95, - "w": 2.55 - }, - "5,9", - "5,10", - "5,11" - ] - ] - } -} diff --git a/keyboards/keychron/k15_max/via_json/k15_max_jis_knob_white.json b/keyboards/keychron/k15_max/via_json/k15_max_jis_knob_white.json deleted file mode 100644 index 5b0869eb43..0000000000 --- a/keyboards/keychron/k15_max/via_json/k15_max_jis_knob_white.json +++ /dev/null @@ -1,334 +0,0 @@ -{ - "name": "Keychron K15 Max JIS White Knob", - "vendorId": "0x3434", - "productId": "0x0AF5", - "keycodes": ["qmk_lighting"], - "customKeycodes": [ - {"name": "Left Option", "title": "Left Option", "shortName": "LOpt"}, - {"name": "Right Option", "title": "Right Option", "shortName": "ROpt"}, - {"name": "Left Cmd", "title": "Left Command", "shortName": "LCmd"}, - {"name": "Right Cmd", "title": "Right Command", "shortName": "RCmd"}, - {"name": "Misson Control", "title": "Misson Control in Mac", "shortName": "MCtl"}, - {"name": "Lanuch Pad", "title": "Lanuch Pad in Windows", "shortName": "LPad"}, - {"name": "Task View", "title": "Task View in Windows", "shortName": "Task"}, - {"name": "File Explorer", "title": "File Explorer in Windows", "shortName": "File"}, - {"name": "Screen shot", "title": "Screenshot in macOS", "shortName": "SShot"}, - {"name": "Cortana", "title": "Cortana in Windows", "shortName": "Cortana"}, - {"name": "Siri", "title": "Siri in macOS", "shortName": "Siri"}, - {"name": "Bluetooth Host 1", "title": "Bluetooth Host 1", "shortName": "BTH1"}, - {"name": "Bluetooth Host 2", "title": "Bluetooth Host 2", "shortName": "BTH2"}, - {"name": "Bluetooth Host 3", "title": "Bluetooth Host 3", "shortName": "BTH3"}, - {"name": "2.4G", "title": "2.4G", "shortName": "2.4G"}, - {"name": "Battery Level", "title": "Show battery level", "shortName": "Batt"} - ], - "matrix": {"rows": 6, "cols": 16}, - "layouts": { - "keymap": [ - [ - { - "c": "#aaaaaa", - "x": 0.5 - }, - "0,0\n\n\n\n\n\n\n\n\ne0", - { - "x": 0.5, - "c": "#777777" - }, - "0,1\nESC", - { - "x": 0.25, - "c": "#cccccc" - }, - "0,2", - "0,3", - { - "x": 9.35 - }, - "0,12", - "0,13", - { - "c": "#aaaaaa", - "x": 0.25 - }, - "0,14", - { - "x": 0.25 - }, - "0,15" - ], - [ - { - "y": 0.25, - "x": 0.75 - }, - "1,0", - { - "x": 0.5 - }, - "1,1", - { - "c": "#cccccc" - }, - "1,2", - "1,3", - { - "x": 8.65 - }, - "1,12", - "1,13", - { - "c": "#aaaaaa" - }, - "1,14", - "1,15", - { - "x": 0.6 - }, - "5,8" - ], - [ - { - "x": 0.5 - }, - "2,0", - { - "x": 0.5, - "w": 1.5 - }, - "2,1", - { - "c": "#cccccc" - }, - "2,2", - { - "x": 10.35 - }, - "2,12", - "2,13", - { - "x": 0.25, - "c": "#aaaaaa", - "w": 1.25, - "h": 2, - "w2": 1.5, - "h2": 1, - "x2": -0.25 - }, - "2,14", - { - "x": 0.4 - }, - "2,15" - ], - [ - { - "x": 0.25 - }, - "3,0", - { - "x": 0.5, - "w": 1.75 - }, - "3,1", - { - "c": "#cccccc" - }, - "3,2", - { - "x": 9.6 - }, - "3,12", - "3,13", - "3,14", - { - "x": 1.85, - "c": "#aaaaaa" - }, - "3,15" - ], - [ - "4,0", - { - "x": 0.5, - "w": 2.25 - }, - "4,1", - { - "c": "#cccccc" - }, - "4,3", - { - "x": 9.95 - }, - "4,13", - { - "c": "#aaaaaa" - }, - "4,14", - "4,15" - ], - [ - { - "y": -0.75, - "x": 17.7, - "c": "#cccccc" - }, - "5,12" - ], - [ - { - "c": "#aaaaaa", - "y": -0.25 - }, - "5,0", - { - "x": 0.5, - "w": 1.25 - }, - "5,1", - "5,2", - "5,3" - ], - [ - { - "y": -0.75, - "x": 16.7, - "c": "#cccccc" - }, - "5,13", - "5,14", - "5,15" - ], - [ - { - "r": 6, - "y": -7.05, - "x": 5.4 - }, - "0,4", - "0,5", - { - "c": "#aaaaaa", - "x": 0.25 - }, - "0,6", - "0,7" - ], - [ - { - "y": 0.25, - "x": 5.55, - "c": "#cccccc" - }, - "1,4", - "1,5", - "1,6", - "1,7" - ], - [ - { - "x": 5.0 - }, - "2,3", - "2,4", - "2,5", - "2,6" - ], - [ - { - "x": 5.15 - }, - "3,3", - "3,4", - "3,5", - "3,7" - ], - [ - { - "x": 5.45 - }, - "4,4", - "4,5", - "4,6", - "4,7" - ], - [ - { - "x": 5.45, - "c": "#aaaaaa" - }, - "5,4", - { - "w": 2.25 - }, - "5,5", - "5,7" - ], - [ - { - "r": -6, - "y": -4.25, - "x": 10.05 - }, - "0,8", - "0,9", - { - "c": "#cccccc", - "x": 0.25 - }, - "0,10", - "0,11" - ], - [ - { - "y": 0.25, - "x": 9.5, - "c": "#cccccc" - }, - "1,8", - "1,9", - "1,10", - "1,11" - ], - [ - { - "x": 9.15 - }, - "2,7", - "2,8", - "2,9", - "2,10", - "2,11" - ], - [ - { - "x": 9.5 - }, - "3,8", - "3,9", - "3,10", - "3,11" - ], - [ - { - "x": 8.95 - }, - "4,8", - "4,9", - "4,10", - "4,11", - "4,12" - ], - [ - { - "c": "#aaaaaa", - "x": 8.95, - "w": 2.55 - }, - "5,9", - "5,10", - "5,11" - ] - ] - } -} diff --git a/keyboards/keychron/k15_pro/ansi_encoder/rgb/config.h b/keyboards/keychron/k15_pro/ansi_encoder/rgb/config.h deleted file mode 100644 index 17bff06dd4..0000000000 --- a/keyboards/keychron/k15_pro/ansi_encoder/rgb/config.h +++ /dev/null @@ -1,56 +0,0 @@ -/* 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 . - */ - -#pragma once - -#ifdef RGB_MATRIX_ENABLE -/* RGB Matrix Driver Configuration */ -# define DRIVER_COUNT 2 -# define DRIVER_ADDR_1 0b1110111 -# define DRIVER_ADDR_2 0b1110100 - -/* RGB Matrix Configuration */ -# define DRIVER_1_LED_TOTAL 47 -# define DRIVER_2_LED_TOTAL 42 -# define RGB_MATRIX_LED_COUNT (DRIVER_1_LED_TOTAL + DRIVER_2_LED_TOTAL) - -/* Set to infinit, which is use in USB mode by default */ -# define RGB_MATRIX_TIMEOUT RGB_MATRIX_TIMEOUT_INFINITE - -/* Allow to shutdown driver to save power */ -# define RGB_MATRIX_DRIVER_SHUTDOWN_ENABLE - -/* Turn off backllit if brightness value is low */ -# define RGB_MATRIX_BRIGHTNESS_TURN_OFF_VAL 48 - -/* Indication led */ -# define CAPS_LOCK_INDEX 48 -# define LOW_BAT_IND_INDEX 81 - -/* RGB Matrix Animation modes. Explicitly enabled - * For full list of effects, see: - * https://docs.qmk.fm/#/feature_rgb_matrix?id=rgb-matrix-effects - */ -# define RGB_MATRIX_FRAMEBUFFER_EFFECTS -# define RGB_MATRIX_KEYPRESSES - -/* Use first 9 channels of LED driver */ -# define PHASE_CHANNEL MSKPHASE_9CHANNEL - -/* Set LED driver current */ -# define SNLED27351_CURRENT_TUNE \ - { 0x14, 0x14, 0x14, 0x14, 0x14, 0x14, 0x14, 0x14, 0x14, 0x14, 0x14, 0x14 } -#endif diff --git a/keyboards/keychron/k15_pro/ansi_encoder/rgb/info.json b/keyboards/keychron/k15_pro/ansi_encoder/rgb/info.json deleted file mode 100644 index 78c091b57a..0000000000 --- a/keyboards/keychron/k15_pro/ansi_encoder/rgb/info.json +++ /dev/null @@ -1,131 +0,0 @@ -{ - "usb": { - "pid": "0x02F6", - "device_version": "1.0.2" - }, - "features": { - "rgb_matrix": true - }, - "rgb_matrix": { - "driver": "snled27351", - "animations": { - "breathing": true, - "band_spiral_val": true, - "cycle_all": true, - "cycle_left_right": true, - "cycle_up_down": true, - "rainbow_moving_chevron": true, - "cycle_out_in": true, - "cycle_out_in_dual": true, - "cycle_pinwheel": true, - "cycle_spiral": true, - "dual_beacon": true, - "rainbow_beacon": true, - "jellybean_raindrops": true, - "pixel_rain": true, - "typing_heatmap": true, - "digital_rain": true, - "solid_reactive_simple": true, - "solid_reactive_multiwide": true, - "solid_reactive_multinexus": true, - "splash": true, - "solid_splash": true - }, - "layout": [ - {"matrix":[0, 1], "flags":1, "x":19, "y":0}, - {"matrix":[0, 2], "flags":1, "x":34, "y":0}, - {"matrix":[0, 3], "flags":1, "x":46, "y":0}, - {"matrix":[0, 4], "flags":1, "x":60, "y":1}, - {"matrix":[0, 5], "flags":1, "x":72, "y":3}, - {"matrix":[0, 6], "flags":1, "x":87, "y":6}, - {"matrix":[0, 7], "flags":1, "x":90, "y":8}, - {"matrix":[0, 8], "flags":1, "x":120, "y":8}, - {"matrix":[0, 9], "flags":1, "x":132, "y":6}, - {"matrix":[0, 10], "flags":1, "x":147, "y":3}, - {"matrix":[0, 11], "flags":1, "x":159, "y":1}, - {"matrix":[0, 12], "flags":1, "x":173, "y":0}, - {"matrix":[0, 13], "flags":1, "x":185, "y":0}, - {"matrix":[0, 14], "flags":1, "x":201, "y":1}, - {"matrix":[0, 15], "flags":1, "x":219, "y":1}, - - {"matrix":[1, 0], "flags":4, "x":5, "y":14}, - {"matrix":[1, 1], "flags":1, "x":24, "y":14}, - {"matrix":[1, 2], "flags":8, "x":36, "y":14}, - {"matrix":[1, 3], "flags":8, "x":48, "y":13}, - {"matrix":[1, 4], "flags":8, "x":62, "y":15}, - {"matrix":[1, 5], "flags":4, "x":74, "y":17}, - {"matrix":[1, 6], "flags":4, "x":86, "y":20}, - {"matrix":[1, 7], "flags":4, "x":98, "y":22}, - {"matrix":[1, 8], "flags":4, "x":115, "y":22}, - {"matrix":[1, 9], "flags":4, "x":127, "y":20}, - {"matrix":[1, 10], "flags":4, "x":139, "y":17}, - {"matrix":[1, 11], "flags":4, "x":151, "y":15}, - {"matrix":[1, 12], "flags":4, "x":165, "y":13}, - {"matrix":[1, 13], "flags":4, "x":177, "y":14}, - {"matrix":[1, 14], "flags":1, "x":195, "y":14}, - {"matrix":[1, 15], "flags":1, "x":220, "y":13}, - - {"matrix":[2, 0], "flags":4, "x":4, "y":24}, - {"matrix":[2, 1], "flags":1, "x":24, "y":24}, - {"matrix":[2, 2], "flags":4, "x":40, "y":24}, - {"matrix":[2, 3], "flags":4, "x":53, "y":24}, - {"matrix":[2, 4], "flags":4, "x":65, "y":27}, - {"matrix":[2, 5], "flags":4, "x":77, "y":29}, - {"matrix":[2, 6], "flags":4, "x":89, "y":31}, - {"matrix":[2, 7], "flags":4, "x":112, "y":33}, - {"matrix":[2, 8], "flags":4, "x":124, "y":31}, - {"matrix":[2, 9], "flags":4, "x":136, "y":29}, - {"matrix":[2, 10], "flags":4, "x":148, "y":27}, - {"matrix":[2, 11], "flags":4, "x":160, "y":24}, - {"matrix":[2, 12], "flags":4, "x":174, "y":24}, - {"matrix":[2, 13], "flags":4, "x":186, "y":24}, - {"matrix":[2, 14], "flags":1, "x":201, "y":24}, - {"matrix":[2, 15], "flags":1, "x":222, "y":25}, - - {"matrix":[3, 0], "flags":4, "x":2, "y":34}, - {"matrix":[3, 1], "flags":8, "x":23, "y":34}, - {"matrix":[3, 2], "flags":4, "x":40, "y":34}, - {"matrix":[3, 3], "flags":4, "x":54, "y":35}, - {"matrix":[3, 4], "flags":4, "x":66, "y":37}, - {"matrix":[3, 5], "flags":4, "x":78, "y":39}, - {"matrix":[3, 7], "flags":4, "x":90, "y":42}, - {"matrix":[3, 8], "flags":4, "x":118, "y":43}, - {"matrix":[3, 9], "flags":4, "x":130, "y":40}, - {"matrix":[3, 10], "flags":4, "x":142, "y":38}, - {"matrix":[3, 11], "flags":4, "x":154, "y":36}, - {"matrix":[3, 12], "flags":4, "x":167, "y":35}, - {"matrix":[3, 13], "flags":4, "x":179, "y":35}, - {"matrix":[3, 14], "flags":1, "x":199, "y":35}, - {"matrix":[3, 15], "flags":1, "x":224, "y":36}, - - {"matrix":[4, 0], "flags":4, "x":8, "y":45}, - {"matrix":[4, 1], "flags":1, "x":24, "y":45}, - {"matrix":[4, 3], "flags":4, "x":44, "y":45}, - {"matrix":[4, 4], "flags":4, "x":57, "y":46}, - {"matrix":[4, 5], "flags":4, "x":69, "y":48}, - {"matrix":[4, 6], "flags":4, "x":81, "y":51}, - {"matrix":[4, 7], "flags":4, "x":93, "y":53}, - {"matrix":[4, 8], "flags":4, "x":111, "y":54}, - {"matrix":[4, 9], "flags":4, "x":123, "y":50}, - {"matrix":[4, 10], "flags":4, "x":135, "y":48}, - {"matrix":[4, 11], "flags":4, "x":147, "y":48}, - {"matrix":[4, 12], "flags":4, "x":159, "y":46}, - {"matrix":[4, 13], "flags":4, "x":173, "y":45}, - {"matrix":[4, 14], "flags":1, "x":190, "y":45}, - {"matrix":[4, 15], "flags":1, "x":210, "y":47}, - - {"matrix":[5, 0], "flags":4, "x":0, "y":55}, - {"matrix":[5, 1], "flags":1, "x":18, "y":55}, - {"matrix":[5, 2], "flags":1, "x":33, "y":55}, - {"matrix":[5, 3], "flags":1, "x":56, "y":57}, - {"matrix":[5, 5], "flags":4, "x":77, "y":61}, - {"matrix":[5, 7], "flags":1, "x":97, "y":64}, - {"matrix":[5, 9], "flags":4, "x":124, "y":63}, - {"matrix":[5, 10], "flags":1, "x":147, "y":59}, - {"matrix":[5, 11], "flags":1, "x":159, "y":59}, - {"matrix":[5, 13], "flags":1, "x":198, "y":58}, - {"matrix":[5, 14], "flags":1, "x":210, "y":58}, - {"matrix":[5, 15], "flags":1, "x":222, "y":58} - ] - } -} diff --git a/keyboards/keychron/k15_pro/ansi_encoder/rgb/keymaps/default/keymap.c b/keyboards/keychron/k15_pro/ansi_encoder/rgb/keymaps/default/keymap.c deleted file mode 100644 index 210b328351..0000000000 --- a/keyboards/keychron/k15_pro/ansi_encoder/rgb/keymaps/default/keymap.c +++ /dev/null @@ -1,68 +0,0 @@ -/* 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 . - */ - -#include QMK_KEYBOARD_H - -enum layers{ - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN, -}; - -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_90_ansi( - KC_MUTE, KC_ESC, KC_BRID, KC_BRIU, KC_MCTL, KC_LPAD, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_INS, KC_DEL, - MC_1, KC_GRV, 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_PGUP, - MC_2, 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_PGDN, - MC_3, 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_HOME, - MC_4, KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, - MC_5, KC_LCTL, KC_LOPTN, KC_LCMMD, KC_SPC, MO(MAC_FN), KC_SPC, KC_RCMMD, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - - [MAC_FN] = LAYOUT_90_ansi( - RGB_TOG, _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, - _______, _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, BAT_LVL, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - - [WIN_BASE] = LAYOUT_90_ansi( - KC_MUTE, KC_ESC, 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_INS, KC_DEL, - MC_1, KC_GRV, 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_PGUP, - MC_2, 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_PGDN, - MC_3, 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_HOME, - MC_4, KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, - MC_5, KC_LCTL, KC_LWIN, KC_LALT, KC_SPC, MO(WIN_FN), KC_SPC, KC_RALT, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - - [WIN_FN] = LAYOUT_90_ansi( - RGB_TOG, _______, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, - _______, _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, BAT_LVL, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), -}; - -#if defined(ENCODER_MAP_ENABLE) -const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][2] = { - [MAC_BASE] = { ENCODER_CCW_CW(KC_VOLD, KC_VOLU) }, - [MAC_FN] = { ENCODER_CCW_CW(RGB_VAD, RGB_VAI) }, - [WIN_BASE] = { ENCODER_CCW_CW(KC_VOLD, KC_VOLU) }, - [WIN_FN] = { ENCODER_CCW_CW(RGB_VAD, RGB_VAI) }, -}; -#endif // ENCODER_MAP_ENABLE diff --git a/keyboards/keychron/k15_pro/ansi_encoder/rgb/keymaps/default/rules.mk b/keyboards/keychron/k15_pro/ansi_encoder/rgb/keymaps/default/rules.mk deleted file mode 100644 index ee32568148..0000000000 --- a/keyboards/keychron/k15_pro/ansi_encoder/rgb/keymaps/default/rules.mk +++ /dev/null @@ -1 +0,0 @@ -ENCODER_MAP_ENABLE = yes diff --git a/keyboards/keychron/k15_pro/ansi_encoder/rgb/keymaps/via/keymap.c b/keyboards/keychron/k15_pro/ansi_encoder/rgb/keymaps/via/keymap.c deleted file mode 100644 index 10a55e9378..0000000000 --- a/keyboards/keychron/k15_pro/ansi_encoder/rgb/keymaps/via/keymap.c +++ /dev/null @@ -1,68 +0,0 @@ -/* 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 . - */ - -#include QMK_KEYBOARD_H - -enum layers { - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN, -}; - -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_90_ansi( - KC_MUTE, KC_ESC, KC_BRID, KC_BRIU, KC_MICT, KC_LAPA, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_INS, KC_DEL, - MC_1, KC_GRV, 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_PGUP, - MC_2, 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_PGDN, - MC_3, 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_HOME, - MC_4, KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, - MC_5, KC_LCTL, KC_LOPTN, KC_LCMMD, KC_SPC, MO(MAC_FN), KC_SPC, KC_RCMMD, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - - [MAC_FN] = LAYOUT_90_ansi( - RGB_TOG, _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, - _______, _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, BAT_LVL, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - - [WIN_BASE] = LAYOUT_90_ansi( - KC_MUTE, KC_ESC, 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_INS, KC_DEL, - MC_1, KC_GRV, 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_PGUP, - MC_2, 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_PGDN, - MC_3, 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_HOME, - MC_4, KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, - MC_5, KC_LCTL, KC_LWIN, KC_LALT, KC_SPC, MO(WIN_FN), KC_SPC, KC_RALT, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - - [WIN_FN] = LAYOUT_90_ansi( - RGB_TOG, _______, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, - _______, _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, BAT_LVL, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), -}; - -#if defined(ENCODER_MAP_ENABLE) -const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][2] = { - [MAC_BASE] = { ENCODER_CCW_CW(KC_VOLD, KC_VOLU) }, - [MAC_FN] = { ENCODER_CCW_CW(RGB_VAD, RGB_VAI) }, - [WIN_BASE] = { ENCODER_CCW_CW(KC_VOLD, KC_VOLU) }, - [WIN_FN] = { ENCODER_CCW_CW(RGB_VAD, RGB_VAI) }, -}; -#endif // ENCODER_MAP_ENABLE diff --git a/keyboards/keychron/k15_pro/ansi_encoder/rgb/keymaps/via/rules.mk b/keyboards/keychron/k15_pro/ansi_encoder/rgb/keymaps/via/rules.mk deleted file mode 100644 index f1adcab005..0000000000 --- a/keyboards/keychron/k15_pro/ansi_encoder/rgb/keymaps/via/rules.mk +++ /dev/null @@ -1,2 +0,0 @@ -VIA_ENABLE = yes -ENCODER_MAP_ENABLE = yes diff --git a/keyboards/keychron/k15_pro/ansi_encoder/rgb/rgb.c b/keyboards/keychron/k15_pro/ansi_encoder/rgb/rgb.c deleted file mode 100644 index 967533e1b7..0000000000 --- a/keyboards/keychron/k15_pro/ansi_encoder/rgb/rgb.c +++ /dev/null @@ -1,123 +0,0 @@ -/* 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 . - */ - -#include "quantum.h" - -// clang-format off -#ifdef RGB_MATRIX_ENABLE -const snled27351_led_t g_snled27351_leds[RGB_MATRIX_LED_COUNT] = { -/* Refer to snled27351manual for these locations - * driver - * | R location - * | | G location - * | | | B location - * | | | | */ - {0, I_2, G_2, H_2}, - {0, I_3, G_3, H_3}, - {0, I_4, G_4, H_4}, - {0, I_5, G_5, H_5}, - {0, I_6, G_6, H_6}, - {0, I_7, G_7, H_7}, - {0, I_8, G_8, H_8}, - {0, I_9, G_9, H_9}, - {0, I_10, G_10, H_10}, - {0, I_11, G_11, H_11}, - {0, I_12, G_12, H_12}, - {0, I_13, G_13, H_13}, - {0, I_14, G_14, H_14}, - {0, I_15, G_15, H_15}, - {0, I_16, G_16, H_16}, - - {0, C_1, A_1, B_1}, - {0, C_2, A_2, B_2}, - {0, C_3, A_3, B_3}, - {0, C_4, A_4, B_4}, - {0, C_5, A_5, B_5}, - {0, C_6, A_6, B_6}, - {0, C_7, A_7, B_7}, - {0, C_8, A_8, B_8}, - {0, C_9, A_9, B_9}, - {0, C_10, A_10, B_10}, - {0, C_11, A_11, B_11}, - {0, C_12, A_12, B_12}, - {0, C_13, A_13, B_13}, - {0, C_14, A_14, B_14}, - {0, C_15, A_15, B_15}, - {0, C_16, A_16, B_16}, - - {0, F_1, D_1, E_1}, - {0, F_2, D_2, E_2}, - {0, F_3, D_3, E_3}, - {0, F_4, D_4, E_4}, - {0, F_5, D_5, E_5}, - {0, F_6, D_6, E_6}, - {0, F_7, D_7, E_7}, - {0, F_8, D_8, E_8}, - {0, F_9, D_9, E_9}, - {0, F_10, D_10, E_10}, - {0, F_11, D_11, E_11}, - {0, F_12, D_12, E_12}, - {0, F_13, D_13, E_13}, - {0, F_14, D_14, E_14}, - {0, F_15, D_15, E_15}, - {0, F_16, D_16, E_16}, - - {1, C_16, A_16, B_16}, - {1, C_15, A_15, B_15}, - {1, C_14, A_14, B_14}, - {1, C_13, A_13, B_13}, - {1, C_12, A_12, B_12}, - {1, C_11, A_11, B_11}, - {1, C_10, A_10, B_10}, - {1, C_8, A_8, B_8}, - {1, C_7, A_7, B_7}, - {1, C_6, A_6, B_6}, - {1, C_5, A_5, B_5}, - {1, C_4, A_4, B_4}, - {1, C_3, A_3, B_3}, - {1, C_2, A_2, B_2}, - {1, C_1, A_1, B_1}, - - {1, I_16, G_16, H_16}, - {1, I_14, G_14, H_14}, - {1, I_13, G_13, H_13}, - {1, I_12, G_12, H_12}, - {1, I_11, G_11, H_11}, - {1, I_10, G_10, H_10}, - {1, I_9, G_9, H_9}, - {1, I_8, G_8, H_8}, - {1, I_7, G_7, H_7}, - {1, I_6, G_6, H_6}, - {1, I_5, G_5, H_5}, - {1, I_4, G_4, H_4}, - {1, I_3, G_3, H_3}, - {1, I_2, G_2, H_2}, - {1, I_1, G_1, H_1}, - - {1, F_16, D_16, E_16}, - {1, F_15, D_15, E_15}, - {1, F_14, D_14, E_14}, - {1, F_13, D_13, E_13}, - {1, F_12, D_12, E_12}, - {1, F_10, D_10, E_10}, - {1, F_7, D_7, E_7}, - {1, F_6, D_6, E_6}, - {1, F_5, D_5, E_5}, - {1, F_3, D_3, E_3}, - {1, F_2, D_2, E_2}, - {1, F_1, D_1, E_1}, -}; -#endif diff --git a/keyboards/keychron/k15_pro/ansi_encoder/rgb/rules.mk b/keyboards/keychron/k15_pro/ansi_encoder/rgb/rules.mk deleted file mode 100644 index c628fc7d0f..0000000000 --- a/keyboards/keychron/k15_pro/ansi_encoder/rgb/rules.mk +++ /dev/null @@ -1 +0,0 @@ -# This file intentionally blank diff --git a/keyboards/keychron/k15_pro/ansi_encoder/white/config.h b/keyboards/keychron/k15_pro/ansi_encoder/white/config.h deleted file mode 100644 index 07845b87d2..0000000000 --- a/keyboards/keychron/k15_pro/ansi_encoder/white/config.h +++ /dev/null @@ -1,51 +0,0 @@ -/* 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 . - */ - -#pragma once - -#ifdef LED_MATRIX_ENABLE -/* LED Matrix Driver Configuration */ -# define DRIVER_COUNT 1 -# define DRIVER_ADDR_1 0b1110111 - -/* LED Matrix Configuration */ -# define LED_MATRIX_LED_COUNT 89 - -/* Set to infinit, which is use in USB mode by default */ -# define LED_MATRIX_TIMEOUT LED_MATRIX_TIMEOUT_INFINITE - -/* Allow to shutdown driver to save power */ -# define LED_MATRIX_DRIVER_SHUTDOWN_ENABLE - -/* Turn off backllit if brightness value is low */ -# define LED_MATRIX_BRIGHTNESS_TURN_OFF_VAL 48 - -/* Indication led */ -# define CAPS_LOCK_INDEX 48 -# define LOW_BAT_IND_INDEX 81 - -// LED Matrix Animation modes. Explicitly enabled -// For full list of effects, see: -// https://docs.qmk.fm/#/feature_led_matrix?id=led-matrix-effects -# define LED_MATRIX_KEYPRESSES - -/* Use first 6 channels of LED driver */ -# define PHASE_CHANNEL MSKPHASE_6CHANNEL - -/* Set LED driver current */ -# define SNLED27351_CURRENT_TUNE \ - { 0x28, 0x28, 0x28, 0x28, 0x28, 0x28, 0x28, 0x28, 0x28, 0x28, 0x28, 0x28 } -#endif diff --git a/keyboards/keychron/k15_pro/ansi_encoder/white/info.json b/keyboards/keychron/k15_pro/ansi_encoder/white/info.json deleted file mode 100644 index ab73cbcdfe..0000000000 --- a/keyboards/keychron/k15_pro/ansi_encoder/white/info.json +++ /dev/null @@ -1,126 +0,0 @@ -{ - "usb": { - "pid": "0x02F9", - "device_version": "1.0.2" - }, - "features": { - "led_matrix": true - }, - "led_matrix": { - "driver": "snled27351", - "animations": { - "none": true, - "solid": true, - "breathing": true, - "band_pinwheel": true, - "band_spiral": true, - "cycle_left_right": true, - "cycle_up_down": true, - "cycle_out_in": true, - "dual_beacon": true, - "solid_reactive_simple": true, - "solid_reactive_multiwide": true, - "solid_reactive_multinexus": true, - "solid_splash": true, - "wave_left_right": true, - "wave_up_down": true, - "effect_max": true - }, - "layout": [ - {"matrix":[0, 1], "flags":1, "x":19, "y":0}, - {"matrix":[0, 2], "flags":1, "x":34, "y":0}, - {"matrix":[0, 3], "flags":1, "x":46, "y":0}, - {"matrix":[0, 4], "flags":1, "x":60, "y":1}, - {"matrix":[0, 5], "flags":1, "x":72, "y":3}, - {"matrix":[0, 6], "flags":1, "x":87, "y":6}, - {"matrix":[0, 7], "flags":1, "x":90, "y":8}, - {"matrix":[0, 8], "flags":1, "x":120, "y":8}, - {"matrix":[0, 9], "flags":1, "x":132, "y":6}, - {"matrix":[0, 10], "flags":1, "x":147, "y":3}, - {"matrix":[0, 11], "flags":1, "x":159, "y":1}, - {"matrix":[0, 12], "flags":1, "x":173, "y":0}, - {"matrix":[0, 13], "flags":1, "x":185, "y":0}, - {"matrix":[0, 14], "flags":1, "x":201, "y":1}, - {"matrix":[0, 15], "flags":1, "x":219, "y":1}, - - {"matrix":[1, 0], "flags":4, "x":5, "y":14}, - {"matrix":[1, 1], "flags":1, "x":24, "y":14}, - {"matrix":[1, 2], "flags":8, "x":36, "y":14}, - {"matrix":[1, 3], "flags":8, "x":48, "y":13}, - {"matrix":[1, 4], "flags":8, "x":62, "y":15}, - {"matrix":[1, 5], "flags":4, "x":74, "y":17}, - {"matrix":[1, 6], "flags":4, "x":86, "y":20}, - {"matrix":[1, 7], "flags":4, "x":98, "y":22}, - {"matrix":[1, 8], "flags":4, "x":115, "y":22}, - {"matrix":[1, 9], "flags":4, "x":127, "y":20}, - {"matrix":[1, 10], "flags":4, "x":139, "y":17}, - {"matrix":[1, 11], "flags":4, "x":151, "y":15}, - {"matrix":[1, 12], "flags":4, "x":165, "y":13}, - {"matrix":[1, 13], "flags":4, "x":177, "y":14}, - {"matrix":[1, 14], "flags":1, "x":195, "y":14}, - {"matrix":[1, 15], "flags":1, "x":220, "y":13}, - - {"matrix":[2, 0], "flags":4, "x":4, "y":24}, - {"matrix":[2, 1], "flags":1, "x":24, "y":24}, - {"matrix":[2, 2], "flags":4, "x":40, "y":24}, - {"matrix":[2, 3], "flags":4, "x":53, "y":24}, - {"matrix":[2, 4], "flags":4, "x":65, "y":27}, - {"matrix":[2, 5], "flags":4, "x":77, "y":29}, - {"matrix":[2, 6], "flags":4, "x":89, "y":31}, - {"matrix":[2, 7], "flags":4, "x":112, "y":33}, - {"matrix":[2, 8], "flags":4, "x":124, "y":31}, - {"matrix":[2, 9], "flags":4, "x":136, "y":29}, - {"matrix":[2, 10], "flags":4, "x":148, "y":27}, - {"matrix":[2, 11], "flags":4, "x":160, "y":24}, - {"matrix":[2, 12], "flags":4, "x":174, "y":24}, - {"matrix":[2, 13], "flags":4, "x":186, "y":24}, - {"matrix":[2, 14], "flags":1, "x":201, "y":24}, - {"matrix":[2, 15], "flags":1, "x":222, "y":25}, - - {"matrix":[3, 0], "flags":4, "x":2, "y":34}, - {"matrix":[3, 1], "flags":8, "x":23, "y":34}, - {"matrix":[3, 2], "flags":4, "x":40, "y":34}, - {"matrix":[3, 3], "flags":4, "x":54, "y":35}, - {"matrix":[3, 4], "flags":4, "x":66, "y":37}, - {"matrix":[3, 5], "flags":4, "x":78, "y":39}, - {"matrix":[3, 7], "flags":4, "x":90, "y":42}, - {"matrix":[3, 8], "flags":4, "x":118, "y":43}, - {"matrix":[3, 9], "flags":4, "x":130, "y":40}, - {"matrix":[3, 10], "flags":4, "x":142, "y":38}, - {"matrix":[3, 11], "flags":4, "x":154, "y":36}, - {"matrix":[3, 12], "flags":4, "x":167, "y":35}, - {"matrix":[3, 13], "flags":4, "x":179, "y":35}, - {"matrix":[3, 14], "flags":1, "x":199, "y":35}, - {"matrix":[3, 15], "flags":1, "x":224, "y":36}, - - {"matrix":[4, 0], "flags":4, "x":8, "y":45}, - {"matrix":[4, 1], "flags":1, "x":24, "y":45}, - {"matrix":[4, 3], "flags":4, "x":44, "y":45}, - {"matrix":[4, 4], "flags":4, "x":57, "y":46}, - {"matrix":[4, 5], "flags":4, "x":69, "y":48}, - {"matrix":[4, 6], "flags":4, "x":81, "y":51}, - {"matrix":[4, 7], "flags":4, "x":93, "y":53}, - {"matrix":[4, 8], "flags":4, "x":111, "y":54}, - {"matrix":[4, 9], "flags":4, "x":123, "y":50}, - {"matrix":[4, 10], "flags":4, "x":135, "y":48}, - {"matrix":[4, 11], "flags":4, "x":147, "y":48}, - {"matrix":[4, 12], "flags":4, "x":159, "y":46}, - {"matrix":[4, 13], "flags":4, "x":173, "y":45}, - {"matrix":[4, 14], "flags":1, "x":190, "y":45}, - {"matrix":[4, 15], "flags":1, "x":210, "y":47}, - - {"matrix":[5, 0], "flags":4, "x":0, "y":55}, - {"matrix":[5, 1], "flags":1, "x":18, "y":55}, - {"matrix":[5, 2], "flags":1, "x":33, "y":55}, - {"matrix":[5, 3], "flags":1, "x":56, "y":57}, - {"matrix":[5, 5], "flags":4, "x":77, "y":61}, - {"matrix":[5, 7], "flags":1, "x":97, "y":64}, - {"matrix":[5, 9], "flags":4, "x":124, "y":63}, - {"matrix":[5, 10], "flags":1, "x":147, "y":59}, - {"matrix":[5, 11], "flags":1, "x":159, "y":59}, - {"matrix":[5, 13], "flags":1, "x":198, "y":58}, - {"matrix":[5, 14], "flags":1, "x":210, "y":58}, - {"matrix":[5, 15], "flags":1, "x":222, "y":58} - ] - } -} diff --git a/keyboards/keychron/k15_pro/ansi_encoder/white/keymaps/default/keymap.c b/keyboards/keychron/k15_pro/ansi_encoder/white/keymaps/default/keymap.c deleted file mode 100644 index 6b6dd9ace5..0000000000 --- a/keyboards/keychron/k15_pro/ansi_encoder/white/keymaps/default/keymap.c +++ /dev/null @@ -1,68 +0,0 @@ -/* 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 . - */ - -#include QMK_KEYBOARD_H - -enum layers { - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN, -}; - -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_90_ansi( - KC_MUTE, KC_ESC, KC_BRID, KC_BRIU, KC_MCTL, KC_LPAD, BL_DOWN, BL_UP, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_INS, KC_DEL, - MC_1, KC_GRV, 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_PGUP, - MC_2, 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_PGDN, - MC_3, 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_HOME, - MC_4, KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, - MC_5, KC_LCTL, KC_LOPTN, KC_LCMMD, KC_SPC, MO(MAC_FN), KC_SPC, KC_RCMMD, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - - [MAC_FN] = LAYOUT_90_ansi( - BL_TOGG, _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, - _______, _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, BL_TOGG, BL_STEP, BL_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, BL_DOWN, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, BAT_LVL, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - - [WIN_BASE] = LAYOUT_90_ansi( - KC_MUTE, KC_ESC, 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_INS, KC_DEL, - MC_1, KC_GRV, 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_PGUP, - MC_2, 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_PGDN, - MC_3, 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_HOME, - MC_4, KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, - MC_5, KC_LCTL, KC_LWIN, KC_LALT, KC_SPC, MO(WIN_FN), KC_SPC, KC_RALT, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - - [WIN_FN] = LAYOUT_90_ansi( - BL_TOGG, _______, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, BL_DOWN, BL_UP, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, - _______, _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, BL_TOGG, BL_STEP, BL_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, BL_DOWN, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, BAT_LVL, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), -}; - -#if defined(ENCODER_MAP_ENABLE) -const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][2] = { - [MAC_BASE] = { ENCODER_CCW_CW(KC_VOLD, KC_VOLU) }, - [MAC_FN] = { ENCODER_CCW_CW(BL_DOWN, BL_UP) }, - [WIN_BASE] = { ENCODER_CCW_CW(KC_VOLD, KC_VOLU) }, - [WIN_FN] = { ENCODER_CCW_CW(BL_DOWN, BL_UP) }, -}; -#endif // ENCODER_MAP_ENABLE diff --git a/keyboards/keychron/k15_pro/ansi_encoder/white/keymaps/default/rules.mk b/keyboards/keychron/k15_pro/ansi_encoder/white/keymaps/default/rules.mk deleted file mode 100644 index ee32568148..0000000000 --- a/keyboards/keychron/k15_pro/ansi_encoder/white/keymaps/default/rules.mk +++ /dev/null @@ -1 +0,0 @@ -ENCODER_MAP_ENABLE = yes diff --git a/keyboards/keychron/k15_pro/ansi_encoder/white/keymaps/via/keymap.c b/keyboards/keychron/k15_pro/ansi_encoder/white/keymaps/via/keymap.c deleted file mode 100644 index 3e05cfd6a4..0000000000 --- a/keyboards/keychron/k15_pro/ansi_encoder/white/keymaps/via/keymap.c +++ /dev/null @@ -1,68 +0,0 @@ -/* 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 . - */ - -#include QMK_KEYBOARD_H - -enum layers { - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN, -}; - -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_90_ansi( - KC_MUTE, KC_ESC, KC_BRID, KC_BRIU, KC_MICT, KC_LAPA, BL_DOWN, BL_UP, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_INS, KC_DEL, - MC_1, KC_GRV, 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_PGUP, - MC_2, 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_PGDN, - MC_3, 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_HOME, - MC_4, KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, - MC_5, KC_LCTL, KC_LOPTN, KC_LCMMD, KC_SPC, MO(MAC_FN), KC_SPC, KC_RCMMD, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - - [MAC_FN] = LAYOUT_90_ansi( - BL_TOGG, _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, - _______, _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, BL_TOGG, BL_STEP, BL_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, BL_DOWN, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, BAT_LVL, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - - [WIN_BASE] = LAYOUT_90_ansi( - KC_MUTE, KC_ESC, 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_INS, KC_DEL, - MC_1, KC_GRV, 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_PGUP, - MC_2, 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_PGDN, - MC_3, 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_HOME, - MC_4, KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, - MC_5, KC_LCTL, KC_LWIN, KC_LALT, KC_SPC, MO(WIN_FN), KC_SPC, KC_RALT, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - - [WIN_FN] = LAYOUT_90_ansi( - BL_TOGG, _______, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, BL_DOWN, BL_UP, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, - _______, _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, BL_TOGG, BL_STEP, BL_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, BL_DOWN, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, BAT_LVL, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), -}; - -#if defined(ENCODER_MAP_ENABLE) -const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][2] = { - [MAC_BASE] = { ENCODER_CCW_CW(KC_VOLD, KC_VOLU) }, - [MAC_FN] = { ENCODER_CCW_CW(BL_DOWN, BL_UP) }, - [WIN_BASE] = { ENCODER_CCW_CW(KC_VOLD, KC_VOLU) }, - [WIN_FN] = { ENCODER_CCW_CW(BL_DOWN, BL_UP) }, -}; -#endif // ENCODER_MAP_ENABLE diff --git a/keyboards/keychron/k15_pro/ansi_encoder/white/keymaps/via/rules.mk b/keyboards/keychron/k15_pro/ansi_encoder/white/keymaps/via/rules.mk deleted file mode 100644 index f1adcab005..0000000000 --- a/keyboards/keychron/k15_pro/ansi_encoder/white/keymaps/via/rules.mk +++ /dev/null @@ -1,2 +0,0 @@ -VIA_ENABLE = yes -ENCODER_MAP_ENABLE = yes diff --git a/keyboards/keychron/k15_pro/ansi_encoder/white/rules.mk b/keyboards/keychron/k15_pro/ansi_encoder/white/rules.mk deleted file mode 100644 index c628fc7d0f..0000000000 --- a/keyboards/keychron/k15_pro/ansi_encoder/white/rules.mk +++ /dev/null @@ -1 +0,0 @@ -# This file intentionally blank diff --git a/keyboards/keychron/k15_pro/ansi_encoder/white/white.c b/keyboards/keychron/k15_pro/ansi_encoder/white/white.c deleted file mode 100644 index 24cdeab937..0000000000 --- a/keyboards/keychron/k15_pro/ansi_encoder/white/white.c +++ /dev/null @@ -1,121 +0,0 @@ -/* 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 . - */ - -#include "quantum.h" - -// clang-format off -#ifdef LED_MATRIX_ENABLE -const snled27351_led_t g_snled27351_leds[LED_MATRIX_LED_COUNT] = { -/* Refer to snled27351manual for these locations - * driver - * | LED address - * | | */ - {0, A_2}, - {0, A_3}, - {0, A_4}, - {0, A_5}, - {0, A_6}, - {0, A_7}, - {0, A_8}, - {0, A_9}, - {0, A_10}, - {0, A_11}, - {0, A_12}, - {0, A_13}, - {0, A_14}, - {0, A_15}, - {0, A_16}, - - {0, B_1}, - {0, B_2}, - {0, B_3}, - {0, B_4}, - {0, B_5}, - {0, B_6}, - {0, B_7}, - {0, B_8}, - {0, B_9}, - {0, B_10}, - {0, B_11}, - {0, B_12}, - {0, B_13}, - {0, B_14}, - {0, B_15}, - {0, B_16}, - - {0, C_1}, - {0, C_2}, - {0, C_3}, - {0, C_4}, - {0, C_5}, - {0, C_6}, - {0, C_7}, - {0, C_8}, - {0, C_9}, - {0, C_10}, - {0, C_11}, - {0, C_12}, - {0, C_13}, - {0, C_14}, - {0, C_15}, - {0, C_16}, - - {0, D_1}, - {0, D_2}, - {0, D_3}, - {0, D_4}, - {0, D_5}, - {0, D_6}, - {0, D_7}, - {0, D_9}, - {0, D_10}, - {0, D_11}, - {0, D_12}, - {0, D_13}, - {0, D_14}, - {0, D_15}, - {0, D_16}, - - {0, E_1}, - {0, E_3}, - {0, E_4}, - {0, E_5}, - {0, E_6}, - {0, E_7}, - {0, E_8}, - {0, E_9}, - {0, E_10}, - {0, E_11}, - {0, E_12}, - {0, E_13}, - {0, E_14}, - {0, E_15}, - {0, E_16}, - - {0, F_1}, - {0, F_2}, - {0, F_3}, - {0, F_4}, - {0, F_5}, - {0, F_7}, - {0, F_10}, - {0, F_11}, - {0, F_12}, - {0, F_14}, - {0, F_15}, - {0, F_16}, -}; -#endif diff --git a/keyboards/keychron/k15_pro/config.h b/keyboards/keychron/k15_pro/config.h deleted file mode 100644 index b30aac1e83..0000000000 --- a/keyboards/keychron/k15_pro/config.h +++ /dev/null @@ -1,87 +0,0 @@ -/* 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 . - */ - -#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 WEAR_LEVELING_LOGICAL_SIZE 2048 -#define WEAR_LEVELING_BACKING_SIZE (WEAR_LEVELING_LOGICAL_SIZE * 2) -#define DYNAMIC_KEYMAP_EEPROM_MAX_ADDR 2047 - -/* Factory test keys */ -#define FN_KEY1 MO(1) -#define FN_KEY2 MO(3) diff --git a/keyboards/keychron/k15_pro/halconf.h b/keyboards/keychron/k15_pro/halconf.h deleted file mode 100644 index 306f917783..0000000000 --- a/keyboards/keychron/k15_pro/halconf.h +++ /dev/null @@ -1,29 +0,0 @@ -/* 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 _CHIBIOS_HAL_CONF_VER_8_0_ - -#define HAL_USE_I2C TRUE - -#ifdef KC_BLUETOOTH_ENABLE -# define PAL_USE_CALLBACKS TRUE -# define HAL_USE_SERIAL TRUE -# define HAL_USE_RTC TRUE -#endif - -#include_next diff --git a/keyboards/keychron/k15_pro/info.json b/keyboards/keychron/k15_pro/info.json deleted file mode 100644 index f8ae169ed0..0000000000 --- a/keyboards/keychron/k15_pro/info.json +++ /dev/null @@ -1,140 +0,0 @@ -{ - "keyboard_name": "Keychron K15 Pro", - "manufacturer": "Keychron", - "url": "https://github.com/Keychron", - "maintainer": "lalalademaxiya1", - "processor": "STM32L432", - "bootloader": "stm32-dfu", - "usb": { - "vid": "0x3434" - }, - "features": { - "bootmagic": true, - "mousekey": true, - "extrakey": true, - "nkro": true, - "dip_switch": true, - "encoder": true, - "raw": true - }, - "matrix_size": { - "rows": 6, - "cols": 16 - }, - "matrix_pins": { - "rows": ["B5", "B4", "B3", "A15", "A14", "A13"], - "cols": [null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null], - "custom": true, - "custom_lite": true - }, - "diode_direction": "ROW2COL", - "encoder": { - "rotary": [ - {"pin_a": "A0", "pin_b": "A10"} - ] - }, - "bootmagic": { - "matrix": [0, 1] - }, - "layouts": { - "LAYOUT_90_ansi": { - "layout": [ - {"matrix":[0,0], "x":0.5, "y":0}, - {"matrix":[0,1], "x":2, "y":0}, - {"matrix":[0,2], "x":3.25, "y":0}, - {"matrix":[0,3], "x":4.25, "y":0}, - {"matrix":[0,4], "x":5.4, "y":-0.55}, - {"matrix":[0,5], "x":6.4, "y":-0.55}, - {"matrix":[0,6], "x":7.65, "y":-0.55}, - {"matrix":[0,7], "x":8.65, "y":-0.55}, - {"matrix":[0,8], "x":10.05, "y":1.45}, - {"matrix":[0,9], "x":11.05, "y":1.45}, - {"matrix":[0,10], "x":12.3, "y":1.45}, - {"matrix":[0,11], "x":13.3, "y":1.45}, - {"matrix":[0,12], "x":14.6, "y":0}, - {"matrix":[0,13], "x":15.6, "y":0}, - {"matrix":[0,14], "x":17.05, "y":0}, - {"matrix":[0,15], "x":18.5, "y":0}, - - {"matrix":[1,0], "x":0.75, "y":1.25}, - {"matrix":[1,1], "x":2.25, "y":1.25}, - {"matrix":[1,2], "x":3.25, "y":1.25}, - {"matrix":[1,3], "x":4.25, "y":1.25}, - {"matrix":[1,4], "x":5.55, "y":0.7}, - {"matrix":[1,5], "x":6.55, "y":0.7}, - {"matrix":[1,6], "x":7.55, "y":0.7}, - {"matrix":[1,7], "x":8.55, "y":0.7}, - {"matrix":[1,8], "x":9.4, "y":2.7}, - {"matrix":[1,9], "x":10.4, "y":2.7}, - {"matrix":[1,10], "x":11.4, "y":2.7}, - {"matrix":[1,11], "x":12.4, "y":2.7}, - {"matrix":[1,12], "x":13.9, "y":1.25}, - {"matrix":[1,13], "x":14.9, "y":1.25}, - {"matrix":[1,14], "x":15.9, "y":1.25, "w":2}, - {"matrix":[1,15], "x":18.5, "y":1.25}, - - {"matrix":[2,0], "x":0.5, "y":2.25}, - {"matrix":[2,1], "x":2, "y":2.25, "w":1.5}, - {"matrix":[2,2], "x":3.5, "y":2.25}, - {"matrix":[2,3], "x":4.9, "y":1.7}, - {"matrix":[2,4], "x":5.9, "y":1.7}, - {"matrix":[2,5], "x":6.9, "y":1.7}, - {"matrix":[2,6], "x":7.9, "y":1.7}, - {"matrix":[2,7], "x":8.9, "y":3.7}, - {"matrix":[2,8], "x":9.9, "y":3.7}, - {"matrix":[2,9], "x":10.9, "y":3.7}, - {"matrix":[2,10], "x":11.9, "y":3.7}, - {"matrix":[2,11], "x":12.9, "y":3.7}, - {"matrix":[2,12], "x":14.4, "y":2.25}, - {"matrix":[2,13], "x":15.4, "y":2.25}, - {"matrix":[2,14], "x":16.4, "y":2.25, "w":1.75}, - {"matrix":[2,15], "x":18.65, "y":2.25}, - - {"matrix":[3,0], "x":0.25, "y":3.25}, - {"matrix":[3,1], "x":1.75, "y":3.25, "w":1.75}, - {"matrix":[3,2], "x":3.5, "y":3.25}, - {"matrix":[3,3], "x":5, "y":2.7}, - {"matrix":[3,4], "x":6, "y":2.7}, - {"matrix":[3,5], "x":7, "y":2.7}, - {"matrix":[3,7], "x":8, "y":2.7}, - {"matrix":[3,8], "x":9.4, "y":4.7}, - {"matrix":[3,9], "x":10.4, "y":4.7}, - {"matrix":[3,10], "x":11.4, "y":4.7}, - {"matrix":[3,11], "x":12.4, "y":4.7}, - {"matrix":[3,12], "x":14, "y":3.25}, - {"matrix":[3,13], "x":15, "y":3.25}, - {"matrix":[3,14], "x":16, "y":3.25, "w":2.25}, - {"matrix":[3,15], "x":18.75, "y":3.25}, - - {"matrix":[4,0], "x":0, "y":4.25}, - {"matrix":[4,1], "x":1.5, "y":4.25, "w":2.25}, - {"matrix":[4,3], "x":3.75, "y":4.25}, - {"matrix":[4,4], "x":5.35, "y":3.7}, - {"matrix":[4,5], "x":6.35, "y":3.7}, - {"matrix":[4,6], "x":7.35, "y":3.7}, - {"matrix":[4,7], "x":8.35, "y":3.7}, - {"matrix":[4,8], "x":8.85, "y":5.7}, - {"matrix":[4,9], "x":9.85, "y":5.7}, - {"matrix":[4,10], "x":10.85, "y":5.7}, - {"matrix":[4,11], "x":11.85, "y":5.7}, - {"matrix":[4,12], "x":12.85, "y":5.7}, - {"matrix":[4,13], "x":14.5, "y":4.25}, - {"matrix":[4,14], "x":15.5, "y":4.25, "w":1.75}, - {"matrix":[4,15], "x":17.5, "y":4.5}, - - {"matrix":[5,0], "x":0, "y":5.25}, - {"matrix":[5,1], "x":1.5, "y":5.25, "w":1.25}, - {"matrix":[5,2], "x":2.75, "y":5.25, "w":1.25}, - {"matrix":[5,3], "x":5.35, "y":4.7, "w":1.25}, - {"matrix":[5,5], "x":6.6, "y":4.7, "w":2.25}, - {"matrix":[5,7], "x":8.85, "y":4.7}, - {"matrix":[5,9], "x":8.85, "y":6.7, "w":2.55}, - {"matrix":[5,10],"x":11.4, "y":6.7}, - {"matrix":[5,11], "x":12.4, "y":6.7}, - {"matrix":[5,13], "x":16.5, "y":5.5}, - {"matrix":[5,14], "x":17.5, "y":5.5}, - {"matrix":[5,15], "x":18.5, "y":5.5} - ] - } - } -} diff --git a/keyboards/keychron/k15_pro/k15_pro.c b/keyboards/keychron/k15_pro/k15_pro.c deleted file mode 100644 index ce3ef9c0ed..0000000000 --- a/keyboards/keychron/k15_pro/k15_pro.c +++ /dev/null @@ -1,342 +0,0 @@ -/* 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 . - */ - -#include "k15_pro.h" -#ifdef KC_BLUETOOTH_ENABLE -# include "ckbt51.h" -# include "bluetooth.h" -# include "indicator.h" -# include "transport.h" -# include "battery.h" -# include "bat_level_animation.h" -# include "lpm.h" -#endif - -#ifdef ENABLE_FACTORY_TEST -# include "factory_test.h" -#endif - -#define POWER_ON_LED_DURATION 3000 - -typedef struct PACKED { - uint8_t len; - uint8_t keycode[3]; -} key_combination_t; - -static uint32_t factory_timer_buffer = 0; -static uint32_t power_on_indicator_timer_buffer = 0; -static uint32_t siri_timer_buffer = 0; -static uint8_t mac_keycode[4] = {KC_LOPT, KC_ROPT, KC_LCMD, KC_RCMD}; - -key_combination_t key_comb_list[4] = { - {2, {KC_LWIN, KC_TAB}}, // Task (win) - {2, {KC_LWIN, KC_E}}, // Files (win) - {3, {KC_LSFT, KC_LGUI, KC_4}}, // Snapshot (mac) - {2, {KC_LWIN, KC_C}} // Cortana (win) -}; - -#ifdef KC_BLUETOOTH_ENABLE -bool firstDisconnect = true; -bool bt_factory_reset = false; -static virtual_timer_t pairing_key_timer; -extern uint8_t g_pwm_buffer[DRIVER_COUNT][192]; - -static void pairing_key_timer_cb(void *arg) { - bluetooth_pairing_ex(*(uint8_t *)arg, NULL); -} -#endif - -bool dip_switch_update_kb(uint8_t index, bool active) { - if (index == 0) { -#ifdef INVERT_OS_SWITCH_STATTE - default_layer_set(1UL << (!active ? 0 : 2)); -#else - default_layer_set(1UL << (active ? 0 : 2)); -#endif - } - dip_switch_update_user(index, active); - - return true; -} - -#ifdef KC_BLUETOOTH_ENABLE -bool process_record_kb_bt(uint16_t keycode, keyrecord_t *record) { -#else -bool process_record_kb(uint16_t keycode, keyrecord_t *record) { -#endif - static uint8_t host_idx = 0; - - switch (keycode) { - case KC_MICT: - if (record->event.pressed) { - register_code(KC_MISSION_CONTROL); - } else { - unregister_code(KC_MISSION_CONTROL); - } - return false; // Skip all further processing of this key - case KC_LAPA: - if (record->event.pressed) { - register_code(KC_LAUNCHPAD); - } else { - unregister_code(KC_LAUNCHPAD); - } - return false; // Skip all further processing of this key - case KC_LOPTN: - case KC_ROPTN: - case KC_LCMMD: - case KC_RCMMD: - if (record->event.pressed) { - register_code(mac_keycode[keycode - KC_LOPTN]); - } else { - unregister_code(mac_keycode[keycode - KC_LOPTN]); - } - return false; // Skip all further processing of this key) - case KC_TASK: - case KC_FILE: - case KC_SNAP: - case KC_CTANA: - if (record->event.pressed) { - for (uint8_t i = 0; i < key_comb_list[keycode - KC_TASK].len; i++) - register_code(key_comb_list[keycode - KC_TASK].keycode[i]); - } else { - for (uint8_t i = 0; i < key_comb_list[keycode - KC_TASK].len; i++) - unregister_code(key_comb_list[keycode - KC_TASK].keycode[i]); - } - return false; // Skip all further processing of this key - case KC_SIRI: - if (record->event.pressed && siri_timer_buffer == 0) { - register_code(KC_LGUI); - register_code(KC_SPACE); - siri_timer_buffer = sync_timer_read32() | 1; - } - return false; // Skip all further processing of this key -#ifdef KC_BLUETOOTH_ENABLE - case BT_HST1 ... BT_HST3: - if (get_transport() == TRANSPORT_BLUETOOTH) { - if (record->event.pressed) { - host_idx = keycode - BT_HST1 + 1; - chVTSet(&pairing_key_timer, TIME_MS2I(2000), (vtfunc_t)pairing_key_timer_cb, &host_idx); - bluetooth_connect_ex(host_idx, 0); - } else { - host_idx = 0; - chVTReset(&pairing_key_timer); - } - } - break; - case BAT_LVL: - if (get_transport() == TRANSPORT_BLUETOOTH && !usb_power_connected()) { - bat_level_animiation_start(battery_get_percentage()); - } - break; -#endif - default: -#ifdef FACTORY_RESET_CHECK - FACTORY_RESET_CHECK(keycode, record); -#endif - break; - } - return true; -} - -#if defined(KC_BLUETOOTH_ENABLE) && defined(ENCODER_ENABLE) -static void encoder_pad_cb(void *param) { - encoder_inerrupt_read((uint32_t)param & 0XFF); -} -#endif - -void keyboard_post_init_kb(void) { - dip_switch_read(true); - -#ifdef KC_BLUETOOTH_ENABLE - /* Currently we don't use this reset pin */ - palSetLineMode(CKBT51_RESET_PIN, PAL_MODE_OUTPUT_PUSHPULL); - palWriteLine(CKBT51_RESET_PIN, PAL_HIGH); - - /* IMPORTANT: DO NOT enable internal pull-up resistor - * as there is an external pull-down resistor. - */ - palSetLineMode(USB_BT_MODE_SELECT_PIN, PAL_MODE_INPUT); - - ckbt51_init(false); - bluetooth_init(); - - power_on_indicator_timer_buffer = sync_timer_read32() | 1; - writePin(BAT_LOW_LED_PIN, BAT_LOW_LED_PIN_ON_STATE); - -# ifdef ENCODER_ENABLE - pin_t encoders_pad_a[NUM_ENCODERS] = ENCODERS_PAD_A; - pin_t encoders_pad_b[NUM_ENCODERS] = ENCODERS_PAD_B; - for (uint32_t i = 0; i < NUM_ENCODERS; i++) { - palEnableLineEvent(encoders_pad_a[i], PAL_EVENT_MODE_BOTH_EDGES); - palEnableLineEvent(encoders_pad_b[i], PAL_EVENT_MODE_BOTH_EDGES); - palSetLineCallback(encoders_pad_a[i], encoder_pad_cb, (void *)i); - palSetLineCallback(encoders_pad_b[i], encoder_pad_cb, (void *)i); - } -# endif -#endif - - keyboard_post_init_user(); -} - -void matrix_scan_kb(void) { - if (factory_timer_buffer && timer_elapsed32(factory_timer_buffer) > 2000) { - factory_timer_buffer = 0; - if (bt_factory_reset) { - bt_factory_reset = false; - palWriteLine(CKBT51_RESET_PIN, PAL_LOW); - wait_ms(5); - palWriteLine(CKBT51_RESET_PIN, PAL_HIGH); - } - } - - if (power_on_indicator_timer_buffer) { - if (sync_timer_elapsed32(power_on_indicator_timer_buffer) > POWER_ON_LED_DURATION) { - power_on_indicator_timer_buffer = 0; - writePin(BAT_LOW_LED_PIN, !BAT_LOW_LED_PIN_ON_STATE); - } else { - writePin(BAT_LOW_LED_PIN, BAT_LOW_LED_PIN_ON_STATE); - } - } - - if (siri_timer_buffer && sync_timer_elapsed32(siri_timer_buffer) > 500) { - siri_timer_buffer = 0; - unregister_code(KC_LGUI); - unregister_code(KC_SPACE); - } - -#ifdef FACTORY_RESET_TASK - FACTORY_RESET_TASK(); -#endif - matrix_scan_user(); -} - -#ifdef KC_BLUETOOTH_ENABLE -static void ckbt51_param_init(void) { - /* Set bluetooth device name */ - ckbt51_set_local_name(PRODUCT); - wait_ms(10); - /* Set bluetooth parameters */ - module_param_t param = {.event_mode = 0x02, - .connected_idle_timeout = 7200, - .pairing_timeout = 180, - .pairing_mode = 0, - .reconnect_timeout = 5, - .report_rate = 90, - .vendor_id_source = 1, - .verndor_id = 0, // Must be 0x3434 - .product_id = PRODUCT_ID}; - ckbt51_set_param(¶m); - wait_ms(10); -} - -void bluetooth_enter_disconnected_kb(uint8_t host_idx) { - if (bt_factory_reset) { - ckbt51_param_init(); - factory_timer_buffer = timer_read32(); - } - /* CKBT51 bluetooth module boot time is slower, it enters disconnected after boot, - so we place initialization here. */ - if (firstDisconnect && sync_timer_read32() < 1000 && get_transport() == TRANSPORT_BLUETOOTH) { - ckbt51_param_init(); - bluetooth_connect(); - firstDisconnect = false; - } -} - -void ckbt51_default_ack_handler(uint8_t *data, uint8_t len) { - if (data[1] == 0x45) { - module_param_t param = {.event_mode = 0x02, - .connected_idle_timeout = 7200, - .pairing_timeout = 180, - .pairing_mode = 0, - .reconnect_timeout = 5, - .report_rate = 90, - .vendor_id_source = 1, - .verndor_id = 0, // Must be 0x3434 - .product_id = PRODUCT_ID}; - ckbt51_set_param(¶m); - } -} - -void bluetooth_pre_task(void) { - static uint8_t mode = 1; - - if (readPin(USB_BT_MODE_SELECT_PIN) != mode) { - if (readPin(USB_BT_MODE_SELECT_PIN) != mode) { - mode = readPin(USB_BT_MODE_SELECT_PIN); - set_transport(mode == 0 ? TRANSPORT_BLUETOOTH : TRANSPORT_USB); - } - } -} -#endif - -void battery_calculte_voltage(uint16_t value) { - uint16_t voltage = ((uint32_t)value) * 2246 / 1000; - -#ifdef LED_MATRIX_ENABLE - if (led_matrix_is_enabled()) { - uint32_t totalBuf = 0; - - for (uint8_t i = 0; i < DRIVER_COUNT; i++) - for (uint8_t j = 0; j < 192; j++) - totalBuf += g_pwm_buffer[i][j]; - /* We assumpt it is linear relationship*/ - voltage += (30 * totalBuf / LED_MATRIX_LED_COUNT / 255); - } -#endif -#ifdef RGB_MATRIX_ENABLE - if (rgb_matrix_is_enabled()) { - uint32_t totalBuf = 0; - - for (uint8_t i = 0; i < DRIVER_COUNT; i++) - for (uint8_t j = 0; j < 192; j++) - totalBuf += g_pwm_buffer[i][j]; - /* We assumpt it is linear relationship*/ - uint32_t compensation = 60 * totalBuf / RGB_MATRIX_LED_COUNT / 255 / 3; - voltage += compensation; - } -#endif - battery_set_voltage(voltage); -} - -bool via_command_kb(uint8_t *data, uint8_t length) { - switch (data[0]) { -#ifdef KC_BLUETOOTH_ENABLE - case 0xAA: - ckbt51_dfu_rx(data, length); - break; -#endif -#ifdef ENABLE_FACTORY_TEST - case 0xAB: - factory_test_rx(data, length); - break; -#endif - default: - return false; - } - - return true; -} - -#if !defined(VIA_ENABLE) -void raw_hid_receive(uint8_t *data, uint8_t length) { - switch (data[0]) { - case RAW_HID_CMD: - via_command_kb(data, length); - break; - } -} -#endif diff --git a/keyboards/keychron/k15_pro/k15_pro.h b/keyboards/keychron/k15_pro/k15_pro.h deleted file mode 100644 index bc6e1effc8..0000000000 --- a/keyboards/keychron/k15_pro/k15_pro.h +++ /dev/null @@ -1,57 +0,0 @@ -/* 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 . - */ - -#pragma once - -#include "quantum.h" -#ifdef VIA_ENABLE -# include "via.h" -#endif - -#define ___ KC_NO -#define KC_MICT QK_KB_0 -#define KC_LAPA QK_KB_1 - -#ifdef VIA_ENABLE -# define USER_START QK_KB_2 -#else -# define USER_START SAFE_RANGE -#endif - -// clang-format off -enum { - KC_LOPTN = USER_START, - KC_ROPTN, - KC_LCMMD, - KC_RCMMD, - KC_TASK, - KC_FILE, - KC_SNAP, - KC_CTANA, - KC_SIRI, -#ifdef KC_BLUETOOTH_ENABLE - BT_HST1, - BT_HST2, - BT_HST3, - BAT_LVL, -#else - BT_HST1 = KC_TRNS, - BT_HST2 = KC_TRNS, - BT_HST3 = KC_TRNS, - BAT_LVL = KC_TRNS, -#endif - NEW_SAFE_RANGE -}; diff --git a/keyboards/keychron/k15_pro/mcuconf.h b/keyboards/keychron/k15_pro/mcuconf.h deleted file mode 100644 index 30b6109616..0000000000 --- a/keyboards/keychron/k15_pro/mcuconf.h +++ /dev/null @@ -1,39 +0,0 @@ -/* 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 - -/* Set HCLK to 48 MHz as tradeoff of USB lowest clockand and - * lower power comsumption for bluetooth. Will use dynamic - * clock when STM32L4 is supported in ChibiOS */ -#undef STM32_PLLM_VALUE -#define STM32_PLLM_VALUE 2 - -#undef STM32_PLLN_VALUE -#define STM32_PLLN_VALUE 12 - -#undef STM32_I2C_USE_I2C1 -#define STM32_I2C_USE_I2C1 TRUE - -#ifdef KC_BLUETOOTH_ENABLE -# undef STM32_SERIAL_USE_USART2 -# define STM32_SERIAL_USE_USART2 TRUE -#endif - - - diff --git a/keyboards/keychron/k15_pro/readme.md b/keyboards/keychron/k15_pro/readme.md deleted file mode 100644 index 9457cb5fb0..0000000000 --- a/keyboards/keychron/k15_pro/readme.md +++ /dev/null @@ -1,23 +0,0 @@ -# Keychron K15 Pro - -![Keychron K15 Pro](https://i.imgur.com/lto9s98.jpg) - -A customizable 75% ergonomic keyboard. - -* Keyboard Maintainer: [Keychron](https://github.com/keychron) -* Hardware Supported: Keychron K15 Pro -* Hardware Availability:[Keychron](https://www.keychron.com) - -Make example for this keyboard (after setting up your build environment): - - make keychron/k15_pro/ansi_encoder/rgb:default - make keychron/k15_pro/ansi_encoder/white:default - -Flashing example for this keyboard: - - make keychron/k15_pro/ansi_enoder/rgb:default:flash - make keychron/k15_pro/ansi_enoder/white:default:flash - -**Reset Key**: Connect the USB cable, toggle mode switch to "Off", hold down the *Esc* key or reset button underneath space bar, then toggle then switch to "Cable". - -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). diff --git a/keyboards/keychron/k15_pro/rules.mk b/keyboards/keychron/k15_pro/rules.mk deleted file mode 100644 index f995372f9c..0000000000 --- a/keyboards/keychron/k15_pro/rules.mk +++ /dev/null @@ -1,6 +0,0 @@ -# Enter lower-power sleep mode when on the ChibiOS idle thread -OPT_DEFS += -DCORTEX_ENABLE_WFI_IDLE=TRUE -OPT_DEFS += -DNO_USB_STARTUP_CHECK -DENABLE_FACTORY_TEST - -include keyboards/keychron/bluetooth/bluetooth.mk -include keyboards/keychron/common/common.mk diff --git a/keyboards/keychron/k15_pro/via_json/k15_pro_ansi_encoder_rgb.json b/keyboards/keychron/k15_pro/via_json/k15_pro_ansi_encoder_rgb.json deleted file mode 100644 index 565f222aa6..0000000000 --- a/keyboards/keychron/k15_pro/via_json/k15_pro_ansi_encoder_rgb.json +++ /dev/null @@ -1,396 +0,0 @@ -{ - "name": "Keychron K15 Pro ANSI knob RGB", - "vendorId": "0x3434", - "productId": "0x02F6", - "keycodes": ["qmk_lighting"], - "menus": [ - { - "label": "Lighting", - "content": [ - { - "label": "Backlight", - "content": [ - { - "label": "Brightness", - "type": "range", - "options": [0, 255], - "content": ["id_qmk_rgb_matrix_brightness", 3, 1] - }, - { - "label": "Effect", - "type": "dropdown", - "content": ["id_qmk_rgb_matrix_effect", 3, 2], - "options": [ - ["None", 0], - ["Solid Color", 1], - ["Breathing", 2], - ["Band Spiral Val", 3], - ["Cycle All", 4], - ["Cycle Left Right", 5], - ["Cycle Up Down", 6], - ["Rainbow Moving Chevron", 7], - ["Cycle Out In", 8], - ["Cycle Out In Dual", 9], - ["Cycle Pinwheel", 10], - ["Cycle Spiral", 11], - ["Dual Beacon", 12], - ["Rainbow Beacon", 13], - ["Jellybean Raindrops", 14], - ["Pixel Rain", 15], - ["Typing Heatmap", 16], - ["Digital Rain", 17], - ["Reactive Simple", 18], - ["Reactive Multiwide", 19], - ["Reactive Multinexus", 20], - ["Splash", 21], - ["Solid Splash", 22] - ] - }, - { - "showIf": "{id_qmk_rgb_matrix_effect} > 1", - "label": "Effect Speed", - "type": "range", - "options": [0, 255], - "content": ["id_qmk_rgb_matrix_effect_speed", 3, 3] - }, - { - "showIf": "{id_qmk_rgb_matrix_effect} != 0 && ( {id_qmk_rgb_matrix_effect} < 4 || {id_qmk_rgb_matrix_effect} == 18 || ({id_qmk_rgb_matrix_effect} > 17 && {id_qmk_rgb_matrix_effect} != 21) ) ", - "label": "Color", - "type": "color", - "content": ["id_qmk_rgb_matrix_color", 3, 4] - } - ] - } - ] - } - ], - "customKeycodes": [ - {"name": "Misson Control", "title": "Misson Control, availabe in macOS", "shortName": "MCtrl"}, - {"name": "Launch pad", "title": "Launch pad, availabe in macOS", "shortName": "LPad"}, - {"name": "Left Option", "title": "Left Option", "shortName": "LOpt"}, - {"name": "Right Option", "title": "Right Option", "shortName": "ROpt"}, - {"name": "Left Cmd", "title": "Left Command", "shortName": "LCmd"}, - {"name": "Right Cmd", "title": "Right Command", "shortName": "RCmd"}, - {"name": "Task View", "title": "Task View in Windows", "shortName": "Task"}, - {"name": "File Explorer", "title": "File Explorer in Windows", "shortName": "File"}, - {"name": "Screen shot", "title": "Screenshot in macOS", "shortName": "SShot"}, - {"name": "Cortana", "title": "Cortana in Windows", "shortName": "Cortana"}, - {"name": "Siri", "title": "Siri in macOS", "shortName": "Siri"}, - {"name": "Bluetooth Host 1", "title": "Bluetooth Host 1", "shortName": "BTH1"}, - {"name": "Bluetooth Host 2", "title": "Bluetooth Host 2", "shortName": "BTH2"}, - {"name": "Bluetooth Host 3", "title": "Bluetooth Host 3", "shortName": "BTH3"}, - {"name": "Battery Level", "title": "Show battery level", "shortName": "Batt"} - ], - "matrix": {"rows": 6, "cols": 16}, - "layouts": { - "keymap": [ - [ - { - "x": 0.5, - "c": "#aaaaaa" - }, - "0,0\n\n\n\n\n\n\n\n\ne0", - { - "x": 0.5, - "c": "#777777" - }, - "0,1\nESC", - { - "x": 0.25, - "c": "#cccccc" - }, - "0,2", - "0,3", - { - "x": 9.35 - }, - "0,12", - "0,13", - { - "x": 0.45, - "c": "#aaaaaa" - }, - "0,14", - { - "x": 0.45 - }, - "0,15" - ], - [ - { - "y": 0.25, - "x": 0.75 - }, - "1,0", - { - "x": 0.5 - }, - "1,1", - { - "c": "#cccccc" - }, - "1,2", - "1,3", - { - "x": 8.65 - }, - "1,12", - "1,13", - { - "c": "#aaaaaa", - "w": 2 - }, - "1,14", - { - "x": 0.6 - }, - "1,15" - ], - [ - { - "x": 0.5 - }, - "2,0", - { - "x": 0.5, - "w": 1.5 - }, - "2,1", - { - "c": "#cccccc" - }, - "2,2", - { - "x": 9.9 - }, - "2,12", - "2,13", - { - "c": "#aaaaaa", - "w": 1.75 - }, - "2,14", - { - "x": 0.5 - }, - "2,15" - ], - [ - { - "x": 0.25 - }, - "3,0", - { - "x": 0.5, - "w": 1.75 - }, - "3,1", - { - "c": "#cccccc" - }, - "3,2", - { - "x": 9.5 - }, - "3,12", - "3,13", - { - "c": "#777777", - "w": 2.25 - }, - "3,14", - { - "x": 0.5, - "c": "#aaaaaa" - }, - "3,15" - ], - [ - "4,0", - { - "x": 0.5, - "w": 2.25 - }, - "4,1", - { - "c": "#cccccc" - }, - "4,3", - { - "x": 9.75 - }, - "4,13", - { - "c": "#aaaaaa", - "w": 1.75 - }, - "4,14" - ], - [ - { - "y": -0.75, - "x": 17.5, - "c": "#777777" - }, - "4,15" - ], - [ - { - "y": -0.25, - "c": "#aaaaaa" - }, - "5,0", - { - "x": 0.5, - "w": 1.25 - }, - "5,1", - { - "w": 1.25 - }, - "5,2" - ], - [ - { - "y": -0.75, - "x": 16.5, - "c": "#777777" - }, - "5,13", - "5,14", - "5,15" - ], - [ - { - "r": 6, - "y": -7.05, - "x": 5.4, - "c": "#cccccc" - }, - "0,4", - "0,5", - { - "x": 0.25, - "c": "#aaaaaa" - }, - "0,6", - "0,7" - ], - [ - { - "y": 0.25, - "x": 5.55, - "c": "#cccccc" - }, - "1,4", - "1,5", - "1,6", - "1,7" - ], - [ - { - "x": 4.9 - }, - "2,3", - "2,4", - "2,5", - "2,6" - ], - [ - { - "x": 5 - }, - "3,3", - "3,4", - "3,5", - "3,7" - ], - [ - { - "x": 5.35 - }, - "4,4", - "4,5", - "4,6", - "4,7" - ], - [ - { - "x": 5.35, - "c": "#aaaaaa", - "w": 1.25 - }, - "5,3", - { - "w": 2.25 - }, - "5,5", - "5,7" - ], - [ - { - "r": -6, - "y": -4.25, - "x": 10.05 - }, - "0,8", - "0,9", - { - "x": 0.25, - "c": "#cccccc" - }, - "0,10", - "0,11" - ], - [ - { - "y": 0.25, - "x": 9.4 - }, - "1,8", - "1,9", - "1,10", - "1,11" - ], - [ - { - "x": 8.9 - }, - "2,7", - "2,8", - "2,9", - "2,10", - "2,11" - ], - [ - { - "x": 9.4 - }, - "3,8", - "3,9", - "3,10", - "3,11" - ], - [ - { - "x": 8.85 - }, - "4,8", - "4,9", - "4,10", - "4,11", - "4,12" - ], - [ - { - "x": 8.85, - "c": "#aaaaaa", - "w": 2.55 - }, - "5,9", - "5,10", - "5,11" - ] - ] - } -} diff --git a/keyboards/keychron/k15_pro/via_json/k15_pro_ansi_encoder_white.json b/keyboards/keychron/k15_pro/via_json/k15_pro_ansi_encoder_white.json deleted file mode 100644 index 8a59848c9a..0000000000 --- a/keyboards/keychron/k15_pro/via_json/k15_pro_ansi_encoder_white.json +++ /dev/null @@ -1,335 +0,0 @@ -{ - "name": "Keychron K15 Pro ANSI knob White", - "vendorId": "0x3434", - "productId": "0x02F9", - "keycodes": ["qmk_lighting"], - "customKeycodes": [ - {"name": "Misson Control", "title": "Misson Control, availabe in macOS", "shortName": "MCtrl"}, - {"name": "Launch pad", "title": "Launch pad, availabe in macOS", "shortName": "LPad"}, - {"name": "Left Option", "title": "Left Option", "shortName": "LOpt"}, - {"name": "Right Option", "title": "Right Option", "shortName": "ROpt"}, - {"name": "Left Cmd", "title": "Left Command", "shortName": "LCmd"}, - {"name": "Right Cmd", "title": "Right Command", "shortName": "RCmd"}, - {"name": "Task View", "title": "Task View in Windows", "shortName": "Task"}, - {"name": "File Explorer", "title": "File Explorer in Windows", "shortName": "File"}, - {"name": "Screen shot", "title": "Screenshot in macOS", "shortName": "SShot"}, - {"name": "Cortana", "title": "Cortana in Windows", "shortName": "Cortana"}, - {"name": "Siri", "title": "Siri in macOS", "shortName": "Siri"}, - {"name": "Bluetooth Host 1", "title": "Bluetooth Host 1", "shortName": "BTH1"}, - {"name": "Bluetooth Host 2", "title": "Bluetooth Host 2", "shortName": "BTH2"}, - {"name": "Bluetooth Host 3", "title": "Bluetooth Host 3", "shortName": "BTH3"}, - {"name": "Battery Level", "title": "Show battery level", "shortName": "Batt"} - ], - "matrix": {"rows": 6, "cols": 16}, - "layouts": { - "keymap": [ - [ - { - "x": 0.5, - "c": "#aaaaaa" - }, - "0,0\n\n\n\n\n\n\n\n\ne0", - { - "x": 0.5, - "c": "#777777" - }, - "0,1\nESC", - { - "x": 0.25, - "c": "#cccccc" - }, - "0,2", - "0,3", - { - "x": 9.35 - }, - "0,12", - "0,13", - { - "x": 0.45, - "c": "#aaaaaa" - }, - "0,14", - { - "x": 0.45 - }, - "0,15" - ], - [ - { - "y": 0.25, - "x": 0.75 - }, - "1,0", - { - "x": 0.5 - }, - "1,1", - { - "c": "#cccccc" - }, - "1,2", - "1,3", - { - "x": 8.65 - }, - "1,12", - "1,13", - { - "c": "#aaaaaa", - "w": 2 - }, - "1,14", - { - "x": 0.6 - }, - "1,15" - ], - [ - { - "x": 0.5 - }, - "2,0", - { - "x": 0.5, - "w": 1.5 - }, - "2,1", - { - "c": "#cccccc" - }, - "2,2", - { - "x": 9.9 - }, - "2,12", - "2,13", - { - "c": "#aaaaaa", - "w": 1.75 - }, - "2,14", - { - "x": 0.5 - }, - "2,15" - ], - [ - { - "x": 0.25 - }, - "3,0", - { - "x": 0.5, - "w": 1.75 - }, - "3,1", - { - "c": "#cccccc" - }, - "3,2", - { - "x": 9.5 - }, - "3,12", - "3,13", - { - "c": "#777777", - "w": 2.25 - }, - "3,14", - { - "x": 0.5, - "c": "#aaaaaa" - }, - "3,15" - ], - [ - "4,0", - { - "x": 0.5, - "w": 2.25 - }, - "4,1", - { - "c": "#cccccc" - }, - "4,3", - { - "x": 9.75 - }, - "4,13", - { - "c": "#aaaaaa", - "w": 1.75 - }, - "4,14" - ], - [ - { - "y": -0.75, - "x": 17.5, - "c": "#777777" - }, - "4,15" - ], - [ - { - "y": -0.25, - "c": "#aaaaaa" - }, - "5,0", - { - "x": 0.5, - "w": 1.25 - }, - "5,1", - { - "w": 1.25 - }, - "5,2" - ], - [ - { - "y": -0.75, - "x": 16.5, - "c": "#777777" - }, - "5,13", - "5,14", - "5,15" - ], - [ - { - "r": 6, - "y": -7.05, - "x": 5.4, - "c": "#cccccc" - }, - "0,4", - "0,5", - { - "x": 0.25, - "c": "#aaaaaa" - }, - "0,6", - "0,7" - ], - [ - { - "y": 0.25, - "x": 5.55, - "c": "#cccccc" - }, - "1,4", - "1,5", - "1,6", - "1,7" - ], - [ - { - "x": 4.9 - }, - "2,3", - "2,4", - "2,5", - "2,6" - ], - [ - { - "x": 5 - }, - "3,3", - "3,4", - "3,5", - "3,7" - ], - [ - { - "x": 5.35 - }, - "4,4", - "4,5", - "4,6", - "4,7" - ], - [ - { - "x": 5.35, - "c": "#aaaaaa", - "w": 1.25 - }, - "5,3", - { - "w": 2.25 - }, - "5,5", - "5,7" - ], - [ - { - "r": -6, - "y": -4.25, - "x": 10.05 - }, - "0,8", - "0,9", - { - "x": 0.25, - "c": "#cccccc" - }, - "0,10", - "0,11" - ], - [ - { - "y": 0.25, - "x": 9.4 - }, - "1,8", - "1,9", - "1,10", - "1,11" - ], - [ - { - "x": 8.9 - }, - "2,7", - "2,8", - "2,9", - "2,10", - "2,11" - ], - [ - { - "x": 9.4 - }, - "3,8", - "3,9", - "3,10", - "3,11" - ], - [ - { - "x": 8.85 - }, - "4,8", - "4,9", - "4,10", - "4,11", - "4,12" - ], - [ - { - "x": 8.85, - "c": "#aaaaaa", - "w": 2.55 - }, - "5,9", - "5,10", - "5,11" - ] - ] - } -} diff --git a/keyboards/keychron/k17_max/ansi_encoder/rgb/config.h b/keyboards/keychron/k17_max/ansi_encoder/rgb/config.h deleted file mode 100644 index 8f36bcb0f3..0000000000 --- a/keyboards/keychron/k17_max/ansi_encoder/rgb/config.h +++ /dev/null @@ -1,54 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#pragma once - -#ifdef RGB_MATRIX_ENABLE -/* RGB Matrix driver configuration */ -# define RGB_MATRIX_LED_COUNT 103 -# define DRIVER_COUNT 2 -# define DRIVER_CS_PINS \ - { B8, B9 } - -/* Scan phase of led driver set as MSKPHASE_12CHANNEL(defined as 0x03 in snled27351.h) */ -# define SNLED27351_PHASE_CHANNEL MSKPHASE_12CHANNEL -/* Set LED driver current */ -# define SNLED27351_CURRENT_TUNE \ - { 0x14, 0x14, 0x14, 0x14, 0x14, 0x14, 0x14, 0x14, 0x14, 0x14, 0x14, 0x14 } - -/* Set to infinit, which is use in USB mode by default */ -# define RGB_MATRIX_TIMEOUT RGB_MATRIX_TIMEOUT_INFINITE -/* Allow shutdown of led driver to save power */ -# define RGB_MATRIX_DRIVER_SHUTDOWN_ENABLE -/* Turn off backlight on low brightness to save power */ -# define RGB_MATRIX_BRIGHTNESS_TURN_OFF_VAL 48 - -/* Indications */ -# define CAPS_LOCK_INDEX 57 -# define NUM_LOCK_INDEX 34 -# define LOW_BAT_IND_INDEX \ - { 94 } -# define BT_HOST_LED_MATRIX_LIST \ - { 20, 21, 22 } -# define P2P4G_HOST_LED_MATRIX_LIST \ - { 23 } -# define BAT_LEVEL_LED_LIST \ - { 20, 21, 22, 23, 24, 25, 26, 27, 28, 29 } - -# define RGB_MATRIX_KEYPRESSES -# define RGB_MATRIX_FRAMEBUFFER_EFFECTS - -#endif diff --git a/keyboards/keychron/k17_max/ansi_encoder/rgb/info.json b/keyboards/keychron/k17_max/ansi_encoder/rgb/info.json deleted file mode 100644 index 233f029566..0000000000 --- a/keyboards/keychron/k17_max/ansi_encoder/rgb/info.json +++ /dev/null @@ -1,155 +0,0 @@ -{ - "usb": { - "pid": "0x0A00", - "device_version": "1.0.0" - }, - "features": { - "rgb_matrix": true - }, - "matrix_pins": { - "cols": ["C6", "C7", "C8", "A14", "A15", "C10", "C11", "C13", "C14", "C15", "C0", "C1", "C2", "C3", "A0", "A1", "A2", "A3", "C5", "B10"], - "rows": ["C12", "D2", "B3", "B4", "B5", "B6"] - }, - "layouts": { - "LAYOUT_104_ansi": { - "layout": [ - {"matrix":[0,0], "x":0, "y":0}, - {"matrix":[0,1], "x":1, "y":0}, - {"matrix":[0,2], "x":2, "y":0}, - {"matrix":[0,3], "x":3, "y":0}, - {"matrix":[0,4], "x":4, "y":0}, - {"matrix":[0,5], "x":5, "y":0}, - {"matrix":[0,6], "x":6, "y":0}, - {"matrix":[0,7], "x":7, "y":0}, - {"matrix":[0,8], "x":8, "y":0}, - {"matrix":[0,9], "x":9, "y":0}, - {"matrix":[0,10], "x":10, "y":0}, - {"matrix":[0,11], "x":11, "y":0}, - {"matrix":[0,12], "x":12, "y":0}, - {"matrix":[0,13], "x":13, "y":0}, - {"matrix":[0,14], "x":14, "y":0}, - {"matrix":[0,15], "x":15.25, "y":0}, - {"matrix":[0,16], "x":16.5, "y":0}, - {"matrix":[0,17], "x":17.5, "y":0}, - {"matrix":[0,18], "x":18.5, "y":0}, - {"matrix":[0,19], "x":19.5, "y":0}, - - {"matrix":[1,0], "x":0, "y":1.25}, - {"matrix":[1,1], "x":1, "y":1.25}, - {"matrix":[1,2], "x":2, "y":1.25}, - {"matrix":[1,3], "x":3, "y":1.25}, - {"matrix":[1,4], "x":4, "y":1.25}, - {"matrix":[1,5], "x":5, "y":1.25}, - {"matrix":[1,6], "x":6, "y":1.25}, - {"matrix":[1,7], "x":7, "y":1.25}, - {"matrix":[1,8], "x":8, "y":1.25}, - {"matrix":[1,9], "x":9, "y":1.25}, - {"matrix":[1,10], "x":10, "y":1.25}, - {"matrix":[1,11], "x":11, "y":1.25}, - {"matrix":[1,12], "x":12, "y":1.25}, - {"matrix":[1,14], "x":13, "y":1.25, "w":2}, - {"matrix":[1,15], "x":15.25, "y":1.25}, - {"matrix":[1,16], "x":16.5, "y":1.25}, - {"matrix":[1,17], "x":17.5, "y":1.25}, - {"matrix":[1,18], "x":18.5, "y":1.25}, - {"matrix":[1,19], "x":19.5, "y":1.25}, - - {"matrix":[2,0], "x":0, "y":2.25, "w":1.5}, - {"matrix":[2,1], "x":1.5, "y":2.25}, - {"matrix":[2,2], "x":2.5, "y":2.25}, - {"matrix":[2,3], "x":3.5, "y":2.25}, - {"matrix":[2,4], "x":4.5, "y":2.25}, - {"matrix":[2,5], "x":5.5, "y":2.25}, - {"matrix":[2,6], "x":6.5, "y":2.25}, - {"matrix":[2,7], "x":7.5, "y":2.25}, - {"matrix":[2,8], "x":8.5, "y":2.25}, - {"matrix":[2,9], "x":9.5, "y":2.25}, - {"matrix":[2,10], "x":10.5, "y":2.25}, - {"matrix":[2,11], "x":11.5, "y":2.25}, - {"matrix":[2,12], "x":12.5, "y":2.25}, - {"matrix":[2,14], "x":13.5, "y":2.25, "w":1.5}, - {"matrix":[2,15], "x":15.25, "y":2.25}, - {"matrix":[2,16], "x":16.5, "y":2.25}, - {"matrix":[2,17], "x":17.5, "y":2.25}, - {"matrix":[2,18], "x":18.5, "y":2.25}, - {"matrix":[2,19], "x":19.5, "y":2.25, "h":2}, - - {"matrix":[3,0], "x":0, "y":3.25, "w":1.75}, - {"matrix":[3,1], "x":1.75, "y":3.25}, - {"matrix":[3,2], "x":2.75, "y":3.25}, - {"matrix":[3,3], "x":3.75, "y":3.25}, - {"matrix":[3,4], "x":4.75, "y":3.25}, - {"matrix":[3,5], "x":5.75, "y":3.25}, - {"matrix":[3,6], "x":6.75, "y":3.25}, - {"matrix":[3,7], "x":7.75, "y":3.25}, - {"matrix":[3,8], "x":8.75, "y":3.25}, - {"matrix":[3,9], "x":9.75, "y":3.25}, - {"matrix":[3,10], "x":10.75, "y":3.25}, - {"matrix":[3,11], "x":11.75, "y":3.25}, - {"matrix":[3,13], "x":12.75, "y":3.25, "w":2.25}, - {"matrix":[3,15], "x":15.25, "y":3.25}, - {"matrix":[3,16], "x":16.5, "y":3.25}, - {"matrix":[3,17], "x":17.5, "y":3.25}, - {"matrix":[3,18], "x":18.5, "y":3.25}, - - {"matrix":[4,0], "x":0, "y":4.25, "w":2.25}, - {"matrix":[4,2], "x":2.25, "y":4.25}, - {"matrix":[4,3], "x":3.25, "y":4.25}, - {"matrix":[4,4], "x":4.25, "y":4.25}, - {"matrix":[4,5], "x":5.25, "y":4.25}, - {"matrix":[4,6], "x":6.25, "y":4.25}, - {"matrix":[4,7], "x":7.25, "y":4.25}, - {"matrix":[4,8], "x":8.25, "y":4.25}, - {"matrix":[4,9], "x":9.25, "y":4.25}, - {"matrix":[4,10], "x":10.25, "y":4.25}, - {"matrix":[4,11], "x":11.25, "y":4.25}, - {"matrix":[4,12], "x":12.25, "y":4.25, "w":1.75}, - {"matrix":[4,14], "x":14.25, "y":4.25}, - {"matrix":[4,16], "x":16.5, "y":4.25}, - {"matrix":[4,17], "x":17.5, "y":4.25}, - {"matrix":[4,18], "x":18.5, "y":4.25}, - {"matrix":[4,19], "x":19.5, "y":4.25, "h":2}, - - {"matrix":[5,0], "x":0, "y":5.25, "w":1.25}, - {"matrix":[5,1], "x":1.25, "y":5.25, "w":1.25}, - {"matrix":[5,2], "x":2.5, "y":5.25, "w":1.25}, - {"matrix":[5,6], "x":3.75, "y":5.25, "w":6.25}, - {"matrix":[5,10], "x":10, "y":5.25}, - {"matrix":[5,11], "x":11, "y":5.25}, - {"matrix":[5,12], "x":12, "y":5.25}, - {"matrix":[5,13], "x":13.25, "y":5.25}, - {"matrix":[5,14], "x":14.25, "y":5.25}, - {"matrix":[5,15], "x":15.25, "y":5.25}, - {"matrix":[5,16], "x":16.5, "y":5.25, "w":2}, - {"matrix":[5,18], "x":18.5, "y":5.25} - ] - } - }, - "rgb_matrix": { - "driver": "snled27351_spi", - "sleep": true, - "animations": { - "band_spiral_val": true, - "breathing": true, - "cycle_all": true, - "cycle_left_right": true, - "cycle_out_in": true, - "cycle_out_in_dual": true, - "cycle_pinwheel": true, - "cycle_spiral": true, - "cycle_up_down": true, - "digital_rain": true, - "dual_beacon": true, - "jellybean_raindrops": true, - "pixel_rain": true, - "rainbow_beacon": true, - "rainbow_moving_chevron": true, - "solid_reactive_multinexus": true, - "solid_reactive_multiwide": true, - "solid_reactive_simple": true, - "solid_splash": true, - "splash": true, - "typing_heatmap": true - } - } -} diff --git a/keyboards/keychron/k17_max/ansi_encoder/rgb/keymaps/default/keymap.c b/keyboards/keychron/k17_max/ansi_encoder/rgb/keymaps/default/keymap.c deleted file mode 100644 index 0587c2e1cd..0000000000 --- a/keyboards/keychron/k17_max/ansi_encoder/rgb/keymaps/default/keymap.c +++ /dev/null @@ -1,77 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#include QMK_KEYBOARD_H -#include "keychron_common.h" - -enum layers{ - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN, -}; - -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_104_ansi( - KC_ESC, KC_BRID, KC_BRIU, KC_MCTRL, KC_LNPAD, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_SNAP, RGB_MOD, KC_DEL, KC_F13, KC_F14, KC_F15, KC_MUTE, - KC_GRV, 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_PGUP, KC_NUM, KC_PSLS, KC_PAST, KC_PMNS, - 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_PGDN, KC_P7, KC_P8, KC_P9, KC_PPLS, - 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_HOME, KC_P4, KC_P5, KC_P6, - 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_P1, KC_P2, KC_P3, KC_PENT, - KC_LCTL, KC_LOPTN, KC_LCMMD, KC_SPC, KC_RCMMD, MO(MAC_FN), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT, KC_P0, KC_PDOT ), - - [MAC_FN] = LAYOUT_104_ansi( - _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, RGB_TOG, _______, _______, _______, _______, RGB_TOG, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, KC_END, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ), - - [WIN_BASE] = LAYOUT_104_ansi( - KC_ESC, 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_PSCR, RGB_MOD, KC_DEL, _______, _______, _______, KC_MUTE, - KC_GRV, 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_PGUP, KC_NUM, KC_PSLS, KC_PAST, KC_PMNS, - 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_PGDN, KC_P7, KC_P8, KC_P9, KC_PPLS, - 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_HOME, KC_P4, KC_P5, KC_P6, - 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_P1, KC_P2, KC_P3, KC_PENT, - KC_LCTL, KC_LWIN, KC_LALT, KC_SPC, KC_RALT, MO(WIN_FN), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT, KC_P0, KC_PDOT ), - - [WIN_FN] = LAYOUT_104_ansi( - _______, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, RGB_TOG, _______, _______, _______, _______, RGB_TOG, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, KC_END, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ), -}; - -#if defined(ENCODER_MAP_ENABLE) -const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][2] = { - [MAC_BASE] = {ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [MAC_FN] = {ENCODER_CCW_CW(RGB_VAD, RGB_VAI)}, - [WIN_BASE] = {ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [WIN_FN] = {ENCODER_CCW_CW(RGB_VAD, RGB_VAI)}, -}; -#endif - -// clang-format on -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - if (!process_record_keychron_common(keycode, record)) { - return false; - } - return true; -} diff --git a/keyboards/keychron/k17_max/ansi_encoder/rgb/keymaps/via/keymap.c b/keyboards/keychron/k17_max/ansi_encoder/rgb/keymaps/via/keymap.c deleted file mode 100644 index e97074bbda..0000000000 --- a/keyboards/keychron/k17_max/ansi_encoder/rgb/keymaps/via/keymap.c +++ /dev/null @@ -1,77 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#include QMK_KEYBOARD_H -#include "keychron_common.h" - -enum layers{ - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN, -}; - -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_104_ansi( - KC_ESC, KC_BRID, KC_BRIU, KC_MCTRL, KC_LNPAD, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_SNAP, RGB_MOD, KC_DEL, KC_F13, KC_F14, KC_F15, KC_MUTE, - KC_GRV, 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_PGUP, KC_NUM, KC_PSLS, KC_PAST, KC_PMNS, - 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_PGDN, KC_P7, KC_P8, KC_P9, KC_PPLS, - 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_HOME, KC_P4, KC_P5, KC_P6, - 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_P1, KC_P2, KC_P3, KC_PENT, - KC_LCTL, KC_LOPTN, KC_LCMMD, KC_SPC, KC_RCMMD, MO(MAC_FN), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT, KC_P0, KC_PDOT ), - - [MAC_FN] = LAYOUT_104_ansi( - _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, RGB_TOG, _______, _______, _______, _______, RGB_TOG, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, KC_END, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ), - - [WIN_BASE] = LAYOUT_104_ansi( - KC_ESC, 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_PSCR, RGB_MOD, KC_DEL, _______, _______, _______, KC_MUTE, - KC_GRV, 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_PGUP, KC_NUM, KC_PSLS, KC_PAST, KC_PMNS, - 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_PGDN, KC_P7, KC_P8, KC_P9, KC_PPLS, - 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_HOME, KC_P4, KC_P5, KC_P6, - 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_P1, KC_P2, KC_P3, KC_PENT, - KC_LCTL, KC_LWIN, KC_LALT, KC_SPC, KC_RALT, MO(WIN_FN), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT, KC_P0, KC_PDOT ), - - [WIN_FN] = LAYOUT_104_ansi( - _______, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, RGB_TOG, _______, _______, _______, _______, RGB_TOG, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, KC_END, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ), -}; - -#if defined(ENCODER_MAP_ENABLE) -const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][2] = { - [MAC_BASE] = {ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [MAC_FN] = {ENCODER_CCW_CW(RGB_VAD, RGB_VAI)}, - [WIN_BASE] = {ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [WIN_FN] = {ENCODER_CCW_CW(RGB_VAD, RGB_VAI)}, -}; -#endif - -// clang-format on -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - if (!process_record_keychron_common(keycode, record)) { - return false; - } - return true; -} diff --git a/keyboards/keychron/k17_max/ansi_encoder/rgb/keymaps/via/rules.mk b/keyboards/keychron/k17_max/ansi_encoder/rgb/keymaps/via/rules.mk deleted file mode 100644 index 1e5b99807c..0000000000 --- a/keyboards/keychron/k17_max/ansi_encoder/rgb/keymaps/via/rules.mk +++ /dev/null @@ -1 +0,0 @@ -VIA_ENABLE = yes diff --git a/keyboards/keychron/k17_max/ansi_encoder/rgb/rgb.c b/keyboards/keychron/k17_max/ansi_encoder/rgb/rgb.c deleted file mode 100644 index 3c7599fa29..0000000000 --- a/keyboards/keychron/k17_max/ansi_encoder/rgb/rgb.c +++ /dev/null @@ -1,169 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#include "quantum.h" - -// clang-format off -#ifdef RGB_MATRIX_ENABLE -const snled27351_led_t g_snled27351_leds[RGB_MATRIX_LED_COUNT] = { -/* Refer to SNLED27351 manual for these locations - * driver - * | R location - * | | G location - * | | | B location - * | | | | */ - {0, G_1, I_1, H_1}, - {0, G_2, I_2, H_2}, - {0, G_3, I_3, H_3}, - {0, G_4, I_4, H_4}, - {0, G_5, I_5, H_5}, - {0, G_6, I_6, H_6}, - {0, G_7, I_7, H_7}, - {0, G_8, I_8, H_8}, - {0, G_9, I_9, H_9}, - {0, G_10, I_10, H_10}, - {0, G_11, I_11, H_11}, - {0, G_12, I_12, H_12}, - {0, G_13, I_13, H_13}, - {0, G_14, I_14, H_14}, - {0, G_15, I_15, H_15}, - {0, G_16, I_16, H_16}, - {1, D_8, F_8, E_8}, - {1, D_9, F_9, E_9}, - {1, D_10, F_10, E_10}, - - {0, D_1, F_1, E_1}, - {0, D_2, F_2, E_2}, - {0, D_3, F_3, E_3}, - {0, D_4, F_4, E_4}, - {0, D_5, F_5, E_5}, - {0, D_6, F_6, E_6}, - {0, D_7, F_7, E_7}, - {0, D_8, F_8, E_8}, - {0, D_9, F_9, E_9}, - {0, D_10, F_10, E_10}, - {0, D_11, F_11, E_11}, - {0, D_12, F_12, E_12}, - {0, D_13, F_13, E_13}, - {0, D_15, F_15, E_15}, - {0, D_16, F_16, E_16}, - {0, J_7, L_7, K_7}, - {0, J_8, L_8, K_8}, - {0, J_9, L_9, K_9}, - {0, J_10, L_10, K_10}, - - {0, C_1, A_1, B_1}, - {0, C_2, A_2, B_2}, - {0, C_3, A_3, B_3}, - {0, C_4, A_4, B_4}, - {0, C_5, A_5, B_5}, - {0, C_6, A_6, B_6}, - {0, C_7, A_7, B_7}, - {0, C_8, A_8, B_8}, - {0, C_9, A_9, B_9}, - {0, C_10, A_10, B_10}, - {0, C_11, A_11, B_11}, - {0, C_12, A_12, B_12}, - {0, C_13, A_13, B_13}, - {0, C_15, A_15, B_15}, - {0, C_16, A_16, B_16}, - {0, J_12, L_12, K_12}, - {0, J_13, L_13, K_13}, - {0, J_14, L_14, K_14}, - {0, J_15, L_15, K_15}, - - {1, G_1, I_1, H_1}, - {1, G_2, I_2, H_2}, - {1, G_3, I_3, H_3}, - {1, G_4, I_4, H_4}, - {1, G_5, I_5, H_5}, - {1, G_6, I_6, H_6}, - {1, G_7, I_7, H_7}, - {1, G_8, I_8, H_8}, - {1, G_9, I_9, H_9}, - {1, G_10, I_10, H_10}, - {1, G_11, I_11, H_11}, - {1, G_12, I_12, H_12}, - {1, G_14, I_14, H_14}, - {1, G_16, I_16, H_16}, - {1, J_7, L_7, K_7}, - {1, J_8, L_8, K_8}, - {1, J_9, L_9, K_9}, - - {1, A_1, C_1, B_1}, - {1, A_3, C_3, B_3}, - {1, A_4, C_4, B_4}, - {1, A_5, C_5, B_5}, - {1, A_6, C_6, B_6}, - {1, A_7, C_7, B_7}, - {1, A_8, C_8, B_8}, - {1, A_9, C_9, B_9}, - {1, A_10, C_10, B_10}, - {1, A_11, C_11, B_11}, - {1, A_12, C_12, B_12}, - {1, A_13, C_13, B_13}, - {1, A_15, C_15, B_15}, - {1, J_10, L_10, K_10}, - {1, J_11, L_11, K_11}, - {1, J_12, L_12, K_12}, - {1, J_13, L_13, K_13}, - - {1, D_1, F_1, E_1}, - {1, D_2, F_2, E_2}, - {1, D_3, F_3, E_3}, - {1, D_7, F_7, E_7}, - {1, D_11, F_11, E_11}, - {1, D_12, F_12, E_12}, - {1, D_13, F_13, E_13}, - {1, D_14, F_14, E_14}, - {1, D_15, F_15, E_15}, - {1, D_16, F_16, E_16}, - {1, J_14, L_14, K_14}, - {1, J_16, L_16, K_16} -}; - -#define __ NO_LED - -led_config_t g_led_config = { - { - // Key Matrix to RGB Index - { 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, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, __, 51, 52, 53, 54, 55, 56 }, - { 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, __, 69, __, 70, 71, 72, 73, __ }, - { 74, __, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, __, 86, __, 87, 88, 89, 90 }, - { 91, 92, 93, __, __, __, 94, __, __, __, 95, 96, 97, 98, 99,100,101,__, 102, __ }, - }, - { - // RGB Index to Physical Position - {0, 0}, {12, 0}, {24, 0}, {36, 0}, {48, 0}, {60, 0}, {72, 0}, {84, 0}, {96, 0}, {108, 0}, {120, 0}, {132, 0}, {144, 0}, {156, 0}, {168, 0}, {180, 0},{192, 0},{203, 0},{213, 0}, - {0,13}, {12,13}, {24,13}, {36,13}, {48,13}, {60,13}, {72,13}, {84,13}, {96,13}, {108,13}, {120,13}, {132,13}, {144,13}, {162,13}, {180,13},{192,13},{203,13},{213,13},{224,13}, - {2,26}, {18,26}, {30,26}, {42,26}, {54,26}, {66,26}, {78,26}, {90,26}, {102,26},{114,26}, {126,26}, {138,26}, {150,26}, {164,26}, {180,26},{192,26},{203,26},{213,26},{224,32}, - {4,39}, {22,39}, {34,39}, {46,39}, {58,39}, {70,39}, {82,39}, {94,39}, {106,39},{118,39}, {130,39}, {142,39}, {163,39}, {180,39},{192,39},{203,39},{213,39}, - {8,51}, {28,51}, {40,51}, {52,51}, {64,51}, {76,51}, {88,51}, {100,51},{112,51}, {124,51}, {136,51}, {148,51}, {168,51}, {192,51},{203,51},{213,51},{224,57}, - {1,64}, {16,64}, {30,64}, {78,64}, {120,64}, {132,64}, {144,64}, {156,64}, {168,64}, {180,64},{197,64}, {213,64}, - }, - { - // RGB Index to Flag - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - } -}; -#endif diff --git a/keyboards/keychron/k17_max/ansi_encoder/rgb/rules.mk b/keyboards/keychron/k17_max/ansi_encoder/rgb/rules.mk deleted file mode 100644 index 6e7633bfe0..0000000000 --- a/keyboards/keychron/k17_max/ansi_encoder/rgb/rules.mk +++ /dev/null @@ -1 +0,0 @@ -# This file intentionally left blank diff --git a/keyboards/keychron/k17_max/ansi_encoder/white/config.h b/keyboards/keychron/k17_max/ansi_encoder/white/config.h deleted file mode 100644 index 9c8ed0a112..0000000000 --- a/keyboards/keychron/k17_max/ansi_encoder/white/config.h +++ /dev/null @@ -1,53 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#pragma once - -#ifdef LED_MATRIX_ENABLE -/* LED Matrix driver configuration */ -# define LED_MATRIX_LED_COUNT 103 -# define DRIVER_COUNT 1 -# define DRIVER_CS_PINS \ - { B9 } - -/* Scan phase of led driver set as MSKPHASE_8CHANNEL(defined as 0x03 in snled27351.h) */ -# define SNLED27351_PHASE_CHANNEL MSKPHASE_8CHANNEL -/* Set LED driver current */ -# define SNLED27351_CURRENT_TUNE \ - { 0x2A, 0x2A, 0x2A, 0x2A, 0x2A, 0x2A, 0x2A, 0x2A, 0x2A, 0x2A, 0x2A, 0x2A } - -/* Set to infinit, which is use in USB mode by default */ -# define LED_MATRIX_TIMEOUT LED_MATRIX_TIMEOUT_INFINITE - -/* Allow shutdown of led driver to save power */ -# define LED_MATRIX_DRIVER_SHUTDOWN_ENABLE -/* Turn off backlight on low brightness to save power */ -# define LED_MATRIX_BRIGHTNESS_TURN_OFF_VAL 48 - -/* Indications */ -# define DIM_CAPS_LOCK -# define CAPS_LOCK_INDEX 57 -# define LOW_BAT_IND_INDEX \ - { 94 } -# define BT_HOST_LED_MATRIX_LIST \ - { 20, 21, 22 } -# define P2P4G_HOST_LED_MATRIX_LIST \ - { 23 } -# define BAT_LEVEL_LED_LIST \ - { 20, 21, 22, 23, 24, 25, 26, 27, 28, 29 } - -# define LED_MATRIX_KEYPRESSES -#endif diff --git a/keyboards/keychron/k17_max/ansi_encoder/white/info.json b/keyboards/keychron/k17_max/ansi_encoder/white/info.json deleted file mode 100644 index 9fffeb4ff2..0000000000 --- a/keyboards/keychron/k17_max/ansi_encoder/white/info.json +++ /dev/null @@ -1,154 +0,0 @@ -{ - "usb": { - "pid": "0x0A03", - "device_version": "1.0.0" - }, - "features": { - "led_matrix": true - }, - "indicators": { - "caps_lock": "A13", - "num_lock": "B10", - "on_state": 1 - }, - "matrix_pins": { - "cols": ["C6", "C7", "C8", "A14", "A15", "C10", "C11", "C13", "C14", "C15", "C0", "C1", "C2", "C3", "A0", "A1", "A2", "A3", "C5", "B10"], - "rows": ["C12", "D2", "B3", "B4", "B5", "B6"] - }, - "layouts": { - "LAYOUT_104_ansi": { - "layout": [ - {"matrix":[0,0], "x":0, "y":0}, - {"matrix":[0,1], "x":1, "y":0}, - {"matrix":[0,2], "x":2, "y":0}, - {"matrix":[0,3], "x":3, "y":0}, - {"matrix":[0,4], "x":4, "y":0}, - {"matrix":[0,5], "x":5, "y":0}, - {"matrix":[0,6], "x":6, "y":0}, - {"matrix":[0,7], "x":7, "y":0}, - {"matrix":[0,8], "x":8, "y":0}, - {"matrix":[0,9], "x":9, "y":0}, - {"matrix":[0,10], "x":10, "y":0}, - {"matrix":[0,11], "x":11, "y":0}, - {"matrix":[0,12], "x":12, "y":0}, - {"matrix":[0,13], "x":13, "y":0}, - {"matrix":[0,14], "x":14, "y":0}, - {"matrix":[0,15], "x":15.25, "y":0}, - {"matrix":[0,16], "x":16.5, "y":0}, - {"matrix":[0,17], "x":17.5, "y":0}, - {"matrix":[0,18], "x":18.5, "y":0}, - {"matrix":[0,19], "x":19.5, "y":0}, - - {"matrix":[1,0], "x":0, "y":1.25}, - {"matrix":[1,1], "x":1, "y":1.25}, - {"matrix":[1,2], "x":2, "y":1.25}, - {"matrix":[1,3], "x":3, "y":1.25}, - {"matrix":[1,4], "x":4, "y":1.25}, - {"matrix":[1,5], "x":5, "y":1.25}, - {"matrix":[1,6], "x":6, "y":1.25}, - {"matrix":[1,7], "x":7, "y":1.25}, - {"matrix":[1,8], "x":8, "y":1.25}, - {"matrix":[1,9], "x":9, "y":1.25}, - {"matrix":[1,10], "x":10, "y":1.25}, - {"matrix":[1,11], "x":11, "y":1.25}, - {"matrix":[1,12], "x":12, "y":1.25}, - {"matrix":[1,14], "x":13, "y":1.25, "w":2}, - {"matrix":[1,15], "x":15.25, "y":1.25}, - {"matrix":[1,16], "x":16.5, "y":1.25}, - {"matrix":[1,17], "x":17.5, "y":1.25}, - {"matrix":[1,18], "x":18.5, "y":1.25}, - {"matrix":[1,19], "x":19.5, "y":1.25}, - - {"matrix":[2,0], "x":0, "y":2.25, "w":1.5}, - {"matrix":[2,1], "x":1.5, "y":2.25}, - {"matrix":[2,2], "x":2.5, "y":2.25}, - {"matrix":[2,3], "x":3.5, "y":2.25}, - {"matrix":[2,4], "x":4.5, "y":2.25}, - {"matrix":[2,5], "x":5.5, "y":2.25}, - {"matrix":[2,6], "x":6.5, "y":2.25}, - {"matrix":[2,7], "x":7.5, "y":2.25}, - {"matrix":[2,8], "x":8.5, "y":2.25}, - {"matrix":[2,9], "x":9.5, "y":2.25}, - {"matrix":[2,10], "x":10.5, "y":2.25}, - {"matrix":[2,11], "x":11.5, "y":2.25}, - {"matrix":[2,12], "x":12.5, "y":2.25}, - {"matrix":[2,14], "x":13.5, "y":2.25, "w":1.5}, - {"matrix":[2,15], "x":15.25, "y":2.25}, - {"matrix":[2,16], "x":16.5, "y":2.25}, - {"matrix":[2,17], "x":17.5, "y":2.25}, - {"matrix":[2,18], "x":18.5, "y":2.25}, - {"matrix":[2,19], "x":19.5, "y":2.25, "h":2}, - - {"matrix":[3,0], "x":0, "y":3.25, "w":1.75}, - {"matrix":[3,1], "x":1.75, "y":3.25}, - {"matrix":[3,2], "x":2.75, "y":3.25}, - {"matrix":[3,3], "x":3.75, "y":3.25}, - {"matrix":[3,4], "x":4.75, "y":3.25}, - {"matrix":[3,5], "x":5.75, "y":3.25}, - {"matrix":[3,6], "x":6.75, "y":3.25}, - {"matrix":[3,7], "x":7.75, "y":3.25}, - {"matrix":[3,8], "x":8.75, "y":3.25}, - {"matrix":[3,9], "x":9.75, "y":3.25}, - {"matrix":[3,10], "x":10.75, "y":3.25}, - {"matrix":[3,11], "x":11.75, "y":3.25}, - {"matrix":[3,13], "x":12.75, "y":3.25, "w":2.25}, - {"matrix":[3,15], "x":15.25, "y":3.25}, - {"matrix":[3,16], "x":16.5, "y":3.25}, - {"matrix":[3,17], "x":17.5, "y":3.25}, - {"matrix":[3,18], "x":18.5, "y":3.25}, - - {"matrix":[4,0], "x":0, "y":4.25, "w":2.25}, - {"matrix":[4,2], "x":2.25, "y":4.25}, - {"matrix":[4,3], "x":3.25, "y":4.25}, - {"matrix":[4,4], "x":4.25, "y":4.25}, - {"matrix":[4,5], "x":5.25, "y":4.25}, - {"matrix":[4,6], "x":6.25, "y":4.25}, - {"matrix":[4,7], "x":7.25, "y":4.25}, - {"matrix":[4,8], "x":8.25, "y":4.25}, - {"matrix":[4,9], "x":9.25, "y":4.25}, - {"matrix":[4,10], "x":10.25, "y":4.25}, - {"matrix":[4,11], "x":11.25, "y":4.25}, - {"matrix":[4,12], "x":12.25, "y":4.25, "w":1.75}, - {"matrix":[4,14], "x":14.25, "y":4.25}, - {"matrix":[4,16], "x":16.5, "y":4.25}, - {"matrix":[4,17], "x":17.5, "y":4.25}, - {"matrix":[4,18], "x":18.5, "y":4.25}, - {"matrix":[4,19], "x":19.5, "y":4.25, "h":2}, - - {"matrix":[5,0], "x":0, "y":5.25, "w":1.25}, - {"matrix":[5,1], "x":1.25, "y":5.25, "w":1.25}, - {"matrix":[5,2], "x":2.5, "y":5.25, "w":1.25}, - {"matrix":[5,6], "x":3.75, "y":5.25, "w":6.25}, - {"matrix":[5,10], "x":10, "y":5.25}, - {"matrix":[5,11], "x":11, "y":5.25}, - {"matrix":[5,12], "x":12, "y":5.25}, - {"matrix":[5,13], "x":13.25, "y":5.25}, - {"matrix":[5,14], "x":14.25, "y":5.25}, - {"matrix":[5,15], "x":15.25, "y":5.25}, - {"matrix":[5,16], "x":16.5, "y":5.25, "w":2}, - {"matrix":[5,18], "x":18.5, "y":5.25} - ] - } - }, - "led_matrix": { - "driver": "snled27351_spi", - "sleep": true, - "animations": { - "none": true, - "solid": true, - "breathing": true, - "band_pinwheel": true, - "band_spiral": true, - "cycle_left_right": true, - "cycle_up_down": true, - "cycle_out_in": true, - "dual_beacon": true, - "solid_reactive_simple": true, - "solid_reactive_multiwide": true, - "solid_reactive_multinexus": true, - "solid_splash": true, - "wave_left_right": true, - "wave_up_down": true - } - } -} diff --git a/keyboards/keychron/k17_max/ansi_encoder/white/keymaps/default/keymap.c b/keyboards/keychron/k17_max/ansi_encoder/white/keymaps/default/keymap.c deleted file mode 100644 index 61ced7bff9..0000000000 --- a/keyboards/keychron/k17_max/ansi_encoder/white/keymaps/default/keymap.c +++ /dev/null @@ -1,77 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#include QMK_KEYBOARD_H -#include "keychron_common.h" - -enum layers{ - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN, -}; - -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_104_ansi( - KC_ESC, KC_BRID, KC_BRIU, KC_MCTRL, KC_LNPAD, BL_DOWN, BL_UP, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_SNAP, BL_STEP, KC_DEL, KC_F13, KC_F14, KC_F15, KC_MUTE, - KC_GRV, 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_PGUP, KC_NUM, KC_PSLS, KC_PAST, KC_PMNS, - 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_PGDN, KC_P7, KC_P8, KC_P9, KC_PPLS, - 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_HOME, KC_P4, KC_P5, KC_P6, - 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_P1, KC_P2, KC_P3, KC_PENT, - KC_LCTL, KC_LOPTN, KC_LCMMD, KC_SPC, KC_RCMMD, MO(MAC_FN), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT, KC_P0, KC_PDOT ), - - [MAC_FN] = LAYOUT_104_ansi( - _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, BL_TOGG, _______, _______, _______, _______, BL_TOGG, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - BL_TOGG, BL_STEP, BL_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, BL_DOWN, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_END, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ), - - [WIN_BASE] = LAYOUT_104_ansi( - KC_ESC, 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_PSCR, BL_STEP, KC_DEL, _______, _______, _______, KC_MUTE, - KC_GRV, 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_PGUP, KC_NUM, KC_PSLS, KC_PAST, KC_PMNS, - 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_PGDN, KC_P7, KC_P8, KC_P9, KC_PPLS, - 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_HOME, KC_P4, KC_P5, KC_P6, - 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_P1, KC_P2, KC_P3, KC_PENT, - KC_LCTL, KC_LWIN, KC_LALT, KC_SPC, KC_RALT, MO(WIN_FN), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT, KC_P0, KC_PDOT ), - - [WIN_FN] = LAYOUT_104_ansi( - _______, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, BL_DOWN, BL_UP, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, BL_TOGG, _______, _______, _______, _______, BL_TOGG, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - BL_TOGG, BL_STEP, BL_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, BL_DOWN, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_END, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ), -}; - -#if defined(ENCODER_MAP_ENABLE) -const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][2] = { - [MAC_BASE] = {ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [MAC_FN] = {ENCODER_CCW_CW(BL_DOWN, BL_UP)}, - [WIN_BASE] = {ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [WIN_FN] = {ENCODER_CCW_CW(BL_DOWN, BL_UP)}, -}; -#endif - -// clang-format on -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - if (!process_record_keychron_common(keycode, record)) { - return false; - } - return true; -} diff --git a/keyboards/keychron/k17_max/ansi_encoder/white/keymaps/via/keymap.c b/keyboards/keychron/k17_max/ansi_encoder/white/keymaps/via/keymap.c deleted file mode 100644 index 6b6f014564..0000000000 --- a/keyboards/keychron/k17_max/ansi_encoder/white/keymaps/via/keymap.c +++ /dev/null @@ -1,77 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#include QMK_KEYBOARD_H -#include "keychron_common.h" - -enum layers{ - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN, -}; - -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_104_ansi( - KC_ESC, KC_BRID, KC_BRIU, KC_MCTRL, KC_LNPAD, BL_DOWN, BL_UP, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_SNAP, BL_STEP, KC_DEL, KC_F13, KC_F14, KC_F15, KC_MUTE, - KC_GRV, 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_PGUP, KC_NUM, KC_PSLS, KC_PAST, KC_PMNS, - 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_PGDN, KC_P7, KC_P8, KC_P9, KC_PPLS, - 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_HOME, KC_P4, KC_P5, KC_P6, - 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_P1, KC_P2, KC_P3, KC_PENT, - KC_LCTL, KC_LOPTN, KC_LCMMD, KC_SPC, KC_RCMMD, MO(MAC_FN), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT, KC_P0, KC_PDOT ), - - [MAC_FN] = LAYOUT_104_ansi( - _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, BL_TOGG, _______, _______, _______, _______, BL_TOGG, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - BL_TOGG, BL_STEP, BL_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, BL_DOWN, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_END, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ), - - [WIN_BASE] = LAYOUT_104_ansi( - KC_ESC, 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_PSCR, BL_STEP, KC_DEL, _______, _______, _______, KC_MUTE, - KC_GRV, 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_PGUP, KC_NUM, KC_PSLS, KC_PAST, KC_PMNS, - 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_PGDN, KC_P7, KC_P8, KC_P9, KC_PPLS, - 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_HOME, KC_P4, KC_P5, KC_P6, - 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_P1, KC_P2, KC_P3, KC_PENT, - KC_LCTL, KC_LWIN, KC_LALT, KC_SPC, KC_RALT, MO(WIN_FN), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT, KC_P0, KC_PDOT ), - - [WIN_FN] = LAYOUT_104_ansi( - _______, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, BL_DOWN, BL_UP, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, BL_TOGG, _______, _______, _______, _______, BL_TOGG, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - BL_TOGG, BL_STEP, BL_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, BL_DOWN, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_END, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ), -}; - -#if defined(ENCODER_MAP_ENABLE) -const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][2] = { - [MAC_BASE] = {ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [MAC_FN] = {ENCODER_CCW_CW(BL_DOWN, BL_UP)}, - [WIN_BASE] = {ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [WIN_FN] = {ENCODER_CCW_CW(BL_DOWN, BL_UP)}, -}; -#endif - -// clang-format on -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - if (!process_record_keychron_common(keycode, record)) { - return false; - } - return true; -} diff --git a/keyboards/keychron/k17_max/ansi_encoder/white/keymaps/via/rules.mk b/keyboards/keychron/k17_max/ansi_encoder/white/keymaps/via/rules.mk deleted file mode 100644 index 1e5b99807c..0000000000 --- a/keyboards/keychron/k17_max/ansi_encoder/white/keymaps/via/rules.mk +++ /dev/null @@ -1 +0,0 @@ -VIA_ENABLE = yes diff --git a/keyboards/keychron/k17_max/ansi_encoder/white/rules.mk b/keyboards/keychron/k17_max/ansi_encoder/white/rules.mk deleted file mode 100644 index 6e7633bfe0..0000000000 --- a/keyboards/keychron/k17_max/ansi_encoder/white/rules.mk +++ /dev/null @@ -1 +0,0 @@ -# This file intentionally left blank diff --git a/keyboards/keychron/k17_max/ansi_encoder/white/white.c b/keyboards/keychron/k17_max/ansi_encoder/white/white.c deleted file mode 100644 index d79b5d15bd..0000000000 --- a/keyboards/keychron/k17_max/ansi_encoder/white/white.c +++ /dev/null @@ -1,168 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#include "quantum.h" - -// clang-format off -#ifdef LED_MATRIX_ENABLE -const snled27351_led_t g_snled27351_leds[LED_MATRIX_LED_COUNT] = { -/* Refer to SNLED27351 manual for these locations - * driver - * | LED address - * | | */ - {0, F_1}, - {0, F_2}, - {0, F_3}, - {0, F_4}, - {0, F_5}, - {0, F_6}, - {0, F_7}, - {0, F_8}, - {0, F_9}, - {0, F_10}, - {0, F_11}, - {0, F_12}, - {0, F_13}, - {0, F_14}, - {0, F_15}, - {0, F_16}, - {0, A_8}, - {0, A_9}, - {0, A_10}, - - {0, E_1}, - {0, E_2}, - {0, E_3}, - {0, E_4}, - {0, E_5}, - {0, E_6}, - {0, E_7}, - {0, E_8}, - {0, E_9}, - {0, E_10}, - {0, E_11}, - {0, E_12}, - {0, E_13}, - {0, E_15}, - {0, E_16}, - {0, H_7}, - {0, H_8}, - {0, H_9}, - {0, H_10}, - - {0, D_1}, - {0, D_2}, - {0, D_3}, - {0, D_4}, - {0, D_5}, - {0, D_6}, - {0, D_7}, - {0, D_8}, - {0, D_9}, - {0, D_10}, - {0, D_11}, - {0, D_12}, - {0, D_13}, - {0, D_15}, - {0, D_16}, - {0, H_12}, - {0, H_13}, - {0, H_14}, - {0, H_15}, - - {0, C_1}, - {0, C_2}, - {0, C_3}, - {0, C_4}, - {0, C_5}, - {0, C_6}, - {0, C_7}, - {0, C_8}, - {0, C_9}, - {0, C_10}, - {0, C_11}, - {0, C_12}, - {0, C_14}, - {0, C_16}, - {0, G_7}, - {0, G_8}, - {0, G_9}, - - {0, B_1}, - {0, B_3}, - {0, B_4}, - {0, B_5}, - {0, B_6}, - {0, B_7}, - {0, B_8}, - {0, B_9}, - {0, B_10}, - {0, B_11}, - {0, B_12}, - {0, B_13}, - {0, B_15}, - {0, G_10}, - {0, G_11}, - {0, G_12}, - {0, G_13}, - - {0, A_1}, - {0, A_2}, - {0, A_3}, - {0, A_7}, - {0, A_11}, - {0, A_12}, - {0, A_13}, - {0, A_14}, - {0, A_15}, - {0, A_16}, - {0, G_14}, - {0, G_16}, - -}; - -#define __ NO_LED - -led_config_t g_led_config = { - { - // Key Matrix to LED Index - { 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, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, __, 51, 52, 53, 54, 55, 56 }, - { 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, __, 69, __, 70, 71, 72, 73, __ }, - { 74, __, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, __, 86, __, 87, 88, 89, 90 }, - { 91, 92, 93, __, __, __, 94, __, __, __, 95, 96, 97, 98, 99,100,101,__, 102, __ }, - }, - { - // LED Index to Physical Position - {0, 0}, {12, 0}, {24, 0}, {36, 0}, {48, 0}, {60, 0}, {72, 0}, {84, 0}, {96, 0}, {108, 0}, {120, 0}, {132, 0}, {144, 0}, {156, 0}, {168, 0}, {180, 0},{192, 0},{203, 0},{213, 0}, - {0,13}, {12,13}, {24,13}, {36,13}, {48,13}, {60,13}, {72,13}, {84,13}, {96,13}, {108,13}, {120,13}, {132,13}, {144,13}, {162,13}, {180,13},{192,13},{203,13},{213,13},{224,13}, - {2,26}, {18,26}, {30,26}, {42,26}, {54,26}, {66,26}, {78,26}, {90,26}, {102,26},{114,26}, {126,26}, {138,26}, {150,26}, {164,26}, {180,26},{192,26},{203,26},{213,26},{224,32}, - {4,39}, {22,39}, {34,39}, {46,39}, {58,39}, {70,39}, {82,39}, {94,39}, {106,39},{118,39}, {130,39}, {142,39}, {163,39}, {180,39},{192,39},{203,39},{213,39}, - {8,51}, {28,51}, {40,51}, {52,51}, {64,51}, {76,51}, {88,51}, {100,51},{112,51}, {124,51}, {136,51}, {148,51}, {168,51}, {192,51},{203,51},{213,51},{224,57}, - {1,64}, {16,64}, {30,64}, {78,64}, {120,64}, {132,64}, {144,64}, {156,64}, {168,64}, {180,64},{197,64}, {213,64}, - }, - { - // LED Index to Flag - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - } -}; -#endif diff --git a/keyboards/keychron/k17_max/board.h b/keyboards/keychron/k17_max/board.h deleted file mode 100644 index 1ed65145a4..0000000000 --- a/keyboards/keychron/k17_max/board.h +++ /dev/null @@ -1,226 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#pragma once - -#include_next - -// clang-format off - -/* Set GPIOA_SWDIO to INPUT and NOT FLOATING */ -#undef VAL_GPIOA_MODER -#define VAL_GPIOA_MODER (PIN_MODE_INPUT(GPIOA_BUTTON) | \ - PIN_MODE_INPUT(GPIOA_PIN1) | \ - PIN_MODE_INPUT(GPIOA_PIN2) | \ - PIN_MODE_INPUT(GPIOA_PIN3) | \ - PIN_MODE_ALTERNATE(GPIOA_CS43L22_LRCK) |\ - PIN_MODE_ALTERNATE(GPIOA_L3GD20_SCL) | \ - PIN_MODE_ALTERNATE(GPIOA_L3GD20_SD0) | \ - PIN_MODE_ALTERNATE(GPIOA_L3GD20_SDI) | \ - PIN_MODE_INPUT(GPIOA_PIN8) | \ - PIN_MODE_INPUT(GPIOA_VBUS_FS) | \ - PIN_MODE_ALTERNATE(GPIOA_OTG_FS_ID) | \ - PIN_MODE_ALTERNATE(GPIOA_OTG_FS_DM) | \ - PIN_MODE_ALTERNATE(GPIOA_OTG_FS_DP) | \ - PIN_MODE_INPUT(GPIOA_SWDIO) | \ - PIN_MODE_INPUT(GPIOA_SWCLK) | \ - PIN_MODE_INPUT(GPIOA_PIN15)) - -#undef VAL_GPIOA_PUPDR -#define VAL_GPIOA_PUPDR (PIN_PUPDR_FLOATING(GPIOA_BUTTON) | \ - PIN_PUPDR_PULLUP(GPIOA_PIN1) | \ - PIN_PUPDR_PULLUP(GPIOA_PIN2) | \ - PIN_PUPDR_PULLUP(GPIOA_PIN3) | \ - PIN_PUPDR_FLOATING(GPIOA_CS43L22_LRCK) |\ - PIN_PUPDR_FLOATING(GPIOA_L3GD20_SCL) | \ - PIN_PUPDR_PULLUP(GPIOA_L3GD20_SD0) | \ - PIN_PUPDR_PULLUP(GPIOA_L3GD20_SDI) | \ - PIN_PUPDR_PULLUP(GPIOA_PIN8) | \ - PIN_PUPDR_FLOATING(GPIOA_VBUS_FS) | \ - PIN_PUPDR_FLOATING(GPIOA_OTG_FS_ID) | \ - PIN_PUPDR_FLOATING(GPIOA_OTG_FS_DM) | \ - PIN_PUPDR_FLOATING(GPIOA_OTG_FS_DP) | \ - PIN_PUPDR_PULLUP(GPIOA_SWDIO) | \ - PIN_PUPDR_PULLUP(GPIOA_SWCLK) | \ - PIN_PUPDR_PULLUP(GPIOA_PIN15)) - -#undef VAL_GPIOB_MODER -#define VAL_GPIOB_MODER (PIN_MODE_INPUT(GPIOB_PIN0) | \ - PIN_MODE_INPUT(GPIOB_PIN1) | \ - PIN_MODE_INPUT(GPIOB_PIN2) | \ - PIN_MODE_INPUT(GPIOB_SWO) | \ - PIN_MODE_INPUT(GPIOB_PIN4) | \ - PIN_MODE_INPUT(GPIOB_PIN5) | \ - PIN_MODE_INPUT(GPIOB_LSM303DLHC_SCL) | \ - PIN_MODE_INPUT(GPIOB_PIN7) | \ - PIN_MODE_INPUT(GPIOB_PIN8) | \ - PIN_MODE_INPUT(GPIOB_LSM303DLHC_SDA) | \ - PIN_MODE_INPUT(GPIOB_MP45DT02_CLK_IN) |\ - PIN_MODE_INPUT(GPIOB_PIN11) | \ - PIN_MODE_INPUT(GPIOB_PIN12) | \ - PIN_MODE_INPUT(GPIOB_PIN13) | \ - PIN_MODE_INPUT(GPIOB_PIN14) | \ - PIN_MODE_INPUT(GPIOB_PIN15)) - -#undef VAL_GPIOB_PUPDR -#define VAL_GPIOB_PUPDR (PIN_PUPDR_PULLDOWN(GPIOB_PIN0) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN1) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN2) | \ - PIN_PUPDR_PULLDOWN(GPIOB_SWO) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN4) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN5) | \ - PIN_PUPDR_PULLDOWN(GPIOB_LSM303DLHC_SCL) |\ - PIN_PUPDR_PULLDOWN(GPIOB_PIN7) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN8) | \ - PIN_PUPDR_PULLDOWN(GPIOB_LSM303DLHC_SDA) |\ - PIN_PUPDR_PULLDOWN(GPIOB_MP45DT02_CLK_IN) |\ - PIN_PUPDR_PULLDOWN(GPIOB_PIN11) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN12) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN13) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN14) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN15)) - -#undef VAL_GPIOB_AFRL -#define VAL_GPIOB_AFRL (PIN_AFIO_AF(GPIOB_PIN0, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN1, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN2, 0U) | \ - PIN_AFIO_AF(GPIOB_SWO, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN4, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN5, 0U) | \ - PIN_AFIO_AF(GPIOB_LSM303DLHC_SCL, 0) | \ - PIN_AFIO_AF(GPIOB_PIN7, 0U)) - -#undef VAL_GPIOB_AFRH -#define VAL_GPIOB_AFRH (PIN_AFIO_AF(GPIOB_PIN8, 0U) | \ - PIN_AFIO_AF(GPIOB_LSM303DLHC_SDA, 0) | \ - PIN_AFIO_AF(GPIOB_MP45DT02_CLK_IN, 0U) |\ - PIN_AFIO_AF(GPIOB_PIN11, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN12, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN13, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN14, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN15, 0U)) - -/* C5 Need to be pulldown */ -#undef VAL_GPIOC_MODER -#define VAL_GPIOC_MODER (PIN_MODE_INPUT(GPIOC_OTG_FS_POWER_ON) |\ - PIN_MODE_INPUT(GPIOC_PIN1) | \ - PIN_MODE_INPUT(GPIOC_PIN2) | \ - PIN_MODE_INPUT(GPIOC_CS43L22_AIN4x) | \ - PIN_MODE_INPUT(GPIOC_PIN4) | \ - PIN_MODE_INPUT(GPIOC_PIN5) | \ - PIN_MODE_INPUT(GPIOC_PIN6) | \ - PIN_MODE_INPUT(GPIOC_CS43L22_MCLK) | \ - PIN_MODE_INPUT(GPIOC_PIN8) | \ - PIN_MODE_INPUT(GPIOC_PIN9) | \ - PIN_MODE_INPUT(GPIOC_CS43L22_SCLK) | \ - PIN_MODE_INPUT(GPIOC_PIN11) | \ - PIN_MODE_INPUT(GPIOC_CS43L22_SDIN) | \ - PIN_MODE_INPUT(GPIOC_PIN13) | \ - PIN_MODE_INPUT(GPIOC_OSC32_IN) | \ - PIN_MODE_INPUT(GPIOC_OSC32_OUT)) - -#undef VAL_GPIOC_PUPDR -#define VAL_GPIOC_PUPDR (PIN_PUPDR_PULLUP(GPIOC_OTG_FS_POWER_ON) |\ - PIN_PUPDR_PULLUP(GPIOC_PIN1) | \ - PIN_PUPDR_PULLUP(GPIOC_PIN2) | \ - PIN_PUPDR_PULLUP(GPIOC_CS43L22_AIN4x) |\ - PIN_PUPDR_PULLUP(GPIOC_PIN4) | \ - PIN_PUPDR_PULLDOWN(GPIOC_PIN5) | \ - PIN_PUPDR_PULLUP(GPIOC_PIN6) | \ - PIN_PUPDR_PULLUP(GPIOC_CS43L22_MCLK) | \ - PIN_PUPDR_PULLDOWN(GPIOC_PIN8) | \ - PIN_PUPDR_PULLUP(GPIOC_PIN9) | \ - PIN_PUPDR_PULLUP(GPIOC_CS43L22_SCLK) | \ - PIN_PUPDR_PULLUP(GPIOC_PIN11) | \ - PIN_PUPDR_PULLUP(GPIOC_CS43L22_SDIN) | \ - PIN_PUPDR_PULLUP(GPIOC_PIN13) | \ - PIN_PUPDR_PULLUP(GPIOC_OSC32_IN) | \ - PIN_PUPDR_PULLUP(GPIOC_OSC32_OUT)) - -/* Set all GPIOD pins to INPUT & PULLUP to avoid FLOATING */ -#undef VAL_GPIOD_MODER -#define VAL_GPIOD_MODER (PIN_MODE_INPUT(GPIOD_PIN0) | \ - PIN_MODE_INPUT(GPIOD_PIN1) | \ - PIN_MODE_INPUT(GPIOD_PIN2) | \ - PIN_MODE_INPUT(GPIOD_PIN3) | \ - PIN_MODE_INPUT(GPIOD_CS43L22_RESET) | \ - PIN_MODE_INPUT(GPIOD_OverCurrent) | \ - PIN_MODE_INPUT(GPIOD_PIN6) | \ - PIN_MODE_INPUT(GPIOD_PIN7) | \ - PIN_MODE_INPUT(GPIOD_PIN8) | \ - PIN_MODE_INPUT(GPIOD_PIN9) | \ - PIN_MODE_INPUT(GPIOD_PIN10) | \ - PIN_MODE_INPUT(GPIOD_PIN11) | \ - PIN_MODE_INPUT(GPIOD_LED4) | \ - PIN_MODE_INPUT(GPIOD_LED3) | \ - PIN_MODE_INPUT(GPIOD_LED5) | \ - PIN_MODE_INPUT(GPIOD_LED6)) - -#undef VAL_GPIOD_PUPDR -#define VAL_GPIOD_PUPDR (PIN_PUPDR_PULLUP(GPIOD_PIN0) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN1) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN2) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN3) | \ - PIN_PUPDR_PULLUP(GPIOD_CS43L22_RESET) |\ - PIN_PUPDR_PULLUP(GPIOD_OverCurrent) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN6) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN7) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN8) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN9) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN10) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN11) | \ - PIN_PUPDR_PULLUP(GPIOD_LED4) | \ - PIN_PUPDR_PULLUP(GPIOD_LED3) | \ - PIN_PUPDR_PULLUP(GPIOD_LED5) | \ - PIN_PUPDR_PULLUP(GPIOD_LED6)) - -/* Set all GPIOE pins to INPUT & PULLUP to avoid FLOATING */ -#undef VAL_GPIOE_MODER -#define VAL_GPIOE_MODER (PIN_MODE_INPUT(GPIOE_L3GD20_INT1) | \ - PIN_MODE_INPUT(GPIOE_L3GD20_INT2) | \ - PIN_MODE_INPUT(GPIOE_LSM303DLHC_DRDY) |\ - PIN_MODE_INPUT(GPIOE_L3GD20_CS) | \ - PIN_MODE_INPUT(GPIOE_LSM303DLHC_INT1) |\ - PIN_MODE_INPUT(GPIOE_LSM303DLHC_INT2) |\ - PIN_MODE_INPUT(GPIOE_PIN6) | \ - PIN_MODE_INPUT(GPIOE_PIN7) | \ - PIN_MODE_INPUT(GPIOE_PIN8) | \ - PIN_MODE_INPUT(GPIOE_PIN9) | \ - PIN_MODE_INPUT(GPIOE_PIN10) | \ - PIN_MODE_INPUT(GPIOE_PIN11) | \ - PIN_MODE_INPUT(GPIOE_PIN12) | \ - PIN_MODE_INPUT(GPIOE_PIN13) | \ - PIN_MODE_INPUT(GPIOE_PIN14) | \ - PIN_MODE_INPUT(GPIOE_PIN15)) - -#undef VAL_GPIOE_PUPDR -#define VAL_GPIOE_PUPDR (PIN_PUPDR_PULLUP(GPIOE_L3GD20_INT1) | \ - PIN_PUPDR_PULLUP(GPIOE_L3GD20_INT2) | \ - PIN_PUPDR_PULLUP(GPIOE_LSM303DLHC_DRDY) |\ - PIN_PUPDR_PULLUP(GPIOE_L3GD20_CS) | \ - PIN_PUPDR_PULLUP(GPIOE_LSM303DLHC_INT1) |\ - PIN_PUPDR_PULLUP(GPIOE_LSM303DLHC_INT2) |\ - PIN_PUPDR_PULLUP(GPIOE_PIN6) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN7) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN8) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN9) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN10) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN11) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN12) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN13) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN14) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN15)) - diff --git a/keyboards/keychron/k17_max/config.h b/keyboards/keychron/k17_max/config.h deleted file mode 100644 index 71fc6bd6f3..0000000000 --- a/keyboards/keychron/k17_max/config.h +++ /dev/null @@ -1,81 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#pragma once -/* Encoder Configuration */ -#define ENCODER_DEFAULT_POS 0x3 -#define ENCODER_MAP_KEY_DELAY 2 - -#if defined(RGB_MATRIX_ENABLE) || defined(LED_MATRIX_ENABLE) || defined(LK_WIRELESS_ENABLE) -/* SPI configuration */ -# define SPI_DRIVER SPID1 -# define SPI_SCK_PIN A5 -# define SPI_MISO_PIN A6 -# define SPI_MOSI_PIN A7 -#endif - -#if defined(RGB_MATRIX_ENABLE) || defined(LED_MATRIX_ENABLE) -# define LED_DRIVER_SHUTDOWN_PIN B7 -# define SNLED23751_SPI_DIVISOR 16 -#endif - -#ifdef LK_WIRELESS_ENABLE -/* Hardware configuration */ -# define P2P4_MODE_SELECT_PIN A10 -# define BT_MODE_SELECT_PIN A9 - -# define LKBT51_RESET_PIN C4 -# define LKBT51_INT_INPUT_PIN B1 -# define BLUETOOTH_INT_OUTPUT_PIN A4 - -# define USB_POWER_SENSE_PIN B0 -# define USB_POWER_CONNECTED_LEVEL 0 - -# define BAT_CHARGING_PIN B13 -# define BAT_CHARGING_LEVEL 0 - -# define BAT_LOW_LED_PIN B12 -# define BAT_LOW_LED_PIN_ON_STATE 1 - -# define BT_HOST_DEVICES_COUNT 3 - -# if defined(RGB_MATRIX_ENABLE) || defined(LED_MATRIX_ENABLE) - -/* 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 - -/* Reinit LED driver on tranport changed */ -# define REINIT_LED_DRIVER 1 -# endif - -/* Keep USB connection in blueooth mode */ -# define KEEP_USB_CONNECTION_IN_WIRELESS_MODE - -/* Enable bluetooth NKRO */ -# define WIRELESS_NKRO_ENABLE - -#endif - -/* Factory test keys */ -#define FN_KEY_1 MO(1) -#define FN_KEY_2 MO(3) - -#define FN_BL_TRIG_KEY KC_END - -#define MATRIX_IO_DELAY 10 diff --git a/keyboards/keychron/k17_max/halconf.h b/keyboards/keychron/k17_max/halconf.h deleted file mode 100644 index 37bcc7c47b..0000000000 --- a/keyboards/keychron/k17_max/halconf.h +++ /dev/null @@ -1,31 +0,0 @@ -/* Copyright 2024 @ 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 - -#define _CHIBIOS_HAL_CONF_VER_8_0_ - -#define HAL_USE_SPI TRUE - -#ifdef LK_WIRELESS_ENABLE -# define HAL_USE_RTC TRUE -#endif - -#if defined(LK_WIRELESS_ENABLE) || defined(ENCODER_ENABLE) -# define PAL_USE_CALLBACKS TRUE -#endif - -#include_next diff --git a/keyboards/keychron/k17_max/info.json b/keyboards/keychron/k17_max/info.json deleted file mode 100644 index e7a5c52f9d..0000000000 --- a/keyboards/keychron/k17_max/info.json +++ /dev/null @@ -1,44 +0,0 @@ -{ - "keyboard_name": "Keychron K17 Max", - "manufacturer": "Keychron", - "url": "https://github.com/Keychron", - "maintainer": "Keychron", - "processor": "STM32F401", - "bootloader": "stm32-dfu", - "usb": { - "vid": "0x3434" - }, - "features": { - "bootmagic": true, - "extrakey": true, - "mousekey": true, - "dip_switch": true, - "encoder": true, - "encoder_map": true, - "nkro": true, - "raw": true, - "send_string": true - }, - "diode_direction": "ROW2COL", - "dip_switch": { - "pins": ["B14"] - }, - "eeprom": { - "wear_leveling": { - "driver": "embedded_flash", - "logical_size": 2048, - "backing_size": 4096 - } - }, - "encoder": { - "rotary": [ - { - "pin_a": "A8", - "pin_b": "C9" - } - ] - }, - "dynamic_keymap": { - "layer_count": 4 - } -} diff --git a/keyboards/keychron/k17_max/iso_encoder/rgb/config.h b/keyboards/keychron/k17_max/iso_encoder/rgb/config.h deleted file mode 100644 index 97cc5c9b03..0000000000 --- a/keyboards/keychron/k17_max/iso_encoder/rgb/config.h +++ /dev/null @@ -1,54 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#pragma once - -#ifdef RGB_MATRIX_ENABLE -/* RGB Matrix driver configuration */ -# define RGB_MATRIX_LED_COUNT 104 -# define DRIVER_COUNT 2 -# define DRIVER_CS_PINS \ - { B8, B9 } - -/* Scan phase of led driver set as MSKPHASE_12CHANNEL(defined as 0x03 in snled27351.h) */ -# define SNLED27351_PHASE_CHANNEL MSKPHASE_12CHANNEL -/* Set LED driver current */ -# define SNLED27351_CURRENT_TUNE \ - { 0x14, 0x14, 0x14, 0x14, 0x14, 0x14, 0x14, 0x14, 0x14, 0x14, 0x14, 0x14 } - -/* Set to infinit, which is use in USB mode by default */ -# define RGB_MATRIX_TIMEOUT RGB_MATRIX_TIMEOUT_INFINITE -/* Allow shutdown of led driver to save power */ -# define RGB_MATRIX_DRIVER_SHUTDOWN_ENABLE -/* Turn off backlight on low brightness to save power */ -# define RGB_MATRIX_BRIGHTNESS_TURN_OFF_VAL 48 - -/* Indications */ -# define CAPS_LOCK_INDEX 57 -# define NUM_LOCK_INDEX 34 -# define LOW_BAT_IND_INDEX \ - { 95 } -# define BT_HOST_LED_MATRIX_LIST \ - { 20, 21, 22 } -# define P2P4G_HOST_LED_MATRIX_LIST \ - { 23 } -# define BAT_LEVEL_LED_LIST \ - { 20, 21, 22, 23, 24, 25, 26, 27, 28, 29 } - -# define RGB_MATRIX_KEYPRESSES -# define RGB_MATRIX_FRAMEBUFFER_EFFECTS - -#endif diff --git a/keyboards/keychron/k17_max/iso_encoder/rgb/info.json b/keyboards/keychron/k17_max/iso_encoder/rgb/info.json deleted file mode 100644 index 3a1c5fb3db..0000000000 --- a/keyboards/keychron/k17_max/iso_encoder/rgb/info.json +++ /dev/null @@ -1,156 +0,0 @@ -{ - "usb": { - "pid": "0x0A01", - "device_version": "1.0.0" - }, - "features": { - "rgb_matrix": true - }, - "matrix_pins": { - "cols": ["C6", "C7", "C8", "A14", "A15", "C10", "C11", "C13", "C14", "C15", "C0", "C1", "C2", "C3", "A0", "A1", "A2", "A3", "C5", "B10"], - "rows": ["C12", "D2", "B3", "B4", "B5", "B6"] - }, - "layouts":{ - "LAYOUT_105_iso": { - "layout": [ - {"matrix":[0,0], "x":0, "y":0}, - {"matrix":[0,1], "x":1, "y":0}, - {"matrix":[0,2], "x":2, "y":0}, - {"matrix":[0,3], "x":3, "y":0}, - {"matrix":[0,4], "x":4, "y":0}, - {"matrix":[0,5], "x":5, "y":0}, - {"matrix":[0,6], "x":6, "y":0}, - {"matrix":[0,7], "x":7, "y":0}, - {"matrix":[0,8], "x":8, "y":0}, - {"matrix":[0,9], "x":9, "y":0}, - {"matrix":[0,10], "x":10, "y":0}, - {"matrix":[0,11], "x":11, "y":0}, - {"matrix":[0,12], "x":12, "y":0}, - {"matrix":[0,13], "x":13, "y":0}, - {"matrix":[0,14], "x":14, "y":0}, - {"matrix":[0,15], "x":15.25, "y":0}, - {"matrix":[0,16], "x":16.5, "y":0}, - {"matrix":[0,17], "x":17.5, "y":0}, - {"matrix":[0,18], "x":18.5, "y":0}, - {"matrix":[0,19], "x":19.5, "y":0}, - - {"matrix":[1,0], "x":0, "y":1.25}, - {"matrix":[1,1], "x":1, "y":1.25}, - {"matrix":[1,2], "x":2, "y":1.25}, - {"matrix":[1,3], "x":3, "y":1.25}, - {"matrix":[1,4], "x":4, "y":1.25}, - {"matrix":[1,5], "x":5, "y":1.25}, - {"matrix":[1,6], "x":6, "y":1.25}, - {"matrix":[1,7], "x":7, "y":1.25}, - {"matrix":[1,8], "x":8, "y":1.25}, - {"matrix":[1,9], "x":9, "y":1.25}, - {"matrix":[1,10], "x":10, "y":1.25}, - {"matrix":[1,11], "x":11, "y":1.25}, - {"matrix":[1,12], "x":12, "y":1.25}, - {"matrix":[1,14], "x":13, "y":1.25, "w":2}, - {"matrix":[1,15], "x":15.25, "y":1.25}, - {"matrix":[1,16], "x":16.5, "y":1.25}, - {"matrix":[1,17], "x":17.5, "y":1.25}, - {"matrix":[1,18], "x":18.5, "y":1.25}, - {"matrix":[1,19], "x":19.5, "y":1.25}, - - {"matrix":[2,0], "x":0, "y":2.25, "w":1.5}, - {"matrix":[2,1], "x":1.5, "y":2.25}, - {"matrix":[2,2], "x":2.5, "y":2.25}, - {"matrix":[2,3], "x":3.5, "y":2.25}, - {"matrix":[2,4], "x":4.5, "y":2.25}, - {"matrix":[2,5], "x":5.5, "y":2.25}, - {"matrix":[2,6], "x":6.5, "y":2.25}, - {"matrix":[2,7], "x":7.5, "y":2.25}, - {"matrix":[2,8], "x":8.5, "y":2.25}, - {"matrix":[2,9], "x":9.5, "y":2.25}, - {"matrix":[2,10], "x":10.5, "y":2.25}, - {"matrix":[2,11], "x":11.5, "y":2.25}, - {"matrix":[2,12], "x":12.5, "y":2.25}, - {"matrix":[2,15], "x":15.25, "y":2.25}, - {"matrix":[2,16], "x":16.5, "y":2.25}, - {"matrix":[2,17], "x":17.5, "y":2.25}, - {"matrix":[2,18], "x":18.5, "y":2.25}, - {"matrix":[2,19], "x":19.5, "y":2.25, "h":2}, - - {"matrix":[3,0], "x":0, "y":3.25, "w":1.75}, - {"matrix":[3,1], "x":1.75, "y":3.25}, - {"matrix":[3,2], "x":2.75, "y":3.25}, - {"matrix":[3,3], "x":3.75, "y":3.25}, - {"matrix":[3,4], "x":4.75, "y":3.25}, - {"matrix":[3,5], "x":5.75, "y":3.25}, - {"matrix":[3,6], "x":6.75, "y":3.25}, - {"matrix":[3,7], "x":7.75, "y":3.25}, - {"matrix":[3,8], "x":8.75, "y":3.25}, - {"matrix":[3,9], "x":9.75, "y":3.25}, - {"matrix":[3,10], "x":10.75, "y":3.25}, - {"matrix":[3,11], "x":11.75, "y":3.25}, - {"matrix":[3,13], "x":12.75, "y":3.25}, - {"matrix":[2,14], "x":13.75, "y":2.25, "w":1.25, "h": 2}, - {"matrix":[3,15], "x":15.25, "y":3.25}, - {"matrix":[3,16], "x":16.5, "y":3.25}, - {"matrix":[3,17], "x":17.5, "y":3.25}, - {"matrix":[3,18], "x":18.5, "y":3.25}, - - {"matrix":[4,0], "x":0, "y":4.25, "w":1.25}, - {"matrix":[4,1], "x":1.25, "y":4.25}, - {"matrix":[4,2], "x":2.25, "y":4.25}, - {"matrix":[4,3], "x":3.25, "y":4.25}, - {"matrix":[4,4], "x":4.25, "y":4.25}, - {"matrix":[4,5], "x":5.25, "y":4.25}, - {"matrix":[4,6], "x":6.25, "y":4.25}, - {"matrix":[4,7], "x":7.25, "y":4.25}, - {"matrix":[4,8], "x":8.25, "y":4.25}, - {"matrix":[4,9], "x":9.25, "y":4.25}, - {"matrix":[4,10], "x":10.25, "y":4.25}, - {"matrix":[4,11], "x":11.25, "y":4.25}, - {"matrix":[4,12], "x":12.25, "y":4.25, "w":1.75}, - {"matrix":[4,14], "x":14.25, "y":4.25}, - {"matrix":[4,16], "x":16.5, "y":4.25}, - {"matrix":[4,17], "x":17.5, "y":4.25}, - {"matrix":[4,18], "x":18.5, "y":4.25}, - {"matrix":[4,19], "x":19.5, "y":4.25, "h":2}, - - {"matrix":[5,0], "x":0, "y":5.25, "w":1.25}, - {"matrix":[5,1], "x":1.25, "y":5.25, "w":1.25}, - {"matrix":[5,2], "x":2.5, "y":5.25, "w":1.25}, - {"matrix":[5,6], "x":3.75, "y":5.25, "w":6.25}, - {"matrix":[5,10], "x":10, "y":5.25}, - {"matrix":[5,11], "x":11, "y":5.25}, - {"matrix":[5,12], "x":12, "y":5.25}, - {"matrix":[5,13], "x":13.25, "y":5.25}, - {"matrix":[5,14], "x":14.25, "y":5.25}, - {"matrix":[5,15], "x":15.25, "y":5.25}, - {"matrix":[5,16], "x":16.5, "y":5.25, "w":2}, - {"matrix":[5,18], "x":18.5, "y":5.25} - ] - } - }, - "rgb_matrix": { - "driver": "snled27351_spi", - "sleep": true, - "animations": { - "band_spiral_val": true, - "breathing": true, - "cycle_all": true, - "cycle_left_right": true, - "cycle_out_in": true, - "cycle_out_in_dual": true, - "cycle_pinwheel": true, - "cycle_spiral": true, - "cycle_up_down": true, - "digital_rain": true, - "dual_beacon": true, - "jellybean_raindrops": true, - "pixel_rain": true, - "rainbow_beacon": true, - "rainbow_moving_chevron": true, - "solid_reactive_multinexus": true, - "solid_reactive_multiwide": true, - "solid_reactive_simple": true, - "solid_splash": true, - "splash": true, - "typing_heatmap": true - } - } -} diff --git a/keyboards/keychron/k17_max/iso_encoder/rgb/keymaps/default/keymap.c b/keyboards/keychron/k17_max/iso_encoder/rgb/keymaps/default/keymap.c deleted file mode 100644 index 931dc23d2e..0000000000 --- a/keyboards/keychron/k17_max/iso_encoder/rgb/keymaps/default/keymap.c +++ /dev/null @@ -1,74 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#include QMK_KEYBOARD_H -#include "keychron_common.h" - -enum layers{ - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN, -}; - -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_105_iso( - KC_ESC, KC_BRID, KC_BRIU, KC_MCTRL, KC_LNPAD, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_SNAP, RGB_MOD, KC_DEL, KC_F13, KC_F14, KC_F15, KC_MUTE, - KC_GRV, 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_PGUP, KC_NUM, KC_PSLS, KC_PAST, KC_PMNS, - 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_PGDN, KC_P7, KC_P8, KC_P9, KC_PPLS, - 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_NUHS, KC_ENT, KC_HOME, KC_P4, KC_P5, KC_P6, - KC_LSFT, KC_NUBS, 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_P1, KC_P2, KC_P3, KC_PENT, - KC_LCTL, KC_LOPTN, KC_LCMMD, KC_SPC, KC_RCMMD, MO(MAC_FN), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT, KC_P0, KC_PDOT ), - [MAC_FN] = LAYOUT_105_iso( - _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, RGB_TOG, _______, _______, _______, _______, RGB_TOG, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, KC_END, _______, _______, _______, - _______, _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ), - [WIN_BASE] = LAYOUT_105_iso( - KC_ESC, 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_PSCR, RGB_MOD, KC_DEL, _______, _______, _______, KC_MUTE, - KC_GRV, 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_PGUP, KC_NUM, KC_PSLS, KC_PAST, KC_PMNS, - 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_PGDN, KC_P7, KC_P8, KC_P9, KC_PPLS, - 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_NUHS, KC_ENT, KC_HOME, KC_P4, KC_P5, KC_P6, - KC_LSFT, KC_NUBS, 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_P1, KC_P2, KC_P3, KC_PENT, - KC_LCTL, KC_LWIN, KC_LALT, KC_SPC, KC_RALT, MO(WIN_FN), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT, KC_P0, KC_PDOT ), - [WIN_FN] = LAYOUT_105_iso( - _______, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, RGB_TOG, _______, _______, _______, _______, RGB_TOG, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, KC_END, _______, _______, _______, - _______, _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ), -}; - -#if defined(ENCODER_MAP_ENABLE) -const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][2] = { - [MAC_BASE] = {ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [MAC_FN] = {ENCODER_CCW_CW(RGB_VAD, RGB_VAI)}, - [WIN_BASE] = {ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [WIN_FN] = {ENCODER_CCW_CW(RGB_VAD, RGB_VAI)}, -}; -#endif - -// clang-format on -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - if (!process_record_keychron_common(keycode, record)) { - return false; - } - return true; -} diff --git a/keyboards/keychron/k17_max/iso_encoder/rgb/keymaps/via/keymap.c b/keyboards/keychron/k17_max/iso_encoder/rgb/keymaps/via/keymap.c deleted file mode 100644 index 931dc23d2e..0000000000 --- a/keyboards/keychron/k17_max/iso_encoder/rgb/keymaps/via/keymap.c +++ /dev/null @@ -1,74 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#include QMK_KEYBOARD_H -#include "keychron_common.h" - -enum layers{ - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN, -}; - -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_105_iso( - KC_ESC, KC_BRID, KC_BRIU, KC_MCTRL, KC_LNPAD, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_SNAP, RGB_MOD, KC_DEL, KC_F13, KC_F14, KC_F15, KC_MUTE, - KC_GRV, 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_PGUP, KC_NUM, KC_PSLS, KC_PAST, KC_PMNS, - 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_PGDN, KC_P7, KC_P8, KC_P9, KC_PPLS, - 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_NUHS, KC_ENT, KC_HOME, KC_P4, KC_P5, KC_P6, - KC_LSFT, KC_NUBS, 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_P1, KC_P2, KC_P3, KC_PENT, - KC_LCTL, KC_LOPTN, KC_LCMMD, KC_SPC, KC_RCMMD, MO(MAC_FN), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT, KC_P0, KC_PDOT ), - [MAC_FN] = LAYOUT_105_iso( - _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, RGB_TOG, _______, _______, _______, _______, RGB_TOG, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, KC_END, _______, _______, _______, - _______, _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ), - [WIN_BASE] = LAYOUT_105_iso( - KC_ESC, 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_PSCR, RGB_MOD, KC_DEL, _______, _______, _______, KC_MUTE, - KC_GRV, 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_PGUP, KC_NUM, KC_PSLS, KC_PAST, KC_PMNS, - 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_PGDN, KC_P7, KC_P8, KC_P9, KC_PPLS, - 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_NUHS, KC_ENT, KC_HOME, KC_P4, KC_P5, KC_P6, - KC_LSFT, KC_NUBS, 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_P1, KC_P2, KC_P3, KC_PENT, - KC_LCTL, KC_LWIN, KC_LALT, KC_SPC, KC_RALT, MO(WIN_FN), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT, KC_P0, KC_PDOT ), - [WIN_FN] = LAYOUT_105_iso( - _______, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, RGB_TOG, _______, _______, _______, _______, RGB_TOG, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, KC_END, _______, _______, _______, - _______, _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ), -}; - -#if defined(ENCODER_MAP_ENABLE) -const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][2] = { - [MAC_BASE] = {ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [MAC_FN] = {ENCODER_CCW_CW(RGB_VAD, RGB_VAI)}, - [WIN_BASE] = {ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [WIN_FN] = {ENCODER_CCW_CW(RGB_VAD, RGB_VAI)}, -}; -#endif - -// clang-format on -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - if (!process_record_keychron_common(keycode, record)) { - return false; - } - return true; -} diff --git a/keyboards/keychron/k17_max/iso_encoder/rgb/keymaps/via/rules.mk b/keyboards/keychron/k17_max/iso_encoder/rgb/keymaps/via/rules.mk deleted file mode 100644 index 1e5b99807c..0000000000 --- a/keyboards/keychron/k17_max/iso_encoder/rgb/keymaps/via/rules.mk +++ /dev/null @@ -1 +0,0 @@ -VIA_ENABLE = yes diff --git a/keyboards/keychron/k17_max/iso_encoder/rgb/rgb.c b/keyboards/keychron/k17_max/iso_encoder/rgb/rgb.c deleted file mode 100644 index cbda6726bb..0000000000 --- a/keyboards/keychron/k17_max/iso_encoder/rgb/rgb.c +++ /dev/null @@ -1,170 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#include "quantum.h" - -// clang-format off -#ifdef RGB_MATRIX_ENABLE -const snled27351_led_t g_snled27351_leds[RGB_MATRIX_LED_COUNT] = { -/* Refer to SNLED27351 manual for these locations - * driver - * | R location - * | | G location - * | | | B location - * | | | | */ - {0, G_1, I_1, H_1}, - {0, G_2, I_2, H_2}, - {0, G_3, I_3, H_3}, - {0, G_4, I_4, H_4}, - {0, G_5, I_5, H_5}, - {0, G_6, I_6, H_6}, - {0, G_7, I_7, H_7}, - {0, G_8, I_8, H_8}, - {0, G_9, I_9, H_9}, - {0, G_10, I_10, H_10}, - {0, G_11, I_11, H_11}, - {0, G_12, I_12, H_12}, - {0, G_13, I_13, H_13}, - {0, G_14, I_14, H_14}, - {0, G_15, I_15, H_15}, - {0, G_16, I_16, H_16}, - {1, D_8, F_8, E_8}, - {1, D_9, F_9, E_9}, - {1, D_10, F_10, E_10}, - - {0, D_1, F_1, E_1}, - {0, D_2, F_2, E_2}, - {0, D_3, F_3, E_3}, - {0, D_4, F_4, E_4}, - {0, D_5, F_5, E_5}, - {0, D_6, F_6, E_6}, - {0, D_7, F_7, E_7}, - {0, D_8, F_8, E_8}, - {0, D_9, F_9, E_9}, - {0, D_10, F_10, E_10}, - {0, D_11, F_11, E_11}, - {0, D_12, F_12, E_12}, - {0, D_13, F_13, E_13}, - {0, D_15, F_15, E_15}, - {0, D_16, F_16, E_16}, - {0, J_7, L_7, K_7}, - {0, J_8, L_8, K_8}, - {0, J_9, L_9, K_9}, - {0, J_10, L_10, K_10}, - - {0, C_1, A_1, B_1}, - {0, C_2, A_2, B_2}, - {0, C_3, A_3, B_3}, - {0, C_4, A_4, B_4}, - {0, C_5, A_5, B_5}, - {0, C_6, A_6, B_6}, - {0, C_7, A_7, B_7}, - {0, C_8, A_8, B_8}, - {0, C_9, A_9, B_9}, - {0, C_10, A_10, B_10}, - {0, C_11, A_11, B_11}, - {0, C_12, A_12, B_12}, - {0, C_13, A_13, B_13}, - {0, C_15, A_15, B_15}, - {0, C_16, A_16, B_16}, - {0, J_12, L_12, K_12}, - {0, J_13, L_13, K_13}, - {0, J_14, L_14, K_14}, - {0, J_15, L_15, K_15}, - - {1, G_1, I_1, H_1}, - {1, G_2, I_2, H_2}, - {1, G_3, I_3, H_3}, - {1, G_4, I_4, H_4}, - {1, G_5, I_5, H_5}, - {1, G_6, I_6, H_6}, - {1, G_7, I_7, H_7}, - {1, G_8, I_8, H_8}, - {1, G_9, I_9, H_9}, - {1, G_10, I_10, H_10}, - {1, G_11, I_11, H_11}, - {1, G_12, I_12, H_12}, - {1, G_14, I_14, H_14}, - {1, G_16, I_16, H_16}, - {1, J_7, L_7, K_7}, - {1, J_8, L_8, K_8}, - {1, J_9, L_9, K_9}, - - {1, A_1, C_1, B_1}, - {1, A_2, C_2, B_2}, - {1, A_3, C_3, B_3}, - {1, A_4, C_4, B_4}, - {1, A_5, C_5, B_5}, - {1, A_6, C_6, B_6}, - {1, A_7, C_7, B_7}, - {1, A_8, C_8, B_8}, - {1, A_9, C_9, B_9}, - {1, A_10, C_10, B_10}, - {1, A_11, C_11, B_11}, - {1, A_12, C_12, B_12}, - {1, A_13, C_13, B_13}, - {1, A_15, C_15, B_15}, - {1, J_10, L_10, K_10}, - {1, J_11, L_11, K_11}, - {1, J_12, L_12, K_12}, - {1, J_13, L_13, K_13}, - - {1, D_1, F_1, E_1}, - {1, D_2, F_2, E_2}, - {1, D_3, F_3, E_3}, - {1, D_7, F_7, E_7}, - {1, D_11, F_11, E_11}, - {1, D_12, F_12, E_12}, - {1, D_13, F_13, E_13}, - {1, D_14, F_14, E_14}, - {1, D_15, F_15, E_15}, - {1, D_16, F_16, E_16}, - {1, J_14, L_14, K_14}, - {1, J_16, L_16, K_16} -}; - -#define __ NO_LED - -led_config_t g_led_config = { - { - // Key Matrix to RGB Index - { 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, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, __, 51, 52, 53, 54, 55, 56 }, - { 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, __, 69, __, 70, 71, 72, 73, __ }, - { 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, __, 87, __, 88, 89, 90, 91 }, - { 92, 93, 94, __, __, __, 95, __, __, __, 96, 97, 98, 99,100,101,102, __,103, __ }, - }, - { - // RGB Index to Physical Position - {0, 0}, {12, 0}, {24, 0}, {36, 0}, {48, 0}, {60, 0}, {72, 0}, {84, 0}, {96, 0}, {108, 0}, {120, 0}, {132, 0}, {144, 0}, {156, 0}, {168, 0}, {180, 0},{192, 0},{203, 0},{213, 0}, - {0,13}, {12,13}, {24,13}, {36,13}, {48,13}, {60,13}, {72,13}, {84,13}, {96,13}, {108,13}, {120,13}, {132,13}, {144,13}, {162,13}, {180,13},{192,13},{203,13},{213,13},{224,13}, - {2,26}, {18,26}, {30,26}, {42,26}, {54,26}, {66,26}, {78,26}, {90,26}, {102,26},{114,26}, {126,26}, {138,26}, {150,26}, {164,32}, {180,26},{192,26},{203,26},{213,26},{224,32}, - {4,39}, {22,39}, {34,39}, {46,39}, {58,39}, {70,39}, {82,39}, {94,39}, {106,39},{118,39}, {130,39}, {142,39}, {154,39}, {180,39},{192,39},{203,39},{213,39}, - {1,51}, {14,51}, {28,51}, {40,51}, {52,51}, {64,51}, {76,51}, {88,51}, {100,51},{112,51}, {124,51}, {136,51}, {148,51}, {168,51}, {192,51},{203,51},{213,51},{224,57}, - {1,64}, {16,64}, {30,64}, {78,64}, {120,64}, {132,64}, {144,64}, {156,64}, {168,64}, {180,64},{197,64}, {213,64}, - }, - { - // RGB Index to Flag - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - } -}; -#endif diff --git a/keyboards/keychron/k17_max/iso_encoder/rgb/rules.mk b/keyboards/keychron/k17_max/iso_encoder/rgb/rules.mk deleted file mode 100644 index 6e7633bfe0..0000000000 --- a/keyboards/keychron/k17_max/iso_encoder/rgb/rules.mk +++ /dev/null @@ -1 +0,0 @@ -# This file intentionally left blank diff --git a/keyboards/keychron/k17_max/iso_encoder/white/config.h b/keyboards/keychron/k17_max/iso_encoder/white/config.h deleted file mode 100644 index dc3a4fce7a..0000000000 --- a/keyboards/keychron/k17_max/iso_encoder/white/config.h +++ /dev/null @@ -1,54 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#pragma once - -#ifdef LED_MATRIX_ENABLE -/* LED Matrix driver configuration */ -# define LED_MATRIX_LED_COUNT 104 -# define DRIVER_COUNT 1 -# define DRIVER_CS_PINS \ - { B9 } - -/* Scan phase of led driver set as MSKPHASE_9CHANNEL(defined as 0x03 in snled27351.h) */ -# define SNLED27351_PHASE_CHANNEL MSKPHASE_9CHANNEL -/* Set LED driver current */ -# define SNLED27351_CURRENT_TUNE \ - { 0x2A, 0x2A, 0x2A, 0x2A, 0x2A, 0x2A, 0x2A, 0x2A, 0x2A, 0x2A, 0x2A, 0x2A } - -/* Set to infinit, which is use in USB mode by default */ -# define LED_MATRIX_TIMEOUT LED_MATRIX_TIMEOUT_INFINITE -/* Allow shutdown of led driver to save power */ -# define LED_MATRIX_DRIVER_SHUTDOWN_ENABLE -/* Turn off backlight on low brightness to save power */ -# define LED_MATRIX_BRIGHTNESS_TURN_OFF_VAL 48 - -/* Indications */ -# define DIM_CAPS_LOCK -# define CAPS_LOCK_INDEX 54 -# define DIM_NUM_LOCK -# define NUM_LOCK_INDEX 33 -# define LOW_BAT_IND_INDEX \ - { 93 } -# define BT_HOST_LED_MATRIX_LIST \ - { 19, 20, 21 } -# define P2P4G_HOST_LED_MATRIX_LIST \ - { 22 } -# define BAT_LEVEL_LED_LIST \ - { 20, 21, 22, 23, 24, 25, 26, 27, 28, 29 } - -# define LED_MATRIX_KEYPRESSES -#endif diff --git a/keyboards/keychron/k17_max/iso_encoder/white/info.json b/keyboards/keychron/k17_max/iso_encoder/white/info.json deleted file mode 100644 index edf2b77f24..0000000000 --- a/keyboards/keychron/k17_max/iso_encoder/white/info.json +++ /dev/null @@ -1,155 +0,0 @@ -{ - "usb": { - "pid": "0x0A04", - "device_version": "1.0.0" - }, - "features": { - "led_matrix": true - }, - "indicators": { - "caps_lock": "A13", - "num_lock": "B10", - "on_state": 1 - }, - "matrix_pins": { - "cols": ["C6", "C7", "C8", "A14", "A15", "C10", "C11", "C13", "C14", "C15", "C0", "C1", "C2", "C3", "A0", "A1", "A2", "A3"], - "rows": ["C12", "D2", "B3", "B4", "B5", "B6"] - }, - "layouts":{ - "LAYOUT_105_iso": { - "layout": [ - {"matrix":[0,0], "x":0, "y":0}, - {"matrix":[0,1], "x":1, "y":0}, - {"matrix":[0,2], "x":2, "y":0}, - {"matrix":[0,3], "x":3, "y":0}, - {"matrix":[0,4], "x":4, "y":0}, - {"matrix":[0,5], "x":5, "y":0}, - {"matrix":[0,6], "x":6, "y":0}, - {"matrix":[0,7], "x":7, "y":0}, - {"matrix":[0,8], "x":8, "y":0}, - {"matrix":[0,9], "x":9, "y":0}, - {"matrix":[0,10], "x":10, "y":0}, - {"matrix":[0,11], "x":11, "y":0}, - {"matrix":[0,12], "x":12, "y":0}, - {"matrix":[0,13], "x":14, "y":0}, - {"matrix":[0,14], "x":15.25, "y":0}, - {"matrix":[0,15], "x":16.5, "y":0}, - {"matrix":[0,16], "x":17.5, "y":0}, - {"matrix":[0,17], "x":18.5, "y":0}, - {"matrix":[5,4], "x":19.5, "y":0}, - - {"matrix":[1,0], "x":0, "y":1.25}, - {"matrix":[1,1], "x":1, "y":1.25}, - {"matrix":[1,2], "x":2, "y":1.25}, - {"matrix":[1,3], "x":3, "y":1.25}, - {"matrix":[1,4], "x":4, "y":1.25}, - {"matrix":[1,5], "x":5, "y":1.25}, - {"matrix":[1,6], "x":6, "y":1.25}, - {"matrix":[1,7], "x":7, "y":1.25}, - {"matrix":[1,8], "x":8, "y":1.25}, - {"matrix":[1,9], "x":9, "y":1.25}, - {"matrix":[1,10], "x":10, "y":1.25}, - {"matrix":[1,11], "x":11, "y":1.25}, - {"matrix":[1,12], "x":12, "y":1.25}, - {"matrix":[1,13], "x":13, "y":1.25, "w":2}, - {"matrix":[1,14], "x":15.25, "y":1.25}, - {"matrix":[1,15], "x":16.5, "y":1.25}, - {"matrix":[1,16], "x":17.5, "y":1.25}, - {"matrix":[1,17], "x":18.5, "y":1.25}, - {"matrix":[5,5], "x":19.5, "y":1.25}, - - {"matrix":[2,0], "x":0, "y":2.25, "w":1.5}, - {"matrix":[2,1], "x":1.5, "y":2.25}, - {"matrix":[2,2], "x":2.5, "y":2.25}, - {"matrix":[2,3], "x":3.5, "y":2.25}, - {"matrix":[2,4], "x":4.5, "y":2.25}, - {"matrix":[2,5], "x":5.5, "y":2.25}, - {"matrix":[2,6], "x":6.5, "y":2.25}, - {"matrix":[2,7], "x":7.5, "y":2.25}, - {"matrix":[2,8], "x":8.5, "y":2.25}, - {"matrix":[2,9], "x":9.5, "y":2.25}, - {"matrix":[2,10], "x":10.5, "y":2.25}, - {"matrix":[2,11], "x":11.5, "y":2.25}, - {"matrix":[2,12], "x":12.5, "y":2.25}, - {"matrix":[2,14], "x":15.25, "y":2.25}, - {"matrix":[2,15], "x":16.5, "y":2.25}, - {"matrix":[2,16], "x":17.5, "y":2.25}, - {"matrix":[2,17], "x":18.5, "y":2.25}, - {"matrix":[5,7], "x":19.5, "y":2.25, "h":2}, - - {"matrix":[3,0], "x":0, "y":3.25, "w":1.75}, - {"matrix":[3,1], "x":1.75, "y":3.25}, - {"matrix":[3,2], "x":2.75, "y":3.25}, - {"matrix":[3,3], "x":3.75, "y":3.25}, - {"matrix":[3,4], "x":4.75, "y":3.25}, - {"matrix":[3,5], "x":5.75, "y":3.25}, - {"matrix":[3,6], "x":6.75, "y":3.25}, - {"matrix":[3,7], "x":7.75, "y":3.25}, - {"matrix":[3,8], "x":8.75, "y":3.25}, - {"matrix":[3,9], "x":9.75, "y":3.25}, - {"matrix":[3,10], "x":10.75, "y":3.25}, - {"matrix":[3,11], "x":11.75, "y":3.25}, - {"matrix":[3,13], "x":12.75, "y":3.25}, - {"matrix":[2,13], "x":13.75, "y":2.25, "w":1.25, "h":2}, - {"matrix":[3,14], "x":15.25, "y":3.25}, - {"matrix":[3,15], "x":16.5, "y":3.25}, - {"matrix":[3,16], "x":17.5, "y":3.25}, - {"matrix":[3,17], "x":18.5, "y":3.25}, - - {"matrix":[4,0], "x":0, "y":4.25, "w":1.25}, - {"matrix":[4,1], "x":1.25, "y":4.25}, - {"matrix":[4,2], "x":2.25, "y":4.25}, - {"matrix":[4,3], "x":3.25, "y":4.25}, - {"matrix":[4,4], "x":4.25, "y":4.25}, - {"matrix":[4,5], "x":5.25, "y":4.25}, - {"matrix":[4,6], "x":6.25, "y":4.25}, - {"matrix":[4,7], "x":7.25, "y":4.25}, - {"matrix":[4,8], "x":8.25, "y":4.25}, - {"matrix":[4,9], "x":9.25, "y":4.25}, - {"matrix":[4,10], "x":10.25, "y":4.25}, - {"matrix":[4,11], "x":11.25, "y":4.25}, - {"matrix":[4,12], "x":12.25, "y":4.25, "w":1.75}, - {"matrix":[4,13], "x":14.25, "y":4.25}, - {"matrix":[4,14], "x":13, "y":0}, - {"matrix":[4,15], "x":16.5, "y":4.25}, - {"matrix":[4,16], "x":17.5, "y":4.25}, - {"matrix":[4,17], "x":18.5, "y":4.25}, - {"matrix":[5,8], "x":19.5, "y":4.25, "h":2}, - - {"matrix":[5,0], "x":0, "y":5.25, "w":1.25}, - {"matrix":[5,1], "x":1.25, "y":5.25, "w":1.25}, - {"matrix":[5,2], "x":2.5, "y":5.25, "w":1.25}, - {"matrix":[5,6], "x":3.75, "y":5.25, "w":6.25}, - {"matrix":[5,10], "x":10, "y":5.25}, - {"matrix":[5,11], "x":11, "y":5.25}, - {"matrix":[5,12], "x":12, "y":5.25}, - {"matrix":[5,16], "x":16.5, "y":5.25, "w":2}, - {"matrix":[5,13], "x":13.25, "y":5.25}, - {"matrix":[5,14], "x":14.25, "y":5.25}, - {"matrix":[5,15], "x":15.25, "y":5.25}, - {"matrix":[5,17], "x":18.5, "y":5.25} - ] - } - }, - "led_matrix": { - "driver": "snled27351_spi", - "sleep": true, - "animations": { - "none": true, - "solid": true, - "breathing": true, - "band_pinwheel": true, - "band_spiral": true, - "cycle_left_right": true, - "cycle_up_down": true, - "cycle_out_in": true, - "dual_beacon": true, - "solid_reactive_simple": true, - "solid_reactive_multiwide": true, - "solid_reactive_multinexus": true, - "solid_splash": true, - "wave_left_right": true, - "wave_up_down": true - } - } -} diff --git a/keyboards/keychron/k17_max/iso_encoder/white/keymaps/default/keymap.c b/keyboards/keychron/k17_max/iso_encoder/white/keymaps/default/keymap.c deleted file mode 100644 index 238e801504..0000000000 --- a/keyboards/keychron/k17_max/iso_encoder/white/keymaps/default/keymap.c +++ /dev/null @@ -1,77 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#include QMK_KEYBOARD_H -#include "keychron_common.h" - -enum layers{ - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN, -}; - -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_105_iso( - KC_ESC, KC_BRID, KC_BRIU, KC_MCTRL, KC_LNPAD, BL_DOWN, BL_UP, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, BL_STEP, KC_DEL, KC_F13, KC_F14, KC_F15, KC_MUTE, - KC_GRV, 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_PGUP, KC_NUM, KC_PSLS, KC_PAST, KC_PMNS, - 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_PGDN, KC_P7, KC_P8, KC_P9, KC_PPLS, - 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_NUHS, KC_ENT, KC_HOME, KC_P4, KC_P5, KC_P6, - KC_LSFT, KC_NUBS, 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_SNAP, KC_P1, KC_P2, KC_P3, KC_PENT, - KC_LCTL, KC_LOPTN, KC_LCMMD, KC_SPC, KC_RCMMD,MO(MAC_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT, KC_P0, KC_PDOT ), - - [MAC_FN] = LAYOUT_105_iso( - _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, BL_TOGG, _______, _______, _______, _______, BL_TOGG, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - BL_TOGG, BL_STEP, BL_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, BL_DOWN, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_END, _______, _______, _______, - _______, _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ), - - [WIN_BASE] = LAYOUT_105_iso( - KC_ESC, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, BL_STEP, KC_DEL, _______, _______, _______, KC_MUTE, - KC_GRV, 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_PGUP, KC_NUM, KC_PSLS, KC_PAST, KC_PMNS, - 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_PGDN, KC_P7, KC_P8, KC_P9, KC_PPLS, - 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_NUHS, KC_ENT, KC_HOME, KC_P4, KC_P5, KC_P6, - KC_LSFT, KC_NUBS, 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_PSCR, KC_P1, KC_P2, KC_P3, KC_PENT, - KC_LCTL, KC_LWIN, KC_LALT, KC_SPC, KC_RALT, MO(WIN_FN), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT, KC_P0, KC_PDOT ), - - [WIN_FN] = LAYOUT_105_iso( - _______, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, BL_DOWN, BL_UP, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, BL_TOGG, _______, _______, _______, _______, BL_TOGG, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - BL_TOGG, BL_STEP, BL_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, BL_DOWN, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_END, _______, _______, _______, - _______, _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ), -}; - -#if defined(ENCODER_MAP_ENABLE) -const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][2] = { - [MAC_BASE] = {ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [MAC_FN] = {ENCODER_CCW_CW(BL_DOWN, BL_UP)}, - [WIN_BASE] = {ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [WIN_FN] = {ENCODER_CCW_CW(BL_DOWN, BL_UP)}, -}; -#endif - -// clang-format on -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - if (!process_record_keychron_common(keycode, record)) { - return false; - } - return true; -} diff --git a/keyboards/keychron/k17_max/iso_encoder/white/keymaps/via/keymap.c b/keyboards/keychron/k17_max/iso_encoder/white/keymaps/via/keymap.c deleted file mode 100644 index 238e801504..0000000000 --- a/keyboards/keychron/k17_max/iso_encoder/white/keymaps/via/keymap.c +++ /dev/null @@ -1,77 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#include QMK_KEYBOARD_H -#include "keychron_common.h" - -enum layers{ - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN, -}; - -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_105_iso( - KC_ESC, KC_BRID, KC_BRIU, KC_MCTRL, KC_LNPAD, BL_DOWN, BL_UP, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, BL_STEP, KC_DEL, KC_F13, KC_F14, KC_F15, KC_MUTE, - KC_GRV, 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_PGUP, KC_NUM, KC_PSLS, KC_PAST, KC_PMNS, - 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_PGDN, KC_P7, KC_P8, KC_P9, KC_PPLS, - 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_NUHS, KC_ENT, KC_HOME, KC_P4, KC_P5, KC_P6, - KC_LSFT, KC_NUBS, 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_SNAP, KC_P1, KC_P2, KC_P3, KC_PENT, - KC_LCTL, KC_LOPTN, KC_LCMMD, KC_SPC, KC_RCMMD,MO(MAC_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT, KC_P0, KC_PDOT ), - - [MAC_FN] = LAYOUT_105_iso( - _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, BL_TOGG, _______, _______, _______, _______, BL_TOGG, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - BL_TOGG, BL_STEP, BL_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, BL_DOWN, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_END, _______, _______, _______, - _______, _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ), - - [WIN_BASE] = LAYOUT_105_iso( - KC_ESC, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, BL_STEP, KC_DEL, _______, _______, _______, KC_MUTE, - KC_GRV, 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_PGUP, KC_NUM, KC_PSLS, KC_PAST, KC_PMNS, - 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_PGDN, KC_P7, KC_P8, KC_P9, KC_PPLS, - 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_NUHS, KC_ENT, KC_HOME, KC_P4, KC_P5, KC_P6, - KC_LSFT, KC_NUBS, 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_PSCR, KC_P1, KC_P2, KC_P3, KC_PENT, - KC_LCTL, KC_LWIN, KC_LALT, KC_SPC, KC_RALT, MO(WIN_FN), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT, KC_P0, KC_PDOT ), - - [WIN_FN] = LAYOUT_105_iso( - _______, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, BL_DOWN, BL_UP, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, BL_TOGG, _______, _______, _______, _______, BL_TOGG, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - BL_TOGG, BL_STEP, BL_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, BL_DOWN, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_END, _______, _______, _______, - _______, _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ), -}; - -#if defined(ENCODER_MAP_ENABLE) -const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][2] = { - [MAC_BASE] = {ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [MAC_FN] = {ENCODER_CCW_CW(BL_DOWN, BL_UP)}, - [WIN_BASE] = {ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [WIN_FN] = {ENCODER_CCW_CW(BL_DOWN, BL_UP)}, -}; -#endif - -// clang-format on -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - if (!process_record_keychron_common(keycode, record)) { - return false; - } - return true; -} diff --git a/keyboards/keychron/k17_max/iso_encoder/white/keymaps/via/rules.mk b/keyboards/keychron/k17_max/iso_encoder/white/keymaps/via/rules.mk deleted file mode 100644 index 1e5b99807c..0000000000 --- a/keyboards/keychron/k17_max/iso_encoder/white/keymaps/via/rules.mk +++ /dev/null @@ -1 +0,0 @@ -VIA_ENABLE = yes diff --git a/keyboards/keychron/k17_max/iso_encoder/white/rules.mk b/keyboards/keychron/k17_max/iso_encoder/white/rules.mk deleted file mode 100644 index 6e7633bfe0..0000000000 --- a/keyboards/keychron/k17_max/iso_encoder/white/rules.mk +++ /dev/null @@ -1 +0,0 @@ -# This file intentionally left blank diff --git a/keyboards/keychron/k17_max/iso_encoder/white/white.c b/keyboards/keychron/k17_max/iso_encoder/white/white.c deleted file mode 100644 index c7ab28cfaf..0000000000 --- a/keyboards/keychron/k17_max/iso_encoder/white/white.c +++ /dev/null @@ -1,169 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#include "quantum.h" - -// clang-format off -#ifdef LED_MATRIX_ENABLE -const snled27351_led_t g_snled27351_leds[LED_MATRIX_LED_COUNT] = { -/* Refer to SNLED27351 manual for these locations - * driver - * | LED address - * | | */ - {0, F_1}, - {0, F_2}, - {0, F_3}, - {0, F_4}, - {0, F_5}, - {0, F_6}, - {0, F_7}, - {0, F_8}, - {0, F_9}, - {0, F_10}, - {0, F_11}, - {0, F_12}, - {0, F_13}, - {0, F_15}, - {0, F_16}, - {0, A_8}, - {0, A_9}, - {0, A_10}, - - {0, E_1}, - {0, E_2}, - {0, E_3}, - {0, E_4}, - {0, E_5}, - {0, E_6}, - {0, E_7}, - {0, E_8}, - {0, E_9}, - {0, E_10}, - {0, E_11}, - {0, E_12}, - {0, E_13}, - {0, E_15}, - {0, E_16}, - {0, H_7}, - {0, H_8}, - {0, H_9}, - - {0, D_1}, - {0, D_2}, - {0, D_3}, - {0, D_4}, - {0, D_5}, - {0, D_6}, - {0, D_7}, - {0, D_8}, - {0, D_9}, - {0, D_10}, - {0, D_11}, - {0, D_12}, - {0, D_13}, - {0, D_15}, - {0, D_16}, - {0, H_12}, - {0, H_13}, - {0, H_14}, - - {0, C_1}, - {0, C_2}, - {0, C_3}, - {0, C_4}, - {0, C_5}, - {0, C_6}, - {0, C_7}, - {0, C_8}, - {0, C_9}, - {0, C_10}, - {0, C_11}, - {0, C_12}, - {0, C_14}, - {0, C_16}, - {0, G_7}, - {0, G_8}, - {0, G_9}, - - {0, B_1}, - {0, B_2}, - {0, B_3}, - {0, B_4}, - {0, B_5}, - {0, B_6}, - {0, B_7}, - {0, B_8}, - {0, B_9}, - {0, B_10}, - {0, B_11}, - {0, B_12}, - {0, B_13}, - {0, B_15}, - {0, F_14}, - {0, G_10}, - {0, G_11}, - {0, G_12}, - - {0, A_1}, - {0, A_2}, - {0, A_3}, - {0, H_10}, - {0, A_7}, - {0, H_15}, - {0, G_13}, - {0, A_11}, - {0, A_12}, - {0, A_13}, - {0, A_15}, - {0, A_16}, - {0, G_14}, - {0, A_14}, - {0, G_16}, - -}; - -#define __ NO_LED - -led_config_t g_led_config = { - { - // Key Matrix to LED Index - { 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, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53 }, - { 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, __, 66, 67, 68, 69, 70 }, - { 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88 }, - { 89, 90, 91, __, __, 92, 93, 94, 95, __, 96, 97, 98, 99,100,101,102,103 }, - }, - { - // LED Index to Physical Position - {0, 0}, {12, 0}, {24, 0}, {36, 0}, {48, 0}, {60, 0}, {72, 0}, {84, 0}, {96, 0}, {108, 0}, {120, 0}, {132, 0}, {144, 0}, {168, 0}, {180, 0}, {192, 0},{203, 0},{213,0}, - {0,13}, {12,13}, {24,13}, {36,13}, {48,13}, {60,13}, {72,13}, {84,13}, {96,13}, {108,13}, {120,13}, {132,13}, {144,13}, {162,13}, {180,13}, {192,13},{203,13},{213,13}, - {2,26}, {18,26}, {30,26}, {42,26}, {54,26}, {66,26}, {78,26}, {90,26}, {102,26},{114,26}, {126,26}, {138,26}, {150,26}, {164,32}, {180,26}, {192,26},{203,26},{213,26}, - {4,39}, {22,39}, {34,39}, {46,39}, {58,39}, {70,39}, {82,39}, {94,39}, {106,39},{118,39}, {130,39}, {142,39}, {154,39}, {180,39}, {192,39},{203,39},{213,39}, - {1,51}, {14,51}, {28,51}, {40,51}, {52,51}, {64,51}, {76,51}, {88,51}, {100,51},{112,51}, {124,51}, {136,51}, {148,51}, {168,51}, {156, 0}, {192,51},{203,51},{213,51}, - {1,64}, {16,64}, {30,64}, {224,13},{78,64}, {224,32},{224,57}, {120,64}, {132,64}, {144,64}, {168,64}, {180,64}, {197,64},{156,64},{213,64}, - }, - { - // LED Index to Flag - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - } -}; -#endif diff --git a/keyboards/keychron/k17_max/jis_encoder/rgb/config.h b/keyboards/keychron/k17_max/jis_encoder/rgb/config.h deleted file mode 100644 index 01f588cced..0000000000 --- a/keyboards/keychron/k17_max/jis_encoder/rgb/config.h +++ /dev/null @@ -1,54 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#pragma once - -#ifdef RGB_MATRIX_ENABLE -/* RGB Matrix driver configuration */ -# define RGB_MATRIX_LED_COUNT 107 -# define DRIVER_COUNT 2 -# define DRIVER_CS_PINS \ - { B8, B9 } - -/* Scan phase of led driver set as MSKPHASE_12CHANNEL(defined as 0x03 in snled27351.h) */ -# define SNLED27351_PHASE_CHANNEL MSKPHASE_12CHANNEL -/* Set LED driver current */ -# define SNLED27351_CURRENT_TUNE \ - { 0x14, 0x14, 0x14, 0x14, 0x14, 0x14, 0x14, 0x14, 0x14, 0x14, 0x14, 0x14 } - -/* Set to infinit, which is use in USB mode by default */ -# define RGB_MATRIX_TIMEOUT RGB_MATRIX_TIMEOUT_INFINITE -/* Allow shutdown of led driver to save power */ -# define RGB_MATRIX_DRIVER_SHUTDOWN_ENABLE -/* Turn off backlight on low brightness to save power */ -# define RGB_MATRIX_BRIGHTNESS_TURN_OFF_VAL 48 - -/* Indications */ -# define CAPS_LOCK_INDEX 58 -# define NUM_LOCK_INDEX 35 -# define LOW_BAT_IND_INDEX \ - { 97 } -# define BT_HOST_LED_MATRIX_LIST \ - { 20, 21, 22 } -# define P2P4G_HOST_LED_MATRIX_LIST \ - { 23 } -# define BAT_LEVEL_LED_LIST \ - { 20, 21, 22, 23, 24, 25, 26, 27, 28, 29 } - -# define RGB_MATRIX_KEYPRESSES -# define RGB_MATRIX_FRAMEBUFFER_EFFECTS - -#endif diff --git a/keyboards/keychron/k17_max/jis_encoder/rgb/info.json b/keyboards/keychron/k17_max/jis_encoder/rgb/info.json deleted file mode 100644 index 769db545ed..0000000000 --- a/keyboards/keychron/k17_max/jis_encoder/rgb/info.json +++ /dev/null @@ -1,159 +0,0 @@ -{ - "usb": { - "pid": "0x0A02", - "device_version": "1.0.0" - }, - "features": { - "rgb_matrix": true - }, - "matrix_pins": { - "cols": ["C6", "C7", "A13", "A14", "A15", "C10", "C11", "C13", "C14", "C15", "C0", "C1", "C2", "C3", "A0", "A1", "A2", "A3", "C5", "B10"], - "rows": ["C12", "D2", "B3", "B4", "B5", "B6"] - }, - "layouts":{ - "LAYOUT_108_jis": { - "layout": [ - {"matrix":[0,0], "x":0, "y":0}, - {"matrix":[0,1], "x":1, "y":0}, - {"matrix":[0,2], "x":2, "y":0}, - {"matrix":[0,3], "x":3, "y":0}, - {"matrix":[0,4], "x":4, "y":0}, - {"matrix":[0,5], "x":5, "y":0}, - {"matrix":[0,6], "x":6, "y":0}, - {"matrix":[0,7], "x":7, "y":0}, - {"matrix":[0,8], "x":8, "y":0}, - {"matrix":[0,9], "x":9, "y":0}, - {"matrix":[0,10], "x":10, "y":0}, - {"matrix":[0,11], "x":11, "y":0}, - {"matrix":[0,12], "x":12, "y":0}, - {"matrix":[0,13], "x":13, "y":0}, - {"matrix":[0,14], "x":14, "y":0}, - {"matrix":[0,15], "x":15.25, "y":0}, - {"matrix":[0,16], "x":16.5, "y":0}, - {"matrix":[0,17], "x":17.5, "y":0}, - {"matrix":[0,18], "x":18.5, "y":0}, - {"matrix":[0,19], "x":19.5, "y":0}, - - {"matrix":[1,0], "x":0, "y":1.25}, - {"matrix":[1,1], "x":1, "y":1.25}, - {"matrix":[1,2], "x":2, "y":1.25}, - {"matrix":[1,3], "x":3, "y":1.25}, - {"matrix":[1,4], "x":4, "y":1.25}, - {"matrix":[1,5], "x":5, "y":1.25}, - {"matrix":[1,6], "x":6, "y":1.25}, - {"matrix":[1,7], "x":7, "y":1.25}, - {"matrix":[1,8], "x":8, "y":1.25}, - {"matrix":[1,9], "x":9, "y":1.25}, - {"matrix":[1,10], "x":10, "y":1.25}, - {"matrix":[1,11], "x":11, "y":1.25}, - {"matrix":[1,12], "x":12, "y":1.25}, - {"matrix":[1,13], "x":13, "y":1.25}, - {"matrix":[1,14], "x":14, "y":1.25}, - {"matrix":[1,15], "x":15.25, "y":1.25}, - {"matrix":[1,16], "x":16.5, "y":1.25}, - {"matrix":[1,17], "x":17.5, "y":1.25}, - {"matrix":[1,18], "x":18.5, "y":1.25}, - {"matrix":[1,19], "x":19.5, "y":1.25}, - - {"matrix":[2,0], "x":0, "y":2.25, "w":1.5}, - {"matrix":[2,1], "x":1.5, "y":2.25}, - {"matrix":[2,2], "x":2.5, "y":2.25}, - {"matrix":[2,3], "x":3.5, "y":2.25}, - {"matrix":[2,4], "x":4.5, "y":2.25}, - {"matrix":[2,5], "x":5.5, "y":2.25}, - {"matrix":[2,6], "x":6.5, "y":2.25}, - {"matrix":[2,7], "x":7.5, "y":2.25}, - {"matrix":[2,8], "x":8.5, "y":2.25}, - {"matrix":[2,9], "x":9.5, "y":2.25}, - {"matrix":[2,10], "x":10.5, "y":2.25}, - {"matrix":[2,11], "x":11.5, "y":2.25}, - {"matrix":[2,12], "x":12.5, "y":2.25}, - {"matrix":[2,15], "x":15.25, "y":2.25}, - {"matrix":[2,16], "x":16.5, "y":2.25}, - {"matrix":[2,17], "x":17.5, "y":2.25}, - {"matrix":[2,18], "x":18.5, "y":2.25}, - {"matrix":[2,19], "x":19.5, "y":2.25, "h":2}, - - {"matrix":[3,0], "x":0, "y":3.25, "w":1.75}, - {"matrix":[3,1], "x":1.75, "y":3.25}, - {"matrix":[3,2], "x":2.75, "y":3.25}, - {"matrix":[3,3], "x":3.75, "y":3.25}, - {"matrix":[3,4], "x":4.75, "y":3.25}, - {"matrix":[3,5], "x":5.75, "y":3.25}, - {"matrix":[3,6], "x":6.75, "y":3.25}, - {"matrix":[3,7], "x":7.75, "y":3.25}, - {"matrix":[3,8], "x":8.75, "y":3.25}, - {"matrix":[3,9], "x":9.75, "y":3.25}, - {"matrix":[3,10], "x":10.75, "y":3.25}, - {"matrix":[3,11], "x":11.75, "y":3.25}, - {"matrix":[3,13], "x":12.75, "y":3.25}, - {"matrix":[2,14], "x":13.75, "y":2.25, "w":1.25, "h":2}, - {"matrix":[3,15], "x":15.25, "y":3.25}, - {"matrix":[3,16], "x":16.5, "y":3.25}, - {"matrix":[3,17], "x":17.5, "y":3.25}, - {"matrix":[3,18], "x":18.5, "y":3.25}, - - {"matrix":[4,0], "x":0, "y":4.25, "w":2.25}, - {"matrix":[4,2], "x":2.25, "y":4.25}, - {"matrix":[4,3], "x":3.25, "y":4.25}, - {"matrix":[4,4], "x":4.25, "y":4.25}, - {"matrix":[4,5], "x":5.25, "y":4.25}, - {"matrix":[4,6], "x":6.25, "y":4.25}, - {"matrix":[4,7], "x":7.25, "y":4.25}, - {"matrix":[4,8], "x":8.25, "y":4.25}, - {"matrix":[4,9], "x":9.25, "y":4.25}, - {"matrix":[4,10], "x":10.25, "y":4.25}, - {"matrix":[4,11], "x":11.25, "y":4.25}, - {"matrix":[4,12], "x":12.25, "y":4.25}, - {"matrix":[4,14], "x":13.25, "y":4.25, "w":1.75}, - {"matrix":[4,15], "x":15.25, "y":4.25}, - {"matrix":[4,16], "x":16.5, "y":4.25}, - {"matrix":[4,17], "x":17.5, "y":4.25}, - {"matrix":[4,18], "x":18.5, "y":4.25}, - {"matrix":[4,19], "x":19.5, "y":4.25, "h":2}, - - {"matrix":[5,0], "x":0, "y":5.25, "w":1.25}, - {"matrix":[5,1], "x":1.25, "y":5.25}, - {"matrix":[5,2], "x":2.25, "y":5.25, "w":1.25}, - {"matrix":[5,3], "x":3.5, "y":5.25}, - {"matrix":[5,6], "x":4.5, "y":5.25, "w":5}, - {"matrix":[5,9], "x":9.5, "y":5.25}, - {"matrix":[5,10], "x":10.5, "y":5.25}, - {"matrix":[5,11], "x":11.5, "y":5.25,"w":1.25}, - {"matrix":[5,12], "x":12.75, "y":5.25,"w":1.25}, - {"matrix":[5,13], "x":14.25, "y":5.25}, - {"matrix":[5,14], "x":15.25, "y":5.25}, - {"matrix":[5,15], "x":16.25, "y":5.25}, - {"matrix":[5,16], "x":17.5, "y":5.25}, - {"matrix":[5,18], "x":18.5, "y":5.25} - ] - } - }, - "rgb_matrix": { - "driver": "snled27351_spi", - "sleep": true, - "animations": { - "band_spiral_val": true, - "breathing": true, - "cycle_all": true, - "cycle_left_right": true, - "cycle_out_in": true, - "cycle_out_in_dual": true, - "cycle_pinwheel": true, - "cycle_spiral": true, - "cycle_up_down": true, - "digital_rain": true, - "dual_beacon": true, - "jellybean_raindrops": true, - "pixel_rain": true, - "rainbow_beacon": true, - "rainbow_moving_chevron": true, - "solid_reactive_multinexus": true, - "solid_reactive_multiwide": true, - "solid_reactive_simple": true, - "solid_splash": true, - "splash": true, - "typing_heatmap": true - } - } -} diff --git a/keyboards/keychron/k17_max/jis_encoder/rgb/keymaps/default/keymap.c b/keyboards/keychron/k17_max/jis_encoder/rgb/keymaps/default/keymap.c deleted file mode 100644 index 2eb0eb1ba2..0000000000 --- a/keyboards/keychron/k17_max/jis_encoder/rgb/keymaps/default/keymap.c +++ /dev/null @@ -1,74 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#include QMK_KEYBOARD_H -#include "keychron_common.h" - -enum layers{ - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN, -}; - -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_108_jis( - KC_ESC, KC_BRID, KC_BRIU, KC_MCTRL, KC_LNPAD, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_SNAP, RGB_MOD, KC_DEL, KC_F13, KC_F14, KC_F15, KC_MUTE, - KC_GRV, 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_INT3, KC_BSPC, KC_PGUP, KC_NUM, KC_PSLS, KC_PAST, KC_PMNS, - 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_PGDN, KC_P7, KC_P8, KC_P9, KC_PPLS, - 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_BSLS, KC_ENT, KC_HOME, KC_P4, KC_P5, KC_P6, - KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_INT1, KC_RSFT, KC_UP, KC_P1, KC_P2, KC_P3, KC_PENT, - KC_LCTL, KC_LOPTN, KC_LCMMD, KC_LNG2, KC_SPC, KC_LNG1, KC_RCMMD, MO(MAC_FN), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT, KC_P0, KC_PDOT ), - [MAC_FN] = LAYOUT_108_jis( - _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, RGB_TOG, _______, _______, _______, _______, RGB_TOG, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, KC_END, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ), - [WIN_BASE] = LAYOUT_108_jis( - KC_ESC, 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_PSCR, RGB_MOD, KC_DEL, _______, _______, _______, KC_MUTE, - KC_GRV, 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_INT3, KC_BSPC, KC_PGUP, KC_NUM, KC_PSLS, KC_PAST, KC_PMNS, - 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_PGDN, KC_P7, KC_P8, KC_P9, KC_PPLS, - 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_BSLS, KC_ENT, KC_HOME, KC_P4, KC_P5, KC_P6, - KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_INT1, KC_RSFT, KC_UP, KC_P1, KC_P2, KC_P3, KC_PENT, - KC_LCTL, KC_LWIN, KC_LALT, KC_INT5, KC_SPC, KC_INT4, KC_RALT, MO(WIN_FN), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT, KC_P0, KC_PDOT ), - [WIN_FN] = LAYOUT_108_jis( - _______, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, RGB_TOG, _______, _______, _______, _______, RGB_TOG, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, KC_END, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ), -}; - -#if defined(ENCODER_MAP_ENABLE) -const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][2] = { - [MAC_BASE] = {ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [MAC_FN] = {ENCODER_CCW_CW(RGB_VAD, RGB_VAI)}, - [WIN_BASE] = {ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [WIN_FN] = {ENCODER_CCW_CW(RGB_VAD, RGB_VAI)}, -}; -#endif - -// clang-format on -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - if (!process_record_keychron_common(keycode, record)) { - return false; - } - return true; -} diff --git a/keyboards/keychron/k17_max/jis_encoder/rgb/keymaps/via/keymap.c b/keyboards/keychron/k17_max/jis_encoder/rgb/keymaps/via/keymap.c deleted file mode 100644 index 2eb0eb1ba2..0000000000 --- a/keyboards/keychron/k17_max/jis_encoder/rgb/keymaps/via/keymap.c +++ /dev/null @@ -1,74 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#include QMK_KEYBOARD_H -#include "keychron_common.h" - -enum layers{ - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN, -}; - -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_108_jis( - KC_ESC, KC_BRID, KC_BRIU, KC_MCTRL, KC_LNPAD, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_SNAP, RGB_MOD, KC_DEL, KC_F13, KC_F14, KC_F15, KC_MUTE, - KC_GRV, 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_INT3, KC_BSPC, KC_PGUP, KC_NUM, KC_PSLS, KC_PAST, KC_PMNS, - 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_PGDN, KC_P7, KC_P8, KC_P9, KC_PPLS, - 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_BSLS, KC_ENT, KC_HOME, KC_P4, KC_P5, KC_P6, - KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_INT1, KC_RSFT, KC_UP, KC_P1, KC_P2, KC_P3, KC_PENT, - KC_LCTL, KC_LOPTN, KC_LCMMD, KC_LNG2, KC_SPC, KC_LNG1, KC_RCMMD, MO(MAC_FN), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT, KC_P0, KC_PDOT ), - [MAC_FN] = LAYOUT_108_jis( - _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, RGB_TOG, _______, _______, _______, _______, RGB_TOG, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, KC_END, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ), - [WIN_BASE] = LAYOUT_108_jis( - KC_ESC, 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_PSCR, RGB_MOD, KC_DEL, _______, _______, _______, KC_MUTE, - KC_GRV, 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_INT3, KC_BSPC, KC_PGUP, KC_NUM, KC_PSLS, KC_PAST, KC_PMNS, - 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_PGDN, KC_P7, KC_P8, KC_P9, KC_PPLS, - 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_BSLS, KC_ENT, KC_HOME, KC_P4, KC_P5, KC_P6, - KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_INT1, KC_RSFT, KC_UP, KC_P1, KC_P2, KC_P3, KC_PENT, - KC_LCTL, KC_LWIN, KC_LALT, KC_INT5, KC_SPC, KC_INT4, KC_RALT, MO(WIN_FN), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT, KC_P0, KC_PDOT ), - [WIN_FN] = LAYOUT_108_jis( - _______, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, RGB_TOG, _______, _______, _______, _______, RGB_TOG, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, KC_END, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ), -}; - -#if defined(ENCODER_MAP_ENABLE) -const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][2] = { - [MAC_BASE] = {ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [MAC_FN] = {ENCODER_CCW_CW(RGB_VAD, RGB_VAI)}, - [WIN_BASE] = {ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [WIN_FN] = {ENCODER_CCW_CW(RGB_VAD, RGB_VAI)}, -}; -#endif - -// clang-format on -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - if (!process_record_keychron_common(keycode, record)) { - return false; - } - return true; -} diff --git a/keyboards/keychron/k17_max/jis_encoder/rgb/keymaps/via/rules.mk b/keyboards/keychron/k17_max/jis_encoder/rgb/keymaps/via/rules.mk deleted file mode 100644 index 1e5b99807c..0000000000 --- a/keyboards/keychron/k17_max/jis_encoder/rgb/keymaps/via/rules.mk +++ /dev/null @@ -1 +0,0 @@ -VIA_ENABLE = yes diff --git a/keyboards/keychron/k17_max/jis_encoder/rgb/rgb.c b/keyboards/keychron/k17_max/jis_encoder/rgb/rgb.c deleted file mode 100644 index f7bf898dfe..0000000000 --- a/keyboards/keychron/k17_max/jis_encoder/rgb/rgb.c +++ /dev/null @@ -1,174 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#include "quantum.h" - -// clang-format off -#ifdef RGB_MATRIX_ENABLE -const snled27351_led_t g_snled27351_leds[RGB_MATRIX_LED_COUNT] = { -/* Refer to SNLED27351 manual for these locations - * driver - * | R location - * | | G location - * | | | B location - * | | | | */ - {0, G_1, I_1, H_1}, - {0, G_2, I_2, H_2}, - {0, G_3, I_3, H_3}, - {0, G_4, I_4, H_4}, - {0, G_5, I_5, H_5}, - {0, G_6, I_6, H_6}, - {0, G_7, I_7, H_7}, - {0, G_8, I_8, H_8}, - {0, G_9, I_9, H_9}, - {0, G_10, I_10, H_10}, - {0, G_11, I_11, H_11}, - {0, G_12, I_12, H_12}, - {0, G_13, I_13, H_13}, - {0, G_14, I_14, H_14}, - {0, G_15, I_15, H_15}, - {0, G_16, I_16, H_16}, - {1, D_8, F_8, E_8}, - {1, D_9, F_9, E_9}, - {0, J_16, L_16, K_16}, - - {0, D_1, F_1, E_1}, - {0, D_2, F_2, E_2}, - {0, D_3, F_3, E_3}, - {0, D_4, F_4, E_4}, - {0, D_5, F_5, E_5}, - {0, D_6, F_6, E_6}, - {0, D_7, F_7, E_7}, - {0, D_8, F_8, E_8}, - {0, D_9, F_9, E_9}, - {0, D_10, F_10, E_10}, - {0, D_11, F_11, E_11}, - {0, D_12, F_12, E_12}, - {0, D_13, F_13, E_13}, - {0, D_14, F_14, E_14}, - {0, D_15, F_15, E_15}, - {0, D_16, F_16, E_16}, - {0, J_7, L_7, K_7}, - {0, J_8, L_8, K_8}, - {0, J_9, L_9, K_9}, - {0, J_10, L_10, K_10}, - - {0, C_1, A_1, B_1}, - {0, C_2, A_2, B_2}, - {0, C_3, A_3, B_3}, - {0, C_4, A_4, B_4}, - {0, C_5, A_5, B_5}, - {0, C_6, A_6, B_6}, - {0, C_7, A_7, B_7}, - {0, C_8, A_8, B_8}, - {0, C_9, A_9, B_9}, - {0, C_10, A_10, B_10}, - {0, C_11, A_11, B_11}, - {0, C_12, A_12, B_12}, - {0, C_13, A_13, B_13}, - {0, C_15, A_15, B_15}, - {0, C_16, A_16, B_16}, - {0, J_12, L_12, K_12}, - {0, J_13, L_13, K_13}, - {0, J_14, L_14, K_14}, - {0, J_15, L_15, K_15}, - - {1, G_1, I_1, H_1}, - {1, G_2, I_2, H_2}, - {1, G_3, I_3, H_3}, - {1, G_4, I_4, H_4}, - {1, G_5, I_5, H_5}, - {1, G_6, I_6, H_6}, - {1, G_7, I_7, H_7}, - {1, G_8, I_8, H_8}, - {1, G_9, I_9, H_9}, - {1, G_10, I_10, H_10}, - {1, G_11, I_11, H_11}, - {1, G_12, I_12, H_12}, - {1, G_14, I_14, H_14}, - {1, G_16, I_16, H_16}, - {1, J_7, L_7, K_7}, - {1, J_8, L_8, K_8}, - {1, J_9, L_9, K_9}, - - {1, A_1, C_1, B_1}, - {1, A_3, C_3, B_3}, - {1, A_4, C_4, B_4}, - {1, A_5, C_5, B_5}, - {1, A_6, C_6, B_6}, - {1, A_7, C_7, B_7}, - {1, A_8, C_8, B_8}, - {1, A_9, C_9, B_9}, - {1, A_10, C_10, B_10}, - {1, A_11, C_11, B_11}, - {1, A_12, C_12, B_12}, - {1, A_13, C_13, B_13}, - {1, A_15, C_15, B_15}, - {1, A_16, C_16, B_16}, - {1, J_10, L_10, K_10}, - {1, J_11, L_11, K_11}, - {1, J_12, L_12, K_12}, - {1, J_13, L_13, K_13}, - - {1, D_1, F_1, E_1}, - {1, D_2, F_2, E_2}, - {1, D_3, F_3, E_3}, - {1, D_4, F_4, E_4}, - {1, D_7, F_7, E_7}, - {1, D_10, F_10, E_10}, - {1, D_11, F_11, E_11}, - {1, D_12, F_12, E_12}, - {1, D_13, F_13, E_13}, - {1, D_14, F_14, E_14}, - {1, D_15, F_15, E_15}, - {1, D_16, F_16, E_16}, - {1, J_14, L_14, K_14}, - {1, J_16, L_16, K_16} -}; - - -#define __ NO_LED - -led_config_t g_led_config = { - { - // Key Matrix to RGB Index - { 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, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, __, 52, 53, 54, 55, 56, 57 }, - { 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, __, 70, __, 71, 72, 73, 74, __ }, - { 75, __, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, __, 87, 88, 89, 90, 91, 92 }, - { 93, 94, 95, 96, __, __, 97, __, __, 98, 99,100,101,102,103,104,105, __,106, __ }, - }, - { - // RGB Index to Physical Position - {0, 0}, {12, 0}, {24, 0}, {36, 0}, {48, 0}, {60, 0}, {72, 0}, {84, 0}, {96, 0}, {108, 0}, {120, 0}, {132, 0}, {144, 0}, {156, 0}, {168, 0}, {180, 0},{192, 0},{203, 0},{213, 0}, - {0,13}, {12,13}, {24,13}, {36,13}, {48,13}, {60,13}, {72,13}, {84,13}, {96,13}, {108,13}, {120,13}, {132,13}, {144,13}, {156,13}, {168,13}, {180,13},{192,13},{203,13},{213,13},{224,13}, - {2,26}, {18,26}, {30,26}, {42,26}, {54,26}, {66,26}, {78,26}, {90,26}, {102,26},{114,26}, {126,26}, {138,26}, {150,26}, {168,32}, {180,26},{192,26},{203,26},{213,26},{224,32}, - {4,39}, {22,39}, {34,39}, {46,39}, {58,39}, {70,39}, {82,39}, {94,39}, {106,39},{118,39}, {130,39}, {142,39}, {154,39}, {180,39},{192,39},{203,39},{213,39}, - {7,51}, {28,51}, {40,51}, {52,51}, {64,51}, {76,51}, {88,51}, {100,51},{112,51}, {124,51}, {136,51}, {148,51}, {168,51}, {180,51},{192,51},{203,51},{213,51},{224,57}, - {1,64}, {15,64}, {30,64}, {42,64}, {78,64}, {114,64}, {126,64}, {140,64}, {154,64}, {168,64}, {180,64},{192,64},{202,64},{213,64}, - }, - { - // RGB Index to Flag - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - } -}; -#endif diff --git a/keyboards/keychron/k17_max/jis_encoder/rgb/rules.mk b/keyboards/keychron/k17_max/jis_encoder/rgb/rules.mk deleted file mode 100644 index 6e7633bfe0..0000000000 --- a/keyboards/keychron/k17_max/jis_encoder/rgb/rules.mk +++ /dev/null @@ -1 +0,0 @@ -# This file intentionally left blank diff --git a/keyboards/keychron/k17_max/jis_encoder/white/config.h b/keyboards/keychron/k17_max/jis_encoder/white/config.h deleted file mode 100644 index 29af4cab4b..0000000000 --- a/keyboards/keychron/k17_max/jis_encoder/white/config.h +++ /dev/null @@ -1,54 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#pragma once - -#ifdef LED_MATRIX_ENABLE -/* LED Matrix driver configuration */ -# define LED_MATRIX_LED_COUNT 107 -# define DRIVER_COUNT 1 -# define DRIVER_CS_PINS \ - { B9 } - -/* Scan phase of led driver set as MSKPHASE_9CHANNEL(defined as 0x03 in snled27351.h) */ -# define SNLED27351_PHASE_CHANNEL MSKPHASE_9CHANNEL -/* Set LED driver current */ -# define SNLED27351_CURRENT_TUNE \ - { 0x2A, 0x2A, 0x2A, 0x2A, 0x2A, 0x2A, 0x2A, 0x2A, 0x2A, 0x2A, 0x2A, 0x2A } - -/* Set to infinit, which is use in USB mode by default */ -# define LED_MATRIX_TIMEOUT LED_MATRIX_TIMEOUT_INFINITE -/* Allow shutdown of led driver to save power */ -# define LED_MATRIX_DRIVER_SHUTDOWN_ENABLE -/* Turn off backlight on low brightness to save power */ -# define LED_MATRIX_BRIGHTNESS_TURN_OFF_VAL 48 - -/* Indications */ -# define DIM_CAPS_LOCK -# define CAPS_LOCK_INDEX 56 -# define DIM_NUM_LOCK -# define NUM_LOCK_INDEX 35 -# define LOW_BAT_IND_INDEX \ - { 95 } -# define BT_HOST_LED_MATRIX_LIST \ - { 20, 21, 22 } -# define P2P4G_HOST_LED_MATRIX_LIST \ - { 23 } -# define BAT_LEVEL_LED_LIST \ - { 20, 21, 22, 23, 24, 25, 26, 27, 28, 29 } - -# define LED_MATRIX_KEYPRESSES -#endif diff --git a/keyboards/keychron/k17_max/jis_encoder/white/info.json b/keyboards/keychron/k17_max/jis_encoder/white/info.json deleted file mode 100644 index eb339d33e3..0000000000 --- a/keyboards/keychron/k17_max/jis_encoder/white/info.json +++ /dev/null @@ -1,158 +0,0 @@ -{ - "usb": { - "pid": "0x0A05", - "device_version": "1.0.0" - }, - "features": { - "led_matrix": true - }, - "indicators": { - "caps_lock": "C8", - "num_lock": "B10", - "on_state": 1 - }, - "matrix_pins": { - "cols": ["C6", "C7", "A13", "A14", "A15", "C10", "C11", "C13", "C14", "C15", "C0", "C1", "C2", "C3", "A0", "A1", "A2", "A3", "C5"], - "rows": ["C12", "D2", "B3", "B4", "B5", "B6"] - }, - "layouts":{ - "LAYOUT_108_jis": { - "layout": [ - {"matrix":[0,0], "x":0, "y":0}, - {"matrix":[0,1], "x":1, "y":0}, - {"matrix":[0,2], "x":2, "y":0}, - {"matrix":[0,3], "x":3, "y":0}, - {"matrix":[0,4], "x":4, "y":0}, - {"matrix":[0,5], "x":5, "y":0}, - {"matrix":[0,6], "x":6, "y":0}, - {"matrix":[0,7], "x":7, "y":0}, - {"matrix":[0,8], "x":8, "y":0}, - {"matrix":[0,9], "x":9, "y":0}, - {"matrix":[0,10], "x":10, "y":0}, - {"matrix":[0,11], "x":11, "y":0}, - {"matrix":[0,12], "x":12, "y":0}, - {"matrix":[0,13], "x":13, "y":0}, - {"matrix":[0,14], "x":14,"y":0}, - {"matrix":[0,15], "x":15.25, "y":0}, - {"matrix":[0,16], "x":16.5, "y":0}, - {"matrix":[0,17], "x":17.5, "y":0}, - {"matrix":[0,18], "x":18.5, "y":0}, - - {"matrix":[1,0], "x":0, "y":1.25}, - {"matrix":[1,1], "x":1, "y":1.25}, - {"matrix":[1,2], "x":2, "y":1.25}, - {"matrix":[1,3], "x":3, "y":1.25}, - {"matrix":[1,4], "x":4, "y":1.25}, - {"matrix":[1,5], "x":5, "y":1.25}, - {"matrix":[1,6], "x":6, "y":1.25}, - {"matrix":[1,7], "x":7, "y":1.25}, - {"matrix":[1,8], "x":8, "y":1.25}, - {"matrix":[1,9], "x":9, "y":1.25}, - {"matrix":[1,10], "x":10, "y":1.25}, - {"matrix":[1,11], "x":11, "y":1.25}, - {"matrix":[1,12], "x":12, "y":1.25}, - {"matrix":[1,13], "x":13, "y":1.25}, - {"matrix":[1,14], "x":14, "y":1.25}, - {"matrix":[1,15], "x":15.25, "y":1.25}, - {"matrix":[1,16], "x":16.5, "y":1.25}, - {"matrix":[1,17], "x":17.5, "y":1.25}, - {"matrix":[1,18], "x":18.5, "y":1.25}, - - {"matrix":[2,0], "x":0, "y":2.25, "w":1.5}, - {"matrix":[2,1], "x":1.5, "y":2.25}, - {"matrix":[2,2], "x":2.5, "y":2.25}, - {"matrix":[2,3], "x":3.5, "y":2.25}, - {"matrix":[2,4], "x":4.5, "y":2.25}, - {"matrix":[2,5], "x":5.5, "y":2.25}, - {"matrix":[2,6], "x":6.5, "y":2.25}, - {"matrix":[2,7], "x":7.5, "y":2.25}, - {"matrix":[2,8], "x":8.5, "y":2.25}, - {"matrix":[2,9], "x":9.5, "y":2.25}, - {"matrix":[2,10], "x":10.5, "y":2.25}, - {"matrix":[2,11], "x":11.5, "y":2.25}, - {"matrix":[2,12], "x":12.5, "y":2.25}, - {"matrix":[2,15], "x":15.25,"y":2.25}, - {"matrix":[2,16], "x":16.5, "y":2.25}, - {"matrix":[2,17], "x":17.5, "y":2.25}, - {"matrix":[2,18], "x":18.5, "y":2.25}, - - {"matrix":[3,0], "x":0, "y":3.25, "w":1.75}, - {"matrix":[3,1], "x":1.75, "y":3.25}, - {"matrix":[3,2], "x":2.75, "y":3.25}, - {"matrix":[3,3], "x":3.75, "y":3.25}, - {"matrix":[3,4], "x":4.75, "y":3.25}, - {"matrix":[3,5], "x":5.75, "y":3.25}, - {"matrix":[3,6], "x":6.75, "y":3.25}, - {"matrix":[3,7], "x":7.75, "y":3.25}, - {"matrix":[3,8], "x":8.75, "y":3.25}, - {"matrix":[3,9], "x":9.75, "y":3.25}, - {"matrix":[3,10], "x":10.75, "y":3.25}, - {"matrix":[3,11], "x":11.75, "y":3.25}, - {"matrix":[3,13], "x":12.75, "y":3.25}, - {"matrix":[2,14], "x":13.75, "y":2.25, "w":1.25, "h":2}, - {"matrix":[3,15], "x":15.25, "y":3.25}, - {"matrix":[3,16], "x":16.5, "y":3.25}, - {"matrix":[3,17], "x":17.5, "y":3.25}, - {"matrix":[3,18], "x":18.5, "y":3.25}, - - {"matrix":[4,0], "x":0, "y":4.25, "w":2.25}, - {"matrix":[4,2], "x":2.25, "y":4.25}, - {"matrix":[4,3], "x":3.25, "y":4.25}, - {"matrix":[4,4], "x":4.25, "y":4.25}, - {"matrix":[4,5], "x":5.25, "y":4.25}, - {"matrix":[4,6], "x":6.25, "y":4.25}, - {"matrix":[4,7], "x":7.25, "y":4.25}, - {"matrix":[4,8], "x":8.25, "y":4.25}, - {"matrix":[4,9], "x":9.25, "y":4.25}, - {"matrix":[4,10], "x":10.25,"y":4.25}, - {"matrix":[4,11], "x":11.25,"y":4.25}, - {"matrix":[4,12], "x":12.25,"y":4.25}, - {"matrix":[4,14], "x":13.25,"y":4.25, "w":1.75}, - {"matrix":[4,15], "x":15.25, "y":4.25}, - {"matrix":[4,16], "x":16.5, "y":4.25}, - {"matrix":[4,17], "x":17.5, "y":4.25}, - {"matrix":[4,18], "x":18.5, "y":4.25}, - - {"matrix":[5,0], "x":0, "y":5.25, "w":1.25}, - {"matrix":[5,1], "x":1.25,"y":5.25}, - {"matrix":[5,2], "x":2.25, "y":5.25, "w":1.25}, - {"matrix":[5,3], "x":3.5, "y":5.25}, - {"matrix":[5,4], "x":19.5, "y":0}, - {"matrix":[5,5], "x":19.5, "y":1.25}, - {"matrix":[5,6], "x":4.5, "y":5.25, "w":5}, - {"matrix":[5,7], "x":19.5, "y":2.25, "h":2}, - {"matrix":[5,8], "x":19.5, "y":4.25, "h":2}, - {"matrix":[5,9], "x":9.5, "y":5.25}, - {"matrix":[5,10], "x":10.5, "y":5.25}, - {"matrix":[5,11], "x":11.5, "y":5.25, "w":1.25}, - {"matrix":[5,12], "x":12.75, "y":5.25,"w":1.25}, - {"matrix":[5,13], "x":14.25, "y":5.25}, - {"matrix":[5,14], "x":15.25, "y":5.25}, - {"matrix":[5,15], "x":16.25, "y":5.25}, - {"matrix":[5,16], "x":17.5, "y":5.25}, - {"matrix":[5,18], "x":18.5, "y":5.25} - ] - } - }, - "led_matrix": { - "driver": "snled27351_spi", - "sleep": true, - "animations": { - "none": true, - "solid": true, - "breathing": true, - "band_pinwheel": true, - "band_spiral": true, - "cycle_left_right": true, - "cycle_up_down": true, - "cycle_out_in": true, - "dual_beacon": true, - "solid_reactive_simple": true, - "solid_reactive_multiwide": true, - "solid_reactive_multinexus": true, - "solid_splash": true, - "wave_left_right": true, - "wave_up_down": true - } - } -} diff --git a/keyboards/keychron/k17_max/jis_encoder/white/keymaps/default/keymap.c b/keyboards/keychron/k17_max/jis_encoder/white/keymaps/default/keymap.c deleted file mode 100644 index b644e5fa15..0000000000 --- a/keyboards/keychron/k17_max/jis_encoder/white/keymaps/default/keymap.c +++ /dev/null @@ -1,77 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#include QMK_KEYBOARD_H -#include "keychron_common.h" - -enum layers{ - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN, -}; - -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_108_jis( - KC_ESC, KC_BRID, KC_BRIU, KC_MCTRL, KC_LNPAD, BL_DOWN, BL_UP, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_SNAP, BL_STEP, KC_DEL, KC_F13, KC_F14, KC_F15, - KC_GRV, 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_INT3, KC_BSPC, KC_PGUP, KC_NUM, KC_PSLS, KC_PAST, - 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_PGDN, KC_P7, KC_P8, KC_P9, - 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_BSLS, KC_ENT, KC_HOME, KC_P4, KC_P5, KC_P6, - KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_INT1, KC_RSFT, KC_UP, KC_P1, KC_P2, KC_P3, - KC_LCTL, KC_LOPTN, KC_LCMMD, KC_LNG2, KC_MUTE, KC_PMNS, KC_SPC, KC_PPLS, KC_PENT, KC_LNG1, KC_RCMMD, MO(MAC_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT, KC_P0, KC_PDOT), - - [MAC_FN] = LAYOUT_108_jis( - _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, BL_TOGG, _______, _______, _______, _______, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - BL_TOGG, BL_STEP, BL_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, BL_DOWN, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_END, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, BL_TOGG, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ), - - [WIN_BASE] = LAYOUT_108_jis( - KC_ESC, 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_PSCR, BL_STEP, KC_DEL, _______, _______, _______, - KC_GRV, 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_INT3, KC_BSPC, KC_PGUP, KC_NUM, KC_PSLS, KC_PAST, - 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_PGDN, KC_P7, KC_P8, KC_P9, - 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_BSLS, KC_ENT, KC_HOME, KC_P4, KC_P5, KC_P6, - KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_INT1, KC_RSFT, KC_UP, KC_P1, KC_P2, KC_P3, - KC_LCTL, KC_LWIN, KC_LALT, KC_INT5, KC_MUTE, KC_PMNS, KC_SPC, KC_PPLS, KC_PENT, KC_INT4, KC_RALT, MO(WIN_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT, KC_P0, KC_PDOT ), - - [WIN_FN] = LAYOUT_108_jis( - _______, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, BL_DOWN, BL_UP, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, BL_TOGG, _______, _______, _______, _______, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - BL_TOGG, BL_STEP, BL_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, BL_DOWN, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_END, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, BL_TOGG, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ), -}; - -#if defined(ENCODER_MAP_ENABLE) -const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][2] = { - [MAC_BASE] = {ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [MAC_FN] = {ENCODER_CCW_CW(BL_DOWN, BL_UP)}, - [WIN_BASE] = {ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [WIN_FN] = {ENCODER_CCW_CW(BL_DOWN, BL_UP)}, -}; -#endif - -// clang-format on -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - if (!process_record_keychron_common(keycode, record)) { - return false; - } - return true; -} diff --git a/keyboards/keychron/k17_max/jis_encoder/white/keymaps/via/keymap.c b/keyboards/keychron/k17_max/jis_encoder/white/keymaps/via/keymap.c deleted file mode 100644 index b644e5fa15..0000000000 --- a/keyboards/keychron/k17_max/jis_encoder/white/keymaps/via/keymap.c +++ /dev/null @@ -1,77 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#include QMK_KEYBOARD_H -#include "keychron_common.h" - -enum layers{ - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN, -}; - -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_108_jis( - KC_ESC, KC_BRID, KC_BRIU, KC_MCTRL, KC_LNPAD, BL_DOWN, BL_UP, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_SNAP, BL_STEP, KC_DEL, KC_F13, KC_F14, KC_F15, - KC_GRV, 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_INT3, KC_BSPC, KC_PGUP, KC_NUM, KC_PSLS, KC_PAST, - 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_PGDN, KC_P7, KC_P8, KC_P9, - 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_BSLS, KC_ENT, KC_HOME, KC_P4, KC_P5, KC_P6, - KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_INT1, KC_RSFT, KC_UP, KC_P1, KC_P2, KC_P3, - KC_LCTL, KC_LOPTN, KC_LCMMD, KC_LNG2, KC_MUTE, KC_PMNS, KC_SPC, KC_PPLS, KC_PENT, KC_LNG1, KC_RCMMD, MO(MAC_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT, KC_P0, KC_PDOT), - - [MAC_FN] = LAYOUT_108_jis( - _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, BL_TOGG, _______, _______, _______, _______, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - BL_TOGG, BL_STEP, BL_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, BL_DOWN, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_END, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, BL_TOGG, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ), - - [WIN_BASE] = LAYOUT_108_jis( - KC_ESC, 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_PSCR, BL_STEP, KC_DEL, _______, _______, _______, - KC_GRV, 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_INT3, KC_BSPC, KC_PGUP, KC_NUM, KC_PSLS, KC_PAST, - 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_PGDN, KC_P7, KC_P8, KC_P9, - 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_BSLS, KC_ENT, KC_HOME, KC_P4, KC_P5, KC_P6, - KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_INT1, KC_RSFT, KC_UP, KC_P1, KC_P2, KC_P3, - KC_LCTL, KC_LWIN, KC_LALT, KC_INT5, KC_MUTE, KC_PMNS, KC_SPC, KC_PPLS, KC_PENT, KC_INT4, KC_RALT, MO(WIN_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT, KC_P0, KC_PDOT ), - - [WIN_FN] = LAYOUT_108_jis( - _______, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, BL_DOWN, BL_UP, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, BL_TOGG, _______, _______, _______, _______, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - BL_TOGG, BL_STEP, BL_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, BL_DOWN, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_END, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, BL_TOGG, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ), -}; - -#if defined(ENCODER_MAP_ENABLE) -const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][2] = { - [MAC_BASE] = {ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [MAC_FN] = {ENCODER_CCW_CW(BL_DOWN, BL_UP)}, - [WIN_BASE] = {ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [WIN_FN] = {ENCODER_CCW_CW(BL_DOWN, BL_UP)}, -}; -#endif - -// clang-format on -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - if (!process_record_keychron_common(keycode, record)) { - return false; - } - return true; -} diff --git a/keyboards/keychron/k17_max/jis_encoder/white/keymaps/via/rules.mk b/keyboards/keychron/k17_max/jis_encoder/white/keymaps/via/rules.mk deleted file mode 100644 index 1e5b99807c..0000000000 --- a/keyboards/keychron/k17_max/jis_encoder/white/keymaps/via/rules.mk +++ /dev/null @@ -1 +0,0 @@ -VIA_ENABLE = yes diff --git a/keyboards/keychron/k17_max/jis_encoder/white/rules.mk b/keyboards/keychron/k17_max/jis_encoder/white/rules.mk deleted file mode 100644 index 6e7633bfe0..0000000000 --- a/keyboards/keychron/k17_max/jis_encoder/white/rules.mk +++ /dev/null @@ -1 +0,0 @@ -# This file intentionally left blank diff --git a/keyboards/keychron/k17_max/jis_encoder/white/white.c b/keyboards/keychron/k17_max/jis_encoder/white/white.c deleted file mode 100644 index a9667c5477..0000000000 --- a/keyboards/keychron/k17_max/jis_encoder/white/white.c +++ /dev/null @@ -1,172 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#include "quantum.h" - -// clang-format off -#ifdef LED_MATRIX_ENABLE -const snled27351_led_t g_snled27351_leds[LED_MATRIX_LED_COUNT] = { -/* Refer to SNLED27351 manual for these locations - * driver - * | LED address - * | | */ - {0, F_1}, - {0, F_2}, - {0, F_3}, - {0, F_4}, - {0, F_5}, - {0, F_6}, - {0, F_7}, - {0, F_8}, - {0, F_9}, - {0, F_10}, - {0, F_11}, - {0, F_12}, - {0, F_13}, - {0, F_14}, - {0, F_15}, - {0, F_16}, - {0, A_6}, - {0, A_8}, - {0, A_9}, - - {0, E_1}, - {0, E_2}, - {0, E_3}, - {0, E_4}, - {0, E_5}, - {0, E_6}, - {0, E_7}, - {0, E_8}, - {0, E_9}, - {0, E_10}, - {0, E_11}, - {0, E_12}, - {0, E_13}, - {0, E_14}, - {0, E_15}, - {0, E_16}, - {0, H_7}, - {0, H_8}, - {0, H_9}, - - {0, D_1}, - {0, D_2}, - {0, D_3}, - {0, D_4}, - {0, D_5}, - {0, D_6}, - {0, D_7}, - {0, D_8}, - {0, D_9}, - {0, D_10}, - {0, D_11}, - {0, D_12}, - {0, D_13}, - {0, D_15}, - {0, D_16}, - {0, H_12}, - {0, H_13}, - {0, H_14}, - - {0, C_1}, - {0, C_2}, - {0, C_3}, - {0, C_4}, - {0, C_5}, - {0, C_6}, - {0, C_7}, - {0, C_8}, - {0, C_9}, - {0, C_10}, - {0, C_11}, - {0, C_12}, - {0, C_14}, - {0, C_16}, - {0, G_7}, - {0, G_8}, - {0, G_9}, - - {0, B_1}, - {0, B_3}, - {0, B_4}, - {0, B_5}, - {0, B_6}, - {0, B_7}, - {0, B_8}, - {0, B_9}, - {0, B_10}, - {0, B_11}, - {0, B_12}, - {0, B_13}, - {0, B_15}, - {0, B_16}, - {0, G_10}, - {0, G_11}, - {0, G_12}, - - {0, A_1}, - {0, A_2}, - {0, A_3}, - {0, A_4}, - {0, H_10}, - {0, A_7}, - {0, H_15}, - {0, G_13}, - {0, A_10}, - {0, A_11}, - {0, A_12}, - {0, A_13}, - {0, A_14}, - {0, A_15}, - {0, A_16}, - {0, G_14}, - {0, G_16}, -}; - - -#define __ NO_LED - -led_config_t g_led_config = { - { - // Key Matrix to LED Index - { 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, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, __, 51, 52, 53, 54, 55 }, - { 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, __, 68, __, 69, 70, 71, 72 }, - { 73, __, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, __, 85, 86, 87, 88, 89 }, - { 90, 91, 92, 93, __, 94, 95, 96, 97, 98, 99,100,101,102,103,104,105, __,106 }, - }, - { - // LED Index to Physical Position - {0, 0}, {12, 0}, {24, 0}, {36, 0}, {48, 0}, {60, 0}, {72, 0}, {84, 0}, {96, 0}, {108, 0}, {120, 0}, {132, 0}, {144, 0}, {156, 0}, {168, 0}, {180, 0}, {192, 0},{203, 0},{213,0}, - {0,13}, {12,13}, {24,13}, {36,13}, {48,13}, {60,13}, {72,13}, {84,13}, {96,13}, {108,13}, {120,13}, {132,13}, {144,13}, {156, 13},{168,13}, {180,13}, {192,13},{203,13},{213,13}, - {2,26}, {18,26}, {30,26}, {42,26}, {54,26}, {66,26}, {78,26}, {90,26}, {102,26},{114,26}, {126,26}, {138,26}, {150,26}, {168,32}, {180,26}, {192,26},{203,26},{213,26}, - {4,39}, {22,39}, {34,39}, {46,39}, {58,39}, {70,39}, {82,39}, {94,39}, {106,39},{118,39}, {130,39}, {142,39}, {154,39}, {180,39}, {192,39},{203,39},{213,39}, - {8,51}, {28,51}, {40,51}, {52,51}, {64,51}, {76,51}, {88,51}, {100,51},{112,51}, {124,51}, {136,51}, {148,51}, {168,51}, {180,51}, {192,51},{203,51},{213,51}, - {1,64}, {15,64}, {30,64}, {42,64}, {224,13},{78,64}, {224,32},{224,57},{114,64}, {126,64}, {140,64}, {154,64}, {168,64}, {180,64}, {192,64},{203,64},{213,64}, - }, - { - // LED Index to Flag - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 - } -}; -#endif diff --git a/keyboards/keychron/k17_max/k17_max.c b/keyboards/keychron/k17_max/k17_max.c deleted file mode 100644 index 6ce92125cc..0000000000 --- a/keyboards/keychron/k17_max/k17_max.c +++ /dev/null @@ -1,57 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#include "quantum.h" -#include "keychron_task.h" -#include "keychron_common.h" -#ifdef FACTORY_TEST_ENABLE -# include "factory_test.h" -#endif -#ifdef LK_WIRELESS_ENABLE -# include "lkbt51.h" -# include "wireless.h" -#endif - -bool dip_switch_update_kb(uint8_t index, bool active) { - if (index == 0) { - default_layer_set(1UL << (active ? 0 : 2)); - } - dip_switch_update_user(index, active); - - return true; -} - -void keyboard_post_init_kb(void) { -#ifdef LK_WIRELESS_ENABLE - palSetLineMode(P2P4_MODE_SELECT_PIN, PAL_MODE_INPUT); - palSetLineMode(BT_MODE_SELECT_PIN, PAL_MODE_INPUT); - - lkbt51_init(false); - wireless_init(); -#endif - -#ifdef ENCODER_ENABLE - encoder_cb_init(); -#endif - - keyboard_post_init_user(); -} - -#ifdef LK_WIRELESS_ENABLE -bool lpm_is_kb_idle(void) { - return !factory_reset_indicating(); -} -#endif diff --git a/keyboards/keychron/k17_max/mcuconf.h b/keyboards/keychron/k17_max/mcuconf.h deleted file mode 100644 index 89294ee64b..0000000000 --- a/keyboards/keychron/k17_max/mcuconf.h +++ /dev/null @@ -1,37 +0,0 @@ -/* Copyright 2024 @ 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 - -#include_next - -#undef STM32_HSECLK -#define STM32_HSECLK 16000000 - -#undef STM32_PLLM_VALUE -#define STM32_PLLM_VALUE 8 - -#undef STM32_PLLN_VALUE -#define STM32_PLLN_VALUE 96 - -#undef STM32_PLLP_VALUE -#define STM32_PLLP_VALUE 4 - -#undef STM32_PLLQ_VALUE -#define STM32_PLLQ_VALUE 4 - -#undef STM32_SPI_USE_SPI1 -#define STM32_SPI_USE_SPI1 TRUE diff --git a/keyboards/keychron/k17_max/readme.md b/keyboards/keychron/k17_max/readme.md deleted file mode 100644 index 8459dcc84f..0000000000 --- a/keyboards/keychron/k17_max/readme.md +++ /dev/null @@ -1,35 +0,0 @@ -# Keychron K17 Max - -![Keychron K17 Max](https://cdn.shopify.com/s/files/1/0059/0630/1017/files/K17-Max-3.jpg?v=1720250313) - -A customizable 96% low profile keyboard. - -* Keyboard Maintainer: [Keychron](https://github.com/keychron) -* Hardware Supported: Keychron K17 Max -* Hardware Availability: [Keychron K17 Max QMK/VIA Wireless Custom Mechanical Keyboard](https://www.keychron.com/products/keychron-k17-max-qmk-via-wireless-custom-mechanical-keyboard) - -Make example for this keyboard (after setting up your build environment): - - make keychron/k17_max/ansi/rgb:default - make keychron/k17_max/ansi/white:default - - make keychron/k17_max/iso/rgb:default - make keychron/k17_max/iso/white:default - - make keychron/k17_max/jis/rgb:default - make keychron/k17_max/jis/white:default - -Flashing example for this keyboard: - - make keychron/k17_max/ansi/rgb:default:flash - make keychron/k17_max/ansi/white:default:flash - - make keychron/k17_max/iso/rgb:default:flash - make keychron/k17_max/iso/white:default:flash - - make keychron/k17_max/jis/rgb:default:flash - make keychron/k17_max/jis/white:default:flash - -**Reset Key**: Disconnect the USB cable, toggle mode switch to "Cable", hold down the *Esc* key or reset button underneath space bar, then connect the USB cable. - -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). diff --git a/keyboards/keychron/k17_max/rules.mk b/keyboards/keychron/k17_max/rules.mk deleted file mode 100644 index 4eaf6820bc..0000000000 --- a/keyboards/keychron/k17_max/rules.mk +++ /dev/null @@ -1,4 +0,0 @@ -include keyboards/keychron/common/wireless/wireless.mk -include keyboards/keychron/common/keychron_common.mk - -VPATH += $(TOP_DIR)/keyboards/keychron diff --git a/keyboards/keychron/k17_max/via_json/k17_max_ansi_knob_rgb.json b/keyboards/keychron/k17_max/via_json/k17_max_ansi_knob_rgb.json deleted file mode 100644 index 04758609c2..0000000000 --- a/keyboards/keychron/k17_max/via_json/k17_max_ansi_knob_rgb.json +++ /dev/null @@ -1,335 +0,0 @@ -{ - "name": "Keychron K17 Max ANSI Knob RGB", - "vendorId": "0x3434", - "productId": "0x0A00", - "keycodes": ["qmk_lighting"], - "menus": [ - { - "label": "Lighting", - "content": [ - { - "label": "Backlight", - "content": [ - { - "label": "Brightness", - "type": "range", - "options": [0, 255], - "content": ["id_qmk_rgb_matrix_brightness", 3, 1] - }, - { - "label": "Effect", - "type": "dropdown", - "content": ["id_qmk_rgb_matrix_effect", 3, 2], - "options": [ - ["None", 0], - ["Solid Color", 1], - ["Breathing", 2], - ["Band Spiral Val", 3], - ["Cycle All", 4], - ["Cycle Left Right", 5], - ["Cycle Up Down", 6], - ["Rainbow Moving Chevron", 7], - ["Cycle Out In", 8], - ["Cycle Out In Dual", 9], - ["Cycle Pinwheel", 10], - ["Cycle Spiral", 11], - ["Dual Beacon", 12], - ["Rainbow Beacon", 13], - ["Jellybean Raindrops", 14], - ["Pixel Rain", 15], - ["Typing Heatmap", 16], - ["Digital Rain", 17], - ["Reactive Simple", 18], - ["Reactive Multiwide", 19], - ["Reactive Multinexus", 20], - ["Splash", 21], - ["Solid Splash", 22] - ] - }, - { - "showIf": "{id_qmk_rgb_matrix_effect} > 1", - "label": "Effect Speed", - "type": "range", - "options": [0, 255], - "content": ["id_qmk_rgb_matrix_effect_speed", 3, 3] - }, - { - "showIf": "{id_qmk_rgb_matrix_effect} != 0 && ( {id_qmk_rgb_matrix_effect} < 4 || {id_qmk_rgb_matrix_effect} == 18 || ({id_qmk_rgb_matrix_effect} > 17 && {id_qmk_rgb_matrix_effect} != 21) ) ", - "label": "Color", - "type": "color", - "content": ["id_qmk_rgb_matrix_color", 3, 4] - } - ] - } - ] - } - ], - "customKeycodes": [ - {"name": "Left Option", "title": "Left Option", "shortName": "LOpt"}, - {"name": "Right Option", "title": "Right Option", "shortName": "ROpt"}, - {"name": "Left Cmd", "title": "Left Command", "shortName": "LCmd"}, - {"name": "Right Cmd", "title": "Right Command", "shortName": "RCmd"}, - {"name": "Misson Control", "title": "Misson Control in Mac", "shortName": "MCtl"}, - {"name": "Lanuch Pad", "title": "Lanuch Pad in Windows", "shortName": "LPad"}, - {"name": "Task View", "title": "Task View in Windows", "shortName": "Task"}, - {"name": "File Explorer", "title": "File Explorer in Windows", "shortName": "File"}, - {"name": "Screen shot", "title": "Screenshot in macOS", "shortName": "SShot"}, - {"name": "Cortana", "title": "Cortana in Windows", "shortName": "Cortana"}, - {"name": "Siri", "title": "Siri in macOS", "shortName": "Siri"}, - {"name": "Bluetooth Host 1", "title": "Bluetooth Host 1", "shortName": "BTH1"}, - {"name": "Bluetooth Host 2", "title": "Bluetooth Host 2", "shortName": "BTH2"}, - {"name": "Bluetooth Host 3", "title": "Bluetooth Host 3", "shortName": "BTH3"}, - {"name": "2.4G", "title": "2.4G", "shortName": "2.4G"}, - {"name": "Battery Level", "title": "Show battery level", "shortName": "Batt"} - ], - "matrix": {"rows": 6, "cols": 20}, - "layouts": { - "keymap": [ - [ - { - "c": "#777777" - }, - "0,0\nESC", - { - "c": "#cccccc" - }, - "0,1", - "0,2", - "0,3", - "0,4", - { - "c": "#aaaaaa" - }, - "0,5", - "0,6", - "0,7", - "0,8", - "0,9", - { - "c": "#cccccc" - }, - "0,10", - "0,11", - "0,12", - { - "c": "#aaaaaa" - }, - "0,13", - "0,14", - { - "x": 0.25 - }, - "0,15", - { - "x": 0.25, - "c": "#cccccc" - }, - "0,16", - "0,17", - "0,18", - { - "c": "#aaaaaa" - }, - "0,19\n\n\n\n\n\n\n\n\ne0" - ], - [ - { - "y": 0.25 - }, - "1,0", - { - "c": "#cccccc" - }, - "1,1", - "1,2", - "1,3", - "1,4", - "1,5", - "1,6", - "1,7", - "1,8", - "1,9", - "1,10", - "1,11", - "1,12", - { - "c": "#aaaaaa", - "w": 2 - }, - "1,14", - { - "x": 0.25 - }, - "1,15", - { - "x": 0.25, - "c": "#cccccc" - }, - "1,16", - "1,17", - "1,18", - "1,19" - ], - [ - { - "c": "#aaaaaa", - "w": 1.5 - }, - "2,0", - { - "c": "#cccccc" - }, - "2,1", - "2,2", - "2,3", - "2,4", - "2,5", - "2,6", - "2,7", - "2,8", - "2,9", - "2,10", - "2,11", - "2,12", - { - "c": "#aaaaaa", - "w": 1.5 - }, - "2,14", - { - "x": 0.25 - }, - "2,15", - { - "x": 0.25, - "c": "#cccccc" - }, - "2,16", - "2,17", - "2,18", - { - "h": 2 - }, - "2,19" - ], - [ - { - "c": "#aaaaaa", - "w": 1.75 - }, - "3,0", - { - "c": "#cccccc" - }, - "3,1", - "3,2", - "3,3", - "3,4", - "3,5", - "3,6", - "3,7", - "3,8", - "3,9", - "3,10", - "3,11", - { - "c": "#777777", - "w": 2.25 - }, - "3,13", - { - "x": 0.25, - "c": "#aaaaaa" - }, - "3,15", - { - "x": 0.25, - "c": "#cccccc" - }, - "3,16", - "3,17", - "3,18" - ], - [ - { - "c": "#aaaaaa", - "w": 2.25 - }, - "4,0", - { - "c": "#cccccc" - }, - "4,2", - "4,3", - "4,4", - "4,5", - "4,6", - "4,7", - "4,8", - "4,9", - "4,10", - "4,11", - { - "c": "#aaaaaa", - "w": 1.75 - }, - "4,12", - { - "x": 0.25, - "c": "#cccccc" - }, - "4,14", - { - "x": 1.25 - }, - "4,16", - "4,17", - "4,18", - { - "h": 2 - }, - "4,19" - ], - [ - { - "c": "#aaaaaa", - "w": 1.25 - }, - "5,0", - { - "w": 1.25 - }, - "5,1", - { - "w": 1.25 - }, - "5,2", - { - "c": "#cccccc", - "w": 6.25 - }, - "5,6", - { - "c": "#aaaaaa" - }, - "5,10", - "5,11", - "5,12", - { - "x": 0.25, - "c": "#cccccc" - }, - "5,13", - "5,14", - "5,15", - { - "x": 0.25, - "c": "#cccccc", - "w": 2 - }, - "5,16", - "5,18" - ] - ] - } -} diff --git a/keyboards/keychron/k17_max/via_json/k17_max_ansi_knob_white.json b/keyboards/keychron/k17_max/via_json/k17_max_ansi_knob_white.json deleted file mode 100644 index 53a2998a78..0000000000 --- a/keyboards/keychron/k17_max/via_json/k17_max_ansi_knob_white.json +++ /dev/null @@ -1,274 +0,0 @@ -{ - "name": "Keychron K17 Max ANSI Knob White", - "vendorId": "0x3434", - "productId": "0x0A03", - "keycodes": ["qmk_lighting"], - "customKeycodes": [ - {"name": "Left Option", "title": "Left Option", "shortName": "LOpt"}, - {"name": "Right Option", "title": "Right Option", "shortName": "ROpt"}, - {"name": "Left Cmd", "title": "Left Command", "shortName": "LCmd"}, - {"name": "Right Cmd", "title": "Right Command", "shortName": "RCmd"}, - {"name": "Misson Control", "title": "Misson Control in Mac", "shortName": "MCtl"}, - {"name": "Lanuch Pad", "title": "Lanuch Pad in Windows", "shortName": "LPad"}, - {"name": "Task View", "title": "Task View in Windows", "shortName": "Task"}, - {"name": "File Explorer", "title": "File Explorer in Windows", "shortName": "File"}, - {"name": "Screen shot", "title": "Screenshot in macOS", "shortName": "SShot"}, - {"name": "Cortana", "title": "Cortana in Windows", "shortName": "Cortana"}, - {"name": "Siri", "title": "Siri in macOS", "shortName": "Siri"}, - {"name": "Bluetooth Host 1", "title": "Bluetooth Host 1", "shortName": "BTH1"}, - {"name": "Bluetooth Host 2", "title": "Bluetooth Host 2", "shortName": "BTH2"}, - {"name": "Bluetooth Host 3", "title": "Bluetooth Host 3", "shortName": "BTH3"}, - {"name": "2.4G", "title": "2.4G", "shortName": "2.4G"}, - {"name": "Battery Level", "title": "Show battery level", "shortName": "Batt"} - ], - "matrix": {"rows": 6, "cols": 20}, - "layouts": { - "keymap": [ - [ - { - "c": "#777777" - }, - "0,0\nESC", - { - "c": "#cccccc" - }, - "0,1", - "0,2", - "0,3", - "0,4", - { - "c": "#aaaaaa" - }, - "0,5", - "0,6", - "0,7", - "0,8", - "0,9", - { - "c": "#cccccc" - }, - "0,10", - "0,11", - "0,12", - { - "c": "#aaaaaa" - }, - "0,13", - "0,14", - { - "x": 0.25 - }, - "0,15", - { - "x": 0.25, - "c": "#cccccc" - }, - "0,16", - "0,17", - "0,18", - { - "c": "#aaaaaa" - }, - "0,19\n\n\n\n\n\n\n\n\ne0" - ], - [ - { - "y": 0.25 - }, - "1,0", - { - "c": "#cccccc" - }, - "1,1", - "1,2", - "1,3", - "1,4", - "1,5", - "1,6", - "1,7", - "1,8", - "1,9", - "1,10", - "1,11", - "1,12", - { - "c": "#aaaaaa", - "w": 2 - }, - "1,14", - { - "x": 0.25 - }, - "1,15", - { - "x": 0.25, - "c": "#cccccc" - }, - "1,16", - "1,17", - "1,18", - "1,19" - ], - [ - { - "c": "#aaaaaa", - "w": 1.5 - }, - "2,0", - { - "c": "#cccccc" - }, - "2,1", - "2,2", - "2,3", - "2,4", - "2,5", - "2,6", - "2,7", - "2,8", - "2,9", - "2,10", - "2,11", - "2,12", - { - "c": "#aaaaaa", - "w": 1.5 - }, - "2,14", - { - "x": 0.25 - }, - "2,15", - { - "x": 0.25, - "c": "#cccccc" - }, - "2,16", - "2,17", - "2,18", - { - "h": 2 - }, - "2,19" - ], - [ - { - "c": "#aaaaaa", - "w": 1.75 - }, - "3,0", - { - "c": "#cccccc" - }, - "3,1", - "3,2", - "3,3", - "3,4", - "3,5", - "3,6", - "3,7", - "3,8", - "3,9", - "3,10", - "3,11", - { - "c": "#777777", - "w": 2.25 - }, - "3,13", - { - "x": 0.25, - "c": "#aaaaaa" - }, - "3,15", - { - "x": 0.25, - "c": "#cccccc" - }, - "3,16", - "3,17", - "3,18" - ], - [ - { - "c": "#aaaaaa", - "w": 2.25 - }, - "4,0", - { - "c": "#cccccc" - }, - "4,2", - "4,3", - "4,4", - "4,5", - "4,6", - "4,7", - "4,8", - "4,9", - "4,10", - "4,11", - { - "c": "#aaaaaa", - "w": 1.75 - }, - "4,12", - { - "x": 0.25, - "c": "#cccccc" - }, - "4,14", - { - "x": 1.25 - }, - "4,16", - "4,17", - "4,18", - { - "h": 2 - }, - "4,19" - ], - [ - { - "c": "#aaaaaa", - "w": 1.25 - }, - "5,0", - { - "w": 1.25 - }, - "5,1", - { - "w": 1.25 - }, - "5,2", - { - "c": "#cccccc", - "w": 6.25 - }, - "5,6", - { - "c": "#aaaaaa" - }, - "5,10", - "5,11", - "5,12", - { - "x": 0.25, - "c": "#cccccc" - }, - "5,13", - "5,14", - "5,15", - { - "x": 0.25, - "c": "#cccccc", - "w": 2 - }, - "5,16", - "5,18" - ] - ] - } -} \ No newline at end of file diff --git a/keyboards/keychron/k17_max/via_json/k17_max_iso_knob_rgb.json b/keyboards/keychron/k17_max/via_json/k17_max_iso_knob_rgb.json deleted file mode 100644 index 4800d071b7..0000000000 --- a/keyboards/keychron/k17_max/via_json/k17_max_iso_knob_rgb.json +++ /dev/null @@ -1,337 +0,0 @@ -{ - "name": "Keychron K17 Max ISO Knob RGB", - "vendorId": "0x3434", - "productId": "0x0A01", - "keycodes": ["qmk_lighting"], - "menus": [ - { - "label": "Lighting", - "content": [ - { - "label": "Backlight", - "content": [ - { - "label": "Brightness", - "type": "range", - "options": [0, 255], - "content": ["id_qmk_rgb_matrix_brightness", 3, 1] - }, - { - "label": "Effect", - "type": "dropdown", - "content": ["id_qmk_rgb_matrix_effect", 3, 2], - "options": [ - ["None", 0], - ["Solid Color", 1], - ["Breathing", 2], - ["Band Spiral Val", 3], - ["Cycle All", 4], - ["Cycle Left Right", 5], - ["Cycle Up Down", 6], - ["Rainbow Moving Chevron", 7], - ["Cycle Out In", 8], - ["Cycle Out In Dual", 9], - ["Cycle Pinwheel", 10], - ["Cycle Spiral", 11], - ["Dual Beacon", 12], - ["Rainbow Beacon", 13], - ["Jellybean Raindrops", 14], - ["Pixel Rain", 15], - ["Typing Heatmap", 16], - ["Digital Rain", 17], - ["Reactive Simple", 18], - ["Reactive Multiwide", 19], - ["Reactive Multinexus", 20], - ["Splash", 21], - ["Solid Splash", 22] - ] - }, - { - "showIf": "{id_qmk_rgb_matrix_effect} > 1", - "label": "Effect Speed", - "type": "range", - "options": [0, 255], - "content": ["id_qmk_rgb_matrix_effect_speed", 3, 3] - }, - { - "showIf": "{id_qmk_rgb_matrix_effect} != 0 && ( {id_qmk_rgb_matrix_effect} < 4 || {id_qmk_rgb_matrix_effect} == 18 || ({id_qmk_rgb_matrix_effect} > 17 && {id_qmk_rgb_matrix_effect} != 21) ) ", - "label": "Color", - "type": "color", - "content": ["id_qmk_rgb_matrix_color", 3, 4] - } - ] - } - ] - } - ], - "customKeycodes": [ - {"name": "Left Option", "title": "Left Option", "shortName": "LOpt"}, - {"name": "Right Option", "title": "Right Option", "shortName": "ROpt"}, - {"name": "Left Cmd", "title": "Left Command", "shortName": "LCmd"}, - {"name": "Right Cmd", "title": "Right Command", "shortName": "RCmd"}, - {"name": "Misson Control", "title": "Misson Control in Mac", "shortName": "MCtl"}, - {"name": "Lanuch Pad", "title": "Lanuch Pad in Windows", "shortName": "LPad"}, - {"name": "Task View", "title": "Task View in Windows", "shortName": "Task"}, - {"name": "File Explorer", "title": "File Explorer in Windows", "shortName": "File"}, - {"name": "Screen shot", "title": "Screenshot in macOS", "shortName": "SShot"}, - {"name": "Cortana", "title": "Cortana in Windows", "shortName": "Cortana"}, - {"name": "Siri", "title": "Siri in macOS", "shortName": "Siri"}, - {"name": "Bluetooth Host 1", "title": "Bluetooth Host 1", "shortName": "BTH1"}, - {"name": "Bluetooth Host 2", "title": "Bluetooth Host 2", "shortName": "BTH2"}, - {"name": "Bluetooth Host 3", "title": "Bluetooth Host 3", "shortName": "BTH3"}, - {"name": "2.4G", "title": "2.4G", "shortName": "2.4G"}, - {"name": "Battery Level", "title": "Show battery level", "shortName": "Batt"} - ], - "matrix": {"rows": 6, "cols": 20}, - "layouts": { - "keymap": [ - [ - { - "c": "#777777" - }, - "0,0\nESC", - { - "c": "#cccccc" - }, - "0,1", - "0,2", - "0,3", - "0,4", - { - "c": "#aaaaaa" - }, - "0,5", - "0,6", - "0,7", - "0,8", - "0,9", - { - "c": "#cccccc" - }, - "0,10", - "0,11", - "0,12", - { - "c": "#aaaaaa" - }, - "0,13", - "0,14", - { - "x": 0.25 - }, - "0,15", - { - "x": 0.25, - "c": "#cccccc" - }, - "0,16", - "0,17", - "0,18", - { - "c": "#aaaaaa" - }, - "0,19\n\n\n\n\n\n\n\n\ne0" - ], - [ - { - "y": 0.25 - }, - "1,0", - { - "c": "#cccccc" - }, - "1,1", - "1,2", - "1,3", - "1,4", - "1,5", - "1,6", - "1,7", - "1,8", - "1,9", - "1,10", - "1,11", - "1,12", - { - "c": "#aaaaaa", - "w": 2 - }, - "1,14", - { - "x": 0.25 - }, - "1,15", - { - "x": 0.25, - "c": "#cccccc" - }, - "1,16", - "1,17", - "1,18", - "1,19" - ], - [ - { - "c": "#aaaaaa", - "w": 1.5 - }, - "2,0", - { - "c": "#cccccc" - }, - "2,1", - "2,2", - "2,3", - "2,4", - "2,5", - "2,6", - "2,7", - "2,8", - "2,9", - "2,10", - "2,11", - "2,12", - { - "x": 0.25, - "c": "#aaaaaa", - "w": 1.25, - "h": 2, - "w2": 1.5, - "h2": 1, - "x2": -0.25 - }, - "2,14", - { - "x": 0.25 - }, - "2,15", - { - "x": 0.25, - "c": "#cccccc" - }, - "2,16", - "2,17", - "2,18", - { - "h": 2 - }, - "2,19" - ], - [ - { - "c": "#aaaaaa", - "w": 1.75 - }, - "3,0", - { - "c": "#cccccc" - }, - "3,1", - "3,2", - "3,3", - "3,4", - "3,5", - "3,6", - "3,7", - "3,8", - "3,9", - "3,10", - "3,11", - "3,13", - { - "x": 1.5, - "c": "#aaaaaa" - }, - "3,15", - { - "x": 0.25, - "c": "#cccccc" - }, - "3,16", - "3,17", - "3,18" - ], - [ - { - "c": "#aaaaaa", - "w": 1.25 - }, - "4,0", - { - "c": "#cccccc" - }, - "4,1", - "4,2", - "4,3", - "4,4", - "4,5", - "4,6", - "4,7", - "4,8", - "4,9", - "4,10", - "4,11", - { - "c": "#aaaaaa", - "w": 1.75 - }, - "4,12", - { - "x": 0.25, - "c": "#cccccc" - }, - "4,14", - { - "x": 1.25 - }, - "4,16", - "4,17", - "4,18", - { - "h": 2 - }, - "4,19" - ], - [ - { - "c": "#aaaaaa", - "w": 1.25 - }, - "5,0", - { - "w": 1.25 - }, - "5,1", - { - "w": 1.25 - }, - "5,2", - { - "c": "#cccccc", - "w": 6.25 - }, - "5,6", - { - "c": "#aaaaaa" - }, - "5,10", - "5,11", - "5,12", - { - "x": 0.25, - "c": "#cccccc" - }, - "5,13", - "5,14", - "5,15", - { - "x": 0.25, - "c": "#cccccc", - "w": 2 - }, - "5,16", - "5,18" - ] - ] - } -} diff --git a/keyboards/keychron/k17_max/via_json/k17_max_iso_knob_white.json b/keyboards/keychron/k17_max/via_json/k17_max_iso_knob_white.json deleted file mode 100644 index 541fc55e37..0000000000 --- a/keyboards/keychron/k17_max/via_json/k17_max_iso_knob_white.json +++ /dev/null @@ -1,276 +0,0 @@ -{ - "name": "Keychron K17 Max ISO Knob White", - "vendorId": "0x3434", - "productId": "0x0A04", - "keycodes": ["qmk_lighting"], - "customKeycodes": [ - {"name": "Left Option", "title": "Left Option", "shortName": "LOpt"}, - {"name": "Right Option", "title": "Right Option", "shortName": "ROpt"}, - {"name": "Left Cmd", "title": "Left Command", "shortName": "LCmd"}, - {"name": "Right Cmd", "title": "Right Command", "shortName": "RCmd"}, - {"name": "Misson Control", "title": "Misson Control in Mac", "shortName": "MCtl"}, - {"name": "Lanuch Pad", "title": "Lanuch Pad in Windows", "shortName": "LPad"}, - {"name": "Task View", "title": "Task View in Windows", "shortName": "Task"}, - {"name": "File Explorer", "title": "File Explorer in Windows", "shortName": "File"}, - {"name": "Screen shot", "title": "Screenshot in macOS", "shortName": "SShot"}, - {"name": "Cortana", "title": "Cortana in Windows", "shortName": "Cortana"}, - {"name": "Siri", "title": "Siri in macOS", "shortName": "Siri"}, - {"name": "Bluetooth Host 1", "title": "Bluetooth Host 1", "shortName": "BTH1"}, - {"name": "Bluetooth Host 2", "title": "Bluetooth Host 2", "shortName": "BTH2"}, - {"name": "Bluetooth Host 3", "title": "Bluetooth Host 3", "shortName": "BTH3"}, - {"name": "2.4G", "title": "2.4G", "shortName": "2.4G"}, - {"name": "Battery Level", "title": "Show battery level", "shortName": "Batt"} - ], - "matrix": {"rows": 6, "cols": 18}, - "layouts": { - "keymap": [ - [ - { - "c": "#777777" - }, - "0,0\nESC", - { - "c": "#cccccc" - }, - "0,1", - "0,2", - "0,3", - "0,4", - { - "c": "#aaaaaa" - }, - "0,5", - "0,6", - "0,7", - "0,8", - "0,9", - { - "c": "#cccccc" - }, - "0,10", - "0,11", - "0,12", - { - "c": "#aaaaaa" - }, - "4,14", - "0,13", - { - "x": 0.25 - }, - "0,14", - { - "x": 0.25, - "c": "#cccccc" - }, - "0,15", - "0,16", - "0,17", - { - "c": "#aaaaaa" - }, - "5,4\n\n\n\n\n\n\n\n\ne0" - ], - [ - { - "y": 0.25 - }, - "1,0", - { - "c": "#cccccc" - }, - "1,1", - "1,2", - "1,3", - "1,4", - "1,5", - "1,6", - "1,7", - "1,8", - "1,9", - "1,10", - "1,11", - "1,12", - { - "c": "#aaaaaa", - "w": 2 - }, - "1,13", - { - "x": 0.25 - }, - "1,14", - { - "x": 0.25, - "c": "#cccccc" - }, - "1,15", - "1,16", - "1,17", - "5,5" - ], - [ - { - "c": "#aaaaaa", - "w": 1.5 - }, - "2,0", - { - "c": "#cccccc" - }, - "2,1", - "2,2", - "2,3", - "2,4", - "2,5", - "2,6", - "2,7", - "2,8", - "2,9", - "2,10", - "2,11", - "2,12", - { - "x": 0.25, - "c": "#aaaaaa", - "w": 1.25, - "h": 2, - "w2": 1.5, - "h2": 1, - "x2": -0.25 - }, - "2,13", - { - "x": 0.25 - }, - "2,14", - { - "x": 0.25, - "c": "#cccccc" - }, - "2,15", - "2,16", - "2,17", - { - "h": 2 - }, - "5,7" - ], - [ - { - "c": "#aaaaaa", - "w": 1.75 - }, - "3,0", - { - "c": "#cccccc" - }, - "3,1", - "3,2", - "3,3", - "3,4", - "3,5", - "3,6", - "3,7", - "3,8", - "3,9", - "3,10", - "3,11", - "3,13", - { - "x": 1.5, - "c": "#aaaaaa" - }, - "3,14", - { - "x": 0.25, - "c": "#cccccc" - }, - "3,15", - "3,16", - "3,17" - ], - [ - { - "c": "#aaaaaa", - "w": 1.25 - }, - "4,0", - { - "c": "#cccccc" - }, - "4,1", - "4,2", - "4,3", - "4,4", - "4,5", - "4,6", - "4,7", - "4,8", - "4,9", - "4,10", - "4,11", - { - "c": "#aaaaaa", - "w": 1.75 - }, - "4,12", - { - "x": 0.25, - "c": "#cccccc" - }, - "4,13", - { - "x": 1.25 - }, - "4,15", - "4,16", - "4,17", - { - "h": 2 - }, - "5,8" - ], - [ - { - "c": "#aaaaaa", - "w": 1.25 - }, - "5,0", - { - "w": 1.25 - }, - "5,1", - { - "w": 1.25 - }, - "5,2", - { - "c": "#cccccc", - "w": 6.25 - }, - "5,6", - { - "c": "#aaaaaa" - }, - "5,10", - "5,11", - "5,12", - { - "x": 0.25, - "c": "#cccccc" - }, - "5,16", - "5,13", - "5,14", - { - "x": 0.25, - "c": "#cccccc", - "w": 2 - }, - "5,15", - "5,17" - ] - ] - } -} \ No newline at end of file diff --git a/keyboards/keychron/k17_max/via_json/k17_max_jis_knob_rgb.json b/keyboards/keychron/k17_max/via_json/k17_max_jis_knob_rgb.json deleted file mode 100644 index ae5640655b..0000000000 --- a/keyboards/keychron/k17_max/via_json/k17_max_jis_knob_rgb.json +++ /dev/null @@ -1,339 +0,0 @@ -{ - "name": "Keychron K17 Max JIS Knob RGB", - "vendorId": "0x3434", - "productId": "0x0A02", - "keycodes": ["qmk_lighting"], - "menus": [ - { - "label": "Lighting", - "content": [ - { - "label": "Backlight", - "content": [ - { - "label": "Brightness", - "type": "range", - "options": [0, 255], - "content": ["id_qmk_rgb_matrix_brightness", 3, 1] - }, - { - "label": "Effect", - "type": "dropdown", - "content": ["id_qmk_rgb_matrix_effect", 3, 2], - "options": [ - ["None", 0], - ["Solid Color", 1], - ["Breathing", 2], - ["Band Spiral Val", 3], - ["Cycle All", 4], - ["Cycle Left Right", 5], - ["Cycle Up Down", 6], - ["Rainbow Moving Chevron", 7], - ["Cycle Out In", 8], - ["Cycle Out In Dual", 9], - ["Cycle Pinwheel", 10], - ["Cycle Spiral", 11], - ["Dual Beacon", 12], - ["Rainbow Beacon", 13], - ["Jellybean Raindrops", 14], - ["Pixel Rain", 15], - ["Typing Heatmap", 16], - ["Digital Rain", 17], - ["Reactive Simple", 18], - ["Reactive Multiwide", 19], - ["Reactive Multinexus", 20], - ["Splash", 21], - ["Solid Splash", 22] - ] - }, - { - "showIf": "{id_qmk_rgb_matrix_effect} > 1", - "label": "Effect Speed", - "type": "range", - "options": [0, 255], - "content": ["id_qmk_rgb_matrix_effect_speed", 3, 3] - }, - { - "showIf": "{id_qmk_rgb_matrix_effect} != 0 && ( {id_qmk_rgb_matrix_effect} < 4 || {id_qmk_rgb_matrix_effect} == 18 || ({id_qmk_rgb_matrix_effect} > 17 && {id_qmk_rgb_matrix_effect} != 21) ) ", - "label": "Color", - "type": "color", - "content": ["id_qmk_rgb_matrix_color", 3, 4] - } - ] - } - ] - } - ], - "customKeycodes": [ - {"name": "Left Option", "title": "Left Option", "shortName": "LOpt"}, - {"name": "Right Option", "title": "Right Option", "shortName": "ROpt"}, - {"name": "Left Cmd", "title": "Left Command", "shortName": "LCmd"}, - {"name": "Right Cmd", "title": "Right Command", "shortName": "RCmd"}, - {"name": "Misson Control", "title": "Misson Control in Mac", "shortName": "MCtl"}, - {"name": "Lanuch Pad", "title": "Lanuch Pad in Windows", "shortName": "LPad"}, - {"name": "Task View", "title": "Task View in Windows", "shortName": "Task"}, - {"name": "File Explorer", "title": "File Explorer in Windows", "shortName": "File"}, - {"name": "Screen shot", "title": "Screenshot in macOS", "shortName": "SShot"}, - {"name": "Cortana", "title": "Cortana in Windows", "shortName": "Cortana"}, - {"name": "Siri", "title": "Siri in macOS", "shortName": "Siri"}, - {"name": "Bluetooth Host 1", "title": "Bluetooth Host 1", "shortName": "BTH1"}, - {"name": "Bluetooth Host 2", "title": "Bluetooth Host 2", "shortName": "BTH2"}, - {"name": "Bluetooth Host 3", "title": "Bluetooth Host 3", "shortName": "BTH3"}, - {"name": "2.4G", "title": "2.4G", "shortName": "2.4G"}, - {"name": "Battery Level", "title": "Show battery level", "shortName": "Batt"} - ], - "matrix": {"rows": 6, "cols": 20}, - "layouts": { - "keymap": [ - [ - { - "c": "#777777" - }, - "0,0\nESC", - { - "c": "#cccccc" - }, - "0,1", - "0,2", - "0,3", - "0,4", - { - "c": "#aaaaaa" - }, - "0,5", - "0,6", - "0,7", - "0,8", - "0,9", - { - "c": "#cccccc" - }, - "0,10", - "0,11", - "0,12", - { - "c": "#aaaaaa" - }, - "0,13", - "0,14", - { - "x": 0.25 - }, - "0,15", - { - "x": 0.25, - "c": "#cccccc" - }, - "0,16", - "0,17", - "0,18", - { - "c": "#aaaaaa" - }, - "0,19\n\n\n\n\n\n\n\n\ne0" - ], - [ - { - "y": 0.25 - }, - "1,0", - { - "c": "#cccccc" - }, - "1,1", - "1,2", - "1,3", - "1,4", - "1,5", - "1,6", - "1,7", - "1,8", - "1,9", - "1,10", - "1,11", - "1,12", - "1,13", - "1,14", - { - "x": 0.25, - "c": "#aaaaaa" - }, - "1,15", - { - "x": 0.25, - "c": "#cccccc" - }, - "1,16", - "1,17", - "1,18", - "1,19" - ], - [ - { - "c": "#aaaaaa", - "w": 1.5 - }, - "2,0", - { - "c": "#cccccc" - }, - "2,1", - "2,2", - "2,3", - "2,4", - "2,5", - "2,6", - "2,7", - "2,8", - "2,9", - "2,10", - "2,11", - "2,12", - { - "x": 0.25, - "c": "#aaaaaa", - "w": 1.25, - "h": 2, - "w2": 1.5, - "h2": 1, - "x2": -0.25 - }, - "2,14", - { - "x": 0.25 - }, - "2,15", - { - "x": 0.25, - "c": "#cccccc" - }, - "2,16", - "2,17", - "2,18", - { - "h": 2 - }, - "2,19" - ], - [ - { - "c": "#aaaaaa", - "w": 1.75 - }, - "3,0", - { - "c": "#cccccc" - }, - "3,1", - "3,2", - "3,3", - "3,4", - "3,5", - "3,6", - "3,7", - "3,8", - "3,9", - "3,10", - "3,11", - "3,13", - { - "x": 1.5, - "c": "#aaaaaa" - }, - "3,15", - { - "x": 0.25, - "c": "#cccccc" - }, - "3,16", - "3,17", - "3,18" - ], - [ - { - "c": "#aaaaaa", - "w": 2.25 - }, - "4,0", - { - "c": "#cccccc" - }, - "4,2", - "4,3", - "4,4", - "4,5", - "4,6", - "4,7", - "4,8", - "4,9", - "4,10", - "4,11", - "4,12", - { - "c": "#aaaaaa", - "w": 1.75 - }, - "4,14", - { - "x": 0.25, - "c": "#cccccc" - }, - "4,15", - { - "x": 0.25 - }, - "4,16", - "4,17", - "4,18", - { - "h": 2 - }, - "4,19" - ], - [ - { - "c": "#aaaaaa", - "w": 1.25 - }, - "5,0", - "5,1", - { - "w": 1.25 - }, - "5,2", - "5,3", - { - "c": "#cccccc", - "w": 5 - }, - "5,6", - { - "c": "#aaaaaa" - }, - "5,9", - "5,10", - { - "w": 1.25 - }, - "5,11", - { - "w": 1.25 - }, - "5,12", - { - "x": 0.25, - "c": "#cccccc" - }, - "5,13", - "5,14", - "5,15", - { - "x": 0.25, - "c": "#cccccc" - }, - "5,16", - "5,18" - ] - ] - } -} diff --git a/keyboards/keychron/k17_max/via_json/k17_max_jis_knob_white.json b/keyboards/keychron/k17_max/via_json/k17_max_jis_knob_white.json deleted file mode 100644 index 25f90bab92..0000000000 --- a/keyboards/keychron/k17_max/via_json/k17_max_jis_knob_white.json +++ /dev/null @@ -1,277 +0,0 @@ -{ - "name": "Keychron K17 Max JIS Knob White", - "vendorId": "0x3434", - "productId": "0x0A05", - "keycodes": ["qmk_lighting"], - "customKeycodes": [ - {"name": "Left Option", "title": "Left Option", "shortName": "LOpt"}, - {"name": "Right Option", "title": "Right Option", "shortName": "ROpt"}, - {"name": "Left Cmd", "title": "Left Command", "shortName": "LCmd"}, - {"name": "Right Cmd", "title": "Right Command", "shortName": "RCmd"}, - {"name": "Misson Control", "title": "Misson Control in Mac", "shortName": "MCtl"}, - {"name": "Lanuch Pad", "title": "Lanuch Pad in Windows", "shortName": "LPad"}, - {"name": "Task View", "title": "Task View in Windows", "shortName": "Task"}, - {"name": "File Explorer", "title": "File Explorer in Windows", "shortName": "File"}, - {"name": "Screen shot", "title": "Screenshot in macOS", "shortName": "SShot"}, - {"name": "Cortana", "title": "Cortana in Windows", "shortName": "Cortana"}, - {"name": "Siri", "title": "Siri in macOS", "shortName": "Siri"}, - {"name": "Bluetooth Host 1", "title": "Bluetooth Host 1", "shortName": "BTH1"}, - {"name": "Bluetooth Host 2", "title": "Bluetooth Host 2", "shortName": "BTH2"}, - {"name": "Bluetooth Host 3", "title": "Bluetooth Host 3", "shortName": "BTH3"}, - {"name": "2.4G", "title": "2.4G", "shortName": "2.4G"}, - {"name": "Battery Level", "title": "Show battery level", "shortName": "Batt"} - ], - "matrix": {"rows": 6, "cols": 19}, - "layouts": { - "keymap": [ - [ - { - "c": "#777777" - }, - "0,0\nESC", - { - "c": "#cccccc" - }, - "0,1", - "0,2", - "0,3", - "0,4", - { - "c": "#aaaaaa" - }, - "0,5", - "0,6", - "0,7", - "0,8", - "0,9", - { - "c": "#cccccc" - }, - "0,10", - "0,11", - "0,12", - { - "c": "#aaaaaa" - }, - "0,13", - "0,14", - { - "x": 0.25 - }, - "0,15", - { - "x": 0.25, - "c": "#cccccc" - }, - "0,16", - "0,17", - "0,18", - { - "c": "#aaaaaa" - }, - "5,4\n\n\n\n\n\n\n\n\ne0" - ], - [ - { - "y": 0.25 - }, - "1,0", - { - "c": "#cccccc" - }, - "1,1", - "1,2", - "1,3", - "1,4", - "1,5", - "1,6", - "1,7", - "1,8", - "1,9", - "1,10", - "1,11", - "1,12", - "1,13", - "1,14", - { - "x": 0.25, - "c": "#aaaaaa" - }, - "1,15", - { - "x": 0.25, - "c": "#cccccc" - }, - "1,16", - "1,17", - "1,18", - "5,5" - ], - [ - { - "c": "#aaaaaa", - "w": 1.5 - }, - "2,0", - { - "c": "#cccccc" - }, - "2,1", - "2,2", - "2,3", - "2,4", - "2,5", - "2,6", - "2,7", - "2,8", - "2,9", - "2,10", - "2,11", - "2,12", - { - "x": 0.25, - "c": "#aaaaaa", - "w": 1.25, - "h": 2, - "w2": 1.5, - "h2": 1, - "x2": -0.25 - }, - "2,14", - { - "x": 0.25 - }, - "2,15", - { - "x": 0.25, - "c": "#cccccc" - }, - "2,16", - "2,17", - "2,18", - { - "h": 2 - }, - "5,7" - ], - [ - { - "c": "#aaaaaa", - "w": 1.75 - }, - "3,0", - { - "c": "#cccccc" - }, - "3,1", - "3,2", - "3,3", - "3,4", - "3,5", - "3,6", - "3,7", - "3,8", - "3,9", - "3,10", - "3,11", - "3,13", - { - "x": 1.5, - "c": "#aaaaaa" - }, - "3,15", - { - "x": 0.25, - "c": "#cccccc" - }, - "3,16", - "3,17", - "3,18" - ], - [ - { - "c": "#aaaaaa", - "w": 2.25 - }, - "4,0", - { - "c": "#cccccc" - }, - "4,2", - "4,3", - "4,4", - "4,5", - "4,6", - "4,7", - "4,8", - "4,9", - "4,10", - "4,11", - "4,12", - { - "c": "#aaaaaa", - "w": 1.75 - }, - "4,14", - { - "x": 0.25, - "c": "#cccccc" - }, - "4,15", - { - "x": 0.25 - }, - "4,16", - "4,17", - "4,18", - { - "h": 2 - }, - "5,8" - ], - [ - { - "c": "#aaaaaa", - "w": 1.25 - }, - "5,0", - "5,1", - { - "w": 1.25 - }, - "5,2", - "5,3", - { - "c": "#cccccc", - "w": 5 - }, - "5,6", - { - "c": "#aaaaaa" - }, - "5,9", - "5,10", - { - "w": 1.25 - }, - "5,11", - { - "w": 1.25 - }, - "5,12", - { - "x": 0.25, - "c": "#cccccc" - }, - "5,13", - "5,14", - "5,15", - { - "x": 0.25 - }, - "5,16", - "5,18" - ] - ] - } -} \ No newline at end of file diff --git a/keyboards/keychron/k17_pro/ansi_encoder/rgb/config.h b/keyboards/keychron/k17_pro/ansi_encoder/rgb/config.h deleted file mode 100644 index 4879f8ed8a..0000000000 --- a/keyboards/keychron/k17_pro/ansi_encoder/rgb/config.h +++ /dev/null @@ -1,49 +0,0 @@ -/* 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 . - */ - -#pragma once - -#ifdef RGB_MATRIX_ENABLE -/* RGB Matrix Driver Configuration */ -# define DRIVER_COUNT 2 -# define DRIVER_ADDR_1 0b1110111 -# define DRIVER_ADDR_2 0b1110100 - -/* RGB Matrix Configuration */ -# define RGB_MATRIX_LED_COUNT 103 - -/* Set to infinit, which is use in USB mode by default */ -# define RGB_MATRIX_TIMEOUT RGB_MATRIX_TIMEOUT_INFINITE - -/* Allow to shutdown driver to save power */ -# define RGB_MATRIX_DRIVER_SHUTDOWN_ENABLE - -/* Turn off backllit if brightness value is low */ -# define RGB_MATRIX_BRIGHTNESS_TURN_OFF_VAL 48 - -/* Indication led index */ -# define NUM_LOCK_INDEX 34 -# define DIM_CAPS_LOCK -# define CAPS_LOCK_INDEX 57 -# define LOW_BAT_IND_INDEX 94 - -# define RGB_MATRIX_KEYPRESSES -# define RGB_MATRIX_FRAMEBUFFER_EFFECTS - -/* Set LED driver current */ -# define SNLED27351_CURRENT_TUNE \ - { 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18 } -#endif diff --git a/keyboards/keychron/k17_pro/ansi_encoder/rgb/info.json b/keyboards/keychron/k17_pro/ansi_encoder/rgb/info.json deleted file mode 100644 index e0c1179641..0000000000 --- a/keyboards/keychron/k17_pro/ansi_encoder/rgb/info.json +++ /dev/null @@ -1,146 +0,0 @@ -{ - "usb": { - "pid": "0x0206", - "device_version": "1.0.1" - }, - "features": { - "rgb_matrix": true - }, - "rgb_matrix": { - "driver": "snled27351", - "sleep": true, - "animations": { - "breathing": true, - "band_spiral_val": true, - "cycle_all": true, - "cycle_left_right": true, - "cycle_up_down": true, - "rainbow_moving_chevron": true, - "cycle_out_in": true, - "cycle_out_in_dual": true, - "cycle_pinwheel": true, - "cycle_spiral": true, - "dual_beacon": true, - "rainbow_beacon": true, - "jellybean_raindrops": true, - "pixel_rain": true, - "typing_heatmap": true, - "digital_rain": true, - "solid_reactive_simple": true, - "solid_reactive_multiwide": true, - "solid_reactive_multinexus": true, - "splash": true, - "solid_splash": true - }, - "layout": [ - {"matrix":[0, 0], "flags":1, "x":0, "y":0}, - {"matrix":[0, 1], "flags":1, "x":12, "y":0}, - {"matrix":[0, 2], "flags":1, "x":23, "y":0}, - {"matrix":[0, 3], "flags":1, "x":35, "y":0}, - {"matrix":[0, 4], "flags":1, "x":47, "y":0}, - {"matrix":[0, 5], "flags":1, "x":58, "y":0}, - {"matrix":[0, 6], "flags":1, "x":70, "y":0}, - {"matrix":[0, 7], "flags":1, "x":82, "y":0}, - {"matrix":[0, 8], "flags":1, "x":93, "y":0}, - {"matrix":[0, 9], "flags":1, "x":105, "y":0}, - {"matrix":[0, 10], "flags":1, "x":117, "y":0}, - {"matrix":[0, 11], "flags":1, "x":128, "y":0}, - {"matrix":[0, 12], "flags":1, "x":140, "y":0}, - {"matrix":[0, 13], "flags":1, "x":152, "y":0}, - {"matrix":[0, 14], "flags":1, "x":163, "y":0}, - {"matrix":[0, 15], "flags":1, "x":176, "y":0}, - {"matrix":[0, 16], "flags":1, "x":189, "y":0}, - {"matrix":[0, 17], "flags":1, "x":201, "y":0}, - {"matrix":[0, 18], "flags":1, "x":212, "y":0}, - - {"matrix":[1, 0], "flags":1, "x":0, "y":14}, - {"matrix":[1, 1], "flags":8, "x":12, "y":14}, - {"matrix":[1, 2], "flags":8, "x":23, "y":14}, - {"matrix":[1, 3], "flags":8, "x":35, "y":14}, - {"matrix":[1, 4], "flags":4, "x":47, "y":14}, - {"matrix":[1, 5], "flags":4, "x":58, "y":14}, - {"matrix":[1, 6], "flags":4, "x":70, "y":14}, - {"matrix":[1, 7], "flags":4, "x":82, "y":14}, - {"matrix":[1, 8], "flags":4, "x":93, "y":14}, - {"matrix":[1, 9], "flags":4, "x":105, "y":14}, - {"matrix":[1, 10], "flags":4, "x":117, "y":14}, - {"matrix":[1, 11], "flags":4, "x":128, "y":14}, - {"matrix":[1, 12], "flags":4, "x":140, "y":14}, - {"matrix":[1, 14], "flags":1, "x":157, "y":14}, - {"matrix":[1, 15], "flags":1, "x":176, "y":14}, - {"matrix":[1, 16], "flags":8, "x":189, "y":14}, - {"matrix":[1, 17], "flags":4, "x":201, "y":14}, - {"matrix":[1, 18], "flags":4, "x":212, "y":14}, - {"matrix":[1, 19], "flags":4, "x":224, "y":14}, - - {"matrix":[2, 0], "flags":1, "x":3, "y":26}, - {"matrix":[2, 1], "flags":4, "x":17, "y":26}, - {"matrix":[2, 2], "flags":4, "x":29, "y":26}, - {"matrix":[2, 3], "flags":4, "x":41, "y":26}, - {"matrix":[2, 4], "flags":4, "x":52, "y":26}, - {"matrix":[2, 5], "flags":4, "x":64, "y":26}, - {"matrix":[2, 6], "flags":4, "x":76, "y":26}, - {"matrix":[2, 7], "flags":4, "x":87, "y":26}, - {"matrix":[2, 8], "flags":4, "x":99, "y":26}, - {"matrix":[2, 9], "flags":4, "x":111, "y":26}, - {"matrix":[2, 10], "flags":4, "x":122, "y":26}, - {"matrix":[2, 11], "flags":4, "x":134, "y":26}, - {"matrix":[2, 12], "flags":4, "x":146, "y":26}, - {"matrix":[2, 14], "flags":1, "x":160, "y":26}, - {"matrix":[2, 15], "flags":1, "x":176, "y":26}, - {"matrix":[2, 16], "flags":4, "x":189, "y":26}, - {"matrix":[2, 17], "flags":4, "x":201, "y":26}, - {"matrix":[2, 18], "flags":4, "x":212, "y":26}, - {"matrix":[2, 19], "flags":4, "x":224, "y":33}, - - {"matrix":[3, 0], "flags":8, "x":4, "y":39}, - {"matrix":[3, 1], "flags":4, "x":20, "y":39}, - {"matrix":[3, 2], "flags":4, "x":32, "y":39}, - {"matrix":[3, 3], "flags":4, "x":43, "y":39}, - {"matrix":[3, 4], "flags":4, "x":55, "y":39}, - {"matrix":[3, 5], "flags":4, "x":67, "y":39}, - {"matrix":[3, 6], "flags":4, "x":79, "y":39}, - {"matrix":[3, 7], "flags":4, "x":90, "y":39}, - {"matrix":[3, 8], "flags":4, "x":102, "y":39}, - {"matrix":[3, 9], "flags":4, "x":114, "y":39}, - {"matrix":[3, 10], "flags":4, "x":125, "y":39}, - {"matrix":[3, 11], "flags":4, "x":137, "y":39}, - {"matrix":[3, 13], "flags":1, "x":156, "y":39}, - {"matrix":[3, 15], "flags":1, "x":176, "y":39}, - {"matrix":[3, 16], "flags":4, "x":189, "y":39}, - {"matrix":[3, 17], "flags":4, "x":201, "y":39}, - {"matrix":[3, 18], "flags":4, "x":212, "y":39}, - - {"matrix":[4, 0], "flags":1, "x":7, "y":51}, - {"matrix":[4, 2], "flags":4, "x":26, "y":51}, - {"matrix":[4, 3], "flags":4, "x":38, "y":51}, - {"matrix":[4, 4], "flags":4, "x":50, "y":51}, - {"matrix":[4, 5], "flags":4, "x":61, "y":51}, - {"matrix":[4, 6], "flags":4, "x":73, "y":51}, - {"matrix":[4, 7], "flags":4, "x":85, "y":51}, - {"matrix":[4, 8], "flags":4, "x":96, "y":51}, - {"matrix":[4, 9], "flags":4, "x":108, "y":51}, - {"matrix":[4, 10], "flags":4, "x":120, "y":51}, - {"matrix":[4, 11], "flags":4, "x":131, "y":51}, - {"matrix":[4, 12], "flags":1, "x":147, "y":51}, - {"matrix":[4, 14], "flags":1, "x":164, "y":51}, - {"matrix":[4, 16], "flags":4, "x":189, "y":51}, - {"matrix":[4, 17], "flags":4, "x":201, "y":51}, - {"matrix":[4, 18], "flags":4, "x":212, "y":51}, - {"matrix":[4, 19], "flags":4, "x":224, "y":58}, - - {"matrix":[5, 0], "flags":1, "x":1, "y":64}, - {"matrix":[5, 1], "flags":1, "x":16, "y":64}, - {"matrix":[5, 2], "flags":1, "x":31, "y":64}, - {"matrix":[5, 6], "flags":4, "x":74, "y":64}, - {"matrix":[5, 10], "flags":1, "x":117, "y":64}, - {"matrix":[5, 11], "flags":1, "x":128, "y":64}, - {"matrix":[5, 12], "flags":1, "x":140, "y":64}, - {"matrix":[5, 13], "flags":1, "x":153, "y":64}, - {"matrix":[5, 14], "flags":1, "x":164, "y":64}, - {"matrix":[5, 15], "flags":1, "x":176, "y":64}, - {"matrix":[5, 16], "flags":4, "x":195, "y":64}, - {"matrix":[5, 18], "flags":4, "x":212, "y":64} - ] - } -} diff --git a/keyboards/keychron/k17_pro/ansi_encoder/rgb/keymaps/default/keymap.c b/keyboards/keychron/k17_pro/ansi_encoder/rgb/keymaps/default/keymap.c deleted file mode 100644 index 74573e8668..0000000000 --- a/keyboards/keychron/k17_pro/ansi_encoder/rgb/keymaps/default/keymap.c +++ /dev/null @@ -1,65 +0,0 @@ -/* 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 . - */ - -#include QMK_KEYBOARD_H - -enum layers{ - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN, -}; - -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_104_ansi( - KC_ESC, KC_BRID, KC_BRIU, KC_MCTL, KC_LPAD, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_SNAP, RGB_MOD, KC_DEL, KC_F13, KC_F14, KC_F15, KC_MUTE, - KC_GRV, 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_PGUP, KC_NUM, KC_PSLS, KC_PAST, KC_PMNS, - 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_PGDN, KC_P7, KC_P8, KC_P9, KC_PPLS, - 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_HOME, KC_P4, KC_P5, KC_P6, - 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_P1, KC_P2, KC_P3, KC_PENT, - KC_LCTL, KC_LOPTN, KC_LCMMD, KC_SPC, KC_RCMMD, MO(MAC_FN), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT, KC_P0, KC_PDOT ), - [MAC_FN] = LAYOUT_104_ansi( - _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, RGB_TOG, _______, _______, _______, _______, RGB_TOG, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ), - [WIN_BASE] = LAYOUT_104_ansi( - KC_ESC, 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_PSCR, RGB_MOD, KC_DEL, KC_F13, KC_F14, KC_F15, KC_MUTE, - KC_GRV, 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_PGUP, KC_NUM, KC_PSLS, KC_PAST, KC_PMNS, - 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_PGDN, KC_P7, KC_P8, KC_P9, KC_PPLS, - 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_HOME, KC_P4, KC_P5, KC_P6, - 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_P1, KC_P2, KC_P3, KC_PENT, - KC_LCTL, KC_LWIN, KC_LALT, KC_SPC, KC_RALT, MO(WIN_FN), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT, KC_P0, KC_PDOT ), - [WIN_FN] = LAYOUT_104_ansi( - _______, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, RGB_TOG, _______, _______, _______, _______, RGB_TOG, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ), -}; - -#if defined(ENCODER_MAP_ENABLE) -const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][2] = { - [MAC_BASE] = {ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [MAC_FN] = {ENCODER_CCW_CW(RGB_VAD, RGB_VAI)}, - [WIN_BASE] = {ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [WIN_FN] = {ENCODER_CCW_CW(RGB_VAD, RGB_VAI)}, -}; -#endif // ENCODER_MAP_ENABLE diff --git a/keyboards/keychron/k17_pro/ansi_encoder/rgb/keymaps/default/rules.mk b/keyboards/keychron/k17_pro/ansi_encoder/rgb/keymaps/default/rules.mk deleted file mode 100644 index ee32568148..0000000000 --- a/keyboards/keychron/k17_pro/ansi_encoder/rgb/keymaps/default/rules.mk +++ /dev/null @@ -1 +0,0 @@ -ENCODER_MAP_ENABLE = yes diff --git a/keyboards/keychron/k17_pro/ansi_encoder/rgb/keymaps/via/keymap.c b/keyboards/keychron/k17_pro/ansi_encoder/rgb/keymaps/via/keymap.c deleted file mode 100644 index 62b678f50f..0000000000 --- a/keyboards/keychron/k17_pro/ansi_encoder/rgb/keymaps/via/keymap.c +++ /dev/null @@ -1,65 +0,0 @@ -/* 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 . - */ - -#include QMK_KEYBOARD_H - -enum layers{ - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN, -}; - -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_104_ansi( - KC_ESC, KC_BRID, KC_BRIU, KC_MICT, KC_LAPA, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_SNAP, RGB_MOD, KC_DEL, KC_F13, KC_F14, KC_F15, KC_MUTE, - KC_GRV, 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_PGUP, KC_NUM, KC_PSLS, KC_PAST, KC_PMNS, - 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_PGDN, KC_P7, KC_P8, KC_P9, KC_PPLS, - 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_HOME, KC_P4, KC_P5, KC_P6, - 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_P1, KC_P2, KC_P3, KC_PENT, - KC_LCTL, KC_LOPTN, KC_LCMMD, KC_SPC, KC_RCMMD, MO(MAC_FN), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT, KC_P0, KC_PDOT ), - [MAC_FN] = LAYOUT_104_ansi( - _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, RGB_TOG, _______, _______, _______, _______, RGB_TOG, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ), - [WIN_BASE] = LAYOUT_104_ansi( - KC_ESC, 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_PSCR, RGB_MOD, KC_DEL, KC_F13, KC_F14, KC_F15, KC_MUTE, - KC_GRV, 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_PGUP, KC_NUM, KC_PSLS, KC_PAST, KC_PMNS, - 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_PGDN, KC_P7, KC_P8, KC_P9, KC_PPLS, - 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_HOME, KC_P4, KC_P5, KC_P6, - 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_P1, KC_P2, KC_P3, KC_PENT, - KC_LCTL, KC_LWIN, KC_LALT, KC_SPC, KC_RALT, MO(WIN_FN), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT, KC_P0, KC_PDOT ), - [WIN_FN] = LAYOUT_104_ansi( - _______, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, RGB_TOG, _______, _______, _______, _______, RGB_TOG, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ), -}; - -#if defined(ENCODER_MAP_ENABLE) -const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][2] = { - [MAC_BASE] = {ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [MAC_FN] = {ENCODER_CCW_CW(RGB_VAD, RGB_VAI)}, - [WIN_BASE] = {ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [WIN_FN] = {ENCODER_CCW_CW(RGB_VAD, RGB_VAI)}, -}; -#endif // ENCODER_MAP_ENABLE diff --git a/keyboards/keychron/k17_pro/ansi_encoder/rgb/keymaps/via/rules.mk b/keyboards/keychron/k17_pro/ansi_encoder/rgb/keymaps/via/rules.mk deleted file mode 100644 index f1adcab005..0000000000 --- a/keyboards/keychron/k17_pro/ansi_encoder/rgb/keymaps/via/rules.mk +++ /dev/null @@ -1,2 +0,0 @@ -VIA_ENABLE = yes -ENCODER_MAP_ENABLE = yes diff --git a/keyboards/keychron/k17_pro/ansi_encoder/rgb/rgb.c b/keyboards/keychron/k17_pro/ansi_encoder/rgb/rgb.c deleted file mode 100644 index 5d8ddcb2eb..0000000000 --- a/keyboards/keychron/k17_pro/ansi_encoder/rgb/rgb.c +++ /dev/null @@ -1,137 +0,0 @@ -/* 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 . - */ - -#include "quantum.h" - -// clang-format off -#ifdef RGB_MATRIX_ENABLE -const snled27351_led_t PROGMEM g_snled27351_leds[RGB_MATRIX_LED_COUNT] = { -/* Refer to snled27351manual for these locations - * driver - * | R location - * | | G location - * | | | B location - * | | | | */ - {0, G_1, I_1, H_1}, - {0, G_2, I_2, H_2}, - {0, G_3, I_3, H_3}, - {0, G_4, I_4, H_4}, - {0, G_5, I_5, H_5}, - {0, G_6, I_6, H_6}, - {0, G_7, I_7, H_7}, - {0, G_8, I_8, H_8}, - {0, G_9, I_9, H_9}, - {0, G_10, I_10, H_10}, - {0, G_11, I_11, H_11}, - {0, G_12, I_12, H_12}, - {0, G_13, I_13, H_13}, - {0, G_14, I_14, H_14}, - {0, G_15, I_15, H_15}, - {0, G_16, I_16, H_16}, - {1, D_8, F_8, E_8}, - {1, D_9, F_9, E_9}, - {1, D_10, F_10, E_10}, - - {0, D_1, F_1, E_1}, - {0, D_2, F_2, E_2}, - {0, D_3, F_3, E_3}, - {0, D_4, F_4, E_4}, - {0, D_5, F_5, E_5}, - {0, D_6, F_6, E_6}, - {0, D_7, F_7, E_7}, - {0, D_8, F_8, E_8}, - {0, D_9, F_9, E_9}, - {0, D_10, F_10, E_10}, - {0, D_11, F_11, E_11}, - {0, D_12, F_12, E_12}, - {0, D_13, F_13, E_13}, - {0, D_15, F_15, E_15}, - {0, D_16, F_16, E_16}, - {0, J_7, L_7, K_7}, - {0, J_8, L_8, K_8}, - {0, J_9, L_9, K_9}, - {0, J_10, L_10, K_10}, - - {0, C_1, A_1, B_1}, - {0, C_2, A_2, B_2}, - {0, C_3, A_3, B_3}, - {0, C_4, A_4, B_4}, - {0, C_5, A_5, B_5}, - {0, C_6, A_6, B_6}, - {0, C_7, A_7, B_7}, - {0, C_8, A_8, B_8}, - {0, C_9, A_9, B_9}, - {0, C_10, A_10, B_10}, - {0, C_11, A_11, B_11}, - {0, C_12, A_12, B_12}, - {0, C_13, A_13, B_13}, - {0, C_15, A_15, B_15}, - {0, C_16, A_16, B_16}, - {0, J_12, L_12, K_12}, - {0, J_13, L_13, K_13}, - {0, J_14, L_14, K_14}, - {0, J_15, L_15, K_15}, - - {1, G_1, I_1, H_1}, - {1, G_2, I_2, H_2}, - {1, G_3, I_3, H_3}, - {1, G_4, I_4, H_4}, - {1, G_5, I_5, H_5}, - {1, G_6, I_6, H_6}, - {1, G_7, I_7, H_7}, - {1, G_8, I_8, H_8}, - {1, G_9, I_9, H_9}, - {1, G_10, I_10, H_10}, - {1, G_11, I_11, H_11}, - {1, G_12, I_12, H_12}, - {1, G_14, I_14, H_14}, - {1, G_16, I_16, H_16}, - {1, J_7, L_7, K_7}, - {1, J_8, L_8, K_8}, - {1, J_9, L_9, K_9}, - - {1, A_1, C_1, B_1}, - {1, A_3, C_3, B_3}, - {1, A_4, C_4, B_4}, - {1, A_5, C_5, B_5}, - {1, A_6, C_6, B_6}, - {1, A_7, C_7, B_7}, - {1, A_8, C_8, B_8}, - {1, A_9, C_9, B_9}, - {1, A_10, C_10, B_10}, - {1, A_11, C_11, B_11}, - {1, A_12, C_12, B_12}, - {1, A_13, C_13, B_13}, - {1, A_15, C_15, B_15}, - {1, J_10, L_10, K_10}, - {1, J_11, L_11, K_11}, - {1, J_12, L_12, K_12}, - {1, J_13, L_13, K_13}, - - {1, D_1, F_1, E_1}, - {1, D_2, F_2, E_2}, - {1, D_3, F_3, E_3}, - {1, D_7, F_7, E_7}, - {1, D_11, F_11, E_11}, - {1, D_12, F_12, E_12}, - {1, D_13, F_13, E_13}, - {1, D_14, F_14, E_14}, - {1, D_15, F_15, E_15}, - {1, D_16, F_16, E_16}, - {1, J_14, L_14, K_14}, - {1, J_16, L_16, K_16} -}; -#endif diff --git a/keyboards/keychron/k17_pro/ansi_encoder/rgb/rules.mk b/keyboards/keychron/k17_pro/ansi_encoder/rgb/rules.mk deleted file mode 100644 index 6e7633bfe0..0000000000 --- a/keyboards/keychron/k17_pro/ansi_encoder/rgb/rules.mk +++ /dev/null @@ -1 +0,0 @@ -# This file intentionally left blank diff --git a/keyboards/keychron/k17_pro/ansi_encoder/white/config.h b/keyboards/keychron/k17_pro/ansi_encoder/white/config.h deleted file mode 100644 index 4a1f11ecab..0000000000 --- a/keyboards/keychron/k17_pro/ansi_encoder/white/config.h +++ /dev/null @@ -1,51 +0,0 @@ -/* 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 . - */ - -#pragma once - -#ifdef LED_MATRIX_ENABLE -/* LED Matrix Driver Configuration */ -# define DRIVER_COUNT 1 -# define SNLED27351_I2C_ADDRESS_1 SNLED27351_I2C_ADDRESS_GND - -/* LED Matrix Configuration */ -# define LED_MATRIX_LED_COUNT 103 - -/* Set to infinit, which is use in USB mode by default */ -# define LED_MATRIX_TIMEOUT LED_MATRIX_TIMEOUT_INFINITE - -/* Allow shutdown of led driver to save power */ -# define LED_MATRIX_DRIVER_SHUTDOWN_ENABLE - -/* Turn off backlight on low brightness to save power */ -# define LED_MATRIX_BRIGHTNESS_TURN_OFF_VAL 48 - -/* Indication led index */ -# define NUM_LOCK_INDEX 34 -# define CAPS_LOCK_INDEX 57 -# define DIM_CAPS_LOCK -# define LOW_BAT_IND_INDEX 94 - -# define LED_MATRIX_KEYPRESSES -# define LED_MATRIX_KEYRELEASES - -/* Use first 8 channels of LED driver */ -# define PHASE_CHANNEL MSKPHASE_8CHANNEL - -/* Set LED driver current */ -# define SNLED27351_CURRENT_TUNE \ - { 0x28, 0x28, 0x28, 0x28, 0x28, 0x28, 0x28, 0x28, 0x28, 0x28, 0x28, 0x28 } -#endif diff --git a/keyboards/keychron/k17_pro/ansi_encoder/white/info.json b/keyboards/keychron/k17_pro/ansi_encoder/white/info.json deleted file mode 100644 index 9d26cc5070..0000000000 --- a/keyboards/keychron/k17_pro/ansi_encoder/white/info.json +++ /dev/null @@ -1,141 +0,0 @@ -{ - "usb": { - "pid": "0x0209", - "device_version": "1.0.1" - }, - "features": { - "led_matrix": true - }, - "led_matrix": { - "driver": "snled27351", - "sleep": true, - "animations": { - "none": true, - "solid": true, - "breathing": true, - "band_pinwheel": true, - "band_spiral": true, - "cycle_left_right": true, - "cycle_up_down": true, - "cycle_out_in": true, - "dual_beacon": true, - "solid_reactive_simple": true, - "solid_reactive_multiwide": true, - "solid_reactive_multinexus": true, - "solid_splash": true, - "wave_left_right": true, - "wave_up_down": true, - "effect_max": true - }, - "layout": [ - {"matrix":[0, 0], "flags":1, "x":0, "y":0}, - {"matrix":[0, 1], "flags":1, "x":12, "y":0}, - {"matrix":[0, 2], "flags":1, "x":23, "y":0}, - {"matrix":[0, 3], "flags":1, "x":35, "y":0}, - {"matrix":[0, 4], "flags":1, "x":47, "y":0}, - {"matrix":[0, 5], "flags":1, "x":58, "y":0}, - {"matrix":[0, 6], "flags":1, "x":70, "y":0}, - {"matrix":[0, 7], "flags":1, "x":82, "y":0}, - {"matrix":[0, 8], "flags":1, "x":93, "y":0}, - {"matrix":[0, 9], "flags":1, "x":105, "y":0}, - {"matrix":[0, 10], "flags":1, "x":117, "y":0}, - {"matrix":[0, 11], "flags":1, "x":128, "y":0}, - {"matrix":[0, 12], "flags":1, "x":140, "y":0}, - {"matrix":[0, 13], "flags":1, "x":152, "y":0}, - {"matrix":[0, 14], "flags":1, "x":163, "y":0}, - {"matrix":[0, 15], "flags":1, "x":176, "y":0}, - {"matrix":[0, 16], "flags":1, "x":189, "y":0}, - {"matrix":[0, 17], "flags":1, "x":201, "y":0}, - {"matrix":[0, 18], "flags":1, "x":212, "y":0}, - - {"matrix":[1, 0], "flags":1, "x":0, "y":14}, - {"matrix":[1, 1], "flags":8, "x":12, "y":14}, - {"matrix":[1, 2], "flags":8, "x":23, "y":14}, - {"matrix":[1, 3], "flags":8, "x":35, "y":14}, - {"matrix":[1, 4], "flags":4, "x":47, "y":14}, - {"matrix":[1, 5], "flags":4, "x":58, "y":14}, - {"matrix":[1, 6], "flags":4, "x":70, "y":14}, - {"matrix":[1, 7], "flags":4, "x":82, "y":14}, - {"matrix":[1, 8], "flags":4, "x":93, "y":14}, - {"matrix":[1, 9], "flags":4, "x":105, "y":14}, - {"matrix":[1, 10], "flags":4, "x":117, "y":14}, - {"matrix":[1, 11], "flags":4, "x":128, "y":14}, - {"matrix":[1, 12], "flags":4, "x":140, "y":14}, - {"matrix":[1, 14], "flags":1, "x":157, "y":14}, - {"matrix":[1, 15], "flags":1, "x":176, "y":14}, - {"matrix":[1, 16], "flags":8, "x":189, "y":14}, - {"matrix":[1, 17], "flags":4, "x":201, "y":14}, - {"matrix":[1, 18], "flags":4, "x":212, "y":14}, - {"matrix":[1, 19], "flags":4, "x":224, "y":14}, - - {"matrix":[2, 0], "flags":1, "x":3, "y":26}, - {"matrix":[2, 1], "flags":4, "x":17, "y":26}, - {"matrix":[2, 2], "flags":4, "x":29, "y":26}, - {"matrix":[2, 3], "flags":4, "x":41, "y":26}, - {"matrix":[2, 4], "flags":4, "x":52, "y":26}, - {"matrix":[2, 5], "flags":4, "x":64, "y":26}, - {"matrix":[2, 6], "flags":4, "x":76, "y":26}, - {"matrix":[2, 7], "flags":4, "x":87, "y":26}, - {"matrix":[2, 8], "flags":4, "x":99, "y":26}, - {"matrix":[2, 9], "flags":4, "x":111, "y":26}, - {"matrix":[2, 10], "flags":4, "x":122, "y":26}, - {"matrix":[2, 11], "flags":4, "x":134, "y":26}, - {"matrix":[2, 12], "flags":4, "x":146, "y":26}, - {"matrix":[2, 14], "flags":1, "x":160, "y":26}, - {"matrix":[2, 15], "flags":1, "x":176, "y":26}, - {"matrix":[2, 16], "flags":4, "x":189, "y":26}, - {"matrix":[2, 17], "flags":4, "x":201, "y":26}, - {"matrix":[2, 18], "flags":4, "x":212, "y":26}, - {"matrix":[2, 19], "flags":4, "x":224, "y":33}, - - {"matrix":[3, 0], "flags":8, "x":4, "y":39}, - {"matrix":[3, 1], "flags":4, "x":20, "y":39}, - {"matrix":[3, 2], "flags":4, "x":32, "y":39}, - {"matrix":[3, 3], "flags":4, "x":43, "y":39}, - {"matrix":[3, 4], "flags":4, "x":55, "y":39}, - {"matrix":[3, 5], "flags":4, "x":67, "y":39}, - {"matrix":[3, 6], "flags":4, "x":79, "y":39}, - {"matrix":[3, 7], "flags":4, "x":90, "y":39}, - {"matrix":[3, 8], "flags":4, "x":102, "y":39}, - {"matrix":[3, 9], "flags":4, "x":114, "y":39}, - {"matrix":[3, 10], "flags":4, "x":125, "y":39}, - {"matrix":[3, 11], "flags":4, "x":137, "y":39}, - {"matrix":[3, 13], "flags":1, "x":156, "y":39}, - {"matrix":[3, 15], "flags":1, "x":176, "y":39}, - {"matrix":[3, 16], "flags":4, "x":189, "y":39}, - {"matrix":[3, 17], "flags":4, "x":201, "y":39}, - {"matrix":[3, 18], "flags":4, "x":212, "y":39}, - - {"matrix":[4, 0], "flags":1, "x":7, "y":51}, - {"matrix":[4, 2], "flags":4, "x":26, "y":51}, - {"matrix":[4, 3], "flags":4, "x":38, "y":51}, - {"matrix":[4, 4], "flags":4, "x":50, "y":51}, - {"matrix":[4, 5], "flags":4, "x":61, "y":51}, - {"matrix":[4, 6], "flags":4, "x":73, "y":51}, - {"matrix":[4, 7], "flags":4, "x":85, "y":51}, - {"matrix":[4, 8], "flags":4, "x":96, "y":51}, - {"matrix":[4, 9], "flags":4, "x":108, "y":51}, - {"matrix":[4, 10], "flags":4, "x":120, "y":51}, - {"matrix":[4, 11], "flags":4, "x":131, "y":51}, - {"matrix":[4, 12], "flags":1, "x":147, "y":51}, - {"matrix":[4, 14], "flags":1, "x":164, "y":51}, - {"matrix":[4, 16], "flags":4, "x":189, "y":51}, - {"matrix":[4, 17], "flags":4, "x":201, "y":51}, - {"matrix":[4, 18], "flags":4, "x":212, "y":51}, - {"matrix":[4, 19], "flags":4, "x":224, "y":58}, - - {"matrix":[5, 0], "flags":1, "x":1, "y":64}, - {"matrix":[5, 1], "flags":1, "x":16, "y":64}, - {"matrix":[5, 2], "flags":1, "x":31, "y":64}, - {"matrix":[5, 6], "flags":4, "x":74, "y":64}, - {"matrix":[5, 10], "flags":1, "x":117, "y":64}, - {"matrix":[5, 11], "flags":1, "x":128, "y":64}, - {"matrix":[5, 12], "flags":1, "x":140, "y":64}, - {"matrix":[5, 13], "flags":1, "x":153, "y":64}, - {"matrix":[5, 14], "flags":1, "x":164, "y":64}, - {"matrix":[5, 15], "flags":1, "x":176, "y":64}, - {"matrix":[5, 16], "flags":4, "x":195, "y":64}, - {"matrix":[5, 18], "flags":4, "x":212, "y":64} - ] - } -} diff --git a/keyboards/keychron/k17_pro/ansi_encoder/white/keymaps/default/keymap.c b/keyboards/keychron/k17_pro/ansi_encoder/white/keymaps/default/keymap.c deleted file mode 100644 index 094f96faab..0000000000 --- a/keyboards/keychron/k17_pro/ansi_encoder/white/keymaps/default/keymap.c +++ /dev/null @@ -1,65 +0,0 @@ -/* 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 . - */ - -#include QMK_KEYBOARD_H - -enum layers{ - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN, -}; - -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_104_ansi( - KC_ESC, KC_BRID, KC_BRIU, KC_MCTL, KC_LPAD, BL_DOWN, BL_UP, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_SNAP, BL_STEP, KC_DEL, KC_F13, KC_F14, KC_F15, KC_MUTE, - KC_GRV, 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_PGUP, KC_NUM, KC_PSLS, KC_PAST, KC_PMNS, - 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_PGDN, KC_P7, KC_P8, KC_P9, KC_PPLS, - 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_HOME, KC_P4, KC_P5, KC_P6, - 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_P1, KC_P2, KC_P3, KC_PENT, - KC_LCTL, KC_LOPTN, KC_LCMMD, KC_SPC, KC_RCMMD, MO(MAC_FN), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT, KC_P0, KC_PDOT ), - [MAC_FN] = LAYOUT_104_ansi( - _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, BL_TOGG, _______, _______, _______, _______, BL_TOGG, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - BL_TOGG, BL_STEP, BL_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, BL_DOWN, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ), - [WIN_BASE] = LAYOUT_104_ansi( - KC_ESC, 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_PSCR, BL_STEP, KC_DEL, KC_F13, KC_F14, KC_F15, KC_MUTE, - KC_GRV, 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_PGUP, KC_NUM, KC_PSLS, KC_PAST, KC_PMNS, - 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_PGDN, KC_P7, KC_P8, KC_P9, KC_PPLS, - 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_HOME, KC_P4, KC_P5, KC_P6, - 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_P1, KC_P2, KC_P3, KC_PENT, - KC_LCTL, KC_LWIN, KC_LALT, KC_SPC, KC_RALT, MO(WIN_FN), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT, KC_P0, KC_PDOT ), - [WIN_FN] = LAYOUT_104_ansi( - _______, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, BL_DOWN, BL_UP, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, BL_TOGG, _______, _______, _______, _______, BL_TOGG, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - BL_TOGG, BL_STEP, BL_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, BL_DOWN, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ), -}; - -#if defined(ENCODER_MAP_ENABLE) -const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][2] = { - [MAC_BASE] = {ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [MAC_FN] = {ENCODER_CCW_CW(BL_DOWN, BL_UP)}, - [WIN_BASE] = {ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [WIN_FN] = {ENCODER_CCW_CW(BL_DOWN, BL_UP)}, -}; -#endif // ENCODER_MAP_ENABLE diff --git a/keyboards/keychron/k17_pro/ansi_encoder/white/keymaps/default/rules.mk b/keyboards/keychron/k17_pro/ansi_encoder/white/keymaps/default/rules.mk deleted file mode 100644 index ee32568148..0000000000 --- a/keyboards/keychron/k17_pro/ansi_encoder/white/keymaps/default/rules.mk +++ /dev/null @@ -1 +0,0 @@ -ENCODER_MAP_ENABLE = yes diff --git a/keyboards/keychron/k17_pro/ansi_encoder/white/keymaps/via/keymap.c b/keyboards/keychron/k17_pro/ansi_encoder/white/keymaps/via/keymap.c deleted file mode 100644 index 499e48c3f9..0000000000 --- a/keyboards/keychron/k17_pro/ansi_encoder/white/keymaps/via/keymap.c +++ /dev/null @@ -1,65 +0,0 @@ -/* 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 . - */ - -#include QMK_KEYBOARD_H - -enum layers{ - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN, -}; - -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_104_ansi( - KC_ESC, KC_BRID, KC_BRIU, KC_MICT, KC_LAPA, BL_DOWN, BL_UP, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_SNAP, BL_STEP, KC_DEL, KC_F13, KC_F14, KC_F15, KC_MUTE, - KC_GRV, 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_PGUP, KC_NUM, KC_PSLS, KC_PAST, KC_PMNS, - 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_PGDN, KC_P7, KC_P8, KC_P9, KC_PPLS, - 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_HOME, KC_P4, KC_P5, KC_P6, - 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_P1, KC_P2, KC_P3, KC_PENT, - KC_LCTL, KC_LOPTN, KC_LCMMD, KC_SPC, KC_RCMMD, MO(MAC_FN), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT, KC_P0, KC_PDOT ), - [MAC_FN] = LAYOUT_104_ansi( - _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, BL_TOGG, _______, _______, _______, _______, BL_TOGG, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - BL_TOGG, BL_STEP, BL_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, BL_DOWN, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ), - [WIN_BASE] = LAYOUT_104_ansi( - KC_ESC, 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_PSCR, BL_STEP, KC_DEL, KC_F13, KC_F14, KC_F15, KC_MUTE, - KC_GRV, 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_PGUP, KC_NUM, KC_PSLS, KC_PAST, KC_PMNS, - 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_PGDN, KC_P7, KC_P8, KC_P9, KC_PPLS, - 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_HOME, KC_P4, KC_P5, KC_P6, - 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_P1, KC_P2, KC_P3, KC_PENT, - KC_LCTL, KC_LWIN, KC_LALT, KC_SPC, KC_RALT, MO(WIN_FN), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT, KC_P0, KC_PDOT ), - [WIN_FN] = LAYOUT_104_ansi( - _______, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, BL_DOWN, BL_UP, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, BL_TOGG, _______, _______, _______, _______, BL_TOGG, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - BL_TOGG, BL_STEP, BL_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, BL_DOWN, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ), -}; - -#if defined(ENCODER_MAP_ENABLE) -const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][2] = { - [MAC_BASE] = {ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [MAC_FN] = {ENCODER_CCW_CW(BL_DOWN, BL_UP)}, - [WIN_BASE] = {ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [WIN_FN] = {ENCODER_CCW_CW(BL_DOWN, BL_UP)}, -}; -#endif // ENCODER_MAP_ENABLE diff --git a/keyboards/keychron/k17_pro/ansi_encoder/white/keymaps/via/rules.mk b/keyboards/keychron/k17_pro/ansi_encoder/white/keymaps/via/rules.mk deleted file mode 100644 index f1adcab005..0000000000 --- a/keyboards/keychron/k17_pro/ansi_encoder/white/keymaps/via/rules.mk +++ /dev/null @@ -1,2 +0,0 @@ -VIA_ENABLE = yes -ENCODER_MAP_ENABLE = yes diff --git a/keyboards/keychron/k17_pro/ansi_encoder/white/rules.mk b/keyboards/keychron/k17_pro/ansi_encoder/white/rules.mk deleted file mode 100644 index 6e7633bfe0..0000000000 --- a/keyboards/keychron/k17_pro/ansi_encoder/white/rules.mk +++ /dev/null @@ -1 +0,0 @@ -# This file intentionally left blank diff --git a/keyboards/keychron/k17_pro/ansi_encoder/white/white.c b/keyboards/keychron/k17_pro/ansi_encoder/white/white.c deleted file mode 100644 index 56c07c5f96..0000000000 --- a/keyboards/keychron/k17_pro/ansi_encoder/white/white.c +++ /dev/null @@ -1,135 +0,0 @@ -/* 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 . - */ - -#include "quantum.h" - -// clang-format off -#ifdef LED_MATRIX_ENABLE -const snled27351_led_t g_snled27351_leds[LED_MATRIX_LED_COUNT] = { -/* Refer to snled27351manual for these locations - * driver - * | LED address - * | | */ - {0, A_1}, - {0, A_2}, - {0, A_3}, - {0, A_4}, - {0, A_5}, - {0, A_6}, - {0, A_7}, - {0, A_8}, - {0, A_9}, - {0, A_10}, - {0, A_11}, - {0, A_12}, - {0, A_13}, - {0, A_14}, - {0, A_15}, - {0, A_16}, - {0, F_8}, - {0, F_9}, - {0, F_10}, - - {0, B_1}, - {0, B_2}, - {0, B_3}, - {0, B_4}, - {0, B_5}, - {0, B_6}, - {0, B_7}, - {0, B_8}, - {0, B_9}, - {0, B_10}, - {0, B_11}, - {0, B_12}, - {0, B_13}, - {0, B_15}, - {0, B_16}, - {0, H_7}, - {0, H_8}, - {0, H_9}, - {0, H_10}, - - {0, C_1}, - {0, C_2}, - {0, C_3}, - {0, C_4}, - {0, C_5}, - {0, C_6}, - {0, C_7}, - {0, C_8}, - {0, C_9}, - {0, C_10}, - {0, C_11}, - {0, C_12}, - {0, C_13}, - {0, C_15}, - {0, C_16}, - {0, H_12}, - {0, H_13}, - {0, H_14}, - {0, H_15}, - - {0, D_1}, - {0, D_2}, - {0, D_3}, - {0, D_4}, - {0, D_5}, - {0, D_6}, - {0, D_7}, - {0, D_8}, - {0, D_9}, - {0, D_10}, - {0, D_11}, - {0, D_12}, - {0, D_14}, - {0, D_16}, - {0, G_7}, - {0, G_8}, - {0, G_9}, - - {0, E_1}, - {0, E_3}, - {0, E_4}, - {0, E_5}, - {0, E_6}, - {0, E_7}, - {0, E_8}, - {0, E_9}, - {0, E_10}, - {0, E_11}, - {0, E_12}, - {0, E_13}, - {0, E_15}, - {0, G_10}, - {0, G_11}, - {0, G_12}, - {0, G_13}, - - {0, F_1}, - {0, F_2}, - {0, F_3}, - {0, F_7}, - {0, F_11}, - {0, F_12}, - {0, F_13}, - {0, F_14}, - {0, F_15}, - {0, F_16}, - {0, G_14}, - {0, G_16}, -}; -#endif diff --git a/keyboards/keychron/k17_pro/config.h b/keyboards/keychron/k17_pro/config.h deleted file mode 100644 index a933be7b75..0000000000 --- a/keyboards/keychron/k17_pro/config.h +++ /dev/null @@ -1,82 +0,0 @@ -/* 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 . - */ - -#pragma once - -/* 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 \ - { 20, 21, 22 } - -# define BAT_LEVEL_LED_LIST \ - { 20, 21, 22, 23, 24, 25, 26, 27, 28, 29 } - -/* 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 WEAR_LEVELING_LOGICAL_SIZE 2048 -#define WEAR_LEVELING_BACKING_SIZE (WEAR_LEVELING_LOGICAL_SIZE * 2) -#define DYNAMIC_KEYMAP_EEPROM_MAX_ADDR 2047 - -/* Factory test keys */ -#define FN_KEY1 MO(1) -#define FN_KEY2 MO(3) - -/* HC595 driver configure */ -#define HC595_END_INDEX 19 diff --git a/keyboards/keychron/k17_pro/halconf.h b/keyboards/keychron/k17_pro/halconf.h deleted file mode 100644 index 35209171cc..0000000000 --- a/keyboards/keychron/k17_pro/halconf.h +++ /dev/null @@ -1,32 +0,0 @@ -/* Copyright 2023 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 _CHIBIOS_HAL_CONF_VER_8_0_ - -#define HAL_USE_I2C TRUE - -#if defined(ENCODER_ENBALE) || defined(KC_BLUETOOTH_ENABLE) -# define PAL_USE_CALLBACKS TRUE -#endif - -#ifdef KC_BLUETOOTH_ENABLE -# define HAL_USE_SERIAL TRUE -# define HAL_USE_RTC TRUE -#endif - -#include_next diff --git a/keyboards/keychron/k17_pro/info.json b/keyboards/keychron/k17_pro/info.json deleted file mode 100644 index 1dde32e53a..0000000000 --- a/keyboards/keychron/k17_pro/info.json +++ /dev/null @@ -1,268 +0,0 @@ -{ - "keyboard_name": "Keychron K17 Pro", - "manufacturer": "Keychron", - "url": "https://github.com/Keychron", - "maintainer": "lalalademaxiya1", - "processor": "STM32L432", - "bootloader": "stm32-dfu", - "usb": { - "vid": "0x3434" - }, - "features": { - "bootmagic": true, - "extrakey": true, - "mousekey": true, - "nkro": true, - "dip_switch": true, - "encoder": true, - "raw": true - }, - "matrix_pins": { - "cols": [null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null], - "rows": ["B5", "B4", "B3", "A15", "A14", "A13"], - "custom": true, - "custom_lite": true - }, - "diode_direction": "ROW2COL", - "dip_switch": { - "pins": ["A8"] - }, - "encoder": { - "rotary": [ - {"pin_a": "A0", "pin_b": "A10"} - ] - }, - "indicators": { - "caps_lock": "A4", - "on_state": 1 - }, - "layouts": { - "LAYOUT_104_ansi": { - "layout": [ - {"matrix":[0,0], "x":0, "y":0}, - {"matrix":[0,1], "x":1, "y":0}, - {"matrix":[0,2], "x":2, "y":0}, - {"matrix":[0,3], "x":3, "y":0}, - {"matrix":[0,4], "x":4, "y":0}, - {"matrix":[0,5], "x":5, "y":0}, - {"matrix":[0,6], "x":6, "y":0}, - {"matrix":[0,7], "x":7, "y":0}, - {"matrix":[0,8], "x":8, "y":0}, - {"matrix":[0,9], "x":9, "y":0}, - {"matrix":[0,10], "x":10, "y":0}, - {"matrix":[0,11], "x":11, "y":0}, - {"matrix":[0,12], "x":12, "y":0}, - {"matrix":[0,13], "x":13, "y":0}, - {"matrix":[0,14], "x":14, "y":0}, - {"matrix":[0,15], "x":15.25, "y":0}, - {"matrix":[0,16], "x":16.5, "y":0}, - {"matrix":[0,17], "x":17.5, "y":0}, - {"matrix":[0,18], "x":18.5, "y":0}, - {"matrix":[0,19], "x":19.5, "y":0}, - - {"matrix":[1,0], "x":0, "y":1.25}, - {"matrix":[1,1], "x":1, "y":1.25}, - {"matrix":[1,2], "x":2, "y":1.25}, - {"matrix":[1,3], "x":3, "y":1.25}, - {"matrix":[1,4], "x":4, "y":1.25}, - {"matrix":[1,5], "x":5, "y":1.25}, - {"matrix":[1,6], "x":6, "y":1.25}, - {"matrix":[1,7], "x":7, "y":1.25}, - {"matrix":[1,8], "x":8, "y":1.25}, - {"matrix":[1,9], "x":9, "y":1.25}, - {"matrix":[1,10], "x":10, "y":1.25}, - {"matrix":[1,11], "x":11, "y":1.25}, - {"matrix":[1,12], "x":12, "y":1.25}, - {"matrix":[1,14], "x":13, "y":1.25, "w":2}, - {"matrix":[1,15], "x":15.25, "y":1.25}, - {"matrix":[1,16], "x":16.5, "y":1.25}, - {"matrix":[1,17], "x":17.5, "y":1.25}, - {"matrix":[1,18], "x":18.5, "y":1.25}, - {"matrix":[1,19], "x":19.5, "y":1.25}, - - {"matrix":[2,0], "x":0, "y":2.25, "w":1.5}, - {"matrix":[2,1], "x":1.5, "y":2.25}, - {"matrix":[2,2], "x":2.5, "y":2.25}, - {"matrix":[2,3], "x":3.5, "y":2.25}, - {"matrix":[2,4], "x":4.5, "y":2.25}, - {"matrix":[2,5], "x":5.5, "y":2.25}, - {"matrix":[2,6], "x":6.5, "y":2.25}, - {"matrix":[2,7], "x":7.5, "y":2.25}, - {"matrix":[2,8], "x":8.5, "y":2.25}, - {"matrix":[2,9], "x":9.5, "y":2.25}, - {"matrix":[2,10], "x":10.5, "y":2.25}, - {"matrix":[2,11], "x":11.5, "y":2.25}, - {"matrix":[2,12], "x":12.5, "y":2.25}, - {"matrix":[2,14], "x":13.5, "y":2.25, "w":1.5}, - {"matrix":[2,15], "x":15.25, "y":2.25}, - {"matrix":[2,16], "x":16.5, "y":2.25}, - {"matrix":[2,17], "x":17.5, "y":2.25}, - {"matrix":[2,18], "x":18.5, "y":2.25}, - {"matrix":[2,19], "x":19.5, "y":2.25, "h":2}, - - {"matrix":[3,0], "x":0, "y":3.25, "w":1.75}, - {"matrix":[3,1], "x":1.75, "y":3.25}, - {"matrix":[3,2], "x":2.75, "y":3.25}, - {"matrix":[3,3], "x":3.75, "y":3.25}, - {"matrix":[3,4], "x":4.75, "y":3.25}, - {"matrix":[3,5], "x":5.75, "y":3.25}, - {"matrix":[3,6], "x":6.75, "y":3.25}, - {"matrix":[3,7], "x":7.75, "y":3.25}, - {"matrix":[3,8], "x":8.75, "y":3.25}, - {"matrix":[3,9], "x":9.75, "y":3.25}, - {"matrix":[3,10], "x":10.75, "y":3.25}, - {"matrix":[3,11], "x":11.75, "y":3.25}, - {"matrix":[3,13], "x":12.75, "y":3.25, "w":2.25}, - {"matrix":[3,15], "x":15.25, "y":3.25}, - {"matrix":[3,16], "x":16.5, "y":3.25}, - {"matrix":[3,17], "x":17.5, "y":3.25}, - {"matrix":[3,18], "x":18.5, "y":3.25}, - - {"matrix":[4,0], "x":0, "y":4.25, "w":2.25}, - {"matrix":[4,2], "x":2.25, "y":4.25}, - {"matrix":[4,3], "x":3.25, "y":4.25}, - {"matrix":[4,4], "x":4.25, "y":4.25}, - {"matrix":[4,5], "x":5.25, "y":4.25}, - {"matrix":[4,6], "x":6.25, "y":4.25}, - {"matrix":[4,7], "x":7.25, "y":4.25}, - {"matrix":[4,8], "x":8.25, "y":4.25}, - {"matrix":[4,9], "x":9.25, "y":4.25}, - {"matrix":[4,10], "x":10.25, "y":4.25}, - {"matrix":[4,11], "x":11.25, "y":4.25}, - {"matrix":[4,12], "x":12.25, "y":4.25, "w":1.75}, - {"matrix":[4,14], "x":14.25, "y":4.25}, - {"matrix":[4,16], "x":16.5, "y":4.25}, - {"matrix":[4,17], "x":17.5, "y":4.25}, - {"matrix":[4,18], "x":18.5, "y":4.25}, - {"matrix":[4,19], "x":19.5, "y":4.25, "h":2}, - - {"matrix":[5,0], "x":0, "y":5.25, "w":1.25}, - {"matrix":[5,1], "x":1.25, "y":5.25, "w":1.25}, - {"matrix":[5,2], "x":2.5, "y":5.25, "w":1.25}, - {"matrix":[5,6], "x":3.75, "y":5.25, "w":6.25}, - {"matrix":[5,10], "x":10, "y":5.25}, - {"matrix":[5,11], "x":11, "y":5.25}, - {"matrix":[5,12], "x":12, "y":5.25}, - {"matrix":[5,13], "x":13.25, "y":5.25}, - {"matrix":[5,14], "x":14.25, "y":5.25}, - {"matrix":[5,15], "x":15.25, "y":5.25}, - {"matrix":[5,16], "x":16.5, "y":5.25, "w":2}, - {"matrix":[5,18], "x":18.5, "y":5.25} - ] - }, - "LAYOUT_105_iso": { - "layout": [ - {"matrix":[0,0], "x":0, "y":0}, - {"matrix":[0,1], "x":1, "y":0}, - {"matrix":[0,2], "x":2, "y":0}, - {"matrix":[0,3], "x":3, "y":0}, - {"matrix":[0,4], "x":4, "y":0}, - {"matrix":[0,5], "x":5, "y":0}, - {"matrix":[0,6], "x":6, "y":0}, - {"matrix":[0,7], "x":7, "y":0}, - {"matrix":[0,8], "x":8, "y":0}, - {"matrix":[0,9], "x":9, "y":0}, - {"matrix":[0,10], "x":10, "y":0}, - {"matrix":[0,11], "x":11, "y":0}, - {"matrix":[0,12], "x":12, "y":0}, - {"matrix":[0,13], "x":13, "y":0}, - {"matrix":[0,14], "x":14, "y":0}, - {"matrix":[0,15], "x":15.25, "y":0}, - {"matrix":[0,16], "x":16.5, "y":0}, - {"matrix":[0,17], "x":17.5, "y":0}, - {"matrix":[0,18], "x":18.5, "y":0}, - {"matrix":[0,19], "x":19.5, "y":0}, - - {"matrix":[1,0], "x":0, "y":1.25}, - {"matrix":[1,1], "x":1, "y":1.25}, - {"matrix":[1,2], "x":2, "y":1.25}, - {"matrix":[1,3], "x":3, "y":1.25}, - {"matrix":[1,4], "x":4, "y":1.25}, - {"matrix":[1,5], "x":5, "y":1.25}, - {"matrix":[1,6], "x":6, "y":1.25}, - {"matrix":[1,7], "x":7, "y":1.25}, - {"matrix":[1,8], "x":8, "y":1.25}, - {"matrix":[1,9], "x":9, "y":1.25}, - {"matrix":[1,10], "x":10, "y":1.25}, - {"matrix":[1,11], "x":11, "y":1.25}, - {"matrix":[1,12], "x":12, "y":1.25}, - {"matrix":[1,14], "x":13, "y":1.25, "w":2}, - {"matrix":[1,15], "x":15.25, "y":1.25}, - {"matrix":[1,16], "x":16.5, "y":1.25}, - {"matrix":[1,17], "x":17.5, "y":1.25}, - {"matrix":[1,18], "x":18.5, "y":1.25}, - {"matrix":[1,19], "x":19.5, "y":1.25}, - - {"matrix":[2,0], "x":0, "y":2.25, "w":1.5}, - {"matrix":[2,1], "x":1.5, "y":2.25}, - {"matrix":[2,2], "x":2.5, "y":2.25}, - {"matrix":[2,3], "x":3.5, "y":2.25}, - {"matrix":[2,4], "x":4.5, "y":2.25}, - {"matrix":[2,5], "x":5.5, "y":2.25}, - {"matrix":[2,6], "x":6.5, "y":2.25}, - {"matrix":[2,7], "x":7.5, "y":2.25}, - {"matrix":[2,8], "x":8.5, "y":2.25}, - {"matrix":[2,9], "x":9.5, "y":2.25}, - {"matrix":[2,10], "x":10.5, "y":2.25}, - {"matrix":[2,11], "x":11.5, "y":2.25}, - {"matrix":[2,12], "x":12.5, "y":2.25}, - {"matrix":[2,15], "x":15.25, "y":2.25}, - {"matrix":[2,16], "x":16.5, "y":2.25}, - {"matrix":[2,17], "x":17.5, "y":2.25}, - {"matrix":[2,18], "x":18.5, "y":2.25}, - {"matrix":[2,19], "x":19.5, "y":2.25, "h":2}, - - {"matrix":[3,0], "x":0, "y":3.25, "w":1.75}, - {"matrix":[3,1], "x":1.75, "y":3.25}, - {"matrix":[3,2], "x":2.75, "y":3.25}, - {"matrix":[3,3], "x":3.75, "y":3.25}, - {"matrix":[3,4], "x":4.75, "y":3.25}, - {"matrix":[3,5], "x":5.75, "y":3.25}, - {"matrix":[3,6], "x":6.75, "y":3.25}, - {"matrix":[3,7], "x":7.75, "y":3.25}, - {"matrix":[3,8], "x":8.75, "y":3.25}, - {"matrix":[3,9], "x":9.75, "y":3.25}, - {"matrix":[3,10], "x":10.75, "y":3.25}, - {"matrix":[3,11], "x":11.75, "y":3.25}, - {"matrix":[3,13], "x":12.75, "y":3.25}, - {"matrix":[2,14], "x":13.75, "y":2.25, "w":1.25, "h":2}, - {"matrix":[3,15], "x":15.25, "y":3.25}, - {"matrix":[3,16], "x":16.5, "y":3.25}, - {"matrix":[3,17], "x":17.5, "y":3.25}, - {"matrix":[3,18], "x":18.5, "y":3.25}, - - {"matrix":[4,0], "x":0, "y":4.25, "w":1.25}, - {"matrix":[4,1], "x":1.25, "y":4.25}, - {"matrix":[4,2], "x":2.25, "y":4.25}, - {"matrix":[4,3], "x":3.25, "y":4.25}, - {"matrix":[4,4], "x":4.25, "y":4.25}, - {"matrix":[4,5], "x":5.25, "y":4.25}, - {"matrix":[4,6], "x":6.25, "y":4.25}, - {"matrix":[4,7], "x":7.25, "y":4.25}, - {"matrix":[4,8], "x":8.25, "y":4.25}, - {"matrix":[4,9], "x":9.25, "y":4.25}, - {"matrix":[4,10], "x":10.25, "y":4.25}, - {"matrix":[4,11], "x":11.25, "y":4.25}, - {"matrix":[4,12], "x":12.25, "y":4.25, "w":1.75}, - {"matrix":[4,14], "x":14.25, "y":4.25}, - {"matrix":[4,16], "x":16.5, "y":4.25}, - {"matrix":[4,17], "x":17.5, "y":4.25}, - {"matrix":[4,18], "x":18.5, "y":4.25}, - {"matrix":[4,19], "x":19.5, "y":4.25, "h":2}, - - {"matrix":[5,0], "x":0, "y":5.25, "w":1.25}, - {"matrix":[5,1], "x":1.25, "y":5.25, "w":1.25}, - {"matrix":[5,2], "x":2.5, "y":5.25, "w":1.25}, - {"matrix":[5,6], "x":3.75, "y":5.25, "w":6.25}, - {"matrix":[5,10], "x":10, "y":5.25}, - {"matrix":[5,11], "x":11, "y":5.25}, - {"matrix":[5,12], "x":12, "y":5.25}, - {"matrix":[5,13], "x":13.25, "y":5.25}, - {"matrix":[5,14], "x":14.25, "y":5.25}, - {"matrix":[5,15], "x":15.25, "y":5.25}, - {"matrix":[5,16], "x":16.5, "y":5.25, "w":2}, - {"matrix":[5,18], "x":18.5, "y":5.25} - ] - } - } -} diff --git a/keyboards/keychron/k17_pro/iso_encoder/rgb/config.h b/keyboards/keychron/k17_pro/iso_encoder/rgb/config.h deleted file mode 100644 index 0598bbf108..0000000000 --- a/keyboards/keychron/k17_pro/iso_encoder/rgb/config.h +++ /dev/null @@ -1,49 +0,0 @@ -/* 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 . - */ - -#pragma once - -#ifdef RGB_MATRIX_ENABLE -/* RGB Matrix Driver Configuration */ -# define DRIVER_COUNT 2 -# define DRIVER_ADDR_1 0b1110111 -# define DRIVER_ADDR_2 0b1110100 - -/* RGB Matrix Configuration */ -# define RGB_MATRIX_LED_COUNT 104 - -/* Set to infinit, which is use in USB mode by default */ -# define RGB_MATRIX_TIMEOUT RGB_MATRIX_TIMEOUT_INFINITE - -/* Allow to shutdown driver to save power */ -# define RGB_MATRIX_DRIVER_SHUTDOWN_ENABLE - -/* Turn off backllit if brightness value is low */ -# define RGB_MATRIX_BRIGHTNESS_TURN_OFF_VAL 48 - -/* Indication led index */ -# define NUM_LOCK_INDEX 34 -# define DIM_CAPS_LOCK -# define CAPS_LOCK_INDEX 56 -# define LOW_BAT_IND_INDEX 95 - -# define RGB_MATRIX_KEYPRESSES -# define RGB_MATRIX_FRAMEBUFFER_EFFECTS - -/* Set LED driver current */ -# define SNLED27351_CURRENT_TUNE \ - { 0x14, 0x14, 0x14, 0x14, 0x14, 0x14, 0x14, 0x14, 0x14, 0x14, 0x14, 0x14 } -#endif diff --git a/keyboards/keychron/k17_pro/iso_encoder/rgb/info.json b/keyboards/keychron/k17_pro/iso_encoder/rgb/info.json deleted file mode 100644 index 1cc263bbb1..0000000000 --- a/keyboards/keychron/k17_pro/iso_encoder/rgb/info.json +++ /dev/null @@ -1,147 +0,0 @@ -{ - "usb": { - "pid": "0x0207", - "device_version": "1.0.0" - }, - "features": { - "rgb_matrix": true - }, - "rgb_matrix": { - "driver": "snled27351", - "sleep": true, - "animations": { - "breathing": true, - "band_spiral_val": true, - "cycle_all": true, - "cycle_left_right": true, - "cycle_up_down": true, - "rainbow_moving_chevron": true, - "cycle_out_in": true, - "cycle_out_in_dual": true, - "cycle_pinwheel": true, - "cycle_spiral": true, - "dual_beacon": true, - "rainbow_beacon": true, - "jellybean_raindrops": true, - "pixel_rain": true, - "typing_heatmap": true, - "digital_rain": true, - "solid_reactive_simple": true, - "solid_reactive_multiwide": true, - "solid_reactive_multinexus": true, - "splash": true, - "solid_splash": true - }, - "layout": [ - {"matrix":[0, 0], "flags":1, "x":0, "y":0}, - {"matrix":[0, 1], "flags":1, "x":12, "y":0}, - {"matrix":[0, 2], "flags":1, "x":23, "y":0}, - {"matrix":[0, 3], "flags":1, "x":35, "y":0}, - {"matrix":[0, 4], "flags":1, "x":47, "y":0}, - {"matrix":[0, 5], "flags":1, "x":58, "y":0}, - {"matrix":[0, 6], "flags":1, "x":70, "y":0}, - {"matrix":[0, 7], "flags":1, "x":82, "y":0}, - {"matrix":[0, 8], "flags":1, "x":93, "y":0}, - {"matrix":[0, 9], "flags":1, "x":105, "y":0}, - {"matrix":[0, 10], "flags":1, "x":117, "y":0}, - {"matrix":[0, 11], "flags":1, "x":128, "y":0}, - {"matrix":[0, 12], "flags":1, "x":140, "y":0}, - {"matrix":[0, 13], "flags":1, "x":152, "y":0}, - {"matrix":[0, 14], "flags":1, "x":163, "y":0}, - {"matrix":[0, 15], "flags":1, "x":176, "y":0}, - {"matrix":[0, 16], "flags":1, "x":189, "y":0}, - {"matrix":[0, 17], "flags":1, "x":201, "y":0}, - {"matrix":[0, 18], "flags":1, "x":212, "y":0}, - - {"matrix":[1, 0], "flags":1, "x":0, "y":14}, - {"matrix":[1, 1], "flags":8, "x":12, "y":14}, - {"matrix":[1, 2], "flags":8, "x":23, "y":14}, - {"matrix":[1, 3], "flags":8, "x":35, "y":14}, - {"matrix":[1, 4], "flags":4, "x":47, "y":14}, - {"matrix":[1, 5], "flags":4, "x":58, "y":14}, - {"matrix":[1, 6], "flags":4, "x":70, "y":14}, - {"matrix":[1, 7], "flags":4, "x":82, "y":14}, - {"matrix":[1, 8], "flags":4, "x":93, "y":14}, - {"matrix":[1, 9], "flags":4, "x":105, "y":14}, - {"matrix":[1, 10], "flags":4, "x":117, "y":14}, - {"matrix":[1, 11], "flags":4, "x":128, "y":14}, - {"matrix":[1, 12], "flags":4, "x":140, "y":14}, - {"matrix":[1, 14], "flags":1, "x":157, "y":14}, - {"matrix":[1, 15], "flags":1, "x":176, "y":14}, - {"matrix":[1, 16], "flags":8, "x":189, "y":14}, - {"matrix":[1, 17], "flags":4, "x":201, "y":14}, - {"matrix":[1, 18], "flags":4, "x":212, "y":14}, - {"matrix":[1, 19], "flags":4, "x":224, "y":14}, - - {"matrix":[2, 0], "flags":1, "x":3, "y":26}, - {"matrix":[2, 1], "flags":4, "x":17, "y":26}, - {"matrix":[2, 2], "flags":4, "x":29, "y":26}, - {"matrix":[2, 3], "flags":4, "x":41, "y":26}, - {"matrix":[2, 4], "flags":4, "x":52, "y":26}, - {"matrix":[2, 5], "flags":4, "x":64, "y":26}, - {"matrix":[2, 6], "flags":4, "x":76, "y":26}, - {"matrix":[2, 7], "flags":4, "x":87, "y":26}, - {"matrix":[2, 8], "flags":4, "x":99, "y":26}, - {"matrix":[2, 9], "flags":4, "x":111, "y":26}, - {"matrix":[2, 10], "flags":4, "x":122, "y":26}, - {"matrix":[2, 11], "flags":4, "x":134, "y":26}, - {"matrix":[2, 12], "flags":4, "x":146, "y":26}, - {"matrix":[2, 15], "flags":1, "x":176, "y":26}, - {"matrix":[2, 16], "flags":4, "x":189, "y":26}, - {"matrix":[2, 17], "flags":4, "x":201, "y":26}, - {"matrix":[2, 18], "flags":4, "x":212, "y":26}, - {"matrix":[2, 19], "flags":4, "x":224, "y":33}, - - {"matrix":[3, 0], "flags":1, "x":4, "y":39}, - {"matrix":[3, 1], "flags":4, "x":20, "y":39}, - {"matrix":[3, 2], "flags":4, "x":32, "y":39}, - {"matrix":[3, 3], "flags":4, "x":44, "y":39}, - {"matrix":[3, 4], "flags":4, "x":55, "y":39}, - {"matrix":[3, 5], "flags":4, "x":67, "y":39}, - {"matrix":[3, 6], "flags":4, "x":79, "y":39}, - {"matrix":[3, 7], "flags":4, "x":90, "y":39}, - {"matrix":[3, 8], "flags":4, "x":102, "y":39}, - {"matrix":[3, 9], "flags":4, "x":114, "y":39}, - {"matrix":[3, 10], "flags":4, "x":125, "y":39}, - {"matrix":[3, 11], "flags":4, "x":137, "y":39}, - {"matrix":[3, 13], "flags":1, "x":149, "y":39}, - {"matrix":[2, 14], "flags":1, "x":162, "y":33}, - {"matrix":[3, 15], "flags":1, "x":176, "y":39}, - {"matrix":[3, 16], "flags":4, "x":189, "y":39}, - {"matrix":[3, 17], "flags":4, "x":201, "y":39}, - {"matrix":[3, 18], "flags":4, "x":212, "y":39}, - - {"matrix":[4, 0], "flags":1, "x":1, "y":51}, - {"matrix":[4, 1], "flags":1, "x":15, "y":51}, - {"matrix":[4, 2], "flags":4, "x":26, "y":51}, - {"matrix":[4, 3], "flags":4, "x":38, "y":51}, - {"matrix":[4, 4], "flags":4, "x":50, "y":51}, - {"matrix":[4, 5], "flags":4, "x":61, "y":51}, - {"matrix":[4, 6], "flags":4, "x":73, "y":51}, - {"matrix":[4, 7], "flags":4, "x":85, "y":51}, - {"matrix":[4, 8], "flags":4, "x":96, "y":51}, - {"matrix":[4, 9], "flags":4, "x":108, "y":51}, - {"matrix":[4, 10], "flags":4, "x":120, "y":51}, - {"matrix":[4, 11], "flags":4, "x":131, "y":51}, - {"matrix":[4, 12], "flags":1, "x":147, "y":51}, - {"matrix":[4, 14], "flags":1, "x":164, "y":51}, - {"matrix":[4, 16], "flags":4, "x":189, "y":51}, - {"matrix":[4, 17], "flags":4, "x":201, "y":51}, - {"matrix":[4, 18], "flags":4, "x":212, "y":51}, - {"matrix":[4, 19], "flags":4, "x":224, "y":58}, - - {"matrix":[5, 0], "flags":1, "x":1, "y":64}, - {"matrix":[5, 1], "flags":1, "x":16, "y":64}, - {"matrix":[5, 2], "flags":1, "x":31, "y":64}, - {"matrix":[5, 6], "flags":4, "x":74, "y":64}, - {"matrix":[5, 10], "flags":1, "x":117, "y":64}, - {"matrix":[5, 11], "flags":1, "x":128, "y":64}, - {"matrix":[5, 12], "flags":1, "x":140, "y":64}, - {"matrix":[5, 13], "flags":1, "x":153, "y":64}, - {"matrix":[5, 14], "flags":1, "x":164, "y":64}, - {"matrix":[5, 15], "flags":1, "x":176, "y":64}, - {"matrix":[5, 16], "flags":4, "x":195, "y":64}, - {"matrix":[5, 18], "flags":4, "x":212, "y":64} - ] - } -} diff --git a/keyboards/keychron/k17_pro/iso_encoder/rgb/keymaps/default/keymap.c b/keyboards/keychron/k17_pro/iso_encoder/rgb/keymaps/default/keymap.c deleted file mode 100644 index 49eb6652c2..0000000000 --- a/keyboards/keychron/k17_pro/iso_encoder/rgb/keymaps/default/keymap.c +++ /dev/null @@ -1,65 +0,0 @@ -/* 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 . - */ - -#include QMK_KEYBOARD_H - -enum layers{ - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN, -}; - -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_105_iso( - KC_ESC, KC_BRID, KC_BRIU, KC_MCTL, KC_LPAD, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_SNAP, RGB_MOD, KC_DEL, KC_F13, KC_F14, KC_F15, KC_MUTE, - KC_GRV, 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_PGUP, KC_NUM, KC_PSLS, KC_PAST, KC_PMNS, - 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_PGDN, KC_P7, KC_P8, KC_P9, KC_PPLS, - 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_NUHS, KC_ENT, KC_HOME, KC_P4, KC_P5, KC_P6, - KC_LSFT, KC_NUBS, 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_P1, KC_P2, KC_P3, KC_PENT, - KC_LCTL, KC_LOPTN, KC_LCMMD, KC_SPC, KC_RCMMD, MO(MAC_FN), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT, KC_P0, KC_PDOT ), - [MAC_FN] = LAYOUT_105_iso( - _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, RGB_TOG, _______, _______, _______, _______, RGB_TOG, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ), - [WIN_BASE] = LAYOUT_105_iso( - KC_ESC, 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_PSCR, RGB_MOD, KC_DEL, KC_F13, KC_F14, KC_F15, KC_MUTE, - KC_GRV, 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_PGUP, KC_NUM, KC_PSLS, KC_PAST, KC_PMNS, - 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_PGDN, KC_P7, KC_P8, KC_P9, KC_PPLS, - 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_NUHS, KC_ENT, KC_HOME, KC_P4, KC_P5, KC_P6, - KC_LSFT, KC_NUBS, 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_P1, KC_P2, KC_P3, KC_PENT, - KC_LCTL, KC_LWIN, KC_LALT, KC_SPC, KC_RALT, MO(WIN_FN), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT, KC_P0, KC_PDOT ), - [WIN_FN] = LAYOUT_105_iso( - _______, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, RGB_TOG, _______, _______, _______, _______, RGB_TOG, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ), -}; - -#if defined(ENCODER_MAP_ENABLE) -const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][2] = { - [MAC_BASE] = {ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [MAC_FN] = {ENCODER_CCW_CW(RGB_VAD, RGB_VAI)}, - [WIN_BASE] = {ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [WIN_FN] = {ENCODER_CCW_CW(RGB_VAD, RGB_VAI)}, -}; -#endif // ENCODER_MAP_ENABLE diff --git a/keyboards/keychron/k17_pro/iso_encoder/rgb/keymaps/default/rules.mk b/keyboards/keychron/k17_pro/iso_encoder/rgb/keymaps/default/rules.mk deleted file mode 100644 index ee32568148..0000000000 --- a/keyboards/keychron/k17_pro/iso_encoder/rgb/keymaps/default/rules.mk +++ /dev/null @@ -1 +0,0 @@ -ENCODER_MAP_ENABLE = yes diff --git a/keyboards/keychron/k17_pro/iso_encoder/rgb/keymaps/via/keymap.c b/keyboards/keychron/k17_pro/iso_encoder/rgb/keymaps/via/keymap.c deleted file mode 100644 index 4e45471281..0000000000 --- a/keyboards/keychron/k17_pro/iso_encoder/rgb/keymaps/via/keymap.c +++ /dev/null @@ -1,65 +0,0 @@ -/* 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 . - */ - -#include QMK_KEYBOARD_H - -enum layers{ - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN, -}; - -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_105_iso( - KC_ESC, KC_BRID, KC_BRIU, KC_MICT, KC_LAPA, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_SNAP, RGB_MOD, KC_DEL, KC_F13, KC_F14, KC_F15, KC_MUTE, - KC_GRV, 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_PGUP, KC_NUM, KC_PSLS, KC_PAST, KC_PMNS, - 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_PGDN, KC_P7, KC_P8, KC_P9, KC_PPLS, - 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_NUHS, KC_ENT, KC_HOME, KC_P4, KC_P5, KC_P6, - KC_LSFT, KC_NUBS, 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_P1, KC_P2, KC_P3, KC_PENT, - KC_LCTL, KC_LOPTN, KC_LCMMD, KC_SPC, KC_RCMMD, MO(MAC_FN), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT, KC_P0, KC_PDOT ), - [MAC_FN] = LAYOUT_105_iso( - _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, RGB_TOG, _______, _______, _______, _______, RGB_TOG, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ), - [WIN_BASE] = LAYOUT_105_iso( - KC_ESC, 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_PSCR, RGB_MOD, KC_DEL, KC_F13, KC_F14, KC_F15, KC_MUTE, - KC_GRV, 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_PGUP, KC_NUM, KC_PSLS, KC_PAST, KC_PMNS, - 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_PGDN, KC_P7, KC_P8, KC_P9, KC_PPLS, - 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_NUHS, KC_ENT, KC_HOME, KC_P4, KC_P5, KC_P6, - KC_LSFT, KC_NUBS, 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_P1, KC_P2, KC_P3, KC_PENT, - KC_LCTL, KC_LWIN, KC_LALT, KC_SPC, KC_RALT, MO(WIN_FN), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT, KC_P0, KC_PDOT ), - [WIN_FN] = LAYOUT_105_iso( - _______, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, RGB_TOG, _______, _______, _______, _______, RGB_TOG, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ), -}; - -#if defined(ENCODER_MAP_ENABLE) -const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][2] = { - [MAC_BASE] = {ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [MAC_FN] = {ENCODER_CCW_CW(RGB_VAD, RGB_VAI)}, - [WIN_BASE] = {ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [WIN_FN] = {ENCODER_CCW_CW(RGB_VAD, RGB_VAI)}, -}; -#endif // ENCODER_MAP_ENABLE diff --git a/keyboards/keychron/k17_pro/iso_encoder/rgb/keymaps/via/rules.mk b/keyboards/keychron/k17_pro/iso_encoder/rgb/keymaps/via/rules.mk deleted file mode 100644 index f1adcab005..0000000000 --- a/keyboards/keychron/k17_pro/iso_encoder/rgb/keymaps/via/rules.mk +++ /dev/null @@ -1,2 +0,0 @@ -VIA_ENABLE = yes -ENCODER_MAP_ENABLE = yes diff --git a/keyboards/keychron/k17_pro/iso_encoder/rgb/rgb.c b/keyboards/keychron/k17_pro/iso_encoder/rgb/rgb.c deleted file mode 100644 index 153df50326..0000000000 --- a/keyboards/keychron/k17_pro/iso_encoder/rgb/rgb.c +++ /dev/null @@ -1,138 +0,0 @@ -/* 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 . - */ - -#include "quantum.h" - -// clang-format off -#ifdef RGB_MATRIX_ENABLE -const snled27351_led_t PROGMEM g_snled27351_leds[RGB_MATRIX_LED_COUNT] = { -/* Refer to snled27351manual for these locations - * driver - * | R location - * | | G location - * | | | B location - * | | | | */ - {0, G_1, I_1, H_1}, - {0, G_2, I_2, H_2}, - {0, G_3, I_3, H_3}, - {0, G_4, I_4, H_4}, - {0, G_5, I_5, H_5}, - {0, G_6, I_6, H_6}, - {0, G_7, I_7, H_7}, - {0, G_8, I_8, H_8}, - {0, G_9, I_9, H_9}, - {0, G_10, I_10, H_10}, - {0, G_11, I_11, H_11}, - {0, G_12, I_12, H_12}, - {0, G_13, I_13, H_13}, - {0, G_14, I_14, H_14}, - {0, G_15, I_15, H_15}, - {0, G_16, I_16, H_16}, - {1, D_8, F_8, E_8}, - {1, D_9, F_9, E_9}, - {1, D_10, F_10, E_10}, - - {0, D_1, F_1, E_1}, - {0, D_2, F_2, E_2}, - {0, D_3, F_3, E_3}, - {0, D_4, F_4, E_4}, - {0, D_5, F_5, E_5}, - {0, D_6, F_6, E_6}, - {0, D_7, F_7, E_7}, - {0, D_8, F_8, E_8}, - {0, D_9, F_9, E_9}, - {0, D_10, F_10, E_10}, - {0, D_11, F_11, E_11}, - {0, D_12, F_12, E_12}, - {0, D_13, F_13, E_13}, - {0, D_15, F_15, E_15}, - {0, D_16, F_16, E_16}, - {0, J_7, L_7, K_7}, - {0, J_8, L_8, K_8}, - {0, J_9, L_9, K_9}, - {0, J_10, L_10, K_10}, - - {0, C_1, A_1, B_1}, - {0, C_2, A_2, B_2}, - {0, C_3, A_3, B_3}, - {0, C_4, A_4, B_4}, - {0, C_5, A_5, B_5}, - {0, C_6, A_6, B_6}, - {0, C_7, A_7, B_7}, - {0, C_8, A_8, B_8}, - {0, C_9, A_9, B_9}, - {0, C_10, A_10, B_10}, - {0, C_11, A_11, B_11}, - {0, C_12, A_12, B_12}, - {0, C_13, A_13, B_13}, - {0, C_16, A_16, B_16}, - {0, J_12, L_12, K_12}, - {0, J_13, L_13, K_13}, - {0, J_14, L_14, K_14}, - {0, J_15, L_15, K_15}, - - {1, G_1, I_1, H_1}, - {1, G_2, I_2, H_2}, - {1, G_3, I_3, H_3}, - {1, G_4, I_4, H_4}, - {1, G_5, I_5, H_5}, - {1, G_6, I_6, H_6}, - {1, G_7, I_7, H_7}, - {1, G_8, I_8, H_8}, - {1, G_9, I_9, H_9}, - {1, G_10, I_10, H_10}, - {1, G_11, I_11, H_11}, - {1, G_12, I_12, H_12}, - {1, G_14, I_14, H_14}, - {0, C_15, A_15, B_15}, - {1, G_16, I_16, H_16}, - {1, J_7, L_7, K_7}, - {1, J_8, L_8, K_8}, - {1, J_9, L_9, K_9}, - - {1, A_1, C_1, B_1}, - {1, A_2, C_2, B_2}, - {1, A_3, C_3, B_3}, - {1, A_4, C_4, B_4}, - {1, A_5, C_5, B_5}, - {1, A_6, C_6, B_6}, - {1, A_7, C_7, B_7}, - {1, A_8, C_8, B_8}, - {1, A_9, C_9, B_9}, - {1, A_10, C_10, B_10}, - {1, A_11, C_11, B_11}, - {1, A_12, C_12, B_12}, - {1, A_13, C_13, B_13}, - {1, A_15, C_15, B_15}, - {1, J_10, L_10, K_10}, - {1, J_11, L_11, K_11}, - {1, J_12, L_12, K_12}, - {1, J_13, L_13, K_13}, - - {1, D_1, F_1, E_1}, - {1, D_2, F_2, E_2}, - {1, D_3, F_3, E_3}, - {1, D_7, F_7, E_7}, - {1, D_11, F_11, E_11}, - {1, D_12, F_12, E_12}, - {1, D_13, F_13, E_13}, - {1, D_14, F_14, E_14}, - {1, D_15, F_15, E_15}, - {1, D_16, F_16, E_16}, - {1, J_14, L_14, K_14}, - {1, J_16, L_16, K_16} -}; -#endif diff --git a/keyboards/keychron/k17_pro/iso_encoder/rgb/rules.mk b/keyboards/keychron/k17_pro/iso_encoder/rgb/rules.mk deleted file mode 100644 index 6e7633bfe0..0000000000 --- a/keyboards/keychron/k17_pro/iso_encoder/rgb/rules.mk +++ /dev/null @@ -1 +0,0 @@ -# This file intentionally left blank diff --git a/keyboards/keychron/k17_pro/iso_encoder/white/config.h b/keyboards/keychron/k17_pro/iso_encoder/white/config.h deleted file mode 100644 index d34f0107c0..0000000000 --- a/keyboards/keychron/k17_pro/iso_encoder/white/config.h +++ /dev/null @@ -1,50 +0,0 @@ -/* 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 . - */ - -#pragma once - -#ifdef LED_MATRIX_ENABLE -/* LED Matrix Driver Configuration */ -# define DRIVER_COUNT 1 -# define SNLED27351_I2C_ADDRESS_1 SNLED27351_I2C_ADDRESS_GND - -/* LED Matrix Configuration */ -# define LED_MATRIX_LED_COUNT 104 - -/* Set to infinit, which is use in USB mode by default */ -# define LED_MATRIX_TIMEOUT LED_MATRIX_TIMEOUT_INFINITE - -/* Allow shutdown of led driver to save power */ -# define LED_MATRIX_DRIVER_SHUTDOWN_ENABLE - -/* Turn off backlight on low brightness to save power */ -# define LED_MATRIX_BRIGHTNESS_TURN_OFF_VAL 48 - -/* Indication led index */ -# define NUM_LOCK_INDEX 34 -# define CAPS_LOCK_INDEX 56 -# define DIM_CAPS_LOCK -# define LOW_BAT_IND_INDEX 95 - -# define LED_MATRIX_KEYPRESSES - -/* Use first 8 channels of LED driver */ -# define PHASE_CHANNEL MSKPHASE_8CHANNEL - -/* Set LED driver current */ -# define SNLED27351_CURRENT_TUNE \ - { 0x28, 0x28, 0x28, 0x28, 0x28, 0x28, 0x28, 0x28, 0x28, 0x28, 0x28, 0x28 } -#endif diff --git a/keyboards/keychron/k17_pro/iso_encoder/white/info.json b/keyboards/keychron/k17_pro/iso_encoder/white/info.json deleted file mode 100644 index 7226a9e670..0000000000 --- a/keyboards/keychron/k17_pro/iso_encoder/white/info.json +++ /dev/null @@ -1,142 +0,0 @@ -{ - "usb": { - "pid": "0x020A", - "device_version": "1.0.0" - }, - "features": { - "led_matrix": true - }, - "led_matrix": { - "driver": "snled27351", - "sleep": true, - "animations": { - "none": true, - "solid": true, - "breathing": true, - "band_pinwheel": true, - "band_spiral": true, - "cycle_left_right": true, - "cycle_up_down": true, - "cycle_out_in": true, - "dual_beacon": true, - "solid_reactive_simple": true, - "solid_reactive_multiwide": true, - "solid_reactive_multinexus": true, - "solid_splash": true, - "wave_left_right": true, - "wave_up_down": true, - "effect_max": true - }, - "layout": [ - {"matrix":[0, 0], "flags":1, "x":0, "y":0}, - {"matrix":[0, 1], "flags":1, "x":12, "y":0}, - {"matrix":[0, 2], "flags":1, "x":23, "y":0}, - {"matrix":[0, 3], "flags":1, "x":35, "y":0}, - {"matrix":[0, 4], "flags":1, "x":47, "y":0}, - {"matrix":[0, 5], "flags":1, "x":58, "y":0}, - {"matrix":[0, 6], "flags":1, "x":70, "y":0}, - {"matrix":[0, 7], "flags":1, "x":82, "y":0}, - {"matrix":[0, 8], "flags":1, "x":93, "y":0}, - {"matrix":[0, 9], "flags":1, "x":105, "y":0}, - {"matrix":[0, 10], "flags":1, "x":117, "y":0}, - {"matrix":[0, 11], "flags":1, "x":128, "y":0}, - {"matrix":[0, 12], "flags":1, "x":140, "y":0}, - {"matrix":[0, 13], "flags":1, "x":152, "y":0}, - {"matrix":[0, 14], "flags":1, "x":163, "y":0}, - {"matrix":[0, 15], "flags":1, "x":176, "y":0}, - {"matrix":[0, 16], "flags":1, "x":189, "y":0}, - {"matrix":[0, 17], "flags":1, "x":201, "y":0}, - {"matrix":[0, 18], "flags":1, "x":212, "y":0}, - - {"matrix":[1, 0], "flags":1, "x":0, "y":14}, - {"matrix":[1, 1], "flags":8, "x":12, "y":14}, - {"matrix":[1, 2], "flags":8, "x":23, "y":14}, - {"matrix":[1, 3], "flags":8, "x":35, "y":14}, - {"matrix":[1, 4], "flags":4, "x":47, "y":14}, - {"matrix":[1, 5], "flags":4, "x":58, "y":14}, - {"matrix":[1, 6], "flags":4, "x":70, "y":14}, - {"matrix":[1, 7], "flags":4, "x":82, "y":14}, - {"matrix":[1, 8], "flags":4, "x":93, "y":14}, - {"matrix":[1, 9], "flags":4, "x":105, "y":14}, - {"matrix":[1, 10], "flags":4, "x":117, "y":14}, - {"matrix":[1, 11], "flags":4, "x":128, "y":14}, - {"matrix":[1, 12], "flags":4, "x":140, "y":14}, - {"matrix":[1, 14], "flags":1, "x":157, "y":14}, - {"matrix":[1, 15], "flags":1, "x":176, "y":14}, - {"matrix":[1, 16], "flags":8, "x":189, "y":14}, - {"matrix":[1, 17], "flags":4, "x":201, "y":14}, - {"matrix":[1, 18], "flags":4, "x":212, "y":14}, - {"matrix":[1, 19], "flags":4, "x":224, "y":14}, - - {"matrix":[2, 0], "flags":1, "x":3, "y":26}, - {"matrix":[2, 1], "flags":4, "x":17, "y":26}, - {"matrix":[2, 2], "flags":4, "x":29, "y":26}, - {"matrix":[2, 3], "flags":4, "x":41, "y":26}, - {"matrix":[2, 4], "flags":4, "x":52, "y":26}, - {"matrix":[2, 5], "flags":4, "x":64, "y":26}, - {"matrix":[2, 6], "flags":4, "x":76, "y":26}, - {"matrix":[2, 7], "flags":4, "x":87, "y":26}, - {"matrix":[2, 8], "flags":4, "x":99, "y":26}, - {"matrix":[2, 9], "flags":4, "x":111, "y":26}, - {"matrix":[2, 10], "flags":4, "x":122, "y":26}, - {"matrix":[2, 11], "flags":4, "x":134, "y":26}, - {"matrix":[2, 12], "flags":4, "x":146, "y":26}, - {"matrix":[2, 15], "flags":1, "x":176, "y":26}, - {"matrix":[2, 16], "flags":4, "x":189, "y":26}, - {"matrix":[2, 17], "flags":4, "x":201, "y":26}, - {"matrix":[2, 18], "flags":4, "x":212, "y":26}, - {"matrix":[2, 19], "flags":4, "x":224, "y":33}, - - {"matrix":[3, 0], "flags":1, "x":4, "y":39}, - {"matrix":[3, 1], "flags":4, "x":20, "y":39}, - {"matrix":[3, 2], "flags":4, "x":32, "y":39}, - {"matrix":[3, 3], "flags":4, "x":44, "y":39}, - {"matrix":[3, 4], "flags":4, "x":55, "y":39}, - {"matrix":[3, 5], "flags":4, "x":67, "y":39}, - {"matrix":[3, 6], "flags":4, "x":79, "y":39}, - {"matrix":[3, 7], "flags":4, "x":90, "y":39}, - {"matrix":[3, 8], "flags":4, "x":102, "y":39}, - {"matrix":[3, 9], "flags":4, "x":114, "y":39}, - {"matrix":[3, 10], "flags":4, "x":125, "y":39}, - {"matrix":[3, 11], "flags":4, "x":137, "y":39}, - {"matrix":[3, 13], "flags":1, "x":149, "y":39}, - {"matrix":[2, 14], "flags":1, "x":162, "y":33}, - {"matrix":[3, 15], "flags":1, "x":176, "y":39}, - {"matrix":[3, 16], "flags":4, "x":189, "y":39}, - {"matrix":[3, 17], "flags":4, "x":201, "y":39}, - {"matrix":[3, 18], "flags":4, "x":212, "y":39}, - - {"matrix":[4, 0], "flags":1, "x":1, "y":51}, - {"matrix":[4, 1], "flags":1, "x":15, "y":51}, - {"matrix":[4, 2], "flags":4, "x":26, "y":51}, - {"matrix":[4, 3], "flags":4, "x":38, "y":51}, - {"matrix":[4, 4], "flags":4, "x":50, "y":51}, - {"matrix":[4, 5], "flags":4, "x":61, "y":51}, - {"matrix":[4, 6], "flags":4, "x":73, "y":51}, - {"matrix":[4, 7], "flags":4, "x":85, "y":51}, - {"matrix":[4, 8], "flags":4, "x":96, "y":51}, - {"matrix":[4, 9], "flags":4, "x":108, "y":51}, - {"matrix":[4, 10], "flags":4, "x":120, "y":51}, - {"matrix":[4, 11], "flags":4, "x":131, "y":51}, - {"matrix":[4, 12], "flags":1, "x":147, "y":51}, - {"matrix":[4, 14], "flags":1, "x":164, "y":51}, - {"matrix":[4, 16], "flags":4, "x":189, "y":51}, - {"matrix":[4, 17], "flags":4, "x":201, "y":51}, - {"matrix":[4, 18], "flags":4, "x":212, "y":51}, - {"matrix":[4, 19], "flags":4, "x":224, "y":58}, - - {"matrix":[5, 0], "flags":1, "x":1, "y":64}, - {"matrix":[5, 1], "flags":1, "x":16, "y":64}, - {"matrix":[5, 2], "flags":1, "x":31, "y":64}, - {"matrix":[5, 6], "flags":4, "x":74, "y":64}, - {"matrix":[5, 10], "flags":1, "x":117, "y":64}, - {"matrix":[5, 11], "flags":1, "x":128, "y":64}, - {"matrix":[5, 12], "flags":1, "x":140, "y":64}, - {"matrix":[5, 13], "flags":1, "x":153, "y":64}, - {"matrix":[5, 14], "flags":1, "x":164, "y":64}, - {"matrix":[5, 15], "flags":1, "x":176, "y":64}, - {"matrix":[5, 16], "flags":4, "x":195, "y":64}, - {"matrix":[5, 18], "flags":4, "x":212, "y":64} - ] - } -} diff --git a/keyboards/keychron/k17_pro/iso_encoder/white/keymaps/default/keymap.c b/keyboards/keychron/k17_pro/iso_encoder/white/keymaps/default/keymap.c deleted file mode 100644 index c470ee5984..0000000000 --- a/keyboards/keychron/k17_pro/iso_encoder/white/keymaps/default/keymap.c +++ /dev/null @@ -1,65 +0,0 @@ -/* 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 . - */ - -#include QMK_KEYBOARD_H - -enum layers{ - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN, -}; - -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_105_iso( - KC_ESC, KC_BRID, KC_BRIU, KC_MCTL, KC_LPAD, BL_DOWN, BL_UP, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_SNAP, BL_STEP, KC_DEL, KC_F13, KC_F14, KC_F15, KC_MUTE, - KC_GRV, 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_PGUP, KC_NUM, KC_PSLS, KC_PAST, KC_PMNS, - 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_PGDN, KC_P7, KC_P8, KC_P9, KC_PPLS, - 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_NUHS, KC_ENT, KC_HOME, KC_P4, KC_P5, KC_P6, - KC_LSFT, KC_NUBS, 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_P1, KC_P2, KC_P3, KC_PENT, - KC_LCTL, KC_LOPTN, KC_LCMMD, KC_SPC, KC_RCMMD, MO(MAC_FN), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT, KC_P0, KC_PDOT ), - [MAC_FN] = LAYOUT_105_iso( - _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, BL_TOGG, _______, _______, _______, _______, BL_TOGG, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - BL_TOGG, BL_STEP, BL_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, BL_DOWN, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ), - [WIN_BASE] = LAYOUT_105_iso( - KC_ESC, 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_PSCR, BL_STEP, KC_DEL, KC_F13, KC_F14, KC_F15, KC_MUTE, - KC_GRV, 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_PGUP, KC_NUM, KC_PSLS, KC_PAST, KC_PMNS, - 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_PGDN, KC_P7, KC_P8, KC_P9, KC_PPLS, - 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_NUHS, KC_ENT, KC_HOME, KC_P4, KC_P5, KC_P6, - KC_LSFT, KC_NUBS, 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_P1, KC_P2, KC_P3, KC_PENT, - KC_LCTL, KC_LWIN, KC_LALT, KC_SPC, KC_RALT, MO(WIN_FN), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT, KC_P0, KC_PDOT ), - [WIN_FN] = LAYOUT_105_iso( - _______, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, BL_DOWN, BL_UP, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, BL_TOGG, _______, _______, _______, _______, BL_TOGG, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - BL_TOGG, BL_STEP, BL_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, BL_DOWN, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ), -}; - -#if defined(ENCODER_MAP_ENABLE) -const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][2] = { - [MAC_BASE] = {ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [MAC_FN] = {ENCODER_CCW_CW(BL_DOWN, BL_UP)}, - [WIN_BASE] = {ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [WIN_FN] = {ENCODER_CCW_CW(BL_DOWN, BL_UP)}, -}; -#endif // ENCODER_MAP_ENABLE diff --git a/keyboards/keychron/k17_pro/iso_encoder/white/keymaps/default/rules.mk b/keyboards/keychron/k17_pro/iso_encoder/white/keymaps/default/rules.mk deleted file mode 100644 index ee32568148..0000000000 --- a/keyboards/keychron/k17_pro/iso_encoder/white/keymaps/default/rules.mk +++ /dev/null @@ -1 +0,0 @@ -ENCODER_MAP_ENABLE = yes diff --git a/keyboards/keychron/k17_pro/iso_encoder/white/keymaps/via/keymap.c b/keyboards/keychron/k17_pro/iso_encoder/white/keymaps/via/keymap.c deleted file mode 100644 index ad0d23cd53..0000000000 --- a/keyboards/keychron/k17_pro/iso_encoder/white/keymaps/via/keymap.c +++ /dev/null @@ -1,65 +0,0 @@ -/* 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 . - */ - -#include QMK_KEYBOARD_H - -enum layers{ - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN, -}; - -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_105_iso( - KC_ESC, KC_BRID, KC_BRIU, KC_MICT, KC_LAPA, BL_DOWN, BL_UP, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_SNAP, BL_STEP, KC_DEL, KC_F13, KC_F14, KC_F15, KC_MUTE, - KC_GRV, 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_PGUP, KC_NUM, KC_PSLS, KC_PAST, KC_PMNS, - 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_PGDN, KC_P7, KC_P8, KC_P9, KC_PPLS, - 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_NUHS, KC_ENT, KC_HOME, KC_P4, KC_P5, KC_P6, - KC_LSFT, KC_NUBS, 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_P1, KC_P2, KC_P3, KC_PENT, - KC_LCTL, KC_LOPTN, KC_LCMMD, KC_SPC, KC_RCMMD, MO(MAC_FN), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT, KC_P0, KC_PDOT ), - [MAC_FN] = LAYOUT_105_iso( - _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, BL_TOGG, _______, _______, _______, _______, BL_TOGG, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - BL_TOGG, BL_STEP, BL_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, BL_DOWN, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ), - [WIN_BASE] = LAYOUT_105_iso( - KC_ESC, 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_PSCR, BL_STEP, KC_DEL, KC_F13, KC_F14, KC_F15, KC_MUTE, - KC_GRV, 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_PGUP, KC_NUM, KC_PSLS, KC_PAST, KC_PMNS, - 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_PGDN, KC_P7, KC_P8, KC_P9, KC_PPLS, - 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_NUHS, KC_ENT, KC_HOME, KC_P4, KC_P5, KC_P6, - KC_LSFT, KC_NUBS, 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_P1, KC_P2, KC_P3, KC_PENT, - KC_LCTL, KC_LWIN, KC_LALT, KC_SPC, KC_RALT, MO(WIN_FN), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT, KC_P0, KC_PDOT ), - [WIN_FN] = LAYOUT_105_iso( - _______, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, BL_DOWN, BL_UP, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, BL_TOGG, _______, _______, _______, _______, BL_TOGG, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - BL_TOGG, BL_STEP, BL_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, BL_DOWN, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ), -}; - -#if defined(ENCODER_MAP_ENABLE) -const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][2] = { - [MAC_BASE] = {ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [MAC_FN] = {ENCODER_CCW_CW(BL_DOWN, BL_UP)}, - [WIN_BASE] = {ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [WIN_FN] = {ENCODER_CCW_CW(BL_DOWN, BL_UP)}, -}; -#endif // ENCODER_MAP_ENABLE diff --git a/keyboards/keychron/k17_pro/iso_encoder/white/keymaps/via/rules.mk b/keyboards/keychron/k17_pro/iso_encoder/white/keymaps/via/rules.mk deleted file mode 100644 index f1adcab005..0000000000 --- a/keyboards/keychron/k17_pro/iso_encoder/white/keymaps/via/rules.mk +++ /dev/null @@ -1,2 +0,0 @@ -VIA_ENABLE = yes -ENCODER_MAP_ENABLE = yes diff --git a/keyboards/keychron/k17_pro/iso_encoder/white/rules.mk b/keyboards/keychron/k17_pro/iso_encoder/white/rules.mk deleted file mode 100644 index 6e7633bfe0..0000000000 --- a/keyboards/keychron/k17_pro/iso_encoder/white/rules.mk +++ /dev/null @@ -1 +0,0 @@ -# This file intentionally left blank diff --git a/keyboards/keychron/k17_pro/iso_encoder/white/white.c b/keyboards/keychron/k17_pro/iso_encoder/white/white.c deleted file mode 100644 index 0409bd22d6..0000000000 --- a/keyboards/keychron/k17_pro/iso_encoder/white/white.c +++ /dev/null @@ -1,136 +0,0 @@ -/* 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 . - */ - -#include "quantum.h" - -// clang-format off -#ifdef LED_MATRIX_ENABLE -const snled27351_led_t g_snled27351_leds[LED_MATRIX_LED_COUNT] = { -/* Refer to snled27351manual for these locations - * driver - * | LED address - * | | */ - {0, A_1}, - {0, A_2}, - {0, A_3}, - {0, A_4}, - {0, A_5}, - {0, A_6}, - {0, A_7}, - {0, A_8}, - {0, A_9}, - {0, A_10}, - {0, A_11}, - {0, A_12}, - {0, A_13}, - {0, A_14}, - {0, A_15}, - {0, A_16}, - {0, F_8}, - {0, F_9}, - {0, F_10}, - - {0, B_1}, - {0, B_2}, - {0, B_3}, - {0, B_4}, - {0, B_5}, - {0, B_6}, - {0, B_7}, - {0, B_8}, - {0, B_9}, - {0, B_10}, - {0, B_11}, - {0, B_12}, - {0, B_13}, - {0, B_15}, - {0, B_16}, - {0, H_7}, - {0, H_8}, - {0, H_9}, - {0, H_10}, - - {0, C_1}, - {0, C_2}, - {0, C_3}, - {0, C_4}, - {0, C_5}, - {0, C_6}, - {0, C_7}, - {0, C_8}, - {0, C_9}, - {0, C_10}, - {0, C_11}, - {0, C_12}, - {0, C_13}, - {0, C_16}, - {0, H_12}, - {0, H_13}, - {0, H_14}, - {0, H_15}, - - {0, D_1}, - {0, D_2}, - {0, D_3}, - {0, D_4}, - {0, D_5}, - {0, D_6}, - {0, D_7}, - {0, D_8}, - {0, D_9}, - {0, D_10}, - {0, D_11}, - {0, D_12}, - {0, D_14}, - {0, C_15}, - {0, D_16}, - {0, G_7}, - {0, G_8}, - {0, G_9}, - - {0, E_1}, - {0, E_2}, - {0, E_3}, - {0, E_4}, - {0, E_5}, - {0, E_6}, - {0, E_7}, - {0, E_8}, - {0, E_9}, - {0, E_10}, - {0, E_11}, - {0, E_12}, - {0, E_13}, - {0, E_15}, - {0, G_10}, - {0, G_11}, - {0, G_12}, - {0, G_13}, - - {0, F_1}, - {0, F_2}, - {0, F_3}, - {0, F_7}, - {0, F_11}, - {0, F_12}, - {0, F_13}, - {0, F_14}, - {0, F_15}, - {0, F_16}, - {0, G_14}, - {0, G_16}, -}; -#endif diff --git a/keyboards/keychron/k17_pro/k17_pro.c b/keyboards/keychron/k17_pro/k17_pro.c deleted file mode 100644 index de8d67f656..0000000000 --- a/keyboards/keychron/k17_pro/k17_pro.c +++ /dev/null @@ -1,353 +0,0 @@ -/* 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 . - */ - -#include "k17_pro.h" -#ifdef KC_BLUETOOTH_ENABLE -# include "ckbt51.h" -# include "bluetooth.h" -# include "indicator.h" -# include "transport.h" -# include "battery.h" -# include "bat_level_animation.h" -# include "lpm.h" -#endif - -#define POWER_ON_LED_DURATION 3000 - -#ifdef ENABLE_FACTORY_TEST -# include "factory_test.h" -#endif - -typedef struct PACKED { - uint8_t len; - uint8_t keycode[3]; -} key_combination_t; - -static uint32_t factory_timer_buffer = 0; -static uint32_t power_on_indicator_timer_buffer = 0; -static uint32_t siri_timer_buffer = 0; -static uint8_t mac_keycode[4] = {KC_LOPT, KC_ROPT, KC_LCMD, KC_RCMD}; - -key_combination_t key_comb_list[4] = { - {2, {KC_LWIN, KC_TAB}}, // Task (win) - {2, {KC_LWIN, KC_E}}, // Files (win) - {3, {KC_LSFT, KC_LGUI, KC_4}}, // Snapshot (mac) - {2, {KC_LWIN, KC_C}} // Cortana (win) -}; - -#ifdef KC_BLUETOOTH_ENABLE -bool firstDisconnect = true; -bool bt_factory_reset = false; -static virtual_timer_t pairing_key_timer; -extern uint8_t g_pwm_buffer[DRIVER_COUNT][192]; - -static void pairing_key_timer_cb(void *arg) { - bluetooth_pairing_ex(*(uint8_t *)arg, NULL); -} -#endif - -bool dip_switch_update_kb(uint8_t index, bool active) { - if (index == 0) { -#ifdef INVERT_OS_SWITCH_STATE - default_layer_set(1UL << (!active ? 0 : 2)); -#else - default_layer_set(1UL << (active ? 0 : 2)); -#endif - } - dip_switch_update_user(index, active); - - return true; -} - -#ifdef KC_BLUETOOTH_ENABLE -bool process_record_kb_bt(uint16_t keycode, keyrecord_t *record) { -#else -bool process_record_kb(uint16_t keycode, keyrecord_t *record) { -#endif - static uint8_t host_idx = 0; - - switch (keycode) { - case KC_MICT: - if (record->event.pressed) { - register_code(KC_MISSION_CONTROL); - } else { - unregister_code(KC_MISSION_CONTROL); - } - return false; // Skip all further processing of this key - case KC_LAPA: - if (record->event.pressed) { - register_code(KC_LAUNCHPAD); - } else { - unregister_code(KC_LAUNCHPAD); - } - return false; // Skip all further processing of this key - case KC_LOPTN: - case KC_ROPTN: - case KC_LCMMD: - case KC_RCMMD: - if (record->event.pressed) { - register_code(mac_keycode[keycode - KC_LOPTN]); - } else { - unregister_code(mac_keycode[keycode - KC_LOPTN]); - } - return false; // Skip all further processing of this key) - case KC_TASK: - case KC_FILE: - case KC_SNAP: - case KC_CTANA: - if (record->event.pressed) { - for (uint8_t i = 0; i < key_comb_list[keycode - KC_TASK].len; i++) - register_code(key_comb_list[keycode - KC_TASK].keycode[i]); - } else { - for (uint8_t i = 0; i < key_comb_list[keycode - KC_TASK].len; i++) - unregister_code(key_comb_list[keycode - KC_TASK].keycode[i]); - } - return false; // Skip all further processing of this key - case KC_SIRI: - if (record->event.pressed && siri_timer_buffer == 0) { - register_code(KC_LGUI); - register_code(KC_SPACE); - siri_timer_buffer = sync_timer_read32() == 0 ? 1 : sync_timer_read32(); - } - return false; // Skip all further processing of this key -#ifdef KC_BLUETOOTH_ENABLE - case BT_HST1 ... BT_HST3: - if (get_transport() == TRANSPORT_BLUETOOTH) { - if (record->event.pressed) { - host_idx = keycode - BT_HST1 + 1; - chVTSet(&pairing_key_timer, TIME_MS2I(2000), (vtfunc_t)pairing_key_timer_cb, &host_idx); - bluetooth_connect_ex(host_idx, 0); - } else { - host_idx = 0; - chVTReset(&pairing_key_timer); - } - } - break; - case BAT_LVL: - if (get_transport() == TRANSPORT_BLUETOOTH && !usb_power_connected()) { - bat_level_animiation_start(battery_get_percentage()); - } - break; -#endif - default: -#ifdef FACTORY_RESET_CHECK - FACTORY_RESET_CHECK(keycode, record); -#endif - break; - } - return true; -} - -#if defined(KC_BLUETOOTH_ENABLE) && defined(ENCODER_ENABLE) -static void encoder_pad_cb(void *param) { - encoder_inerrupt_read((uint32_t)param & 0XFF); -} -#endif - -void keyboard_post_init_kb(void) { - /*pin_t encoders_pad_a1[NUM_ENCODERS_MAX_PER_SIDE] = ENCODERS_PAD_A; - pin_t encoders_pad_b1[NUM_ENCODERS_MAX_PER_SIDE] = ENCODERS_PAD_B; - for (uint8_t i = 0; i < NUM_ENCODERS_MAX_PER_SIDE; i++) { - setPinInput(encoders_pad_a1[i]); - setPinInput(encoders_pad_b1[i]); - }*/ - - dip_switch_read(true); - -#ifdef KC_BLUETOOTH_ENABLE - /* Currently we don't use this reset pin */ - palSetLineMode(CKBT51_RESET_PIN, PAL_MODE_OUTPUT_PUSHPULL); - palWriteLine(CKBT51_RESET_PIN, PAL_HIGH); - - /* IMPORTANT: DO NOT enable internal pull-up resistor - * as there is an external pull-down resistor. - */ - palSetLineMode(USB_BT_MODE_SELECT_PIN, PAL_MODE_INPUT); - - ckbt51_init(false); - bluetooth_init(); - - power_on_indicator_timer_buffer = sync_timer_read32() | 1; - writePin(BAT_LOW_LED_PIN, BAT_LOW_LED_PIN_ON_STATE); - //writePin(LED_CAPS_LOCK_PIN, LED_PIN_ON_STATE); - -# ifdef ENCODER_ENABLE - pin_t encoders_pad_a[NUM_ENCODERS] = ENCODERS_PAD_A; - pin_t encoders_pad_b[NUM_ENCODERS] = ENCODERS_PAD_B; - for (uint32_t i = 0; i < NUM_ENCODERS; i++) { - palEnableLineEvent(encoders_pad_a[i], PAL_EVENT_MODE_BOTH_EDGES); - palEnableLineEvent(encoders_pad_b[i], PAL_EVENT_MODE_BOTH_EDGES); - palSetLineCallback(encoders_pad_a[i], encoder_pad_cb, (void *)i); - palSetLineCallback(encoders_pad_b[i], encoder_pad_cb, (void *)i); - } -# endif -#endif - - keyboard_post_init_user(); -} - -void matrix_scan_kb(void) { - if (power_on_indicator_timer_buffer) { - if (sync_timer_elapsed32(power_on_indicator_timer_buffer) > POWER_ON_LED_DURATION) { - power_on_indicator_timer_buffer = 0; - - writePin(BAT_LOW_LED_PIN, !BAT_LOW_LED_PIN_ON_STATE); - //if (!host_keyboard_led_state().caps_lock) writePin(LED_CAPS_LOCK_PIN, !LED_PIN_ON_STATE); - } else { - writePin(BAT_LOW_LED_PIN, BAT_LOW_LED_PIN_ON_STATE); - //writePin(LED_CAPS_LOCK_PIN, LED_PIN_ON_STATE); - } - } - - if (factory_timer_buffer && timer_elapsed32(factory_timer_buffer) > 2000) { - factory_timer_buffer = 0; - if (bt_factory_reset) { - bt_factory_reset = false; - palWriteLine(CKBT51_RESET_PIN, PAL_LOW); - wait_ms(5); - palWriteLine(CKBT51_RESET_PIN, PAL_HIGH); - } - } - - if (siri_timer_buffer && sync_timer_elapsed32(siri_timer_buffer) > 500) { - siri_timer_buffer = 0; - unregister_code(KC_LGUI); - unregister_code(KC_SPACE); - } - -#ifdef FACTORY_RESET_TASK - FACTORY_RESET_TASK(); -#endif - matrix_scan_user(); -} - -#ifdef KC_BLUETOOTH_ENABLE -static void ckbt51_param_init(void) { - /* Set bluetooth device name */ - ckbt51_set_local_name(PRODUCT); - wait_ms(10); - /* Set bluetooth parameters */ - module_param_t param = {.event_mode = 0x02, - .connected_idle_timeout = 7200, - .pairing_timeout = 180, - .pairing_mode = 0, - .reconnect_timeout = 5, - .report_rate = 90, - .vendor_id_source = 1, - .verndor_id = 0, // Must be 0x3434 - .product_id = PRODUCT_ID}; - ckbt51_set_param(¶m); - wait_ms(10); -} - -void bluetooth_enter_disconnected_kb(uint8_t host_idx) { - if (bt_factory_reset) { - ckbt51_param_init(); - factory_timer_buffer = timer_read32(); - } - /* CKBT51 bluetooth module boot time is slower, it enters disconnected after boot, - so we place initialization here. */ - if (firstDisconnect && sync_timer_read32() < 1000 && get_transport() == TRANSPORT_BLUETOOTH) { - ckbt51_param_init(); - bluetooth_connect(); - firstDisconnect = false; - } -} - -void ckbt51_default_ack_handler(uint8_t *data, uint8_t len) { - if (data[1] == 0x45) { - module_param_t param = {.event_mode = 0x02, - .connected_idle_timeout = 7200, - .pairing_timeout = 180, - .pairing_mode = 0, - .reconnect_timeout = 5, - .report_rate = 90, - .vendor_id_source = 1, - .verndor_id = 0, // Must be 0x3434 - .product_id = PRODUCT_ID}; - ckbt51_set_param(¶m); - } -} - -void bluetooth_pre_task(void) { - static uint8_t mode = 1; - - if (readPin(USB_BT_MODE_SELECT_PIN) != mode) { - if (readPin(USB_BT_MODE_SELECT_PIN) != mode) { - mode = readPin(USB_BT_MODE_SELECT_PIN); - set_transport(mode == 0 ? TRANSPORT_BLUETOOTH : TRANSPORT_USB); - } - } -} -#endif - -void battery_calculte_voltage(uint16_t value) { - uint16_t voltage = ((uint32_t)value) * 2246 / 1000; - -#ifdef LED_MATRIX_ENABLE - if (led_matrix_is_enabled()) { - uint32_t totalBuf = 0; - - for (uint8_t i = 0; i < DRIVER_COUNT; i++) - for (uint8_t j = 0; j < 192; j++) - totalBuf += g_pwm_buffer[i][j]; - /* We assumpt it is linear relationship*/ - voltage += (30 * totalBuf / LED_MATRIX_LED_COUNT / 255); - } -#endif -#ifdef RGB_MATRIX_ENABLE - if (rgb_matrix_is_enabled()) { - uint32_t totalBuf = 0; - - for (uint8_t i = 0; i < DRIVER_COUNT; i++) - for (uint8_t j = 0; j < 192; j++) - totalBuf += g_pwm_buffer[i][j]; - /* We assumpt it is linear relationship*/ - uint32_t compensation = 60 * totalBuf / RGB_MATRIX_LED_COUNT / 255 / 3; - voltage += compensation; - } -#endif - battery_set_voltage(voltage); -} - -bool via_command_kb(uint8_t *data, uint8_t length) { - switch (data[0]) { -#ifdef KC_BLUETOOTH_ENABLE - case 0xAA: - ckbt51_dfu_rx(data, length); - break; -#endif -#ifdef ENABLE_FACTORY_TEST - case 0xAB: - factory_test_rx(data, length); - break; -#endif - default: - return false; - } - - return true; -} - -#if !defined(VIA_ENABLE) -void raw_hid_receive(uint8_t *data, uint8_t length) { - switch (data[0]) { - case RAW_HID_CMD: - via_command_kb(data, length); - break; - } -} -#endif diff --git a/keyboards/keychron/k17_pro/k17_pro.h b/keyboards/keychron/k17_pro/k17_pro.h deleted file mode 100644 index e3964296d1..0000000000 --- a/keyboards/keychron/k17_pro/k17_pro.h +++ /dev/null @@ -1,57 +0,0 @@ -/* 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 . - */ - -#pragma once - -#include "quantum.h" -#ifdef VIA_ENABLE -# include "via.h" -#endif - -#define ___ KC_NO -#define KC_MICT QK_KB_0 -#define KC_LAPA QK_KB_1 - -#ifdef VIA_ENABLE -# define USER_START QK_KB_2 -#else -# define USER_START SAFE_RANGE -#endif - -// clang-format off -enum { - KC_LOPTN = USER_START, - KC_ROPTN, - KC_LCMMD, - KC_RCMMD, - KC_TASK, - KC_FILE, - KC_SNAP, - KC_CTANA, - KC_SIRI, -#ifdef KC_BLUETOOTH_ENABLE - BT_HST1, - BT_HST2, - BT_HST3, - BAT_LVL, -#else - BT_HST1 = KC_TRNS, - BT_HST2 = KC_TRNS, - BT_HST3 = KC_TRNS, - BAT_LVL = KC_TRNS, -#endif - NEW_SAFE_RANGE -}; diff --git a/keyboards/keychron/k17_pro/matrix.c b/keyboards/keychron/k17_pro/matrix.c deleted file mode 100644 index dd2c1f2c4c..0000000000 --- a/keyboards/keychron/k17_pro/matrix.c +++ /dev/null @@ -1,212 +0,0 @@ -/* 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 . - */ - -#include "quantum.h" - -#ifndef HC595_STCP -# define HC595_STCP B0 -#endif -#ifndef HC595_SHCP -# define HC595_SHCP A1 -#endif -#ifndef HC595_DS -# define HC595_DS A7 -#endif - -#ifndef HC595_START_INDEX -# define HC595_START_INDEX 0 -#endif -#ifndef HC595_END_INDEX -# define HC595_END_INDEX 15 -#endif -#ifndef HC595_OFFSET_INDEX -# define HC595_OFFSET_INDEX 0 -#endif - -#if defined(HC595_START_INDEX) && defined(HC595_END_INDEX) -# if ((HC595_END_INDEX - HC595_START_INDEX + 1) > 16) -# define SIZE_T uint32_t -# define UNSELECT_ALL_COL 0xFFFFFFFF -# define SELECT_ALL_COL 0x00000000 -# elif ((HC595_END_INDEX - HC595_START_INDEX + 1) > 8) -# define SIZE_T uint16_t -# define UNSELECT_ALL_COL 0xFFFF -# define SELECT_ALL_COL 0x0000 -# else -# define SIZE_T uint8_t -# define UNSELECT_ALL_COL 0xFF -# define SELECT_ALL_COL 0x00 -# endif -#endif - -pin_t row_pins[MATRIX_ROWS] = MATRIX_ROW_PINS; -pin_t col_pins[MATRIX_COLS] = MATRIX_COL_PINS; - -static inline uint8_t readMatrixPin(pin_t pin) { - if (pin != NO_PIN) { - return readPin(pin); - } else { - return 1; - } -} - -static inline void setPinOutput_writeLow(pin_t pin) { - setPinOutput(pin); - writePinLow(pin); -} - -static inline void setPinOutput_writeHigh(pin_t pin) { - setPinOutput(pin); - writePinHigh(pin); -} - -static inline void HC595_delay(uint16_t n) { - while (n-- > 0) { - asm volatile("nop" ::: "memory"); - } -} - -static void HC595_output(SIZE_T data, bool bit_flag) { - uint8_t n = 1; - - ATOMIC_BLOCK_FORCEON { - for (uint8_t i = 0; i < (HC595_END_INDEX - HC595_START_INDEX + 1); i++) { - if (data & 0x1) { - writePinHigh(HC595_DS); - } else { - writePinLow(HC595_DS); - } - writePinHigh(HC595_SHCP); - HC595_delay(n); - writePinLow(HC595_SHCP); - HC595_delay(n); - if (bit_flag) { - break; - } else { - data = data >> 1; - } - } - writePinHigh(HC595_STCP); - HC595_delay(n); - writePinLow(HC595_STCP); - HC595_delay(n); - } -} - -static void select_col(uint8_t col) { - if (col < HC595_START_INDEX || col > HC595_END_INDEX) { - setPinOutput_writeLow(col_pins[col]); - } else { - if (col == HC595_START_INDEX) { - HC595_output(0x00, true); - if (col < HC595_OFFSET_INDEX) HC595_output(0x01, true); - } - } -} - -static void unselect_col(uint8_t col) { - if (col < HC595_START_INDEX || col > HC595_END_INDEX) { -#ifdef MATRIX_UNSELECT_DRIVE_HIGH - setPinOutput_writeHigh(col_pins[col]); -#else - setPinInputHigh(col_pins[col]); -#endif - } else { - HC595_output(0x01, true); - } -} - -static void unselect_cols(void) { - for (uint8_t col = 0; col < MATRIX_COLS; col++) { - if (col < HC595_START_INDEX || col > HC595_END_INDEX) { -#ifdef MATRIX_UNSELECT_DRIVE_HIGH - setPinOutput_writeHigh(col_pins[col]); -#else - setPinInputHigh(col_pins[col]); -#endif - } else { - if (col == HC595_START_INDEX) HC595_output(UNSELECT_ALL_COL, false); - break; - } - } -} - -void select_all_cols(void) { - for (uint8_t col = 0; col < MATRIX_COLS; col++) { - if (col < HC595_START_INDEX || col > HC595_END_INDEX) { - setPinOutput_writeLow(col_pins[col]); - } else { - if (col == HC595_START_INDEX) HC595_output(SELECT_ALL_COL, false); - break; - } - } -} - -static void matrix_read_rows_on_col(matrix_row_t current_matrix[], uint8_t current_col, matrix_row_t row_shifter) { - // Select col - select_col(current_col); // select col - HC595_delay(200); - - // For each row... - for (uint8_t row_index = 0; row_index < MATRIX_ROWS; row_index++) { - // Check row pin state - if (readMatrixPin(row_pins[row_index]) == 0) { - // Pin LO, set col bit - current_matrix[row_index] |= row_shifter; - } else { - // Pin HI, clear col bit - current_matrix[row_index] &= ~row_shifter; - } - } - - // Unselect col - unselect_col(current_col); - HC595_delay(200); // wait for all Row signals to go HIGH -} - -void matrix_init_custom(void) { - setPinOutput(HC595_DS); - setPinOutput(HC595_STCP); - setPinOutput(HC595_SHCP); - - for (uint8_t x = 0; x < MATRIX_ROWS; x++) { - if (row_pins[x] != NO_PIN) { - setPinInputHigh(row_pins[x]); - } - } - - unselect_cols(); -} - -bool matrix_scan_custom(matrix_row_t current_matrix[]) { - matrix_row_t curr_matrix[MATRIX_ROWS] = {0}; - - // Set col, read rows - matrix_row_t row_shifter = MATRIX_ROW_SHIFTER; - for (uint8_t current_col = 0; current_col < MATRIX_COLS; current_col++, row_shifter <<= 1) { - matrix_read_rows_on_col(curr_matrix, current_col, row_shifter); - } - - bool changed = memcmp(current_matrix, curr_matrix, sizeof(curr_matrix)) != 0; - if (changed) memcpy(current_matrix, curr_matrix, sizeof(curr_matrix)); - - return changed; -} - -void suspend_wakeup_init_kb(void) { - // code will run on keyboard wakeup - clear_keyboard(); -} diff --git a/keyboards/keychron/k17_pro/mcuconf.h b/keyboards/keychron/k17_pro/mcuconf.h deleted file mode 100644 index 882d6bd568..0000000000 --- a/keyboards/keychron/k17_pro/mcuconf.h +++ /dev/null @@ -1,36 +0,0 @@ -/* Copyright 2023 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 - -/* Set HCLK to 48 MHz as tradeoff of USB lowest clockand and - * lower power comsumption for bluetooth. Will use dynamic - * clock when STM32L4 is supported in ChibiOS */ -#undef STM32_PLLM_VALUE -#define STM32_PLLM_VALUE 2 - -#undef STM32_PLLN_VALUE -#define STM32_PLLN_VALUE 12 - -#undef STM32_I2C_USE_I2C1 -#define STM32_I2C_USE_I2C1 TRUE - -#ifdef KC_BLUETOOTH_ENABLE -# undef STM32_SERIAL_USE_USART2 -# define STM32_SERIAL_USE_USART2 TRUE -#endif diff --git a/keyboards/keychron/k17_pro/readme.md b/keyboards/keychron/k17_pro/readme.md deleted file mode 100644 index 9ff527c791..0000000000 --- a/keyboards/keychron/k17_pro/readme.md +++ /dev/null @@ -1,28 +0,0 @@ -# Keychron K17 Pro - -![Keychron K17 Pro](https://i.imgur.com/6dAZOkp.jpg) - -A wireless custom mechanical 96% keyboard. - -* Keyboard Maintainer: [Keychron](https://github.com/keychron) -* Hardware Supported: Keychron K17 Pro -* Hardware Availability: [Keychron](https://www.keychron.com) - -Make example for this keyboard (after setting up your build environment): - - make keychron/k17_pro/ansi_encoder:default - make keychron/k17_pro/iso_encoder:default - -Flashing example for this keyboard: - - make keychron/k17_pro/ansi_encoder:default:flash - make keychron/k17_pro/iso_encoder:default:flash - -## bootloader - -Enter the bootloader in two ways: - -**Reset Key**: Connect the USB cable, toggle mode switch to "Off", hold down the *Esc* key or reset button underneath space bar, then toggle then switch to "Cable". - - -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). diff --git a/keyboards/keychron/k17_pro/rules.mk b/keyboards/keychron/k17_pro/rules.mk deleted file mode 100644 index 1f9fc1ab58..0000000000 --- a/keyboards/keychron/k17_pro/rules.mk +++ /dev/null @@ -1,7 +0,0 @@ -# Enter lower-power sleep mode when on the ChibiOS idle thread -OPT_DEFS += -DCORTEX_ENABLE_WFI_IDLE=TRUE -OPT_DEFS += -DNO_USB_STARTUP_CHECK -DENABLE_FACTORY_TEST - -SRC += matrix.c - -include keyboards/keychron/bluetooth/bluetooth.mk diff --git a/keyboards/keychron/k17_pro/via_json/k17_pro_ansi_encoder_rgb.json b/keyboards/keychron/k17_pro/via_json/k17_pro_ansi_encoder_rgb.json deleted file mode 100644 index b83a5408aa..0000000000 --- a/keyboards/keychron/k17_pro/via_json/k17_pro_ansi_encoder_rgb.json +++ /dev/null @@ -1,335 +0,0 @@ -{ - "name": "Keychron K17 Pro ANSI Knob RGB", - "vendorId": "0x3434", - "productId": "0x0206", - "keycodes": ["qmk_lighting"], - "menus": [ - { - "label": "Lighting", - "content": [ - { - "label": "Backlight", - "content": [ - { - "label": "Brightness", - "type": "range", - "options": [0, 255], - "content": ["id_qmk_rgb_matrix_brightness", 3, 1] - }, - { - "label": "Effect", - "type": "dropdown", - "content": ["id_qmk_rgb_matrix_effect", 3, 2], - "options": [ - ["None", 0], - ["Solid Color", 1], - ["Breathing", 2], - ["Band Spiral Val", 3], - ["Cycle All", 4], - ["Cycle Left Right", 5], - ["Cycle Up Down", 6], - ["Rainbow Moving Chevron", 7], - ["Cycle Out In", 8], - ["Cycle Out In Dual", 9], - ["Cycle Pinwheel", 10], - ["Cycle Spiral", 11], - ["Dual Beacon", 12], - ["Rainbow Beacon", 13], - ["Jellybean Raindrops", 14], - ["Pixel Rain", 15], - ["Typing Heatmap", 16], - ["Digital Rain", 17], - ["Reactive Simple", 18], - ["Reactive Multiwide", 19], - ["Reactive Multinexus", 20], - ["Splash", 21], - ["Solid Splash", 22] - ] - }, - { - "showIf": "{id_qmk_rgb_matrix_effect} > 1", - "label": "Effect Speed", - "type": "range", - "options": [0, 255], - "content": ["id_qmk_rgb_matrix_effect_speed", 3, 3] - }, - { - "showIf": "{id_qmk_rgb_matrix_effect} != 0 && ( {id_qmk_rgb_matrix_effect} < 4 || {id_qmk_rgb_matrix_effect} == 18 || ({id_qmk_rgb_matrix_effect} > 17 && {id_qmk_rgb_matrix_effect} != 21) ) ", - "label": "Color", - "type": "color", - "content": ["id_qmk_rgb_matrix_color", 3, 4] - } - ] - } - ] - } - ], - "customKeycodes": [ - {"name": "Misson Control", "title": "Misson Control, availabe in macOS", "shortName": "MCtrl"}, - {"name": "Launch pad", "title": "Launch pad, availabe in macOS", "shortName": "LPad"}, - {"name": "Left Option", "title": "Left Option", "shortName": "LOpt"}, - {"name": "Right Option", "title": "Right Option", "shortName": "ROpt"}, - {"name": "Left Cmd", "title": "Left Command", "shortName": "LCmd"}, - {"name": "Right Cmd", "title": "Right Command", "shortName": "RCmd"}, - {"name": "Task View", "title": "Task View in Windows", "shortName": "Task"}, - {"name": "File Explorer", "title": "File Explorer in Windows", "shortName": "File"}, - {"name": "Screen shot", "title": "Screenshot in macOS", "shortName": "SShot"}, - {"name": "Cortana", "title": "Cortana in Windows", "shortName": "Cortana"}, - {"name": "Siri", "title": "Siri in macOS", "shortName": "Siri"}, - {"name": "Bluetooth Host 1", "title": "Bluetooth Host 1", "shortName": "BTH1"}, - {"name": "Bluetooth Host 2", "title": "Bluetooth Host 2", "shortName": "BTH2"}, - {"name": "Bluetooth Host 3", "title": "Bluetooth Host 3", "shortName": "BTH3"}, - {"name": "Battery Level", "title": "Show battery level", "shortName": "Batt"} - ], - "matrix": {"rows": 6, "cols": 20}, - "layouts": { - "keymap": [ - [ - { - "c": "#777777" - }, - "0,0\nESC", - { - "c": "#cccccc" - }, - "0,1", - "0,2", - "0,3", - "0,4", - { - "c": "#aaaaaa" - }, - "0,5", - "0,6", - "0,7", - "0,8", - "0,9", - { - "c": "#cccccc" - }, - "0,10", - "0,11", - "0,12", - { - "c": "#aaaaaa" - }, - "0,13", - "0,14", - { - "x": 0.25 - }, - "0,15", - { - "x": 0.25, - "c": "#cccccc" - }, - "0,16", - "0,17", - "0,18", - { - "c": "#aaaaaa" - }, - "0,19\n\n\n\n\n\n\n\n\ne0" - ], - [ - { - "y": 0.25 - }, - "1,0", - { - "c": "#cccccc" - }, - "1,1", - "1,2", - "1,3", - "1,4", - "1,5", - "1,6", - "1,7", - "1,8", - "1,9", - "1,10", - "1,11", - "1,12", - { - "c": "#aaaaaa", - "w": 2 - }, - "1,14", - { - "x": 0.25 - }, - "1,15", - { - "x": 0.25, - "c": "#cccccc" - }, - "1,16", - "1,17", - "1,18", - "1,19" - ], - [ - { - "c": "#aaaaaa", - "w": 1.5 - }, - "2,0", - { - "c": "#cccccc" - }, - "2,1", - "2,2", - "2,3", - "2,4", - "2,5", - "2,6", - "2,7", - "2,8", - "2,9", - "2,10", - "2,11", - "2,12", - { - "c": "#aaaaaa", - "w": 1.5 - }, - "2,14", - { - "x": 0.25 - }, - "2,15", - { - "x": 0.25, - "c": "#cccccc" - }, - "2,16", - "2,17", - "2,18", - { - "h": 2 - }, - "2,19" - ], - [ - { - "c": "#aaaaaa", - "w": 1.75 - }, - "3,0", - { - "c": "#cccccc" - }, - "3,1", - "3,2", - "3,3", - "3,4", - "3,5", - "3,6", - "3,7", - "3,8", - "3,9", - "3,10", - "3,11", - { - "c": "#777777", - "w": 2.25 - }, - "3,13", - { - "x": 0.25, - "c": "#aaaaaa" - }, - "3,15", - { - "x": 0.25, - "c": "#cccccc" - }, - "3,16", - "3,17", - "3,18" - ], - [ - { - "c": "#aaaaaa", - "w": 2.25 - }, - "4,0", - { - "c": "#cccccc" - }, - "4,2", - "4,3", - "4,4", - "4,5", - "4,6", - "4,7", - "4,8", - "4,9", - "4,10", - "4,11", - { - "c": "#aaaaaa", - "w": 1.75 - }, - "4,13", - { - "x": 0.25, - "c": "#777777" - }, - "4,14", - { - "x": 1.25, - "c": "#cccccc" - }, - "4,16", - "4,17", - "4,18", - { - "h": 2 - }, - "4,19" - ], - [ - { - "c": "#aaaaaa", - "w": 1.25 - }, - "5,0", - { - "w": 1.25 - }, - "5,1", - { - "w": 1.25 - }, - "5,2", - { - "c": "#cccccc", - "w": 6.25 - }, - "5,6", - { - "c": "#aaaaaa" - }, - "5,10", - "5,11", - "5,12", - { - "x": 0.25, - "c": "#777777" - }, - "5,13", - "5,14", - "5,15", - { - "x": 0.25, - "c": "#cccccc", - "w": 2 - }, - "5,17", - "5,18" - ] - ] - } -} diff --git a/keyboards/keychron/k17_pro/via_json/k17_pro_ansi_encoder_white.json b/keyboards/keychron/k17_pro/via_json/k17_pro_ansi_encoder_white.json deleted file mode 100644 index 4688123f2a..0000000000 --- a/keyboards/keychron/k17_pro/via_json/k17_pro_ansi_encoder_white.json +++ /dev/null @@ -1,274 +0,0 @@ -{ - "name": "Keychron K17 Pro ANSI Knob White", - "vendorId": "0x3434", - "productId": "0x0209", - "keycodes": ["qmk_lighting"], - "customKeycodes": [ - {"name": "Misson Control", "title": "Misson Control, availabe in macOS", "shortName": "MCtrl"}, - {"name": "Launch pad", "title": "Launch pad, availabe in macOS", "shortName": "LPad"}, - {"name": "Left Option", "title": "Left Option", "shortName": "LOpt"}, - {"name": "Right Option", "title": "Right Option", "shortName": "ROpt"}, - {"name": "Left Cmd", "title": "Left Command", "shortName": "LCmd"}, - {"name": "Right Cmd", "title": "Right Command", "shortName": "RCmd"}, - {"name": "Task View", "title": "Task View in Windows", "shortName": "Task"}, - {"name": "File Explorer", "title": "File Explorer in Windows", "shortName": "File"}, - {"name": "Screen shot", "title": "Screenshot in macOS", "shortName": "SShot"}, - {"name": "Cortana", "title": "Cortana in Windows", "shortName": "Cortana"}, - {"name": "Siri", "title": "Siri in macOS", "shortName": "Siri"}, - {"name": "Bluetooth Host 1", "title": "Bluetooth Host 1", "shortName": "BTH1"}, - {"name": "Bluetooth Host 2", "title": "Bluetooth Host 2", "shortName": "BTH2"}, - {"name": "Bluetooth Host 3", "title": "Bluetooth Host 3", "shortName": "BTH3"}, - {"name": "Battery Level", "title": "Show battery level", "shortName": "Batt"} - ], - "matrix": {"rows": 6, "cols": 20}, - "layouts": { - "keymap": [ - [ - { - "c": "#777777" - }, - "0,0\nESC", - { - "c": "#cccccc" - }, - "0,1", - "0,2", - "0,3", - "0,4", - { - "c": "#aaaaaa" - }, - "0,5", - "0,6", - "0,7", - "0,8", - "0,9", - { - "c": "#cccccc" - }, - "0,10", - "0,11", - "0,12", - { - "c": "#aaaaaa" - }, - "0,13", - "0,14", - { - "x": 0.25 - }, - "0,15", - { - "x": 0.25, - "c": "#cccccc" - }, - "0,16", - "0,17", - "0,18", - { - "c": "#aaaaaa" - }, - "0,19\n\n\n\n\n\n\n\n\ne0" - ], - [ - { - "y": 0.25 - }, - "1,0", - { - "c": "#cccccc" - }, - "1,1", - "1,2", - "1,3", - "1,4", - "1,5", - "1,6", - "1,7", - "1,8", - "1,9", - "1,10", - "1,11", - "1,12", - { - "c": "#aaaaaa", - "w": 2 - }, - "1,14", - { - "x": 0.25 - }, - "1,15", - { - "x": 0.25, - "c": "#cccccc" - }, - "1,16", - "1,17", - "1,18", - "1,19" - ], - [ - { - "c": "#aaaaaa", - "w": 1.5 - }, - "2,0", - { - "c": "#cccccc" - }, - "2,1", - "2,2", - "2,3", - "2,4", - "2,5", - "2,6", - "2,7", - "2,8", - "2,9", - "2,10", - "2,11", - "2,12", - { - "c": "#aaaaaa", - "w": 1.5 - }, - "2,14", - { - "x": 0.25 - }, - "2,15", - { - "x": 0.25, - "c": "#cccccc" - }, - "2,16", - "2,17", - "2,18", - { - "h": 2 - }, - "2,19" - ], - [ - { - "c": "#aaaaaa", - "w": 1.75 - }, - "3,0", - { - "c": "#cccccc" - }, - "3,1", - "3,2", - "3,3", - "3,4", - "3,5", - "3,6", - "3,7", - "3,8", - "3,9", - "3,10", - "3,11", - { - "c": "#777777", - "w": 2.25 - }, - "3,13", - { - "x": 0.25, - "c": "#aaaaaa" - }, - "3,15", - { - "x": 0.25, - "c": "#cccccc" - }, - "3,16", - "3,17", - "3,18" - ], - [ - { - "c": "#aaaaaa", - "w": 2.25 - }, - "4,0", - { - "c": "#cccccc" - }, - "4,2", - "4,3", - "4,4", - "4,5", - "4,6", - "4,7", - "4,8", - "4,9", - "4,10", - "4,11", - { - "c": "#aaaaaa", - "w": 1.75 - }, - "4,13", - { - "x": 0.25, - "c": "#777777" - }, - "4,14", - { - "x": 1.25, - "c": "#cccccc" - }, - "4,16", - "4,17", - "4,18", - { - "h": 2 - }, - "4,19" - ], - [ - { - "c": "#aaaaaa", - "w": 1.25 - }, - "5,0", - { - "w": 1.25 - }, - "5,1", - { - "w": 1.25 - }, - "5,2", - { - "c": "#cccccc", - "w": 6.25 - }, - "5,6", - { - "c": "#aaaaaa" - }, - "5,10", - "5,11", - "5,12", - { - "x": 0.25, - "c": "#777777" - }, - "5,13", - "5,14", - "5,15", - { - "x": 0.25, - "c": "#cccccc", - "w": 2 - }, - "5,17", - "5,18" - ] - ] - } -} diff --git a/keyboards/keychron/k17_pro/via_json/k17_pro_iso_encoder_rgb.json b/keyboards/keychron/k17_pro/via_json/k17_pro_iso_encoder_rgb.json deleted file mode 100644 index 8ee67c8923..0000000000 --- a/keyboards/keychron/k17_pro/via_json/k17_pro_iso_encoder_rgb.json +++ /dev/null @@ -1,340 +0,0 @@ -{ - "name": "Keychron K17 Pro ISO Knob RGB", - "vendorId": "0x3434", - "productId": "0x0207", - "keycodes": ["qmk_lighting"], - "menus": [ - { - "label": "Lighting", - "content": [ - { - "label": "Backlight", - "content": [ - { - "label": "Brightness", - "type": "range", - "options": [0, 255], - "content": ["id_qmk_rgb_matrix_brightness", 3, 1] - }, - { - "label": "Effect", - "type": "dropdown", - "content": ["id_qmk_rgb_matrix_effect", 3, 2], - "options": [ - ["None", 0], - ["Solid Color", 1], - ["Breathing", 2], - ["Band Spiral Val", 3], - ["Cycle All", 4], - ["Cycle Left Right", 5], - ["Cycle Up Down", 6], - ["Rainbow Moving Chevron", 7], - ["Cycle Out In", 8], - ["Cycle Out In Dual", 9], - ["Cycle Pinwheel", 10], - ["Cycle Spiral", 11], - ["Dual Beacon", 12], - ["Rainbow Beacon", 13], - ["Jellybean Raindrops", 14], - ["Pixel Rain", 15], - ["Typing Heatmap", 16], - ["Digital Rain", 17], - ["Reactive Simple", 18], - ["Reactive Multiwide", 19], - ["Reactive Multinexus", 20], - ["Splash", 21], - ["Solid Splash", 22] - ] - }, - { - "showIf": "{id_qmk_rgb_matrix_effect} > 1", - "label": "Effect Speed", - "type": "range", - "options": [0, 255], - "content": ["id_qmk_rgb_matrix_effect_speed", 3, 3] - }, - { - "showIf": "{id_qmk_rgb_matrix_effect} != 0 && ( {id_qmk_rgb_matrix_effect} < 4 || {id_qmk_rgb_matrix_effect} == 18 || ({id_qmk_rgb_matrix_effect} > 17 && {id_qmk_rgb_matrix_effect} != 21) ) ", - "label": "Color", - "type": "color", - "content": ["id_qmk_rgb_matrix_color", 3, 4] - } - ] - } - ] - } - ], - "customKeycodes": [ - {"name": "Misson Control", "title": "Misson Control, availabe in macOS", "shortName": "MCtrl"}, - {"name": "Launch pad", "title": "Launch pad, availabe in macOS", "shortName": "LPad"}, - {"name": "Left Option", "title": "Left Option", "shortName": "LOpt"}, - {"name": "Right Option", "title": "Right Option", "shortName": "ROpt"}, - {"name": "Left Cmd", "title": "Left Command", "shortName": "LCmd"}, - {"name": "Right Cmd", "title": "Right Command", "shortName": "RCmd"}, - {"name": "Task View", "title": "Task View in Windows", "shortName": "Task"}, - {"name": "File Explorer", "title": "File Explorer in Windows", "shortName": "File"}, - {"name": "Screen shot", "title": "Screenshot in macOS", "shortName": "SShot"}, - {"name": "Cortana", "title": "Cortana in Windows", "shortName": "Cortana"}, - {"name": "Siri", "title": "Siri in macOS", "shortName": "Siri"}, - {"name": "Bluetooth Host 1", "title": "Bluetooth Host 1", "shortName": "BTH1"}, - {"name": "Bluetooth Host 2", "title": "Bluetooth Host 2", "shortName": "BTH2"}, - {"name": "Bluetooth Host 3", "title": "Bluetooth Host 3", "shortName": "BTH3"}, - {"name": "Battery Level", "title": "Show battery level", "shortName": "Batt"} - ], - "matrix": {"rows": 6, "cols": 20}, - "layouts": { - "keymap": [ - [ - { - "c": "#777777" - }, - "0,0\nESC", - { - "c": "#cccccc" - }, - "0,1", - "0,2", - "0,3", - "0,4", - { - "c": "#aaaaaa" - }, - "0,5", - "0,6", - "0,7", - "0,8", - "0,9", - { - "c": "#cccccc" - }, - "0,10", - "0,11", - "0,12", - { - "c": "#aaaaaa" - }, - "0,13", - "0,14", - { - "x": 0.25 - }, - "0,15", - { - "x": 0.25, - "c": "#cccccc" - }, - "0,16", - "0,17", - "0,18", - { - "c": "#aaaaaa" - }, - "0,19\n\n\n\n\n\n\n\n\ne0" - ], - [ - { - "y": 0.25 - }, - "1,0", - { - "c": "#cccccc" - }, - "1,1", - "1,2", - "1,3", - "1,4", - "1,5", - "1,6", - "1,7", - "1,8", - "1,9", - "1,10", - "1,11", - "1,12", - { - "c": "#aaaaaa", - "w": 2 - }, - "1,14", - { - "x": 0.25 - }, - "1,15", - { - "x": 0.25, - "c": "#cccccc" - }, - "1,16", - "1,17", - "1,18", - "1,19" - ], - [ - { - "c": "#aaaaaa", - "w": 1.5 - }, - "2,0", - { - "c": "#cccccc" - }, - "2,1", - "2,2", - "2,3", - "2,4", - "2,5", - "2,6", - "2,7", - "2,8", - "2,9", - "2,10", - "2,11", - "2,12", - { - "x": 0.25, - "c": "#777777", - "w": 1.25, - "h": 2, - "w2": 1.5, - "h2": 1, - "x2": -0.25 - }, - "2,14", - { - "x": 0.25, - "c": "#aaaaaa" - }, - "2,15", - { - "x": 0.25, - "c": "#cccccc" - }, - "2,16", - "2,17", - "2,18", - { - "h": 2 - }, - "2,19" - ], - [ - { - "c": "#aaaaaa", - "w": 1.75 - }, - "3,0", - { - "c": "#cccccc" - }, - "3,1", - "3,2", - "3,3", - "3,4", - "3,5", - "3,6", - "3,7", - "3,8", - "3,9", - "3,10", - "3,11", - { - "c": "#aaaaaa" - }, - "3,13", - { - "x": 1.5 - }, - "3,15", - { - "x": 0.25, - "c": "#cccccc" - }, - "3,16", - "3,17", - "3,18" - ], - [ - { - "c": "#aaaaaa", - "w": 1.25 - }, - "4,0", - "4,1", - { - "c": "#cccccc" - }, - "4,2", - "4,3", - "4,4", - "4,5", - "4,6", - "4,7", - "4,8", - "4,9", - "4,10", - "4,11", - { - "c": "#aaaaaa", - "w": 1.75 - }, - "4,12", - { - "x": 0.25, - "c": "#777777" - }, - "4,14", - { - "x": 1.25, - "c": "#cccccc" - }, - "4,16", - "4,17", - "4,18", - { - "h": 2 - }, - "4,19" - ], - [ - { - "c": "#aaaaaa", - "w": 1.25 - }, - "5,0", - { - "w": 1.25 - }, - "5,1", - { - "w": 1.25 - }, - "5,2", - { - "c": "#cccccc", - "w": 6.25 - }, - "5,6", - { - "c": "#aaaaaa" - }, - "5,10", - "5,11", - "5,12", - { - "x": 0.25, - "c": "#777777" - }, - "5,13", - "5,14", - "5,15", - { - "x": 0.25, - "c": "#cccccc", - "w": 2 - }, - "5,16", - "5,18" - ] - ] - } -} diff --git a/keyboards/keychron/k17_pro/via_json/k17_pro_iso_encoder_white.json b/keyboards/keychron/k17_pro/via_json/k17_pro_iso_encoder_white.json deleted file mode 100644 index 1775c82435..0000000000 --- a/keyboards/keychron/k17_pro/via_json/k17_pro_iso_encoder_white.json +++ /dev/null @@ -1,279 +0,0 @@ -{ - "name": "Keychron K17 Pro ISO Knob White", - "vendorId": "0x3434", - "productId": "0x020A", - "keycodes": ["qmk_lighting"], - "customKeycodes": [ - {"name": "Misson Control", "title": "Misson Control, availabe in macOS", "shortName": "MCtrl"}, - {"name": "Launch pad", "title": "Launch pad, availabe in macOS", "shortName": "LPad"}, - {"name": "Left Option", "title": "Left Option", "shortName": "LOpt"}, - {"name": "Right Option", "title": "Right Option", "shortName": "ROpt"}, - {"name": "Left Cmd", "title": "Left Command", "shortName": "LCmd"}, - {"name": "Right Cmd", "title": "Right Command", "shortName": "RCmd"}, - {"name": "Task View", "title": "Task View in Windows", "shortName": "Task"}, - {"name": "File Explorer", "title": "File Explorer in Windows", "shortName": "File"}, - {"name": "Screen shot", "title": "Screenshot in macOS", "shortName": "SShot"}, - {"name": "Cortana", "title": "Cortana in Windows", "shortName": "Cortana"}, - {"name": "Siri", "title": "Siri in macOS", "shortName": "Siri"}, - {"name": "Bluetooth Host 1", "title": "Bluetooth Host 1", "shortName": "BTH1"}, - {"name": "Bluetooth Host 2", "title": "Bluetooth Host 2", "shortName": "BTH2"}, - {"name": "Bluetooth Host 3", "title": "Bluetooth Host 3", "shortName": "BTH3"}, - {"name": "Battery Level", "title": "Show battery level", "shortName": "Batt"} - ], - "matrix": {"rows": 6, "cols": 20}, - "layouts": { - "keymap": [ - [ - { - "c": "#777777" - }, - "0,0\nESC", - { - "c": "#cccccc" - }, - "0,1", - "0,2", - "0,3", - "0,4", - { - "c": "#aaaaaa" - }, - "0,5", - "0,6", - "0,7", - "0,8", - "0,9", - { - "c": "#cccccc" - }, - "0,10", - "0,11", - "0,12", - { - "c": "#aaaaaa" - }, - "0,13", - "0,14", - { - "x": 0.25 - }, - "0,15", - { - "x": 0.25, - "c": "#cccccc" - }, - "0,16", - "0,17", - "0,18", - { - "c": "#aaaaaa" - }, - "0,19\n\n\n\n\n\n\n\n\ne0" - ], - [ - { - "y": 0.25 - }, - "1,0", - { - "c": "#cccccc" - }, - "1,1", - "1,2", - "1,3", - "1,4", - "1,5", - "1,6", - "1,7", - "1,8", - "1,9", - "1,10", - "1,11", - "1,12", - { - "c": "#aaaaaa", - "w": 2 - }, - "1,14", - { - "x": 0.25 - }, - "1,15", - { - "x": 0.25, - "c": "#cccccc" - }, - "1,16", - "1,17", - "1,18", - "1,19" - ], - [ - { - "c": "#aaaaaa", - "w": 1.5 - }, - "2,0", - { - "c": "#cccccc" - }, - "2,1", - "2,2", - "2,3", - "2,4", - "2,5", - "2,6", - "2,7", - "2,8", - "2,9", - "2,10", - "2,11", - "2,12", - { - "x": 0.25, - "c": "#777777", - "w": 1.25, - "h": 2, - "w2": 1.5, - "h2": 1, - "x2": -0.25 - }, - "2,14", - { - "x": 0.25, - "c": "#aaaaaa" - }, - "2,15", - { - "x": 0.25, - "c": "#cccccc" - }, - "2,16", - "2,17", - "2,18", - { - "h": 2 - }, - "2,19" - ], - [ - { - "c": "#aaaaaa", - "w": 1.75 - }, - "3,0", - { - "c": "#cccccc" - }, - "3,1", - "3,2", - "3,3", - "3,4", - "3,5", - "3,6", - "3,7", - "3,8", - "3,9", - "3,10", - "3,11", - { - "c": "#aaaaaa" - }, - "3,13", - { - "x": 1.5 - }, - "3,15", - { - "x": 0.25, - "c": "#cccccc" - }, - "3,16", - "3,17", - "3,18" - ], - [ - { - "c": "#aaaaaa", - "w": 1.25 - }, - "4,0", - "4,1", - { - "c": "#cccccc" - }, - "4,2", - "4,3", - "4,4", - "4,5", - "4,6", - "4,7", - "4,8", - "4,9", - "4,10", - "4,11", - { - "c": "#aaaaaa", - "w": 1.75 - }, - "4,12", - { - "x": 0.25, - "c": "#777777" - }, - "4,14", - { - "x": 1.25, - "c": "#cccccc" - }, - "4,16", - "4,17", - "4,18", - { - "h": 2 - }, - "4,19" - ], - [ - { - "c": "#aaaaaa", - "w": 1.25 - }, - "5,0", - { - "w": 1.25 - }, - "5,1", - { - "w": 1.25 - }, - "5,2", - { - "c": "#cccccc", - "w": 6.25 - }, - "5,6", - { - "c": "#aaaaaa" - }, - "5,10", - "5,11", - "5,12", - { - "x": 0.25, - "c": "#777777" - }, - "5,13", - "5,14", - "5,15", - { - "x": 0.25, - "c": "#cccccc", - "w": 2 - }, - "5,16", - "5,18" - ] - ] - } -} diff --git a/keyboards/keychron/k1_max/ansi/rgb/config.h b/keyboards/keychron/k1_max/ansi/rgb/config.h deleted file mode 100644 index a08e4bd0bb..0000000000 --- a/keyboards/keychron/k1_max/ansi/rgb/config.h +++ /dev/null @@ -1,46 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#pragma once - -#ifdef RGB_MATRIX_ENABLE -/* RGB Matrix driver configuration */ -# define RGB_MATRIX_LED_COUNT 87 -# define DRIVER_COUNT 2 -# define DRIVER_CS_PINS \ - { B8, B9 } - -/* Scan phase of led driver set as MSKPHASE_9CHANNEL(defined as 0x03 in snled27351.h) */ -# define SNLED27351_PHASE_CHANNEL MSKPHASE_12CHANNEL -/* Set LED driver current */ -# define SNLED27351_CURRENT_TUNE \ - { 0x14, 0x14, 0x14, 0x14, 0x14, 0x14, 0x14, 0x14, 0x14, 0x14, 0x14, 0x14 } - -/* Set to infinit, which is use in USB mode by default */ -# define RGB_MATRIX_TIMEOUT RGB_MATRIX_TIMEOUT_INFINITE -/* Allow shutdown of led driver to save power */ -# define RGB_MATRIX_DRIVER_SHUTDOWN_ENABLE -/* Turn off backlight on low brightness to save power */ -# define RGB_MATRIX_BRIGHTNESS_TURN_OFF_VAL 48 - -/* Indications */ -# define LOW_BAT_IND_INDEX \ - { 79 } - -# define RGB_MATRIX_KEYPRESSES -# define RGB_MATRIX_FRAMEBUFFER_EFFECTS - -#endif diff --git a/keyboards/keychron/k1_max/ansi/rgb/info.json b/keyboards/keychron/k1_max/ansi/rgb/info.json deleted file mode 100644 index 4e0f7f27f5..0000000000 --- a/keyboards/keychron/k1_max/ansi/rgb/info.json +++ /dev/null @@ -1,36 +0,0 @@ -{ - "usb": { - "pid": "0x0A10", - "device_version": "1.0.0" - }, - "features": { - "rgb_matrix": true - }, - "rgb_matrix": { - "driver": "snled27351_spi", - "sleep": true, - "animations": { - "band_spiral_val": true, - "breathing": true, - "cycle_all": true, - "cycle_left_right": true, - "cycle_out_in": true, - "cycle_out_in_dual": true, - "cycle_pinwheel": true, - "cycle_spiral": true, - "cycle_up_down": true, - "digital_rain": true, - "dual_beacon": true, - "jellybean_raindrops": true, - "pixel_rain": true, - "rainbow_beacon": true, - "rainbow_moving_chevron": true, - "solid_reactive_multinexus": true, - "solid_reactive_multiwide": true, - "solid_reactive_simple": true, - "solid_splash": true, - "splash": true, - "typing_heatmap": true - } - } -} diff --git a/keyboards/keychron/k1_max/ansi/rgb/keymaps/default/keymap.c b/keyboards/keychron/k1_max/ansi/rgb/keymaps/default/keymap.c deleted file mode 100644 index e5d5b1aede..0000000000 --- a/keyboards/keychron/k1_max/ansi/rgb/keymaps/default/keymap.c +++ /dev/null @@ -1,67 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#include QMK_KEYBOARD_H -#include "keychron_common.h" - -enum layers { - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN, -}; -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_ansi_87( - KC_ESC, KC_BRID, KC_BRIU, KC_MCTRL, KC_LNPAD, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_SNAP, KC_SIRI, RGB_MOD, - KC_GRV, 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_INS, KC_HOME, KC_PGUP, - 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_DEL, KC_END, KC_PGDN, - 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_LCTL, KC_LOPTN, KC_LCMMD, KC_SPC, KC_RCMMD, KC_ROPTN, MO(MAC_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - - [MAC_FN] = LAYOUT_ansi_87( - _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, RGB_TOG, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - - [WIN_BASE] = LAYOUT_ansi_87( - KC_ESC, 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_PSCR, KC_CTANA, RGB_MOD, - KC_GRV, 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_INS, KC_HOME, KC_PGUP, - 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_DEL, KC_END, KC_PGDN, - 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_LCTL, KC_LWIN, KC_LALT, KC_SPC, KC_RALT, KC_RGUI, MO(WIN_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - - [WIN_FN] = LAYOUT_ansi_87( - _______, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, RGB_TOG, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______) -}; - -// clang-format on -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - if (!process_record_keychron_common(keycode, record)) { - return false; - } - return true; -} diff --git a/keyboards/keychron/k1_max/ansi/rgb/keymaps/via/keymap.c b/keyboards/keychron/k1_max/ansi/rgb/keymaps/via/keymap.c deleted file mode 100644 index e5d5b1aede..0000000000 --- a/keyboards/keychron/k1_max/ansi/rgb/keymaps/via/keymap.c +++ /dev/null @@ -1,67 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#include QMK_KEYBOARD_H -#include "keychron_common.h" - -enum layers { - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN, -}; -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_ansi_87( - KC_ESC, KC_BRID, KC_BRIU, KC_MCTRL, KC_LNPAD, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_SNAP, KC_SIRI, RGB_MOD, - KC_GRV, 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_INS, KC_HOME, KC_PGUP, - 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_DEL, KC_END, KC_PGDN, - 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_LCTL, KC_LOPTN, KC_LCMMD, KC_SPC, KC_RCMMD, KC_ROPTN, MO(MAC_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - - [MAC_FN] = LAYOUT_ansi_87( - _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, RGB_TOG, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - - [WIN_BASE] = LAYOUT_ansi_87( - KC_ESC, 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_PSCR, KC_CTANA, RGB_MOD, - KC_GRV, 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_INS, KC_HOME, KC_PGUP, - 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_DEL, KC_END, KC_PGDN, - 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_LCTL, KC_LWIN, KC_LALT, KC_SPC, KC_RALT, KC_RGUI, MO(WIN_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - - [WIN_FN] = LAYOUT_ansi_87( - _______, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, RGB_TOG, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______) -}; - -// clang-format on -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - if (!process_record_keychron_common(keycode, record)) { - return false; - } - return true; -} diff --git a/keyboards/keychron/k1_max/ansi/rgb/keymaps/via/rules.mk b/keyboards/keychron/k1_max/ansi/rgb/keymaps/via/rules.mk deleted file mode 100644 index 1e5b99807c..0000000000 --- a/keyboards/keychron/k1_max/ansi/rgb/keymaps/via/rules.mk +++ /dev/null @@ -1 +0,0 @@ -VIA_ENABLE = yes diff --git a/keyboards/keychron/k1_max/ansi/rgb/rgb.c b/keyboards/keychron/k1_max/ansi/rgb/rgb.c deleted file mode 100644 index 4055d05aad..0000000000 --- a/keyboards/keychron/k1_max/ansi/rgb/rgb.c +++ /dev/null @@ -1,153 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#include "quantum.h" - -// clang-format off -#ifdef RGB_MATRIX_ENABLE -const snled27351_led_t g_snled27351_leds[RGB_MATRIX_LED_COUNT] = { -/* Refer to SNLED27351 manual for these locations - * driver - * | R location - * | | G location - * | | | B location - * | | | | */ - {0, I_1, G_1, H_1}, - {0, I_2, G_2, H_2}, - {0, I_3, G_3, H_3}, - {0, I_4, G_4, H_4}, - {0, I_5, G_5, H_5}, - {0, I_6, G_6, H_6}, - {0, I_7, G_7, H_7}, - {0, I_8, G_8, H_8}, - {0, I_9, G_9, H_9}, - {0, I_10, G_10, H_10}, - {0, I_11, G_11, H_11}, - {0, I_12, G_12, H_12}, - {0, I_13, G_13, H_13}, - {0, I_15, G_15, H_15}, - {0, I_16, G_16, H_16}, - {1, F_8, D_8, E_8}, - - {0, F_1, D_1, E_1}, - {0, F_2, D_2, E_2}, - {0, F_3, D_3, E_3}, - {0, F_4, D_4, E_4}, - {0, F_5, D_5, E_5}, - {0, F_6, D_6, E_6}, - {0, F_7, D_7, E_7}, - {0, F_8, D_8, E_8}, - {0, F_9, D_9, E_9}, - {0, F_10, D_10, E_10}, - {0, F_11, D_11, E_11}, - {0, F_12, D_12, E_12}, - {0, F_13, D_13, E_13}, - {0, F_14, D_14, E_14}, - {0, F_15, D_15, E_15}, - {0, F_16, D_16, E_16}, - {1, F_9, D_9, E_9}, - - {0, A_1, C_1, B_1}, - {0, A_2, C_2, B_2}, - {0, A_3, C_3, B_3}, - {0, A_4, C_4, B_4}, - {0, A_5, C_5, B_5}, - {0, A_6, C_6, B_6}, - {0, A_7, C_7, B_7}, - {0, A_8, C_8, B_8}, - {0, A_9, C_9, B_9}, - {0, A_10, C_10, B_10}, - {0, A_11, C_11, B_11}, - {0, A_12, C_12, B_12}, - {0, A_13, C_13, B_13}, - {0, A_14, C_14, B_14}, - {0, A_15, C_15, B_15}, - {0, A_16, C_16, B_16}, - {1, F_6, D_6, E_6}, - - {1, I_1, G_1, H_1}, - {1, I_2, G_2, H_2}, - {1, I_3, G_3, H_3}, - {1, I_4, G_4, H_4}, - {1, I_5, G_5, H_5}, - {1, I_6, G_6, H_6}, - {1, I_7, G_7, H_7}, - {1, I_8, G_8, H_8}, - {1, I_9, G_9, H_9}, - {1, I_10, G_10, H_10}, - {1, I_11, G_11, H_11}, - {1, I_12, G_12, H_12}, - {1, I_14, G_14, H_14}, - - {1, C_1, A_1, B_1}, - {1, C_3, A_3, B_3}, - {1, C_4, A_4, B_4}, - {1, C_5, A_5, B_5}, - {1, C_6, A_6, B_6}, - {1, C_7, A_7, B_7}, - {1, C_8, A_8, B_8}, - {1, C_9, A_9, B_9}, - {1, C_10, A_10, B_10}, - {1, C_11, A_11, B_11}, - {1, C_12, A_12, B_12}, - {1, C_14, A_14, B_14}, - {1, C_16, A_16, B_16}, - - {1, F_1, D_1, E_1}, - {1, F_2, D_2, E_2}, - {1, F_3, D_3, E_3}, - {1, F_7, D_7, E_7}, - {1, F_11, D_11, E_11}, - {1, F_12, D_12, E_12}, - {1, F_13, D_13, E_13}, - {1, F_14, D_14, E_14}, - {1, F_15, D_15, E_15}, - {1, F_16, D_16, E_16}, - {1, C_15, A_15, B_15}, -}; - -#define __ NO_LED - -led_config_t g_led_config = { - { - // Key Matrix to LED Index - { 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, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49 }, - { 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, __, 62, __, __, __ }, - { 63, __, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, __, 74, __, 75, __ }, - { 76, 77, 78, __, __, __, 79, __, __, __, 80, 81, 82, 83, 84, 85, 86 }, - }, - { - // LED Index to Physical Position - {0, 0}, {26, 0}, {39, 0}, {52, 0}, {65, 0}, {85, 0}, { 98, 0}, {111, 0}, {124, 0}, {144, 0}, {157, 0}, {170, 0}, {183, 0}, {198, 0}, {211, 0}, {224, 0}, - {0,14}, {13,14}, {26,14}, {39,14}, {52,14}, {65,14}, {79,14}, { 92,14}, {105,14}, {118,14}, {131,14}, {144,14}, {157,14}, {177,14}, {198,14}, {211,14}, {224,14}, - {3,26}, {20,26}, {33,26}, {46,26}, {59,26}, {72,26}, {85,26}, { 98,26}, {111,26}, {124,26}, {138,26}, {151,26}, {164,26}, {180,26}, {198,26}, {211,26}, {224,26}, - {5,39}, {23,39}, {36,39}, {49,39}, {62,39}, {75,39}, {88,39}, {102,39}, {115,39}, {128,39}, {141,39}, {154,39}, {175,39}, - {8,51}, {30,51}, {43,51}, {56,51}, {69,51}, {82,51}, { 95,51}, {108,51}, {121,51}, {134,51}, {147,51}, {172,51}, {211,51}, - {2,64}, {18,64}, {34,64}, {84,64}, {133,64}, {149,64}, {165,64}, {182,64}, {198,64}, {211,64}, {224,64}, - }, - { - // RGB LED Index to Flag - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - } -}; -#endif diff --git a/keyboards/keychron/k1_max/ansi/rgb/rules.mk b/keyboards/keychron/k1_max/ansi/rgb/rules.mk deleted file mode 100644 index 6e7633bfe0..0000000000 --- a/keyboards/keychron/k1_max/ansi/rgb/rules.mk +++ /dev/null @@ -1 +0,0 @@ -# This file intentionally left blank diff --git a/keyboards/keychron/k1_max/ansi/white/config.h b/keyboards/keychron/k1_max/ansi/white/config.h deleted file mode 100644 index e83bcbcd93..0000000000 --- a/keyboards/keychron/k1_max/ansi/white/config.h +++ /dev/null @@ -1,44 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#pragma once - -#ifdef LED_MATRIX_ENABLE -/* LED matrix driver configuration */ -# define LED_MATRIX_LED_COUNT 87 -# define DRIVER_COUNT 1 -# define DRIVER_CS_PINS \ - { B9 } - -/* Use first 6 channels of LED driver */ -# define SNLED27351_PHASE_CHANNEL MSKPHASE_6CHANNEL -/* Set LED driver current */ -# define SNLED27351_CURRENT_TUNE \ - { 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20 } - -/* Set to infinit, which is use in USB mode by default */ -# define LED_MATRIX_TIMEOUT LED_MATRIX_TIMEOUT_INFINITE -/* Allow shutdown of led driver to save power */ -# define LED_MATRIX_DRIVER_SHUTDOWN_ENABLE -/* Turn off backlight on low brightness to save power */ -# define LED_MATRIX_BRIGHTNESS_TURN_OFF_VAL 48 - -/* Low battery indicating led */ -# define LOW_BAT_IND_INDEX \ - { 79 } - -# define LED_MATRIX_KEYPRESSES -#endif diff --git a/keyboards/keychron/k1_max/ansi/white/info.json b/keyboards/keychron/k1_max/ansi/white/info.json deleted file mode 100644 index 03f5a7d488..0000000000 --- a/keyboards/keychron/k1_max/ansi/white/info.json +++ /dev/null @@ -1,30 +0,0 @@ -{ - "usb": { - "pid": "0x0A13", - "device_version": "1.0.0" - }, - "features": { - "led_matrix": true - }, - "led_matrix": { - "driver": "snled27351_spi", - "sleep": true, - "animations": { - "none": true, - "solid": true, - "breathing": true, - "band_pinwheel": true, - "band_spiral": true, - "cycle_left_right": true, - "cycle_up_down": true, - "cycle_out_in": true, - "dual_beacon": true, - "solid_reactive_simple": true, - "solid_reactive_multiwide": true, - "solid_reactive_multinexus": true, - "solid_splash": true, - "wave_left_right": true, - "wave_up_down": true - } - } -} diff --git a/keyboards/keychron/k1_max/ansi/white/keymaps/default/keymap.c b/keyboards/keychron/k1_max/ansi/white/keymaps/default/keymap.c deleted file mode 100644 index 7135513aa5..0000000000 --- a/keyboards/keychron/k1_max/ansi/white/keymaps/default/keymap.c +++ /dev/null @@ -1,67 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#include QMK_KEYBOARD_H -#include "keychron_common.h" - -enum layers { - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN, -}; -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_ansi_87( - KC_ESC, KC_BRID, KC_BRIU, KC_MCTRL, KC_LNPAD, BL_DOWN, BL_UP, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_SNAP, KC_SIRI, BL_STEP, - KC_GRV, 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_INS, KC_HOME, KC_PGUP, - 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_DEL, KC_END, KC_PGDN, - 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_LCTL, KC_LOPTN, KC_LCMMD, KC_SPC, KC_RCMMD, KC_ROPTN, MO(MAC_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - - [MAC_FN] = LAYOUT_ansi_87( - _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, BL_TOGG, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - BL_TOGG, BL_STEP, BL_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, BL_DOWN, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - - [WIN_BASE] = LAYOUT_ansi_87( - KC_ESC, 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_PSCR, KC_CTANA, BL_STEP, - KC_GRV, 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_INS, KC_HOME, KC_PGUP, - 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_DEL, KC_END, KC_PGDN, - 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_LCTL, KC_LWIN, KC_LALT, KC_SPC, KC_RALT, KC_RGUI, MO(WIN_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - - [WIN_FN] = LAYOUT_ansi_87( - _______, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, BL_DOWN, BL_UP, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, BL_TOGG, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - BL_TOGG, BL_STEP, BL_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, BL_DOWN, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______) -}; - -// clang-format on -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - if (!process_record_keychron_common(keycode, record)) { - return false; - } - return true; -} diff --git a/keyboards/keychron/k1_max/ansi/white/keymaps/via/keymap.c b/keyboards/keychron/k1_max/ansi/white/keymaps/via/keymap.c deleted file mode 100644 index 7135513aa5..0000000000 --- a/keyboards/keychron/k1_max/ansi/white/keymaps/via/keymap.c +++ /dev/null @@ -1,67 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#include QMK_KEYBOARD_H -#include "keychron_common.h" - -enum layers { - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN, -}; -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_ansi_87( - KC_ESC, KC_BRID, KC_BRIU, KC_MCTRL, KC_LNPAD, BL_DOWN, BL_UP, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_SNAP, KC_SIRI, BL_STEP, - KC_GRV, 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_INS, KC_HOME, KC_PGUP, - 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_DEL, KC_END, KC_PGDN, - 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_LCTL, KC_LOPTN, KC_LCMMD, KC_SPC, KC_RCMMD, KC_ROPTN, MO(MAC_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - - [MAC_FN] = LAYOUT_ansi_87( - _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, BL_TOGG, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - BL_TOGG, BL_STEP, BL_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, BL_DOWN, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - - [WIN_BASE] = LAYOUT_ansi_87( - KC_ESC, 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_PSCR, KC_CTANA, BL_STEP, - KC_GRV, 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_INS, KC_HOME, KC_PGUP, - 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_DEL, KC_END, KC_PGDN, - 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_LCTL, KC_LWIN, KC_LALT, KC_SPC, KC_RALT, KC_RGUI, MO(WIN_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - - [WIN_FN] = LAYOUT_ansi_87( - _______, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, BL_DOWN, BL_UP, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, BL_TOGG, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - BL_TOGG, BL_STEP, BL_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, BL_DOWN, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______) -}; - -// clang-format on -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - if (!process_record_keychron_common(keycode, record)) { - return false; - } - return true; -} diff --git a/keyboards/keychron/k1_max/ansi/white/keymaps/via/rules.mk b/keyboards/keychron/k1_max/ansi/white/keymaps/via/rules.mk deleted file mode 100644 index 1e5b99807c..0000000000 --- a/keyboards/keychron/k1_max/ansi/white/keymaps/via/rules.mk +++ /dev/null @@ -1 +0,0 @@ -VIA_ENABLE = yes diff --git a/keyboards/keychron/k1_max/ansi/white/rules.mk b/keyboards/keychron/k1_max/ansi/white/rules.mk deleted file mode 100644 index 6e7633bfe0..0000000000 --- a/keyboards/keychron/k1_max/ansi/white/rules.mk +++ /dev/null @@ -1 +0,0 @@ -# This file intentionally left blank diff --git a/keyboards/keychron/k1_max/ansi/white/white.c b/keyboards/keychron/k1_max/ansi/white/white.c deleted file mode 100644 index d124995260..0000000000 --- a/keyboards/keychron/k1_max/ansi/white/white.c +++ /dev/null @@ -1,151 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#include "quantum.h" - -// clang-format off -#ifdef LED_MATRIX_ENABLE -const snled27351_led_t g_snled27351_leds[LED_MATRIX_LED_COUNT] = { -/* Refer to SNLED27351 manual for these locations - * driver - * | LED address - * | | */ - {0, F_1}, - {0, F_2}, - {0, F_3}, - {0, F_4}, - {0, F_5}, - {0, F_6}, - {0, F_7}, - {0, F_8}, - {0, F_9}, - {0, F_10}, - {0, F_11}, - {0, F_12}, - {0, F_13}, - {0, F_15}, - {0, F_16}, - {0, A_8}, - - {0, E_1}, - {0, E_2}, - {0, E_3}, - {0, E_4}, - {0, E_5}, - {0, E_6}, - {0, E_7}, - {0, E_8}, - {0, E_9}, - {0, E_10}, - {0, E_11}, - {0, E_12}, - {0, E_13}, - {0, E_14}, - {0, E_15}, - {0, E_16}, - {0, A_9}, - - {0, D_1}, - {0, D_2}, - {0, D_3}, - {0, D_4}, - {0, D_5}, - {0, D_6}, - {0, D_7}, - {0, D_8}, - {0, D_9}, - {0, D_10}, - {0, D_11}, - {0, D_12}, - {0, D_13}, - {0, D_14}, - {0, D_15}, - {0, D_16}, - {0, A_6}, - - {0, C_1}, - {0, C_2}, - {0, C_3}, - {0, C_4}, - {0, C_5}, - {0, C_6}, - {0, C_7}, - {0, C_8}, - {0, C_9}, - {0, C_10}, - {0, C_11}, - {0, C_12}, - {0, C_14}, - - {0, B_1}, - {0, B_3}, - {0, B_4}, - {0, B_5}, - {0, B_6}, - {0, B_7}, - {0, B_8}, - {0, B_9}, - {0, B_10}, - {0, B_11}, - {0, B_12}, - {0, B_14}, - {0, B_16}, - - {0, A_1}, - {0, A_2}, - {0, A_3}, - {0, A_7}, - {0, A_11}, - {0, A_12}, - {0, A_13}, - {0, A_14}, - {0, A_15}, - {0, A_16}, - {0, B_15}, -}; - -#define __ NO_LED - -led_config_t g_led_config = { - { - // Key Matrix to LED Index - { 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, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49 }, - { 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, __, 62, __, __, __ }, - { 63, __, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, __, 74, __, 75, __ }, - { 76, 77, 78, __, __, __, 79, __, __, __, 80, 81, 82, 83, 84, 85, 86 }, - }, - { - // LED Index to Physical Position - {0, 0}, {26, 0}, {39, 0}, {52, 0}, {65, 0}, {85, 0}, { 98, 0}, {111, 0}, {124, 0}, {144, 0}, {157, 0}, {170, 0}, {183, 0}, {198, 0}, {211, 0}, {224, 0}, - {0,14}, {13,14}, {26,14}, {39,14}, {52,14}, {65,14}, {79,14}, { 92,14}, {105,14}, {118,14}, {131,14}, {144,14}, {157,14}, {177,14}, {198,14}, {211,14}, {224,14}, - {3,26}, {20,26}, {33,26}, {46,26}, {59,26}, {72,26}, {85,26}, { 98,26}, {111,26}, {124,26}, {138,26}, {151,26}, {164,26}, {180,26}, {198,26}, {211,26}, {224,26}, - {5,39}, {23,39}, {36,39}, {49,39}, {62,39}, {75,39}, {88,39}, {102,39}, {115,39}, {128,39}, {141,39}, {154,39}, {175,39}, - {8,51}, {30,51}, {43,51}, {56,51}, {69,51}, {82,51}, { 95,51}, {108,51}, {121,51}, {134,51}, {147,51}, {172,51}, {211,51}, - {2,64}, {18,64}, {34,64}, {84,64}, {133,64}, {149,64}, {165,64}, {182,64}, {198,64}, {211,64}, {224,64}, - }, - { - // RGB LED Index to Flag - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - } -}; -#endif diff --git a/keyboards/keychron/k1_max/board.h b/keyboards/keychron/k1_max/board.h deleted file mode 100644 index b200f82d61..0000000000 --- a/keyboards/keychron/k1_max/board.h +++ /dev/null @@ -1,226 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#pragma once - -#include_next - -// clang-format off - -/* Set GPIOA_SWDIO to INPUT and NOT FLOATING */ -#undef VAL_GPIOA_MODER -#define VAL_GPIOA_MODER (PIN_MODE_INPUT(GPIOA_BUTTON) | \ - PIN_MODE_INPUT(GPIOA_PIN1) | \ - PIN_MODE_INPUT(GPIOA_PIN2) | \ - PIN_MODE_INPUT(GPIOA_PIN3) | \ - PIN_MODE_ALTERNATE(GPIOA_CS43L22_LRCK) |\ - PIN_MODE_ALTERNATE(GPIOA_L3GD20_SCL) | \ - PIN_MODE_ALTERNATE(GPIOA_L3GD20_SD0) | \ - PIN_MODE_ALTERNATE(GPIOA_L3GD20_SDI) | \ - PIN_MODE_INPUT(GPIOA_PIN8) | \ - PIN_MODE_INPUT(GPIOA_VBUS_FS) | \ - PIN_MODE_ALTERNATE(GPIOA_OTG_FS_ID) | \ - PIN_MODE_ALTERNATE(GPIOA_OTG_FS_DM) | \ - PIN_MODE_ALTERNATE(GPIOA_OTG_FS_DP) | \ - PIN_MODE_INPUT(GPIOA_SWDIO) | \ - PIN_MODE_INPUT(GPIOA_SWCLK) | \ - PIN_MODE_INPUT(GPIOA_PIN15)) - -#undef VAL_GPIOA_PUPDR -#define VAL_GPIOA_PUPDR (PIN_PUPDR_FLOATING(GPIOA_BUTTON) | \ - PIN_PUPDR_PULLUP(GPIOA_PIN1) | \ - PIN_PUPDR_PULLUP(GPIOA_PIN2) | \ - PIN_PUPDR_PULLUP(GPIOA_PIN3) | \ - PIN_PUPDR_FLOATING(GPIOA_CS43L22_LRCK) |\ - PIN_PUPDR_FLOATING(GPIOA_L3GD20_SCL) | \ - PIN_PUPDR_PULLUP(GPIOA_L3GD20_SD0) | \ - PIN_PUPDR_PULLUP(GPIOA_L3GD20_SDI) | \ - PIN_PUPDR_PULLUP(GPIOA_PIN8) | \ - PIN_PUPDR_FLOATING(GPIOA_VBUS_FS) | \ - PIN_PUPDR_FLOATING(GPIOA_OTG_FS_ID) | \ - PIN_PUPDR_FLOATING(GPIOA_OTG_FS_DM) | \ - PIN_PUPDR_FLOATING(GPIOA_OTG_FS_DP) | \ - PIN_PUPDR_PULLDOWN(GPIOA_SWDIO) | \ - PIN_PUPDR_PULLUP(GPIOA_SWCLK) | \ - PIN_PUPDR_PULLUP(GPIOA_PIN15)) - -#undef VAL_GPIOB_MODER -#define VAL_GPIOB_MODER (PIN_MODE_INPUT(GPIOB_PIN0) | \ - PIN_MODE_INPUT(GPIOB_PIN1) | \ - PIN_MODE_INPUT(GPIOB_PIN2) | \ - PIN_MODE_INPUT(GPIOB_SWO) | \ - PIN_MODE_INPUT(GPIOB_PIN4) | \ - PIN_MODE_INPUT(GPIOB_PIN5) | \ - PIN_MODE_INPUT(GPIOB_LSM303DLHC_SCL) | \ - PIN_MODE_INPUT(GPIOB_PIN7) | \ - PIN_MODE_INPUT(GPIOB_PIN8) | \ - PIN_MODE_INPUT(GPIOB_LSM303DLHC_SDA) | \ - PIN_MODE_INPUT(GPIOB_MP45DT02_CLK_IN) |\ - PIN_MODE_INPUT(GPIOB_PIN11) | \ - PIN_MODE_INPUT(GPIOB_PIN12) | \ - PIN_MODE_INPUT(GPIOB_PIN13) | \ - PIN_MODE_INPUT(GPIOB_PIN14) | \ - PIN_MODE_INPUT(GPIOB_PIN15)) - -#undef VAL_GPIOB_PUPDR -#define VAL_GPIOB_PUPDR (PIN_PUPDR_PULLDOWN(GPIOB_PIN0) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN1) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN2) | \ - PIN_PUPDR_PULLDOWN(GPIOB_SWO) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN4) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN5) | \ - PIN_PUPDR_PULLDOWN(GPIOB_LSM303DLHC_SCL) |\ - PIN_PUPDR_PULLDOWN(GPIOB_PIN7) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN8) | \ - PIN_PUPDR_PULLDOWN(GPIOB_LSM303DLHC_SDA) |\ - PIN_PUPDR_PULLDOWN(GPIOB_MP45DT02_CLK_IN) |\ - PIN_PUPDR_PULLDOWN(GPIOB_PIN11) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN12) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN13) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN14) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN15)) - -#undef VAL_GPIOB_AFRL -#define VAL_GPIOB_AFRL (PIN_AFIO_AF(GPIOB_PIN0, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN1, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN2, 0U) | \ - PIN_AFIO_AF(GPIOB_SWO, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN4, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN5, 0U) | \ - PIN_AFIO_AF(GPIOB_LSM303DLHC_SCL, 0) | \ - PIN_AFIO_AF(GPIOB_PIN7, 0U)) - -#undef VAL_GPIOB_AFRH -#define VAL_GPIOB_AFRH (PIN_AFIO_AF(GPIOB_PIN8, 0U) | \ - PIN_AFIO_AF(GPIOB_LSM303DLHC_SDA, 0) | \ - PIN_AFIO_AF(GPIOB_MP45DT02_CLK_IN, 0U) |\ - PIN_AFIO_AF(GPIOB_PIN11, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN12, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN13, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN14, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN15, 0U)) - -/* C5 Need to be pulldown */ -#undef VAL_GPIOC_MODER -#define VAL_GPIOC_MODER (PIN_MODE_INPUT(GPIOC_OTG_FS_POWER_ON) |\ - PIN_MODE_INPUT(GPIOC_PIN1) | \ - PIN_MODE_INPUT(GPIOC_PIN2) | \ - PIN_MODE_INPUT(GPIOC_CS43L22_AIN4x) | \ - PIN_MODE_INPUT(GPIOC_PIN4) | \ - PIN_MODE_INPUT(GPIOC_PIN5) | \ - PIN_MODE_INPUT(GPIOC_PIN6) | \ - PIN_MODE_INPUT(GPIOC_CS43L22_MCLK) | \ - PIN_MODE_INPUT(GPIOC_PIN8) | \ - PIN_MODE_INPUT(GPIOC_PIN9) | \ - PIN_MODE_INPUT(GPIOC_CS43L22_SCLK) | \ - PIN_MODE_INPUT(GPIOC_PIN11) | \ - PIN_MODE_INPUT(GPIOC_CS43L22_SDIN) | \ - PIN_MODE_INPUT(GPIOC_PIN13) | \ - PIN_MODE_INPUT(GPIOC_OSC32_IN) | \ - PIN_MODE_INPUT(GPIOC_OSC32_OUT)) - -#undef VAL_GPIOC_PUPDR -#define VAL_GPIOC_PUPDR (PIN_PUPDR_PULLUP(GPIOC_OTG_FS_POWER_ON) |\ - PIN_PUPDR_PULLUP(GPIOC_PIN1) | \ - PIN_PUPDR_PULLUP(GPIOC_PIN2) | \ - PIN_PUPDR_PULLUP(GPIOC_CS43L22_AIN4x) |\ - PIN_PUPDR_PULLUP(GPIOC_PIN4) | \ - PIN_PUPDR_PULLDOWN(GPIOC_PIN5) | \ - PIN_PUPDR_PULLUP(GPIOC_PIN6) | \ - PIN_PUPDR_PULLUP(GPIOC_CS43L22_MCLK) | \ - PIN_PUPDR_PULLUP(GPIOC_PIN8) | \ - PIN_PUPDR_PULLUP(GPIOC_PIN9) | \ - PIN_PUPDR_PULLUP(GPIOC_CS43L22_SCLK) | \ - PIN_PUPDR_PULLUP(GPIOC_PIN11) | \ - PIN_PUPDR_PULLUP(GPIOC_CS43L22_SDIN) | \ - PIN_PUPDR_PULLUP(GPIOC_PIN13) | \ - PIN_PUPDR_PULLUP(GPIOC_OSC32_IN) | \ - PIN_PUPDR_PULLUP(GPIOC_OSC32_OUT)) - -/* Set all GPIOD pins to INPUT & PULLUP to avoid FLOATING */ -#undef VAL_GPIOD_MODER -#define VAL_GPIOD_MODER (PIN_MODE_INPUT(GPIOD_PIN0) | \ - PIN_MODE_INPUT(GPIOD_PIN1) | \ - PIN_MODE_INPUT(GPIOD_PIN2) | \ - PIN_MODE_INPUT(GPIOD_PIN3) | \ - PIN_MODE_INPUT(GPIOD_CS43L22_RESET) | \ - PIN_MODE_INPUT(GPIOD_OverCurrent) | \ - PIN_MODE_INPUT(GPIOD_PIN6) | \ - PIN_MODE_INPUT(GPIOD_PIN7) | \ - PIN_MODE_INPUT(GPIOD_PIN8) | \ - PIN_MODE_INPUT(GPIOD_PIN9) | \ - PIN_MODE_INPUT(GPIOD_PIN10) | \ - PIN_MODE_INPUT(GPIOD_PIN11) | \ - PIN_MODE_INPUT(GPIOD_LED4) | \ - PIN_MODE_INPUT(GPIOD_LED3) | \ - PIN_MODE_INPUT(GPIOD_LED5) | \ - PIN_MODE_INPUT(GPIOD_LED6)) - -#undef VAL_GPIOD_PUPDR -#define VAL_GPIOD_PUPDR (PIN_PUPDR_PULLUP(GPIOD_PIN0) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN1) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN2) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN3) | \ - PIN_PUPDR_PULLUP(GPIOD_CS43L22_RESET) |\ - PIN_PUPDR_PULLUP(GPIOD_OverCurrent) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN6) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN7) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN8) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN9) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN10) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN11) | \ - PIN_PUPDR_PULLUP(GPIOD_LED4) | \ - PIN_PUPDR_PULLUP(GPIOD_LED3) | \ - PIN_PUPDR_PULLUP(GPIOD_LED5) | \ - PIN_PUPDR_PULLUP(GPIOD_LED6)) - -/* Set all GPIOE pins to INPUT & PULLUP to avoid FLOATING */ -#undef VAL_GPIOE_MODER -#define VAL_GPIOE_MODER (PIN_MODE_INPUT(GPIOE_L3GD20_INT1) | \ - PIN_MODE_INPUT(GPIOE_L3GD20_INT2) | \ - PIN_MODE_INPUT(GPIOE_LSM303DLHC_DRDY) |\ - PIN_MODE_INPUT(GPIOE_L3GD20_CS) | \ - PIN_MODE_INPUT(GPIOE_LSM303DLHC_INT1) |\ - PIN_MODE_INPUT(GPIOE_LSM303DLHC_INT2) |\ - PIN_MODE_INPUT(GPIOE_PIN6) | \ - PIN_MODE_INPUT(GPIOE_PIN7) | \ - PIN_MODE_INPUT(GPIOE_PIN8) | \ - PIN_MODE_INPUT(GPIOE_PIN9) | \ - PIN_MODE_INPUT(GPIOE_PIN10) | \ - PIN_MODE_INPUT(GPIOE_PIN11) | \ - PIN_MODE_INPUT(GPIOE_PIN12) | \ - PIN_MODE_INPUT(GPIOE_PIN13) | \ - PIN_MODE_INPUT(GPIOE_PIN14) | \ - PIN_MODE_INPUT(GPIOE_PIN15)) - -#undef VAL_GPIOE_PUPDR -#define VAL_GPIOE_PUPDR (PIN_PUPDR_PULLUP(GPIOE_L3GD20_INT1) | \ - PIN_PUPDR_PULLUP(GPIOE_L3GD20_INT2) | \ - PIN_PUPDR_PULLUP(GPIOE_LSM303DLHC_DRDY) |\ - PIN_PUPDR_PULLUP(GPIOE_L3GD20_CS) | \ - PIN_PUPDR_PULLUP(GPIOE_LSM303DLHC_INT1) |\ - PIN_PUPDR_PULLUP(GPIOE_LSM303DLHC_INT2) |\ - PIN_PUPDR_PULLUP(GPIOE_PIN6) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN7) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN8) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN9) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN10) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN11) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN12) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN13) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN14) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN15)) - diff --git a/keyboards/keychron/k1_max/config.h b/keyboards/keychron/k1_max/config.h deleted file mode 100644 index 5c9a9a651d..0000000000 --- a/keyboards/keychron/k1_max/config.h +++ /dev/null @@ -1,99 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#pragma once - -#if defined(RGB_MATRIX_ENABLE) || defined(LED_MATRIX_ENABLE) || defined(LK_WIRELESS_ENABLE) -/* SPI configuration */ -# define SPI_DRIVER SPID1 -# define SPI_SCK_PIN A5 -# define SPI_MISO_PIN A6 -# define SPI_MOSI_PIN A7 -#endif - -#if defined(RGB_MATRIX_ENABLE) || defined(LED_MATRIX_ENABLE) -# define LED_DRIVER_SHUTDOWN_PIN B7 -# define SNLED23751_SPI_DIVISOR 16 -#endif - -#ifdef LK_WIRELESS_ENABLE -/* Hardware configuration */ -# define P2P4_MODE_SELECT_PIN A10 -# define BT_MODE_SELECT_PIN A9 - -# define LKBT51_RESET_PIN C4 -# define LKBT51_INT_INPUT_PIN B1 -# define BLUETOOTH_INT_OUTPUT_PIN A4 - -# define USB_POWER_SENSE_PIN B0 -# define USB_POWER_CONNECTED_LEVEL 0 - -# define BAT_CHARGING_PIN B13 -# define BAT_CHARGING_LEVEL 0 - -# define BAT_LOW_LED_PIN B12 -# define BAT_LOW_LED_PIN_ON_STATE 1 - -# define BT_HOST_DEVICES_COUNT 3 - -# define BT_HOST_LED_PIN_LIST \ - { C9, C9, C9 } -# define HOST_LED_PIN_ON_STATE 0 - -# define P24G_HOST_DEVICES_COUNT 1 -# define P24G_HOST_LED_PIN_LIST \ - { A8 } - -# if defined(RGB_MATRIX_ENABLE) || defined(LED_MATRIX_ENABLE) - -# define BT_HOST_LED_MATRIX_LIST \ - { 17, 18, 19 } - -# define P2P4G_HOST_LED_MATRIX_LIST \ - { 20 } - -# 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 - -/* Reinit LED driver on tranport changed */ -# define REINIT_LED_DRIVER 1 - -# endif - -/* Keep USB connection in blueooth mode */ -# define KEEP_USB_CONNECTION_IN_WIRELESS_MODE - -/* Enable bluetooth NKRO */ -# define WIRELESS_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 - -/* Factory test keys */ -#define FN_KEY_1 MO(1) -#define FN_KEY_2 MO(3) - -#define MATRIX_IO_DELAY 10 diff --git a/keyboards/keychron/k1_max/firmware/keychron_k1_max_ansi_rgb_via.bin b/keyboards/keychron/k1_max/firmware/keychron_k1_max_ansi_rgb_via.bin deleted file mode 100644 index 2393144430..0000000000 Binary files a/keyboards/keychron/k1_max/firmware/keychron_k1_max_ansi_rgb_via.bin and /dev/null differ diff --git a/keyboards/keychron/k1_max/firmware/keychron_k1_max_ansi_white_via.bin b/keyboards/keychron/k1_max/firmware/keychron_k1_max_ansi_white_via.bin deleted file mode 100644 index 58feb92b5b..0000000000 Binary files a/keyboards/keychron/k1_max/firmware/keychron_k1_max_ansi_white_via.bin and /dev/null differ diff --git a/keyboards/keychron/k1_max/firmware/keychron_k1_max_jis_rgb_via.bin b/keyboards/keychron/k1_max/firmware/keychron_k1_max_jis_rgb_via.bin deleted file mode 100644 index e7ee1ec25b..0000000000 Binary files a/keyboards/keychron/k1_max/firmware/keychron_k1_max_jis_rgb_via.bin and /dev/null differ diff --git a/keyboards/keychron/k1_max/firmware/keychron_k1_max_jis_white_via.bin b/keyboards/keychron/k1_max/firmware/keychron_k1_max_jis_white_via.bin deleted file mode 100644 index 9c40db38df..0000000000 Binary files a/keyboards/keychron/k1_max/firmware/keychron_k1_max_jis_white_via.bin and /dev/null differ diff --git a/keyboards/keychron/k1_max/halconf.h b/keyboards/keychron/k1_max/halconf.h deleted file mode 100644 index be6b5564c0..0000000000 --- a/keyboards/keychron/k1_max/halconf.h +++ /dev/null @@ -1,28 +0,0 @@ -/* Copyright 2024 @ 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 - -#define _CHIBIOS_HAL_CONF_VER_8_0_ - -#define HAL_USE_SPI TRUE - -#ifdef LK_WIRELESS_ENABLE -# define HAL_USE_RTC TRUE -# define PAL_USE_CALLBACKS TRUE -#endif - -#include_next diff --git a/keyboards/keychron/k1_max/info.json b/keyboards/keychron/k1_max/info.json deleted file mode 100644 index efa555af84..0000000000 --- a/keyboards/keychron/k1_max/info.json +++ /dev/null @@ -1,334 +0,0 @@ -{ - "keyboard_name": "Keychron K1 Max", - "manufacturer": "Keychron", - "url": "https://github.com/Keychron", - "maintainer": "lokher", - "processor": "STM32F401", - "bootloader": "stm32-dfu", - "usb": { - "vid": "0x3434" - }, - "features": { - "bootmagic": true, - "extrakey": true, - "mousekey": true, - "dip_switch": true, - "nkro": true, - "raw": true, - "send_string": true - }, - "matrix_pins": { - "cols": ["C6", "C7", "C8", "A14", "A15", "C10", "C11", "C13", "C14", "C15", "C0", "C1", "C2", "C3", "A0", "A1", "A2"], - "rows": ["C12", "D2", "B3", "B4", "B5", "B6"] - }, - "diode_direction": "ROW2COL", - "dip_switch": { - "pins": ["B14"] - }, - "indicators": { - "caps_lock": "A13", - "on_state": 1 - }, - "eeprom": { - "wear_leveling": { - "driver": "embedded_flash", - "logical_size": 2048, - "backing_size": 4096 - } - }, - "layouts": { - "LAYOUT_ansi_87": { - "layout": [ - {"matrix": [0, 0], "x": 0, "y": 0}, - {"matrix": [0, 2], "x": 2, "y": 0}, - {"matrix": [0, 3], "x": 3, "y": 0}, - {"matrix": [0, 4], "x": 4, "y": 0}, - {"matrix": [0, 5], "x": 5, "y": 0}, - {"matrix": [0, 6], "x": 6.5, "y": 0}, - {"matrix": [0, 7], "x": 7.5, "y": 0}, - {"matrix": [0, 8], "x": 8.5, "y": 0}, - {"matrix": [0, 9], "x": 9.5, "y": 0}, - {"matrix": [0, 10], "x": 11, "y": 0}, - {"matrix": [0, 11], "x": 12, "y": 0}, - {"matrix": [0, 12], "x": 13, "y": 0}, - {"matrix": [0, 13], "x": 14, "y": 0}, - {"matrix": [0, 14], "x": 15, "y": 0}, - {"matrix": [0, 15], "x": 16, "y": 0}, - {"matrix": [0, 16], "x": 17, "y": 0}, - - {"matrix": [1, 0], "x": 0, "y": 1.25}, - {"matrix": [1, 1], "x": 1, "y": 1.25}, - {"matrix": [1, 2], "x": 2, "y": 1.25}, - {"matrix": [1, 3], "x": 3, "y": 1.25}, - {"matrix": [1, 4], "x": 4, "y": 1.25}, - {"matrix": [1, 5], "x": 5, "y": 1.25}, - {"matrix": [1, 6], "x": 6, "y": 1.25}, - {"matrix": [1, 7], "x": 7, "y": 1.25}, - {"matrix": [1, 8], "x": 8, "y": 1.25}, - {"matrix": [1, 9], "x": 9, "y": 1.25}, - {"matrix": [1, 10], "x": 10, "y": 1.25}, - {"matrix": [1, 11], "x": 11, "y": 1.25}, - {"matrix": [1, 12], "x": 12, "y": 1.25}, - {"matrix": [1, 13], "x": 13, "y": 1.25, "w": 2}, - {"matrix": [1, 14], "x": 15, "y": 1.25}, - {"matrix": [1, 15], "x": 16, "y": 1.25}, - {"matrix": [1, 16], "x": 17, "y": 1.25}, - - {"matrix": [2, 0], "x": 0, "y": 2.25, "w": 1.5}, - {"matrix": [2, 1], "x": 1.5, "y": 2.25}, - {"matrix": [2, 2], "x": 2.5, "y": 2.25}, - {"matrix": [2, 3], "x": 3.5, "y": 2.25}, - {"matrix": [2, 4], "x": 4.5, "y": 2.25}, - {"matrix": [2, 5], "x": 5.5, "y": 2.25}, - {"matrix": [2, 6], "x": 6.5, "y": 2.25}, - {"matrix": [2, 7], "x": 7.5, "y": 2.25}, - {"matrix": [2, 8], "x": 8.5, "y": 2.25}, - {"matrix": [2, 9], "x": 9.5, "y": 2.25}, - {"matrix": [2, 10], "x": 10.5, "y": 2.25}, - {"matrix": [2, 11], "x": 11.5, "y": 2.25}, - {"matrix": [2, 12], "x": 12.5, "y": 2.25}, - {"matrix": [2, 13], "x": 13.5, "y": 2.25, "w": 1.5}, - {"matrix": [2, 14], "x": 15, "y": 2.25}, - {"matrix": [2, 15], "x": 16, "y": 2.25}, - {"matrix": [2, 16], "x": 17, "y": 2.25}, - - {"matrix": [3, 0], "x": 0, "y": 3.25, "w": 1.75}, - {"matrix": [3, 1], "x": 1.75, "y": 3.25}, - {"matrix": [3, 2], "x": 2.75, "y": 3.25}, - {"matrix": [3, 3], "x": 3.75, "y": 3.25}, - {"matrix": [3, 4], "x": 4.75, "y": 3.25}, - {"matrix": [3, 5], "x": 5.75, "y": 3.25}, - {"matrix": [3, 6], "x": 6.75, "y": 3.25}, - {"matrix": [3, 7], "x": 7.75, "y": 3.25}, - {"matrix": [3, 8], "x": 8.75, "y": 3.25}, - {"matrix": [3, 9], "x": 9.75, "y": 3.25}, - {"matrix": [3, 10], "x": 10.75, "y": 3.25}, - {"matrix": [3, 11], "x": 11.75, "y": 3.25}, - {"matrix": [3, 13], "x": 12.75, "y": 3.25, "w": 2.25}, - - {"matrix": [4, 0], "x": 0, "y": 4.25, "w": 2.25}, - {"matrix": [4, 2], "x": 2.25, "y": 4.25}, - {"matrix": [4, 3], "x": 3.25, "y": 4.25}, - {"matrix": [4, 4], "x": 4.25, "y": 4.25}, - {"matrix": [4, 5], "x": 5.25, "y": 4.25}, - {"matrix": [4, 6], "x": 6.25, "y": 4.25}, - {"matrix": [4, 7], "x": 7.25, "y": 4.25}, - {"matrix": [4, 8], "x": 8.25, "y": 4.25}, - {"matrix": [4, 9], "x": 9.25, "y": 4.25}, - {"matrix": [4, 10], "x": 10.25, "y": 4.25}, - {"matrix": [4, 11], "x": 11.25, "y": 4.25}, - {"matrix": [4, 13], "x": 12.25, "y": 4.25, "w": 2.75}, - {"matrix": [4, 15], "x": 16, "y": 4.25}, - - {"matrix": [5, 0], "x": 0, "y":5.25, "w": 1.25}, - {"matrix": [5, 1], "x": 1.25, "y":5.25, "w": 1.25}, - {"matrix": [5, 2], "x": 2.5, "y":5.25, "w": 1.25}, - {"matrix": [5, 6], "x": 3.75, "y":5.25, "w": 6.25}, - {"matrix": [5, 10], "x": 10, "y":5.25, "w": 1.25}, - {"matrix": [5, 11], "x": 11.25, "y":5.25, "w": 1.25}, - {"matrix": [5, 12], "x": 12.5, "y":5.25, "w": 1.25}, - {"matrix": [5, 13], "x": 13.75, "y":5.25, "w": 1.25}, - {"matrix": [5, 14], "x": 15, "y":5.25}, - {"matrix": [5, 15], "x": 16, "y":5.25}, - {"matrix": [5, 16], "x": 17, "y":5.25} - ] - }, - "LAYOUT_iso_88": { - "layout": [ - {"matrix": [0, 0], "x": 0, "y": 0}, - {"matrix": [0, 2], "x": 2, "y": 0}, - {"matrix": [0, 3], "x": 3, "y": 0}, - {"matrix": [0, 4], "x": 4, "y": 0}, - {"matrix": [0, 5], "x": 5, "y": 0}, - {"matrix": [0, 6], "x": 6.5, "y": 0}, - {"matrix": [0, 7], "x": 7.5, "y": 0}, - {"matrix": [0, 8], "x": 8.5, "y": 0}, - {"matrix": [0, 9], "x": 9.5, "y": 0}, - {"matrix": [0, 10], "x": 11, "y": 0}, - {"matrix": [0, 11], "x": 12, "y": 0}, - {"matrix": [0, 12], "x": 13, "y": 0}, - {"matrix": [0, 13], "x": 14, "y": 0}, - {"matrix": [0, 14], "x": 15, "y": 0}, - {"matrix": [0, 15], "x": 16, "y": 0}, - {"matrix": [0, 16], "x": 17, "y": 0}, - - {"matrix": [1, 0], "x": 0, "y": 1.25}, - {"matrix": [1, 1], "x": 1, "y": 1.25}, - {"matrix": [1, 2], "x": 2, "y": 1.25}, - {"matrix": [1, 3], "x": 3, "y": 1.25}, - {"matrix": [1, 4], "x": 4, "y": 1.25}, - {"matrix": [1, 5], "x": 5, "y": 1.25}, - {"matrix": [1, 6], "x": 6, "y": 1.25}, - {"matrix": [1, 7], "x": 7, "y": 1.25}, - {"matrix": [1, 8], "x": 8, "y": 1.25}, - {"matrix": [1, 9], "x": 9, "y": 1.25}, - {"matrix": [1, 10], "x": 10, "y": 1.25}, - {"matrix": [1, 11], "x": 11, "y": 1.25}, - {"matrix": [1, 12], "x": 12, "y": 1.25}, - {"matrix": [1, 13], "x": 13, "y": 1.25, "w": 2}, - {"matrix": [1, 14], "x": 15, "y": 1.25}, - {"matrix": [1, 15], "x": 16, "y": 1.25}, - {"matrix": [1, 16], "x": 17, "y": 1.25}, - - {"matrix": [2, 0], "x": 0, "y": 2.25, "w": 1.5}, - {"matrix": [2, 1], "x": 1.5, "y": 2.25}, - {"matrix": [2, 2], "x": 2.5, "y": 2.25}, - {"matrix": [2, 3], "x": 3.5, "y": 2.25}, - {"matrix": [2, 4], "x": 4.5, "y": 2.25}, - {"matrix": [2, 5], "x": 5.5, "y": 2.25}, - {"matrix": [2, 6], "x": 6.5, "y": 2.25}, - {"matrix": [2, 7], "x": 7.5, "y": 2.25}, - {"matrix": [2, 8], "x": 8.5, "y": 2.25}, - {"matrix": [2, 9], "x": 9.5, "y": 2.25}, - {"matrix": [2, 10], "x": 10.5, "y": 2.25}, - {"matrix": [2, 11], "x": 11.5, "y": 2.25}, - {"matrix": [2, 12], "x": 12.5, "y": 2.25}, - {"matrix": [2, 14], "x": 15, "y": 2.25}, - {"matrix": [2, 15], "x": 16, "y": 2.25}, - {"matrix": [2, 16], "x": 17, "y": 2.25}, - - {"matrix": [3, 0], "x": 0, "y": 3.25, "w": 1.75}, - {"matrix": [3, 1], "x": 1.75, "y": 3.25}, - {"matrix": [3, 2], "x": 2.75, "y": 3.25}, - {"matrix": [3, 3], "x": 3.75, "y": 3.25}, - {"matrix": [3, 4], "x": 4.75, "y": 3.25}, - {"matrix": [3, 5], "x": 5.75, "y": 3.25}, - {"matrix": [3, 6], "x": 6.75, "y": 3.25}, - {"matrix": [3, 7], "x": 7.75, "y": 3.25}, - {"matrix": [3, 8], "x": 8.75, "y": 3.25}, - {"matrix": [3, 9], "x": 9.75, "y": 3.25}, - {"matrix": [3, 10], "x": 10.75, "y": 3.25}, - {"matrix": [3, 11], "x": 11.75, "y": 3.25}, - {"matrix": [3, 13], "x": 12.75, "y": 3.25}, - {"matrix": [2, 13], "x": 13.75, "y": 2.25, "w": 1.25, "h": 2}, - - {"matrix": [4, 0], "x": 0, "y": 4.25, "w": 1.25}, - {"matrix": [4, 1], "x": 1.25, "y": 4.25}, - {"matrix": [4, 2], "x": 2.25, "y": 4.25}, - {"matrix": [4, 3], "x": 3.25, "y": 4.25}, - {"matrix": [4, 4], "x": 4.25, "y": 4.25}, - {"matrix": [4, 5], "x": 5.25, "y": 4.25}, - {"matrix": [4, 6], "x": 6.25, "y": 4.25}, - {"matrix": [4, 7], "x": 7.25, "y": 4.25}, - {"matrix": [4, 8], "x": 8.25, "y": 4.25}, - {"matrix": [4, 9], "x": 9.25, "y": 4.25}, - {"matrix": [4, 10], "x": 10.25, "y": 4.25}, - {"matrix": [4, 11], "x": 11.25, "y": 4.25}, - {"matrix": [4, 13], "x": 12.25, "y": 4.25, "w": 2.75}, - {"matrix": [4, 15], "x": 16, "y": 4.25}, - - {"matrix": [5, 0], "x": 0, "y":5.25, "w": 1.25}, - {"matrix": [5, 1], "x": 1.25, "y":5.25, "w": 1.25}, - {"matrix": [5, 2], "x": 2.5, "y":5.25, "w": 1.25}, - {"matrix": [5, 6], "x": 3.75, "y":5.25, "w": 6.25}, - {"matrix": [5, 10], "x": 10, "y":5.25, "w": 1.25}, - {"matrix": [5, 11], "x": 11.25, "y":5.25, "w": 1.25}, - {"matrix": [5, 12], "x": 12.5, "y":5.25, "w": 1.25}, - {"matrix": [5, 13], "x": 13.75, "y":5.25, "w": 1.25}, - {"matrix": [5, 14], "x": 15, "y":5.25}, - {"matrix": [5, 15], "x": 16, "y":5.25}, - {"matrix": [5, 16], "x": 17, "y":5.25} - ] - }, - "LAYOUT_jis_91": { - "layout": [ - {"matrix": [0, 0], "x": 0, "y": 0}, - {"matrix": [0, 2], "x": 2, "y": 0}, - {"matrix": [0, 3], "x": 3, "y": 0}, - {"matrix": [0, 4], "x": 4, "y": 0}, - {"matrix": [0, 5], "x": 5, "y": 0}, - {"matrix": [0, 6], "x": 6.5, "y": 0}, - {"matrix": [0, 7], "x": 7.5, "y": 0}, - {"matrix": [0, 8], "x": 8.5, "y": 0}, - {"matrix": [0, 9], "x": 9.5, "y": 0}, - {"matrix": [0, 10], "x": 11, "y": 0}, - {"matrix": [0, 11], "x": 12, "y": 0}, - {"matrix": [0, 12], "x": 13, "y": 0}, - {"matrix": [0, 13], "x": 14, "y": 0}, - {"matrix": [0, 14], "x": 15, "y": 0}, - {"matrix": [0, 15], "x": 16, "y": 0}, - {"matrix": [0, 16], "x": 17, "y": 0}, - - {"matrix": [1, 0], "x": 0, "y": 1.25}, - {"matrix": [1, 1], "x": 1, "y": 1.25}, - {"matrix": [1, 2], "x": 2, "y": 1.25}, - {"matrix": [1, 3], "x": 3, "y": 1.25}, - {"matrix": [1, 4], "x": 4, "y": 1.25}, - {"matrix": [1, 5], "x": 5, "y": 1.25}, - {"matrix": [1, 6], "x": 6, "y": 1.25}, - {"matrix": [1, 7], "x": 7, "y": 1.25}, - {"matrix": [1, 8], "x": 8, "y": 1.25}, - {"matrix": [1, 9], "x": 9, "y": 1.25}, - {"matrix": [1, 10], "x": 10, "y": 1.25}, - {"matrix": [1, 11], "x": 11, "y": 1.25}, - {"matrix": [1, 12], "x": 12, "y": 1.25}, - {"matrix": [1, 13], "x": 13, "y": 1.25}, - {"matrix": [1, 14], "x": 14, "y": 1.25}, - {"matrix": [1, 15], "x": 15, "y": 1.25}, - {"matrix": [1, 16], "x": 16, "y": 1.25}, - {"matrix": [3, 12], "x": 17, "y": 1.25}, - - {"matrix": [2, 0], "x": 0, "y": 2.25, "w": 1.5}, - {"matrix": [2, 1], "x": 1.5, "y": 2.25}, - {"matrix": [2, 2], "x": 2.5, "y": 2.25}, - {"matrix": [2, 3], "x": 3.5, "y": 2.25}, - {"matrix": [2, 4], "x": 4.5, "y": 2.25}, - {"matrix": [2, 5], "x": 5.5, "y": 2.25}, - {"matrix": [2, 6], "x": 6.5, "y": 2.25}, - {"matrix": [2, 7], "x": 7.5, "y": 2.25}, - {"matrix": [2, 8], "x": 8.5, "y": 2.25}, - {"matrix": [2, 9], "x": 9.5, "y": 2.25}, - {"matrix": [2, 10], "x": 10.5, "y": 2.25}, - {"matrix": [2, 11], "x": 11.5, "y": 2.25}, - {"matrix": [2, 12], "x": 12.5, "y": 2.25}, - {"matrix": [2, 14], "x": 15, "y": 2.25}, - {"matrix": [2, 15], "x": 16, "y": 2.25}, - {"matrix": [2, 16], "x": 17, "y": 2.25}, - - {"matrix": [3, 0], "x": 0, "y": 3.25, "w": 1.75}, - {"matrix": [3, 1], "x": 1.75, "y": 3.25}, - {"matrix": [3, 2], "x": 2.75, "y": 3.25}, - {"matrix": [3, 3], "x": 3.75, "y": 3.25}, - {"matrix": [3, 4], "x": 4.75, "y": 3.25}, - {"matrix": [3, 5], "x": 5.75, "y": 3.25}, - {"matrix": [3, 6], "x": 6.75, "y": 3.25}, - {"matrix": [3, 7], "x": 7.75, "y": 3.25}, - {"matrix": [3, 8], "x": 8.75, "y": 3.25}, - {"matrix": [3, 9], "x": 9.75, "y": 3.25}, - {"matrix": [3, 10], "x": 10.75, "y": 3.25}, - {"matrix": [3, 11], "x": 11.75, "y": 3.25}, - {"matrix": [3, 13], "x": 12.75, "y": 3.25}, - {"matrix": [2, 13], "x": 13.75, "y": 2.25, "w": 1.25, "h": 2}, - - {"matrix": [4, 0], "x": 0, "y": 4.25, "w": 2.25}, - {"matrix": [4, 2], "x": 2.25, "y": 4.25}, - {"matrix": [4, 3], "x": 3.25, "y": 4.25}, - {"matrix": [4, 4], "x": 4.25, "y": 4.25}, - {"matrix": [4, 5], "x": 5.25, "y": 4.25}, - {"matrix": [4, 6], "x": 6.25, "y": 4.25}, - {"matrix": [4, 7], "x": 7.25, "y": 4.25}, - {"matrix": [4, 8], "x": 8.25, "y": 4.25}, - {"matrix": [4, 9], "x": 9.25, "y": 4.25}, - {"matrix": [4, 10], "x": 10.25, "y": 4.25}, - {"matrix": [4, 11], "x": 11.25, "y": 4.25}, - {"matrix": [4, 12], "x": 12.25, "y": 4.25}, - {"matrix": [4, 13], "x": 13.25, "y": 4.25, "w": 1.75}, - {"matrix": [4, 15], "x": 16, "y": 4.25}, - - {"matrix": [5, 0], "x": 0, "y":5.25, "w": 1.25}, - {"matrix": [5, 1], "x": 1.25, "y":5.25}, - {"matrix": [5, 2], "x": 2.25, "y":5.25, "w": 1.25}, - {"matrix": [5, 3], "x": 3.5, "y":5.25}, - {"matrix": [5, 6], "x": 4.5, "y":5.25, "w": 5}, - {"matrix": [5, 9], "x": 9.5, "y":5.25}, - {"matrix": [5, 10], "x": 10.5, "y":5.25, "w": 1.25}, - {"matrix": [5, 11], "x": 11.75, "y":5.25}, - {"matrix": [5, 12], "x": 12.75, "y":5.25}, - {"matrix": [5, 13], "x": 13.75, "y":5.25, "w": 1.25}, - {"matrix": [5, 14], "x": 15, "y":5.25}, - {"matrix": [5, 15], "x": 16, "y":5.25}, - {"matrix": [5, 16], "x": 17, "y":5.25} - ] - } - } -} diff --git a/keyboards/keychron/k1_max/iso/rgb/config.h b/keyboards/keychron/k1_max/iso/rgb/config.h deleted file mode 100644 index acd8ee5647..0000000000 --- a/keyboards/keychron/k1_max/iso/rgb/config.h +++ /dev/null @@ -1,46 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#pragma once - -#ifdef RGB_MATRIX_ENABLE -/* RGB Matrix driver configuration */ -# define RGB_MATRIX_LED_COUNT 88 -# define DRIVER_COUNT 2 -# define DRIVER_CS_PINS \ - { B8, B9 } - -/* Scan phase of led driver set as MSKPHASE_9CHANNEL(defined as 0x03 in snled27351.h) */ -# define SNLED27351_PHASE_CHANNEL MSKPHASE_12CHANNEL -/* Set LED driver current */ -# define SNLED27351_CURRENT_TUNE \ - { 0x14, 0x14, 0x14, 0x14, 0x14, 0x14, 0x14, 0x14, 0x14, 0x14, 0x14, 0x14 } - -/* Set to infinit, which is use in USB mode by default */ -# define RGB_MATRIX_TIMEOUT RGB_MATRIX_TIMEOUT_INFINITE -/* Allow shutdown of led driver to save power */ -# define RGB_MATRIX_DRIVER_SHUTDOWN_ENABLE -/* Turn off backlight on low brightness to save power */ -# define RGB_MATRIX_BRIGHTNESS_TURN_OFF_VAL 48 - -/* Indications */ -# define LOW_BAT_IND_INDEX \ - { 80 } - -# define RGB_MATRIX_KEYPRESSES -# define RGB_MATRIX_FRAMEBUFFER_EFFECTS - -#endif diff --git a/keyboards/keychron/k1_max/iso/rgb/info.json b/keyboards/keychron/k1_max/iso/rgb/info.json deleted file mode 100644 index 23bc83371e..0000000000 --- a/keyboards/keychron/k1_max/iso/rgb/info.json +++ /dev/null @@ -1,36 +0,0 @@ -{ - "usb": { - "pid": "0x0A11", - "device_version": "1.0.0" - }, - "features": { - "rgb_matrix": true - }, - "rgb_matrix": { - "driver": "snled27351_spi", - "sleep": true, - "animations": { - "band_spiral_val": true, - "breathing": true, - "cycle_all": true, - "cycle_left_right": true, - "cycle_out_in": true, - "cycle_out_in_dual": true, - "cycle_pinwheel": true, - "cycle_spiral": true, - "cycle_up_down": true, - "digital_rain": true, - "dual_beacon": true, - "jellybean_raindrops": true, - "pixel_rain": true, - "rainbow_beacon": true, - "rainbow_moving_chevron": true, - "solid_reactive_multinexus": true, - "solid_reactive_multiwide": true, - "solid_reactive_simple": true, - "solid_splash": true, - "splash": true, - "typing_heatmap": true - } - } -} diff --git a/keyboards/keychron/k1_max/iso/rgb/keymaps/default/keymap.c b/keyboards/keychron/k1_max/iso/rgb/keymaps/default/keymap.c deleted file mode 100644 index 5460d8ec56..0000000000 --- a/keyboards/keychron/k1_max/iso/rgb/keymaps/default/keymap.c +++ /dev/null @@ -1,67 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#include QMK_KEYBOARD_H -#include "keychron_common.h" - -enum layers { - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN, -}; -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_iso_88( - KC_ESC, KC_BRID, KC_BRIU, KC_MCTRL, KC_LNPAD, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_SNAP, KC_SIRI, RGB_MOD, - KC_GRV, 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_INS, KC_HOME, KC_PGUP, - 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_DEL, KC_END, KC_PGDN, - 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_NUHS, KC_ENT, - KC_LSFT, KC_NUBS, 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_LCTL, KC_LOPTN, KC_LCMMD, KC_SPC, KC_RCMMD, KC_ROPTN, MO(MAC_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - - [MAC_FN] = LAYOUT_iso_88( - _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, RGB_TOG, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - - [WIN_BASE] = LAYOUT_iso_88( - KC_ESC, 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_PSCR, KC_CTANA, RGB_MOD, - KC_GRV, 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_INS, KC_HOME, KC_PGUP, - 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_DEL, KC_END, KC_PGDN, - 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_NUHS, KC_ENT, - KC_LSFT, KC_NUBS, 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_LCTL, KC_LWIN, KC_LALT, KC_SPC, KC_RALT, KC_RGUI, MO(WIN_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - - [WIN_FN] = LAYOUT_iso_88( - _______, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, RGB_TOG, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______) -}; - -// clang-format on -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - if (!process_record_keychron_common(keycode, record)) { - return false; - } - return true; -} diff --git a/keyboards/keychron/k1_max/iso/rgb/keymaps/via/keymap.c b/keyboards/keychron/k1_max/iso/rgb/keymaps/via/keymap.c deleted file mode 100644 index 5460d8ec56..0000000000 --- a/keyboards/keychron/k1_max/iso/rgb/keymaps/via/keymap.c +++ /dev/null @@ -1,67 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#include QMK_KEYBOARD_H -#include "keychron_common.h" - -enum layers { - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN, -}; -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_iso_88( - KC_ESC, KC_BRID, KC_BRIU, KC_MCTRL, KC_LNPAD, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_SNAP, KC_SIRI, RGB_MOD, - KC_GRV, 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_INS, KC_HOME, KC_PGUP, - 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_DEL, KC_END, KC_PGDN, - 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_NUHS, KC_ENT, - KC_LSFT, KC_NUBS, 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_LCTL, KC_LOPTN, KC_LCMMD, KC_SPC, KC_RCMMD, KC_ROPTN, MO(MAC_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - - [MAC_FN] = LAYOUT_iso_88( - _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, RGB_TOG, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - - [WIN_BASE] = LAYOUT_iso_88( - KC_ESC, 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_PSCR, KC_CTANA, RGB_MOD, - KC_GRV, 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_INS, KC_HOME, KC_PGUP, - 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_DEL, KC_END, KC_PGDN, - 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_NUHS, KC_ENT, - KC_LSFT, KC_NUBS, 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_LCTL, KC_LWIN, KC_LALT, KC_SPC, KC_RALT, KC_RGUI, MO(WIN_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - - [WIN_FN] = LAYOUT_iso_88( - _______, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, RGB_TOG, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______) -}; - -// clang-format on -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - if (!process_record_keychron_common(keycode, record)) { - return false; - } - return true; -} diff --git a/keyboards/keychron/k1_max/iso/rgb/keymaps/via/rules.mk b/keyboards/keychron/k1_max/iso/rgb/keymaps/via/rules.mk deleted file mode 100644 index 1e5b99807c..0000000000 --- a/keyboards/keychron/k1_max/iso/rgb/keymaps/via/rules.mk +++ /dev/null @@ -1 +0,0 @@ -VIA_ENABLE = yes diff --git a/keyboards/keychron/k1_max/iso/rgb/rgb.c b/keyboards/keychron/k1_max/iso/rgb/rgb.c deleted file mode 100644 index f04df3c6ae..0000000000 --- a/keyboards/keychron/k1_max/iso/rgb/rgb.c +++ /dev/null @@ -1,154 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#include "quantum.h" - -// clang-format off -#ifdef RGB_MATRIX_ENABLE -const snled27351_led_t g_snled27351_leds[RGB_MATRIX_LED_COUNT] = { -/* Refer to SNLED27351 manual for these locations - * driver - * | R location - * | | G location - * | | | B location - * | | | | */ - {0, I_1, G_1, H_1}, - {0, I_2, G_2, H_2}, - {0, I_3, G_3, H_3}, - {0, I_4, G_4, H_4}, - {0, I_5, G_5, H_5}, - {0, I_6, G_6, H_6}, - {0, I_7, G_7, H_7}, - {0, I_8, G_8, H_8}, - {0, I_9, G_9, H_9}, - {0, I_10, G_10, H_10}, - {0, I_11, G_11, H_11}, - {0, I_12, G_12, H_12}, - {0, I_13, G_13, H_13}, - {0, I_15, G_15, H_15}, - {0, I_16, G_16, H_16}, - {1, F_8, D_8, E_8}, - - {0, F_1, D_1, E_1}, - {0, F_2, D_2, E_2}, - {0, F_3, D_3, E_3}, - {0, F_4, D_4, E_4}, - {0, F_5, D_5, E_5}, - {0, F_6, D_6, E_6}, - {0, F_7, D_7, E_7}, - {0, F_8, D_8, E_8}, - {0, F_9, D_9, E_9}, - {0, F_10, D_10, E_10}, - {0, F_11, D_11, E_11}, - {0, F_12, D_12, E_12}, - {0, F_13, D_13, E_13}, - {0, F_14, D_14, E_14}, - {0, F_15, D_15, E_15}, - {0, F_16, D_16, E_16}, - {1, F_9, D_9, E_9}, - - {0, A_1, C_1, B_1}, - {0, A_2, C_2, B_2}, - {0, A_3, C_3, B_3}, - {0, A_4, C_4, B_4}, - {0, A_5, C_5, B_5}, - {0, A_6, C_6, B_6}, - {0, A_7, C_7, B_7}, - {0, A_8, C_8, B_8}, - {0, A_9, C_9, B_9}, - {0, A_10, C_10, B_10}, - {0, A_11, C_11, B_11}, - {0, A_12, C_12, B_12}, - {0, A_13, C_13, B_13}, - {0, A_14, C_14, B_14}, - {0, A_15, C_15, B_15}, - {0, A_16, C_16, B_16}, - {1, F_6, D_6, E_6}, - - {1, I_1, G_1, H_1}, - {1, I_2, G_2, H_2}, - {1, I_3, G_3, H_3}, - {1, I_4, G_4, H_4}, - {1, I_5, G_5, H_5}, - {1, I_6, G_6, H_6}, - {1, I_7, G_7, H_7}, - {1, I_8, G_8, H_8}, - {1, I_9, G_9, H_9}, - {1, I_10, G_10, H_10}, - {1, I_11, G_11, H_11}, - {1, I_12, G_12, H_12}, - {1, I_14, G_14, H_14}, - - {1, C_1, A_1, B_1}, - {1, C_2, A_2, B_2}, - {1, C_3, A_3, B_3}, - {1, C_4, A_4, B_4}, - {1, C_5, A_5, B_5}, - {1, C_6, A_6, B_6}, - {1, C_7, A_7, B_7}, - {1, C_8, A_8, B_8}, - {1, C_9, A_9, B_9}, - {1, C_10, A_10, B_10}, - {1, C_11, A_11, B_11}, - {1, C_12, A_12, B_12}, - {1, C_14, A_14, B_14}, - {1, C_16, A_16, B_16}, - - {1, F_1, D_1, E_1}, - {1, F_2, D_2, E_2}, - {1, F_3, D_3, E_3}, - {1, F_7, D_7, E_7}, - {1, F_11, D_11, E_11}, - {1, F_12, D_12, E_12}, - {1, F_13, D_13, E_13}, - {1, F_14, D_14, E_14}, - {1, F_15, D_15, E_15}, - {1, F_16, D_16, E_16}, - {1, C_15, A_15, B_15}, -}; - -#define __ NO_LED - -led_config_t g_led_config = { - { - // Key Matrix to LED Index - { 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, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49 }, - { 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, __, 62, __, __, __ }, - { 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, __, 75, __, 76, __ }, - { 77, 78, 79,__, __, __, 80, __, __, __, 81, 82, 83, 84, 85, 86, 87 }, - }, - { - // LED Index to Physical Position - {0, 0}, {26, 0}, {39, 0}, {52, 0}, {65, 0}, {85, 0}, { 98, 0}, {111, 0}, {124, 0}, {144, 0}, {157, 0}, {170, 0}, {183, 0}, {198, 0}, {211, 0}, {224, 0}, - {0,14}, {13,14}, {26,14}, {39,14}, {52,14}, {65,14}, {79,14}, { 92,14}, {105,14}, {118,14}, {131,14}, {144,14}, {157,14}, {177,14}, {198,14}, {211,14}, {224,14}, - {3,26}, {20,26}, {33,26}, {46,26}, {59,26}, {72,26}, {85,26}, { 98,26}, {111,26}, {124,26}, {138,26}, {151,26}, {164,26}, {178,33}, {198,26}, {211,26}, {224,26}, - {5,39}, {23,39}, {36,39}, {49,39}, {62,39}, {75,39}, {88,39}, {102,39}, {115,39}, {128,39}, {141,39}, {154,39}, {169,39}, - {2,51}, {16,51}, {30,51}, {43,51}, {56,51}, {69,51}, {82,51}, { 95,51}, {108,51}, {121,51}, {134,51}, {147,51}, {172,51}, {211,51}, - {2,64}, {18,64}, {34,64}, {84,64}, {133,64}, {149,64}, {165,64}, {182,64}, {198,64}, {211,64}, {224,64}, - }, - { - // RGB LED Index to Flag - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - } -}; -#endif diff --git a/keyboards/keychron/k1_max/iso/rgb/rules.mk b/keyboards/keychron/k1_max/iso/rgb/rules.mk deleted file mode 100644 index 6e7633bfe0..0000000000 --- a/keyboards/keychron/k1_max/iso/rgb/rules.mk +++ /dev/null @@ -1 +0,0 @@ -# This file intentionally left blank diff --git a/keyboards/keychron/k1_max/iso/white/config.h b/keyboards/keychron/k1_max/iso/white/config.h deleted file mode 100644 index 54bb32cda4..0000000000 --- a/keyboards/keychron/k1_max/iso/white/config.h +++ /dev/null @@ -1,44 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#pragma once - -#ifdef LED_MATRIX_ENABLE -/* LED matrix driver configuration */ -# define LED_MATRIX_LED_COUNT 88 -# define DRIVER_COUNT 1 -# define DRIVER_CS_PINS \ - { B9 } - -/* Use first 6 channels of LED driver */ -# define SNLED27351_PHASE_CHANNEL MSKPHASE_6CHANNEL -/* Set LED driver current */ -# define SNLED27351_CURRENT_TUNE \ - { 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20 } - -/* Set to infinit, which is use in USB mode by default */ -# define LED_MATRIX_TIMEOUT LED_MATRIX_TIMEOUT_INFINITE -/* Allow shutdown of led driver to save power */ -# define LED_MATRIX_DRIVER_SHUTDOWN_ENABLE -/* Turn off backlight on low brightness to save power */ -# define LED_MATRIX_BRIGHTNESS_TURN_OFF_VAL 48 - -/* Low battery indicating led */ -# define LOW_BAT_IND_INDEX \ - { 80 } - -# define LED_MATRIX_KEYPRESSES -#endif diff --git a/keyboards/keychron/k1_max/iso/white/info.json b/keyboards/keychron/k1_max/iso/white/info.json deleted file mode 100644 index a62babbf41..0000000000 --- a/keyboards/keychron/k1_max/iso/white/info.json +++ /dev/null @@ -1,30 +0,0 @@ -{ - "usb": { - "pid": "0x0A14", - "device_version": "1.0.0" - }, - "features": { - "led_matrix": true - }, - "led_matrix": { - "driver": "snled27351_spi", - "sleep": true, - "animations": { - "none": true, - "solid": true, - "breathing": true, - "band_pinwheel": true, - "band_spiral": true, - "cycle_left_right": true, - "cycle_up_down": true, - "cycle_out_in": true, - "dual_beacon": true, - "solid_reactive_simple": true, - "solid_reactive_multiwide": true, - "solid_reactive_multinexus": true, - "solid_splash": true, - "wave_left_right": true, - "wave_up_down": true - } - } -} diff --git a/keyboards/keychron/k1_max/iso/white/keymaps/default/keymap.c b/keyboards/keychron/k1_max/iso/white/keymaps/default/keymap.c deleted file mode 100644 index 9fc0d98cb6..0000000000 --- a/keyboards/keychron/k1_max/iso/white/keymaps/default/keymap.c +++ /dev/null @@ -1,67 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#include QMK_KEYBOARD_H -#include "keychron_common.h" - -enum layers { - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN, -}; -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_iso_88( - KC_ESC, KC_BRID, KC_BRIU, KC_MCTRL, KC_LNPAD, BL_DOWN, BL_UP, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_SNAP, KC_SIRI, BL_STEP, - KC_GRV, 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_INS, KC_HOME, KC_PGUP, - 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_DEL, KC_END, KC_PGDN, - 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_NUHS, KC_ENT, - KC_LSFT, KC_NUBS, 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_LCTL, KC_LOPTN, KC_LCMMD, KC_SPC, KC_RCMMD, KC_ROPTN, MO(MAC_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - - [MAC_FN] = LAYOUT_iso_88( - _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, BL_TOGG, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - BL_TOGG, BL_STEP, BL_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, BL_DOWN, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - - [WIN_BASE] = LAYOUT_iso_88( - KC_ESC, 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_PSCR, KC_CTANA, BL_STEP, - KC_GRV, 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_INS, KC_HOME, KC_PGUP, - 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_DEL, KC_END, KC_PGDN, - 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_NUHS, KC_ENT, - KC_LSFT, KC_NUBS, 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_LCTL, KC_LWIN, KC_LALT, KC_SPC, KC_RALT, KC_RGUI, MO(WIN_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - - [WIN_FN] = LAYOUT_iso_88( - _______, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, BL_DOWN, BL_UP, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, BL_TOGG, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - BL_TOGG, BL_STEP, BL_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, BL_DOWN, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______) -}; - -// clang-format on -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - if (!process_record_keychron_common(keycode, record)) { - return false; - } - return true; -} diff --git a/keyboards/keychron/k1_max/iso/white/keymaps/via/keymap.c b/keyboards/keychron/k1_max/iso/white/keymaps/via/keymap.c deleted file mode 100644 index 9fc0d98cb6..0000000000 --- a/keyboards/keychron/k1_max/iso/white/keymaps/via/keymap.c +++ /dev/null @@ -1,67 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#include QMK_KEYBOARD_H -#include "keychron_common.h" - -enum layers { - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN, -}; -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_iso_88( - KC_ESC, KC_BRID, KC_BRIU, KC_MCTRL, KC_LNPAD, BL_DOWN, BL_UP, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_SNAP, KC_SIRI, BL_STEP, - KC_GRV, 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_INS, KC_HOME, KC_PGUP, - 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_DEL, KC_END, KC_PGDN, - 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_NUHS, KC_ENT, - KC_LSFT, KC_NUBS, 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_LCTL, KC_LOPTN, KC_LCMMD, KC_SPC, KC_RCMMD, KC_ROPTN, MO(MAC_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - - [MAC_FN] = LAYOUT_iso_88( - _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, BL_TOGG, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - BL_TOGG, BL_STEP, BL_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, BL_DOWN, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - - [WIN_BASE] = LAYOUT_iso_88( - KC_ESC, 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_PSCR, KC_CTANA, BL_STEP, - KC_GRV, 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_INS, KC_HOME, KC_PGUP, - 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_DEL, KC_END, KC_PGDN, - 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_NUHS, KC_ENT, - KC_LSFT, KC_NUBS, 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_LCTL, KC_LWIN, KC_LALT, KC_SPC, KC_RALT, KC_RGUI, MO(WIN_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - - [WIN_FN] = LAYOUT_iso_88( - _______, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, BL_DOWN, BL_UP, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, BL_TOGG, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - BL_TOGG, BL_STEP, BL_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, BL_DOWN, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______) -}; - -// clang-format on -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - if (!process_record_keychron_common(keycode, record)) { - return false; - } - return true; -} diff --git a/keyboards/keychron/k1_max/iso/white/keymaps/via/rules.mk b/keyboards/keychron/k1_max/iso/white/keymaps/via/rules.mk deleted file mode 100644 index 1e5b99807c..0000000000 --- a/keyboards/keychron/k1_max/iso/white/keymaps/via/rules.mk +++ /dev/null @@ -1 +0,0 @@ -VIA_ENABLE = yes diff --git a/keyboards/keychron/k1_max/iso/white/rules.mk b/keyboards/keychron/k1_max/iso/white/rules.mk deleted file mode 100644 index 6e7633bfe0..0000000000 --- a/keyboards/keychron/k1_max/iso/white/rules.mk +++ /dev/null @@ -1 +0,0 @@ -# This file intentionally left blank diff --git a/keyboards/keychron/k1_max/iso/white/white.c b/keyboards/keychron/k1_max/iso/white/white.c deleted file mode 100644 index 96fa2d5f51..0000000000 --- a/keyboards/keychron/k1_max/iso/white/white.c +++ /dev/null @@ -1,152 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#include "quantum.h" - -// clang-format off -#ifdef LED_MATRIX_ENABLE -const snled27351_led_t g_snled27351_leds[LED_MATRIX_LED_COUNT] = { -/* Refer to SNLED27351 manual for these locations - * driver - * | LED address - * | | */ - {0, F_1}, - {0, F_2}, - {0, F_3}, - {0, F_4}, - {0, F_5}, - {0, F_6}, - {0, F_7}, - {0, F_8}, - {0, F_9}, - {0, F_10}, - {0, F_11}, - {0, F_12}, - {0, F_13}, - {0, F_15}, - {0, F_16}, - {0, A_8}, - - {0, E_1}, - {0, E_2}, - {0, E_3}, - {0, E_4}, - {0, E_5}, - {0, E_6}, - {0, E_7}, - {0, E_8}, - {0, E_9}, - {0, E_10}, - {0, E_11}, - {0, E_12}, - {0, E_13}, - {0, E_14}, - {0, E_15}, - {0, E_16}, - {0, A_9}, - - {0, D_1}, - {0, D_2}, - {0, D_3}, - {0, D_4}, - {0, D_5}, - {0, D_6}, - {0, D_7}, - {0, D_8}, - {0, D_9}, - {0, D_10}, - {0, D_11}, - {0, D_12}, - {0, D_13}, - {0, D_14}, - {0, D_15}, - {0, D_16}, - {0, A_6}, - - {0, C_1}, - {0, C_2}, - {0, C_3}, - {0, C_4}, - {0, C_5}, - {0, C_6}, - {0, C_7}, - {0, C_8}, - {0, C_9}, - {0, C_10}, - {0, C_11}, - {0, C_12}, - {0, C_14}, - - {0, B_1}, - {0, B_2}, - {0, B_3}, - {0, B_4}, - {0, B_5}, - {0, B_6}, - {0, B_7}, - {0, B_8}, - {0, B_9}, - {0, B_10}, - {0, B_11}, - {0, B_12}, - {0, B_14}, - {0, B_16}, - - {0, A_1}, - {0, A_2}, - {0, A_3}, - {0, A_7}, - {0, A_11}, - {0, A_12}, - {0, A_13}, - {0, A_14}, - {0, A_15}, - {0, A_16}, - {0, B_15}, -}; - -#define __ NO_LED - -led_config_t g_led_config = { - { - // Key Matrix to LED Index - { 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, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49 }, - { 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, __, 62, __, __, __ }, - { 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, __, 75, __, 76, __ }, - { 77, 78, 79,__, __, __, 80, __, __, __, 81, 82, 83, 84, 85, 86, 87 }, - }, - { - // LED Index to Physical Position - {0, 0}, {26, 0}, {39, 0}, {52, 0}, {65, 0}, {85, 0}, { 98, 0}, {111, 0}, {124, 0}, {144, 0}, {157, 0}, {170, 0}, {183, 0}, {198, 0}, {211, 0}, {224, 0}, - {0,14}, {13,14}, {26,14}, {39,14}, {52,14}, {65,14}, {79,14}, { 92,14}, {105,14}, {118,14}, {131,14}, {144,14}, {157,14}, {177,14}, {198,14}, {211,14}, {224,14}, - {3,26}, {20,26}, {33,26}, {46,26}, {59,26}, {72,26}, {85,26}, { 98,26}, {111,26}, {124,26}, {138,26}, {151,26}, {164,26}, {178,33}, {198,26}, {211,26}, {224,26}, - {5,39}, {23,39}, {36,39}, {49,39}, {62,39}, {75,39}, {88,39}, {102,39}, {115,39}, {128,39}, {141,39}, {154,39}, {169,39}, - {2,51}, {16,51}, {30,51}, {43,51}, {56,51}, {69,51}, {82,51}, { 95,51}, {108,51}, {121,51}, {134,51}, {147,51}, {172,51}, {211,51}, - {2,64}, {18,64}, {34,64}, {84,64}, {133,64}, {149,64}, {165,64}, {182,64}, {198,64}, {211,64}, {224,64}, - }, - { - // RGB LED Index to Flag - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - } -}; -#endif diff --git a/keyboards/keychron/k1_max/jis/rgb/config.h b/keyboards/keychron/k1_max/jis/rgb/config.h deleted file mode 100644 index 2cbc18c5e5..0000000000 --- a/keyboards/keychron/k1_max/jis/rgb/config.h +++ /dev/null @@ -1,46 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#pragma once - -#ifdef RGB_MATRIX_ENABLE -/* RGB Matrix driver configuration */ -# define RGB_MATRIX_LED_COUNT 91 -# define DRIVER_COUNT 2 -# define DRIVER_CS_PINS \ - { B8, B9 } - -/* Scan phase of led driver set as MSKPHASE_9CHANNEL(defined as 0x03 in snled27351.h) */ -# define SNLED27351_PHASE_CHANNEL MSKPHASE_12CHANNEL -/* Set LED driver current */ -# define SNLED27351_CURRENT_TUNE \ - { 0x14, 0x14, 0x14, 0x14, 0x14, 0x14, 0x14, 0x14, 0x14, 0x14, 0x14, 0x14 } - -/* Set to infinit, which is use in USB mode by default */ -# define RGB_MATRIX_TIMEOUT RGB_MATRIX_TIMEOUT_INFINITE -/* Allow shutdown of led driver to save power */ -# define RGB_MATRIX_DRIVER_SHUTDOWN_ENABLE -/* Turn off backlight on low brightness to save power */ -# define RGB_MATRIX_BRIGHTNESS_TURN_OFF_VAL 48 - -/* Indications */ -# define LOW_BAT_IND_INDEX \ - { 82 } - -# define RGB_MATRIX_KEYPRESSES -# define RGB_MATRIX_FRAMEBUFFER_EFFECTS - -#endif diff --git a/keyboards/keychron/k1_max/jis/rgb/info.json b/keyboards/keychron/k1_max/jis/rgb/info.json deleted file mode 100644 index d4e3143d08..0000000000 --- a/keyboards/keychron/k1_max/jis/rgb/info.json +++ /dev/null @@ -1,36 +0,0 @@ -{ - "usb": { - "pid": "0x0A12", - "device_version": "1.0.0" - }, - "features": { - "rgb_matrix": true - }, - "rgb_matrix": { - "driver": "snled27351_spi", - "sleep": true, - "animations": { - "band_spiral_val": true, - "breathing": true, - "cycle_all": true, - "cycle_left_right": true, - "cycle_out_in": true, - "cycle_out_in_dual": true, - "cycle_pinwheel": true, - "cycle_spiral": true, - "cycle_up_down": true, - "digital_rain": true, - "dual_beacon": true, - "jellybean_raindrops": true, - "pixel_rain": true, - "rainbow_beacon": true, - "rainbow_moving_chevron": true, - "solid_reactive_multinexus": true, - "solid_reactive_multiwide": true, - "solid_reactive_simple": true, - "solid_splash": true, - "splash": true, - "typing_heatmap": true - } - } -} diff --git a/keyboards/keychron/k1_max/jis/rgb/keymaps/default/keymap.c b/keyboards/keychron/k1_max/jis/rgb/keymaps/default/keymap.c deleted file mode 100644 index ceb9b7f9b3..0000000000 --- a/keyboards/keychron/k1_max/jis/rgb/keymaps/default/keymap.c +++ /dev/null @@ -1,67 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#include QMK_KEYBOARD_H -#include "keychron_common.h" - -enum layers { - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN, -}; -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_jis_91( - KC_ESC, KC_BRID, KC_BRIU, KC_MCTRL, KC_LNPAD, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_SNAP, KC_SIRI, RGB_MOD, - KC_GRV, 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_INT3, KC_BSPC, KC_INS, KC_HOME, KC_PGUP, - 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_DEL, KC_END, KC_PGDN, - 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_BSLS, 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_INT1, KC_RSFT, KC_UP, - KC_LCTL, KC_LOPTN, KC_LCMMD, KC_LNG2, KC_SPC, KC_LNG1, KC_RCMMD, KC_ROPTN, MO(MAC_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - - [MAC_FN] = LAYOUT_jis_91( - _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, RGB_TOG, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - - [WIN_BASE] = LAYOUT_jis_91( - KC_ESC, 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_PSCR, KC_CTANA, RGB_MOD, - KC_GRV, 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_INT3, KC_BSPC, KC_INS, KC_HOME, KC_PGUP, - 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_DEL, KC_END, KC_PGDN, - 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_BSLS, 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_INT1, KC_RSFT, KC_UP, - KC_LCTL, KC_LWIN, KC_LALT, KC_INT5, KC_SPC, KC_INT4, KC_RALT, KC_RGUI, MO(WIN_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - - [WIN_FN] = LAYOUT_jis_91( - _______, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, RGB_TOG, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), -}; - -// clang-format on -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - if (!process_record_keychron_common(keycode, record)) { - return false; - } - return true; -} diff --git a/keyboards/keychron/k1_max/jis/rgb/keymaps/via/keymap.c b/keyboards/keychron/k1_max/jis/rgb/keymaps/via/keymap.c deleted file mode 100644 index ceb9b7f9b3..0000000000 --- a/keyboards/keychron/k1_max/jis/rgb/keymaps/via/keymap.c +++ /dev/null @@ -1,67 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#include QMK_KEYBOARD_H -#include "keychron_common.h" - -enum layers { - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN, -}; -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_jis_91( - KC_ESC, KC_BRID, KC_BRIU, KC_MCTRL, KC_LNPAD, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_SNAP, KC_SIRI, RGB_MOD, - KC_GRV, 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_INT3, KC_BSPC, KC_INS, KC_HOME, KC_PGUP, - 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_DEL, KC_END, KC_PGDN, - 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_BSLS, 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_INT1, KC_RSFT, KC_UP, - KC_LCTL, KC_LOPTN, KC_LCMMD, KC_LNG2, KC_SPC, KC_LNG1, KC_RCMMD, KC_ROPTN, MO(MAC_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - - [MAC_FN] = LAYOUT_jis_91( - _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, RGB_TOG, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - - [WIN_BASE] = LAYOUT_jis_91( - KC_ESC, 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_PSCR, KC_CTANA, RGB_MOD, - KC_GRV, 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_INT3, KC_BSPC, KC_INS, KC_HOME, KC_PGUP, - 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_DEL, KC_END, KC_PGDN, - 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_BSLS, 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_INT1, KC_RSFT, KC_UP, - KC_LCTL, KC_LWIN, KC_LALT, KC_INT5, KC_SPC, KC_INT4, KC_RALT, KC_RGUI, MO(WIN_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - - [WIN_FN] = LAYOUT_jis_91( - _______, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, RGB_TOG, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), -}; - -// clang-format on -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - if (!process_record_keychron_common(keycode, record)) { - return false; - } - return true; -} diff --git a/keyboards/keychron/k1_max/jis/rgb/keymaps/via/rules.mk b/keyboards/keychron/k1_max/jis/rgb/keymaps/via/rules.mk deleted file mode 100644 index 1e5b99807c..0000000000 --- a/keyboards/keychron/k1_max/jis/rgb/keymaps/via/rules.mk +++ /dev/null @@ -1 +0,0 @@ -VIA_ENABLE = yes diff --git a/keyboards/keychron/k1_max/jis/rgb/rgb.c b/keyboards/keychron/k1_max/jis/rgb/rgb.c deleted file mode 100644 index e73a37c12b..0000000000 --- a/keyboards/keychron/k1_max/jis/rgb/rgb.c +++ /dev/null @@ -1,157 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#include "quantum.h" - -// clang-format off -#ifdef RGB_MATRIX_ENABLE -const snled27351_led_t g_snled27351_leds[RGB_MATRIX_LED_COUNT] = { -/* Refer to SNLED27351 manual for these locations - * driver - * | R location - * | | G location - * | | | B location - * | | | | */ - {0, I_1, G_1, H_1}, - {0, I_2, G_2, H_2}, - {0, I_3, G_3, H_3}, - {0, I_4, G_4, H_4}, - {0, I_5, G_5, H_5}, - {0, I_6, G_6, H_6}, - {0, I_7, G_7, H_7}, - {0, I_8, G_8, H_8}, - {0, I_9, G_9, H_9}, - {0, I_10, G_10, H_10}, - {0, I_11, G_11, H_11}, - {0, I_12, G_12, H_12}, - {0, I_13, G_13, H_13}, - {0, I_15, G_15, H_15}, - {0, I_16, G_16, H_16}, - {1, F_8, D_8, E_8}, - - {0, F_1, D_1, E_1}, - {0, F_2, D_2, E_2}, - {0, F_3, D_3, E_3}, - {0, F_4, D_4, E_4}, - {0, F_5, D_5, E_5}, - {0, F_6, D_6, E_6}, - {0, F_7, D_7, E_7}, - {0, F_8, D_8, E_8}, - {0, F_9, D_9, E_9}, - {0, F_10, D_10, E_10}, - {0, F_11, D_11, E_11}, - {0, F_12, D_12, E_12}, - {0, F_13, D_13, E_13}, - {0, F_14, D_14, E_14}, - {0, F_15, D_15, E_15}, - {0, F_16, D_16, E_16}, - {1, F_9, D_9, E_9}, - - {0, A_1, C_1, B_1}, - {0, A_2, C_2, B_2}, - {0, A_3, C_3, B_3}, - {0, A_4, C_4, B_4}, - {0, A_5, C_5, B_5}, - {0, A_6, C_6, B_6}, - {0, A_7, C_7, B_7}, - {0, A_8, C_8, B_8}, - {0, A_9, C_9, B_9}, - {0, A_10, C_10, B_10}, - {0, A_11, C_11, B_11}, - {0, A_12, C_12, B_12}, - {0, A_13, C_13, B_13}, - {0, A_14, C_14, B_14}, - {0, A_15, C_15, B_15}, - {0, A_16, C_16, B_16}, - {1, F_6, D_6, E_6}, - - {1, I_1, G_1, H_1}, - {1, I_2, G_2, H_2}, - {1, I_3, G_3, H_3}, - {1, I_4, G_4, H_4}, - {1, I_5, G_5, H_5}, - {1, I_6, G_6, H_6}, - {1, I_7, G_7, H_7}, - {1, I_8, G_8, H_8}, - {1, I_9, G_9, H_9}, - {1, I_10, G_10, H_10}, - {1, I_11, G_11, H_11}, - {1, I_12, G_12, H_12}, - {1, F_5, D_5, E_5}, - {1, I_14, G_14, H_14}, - - {1, C_1, A_1, B_1}, - {1, C_3, A_3, B_3}, - {1, C_4, A_4, B_4}, - {1, C_5, A_5, B_5}, - {1, C_6, A_6, B_6}, - {1, C_7, A_7, B_7}, - {1, C_8, A_8, B_8}, - {1, C_9, A_9, B_9}, - {1, C_10, A_10, B_10}, - {1, C_11, A_11, B_11}, - {1, C_12, A_12, B_12}, - {1, C_13, A_13, B_13}, - {1, C_14, A_14, B_14}, - {1, C_16, A_16, B_16}, - - {1, F_1, D_1, E_1}, - {1, F_2, D_2, E_2}, - {1, F_3, D_3, E_3}, - {1, F_4, D_4, E_4}, - {1, F_7, D_7, E_7}, - {1, F_10, D_10, E_10}, - {1, F_11, D_11, E_11}, - {1, F_12, D_12, E_12}, - {1, F_13, D_13, E_13}, - {1, F_14, D_14, E_14}, - {1, F_15, D_15, E_15}, - {1, F_16, D_16, E_16}, - {1, C_15, A_15, B_15}, -}; - -#define __ NO_LED - -led_config_t g_led_config = { - { - // Key Matrix to LED Index - { 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, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49 }, - { 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, __, __, __ }, - { 64, __, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, __, 77, __ }, - { 78, 79, 80, 81, __, __, 82, __, __, 83, 84, 85, 86, 87, 88, 89, 90 }, - }, - { - // LED Index to Physical Position - {0, 0}, {26, 0}, {39, 0}, {52, 0}, {65, 0}, {85, 0}, { 98, 0}, {111, 0}, {124, 0}, {144, 0}, {157, 0}, {170, 0}, {183, 0}, {198, 0}, {211, 0}, {224, 0}, - {0,14}, {13,14}, {26,14}, {39,14}, {52,14}, {65,14}, {79,14}, { 92,14}, {105,14}, {118,14}, {131,14}, {144,14}, {157,14}, {170,14}, {183,14}, {198,14}, {211,14}, - {3,26}, {20,26}, {33,26}, {46,26}, {59,26}, {72,26}, {85,26}, { 98,26}, {111,26}, {124,26}, {138,26}, {151,26}, {164,26}, {182,33}, {198,26}, {211,26}, {224,26}, - {5,39}, {23,39}, {36,39}, {49,39}, {62,39}, {75,39}, {88,39}, {102,39}, {115,39}, {128,39}, {141,39}, {154,39}, {224,14}, {167,39}, - {8,51}, {30,51}, {43,51}, {56,51}, {69,51}, {82,51}, { 95,51}, {108,51}, {121,51}, {134,51}, {147,51}, {160,51}, {178,51}, {211,51}, - {2,64}, {16,64}, {31,64}, {46,64}, {85,64}, {124,64}, {139,64}, {154,64}, {167,64}, {182,64}, {198,64}, {211,64}, {224,64}, - }, - { - // RGB LED Index to Flag - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - } -}; -#endif diff --git a/keyboards/keychron/k1_max/jis/rgb/rules.mk b/keyboards/keychron/k1_max/jis/rgb/rules.mk deleted file mode 100644 index 6e7633bfe0..0000000000 --- a/keyboards/keychron/k1_max/jis/rgb/rules.mk +++ /dev/null @@ -1 +0,0 @@ -# This file intentionally left blank diff --git a/keyboards/keychron/k1_max/jis/white/config.h b/keyboards/keychron/k1_max/jis/white/config.h deleted file mode 100644 index d8073ea124..0000000000 --- a/keyboards/keychron/k1_max/jis/white/config.h +++ /dev/null @@ -1,46 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#pragma once - -#ifdef LED_MATRIX_ENABLE -/* LED matrix driver configuration */ -# define LED_MATRIX_LED_COUNT 91 -# define DRIVER_COUNT 1 -# define DRIVER_CS_PINS \ - { B9 } - - -/* Use first 6 channels of LED driver */ -# define SNLED27351_PHASE_CHANNEL MSKPHASE_6CHANNEL -/* Set LED driver current */ -# define SNLED27351_CURRENT_TUNE \ - { 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20 } - -/* Set to infinit, which is use in USB mode by default */ -# define LED_MATRIX_TIMEOUT LED_MATRIX_TIMEOUT_INFINITE -/* Allow shutdown of led driver to save power */ -# define LED_MATRIX_DRIVER_SHUTDOWN_ENABLE -/* Turn off backlight on low brightness to save power */ -# define LED_MATRIX_BRIGHTNESS_TURN_OFF_VAL 48 - -/* Low battery indicating led */ -# define LOW_BAT_IND_INDEX \ - { 82 } - -# define LED_MATRIX_KEYPRESSES - -#endif diff --git a/keyboards/keychron/k1_max/jis/white/info.json b/keyboards/keychron/k1_max/jis/white/info.json deleted file mode 100644 index c363ce9c83..0000000000 --- a/keyboards/keychron/k1_max/jis/white/info.json +++ /dev/null @@ -1,30 +0,0 @@ -{ - "usb": { - "pid": "0x0A15", - "device_version": "1.0.0" - }, - "features": { - "led_matrix": true - }, - "led_matrix": { - "driver": "snled27351_spi", - "sleep": true, - "animations": { - "none": true, - "solid": true, - "breathing": true, - "band_pinwheel": true, - "band_spiral": true, - "cycle_left_right": true, - "cycle_up_down": true, - "cycle_out_in": true, - "dual_beacon": true, - "solid_reactive_simple": true, - "solid_reactive_multiwide": true, - "solid_reactive_multinexus": true, - "solid_splash": true, - "wave_left_right": true, - "wave_up_down": true - } - } -} diff --git a/keyboards/keychron/k1_max/jis/white/keymaps/default/keymap.c b/keyboards/keychron/k1_max/jis/white/keymaps/default/keymap.c deleted file mode 100644 index 10df4f3918..0000000000 --- a/keyboards/keychron/k1_max/jis/white/keymaps/default/keymap.c +++ /dev/null @@ -1,67 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#include QMK_KEYBOARD_H -#include "keychron_common.h" - -enum layers { - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN, -}; -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_jis_91( - KC_ESC, KC_BRID, KC_BRIU, KC_MCTRL, KC_LNPAD, BL_DOWN, BL_UP, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_SNAP, KC_SIRI, BL_STEP, - KC_GRV, 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_INT3, KC_BSPC, KC_INS, KC_HOME, KC_PGUP, - 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_DEL, KC_END, KC_PGDN, - 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_BSLS, 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_INT1, KC_RSFT, KC_UP, - KC_LCTL, KC_LOPTN, KC_LCMMD, KC_LNG2, KC_SPC, KC_LNG1, KC_RCMMD, KC_ROPTN, MO(MAC_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - - [MAC_FN] = LAYOUT_jis_91( - _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, BL_TOGG, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - BL_TOGG, BL_STEP, BL_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, BL_DOWN, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - - [WIN_BASE] = LAYOUT_jis_91( - KC_ESC, 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_PSCR, KC_CTANA, BL_STEP, - KC_GRV, 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_INT3, KC_BSPC, KC_INS, KC_HOME, KC_PGUP, - 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_DEL, KC_END, KC_PGDN, - 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_BSLS, 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_INT1, KC_RSFT, KC_UP, - KC_LCTL, KC_LWIN, KC_LALT, KC_INT5, KC_SPC, KC_INT4, KC_RALT, KC_RGUI, MO(WIN_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - - [WIN_FN] = LAYOUT_jis_91( - _______, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, BL_DOWN, BL_UP, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, BL_TOGG, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - BL_TOGG, BL_STEP, BL_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, BL_DOWN, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), -}; - -// clang-format on -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - if (!process_record_keychron_common(keycode, record)) { - return false; - } - return true; -} diff --git a/keyboards/keychron/k1_max/jis/white/keymaps/via/keymap.c b/keyboards/keychron/k1_max/jis/white/keymaps/via/keymap.c deleted file mode 100644 index 10df4f3918..0000000000 --- a/keyboards/keychron/k1_max/jis/white/keymaps/via/keymap.c +++ /dev/null @@ -1,67 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#include QMK_KEYBOARD_H -#include "keychron_common.h" - -enum layers { - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN, -}; -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_jis_91( - KC_ESC, KC_BRID, KC_BRIU, KC_MCTRL, KC_LNPAD, BL_DOWN, BL_UP, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_SNAP, KC_SIRI, BL_STEP, - KC_GRV, 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_INT3, KC_BSPC, KC_INS, KC_HOME, KC_PGUP, - 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_DEL, KC_END, KC_PGDN, - 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_BSLS, 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_INT1, KC_RSFT, KC_UP, - KC_LCTL, KC_LOPTN, KC_LCMMD, KC_LNG2, KC_SPC, KC_LNG1, KC_RCMMD, KC_ROPTN, MO(MAC_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - - [MAC_FN] = LAYOUT_jis_91( - _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, BL_TOGG, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - BL_TOGG, BL_STEP, BL_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, BL_DOWN, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - - [WIN_BASE] = LAYOUT_jis_91( - KC_ESC, 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_PSCR, KC_CTANA, BL_STEP, - KC_GRV, 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_INT3, KC_BSPC, KC_INS, KC_HOME, KC_PGUP, - 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_DEL, KC_END, KC_PGDN, - 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_BSLS, 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_INT1, KC_RSFT, KC_UP, - KC_LCTL, KC_LWIN, KC_LALT, KC_INT5, KC_SPC, KC_INT4, KC_RALT, KC_RGUI, MO(WIN_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - - [WIN_FN] = LAYOUT_jis_91( - _______, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, BL_DOWN, BL_UP, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, BL_TOGG, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - BL_TOGG, BL_STEP, BL_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, BL_DOWN, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), -}; - -// clang-format on -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - if (!process_record_keychron_common(keycode, record)) { - return false; - } - return true; -} diff --git a/keyboards/keychron/k1_max/jis/white/keymaps/via/rules.mk b/keyboards/keychron/k1_max/jis/white/keymaps/via/rules.mk deleted file mode 100644 index 1e5b99807c..0000000000 --- a/keyboards/keychron/k1_max/jis/white/keymaps/via/rules.mk +++ /dev/null @@ -1 +0,0 @@ -VIA_ENABLE = yes diff --git a/keyboards/keychron/k1_max/jis/white/rules.mk b/keyboards/keychron/k1_max/jis/white/rules.mk deleted file mode 100644 index 6e7633bfe0..0000000000 --- a/keyboards/keychron/k1_max/jis/white/rules.mk +++ /dev/null @@ -1 +0,0 @@ -# This file intentionally left blank diff --git a/keyboards/keychron/k1_max/jis/white/white.c b/keyboards/keychron/k1_max/jis/white/white.c deleted file mode 100644 index b8855d9d83..0000000000 --- a/keyboards/keychron/k1_max/jis/white/white.c +++ /dev/null @@ -1,155 +0,0 @@ -/* Copyright 2024 @ 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/>. - */ - -#include "quantum.h" - -// clang-format off -#ifdef LED_MATRIX_ENABLE -const snled27351_led_t g_snled27351_leds[LED_MATRIX_LED_COUNT] = { -/* Refer to SNLED27351 manual for these locations - * driver - * | LED address - * | | */ - {0, F_1}, - {0, F_2}, - {0, F_3}, - {0, F_4}, - {0, F_5}, - {0, F_6}, - {0, F_7}, - {0, F_8}, - {0, F_9}, - {0, F_10}, - {0, F_11}, - {0, F_12}, - {0, F_13}, - {0, F_15}, - {0, F_16}, - {0, A_8}, - - {0, E_1}, - {0, E_2}, - {0, E_3}, - {0, E_4}, - {0, E_5}, - {0, E_6}, - {0, E_7}, - {0, E_8}, - {0, E_9}, - {0, E_10}, - {0, E_11}, - {0, E_12}, - {0, E_13}, - {0, E_14}, - {0, E_15}, - {0, E_16}, - {0, A_9}, - - {0, D_1}, - {0, D_2}, - {0, D_3}, - {0, D_4}, - {0, D_5}, - {0, D_6}, - {0, D_7}, - {0, D_8}, - {0, D_9}, - {0, D_10}, - {0, D_11}, - {0, D_12}, - {0, D_13}, - {0, D_14}, - {0, D_15}, - {0, D_16}, - {0, A_6}, - - {0, C_1}, - {0, C_2}, - {0, C_3}, - {0, C_4}, - {0, C_5}, - {0, C_6}, - {0, C_7}, - {0, C_8}, - {0, C_9}, - {0, C_10}, - {0, C_11}, - {0, C_12}, - {0, A_5}, - {0, C_14}, - - {0, B_1}, - {0, B_3}, - {0, B_4}, - {0, B_5}, - {0, B_6}, - {0, B_7}, - {0, B_8}, - {0, B_9}, - {0, B_10}, - {0, B_11}, - {0, B_12}, - {0, B_13}, - {0, B_14}, - {0, B_16}, - - {0, A_1}, - {0, A_2}, - {0, A_3}, - {0, A_4}, - {0, A_7}, - {0, A_10}, - {0, A_11}, - {0, A_12}, - {0, A_13}, - {0, A_14}, - {0, A_15}, - {0, A_16}, - {0, B_15}, -}; - -#define __ NO_LED - -led_config_t g_led_config = { - { - // Key Matrix to LED Index - { 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, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49 }, - { 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, __, __, __ }, - { 64, __, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, __, 77, __ }, - { 78, 79, 80, 81, __, __, 82, __, __, 83, 84, 85, 86, 87, 88, 89, 90 }, - }, - { - // LED Index to Physical Position - {0, 0}, {26, 0}, {39, 0}, {52, 0}, {65, 0}, {85, 0}, { 98, 0}, {111, 0}, {124, 0}, {144, 0}, {157, 0}, {170, 0}, {183, 0}, {198, 0}, {211, 0}, {224, 0}, - {0,14}, {13,14}, {26,14}, {39,14}, {52,14}, {65,14}, {79,14}, { 92,14}, {105,14}, {118,14}, {131,14}, {144,14}, {157,14}, {170,14}, {183,14}, {198,14}, {211,14}, - {3,26}, {20,26}, {33,26}, {46,26}, {59,26}, {72,26}, {85,26}, { 98,26}, {111,26}, {124,26}, {138,26}, {151,26}, {164,26}, {182,33}, {198,26}, {211,26}, {224,26}, - {5,39}, {23,39}, {36,39}, {49,39}, {62,39}, {75,39}, {88,39}, {102,39}, {115,39}, {128,39}, {141,39}, {154,39}, {224,14}, {167,39}, - {8,51}, {30,51}, {43,51}, {56,51}, {69,51}, {82,51}, { 95,51}, {108,51}, {121,51}, {134,51}, {147,51}, {160,51}, {178,51}, {211,51}, - {2,64}, {16,64}, {31,64}, {46,64}, {85,64}, {124,64}, {139,64}, {154,64}, {167,64}, {182,64}, {198,64}, {211,64}, {224,64}, - }, - { - // RGB LED Index to Flag - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - } -}; -#endif diff --git a/keyboards/keychron/k1_max/k1_max.c b/keyboards/keychron/k1_max/k1_max.c deleted file mode 100644 index f8f22e77e1..0000000000 --- a/keyboards/keychron/k1_max/k1_max.c +++ /dev/null @@ -1,96 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#include "quantum.h" -#include "keychron_task.h" -#ifdef FACTORY_TEST_ENABLE -# include "factory_test.h" -# include "keychron_common.h" -#endif -#ifdef LK_WIRELESS_ENABLE -# include "lkbt51.h" -# include "wireless.h" -# include "transport.h" -# include "keychron_wireless_common.h" -# include "battery.h" -#endif - -#define POWER_ON_LED_DURATION 3000 -static uint32_t power_on_indicator_timer; - -#ifdef LK_WIRELESS_ENABLE -pin_t bt_led_pins[] = BT_HOST_LED_PIN_LIST; -pin_t p24g_led_pins[] = P24G_HOST_LED_PIN_LIST; -#endif - -bool dip_switch_update_kb(uint8_t index, bool active) { - if (index == 0) { - default_layer_set(1UL << (active ? 0 : 2)); - } - dip_switch_update_user(index, active); - - return true; -} - -void keyboard_post_init_kb(void) { -#ifdef LK_WIRELESS_ENABLE - palSetLineMode(P2P4_MODE_SELECT_PIN, PAL_MODE_INPUT); - palSetLineMode(BT_MODE_SELECT_PIN, PAL_MODE_INPUT); - - writePin(BAT_LOW_LED_PIN, BAT_LOW_LED_PIN_ON_STATE); - lkbt51_init(false); - wireless_init(); -#endif - - power_on_indicator_timer = timer_read32(); - keyboard_post_init_user(); -} - -bool keychron_task_kb(void) { - if (power_on_indicator_timer) { - if (timer_elapsed32(power_on_indicator_timer) > POWER_ON_LED_DURATION) { - power_on_indicator_timer = 0; - - if (!host_keyboard_led_state().caps_lock) writePin(LED_CAPS_LOCK_PIN, !LED_PIN_ON_STATE); -#ifdef LK_WIRELESS_ENABLE - writePin(BAT_LOW_LED_PIN, !BAT_LOW_LED_PIN_ON_STATE); - for (uint8_t i = 0; i < sizeof(bt_led_pins) / sizeof(pin_t); i++) - writePin(bt_led_pins[i], 1); - for (uint8_t i = 0; i < sizeof(p24g_led_pins) / sizeof(pin_t); i++) - writePin(p24g_led_pins[i], 1); -#endif - - } else { - writePin(LED_CAPS_LOCK_PIN, LED_PIN_ON_STATE); -#ifdef LK_WIRELESS_ENABLE - writePin(BAT_LOW_LED_PIN, BAT_LOW_LED_PIN_ON_STATE); - if (get_transport() != TRANSPORT_P2P4) - for (uint8_t i = 0; i < sizeof(bt_led_pins) / sizeof(pin_t); i++) - writePin(bt_led_pins[i], 0); - if (get_transport() != TRANSPORT_BLUETOOTH) - for (uint8_t i = 0; i < sizeof(p24g_led_pins) / sizeof(pin_t); i++) - writePin(p24g_led_pins[i], 0); -#endif - } - } - return true; -} - -#ifdef LK_WIRELESS_ENABLE -bool lpm_is_kb_idle(void) { - return power_on_indicator_timer == 0 && !factory_reset_indicating(); -} -#endif diff --git a/keyboards/keychron/k1_max/mcuconf.h b/keyboards/keychron/k1_max/mcuconf.h deleted file mode 100644 index 89294ee64b..0000000000 --- a/keyboards/keychron/k1_max/mcuconf.h +++ /dev/null @@ -1,37 +0,0 @@ -/* Copyright 2024 @ 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 - -#include_next - -#undef STM32_HSECLK -#define STM32_HSECLK 16000000 - -#undef STM32_PLLM_VALUE -#define STM32_PLLM_VALUE 8 - -#undef STM32_PLLN_VALUE -#define STM32_PLLN_VALUE 96 - -#undef STM32_PLLP_VALUE -#define STM32_PLLP_VALUE 4 - -#undef STM32_PLLQ_VALUE -#define STM32_PLLQ_VALUE 4 - -#undef STM32_SPI_USE_SPI1 -#define STM32_SPI_USE_SPI1 TRUE diff --git a/keyboards/keychron/k1_max/readme.md b/keyboards/keychron/k1_max/readme.md deleted file mode 100644 index 226dd15cfe..0000000000 --- a/keyboards/keychron/k1_max/readme.md +++ /dev/null @@ -1,23 +0,0 @@ -# Keychron K1 Max - -![Keychron K1 Max](https://cdn.shopify.com/s/files/1/0059/0630/1017/files/Keychron-K1-Max-Wireless-Mechanical-Keyboard-3.jpg?v=1704333966) - -A customizable 87 keys TKL keyboard. - -* Keyboard Maintainer: [Keychron](https://github.com/keychron) -* Hardware Supported: Keychron K1 Max -* Hardware Availability: [Keychron K1 Max QMK/VIA Wireless Custom Mechanical Keyboard](https://www.keychron.com/products/keychron-k1-max-qmk-via-wireless-custom-mechanical-keyboard) - -Make example for this keyboard (after setting up your build environment): - - make keychron/k1_max/ansi/rgb:default - make keychron/k1_max/ansi/white:default - -Flashing example for this keyboard: - - make keychron/k1_max/ansi/rgb:default:flash - make keychron/k1_max/ansi/white:default:flash - -**Reset Key**: Toggle mode switch to "Cable", hold down the *Esc* key or reset button underneath space bar while connecting the USB cable, - -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). diff --git a/keyboards/keychron/k1_max/rules.mk b/keyboards/keychron/k1_max/rules.mk deleted file mode 100644 index 4eaf6820bc..0000000000 --- a/keyboards/keychron/k1_max/rules.mk +++ /dev/null @@ -1,4 +0,0 @@ -include keyboards/keychron/common/wireless/wireless.mk -include keyboards/keychron/common/keychron_common.mk - -VPATH += $(TOP_DIR)/keyboards/keychron diff --git a/keyboards/keychron/k1_max/via_json/k1_max_ansi_rgb.json b/keyboards/keychron/k1_max/via_json/k1_max_ansi_rgb.json deleted file mode 100644 index df20df1838..0000000000 --- a/keyboards/keychron/k1_max/via_json/k1_max_ansi_rgb.json +++ /dev/null @@ -1,293 +0,0 @@ -{ - "name": "Keychron K1 Max ANSI RGB", - "vendorId": "0x3434", - "productId": "0x0A10", - "keycodes": ["qmk_lighting"], - "menus": [ - { - "label": "Lighting", - "content": [ - { - "label": "Backlight", - "content": [ - { - "label": "Brightness", - "type": "range", - "options": [0, 255], - "content": ["id_qmk_rgb_matrix_brightness", 3, 1] - }, - { - "label": "Effect", - "type": "dropdown", - "content": ["id_qmk_rgb_matrix_effect", 3, 2], - "options": [ - ["None", 0], - ["Solid Color", 1], - ["Breathing", 2], - ["Band Spiral Val", 3], - ["Cycle All", 4], - ["Cycle Left Right", 5], - ["Cycle Up Down", 6], - ["Rainbow Moving Chevron", 7], - ["Cycle Out In", 8], - ["Cycle Out In Dual", 9], - ["Cycle Pinwheel", 10], - ["Cycle Spiral", 11], - ["Dual Beacon", 12], - ["Rainbow Beacon", 13], - ["Jellybean Raindrops", 14], - ["Pixel Rain", 15], - ["Typing Heatmap", 16], - ["Digital Rain", 17], - ["Reactive Simple", 18], - ["Reactive Multiwide", 19], - ["Reactive Multinexus", 20], - ["Splash", 21], - ["Solid Splash", 22] - ] - }, - { - "showIf": "{id_qmk_rgb_matrix_effect} > 1", - "label": "Effect Speed", - "type": "range", - "options": [0, 255], - "content": ["id_qmk_rgb_matrix_effect_speed", 3, 3] - }, - { - "showIf": "{id_qmk_rgb_matrix_effect} != 0 && ( {id_qmk_rgb_matrix_effect} < 4 || {id_qmk_rgb_matrix_effect} == 18 || ({id_qmk_rgb_matrix_effect} > 17 && {id_qmk_rgb_matrix_effect} != 21) ) ", - "label": "Color", - "type": "color", - "content": ["id_qmk_rgb_matrix_color", 3, 4] - } - ] - } - ] - } - ], - "customKeycodes": [ - {"name": "Left Option", "title": "Left Option", "shortName": "LOpt"}, - {"name": "Right Option", "title": "Right Option", "shortName": "ROpt"}, - {"name": "Left Cmd", "title": "Left Command", "shortName": "LCmd"}, - {"name": "Right Cmd", "title": "Right Command", "shortName": "RCmd"}, - {"name": "Misson Control", "title": "Misson Control in Mac", "shortName": "MCtl"}, - {"name": "Lanuch Pad", "title": "Lanuch Pad in Windows", "shortName": "LPad"}, - {"name": "Task View", "title": "Task View in Windows", "shortName": "Task"}, - {"name": "File Explorer", "title": "File Explorer in Windows", "shortName": "File"}, - {"name": "Screen shot", "title": "Screenshot in macOS", "shortName": "SShot"}, - {"name": "Cortana", "title": "Cortana in Windows", "shortName": "Cortana"}, - {"name": "Siri", "title": "Siri in macOS", "shortName": "Siri"}, - {"name": "Bluetooth Host 1", "title": "Bluetooth Host 1", "shortName": "BTH1"}, - {"name": "Bluetooth Host 2", "title": "Bluetooth Host 2", "shortName": "BTH2"}, - {"name": "Bluetooth Host 3", "title": "Bluetooth Host 3", "shortName": "BTH3"}, - {"name": "2.4G", "title": "2.4G", "shortName": "2.4G"}, - {"name": "Battery Level", "title": "Show battery level", "shortName": "Batt"} - ], - "matrix": {"rows": 6, "cols" : 17}, - "layouts": { - "keymap": [ - [ - { - "c": "#777777" - }, - "0, 0", - { - "x": 1, - "c": "#cccccc" - }, - "0, 2", - "0, 3", - "0, 4", - "0, 5", - { - "x": 0.5, - "c": "#aaaaaa" - }, - "0, 6", - "0, 7", - "0, 8", - "0, 9", - { - "x": 0.5, - "c": "#cccccc" - }, - "0, 10", - "0, 11", - "0, 12", - "0, 13", - { - "x": 0.2 - }, - "0, 14", - "0, 15", - "0, 16" - ], - [ - { - "c": "#aaaaaa" - }, - "1, 0", - { - "c": "#cccccc" - }, - "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": 2, - "c": "#aaaaaa" - }, - "1, 13", - { - "x": 0.2, - "c": "#cccccc" - }, - "1, 14", - "1, 15", - "1, 16" - ], - [ - { - "w": 1.5, - "c": "#aaaaaa" - }, - "2, 0", - { - "c": "#cccccc" - }, - "2, 1", - "2, 2", - "2, 3", - "2, 4", - "2, 5", - "2, 6", - "2, 7", - "2, 8", - "2, 9", - "2, 10", - "2, 11", - "2, 12", - { - "w": 1.5, - "c": "#aaaaaa" - }, - "2, 13", - { - "x": 0.2, - "c": "#cccccc" - }, - "2, 14", - "2, 15", - "2, 16" - ], - [ - { - "w": 1.75, - "c": "#aaaaaa" - }, - "3, 0", - { - "c": "#cccccc" - }, - "3, 1", - "3, 2", - "3, 3", - "3, 4", - "3, 5", - "3, 6", - "3, 7", - "3, 8", - "3, 9", - "3, 10", - "3, 11", - { - "w": 2.25, - "c": "#777777" - }, - "3, 13" - ], - [ - { - "w": 2.25, - "c": "#aaaaaa" - }, - "4, 0", - { - "c": "#cccccc" - }, - "4, 2", - "4, 3", - "4, 4", - "4, 5", - "4, 6", - "4, 7", - "4, 8", - "4, 9", - "4, 10", - "4, 11", - { - "w": 2.75, - "c": "#aaaaaa" - }, - "4, 13", - { - "x": 1.2, - "c": "#cccccc" - }, - "4, 15" - ], - [ - { - "w": 1.25, - "c": "#aaaaaa" - }, - "5, 0", - { - "w": 1.25 - }, - "5, 1", - { - "w": 1.25 - }, - "5, 2", - { - "w": 6.25, - "c": "#cccccc" - }, - "5, 6", - { - "w": 1.25, - "c": "#aaaaaa" - }, - "5, 10", - { - "w": 1.25 - }, - "5, 11", - { - "w": 1.25 - }, - "5, 12", - { - "w": 1.25 - }, - "5, 13", - { - "x": 0.2, - "c": "#cccccc" - }, - "5, 14", - "5, 15", - "5, 16" - ] - ] - } - } diff --git a/keyboards/keychron/k1_max/via_json/k1_max_ansi_white.json b/keyboards/keychron/k1_max/via_json/k1_max_ansi_white.json deleted file mode 100644 index d93d34228a..0000000000 --- a/keyboards/keychron/k1_max/via_json/k1_max_ansi_white.json +++ /dev/null @@ -1,232 +0,0 @@ -{ - "name": "Keychron K1 Max ANSI White", - "vendorId": "0x3434", - "productId": "0x0A13", - "keycodes": ["qmk_lighting"], - "customKeycodes": [ - {"name": "Left Option", "title": "Left Option", "shortName": "LOpt"}, - {"name": "Right Option", "title": "Right Option", "shortName": "ROpt"}, - {"name": "Left Cmd", "title": "Left Command", "shortName": "LCmd"}, - {"name": "Right Cmd", "title": "Right Command", "shortName": "RCmd"}, - {"name": "Misson Control", "title": "Misson Control in Mac", "shortName": "MCtl"}, - {"name": "Lanuch Pad", "title": "Lanuch Pad in Windows", "shortName": "LPad"}, - {"name": "Task View", "title": "Task View in Windows", "shortName": "Task"}, - {"name": "File Explorer", "title": "File Explorer in Windows", "shortName": "File"}, - {"name": "Screen shot", "title": "Screenshot in macOS", "shortName": "SShot"}, - {"name": "Cortana", "title": "Cortana in Windows", "shortName": "Cortana"}, - {"name": "Siri", "title": "Siri in macOS", "shortName": "Siri"}, - {"name": "Bluetooth Host 1", "title": "Bluetooth Host 1", "shortName": "BTH1"}, - {"name": "Bluetooth Host 2", "title": "Bluetooth Host 2", "shortName": "BTH2"}, - {"name": "Bluetooth Host 3", "title": "Bluetooth Host 3", "shortName": "BTH3"}, - {"name": "2.4G", "title": "2.4G", "shortName": "2.4G"}, - {"name": "Battery Level", "title": "Show battery level", "shortName": "Batt"} - ], - "matrix": {"rows": 6, "cols" : 17}, - "layouts": { - "keymap": [ - [ - { - "c": "#777777" - }, - "0, 0", - { - "x": 1, - "c": "#cccccc" - }, - "0, 2", - "0, 3", - "0, 4", - "0, 5", - { - "x": 0.5, - "c": "#aaaaaa" - }, - "0, 6", - "0, 7", - "0, 8", - "0, 9", - { - "x": 0.5, - "c": "#cccccc" - }, - "0, 10", - "0, 11", - "0, 12", - "0, 13", - { - "x": 0.2 - }, - "0, 14", - "0, 15", - "0, 16" - ], - [ - { - "c": "#aaaaaa" - }, - "1, 0", - { - "c": "#cccccc" - }, - "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": 2, - "c": "#aaaaaa" - }, - "1, 13", - { - "x": 0.2, - "c": "#cccccc" - }, - "1, 14", - "1, 15", - "1, 16" - ], - [ - { - "w": 1.5, - "c": "#aaaaaa" - }, - "2, 0", - { - "c": "#cccccc" - }, - "2, 1", - "2, 2", - "2, 3", - "2, 4", - "2, 5", - "2, 6", - "2, 7", - "2, 8", - "2, 9", - "2, 10", - "2, 11", - "2, 12", - { - "w": 1.5, - "c": "#aaaaaa" - }, - "2, 13", - { - "x": 0.2, - "c": "#cccccc" - }, - "2, 14", - "2, 15", - "2, 16" - ], - [ - { - "w": 1.75, - "c": "#aaaaaa" - }, - "3, 0", - { - "c": "#cccccc" - }, - "3, 1", - "3, 2", - "3, 3", - "3, 4", - "3, 5", - "3, 6", - "3, 7", - "3, 8", - "3, 9", - "3, 10", - "3, 11", - { - "w": 2.25, - "c": "#777777" - }, - "3, 13" - ], - [ - { - "w": 2.25, - "c": "#aaaaaa" - }, - "4, 0", - { - "c": "#cccccc" - }, - "4, 2", - "4, 3", - "4, 4", - "4, 5", - "4, 6", - "4, 7", - "4, 8", - "4, 9", - "4, 10", - "4, 11", - { - "w": 2.75, - "c": "#aaaaaa" - }, - "4, 13", - { - "x": 1.2, - "c": "#cccccc" - }, - "4, 15" - ], - [ - { - "w": 1.25, - "c": "#aaaaaa" - }, - "5, 0", - { - "w": 1.25 - }, - "5, 1", - { - "w": 1.25 - }, - "5, 2", - { - "w": 6.25, - "c": "#cccccc" - }, - "5, 6", - { - "w": 1.25, - "c": "#aaaaaa" - }, - "5, 10", - { - "w": 1.25 - }, - "5, 11", - { - "w": 1.25 - }, - "5, 12", - { - "w": 1.25 - }, - "5, 13", - { - "x": 0.2, - "c": "#cccccc" - }, - "5, 14", - "5, 15", - "5, 16" - ] - ] - } - } diff --git a/keyboards/keychron/k1_max/via_json/k1_max_jis_rgb .json b/keyboards/keychron/k1_max/via_json/k1_max_jis_rgb .json deleted file mode 100644 index 0a40564b5c..0000000000 --- a/keyboards/keychron/k1_max/via_json/k1_max_jis_rgb .json +++ /dev/null @@ -1,294 +0,0 @@ -{ - "name": "Keychron K1 Max JIS RGB", - "vendorId": "0x3434", - "productId": "0x0A12", - "keycodes": ["qmk_lighting"], - "menus": [ - { - "label": "Lighting", - "content": [ - { - "label": "Backlight", - "content": [ - { - "label": "Brightness", - "type": "range", - "options": [0, 255], - "content": ["id_qmk_rgb_matrix_brightness", 3, 1] - }, - { - "label": "Effect", - "type": "dropdown", - "content": ["id_qmk_rgb_matrix_effect", 3, 2], - "options": [ - ["None", 0], - ["Solid Color", 1], - ["Breathing", 2], - ["Band Spiral Val", 3], - ["Cycle All", 4], - ["Cycle Left Right", 5], - ["Cycle Up Down", 6], - ["Rainbow Moving Chevron", 7], - ["Cycle Out In", 8], - ["Cycle Out In Dual", 9], - ["Cycle Pinwheel", 10], - ["Cycle Spiral", 11], - ["Dual Beacon", 12], - ["Rainbow Beacon", 13], - ["Jellybean Raindrops", 14], - ["Pixel Rain", 15], - ["Typing Heatmap", 16], - ["Digital Rain", 17], - ["Reactive Simple", 18], - ["Reactive Multiwide", 19], - ["Reactive Multinexus", 20], - ["Splash", 21], - ["Solid Splash", 22] - ] - }, - { - "showIf": "{id_qmk_rgb_matrix_effect} > 1", - "label": "Effect Speed", - "type": "range", - "options": [0, 255], - "content": ["id_qmk_rgb_matrix_effect_speed", 3, 3] - }, - { - "showIf": "{id_qmk_rgb_matrix_effect} != 0 && ( {id_qmk_rgb_matrix_effect} < 4 || {id_qmk_rgb_matrix_effect} == 18 || ({id_qmk_rgb_matrix_effect} > 17 && {id_qmk_rgb_matrix_effect} != 21) ) ", - "label": "Color", - "type": "color", - "content": ["id_qmk_rgb_matrix_color", 3, 4] - } - ] - } - ] - } - ], - "customKeycodes": [ - {"name": "Left Option", "title": "Left Option", "shortName": "LOpt"}, - {"name": "Right Option", "title": "Right Option", "shortName": "ROpt"}, - {"name": "Left Cmd", "title": "Left Command", "shortName": "LCmd"}, - {"name": "Right Cmd", "title": "Right Command", "shortName": "RCmd"}, - {"name": "Misson Control", "title": "Misson Control in Mac", "shortName": "MCtl"}, - {"name": "Lanuch Pad", "title": "Lanuch Pad in Windows", "shortName": "LPad"}, - {"name": "Task View", "title": "Task View in Windows", "shortName": "Task"}, - {"name": "File Explorer", "title": "File Explorer in Windows", "shortName": "File"}, - {"name": "Screen shot", "title": "Screenshot in macOS", "shortName": "SShot"}, - {"name": "Cortana", "title": "Cortana in Windows", "shortName": "Cortana"}, - {"name": "Siri", "title": "Siri in macOS", "shortName": "Siri"}, - {"name": "Bluetooth Host 1", "title": "Bluetooth Host 1", "shortName": "BTH1"}, - {"name": "Bluetooth Host 2", "title": "Bluetooth Host 2", "shortName": "BTH2"}, - {"name": "Bluetooth Host 3", "title": "Bluetooth Host 3", "shortName": "BTH3"}, - {"name": "2.4G", "title": "2.4G", "shortName": "2.4G"}, - {"name": "Battery Level", "title": "Show battery level", "shortName": "Batt"} - ], - "matrix": {"rows": 6, "cols" : 17}, - "layouts": { - "keymap": [ - [ - { - "c": "#777777" - }, - "0, 0", - { - "x": 1, - "c": "#cccccc" - }, - "0, 2", - "0, 3", - "0, 4", - "0, 5", - { - "x": 0.5, - "c": "#aaaaaa" - }, - "0, 6", - "0, 7", - "0, 8", - "0, 9", - { - "x": 0.5, - "c": "#cccccc" - }, - "0, 10", - "0, 11", - "0, 12", - "0, 13", - { - "x": 0.2, - "c": "#aaaaaa" - }, - "0, 14", - "0, 15", - "0, 16" - ], - [ - { - "c": "#aaaaaa" - }, - "1, 0", - { - "c": "#cccccc" - }, - "1, 1", - "1, 2", - "1, 3", - "1, 4", - "1, 5", - "1, 6", - "1, 7", - "1, 8", - "1, 9", - "1, 10", - "1, 11", - "1, 12", - "1, 13", - { - "c": "#aaaaaa" - }, - "1, 14", - { - "x": 0.2 - }, - "1, 15", - "1, 16", - "3, 12" - ], - [ - { - "w": 1.5, - "c": "#aaaaaa" - }, - "2, 0", - { - "c": "#cccccc" - }, - "2, 1", - "2, 2", - "2, 3", - "2, 4", - "2, 5", - "2, 6", - "2, 7", - "2, 8", - "2, 9", - { - "c": "#cccccc" - }, - "2, 10", - "2, 11", - "2, 12", - { - "x": 0.25, - "w": 1.25, - "h": 2, - "x2": -0.25, - "w2": 1.5, - "h2": 1, - "c": "#777777" - }, - "2, 13", - { - "x": 0.2, - "c": "#aaaaaa" - }, - "2, 14", - "2, 15", - "2, 16" - ], - [ - { - "w": 1.75, - "c": "#aaaaaa" - }, - "3, 0", - { - "c": "#cccccc" - }, - "3, 1", - "3, 2", - "3, 3", - "3, 4", - "3, 5", - "3, 6", - "3, 7", - "3, 8", - "3, 9", - "3, 10", - "3, 11", - "3, 13" - ], - [ - { - "w": 2.25, - "c": "#aaaaaa" - }, - "4, 0", - { - "c": "#cccccc" - }, - "4, 2", - "4, 3", - "4, 4", - "4, 5", - "4, 6", - "4, 7", - "4, 8", - "4, 9", - "4, 10", - "4, 11", - "4, 12", - { - "w": 1.75, - "c": "#aaaaaa" - }, - "4, 13", - { - "x": 1.2 - }, - "4, 15" - ], - [ - { - "w": 1.25 - }, - "5, 0", - - "5, 1", - { - "w": 1.25 - }, - "5, 2", - "5, 3", - { - "w": 5, - "c": "#cccccc" - }, - "5, 6", - { - "c": "#aaaaaa" - }, - "5, 9", - { - "w": 1.25 - }, - "5, 10", - { - "c": "#aaaaaa" - }, - "5, 11", - "5, 12", - { - "w": 1.25 - }, - "5, 13", - { - "x": 0.2 - }, - "5, 14", - "5, 15", - "5, 16" - ] - ] - } - } diff --git a/keyboards/keychron/k1_max/via_json/k1_max_jis_white.json b/keyboards/keychron/k1_max/via_json/k1_max_jis_white.json deleted file mode 100644 index 9c31ddc1e5..0000000000 --- a/keyboards/keychron/k1_max/via_json/k1_max_jis_white.json +++ /dev/null @@ -1,233 +0,0 @@ -{ - "name": "Keychron K1 Max JIS White", - "vendorId": "0x3434", - "productId": "0x0A15", - "keycodes": ["qmk_lighting"], - "customKeycodes": [ - {"name": "Left Option", "title": "Left Option", "shortName": "LOpt"}, - {"name": "Right Option", "title": "Right Option", "shortName": "ROpt"}, - {"name": "Left Cmd", "title": "Left Command", "shortName": "LCmd"}, - {"name": "Right Cmd", "title": "Right Command", "shortName": "RCmd"}, - {"name": "Misson Control", "title": "Misson Control in Mac", "shortName": "MCtl"}, - {"name": "Lanuch Pad", "title": "Lanuch Pad in Windows", "shortName": "LPad"}, - {"name": "Task View", "title": "Task View in Windows", "shortName": "Task"}, - {"name": "File Explorer", "title": "File Explorer in Windows", "shortName": "File"}, - {"name": "Screen shot", "title": "Screenshot in macOS", "shortName": "SShot"}, - {"name": "Cortana", "title": "Cortana in Windows", "shortName": "Cortana"}, - {"name": "Siri", "title": "Siri in macOS", "shortName": "Siri"}, - {"name": "Bluetooth Host 1", "title": "Bluetooth Host 1", "shortName": "BTH1"}, - {"name": "Bluetooth Host 2", "title": "Bluetooth Host 2", "shortName": "BTH2"}, - {"name": "Bluetooth Host 3", "title": "Bluetooth Host 3", "shortName": "BTH3"}, - {"name": "2.4G", "title": "2.4G", "shortName": "2.4G"}, - {"name": "Battery Level", "title": "Show battery level", "shortName": "Batt"} - ], - "matrix": {"rows": 6, "cols" : 17}, - "layouts": { - "keymap": [ - [ - { - "c": "#777777" - }, - "0, 0", - { - "x": 1, - "c": "#cccccc" - }, - "0, 2", - "0, 3", - "0, 4", - "0, 5", - { - "x": 0.5, - "c": "#aaaaaa" - }, - "0, 6", - "0, 7", - "0, 8", - "0, 9", - { - "x": 0.5, - "c": "#cccccc" - }, - "0, 10", - "0, 11", - "0, 12", - "0, 13", - { - "x": 0.2, - "c": "#aaaaaa" - }, - "0, 14", - "0, 15", - "0, 16" - ], - [ - { - "c": "#aaaaaa" - }, - "1, 0", - { - "c": "#cccccc" - }, - "1, 1", - "1, 2", - "1, 3", - "1, 4", - "1, 5", - "1, 6", - "1, 7", - "1, 8", - "1, 9", - "1, 10", - "1, 11", - "1, 12", - "1, 13", - { - "c": "#aaaaaa" - }, - "1, 14", - { - "x": 0.2 - }, - "1, 15", - "1, 16", - "3, 12" - ], - [ - { - "w": 1.5, - "c": "#aaaaaa" - }, - "2, 0", - { - "c": "#cccccc" - }, - "2, 1", - "2, 2", - "2, 3", - "2, 4", - "2, 5", - "2, 6", - "2, 7", - "2, 8", - "2, 9", - { - "c": "#cccccc" - }, - "2, 10", - "2, 11", - "2, 12", - { - "x": 0.25, - "w": 1.25, - "h": 2, - "x2": -0.25, - "w2": 1.5, - "h2": 1, - "c": "#777777" - }, - "2, 13", - { - "x": 0.2, - "c": "#aaaaaa" - }, - "2, 14", - "2, 15", - "2, 16" - ], - [ - { - "w": 1.75, - "c": "#aaaaaa" - }, - "3, 0", - { - "c": "#cccccc" - }, - "3, 1", - "3, 2", - "3, 3", - "3, 4", - "3, 5", - "3, 6", - "3, 7", - "3, 8", - "3, 9", - "3, 10", - "3, 11", - "3, 13" - ], - [ - { - "w": 2.25, - "c": "#aaaaaa" - }, - "4, 0", - { - "c": "#cccccc" - }, - "4, 2", - "4, 3", - "4, 4", - "4, 5", - "4, 6", - "4, 7", - "4, 8", - "4, 9", - "4, 10", - "4, 11", - "4, 12", - { - "w": 1.75, - "c": "#aaaaaa" - }, - "4, 13", - { - "x": 1.2 - }, - "4, 15" - ], - [ - { - "w": 1.25 - }, - "5, 0", - - "5, 1", - { - "w": 1.25 - }, - "5, 2", - "5, 3", - { - "w": 5, - "c": "#cccccc" - }, - "5, 6", - { - "c": "#aaaaaa" - }, - "5, 9", - { - "w": 1.25 - }, - "5, 10", - { - "c": "#aaaaaa" - }, - "5, 11", - "5, 12", - { - "w": 1.25 - }, - "5, 13", - { - "x": 0.2 - }, - "5, 14", - "5, 15", - "5, 16" - ] - ] - } - } diff --git a/keyboards/keychron/k1_pro/ansi/rgb/config.h b/keyboards/keychron/k1_pro/ansi/rgb/config.h deleted file mode 100644 index a6ae74be92..0000000000 --- a/keyboards/keychron/k1_pro/ansi/rgb/config.h +++ /dev/null @@ -1,53 +0,0 @@ -/* 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 . - */ - -#pragma once - -#ifdef RGB_MATRIX_ENABLE -/* RGB Matrix Driver Configuration */ -# define DRIVER_COUNT 2 -# define DRIVER_ADDR_1 0b1110111 -# define DRIVER_ADDR_2 0b1110100 - -/* RGB Matrix Configuration */ -# define DRIVER_1_LED_TOTAL 47 -# define DRIVER_2_LED_TOTAL 40 -# define RGB_MATRIX_LED_COUNT (DRIVER_1_LED_TOTAL + DRIVER_2_LED_TOTAL) - -/* Set to infinit, which is use in USB mode by default */ -# define RGB_MATRIX_TIMEOUT RGB_MATRIX_TIMEOUT_INFINITE - -/* Allow to shutdown driver to save power */ -# define RGB_MATRIX_DRIVER_SHUTDOWN_ENABLE - -/* Turn off backllit if brightness value is low */ -# define RGB_MATRIX_BRIGHTNESS_TURN_OFF_VAL 48 - -# define LOW_BAT_IND_INDEX 79 - -// RGB Matrix Animation modes. Explicitly enabled -// For full list of effects, see: -// https://docs.qmk.fm/#/feature_rgb_matrix?id=rgb-matrix-effects -# define RGB_MATRIX_KEYPRESSES -# define RGB_MATRIX_FRAMEBUFFER_EFFECT - -/* Use first 9 channels of LED driver */ -# define PHASE_CHANNEL MSKPHASE_9CHANNEL - -/* Set LED driver current */ -# define SNLED27351_CURRENT_TUNE \ - { 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10 } -#endif diff --git a/keyboards/keychron/k1_pro/ansi/rgb/info.json b/keyboards/keychron/k1_pro/ansi/rgb/info.json deleted file mode 100644 index 29402dae90..0000000000 --- a/keyboards/keychron/k1_pro/ansi/rgb/info.json +++ /dev/null @@ -1,129 +0,0 @@ -{ - "usb": { - "pid": "0x0210", - "device_version": "1.0.1" - }, - "features": { - "rgb_matrix": true - }, - "rgb_matrix": { - "driver": "snled27351", - "animations": { - "breathing": true, - "band_spiral_val": true, - "cycle_all": true, - "cycle_left_right": true, - "cycle_up_down": true, - "rainbow_moving_chevron": true, - "cycle_out_in": true, - "cycle_out_in_dual": true, - "cycle_pinwheel": true, - "cycle_spiral": true, - "dual_beacon": true, - "rainbow_beacon": true, - "jellybean_raindrops": true, - "pixel_rain": true, - "typing_heatmap": true, - "digital_rain": true, - "solid_reactive_simple": true, - "solid_reactive_multiwide": true, - "solid_reactive_multinexus": true, - "splash": true, - "solid_splash": true - }, - "layout": [ - {"matrix":[0, 0], "flags":1, "x":0, "y":0}, - {"matrix":[0, 1], "flags":1, "x":26, "y":0}, - {"matrix":[0, 2], "flags":1, "x":39, "y":0}, - {"matrix":[0, 3], "flags":1, "x":52, "y":0}, - {"matrix":[0, 4], "flags":1, "x":65, "y":0}, - {"matrix":[0, 5], "flags":1, "x":85, "y":0}, - {"matrix":[0, 6], "flags":1, "x":98, "y":0}, - {"matrix":[0, 7], "flags":1, "x":111, "y":0}, - {"matrix":[0, 8], "flags":1, "x":124, "y":0}, - {"matrix":[0, 9], "flags":1, "x":144, "y":0}, - {"matrix":[0, 10], "flags":1, "x":157, "y":0}, - {"matrix":[0, 11], "flags":1, "x":170, "y":0}, - {"matrix":[0, 12], "flags":1, "x":183, "y":0}, - {"matrix":[0, 14], "flags":1, "x":197, "y":0}, - {"matrix":[0, 15], "flags":1, "x":210, "y":0}, - {"matrix":[0, 16], "flags":1, "x":224, "y":0}, - - {"matrix":[1, 0], "flags":1, "x":0, "y":13}, - {"matrix":[1, 1], "flags":8, "x":13, "y":13}, - {"matrix":[1, 2], "flags":8, "x":26, "y":13}, - {"matrix":[1, 3], "flags":8, "x":39, "y":13}, - {"matrix":[1, 4], "flags":4, "x":52, "y":13}, - {"matrix":[1, 5], "flags":4, "x":65, "y":13}, - {"matrix":[1, 6], "flags":4, "x":78, "y":13}, - {"matrix":[1, 7], "flags":4, "x":91, "y":13}, - {"matrix":[1, 8], "flags":4, "x":104, "y":13}, - {"matrix":[1, 9], "flags":4, "x":117, "y":13}, - {"matrix":[1, 10], "flags":4, "x":130, "y":13}, - {"matrix":[1, 11], "flags":4, "x":144, "y":13}, - {"matrix":[1, 12], "flags":4, "x":157, "y":13}, - {"matrix":[1, 13], "flags":1, "x":176, "y":13}, - {"matrix":[1, 14], "flags":1, "x":197, "y":13}, - {"matrix":[1, 15], "flags":1, "x":210, "y":13}, - {"matrix":[1, 16], "flags":1, "x":224, "y":13}, - - {"matrix":[2, 0], "flags":1, "x":3, "y":26}, - {"matrix":[2, 1], "flags":4, "x":19, "y":26}, - {"matrix":[2, 2], "flags":4, "x":32, "y":26}, - {"matrix":[2, 3], "flags":4, "x":45, "y":26}, - {"matrix":[2, 4], "flags":4, "x":58, "y":26}, - {"matrix":[2, 5], "flags":4, "x":72, "y":26}, - {"matrix":[2, 6], "flags":4, "x":85, "y":26}, - {"matrix":[2, 7], "flags":4, "x":98, "y":26}, - {"matrix":[2, 8], "flags":4, "x":111, "y":26}, - {"matrix":[2, 9], "flags":4, "x":124, "y":26}, - {"matrix":[2, 10], "flags":4, "x":137, "y":26}, - {"matrix":[2, 11], "flags":4, "x":150, "y":26}, - {"matrix":[2, 12], "flags":4, "x":163, "y":26}, - {"matrix":[2, 13], "flags":1, "x":180, "y":33}, - {"matrix":[2, 14], "flags":1, "x":197, "y":26}, - {"matrix":[2, 15], "flags":1, "x":210, "y":26}, - {"matrix":[2, 16], "flags":1, "x":224, "y":26}, - - {"matrix":[3, 0], "flags":8, "x":4, "y":38}, - {"matrix":[3, 1], "flags":4, "x":22, "y":38}, - {"matrix":[3, 2], "flags":4, "x":36, "y":38}, - {"matrix":[3, 3], "flags":4, "x":49, "y":38}, - {"matrix":[3, 4], "flags":4, "x":62, "y":38}, - {"matrix":[3, 5], "flags":4, "x":75, "y":38}, - {"matrix":[3, 6], "flags":4, "x":88, "y":38}, - {"matrix":[3, 7], "flags":4, "x":101, "y":38}, - {"matrix":[3, 8], "flags":4, "x":114, "y":38}, - {"matrix":[3, 9], "flags":4, "x":127, "y":38}, - {"matrix":[3, 10], "flags":4, "x":140, "y":38}, - {"matrix":[3, 11], "flags":4, "x":153, "y":38}, - {"matrix":[3, 13], "flags":1, "x":175, "y":38}, - - {"matrix":[4, 0], "flags":1, "x":8, "y":51}, - {"matrix":[4, 2], "flags":4, "x":29, "y":51}, - {"matrix":[4, 3], "flags":4, "x":42, "y":51}, - {"matrix":[4, 4], "flags":4, "x":55, "y":51}, - {"matrix":[4, 5], "flags":4, "x":68, "y":51}, - {"matrix":[4, 6], "flags":4, "x":81, "y":51}, - {"matrix":[4, 7], "flags":4, "x":94, "y":51}, - {"matrix":[4, 8], "flags":4, "x":108, "y":51}, - {"matrix":[4, 9], "flags":4, "x":121, "y":51}, - {"matrix":[4, 10], "flags":4, "x":134, "y":51}, - {"matrix":[4, 11], "flags":4, "x":147, "y":51}, - {"matrix":[4, 13], "flags":1, "x":171, "y":51}, - {"matrix":[4, 15], "flags":1, "x":210, "y":51}, - - {"matrix":[5, 0], "flags":1, "x":1, "y":64}, - {"matrix":[5, 1], "flags":1, "x":18, "y":64}, - {"matrix":[5, 2], "flags":1, "x":34, "y":64}, - {"matrix":[5, 6], "flags":4, "x":83, "y":64}, - {"matrix":[5, 10], "flags":1, "x":132, "y":64}, - {"matrix":[5, 11], "flags":1, "x":148, "y":64}, - {"matrix":[5, 12], "flags":1, "x":165, "y":64}, - {"matrix":[5, 13], "flags":1, "x":181, "y":64}, - {"matrix":[5, 14], "flags":1, "x":197, "y":64}, - {"matrix":[5, 15], "flags":1, "x":210, "y":64}, - {"matrix":[5, 16], "flags":1, "x":224, "y":64} - ] - } -} diff --git a/keyboards/keychron/k1_pro/ansi/rgb/keymaps/default/keymap.c b/keyboards/keychron/k1_pro/ansi/rgb/keymaps/default/keymap.c deleted file mode 100644 index dd6718e04b..0000000000 --- a/keyboards/keychron/k1_pro/ansi/rgb/keymaps/default/keymap.c +++ /dev/null @@ -1,59 +0,0 @@ -/* 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 . - */ - -#include QMK_KEYBOARD_H - -enum layers{ - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN, -}; - -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_tkl_ansi( - KC_ESC, KC_BRID, KC_BRIU, KC_MCTL, KC_LPAD, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_SNAP, KC_SIRI, RGB_MOD, - KC_GRV, 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_INS, KC_HOME, KC_PGUP, - 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_DEL, KC_END, KC_PGDN, - 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_LCTL, KC_LOPTN, KC_LCMMD, KC_SPC, KC_RCMMD, KC_ROPTN, MO(MAC_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - - [MAC_FN] = LAYOUT_tkl_ansi( - _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, RGB_TOG, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - - [WIN_BASE] = LAYOUT_tkl_ansi( - KC_ESC, 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_PSCR, KC_CTANA, RGB_MOD, - KC_GRV, 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_INS, KC_HOME, KC_PGUP, - 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_DEL, KC_END, KC_PGDN, - 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_LCTL, KC_LWIN, KC_LALT, KC_SPC, KC_RALT, KC_RGUI, MO(WIN_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - - [WIN_FN] = LAYOUT_tkl_ansi( - _______, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, RGB_TOG, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______) -}; diff --git a/keyboards/keychron/k1_pro/ansi/rgb/keymaps/via/keymap.c b/keyboards/keychron/k1_pro/ansi/rgb/keymaps/via/keymap.c deleted file mode 100644 index dd6718e04b..0000000000 --- a/keyboards/keychron/k1_pro/ansi/rgb/keymaps/via/keymap.c +++ /dev/null @@ -1,59 +0,0 @@ -/* 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 . - */ - -#include QMK_KEYBOARD_H - -enum layers{ - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN, -}; - -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_tkl_ansi( - KC_ESC, KC_BRID, KC_BRIU, KC_MCTL, KC_LPAD, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_SNAP, KC_SIRI, RGB_MOD, - KC_GRV, 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_INS, KC_HOME, KC_PGUP, - 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_DEL, KC_END, KC_PGDN, - 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_LCTL, KC_LOPTN, KC_LCMMD, KC_SPC, KC_RCMMD, KC_ROPTN, MO(MAC_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - - [MAC_FN] = LAYOUT_tkl_ansi( - _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, RGB_TOG, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - - [WIN_BASE] = LAYOUT_tkl_ansi( - KC_ESC, 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_PSCR, KC_CTANA, RGB_MOD, - KC_GRV, 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_INS, KC_HOME, KC_PGUP, - 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_DEL, KC_END, KC_PGDN, - 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_LCTL, KC_LWIN, KC_LALT, KC_SPC, KC_RALT, KC_RGUI, MO(WIN_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - - [WIN_FN] = LAYOUT_tkl_ansi( - _______, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, RGB_TOG, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______) -}; diff --git a/keyboards/keychron/k1_pro/ansi/rgb/keymaps/via/rules.mk b/keyboards/keychron/k1_pro/ansi/rgb/keymaps/via/rules.mk deleted file mode 100644 index 45fa68954c..0000000000 --- a/keyboards/keychron/k1_pro/ansi/rgb/keymaps/via/rules.mk +++ /dev/null @@ -1 +0,0 @@ -VIA_ENABLE = yes diff --git a/keyboards/keychron/k1_pro/ansi/rgb/rgb.c b/keyboards/keychron/k1_pro/ansi/rgb/rgb.c deleted file mode 100644 index 2b3867ec52..0000000000 --- a/keyboards/keychron/k1_pro/ansi/rgb/rgb.c +++ /dev/null @@ -1,121 +0,0 @@ -/* 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 . - */ - -#include "quantum.h" - -// clang-format off -#ifdef RGB_MATRIX_ENABLE -const snled27351_led_t g_snled27351_leds[RGB_MATRIX_LED_COUNT] = { -/* Refer to snled27351manual for these locations - * driver - * | R location - * | | G location - * | | | B location - * | | | | */ - {0, I_1, G_1, H_1}, - {0, I_2, G_2, H_2}, - {0, I_3, G_3, H_3}, - {0, I_4, G_4, H_4}, - {0, I_5, G_5, H_5}, - {0, I_6, G_6, H_6}, - {0, I_7, G_7, H_7}, - {0, I_8, G_8, H_8}, - {0, I_9, G_9, H_9}, - {0, I_10, G_10, H_10}, - {0, I_11, G_11, H_11}, - {0, I_12, G_12, H_12}, - {0, I_13, G_13, H_13}, - {0, I_15, G_15, H_15}, - {0, I_16, G_16, H_16}, - {1, F_8, D_8, E_8}, - - {0, F_1, D_1, E_1}, - {0, F_2, D_2, E_2}, - {0, F_3, D_3, E_3}, - {0, F_4, D_4, E_4}, - {0, F_5, D_5, E_5}, - {0, F_6, D_6, E_6}, - {0, F_7, D_7, E_7}, - {0, F_8, D_8, E_8}, - {0, F_9, D_9, E_9}, - {0, F_10, D_10, E_10}, - {0, F_11, D_11, E_11}, - {0, F_12, D_12, E_12}, - {0, F_13, D_13, E_13}, - {0, F_14, D_14, E_14}, - {0, F_15, D_15, E_15}, - {0, F_16, D_16, E_16}, - {1, F_9, D_9, E_9}, - - {0, A_1, C_1, B_1}, - {0, A_2, C_2, B_2}, - {0, A_3, C_3, B_3}, - {0, A_4, C_4, B_4}, - {0, A_5, C_5, B_5}, - {0, A_6, C_6, B_6}, - {0, A_7, C_7, B_7}, - {0, A_8, C_8, B_8}, - {0, A_9, C_9, B_9}, - {0, A_10, C_10, B_10}, - {0, A_11, C_11, B_11}, - {0, A_12, C_12, B_12}, - {0, A_13, C_13, B_13}, - {0, A_14, C_14, B_14}, - {0, A_15, C_15, B_15}, - {0, A_16, C_16, B_16}, - {1, F_6, D_6, E_6}, - - {1, I_1, G_1, H_1}, - {1, I_2, G_2, H_2}, - {1, I_3, G_3, H_3}, - {1, I_4, G_4, H_4}, - {1, I_5, G_5, H_5}, - {1, I_6, G_6, H_6}, - {1, I_7, G_7, H_7}, - {1, I_8, G_8, H_8}, - {1, I_9, G_9, H_9}, - {1, I_10, G_10, H_10}, - {1, I_11, G_11, H_11}, - {1, I_12, G_12, H_12}, - {1, I_14, G_14, H_14}, - - {1, C_1, A_1, B_1}, - {1, C_3, A_3, B_3}, - {1, C_4, A_4, B_4}, - {1, C_5, A_5, B_5}, - {1, C_6, A_6, B_6}, - {1, C_7, A_7, B_7}, - {1, C_8, A_8, B_8}, - {1, C_9, A_9, B_9}, - {1, C_10, A_10, B_10}, - {1, C_11, A_11, B_11}, - {1, C_12, A_12, B_12}, - {1, C_14, A_14, B_14}, - {1, C_16, A_16, B_16}, - - {1, F_1, D_1, E_1}, - {1, F_2, D_2, E_2}, - {1, F_3, D_3, E_3}, - {1, F_7, D_7, E_7}, - {1, F_11, D_11, E_11}, - {1, F_12, D_12, E_12}, - {1, F_13, D_13, E_13}, - {1, F_14, D_14, E_14}, - {1, F_15, D_15, E_15}, - {1, F_16, D_16, E_16}, - {1, C_15, A_15, B_15} -}; -#endif diff --git a/keyboards/keychron/k1_pro/ansi/rgb/rules.mk b/keyboards/keychron/k1_pro/ansi/rgb/rules.mk deleted file mode 100644 index f886ea2e8e..0000000000 --- a/keyboards/keychron/k1_pro/ansi/rgb/rules.mk +++ /dev/null @@ -1 +0,0 @@ -# This file intentionally blank \ No newline at end of file diff --git a/keyboards/keychron/k1_pro/ansi/white/config.h b/keyboards/keychron/k1_pro/ansi/white/config.h deleted file mode 100644 index 9e40af306a..0000000000 --- a/keyboards/keychron/k1_pro/ansi/white/config.h +++ /dev/null @@ -1,49 +0,0 @@ -/* 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 . - */ - -#pragma once - -#ifdef LED_MATRIX_ENABLE -/* LED Matrix Driver Configuration */ -# define DRIVER_COUNT 1 -# define SNLED27351_I2C_ADDRESS_1 SNLED27351_I2C_ADDRESS_GND - -/* LED Matrix Configuration */ -# define LED_MATRIX_LED_COUNT 87 - -/* Set to infinit, which is use in USB mode by default */ -# define LED_MATRIX_TIMEOUT LED_MATRIX_TIMEOUT_INFINITE - -/* Allow to shutdown driver to save power */ -# define LED_MATRIX_DRIVER_SHUTDOWN_ENABLE - -/* Turn off backllit if brightness value is low */ -# define LED_MATRIX_BRIGHTNESS_TURN_OFF_VAL 48 - -# define LOW_BAT_IND_INDEX 79 - -// LED Matrix Animation modes. Explicitly enabled -// For full list of effects, see: -// https://docs.qmk.fm/#/feature_led_matrix?id=led-matrix-effects -# define LED_MATRIX_KEYPRESSES - -/* Use first 6 channels of LED driver */ -# define PHASE_CHANNEL MSKPHASE_6CHANNEL - -/* Set LED driver current */ -# define SNLED27351_CURRENT_TUNE \ - { 0x1d, 0x1d, 0x1d, 0x1d, 0x1d, 0x1d, 0x1d, 0x1d, 0x1d, 0x1d, 0x1d, 0x1d } -#endif diff --git a/keyboards/keychron/k1_pro/ansi/white/info.json b/keyboards/keychron/k1_pro/ansi/white/info.json deleted file mode 100644 index 7909be2877..0000000000 --- a/keyboards/keychron/k1_pro/ansi/white/info.json +++ /dev/null @@ -1,124 +0,0 @@ -{ - "usb": { - "pid": "0x0213", - "device_version": "1.0.1" - }, - "features": { - "led_matrix": true - }, - "led_matrix": { - "driver": "snled27351", - "animations": { - "none": true, - "solid": true, - "breathing": true, - "band_pinwheel": true, - "band_spiral": true, - "cycle_left_right": true, - "cycle_up_down": true, - "cycle_out_in": true, - "dual_beacon": true, - "solid_reactive_simple": true, - "solid_reactive_multiwide": true, - "solid_reactive_multinexus": true, - "solid_splash": true, - "wave_left_right": true, - "wave_up_down": true, - "effect_max": true - }, - "layout": [ - {"matrix":[0, 0], "flags":1, "x":0, "y":0}, - {"matrix":[0, 1], "flags":1, "x":26, "y":0}, - {"matrix":[0, 2], "flags":1, "x":39, "y":0}, - {"matrix":[0, 3], "flags":1, "x":52, "y":0}, - {"matrix":[0, 4], "flags":1, "x":65, "y":0}, - {"matrix":[0, 5], "flags":1, "x":85, "y":0}, - {"matrix":[0, 6], "flags":1, "x":98, "y":0}, - {"matrix":[0, 7], "flags":1, "x":111, "y":0}, - {"matrix":[0, 8], "flags":1, "x":124, "y":0}, - {"matrix":[0, 9], "flags":1, "x":144, "y":0}, - {"matrix":[0, 10], "flags":1, "x":157, "y":0}, - {"matrix":[0, 11], "flags":1, "x":170, "y":0}, - {"matrix":[0, 12], "flags":1, "x":183, "y":0}, - {"matrix":[0, 14], "flags":1, "x":197, "y":0}, - {"matrix":[0, 15], "flags":1, "x":210, "y":0}, - {"matrix":[0, 16], "flags":1, "x":224, "y":0}, - - {"matrix":[1, 0], "flags":1, "x":0, "y":13}, - {"matrix":[1, 1], "flags":8, "x":13, "y":13}, - {"matrix":[1, 2], "flags":8, "x":26, "y":13}, - {"matrix":[1, 3], "flags":8, "x":39, "y":13}, - {"matrix":[1, 4], "flags":4, "x":52, "y":13}, - {"matrix":[1, 5], "flags":4, "x":65, "y":13}, - {"matrix":[1, 6], "flags":4, "x":78, "y":13}, - {"matrix":[1, 7], "flags":4, "x":91, "y":13}, - {"matrix":[1, 8], "flags":4, "x":104, "y":13}, - {"matrix":[1, 9], "flags":4, "x":117, "y":13}, - {"matrix":[1, 10], "flags":4, "x":130, "y":13}, - {"matrix":[1, 11], "flags":4, "x":144, "y":13}, - {"matrix":[1, 12], "flags":4, "x":157, "y":13}, - {"matrix":[1, 13], "flags":1, "x":176, "y":13}, - {"matrix":[1, 14], "flags":1, "x":197, "y":13}, - {"matrix":[1, 15], "flags":1, "x":210, "y":13}, - {"matrix":[1, 16], "flags":1, "x":224, "y":13}, - - {"matrix":[2, 0], "flags":1, "x":3, "y":26}, - {"matrix":[2, 1], "flags":4, "x":19, "y":26}, - {"matrix":[2, 2], "flags":4, "x":32, "y":26}, - {"matrix":[2, 3], "flags":4, "x":45, "y":26}, - {"matrix":[2, 4], "flags":4, "x":58, "y":26}, - {"matrix":[2, 5], "flags":4, "x":72, "y":26}, - {"matrix":[2, 6], "flags":4, "x":85, "y":26}, - {"matrix":[2, 7], "flags":4, "x":98, "y":26}, - {"matrix":[2, 8], "flags":4, "x":111, "y":26}, - {"matrix":[2, 9], "flags":4, "x":124, "y":26}, - {"matrix":[2, 10], "flags":4, "x":137, "y":26}, - {"matrix":[2, 11], "flags":4, "x":150, "y":26}, - {"matrix":[2, 12], "flags":4, "x":163, "y":26}, - {"matrix":[2, 13], "flags":1, "x":180, "y":33}, - {"matrix":[2, 14], "flags":1, "x":197, "y":26}, - {"matrix":[2, 15], "flags":1, "x":210, "y":26}, - {"matrix":[2, 16], "flags":1, "x":224, "y":26}, - - {"matrix":[3, 0], "flags":8, "x":4, "y":38}, - {"matrix":[3, 1], "flags":4, "x":22, "y":38}, - {"matrix":[3, 2], "flags":4, "x":36, "y":38}, - {"matrix":[3, 3], "flags":4, "x":49, "y":38}, - {"matrix":[3, 4], "flags":4, "x":62, "y":38}, - {"matrix":[3, 5], "flags":4, "x":75, "y":38}, - {"matrix":[3, 6], "flags":4, "x":88, "y":38}, - {"matrix":[3, 7], "flags":4, "x":101, "y":38}, - {"matrix":[3, 8], "flags":4, "x":114, "y":38}, - {"matrix":[3, 9], "flags":4, "x":127, "y":38}, - {"matrix":[3, 10], "flags":4, "x":140, "y":38}, - {"matrix":[3, 11], "flags":4, "x":153, "y":38}, - {"matrix":[3, 13], "flags":1, "x":175, "y":38}, - - {"matrix":[4, 0], "flags":1, "x":8, "y":51}, - {"matrix":[4, 2], "flags":4, "x":29, "y":51}, - {"matrix":[4, 3], "flags":4, "x":42, "y":51}, - {"matrix":[4, 4], "flags":4, "x":55, "y":51}, - {"matrix":[4, 5], "flags":4, "x":68, "y":51}, - {"matrix":[4, 6], "flags":4, "x":81, "y":51}, - {"matrix":[4, 7], "flags":4, "x":94, "y":51}, - {"matrix":[4, 8], "flags":4, "x":108, "y":51}, - {"matrix":[4, 9], "flags":4, "x":121, "y":51}, - {"matrix":[4, 10], "flags":4, "x":134, "y":51}, - {"matrix":[4, 11], "flags":4, "x":147, "y":51}, - {"matrix":[4, 13], "flags":1, "x":171, "y":51}, - {"matrix":[4, 15], "flags":1, "x":210, "y":51}, - - {"matrix":[5, 0], "flags":1, "x":1, "y":64}, - {"matrix":[5, 1], "flags":1, "x":18, "y":64}, - {"matrix":[5, 2], "flags":1, "x":34, "y":64}, - {"matrix":[5, 6], "flags":4, "x":83, "y":64}, - {"matrix":[5, 10], "flags":1, "x":132, "y":64}, - {"matrix":[5, 11], "flags":1, "x":148, "y":64}, - {"matrix":[5, 12], "flags":1, "x":165, "y":64}, - {"matrix":[5, 13], "flags":1, "x":181, "y":64}, - {"matrix":[5, 14], "flags":1, "x":197, "y":64}, - {"matrix":[5, 15], "flags":1, "x":210, "y":64}, - {"matrix":[5, 16], "flags":1, "x":224, "y":64} - ] - } -} diff --git a/keyboards/keychron/k1_pro/ansi/white/keymaps/default/keymap.c b/keyboards/keychron/k1_pro/ansi/white/keymaps/default/keymap.c deleted file mode 100644 index dec4f3ad53..0000000000 --- a/keyboards/keychron/k1_pro/ansi/white/keymaps/default/keymap.c +++ /dev/null @@ -1,59 +0,0 @@ -/* 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 . - */ - -#include QMK_KEYBOARD_H - -enum layers{ - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN, -}; - -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_tkl_ansi( - KC_ESC, KC_BRID, KC_BRIU, KC_MCTL, KC_LPAD, BL_DOWN, BL_UP, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_SNAP, KC_SIRI, BL_STEP, - KC_GRV, 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_INS, KC_HOME, KC_PGUP, - 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_DEL, KC_END, KC_PGDN, - 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_LCTL, KC_LOPTN, KC_LCMMD, KC_SPC, KC_RCMMD, KC_ROPTN, MO(MAC_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - - [MAC_FN] = LAYOUT_tkl_ansi( - _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, BL_TOGG, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - BL_TOGG, BL_STEP, BL_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, BL_DOWN, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - - [WIN_BASE] = LAYOUT_tkl_ansi( - KC_ESC, 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_PSCR, KC_CTANA, BL_STEP, - KC_GRV, 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_INS, KC_HOME, KC_PGUP, - 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_DEL, KC_END, KC_PGDN, - 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_LCTL, KC_LWIN, KC_LALT, KC_SPC, KC_RALT, KC_RGUI, MO(WIN_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - - [WIN_FN] = LAYOUT_tkl_ansi( - _______, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, BL_DOWN, BL_UP, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, BL_TOGG, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - BL_TOGG, BL_STEP, BL_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, BL_DOWN, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______) -}; diff --git a/keyboards/keychron/k1_pro/ansi/white/keymaps/via/keymap.c b/keyboards/keychron/k1_pro/ansi/white/keymaps/via/keymap.c deleted file mode 100644 index dec4f3ad53..0000000000 --- a/keyboards/keychron/k1_pro/ansi/white/keymaps/via/keymap.c +++ /dev/null @@ -1,59 +0,0 @@ -/* 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 . - */ - -#include QMK_KEYBOARD_H - -enum layers{ - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN, -}; - -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_tkl_ansi( - KC_ESC, KC_BRID, KC_BRIU, KC_MCTL, KC_LPAD, BL_DOWN, BL_UP, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_SNAP, KC_SIRI, BL_STEP, - KC_GRV, 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_INS, KC_HOME, KC_PGUP, - 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_DEL, KC_END, KC_PGDN, - 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_LCTL, KC_LOPTN, KC_LCMMD, KC_SPC, KC_RCMMD, KC_ROPTN, MO(MAC_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - - [MAC_FN] = LAYOUT_tkl_ansi( - _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, BL_TOGG, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - BL_TOGG, BL_STEP, BL_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, BL_DOWN, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - - [WIN_BASE] = LAYOUT_tkl_ansi( - KC_ESC, 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_PSCR, KC_CTANA, BL_STEP, - KC_GRV, 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_INS, KC_HOME, KC_PGUP, - 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_DEL, KC_END, KC_PGDN, - 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_LCTL, KC_LWIN, KC_LALT, KC_SPC, KC_RALT, KC_RGUI, MO(WIN_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - - [WIN_FN] = LAYOUT_tkl_ansi( - _______, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, BL_DOWN, BL_UP, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, BL_TOGG, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - BL_TOGG, BL_STEP, BL_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, BL_DOWN, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______) -}; diff --git a/keyboards/keychron/k1_pro/ansi/white/keymaps/via/rules.mk b/keyboards/keychron/k1_pro/ansi/white/keymaps/via/rules.mk deleted file mode 100644 index 45fa68954c..0000000000 --- a/keyboards/keychron/k1_pro/ansi/white/keymaps/via/rules.mk +++ /dev/null @@ -1 +0,0 @@ -VIA_ENABLE = yes diff --git a/keyboards/keychron/k1_pro/ansi/white/rules.mk b/keyboards/keychron/k1_pro/ansi/white/rules.mk deleted file mode 100644 index f886ea2e8e..0000000000 --- a/keyboards/keychron/k1_pro/ansi/white/rules.mk +++ /dev/null @@ -1 +0,0 @@ -# This file intentionally blank \ No newline at end of file diff --git a/keyboards/keychron/k1_pro/ansi/white/white.c b/keyboards/keychron/k1_pro/ansi/white/white.c deleted file mode 100644 index e8c9c6744f..0000000000 --- a/keyboards/keychron/k1_pro/ansi/white/white.c +++ /dev/null @@ -1,119 +0,0 @@ -/* 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 . - */ - -#include "quantum.h" - -// clang-format off -#ifdef LED_MATRIX_ENABLE -const snled27351_led_t g_snled27351_leds[LED_MATRIX_LED_COUNT] = { -/* Refer to snled27351manual for these locations - * driver - * | LED address - * | | */ - {0, F_1}, - {0, F_2}, - {0, F_3}, - {0, F_4}, - {0, F_5}, - {0, F_6}, - {0, F_7}, - {0, F_8}, - {0, F_9}, - {0, F_10}, - {0, F_11}, - {0, F_12}, - {0, F_13}, - {0, F_15}, - {0, F_16}, - {0, A_8}, - - {0, E_1}, - {0, E_2}, - {0, E_3}, - {0, E_4}, - {0, E_5}, - {0, E_6}, - {0, E_7}, - {0, E_8}, - {0, E_9}, - {0, E_10}, - {0, E_11}, - {0, E_12}, - {0, E_13}, - {0, E_14}, - {0, E_15}, - {0, E_16}, - {0, A_9}, - - {0, D_1}, - {0, D_2}, - {0, D_3}, - {0, D_4}, - {0, D_5}, - {0, D_6}, - {0, D_7}, - {0, D_8}, - {0, D_9}, - {0, D_10}, - {0, D_11}, - {0, D_12}, - {0, D_13}, - {0, D_14}, - {0, D_15}, - {0, D_16}, - {0, A_6}, - - {0, C_1}, - {0, C_2}, - {0, C_3}, - {0, C_4}, - {0, C_5}, - {0, C_6}, - {0, C_7}, - {0, C_8}, - {0, C_9}, - {0, C_10}, - {0, C_11}, - {0, C_12}, - {0, C_14}, - - {0, B_1}, - {0, B_3}, - {0, B_4}, - {0, B_5}, - {0, B_6}, - {0, B_7}, - {0, B_8}, - {0, B_9}, - {0, B_10}, - {0, B_11}, - {0, B_12}, - {0, B_14}, - {0, B_16}, - - {0, A_1}, - {0, A_2}, - {0, A_3}, - {0, A_7}, - {0, A_11}, - {0, A_12}, - {0, A_13}, - {0, A_14}, - {0, A_15}, - {0, A_16}, - {0, B_15} -}; -#endif diff --git a/keyboards/keychron/k1_pro/config.h b/keyboards/keychron/k1_pro/config.h deleted file mode 100644 index 8c615ec38d..0000000000 --- a/keyboards/keychron/k1_pro/config.h +++ /dev/null @@ -1,95 +0,0 @@ -/* 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 . - */ - -#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 } - -/* Caps lock LED */ -#define LED_CAPS_LOCK_PIN A0 -#define LED_PIN_ON_STATE 1 - -/* 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 A10 - -# 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 A4 -# define BAT_LOW_LED_PIN_ON_STATE 1 - -# define HOST_DEVICES_COUNT 3 - -# define HOST_LED_PIN_LIST \ - { H3, H3, H3 } -# define HOST_LED_PIN_ON_STATE 1 - -# 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 WEAR_LEVELING_LOGICAL_SIZE 2048 -#define WEAR_LEVELING_BACKING_SIZE (WEAR_LEVELING_LOGICAL_SIZE * 2) -#define DYNAMIC_KEYMAP_EEPROM_MAX_ADDR 2047 - -/* Factory test keys */ -#define FN_KEY1 MO(1) -#define FN_KEY2 MO(3) diff --git a/keyboards/keychron/k1_pro/halconf.h b/keyboards/keychron/k1_pro/halconf.h deleted file mode 100644 index 306f917783..0000000000 --- a/keyboards/keychron/k1_pro/halconf.h +++ /dev/null @@ -1,29 +0,0 @@ -/* 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 _CHIBIOS_HAL_CONF_VER_8_0_ - -#define HAL_USE_I2C TRUE - -#ifdef KC_BLUETOOTH_ENABLE -# define PAL_USE_CALLBACKS TRUE -# define HAL_USE_SERIAL TRUE -# define HAL_USE_RTC TRUE -#endif - -#include_next diff --git a/keyboards/keychron/k1_pro/info.json b/keyboards/keychron/k1_pro/info.json deleted file mode 100644 index f3de201776..0000000000 --- a/keyboards/keychron/k1_pro/info.json +++ /dev/null @@ -1,225 +0,0 @@ -{ - "keyboard_name": "Keychron K1 Pro", - "manufacturer": "Keychron", - "url": "https://github.com/Keychron", - "maintainer": "lalalademaxiya1", - "processor": "STM32L432", - "bootloader": "stm32-dfu", - "usb": { - "vid": "0x3434" - }, - "features": { - "bootmagic": true, - "mousekey": true, - "extrakey": true, - "nkro": true, - "dip_switch": true, - "raw": true - }, - "diode_direction": "ROW2COL", - "matrix_size": { - "rows": 6, - "cols": 17 - }, - "matrix_pins": { - "rows": ["B5", "B4", "B3", "A15", "A14", "A13"], - "cols": ["C15", null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null], - "custom": true, - "custom_lite": true - }, - "layouts": { - "LAYOUT_tkl_ansi": { - "layout": [ - {"matrix":[0,0], "x":0, "y":0}, - {"matrix":[0,1], "x":2, "y":0}, - {"matrix":[0,2], "x":3, "y":0}, - {"matrix":[0,3], "x":4, "y":0}, - {"matrix":[0,4], "x":5, "y":0}, - {"matrix":[0,5], "x":6.5, "y":0}, - {"matrix":[0,6], "x":7.5, "y":0}, - {"matrix":[0,7], "x":8.5, "y":0}, - {"matrix":[0,8], "x":9.5, "y":0}, - {"matrix":[0,9], "x":11, "y":0}, - {"matrix":[0,10], "x":12, "y":0}, - {"matrix":[0,11], "x":13, "y":0}, - {"matrix":[0,12], "x":14, "y":0}, - {"matrix":[0,14], "x":15.25, "y":0}, - {"matrix":[0,15], "x":16.25, "y":0}, - {"matrix":[0,16], "x":17.25, "y":0}, - - {"matrix":[1,0], "x":0, "y":1.25}, - {"matrix":[1,1], "x":1, "y":1.25}, - {"matrix":[1,2], "x":2, "y":1.25}, - {"matrix":[1,3], "x":3, "y":1.25}, - {"matrix":[1,4], "x":4, "y":1.25}, - {"matrix":[1,5], "x":5, "y":1.25}, - {"matrix":[1,6], "x":6, "y":1.25}, - {"matrix":[1,7], "x":7, "y":1.25}, - {"matrix":[1,8], "x":8, "y":1.25}, - {"matrix":[1,9], "x":9, "y":1.25}, - {"matrix":[1,10], "x":10, "y":1.25}, - {"matrix":[1,11], "x":11, "y":1.25}, - {"matrix":[1,12], "x":12, "y":1.25}, - {"matrix":[1,13], "x":13, "y":1.25, "w":2}, - {"matrix":[1,14], "x":15.25, "y":1.25}, - {"matrix":[1,15], "x":16.25, "y":1.25}, - {"matrix":[1,16], "x":17.25, "y":1.25}, - - {"matrix":[2,0], "x":0, "y":2.25, "w":1.5}, - {"matrix":[2,1], "x":1.5, "y":2.25}, - {"matrix":[2,2], "x":2.5, "y":2.25}, - {"matrix":[2,3], "x":3.5, "y":2.25}, - {"matrix":[2,4], "x":4.5, "y":2.25}, - {"matrix":[2,5], "x":5.5, "y":2.25}, - {"matrix":[2,6], "x":6.5, "y":2.25}, - {"matrix":[2,7], "x":7.5, "y":2.25}, - {"matrix":[2,8], "x":8.5, "y":2.25}, - {"matrix":[2,9], "x":9.5, "y":2.25}, - {"matrix":[2,10], "x":10.5, "y":2.25}, - {"matrix":[2,11], "x":11.5, "y":2.25}, - {"matrix":[2,12], "x":12.5, "y":2.25}, - {"matrix":[2,13], "x":13.5, "y":2.25, "w":1.5}, - {"matrix":[2,14], "x":15.25, "y":2.25}, - {"matrix":[2,15], "x":16.25, "y":2.25}, - {"matrix":[2,16], "x":17.25, "y":2.25}, - - {"matrix":[3,0], "x":0, "y":3.25, "w":1.75}, - {"matrix":[3,1], "x":1.75, "y":3.25}, - {"matrix":[3,2], "x":2.75, "y":3.25}, - {"matrix":[3,3], "x":3.75, "y":3.25}, - {"matrix":[3,4], "x":4.75, "y":3.25}, - {"matrix":[3,5], "x":5.75, "y":3.25}, - {"matrix":[3,6], "x":6.75, "y":3.25}, - {"matrix":[3,7], "x":7.75, "y":3.25}, - {"matrix":[3,8], "x":8.75, "y":3.25}, - {"matrix":[3,9], "x":9.75, "y":3.25}, - {"matrix":[3,10], "x":10.75, "y":3.25}, - {"matrix":[3,11], "x":11.75, "y":3.25}, - {"matrix":[3,13], "x":12.75, "y":3.25, "w":2.25}, - - {"matrix":[4,0], "x":0, "y":4.25, "w":2.25}, - {"matrix":[4,2], "x":2.25, "y":4.25}, - {"matrix":[4,3], "x":3.25, "y":4.25}, - {"matrix":[4,4], "x":4.25, "y":4.25}, - {"matrix":[4,5], "x":5.25, "y":4.25}, - {"matrix":[4,6], "x":6.25, "y":4.25}, - {"matrix":[4,7], "x":7.25, "y":4.25}, - {"matrix":[4,8], "x":8.25, "y":4.25}, - {"matrix":[4,9], "x":9.25, "y":4.25}, - {"matrix":[4,10], "x":10.25, "y":4.25}, - {"matrix":[4,11], "x":11.25, "y":4.25}, - {"matrix":[4,13], "x":12.25, "y":4.25, "w":2.75}, - {"matrix":[4,15], "x":16.25, "y":4.25}, - - {"matrix":[5,0], "x":0, "y":5.25, "w":1.25}, - {"matrix":[5,1], "x":1.25, "y":5.25, "w":1.25}, - {"matrix":[5,2], "x":2.5, "y":5.25, "w":1.25}, - {"matrix":[5,6], "x":3.75, "y":5.25, "w":6.25}, - {"matrix":[5,10], "x":10, "y":5.25, "w":1.25}, - {"matrix":[5,11], "x":11.25, "y":5.25, "w":1.25}, - {"matrix":[5,12], "x":12.5, "y":5.25, "w":1.25}, - {"matrix":[5,13], "x":13.75, "y":5.25, "w":1.25}, - {"matrix":[5,14], "x":15.25, "y":5.25}, - {"matrix":[5,15], "x":16.25, "y":5.25}, - {"matrix":[5,16], "x":17.25, "y":5.25} - ] - }, - "LAYOUT_tkl_iso": { - "layout": [ - {"matrix":[0,0], "x":0, "y":0}, - {"matrix":[0,1], "x":2, "y":0}, - {"matrix":[0,2], "x":3, "y":0}, - {"matrix":[0,3], "x":4, "y":0}, - {"matrix":[0,4], "x":5, "y":0}, - {"matrix":[0,5], "x":6.5, "y":0}, - {"matrix":[0,6], "x":7.5, "y":0}, - {"matrix":[0,7], "x":8.5, "y":0}, - {"matrix":[0,8], "x":9.5, "y":0}, - {"matrix":[0,9], "x":11, "y":0}, - {"matrix":[0,10], "x":12, "y":0}, - {"matrix":[0,11], "x":13, "y":0}, - {"matrix":[0,12], "x":14, "y":0}, - {"matrix":[0,14], "x":15.25, "y":0}, - {"matrix":[0,15], "x":16.25, "y":0}, - {"matrix":[0,16], "x":17.25, "y":0}, - - {"matrix":[1,0], "x":0, "y":1.25}, - {"matrix":[1,1], "x":1, "y":1.25}, - {"matrix":[1,2], "x":2, "y":1.25}, - {"matrix":[1,3], "x":3, "y":1.25}, - {"matrix":[1,4], "x":4, "y":1.25}, - {"matrix":[1,5], "x":5, "y":1.25}, - {"matrix":[1,6], "x":6, "y":1.25}, - {"matrix":[1,7], "x":7, "y":1.25}, - {"matrix":[1,8], "x":8, "y":1.25}, - {"matrix":[1,9], "x":9, "y":1.25}, - {"matrix":[1,10], "x":10, "y":1.25}, - {"matrix":[1,11], "x":11, "y":1.25}, - {"matrix":[1,12], "x":12, "y":1.25}, - {"matrix":[1,13], "x":13, "y":1.25, "w":2}, - {"matrix":[1,14], "x":15.25, "y":1.25}, - {"matrix":[1,15], "x":16.25, "y":1.25}, - {"matrix":[1,16], "x":17.25, "y":1.25}, - - {"matrix":[2,0], "x":0, "y":2.25, "w":1.5}, - {"matrix":[2,1], "x":1.5, "y":2.25}, - {"matrix":[2,2], "x":2.5, "y":2.25}, - {"matrix":[2,3], "x":3.5, "y":2.25}, - {"matrix":[2,4], "x":4.5, "y":2.25}, - {"matrix":[2,5], "x":5.5, "y":2.25}, - {"matrix":[2,6], "x":6.5, "y":2.25}, - {"matrix":[2,7], "x":7.5, "y":2.25}, - {"matrix":[2,8], "x":8.5, "y":2.25}, - {"matrix":[2,9], "x":9.5, "y":2.25}, - {"matrix":[2,10], "x":10.5, "y":2.25}, - {"matrix":[2,11], "x":11.5, "y":2.25}, - {"matrix":[2,12], "x":12.5, "y":2.25}, - {"matrix":[2,14], "x":15.25, "y":2.25}, - {"matrix":[2,15], "x":16.25, "y":2.25}, - {"matrix":[2,16], "x":17.25, "y":2.25}, - - {"matrix":[3,0], "x":0, "y":3.25, "w":1.75}, - {"matrix":[3,1], "x":1.75, "y":3.25}, - {"matrix":[3,2], "x":2.75, "y":3.25}, - {"matrix":[3,3], "x":3.75, "y":3.25}, - {"matrix":[3,4], "x":4.75, "y":3.25}, - {"matrix":[3,5], "x":5.75, "y":3.25}, - {"matrix":[3,6], "x":6.75, "y":3.25}, - {"matrix":[3,7], "x":7.75, "y":3.25}, - {"matrix":[3,8], "x":8.75, "y":3.25}, - {"matrix":[3,9], "x":9.75, "y":3.25}, - {"matrix":[3,10], "x":10.75, "y":3.25}, - {"matrix":[3,11], "x":11.75, "y":3.25}, - {"matrix":[3,13], "x":12.75, "y":3.25}, - {"matrix":[2,13], "x":13.75, "y":2.25, "w":1.25, "h":2}, - - {"matrix":[4,0], "x":0, "y":4.25, "w":1.25}, - {"matrix":[4,1], "x":1.25, "y":4.25}, - {"matrix":[4,2], "x":2.25, "y":4.25}, - {"matrix":[4,3], "x":3.25, "y":4.25}, - {"matrix":[4,4], "x":4.25, "y":4.25}, - {"matrix":[4,5], "x":5.25, "y":4.25}, - {"matrix":[4,6], "x":6.25, "y":4.25}, - {"matrix":[4,7], "x":7.25, "y":4.25}, - {"matrix":[4,8], "x":8.25, "y":4.25}, - {"matrix":[4,9], "x":9.25, "y":4.25}, - {"matrix":[4,10], "x":10.25, "y":4.25}, - {"matrix":[4,11], "x":11.25, "y":4.25}, - {"matrix":[4,13], "x":12.25, "y":4.25, "w":2.75}, - {"matrix":[4,15], "x":16.25, "y":4.25}, - - {"matrix":[5,0], "x":0, "y":5.25, "w":1.25}, - {"matrix":[5,1], "x":1.25, "y":5.25, "w":1.25}, - {"matrix":[5,2], "x":2.5, "y":5.25, "w":1.25}, - {"matrix":[5,6], "x":3.75, "y":5.25, "w":6.25}, - {"matrix":[5,10], "x":10, "y":5.25, "w":1.25}, - {"matrix":[5,11], "x":11.25, "y":5.25, "w":1.25}, - {"matrix":[5,12], "x":12.5, "y":5.25, "w":1.25}, - {"matrix":[5,13], "x":13.75, "y":5.25, "w":1.25}, - {"matrix":[5,14], "x":15.25, "y":5.25}, - {"matrix":[5,15], "x":16.25, "y":5.25}, - {"matrix":[5,16], "x":17.25, "y":5.25} - ] - } - } -} diff --git a/keyboards/keychron/k1_pro/iso/rgb/config.h b/keyboards/keychron/k1_pro/iso/rgb/config.h deleted file mode 100644 index 356d04a400..0000000000 --- a/keyboards/keychron/k1_pro/iso/rgb/config.h +++ /dev/null @@ -1,51 +0,0 @@ -/* 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 . - */ - -#pragma once - -#ifdef RGB_MATRIX_ENABLE -/* RGB Matrix Driver Configuration */ -# define DRIVER_COUNT 2 -# define DRIVER_ADDR_1 0b1110111 -# define DRIVER_ADDR_2 0b1110100 - -/* RGB Matrix Configuration */ -# define DRIVER_1_LED_TOTAL 47 -# define DRIVER_2_LED_TOTAL 41 -# define RGB_MATRIX_LED_COUNT (DRIVER_1_LED_TOTAL + DRIVER_2_LED_TOTAL) - -/* Set to infinit, which is use in USB mode by default */ -# define RGB_MATRIX_TIMEOUT RGB_MATRIX_TIMEOUT_INFINITE - -/* Allow to shutdown driver to save power */ -# define RGB_MATRIX_DRIVER_SHUTDOWN_ENABLE - -/* Turn off backllit if brightness value is low */ -# define RGB_MATRIX_BRIGHTNESS_TURN_OFF_VAL 48 - -/* Indication led */ -# define LOW_BAT_IND_INDEX 80 - -# define RGB_MATRIX_KEYPRESSES -# define RGB_MATRIX_FRAMEBUFFER_EFFECTS - -/* Use first 9 channels of LED driver */ -# define PHASE_CHANNEL MSKPHASE_9CHANNEL - -/* Set LED driver current */ -# define SNLED27351_CURRENT_TUNE \ - { 0x14, 0x14, 0x14, 0x14, 0x14, 0x14, 0x14, 0x14, 0x14, 0x14, 0x14, 0x14 } -#endif diff --git a/keyboards/keychron/k1_pro/iso/rgb/info.json b/keyboards/keychron/k1_pro/iso/rgb/info.json deleted file mode 100644 index 6b3401b684..0000000000 --- a/keyboards/keychron/k1_pro/iso/rgb/info.json +++ /dev/null @@ -1,130 +0,0 @@ -{ - "usb": { - "pid": "0x0211", - "device_version": "1.0.2" - }, - "features": { - "rgb_matrix": true - }, - "rgb_matrix": { - "driver": "snled27351", - "animations": { - "breathing": true, - "band_spiral_val": true, - "cycle_all": true, - "cycle_left_right": true, - "cycle_up_down": true, - "rainbow_moving_chevron": true, - "cycle_out_in": true, - "cycle_out_in_dual": true, - "cycle_pinwheel": true, - "cycle_spiral": true, - "dual_beacon": true, - "rainbow_beacon": true, - "jellybean_raindrops": true, - "pixel_rain": true, - "typing_heatmap": true, - "digital_rain": true, - "solid_reactive_simple": true, - "solid_reactive_multiwide": true, - "solid_reactive_multinexus": true, - "splash": true, - "solid_splash": true - }, - "layout": [ - {"matrix":[0, 0], "flags":1, "x":0, "y":0}, - {"matrix":[0, 1], "flags":1, "x":26, "y":0}, - {"matrix":[0, 2], "flags":1, "x":39, "y":0}, - {"matrix":[0, 3], "flags":1, "x":52, "y":0}, - {"matrix":[0, 4], "flags":1, "x":65, "y":0}, - {"matrix":[0, 5], "flags":1, "x":85, "y":0}, - {"matrix":[0, 6], "flags":1, "x":98, "y":0}, - {"matrix":[0, 7], "flags":1, "x":111, "y":0}, - {"matrix":[0, 8], "flags":1, "x":124, "y":0}, - {"matrix":[0, 9], "flags":1, "x":144, "y":0}, - {"matrix":[0, 10], "flags":1, "x":157, "y":0}, - {"matrix":[0, 11], "flags":1, "x":170, "y":0}, - {"matrix":[0, 12], "flags":1, "x":183, "y":0}, - {"matrix":[0, 14], "flags":1, "x":197, "y":0}, - {"matrix":[0, 15], "flags":1, "x":210, "y":0}, - {"matrix":[0, 16], "flags":1, "x":224, "y":0}, - - {"matrix":[1, 0], "flags":1, "x":0, "y":13}, - {"matrix":[1, 1], "flags":8, "x":13, "y":13}, - {"matrix":[1, 2], "flags":8, "x":26, "y":13}, - {"matrix":[1, 3], "flags":8, "x":39, "y":13}, - {"matrix":[1, 4], "flags":4, "x":52, "y":13}, - {"matrix":[1, 5], "flags":4, "x":65, "y":13}, - {"matrix":[1, 6], "flags":4, "x":78, "y":13}, - {"matrix":[1, 7], "flags":4, "x":91, "y":13}, - {"matrix":[1, 8], "flags":4, "x":104, "y":13}, - {"matrix":[1, 9], "flags":4, "x":117, "y":13}, - {"matrix":[1, 10], "flags":4, "x":130, "y":13}, - {"matrix":[1, 11], "flags":4, "x":144, "y":13}, - {"matrix":[1, 12], "flags":4, "x":157, "y":13}, - {"matrix":[1, 13], "flags":1, "x":176, "y":13}, - {"matrix":[1, 14], "flags":1, "x":197, "y":13}, - {"matrix":[1, 15], "flags":1, "x":210, "y":13}, - {"matrix":[1, 16], "flags":1, "x":224, "y":13}, - - {"matrix":[2, 0], "flags":1, "x":3, "y":26}, - {"matrix":[2, 1], "flags":4, "x":19, "y":26}, - {"matrix":[2, 2], "flags":4, "x":32, "y":26}, - {"matrix":[2, 3], "flags":4, "x":45, "y":26}, - {"matrix":[2, 4], "flags":4, "x":58, "y":26}, - {"matrix":[2, 5], "flags":4, "x":72, "y":26}, - {"matrix":[2, 6], "flags":4, "x":85, "y":26}, - {"matrix":[2, 7], "flags":4, "x":98, "y":26}, - {"matrix":[2, 8], "flags":4, "x":111, "y":26}, - {"matrix":[2, 9], "flags":4, "x":124, "y":26}, - {"matrix":[2, 10], "flags":4, "x":137, "y":26}, - {"matrix":[2, 11], "flags":4, "x":150, "y":26}, - {"matrix":[2, 12], "flags":1, "x":163, "y":26}, - {"matrix":[2, 14], "flags":1, "x":197, "y":26}, - {"matrix":[2, 15], "flags":1, "x":210, "y":26}, - {"matrix":[2, 16], "flags":1, "x":224, "y":26}, - - {"matrix":[3, 0], "flags":8, "x":4, "y":38}, - {"matrix":[3, 1], "flags":4, "x":22, "y":38}, - {"matrix":[3, 2], "flags":4, "x":36, "y":38}, - {"matrix":[3, 3], "flags":4, "x":49, "y":38}, - {"matrix":[3, 4], "flags":4, "x":62, "y":38}, - {"matrix":[3, 5], "flags":4, "x":75, "y":38}, - {"matrix":[3, 6], "flags":4, "x":88, "y":38}, - {"matrix":[3, 7], "flags":4, "x":101, "y":38}, - {"matrix":[3, 8], "flags":4, "x":114, "y":38}, - {"matrix":[3, 9], "flags":4, "x":127, "y":38}, - {"matrix":[3, 10], "flags":4, "x":140, "y":38}, - {"matrix":[3, 11], "flags":4, "x":153, "y":38}, - {"matrix":[3, 13], "flags":1, "x":167, "y":38}, - {"matrix":[2, 13], "flags":1, "x":182, "y":33}, - - {"matrix":[4, 0], "flags":1, "x":8, "y":51}, - {"matrix":[4, 1], "flags":1, "x":16, "y":51}, - {"matrix":[4, 2], "flags":4, "x":29, "y":51}, - {"matrix":[4, 3], "flags":4, "x":42, "y":51}, - {"matrix":[4, 4], "flags":4, "x":55, "y":51}, - {"matrix":[4, 5], "flags":4, "x":68, "y":51}, - {"matrix":[4, 6], "flags":4, "x":81, "y":51}, - {"matrix":[4, 7], "flags":4, "x":94, "y":51}, - {"matrix":[4, 8], "flags":4, "x":108, "y":51}, - {"matrix":[4, 9], "flags":4, "x":121, "y":51}, - {"matrix":[4, 10], "flags":4, "x":134, "y":51}, - {"matrix":[4, 11], "flags":4, "x":147, "y":51}, - {"matrix":[4, 13], "flags":1, "x":171, "y":51}, - {"matrix":[4, 15], "flags":1, "x":210, "y":51}, - - {"matrix":[5, 0], "flags":1, "x":1, "y":64}, - {"matrix":[5, 1], "flags":1, "x":18, "y":64}, - {"matrix":[5, 2], "flags":1, "x":34, "y":64}, - {"matrix":[5, 6], "flags":4, "x":83, "y":64}, - {"matrix":[5, 10], "flags":1, "x":132, "y":64}, - {"matrix":[5, 11], "flags":1, "x":148, "y":64}, - {"matrix":[5, 12], "flags":1, "x":165, "y":64}, - {"matrix":[5, 13], "flags":1, "x":181, "y":64}, - {"matrix":[5, 14], "flags":1, "x":197, "y":64}, - {"matrix":[5, 15], "flags":1, "x":210, "y":64}, - {"matrix":[5, 16], "flags":1, "x":224, "y":64} - ] - } -} diff --git a/keyboards/keychron/k1_pro/iso/rgb/keymaps/default/keymap.c b/keyboards/keychron/k1_pro/iso/rgb/keymaps/default/keymap.c deleted file mode 100644 index 68c9e9144f..0000000000 --- a/keyboards/keychron/k1_pro/iso/rgb/keymaps/default/keymap.c +++ /dev/null @@ -1,59 +0,0 @@ -/* 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 . - */ - -#include QMK_KEYBOARD_H - -enum layers{ - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN, -}; - -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_tkl_iso( - KC_ESC, KC_BRID, KC_BRIU, KC_MCTL, KC_LPAD, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_SNAP, KC_SIRI, RGB_MOD, - KC_GRV, 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_INS, KC_HOME, KC_PGUP, - 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_DEL, KC_END, KC_PGDN, - 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_NUHS, KC_ENT, - KC_LSFT, KC_NUBS, 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_LCTL, KC_LOPTN, KC_LCMMD, KC_SPC, KC_RCMMD, KC_ROPTN, MO(MAC_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - - [MAC_FN] = LAYOUT_tkl_iso( - _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, RGB_TOG, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - - [WIN_BASE] = LAYOUT_tkl_iso( - KC_ESC, 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_PSCR, KC_CTANA, RGB_MOD, - KC_GRV, 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_INS, KC_HOME, KC_PGUP, - 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_DEL, KC_END, KC_PGDN, - 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_NUHS, KC_ENT, - KC_LSFT, KC_NUBS, 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_LCTL, KC_LWIN, KC_LALT, KC_SPC, KC_RALT, KC_RGUI, MO(WIN_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - - [WIN_FN] = LAYOUT_tkl_iso( - _______, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, RGB_TOG, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______) -}; diff --git a/keyboards/keychron/k1_pro/iso/rgb/keymaps/via/keymap.c b/keyboards/keychron/k1_pro/iso/rgb/keymaps/via/keymap.c deleted file mode 100644 index 68c9e9144f..0000000000 --- a/keyboards/keychron/k1_pro/iso/rgb/keymaps/via/keymap.c +++ /dev/null @@ -1,59 +0,0 @@ -/* 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 . - */ - -#include QMK_KEYBOARD_H - -enum layers{ - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN, -}; - -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_tkl_iso( - KC_ESC, KC_BRID, KC_BRIU, KC_MCTL, KC_LPAD, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_SNAP, KC_SIRI, RGB_MOD, - KC_GRV, 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_INS, KC_HOME, KC_PGUP, - 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_DEL, KC_END, KC_PGDN, - 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_NUHS, KC_ENT, - KC_LSFT, KC_NUBS, 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_LCTL, KC_LOPTN, KC_LCMMD, KC_SPC, KC_RCMMD, KC_ROPTN, MO(MAC_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - - [MAC_FN] = LAYOUT_tkl_iso( - _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, RGB_TOG, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - - [WIN_BASE] = LAYOUT_tkl_iso( - KC_ESC, 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_PSCR, KC_CTANA, RGB_MOD, - KC_GRV, 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_INS, KC_HOME, KC_PGUP, - 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_DEL, KC_END, KC_PGDN, - 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_NUHS, KC_ENT, - KC_LSFT, KC_NUBS, 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_LCTL, KC_LWIN, KC_LALT, KC_SPC, KC_RALT, KC_RGUI, MO(WIN_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - - [WIN_FN] = LAYOUT_tkl_iso( - _______, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, RGB_TOG, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______) -}; diff --git a/keyboards/keychron/k1_pro/iso/rgb/keymaps/via/rules.mk b/keyboards/keychron/k1_pro/iso/rgb/keymaps/via/rules.mk deleted file mode 100644 index 45fa68954c..0000000000 --- a/keyboards/keychron/k1_pro/iso/rgb/keymaps/via/rules.mk +++ /dev/null @@ -1 +0,0 @@ -VIA_ENABLE = yes diff --git a/keyboards/keychron/k1_pro/iso/rgb/rgb.c b/keyboards/keychron/k1_pro/iso/rgb/rgb.c deleted file mode 100644 index afd7235382..0000000000 --- a/keyboards/keychron/k1_pro/iso/rgb/rgb.c +++ /dev/null @@ -1,122 +0,0 @@ -/* 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 . - */ - -#include "quantum.h" - -// clang-format off -#ifdef RGB_MATRIX_ENABLE -const snled27351_led_t g_snled27351_leds[RGB_MATRIX_LED_COUNT] = { -/* Refer to snled27351manual for these locations - * driver - * | R location - * | | G location - * | | | B location - * | | | | */ - {0, I_1, G_1, H_1}, - {0, I_2, G_2, H_2}, - {0, I_3, G_3, H_3}, - {0, I_4, G_4, H_4}, - {0, I_5, G_5, H_5}, - {0, I_6, G_6, H_6}, - {0, I_7, G_7, H_7}, - {0, I_8, G_8, H_8}, - {0, I_9, G_9, H_9}, - {0, I_10, G_10, H_10}, - {0, I_11, G_11, H_11}, - {0, I_12, G_12, H_12}, - {0, I_13, G_13, H_13}, - {0, I_15, G_15, H_15}, - {0, I_16, G_16, H_16}, - {1, F_8, D_8, E_8}, - - {0, F_1, D_1, E_1}, - {0, F_2, D_2, E_2}, - {0, F_3, D_3, E_3}, - {0, F_4, D_4, E_4}, - {0, F_5, D_5, E_5}, - {0, F_6, D_6, E_6}, - {0, F_7, D_7, E_7}, - {0, F_8, D_8, E_8}, - {0, F_9, D_9, E_9}, - {0, F_10, D_10, E_10}, - {0, F_11, D_11, E_11}, - {0, F_12, D_12, E_12}, - {0, F_13, D_13, E_13}, - {0, F_14, D_14, E_14}, - {0, F_15, D_15, E_15}, - {0, F_16, D_16, E_16}, - {1, F_9, D_9, E_9}, - - {0, A_1, C_1, B_1}, - {0, A_2, C_2, B_2}, - {0, A_3, C_3, B_3}, - {0, A_4, C_4, B_4}, - {0, A_5, C_5, B_5}, - {0, A_6, C_6, B_6}, - {0, A_7, C_7, B_7}, - {0, A_8, C_8, B_8}, - {0, A_9, C_9, B_9}, - {0, A_10, C_10, B_10}, - {0, A_11, C_11, B_11}, - {0, A_12, C_12, B_12}, - {0, A_13, C_13, B_13}, - {0, A_15, C_15, B_15}, - {0, A_16, C_16, B_16}, - {1, F_6, D_6, E_6}, - - {1, I_1, G_1, H_1}, - {1, I_2, G_2, H_2}, - {1, I_3, G_3, H_3}, - {1, I_4, G_4, H_4}, - {1, I_5, G_5, H_5}, - {1, I_6, G_6, H_6}, - {1, I_7, G_7, H_7}, - {1, I_8, G_8, H_8}, - {1, I_9, G_9, H_9}, - {1, I_10, G_10, H_10}, - {1, I_11, G_11, H_11}, - {1, I_12, G_12, H_12}, - {1, I_14, G_14, H_14}, - {0, A_14, C_14, B_14}, - - {1, C_1, A_1, B_1}, - {1, C_2, A_2, B_2}, - {1, C_3, A_3, B_3}, - {1, C_4, A_4, B_4}, - {1, C_5, A_5, B_5}, - {1, C_6, A_6, B_6}, - {1, C_7, A_7, B_7}, - {1, C_8, A_8, B_8}, - {1, C_9, A_9, B_9}, - {1, C_10, A_10, B_10}, - {1, C_11, A_11, B_11}, - {1, C_12, A_12, B_12}, - {1, C_14, A_14, B_14}, - {1, C_16, A_16, B_16}, - - {1, F_1, D_1, E_1}, - {1, F_2, D_2, E_2}, - {1, F_3, D_3, E_3}, - {1, F_7, D_7, E_7}, - {1, F_11, D_11, E_11}, - {1, F_12, D_12, E_12}, - {1, F_13, D_13, E_13}, - {1, F_14, D_14, E_14}, - {1, F_15, D_15, E_15}, - {1, F_16, D_16, E_16}, - {1, C_15, A_15, B_15} -}; -#endif diff --git a/keyboards/keychron/k1_pro/iso/rgb/rules.mk b/keyboards/keychron/k1_pro/iso/rgb/rules.mk deleted file mode 100644 index 6e7633bfe0..0000000000 --- a/keyboards/keychron/k1_pro/iso/rgb/rules.mk +++ /dev/null @@ -1 +0,0 @@ -# This file intentionally left blank diff --git a/keyboards/keychron/k1_pro/iso/white/config.h b/keyboards/keychron/k1_pro/iso/white/config.h deleted file mode 100644 index 5cf423073d..0000000000 --- a/keyboards/keychron/k1_pro/iso/white/config.h +++ /dev/null @@ -1,52 +0,0 @@ -/* 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 . - */ - -#pragma once - -#ifdef LED_MATRIX_ENABLE -/* LED Matrix Driver Configuration */ -# define DRIVER_COUNT 1 -# define SNLED27351_I2C_ADDRESS_1 SNLED27351_I2C_ADDRESS_GND - -/* LED Matrix Configuration */ -# define LED_MATRIX_LED_COUNT 88 - -/* Set to infinit, which is use in USB mode by default */ -# define LED_MATRIX_TIMEOUT LED_MATRIX_TIMEOUT_INFINITE - -/* Allow to shutdown driver to save power */ -# define LED_MATRIX_DRIVER_SHUTDOWN_ENABLE - -/* Turn off backllit if brightness value is low */ -# define LED_MATRIX_BRIGHTNESS_TURN_OFF_VAL 48 - -/* Indication led */ -# define LOW_BAT_IND_INDEX 80 - -// LED Matrix Animation modes. Explicitly enabled -// For full list of effects, see: -// https://docs.qmk.fm/#/feature_led_matrix?id=led-matrix-effects -// #if defined(LED_MATRIX_KEYPRESSES) || defined(LED_MATRIX_KEYRELEASES) -# define LED_MATRIX_KEYPRESSES -# define LED_MATRIX_KEYRELEASES - -/* Use first 6 channels of LED driver */ -# define PHASE_CHANNEL MSKPHASE_6CHANNEL - -/* Set LED driver current */ -# define SNLED27351_CURRENT_TUNE \ - { 0x1d, 0x1d, 0x1d, 0x1d, 0x1d, 0x1d, 0x1d, 0x1d, 0x1d, 0x1d, 0x1d, 0x1d } -#endif diff --git a/keyboards/keychron/k1_pro/iso/white/info.json b/keyboards/keychron/k1_pro/iso/white/info.json deleted file mode 100644 index 186d1447d5..0000000000 --- a/keyboards/keychron/k1_pro/iso/white/info.json +++ /dev/null @@ -1,125 +0,0 @@ -{ - "usb": { - "pid": "0x0214", - "device_version": "1.0.1" - }, - "features": { - "led_matrix": true - }, - "led_matrix": { - "driver": "snled27351", - "animations": { - "none": true, - "solid": true, - "breathing": true, - "band_pinwheel": true, - "band_spiral": true, - "cycle_left_right": true, - "cycle_up_down": true, - "cycle_out_in": true, - "dual_beacon": true, - "solid_reactive_simple": true, - "solid_reactive_multiwide": true, - "solid_reactive_multinexus": true, - "solid_splash": true, - "wave_left_right": true, - "wave_up_down": true, - "effect_max": true - }, - "layout": [ - {"matrix":[0, 0], "flags":1, "x":0, "y":0}, - {"matrix":[0, 1], "flags":1, "x":26, "y":0}, - {"matrix":[0, 2], "flags":1, "x":39, "y":0}, - {"matrix":[0, 3], "flags":1, "x":52, "y":0}, - {"matrix":[0, 4], "flags":1, "x":65, "y":0}, - {"matrix":[0, 5], "flags":1, "x":85, "y":0}, - {"matrix":[0, 6], "flags":1, "x":98, "y":0}, - {"matrix":[0, 7], "flags":1, "x":111, "y":0}, - {"matrix":[0, 8], "flags":1, "x":124, "y":0}, - {"matrix":[0, 9], "flags":1, "x":144, "y":0}, - {"matrix":[0, 10], "flags":1, "x":157, "y":0}, - {"matrix":[0, 11], "flags":1, "x":170, "y":0}, - {"matrix":[0, 12], "flags":1, "x":183, "y":0}, - {"matrix":[0, 14], "flags":1, "x":197, "y":0}, - {"matrix":[0, 15], "flags":1, "x":210, "y":0}, - {"matrix":[0, 16], "flags":1, "x":224, "y":0}, - - {"matrix":[1, 0], "flags":1, "x":0, "y":13}, - {"matrix":[1, 1], "flags":8, "x":13, "y":13}, - {"matrix":[1, 2], "flags":8, "x":26, "y":13}, - {"matrix":[1, 3], "flags":8, "x":39, "y":13}, - {"matrix":[1, 4], "flags":4, "x":52, "y":13}, - {"matrix":[1, 5], "flags":4, "x":65, "y":13}, - {"matrix":[1, 6], "flags":4, "x":78, "y":13}, - {"matrix":[1, 7], "flags":4, "x":91, "y":13}, - {"matrix":[1, 8], "flags":4, "x":104, "y":13}, - {"matrix":[1, 9], "flags":4, "x":117, "y":13}, - {"matrix":[1, 10], "flags":4, "x":130, "y":13}, - {"matrix":[1, 11], "flags":4, "x":144, "y":13}, - {"matrix":[1, 12], "flags":4, "x":157, "y":13}, - {"matrix":[1, 13], "flags":1, "x":176, "y":13}, - {"matrix":[1, 14], "flags":1, "x":197, "y":13}, - {"matrix":[1, 15], "flags":1, "x":210, "y":13}, - {"matrix":[1, 16], "flags":1, "x":224, "y":13}, - - {"matrix":[2, 0], "flags":1, "x":3, "y":26}, - {"matrix":[2, 1], "flags":4, "x":19, "y":26}, - {"matrix":[2, 2], "flags":4, "x":32, "y":26}, - {"matrix":[2, 3], "flags":4, "x":45, "y":26}, - {"matrix":[2, 4], "flags":4, "x":58, "y":26}, - {"matrix":[2, 5], "flags":4, "x":72, "y":26}, - {"matrix":[2, 6], "flags":4, "x":85, "y":26}, - {"matrix":[2, 7], "flags":4, "x":98, "y":26}, - {"matrix":[2, 8], "flags":4, "x":111, "y":26}, - {"matrix":[2, 9], "flags":4, "x":124, "y":26}, - {"matrix":[2, 10], "flags":4, "x":137, "y":26}, - {"matrix":[2, 11], "flags":4, "x":150, "y":26}, - {"matrix":[2, 12], "flags":4, "x":163, "y":26}, - {"matrix":[2, 14], "flags":1, "x":197, "y":26}, - {"matrix":[2, 15], "flags":1, "x":210, "y":26}, - {"matrix":[2, 16], "flags":1, "x":224, "y":26}, - - {"matrix":[3, 0], "flags":8, "x":4, "y":38}, - {"matrix":[3, 1], "flags":4, "x":22, "y":38}, - {"matrix":[3, 2], "flags":4, "x":36, "y":38}, - {"matrix":[3, 3], "flags":4, "x":49, "y":38}, - {"matrix":[3, 4], "flags":4, "x":62, "y":38}, - {"matrix":[3, 5], "flags":4, "x":75, "y":38}, - {"matrix":[3, 6], "flags":4, "x":88, "y":38}, - {"matrix":[3, 7], "flags":4, "x":101, "y":38}, - {"matrix":[3, 8], "flags":4, "x":114, "y":38}, - {"matrix":[3, 9], "flags":4, "x":127, "y":38}, - {"matrix":[3, 10], "flags":4, "x":140, "y":38}, - {"matrix":[3, 11], "flags":4, "x":153, "y":38}, - {"matrix":[3, 13], "flags":1, "x":167, "y":38}, - {"matrix":[2, 13], "flags":1, "x":182, "y":33}, - - {"matrix":[4, 0], "flags":1, "x":8, "y":51}, - {"matrix":[4, 1], "flags":1, "x":16, "y":51}, - {"matrix":[4, 2], "flags":4, "x":29, "y":51}, - {"matrix":[4, 3], "flags":4, "x":42, "y":51}, - {"matrix":[4, 4], "flags":4, "x":55, "y":51}, - {"matrix":[4, 5], "flags":4, "x":68, "y":51}, - {"matrix":[4, 6], "flags":4, "x":81, "y":51}, - {"matrix":[4, 7], "flags":4, "x":94, "y":51}, - {"matrix":[4, 8], "flags":4, "x":108, "y":51}, - {"matrix":[4, 9], "flags":4, "x":121, "y":51}, - {"matrix":[4, 10], "flags":4, "x":134, "y":51}, - {"matrix":[4, 11], "flags":4, "x":147, "y":51}, - {"matrix":[4, 13], "flags":1, "x":171, "y":51}, - {"matrix":[4, 15], "flags":1, "x":210, "y":51}, - - {"matrix":[5, 0], "flags":1, "x":1, "y":64}, - {"matrix":[5, 1], "flags":1, "x":18, "y":64}, - {"matrix":[5, 2], "flags":1, "x":34, "y":64}, - {"matrix":[5, 6], "flags":4, "x":83, "y":64}, - {"matrix":[5, 10], "flags":1, "x":132, "y":64}, - {"matrix":[5, 11], "flags":1, "x":148, "y":64}, - {"matrix":[5, 12], "flags":1, "x":165, "y":64}, - {"matrix":[5, 13], "flags":1, "x":181, "y":64}, - {"matrix":[5, 14], "flags":1, "x":197, "y":64}, - {"matrix":[5, 15], "flags":1, "x":210, "y":64}, - {"matrix":[5, 16], "flags":1, "x":224, "y":64} - ] - } -} diff --git a/keyboards/keychron/k1_pro/iso/white/keymaps/default/keymap.c b/keyboards/keychron/k1_pro/iso/white/keymaps/default/keymap.c deleted file mode 100644 index a9ab9f3a2c..0000000000 --- a/keyboards/keychron/k1_pro/iso/white/keymaps/default/keymap.c +++ /dev/null @@ -1,59 +0,0 @@ -/* 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 . - */ - -#include QMK_KEYBOARD_H - -enum layers{ - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN, -}; - -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_tkl_iso( - KC_ESC, KC_BRID, KC_BRIU, KC_MCTL, KC_LPAD, BL_DOWN, BL_UP, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_SNAP, KC_SIRI, BL_STEP, - KC_GRV, 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_INS, KC_HOME, KC_PGUP, - 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_DEL, KC_END, KC_PGDN, - 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_NUHS, KC_ENT, - KC_LSFT, KC_NUBS, 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_LCTL, KC_LOPTN, KC_LCMMD, KC_SPC, KC_RCMMD, KC_ROPTN, MO(MAC_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - - [MAC_FN] = LAYOUT_tkl_iso( - _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, BL_TOGG, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - BL_TOGG, BL_STEP, BL_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, BL_DOWN, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - - [WIN_BASE] = LAYOUT_tkl_iso( - KC_ESC, 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_PSCR, KC_CTANA, BL_STEP, - KC_GRV, 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_INS, KC_HOME, KC_PGUP, - 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_DEL, KC_END, KC_PGDN, - 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_NUHS, KC_ENT, - KC_LSFT, KC_NUBS, 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_LCTL, KC_LWIN, KC_LALT, KC_SPC, KC_RALT, KC_RGUI, MO(WIN_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - - [WIN_FN] = LAYOUT_tkl_iso( - _______, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, BL_DOWN, BL_UP, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, BL_TOGG, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - BL_TOGG, BL_STEP, BL_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, BL_DOWN, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______) -}; diff --git a/keyboards/keychron/k1_pro/iso/white/keymaps/via/keymap.c b/keyboards/keychron/k1_pro/iso/white/keymaps/via/keymap.c deleted file mode 100644 index a9ab9f3a2c..0000000000 --- a/keyboards/keychron/k1_pro/iso/white/keymaps/via/keymap.c +++ /dev/null @@ -1,59 +0,0 @@ -/* 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 . - */ - -#include QMK_KEYBOARD_H - -enum layers{ - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN, -}; - -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_tkl_iso( - KC_ESC, KC_BRID, KC_BRIU, KC_MCTL, KC_LPAD, BL_DOWN, BL_UP, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_SNAP, KC_SIRI, BL_STEP, - KC_GRV, 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_INS, KC_HOME, KC_PGUP, - 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_DEL, KC_END, KC_PGDN, - 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_NUHS, KC_ENT, - KC_LSFT, KC_NUBS, 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_LCTL, KC_LOPTN, KC_LCMMD, KC_SPC, KC_RCMMD, KC_ROPTN, MO(MAC_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - - [MAC_FN] = LAYOUT_tkl_iso( - _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, BL_TOGG, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - BL_TOGG, BL_STEP, BL_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, BL_DOWN, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - - [WIN_BASE] = LAYOUT_tkl_iso( - KC_ESC, 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_PSCR, KC_CTANA, BL_STEP, - KC_GRV, 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_INS, KC_HOME, KC_PGUP, - 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_DEL, KC_END, KC_PGDN, - 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_NUHS, KC_ENT, - KC_LSFT, KC_NUBS, 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_LCTL, KC_LWIN, KC_LALT, KC_SPC, KC_RALT, KC_RGUI, MO(WIN_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - - [WIN_FN] = LAYOUT_tkl_iso( - _______, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, BL_DOWN, BL_UP, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, BL_TOGG, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - BL_TOGG, BL_STEP, BL_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, BL_DOWN, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______) -}; diff --git a/keyboards/keychron/k1_pro/iso/white/keymaps/via/rules.mk b/keyboards/keychron/k1_pro/iso/white/keymaps/via/rules.mk deleted file mode 100644 index 45fa68954c..0000000000 --- a/keyboards/keychron/k1_pro/iso/white/keymaps/via/rules.mk +++ /dev/null @@ -1 +0,0 @@ -VIA_ENABLE = yes diff --git a/keyboards/keychron/k1_pro/iso/white/rules.mk b/keyboards/keychron/k1_pro/iso/white/rules.mk deleted file mode 100644 index 6e7633bfe0..0000000000 --- a/keyboards/keychron/k1_pro/iso/white/rules.mk +++ /dev/null @@ -1 +0,0 @@ -# This file intentionally left blank diff --git a/keyboards/keychron/k1_pro/iso/white/white.c b/keyboards/keychron/k1_pro/iso/white/white.c deleted file mode 100644 index ffcef56b4f..0000000000 --- a/keyboards/keychron/k1_pro/iso/white/white.c +++ /dev/null @@ -1,120 +0,0 @@ -/* 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 . - */ - -#include "quantum.h" - -// clang-format off -#ifdef LED_MATRIX_ENABLE -const snled27351_led_t g_snled27351_leds[LED_MATRIX_LED_COUNT] = { -/* Refer to snled27351manual for these locations - * driver - * | LED address - * | | */ - {0, F_1}, - {0, F_2}, - {0, F_3}, - {0, F_4}, - {0, F_5}, - {0, F_6}, - {0, F_7}, - {0, F_8}, - {0, F_9}, - {0, F_10}, - {0, F_11}, - {0, F_12}, - {0, F_13}, - {0, F_15}, - {0, F_16}, - {0, A_8}, - - {0, E_1}, - {0, E_2}, - {0, E_3}, - {0, E_4}, - {0, E_5}, - {0, E_6}, - {0, E_7}, - {0, E_8}, - {0, E_9}, - {0, E_10}, - {0, E_11}, - {0, E_12}, - {0, E_13}, - {0, E_14}, - {0, E_15}, - {0, E_16}, - {0, A_9}, - - {0, D_1}, - {0, D_2}, - {0, D_3}, - {0, D_4}, - {0, D_5}, - {0, D_6}, - {0, D_7}, - {0, D_8}, - {0, D_9}, - {0, D_10}, - {0, D_11}, - {0, D_12}, - {0, D_13}, - {0, D_15}, - {0, D_16}, - {0, A_6}, - - {0, C_1}, - {0, C_2}, - {0, C_3}, - {0, C_4}, - {0, C_5}, - {0, C_6}, - {0, C_7}, - {0, C_8}, - {0, C_9}, - {0, C_10}, - {0, C_11}, - {0, C_12}, - {0, C_14}, - {0, D_14}, - - {0, B_1}, - {0, B_2}, - {0, B_3}, - {0, B_4}, - {0, B_5}, - {0, B_6}, - {0, B_7}, - {0, B_8}, - {0, B_9}, - {0, B_10}, - {0, B_11}, - {0, B_12}, - {0, B_14}, - {0, B_16}, - - {0, A_1}, - {0, A_2}, - {0, A_3}, - {0, A_7}, - {0, A_11}, - {0, A_12}, - {0, A_13}, - {0, A_14}, - {0, A_15}, - {0, A_16}, - {0, B_15} -}; -#endif diff --git a/keyboards/keychron/k1_pro/k1_pro.c b/keyboards/keychron/k1_pro/k1_pro.c deleted file mode 100644 index e67642cb3a..0000000000 --- a/keyboards/keychron/k1_pro/k1_pro.c +++ /dev/null @@ -1,325 +0,0 @@ -/* 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 . - */ - -#include "k1_pro.h" -#ifdef KC_BLUETOOTH_ENABLE -# include "ckbt51.h" -# include "bluetooth.h" -# include "indicator.h" -# include "transport.h" -# include "battery.h" -# include "bat_level_animation.h" -# include "lpm.h" -#endif - -#ifdef ENABLE_FACTORY_TEST -# include "factory_test.h" -#endif - -#define POWER_ON_LED_DURATION 3000 - -typedef struct PACKED { - uint8_t len; - uint8_t keycode[3]; -} key_combination_t; - -static uint32_t factory_timer_buffer = 0; -static uint32_t power_on_indicator_timer_buffer = 0; -static uint32_t siri_timer_buffer = 0; -static uint8_t mac_keycode[4] = {KC_LOPT, KC_ROPT, KC_LCMD, KC_RCMD}; - -key_combination_t key_comb_list[4] = { - {2, {KC_LWIN, KC_TAB}}, // Task (win) - {2, {KC_LWIN, KC_E}}, // Files (win) - {3, {KC_LSFT, KC_LGUI, KC_4}}, // Snapshot (mac) - {2, {KC_LWIN, KC_C}} // Cortana (win) -}; - -#ifdef KC_BLUETOOTH_ENABLE -bool firstDisconnect = true; -bool bt_factory_reset = false; -static virtual_timer_t pairing_key_timer; -extern uint8_t g_pwm_buffer[DRIVER_COUNT][192]; - -static void pairing_key_timer_cb(void *arg) { - bluetooth_pairing_ex(*(uint8_t *)arg, NULL); -} -#endif - -bool dip_switch_update_kb(uint8_t index, bool active) { - if (index == 0) { -#ifdef INVERT_OS_SWITCH_STATTE - default_layer_set(1UL << (!active ? 0 : 2)); -#else - default_layer_set(1UL << (active ? 0 : 2)); -#endif - } - dip_switch_update_user(index, active); - - return true; -} - -#ifdef KC_BLUETOOTH_ENABLE -bool process_record_kb_bt(uint16_t keycode, keyrecord_t *record) { -#else -bool process_record_kb(uint16_t keycode, keyrecord_t *record) { -#endif - static uint8_t host_idx = 0; - - switch (keycode) { - case KC_LOPTN: - case KC_ROPTN: - case KC_LCMMD: - case KC_RCMMD: - if (record->event.pressed) { - register_code(mac_keycode[keycode - KC_LOPTN]); - } else { - unregister_code(mac_keycode[keycode - KC_LOPTN]); - } - return false; // Skip all further processing of this key) - case KC_TASK: - case KC_FILE: - case KC_SNAP: - case KC_CTANA: - if (record->event.pressed) { - for (uint8_t i = 0; i < key_comb_list[keycode - KC_TASK].len; i++) - register_code(key_comb_list[keycode - KC_TASK].keycode[i]); - } else { - for (uint8_t i = 0; i < key_comb_list[keycode - KC_TASK].len; i++) - unregister_code(key_comb_list[keycode - KC_TASK].keycode[i]); - } - return false; // Skip all further processing of this key - case KC_SIRI: - if (record->event.pressed && siri_timer_buffer == 0) { - register_code(KC_LGUI); - register_code(KC_SPACE); - siri_timer_buffer = sync_timer_read32() | 1; - } - return false; // Skip all further processing of this key -#ifdef KC_BLUETOOTH_ENABLE - case BT_HST1 ... BT_HST3: - if (get_transport() == TRANSPORT_BLUETOOTH) { - if (record->event.pressed) { - host_idx = keycode - BT_HST1 + 1; - chVTSet(&pairing_key_timer, TIME_MS2I(2000), (vtfunc_t)pairing_key_timer_cb, &host_idx); - bluetooth_connect_ex(host_idx, 0); - } else { - host_idx = 0; - chVTReset(&pairing_key_timer); - } - } - break; - case BAT_LVL: - if (get_transport() == TRANSPORT_BLUETOOTH && !usb_power_connected()) { - bat_level_animiation_start(battery_get_percentage()); - } - break; -#endif - default: -#ifdef FACTORY_RESET_CHECK - FACTORY_RESET_CHECK(keycode, record); -#endif - break; - } - return true; -} - -void keyboard_post_init_kb(void) { - dip_switch_read(true); - -#ifdef KC_BLUETOOTH_ENABLE - /* Currently we don't use this reset pin */ - palSetLineMode(CKBT51_RESET_PIN, PAL_MODE_OUTPUT_PUSHPULL); - palWriteLine(CKBT51_RESET_PIN, PAL_HIGH); - - /* IMPORTANT: DO NOT enable internal pull-up resistor - * as there is an external pull-down resistor. - */ - palSetLineMode(USB_BT_MODE_SELECT_PIN, PAL_MODE_INPUT); - - ckbt51_init(false); - bluetooth_init(); -#endif - - power_on_indicator_timer_buffer = sync_timer_read32() | 1; -#ifdef KC_BLUETOOTH_ENABLE - writePin(H3, HOST_LED_PIN_ON_STATE); -#endif - writePin(BAT_LOW_LED_PIN, BAT_LOW_LED_PIN_ON_STATE); - writePin(LED_CAPS_LOCK_PIN, LED_PIN_ON_STATE); - - keyboard_post_init_user(); -} - -void matrix_scan_kb(void) { - if (factory_timer_buffer && timer_elapsed32(factory_timer_buffer) > 2000) { - factory_timer_buffer = 0; - if (bt_factory_reset) { - bt_factory_reset = false; - palWriteLine(CKBT51_RESET_PIN, PAL_LOW); - wait_ms(5); - palWriteLine(CKBT51_RESET_PIN, PAL_HIGH); - } - } - - if (power_on_indicator_timer_buffer) { - if (sync_timer_elapsed32(power_on_indicator_timer_buffer) > POWER_ON_LED_DURATION) { - power_on_indicator_timer_buffer = 0; - writePin(H3, !HOST_LED_PIN_ON_STATE); - writePin(BAT_LOW_LED_PIN, !BAT_LOW_LED_PIN_ON_STATE); - if (!host_keyboard_led_state().caps_lock) writePin(LED_CAPS_LOCK_PIN, !LED_PIN_ON_STATE); - } else { - writePin(H3, HOST_LED_PIN_ON_STATE); - writePin(BAT_LOW_LED_PIN, BAT_LOW_LED_PIN_ON_STATE); - writePin(LED_CAPS_LOCK_PIN, LED_PIN_ON_STATE); - } - } - - if (siri_timer_buffer && sync_timer_elapsed32(siri_timer_buffer) > 500) { - siri_timer_buffer = 0; - unregister_code(KC_LGUI); - unregister_code(KC_SPACE); - } - -#ifdef FACTORY_RESET_TASK - FACTORY_RESET_TASK(); -#endif - matrix_scan_user(); -} - -#ifdef KC_BLUETOOTH_ENABLE -static void ckbt51_param_init(void) { - /* Set bluetooth device name */ - ckbt51_set_local_name(PRODUCT); - wait_ms(10); - /* Set bluetooth parameters */ - module_param_t param = {.event_mode = 0x02, - .connected_idle_timeout = 7200, - .pairing_timeout = 180, - .pairing_mode = 0, - .reconnect_timeout = 5, - .report_rate = 90, - .vendor_id_source = 1, - .verndor_id = 0, // Must be 0x3434 - .product_id = PRODUCT_ID}; - ckbt51_set_param(¶m); - wait_ms(10); -} - -void bluetooth_enter_disconnected_kb(uint8_t host_idx) { - if (bt_factory_reset) { - ckbt51_param_init(); - factory_timer_buffer = timer_read32(); - } - /* CKBT51 bluetooth module boot time is slower, it enters disconnected after boot, - so we place initialization here. */ - if (firstDisconnect && sync_timer_read32() < 1000 && get_transport() == TRANSPORT_BLUETOOTH) { - ckbt51_param_init(); - bluetooth_connect(); - firstDisconnect = false; - } -} - -void ckbt51_default_ack_handler(uint8_t *data, uint8_t len) { - if (data[1] == 0x45) { - module_param_t param = {.event_mode = 0x02, - .connected_idle_timeout = 7200, - .pairing_timeout = 180, - .pairing_mode = 0, - .reconnect_timeout = 5, - .report_rate = 90, - .vendor_id_source = 1, - .verndor_id = 0, // Must be 0x3434 - .product_id = PRODUCT_ID}; - ckbt51_set_param(¶m); - } -} - -void bluetooth_pre_task(void) { - static uint8_t mode = 1; - - if (readPin(USB_BT_MODE_SELECT_PIN) != mode) { - if (readPin(USB_BT_MODE_SELECT_PIN) != mode) { - mode = readPin(USB_BT_MODE_SELECT_PIN); - set_transport(mode == 0 ? TRANSPORT_BLUETOOTH : TRANSPORT_USB); - } - } -} -#endif - -void battery_calculte_voltage(uint16_t value) { - uint16_t voltage = ((uint32_t)value) * 2246 / 1000; - -#ifdef LED_MATRIX_ENABLE - if (led_matrix_is_enabled()) { - uint32_t totalBuf = 0; - - for (uint8_t i = 0; i < DRIVER_COUNT; i++) - for (uint8_t j = 0; j < 192; j++) - totalBuf += g_pwm_buffer[i][j]; - /* We assumpt it is linear relationship*/ - voltage += (30 * totalBuf / LED_MATRIX_LED_COUNT / 255); - } -#endif -#ifdef RGB_MATRIX_ENABLE - if (rgb_matrix_is_enabled()) { - uint32_t totalBuf = 0; - - for (uint8_t i = 0; i < DRIVER_COUNT; i++) - for (uint8_t j = 0; j < 192; j++) - totalBuf += g_pwm_buffer[i][j]; - /* We assumpt it is linear relationship*/ - uint32_t compensation = 60 * totalBuf / RGB_MATRIX_LED_COUNT / 255 / 3; - voltage += compensation; - } -#endif - battery_set_voltage(voltage); -} - -bool via_command_kb(uint8_t *data, uint8_t length) { - switch (data[0]) { -#ifdef KC_BLUETOOTH_ENABLE - case 0xAA: - ckbt51_dfu_rx(data, length); - break; -#endif -#ifdef ENABLE_FACTORY_TEST - case 0xAB: - factory_test_rx(data, length); - break; -#endif - default: - return false; - } - - return true; -} - -#if !defined(VIA_ENABLE) -void raw_hid_receive(uint8_t *data, uint8_t length) { - switch (data[0]) { - case RAW_HID_CMD: - via_command_kb(data, length); - break; - } -} -#endif - -void suspend_wakeup_init_kb(void) { - // code will run on keyboard wakeup - clear_keyboard(); - send_keyboard_report(); -} diff --git a/keyboards/keychron/k1_pro/k1_pro.h b/keyboards/keychron/k1_pro/k1_pro.h deleted file mode 100644 index cd0954d579..0000000000 --- a/keyboards/keychron/k1_pro/k1_pro.h +++ /dev/null @@ -1,55 +0,0 @@ -/* 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 . - */ - -#pragma once - -#include "quantum.h" -#ifdef VIA_ENABLE -# include "via.h" -#endif - -#define ___ KC_NO - -#ifdef VIA_ENABLE -# define USER_START QK_KB_0 -#else -# define USER_START SAFE_RANGE -#endif - -// clang-format off -enum { - KC_LOPTN = USER_START, - KC_ROPTN, - KC_LCMMD, - KC_RCMMD, - KC_TASK, - KC_FILE, - KC_SNAP, - KC_CTANA, - KC_SIRI, -#ifdef KC_BLUETOOTH_ENABLE - BT_HST1, - BT_HST2, - BT_HST3, - BAT_LVL, -#else - BT_HST1 = KC_TRNS, - BT_HST2 = KC_TRNS, - BT_HST3 = KC_TRNS, - BAT_LVL = KC_TRNS, -#endif - NEW_SAFE_RANGE -}; diff --git a/keyboards/keychron/k1_pro/matrix.c b/keyboards/keychron/k1_pro/matrix.c deleted file mode 100644 index 1ef3f96050..0000000000 --- a/keyboards/keychron/k1_pro/matrix.c +++ /dev/null @@ -1,190 +0,0 @@ -/* 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 . - */ - -#include "quantum.h" - -#define HC595_STCP B0 -#define HC595_SHCP A1 -#define HC595_DS A7 - -#define DIRECT_COL_NUM 1 - -pin_t row_pins[MATRIX_ROWS] = MATRIX_ROW_PINS; -pin_t col_pins[MATRIX_COLS] = MATRIX_COL_PINS; - -static inline uint8_t readMatrixPin(pin_t pin) { - if (pin != NO_PIN) { - return readPin(pin); - } else { - return 1; - } -} - -static inline void setPinOutput_writeLow(pin_t pin) { - setPinOutput(pin); - writePinLow(pin); -} - -static inline void setPinOutput_writeHigh(pin_t pin) { - setPinOutput(pin); - writePinHigh(pin); -} - -static inline void HC595_delay(uint16_t n) { - while (n-- > 0) { - asm volatile("nop" ::: "memory"); - } -} - -static void HC595_output(uint16_t data) { - uint8_t n = 1; - uint8_t i; - - for (i = 0; i < (MATRIX_COLS - DIRECT_COL_NUM); i++) { - writePinLow(HC595_SHCP); - if (data & 0x1) { - writePinHigh(HC595_DS); - } else { - writePinLow(HC595_DS); - } - HC595_delay(n); - writePinHigh(HC595_SHCP); - HC595_delay(n); - - data = data >> 1; - } - writePinLow(HC595_STCP); - HC595_delay(n); - writePinHigh(HC595_STCP); -} - -static void HC595_output_bit(uint16_t data) { - uint8_t n = 1; - - writePinLow(HC595_SHCP); - if (data & 0x1) { - writePinHigh(HC595_DS); - } else { - writePinLow(HC595_DS); - } - HC595_delay(n); - - writePinHigh(HC595_SHCP); - HC595_delay(n); - - writePinLow(HC595_STCP); - HC595_delay(n); - writePinHigh(HC595_STCP); -} - -static void select_col(uint8_t col) { - if (col < DIRECT_COL_NUM) { - setPinOutput_writeLow(col_pins[col]); - } else { - if (col == DIRECT_COL_NUM) { - HC595_output_bit(0x00); - } - } -} - -static void unselect_col(uint8_t col) { - if (col < DIRECT_COL_NUM) { -#ifdef MATRIX_UNSELECT_DRIVE_HIGH - setPinOutput_writeHigh(col_pins[col]); -#else - setPinInputHigh(col_pins[col]); -#endif - } else { - HC595_output_bit(0x01); - } -} - -static void unselect_cols(void) { - for (uint8_t x = 0; x < MATRIX_COLS; x++) { - if (x < DIRECT_COL_NUM) { -#ifdef MATRIX_UNSELECT_DRIVE_HIGH - setPinOutput_writeHigh(col_pins[x]); -#else - setPinInputHigh(col_pins[x]); -#endif - } else { - if (x == DIRECT_COL_NUM) HC595_output(0xFFFF); - break; - } - } -} - -void select_all_cols(void) { - for (uint8_t x = 0; x < MATRIX_COLS; x++) { - if (x < DIRECT_COL_NUM) { - setPinOutput_writeLow(col_pins[x]); - } else { - if (x == DIRECT_COL_NUM) HC595_output(0x0000); - break; - } - } -} - -static void matrix_read_rows_on_col(matrix_row_t current_matrix[], uint8_t current_col, matrix_row_t row_shifter) { - // Select col - select_col(current_col); - HC595_delay(200); - - // For each row... - for (uint8_t row_index = 0; row_index < MATRIX_ROWS; row_index++) { - // Check row pin state - if (readMatrixPin(row_pins[row_index]) == 0) { - // Pin LO, set col bit - current_matrix[row_index] |= row_shifter; - } else { - // Pin HI, clear col bit - current_matrix[row_index] &= ~row_shifter; - } - } - - // Unselect col - unselect_col(current_col); - HC595_delay(200); // wait for all Row signals to go HIGH -} - -void matrix_init_custom(void) { - setPinOutput(HC595_DS); - setPinOutput(HC595_STCP); - setPinOutput(HC595_SHCP); - - for (uint8_t x = 0; x < MATRIX_ROWS; x++) { - if (row_pins[x] != NO_PIN) { - setPinInputHigh(row_pins[x]); - } - } - - unselect_cols(); -} - -bool matrix_scan_custom(matrix_row_t current_matrix[]) { - matrix_row_t curr_matrix[MATRIX_ROWS] = {0}; - - // Set col, read rows - matrix_row_t row_shifter = MATRIX_ROW_SHIFTER; - for (uint8_t current_col = 0; current_col < MATRIX_COLS; current_col++, row_shifter <<= 1) { - matrix_read_rows_on_col(curr_matrix, current_col, row_shifter); - } - - bool changed = memcmp(current_matrix, curr_matrix, sizeof(curr_matrix)) != 0; - if (changed) memcpy(current_matrix, curr_matrix, sizeof(curr_matrix)); - - return changed; -} diff --git a/keyboards/keychron/k1_pro/mcuconf.h b/keyboards/keychron/k1_pro/mcuconf.h deleted file mode 100644 index 30b6109616..0000000000 --- a/keyboards/keychron/k1_pro/mcuconf.h +++ /dev/null @@ -1,39 +0,0 @@ -/* 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 - -/* Set HCLK to 48 MHz as tradeoff of USB lowest clockand and - * lower power comsumption for bluetooth. Will use dynamic - * clock when STM32L4 is supported in ChibiOS */ -#undef STM32_PLLM_VALUE -#define STM32_PLLM_VALUE 2 - -#undef STM32_PLLN_VALUE -#define STM32_PLLN_VALUE 12 - -#undef STM32_I2C_USE_I2C1 -#define STM32_I2C_USE_I2C1 TRUE - -#ifdef KC_BLUETOOTH_ENABLE -# undef STM32_SERIAL_USE_USART2 -# define STM32_SERIAL_USE_USART2 TRUE -#endif - - - diff --git a/keyboards/keychron/k1_pro/readme.md b/keyboards/keychron/k1_pro/readme.md deleted file mode 100644 index c5471e1f32..0000000000 --- a/keyboards/keychron/k1_pro/readme.md +++ /dev/null @@ -1,27 +0,0 @@ -# Keychron K1 Pro - -![Keychron K1 Pro](https://github.com/Keychron/ProductImage/blob/main/K_Pro/k1_pro.jpg?raw=true) - -A customizable 80% TKL keyboard. - -* Keyboard Maintainer: [Keychron](https://github.com/keychron) -* Hardware Supported: Keychron K1 Pro -* Hardware Availability: [Keychron K1 Pro QMK/VIA Wireless Custom Mechanical Keyboard](https://www.keychron.com/products/keychron-k1-pro-qmk-via-wireless-custom-mechanical-keyboard) - -Make example for this keyboard (after setting up your build environment): - - make keychron/k1_pro/ansi/rgb:default - make keychron/k1_pro/ansi/white:default - make keychron/k1_pro/iso/rgb:default - make keychron/k1_pro/iso/white:default - -Flashing example for this keyboard: - - make keychron/k1_pro/ansi/rgb:default:flash - make keychron/k1_pro/ansi/white:default:flash - make keychron/k1_pro/iso/rgb:default:flash - make keychron/k1_pro/iso/white:default:flash - -**Reset Key**: Connect the USB cable, toggle mode switch to "Off", hold down the *Esc* key or reset button underneath space bar, then toggle then switch to "Cable". - -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). diff --git a/keyboards/keychron/k1_pro/rules.mk b/keyboards/keychron/k1_pro/rules.mk deleted file mode 100644 index 1f9fc1ab58..0000000000 --- a/keyboards/keychron/k1_pro/rules.mk +++ /dev/null @@ -1,7 +0,0 @@ -# Enter lower-power sleep mode when on the ChibiOS idle thread -OPT_DEFS += -DCORTEX_ENABLE_WFI_IDLE=TRUE -OPT_DEFS += -DNO_USB_STARTUP_CHECK -DENABLE_FACTORY_TEST - -SRC += matrix.c - -include keyboards/keychron/bluetooth/bluetooth.mk diff --git a/keyboards/keychron/k1_pro/via_json/k1_pro_ansi_rgb.json b/keyboards/keychron/k1_pro/via_json/k1_pro_ansi_rgb.json deleted file mode 100644 index 9bcc5f48f7..0000000000 --- a/keyboards/keychron/k1_pro/via_json/k1_pro_ansi_rgb.json +++ /dev/null @@ -1,287 +0,0 @@ -{ - "name": "Keychron K1 Pro ANSI RGB", - "vendorId": "0x3434", - "productId": "0x0210", - "keycodes": ["qmk_lighting"], - "menus": [ - { - "label": "Lighting", - "content": [ - { - "label": "Backlight", - "content": [ - { - "label": "Brightness", - "type": "range", - "options": [0, 255], - "content": ["id_qmk_rgb_matrix_brightness", 3, 1] - }, - { - "label": "Effect", - "type": "dropdown", - "content": ["id_qmk_rgb_matrix_effect", 3, 2], - "options": [ - ["None", 0], - ["Solid Color", 1], - ["Breathing", 2], - ["Band Spiral Val", 3], - ["Cycle All", 4], - ["Cycle Left Right", 5], - ["Cycle Up Down", 6], - ["Rainbow Moving Chevron", 7], - ["Cycle Out In", 8], - ["Cycle Out In Dual", 9], - ["Cycle Pinwheel", 10], - ["Cycle Spiral", 11], - ["Dual Beacon", 12], - ["Rainbow Beacon", 13], - ["Jellybean Raindrops", 14], - ["Pixel Rain", 15], - ["Typing Heatmap", 16], - ["Digital Rain", 17], - ["Reactive Simple", 18], - ["Reactive Multiwide", 19], - ["Reactive Multinexus", 20], - ["Splash", 21], - ["Solid Splash", 22] - ] - }, - { - "showIf": "{id_qmk_rgb_matrix_effect} > 1", - "label": "Effect Speed", - "type": "range", - "options": [0, 255], - "content": ["id_qmk_rgb_matrix_effect_speed", 3, 3] - }, - { - "showIf": "{id_qmk_rgb_matrix_effect} != 0 && ( {id_qmk_rgb_matrix_effect} < 4 || {id_qmk_rgb_matrix_effect} == 18 || ({id_qmk_rgb_matrix_effect} > 17 && {id_qmk_rgb_matrix_effect} != 21) ) ", - "label": "Color", - "type": "color", - "content": ["id_qmk_rgb_matrix_color", 3, 4] - } - ] - } - ] - } - ], - "customKeycodes": [ - {"name": "Left Option", "title": "Left Option", "shortName": "LOpt"}, - {"name": "Right Option", "title": "Right Option", "shortName": "ROpt"}, - {"name": "Left Cmd", "title": "Left Command", "shortName": "LCmd"}, - {"name": "Right Cmd", "title": "Right Command", "shortName": "RCmd"}, - {"name": "Task View", "title": "Task View in Windows", "shortName": "Task"}, - {"name": "File Explorer", "title": "File Explorer in Windows", "shortName": "File"}, - {"name": "Screen shot", "title": "Screenshot in macOS", "shortName": "SShot"}, - {"name": "Cortana", "title": "Cortana in Windows", "shortName": "Cortana"}, - {"name": "Siri", "title": "Siri in macOS", "shortName": "Siri"}, - {"name": "Bluetooth Host 1", "title": "Bluetooth Host 1", "shortName": "BTH1"}, - {"name": "Bluetooth Host 2", "title": "Bluetooth Host 2", "shortName": "BTH2"}, - {"name": "Bluetooth Host 3", "title": "Bluetooth Host 3", "shortName": "BTH3"}, - {"name": "Battery Level", "title": "Show battery level", "shortName": "Batt"} - ], - "matrix": {"rows": 6, "cols": 17}, - "layouts": { - "keymap": [ - [ - { - "c": "#777777" - }, - "0,0", - { - "x": 1, - "c": "#cccccc" - }, - "0,1", - "0,2", - "0,3", - "0,4", - { - "x": 0.5, - "c": "#aaaaaa" - }, - "0,5", - "0,6", - "0,7", - "0,8", - { - "x": 0.5, - "c": "#cccccc" - }, - "0,9", - "0,10", - "0,11", - "0,12", - { - "x": 0.25, - "c": "#aaaaaa" - }, - "0,14", - "0,15", - "0,16" - ], - [ - { - "y": 0.25 - }, - "1,0", - { - "c": "#cccccc" - }, - "1,1", - "1,2", - "1,3", - "1,4", - "1,5", - "1,6", - "1,7", - "1,8", - "1,9", - "1,10", - "1,11", - "1,12", - { - "c": "#aaaaaa", - "w": 2 - }, - "1,13", - { - "x": 0.25 - }, - "1,14", - "1,15", - "1,16" - ], - [ - { - "w": 1.5 - }, - "2,0", - { - "c": "#cccccc" - }, - "2,1", - "2,2", - "2,3", - "2,4", - "2,5", - "2,6", - "2,7", - "2,8", - "2,9", - "2,10", - "2,11", - "2,12", - { - "c": "#aaaaaa", - "w": 1.5 - }, - "2,13", - { - "x": 0.25 - }, - "2,14", - "2,15", - "2,16" - ], - [ - { - "w": 1.75 - }, - "3,0", - { - "c": "#cccccc" - }, - "3,1", - "3,2", - "3,3", - "3,4", - "3,5", - "3,6", - "3,7", - "3,8", - "3,9", - "3,10", - "3,11", - { - "c": "#777777", - "w": 2.25 - }, - "3,13" - ], - [ - { - "c": "#aaaaaa", - "w": 2.25 - }, - "4,0", - { - "c": "#cccccc" - }, - "4,2", - "4,3", - "4,4", - "4,5", - "4,6", - "4,7", - "4,8", - "4,9", - "4,10", - "4,11", - { - "c": "#aaaaaa", - "w": 2.75 - }, - "4,13", - { - "x": 1.25, - "c": "#777777" - }, - "4,15" - ], - [ - { - "c": "#aaaaaa", - "w": 1.25 - }, - "5,0", - { - "w": 1.25 - }, - "5,1", - { - "w": 1.25 - }, - "5,2", - { - "c": "#cccccc", - "w": 6.25 - }, - "5,6", - { - "c": "#aaaaaa", - "w": 1.25 - }, - "5,10", - { - "w": 1.25 - }, - "5,11", - { - "w": 1.25 - }, - "5,12", - { - "w": 1.25 - }, - "5,13", - { - "x": 0.25, - "c": "#777777" - }, - "5,14", - "5,15", - "5,16" - ] - ] - } -} diff --git a/keyboards/keychron/k1_pro/via_json/k1_pro_ansi_white.json b/keyboards/keychron/k1_pro/via_json/k1_pro_ansi_white.json deleted file mode 100644 index 24565da56f..0000000000 --- a/keyboards/keychron/k1_pro/via_json/k1_pro_ansi_white.json +++ /dev/null @@ -1,226 +0,0 @@ -{ - "name": "Keychron K1 Pro ANSI White", - "vendorId": "0x3434", - "productId": "0x0213", - "keycodes": ["qmk_lighting"], - "customKeycodes": [ - {"name": "Left Option", "title": "Left Option", "shortName": "LOpt"}, - {"name": "Right Option", "title": "Right Option", "shortName": "ROpt"}, - {"name": "Left Cmd", "title": "Left Command", "shortName": "LCmd"}, - {"name": "Right Cmd", "title": "Right Command", "shortName": "RCmd"}, - {"name": "Task View", "title": "Task View in Windows", "shortName": "Task"}, - {"name": "File Explorer", "title": "File Explorer in Windows", "shortName": "File"}, - {"name": "Screen shot", "title": "Screenshot in macOS", "shortName": "SShot"}, - {"name": "Cortana", "title": "Cortana in Windows", "shortName": "Cortana"}, - {"name": "Siri", "title": "Siri in macOS", "shortName": "Siri"}, - {"name": "Bluetooth Host 1", "title": "Bluetooth Host 1", "shortName": "BTH1"}, - {"name": "Bluetooth Host 2", "title": "Bluetooth Host 2", "shortName": "BTH2"}, - {"name": "Bluetooth Host 3", "title": "Bluetooth Host 3", "shortName": "BTH3"}, - {"name": "Battery Level", "title": "Show battery level", "shortName": "Batt"} - ], - "matrix": {"rows": 6, "cols": 17}, - "layouts": { - "keymap": [ - [ - { - "c": "#777777" - }, - "0,0", - { - "x": 1, - "c": "#cccccc" - }, - "0,1", - "0,2", - "0,3", - "0,4", - { - "x": 0.5, - "c": "#aaaaaa" - }, - "0,5", - "0,6", - "0,7", - "0,8", - { - "x": 0.5, - "c": "#cccccc" - }, - "0,9", - "0,10", - "0,11", - "0,12", - { - "x": 0.25, - "c": "#aaaaaa" - }, - "0,14", - "0,15", - "0,16" - ], - [ - { - "y": 0.25 - }, - "1,0", - { - "c": "#cccccc" - }, - "1,1", - "1,2", - "1,3", - "1,4", - "1,5", - "1,6", - "1,7", - "1,8", - "1,9", - "1,10", - "1,11", - "1,12", - { - "c": "#aaaaaa", - "w": 2 - }, - "1,13", - { - "x": 0.25 - }, - "1,14", - "1,15", - "1,16" - ], - [ - { - "w": 1.5 - }, - "2,0", - { - "c": "#cccccc" - }, - "2,1", - "2,2", - "2,3", - "2,4", - "2,5", - "2,6", - "2,7", - "2,8", - "2,9", - "2,10", - "2,11", - "2,12", - { - "c": "#aaaaaa", - "w": 1.5 - }, - "2,13", - { - "x": 0.25 - }, - "2,14", - "2,15", - "2,16" - ], - [ - { - "w": 1.75 - }, - "3,0", - { - "c": "#cccccc" - }, - "3,1", - "3,2", - "3,3", - "3,4", - "3,5", - "3,6", - "3,7", - "3,8", - "3,9", - "3,10", - "3,11", - { - "c": "#777777", - "w": 2.25 - }, - "3,13" - ], - [ - { - "c": "#aaaaaa", - "w": 2.25 - }, - "4,0", - { - "c": "#cccccc" - }, - "4,2", - "4,3", - "4,4", - "4,5", - "4,6", - "4,7", - "4,8", - "4,9", - "4,10", - "4,11", - { - "c": "#aaaaaa", - "w": 2.75 - }, - "4,13", - { - "x": 1.25, - "c": "#777777" - }, - "4,15" - ], - [ - { - "c": "#aaaaaa", - "w": 1.25 - }, - "5,0", - { - "w": 1.25 - }, - "5,1", - { - "w": 1.25 - }, - "5,2", - { - "c": "#cccccc", - "w": 6.25 - }, - "5,6", - { - "c": "#aaaaaa", - "w": 1.25 - }, - "5,10", - { - "w": 1.25 - }, - "5,11", - { - "w": 1.25 - }, - "5,12", - { - "w": 1.25 - }, - "5,13", - { - "x": 0.25, - "c": "#777777" - }, - "5,14", - "5,15", - "5,16" - ] - ] - } -} diff --git a/keyboards/keychron/k1_pro/via_json/k1_pro_iso_rgb.json b/keyboards/keychron/k1_pro/via_json/k1_pro_iso_rgb.json deleted file mode 100644 index e905310991..0000000000 --- a/keyboards/keychron/k1_pro/via_json/k1_pro_iso_rgb.json +++ /dev/null @@ -1,292 +0,0 @@ -{ - "name": "Keychron K1 Pro ISO RGB", - "vendorId": "0x3434", - "productId": "0x0211", - "keycodes": ["qmk_lighting"], - "menus": [ - { - "label": "Lighting", - "content": [ - { - "label": "Backlight", - "content": [ - { - "label": "Brightness", - "type": "range", - "options": [0, 255], - "content": ["id_qmk_rgb_matrix_brightness", 3, 1] - }, - { - "label": "Effect", - "type": "dropdown", - "content": ["id_qmk_rgb_matrix_effect", 3, 2], - "options": [ - ["None", 0], - ["Solid Color", 1], - ["Breathing", 2], - ["Band Spiral Val", 3], - ["Cycle All", 4], - ["Cycle Left Right", 5], - ["Cycle Up Down", 6], - ["Rainbow Moving Chevron", 7], - ["Cycle Out In", 8], - ["Cycle Out In Dual", 9], - ["Cycle Pinwheel", 10], - ["Cycle Spiral", 11], - ["Dual Beacon", 12], - ["Rainbow Beacon", 13], - ["Jellybean Raindrops", 14], - ["Pixel Rain", 15], - ["Typing Heatmap", 16], - ["Digital Rain", 17], - ["Reactive Simple", 18], - ["Reactive Multiwide", 19], - ["Reactive Multinexus", 20], - ["Splash", 21], - ["Solid Splash", 22] - ] - }, - { - "showIf": "{id_qmk_rgb_matrix_effect} > 1", - "label": "Effect Speed", - "type": "range", - "options": [0, 255], - "content": ["id_qmk_rgb_matrix_effect_speed", 3, 3] - }, - { - "showIf": "{id_qmk_rgb_matrix_effect} != 0 && ( {id_qmk_rgb_matrix_effect} < 4 || {id_qmk_rgb_matrix_effect} == 18 || ({id_qmk_rgb_matrix_effect} > 17 && {id_qmk_rgb_matrix_effect} != 21) ) ", - "label": "Color", - "type": "color", - "content": ["id_qmk_rgb_matrix_color", 3, 4] - } - ] - } - ] - } - ], - "customKeycodes": [ - {"name": "Left Option", "title": "Left Option", "shortName": "LOpt"}, - {"name": "Right Option", "title": "Right Option", "shortName": "ROpt"}, - {"name": "Left Cmd", "title": "Left Command", "shortName": "LCmd"}, - {"name": "Right Cmd", "title": "Right Command", "shortName": "RCmd"}, - {"name": "Task View", "title": "Task View in Windows", "shortName": "Task"}, - {"name": "File Explorer", "title": "File Explorer in Windows", "shortName": "File"}, - {"name": "Screen shot", "title": "Screenshot in macOS", "shortName": "SShot"}, - {"name": "Cortana", "title": "Cortana in Windows", "shortName": "Cortana"}, - {"name": "Siri", "title": "Siri in macOS", "shortName": "Siri"}, - {"name": "Bluetooth Host 1", "title": "Bluetooth Host 1", "shortName": "BTH1"}, - {"name": "Bluetooth Host 2", "title": "Bluetooth Host 2", "shortName": "BTH2"}, - {"name": "Bluetooth Host 3", "title": "Bluetooth Host 3", "shortName": "BTH3"}, - {"name": "Battery Level", "title": "Show battery level", "shortName": "Batt"} - ], - "matrix": {"rows": 6, "cols": 17}, - "layouts": { - "keymap": [ - [ - { - "c": "#777777" - }, - "0,0", - { - "x": 1, - "c": "#cccccc" - }, - "0,1", - "0,2", - "0,3", - "0,4", - { - "x": 0.5, - "c": "#aaaaaa" - }, - "0,5", - "0,6", - "0,7", - "0,8", - { - "x": 0.5, - "c": "#cccccc" - }, - "0,9", - "0,10", - "0,11", - "0,12", - { - "x": 0.25, - "c": "#aaaaaa" - }, - "0,14", - "0,15", - "0,16" - ], - [ - { - "y": 0.25 - }, - "1,0", - { - "c": "#cccccc" - }, - "1,1", - "1,2", - "1,3", - "1,4", - "1,5", - "1,6", - "1,7", - "1,8", - "1,9", - "1,10", - "1,11", - "1,12", - { - "c": "#aaaaaa", - "w": 2 - }, - "1,13", - { - "x": 0.25 - }, - "1,14", - "1,15", - "1,16" - ], - [ - { - "w": 1.5 - }, - "2,0", - { - "c": "#cccccc" - }, - "2,1", - "2,2", - "2,3", - "2,4", - "2,5", - "2,6", - "2,7", - "2,8", - "2,9", - "2,10", - "2,11", - "2,12", - { - "x": 0.25, - "c": "#777777", - "w": 1.25, - "h": 2, - "w2": 1.5, - "h2": 1, - "x2": -0.25 - }, - "2,13", - { - "x": 0.25, - "c": "#aaaaaa" - }, - "2,14", - "2,15", - "2,16" - ], - [ - { - "w": 1.75 - }, - "3,0", - { - "c": "#cccccc" - }, - "3,1", - "3,2", - "3,3", - "3,4", - "3,5", - "3,6", - "3,7", - "3,8", - "3,9", - "3,10", - "3,11", - { - "c": "#aaaaaa" - }, - "3,13" - ], - [ - { - "w": 1.25 - }, - "4,0", - "4,1", - { - "c": "#cccccc" - }, - "4,2", - "4,3", - "4,4", - "4,5", - "4,6", - "4,7", - "4,8", - "4,9", - "4,10", - "4,11", - { - "c": "#aaaaaa", - "w": 2.75 - }, - "4,13", - { - "x": 1.25, - "c": "#777777" - }, - "4,15" - ], - [ - { - "c": "#aaaaaa", - "w": 1.25 - }, - "5,0", - { - "w": 1.25 - }, - "5,1", - { - "w": 1.25 - }, - "5,2", - { - "c": "#cccccc", - "w": 6.25 - }, - "5,6", - { - "c": "#aaaaaa", - "w": 1.25 - }, - "5,10", - { - "w": 1.25 - }, - "5,11", - { - "w": 1.25 - }, - "5,12", - { - "w": 1.25 - }, - "5,13", - { - "x": 0.25, - "c": "#777777" - }, - "5,14", - "5,15", - "5,16" - ] - ] - } -} diff --git a/keyboards/keychron/k1_pro/via_json/k1_pro_iso_white.json b/keyboards/keychron/k1_pro/via_json/k1_pro_iso_white.json deleted file mode 100644 index 3e2dcee9e7..0000000000 --- a/keyboards/keychron/k1_pro/via_json/k1_pro_iso_white.json +++ /dev/null @@ -1,231 +0,0 @@ -{ - "name": "Keychron K1 Pro ISO White", - "vendorId": "0x3434", - "productId": "0x0214", - "keycodes": ["qmk_lighting"], - "customKeycodes": [ - {"name": "Left Option", "title": "Left Option", "shortName": "LOpt"}, - {"name": "Right Option", "title": "Right Option", "shortName": "ROpt"}, - {"name": "Left Cmd", "title": "Left Command", "shortName": "LCmd"}, - {"name": "Right Cmd", "title": "Right Command", "shortName": "RCmd"}, - {"name": "Task View", "title": "Task View in Windows", "shortName": "Task"}, - {"name": "File Explorer", "title": "File Explorer in Windows", "shortName": "File"}, - {"name": "Screen shot", "title": "Screenshot in macOS", "shortName": "SShot"}, - {"name": "Cortana", "title": "Cortana in Windows", "shortName": "Cortana"}, - {"name": "Siri", "title": "Siri in macOS", "shortName": "Siri"}, - {"name": "Bluetooth Host 1", "title": "Bluetooth Host 1", "shortName": "BTH1"}, - {"name": "Bluetooth Host 2", "title": "Bluetooth Host 2", "shortName": "BTH2"}, - {"name": "Bluetooth Host 3", "title": "Bluetooth Host 3", "shortName": "BTH3"}, - {"name": "Battery Level", "title": "Show battery level", "shortName": "Batt"} - ], - "matrix": {"rows": 6, "cols": 17}, - "layouts": { - "keymap": [ - [ - { - "c": "#777777" - }, - "0,0", - { - "x": 1, - "c": "#cccccc" - }, - "0,1", - "0,2", - "0,3", - "0,4", - { - "x": 0.5, - "c": "#aaaaaa" - }, - "0,5", - "0,6", - "0,7", - "0,8", - { - "x": 0.5, - "c": "#cccccc" - }, - "0,9", - "0,10", - "0,11", - "0,12", - { - "x": 0.25, - "c": "#aaaaaa" - }, - "0,14", - "0,15", - "0,16" - ], - [ - { - "y": 0.25 - }, - "1,0", - { - "c": "#cccccc" - }, - "1,1", - "1,2", - "1,3", - "1,4", - "1,5", - "1,6", - "1,7", - "1,8", - "1,9", - "1,10", - "1,11", - "1,12", - { - "c": "#aaaaaa", - "w": 2 - }, - "1,13", - { - "x": 0.25 - }, - "1,14", - "1,15", - "1,16" - ], - [ - { - "w": 1.5 - }, - "2,0", - { - "c": "#cccccc" - }, - "2,1", - "2,2", - "2,3", - "2,4", - "2,5", - "2,6", - "2,7", - "2,8", - "2,9", - "2,10", - "2,11", - "2,12", - { - "x": 0.25, - "c": "#777777", - "w": 1.25, - "h": 2, - "w2": 1.5, - "h2": 1, - "x2": -0.25 - }, - "2,13", - { - "x": 0.25, - "c": "#aaaaaa" - }, - "2,14", - "2,15", - "2,16" - ], - [ - { - "w": 1.75 - }, - "3,0", - { - "c": "#cccccc" - }, - "3,1", - "3,2", - "3,3", - "3,4", - "3,5", - "3,6", - "3,7", - "3,8", - "3,9", - "3,10", - "3,11", - { - "c": "#aaaaaa" - }, - "3,13" - ], - [ - { - "w": 1.25 - }, - "4,0", - "4,1", - { - "c": "#cccccc" - }, - "4,2", - "4,3", - "4,4", - "4,5", - "4,6", - "4,7", - "4,8", - "4,9", - "4,10", - "4,11", - { - "c": "#aaaaaa", - "w": 2.75 - }, - "4,13", - { - "x": 1.25, - "c": "#777777" - }, - "4,15" - ], - [ - { - "c": "#aaaaaa", - "w": 1.25 - }, - "5,0", - { - "w": 1.25 - }, - "5,1", - { - "w": 1.25 - }, - "5,2", - { - "c": "#cccccc", - "w": 6.25 - }, - "5,6", - { - "c": "#aaaaaa", - "w": 1.25 - }, - "5,10", - { - "w": 1.25 - }, - "5,11", - { - "w": 1.25 - }, - "5,12", - { - "w": 1.25 - }, - "5,13", - { - "x": 0.25, - "c": "#777777" - }, - "5,14", - "5,15", - "5,16" - ] - ] - } -} diff --git a/keyboards/keychron/k2_max/ansi/info.json b/keyboards/keychron/k2_max/ansi/info.json deleted file mode 100644 index b35e609f97..0000000000 --- a/keyboards/keychron/k2_max/ansi/info.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "indicators": { - "caps_lock": "A13", - "on_state": 1 - }, - "matrix_pins": { - "cols": ["C6", "C7", "C8", "A14", "A15", "C10", "C11", "C13", "C14", "C15", "C0", "C1", "C2", "C3", "A0", "A1"], - "rows": ["C12", "D2", "B3", "B4", "B5", "B6"] - } -} diff --git a/keyboards/keychron/k2_max/ansi/rgb/config.h b/keyboards/keychron/k2_max/ansi/rgb/config.h deleted file mode 100644 index c123c42adb..0000000000 --- a/keyboards/keychron/k2_max/ansi/rgb/config.h +++ /dev/null @@ -1,48 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#pragma once - -#ifdef RGB_MATRIX_ENABLE -/* RGB Matrix driver configuration */ -# define RGB_MATRIX_LED_COUNT 84 -# define DRIVER_COUNT 2 -# define DRIVER_CS_PINS \ - { B8, B9 } - -/* Scan phase of led driver set as MSKPHASE_9CHANNEL(defined as 0x03 in snled27351.h) */ -# define SNLED27351_PHASE_CHANNEL MSKPHASE_9CHANNEL -/* Set LED driver current */ -# define SNLED27351_CURRENT_TUNE \ - { 0x2A, 0x2A, 0x2A, 0x2A, 0x2A, 0x2A, 0x2A, 0x2A, 0x2A, 0x2A, 0x2A, 0x2A } - -/* Set to infinit, which is use in USB mode by default */ -# define RGB_MATRIX_TIMEOUT RGB_MATRIX_TIMEOUT_INFINITE -/* Allow shutdown of led driver to save power */ -# define RGB_MATRIX_DRIVER_SHUTDOWN_ENABLE -/* Turn off backlight on low brightness to save power */ -# define RGB_MATRIX_BRIGHTNESS_TURN_OFF_VAL 48 - -/* Indications */ -# define DIM_CAPS_LOCK -# define CAPS_LOCK_INDEX 46 -# define LOW_BAT_IND_INDEX \ - { 77 } - -# define RGB_MATRIX_KEYPRESSES -# define RGB_MATRIX_FRAMEBUFFER_EFFECTS - -#endif diff --git a/keyboards/keychron/k2_max/ansi/rgb/info.json b/keyboards/keychron/k2_max/ansi/rgb/info.json deleted file mode 100644 index 5732c7265d..0000000000 --- a/keyboards/keychron/k2_max/ansi/rgb/info.json +++ /dev/null @@ -1,36 +0,0 @@ -{ - "usb": { - "pid": "0x0A20", - "device_version": "1.0.0" - }, - "features": { - "rgb_matrix": true - }, - "rgb_matrix": { - "driver": "snled27351_spi", - "sleep": true, - "animations": { - "band_spiral_val": true, - "breathing": true, - "cycle_all": true, - "cycle_left_right": true, - "cycle_out_in": true, - "cycle_out_in_dual": true, - "cycle_pinwheel": true, - "cycle_spiral": true, - "cycle_up_down": true, - "digital_rain": true, - "dual_beacon": true, - "jellybean_raindrops": true, - "pixel_rain": true, - "rainbow_beacon": true, - "rainbow_moving_chevron": true, - "solid_reactive_multinexus": true, - "solid_reactive_multiwide": true, - "solid_reactive_simple": true, - "solid_splash": true, - "splash": true, - "typing_heatmap": true - } - } -} diff --git a/keyboards/keychron/k2_max/ansi/rgb/keymaps/default/keymap.c b/keyboards/keychron/k2_max/ansi/rgb/keymaps/default/keymap.c deleted file mode 100644 index 90031ad893..0000000000 --- a/keyboards/keychron/k2_max/ansi/rgb/keymaps/default/keymap.c +++ /dev/null @@ -1,68 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#include QMK_KEYBOARD_H -#include "keychron_common.h" - -enum layers { - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN, -}; - -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { -[MAC_BASE] = LAYOUT_ansi_84( - KC_ESC, KC_BRID, KC_BRIU, KC_MCTRL, KC_LNPAD, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_SNAP, KC_DEL, RGB_MOD, - KC_GRV, 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_PGUP, - 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_PGDN, - 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_HOME, - 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_LOPTN, KC_LCMMD, KC_SPC, KC_RCMMD,MO(MAC_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - -[MAC_FN] = LAYOUT_ansi_84( - _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, RGB_TOG, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - -[WIN_BASE] = LAYOUT_ansi_84( - KC_ESC, 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_PSCR, KC_DEL, RGB_MOD, - KC_GRV, 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_PGUP, - 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_PGDN, - 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_HOME, - 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_SPC, KC_RALT, MO(WIN_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - -[WIN_FN] = LAYOUT_ansi_84( - _______, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, RGB_TOG, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______) -}; - -// clang-format on -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - if (!process_record_keychron_common(keycode, record)) { - return false; - } - return true; -} diff --git a/keyboards/keychron/k2_max/ansi/rgb/keymaps/via/keymap.c b/keyboards/keychron/k2_max/ansi/rgb/keymaps/via/keymap.c deleted file mode 100644 index 90031ad893..0000000000 --- a/keyboards/keychron/k2_max/ansi/rgb/keymaps/via/keymap.c +++ /dev/null @@ -1,68 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#include QMK_KEYBOARD_H -#include "keychron_common.h" - -enum layers { - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN, -}; - -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { -[MAC_BASE] = LAYOUT_ansi_84( - KC_ESC, KC_BRID, KC_BRIU, KC_MCTRL, KC_LNPAD, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_SNAP, KC_DEL, RGB_MOD, - KC_GRV, 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_PGUP, - 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_PGDN, - 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_HOME, - 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_LOPTN, KC_LCMMD, KC_SPC, KC_RCMMD,MO(MAC_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - -[MAC_FN] = LAYOUT_ansi_84( - _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, RGB_TOG, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - -[WIN_BASE] = LAYOUT_ansi_84( - KC_ESC, 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_PSCR, KC_DEL, RGB_MOD, - KC_GRV, 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_PGUP, - 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_PGDN, - 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_HOME, - 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_SPC, KC_RALT, MO(WIN_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - -[WIN_FN] = LAYOUT_ansi_84( - _______, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, RGB_TOG, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______) -}; - -// clang-format on -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - if (!process_record_keychron_common(keycode, record)) { - return false; - } - return true; -} diff --git a/keyboards/keychron/k2_max/ansi/rgb/keymaps/via/rules.mk b/keyboards/keychron/k2_max/ansi/rgb/keymaps/via/rules.mk deleted file mode 100644 index 1e5b99807c..0000000000 --- a/keyboards/keychron/k2_max/ansi/rgb/keymaps/via/rules.mk +++ /dev/null @@ -1 +0,0 @@ -VIA_ENABLE = yes diff --git a/keyboards/keychron/k2_max/ansi/rgb/rgb.c b/keyboards/keychron/k2_max/ansi/rgb/rgb.c deleted file mode 100644 index 4627bcc1be..0000000000 --- a/keyboards/keychron/k2_max/ansi/rgb/rgb.c +++ /dev/null @@ -1,147 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#include "quantum.h" - -// clang-format off -#ifdef RGB_MATRIX_ENABLE -const snled27351_led_t g_snled27351_leds[RGB_MATRIX_LED_COUNT] = { -/* Refer to SNLED27351 manual for these locations - * driver - * | R location - * | | G location - * | | | B location - * | | | | */ - {0, I_1, G_1, H_1}, - {0, I_2, G_2, H_2}, - {0, I_3, G_3, H_3}, - {0, I_4, G_4, H_4}, - {0, I_5, G_5, H_5}, - {0, I_6, G_6, H_6}, - {0, I_7, G_7, H_7}, - {0, I_8, G_8, H_8}, - {0, I_9, G_9, H_9}, - {0, I_10, G_10, H_10}, - {0, I_11, G_11, H_11}, - {0, I_12, G_12, H_12}, - {0, I_13, G_13, H_13}, - {0, I_14, G_14, H_14}, - {0, I_15, G_15, H_15}, - {0, I_16, G_16, H_16}, - - {0, C_1, A_1, B_1}, - {0, C_2, A_2, B_2}, - {0, C_3, A_3, B_3}, - {0, C_4, A_4, B_4}, - {0, C_5, A_5, B_5}, - {0, C_6, A_6, B_6}, - {0, C_7, A_7, B_7}, - {0, C_8, A_8, B_8}, - {0, C_9, A_9, B_9}, - {0, C_10, A_10, B_10}, - {0, C_11, A_11, B_11}, - {0, C_12, A_12, B_12}, - {0, C_13, A_13, B_13}, - {0, C_14, A_14, B_14}, - {0, C_16, A_16, B_16}, - - {0, F_1, D_1, E_1}, - {0, F_2, D_2, E_2}, - {0, F_3, D_3, E_3}, - {0, F_4, D_4, E_4}, - {0, F_5, D_5, E_5}, - {0, F_6, D_6, E_6}, - {0, F_7, D_7, E_7}, - {0, F_8, D_8, E_8}, - {0, F_9, D_9, E_9}, - {0, F_10, D_10, E_10}, - {0, F_11, D_11, E_11}, - {0, F_12, D_12, E_12}, - {0, F_13, D_13, E_13}, - {0, F_14, D_14, E_14}, - {0, F_16, D_16, E_16}, - - {1, C_16, A_16, B_16}, - {1, C_15, A_15, B_15}, - {1, C_14, A_14, B_14}, - {1, C_13, A_13, B_13}, - {1, C_12, A_12, B_12}, - {1, C_11, A_11, B_11}, - {1, C_10, A_10, B_10}, - {1, C_9, A_9, B_9}, - {1, C_8, A_8, B_8}, - {1, C_7, A_7, B_7}, - {1, C_6, A_6, B_6}, - {1, C_5, A_5, B_5}, - {1, C_3, A_3, B_3}, - {1, C_1, A_1, B_1}, - - {1, I_16, G_16, H_16}, - {1, I_14, G_14, H_14}, - {1, I_13, G_13, H_13}, - {1, I_12, G_12, H_12}, - {1, I_11, G_11, H_11}, - {1, I_10, G_10, H_10}, - {1, I_9, G_9, H_9}, - {1, I_8, G_8, H_8}, - {1, I_7, G_7, H_7}, - {1, I_6, G_6, H_6}, - {1, I_5, G_5, H_5}, - {1, I_4, G_4, H_4}, - {1, I_3, G_3, H_3}, - {1, I_1, G_1, H_1}, - - {1, F_16, D_16, E_16}, - {1, F_15, D_15, E_15}, - {1, F_14, D_14, E_14}, - {1, F_10, D_10, E_10}, - {1, F_7, D_7, E_7}, - {1, F_6, D_6, E_6}, - {1, F_5, D_5, E_5}, - {1, F_4, D_4, E_4}, - {1, F_3, D_3, E_3}, - {1, F_1, D_1, E_1} -}; - -#define __ NO_LED - -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, 40, 41, 42, 43, 44, __, 45 }, - { 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, __, 58, __, 59 }, - { 60, __, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, __, 73 }, - { 74, 75, 76, __, __, __, 77, __, __, 78, 79, 80, 81, 82, __, 83 } - }, - { - {0, 0}, {14, 0}, {29, 0}, {44, 0}, {59, 0}, {74, 0}, { 89, 0}, {104, 0}, {119, 0}, {134, 0}, {149, 0}, {164, 0}, {179, 0}, {194, 0}, {209,0}, {223, 0}, - {0,12}, {14,12}, {29,12}, {44,12}, {59,12}, {74,12}, { 89, 12}, {104, 12}, {119, 12}, {134, 12}, {149, 12}, {164, 12}, {179, 12}, {201, 12}, {223, 12}, - {3,25}, {22,25}, {37,25}, {52,25}, {67,25}, {82,25}, { 97, 25}, {112, 25}, {126, 25}, {141, 25}, {156, 25}, {171, 25}, {186, 25}, {205, 25}, {223, 25}, - {5,38}, {26,38}, {41,38}, {55,38}, {70,38}, {85,38}, {100, 38}, {115, 38}, {130, 38}, {145, 38}, {160, 38}, {175, 38}, {201, 38}, {223, 38}, - {8,51}, {33,51}, {48,51}, {63,51}, {78,51}, { 93, 51}, {108, 51}, {123, 51}, {138, 51}, {153, 51}, {168, 51}, {187, 51}, {209, 51}, {223, 51}, - {1,64}, {20,64}, {39,64}, { 95, 64}, {149, 64}, {164, 64}, {179, 64}, {194, 64}, {209, 64}, {223, 64} - }, - { - 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, - 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, - 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, - 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, - 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, - 4, 4, 4, 4, 4, 4, 4, 4, 4, 4 - } -}; -#endif diff --git a/keyboards/keychron/k2_max/ansi/rgb/rules.mk b/keyboards/keychron/k2_max/ansi/rgb/rules.mk deleted file mode 100644 index 6e7633bfe0..0000000000 --- a/keyboards/keychron/k2_max/ansi/rgb/rules.mk +++ /dev/null @@ -1 +0,0 @@ -# This file intentionally left blank diff --git a/keyboards/keychron/k2_max/ansi/white/config.h b/keyboards/keychron/k2_max/ansi/white/config.h deleted file mode 100644 index 97689b797b..0000000000 --- a/keyboards/keychron/k2_max/ansi/white/config.h +++ /dev/null @@ -1,47 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#pragma once - -#ifdef LED_MATRIX_ENABLE -/* LED matrix driver configuration */ -# define LED_MATRIX_LED_COUNT 84 -# define DRIVER_COUNT 1 -# define DRIVER_CS_PINS \ - { B9 } - -/* Use first 6 channels of LED driver */ -# define SNLED27351_PHASE_CHANNEL MSKPHASE_6CHANNEL -/* Set LED driver current */ -# define SNLED27351_CURRENT_TUNE \ - { 0x50, 0x50, 0x50, 0x50, 0x50, 0x50, 0x50, 0x50, 0x50, 0x50, 0x50, 0x50 } - -/* Set to infinit, which is use in USB mode by default */ -# define LED_MATRIX_TIMEOUT LED_MATRIX_TIMEOUT_INFINITE -/* Allow shutdown of led driver to save power */ -# define LED_MATRIX_DRIVER_SHUTDOWN_ENABLE -/* Turn off backlight on low brightness to save power */ -# define LED_MATRIX_BRIGHTNESS_TURN_OFF_VAL 48 -# define LED_MATRIX_VAL_STEP 16 - -/* Indications */ -# define DIM_CAPS_LOCK -# define CAPS_LOCK_INDEX 46 -# define LOW_BAT_IND_INDEX \ - { 77 } - -# define LED_MATRIX_KEYPRESSES -#endif diff --git a/keyboards/keychron/k2_max/ansi/white/info.json b/keyboards/keychron/k2_max/ansi/white/info.json deleted file mode 100644 index 75f4a70faf..0000000000 --- a/keyboards/keychron/k2_max/ansi/white/info.json +++ /dev/null @@ -1,30 +0,0 @@ -{ - "usb": { - "pid": "0x0A23", - "device_version": "1.0.0" - }, - "features": { - "led_matrix": true - }, - "led_matrix": { - "driver": "snled27351_spi", - "sleep": true, - "animations": { - "none": true, - "solid": true, - "breathing": true, - "band_pinwheel": true, - "band_spiral": true, - "cycle_left_right": true, - "cycle_up_down": true, - "cycle_out_in": true, - "dual_beacon": true, - "solid_reactive_simple": true, - "solid_reactive_multiwide": true, - "solid_reactive_multinexus": true, - "solid_splash": true, - "wave_left_right": true, - "wave_up_down": true - } - } -} diff --git a/keyboards/keychron/k2_max/ansi/white/keymaps/default/keymap.c b/keyboards/keychron/k2_max/ansi/white/keymaps/default/keymap.c deleted file mode 100644 index 257cc8c28b..0000000000 --- a/keyboards/keychron/k2_max/ansi/white/keymaps/default/keymap.c +++ /dev/null @@ -1,68 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#include QMK_KEYBOARD_H -#include "keychron_common.h" - -enum layers { - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN, -}; - -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { -[MAC_BASE] = LAYOUT_ansi_84( - KC_ESC, KC_BRID, KC_BRIU, KC_MCTRL, KC_LNPAD, BL_DOWN, BL_UP, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_SNAP, KC_DEL, BL_STEP, - KC_GRV, 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_PGUP, - 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_PGDN, - 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_HOME, - 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_LOPTN, KC_LCMMD, KC_SPC, KC_RCMMD,MO(MAC_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - -[MAC_FN] = LAYOUT_ansi_84( - _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, BL_TOGG, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - BL_TOGG, BL_STEP, BL_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, BL_DOWN, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - -[WIN_BASE] = LAYOUT_ansi_84( - KC_ESC, 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_PSCR, KC_DEL, BL_STEP, - KC_GRV, 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_PGUP, - 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_PGDN, - 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_HOME, - 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_SPC, KC_RALT, MO(WIN_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - -[WIN_FN] = LAYOUT_ansi_84( - _______, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, BL_DOWN, BL_UP, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, BL_TOGG, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - BL_TOGG, BL_STEP, BL_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, BL_DOWN, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______) -}; - -// clang-format on -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - if (!process_record_keychron_common(keycode, record)) { - return false; - } - return true; -} diff --git a/keyboards/keychron/k2_max/ansi/white/keymaps/via/keymap.c b/keyboards/keychron/k2_max/ansi/white/keymaps/via/keymap.c deleted file mode 100644 index 257cc8c28b..0000000000 --- a/keyboards/keychron/k2_max/ansi/white/keymaps/via/keymap.c +++ /dev/null @@ -1,68 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#include QMK_KEYBOARD_H -#include "keychron_common.h" - -enum layers { - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN, -}; - -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { -[MAC_BASE] = LAYOUT_ansi_84( - KC_ESC, KC_BRID, KC_BRIU, KC_MCTRL, KC_LNPAD, BL_DOWN, BL_UP, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_SNAP, KC_DEL, BL_STEP, - KC_GRV, 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_PGUP, - 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_PGDN, - 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_HOME, - 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_LOPTN, KC_LCMMD, KC_SPC, KC_RCMMD,MO(MAC_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - -[MAC_FN] = LAYOUT_ansi_84( - _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, BL_TOGG, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - BL_TOGG, BL_STEP, BL_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, BL_DOWN, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - -[WIN_BASE] = LAYOUT_ansi_84( - KC_ESC, 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_PSCR, KC_DEL, BL_STEP, - KC_GRV, 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_PGUP, - 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_PGDN, - 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_HOME, - 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_SPC, KC_RALT, MO(WIN_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - -[WIN_FN] = LAYOUT_ansi_84( - _______, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, BL_DOWN, BL_UP, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, BL_TOGG, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - BL_TOGG, BL_STEP, BL_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, BL_DOWN, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______) -}; - -// clang-format on -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - if (!process_record_keychron_common(keycode, record)) { - return false; - } - return true; -} diff --git a/keyboards/keychron/k2_max/ansi/white/keymaps/via/rules.mk b/keyboards/keychron/k2_max/ansi/white/keymaps/via/rules.mk deleted file mode 100644 index 1e5b99807c..0000000000 --- a/keyboards/keychron/k2_max/ansi/white/keymaps/via/rules.mk +++ /dev/null @@ -1 +0,0 @@ -VIA_ENABLE = yes diff --git a/keyboards/keychron/k2_max/ansi/white/rules.mk b/keyboards/keychron/k2_max/ansi/white/rules.mk deleted file mode 100644 index 6e7633bfe0..0000000000 --- a/keyboards/keychron/k2_max/ansi/white/rules.mk +++ /dev/null @@ -1 +0,0 @@ -# This file intentionally left blank diff --git a/keyboards/keychron/k2_max/ansi/white/white.c b/keyboards/keychron/k2_max/ansi/white/white.c deleted file mode 100644 index 2868e78ded..0000000000 --- a/keyboards/keychron/k2_max/ansi/white/white.c +++ /dev/null @@ -1,149 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#include "quantum.h" - -// clang-format off -#ifdef LED_MATRIX_ENABLE -const snled27351_led_t g_snled27351_leds[LED_MATRIX_LED_COUNT] = { -/* Refer to SNLED27351 manual for these locations - * driver - * | LED address - * | | */ - {0, A_16}, - {0, A_15}, - {0, A_14}, - {0, A_13}, - {0, A_12}, - {0, A_11}, - {0, A_10}, - {0, A_9}, - {0, A_8}, - {0, A_7}, - {0, A_6}, - {0, A_5}, - {0, A_4}, - {0, A_3}, - {0, A_2}, - {0, A_1}, - - {0, B_16}, - {0, B_15}, - {0, B_14}, - {0, B_13}, - {0, B_12}, - {0, B_11}, - {0, B_10}, - {0, B_9}, - {0, B_8}, - {0, B_7}, - {0, B_6}, - {0, B_5}, - {0, B_4}, - {0, B_3}, - {0, B_1}, - - {0, C_16}, - {0, C_15}, - {0, C_14}, - {0, C_13}, - {0, C_12}, - {0, C_11}, - {0, C_10}, - {0, C_9}, - {0, C_8}, - {0, C_7}, - {0, C_6}, - {0, C_5}, - {0, C_4}, - {0, C_3}, - {0, C_1}, - - {0, D_16}, - {0, D_15}, - {0, D_14}, - {0, D_13}, - {0, D_12}, - {0, D_11}, - {0, D_10}, - {0, D_9}, - {0, D_8}, - {0, D_7}, - {0, D_6}, - {0, D_5}, - {0, D_3}, - {0, D_1}, - - {0, E_16}, - {0, E_14}, - {0, E_13}, - {0, E_12}, - {0, E_11}, - {0, E_10}, - {0, E_9}, - {0, E_8}, - {0, E_7}, - {0, E_6}, - {0, E_5}, - {0, E_4}, - {0, E_3}, - {0, E_1}, - - {0, F_16}, - {0, F_15}, - {0, F_14}, - {0, F_10}, - {0, F_7}, - {0, F_6}, - {0, F_5}, - {0, F_4}, - {0, F_3}, - {0, F_1}, -}; - -#define __ NO_LED - -led_config_t g_led_config = { - { - // Key Matrix to LED Index - { 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, 40, 41, 42, 43, 44, __, 45 }, - { 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, __, 58, __, 59 }, - { 60, __, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, __, 73 }, - { 74, 75, 76, __, __, __, 77, __, __, 78, 79, 80, 81, 82, __, 83 } - }, - { - // LED Index to Physical Position - {0, 0}, {14, 0}, {29, 0}, {44, 0}, {59, 0}, {74, 0}, { 89, 0}, {104, 0}, {119, 0}, {134, 0}, {149, 0}, {164, 0}, {179, 0}, {194, 0}, {209, 0}, {223, 0}, - {0,12}, {14,12}, {29,12}, {44,12}, {59,12}, {74,12}, { 89, 12}, {104, 12}, {119, 12}, {134, 12}, {149, 12}, {164, 12}, {179, 12}, {201, 12}, {223, 12}, - {3,25}, {22,25}, {37,25}, {52,25}, {67,25}, {82,25}, { 97, 25}, {112, 25}, {126, 25}, {141, 25}, {156, 25}, {171, 25}, {186, 25}, {205, 25}, {223, 25}, - {5,38}, {26,38}, {41,38}, {55,38}, {70,38}, {85,38}, {100, 38}, {115, 38}, {130, 38}, {145, 38}, {160, 38}, {175, 38}, {199, 38}, {223, 38}, - {8,51}, {33,51}, {48,51}, {63,51}, {78,51}, { 93, 51}, {108, 51}, {123, 51}, {138, 51}, {153, 51}, {168, 51}, {187, 51}, {209, 51}, {223, 51}, - {1,64}, {20,64}, {39,64}, { 95, 64}, {149, 64}, {164, 64}, {179, 64}, {194, 64}, {209, 64}, {223, 64} - }, - { - // RGB LED Index to Flag - 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, - 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, - 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, - 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, - 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, - 4, 4, 4, 4, 4, 4, 4, 4, 4, 4 - } -}; - -#endif diff --git a/keyboards/keychron/k2_max/board.h b/keyboards/keychron/k2_max/board.h deleted file mode 100644 index 54fba748bf..0000000000 --- a/keyboards/keychron/k2_max/board.h +++ /dev/null @@ -1,226 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#pragma once - -#include_next - -// clang-format off - -/* Set GPIOA_SWDIO to INPUT and NOT FLOATING */ -#undef VAL_GPIOA_MODER -#define VAL_GPIOA_MODER (PIN_MODE_INPUT(GPIOA_BUTTON) | \ - PIN_MODE_INPUT(GPIOA_PIN1) | \ - PIN_MODE_INPUT(GPIOA_PIN2) | \ - PIN_MODE_INPUT(GPIOA_PIN3) | \ - PIN_MODE_ALTERNATE(GPIOA_CS43L22_LRCK) |\ - PIN_MODE_ALTERNATE(GPIOA_L3GD20_SCL) | \ - PIN_MODE_ALTERNATE(GPIOA_L3GD20_SD0) | \ - PIN_MODE_ALTERNATE(GPIOA_L3GD20_SDI) | \ - PIN_MODE_INPUT(GPIOA_PIN8) | \ - PIN_MODE_INPUT(GPIOA_VBUS_FS) | \ - PIN_MODE_ALTERNATE(GPIOA_OTG_FS_ID) | \ - PIN_MODE_ALTERNATE(GPIOA_OTG_FS_DM) | \ - PIN_MODE_ALTERNATE(GPIOA_OTG_FS_DP) | \ - PIN_MODE_INPUT(GPIOA_SWDIO) | \ - PIN_MODE_INPUT(GPIOA_SWCLK) | \ - PIN_MODE_INPUT(GPIOA_PIN15)) - -#undef VAL_GPIOA_PUPDR -#define VAL_GPIOA_PUPDR (PIN_PUPDR_FLOATING(GPIOA_BUTTON) | \ - PIN_PUPDR_PULLUP(GPIOA_PIN1) | \ - PIN_PUPDR_PULLUP(GPIOA_PIN2) | \ - PIN_PUPDR_PULLUP(GPIOA_PIN3) | \ - PIN_PUPDR_FLOATING(GPIOA_CS43L22_LRCK) |\ - PIN_PUPDR_FLOATING(GPIOA_L3GD20_SCL) | \ - PIN_PUPDR_PULLUP(GPIOA_L3GD20_SD0) | \ - PIN_PUPDR_PULLUP(GPIOA_L3GD20_SDI) | \ - PIN_PUPDR_PULLUP(GPIOA_PIN8) | \ - PIN_PUPDR_FLOATING(GPIOA_VBUS_FS) | \ - PIN_PUPDR_FLOATING(GPIOA_OTG_FS_ID) | \ - PIN_PUPDR_FLOATING(GPIOA_OTG_FS_DM) | \ - PIN_PUPDR_FLOATING(GPIOA_OTG_FS_DP) | \ - PIN_PUPDR_PULLUP(GPIOA_SWDIO) | \ - PIN_PUPDR_PULLUP(GPIOA_SWCLK) | \ - PIN_PUPDR_PULLUP(GPIOA_PIN15)) - -#undef VAL_GPIOB_MODER -#define VAL_GPIOB_MODER (PIN_MODE_INPUT(GPIOB_PIN0) | \ - PIN_MODE_INPUT(GPIOB_PIN1) | \ - PIN_MODE_INPUT(GPIOB_PIN2) | \ - PIN_MODE_INPUT(GPIOB_SWO) | \ - PIN_MODE_INPUT(GPIOB_PIN4) | \ - PIN_MODE_INPUT(GPIOB_PIN5) | \ - PIN_MODE_INPUT(GPIOB_LSM303DLHC_SCL) | \ - PIN_MODE_INPUT(GPIOB_PIN7) | \ - PIN_MODE_INPUT(GPIOB_PIN8) | \ - PIN_MODE_INPUT(GPIOB_LSM303DLHC_SDA) | \ - PIN_MODE_INPUT(GPIOB_MP45DT02_CLK_IN) |\ - PIN_MODE_INPUT(GPIOB_PIN11) | \ - PIN_MODE_INPUT(GPIOB_PIN12) | \ - PIN_MODE_INPUT(GPIOB_PIN13) | \ - PIN_MODE_INPUT(GPIOB_PIN14) | \ - PIN_MODE_INPUT(GPIOB_PIN15)) - -#undef VAL_GPIOB_PUPDR -#define VAL_GPIOB_PUPDR (PIN_PUPDR_PULLDOWN(GPIOB_PIN0) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN1) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN2) | \ - PIN_PUPDR_PULLDOWN(GPIOB_SWO) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN4) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN5) | \ - PIN_PUPDR_PULLDOWN(GPIOB_LSM303DLHC_SCL) |\ - PIN_PUPDR_PULLDOWN(GPIOB_PIN7) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN8) | \ - PIN_PUPDR_PULLDOWN(GPIOB_LSM303DLHC_SDA) |\ - PIN_PUPDR_PULLDOWN(GPIOB_MP45DT02_CLK_IN) |\ - PIN_PUPDR_PULLDOWN(GPIOB_PIN11) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN12) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN13) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN14) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN15)) - -#undef VAL_GPIOB_AFRL -#define VAL_GPIOB_AFRL (PIN_AFIO_AF(GPIOB_PIN0, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN1, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN2, 0U) | \ - PIN_AFIO_AF(GPIOB_SWO, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN4, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN5, 0U) | \ - PIN_AFIO_AF(GPIOB_LSM303DLHC_SCL, 0) | \ - PIN_AFIO_AF(GPIOB_PIN7, 0U)) - -#undef VAL_GPIOB_AFRH -#define VAL_GPIOB_AFRH (PIN_AFIO_AF(GPIOB_PIN8, 0U) | \ - PIN_AFIO_AF(GPIOB_LSM303DLHC_SDA, 0) | \ - PIN_AFIO_AF(GPIOB_MP45DT02_CLK_IN, 0U) |\ - PIN_AFIO_AF(GPIOB_PIN11, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN12, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN13, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN14, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN15, 0U)) - -/* C5 Need to be pulldown */ -#undef VAL_GPIOC_MODER -#define VAL_GPIOC_MODER (PIN_MODE_INPUT(GPIOC_OTG_FS_POWER_ON) |\ - PIN_MODE_INPUT(GPIOC_PIN1) | \ - PIN_MODE_INPUT(GPIOC_PIN2) | \ - PIN_MODE_INPUT(GPIOC_CS43L22_AIN4x) | \ - PIN_MODE_INPUT(GPIOC_PIN4) | \ - PIN_MODE_INPUT(GPIOC_PIN5) | \ - PIN_MODE_INPUT(GPIOC_PIN6) | \ - PIN_MODE_INPUT(GPIOC_CS43L22_MCLK) | \ - PIN_MODE_INPUT(GPIOC_PIN8) | \ - PIN_MODE_INPUT(GPIOC_PIN9) | \ - PIN_MODE_INPUT(GPIOC_CS43L22_SCLK) | \ - PIN_MODE_INPUT(GPIOC_PIN11) | \ - PIN_MODE_INPUT(GPIOC_CS43L22_SDIN) | \ - PIN_MODE_INPUT(GPIOC_PIN13) | \ - PIN_MODE_INPUT(GPIOC_OSC32_IN) | \ - PIN_MODE_INPUT(GPIOC_OSC32_OUT)) - -#undef VAL_GPIOC_PUPDR -#define VAL_GPIOC_PUPDR (PIN_PUPDR_PULLUP(GPIOC_OTG_FS_POWER_ON) |\ - PIN_PUPDR_PULLUP(GPIOC_PIN1) | \ - PIN_PUPDR_PULLUP(GPIOC_PIN2) | \ - PIN_PUPDR_PULLUP(GPIOC_CS43L22_AIN4x) |\ - PIN_PUPDR_PULLUP(GPIOC_PIN4) | \ - PIN_PUPDR_PULLDOWN(GPIOC_PIN5) | \ - PIN_PUPDR_PULLUP(GPIOC_PIN6) | \ - PIN_PUPDR_PULLUP(GPIOC_CS43L22_MCLK) | \ - PIN_PUPDR_PULLUP(GPIOC_PIN8) | \ - PIN_PUPDR_PULLUP(GPIOC_PIN9) | \ - PIN_PUPDR_PULLUP(GPIOC_CS43L22_SCLK) | \ - PIN_PUPDR_PULLUP(GPIOC_PIN11) | \ - PIN_PUPDR_PULLUP(GPIOC_CS43L22_SDIN) | \ - PIN_PUPDR_PULLUP(GPIOC_PIN13) | \ - PIN_PUPDR_PULLUP(GPIOC_OSC32_IN) | \ - PIN_PUPDR_PULLUP(GPIOC_OSC32_OUT)) - -/* Set all GPIOD pins to INPUT & PULLUP to avoid FLOATING */ -#undef VAL_GPIOD_MODER -#define VAL_GPIOD_MODER (PIN_MODE_INPUT(GPIOD_PIN0) | \ - PIN_MODE_INPUT(GPIOD_PIN1) | \ - PIN_MODE_INPUT(GPIOD_PIN2) | \ - PIN_MODE_INPUT(GPIOD_PIN3) | \ - PIN_MODE_INPUT(GPIOD_CS43L22_RESET) | \ - PIN_MODE_INPUT(GPIOD_OverCurrent) | \ - PIN_MODE_INPUT(GPIOD_PIN6) | \ - PIN_MODE_INPUT(GPIOD_PIN7) | \ - PIN_MODE_INPUT(GPIOD_PIN8) | \ - PIN_MODE_INPUT(GPIOD_PIN9) | \ - PIN_MODE_INPUT(GPIOD_PIN10) | \ - PIN_MODE_INPUT(GPIOD_PIN11) | \ - PIN_MODE_INPUT(GPIOD_LED4) | \ - PIN_MODE_INPUT(GPIOD_LED3) | \ - PIN_MODE_INPUT(GPIOD_LED5) | \ - PIN_MODE_INPUT(GPIOD_LED6)) - -#undef VAL_GPIOD_PUPDR -#define VAL_GPIOD_PUPDR (PIN_PUPDR_PULLUP(GPIOD_PIN0) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN1) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN2) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN3) | \ - PIN_PUPDR_PULLUP(GPIOD_CS43L22_RESET) |\ - PIN_PUPDR_PULLUP(GPIOD_OverCurrent) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN6) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN7) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN8) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN9) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN10) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN11) | \ - PIN_PUPDR_PULLUP(GPIOD_LED4) | \ - PIN_PUPDR_PULLUP(GPIOD_LED3) | \ - PIN_PUPDR_PULLUP(GPIOD_LED5) | \ - PIN_PUPDR_PULLUP(GPIOD_LED6)) - -/* Set all GPIOE pins to INPUT & PULLUP to avoid FLOATING */ -#undef VAL_GPIOE_MODER -#define VAL_GPIOE_MODER (PIN_MODE_INPUT(GPIOE_L3GD20_INT1) | \ - PIN_MODE_INPUT(GPIOE_L3GD20_INT2) | \ - PIN_MODE_INPUT(GPIOE_LSM303DLHC_DRDY) |\ - PIN_MODE_INPUT(GPIOE_L3GD20_CS) | \ - PIN_MODE_INPUT(GPIOE_LSM303DLHC_INT1) |\ - PIN_MODE_INPUT(GPIOE_LSM303DLHC_INT2) |\ - PIN_MODE_INPUT(GPIOE_PIN6) | \ - PIN_MODE_INPUT(GPIOE_PIN7) | \ - PIN_MODE_INPUT(GPIOE_PIN8) | \ - PIN_MODE_INPUT(GPIOE_PIN9) | \ - PIN_MODE_INPUT(GPIOE_PIN10) | \ - PIN_MODE_INPUT(GPIOE_PIN11) | \ - PIN_MODE_INPUT(GPIOE_PIN12) | \ - PIN_MODE_INPUT(GPIOE_PIN13) | \ - PIN_MODE_INPUT(GPIOE_PIN14) | \ - PIN_MODE_INPUT(GPIOE_PIN15)) - -#undef VAL_GPIOE_PUPDR -#define VAL_GPIOE_PUPDR (PIN_PUPDR_PULLUP(GPIOE_L3GD20_INT1) | \ - PIN_PUPDR_PULLUP(GPIOE_L3GD20_INT2) | \ - PIN_PUPDR_PULLUP(GPIOE_LSM303DLHC_DRDY) |\ - PIN_PUPDR_PULLUP(GPIOE_L3GD20_CS) | \ - PIN_PUPDR_PULLUP(GPIOE_LSM303DLHC_INT1) |\ - PIN_PUPDR_PULLUP(GPIOE_LSM303DLHC_INT2) |\ - PIN_PUPDR_PULLUP(GPIOE_PIN6) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN7) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN8) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN9) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN10) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN11) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN12) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN13) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN14) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN15)) - diff --git a/keyboards/keychron/k2_max/config.h b/keyboards/keychron/k2_max/config.h deleted file mode 100644 index ef8b183579..0000000000 --- a/keyboards/keychron/k2_max/config.h +++ /dev/null @@ -1,85 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#pragma once - -#if defined(RGB_MATRIX_ENABLE) || defined(LED_MATRIX_ENABLE) || defined(LK_WIRELESS_ENABLE) -/* SPI configuration */ -# define SPI_DRIVER SPID1 -# define SPI_SCK_PIN A5 -# define SPI_MISO_PIN A6 -# define SPI_MOSI_PIN A7 -#endif - -#if defined(RGB_MATRIX_ENABLE) || defined(LED_MATRIX_ENABLE) -# define LED_DRIVER_SHUTDOWN_PIN B7 -# define SNLED23751_SPI_DIVISOR 16 -#endif - -#ifdef LK_WIRELESS_ENABLE -/* Hardware configuration */ -# define P2P4_MODE_SELECT_PIN A9 -# define BT_MODE_SELECT_PIN A10 - -# define LKBT51_RESET_PIN C4 -# define LKBT51_INT_INPUT_PIN B1 -# define BLUETOOTH_INT_OUTPUT_PIN A4 - -# define USB_POWER_SENSE_PIN B0 -# define USB_POWER_CONNECTED_LEVEL 0 - -# define BAT_CHARGING_PIN B13 -# define BAT_CHARGING_LEVEL 0 - -# define BT_HOST_DEVICES_COUNT 3 - -# define BAT_LOW_LED_PIN B12 -# define BAT_LOW_LED_PIN_ON_STATE 1 - -# if defined(RGB_MATRIX_ENABLE) || defined(LED_MATRIX_ENABLE) - -# define BT_HOST_LED_MATRIX_LIST \ - { 17, 18, 19 } - -# define P2P4G_HOST_LED_MATRIX_LIST \ - { 20 } - -# 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 - -/* Reinit LED driver on tranport changed */ -# define REINIT_LED_DRIVER 1 - -# endif - -/* Keep USB connection in blueooth mode */ -# define KEEP_USB_CONNECTION_IN_WIRELESS_MODE - -/* Enable bluetooth NKRO */ -# define WIRELESS_NKRO_ENABLE -#endif - -/* Factory test keys */ -#define FN_KEY_1 MO(1) -#define FN_KEY_2 MO(3) - -#define MATRIX_IO_DELAY 10 diff --git a/keyboards/keychron/k2_max/halconf.h b/keyboards/keychron/k2_max/halconf.h deleted file mode 100644 index 383dfe62eb..0000000000 --- a/keyboards/keychron/k2_max/halconf.h +++ /dev/null @@ -1,31 +0,0 @@ -/* Copyright 2024 @ 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 - -#define _CHIBIOS_HAL_CONF_VER_8_0_ - -#define HAL_USE_SPI TRUE - -#ifdef LK_WIRELESS_ENABLE -# define HAL_USE_RTC TRUE -#endif - -#if defined(LK_WIRELESS_ENABLE) -# define PAL_USE_CALLBACKS TRUE -#endif - -#include_next diff --git a/keyboards/keychron/k2_max/info.json b/keyboards/keychron/k2_max/info.json deleted file mode 100644 index 0b6172bdd1..0000000000 --- a/keyboards/keychron/k2_max/info.json +++ /dev/null @@ -1,319 +0,0 @@ -{ - "keyboard_name": "Keychron K2 Max", - "manufacturer": "Keychron", - "url": "https://github.com/Keychron", - "maintainer": "Keychron", - "processor": "STM32F401", - "bootloader": "stm32-dfu", - "usb": { - "vid": "0x3434" - }, - "features": { - "bootmagic": true, - "extrakey": true, - "mousekey": true, - "dip_switch": true, - "nkro": true, - "raw": true, - "send_string": true - }, - "diode_direction": "ROW2COL", - "dip_switch": { - "pins": ["B14"] - }, - "dynamic_keymap": { - "layer_count": 4 - }, - "eeprom": { - "wear_leveling": { - "driver": "embedded_flash", - "logical_size": 2048, - "backing_size": 4096 - } - }, - "layouts": { - "LAYOUT_ansi_84": { - "layout": [ - {"matrix":[0, 0], "x":0, "y":0}, - {"matrix":[0, 1], "x":1, "y":0}, - {"matrix":[0, 2], "x":2, "y":0}, - {"matrix":[0, 3], "x":3, "y":0}, - {"matrix":[0, 4], "x":4, "y":0}, - {"matrix":[0, 5], "x":5, "y":0}, - {"matrix":[0, 6], "x":6, "y":0}, - {"matrix":[0, 7], "x":7, "y":0}, - {"matrix":[0, 8], "x":8, "y":0}, - {"matrix":[0, 9], "x":9, "y":0}, - {"matrix":[0,10], "x":10, "y":0}, - {"matrix":[0,11], "x":11, "y":0}, - {"matrix":[0,12], "x":12, "y":0}, - {"matrix":[0,13], "x":13, "y":0}, - {"matrix":[0,14], "x":14, "y":0}, - {"matrix":[0,15], "x":15, "y":0}, - - {"matrix":[1, 0], "x":0, "y":1}, - {"matrix":[1, 1], "x":1, "y":1}, - {"matrix":[1, 2], "x":2, "y":1}, - {"matrix":[1, 3], "x":3, "y":1}, - {"matrix":[1, 4], "x":4, "y":1}, - {"matrix":[1, 5], "x":5, "y":1}, - {"matrix":[1, 6], "x":6, "y":1}, - {"matrix":[1, 7], "x":7, "y":1}, - {"matrix":[1, 8], "x":8, "y":1}, - {"matrix":[1, 9], "x":9, "y":1}, - {"matrix":[1,10], "x":10, "y":1}, - {"matrix":[1,11], "x":11, "y":1}, - {"matrix":[1,12], "x":12, "y":1}, - {"matrix":[1,13], "x":13, "y":1, "w":2}, - {"matrix":[1,15], "x":15, "y":1}, - - {"matrix":[2, 0], "x":0, "y":2, "w":1.5}, - {"matrix":[2, 1], "x":1.5, "y":2}, - {"matrix":[2, 2], "x":2.5, "y":2}, - {"matrix":[2, 3], "x":3.5, "y":2}, - {"matrix":[2, 4], "x":4.5, "y":2}, - {"matrix":[2, 5], "x":5.5, "y":2}, - {"matrix":[2, 6], "x":6.5, "y":2}, - {"matrix":[2, 7], "x":7.5, "y":2}, - {"matrix":[2, 8], "x":8.5, "y":2}, - {"matrix":[2, 9], "x":9.5, "y":2}, - {"matrix":[2,10], "x":10.5, "y":2}, - {"matrix":[2,11], "x":11.5, "y":2}, - {"matrix":[2,12], "x":12.5, "y":2}, - {"matrix":[2,13], "x":13.5, "y":2, "w":1.5}, - {"matrix":[2,15], "x":15, "y":2}, - - {"matrix":[3, 0], "x":0, "y":3, "w":1.75}, - {"matrix":[3, 1], "x":1.75, "y":3}, - {"matrix":[3, 2], "x":2.75, "y":3}, - {"matrix":[3, 3], "x":3.75, "y":3}, - {"matrix":[3, 4], "x":4.75, "y":3}, - {"matrix":[3, 5], "x":5.75, "y":3}, - {"matrix":[3, 6], "x":6.75, "y":3}, - {"matrix":[3, 7], "x":7.75, "y":3}, - {"matrix":[3, 8], "x":8.75, "y":3}, - {"matrix":[3, 9], "x":9.75, "y":3}, - {"matrix":[3,10], "x":10.75, "y":3}, - {"matrix":[3,11], "x":11.75, "y":3}, - {"matrix":[3,13], "x":12.75, "y":3, "w":2.25}, - {"matrix":[3,15], "x":15, "y":3}, - - {"matrix":[4, 0], "x":0, "y":4, "w":2.25}, - {"matrix":[4, 2], "x":2.25, "y":4}, - {"matrix":[4, 3], "x":3.25, "y":4}, - {"matrix":[4, 4], "x":4.25, "y":4}, - {"matrix":[4, 5], "x":5.25, "y":4}, - {"matrix":[4, 6], "x":6.25, "y":4}, - {"matrix":[4, 7], "x":7.25, "y":4}, - {"matrix":[4, 8], "x":8.25, "y":4}, - {"matrix":[4, 9], "x":9.25, "y":4}, - {"matrix":[4,10], "x":10.25, "y":4}, - {"matrix":[4,11], "x":11.25, "y":4}, - {"matrix":[4,12], "x":12.25, "y":4, "w":1.75}, - {"matrix":[4,13], "x":14, "y":4}, - {"matrix":[4,15], "x":15, "y":4}, - - {"matrix":[5, 0], "x":0, "y":5, "w":1.25}, - {"matrix":[5, 1], "x":1.25, "y":5, "w":1.25}, - {"matrix":[5, 2], "x":2.5, "y":5, "w":1.25}, - {"matrix":[5, 6], "x":3.75, "y":5, "w":6.25}, - {"matrix":[5, 9], "x":10, "y":5}, - {"matrix":[5,10], "x":11, "y":5}, - {"matrix":[5,11], "x":12, "y":5}, - {"matrix":[5,12], "x":13, "y":5}, - {"matrix":[5,13], "x":14, "y":5}, - {"matrix":[5,15], "x":15, "y":5} - ] - }, - "LAYOUT_iso_85": { - "layout": [ - {"matrix":[0, 0], "x":0, "y":0}, - {"matrix":[0, 1], "x":1, "y":0}, - {"matrix":[0, 2], "x":2, "y":0}, - {"matrix":[0, 3], "x":3, "y":0}, - {"matrix":[0, 4], "x":4, "y":0}, - {"matrix":[0, 5], "x":5, "y":0}, - {"matrix":[0, 6], "x":6, "y":0}, - {"matrix":[0, 7], "x":7, "y":0}, - {"matrix":[0, 8], "x":8, "y":0}, - {"matrix":[0, 9], "x":9, "y":0}, - {"matrix":[0,10], "x":10, "y":0}, - {"matrix":[0,11], "x":11, "y":0}, - {"matrix":[0,12], "x":12, "y":0}, - {"matrix":[0,13], "x":13, "y":0}, - {"matrix":[0,14], "x":14, "y":0}, - {"matrix":[0,15], "x":15, "y":0}, - - {"matrix":[1, 0], "x":0, "y":1}, - {"matrix":[1, 1], "x":1, "y":1}, - {"matrix":[1, 2], "x":2, "y":1}, - {"matrix":[1, 3], "x":3, "y":1}, - {"matrix":[1, 4], "x":4, "y":1}, - {"matrix":[1, 5], "x":5, "y":1}, - {"matrix":[1, 6], "x":6, "y":1}, - {"matrix":[1, 7], "x":7, "y":1}, - {"matrix":[1, 8], "x":8, "y":1}, - {"matrix":[1, 9], "x":9, "y":1}, - {"matrix":[1,10], "x":10, "y":1}, - {"matrix":[1,11], "x":11, "y":1}, - {"matrix":[1,12], "x":12, "y":1}, - {"matrix":[1,13], "x":13, "y":1, "w": 2}, - {"matrix":[1,15], "x":15, "y":1}, - - {"matrix":[2, 0], "x":0, "y":2, "w":1.5}, - {"matrix":[2, 1], "x":1.5, "y":2}, - {"matrix":[2, 2], "x":2.5, "y":2}, - {"matrix":[2, 3], "x":3.5, "y":2}, - {"matrix":[2, 4], "x":4.5, "y":2}, - {"matrix":[2, 5], "x":5.5, "y":2}, - {"matrix":[2, 6], "x":6.5, "y":2}, - {"matrix":[2, 7], "x":7.5, "y":2}, - {"matrix":[2, 8], "x":8.5, "y":2}, - {"matrix":[2, 9], "x":9.5, "y":2}, - {"matrix":[2,10], "x":10.5, "y":2}, - {"matrix":[2,11], "x":11.5, "y":2}, - {"matrix":[2,12], "x":12.5, "y":2}, - {"matrix":[2,15], "x":15, "y":2}, - - {"matrix":[3, 0], "x":0, "y":3, "w":1.75}, - {"matrix":[3, 1], "x":1.75, "y":3}, - {"matrix":[3, 2], "x":2.75, "y":3}, - {"matrix":[3, 3], "x":3.75, "y":3}, - {"matrix":[3, 4], "x":4.75, "y":3}, - {"matrix":[3, 5], "x":5.75, "y":3}, - {"matrix":[3, 6], "x":6.75, "y":3}, - {"matrix":[3, 7], "x":7.75, "y":3}, - {"matrix":[3, 8], "x":8.75, "y":3}, - {"matrix":[3, 9], "x":9.75, "y":3}, - {"matrix":[3,10], "x":10.75, "y":3}, - {"matrix":[3,11], "x":11.75, "y":3}, - {"matrix":[3,13], "x":12.75, "y":3}, - {"matrix":[2,13], "x":13.75, "y":2, "w":1.25, "h": 2}, - {"matrix":[3,15], "x":15, "y":3}, - - {"matrix":[4, 0], "x":0, "y":4, "w":1.25}, - {"matrix":[4, 1], "x":1.25, "y":4}, - {"matrix":[4, 2], "x":2.25, "y":4}, - {"matrix":[4, 3], "x":3.25, "y":4}, - {"matrix":[4, 4], "x":4.25, "y":4}, - {"matrix":[4, 5], "x":5.25, "y":4}, - {"matrix":[4, 6], "x":6.25, "y":4}, - {"matrix":[4, 7], "x":7.25, "y":4}, - {"matrix":[4, 8], "x":8.25, "y":4}, - {"matrix":[4, 9], "x":9.25, "y":4}, - {"matrix":[4,10], "x":10.25, "y":4}, - {"matrix":[4,11], "x":11.25, "y":4}, - {"matrix":[4,12], "x":12.25, "y":4, "w":1.75}, - {"matrix":[4,13], "x":14, "y":4}, - {"matrix":[4,15], "x":15, "y":4}, - - {"matrix":[5, 0], "x":0, "y":5, "w":1.25}, - {"matrix":[5, 1], "x":1.25, "y":5, "w":1.25}, - {"matrix":[5, 2], "x":2.5, "y":5, "w":1.25}, - {"matrix":[5, 6], "x":3.75, "y":5, "w":6.25}, - {"matrix":[5, 9], "x":10, "y":5}, - {"matrix":[5,10], "x":11, "y":5}, - {"matrix":[5,11], "x":12, "y":5}, - {"matrix":[5,12], "x":13, "y":5}, - {"matrix":[5,13], "x":14, "y":5}, - {"matrix":[5,15], "x":15, "y":5} - ] - }, - "LAYOUT_jis_87": { - "layout": [ - {"matrix":[0, 0], "x":0, "y":0}, - {"matrix":[0, 1], "x":1, "y":0}, - {"matrix":[0, 2], "x":2, "y":0}, - {"matrix":[0, 3], "x":3, "y":0}, - {"matrix":[0, 4], "x":4, "y":0}, - {"matrix":[0, 5], "x":5, "y":0}, - {"matrix":[0, 6], "x":6, "y":0}, - {"matrix":[0, 7], "x":7, "y":0}, - {"matrix":[0, 8], "x":8, "y":0}, - {"matrix":[0, 9], "x":9, "y":0}, - {"matrix":[0,10], "x":10, "y":0}, - {"matrix":[0,11], "x":11, "y":0}, - {"matrix":[0,12], "x":12, "y":0}, - {"matrix":[0,13], "x":13, "y":0}, - {"matrix":[0,14], "x":14, "y":0}, - {"matrix":[0,15], "x":15, "y":0}, - - {"matrix":[1, 0], "x":0, "y":1}, - {"matrix":[1, 1], "x":1, "y":1}, - {"matrix":[1, 2], "x":2, "y":1}, - {"matrix":[1, 3], "x":3, "y":1}, - {"matrix":[1, 4], "x":4, "y":1}, - {"matrix":[1, 5], "x":5, "y":1}, - {"matrix":[1, 6], "x":6, "y":1}, - {"matrix":[1, 7], "x":7, "y":1}, - {"matrix":[1, 8], "x":8, "y":1}, - {"matrix":[1, 9], "x":9, "y":1}, - {"matrix":[1,10], "x":10, "y":1}, - {"matrix":[1,11], "x":11, "y":1}, - {"matrix":[1,12], "x":12, "y":1}, - {"matrix":[1,13], "x":13, "y":1}, - {"matrix":[1,14], "x":14, "y":1}, - {"matrix":[1,15], "x":15, "y":1}, - - {"matrix":[2, 0], "x":0, "y":2, "w":1.5}, - {"matrix":[2, 1], "x":1.5, "y":2}, - {"matrix":[2, 2], "x":2.5, "y":2}, - {"matrix":[2, 3], "x":3.5, "y":2}, - {"matrix":[2, 4], "x":4.5, "y":2}, - {"matrix":[2, 5], "x":5.5, "y":2}, - {"matrix":[2, 6], "x":6.5, "y":2}, - {"matrix":[2, 7], "x":7.5, "y":2}, - {"matrix":[2, 8], "x":8.5, "y":2}, - {"matrix":[2, 9], "x":9.5, "y":2}, - {"matrix":[2,10], "x":10.5, "y":2}, - {"matrix":[2,11], "x":11.5, "y":2}, - {"matrix":[2,12], "x":12.5, "y":2}, - {"matrix":[2,15], "x":15, "y":2}, - - {"matrix":[3, 0], "x":0, "y":3, "w":1.75}, - {"matrix":[3, 1], "x":1.75, "y":3}, - {"matrix":[3, 2], "x":2.75, "y":3}, - {"matrix":[3, 3], "x":3.75, "y":3}, - {"matrix":[3, 4], "x":4.75, "y":3}, - {"matrix":[3, 5], "x":5.75, "y":3}, - {"matrix":[3, 6], "x":6.75, "y":3}, - {"matrix":[3, 7], "x":7.75, "y":3}, - {"matrix":[3, 8], "x":8.75, "y":3}, - {"matrix":[3, 9], "x":9.75, "y":3}, - {"matrix":[3,10], "x":10.75, "y":3}, - {"matrix":[3,11], "x":11.75, "y":3}, - {"matrix":[3,13], "x":12.75, "y":3}, - {"matrix":[2,13], "x":13.75, "y":2, "w":1.25, "h": 2}, - {"matrix":[3,15], "x":15, "y":3}, - - {"matrix":[4, 0], "x":0, "y":4, "w":2.25}, - {"matrix":[4, 2], "x":2.25, "y":4}, - {"matrix":[4, 3], "x":3.25, "y":4}, - {"matrix":[4, 4], "x":4.25, "y":4}, - {"matrix":[4, 5], "x":5.25, "y":4}, - {"matrix":[4, 6], "x":6.25, "y":4}, - {"matrix":[4, 7], "x":7.25, "y":4}, - {"matrix":[4, 8], "x":8.25, "y":4}, - {"matrix":[4, 9], "x":9.25, "y":4}, - {"matrix":[4,10], "x":10.25, "y":4}, - {"matrix":[4,11], "x":11.25, "y":4}, - {"matrix":[4,12], "x":12.25, "y":4, "w":1.75}, - {"matrix":[4,13], "x":14, "y":4}, - {"matrix":[4,15], "x":15, "y":4}, - - {"matrix":[5, 0], "x":0, "y":5, "w":1.25}, - {"matrix":[5, 1], "x":1.25, "y":5}, - {"matrix":[5, 2], "x":2.25, "y":5, "w":1.25}, - {"matrix":[5, 3], "x":3.5, "y":5}, - {"matrix":[5, 6], "x":4.5, "y":5, "w":4.5}, - {"matrix":[5, 9], "x":9, "y":5}, - {"matrix":[5,10], "x":10, "y":5}, - {"matrix":[5,11], "x":11, "y":5}, - {"matrix":[5,12], "x":12, "y":5}, - {"matrix":[5,13], "x":13, "y":5}, - {"matrix":[5,14], "x":14, "y":5}, - {"matrix":[5,15], "x":15, "y":5} - ] - } - } -} diff --git a/keyboards/keychron/k2_max/iso/info.json b/keyboards/keychron/k2_max/iso/info.json deleted file mode 100644 index c571ca5041..0000000000 --- a/keyboards/keychron/k2_max/iso/info.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "indicators": { - "caps_lock": "C8", - "on_state": 1 - }, - "matrix_pins": { - "cols": ["C6", "C7", "A13", "A14", "A15", "C10", "C11", "C13", "C14", "C15", "C0", "C1", "C2", "C3", "A0", "A1"], - "rows": ["C12", "D2", "B3", "B4", "B5", "B6"] - } -} diff --git a/keyboards/keychron/k2_max/iso/rgb/config.h b/keyboards/keychron/k2_max/iso/rgb/config.h deleted file mode 100644 index 5d4da6f964..0000000000 --- a/keyboards/keychron/k2_max/iso/rgb/config.h +++ /dev/null @@ -1,47 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#pragma once - -#ifdef RGB_MATRIX_ENABLE -/* RGB Matrix driver configuration */ -# define RGB_MATRIX_LED_COUNT 85 -# define DRIVER_COUNT 2 -# define DRIVER_CS_PINS \ - { B8, B9 } - -/* Scan phase of led driver set as MSKPHASE_9CHANNEL(defined as 0x03 in snled27351.h) */ -# define SNLED27351_PHASE_CHANNEL MSKPHASE_9CHANNEL -/* Set LED driver current */ -# define SNLED27351_CURRENT_TUNE \ - { 0x2C, 0x2C, 0x2C, 0x2C, 0x2C, 0x2C, 0x2C, 0x2C, 0x2C, 0x2C, 0x2C, 0x2C } - -/* Set to infinit, which is use in USB mode by default */ -# define RGB_MATRIX_TIMEOUT RGB_MATRIX_TIMEOUT_INFINITE -/* Allow shutdown of led driver to save power */ -# define RGB_MATRIX_DRIVER_SHUTDOWN_ENABLE -/* Turn off backlight on low brightness to save power */ -# define RGB_MATRIX_BRIGHTNESS_TURN_OFF_VAL 48 - -/* Indications */ -# define DIM_CAPS_LOCK -# define CAPS_LOCK_INDEX 46 -# define LOW_BAT_IND_INDEX { 78 } - -# define RGB_MATRIX_KEYPRESSES -# define RGB_MATRIX_FRAMEBUFFER_EFFECTS - -#endif diff --git a/keyboards/keychron/k2_max/iso/rgb/info.json b/keyboards/keychron/k2_max/iso/rgb/info.json deleted file mode 100644 index 9b0b27c0bc..0000000000 --- a/keyboards/keychron/k2_max/iso/rgb/info.json +++ /dev/null @@ -1,36 +0,0 @@ -{ - "usb": { - "pid": "0x0A21", - "device_version": "1.0.0" - }, - "features": { - "rgb_matrix": true - }, - "rgb_matrix": { - "driver": "snled27351_spi", - "sleep": true, - "animations": { - "band_spiral_val": true, - "breathing": true, - "cycle_all": true, - "cycle_left_right": true, - "cycle_out_in": true, - "cycle_out_in_dual": true, - "cycle_pinwheel": true, - "cycle_spiral": true, - "cycle_up_down": true, - "digital_rain": true, - "dual_beacon": true, - "jellybean_raindrops": true, - "pixel_rain": true, - "rainbow_beacon": true, - "rainbow_moving_chevron": true, - "solid_reactive_multinexus": true, - "solid_reactive_multiwide": true, - "solid_reactive_simple": true, - "solid_splash": true, - "splash": true, - "typing_heatmap": true - } - } -} diff --git a/keyboards/keychron/k2_max/iso/rgb/keymaps/default/keymap.c b/keyboards/keychron/k2_max/iso/rgb/keymaps/default/keymap.c deleted file mode 100644 index a7399aadf9..0000000000 --- a/keyboards/keychron/k2_max/iso/rgb/keymaps/default/keymap.c +++ /dev/null @@ -1,67 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#include QMK_KEYBOARD_H -#include "keychron_common.h" - -enum layers { - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN, -}; -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { -[MAC_BASE] = LAYOUT_iso_85( - KC_ESC, KC_BRID, KC_BRIU, KC_MCTRL, KC_LNPAD, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_SNAP, KC_DEL, RGB_MOD, - KC_GRV, 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_PGUP, - 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_PGDN, - 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_NUHS, KC_ENT, KC_HOME, - KC_LSFT, KC_NUBS, 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_LOPTN, KC_LCMMD, KC_SPC, KC_RCMMD,MO(MAC_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - -[MAC_FN] = LAYOUT_iso_85( - _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, RGB_TOG, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - -[WIN_BASE] = LAYOUT_iso_85( - KC_ESC, 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_PSCR, KC_DEL, RGB_MOD, - KC_GRV, 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_PGUP, - 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_PGDN, - 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_NUHS, KC_ENT, KC_HOME, - KC_LSFT, KC_NUBS, 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_SPC, KC_RALT, MO(WIN_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - -[WIN_FN] = LAYOUT_iso_85( - _______, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, RGB_TOG, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______) -}; - -// clang-format on -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - if (!process_record_keychron_common(keycode, record)) { - return false; - } - return true; -} diff --git a/keyboards/keychron/k2_max/iso/rgb/keymaps/via/keymap.c b/keyboards/keychron/k2_max/iso/rgb/keymaps/via/keymap.c deleted file mode 100644 index a7399aadf9..0000000000 --- a/keyboards/keychron/k2_max/iso/rgb/keymaps/via/keymap.c +++ /dev/null @@ -1,67 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#include QMK_KEYBOARD_H -#include "keychron_common.h" - -enum layers { - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN, -}; -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { -[MAC_BASE] = LAYOUT_iso_85( - KC_ESC, KC_BRID, KC_BRIU, KC_MCTRL, KC_LNPAD, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_SNAP, KC_DEL, RGB_MOD, - KC_GRV, 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_PGUP, - 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_PGDN, - 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_NUHS, KC_ENT, KC_HOME, - KC_LSFT, KC_NUBS, 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_LOPTN, KC_LCMMD, KC_SPC, KC_RCMMD,MO(MAC_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - -[MAC_FN] = LAYOUT_iso_85( - _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, RGB_TOG, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - -[WIN_BASE] = LAYOUT_iso_85( - KC_ESC, 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_PSCR, KC_DEL, RGB_MOD, - KC_GRV, 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_PGUP, - 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_PGDN, - 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_NUHS, KC_ENT, KC_HOME, - KC_LSFT, KC_NUBS, 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_SPC, KC_RALT, MO(WIN_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - -[WIN_FN] = LAYOUT_iso_85( - _______, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, RGB_TOG, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______) -}; - -// clang-format on -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - if (!process_record_keychron_common(keycode, record)) { - return false; - } - return true; -} diff --git a/keyboards/keychron/k2_max/iso/rgb/keymaps/via/rules.mk b/keyboards/keychron/k2_max/iso/rgb/keymaps/via/rules.mk deleted file mode 100644 index 1e5b99807c..0000000000 --- a/keyboards/keychron/k2_max/iso/rgb/keymaps/via/rules.mk +++ /dev/null @@ -1 +0,0 @@ -VIA_ENABLE = yes diff --git a/keyboards/keychron/k2_max/iso/rgb/rgb.c b/keyboards/keychron/k2_max/iso/rgb/rgb.c deleted file mode 100644 index 776e68c2d0..0000000000 --- a/keyboards/keychron/k2_max/iso/rgb/rgb.c +++ /dev/null @@ -1,148 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#include "quantum.h" - -// clang-format off -#ifdef RGB_MATRIX_ENABLE -const snled27351_led_t g_snled27351_leds[RGB_MATRIX_LED_COUNT] = { -/* Refer to SNLED27351 manual for these locations - * driver - * | R location - * | | G location - * | | | B location - * | | | | */ - {0, I_1, G_1, H_1}, - {0, I_2, G_2, H_2}, - {0, I_3, G_3, H_3}, - {0, I_4, G_4, H_4}, - {0, I_5, G_5, H_5}, - {0, I_6, G_6, H_6}, - {0, I_7, G_7, H_7}, - {0, I_8, G_8, H_8}, - {0, I_9, G_9, H_9}, - {0, I_10, G_10, H_10}, - {0, I_11, G_11, H_11}, - {0, I_12, G_12, H_12}, - {0, I_13, G_13, H_13}, - {0, I_14, G_14, H_14}, - {0, I_15, G_15, H_15}, - {0, I_16, G_16, H_16}, - - {0, C_1, A_1, B_1}, - {0, C_2, A_2, B_2}, - {0, C_3, A_3, B_3}, - {0, C_4, A_4, B_4}, - {0, C_5, A_5, B_5}, - {0, C_6, A_6, B_6}, - {0, C_7, A_7, B_7}, - {0, C_8, A_8, B_8}, - {0, C_9, A_9, B_9}, - {0, C_10, A_10, B_10}, - {0, C_11, A_11, B_11}, - {0, C_12, A_12, B_12}, - {0, C_13, A_13, B_13}, - {0, C_14, A_14, B_14}, - {0, C_16, A_16, B_16}, - - {0, F_1, D_1, E_1}, - {0, F_2, D_2, E_2}, - {0, F_3, D_3, E_3}, - {0, F_4, D_4, E_4}, - {0, F_5, D_5, E_5}, - {0, F_6, D_6, E_6}, - {0, F_7, D_7, E_7}, - {0, F_8, D_8, E_8}, - {0, F_9, D_9, E_9}, - {0, F_10, D_10, E_10}, - {0, F_11, D_11, E_11}, - {0, F_12, D_12, E_12}, - {0, F_13, D_13, E_13}, - {0, F_14, D_14, E_14}, - {0, F_16, D_16, E_16}, - - {1, C_16, A_16, B_16}, - {1, C_15, A_15, B_15}, - {1, C_14, A_14, B_14}, - {1, C_13, A_13, B_13}, - {1, C_12, A_12, B_12}, - {1, C_11, A_11, B_11}, - {1, C_10, A_10, B_10}, - {1, C_9, A_9, B_9}, - {1, C_8, A_8, B_8}, - {1, C_7, A_7, B_7}, - {1, C_6, A_6, B_6}, - {1, C_5, A_5, B_5}, - {1, C_3, A_3, B_3}, - {1, C_1, A_1, B_1}, - - {1, I_16, G_16, H_16}, - {1, I_15, G_15, H_15}, - {1, I_14, G_14, H_14}, - {1, I_13, G_13, H_13}, - {1, I_12, G_12, H_12}, - {1, I_11, G_11, H_11}, - {1, I_10, G_10, H_10}, - {1, I_9, G_9, H_9}, - {1, I_8, G_8, H_8}, - {1, I_7, G_7, H_7}, - {1, I_6, G_6, H_6}, - {1, I_5, G_5, H_5}, - {1, I_4, G_4, H_4}, - {1, I_3, G_3, H_3}, - {1, I_1, G_1, H_1}, - - {1, F_16, D_16, E_16}, - {1, F_15, D_15, E_15}, - {1, F_14, D_14, E_14}, - {1, F_10, D_10, E_10}, - {1, F_7, D_7, E_7}, - {1, F_6, D_6, E_6}, - {1, F_5, D_5, E_5}, - {1, F_4, D_4, E_4}, - {1, F_3, D_3, E_3}, - {1, F_1, D_1, E_1} -}; - -#define __ NO_LED - -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, 40, 41, 42, 43, 44, __, 45 }, - { 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, __, 58, __, 59 }, - { 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, __, 74 }, - { 75, 76, 77, __, __, __, 78, __, __, 79, 80, 81, 82, 83, __, 84 } - }, - { - {0, 0}, {14, 0}, {29, 0}, {44, 0}, {59, 0}, {74, 0}, { 89, 0}, {104, 0}, {119, 0}, {134, 0}, {149, 0}, {164, 0}, {179, 0}, {194, 0}, {209,0}, {223, 0}, - {0,12}, {14,12}, {29,12}, {44,12}, {59,12}, {74,12}, { 89, 12}, {104, 12}, {119, 12}, {134, 12}, {149, 12}, {164, 12}, {179, 12}, {201, 12}, {223, 12}, - {3,25}, {22,25}, {37,25}, {52,25}, {67,25}, {82,25}, { 97, 25}, {112, 25}, {126, 25}, {141, 25}, {156, 25}, {171, 25}, {186, 25}, {205, 31}, {223, 25}, - {5,38}, {26,38}, {41,38}, {55,38}, {70,38}, {85,38}, {100, 38}, {115, 38}, {130, 38}, {145, 38}, {160, 38}, {175, 38}, {190, 38}, {223, 38}, - {2,51}, {18,51}, {33,51}, {48,51}, {63,51}, {78,51}, { 93, 51}, {108, 51}, {123, 51}, {138, 51}, {153, 51}, {168, 51}, {187, 51}, {209, 51}, {223, 51}, - {2,64}, {20,64}, {39,64}, { 95, 64}, {149, 64}, {164, 64}, {179, 64}, {194, 64}, {209, 64}, {223, 64} - }, - { - 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, - 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, - 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, - 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, - 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, - 4, 4, 4, 4, 4, 4, 4, 4, 4, 4 - } -}; -#endif diff --git a/keyboards/keychron/k2_max/iso/rgb/rules.mk b/keyboards/keychron/k2_max/iso/rgb/rules.mk deleted file mode 100644 index 6e7633bfe0..0000000000 --- a/keyboards/keychron/k2_max/iso/rgb/rules.mk +++ /dev/null @@ -1 +0,0 @@ -# This file intentionally left blank diff --git a/keyboards/keychron/k2_max/iso/white/config.h b/keyboards/keychron/k2_max/iso/white/config.h deleted file mode 100644 index b04178fdbb..0000000000 --- a/keyboards/keychron/k2_max/iso/white/config.h +++ /dev/null @@ -1,47 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#pragma once - -#ifdef LED_MATRIX_ENABLE -/* LED matrix driver configuration */ -# define LED_MATRIX_LED_COUNT 85 -# define DRIVER_COUNT 1 -# define DRIVER_CS_PINS \ - { B9 } - -/* Use first 6 channels of LED driver */ -# define SNLED27351_PHASE_CHANNEL MSKPHASE_6CHANNEL -/* Set LED driver current */ -# define SNLED27351_CURRENT_TUNE \ - { 0x50, 0x50, 0x50, 0x50, 0x50, 0x50, 0x50, 0x50, 0x50, 0x50, 0x50, 0x50 } - -/* Set to infinit, which is use in USB mode by default */ -# define LED_MATRIX_TIMEOUT LED_MATRIX_TIMEOUT_INFINITE -/* Allow shutdown of led driver to save power */ -# define LED_MATRIX_DRIVER_SHUTDOWN_ENABLE -/* Turn off backlight on low brightness to save power */ -# define LED_MATRIX_BRIGHTNESS_TURN_OFF_VAL 48 -# define LED_MATRIX_VAL_STEP 16 - -/* Indications */ -# define DIM_CAPS_LOCK -# define CAPS_LOCK_INDEX 46 -# define LOW_BAT_IND_INDEX \ - { 78 } - -# define LED_MATRIX_KEYPRESSES -#endif diff --git a/keyboards/keychron/k2_max/iso/white/info.json b/keyboards/keychron/k2_max/iso/white/info.json deleted file mode 100644 index 09feaa1389..0000000000 --- a/keyboards/keychron/k2_max/iso/white/info.json +++ /dev/null @@ -1,30 +0,0 @@ -{ - "usb": { - "pid": "0x0A24", - "device_version": "1.0.0" - }, - "features": { - "led_matrix": true - }, - "led_matrix": { - "driver": "snled27351_spi", - "sleep": true, - "animations": { - "none": true, - "solid": true, - "breathing": true, - "band_pinwheel": true, - "band_spiral": true, - "cycle_left_right": true, - "cycle_up_down": true, - "cycle_out_in": true, - "dual_beacon": true, - "solid_reactive_simple": true, - "solid_reactive_multiwide": true, - "solid_reactive_multinexus": true, - "solid_splash": true, - "wave_left_right": true, - "wave_up_down": true - } - } -} diff --git a/keyboards/keychron/k2_max/iso/white/keymaps/default/keymap.c b/keyboards/keychron/k2_max/iso/white/keymaps/default/keymap.c deleted file mode 100644 index 1636379951..0000000000 --- a/keyboards/keychron/k2_max/iso/white/keymaps/default/keymap.c +++ /dev/null @@ -1,67 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#include QMK_KEYBOARD_H -#include "keychron_common.h" - -enum layers { - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN, -}; -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { -[MAC_BASE] = LAYOUT_iso_85( - KC_ESC, KC_BRID, KC_BRIU, KC_MCTRL, KC_LNPAD, BL_DOWN, BL_UP, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_SNAP, KC_DEL, BL_STEP, - KC_GRV, 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_PGUP, - 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_PGDN, - 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_NUHS, KC_ENT, KC_HOME, - KC_LSFT, KC_NUBS, 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_LOPTN, KC_LCMMD, KC_SPC, KC_RCMMD,MO(MAC_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - -[MAC_FN] = LAYOUT_iso_85( - _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, BL_TOGG, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - BL_TOGG, BL_STEP, BL_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, BL_DOWN, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - -[WIN_BASE] = LAYOUT_iso_85( - KC_ESC, 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_PSCR, KC_DEL, BL_STEP, - KC_GRV, 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_PGUP, - 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_PGDN, - 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_NUHS, KC_ENT, KC_HOME, - KC_LSFT, KC_NUBS, 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_SPC, KC_RALT, MO(WIN_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - -[WIN_FN] = LAYOUT_iso_85( - _______, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, BL_DOWN, BL_UP, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, BL_TOGG, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - BL_TOGG, BL_STEP, BL_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, BL_DOWN, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______) -}; - -// clang-format on -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - if (!process_record_keychron_common(keycode, record)) { - return false; - } - return true; -} diff --git a/keyboards/keychron/k2_max/iso/white/keymaps/via/keymap.c b/keyboards/keychron/k2_max/iso/white/keymaps/via/keymap.c deleted file mode 100644 index 1636379951..0000000000 --- a/keyboards/keychron/k2_max/iso/white/keymaps/via/keymap.c +++ /dev/null @@ -1,67 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#include QMK_KEYBOARD_H -#include "keychron_common.h" - -enum layers { - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN, -}; -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { -[MAC_BASE] = LAYOUT_iso_85( - KC_ESC, KC_BRID, KC_BRIU, KC_MCTRL, KC_LNPAD, BL_DOWN, BL_UP, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_SNAP, KC_DEL, BL_STEP, - KC_GRV, 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_PGUP, - 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_PGDN, - 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_NUHS, KC_ENT, KC_HOME, - KC_LSFT, KC_NUBS, 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_LOPTN, KC_LCMMD, KC_SPC, KC_RCMMD,MO(MAC_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - -[MAC_FN] = LAYOUT_iso_85( - _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, BL_TOGG, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - BL_TOGG, BL_STEP, BL_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, BL_DOWN, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - -[WIN_BASE] = LAYOUT_iso_85( - KC_ESC, 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_PSCR, KC_DEL, BL_STEP, - KC_GRV, 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_PGUP, - 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_PGDN, - 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_NUHS, KC_ENT, KC_HOME, - KC_LSFT, KC_NUBS, 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_SPC, KC_RALT, MO(WIN_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - -[WIN_FN] = LAYOUT_iso_85( - _______, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, BL_DOWN, BL_UP, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, BL_TOGG, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - BL_TOGG, BL_STEP, BL_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, BL_DOWN, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______) -}; - -// clang-format on -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - if (!process_record_keychron_common(keycode, record)) { - return false; - } - return true; -} diff --git a/keyboards/keychron/k2_max/iso/white/keymaps/via/rules.mk b/keyboards/keychron/k2_max/iso/white/keymaps/via/rules.mk deleted file mode 100644 index 1e5b99807c..0000000000 --- a/keyboards/keychron/k2_max/iso/white/keymaps/via/rules.mk +++ /dev/null @@ -1 +0,0 @@ -VIA_ENABLE = yes diff --git a/keyboards/keychron/k2_max/iso/white/rules.mk b/keyboards/keychron/k2_max/iso/white/rules.mk deleted file mode 100644 index 6e7633bfe0..0000000000 --- a/keyboards/keychron/k2_max/iso/white/rules.mk +++ /dev/null @@ -1 +0,0 @@ -# This file intentionally left blank diff --git a/keyboards/keychron/k2_max/iso/white/white.c b/keyboards/keychron/k2_max/iso/white/white.c deleted file mode 100644 index 1ea2888a48..0000000000 --- a/keyboards/keychron/k2_max/iso/white/white.c +++ /dev/null @@ -1,151 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#include "quantum.h" - -// clang-format off -#ifdef LED_MATRIX_ENABLE -const snled27351_led_t g_snled27351_leds[LED_MATRIX_LED_COUNT] = { -/* Refer to SNLED27351 manual for these locations - * driver - * | LED address - * | | */ - {0, A_16}, - {0, A_15}, - {0, A_14}, - {0, A_13}, - {0, A_12}, - {0, A_11}, - {0, A_10}, - {0, A_9}, - {0, A_8}, - {0, A_7}, - {0, A_6}, - {0, A_5}, - {0, A_4}, - {0, A_3}, - {0, A_2}, - {0, A_1}, - - {0, B_16}, - {0, B_15}, - {0, B_14}, - {0, B_13}, - {0, B_12}, - {0, B_11}, - {0, B_10}, - {0, B_9}, - {0, B_8}, - {0, B_7}, - {0, B_6}, - {0, B_5}, - {0, B_4}, - {0, B_3}, - {0, B_1}, - - {0, C_16}, - {0, C_15}, - {0, C_14}, - {0, C_13}, - {0, C_12}, - {0, C_11}, - {0, C_10}, - {0, C_9}, - {0, C_8}, - {0, C_7}, - {0, C_6}, - {0, C_5}, - {0, C_4}, - {0, C_3}, - {0, C_1}, - - {0, D_16}, - {0, D_15}, - {0, D_14}, - {0, D_13}, - {0, D_12}, - {0, D_11}, - {0, D_10}, - {0, D_9}, - {0, D_8}, - {0, D_7}, - {0, D_6}, - {0, D_5}, - {0, D_3}, - {0, D_1}, - - {0, E_16}, - {0, E_15}, - {0, E_14}, - {0, E_13}, - {0, E_12}, - {0, E_11}, - {0, E_10}, - {0, E_9}, - {0, E_8}, - {0, E_7}, - {0, E_6}, - {0, E_5}, - {0, E_4}, - {0, E_3}, - {0, E_1}, - - {0, F_16}, - {0, F_15}, - {0, F_14}, - {0, F_10}, - {0, F_7}, - {0, F_6}, - {0, F_5}, - {0, F_4}, - {0, F_3}, - {0, F_1}, -}; - -#define __ NO_LED - -led_config_t g_led_config = { - { - // Key Matrix to LED Index - { 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, 40, 41, 42, 43, 44, __, 45 }, - { 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, __, 58, __, 59 }, - { 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, __, 74 }, - { 75, 76, 77, __, __, __, 78, __, __, 79, 80, 81, 82, 83, __, 84 } - - }, - { - // LED Index to Physical Position - {0, 0}, {14, 0}, {29, 0}, {44, 0}, {59, 0}, {74, 0}, { 89, 0}, {104, 0}, {119, 0}, {134, 0}, {149, 0}, {164, 0}, {179, 0}, {194, 0}, {209, 0}, {223, 0}, - {0,12}, {14,12}, {29,12}, {44,12}, {59,12}, {74,12}, { 89, 12}, {104, 12}, {119, 12}, {134, 12}, {149, 12}, {164, 12}, {179, 12}, {201, 12}, {223, 12}, - {3,25}, {22,25}, {37,25}, {52,25}, {67,25}, {82,25}, { 97, 25}, {112, 25}, {126, 25}, {141, 25}, {156, 25}, {171, 25}, {186, 25}, {205, 31}, {223, 25}, - {5,38}, {26,38}, {41,38}, {55,38}, {70,38}, {85,38}, {100, 38}, {115, 38}, {130, 38}, {145, 38}, {160, 38}, {175, 38}, {190, 38}, {223, 38}, - {1,51}, {18,51}, {33,51}, {48,51}, {63,51}, {78,51}, { 93, 51}, {108, 51}, {123, 51}, {138, 51}, {153, 51}, {168, 51}, {187, 51}, {209, 51}, {223, 51}, - {1,64}, {20,64}, {39,64}, { 95, 64}, {149, 64}, {164, 64}, {179, 64}, {194, 64}, {209, 64}, {223, 64} - }, - { - // RGB LED Index to Flag - 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, - 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, - 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, - 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, - 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, - 4, 4, 4, 4, 4, 4, 4, 4, 4, 4 - } -}; - -#endif diff --git a/keyboards/keychron/k2_max/jis/info.json b/keyboards/keychron/k2_max/jis/info.json deleted file mode 100644 index c571ca5041..0000000000 --- a/keyboards/keychron/k2_max/jis/info.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "indicators": { - "caps_lock": "C8", - "on_state": 1 - }, - "matrix_pins": { - "cols": ["C6", "C7", "A13", "A14", "A15", "C10", "C11", "C13", "C14", "C15", "C0", "C1", "C2", "C3", "A0", "A1"], - "rows": ["C12", "D2", "B3", "B4", "B5", "B6"] - } -} diff --git a/keyboards/keychron/k2_max/jis/rgb/config.h b/keyboards/keychron/k2_max/jis/rgb/config.h deleted file mode 100644 index 15a4c168c3..0000000000 --- a/keyboards/keychron/k2_max/jis/rgb/config.h +++ /dev/null @@ -1,47 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#pragma once - -#ifdef RGB_MATRIX_ENABLE -/* RGB Matrix driver configuration */ -# define RGB_MATRIX_LED_COUNT 87 -# define DRIVER_COUNT 2 -# define DRIVER_CS_PINS \ - { B8, B9 } - -/* Scan phase of led driver set as MSKPHASE_9CHANNEL(defined as 0x03 in snled27351.h) */ -# define SNLED27351_PHASE_CHANNEL MSKPHASE_9CHANNEL -/* Set LED driver current */ -# define SNLED27351_CURRENT_TUNE \ - { 0x2A, 0x2A, 0x2A, 0x2A, 0x2A, 0x2A, 0x2A, 0x2A, 0x2A, 0x2A, 0x2A, 0x2A } - -/* Set to infinit, which is use in USB mode by default */ -# define RGB_MATRIX_TIMEOUT RGB_MATRIX_TIMEOUT_INFINITE -/* Allow shutdown of led driver to save power */ -# define RGB_MATRIX_DRIVER_SHUTDOWN_ENABLE -/* Turn off backlight on low brightness to save power */ -# define RGB_MATRIX_BRIGHTNESS_TURN_OFF_VAL 48 - -/* Indications */ -# define CAPS_LOCK_INDEX 47 -# define LOW_BAT_IND_INDEX \ - { 79 } - -# define RGB_MATRIX_KEYPRESSES -# define RGB_MATRIX_FRAMEBUFFER_EFFECTS - -#endif diff --git a/keyboards/keychron/k2_max/jis/rgb/info.json b/keyboards/keychron/k2_max/jis/rgb/info.json deleted file mode 100644 index 4d6443346e..0000000000 --- a/keyboards/keychron/k2_max/jis/rgb/info.json +++ /dev/null @@ -1,36 +0,0 @@ -{ - "usb": { - "pid": "0x0A22", - "device_version": "1.0.0" - }, - "features": { - "rgb_matrix": true - }, - "rgb_matrix": { - "driver": "snled27351_spi", - "sleep": true, - "animations": { - "band_spiral_val": true, - "breathing": true, - "cycle_all": true, - "cycle_left_right": true, - "cycle_out_in": true, - "cycle_out_in_dual": true, - "cycle_pinwheel": true, - "cycle_spiral": true, - "cycle_up_down": true, - "digital_rain": true, - "dual_beacon": true, - "jellybean_raindrops": true, - "pixel_rain": true, - "rainbow_beacon": true, - "rainbow_moving_chevron": true, - "solid_reactive_multinexus": true, - "solid_reactive_multiwide": true, - "solid_reactive_simple": true, - "solid_splash": true, - "splash": true, - "typing_heatmap": true - } - } -} diff --git a/keyboards/keychron/k2_max/jis/rgb/keymaps/default/keymap.c b/keyboards/keychron/k2_max/jis/rgb/keymaps/default/keymap.c deleted file mode 100644 index 645b9a635a..0000000000 --- a/keyboards/keychron/k2_max/jis/rgb/keymaps/default/keymap.c +++ /dev/null @@ -1,67 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#include QMK_KEYBOARD_H -#include "keychron_common.h" - -enum layers { - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN, -}; -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { -[MAC_BASE] = LAYOUT_jis_87( - KC_ESC, KC_BRID, KC_BRIU, KC_MCTRL, KC_LNPAD, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_SNAP, KC_DEL, RGB_MOD, - KC_GRV, 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_INT3, KC_BSPC, KC_PGUP, - 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_PGDN, - 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_BSLS, KC_ENT, KC_HOME, - KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_INT1, KC_UP, KC_END, - KC_LCTL, KC_LOPTN, KC_LCMMD, KC_LNG2, KC_SPC, KC_LNG1, KC_RCMMD,MO(MAC_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - -[MAC_FN] = LAYOUT_jis_87( - _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, RGB_TOG, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, KC_RSFT, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - -[WIN_BASE] = LAYOUT_jis_87( - KC_ESC, 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_PSCR, KC_DEL, RGB_MOD, - KC_GRV, 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_INT3, KC_BSPC, KC_PGUP, - 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_PGDN, - 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_BSLS, KC_ENT, KC_HOME, - KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_INT1, KC_UP, KC_END, - KC_LCTL, KC_LGUI, KC_LALT, KC_INT5, KC_SPC, KC_INT4, KC_RALT, MO(WIN_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - -[WIN_FN] = LAYOUT_jis_87( - _______, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, RGB_TOG, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, KC_RSFT, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______) -}; - -// clang-format on -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - if (!process_record_keychron_common(keycode, record)) { - return false; - } - return true; -} diff --git a/keyboards/keychron/k2_max/jis/rgb/keymaps/via/keymap.c b/keyboards/keychron/k2_max/jis/rgb/keymaps/via/keymap.c deleted file mode 100644 index 645b9a635a..0000000000 --- a/keyboards/keychron/k2_max/jis/rgb/keymaps/via/keymap.c +++ /dev/null @@ -1,67 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#include QMK_KEYBOARD_H -#include "keychron_common.h" - -enum layers { - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN, -}; -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { -[MAC_BASE] = LAYOUT_jis_87( - KC_ESC, KC_BRID, KC_BRIU, KC_MCTRL, KC_LNPAD, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_SNAP, KC_DEL, RGB_MOD, - KC_GRV, 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_INT3, KC_BSPC, KC_PGUP, - 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_PGDN, - 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_BSLS, KC_ENT, KC_HOME, - KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_INT1, KC_UP, KC_END, - KC_LCTL, KC_LOPTN, KC_LCMMD, KC_LNG2, KC_SPC, KC_LNG1, KC_RCMMD,MO(MAC_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - -[MAC_FN] = LAYOUT_jis_87( - _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, RGB_TOG, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, KC_RSFT, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - -[WIN_BASE] = LAYOUT_jis_87( - KC_ESC, 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_PSCR, KC_DEL, RGB_MOD, - KC_GRV, 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_INT3, KC_BSPC, KC_PGUP, - 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_PGDN, - 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_BSLS, KC_ENT, KC_HOME, - KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_INT1, KC_UP, KC_END, - KC_LCTL, KC_LGUI, KC_LALT, KC_INT5, KC_SPC, KC_INT4, KC_RALT, MO(WIN_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - -[WIN_FN] = LAYOUT_jis_87( - _______, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, RGB_TOG, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, KC_RSFT, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______) -}; - -// clang-format on -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - if (!process_record_keychron_common(keycode, record)) { - return false; - } - return true; -} diff --git a/keyboards/keychron/k2_max/jis/rgb/keymaps/via/rules.mk b/keyboards/keychron/k2_max/jis/rgb/keymaps/via/rules.mk deleted file mode 100644 index 1e5b99807c..0000000000 --- a/keyboards/keychron/k2_max/jis/rgb/keymaps/via/rules.mk +++ /dev/null @@ -1 +0,0 @@ -VIA_ENABLE = yes diff --git a/keyboards/keychron/k2_max/jis/rgb/rgb.c b/keyboards/keychron/k2_max/jis/rgb/rgb.c deleted file mode 100644 index d64e632c0d..0000000000 --- a/keyboards/keychron/k2_max/jis/rgb/rgb.c +++ /dev/null @@ -1,154 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#include "quantum.h" - -// clang-format off - -#ifdef RGB_MATRIX_ENABLE -const snled27351_led_t g_snled27351_leds[RGB_MATRIX_LED_COUNT] = { -/* Refer to SNLED27351 manual for these locations - * driver - * | R location - * | | G location - * | | | B location - * | | | | */ - {0, I_1, G_1, H_1}, - {0, I_2, G_2, H_2}, - {0, I_3, G_3, H_3}, - {0, I_4, G_4, H_4}, - {0, I_5, G_5, H_5}, - {0, I_6, G_6, H_6}, - {0, I_7, G_7, H_7}, - {0, I_8, G_8, H_8}, - {0, I_9, G_9, H_9}, - {0, I_10, G_10, H_10}, - {0, I_11, G_11, H_11}, - {0, I_12, G_12, H_12}, - {0, I_13, G_13, H_13}, - {0, I_14, G_14, H_14}, - {0, I_15, G_15, H_15}, - {0, I_16, G_16, H_16}, - - {0, C_1, A_1, B_1}, - {0, C_2, A_2, B_2}, - {0, C_3, A_3, B_3}, - {0, C_4, A_4, B_4}, - {0, C_5, A_5, B_5}, - {0, C_6, A_6, B_6}, - {0, C_7, A_7, B_7}, - {0, C_8, A_8, B_8}, - {0, C_9, A_9, B_9}, - {0, C_10, A_10, B_10}, - {0, C_11, A_11, B_11}, - {0, C_12, A_12, B_12}, - {0, C_13, A_13, B_13}, - {0, C_14, A_14, B_14}, - {0, C_15, A_15, B_15}, - {0, C_16, A_16, B_16}, - - {0, F_1, D_1, E_1}, - {0, F_2, D_2, E_2}, - {0, F_3, D_3, E_3}, - {0, F_4, D_4, E_4}, - {0, F_5, D_5, E_5}, - {0, F_6, D_6, E_6}, - {0, F_7, D_7, E_7}, - {0, F_8, D_8, E_8}, - {0, F_9, D_9, E_9}, - {0, F_10, D_10, E_10}, - {0, F_11, D_11, E_11}, - {0, F_12, D_12, E_12}, - {0, F_13, D_13, E_13}, - {0, F_14, D_14, E_14}, - {0, F_16, D_16, E_16}, - - {1, C_16, A_16, B_16}, - {1, C_15, A_15, B_15}, - {1, C_14, A_14, B_14}, - {1, C_13, A_13, B_13}, - {1, C_12, A_12, B_12}, - {1, C_11, A_11, B_11}, - {1, C_10, A_10, B_10}, - {1, C_9, A_9, B_9}, - {1, C_8, A_8, B_8}, - {1, C_7, A_7, B_7}, - {1, C_6, A_6, B_6}, - {1, C_5, A_5, B_5}, - {1, C_3, A_3, B_3}, - {1, C_1, A_1, B_1}, - - {1, I_16, G_16, H_16}, - {1, I_14, G_14, H_14}, - {1, I_13, G_13, H_13}, - {1, I_12, G_12, H_12}, - {1, I_11, G_11, H_11}, - {1, I_10, G_10, H_10}, - {1, I_9, G_9, H_9}, - {1, I_8, G_8, H_8}, - {1, I_7, G_7, H_7}, - {1, I_6, G_6, H_6}, - {1, I_5, G_5, H_5}, - {1, I_4, G_4, H_4}, - {1, I_3, G_3, H_3}, - {1, I_1, G_1, H_1}, - - {1, F_16, D_16, E_16}, - {1, F_15, D_15, E_15}, - {1, F_14, D_14, E_14}, - {1, F_13, D_13, E_13}, - {1, F_10, D_10, E_10}, - {1, F_7, D_7, E_7}, - {1, F_6, D_6, E_6}, - {1, F_5, D_5, E_5}, - {1, F_4, D_4, E_4}, - {1, F_3, D_3, E_3}, - {1, F_2, D_2, E_2}, - {1, F_1, D_1, E_1} -}; - -#define __ NO_LED - -led_config_t g_led_config = { - { - // Key Matrix to LED Index - { 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, 40, 41, 42, 43, 44, 45, __, 46 }, - { 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, __, 59, __, 60 }, - { 61, __, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, __, 72, 73, 74 }, - { 75, 76, 77, 78, __, __, 79, __, __, 80, 81, 82, 83, 84, 85, 86 }, - }, - { - // LED Index to Physical Position - {0, 0}, {15, 0}, {30, 0}, {45, 0}, {60, 0}, {75, 0}, { 90, 0}, {105, 0}, {119, 0}, {134, 0}, {149, 0}, {164, 0}, {179, 0}, {194, 0}, {209, 0}, {224, 0}, - {0,13}, {15,13}, {30,13}, {45,13}, {60,13}, {75,13}, { 90,13}, {105,13}, {119,13}, {134,13}, {149,13}, {164,13}, {179,13}, {194,13}, {209,13}, {224,13}, - {4,26}, {22,26}, {37,26}, {52,26}, {67,26}, {82,26}, { 97,26}, {112,26}, {127,26}, {142,26}, {157,26}, {172,26}, {187,26}, {207,32}, {224,26}, - {6,38}, {26,38}, {41,38}, {56,38}, {71,38}, {86,38}, {101,38}, {116,38}, {131,38}, {146,38}, {161,38}, {175,38}, {190,38}, {224,38}, - {9,51}, {34,51}, {49,51}, {64,51}, {78,51}, { 93,51}, {108,51}, {123,51}, {138,51}, {153,51}, {168,51}, {183,51}, {203,51}, {224,51}, - {0,64}, {15,64}, {30,64}, {45,64}, { 90,64}, {134,64}, {149,64}, {164,64}, {179,64}, {194,64}, {209,64}, {224,64} - }, - { - // RGB LED Index to Flag - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 - } -}; -#endif diff --git a/keyboards/keychron/k2_max/jis/rgb/rules.mk b/keyboards/keychron/k2_max/jis/rgb/rules.mk deleted file mode 100644 index 6e7633bfe0..0000000000 --- a/keyboards/keychron/k2_max/jis/rgb/rules.mk +++ /dev/null @@ -1 +0,0 @@ -# This file intentionally left blank diff --git a/keyboards/keychron/k2_max/jis/white/config.h b/keyboards/keychron/k2_max/jis/white/config.h deleted file mode 100644 index 2fbf6d8ab6..0000000000 --- a/keyboards/keychron/k2_max/jis/white/config.h +++ /dev/null @@ -1,47 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#pragma once - -#ifdef LED_MATRIX_ENABLE -/* LED matrix driver configuration */ -# define LED_MATRIX_LED_COUNT 87 -# define DRIVER_COUNT 1 -# define DRIVER_CS_PINS \ - { B9 } - -/* Use first 6 channels of LED driver */ -# define SNLED27351_PHASE_CHANNEL MSKPHASE_6CHANNEL -/* Set LED driver current */ -# define SNLED27351_CURRENT_TUNE \ - { 0x50, 0x50, 0x50, 0x50, 0x50, 0x50, 0x50, 0x50, 0x50, 0x50, 0x50, 0x50 } - -/* Set to infinit, which is use in USB mode by default */ -# define LED_MATRIX_TIMEOUT LED_MATRIX_TIMEOUT_INFINITE -/* Allow shutdown of led driver to save power */ -# define LED_MATRIX_DRIVER_SHUTDOWN_ENABLE -/* Turn off backlight on low brightness to save power */ -# define LED_MATRIX_BRIGHTNESS_TURN_OFF_VAL 48 -# define LED_MATRIX_VAL_STEP 16 - -/* Indications */ -# define DIM_CAPS_LOCK -# define CAPS_LOCK_INDEX 47 -# define LOW_BAT_IND_INDEX \ - { 79 } - -# define LED_MATRIX_KEYPRESSES -#endif diff --git a/keyboards/keychron/k2_max/jis/white/info.json b/keyboards/keychron/k2_max/jis/white/info.json deleted file mode 100644 index c043fe7c31..0000000000 --- a/keyboards/keychron/k2_max/jis/white/info.json +++ /dev/null @@ -1,30 +0,0 @@ -{ - "usb": { - "pid": "0x0A25", - "device_version": "1.0.0" - }, - "features": { - "led_matrix": true - }, - "led_matrix": { - "driver": "snled27351_spi", - "sleep": true, - "animations": { - "none": true, - "solid": true, - "breathing": true, - "band_pinwheel": true, - "band_spiral": true, - "cycle_left_right": true, - "cycle_up_down": true, - "cycle_out_in": true, - "dual_beacon": true, - "solid_reactive_simple": true, - "solid_reactive_multiwide": true, - "solid_reactive_multinexus": true, - "solid_splash": true, - "wave_left_right": true, - "wave_up_down": true - } - } -} diff --git a/keyboards/keychron/k2_max/jis/white/keymaps/default/keymap.c b/keyboards/keychron/k2_max/jis/white/keymaps/default/keymap.c deleted file mode 100644 index 397f4af823..0000000000 --- a/keyboards/keychron/k2_max/jis/white/keymaps/default/keymap.c +++ /dev/null @@ -1,67 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#include QMK_KEYBOARD_H -#include "keychron_common.h" - -enum layers { - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN, -}; -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { -[MAC_BASE] = LAYOUT_jis_87( - KC_ESC, KC_BRID, KC_BRIU, KC_MCTRL, KC_LNPAD, BL_DOWN, BL_UP, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_SNAP, KC_DEL, BL_STEP, - KC_GRV, 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_INT3, KC_BSPC, KC_PGUP, - 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_PGDN, - 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_BSLS, KC_ENT, KC_HOME, - KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_INT1, KC_UP, KC_END, - KC_LCTL, KC_LOPTN, KC_LCMMD, KC_LNG2, KC_SPC, KC_LNG1, KC_RCMMD,MO(MAC_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - -[MAC_FN] = LAYOUT_jis_87( - _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, BL_TOGG, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - BL_TOGG, BL_STEP, BL_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, BL_DOWN, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, KC_RSFT, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - -[WIN_BASE] = LAYOUT_jis_87( - KC_ESC, 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_PSCR, KC_DEL, BL_STEP, - KC_GRV, 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_INT3, KC_BSPC, KC_PGUP, - 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_PGDN, - 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_BSLS, KC_ENT, KC_HOME, - KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_INT1, KC_UP, KC_END, - KC_LCTL, KC_LGUI, KC_LALT, KC_INT5, KC_SPC, KC_INT4, KC_RALT, MO(WIN_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - -[WIN_FN] = LAYOUT_jis_87( - _______, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, BL_DOWN, BL_UP, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, BL_TOGG, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - BL_TOGG, BL_STEP, BL_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, BL_DOWN, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, KC_RSFT, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______) -}; - -// clang-format on -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - if (!process_record_keychron_common(keycode, record)) { - return false; - } - return true; -} diff --git a/keyboards/keychron/k2_max/jis/white/keymaps/via/keymap.c b/keyboards/keychron/k2_max/jis/white/keymaps/via/keymap.c deleted file mode 100644 index 397f4af823..0000000000 --- a/keyboards/keychron/k2_max/jis/white/keymaps/via/keymap.c +++ /dev/null @@ -1,67 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#include QMK_KEYBOARD_H -#include "keychron_common.h" - -enum layers { - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN, -}; -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { -[MAC_BASE] = LAYOUT_jis_87( - KC_ESC, KC_BRID, KC_BRIU, KC_MCTRL, KC_LNPAD, BL_DOWN, BL_UP, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_SNAP, KC_DEL, BL_STEP, - KC_GRV, 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_INT3, KC_BSPC, KC_PGUP, - 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_PGDN, - 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_BSLS, KC_ENT, KC_HOME, - KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_INT1, KC_UP, KC_END, - KC_LCTL, KC_LOPTN, KC_LCMMD, KC_LNG2, KC_SPC, KC_LNG1, KC_RCMMD,MO(MAC_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - -[MAC_FN] = LAYOUT_jis_87( - _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, BL_TOGG, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - BL_TOGG, BL_STEP, BL_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, BL_DOWN, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, KC_RSFT, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - -[WIN_BASE] = LAYOUT_jis_87( - KC_ESC, 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_PSCR, KC_DEL, BL_STEP, - KC_GRV, 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_INT3, KC_BSPC, KC_PGUP, - 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_PGDN, - 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_BSLS, KC_ENT, KC_HOME, - KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_INT1, KC_UP, KC_END, - KC_LCTL, KC_LGUI, KC_LALT, KC_INT5, KC_SPC, KC_INT4, KC_RALT, MO(WIN_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - -[WIN_FN] = LAYOUT_jis_87( - _______, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, BL_DOWN, BL_UP, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, BL_TOGG, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - BL_TOGG, BL_STEP, BL_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, BL_DOWN, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, KC_RSFT, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______) -}; - -// clang-format on -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - if (!process_record_keychron_common(keycode, record)) { - return false; - } - return true; -} diff --git a/keyboards/keychron/k2_max/jis/white/keymaps/via/rules.mk b/keyboards/keychron/k2_max/jis/white/keymaps/via/rules.mk deleted file mode 100644 index 1e5b99807c..0000000000 --- a/keyboards/keychron/k2_max/jis/white/keymaps/via/rules.mk +++ /dev/null @@ -1 +0,0 @@ -VIA_ENABLE = yes diff --git a/keyboards/keychron/k2_max/jis/white/rules.mk b/keyboards/keychron/k2_max/jis/white/rules.mk deleted file mode 100644 index 6e7633bfe0..0000000000 --- a/keyboards/keychron/k2_max/jis/white/rules.mk +++ /dev/null @@ -1 +0,0 @@ -# This file intentionally left blank diff --git a/keyboards/keychron/k2_max/jis/white/white.c b/keyboards/keychron/k2_max/jis/white/white.c deleted file mode 100644 index 78f7ab0a4d..0000000000 --- a/keyboards/keychron/k2_max/jis/white/white.c +++ /dev/null @@ -1,151 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#include "quantum.h" - -// clang-format off -#ifdef LED_MATRIX_ENABLE -const snled27351_led_t g_snled27351_leds[LED_MATRIX_LED_COUNT] = { -/* Refer to SNLED27351 manual for these locations - * driver - * | LED address - * | | */ - {0, A_16}, - {0, A_15}, - {0, A_14}, - {0, A_13}, - {0, A_12}, - {0, A_11}, - {0, A_10}, - {0, A_9}, - {0, A_8}, - {0, A_7}, - {0, A_6}, - {0, A_5}, - {0, A_4}, - {0, A_3}, - {0, A_2}, - {0, A_1}, - - {0, B_16}, - {0, B_15}, - {0, B_14}, - {0, B_13}, - {0, B_12}, - {0, B_11}, - {0, B_10}, - {0, B_9}, - {0, B_8}, - {0, B_7}, - {0, B_6}, - {0, B_5}, - {0, B_4}, - {0, B_3}, - {0, B_2}, - {0, B_1}, - - {0, C_16}, - {0, C_15}, - {0, C_14}, - {0, C_13}, - {0, C_12}, - {0, C_11}, - {0, C_10}, - {0, C_9}, - {0, C_8}, - {0, C_7}, - {0, C_6}, - {0, C_5}, - {0, C_4}, - {0, C_3}, - {0, C_1}, - - {0, D_16}, - {0, D_15}, - {0, D_14}, - {0, D_13}, - {0, D_12}, - {0, D_11}, - {0, D_10}, - {0, D_9}, - {0, D_8}, - {0, D_7}, - {0, D_6}, - {0, D_5}, - {0, D_3}, - {0, D_1}, - - {0, E_16}, - {0, E_14}, - {0, E_13}, - {0, E_12}, - {0, E_11}, - {0, E_10}, - {0, E_9}, - {0, E_8}, - {0, E_7}, - {0, E_6}, - {0, E_5}, - {0, E_4}, - {0, E_3}, - {0, E_1}, - - {0, F_16}, - {0, F_15}, - {0, F_14}, - {0, F_13}, - {0, F_10}, - {0, F_7}, - {0, F_6}, - {0, F_5}, - {0, F_4}, - {0, F_3}, - {0, F_2}, - {0, F_1}, -}; - -#define __ NO_LED - -led_config_t g_led_config = { - { - // Key Matrix to LED Index - { 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, 40, 41, 42, 43, 44, 45, __, 46 }, - { 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, __, 59, __, 60 }, - { 61, __, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, __, 72, 73, 74 }, - { 75, 76, 77, 78, __, __, 79, __, __, 80, 81, 82, 83, 84, 85, 86 }, - }, - { - // LED Index to Physical Position - {0, 0}, {15, 0}, {30, 0}, {45, 0}, {60, 0}, {75, 0}, { 90, 0}, {105, 0}, {119, 0}, {134, 0}, {149, 0}, {164, 0}, {179, 0}, {194, 0}, {209, 0}, {224, 0}, - {0,13}, {15,13}, {30,13}, {45,13}, {60,13}, {75,13}, { 90,13}, {105,13}, {119,13}, {134,13}, {149,13}, {164,13}, {179,13}, {194,13}, {209,13}, {224,13}, - {4,26}, {22,26}, {37,26}, {52,26}, {67,26}, {82,26}, { 97,26}, {112,26}, {127,26}, {142,26}, {157,26}, {172,26}, {187,26}, {207,32}, {224,26}, - {6,38}, {26,38}, {41,38}, {56,38}, {71,38}, {86,38}, {101,38}, {116,38}, {131,38}, {146,38}, {161,38}, {175,38}, {190,38}, {224,38}, - {9,51}, {34,51}, {49,51}, {64,51}, {78,51}, { 93,51}, {108,51}, {123,51}, {138,51}, {153,51}, {168,51}, {183,51}, {203,51}, {224,51}, - {0,64}, {15,64}, {30,64}, {45,64}, { 90,64}, {134,64}, {149,64}, {164,64}, {179,64}, {194,64}, {209,64}, {224,64} - }, - { - // LED Index to Flag - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 - } -}; -#endif diff --git a/keyboards/keychron/k2_max/k2_max.c b/keyboards/keychron/k2_max/k2_max.c deleted file mode 100644 index 3dc65b60a2..0000000000 --- a/keyboards/keychron/k2_max/k2_max.c +++ /dev/null @@ -1,56 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#include "quantum.h" -#include "keychron_task.h" -#ifdef FACTORY_TEST_ENABLE -# include "factory_test.h" -# include "keychron_common.h" -#endif -#ifdef LK_WIRELESS_ENABLE -# include "lkbt51.h" -# include "wireless.h" -# include "transport.h" -# include "keychron_wireless_common.h" -# include "battery.h" -#endif - -bool dip_switch_update_kb(uint8_t index, bool active) { - if (index == 0) { - default_layer_set(1UL << (active ? 2 : 0)); - } - dip_switch_update_user(index, active); - - return true; -} - -void keyboard_post_init_kb(void) { -#ifdef LK_WIRELESS_ENABLE - palSetLineMode(P2P4_MODE_SELECT_PIN, PAL_MODE_INPUT); - palSetLineMode(BT_MODE_SELECT_PIN, PAL_MODE_INPUT); - - lkbt51_init(false); - wireless_init(); -#endif - - keyboard_post_init_user(); -} - -#ifdef LK_WIRELESS_ENABLE -bool lpm_is_kb_idle(void) { - return !factory_reset_indicating(); -} -#endif diff --git a/keyboards/keychron/k2_max/mcuconf.h b/keyboards/keychron/k2_max/mcuconf.h deleted file mode 100644 index 89294ee64b..0000000000 --- a/keyboards/keychron/k2_max/mcuconf.h +++ /dev/null @@ -1,37 +0,0 @@ -/* Copyright 2024 @ 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 - -#include_next - -#undef STM32_HSECLK -#define STM32_HSECLK 16000000 - -#undef STM32_PLLM_VALUE -#define STM32_PLLM_VALUE 8 - -#undef STM32_PLLN_VALUE -#define STM32_PLLN_VALUE 96 - -#undef STM32_PLLP_VALUE -#define STM32_PLLP_VALUE 4 - -#undef STM32_PLLQ_VALUE -#define STM32_PLLQ_VALUE 4 - -#undef STM32_SPI_USE_SPI1 -#define STM32_SPI_USE_SPI1 TRUE diff --git a/keyboards/keychron/k2_max/readme.md b/keyboards/keychron/k2_max/readme.md deleted file mode 100644 index 12d21f8ba4..0000000000 --- a/keyboards/keychron/k2_max/readme.md +++ /dev/null @@ -1,35 +0,0 @@ -# Keychron K2 Max - -![Keychron K2 Max](https://cdn.shopify.com/s/files/1/0059/0630/1017/files/K2_Max1.jpg?v=1721721488) - -A customizable 84 keys TKL keyboard. - -* Keyboard Maintainer: [Keychron](https://github.com/keychron) -* Hardware Supported: Keychron K2 Max -* Hardware Availability: [Keychron K2 Max QMK/VIA Wireless Custom Mechanical Keyboard](https://www.keychron.com/collections/keychron-k-max-series-keyboard/products/keychron-k2-max-qmk-wireless-mechanical-keyboard) - -Make example for this keyboard (after setting up your build environment): - - make keychron/k2_max/ansi/rgb:default - make keychron/k2_max/ansi/white:default - - make keychron/k2_max/iso/rgb:default - make keychron/k2_max/iso/white:default - - make keychron/k2_max/jis/rgb:default - make keychron/k2_max/jis/white:default - -Flashing example for this keyboard: - - make keychron/k2_max/ansi/rgb:default:flash - make keychron/k2_max/ansi/white:default:flash - - make keychron/k2_max/iso/rgb:default:flash - make keychron/k2_max/iso/white:default:flash - - make keychron/k2_max/jis/rgb:default:flash - make keychron/k2_max/jis/white:default:flash - -**Reset Key**: Disconnect the USB cable, toggle mode switch to "Cable", hold down the *Esc* key or reset button underneath space bar, then connect the USB cable. - -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). diff --git a/keyboards/keychron/k2_max/rules.mk b/keyboards/keychron/k2_max/rules.mk deleted file mode 100644 index 4eaf6820bc..0000000000 --- a/keyboards/keychron/k2_max/rules.mk +++ /dev/null @@ -1,4 +0,0 @@ -include keyboards/keychron/common/wireless/wireless.mk -include keyboards/keychron/common/keychron_common.mk - -VPATH += $(TOP_DIR)/keyboards/keychron diff --git a/keyboards/keychron/k2_max/via_json/k2_max_ansi_rgb.json b/keyboards/keychron/k2_max/via_json/k2_max_ansi_rgb.json deleted file mode 100644 index db597ab35f..0000000000 --- a/keyboards/keychron/k2_max/via_json/k2_max_ansi_rgb.json +++ /dev/null @@ -1,266 +0,0 @@ -{ - "name": "Keychron K2 Max ANSI RGB", - "vendorId": "0x3434", - "productId": "0x0A20", - "keycodes": ["qmk_lighting"], - "menus": [ - { - "label": "Lighting", - "content": [ - { - "label": "Backlight", - "content": [ - { - "label": "Brightness", - "type": "range", - "options": [0, 255], - "content": ["id_qmk_rgb_matrix_brightness", 3, 1] - }, - { - "label": "Effect", - "type": "dropdown", - "content": ["id_qmk_rgb_matrix_effect", 3, 2], - "options": [ - ["None", 0], - ["Solid Color", 1], - ["Breathing", 2], - ["Band Spiral Val", 3], - ["Cycle All", 4], - ["Cycle Left Right", 5], - ["Cycle Up Down", 6], - ["Rainbow Moving Chevron", 7], - ["Cycle Out In", 8], - ["Cycle Out In Dual", 9], - ["Cycle Pinwheel", 10], - ["Cycle Spiral", 11], - ["Dual Beacon", 12], - ["Rainbow Beacon", 13], - ["Jellybean Raindrops", 14], - ["Pixel Rain", 15], - ["Typing Heatmap", 16], - ["Digital Rain", 17], - ["Reactive Simple", 18], - ["Reactive Multiwide", 19], - ["Reactive Multinexus", 20], - ["Splash", 21], - ["Solid Splash", 22] - ] - }, - { - "showIf": "{id_qmk_rgb_matrix_effect} > 1", - "label": "Effect Speed", - "type": "range", - "options": [0, 255], - "content": ["id_qmk_rgb_matrix_effect_speed", 3, 3] - }, - { - "showIf": "{id_qmk_rgb_matrix_effect} != 0 && ( {id_qmk_rgb_matrix_effect} < 4 || {id_qmk_rgb_matrix_effect} == 18 || ({id_qmk_rgb_matrix_effect} > 17 && {id_qmk_rgb_matrix_effect} != 21) ) ", - "label": "Color", - "type": "color", - "content": ["id_qmk_rgb_matrix_color", 3, 4] - } - ] - } - ] - } - ], - "customKeycodes": [ - {"name": "Left Option", "title": "Left Option", "shortName": "LOpt"}, - {"name": "Right Option", "title": "Right Option", "shortName": "ROpt"}, - {"name": "Left Cmd", "title": "Left Command", "shortName": "LCmd"}, - {"name": "Right Cmd", "title": "Right Command", "shortName": "RCmd"}, - {"name": "Misson Control", "title": "Misson Control in Mac", "shortName": "MCtl"}, - {"name": "Lanuch Pad", "title": "Lanuch Pad in Windows", "shortName": "LPad"}, - {"name": "Task View", "title": "Task View in Windows", "shortName": "Task"}, - {"name": "File Explorer", "title": "File Explorer in Windows", "shortName": "File"}, - {"name": "Screen shot", "title": "Screenshot in macOS", "shortName": "SShot"}, - {"name": "Cortana", "title": "Cortana in Windows", "shortName": "Cortana"}, - {"name": "Siri", "title": "Siri in macOS", "shortName": "Siri"}, - {"name": "Bluetooth Host 1", "title": "Bluetooth Host 1", "shortName": "BTH1"}, - {"name": "Bluetooth Host 2", "title": "Bluetooth Host 2", "shortName": "BTH2"}, - {"name": "Bluetooth Host 3", "title": "Bluetooth Host 3", "shortName": "BTH3"}, - {"name": "2.4G", "title": "2.4G", "shortName": "2.4G"}, - {"name": "Battery Level", "title": "Show battery level", "shortName": "Batt"} - ], - "matrix": {"rows": 6, "cols": 16}, - "layouts": { - "keymap": [ - [ - { - "c": "#777777" - }, - "0,0", - { - "c": "#cccccc" - }, - "0,1", - "0,2", - "0,3", - "0,4", - { - "c": "#aaaaaa" - }, - "0,5", - "0,6", - "0,7", - "0,8", - "0,9", - { - "c": "#cccccc" - }, - "0,10", - "0,11", - "0,12", - { - "c": "#aaaaaa" - }, - "0,13", - "0,14", - "0,15" - ], - [ - "1,0", - { - "c": "#cccccc" - }, - "1,1", - "1,2", - "1,3", - "1,4", - "1,5", - "1,6", - "1,7", - "1,8", - "1,9", - "1,10", - "1,11", - "1,12", - { - "c": "#aaaaaa", - "w": 2 - }, - "1,13", - "1,15" - ], - [ - { - "w": 1.5 - }, - "2,0", - { - "c": "#cccccc" - }, - "2,1", - "2,2", - "2,3", - "2,4", - "2,5", - "2,6", - "2,7", - "2,8", - "2,9", - "2,10", - "2,11", - "2,12", - { - "c": "#aaaaaa", - "w": 1.5 - }, - "2,13", - "2,15" - ], - [ - { - "w": 1.75 - }, - "3,0", - { - "c": "#cccccc" - }, - "3,1", - "3,2", - "3,3", - "3,4", - "3,5", - "3,6", - "3,7", - "3,8", - "3,9", - "3,10", - "3,11", - { - "c": "#777777", - "w": 2.25 - }, - "3,13", - { - "c": "#aaaaaa" - }, - "3,15" - ], - [ - { - "w": 2.25 - }, - "4,0", - { - "c": "#cccccc" - }, - "4,2", - "4,3", - "4,4", - "4,5", - "4,6", - "4,7", - "4,8", - "4,9", - "4,10", - "4,11", - { - "c": "#aaaaaa", - "w": 1.75 - }, - "4,12", - { - "c": "#cccccc" - }, - "4,13", - { - "c": "#aaaaaa" - }, - "4,15" - ], - [ - { - "w": 1.25 - }, - "5,0", - { - "w": 1.25 - }, - "5,1", - { - "w": 1.25 - }, - "5,2", - { - "c": "#cccccc", - "w": 6.25 - }, - "5,6", - { - "c": "#aaaaaa" - }, - "5,9", - "5,10", - "5,11", - { - "c": "#cccccc" - }, - "5,12", - "5,13", - "5,15" - ] - ] - } -} \ No newline at end of file diff --git a/keyboards/keychron/k2_max/via_json/k2_max_ansi_white.json b/keyboards/keychron/k2_max/via_json/k2_max_ansi_white.json deleted file mode 100644 index 0a3bd4ddc4..0000000000 --- a/keyboards/keychron/k2_max/via_json/k2_max_ansi_white.json +++ /dev/null @@ -1,205 +0,0 @@ -{ - "name": "Keychron K2 Max ANSI White", - "vendorId": "0x3434", - "productId": "0x0A23", - "keycodes": ["qmk_lighting"], - "customKeycodes": [ - {"name": "Left Option", "title": "Left Option", "shortName": "LOpt"}, - {"name": "Right Option", "title": "Right Option", "shortName": "ROpt"}, - {"name": "Left Cmd", "title": "Left Command", "shortName": "LCmd"}, - {"name": "Right Cmd", "title": "Right Command", "shortName": "RCmd"}, - {"name": "Misson Control", "title": "Misson Control in Mac", "shortName": "MCtl"}, - {"name": "Lanuch Pad", "title": "Lanuch Pad in Windows", "shortName": "LPad"}, - {"name": "Task View", "title": "Task View in Windows", "shortName": "Task"}, - {"name": "File Explorer", "title": "File Explorer in Windows", "shortName": "File"}, - {"name": "Screen shot", "title": "Screenshot in macOS", "shortName": "SShot"}, - {"name": "Cortana", "title": "Cortana in Windows", "shortName": "Cortana"}, - {"name": "Siri", "title": "Siri in macOS", "shortName": "Siri"}, - {"name": "Bluetooth Host 1", "title": "Bluetooth Host 1", "shortName": "BTH1"}, - {"name": "Bluetooth Host 2", "title": "Bluetooth Host 2", "shortName": "BTH2"}, - {"name": "Bluetooth Host 3", "title": "Bluetooth Host 3", "shortName": "BTH3"}, - {"name": "2.4G", "title": "2.4G", "shortName": "2.4G"}, - {"name": "Battery Level", "title": "Show battery level", "shortName": "Batt"} - ], - "matrix": {"rows": 6, "cols": 16}, - "layouts": { - "keymap": [ - [ - { - "c": "#777777" - }, - "0,0", - { - "c": "#cccccc" - }, - "0,1", - "0,2", - "0,3", - "0,4", - { - "c": "#aaaaaa" - }, - "0,5", - "0,6", - "0,7", - "0,8", - "0,9", - { - "c": "#cccccc" - }, - "0,10", - "0,11", - "0,12", - { - "c": "#aaaaaa" - }, - "0,13", - "0,14", - "0,15" - ], - [ - "1,0", - { - "c": "#cccccc" - }, - "1,1", - "1,2", - "1,3", - "1,4", - "1,5", - "1,6", - "1,7", - "1,8", - "1,9", - "1,10", - "1,11", - "1,12", - { - "c": "#aaaaaa", - "w": 2 - }, - "1,13", - "1,15" - ], - [ - { - "w": 1.5 - }, - "2,0", - { - "c": "#cccccc" - }, - "2,1", - "2,2", - "2,3", - "2,4", - "2,5", - "2,6", - "2,7", - "2,8", - "2,9", - "2,10", - "2,11", - "2,12", - { - "c": "#aaaaaa", - "w": 1.5 - }, - "2,13", - "2,15" - ], - [ - { - "w": 1.75 - }, - "3,0", - { - "c": "#cccccc" - }, - "3,1", - "3,2", - "3,3", - "3,4", - "3,5", - "3,6", - "3,7", - "3,8", - "3,9", - "3,10", - "3,11", - { - "c": "#777777", - "w": 2.25 - }, - "3,13", - { - "c": "#aaaaaa" - }, - "3,15" - ], - [ - { - "w": 2.25 - }, - "4,0", - { - "c": "#cccccc" - }, - "4,2", - "4,3", - "4,4", - "4,5", - "4,6", - "4,7", - "4,8", - "4,9", - "4,10", - "4,11", - { - "c": "#aaaaaa", - "w": 1.75 - }, - "4,12", - { - "c": "#cccccc" - }, - "4,13", - { - "c": "#aaaaaa" - }, - "4,15" - ], - [ - { - "w": 1.25 - }, - "5,0", - { - "w": 1.25 - }, - "5,1", - { - "w": 1.25 - }, - "5,2", - { - "c": "#cccccc", - "w": 6.25 - }, - "5,6", - { - "c": "#aaaaaa" - }, - "5,9", - "5,10", - "5,11", - { - "c": "#cccccc" - }, - "5,12", - "5,13", - "5,15" - ] - ] - } -} \ No newline at end of file diff --git a/keyboards/keychron/k2_max/via_json/k2_max_iso_rgb.json b/keyboards/keychron/k2_max/via_json/k2_max_iso_rgb.json deleted file mode 100644 index e7cc996731..0000000000 --- a/keyboards/keychron/k2_max/via_json/k2_max_iso_rgb.json +++ /dev/null @@ -1,269 +0,0 @@ -{ - "name": "Keychron K2 Max ISO RGB", - "vendorId": "0x3434", - "productId": "0x0A21", - "keycodes": ["qmk_lighting"], - "menus": [ - { - "label": "Lighting", - "content": [ - { - "label": "Backlight", - "content": [ - { - "label": "Brightness", - "type": "range", - "options": [0, 255], - "content": ["id_qmk_rgb_matrix_brightness", 3, 1] - }, - { - "label": "Effect", - "type": "dropdown", - "content": ["id_qmk_rgb_matrix_effect", 3, 2], - "options": [ - ["None", 0], - ["Solid Color", 1], - ["Breathing", 2], - ["Band Spiral Val", 3], - ["Cycle All", 4], - ["Cycle Left Right", 5], - ["Cycle Up Down", 6], - ["Rainbow Moving Chevron", 7], - ["Cycle Out In", 8], - ["Cycle Out In Dual", 9], - ["Cycle Pinwheel", 10], - ["Cycle Spiral", 11], - ["Dual Beacon", 12], - ["Rainbow Beacon", 13], - ["Jellybean Raindrops", 14], - ["Pixel Rain", 15], - ["Typing Heatmap", 16], - ["Digital Rain", 17], - ["Reactive Simple", 18], - ["Reactive Multiwide", 19], - ["Reactive Multinexus", 20], - ["Splash", 21], - ["Solid Splash", 22] - ] - }, - { - "showIf": "{id_qmk_rgb_matrix_effect} > 1", - "label": "Effect Speed", - "type": "range", - "options": [0, 255], - "content": ["id_qmk_rgb_matrix_effect_speed", 3, 3] - }, - { - "showIf": "{id_qmk_rgb_matrix_effect} != 0 && ( {id_qmk_rgb_matrix_effect} < 4 || {id_qmk_rgb_matrix_effect} == 18 || ({id_qmk_rgb_matrix_effect} > 17 && {id_qmk_rgb_matrix_effect} != 21) ) ", - "label": "Color", - "type": "color", - "content": ["id_qmk_rgb_matrix_color", 3, 4] - } - ] - } - ] - } - ], - "customKeycodes": [ - {"name": "Left Option", "title": "Left Option", "shortName": "LOpt"}, - {"name": "Right Option", "title": "Right Option", "shortName": "ROpt"}, - {"name": "Left Cmd", "title": "Left Command", "shortName": "LCmd"}, - {"name": "Right Cmd", "title": "Right Command", "shortName": "RCmd"}, - {"name": "Misson Control", "title": "Misson Control in Mac", "shortName": "MCtl"}, - {"name": "Lanuch Pad", "title": "Lanuch Pad in Windows", "shortName": "LPad"}, - {"name": "Task View", "title": "Task View in Windows", "shortName": "Task"}, - {"name": "File Explorer", "title": "File Explorer in Windows", "shortName": "File"}, - {"name": "Screen shot", "title": "Screenshot in macOS", "shortName": "SShot"}, - {"name": "Cortana", "title": "Cortana in Windows", "shortName": "Cortana"}, - {"name": "Siri", "title": "Siri in macOS", "shortName": "Siri"}, - {"name": "Bluetooth Host 1", "title": "Bluetooth Host 1", "shortName": "BTH1"}, - {"name": "Bluetooth Host 2", "title": "Bluetooth Host 2", "shortName": "BTH2"}, - {"name": "Bluetooth Host 3", "title": "Bluetooth Host 3", "shortName": "BTH3"}, - {"name": "2.4G", "title": "2.4G", "shortName": "2.4G"}, - {"name": "Battery Level", "title": "Show battery level", "shortName": "Batt"} - ], - "matrix": {"rows": 6, "cols": 16}, - "layouts": { - "keymap": [ - [ - { - "c": "#777777" - }, - "0,0", - { - "c": "#cccccc" - }, - "0,1", - "0,2", - "0,3", - "0,4", - { - "c": "#aaaaaa" - }, - "0,5", - "0,6", - "0,7", - "0,8", - "0,9", - { - "c": "#cccccc" - }, - "0,10", - "0,11", - "0,12", - { - "c": "#aaaaaa" - }, - "0,13", - "0,14", - "0,15" - ], - [ - "1,0", - { - "c": "#cccccc" - }, - "1,1", - "1,2", - "1,3", - "1,4", - "1,5", - "1,6", - "1,7", - "1,8", - "1,9", - "1,10", - "1,11", - "1,12", - { - "c": "#aaaaaa", - "w": 2 - }, - "1,13", - "1,15" - ], - [ - { - "w": 1.5 - }, - "2,0", - { - "c": "#cccccc" - }, - "2,1", - "2,2", - "2,3", - "2,4", - "2,5", - "2,6", - "2,7", - "2,8", - "2,9", - "2,10", - "2,11", - "2,12", - { - "x": 0.25, - "c": "#aaaaaa", - "w": 1.25, - "h": 2, - "w2": 1.5, - "h2": 1, - "x2": -0.25 - }, - "2,13", - "2,15" - ], - [ - { - "w": 1.75 - }, - "3,0", - { - "c": "#cccccc" - }, - "3,1", - "3,2", - "3,3", - "3,4", - "3,5", - "3,6", - "3,7", - "3,8", - "3,9", - "3,10", - "3,11", - "3,13", - { - "x": 1.25, - "c": "#aaaaaa" - }, - "3,15" - ], - [ - { - "w": 1.25 - }, - "4,0", - { - "c": "#cccccc" - }, - "4,1", - "4,2", - "4,3", - "4,4", - "4,5", - "4,6", - "4,7", - "4,8", - "4,9", - "4,10", - "4,11", - { - "c": "#aaaaaa", - "w": 1.75 - }, - "4,12", - { - "c": "#cccccc" - }, - "4,13", - { - "c": "#aaaaaa" - }, - "4,15" - ], - [ - { - "w": 1.25 - }, - "5,0", - { - "w": 1.25 - }, - "5,1", - { - "w": 1.25 - }, - "5,2", - { - "c": "#cccccc", - "w": 6.25 - }, - "5,6", - { - "c": "#aaaaaa" - }, - "5,9", - "5,10", - "5,11", - { - "c": "#cccccc" - }, - "5,12", - "5,13", - "5,15" - ] - ] - } -} \ No newline at end of file diff --git a/keyboards/keychron/k2_max/via_json/k2_max_iso_white.json b/keyboards/keychron/k2_max/via_json/k2_max_iso_white.json deleted file mode 100644 index 8c41349811..0000000000 --- a/keyboards/keychron/k2_max/via_json/k2_max_iso_white.json +++ /dev/null @@ -1,208 +0,0 @@ -{ - "name": "Keychron K2 Max ISO White", - "vendorId": "0x3434", - "productId": "0x0A24", - "keycodes": ["qmk_lighting"], - "customKeycodes": [ - {"name": "Left Option", "title": "Left Option", "shortName": "LOpt"}, - {"name": "Right Option", "title": "Right Option", "shortName": "ROpt"}, - {"name": "Left Cmd", "title": "Left Command", "shortName": "LCmd"}, - {"name": "Right Cmd", "title": "Right Command", "shortName": "RCmd"}, - {"name": "Misson Control", "title": "Misson Control in Mac", "shortName": "MCtl"}, - {"name": "Lanuch Pad", "title": "Lanuch Pad in Windows", "shortName": "LPad"}, - {"name": "Task View", "title": "Task View in Windows", "shortName": "Task"}, - {"name": "File Explorer", "title": "File Explorer in Windows", "shortName": "File"}, - {"name": "Screen shot", "title": "Screenshot in macOS", "shortName": "SShot"}, - {"name": "Cortana", "title": "Cortana in Windows", "shortName": "Cortana"}, - {"name": "Siri", "title": "Siri in macOS", "shortName": "Siri"}, - {"name": "Bluetooth Host 1", "title": "Bluetooth Host 1", "shortName": "BTH1"}, - {"name": "Bluetooth Host 2", "title": "Bluetooth Host 2", "shortName": "BTH2"}, - {"name": "Bluetooth Host 3", "title": "Bluetooth Host 3", "shortName": "BTH3"}, - {"name": "2.4G", "title": "2.4G", "shortName": "2.4G"}, - {"name": "Battery Level", "title": "Show battery level", "shortName": "Batt"} - ], - "matrix": {"rows": 6, "cols": 16}, - "layouts": { - "keymap": [ - [ - { - "c": "#777777" - }, - "0,0", - { - "c": "#cccccc" - }, - "0,1", - "0,2", - "0,3", - "0,4", - { - "c": "#aaaaaa" - }, - "0,5", - "0,6", - "0,7", - "0,8", - "0,9", - { - "c": "#cccccc" - }, - "0,10", - "0,11", - "0,12", - { - "c": "#aaaaaa" - }, - "0,13", - "0,14", - "0,15" - ], - [ - "1,0", - { - "c": "#cccccc" - }, - "1,1", - "1,2", - "1,3", - "1,4", - "1,5", - "1,6", - "1,7", - "1,8", - "1,9", - "1,10", - "1,11", - "1,12", - { - "c": "#aaaaaa", - "w": 2 - }, - "1,13", - "1,15" - ], - [ - { - "w": 1.5 - }, - "2,0", - { - "c": "#cccccc" - }, - "2,1", - "2,2", - "2,3", - "2,4", - "2,5", - "2,6", - "2,7", - "2,8", - "2,9", - "2,10", - "2,11", - "2,12", - { - "x": 0.25, - "c": "#aaaaaa", - "w": 1.25, - "h": 2, - "w2": 1.5, - "h2": 1, - "x2": -0.25 - }, - "2,13", - "2,15" - ], - [ - { - "w": 1.75 - }, - "3,0", - { - "c": "#cccccc" - }, - "3,1", - "3,2", - "3,3", - "3,4", - "3,5", - "3,6", - "3,7", - "3,8", - "3,9", - "3,10", - "3,11", - "3,13", - { - "x": 1.25, - "c": "#aaaaaa" - }, - "3,15" - ], - [ - { - "w": 1.25 - }, - "4,0", - { - "c": "#cccccc" - }, - "4,1", - "4,2", - "4,3", - "4,4", - "4,5", - "4,6", - "4,7", - "4,8", - "4,9", - "4,10", - "4,11", - { - "c": "#aaaaaa", - "w": 1.75 - }, - "4,12", - { - "c": "#cccccc" - }, - "4,13", - { - "c": "#aaaaaa" - }, - "4,15" - ], - [ - { - "w": 1.25 - }, - "5,0", - { - "w": 1.25 - }, - "5,1", - { - "w": 1.25 - }, - "5,2", - { - "c": "#cccccc", - "w": 6.25 - }, - "5,6", - { - "c": "#aaaaaa" - }, - "5,9", - "5,10", - "5,11", - { - "c": "#cccccc" - }, - "5,12", - "5,13", - "5,15" - ] - ] - } -} \ No newline at end of file diff --git a/keyboards/keychron/k2_max/via_json/k2_max_jis_rgb.json b/keyboards/keychron/k2_max/via_json/k2_max_jis_rgb.json deleted file mode 100644 index cc86fdb586..0000000000 --- a/keyboards/keychron/k2_max/via_json/k2_max_jis_rgb.json +++ /dev/null @@ -1,261 +0,0 @@ -{ - "name": "Keychron K2 Max JIS RGB", - "vendorId": "0x3434", - "productId": "0x0A22", - "keycodes": ["qmk_lighting"], - "menus": [ - { - "label": "Lighting", - "content": [ - { - "label": "Backlight", - "content": [ - { - "label": "Brightness", - "type": "range", - "options": [0, 255], - "content": ["id_qmk_rgb_matrix_brightness", 3, 1] - }, - { - "label": "Effect", - "type": "dropdown", - "content": ["id_qmk_rgb_matrix_effect", 3, 2], - "options": [ - ["None", 0], - ["Solid Color", 1], - ["Breathing", 2], - ["Band Spiral Val", 3], - ["Cycle All", 4], - ["Cycle Left Right", 5], - ["Cycle Up Down", 6], - ["Rainbow Moving Chevron", 7], - ["Cycle Out In", 8], - ["Cycle Out In Dual", 9], - ["Cycle Pinwheel", 10], - ["Cycle Spiral", 11], - ["Dual Beacon", 12], - ["Rainbow Beacon", 13], - ["Jellybean Raindrops", 14], - ["Pixel Rain", 15], - ["Typing Heatmap", 16], - ["Digital Rain", 17], - ["Reactive Simple", 18], - ["Reactive Multiwide", 19], - ["Reactive Multinexus", 20], - ["Splash", 21], - ["Solid Splash", 22] - ] - }, - { - "showIf": "{id_qmk_rgb_matrix_effect} > 1", - "label": "Effect Speed", - "type": "range", - "options": [0, 255], - "content": ["id_qmk_rgb_matrix_effect_speed", 3, 3] - }, - { - "showIf": "{id_qmk_rgb_matrix_effect} != 0 && ( {id_qmk_rgb_matrix_effect} < 4 || {id_qmk_rgb_matrix_effect} == 18 || ({id_qmk_rgb_matrix_effect} > 17 && {id_qmk_rgb_matrix_effect} != 21) ) ", - "label": "Color", - "type": "color", - "content": ["id_qmk_rgb_matrix_color", 3, 4] - } - ] - } - ] - } - ], - "customKeycodes": [ - {"name": "Left Option", "title": "Left Option", "shortName": "LOpt"}, - {"name": "Right Option", "title": "Right Option", "shortName": "ROpt"}, - {"name": "Left Cmd", "title": "Left Command", "shortName": "LCmd"}, - {"name": "Right Cmd", "title": "Right Command", "shortName": "RCmd"}, - {"name": "Misson Control", "title": "Misson Control in Mac", "shortName": "MCtl"}, - {"name": "Lanuch Pad", "title": "Lanuch Pad in Windows", "shortName": "LPad"}, - {"name": "Task View", "title": "Task View in Windows", "shortName": "Task"}, - {"name": "File Explorer", "title": "File Explorer in Windows", "shortName": "File"}, - {"name": "Screen shot", "title": "Screenshot in macOS", "shortName": "SShot"}, - {"name": "Cortana", "title": "Cortana in Windows", "shortName": "Cortana"}, - {"name": "Siri", "title": "Siri in macOS", "shortName": "Siri"}, - {"name": "Bluetooth Host 1", "title": "Bluetooth Host 1", "shortName": "BTH1"}, - {"name": "Bluetooth Host 2", "title": "Bluetooth Host 2", "shortName": "BTH2"}, - {"name": "Bluetooth Host 3", "title": "Bluetooth Host 3", "shortName": "BTH3"}, - {"name": "2.4G", "title": "2.4G", "shortName": "2.4G"}, - {"name": "Battery Level", "title": "Show battery level", "shortName": "Batt"} - ], - "matrix": {"rows": 6, "cols": 16}, - "layouts": { - "keymap": [ - [ - { - "c": "#777777" - }, - "0,0", - { - "c": "#cccccc" - }, - "0,1", - "0,2", - "0,3", - "0,4", - { - "c": "#aaaaaa" - }, - "0,5", - "0,6", - "0,7", - "0,8", - "0,9", - { - "c": "#cccccc" - }, - "0,10", - "0,11", - "0,12", - { - "c": "#aaaaaa" - }, - "0,13", - "0,14", - "0,15" - ], - [ - "1,0", - { - "c": "#cccccc" - }, - "1,1", - "1,2", - "1,3", - "1,4", - "1,5", - "1,6", - "1,7", - "1,8", - "1,9", - "1,10", - "1,11", - "1,12", - "1,13", - "1,14", - { - "c": "#aaaaaa" - }, - "1,15" - ], - [ - { - "w": 1.5 - }, - "2,0", - { - "c": "#cccccc" - }, - "2,1", - "2,2", - "2,3", - "2,4", - "2,5", - "2,6", - "2,7", - "2,8", - "2,9", - "2,10", - "2,11", - "2,12", - { - "x": 0.25, - "c": "#aaaaaa", - "w": 1.25, - "h": 2, - "w2": 1.5, - "h2": 1, - "x2": -0.25 - }, - "2,13", - "2,15" - ], - [ - { - "w": 1.75 - }, - "3,0", - { - "c": "#cccccc" - }, - "3,1", - "3,2", - "3,3", - "3,4", - "3,5", - "3,6", - "3,7", - "3,8", - "3,9", - "3,10", - "3,11", - "3,13", - { - "x": 1.25, - "c": "#aaaaaa" - }, - "3,15" - ], - [ - { - "w": 2.25 - }, - "4,0", - { - "c": "#cccccc" - }, - "4,2", - "4,3", - "4,4", - "4,5", - "4,6", - "4,7", - "4,8", - "4,9", - "4,10", - "4,11", - "4,12", - { - "c": "#aaaaaa", - "w": 1.75 - }, - "4,13", - "4,15" - ], - [ - { - "w": 1.25 - }, - "5,0", - "5,1", - { - "w": 1.25 - }, - "5,2", - "5,3", - { - "c": "#cccccc", - "w": 4.5 - }, - "5,6", - { - "c": "#aaaaaa" - }, - "5,9", - "5,10", - "5,11", - "5,12", - { - "c": "#cccccc" - }, - "5,13", - "5,14", - "5,15" - ] - ] - } -} \ No newline at end of file diff --git a/keyboards/keychron/k2_max/via_json/k2_max_jis_white.json b/keyboards/keychron/k2_max/via_json/k2_max_jis_white.json deleted file mode 100644 index 8ed26559e9..0000000000 --- a/keyboards/keychron/k2_max/via_json/k2_max_jis_white.json +++ /dev/null @@ -1,200 +0,0 @@ -{ - "name": "Keychron K2 Max JIS White", - "vendorId": "0x3434", - "productId": "0x0A25", - "keycodes": ["qmk_lighting"], - "customKeycodes": [ - {"name": "Left Option", "title": "Left Option", "shortName": "LOpt"}, - {"name": "Right Option", "title": "Right Option", "shortName": "ROpt"}, - {"name": "Left Cmd", "title": "Left Command", "shortName": "LCmd"}, - {"name": "Right Cmd", "title": "Right Command", "shortName": "RCmd"}, - {"name": "Misson Control", "title": "Misson Control in Mac", "shortName": "MCtl"}, - {"name": "Lanuch Pad", "title": "Lanuch Pad in Windows", "shortName": "LPad"}, - {"name": "Task View", "title": "Task View in Windows", "shortName": "Task"}, - {"name": "File Explorer", "title": "File Explorer in Windows", "shortName": "File"}, - {"name": "Screen shot", "title": "Screenshot in macOS", "shortName": "SShot"}, - {"name": "Cortana", "title": "Cortana in Windows", "shortName": "Cortana"}, - {"name": "Siri", "title": "Siri in macOS", "shortName": "Siri"}, - {"name": "Bluetooth Host 1", "title": "Bluetooth Host 1", "shortName": "BTH1"}, - {"name": "Bluetooth Host 2", "title": "Bluetooth Host 2", "shortName": "BTH2"}, - {"name": "Bluetooth Host 3", "title": "Bluetooth Host 3", "shortName": "BTH3"}, - {"name": "2.4G", "title": "2.4G", "shortName": "2.4G"}, - {"name": "Battery Level", "title": "Show battery level", "shortName": "Batt"} - ], - "matrix": {"rows": 6, "cols": 16}, - "layouts": { - "keymap": [ - [ - { - "c": "#777777" - }, - "0,0", - { - "c": "#cccccc" - }, - "0,1", - "0,2", - "0,3", - "0,4", - { - "c": "#aaaaaa" - }, - "0,5", - "0,6", - "0,7", - "0,8", - "0,9", - { - "c": "#cccccc" - }, - "0,10", - "0,11", - "0,12", - { - "c": "#aaaaaa" - }, - "0,13", - "0,14", - "0,15" - ], - [ - "1,0", - { - "c": "#cccccc" - }, - "1,1", - "1,2", - "1,3", - "1,4", - "1,5", - "1,6", - "1,7", - "1,8", - "1,9", - "1,10", - "1,11", - "1,12", - "1,13", - "1,14", - { - "c": "#aaaaaa" - }, - "1,15" - ], - [ - { - "w": 1.5 - }, - "2,0", - { - "c": "#cccccc" - }, - "2,1", - "2,2", - "2,3", - "2,4", - "2,5", - "2,6", - "2,7", - "2,8", - "2,9", - "2,10", - "2,11", - "2,12", - { - "x": 0.25, - "c": "#aaaaaa", - "w": 1.25, - "h": 2, - "w2": 1.5, - "h2": 1, - "x2": -0.25 - }, - "2,13", - "2,15" - ], - [ - { - "w": 1.75 - }, - "3,0", - { - "c": "#cccccc" - }, - "3,1", - "3,2", - "3,3", - "3,4", - "3,5", - "3,6", - "3,7", - "3,8", - "3,9", - "3,10", - "3,11", - "3,13", - { - "x": 1.25, - "c": "#aaaaaa" - }, - "3,15" - ], - [ - { - "w": 2.25 - }, - "4,0", - { - "c": "#cccccc" - }, - "4,2", - "4,3", - "4,4", - "4,5", - "4,6", - "4,7", - "4,8", - "4,9", - "4,10", - "4,11", - "4,12", - { - "c": "#aaaaaa", - "w": 1.75 - }, - "4,13", - "4,15" - ], - [ - { - "w": 1.25 - }, - "5,0", - "5,1", - { - "w": 1.25 - }, - "5,2", - "5,3", - { - "c": "#cccccc", - "w": 4.5 - }, - "5,6", - { - "c": "#aaaaaa" - }, - "5,9", - "5,10", - "5,11", - "5,12", - { - "c": "#cccccc" - }, - "5,13", - "5,14", - "5,15" - ] - ] - } -} \ No newline at end of file diff --git a/keyboards/keychron/k2_pro/ansi/rgb/config.h b/keyboards/keychron/k2_pro/ansi/rgb/config.h deleted file mode 100644 index 4596c0be80..0000000000 --- a/keyboards/keychron/k2_pro/ansi/rgb/config.h +++ /dev/null @@ -1,53 +0,0 @@ -/* Copyright 2022 @ 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 . - */ - -#pragma once - -#ifdef RGB_MATRIX_ENABLE -/* RGB Matrix driver configuration */ -# define DRIVER_COUNT 2 - -# define DRIVER_ADDR_1 0b1110111 -# define DRIVER_ADDR_2 0b1110100 -# define DRIVER_1_LED_COUNT 46 -# define DRIVER_2_LED_COUNT 38 -# define RGB_MATRIX_LED_COUNT (DRIVER_1_LED_COUNT + DRIVER_2_LED_COUNT) - -/* Set to infinit, which is use in USB mode by default */ -# define RGB_MATRIX_TIMEOUT RGB_MATRIX_TIMEOUT_INFINITE - -/* Allow shutdown of led driver to save power */ -# define RGB_MATRIX_DRIVER_SHUTDOWN_ENABLE -/* Turn off backlight on low brightness to save power */ -# define RGB_MATRIX_BRIGHTNESS_TURN_OFF_VAL 32 - -# define DIM_CAPS_LOCK -# define CAPS_LOCK_INDEX 46 -# define LOW_BAT_IND_INDEX 77 - -/* RGB Matrix Animation modes. Explicitly enabled - * For full list of effects, see: - * https://docs.qmk.fm/#/feature_rgb_matrix?id=rgb-matrix-effects - */ - -# define RGB_MATRIX_KEYPRESSES -# define RGB_MATRIX_FRAMEBUFFER_EFFECTS - -/* Set LED driver current */ -# define SNLED27351_CURRENT_TUNE \ - { 0x38, 0x38, 0x38, 0x38, 0x38, 0x38, 0x38, 0x38, 0x38, 0x38, 0x38, 0x38 } - -#endif diff --git a/keyboards/keychron/k2_pro/ansi/rgb/info.json b/keyboards/keychron/k2_pro/ansi/rgb/info.json deleted file mode 100644 index 654d60ba65..0000000000 --- a/keyboards/keychron/k2_pro/ansi/rgb/info.json +++ /dev/null @@ -1,35 +0,0 @@ -{ - "usb": { - "pid": "0x0220", - "device_version": "1.0.0" - }, - "features": { - "rgb_matrix": true - }, - "rgb_matrix": { - "driver": "snled27351", - "animations": { - "breathing": true, - "band_spiral_val": true, - "cycle_all": true, - "cycle_left_right": true, - "cycle_up_down": true, - "rainbow_moving_chevron": true, - "cycle_out_in": true, - "cycle_out_in_dual": true, - "cycle_pinwheel": true, - "cycle_spiral": true, - "dual_beacon": true, - "rainbow_beacon": true, - "jellybean_raindrops": true, - "pixel_rain": true, - "typing_heatmap": true, - "digital_rain": true, - "solid_reactive_simple": true, - "solid_reactive_multiwide": true, - "solid_reactive_multinexus": true, - "splash": true, - "solid_splash": true - } - } -} diff --git a/keyboards/keychron/k2_pro/ansi/rgb/keymaps/default/keymap.c b/keyboards/keychron/k2_pro/ansi/rgb/keymaps/default/keymap.c deleted file mode 100644 index 6244a6c410..0000000000 --- a/keyboards/keychron/k2_pro/ansi/rgb/keymaps/default/keymap.c +++ /dev/null @@ -1,59 +0,0 @@ -/* Copyright 2022 @ 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 . - */ - -#include QMK_KEYBOARD_H - -// clang-format off -enum layers{ - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN -}; - -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { -[MAC_BASE] = LAYOUT_ansi_84( - KC_ESC, KC_BRID, KC_BRIU, KC_MCTL, KC_LPAD, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_SNAP, KC_DEL, RGB_MOD, - KC_GRV, 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_PGUP, - 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_PGDN, - 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_HOME, - 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_LOPTN, KC_LCMMD, KC_SPC, KC_RCMMD,MO(MAC_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - -[MAC_FN] = LAYOUT_ansi_84( - KC_TRNS, 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, - KC_TRNS, BT_HST1, BT_HST2, BT_HST3, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, BAT_LVL, NK_TOGG, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS), - -[WIN_BASE] = LAYOUT_ansi_84( - KC_ESC, 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_PSCR, KC_DEL, RGB_MOD, - KC_GRV, 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_PGUP, - 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_PGDN, - 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_HOME, - 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_SPC, KC_RALT, MO(WIN_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - -[WIN_FN] = LAYOUT_ansi_84( - KC_TRNS, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_TRNS, KC_TRNS, RGB_TOG, - KC_TRNS, BT_HST1, BT_HST2, BT_HST3, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, BAT_LVL, NK_TOGG, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, 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/keychron/k2_pro/ansi/rgb/keymaps/via/keymap.c b/keyboards/keychron/k2_pro/ansi/rgb/keymaps/via/keymap.c deleted file mode 100644 index 6244a6c410..0000000000 --- a/keyboards/keychron/k2_pro/ansi/rgb/keymaps/via/keymap.c +++ /dev/null @@ -1,59 +0,0 @@ -/* Copyright 2022 @ 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 . - */ - -#include QMK_KEYBOARD_H - -// clang-format off -enum layers{ - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN -}; - -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { -[MAC_BASE] = LAYOUT_ansi_84( - KC_ESC, KC_BRID, KC_BRIU, KC_MCTL, KC_LPAD, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_SNAP, KC_DEL, RGB_MOD, - KC_GRV, 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_PGUP, - 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_PGDN, - 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_HOME, - 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_LOPTN, KC_LCMMD, KC_SPC, KC_RCMMD,MO(MAC_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - -[MAC_FN] = LAYOUT_ansi_84( - KC_TRNS, 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, - KC_TRNS, BT_HST1, BT_HST2, BT_HST3, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, BAT_LVL, NK_TOGG, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS), - -[WIN_BASE] = LAYOUT_ansi_84( - KC_ESC, 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_PSCR, KC_DEL, RGB_MOD, - KC_GRV, 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_PGUP, - 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_PGDN, - 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_HOME, - 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_SPC, KC_RALT, MO(WIN_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - -[WIN_FN] = LAYOUT_ansi_84( - KC_TRNS, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_TRNS, KC_TRNS, RGB_TOG, - KC_TRNS, BT_HST1, BT_HST2, BT_HST3, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, BAT_LVL, NK_TOGG, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, 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/keychron/k2_pro/ansi/rgb/keymaps/via/rules.mk b/keyboards/keychron/k2_pro/ansi/rgb/keymaps/via/rules.mk deleted file mode 100644 index 1e5b99807c..0000000000 --- a/keyboards/keychron/k2_pro/ansi/rgb/keymaps/via/rules.mk +++ /dev/null @@ -1 +0,0 @@ -VIA_ENABLE = yes diff --git a/keyboards/keychron/k2_pro/ansi/rgb/rgb.c b/keyboards/keychron/k2_pro/ansi/rgb/rgb.c deleted file mode 100644 index 77e5504b88..0000000000 --- a/keyboards/keychron/k2_pro/ansi/rgb/rgb.c +++ /dev/null @@ -1,145 +0,0 @@ -/* Copyright 2022 @ 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 . - */ - -#include "quantum.h" - -// clang-format off -#ifdef RGB_MATRIX_ENABLE -const snled27351_led_t g_snled27351_leds[RGB_MATRIX_LED_COUNT] = { -/* Refer to IS31 manual for these locations - * driver - * | R location - * | | G location - * | | | B location - * | | | | */ - {0, I_1, G_1, H_1}, - {0, I_2, G_2, H_2}, - {0, I_3, G_3, H_3}, - {0, I_4, G_4, H_4}, - {0, I_5, G_5, H_5}, - {0, I_6, G_6, H_6}, - {0, I_7, G_7, H_7}, - {0, I_8, G_8, H_8}, - {0, I_9, G_9, H_9}, - {0, I_10, G_10, H_10}, - {0, I_11, G_11, H_11}, - {0, I_12, G_12, H_12}, - {0, I_13, G_13, H_13}, - {0, I_14, G_14, H_14}, - {0, I_15, G_15, H_15}, - {0, I_16, G_16, H_16}, - - {0, C_1, A_1, B_1}, - {0, C_2, A_2, B_2}, - {0, C_3, A_3, B_3}, - {0, C_4, A_4, B_4}, - {0, C_5, A_5, B_5}, - {0, C_6, A_6, B_6}, - {0, C_7, A_7, B_7}, - {0, C_8, A_8, B_8}, - {0, C_9, A_9, B_9}, - {0, C_10, A_10, B_10}, - {0, C_11, A_11, B_11}, - {0, C_12, A_12, B_12}, - {0, C_13, A_13, B_13}, - {0, C_14, A_14, B_14}, - {0, C_16, A_16, B_16}, - - {0, F_1, D_1, E_1}, - {0, F_2, D_2, E_2}, - {0, F_3, D_3, E_3}, - {0, F_4, D_4, E_4}, - {0, F_5, D_5, E_5}, - {0, F_6, D_6, E_6}, - {0, F_7, D_7, E_7}, - {0, F_8, D_8, E_8}, - {0, F_9, D_9, E_9}, - {0, F_10, D_10, E_10}, - {0, F_11, D_11, E_11}, - {0, F_12, D_12, E_12}, - {0, F_13, D_13, E_13}, - {0, F_14, D_14, E_14}, - {0, F_16, D_16, E_16}, - - {1, C_16, A_16, B_16}, - {1, C_15, A_15, B_15}, - {1, C_14, A_14, B_14}, - {1, C_13, A_13, B_13}, - {1, C_12, A_12, B_12}, - {1, C_11, A_11, B_11}, - {1, C_10, A_10, B_10}, - {1, C_9, A_9, B_9}, - {1, C_8, A_8, B_8}, - {1, C_7, A_7, B_7}, - {1, C_6, A_6, B_6}, - {1, C_5, A_5, B_5}, - {1, C_3, A_3, B_3}, - {1, C_1, A_1, B_1}, - - {1, I_16, G_16, H_16}, - {1, I_14, G_14, H_14}, - {1, I_13, G_13, H_13}, - {1, I_12, G_12, H_12}, - {1, I_11, G_11, H_11}, - {1, I_10, G_10, H_10}, - {1, I_9, G_9, H_9}, - {1, I_8, G_8, H_8}, - {1, I_7, G_7, H_7}, - {1, I_6, G_6, H_6}, - {1, I_5, G_5, H_5}, - {1, I_4, G_4, H_4}, - {1, I_3, G_3, H_3}, - {1, I_1, G_1, H_1}, - - {1, F_16, D_16, E_16}, - {1, F_15, D_15, E_15}, - {1, F_14, D_14, E_14}, - {1, F_10, D_10, E_10}, - {1, F_7, D_7, E_7}, - {1, F_6, D_6, E_6}, - {1, F_5, D_5, E_5}, - {1, F_4, D_4, E_4}, - {1, F_3, D_3, E_3}, - {1, F_1, D_1, E_1} -}; - -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, NO_LED, 30 }, - { 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, NO_LED, 45 }, - { 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, NO_LED, 58, NO_LED, 59 }, - { 60, NO_LED, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, NO_LED, 73 }, - { 74, 75, 76, NO_LED, NO_LED, NO_LED, 77, NO_LED, NO_LED, 78, 79, 80, 81, 82, NO_LED, 83 } - }, - { - {0, 0}, {14, 0}, {29, 0}, {44, 0}, {59, 0}, {74, 0}, { 89, 0}, {104, 0}, {119, 0}, {134, 0}, {149, 0}, {164, 0}, {179, 0}, {194, 0}, {209,0}, {223, 0}, - {0,12}, {14,12}, {29,12}, {44,12}, {59,12}, {74,12}, { 89, 12}, {104, 12}, {119, 12}, {134, 12}, {149, 12}, {164, 12}, {179, 12}, {201, 12}, {223, 12}, - {3,25}, {22,25}, {37,25}, {52,25}, {67,25}, {82,25}, { 97, 25}, {112, 25}, {126, 25}, {141, 25}, {156, 25}, {171, 25}, {186, 25}, {205, 25}, {223, 25}, - {5,38}, {26,38}, {41,38}, {55,38}, {70,38}, {85,38}, {100, 38}, {115, 38}, {130, 38}, {145, 38}, {160, 38}, {175, 38}, {199, 38}, {223, 38}, - {9,51}, {33,51}, {48,51}, {63,51}, {78,51}, { 93, 51}, {108, 51}, {123, 51}, {138, 51}, {153, 51}, {168, 51}, {188, 51}, {209, 51}, {223, 51}, - {1,64}, {20,64}, {39,64}, { 95, 64}, {149, 64}, {164, 64}, {179, 64}, {194, 64}, {209, 64}, {223, 64} - }, - { - 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, - 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, - 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, - 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, - 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, - 4, 4, 4, 4, 4, 4, 4, 4, 4, 4 - } -}; -#endif diff --git a/keyboards/keychron/k2_pro/ansi/rgb/rules.mk b/keyboards/keychron/k2_pro/ansi/rgb/rules.mk deleted file mode 100644 index f886ea2e8e..0000000000 --- a/keyboards/keychron/k2_pro/ansi/rgb/rules.mk +++ /dev/null @@ -1 +0,0 @@ -# This file intentionally blank \ No newline at end of file diff --git a/keyboards/keychron/k2_pro/ansi/white/config.h b/keyboards/keychron/k2_pro/ansi/white/config.h deleted file mode 100644 index 3ca193cfcb..0000000000 --- a/keyboards/keychron/k2_pro/ansi/white/config.h +++ /dev/null @@ -1,49 +0,0 @@ -/* Copyright 2022 @ 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 . - */ - -#pragma once - -#ifdef LED_MATRIX_ENABLE -/* LED matrix driver configuration */ -# define DRIVER_COUNT 1 -# define SNLED27351_I2C_ADDRESS_1 SNLED27351_I2C_ADDRESS_GND -# define LED_MATRIX_LED_COUNT 84 - -/* Set to infinit, which is use in USB mode by default */ -# define LED_MATRIX_TIMEOUT LED_MATRIX_TIMEOUT_INFINITE -/* Allow shutdown of led driver to save power */ -# define LED_MATRIX_DRIVER_SHUTDOWN_ENABLE -/* Turn off backlight on low brightness to save power */ -# define LED_MATRIX_BRIGHTNESS_TURN_OFF_VAL 32 - -# define DIM_CAPS_LOCK -# define CAPS_LOCK_INDEX 46 -# define LOW_BAT_IND_INDEX 77 - -/* LED Matrix Animation modes. Explicitly enabled - * For full list of effects, see: - * https://docs.qmk.fm/#/feature_led_matrix?id=led-matrix-effects - */ -# define LED_MATRIX_KEYPRESSES - -/* Use first 6 channels of LED driver */ -# define PHASE_CHANNEL MSKPHASE_6CHANNEL - -/* Set LED driver current */ -# define SNLED27351_CURRENT_TUNE \ - { 0x60, 0x60, 0x60, 0x60, 0x60, 0x60, 0x60, 0x60, 0x60, 0x60, 0x60, 0x60 } - -#endif diff --git a/keyboards/keychron/k2_pro/ansi/white/info.json b/keyboards/keychron/k2_pro/ansi/white/info.json deleted file mode 100644 index cdf2fe1cf8..0000000000 --- a/keyboards/keychron/k2_pro/ansi/white/info.json +++ /dev/null @@ -1,30 +0,0 @@ -{ - "usb": { - "pid": "0x0223", - "device_version": "1.0.0" - }, - "features": { - "led_matrix": true - }, - "led_matrix": { - "driver": "snled27351", - "animations": { - "none": true, - "solid": true, - "breathing": true, - "band_pinwheel": true, - "band_spiral": true, - "cycle_left_right": true, - "cycle_up_down": true, - "cycle_out_in": true, - "dual_beacon": true, - "solid_reactive_simple": true, - "solid_reactive_multiwide": true, - "solid_reactive_multinexus": true, - "solid_splash": true, - "wave_left_right": true, - "wave_up_down": true, - "effect_max": true - } - } -} diff --git a/keyboards/keychron/k2_pro/ansi/white/keymaps/candysign/config.h b/keyboards/keychron/k2_pro/ansi/white/keymaps/candysign/config.h deleted file mode 100644 index 8aafbc3840..0000000000 --- a/keyboards/keychron/k2_pro/ansi/white/keymaps/candysign/config.h +++ /dev/null @@ -1,20 +0,0 @@ -/* Copyright 2022 @ 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 . - */ - -#pragma once - -#undef PRODUCT -#define PRODUCT "CANDYSIGN KB1 Pro" diff --git a/keyboards/keychron/k2_pro/ansi/white/keymaps/candysign/keymap.c b/keyboards/keychron/k2_pro/ansi/white/keymaps/candysign/keymap.c deleted file mode 100644 index 2f9ac0ba5c..0000000000 --- a/keyboards/keychron/k2_pro/ansi/white/keymaps/candysign/keymap.c +++ /dev/null @@ -1,59 +0,0 @@ -/* Copyright 2022 @ 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 . - */ - -#include QMK_KEYBOARD_H - -// clang-format off -enum layers{ - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN -}; - -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { -[MAC_BASE] = LAYOUT_ansi_84( - KC_ESC, KC_BRID, KC_BRIU, KC_MCTL, KC_LPAD, BL_DOWN, BL_UP, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_SNAP, KC_DEL, BL_STEP, - KC_GRV, 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_PGUP, - 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_PGDN, - 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_HOME, - 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_LOPTN, KC_LCMMD, KC_SPC, KC_RCMMD,MO(MAC_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - -[MAC_FN] = LAYOUT_ansi_84( - KC_TRNS, 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, BL_TOGG, - KC_TRNS, BT_HST1, BT_HST2, BT_HST3, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - BL_TOGG, BL_STEP, BL_UP, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, BL_DOWN, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, BAT_LVL, NK_TOGG, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS), - -[WIN_BASE] = LAYOUT_ansi_84( - KC_ESC, 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_PSCR, KC_DEL, BL_STEP, - KC_GRV, 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_PGUP, - 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_PGDN, - 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_HOME, - 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_SPC, KC_RALT, MO(WIN_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - -[WIN_FN] = LAYOUT_ansi_84( - KC_TRNS, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, BL_DOWN, BL_UP, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_TRNS, KC_TRNS, BL_TOGG, - KC_TRNS, BT_HST1, BT_HST2, BT_HST3, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - BL_TOGG, BL_STEP, BL_UP, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, BL_DOWN, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, BAT_LVL, NK_TOGG, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, 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/keychron/k2_pro/ansi/white/keymaps/candysign/rules.mk b/keyboards/keychron/k2_pro/ansi/white/keymaps/candysign/rules.mk deleted file mode 100644 index 1e5b99807c..0000000000 --- a/keyboards/keychron/k2_pro/ansi/white/keymaps/candysign/rules.mk +++ /dev/null @@ -1 +0,0 @@ -VIA_ENABLE = yes diff --git a/keyboards/keychron/k2_pro/ansi/white/keymaps/default/keymap.c b/keyboards/keychron/k2_pro/ansi/white/keymaps/default/keymap.c deleted file mode 100644 index 2f9ac0ba5c..0000000000 --- a/keyboards/keychron/k2_pro/ansi/white/keymaps/default/keymap.c +++ /dev/null @@ -1,59 +0,0 @@ -/* Copyright 2022 @ 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 . - */ - -#include QMK_KEYBOARD_H - -// clang-format off -enum layers{ - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN -}; - -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { -[MAC_BASE] = LAYOUT_ansi_84( - KC_ESC, KC_BRID, KC_BRIU, KC_MCTL, KC_LPAD, BL_DOWN, BL_UP, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_SNAP, KC_DEL, BL_STEP, - KC_GRV, 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_PGUP, - 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_PGDN, - 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_HOME, - 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_LOPTN, KC_LCMMD, KC_SPC, KC_RCMMD,MO(MAC_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - -[MAC_FN] = LAYOUT_ansi_84( - KC_TRNS, 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, BL_TOGG, - KC_TRNS, BT_HST1, BT_HST2, BT_HST3, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - BL_TOGG, BL_STEP, BL_UP, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, BL_DOWN, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, BAT_LVL, NK_TOGG, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS), - -[WIN_BASE] = LAYOUT_ansi_84( - KC_ESC, 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_PSCR, KC_DEL, BL_STEP, - KC_GRV, 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_PGUP, - 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_PGDN, - 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_HOME, - 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_SPC, KC_RALT, MO(WIN_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - -[WIN_FN] = LAYOUT_ansi_84( - KC_TRNS, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, BL_DOWN, BL_UP, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_TRNS, KC_TRNS, BL_TOGG, - KC_TRNS, BT_HST1, BT_HST2, BT_HST3, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - BL_TOGG, BL_STEP, BL_UP, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, BL_DOWN, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, BAT_LVL, NK_TOGG, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, 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/keychron/k2_pro/ansi/white/keymaps/via/keymap.c b/keyboards/keychron/k2_pro/ansi/white/keymaps/via/keymap.c deleted file mode 100644 index 2f9ac0ba5c..0000000000 --- a/keyboards/keychron/k2_pro/ansi/white/keymaps/via/keymap.c +++ /dev/null @@ -1,59 +0,0 @@ -/* Copyright 2022 @ 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 . - */ - -#include QMK_KEYBOARD_H - -// clang-format off -enum layers{ - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN -}; - -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { -[MAC_BASE] = LAYOUT_ansi_84( - KC_ESC, KC_BRID, KC_BRIU, KC_MCTL, KC_LPAD, BL_DOWN, BL_UP, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_SNAP, KC_DEL, BL_STEP, - KC_GRV, 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_PGUP, - 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_PGDN, - 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_HOME, - 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_LOPTN, KC_LCMMD, KC_SPC, KC_RCMMD,MO(MAC_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - -[MAC_FN] = LAYOUT_ansi_84( - KC_TRNS, 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, BL_TOGG, - KC_TRNS, BT_HST1, BT_HST2, BT_HST3, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - BL_TOGG, BL_STEP, BL_UP, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, BL_DOWN, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, BAT_LVL, NK_TOGG, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS), - -[WIN_BASE] = LAYOUT_ansi_84( - KC_ESC, 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_PSCR, KC_DEL, BL_STEP, - KC_GRV, 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_PGUP, - 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_PGDN, - 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_HOME, - 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_SPC, KC_RALT, MO(WIN_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - -[WIN_FN] = LAYOUT_ansi_84( - KC_TRNS, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, BL_DOWN, BL_UP, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_TRNS, KC_TRNS, BL_TOGG, - KC_TRNS, BT_HST1, BT_HST2, BT_HST3, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - BL_TOGG, BL_STEP, BL_UP, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, BL_DOWN, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, BAT_LVL, NK_TOGG, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, 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/keychron/k2_pro/ansi/white/keymaps/via/rules.mk b/keyboards/keychron/k2_pro/ansi/white/keymaps/via/rules.mk deleted file mode 100644 index 1e5b99807c..0000000000 --- a/keyboards/keychron/k2_pro/ansi/white/keymaps/via/rules.mk +++ /dev/null @@ -1 +0,0 @@ -VIA_ENABLE = yes diff --git a/keyboards/keychron/k2_pro/ansi/white/rules.mk b/keyboards/keychron/k2_pro/ansi/white/rules.mk deleted file mode 100644 index f886ea2e8e..0000000000 --- a/keyboards/keychron/k2_pro/ansi/white/rules.mk +++ /dev/null @@ -1 +0,0 @@ -# This file intentionally blank \ No newline at end of file diff --git a/keyboards/keychron/k2_pro/ansi/white/white.c b/keyboards/keychron/k2_pro/ansi/white/white.c deleted file mode 100644 index 8dc59be557..0000000000 --- a/keyboards/keychron/k2_pro/ansi/white/white.c +++ /dev/null @@ -1,155 +0,0 @@ -/* Copyright 2022 @ 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 . - */ - -#include "quantum.h" - -// clang-format off -#ifdef LED_MATRIX_ENABLE -const snled27351_led_t g_snled27351_leds[LED_MATRIX_LED_COUNT] = { -/* Refer to IS31 manual for these locations - * driver - * | LED address - * | | */ - {0, A_16}, - {0, A_15}, - {0, A_14}, - {0, A_13}, - {0, A_12}, - {0, A_11}, - {0, A_10}, - {0, A_9}, - {0, A_8}, - {0, A_7}, - {0, A_6}, - {0, A_5}, - {0, A_4}, - {0, A_3}, - {0, A_2}, - {0, A_1}, - - {0, B_16}, - {0, B_15}, - {0, B_14}, - {0, B_13}, - {0, B_12}, - {0, B_11}, - {0, B_10}, - {0, B_9}, - {0, B_8}, - {0, B_7}, - {0, B_6}, - {0, B_5}, - {0, B_4}, - {0, B_3}, - //{0, B_2}, - {0, B_1}, - - {0, C_16}, - {0, C_15}, - {0, C_14}, - {0, C_13}, - {0, C_12}, - {0, C_11}, - {0, C_10}, - {0, C_9}, - {0, C_8}, - {0, C_7}, - {0, C_6}, - {0, C_5}, - {0, C_4}, - {0, C_3}, - //{0, C_2}, - {0, C_1}, - - {0, D_16}, - {0, D_15}, - {0, D_14}, - {0, D_13}, - {0, D_12}, - {0, D_11}, - {0, D_10}, - {0, D_9}, - {0, D_8}, - {0, D_7}, - {0, D_6}, - {0, D_5}, - //{0, D_4}, - {0, D_3}, - //{0, D_2}, - {0, D_1}, - - {0, E_16}, - //{0, E_15}, - {0, E_14}, - {0, E_13}, - {0, E_12}, - {0, E_11}, - {0, E_10}, - {0, E_9}, - {0, E_8}, - {0, E_7}, - {0, E_6}, - {0, E_5}, - {0, E_4}, - {0, E_3}, - //{0, E_2}, - {0, E_1}, - - {0, F_16}, - {0, F_15}, - {0, F_14}, - // {0, F_13}, - // {0, F_12}, - // {0, F_11}, - {0, F_10}, - // {0, F_9}, - // {0, F_8}, - {0, F_7}, - {0, F_6}, - {0, F_5}, - {0, F_4}, - {0, F_3}, -// {0, F_2}, - {0, F_1}, -}; - -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, NO_LED, 30 }, - { 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, NO_LED, 45 }, - { 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, NO_LED, 58, NO_LED, 59 }, - { 60, NO_LED, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, NO_LED, 73 }, - { 74, 75, 76, NO_LED, NO_LED, NO_LED, 77, NO_LED, NO_LED, 78, 79, 80, 81, 82, NO_LED, 83 } - }, - { - {0, 0}, {14, 0}, {29, 0}, {44, 0}, {59, 0}, {74, 0}, { 89, 0}, {104, 0}, {119, 0}, {134, 0}, {149, 0}, {164, 0}, {179, 0}, {194, 0}, {209,0}, {223, 0}, - {0,12}, {14,12}, {29,12}, {44,12}, {59,12}, {74,12}, { 89, 12}, {104, 12}, {119, 12}, {134, 12}, {149, 12}, {164, 12}, {179, 12}, {201, 12}, {223, 12}, - {3,25}, {22,25}, {37,25}, {52,25}, {67,25}, {82,25}, { 97, 25}, {112, 25}, {126, 25}, {141, 25}, {156, 25}, {171, 25}, {186, 25}, {205, 25}, {223, 25}, - {5,38}, {26,38}, {41,38}, {55,38}, {70,38}, {85,38}, {100, 38}, {115, 38}, {130, 38}, {145, 38}, {160, 38}, {175, 38}, {199, 38}, {223, 38}, - {9,51}, {33,51}, {48,51}, {63,51}, {78,51}, { 93, 51}, {108, 51}, {123, 51}, {138, 51}, {153, 51}, {168, 51}, {188, 51}, {209, 51}, {223, 51}, - {1,64}, {20,64}, {39,64}, { 95, 64}, {149, 64}, {164, 64}, {179, 64}, {194, 64}, {209, 64}, {223, 64} - }, - { - 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, - 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, - 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, - 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, - 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, - 4, 4, 4, 4, 4, 4, 4, 4, 4, 4 - } -}; -#endif diff --git a/keyboards/keychron/k2_pro/config.h b/keyboards/keychron/k2_pro/config.h deleted file mode 100644 index 25659fa051..0000000000 --- a/keyboards/keychron/k2_pro/config.h +++ /dev/null @@ -1,91 +0,0 @@ -/* Copyright 2022 @ 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 . - */ - -#pragma once - -/* turn off effects when suspended */ -#define RGB_DISABLE_WHEN_USB_SUSPENDED -#define LED_DISABLE_WHEN_USB_SUSPENDED - -/* DIP switch for Mac/win OS switch */ -#define DIP_SWITCH_PINS \ - { A8 } - -/* Caps lock LED Pin */ -#define LED_CAPS_LOCK_PIN A7 -#define LED_PIN_ON_STATE 1 - -/* 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 A10 - -# 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 A4 -# 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 - -/* Emulated EEPROM configuration */ -#define WEAR_LEVELING_LOGICAL_SIZE 2048 -#define WEAR_LEVELING_BACKING_SIZE (WEAR_LEVELING_LOGICAL_SIZE * 2) -#define DYNAMIC_KEYMAP_EEPROM_MAX_ADDR 2047 - -/* Factory test keys */ -#define FN_KEY1 MO(1) -#define FN_KEY2 MO(3) diff --git a/keyboards/keychron/k2_pro/halconf.h b/keyboards/keychron/k2_pro/halconf.h deleted file mode 100644 index 941c1626c7..0000000000 --- a/keyboards/keychron/k2_pro/halconf.h +++ /dev/null @@ -1,29 +0,0 @@ -/* Copyright 2022 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 _CHIBIOS_HAL_CONF_VER_8_0_ - -#define HAL_USE_I2C TRUE - -#ifdef KC_BLUETOOTH_ENABLE -# define PAL_USE_CALLBACKS TRUE -# define HAL_USE_SERIAL TRUE -# define HAL_USE_RTC TRUE -#endif - -#include_next diff --git a/keyboards/keychron/k2_pro/info.json b/keyboards/keychron/k2_pro/info.json deleted file mode 100644 index dc2b89d07c..0000000000 --- a/keyboards/keychron/k2_pro/info.json +++ /dev/null @@ -1,315 +0,0 @@ -{ - "keyboard_name": "Keychron K2 Pro", - "manufacturer": "Keychron", - "url": "https://github.com/Keychron", - "maintainer": "lokher", - "processor": "STM32L432", - "bootloader": "stm32-dfu", - "usb": { - "vid": "0x3434" - }, - "features": { - "bootmagic": true, - "mousekey": true, - "extrakey": true, - "nkro": true, - "dip_switch": true, - "raw": true - }, - "diode_direction": "ROW2COL", - "matrix_size": { - "rows": 6, - "cols": 16 - }, - "matrix_pins": { - "rows": ["B5", "B4", "B3", "A15", "A14", "A13"], - "cols": ["B0", null, null, null, null, null, null, null, null, null, null, null, null, null, null, null], - "custom": true, - "custom_lite": true - }, - "layouts": { - "LAYOUT_ansi_84": { - "layout": [ - {"matrix":[0, 0], "x":0, "y":0}, - {"matrix":[0, 1], "x":1, "y":0}, - {"matrix":[0, 2], "x":2, "y":0}, - {"matrix":[0, 3], "x":3, "y":0}, - {"matrix":[0, 4], "x":4, "y":0}, - {"matrix":[0, 5], "x":5, "y":0}, - {"matrix":[0, 6], "x":6, "y":0}, - {"matrix":[0, 7], "x":7, "y":0}, - {"matrix":[0, 8], "x":8, "y":0}, - {"matrix":[0, 9], "x":9, "y":0}, - {"matrix":[0,10], "x":10, "y":0}, - {"matrix":[0,11], "x":11, "y":0}, - {"matrix":[0,12], "x":12, "y":0}, - {"matrix":[0,13], "x":13, "y":0}, - {"matrix":[0,14], "x":14, "y":0}, - {"matrix":[0,15], "x":15, "y":0}, - - {"matrix":[1, 0], "x":0, "y":1}, - {"matrix":[1, 1], "x":1, "y":1}, - {"matrix":[1, 2], "x":2, "y":1}, - {"matrix":[1, 3], "x":3, "y":1}, - {"matrix":[1, 4], "x":4, "y":1}, - {"matrix":[1, 5], "x":5, "y":1}, - {"matrix":[1, 6], "x":6, "y":1}, - {"matrix":[1, 7], "x":7, "y":1}, - {"matrix":[1, 8], "x":8, "y":1}, - {"matrix":[1, 9], "x":9, "y":1}, - {"matrix":[1,10], "x":10, "y":1}, - {"matrix":[1,11], "x":11, "y":1}, - {"matrix":[1,12], "x":12, "y":1}, - {"matrix":[1,13], "x":13, "y":1, "w":2}, - {"matrix":[1,15], "x":15, "y":1}, - - {"matrix":[2, 0], "x":0, "y":2, "w":1.5}, - {"matrix":[2, 1], "x":1.5, "y":2}, - {"matrix":[2, 2], "x":2.5, "y":2}, - {"matrix":[2, 3], "x":3.5, "y":2}, - {"matrix":[2, 4], "x":4.5, "y":2}, - {"matrix":[2, 5], "x":5.5, "y":2}, - {"matrix":[2, 6], "x":6.5, "y":2}, - {"matrix":[2, 7], "x":7.5, "y":2}, - {"matrix":[2, 8], "x":8.5, "y":2}, - {"matrix":[2, 9], "x":9.5, "y":2}, - {"matrix":[2,10], "x":10.5, "y":2}, - {"matrix":[2,11], "x":11.5, "y":2}, - {"matrix":[2,12], "x":12.5, "y":2}, - {"matrix":[2,13], "x":13.5, "y":2, "w":1.5}, - {"matrix":[2,15], "x":15, "y":2}, - - {"matrix":[3, 0], "x":0, "y":3, "w":1.75}, - {"matrix":[3, 1], "x":1.75, "y":3}, - {"matrix":[3, 2], "x":2.75, "y":3}, - {"matrix":[3, 3], "x":3.75, "y":3}, - {"matrix":[3, 4], "x":4.75, "y":3}, - {"matrix":[3, 5], "x":5.75, "y":3}, - {"matrix":[3, 6], "x":6.75, "y":3}, - {"matrix":[3, 7], "x":7.75, "y":3}, - {"matrix":[3, 8], "x":8.75, "y":3}, - {"matrix":[3, 9], "x":9.75, "y":3}, - {"matrix":[3,10], "x":10.75, "y":3}, - {"matrix":[3,11], "x":11.75, "y":3}, - {"matrix":[3,13], "x":12.75, "y":3, "w":2.25}, - {"matrix":[3,15], "x":15, "y":3}, - - {"matrix":[4, 0], "x":0, "y":4, "w":2.25}, - {"matrix":[4, 2], "x":2.25, "y":4}, - {"matrix":[4, 3], "x":3.25, "y":4}, - {"matrix":[4, 4], "x":4.25, "y":4}, - {"matrix":[4, 5], "x":5.25, "y":4}, - {"matrix":[4, 6], "x":6.25, "y":4}, - {"matrix":[4, 7], "x":7.25, "y":4}, - {"matrix":[4, 8], "x":8.25, "y":4}, - {"matrix":[4, 9], "x":9.25, "y":4}, - {"matrix":[4,10], "x":10.25, "y":4}, - {"matrix":[4,11], "x":11.25, "y":4}, - {"matrix":[4,12], "x":12.25, "y":4, "w":1.75}, - {"matrix":[4,13], "x":14, "y":4}, - {"matrix":[4,15], "x":15, "y":4}, - - {"matrix":[5, 0], "x":0, "y":5, "w":1.25}, - {"matrix":[5, 1], "x":1.25, "y":5, "w":1.25}, - {"matrix":[5, 2], "x":2.5, "y":5, "w":1.25}, - {"matrix":[5, 6], "x":3.75, "y":5, "w":6.25}, - {"matrix":[5, 9], "x":10, "y":5}, - {"matrix":[5,10], "x":11, "y":5}, - {"matrix":[5,11], "x":12, "y":5}, - {"matrix":[5,12], "x":13, "y":5}, - {"matrix":[5,13], "x":14, "y":5}, - {"matrix":[5,15], "x":15, "y":5} - ] - }, - "LAYOUT_iso_85": { - "layout": [ - {"matrix":[0, 0], "x":0, "y":0}, - {"matrix":[0, 1], "x":1, "y":0}, - {"matrix":[0, 2], "x":2, "y":0}, - {"matrix":[0, 3], "x":3, "y":0}, - {"matrix":[0, 4], "x":4, "y":0}, - {"matrix":[0, 5], "x":5, "y":0}, - {"matrix":[0, 6], "x":6, "y":0}, - {"matrix":[0, 7], "x":7, "y":0}, - {"matrix":[0, 8], "x":8, "y":0}, - {"matrix":[0, 9], "x":9, "y":0}, - {"matrix":[0,10], "x":10, "y":0}, - {"matrix":[0,11], "x":11, "y":0}, - {"matrix":[0,12], "x":12, "y":0}, - {"matrix":[0,13], "x":13, "y":0}, - {"matrix":[0,14], "x":14, "y":0}, - {"matrix":[0,15], "x":15, "y":0}, - - {"matrix":[1, 0], "x":0, "y":1}, - {"matrix":[1, 1], "x":1, "y":1}, - {"matrix":[1, 2], "x":2, "y":1}, - {"matrix":[1, 3], "x":3, "y":1}, - {"matrix":[1, 4], "x":4, "y":1}, - {"matrix":[1, 5], "x":5, "y":1}, - {"matrix":[1, 6], "x":6, "y":1}, - {"matrix":[1, 7], "x":7, "y":1}, - {"matrix":[1, 8], "x":8, "y":1}, - {"matrix":[1, 9], "x":9, "y":1}, - {"matrix":[1,10], "x":10, "y":1}, - {"matrix":[1,11], "x":11, "y":1}, - {"matrix":[1,12], "x":12, "y":1}, - {"matrix":[1,13], "x":13, "y":1, "w":2}, - {"matrix":[1,15], "x":15, "y":1}, - - {"matrix":[2, 0], "x":0, "y":2, "w":1.5}, - {"matrix":[2, 1], "x":1.5, "y":2}, - {"matrix":[2, 2], "x":2.5, "y":2}, - {"matrix":[2, 3], "x":3.5, "y":2}, - {"matrix":[2, 4], "x":4.5, "y":2}, - {"matrix":[2, 5], "x":5.5, "y":2}, - {"matrix":[2, 6], "x":6.5, "y":2}, - {"matrix":[2, 7], "x":7.5, "y":2}, - {"matrix":[2, 8], "x":8.5, "y":2}, - {"matrix":[2, 9], "x":9.5, "y":2}, - {"matrix":[2,10], "x":10.5, "y":2}, - {"matrix":[2,11], "x":11.5, "y":2}, - {"matrix":[2,12], "x":12.5, "y":2}, - {"matrix":[2,15], "x":15, "y":2}, - - {"matrix":[3, 0], "x":0, "y":3, "w":1.75}, - {"matrix":[3, 1], "x":1.75, "y":3}, - {"matrix":[3, 2], "x":2.75, "y":3}, - {"matrix":[3, 3], "x":3.75, "y":3}, - {"matrix":[3, 4], "x":4.75, "y":3}, - {"matrix":[3, 5], "x":5.75, "y":3}, - {"matrix":[3, 6], "x":6.75, "y":3}, - {"matrix":[3, 7], "x":7.75, "y":3}, - {"matrix":[3, 8], "x":8.75, "y":3}, - {"matrix":[3, 9], "x":9.75, "y":3}, - {"matrix":[3,10], "x":10.75, "y":3}, - {"matrix":[3,11], "x":11.75, "y":3}, - {"matrix":[3,13], "x":12.75, "y":3}, - {"matrix":[2,13], "x":13.75, "y":2, "w":1.25, "h": 2}, - {"matrix":[3,15], "x":15, "y":3}, - - {"matrix":[4, 0], "x":0, "y":4, "w":1.25}, - {"matrix":[4, 1], "x":1.25, "y":4}, - {"matrix":[4, 2], "x":2.25, "y":4}, - {"matrix":[4, 3], "x":3.25, "y":4}, - {"matrix":[4, 4], "x":4.25, "y":4}, - {"matrix":[4, 5], "x":5.25, "y":4}, - {"matrix":[4, 6], "x":6.25, "y":4}, - {"matrix":[4, 7], "x":7.25, "y":4}, - {"matrix":[4, 8], "x":8.25, "y":4}, - {"matrix":[4, 9], "x":9.25, "y":4}, - {"matrix":[4,10], "x":10.25, "y":4}, - {"matrix":[4,11], "x":11.25, "y":4}, - {"matrix":[4,12], "x":12.25, "y":4, "w":1.75}, - {"matrix":[4,13], "x":14, "y":4}, - {"matrix":[4,15], "x":15, "y":4}, - - {"matrix":[5, 0], "x":0, "y":5, "w":1.25}, - {"matrix":[5, 1], "x":1.25, "y":5, "w":1.25}, - {"matrix":[5, 2], "x":2.5, "y":5, "w":1.25}, - {"matrix":[5, 6], "x":3.75, "y":5, "w":6.25}, - {"matrix":[5, 9], "x":10, "y":5}, - {"matrix":[5,10], "x":11, "y":5}, - {"matrix":[5,11], "x":12, "y":5}, - {"matrix":[5,12], "x":13, "y":5}, - {"matrix":[5,13], "x":14, "y":5}, - {"matrix":[5,15], "x":15, "y":5} - ] - }, - "LAYOUT": { - "layout": [ - {"matrix":[0,0], "x":0, "y":0}, - {"matrix":[0,1], "x":1, "y":0}, - {"matrix":[0,2], "x":2, "y":0}, - {"matrix":[0,3], "x":3, "y":0}, - {"matrix":[0,4], "x":4, "y":0}, - {"matrix":[0,5], "x":5, "y":0}, - {"matrix":[0,6], "x":6, "y":0}, - {"matrix":[0,7], "x":7, "y":0}, - {"matrix":[0,8], "x":8, "y":0}, - {"matrix":[0,9], "x":9, "y":0}, - {"matrix":[0,10], "x":10, "y":0}, - {"matrix":[0,11], "x":11, "y":0}, - {"matrix":[0,12], "x":12, "y":0}, - {"matrix":[0,13], "x":13, "y":0}, - {"matrix":[0,14], "x":14, "y":0}, - {"matrix":[0,15], "x":15, "y":0}, - - {"matrix":[1,0], "x":0, "y":1}, - {"matrix":[1,1], "x":1, "y":1}, - {"matrix":[1,2], "x":2, "y":1}, - {"matrix":[1,3], "x":3, "y":1}, - {"matrix":[1,4], "x":4, "y":1}, - {"matrix":[1,5], "x":5, "y":1}, - {"matrix":[1,6], "x":6, "y":1}, - {"matrix":[1,7], "x":7, "y":1}, - {"matrix":[1,8], "x":8, "y":1}, - {"matrix":[1,9], "x":9, "y":1}, - {"matrix":[1,10], "x":10, "y":1}, - {"matrix":[1,11], "x":11, "y":1}, - {"matrix":[1,12], "x":12, "y":1}, - {"matrix":[1,13], "x":13, "y":1}, - {"matrix":[1,14], "x":14, "y":1}, - {"matrix":[1,15], "x":15, "y":1}, - - {"matrix":[2,0], "x":0, "y":2, "w":1.5}, - {"matrix":[2,1], "x":1.5, "y":2}, - {"matrix":[2,2], "x":2.5, "y":2}, - {"matrix":[2,3], "x":3.5, "y":2}, - {"matrix":[2,4], "x":4.5, "y":2}, - {"matrix":[2,5], "x":5.5, "y":2}, - {"matrix":[2,6], "x":6.5, "y":2}, - {"matrix":[2,7], "x":7.5, "y":2}, - {"matrix":[2,8], "x":8.5, "y":2}, - {"matrix":[2,9], "x":9.5, "y":2}, - {"matrix":[2,10], "x":10.5, "y":2}, - {"matrix":[2,11], "x":11.5, "y":2}, - {"matrix":[2,12], "x":12.5, "y":2}, - {"matrix":[2,15], "x":15, "y":2}, - - {"matrix":[3,0], "x":0, "y":3, "w":1.75}, - {"matrix":[3,1], "x":1.75, "y":3}, - {"matrix":[3,2], "x":2.75, "y":3}, - {"matrix":[3,3], "x":3.75, "y":3}, - {"matrix":[3,4], "x":4.75, "y":3}, - {"matrix":[3,5], "x":5.75, "y":3}, - {"matrix":[3,6], "x":6.75, "y":3}, - {"matrix":[3,7], "x":7.75, "y":3}, - {"matrix":[3,8], "x":8.75, "y":3}, - {"matrix":[3,9], "x":9.75, "y":3}, - {"matrix":[3,10], "x":10.75, "y":3}, - {"matrix":[3,11], "x":11.75, "y":3}, - {"matrix":[3,13], "x":12.75, "y":3}, - {"matrix":[2,13], "x":13.75, "y":2, "w":1.25, "h":2}, - {"matrix":[3,15], "x":15, "y":3}, - - {"matrix":[4,0], "x":0, "y":4, "w":2.25}, - {"matrix":[4,2], "x":2.25, "y":4}, - {"matrix":[4,3], "x":3.25, "y":4}, - {"matrix":[4,4], "x":4.25, "y":4}, - {"matrix":[4,5], "x":5.25, "y":4}, - {"matrix":[4,6], "x":6.25, "y":4}, - {"matrix":[4,7], "x":7.25, "y":4}, - {"matrix":[4,8], "x":8.25, "y":4}, - {"matrix":[4,9], "x":9.25, "y":4}, - {"matrix":[4,10], "x":10.25, "y":4}, - {"matrix":[4,11], "x":11.25, "y":4}, - {"matrix":[4,12], "x":12.25, "y":4}, - {"matrix":[4,13], "x":13.25, "y":4, "w":1.75}, - {"matrix":[4,15], "x":15, "y":4}, - - {"matrix":[5,0], "x":0, "y":5, "w":1.25}, - {"matrix":[5,1], "x":1.25, "y":5}, - {"matrix":[5,2], "x":2.25, "y":5, "w":1.25}, - {"matrix":[5,3], "x":3.5, "y":5}, - {"matrix":[5,6], "x":4.5, "y":5, "w":4.5}, - {"matrix":[5,8], "x":9, "y":5}, - {"matrix":[5,9], "x":10, "y":5}, - {"matrix":[5,10], "x":11, "y":5}, - {"matrix":[5,11], "x":12, "y":5}, - {"matrix":[5,12], "x":13, "y":5}, - {"matrix":[5,13], "x":14, "y":5}, - {"matrix":[5,15], "x":15, "y":5} - ] - } - } -} diff --git a/keyboards/keychron/k2_pro/iso/rgb/config.h b/keyboards/keychron/k2_pro/iso/rgb/config.h deleted file mode 100644 index 19c78a184f..0000000000 --- a/keyboards/keychron/k2_pro/iso/rgb/config.h +++ /dev/null @@ -1,53 +0,0 @@ -/* Copyright 2022 @ 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 . - */ - -#pragma once - -#ifdef RGB_MATRIX_ENABLE -/* RGB Matrix driver configuration */ -# define DRIVER_COUNT 2 - -# define DRIVER_ADDR_1 0b1110111 -# define DRIVER_ADDR_2 0b1110100 -# define DRIVER_1_LED_COUNT 46 -# define DRIVER_2_LED_COUNT 39 -# define RGB_MATRIX_LED_COUNT (DRIVER_1_LED_COUNT + DRIVER_2_LED_COUNT) - -/* Set to infinit, which is use in USB mode by default */ -# define RGB_MATRIX_TIMEOUT RGB_MATRIX_TIMEOUT_INFINITE - -/* Allow shutdown of led driver to save power */ -# define RGB_MATRIX_DRIVER_SHUTDOWN_ENABLE -/* Turn off backlight on low brightness to save power */ -# define RGB_MATRIX_BRIGHTNESS_TURN_OFF_VAL 32 - -# define DIM_CAPS_LOCK -# define CAPS_LOCK_INDEX 46 -# define LOW_BAT_IND_INDEX 78 - -/* RGB Matrix Animation modes. Explicitly enabled - * For full list of effects, see: - * https://docs.qmk.fm/#/feature_rgb_matrix?id=rgb-matrix-effects - */ - -# define RGB_MATRIX_KEYPRESSES -# define RGB_MATRIX_FRAMEBUFFER_EFFECTS - -/* Set LED driver current */ -# define SNLED27351_CURRENT_TUNE \ - { 0x38, 0x38, 0x38, 0x38, 0x38, 0x38, 0x38, 0x38, 0x38, 0x38, 0x38, 0x38 } - -#endif diff --git a/keyboards/keychron/k2_pro/iso/rgb/info.json b/keyboards/keychron/k2_pro/iso/rgb/info.json deleted file mode 100644 index caa4c82e96..0000000000 --- a/keyboards/keychron/k2_pro/iso/rgb/info.json +++ /dev/null @@ -1,35 +0,0 @@ -{ - "usb": { - "pid": "0x0221", - "device_version": "1.0.0" - }, - "features": { - "rgb_matrix": true - }, - "rgb_matrix": { - "driver": "snled27351", - "animations": { - "breathing": true, - "band_spiral_val": true, - "cycle_all": true, - "cycle_left_right": true, - "cycle_up_down": true, - "rainbow_moving_chevron": true, - "cycle_out_in": true, - "cycle_out_in_dual": true, - "cycle_pinwheel": true, - "cycle_spiral": true, - "dual_beacon": true, - "rainbow_beacon": true, - "jellybean_raindrops": true, - "pixel_rain": true, - "typing_heatmap": true, - "digital_rain": true, - "solid_reactive_simple": true, - "solid_reactive_multiwide": true, - "solid_reactive_multinexus": true, - "splash": true, - "solid_splash": true - } - } -} diff --git a/keyboards/keychron/k2_pro/iso/rgb/keymaps/default/keymap.c b/keyboards/keychron/k2_pro/iso/rgb/keymaps/default/keymap.c deleted file mode 100644 index 6d2141aec5..0000000000 --- a/keyboards/keychron/k2_pro/iso/rgb/keymaps/default/keymap.c +++ /dev/null @@ -1,59 +0,0 @@ -/* Copyright 2022 @ 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 . - */ - -#include QMK_KEYBOARD_H - -// clang-format off -enum layers{ - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN -}; - -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { -[MAC_BASE] = LAYOUT_iso_85( - KC_ESC, KC_BRID, KC_BRIU, KC_MCTL, KC_LPAD, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_SNAP, KC_DEL, RGB_MOD, - KC_GRV, 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_PGUP, - 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_PGDN, - 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_NUHS, KC_ENT, KC_HOME, - KC_LSFT, KC_NUBS, 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_LOPTN, KC_LCMMD, KC_SPC, KC_RCMMD,MO(MAC_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - -[MAC_FN] = LAYOUT_iso_85( - _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, RGB_TOG, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - -[WIN_BASE] = LAYOUT_iso_85( - KC_ESC, 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_PSCR, KC_DEL, RGB_MOD, - KC_GRV, 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_PGUP, - 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_PGDN, - 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_NUHS, KC_ENT, KC_HOME, - KC_LSFT, KC_NUBS, 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_SPC, KC_RALT, MO(WIN_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - -[WIN_FN] = LAYOUT_iso_85( - _______, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, RGB_TOG, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______) -}; diff --git a/keyboards/keychron/k2_pro/iso/rgb/keymaps/via/keymap.c b/keyboards/keychron/k2_pro/iso/rgb/keymaps/via/keymap.c deleted file mode 100644 index 6d2141aec5..0000000000 --- a/keyboards/keychron/k2_pro/iso/rgb/keymaps/via/keymap.c +++ /dev/null @@ -1,59 +0,0 @@ -/* Copyright 2022 @ 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 . - */ - -#include QMK_KEYBOARD_H - -// clang-format off -enum layers{ - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN -}; - -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { -[MAC_BASE] = LAYOUT_iso_85( - KC_ESC, KC_BRID, KC_BRIU, KC_MCTL, KC_LPAD, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_SNAP, KC_DEL, RGB_MOD, - KC_GRV, 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_PGUP, - 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_PGDN, - 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_NUHS, KC_ENT, KC_HOME, - KC_LSFT, KC_NUBS, 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_LOPTN, KC_LCMMD, KC_SPC, KC_RCMMD,MO(MAC_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - -[MAC_FN] = LAYOUT_iso_85( - _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, RGB_TOG, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - -[WIN_BASE] = LAYOUT_iso_85( - KC_ESC, 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_PSCR, KC_DEL, RGB_MOD, - KC_GRV, 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_PGUP, - 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_PGDN, - 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_NUHS, KC_ENT, KC_HOME, - KC_LSFT, KC_NUBS, 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_SPC, KC_RALT, MO(WIN_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - -[WIN_FN] = LAYOUT_iso_85( - _______, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, RGB_TOG, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______) -}; diff --git a/keyboards/keychron/k2_pro/iso/rgb/keymaps/via/rules.mk b/keyboards/keychron/k2_pro/iso/rgb/keymaps/via/rules.mk deleted file mode 100644 index 1e5b99807c..0000000000 --- a/keyboards/keychron/k2_pro/iso/rgb/keymaps/via/rules.mk +++ /dev/null @@ -1 +0,0 @@ -VIA_ENABLE = yes diff --git a/keyboards/keychron/k2_pro/iso/rgb/rgb.c b/keyboards/keychron/k2_pro/iso/rgb/rgb.c deleted file mode 100644 index af506d09ec..0000000000 --- a/keyboards/keychron/k2_pro/iso/rgb/rgb.c +++ /dev/null @@ -1,146 +0,0 @@ -/* Copyright 2022 @ 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 . - */ - -#include "quantum.h" - -// clang-format off -#ifdef RGB_MATRIX_ENABLE -const snled27351_led_t g_snled27351_leds[RGB_MATRIX_LED_COUNT] = { -/* Refer to IS31 manual for these locations - * driver - * | R location - * | | G location - * | | | B location - * | | | | */ - {0, I_1, G_1, H_1}, - {0, I_2, G_2, H_2}, - {0, I_3, G_3, H_3}, - {0, I_4, G_4, H_4}, - {0, I_5, G_5, H_5}, - {0, I_6, G_6, H_6}, - {0, I_7, G_7, H_7}, - {0, I_8, G_8, H_8}, - {0, I_9, G_9, H_9}, - {0, I_10, G_10, H_10}, - {0, I_11, G_11, H_11}, - {0, I_12, G_12, H_12}, - {0, I_13, G_13, H_13}, - {0, I_14, G_14, H_14}, - {0, I_15, G_15, H_15}, - {0, I_16, G_16, H_16}, - - {0, C_1, A_1, B_1}, - {0, C_2, A_2, B_2}, - {0, C_3, A_3, B_3}, - {0, C_4, A_4, B_4}, - {0, C_5, A_5, B_5}, - {0, C_6, A_6, B_6}, - {0, C_7, A_7, B_7}, - {0, C_8, A_8, B_8}, - {0, C_9, A_9, B_9}, - {0, C_10, A_10, B_10}, - {0, C_11, A_11, B_11}, - {0, C_12, A_12, B_12}, - {0, C_13, A_13, B_13}, - {0, C_14, A_14, B_14}, - {0, C_16, A_16, B_16}, - - {0, F_1, D_1, E_1}, - {0, F_2, D_2, E_2}, - {0, F_3, D_3, E_3}, - {0, F_4, D_4, E_4}, - {0, F_5, D_5, E_5}, - {0, F_6, D_6, E_6}, - {0, F_7, D_7, E_7}, - {0, F_8, D_8, E_8}, - {0, F_9, D_9, E_9}, - {0, F_10, D_10, E_10}, - {0, F_11, D_11, E_11}, - {0, F_12, D_12, E_12}, - {0, F_13, D_13, E_13}, - {0, F_14, D_14, E_14}, - {0, F_16, D_16, E_16}, - - {1, C_16, A_16, B_16}, - {1, C_15, A_15, B_15}, - {1, C_14, A_14, B_14}, - {1, C_13, A_13, B_13}, - {1, C_12, A_12, B_12}, - {1, C_11, A_11, B_11}, - {1, C_10, A_10, B_10}, - {1, C_9, A_9, B_9}, - {1, C_8, A_8, B_8}, - {1, C_7, A_7, B_7}, - {1, C_6, A_6, B_6}, - {1, C_5, A_5, B_5}, - {1, C_3, A_3, B_3}, - {1, C_1, A_1, B_1}, - - {1, I_16, G_16, H_16}, - {1, I_15, G_15, H_15}, - {1, I_14, G_14, H_14}, - {1, I_13, G_13, H_13}, - {1, I_12, G_12, H_12}, - {1, I_11, G_11, H_11}, - {1, I_10, G_10, H_10}, - {1, I_9, G_9, H_9}, - {1, I_8, G_8, H_8}, - {1, I_7, G_7, H_7}, - {1, I_6, G_6, H_6}, - {1, I_5, G_5, H_5}, - {1, I_4, G_4, H_4}, - {1, I_3, G_3, H_3}, - {1, I_1, G_1, H_1}, - - {1, F_16, D_16, E_16}, - {1, F_15, D_15, E_15}, - {1, F_14, D_14, E_14}, - {1, F_10, D_10, E_10}, - {1, F_7, D_7, E_7}, - {1, F_6, D_6, E_6}, - {1, F_5, D_5, E_5}, - {1, F_4, D_4, E_4}, - {1, F_3, D_3, E_3}, - {1, F_1, D_1, E_1} -}; - -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, NO_LED, 30 }, - { 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, NO_LED, 45 }, - { 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, NO_LED, 58, NO_LED, 59 }, - { 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, NO_LED, 74 }, - { 75, 76, 77, NO_LED, NO_LED, NO_LED, 78, NO_LED, NO_LED, 79, 80, 81, 82, 83, NO_LED, 84 } - }, - { - {0, 0}, {14, 0}, {29, 0}, {44, 0}, {59, 0}, {74, 0}, { 89, 0}, {104, 0}, {119, 0}, {134, 0}, {149, 0}, {164, 0}, {179, 0}, {194, 0}, {209,0}, {223, 0}, - {0,12}, {14,12}, {29,12}, {44,12}, {59,12}, {74,12}, { 89, 12}, {104, 12}, {119, 12}, {134, 12}, {149, 12}, {164, 12}, {179, 12}, {201, 12}, {223, 12}, - {3,25}, {22,25}, {37,25}, {52,25}, {67,25}, {82,25}, { 97, 25}, {112, 25}, {126, 25}, {141, 25}, {156, 25}, {171, 25}, {186, 25}, {205, 25}, {223, 25}, - {5,38}, {26,38}, {41,38}, {55,38}, {70,38}, {85,38}, {100, 38}, {115, 38}, {130, 38}, {145, 38}, {160, 38}, {175, 38}, {199, 38}, {223, 38}, - {1,51}, {16,51}, {33,51}, {48,51}, {63,51}, {78,51}, { 93, 51}, {108, 51}, {123, 51}, {138, 51}, {153, 51}, {168, 51}, {188, 51}, {209, 51}, {223, 51}, - {1,64}, {20,64}, {39,64}, { 95, 64}, {149, 64}, {164, 64}, {179, 64}, {194, 64}, {209, 64}, {223, 64} - }, - { - 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, - 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, - 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, - 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, - 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, - 4, 4, 4, 4, 4, 4, 4, 4, 4, 4 - } -}; -#endif diff --git a/keyboards/keychron/k2_pro/iso/rgb/rules.mk b/keyboards/keychron/k2_pro/iso/rgb/rules.mk deleted file mode 100644 index f886ea2e8e..0000000000 --- a/keyboards/keychron/k2_pro/iso/rgb/rules.mk +++ /dev/null @@ -1 +0,0 @@ -# This file intentionally blank \ No newline at end of file diff --git a/keyboards/keychron/k2_pro/iso/white/config.h b/keyboards/keychron/k2_pro/iso/white/config.h deleted file mode 100644 index a223a04db7..0000000000 --- a/keyboards/keychron/k2_pro/iso/white/config.h +++ /dev/null @@ -1,49 +0,0 @@ -/* Copyright 2022 @ 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 . - */ - -#pragma once - -#ifdef LED_MATRIX_ENABLE -/* LED matrix driver configuration */ -# define DRIVER_COUNT 1 -# define SNLED27351_I2C_ADDRESS_1 SNLED27351_I2C_ADDRESS_GND -# define LED_MATRIX_LED_COUNT 85 - -/* Set to infinit, which is use in USB mode by default */ -# define LED_MATRIX_TIMEOUT LED_MATRIX_TIMEOUT_INFINITE -/* Allow shutdown of led driver to save power */ -# define LED_MATRIX_DRIVER_SHUTDOWN_ENABLE -/* Turn off backlight on low brightness to save power */ -# define LED_MATRIX_BRIGHTNESS_TURN_OFF_VAL 32 - -# define DIM_CAPS_LOCK -# define CAPS_LOCK_INDEX 46 -# define LOW_BAT_IND_INDEX 78 - -/* LED Matrix Animation modes. Explicitly enabled - * For full list of effects, see: - * https://docs.qmk.fm/#/feature_led_matrix?id=led-matrix-effects - */ -# define LED_MATRIX_KEYPRESSES - -/* Use first 6 channels of LED driver */ -# define PHASE_CHANNEL MSKPHASE_6CHANNEL - -/* Set LED driver current */ -# define SNLED27351_CURRENT_TUNE \ - { 0x60, 0x60, 0x60, 0x60, 0x60, 0x60, 0x60, 0x60, 0x60, 0x60, 0x60, 0x60 } - -#endif diff --git a/keyboards/keychron/k2_pro/iso/white/info.json b/keyboards/keychron/k2_pro/iso/white/info.json deleted file mode 100644 index b98513747a..0000000000 --- a/keyboards/keychron/k2_pro/iso/white/info.json +++ /dev/null @@ -1,30 +0,0 @@ -{ - "usb": { - "pid": "0x0224", - "device_version": "1.0.0" - }, - "features": { - "led_matrix": true - }, - "led_matrix": { - "driver": "snled27351", - "animations": { - "none": true, - "solid": true, - "breathing": true, - "band_pinwheel": true, - "band_spiral": true, - "cycle_left_right": true, - "cycle_up_down": true, - "cycle_out_in": true, - "dual_beacon": true, - "solid_reactive_simple": true, - "solid_reactive_multiwide": true, - "solid_reactive_multinexus": true, - "solid_splash": true, - "wave_left_right": true, - "wave_up_down": true, - "effect_max": true - } - } -} diff --git a/keyboards/keychron/k2_pro/iso/white/keymaps/default/keymap.c b/keyboards/keychron/k2_pro/iso/white/keymaps/default/keymap.c deleted file mode 100644 index c1844be11f..0000000000 --- a/keyboards/keychron/k2_pro/iso/white/keymaps/default/keymap.c +++ /dev/null @@ -1,59 +0,0 @@ -/* Copyright 2022 @ 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 . - */ - -#include QMK_KEYBOARD_H - -// clang-format off -enum layers{ - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN -}; - -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { -[MAC_BASE] = LAYOUT_iso_85( - KC_ESC, KC_BRID, KC_BRIU, KC_MCTL, KC_LPAD, BL_DOWN, BL_UP, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_SNAP, KC_DEL, BL_STEP, - KC_GRV, 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_PGUP, - 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_PGDN, - 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_NUHS, KC_ENT, KC_HOME, - KC_LSFT, KC_NUBS, 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_LOPTN, KC_LCMMD, KC_SPC, KC_RCMMD,MO(MAC_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - -[MAC_FN] = LAYOUT_iso_85( - _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, BL_TOGG, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - BL_TOGG, BL_STEP, BL_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, BL_DOWN, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - -[WIN_BASE] = LAYOUT_iso_85( - KC_ESC, 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_PSCR, KC_DEL, BL_STEP, - KC_GRV, 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_PGUP, - 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_PGDN, - 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_NUHS, KC_ENT, KC_HOME, - KC_LSFT, KC_NUBS, 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_SPC, KC_RALT, MO(WIN_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - -[WIN_FN] = LAYOUT_iso_85( - _______, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, BL_DOWN, BL_UP, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, BL_TOGG, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - BL_TOGG, BL_STEP, BL_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, BL_DOWN, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______) -}; diff --git a/keyboards/keychron/k2_pro/iso/white/keymaps/via/keymap.c b/keyboards/keychron/k2_pro/iso/white/keymaps/via/keymap.c deleted file mode 100644 index c1844be11f..0000000000 --- a/keyboards/keychron/k2_pro/iso/white/keymaps/via/keymap.c +++ /dev/null @@ -1,59 +0,0 @@ -/* Copyright 2022 @ 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 . - */ - -#include QMK_KEYBOARD_H - -// clang-format off -enum layers{ - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN -}; - -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { -[MAC_BASE] = LAYOUT_iso_85( - KC_ESC, KC_BRID, KC_BRIU, KC_MCTL, KC_LPAD, BL_DOWN, BL_UP, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_SNAP, KC_DEL, BL_STEP, - KC_GRV, 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_PGUP, - 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_PGDN, - 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_NUHS, KC_ENT, KC_HOME, - KC_LSFT, KC_NUBS, 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_LOPTN, KC_LCMMD, KC_SPC, KC_RCMMD,MO(MAC_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - -[MAC_FN] = LAYOUT_iso_85( - _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, BL_TOGG, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - BL_TOGG, BL_STEP, BL_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, BL_DOWN, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - -[WIN_BASE] = LAYOUT_iso_85( - KC_ESC, 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_PSCR, KC_DEL, BL_STEP, - KC_GRV, 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_PGUP, - 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_PGDN, - 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_NUHS, KC_ENT, KC_HOME, - KC_LSFT, KC_NUBS, 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_SPC, KC_RALT, MO(WIN_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - -[WIN_FN] = LAYOUT_iso_85( - _______, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, BL_DOWN, BL_UP, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, BL_TOGG, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - BL_TOGG, BL_STEP, BL_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, BL_DOWN, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______) -}; diff --git a/keyboards/keychron/k2_pro/iso/white/keymaps/via/rules.mk b/keyboards/keychron/k2_pro/iso/white/keymaps/via/rules.mk deleted file mode 100644 index 1e5b99807c..0000000000 --- a/keyboards/keychron/k2_pro/iso/white/keymaps/via/rules.mk +++ /dev/null @@ -1 +0,0 @@ -VIA_ENABLE = yes diff --git a/keyboards/keychron/k2_pro/iso/white/rules.mk b/keyboards/keychron/k2_pro/iso/white/rules.mk deleted file mode 100644 index f886ea2e8e..0000000000 --- a/keyboards/keychron/k2_pro/iso/white/rules.mk +++ /dev/null @@ -1 +0,0 @@ -# This file intentionally blank \ No newline at end of file diff --git a/keyboards/keychron/k2_pro/iso/white/white.c b/keyboards/keychron/k2_pro/iso/white/white.c deleted file mode 100644 index 47a24fcd02..0000000000 --- a/keyboards/keychron/k2_pro/iso/white/white.c +++ /dev/null @@ -1,155 +0,0 @@ -/* Copyright 2022 @ 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 . - */ - -#include "quantum.h" - -// clang-format off -#ifdef LED_MATRIX_ENABLE -const snled27351_led_t g_snled27351_leds[LED_MATRIX_LED_COUNT] = { -/* Refer to IS31 manual for these locations - * driver - * | LED address - * | | */ - {0, A_16}, - {0, A_15}, - {0, A_14}, - {0, A_13}, - {0, A_12}, - {0, A_11}, - {0, A_10}, - {0, A_9}, - {0, A_8}, - {0, A_7}, - {0, A_6}, - {0, A_5}, - {0, A_4}, - {0, A_3}, - {0, A_2}, - {0, A_1}, - - {0, B_16}, - {0, B_15}, - {0, B_14}, - {0, B_13}, - {0, B_12}, - {0, B_11}, - {0, B_10}, - {0, B_9}, - {0, B_8}, - {0, B_7}, - {0, B_6}, - {0, B_5}, - {0, B_4}, - {0, B_3}, - //{0, B_2}, - {0, B_1}, - - {0, C_16}, - {0, C_15}, - {0, C_14}, - {0, C_13}, - {0, C_12}, - {0, C_11}, - {0, C_10}, - {0, C_9}, - {0, C_8}, - {0, C_7}, - {0, C_6}, - {0, C_5}, - {0, C_4}, - {0, C_3}, - //{0, C_2}, - {0, C_1}, - - {0, D_16}, - {0, D_15}, - {0, D_14}, - {0, D_13}, - {0, D_12}, - {0, D_11}, - {0, D_10}, - {0, D_9}, - {0, D_8}, - {0, D_7}, - {0, D_6}, - {0, D_5}, - //{0, D_4}, - {0, D_3}, - //{0, D_2}, - {0, D_1}, - - {0, E_16}, - {0, E_15}, - {0, E_14}, - {0, E_13}, - {0, E_12}, - {0, E_11}, - {0, E_10}, - {0, E_9}, - {0, E_8}, - {0, E_7}, - {0, E_6}, - {0, E_5}, - {0, E_4}, - {0, E_3}, - //{0, E_2}, - {0, E_1}, - - {0, F_16}, - {0, F_15}, - {0, F_14}, - // {0, F_13}, - // {0, F_12}, - // {0, F_11}, - {0, F_10}, - // {0, F_9}, - // {0, F_8}, - {0, F_7}, - {0, F_6}, - {0, F_5}, - {0, F_4}, - {0, F_3}, -// {0, F_2}, - {0, F_1}, -}; - -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, NO_LED, 30 }, - { 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, NO_LED, 45 }, - { 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, NO_LED, 58, NO_LED, 59 }, - { 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, NO_LED, 74 }, - { 75, 76, 77, NO_LED, NO_LED, NO_LED, 78, NO_LED, NO_LED, 79, 80, 81, 82, 83, NO_LED, 84 } - }, - { - {0, 0}, {14, 0}, {29, 0}, {44, 0}, {59, 0}, {74, 0}, { 89, 0}, {104, 0}, {119, 0}, {134, 0}, {149, 0}, {164, 0}, {179, 0}, {194, 0}, {209,0}, {223, 0}, - {0,12}, {14,12}, {29,12}, {44,12}, {59,12}, {74,12}, { 89, 12}, {104, 12}, {119, 12}, {134, 12}, {149, 12}, {164, 12}, {179, 12}, {201, 12}, {223, 12}, - {3,25}, {22,25}, {37,25}, {52,25}, {67,25}, {82,25}, { 97, 25}, {112, 25}, {126, 25}, {141, 25}, {156, 25}, {171, 25}, {186, 25}, {205, 25}, {223, 25}, - {5,38}, {26,38}, {41,38}, {55,38}, {70,38}, {85,38}, {100, 38}, {115, 38}, {130, 38}, {145, 38}, {160, 38}, {175, 38}, {199, 38}, {223, 38}, - {1,51}, {16,51}, {33,51}, {48,51}, {63,51}, {78,51}, { 93, 51}, {108, 51}, {123, 51}, {138, 51}, {153, 51}, {168, 51}, {188, 51}, {209, 51}, {223, 51}, - {1,64}, {20,64}, {39,64}, { 95, 64}, {149, 64}, {164, 64}, {179, 64}, {194, 64}, {209, 64}, {223, 64} - }, - { - 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, - 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, - 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, - 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, - 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, - 4, 4, 4, 4, 4, 4, 4, 4, 4, 4 - } -}; -#endif diff --git a/keyboards/keychron/k2_pro/jis/rgb/config.h b/keyboards/keychron/k2_pro/jis/rgb/config.h deleted file mode 100644 index 623024c43d..0000000000 --- a/keyboards/keychron/k2_pro/jis/rgb/config.h +++ /dev/null @@ -1,53 +0,0 @@ -/* 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 . - */ - -#pragma once - -#ifdef RGB_MATRIX_ENABLE -/* RGB Matrix driver configuration */ -# define DRIVER_COUNT 2 - -# define DRIVER_ADDR_1 0b1110111 -# define DRIVER_ADDR_2 0b1110100 -# define DRIVER_1_LED_COUNT 47 -# define DRIVER_2_LED_COUNT 40 -# define RGB_MATRIX_LED_COUNT (DRIVER_1_LED_COUNT + DRIVER_2_LED_COUNT) - -/* Set to infinit, which is use in USB mode by default */ -# define RGB_MATRIX_TIMEOUT RGB_MATRIX_TIMEOUT_INFINITE - -/* Allow shutdown of led driver to save power */ -# define RGB_MATRIX_DRIVER_SHUTDOWN_ENABLE -/* Turn off backlight on low brightness to save power */ -# define RGB_MATRIX_BRIGHTNESS_TURN_OFF_VAL 32 - -# define DIM_CAPS_LOCK -# define CAPS_LOCK_INDEX 46 -# define LOW_BAT_IND_INDEX 79 - -/* RGB Matrix Animation modes. Explicitly enabled - * For full list of effects, see: - * https://docs.qmk.fm/#/feature_rgb_matrix?id=rgb-matrix-effects - */ - -# define RGB_MATRIX_KEYPRESSES -# define RGB_MATRIX_FRAMEBUFFER_EFFECTS - -/* Set LED driver current */ -# define SNLED27351_CURRENT_TUNE \ - { 0x38, 0x38, 0x38, 0x38, 0x38, 0x38, 0x38, 0x38, 0x38, 0x38, 0x38, 0x38 } - -#endif diff --git a/keyboards/keychron/k2_pro/jis/rgb/info.json b/keyboards/keychron/k2_pro/jis/rgb/info.json deleted file mode 100644 index 1e90e549c6..0000000000 --- a/keyboards/keychron/k2_pro/jis/rgb/info.json +++ /dev/null @@ -1,35 +0,0 @@ -{ - "usb": { - "pid": "0x0222", - "device_version": "1.0.0" - }, - "features": { - "rgb_matrix": true - }, - "rgb_matrix": { - "driver": "snled27351", - "animations": { - "breathing": true, - "band_spiral_val": true, - "cycle_all": true, - "cycle_left_right": true, - "cycle_up_down": true, - "rainbow_moving_chevron": true, - "cycle_out_in": true, - "cycle_out_in_dual": true, - "cycle_pinwheel": true, - "cycle_spiral": true, - "dual_beacon": true, - "rainbow_beacon": true, - "jellybean_raindrops": true, - "pixel_rain": true, - "typing_heatmap": true, - "digital_rain": true, - "solid_reactive_simple": true, - "solid_reactive_multiwide": true, - "solid_reactive_multinexus": true, - "splash": true, - "solid_splash": true - } - } -} diff --git a/keyboards/keychron/k2_pro/jis/rgb/keymaps/default/keymap.c b/keyboards/keychron/k2_pro/jis/rgb/keymaps/default/keymap.c deleted file mode 100644 index 2861265e44..0000000000 --- a/keyboards/keychron/k2_pro/jis/rgb/keymaps/default/keymap.c +++ /dev/null @@ -1,59 +0,0 @@ -/* 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 . - */ - -#include QMK_KEYBOARD_H - -// clang-format off -enum layers{ - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN -}; - -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT( - KC_ESC, KC_BRID, KC_BRIU, KC_MCTL, KC_LPAD, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_SNAP, KC_DEL, RGB_MOD, - KC_GRV, 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_INT3, KC_BSPC, KC_PGUP, // 32 - 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_PGDN, // 46 - 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_NUHS, KC_ENT, KC_HOME, // 61 - KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_INT1, KC_RSFT, KC_END, - KC_LCTL, KC_LOPTN, KC_LCMMD, KC_LNG2, KC_SPC, KC_LNG1, KC_RCMMD,MO(MAC_FN),KC_LEFT, KC_UP, KC_DOWN, KC_RGHT), - - [MAC_FN] = LAYOUT( - KC_TRNS, 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, - KC_TRNS, BT_HST1, BT_HST2, BT_HST3, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, BAT_LVL, NK_TOGG, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS), - - [WIN_BASE] = LAYOUT( - KC_ESC, 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_PSCR, KC_DEL, RGB_MOD, - KC_GRV, 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_INT3, KC_PGUP, - 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_PGDN, - 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_NUHS, KC_ENT, KC_HOME, - KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_INT1, KC_RSFT, KC_END, - KC_LCTL, KC_LGUI, KC_LALT, KC_INT5, KC_SPC, KC_INT4, KC_RALT, MO(WIN_FN),KC_LEFT, KC_UP, KC_DOWN, KC_RGHT), - - [WIN_FN] = LAYOUT( - KC_TRNS, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_TRNS, KC_TRNS, RGB_TOG, - KC_TRNS, BT_HST1, BT_HST2, BT_HST3, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, BAT_LVL, NK_TOGG, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - 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/keychron/k2_pro/jis/rgb/keymaps/via/keymap.c b/keyboards/keychron/k2_pro/jis/rgb/keymaps/via/keymap.c deleted file mode 100644 index 2861265e44..0000000000 --- a/keyboards/keychron/k2_pro/jis/rgb/keymaps/via/keymap.c +++ /dev/null @@ -1,59 +0,0 @@ -/* 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 . - */ - -#include QMK_KEYBOARD_H - -// clang-format off -enum layers{ - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN -}; - -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT( - KC_ESC, KC_BRID, KC_BRIU, KC_MCTL, KC_LPAD, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_SNAP, KC_DEL, RGB_MOD, - KC_GRV, 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_INT3, KC_BSPC, KC_PGUP, // 32 - 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_PGDN, // 46 - 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_NUHS, KC_ENT, KC_HOME, // 61 - KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_INT1, KC_RSFT, KC_END, - KC_LCTL, KC_LOPTN, KC_LCMMD, KC_LNG2, KC_SPC, KC_LNG1, KC_RCMMD,MO(MAC_FN),KC_LEFT, KC_UP, KC_DOWN, KC_RGHT), - - [MAC_FN] = LAYOUT( - KC_TRNS, 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, - KC_TRNS, BT_HST1, BT_HST2, BT_HST3, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, BAT_LVL, NK_TOGG, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS), - - [WIN_BASE] = LAYOUT( - KC_ESC, 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_PSCR, KC_DEL, RGB_MOD, - KC_GRV, 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_INT3, KC_PGUP, - 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_PGDN, - 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_NUHS, KC_ENT, KC_HOME, - KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_INT1, KC_RSFT, KC_END, - KC_LCTL, KC_LGUI, KC_LALT, KC_INT5, KC_SPC, KC_INT4, KC_RALT, MO(WIN_FN),KC_LEFT, KC_UP, KC_DOWN, KC_RGHT), - - [WIN_FN] = LAYOUT( - KC_TRNS, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_TRNS, KC_TRNS, RGB_TOG, - KC_TRNS, BT_HST1, BT_HST2, BT_HST3, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, BAT_LVL, NK_TOGG, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - 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/keychron/k2_pro/jis/rgb/keymaps/via/rules.mk b/keyboards/keychron/k2_pro/jis/rgb/keymaps/via/rules.mk deleted file mode 100644 index 1e5b99807c..0000000000 --- a/keyboards/keychron/k2_pro/jis/rgb/keymaps/via/rules.mk +++ /dev/null @@ -1 +0,0 @@ -VIA_ENABLE = yes diff --git a/keyboards/keychron/k2_pro/jis/rgb/rgb.c b/keyboards/keychron/k2_pro/jis/rgb/rgb.c deleted file mode 100644 index 97662faf9f..0000000000 --- a/keyboards/keychron/k2_pro/jis/rgb/rgb.c +++ /dev/null @@ -1,153 +0,0 @@ -/* 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 . - */ - -#include "quantum.h" - -// clang-format off -#ifdef RGB_MATRIX_ENABLE -const snled27351_led_t g_snled27351_leds[RGB_MATRIX_LED_COUNT] = { -/* Refer to snled27351manual for these locations - * driver - * | R location - * | | G location - * | | | B location - * | | | | */ - {0, I_1, G_1, H_1}, - {0, I_2, G_2, H_2}, - {0, I_3, G_3, H_3}, - {0, I_4, G_4, H_4}, - {0, I_5, G_5, H_5}, - {0, I_6, G_6, H_6}, - {0, I_7, G_7, H_7}, - {0, I_8, G_8, H_8}, - {0, I_9, G_9, H_9}, - {0, I_10, G_10, H_10}, - {0, I_11, G_11, H_11}, - {0, I_12, G_12, H_12}, - {0, I_13, G_13, H_13}, - {0, I_14, G_14, H_14}, - {0, I_15, G_15, H_15}, - {0, I_16, G_16, H_16}, - - {0, C_1, A_1, B_1}, - {0, C_2, A_2, B_2}, - {0, C_3, A_3, B_3}, - {0, C_4, A_4, B_4}, - {0, C_5, A_5, B_5}, - {0, C_6, A_6, B_6}, - {0, C_7, A_7, B_7}, - {0, C_8, A_8, B_8}, - {0, C_9, A_9, B_9}, - {0, C_10, A_10, B_10}, - {0, C_11, A_11, B_11}, - {0, C_12, A_12, B_12}, - {0, C_13, A_13, B_13}, - {0, C_14, A_14, B_14}, - {0, C_15, A_15, B_15}, - {0, C_16, A_16, B_16}, - - {0, F_1, D_1, E_1}, - {0, F_2, D_2, E_2}, - {0, F_3, D_3, E_3}, - {0, F_4, D_4, E_4}, - {0, F_5, D_5, E_5}, - {0, F_6, D_6, E_6}, - {0, F_7, D_7, E_7}, - {0, F_8, D_8, E_8}, - {0, F_9, D_9, E_9}, - {0, F_10, D_10, E_10}, - {0, F_11, D_11, E_11}, - {0, F_12, D_12, E_12}, - {0, F_13, D_13, E_13}, - {0, F_16, D_16, E_16}, - - {1, C_16, A_16, B_16}, - {1, C_15, A_15, B_15}, - {1, C_14, A_14, B_14}, - {1, C_13, A_13, B_13}, - {1, C_12, A_12, B_12}, - {1, C_11, A_11, B_11}, - {1, C_10, A_10, B_10}, - {1, C_9, A_9, B_9}, - {1, C_8, A_8, B_8}, - {1, C_7, A_7, B_7}, - {1, C_6, A_6, B_6}, - {1, C_5, A_5, B_5}, - {1, C_3, A_3, B_3}, - {0, F_14, D_14, E_14}, - {1, C_1, A_1, B_1}, - - {1, I_16, G_16, H_16}, - {1, I_14, G_14, H_14}, - {1, I_13, G_13, H_13}, - {1, I_12, G_12, H_12}, - {1, I_11, G_11, H_11}, - {1, I_10, G_10, H_10}, - {1, I_9, G_9, H_9}, - {1, I_8, G_8, H_8}, - {1, I_7, G_7, H_7}, - {1, I_6, G_6, H_6}, - {1, I_5, G_5, H_5}, - {1, I_4, G_4, H_4}, - {1, I_3, G_3, H_3}, - {1, I_1, G_1, H_1}, - - {1, F_16, D_16, E_16}, - {1, F_15, D_15, E_15}, - {1, F_14, D_14, E_14}, - {1, F_13, D_13, E_13}, - {1, F_10, D_10, E_10}, - {1, F_8, D_8, E_8}, - {1, F_7, D_7, E_7}, - {1, F_6, D_6, E_6}, - {1, F_5, D_5, E_5}, - {1, F_4, D_4, E_4}, - {1, F_3, D_3, E_3}, - {1, F_1, D_1, E_1} -}; - -#define __ NO_LED - -led_config_t g_led_config = { - { - // Key Matrix to LED Index - { 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, 40, 41, 42, 43, 44, 59, __, 45 }, - { 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, __, 58, __, 60 }, - { 61, __, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, __, 74 }, - { 75, 76, 77, 78, __, __, 79, __, 80, 81, 82, 83, 84, 85, __, 86 } - }, - { - // LED Index to Physical Position - {0,0}, {15,0}, {30,0}, {45,0}, {60,0}, {75,0}, {90,0}, {105,0}, {119,0}, {134,0}, {149,0}, {164,0}, {179,0}, {194,0}, {209,0}, {224,0}, - {0,13}, {15,13}, {30,13}, {45,13}, {60,13}, {75,13}, {90,13}, {105,13}, {119,13}, {134,13}, {149,13}, {164,13}, {179,13}, {194,13}, {209,13}, {224,13}, - {4,26}, {22,26}, {37,26}, {52,26}, {67,26}, {82,26}, {97,26}, {112,26}, {127,26}, {142,26}, {157,26}, {172,26}, {187,26}, {224,26}, - {6,38}, {26,38}, {41,38}, {56,38}, {71,38}, {86,38}, {101,38}, {116,38}, {131,38}, {146,38}, {161,38}, {175,38}, {190,38}, {211,34}, {224,38}, - {9,51}, {34,51}, {49,51}, {64,51}, {78,51}, {93,51}, {108,51}, {123,51}, {138,51}, {153,51}, {168,51}, {183,51}, {204,51}, {224,51}, - {2,64}, {19,64}, {35,64}, {52,64}, {93,64}, {134,64}, {149,64}, {164,64}, {179,64}, {194,64}, {209,64}, {224,64}, - }, - { - // RGB LED Index to Flag - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 8, 8, 8, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1, 1, - 1, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1, - 8, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1, 1, - 1, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1, 1, 1, - 1, 1, 1, 1, 4, 1, 1, 1, 1, 1, 1, 1 - } -}; -#endif diff --git a/keyboards/keychron/k2_pro/jis/rgb/rules.mk b/keyboards/keychron/k2_pro/jis/rgb/rules.mk deleted file mode 100644 index f886ea2e8e..0000000000 --- a/keyboards/keychron/k2_pro/jis/rgb/rules.mk +++ /dev/null @@ -1 +0,0 @@ -# This file intentionally blank \ No newline at end of file diff --git a/keyboards/keychron/k2_pro/jis/white/config.h b/keyboards/keychron/k2_pro/jis/white/config.h deleted file mode 100644 index 349dce28f7..0000000000 --- a/keyboards/keychron/k2_pro/jis/white/config.h +++ /dev/null @@ -1,50 +0,0 @@ -/* 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 . - */ - -#pragma once - -#ifdef LED_MATRIX_ENABLE -/* LED matrix driver configuration */ -# define DRIVER_COUNT 1 -# define SNLED27351_I2C_ADDRESS_1 SNLED27351_I2C_ADDRESS_GND -# define DRIVER_1_LED_COUNT 87 -# define LED_MATRIX_LED_COUNT DRIVER_1_LED_COUNT - -/* Set to infinit, which is use in USB mode by default */ -# define LED_MATRIX_TIMEOUT LED_MATRIX_TIMEOUT_INFINITE -/* Allow shutdown of led driver to save power */ -# define LED_MATRIX_DRIVER_SHUTDOWN_ENABLE -/* Turn off backlight on low brightness to save power */ -# define LED_MATRIX_BRIGHTNESS_TURN_OFF_VAL 32 - -# define DIM_CAPS_LOCK -# define CAPS_LOCK_INDEX 46 -# define LOW_BAT_IND_INDEX 79 - -/* LED Matrix Animation modes. Explicitly enabled - * For full list of effects, see: - * https://docs.qmk.fm/#/feature_led_matrix?id=led-matrix-effects - */ -# define LED_MATRIX_KEYPRESSES - -/* Use first 6 channels of LED driver */ -# define PHASE_CHANNEL MSKPHASE_6CHANNEL - -/* Set LED driver current */ -# define SNLED27351_CURRENT_TUNE \ - { 0x60, 0x60, 0x60, 0x60, 0x60, 0x60, 0x60, 0x60, 0x60, 0x60, 0x60, 0x60 } - -#endif diff --git a/keyboards/keychron/k2_pro/jis/white/info.json b/keyboards/keychron/k2_pro/jis/white/info.json deleted file mode 100644 index 2f7ca68c02..0000000000 --- a/keyboards/keychron/k2_pro/jis/white/info.json +++ /dev/null @@ -1,30 +0,0 @@ -{ - "usb": { - "pid": "0x0225", - "device_version": "1.0.0" - }, - "features": { - "led_matrix": true - }, - "led_matrix": { - "driver": "snled27351", - "animations": { - "none": true, - "solid": true, - "breathing": true, - "band_pinwheel": true, - "band_spiral": true, - "cycle_left_right": true, - "cycle_up_down": true, - "cycle_out_in": true, - "dual_beacon": true, - "solid_reactive_simple": true, - "solid_reactive_multiwide": true, - "solid_reactive_multinexus": true, - "solid_splash": true, - "wave_left_right": true, - "wave_up_down": true, - "effect_max": true - } - } -} diff --git a/keyboards/keychron/k2_pro/jis/white/keymaps/default/keymap.c b/keyboards/keychron/k2_pro/jis/white/keymaps/default/keymap.c deleted file mode 100644 index effa4605f9..0000000000 --- a/keyboards/keychron/k2_pro/jis/white/keymaps/default/keymap.c +++ /dev/null @@ -1,59 +0,0 @@ -/* 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 . - */ - -#include QMK_KEYBOARD_H - -// clang-format off -enum layers{ - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN -}; - -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT( - KC_ESC, KC_BRID, KC_BRIU, KC_MCTL, KC_LPAD, BL_DOWN, BL_UP, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_SNAP, KC_DEL, BL_STEP, - KC_GRV, 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_INT3, KC_BSPC, KC_PGUP, // 32 - 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_PGDN, // 46 - 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_NUHS, KC_ENT, KC_HOME, // 61 - KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_INT1, KC_RSFT, KC_END, - KC_LCTL, KC_LOPTN, KC_LCMMD, KC_LNG2, KC_SPC, KC_LNG1, KC_RCMMD,MO(MAC_FN),KC_LEFT, KC_UP, KC_DOWN, KC_RGHT), - - [MAC_FN] = LAYOUT( - KC_TRNS, 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, BL_TOGG, - KC_TRNS, BT_HST1, BT_HST2, BT_HST3, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - BL_TOGG, BL_STEP, BL_UP, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, BL_DOWN, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, BAT_LVL, NK_TOGG, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS), - - [WIN_BASE] = LAYOUT( - KC_ESC, 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_PSCR, KC_DEL, BL_STEP, - KC_GRV, 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_INT3, KC_PGUP, - 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_PGDN, - 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_NUHS, KC_ENT, KC_HOME, - KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_INT1, KC_RSFT, KC_END, - KC_LCTL, KC_LGUI, KC_LALT, KC_INT5, KC_SPC, KC_INT4, KC_RALT, MO(WIN_FN),KC_LEFT, KC_UP, KC_DOWN, KC_RGHT), - - [WIN_FN] = LAYOUT( - KC_TRNS, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, BL_DOWN, BL_UP, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_TRNS, KC_TRNS, BL_TOGG, - KC_TRNS, BT_HST1, BT_HST2, BT_HST3, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - BL_TOGG, BL_STEP, BL_UP, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, BL_DOWN, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, BAT_LVL, NK_TOGG, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - 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/keychron/k2_pro/jis/white/keymaps/via/keymap.c b/keyboards/keychron/k2_pro/jis/white/keymaps/via/keymap.c deleted file mode 100644 index effa4605f9..0000000000 --- a/keyboards/keychron/k2_pro/jis/white/keymaps/via/keymap.c +++ /dev/null @@ -1,59 +0,0 @@ -/* 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 . - */ - -#include QMK_KEYBOARD_H - -// clang-format off -enum layers{ - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN -}; - -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT( - KC_ESC, KC_BRID, KC_BRIU, KC_MCTL, KC_LPAD, BL_DOWN, BL_UP, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_SNAP, KC_DEL, BL_STEP, - KC_GRV, 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_INT3, KC_BSPC, KC_PGUP, // 32 - 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_PGDN, // 46 - 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_NUHS, KC_ENT, KC_HOME, // 61 - KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_INT1, KC_RSFT, KC_END, - KC_LCTL, KC_LOPTN, KC_LCMMD, KC_LNG2, KC_SPC, KC_LNG1, KC_RCMMD,MO(MAC_FN),KC_LEFT, KC_UP, KC_DOWN, KC_RGHT), - - [MAC_FN] = LAYOUT( - KC_TRNS, 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, BL_TOGG, - KC_TRNS, BT_HST1, BT_HST2, BT_HST3, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - BL_TOGG, BL_STEP, BL_UP, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, BL_DOWN, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, BAT_LVL, NK_TOGG, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS), - - [WIN_BASE] = LAYOUT( - KC_ESC, 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_PSCR, KC_DEL, BL_STEP, - KC_GRV, 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_INT3, KC_PGUP, - 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_PGDN, - 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_NUHS, KC_ENT, KC_HOME, - KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_INT1, KC_RSFT, KC_END, - KC_LCTL, KC_LGUI, KC_LALT, KC_INT5, KC_SPC, KC_INT4, KC_RALT, MO(WIN_FN),KC_LEFT, KC_UP, KC_DOWN, KC_RGHT), - - [WIN_FN] = LAYOUT( - KC_TRNS, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, BL_DOWN, BL_UP, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_TRNS, KC_TRNS, BL_TOGG, - KC_TRNS, BT_HST1, BT_HST2, BT_HST3, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - BL_TOGG, BL_STEP, BL_UP, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, BL_DOWN, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, BAT_LVL, NK_TOGG, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - 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/keychron/k2_pro/jis/white/keymaps/via/rules.mk b/keyboards/keychron/k2_pro/jis/white/keymaps/via/rules.mk deleted file mode 100644 index 1e5b99807c..0000000000 --- a/keyboards/keychron/k2_pro/jis/white/keymaps/via/rules.mk +++ /dev/null @@ -1 +0,0 @@ -VIA_ENABLE = yes diff --git a/keyboards/keychron/k2_pro/jis/white/rules.mk b/keyboards/keychron/k2_pro/jis/white/rules.mk deleted file mode 100644 index f886ea2e8e..0000000000 --- a/keyboards/keychron/k2_pro/jis/white/rules.mk +++ /dev/null @@ -1 +0,0 @@ -# This file intentionally blank \ No newline at end of file diff --git a/keyboards/keychron/k2_pro/jis/white/white.c b/keyboards/keychron/k2_pro/jis/white/white.c deleted file mode 100644 index d72befad11..0000000000 --- a/keyboards/keychron/k2_pro/jis/white/white.c +++ /dev/null @@ -1,151 +0,0 @@ -/* 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 . - */ - -#include "quantum.h" - -// clang-format off -#ifdef LED_MATRIX_ENABLE -const snled27351_led_t g_snled27351_leds[LED_MATRIX_LED_COUNT] = { -/* Refer to snled27351manual for these locations - * driver - * | LED address - * | | */ - {0, A_16}, - {0, A_15}, - {0, A_14}, - {0, A_13}, - {0, A_12}, - {0, A_11}, - {0, A_10}, - {0, A_9}, - {0, A_8}, - {0, A_7}, - {0, A_6}, - {0, A_5}, - {0, A_4}, - {0, A_3}, - {0, A_2}, - {0, A_1}, - - {0, B_16}, - {0, B_15}, - {0, B_14}, - {0, B_13}, - {0, B_12}, - {0, B_11}, - {0, B_10}, - {0, B_9}, - {0, B_8}, - {0, B_7}, - {0, B_6}, - {0, B_5}, - {0, B_4}, - {0, B_3}, - {0, B_2}, - {0, B_1}, - - {0, C_16}, - {0, C_15}, - {0, C_14}, - {0, C_13}, - {0, C_12}, - {0, C_11}, - {0, C_10}, - {0, C_9}, - {0, C_8}, - {0, C_7}, - {0, C_6}, - {0, C_5}, - {0, C_4}, - {0, C_1}, - - {0, D_16}, - {0, D_15}, - {0, D_14}, - {0, D_13}, - {0, D_12}, - {0, D_11}, - {0, D_10}, - {0, D_9}, - {0, D_8}, - {0, D_7}, - {0, D_6}, - {0, D_5}, - {0, D_3}, - {0, C_3}, - {0, D_1}, - - {0, E_16}, - {0, E_14}, - {0, E_13}, - {0, E_12}, - {0, E_11}, - {0, E_10}, - {0, E_9}, - {0, E_8}, - {0, E_7}, - {0, E_6}, - {0, E_5}, - {0, E_4}, - {0, E_3}, - {0, E_1}, - - {0, F_16}, - {0, F_15}, - {0, F_14}, - {0, F_13}, - {0, F_10}, - {0, F_8}, - {0, F_7}, - {0, F_6}, - {0, F_5}, - {0, F_4}, - {0, F_3}, - {0, F_1}, -}; - -#define __ NO_LED - -led_config_t g_led_config = { - { - // Key Matrix to LED Index - { 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, 40, 41, 42, 43, 44, 59, __, 45 }, - { 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, __, 58, __, 60 }, - { 61, __, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, __, 74 }, - { 75, 76, 77, 78, __, __, 79, __, 80, 81, 82, 83, 84, 85, __, 86 } - }, - { - // LED Index to Physical Position - {0,0}, {15,0}, {30,0}, {45,0}, {60,0}, {75,0}, {90,0}, {105,0}, {119,0}, {134,0}, {149,0}, {164,0}, {179,0}, {194,0}, {209,0}, {224,0}, - {0,13}, {15,13}, {30,13}, {45,13}, {60,13}, {75,13}, {90,13}, {105,13}, {119,13}, {134,13}, {149,13}, {164,13}, {179,13}, {194,13}, {209,13}, {224,13}, - {4,26}, {22,26}, {37,26}, {52,26}, {67,26}, {82,26}, {97,26}, {112,26}, {127,26}, {142,26}, {157,26}, {172,26}, {187,26}, {224,26}, - {6,38}, {26,38}, {41,38}, {56,38}, {71,38}, {86,38}, {101,38}, {116,38}, {131,38}, {146,38}, {161,38}, {175,38}, {190,38}, {211,34}, {224,38}, - {9,51}, {34,51}, {49,51}, {64,51}, {78,51}, {93,51}, {108,51}, {123,51}, {138,51}, {153,51}, {168,51}, {183,51}, {204,51}, {224,51}, - {2,64}, {19,64}, {35,64}, {52,64}, {93,64}, {134,64}, {149,64}, {164,64}, {179,64}, {194,64}, {209,64}, {224,64}, - }, - { - // RGB LED Index to Flag - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 8, 8, 8, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1, 1, - 1, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1, - 8, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1, 1, - 1, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1, 1, 1, - 1, 1, 1, 1, 4, 1, 1, 1, 1, 1, 1, 1 - } -}; -#endif diff --git a/keyboards/keychron/k2_pro/k2_pro.c b/keyboards/keychron/k2_pro/k2_pro.c deleted file mode 100644 index 8657593a3e..0000000000 --- a/keyboards/keychron/k2_pro/k2_pro.c +++ /dev/null @@ -1,296 +0,0 @@ -/* Copyright 2022 @ 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 . - */ - -#include "k2_pro.h" -#ifdef KC_BLUETOOTH_ENABLE -# include "ckbt51.h" -# include "bluetooth.h" -# include "indicator.h" -# include "transport.h" -# include "battery.h" -# include "bat_level_animation.h" -# include "lpm.h" -#endif - -#ifdef ENABLE_FACTORY_TEST -# include "factory_test.h" -#endif - -#define POWER_ON_LED_DURATION 3000 - -typedef struct PACKED { - uint8_t len; - uint8_t keycode[3]; -} key_combination_t; - -static uint32_t power_on_indicator_timer_buffer; -static uint32_t siri_timer_buffer = 0; -static uint8_t mac_keycode[4] = {KC_LOPT, KC_ROPT, KC_LCMD, KC_RCMD}; - -key_combination_t key_comb_list[4] = { - {2, {KC_LWIN, KC_TAB}}, // Task (win) - {2, {KC_LWIN, KC_E}}, // Files (win) - {3, {KC_LSFT, KC_LGUI, KC_4}}, // Snapshot (mac) - {2, {KC_LWIN, KC_C}} // Cortana (win) -}; - -#ifdef KC_BLUETOOTH_ENABLE -bool firstDisconnect = true; -bool bt_factory_reset = false; -static virtual_timer_t pairing_key_timer; -extern uint8_t g_pwm_buffer[DRIVER_COUNT][192]; - -static void pairing_key_timer_cb(void *arg) { - bluetooth_pairing_ex(*(uint8_t *)arg, NULL); -} -#endif - -bool dip_switch_update_kb(uint8_t index, bool active) { - if (index == 0) { - default_layer_set(1UL << (active ? 2 : 0)); - } - dip_switch_update_user(index, active); - - return true; -} - -#ifdef KC_BLUETOOTH_ENABLE -bool process_record_kb_bt(uint16_t keycode, keyrecord_t *record) { -#else -bool process_record_kb(uint16_t keycode, keyrecord_t *record) { -#endif - static uint8_t host_idx = 0; - - switch (keycode) { - case KC_LOPTN: - case KC_ROPTN: - case KC_LCMMD: - case KC_RCMMD: - if (record->event.pressed) { - register_code(mac_keycode[keycode - KC_LOPTN]); - } else { - unregister_code(mac_keycode[keycode - KC_LOPTN]); - } - return false; // Skip all further processing of this key) - case KC_TASK: - case KC_FILE: - case KC_SNAP: - case KC_CTANA: - if (record->event.pressed) { - for (uint8_t i = 0; i < key_comb_list[keycode - KC_TASK].len; i++) - register_code(key_comb_list[keycode - KC_TASK].keycode[i]); - } else { - for (uint8_t i = 0; i < key_comb_list[keycode - KC_TASK].len; i++) - unregister_code(key_comb_list[keycode - KC_TASK].keycode[i]); - } - return false; // Skip all further processing of this key - case KC_SIRI: - if (record->event.pressed && siri_timer_buffer == 0) { - register_code(KC_LGUI); - register_code(KC_SPACE); - siri_timer_buffer = sync_timer_read32() | 1; - } - return false; // Skip all further processing of this key -#ifdef KC_BLUETOOTH_ENABLE - case BT_HST1 ... BT_HST3: - if (get_transport() == TRANSPORT_BLUETOOTH) { - if (record->event.pressed) { - host_idx = keycode - BT_HST1 + 1; - chVTSet(&pairing_key_timer, TIME_MS2I(2000), (vtfunc_t)pairing_key_timer_cb, &host_idx); - bluetooth_connect_ex(host_idx, 0); - } else { - host_idx = 0; - chVTReset(&pairing_key_timer); - } - } - break; - case BAT_LVL: - if (get_transport() == TRANSPORT_BLUETOOTH && !usb_power_connected()) { - bat_level_animiation_start(battery_get_percentage()); - } - break; -#endif - default: -#ifdef FACTORY_RESET_CHECK - FACTORY_RESET_CHECK(keycode, record); -#endif - break; - } - return true; -} - -void keyboard_post_init_kb(void) { - dip_switch_read(true); - -#ifdef KC_BLUETOOTH_ENABLE - /* Currently we don't use this reset pin */ - palSetLineMode(CKBT51_RESET_PIN, PAL_MODE_UNCONNECTED); - - /* IMPORTANT: DO NOT enable internal pull-up resistor - * as there is an external pull-down resistor. - */ - palSetLineMode(USB_BT_MODE_SELECT_PIN, PAL_MODE_INPUT); - - ckbt51_init(false); - bluetooth_init(); -#endif - - power_on_indicator_timer_buffer = sync_timer_read32() | 1; - writePin(BAT_LOW_LED_PIN, BAT_LOW_LED_PIN_ON_STATE); - - keyboard_post_init_user(); -} - -void matrix_scan_kb(void) { - if (power_on_indicator_timer_buffer) { - if (sync_timer_elapsed32(power_on_indicator_timer_buffer) > POWER_ON_LED_DURATION) { - power_on_indicator_timer_buffer = 0; - - writePin(BAT_LOW_LED_PIN, !BAT_LOW_LED_PIN_ON_STATE); - } else { - writePin(BAT_LOW_LED_PIN, BAT_LOW_LED_PIN_ON_STATE); - } - } - - if (siri_timer_buffer && sync_timer_elapsed32(siri_timer_buffer) > 500) { - siri_timer_buffer = 0; - unregister_code(KC_LGUI); - unregister_code(KC_SPACE); - } - -#ifdef FACTORY_RESET_TASK - FACTORY_RESET_TASK(); -#endif - matrix_scan_user(); -} - -#ifdef KC_BLUETOOTH_ENABLE -static void ckbt51_param_init(void) { - /* Set bluetooth device name */ - // ckbt51_set_local_name(STR(PRODUCT)); - ckbt51_set_local_name(PRODUCT); - /* Set bluetooth parameters */ - module_param_t param = {.event_mode = 0x02, - .connected_idle_timeout = 7200, - .pairing_timeout = 180, - .pairing_mode = 0, - .reconnect_timeout = 5, - .report_rate = 90, - .vendor_id_source = 1, - .verndor_id = 0, // Must be 0x3434 - .product_id = PRODUCT_ID}; - ckbt51_set_param(¶m); - (void)param; -} - -void bluetooth_enter_disconnected_kb(uint8_t host_idx) { - if (bt_factory_reset) { - bt_factory_reset = false; - ckbt51_param_init(); - } - /* CKBT51 bluetooth module boot time is slower, it enters disconnected after boot, - so we place initialization here. */ - if (firstDisconnect && sync_timer_read32() < 1000 && get_transport() == TRANSPORT_BLUETOOTH) { - ckbt51_param_init(); - bluetooth_connect(); - firstDisconnect = false; - } -} - -void ckbt51_default_ack_handler(uint8_t *data, uint8_t len) { - if (data[1] == 0x45) { - module_param_t param = {.event_mode = 0x02, - .connected_idle_timeout = 7200, - .pairing_timeout = 180, - .pairing_mode = 0, - .reconnect_timeout = 5, - .report_rate = 90, - .vendor_id_source = 1, - .verndor_id = 0, // Must be 0x3434 - .product_id = PRODUCT_ID}; - ckbt51_set_param(¶m); - } -} - -void bluetooth_pre_task(void) { - static uint8_t mode = 1; - - if (readPin(USB_BT_MODE_SELECT_PIN) != mode) { - if (readPin(USB_BT_MODE_SELECT_PIN) != mode) { - mode = readPin(USB_BT_MODE_SELECT_PIN); - set_transport(mode == 0 ? TRANSPORT_BLUETOOTH : TRANSPORT_USB); - } - } -} -#endif - -void battery_calculte_voltage(uint16_t value) { - uint16_t voltage = ((uint32_t)value) * 2246 / 1000; - -#ifdef LED_MATRIX_ENABLE - if (led_matrix_is_enabled()) { - uint32_t totalBuf = 0; - - for (uint8_t i = 0; i < DRIVER_COUNT; i++) - for (uint8_t j = 0; j < 192; j++) - totalBuf += g_pwm_buffer[i][j]; - /* We assumpt it is linear relationship*/ - voltage += (30 * totalBuf / LED_MATRIX_LED_COUNT / 255); - } -#endif -#ifdef RGB_MATRIX_ENABLE - if (rgb_matrix_is_enabled()) { - uint32_t totalBuf = 0; - - for (uint8_t i = 0; i < DRIVER_COUNT; i++) - for (uint8_t j = 0; j < 192; j++) - totalBuf += g_pwm_buffer[i][j]; - /* We assumpt it is linear relationship*/ - uint32_t compensation = 60 * totalBuf / RGB_MATRIX_LED_COUNT / 255 / 3; - voltage += compensation; - } -#endif - battery_set_voltage(voltage); -} - -bool via_command_kb(uint8_t *data, uint8_t length) { - switch (data[0]) { -#ifdef KC_BLUETOOTH_ENABLE - case 0xAA: - ckbt51_dfu_rx(data, length); - break; -#endif -#ifdef ENABLE_FACTORY_TEST - case 0xAB: - factory_test_rx(data, length); - break; -#endif - default: - return false; - } - - return true; -} - -#if !defined(VIA_ENABLE) -void raw_hid_receive(uint8_t *data, uint8_t length) { - switch (data[0]) { - case RAW_HID_CMD: - via_command_kb(data, length); - break; - } -} -#endif diff --git a/keyboards/keychron/k2_pro/k2_pro.h b/keyboards/keychron/k2_pro/k2_pro.h deleted file mode 100644 index be5196903d..0000000000 --- a/keyboards/keychron/k2_pro/k2_pro.h +++ /dev/null @@ -1,55 +0,0 @@ -/* Copyright 2022 @ 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 . - */ - -#pragma once - -#include "quantum.h" -#ifdef VIA_ENABLE -# include "via.h" -#endif - -#define ___ KC_NO - -#ifdef VIA_ENABLE -# define USER_START QK_KB_0 -#else -# define USER_START SAFE_RANGE -#endif - -// clang-format off -enum { - KC_LOPTN = USER_START, - KC_ROPTN, - KC_LCMMD, - KC_RCMMD, - KC_TASK, - KC_FILE, - KC_SNAP, - KC_CTANA, - KC_SIRI, -#ifdef KC_BLUETOOTH_ENABLE - BT_HST1, - BT_HST2, - BT_HST3, - BAT_LVL, -#else - BT_HST1 = KC_TRNS, - BT_HST2 = KC_TRNS, - BT_HST3 = KC_TRNS, - BAT_LVL = KC_TRNS, -#endif - NEW_SAFE_RANGE -}; diff --git a/keyboards/keychron/k2_pro/matrix.c b/keyboards/keychron/k2_pro/matrix.c deleted file mode 100644 index 0ff1226970..0000000000 --- a/keyboards/keychron/k2_pro/matrix.c +++ /dev/null @@ -1,173 +0,0 @@ -/* Copyright 2022 @ 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 . - */ - -//#include "q1_bluetooth.h" -#include "stdint.h" -#include "hal.h" -#include "gpio.h" -#include "quantum.h" - -#define HC595_STCP A0 -#define HC595_SHCP A1 -#define HC595_DS C15 - -pin_t row_pins[MATRIX_ROWS] = MATRIX_ROW_PINS; -pin_t col_pins[MATRIX_COLS] = MATRIX_COL_PINS; - -static inline void HC595_delay(uint16_t n) { - while (n-- > 0) { - asm volatile("nop" ::: "memory"); - }; -} - -static void HC595_output(uint16_t data) { - uint8_t i; - uint8_t n = 1; - - for (i = 16; i > 0; i--) { - writePinLow(HC595_SHCP); - - if (data & 0x8000) - writePinHigh(HC595_DS); - else - writePinLow(HC595_DS); - - data <<= 1; - - HC595_delay(n); - - writePinHigh(HC595_SHCP); - HC595_delay(n); - } - - HC595_delay(n); - writePinLow(HC595_STCP); - HC595_delay(n); - writePinHigh(HC595_STCP); -} - -static inline void setPinOutput_writeLow(pin_t pin) { - ATOMIC_BLOCK_FORCEON { - setPinOutput(pin); - writePinLow(pin); - } -} - -static inline void setPinInputHigh_atomic(pin_t pin) { - ATOMIC_BLOCK_FORCEON { - setPinInputHigh(pin); - } -} - -static inline uint8_t readMatrixPin(pin_t pin) { - if (pin != NO_PIN) { - return readPin(pin); - } else { - return 1; - } -} - -static bool select_col(uint8_t col) { - pin_t pin = col_pins[col]; - - if (col < 1) { - if (pin != NO_PIN) { - setPinOutput_writeLow(pin); - return true; - } - } else { - HC595_output(~(0x01 << (col - 1))); - return true; - } - return false; -} - -static void unselect_col(uint8_t col) { - pin_t pin = col_pins[col]; - - if (col < 1) { - if (pin != NO_PIN) { - setPinInputHigh_atomic(pin); - } - } else { - // HC595_output(0x01 << (col - 1)); - if (col >= MATRIX_COLS - 1) HC595_output(0xFFFF); - } -} - -static void unselect_cols(void) { - if (col_pins[0] != NO_PIN) setPinInputHigh_atomic(col_pins[0]); - HC595_output(0xFFFF); -} - -void select_all_cols(void) { - if (col_pins[0] != NO_PIN) setPinOutput_writeLow(col_pins[0]); - HC595_output(0x0000); -} - -void matrix_read_rows_on_col(matrix_row_t current_matrix[], uint8_t current_col) { - - // Select col - if (!select_col(current_col)) { // select col - return; // skip NO_PIN col - } - - HC595_delay(100); - - // For each row... - for (uint8_t row_index = 0; row_index < MATRIX_ROWS; row_index++) { - // Check row pin state - if (readMatrixPin(row_pins[row_index]) == 0) { - // Pin LO, set col bit - current_matrix[row_index] |= (MATRIX_ROW_SHIFTER << current_col); - // key_pressed = true; - } else { - // Pin HI, clear col bit - current_matrix[row_index] &= ~(MATRIX_ROW_SHIFTER << current_col); - } - } - - unselect_col(current_col); - HC595_delay(100); -} - -void matrix_init_custom(void) { - for (uint8_t x = 0; x < MATRIX_ROWS; x++) { - if (row_pins[x] != NO_PIN) { - setPinInputHigh_atomic(row_pins[x]); - } - } - setPinOutput(HC595_DS); - setPinOutput(HC595_STCP); - setPinOutput(HC595_SHCP); - unselect_cols(); -} - -bool matrix_scan_custom(matrix_row_t current_matrix[]) { - bool matrix_has_changed = false; - - matrix_row_t curr_matrix[MATRIX_ROWS] = {0}; - - // Set col, read rows - for (uint8_t current_col = 0; current_col < MATRIX_COLS; current_col++) { - matrix_read_rows_on_col(curr_matrix, current_col); - } - - matrix_has_changed = memcmp(current_matrix, curr_matrix, sizeof(curr_matrix)) != 0; - if (matrix_has_changed) memcpy(current_matrix, curr_matrix, sizeof(curr_matrix)); - - return matrix_has_changed; -} diff --git a/keyboards/keychron/k2_pro/mcuconf.h b/keyboards/keychron/k2_pro/mcuconf.h deleted file mode 100644 index 3fbdca5820..0000000000 --- a/keyboards/keychron/k2_pro/mcuconf.h +++ /dev/null @@ -1,37 +0,0 @@ -/* Copyright 2022 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 - -/* Set HCLK to 48 MHz as tradeoff of USB lowest clockand and - * lower power comsumption for bluetooth. Will use dynamic - * clock when STM32L4 is supported in ChibiOS */ -#undef STM32_PLLM_VALUE -#define STM32_PLLM_VALUE 2 - -#undef STM32_PLLN_VALUE -#define STM32_PLLN_VALUE 12 - -#undef STM32_I2C_USE_I2C1 -#define STM32_I2C_USE_I2C1 TRUE - -#ifdef KC_BLUETOOTH_ENABLE -# undef STM32_SERIAL_USE_USART2 -# define STM32_SERIAL_USE_USART2 TRUE -#endif diff --git a/keyboards/keychron/k2_pro/readme.md b/keyboards/keychron/k2_pro/readme.md deleted file mode 100644 index b63ac6ee56..0000000000 --- a/keyboards/keychron/k2_pro/readme.md +++ /dev/null @@ -1,21 +0,0 @@ -# Keychron K2 Pro - -![Keychron K2 Pro](https://github.com/Keychron/ProductImage/blob/main/K_Pro/k2_pro.jpg?raw=true) - -A customizable 84 keys TKL keyboard. - -* Keyboard Maintainer: [Keychron](https://github.com/keychron) -* Hardware Supported: Keychron K2 Pro -* Hardware Availability: [Keychron K2 Pro QMK/VIA Wireless Mechanical Keyboard](https://www.keychron.com/products/keychron-k2-pro-qmk-via-wireless-mechanical-keyboard) - -Make example for this keyboard (after setting up your build environment): - - make keychron/k2_pro/ansi/rgb:default - -Flashing example for this keyboard: - - make keychron/k2_pro/ansi/rgb:default:flash - -**Reset Key**: Connect the USB cable, toggle mode switch to "Off", hold down the *Esc* key or reset button underneath space bar, then toggle then switch to "Cable". - -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). diff --git a/keyboards/keychron/k2_pro/rules.mk b/keyboards/keychron/k2_pro/rules.mk deleted file mode 100644 index 8e536fc345..0000000000 --- a/keyboards/keychron/k2_pro/rules.mk +++ /dev/null @@ -1,9 +0,0 @@ -# Enter lower-power sleep mode when on the ChibiOS idle thread -OPT_DEFS += -DCORTEX_ENABLE_WFI_IDLE=TRUE -OPT_DEFS += -DNO_USB_STARTUP_CHECK -DENABLE_FACTORY_TEST - -SRC += matrix.c - -include keyboards/keychron/bluetooth/bluetooth.mk - - diff --git a/keyboards/keychron/k2_pro/via_json/k2_pro_ansi_rgb.json b/keyboards/keychron/k2_pro/via_json/k2_pro_ansi_rgb.json deleted file mode 100644 index 5729856fde..0000000000 --- a/keyboards/keychron/k2_pro/via_json/k2_pro_ansi_rgb.json +++ /dev/null @@ -1,263 +0,0 @@ -{ - "name": "Keychron K2 Pro", - "vendorId": "0x3434", - "productId": "0x0220", - "keycodes": ["qmk_lighting"], - "menus": [ - { - "label": "Lighting", - "content": [ - { - "label": "Backlight", - "content": [ - { - "label": "Brightness", - "type": "range", - "options": [0, 255], - "content": ["id_qmk_rgb_matrix_brightness", 3, 1] - }, - { - "label": "Effect", - "type": "dropdown", - "content": ["id_qmk_rgb_matrix_effect", 3, 2], - "options": [ - ["None", 0], - ["Solid Color", 1], - ["Breathing", 2], - ["Band Spiral Val", 3], - ["Cycle All", 4], - ["Cycle Left Right", 5], - ["Cycle Up Down", 6], - ["Rainbow Moving Chevron", 7], - ["Cycle Out In", 8], - ["Cycle Out In Dual", 9], - ["Cycle Pinwheel", 10], - ["Cycle Spiral", 11], - ["Dual Beacon", 12], - ["Rainbow Beacon", 13], - ["Jellybean Raindrops", 14], - ["Pixel Rain", 15], - ["Typing Heatmap", 16], - ["Digital Rain", 17], - ["Reactive Simple", 18], - ["Reactive Multiwide", 19], - ["Reactive Multinexus", 20], - ["Splash", 21], - ["Solid Splash", 22] - ] - }, - { - "showIf": "{id_qmk_rgb_matrix_effect} > 1", - "label": "Effect Speed", - "type": "range", - "options": [0, 255], - "content": ["id_qmk_rgb_matrix_effect_speed", 3, 3] - }, - { - "showIf": "{id_qmk_rgb_matrix_effect} != 0 && ( {id_qmk_rgb_matrix_effect} < 4 || {id_qmk_rgb_matrix_effect} == 18 || ({id_qmk_rgb_matrix_effect} > 17 && {id_qmk_rgb_matrix_effect} != 21) ) ", - "label": "Color", - "type": "color", - "content": ["id_qmk_rgb_matrix_color", 3, 4] - } - ] - } - ] - } - ], - "customKeycodes": [ - {"name": "Left Option", "title": "Left Option", "shortName": "LOpt"}, - {"name": "Right Option", "title": "Right Option", "shortName": "ROpt"}, - {"name": "Left Cmd", "title": "Left Command", "shortName": "LCmd"}, - {"name": "Right Cmd", "title": "Right Command", "shortName": "RCmd"}, - {"name": "Task View", "title": "Task View in Windows", "shortName": "Task"}, - {"name": "File Explorer", "title": "File Explorer in Windows", "shortName": "File"}, - {"name": "Screen shot", "title": "Screenshot in macOS", "shortName": "SShot"}, - {"name": "Cortana", "title": "Cortana in Windows", "shortName": "Cortana"}, - {"name": "Siri", "title": "Siri in macOS", "shortName": "Siri"}, - {"name": "Bluetooth Host 1", "title": "Bluetooth Host 1", "shortName": "BTH1"}, - {"name": "Bluetooth Host 2", "title": "Bluetooth Host 2", "shortName": "BTH2"}, - {"name": "Bluetooth Host 3", "title": "Bluetooth Host 3", "shortName": "BTH3"}, - {"name": "Battery Level", "title": "Show battery level", "shortName": "Batt"} - ], - "matrix": {"rows": 6, "cols": 16}, - "layouts": { - "keymap": [ - [ - { - "c": "#777777" - }, - "0,0", - { - "c": "#cccccc" - }, - "0,1", - "0,2", - "0,3", - "0,4", - { - "c": "#aaaaaa" - }, - "0,5", - "0,6", - "0,7", - "0,8", - "0,9", - { - "c": "#cccccc" - }, - "0,10", - "0,11", - "0,12", - { - "c": "#aaaaaa" - }, - "0,13", - "0,14", - "0,15" - ], - [ - "1,0", - { - "c": "#cccccc" - }, - "1,1", - "1,2", - "1,3", - "1,4", - "1,5", - "1,6", - "1,7", - "1,8", - "1,9", - "1,10", - "1,11", - "1,12", - { - "c": "#aaaaaa", - "w": 2 - }, - "1,13", - "1,15" - ], - [ - { - "w": 1.5 - }, - "2,0", - { - "c": "#cccccc" - }, - "2,1", - "2,2", - "2,3", - "2,4", - "2,5", - "2,6", - "2,7", - "2,8", - "2,9", - "2,10", - "2,11", - "2,12", - { - "c": "#aaaaaa", - "w": 1.5 - }, - "2,13", - "2,15" - ], - [ - { - "w": 1.75 - }, - "3,0", - { - "c": "#cccccc" - }, - "3,1", - "3,2", - "3,3", - "3,4", - "3,5", - "3,6", - "3,7", - "3,8", - "3,9", - "3,10", - "3,11", - { - "c": "#777777", - "w": 2.25 - }, - "3,13", - { - "c": "#aaaaaa" - }, - "3,15" - ], - [ - { - "w": 2.25 - }, - "4,0", - { - "c": "#cccccc" - }, - "4,2", - "4,3", - "4,4", - "4,5", - "4,6", - "4,7", - "4,8", - "4,9", - "4,10", - "4,11", - { - "c": "#aaaaaa", - "w": 1.75 - }, - "4,12", - { - "c": "#777777" - }, - "4,13", - { - "c": "#aaaaaa" - }, - "4,15" - ], - [ - { - "w": 1.25 - }, - "5,0", - { - "w": 1.25 - }, - "5,1", - { - "w": 1.25 - }, - "5,2", - { - "c": "#cccccc", - "w": 6.25 - }, - "5,6", - { - "c": "#aaaaaa" - }, - "5,9", - "5,10", - "5,11", - { - "c": "#777777" - }, - "5,12", - "5,13", - "5,15" - ] - ] - } -} diff --git a/keyboards/keychron/k2_pro/via_json/k2_pro_ansi_white.json b/keyboards/keychron/k2_pro/via_json/k2_pro_ansi_white.json deleted file mode 100644 index 4b7716f9c4..0000000000 --- a/keyboards/keychron/k2_pro/via_json/k2_pro_ansi_white.json +++ /dev/null @@ -1,202 +0,0 @@ -{ - "name": "Keychron K2 Pro", - "vendorId": "0x3434", - "productId": "0x0223", - "keycodes": ["qmk_lighting"], - "customKeycodes": [ - {"name": "Left Option", "title": "Left Option", "shortName": "LOpt"}, - {"name": "Right Option", "title": "Right Option", "shortName": "ROpt"}, - {"name": "Left Cmd", "title": "Left Command", "shortName": "LCmd"}, - {"name": "Right Cmd", "title": "Right Command", "shortName": "RCmd"}, - {"name": "Task View", "title": "Task View in Windows", "shortName": "Task"}, - {"name": "File Explorer", "title": "File Explorer in Windows", "shortName": "File"}, - {"name": "Screen shot", "title": "Screenshot in macOS", "shortName": "SShot"}, - {"name": "Cortana", "title": "Cortana in Windows", "shortName": "Cortana"}, - {"name": "Siri", "title": "Siri in macOS", "shortName": "Siri"}, - {"name": "Bluetooth Host 1", "title": "Bluetooth Host 1", "shortName": "BTH1"}, - {"name": "Bluetooth Host 2", "title": "Bluetooth Host 2", "shortName": "BTH2"}, - {"name": "Bluetooth Host 3", "title": "Bluetooth Host 3", "shortName": "BTH3"}, - {"name": "Battery Level", "title": "Show battery level", "shortName": "Batt"} - ], - "matrix": {"rows": 6, "cols": 16}, - "layouts": { - "keymap": [ - [ - { - "c": "#777777" - }, - "0,0", - { - "c": "#cccccc" - }, - "0,1", - "0,2", - "0,3", - "0,4", - { - "c": "#aaaaaa" - }, - "0,5", - "0,6", - "0,7", - "0,8", - "0,9", - { - "c": "#cccccc" - }, - "0,10", - "0,11", - "0,12", - { - "c": "#aaaaaa" - }, - "0,13", - "0,14", - "0,15" - ], - [ - "1,0", - { - "c": "#cccccc" - }, - "1,1", - "1,2", - "1,3", - "1,4", - "1,5", - "1,6", - "1,7", - "1,8", - "1,9", - "1,10", - "1,11", - "1,12", - { - "c": "#aaaaaa", - "w": 2 - }, - "1,13", - "1,15" - ], - [ - { - "w": 1.5 - }, - "2,0", - { - "c": "#cccccc" - }, - "2,1", - "2,2", - "2,3", - "2,4", - "2,5", - "2,6", - "2,7", - "2,8", - "2,9", - "2,10", - "2,11", - "2,12", - { - "c": "#aaaaaa", - "w": 1.5 - }, - "2,13", - "2,15" - ], - [ - { - "w": 1.75 - }, - "3,0", - { - "c": "#cccccc" - }, - "3,1", - "3,2", - "3,3", - "3,4", - "3,5", - "3,6", - "3,7", - "3,8", - "3,9", - "3,10", - "3,11", - { - "c": "#777777", - "w": 2.25 - }, - "3,13", - { - "c": "#aaaaaa" - }, - "3,15" - ], - [ - { - "w": 2.25 - }, - "4,0", - { - "c": "#cccccc" - }, - "4,2", - "4,3", - "4,4", - "4,5", - "4,6", - "4,7", - "4,8", - "4,9", - "4,10", - "4,11", - { - "c": "#aaaaaa", - "w": 1.75 - }, - "4,12", - { - "c": "#777777" - }, - "4,13", - { - "c": "#aaaaaa" - }, - "4,15" - ], - [ - { - "w": 1.25 - }, - "5,0", - { - "w": 1.25 - }, - "5,1", - { - "w": 1.25 - }, - "5,2", - { - "c": "#cccccc", - "w": 6.25 - }, - "5,6", - { - "c": "#aaaaaa" - }, - "5,9", - "5,10", - "5,11", - { - "c": "#777777" - }, - "5,12", - "5,13", - "5,15" - ] - ] - } -} diff --git a/keyboards/keychron/k2_pro/via_json/k2_pro_iso_rgb.json b/keyboards/keychron/k2_pro/via_json/k2_pro_iso_rgb.json deleted file mode 100644 index 29d40d6b4b..0000000000 --- a/keyboards/keychron/k2_pro/via_json/k2_pro_iso_rgb.json +++ /dev/null @@ -1,271 +0,0 @@ -{ - "name": "Keychron K2 Pro", - "vendorId": "0x3434", - "productId": "0x0221", - "keycodes": ["qmk_lighting"], - "menus": [ - { - "label": "Lighting", - "content": [ - { - "label": "Backlight", - "content": [ - { - "label": "Brightness", - "type": "range", - "options": [0, 255], - "content": ["id_qmk_rgb_matrix_brightness", 3, 1] - }, - { - "label": "Effect", - "type": "dropdown", - "content": ["id_qmk_rgb_matrix_effect", 3, 2], - "options": [ - ["None", 0], - ["Solid Color", 1], - ["Breathing", 2], - ["Band Spiral Val", 3], - ["Cycle All", 4], - ["Cycle Left Right", 5], - ["Cycle Up Down", 6], - ["Rainbow Moving Chevron", 7], - ["Cycle Out In", 8], - ["Cycle Out In Dual", 9], - ["Cycle Pinwheel", 10], - ["Cycle Spiral", 11], - ["Dual Beacon", 12], - ["Rainbow Beacon", 13], - ["Jellybean Raindrops", 14], - ["Pixel Rain", 15], - ["Typing Heatmap", 16], - ["Digital Rain", 17], - ["Reactive Simple", 18], - ["Reactive Multiwide", 19], - ["Reactive Multinexus", 20], - ["Splash", 21], - ["Solid Splash", 22] - ] - }, - { - "showIf": "{id_qmk_rgb_matrix_effect} > 1", - "label": "Effect Speed", - "type": "range", - "options": [0, 255], - "content": ["id_qmk_rgb_matrix_effect_speed", 3, 3] - }, - { - "showIf": "{id_qmk_rgb_matrix_effect} != 0 && ( {id_qmk_rgb_matrix_effect} < 4 || {id_qmk_rgb_matrix_effect} == 18 || ({id_qmk_rgb_matrix_effect} > 17 && {id_qmk_rgb_matrix_effect} != 21) ) ", - "label": "Color", - "type": "color", - "content": ["id_qmk_rgb_matrix_color", 3, 4] - } - ] - } - ] - } - ], - "customKeycodes": [ - {"name": "Left Option", "title": "Left Option", "shortName": "LOpt"}, - {"name": "Right Option", "title": "Right Option", "shortName": "ROpt"}, - {"name": "Left Cmd", "title": "Left Command", "shortName": "LCmd"}, - {"name": "Right Cmd", "title": "Right Command", "shortName": "RCmd"}, - {"name": "Task View", "title": "Task View in Windows", "shortName": "Task"}, - {"name": "File Explorer", "title": "File Explorer in Windows", "shortName": "File"}, - {"name": "Screen shot", "title": "Screenshot in macOS", "shortName": "SShot"}, - {"name": "Cortana", "title": "Cortana in Windows", "shortName": "Cortana"}, - {"name": "Siri", "title": "Siri in macOS", "shortName": "Siri"}, - {"name": "Bluetooth Host 1", "title": "Bluetooth Host 1", "shortName": "BTH1"}, - {"name": "Bluetooth Host 2", "title": "Bluetooth Host 2", "shortName": "BTH2"}, - {"name": "Bluetooth Host 3", "title": "Bluetooth Host 3", "shortName": "BTH3"}, - {"name": "Battery Level", "title": "Show battery level", "shortName": "Batt"} - ], - "matrix": {"rows": 6, "cols": 16}, - "layouts": { - "keymap": [ - [ - { - "c": "#777777" - }, - "0,0", - { - "c": "#cccccc" - }, - "0,1", - "0,2", - "0,3", - "0,4", - { - "c": "#aaaaaa" - }, - "0,5", - "0,6", - "0,7", - "0,8", - "0,9", - { - "c": "#cccccc" - }, - "0,10", - "0,11", - "0,12", - { - "c": "#aaaaaa" - }, - "0,13", - "0,14", - "0,15" - ], - [ - "1,0", - { - "c": "#cccccc" - }, - "1,1", - "1,2", - "1,3", - "1,4", - "1,5", - "1,6", - "1,7", - "1,8", - "1,9", - "1,10", - "1,11", - "1,12", - { - "c": "#aaaaaa", - "w": 2 - }, - "1,13", - "1,15" - ], - [ - { - "w": 1.5 - }, - "2,0", - { - "c": "#cccccc" - }, - "2,1", - "2,2", - "2,3", - "2,4", - "2,5", - "2,6", - "2,7", - "2,8", - "2,9", - "2,10", - "2,11", - "2,12", - { - "x": 0.25, - "c": "#777777", - "w": 1.25, - "h": 2, - "w2": 1.5, - "h2": 1, - "x2": -0.25 - }, - "2,13", - { - "c": "#aaaaaa" - }, - "2,15" - ], - [ - { - "w": 1.75 - }, - "3,0", - { - "c": "#cccccc" - }, - "3,1", - "3,2", - "3,3", - "3,4", - "3,5", - "3,6", - "3,7", - "3,8", - "3,9", - "3,10", - "3,11", - { - "c": "#aaaaaa" - }, - "3,13", - { - "x": 1.25 - }, - "3,15" - ], - [ - { - "w": 1.25 - }, - "4,0", - "4,1", - { - "c": "#cccccc" - }, - "4,2", - "4,3", - "4,4", - "4,5", - "4,6", - "4,7", - "4,8", - "4,9", - "4,10", - "4,11", - { - "c": "#aaaaaa", - "w": 1.75 - }, - "4,12", - { - "c": "#777777" - }, - "4,13", - { - "c": "#aaaaaa" - }, - "4,15" - ], - [ - { - "w": 1.25 - }, - "5,0", - { - "w": 1.25 - }, - "5,1", - { - "w": 1.25 - }, - "5,2", - { - "c": "#cccccc", - "w": 6.25 - }, - "5,6", - { - "c": "#aaaaaa" - }, - "5,9", - "5,10", - "5,11", - { - "c": "#777777" - }, - "5,12", - "5,13", - "5,15" - ] - ] - } -} diff --git a/keyboards/keychron/k2_pro/via_json/k2_pro_iso_white.json b/keyboards/keychron/k2_pro/via_json/k2_pro_iso_white.json deleted file mode 100644 index 24aa7de80f..0000000000 --- a/keyboards/keychron/k2_pro/via_json/k2_pro_iso_white.json +++ /dev/null @@ -1,210 +0,0 @@ -{ - "name": "Keychron K2 Pro", - "vendorId": "0x3434", - "productId": "0x0224", - "keycodes": ["qmk_lighting"], - "customKeycodes": [ - {"name": "Left Option", "title": "Left Option", "shortName": "LOpt"}, - {"name": "Right Option", "title": "Right Option", "shortName": "ROpt"}, - {"name": "Left Cmd", "title": "Left Command", "shortName": "LCmd"}, - {"name": "Right Cmd", "title": "Right Command", "shortName": "RCmd"}, - {"name": "Task View", "title": "Task View in Windows", "shortName": "Task"}, - {"name": "File Explorer", "title": "File Explorer in Windows", "shortName": "File"}, - {"name": "Screen shot", "title": "Screenshot in macOS", "shortName": "SShot"}, - {"name": "Cortana", "title": "Cortana in Windows", "shortName": "Cortana"}, - {"name": "Siri", "title": "Siri in macOS", "shortName": "Siri"}, - {"name": "Bluetooth Host 1", "title": "Bluetooth Host 1", "shortName": "BTH1"}, - {"name": "Bluetooth Host 2", "title": "Bluetooth Host 2", "shortName": "BTH2"}, - {"name": "Bluetooth Host 3", "title": "Bluetooth Host 3", "shortName": "BTH3"}, - {"name": "Battery Level", "title": "Show battery level", "shortName": "Batt"} - ], - "matrix": {"rows": 6, "cols": 16}, - "layouts": { - "keymap": [ - [ - { - "c": "#777777" - }, - "0,0", - { - "c": "#cccccc" - }, - "0,1", - "0,2", - "0,3", - "0,4", - { - "c": "#aaaaaa" - }, - "0,5", - "0,6", - "0,7", - "0,8", - "0,9", - { - "c": "#cccccc" - }, - "0,10", - "0,11", - "0,12", - { - "c": "#aaaaaa" - }, - "0,13", - "0,14", - "0,15" - ], - [ - "1,0", - { - "c": "#cccccc" - }, - "1,1", - "1,2", - "1,3", - "1,4", - "1,5", - "1,6", - "1,7", - "1,8", - "1,9", - "1,10", - "1,11", - "1,12", - { - "c": "#aaaaaa", - "w": 2 - }, - "1,13", - "1,15" - ], - [ - { - "w": 1.5 - }, - "2,0", - { - "c": "#cccccc" - }, - "2,1", - "2,2", - "2,3", - "2,4", - "2,5", - "2,6", - "2,7", - "2,8", - "2,9", - "2,10", - "2,11", - "2,12", - { - "x": 0.25, - "c": "#777777", - "w": 1.25, - "h": 2, - "w2": 1.5, - "h2": 1, - "x2": -0.25 - }, - "2,13", - { - "c": "#aaaaaa" - }, - "2,15" - ], - [ - { - "w": 1.75 - }, - "3,0", - { - "c": "#cccccc" - }, - "3,1", - "3,2", - "3,3", - "3,4", - "3,5", - "3,6", - "3,7", - "3,8", - "3,9", - "3,10", - "3,11", - { - "c": "#aaaaaa" - }, - "3,13", - { - "x": 1.25 - }, - "3,15" - ], - [ - { - "w": 1.25 - }, - "4,0", - "4,1", - { - "c": "#cccccc" - }, - "4,2", - "4,3", - "4,4", - "4,5", - "4,6", - "4,7", - "4,8", - "4,9", - "4,10", - "4,11", - { - "c": "#aaaaaa", - "w": 1.75 - }, - "4,12", - { - "c": "#777777" - }, - "4,13", - { - "c": "#aaaaaa" - }, - "4,15" - ], - [ - { - "w": 1.25 - }, - "5,0", - { - "w": 1.25 - }, - "5,1", - { - "w": 1.25 - }, - "5,2", - { - "c": "#cccccc", - "w": 6.25 - }, - "5,6", - { - "c": "#aaaaaa" - }, - "5,9", - "5,10", - "5,11", - { - "c": "#777777" - }, - "5,12", - "5,13", - "5,15" - ] - ] - } -} diff --git a/keyboards/keychron/k3_max/ansi/rgb/config.h b/keyboards/keychron/k3_max/ansi/rgb/config.h deleted file mode 100644 index ddf6d9733a..0000000000 --- a/keyboards/keychron/k3_max/ansi/rgb/config.h +++ /dev/null @@ -1,57 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#pragma once - -#ifdef RGB_MATRIX_ENABLE -/* RGB Matrix driver configuration */ -# define DRIVER_COUNT 2 -# define RGB_MATRIX_LED_COUNT 84 - -# define SPI_SCK_PIN A5 -# define SPI_MISO_PIN A6 -# define SPI_MOSI_PIN A7 - -# define DRIVER_CS_PINS \ - { B8, B9 } -# define SNLED23751_SPI_DIVISOR 16 -# define SPI_DRIVER SPID1 - -/* Scan phase of led driver set as MSKPHASE_9CHANNEL(defined as 0x03 in snled27351.h) */ -# define SNLED27351_PHASE_CHANNEL MSKPHASE_9CHANNEL - -/* Set LED driver current */ -# define SNLED27351_CURRENT_TUNE \ - { 0x14, 0x14, 0x14, 0x14, 0x14, 0x14, 0x14, 0x14, 0x14, 0x14, 0x14, 0x14 } - -/* Set to infinit, which is use in USB mode by default */ -# define RGB_MATRIX_TIMEOUT RGB_MATRIX_TIMEOUT_INFINITE - -/* Allow shutdown of led driver to save power */ -# define RGB_MATRIX_DRIVER_SHUTDOWN_ENABLE -/* Turn off backlight on low brightness to save power */ -# define RGB_MATRIX_BRIGHTNESS_TURN_OFF_VAL 48 - -/* Indications */ -# define DIM_CAPS_LOCK -# define CAPS_LOCK_INDEX 46 -# define LOW_BAT_IND_INDEX \ - { 77 } - -# define RGB_MATRIX_KEYPRESSES -# define RGB_MATRIX_FRAMEBUFFER_EFFECTS - -#endif diff --git a/keyboards/keychron/k3_max/ansi/rgb/info.json b/keyboards/keychron/k3_max/ansi/rgb/info.json deleted file mode 100644 index 7033ed2e8e..0000000000 --- a/keyboards/keychron/k3_max/ansi/rgb/info.json +++ /dev/null @@ -1,36 +0,0 @@ -{ - "usb": { - "pid": "0x0A30", - "device_version": "1.0.0" - }, - "features": { - "rgb_matrix": true - }, - "rgb_matrix": { - "driver": "snled27351_spi", - "sleep": true, - "animations": { - "band_spiral_val": true, - "breathing": true, - "cycle_all": true, - "cycle_left_right": true, - "cycle_out_in": true, - "cycle_out_in_dual": true, - "cycle_pinwheel": true, - "cycle_spiral": true, - "cycle_up_down": true, - "digital_rain": true, - "dual_beacon": true, - "jellybean_raindrops": true, - "pixel_rain": true, - "rainbow_beacon": true, - "rainbow_moving_chevron": true, - "solid_reactive_multinexus": true, - "solid_reactive_multiwide": true, - "solid_reactive_simple": true, - "solid_splash": true, - "splash": true, - "typing_heatmap": true - } - } -} diff --git a/keyboards/keychron/k3_max/ansi/rgb/keymaps/default/keymap.c b/keyboards/keychron/k3_max/ansi/rgb/keymaps/default/keymap.c deleted file mode 100644 index 90031ad893..0000000000 --- a/keyboards/keychron/k3_max/ansi/rgb/keymaps/default/keymap.c +++ /dev/null @@ -1,68 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#include QMK_KEYBOARD_H -#include "keychron_common.h" - -enum layers { - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN, -}; - -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { -[MAC_BASE] = LAYOUT_ansi_84( - KC_ESC, KC_BRID, KC_BRIU, KC_MCTRL, KC_LNPAD, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_SNAP, KC_DEL, RGB_MOD, - KC_GRV, 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_PGUP, - 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_PGDN, - 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_HOME, - 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_LOPTN, KC_LCMMD, KC_SPC, KC_RCMMD,MO(MAC_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - -[MAC_FN] = LAYOUT_ansi_84( - _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, RGB_TOG, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - -[WIN_BASE] = LAYOUT_ansi_84( - KC_ESC, 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_PSCR, KC_DEL, RGB_MOD, - KC_GRV, 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_PGUP, - 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_PGDN, - 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_HOME, - 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_SPC, KC_RALT, MO(WIN_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - -[WIN_FN] = LAYOUT_ansi_84( - _______, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, RGB_TOG, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______) -}; - -// clang-format on -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - if (!process_record_keychron_common(keycode, record)) { - return false; - } - return true; -} diff --git a/keyboards/keychron/k3_max/ansi/rgb/keymaps/via/keymap.c b/keyboards/keychron/k3_max/ansi/rgb/keymaps/via/keymap.c deleted file mode 100644 index 90031ad893..0000000000 --- a/keyboards/keychron/k3_max/ansi/rgb/keymaps/via/keymap.c +++ /dev/null @@ -1,68 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#include QMK_KEYBOARD_H -#include "keychron_common.h" - -enum layers { - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN, -}; - -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { -[MAC_BASE] = LAYOUT_ansi_84( - KC_ESC, KC_BRID, KC_BRIU, KC_MCTRL, KC_LNPAD, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_SNAP, KC_DEL, RGB_MOD, - KC_GRV, 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_PGUP, - 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_PGDN, - 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_HOME, - 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_LOPTN, KC_LCMMD, KC_SPC, KC_RCMMD,MO(MAC_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - -[MAC_FN] = LAYOUT_ansi_84( - _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, RGB_TOG, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - -[WIN_BASE] = LAYOUT_ansi_84( - KC_ESC, 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_PSCR, KC_DEL, RGB_MOD, - KC_GRV, 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_PGUP, - 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_PGDN, - 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_HOME, - 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_SPC, KC_RALT, MO(WIN_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - -[WIN_FN] = LAYOUT_ansi_84( - _______, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, RGB_TOG, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______) -}; - -// clang-format on -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - if (!process_record_keychron_common(keycode, record)) { - return false; - } - return true; -} diff --git a/keyboards/keychron/k3_max/ansi/rgb/keymaps/via/rules.mk b/keyboards/keychron/k3_max/ansi/rgb/keymaps/via/rules.mk deleted file mode 100644 index 1e5b99807c..0000000000 --- a/keyboards/keychron/k3_max/ansi/rgb/keymaps/via/rules.mk +++ /dev/null @@ -1 +0,0 @@ -VIA_ENABLE = yes diff --git a/keyboards/keychron/k3_max/ansi/rgb/rgb.c b/keyboards/keychron/k3_max/ansi/rgb/rgb.c deleted file mode 100644 index a1bd731e2f..0000000000 --- a/keyboards/keychron/k3_max/ansi/rgb/rgb.c +++ /dev/null @@ -1,150 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#include "quantum.h" - -// clang-format off -#ifdef RGB_MATRIX_ENABLE -const snled27351_led_t g_snled27351_leds[RGB_MATRIX_LED_COUNT] = { -/* Refer to SNLED27351 manual for these locations - * driver - * | R location - * | | G location - * | | | B location - * | | | | */ - {0, I_1, G_1, H_1}, - {0, I_2, G_2, H_2}, - {0, I_3, G_3, H_3}, - {0, I_4, G_4, H_4}, - {0, I_5, G_5, H_5}, - {0, I_6, G_6, H_6}, - {0, I_7, G_7, H_7}, - {0, I_8, G_8, H_8}, - {0, I_9, G_9, H_9}, - {0, I_10, G_10, H_10}, - {0, I_11, G_11, H_11}, - {0, I_12, G_12, H_12}, - {0, I_13, G_13, H_13}, - {0, I_14, G_14, H_14}, - {0, I_15, G_15, H_15}, - {0, I_16, G_16, H_16}, - - {0, F_1, D_1, E_1}, - {0, F_2, D_2, E_2}, - {0, F_3, D_3, E_3}, - {0, F_4, D_4, E_4}, - {0, F_5, D_5, E_5}, - {0, F_6, D_6, E_6}, - {0, F_7, D_7, E_7}, - {0, F_8, D_8, E_8}, - {0, F_9, D_9, E_9}, - {0, F_10, D_10, E_10}, - {0, F_11, D_11, E_11}, - {0, F_12, D_12, E_12}, - {0, F_13, D_13, E_13}, - {0, F_14, D_14, E_14}, - {0, F_16, D_16, E_16}, - - {0, A_1, C_1, B_1}, - {0, A_2, C_2, B_2}, - {0, A_3, C_3, B_3}, - {0, A_4, C_4, B_4}, - {0, A_5, C_5, B_5}, - {0, A_6, C_6, B_6}, - {0, A_7, C_7, B_7}, - {0, A_8, C_8, B_8}, - {0, A_9, C_9, B_9}, - {0, A_10, C_10, B_10}, - {0, A_11, C_11, B_11}, - {0, A_12, C_12, B_12}, - {0, A_13, C_13, B_13}, - {0, A_14, C_14, B_14}, - {0, A_16, C_16, B_16}, - - {1, I_1, G_1, H_1}, - {1, I_2, G_2, H_2}, - {1, I_3, G_3, H_3}, - {1, I_4, G_4, H_4}, - {1, I_5, G_5, H_5}, - {1, I_6, G_6, H_6}, - {1, I_7, G_7, H_7}, - {1, I_8, G_8, H_8}, - {1, I_9, G_9, H_9}, - {1, I_10, G_10, H_10}, - {1, I_11, G_11, H_11}, - {1, I_12, G_12, H_12}, - {1, I_14, G_14, H_14}, - {1, I_16, G_16, H_16}, - - {1, C_1, A_1, B_1}, - {1, C_3, A_3, B_3}, - {1, C_4, A_4, B_4}, - {1, C_5, A_5, B_5}, - {1, C_6, A_6, B_6}, - {1, C_7, A_7, B_7}, - {1, C_8, A_8, B_8}, - {1, C_9, A_9, B_9}, - {1, C_10, A_10, B_10}, - {1, C_11, A_11, B_11}, - {1, C_12, A_12, B_12}, - {1, C_14, A_14, B_14}, - {1, C_15, A_15, B_15}, - {1, C_16, A_16, B_16}, - - {1, F_1, D_1, E_1}, - {1, F_2, D_2, E_2}, - {1, F_3, D_3, E_3}, - {1, F_7, D_7, E_7}, - {1, F_11, D_11, E_11}, - {1, F_12, D_12, E_12}, - {1, F_13, D_13, E_13}, - {1, F_14, D_14, E_14}, - {1, F_15, D_15, E_15}, - {1, F_16, D_16, E_16}, -}; - -#define __ NO_LED - -led_config_t g_led_config = { - { - // Key Matrix to LED Index - { 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, 40, 41, 42, 43, 44, __, 45 }, - { 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, __, 58, __, 59 }, - { 60, __, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, __, 71, 72, 73 }, - { 74, 75, 76, __, __, __, 77, __, __, __, 78, 79, 80, 81, 82, 83 } - }, - { - // LED Index to Physical Position - {0, 0}, {14, 0}, {29, 0}, {44, 0}, {59, 0}, {74, 0}, { 89, 0}, {104, 0}, {119, 0}, {134, 0}, {149, 0}, {164, 0}, {179, 0}, {194, 0}, {209, 0}, {223, 0}, - {0,12}, {14,12}, {29,12}, {44,12}, {59,12}, {74,12}, { 89, 12}, {104, 12}, {119, 12}, {134, 12}, {149, 12}, {164, 12}, {179, 12}, {201, 12}, {223, 12}, - {3,25}, {22,25}, {37,25}, {52,25}, {67,25}, {82,25}, { 97, 25}, {112, 25}, {126, 25}, {141, 25}, {156, 25}, {171, 25}, {186, 25}, {205, 25}, {223, 25}, - {5,38}, {26,38}, {41,38}, {55,38}, {70,38}, {85,38}, {100, 38}, {115, 38}, {130, 38}, {145, 38}, {160, 38}, {175, 38}, {199, 38}, {223, 38}, - {9,51}, {33,51}, {48,51}, {63,51}, {78,51}, { 93, 51}, {108, 51}, {123, 51}, {138, 51}, {153, 51}, {168, 51}, {188, 51}, {209, 51}, {223, 51}, - {1,64}, {20,64}, {39,64}, { 95, 64}, {149, 64}, {164, 64}, {179, 64}, {194, 64}, {209, 64}, {223, 64} - }, - { - // RGB LED Index to Flag - 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, - 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, - 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, - 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, - 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, - 4, 4, 4, 4, 4, 4, 4, 4, 4, 4 - } -}; -#endif diff --git a/keyboards/keychron/k3_max/ansi/rgb/rules.mk b/keyboards/keychron/k3_max/ansi/rgb/rules.mk deleted file mode 100644 index 6e7633bfe0..0000000000 --- a/keyboards/keychron/k3_max/ansi/rgb/rules.mk +++ /dev/null @@ -1 +0,0 @@ -# This file intentionally left blank diff --git a/keyboards/keychron/k3_max/ansi/white/config.h b/keyboards/keychron/k3_max/ansi/white/config.h deleted file mode 100644 index 5fae7460ee..0000000000 --- a/keyboards/keychron/k3_max/ansi/white/config.h +++ /dev/null @@ -1,54 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#pragma once - -#ifdef LED_MATRIX_ENABLE -/* LED matrix driver configuration */ -# define DRIVER_COUNT 1 -# define LED_MATRIX_LED_COUNT 84 - -# define SPI_SCK_PIN A5 -# define SPI_MISO_PIN A6 -# define SPI_MOSI_PIN A7 - -# define DRIVER_CS_PINS \ - { B9 } -# define SNLED23751_SPI_DIVISOR 16 -# define SPI_DRIVER SPID1 - -/* Use first 6 channels of LED driver */ -# define SNLED27351_PHASE_CHANNEL MSKPHASE_6CHANNEL - -/* Set LED driver current */ -# define SNLED27351_CURRENT_TUNE \ - { 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20 } - -/* Set to infinit, which is use in USB mode by default */ -# define LED_MATRIX_TIMEOUT LED_MATRIX_TIMEOUT_INFINITE -/* Allow shutdown of led driver to save power */ -# define LED_MATRIX_DRIVER_SHUTDOWN_ENABLE -/* Turn off backlight on low brightness to save power */ -# define LED_MATRIX_BRIGHTNESS_TURN_OFF_VAL 48 - -/* Indications */ -# define DIM_CAPS_LOCK -# define CAPS_LOCK_INDEX 46 -# define LOW_BAT_IND_INDEX \ - { 77 } - -# define LED_MATRIX_KEYPRESSES -#endif diff --git a/keyboards/keychron/k3_max/ansi/white/info.json b/keyboards/keychron/k3_max/ansi/white/info.json deleted file mode 100644 index 073fd72898..0000000000 --- a/keyboards/keychron/k3_max/ansi/white/info.json +++ /dev/null @@ -1,30 +0,0 @@ -{ - "usb": { - "pid": "0x0A33", - "device_version": "1.0.0" - }, - "features": { - "led_matrix": true - }, - "led_matrix": { - "driver": "snled27351_spi", - "sleep": true, - "animations": { - "none": true, - "solid": true, - "breathing": true, - "band_pinwheel": true, - "band_spiral": true, - "cycle_left_right": true, - "cycle_up_down": true, - "cycle_out_in": true, - "dual_beacon": true, - "solid_reactive_simple": true, - "solid_reactive_multiwide": true, - "solid_reactive_multinexus": true, - "solid_splash": true, - "wave_left_right": true, - "wave_up_down": true - } - } -} diff --git a/keyboards/keychron/k3_max/ansi/white/keymaps/default/keymap.c b/keyboards/keychron/k3_max/ansi/white/keymaps/default/keymap.c deleted file mode 100644 index 257cc8c28b..0000000000 --- a/keyboards/keychron/k3_max/ansi/white/keymaps/default/keymap.c +++ /dev/null @@ -1,68 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#include QMK_KEYBOARD_H -#include "keychron_common.h" - -enum layers { - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN, -}; - -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { -[MAC_BASE] = LAYOUT_ansi_84( - KC_ESC, KC_BRID, KC_BRIU, KC_MCTRL, KC_LNPAD, BL_DOWN, BL_UP, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_SNAP, KC_DEL, BL_STEP, - KC_GRV, 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_PGUP, - 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_PGDN, - 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_HOME, - 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_LOPTN, KC_LCMMD, KC_SPC, KC_RCMMD,MO(MAC_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - -[MAC_FN] = LAYOUT_ansi_84( - _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, BL_TOGG, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - BL_TOGG, BL_STEP, BL_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, BL_DOWN, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - -[WIN_BASE] = LAYOUT_ansi_84( - KC_ESC, 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_PSCR, KC_DEL, BL_STEP, - KC_GRV, 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_PGUP, - 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_PGDN, - 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_HOME, - 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_SPC, KC_RALT, MO(WIN_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - -[WIN_FN] = LAYOUT_ansi_84( - _______, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, BL_DOWN, BL_UP, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, BL_TOGG, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - BL_TOGG, BL_STEP, BL_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, BL_DOWN, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______) -}; - -// clang-format on -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - if (!process_record_keychron_common(keycode, record)) { - return false; - } - return true; -} diff --git a/keyboards/keychron/k3_max/ansi/white/keymaps/via/keymap.c b/keyboards/keychron/k3_max/ansi/white/keymaps/via/keymap.c deleted file mode 100644 index 257cc8c28b..0000000000 --- a/keyboards/keychron/k3_max/ansi/white/keymaps/via/keymap.c +++ /dev/null @@ -1,68 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#include QMK_KEYBOARD_H -#include "keychron_common.h" - -enum layers { - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN, -}; - -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { -[MAC_BASE] = LAYOUT_ansi_84( - KC_ESC, KC_BRID, KC_BRIU, KC_MCTRL, KC_LNPAD, BL_DOWN, BL_UP, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_SNAP, KC_DEL, BL_STEP, - KC_GRV, 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_PGUP, - 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_PGDN, - 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_HOME, - 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_LOPTN, KC_LCMMD, KC_SPC, KC_RCMMD,MO(MAC_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - -[MAC_FN] = LAYOUT_ansi_84( - _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, BL_TOGG, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - BL_TOGG, BL_STEP, BL_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, BL_DOWN, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - -[WIN_BASE] = LAYOUT_ansi_84( - KC_ESC, 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_PSCR, KC_DEL, BL_STEP, - KC_GRV, 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_PGUP, - 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_PGDN, - 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_HOME, - 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_SPC, KC_RALT, MO(WIN_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - -[WIN_FN] = LAYOUT_ansi_84( - _______, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, BL_DOWN, BL_UP, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, BL_TOGG, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - BL_TOGG, BL_STEP, BL_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, BL_DOWN, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______) -}; - -// clang-format on -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - if (!process_record_keychron_common(keycode, record)) { - return false; - } - return true; -} diff --git a/keyboards/keychron/k3_max/ansi/white/keymaps/via/rules.mk b/keyboards/keychron/k3_max/ansi/white/keymaps/via/rules.mk deleted file mode 100644 index 1e5b99807c..0000000000 --- a/keyboards/keychron/k3_max/ansi/white/keymaps/via/rules.mk +++ /dev/null @@ -1 +0,0 @@ -VIA_ENABLE = yes diff --git a/keyboards/keychron/k3_max/ansi/white/rules.mk b/keyboards/keychron/k3_max/ansi/white/rules.mk deleted file mode 100644 index 6e7633bfe0..0000000000 --- a/keyboards/keychron/k3_max/ansi/white/rules.mk +++ /dev/null @@ -1 +0,0 @@ -# This file intentionally left blank diff --git a/keyboards/keychron/k3_max/ansi/white/white.c b/keyboards/keychron/k3_max/ansi/white/white.c deleted file mode 100644 index f13137819e..0000000000 --- a/keyboards/keychron/k3_max/ansi/white/white.c +++ /dev/null @@ -1,149 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#include "quantum.h" - -// clang-format off -#ifdef LED_MATRIX_ENABLE -const snled27351_led_t g_snled27351_leds[LED_MATRIX_LED_COUNT] = { -/* Refer to SNLED27351 manual for these locations - * driver - * | LED address - * | | */ - {0, A_1}, - {0, A_2}, - {0, A_3}, - {0, A_4}, - {0, A_5}, - {0, A_6}, - {0, A_7}, - {0, A_8}, - {0, A_9}, - {0, A_10}, - {0, A_11}, - {0, A_12}, - {0, A_13}, - {0, A_14}, - {0, A_15}, - {0, A_16}, - - {0, B_1}, - {0, B_2}, - {0, B_3}, - {0, B_4}, - {0, B_5}, - {0, B_6}, - {0, B_7}, - {0, B_8}, - {0, B_9}, - {0, B_10}, - {0, B_11}, - {0, B_12}, - {0, B_13}, - {0, B_14}, - {0, B_16}, - - {0, C_1}, - {0, C_2}, - {0, C_3}, - {0, C_4}, - {0, C_5}, - {0, C_6}, - {0, C_7}, - {0, C_8}, - {0, C_9}, - {0, C_10}, - {0, C_11}, - {0, C_12}, - {0, C_13}, - {0, C_14}, - {0, C_16}, - - {0, D_1}, - {0, D_2}, - {0, D_3}, - {0, D_4}, - {0, D_5}, - {0, D_6}, - {0, D_7}, - {0, D_8}, - {0, D_9}, - {0, D_10}, - {0, D_11}, - {0, D_12}, - {0, D_14}, - {0, D_16}, - - {0, E_1}, - {0, E_3}, - {0, E_4}, - {0, E_5}, - {0, E_6}, - {0, E_7}, - {0, E_8}, - {0, E_9}, - {0, E_10}, - {0, E_11}, - {0, E_12}, - {0, E_14}, - {0, E_15}, - {0, E_16}, - - {0, F_1}, - {0, F_2}, - {0, F_3}, - {0, F_7}, - {0, F_11}, - {0, F_12}, - {0, F_13}, - {0, F_14}, - {0, F_15}, - {0, F_16}, -}; - -#define __ NO_LED - -led_config_t g_led_config = { - { - // Key Matrix to LED Index - { 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, 40, 41, 42, 43, 44, __, 45 }, - { 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, __, 58, __, 59 }, - { 60, __, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, __, 71, 72, 73 }, - { 74, 75, 76, __, __, __, 77, __, __, __, 78, 79, 80, 81, 82, 83 } - }, - { - // LED Index to Physical Position - {0, 0}, {14, 0}, {29, 0}, {44, 0}, {59, 0}, {74, 0}, { 89, 0}, {104, 0}, {119, 0}, {134, 0}, {149, 0}, {164, 0}, {179, 0}, {194, 0}, {209, 0}, {223, 0}, - {0,12}, {14,12}, {29,12}, {44,12}, {59,12}, {74,12}, { 89, 12}, {104, 12}, {119, 12}, {134, 12}, {149, 12}, {164, 12}, {179, 12}, {201, 12}, {223, 12}, - {3,25}, {22,25}, {37,25}, {52,25}, {67,25}, {82,25}, { 97, 25}, {112, 25}, {126, 25}, {141, 25}, {156, 25}, {171, 25}, {186, 25}, {205, 25}, {223, 25}, - {5,38}, {26,38}, {41,38}, {55,38}, {70,38}, {85,38}, {100, 38}, {115, 38}, {130, 38}, {145, 38}, {160, 38}, {175, 38}, {199, 38}, {223, 38}, - {9,51}, {33,51}, {48,51}, {63,51}, {78,51}, { 93, 51}, {108, 51}, {123, 51}, {138, 51}, {153, 51}, {168, 51}, {188, 51}, {209, 51}, {223, 51}, - {1,64}, {20,64}, {39,64}, { 95, 64}, {149, 64}, {164, 64}, {179, 64}, {194, 64}, {209, 64}, {223, 64} - }, - { - // RGB LED Index to Flag - 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, - 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, - 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, - 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, - 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, - 4, 4, 4, 4, 4, 4, 4, 4, 4, 4 - } -}; - -#endif diff --git a/keyboards/keychron/k3_max/board.h b/keyboards/keychron/k3_max/board.h deleted file mode 100644 index 54fba748bf..0000000000 --- a/keyboards/keychron/k3_max/board.h +++ /dev/null @@ -1,226 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#pragma once - -#include_next - -// clang-format off - -/* Set GPIOA_SWDIO to INPUT and NOT FLOATING */ -#undef VAL_GPIOA_MODER -#define VAL_GPIOA_MODER (PIN_MODE_INPUT(GPIOA_BUTTON) | \ - PIN_MODE_INPUT(GPIOA_PIN1) | \ - PIN_MODE_INPUT(GPIOA_PIN2) | \ - PIN_MODE_INPUT(GPIOA_PIN3) | \ - PIN_MODE_ALTERNATE(GPIOA_CS43L22_LRCK) |\ - PIN_MODE_ALTERNATE(GPIOA_L3GD20_SCL) | \ - PIN_MODE_ALTERNATE(GPIOA_L3GD20_SD0) | \ - PIN_MODE_ALTERNATE(GPIOA_L3GD20_SDI) | \ - PIN_MODE_INPUT(GPIOA_PIN8) | \ - PIN_MODE_INPUT(GPIOA_VBUS_FS) | \ - PIN_MODE_ALTERNATE(GPIOA_OTG_FS_ID) | \ - PIN_MODE_ALTERNATE(GPIOA_OTG_FS_DM) | \ - PIN_MODE_ALTERNATE(GPIOA_OTG_FS_DP) | \ - PIN_MODE_INPUT(GPIOA_SWDIO) | \ - PIN_MODE_INPUT(GPIOA_SWCLK) | \ - PIN_MODE_INPUT(GPIOA_PIN15)) - -#undef VAL_GPIOA_PUPDR -#define VAL_GPIOA_PUPDR (PIN_PUPDR_FLOATING(GPIOA_BUTTON) | \ - PIN_PUPDR_PULLUP(GPIOA_PIN1) | \ - PIN_PUPDR_PULLUP(GPIOA_PIN2) | \ - PIN_PUPDR_PULLUP(GPIOA_PIN3) | \ - PIN_PUPDR_FLOATING(GPIOA_CS43L22_LRCK) |\ - PIN_PUPDR_FLOATING(GPIOA_L3GD20_SCL) | \ - PIN_PUPDR_PULLUP(GPIOA_L3GD20_SD0) | \ - PIN_PUPDR_PULLUP(GPIOA_L3GD20_SDI) | \ - PIN_PUPDR_PULLUP(GPIOA_PIN8) | \ - PIN_PUPDR_FLOATING(GPIOA_VBUS_FS) | \ - PIN_PUPDR_FLOATING(GPIOA_OTG_FS_ID) | \ - PIN_PUPDR_FLOATING(GPIOA_OTG_FS_DM) | \ - PIN_PUPDR_FLOATING(GPIOA_OTG_FS_DP) | \ - PIN_PUPDR_PULLUP(GPIOA_SWDIO) | \ - PIN_PUPDR_PULLUP(GPIOA_SWCLK) | \ - PIN_PUPDR_PULLUP(GPIOA_PIN15)) - -#undef VAL_GPIOB_MODER -#define VAL_GPIOB_MODER (PIN_MODE_INPUT(GPIOB_PIN0) | \ - PIN_MODE_INPUT(GPIOB_PIN1) | \ - PIN_MODE_INPUT(GPIOB_PIN2) | \ - PIN_MODE_INPUT(GPIOB_SWO) | \ - PIN_MODE_INPUT(GPIOB_PIN4) | \ - PIN_MODE_INPUT(GPIOB_PIN5) | \ - PIN_MODE_INPUT(GPIOB_LSM303DLHC_SCL) | \ - PIN_MODE_INPUT(GPIOB_PIN7) | \ - PIN_MODE_INPUT(GPIOB_PIN8) | \ - PIN_MODE_INPUT(GPIOB_LSM303DLHC_SDA) | \ - PIN_MODE_INPUT(GPIOB_MP45DT02_CLK_IN) |\ - PIN_MODE_INPUT(GPIOB_PIN11) | \ - PIN_MODE_INPUT(GPIOB_PIN12) | \ - PIN_MODE_INPUT(GPIOB_PIN13) | \ - PIN_MODE_INPUT(GPIOB_PIN14) | \ - PIN_MODE_INPUT(GPIOB_PIN15)) - -#undef VAL_GPIOB_PUPDR -#define VAL_GPIOB_PUPDR (PIN_PUPDR_PULLDOWN(GPIOB_PIN0) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN1) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN2) | \ - PIN_PUPDR_PULLDOWN(GPIOB_SWO) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN4) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN5) | \ - PIN_PUPDR_PULLDOWN(GPIOB_LSM303DLHC_SCL) |\ - PIN_PUPDR_PULLDOWN(GPIOB_PIN7) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN8) | \ - PIN_PUPDR_PULLDOWN(GPIOB_LSM303DLHC_SDA) |\ - PIN_PUPDR_PULLDOWN(GPIOB_MP45DT02_CLK_IN) |\ - PIN_PUPDR_PULLDOWN(GPIOB_PIN11) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN12) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN13) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN14) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN15)) - -#undef VAL_GPIOB_AFRL -#define VAL_GPIOB_AFRL (PIN_AFIO_AF(GPIOB_PIN0, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN1, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN2, 0U) | \ - PIN_AFIO_AF(GPIOB_SWO, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN4, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN5, 0U) | \ - PIN_AFIO_AF(GPIOB_LSM303DLHC_SCL, 0) | \ - PIN_AFIO_AF(GPIOB_PIN7, 0U)) - -#undef VAL_GPIOB_AFRH -#define VAL_GPIOB_AFRH (PIN_AFIO_AF(GPIOB_PIN8, 0U) | \ - PIN_AFIO_AF(GPIOB_LSM303DLHC_SDA, 0) | \ - PIN_AFIO_AF(GPIOB_MP45DT02_CLK_IN, 0U) |\ - PIN_AFIO_AF(GPIOB_PIN11, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN12, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN13, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN14, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN15, 0U)) - -/* C5 Need to be pulldown */ -#undef VAL_GPIOC_MODER -#define VAL_GPIOC_MODER (PIN_MODE_INPUT(GPIOC_OTG_FS_POWER_ON) |\ - PIN_MODE_INPUT(GPIOC_PIN1) | \ - PIN_MODE_INPUT(GPIOC_PIN2) | \ - PIN_MODE_INPUT(GPIOC_CS43L22_AIN4x) | \ - PIN_MODE_INPUT(GPIOC_PIN4) | \ - PIN_MODE_INPUT(GPIOC_PIN5) | \ - PIN_MODE_INPUT(GPIOC_PIN6) | \ - PIN_MODE_INPUT(GPIOC_CS43L22_MCLK) | \ - PIN_MODE_INPUT(GPIOC_PIN8) | \ - PIN_MODE_INPUT(GPIOC_PIN9) | \ - PIN_MODE_INPUT(GPIOC_CS43L22_SCLK) | \ - PIN_MODE_INPUT(GPIOC_PIN11) | \ - PIN_MODE_INPUT(GPIOC_CS43L22_SDIN) | \ - PIN_MODE_INPUT(GPIOC_PIN13) | \ - PIN_MODE_INPUT(GPIOC_OSC32_IN) | \ - PIN_MODE_INPUT(GPIOC_OSC32_OUT)) - -#undef VAL_GPIOC_PUPDR -#define VAL_GPIOC_PUPDR (PIN_PUPDR_PULLUP(GPIOC_OTG_FS_POWER_ON) |\ - PIN_PUPDR_PULLUP(GPIOC_PIN1) | \ - PIN_PUPDR_PULLUP(GPIOC_PIN2) | \ - PIN_PUPDR_PULLUP(GPIOC_CS43L22_AIN4x) |\ - PIN_PUPDR_PULLUP(GPIOC_PIN4) | \ - PIN_PUPDR_PULLDOWN(GPIOC_PIN5) | \ - PIN_PUPDR_PULLUP(GPIOC_PIN6) | \ - PIN_PUPDR_PULLUP(GPIOC_CS43L22_MCLK) | \ - PIN_PUPDR_PULLUP(GPIOC_PIN8) | \ - PIN_PUPDR_PULLUP(GPIOC_PIN9) | \ - PIN_PUPDR_PULLUP(GPIOC_CS43L22_SCLK) | \ - PIN_PUPDR_PULLUP(GPIOC_PIN11) | \ - PIN_PUPDR_PULLUP(GPIOC_CS43L22_SDIN) | \ - PIN_PUPDR_PULLUP(GPIOC_PIN13) | \ - PIN_PUPDR_PULLUP(GPIOC_OSC32_IN) | \ - PIN_PUPDR_PULLUP(GPIOC_OSC32_OUT)) - -/* Set all GPIOD pins to INPUT & PULLUP to avoid FLOATING */ -#undef VAL_GPIOD_MODER -#define VAL_GPIOD_MODER (PIN_MODE_INPUT(GPIOD_PIN0) | \ - PIN_MODE_INPUT(GPIOD_PIN1) | \ - PIN_MODE_INPUT(GPIOD_PIN2) | \ - PIN_MODE_INPUT(GPIOD_PIN3) | \ - PIN_MODE_INPUT(GPIOD_CS43L22_RESET) | \ - PIN_MODE_INPUT(GPIOD_OverCurrent) | \ - PIN_MODE_INPUT(GPIOD_PIN6) | \ - PIN_MODE_INPUT(GPIOD_PIN7) | \ - PIN_MODE_INPUT(GPIOD_PIN8) | \ - PIN_MODE_INPUT(GPIOD_PIN9) | \ - PIN_MODE_INPUT(GPIOD_PIN10) | \ - PIN_MODE_INPUT(GPIOD_PIN11) | \ - PIN_MODE_INPUT(GPIOD_LED4) | \ - PIN_MODE_INPUT(GPIOD_LED3) | \ - PIN_MODE_INPUT(GPIOD_LED5) | \ - PIN_MODE_INPUT(GPIOD_LED6)) - -#undef VAL_GPIOD_PUPDR -#define VAL_GPIOD_PUPDR (PIN_PUPDR_PULLUP(GPIOD_PIN0) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN1) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN2) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN3) | \ - PIN_PUPDR_PULLUP(GPIOD_CS43L22_RESET) |\ - PIN_PUPDR_PULLUP(GPIOD_OverCurrent) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN6) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN7) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN8) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN9) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN10) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN11) | \ - PIN_PUPDR_PULLUP(GPIOD_LED4) | \ - PIN_PUPDR_PULLUP(GPIOD_LED3) | \ - PIN_PUPDR_PULLUP(GPIOD_LED5) | \ - PIN_PUPDR_PULLUP(GPIOD_LED6)) - -/* Set all GPIOE pins to INPUT & PULLUP to avoid FLOATING */ -#undef VAL_GPIOE_MODER -#define VAL_GPIOE_MODER (PIN_MODE_INPUT(GPIOE_L3GD20_INT1) | \ - PIN_MODE_INPUT(GPIOE_L3GD20_INT2) | \ - PIN_MODE_INPUT(GPIOE_LSM303DLHC_DRDY) |\ - PIN_MODE_INPUT(GPIOE_L3GD20_CS) | \ - PIN_MODE_INPUT(GPIOE_LSM303DLHC_INT1) |\ - PIN_MODE_INPUT(GPIOE_LSM303DLHC_INT2) |\ - PIN_MODE_INPUT(GPIOE_PIN6) | \ - PIN_MODE_INPUT(GPIOE_PIN7) | \ - PIN_MODE_INPUT(GPIOE_PIN8) | \ - PIN_MODE_INPUT(GPIOE_PIN9) | \ - PIN_MODE_INPUT(GPIOE_PIN10) | \ - PIN_MODE_INPUT(GPIOE_PIN11) | \ - PIN_MODE_INPUT(GPIOE_PIN12) | \ - PIN_MODE_INPUT(GPIOE_PIN13) | \ - PIN_MODE_INPUT(GPIOE_PIN14) | \ - PIN_MODE_INPUT(GPIOE_PIN15)) - -#undef VAL_GPIOE_PUPDR -#define VAL_GPIOE_PUPDR (PIN_PUPDR_PULLUP(GPIOE_L3GD20_INT1) | \ - PIN_PUPDR_PULLUP(GPIOE_L3GD20_INT2) | \ - PIN_PUPDR_PULLUP(GPIOE_LSM303DLHC_DRDY) |\ - PIN_PUPDR_PULLUP(GPIOE_L3GD20_CS) | \ - PIN_PUPDR_PULLUP(GPIOE_LSM303DLHC_INT1) |\ - PIN_PUPDR_PULLUP(GPIOE_LSM303DLHC_INT2) |\ - PIN_PUPDR_PULLUP(GPIOE_PIN6) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN7) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN8) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN9) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN10) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN11) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN12) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN13) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN14) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN15)) - diff --git a/keyboards/keychron/k3_max/config.h b/keyboards/keychron/k3_max/config.h deleted file mode 100644 index d85e80e503..0000000000 --- a/keyboards/keychron/k3_max/config.h +++ /dev/null @@ -1,84 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#pragma once - -/* Caps lock LED */ -#define LED_CAPS_LOCK_PIN A13 -#define LED_PIN_ON_STATE 1 - -#ifdef LK_WIRELESS_ENABLE -/* Hardware configuration */ -# define P2P4_MODE_SELECT_PIN A10 -# define BT_MODE_SELECT_PIN A9 - -# define LKBT51_RESET_PIN C4 -# define LKBT51_INT_INPUT_PIN B1 -# define BLUETOOTH_INT_OUTPUT_PIN A4 - -# define USB_POWER_SENSE_PIN B0 -# define USB_POWER_CONNECTED_LEVEL 0 - -# define BAT_CHARGING_PIN B13 -# define BAT_CHARGING_LEVEL 0 - -# define BAT_LOW_LED_PIN B12 -# define BAT_LOW_LED_PIN_ON_STATE 1 - -# define BT_HOST_DEVICES_COUNT 3 - -# if defined(RGB_MATRIX_ENABLE) || defined(LED_MATRIX_ENABLE) - -# define LED_DRIVER_SHUTDOWN_PIN B7 - -# define BT_HOST_LED_MATRIX_LIST \ - { 17, 18, 19 } - -# define P2P4G_HOST_LED_MATRIX_LIST \ - { 20 } - -# 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 - -/* Reinit LED driver on tranport changed */ -# define REINIT_LED_DRIVER 1 - -# endif - -/* Keep USB connection in blueooth mode */ -# define KEEP_USB_CONNECTION_IN_WIRELESS_MODE - -/* Enable bluetooth NKRO */ -# define WIRELESS_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 - -/* Factory test keys */ -#define FN_KEY_1 MO(1) -#define FN_KEY_2 MO(3) - -#define MATRIX_IO_DELAY 10 diff --git a/keyboards/keychron/k3_max/firmware/keychron_k3_max_ansi_rgb_via.bin b/keyboards/keychron/k3_max/firmware/keychron_k3_max_ansi_rgb_via.bin deleted file mode 100644 index a8d8b00775..0000000000 Binary files a/keyboards/keychron/k3_max/firmware/keychron_k3_max_ansi_rgb_via.bin and /dev/null differ diff --git a/keyboards/keychron/k3_max/firmware/keychron_k3_max_ansi_white_via.bin b/keyboards/keychron/k3_max/firmware/keychron_k3_max_ansi_white_via.bin deleted file mode 100644 index 4b2093dcb7..0000000000 Binary files a/keyboards/keychron/k3_max/firmware/keychron_k3_max_ansi_white_via.bin and /dev/null differ diff --git a/keyboards/keychron/k3_max/firmware/keychron_k3_max_iso_rgb_via.bin b/keyboards/keychron/k3_max/firmware/keychron_k3_max_iso_rgb_via.bin deleted file mode 100644 index 054e65a5ba..0000000000 Binary files a/keyboards/keychron/k3_max/firmware/keychron_k3_max_iso_rgb_via.bin and /dev/null differ diff --git a/keyboards/keychron/k3_max/firmware/keychron_k3_max_iso_white_via.bin b/keyboards/keychron/k3_max/firmware/keychron_k3_max_iso_white_via.bin deleted file mode 100644 index 56eb2711f7..0000000000 Binary files a/keyboards/keychron/k3_max/firmware/keychron_k3_max_iso_white_via.bin and /dev/null differ diff --git a/keyboards/keychron/k3_max/firmware/keychron_k3_max_jis_rgb_via.bin b/keyboards/keychron/k3_max/firmware/keychron_k3_max_jis_rgb_via.bin deleted file mode 100644 index f19cfe241c..0000000000 Binary files a/keyboards/keychron/k3_max/firmware/keychron_k3_max_jis_rgb_via.bin and /dev/null differ diff --git a/keyboards/keychron/k3_max/firmware/keychron_k3_max_jis_white_via.bin b/keyboards/keychron/k3_max/firmware/keychron_k3_max_jis_white_via.bin deleted file mode 100644 index ef040097d6..0000000000 Binary files a/keyboards/keychron/k3_max/firmware/keychron_k3_max_jis_white_via.bin and /dev/null differ diff --git a/keyboards/keychron/k3_max/halconf.h b/keyboards/keychron/k3_max/halconf.h deleted file mode 100644 index 37bcc7c47b..0000000000 --- a/keyboards/keychron/k3_max/halconf.h +++ /dev/null @@ -1,31 +0,0 @@ -/* Copyright 2024 @ 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 - -#define _CHIBIOS_HAL_CONF_VER_8_0_ - -#define HAL_USE_SPI TRUE - -#ifdef LK_WIRELESS_ENABLE -# define HAL_USE_RTC TRUE -#endif - -#if defined(LK_WIRELESS_ENABLE) || defined(ENCODER_ENABLE) -# define PAL_USE_CALLBACKS TRUE -#endif - -#include_next diff --git a/keyboards/keychron/k3_max/info.json b/keyboards/keychron/k3_max/info.json deleted file mode 100644 index 8a55921db1..0000000000 --- a/keyboards/keychron/k3_max/info.json +++ /dev/null @@ -1,321 +0,0 @@ -{ - "keyboard_name": "Keychron K3 Max", - "manufacturer": "Keychron", - "url": "https://github.com/Keychron", - "maintainer": "lokher", - "processor": "STM32F401", - "bootloader": "stm32-dfu", - "usb": { - "vid": "0x3434" - }, - "features": { - "bootmagic": true, - "extrakey": true, - "mousekey": true, - "dip_switch": true, - "nkro": true, - "raw": true, - "send_string": true - }, - "matrix_pins": { - "cols": ["C6", "C7", "C8", "A14", "A15", "C10", "C11", "C13", "C14", "C15", "C0", "C1", "C2", "C3", "A0", "A1"], - "rows": ["C12", "D2", "B3", "B4", "B5", "B6"] - }, - "diode_direction": "ROW2COL", - "dip_switch": { - "pins": ["B14"] - }, - "eeprom": { - "wear_leveling": { - "driver": "embedded_flash", - "logical_size": 2048, - "backing_size": 4096 - } - }, - "layouts": { - "LAYOUT_ansi_84": { - "layout": [ - {"matrix":[0, 0], "x":0, "y":0}, - {"matrix":[0, 1], "x":1, "y":0}, - {"matrix":[0, 2], "x":2, "y":0}, - {"matrix":[0, 3], "x":3, "y":0}, - {"matrix":[0, 4], "x":4, "y":0}, - {"matrix":[0, 5], "x":5, "y":0}, - {"matrix":[0, 6], "x":6, "y":0}, - {"matrix":[0, 7], "x":7, "y":0}, - {"matrix":[0, 8], "x":8, "y":0}, - {"matrix":[0, 9], "x":9, "y":0}, - {"matrix":[0,10], "x":10, "y":0}, - {"matrix":[0,11], "x":11, "y":0}, - {"matrix":[0,12], "x":12, "y":0}, - {"matrix":[0,13], "x":13, "y":0}, - {"matrix":[0,14], "x":14, "y":0}, - {"matrix":[0,15], "x":15, "y":0}, - - {"matrix":[1, 0], "x":0, "y":1}, - {"matrix":[1, 1], "x":1, "y":1}, - {"matrix":[1, 2], "x":2, "y":1}, - {"matrix":[1, 3], "x":3, "y":1}, - {"matrix":[1, 4], "x":4, "y":1}, - {"matrix":[1, 5], "x":5, "y":1}, - {"matrix":[1, 6], "x":6, "y":1}, - {"matrix":[1, 7], "x":7, "y":1}, - {"matrix":[1, 8], "x":8, "y":1}, - {"matrix":[1, 9], "x":9, "y":1}, - {"matrix":[1,10], "x":10, "y":1}, - {"matrix":[1,11], "x":11, "y":1}, - {"matrix":[1,12], "x":12, "y":1}, - {"matrix":[1,13], "x":13, "y":1, "w":2}, - {"matrix":[1,15], "x":15, "y":1}, - - {"matrix":[2, 0], "x":0, "y":2, "w":1.5}, - {"matrix":[2, 1], "x":1.5, "y":2}, - {"matrix":[2, 2], "x":2.5, "y":2}, - {"matrix":[2, 3], "x":3.5, "y":2}, - {"matrix":[2, 4], "x":4.5, "y":2}, - {"matrix":[2, 5], "x":5.5, "y":2}, - {"matrix":[2, 6], "x":6.5, "y":2}, - {"matrix":[2, 7], "x":7.5, "y":2}, - {"matrix":[2, 8], "x":8.5, "y":2}, - {"matrix":[2, 9], "x":9.5, "y":2}, - {"matrix":[2,10], "x":10.5, "y":2}, - {"matrix":[2,11], "x":11.5, "y":2}, - {"matrix":[2,12], "x":12.5, "y":2}, - {"matrix":[2,13], "x":13.5, "y":2, "w":1.5}, - {"matrix":[2,15], "x":15, "y":2}, - - {"matrix":[3, 0], "x":0, "y":3, "w":1.75}, - {"matrix":[3, 1], "x":1.75, "y":3}, - {"matrix":[3, 2], "x":2.75, "y":3}, - {"matrix":[3, 3], "x":3.75, "y":3}, - {"matrix":[3, 4], "x":4.75, "y":3}, - {"matrix":[3, 5], "x":5.75, "y":3}, - {"matrix":[3, 6], "x":6.75, "y":3}, - {"matrix":[3, 7], "x":7.75, "y":3}, - {"matrix":[3, 8], "x":8.75, "y":3}, - {"matrix":[3, 9], "x":9.75, "y":3}, - {"matrix":[3,10], "x":10.75, "y":3}, - {"matrix":[3,11], "x":11.75, "y":3}, - {"matrix":[3,13], "x":12.75, "y":3, "w":2.25}, - {"matrix":[3,15], "x":15, "y":3}, - - {"matrix":[4, 0], "x":0, "y":4, "w":2.25}, - {"matrix":[4, 2], "x":2.25, "y":4}, - {"matrix":[4, 3], "x":3.25, "y":4}, - {"matrix":[4, 4], "x":4.25, "y":4}, - {"matrix":[4, 5], "x":5.25, "y":4}, - {"matrix":[4, 6], "x":6.25, "y":4}, - {"matrix":[4, 7], "x":7.25, "y":4}, - {"matrix":[4, 8], "x":8.25, "y":4}, - {"matrix":[4, 9], "x":9.25, "y":4}, - {"matrix":[4,10], "x":10.25, "y":4}, - {"matrix":[4,11], "x":11.25, "y":4}, - {"matrix":[4,13], "x":12.25, "y":4, "w":1.75}, - {"matrix":[4,14], "x":14, "y":4}, - {"matrix":[4,15], "x":15, "y":4}, - - {"matrix":[5, 0], "x":0, "y":5, "w":1.25}, - {"matrix":[5, 1], "x":1.25, "y":5, "w":1.25}, - {"matrix":[5, 2], "x":2.5, "y":5, "w":1.25}, - {"matrix":[5, 6], "x":3.75, "y":5, "w":6.25}, - {"matrix":[5,10], "x":10, "y":5}, - {"matrix":[5,11], "x":11, "y":5}, - {"matrix":[5,12], "x":12, "y":5}, - {"matrix":[5,13], "x":13, "y":5}, - {"matrix":[5,14], "x":14, "y":5}, - {"matrix":[5,15], "x":15, "y":5} - ] - } - "LAYOUT_iso_85": { - "layout": [ - {"matrix":[0, 0], "x":0, "y":0}, - {"matrix":[0, 1], "x":1, "y":0}, - {"matrix":[0, 2], "x":2, "y":0}, - {"matrix":[0, 3], "x":3, "y":0}, - {"matrix":[0, 4], "x":4, "y":0}, - {"matrix":[0, 5], "x":5, "y":0}, - {"matrix":[0, 6], "x":6, "y":0}, - {"matrix":[0, 7], "x":7, "y":0}, - {"matrix":[0, 8], "x":8, "y":0}, - {"matrix":[0, 9], "x":9, "y":0}, - {"matrix":[0,10], "x":10, "y":0}, - {"matrix":[0,11], "x":11, "y":0}, - {"matrix":[0,12], "x":12, "y":0}, - {"matrix":[0,13], "x":13, "y":0}, - {"matrix":[0,14], "x":14, "y":0}, - {"matrix":[0,15], "x":15, "y":0}, - - {"matrix":[1, 0], "x":0, "y":1}, - {"matrix":[1, 1], "x":1, "y":1}, - {"matrix":[1, 2], "x":2, "y":1}, - {"matrix":[1, 3], "x":3, "y":1}, - {"matrix":[1, 4], "x":4, "y":1}, - {"matrix":[1, 5], "x":5, "y":1}, - {"matrix":[1, 6], "x":6, "y":1}, - {"matrix":[1, 7], "x":7, "y":1}, - {"matrix":[1, 8], "x":8, "y":1}, - {"matrix":[1, 9], "x":9, "y":1}, - {"matrix":[1,10], "x":10, "y":1}, - {"matrix":[1,11], "x":11, "y":1}, - {"matrix":[1,12], "x":12, "y":1}, - {"matrix":[1,13], "x":13, "y":1, "w":2}, - {"matrix":[1,15], "x":15, "y":1}, - - {"matrix":[2, 0], "x":0, "y":2, "w":1.5}, - {"matrix":[2, 1], "x":1.5, "y":2}, - {"matrix":[2, 2], "x":2.5, "y":2}, - {"matrix":[2, 3], "x":3.5, "y":2}, - {"matrix":[2, 4], "x":4.5, "y":2}, - {"matrix":[2, 5], "x":5.5, "y":2}, - {"matrix":[2, 6], "x":6.5, "y":2}, - {"matrix":[2, 7], "x":7.5, "y":2}, - {"matrix":[2, 8], "x":8.5, "y":2}, - {"matrix":[2, 9], "x":9.5, "y":2}, - {"matrix":[2,10], "x":10.5, "y":2}, - {"matrix":[2,11], "x":11.5, "y":2}, - {"matrix":[2,12], "x":12.5, "y":2}, - {"matrix":[2,15], "x":15, "y":2}, - - {"matrix":[3, 0], "x":0, "y":3, "w":1.75}, - {"matrix":[3, 1], "x":1.75, "y":3}, - {"matrix":[3, 2], "x":2.75, "y":3}, - {"matrix":[3, 3], "x":3.75, "y":3}, - {"matrix":[3, 4], "x":4.75, "y":3}, - {"matrix":[3, 5], "x":5.75, "y":3}, - {"matrix":[3, 6], "x":6.75, "y":3}, - {"matrix":[3, 7], "x":7.75, "y":3}, - {"matrix":[3, 8], "x":8.75, "y":3}, - {"matrix":[3, 9], "x":9.75, "y":3}, - {"matrix":[3,10], "x":10.75, "y":3}, - {"matrix":[3,11], "x":11.75, "y":3}, - {"matrix":[3,13], "x":12.75, "y":3}, - {"matrix":[2,13], "x":13.5, "y":2, "w": 1.25, "h": 2}, - {"matrix":[3,15], "x":15, "y":3}, - - {"matrix":[4, 0], "x":0, "y":4, "w":1.25}, - {"matrix":[4, 1], "x":1.25, "y":4}, - {"matrix":[4, 2], "x":2.25, "y":4}, - {"matrix":[4, 3], "x":3.25, "y":4}, - {"matrix":[4, 4], "x":4.25, "y":4}, - {"matrix":[4, 5], "x":5.25, "y":4}, - {"matrix":[4, 6], "x":6.25, "y":4}, - {"matrix":[4, 7], "x":7.25, "y":4}, - {"matrix":[4, 8], "x":8.25, "y":4}, - {"matrix":[4, 9], "x":9.25, "y":4}, - {"matrix":[4,10], "x":10.25, "y":4}, - {"matrix":[4,11], "x":11.25, "y":4}, - {"matrix":[4,13], "x":12.25, "y":4, "w":1.75}, - {"matrix":[4,14], "x":14, "y":4}, - {"matrix":[4,15], "x":15, "y":4}, - - {"matrix":[5, 0], "x":0, "y":5, "w":1.25}, - {"matrix":[5, 1], "x":1.25, "y":5, "w":1.25}, - {"matrix":[5, 2], "x":2.5, "y":5, "w":1.25}, - {"matrix":[5, 6], "x":3.75, "y":5, "w":6.25}, - {"matrix":[5,10], "x":10, "y":5}, - {"matrix":[5,11], "x":11, "y":5}, - {"matrix":[5,12], "x":12, "y":5}, - {"matrix":[5,13], "x":13, "y":5}, - {"matrix":[5,14], "x":14, "y":5}, - {"matrix":[5,15], "x":15, "y":5} - ] - } - "LAYOUT_jis_87": { - "layout": [ - {"matrix": [0, 0], "x": 0, "y": 0}, - {"matrix": [0, 1], "x": 1, "y": 0}, - {"matrix": [0, 2], "x": 2, "y": 0}, - {"matrix": [0, 3], "x": 3, "y": 0}, - {"matrix": [0, 4], "x": 4, "y": 0}, - {"matrix": [0, 5], "x": 5, "y": 0}, - {"matrix": [0, 6], "x": 6, "y": 0}, - {"matrix": [0, 7], "x": 7, "y": 0}, - {"matrix": [0, 8], "x": 8, "y": 0}, - {"matrix": [0, 9], "x": 9, "y": 0}, - {"matrix": [0, 10], "x": 10, "y": 0}, - {"matrix": [0, 11], "x": 11, "y": 0}, - {"matrix": [0, 12], "x": 12, "y": 0}, - {"matrix": [0, 13], "x": 13, "y": 0}, - {"matrix": [0, 14], "x": 14, "y": 0}, - {"matrix": [0, 15], "x": 15, "y": 0}, - - {"matrix": [1, 0], "x": 0, "y": 1}, - {"matrix": [1, 1], "x": 1, "y": 1}, - {"matrix": [1, 2], "x": 2, "y": 1}, - {"matrix": [1, 3], "x": 3, "y": 1}, - {"matrix": [1, 4], "x": 4, "y": 1}, - {"matrix": [1, 5], "x": 5, "y": 1}, - {"matrix": [1, 6], "x": 6, "y": 1}, - {"matrix": [1, 7], "x": 7, "y": 1}, - {"matrix": [1, 8], "x": 8, "y": 1}, - {"matrix": [1, 9], "x": 9, "y": 1}, - {"matrix": [1, 10], "x": 10, "y": 1}, - {"matrix": [1, 11], "x": 11, "y": 1}, - {"matrix": [1, 12], "x": 12, "y": 1}, - {"matrix": [1, 13], "x": 13, "y": 1}, - {"matrix": [1, 14], "x": 14, "y": 1}, - {"matrix": [1, 15], "x": 15, "y": 1}, - - {"matrix": [2, 0], "x": 0, "y": 2, "w": 1.5}, - {"matrix": [2, 1], "x": 1.5, "y": 2}, - {"matrix": [2, 2], "x": 2.5, "y": 2}, - {"matrix": [2, 3], "x": 3.5, "y": 2}, - {"matrix": [2, 4], "x": 4.5, "y": 2}, - {"matrix": [2, 5], "x": 5.5, "y": 2}, - {"matrix": [2, 6], "x": 6.5, "y": 2}, - {"matrix": [2, 7], "x": 7.5, "y": 2}, - {"matrix": [2, 8], "x": 8.5, "y": 2}, - {"matrix": [2, 9], "x": 9.5, "y": 2}, - {"matrix": [2, 10], "x": 10.5, "y": 2}, - {"matrix": [2, 11], "x": 11.5, "y": 2}, - {"matrix": [2, 12], "x": 12.5, "y": 2}, - {"matrix": [2, 15], "x": 15, "y": 2}, - - {"matrix": [3, 0], "x": 0, "y": 3, "w": 1.75}, - {"matrix": [3, 1], "x": 1.75, "y": 3}, - {"matrix": [3, 2], "x": 2.75, "y": 3}, - {"matrix": [3, 3], "x": 3.75, "y": 3}, - {"matrix": [3, 4], "x": 4.75, "y": 3}, - {"matrix": [3, 5], "x": 5.75, "y": 3}, - {"matrix": [3, 6], "x": 6.75, "y": 3}, - {"matrix": [3, 7], "x": 7.75, "y": 3}, - {"matrix": [3, 8], "x": 8.75, "y": 3}, - {"matrix": [3, 9], "x": 9.75, "y": 3}, - {"matrix": [3, 10], "x": 10.75, "y": 3}, - {"matrix": [3, 11], "x": 11.75, "y": 3}, - {"matrix": [3, 13], "x": 12.75, "y": 3}, - {"matrix": [2, 13], "x": 13.75, "y": 2, "w": 1.25, "h": 2}, - {"matrix": [3, 15], "x": 15, "y": 3}, - - {"matrix": [4, 0], "x": 0, "y": 4, "w": 2.25}, - {"matrix": [4, 2], "x": 2.25, "y": 4}, - {"matrix": [4, 3], "x": 3.25, "y": 4}, - {"matrix": [4, 4], "x": 4.25, "y": 4}, - {"matrix": [4, 5], "x": 5.25, "y": 4}, - {"matrix": [4, 6], "x": 6.25, "y": 4}, - {"matrix": [4, 7], "x": 7.25, "y": 4}, - {"matrix": [4, 8], "x": 8.25, "y": 4}, - {"matrix": [4, 9], "x": 9.25, "y": 4}, - {"matrix": [4, 10], "x": 10.25, "y": 4}, - {"matrix": [4, 11], "x": 11.25, "y": 4}, - {"matrix": [4, 13], "x": 12.25, "y": 4}, - {"matrix": [4, 14], "x": 13.25, "y": 4, "w": 1.75}, - {"matrix": [4, 15], "x": 15, "y": 4}, - - {"matrix": [5, 0], "x": 0, "y": 5}, - {"matrix": [5, 1], "x": 1, "y": 5}, - {"matrix": [5, 2], "x": 2, "y": 5}, - {"matrix": [5, 3], "x": 3, "y": 5}, - {"matrix": [5, 6], "x": 4, "y": 5, "w": 5}, - {"matrix": [5, 9], "x": 9, "y": 5}, - {"matrix": [5, 10], "x": 10, "y": 5}, - {"matrix": [5, 11], "x": 11, "y": 5}, - {"matrix": [5, 12], "x": 12, "y": 5}, - {"matrix": [5, 13], "x": 13, "y": 5}, - {"matrix": [5, 14], "x": 14, "y": 5}, - {"matrix": [5, 15], "x": 15, "y": 5} - ] - } - } - -} diff --git a/keyboards/keychron/k3_max/iso/rgb/config.h b/keyboards/keychron/k3_max/iso/rgb/config.h deleted file mode 100644 index 89953553ef..0000000000 --- a/keyboards/keychron/k3_max/iso/rgb/config.h +++ /dev/null @@ -1,56 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#pragma once - -#ifdef RGB_MATRIX_ENABLE -/* RGB Matrix driver configuration */ -# define DRIVER_COUNT 2 -# define RGB_MATRIX_LED_COUNT 85 - -# define SPI_SCK_PIN A5 -# define SPI_MISO_PIN A6 -# define SPI_MOSI_PIN A7 - -# define DRIVER_CS_PINS \ - { B8, B9 } -# define SNLED23751_SPI_DIVISOR 16 -# define SPI_DRIVER SPID1 - -/* Scan phase of led driver set as MSKPHASE_9CHANNEL(defined as 0x03 in snled27351.h) */ -# define SNLED27351_PHASE_CHANNEL MSKPHASE_9CHANNEL - -/* Set LED driver current */ -# define SNLED27351_CURRENT_TUNE \ - { 0x12, 0x12, 0x12, 0x12, 0x12, 0x12, 0x12, 0x12, 0x12, 0x12, 0x12, 0x12 } - -/* Set to infinit, which is use in USB mode by default */ -# define RGB_MATRIX_TIMEOUT RGB_MATRIX_TIMEOUT_INFINITE - -/* Allow shutdown of led driver to save power */ -# define RGB_MATRIX_DRIVER_SHUTDOWN_ENABLE -/* Turn off backlight on low brightness to save power */ -# define RGB_MATRIX_BRIGHTNESS_TURN_OFF_VAL 48 - -/* Indications */ -# define DIM_CAPS_LOCK -# define CAPS_LOCK_INDEX 46 -# define LOW_BAT_IND_INDEX { 78 } - -# define RGB_MATRIX_KEYPRESSES -# define RGB_MATRIX_FRAMEBUFFER_EFFECTS - -#endif diff --git a/keyboards/keychron/k3_max/iso/rgb/info.json b/keyboards/keychron/k3_max/iso/rgb/info.json deleted file mode 100644 index 65ee005586..0000000000 --- a/keyboards/keychron/k3_max/iso/rgb/info.json +++ /dev/null @@ -1,36 +0,0 @@ -{ - "usb": { - "pid": "0x0A31", - "device_version": "1.0.0" - }, - "features": { - "rgb_matrix": true - }, - "rgb_matrix": { - "driver": "snled27351_spi", - "sleep": true, - "animations": { - "band_spiral_val": true, - "breathing": true, - "cycle_all": true, - "cycle_left_right": true, - "cycle_out_in": true, - "cycle_out_in_dual": true, - "cycle_pinwheel": true, - "cycle_spiral": true, - "cycle_up_down": true, - "digital_rain": true, - "dual_beacon": true, - "jellybean_raindrops": true, - "pixel_rain": true, - "rainbow_beacon": true, - "rainbow_moving_chevron": true, - "solid_reactive_multinexus": true, - "solid_reactive_multiwide": true, - "solid_reactive_simple": true, - "solid_splash": true, - "splash": true, - "typing_heatmap": true - } - } -} diff --git a/keyboards/keychron/k3_max/iso/rgb/keymaps/default/keymap.c b/keyboards/keychron/k3_max/iso/rgb/keymaps/default/keymap.c deleted file mode 100644 index a7399aadf9..0000000000 --- a/keyboards/keychron/k3_max/iso/rgb/keymaps/default/keymap.c +++ /dev/null @@ -1,67 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#include QMK_KEYBOARD_H -#include "keychron_common.h" - -enum layers { - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN, -}; -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { -[MAC_BASE] = LAYOUT_iso_85( - KC_ESC, KC_BRID, KC_BRIU, KC_MCTRL, KC_LNPAD, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_SNAP, KC_DEL, RGB_MOD, - KC_GRV, 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_PGUP, - 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_PGDN, - 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_NUHS, KC_ENT, KC_HOME, - KC_LSFT, KC_NUBS, 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_LOPTN, KC_LCMMD, KC_SPC, KC_RCMMD,MO(MAC_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - -[MAC_FN] = LAYOUT_iso_85( - _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, RGB_TOG, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - -[WIN_BASE] = LAYOUT_iso_85( - KC_ESC, 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_PSCR, KC_DEL, RGB_MOD, - KC_GRV, 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_PGUP, - 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_PGDN, - 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_NUHS, KC_ENT, KC_HOME, - KC_LSFT, KC_NUBS, 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_SPC, KC_RALT, MO(WIN_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - -[WIN_FN] = LAYOUT_iso_85( - _______, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, RGB_TOG, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______) -}; - -// clang-format on -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - if (!process_record_keychron_common(keycode, record)) { - return false; - } - return true; -} diff --git a/keyboards/keychron/k3_max/iso/rgb/keymaps/via/keymap.c b/keyboards/keychron/k3_max/iso/rgb/keymaps/via/keymap.c deleted file mode 100644 index a7399aadf9..0000000000 --- a/keyboards/keychron/k3_max/iso/rgb/keymaps/via/keymap.c +++ /dev/null @@ -1,67 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#include QMK_KEYBOARD_H -#include "keychron_common.h" - -enum layers { - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN, -}; -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { -[MAC_BASE] = LAYOUT_iso_85( - KC_ESC, KC_BRID, KC_BRIU, KC_MCTRL, KC_LNPAD, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_SNAP, KC_DEL, RGB_MOD, - KC_GRV, 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_PGUP, - 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_PGDN, - 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_NUHS, KC_ENT, KC_HOME, - KC_LSFT, KC_NUBS, 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_LOPTN, KC_LCMMD, KC_SPC, KC_RCMMD,MO(MAC_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - -[MAC_FN] = LAYOUT_iso_85( - _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, RGB_TOG, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - -[WIN_BASE] = LAYOUT_iso_85( - KC_ESC, 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_PSCR, KC_DEL, RGB_MOD, - KC_GRV, 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_PGUP, - 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_PGDN, - 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_NUHS, KC_ENT, KC_HOME, - KC_LSFT, KC_NUBS, 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_SPC, KC_RALT, MO(WIN_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - -[WIN_FN] = LAYOUT_iso_85( - _______, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, RGB_TOG, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______) -}; - -// clang-format on -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - if (!process_record_keychron_common(keycode, record)) { - return false; - } - return true; -} diff --git a/keyboards/keychron/k3_max/iso/rgb/keymaps/via/rules.mk b/keyboards/keychron/k3_max/iso/rgb/keymaps/via/rules.mk deleted file mode 100644 index 1e5b99807c..0000000000 --- a/keyboards/keychron/k3_max/iso/rgb/keymaps/via/rules.mk +++ /dev/null @@ -1 +0,0 @@ -VIA_ENABLE = yes diff --git a/keyboards/keychron/k3_max/iso/rgb/rgb.c b/keyboards/keychron/k3_max/iso/rgb/rgb.c deleted file mode 100644 index 140f2dd4be..0000000000 --- a/keyboards/keychron/k3_max/iso/rgb/rgb.c +++ /dev/null @@ -1,148 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#include "quantum.h" - -// clang-format off -#ifdef RGB_MATRIX_ENABLE -const snled27351_led_t g_snled27351_leds[RGB_MATRIX_LED_COUNT] = { -/* Refer to SNLED27351 manual for these locations - * driver - * | R location - * | | G location - * | | | B location - * | | | | */ - {0, I_1, G_1, H_1}, - {0, I_2, G_2, H_2}, - {0, I_3, G_3, H_3}, - {0, I_4, G_4, H_4}, - {0, I_5, G_5, H_5}, - {0, I_6, G_6, H_6}, - {0, I_7, G_7, H_7}, - {0, I_8, G_8, H_8}, - {0, I_9, G_9, H_9}, - {0, I_10, G_10, H_10}, - {0, I_11, G_11, H_11}, - {0, I_12, G_12, H_12}, - {0, I_13, G_13, H_13}, - {0, I_14, G_14, H_14}, - {0, I_15, G_15, H_15}, - {0, I_16, G_16, H_16}, - - {0, F_1, D_1, E_1}, - {0, F_2, D_2, E_2}, - {0, F_3, D_3, E_3}, - {0, F_4, D_4, E_4}, - {0, F_5, D_5, E_5}, - {0, F_6, D_6, E_6}, - {0, F_7, D_7, E_7}, - {0, F_8, D_8, E_8}, - {0, F_9, D_9, E_9}, - {0, F_10, D_10, E_10}, - {0, F_11, D_11, E_11}, - {0, F_12, D_12, E_12}, - {0, F_13, D_13, E_13}, - {0, F_14, D_14, E_14}, - {0, F_16, D_16, E_16}, - - {0, A_1, C_1, B_1}, - {0, A_2, C_2, B_2}, - {0, A_3, C_3, B_3}, - {0, A_4, C_4, B_4}, - {0, A_5, C_5, B_5}, - {0, A_6, C_6, B_6}, - {0, A_7, C_7, B_7}, - {0, A_8, C_8, B_8}, - {0, A_9, C_9, B_9}, - {0, A_10, C_10, B_10}, - {0, A_11, C_11, B_11}, - {0, A_12, C_12, B_12}, - {0, A_13, C_13, B_13}, - {0, A_14, C_14, B_14}, - {0, A_16, C_16, B_16}, - - {1, I_1, G_1, H_1}, - {1, I_2, G_2, H_2}, - {1, I_3, G_3, H_3}, - {1, I_4, G_4, H_4}, - {1, I_5, G_5, H_5}, - {1, I_6, G_6, H_6}, - {1, I_7, G_7, H_7}, - {1, I_8, G_8, H_8}, - {1, I_9, G_9, H_9}, - {1, I_10, G_10, H_10}, - {1, I_11, G_11, H_11}, - {1, I_12, G_12, H_12}, - {1, I_14, G_14, H_14}, - {1, I_16, G_16, H_16}, - - {1, C_1, A_1, B_1}, - {1, C_2, A_2, B_2}, - {1, C_3, A_3, B_3}, - {1, C_4, A_4, B_4}, - {1, C_5, A_5, B_5}, - {1, C_6, A_6, B_6}, - {1, C_7, A_7, B_7}, - {1, C_8, A_8, B_8}, - {1, C_9, A_9, B_9}, - {1, C_10, A_10, B_10}, - {1, C_11, A_11, B_11}, - {1, C_12, A_12, B_12}, - {1, C_14, A_14, B_14}, - {1, C_15, A_15, B_15}, - {1, C_16, A_16, B_16}, - - {1, F_1, D_1, E_1}, - {1, F_2, D_2, E_2}, - {1, F_3, D_3, E_3}, - {1, F_7, D_7, E_7}, - {1, F_11, D_11, E_11}, - {1, F_12, D_12, E_12}, - {1, F_13, D_13, E_13}, - {1, F_14, D_14, E_14}, - {1, F_15, D_15, E_15}, - {1, F_16, D_16, E_16}, - -}; - -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, NO_LED, 30 }, - { 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, NO_LED, 45 }, - { 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, NO_LED, 58, NO_LED, 59 }, - { 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, NO_LED, 72, 73, 74 }, - { 75, 76, 77, NO_LED, NO_LED, NO_LED, 78, NO_LED, NO_LED, NO_LED, 79, 80, 81, 82, 83, 84 } - }, - { - {0, 0}, {14, 0}, {29, 0}, {44, 0}, {59, 0}, {74, 0}, { 89, 0}, {104, 0}, {119, 0}, {134, 0}, {149, 0}, {164, 0}, {179, 0}, {194, 0}, {209, 0}, {223, 0}, - {0,12}, {14,12}, {29,12}, {44,12}, {59,12}, {74,12}, { 89, 12}, {104, 12}, {119, 12}, {134, 12}, {149, 12}, {164, 12}, {179, 12}, {201, 12}, {223, 12}, - {3,25}, {22,25}, {37,25}, {52,25}, {67,25}, {82,25}, { 97, 25}, {112, 25}, {126, 25}, {141, 25}, {156, 25}, {171, 25}, {186, 25}, {205, 32}, {223, 25}, - {5,38}, {26,38}, {41,38}, {55,38}, {70,38}, {85,38}, {100, 38}, {115, 38}, {130, 38}, {145, 38}, {160, 38}, {175, 38}, {190, 38}, {223, 38}, - {1,51}, {17,51}, {33,51}, {48,51}, {63,51}, {78,51}, { 93, 51}, {108, 51}, {123, 51}, {138, 51}, {153, 51}, {168, 51}, {188, 51}, {209, 51}, {223, 51}, - {1,64}, {20,64}, {39,64}, { 95, 64}, {149, 64}, {164, 64}, {179, 64}, {194, 64}, {209, 64}, {223, 64} - }, - { - 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, - 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, - 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, - 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, - 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, - 4, 4, 4, 4, 4, 4, 4, 4, 4, 4 - - } -}; -#endif diff --git a/keyboards/keychron/k3_max/iso/rgb/rules.mk b/keyboards/keychron/k3_max/iso/rgb/rules.mk deleted file mode 100644 index 6e7633bfe0..0000000000 --- a/keyboards/keychron/k3_max/iso/rgb/rules.mk +++ /dev/null @@ -1 +0,0 @@ -# This file intentionally left blank diff --git a/keyboards/keychron/k3_max/iso/white/config.h b/keyboards/keychron/k3_max/iso/white/config.h deleted file mode 100644 index 9534b91b3a..0000000000 --- a/keyboards/keychron/k3_max/iso/white/config.h +++ /dev/null @@ -1,54 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#pragma once - -#ifdef LED_MATRIX_ENABLE -/* LED matrix driver configuration */ -# define DRIVER_COUNT 1 -# define LED_MATRIX_LED_COUNT 85 - -# define SPI_SCK_PIN A5 -# define SPI_MISO_PIN A6 -# define SPI_MOSI_PIN A7 - -# define DRIVER_CS_PINS \ - { B9 } -# define SNLED23751_SPI_DIVISOR 16 -# define SPI_DRIVER SPID1 - -/* Use first 6 channels of LED driver */ -# define SNLED27351_PHASE_CHANNEL MSKPHASE_6CHANNEL - -/* Set LED driver current */ -# define SNLED27351_CURRENT_TUNE \ - { 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20 } - -/* Set to infinit, which is use in USB mode by default */ -# define LED_MATRIX_TIMEOUT LED_MATRIX_TIMEOUT_INFINITE -/* Allow shutdown of led driver to save power */ -# define LED_MATRIX_DRIVER_SHUTDOWN_ENABLE -/* Turn off backlight on low brightness to save power */ -# define LED_MATRIX_BRIGHTNESS_TURN_OFF_VAL 48 - -/* Indications */ -# define DIM_CAPS_LOCK -# define CAPS_LOCK_INDEX 46 -# define LOW_BAT_IND_INDEX \ - { 78 } - -# define LED_MATRIX_KEYPRESSES -#endif diff --git a/keyboards/keychron/k3_max/iso/white/info.json b/keyboards/keychron/k3_max/iso/white/info.json deleted file mode 100644 index 1e6992fdb9..0000000000 --- a/keyboards/keychron/k3_max/iso/white/info.json +++ /dev/null @@ -1,30 +0,0 @@ -{ - "usb": { - "pid": "0x0A34", - "device_version": "1.0.0" - }, - "features": { - "led_matrix": true - }, - "led_matrix": { - "driver": "snled27351_spi", - "sleep": true, - "animations": { - "none": true, - "solid": true, - "breathing": true, - "band_pinwheel": true, - "band_spiral": true, - "cycle_left_right": true, - "cycle_up_down": true, - "cycle_out_in": true, - "dual_beacon": true, - "solid_reactive_simple": true, - "solid_reactive_multiwide": true, - "solid_reactive_multinexus": true, - "solid_splash": true, - "wave_left_right": true, - "wave_up_down": true - } - } -} diff --git a/keyboards/keychron/k3_max/iso/white/keymaps/default/keymap.c b/keyboards/keychron/k3_max/iso/white/keymaps/default/keymap.c deleted file mode 100644 index 1636379951..0000000000 --- a/keyboards/keychron/k3_max/iso/white/keymaps/default/keymap.c +++ /dev/null @@ -1,67 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#include QMK_KEYBOARD_H -#include "keychron_common.h" - -enum layers { - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN, -}; -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { -[MAC_BASE] = LAYOUT_iso_85( - KC_ESC, KC_BRID, KC_BRIU, KC_MCTRL, KC_LNPAD, BL_DOWN, BL_UP, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_SNAP, KC_DEL, BL_STEP, - KC_GRV, 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_PGUP, - 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_PGDN, - 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_NUHS, KC_ENT, KC_HOME, - KC_LSFT, KC_NUBS, 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_LOPTN, KC_LCMMD, KC_SPC, KC_RCMMD,MO(MAC_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - -[MAC_FN] = LAYOUT_iso_85( - _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, BL_TOGG, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - BL_TOGG, BL_STEP, BL_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, BL_DOWN, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - -[WIN_BASE] = LAYOUT_iso_85( - KC_ESC, 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_PSCR, KC_DEL, BL_STEP, - KC_GRV, 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_PGUP, - 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_PGDN, - 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_NUHS, KC_ENT, KC_HOME, - KC_LSFT, KC_NUBS, 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_SPC, KC_RALT, MO(WIN_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - -[WIN_FN] = LAYOUT_iso_85( - _______, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, BL_DOWN, BL_UP, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, BL_TOGG, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - BL_TOGG, BL_STEP, BL_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, BL_DOWN, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______) -}; - -// clang-format on -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - if (!process_record_keychron_common(keycode, record)) { - return false; - } - return true; -} diff --git a/keyboards/keychron/k3_max/iso/white/keymaps/via/keymap.c b/keyboards/keychron/k3_max/iso/white/keymaps/via/keymap.c deleted file mode 100644 index 1636379951..0000000000 --- a/keyboards/keychron/k3_max/iso/white/keymaps/via/keymap.c +++ /dev/null @@ -1,67 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#include QMK_KEYBOARD_H -#include "keychron_common.h" - -enum layers { - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN, -}; -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { -[MAC_BASE] = LAYOUT_iso_85( - KC_ESC, KC_BRID, KC_BRIU, KC_MCTRL, KC_LNPAD, BL_DOWN, BL_UP, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_SNAP, KC_DEL, BL_STEP, - KC_GRV, 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_PGUP, - 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_PGDN, - 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_NUHS, KC_ENT, KC_HOME, - KC_LSFT, KC_NUBS, 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_LOPTN, KC_LCMMD, KC_SPC, KC_RCMMD,MO(MAC_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - -[MAC_FN] = LAYOUT_iso_85( - _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, BL_TOGG, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - BL_TOGG, BL_STEP, BL_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, BL_DOWN, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - -[WIN_BASE] = LAYOUT_iso_85( - KC_ESC, 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_PSCR, KC_DEL, BL_STEP, - KC_GRV, 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_PGUP, - 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_PGDN, - 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_NUHS, KC_ENT, KC_HOME, - KC_LSFT, KC_NUBS, 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_SPC, KC_RALT, MO(WIN_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - -[WIN_FN] = LAYOUT_iso_85( - _______, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, BL_DOWN, BL_UP, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, BL_TOGG, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - BL_TOGG, BL_STEP, BL_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, BL_DOWN, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______) -}; - -// clang-format on -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - if (!process_record_keychron_common(keycode, record)) { - return false; - } - return true; -} diff --git a/keyboards/keychron/k3_max/iso/white/keymaps/via/rules.mk b/keyboards/keychron/k3_max/iso/white/keymaps/via/rules.mk deleted file mode 100644 index 1e5b99807c..0000000000 --- a/keyboards/keychron/k3_max/iso/white/keymaps/via/rules.mk +++ /dev/null @@ -1 +0,0 @@ -VIA_ENABLE = yes diff --git a/keyboards/keychron/k3_max/iso/white/rules.mk b/keyboards/keychron/k3_max/iso/white/rules.mk deleted file mode 100644 index 6e7633bfe0..0000000000 --- a/keyboards/keychron/k3_max/iso/white/rules.mk +++ /dev/null @@ -1 +0,0 @@ -# This file intentionally left blank diff --git a/keyboards/keychron/k3_max/iso/white/white.c b/keyboards/keychron/k3_max/iso/white/white.c deleted file mode 100644 index d6a77d733e..0000000000 --- a/keyboards/keychron/k3_max/iso/white/white.c +++ /dev/null @@ -1,148 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#include "quantum.h" - -// clang-format off -#ifdef LED_MATRIX_ENABLE -const snled27351_led_t g_snled27351_leds[LED_MATRIX_LED_COUNT] = { -/* Refer to SNLED27351 manual for these locations - * driver - * | LED address - * | | */ - {0, A_1}, - {0, A_2}, - {0, A_3}, - {0, A_4}, - {0, A_5}, - {0, A_6}, - {0, A_7}, - {0, A_8}, - {0, A_9}, - {0, A_10}, - {0, A_11}, - {0, A_12}, - {0, A_13}, - {0, A_14}, - {0, A_15}, - {0, A_16}, - - {0, B_1}, - {0, B_2}, - {0, B_3}, - {0, B_4}, - {0, B_5}, - {0, B_6}, - {0, B_7}, - {0, B_8}, - {0, B_9}, - {0, B_10}, - {0, B_11}, - {0, B_12}, - {0, B_13}, - {0, B_14}, - {0, B_16}, - - {0, C_1}, - {0, C_2}, - {0, C_3}, - {0, C_4}, - {0, C_5}, - {0, C_6}, - {0, C_7}, - {0, C_8}, - {0, C_9}, - {0, C_10}, - {0, C_11}, - {0, C_12}, - {0, C_13}, - {0, C_14}, - {0, C_16}, - - {0, D_1}, - {0, D_2}, - {0, D_3}, - {0, D_4}, - {0, D_5}, - {0, D_6}, - {0, D_7}, - {0, D_8}, - {0, D_9}, - {0, D_10}, - {0, D_11}, - {0, D_12}, - {0, D_14}, - {0, D_16}, - - {0, E_1}, - {0, E_2}, - {0, E_3}, - {0, E_4}, - {0, E_5}, - {0, E_6}, - {0, E_7}, - {0, E_8}, - {0, E_9}, - {0, E_10}, - {0, E_11}, - {0, E_12}, - {0, E_14}, - {0, E_15}, - {0, E_16}, - - {0, F_1}, - {0, F_2}, - {0, F_3}, - {0, F_7}, - {0, F_11}, - {0, F_12}, - {0, F_13}, - {0, F_14}, - {0, F_15}, - {0, F_16}, -}; - -led_config_t g_led_config = { - { - // Key Matrix to LED Index - { 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, NO_LED, 30 }, - { 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, NO_LED, 45 }, - { 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, NO_LED, 58, NO_LED, 59 }, - { 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, NO_LED, 72, 73, 74 }, - { 75, 76, 77, NO_LED, NO_LED, NO_LED, 78, NO_LED, NO_LED, NO_LED, 79, 80, 81, 82, 83, 84 } - }, - { - // LED Index to Physical Position - {0, 0}, {14, 0}, {29, 0}, {44, 0}, {59, 0}, {74, 0}, { 89, 0}, {104, 0}, {119, 0}, {134, 0}, {149, 0}, {164, 0}, {179, 0}, {194, 0}, {209, 0}, {223, 0}, - {0,12}, {14,12}, {29,12}, {44,12}, {59,12}, {74,12}, { 89, 12}, {104, 12}, {119, 12}, {134, 12}, {149, 12}, {164, 12}, {179, 12}, {201, 12}, {223, 12}, - {3,25}, {22,25}, {37,25}, {52,25}, {67,25}, {82,25}, { 97, 25}, {112, 25}, {126, 25}, {141, 25}, {156, 25}, {171, 25}, {186, 25}, {205, 32}, {223, 25}, - {5,38}, {26,38}, {41,38}, {55,38}, {70,38}, {85,38}, {100, 38}, {115, 38}, {130, 38}, {145, 38}, {160, 38}, {175, 38}, {190, 38}, {223, 38}, - {1,51}, {17,51}, {33,51}, {48,51}, {63,51}, {78,51}, { 93, 51}, {108, 51}, {123, 51}, {138, 51}, {153, 51}, {168, 51}, {188, 51}, {209, 51}, {223, 51}, - {1,64}, {20,64}, {39,64}, { 95, 64}, {149, 64}, {164, 64}, {179, 64}, {194, 64}, {209, 64}, {223, 64} - }, - { - // RGB LED Index to Flag - 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, - 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, - 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, - 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, - 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, - 4, 4, 4, 4, 4, 4, 4, 4, 4, 4 - } -}; - -#endif diff --git a/keyboards/keychron/k3_max/jis/rgb/config.h b/keyboards/keychron/k3_max/jis/rgb/config.h deleted file mode 100644 index 012bab0f5f..0000000000 --- a/keyboards/keychron/k3_max/jis/rgb/config.h +++ /dev/null @@ -1,56 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#pragma once - -#ifdef RGB_MATRIX_ENABLE -/* RGB Matrix driver configuration */ -# define DRIVER_COUNT 2 -# define RGB_MATRIX_LED_COUNT 87 - -# define SPI_SCK_PIN A5 -# define SPI_MISO_PIN A6 -# define SPI_MOSI_PIN A7 - -# define DRIVER_CS_PINS \ - { B8, B9 } -# define SNLED23751_SPI_DIVISOR 16 -# define SPI_DRIVER SPID1 - -/* Scan phase of led driver set as MSKPHASE_9CHANNEL(defined as 0x03 in snled27351.h) */ -# define SNLED27351_PHASE_CHANNEL MSKPHASE_9CHANNEL - -/* Set LED driver current */ -# define SNLED27351_CURRENT_TUNE \ - { 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11 } - -/* Set to infinit, which is use in USB mode by default */ -# define RGB_MATRIX_TIMEOUT RGB_MATRIX_TIMEOUT_INFINITE - -/* Allow shutdown of led driver to save power */ -# define RGB_MATRIX_DRIVER_SHUTDOWN_ENABLE -/* Turn off backlight on low brightness to save power */ -# define RGB_MATRIX_BRIGHTNESS_TURN_OFF_VAL 48 - -/* Indications */ -# define DIM_CAPS_LOCK -# define CAPS_LOCK_INDEX 47 -# define LOW_BAT_IND_INDEX { 79 } - -# define RGB_MATRIX_KEYPRESSES -# define RGB_MATRIX_FRAMEBUFFER_EFFECTS - -#endif diff --git a/keyboards/keychron/k3_max/jis/rgb/info.json b/keyboards/keychron/k3_max/jis/rgb/info.json deleted file mode 100644 index 409bc6de95..0000000000 --- a/keyboards/keychron/k3_max/jis/rgb/info.json +++ /dev/null @@ -1,36 +0,0 @@ -{ - "usb": { - "pid": "0x0A32", - "device_version": "1.0.0" - }, - "features": { - "rgb_matrix": true - }, - "rgb_matrix": { - "driver": "snled27351_spi", - "sleep": true, - "animations": { - "band_spiral_val": true, - "breathing": true, - "cycle_all": true, - "cycle_left_right": true, - "cycle_out_in": true, - "cycle_out_in_dual": true, - "cycle_pinwheel": true, - "cycle_spiral": true, - "cycle_up_down": true, - "digital_rain": true, - "dual_beacon": true, - "jellybean_raindrops": true, - "pixel_rain": true, - "rainbow_beacon": true, - "rainbow_moving_chevron": true, - "solid_reactive_multinexus": true, - "solid_reactive_multiwide": true, - "solid_reactive_simple": true, - "solid_splash": true, - "splash": true, - "typing_heatmap": true - } - } -} diff --git a/keyboards/keychron/k3_max/jis/rgb/keymaps/default/keymap.c b/keyboards/keychron/k3_max/jis/rgb/keymaps/default/keymap.c deleted file mode 100644 index 3ab889ba23..0000000000 --- a/keyboards/keychron/k3_max/jis/rgb/keymaps/default/keymap.c +++ /dev/null @@ -1,67 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#include QMK_KEYBOARD_H -#include "keychron_common.h" - -enum layers { - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN, -}; -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { -[MAC_BASE] = LAYOUT_jis_87( - KC_ESC, KC_BRID, KC_BRIU, KC_MCTRL, KC_LNPAD, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_SNAP, KC_DEL, RGB_MOD, - KC_GRV, 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_INT3, KC_BSPC, KC_PGUP, - 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_PGDN, - 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_BSLS, KC_ENT, KC_HOME, - KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_INT1, KC_RSFT, KC_END, - KC_LCTL, KC_LOPTN, KC_LCMMD, KC_LNG2, KC_SPC, KC_LNG1, KC_RCMMD,MO(MAC_FN),KC_LEFT, KC_UP, KC_DOWN, KC_RGHT), - -[MAC_FN] = LAYOUT_jis_87( - _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, RGB_TOG, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - -[WIN_BASE] = LAYOUT_jis_87( - KC_ESC, 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_PSCR, KC_DEL, RGB_MOD, - KC_GRV, 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_INT3, KC_BSPC, KC_PGUP, - 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_PGDN, - 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_BSLS, KC_ENT, KC_HOME, - KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_INT1, KC_RSFT, KC_END, - KC_LCTL, KC_LGUI, KC_LALT, KC_INT5, KC_SPC, KC_INT4, KC_RALT, MO(WIN_FN),KC_LEFT, KC_UP, KC_DOWN, KC_RGHT), - -[WIN_FN] = LAYOUT_jis_87( - _______, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, RGB_TOG, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______) -}; - -// clang-format on -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - if (!process_record_keychron_common(keycode, record)) { - return false; - } - return true; -} diff --git a/keyboards/keychron/k3_max/jis/rgb/keymaps/via/keymap.c b/keyboards/keychron/k3_max/jis/rgb/keymaps/via/keymap.c deleted file mode 100644 index 3ab889ba23..0000000000 --- a/keyboards/keychron/k3_max/jis/rgb/keymaps/via/keymap.c +++ /dev/null @@ -1,67 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#include QMK_KEYBOARD_H -#include "keychron_common.h" - -enum layers { - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN, -}; -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { -[MAC_BASE] = LAYOUT_jis_87( - KC_ESC, KC_BRID, KC_BRIU, KC_MCTRL, KC_LNPAD, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_SNAP, KC_DEL, RGB_MOD, - KC_GRV, 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_INT3, KC_BSPC, KC_PGUP, - 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_PGDN, - 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_BSLS, KC_ENT, KC_HOME, - KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_INT1, KC_RSFT, KC_END, - KC_LCTL, KC_LOPTN, KC_LCMMD, KC_LNG2, KC_SPC, KC_LNG1, KC_RCMMD,MO(MAC_FN),KC_LEFT, KC_UP, KC_DOWN, KC_RGHT), - -[MAC_FN] = LAYOUT_jis_87( - _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, RGB_TOG, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - -[WIN_BASE] = LAYOUT_jis_87( - KC_ESC, 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_PSCR, KC_DEL, RGB_MOD, - KC_GRV, 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_INT3, KC_BSPC, KC_PGUP, - 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_PGDN, - 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_BSLS, KC_ENT, KC_HOME, - KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_INT1, KC_RSFT, KC_END, - KC_LCTL, KC_LGUI, KC_LALT, KC_INT5, KC_SPC, KC_INT4, KC_RALT, MO(WIN_FN),KC_LEFT, KC_UP, KC_DOWN, KC_RGHT), - -[WIN_FN] = LAYOUT_jis_87( - _______, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, RGB_TOG, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______) -}; - -// clang-format on -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - if (!process_record_keychron_common(keycode, record)) { - return false; - } - return true; -} diff --git a/keyboards/keychron/k3_max/jis/rgb/keymaps/via/rules.mk b/keyboards/keychron/k3_max/jis/rgb/keymaps/via/rules.mk deleted file mode 100644 index 1e5b99807c..0000000000 --- a/keyboards/keychron/k3_max/jis/rgb/keymaps/via/rules.mk +++ /dev/null @@ -1 +0,0 @@ -VIA_ENABLE = yes diff --git a/keyboards/keychron/k3_max/jis/rgb/rgb.c b/keyboards/keychron/k3_max/jis/rgb/rgb.c deleted file mode 100644 index 73128745d1..0000000000 --- a/keyboards/keychron/k3_max/jis/rgb/rgb.c +++ /dev/null @@ -1,154 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#include "quantum.h" - -// clang-format off - -#ifdef RGB_MATRIX_ENABLE -const snled27351_led_t g_snled27351_leds[RGB_MATRIX_LED_COUNT] = { -/* Refer to SNLED27351 manual for these locations - * driver - * | R location - * | | G location - * | | | B location - * | | | | */ - {0, I_1, G_1, H_1}, - {0, I_2, G_2, H_2}, - {0, I_3, G_3, H_3}, - {0, I_4, G_4, H_4}, - {0, I_5, G_5, H_5}, - {0, I_6, G_6, H_6}, - {0, I_7, G_7, H_7}, - {0, I_8, G_8, H_8}, - {0, I_9, G_9, H_9}, - {0, I_10, G_10, H_10}, - {0, I_11, G_11, H_11}, - {0, I_12, G_12, H_12}, - {0, I_13, G_13, H_13}, - {0, I_14, G_14, H_14}, - {0, I_15, G_15, H_15}, - {0, I_16, G_16, H_16}, - - {0, F_1, D_1, E_1}, - {0, F_2, D_2, E_2}, - {0, F_3, D_3, E_3}, - {0, F_4, D_4, E_4}, - {0, F_5, D_5, E_5}, - {0, F_6, D_6, E_6}, - {0, F_7, D_7, E_7}, - {0, F_8, D_8, E_8}, - {0, F_9, D_9, E_9}, - {0, F_10, D_10, E_10}, - {0, F_11, D_11, E_11}, - {0, F_12, D_12, E_12}, - {0, F_13, D_13, E_13}, - {0, F_14, D_14, E_14}, - {0, F_15, D_15, E_15}, - {0, F_16, D_16, E_16}, - - {0, A_1, C_1, B_1}, - {0, A_2, C_2, B_2}, - {0, A_3, C_3, B_3}, - {0, A_4, C_4, B_4}, - {0, A_5, C_5, B_5}, - {0, A_6, C_6, B_6}, - {0, A_7, C_7, B_7}, - {0, A_8, C_8, B_8}, - {0, A_9, C_9, B_9}, - {0, A_10, C_10, B_10}, - {0, A_11, C_11, B_11}, - {0, A_12, C_12, B_12}, - {0, A_13, C_13, B_13}, - {0, A_14, C_14, B_14}, - {0, A_16, C_16, B_16}, - - {1, I_1, G_1, H_1}, - {1, I_2, G_2, H_2}, - {1, I_3, G_3, H_3}, - {1, I_4, G_4, H_4}, - {1, I_5, G_5, H_5}, - {1, I_6, G_6, H_6}, - {1, I_7, G_7, H_7}, - {1, I_8, G_8, H_8}, - {1, I_9, G_9, H_9}, - {1, I_10, G_10, H_10}, - {1, I_11, G_11, H_11}, - {1, I_12, G_12, H_12}, - {1, I_14, G_14, H_14}, - {1, I_16, G_16, H_16}, - - {1, C_1, A_1, B_1}, - {1, C_3, A_3, B_3}, - {1, C_4, A_4, B_4}, - {1, C_5, A_5, B_5}, - {1, C_6, A_6, B_6}, - {1, C_7, A_7, B_7}, - {1, C_8, A_8, B_8}, - {1, C_9, A_9, B_9}, - {1, C_10, A_10, B_10}, - {1, C_11, A_11, B_11}, - {1, C_12, A_12, B_12}, - {1, C_14, A_14, B_14}, - {1, C_15, A_15, B_15}, - {1, C_16, A_16, B_16}, - - {1, F_1, D_1, E_1}, - {1, F_2, D_2, E_2}, - {1, F_3, D_3, E_3}, - {1, F_4, D_4, E_4}, - {1, F_7, D_7, E_7}, - {1, F_10, D_10, E_10}, - {1, F_11, D_11, E_11}, - {1, F_12, D_12, E_12}, - {1, F_13, D_13, E_13}, - {1, F_14, D_14, E_14}, - {1, F_15, D_15, E_15}, - {1, F_16, D_16, E_16}, -}; - -#define __ NO_LED - -led_config_t g_led_config = { - { - // Key Matrix to LED Index - { 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, 40, 41, 42, 43, 44, 45, __, 46 }, - { 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, __, 59, __, 60 }, - { 61, __, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, __, 72, 73, 74 }, - { 75, 76, 77, 78, __, __, 79, __, __, 80, 81, 82, 83, 84, 85, 86 }, - }, - { - // LED Index to Physical Position - {0, 0}, {15, 0}, {30, 0}, {45, 0}, {60, 0}, {75, 0}, { 90, 0}, {105, 0}, {119, 0}, {134, 0}, {149, 0}, {164, 0}, {179, 0}, {194, 0}, {209, 0}, {224, 0}, - {0,13}, {15,13}, {30,13}, {45,13}, {60,13}, {75,13}, { 90,13}, {105,13}, {119,13}, {134,13}, {149,13}, {164,13}, {179,13}, {194,13}, {209,13}, {224,13}, - {4,26}, {22,26}, {37,26}, {52,26}, {67,26}, {82,26}, { 97,26}, {112,26}, {127,26}, {142,26}, {157,26}, {172,26}, {187,26}, {207,32}, {224,26}, - {6,38}, {26,38}, {41,38}, {56,38}, {71,38}, {86,38}, {101,38}, {116,38}, {131,38}, {146,38}, {161,38}, {175,38}, {190,38}, {224,38}, - {9,51}, {34,51}, {49,51}, {64,51}, {78,51}, { 93,51}, {108,51}, {123,51}, {138,51}, {153,51}, {168,51}, {183,51}, {203,51}, {224,51}, - {0,64}, {15,64}, {30,64}, {45,64}, { 90,64}, {134,64}, {149,64}, {164,64}, {179,64}, {194,64}, {209,64}, {224,64} - }, - { - // RGB LED Index to Flag - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 - } -}; -#endif diff --git a/keyboards/keychron/k3_max/jis/rgb/rules.mk b/keyboards/keychron/k3_max/jis/rgb/rules.mk deleted file mode 100644 index 6e7633bfe0..0000000000 --- a/keyboards/keychron/k3_max/jis/rgb/rules.mk +++ /dev/null @@ -1 +0,0 @@ -# This file intentionally left blank diff --git a/keyboards/keychron/k3_max/jis/white/config.h b/keyboards/keychron/k3_max/jis/white/config.h deleted file mode 100644 index 650bbc11e2..0000000000 --- a/keyboards/keychron/k3_max/jis/white/config.h +++ /dev/null @@ -1,54 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#pragma once - -#ifdef LED_MATRIX_ENABLE -/* LED matrix driver configuration */ -# define DRIVER_COUNT 1 -# define LED_MATRIX_LED_COUNT 87 - -# define SPI_SCK_PIN A5 -# define SPI_MISO_PIN A6 -# define SPI_MOSI_PIN A7 - -# define DRIVER_CS_PINS \ - { B9 } -# define SNLED23751_SPI_DIVISOR 16 -# define SPI_DRIVER SPID1 - -/* Use first 6 channels of LED driver */ -# define SNLED27351_PHASE_CHANNEL MSKPHASE_6CHANNEL - -/* Set LED driver current */ -# define SNLED27351_CURRENT_TUNE \ - { 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20 } - -/* Set to infinit, which is use in USB mode by default */ -# define LED_MATRIX_TIMEOUT LED_MATRIX_TIMEOUT_INFINITE -/* Allow shutdown of led driver to save power */ -# define LED_MATRIX_DRIVER_SHUTDOWN_ENABLE -/* Turn off backlight on low brightness to save power */ -# define LED_MATRIX_BRIGHTNESS_TURN_OFF_VAL 48 - -/* Indications */ -# define DIM_CAPS_LOCK -# define CAPS_LOCK_INDEX 47 -# define LOW_BAT_IND_INDEX \ - { 79 } - -# define LED_MATRIX_KEYPRESSES -#endif diff --git a/keyboards/keychron/k3_max/jis/white/info.json b/keyboards/keychron/k3_max/jis/white/info.json deleted file mode 100644 index 1c8d686314..0000000000 --- a/keyboards/keychron/k3_max/jis/white/info.json +++ /dev/null @@ -1,30 +0,0 @@ -{ - "usb": { - "pid": "0x0A35", - "device_version": "1.0.0" - }, - "features": { - "led_matrix": true - }, - "led_matrix": { - "driver": "snled27351_spi", - "sleep": true, - "animations": { - "none": true, - "solid": true, - "breathing": true, - "band_pinwheel": true, - "band_spiral": true, - "cycle_left_right": true, - "cycle_up_down": true, - "cycle_out_in": true, - "dual_beacon": true, - "solid_reactive_simple": true, - "solid_reactive_multiwide": true, - "solid_reactive_multinexus": true, - "solid_splash": true, - "wave_left_right": true, - "wave_up_down": true - } - } -} diff --git a/keyboards/keychron/k3_max/jis/white/keymaps/default/keymap.c b/keyboards/keychron/k3_max/jis/white/keymaps/default/keymap.c deleted file mode 100644 index cbbbbe1673..0000000000 --- a/keyboards/keychron/k3_max/jis/white/keymaps/default/keymap.c +++ /dev/null @@ -1,67 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#include QMK_KEYBOARD_H -#include "keychron_common.h" - -enum layers { - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN, -}; -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { -[MAC_BASE] = LAYOUT_jis_87( - KC_ESC, KC_BRID, KC_BRIU, KC_MCTRL, KC_LNPAD, BL_DOWN, BL_UP, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_SNAP, KC_DEL, BL_STEP, - KC_GRV, 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_INT3, KC_BSPC, KC_PGUP, - 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_PGDN, - 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_BSLS, KC_ENT, KC_HOME, - KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_INT1, KC_RSFT, KC_END, - KC_LCTL, KC_LOPTN, KC_LCMMD, KC_LNG2, KC_SPC, KC_LNG1, KC_RCMMD,MO(MAC_FN),KC_LEFT, KC_UP, KC_DOWN, KC_RGHT), - -[MAC_FN] = LAYOUT_jis_87( - _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, BL_TOGG, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - BL_TOGG, BL_STEP, BL_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, BL_DOWN, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - -[WIN_BASE] = LAYOUT_jis_87( - KC_ESC, 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_PSCR, KC_DEL, BL_STEP, - KC_GRV, 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_INT3, KC_BSPC, KC_PGUP, - 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_PGDN, - 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_BSLS, KC_ENT, KC_HOME, - KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_INT1, KC_RSFT, KC_END, - KC_LCTL, KC_LGUI, KC_LALT, KC_INT5, KC_SPC, KC_INT4, KC_RALT, MO(WIN_FN),KC_LEFT, KC_UP, KC_DOWN, KC_RGHT), - -[WIN_FN] = LAYOUT_jis_87( - _______, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, BL_DOWN, BL_UP, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, BL_TOGG, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - BL_TOGG, BL_STEP, BL_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, BL_DOWN, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______) -}; - -// clang-format on -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - if (!process_record_keychron_common(keycode, record)) { - return false; - } - return true; -} diff --git a/keyboards/keychron/k3_max/jis/white/keymaps/via/keymap.c b/keyboards/keychron/k3_max/jis/white/keymaps/via/keymap.c deleted file mode 100644 index cbbbbe1673..0000000000 --- a/keyboards/keychron/k3_max/jis/white/keymaps/via/keymap.c +++ /dev/null @@ -1,67 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#include QMK_KEYBOARD_H -#include "keychron_common.h" - -enum layers { - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN, -}; -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { -[MAC_BASE] = LAYOUT_jis_87( - KC_ESC, KC_BRID, KC_BRIU, KC_MCTRL, KC_LNPAD, BL_DOWN, BL_UP, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_SNAP, KC_DEL, BL_STEP, - KC_GRV, 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_INT3, KC_BSPC, KC_PGUP, - 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_PGDN, - 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_BSLS, KC_ENT, KC_HOME, - KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_INT1, KC_RSFT, KC_END, - KC_LCTL, KC_LOPTN, KC_LCMMD, KC_LNG2, KC_SPC, KC_LNG1, KC_RCMMD,MO(MAC_FN),KC_LEFT, KC_UP, KC_DOWN, KC_RGHT), - -[MAC_FN] = LAYOUT_jis_87( - _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, BL_TOGG, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - BL_TOGG, BL_STEP, BL_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, BL_DOWN, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - -[WIN_BASE] = LAYOUT_jis_87( - KC_ESC, 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_PSCR, KC_DEL, BL_STEP, - KC_GRV, 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_INT3, KC_BSPC, KC_PGUP, - 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_PGDN, - 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_BSLS, KC_ENT, KC_HOME, - KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_INT1, KC_RSFT, KC_END, - KC_LCTL, KC_LGUI, KC_LALT, KC_INT5, KC_SPC, KC_INT4, KC_RALT, MO(WIN_FN),KC_LEFT, KC_UP, KC_DOWN, KC_RGHT), - -[WIN_FN] = LAYOUT_jis_87( - _______, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, BL_DOWN, BL_UP, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, BL_TOGG, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - BL_TOGG, BL_STEP, BL_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, BL_DOWN, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______) -}; - -// clang-format on -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - if (!process_record_keychron_common(keycode, record)) { - return false; - } - return true; -} diff --git a/keyboards/keychron/k3_max/jis/white/keymaps/via/rules.mk b/keyboards/keychron/k3_max/jis/white/keymaps/via/rules.mk deleted file mode 100644 index 1e5b99807c..0000000000 --- a/keyboards/keychron/k3_max/jis/white/keymaps/via/rules.mk +++ /dev/null @@ -1 +0,0 @@ -VIA_ENABLE = yes diff --git a/keyboards/keychron/k3_max/jis/white/rules.mk b/keyboards/keychron/k3_max/jis/white/rules.mk deleted file mode 100644 index 6e7633bfe0..0000000000 --- a/keyboards/keychron/k3_max/jis/white/rules.mk +++ /dev/null @@ -1 +0,0 @@ -# This file intentionally left blank diff --git a/keyboards/keychron/k3_max/jis/white/white.c b/keyboards/keychron/k3_max/jis/white/white.c deleted file mode 100644 index 13e9adb3d6..0000000000 --- a/keyboards/keychron/k3_max/jis/white/white.c +++ /dev/null @@ -1,151 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#include "quantum.h" - -// clang-format off -#ifdef LED_MATRIX_ENABLE -const snled27351_led_t g_snled27351_leds[LED_MATRIX_LED_COUNT] = { -/* Refer to SNLED27351 manual for these locations - * driver - * | LED address - * | | */ - {0, A_1}, - {0, A_2}, - {0, A_3}, - {0, A_4}, - {0, A_5}, - {0, A_6}, - {0, A_7}, - {0, A_8}, - {0, A_9}, - {0, A_10}, - {0, A_11}, - {0, A_12}, - {0, A_13}, - {0, A_14}, - {0, A_15}, - {0, A_16}, - - {0, B_1}, - {0, B_2}, - {0, B_3}, - {0, B_4}, - {0, B_5}, - {0, B_6}, - {0, B_7}, - {0, B_8}, - {0, B_9}, - {0, B_10}, - {0, B_11}, - {0, B_12}, - {0, B_13}, - {0, B_14}, - {0, B_15}, - {0, B_16}, - - {0, C_1}, - {0, C_2}, - {0, C_3}, - {0, C_4}, - {0, C_5}, - {0, C_6}, - {0, C_7}, - {0, C_8}, - {0, C_9}, - {0, C_10}, - {0, C_11}, - {0, C_12}, - {0, C_13}, - {0, C_14}, - {0, C_16}, - - {0, D_1}, - {0, D_2}, - {0, D_3}, - {0, D_4}, - {0, D_5}, - {0, D_6}, - {0, D_7}, - {0, D_8}, - {0, D_9}, - {0, D_10}, - {0, D_11}, - {0, D_12}, - {0, D_14}, - {0, D_16}, - - {0, E_1}, - {0, E_3}, - {0, E_4}, - {0, E_5}, - {0, E_6}, - {0, E_7}, - {0, E_8}, - {0, E_9}, - {0, E_10}, - {0, E_11}, - {0, E_12}, - {0, E_14}, - {0, E_15}, - {0, E_16}, - - {0, F_1}, - {0, F_2}, - {0, F_3}, - {0, F_4}, - {0, F_7}, - {0, F_10}, - {0, F_11}, - {0, F_12}, - {0, F_13}, - {0, F_14}, - {0, F_15}, - {0, F_16}, -}; - -#define __ NO_LED - -led_config_t g_led_config = { - { - // Key Matrix to LED Index - { 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, 40, 41, 42, 43, 44, 45, __, 46 }, - { 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, __, 59, __, 60 }, - { 61, __, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, __, 72, 73, 74 }, - { 75, 76, 77, 78, __, __, 79, __, __, 80, 81, 82, 83, 84, 85, 86 }, - }, - { - // LED Index to Physical Position - {0, 0}, {15, 0}, {30, 0}, {45, 0}, {60, 0}, {75, 0}, { 90, 0}, {105, 0}, {119, 0}, {134, 0}, {149, 0}, {164, 0}, {179, 0}, {194, 0}, {209, 0}, {224, 0}, - {0,13}, {15,13}, {30,13}, {45,13}, {60,13}, {75,13}, { 90,13}, {105,13}, {119,13}, {134,13}, {149,13}, {164,13}, {179,13}, {194,13}, {209,13}, {224,13}, - {4,26}, {22,26}, {37,26}, {52,26}, {67,26}, {82,26}, { 97,26}, {112,26}, {127,26}, {142,26}, {157,26}, {172,26}, {187,26}, {207,32}, {224,26}, - {6,38}, {26,38}, {41,38}, {56,38}, {71,38}, {86,38}, {101,38}, {116,38}, {131,38}, {146,38}, {161,38}, {175,38}, {190,38}, {224,38}, - {9,51}, {34,51}, {49,51}, {64,51}, {78,51}, { 93,51}, {108,51}, {123,51}, {138,51}, {153,51}, {168,51}, {183,51}, {203,51}, {224,51}, - {0,64}, {15,64}, {30,64}, {45,64}, { 90,64}, {134,64}, {149,64}, {164,64}, {179,64}, {194,64}, {209,64}, {224,64} - }, - { - // RGB LED Index to Flag - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 - } -}; -#endif diff --git a/keyboards/keychron/k3_max/k3_max.c b/keyboards/keychron/k3_max/k3_max.c deleted file mode 100644 index a4f3a14d01..0000000000 --- a/keyboards/keychron/k3_max/k3_max.c +++ /dev/null @@ -1,83 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#include "quantum.h" -#include "keychron_task.h" -#ifdef FACTORY_TEST_ENABLE -# include "factory_test.h" -# include "keychron_common.h" -#endif -#ifdef LK_WIRELESS_ENABLE -# include "lkbt51.h" -# include "wireless.h" -# include "transport.h" -# include "keychron_wireless_common.h" -# include "battery.h" -#endif - -#define POWER_ON_LED_DURATION 3000 -static uint32_t power_on_indicator_timer; - - -bool dip_switch_update_kb(uint8_t index, bool active) { - if (index == 0) { - default_layer_set(1UL << (active ? 0 : 2)); - } - dip_switch_update_user(index, active); - - return true; -} - -void keyboard_post_init_kb(void) { -#ifdef LK_WIRELESS_ENABLE - palSetLineMode(P2P4_MODE_SELECT_PIN, PAL_MODE_INPUT); - palSetLineMode(BT_MODE_SELECT_PIN, PAL_MODE_INPUT); - - lkbt51_init(false); - wireless_init(); -#endif - - power_on_indicator_timer = timer_read32(); -#ifdef ENCODER_ENABLE - encoder_cb_init(); -#endif - - keyboard_post_init_user(); -} - -bool keychron_task_kb(void) { - if (power_on_indicator_timer) { - if (timer_elapsed32(power_on_indicator_timer) > POWER_ON_LED_DURATION) { - power_on_indicator_timer = 0; - -#ifdef LK_WIRELESS_ENABLE - writePin(BAT_LOW_LED_PIN, !BAT_LOW_LED_PIN_ON_STATE); -#endif - - } else { -#ifdef LK_WIRELESS_ENABLE - writePin(BAT_LOW_LED_PIN, BAT_LOW_LED_PIN_ON_STATE); -#endif - } - } - return true; -} - -#ifdef LK_WIRELESS_ENABLE -bool lpm_is_kb_idle(void) { - return power_on_indicator_timer == 0 && !factory_reset_indicating(); -} -#endif diff --git a/keyboards/keychron/k3_max/mcuconf.h b/keyboards/keychron/k3_max/mcuconf.h deleted file mode 100644 index 89294ee64b..0000000000 --- a/keyboards/keychron/k3_max/mcuconf.h +++ /dev/null @@ -1,37 +0,0 @@ -/* Copyright 2024 @ 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 - -#include_next - -#undef STM32_HSECLK -#define STM32_HSECLK 16000000 - -#undef STM32_PLLM_VALUE -#define STM32_PLLM_VALUE 8 - -#undef STM32_PLLN_VALUE -#define STM32_PLLN_VALUE 96 - -#undef STM32_PLLP_VALUE -#define STM32_PLLP_VALUE 4 - -#undef STM32_PLLQ_VALUE -#define STM32_PLLQ_VALUE 4 - -#undef STM32_SPI_USE_SPI1 -#define STM32_SPI_USE_SPI1 TRUE diff --git a/keyboards/keychron/k3_max/readme.md b/keyboards/keychron/k3_max/readme.md deleted file mode 100644 index 136dff5a91..0000000000 --- a/keyboards/keychron/k3_max/readme.md +++ /dev/null @@ -1,23 +0,0 @@ -# Keychron K3 Max - -![Keychron K3 Max](https://cdn.shopify.com/s/files/1/0059/0630/1017/files/Keychron-K3-Max-wireless-mechanical-keyboard.jpg?v=1699931171) - -A customizable 84 keys TKL keyboard. - -* Keyboard Maintainer: [Keychron](https://github.com/keychron) -* Hardware Supported: Keychron K3 Max -* Hardware Availability: [Keychron K3 Max QMK/VIA Wireless Custom Mechanical Keyboard](https://www.keychron.com/products/keychron-k3-max-qmk-via-wireless-custom-mechanical-keyboard) - -Make example for this keyboard (after setting up your build environment): - - make keychron/k3_max/ansi/rgb:default - make keychron/k3_max/ansi/white:default - -Flashing example for this keyboard: - - make keychron/k3_max/ansi/rgb:default:flash - make keychron/k3_max/ansi/white:default:flash - -**Reset Key**: Disconnect the USB cable, toggle mode switch to "Cable", hold down the *Esc* key or reset button underneath space bar, then connect the USB cable. - -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). diff --git a/keyboards/keychron/k3_max/rules.mk b/keyboards/keychron/k3_max/rules.mk deleted file mode 100644 index 4eaf6820bc..0000000000 --- a/keyboards/keychron/k3_max/rules.mk +++ /dev/null @@ -1,4 +0,0 @@ -include keyboards/keychron/common/wireless/wireless.mk -include keyboards/keychron/common/keychron_common.mk - -VPATH += $(TOP_DIR)/keyboards/keychron diff --git a/keyboards/keychron/k3_max/via_json/k3_max_ansi_rgb.json b/keyboards/keychron/k3_max/via_json/k3_max_ansi_rgb.json deleted file mode 100644 index 07e18987dd..0000000000 --- a/keyboards/keychron/k3_max/via_json/k3_max_ansi_rgb.json +++ /dev/null @@ -1,273 +0,0 @@ -{ - "name": "Keychron K3 Max ANSI RGB", - "vendorId": "0x3434", - "productId": "0x0A30", - "keycodes": ["qmk_lighting"], - "menus": [ - { - "label": "Lighting", - "content": [ - { - "label": "Backlight", - "content": [ - { - "label": "Brightness", - "type": "range", - "options": [0, 255], - "content": ["id_qmk_rgb_matrix_brightness", 3, 1] - }, - { - "label": "Effect", - "type": "dropdown", - "content": ["id_qmk_rgb_matrix_effect", 3, 2], - "options": [ - ["None", 0], - ["Solid Color", 1], - ["Breathing", 2], - ["Band Spiral Val", 3], - ["Cycle All", 4], - ["Cycle Left Right", 5], - ["Cycle Up Down", 6], - ["Rainbow Moving Chevron", 7], - ["Cycle Out In", 8], - ["Cycle Out In Dual", 9], - ["Cycle Pinwheel", 10], - ["Cycle Spiral", 11], - ["Dual Beacon", 12], - ["Rainbow Beacon", 13], - ["Jellybean Raindrops", 14], - ["Pixel Rain", 15], - ["Typing Heatmap", 16], - ["Digital Rain", 17], - ["Reactive Simple", 18], - ["Reactive Multiwide", 19], - ["Reactive Multinexus", 20], - ["Splash", 21], - ["Solid Splash", 22] - ] - }, - { - "showIf": "{id_qmk_rgb_matrix_effect} > 1", - "label": "Effect Speed", - "type": "range", - "options": [0, 255], - "content": ["id_qmk_rgb_matrix_effect_speed", 3, 3] - }, - { - "showIf": "{id_qmk_rgb_matrix_effect} != 0 && ( {id_qmk_rgb_matrix_effect} < 4 || {id_qmk_rgb_matrix_effect} == 18 || ({id_qmk_rgb_matrix_effect} > 17 && {id_qmk_rgb_matrix_effect} != 21) ) ", - "label": "Color", - "type": "color", - "content": ["id_qmk_rgb_matrix_color", 3, 4] - } - ] - } - ] - } - ], - "customKeycodes": [ - {"name": "Left Option", "title": "Left Option", "shortName": "LOpt"}, - {"name": "Right Option", "title": "Right Option", "shortName": "ROpt"}, - {"name": "Left Cmd", "title": "Left Command", "shortName": "LCmd"}, - {"name": "Right Cmd", "title": "Right Command", "shortName": "RCmd"}, - {"name": "Misson Control", "title": "Misson Control in Mac", "shortName": "MCtl"}, - {"name": "Lanuch Pad", "title": "Lanuch Pad in Windows", "shortName": "LPad"}, - {"name": "Task View", "title": "Task View in Windows", "shortName": "Task"}, - {"name": "File Explorer", "title": "File Explorer in Windows", "shortName": "File"}, - {"name": "Screen shot", "title": "Screenshot in macOS", "shortName": "SShot"}, - {"name": "Cortana", "title": "Cortana in Windows", "shortName": "Cortana"}, - {"name": "Siri", "title": "Siri in macOS", "shortName": "Siri"}, - {"name": "Bluetooth Host 1", "title": "Bluetooth Host 1", "shortName": "BTH1"}, - {"name": "Bluetooth Host 2", "title": "Bluetooth Host 2", "shortName": "BTH2"}, - {"name": "Bluetooth Host 3", "title": "Bluetooth Host 3", "shortName": "BTH3"}, - {"name": "2.4G", "title": "2.4G", "shortName": "2.4G"}, - {"name": "Battery Level", "title": "Show battery level", "shortName": "Batt"} - ], - "matrix": {"rows": 6, "cols" : 16}, - "layouts": { - "keymap": [ - [ - { - "c": "#777777" - }, - "0, 0", - { - "c": "#cccccc" - }, - "0, 1", - "0, 2", - "0, 3", - "0, 4", - { - "c": "#aaaaaa" - }, - "0, 5", - "0, 6", - "0, 7", - "0, 8", - "0, 9", - { - "c": "#cccccc" - }, - "0, 10", - "0, 11", - "0, 12", - { - "c": "#aaaaaa" - }, - "0, 13", - "0, 14", - "0, 15" - ], - [ - { - "c": "#aaaaaa" - }, - "1, 0", - { - "c": "#cccccc" - }, - "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": 2, - "c": "#aaaaaa" - }, - "1, 13", - "1, 15" - ], - [ - { - "w": 1.5, - "c": "#aaaaaa" - }, - "2, 0", - { - "c": "#cccccc" - }, - "2, 1", - "2, 2", - "2, 3", - "2, 4", - "2, 5", - "2, 6", - "2, 7", - "2, 8", - "2, 9", - "2, 10", - "2, 11", - "2, 12", - { - "w": 1.5, - "c": "#aaaaaa" - }, - "2, 13", - "2, 15" - ], - [ - { - "w": 1.75, - "c": "#aaaaaa" - }, - "3, 0", - { - "c": "#cccccc" - }, - "3, 1", - "3, 2", - "3, 3", - "3, 4", - "3, 5", - "3, 6", - "3, 7", - "3, 8", - "3, 9", - "3, 10", - "3, 11", - { - "w": 2.25, - "c": "#777777" - }, - "3, 13", - { - "c": "#aaaaaa" - }, - "3, 15" - ], - [ - { - "w": 2.25, - "c": "#aaaaaa" - }, - "4, 0", - { - "c": "#cccccc" - }, - "4, 2", - "4, 3", - "4, 4", - "4, 5", - "4, 6", - "4, 7", - "4, 8", - "4, 9", - "4, 10", - "4, 11", - { - "w": 1.75, - "c": "#aaaaaa" - }, - "4, 13", - { - "c": "#cccccc" - }, - "4, 14", - { - "c": "#aaaaaa" - }, - "4, 15" - ], - [ - { - "w": 1.25, - "c": "#aaaaaa" - }, - "5, 0", - { - "w": 1.25 - }, - "5, 1", - { - "w": 1.25 - }, - "5, 2", - { - "w": 6.25, - "c": "#cccccc" - }, - "5, 6", - { - "c": "#aaaaaa" - }, - "5, 10", - "5, 11", - "5, 12", - { - "c": "#cccccc" - }, - "5, 13", - "5, 14", - "5, 15" - ] - ] - } -} diff --git a/keyboards/keychron/k3_max/via_json/k3_max_ansi_white.json b/keyboards/keychron/k3_max/via_json/k3_max_ansi_white.json deleted file mode 100644 index b249eaded6..0000000000 --- a/keyboards/keychron/k3_max/via_json/k3_max_ansi_white.json +++ /dev/null @@ -1,212 +0,0 @@ -{ - "name": "Keychron K3 Max ANSI White", - "vendorId": "0x3434", - "productId": "0x0A33", - "keycodes": ["qmk_lighting"], - "customKeycodes": [ - {"name": "Left Option", "title": "Left Option", "shortName": "LOpt"}, - {"name": "Right Option", "title": "Right Option", "shortName": "ROpt"}, - {"name": "Left Cmd", "title": "Left Command", "shortName": "LCmd"}, - {"name": "Right Cmd", "title": "Right Command", "shortName": "RCmd"}, - {"name": "Misson Control", "title": "Misson Control in Mac", "shortName": "MCtl"}, - {"name": "Lanuch Pad", "title": "Lanuch Pad in Windows", "shortName": "LPad"}, - {"name": "Task View", "title": "Task View in Windows", "shortName": "Task"}, - {"name": "File Explorer", "title": "File Explorer in Windows", "shortName": "File"}, - {"name": "Screen shot", "title": "Screenshot in macOS", "shortName": "SShot"}, - {"name": "Cortana", "title": "Cortana in Windows", "shortName": "Cortana"}, - {"name": "Siri", "title": "Siri in macOS", "shortName": "Siri"}, - {"name": "Bluetooth Host 1", "title": "Bluetooth Host 1", "shortName": "BTH1"}, - {"name": "Bluetooth Host 2", "title": "Bluetooth Host 2", "shortName": "BTH2"}, - {"name": "Bluetooth Host 3", "title": "Bluetooth Host 3", "shortName": "BTH3"}, - {"name": "2.4G", "title": "2.4G", "shortName": "2.4G"}, - {"name": "Battery Level", "title": "Show battery level", "shortName": "Batt"} - ], - "matrix": {"rows": 6, "cols" : 16}, - "layouts": { - "keymap": [ - [ - { - "c": "#777777" - }, - "0, 0", - { - "c": "#cccccc" - }, - "0, 1", - "0, 2", - "0, 3", - "0, 4", - { - "c": "#aaaaaa" - }, - "0, 5", - "0, 6", - "0, 7", - "0, 8", - "0, 9", - { - "c": "#cccccc" - }, - "0, 10", - "0, 11", - "0, 12", - { - "c": "#aaaaaa" - }, - "0, 13", - "0, 14", - "0, 15" - ], - [ - { - "c": "#aaaaaa" - }, - "1, 0", - { - "c": "#cccccc" - }, - "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": 2, - "c": "#aaaaaa" - }, - "1, 13", - "1, 15" - ], - [ - { - "w": 1.5, - "c": "#aaaaaa" - }, - "2, 0", - { - "c": "#cccccc" - }, - "2, 1", - "2, 2", - "2, 3", - "2, 4", - "2, 5", - "2, 6", - "2, 7", - "2, 8", - "2, 9", - "2, 10", - "2, 11", - "2, 12", - { - "w": 1.5, - "c": "#aaaaaa" - }, - "2, 13", - "2, 15" - ], - [ - { - "w": 1.75, - "c": "#aaaaaa" - }, - "3, 0", - { - "c": "#cccccc" - }, - "3, 1", - "3, 2", - "3, 3", - "3, 4", - "3, 5", - "3, 6", - "3, 7", - "3, 8", - "3, 9", - "3, 10", - "3, 11", - { - "w": 2.25, - "c": "#777777" - }, - "3, 13", - { - "c": "#aaaaaa" - }, - "3, 15" - ], - [ - { - "w": 2.25, - "c": "#aaaaaa" - }, - "4, 0", - { - "c": "#cccccc" - }, - "4, 2", - "4, 3", - "4, 4", - "4, 5", - "4, 6", - "4, 7", - "4, 8", - "4, 9", - "4, 10", - "4, 11", - { - "w": 1.75, - "c": "#aaaaaa" - }, - "4, 13", - { - "c": "#cccccc" - }, - "4, 14", - { - "c": "#aaaaaa" - }, - "4, 15" - ], - [ - { - "w": 1.25, - "c": "#aaaaaa" - }, - "5, 0", - { - "w": 1.25 - }, - "5, 1", - { - "w": 1.25 - }, - "5, 2", - { - "w": 6.25, - "c": "#cccccc" - }, - "5, 6", - { - "c": "#aaaaaa" - }, - "5, 10", - "5, 11", - "5, 12", - { - "c": "#cccccc" - }, - "5, 13", - "5, 14", - "5, 15" - ] - ] - } -} diff --git a/keyboards/keychron/k3_max/via_json/k3_max_iso_rgb.json b/keyboards/keychron/k3_max/via_json/k3_max_iso_rgb.json deleted file mode 100644 index 6e1158c6a4..0000000000 --- a/keyboards/keychron/k3_max/via_json/k3_max_iso_rgb.json +++ /dev/null @@ -1,279 +0,0 @@ -{ - "name": "Keychron K3 Max ISO RGB", - "vendorId": "0x3434", - "productId": "0x0A31", - "keycodes": ["qmk_lighting"], - "menus": [ - { - "label": "Lighting", - "content": [ - { - "label": "Backlight", - "content": [ - { - "label": "Brightness", - "type": "range", - "options": [0, 255], - "content": ["id_qmk_rgb_matrix_brightness", 3, 1] - }, - { - "label": "Effect", - "type": "dropdown", - "content": ["id_qmk_rgb_matrix_effect", 3, 2], - "options": [ - ["None", 0], - ["Solid Color", 1], - ["Breathing", 2], - ["Band Spiral Val", 3], - ["Cycle All", 4], - ["Cycle Left Right", 5], - ["Cycle Up Down", 6], - ["Rainbow Moving Chevron", 7], - ["Cycle Out In", 8], - ["Cycle Out In Dual", 9], - ["Cycle Pinwheel", 10], - ["Cycle Spiral", 11], - ["Dual Beacon", 12], - ["Rainbow Beacon", 13], - ["Jellybean Raindrops", 14], - ["Pixel Rain", 15], - ["Typing Heatmap", 16], - ["Digital Rain", 17], - ["Reactive Simple", 18], - ["Reactive Multiwide", 19], - ["Reactive Multinexus", 20], - ["Splash", 21], - ["Solid Splash", 22] - ] - }, - { - "showIf": "{id_qmk_rgb_matrix_effect} > 1", - "label": "Effect Speed", - "type": "range", - "options": [0, 255], - "content": ["id_qmk_rgb_matrix_effect_speed", 3, 3] - }, - { - "showIf": "{id_qmk_rgb_matrix_effect} != 0 && ( {id_qmk_rgb_matrix_effect} < 4 || {id_qmk_rgb_matrix_effect} == 18 || ({id_qmk_rgb_matrix_effect} > 17 && {id_qmk_rgb_matrix_effect} != 21) ) ", - "label": "Color", - "type": "color", - "content": ["id_qmk_rgb_matrix_color", 3, 4] - } - ] - } - ] - } - ], - "customKeycodes": [ - {"name": "Left Option", "title": "Left Option", "shortName": "LOpt"}, - {"name": "Right Option", "title": "Right Option", "shortName": "ROpt"}, - {"name": "Left Cmd", "title": "Left Command", "shortName": "LCmd"}, - {"name": "Right Cmd", "title": "Right Command", "shortName": "RCmd"}, - {"name": "Misson Control", "title": "Misson Control in Mac", "shortName": "MCtl"}, - {"name": "Lanuch Pad", "title": "Lanuch Pad in Windows", "shortName": "LPad"}, - {"name": "Task View", "title": "Task View in Windows", "shortName": "Task"}, - {"name": "File Explorer", "title": "File Explorer in Windows", "shortName": "File"}, - {"name": "Screen shot", "title": "Screenshot in macOS", "shortName": "SShot"}, - {"name": "Cortana", "title": "Cortana in Windows", "shortName": "Cortana"}, - {"name": "Siri", "title": "Siri in macOS", "shortName": "Siri"}, - {"name": "Bluetooth Host 1", "title": "Bluetooth Host 1", "shortName": "BTH1"}, - {"name": "Bluetooth Host 2", "title": "Bluetooth Host 2", "shortName": "BTH2"}, - {"name": "Bluetooth Host 3", "title": "Bluetooth Host 3", "shortName": "BTH3"}, - {"name": "2.4G", "title": "2.4G", "shortName": "2.4G"}, - {"name": "Battery Level", "title": "Show battery level", "shortName": "Batt"} - ], - "matrix": {"rows": 6, "cols" : 16}, - "layouts": { - "keymap": [ - [ - { - "c": "#777777" - }, - "0, 0", - { - "c": "#cccccc" - }, - "0, 1", - "0, 2", - "0, 3", - "0, 4", - { - "c": "#aaaaaa" - }, - "0, 5", - "0, 6", - "0, 7", - "0, 8", - "0, 9", - { - "c": "#cccccc" - }, - "0, 10", - "0, 11", - "0, 12", - { - "c": "#aaaaaa" - }, - "0, 13", - "0, 14", - "0, 15" - ], - [ - { - "c": "#aaaaaa" - }, - "1, 0", - { - "c": "#cccccc" - }, - "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": 2, - "c": "#aaaaaa" - }, - "1, 13", - "1, 15" - ], - [ - { - "w": 1.5, - "c": "#aaaaaa" - }, - "2, 0", - { - "c": "#cccccc" - }, - "2, 1", - "2, 2", - "2, 3", - "2, 4", - "2, 5", - "2, 6", - "2, 7", - "2, 8", - "2, 9", - "2, 10", - "2, 11", - "2, 12", - { - "x": 0.25, - "w": 1.25, - "h": 2, - "x2": -0.25, - "w2": 1.5, - "h2": 1, - "c": "#777777" - }, - "2, 13", - { - "c": "#aaaaaa" - }, - "2, 15" - ], - [ - { - "w": 1.75, - "c": "#aaaaaa" - }, - "3, 0", - { - "c": "#cccccc" - }, - "3, 1", - "3, 2", - "3, 3", - "3, 4", - "3, 5", - "3, 6", - "3, 7", - "3, 8", - "3, 9", - "3, 10", - "3, 11", - "3, 13", - { - "x": 1.25, - "c": "#aaaaaa" - }, - "3, 15" - ], - [ - { - "w": 1.25, - "c": "#aaaaaa" - }, - "4, 0", - { - "c": "#cccccc" - }, - "4, 1", - "4, 2", - "4, 3", - "4, 4", - "4, 5", - "4, 6", - "4, 7", - "4, 8", - "4, 9", - "4, 10", - "4, 11", - { - "w": 1.75, - "c": "#aaaaaa" - }, - "4, 13", - { - "c": "#cccccc" - }, - "4, 14", - { - "c": "#aaaaaa" - }, - "4, 15" - ], - [ - { - "w": 1.25, - "c": "#aaaaaa" - }, - "5, 0", - { - "w": 1.25 - }, - "5, 1", - { - "w": 1.25 - }, - "5, 2", - { - "w": 6.25, - "c": "#cccccc" - }, - "5, 6", - { - "c": "#aaaaaa" - }, - "5, 10", - "5, 11", - "5, 12", - { - "c": "#cccccc" - }, - "5, 13", - "5, 14", - "5, 15" - ] - ] - } -} diff --git a/keyboards/keychron/k3_max/via_json/k3_max_iso_white.json b/keyboards/keychron/k3_max/via_json/k3_max_iso_white.json deleted file mode 100644 index 5bdfbb24b7..0000000000 --- a/keyboards/keychron/k3_max/via_json/k3_max_iso_white.json +++ /dev/null @@ -1,218 +0,0 @@ -{ - "name": "Keychron K3 Max ISO White", - "vendorId": "0x3434", - "productId": "0x0A34", - "keycodes": ["qmk_lighting"], - "customKeycodes": [ - {"name": "Left Option", "title": "Left Option", "shortName": "LOpt"}, - {"name": "Right Option", "title": "Right Option", "shortName": "ROpt"}, - {"name": "Left Cmd", "title": "Left Command", "shortName": "LCmd"}, - {"name": "Right Cmd", "title": "Right Command", "shortName": "RCmd"}, - {"name": "Misson Control", "title": "Misson Control in Mac", "shortName": "MCtl"}, - {"name": "Lanuch Pad", "title": "Lanuch Pad in Windows", "shortName": "LPad"}, - {"name": "Task View", "title": "Task View in Windows", "shortName": "Task"}, - {"name": "File Explorer", "title": "File Explorer in Windows", "shortName": "File"}, - {"name": "Screen shot", "title": "Screenshot in macOS", "shortName": "SShot"}, - {"name": "Cortana", "title": "Cortana in Windows", "shortName": "Cortana"}, - {"name": "Siri", "title": "Siri in macOS", "shortName": "Siri"}, - {"name": "Bluetooth Host 1", "title": "Bluetooth Host 1", "shortName": "BTH1"}, - {"name": "Bluetooth Host 2", "title": "Bluetooth Host 2", "shortName": "BTH2"}, - {"name": "Bluetooth Host 3", "title": "Bluetooth Host 3", "shortName": "BTH3"}, - {"name": "2.4G", "title": "2.4G", "shortName": "2.4G"}, - {"name": "Battery Level", "title": "Show battery level", "shortName": "Batt"} - ], - "matrix": {"rows": 6, "cols" : 16}, - "layouts": { - "keymap": [ - [ - { - "c": "#777777" - }, - "0, 0", - { - "c": "#cccccc" - }, - "0, 1", - "0, 2", - "0, 3", - "0, 4", - { - "c": "#aaaaaa" - }, - "0, 5", - "0, 6", - "0, 7", - "0, 8", - "0, 9", - { - "c": "#cccccc" - }, - "0, 10", - "0, 11", - "0, 12", - { - "c": "#aaaaaa" - }, - "0, 13", - "0, 14", - "0, 15" - ], - [ - { - "c": "#aaaaaa" - }, - "1, 0", - { - "c": "#cccccc" - }, - "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": 2, - "c": "#aaaaaa" - }, - "1, 13", - "1, 15" - ], - [ - { - "w": 1.5, - "c": "#aaaaaa" - }, - "2, 0", - { - "c": "#cccccc" - }, - "2, 1", - "2, 2", - "2, 3", - "2, 4", - "2, 5", - "2, 6", - "2, 7", - "2, 8", - "2, 9", - "2, 10", - "2, 11", - "2, 12", - { - "x": 0.25, - "w": 1.25, - "h": 2, - "x2": -0.25, - "w2": 1.5, - "h2": 1, - "c": "#777777" - }, - "2, 13", - { - "c": "#aaaaaa" - }, - "2, 15" - ], - [ - { - "w": 1.75, - "c": "#aaaaaa" - }, - "3, 0", - { - "c": "#cccccc" - }, - "3, 1", - "3, 2", - "3, 3", - "3, 4", - "3, 5", - "3, 6", - "3, 7", - "3, 8", - "3, 9", - "3, 10", - "3, 11", - "3, 13", - { - "x": 1.25, - "c": "#aaaaaa" - }, - "3, 15" - ], - [ - { - "w": 1.25, - "c": "#aaaaaa" - }, - "4, 0", - { - "c": "#cccccc" - }, - "4, 1", - "4, 2", - "4, 3", - "4, 4", - "4, 5", - "4, 6", - "4, 7", - "4, 8", - "4, 9", - "4, 10", - "4, 11", - { - "w": 1.75, - "c": "#aaaaaa" - }, - "4, 13", - { - "c": "#cccccc" - }, - "4, 14", - { - "c": "#aaaaaa" - }, - "4, 15" - ], - [ - { - "w": 1.25, - "c": "#aaaaaa" - }, - "5, 0", - { - "w": 1.25 - }, - "5, 1", - { - "w": 1.25 - }, - "5, 2", - { - "w": 6.25, - "c": "#cccccc" - }, - "5, 6", - { - "c": "#aaaaaa" - }, - "5, 10", - "5, 11", - "5, 12", - { - "c": "#cccccc" - }, - "5, 13", - "5, 14", - "5, 15" - ] - ] - } -} diff --git a/keyboards/keychron/k3_max/via_json/k3_max_jis_rgb.json b/keyboards/keychron/k3_max/via_json/k3_max_jis_rgb.json deleted file mode 100644 index 8598a7447f..0000000000 --- a/keyboards/keychron/k3_max/via_json/k3_max_jis_rgb.json +++ /dev/null @@ -1,267 +0,0 @@ -{ - "name": "Keychron K3 Max JIS RGB", - "vendorId": "0x3434", - "productId": "0x0A32", - "keycodes": ["qmk_lighting"], - "menus": [ - { - "label": "Lighting", - "content": [ - { - "label": "Backlight", - "content": [ - { - "label": "Brightness", - "type": "range", - "options": [0, 255], - "content": ["id_qmk_rgb_matrix_brightness", 3, 1] - }, - { - "label": "Effect", - "type": "dropdown", - "content": ["id_qmk_rgb_matrix_effect", 3, 2], - "options": [ - ["None", 0], - ["Solid Color", 1], - ["Breathing", 2], - ["Band Spiral Val", 3], - ["Cycle All", 4], - ["Cycle Left Right", 5], - ["Cycle Up Down", 6], - ["Rainbow Moving Chevron", 7], - ["Cycle Out In", 8], - ["Cycle Out In Dual", 9], - ["Cycle Pinwheel", 10], - ["Cycle Spiral", 11], - ["Dual Beacon", 12], - ["Rainbow Beacon", 13], - ["Jellybean Raindrops", 14], - ["Pixel Rain", 15], - ["Typing Heatmap", 16], - ["Digital Rain", 17], - ["Reactive Simple", 18], - ["Reactive Multiwide", 19], - ["Reactive Multinexus", 20], - ["Splash", 21], - ["Solid Splash", 22] - ] - }, - { - "showIf": "{id_qmk_rgb_matrix_effect} > 1", - "label": "Effect Speed", - "type": "range", - "options": [0, 255], - "content": ["id_qmk_rgb_matrix_effect_speed", 3, 3] - }, - { - "showIf": "{id_qmk_rgb_matrix_effect} != 0 && ( {id_qmk_rgb_matrix_effect} < 4 || {id_qmk_rgb_matrix_effect} == 18 || ({id_qmk_rgb_matrix_effect} > 17 && {id_qmk_rgb_matrix_effect} != 21) ) ", - "label": "Color", - "type": "color", - "content": ["id_qmk_rgb_matrix_color", 3, 4] - } - ] - } - ] - } - ], - "customKeycodes": [ - {"name": "Left Option", "title": "Left Option", "shortName": "LOpt"}, - {"name": "Right Option", "title": "Right Option", "shortName": "ROpt"}, - {"name": "Left Cmd", "title": "Left Command", "shortName": "LCmd"}, - {"name": "Right Cmd", "title": "Right Command", "shortName": "RCmd"}, - {"name": "Misson Control", "title": "Misson Control in Mac", "shortName": "MCtl"}, - {"name": "Lanuch Pad", "title": "Lanuch Pad in Windows", "shortName": "LPad"}, - {"name": "Task View", "title": "Task View in Windows", "shortName": "Task"}, - {"name": "File Explorer", "title": "File Explorer in Windows", "shortName": "File"}, - {"name": "Screen shot", "title": "Screenshot in macOS", "shortName": "SShot"}, - {"name": "Cortana", "title": "Cortana in Windows", "shortName": "Cortana"}, - {"name": "Siri", "title": "Siri in macOS", "shortName": "Siri"}, - {"name": "Bluetooth Host 1", "title": "Bluetooth Host 1", "shortName": "BTH1"}, - {"name": "Bluetooth Host 2", "title": "Bluetooth Host 2", "shortName": "BTH2"}, - {"name": "Bluetooth Host 3", "title": "Bluetooth Host 3", "shortName": "BTH3"}, - {"name": "2.4G", "title": "2.4G", "shortName": "2.4G"}, - {"name": "Battery Level", "title": "Show battery level", "shortName": "Batt"} - ], - "matrix": {"rows": 6, "cols" : 16}, - "layouts": { - "keymap": [ - [ - { - "c": "#777777" - }, - "0, 0", - { - "c": "#cccccc" - }, - "0, 1", - "0, 2", - "0, 3", - "0, 4", - { - "c": "#aaaaaa" - }, - "0, 5", - "0, 6", - "0, 7", - "0, 8", - "0, 9", - { - "c": "#cccccc" - }, - "0, 10", - "0, 11", - "0, 12", - { - "c": "#aaaaaa" - }, - "0, 13", - "0, 14", - "0, 15" - ], - [ - { - "c": "#aaaaaa" - }, - "1, 0", - { - "c": "#cccccc" - }, - "1, 1", - "1, 2", - "1, 3", - "1, 4", - "1, 5", - "1, 6", - "1, 7", - "1, 8", - "1, 9", - "1, 10", - "1, 11", - "1, 12", - "1, 13", - "1, 14", - { - "c": "#aaaaaa" - }, - "1, 15" - ], - [ - { - "w": 1.5, - "c": "#aaaaaa" - }, - "2, 0", - { - "c": "#cccccc" - }, - "2, 1", - "2, 2", - "2, 3", - "2, 4", - "2, 5", - "2, 6", - "2, 7", - "2, 8", - "2, 9", - "2, 10", - "2, 11", - "2, 12", - { - "x": 0.25, - "w": 1.25, - "h": 2, - "x2": -0.25, - "w2": 1.5, - "h2": 1, - "c": "#777777" - }, - "2, 13", - { - "c": "#aaaaaa" - }, - "2, 15" - ], - [ - { - "w": 1.75, - "c": "#aaaaaa" - }, - "3, 0", - { - "c": "#cccccc" - }, - "3, 1", - "3, 2", - "3, 3", - "3, 4", - "3, 5", - "3, 6", - "3, 7", - "3, 8", - "3, 9", - "3, 10", - "3, 11", - "3, 13", - { - "x": 1.25, - "c": "#aaaaaa" - }, - "3, 15" - ], - [ - { - "w": 2.25, - "c": "#aaaaaa" - }, - "4, 0", - { - "c": "#cccccc" - }, - "4, 2", - "4, 3", - "4, 4", - "4, 5", - "4, 6", - "4, 7", - "4, 8", - "4, 9", - "4, 10", - "4, 11", - "4, 13", - { - "w": 1.75, - "c": "#aaaaaa" - }, - "4, 14", - "4, 15" - ], - [ - { - "c": "#aaaaaa" - }, - "5, 0", - "5, 1", - "5, 2", - "5, 3", - { - "w": 5, - "c": "#cccccc" - }, - "5, 6", - { - "c": "#aaaaaa" - }, - "5, 9", - "5, 10", - "5, 11", - { - "c": "#cccccc" - }, - "5, 12", - "5, 13", - "5, 14", - "5, 15" - ] - ] - } -} diff --git a/keyboards/keychron/k3_max/via_json/k3_max_jis_white.json b/keyboards/keychron/k3_max/via_json/k3_max_jis_white.json deleted file mode 100644 index 895fd7d187..0000000000 --- a/keyboards/keychron/k3_max/via_json/k3_max_jis_white.json +++ /dev/null @@ -1,205 +0,0 @@ -{ - "name": "Keychron K3 Max JIS White", - "vendorId": "0x3434", - "productId": "0x0A35", - "customKeycodes": [ - {"name": "Left Option", "title": "Left Option", "shortName": "LOpt"}, - {"name": "Right Option", "title": "Right Option", "shortName": "ROpt"}, - {"name": "Left Cmd", "title": "Left Command", "shortName": "LCmd"}, - {"name": "Right Cmd", "title": "Right Command", "shortName": "RCmd"}, - {"name": "Misson Control", "title": "Misson Control in Mac", "shortName": "MCtl"}, - {"name": "Lanuch Pad", "title": "Lanuch Pad in Windows", "shortName": "LPad"}, - {"name": "Task View", "title": "Task View in Windows", "shortName": "Task"}, - {"name": "File Explorer", "title": "File Explorer in Windows", "shortName": "File"}, - {"name": "Screen shot", "title": "Screenshot in macOS", "shortName": "SShot"}, - {"name": "Cortana", "title": "Cortana in Windows", "shortName": "Cortana"}, - {"name": "Siri", "title": "Siri in macOS", "shortName": "Siri"}, - {"name": "Bluetooth Host 1", "title": "Bluetooth Host 1", "shortName": "BTH1"}, - {"name": "Bluetooth Host 2", "title": "Bluetooth Host 2", "shortName": "BTH2"}, - {"name": "Bluetooth Host 3", "title": "Bluetooth Host 3", "shortName": "BTH3"}, - {"name": "2.4G", "title": "2.4G", "shortName": "2.4G"}, - {"name": "Battery Level", "title": "Show battery level", "shortName": "Batt"} - ], - "matrix": {"rows": 6, "cols" : 16}, - "layouts": { - "keymap": [ - [ - { - "c": "#777777" - }, - "0, 0", - { - "c": "#cccccc" - }, - "0, 1", - "0, 2", - "0, 3", - "0, 4", - { - "c": "#aaaaaa" - }, - "0, 5", - "0, 6", - "0, 7", - "0, 8", - "0, 9", - { - "c": "#cccccc" - }, - "0, 10", - "0, 11", - "0, 12", - { - "c": "#aaaaaa" - }, - "0, 13", - "0, 14", - "0, 15" - ], - [ - { - "c": "#aaaaaa" - }, - "1, 0", - { - "c": "#cccccc" - }, - "1, 1", - "1, 2", - "1, 3", - "1, 4", - "1, 5", - "1, 6", - "1, 7", - "1, 8", - "1, 9", - "1, 10", - "1, 11", - "1, 12", - "1, 13", - "1, 14", - { - "c": "#aaaaaa" - }, - "1, 15" - ], - [ - { - "w": 1.5, - "c": "#aaaaaa" - }, - "2, 0", - { - "c": "#cccccc" - }, - "2, 1", - "2, 2", - "2, 3", - "2, 4", - "2, 5", - "2, 6", - "2, 7", - "2, 8", - "2, 9", - "2, 10", - "2, 11", - "2, 12", - { - "x": 0.25, - "w": 1.25, - "h": 2, - "x2": -0.25, - "w2": 1.5, - "h2": 1, - "c": "#777777" - }, - "2, 13", - { - "c": "#aaaaaa" - }, - "2, 15" - ], - [ - { - "w": 1.75, - "c": "#aaaaaa" - }, - "3, 0", - { - "c": "#cccccc" - }, - "3, 1", - "3, 2", - "3, 3", - "3, 4", - "3, 5", - "3, 6", - "3, 7", - "3, 8", - "3, 9", - "3, 10", - "3, 11", - "3, 13", - { - "x": 1.25, - "c": "#aaaaaa" - }, - "3, 15" - ], - [ - { - "w": 2.25, - "c": "#aaaaaa" - }, - "4, 0", - { - "c": "#cccccc" - }, - "4, 2", - "4, 3", - "4, 4", - "4, 5", - "4, 6", - "4, 7", - "4, 8", - "4, 9", - "4, 10", - "4, 11", - "4, 13", - { - "w": 1.75, - "c": "#aaaaaa" - }, - "4, 14", - "4, 15" - ], - [ - { - "c": "#aaaaaa" - }, - "5, 0", - "5, 1", - "5, 2", - "5, 3", - { - "w": 5, - "c": "#cccccc" - }, - "5, 6", - { - "c": "#aaaaaa" - }, - "5, 9", - "5, 10", - "5, 11", - { - "c": "#cccccc" - }, - "5, 12", - "5, 13", - "5, 14", - "5, 15" - ] - ] - } -} diff --git a/keyboards/keychron/k3_pro/ansi/rgb/config.h b/keyboards/keychron/k3_pro/ansi/rgb/config.h deleted file mode 100644 index a28c818f2c..0000000000 --- a/keyboards/keychron/k3_pro/ansi/rgb/config.h +++ /dev/null @@ -1,58 +0,0 @@ -/* 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 . - */ - -#pragma once - -#ifdef RGB_MATRIX_ENABLE -/* RGB Matrix driver configuration */ -# define DRIVER_COUNT 2 - -# define DRIVER_ADDR_1 0b1110111 -# define DRIVER_ADDR_2 0b1110100 -# define DRIVER_1_LED_COUNT 46 -# define DRIVER_2_LED_COUNT 38 -# define RGB_MATRIX_LED_COUNT (DRIVER_1_LED_COUNT + DRIVER_2_LED_COUNT) - -/* Set to infinit, which is use in USB mode by default */ -# define RGB_MATRIX_TIMEOUT RGB_MATRIX_TIMEOUT_INFINITE - -/* Allow shutdown of led driver to save power */ -# define RGB_MATRIX_DRIVER_SHUTDOWN_ENABLE -/* Turn off backlight on low brightness to save power */ -# define RGB_MATRIX_BRIGHTNESS_TURN_OFF_VAL 48 - -/* Caps lock indicating led */ -# define DIM_CAPS_LOCK -# define CAPS_LOCK_INDEX 46 -# define LOW_BAT_IND_INDEX 77 - -# ifdef VIA_ENABLE -# define VIA_QMK_RGBLIGHT_ENABLE -# endif - -/* RGB Matrix Animation modes. Explicitly enabled - * For full list of effects, see: - * https://docs.qmk.fm/#/feature_rgb_matrix?id=rgb-matrix-effects - */ - -# define RGB_MATRIX_KEYPRESSES -# define RGB_MATRIX_FRAMEBUFFER_EFFECTS - -/* Set LED driver current */ -# define SNLED27351_CURRENT_TUNE \ - { 0x14, 0x14, 0x14, 0x14, 0x14, 0x14, 0x14, 0x14, 0x14, 0x14, 0x14, 0x14 } - -#endif diff --git a/keyboards/keychron/k3_pro/ansi/rgb/info.json b/keyboards/keychron/k3_pro/ansi/rgb/info.json deleted file mode 100644 index e61448bcc8..0000000000 --- a/keyboards/keychron/k3_pro/ansi/rgb/info.json +++ /dev/null @@ -1,35 +0,0 @@ -{ - "usb": { - "pid": "0x0230", - "device_version": "1.0.0" - }, - "features": { - "rgb_matrix": true - }, - "rgb_matrix": { - "driver": "snled27351", - "animations": { - "breathing": true, - "band_spiral_val": true, - "cycle_all": true, - "cycle_left_right": true, - "cycle_up_down": true, - "rainbow_moving_chevron": true, - "cycle_out_in": true, - "cycle_out_in_dual": true, - "cycle_pinwheel": true, - "cycle_spiral": true, - "dual_beacon": true, - "rainbow_beacon": true, - "jellybean_raindrops": true, - "pixel_rain": true, - "typing_heatmap": true, - "digital_rain": true, - "solid_reactive_simple": true, - "solid_reactive_multiwide": true, - "solid_reactive_multinexus": true, - "splash": true, - "solid_splash": true - } - } -} diff --git a/keyboards/keychron/k3_pro/ansi/rgb/keymaps/default/keymap.c b/keyboards/keychron/k3_pro/ansi/rgb/keymaps/default/keymap.c deleted file mode 100644 index 636ea5f910..0000000000 --- a/keyboards/keychron/k3_pro/ansi/rgb/keymaps/default/keymap.c +++ /dev/null @@ -1,59 +0,0 @@ -/* 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 . - */ - -#include QMK_KEYBOARD_H - -// clang-format off -enum layers{ - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN -}; - -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { -[MAC_BASE] = LAYOUT_ansi_84( - KC_ESC, KC_BRID, KC_BRIU, KC_MCTL, KC_LPAD, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_SNAP, KC_DEL, RGB_MOD, - KC_GRV, 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_PGUP, - 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_PGDN, - 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_HOME, - 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_LOPTN, KC_LCMMD, KC_SPC, KC_RCMMD,MO(MAC_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - -[MAC_FN] = LAYOUT_ansi_84( - KC_TRNS, 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, - KC_TRNS, BT_HST1, BT_HST2, BT_HST3, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, BAT_LVL, NK_TOGG, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS), - -[WIN_BASE] = LAYOUT_ansi_84( - KC_ESC, 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_PSCR, KC_DEL, RGB_MOD, - KC_GRV, 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_PGUP, - 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_PGDN, - 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_HOME, - 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_SPC, KC_RALT, MO(WIN_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - -[WIN_FN] = LAYOUT_ansi_84( - KC_TRNS, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_TRNS, KC_TRNS, RGB_TOG, - KC_TRNS, BT_HST1, BT_HST2, BT_HST3, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, BAT_LVL, NK_TOGG, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, 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/keychron/k3_pro/ansi/rgb/keymaps/via/keymap.c b/keyboards/keychron/k3_pro/ansi/rgb/keymaps/via/keymap.c deleted file mode 100644 index 636ea5f910..0000000000 --- a/keyboards/keychron/k3_pro/ansi/rgb/keymaps/via/keymap.c +++ /dev/null @@ -1,59 +0,0 @@ -/* 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 . - */ - -#include QMK_KEYBOARD_H - -// clang-format off -enum layers{ - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN -}; - -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { -[MAC_BASE] = LAYOUT_ansi_84( - KC_ESC, KC_BRID, KC_BRIU, KC_MCTL, KC_LPAD, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_SNAP, KC_DEL, RGB_MOD, - KC_GRV, 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_PGUP, - 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_PGDN, - 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_HOME, - 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_LOPTN, KC_LCMMD, KC_SPC, KC_RCMMD,MO(MAC_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - -[MAC_FN] = LAYOUT_ansi_84( - KC_TRNS, 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, - KC_TRNS, BT_HST1, BT_HST2, BT_HST3, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, BAT_LVL, NK_TOGG, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS), - -[WIN_BASE] = LAYOUT_ansi_84( - KC_ESC, 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_PSCR, KC_DEL, RGB_MOD, - KC_GRV, 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_PGUP, - 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_PGDN, - 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_HOME, - 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_SPC, KC_RALT, MO(WIN_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - -[WIN_FN] = LAYOUT_ansi_84( - KC_TRNS, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_TRNS, KC_TRNS, RGB_TOG, - KC_TRNS, BT_HST1, BT_HST2, BT_HST3, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, BAT_LVL, NK_TOGG, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, 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/keychron/k3_pro/ansi/rgb/keymaps/via/rules.mk b/keyboards/keychron/k3_pro/ansi/rgb/keymaps/via/rules.mk deleted file mode 100644 index 1e5b99807c..0000000000 --- a/keyboards/keychron/k3_pro/ansi/rgb/keymaps/via/rules.mk +++ /dev/null @@ -1 +0,0 @@ -VIA_ENABLE = yes diff --git a/keyboards/keychron/k3_pro/ansi/rgb/rgb.c b/keyboards/keychron/k3_pro/ansi/rgb/rgb.c deleted file mode 100644 index afac97a3c5..0000000000 --- a/keyboards/keychron/k3_pro/ansi/rgb/rgb.c +++ /dev/null @@ -1,147 +0,0 @@ -/* 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 . - */ - -#include "quantum.h" - -// clang-format off -#ifdef RGB_MATRIX_ENABLE -const snled27351_led_t g_snled27351_leds[RGB_MATRIX_LED_COUNT] = { -/* Refer to CKLED manual for these locations - * driver - * | R location - * | | G location - * | | | B location - * | | | | */ - {0, I_1, G_1, H_1}, - {0, I_2, G_2, H_2}, - {0, I_3, G_3, H_3}, - {0, I_4, G_4, H_4}, - {0, I_5, G_5, H_5}, - {0, I_6, G_6, H_6}, - {0, I_7, G_7, H_7}, - {0, I_8, G_8, H_8}, - {0, I_9, G_9, H_9}, - {0, I_10, G_10, H_10}, - {0, I_11, G_11, H_11}, - {0, I_12, G_12, H_12}, - {0, I_13, G_13, H_13}, - {0, I_14, G_14, H_14}, - {0, I_15, G_15, H_15}, - {0, I_16, G_16, H_16}, - - {0, F_1, D_1, E_1}, - {0, F_2, D_2, E_2}, - {0, F_3, D_3, E_3}, - {0, F_4, D_4, E_4}, - {0, F_5, D_5, E_5}, - {0, F_6, D_6, E_6}, - {0, F_7, D_7, E_7}, - {0, F_8, D_8, E_8}, - {0, F_9, D_9, E_9}, - {0, F_10, D_10, E_10}, - {0, F_11, D_11, E_11}, - {0, F_12, D_12, E_12}, - {0, F_13, D_13, E_13}, - {0, F_14, D_14, E_14}, - {0, F_16, D_16, E_16}, - - {0, A_1, C_1, B_1}, - {0, A_2, C_2, B_2}, - {0, A_3, C_3, B_3}, - {0, A_4, C_4, B_4}, - {0, A_5, C_5, B_5}, - {0, A_6, C_6, B_6}, - {0, A_7, C_7, B_7}, - {0, A_8, C_8, B_8}, - {0, A_9, C_9, B_9}, - {0, A_10, C_10, B_10}, - {0, A_11, C_11, B_11}, - {0, A_12, C_12, B_12}, - {0, A_13, C_13, B_13}, - {0, A_14, C_14, B_14}, - {0, A_16, C_16, B_16}, - - {1, I_1, G_1, H_1}, - {1, I_2, G_2, H_2}, - {1, I_3, G_3, H_3}, - {1, I_4, G_4, H_4}, - {1, I_5, G_5, H_5}, - {1, I_6, G_6, H_6}, - {1, I_7, G_7, H_7}, - {1, I_8, G_8, H_8}, - {1, I_9, G_9, H_9}, - {1, I_10, G_10, H_10}, - {1, I_11, G_11, H_11}, - {1, I_12, G_12, H_12}, - {1, I_14, G_14, H_14}, - {1, I_16, G_16, H_16}, - - {1, C_1, A_1, B_1}, - {1, C_3, A_3, B_3}, - {1, C_4, A_4, B_4}, - {1, C_5, A_5, B_5}, - {1, C_6, A_6, B_6}, - {1, C_7, A_7, B_7}, - {1, C_8, A_8, B_8}, - {1, C_9, A_9, B_9}, - {1, C_10, A_10, B_10}, - {1, C_11, A_11, B_11}, - {1, C_12, A_12, B_12}, - {1, C_14, A_14, B_14}, - {1, C_15, A_15, B_15}, - {1, C_16, A_16, B_16}, - - {1, F_1, D_1, E_1}, - {1, F_2, D_2, E_2}, - {1, F_3, D_3, E_3}, - {1, F_7, D_7, E_7}, - {1, F_11, D_11, E_11}, - {1, F_12, D_12, E_12}, - {1, F_13, D_13, E_13}, - {1, F_14, D_14, E_14}, - {1, F_15, D_15, E_15}, - {1, F_16, D_16, E_16}, - -}; - -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, NO_LED, 30 }, - { 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, NO_LED, 45 }, - { 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, NO_LED, 58, NO_LED, 59 }, - { 60, NO_LED, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, NO_LED, 71, 72, 73 }, - { 74, 75, 76, NO_LED, NO_LED, NO_LED, 77, NO_LED, NO_LED, NO_LED, 78, 79, 80, 81, 82, 83 } - }, - { - {0, 0}, {14, 0}, {29, 0}, {44, 0}, {59, 0}, {74, 0}, { 89, 0}, {104, 0}, {119, 0}, {134, 0}, {149, 0}, {164, 0}, {179, 0}, {194, 0}, {209, 0}, {223, 0}, - {0,12}, {14,12}, {29,12}, {44,12}, {59,12}, {74,12}, { 89, 12}, {104, 12}, {119, 12}, {134, 12}, {149, 12}, {164, 12}, {179, 12}, {201, 12}, {223, 12}, - {3,25}, {22,25}, {37,25}, {52,25}, {67,25}, {82,25}, { 97, 25}, {112, 25}, {126, 25}, {141, 25}, {156, 25}, {171, 25}, {186, 25}, {205, 25}, {223, 25}, - {5,38}, {26,38}, {41,38}, {55,38}, {70,38}, {85,38}, {100, 38}, {115, 38}, {130, 38}, {145, 38}, {160, 38}, {175, 38}, {199, 38}, {223, 38}, - {9,51}, {33,51}, {48,51}, {63,51}, {78,51}, { 93, 51}, {108, 51}, {123, 51}, {138, 51}, {153, 51}, {168, 51}, {188, 51}, {209, 51}, {223, 51}, - {1,64}, {20,64}, {39,64}, { 95, 64}, {149, 64}, {164, 64}, {179, 64}, {194, 64}, {209, 64}, {223, 64} - }, - { - 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, - 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, - 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, - 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, - 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, - 4, 4, 4, 4, 4, 4, 4, 4, 4, 4 - - } -}; -#endif diff --git a/keyboards/keychron/k3_pro/ansi/rgb/rules.mk b/keyboards/keychron/k3_pro/ansi/rgb/rules.mk deleted file mode 100644 index f886ea2e8e..0000000000 --- a/keyboards/keychron/k3_pro/ansi/rgb/rules.mk +++ /dev/null @@ -1 +0,0 @@ -# This file intentionally blank \ No newline at end of file diff --git a/keyboards/keychron/k3_pro/ansi/white/config.h b/keyboards/keychron/k3_pro/ansi/white/config.h deleted file mode 100644 index bb018416fd..0000000000 --- a/keyboards/keychron/k3_pro/ansi/white/config.h +++ /dev/null @@ -1,50 +0,0 @@ -/* 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 . - */ - -#pragma once - -#ifdef LED_MATRIX_ENABLE -/* LED matrix driver configuration */ -# define DRIVER_COUNT 1 -# define SNLED27351_I2C_ADDRESS_1 SNLED27351_I2C_ADDRESS_GND -# define LED_MATRIX_LED_COUNT 84 - -/* Set to infinit, which is use in USB mode by default */ -# define LED_MATRIX_TIMEOUT LED_MATRIX_TIMEOUT_INFINITE -/* Allow shutdown of led driver to save power */ -# define LED_MATRIX_DRIVER_SHUTDOWN_ENABLE -/* Turn off backlight on low brightness to save power */ -# define LED_MATRIX_BRIGHTNESS_TURN_OFF_VAL 48 - -/* Caps lock indicating led */ -# define DIM_CAPS_LOCK -# define CAPS_LOCK_INDEX 46 -# define LOW_BAT_IND_INDEX 77 - -/* LED Matrix Animation modes. Explicitly enabled - * For full list of effects, see: - * https://docs.qmk.fm/#/feature_led_matrix?id=led-matrix-effects - */ -# define LED_MATRIX_KEYPRESSES - -/* Use first 6 channels of LED driver */ -# define PHASE_CHANNEL MSKPHASE_6CHANNEL - -/* Set LED driver current */ -# define SNLED27351_CURRENT_TUNE \ - { 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20 } - -#endif diff --git a/keyboards/keychron/k3_pro/ansi/white/info.json b/keyboards/keychron/k3_pro/ansi/white/info.json deleted file mode 100644 index 8b0e09c22a..0000000000 --- a/keyboards/keychron/k3_pro/ansi/white/info.json +++ /dev/null @@ -1,30 +0,0 @@ -{ - "usb": { - "pid": "0x0233", - "device_version": "1.0.0" - }, - "features": { - "led_matrix": true - }, - "led_matrix": { - "driver": "snled27351", - "animations": { - "none": true, - "solid": true, - "breathing": true, - "band_pinwheel": true, - "band_spiral": true, - "cycle_left_right": true, - "cycle_up_down": true, - "cycle_out_in": true, - "dual_beacon": true, - "solid_reactive_simple": true, - "solid_reactive_multiwide": true, - "solid_reactive_multinexus": true, - "solid_splash": true, - "wave_left_right": true, - "wave_up_down": true, - "effect_max": true - } - } -} diff --git a/keyboards/keychron/k3_pro/ansi/white/keymaps/default/keymap.c b/keyboards/keychron/k3_pro/ansi/white/keymaps/default/keymap.c deleted file mode 100644 index 8f2a03ae46..0000000000 --- a/keyboards/keychron/k3_pro/ansi/white/keymaps/default/keymap.c +++ /dev/null @@ -1,59 +0,0 @@ -/* 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 . - */ - -#include QMK_KEYBOARD_H - -// clang-format off -enum layers{ - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN -}; - -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { -[MAC_BASE] = LAYOUT_ansi_84( - KC_ESC, KC_BRID, KC_BRIU, KC_MCTL, KC_LPAD, BL_DOWN, BL_UP, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_SNAP, KC_DEL, BL_STEP, - KC_GRV, 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_PGUP, - 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_PGDN, - 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_HOME, - 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_LOPTN, KC_LCMMD, KC_SPC, KC_RCMMD,MO(MAC_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - -[MAC_FN] = LAYOUT_ansi_84( - KC_TRNS, 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, BL_TOGG, - KC_TRNS, BT_HST1, BT_HST2, BT_HST3, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - BL_TOGG, BL_STEP, BL_UP, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, BL_DOWN, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, BAT_LVL, NK_TOGG, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS), - -[WIN_BASE] = LAYOUT_ansi_84( - KC_ESC, 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_PSCR, KC_DEL, BL_STEP, - KC_GRV, 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_PGUP, - 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_PGDN, - 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_HOME, - 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_SPC, KC_RALT, MO(WIN_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - -[WIN_FN] = LAYOUT_ansi_84( - KC_TRNS, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, BL_DOWN, BL_UP, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_TRNS, KC_TRNS, BL_TOGG, - KC_TRNS, BT_HST1, BT_HST2, BT_HST3, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - BL_TOGG, BL_STEP, BL_UP, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, BL_DOWN, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, BAT_LVL, NK_TOGG, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, 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/keychron/k3_pro/ansi/white/keymaps/via/keymap.c b/keyboards/keychron/k3_pro/ansi/white/keymaps/via/keymap.c deleted file mode 100644 index 8f2a03ae46..0000000000 --- a/keyboards/keychron/k3_pro/ansi/white/keymaps/via/keymap.c +++ /dev/null @@ -1,59 +0,0 @@ -/* 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 . - */ - -#include QMK_KEYBOARD_H - -// clang-format off -enum layers{ - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN -}; - -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { -[MAC_BASE] = LAYOUT_ansi_84( - KC_ESC, KC_BRID, KC_BRIU, KC_MCTL, KC_LPAD, BL_DOWN, BL_UP, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_SNAP, KC_DEL, BL_STEP, - KC_GRV, 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_PGUP, - 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_PGDN, - 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_HOME, - 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_LOPTN, KC_LCMMD, KC_SPC, KC_RCMMD,MO(MAC_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - -[MAC_FN] = LAYOUT_ansi_84( - KC_TRNS, 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, BL_TOGG, - KC_TRNS, BT_HST1, BT_HST2, BT_HST3, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - BL_TOGG, BL_STEP, BL_UP, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, BL_DOWN, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, BAT_LVL, NK_TOGG, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS), - -[WIN_BASE] = LAYOUT_ansi_84( - KC_ESC, 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_PSCR, KC_DEL, BL_STEP, - KC_GRV, 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_PGUP, - 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_PGDN, - 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_HOME, - 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_SPC, KC_RALT, MO(WIN_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - -[WIN_FN] = LAYOUT_ansi_84( - KC_TRNS, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, BL_DOWN, BL_UP, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_TRNS, KC_TRNS, BL_TOGG, - KC_TRNS, BT_HST1, BT_HST2, BT_HST3, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - BL_TOGG, BL_STEP, BL_UP, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, BL_DOWN, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, BAT_LVL, NK_TOGG, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, 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/keychron/k3_pro/ansi/white/keymaps/via/rules.mk b/keyboards/keychron/k3_pro/ansi/white/keymaps/via/rules.mk deleted file mode 100644 index 1e5b99807c..0000000000 --- a/keyboards/keychron/k3_pro/ansi/white/keymaps/via/rules.mk +++ /dev/null @@ -1 +0,0 @@ -VIA_ENABLE = yes diff --git a/keyboards/keychron/k3_pro/ansi/white/rules.mk b/keyboards/keychron/k3_pro/ansi/white/rules.mk deleted file mode 100644 index f886ea2e8e..0000000000 --- a/keyboards/keychron/k3_pro/ansi/white/rules.mk +++ /dev/null @@ -1 +0,0 @@ -# This file intentionally blank \ No newline at end of file diff --git a/keyboards/keychron/k3_pro/ansi/white/white.c b/keyboards/keychron/k3_pro/ansi/white/white.c deleted file mode 100644 index 6b52dccb76..0000000000 --- a/keyboards/keychron/k3_pro/ansi/white/white.c +++ /dev/null @@ -1,144 +0,0 @@ -/* 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 . - */ - -#include "quantum.h" - -// clang-format off -#ifdef LED_MATRIX_ENABLE -const snled27351_led_t g_snled27351_leds[LED_MATRIX_LED_COUNT] = { -/* Refer to snled27351manual for these locations - * driver - * | LED address - * | | */ - {0, F_1}, - {0, F_2}, - {0, F_3}, - {0, F_4}, - {0, F_5}, - {0, F_6}, - {0, F_7}, - {0, F_8}, - {0, F_9}, - {0, F_10}, - {0, F_11}, - {0, F_12}, - {0, F_13}, - {0, F_14}, - {0, F_15}, - {0, F_16}, - - {0, E_1}, - {0, E_2}, - {0, E_3}, - {0, E_4}, - {0, E_5}, - {0, E_6}, - {0, E_7}, - {0, E_8}, - {0, E_9}, - {0, E_10}, - {0, E_11}, - {0, E_12}, - {0, E_13}, - {0, E_14}, - {0, E_16}, - - {0, D_1}, - {0, D_2}, - {0, D_3}, - {0, D_4}, - {0, D_5}, - {0, D_6}, - {0, D_7}, - {0, D_8}, - {0, D_9}, - {0, D_10}, - {0, D_11}, - {0, D_12}, - {0, D_13}, - {0, D_14}, - {0, D_16}, - - {0, C_1}, - {0, C_2}, - {0, C_3}, - {0, C_4}, - {0, C_5}, - {0, C_6}, - {0, C_7}, - {0, C_8}, - {0, C_9}, - {0, C_10}, - {0, C_11}, - {0, C_12}, - {0, C_14}, - {0, C_16}, - - {0, B_1}, - {0, B_3}, - {0, B_4}, - {0, B_5}, - {0, B_6}, - {0, B_7}, - {0, B_8}, - {0, B_9}, - {0, B_10}, - {0, B_11}, - {0, B_12}, - {0, B_14}, - {0, B_15}, - {0, B_16}, - - {0, A_1}, - {0, A_2}, - {0, A_3}, - {0, A_7}, - {0, A_11}, - {0, A_12}, - {0, A_13}, - {0, A_14}, - {0, A_15}, - {0, A_16}, -}; - -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, NO_LED, 30 }, - { 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, NO_LED, 45 }, - { 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, NO_LED, 58, NO_LED, 59 }, - { 60, NO_LED, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, NO_LED, 71, 72, 73 }, - { 74, 75, 76, NO_LED, NO_LED, NO_LED, 77, NO_LED, NO_LED, NO_LED, 78, 79, 80, 81, 82, 83 } - }, - { - {0, 0}, {14, 0}, {29, 0}, {44, 0}, {59, 0}, {74, 0}, { 89, 0}, {104, 0}, {119, 0}, {134, 0}, {149, 0}, {164, 0}, {179, 0}, {194, 0}, {209, 0}, {223, 0}, - {0,12}, {14,12}, {29,12}, {44,12}, {59,12}, {74,12}, { 89, 12}, {104, 12}, {119, 12}, {134, 12}, {149, 12}, {164, 12}, {179, 12}, {201, 12}, {223, 12}, - {3,25}, {22,25}, {37,25}, {52,25}, {67,25}, {82,25}, { 97, 25}, {112, 25}, {126, 25}, {141, 25}, {156, 25}, {171, 25}, {186, 25}, {205, 25}, {223, 25}, - {5,38}, {26,38}, {41,38}, {55,38}, {70,38}, {85,38}, {100, 38}, {115, 38}, {130, 38}, {145, 38}, {160, 38}, {175, 38}, {199, 38}, {223, 38}, - {9,51}, {33,51}, {48,51}, {63,51}, {78,51}, { 93, 51}, {108, 51}, {123, 51}, {138, 51}, {153, 51}, {168, 51}, {188, 51}, {209, 51}, {223, 51}, - {1,64}, {20,64}, {39,64}, { 95, 64}, {149, 64}, {164, 64}, {179, 64}, {194, 64}, {209, 64}, {223, 64} - }, - { - 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, - 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, - 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, - 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, - 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, - 4, 4, 4, 4, 4, 4, 4, 4, 4, 4 - } -}; - -#endif diff --git a/keyboards/keychron/k3_pro/config.h b/keyboards/keychron/k3_pro/config.h deleted file mode 100644 index aa59b30af7..0000000000 --- a/keyboards/keychron/k3_pro/config.h +++ /dev/null @@ -1,98 +0,0 @@ -/* 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 . - */ - -#pragma once - -/* Use SPI to drive 74HC595 shift register */ -#define DRIVE_SHRIFT_REGISTER_WITH_SPI - -/* Turn off effects when suspended */ -#define RGB_DISABLE_WHEN_USB_SUSPENDED -#define LED_DISABLE_WHEN_USB_SUSPENDED - -/* DIP switch for Mac/win OS switch */ -#define DIP_SWITCH_PINS \ - { A8 } - -/* Caps lock LED Pin */ -#define LED_CAPS_LOCK_PIN A0 -#define LED_PIN_ON_STATE 1 - -/* 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 A10 - -# 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 A4 -# define BAT_LOW_LED_PIN_ON_STATE 1 - -# define HOST_DEVICES_COUNT 3 - -# define HOST_LED_PIN_LIST \ - { H3, H3, H3 } -# define HOST_LED_PIN_ON_STATE 1 - -# 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 - -/* Emulated EEPROM configuration */ -#define WEAR_LEVELING_LOGICAL_SIZE 2048 -#define WEAR_LEVELING_BACKING_SIZE (WEAR_LEVELING_LOGICAL_SIZE * 2) -#define DYNAMIC_KEYMAP_EEPROM_MAX_ADDR 2047 - -/* Factory test keys */ -#define FN_KEY1 MO(1) -#define FN_KEY2 MO(3) diff --git a/keyboards/keychron/k3_pro/halconf.h b/keyboards/keychron/k3_pro/halconf.h deleted file mode 100644 index d20f0ab448..0000000000 --- a/keyboards/keychron/k3_pro/halconf.h +++ /dev/null @@ -1,30 +0,0 @@ -/* 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 _CHIBIOS_HAL_CONF_VER_8_0_ - -#define HAL_USE_I2C TRUE -#define HAL_USE_SPI TRUE - -#ifdef KC_BLUETOOTH_ENABLE -# define PAL_USE_CALLBACKS TRUE -# define HAL_USE_SERIAL TRUE -# define HAL_USE_RTC TRUE -#endif - -#include_next diff --git a/keyboards/keychron/k3_pro/info.json b/keyboards/keychron/k3_pro/info.json deleted file mode 100644 index 604ef4ac72..0000000000 --- a/keyboards/keychron/k3_pro/info.json +++ /dev/null @@ -1,315 +0,0 @@ -{ - "keyboard_name": "Keychron K3 Pro", - "manufacturer": "Keychron", - "url": "https://github.com/Keychron", - "maintainer": "lokher", - "processor": "STM32L432", - "bootloader": "stm32-dfu", - "usb": { - "vid": "0x3434" - }, - "features": { - "bootmagic": true, - "mousekey": true, - "extrakey": true, - "nkro": true, - "dip_switch": true, - "raw": true - }, - "diode_direction": "ROW2COL", - "matrix_size": { - "rows": 6, - "cols": 16 - }, - "matrix_pins": { - "rows": ["B5", "B4", "B3", "A15", "A14", "A13"], - "cols": ["C15", null, null, null, null, null, null, null, null, null, null, null, null, null, null, null], - "custom": true, - "custom_lite": true - }, - "layouts": { - "LAYOUT_ansi_84": { - "layout": [ - {"matrix":[0, 0], "x":0, "y":0}, - {"matrix":[0, 1], "x":1, "y":0}, - {"matrix":[0, 2], "x":2, "y":0}, - {"matrix":[0, 3], "x":3, "y":0}, - {"matrix":[0, 4], "x":4, "y":0}, - {"matrix":[0, 5], "x":5, "y":0}, - {"matrix":[0, 6], "x":6, "y":0}, - {"matrix":[0, 7], "x":7, "y":0}, - {"matrix":[0, 8], "x":8, "y":0}, - {"matrix":[0, 9], "x":9, "y":0}, - {"matrix":[0,10], "x":10, "y":0}, - {"matrix":[0,11], "x":11, "y":0}, - {"matrix":[0,12], "x":12, "y":0}, - {"matrix":[0,13], "x":13, "y":0}, - {"matrix":[0,14], "x":14, "y":0}, - {"matrix":[0,15], "x":15, "y":0}, - - {"matrix":[1, 0], "x":0, "y":1}, - {"matrix":[1, 1], "x":1, "y":1}, - {"matrix":[1, 2], "x":2, "y":1}, - {"matrix":[1, 3], "x":3, "y":1}, - {"matrix":[1, 4], "x":4, "y":1}, - {"matrix":[1, 5], "x":5, "y":1}, - {"matrix":[1, 6], "x":6, "y":1}, - {"matrix":[1, 7], "x":7, "y":1}, - {"matrix":[1, 8], "x":8, "y":1}, - {"matrix":[1, 9], "x":9, "y":1}, - {"matrix":[1,10], "x":10, "y":1}, - {"matrix":[1,11], "x":11, "y":1}, - {"matrix":[1,12], "x":12, "y":1}, - {"matrix":[1,13], "x":13, "y":1, "w":2}, - {"matrix":[1,15], "x":15, "y":1}, - - {"matrix":[2, 0], "x":0, "y":2, "w":1.5}, - {"matrix":[2, 1], "x":1.5, "y":2}, - {"matrix":[2, 2], "x":2.5, "y":2}, - {"matrix":[2, 3], "x":3.5, "y":2}, - {"matrix":[2, 4], "x":4.5, "y":2}, - {"matrix":[2, 5], "x":5.5, "y":2}, - {"matrix":[2, 6], "x":6.5, "y":2}, - {"matrix":[2, 7], "x":7.5, "y":2}, - {"matrix":[2, 8], "x":8.5, "y":2}, - {"matrix":[2, 9], "x":9.5, "y":2}, - {"matrix":[2,10], "x":10.5, "y":2}, - {"matrix":[2,11], "x":11.5, "y":2}, - {"matrix":[2,12], "x":12.5, "y":2}, - {"matrix":[2,13], "x":13.5, "y":2, "w":1.5}, - {"matrix":[2,15], "x":15, "y":2}, - - {"matrix":[3, 0], "x":0, "y":3, "w":1.75}, - {"matrix":[3, 1], "x":1.75, "y":3}, - {"matrix":[3, 2], "x":2.75, "y":3}, - {"matrix":[3, 3], "x":3.75, "y":3}, - {"matrix":[3, 4], "x":4.75, "y":3}, - {"matrix":[3, 5], "x":5.75, "y":3}, - {"matrix":[3, 6], "x":6.75, "y":3}, - {"matrix":[3, 7], "x":7.75, "y":3}, - {"matrix":[3, 8], "x":8.75, "y":3}, - {"matrix":[3, 9], "x":9.75, "y":3}, - {"matrix":[3,10], "x":10.75, "y":3}, - {"matrix":[3,11], "x":11.75, "y":3}, - {"matrix":[3,13], "x":12.75, "y":3, "w":2.25}, - {"matrix":[3,15], "x":15, "y":3}, - - {"matrix":[4, 0], "x":0, "y":4, "w":2.25}, - {"matrix":[4, 2], "x":2.25, "y":4}, - {"matrix":[4, 3], "x":3.25, "y":4}, - {"matrix":[4, 4], "x":4.25, "y":4}, - {"matrix":[4, 5], "x":5.25, "y":4}, - {"matrix":[4, 6], "x":6.25, "y":4}, - {"matrix":[4, 7], "x":7.25, "y":4}, - {"matrix":[4, 8], "x":8.25, "y":4}, - {"matrix":[4, 9], "x":9.25, "y":4}, - {"matrix":[4,10], "x":10.25, "y":4}, - {"matrix":[4,11], "x":11.25, "y":4}, - {"matrix":[4,13], "x":12.25, "y":4, "w":1.75}, - {"matrix":[4,14], "x":14, "y":4}, - {"matrix":[4,15], "x":15, "y":4}, - - {"matrix":[5, 0], "x":0, "y":5, "w":1.25}, - {"matrix":[5, 1], "x":1.25, "y":5, "w":1.25}, - {"matrix":[5, 2], "x":2.5, "y":5, "w":1.25}, - {"matrix":[5, 6], "x":3.75, "y":5, "w":6.25}, - {"matrix":[5,10], "x":10, "y":5}, - {"matrix":[5,11], "x":11, "y":5}, - {"matrix":[5,12], "x":12, "y":5}, - {"matrix":[5,13], "x":13, "y":5}, - {"matrix":[5,14], "x":14, "y":5}, - {"matrix":[5,15], "x":15, "y":5} - ] - }, - "LAYOUT_iso_85": { - "layout": [ - {"matrix":[0, 0], "x":0, "y":0}, - {"matrix":[0, 1], "x":1, "y":0}, - {"matrix":[0, 2], "x":2, "y":0}, - {"matrix":[0, 3], "x":3, "y":0}, - {"matrix":[0, 4], "x":4, "y":0}, - {"matrix":[0, 5], "x":5, "y":0}, - {"matrix":[0, 6], "x":6, "y":0}, - {"matrix":[0, 7], "x":7, "y":0}, - {"matrix":[0, 8], "x":8, "y":0}, - {"matrix":[0, 9], "x":9, "y":0}, - {"matrix":[0,10], "x":10, "y":0}, - {"matrix":[0,11], "x":11, "y":0}, - {"matrix":[0,12], "x":12, "y":0}, - {"matrix":[0,13], "x":13, "y":0}, - {"matrix":[0,14], "x":14, "y":0}, - {"matrix":[0,15], "x":15, "y":0}, - - {"matrix":[1, 0], "x":0, "y":1}, - {"matrix":[1, 1], "x":1, "y":1}, - {"matrix":[1, 2], "x":2, "y":1}, - {"matrix":[1, 3], "x":3, "y":1}, - {"matrix":[1, 4], "x":4, "y":1}, - {"matrix":[1, 5], "x":5, "y":1}, - {"matrix":[1, 6], "x":6, "y":1}, - {"matrix":[1, 7], "x":7, "y":1}, - {"matrix":[1, 8], "x":8, "y":1}, - {"matrix":[1, 9], "x":9, "y":1}, - {"matrix":[1,10], "x":10, "y":1}, - {"matrix":[1,11], "x":11, "y":1}, - {"matrix":[1,12], "x":12, "y":1}, - {"matrix":[1,13], "x":13, "y":1, "w":2}, - {"matrix":[1,15], "x":15, "y":1}, - - {"matrix":[2, 0], "x":0, "y":2, "w":1.5}, - {"matrix":[2, 1], "x":1.5, "y":2}, - {"matrix":[2, 2], "x":2.5, "y":2}, - {"matrix":[2, 3], "x":3.5, "y":2}, - {"matrix":[2, 4], "x":4.5, "y":2}, - {"matrix":[2, 5], "x":5.5, "y":2}, - {"matrix":[2, 6], "x":6.5, "y":2}, - {"matrix":[2, 7], "x":7.5, "y":2}, - {"matrix":[2, 8], "x":8.5, "y":2}, - {"matrix":[2, 9], "x":9.5, "y":2}, - {"matrix":[2,10], "x":10.5, "y":2}, - {"matrix":[2,11], "x":11.5, "y":2}, - {"matrix":[2,12], "x":12.5, "y":2}, - {"matrix":[2,13], "x":13.5, "y":2, "w":1.5}, - {"matrix":[2,15], "x":15, "y":2}, - - {"matrix":[3, 0], "x":0, "y":3, "w":1.75}, - {"matrix":[3, 1], "x":1.75, "y":3}, - {"matrix":[3, 2], "x":2.75, "y":3}, - {"matrix":[3, 3], "x":3.75, "y":3}, - {"matrix":[3, 4], "x":4.75, "y":3}, - {"matrix":[3, 5], "x":5.75, "y":3}, - {"matrix":[3, 6], "x":6.75, "y":3}, - {"matrix":[3, 7], "x":7.75, "y":3}, - {"matrix":[3, 8], "x":8.75, "y":3}, - {"matrix":[3, 9], "x":9.75, "y":3}, - {"matrix":[3,10], "x":10.75, "y":3}, - {"matrix":[3,11], "x":11.75, "y":3}, - {"matrix":[3,13], "x":12.75, "y":3, "w":2.25}, - {"matrix":[3,15], "x":15, "y":3}, - - {"matrix":[4, 0], "x":0, "y":4, "w":1.25}, - {"matrix":[4, 1], "x":1.25, "y":4}, - {"matrix":[4, 2], "x":2.25, "y":4}, - {"matrix":[4, 3], "x":3.25, "y":4}, - {"matrix":[4, 4], "x":4.25, "y":4}, - {"matrix":[4, 5], "x":5.25, "y":4}, - {"matrix":[4, 6], "x":6.25, "y":4}, - {"matrix":[4, 7], "x":7.25, "y":4}, - {"matrix":[4, 8], "x":8.25, "y":4}, - {"matrix":[4, 9], "x":9.25, "y":4}, - {"matrix":[4,10], "x":10.25, "y":4}, - {"matrix":[4,11], "x":11.25, "y":4}, - {"matrix":[4,13], "x":12.25, "y":4, "w":1.75}, - {"matrix":[4,14], "x":14, "y":4}, - {"matrix":[4,15], "x":15, "y":4}, - - {"matrix":[5, 0], "x":0, "y":5, "w":1.25}, - {"matrix":[5, 1], "x":1.25, "y":5, "w":1.25}, - {"matrix":[5, 2], "x":2.5, "y":5, "w":1.25}, - {"matrix":[5, 6], "x":3.75, "y":5, "w":6.25}, - {"matrix":[5,10], "x":10, "y":5}, - {"matrix":[5,11], "x":11, "y":5}, - {"matrix":[5,12], "x":12, "y":5}, - {"matrix":[5,13], "x":13, "y":5}, - {"matrix":[5,14], "x":14, "y":5}, - {"matrix":[5,15], "x":15, "y":5} - ] - }, - "LAYOUT": { - "layout": [ - {"matrix":[0, 0], "x":0, "y":0}, - {"matrix":[0, 1], "x":1, "y":0}, - {"matrix":[0, 2], "x":2, "y":0}, - {"matrix":[0, 3], "x":3, "y":0}, - {"matrix":[0, 4], "x":4, "y":0}, - {"matrix":[0, 5], "x":5, "y":0}, - {"matrix":[0, 6], "x":6, "y":0}, - {"matrix":[0, 7], "x":7, "y":0}, - {"matrix":[0, 8], "x":8, "y":0}, - {"matrix":[0, 9], "x":9, "y":0}, - {"matrix":[0,10], "x":10, "y":0}, - {"matrix":[0,11], "x":11, "y":0}, - {"matrix":[0,12], "x":12, "y":0}, - {"matrix":[0,13], "x":13, "y":0}, - {"matrix":[0,14], "x":14, "y":0}, - {"matrix":[0,15], "x":15, "y":0}, - - {"matrix":[1, 0], "x":0, "y":1}, - {"matrix":[1, 1], "x":1, "y":1}, - {"matrix":[1, 2], "x":2, "y":1}, - {"matrix":[1, 3], "x":3, "y":1}, - {"matrix":[1, 4], "x":4, "y":1}, - {"matrix":[1, 5], "x":5, "y":1}, - {"matrix":[1, 6], "x":6, "y":1}, - {"matrix":[1, 7], "x":7, "y":1}, - {"matrix":[1, 8], "x":8, "y":1}, - {"matrix":[1, 9], "x":9, "y":1}, - {"matrix":[1,10], "x":10, "y":1}, - {"matrix":[1,11], "x":11, "y":1}, - {"matrix":[1,12], "x":12, "y":1}, - {"matrix":[1,13], "x":13, "y":1}, - {"matrix":[1,14], "x":14, "y":1}, - {"matrix":[1,15], "x":15, "y":1}, - - {"matrix":[2, 0], "x":0, "y":2, "w":1.5}, - {"matrix":[2, 1], "x":1.5, "y":2}, - {"matrix":[2, 2], "x":2.5, "y":2}, - {"matrix":[2, 3], "x":3.5, "y":2}, - {"matrix":[2, 4], "x":4.5, "y":2}, - {"matrix":[2, 5], "x":5.5, "y":2}, - {"matrix":[2, 6], "x":6.5, "y":2}, - {"matrix":[2, 7], "x":7.5, "y":2}, - {"matrix":[2, 8], "x":8.5, "y":2}, - {"matrix":[2, 9], "x":9.5, "y":2}, - {"matrix":[2,10], "x":10.5, "y":2}, - {"matrix":[2,11], "x":11.5, "y":2}, - {"matrix":[2,12], "x":12.5, "y":2}, - {"matrix":[2,15], "x":15, "y":2}, - - {"matrix":[3, 0], "x":0, "y":3, "w":1.75}, - {"matrix":[3, 1], "x":1.75, "y":3}, - {"matrix":[3, 2], "x":2.75, "y":3}, - {"matrix":[3, 3], "x":3.75, "y":3}, - {"matrix":[3, 4], "x":4.75, "y":3}, - {"matrix":[3, 5], "x":5.75, "y":3}, - {"matrix":[3, 6], "x":6.75, "y":3}, - {"matrix":[3, 7], "x":7.75, "y":3}, - {"matrix":[3, 8], "x":8.75, "y":3}, - {"matrix":[3, 9], "x":9.75, "y":3}, - {"matrix":[3,10], "x":10.75, "y":3}, - {"matrix":[3,11], "x":11.75, "y":3}, - {"matrix":[3,13], "x":12.75, "y":3, "w":2.25}, - {"matrix":[2,13], "x":13.75, "y":2.25, "w":1.25, "h":2}, - {"matrix":[3,15], "x":15, "y":3}, - - {"matrix":[4, 0], "x":0, "y":4.25, "w":2.25}, - {"matrix":[4, 2], "x":2.25, "y":4}, - {"matrix":[4, 3], "x":3.25, "y":4}, - {"matrix":[4, 4], "x":4.25, "y":4}, - {"matrix":[4, 5], "x":5.25, "y":4}, - {"matrix":[4, 6], "x":6.25, "y":4}, - {"matrix":[4, 7], "x":7.25, "y":4}, - {"matrix":[4, 8], "x":8.25, "y":4}, - {"matrix":[4, 9], "x":9.25, "y":4}, - {"matrix":[4,10], "x":10.25, "y":4}, - {"matrix":[4,11], "x":11.25, "y":4}, - {"matrix":[4,13], "x":12.25, "y":4}, - {"matrix":[4,14], "x":13.25, "y":4.25, "w":1.75}, - {"matrix":[4,15], "x":15, "y":4}, - - {"matrix":[5, 0], "x":0, "y":5}, - {"matrix":[5, 1], "x":1, "y":5}, - {"matrix":[5, 2], "x":2, "y":5}, - {"matrix":[5, 3], "x":3, "y":5.25}, - {"matrix":[5, 6], "x":4, "y":5, "w":5}, - {"matrix":[5, 9], "x":9, "y":5.25}, - {"matrix":[5,10], "x":10, "y":5}, - {"matrix":[5,11], "x":11, "y":5}, - {"matrix":[5,12], "x":12, "y":5}, - {"matrix":[5,13], "x":13, "y":5}, - {"matrix":[5,14], "x":14, "y":5}, - {"matrix":[5,15], "x":15, "y":5} - ] - } - } -} diff --git a/keyboards/keychron/k3_pro/iso/rgb/config.h b/keyboards/keychron/k3_pro/iso/rgb/config.h deleted file mode 100644 index 937d9fa0a5..0000000000 --- a/keyboards/keychron/k3_pro/iso/rgb/config.h +++ /dev/null @@ -1,58 +0,0 @@ -/* 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 . - */ - -#pragma once - -#ifdef RGB_MATRIX_ENABLE -/* RGB Matrix driver configuration */ -# define DRIVER_COUNT 2 - -# define DRIVER_ADDR_1 0b1110111 -# define DRIVER_ADDR_2 0b1110100 -# define DRIVER_1_LED_COUNT 46 -# define DRIVER_2_LED_COUNT 39 -# define RGB_MATRIX_LED_COUNT (DRIVER_1_LED_COUNT + DRIVER_2_LED_COUNT) - -/* Set to infinit, which is use in USB mode by default */ -# define RGB_MATRIX_TIMEOUT RGB_MATRIX_TIMEOUT_INFINITE - -/* Allow shutdown of led driver to save power */ -# define RGB_MATRIX_DRIVER_SHUTDOWN_ENABLE -/* Turn off backlight on low brightness to save power */ -# define RGB_MATRIX_BRIGHTNESS_TURN_OFF_VAL 48 - -/* Caps lock indicating led */ -# define DIM_CAPS_LOCK -# define CAPS_LOCK_INDEX 46 -# define LOW_BAT_IND_INDEX 78 - -# ifdef VIA_ENABLE -# define VIA_QMK_RGBLIGHT_ENABLE -# endif - -/* RGB Matrix Animation modes. Explicitly enabled - * For full list of effects, see: - * https://docs.qmk.fm/#/feature_rgb_matrix?id=rgb-matrix-effects - */ - -# define RGB_MATRIX_KEYPRESSES -# define RGB_MATRIX_FRAMEBUFFER_EFFECTS - -/* Set LED driver current */ -# define SNLED27351_CURRENT_TUNE \ - { 0x14, 0x14, 0x14, 0x14, 0x14, 0x14, 0x14, 0x14, 0x14, 0x14, 0x14, 0x14 } - -#endif diff --git a/keyboards/keychron/k3_pro/iso/rgb/info.json b/keyboards/keychron/k3_pro/iso/rgb/info.json deleted file mode 100644 index 62711261d2..0000000000 --- a/keyboards/keychron/k3_pro/iso/rgb/info.json +++ /dev/null @@ -1,35 +0,0 @@ -{ - "usb": { - "pid": "0x0231", - "device_version": "1.0.1" - }, - "features": { - "rgb_matrix": true - }, - "rgb_matrix": { - "driver": "snled27351", - "animations": { - "breathing": true, - "band_spiral_val": true, - "cycle_all": true, - "cycle_left_right": true, - "cycle_up_down": true, - "rainbow_moving_chevron": true, - "cycle_out_in": true, - "cycle_out_in_dual": true, - "cycle_pinwheel": true, - "cycle_spiral": true, - "dual_beacon": true, - "rainbow_beacon": true, - "jellybean_raindrops": true, - "pixel_rain": true, - "typing_heatmap": true, - "digital_rain": true, - "solid_reactive_simple": true, - "solid_reactive_multiwide": true, - "solid_reactive_multinexus": true, - "splash": true, - "solid_splash": true - } - } -} diff --git a/keyboards/keychron/k3_pro/iso/rgb/keymaps/default/keymap.c b/keyboards/keychron/k3_pro/iso/rgb/keymaps/default/keymap.c deleted file mode 100644 index 1fba80d20b..0000000000 --- a/keyboards/keychron/k3_pro/iso/rgb/keymaps/default/keymap.c +++ /dev/null @@ -1,59 +0,0 @@ -/* 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 . - */ - -#include QMK_KEYBOARD_H - -// clang-format off -enum layers{ - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN -}; - -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { -[MAC_BASE] = LAYOUT_iso_85( - KC_ESC, KC_BRID, KC_BRIU, KC_MCTL, KC_LPAD, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_SNAP, KC_DEL, RGB_MOD, - KC_GRV, 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_PGUP, - 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_ENT, KC_PGDN, - 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_BSLS, KC_HOME, - KC_LSFT, KC_NUBS, 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_LOPTN, KC_LCMMD, KC_SPC, KC_RCMMD,MO(MAC_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - -[MAC_FN] = LAYOUT_iso_85( - KC_TRNS, 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, - KC_TRNS, BT_HST1, BT_HST2, BT_HST3, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, BAT_LVL, NK_TOGG, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS), - -[WIN_BASE] = LAYOUT_iso_85( - KC_ESC, 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_PSCR, KC_DEL, RGB_MOD, - KC_GRV, 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_PGUP, - 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_ENT, KC_PGDN, - 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_BSLS, KC_HOME, - KC_LSFT, KC_NUBS, 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_SPC, KC_RALT, MO(WIN_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - -[WIN_FN] = LAYOUT_iso_85( - KC_TRNS, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_TRNS, KC_TRNS, RGB_TOG, - KC_TRNS, BT_HST1, BT_HST2, BT_HST3, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, BAT_LVL, NK_TOGG, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, 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/keychron/k3_pro/iso/rgb/keymaps/via/keymap.c b/keyboards/keychron/k3_pro/iso/rgb/keymaps/via/keymap.c deleted file mode 100644 index 1fba80d20b..0000000000 --- a/keyboards/keychron/k3_pro/iso/rgb/keymaps/via/keymap.c +++ /dev/null @@ -1,59 +0,0 @@ -/* 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 . - */ - -#include QMK_KEYBOARD_H - -// clang-format off -enum layers{ - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN -}; - -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { -[MAC_BASE] = LAYOUT_iso_85( - KC_ESC, KC_BRID, KC_BRIU, KC_MCTL, KC_LPAD, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_SNAP, KC_DEL, RGB_MOD, - KC_GRV, 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_PGUP, - 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_ENT, KC_PGDN, - 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_BSLS, KC_HOME, - KC_LSFT, KC_NUBS, 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_LOPTN, KC_LCMMD, KC_SPC, KC_RCMMD,MO(MAC_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - -[MAC_FN] = LAYOUT_iso_85( - KC_TRNS, 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, - KC_TRNS, BT_HST1, BT_HST2, BT_HST3, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, BAT_LVL, NK_TOGG, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS), - -[WIN_BASE] = LAYOUT_iso_85( - KC_ESC, 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_PSCR, KC_DEL, RGB_MOD, - KC_GRV, 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_PGUP, - 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_ENT, KC_PGDN, - 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_BSLS, KC_HOME, - KC_LSFT, KC_NUBS, 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_SPC, KC_RALT, MO(WIN_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - -[WIN_FN] = LAYOUT_iso_85( - KC_TRNS, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_TRNS, KC_TRNS, RGB_TOG, - KC_TRNS, BT_HST1, BT_HST2, BT_HST3, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, BAT_LVL, NK_TOGG, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, 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/keychron/k3_pro/iso/rgb/keymaps/via/rules.mk b/keyboards/keychron/k3_pro/iso/rgb/keymaps/via/rules.mk deleted file mode 100644 index 1e5b99807c..0000000000 --- a/keyboards/keychron/k3_pro/iso/rgb/keymaps/via/rules.mk +++ /dev/null @@ -1 +0,0 @@ -VIA_ENABLE = yes diff --git a/keyboards/keychron/k3_pro/iso/rgb/rgb.c b/keyboards/keychron/k3_pro/iso/rgb/rgb.c deleted file mode 100644 index 033b705b22..0000000000 --- a/keyboards/keychron/k3_pro/iso/rgb/rgb.c +++ /dev/null @@ -1,148 +0,0 @@ -/* 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 . - */ - -#include "quantum.h" - -// clang-format off -#ifdef RGB_MATRIX_ENABLE -const snled27351_led_t g_snled27351_leds[RGB_MATRIX_LED_COUNT] = { -/* Refer to CKLED manual for these locations - * driver - * | R location - * | | G location - * | | | B location - * | | | | */ - {0, I_1, G_1, H_1}, - {0, I_2, G_2, H_2}, - {0, I_3, G_3, H_3}, - {0, I_4, G_4, H_4}, - {0, I_5, G_5, H_5}, - {0, I_6, G_6, H_6}, - {0, I_7, G_7, H_7}, - {0, I_8, G_8, H_8}, - {0, I_9, G_9, H_9}, - {0, I_10, G_10, H_10}, - {0, I_11, G_11, H_11}, - {0, I_12, G_12, H_12}, - {0, I_13, G_13, H_13}, - {0, I_14, G_14, H_14}, - {0, I_15, G_15, H_15}, - {0, I_16, G_16, H_16}, - - {0, F_1, D_1, E_1}, - {0, F_2, D_2, E_2}, - {0, F_3, D_3, E_3}, - {0, F_4, D_4, E_4}, - {0, F_5, D_5, E_5}, - {0, F_6, D_6, E_6}, - {0, F_7, D_7, E_7}, - {0, F_8, D_8, E_8}, - {0, F_9, D_9, E_9}, - {0, F_10, D_10, E_10}, - {0, F_11, D_11, E_11}, - {0, F_12, D_12, E_12}, - {0, F_13, D_13, E_13}, - {0, F_14, D_14, E_14}, - {0, F_16, D_16, E_16}, - - {0, A_1, C_1, B_1}, - {0, A_2, C_2, B_2}, - {0, A_3, C_3, B_3}, - {0, A_4, C_4, B_4}, - {0, A_5, C_5, B_5}, - {0, A_6, C_6, B_6}, - {0, A_7, C_7, B_7}, - {0, A_8, C_8, B_8}, - {0, A_9, C_9, B_9}, - {0, A_10, C_10, B_10}, - {0, A_11, C_11, B_11}, - {0, A_12, C_12, B_12}, - {0, A_13, C_13, B_13}, - {0, A_14, C_14, B_14}, - {0, A_16, C_16, B_16}, - - {1, I_1, G_1, H_1}, - {1, I_2, G_2, H_2}, - {1, I_3, G_3, H_3}, - {1, I_4, G_4, H_4}, - {1, I_5, G_5, H_5}, - {1, I_6, G_6, H_6}, - {1, I_7, G_7, H_7}, - {1, I_8, G_8, H_8}, - {1, I_9, G_9, H_9}, - {1, I_10, G_10, H_10}, - {1, I_11, G_11, H_11}, - {1, I_12, G_12, H_12}, - {1, I_14, G_14, H_14}, - {1, I_16, G_16, H_16}, - - {1, C_1, A_1, B_1}, - {1, C_2, A_2, B_2}, - {1, C_3, A_3, B_3}, - {1, C_4, A_4, B_4}, - {1, C_5, A_5, B_5}, - {1, C_6, A_6, B_6}, - {1, C_7, A_7, B_7}, - {1, C_8, A_8, B_8}, - {1, C_9, A_9, B_9}, - {1, C_10, A_10, B_10}, - {1, C_11, A_11, B_11}, - {1, C_12, A_12, B_12}, - {1, C_14, A_14, B_14}, - {1, C_15, A_15, B_15}, - {1, C_16, A_16, B_16}, - - {1, F_1, D_1, E_1}, - {1, F_2, D_2, E_2}, - {1, F_3, D_3, E_3}, - {1, F_7, D_7, E_7}, - {1, F_11, D_11, E_11}, - {1, F_12, D_12, E_12}, - {1, F_13, D_13, E_13}, - {1, F_14, D_14, E_14}, - {1, F_15, D_15, E_15}, - {1, F_16, D_16, E_16}, - -}; - -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, NO_LED, 30 }, - { 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, NO_LED, 45 }, - { 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, NO_LED, 58, NO_LED, 59 }, - { 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, NO_LED, 72, 73, 74 }, - { 75, 76, 77, NO_LED, NO_LED, NO_LED, 78, NO_LED, NO_LED, NO_LED, 79, 80, 81, 82, 83, 84 } - }, - { - {0, 0}, {14, 0}, {29, 0}, {44, 0}, {59, 0}, {74, 0}, { 89, 0}, {104, 0}, {119, 0}, {134, 0}, {149, 0}, {164, 0}, {179, 0}, {194, 0}, {209, 0}, {223, 0}, - {0,12}, {14,12}, {29,12}, {44,12}, {59,12}, {74,12}, { 89, 12}, {104, 12}, {119, 12}, {134, 12}, {149, 12}, {164, 12}, {179, 12}, {201, 12}, {223, 12}, - {3,25}, {22,25}, {37,25}, {52,25}, {67,25}, {82,25}, { 97, 25}, {112, 25}, {126, 25}, {141, 25}, {156, 25}, {171, 25}, {186, 25}, {205, 25}, {223, 25}, - {5,38}, {26,38}, {41,38}, {55,38}, {70,38}, {85,38}, {100, 38}, {115, 38}, {130, 38}, {145, 38}, {160, 38}, {175, 38}, {199, 38}, {223, 38}, - {0,51}, {14,51}, {33,51}, {48,51}, {63,51}, {78,51}, { 93, 51}, {108, 51}, {123, 51}, {138, 51}, {153, 51}, {168, 51}, {188, 51}, {209, 51}, {223, 51}, - {1,64}, {20,64}, {39,64}, { 95, 64}, {149, 64}, {164, 64}, {179, 64}, {194, 64}, {209, 64}, {223, 64} - }, - { - 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, - 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, - 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, - 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, - 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, - 4, 4, 4, 4, 4, 4, 4, 4, 4, 4 - - } -}; -#endif diff --git a/keyboards/keychron/k3_pro/iso/rgb/rules.mk b/keyboards/keychron/k3_pro/iso/rgb/rules.mk deleted file mode 100644 index f886ea2e8e..0000000000 --- a/keyboards/keychron/k3_pro/iso/rgb/rules.mk +++ /dev/null @@ -1 +0,0 @@ -# This file intentionally blank \ No newline at end of file diff --git a/keyboards/keychron/k3_pro/iso/white/config.h b/keyboards/keychron/k3_pro/iso/white/config.h deleted file mode 100644 index 5f5d3bdd29..0000000000 --- a/keyboards/keychron/k3_pro/iso/white/config.h +++ /dev/null @@ -1,50 +0,0 @@ -/* 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 . - */ - -#pragma once - -#ifdef LED_MATRIX_ENABLE -/* LED matrix driver configuration */ -# define DRIVER_COUNT 1 -# define SNLED27351_I2C_ADDRESS_1 SNLED27351_I2C_ADDRESS_GND -# define LED_MATRIX_LED_COUNT 85 - -/* Set to infinit, which is use in USB mode by default */ -# define LED_MATRIX_TIMEOUT LED_MATRIX_TIMEOUT_INFINITE -/* Allow shutdown of led driver to save power */ -# define LED_MATRIX_DRIVER_SHUTDOWN_ENABLE -/* Turn off backlight on low brightness to save power */ -# define LED_MATRIX_BRIGHTNESS_TURN_OFF_VAL 48 - -/* Caps lock indicating led */ -# define DIM_CAPS_LOCK -# define CAPS_LOCK_INDEX 46 -# define LOW_BAT_IND_INDEX 78 - -/* LED Matrix Animation modes. Explicitly enabled - * For full list of effects, see: - * https://docs.qmk.fm/#/feature_led_matrix?id=led-matrix-effects - */ -# define LED_MATRIX_KEYPRESSES - -/* Use first 6 channels of LED driver */ -# define PHASE_CHANNEL MSKPHASE_6CHANNEL - -/* Set LED driver current */ -# define SNLED27351_CURRENT_TUNE \ - { 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20 } - -#endif diff --git a/keyboards/keychron/k3_pro/iso/white/info.json b/keyboards/keychron/k3_pro/iso/white/info.json deleted file mode 100644 index 3b26f8c474..0000000000 --- a/keyboards/keychron/k3_pro/iso/white/info.json +++ /dev/null @@ -1,30 +0,0 @@ -{ - "usb": { - "pid": "0x0234", - "device_version": "1.0.1" - }, - "features": { - "led_matrix": true - }, - "led_matrix": { - "driver": "snled27351", - "animations": { - "none": true, - "solid": true, - "breathing": true, - "band_pinwheel": true, - "band_spiral": true, - "cycle_left_right": true, - "cycle_up_down": true, - "cycle_out_in": true, - "dual_beacon": true, - "solid_reactive_simple": true, - "solid_reactive_multiwide": true, - "solid_reactive_multinexus": true, - "solid_splash": true, - "wave_left_right": true, - "wave_up_down": true, - "effect_max": true - } - } -} diff --git a/keyboards/keychron/k3_pro/iso/white/keymaps/default/keymap.c b/keyboards/keychron/k3_pro/iso/white/keymaps/default/keymap.c deleted file mode 100644 index ffaf8e4b02..0000000000 --- a/keyboards/keychron/k3_pro/iso/white/keymaps/default/keymap.c +++ /dev/null @@ -1,59 +0,0 @@ -/* 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 . - */ - -#include QMK_KEYBOARD_H - -// clang-format off -enum layers{ - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN -}; - -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { -[MAC_BASE] = LAYOUT_iso_85( - KC_ESC, KC_BRID, KC_BRIU, KC_MCTL, KC_LPAD, BL_DOWN, BL_UP, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_SNAP, KC_DEL, BL_STEP, - KC_GRV, 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_PGUP, - 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_ENT, KC_PGDN, - 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_BSLS, KC_HOME, - KC_LSFT, KC_NUBS, 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_LOPTN, KC_LCMMD, KC_SPC, KC_RCMMD,MO(MAC_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - -[MAC_FN] = LAYOUT_iso_85( - KC_TRNS, 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, BL_TOGG, - KC_TRNS, BT_HST1, BT_HST2, BT_HST3, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - BL_TOGG, BL_STEP, BL_UP, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, BL_DOWN, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, BAT_LVL, NK_TOGG, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS), - -[WIN_BASE] = LAYOUT_iso_85( - KC_ESC, 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_PSCR, KC_DEL, BL_STEP, - KC_GRV, 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_PGUP, - 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_ENT, KC_PGDN, - 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_BSLS, KC_HOME, - KC_LSFT, KC_NUBS, 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_SPC, KC_RALT, MO(WIN_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - -[WIN_FN] = LAYOUT_iso_85( - KC_TRNS, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, BL_DOWN, BL_UP, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_TRNS, KC_TRNS, BL_TOGG, - KC_TRNS, BT_HST1, BT_HST2, BT_HST3, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - BL_TOGG, BL_STEP, BL_UP, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, BL_DOWN, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, BAT_LVL, NK_TOGG, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, 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/keychron/k3_pro/iso/white/keymaps/via/keymap.c b/keyboards/keychron/k3_pro/iso/white/keymaps/via/keymap.c deleted file mode 100644 index ffaf8e4b02..0000000000 --- a/keyboards/keychron/k3_pro/iso/white/keymaps/via/keymap.c +++ /dev/null @@ -1,59 +0,0 @@ -/* 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 . - */ - -#include QMK_KEYBOARD_H - -// clang-format off -enum layers{ - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN -}; - -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { -[MAC_BASE] = LAYOUT_iso_85( - KC_ESC, KC_BRID, KC_BRIU, KC_MCTL, KC_LPAD, BL_DOWN, BL_UP, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_SNAP, KC_DEL, BL_STEP, - KC_GRV, 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_PGUP, - 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_ENT, KC_PGDN, - 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_BSLS, KC_HOME, - KC_LSFT, KC_NUBS, 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_LOPTN, KC_LCMMD, KC_SPC, KC_RCMMD,MO(MAC_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - -[MAC_FN] = LAYOUT_iso_85( - KC_TRNS, 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, BL_TOGG, - KC_TRNS, BT_HST1, BT_HST2, BT_HST3, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - BL_TOGG, BL_STEP, BL_UP, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, BL_DOWN, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, BAT_LVL, NK_TOGG, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS), - -[WIN_BASE] = LAYOUT_iso_85( - KC_ESC, 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_PSCR, KC_DEL, BL_STEP, - KC_GRV, 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_PGUP, - 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_ENT, KC_PGDN, - 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_BSLS, KC_HOME, - KC_LSFT, KC_NUBS, 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_SPC, KC_RALT, MO(WIN_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - -[WIN_FN] = LAYOUT_iso_85( - KC_TRNS, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, BL_DOWN, BL_UP, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_TRNS, KC_TRNS, BL_TOGG, - KC_TRNS, BT_HST1, BT_HST2, BT_HST3, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - BL_TOGG, BL_STEP, BL_UP, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, BL_DOWN, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, BAT_LVL, NK_TOGG, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, 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/keychron/k3_pro/iso/white/keymaps/via/rules.mk b/keyboards/keychron/k3_pro/iso/white/keymaps/via/rules.mk deleted file mode 100644 index 1e5b99807c..0000000000 --- a/keyboards/keychron/k3_pro/iso/white/keymaps/via/rules.mk +++ /dev/null @@ -1 +0,0 @@ -VIA_ENABLE = yes diff --git a/keyboards/keychron/k3_pro/iso/white/rules.mk b/keyboards/keychron/k3_pro/iso/white/rules.mk deleted file mode 100644 index f886ea2e8e..0000000000 --- a/keyboards/keychron/k3_pro/iso/white/rules.mk +++ /dev/null @@ -1 +0,0 @@ -# This file intentionally blank \ No newline at end of file diff --git a/keyboards/keychron/k3_pro/iso/white/white.c b/keyboards/keychron/k3_pro/iso/white/white.c deleted file mode 100644 index 28298a3cdf..0000000000 --- a/keyboards/keychron/k3_pro/iso/white/white.c +++ /dev/null @@ -1,145 +0,0 @@ -/* 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 . - */ - -#include "quantum.h" - -// clang-format off -#ifdef LED_MATRIX_ENABLE -const snled27351_led_t g_snled27351_leds[LED_MATRIX_LED_COUNT] = { -/* Refer to snled27351manual for these locations - * driver - * | LED address - * | | */ - {0, F_1}, - {0, F_2}, - {0, F_3}, - {0, F_4}, - {0, F_5}, - {0, F_6}, - {0, F_7}, - {0, F_8}, - {0, F_9}, - {0, F_10}, - {0, F_11}, - {0, F_12}, - {0, F_13}, - {0, F_14}, - {0, F_15}, - {0, F_16}, - - {0, E_1}, - {0, E_2}, - {0, E_3}, - {0, E_4}, - {0, E_5}, - {0, E_6}, - {0, E_7}, - {0, E_8}, - {0, E_9}, - {0, E_10}, - {0, E_11}, - {0, E_12}, - {0, E_13}, - {0, E_14}, - {0, E_16}, - - {0, D_1}, - {0, D_2}, - {0, D_3}, - {0, D_4}, - {0, D_5}, - {0, D_6}, - {0, D_7}, - {0, D_8}, - {0, D_9}, - {0, D_10}, - {0, D_11}, - {0, D_12}, - {0, D_13}, - {0, D_14}, - {0, D_16}, - - {0, C_1}, - {0, C_2}, - {0, C_3}, - {0, C_4}, - {0, C_5}, - {0, C_6}, - {0, C_7}, - {0, C_8}, - {0, C_9}, - {0, C_10}, - {0, C_11}, - {0, C_12}, - {0, C_14}, - {0, C_16}, - - {0, B_1}, - {0, B_2}, - {0, B_3}, - {0, B_4}, - {0, B_5}, - {0, B_6}, - {0, B_7}, - {0, B_8}, - {0, B_9}, - {0, B_10}, - {0, B_11}, - {0, B_12}, - {0, B_14}, - {0, B_15}, - {0, B_16}, - - {0, A_1}, - {0, A_2}, - {0, A_3}, - {0, A_7}, - {0, A_11}, - {0, A_12}, - {0, A_13}, - {0, A_14}, - {0, A_15}, - {0, A_16}, -}; - -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, NO_LED, 30 }, - { 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, NO_LED, 45 }, - { 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, NO_LED, 58, NO_LED, 59 }, - { 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, NO_LED, 72, 73, 74 }, - { 75, 76, 77, NO_LED, NO_LED, NO_LED, 78, NO_LED, NO_LED, NO_LED, 79, 80, 81, 82, 83, 84 } - }, - { - {0, 0}, {14, 0}, {29, 0}, {44, 0}, {59, 0}, {74, 0}, { 89, 0}, {104, 0}, {119, 0}, {134, 0}, {149, 0}, {164, 0}, {179, 0}, {194, 0}, {209, 0}, {223, 0}, - {0,12}, {14,12}, {29,12}, {44,12}, {59,12}, {74,12}, { 89, 12}, {104, 12}, {119, 12}, {134, 12}, {149, 12}, {164, 12}, {179, 12}, {201, 12}, {223, 12}, - {3,25}, {22,25}, {37,25}, {52,25}, {67,25}, {82,25}, { 97, 25}, {112, 25}, {126, 25}, {141, 25}, {156, 25}, {171, 25}, {186, 25}, {205, 25}, {223, 25}, - {5,38}, {26,38}, {41,38}, {55,38}, {70,38}, {85,38}, {100, 38}, {115, 38}, {130, 38}, {145, 38}, {160, 38}, {175, 38}, {199, 38}, {223, 38}, - {0,51}, {14,51}, {33,51}, {48,51}, {63,51}, {78,51}, { 93, 51}, {108, 51}, {123, 51}, {138, 51}, {153, 51}, {168, 51}, {188, 51}, {209, 51}, {223, 51}, - {1,64}, {20,64}, {39,64}, { 95, 64}, {149, 64}, {164, 64}, {179, 64}, {194, 64}, {209, 64}, {223, 64} - }, - { - 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, - 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, - 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, - 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, - 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, - 4, 4, 4, 4, 4, 4, 4, 4, 4, 4 - - } -}; -#endif diff --git a/keyboards/keychron/k3_pro/jis/rgb/config.h b/keyboards/keychron/k3_pro/jis/rgb/config.h deleted file mode 100644 index d46f5e0681..0000000000 --- a/keyboards/keychron/k3_pro/jis/rgb/config.h +++ /dev/null @@ -1,54 +0,0 @@ -/* 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 . - */ - -#pragma once - -#ifdef RGB_MATRIX_ENABLE -/* RGB Matrix driver configuration */ -# define DRIVER_COUNT 2 - -# define DRIVER_ADDR_1 0b1110111 -# define DRIVER_ADDR_2 0b1110100 -# define DRIVER_1_LED_COUNT 47 -# define DRIVER_2_LED_COUNT 40 -# define RGB_MATRIX_LED_COUNT (DRIVER_1_LED_COUNT + DRIVER_2_LED_COUNT) - -/* Set to infinit, which is use in USB mode by default */ -# define RGB_MATRIX_TIMEOUT RGB_MATRIX_TIMEOUT_INFINITE - -/* Allow shutdown of led driver to save power */ -# define RGB_MATRIX_DRIVER_SHUTDOWN_ENABLE -/* Turn off backlight on low brightness to save power */ -# define RGB_MATRIX_BRIGHTNESS_TURN_OFF_VAL 48 - -/* Caps lock indicating led */ -# define DIM_CAPS_LOCK -# define CAPS_LOCK_INDEX 46 -# define LOW_BAT_IND_INDEX 79 - -/* RGB Matrix Animation modes. Explicitly enabled - * For full list of effects, see: - * https://docs.qmk.fm/#/feature_rgb_matrix?id=rgb-matrix-effects - */ - -# define RGB_MATRIX_KEYPRESSES -# define RGB_MATRIX_FRAMEBUFFER_EFFECTS - -/* Set LED driver current */ -# define SNLED27351_CURRENT_TUNE \ - { 0x14, 0x14, 0x14, 0x14, 0x14, 0x14, 0x14, 0x14, 0x14, 0x14, 0x14, 0x14 } - -#endif diff --git a/keyboards/keychron/k3_pro/jis/rgb/info.json b/keyboards/keychron/k3_pro/jis/rgb/info.json deleted file mode 100644 index 8a1bfdda38..0000000000 --- a/keyboards/keychron/k3_pro/jis/rgb/info.json +++ /dev/null @@ -1,35 +0,0 @@ -{ - "usb": { - "pid": "0x0232", - "device_version": "1.0.0" - }, - "features": { - "rgb_matrix": true - }, - "rgb_matrix": { - "driver": "snled27351", - "animations": { - "breathing": true, - "band_spiral_val": true, - "cycle_all": true, - "cycle_left_right": true, - "cycle_up_down": true, - "rainbow_moving_chevron": true, - "cycle_out_in": true, - "cycle_out_in_dual": true, - "cycle_pinwheel": true, - "cycle_spiral": true, - "dual_beacon": true, - "rainbow_beacon": true, - "jellybean_raindrops": true, - "pixel_rain": true, - "typing_heatmap": true, - "digital_rain": true, - "solid_reactive_simple": true, - "solid_reactive_multiwide": true, - "solid_reactive_multinexus": true, - "splash": true, - "solid_splash": true - } - } -} diff --git a/keyboards/keychron/k3_pro/jis/rgb/keymaps/default/keymap.c b/keyboards/keychron/k3_pro/jis/rgb/keymaps/default/keymap.c deleted file mode 100644 index 97cc9ceaad..0000000000 --- a/keyboards/keychron/k3_pro/jis/rgb/keymaps/default/keymap.c +++ /dev/null @@ -1,59 +0,0 @@ -/* 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 . - */ - -#include QMK_KEYBOARD_H - -// clang-format off -enum layers{ - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN -}; - -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT( - KC_ESC, KC_BRID, KC_BRIU, KC_MCTL, KC_LPAD, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_SNAP, KC_DEL, RGB_MOD, - KC_GRV, 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_INT3, KC_BSPC, KC_PGUP, - 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_PGDN, - 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_NUHS, KC_ENT, KC_HOME, - KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_INT1, KC_RSFT, KC_END, - KC_LCTL, KC_LOPTN, KC_LCMMD, KC_LNG2, KC_SPC, KC_LNG1, KC_RCMMD,MO(MAC_FN),KC_LEFT, KC_UP, KC_DOWN, KC_RGHT), - - [MAC_FN] = LAYOUT( - _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, RGB_TOG, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - - [WIN_BASE] = LAYOUT( - KC_ESC, 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_PSCR, KC_DEL, RGB_MOD, - KC_GRV, 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_INT3, KC_BSPC, KC_PGUP, - 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_PGDN, - 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_NUHS, KC_ENT, KC_HOME, - KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_INT1, KC_RSFT, KC_END, - KC_LCTL, KC_LWIN, KC_LALT, KC_INT5, KC_SPC, KC_INT4, KC_RALT, MO(WIN_FN),KC_LEFT, KC_UP, KC_DOWN, KC_RGHT), - - [WIN_FN] = LAYOUT( - _______, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, RGB_TOG, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), -}; diff --git a/keyboards/keychron/k3_pro/jis/rgb/keymaps/via/keymap.c b/keyboards/keychron/k3_pro/jis/rgb/keymaps/via/keymap.c deleted file mode 100644 index 97cc9ceaad..0000000000 --- a/keyboards/keychron/k3_pro/jis/rgb/keymaps/via/keymap.c +++ /dev/null @@ -1,59 +0,0 @@ -/* 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 . - */ - -#include QMK_KEYBOARD_H - -// clang-format off -enum layers{ - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN -}; - -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT( - KC_ESC, KC_BRID, KC_BRIU, KC_MCTL, KC_LPAD, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_SNAP, KC_DEL, RGB_MOD, - KC_GRV, 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_INT3, KC_BSPC, KC_PGUP, - 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_PGDN, - 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_NUHS, KC_ENT, KC_HOME, - KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_INT1, KC_RSFT, KC_END, - KC_LCTL, KC_LOPTN, KC_LCMMD, KC_LNG2, KC_SPC, KC_LNG1, KC_RCMMD,MO(MAC_FN),KC_LEFT, KC_UP, KC_DOWN, KC_RGHT), - - [MAC_FN] = LAYOUT( - _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, RGB_TOG, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - - [WIN_BASE] = LAYOUT( - KC_ESC, 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_PSCR, KC_DEL, RGB_MOD, - KC_GRV, 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_INT3, KC_BSPC, KC_PGUP, - 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_PGDN, - 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_NUHS, KC_ENT, KC_HOME, - KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_INT1, KC_RSFT, KC_END, - KC_LCTL, KC_LWIN, KC_LALT, KC_INT5, KC_SPC, KC_INT4, KC_RALT, MO(WIN_FN),KC_LEFT, KC_UP, KC_DOWN, KC_RGHT), - - [WIN_FN] = LAYOUT( - _______, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, RGB_TOG, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), -}; diff --git a/keyboards/keychron/k3_pro/jis/rgb/keymaps/via/rules.mk b/keyboards/keychron/k3_pro/jis/rgb/keymaps/via/rules.mk deleted file mode 100644 index 1e5b99807c..0000000000 --- a/keyboards/keychron/k3_pro/jis/rgb/keymaps/via/rules.mk +++ /dev/null @@ -1 +0,0 @@ -VIA_ENABLE = yes diff --git a/keyboards/keychron/k3_pro/jis/rgb/rgb.c b/keyboards/keychron/k3_pro/jis/rgb/rgb.c deleted file mode 100644 index a90af95fde..0000000000 --- a/keyboards/keychron/k3_pro/jis/rgb/rgb.c +++ /dev/null @@ -1,153 +0,0 @@ -/* 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 . - */ - -#include "quantum.h" - -// clang-format off -#ifdef RGB_MATRIX_ENABLE -const snled27351_led_t g_snled27351_leds[RGB_MATRIX_LED_COUNT] = { -/* Refer to snled27351manual for these locations - * driver - * | R location - * | | G location - * | | | B location - * | | | | */ - {0, I_1, G_1, H_1}, - {0, I_2, G_2, H_2}, - {0, I_3, G_3, H_3}, - {0, I_4, G_4, H_4}, - {0, I_5, G_5, H_5}, - {0, I_6, G_6, H_6}, - {0, I_7, G_7, H_7}, - {0, I_8, G_8, H_8}, - {0, I_9, G_9, H_9}, - {0, I_10, G_10, H_10}, - {0, I_11, G_11, H_11}, - {0, I_12, G_12, H_12}, - {0, I_13, G_13, H_13}, - {0, I_14, G_14, H_14}, - {0, I_15, G_15, H_15}, - {0, I_16, G_16, H_16}, - - {0, F_1, D_1, E_1}, - {0, F_2, D_2, E_2}, - {0, F_3, D_3, E_3}, - {0, F_4, D_4, E_4}, - {0, F_5, D_5, E_5}, - {0, F_6, D_6, E_6}, - {0, F_7, D_7, E_7}, - {0, F_8, D_8, E_8}, - {0, F_9, D_9, E_9}, - {0, F_10, D_10, E_10}, - {0, F_11, D_11, E_11}, - {0, F_12, D_12, E_12}, - {0, F_13, D_13, E_13}, - {0, F_14, D_14, E_14}, - {0, F_15, D_15, E_15}, - {0, F_16, D_16, E_16}, - - {0, A_1, C_1, B_1}, - {0, A_2, C_2, B_2}, - {0, A_3, C_3, B_3}, - {0, A_4, C_4, B_4}, - {0, A_5, C_5, B_5}, - {0, A_6, C_6, B_6}, - {0, A_7, C_7, B_7}, - {0, A_8, C_8, B_8}, - {0, A_9, C_9, B_9}, - {0, A_10, C_10, B_10}, - {0, A_11, C_11, B_11}, - {0, A_12, C_12, B_12}, - {0, A_13, C_13, B_13}, - {0, A_16, C_16, B_16}, - - {1, I_1, G_1, H_1}, - {1, I_2, G_2, H_2}, - {1, I_3, G_3, H_3}, - {1, I_4, G_4, H_4}, - {1, I_5, G_5, H_5}, - {1, I_6, G_6, H_6}, - {1, I_7, G_7, H_7}, - {1, I_8, G_8, H_8}, - {1, I_9, G_9, H_9}, - {1, I_10, G_10, H_10}, - {1, I_11, G_11, H_11}, - {1, I_12, G_12, H_12}, - {1, I_14, G_14, H_14}, - {0, A_14, C_14, B_14}, - {1, I_16, G_16, H_16}, - - {1, C_1, A_1, B_1}, - {1, C_3, A_3, B_3}, - {1, C_4, A_4, B_4}, - {1, C_5, A_5, B_5}, - {1, C_6, A_6, B_6}, - {1, C_7, A_7, B_7}, - {1, C_8, A_8, B_8}, - {1, C_9, A_9, B_9}, - {1, C_10, A_10, B_10}, - {1, C_11, A_11, B_11}, - {1, C_12, A_12, B_12}, - {1, C_14, A_14, B_14}, - {1, C_15, A_15, B_15}, - {1, C_16, A_16, B_16}, - - {1, F_1, D_1, E_1}, - {1, F_2, D_2, E_2}, - {1, F_3, D_3, E_3}, - {1, F_4, D_4, E_4}, - {1, F_7, D_7, E_7}, - {1, F_10, D_10, E_10}, - {1, F_11, D_11, E_11}, - {1, F_12, D_12, E_12}, - {1, F_13, D_13, E_13}, - {1, F_14, D_14, E_14}, - {1, F_15, D_15, E_15}, - {1, F_16, D_16, E_16}, -}; - -#define __ NO_LED - -led_config_t g_led_config = { - { - // Key Matrix to LED Index - { 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, 40, 41, 42, 43, 44, 59, __, 45 }, - { 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, __, 58, __, 60 }, - { 61, __, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, __, 72, 73, 74 }, - { 75, 76, 77, 78, __, __, 79, __, __, 80, 81, 82, 83, 84, 85, 86 } - }, - { - // LED Index to Physical Position - {0,0}, {15,0}, {30,0}, {45,0}, {60,0}, {75,0}, {90,0}, {105,0}, {119,0}, {134,0}, {149,0}, {164,0}, {179,0}, {194,0}, {209,0}, {224,0}, - {0,13}, {15,13}, {30,13}, {45,13}, {60,13}, {75,13}, {90,13}, {105,13}, {119,13}, {134,13}, {149,13}, {164,13}, {179,13}, {194,13}, {209,13}, {224,13}, - {4,26}, {22,26}, {37,26}, {52,26}, {67,26}, {82,26}, {97,26}, {112,26}, {127,26}, {142,26}, {157,26}, {172,26}, {187,26}, {224,26}, - {6,38}, {26,38}, {41,38}, {56,38}, {71,38}, {86,38}, {101,38}, {116,38}, {131,38}, {146,38}, {161,38}, {175,38}, {190,38}, {207,32}, {224,38}, - {9,51}, {34,51}, {49,51}, {64,51}, {78,51}, {93,51}, {108,51}, {123,51}, {138,51}, {153,51}, {168,51}, {183,51}, {203,51}, {224,51}, - {0,64}, {15,64}, {30,64}, {45,64}, {90,64}, {134,64}, {149,64}, {164,64}, {179,64}, {194,64}, {209,64}, {224,64}, - }, - { - // RGB LED Index to Flag - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 4, 8, 8, 8, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1, 1, - 1, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1, - 8, 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, - 1, 1, 1, 1, 4, 1, 1, 1, 1, 1, 1, 1 - } -}; -#endif diff --git a/keyboards/keychron/k3_pro/jis/rgb/rules.mk b/keyboards/keychron/k3_pro/jis/rgb/rules.mk deleted file mode 100644 index f886ea2e8e..0000000000 --- a/keyboards/keychron/k3_pro/jis/rgb/rules.mk +++ /dev/null @@ -1 +0,0 @@ -# This file intentionally blank \ No newline at end of file diff --git a/keyboards/keychron/k3_pro/jis/white/config.h b/keyboards/keychron/k3_pro/jis/white/config.h deleted file mode 100644 index faab11eb65..0000000000 --- a/keyboards/keychron/k3_pro/jis/white/config.h +++ /dev/null @@ -1,50 +0,0 @@ -/* 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 . - */ - -#pragma once - -#ifdef LED_MATRIX_ENABLE -/* LED matrix driver configuration */ -# define DRIVER_COUNT 1 -# define SNLED27351_I2C_ADDRESS_1 SNLED27351_I2C_ADDRESS_GND -# define LED_MATRIX_LED_COUNT 87 - -/* Set to infinit, which is use in USB mode by default */ -# define LED_MATRIX_TIMEOUT LED_MATRIX_TIMEOUT_INFINITE -/* Allow shutdown of led driver to save power */ -# define LED_MATRIX_DRIVER_SHUTDOWN_ENABLE -/* Turn off backlight on low brightness to save power */ -# define LED_MATRIX_BRIGHTNESS_TURN_OFF_VAL 48 - -/* Caps lock indicating led */ -# define DIM_CAPS_LOCK -# define CAPS_LOCK_INDEX 46 -# define LOW_BAT_IND_INDEX 79 - -/* LED Matrix Animation modes. Explicitly enabled - * For full list of effects, see: - * https://docs.qmk.fm/#/feature_led_matrix?id=led-matrix-effects - */ -# define LED_MATRIX_KEYPRESSES - -/* Use first 6 channels of LED driver */ -# define PHASE_CHANNEL MSKPHASE_6CHANNEL - -/* Set LED driver current */ -# define SNLED27351_CURRENT_TUNE \ - { 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20 } - -#endif diff --git a/keyboards/keychron/k3_pro/jis/white/info.json b/keyboards/keychron/k3_pro/jis/white/info.json deleted file mode 100644 index 6ef1bf4791..0000000000 --- a/keyboards/keychron/k3_pro/jis/white/info.json +++ /dev/null @@ -1,30 +0,0 @@ -{ - "usb": { - "pid": "0x0235", - "device_version": "1.0.0" - }, - "features": { - "led_matrix": true - }, - "led_matrix": { - "driver": "snled27351", - "animations": { - "none": true, - "solid": true, - "breathing": true, - "band_pinwheel": true, - "band_spiral": true, - "cycle_left_right": true, - "cycle_up_down": true, - "cycle_out_in": true, - "dual_beacon": true, - "solid_reactive_simple": true, - "solid_reactive_multiwide": true, - "solid_reactive_multinexus": true, - "solid_splash": true, - "wave_left_right": true, - "wave_up_down": true, - "effect_max": true - } - } -} diff --git a/keyboards/keychron/k3_pro/jis/white/keymaps/default/keymap.c b/keyboards/keychron/k3_pro/jis/white/keymaps/default/keymap.c deleted file mode 100644 index a96e296c02..0000000000 --- a/keyboards/keychron/k3_pro/jis/white/keymaps/default/keymap.c +++ /dev/null @@ -1,59 +0,0 @@ -/* 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 . - */ - -#include QMK_KEYBOARD_H - -// clang-format off -enum layers{ - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN -}; - -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT( - KC_ESC, KC_BRID, KC_BRIU, KC_MCTL, KC_LPAD, BL_DOWN, BL_UP, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_SNAP, KC_DEL, BL_STEP, - KC_GRV, 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_INT3, KC_BSPC, KC_PGUP, - 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_PGDN, - 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_NUHS, KC_ENT, KC_HOME, - KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_INT1, KC_RSFT, KC_END, - KC_LCTL, KC_LOPTN, KC_LCMMD, KC_LNG2, KC_SPC, KC_LNG1, KC_RCMMD,MO(MAC_FN),KC_LEFT, KC_UP, KC_DOWN, KC_RGHT), - - [MAC_FN] = LAYOUT( - _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, BL_TOGG, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - BL_TOGG, BL_STEP, BL_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, BL_DOWN, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - - [WIN_BASE] = LAYOUT( - KC_ESC, 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_PSCR, KC_DEL, BL_STEP, - KC_GRV, 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_INT3, KC_BSPC, KC_PGUP, - 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_PGDN, - 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_NUHS, KC_ENT, KC_HOME, - KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_INT1, KC_RSFT, KC_END, - KC_LCTL, KC_LGUI, KC_LALT, KC_INT5, KC_SPC, KC_INT4, KC_RALT, MO(WIN_FN),KC_LEFT, KC_UP, KC_DOWN, KC_RGHT), - - [WIN_FN] = LAYOUT( - _______, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, BL_DOWN, BL_UP, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, BL_TOGG, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - BL_TOGG, BL_STEP, BL_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, BL_DOWN, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), -}; diff --git a/keyboards/keychron/k3_pro/jis/white/keymaps/via/keymap.c b/keyboards/keychron/k3_pro/jis/white/keymaps/via/keymap.c deleted file mode 100644 index a96e296c02..0000000000 --- a/keyboards/keychron/k3_pro/jis/white/keymaps/via/keymap.c +++ /dev/null @@ -1,59 +0,0 @@ -/* 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 . - */ - -#include QMK_KEYBOARD_H - -// clang-format off -enum layers{ - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN -}; - -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT( - KC_ESC, KC_BRID, KC_BRIU, KC_MCTL, KC_LPAD, BL_DOWN, BL_UP, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_SNAP, KC_DEL, BL_STEP, - KC_GRV, 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_INT3, KC_BSPC, KC_PGUP, - 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_PGDN, - 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_NUHS, KC_ENT, KC_HOME, - KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_INT1, KC_RSFT, KC_END, - KC_LCTL, KC_LOPTN, KC_LCMMD, KC_LNG2, KC_SPC, KC_LNG1, KC_RCMMD,MO(MAC_FN),KC_LEFT, KC_UP, KC_DOWN, KC_RGHT), - - [MAC_FN] = LAYOUT( - _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, BL_TOGG, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - BL_TOGG, BL_STEP, BL_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, BL_DOWN, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - - [WIN_BASE] = LAYOUT( - KC_ESC, 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_PSCR, KC_DEL, BL_STEP, - KC_GRV, 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_INT3, KC_BSPC, KC_PGUP, - 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_PGDN, - 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_NUHS, KC_ENT, KC_HOME, - KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_INT1, KC_RSFT, KC_END, - KC_LCTL, KC_LGUI, KC_LALT, KC_INT5, KC_SPC, KC_INT4, KC_RALT, MO(WIN_FN),KC_LEFT, KC_UP, KC_DOWN, KC_RGHT), - - [WIN_FN] = LAYOUT( - _______, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, BL_DOWN, BL_UP, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, BL_TOGG, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - BL_TOGG, BL_STEP, BL_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, BL_DOWN, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), -}; diff --git a/keyboards/keychron/k3_pro/jis/white/keymaps/via/rules.mk b/keyboards/keychron/k3_pro/jis/white/keymaps/via/rules.mk deleted file mode 100644 index 1e5b99807c..0000000000 --- a/keyboards/keychron/k3_pro/jis/white/keymaps/via/rules.mk +++ /dev/null @@ -1 +0,0 @@ -VIA_ENABLE = yes diff --git a/keyboards/keychron/k3_pro/jis/white/rules.mk b/keyboards/keychron/k3_pro/jis/white/rules.mk deleted file mode 100644 index f886ea2e8e..0000000000 --- a/keyboards/keychron/k3_pro/jis/white/rules.mk +++ /dev/null @@ -1 +0,0 @@ -# This file intentionally blank \ No newline at end of file diff --git a/keyboards/keychron/k3_pro/jis/white/white.c b/keyboards/keychron/k3_pro/jis/white/white.c deleted file mode 100644 index 6f03001dba..0000000000 --- a/keyboards/keychron/k3_pro/jis/white/white.c +++ /dev/null @@ -1,151 +0,0 @@ -/* 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 . - */ - -#include "quantum.h" - -// clang-format off -#ifdef LED_MATRIX_ENABLE -const snled27351_led_t g_snled27351_leds[LED_MATRIX_LED_COUNT] = { -/* Refer to snled27351manual for these locations - * driver - * | LED address - * | | */ - {0, F_1}, - {0, F_2}, - {0, F_3}, - {0, F_4}, - {0, F_5}, - {0, F_6}, - {0, F_7}, - {0, F_8}, - {0, F_9}, - {0, F_10}, - {0, F_11}, - {0, F_12}, - {0, F_13}, - {0, F_14}, - {0, F_15}, - {0, F_16}, - - {0, E_1}, - {0, E_2}, - {0, E_3}, - {0, E_4}, - {0, E_5}, - {0, E_6}, - {0, E_7}, - {0, E_8}, - {0, E_9}, - {0, E_10}, - {0, E_11}, - {0, E_12}, - {0, E_13}, - {0, E_14}, - {0, E_15}, - {0, E_16}, - - {0, D_1}, - {0, D_2}, - {0, D_3}, - {0, D_4}, - {0, D_5}, - {0, D_6}, - {0, D_7}, - {0, D_8}, - {0, D_9}, - {0, D_10}, - {0, D_11}, - {0, D_12}, - {0, D_13}, - {0, D_16}, - - {0, C_1}, - {0, C_2}, - {0, C_3}, - {0, C_4}, - {0, C_5}, - {0, C_6}, - {0, C_7}, - {0, C_8}, - {0, C_9}, - {0, C_10}, - {0, C_11}, - {0, C_12}, - {0, C_14}, - {0, D_14}, - {0, C_16}, - - {0, B_1}, - {0, B_3}, - {0, B_4}, - {0, B_5}, - {0, B_6}, - {0, B_7}, - {0, B_8}, - {0, B_9}, - {0, B_10}, - {0, B_11}, - {0, B_12}, - {0, B_14}, - {0, B_15}, - {0, B_16}, - - {0, A_1}, - {0, A_2}, - {0, A_3}, - {0, A_4}, - {0, A_7}, - {0, A_10}, - {0, A_11}, - {0, A_12}, - {0, A_13}, - {0, A_14}, - {0, A_15}, - {0, A_16}, -}; - -#define __ NO_LED - -led_config_t g_led_config = { - { - // Key Matrix to LED Index - { 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, 40, 41, 42, 43, 44, 59, __, 45 }, - { 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, __, 58, __, 60 }, - { 61, __, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, __, 72, 73, 74 }, - { 75, 76, 77, 78, __, __, 79, __, __, 80, 81, 82, 83, 84, 85, 86 } - }, - { - // LED Index to Physical Position - {0,0}, {15,0}, {30,0}, {45,0}, {60,0}, {75,0}, {90,0}, {105,0}, {119,0}, {134,0}, {149,0}, {164,0}, {179,0}, {194,0}, {209,0}, {224,0}, - {0,13}, {15,13}, {30,13}, {45,13}, {60,13}, {75,13}, {90,13}, {105,13}, {119,13}, {134,13}, {149,13}, {164,13}, {179,13}, {194,13}, {209,13}, {224,13}, - {4,26}, {22,26}, {37,26}, {52,26}, {67,26}, {82,26}, {97,26}, {112,26}, {127,26}, {142,26}, {157,26}, {172,26}, {187,26}, {224,26}, - {6,38}, {26,38}, {41,38}, {56,38}, {71,38}, {86,38}, {101,38}, {116,38}, {131,38}, {146,38}, {161,38}, {175,38}, {190,38}, {207,32}, {224,38}, - {9,51}, {34,51}, {49,51}, {64,51}, {78,51}, {93,51}, {108,51}, {123,51}, {138,51}, {153,51}, {168,51}, {183,51}, {203,51}, {224,51}, - {0,64}, {15,64}, {30,64}, {45,64}, {90,64}, {134,64}, {149,64}, {164,64}, {179,64}, {194,64}, {209,64}, {224,64}, - }, - { - // RGB LED Index to Flag - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 4, 8, 8, 8, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1, 1, - 1, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1, - 8, 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, - 1, 1, 1, 1, 4, 1, 1, 1, 1, 1, 1, 1 - } -}; -#endif diff --git a/keyboards/keychron/k3_pro/k3_pro.c b/keyboards/keychron/k3_pro/k3_pro.c deleted file mode 100644 index 9f4d6b6406..0000000000 --- a/keyboards/keychron/k3_pro/k3_pro.c +++ /dev/null @@ -1,301 +0,0 @@ -/* 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 . - */ - -#include "k3_pro.h" -#ifdef KC_BLUETOOTH_ENABLE -# include "ckbt51.h" -# include "bluetooth.h" -# include "indicator.h" -# include "transport.h" -# include "battery.h" -# include "bat_level_animation.h" -# include "lpm.h" -#endif - -#ifdef ENABLE_FACTORY_TEST -# include "factory_test.h" -#endif - -#define POWER_ON_LED_DURATION 3000 - -typedef struct PACKED { - uint8_t len; - uint8_t keycode[3]; -} key_combination_t; - -static uint32_t power_on_indicator_timer_buffer; -static uint32_t siri_timer_buffer = 0; -static uint8_t mac_keycode[4] = {KC_LOPT, KC_ROPT, KC_LCMD, KC_RCMD}; - -key_combination_t key_comb_list[4] = { - {2, {KC_LWIN, KC_TAB}}, // Task (win) - {2, {KC_LWIN, KC_E}}, // Files (win) - {3, {KC_LSFT, KC_LGUI, KC_4}}, // Snapshot (mac) - {2, {KC_LWIN, KC_C}} // Cortana (win) -}; - -#ifdef KC_BLUETOOTH_ENABLE -bool firstDisconnect = true; -bool bt_factory_reset = false; -static virtual_timer_t pairing_key_timer; -extern uint8_t g_pwm_buffer[DRIVER_COUNT][192]; - -static void pairing_key_timer_cb(void *arg) { - bluetooth_pairing_ex(*(uint8_t *)arg, NULL); -} -#endif - -bool dip_switch_update_kb(uint8_t index, bool active) { - if (index == 0) { - default_layer_set(1UL << (active ? 0 : 2)); - } - dip_switch_update_user(index, active); - - return true; -} - -#ifdef KC_BLUETOOTH_ENABLE -bool process_record_kb_bt(uint16_t keycode, keyrecord_t *record) { -#else -bool process_record_kb(uint16_t keycode, keyrecord_t *record) { -#endif - static uint8_t host_idx = 0; - - switch (keycode) { - case KC_LOPTN: - case KC_ROPTN: - case KC_LCMMD: - case KC_RCMMD: - if (record->event.pressed) { - register_code(mac_keycode[keycode - KC_LOPTN]); - } else { - unregister_code(mac_keycode[keycode - KC_LOPTN]); - } - return false; // Skip all further processing of this key) - case KC_TASK: - case KC_FILE: - case KC_SNAP: - case KC_CTANA: - if (record->event.pressed) { - for (uint8_t i = 0; i < key_comb_list[keycode - KC_TASK].len; i++) - register_code(key_comb_list[keycode - KC_TASK].keycode[i]); - } else { - for (uint8_t i = 0; i < key_comb_list[keycode - KC_TASK].len; i++) - unregister_code(key_comb_list[keycode - KC_TASK].keycode[i]); - } - return false; // Skip all further processing of this key - case KC_SIRI: - if (record->event.pressed && siri_timer_buffer == 0) { - register_code(KC_LGUI); - register_code(KC_SPACE); - siri_timer_buffer = sync_timer_read32() | 1; - } - return false; // Skip all further processing of this key -#ifdef KC_BLUETOOTH_ENABLE - case BT_HST1 ... BT_HST3: - if (get_transport() == TRANSPORT_BLUETOOTH) { - if (record->event.pressed) { - host_idx = keycode - BT_HST1 + 1; - chVTSet(&pairing_key_timer, TIME_MS2I(2000), (vtfunc_t)pairing_key_timer_cb, &host_idx); - bluetooth_connect_ex(host_idx, 0); - } else { - host_idx = 0; - chVTReset(&pairing_key_timer); - } - } - break; - case BAT_LVL: - if (get_transport() == TRANSPORT_BLUETOOTH && !usb_power_connected()) { - bat_level_animiation_start(battery_get_percentage()); - } - break; -#endif - default: -#ifdef FACTORY_RESET_CHECK - FACTORY_RESET_CHECK(keycode, record); -#endif - break; - } - return true; -} - -void keyboard_post_init_kb(void) { - dip_switch_read(true); - -#ifdef KC_BLUETOOTH_ENABLE - /* Currently we don't use this reset pin */ - palSetLineMode(CKBT51_RESET_PIN, PAL_MODE_UNCONNECTED); - - /* IMPORTANT: DO NOT enable internal pull-up resistor - * as there is an external pull-down resistor. - */ - palSetLineMode(USB_BT_MODE_SELECT_PIN, PAL_MODE_INPUT); - - ckbt51_init(false); - bluetooth_init(); -#endif - - power_on_indicator_timer_buffer = sync_timer_read32() | 1; - writePin(BAT_LOW_LED_PIN, BAT_LOW_LED_PIN_ON_STATE); - writePin(LED_CAPS_LOCK_PIN, LED_PIN_ON_STATE); -#ifdef KC_BLUETOOTH_ENABLE - writePin(H3, HOST_LED_PIN_ON_STATE); -#endif - - keyboard_post_init_user(); -} - -void matrix_scan_kb(void) { - if (power_on_indicator_timer_buffer) { - if (sync_timer_elapsed32(power_on_indicator_timer_buffer) > POWER_ON_LED_DURATION) { - power_on_indicator_timer_buffer = 0; - - writePin(BAT_LOW_LED_PIN, !BAT_LOW_LED_PIN_ON_STATE); - if (!host_keyboard_led_state().caps_lock) writePin(LED_CAPS_LOCK_PIN, !LED_PIN_ON_STATE); - } else { - writePin(BAT_LOW_LED_PIN, BAT_LOW_LED_PIN_ON_STATE); - writePin(LED_CAPS_LOCK_PIN, LED_PIN_ON_STATE); - } - } - - if (siri_timer_buffer && sync_timer_elapsed32(siri_timer_buffer) > 500) { - siri_timer_buffer = 0; - unregister_code(KC_LGUI); - unregister_code(KC_SPACE); - } - -#ifdef FACTORY_RESET_TASK - FACTORY_RESET_TASK(); -#endif - matrix_scan_user(); -} - -#ifdef KC_BLUETOOTH_ENABLE -static void ckbt51_param_init(void) { - /* Set bluetooth device name */ - // ckbt51_set_local_name(STR(PRODUCT)); - ckbt51_set_local_name(PRODUCT); - /* Set bluetooth parameters */ - module_param_t param = {.event_mode = 0x02, - .connected_idle_timeout = 7200, - .pairing_timeout = 180, - .pairing_mode = 0, - .reconnect_timeout = 5, - .report_rate = 90, - .vendor_id_source = 1, - .verndor_id = 0, // Must be 0x3434 - .product_id = PRODUCT_ID}; - ckbt51_set_param(¶m); -} - -void bluetooth_enter_disconnected_kb(uint8_t host_idx) { - if (bt_factory_reset) { - bt_factory_reset = false; - ckbt51_param_init(); - } - /* CKBT51 bluetooth module boot time is slower, it enters disconnected after boot, - so we place initialization here. */ - if (firstDisconnect && sync_timer_read32() < 1000 && get_transport() == TRANSPORT_BLUETOOTH) { - ckbt51_param_init(); - bluetooth_connect(); - firstDisconnect = false; - } -} - -void ckbt51_default_ack_handler(uint8_t *data, uint8_t len) { - if (data[1] == 0x45) { - module_param_t param = {.event_mode = 0x02, - .connected_idle_timeout = 7200, - .pairing_timeout = 180, - .pairing_mode = 0, - .reconnect_timeout = 5, - .report_rate = 90, - .vendor_id_source = 1, - .verndor_id = 0, // Must be 0x3434 - .product_id = PRODUCT_ID}; - ckbt51_set_param(¶m); - } -} - -void bluetooth_pre_task(void) { - static uint8_t mode = 1; - - if (readPin(USB_BT_MODE_SELECT_PIN) != mode) { - if (readPin(USB_BT_MODE_SELECT_PIN) != mode) { - mode = readPin(USB_BT_MODE_SELECT_PIN); - set_transport(mode == 0 ? TRANSPORT_BLUETOOTH : TRANSPORT_USB); - } - } -} -#endif - -void battery_calculte_voltage(uint16_t value) { - uint16_t voltage = ((uint32_t)value) * 2246 / 1000; - -#ifdef LED_MATRIX_ENABLE - if (led_matrix_is_enabled()) { - uint32_t totalBuf = 0; - - for (uint8_t i = 0; i < DRIVER_COUNT; i++) - for (uint8_t j = 0; j < 192; j++) - totalBuf += g_pwm_buffer[i][j]; - /* We assumpt it is linear relationship*/ - voltage += (30 * totalBuf / LED_MATRIX_LED_COUNT / 255); - } -#endif -#ifdef RGB_MATRIX_ENABLE - if (rgb_matrix_is_enabled()) { - uint32_t totalBuf = 0; - - for (uint8_t i = 0; i < DRIVER_COUNT; i++) - for (uint8_t j = 0; j < 192; j++) - totalBuf += g_pwm_buffer[i][j]; - /* We assumpt it is linear relationship*/ - uint32_t compensation = 60 * totalBuf / RGB_MATRIX_LED_COUNT / 255 / 3; - voltage += compensation; - } -#endif - battery_set_voltage(voltage); -} - -bool via_command_kb(uint8_t *data, uint8_t length) { - switch (data[0]) { -#ifdef KC_BLUETOOTH_ENABLE - case 0xAA: - ckbt51_dfu_rx(data, length); - break; -#endif -#ifdef ENABLE_FACTORY_TEST - case 0xAB: - factory_test_rx(data, length); - break; -#endif - default: - return false; - } - - return true; -} - -#if !defined(VIA_ENABLE) -void raw_hid_receive(uint8_t *data, uint8_t length) { - switch (data[0]) { - case RAW_HID_CMD: - via_command_kb(data, length); - break; - } -} -#endif diff --git a/keyboards/keychron/k3_pro/k3_pro.h b/keyboards/keychron/k3_pro/k3_pro.h deleted file mode 100644 index cd0954d579..0000000000 --- a/keyboards/keychron/k3_pro/k3_pro.h +++ /dev/null @@ -1,55 +0,0 @@ -/* 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 . - */ - -#pragma once - -#include "quantum.h" -#ifdef VIA_ENABLE -# include "via.h" -#endif - -#define ___ KC_NO - -#ifdef VIA_ENABLE -# define USER_START QK_KB_0 -#else -# define USER_START SAFE_RANGE -#endif - -// clang-format off -enum { - KC_LOPTN = USER_START, - KC_ROPTN, - KC_LCMMD, - KC_RCMMD, - KC_TASK, - KC_FILE, - KC_SNAP, - KC_CTANA, - KC_SIRI, -#ifdef KC_BLUETOOTH_ENABLE - BT_HST1, - BT_HST2, - BT_HST3, - BAT_LVL, -#else - BT_HST1 = KC_TRNS, - BT_HST2 = KC_TRNS, - BT_HST3 = KC_TRNS, - BAT_LVL = KC_TRNS, -#endif - NEW_SAFE_RANGE -}; diff --git a/keyboards/keychron/k3_pro/matrix.c b/keyboards/keychron/k3_pro/matrix.c deleted file mode 100644 index 072cfc3280..0000000000 --- a/keyboards/keychron/k3_pro/matrix.c +++ /dev/null @@ -1,197 +0,0 @@ -/* 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 . - */ - -#include "stdint.h" -#include "hal.h" -#include "gpio.h" -#include "quantum.h" - -#define HC595_STCP B0 -#define HC595_SHCP A1 -#define HC595_DS A7 - -#define DIRECT_COL_NUM 1 - -pin_t row_pins[MATRIX_ROWS] = MATRIX_ROW_PINS; -pin_t col_pins[MATRIX_COLS] = MATRIX_COL_PINS; - -static inline void HC595_delay(uint16_t n) { - while (n-- > 0) { - asm volatile("nop" ::: "memory"); - } -} - -#ifdef DRIVE_SHRIFT_REGISTER_WITH_SPI -// clang-format off -const SPIConfig hs_spicfg = { - .circular = false, - .slave = false, - .data_cb = NULL, - .error_cb = NULL, - .ssport = PAL_PORT(HC595_STCP), - .sspad = PAL_PAD(HC595_STCP), - .cr1 = SPI_CR1_BR_1, - .cr2 = SPI_CR2_DS_3 | SPI_CR2_DS_2 | SPI_CR2_DS_1 | SPI_CR2_DS_0 | SPI_CR2_SSOE | SPI_CR2_NSSP -}; -// clang-format on -#endif -static void HC595_output(uint16_t data) { -#ifdef DRIVE_SHRIFT_REGISTER_WITH_SPI - spiSend(&SPID1, 1, &data); -#else - uint8_t i; - uint8_t n = 1; - - for (i = 16; i > 0; i--) { - writePinLow(HC595_SHCP); - - if (data & 0x8000) - writePinHigh(HC595_DS); - else - writePinLow(HC595_DS); - - data <<= 1; - - HC595_delay(n); - - writePinHigh(HC595_SHCP); - HC595_delay(n); - } - - HC595_delay(n); - writePinLow(HC595_STCP); - HC595_delay(n); - writePinHigh(HC595_STCP); -#endif -} - -static inline void setPinOutput_writeLow(pin_t pin) { - ATOMIC_BLOCK_FORCEON { - setPinOutput(pin); - writePinLow(pin); - } -} - -static inline void setPinInputHigh_atomic(pin_t pin) { - ATOMIC_BLOCK_FORCEON { - setPinInputHigh(pin); - } -} - -static inline uint8_t readMatrixPin(pin_t pin) { - if (pin != NO_PIN) { - return readPin(pin); - } else { - return 1; - } -} - -static bool select_col(uint8_t col) { - pin_t pin = col_pins[col]; - - if (col < 1) { - if (pin != NO_PIN) { - setPinOutput_writeLow(pin); - return true; - } - } else { - HC595_output(~(0x01 << (col - 1))); - return true; - } - return false; -} - -static void unselect_col(uint8_t col) { - pin_t pin = col_pins[col]; - - if (col < 1) { - if (pin != NO_PIN) { - setPinInputHigh_atomic(pin); - } - } else { - if (col >= MATRIX_COLS - 1) HC595_output(0xFFFF); - } -} - -static void unselect_cols(void) { - if (col_pins[0] != NO_PIN) setPinInputHigh_atomic(col_pins[0]); - HC595_output(0xFFFF); -} - -void select_all_cols(void) { - if (col_pins[0] != NO_PIN) setPinOutput_writeLow(col_pins[0]); - HC595_output(0x0000); -} - -void matrix_read_rows_on_col(matrix_row_t current_matrix[], uint8_t current_col) { - // Select col - if (!select_col(current_col)) { // select col - return; // skip NO_PIN col - } - - HC595_delay(100); - - // For each row... - for (uint8_t row_index = 0; row_index < MATRIX_ROWS; row_index++) { - // Check row pin state - if (readMatrixPin(row_pins[row_index]) == 0) { - // Pin LO, set col bit - current_matrix[row_index] |= (MATRIX_ROW_SHIFTER << current_col); - // key_pressed = true; - } else { - // Pin HI, clear col bit - current_matrix[row_index] &= ~(MATRIX_ROW_SHIFTER << current_col); - } - } - - unselect_col(current_col); - HC595_delay(100); -} - -void matrix_init_custom(void) { - for (uint8_t x = 0; x < MATRIX_ROWS; x++) { - if (row_pins[x] != NO_PIN) { - setPinInputHigh_atomic(row_pins[x]); - } - } -#ifdef DRIVE_SHRIFT_REGISTER_WITH_SPI - palSetPadMode(PAL_PORT(HC595_SHCP), PAL_PAD(HC595_SHCP), PAL_MODE_ALTERNATE(5) | PAL_STM32_OSPEED_HIGHEST); /* SCK */ - palSetPadMode(PAL_PORT(HC595_DS), PAL_PAD(HC595_DS), PAL_MODE_ALTERNATE(5) | PAL_STM32_OSPEED_HIGHEST); /* MOSI*/ - palSetPadMode(PAL_PORT(HC595_STCP), PAL_PAD(HC595_STCP), PAL_MODE_ALTERNATE(5) | PAL_STM32_OSPEED_HIGHEST); /* CS*/ - spiStart(&SPID1, &hs_spicfg); -#else - setPinOutput(HC595_DS); - setPinOutput(HC595_STCP); - setPinOutput(HC595_SHCP); -#endif - unselect_cols(); -} - -bool matrix_scan_custom(matrix_row_t current_matrix[]) { - bool matrix_has_changed = false; - - matrix_row_t curr_matrix[MATRIX_ROWS] = {0}; - - // Set col, read rows - for (uint8_t current_col = 0; current_col < MATRIX_COLS; current_col++) { - matrix_read_rows_on_col(curr_matrix, current_col); - } - - matrix_has_changed = memcmp(current_matrix, curr_matrix, sizeof(curr_matrix)) != 0; - if (matrix_has_changed) memcpy(current_matrix, curr_matrix, sizeof(curr_matrix)); - - return matrix_has_changed; -} diff --git a/keyboards/keychron/k3_pro/mcuconf.h b/keyboards/keychron/k3_pro/mcuconf.h deleted file mode 100644 index 2e17094d3b..0000000000 --- a/keyboards/keychron/k3_pro/mcuconf.h +++ /dev/null @@ -1,39 +0,0 @@ -/* 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 - -/* Set HCLK to 48 MHz as tradeoff of USB lowest clockand and - * lower power comsumption for bluetooth. Will use dynamic - * clock when STM32L4 is supported in ChibiOS */ -#undef STM32_PLLM_VALUE -#define STM32_PLLM_VALUE 2 - -#undef STM32_PLLN_VALUE -#define STM32_PLLN_VALUE 12 - -#undef STM32_I2C_USE_I2C1 -#define STM32_I2C_USE_I2C1 TRUE - -#undef STM32_SPI_USE_SPI1 -#define STM32_SPI_USE_SPI1 TRUE - -#ifdef KC_BLUETOOTH_ENABLE -# undef STM32_SERIAL_USE_USART2 -# define STM32_SERIAL_USE_USART2 TRUE -#endif diff --git a/keyboards/keychron/k3_pro/readme.md b/keyboards/keychron/k3_pro/readme.md deleted file mode 100644 index 52dda108c3..0000000000 --- a/keyboards/keychron/k3_pro/readme.md +++ /dev/null @@ -1,21 +0,0 @@ -# Keychron K3 Pro - -![Keychron K3 Pro](https://github.com/Keychron/ProductImage/blob/main/K_Pro/k3_pro.jpg?raw=true) - -A customizable 84 keys TKL keyboard. - -* Keyboard Maintainer: [Keychron](https://github.com/keychron) -* Hardware Supported: Keychron K3 Pro -* Hardware Availability: [Keychron K3 Pro QMK/VIA Wireless Custom Mechanical Keyboard](https://www.keychron.com/products/keychron-k3-pro-qmk-via-wireless-custom-mechanical-keyboard) - -Make example for this keyboard (after setting up your build environment): - - make keychron/k3_pro/ansi/rgb:default - -Flashing example for this keyboard: - - make keychron/k3_pro/ansi/rgb:default:flash - -**Reset Key**: Connect the USB cable, toggle mode switch to "Off", hold down the *Esc* key or reset button underneath space bar, then toggle then switch to "Cable". - -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). diff --git a/keyboards/keychron/k3_pro/rules.mk b/keyboards/keychron/k3_pro/rules.mk deleted file mode 100644 index 8e536fc345..0000000000 --- a/keyboards/keychron/k3_pro/rules.mk +++ /dev/null @@ -1,9 +0,0 @@ -# Enter lower-power sleep mode when on the ChibiOS idle thread -OPT_DEFS += -DCORTEX_ENABLE_WFI_IDLE=TRUE -OPT_DEFS += -DNO_USB_STARTUP_CHECK -DENABLE_FACTORY_TEST - -SRC += matrix.c - -include keyboards/keychron/bluetooth/bluetooth.mk - - diff --git a/keyboards/keychron/k3_pro/via_json/k3_pro_ansi_rgb.json b/keyboards/keychron/k3_pro/via_json/k3_pro_ansi_rgb.json deleted file mode 100644 index f626973fba..0000000000 --- a/keyboards/keychron/k3_pro/via_json/k3_pro_ansi_rgb.json +++ /dev/null @@ -1,263 +0,0 @@ -{ - "name": "Keychron K3 Pro", - "vendorId": "0x3434", - "productId": "0x0230", - "keycodes": ["qmk_lighting"], - "menus": [ - { - "label": "Lighting", - "content": [ - { - "label": "Backlight", - "content": [ - { - "label": "Brightness", - "type": "range", - "options": [0, 255], - "content": ["id_qmk_rgb_matrix_brightness", 3, 1] - }, - { - "label": "Effect", - "type": "dropdown", - "content": ["id_qmk_rgb_matrix_effect", 3, 2], - "options": [ - ["None", 0], - ["Solid Color", 1], - ["Breathing", 2], - ["Band Spiral Val", 3], - ["Cycle All", 4], - ["Cycle Left Right", 5], - ["Cycle Up Down", 6], - ["Rainbow Moving Chevron", 7], - ["Cycle Out In", 8], - ["Cycle Out In Dual", 9], - ["Cycle Pinwheel", 10], - ["Cycle Spiral", 11], - ["Dual Beacon", 12], - ["Rainbow Beacon", 13], - ["Jellybean Raindrops", 14], - ["Pixel Rain", 15], - ["Typing Heatmap", 16], - ["Digital Rain", 17], - ["Reactive Simple", 18], - ["Reactive Multiwide", 19], - ["Reactive Multinexus", 20], - ["Splash", 21], - ["Solid Splash", 22] - ] - }, - { - "showIf": "{id_qmk_rgb_matrix_effect} > 1", - "label": "Effect Speed", - "type": "range", - "options": [0, 255], - "content": ["id_qmk_rgb_matrix_effect_speed", 3, 3] - }, - { - "showIf": "{id_qmk_rgb_matrix_effect} != 0 && ( {id_qmk_rgb_matrix_effect} < 4 || {id_qmk_rgb_matrix_effect} == 18 || ({id_qmk_rgb_matrix_effect} > 17 && {id_qmk_rgb_matrix_effect} != 21) ) ", - "label": "Color", - "type": "color", - "content": ["id_qmk_rgb_matrix_color", 3, 4] - } - ] - } - ] - } - ], - "customKeycodes": [ - {"name": "Left Option", "title": "Left Option", "shortName": "LOpt"}, - {"name": "Right Option", "title": "Right Option", "shortName": "ROpt"}, - {"name": "Left Cmd", "title": "Left Command", "shortName": "LCmd"}, - {"name": "Right Cmd", "title": "Right Command", "shortName": "RCmd"}, - {"name": "Task View", "title": "Task View in Windows", "shortName": "Task"}, - {"name": "File Explorer", "title": "File Explorer in Windows", "shortName": "File"}, - {"name": "Screen shot", "title": "Screenshot in macOS", "shortName": "SShot"}, - {"name": "Cortana", "title": "Cortana in Windows", "shortName": "Cortana"}, - {"name": "Siri", "title": "Siri in macOS", "shortName": "Siri"}, - {"name": "Bluetooth Host 1", "title": "Bluetooth Host 1", "shortName": "BTH1"}, - {"name": "Bluetooth Host 2", "title": "Bluetooth Host 2", "shortName": "BTH2"}, - {"name": "Bluetooth Host 3", "title": "Bluetooth Host 3", "shortName": "BTH3"}, - {"name": "Battery Level", "title": "Show battery level", "shortName": "Batt"} - ], - "matrix": {"rows": 6, "cols": 16}, - "layouts": { - "keymap": [ - [ - { - "c": "#777777" - }, - "0,0", - { - "c": "#cccccc" - }, - "0,1", - "0,2", - "0,3", - "0,4", - { - "c": "#aaaaaa" - }, - "0,5", - "0,6", - "0,7", - "0,8", - "0,9", - { - "c": "#cccccc" - }, - "0,10", - "0,11", - "0,12", - { - "c": "#aaaaaa" - }, - "0,13", - "0,14", - "0,15" - ], - [ - "1,0", - { - "c": "#cccccc" - }, - "1,1", - "1,2", - "1,3", - "1,4", - "1,5", - "1,6", - "1,7", - "1,8", - "1,9", - "1,10", - "1,11", - "1,12", - { - "c": "#aaaaaa", - "w": 2 - }, - "1,13", - "1,15" - ], - [ - { - "w": 1.5 - }, - "2,0", - { - "c": "#cccccc" - }, - "2,1", - "2,2", - "2,3", - "2,4", - "2,5", - "2,6", - "2,7", - "2,8", - "2,9", - "2,10", - "2,11", - "2,12", - { - "c": "#aaaaaa", - "w": 1.5 - }, - "2,13", - "2,15" - ], - [ - { - "w": 1.75 - }, - "3,0", - { - "c": "#cccccc" - }, - "3,1", - "3,2", - "3,3", - "3,4", - "3,5", - "3,6", - "3,7", - "3,8", - "3,9", - "3,10", - "3,11", - { - "c": "#777777", - "w": 2.25 - }, - "3,13", - { - "c": "#aaaaaa" - }, - "3,15" - ], - [ - { - "w": 2.25 - }, - "4,0", - { - "c": "#cccccc" - }, - "4,2", - "4,3", - "4,4", - "4,5", - "4,6", - "4,7", - "4,8", - "4,9", - "4,10", - "4,11", - { - "c": "#aaaaaa", - "w": 1.75 - }, - "4,13", - { - "c": "#777777" - }, - "4,14", - { - "c": "#aaaaaa" - }, - "4,15" - ], - [ - { - "w": 1.25 - }, - "5,0", - { - "w": 1.25 - }, - "5,1", - { - "w": 1.25 - }, - "5,2", - { - "c": "#cccccc", - "w": 6.25 - }, - "5,6", - { - "c": "#aaaaaa" - }, - "5,10", - "5,11", - "5,12", - { - "c": "#777777" - }, - "5,13", - "5,14", - "5,15" - ] - ] - } -} diff --git a/keyboards/keychron/k3_pro/via_json/k3_pro_ansi_white.json b/keyboards/keychron/k3_pro/via_json/k3_pro_ansi_white.json deleted file mode 100644 index 9c1b6e3501..0000000000 --- a/keyboards/keychron/k3_pro/via_json/k3_pro_ansi_white.json +++ /dev/null @@ -1,202 +0,0 @@ -{ - "name": "Keychron K3 Pro", - "vendorId": "0x3434", - "productId": "0x0233", - "keycodes": ["qmk_lighting"], - "customKeycodes": [ - {"name": "Left Option", "title": "Left Option", "shortName": "LOpt"}, - {"name": "Right Option", "title": "Right Option", "shortName": "ROpt"}, - {"name": "Left Cmd", "title": "Left Command", "shortName": "LCmd"}, - {"name": "Right Cmd", "title": "Right Command", "shortName": "RCmd"}, - {"name": "Task View", "title": "Task View in Windows", "shortName": "Task"}, - {"name": "File Explorer", "title": "File Explorer in Windows", "shortName": "File"}, - {"name": "Screen shot", "title": "Screenshot in macOS", "shortName": "SShot"}, - {"name": "Cortana", "title": "Cortana in Windows", "shortName": "Cortana"}, - {"name": "Siri", "title": "Siri in macOS", "shortName": "Siri"}, - {"name": "Bluetooth Host 1", "title": "Bluetooth Host 1", "shortName": "BTH1"}, - {"name": "Bluetooth Host 2", "title": "Bluetooth Host 2", "shortName": "BTH2"}, - {"name": "Bluetooth Host 3", "title": "Bluetooth Host 3", "shortName": "BTH3"}, - {"name": "Battery Level", "title": "Show battery level", "shortName": "Batt"} - ], - "matrix": {"rows": 6, "cols": 16}, - "layouts": { - "keymap": [ - [ - { - "c": "#777777" - }, - "0,0", - { - "c": "#cccccc" - }, - "0,1", - "0,2", - "0,3", - "0,4", - { - "c": "#aaaaaa" - }, - "0,5", - "0,6", - "0,7", - "0,8", - "0,9", - { - "c": "#cccccc" - }, - "0,10", - "0,11", - "0,12", - { - "c": "#aaaaaa" - }, - "0,13", - "0,14", - "0,15" - ], - [ - "1,0", - { - "c": "#cccccc" - }, - "1,1", - "1,2", - "1,3", - "1,4", - "1,5", - "1,6", - "1,7", - "1,8", - "1,9", - "1,10", - "1,11", - "1,12", - { - "c": "#aaaaaa", - "w": 2 - }, - "1,13", - "1,15" - ], - [ - { - "w": 1.5 - }, - "2,0", - { - "c": "#cccccc" - }, - "2,1", - "2,2", - "2,3", - "2,4", - "2,5", - "2,6", - "2,7", - "2,8", - "2,9", - "2,10", - "2,11", - "2,12", - { - "c": "#aaaaaa", - "w": 1.5 - }, - "2,13", - "2,15" - ], - [ - { - "w": 1.75 - }, - "3,0", - { - "c": "#cccccc" - }, - "3,1", - "3,2", - "3,3", - "3,4", - "3,5", - "3,6", - "3,7", - "3,8", - "3,9", - "3,10", - "3,11", - { - "c": "#777777", - "w": 2.25 - }, - "3,13", - { - "c": "#aaaaaa" - }, - "3,15" - ], - [ - { - "w": 2.25 - }, - "4,0", - { - "c": "#cccccc" - }, - "4,2", - "4,3", - "4,4", - "4,5", - "4,6", - "4,7", - "4,8", - "4,9", - "4,10", - "4,11", - { - "c": "#aaaaaa", - "w": 1.75 - }, - "4,13", - { - "c": "#777777" - }, - "4,14", - { - "c": "#aaaaaa" - }, - "4,15" - ], - [ - { - "w": 1.25 - }, - "5,0", - { - "w": 1.25 - }, - "5,1", - { - "w": 1.25 - }, - "5,2", - { - "c": "#cccccc", - "w": 6.25 - }, - "5,6", - { - "c": "#aaaaaa" - }, - "5,10", - "5,11", - "5,12", - { - "c": "#777777" - }, - "5,13", - "5,14", - "5,15" - ] - ] - } -} diff --git a/keyboards/keychron/k3_pro/via_json/k3_pro_iso_rgb .json b/keyboards/keychron/k3_pro/via_json/k3_pro_iso_rgb .json deleted file mode 100644 index 5f4f4cee42..0000000000 --- a/keyboards/keychron/k3_pro/via_json/k3_pro_iso_rgb .json +++ /dev/null @@ -1,211 +0,0 @@ -{ - "name": "Keychron K3 Pro", - "vendorId": "0x3434", - "productId": "0x0231", - "keycodes": ["qmk_lighting"], - "menus": ["qmk_rgb_matrix"], - "customKeycodes": [ - {"name": "Left Option", "title": "Left Option", "shortName": "LOpt"}, - {"name": "Right Option", "title": "Right Option", "shortName": "ROpt"}, - {"name": "Left Cmd", "title": "Left Command", "shortName": "LCmd"}, - {"name": "Right Cmd", "title": "Right Command", "shortName": "RCmd"}, - {"name": "Task View", "title": "Task View in Windows", "shortName": "Task"}, - {"name": "File Explorer", "title": "File Explorer in Windows", "shortName": "File"}, - {"name": "Screen shot", "title": "Screenshot in macOS", "shortName": "SShot"}, - {"name": "Cortana", "title": "Cortana in Windows", "shortName": "Cortana"}, - {"name": "Siri", "title": "Siri in macOS", "shortName": "Siri"}, - {"name": "Bluetooth Host 1", "title": "Bluetooth Host 1", "shortName": "BTH1"}, - {"name": "Bluetooth Host 2", "title": "Bluetooth Host 2", "shortName": "BTH2"}, - {"name": "Bluetooth Host 3", "title": "Bluetooth Host 3", "shortName": "BTH3"}, - {"name": "Battery Level", "title": "Show battery level", "shortName": "Batt"} - ], - "matrix": {"rows": 6, "cols": 16}, - "layouts": { - "keymap": [ - [ - { - "c": "#777777" - }, - "0,0", - { - "c": "#cccccc" - }, - "0,1", - "0,2", - "0,3", - "0,4", - { - "c": "#aaaaaa" - }, - "0,5", - "0,6", - "0,7", - "0,8", - "0,9", - { - "c": "#cccccc" - }, - "0,10", - "0,11", - "0,12", - { - "c": "#aaaaaa" - }, - "0,13", - "0,14", - "0,15" - ], - [ - "1,0", - { - "c": "#cccccc" - }, - "1,1", - "1,2", - "1,3", - "1,4", - "1,5", - "1,6", - "1,7", - "1,8", - "1,9", - "1,10", - "1,11", - "1,12", - { - "c": "#aaaaaa", - "w": 2 - }, - "1,13", - "1,15" - ], - [ - { - "w": 1.5 - }, - "2,0", - { - "c": "#cccccc" - }, - "2,1", - "2,2", - "2,3", - "2,4", - "2,5", - "2,6", - "2,7", - "2,8", - "2,9", - "2,10", - "2,11", - "2,12", - { - "x": 0.25, - "c": "#777777", - "w": 1.25, - "h": 2, - "w2": 1.5, - "h2": 1, - "x2": -0.25 - }, - "2,13", - { - "c": "#aaaaaa" - }, - "2,15" - ], - [ - { - "w": 1.75 - }, - "3,0", - { - "c": "#cccccc" - }, - "3,1", - "3,2", - "3,3", - "3,4", - "3,5", - "3,6", - "3,7", - "3,8", - "3,9", - "3,10", - "3,11", - { - "c": "#aaaaaa" - }, - "3,13", - { - "x": 1.25 - }, - "3,15" - ], - [ - { - "w": 1.25 - }, - "4,0", - "4,1", - { - "c": "#cccccc" - }, - "4,2", - "4,3", - "4,4", - "4,5", - "4,6", - "4,7", - "4,8", - "4,9", - "4,10", - "4,11", - { - "c": "#aaaaaa", - "w": 1.75 - }, - "4,13", - { - "c": "#777777" - }, - "4,14", - { - "c": "#aaaaaa" - }, - "4,15" - ], - [ - { - "w": 1.25 - }, - "5,0", - { - "w": 1.25 - }, - "5,1", - { - "w": 1.25 - }, - "5,2", - { - "c": "#cccccc", - "w": 6.25 - }, - "5,6", - { - "c": "#aaaaaa" - }, - "5,10", - "5,11", - "5,12", - { - "c": "#777777" - }, - "5,13", - "5,14", - "5,15" - ] - ] - } -} diff --git a/keyboards/keychron/k3_pro/via_json/k3_pro_iso_white.json b/keyboards/keychron/k3_pro/via_json/k3_pro_iso_white.json deleted file mode 100644 index 835b9dc50c..0000000000 --- a/keyboards/keychron/k3_pro/via_json/k3_pro_iso_white.json +++ /dev/null @@ -1,210 +0,0 @@ -{ - "name": "Keychron K3 Pro", - "vendorId": "0x3434", - "productId": "0x0234", - "keycodes": ["qmk_lighting"], - "customKeycodes": [ - {"name": "Left Option", "title": "Left Option", "shortName": "LOpt"}, - {"name": "Right Option", "title": "Right Option", "shortName": "ROpt"}, - {"name": "Left Cmd", "title": "Left Command", "shortName": "LCmd"}, - {"name": "Right Cmd", "title": "Right Command", "shortName": "RCmd"}, - {"name": "Task View", "title": "Task View in Windows", "shortName": "Task"}, - {"name": "File Explorer", "title": "File Explorer in Windows", "shortName": "File"}, - {"name": "Screen shot", "title": "Screenshot in macOS", "shortName": "SShot"}, - {"name": "Cortana", "title": "Cortana in Windows", "shortName": "Cortana"}, - {"name": "Siri", "title": "Siri in macOS", "shortName": "Siri"}, - {"name": "Bluetooth Host 1", "title": "Bluetooth Host 1", "shortName": "BTH1"}, - {"name": "Bluetooth Host 2", "title": "Bluetooth Host 2", "shortName": "BTH2"}, - {"name": "Bluetooth Host 3", "title": "Bluetooth Host 3", "shortName": "BTH3"}, - {"name": "Battery Level", "title": "Show battery level", "shortName": "Batt"} - ], - "matrix": {"rows": 6, "cols": 16}, - "layouts": { - "keymap": [ - [ - { - "c": "#777777" - }, - "0,0", - { - "c": "#cccccc" - }, - "0,1", - "0,2", - "0,3", - "0,4", - { - "c": "#aaaaaa" - }, - "0,5", - "0,6", - "0,7", - "0,8", - "0,9", - { - "c": "#cccccc" - }, - "0,10", - "0,11", - "0,12", - { - "c": "#aaaaaa" - }, - "0,13", - "0,14", - "0,15" - ], - [ - "1,0", - { - "c": "#cccccc" - }, - "1,1", - "1,2", - "1,3", - "1,4", - "1,5", - "1,6", - "1,7", - "1,8", - "1,9", - "1,10", - "1,11", - "1,12", - { - "c": "#aaaaaa", - "w": 2 - }, - "1,13", - "1,15" - ], - [ - { - "w": 1.5 - }, - "2,0", - { - "c": "#cccccc" - }, - "2,1", - "2,2", - "2,3", - "2,4", - "2,5", - "2,6", - "2,7", - "2,8", - "2,9", - "2,10", - "2,11", - "2,12", - { - "x": 0.25, - "c": "#777777", - "w": 1.25, - "h": 2, - "w2": 1.5, - "h2": 1, - "x2": -0.25 - }, - "2,13", - { - "c": "#aaaaaa" - }, - "2,15" - ], - [ - { - "w": 1.75 - }, - "3,0", - { - "c": "#cccccc" - }, - "3,1", - "3,2", - "3,3", - "3,4", - "3,5", - "3,6", - "3,7", - "3,8", - "3,9", - "3,10", - "3,11", - { - "c": "#aaaaaa" - }, - "3,13", - { - "x": 1.25 - }, - "3,15" - ], - [ - { - "w": 1.25 - }, - "4,0", - "4,1", - { - "c": "#cccccc" - }, - "4,2", - "4,3", - "4,4", - "4,5", - "4,6", - "4,7", - "4,8", - "4,9", - "4,10", - "4,11", - { - "c": "#aaaaaa", - "w": 1.75 - }, - "4,13", - { - "c": "#777777" - }, - "4,14", - { - "c": "#aaaaaa" - }, - "4,15" - ], - [ - { - "w": 1.25 - }, - "5,0", - { - "w": 1.25 - }, - "5,1", - { - "w": 1.25 - }, - "5,2", - { - "c": "#cccccc", - "w": 6.25 - }, - "5,6", - { - "c": "#aaaaaa" - }, - "5,10", - "5,11", - "5,12", - { - "c": "#777777" - }, - "5,13", - "5,14", - "5,15" - ] - ] - } -} diff --git a/keyboards/keychron/k3_pro/via_json/k3_pro_jis_rgb .json b/keyboards/keychron/k3_pro/via_json/k3_pro_jis_rgb .json deleted file mode 100644 index f26ee3ca35..0000000000 --- a/keyboards/keychron/k3_pro/via_json/k3_pro_jis_rgb .json +++ /dev/null @@ -1,263 +0,0 @@ -{ - "name": "Keychron K3 Pro", - "vendorId": "0x3434", - "productId": "0x0232", - "keycodes": ["qmk_lighting"], - "menus": [ - { - "label": "Lighting", - "content": [ - { - "label": "Backlight", - "content": [ - { - "label": "Brightness", - "type": "range", - "options": [0, 255], - "content": ["id_qmk_rgb_matrix_brightness", 3, 1] - }, - { - "label": "Effect", - "type": "dropdown", - "content": ["id_qmk_rgb_matrix_effect", 3, 2], - "options": [ - ["None", 0], - ["Solid Color", 1], - ["Breathing", 2], - ["Band Spiral Val", 3], - ["Cycle All", 4], - ["Cycle Left Right", 5], - ["Cycle Up Down", 6], - ["Rainbow Moving Chevron", 7], - ["Cycle Out In", 8], - ["Cycle Out In Dual", 9], - ["Cycle Pinwheel", 10], - ["Cycle Spiral", 11], - ["Dual Beacon", 12], - ["Rainbow Beacon", 13], - ["Jellybean Raindrops", 14], - ["Pixel Rain", 15], - ["Typing Heatmap", 16], - ["Digital Rain", 17], - ["Reactive Simple", 18], - ["Reactive Multiwide", 19], - ["Reactive Multinexus", 20], - ["Splash", 21], - ["Solid Splash", 22] - ] - }, - { - "showIf": "{id_qmk_rgb_matrix_effect} > 1", - "label": "Effect Speed", - "type": "range", - "options": [0, 255], - "content": ["id_qmk_rgb_matrix_effect_speed", 3, 3] - }, - { - "showIf": "{id_qmk_rgb_matrix_effect} != 0 && ( {id_qmk_rgb_matrix_effect} < 4 || {id_qmk_rgb_matrix_effect} == 18 || ({id_qmk_rgb_matrix_effect} > 17 && {id_qmk_rgb_matrix_effect} != 21) ) ", - "label": "Color", - "type": "color", - "content": ["id_qmk_rgb_matrix_color", 3, 4] - } - ] - } - ] - } - ], - "customKeycodes": [ - {"name": "Left Option", "title": "Left Option", "shortName": "LOpt"}, - {"name": "Right Option", "title": "Right Option", "shortName": "ROpt"}, - {"name": "Left Cmd", "title": "Left Command", "shortName": "LCmd"}, - {"name": "Right Cmd", "title": "Right Command", "shortName": "RCmd"}, - {"name": "Task View", "title": "Task View in Windows", "shortName": "Task"}, - {"name": "File Explorer", "title": "File Explorer in Windows", "shortName": "File"}, - {"name": "Screen shot", "title": "Screenshot in macOS", "shortName": "SShot"}, - {"name": "Cortana", "title": "Cortana in Windows", "shortName": "Cortana"}, - {"name": "Siri", "title": "Siri in macOS", "shortName": "Siri"}, - {"name": "Bluetooth Host 1", "title": "Bluetooth Host 1", "shortName": "BTH1"}, - {"name": "Bluetooth Host 2", "title": "Bluetooth Host 2", "shortName": "BTH2"}, - {"name": "Bluetooth Host 3", "title": "Bluetooth Host 3", "shortName": "BTH3"}, - {"name": "Battery Level", "title": "Show battery level", "shortName": "Batt"} - ], - "matrix": {"rows": 6, "cols": 16}, - "layouts": { - "keymap": [ - [ - { - "c": "#777777" - }, - "0,0", - { - "c": "#cccccc" - }, - "0,1", - "0,2", - "0,3", - "0,4", - { - "c": "#aaaaaa" - }, - "0,5", - "0,6", - "0,7", - "0,8", - "0,9", - { - "c": "#cccccc" - }, - "0,10", - "0,11", - "0,12", - { - "c": "#aaaaaa" - }, - "0,13", - "0,14", - "0,15" - ], - [ - "1,0", - { - "c": "#cccccc" - }, - "1,1", - "1,2", - "1,3", - "1,4", - "1,5", - "1,6", - "1,7", - "1,8", - "1,9", - "1,10", - "1,11", - "1,12", - { - "c": "#aaaaaa" - }, - "1,13", - "1,14", - "1,15" - ], - [ - { - "w": 1.5 - }, - "2,0", - { - "c": "#cccccc" - }, - "2,1", - "2,2", - "2,3", - "2,4", - "2,5", - "2,6", - "2,7", - "2,8", - "2,9", - "2,10", - "2,11", - "2,12", - { - "x": 0.25, - "c": "#777777", - "w": 1.25, - "h": 2, - "w2": 1.5, - "h2": 1, - "x2": -0.25 - }, - "2,13", - { - "c": "#aaaaaa" - }, - "2,15" - ], - [ - { - "w": 1.75 - }, - "3,0", - { - "c": "#cccccc" - }, - "3,1", - "3,2", - "3,3", - "3,4", - "3,5", - "3,6", - "3,7", - "3,8", - "3,9", - "3,10", - "3,11", - { - "c": "#aaaaaa" - }, - "3,13", - { - "x": 1.25 - }, - "3,15" - ], - [ - { - "w": 2.25 - }, - "4,0", - { - "c": "#cccccc" - }, - "4,2", - "4,3", - "4,4", - "4,5", - "4,6", - "4,7", - "4,8", - "4,9", - "4,10", - { - "c": "#aaaaaa" - }, - "4,11", - "4,13", - { - "c": "#777777", - "w": 1.75 - }, - "4,14", - { - "c": "#aaaaaa" - }, - "4,15" - ], - [ - "5,0", - "5,1", - "5,2", - "5,3", - { - "c": "#cccccc", - "w": 5 - }, - "5,6", - { - "c": "#aaaaaa" - }, - "5,9", - "5,10", - "5,11", - "5,12", - { - "c": "#777777" - }, - "5,13", - "5,14", - "5,15" - ] - ] - } -} diff --git a/keyboards/keychron/k3_pro/via_json/k3_pro_jis_white.json b/keyboards/keychron/k3_pro/via_json/k3_pro_jis_white.json deleted file mode 100644 index 3b8429d513..0000000000 --- a/keyboards/keychron/k3_pro/via_json/k3_pro_jis_white.json +++ /dev/null @@ -1,202 +0,0 @@ -{ - "name": "Keychron K3 Pro", - "vendorId": "0x3434", - "productId": "0x0235", - "keycodes": ["qmk_lighting"], - "customKeycodes": [ - {"name": "Left Option", "title": "Left Option", "shortName": "LOpt"}, - {"name": "Right Option", "title": "Right Option", "shortName": "ROpt"}, - {"name": "Left Cmd", "title": "Left Command", "shortName": "LCmd"}, - {"name": "Right Cmd", "title": "Right Command", "shortName": "RCmd"}, - {"name": "Task View", "title": "Task View in Windows", "shortName": "Task"}, - {"name": "File Explorer", "title": "File Explorer in Windows", "shortName": "File"}, - {"name": "Screen shot", "title": "Screenshot in macOS", "shortName": "SShot"}, - {"name": "Cortana", "title": "Cortana in Windows", "shortName": "Cortana"}, - {"name": "Siri", "title": "Siri in macOS", "shortName": "Siri"}, - {"name": "Bluetooth Host 1", "title": "Bluetooth Host 1", "shortName": "BTH1"}, - {"name": "Bluetooth Host 2", "title": "Bluetooth Host 2", "shortName": "BTH2"}, - {"name": "Bluetooth Host 3", "title": "Bluetooth Host 3", "shortName": "BTH3"}, - {"name": "Battery Level", "title": "Show battery level", "shortName": "Batt"} - ], - "matrix": {"rows": 6, "cols": 16}, - "layouts": { - "keymap": [ - [ - { - "c": "#777777" - }, - "0,0", - { - "c": "#cccccc" - }, - "0,1", - "0,2", - "0,3", - "0,4", - { - "c": "#aaaaaa" - }, - "0,5", - "0,6", - "0,7", - "0,8", - "0,9", - { - "c": "#cccccc" - }, - "0,10", - "0,11", - "0,12", - { - "c": "#aaaaaa" - }, - "0,13", - "0,14", - "0,15" - ], - [ - "1,0", - { - "c": "#cccccc" - }, - "1,1", - "1,2", - "1,3", - "1,4", - "1,5", - "1,6", - "1,7", - "1,8", - "1,9", - "1,10", - "1,11", - "1,12", - { - "c": "#aaaaaa" - }, - "1,13", - "1,14", - "1,15" - ], - [ - { - "w": 1.5 - }, - "2,0", - { - "c": "#cccccc" - }, - "2,1", - "2,2", - "2,3", - "2,4", - "2,5", - "2,6", - "2,7", - "2,8", - "2,9", - "2,10", - "2,11", - "2,12", - { - "x": 0.25, - "c": "#777777", - "w": 1.25, - "h": 2, - "w2": 1.5, - "h2": 1, - "x2": -0.25 - }, - "2,13", - { - "c": "#aaaaaa" - }, - "2,15" - ], - [ - { - "w": 1.75 - }, - "3,0", - { - "c": "#cccccc" - }, - "3,1", - "3,2", - "3,3", - "3,4", - "3,5", - "3,6", - "3,7", - "3,8", - "3,9", - "3,10", - "3,11", - { - "c": "#aaaaaa" - }, - "3,13", - { - "x": 1.25 - }, - "3,15" - ], - [ - { - "w": 2.25 - }, - "4,0", - { - "c": "#cccccc" - }, - "4,2", - "4,3", - "4,4", - "4,5", - "4,6", - "4,7", - "4,8", - "4,9", - "4,10", - { - "c": "#aaaaaa" - }, - "4,11", - "4,13", - { - "c": "#777777", - "w": 1.75 - }, - "4,14", - { - "c": "#aaaaaa" - }, - "4,15" - ], - [ - "5,0", - "5,1", - "5,2", - "5,3", - { - "c": "#cccccc", - "w": 5 - }, - "5,6", - { - "c": "#aaaaaa" - }, - "5,9", - "5,10", - "5,11", - "5,12", - { - "c": "#777777" - }, - "5,13", - "5,14", - "5,15" - ] - ] - } -} diff --git a/keyboards/keychron/k4_pro/ansi/rgb/config.h b/keyboards/keychron/k4_pro/ansi/rgb/config.h deleted file mode 100644 index e56c760593..0000000000 --- a/keyboards/keychron/k4_pro/ansi/rgb/config.h +++ /dev/null @@ -1,58 +0,0 @@ -/* 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 . - */ - -#pragma once - -#ifdef RGB_MATRIX_ENABLE -/* RGB Matrix driver configuration */ -# define DRIVER_COUNT 2 - -# define DRIVER_ADDR_1 0b1110111 -# define DRIVER_ADDR_2 0b1110100 -# define DRIVER_1_LED_COUNT 48 -# define DRIVER_2_LED_COUNT 52 -# define RGB_MATRIX_LED_COUNT (DRIVER_1_LED_COUNT + DRIVER_2_LED_COUNT) - -/* Set to infinit, which is use in USB mode by default */ -# define RGB_MATRIX_TIMEOUT RGB_MATRIX_TIMEOUT_INFINITE - -/* Allow shutdown of led driver to save power */ -# define RGB_MATRIX_DRIVER_SHUTDOWN_ENABLE -/* Turn off backlight on low brightness to save power */ -# define RGB_MATRIX_BRIGHTNESS_TURN_OFF_VAL 32 - -/* Indication led */ -# define CAPS_LOCK_INDEX 55 -# define NUM_LOCK_INDEX 33 -# define LOW_BAT_IND_INDEX 91 - -# ifdef VIA_ENABLE -# define VIA_QMK_RGBLIGHT_ENABLE -# endif - -/* RGB Matrix Animation modes. Explicitly enabled - * For full list of effects, see: - * https://docs.qmk.fm/#/feature_rgb_matrix?id=rgb-matrix-effects - */ - -# define RGB_MATRIX_KEYPRESSES -# define RGB_MATRIX_FRAMEBUFFER_EFFECTS - -/* Set LED driver current */ -# define SNLED27351_CURRENT_TUNE \ - { 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30 } - -#endif diff --git a/keyboards/keychron/k4_pro/ansi/rgb/info.json b/keyboards/keychron/k4_pro/ansi/rgb/info.json deleted file mode 100644 index 10c526d9c1..0000000000 --- a/keyboards/keychron/k4_pro/ansi/rgb/info.json +++ /dev/null @@ -1,35 +0,0 @@ -{ - "usb": { - "pid": "0x0240", - "device_version": "1.0.0" - }, - "features": { - "rgb_matrix": true - }, - "rgb_matrix": { - "driver": "snled27351", - "animations": { - "breathing": true, - "band_spiral_val": true, - "cycle_all": true, - "cycle_left_right": true, - "cycle_up_down": true, - "rainbow_moving_chevron": true, - "cycle_out_in": true, - "cycle_out_in_dual": true, - "cycle_pinwheel": true, - "cycle_spiral": true, - "dual_beacon": true, - "rainbow_beacon": true, - "jellybean_raindrops": true, - "pixel_rain": true, - "typing_heatmap": true, - "digital_rain": true, - "solid_reactive_simple": true, - "solid_reactive_multiwide": true, - "solid_reactive_multinexus": true, - "splash": true, - "solid_splash": true - } - } -} diff --git a/keyboards/keychron/k4_pro/ansi/rgb/keymaps/default/keymap.c b/keyboards/keychron/k4_pro/ansi/rgb/keymaps/default/keymap.c deleted file mode 100644 index d3e91cedbb..0000000000 --- a/keyboards/keychron/k4_pro/ansi/rgb/keymaps/default/keymap.c +++ /dev/null @@ -1,56 +0,0 @@ -/* 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 . - */ - -#include QMK_KEYBOARD_H - -// clang-format off -enum layers{ - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN -}; - -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_ansi_100( - KC_ESC, KC_BRID, KC_BRIU, KC_MCTL, KC_LPAD, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_DEL, KC_HOME, KC_END, KC_PGUP, KC_PGDN, RGB_MOD, - KC_GRV, 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_NUM, KC_PSLS, KC_PAST, KC_PMNS, - 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_P7, KC_P8, KC_P9, KC_PPLS, - 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_P4, KC_P5, KC_P6, - 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_P1, KC_P2, KC_P3, KC_PENT, - KC_LCTL, KC_LOPTN, KC_LCMMD, KC_SPC, KC_RCMMD, MO(MAC_FN), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT, KC_P0, KC_PDOT ), - [MAC_FN] = LAYOUT_ansi_100( - _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, _______, _______, _______, RGB_TOG, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ), - [WIN_BASE] = LAYOUT_ansi_100( - KC_ESC, 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_DEL, KC_HOME, KC_END, KC_PGUP, KC_PGDN, RGB_MOD, - KC_GRV, 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_NUM, KC_PSLS, KC_PAST, KC_PMNS, - 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_P7, KC_P8, KC_P9, KC_PPLS, - 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_P4, KC_P5, KC_P6, - 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_P1, KC_P2, KC_P3, KC_PENT, - KC_LCTL, KC_LWIN, KC_LALT, KC_SPC, KC_RALT, MO(WIN_FN), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT, KC_P0, KC_PDOT ), - [WIN_FN] = LAYOUT_ansi_100( - _______, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, _______, _______, _______, RGB_TOG, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ) -}; diff --git a/keyboards/keychron/k4_pro/ansi/rgb/keymaps/via/keymap.c b/keyboards/keychron/k4_pro/ansi/rgb/keymaps/via/keymap.c deleted file mode 100644 index d3e91cedbb..0000000000 --- a/keyboards/keychron/k4_pro/ansi/rgb/keymaps/via/keymap.c +++ /dev/null @@ -1,56 +0,0 @@ -/* 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 . - */ - -#include QMK_KEYBOARD_H - -// clang-format off -enum layers{ - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN -}; - -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_ansi_100( - KC_ESC, KC_BRID, KC_BRIU, KC_MCTL, KC_LPAD, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_DEL, KC_HOME, KC_END, KC_PGUP, KC_PGDN, RGB_MOD, - KC_GRV, 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_NUM, KC_PSLS, KC_PAST, KC_PMNS, - 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_P7, KC_P8, KC_P9, KC_PPLS, - 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_P4, KC_P5, KC_P6, - 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_P1, KC_P2, KC_P3, KC_PENT, - KC_LCTL, KC_LOPTN, KC_LCMMD, KC_SPC, KC_RCMMD, MO(MAC_FN), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT, KC_P0, KC_PDOT ), - [MAC_FN] = LAYOUT_ansi_100( - _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, _______, _______, _______, RGB_TOG, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ), - [WIN_BASE] = LAYOUT_ansi_100( - KC_ESC, 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_DEL, KC_HOME, KC_END, KC_PGUP, KC_PGDN, RGB_MOD, - KC_GRV, 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_NUM, KC_PSLS, KC_PAST, KC_PMNS, - 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_P7, KC_P8, KC_P9, KC_PPLS, - 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_P4, KC_P5, KC_P6, - 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_P1, KC_P2, KC_P3, KC_PENT, - KC_LCTL, KC_LWIN, KC_LALT, KC_SPC, KC_RALT, MO(WIN_FN), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT, KC_P0, KC_PDOT ), - [WIN_FN] = LAYOUT_ansi_100( - _______, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, _______, _______, _______, RGB_TOG, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ) -}; diff --git a/keyboards/keychron/k4_pro/ansi/rgb/keymaps/via/rules.mk b/keyboards/keychron/k4_pro/ansi/rgb/keymaps/via/rules.mk deleted file mode 100644 index 1e5b99807c..0000000000 --- a/keyboards/keychron/k4_pro/ansi/rgb/keymaps/via/rules.mk +++ /dev/null @@ -1 +0,0 @@ -VIA_ENABLE = yes diff --git a/keyboards/keychron/k4_pro/ansi/rgb/rgb.c b/keyboards/keychron/k4_pro/ansi/rgb/rgb.c deleted file mode 100644 index 2b5ae48b92..0000000000 --- a/keyboards/keychron/k4_pro/ansi/rgb/rgb.c +++ /dev/null @@ -1,163 +0,0 @@ -/* Copyright 2021 @ 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 . - */ - -#include "quantum.h" - -// clang-format off -#ifdef RGB_MATRIX_ENABLE -const snled27351_led_t g_snled27351_leds[RGB_MATRIX_LED_COUNT] = { -/* Refer to CKLED manual for these locations - * driver - * | R location - * | | G location - * | | | B location - * | | | | */ - {0, I_1, G_1, H_1}, - {0, I_2, G_2, H_2}, - {0, I_3, G_3, H_3}, - {0, I_4, G_4, H_4}, - {0, I_5, G_5, H_5}, - {0, I_6, G_6, H_6}, - {0, I_7, G_7, H_7}, - {0, I_8, G_8, H_8}, - {0, I_9, G_9, H_9}, - {0, I_10, G_10, H_10}, - {0, I_11, G_11, H_11}, - {0, I_12, G_12, H_12}, - {0, I_13, G_13, H_13}, - {0, I_14, G_14, H_14}, - {0, I_15, G_15, H_15}, - {0, I_16, G_16, H_16}, - {1, F_1, D_1, E_1}, - {1, F_2, D_2, E_2}, - {1, F_3, D_3, E_3}, - - {0, C_1, A_1, B_1}, - {0, C_2, A_2, B_2}, - {0, C_3, A_3, B_3}, - {0, C_4, A_4, B_4}, - {0, C_5, A_5, B_5}, - {0, C_6, A_6, B_6}, - {0, C_7, A_7, B_7}, - {0, C_8, A_8, B_8}, - {0, C_9, A_9, B_9}, - {0, C_10, A_10, B_10}, - {0, C_11, A_11, B_11}, - {0, C_12, A_12, B_12}, - {0, C_13, A_13, B_13}, - {0, C_14, A_14, B_14}, - {0, C_15, A_15, B_15}, - {0, C_16, A_16, B_16}, - {1, F_4, D_4, E_4}, - {1, F_5, D_5, E_5}, - - {0, F_1, D_1, E_1}, - {0, F_2, D_2, E_2}, - {0, F_3, D_3, E_3}, - {0, F_4, D_4, E_4}, - {0, F_5, D_5, E_5}, - {0, F_6, D_6, E_6}, - {0, F_7, D_7, E_7}, - {0, F_8, D_8, E_8}, - {0, F_9, D_9, E_9}, - {0, F_10, D_10, E_10}, - {0, F_11, D_11, E_11}, - {0, F_12, D_12, E_12}, - {0, F_13, D_13, E_13}, - {0, F_14, D_14, E_14}, - {0, F_15, D_15, E_15}, - {0, F_16, D_16, E_16}, - {1, F_6, D_6, E_6}, - {1, F_7, D_7, E_7}, - - {1, C_16, A_16, B_16}, - {1, C_15, A_15, B_15}, - {1, C_14, A_14, B_14}, - {1, C_13, A_13, B_13}, - {1, C_12, A_12, B_12}, - {1, C_11, A_11, B_11}, - {1, C_10, A_10, B_10}, - {1, C_9, A_9, B_9}, - {1, C_8, A_8, B_8}, - {1, C_7, A_7, B_7}, - {1, C_6, A_6, B_6}, - {1, C_5, A_5, B_5}, - {1, C_3, A_3, B_3}, - {1, C_2, A_2, B_2}, - {1, C_1, A_1, B_1}, - {1, F_8, D_8, E_8}, - - {1, I_16, G_16, H_16}, - {1, I_14, G_14, H_14}, - {1, I_13, G_13, H_13}, - {1, I_12, G_12, H_12}, - {1, I_11, G_11, H_11}, - {1, I_10, G_10, H_10}, - {1, I_9, G_9, H_9}, - {1, I_8, G_8, H_8}, - {1, I_7, G_7, H_7}, - {1, I_6, G_6, H_6}, - {1, I_5, G_5, H_5}, - {1, I_4, G_4, H_4}, - {1, I_3, G_3, H_3}, - {1, I_2, G_2, H_2}, - {1, I_1, G_1, H_1}, - {1, F_9, D_9, E_9}, - {1, F_10, D_10, E_10}, - - {1, L_16, J_16, K_16}, - {1, L_15, J_15, K_15}, - {1, L_14, J_14, K_14}, - {1, L_10, J_10, K_10}, - {1, L_6, J_6, K_6}, - {1, L_5, J_5, K_5}, - {1, L_4, J_4, K_4}, - {1, L_3, J_3, K_3}, - {1, L_2, J_2, K_2}, - {1, L_1, J_1, K_1}, - {1, F_11, D_11, E_11}, - {1, F_12, D_12, E_12}, -}; - - -led_config_t g_led_config = { - { - { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17 }, - { 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36 }, - { 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54 }, - { 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, NO_LED, 67, 68, 69, 70, 18 }, - { 71, NO_LED, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87 }, - { 88, 89, 90, NO_LED, NO_LED, NO_LED, 91, NO_LED, NO_LED, NO_LED, 92, 93, 94, 95, 96, 97, 98, 99 } - }, - { - {0, 0}, {12, 0}, {24, 0}, {36, 0}, {48, 0}, {60, 0}, {72, 0}, {84, 0}, { 96, 0}, {108, 0}, {120, 0}, {132, 0}, {144, 0}, {156, 0}, {169, 0}, {187, 0}, {199, 0}, {211, 0}, {223,0}, - {0,14}, {12,14}, {24,14}, {36,14}, {48,14}, {60,14}, {72,14}, {84,14}, { 96, 14}, {108, 14}, {120, 14}, {132, 14}, {144, 14}, {162, 14}, {187, 14}, {199, 14}, {211, 14}, {223, 14}, - {3,27}, {18,27}, {30,27}, {42,27}, {54,27}, {66,27}, {78,27}, {90,27}, {102, 27}, {114, 27}, {126, 27}, {138, 27}, {150, 27}, {165, 27}, {187, 27}, {199, 27}, {211, 27}, {223, 27}, - {4,37}, {21,37}, {33,37}, {45,37}, {57,37}, {69,37}, {81,37}, {93,37}, {105, 37}, {117, 37}, {129, 37}, {141, 37}, {161, 37}, {187, 37}, {199, 37}, {211, 37}, - {7,50}, {27,50}, {39,50}, {51,50}, {63,50}, {75,50}, {87,50}, { 99, 50}, {111, 50}, {123, 50}, {135, 50}, {152, 50}, {172, 50}, {187, 50}, {199, 50}, {211, 50}, {223, 50}, - {1,61}, {16,61}, {31,61}, {76,61}, {120, 61}, {132, 61}, {144, 61}, {160, 61}, {172, 61}, {184, 61}, {199, 61}, {211, 61}, - }, - { - 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, - 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, - 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, - 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, - 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, - 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, - - } -}; -#endif diff --git a/keyboards/keychron/k4_pro/ansi/rgb/rules.mk b/keyboards/keychron/k4_pro/ansi/rgb/rules.mk deleted file mode 100644 index f886ea2e8e..0000000000 --- a/keyboards/keychron/k4_pro/ansi/rgb/rules.mk +++ /dev/null @@ -1 +0,0 @@ -# This file intentionally blank \ No newline at end of file diff --git a/keyboards/keychron/k4_pro/ansi/white/config.h b/keyboards/keychron/k4_pro/ansi/white/config.h deleted file mode 100644 index 889abced24..0000000000 --- a/keyboards/keychron/k4_pro/ansi/white/config.h +++ /dev/null @@ -1,50 +0,0 @@ -/* 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 . - */ - -#pragma once - -#ifdef LED_MATRIX_ENABLE -/* LED matrix driver configuration */ -# define DRIVER_COUNT 1 -# define SNLED27351_I2C_ADDRESS_1 SNLED27351_I2C_ADDRESS_GND -# define LED_MATRIX_LED_COUNT 100 - -/* Set to infinit, which is use in USB mode by default */ -# define LED_MATRIX_TIMEOUT LED_MATRIX_TIMEOUT_INFINITE -/* Allow shutdown of led driver to save power */ -# define LED_MATRIX_DRIVER_SHUTDOWN_ENABLE -/* Turn off backlight on low brightness to save power */ -# define LED_MATRIX_BRIGHTNESS_TURN_OFF_VAL 32 - -/* Indicatoon led */ -# define CAPS_LOCK_INDEX 55 -# define NUM_LOCK_INDEX 33 -# define LOW_BAT_IND_INDEX 91 - -/* LED Matrix Animation modes. Explicitly enabled - * For full list of effects, see: - * https://docs.qmk.fm/#/feature_led_matrix?id=led-matrix-effects - */ -# define LED_MATRIX_KEYPRESSES - -/* Use first 6 channels of LED driver */ -# define PHASE_CHANNEL MSKPHASE_7CHANNEL - -/* Set LED driver current */ -# define SNLED27351_CURRENT_TUNE \ - { 0x60, 0x60, 0x60, 0x60, 0x60, 0x60, 0x60, 0x60, 0x60, 0x60, 0x60, 0x60 } - -#endif diff --git a/keyboards/keychron/k4_pro/ansi/white/info.json b/keyboards/keychron/k4_pro/ansi/white/info.json deleted file mode 100644 index 0d393148f3..0000000000 --- a/keyboards/keychron/k4_pro/ansi/white/info.json +++ /dev/null @@ -1,30 +0,0 @@ -{ - "usb": { - "pid": "0x0243", - "device_version": "1.0.0" - }, - "features": { - "led_matrix": true - }, - "led_matrix": { - "driver": "snled27351", - "animations": { - "none": true, - "solid": true, - "breathing": true, - "band_pinwheel": true, - "band_spiral": true, - "cycle_left_right": true, - "cycle_up_down": true, - "cycle_out_in": true, - "dual_beacon": true, - "solid_reactive_simple": true, - "solid_reactive_multiwide": true, - "solid_reactive_multinexus": true, - "solid_splash": true, - "wave_left_right": true, - "wave_up_down": true, - "effect_max": true - } - } -} diff --git a/keyboards/keychron/k4_pro/ansi/white/keymaps/default/keymap.c b/keyboards/keychron/k4_pro/ansi/white/keymaps/default/keymap.c deleted file mode 100644 index 25e0468c08..0000000000 --- a/keyboards/keychron/k4_pro/ansi/white/keymaps/default/keymap.c +++ /dev/null @@ -1,56 +0,0 @@ -/* 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 . - */ - -#include QMK_KEYBOARD_H - -// clang-format off -enum layers{ - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN -}; - -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_ansi_100( - KC_ESC, KC_BRID, KC_BRIU, KC_MCTL, KC_LPAD, BL_DOWN, BL_UP, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_DEL, KC_HOME, KC_END, KC_PGUP, KC_PGDN, BL_STEP, - KC_GRV, 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_NUM, KC_PSLS, KC_PAST, KC_PMNS, - 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_P7, KC_P8, KC_P9, KC_PPLS, - 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_P4, KC_P5, KC_P6, - 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_P1, KC_P2, KC_P3, KC_PENT, - KC_LCTL, KC_LOPTN, KC_LCMMD, KC_SPC, KC_RCMMD, MO(MAC_FN), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT, KC_P0, KC_PDOT ), - [MAC_FN] = LAYOUT_ansi_100( - _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, _______, _______, _______, BL_TOGG, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - BL_TOGG, BL_STEP, BL_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, BL_DOWN, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ), - [WIN_BASE] = LAYOUT_ansi_100( - KC_ESC, 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_DEL, KC_HOME, KC_END, KC_PGUP, KC_PGDN, BL_STEP, - KC_GRV, 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_NUM, KC_PSLS, KC_PAST, KC_PMNS, - 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_P7, KC_P8, KC_P9, KC_PPLS, - 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_P4, KC_P5, KC_P6, - 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_P1, KC_P2, KC_P3, KC_PENT, - KC_LCTL, KC_LWIN, KC_LALT, KC_SPC, KC_RALT, MO(WIN_FN), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT, KC_P0, KC_PDOT ), - [WIN_FN] = LAYOUT_ansi_100( - _______, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, BL_DOWN, BL_UP, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, _______, _______, _______, BL_TOGG, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - BL_TOGG, BL_STEP, BL_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, BL_DOWN, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ) -}; diff --git a/keyboards/keychron/k4_pro/ansi/white/keymaps/via/keymap.c b/keyboards/keychron/k4_pro/ansi/white/keymaps/via/keymap.c deleted file mode 100644 index 25e0468c08..0000000000 --- a/keyboards/keychron/k4_pro/ansi/white/keymaps/via/keymap.c +++ /dev/null @@ -1,56 +0,0 @@ -/* 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 . - */ - -#include QMK_KEYBOARD_H - -// clang-format off -enum layers{ - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN -}; - -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_ansi_100( - KC_ESC, KC_BRID, KC_BRIU, KC_MCTL, KC_LPAD, BL_DOWN, BL_UP, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_DEL, KC_HOME, KC_END, KC_PGUP, KC_PGDN, BL_STEP, - KC_GRV, 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_NUM, KC_PSLS, KC_PAST, KC_PMNS, - 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_P7, KC_P8, KC_P9, KC_PPLS, - 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_P4, KC_P5, KC_P6, - 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_P1, KC_P2, KC_P3, KC_PENT, - KC_LCTL, KC_LOPTN, KC_LCMMD, KC_SPC, KC_RCMMD, MO(MAC_FN), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT, KC_P0, KC_PDOT ), - [MAC_FN] = LAYOUT_ansi_100( - _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, _______, _______, _______, BL_TOGG, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - BL_TOGG, BL_STEP, BL_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, BL_DOWN, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ), - [WIN_BASE] = LAYOUT_ansi_100( - KC_ESC, 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_DEL, KC_HOME, KC_END, KC_PGUP, KC_PGDN, BL_STEP, - KC_GRV, 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_NUM, KC_PSLS, KC_PAST, KC_PMNS, - 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_P7, KC_P8, KC_P9, KC_PPLS, - 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_P4, KC_P5, KC_P6, - 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_P1, KC_P2, KC_P3, KC_PENT, - KC_LCTL, KC_LWIN, KC_LALT, KC_SPC, KC_RALT, MO(WIN_FN), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT, KC_P0, KC_PDOT ), - [WIN_FN] = LAYOUT_ansi_100( - _______, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, BL_DOWN, BL_UP, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, _______, _______, _______, BL_TOGG, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - BL_TOGG, BL_STEP, BL_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, BL_DOWN, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ) -}; diff --git a/keyboards/keychron/k4_pro/ansi/white/keymaps/via/rules.mk b/keyboards/keychron/k4_pro/ansi/white/keymaps/via/rules.mk deleted file mode 100644 index 1e5b99807c..0000000000 --- a/keyboards/keychron/k4_pro/ansi/white/keymaps/via/rules.mk +++ /dev/null @@ -1 +0,0 @@ -VIA_ENABLE = yes diff --git a/keyboards/keychron/k4_pro/ansi/white/rules.mk b/keyboards/keychron/k4_pro/ansi/white/rules.mk deleted file mode 100644 index f886ea2e8e..0000000000 --- a/keyboards/keychron/k4_pro/ansi/white/rules.mk +++ /dev/null @@ -1 +0,0 @@ -# This file intentionally blank \ No newline at end of file diff --git a/keyboards/keychron/k4_pro/ansi/white/white.c b/keyboards/keychron/k4_pro/ansi/white/white.c deleted file mode 100644 index 7d7c96f8a4..0000000000 --- a/keyboards/keychron/k4_pro/ansi/white/white.c +++ /dev/null @@ -1,161 +0,0 @@ -/* Copyright 2021 @ 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 . - */ - -#include "quantum.h" - -// clang-format off -#ifdef LED_MATRIX_ENABLE -const snled27351_led_t g_snled27351_leds[LED_MATRIX_LED_COUNT] = { -/* Refer to snled27351manual for these locations - * driver - * | LED address - * | | */ - {0, A_16}, - {0, A_15}, - {0, A_14}, - {0, A_13}, - {0, A_12}, - {0, A_11}, - {0, A_10}, - {0, A_9}, - {0, A_8}, - {0, A_7}, - {0, A_6}, - {0, A_5}, - {0, A_4}, - {0, A_3}, - {0, A_2}, - {0, A_1}, - {0, G_1}, - {0, G_2}, - {0, G_3}, - - {0, B_16}, - {0, B_15}, - {0, B_14}, - {0, B_13}, - {0, B_12}, - {0, B_11}, - {0, B_10}, - {0, B_9}, - {0, B_8}, - {0, B_7}, - {0, B_6}, - {0, B_5}, - {0, B_4}, - {0, B_3}, - {0, B_2}, - {0, B_1}, - {0, G_4}, - {0, G_5}, - - {0, C_16}, - {0, C_15}, - {0, C_14}, - {0, C_13}, - {0, C_12}, - {0, C_11}, - {0, C_10}, - {0, C_9}, - {0, C_8}, - {0, C_7}, - {0, C_6}, - {0, C_5}, - {0, C_4}, - {0, C_3}, - {0, C_2}, - {0, C_1}, - {0, G_6}, - {0, G_7}, - - {0, D_16}, - {0, D_15}, - {0, D_14}, - {0, D_13}, - {0, D_12}, - {0, D_11}, - {0, D_10}, - {0, D_9}, - {0, D_8}, - {0, D_7}, - {0, D_6}, - {0, D_5}, - {0, D_3}, - {0, D_2}, - {0, D_1}, - {0, G_8}, - - {0, E_16}, - {0, E_14}, - {0, E_13}, - {0, E_12}, - {0, E_11}, - {0, E_10}, - {0, E_9}, - {0, E_8}, - {0, E_7}, - {0, E_6}, - {0, E_5}, - {0, E_4}, - {0, E_3}, - {0, E_2}, - {0, E_1}, - {0, G_9}, - {0, G_10}, - - {0, F_16}, - {0, F_15}, - {0, F_14}, - {0, F_10}, - {0, F_6}, - {0, F_5}, - {0, F_4}, - {0, F_3}, - {0, F_2}, - {0, F_1}, - {0, G_11}, - {0, G_12}, -}; - - -led_config_t g_led_config = { - { - { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17 }, - { 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36 }, - { 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54 }, - { 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, NO_LED, 67, 68, 69, 70, 18 }, - { 71, NO_LED, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87 }, - { 88, 89, 90, NO_LED, NO_LED, NO_LED, 91, NO_LED, NO_LED, NO_LED, 92, 93, 94, 95, 96, 97, 98, 99 } - }, - { - {0, 0}, {12, 0}, {24, 0}, {36, 0}, {48, 0}, {60, 0}, {72, 0}, {84, 0}, { 96, 0}, {108, 0}, {120, 0}, {132, 0}, {144, 0}, {156, 0}, {169, 0}, {187, 0}, {199, 0}, {211, 0}, {223,0}, - {0,14}, {12,14}, {24,14}, {36,14}, {48,14}, {60,14}, {72,14}, {84,14}, { 96, 14}, {108, 14}, {120, 14}, {132, 14}, {144, 14}, {162, 14}, {187, 14}, {199, 14}, {211, 14}, {223, 14}, - {3,27}, {18,27}, {30,27}, {42,27}, {54,27}, {66,27}, {78,27}, {90,27}, {102, 27}, {114, 27}, {126, 27}, {138, 27}, {150, 27}, {165, 27}, {187, 27}, {199, 27}, {211, 27}, {223, 27}, - {4,37}, {21,37}, {33,37}, {45,37}, {57,37}, {69,37}, {81,37}, {93,37}, {105, 37}, {117, 37}, {129, 37}, {141, 37}, {161, 37}, {187, 37}, {199, 37}, {211, 37}, - {7,50}, {27,50}, {39,50}, {51,50}, {63,50}, {75,50}, {87,50}, { 99, 50}, {111, 50}, {123, 50}, {135, 50}, {152, 50}, {172, 50}, {187, 50}, {199, 50}, {211, 50}, {223, 50}, - {1,61}, {16,61}, {31,61}, {76,61}, {120, 61}, {132, 61}, {144, 61}, {160, 61}, {172, 61}, {184, 61}, {199, 61}, {211, 61}, - }, - { - 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, - 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, - 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, - 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, - 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, - 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, - - } -}; -#endif diff --git a/keyboards/keychron/k4_pro/config.h b/keyboards/keychron/k4_pro/config.h deleted file mode 100644 index 767ef1bbb4..0000000000 --- a/keyboards/keychron/k4_pro/config.h +++ /dev/null @@ -1,87 +0,0 @@ -/* 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 . - */ - -#pragma once - -/* turn off effects when suspended */ -#define RGB_DISABLE_WHEN_USB_SUSPENDED -#define LED_DISABLE_WHEN_USB_SUSPENDED - -/* DIP switch for Mac/win OS 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 A10 - -# 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 A4 -# 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 \ - { 20, 21, 22 } - -# define BAT_LEVEL_LED_LIST \ - { 20, 21, 22, 23, 24, 25, 26, 27, 28, 29 } - -/* 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 WEAR_LEVELING_LOGICAL_SIZE 2048 -#define WEAR_LEVELING_BACKING_SIZE (WEAR_LEVELING_LOGICAL_SIZE * 2) -#define DYNAMIC_KEYMAP_EEPROM_MAX_ADDR 2047 - -/* Factory test keys */ -#define FN_KEY1 MO(1) -#define FN_KEY2 MO(3) diff --git a/keyboards/keychron/k4_pro/halconf.h b/keyboards/keychron/k4_pro/halconf.h deleted file mode 100644 index 306f917783..0000000000 --- a/keyboards/keychron/k4_pro/halconf.h +++ /dev/null @@ -1,29 +0,0 @@ -/* 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 _CHIBIOS_HAL_CONF_VER_8_0_ - -#define HAL_USE_I2C TRUE - -#ifdef KC_BLUETOOTH_ENABLE -# define PAL_USE_CALLBACKS TRUE -# define HAL_USE_SERIAL TRUE -# define HAL_USE_RTC TRUE -#endif - -#include_next diff --git a/keyboards/keychron/k4_pro/info.json b/keyboards/keychron/k4_pro/info.json deleted file mode 100644 index 504cfc33a9..0000000000 --- a/keyboards/keychron/k4_pro/info.json +++ /dev/null @@ -1,251 +0,0 @@ -{ - "keyboard_name": "Keychron K4 Pro", - "manufacturer": "Keychron", - "url": "https://github.com/Keychron", - "maintainer": "lokher", - "processor": "STM32L432", - "bootloader": "stm32-dfu", - "usb": { - "vid": "0x3434" - }, - "features": { - "bootmagic": true, - "mousekey": true, - "extrakey": true, - "nkro": true, - "dip_switch": true, - "raw": true - }, - "diode_direction": "ROW2COL", - "matrix_size": { - "rows": 6, - "cols": 18 - }, - "matrix_pins": { - "rows": ["B5", "B4", "B3", "A15", "A14", "A13"], - "cols": ["B0", "A7", null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null], - "custom": true, - "custom_lite": true - }, - "layouts": { - "LAYOUT_ansi_100": { - "layout": [ - {"matrix":[0, 0], "x":0, "y":0}, - {"matrix":[0, 1], "x":1, "y":0}, - {"matrix":[0, 2], "x":2, "y":0}, - {"matrix":[0, 3], "x":3, "y":0}, - {"matrix":[0, 4], "x":4, "y":0}, - {"matrix":[0, 5], "x":5, "y":0}, - {"matrix":[0, 6], "x":6, "y":0}, - {"matrix":[0, 7], "x":7, "y":0}, - {"matrix":[0, 8], "x":8, "y":0}, - {"matrix":[0, 9], "x":9, "y":0}, - {"matrix":[0, 10], "x":10, "y":0}, - {"matrix":[0, 11], "x":11, "y":0}, - {"matrix":[0, 12], "x":12, "y":0}, - {"matrix":[0, 13], "x":13, "y":0}, - {"matrix":[0, 14], "x":14, "y":0}, - {"matrix":[0, 15], "x":15.5, "y":0}, - {"matrix":[0, 16], "x":16.5, "y":0}, - {"matrix":[0, 17], "x":17.5, "y":0}, - {"matrix":[3, 17], "x":18.5, "y":0}, - - {"matrix":[1, 0], "x":0, "y":1.25}, - {"matrix":[1, 1], "x":1, "y":1.25}, - {"matrix":[1, 2], "x":2, "y":1.25}, - {"matrix":[1, 3], "x":3, "y":1.25}, - {"matrix":[1, 4], "x":4, "y":1.25}, - {"matrix":[1, 5], "x":5, "y":1.25}, - {"matrix":[1, 6], "x":6, "y":1.25}, - {"matrix":[1, 7], "x":7, "y":1.25}, - {"matrix":[1, 8], "x":8, "y":1.25}, - {"matrix":[1, 9], "x":9, "y":1.25}, - {"matrix":[1,10], "x":10, "y":1.25}, - {"matrix":[1,11], "x":11, "y":1.25}, - {"matrix":[1,12], "x":12, "y":1.25}, - {"matrix":[1,13], "x":13, "y":1.25, "w":2}, - {"matrix":[1,14], "x":15.5, "y":1.25}, - {"matrix":[1,15], "x":16.5, "y":1.25}, - {"matrix":[1,16], "x":17.5, "y":1.25}, - {"matrix":[1,17], "x":18.5, "y":1.25}, - - {"matrix":[2, 0], "x":0, "y":2.25, "w":1.5}, - {"matrix":[2, 1], "x":1.5, "y":2.25}, - {"matrix":[2, 2], "x":2.5, "y":2.25}, - {"matrix":[2, 3], "x":3.5, "y":2.25}, - {"matrix":[2, 4], "x":4.5, "y":2.25}, - {"matrix":[2, 5], "x":5.5, "y":2.25}, - {"matrix":[2, 6], "x":6.5, "y":2.25}, - {"matrix":[2, 7], "x":7.5, "y":2.25}, - {"matrix":[2, 8], "x":8.5, "y":2.25}, - {"matrix":[2, 9], "x":9.5, "y":2.25}, - {"matrix":[2,10], "x":10.5, "y":2.25}, - {"matrix":[2,11], "x":11.5, "y":2.25}, - {"matrix":[2,12], "x":12.5, "y":2.25}, - {"matrix":[2,13], "x":13.5, "y":2.25, "w":1.5}, - {"matrix":[2,14], "x":15.5, "y":2.25}, - {"matrix":[2,15], "x":16.5, "y":2.25}, - {"matrix":[2,16], "x":17.5, "y":2.25}, - {"matrix":[2,17], "x":18.5, "y":2.25, "h":2}, - - {"matrix":[3, 0], "x":0, "y":3.25, "w":1.75}, - {"matrix":[3, 1], "x":1.75, "y":3.25}, - {"matrix":[3, 2], "x":2.75, "y":3.25}, - {"matrix":[3, 3], "x":3.75, "y":3.25}, - {"matrix":[3, 4], "x":4.75, "y":3.25}, - {"matrix":[3, 5], "x":5.75, "y":3.25}, - {"matrix":[3, 6], "x":6.75, "y":3.25}, - {"matrix":[3, 7], "x":7.75, "y":3.25}, - {"matrix":[3, 8], "x":8.75, "y":3.25}, - {"matrix":[3, 9], "x":9.75, "y":3.25}, - {"matrix":[3,10], "x":10.75, "y":3.25}, - {"matrix":[3,11], "x":11.75, "y":3.25}, - {"matrix":[3,13], "x":12.75, "y":3.25, "w":2.25}, - {"matrix":[3,14], "x":15.5, "y":3.25}, - {"matrix":[3,15], "x":16.5, "y":3.25}, - {"matrix":[3,16], "x":17.5, "y":3.25}, - - {"matrix":[4, 0], "x":0, "y":4.25, "w":2.25}, - {"matrix":[4, 2], "x":2.25, "y":4.25}, - {"matrix":[4, 3], "x":3.25, "y":4.25}, - {"matrix":[4, 4], "x":4.25, "y":4.25}, - {"matrix":[4, 5], "x":5.25, "y":4.25}, - {"matrix":[4, 6], "x":6.25, "y":4.25}, - {"matrix":[4, 7], "x":7.25, "y":4.25}, - {"matrix":[4, 8], "x":8.25, "y":4.25}, - {"matrix":[4, 9], "x":9.25, "y":4.25}, - {"matrix":[4,10], "x":10.25, "y":4.25}, - {"matrix":[4,11], "x":11.25, "y":4.25}, - {"matrix":[4,12], "x":12.25, "y":4.25, "w":1.75}, - {"matrix":[4,13], "x":14.25, "y":4.5}, - {"matrix":[4,14], "x":15.5, "y":4.25}, - {"matrix":[4,15], "x":16.5, "y":4.25}, - {"matrix":[4,16], "x":17.5, "y":4.25}, - {"matrix":[4,17], "x":18.5, "y":4.25, "h":2}, - - {"matrix":[5, 0], "x":0, "y":5.25, "w":1.25}, - {"matrix":[5, 1], "x":1.25, "y":5.25, "w":1.25}, - {"matrix":[5, 2], "x":2.5, "y":5.25, "w":1.25}, - {"matrix":[5, 6], "x":3.75, "y":5.25, "w":6.25}, - {"matrix":[5,10], "x":10, "y":5.25}, - {"matrix":[5,11], "x":11, "y":5.25}, - {"matrix":[5,12], "x":12, "y":5.25}, - {"matrix":[5,13], "x":13.25, "y":5.5}, - {"matrix":[5,14], "x":14.25, "y":5.5}, - {"matrix":[5,15], "x":15.25, "y":5.5}, - {"matrix":[5,16], "x":16.5, "y":5.25}, - {"matrix":[5,17], "x":17.5, "y":5.25} - ] - }, - "LAYOUT_iso_101": { - "layout": [ - {"matrix":[0,0], "x":0, "y":0}, - {"matrix":[0,1], "x":1, "y":0}, - {"matrix":[0,2], "x":2, "y":0}, - {"matrix":[0,3], "x":3, "y":0}, - {"matrix":[0,4], "x":4, "y":0}, - {"matrix":[0,5], "x":5, "y":0}, - {"matrix":[0,6], "x":6, "y":0}, - {"matrix":[0,7], "x":7, "y":0}, - {"matrix":[0,8], "x":8, "y":0}, - {"matrix":[0,9], "x":9, "y":0}, - {"matrix":[0,10], "x":10, "y":0}, - {"matrix":[0,11], "x":11, "y":0}, - {"matrix":[0,12], "x":12, "y":0}, - {"matrix":[0,13], "x":13, "y":0}, - {"matrix":[0,14], "x":14, "y":0}, - {"matrix":[0,15], "x":15.5, "y":0}, - {"matrix":[0,16], "x":16.5, "y":0}, - {"matrix":[0,17], "x":17.5, "y":0}, - {"matrix":[3,17], "x":18.5, "y":0}, - - {"matrix":[1,0], "x":0, "y":1.25}, - {"matrix":[1,1], "x":1, "y":1.25}, - {"matrix":[1,2], "x":2, "y":1.25}, - {"matrix":[1,3], "x":3, "y":1.25}, - {"matrix":[1,4], "x":4, "y":1.25}, - {"matrix":[1,5], "x":5, "y":1.25}, - {"matrix":[1,6], "x":6, "y":1.25}, - {"matrix":[1,7], "x":7, "y":1.25}, - {"matrix":[1,8], "x":8, "y":1.25}, - {"matrix":[1,9], "x":9, "y":1.25}, - {"matrix":[1,10], "x":10, "y":1.25}, - {"matrix":[1,11], "x":11, "y":1.25}, - {"matrix":[1,12], "x":12, "y":1.25}, - {"matrix":[1,13], "x":13, "y":1.25, "w":2}, - {"matrix":[1,14], "x":15.5, "y":1.25}, - {"matrix":[1,15], "x":16.5, "y":1.25}, - {"matrix":[1,16], "x":17.5, "y":1.25}, - {"matrix":[1,17], "x":18.5, "y":1.25}, - - {"matrix":[2,0], "x":0, "y":2.25, "w":1.5}, - {"matrix":[2,1], "x":1.5, "y":2.25}, - {"matrix":[2,2], "x":2.5, "y":2.25}, - {"matrix":[2,3], "x":3.5, "y":2.25}, - {"matrix":[2,4], "x":4.5, "y":2.25}, - {"matrix":[2,5], "x":5.5, "y":2.25}, - {"matrix":[2,6], "x":6.5, "y":2.25}, - {"matrix":[2,7], "x":7.5, "y":2.25}, - {"matrix":[2,8], "x":8.5, "y":2.25}, - {"matrix":[2,9], "x":9.5, "y":2.25}, - {"matrix":[2,10], "x":10.5, "y":2.25}, - {"matrix":[2,11], "x":11.5, "y":2.25}, - {"matrix":[2,12], "x":12.5, "y":2.25}, - {"matrix":[2,14], "x":15.5, "y":2.25}, - {"matrix":[2,15], "x":16.5, "y":2.25}, - {"matrix":[2,16], "x":17.5, "y":2.25}, - {"matrix":[2,17], "x":18.5, "y":2.25, "h":2}, - - {"matrix":[3,0], "x":0, "y":3.25, "w":1.75}, - {"matrix":[3,1], "x":1.75, "y":3.25}, - {"matrix":[3,2], "x":2.75, "y":3.25}, - {"matrix":[3,3], "x":3.75, "y":3.25}, - {"matrix":[3,4], "x":4.75, "y":3.25}, - {"matrix":[3,5], "x":5.75, "y":3.25}, - {"matrix":[3,6], "x":6.75, "y":3.25}, - {"matrix":[3,7], "x":7.75, "y":3.25}, - {"matrix":[3,8], "x":8.75, "y":3.25}, - {"matrix":[3,9], "x":9.75, "y":3.25}, - {"matrix":[3,10], "x":10.75, "y":3.25}, - {"matrix":[3,11], "x":11.75, "y":3.25}, - {"matrix":[3,13], "x":12.75, "y":3.25}, - {"matrix":[2,13], "x":13.75, "y":2.25, "w":1.25, "h":2}, - {"matrix":[3,14], "x":15.5, "y":3.25}, - {"matrix":[3,15], "x":16.5, "y":3.25}, - {"matrix":[3,16], "x":17.5, "y":3.25}, - - {"matrix":[4,0], "x":0, "y":4.25, "w":1.25}, - {"matrix":[4,1], "x":1.25, "y":4.25}, - {"matrix":[4,2], "x":2.25, "y":4.25}, - {"matrix":[4,3], "x":3.25, "y":4.25}, - {"matrix":[4,4], "x":4.25, "y":4.25}, - {"matrix":[4,5], "x":5.25, "y":4.25}, - {"matrix":[4,6], "x":6.25, "y":4.25}, - {"matrix":[4,7], "x":7.25, "y":4.25}, - {"matrix":[4,8], "x":8.25, "y":4.25}, - {"matrix":[4,9], "x":9.25, "y":4.25}, - {"matrix":[4,10], "x":10.25, "y":4.25}, - {"matrix":[4,11], "x":11.25, "y":4.25}, - {"matrix":[4,12], "x":12.25, "y":4.25, "w":1.75}, - {"matrix":[4,13], "x":14.25, "y":4.5}, - {"matrix":[4,14], "x":15.5, "y":4.25}, - {"matrix":[4,15], "x":16.5, "y":4.25}, - {"matrix":[4,16], "x":17.5, "y":4.25}, - {"matrix":[4,17], "x":18.5, "y":4.25, "h":2}, - - {"matrix":[5,0], "x":0, "y":5.25, "w":1.25}, - {"matrix":[5,1], "x":1.25, "y":5.25, "w":1.25}, - {"matrix":[5,2], "x":2.5, "y":5.25, "w":1.25}, - {"matrix":[5,6], "x":3.75, "y":5.25, "w":6.25}, - {"matrix":[5,10], "x":10, "y":5.25}, - {"matrix":[5,11], "x":11, "y":5.25}, - {"matrix":[5,12], "x":12, "y":5.25}, - {"matrix":[5,13], "x":13.25, "y":5.5}, - {"matrix":[5,14], "x":14.25, "y":5.5}, - {"matrix":[5,15], "x":15.25, "y":5.5}, - {"matrix":[5,16], "x":16.5, "y":5.25}, - {"matrix":[5,17], "x":17.5, "y":5.25} - ] - } - } -} diff --git a/keyboards/keychron/k4_pro/iso/rgb/config.h b/keyboards/keychron/k4_pro/iso/rgb/config.h deleted file mode 100644 index 695d1dd0ba..0000000000 --- a/keyboards/keychron/k4_pro/iso/rgb/config.h +++ /dev/null @@ -1,54 +0,0 @@ -/* 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 . - */ - -#pragma once - -#ifdef RGB_MATRIX_ENABLE -/* RGB Matrix driver configuration */ -# define DRIVER_COUNT 2 - -# define DRIVER_ADDR_1 0b1110111 -# define DRIVER_ADDR_2 0b1110100 -# define DRIVER_1_LED_COUNT 48 -# define DRIVER_2_LED_COUNT 53 -# define RGB_MATRIX_LED_COUNT (DRIVER_1_LED_COUNT + DRIVER_2_LED_COUNT) - -/* Set to infinit, which is use in USB mode by default */ -# define RGB_MATRIX_TIMEOUT RGB_MATRIX_TIMEOUT_INFINITE - -/* Allow shutdown of led driver to save power */ -# define RGB_MATRIX_DRIVER_SHUTDOWN_ENABLE -/* Turn off backlight on low brightness to save power */ -# define RGB_MATRIX_BRIGHTNESS_TURN_OFF_VAL 48 - -/* Indication led */ -# define CAPS_LOCK_INDEX 54 -# define NUM_LOCK_INDEX 33 -# define LOW_BAT_IND_INDEX 92 - -/* RGB Matrix Animation modes. Explicitly enabled - * For full list of effects, see: - * https://docs.qmk.fm/#/feature_rgb_matrix?id=rgb-matrix-effects - */ - -# define RGB_MATRIX_KEYPRESSES -# define RGB_MATRIX_FRAMEBUFFER_EFFECTS - -/* Set LED driver current */ -# define SNLED27351_CURRENT_TUNE \ - { 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30 } - -#endif diff --git a/keyboards/keychron/k4_pro/iso/rgb/info.json b/keyboards/keychron/k4_pro/iso/rgb/info.json deleted file mode 100644 index 1d72d0bd2d..0000000000 --- a/keyboards/keychron/k4_pro/iso/rgb/info.json +++ /dev/null @@ -1,35 +0,0 @@ -{ - "usb": { - "pid": "0x0241", - "device_version": "1.0.0" - }, - "features": { - "rgb_matrix": true - }, - "rgb_matrix": { - "driver": "snled27351", - "animations": { - "breathing": true, - "band_spiral_val": true, - "cycle_all": true, - "cycle_left_right": true, - "cycle_up_down": true, - "rainbow_moving_chevron": true, - "cycle_out_in": true, - "cycle_out_in_dual": true, - "cycle_pinwheel": true, - "cycle_spiral": true, - "dual_beacon": true, - "rainbow_beacon": true, - "jellybean_raindrops": true, - "pixel_rain": true, - "typing_heatmap": true, - "digital_rain": true, - "solid_reactive_simple": true, - "solid_reactive_multiwide": true, - "solid_reactive_multinexus": true, - "splash": true, - "solid_splash": true - } - } -} diff --git a/keyboards/keychron/k4_pro/iso/rgb/keymaps/default/keymap.c b/keyboards/keychron/k4_pro/iso/rgb/keymaps/default/keymap.c deleted file mode 100644 index 3704f84abe..0000000000 --- a/keyboards/keychron/k4_pro/iso/rgb/keymaps/default/keymap.c +++ /dev/null @@ -1,56 +0,0 @@ -/* 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 . - */ - -#include QMK_KEYBOARD_H - -// clang-format off -enum layers{ - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN -}; - -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_iso_101( - KC_ESC, KC_BRID, KC_BRIU, KC_MCTL, KC_LPAD, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_DEL, KC_HOME, KC_END, KC_PGUP, KC_PGDN, RGB_MOD, - KC_GRV, 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_NUM, KC_PSLS, KC_PAST, KC_PMNS, - 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_P7, KC_P8, KC_P9, KC_PPLS, - 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_NUHS, KC_ENT, KC_P4, KC_P5, KC_P6, - KC_LSFT, KC_NUBS, 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_P1, KC_P2, KC_P3, KC_PENT, - KC_LCTL, KC_LOPTN, KC_LCMMD, KC_SPC, KC_RCMMD, MO(MAC_FN), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT, KC_P0, KC_PDOT ), - [MAC_FN] = LAYOUT_iso_101( - _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, _______, _______, _______, RGB_TOG, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ), - [WIN_BASE] = LAYOUT_iso_101( - KC_ESC, 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_DEL, KC_HOME, KC_END, KC_PGUP, KC_PGDN, RGB_MOD, - KC_GRV, 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_NUM, KC_PSLS, KC_PAST, KC_PMNS, - 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_P7, KC_P8, KC_P9, KC_PPLS, - 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_NUHS, KC_ENT, KC_P4, KC_P5, KC_P6, - KC_LSFT, KC_NUBS, 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_P1, KC_P2, KC_P3, KC_PENT, - KC_LCTL, KC_LWIN, KC_LALT, KC_SPC, KC_RALT, MO(WIN_FN), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT, KC_P0, KC_PDOT ), - [WIN_FN] = LAYOUT_iso_101( - _______, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, _______, _______, _______, RGB_TOG, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ) -}; diff --git a/keyboards/keychron/k4_pro/iso/rgb/keymaps/via/keymap.c b/keyboards/keychron/k4_pro/iso/rgb/keymaps/via/keymap.c deleted file mode 100644 index 3704f84abe..0000000000 --- a/keyboards/keychron/k4_pro/iso/rgb/keymaps/via/keymap.c +++ /dev/null @@ -1,56 +0,0 @@ -/* 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 . - */ - -#include QMK_KEYBOARD_H - -// clang-format off -enum layers{ - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN -}; - -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_iso_101( - KC_ESC, KC_BRID, KC_BRIU, KC_MCTL, KC_LPAD, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_DEL, KC_HOME, KC_END, KC_PGUP, KC_PGDN, RGB_MOD, - KC_GRV, 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_NUM, KC_PSLS, KC_PAST, KC_PMNS, - 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_P7, KC_P8, KC_P9, KC_PPLS, - 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_NUHS, KC_ENT, KC_P4, KC_P5, KC_P6, - KC_LSFT, KC_NUBS, 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_P1, KC_P2, KC_P3, KC_PENT, - KC_LCTL, KC_LOPTN, KC_LCMMD, KC_SPC, KC_RCMMD, MO(MAC_FN), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT, KC_P0, KC_PDOT ), - [MAC_FN] = LAYOUT_iso_101( - _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, _______, _______, _______, RGB_TOG, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ), - [WIN_BASE] = LAYOUT_iso_101( - KC_ESC, 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_DEL, KC_HOME, KC_END, KC_PGUP, KC_PGDN, RGB_MOD, - KC_GRV, 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_NUM, KC_PSLS, KC_PAST, KC_PMNS, - 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_P7, KC_P8, KC_P9, KC_PPLS, - 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_NUHS, KC_ENT, KC_P4, KC_P5, KC_P6, - KC_LSFT, KC_NUBS, 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_P1, KC_P2, KC_P3, KC_PENT, - KC_LCTL, KC_LWIN, KC_LALT, KC_SPC, KC_RALT, MO(WIN_FN), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT, KC_P0, KC_PDOT ), - [WIN_FN] = LAYOUT_iso_101( - _______, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, _______, _______, _______, RGB_TOG, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ) -}; diff --git a/keyboards/keychron/k4_pro/iso/rgb/keymaps/via/rules.mk b/keyboards/keychron/k4_pro/iso/rgb/keymaps/via/rules.mk deleted file mode 100644 index 1e5b99807c..0000000000 --- a/keyboards/keychron/k4_pro/iso/rgb/keymaps/via/rules.mk +++ /dev/null @@ -1 +0,0 @@ -VIA_ENABLE = yes diff --git a/keyboards/keychron/k4_pro/iso/rgb/rgb.c b/keyboards/keychron/k4_pro/iso/rgb/rgb.c deleted file mode 100644 index d2f9566d9c..0000000000 --- a/keyboards/keychron/k4_pro/iso/rgb/rgb.c +++ /dev/null @@ -1,167 +0,0 @@ -/* 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 . - */ - -#include "quantum.h" - -// clang-format off -#ifdef RGB_MATRIX_ENABLE -const snled27351_led_t g_snled27351_leds[RGB_MATRIX_LED_COUNT] = { -/* Refer to snled27351manual for these locations - * driver - * | R location - * | | G location - * | | | B location - * | | | | */ - {0, I_1, G_1, H_1}, - {0, I_2, G_2, H_2}, - {0, I_3, G_3, H_3}, - {0, I_4, G_4, H_4}, - {0, I_5, G_5, H_5}, - {0, I_6, G_6, H_6}, - {0, I_7, G_7, H_7}, - {0, I_8, G_8, H_8}, - {0, I_9, G_9, H_9}, - {0, I_10, G_10, H_10}, - {0, I_11, G_11, H_11}, - {0, I_12, G_12, H_12}, - {0, I_13, G_13, H_13}, - {0, I_14, G_14, H_14}, - {0, I_15, G_15, H_15}, - {0, I_16, G_16, H_16}, - {1, F_1, D_1, E_1}, - {1, F_2, D_2, E_2}, - {1, F_3, D_3, E_3}, - - {0, C_1, A_1, B_1}, - {0, C_2, A_2, B_2}, - {0, C_3, A_3, B_3}, - {0, C_4, A_4, B_4}, - {0, C_5, A_5, B_5}, - {0, C_6, A_6, B_6}, - {0, C_7, A_7, B_7}, - {0, C_8, A_8, B_8}, - {0, C_9, A_9, B_9}, - {0, C_10, A_10, B_10}, - {0, C_11, A_11, B_11}, - {0, C_12, A_12, B_12}, - {0, C_13, A_13, B_13}, - {0, C_14, A_14, B_14}, - {0, C_15, A_15, B_15}, - {0, C_16, A_16, B_16}, - {1, F_4, D_4, E_4}, - {1, F_5, D_5, E_5}, - - {0, F_1, D_1, E_1}, - {0, F_2, D_2, E_2}, - {0, F_3, D_3, E_3}, - {0, F_4, D_4, E_4}, - {0, F_5, D_5, E_5}, - {0, F_6, D_6, E_6}, - {0, F_7, D_7, E_7}, - {0, F_8, D_8, E_8}, - {0, F_9, D_9, E_9}, - {0, F_10, D_10, E_10}, - {0, F_11, D_11, E_11}, - {0, F_12, D_12, E_12}, - {0, F_13, D_13, E_13}, - {0, F_15, D_15, E_15}, - {0, F_16, D_16, E_16}, - {1, F_6, D_6, E_6}, - {1, F_7, D_7, E_7}, - - {1, C_16, A_16, B_16}, - {1, C_15, A_15, B_15}, - {1, C_14, A_14, B_14}, - {1, C_13, A_13, B_13}, - {1, C_12, A_12, B_12}, - {1, C_11, A_11, B_11}, - {1, C_10, A_10, B_10}, - {1, C_9, A_9, B_9}, - {1, C_8, A_8, B_8}, - {1, C_7, A_7, B_7}, - {1, C_6, A_6, B_6}, - {1, C_5, A_5, B_5}, - {1, C_3, A_3, B_3}, - {0, F_14, D_14, E_14}, - {1, C_2, A_2, B_2}, - {1, C_1, A_1, B_1}, - {1, F_8, D_8, E_8}, - - {1, I_16, G_16, H_16}, - {1, I_15, G_15, H_15}, - {1, I_14, G_14, H_14}, - {1, I_13, G_13, H_13}, - {1, I_12, G_12, H_12}, - {1, I_11, G_11, H_11}, - {1, I_10, G_10, H_10}, - {1, I_9, G_9, H_9}, - {1, I_8, G_8, H_8}, - {1, I_7, G_7, H_7}, - {1, I_6, G_6, H_6}, - {1, I_5, G_5, H_5}, - {1, I_4, G_4, H_4}, - {1, I_3, G_3, H_3}, - {1, I_2, G_2, H_2}, - {1, I_1, G_1, H_1}, - {1, F_9, D_9, E_9}, - {1, F_10, D_10, E_10}, - - {1, L_16, J_16, K_16}, - {1, L_15, J_15, K_15}, - {1, L_14, J_14, K_14}, - {1, L_10, J_10, K_10}, - {1, L_6, J_6, K_6}, - {1, L_5, J_5, K_5}, - {1, L_4, J_4, K_4}, - {1, L_3, J_3, K_3}, - {1, L_2, J_2, K_2}, - {1, L_1, J_1, K_1}, - {1, F_11, D_11, E_11}, - {1, F_12, D_12, E_12}, -}; - -#define __ NO_LED - -led_config_t g_led_config = { - { - // Key Matrix to LED Index - { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17 }, - { 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36 }, - { 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 67, 50, 51, 52, 53 }, - { 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, __, 66, 68, 69, 70, 18 }, - { 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88 }, - { 89, 90, 91, __, __, __, 92, __, __, __, 93, 94, 95, 96, 97, 98, 99,100 } - }, - { - // LED Index to Physical Position - {0,0}, {12,0}, {24,0}, {36,0}, {48,0}, {60,0}, {72,0}, {85,0}, {97,0}, {109,0}, {121,0}, {133,0}, {145,0}, {157,0}, {169,0}, {188,0}, {200,0}, {212,0}, {224,0}, - {0,15}, {12,15}, {24,15}, {36,15}, {48,15}, {60,15}, {72,15}, {85,15}, {97,15}, {109,15}, {121,15}, {133,15}, {145,15}, {163,15}, {188,15}, {200,15}, {212,15}, {224,15}, - {3,26}, {18,26}, {30,26}, {42,26}, {54,26}, {66,26}, {78,26}, {91,26}, {103,26}, {115,26}, {127,26}, {139,26}, {151,26}, {188,26}, {200,26}, {212,26}, {224,32}, - {5,38}, {21,38}, {33,38}, {45,38}, {57,38}, {69,38}, {81,38}, {94,38}, {106,38}, {118,38}, {130,38}, {142,38}, {154,38}, {170,34}, {188,38}, {200,38}, {212,38}, - {2,49}, {15,49}, {27,49}, {39,49}, {51,49}, {63,49}, {75,49}, {87,49}, {100,49}, {112,49}, {124,49}, {136,49}, {152,49}, {172,52}, {188,49}, {200,49}, {212,49}, {224,55}, - {2,61}, {17,61}, {32,61}, {77,61}, {121,61}, {133,61}, {145,61}, {160,64}, {172,64}, {184,64}, {200,61}, {212,61}, - }, - { - // RGB LED Index to Flag - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 4, 4, 4, 4, - 1, 8, 8, 8, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, - 1, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, - 8, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1, 4, 4, 4, - 1, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1, 1, 4, 4, 4, 4, - 1, 1, 1, 4, 1, 1, 1, 1, 1, 1, 4, 4, - } -}; -#endif diff --git a/keyboards/keychron/k4_pro/iso/rgb/rules.mk b/keyboards/keychron/k4_pro/iso/rgb/rules.mk deleted file mode 100644 index f886ea2e8e..0000000000 --- a/keyboards/keychron/k4_pro/iso/rgb/rules.mk +++ /dev/null @@ -1 +0,0 @@ -# This file intentionally blank \ No newline at end of file diff --git a/keyboards/keychron/k4_pro/iso/white/config.h b/keyboards/keychron/k4_pro/iso/white/config.h deleted file mode 100644 index 792b1cad28..0000000000 --- a/keyboards/keychron/k4_pro/iso/white/config.h +++ /dev/null @@ -1,46 +0,0 @@ -/* 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 . - */ - -#pragma once - -#ifdef LED_MATRIX_ENABLE -/* LED matrix driver configuration */ -# define DRIVER_COUNT 1 -# define SNLED27351_I2C_ADDRESS_1 SNLED27351_I2C_ADDRESS_GND -# define DRIVER_1_LED_COUNT 101 -# define LED_MATRIX_LED_COUNT DRIVER_1_LED_COUNT - -/* Set to infinit, which is use in USB mode by default */ -# define LED_MATRIX_TIMEOUT LED_MATRIX_TIMEOUT_INFINITE -/* Allow shutdown of led driver to save power */ -# define LED_MATRIX_DRIVER_SHUTDOWN_ENABLE -/* Turn off backlight on low brightness to save power */ -# define LED_MATRIX_BRIGHTNESS_TURN_OFF_VAL 48 - -/* Indicatoon led */ -# define LOW_BAT_IND_INDEX 92 - -/* LED Matrix Animation modes. Explicitly enabled - * For full list of effects, see: - * https://docs.qmk.fm/#/feature_led_matrix?id=led-matrix-effects - */ -# define LED_MATRIX_KEYPRESSES - -/* Set LED driver current */ -# define SNLED27351_CURRENT_TUNE \ - { 0x60, 0x60, 0x60, 0x60, 0x60, 0x60, 0x60, 0x60, 0x60, 0x60, 0x60, 0x60 } - -#endif diff --git a/keyboards/keychron/k4_pro/iso/white/info.json b/keyboards/keychron/k4_pro/iso/white/info.json deleted file mode 100644 index c4a024404d..0000000000 --- a/keyboards/keychron/k4_pro/iso/white/info.json +++ /dev/null @@ -1,30 +0,0 @@ -{ - "usb": { - "pid": "0x0244", - "device_version": "1.0.0" - }, - "features": { - "led_matrix": true - }, - "led_matrix": { - "driver": "snled27351", - "animations": { - "none": true, - "solid": true, - "breathing": true, - "band_pinwheel": true, - "band_spiral": true, - "cycle_left_right": true, - "cycle_up_down": true, - "cycle_out_in": true, - "dual_beacon": true, - "solid_reactive_simple": true, - "solid_reactive_multiwide": true, - "solid_reactive_multinexus": true, - "solid_splash": true, - "wave_left_right": true, - "wave_up_down": true, - "effect_max": true - } - } -} diff --git a/keyboards/keychron/k4_pro/iso/white/keymaps/default/keymap.c b/keyboards/keychron/k4_pro/iso/white/keymaps/default/keymap.c deleted file mode 100644 index 19c1696119..0000000000 --- a/keyboards/keychron/k4_pro/iso/white/keymaps/default/keymap.c +++ /dev/null @@ -1,56 +0,0 @@ -/* 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 . - */ - -#include QMK_KEYBOARD_H - -// clang-format off -enum layers{ - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN -}; - -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_iso_101( - KC_ESC, KC_BRID, KC_BRIU, KC_MCTL, KC_LPAD, BL_DOWN, BL_UP, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_DEL, KC_HOME, KC_END, KC_PGUP, KC_PGDN, BL_STEP, - KC_GRV, 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_NUM, KC_PSLS, KC_PAST, KC_PMNS, - 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_P7, KC_P8, KC_P9, KC_PPLS, - 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_NUHS, KC_ENT, KC_P4, KC_P5, KC_P6, - KC_LSFT, KC_NUBS, 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_P1, KC_P2, KC_P3, KC_PENT, - KC_LCTL, KC_LOPTN, KC_LCMMD, KC_SPC, KC_RCMMD, MO(MAC_FN), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT, KC_P0, KC_PDOT ), - [MAC_FN] = LAYOUT_iso_101( - _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, _______, _______, _______, BL_TOGG, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - BL_TOGG, BL_STEP, BL_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, BL_DOWN, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ), - [WIN_BASE] = LAYOUT_iso_101( - KC_ESC, 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_DEL, KC_HOME, KC_END, KC_PGUP, KC_PGDN, BL_STEP, - KC_GRV, 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_NUM, KC_PSLS, KC_PAST, KC_PMNS, - 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_P7, KC_P8, KC_P9, KC_PPLS, - 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_NUHS, KC_ENT, KC_P4, KC_P5, KC_P6, - KC_LSFT, KC_NUBS, 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_P1, KC_P2, KC_P3, KC_PENT, - KC_LCTL, KC_LWIN, KC_LALT, KC_SPC, KC_RALT, MO(WIN_FN), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT, KC_P0, KC_PDOT ), - [WIN_FN] = LAYOUT_iso_101( - _______, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, BL_DOWN, BL_UP, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, _______, _______, _______, BL_TOGG, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - BL_TOGG, BL_STEP, BL_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, BL_DOWN, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ) -}; diff --git a/keyboards/keychron/k4_pro/iso/white/keymaps/via/keymap.c b/keyboards/keychron/k4_pro/iso/white/keymaps/via/keymap.c deleted file mode 100644 index 19c1696119..0000000000 --- a/keyboards/keychron/k4_pro/iso/white/keymaps/via/keymap.c +++ /dev/null @@ -1,56 +0,0 @@ -/* 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 . - */ - -#include QMK_KEYBOARD_H - -// clang-format off -enum layers{ - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN -}; - -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_iso_101( - KC_ESC, KC_BRID, KC_BRIU, KC_MCTL, KC_LPAD, BL_DOWN, BL_UP, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_DEL, KC_HOME, KC_END, KC_PGUP, KC_PGDN, BL_STEP, - KC_GRV, 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_NUM, KC_PSLS, KC_PAST, KC_PMNS, - 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_P7, KC_P8, KC_P9, KC_PPLS, - 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_NUHS, KC_ENT, KC_P4, KC_P5, KC_P6, - KC_LSFT, KC_NUBS, 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_P1, KC_P2, KC_P3, KC_PENT, - KC_LCTL, KC_LOPTN, KC_LCMMD, KC_SPC, KC_RCMMD, MO(MAC_FN), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT, KC_P0, KC_PDOT ), - [MAC_FN] = LAYOUT_iso_101( - _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, _______, _______, _______, BL_TOGG, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - BL_TOGG, BL_STEP, BL_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, BL_DOWN, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ), - [WIN_BASE] = LAYOUT_iso_101( - KC_ESC, 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_DEL, KC_HOME, KC_END, KC_PGUP, KC_PGDN, BL_STEP, - KC_GRV, 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_NUM, KC_PSLS, KC_PAST, KC_PMNS, - 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_P7, KC_P8, KC_P9, KC_PPLS, - 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_NUHS, KC_ENT, KC_P4, KC_P5, KC_P6, - KC_LSFT, KC_NUBS, 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_P1, KC_P2, KC_P3, KC_PENT, - KC_LCTL, KC_LWIN, KC_LALT, KC_SPC, KC_RALT, MO(WIN_FN), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT, KC_P0, KC_PDOT ), - [WIN_FN] = LAYOUT_iso_101( - _______, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, BL_DOWN, BL_UP, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, _______, _______, _______, BL_TOGG, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - BL_TOGG, BL_STEP, BL_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, BL_DOWN, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ) -}; diff --git a/keyboards/keychron/k4_pro/iso/white/keymaps/via/rules.mk b/keyboards/keychron/k4_pro/iso/white/keymaps/via/rules.mk deleted file mode 100644 index 1e5b99807c..0000000000 --- a/keyboards/keychron/k4_pro/iso/white/keymaps/via/rules.mk +++ /dev/null @@ -1 +0,0 @@ -VIA_ENABLE = yes diff --git a/keyboards/keychron/k4_pro/iso/white/rules.mk b/keyboards/keychron/k4_pro/iso/white/rules.mk deleted file mode 100644 index f886ea2e8e..0000000000 --- a/keyboards/keychron/k4_pro/iso/white/rules.mk +++ /dev/null @@ -1 +0,0 @@ -# This file intentionally blank \ No newline at end of file diff --git a/keyboards/keychron/k4_pro/iso/white/white.c b/keyboards/keychron/k4_pro/iso/white/white.c deleted file mode 100644 index 25d53cb26e..0000000000 --- a/keyboards/keychron/k4_pro/iso/white/white.c +++ /dev/null @@ -1,165 +0,0 @@ -/* 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 . - */ - -#include "quantum.h" - -// clang-format off -#ifdef LED_MATRIX_ENABLE -const snled27351_led_t g_snled27351_leds[LED_MATRIX_LED_COUNT] = { -/* Refer to snled27351manual for these locations - * driver - * | LED address - * | | */ - {0, A_16}, - {0, A_15}, - {0, A_14}, - {0, A_13}, - {0, A_12}, - {0, A_11}, - {0, A_10}, - {0, A_9}, - {0, A_8}, - {0, A_7}, - {0, A_6}, - {0, A_5}, - {0, A_4}, - {0, A_3}, - {0, A_2}, - {0, A_1}, - {0, G_1}, - {0, G_2}, - {0, G_3}, - - {0, B_16}, - {0, B_15}, - {0, B_14}, - {0, B_13}, - {0, B_12}, - {0, B_11}, - {0, B_10}, - {0, B_9}, - {0, B_8}, - {0, B_7}, - {0, B_6}, - {0, B_5}, - {0, B_4}, - {0, B_3}, - {0, B_2}, - {0, B_1}, - {0, G_4}, - {0, G_5}, - - {0, C_16}, - {0, C_15}, - {0, C_14}, - {0, C_13}, - {0, C_12}, - {0, C_11}, - {0, C_10}, - {0, C_9}, - {0, C_8}, - {0, C_7}, - {0, C_6}, - {0, C_5}, - {0, C_4}, - {0, C_2}, - {0, C_1}, - {0, G_6}, - {0, G_7}, - - {0, D_16}, - {0, D_15}, - {0, D_14}, - {0, D_13}, - {0, D_12}, - {0, D_11}, - {0, D_10}, - {0, D_9}, - {0, D_8}, - {0, D_7}, - {0, D_6}, - {0, D_5}, - {0, D_3}, - {0, C_3}, - {0, D_2}, - {0, D_1}, - {0, G_8}, - - {0, E_16}, - {0, E_15}, - {0, E_14}, - {0, E_13}, - {0, E_12}, - {0, E_11}, - {0, E_10}, - {0, E_9}, - {0, E_8}, - {0, E_7}, - {0, E_6}, - {0, E_5}, - {0, E_4}, - {0, E_3}, - {0, E_2}, - {0, E_1}, - {0, G_9}, - {0, G_10}, - - {0, F_16}, - {0, F_15}, - {0, F_14}, - {0, F_10}, - {0, F_6}, - {0, F_5}, - {0, F_4}, - {0, F_3}, - {0, F_2}, - {0, F_1}, - {0, G_11}, - {0, G_12}, -}; - -#define __ NO_LED - -led_config_t g_led_config = { - { - // Key Matrix to LED Index - { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17 }, - { 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36 }, - { 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 67, 50, 51, 52, 53 }, - { 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, __, 66, 68, 69, 70, 18 }, - { 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88 }, - { 89, 90, 91, __, __, __, 92, __, __, __, 93, 94, 95, 96, 97, 98, 99,100 } - }, - { - // LED Index to Physical Position - {0,0}, {12,0}, {24,0}, {36,0}, {48,0}, {60,0}, {72,0}, {85,0}, {97,0}, {109,0}, {121,0}, {133,0}, {145,0}, {157,0}, {169,0}, {188,0}, {200,0}, {212,0}, {224,0}, - {0,15}, {12,15}, {24,15}, {36,15}, {48,15}, {60,15}, {72,15}, {85,15}, {97,15}, {109,15}, {121,15}, {133,15}, {145,15}, {163,15}, {188,15}, {200,15}, {212,15}, {224,15}, - {3,26}, {18,26}, {30,26}, {42,26}, {54,26}, {66,26}, {78,26}, {91,26}, {103,26}, {115,26}, {127,26}, {139,26}, {151,26}, {188,26}, {200,26}, {212,26}, {224,32}, - {5,38}, {21,38}, {33,38}, {45,38}, {57,38}, {69,38}, {81,38}, {94,38}, {106,38}, {118,38}, {130,38}, {142,38}, {154,38}, {170,34}, {188,38}, {200,38}, {212,38}, - {2,49}, {15,49}, {27,49}, {39,49}, {51,49}, {63,49}, {75,49}, {87,49}, {100,49}, {112,49}, {124,49}, {136,49}, {152,49}, {172,52}, {188,49}, {200,49}, {212,49}, {224,55}, - {2,61}, {17,61}, {32,61}, {77,61}, {121,61}, {133,61}, {145,61}, {160,64}, {172,64}, {184,64}, {200,61}, {212,61}, - }, - { - // RGB LED Index to Flag - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 4, 4, 4, 4, - 1, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, - 1, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, - 8, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1, 4, 4, 4, - 1, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1, 1, 4, 4, 4, 4, - 1, 1, 1, 4, 1, 1, 1, 1, 1, 1, 4, 4, - } -}; -#endif diff --git a/keyboards/keychron/k4_pro/k4_pro.c b/keyboards/keychron/k4_pro/k4_pro.c deleted file mode 100644 index d7e14de99d..0000000000 --- a/keyboards/keychron/k4_pro/k4_pro.c +++ /dev/null @@ -1,296 +0,0 @@ -/* 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 . - */ - -#include "k4_pro.h" -#ifdef KC_BLUETOOTH_ENABLE -# include "ckbt51.h" -# include "bluetooth.h" -# include "indicator.h" -# include "transport.h" -# include "battery.h" -# include "bat_level_animation.h" -# include "lpm.h" -#endif - -#ifdef ENABLE_FACTORY_TEST -# include "factory_test.h" -#endif - -#define POWER_ON_LED_DURATION 3000 - -typedef struct PACKED { - uint8_t len; - uint8_t keycode[3]; -} key_combination_t; - -static uint32_t power_on_indicator_timer_buffer; -static uint32_t siri_timer_buffer = 0; -static uint8_t mac_keycode[4] = {KC_LOPT, KC_ROPT, KC_LCMD, KC_RCMD}; - -key_combination_t key_comb_list[4] = { - {2, {KC_LWIN, KC_TAB}}, // Task (win) - {2, {KC_LWIN, KC_E}}, // Files (win) - {3, {KC_LSFT, KC_LGUI, KC_4}}, // Snapshot (mac) - {2, {KC_LWIN, KC_C}} // Cortana (win) -}; - -#ifdef KC_BLUETOOTH_ENABLE -bool firstDisconnect = true; -bool bt_factory_reset = false; -static virtual_timer_t pairing_key_timer; -extern uint8_t g_pwm_buffer[DRIVER_COUNT][192]; - -static void pairing_key_timer_cb(void *arg) { - bluetooth_pairing_ex(*(uint8_t *)arg, NULL); -} -#endif - -bool dip_switch_update_kb(uint8_t index, bool active) { - if (index == 0) { - default_layer_set(1UL << (active ? 0 : 2)); - } - dip_switch_update_user(index, active); - - return true; -} - -#ifdef KC_BLUETOOTH_ENABLE -bool process_record_kb_bt(uint16_t keycode, keyrecord_t *record) { -#else -bool process_record_kb(uint16_t keycode, keyrecord_t *record) { -#endif - static uint8_t host_idx = 0; - - switch (keycode) { - case KC_LOPTN: - case KC_ROPTN: - case KC_LCMMD: - case KC_RCMMD: - if (record->event.pressed) { - register_code(mac_keycode[keycode - KC_LOPTN]); - } else { - unregister_code(mac_keycode[keycode - KC_LOPTN]); - } - return false; // Skip all further processing of this key) - case KC_TASK: - case KC_FILE: - case KC_SNAP: - case KC_CTANA: - if (record->event.pressed) { - for (uint8_t i = 0; i < key_comb_list[keycode - KC_TASK].len; i++) - register_code(key_comb_list[keycode - KC_TASK].keycode[i]); - } else { - for (uint8_t i = 0; i < key_comb_list[keycode - KC_TASK].len; i++) - unregister_code(key_comb_list[keycode - KC_TASK].keycode[i]); - } - return false; // Skip all further processing of this key - case KC_SIRI: - if (record->event.pressed && siri_timer_buffer == 0) { - register_code(KC_LGUI); - register_code(KC_SPACE); - siri_timer_buffer = sync_timer_read32() | 1; - } - return false; // Skip all further processing of this key -#ifdef KC_BLUETOOTH_ENABLE - case BT_HST1 ... BT_HST3: - if (get_transport() == TRANSPORT_BLUETOOTH) { - if (record->event.pressed) { - host_idx = keycode - BT_HST1 + 1; - chVTSet(&pairing_key_timer, TIME_MS2I(2000), (vtfunc_t)pairing_key_timer_cb, &host_idx); - bluetooth_connect_ex(host_idx, 0); - } else { - host_idx = 0; - chVTReset(&pairing_key_timer); - } - } - break; - case BAT_LVL: - if (get_transport() == TRANSPORT_BLUETOOTH && !usb_power_connected()) { - bat_level_animiation_start(battery_get_percentage()); - } - break; -#endif - default: -#ifdef FACTORY_RESET_CHECK - FACTORY_RESET_CHECK(keycode, record); -#endif - break; - } - return true; -} - -void keyboard_post_init_kb(void) { - dip_switch_read(true); - -#ifdef KC_BLUETOOTH_ENABLE - /* Currently we don't use this reset pin */ - palSetLineMode(CKBT51_RESET_PIN, PAL_MODE_UNCONNECTED); - - /* IMPORTANT: DO NOT enable internal pull-up resistor - * as there is an external pull-down resistor. - */ - palSetLineMode(USB_BT_MODE_SELECT_PIN, PAL_MODE_INPUT); - - ckbt51_init(false); - bluetooth_init(); -#endif - - power_on_indicator_timer_buffer = sync_timer_read32() | 1; - writePin(BAT_LOW_LED_PIN, BAT_LOW_LED_PIN_ON_STATE); - - keyboard_post_init_user(); -} - -void matrix_scan_kb(void) { - if (power_on_indicator_timer_buffer) { - if (sync_timer_elapsed32(power_on_indicator_timer_buffer) > POWER_ON_LED_DURATION) { - power_on_indicator_timer_buffer = 0; - - writePin(BAT_LOW_LED_PIN, !BAT_LOW_LED_PIN_ON_STATE); - - } else { - writePin(BAT_LOW_LED_PIN, BAT_LOW_LED_PIN_ON_STATE); - } - } - - if (siri_timer_buffer && sync_timer_elapsed32(siri_timer_buffer) > 500) { - siri_timer_buffer = 0; - unregister_code(KC_LGUI); - unregister_code(KC_SPACE); - } - -#ifdef FACTORY_RESET_TASK - FACTORY_RESET_TASK(); -#endif - matrix_scan_user(); -} - -#ifdef KC_BLUETOOTH_ENABLE -static void ckbt51_param_init(void) { - /* Set bluetooth device name */ - // ckbt51_set_local_name(STR(PRODUCT)); - ckbt51_set_local_name(PRODUCT); - /* Set bluetooth parameters */ - module_param_t param = {.event_mode = 0x02, - .connected_idle_timeout = 7200, - .pairing_timeout = 180, - .pairing_mode = 0, - .reconnect_timeout = 5, - .report_rate = 90, - .vendor_id_source = 1, - .verndor_id = 0, // Must be 0x3434 - .product_id = PRODUCT_ID}; - ckbt51_set_param(¶m); -} - -void bluetooth_enter_disconnected_kb(uint8_t host_idx) { - if (bt_factory_reset) { - bt_factory_reset = false; - ckbt51_param_init(); - } - /* CKBT51 bluetooth module boot time is slower, it enters disconnected after boot, - so we place initialization here. */ - if (firstDisconnect && sync_timer_read32() < 1000 && get_transport() == TRANSPORT_BLUETOOTH) { - ckbt51_param_init(); - bluetooth_connect(); - firstDisconnect = false; - } -} - -void ckbt51_default_ack_handler(uint8_t *data, uint8_t len) { - if (data[1] == 0x45) { - module_param_t param = {.event_mode = 0x02, - .connected_idle_timeout = 7200, - .pairing_timeout = 180, - .pairing_mode = 0, - .reconnect_timeout = 5, - .report_rate = 90, - .vendor_id_source = 1, - .verndor_id = 0, // Must be 0x3434 - .product_id = PRODUCT_ID}; - ckbt51_set_param(¶m); - } -} - -void bluetooth_pre_task(void) { - static uint8_t mode = 1; - - if (readPin(USB_BT_MODE_SELECT_PIN) != mode) { - if (readPin(USB_BT_MODE_SELECT_PIN) != mode) { - mode = readPin(USB_BT_MODE_SELECT_PIN); - set_transport(mode == 0 ? TRANSPORT_BLUETOOTH : TRANSPORT_USB); - } - } -} -#endif - -void battery_calculte_voltage(uint16_t value) { - uint16_t voltage = ((uint32_t)value) * 2246 / 1000; - -#ifdef LED_MATRIX_ENABLE - if (led_matrix_is_enabled()) { - uint32_t totalBuf = 0; - - for (uint8_t i = 0; i < DRIVER_COUNT; i++) - for (uint8_t j = 0; j < 192; j++) - totalBuf += g_pwm_buffer[i][j]; - /* We assumpt it is linear relationship*/ - voltage += (30 * totalBuf / LED_MATRIX_LED_COUNT / 255); - } -#endif -#ifdef RGB_MATRIX_ENABLE - if (rgb_matrix_is_enabled()) { - uint32_t totalBuf = 0; - - for (uint8_t i = 0; i < DRIVER_COUNT; i++) - for (uint8_t j = 0; j < 192; j++) - totalBuf += g_pwm_buffer[i][j]; - /* We assumpt it is linear relationship*/ - uint32_t compensation = 60 * totalBuf / RGB_MATRIX_LED_COUNT / 255 / 3; - voltage += compensation; - } -#endif - battery_set_voltage(voltage); -} - -bool via_command_kb(uint8_t *data, uint8_t length) { - switch (data[0]) { -#ifdef KC_BLUETOOTH_ENABLE - case 0xAA: - ckbt51_dfu_rx(data, length); - break; -#endif -#ifdef ENABLE_FACTORY_TEST - case 0xAB: - factory_test_rx(data, length); - break; -#endif - default: - return false; - } - - return true; -} - -#if !defined(VIA_ENABLE) -void raw_hid_receive(uint8_t *data, uint8_t length) { - switch (data[0]) { - case RAW_HID_CMD: - via_command_kb(data, length); - break; - } -} -#endif diff --git a/keyboards/keychron/k4_pro/k4_pro.h b/keyboards/keychron/k4_pro/k4_pro.h deleted file mode 100644 index cd0954d579..0000000000 --- a/keyboards/keychron/k4_pro/k4_pro.h +++ /dev/null @@ -1,55 +0,0 @@ -/* 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 . - */ - -#pragma once - -#include "quantum.h" -#ifdef VIA_ENABLE -# include "via.h" -#endif - -#define ___ KC_NO - -#ifdef VIA_ENABLE -# define USER_START QK_KB_0 -#else -# define USER_START SAFE_RANGE -#endif - -// clang-format off -enum { - KC_LOPTN = USER_START, - KC_ROPTN, - KC_LCMMD, - KC_RCMMD, - KC_TASK, - KC_FILE, - KC_SNAP, - KC_CTANA, - KC_SIRI, -#ifdef KC_BLUETOOTH_ENABLE - BT_HST1, - BT_HST2, - BT_HST3, - BAT_LVL, -#else - BT_HST1 = KC_TRNS, - BT_HST2 = KC_TRNS, - BT_HST3 = KC_TRNS, - BAT_LVL = KC_TRNS, -#endif - NEW_SAFE_RANGE -}; diff --git a/keyboards/keychron/k4_pro/matrix.c b/keyboards/keychron/k4_pro/matrix.c deleted file mode 100644 index 2a60871fc8..0000000000 --- a/keyboards/keychron/k4_pro/matrix.c +++ /dev/null @@ -1,170 +0,0 @@ -/* 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 . - */ - -#include "stdint.h" -#include "hal.h" -#include "gpio.h" -#include "quantum.h" - -#define HC595_STCP A0 -#define HC595_SHCP A1 -#define HC595_DS C15 - -#define DIRECT_COL_NUM 2 - -pin_t row_pins[MATRIX_ROWS] = MATRIX_ROW_PINS; -pin_t col_pins[MATRIX_COLS] = MATRIX_COL_PINS; - -static inline void HC595_delay(uint16_t n) { - while (n-- > 0) { - asm volatile("nop" ::: "memory"); - }; -} - -static void HC595_output(uint16_t data) { - uint8_t i; - uint8_t n = 1; - - for (i = 16; i > 0; i--) { - writePinLow(HC595_SHCP); - - if (data & 0x8000) - writePinHigh(HC595_DS); - else - writePinLow(HC595_DS); - - data <<= 1; - - HC595_delay(n); - - writePinHigh(HC595_SHCP); - HC595_delay(n); - } - - HC595_delay(n); - writePinLow(HC595_STCP); - HC595_delay(n); - writePinHigh(HC595_STCP); -} - -static inline void setPinOutput_writeLow(pin_t pin) { - ATOMIC_BLOCK_FORCEON { - setPinOutput(pin); - writePinLow(pin); - } -} - -static inline void setPinInputHigh_atomic(pin_t pin) { - ATOMIC_BLOCK_FORCEON { - setPinInputHigh(pin); - } -} - -static inline uint8_t readMatrixPin(pin_t pin) { - if (pin != NO_PIN) { - return readPin(pin); - } else { - return 1; - } -} - -static bool select_col(uint8_t col) { - pin_t pin = col_pins[col]; - - if (col < DIRECT_COL_NUM) { - setPinOutput_writeLow(pin); - return true; - } else { - HC595_output(~(0x01 << (col - DIRECT_COL_NUM))); - return true; - } - return false; -} - -static void unselect_col(uint8_t col) { - pin_t pin = col_pins[col]; - - if (col < DIRECT_COL_NUM) { - setPinInputHigh_atomic(pin); - } else { - HC595_output(0xFFFF); - } -} - -static void unselect_cols(void) { - for (uint8_t i = 0; i < DIRECT_COL_NUM; i++) - writePinHigh(col_pins[i]); - HC595_output(0xFFFF); -} - -void select_all_cols(void) { - for (uint8_t i = 0; i < DIRECT_COL_NUM; i++) - setPinOutput_writeLow(col_pins[i]); - HC595_output(0x0000); -} - -void matrix_read_rows_on_col(matrix_row_t current_matrix[], uint8_t current_col) { - // Select col - if (!select_col(current_col)) { // select col - return; // skip NO_PIN col - } - - HC595_delay(100); - - // For each row... - for (uint8_t row_index = 0; row_index < MATRIX_ROWS; row_index++) { - // Check row pin state - if (readMatrixPin(row_pins[row_index]) == 0) { - // Pin LO, set col bit - current_matrix[row_index] |= (MATRIX_ROW_SHIFTER << current_col); - // key_pressed = true; - } else { - // Pin HI, clear col bit - current_matrix[row_index] &= ~(MATRIX_ROW_SHIFTER << current_col); - } - } - - unselect_col(current_col); - HC595_delay(100); -} - -void matrix_init_custom(void) { - for (uint8_t x = 0; x < MATRIX_ROWS; x++) { - if (row_pins[x] != NO_PIN) { - setPinInputHigh_atomic(row_pins[x]); - } - } - setPinOutput(HC595_DS); - setPinOutput(HC595_STCP); - setPinOutput(HC595_SHCP); - unselect_cols(); -} - -bool matrix_scan_custom(matrix_row_t current_matrix[]) { - bool matrix_has_changed = false; - - matrix_row_t curr_matrix[MATRIX_ROWS] = {0}; - - // Set col, read rows - for (uint8_t current_col = 0; current_col < MATRIX_COLS; current_col++) { - matrix_read_rows_on_col(curr_matrix, current_col); - } - - matrix_has_changed = memcmp(current_matrix, curr_matrix, sizeof(curr_matrix)) != 0; - if (matrix_has_changed) memcpy(current_matrix, curr_matrix, sizeof(curr_matrix)); - - return matrix_has_changed; -} diff --git a/keyboards/keychron/k4_pro/mcuconf.h b/keyboards/keychron/k4_pro/mcuconf.h deleted file mode 100644 index 4dae767a44..0000000000 --- a/keyboards/keychron/k4_pro/mcuconf.h +++ /dev/null @@ -1,36 +0,0 @@ -/* 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 - -/* Set HCLK to 48 MHz as tradeoff of USB lowest clockand and - * lower power comsumption for bluetooth. Will use dynamic - * clock when STM32L4 is supported in ChibiOS */ -#undef STM32_PLLM_VALUE -#define STM32_PLLM_VALUE 2 - -#undef STM32_PLLN_VALUE -#define STM32_PLLN_VALUE 12 - -#undef STM32_I2C_USE_I2C1 -#define STM32_I2C_USE_I2C1 TRUE - -#ifdef KC_BLUETOOTH_ENABLE -# undef STM32_SERIAL_USE_USART2 -# define STM32_SERIAL_USE_USART2 TRUE -#endif diff --git a/keyboards/keychron/k4_pro/readme.md b/keyboards/keychron/k4_pro/readme.md deleted file mode 100644 index 7ee5c6a0d8..0000000000 --- a/keyboards/keychron/k4_pro/readme.md +++ /dev/null @@ -1,21 +0,0 @@ -# Keychron K4 Pro - -![Keychron K4 Pro](https://github.com/Keychron/ProductImage/blob/main/K_Pro/k4_pro.jpg?raw=true) - -A customizable 100 keys keyboard. - -* Keyboard Maintainer: [Keychron](https://github.com/keychron) -* Hardware Supported: Keychron K4 Pro -* Hardware Availability: [Keychron K4 Pro QMK/VIA Wireless Mechanical Keyboard](https://www.keychron.com/products/keychron-k4-pro-qmk-via-wireless-mechanical-keyboard) - -Make example for this keyboard (after setting up your build environment): - - make keychron/k4_pro/ansi/rgb:default - -Flashing example for this keyboard: - - make keychron/k4_pro/ansi/rgb:default:flash - -**Reset Key**: Connect the USB cable, toggle mode switch to "Off", hold down the *Esc* key or reset button underneath space bar, then toggle then switch to "Cable". - -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). diff --git a/keyboards/keychron/k4_pro/rules.mk b/keyboards/keychron/k4_pro/rules.mk deleted file mode 100644 index 8e536fc345..0000000000 --- a/keyboards/keychron/k4_pro/rules.mk +++ /dev/null @@ -1,9 +0,0 @@ -# Enter lower-power sleep mode when on the ChibiOS idle thread -OPT_DEFS += -DCORTEX_ENABLE_WFI_IDLE=TRUE -OPT_DEFS += -DNO_USB_STARTUP_CHECK -DENABLE_FACTORY_TEST - -SRC += matrix.c - -include keyboards/keychron/bluetooth/bluetooth.mk - - diff --git a/keyboards/keychron/k4_pro/via_json/k4_pro_ansi_rgb.json b/keyboards/keychron/k4_pro/via_json/k4_pro_ansi_rgb.json deleted file mode 100644 index 359eccb90c..0000000000 --- a/keyboards/keychron/k4_pro/via_json/k4_pro_ansi_rgb.json +++ /dev/null @@ -1,318 +0,0 @@ -{ - "name": "Keychron K4 Pro", - "vendorId": "0x3434", - "productId": "0x0240", - "keycodes": ["qmk_lighting"], - "menus": [ - { - "label": "Lighting", - "content": [ - { - "label": "Backlight", - "content": [ - { - "label": "Brightness", - "type": "range", - "options": [0, 255], - "content": ["id_qmk_rgb_matrix_brightness", 3, 1] - }, - { - "label": "Effect", - "type": "dropdown", - "content": ["id_qmk_rgb_matrix_effect", 3, 2], - "options": [ - ["None", 0], - ["Solid Color", 1], - ["Breathing", 2], - ["Band Spiral Val", 3], - ["Cycle All", 4], - ["Cycle Left Right", 5], - ["Cycle Up Down", 6], - ["Rainbow Moving Chevron", 7], - ["Cycle Out In", 8], - ["Cycle Out In Dual", 9], - ["Cycle Pinwheel", 10], - ["Cycle Spiral", 11], - ["Dual Beacon", 12], - ["Rainbow Beacon", 13], - ["Jellybean Raindrops", 14], - ["Pixel Rain", 15], - ["Typing Heatmap", 16], - ["Digital Rain", 17], - ["Reactive Simple", 18], - ["Reactive Multiwide", 19], - ["Reactive Multinexus", 20], - ["Splash", 21], - ["Solid Splash", 22] - ] - }, - { - "showIf": "{id_qmk_rgb_matrix_effect} > 1", - "label": "Effect Speed", - "type": "range", - "options": [0, 255], - "content": ["id_qmk_rgb_matrix_effect_speed", 3, 3] - }, - { - "showIf": "{id_qmk_rgb_matrix_effect} != 0 && ( {id_qmk_rgb_matrix_effect} < 4 || {id_qmk_rgb_matrix_effect} == 18 || ({id_qmk_rgb_matrix_effect} > 17 && {id_qmk_rgb_matrix_effect} != 21) ) ", - "label": "Color", - "type": "color", - "content": ["id_qmk_rgb_matrix_color", 3, 4] - } - ] - } - ] - } - ], - "customKeycodes": [ - {"name": "Left Option", "title": "Left Option", "shortName": "LOpt"}, - {"name": "Right Option", "title": "Right Option", "shortName": "ROpt"}, - {"name": "Left Cmd", "title": "Left Command", "shortName": "LCmd"}, - {"name": "Right Cmd", "title": "Right Command", "shortName": "RCmd"}, - {"name": "Task View", "title": "Task View in Windows", "shortName": "Task"}, - {"name": "File Explorer", "title": "File Explorer in Windows", "shortName": "File"}, - {"name": "Screen shot", "title": "Screenshot in macOS", "shortName": "SShot"}, - {"name": "Cortana", "title": "Cortana in Windows", "shortName": "Cortana"}, - {"name": "Siri", "title": "Siri in macOS", "shortName": "Siri"}, - {"name": "Bluetooth Host 1", "title": "Bluetooth Host 1", "shortName": "BTH1"}, - {"name": "Bluetooth Host 2", "title": "Bluetooth Host 2", "shortName": "BTH2"}, - {"name": "Bluetooth Host 3", "title": "Bluetooth Host 3", "shortName": "BTH3"}, - {"name": "Battery Level", "title": "Show battery level", "shortName": "Batt"} - ], - "matrix": {"rows": 6, "cols": 18}, - "layouts": { - "keymap": [ - [ - { - "c": "#777777" - }, - "0,0", - { - "c": "#cccccc" - }, - "0,1", - "0,2", - "0,3", - "0,4", - { - "c": "#aaaaaa" - }, - "0,5", - "0,6", - "0,7", - "0,8", - "0,9", - { - "c": "#cccccc" - }, - "0,10", - "0,11", - "0,12", - { - "c": "#aaaaaa" - }, - "0,13", - "0,14", - { - "x": 0.5 - }, - "0,15", - "0,16", - "0,17", - "3,17" - ], - [ - { - "y": 0.25 - }, - "1,0", - { - "c": "#cccccc" - }, - "1,1", - "1,2", - "1,3", - "1,4", - "1,5", - "1,6", - "1,7", - "1,8", - "1,9", - "1,10", - "1,11", - "1,12", - { - "c": "#aaaaaa", - "w": 2 - }, - "1,13", - { - "x": 0.5, - "c": "#cccccc" - }, - "1,14", - "1,15", - "1,16", - "1,17" - ], - [ - { - "c": "#aaaaaa", - "w": 1.5 - }, - "2,0", - { - "c": "#cccccc" - }, - "2,1", - "2,2", - "2,3", - "2,4", - "2,5", - "2,6", - "2,7", - "2,8", - "2,9", - "2,10", - "2,11", - "2,12", - { - "c": "#aaaaaa", - "w": 1.5 - }, - "2,13", - { - "x": 0.5600000000000005, - "c": "#cccccc" - }, - "2,14", - "2,15", - "2,16", - { - "h": 2 - }, - "2,17" - ], - [ - { - "c": "#aaaaaa", - "w": 1.75 - }, - "3,0", - { - "c": "#cccccc" - }, - "3,1", - "3,2", - "3,3", - "3,4", - "3,5", - "3,6", - "3,7", - "3,8", - "3,9", - "3,10", - "3,11", - { - "c": "#777777", - "w": 2.25 - }, - "3,13", - { - "x": 0.5600000000000005, - "c": "#cccccc" - }, - "3,14", - "3,15", - "3,16" - ], - [ - { - "c": "#aaaaaa", - "w": 2.25 - }, - "4,0", - { - "c": "#cccccc" - }, - "4,2", - "4,3", - "4,4", - "4,5", - "4,6", - "4,7", - "4,8", - "4,9", - "4,10", - "4,11", - { - "c": "#aaaaaa", - "w": 1.75 - }, - "4,12", - { - "x": 1.5599999999999987, - "c": "#cccccc" - }, - "4,14", - "4,15", - "4,16", - { - "h": 2 - }, - "4,17" - ], - [ - { - "y": -0.75, - "x": 14.28, - "c": "#777777" - }, - "4,13" - ], - [ - { - "y": -0.25, - "c": "#aaaaaa", - "w": 1.25 - }, - "5,0", - { - "w": 1.25 - }, - "5,1", - { - "w": 1.25 - }, - "5,2", - { - "c": "#cccccc", - "w": 6.25 - }, - "5,6", - { - "c": "#aaaaaa" - }, - "5,10", - "5,11", - "5,12", - { - "x": 3.5600000000000023, - "c": "#cccccc" - }, - "5,16", - "5,17" - ], - [ - { - "y": -0.75, - "x": 13.28, - "c": "#777777" - }, - "5,13", - "5,14", - "5,15" - ] - ] - } -} diff --git a/keyboards/keychron/k4_pro/via_json/k4_pro_ansi_white.json b/keyboards/keychron/k4_pro/via_json/k4_pro_ansi_white.json deleted file mode 100644 index 5a3d59ef7f..0000000000 --- a/keyboards/keychron/k4_pro/via_json/k4_pro_ansi_white.json +++ /dev/null @@ -1,257 +0,0 @@ -{ - "name": "Keychron K4 Pro", - "vendorId": "0x3434", - "productId": "0x0243", - "keycodes": ["qmk_lighting"], - "customKeycodes": [ - {"name": "Left Option", "title": "Left Option", "shortName": "LOpt"}, - {"name": "Right Option", "title": "Right Option", "shortName": "ROpt"}, - {"name": "Left Cmd", "title": "Left Command", "shortName": "LCmd"}, - {"name": "Right Cmd", "title": "Right Command", "shortName": "RCmd"}, - {"name": "Task View", "title": "Task View in Windows", "shortName": "Task"}, - {"name": "File Explorer", "title": "File Explorer in Windows", "shortName": "File"}, - {"name": "Screen shot", "title": "Screenshot in macOS", "shortName": "SShot"}, - {"name": "Cortana", "title": "Cortana in Windows", "shortName": "Cortana"}, - {"name": "Siri", "title": "Siri in macOS", "shortName": "Siri"}, - {"name": "Bluetooth Host 1", "title": "Bluetooth Host 1", "shortName": "BTH1"}, - {"name": "Bluetooth Host 2", "title": "Bluetooth Host 2", "shortName": "BTH2"}, - {"name": "Bluetooth Host 3", "title": "Bluetooth Host 3", "shortName": "BTH3"}, - {"name": "Battery Level", "title": "Show battery level", "shortName": "Batt"} - ], - "matrix": {"rows": 6, "cols": 18}, - "layouts": { - "keymap": [ - [ - { - "c": "#777777" - }, - "0,0", - { - "c": "#cccccc" - }, - "0,1", - "0,2", - "0,3", - "0,4", - { - "c": "#aaaaaa" - }, - "0,5", - "0,6", - "0,7", - "0,8", - "0,9", - { - "c": "#cccccc" - }, - "0,10", - "0,11", - "0,12", - { - "c": "#aaaaaa" - }, - "0,13", - "0,14", - { - "x": 0.5500000000000007 - }, - "0,15", - "0,16", - "0,17", - "3,17" - ], - [ - { - "y": 0.26 - }, - "1,0", - { - "c": "#cccccc" - }, - "1,1", - "1,2", - "1,3", - "1,4", - "1,5", - "1,6", - "1,7", - "1,8", - "1,9", - "1,10", - "1,11", - "1,12", - { - "c": "#aaaaaa", - "w": 2 - }, - "1,13", - { - "x": 0.5500000000000007, - "c": "#cccccc" - }, - "1,14", - "1,15", - "1,16", - "1,17" - ], - [ - { - "c": "#aaaaaa", - "w": 1.5 - }, - "2,0", - { - "c": "#cccccc" - }, - "2,1", - "2,2", - "2,3", - "2,4", - "2,5", - "2,6", - "2,7", - "2,8", - "2,9", - "2,10", - "2,11", - "2,12", - { - "c": "#aaaaaa", - "w": 1.5 - }, - "2,13", - { - "x": 0.5600000000000005, - "c": "#cccccc" - }, - "2,14", - "2,15", - "2,16", - { - "h": 2 - }, - "2,17" - ], - [ - { - "c": "#aaaaaa", - "w": 1.75 - }, - "3,0", - { - "c": "#cccccc" - }, - "3,1", - "3,2", - "3,3", - "3,4", - "3,5", - "3,6", - "3,7", - "3,8", - "3,9", - "3,10", - "3,11", - { - "c": "#777777", - "w": 2.25 - }, - "3,13", - { - "x": 0.5600000000000005, - "c": "#cccccc" - }, - "3,14", - "3,15", - "3,16" - ], - [ - { - "c": "#aaaaaa", - "w": 2.25 - }, - "4,0", - { - "c": "#cccccc" - }, - "4,2", - "4,3", - "4,4", - "4,5", - "4,6", - "4,7", - "4,8", - "4,9", - "4,10", - "4,11", - { - "c": "#aaaaaa", - "w": 1.75 - }, - "4,12", - { - "x": 1.5599999999999987, - "c": "#cccccc" - }, - "4,14", - "4,15", - "4,16", - { - "h": 2 - }, - "4,17" - ], - [ - { - "y": -0.75, - "x": 14.28, - "c": "#777777" - }, - "4,13" - ], - [ - { - "y": -0.25, - "c": "#aaaaaa", - "w": 1.25 - }, - "5,0", - { - "w": 1.25 - }, - "5,1", - { - "w": 1.25 - }, - "5,2", - { - "c": "#cccccc", - "w": 6.25 - }, - "5,6", - { - "c": "#aaaaaa" - }, - "5,10", - "5,11", - "5,12", - { - "x": 3.5600000000000023, - "c": "#cccccc" - }, - "5,16", - "5,17" - ], - [ - { - "y": -0.75, - "x": 13.28, - "c": "#777777" - }, - "5,13", - "5,14", - "5,15" - ] - ] - } -} diff --git a/keyboards/keychron/k4_pro/via_json/k4_pro_iso_rgb.json b/keyboards/keychron/k4_pro/via_json/k4_pro_iso_rgb.json deleted file mode 100644 index 89e0386619..0000000000 --- a/keyboards/keychron/k4_pro/via_json/k4_pro_iso_rgb.json +++ /dev/null @@ -1,324 +0,0 @@ -{ - "name": "Keychron K4 Pro", - "vendorId": "0x3434", - "productId": "0x0241", - "keycodes": ["qmk_lighting"], - "menus": [ - { - "label": "Lighting", - "content": [ - { - "label": "Backlight", - "content": [ - { - "label": "Brightness", - "type": "range", - "options": [0, 255], - "content": ["id_qmk_rgb_matrix_brightness", 3, 1] - }, - { - "label": "Effect", - "type": "dropdown", - "content": ["id_qmk_rgb_matrix_effect", 3, 2], - "options": [ - ["None", 0], - ["Solid Color", 1], - ["Breathing", 2], - ["Band Spiral Val", 3], - ["Cycle All", 4], - ["Cycle Left Right", 5], - ["Cycle Up Down", 6], - ["Rainbow Moving Chevron", 7], - ["Cycle Out In", 8], - ["Cycle Out In Dual", 9], - ["Cycle Pinwheel", 10], - ["Cycle Spiral", 11], - ["Dual Beacon", 12], - ["Rainbow Beacon", 13], - ["Jellybean Raindrops", 14], - ["Pixel Rain", 15], - ["Typing Heatmap", 16], - ["Digital Rain", 17], - ["Reactive Simple", 18], - ["Reactive Multiwide", 19], - ["Reactive Multinexus", 20], - ["Splash", 21], - ["Solid Splash", 22] - ] - }, - { - "showIf": "{id_qmk_rgb_matrix_effect} > 1", - "label": "Effect Speed", - "type": "range", - "options": [0, 255], - "content": ["id_qmk_rgb_matrix_effect_speed", 3, 3] - }, - { - "showIf": "{id_qmk_rgb_matrix_effect} != 0 && ( {id_qmk_rgb_matrix_effect} < 4 || {id_qmk_rgb_matrix_effect} == 18 || ({id_qmk_rgb_matrix_effect} > 17 && {id_qmk_rgb_matrix_effect} != 21) ) ", - "label": "Color", - "type": "color", - "content": ["id_qmk_rgb_matrix_color", 3, 4] - } - ] - } - ] - } - ], - "customKeycodes": [ - {"name": "Left Option", "title": "Left Option", "shortName": "LOpt"}, - {"name": "Right Option", "title": "Right Option", "shortName": "ROpt"}, - {"name": "Left Cmd", "title": "Left Command", "shortName": "LCmd"}, - {"name": "Right Cmd", "title": "Right Command", "shortName": "RCmd"}, - {"name": "Task View", "title": "Task View in Windows", "shortName": "Task"}, - {"name": "File Explorer", "title": "File Explorer in Windows", "shortName": "File"}, - {"name": "Screen shot", "title": "Screenshot in macOS", "shortName": "SShot"}, - {"name": "Cortana", "title": "Cortana in Windows", "shortName": "Cortana"}, - {"name": "Siri", "title": "Siri in macOS", "shortName": "Siri"}, - {"name": "Bluetooth Host 1", "title": "Bluetooth Host 1", "shortName": "BTH1"}, - {"name": "Bluetooth Host 2", "title": "Bluetooth Host 2", "shortName": "BTH2"}, - {"name": "Bluetooth Host 3", "title": "Bluetooth Host 3", "shortName": "BTH3"}, - {"name": "Battery Level", "title": "Show battery level", "shortName": "Batt"} - ], - "matrix": {"rows": 6, "cols": 18}, - "layouts": { - "keymap": [ - [ - { - "c": "#777777" - }, - "0,0", - { - "c": "#cccccc" - }, - "0,1", - "0,2", - "0,3", - "0,4", - { - "c": "#aaaaaa" - }, - "0,5", - "0,6", - "0,7", - "0,8", - "0,9", - { - "c": "#cccccc" - }, - "0,10", - "0,11", - "0,12", - { - "c": "#aaaaaa" - }, - "0,13", - "0,14", - { - "x": 0.5 - }, - "0,15", - "0,16", - "0,17", - "3,17" - ], - [ - { - "y": 0.25 - }, - "1,0", - { - "c": "#cccccc" - }, - "1,1", - "1,2", - "1,3", - "1,4", - "1,5", - "1,6", - "1,7", - "1,8", - "1,9", - "1,10", - "1,11", - "1,12", - { - "c": "#aaaaaa", - "w": 2 - }, - "1,13", - { - "x": 0.5, - "c": "#cccccc" - }, - "1,14", - "1,15", - "1,16", - "1,17" - ], - [ - { - "c": "#aaaaaa", - "w": 1.5 - }, - "2,0", - { - "c": "#cccccc" - }, - "2,1", - "2,2", - "2,3", - "2,4", - "2,5", - "2,6", - "2,7", - "2,8", - "2,9", - "2,10", - "2,11", - "2,12", - { - "x": 2, - "c": "#cccccc" - }, - "2,14", - "2,15", - "2,16", - { - "h": 2 - }, - "2,17" - ], - [ - { - "c": "#aaaaaa", - "w": 1.75 - }, - "3,0", - { - "c": "#cccccc" - }, - "3,1", - "3,2", - "3,3", - "3,4", - "3,5", - "3,6", - "3,7", - "3,8", - "3,9", - "3,10", - "3,11", - { - "c": "#aaaaaa" - }, - "3,13", - { - "y": -1, - "c": "#777777", - "w": 1.25, - "h": 2, - "w2": 1.5, - "h2": 1, - "x2": -0.25 - }, - "2,13", - { - "x": 0.5, - "y": 1, - "c": "#cccccc" - }, - "3,14", - "3,15", - "3,16" - ], - [ - { - "c": "#aaaaaa", - "w": 1.25 - }, - "4,0", - "4,1", - { - "c": "#cccccc" - }, - "4,2", - "4,3", - "4,4", - "4,5", - "4,6", - "4,7", - "4,8", - "4,9", - "4,10", - "4,11", - { - "c": "#aaaaaa", - "w": 1.75 - }, - "4,12", - { - "x": 1.5, - "c": "#cccccc" - }, - "4,14", - "4,15", - "4,16", - { - "h": 2 - }, - "4,17" - ], - [ - { - "y": -0.75, - "x": 14.25, - "c": "#777777" - }, - "4,13" - ], - [ - { - "y": -0.25, - "c": "#aaaaaa", - "w": 1.25 - }, - "5,0", - { - "w": 1.25 - }, - "5,1", - { - "w": 1.25 - }, - "5,2", - { - "c": "#cccccc", - "w": 6.25 - }, - "5,6", - { - "c": "#aaaaaa" - }, - "5,10", - "5,11", - "5,12", - { - "x": 3.5, - "c": "#cccccc" - }, - "5,16", - "5,17" - ], - [ - { - "y": -0.75, - "x": 13.25, - "c": "#777777" - }, - "5,13", - "5,14", - "5,15" - ] - ] - } -} diff --git a/keyboards/keychron/k4_pro/via_json/k4_pro_iso_white.json b/keyboards/keychron/k4_pro/via_json/k4_pro_iso_white.json deleted file mode 100644 index ca2fa4f1de..0000000000 --- a/keyboards/keychron/k4_pro/via_json/k4_pro_iso_white.json +++ /dev/null @@ -1,264 +0,0 @@ -{ - "name": "Keychron K4 Pro", - "vendorId": "0x3434", - "productId": "0x0244", - "keycodes": ["qmk_lighting"], - "customKeycodes": [ - {"name": "Left Option", "title": "Left Option", "shortName": "LOpt"}, - {"name": "Right Option", "title": "Right Option", "shortName": "ROpt"}, - {"name": "Left Cmd", "title": "Left Command", "shortName": "LCmd"}, - {"name": "Right Cmd", "title": "Right Command", "shortName": "RCmd"}, - {"name": "Task View", "title": "Task View in Windows", "shortName": "Task"}, - {"name": "File Explorer", "title": "File Explorer in Windows", "shortName": "File"}, - {"name": "Screen shot", "title": "Screenshot in macOS", "shortName": "SShot"}, - {"name": "Cortana", "title": "Cortana in Windows", "shortName": "Cortana"}, - {"name": "Siri", "title": "Siri in macOS", "shortName": "Siri"}, - {"name": "Bluetooth Host 1", "title": "Bluetooth Host 1", "shortName": "BTH1"}, - {"name": "Bluetooth Host 2", "title": "Bluetooth Host 2", "shortName": "BTH2"}, - {"name": "Bluetooth Host 3", "title": "Bluetooth Host 3", "shortName": "BTH3"}, - {"name": "Battery Level", "title": "Show battery level", "shortName": "Batt"} - ], - "matrix": {"rows": 6, "cols": 18}, - "layouts": { - "keymap": [ - [ - { - "c": "#777777" - }, - "0,0", - { - "c": "#cccccc" - }, - "0,1", - "0,2", - "0,3", - "0,4", - { - "c": "#aaaaaa" - }, - "0,5", - "0,6", - "0,7", - "0,8", - "0,9", - { - "c": "#cccccc" - }, - "0,10", - "0,11", - "0,12", - { - "c": "#aaaaaa" - }, - "0,13", - "0,14", - { - "x": 0.5 - }, - "0,15", - "0,16", - "0,17", - "3,17" - ], - [ - { - "y": 0.25 - }, - "1,0", - { - "c": "#cccccc" - }, - "1,1", - "1,2", - "1,3", - "1,4", - "1,5", - "1,6", - "1,7", - "1,8", - "1,9", - "1,10", - "1,11", - "1,12", - { - "c": "#aaaaaa", - "w": 2 - }, - "1,13", - { - "x": 0.5, - "c": "#cccccc" - }, - "1,14", - "1,15", - "1,16", - "1,17" - ], - [ - { - "c": "#aaaaaa", - "w": 1.5 - }, - "2,0", - { - "c": "#cccccc" - }, - "2,1", - "2,2", - "2,3", - "2,4", - "2,5", - "2,6", - "2,7", - "2,8", - "2,9", - "2,10", - "2,11", - "2,12", - { - "x": 0.5, - "c": "#cccccc" - }, - "2,14", - "2,15", - "2,16", - { - "h": 2 - }, - "2,17" - ], - [ - { - "c": "#aaaaaa", - "w": 1.75 - }, - "3,0", - { - "c": "#cccccc" - }, - "3,1", - "3,2", - "3,3", - "3,4", - "3,5", - "3,6", - "3,7", - "3,8", - "3,9", - "3,10", - "3,11", - { - "c": "#aaaaaa" - }, - "3,13", - { - "y": -1, - "c": "#777777", - "w": 1.25, - "h": 2, - "w2": 1.5, - "h2": 1, - "x2": -0.25 - }, - "2,13", - { - "x": 0.5, - "y": 1, - "c": "#cccccc" - }, - "3,14", - "3,15", - "3,16" - - ], - [ - { - "c": "#aaaaaa", - "w": 1.25 - }, - "4,0", - "4,1", - { - "c": "#cccccc" - }, - "4,2", - "4,3", - "4,4", - "4,5", - "4,6", - "4,7", - "4,8", - "4,9", - "4,10", - "4,11", - { - "c": "#aaaaaa", - "w": 1.75 - }, - "4,12", - { - "x": 1.5, - "c": "#cccccc" - }, - "4,14", - "4,15", - "4,16", - { - "h": 2 - }, - "4,17" - ], - [ - { - "y": -0.75, - "x": 14.25, - "c": "#777777" - }, - "4,13" - ], - [ - { - "y": -0.25, - "c": "#aaaaaa", - "w": 1.25 - }, - "5,0", - { - "w": 1.25 - }, - "5,1", - { - "w": 1.25 - }, - "5,2", - { - "c": "#cccccc", - "w": 6.25 - }, - "5,6", - { - "c": "#aaaaaa" - }, - "5,10", - "5,11", - "5,12", - { - "x": 3.5, - "c": "#cccccc" - }, - "5,16", - "5,17" - ], - [ - { - "y": -0.75, - "x": 13.25, - "c": "#777777" - }, - "5,13", - "5,14", - "5,15" - ] - ] - } -} diff --git a/keyboards/keychron/k5_max/ansi/rgb/config.h b/keyboards/keychron/k5_max/ansi/rgb/config.h deleted file mode 100644 index 85e913346a..0000000000 --- a/keyboards/keychron/k5_max/ansi/rgb/config.h +++ /dev/null @@ -1,55 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#pragma once - -#ifdef RGB_MATRIX_ENABLE -/* RGB Matrix driver configuration */ -# define DRIVER_COUNT 2 -# define RGB_MATRIX_LED_COUNT 108 - -# define SPI_SCK_PIN A5 -# define SPI_MISO_PIN A6 -# define SPI_MOSI_PIN A7 - -# define DRIVER_CS_PINS \ - { B8, B9 } -# define SNLED23751_SPI_DIVISOR 16 -# define SPI_DRIVER SPID1 - -/* Scan phase of led driver set as MSKPHASE_9CHANNEL(defined as 0x03 in snled27351.h) */ -# define PHASE_CHANNEL MSKPHASE_12CHANNEL - -/* Set LED driver current */ -# define SNLED27351_CURRENT_TUNE \ - { 0x12, 0x12, 0x12, 0x12, 0x12, 0x12, 0x12, 0x12, 0x12, 0x12, 0x12, 0x12 } - -/* Set to infinit, which is use in USB mode by default */ -# define RGB_MATRIX_TIMEOUT RGB_MATRIX_TIMEOUT_INFINITE - -/* Allow shutdown of led driver to save power */ -# define RGB_MATRIX_DRIVER_SHUTDOWN_ENABLE -/* Turn off backlight on low brightness to save power */ -# define RGB_MATRIX_BRIGHTNESS_TURN_OFF_VAL 48 - -/* Indications */ -# define LOW_BAT_IND_INDEX \ - { 98 } - -# define RGB_MATRIX_KEYPRESSES -# define RGB_MATRIX_FRAMEBUFFER_EFFECTS - -#endif diff --git a/keyboards/keychron/k5_max/ansi/rgb/info.json b/keyboards/keychron/k5_max/ansi/rgb/info.json deleted file mode 100644 index 36d2b441f2..0000000000 --- a/keyboards/keychron/k5_max/ansi/rgb/info.json +++ /dev/null @@ -1,36 +0,0 @@ -{ - "usb": { - "pid": "0x0A50", - "device_version": "1.0.0" - }, - "features": { - "rgb_matrix": true - }, - "rgb_matrix": { - "driver": "snled27351_spi", - "sleep": true, - "animations": { - "band_spiral_val": true, - "breathing": true, - "cycle_all": true, - "cycle_left_right": true, - "cycle_out_in": true, - "cycle_out_in_dual": true, - "cycle_pinwheel": true, - "cycle_spiral": true, - "cycle_up_down": true, - "digital_rain": true, - "dual_beacon": true, - "jellybean_raindrops": true, - "pixel_rain": true, - "rainbow_beacon": true, - "rainbow_moving_chevron": true, - "solid_reactive_multinexus": true, - "solid_reactive_multiwide": true, - "solid_reactive_simple": true, - "solid_splash": true, - "splash": true, - "typing_heatmap": true - } - } -} diff --git a/keyboards/keychron/k5_max/ansi/rgb/keymaps/default/keymap.c b/keyboards/keychron/k5_max/ansi/rgb/keymaps/default/keymap.c deleted file mode 100644 index d14b8b1c6d..0000000000 --- a/keyboards/keychron/k5_max/ansi/rgb/keymaps/default/keymap.c +++ /dev/null @@ -1,68 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#include QMK_KEYBOARD_H -#include "keychron_common.h" - -enum layers { - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN, -}; - -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_108_ansi( - KC_ESC, KC_BRID, KC_BRIU, KC_MCTRL, KC_LNPAD, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_SNAP, KC_SIRI, RGB_MOD, KC_F13, KC_F14, KC_F15, KC_F16, - KC_GRV, 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_INS, KC_HOME, KC_PGUP, KC_NUM, KC_PSLS, KC_PAST, KC_PMNS, - 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_DEL, KC_END, KC_PGDN, KC_P7, KC_P8, KC_P9, - 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_P4, KC_P5, KC_P6, KC_PPLS, - 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_P1, KC_P2, KC_P3, - KC_LCTL, KC_LOPTN, KC_LCMMD, KC_SPC, KC_RCMMD, KC_ROPTN,MO(MAC_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT, KC_P0, KC_PDOT, KC_PENT), - - [MAC_FN] = LAYOUT_108_ansi( - _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, RGB_TOG, _______, _______, _______, _______, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - - [WIN_BASE] = LAYOUT_108_ansi( - KC_ESC, 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_PSCR, KC_CTANA, RGB_MOD, _______, _______, _______, _______, - KC_GRV, 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_INS, KC_HOME, KC_PGUP, KC_NUM, KC_PSLS, KC_PAST, KC_PMNS, - 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_DEL, KC_END, KC_PGDN, KC_P7, KC_P8, KC_P9, - 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_P4, KC_P5, KC_P6, KC_PPLS, - 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_P1, KC_P2, KC_P3, - KC_LCTL, KC_LWIN, KC_LALT, KC_SPC, KC_RALT, KC_RWIN, MO(WIN_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT, KC_P0, KC_PDOT, KC_PENT), - - [WIN_FN] = LAYOUT_108_ansi( - _______, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, RGB_TOG, _______, _______, _______, _______, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), -}; - -// clang-format on -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - if (!process_record_keychron_common(keycode, record)) { - return false; - } - return true; -} diff --git a/keyboards/keychron/k5_max/ansi/rgb/keymaps/infraviolet/config.h b/keyboards/keychron/k5_max/ansi/rgb/keymaps/infraviolet/config.h deleted file mode 100644 index 6fe5f6a2a4..0000000000 --- a/keyboards/keychron/k5_max/ansi/rgb/keymaps/infraviolet/config.h +++ /dev/null @@ -1,23 +0,0 @@ -/* Copyright 2025 infraviolet - * - * 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 RGB_MATRIX_SLEEP -#undef RGB_MATRIX_TIMEOUT -#define RGB_MATRIX_TIMEOUT 300000 - -#define USER_LAYER_COUNT 3 diff --git a/keyboards/keychron/k5_max/ansi/rgb/keymaps/infraviolet/keymap.c b/keyboards/keychron/k5_max/ansi/rgb/keymaps/infraviolet/keymap.c deleted file mode 100644 index 6798b84a81..0000000000 --- a/keyboards/keychron/k5_max/ansi/rgb/keymaps/infraviolet/keymap.c +++ /dev/null @@ -1,93 +0,0 @@ -/* Copyright 2025 infraviolet - * - * 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 QMK_KEYBOARD_H -#include "keychron_common.h" -#include "os_detection.h" - -enum layers { - LAYER_BASE, - LAYER_FN, -}; - -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [LAYER_BASE] = LAYOUT_108_ansi( - KC_ESC, 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_PSCR, KC_F13, KC_F18, KC_F14, KC_F15, KC_F16, KC_F17, - KC_GRV, 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_INS, KC_HOME, KC_PGUP, KC_NUM, KC_PSLS, KC_PAST, KC_PMNS, - 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_DEL, KC_END, KC_PGDN, KC_P7, KC_P8, KC_P9, - 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_P4, KC_P5, KC_P6, KC_PPLS, - 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_P1, KC_P2, KC_P3, - KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, KC_RGUI,MO(LAYER_FN),KC_RCTL,KC_LEFT, KC_DOWN, KC_RGHT, KC_P0, KC_PDOT, KC_PENT), - - [LAYER_FN] = LAYOUT_108_ansi( - _______, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, _______, _______, _______, _______, _______, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), -}; - -// clang-format on -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - uint8_t mod_state = get_mods(); - - switch (keycode) { - case KC_SPC: - // If the keypress is space and we only have shift pressed, send KC_MINS (which when shifted gives underscore) instead of KC_SPC. - // This will allow us to still use key combos that include space _and_ shift _and_ some other modifier. - if (mod_state & MOD_MASK_SHIFT && !(mod_state & MOD_MASK_CAG)) { - if (record->event.pressed) { - register_code(KC_MINS); - } else { - unregister_code(KC_MINS); - } - return false; - } - return true; - - default: - return true; - } -} - -void keyboard_post_init_user(void) { - rgb_matrix_mode_noeeprom(RGB_MATRIX_BREATHING); - rgb_matrix_sethsv_noeeprom(HSV_PURPLE); - rgb_matrix_set_speed_noeeprom(32); -} - -bool dip_switch_update_user(uint8_t index, bool active) { - // reuse the macos/windows toggle that we don't want to use as a keyboard backlight toggle. - if (index == 0) { - if (active) { - rgb_matrix_disable_noeeprom(); - } else { - rgb_matrix_enable_noeeprom(); - } - return false; - } - return true; -} - -void eeconfig_init_user(void) { - // configure RGB - rgb_matrix_enable(); - rgb_matrix_mode(RGB_MATRIX_BREATHING); - rgb_matrix_sethsv(HSV_PURPLE); - rgb_matrix_set_speed(32); -} diff --git a/keyboards/keychron/k5_max/ansi/rgb/keymaps/infraviolet/rules.mk b/keyboards/keychron/k5_max/ansi/rgb/keymaps/infraviolet/rules.mk deleted file mode 100644 index 64ac3dcb16..0000000000 --- a/keyboards/keychron/k5_max/ansi/rgb/keymaps/infraviolet/rules.mk +++ /dev/null @@ -1 +0,0 @@ -OS_DETECTION_ENABLE = yes diff --git a/keyboards/keychron/k5_max/ansi/rgb/keymaps/via/keymap.c b/keyboards/keychron/k5_max/ansi/rgb/keymaps/via/keymap.c deleted file mode 100644 index d14b8b1c6d..0000000000 --- a/keyboards/keychron/k5_max/ansi/rgb/keymaps/via/keymap.c +++ /dev/null @@ -1,68 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#include QMK_KEYBOARD_H -#include "keychron_common.h" - -enum layers { - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN, -}; - -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_108_ansi( - KC_ESC, KC_BRID, KC_BRIU, KC_MCTRL, KC_LNPAD, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_SNAP, KC_SIRI, RGB_MOD, KC_F13, KC_F14, KC_F15, KC_F16, - KC_GRV, 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_INS, KC_HOME, KC_PGUP, KC_NUM, KC_PSLS, KC_PAST, KC_PMNS, - 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_DEL, KC_END, KC_PGDN, KC_P7, KC_P8, KC_P9, - 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_P4, KC_P5, KC_P6, KC_PPLS, - 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_P1, KC_P2, KC_P3, - KC_LCTL, KC_LOPTN, KC_LCMMD, KC_SPC, KC_RCMMD, KC_ROPTN,MO(MAC_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT, KC_P0, KC_PDOT, KC_PENT), - - [MAC_FN] = LAYOUT_108_ansi( - _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, RGB_TOG, _______, _______, _______, _______, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - - [WIN_BASE] = LAYOUT_108_ansi( - KC_ESC, 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_PSCR, KC_CTANA, RGB_MOD, _______, _______, _______, _______, - KC_GRV, 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_INS, KC_HOME, KC_PGUP, KC_NUM, KC_PSLS, KC_PAST, KC_PMNS, - 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_DEL, KC_END, KC_PGDN, KC_P7, KC_P8, KC_P9, - 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_P4, KC_P5, KC_P6, KC_PPLS, - 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_P1, KC_P2, KC_P3, - KC_LCTL, KC_LWIN, KC_LALT, KC_SPC, KC_RALT, KC_RWIN, MO(WIN_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT, KC_P0, KC_PDOT, KC_PENT), - - [WIN_FN] = LAYOUT_108_ansi( - _______, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, RGB_TOG, _______, _______, _______, _______, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), -}; - -// clang-format on -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - if (!process_record_keychron_common(keycode, record)) { - return false; - } - return true; -} diff --git a/keyboards/keychron/k5_max/ansi/rgb/keymaps/via/rules.mk b/keyboards/keychron/k5_max/ansi/rgb/keymaps/via/rules.mk deleted file mode 100644 index 1e5b99807c..0000000000 --- a/keyboards/keychron/k5_max/ansi/rgb/keymaps/via/rules.mk +++ /dev/null @@ -1 +0,0 @@ -VIA_ENABLE = yes diff --git a/keyboards/keychron/k5_max/ansi/rgb/rgb.c b/keyboards/keychron/k5_max/ansi/rgb/rgb.c deleted file mode 100644 index 5d95d6ec86..0000000000 --- a/keyboards/keychron/k5_max/ansi/rgb/rgb.c +++ /dev/null @@ -1,174 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#include "quantum.h" - -// clang-format off -#ifdef RGB_MATRIX_ENABLE -const snled27351_led_t g_snled27351_leds[RGB_MATRIX_LED_COUNT] = { -/* Refer to SNLED27351 manual for these locations - * driver - * | R location - * | | G location - * | | | B location - * | | | | */ - {0, G_1, I_1, H_1}, - {0, G_2, I_2, H_2}, - {0, G_3, I_3, H_3}, - {0, G_4, I_4, H_4}, - {0, G_5, I_5, H_5}, - {0, G_6, I_6, H_6}, - {0, G_7, I_7, H_7}, - {0, G_8, I_8, H_8}, - {0, G_9, I_9, H_9}, - {0, G_10, I_10, H_10}, - {0, G_11, I_11, H_11}, - {0, G_12, I_12, H_12}, - {0, G_13, I_13, H_13}, - {0, G_15, I_15, H_15}, - {0, G_16, I_16, H_16}, - {0, G_14, I_14, H_14}, - {1, G_13, I_13, H_13}, - {1, G_15, I_15, H_15}, - {1, G_16, I_16, H_16}, - {1, A_15, C_15, B_15}, - - {0, D_1, F_1, E_1}, - {0, D_2, F_2, E_2}, - {0, D_3, F_3, E_3}, - {0, D_4, F_4, E_4}, - {0, D_5, F_5, E_5}, - {0, D_6, F_6, E_6}, - {0, D_7, F_7, E_7}, - {0, D_8, F_8, E_8}, - {0, D_9, F_9, E_9}, - {0, D_10, F_10, E_10}, - {0, D_11, F_11, E_11}, - {0, D_12, F_12, E_12}, - {0, D_13, F_13, E_13}, - {0, D_14, F_14, E_14}, - {0, D_15, F_15, E_15}, - {0, D_16, F_16, E_16}, - {0, J_7, L_7, K_7}, - {0, J_8, L_8, K_8}, - {0, J_9, L_9, K_9}, - {0, J_10, L_10, K_10}, - {0, J_11, L_11, K_11}, - - {0, C_1, A_1, B_1}, - {0, C_2, A_2, B_2}, - {0, C_3, A_3, B_3}, - {0, C_4, A_4, B_4}, - {0, C_5, A_5, B_5}, - {0, C_6, A_6, B_6}, - {0, C_7, A_7, B_7}, - {0, C_8, A_8, B_8}, - {0, C_9, A_9, B_9}, - {0, C_10, A_10, B_10}, - {0, C_11, A_11, B_11}, - {0, C_12, A_12, B_12}, - {0, C_13, A_13, B_13}, - {0, C_14, A_14, B_14}, - {0, C_15, A_15, B_15}, - {0, C_16, A_16, B_16}, - {0, J_12, L_12, K_12}, - {0, J_13, L_13, K_13}, - {0, J_14, L_14, K_14}, - {0, J_15, L_15, K_15}, - {0, J_16, L_16, K_16}, - - {1, G_1, I_1, H_1}, - {1, G_2, I_2, H_2}, - {1, G_3, I_3, H_3}, - {1, G_4, I_4, H_4}, - {1, G_5, I_5, H_5}, - {1, G_6, I_6, H_6}, - {1, G_7, I_7, H_7}, - {1, G_8, I_8, H_8}, - {1, G_9, I_9, H_9}, - {1, G_10, I_10, H_10}, - {1, G_11, I_11, H_11}, - {1, G_12, I_12, H_12}, - {1, G_14, I_14, H_14}, - {1, J_7, L_7, K_7}, - {1, J_8, L_8, K_8}, - {1, J_9, L_9, K_9}, - - {1, A_1, C_1, B_1}, - {1, A_3, C_3, B_3}, - {1, A_4, C_4, B_4}, - {1, A_5, C_5, B_5}, - {1, A_6, C_6, B_6}, - {1, A_7, C_7, B_7}, - {1, A_8, C_8, B_8}, - {1, A_9, C_9, B_9}, - {1, A_10, C_10, B_10}, - {1, A_11, C_11, B_11}, - {1, A_12, C_12, B_12}, - {1, A_14, C_14, B_14}, - {1, A_16, C_16, B_16}, - {1, J_10, L_10, K_10}, - {1, J_11, L_11, K_11}, - {1, J_12, L_12, K_12}, - {1, J_13, L_13, K_13}, - - {1, D_1, F_1, E_1}, - {1, D_2, F_2, E_2}, - {1, D_3, F_3, E_3}, - {1, D_7, F_7, E_7}, - {1, D_11, F_11, E_11}, - {1, D_12, F_12, E_12}, - {1, D_13, F_13, E_13}, - {1, D_14, F_14, E_14}, - {1, D_15, F_15, E_15}, - {1, D_16, F_16, E_16}, - {1, J_14, L_14, K_14}, - {1, J_15, L_15, K_15}, - {1, J_16, L_16, K_16}, -}; - -#define __ NO_LED - -led_config_t g_led_config = { - { - // Key Matrix to LED Index - { 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, 40 }, - { 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61 }, - { 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, __, 74, __, __, __, 75, 76, 77, __ }, - { 78, __, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, __, 89, __, 90, __, 91, 92, 93, 94 }, - { 95, 96, 97, __, __, __, 98, __, __, __, 99, 100, 101, 102, 103, 104, 105, 106, __, 107, __ }, - }, - { - // LED Index to Physical Position - {0, 0}, {21, 0}, {32, 0}, {42, 0}, {53, 0}, {69, 0}, {79, 0}, {90, 0}, {100, 0}, {116, 0}, {127, 0}, {137, 0}, {148, 0}, {160, 0}, {170, 0}, {181, 0}, {192, 0}, {203, 0}, {213, 0}, {224, 0}, - {0,14}, {11,14}, {21,14}, {32,14}, {42,14}, {53,14}, {63,14}, {74,14}, { 84,14}, { 95,14}, {106,14}, {116,14}, {127,14}, {143,14}, {160,14}, {170,14}, {181,14}, {192,14}, {203,14}, {213,14}, {224,14}, - {3,26}, {16,26}, {26,26}, {37,26}, {48,26}, {58,26}, {69,26}, {79,26}, { 90,26}, {100,26}, {111,26}, {121,26}, {132,26}, {145,26}, {160,26}, {170,26}, {181,26}, {192,26}, {203,26}, {213,26}, {224,33}, - {4,39}, {19,39}, {29,39}, {40,39}, {50,39}, {61,39}, {71,39}, {82,39}, { 92,39}, {103,39}, {114,39}, {124,39}, {141,39}, {192,39}, {203,39}, {213,39}, - {7,51}, {24,51}, {34,51}, {45,51}, {55,51}, {66,51}, {77,51}, { 87,51}, { 98,51}, {108,51}, {119,51}, {139,51}, {170,51}, {192,51}, {203,51}, {213,51}, {224,58}, - {1,64}, {15,64}, {28,64}, {67,64}, {107,64}, {120,64}, {133,64}, {147,64}, {160,64}, {170,64}, {181,64}, {198,64}, {213,64}, - }, - { - // RGB LED Index to Flag - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - } -}; -#endif diff --git a/keyboards/keychron/k5_max/ansi/rgb/rules.mk b/keyboards/keychron/k5_max/ansi/rgb/rules.mk deleted file mode 100644 index 6e7633bfe0..0000000000 --- a/keyboards/keychron/k5_max/ansi/rgb/rules.mk +++ /dev/null @@ -1 +0,0 @@ -# This file intentionally left blank diff --git a/keyboards/keychron/k5_max/ansi/white/config.h b/keyboards/keychron/k5_max/ansi/white/config.h deleted file mode 100644 index e40f43ff89..0000000000 --- a/keyboards/keychron/k5_max/ansi/white/config.h +++ /dev/null @@ -1,52 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#pragma once - -#ifdef LED_MATRIX_ENABLE -/* LED matrix driver configuration */ -# define DRIVER_COUNT 1 -# define LED_MATRIX_LED_COUNT 108 - -# define SPI_SCK_PIN A5 -# define SPI_MISO_PIN A6 -# define SPI_MOSI_PIN A7 - -# define DRIVER_CS_PINS \ - { B9 } -# define SNLED23751_SPI_DIVISOR 16 -# define SPI_DRIVER SPID1 - -/* Use first 6 channels of LED driver */ -# define SNLED27351_PHASE_CHANNEL MSKPHASE_8CHANNEL - -/* Set LED driver current */ -# define SNLED27351_CURRENT_TUNE \ - { 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20 } - -/* Set to infinit, which is use in USB mode by default */ -# define LED_MATRIX_TIMEOUT LED_MATRIX_TIMEOUT_INFINITE -/* Allow shutdown of led driver to save power */ -# define LED_MATRIX_DRIVER_SHUTDOWN_ENABLE -/* Turn off backlight on low brightness to save power */ -# define LED_MATRIX_BRIGHTNESS_TURN_OFF_VAL 48 - -/* Indications */ -# define LOW_BAT_IND_INDEX \ - { 98 } - -# define LED_MATRIX_KEYPRESSES -#endif diff --git a/keyboards/keychron/k5_max/ansi/white/info.json b/keyboards/keychron/k5_max/ansi/white/info.json deleted file mode 100644 index e031f22b73..0000000000 --- a/keyboards/keychron/k5_max/ansi/white/info.json +++ /dev/null @@ -1,30 +0,0 @@ -{ - "usb": { - "pid": "0x0A53", - "device_version": "1.0.0" - }, - "features": { - "led_matrix": true - }, - "led_matrix": { - "driver": "snled27351_spi", - "sleep": true, - "animations": { - "none": true, - "solid": true, - "breathing": true, - "band_pinwheel": true, - "band_spiral": true, - "cycle_left_right": true, - "cycle_up_down": true, - "cycle_out_in": true, - "dual_beacon": true, - "solid_reactive_simple": true, - "solid_reactive_multiwide": true, - "solid_reactive_multinexus": true, - "solid_splash": true, - "wave_left_right": true, - "wave_up_down": true - } - } -} diff --git a/keyboards/keychron/k5_max/ansi/white/keymaps/default/keymap.c b/keyboards/keychron/k5_max/ansi/white/keymaps/default/keymap.c deleted file mode 100644 index 2ea0c3daef..0000000000 --- a/keyboards/keychron/k5_max/ansi/white/keymaps/default/keymap.c +++ /dev/null @@ -1,68 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#include QMK_KEYBOARD_H -#include "keychron_common.h" - -enum layers { - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN, -}; - -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_108_ansi( - KC_ESC, KC_BRID, KC_BRIU, KC_MCTRL, KC_LNPAD, BL_DOWN, BL_UP, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_SNAP, KC_SIRI, BL_STEP, KC_F13, KC_F14, KC_F15, KC_F16, - KC_GRV, 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_INS, KC_HOME, KC_PGUP, KC_NUM, KC_PSLS, KC_PAST, KC_PMNS, - 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_DEL, KC_END, KC_PGDN, KC_P7, KC_P8, KC_P9, - 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_P4, KC_P5, KC_P6, KC_PPLS, - 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_P1, KC_P2, KC_P3, - KC_LCTL, KC_LOPTN, KC_LCMMD, KC_SPC, KC_RCMMD, KC_ROPTN,MO(MAC_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT, KC_P0, KC_PDOT, KC_PENT), - - [MAC_FN] = LAYOUT_108_ansi( - _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, BL_TOGG, _______, _______, _______, _______, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - BL_TOGG, BL_STEP, BL_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, BL_DOWN, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - - [WIN_BASE] = LAYOUT_108_ansi( - KC_ESC, 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_PSCR, KC_CTANA, BL_STEP, _______, _______, _______, _______, - KC_GRV, 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_INS, KC_HOME, KC_PGUP, KC_NUM, KC_PSLS, KC_PAST, KC_PMNS, - 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_DEL, KC_END, KC_PGDN, KC_P7, KC_P8, KC_P9, - 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_P4, KC_P5, KC_P6, KC_PPLS, - 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_P1, KC_P2, KC_P3, - KC_LCTL, KC_LWIN, KC_LALT, KC_SPC, KC_RALT, KC_RWIN, MO(WIN_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT, KC_P0, KC_PDOT, KC_PENT), - - [WIN_FN] = LAYOUT_108_ansi( - _______, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, BL_DOWN, BL_UP, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, BL_TOGG, _______, _______, _______, _______, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - BL_TOGG, BL_STEP, BL_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, BL_DOWN, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), -}; - -// clang-format on -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - if (!process_record_keychron_common(keycode, record)) { - return false; - } - return true; -} diff --git a/keyboards/keychron/k5_max/ansi/white/keymaps/via/keymap.c b/keyboards/keychron/k5_max/ansi/white/keymaps/via/keymap.c deleted file mode 100644 index 2ea0c3daef..0000000000 --- a/keyboards/keychron/k5_max/ansi/white/keymaps/via/keymap.c +++ /dev/null @@ -1,68 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#include QMK_KEYBOARD_H -#include "keychron_common.h" - -enum layers { - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN, -}; - -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_108_ansi( - KC_ESC, KC_BRID, KC_BRIU, KC_MCTRL, KC_LNPAD, BL_DOWN, BL_UP, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_SNAP, KC_SIRI, BL_STEP, KC_F13, KC_F14, KC_F15, KC_F16, - KC_GRV, 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_INS, KC_HOME, KC_PGUP, KC_NUM, KC_PSLS, KC_PAST, KC_PMNS, - 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_DEL, KC_END, KC_PGDN, KC_P7, KC_P8, KC_P9, - 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_P4, KC_P5, KC_P6, KC_PPLS, - 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_P1, KC_P2, KC_P3, - KC_LCTL, KC_LOPTN, KC_LCMMD, KC_SPC, KC_RCMMD, KC_ROPTN,MO(MAC_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT, KC_P0, KC_PDOT, KC_PENT), - - [MAC_FN] = LAYOUT_108_ansi( - _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, BL_TOGG, _______, _______, _______, _______, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - BL_TOGG, BL_STEP, BL_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, BL_DOWN, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - - [WIN_BASE] = LAYOUT_108_ansi( - KC_ESC, 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_PSCR, KC_CTANA, BL_STEP, _______, _______, _______, _______, - KC_GRV, 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_INS, KC_HOME, KC_PGUP, KC_NUM, KC_PSLS, KC_PAST, KC_PMNS, - 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_DEL, KC_END, KC_PGDN, KC_P7, KC_P8, KC_P9, - 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_P4, KC_P5, KC_P6, KC_PPLS, - 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_P1, KC_P2, KC_P3, - KC_LCTL, KC_LWIN, KC_LALT, KC_SPC, KC_RALT, KC_RWIN, MO(WIN_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT, KC_P0, KC_PDOT, KC_PENT), - - [WIN_FN] = LAYOUT_108_ansi( - _______, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, BL_DOWN, BL_UP, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, BL_TOGG, _______, _______, _______, _______, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - BL_TOGG, BL_STEP, BL_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, BL_DOWN, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), -}; - -// clang-format on -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - if (!process_record_keychron_common(keycode, record)) { - return false; - } - return true; -} diff --git a/keyboards/keychron/k5_max/ansi/white/keymaps/via/rules.mk b/keyboards/keychron/k5_max/ansi/white/keymaps/via/rules.mk deleted file mode 100644 index 1e5b99807c..0000000000 --- a/keyboards/keychron/k5_max/ansi/white/keymaps/via/rules.mk +++ /dev/null @@ -1 +0,0 @@ -VIA_ENABLE = yes diff --git a/keyboards/keychron/k5_max/ansi/white/rules.mk b/keyboards/keychron/k5_max/ansi/white/rules.mk deleted file mode 100644 index 6e7633bfe0..0000000000 --- a/keyboards/keychron/k5_max/ansi/white/rules.mk +++ /dev/null @@ -1 +0,0 @@ -# This file intentionally left blank diff --git a/keyboards/keychron/k5_max/ansi/white/white.c b/keyboards/keychron/k5_max/ansi/white/white.c deleted file mode 100644 index b3bf4e2c25..0000000000 --- a/keyboards/keychron/k5_max/ansi/white/white.c +++ /dev/null @@ -1,172 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#include "quantum.h" - -// clang-format off -#ifdef LED_MATRIX_ENABLE -const snled27351_led_t g_snled27351_leds[LED_MATRIX_LED_COUNT] = { -/* Refer to SNLED27351 manual for these locations - * driver - * | LED address - * | | */ - {0, F_1}, - {0, F_2}, - {0, F_3}, - {0, F_4}, - {0, F_5}, - {0, F_6}, - {0, F_7}, - {0, F_8}, - {0, F_9}, - {0, F_10}, - {0, F_11}, - {0, F_12}, - {0, F_13}, - {0, F_15}, - {0, F_16}, - {0, F_14}, - {0, H_7}, - {0, H_8}, - {0, H_9}, - {0, H_10}, - - {0, E_1}, - {0, E_2}, - {0, E_3}, - {0, E_4}, - {0, E_5}, - {0, E_6}, - {0, E_7}, - {0, E_8}, - {0, E_9}, - {0, E_10}, - {0, E_11}, - {0, E_12}, - {0, E_13}, - {0, E_14}, - {0, E_15}, - {0, E_16}, - {0, G_7}, - {0, G_8}, - {0, G_9}, - {0, G_10}, - {0, G_11}, - - {0, D_1}, - {0, D_2}, - {0, D_3}, - {0, D_4}, - {0, D_5}, - {0, D_6}, - {0, D_7}, - {0, D_8}, - {0, D_9}, - {0, D_10}, - {0, D_11}, - {0, D_12}, - {0, D_13}, - {0, D_14}, - {0, D_15}, - {0, D_16}, - {0, G_12}, - {0, G_13}, - {0, G_14}, - {0, G_15}, - {0, G_16}, - - {0, C_1}, - {0, C_2}, - {0, C_3}, - {0, C_4}, - {0, C_5}, - {0, C_6}, - {0, C_7}, - {0, C_8}, - {0, C_9}, - {0, C_10}, - {0, C_11}, - {0, C_12}, - {0, C_14}, - {0, C_13}, - {0, C_15}, - {0, C_16}, - - {0, B_1}, - {0, B_3}, - {0, B_4}, - {0, B_5}, - {0, B_6}, - {0, B_7}, - {0, B_8}, - {0, B_9}, - {0, B_10}, - {0, B_11}, - {0, B_12}, - {0, B_14}, - {0, B_16}, - {0, B_13}, - {0, H_11}, - {0, H_12}, - {0, H_13}, - - {0, A_1}, - {0, A_2}, - {0, A_3}, - {0, A_7}, - {0, A_11}, - {0, A_12}, - {0, A_13}, - {0, A_14}, - {0, A_15}, - {0, A_16}, - {0, H_14}, - {0, H_15}, - {0, H_16}, -}; - -#define __ NO_LED - -led_config_t g_led_config = { - { - // Key Matrix to LED Index - { 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, 40 }, - { 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61 }, - { 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, __, 74, __, __, __, 75, 76, 77, __ }, - { 78, __, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, __, 89, __, 90, __, 91, 92, 93, 94 }, - { 95, 96, 97, __, __, __, 98, __, __, __, 99, 100, 101, 102, 103, 104, 105, 106, __, 107, __ }, - }, - { - // LED Index to Physical Position - {0, 0}, {21, 0}, {32, 0}, {42, 0}, {53, 0}, {69, 0}, {79, 0}, {90, 0}, {100, 0}, {116, 0}, {127, 0}, {137, 0}, {148, 0}, {160, 0}, {170, 0}, {181, 0}, {192, 0}, {203, 0}, {213, 0}, {224, 0}, - {0,14}, {11,14}, {21,14}, {32,14}, {42,14}, {53,14}, {63,14}, {74,14}, { 84,14}, { 95,14}, {106,14}, {116,14}, {127,14}, {143,14}, {160,14}, {170,14}, {181,14}, {192,14}, {203,14}, {213,14}, {224,14}, - {3,26}, {16,26}, {26,26}, {37,26}, {48,26}, {58,26}, {69,26}, {79,26}, { 90,26}, {100,26}, {111,26}, {121,26}, {132,26}, {145,26}, {160,26}, {170,26}, {181,26}, {192,26}, {203,26}, {213,26}, {224,33}, - {4,39}, {19,39}, {29,39}, {40,39}, {50,39}, {61,39}, {71,39}, {82,39}, { 92,39}, {103,39}, {114,39}, {124,39}, {141,39}, {192,39}, {203,39}, {213,39}, - {7,51}, {24,51}, {34,51}, {45,51}, {55,51}, {66,51}, {77,51}, { 87,51}, { 98,51}, {108,51}, {119,51}, {139,51}, {170,51}, {192,51}, {203,51}, {213,51}, {224,58}, - {1,64}, {15,64}, {28,64}, {67,64}, {107,64}, {120,64}, {133,64}, {147,64}, {160,64}, {170,64}, {181,64}, {198,64}, {213,64}, - }, - { - // RGB LED Index to Flag - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - } -}; -#endif diff --git a/keyboards/keychron/k5_max/board.h b/keyboards/keychron/k5_max/board.h deleted file mode 100644 index b200f82d61..0000000000 --- a/keyboards/keychron/k5_max/board.h +++ /dev/null @@ -1,226 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#pragma once - -#include_next - -// clang-format off - -/* Set GPIOA_SWDIO to INPUT and NOT FLOATING */ -#undef VAL_GPIOA_MODER -#define VAL_GPIOA_MODER (PIN_MODE_INPUT(GPIOA_BUTTON) | \ - PIN_MODE_INPUT(GPIOA_PIN1) | \ - PIN_MODE_INPUT(GPIOA_PIN2) | \ - PIN_MODE_INPUT(GPIOA_PIN3) | \ - PIN_MODE_ALTERNATE(GPIOA_CS43L22_LRCK) |\ - PIN_MODE_ALTERNATE(GPIOA_L3GD20_SCL) | \ - PIN_MODE_ALTERNATE(GPIOA_L3GD20_SD0) | \ - PIN_MODE_ALTERNATE(GPIOA_L3GD20_SDI) | \ - PIN_MODE_INPUT(GPIOA_PIN8) | \ - PIN_MODE_INPUT(GPIOA_VBUS_FS) | \ - PIN_MODE_ALTERNATE(GPIOA_OTG_FS_ID) | \ - PIN_MODE_ALTERNATE(GPIOA_OTG_FS_DM) | \ - PIN_MODE_ALTERNATE(GPIOA_OTG_FS_DP) | \ - PIN_MODE_INPUT(GPIOA_SWDIO) | \ - PIN_MODE_INPUT(GPIOA_SWCLK) | \ - PIN_MODE_INPUT(GPIOA_PIN15)) - -#undef VAL_GPIOA_PUPDR -#define VAL_GPIOA_PUPDR (PIN_PUPDR_FLOATING(GPIOA_BUTTON) | \ - PIN_PUPDR_PULLUP(GPIOA_PIN1) | \ - PIN_PUPDR_PULLUP(GPIOA_PIN2) | \ - PIN_PUPDR_PULLUP(GPIOA_PIN3) | \ - PIN_PUPDR_FLOATING(GPIOA_CS43L22_LRCK) |\ - PIN_PUPDR_FLOATING(GPIOA_L3GD20_SCL) | \ - PIN_PUPDR_PULLUP(GPIOA_L3GD20_SD0) | \ - PIN_PUPDR_PULLUP(GPIOA_L3GD20_SDI) | \ - PIN_PUPDR_PULLUP(GPIOA_PIN8) | \ - PIN_PUPDR_FLOATING(GPIOA_VBUS_FS) | \ - PIN_PUPDR_FLOATING(GPIOA_OTG_FS_ID) | \ - PIN_PUPDR_FLOATING(GPIOA_OTG_FS_DM) | \ - PIN_PUPDR_FLOATING(GPIOA_OTG_FS_DP) | \ - PIN_PUPDR_PULLDOWN(GPIOA_SWDIO) | \ - PIN_PUPDR_PULLUP(GPIOA_SWCLK) | \ - PIN_PUPDR_PULLUP(GPIOA_PIN15)) - -#undef VAL_GPIOB_MODER -#define VAL_GPIOB_MODER (PIN_MODE_INPUT(GPIOB_PIN0) | \ - PIN_MODE_INPUT(GPIOB_PIN1) | \ - PIN_MODE_INPUT(GPIOB_PIN2) | \ - PIN_MODE_INPUT(GPIOB_SWO) | \ - PIN_MODE_INPUT(GPIOB_PIN4) | \ - PIN_MODE_INPUT(GPIOB_PIN5) | \ - PIN_MODE_INPUT(GPIOB_LSM303DLHC_SCL) | \ - PIN_MODE_INPUT(GPIOB_PIN7) | \ - PIN_MODE_INPUT(GPIOB_PIN8) | \ - PIN_MODE_INPUT(GPIOB_LSM303DLHC_SDA) | \ - PIN_MODE_INPUT(GPIOB_MP45DT02_CLK_IN) |\ - PIN_MODE_INPUT(GPIOB_PIN11) | \ - PIN_MODE_INPUT(GPIOB_PIN12) | \ - PIN_MODE_INPUT(GPIOB_PIN13) | \ - PIN_MODE_INPUT(GPIOB_PIN14) | \ - PIN_MODE_INPUT(GPIOB_PIN15)) - -#undef VAL_GPIOB_PUPDR -#define VAL_GPIOB_PUPDR (PIN_PUPDR_PULLDOWN(GPIOB_PIN0) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN1) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN2) | \ - PIN_PUPDR_PULLDOWN(GPIOB_SWO) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN4) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN5) | \ - PIN_PUPDR_PULLDOWN(GPIOB_LSM303DLHC_SCL) |\ - PIN_PUPDR_PULLDOWN(GPIOB_PIN7) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN8) | \ - PIN_PUPDR_PULLDOWN(GPIOB_LSM303DLHC_SDA) |\ - PIN_PUPDR_PULLDOWN(GPIOB_MP45DT02_CLK_IN) |\ - PIN_PUPDR_PULLDOWN(GPIOB_PIN11) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN12) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN13) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN14) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN15)) - -#undef VAL_GPIOB_AFRL -#define VAL_GPIOB_AFRL (PIN_AFIO_AF(GPIOB_PIN0, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN1, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN2, 0U) | \ - PIN_AFIO_AF(GPIOB_SWO, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN4, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN5, 0U) | \ - PIN_AFIO_AF(GPIOB_LSM303DLHC_SCL, 0) | \ - PIN_AFIO_AF(GPIOB_PIN7, 0U)) - -#undef VAL_GPIOB_AFRH -#define VAL_GPIOB_AFRH (PIN_AFIO_AF(GPIOB_PIN8, 0U) | \ - PIN_AFIO_AF(GPIOB_LSM303DLHC_SDA, 0) | \ - PIN_AFIO_AF(GPIOB_MP45DT02_CLK_IN, 0U) |\ - PIN_AFIO_AF(GPIOB_PIN11, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN12, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN13, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN14, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN15, 0U)) - -/* C5 Need to be pulldown */ -#undef VAL_GPIOC_MODER -#define VAL_GPIOC_MODER (PIN_MODE_INPUT(GPIOC_OTG_FS_POWER_ON) |\ - PIN_MODE_INPUT(GPIOC_PIN1) | \ - PIN_MODE_INPUT(GPIOC_PIN2) | \ - PIN_MODE_INPUT(GPIOC_CS43L22_AIN4x) | \ - PIN_MODE_INPUT(GPIOC_PIN4) | \ - PIN_MODE_INPUT(GPIOC_PIN5) | \ - PIN_MODE_INPUT(GPIOC_PIN6) | \ - PIN_MODE_INPUT(GPIOC_CS43L22_MCLK) | \ - PIN_MODE_INPUT(GPIOC_PIN8) | \ - PIN_MODE_INPUT(GPIOC_PIN9) | \ - PIN_MODE_INPUT(GPIOC_CS43L22_SCLK) | \ - PIN_MODE_INPUT(GPIOC_PIN11) | \ - PIN_MODE_INPUT(GPIOC_CS43L22_SDIN) | \ - PIN_MODE_INPUT(GPIOC_PIN13) | \ - PIN_MODE_INPUT(GPIOC_OSC32_IN) | \ - PIN_MODE_INPUT(GPIOC_OSC32_OUT)) - -#undef VAL_GPIOC_PUPDR -#define VAL_GPIOC_PUPDR (PIN_PUPDR_PULLUP(GPIOC_OTG_FS_POWER_ON) |\ - PIN_PUPDR_PULLUP(GPIOC_PIN1) | \ - PIN_PUPDR_PULLUP(GPIOC_PIN2) | \ - PIN_PUPDR_PULLUP(GPIOC_CS43L22_AIN4x) |\ - PIN_PUPDR_PULLUP(GPIOC_PIN4) | \ - PIN_PUPDR_PULLDOWN(GPIOC_PIN5) | \ - PIN_PUPDR_PULLUP(GPIOC_PIN6) | \ - PIN_PUPDR_PULLUP(GPIOC_CS43L22_MCLK) | \ - PIN_PUPDR_PULLUP(GPIOC_PIN8) | \ - PIN_PUPDR_PULLUP(GPIOC_PIN9) | \ - PIN_PUPDR_PULLUP(GPIOC_CS43L22_SCLK) | \ - PIN_PUPDR_PULLUP(GPIOC_PIN11) | \ - PIN_PUPDR_PULLUP(GPIOC_CS43L22_SDIN) | \ - PIN_PUPDR_PULLUP(GPIOC_PIN13) | \ - PIN_PUPDR_PULLUP(GPIOC_OSC32_IN) | \ - PIN_PUPDR_PULLUP(GPIOC_OSC32_OUT)) - -/* Set all GPIOD pins to INPUT & PULLUP to avoid FLOATING */ -#undef VAL_GPIOD_MODER -#define VAL_GPIOD_MODER (PIN_MODE_INPUT(GPIOD_PIN0) | \ - PIN_MODE_INPUT(GPIOD_PIN1) | \ - PIN_MODE_INPUT(GPIOD_PIN2) | \ - PIN_MODE_INPUT(GPIOD_PIN3) | \ - PIN_MODE_INPUT(GPIOD_CS43L22_RESET) | \ - PIN_MODE_INPUT(GPIOD_OverCurrent) | \ - PIN_MODE_INPUT(GPIOD_PIN6) | \ - PIN_MODE_INPUT(GPIOD_PIN7) | \ - PIN_MODE_INPUT(GPIOD_PIN8) | \ - PIN_MODE_INPUT(GPIOD_PIN9) | \ - PIN_MODE_INPUT(GPIOD_PIN10) | \ - PIN_MODE_INPUT(GPIOD_PIN11) | \ - PIN_MODE_INPUT(GPIOD_LED4) | \ - PIN_MODE_INPUT(GPIOD_LED3) | \ - PIN_MODE_INPUT(GPIOD_LED5) | \ - PIN_MODE_INPUT(GPIOD_LED6)) - -#undef VAL_GPIOD_PUPDR -#define VAL_GPIOD_PUPDR (PIN_PUPDR_PULLUP(GPIOD_PIN0) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN1) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN2) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN3) | \ - PIN_PUPDR_PULLUP(GPIOD_CS43L22_RESET) |\ - PIN_PUPDR_PULLUP(GPIOD_OverCurrent) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN6) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN7) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN8) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN9) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN10) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN11) | \ - PIN_PUPDR_PULLUP(GPIOD_LED4) | \ - PIN_PUPDR_PULLUP(GPIOD_LED3) | \ - PIN_PUPDR_PULLUP(GPIOD_LED5) | \ - PIN_PUPDR_PULLUP(GPIOD_LED6)) - -/* Set all GPIOE pins to INPUT & PULLUP to avoid FLOATING */ -#undef VAL_GPIOE_MODER -#define VAL_GPIOE_MODER (PIN_MODE_INPUT(GPIOE_L3GD20_INT1) | \ - PIN_MODE_INPUT(GPIOE_L3GD20_INT2) | \ - PIN_MODE_INPUT(GPIOE_LSM303DLHC_DRDY) |\ - PIN_MODE_INPUT(GPIOE_L3GD20_CS) | \ - PIN_MODE_INPUT(GPIOE_LSM303DLHC_INT1) |\ - PIN_MODE_INPUT(GPIOE_LSM303DLHC_INT2) |\ - PIN_MODE_INPUT(GPIOE_PIN6) | \ - PIN_MODE_INPUT(GPIOE_PIN7) | \ - PIN_MODE_INPUT(GPIOE_PIN8) | \ - PIN_MODE_INPUT(GPIOE_PIN9) | \ - PIN_MODE_INPUT(GPIOE_PIN10) | \ - PIN_MODE_INPUT(GPIOE_PIN11) | \ - PIN_MODE_INPUT(GPIOE_PIN12) | \ - PIN_MODE_INPUT(GPIOE_PIN13) | \ - PIN_MODE_INPUT(GPIOE_PIN14) | \ - PIN_MODE_INPUT(GPIOE_PIN15)) - -#undef VAL_GPIOE_PUPDR -#define VAL_GPIOE_PUPDR (PIN_PUPDR_PULLUP(GPIOE_L3GD20_INT1) | \ - PIN_PUPDR_PULLUP(GPIOE_L3GD20_INT2) | \ - PIN_PUPDR_PULLUP(GPIOE_LSM303DLHC_DRDY) |\ - PIN_PUPDR_PULLUP(GPIOE_L3GD20_CS) | \ - PIN_PUPDR_PULLUP(GPIOE_LSM303DLHC_INT1) |\ - PIN_PUPDR_PULLUP(GPIOE_LSM303DLHC_INT2) |\ - PIN_PUPDR_PULLUP(GPIOE_PIN6) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN7) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN8) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN9) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN10) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN11) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN12) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN13) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN14) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN15)) - diff --git a/keyboards/keychron/k5_max/config.h b/keyboards/keychron/k5_max/config.h deleted file mode 100644 index ffabc3b3bc..0000000000 --- a/keyboards/keychron/k5_max/config.h +++ /dev/null @@ -1,93 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#pragma once - -/* Caps lock LED */ -#define LED_CAPS_LOCK_PIN A13 -#define LED_PIN_ON_STATE 1 - -#ifdef LK_WIRELESS_ENABLE -/* Hardware configuration */ -# define P2P4_MODE_SELECT_PIN A10 -# define BT_MODE_SELECT_PIN A9 - -# define LKBT51_RESET_PIN C4 -# define LKBT51_INT_INPUT_PIN B1 -# define BLUETOOTH_INT_OUTPUT_PIN A4 - -# define USB_POWER_SENSE_PIN B0 -# define USB_POWER_CONNECTED_LEVEL 0 - -# define BAT_CHARGING_PIN B13 -# define BAT_CHARGING_LEVEL 0 - -# define BAT_LOW_LED_PIN B12 -# define BAT_LOW_LED_PIN_ON_STATE 1 - -# define BT_HOST_DEVICES_COUNT 3 - -# define BT_HOST_LED_PIN_LIST \ - { C9, C9, C9 } -# define HOST_LED_PIN_ON_STATE 0 - -# define P24G_HOST_DEVICES_COUNT 1 - -# define P24G_HOST_LED_PIN_LIST \ - { A8 } - -# if defined(RGB_MATRIX_ENABLE) || defined(LED_MATRIX_ENABLE) - -# define LED_DRIVER_SHUTDOWN_PIN B7 - -# define BT_HOST_LED_MATRIX_LIST \ - { 21, 22, 23 } - -# define P2P4G_HOST_LED_MATRIX_LIST \ - { 24 } - -# define BAT_LEVEL_LED_LIST \ - { 21, 22, 23, 24, 25, 26, 27, 28, 29, 30 } - -/* 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 - -/* Reinit LED driver on tranport changed */ -# define REINIT_LED_DRIVER 1 - -# endif - -/* Keep USB connection in blueooth mode */ -# define KEEP_USB_CONNECTION_IN_WIRELESS_MODE - -/* Enable bluetooth NKRO */ -# define WIRELESS_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 - -/* Factory test keys */ -#define FN_KEY_1 MO(1) -#define FN_KEY_2 MO(3) - -#define MATRIX_IO_DELAY 10 diff --git a/keyboards/keychron/k5_max/firmware/keychron_k5_max_ansi_rgb_via.bin b/keyboards/keychron/k5_max/firmware/keychron_k5_max_ansi_rgb_via.bin deleted file mode 100644 index bb550195a0..0000000000 Binary files a/keyboards/keychron/k5_max/firmware/keychron_k5_max_ansi_rgb_via.bin and /dev/null differ diff --git a/keyboards/keychron/k5_max/firmware/keychron_k5_max_ansi_white_via.bin b/keyboards/keychron/k5_max/firmware/keychron_k5_max_ansi_white_via.bin deleted file mode 100644 index ed6cd28b1c..0000000000 Binary files a/keyboards/keychron/k5_max/firmware/keychron_k5_max_ansi_white_via.bin and /dev/null differ diff --git a/keyboards/keychron/k5_max/firmware/keychron_k5_max_iso_rgb_via.bin b/keyboards/keychron/k5_max/firmware/keychron_k5_max_iso_rgb_via.bin deleted file mode 100644 index e363a3a96c..0000000000 Binary files a/keyboards/keychron/k5_max/firmware/keychron_k5_max_iso_rgb_via.bin and /dev/null differ diff --git a/keyboards/keychron/k5_max/firmware/keychron_k5_max_iso_white_via.bin b/keyboards/keychron/k5_max/firmware/keychron_k5_max_iso_white_via.bin deleted file mode 100644 index d1768dbf99..0000000000 Binary files a/keyboards/keychron/k5_max/firmware/keychron_k5_max_iso_white_via.bin and /dev/null differ diff --git a/keyboards/keychron/k5_max/halconf.h b/keyboards/keychron/k5_max/halconf.h deleted file mode 100644 index 37bcc7c47b..0000000000 --- a/keyboards/keychron/k5_max/halconf.h +++ /dev/null @@ -1,31 +0,0 @@ -/* Copyright 2024 @ 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 - -#define _CHIBIOS_HAL_CONF_VER_8_0_ - -#define HAL_USE_SPI TRUE - -#ifdef LK_WIRELESS_ENABLE -# define HAL_USE_RTC TRUE -#endif - -#if defined(LK_WIRELESS_ENABLE) || defined(ENCODER_ENABLE) -# define PAL_USE_CALLBACKS TRUE -#endif - -#include_next diff --git a/keyboards/keychron/k5_max/info.json b/keyboards/keychron/k5_max/info.json deleted file mode 100644 index 0b331454a3..0000000000 --- a/keyboards/keychron/k5_max/info.json +++ /dev/null @@ -1,272 +0,0 @@ -{ - "keyboard_name": "Keychron K5 Max", - "manufacturer": "Keychron", - "url": "https://github.com/Keychron", - "maintainer": "lokher", - "processor": "STM32F401", - "bootloader": "stm32-dfu", - "usb": { - "vid": "0x3434" - }, - "features": { - "bootmagic": true, - "extrakey": true, - "mousekey": true, - "dip_switch": true, - "nkro": true, - "raw": true, - "send_string": true - }, - "matrix_pins": { - "cols": ["C6", "C7", "C8", "A14", "A15", "C10", "C11", "C13", "C14", "C15", "C0", "C1", "C2", "C3", "A0", "A1", "A2", "A3", "C5", "B10", "B15"], - "rows": ["C12", "D2", "B3", "B4", "B5", "B6"] - }, - "diode_direction": "ROW2COL", - "dip_switch": { - "pins": ["B14"] - }, - "eeprom": { - "wear_leveling": { - "driver": "embedded_flash", - "logical_size": 2048, - "backing_size": 4096 - } - }, - "layouts": { - "LAYOUT_108_ansi": { - "layout": [ - {"matrix":[0,0], "x":0, "y":0}, - {"matrix":[0,1], "x":2, "y":0}, - {"matrix":[0,2], "x":3, "y":0}, - {"matrix":[0,3], "x":4, "y":0}, - {"matrix":[0,4], "x":5, "y":0}, - {"matrix":[0,5], "x":6.5, "y":0}, - {"matrix":[0,6], "x":7.5, "y":0}, - {"matrix":[0,7], "x":8.5, "y":0}, - {"matrix":[0,8], "x":9.5, "y":0}, - {"matrix":[0,9], "x":11, "y":0}, - {"matrix":[0,10], "x":12, "y":0}, - {"matrix":[0,11], "x":13, "y":0}, - {"matrix":[0,12], "x":14, "y":0}, - {"matrix":[0,14], "x":15.25, "y":0}, - {"matrix":[0,15], "x":16.25, "y":0}, - {"matrix":[0,16], "x":17.25, "y":0}, - {"matrix":[0,17], "x":18.5, "y":0}, - {"matrix":[0,18], "x":19.5, "y":0}, - {"matrix":[0,19], "x":20.5, "y":0}, - {"matrix":[0,20], "x":21.5, "y":0}, - - {"matrix":[1,0], "x":0, "y":1.25}, - {"matrix":[1,1], "x":1, "y":1.25}, - {"matrix":[1,2], "x":2, "y":1.25}, - {"matrix":[1,3], "x":3, "y":1.25}, - {"matrix":[1,4], "x":4, "y":1.25}, - {"matrix":[1,5], "x":5, "y":1.25}, - {"matrix":[1,6], "x":6, "y":1.25}, - {"matrix":[1,7], "x":7, "y":1.25}, - {"matrix":[1,8], "x":8, "y":1.25}, - {"matrix":[1,9], "x":9, "y":1.25}, - {"matrix":[1,10], "x":10, "y":1.25}, - {"matrix":[1,11], "x":11, "y":1.25}, - {"matrix":[1,12], "x":12, "y":1.25}, - {"matrix":[1,13], "x":13, "y":1.25, "w":2}, - {"matrix":[1,14], "x":15.25, "y":1.25}, - {"matrix":[1,15], "x":16.25, "y":1.25}, - {"matrix":[1,16], "x":17.25, "y":1.25}, - {"matrix":[1,17], "x":18.5, "y":1.25}, - {"matrix":[1,18], "x":19.5, "y":1.25}, - {"matrix":[1,19], "x":20.5, "y":1.25}, - {"matrix":[1,20], "x":21.5, "y":1.25}, - - {"matrix":[2,0], "x":0, "y":2.25, "w":1.5}, - {"matrix":[2,1], "x":1.5, "y":2.25}, - {"matrix":[2,2], "x":2.5, "y":2.25}, - {"matrix":[2,3], "x":3.5, "y":2.25}, - {"matrix":[2,4], "x":4.5, "y":2.25}, - {"matrix":[2,5], "x":5.5, "y":2.25}, - {"matrix":[2,6], "x":6.5, "y":2.25}, - {"matrix":[2,7], "x":7.5, "y":2.25}, - {"matrix":[2,8], "x":8.5, "y":2.25}, - {"matrix":[2,9], "x":9.5, "y":2.25}, - {"matrix":[2,10], "x":10.5, "y":2.25}, - {"matrix":[2,11], "x":11.5, "y":2.25}, - {"matrix":[2,12], "x":12.5, "y":2.25}, - {"matrix":[2,13], "x":13.5, "y":2.25, "w":1.5}, - {"matrix":[2,14], "x":15.25, "y":2.25}, - {"matrix":[2,15], "x":16.25, "y":2.25}, - {"matrix":[2,16], "x":17.25, "y":2.25}, - {"matrix":[2,17], "x":18.5, "y":2.25}, - {"matrix":[2,18], "x":19.5, "y":2.25}, - {"matrix":[2,19], "x":20.5, "y":2.25}, - - {"matrix":[3,0], "x":0, "y":3.25, "w":1.75}, - {"matrix":[3,1], "x":1.75, "y":3.25}, - {"matrix":[3,2], "x":2.75, "y":3.25}, - {"matrix":[3,3], "x":3.75, "y":3.25}, - {"matrix":[3,4], "x":4.75, "y":3.25}, - {"matrix":[3,5], "x":5.75, "y":3.25}, - {"matrix":[3,6], "x":6.75, "y":3.25}, - {"matrix":[3,7], "x":7.75, "y":3.25}, - {"matrix":[3,8], "x":8.75, "y":3.25}, - {"matrix":[3,9], "x":9.75, "y":3.25}, - {"matrix":[3,10], "x":10.75, "y":3.25}, - {"matrix":[3,11], "x":11.75, "y":3.25}, - {"matrix":[3,13], "x":12.75, "y":3.25, "w":2.25}, - {"matrix":[3,17], "x":18.5, "y":3.25}, - {"matrix":[3,18], "x":19.5, "y":3.25}, - {"matrix":[3,19], "x":20.5, "y":3.25}, - {"matrix":[2,20], "x":21.5, "y":2.25, "h":2}, - - {"matrix":[4,0], "x":0, "y":4.25, "w":2.25}, - {"matrix":[4,2], "x":2.25, "y":4.25}, - {"matrix":[4,3], "x":3.25, "y":4.25}, - {"matrix":[4,4], "x":4.25, "y":4.25}, - {"matrix":[4,5], "x":5.25, "y":4.25}, - {"matrix":[4,6], "x":6.25, "y":4.25}, - {"matrix":[4,7], "x":7.25, "y":4.25}, - {"matrix":[4,8], "x":8.25, "y":4.25}, - {"matrix":[4,9], "x":9.25, "y":4.25}, - {"matrix":[4,10], "x":10.25, "y":4.25}, - {"matrix":[4,11], "x":11.25, "y":4.25}, - {"matrix":[4,13], "x":12.25, "y":4.25, "w":2.75}, - {"matrix":[4,15], "x":16.25, "y":4.25}, - {"matrix":[4,17], "x":18.5, "y":4.25}, - {"matrix":[4,18], "x":19.5, "y":4.25}, - {"matrix":[4,19], "x":20.5, "y":4.25}, - - {"matrix":[5,0], "x":0, "y":5.25, "w":1.25}, - {"matrix":[5,1], "x":1.25, "y":5.25, "w":1.25}, - {"matrix":[5,2], "x":2.5, "y":5.25, "w":1.25}, - {"matrix":[5,6], "x":3.75, "y":5.25, "w":6.25}, - {"matrix":[5,10], "x":10, "y":5.25, "w":1.25}, - {"matrix":[5,11], "x":11.25, "y":5.25, "w":1.25}, - {"matrix":[5,12], "x":12.5, "y":5.25, "w":1.25}, - {"matrix":[5,13], "x":13.75, "y":5.25, "w":1.25}, - {"matrix":[5,14], "x":15.25, "y":5.25}, - {"matrix":[5,15], "x":16.25, "y":5.25}, - {"matrix":[5,16], "x":17.25, "y":5.25}, - {"matrix":[5,17], "x":18.5, "y":5.25, "w":2}, - {"matrix":[5,19], "x":20.5, "y":5.25} - {"matrix":[4,20], "x":21.5, "y":4.25, "h":2}, - ] - }, - "LAYOUT_109_iso": { - "layout": [ - {"matrix":[0,0], "x":0, "y":0}, - {"matrix":[0,1], "x":2, "y":0}, - {"matrix":[0,2], "x":3, "y":0}, - {"matrix":[0,3], "x":4, "y":0}, - {"matrix":[0,4], "x":5, "y":0}, - {"matrix":[0,5], "x":6.5, "y":0}, - {"matrix":[0,6], "x":7.5, "y":0}, - {"matrix":[0,7], "x":8.5, "y":0}, - {"matrix":[0,8], "x":9.5, "y":0}, - {"matrix":[0,9], "x":11, "y":0}, - {"matrix":[0,10], "x":12, "y":0}, - {"matrix":[0,11], "x":13, "y":0}, - {"matrix":[0,12], "x":14, "y":0}, - {"matrix":[0,14], "x":15.25, "y":0}, - {"matrix":[0,15], "x":16.25, "y":0}, - {"matrix":[0,16], "x":17.25, "y":0}, - {"matrix":[0,17], "x":18.5, "y":0}, - {"matrix":[0,18], "x":19.5, "y":0}, - {"matrix":[0,19], "x":20.5, "y":0}, - {"matrix":[0,20], "x":21.5, "y":0}, - - {"matrix":[1,0], "x":0, "y":1.25}, - {"matrix":[1,1], "x":1, "y":1.25}, - {"matrix":[1,2], "x":2, "y":1.25}, - {"matrix":[1,3], "x":3, "y":1.25}, - {"matrix":[1,4], "x":4, "y":1.25}, - {"matrix":[1,5], "x":5, "y":1.25}, - {"matrix":[1,6], "x":6, "y":1.25}, - {"matrix":[1,7], "x":7, "y":1.25}, - {"matrix":[1,8], "x":8, "y":1.25}, - {"matrix":[1,9], "x":9, "y":1.25}, - {"matrix":[1,10], "x":10, "y":1.25}, - {"matrix":[1,11], "x":11, "y":1.25}, - {"matrix":[1,12], "x":12, "y":1.25}, - {"matrix":[1,13], "x":13, "y":1.25, "w":2}, - {"matrix":[1,14], "x":15.25, "y":1.25}, - {"matrix":[1,15], "x":16.25, "y":1.25}, - {"matrix":[1,16], "x":17.25, "y":1.25}, - {"matrix":[1,17], "x":18.5, "y":1.25}, - {"matrix":[1,18], "x":19.5, "y":1.25}, - {"matrix":[1,19], "x":20.5, "y":1.25}, - {"matrix":[1,20], "x":21.5, "y":1.25}, - - {"matrix":[2,0], "x":0, "y":2.25, "w":1.5}, - {"matrix":[2,1], "x":1.5, "y":2.25}, - {"matrix":[2,2], "x":2.5, "y":2.25}, - {"matrix":[2,3], "x":3.5, "y":2.25}, - {"matrix":[2,4], "x":4.5, "y":2.25}, - {"matrix":[2,5], "x":5.5, "y":2.25}, - {"matrix":[2,6], "x":6.5, "y":2.25}, - {"matrix":[2,7], "x":7.5, "y":2.25}, - {"matrix":[2,8], "x":8.5, "y":2.25}, - {"matrix":[2,9], "x":9.5, "y":2.25}, - {"matrix":[2,10], "x":10.5, "y":2.25}, - {"matrix":[2,11], "x":11.5, "y":2.25}, - {"matrix":[2,12], "x":12.5, "y":2.25}, - {"matrix":[2,14], "x":15.25, "y":2.25}, - {"matrix":[2,15], "x":16.25, "y":2.25}, - {"matrix":[2,16], "x":17.25, "y":2.25}, - {"matrix":[2,17], "x":18.5, "y":2.25}, - {"matrix":[2,18], "x":19.5, "y":2.25}, - {"matrix":[2,19], "x":20.5, "y":2.25}, - - {"matrix":[3,0], "x":0, "y":3.25, "w":1.75}, - {"matrix":[3,1], "x":1.75, "y":3.25}, - {"matrix":[3,2], "x":2.75, "y":3.25}, - {"matrix":[3,3], "x":3.75, "y":3.25}, - {"matrix":[3,4], "x":4.75, "y":3.25}, - {"matrix":[3,5], "x":5.75, "y":3.25}, - {"matrix":[3,6], "x":6.75, "y":3.25}, - {"matrix":[3,7], "x":7.75, "y":3.25}, - {"matrix":[3,8], "x":8.75, "y":3.25}, - {"matrix":[3,9], "x":9.75, "y":3.25}, - {"matrix":[3,10], "x":10.75, "y":3.25}, - {"matrix":[3,11], "x":11.75, "y":3.25}, - {"matrix":[3,13], "x":12.75, "y":3.25}, - {"matrix":[2,13], "x":13.75, "y":2.25, "w":1.25, "h":2}, - {"matrix":[3,17], "x":18.5, "y":3.25}, - {"matrix":[3,18], "x":19.5, "y":3.25}, - {"matrix":[3,19], "x":20.5, "y":3.25}, - {"matrix":[2,20], "x":21.5, "y":2.25, "h":2}, - - {"matrix":[4,0], "x":0, "y":4.25, "w":1.25}, - {"matrix":[4,1], "x":1.25, "y":4.25}, - {"matrix":[4,2], "x":2.25, "y":4.25}, - {"matrix":[4,3], "x":3.25, "y":4.25}, - {"matrix":[4,4], "x":4.25, "y":4.25}, - {"matrix":[4,5], "x":5.25, "y":4.25}, - {"matrix":[4,6], "x":6.25, "y":4.25}, - {"matrix":[4,7], "x":7.25, "y":4.25}, - {"matrix":[4,8], "x":8.25, "y":4.25}, - {"matrix":[4,9], "x":9.25, "y":4.25}, - {"matrix":[4,10], "x":10.25, "y":4.25}, - {"matrix":[4,11], "x":11.25, "y":4.25}, - {"matrix":[4,13], "x":12.25, "y":4.25, "w":2.75}, - {"matrix":[4,15], "x":16.25, "y":4.25}, - {"matrix":[4,17], "x":18.5, "y":4.25}, - {"matrix":[4,18], "x":19.5, "y":4.25}, - {"matrix":[4,19], "x":20.5, "y":4.25}, - - {"matrix":[5,0], "x":0, "y":5.25, "w":1.25}, - {"matrix":[5,1], "x":1.25, "y":5.25, "w":1.25}, - {"matrix":[5,2], "x":2.5, "y":5.25, "w":1.25}, - {"matrix":[5,6], "x":3.75, "y":5.25, "w":6.25}, - {"matrix":[5,10], "x":10, "y":5.25, "w":1.25}, - {"matrix":[5,11], "x":11.25, "y":5.25, "w":1.25}, - {"matrix":[5,12], "x":12.5, "y":5.25, "w":1.25}, - {"matrix":[5,13], "x":13.75, "y":5.25, "w":1.25}, - {"matrix":[5,14], "x":15.25, "y":5.25}, - {"matrix":[5,15], "x":16.25, "y":5.25}, - {"matrix":[5,16], "x":17.25, "y":5.25}, - {"matrix":[5,17], "x":18.5, "y":5.25, "w":2}, - {"matrix":[5,19], "x":20.5, "y":5.25}, - {"matrix":[4,20], "x":21.5, "y":4.25, "h":2} - ] - } - } -} diff --git a/keyboards/keychron/k5_max/iso/rgb/config.h b/keyboards/keychron/k5_max/iso/rgb/config.h deleted file mode 100644 index 9e495ebabd..0000000000 --- a/keyboards/keychron/k5_max/iso/rgb/config.h +++ /dev/null @@ -1,55 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#pragma once - -#ifdef RGB_MATRIX_ENABLE -/* RGB Matrix driver configuration */ -# define DRIVER_COUNT 2 -# define RGB_MATRIX_LED_COUNT 109 - -# define SPI_SCK_PIN A5 -# define SPI_MISO_PIN A6 -# define SPI_MOSI_PIN A7 - -# define DRIVER_CS_PINS \ - { B8, B9 } -# define SNLED23751_SPI_DIVISOR 16 -# define SPI_DRIVER SPID1 - -/* Scan phase of led driver set as MSKPHASE_12CHANNEL(defined as 0x03 in snled27351.h) */ -# define SNLED27351_PHASE_CHANNEL MSKPHASE_12CHANNEL - -/* Set LED driver current */ -# define SNLED27351_CURRENT_TUNE \ - { 0x12, 0x12, 0x12, 0x12, 0x12, 0x12, 0x12, 0x12, 0x12, 0x12, 0x12, 0x12 } - -/* Set to infinit, which is use in USB mode by default */ -# define RGB_MATRIX_TIMEOUT RGB_MATRIX_TIMEOUT_INFINITE - -/* Allow shutdown of led driver to save power */ -# define RGB_MATRIX_DRIVER_SHUTDOWN_ENABLE -/* Turn off backlight on low brightness to save power */ -# define RGB_MATRIX_BRIGHTNESS_TURN_OFF_VAL 48 - -/* Indications */ -# define LOW_BAT_IND_INDEX \ - { 99 } - -# define RGB_MATRIX_KEYPRESSES -# define RGB_MATRIX_FRAMEBUFFER_EFFECTS - -#endif diff --git a/keyboards/keychron/k5_max/iso/rgb/info.json b/keyboards/keychron/k5_max/iso/rgb/info.json deleted file mode 100644 index 5be8112bad..0000000000 --- a/keyboards/keychron/k5_max/iso/rgb/info.json +++ /dev/null @@ -1,36 +0,0 @@ -{ - "usb": { - "pid": "0x0A51", - "device_version": "1.0.0" - }, - "features": { - "rgb_matrix": true - }, - "rgb_matrix": { - "driver": "snled27351_spi", - "sleep": true, - "animations": { - "band_spiral_val": true, - "breathing": true, - "cycle_all": true, - "cycle_left_right": true, - "cycle_out_in": true, - "cycle_out_in_dual": true, - "cycle_pinwheel": true, - "cycle_spiral": true, - "cycle_up_down": true, - "digital_rain": true, - "dual_beacon": true, - "jellybean_raindrops": true, - "pixel_rain": true, - "rainbow_beacon": true, - "rainbow_moving_chevron": true, - "solid_reactive_multinexus": true, - "solid_reactive_multiwide": true, - "solid_reactive_simple": true, - "solid_splash": true, - "splash": true, - "typing_heatmap": true - } - } -} diff --git a/keyboards/keychron/k5_max/iso/rgb/keymaps/default/keymap.c b/keyboards/keychron/k5_max/iso/rgb/keymaps/default/keymap.c deleted file mode 100644 index 9972f8a49d..0000000000 --- a/keyboards/keychron/k5_max/iso/rgb/keymaps/default/keymap.c +++ /dev/null @@ -1,68 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#include QMK_KEYBOARD_H -#include "keychron_common.h" - -enum layers { - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN, -}; - -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_109_iso( - KC_ESC, KC_BRID, KC_BRIU, KC_MCTRL, KC_LNPAD, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_SNAP, KC_SIRI, RGB_MOD, KC_F13, KC_F14, KC_F15, KC_F16, - KC_GRV, 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_INS, KC_HOME, KC_PGUP, KC_NUM, KC_PSLS, KC_PAST, KC_PMNS, - 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_DEL, KC_END, KC_PGDN, KC_P7, KC_P8, KC_P9, - 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_NUHS, KC_ENT, KC_P4, KC_P5, KC_P6, KC_PPLS, - KC_LSFT, KC_NUBS, 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_P1, KC_P2, KC_P3, - KC_LCTL, KC_LOPTN, KC_LCMMD, KC_SPC, KC_RCMMD, KC_ROPTN,MO(MAC_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT, KC_P0, KC_PDOT, KC_PENT), - - [MAC_FN] = LAYOUT_109_iso( - _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, RGB_TOG, _______, _______, _______, _______, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - - [WIN_BASE] = LAYOUT_109_iso( - KC_ESC, 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_PSCR, KC_CTANA, RGB_MOD, _______, _______, _______, _______, - KC_GRV, 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_INS, KC_HOME, KC_PGUP, KC_NUM, KC_PSLS, KC_PAST, KC_PMNS, - 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_DEL, KC_END, KC_PGDN, KC_P7, KC_P8, KC_P9, - 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_NUHS, KC_ENT, KC_P4, KC_P5, KC_P6, KC_PPLS, - KC_LSFT, KC_NUBS, 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_P1, KC_P2, KC_P3, - KC_LCTL, KC_LWIN, KC_LALT, KC_SPC, KC_RALT, KC_RWIN, MO(WIN_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT, KC_P0, KC_PDOT, KC_PENT), - - [WIN_FN] = LAYOUT_109_iso( - _______, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, RGB_TOG, _______, _______, _______, _______, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), -}; - -// clang-format on -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - if (!process_record_keychron_common(keycode, record)) { - return false; - } - return true; -} diff --git a/keyboards/keychron/k5_max/iso/rgb/keymaps/via/keymap.c b/keyboards/keychron/k5_max/iso/rgb/keymaps/via/keymap.c deleted file mode 100644 index 9972f8a49d..0000000000 --- a/keyboards/keychron/k5_max/iso/rgb/keymaps/via/keymap.c +++ /dev/null @@ -1,68 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#include QMK_KEYBOARD_H -#include "keychron_common.h" - -enum layers { - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN, -}; - -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_109_iso( - KC_ESC, KC_BRID, KC_BRIU, KC_MCTRL, KC_LNPAD, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_SNAP, KC_SIRI, RGB_MOD, KC_F13, KC_F14, KC_F15, KC_F16, - KC_GRV, 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_INS, KC_HOME, KC_PGUP, KC_NUM, KC_PSLS, KC_PAST, KC_PMNS, - 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_DEL, KC_END, KC_PGDN, KC_P7, KC_P8, KC_P9, - 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_NUHS, KC_ENT, KC_P4, KC_P5, KC_P6, KC_PPLS, - KC_LSFT, KC_NUBS, 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_P1, KC_P2, KC_P3, - KC_LCTL, KC_LOPTN, KC_LCMMD, KC_SPC, KC_RCMMD, KC_ROPTN,MO(MAC_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT, KC_P0, KC_PDOT, KC_PENT), - - [MAC_FN] = LAYOUT_109_iso( - _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, RGB_TOG, _______, _______, _______, _______, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - - [WIN_BASE] = LAYOUT_109_iso( - KC_ESC, 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_PSCR, KC_CTANA, RGB_MOD, _______, _______, _______, _______, - KC_GRV, 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_INS, KC_HOME, KC_PGUP, KC_NUM, KC_PSLS, KC_PAST, KC_PMNS, - 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_DEL, KC_END, KC_PGDN, KC_P7, KC_P8, KC_P9, - 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_NUHS, KC_ENT, KC_P4, KC_P5, KC_P6, KC_PPLS, - KC_LSFT, KC_NUBS, 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_P1, KC_P2, KC_P3, - KC_LCTL, KC_LWIN, KC_LALT, KC_SPC, KC_RALT, KC_RWIN, MO(WIN_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT, KC_P0, KC_PDOT, KC_PENT), - - [WIN_FN] = LAYOUT_109_iso( - _______, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, RGB_TOG, _______, _______, _______, _______, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), -}; - -// clang-format on -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - if (!process_record_keychron_common(keycode, record)) { - return false; - } - return true; -} diff --git a/keyboards/keychron/k5_max/iso/rgb/keymaps/via/rules.mk b/keyboards/keychron/k5_max/iso/rgb/keymaps/via/rules.mk deleted file mode 100644 index 1e5b99807c..0000000000 --- a/keyboards/keychron/k5_max/iso/rgb/keymaps/via/rules.mk +++ /dev/null @@ -1 +0,0 @@ -VIA_ENABLE = yes diff --git a/keyboards/keychron/k5_max/iso/rgb/rgb.c b/keyboards/keychron/k5_max/iso/rgb/rgb.c deleted file mode 100644 index 7a88b55d75..0000000000 --- a/keyboards/keychron/k5_max/iso/rgb/rgb.c +++ /dev/null @@ -1,175 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#include "quantum.h" - -// clang-format off -#ifdef RGB_MATRIX_ENABLE -const snled27351_led_t g_snled27351_leds[RGB_MATRIX_LED_COUNT] = { -/* Refer to SNLED27351 manual for these locations - * driver - * | R location - * | | G location - * | | | B location - * | | | | */ - {0, G_1, I_1, H_1}, - {0, G_2, I_2, H_2}, - {0, G_3, I_3, H_3}, - {0, G_4, I_4, H_4}, - {0, G_5, I_5, H_5}, - {0, G_6, I_6, H_6}, - {0, G_7, I_7, H_7}, - {0, G_8, I_8, H_8}, - {0, G_9, I_9, H_9}, - {0, G_10, I_10, H_10}, - {0, G_11, I_11, H_11}, - {0, G_12, I_12, H_12}, - {0, G_13, I_13, H_13}, - {0, G_15, I_15, H_15}, - {0, G_16, I_16, H_16}, - {0, G_14, I_14, H_14}, - {1, G_13, I_13, H_13}, - {1, G_15, I_15, H_15}, - {1, G_16, I_16, H_16}, - {1, A_15, C_15, B_15}, - - {0, D_1, F_1, E_1}, - {0, D_2, F_2, E_2}, - {0, D_3, F_3, E_3}, - {0, D_4, F_4, E_4}, - {0, D_5, F_5, E_5}, - {0, D_6, F_6, E_6}, - {0, D_7, F_7, E_7}, - {0, D_8, F_8, E_8}, - {0, D_9, F_9, E_9}, - {0, D_10, F_10, E_10}, - {0, D_11, F_11, E_11}, - {0, D_12, F_12, E_12}, - {0, D_13, F_13, E_13}, - {0, D_14, F_14, E_14}, - {0, D_15, F_15, E_15}, - {0, D_16, F_16, E_16}, - {0, J_7, L_7, K_7}, - {0, J_8, L_8, K_8}, - {0, J_9, L_9, K_9}, - {0, J_10, L_10, K_10}, - {0, J_11, L_11, K_11}, - - {0, C_1, A_1, B_1}, - {0, C_2, A_2, B_2}, - {0, C_3, A_3, B_3}, - {0, C_4, A_4, B_4}, - {0, C_5, A_5, B_5}, - {0, C_6, A_6, B_6}, - {0, C_7, A_7, B_7}, - {0, C_8, A_8, B_8}, - {0, C_9, A_9, B_9}, - {0, C_10, A_10, B_10}, - {0, C_11, A_11, B_11}, - {0, C_12, A_12, B_12}, - {0, C_13, A_13, B_13}, - {0, C_14, A_14, B_14}, - {0, C_15, A_15, B_15}, - {0, C_16, A_16, B_16}, - {0, J_12, L_12, K_12}, - {0, J_13, L_13, K_13}, - {0, J_14, L_14, K_14}, - {0, J_15, L_15, K_15}, - {0, J_16, L_16, K_16}, - - {1, G_1, I_1, H_1}, - {1, G_2, I_2, H_2}, - {1, G_3, I_3, H_3}, - {1, G_4, I_4, H_4}, - {1, G_5, I_5, H_5}, - {1, G_6, I_6, H_6}, - {1, G_7, I_7, H_7}, - {1, G_8, I_8, H_8}, - {1, G_9, I_9, H_9}, - {1, G_10, I_10, H_10}, - {1, G_11, I_11, H_11}, - {1, G_12, I_12, H_12}, - {1, G_14, I_14, H_14}, - {1, J_7, L_7, K_7}, - {1, J_8, L_8, K_8}, - {1, J_9, L_9, K_9}, - - {1, A_1, C_1, B_1}, - {1, A_2, C_2, B_2}, - {1, A_3, C_3, B_3}, - {1, A_4, C_4, B_4}, - {1, A_5, C_5, B_5}, - {1, A_6, C_6, B_6}, - {1, A_7, C_7, B_7}, - {1, A_8, C_8, B_8}, - {1, A_9, C_9, B_9}, - {1, A_10, C_10, B_10}, - {1, A_11, C_11, B_11}, - {1, A_12, C_12, B_12}, - {1, A_14, C_14, B_14}, - {1, A_16, C_16, B_16}, - {1, J_10, L_10, K_10}, - {1, J_11, L_11, K_11}, - {1, J_12, L_12, K_12}, - {1, J_13, L_13, K_13}, - - {1, D_1, F_1, E_1}, - {1, D_2, F_2, E_2}, - {1, D_3, F_3, E_3}, - {1, D_7, F_7, E_7}, - {1, D_11, F_11, E_11}, - {1, D_12, F_12, E_12}, - {1, D_13, F_13, E_13}, - {1, D_14, F_14, E_14}, - {1, D_15, F_15, E_15}, - {1, D_16, F_16, E_16}, - {1, J_14, L_14, K_14}, - {1, J_15, L_15, K_15}, - {1, J_16, L_16, K_16}, -}; - -#define __ NO_LED - -led_config_t g_led_config = { - { - // Key Matrix to LED Index - { 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, 40 }, - { 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61 }, - { 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, __, 74, __, __, __, 75, 76, 77, __ }, - { 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, __, 90, __, 91, __, 92, 93, 94, 95 }, - { 96, 97, 98, __, __, __, 99, __, __, __, 100, 101, 102, 103, 104, 105, 106, 107, __, 108, __ }, - }, - { - // LED Index to Physical Position - {0, 0}, {21, 0}, {32, 0}, {42, 0}, {53, 0}, {69, 0}, {79, 0}, {90, 0}, {100, 0}, {116, 0}, {127, 0}, {137, 0}, {148, 0}, {160, 0}, {170, 0}, {181, 0}, {192, 0}, {203, 0}, {213, 0}, {224, 0}, - {0,14}, {11,14}, {21,14}, {32,14}, {42,14}, {53,14}, {63,14}, {74,14}, { 84,14}, { 95,14}, {106,14}, {116,14}, {127,14}, {143,14}, {160,14}, {170,14}, {181,14}, {192,14}, {203,14}, {213,14}, {224,14}, - {3,26}, {16,26}, {26,26}, {37,26}, {48,26}, {58,26}, {69,26}, {79,26}, { 90,26}, {100,26}, {111,26}, {121,26}, {132,26}, {145,32}, {160,26}, {170,26}, {181,26}, {192,26}, {203,26}, {213,26}, {224,33}, - {4,39}, {19,39}, {29,39}, {40,39}, {50,39}, {61,39}, {71,39}, {82,39}, { 92,39}, {103,39}, {114,39}, {124,39}, {134,39}, {192,39}, {203,39}, {213,39}, - {4,51}, {12,39}, {24,51}, {34,51}, {45,51}, {55,51}, {66,51}, {77,51}, { 87,51}, { 98,51}, {108,51}, {119,51}, {139,51}, {170,51}, {192,51}, {203,51}, {213,51}, {224,58}, - {1,64}, {15,64}, {28,64}, {67,64}, {107,64}, {120,64}, {133,64}, {147,64}, {160,64}, {170,64}, {181,64}, {198,64}, {213,64}, - }, - { - // RGB LED Index to Flag - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - } -}; -#endif diff --git a/keyboards/keychron/k5_max/iso/rgb/rules.mk b/keyboards/keychron/k5_max/iso/rgb/rules.mk deleted file mode 100644 index 6e7633bfe0..0000000000 --- a/keyboards/keychron/k5_max/iso/rgb/rules.mk +++ /dev/null @@ -1 +0,0 @@ -# This file intentionally left blank diff --git a/keyboards/keychron/k5_max/iso/white/config.h b/keyboards/keychron/k5_max/iso/white/config.h deleted file mode 100644 index 6ebcc770b7..0000000000 --- a/keyboards/keychron/k5_max/iso/white/config.h +++ /dev/null @@ -1,52 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#pragma once - -#ifdef LED_MATRIX_ENABLE -/* LED matrix driver configuration */ -# define DRIVER_COUNT 1 -# define LED_MATRIX_LED_COUNT 109 - -# define SPI_SCK_PIN A5 -# define SPI_MISO_PIN A6 -# define SPI_MOSI_PIN A7 - -# define DRIVER_CS_PINS \ - { B9 } -# define SNLED23751_SPI_DIVISOR 16 -# define SPI_DRIVER SPID1 - -/* Use first 8 channels of LED driver */ -# define SNLED27351_PHASE_CHANNEL MSKPHASE_8CHANNEL - -/* Set LED driver current */ -# define SNLED27351_CURRENT_TUNE \ - { 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20 } - -/* Set to infinit, which is use in USB mode by default */ -# define LED_MATRIX_TIMEOUT LED_MATRIX_TIMEOUT_INFINITE -/* Allow shutdown of led driver to save power */ -# define LED_MATRIX_DRIVER_SHUTDOWN_ENABLE -/* Turn off backlight on low brightness to save power */ -# define LED_MATRIX_BRIGHTNESS_TURN_OFF_VAL 48 - -/* Indications */ -# define LOW_BAT_IND_INDEX \ - { 99 } - -# define LED_MATRIX_KEYPRESSES -#endif diff --git a/keyboards/keychron/k5_max/iso/white/info.json b/keyboards/keychron/k5_max/iso/white/info.json deleted file mode 100644 index ec3b99c11e..0000000000 --- a/keyboards/keychron/k5_max/iso/white/info.json +++ /dev/null @@ -1,30 +0,0 @@ -{ - "usb": { - "pid": "0x0A54", - "device_version": "1.0.0" - }, - "features": { - "led_matrix": true - }, - "led_matrix": { - "driver": "snled27351_spi", - "sleep": true, - "animations": { - "none": true, - "solid": true, - "breathing": true, - "band_pinwheel": true, - "band_spiral": true, - "cycle_left_right": true, - "cycle_up_down": true, - "cycle_out_in": true, - "dual_beacon": true, - "solid_reactive_simple": true, - "solid_reactive_multiwide": true, - "solid_reactive_multinexus": true, - "solid_splash": true, - "wave_left_right": true, - "wave_up_down": true - } - } -} diff --git a/keyboards/keychron/k5_max/iso/white/keymaps/default/keymap.c b/keyboards/keychron/k5_max/iso/white/keymaps/default/keymap.c deleted file mode 100644 index 2ea0c3daef..0000000000 --- a/keyboards/keychron/k5_max/iso/white/keymaps/default/keymap.c +++ /dev/null @@ -1,68 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#include QMK_KEYBOARD_H -#include "keychron_common.h" - -enum layers { - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN, -}; - -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_108_ansi( - KC_ESC, KC_BRID, KC_BRIU, KC_MCTRL, KC_LNPAD, BL_DOWN, BL_UP, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_SNAP, KC_SIRI, BL_STEP, KC_F13, KC_F14, KC_F15, KC_F16, - KC_GRV, 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_INS, KC_HOME, KC_PGUP, KC_NUM, KC_PSLS, KC_PAST, KC_PMNS, - 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_DEL, KC_END, KC_PGDN, KC_P7, KC_P8, KC_P9, - 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_P4, KC_P5, KC_P6, KC_PPLS, - 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_P1, KC_P2, KC_P3, - KC_LCTL, KC_LOPTN, KC_LCMMD, KC_SPC, KC_RCMMD, KC_ROPTN,MO(MAC_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT, KC_P0, KC_PDOT, KC_PENT), - - [MAC_FN] = LAYOUT_108_ansi( - _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, BL_TOGG, _______, _______, _______, _______, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - BL_TOGG, BL_STEP, BL_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, BL_DOWN, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - - [WIN_BASE] = LAYOUT_108_ansi( - KC_ESC, 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_PSCR, KC_CTANA, BL_STEP, _______, _______, _______, _______, - KC_GRV, 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_INS, KC_HOME, KC_PGUP, KC_NUM, KC_PSLS, KC_PAST, KC_PMNS, - 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_DEL, KC_END, KC_PGDN, KC_P7, KC_P8, KC_P9, - 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_P4, KC_P5, KC_P6, KC_PPLS, - 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_P1, KC_P2, KC_P3, - KC_LCTL, KC_LWIN, KC_LALT, KC_SPC, KC_RALT, KC_RWIN, MO(WIN_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT, KC_P0, KC_PDOT, KC_PENT), - - [WIN_FN] = LAYOUT_108_ansi( - _______, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, BL_DOWN, BL_UP, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, BL_TOGG, _______, _______, _______, _______, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - BL_TOGG, BL_STEP, BL_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, BL_DOWN, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), -}; - -// clang-format on -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - if (!process_record_keychron_common(keycode, record)) { - return false; - } - return true; -} diff --git a/keyboards/keychron/k5_max/iso/white/keymaps/via/keymap.c b/keyboards/keychron/k5_max/iso/white/keymaps/via/keymap.c deleted file mode 100644 index 2ea0c3daef..0000000000 --- a/keyboards/keychron/k5_max/iso/white/keymaps/via/keymap.c +++ /dev/null @@ -1,68 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#include QMK_KEYBOARD_H -#include "keychron_common.h" - -enum layers { - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN, -}; - -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_108_ansi( - KC_ESC, KC_BRID, KC_BRIU, KC_MCTRL, KC_LNPAD, BL_DOWN, BL_UP, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_SNAP, KC_SIRI, BL_STEP, KC_F13, KC_F14, KC_F15, KC_F16, - KC_GRV, 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_INS, KC_HOME, KC_PGUP, KC_NUM, KC_PSLS, KC_PAST, KC_PMNS, - 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_DEL, KC_END, KC_PGDN, KC_P7, KC_P8, KC_P9, - 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_P4, KC_P5, KC_P6, KC_PPLS, - 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_P1, KC_P2, KC_P3, - KC_LCTL, KC_LOPTN, KC_LCMMD, KC_SPC, KC_RCMMD, KC_ROPTN,MO(MAC_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT, KC_P0, KC_PDOT, KC_PENT), - - [MAC_FN] = LAYOUT_108_ansi( - _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, BL_TOGG, _______, _______, _______, _______, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - BL_TOGG, BL_STEP, BL_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, BL_DOWN, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - - [WIN_BASE] = LAYOUT_108_ansi( - KC_ESC, 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_PSCR, KC_CTANA, BL_STEP, _______, _______, _______, _______, - KC_GRV, 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_INS, KC_HOME, KC_PGUP, KC_NUM, KC_PSLS, KC_PAST, KC_PMNS, - 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_DEL, KC_END, KC_PGDN, KC_P7, KC_P8, KC_P9, - 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_P4, KC_P5, KC_P6, KC_PPLS, - 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_P1, KC_P2, KC_P3, - KC_LCTL, KC_LWIN, KC_LALT, KC_SPC, KC_RALT, KC_RWIN, MO(WIN_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT, KC_P0, KC_PDOT, KC_PENT), - - [WIN_FN] = LAYOUT_108_ansi( - _______, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, BL_DOWN, BL_UP, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, BL_TOGG, _______, _______, _______, _______, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - BL_TOGG, BL_STEP, BL_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, BL_DOWN, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), -}; - -// clang-format on -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - if (!process_record_keychron_common(keycode, record)) { - return false; - } - return true; -} diff --git a/keyboards/keychron/k5_max/iso/white/keymaps/via/rules.mk b/keyboards/keychron/k5_max/iso/white/keymaps/via/rules.mk deleted file mode 100644 index 1e5b99807c..0000000000 --- a/keyboards/keychron/k5_max/iso/white/keymaps/via/rules.mk +++ /dev/null @@ -1 +0,0 @@ -VIA_ENABLE = yes diff --git a/keyboards/keychron/k5_max/iso/white/rules.mk b/keyboards/keychron/k5_max/iso/white/rules.mk deleted file mode 100644 index 6e7633bfe0..0000000000 --- a/keyboards/keychron/k5_max/iso/white/rules.mk +++ /dev/null @@ -1 +0,0 @@ -# This file intentionally left blank diff --git a/keyboards/keychron/k5_max/iso/white/white.c b/keyboards/keychron/k5_max/iso/white/white.c deleted file mode 100644 index 0499b14fc1..0000000000 --- a/keyboards/keychron/k5_max/iso/white/white.c +++ /dev/null @@ -1,173 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#include "quantum.h" - -// clang-format off -#ifdef LED_MATRIX_ENABLE -const snled27351_led_t g_snled27351_leds[LED_MATRIX_LED_COUNT] = { -/* Refer to SNLED27351 manual for these locations - * driver - * | LED address - * | | */ - {0, F_1}, - {0, F_2}, - {0, F_3}, - {0, F_4}, - {0, F_5}, - {0, F_6}, - {0, F_7}, - {0, F_8}, - {0, F_9}, - {0, F_10}, - {0, F_11}, - {0, F_12}, - {0, F_13}, - {0, F_15}, - {0, F_16}, - {0, F_14}, - {0, H_7}, - {0, H_8}, - {0, H_9}, - {0, H_10}, - - {0, E_1}, - {0, E_2}, - {0, E_3}, - {0, E_4}, - {0, E_5}, - {0, E_6}, - {0, E_7}, - {0, E_8}, - {0, E_9}, - {0, E_10}, - {0, E_11}, - {0, E_12}, - {0, E_13}, - {0, E_14}, - {0, E_15}, - {0, E_16}, - {0, G_7}, - {0, G_8}, - {0, G_9}, - {0, G_10}, - {0, G_11}, - - {0, D_1}, - {0, D_2}, - {0, D_3}, - {0, D_4}, - {0, D_5}, - {0, D_6}, - {0, D_7}, - {0, D_8}, - {0, D_9}, - {0, D_10}, - {0, D_11}, - {0, D_12}, - {0, D_13}, - {0, D_14}, - {0, D_15}, - {0, D_16}, - {0, G_12}, - {0, G_13}, - {0, G_14}, - {0, G_15}, - {0, G_16}, - - {0, C_1}, - {0, C_2}, - {0, C_3}, - {0, C_4}, - {0, C_5}, - {0, C_6}, - {0, C_7}, - {0, C_8}, - {0, C_9}, - {0, C_10}, - {0, C_11}, - {0, C_12}, - {0, C_14}, - {0, C_13}, - {0, C_15}, - {0, C_16}, - - {0, B_1}, - {0, B_2}, - {0, B_3}, - {0, B_4}, - {0, B_5}, - {0, B_6}, - {0, B_7}, - {0, B_8}, - {0, B_9}, - {0, B_10}, - {0, B_11}, - {0, B_12}, - {0, B_14}, - {0, B_16}, - {0, B_13}, - {0, H_11}, - {0, H_12}, - {0, H_13}, - - {0, A_1}, - {0, A_2}, - {0, A_3}, - {0, A_7}, - {0, A_11}, - {0, A_12}, - {0, A_13}, - {0, A_14}, - {0, A_15}, - {0, A_16}, - {0, H_14}, - {0, H_15}, - {0, H_16}, -}; - -#define __ NO_LED - -led_config_t g_led_config = { - { - // Key Matrix to LED Index - { 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, 40 }, - { 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61 }, - { 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, __, 74, __, __, __, 75, 76, 77, __ }, - { 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, __, 90, __, 91, __, 92, 93, 94, 95 }, - { 96, 97, 98, __, __, __, 99, __, __, __, 100, 101, 102, 103, 104, 105, 106, 107, __, 108, __ }, - }, - { - // LED Index to Physical Position - {0, 0}, {21, 0}, {32, 0}, {42, 0}, {53, 0}, {69, 0}, {79, 0}, {90, 0}, {100, 0}, {116, 0}, {127, 0}, {137, 0}, {148, 0}, {160, 0}, {170, 0}, {181, 0}, {192, 0}, {203, 0}, {213, 0}, {224, 0}, - {0,14}, {11,14}, {21,14}, {32,14}, {42,14}, {53,14}, {63,14}, {74,14}, { 84,14}, { 95,14}, {106,14}, {116,14}, {127,14}, {143,14}, {160,14}, {170,14}, {181,14}, {192,14}, {203,14}, {213,14}, {224,14}, - {3,26}, {16,26}, {26,26}, {37,26}, {48,26}, {58,26}, {69,26}, {79,26}, { 90,26}, {100,26}, {111,26}, {121,26}, {132,26}, {145,32}, {160,26}, {170,26}, {181,26}, {192,26}, {203,26}, {213,26}, {224,33}, - {4,39}, {19,39}, {29,39}, {40,39}, {50,39}, {61,39}, {71,39}, {82,39}, { 92,39}, {103,39}, {114,39}, {124,39}, {134,39}, {192,39}, {203,39}, {213,39}, - {4,51}, {12,39}, {24,51}, {34,51}, {45,51}, {55,51}, {66,51}, {77,51}, { 87,51}, { 98,51}, {108,51}, {119,51}, {139,51}, {170,51}, {192,51}, {203,51}, {213,51}, {224,58}, - {1,64}, {15,64}, {28,64}, {67,64}, {107,64}, {120,64}, {133,64}, {147,64}, {160,64}, {170,64}, {181,64}, {198,64}, {213,64}, - }, - { - // LED Index to Flag - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - } -}; -#endif diff --git a/keyboards/keychron/k5_max/k5_max.c b/keyboards/keychron/k5_max/k5_max.c deleted file mode 100644 index f0ab1c6105..0000000000 --- a/keyboards/keychron/k5_max/k5_max.c +++ /dev/null @@ -1,97 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#include "quantum.h" -#include "keychron_task.h" -#ifdef FACTORY_TEST_ENABLE -# include "factory_test.h" -# include "keychron_common.h" -#endif -#ifdef LK_WIRELESS_ENABLE -# include "lkbt51.h" -# include "wireless.h" -# include "transport.h" -# include "keychron_wireless_common.h" -# include "battery.h" -#endif - -#define POWER_ON_LED_DURATION 3000 -static uint32_t power_on_indicator_timer; - -#ifdef LK_WIRELESS_ENABLE -pin_t bt_led_pins[] = BT_HOST_LED_PIN_LIST; -pin_t p24g_led_pins[] = P24G_HOST_LED_PIN_LIST; -#endif - -bool dip_switch_update_kb(uint8_t index, bool active) { - dip_switch_update_user(index, active); - - return true; -} - -void keyboard_post_init_kb(void) { -#ifdef LK_WIRELESS_ENABLE - palSetLineMode(P2P4_MODE_SELECT_PIN, PAL_MODE_INPUT); - palSetLineMode(BT_MODE_SELECT_PIN, PAL_MODE_INPUT); - - writePin(BAT_LOW_LED_PIN, BAT_LOW_LED_PIN_ON_STATE); - lkbt51_init(false); - wireless_init(); -#endif - - power_on_indicator_timer = timer_read32(); -#ifdef ENCODER_ENABLE - encoder_cb_init(); -#endif - - keyboard_post_init_user(); -} - -bool keychron_task_kb(void) { - if (power_on_indicator_timer) { - if (timer_elapsed32(power_on_indicator_timer) > POWER_ON_LED_DURATION) { - power_on_indicator_timer = 0; - - if (!host_keyboard_led_state().caps_lock) writePin(LED_CAPS_LOCK_PIN, !LED_PIN_ON_STATE); -#ifdef LK_WIRELESS_ENABLE - writePin(BAT_LOW_LED_PIN, !BAT_LOW_LED_PIN_ON_STATE); - for (uint8_t i = 0; i < sizeof(bt_led_pins) / sizeof(pin_t); i++) - writePin(bt_led_pins[i], 1); - for (uint8_t i = 0; i < sizeof(p24g_led_pins) / sizeof(pin_t); i++) - writePin(p24g_led_pins[i], 1); -#endif - - } else { - writePin(LED_CAPS_LOCK_PIN, LED_PIN_ON_STATE); -#ifdef LK_WIRELESS_ENABLE - writePin(BAT_LOW_LED_PIN, BAT_LOW_LED_PIN_ON_STATE); - if (get_transport() != TRANSPORT_P2P4) - for (uint8_t i = 0; i < sizeof(bt_led_pins) / sizeof(pin_t); i++) - writePin(bt_led_pins[i], 0); - if (get_transport() != TRANSPORT_BLUETOOTH) - for (uint8_t i = 0; i < sizeof(p24g_led_pins) / sizeof(pin_t); i++) - writePin(p24g_led_pins[i], 0); -#endif - } - } - return true; -} - -#ifdef LK_WIRELESS_ENABLE -bool lpm_is_kb_idle(void) { - return power_on_indicator_timer == 0 && !factory_reset_indicating(); -} -#endif diff --git a/keyboards/keychron/k5_max/mcuconf.h b/keyboards/keychron/k5_max/mcuconf.h deleted file mode 100644 index 89294ee64b..0000000000 --- a/keyboards/keychron/k5_max/mcuconf.h +++ /dev/null @@ -1,37 +0,0 @@ -/* Copyright 2024 @ 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 - -#include_next - -#undef STM32_HSECLK -#define STM32_HSECLK 16000000 - -#undef STM32_PLLM_VALUE -#define STM32_PLLM_VALUE 8 - -#undef STM32_PLLN_VALUE -#define STM32_PLLN_VALUE 96 - -#undef STM32_PLLP_VALUE -#define STM32_PLLP_VALUE 4 - -#undef STM32_PLLQ_VALUE -#define STM32_PLLQ_VALUE 4 - -#undef STM32_SPI_USE_SPI1 -#define STM32_SPI_USE_SPI1 TRUE diff --git a/keyboards/keychron/k5_max/readme.md b/keyboards/keychron/k5_max/readme.md deleted file mode 100644 index b5918289a0..0000000000 --- a/keyboards/keychron/k5_max/readme.md +++ /dev/null @@ -1,23 +0,0 @@ -# Keychron K5 Max - -![Keychron K5 Max](https://cdn.shopify.com/s/files/1/0059/0630/1017/files/K5-Max-page13.jpg?v=1705308494) - -A customizable 84 keys 100% fullsize keyboard. - -* Keyboard Maintainer: [Keychron](https://github.com/keychron) -* Hardware Supported: Keychron K5 Max -* Hardware Availability: [Keychron K5 Max QMK/VIA Wireless Custom Mechanical Keyboard](https://www.keychron.com/products/keychron-k5-max-qmk-via-wireless-custom-mechanical-keyboard) - -Make example for this keyboard (after setting up your build environment): - - make keychron/k5_max/ansi/rgb:default - make keychron/k5_max/ansi/white:default - -Flashing example for this keyboard: - - make keychron/k5_max/ansi/rgb:default:flash - make keychron/k5_max/ansi/white:default:flash - -**Reset Key**: Disconnect the USB cable, toggle mode switch to "Cable", hold down the *Esc* key or reset button underneath space bar, then connect the USB cable. - -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). diff --git a/keyboards/keychron/k5_max/rules.mk b/keyboards/keychron/k5_max/rules.mk deleted file mode 100644 index 4eaf6820bc..0000000000 --- a/keyboards/keychron/k5_max/rules.mk +++ /dev/null @@ -1,4 +0,0 @@ -include keyboards/keychron/common/wireless/wireless.mk -include keyboards/keychron/common/keychron_common.mk - -VPATH += $(TOP_DIR)/keyboards/keychron diff --git a/keyboards/keychron/k5_max/via_json/k5_max_ansi_rgb.json b/keyboards/keychron/k5_max/via_json/k5_max_ansi_rgb.json deleted file mode 100644 index ea914fbd76..0000000000 --- a/keyboards/keychron/k5_max/via_json/k5_max_ansi_rgb.json +++ /dev/null @@ -1,342 +0,0 @@ -{ - "name": "Keychron K5 Max ANSI RGB", - "vendorId": "0x3434", - "productId": "0x0A50", - "keycodes": ["qmk_lighting"], - "menus": [ - { - "label": "Lighting", - "content": [ - { - "label": "Backlight", - "content": [ - { - "label": "Brightness", - "type": "range", - "options": [0, 255], - "content": ["id_qmk_rgb_matrix_brightness", 3, 1] - }, - { - "label": "Effect", - "type": "dropdown", - "content": ["id_qmk_rgb_matrix_effect", 3, 2], - "options": [ - ["None", 0], - ["Solid Color", 1], - ["Breathing", 2], - ["Band Spiral Val", 3], - ["Cycle All", 4], - ["Cycle Left Right", 5], - ["Cycle Up Down", 6], - ["Rainbow Moving Chevron", 7], - ["Cycle Out In", 8], - ["Cycle Out In Dual", 9], - ["Cycle Pinwheel", 10], - ["Cycle Spiral", 11], - ["Dual Beacon", 12], - ["Rainbow Beacon", 13], - ["Jellybean Raindrops", 14], - ["Pixel Rain", 15], - ["Typing Heatmap", 16], - ["Digital Rain", 17], - ["Reactive Simple", 18], - ["Reactive Multiwide", 19], - ["Reactive Multinexus", 20], - ["Splash", 21], - ["Solid Splash", 22] - ] - }, - { - "showIf": "{id_qmk_rgb_matrix_effect} > 1", - "label": "Effect Speed", - "type": "range", - "options": [0, 255], - "content": ["id_qmk_rgb_matrix_effect_speed", 3, 3] - }, - { - "showIf": "{id_qmk_rgb_matrix_effect} != 0 && ( {id_qmk_rgb_matrix_effect} < 4 || {id_qmk_rgb_matrix_effect} == 18 || ({id_qmk_rgb_matrix_effect} > 17 && {id_qmk_rgb_matrix_effect} != 21) ) ", - "label": "Color", - "type": "color", - "content": ["id_qmk_rgb_matrix_color", 3, 4] - } - ] - } - ] - } - ], - "customKeycodes": [ - {"name": "Left Option", "title": "Left Option", "shortName": "LOpt"}, - {"name": "Right Option", "title": "Right Option", "shortName": "ROpt"}, - {"name": "Left Cmd", "title": "Left Command", "shortName": "LCmd"}, - {"name": "Right Cmd", "title": "Right Command", "shortName": "RCmd"}, - {"name": "Misson Control", "title": "Misson Control in Mac", "shortName": "MCtl"}, - {"name": "Lanuch Pad", "title": "Lanuch Pad in Windows", "shortName": "LPad"}, - {"name": "Task View", "title": "Task View in Windows", "shortName": "Task"}, - {"name": "File Explorer", "title": "File Explorer in Windows", "shortName": "File"}, - {"name": "Screen shot", "title": "Screenshot in macOS", "shortName": "SShot"}, - {"name": "Cortana", "title": "Cortana in Windows", "shortName": "Cortana"}, - {"name": "Siri", "title": "Siri in macOS", "shortName": "Siri"}, - {"name": "Bluetooth Host 1", "title": "Bluetooth Host 1", "shortName": "BTH1"}, - {"name": "Bluetooth Host 2", "title": "Bluetooth Host 2", "shortName": "BTH2"}, - {"name": "Bluetooth Host 3", "title": "Bluetooth Host 3", "shortName": "BTH3"}, - {"name": "2.4G", "title": "2.4G", "shortName": "2.4G"}, - {"name": "Battery Level", "title": "Show battery level", "shortName": "Batt"} - ], - "matrix": {"rows": 6, "cols" : 21}, - "layouts": { - "keymap": [ - [ - { - "c": "#777777" - }, - "0, 0", - { - "x": 1, - "c": "#cccccc" - }, - "0, 1", - "0, 2", - "0, 3", - "0, 4", - { - "x": 0.5, - "c": "#aaaaaa" - }, - "0, 5", - "0, 6", - "0, 7", - "0, 8", - { - "x": 0.5, - "c": "#cccccc" - }, - "0, 9", - "0, 10", - "0, 11", - "0, 12", - { - "x": 0.25, - "c": "#aaaaaa" - }, - "0, 14", - "0, 15", - "0, 16", - { - "x": 0.25, - "c": "#cccccc" - }, - "0, 17", - "0, 18", - "0, 19", - "0, 20" - ], - [ - { - "c": "#aaaaaa" - }, - "1, 0", - { - "c": "#cccccc" - }, - "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": 2, - "c": "#aaaaaa" - }, - "1, 13", - { - "x": 0.25 - }, - "1, 14", - "1, 15", - "1, 16", - { - "x": 0.25, - "c": "#cccccc" - }, - "1, 17", - "1, 18", - "1, 19", - "1, 20" - ], - [ - { - "w": 1.5, - "c": "#aaaaaa" - }, - "2, 0", - { - "c": "#cccccc" - }, - "2, 1", - "2, 2", - "2, 3", - "2, 4", - "2, 5", - "2, 6", - "2, 7", - "2, 8", - "2, 9", - "2, 10", - "2, 11", - "2, 12", - { - "w": 1.5, - "c": "#aaaaaa" - }, - "2, 13", - { - "x": 0.25 - }, - "2, 14", - "2, 15", - "2, 16", - { - "x": 0.25, - "c": "#cccccc" - }, - "2, 17", - "2, 18", - "2, 19", - { - "h": 2 - }, - "2, 20" - ], - [ - { - "w": 1.75, - "c": "#aaaaaa" - }, - "3, 0", - { - "c": "#cccccc" - }, - "3, 1", - "3, 2", - "3, 3", - "3, 4", - "3, 5", - "3, 6", - "3, 7", - "3, 8", - "3, 9", - "3, 10", - "3, 11", - { - "w": 2.25, - "c": "#777777" - }, - "3, 13", - { - "x": 3.5, - "c": "#cccccc" - }, - "3, 17", - "3, 18", - "3, 19" - ], - [ - { - "w": 2.25, - "c": "#aaaaaa" - }, - "4, 0", - { - "c": "#cccccc" - }, - "4, 2", - "4, 3", - "4, 4", - "4, 5", - "4, 6", - "4, 7", - "4, 8", - "4, 9", - "4, 10", - "4, 11", - { - "w": 2.75, - "c": "#aaaaaa" - }, - "4, 13", - { - "x": 1.25, - "c": "#cccccc" - }, - "4, 15", - { - "x": 1.25 - }, - "4, 17", - "4, 18", - "4, 19", - { - "h": 2 - }, - "4, 20" - ], - [ - { - "w": 1.25, - "c": "#aaaaaa" - }, - "5, 0", - { - "w": 1.25 - }, - "5, 1", - { - "w": 1.25 - }, - "5, 2", - { - "w": 6.25, - "c": "#cccccc" - }, - "5, 6", - { - "w": 1.25, - "c": "#aaaaaa" - }, - "5, 10", - { - "w": 1.25 - }, - "5, 11", - { - "w": 1.25 - }, - "5, 12", - { - "w": 1.25 - }, - "5, 13", - { - "x": 0.25, - "c": "#cccccc" - }, - "5, 14", - "5, 15", - "5, 16", - { - "x": 0.25, - "w": 2 - }, - "5, 17", - "5, 19" - ] - ] - } - } diff --git a/keyboards/keychron/k5_max/via_json/k5_max_ansi_white.json b/keyboards/keychron/k5_max/via_json/k5_max_ansi_white.json deleted file mode 100644 index e1f8f410f7..0000000000 --- a/keyboards/keychron/k5_max/via_json/k5_max_ansi_white.json +++ /dev/null @@ -1,281 +0,0 @@ -{ - "name": "Keychron K5 Max ANSI White", - "vendorId": "0x3434", - "productId": "0x0A53", - "keycodes": ["qmk_lighting"], - "customKeycodes": [ - {"name": "Left Option", "title": "Left Option", "shortName": "LOpt"}, - {"name": "Right Option", "title": "Right Option", "shortName": "ROpt"}, - {"name": "Left Cmd", "title": "Left Command", "shortName": "LCmd"}, - {"name": "Right Cmd", "title": "Right Command", "shortName": "RCmd"}, - {"name": "Misson Control", "title": "Misson Control in Mac", "shortName": "MCtl"}, - {"name": "Lanuch Pad", "title": "Lanuch Pad in Windows", "shortName": "LPad"}, - {"name": "Task View", "title": "Task View in Windows", "shortName": "Task"}, - {"name": "File Explorer", "title": "File Explorer in Windows", "shortName": "File"}, - {"name": "Screen shot", "title": "Screenshot in macOS", "shortName": "SShot"}, - {"name": "Cortana", "title": "Cortana in Windows", "shortName": "Cortana"}, - {"name": "Siri", "title": "Siri in macOS", "shortName": "Siri"}, - {"name": "Bluetooth Host 1", "title": "Bluetooth Host 1", "shortName": "BTH1"}, - {"name": "Bluetooth Host 2", "title": "Bluetooth Host 2", "shortName": "BTH2"}, - {"name": "Bluetooth Host 3", "title": "Bluetooth Host 3", "shortName": "BTH3"}, - {"name": "2.4G", "title": "2.4G", "shortName": "2.4G"}, - {"name": "Battery Level", "title": "Show battery level", "shortName": "Batt"} - ], - "matrix": {"rows": 6, "cols" : 21}, - "layouts": { - "keymap": [ - [ - { - "c": "#777777" - }, - "0, 0", - { - "x": 1, - "c": "#cccccc" - }, - "0, 1", - "0, 2", - "0, 3", - "0, 4", - { - "x": 0.5, - "c": "#aaaaaa" - }, - "0, 5", - "0, 6", - "0, 7", - "0, 8", - { - "x": 0.5, - "c": "#cccccc" - }, - "0, 9", - "0, 10", - "0, 11", - "0, 12", - { - "x": 0.25, - "c": "#aaaaaa" - }, - "0, 14", - "0, 15", - "0, 16", - { - "x": 0.25, - "c": "#cccccc" - }, - "0, 17", - "0, 18", - "0, 19", - "0, 20" - ], - [ - { - "c": "#aaaaaa" - }, - "1, 0", - { - "c": "#cccccc" - }, - "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": 2, - "c": "#aaaaaa" - }, - "1, 13", - { - "x": 0.25 - }, - "1, 14", - "1, 15", - "1, 16", - { - "x": 0.25, - "c": "#cccccc" - }, - "1, 17", - "1, 18", - "1, 19", - "1, 20" - ], - [ - { - "w": 1.5, - "c": "#aaaaaa" - }, - "2, 0", - { - "c": "#cccccc" - }, - "2, 1", - "2, 2", - "2, 3", - "2, 4", - "2, 5", - "2, 6", - "2, 7", - "2, 8", - "2, 9", - "2, 10", - "2, 11", - "2, 12", - { - "w": 1.5, - "c": "#aaaaaa" - }, - "2, 13", - { - "x": 0.25 - }, - "2, 14", - "2, 15", - "2, 16", - { - "x": 0.25, - "c": "#cccccc" - }, - "2, 17", - "2, 18", - "2, 19", - { - "h": 2 - }, - "2, 20" - ], - [ - { - "w": 1.75, - "c": "#aaaaaa" - }, - "3, 0", - { - "c": "#cccccc" - }, - "3, 1", - "3, 2", - "3, 3", - "3, 4", - "3, 5", - "3, 6", - "3, 7", - "3, 8", - "3, 9", - "3, 10", - "3, 11", - { - "w": 2.25, - "c": "#777777" - }, - "3, 13", - { - "x": 3.5, - "c": "#cccccc" - }, - "3, 17", - "3, 18", - "3, 19" - ], - [ - { - "w": 2.25, - "c": "#aaaaaa" - }, - "4, 0", - { - "c": "#cccccc" - }, - "4, 2", - "4, 3", - "4, 4", - "4, 5", - "4, 6", - "4, 7", - "4, 8", - "4, 9", - "4, 10", - "4, 11", - { - "w": 2.75, - "c": "#aaaaaa" - }, - "4, 13", - { - "x": 1.25, - "c": "#cccccc" - }, - "4, 15", - { - "x": 1.25 - }, - "4, 17", - "4, 18", - "4, 19", - { - "h": 2 - }, - "4, 20" - ], - [ - { - "w": 1.25, - "c": "#aaaaaa" - }, - "5, 0", - { - "w": 1.25 - }, - "5, 1", - { - "w": 1.25 - }, - "5, 2", - { - "w": 6.25, - "c": "#cccccc" - }, - "5, 6", - { - "w": 1.25, - "c": "#aaaaaa" - }, - "5, 10", - { - "w": 1.25 - }, - "5, 11", - { - "w": 1.25 - }, - "5, 12", - { - "w": 1.25 - }, - "5, 13", - { - "x": 0.25, - "c": "#cccccc" - }, - "5, 14", - "5, 15", - "5, 16", - { - "x": 0.25, - "w": 2 - }, - "5, 17", - "5, 19" - ] - ] - } - } \ No newline at end of file diff --git a/keyboards/keychron/k5_pro/ansi/rgb/config.h b/keyboards/keychron/k5_pro/ansi/rgb/config.h deleted file mode 100644 index cb31a09018..0000000000 --- a/keyboards/keychron/k5_pro/ansi/rgb/config.h +++ /dev/null @@ -1,52 +0,0 @@ -/* 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 . - */ - -#pragma once - -#ifdef RGB_MATRIX_ENABLE -/* RGB Matrix Driver Configuration */ -# define DRIVER_COUNT 2 -# define DRIVER_ADDR_1 0b1110111 -# define DRIVER_ADDR_2 0b1110100 - -/* RGB Matrix Configuration */ -# define DRIVER_1_LED_TOTAL 58 -# define DRIVER_2_LED_TOTAL 50 -# define RGB_MATRIX_LED_COUNT (DRIVER_1_LED_TOTAL + DRIVER_2_LED_TOTAL) - -/* Set to infinit, which is use in USB mode by default */ -# define RGB_MATRIX_TIMEOUT RGB_MATRIX_TIMEOUT_INFINITE - -/* Allow to shutdown driver to save power */ -# define RGB_MATRIX_DRIVER_SHUTDOWN_ENABLE - -/* Turn off backllit if brightness value is low */ -# define RGB_MATRIX_BRIGHTNESS_TURN_OFF_VAL 48 - -/* Indication led */ -# define NUM_LOCK_INDEX 37 // NumLock -# define LOW_BAT_IND_INDEX 98 // Space - -// RGB Matrix Animation modes. Explicitly enabled -// For full list of effects, see: -// https://docs.qmk.fm/#/feature_rgb_matrix?id=rgb-matrix-effects -# define RGB_MATRIX_KEYPRESSES -# define RGB_MATRIX_FRAMEBUFFER_EFFECTS - -/* Set LED driver current */ -# define SNLED27351_CURRENT_TUNE \ - { 0x14, 0x14, 0x14, 0x14, 0x14, 0x14, 0x14, 0x14, 0x14, 0x14, 0x14, 0x14 } -#endif diff --git a/keyboards/keychron/k5_pro/ansi/rgb/info.json b/keyboards/keychron/k5_pro/ansi/rgb/info.json deleted file mode 100644 index 68aca58ec1..0000000000 --- a/keyboards/keychron/k5_pro/ansi/rgb/info.json +++ /dev/null @@ -1,150 +0,0 @@ -{ - "usb": { - "pid": "0x0250", - "device_version": "1.0.1" - }, - "features": { - "rgb_matrix": true - }, - "rgb_matrix": { - "driver": "snled27351", - "animations": { - "breathing": true, - "band_spiral_val": true, - "cycle_all": true, - "cycle_left_right": true, - "cycle_up_down": true, - "rainbow_moving_chevron": true, - "cycle_out_in": true, - "cycle_out_in_dual": true, - "cycle_pinwheel": true, - "cycle_spiral": true, - "dual_beacon": true, - "rainbow_beacon": true, - "jellybean_raindrops": true, - "pixel_rain": true, - "typing_heatmap": true, - "digital_rain": true, - "solid_reactive_simple": true, - "solid_reactive_multiwide": true, - "solid_reactive_multinexus": true, - "splash": true, - "solid_splash": true - }, - "layout": [ - {"matrix":[0, 0], "flags":1, "x":0, "y":0}, - {"matrix":[0, 1], "flags":1, "x":21, "y":0}, - {"matrix":[0, 2], "flags":1, "x":32, "y":0}, - {"matrix":[0, 3], "flags":1, "x":42, "y":0}, - {"matrix":[0, 4], "flags":1, "x":53, "y":0}, - {"matrix":[0, 5], "flags":1, "x":69, "y":0}, - {"matrix":[0, 6], "flags":1, "x":79, "y":0}, - {"matrix":[0, 7], "flags":1, "x":90, "y":0}, - {"matrix":[0, 8], "flags":1, "x":100, "y":0}, - {"matrix":[0, 9], "flags":1, "x":116, "y":0}, - {"matrix":[0, 10], "flags":1, "x":127, "y":0}, - {"matrix":[0, 11], "flags":1, "x":137, "y":0}, - {"matrix":[0, 12], "flags":1, "x":148, "y":0}, - {"matrix":[0, 14], "flags":1, "x":160, "y":0}, - {"matrix":[0, 15], "flags":1, "x":170, "y":0}, - {"matrix":[0, 16], "flags":1, "x":181, "y":0}, - {"matrix":[0, 17], "flags":4, "x":192, "y":0}, - {"matrix":[0, 18], "flags":4, "x":203, "y":0}, - {"matrix":[0, 19], "flags":4, "x":213, "y":0}, - {"matrix":[0, 20], "flags":4, "x":224, "y":0}, - - {"matrix":[1, 0], "flags":1, "x":0, "y":14}, - {"matrix":[1, 1], "flags":8, "x":11, "y":14}, - {"matrix":[1, 2], "flags":8, "x":21, "y":14}, - {"matrix":[1, 3], "flags":8, "x":32, "y":14}, - {"matrix":[1, 4], "flags":4, "x":42, "y":14}, - {"matrix":[1, 5], "flags":4, "x":53, "y":14}, - {"matrix":[1, 6], "flags":4, "x":63, "y":14}, - {"matrix":[1, 7], "flags":4, "x":74, "y":14}, - {"matrix":[1, 8], "flags":4, "x":84, "y":14}, - {"matrix":[1, 9], "flags":4, "x":95, "y":14}, - {"matrix":[1, 10], "flags":4, "x":106, "y":14}, - {"matrix":[1, 11], "flags":4, "x":116, "y":14}, - {"matrix":[1, 12], "flags":4, "x":127, "y":14}, - {"matrix":[1, 13], "flags":1, "x":143, "y":14}, - {"matrix":[1, 14], "flags":1, "x":160, "y":14}, - {"matrix":[1, 15], "flags":1, "x":170, "y":14}, - {"matrix":[1, 16], "flags":1, "x":181, "y":14}, - {"matrix":[1, 17], "flags":8, "x":192, "y":14}, - {"matrix":[1, 18], "flags":4, "x":203, "y":14}, - {"matrix":[1, 19], "flags":4, "x":213, "y":14}, - {"matrix":[1, 20], "flags":4, "x":224, "y":14}, - - {"matrix":[2, 0], "flags":1, "x":3, "y":26}, - {"matrix":[2, 1], "flags":4, "x":16, "y":26}, - {"matrix":[2, 2], "flags":4, "x":26, "y":26}, - {"matrix":[2, 3], "flags":4, "x":37, "y":26}, - {"matrix":[2, 4], "flags":4, "x":48, "y":26}, - {"matrix":[2, 5], "flags":4, "x":58, "y":26}, - {"matrix":[2, 6], "flags":4, "x":69, "y":26}, - {"matrix":[2, 7], "flags":4, "x":79, "y":26}, - {"matrix":[2, 8], "flags":4, "x":90, "y":26}, - {"matrix":[2, 9], "flags":4, "x":100, "y":26}, - {"matrix":[2, 10], "flags":4, "x":111, "y":26}, - {"matrix":[2, 11], "flags":4, "x":121, "y":26}, - {"matrix":[2, 12], "flags":1, "x":132, "y":26}, - {"matrix":[2, 13], "flags":1, "x":145, "y":26}, - {"matrix":[2, 14], "flags":1, "x":160, "y":26}, - {"matrix":[2, 15], "flags":1, "x":170, "y":26}, - {"matrix":[2, 16], "flags":1, "x":181, "y":26}, - {"matrix":[2, 17], "flags":4, "x":192, "y":26}, - {"matrix":[2, 18], "flags":4, "x":203, "y":26}, - {"matrix":[2, 19], "flags":4, "x":213, "y":26}, - {"matrix":[2, 20], "flags":4, "x":224, "y":26}, - - {"matrix":[3, 0], "flags":8, "x":4, "y":39}, - {"matrix":[3, 1], "flags":4, "x":18, "y":39}, - {"matrix":[3, 2], "flags":4, "x":29, "y":39}, - {"matrix":[3, 3], "flags":4, "x":40, "y":39}, - {"matrix":[3, 4], "flags":4, "x":50, "y":39}, - {"matrix":[3, 5], "flags":4, "x":61, "y":39}, - {"matrix":[3, 6], "flags":4, "x":71, "y":39}, - {"matrix":[3, 7], "flags":4, "x":82, "y":39}, - {"matrix":[3, 8], "flags":4, "x":92, "y":39}, - {"matrix":[3, 9], "flags":4, "x":103, "y":39}, - {"matrix":[3, 10], "flags":4, "x":114, "y":39}, - {"matrix":[3, 11], "flags":4, "x":124, "y":39}, - {"matrix":[3, 13], "flags":4, "x":141, "y":39}, - {"matrix":[3, 17], "flags":4, "x":192, "y":39}, - {"matrix":[3, 18], "flags":4, "x":203, "y":39}, - {"matrix":[3, 19], "flags":4, "x":213, "y":39}, - - {"matrix":[4, 0], "flags":1, "x":7, "y":51}, - {"matrix":[4, 2], "flags":4, "x":24, "y":51}, - {"matrix":[4, 3], "flags":4, "x":34, "y":51}, - {"matrix":[4, 4], "flags":4, "x":45, "y":51}, - {"matrix":[4, 5], "flags":4, "x":55, "y":51}, - {"matrix":[4, 6], "flags":4, "x":66, "y":51}, - {"matrix":[4, 7], "flags":4, "x":77, "y":51}, - {"matrix":[4, 8], "flags":4, "x":87, "y":51}, - {"matrix":[4, 9], "flags":4, "x":98, "y":51}, - {"matrix":[4, 10], "flags":4, "x":108, "y":51}, - {"matrix":[4, 11], "flags":4, "x":119, "y":51}, - {"matrix":[4, 13], "flags":1, "x":139, "y":51}, - {"matrix":[4, 15], "flags":1, "x":170, "y":51}, - {"matrix":[4, 17], "flags":4, "x":192, "y":51}, - {"matrix":[4, 18], "flags":4, "x":203, "y":51}, - {"matrix":[4, 19], "flags":4, "x":213, "y":51}, - {"matrix":[4, 20], "flags":4, "x":224, "y":51}, - - {"matrix":[5, 0], "flags":1, "x":1, "y":64}, - {"matrix":[5, 1], "flags":1, "x":15, "y":64}, - {"matrix":[5, 2], "flags":1, "x":28, "y":64}, - {"matrix":[5, 6], "flags":4, "x":67, "y":64}, - {"matrix":[5, 10], "flags":1, "x":107, "y":64}, - {"matrix":[5, 11], "flags":1, "x":120, "y":64}, - {"matrix":[5, 12], "flags":1, "x":133, "y":64}, - {"matrix":[5, 13], "flags":1, "x":147, "y":64}, - {"matrix":[5, 14], "flags":1, "x":160, "y":64}, - {"matrix":[5, 15], "flags":1, "x":170, "y":64}, - {"matrix":[5, 16], "flags":1, "x":181, "y":64}, - {"matrix":[5, 17], "flags":4, "x":198, "y":64}, - {"matrix":[5, 19], "flags":4, "x":213, "y":64} - ] - } -} diff --git a/keyboards/keychron/k5_pro/ansi/rgb/keymaps/default/keymap.c b/keyboards/keychron/k5_pro/ansi/rgb/keymaps/default/keymap.c deleted file mode 100644 index 37cfcff0a8..0000000000 --- a/keyboards/keychron/k5_pro/ansi/rgb/keymaps/default/keymap.c +++ /dev/null @@ -1,59 +0,0 @@ -/* 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 . - */ - -#include QMK_KEYBOARD_H - -enum layers { - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN, -}; - -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_108_ansi( - KC_ESC, KC_BRID, KC_BRIU, KC_MCTL, KC_LPAD, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_SNAP, KC_SIRI, RGB_MOD, KC_F13, KC_F14, KC_F15, KC_F16, - KC_GRV, 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_INS, KC_HOME, KC_PGUP, KC_NUM, KC_PSLS, KC_PAST, KC_PMNS, - 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_DEL, KC_END, KC_PGDN, KC_P7, KC_P8, KC_P9, KC_PPLS, - 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_P4, KC_P5, KC_P6, - 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_P1, KC_P2, KC_P3, KC_PENT, - KC_LCTL, KC_LOPTN, KC_LCMMD, KC_SPC, KC_RCMMD, KC_ROPTN,MO(MAC_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT, KC_P0, KC_PDOT), - - [MAC_FN] = LAYOUT_108_ansi( - _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, RGB_TOG, _______, _______, _______, _______, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - - [WIN_BASE] = LAYOUT_108_ansi( - KC_ESC, 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_PSCR, KC_CTANA, RGB_MOD, _______, _______, _______, _______, - KC_GRV, 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_INS, KC_HOME, KC_PGUP, KC_NUM, KC_PSLS, KC_PAST, KC_PMNS, - 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_DEL, KC_END, KC_PGDN, KC_P7, KC_P8, KC_P9, KC_PPLS, - 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_P4, KC_P5, KC_P6, - 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_P1, KC_P2, KC_P3, KC_PENT, - KC_LCTL, KC_LWIN, KC_LALT, KC_SPC, KC_RALT, KC_RWIN, MO(WIN_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT, KC_P0, KC_PDOT), - - [WIN_FN] = LAYOUT_108_ansi( - _______, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, RGB_TOG, _______, _______, _______, _______, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), -}; diff --git a/keyboards/keychron/k5_pro/ansi/rgb/keymaps/via/keymap.c b/keyboards/keychron/k5_pro/ansi/rgb/keymaps/via/keymap.c deleted file mode 100644 index 07c73eccad..0000000000 --- a/keyboards/keychron/k5_pro/ansi/rgb/keymaps/via/keymap.c +++ /dev/null @@ -1,59 +0,0 @@ -/* 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 . - */ - -#include QMK_KEYBOARD_H - -enum layers { - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN, -}; - -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_108_ansi( - KC_ESC, KC_BRID, KC_BRIU, KC_MICT, KC_LAPA, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_SNAP, KC_SIRI, RGB_MOD, KC_F13, KC_F14, KC_F15, KC_F16, - KC_GRV, 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_INS, KC_HOME, KC_PGUP, KC_NUM, KC_PSLS, KC_PAST, KC_PMNS, - 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_DEL, KC_END, KC_PGDN, KC_P7, KC_P8, KC_P9, KC_PPLS, - 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_P4, KC_P5, KC_P6, - 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_P1, KC_P2, KC_P3, KC_PENT, - KC_LCTL, KC_LOPTN, KC_LCMMD, KC_SPC, KC_RCMMD, KC_ROPTN,MO(MAC_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT, KC_P0, KC_PDOT), - - [MAC_FN] = LAYOUT_108_ansi( - _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, RGB_TOG, _______, _______, _______, _______, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - - [WIN_BASE] = LAYOUT_108_ansi( - KC_ESC, 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_PSCR, KC_CTANA, RGB_MOD, _______, _______, _______, _______, - KC_GRV, 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_INS, KC_HOME, KC_PGUP, KC_NUM, KC_PSLS, KC_PAST, KC_PMNS, - 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_DEL, KC_END, KC_PGDN, KC_P7, KC_P8, KC_P9, KC_PPLS, - 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_P4, KC_P5, KC_P6, - 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_P1, KC_P2, KC_P3, KC_PENT, - KC_LCTL, KC_LWIN, KC_LALT, KC_SPC, KC_RALT, KC_RWIN, MO(WIN_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT, KC_P0, KC_PDOT), - - [WIN_FN] = LAYOUT_108_ansi( - _______, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, RGB_TOG, _______, _______, _______, _______, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), -}; diff --git a/keyboards/keychron/k5_pro/ansi/rgb/keymaps/via/rules.mk b/keyboards/keychron/k5_pro/ansi/rgb/keymaps/via/rules.mk deleted file mode 100644 index 45fa68954c..0000000000 --- a/keyboards/keychron/k5_pro/ansi/rgb/keymaps/via/rules.mk +++ /dev/null @@ -1 +0,0 @@ -VIA_ENABLE = yes diff --git a/keyboards/keychron/k5_pro/ansi/rgb/rgb.c b/keyboards/keychron/k5_pro/ansi/rgb/rgb.c deleted file mode 100644 index 5e08a21b22..0000000000 --- a/keyboards/keychron/k5_pro/ansi/rgb/rgb.c +++ /dev/null @@ -1,142 +0,0 @@ -/* 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 . - */ - -#include "quantum.h" - -// clang-format off -#ifdef RGB_MATRIX_ENABLE -const snled27351_led_t g_snled27351_leds[RGB_MATRIX_LED_COUNT] = { -/* Refer to snled27351manual for these locations - * driver - * | R location - * | | G location - * | | | B location - * | | | | */ - {0, G_1, I_1, H_1}, - {0, G_2, I_2, H_2}, - {0, G_3, I_3, H_3}, - {0, G_4, I_4, H_4}, - {0, G_5, I_5, H_5}, - {0, G_6, I_6, H_6}, - {0, G_7, I_7, H_7}, - {0, G_8, I_8, H_8}, - {0, G_9, I_9, H_9}, - {0, G_10, I_10, H_10}, - {0, G_11, I_11, H_11}, - {0, G_12, I_12, H_12}, - {0, G_13, I_13, H_13}, - {0, G_15, I_15, H_15}, - {0, G_16, I_16, H_16}, - {0, G_14, I_14, H_14}, - {1, G_13, I_13, H_13}, - {1, G_15, I_15, H_15}, - {1, G_16, I_16, H_16}, - {1, A_15, C_15, B_15}, - - {0, D_1, F_1, E_1}, - {0, D_2, F_2, E_2}, - {0, D_3, F_3, E_3}, - {0, D_4, F_4, E_4}, - {0, D_5, F_5, E_5}, - {0, D_6, F_6, E_6}, - {0, D_7, F_7, E_7}, - {0, D_8, F_8, E_8}, - {0, D_9, F_9, E_9}, - {0, D_10, F_10, E_10}, - {0, D_11, F_11, E_11}, - {0, D_12, F_12, E_12}, - {0, D_13, F_13, E_13}, - {0, D_14, F_14, E_14}, - {0, D_15, F_15, E_15}, - {0, D_16, F_16, E_16}, - {0, J_7, L_7, K_7}, - {0, J_8, L_8, K_8}, - {0, J_9, L_9, K_9}, - {0, J_10, L_10, K_10}, - {0, J_11, L_11, K_11}, - - {0, C_1, A_1, B_1}, - {0, C_2, A_2, B_2}, - {0, C_3, A_3, B_3}, - {0, C_4, A_4, B_4}, - {0, C_5, A_5, B_5}, - {0, C_6, A_6, B_6}, - {0, C_7, A_7, B_7}, - {0, C_8, A_8, B_8}, - {0, C_9, A_9, B_9}, - {0, C_10, A_10, B_10}, - {0, C_11, A_11, B_11}, - {0, C_12, A_12, B_12}, - {0, C_13, A_13, B_13}, - {0, C_14, A_14, B_14}, - {0, C_15, A_15, B_15}, - {0, C_16, A_16, B_16}, - {0, J_12, L_12, K_12}, - {0, J_13, L_13, K_13}, - {0, J_14, L_14, K_14}, - {0, J_15, L_15, K_15}, - {0, J_16, L_16, K_16}, - - {1, G_1, I_1, H_1}, - {1, G_2, I_2, H_2}, - {1, G_3, I_3, H_3}, - {1, G_4, I_4, H_4}, - {1, G_5, I_5, H_5}, - {1, G_6, I_6, H_6}, - {1, G_7, I_7, H_7}, - {1, G_8, I_8, H_8}, - {1, G_9, I_9, H_9}, - {1, G_10, I_10, H_10}, - {1, G_11, I_11, H_11}, - {1, G_12, I_12, H_12}, - {1, G_14, I_14, H_14}, - {1, J_7, L_7, K_7}, - {1, J_8, L_8, K_8}, - {1, J_9, L_9, K_9}, - - {1, A_1, C_1, B_1}, - {1, A_3, C_3, B_3}, - {1, A_4, C_4, B_4}, - {1, A_5, C_5, B_5}, - {1, A_6, C_6, B_6}, - {1, A_7, C_7, B_7}, - {1, A_8, C_8, B_8}, - {1, A_9, C_9, B_9}, - {1, A_10, C_10, B_10}, - {1, A_11, C_11, B_11}, - {1, A_12, C_12, B_12}, - {1, A_14, C_14, B_14}, - {1, A_16, C_16, B_16}, - {1, J_10, L_10, K_10}, - {1, J_11, L_11, K_11}, - {1, J_12, L_12, K_12}, - {1, J_13, L_13, K_13}, - - {1, D_1, F_1, E_1}, - {1, D_2, F_2, E_2}, - {1, D_3, F_3, E_3}, - {1, D_7, F_7, E_7}, - {1, D_11, F_11, E_11}, - {1, D_12, F_12, E_12}, - {1, D_13, F_13, E_13}, - {1, D_14, F_14, E_14}, - {1, D_15, F_15, E_15}, - {1, D_16, F_16, E_16}, - {1, J_14, L_14, K_14}, - {1, J_15, L_15, K_15}, - {1, J_16, L_16, K_16}, -}; -#endif diff --git a/keyboards/keychron/k5_pro/ansi/rgb/rules.mk b/keyboards/keychron/k5_pro/ansi/rgb/rules.mk deleted file mode 100644 index c628fc7d0f..0000000000 --- a/keyboards/keychron/k5_pro/ansi/rgb/rules.mk +++ /dev/null @@ -1 +0,0 @@ -# This file intentionally blank diff --git a/keyboards/keychron/k5_pro/ansi/white/config.h b/keyboards/keychron/k5_pro/ansi/white/config.h deleted file mode 100644 index 01bc296ed6..0000000000 --- a/keyboards/keychron/k5_pro/ansi/white/config.h +++ /dev/null @@ -1,52 +0,0 @@ -/* 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 . - */ - -#pragma once - -#ifdef LED_MATRIX_ENABLE -/* LED Matrix Driver Configuration */ -# define DRIVER_COUNT 1 -# define SNLED27351_I2C_ADDRESS_1 SNLED27351_I2C_ADDRESS_GND - -/* LED Matrix Configuration */ -# define LED_MATRIX_LED_COUNT 108 - -/* Set to infinit, which is use in USB mode by default */ -# define LED_MATRIX_TIMEOUT LED_MATRIX_TIMEOUT_INFINITE - -/* Allow to shutdown driver to save power */ -# define LED_MATRIX_DRIVER_SHUTDOWN_ENABLE - -/* Turn off backllit if brightness value is low */ -# define LED_MATRIX_BRIGHTNESS_TURN_OFF_VAL 48 - -/* Indication led */ -# define NUM_LOCK_INDEX 37 // NumLock -# define LOW_BAT_IND_INDEX 98 // Space - -// LED Matrix Animation modes. Explicitly enabled -// For full list of effects, see: -// https://docs.qmk.fm/#/feature_led_matrix?id=led-matrix-effects -// #if defined(LED_MATRIX_KEYPRESSES) || defined(LED_MATRIX_KEYRELEASES) -# define LED_MATRIX_KEYPRESSES - -/* Use first 9 channels of LED driver */ -# define PHASE_CHANNEL MSKPHASE_9CHANNEL - -/* Set LED driver current */ -# define SNLED27351_CURRENT_TUNE \ - { 0x28, 0x28, 0x28, 0x28, 0x28, 0x28, 0x28, 0x28, 0x28, 0x28, 0x28, 0x28 } -#endif diff --git a/keyboards/keychron/k5_pro/ansi/white/info.json b/keyboards/keychron/k5_pro/ansi/white/info.json deleted file mode 100644 index 5844deaca1..0000000000 --- a/keyboards/keychron/k5_pro/ansi/white/info.json +++ /dev/null @@ -1,145 +0,0 @@ -{ - "usb": { - "pid": "0x0253", - "device_version": "1.0.1" - }, - "features": { - "led_matrix": true - }, - "led_matrix": { - "driver": "snled27351", - "animations": { - "none": true, - "solid": true, - "breathing": true, - "band_pinwheel": true, - "band_spiral": true, - "cycle_left_right": true, - "cycle_up_down": true, - "cycle_out_in": true, - "dual_beacon": true, - "solid_reactive_simple": true, - "solid_reactive_multiwide": true, - "solid_reactive_multinexus": true, - "solid_splash": true, - "wave_left_right": true, - "wave_up_down": true, - "effect_max": true - }, - "layout": [ - {"matrix":[0, 0], "flags":1, "x":0, "y":0}, - {"matrix":[0, 1], "flags":1, "x":21, "y":0}, - {"matrix":[0, 2], "flags":1, "x":32, "y":0}, - {"matrix":[0, 3], "flags":1, "x":42, "y":0}, - {"matrix":[0, 4], "flags":1, "x":53, "y":0}, - {"matrix":[0, 5], "flags":1, "x":69, "y":0}, - {"matrix":[0, 6], "flags":1, "x":79, "y":0}, - {"matrix":[0, 7], "flags":1, "x":90, "y":0}, - {"matrix":[0, 8], "flags":1, "x":100, "y":0}, - {"matrix":[0, 9], "flags":1, "x":116, "y":0}, - {"matrix":[0, 10], "flags":1, "x":127, "y":0}, - {"matrix":[0, 11], "flags":1, "x":137, "y":0}, - {"matrix":[0, 12], "flags":1, "x":148, "y":0}, - {"matrix":[0, 14], "flags":1, "x":160, "y":0}, - {"matrix":[0, 15], "flags":1, "x":170, "y":0}, - {"matrix":[0, 16], "flags":1, "x":181, "y":0}, - {"matrix":[0, 17], "flags":4, "x":192, "y":0}, - {"matrix":[0, 18], "flags":4, "x":203, "y":0}, - {"matrix":[0, 19], "flags":4, "x":213, "y":0}, - {"matrix":[0, 20], "flags":4, "x":224, "y":0}, - - {"matrix":[1, 0], "flags":1, "x":0, "y":14}, - {"matrix":[1, 1], "flags":8, "x":11, "y":14}, - {"matrix":[1, 2], "flags":8, "x":21, "y":14}, - {"matrix":[1, 3], "flags":8, "x":32, "y":14}, - {"matrix":[1, 4], "flags":4, "x":42, "y":14}, - {"matrix":[1, 5], "flags":4, "x":53, "y":14}, - {"matrix":[1, 6], "flags":4, "x":63, "y":14}, - {"matrix":[1, 7], "flags":4, "x":74, "y":14}, - {"matrix":[1, 8], "flags":4, "x":84, "y":14}, - {"matrix":[1, 9], "flags":4, "x":95, "y":14}, - {"matrix":[1, 10], "flags":4, "x":106, "y":14}, - {"matrix":[1, 11], "flags":4, "x":116, "y":14}, - {"matrix":[1, 12], "flags":4, "x":127, "y":14}, - {"matrix":[1, 13], "flags":1, "x":143, "y":14}, - {"matrix":[1, 14], "flags":1, "x":160, "y":14}, - {"matrix":[1, 15], "flags":1, "x":170, "y":14}, - {"matrix":[1, 16], "flags":1, "x":181, "y":14}, - {"matrix":[1, 17], "flags":8, "x":192, "y":14}, - {"matrix":[1, 18], "flags":4, "x":203, "y":14}, - {"matrix":[1, 19], "flags":4, "x":213, "y":14}, - {"matrix":[1, 20], "flags":4, "x":224, "y":14}, - - {"matrix":[2, 0], "flags":1, "x":3, "y":26}, - {"matrix":[2, 1], "flags":4, "x":16, "y":26}, - {"matrix":[2, 2], "flags":4, "x":26, "y":26}, - {"matrix":[2, 3], "flags":4, "x":37, "y":26}, - {"matrix":[2, 4], "flags":4, "x":48, "y":26}, - {"matrix":[2, 5], "flags":4, "x":58, "y":26}, - {"matrix":[2, 6], "flags":4, "x":69, "y":26}, - {"matrix":[2, 7], "flags":4, "x":79, "y":26}, - {"matrix":[2, 8], "flags":4, "x":90, "y":26}, - {"matrix":[2, 9], "flags":4, "x":100, "y":26}, - {"matrix":[2, 10], "flags":4, "x":111, "y":26}, - {"matrix":[2, 11], "flags":4, "x":121, "y":26}, - {"matrix":[2, 12], "flags":1, "x":132, "y":26}, - {"matrix":[2, 13], "flags":1, "x":145, "y":26}, - {"matrix":[2, 14], "flags":1, "x":160, "y":26}, - {"matrix":[2, 15], "flags":1, "x":170, "y":26}, - {"matrix":[2, 16], "flags":1, "x":181, "y":26}, - {"matrix":[2, 17], "flags":4, "x":192, "y":26}, - {"matrix":[2, 18], "flags":4, "x":203, "y":26}, - {"matrix":[2, 19], "flags":4, "x":213, "y":26}, - {"matrix":[2, 20], "flags":4, "x":224, "y":26}, - - {"matrix":[3, 0], "flags":8, "x":4, "y":39}, - {"matrix":[3, 1], "flags":4, "x":18, "y":39}, - {"matrix":[3, 2], "flags":4, "x":29, "y":39}, - {"matrix":[3, 3], "flags":4, "x":40, "y":39}, - {"matrix":[3, 4], "flags":4, "x":50, "y":39}, - {"matrix":[3, 5], "flags":4, "x":61, "y":39}, - {"matrix":[3, 6], "flags":4, "x":71, "y":39}, - {"matrix":[3, 7], "flags":4, "x":82, "y":39}, - {"matrix":[3, 8], "flags":4, "x":92, "y":39}, - {"matrix":[3, 9], "flags":4, "x":103, "y":39}, - {"matrix":[3, 10], "flags":4, "x":114, "y":39}, - {"matrix":[3, 11], "flags":4, "x":124, "y":39}, - {"matrix":[3, 13], "flags":4, "x":141, "y":39}, - {"matrix":[3, 17], "flags":4, "x":192, "y":39}, - {"matrix":[3, 18], "flags":4, "x":203, "y":39}, - {"matrix":[3, 19], "flags":4, "x":213, "y":39}, - - {"matrix":[4, 0], "flags":1, "x":7, "y":51}, - {"matrix":[4, 2], "flags":4, "x":24, "y":51}, - {"matrix":[4, 3], "flags":4, "x":34, "y":51}, - {"matrix":[4, 4], "flags":4, "x":45, "y":51}, - {"matrix":[4, 5], "flags":4, "x":55, "y":51}, - {"matrix":[4, 6], "flags":4, "x":66, "y":51}, - {"matrix":[4, 7], "flags":4, "x":77, "y":51}, - {"matrix":[4, 8], "flags":4, "x":87, "y":51}, - {"matrix":[4, 9], "flags":4, "x":98, "y":51}, - {"matrix":[4, 10], "flags":4, "x":108, "y":51}, - {"matrix":[4, 11], "flags":4, "x":119, "y":51}, - {"matrix":[4, 13], "flags":1, "x":139, "y":51}, - {"matrix":[4, 15], "flags":1, "x":170, "y":51}, - {"matrix":[4, 17], "flags":4, "x":192, "y":51}, - {"matrix":[4, 18], "flags":4, "x":203, "y":51}, - {"matrix":[4, 19], "flags":4, "x":213, "y":51}, - {"matrix":[4, 20], "flags":4, "x":224, "y":51}, - - {"matrix":[5, 0], "flags":1, "x":1, "y":64}, - {"matrix":[5, 1], "flags":1, "x":15, "y":64}, - {"matrix":[5, 2], "flags":1, "x":28, "y":64}, - {"matrix":[5, 6], "flags":4, "x":67, "y":64}, - {"matrix":[5, 10], "flags":1, "x":107, "y":64}, - {"matrix":[5, 11], "flags":1, "x":120, "y":64}, - {"matrix":[5, 12], "flags":1, "x":133, "y":64}, - {"matrix":[5, 13], "flags":1, "x":147, "y":64}, - {"matrix":[5, 14], "flags":1, "x":160, "y":64}, - {"matrix":[5, 15], "flags":1, "x":170, "y":64}, - {"matrix":[5, 16], "flags":1, "x":181, "y":64}, - {"matrix":[5, 17], "flags":4, "x":198, "y":64}, - {"matrix":[5, 19], "flags":4, "x":213, "y":64} - ] - } -} diff --git a/keyboards/keychron/k5_pro/ansi/white/keymaps/default/keymap.c b/keyboards/keychron/k5_pro/ansi/white/keymaps/default/keymap.c deleted file mode 100644 index cf1a75a2f3..0000000000 --- a/keyboards/keychron/k5_pro/ansi/white/keymaps/default/keymap.c +++ /dev/null @@ -1,59 +0,0 @@ -/* 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 . - */ - -#include QMK_KEYBOARD_H - -enum layers { - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN, -}; - -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_108_ansi( - KC_ESC, KC_BRID, KC_BRIU, KC_MCTL, KC_LPAD, BL_DOWN, BL_UP, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_SNAP, KC_SIRI, BL_STEP, KC_F13, KC_F14, KC_F15, KC_F16, - KC_GRV, 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_INS, KC_HOME, KC_PGUP, KC_NUM, KC_PSLS, KC_PAST, KC_PMNS, - 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_DEL, KC_END, KC_PGDN, KC_P7, KC_P8, KC_P9, KC_PPLS, - 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_P4, KC_P5, KC_P6, - 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_P1, KC_P2, KC_P3, KC_PENT, - KC_LCTL, KC_LOPTN, KC_LCMMD, KC_SPC, KC_RCMMD, KC_ROPTN,MO(MAC_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT, KC_P0, KC_PDOT), - - [MAC_FN] = LAYOUT_108_ansi( - _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, BL_TOGG, _______, _______, _______, _______, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - BL_TOGG, BL_STEP, BL_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, BL_DOWN, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - - [WIN_BASE] = LAYOUT_108_ansi( - KC_ESC, 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_PSCR, KC_CTANA, BL_STEP, _______, _______, _______, _______, - KC_GRV, 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_INS, KC_HOME, KC_PGUP, KC_NUM, KC_PSLS, KC_PAST, KC_PMNS, - 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_DEL, KC_END, KC_PGDN, KC_P7, KC_P8, KC_P9, KC_PPLS, - 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_P4, KC_P5, KC_P6, - 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_P1, KC_P2, KC_P3, KC_PENT, - KC_LCTL, KC_LWIN, KC_LALT, KC_SPC, KC_RALT, KC_RWIN, MO(WIN_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT, KC_P0, KC_PDOT), - - [WIN_FN] = LAYOUT_108_ansi( - _______, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, BL_DOWN, BL_UP, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, BL_TOGG, _______, _______, _______, _______, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - BL_TOGG, BL_STEP, BL_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, BL_DOWN, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), -}; diff --git a/keyboards/keychron/k5_pro/ansi/white/keymaps/via/keymap.c b/keyboards/keychron/k5_pro/ansi/white/keymaps/via/keymap.c deleted file mode 100644 index 639799ae48..0000000000 --- a/keyboards/keychron/k5_pro/ansi/white/keymaps/via/keymap.c +++ /dev/null @@ -1,59 +0,0 @@ -/* 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 . - */ - -#include QMK_KEYBOARD_H - -enum layers { - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN, -}; - -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_108_ansi( - KC_ESC, KC_BRID, KC_BRIU, KC_MICT, KC_LAPA, BL_DOWN, BL_UP, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_SNAP, KC_SIRI, BL_STEP, KC_F13, KC_F14, KC_F15, KC_F16, - KC_GRV, 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_INS, KC_HOME, KC_PGUP, KC_NUM, KC_PSLS, KC_PAST, KC_PMNS, - 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_DEL, KC_END, KC_PGDN, KC_P7, KC_P8, KC_P9, KC_PPLS, - 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_P4, KC_P5, KC_P6, - 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_P1, KC_P2, KC_P3, KC_PENT, - KC_LCTL, KC_LOPTN, KC_LCMMD, KC_SPC, KC_RCMMD, KC_ROPTN,MO(MAC_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT, KC_P0, KC_PDOT), - - [MAC_FN] = LAYOUT_108_ansi( - _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, BL_TOGG, _______, _______, _______, _______, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - BL_TOGG, BL_STEP, BL_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, BL_DOWN, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - - [WIN_BASE] = LAYOUT_108_ansi( - KC_ESC, 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_PSCR, KC_CTANA, BL_STEP, _______, _______, _______, _______, - KC_GRV, 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_INS, KC_HOME, KC_PGUP, KC_NUM, KC_PSLS, KC_PAST, KC_PMNS, - 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_DEL, KC_END, KC_PGDN, KC_P7, KC_P8, KC_P9, KC_PPLS, - 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_P4, KC_P5, KC_P6, - 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_P1, KC_P2, KC_P3, KC_PENT, - KC_LCTL, KC_LWIN, KC_LALT, KC_SPC, KC_RALT, KC_RWIN, MO(WIN_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT, KC_P0, KC_PDOT), - - [WIN_FN] = LAYOUT_108_ansi( - _______, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, BL_DOWN, BL_UP, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, BL_TOGG, _______, _______, _______, _______, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - BL_TOGG, BL_STEP, BL_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, BL_DOWN, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), -}; diff --git a/keyboards/keychron/k5_pro/ansi/white/keymaps/via/rules.mk b/keyboards/keychron/k5_pro/ansi/white/keymaps/via/rules.mk deleted file mode 100644 index 45fa68954c..0000000000 --- a/keyboards/keychron/k5_pro/ansi/white/keymaps/via/rules.mk +++ /dev/null @@ -1 +0,0 @@ -VIA_ENABLE = yes diff --git a/keyboards/keychron/k5_pro/ansi/white/rules.mk b/keyboards/keychron/k5_pro/ansi/white/rules.mk deleted file mode 100644 index c628fc7d0f..0000000000 --- a/keyboards/keychron/k5_pro/ansi/white/rules.mk +++ /dev/null @@ -1 +0,0 @@ -# This file intentionally blank diff --git a/keyboards/keychron/k5_pro/ansi/white/white.c b/keyboards/keychron/k5_pro/ansi/white/white.c deleted file mode 100644 index ea4c86bd98..0000000000 --- a/keyboards/keychron/k5_pro/ansi/white/white.c +++ /dev/null @@ -1,140 +0,0 @@ -/* Copyright 2021 @ 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 . - */ - -#include "quantum.h" - -// clang-format off -#ifdef LED_MATRIX_ENABLE -const snled27351_led_t g_snled27351_leds[LED_MATRIX_LED_COUNT] = { -/* Refer to snled27351manual for these locations - * driver - * | LED address - * | | */ - {0, F_1}, - {0, F_2}, - {0, F_3}, - {0, F_4}, - {0, F_5}, - {0, F_6}, - {0, F_7}, - {0, F_8}, - {0, F_9}, - {0, F_10}, - {0, F_11}, - {0, F_12}, - {0, F_13}, - {0, F_15}, - {0, F_16}, - {0, F_14}, - {0, C_13}, - {0, C_15}, - {0, C_16}, - {0, B_15}, - - {0, E_1}, - {0, E_2}, - {0, E_3}, - {0, E_4}, - {0, E_5}, - {0, E_6}, - {0, E_7}, - {0, E_8}, - {0, E_9}, - {0, E_10}, - {0, E_11}, - {0, E_12}, - {0, E_13}, - {0, E_14}, - {0, E_15}, - {0, E_16}, - {0, G_7}, - {0, G_8}, - {0, G_9}, - {0, G_10}, - {0, G_11}, - - {0, D_1}, - {0, D_2}, - {0, D_3}, - {0, D_4}, - {0, D_5}, - {0, D_6}, - {0, D_7}, - {0, D_8}, - {0, D_9}, - {0, D_10}, - {0, D_11}, - {0, D_12}, - {0, D_13}, - {0, D_14}, - {0, D_15}, - {0, D_16}, - {0, G_12}, - {0, G_13}, - {0, G_14}, - {0, G_15}, - {0, G_16}, - - {0, C_1}, - {0, C_2}, - {0, C_3}, - {0, C_4}, - {0, C_5}, - {0, C_6}, - {0, C_7}, - {0, C_8}, - {0, C_9}, - {0, C_10}, - {0, C_11}, - {0, C_12}, - {0, C_14}, - {0, H_7}, - {0, H_8}, - {0, H_9}, - - {0, B_1}, - {0, B_3}, - {0, B_4}, - {0, B_5}, - {0, B_6}, - {0, B_7}, - {0, B_8}, - {0, B_9}, - {0, B_10}, - {0, B_11}, - {0, B_12}, - {0, B_14}, - {0, B_16}, - {0, H_10}, - {0, H_11}, - {0, H_12}, - {0, H_13}, - - {0, A_1}, - {0, A_2}, - {0, A_3}, - {0, A_7}, - {0, A_11}, - {0, A_12}, - {0, A_13}, - {0, A_14}, - {0, A_15}, - {0, A_16}, - {0, H_14}, - {0, H_15}, - {0, H_16} -}; -#endif diff --git a/keyboards/keychron/k5_pro/config.h b/keyboards/keychron/k5_pro/config.h deleted file mode 100644 index 0ed0601a36..0000000000 --- a/keyboards/keychron/k5_pro/config.h +++ /dev/null @@ -1,98 +0,0 @@ -/* 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 . - */ - -#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 } - -/* Caps lock LED */ -#define LED_CAPS_LOCK_PIN A0 -#define LED_PIN_ON_STATE 1 - -/* 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 A10 - -# 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 A4 -# define BAT_LOW_LED_PIN_ON_STATE 1 - -# define HOST_DEVICES_COUNT 3 - -# define HOST_LED_PIN_LIST \ - { C15, C15, C15 } -# define HOST_LED_PIN_ON_STATE 1 - -# if defined(RGB_MATRIX_ENABLE) || defined(LED_MATRIX_ENABLE) - -# define LED_DRIVER_SHUTDOWN_PIN C14 - -# define HOST_LED_MATRIX_LIST \ - { 21, 22, 23 } - -# define BAT_LEVEL_LED_LIST \ - { 21, 22, 23, 24, 25, 26, 27, 28, 29, 30 } - -/* 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 WEAR_LEVELING_LOGICAL_SIZE 2048 -#define WEAR_LEVELING_BACKING_SIZE (WEAR_LEVELING_LOGICAL_SIZE * 2) -#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(1) -#define FN_KEY2 MO(3) diff --git a/keyboards/keychron/k5_pro/halconf.h b/keyboards/keychron/k5_pro/halconf.h deleted file mode 100644 index 8312a64f86..0000000000 --- a/keyboards/keychron/k5_pro/halconf.h +++ /dev/null @@ -1,32 +0,0 @@ -/* 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 _CHIBIOS_HAL_CONF_VER_8_0_ - -#define HAL_USE_I2C TRUE - -#if defined(ENCODER_ENBALE) || defined(KC_BLUETOOTH_ENABLE) -# define PAL_USE_CALLBACKS TRUE -#endif - -#ifdef KC_BLUETOOTH_ENABLE -# define HAL_USE_SERIAL TRUE -# define HAL_USE_RTC TRUE -#endif - -#include_next diff --git a/keyboards/keychron/k5_pro/info.json b/keyboards/keychron/k5_pro/info.json deleted file mode 100644 index 0321627403..0000000000 --- a/keyboards/keychron/k5_pro/info.json +++ /dev/null @@ -1,388 +0,0 @@ -{ - "keyboard_name": "Keychron K5 Pro", - "manufacturer": "Keychron", - "url": "https://github.com/Keychron", - "maintainer": "lokher", - "processor": "STM32L432", - "bootloader": "stm32-dfu", - "usb": { - "vid": "0x3434" - }, - "features": { - "bootmagic": true, - "mousekey": true, - "extrakey": true, - "nkro": true, - "dip_switch": true, - "raw": true - }, - "diode_direction": "ROW2COL", - "matrix_size": { - "rows": 6, - "cols": 21 - }, - "matrix_pins": { - "rows": ["B5", "B4", "B3", "A15", "A14", "A13"], - "cols": [null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null], - "custom": true, - "custom_lite": true - }, - "layouts": { - "LAYOUT_108_ansi": { - "layout": [ - {"matrix":[0,0], "x":0, "y":0}, - {"matrix":[0,1], "x":2, "y":0}, - {"matrix":[0,2], "x":3, "y":0}, - {"matrix":[0,3], "x":4, "y":0}, - {"matrix":[0,4], "x":5, "y":0}, - {"matrix":[0,5], "x":6.5, "y":0}, - {"matrix":[0,6], "x":7.5, "y":0}, - {"matrix":[0,7], "x":8.5, "y":0}, - {"matrix":[0,8], "x":9.5, "y":0}, - {"matrix":[0,9], "x":11, "y":0}, - {"matrix":[0,10], "x":12, "y":0}, - {"matrix":[0,11], "x":13, "y":0}, - {"matrix":[0,12], "x":14, "y":0}, - {"matrix":[0,14], "x":15.25, "y":0}, - {"matrix":[0,15], "x":16.25, "y":0}, - {"matrix":[0,16], "x":17.25, "y":0}, - {"matrix":[0,17], "x":18.5, "y":0}, - {"matrix":[0,18], "x":19.5, "y":0}, - {"matrix":[0,19], "x":20.5, "y":0}, - {"matrix":[0,20], "x":21.5, "y":0}, - - {"matrix":[1,0], "x":0, "y":1.25}, - {"matrix":[1,1], "x":1, "y":1.25}, - {"matrix":[1,2], "x":2, "y":1.25}, - {"matrix":[1,3], "x":3, "y":1.25}, - {"matrix":[1,4], "x":4, "y":1.25}, - {"matrix":[1,5], "x":5, "y":1.25}, - {"matrix":[1,6], "x":6, "y":1.25}, - {"matrix":[1,7], "x":7, "y":1.25}, - {"matrix":[1,8], "x":8, "y":1.25}, - {"matrix":[1,9], "x":9, "y":1.25}, - {"matrix":[1,10], "x":10, "y":1.25}, - {"matrix":[1,11], "x":11, "y":1.25}, - {"matrix":[1,12], "x":12, "y":1.25}, - {"matrix":[1,13], "x":13, "y":1.25, "w":2}, - {"matrix":[1,14], "x":15.25, "y":1.25}, - {"matrix":[1,15], "x":16.25, "y":1.25}, - {"matrix":[1,16], "x":17.25, "y":1.25}, - {"matrix":[1,17], "x":18.5, "y":1.25}, - {"matrix":[1,18], "x":19.5, "y":1.25}, - {"matrix":[1,19], "x":20.5, "y":1.25}, - {"matrix":[1,20], "x":21.5, "y":1.25}, - - {"matrix":[2,0], "x":0, "y":2.25, "w":1.5}, - {"matrix":[2,1], "x":1.5, "y":2.25}, - {"matrix":[2,2], "x":2.5, "y":2.25}, - {"matrix":[2,3], "x":3.5, "y":2.25}, - {"matrix":[2,4], "x":4.5, "y":2.25}, - {"matrix":[2,5], "x":5.5, "y":2.25}, - {"matrix":[2,6], "x":6.5, "y":2.25}, - {"matrix":[2,7], "x":7.5, "y":2.25}, - {"matrix":[2,8], "x":8.5, "y":2.25}, - {"matrix":[2,9], "x":9.5, "y":2.25}, - {"matrix":[2,10], "x":10.5, "y":2.25}, - {"matrix":[2,11], "x":11.5, "y":2.25}, - {"matrix":[2,12], "x":12.5, "y":2.25}, - {"matrix":[2,13], "x":13.5, "y":2.25, "w":1.5}, - {"matrix":[2,14], "x":15.25, "y":2.25}, - {"matrix":[2,15], "x":16.25, "y":2.25}, - {"matrix":[2,16], "x":17.25, "y":2.25}, - {"matrix":[2,17], "x":18.5, "y":2.25}, - {"matrix":[2,18], "x":19.5, "y":2.25}, - {"matrix":[2,19], "x":20.5, "y":2.25}, - {"matrix":[2,20], "x":21.5, "y":2.25, "h":2}, - - {"matrix":[3,0], "x":0, "y":3.25, "w":1.75}, - {"matrix":[3,1], "x":1.75, "y":3.25}, - {"matrix":[3,2], "x":2.75, "y":3.25}, - {"matrix":[3,3], "x":3.75, "y":3.25}, - {"matrix":[3,4], "x":4.75, "y":3.25}, - {"matrix":[3,5], "x":5.75, "y":3.25}, - {"matrix":[3,6], "x":6.75, "y":3.25}, - {"matrix":[3,7], "x":7.75, "y":3.25}, - {"matrix":[3,8], "x":8.75, "y":3.25}, - {"matrix":[3,9], "x":9.75, "y":3.25}, - {"matrix":[3,10], "x":10.75, "y":3.25}, - {"matrix":[3,11], "x":11.75, "y":3.25}, - {"matrix":[3,13], "x":12.75, "y":3.25, "w":2.25}, - {"matrix":[3,17], "x":18.5, "y":3.25}, - {"matrix":[3,18], "x":19.5, "y":3.25}, - {"matrix":[3,19], "x":20.5, "y":3.25}, - - {"matrix":[4,0], "x":0, "y":4.25, "w":2.25}, - {"matrix":[4,2], "x":2.25, "y":4.25}, - {"matrix":[4,3], "x":3.25, "y":4.25}, - {"matrix":[4,4], "x":4.25, "y":4.25}, - {"matrix":[4,5], "x":5.25, "y":4.25}, - {"matrix":[4,6], "x":6.25, "y":4.25}, - {"matrix":[4,7], "x":7.25, "y":4.25}, - {"matrix":[4,8], "x":8.25, "y":4.25}, - {"matrix":[4,9], "x":9.25, "y":4.25}, - {"matrix":[4,10], "x":10.25, "y":4.25}, - {"matrix":[4,11], "x":11.25, "y":4.25}, - {"matrix":[4,13], "x":12.25, "y":4.25, "w":2.75}, - {"matrix":[4,15], "x":16.25, "y":4.25}, - {"matrix":[4,17], "x":18.5, "y":4.25}, - {"matrix":[4,18], "x":19.5, "y":4.25}, - {"matrix":[4,19], "x":20.5, "y":4.25}, - {"matrix":[4,20], "x":21.5, "y":4.25, "h":2}, - - {"matrix":[5,0], "x":0, "y":5.25, "w":1.25}, - {"matrix":[5,1], "x":1.25, "y":5.25, "w":1.25}, - {"matrix":[5,2], "x":2.5, "y":5.25, "w":1.25}, - {"matrix":[5,6], "x":3.75, "y":5.25, "w":6.25}, - {"matrix":[5,10], "x":10, "y":5.25, "w":1.25}, - {"matrix":[5,11], "x":11.25, "y":5.25, "w":1.25}, - {"matrix":[5,12], "x":12.5, "y":5.25, "w":1.25}, - {"matrix":[5,13], "x":13.75, "y":5.25, "w":1.25}, - {"matrix":[5,14], "x":15.25, "y":5.25}, - {"matrix":[5,15], "x":16.25, "y":5.25}, - {"matrix":[5,16], "x":17.25, "y":5.25}, - {"matrix":[5,17], "x":18.5, "y":5.25, "w":2}, - {"matrix":[5,19], "x":20.5, "y":5.25} - ] - }, - "LAYOUT_109_iso": { - "layout": [ - {"matrix":[0,0], "x":0, "y":0}, - {"matrix":[0,1], "x":2, "y":0}, - {"matrix":[0,2], "x":3, "y":0}, - {"matrix":[0,3], "x":4, "y":0}, - {"matrix":[0,4], "x":5, "y":0}, - {"matrix":[0,5], "x":6.5, "y":0}, - {"matrix":[0,6], "x":7.5, "y":0}, - {"matrix":[0,7], "x":8.5, "y":0}, - {"matrix":[0,8], "x":9.5, "y":0}, - {"matrix":[0,9], "x":11, "y":0}, - {"matrix":[0,10], "x":12, "y":0}, - {"matrix":[0,11], "x":13, "y":0}, - {"matrix":[0,12], "x":14, "y":0}, - {"matrix":[0,14], "x":15.25, "y":0}, - {"matrix":[0,15], "x":16.25, "y":0}, - {"matrix":[0,16], "x":17.25, "y":0}, - {"matrix":[0,17], "x":18.5, "y":0}, - {"matrix":[0,18], "x":19.5, "y":0}, - {"matrix":[0,19], "x":20.5, "y":0}, - {"matrix":[0,20], "x":21.5, "y":0}, - - {"matrix":[1,0], "x":0, "y":1.25}, - {"matrix":[1,1], "x":1, "y":1.25}, - {"matrix":[1,2], "x":2, "y":1.25}, - {"matrix":[1,3], "x":3, "y":1.25}, - {"matrix":[1,4], "x":4, "y":1.25}, - {"matrix":[1,5], "x":5, "y":1.25}, - {"matrix":[1,6], "x":6, "y":1.25}, - {"matrix":[1,7], "x":7, "y":1.25}, - {"matrix":[1,8], "x":8, "y":1.25}, - {"matrix":[1,9], "x":9, "y":1.25}, - {"matrix":[1,10], "x":10, "y":1.25}, - {"matrix":[1,11], "x":11, "y":1.25}, - {"matrix":[1,12], "x":12, "y":1.25}, - {"matrix":[1,13], "x":13, "y":1.25, "w":2}, - {"matrix":[1,14], "x":15.25, "y":1.25}, - {"matrix":[1,15], "x":16.25, "y":1.25}, - {"matrix":[1,16], "x":17.25, "y":1.25}, - {"matrix":[1,17], "x":18.5, "y":1.25}, - {"matrix":[1,18], "x":19.5, "y":1.25}, - {"matrix":[1,19], "x":20.5, "y":1.25}, - {"matrix":[1,20], "x":21.5, "y":1.25}, - - {"matrix":[2,0], "x":0, "y":2.25, "w":1.5}, - {"matrix":[2,1], "x":1.5, "y":2.25}, - {"matrix":[2,2], "x":2.5, "y":2.25}, - {"matrix":[2,3], "x":3.5, "y":2.25}, - {"matrix":[2,4], "x":4.5, "y":2.25}, - {"matrix":[2,5], "x":5.5, "y":2.25}, - {"matrix":[2,6], "x":6.5, "y":2.25}, - {"matrix":[2,7], "x":7.5, "y":2.25}, - {"matrix":[2,8], "x":8.5, "y":2.25}, - {"matrix":[2,9], "x":9.5, "y":2.25}, - {"matrix":[2,10], "x":10.5, "y":2.25}, - {"matrix":[2,11], "x":11.5, "y":2.25}, - {"matrix":[2,12], "x":12.5, "y":2.25}, - {"matrix":[2,14], "x":15.25, "y":2.25}, - {"matrix":[2,15], "x":16.25, "y":2.25}, - {"matrix":[2,16], "x":17.25, "y":2.25}, - {"matrix":[2,17], "x":18.5, "y":2.25}, - {"matrix":[2,18], "x":19.5, "y":2.25}, - {"matrix":[2,19], "x":20.5, "y":2.25}, - {"matrix":[2,20], "x":21.5, "y":2.25, "h":2}, - - {"matrix":[3,0], "x":0, "y":3.25, "w":1.75}, - {"matrix":[3,1], "x":1.75, "y":3.25}, - {"matrix":[3,2], "x":2.75, "y":3.25}, - {"matrix":[3,3], "x":3.75, "y":3.25}, - {"matrix":[3,4], "x":4.75, "y":3.25}, - {"matrix":[3,5], "x":5.75, "y":3.25}, - {"matrix":[3,6], "x":6.75, "y":3.25}, - {"matrix":[3,7], "x":7.75, "y":3.25}, - {"matrix":[3,8], "x":8.75, "y":3.25}, - {"matrix":[3,9], "x":9.75, "y":3.25}, - {"matrix":[3,10], "x":10.75, "y":3.25}, - {"matrix":[3,11], "x":11.75, "y":3.25}, - {"matrix":[3,13], "x":12.75, "y":3.25}, - {"matrix":[2,13], "x":13.75, "y":2.25, "w":1.25, "h":2}, - {"matrix":[3,17], "x":18.5, "y":3.25}, - {"matrix":[3,18], "x":19.5, "y":3.25}, - {"matrix":[3,19], "x":20.5, "y":3.25}, - - {"matrix":[4,0], "x":0, "y":4.25, "w":1.25}, - {"matrix":[4,1], "x":1.25, "y":4.25}, - {"matrix":[4,2], "x":2.25, "y":4.25}, - {"matrix":[4,3], "x":3.25, "y":4.25}, - {"matrix":[4,4], "x":4.25, "y":4.25}, - {"matrix":[4,5], "x":5.25, "y":4.25}, - {"matrix":[4,6], "x":6.25, "y":4.25}, - {"matrix":[4,7], "x":7.25, "y":4.25}, - {"matrix":[4,8], "x":8.25, "y":4.25}, - {"matrix":[4,9], "x":9.25, "y":4.25}, - {"matrix":[4,10], "x":10.25, "y":4.25}, - {"matrix":[4,11], "x":11.25, "y":4.25}, - {"matrix":[4,13], "x":12.25, "y":4.25, "w":2.75}, - {"matrix":[4,15], "x":16.25, "y":4.25}, - {"matrix":[4,17], "x":18.5, "y":4.25}, - {"matrix":[4,18], "x":19.5, "y":4.25}, - {"matrix":[4,19], "x":20.5, "y":4.25}, - {"matrix":[4,20], "x":21.5, "y":4.25, "h":2}, - - {"matrix":[5,0], "x":0, "y":5.25, "w":1.25}, - {"matrix":[5,1], "x":1.25, "y":5.25, "w":1.25}, - {"matrix":[5,2], "x":2.5, "y":5.25, "w":1.25}, - {"matrix":[5,6], "x":3.75, "y":5.25, "w":6.25}, - {"matrix":[5,10], "x":10, "y":5.25, "w":1.25}, - {"matrix":[5,11], "x":11.25, "y":5.25, "w":1.25}, - {"matrix":[5,12], "x":12.5, "y":5.25, "w":1.25}, - {"matrix":[5,13], "x":13.75, "y":5.25, "w":1.25}, - {"matrix":[5,14], "x":15.25, "y":5.25}, - {"matrix":[5,15], "x":16.25, "y":5.25}, - {"matrix":[5,16], "x":17.25, "y":5.25}, - {"matrix":[5,17], "x":18.5, "y":5.25, "w":2}, - {"matrix":[5,19], "x":20.5, "y":5.25} - ] - }, - "LAYOUT_112_jis": { - "layout": [ - {"matrix":[0,0], "x":0, "y":0}, - {"matrix":[0,1], "x":2, "y":0}, - {"matrix":[0,2], "x":3, "y":0}, - {"matrix":[0,3], "x":4, "y":0}, - {"matrix":[0,4], "x":5, "y":0}, - {"matrix":[0,5], "x":6.5, "y":0}, - {"matrix":[0,6], "x":7.5, "y":0}, - {"matrix":[0,7], "x":8.5, "y":0}, - {"matrix":[0,8], "x":9.5, "y":0}, - {"matrix":[0,9], "x":11, "y":0}, - {"matrix":[0,10], "x":12, "y":0}, - {"matrix":[0,11], "x":13, "y":0}, - {"matrix":[0,12], "x":14, "y":0}, - {"matrix":[0,14], "x":15.25, "y":0}, - {"matrix":[0,15], "x":16.25, "y":0}, - {"matrix":[0,16], "x":17.25, "y":0}, - {"matrix":[0,17], "x":18.5, "y":0}, - {"matrix":[0,18], "x":19.5, "y":0}, - {"matrix":[0,19], "x":20.5, "y":0}, - {"matrix":[0,20], "x":21.5, "y":0}, - - {"matrix":[1,0], "x":0, "y":1.25}, - {"matrix":[1,1], "x":1, "y":1.25}, - {"matrix":[1,2], "x":2, "y":1.25}, - {"matrix":[1,3], "x":3, "y":1.25}, - {"matrix":[1,4], "x":4, "y":1.25}, - {"matrix":[1,5], "x":5, "y":1.25}, - {"matrix":[1,6], "x":6, "y":1.25}, - {"matrix":[1,7], "x":7, "y":1.25}, - {"matrix":[1,8], "x":8, "y":1.25}, - {"matrix":[1,9], "x":9, "y":1.25}, - {"matrix":[1,10], "x":10, "y":1.25}, - {"matrix":[1,11], "x":11, "y":1.25}, - {"matrix":[1,12], "x":12, "y":1.25}, - {"matrix":[1,13], "x":13, "y":1.25}, - {"matrix":[0,13], "x":14, "y":1.25}, - {"matrix":[1,14], "x":15.25, "y":1.25}, - {"matrix":[1,15], "x":16.25, "y":1.25}, - {"matrix":[1,16], "x":17.25, "y":1.25}, - {"matrix":[1,17], "x":18.5, "y":1.25}, - {"matrix":[1,18], "x":19.5, "y":1.25}, - {"matrix":[1,19], "x":20.5, "y":1.25}, - {"matrix":[1,20], "x":21.5, "y":1.25}, - - {"matrix":[2,0], "x":0, "y":2.25, "w":1.5}, - {"matrix":[2,1], "x":1.5, "y":2.25}, - {"matrix":[2,2], "x":2.5, "y":2.25}, - {"matrix":[2,3], "x":3.5, "y":2.25}, - {"matrix":[2,4], "x":4.5, "y":2.25}, - {"matrix":[2,5], "x":5.5, "y":2.25}, - {"matrix":[2,6], "x":6.5, "y":2.25}, - {"matrix":[2,7], "x":7.5, "y":2.25}, - {"matrix":[2,8], "x":8.5, "y":2.25}, - {"matrix":[2,9], "x":9.5, "y":2.25}, - {"matrix":[2,10], "x":10.5, "y":2.25}, - {"matrix":[2,11], "x":11.5, "y":2.25}, - {"matrix":[2,12], "x":12.5, "y":2.25}, - {"matrix":[2,14], "x":15.25, "y":2.25}, - {"matrix":[2,15], "x":16.25, "y":2.25}, - {"matrix":[2,16], "x":17.25, "y":2.25}, - {"matrix":[2,17], "x":18.5, "y":2.25}, - {"matrix":[2,18], "x":19.5, "y":2.25}, - {"matrix":[2,19], "x":20.5, "y":2.25}, - {"matrix":[2,20], "x":21.5, "y":2.25, "h":2}, - - {"matrix":[3,0], "x":0, "y":3.25, "w":1.75}, - {"matrix":[3,1], "x":1.75, "y":3.25}, - {"matrix":[3,2], "x":2.75, "y":3.25}, - {"matrix":[3,3], "x":3.75, "y":3.25}, - {"matrix":[3,4], "x":4.75, "y":3.25}, - {"matrix":[3,5], "x":5.75, "y":3.25}, - {"matrix":[3,6], "x":6.75, "y":3.25}, - {"matrix":[3,7], "x":7.75, "y":3.25}, - {"matrix":[3,8], "x":8.75, "y":3.25}, - {"matrix":[3,9], "x":9.75, "y":3.25}, - {"matrix":[3,10], "x":10.75, "y":3.25}, - {"matrix":[3,11], "x":11.75, "y":3.25}, - {"matrix":[3,13], "x":12.75, "y":3.25}, - {"matrix":[2,13], "x":13.75, "y":2.25, "w":1.25, "h":2}, - {"matrix":[3,17], "x":18.5, "y":3.25}, - {"matrix":[3,18], "x":19.5, "y":3.25}, - {"matrix":[3,19], "x":20.5, "y":3.25}, - - {"matrix":[4,0], "x":0, "y":4.25, "w":2.25}, - {"matrix":[4,2], "x":2.25, "y":4.25}, - {"matrix":[4,3], "x":3.25, "y":4.25}, - {"matrix":[4,4], "x":4.25, "y":4.25}, - {"matrix":[4,5], "x":5.25, "y":4.25}, - {"matrix":[4,6], "x":6.25, "y":4.25}, - {"matrix":[4,7], "x":7.25, "y":4.25}, - {"matrix":[4,8], "x":8.25, "y":4.25}, - {"matrix":[4,9], "x":9.25, "y":4.25}, - {"matrix":[4,10], "x":10.25, "y":4.25}, - {"matrix":[4,11], "x":11.25, "y":4.25}, - {"matrix":[4,12], "x":12.25, "y":4.25}, - {"matrix":[4,13], "x":13.25, "y":4.25, "w":1.75}, - {"matrix":[4,15], "x":16.25, "y":4.25}, - {"matrix":[4,17], "x":18.5, "y":4.25}, - {"matrix":[4,18], "x":19.5, "y":4.25}, - {"matrix":[4,19], "x":20.5, "y":4.25}, - {"matrix":[4,20], "x":21.5, "y":4.25, "h":2}, - - {"matrix":[5,0], "x":0, "y":5.25, "w":1.25}, - {"matrix":[5,1], "x":1.25, "y":5.25}, - {"matrix":[5,2], "x":2.25, "y":5.25, "w":1.25}, - {"matrix":[5,3], "x":3.5, "y":5.25}, - {"matrix":[5,6], "x":4.5, "y":5.25, "w":5}, - {"matrix":[5,9], "x":9.5, "y":5.25}, - {"matrix":[5,10], "x":10.5, "y":5.25, "w":1.25}, - {"matrix":[5,11], "x":11.75, "y":5.25}, - {"matrix":[5,12], "x":12.75, "y":5.25}, - {"matrix":[5,13], "x":13.75, "y":5.25, "w":1.25}, - {"matrix":[5,14], "x":15.25, "y":5.25}, - {"matrix":[5,15], "x":16.25, "y":5.25}, - {"matrix":[5,16], "x":17.25, "y":5.25}, - {"matrix":[5,17], "x":18.5, "y":5.25, "w":2}, - {"matrix":[5,19], "x":20.5, "y":5.25} - ] - } - } -} diff --git a/keyboards/keychron/k5_pro/iso/rgb/config.h b/keyboards/keychron/k5_pro/iso/rgb/config.h deleted file mode 100644 index aacd0175f2..0000000000 --- a/keyboards/keychron/k5_pro/iso/rgb/config.h +++ /dev/null @@ -1,53 +0,0 @@ -/* 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 . - */ - -#pragma once - -#ifdef RGB_MATRIX_ENABLE -/* RGB Matrix Driver Configuration */ -# define DRIVER_COUNT 2 -# define DRIVER_ADDR_1 0b1110111 -# define DRIVER_ADDR_2 0b1110100 - -/* RGB Matrix Configuration */ -# define DRIVER_1_LED_TOTAL 58 -# define DRIVER_2_LED_TOTAL 51 -# define RGB_MATRIX_LED_COUNT (DRIVER_1_LED_TOTAL + DRIVER_2_LED_TOTAL) - -/* Set to infinit, which is use in USB mode by default */ -# define RGB_MATRIX_TIMEOUT RGB_MATRIX_TIMEOUT_INFINITE - -/* Allow to shutdown driver to save power */ -# define RGB_MATRIX_DRIVER_SHUTDOWN_ENABLE - -/* Turn off backllit if brightness value is low */ -# define RGB_MATRIX_BRIGHTNESS_TURN_OFF_VAL 48 - -/* Indication led */ -# define NUM_LOCK_INDEX 37 // NumLock -# define LOW_BAT_IND_INDEX 99 // Space - -/* RGB Matrix Animation modes. Explicitly enabled - * For full list of effects, see: - * https://docs.qmk.fm/#/feature_rgb_matrix?id=rgb-matrix-effects - */ -# define RGB_MATRIX_KEYPRESSES -# define RGB_MATRIX_FRAMEBUFFER_EFFECTS - -/* Set LED driver current */ -# define SNLED27351_CURRENT_TUNE \ - { 0x15, 0x15, 0x15, 0x15, 0x15, 0x15, 0x15, 0x15, 0x15, 0x15, 0x15, 0x15 } -#endif diff --git a/keyboards/keychron/k5_pro/iso/rgb/info.json b/keyboards/keychron/k5_pro/iso/rgb/info.json deleted file mode 100644 index 085bb7f4e9..0000000000 --- a/keyboards/keychron/k5_pro/iso/rgb/info.json +++ /dev/null @@ -1,151 +0,0 @@ -{ - "usb": { - "pid": "0x0251", - "device_version": "1.0.0" - }, - "features": { - "rgb_matrix": true - }, - "rgb_matrix": { - "driver": "snled27351", - "animations": { - "breathing": true, - "band_spiral_val": true, - "cycle_all": true, - "cycle_left_right": true, - "cycle_up_down": true, - "rainbow_moving_chevron": true, - "cycle_out_in": true, - "cycle_out_in_dual": true, - "cycle_pinwheel": true, - "cycle_spiral": true, - "dual_beacon": true, - "rainbow_beacon": true, - "jellybean_raindrops": true, - "pixel_rain": true, - "typing_heatmap": true, - "digital_rain": true, - "solid_reactive_simple": true, - "solid_reactive_multiwide": true, - "solid_reactive_multinexus": true, - "splash": true, - "solid_splash": true - }, - "layout": [ - {"matrix":[0, 0], "flags":1, "x":0, "y":0}, - {"matrix":[0, 1], "flags":1, "x":21, "y":0}, - {"matrix":[0, 2], "flags":1, "x":32, "y":0}, - {"matrix":[0, 3], "flags":1, "x":42, "y":0}, - {"matrix":[0, 4], "flags":1, "x":53, "y":0}, - {"matrix":[0, 5], "flags":1, "x":69, "y":0}, - {"matrix":[0, 6], "flags":1, "x":79, "y":0}, - {"matrix":[0, 7], "flags":1, "x":90, "y":0}, - {"matrix":[0, 8], "flags":1, "x":100, "y":0}, - {"matrix":[0, 9], "flags":1, "x":116, "y":0}, - {"matrix":[0, 10], "flags":1, "x":127, "y":0}, - {"matrix":[0, 11], "flags":1, "x":137, "y":0}, - {"matrix":[0, 12], "flags":1, "x":148, "y":0}, - {"matrix":[0, 14], "flags":4, "x":160, "y":0}, - {"matrix":[0, 15], "flags":4, "x":170, "y":0}, - {"matrix":[0, 16], "flags":4, "x":181, "y":0}, - {"matrix":[0, 17], "flags":4, "x":192, "y":0}, - {"matrix":[0, 18], "flags":4, "x":203, "y":0}, - {"matrix":[0, 19], "flags":4, "x":213, "y":0}, - {"matrix":[0, 20], "flags":4, "x":224, "y":0}, - - {"matrix":[1, 0], "flags":1, "x":0, "y":14}, - {"matrix":[1, 1], "flags":8, "x":11, "y":14}, - {"matrix":[1, 2], "flags":8, "x":21, "y":14}, - {"matrix":[1, 3], "flags":8, "x":32, "y":14}, - {"matrix":[1, 4], "flags":4, "x":42, "y":14}, - {"matrix":[1, 5], "flags":4, "x":53, "y":14}, - {"matrix":[1, 6], "flags":4, "x":63, "y":14}, - {"matrix":[1, 7], "flags":4, "x":74, "y":14}, - {"matrix":[1, 8], "flags":4, "x":84, "y":14}, - {"matrix":[1, 9], "flags":4, "x":95, "y":14}, - {"matrix":[1, 10], "flags":4, "x":106, "y":14}, - {"matrix":[1, 11], "flags":4, "x":116, "y":14}, - {"matrix":[1, 12], "flags":4, "x":127, "y":14}, - {"matrix":[1, 13], "flags":1, "x":143, "y":14}, - {"matrix":[1, 14], "flags":1, "x":160, "y":14}, - {"matrix":[1, 15], "flags":1, "x":170, "y":14}, - {"matrix":[1, 16], "flags":1, "x":181, "y":14}, - {"matrix":[1, 17], "flags":8, "x":192, "y":14}, - {"matrix":[1, 18], "flags":4, "x":203, "y":14}, - {"matrix":[1, 19], "flags":4, "x":213, "y":14}, - {"matrix":[1, 20], "flags":4, "x":224, "y":14}, - - {"matrix":[2, 0], "flags":1, "x":3, "y":26}, - {"matrix":[2, 1], "flags":4, "x":16, "y":26}, - {"matrix":[2, 2], "flags":4, "x":26, "y":26}, - {"matrix":[2, 3], "flags":4, "x":37, "y":26}, - {"matrix":[2, 4], "flags":4, "x":48, "y":26}, - {"matrix":[2, 5], "flags":4, "x":58, "y":26}, - {"matrix":[2, 6], "flags":4, "x":69, "y":26}, - {"matrix":[2, 7], "flags":4, "x":79, "y":26}, - {"matrix":[2, 8], "flags":4, "x":90, "y":26}, - {"matrix":[2, 9], "flags":4, "x":100, "y":26}, - {"matrix":[2, 10], "flags":4, "x":111, "y":26}, - {"matrix":[2, 11], "flags":4, "x":121, "y":26}, - {"matrix":[2, 12], "flags":4, "x":132, "y":26}, - {"matrix":[2, 14], "flags":1, "x":160, "y":26}, - {"matrix":[2, 15], "flags":1, "x":170, "y":26}, - {"matrix":[2, 16], "flags":1, "x":181, "y":26}, - {"matrix":[2, 17], "flags":4, "x":192, "y":26}, - {"matrix":[2, 18], "flags":4, "x":203, "y":26}, - {"matrix":[2, 19], "flags":4, "x":213, "y":26}, - {"matrix":[2, 20], "flags":4, "x":224, "y":26}, - - {"matrix":[3, 0], "flags":8, "x":4, "y":39}, - {"matrix":[3, 1], "flags":4, "x":18, "y":39}, - {"matrix":[3, 2], "flags":4, "x":29, "y":39}, - {"matrix":[3, 3], "flags":4, "x":40, "y":39}, - {"matrix":[3, 4], "flags":4, "x":50, "y":39}, - {"matrix":[3, 5], "flags":4, "x":61, "y":39}, - {"matrix":[3, 6], "flags":4, "x":71, "y":39}, - {"matrix":[3, 7], "flags":4, "x":82, "y":39}, - {"matrix":[3, 8], "flags":4, "x":92, "y":39}, - {"matrix":[3, 9], "flags":4, "x":103, "y":39}, - {"matrix":[3, 10], "flags":4, "x":114, "y":39}, - {"matrix":[3, 11], "flags":4, "x":124, "y":39}, - {"matrix":[3, 13], "flags":4, "x":134, "y":39}, - {"matrix":[2, 13], "flags":1, "x":147, "y":39}, - {"matrix":[3, 17], "flags":4, "x":192, "y":39}, - {"matrix":[3, 18], "flags":4, "x":203, "y":39}, - {"matrix":[3, 19], "flags":4, "x":213, "y":39}, - - {"matrix":[4, 0], "flags":1, "x":7, "y":51}, - {"matrix":[4, 1], "flags":4, "x":13, "y":51}, - {"matrix":[4, 2], "flags":4, "x":24, "y":51}, - {"matrix":[4, 3], "flags":4, "x":34, "y":51}, - {"matrix":[4, 4], "flags":4, "x":45, "y":51}, - {"matrix":[4, 5], "flags":4, "x":55, "y":51}, - {"matrix":[4, 6], "flags":4, "x":66, "y":51}, - {"matrix":[4, 7], "flags":4, "x":77, "y":51}, - {"matrix":[4, 8], "flags":4, "x":87, "y":51}, - {"matrix":[4, 9], "flags":4, "x":98, "y":51}, - {"matrix":[4, 10], "flags":4, "x":108, "y":51}, - {"matrix":[4, 11], "flags":4, "x":119, "y":51}, - {"matrix":[4, 13], "flags":1, "x":139, "y":51}, - {"matrix":[4, 15], "flags":1, "x":170, "y":51}, - {"matrix":[4, 17], "flags":4, "x":192, "y":51}, - {"matrix":[4, 18], "flags":4, "x":203, "y":51}, - {"matrix":[4, 19], "flags":4, "x":213, "y":51}, - {"matrix":[4, 20], "flags":4, "x":224, "y":51}, - - {"matrix":[5, 0], "flags":1, "x":1, "y":64}, - {"matrix":[5, 1], "flags":1, "x":15, "y":64}, - {"matrix":[5, 2], "flags":1, "x":28, "y":64}, - {"matrix":[5, 6], "flags":4, "x":67, "y":64}, - {"matrix":[5, 10], "flags":1, "x":107, "y":64}, - {"matrix":[5, 11], "flags":1, "x":120, "y":64}, - {"matrix":[5, 12], "flags":4, "x":133, "y":64}, - {"matrix":[5, 13], "flags":1, "x":147, "y":64}, - {"matrix":[5, 14], "flags":1, "x":160, "y":64}, - {"matrix":[5, 15], "flags":1, "x":170, "y":64}, - {"matrix":[5, 16], "flags":1, "x":181, "y":64}, - {"matrix":[5, 17], "flags":4, "x":198, "y":64}, - {"matrix":[5, 19], "flags":4, "x":213, "y":64} - ] - } -} diff --git a/keyboards/keychron/k5_pro/iso/rgb/keymaps/default/keymap.c b/keyboards/keychron/k5_pro/iso/rgb/keymaps/default/keymap.c deleted file mode 100644 index a192e7b310..0000000000 --- a/keyboards/keychron/k5_pro/iso/rgb/keymaps/default/keymap.c +++ /dev/null @@ -1,59 +0,0 @@ -/* 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 . - */ - -#include QMK_KEYBOARD_H - -enum layers { - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN, -}; - -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_109_iso( - KC_ESC, KC_BRID, KC_BRIU, KC_MCTL, KC_LPAD, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_SNAP, KC_SIRI, RGB_MOD, KC_F13, KC_F14, KC_F15, KC_F16, - KC_GRV, 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_INS, KC_HOME, KC_PGUP, KC_NUM, KC_PSLS, KC_PAST, KC_PMNS, - 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_DEL, KC_END, KC_PGDN, KC_P7, KC_P8, KC_P9, KC_PPLS, - 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_NUHS, KC_ENT, KC_P4, KC_P5, KC_P6, - KC_LSFT, KC_NUBS, 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_P1, KC_P2, KC_P3, KC_PENT, - KC_LCTL, KC_LOPTN, KC_LCMMD, KC_SPC, KC_RCMMD, KC_ROPTN,MO(MAC_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT, KC_P0, KC_PDOT ), - - [MAC_FN] = LAYOUT_109_iso( - _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, RGB_TOG, _______, _______, _______, _______, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ), - - [WIN_BASE] = LAYOUT_109_iso( - KC_ESC, 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_PSCR, KC_CTANA, RGB_MOD, _______, _______, _______, _______, - KC_GRV, 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_INS, KC_HOME, KC_PGUP, KC_NUM, KC_PSLS, KC_PAST, KC_PMNS, - 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_DEL, KC_END, KC_PGDN, KC_P7, KC_P8, KC_P9, KC_PPLS, - 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_NUHS, KC_ENT, KC_P4, KC_P5, KC_P6, - KC_LSFT, KC_NUBS, 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_P1, KC_P2, KC_P3, KC_PENT, - KC_LCTL, KC_LWIN, KC_LALT, KC_SPC, KC_RALT, KC_RWIN, MO(WIN_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT, KC_P0, KC_PDOT ), - - [WIN_FN] = LAYOUT_109_iso( - _______, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, RGB_TOG, _______, _______, _______, _______, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ), -}; diff --git a/keyboards/keychron/k5_pro/iso/rgb/keymaps/via/keymap.c b/keyboards/keychron/k5_pro/iso/rgb/keymaps/via/keymap.c deleted file mode 100644 index 69cca31f9b..0000000000 --- a/keyboards/keychron/k5_pro/iso/rgb/keymaps/via/keymap.c +++ /dev/null @@ -1,59 +0,0 @@ -/* 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 . - */ - -#include QMK_KEYBOARD_H - -enum layers { - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN, -}; - -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_109_iso( - KC_ESC, KC_BRID, KC_BRIU, KC_MICT, KC_LAPA, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_SNAP, KC_SIRI, RGB_MOD, KC_F13, KC_F14, KC_F15, KC_F16, - KC_GRV, 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_INS, KC_HOME, KC_PGUP, KC_NUM, KC_PSLS, KC_PAST, KC_PMNS, - 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_DEL, KC_END, KC_PGDN, KC_P7, KC_P8, KC_P9, KC_PPLS, - 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_NUHS, KC_ENT, KC_P4, KC_P5, KC_P6, - KC_LSFT, KC_NUBS, 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_P1, KC_P2, KC_P3, KC_PENT, - KC_LCTL, KC_LOPTN, KC_LCMMD, KC_SPC, KC_RCMMD, KC_ROPTN,MO(MAC_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT, KC_P0, KC_PDOT ), - - [MAC_FN] = LAYOUT_109_iso( - _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, RGB_TOG, _______, _______, _______, _______, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ), - - [WIN_BASE] = LAYOUT_109_iso( - KC_ESC, 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_PSCR, KC_CTANA, RGB_MOD, _______, _______, _______, _______, - KC_GRV, 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_INS, KC_HOME, KC_PGUP, KC_NUM, KC_PSLS, KC_PAST, KC_PMNS, - 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_DEL, KC_END, KC_PGDN, KC_P7, KC_P8, KC_P9, KC_PPLS, - 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_NUHS, KC_ENT, KC_P4, KC_P5, KC_P6, - KC_LSFT, KC_NUBS, 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_P1, KC_P2, KC_P3, KC_PENT, - KC_LCTL, KC_LWIN, KC_LALT, KC_SPC, KC_RALT, KC_RWIN, MO(WIN_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT, KC_P0, KC_PDOT ), - - [WIN_FN] = LAYOUT_109_iso( - _______, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, RGB_TOG, _______, _______, _______, _______, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ), -}; diff --git a/keyboards/keychron/k5_pro/iso/rgb/keymaps/via/rules.mk b/keyboards/keychron/k5_pro/iso/rgb/keymaps/via/rules.mk deleted file mode 100644 index 45fa68954c..0000000000 --- a/keyboards/keychron/k5_pro/iso/rgb/keymaps/via/rules.mk +++ /dev/null @@ -1 +0,0 @@ -VIA_ENABLE = yes diff --git a/keyboards/keychron/k5_pro/iso/rgb/rgb.c b/keyboards/keychron/k5_pro/iso/rgb/rgb.c deleted file mode 100644 index 71a08a13b0..0000000000 --- a/keyboards/keychron/k5_pro/iso/rgb/rgb.c +++ /dev/null @@ -1,143 +0,0 @@ -/* 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 . - */ - -#include "quantum.h" - -// clang-format off -#ifdef RGB_MATRIX_ENABLE -const snled27351_led_t g_snled27351_leds[RGB_MATRIX_LED_COUNT] = { -/* Refer to snled27351manual for these locations - * driver - * | R location - * | | G location - * | | | B location - * | | | | */ - {0, G_1, I_1, H_1}, - {0, G_2, I_2, H_2}, - {0, G_3, I_3, H_3}, - {0, G_4, I_4, H_4}, - {0, G_5, I_5, H_5}, - {0, G_6, I_6, H_6}, - {0, G_7, I_7, H_7}, - {0, G_8, I_8, H_8}, - {0, G_9, I_9, H_9}, - {0, G_10, I_10, H_10}, - {0, G_11, I_11, H_11}, - {0, G_12, I_12, H_12}, - {0, G_13, I_13, H_13}, - {0, G_15, I_15, H_15}, - {0, G_16, I_16, H_16}, - {0, G_14, I_14, H_14}, - {1, G_13, I_13, H_13}, - {1, G_15, I_15, H_15}, - {1, G_16, I_16, H_16}, - {1, A_15, C_15, B_15}, - - {0, D_1, F_1, E_1}, - {0, D_2, F_2, E_2}, - {0, D_3, F_3, E_3}, - {0, D_4, F_4, E_4}, - {0, D_5, F_5, E_5}, - {0, D_6, F_6, E_6}, - {0, D_7, F_7, E_7}, - {0, D_8, F_8, E_8}, - {0, D_9, F_9, E_9}, - {0, D_10, F_10, E_10}, - {0, D_11, F_11, E_11}, - {0, D_12, F_12, E_12}, - {0, D_13, F_13, E_13}, - {0, D_14, F_14, E_14}, - {0, D_15, F_15, E_15}, - {0, D_16, F_16, E_16}, - {0, J_7, L_7, K_7}, - {0, J_8, L_8, K_8}, - {0, J_9, L_9, K_9}, - {0, J_10, L_10, K_10}, - {0, J_11, L_11, K_11}, - - {0, C_1, A_1, B_1}, - {0, C_2, A_2, B_2}, - {0, C_3, A_3, B_3}, - {0, C_4, A_4, B_4}, - {0, C_5, A_5, B_5}, - {0, C_6, A_6, B_6}, - {0, C_7, A_7, B_7}, - {0, C_8, A_8, B_8}, - {0, C_9, A_9, B_9}, - {0, C_10, A_10, B_10}, - {0, C_11, A_11, B_11}, - {0, C_12, A_12, B_12}, - {0, C_13, A_13, B_13}, - {0, C_15, A_15, B_15}, - {0, C_16, A_16, B_16}, - {0, J_12, L_12, K_12}, - {0, J_13, L_13, K_13}, - {0, J_14, L_14, K_14}, - {0, J_15, L_15, K_15}, - {0, J_16, L_16, K_16}, - - {1, G_1, I_1, H_1}, - {1, G_2, I_2, H_2}, - {1, G_3, I_3, H_3}, - {1, G_4, I_4, H_4}, - {1, G_5, I_5, H_5}, - {1, G_6, I_6, H_6}, - {1, G_7, I_7, H_7}, - {1, G_8, I_8, H_8}, - {1, G_9, I_9, H_9}, - {1, G_10, I_10, H_10}, - {1, G_11, I_11, H_11}, - {1, G_12, I_12, H_12}, - {1, G_14, I_14, H_14}, - {0, C_14, A_14, B_14}, - {1, J_7, L_7, K_7}, - {1, J_8, L_8, K_8}, - {1, J_9, L_9, K_9}, - - {1, A_1, C_1, B_1}, - {1, A_2, C_2, B_2}, - {1, A_3, C_3, B_3}, - {1, A_4, C_4, B_4}, - {1, A_5, C_5, B_5}, - {1, A_6, C_6, B_6}, - {1, A_7, C_7, B_7}, - {1, A_8, C_8, B_8}, - {1, A_9, C_9, B_9}, - {1, A_10, C_10, B_10}, - {1, A_11, C_11, B_11}, - {1, A_12, C_12, B_12}, - {1, A_14, C_14, B_14}, - {1, A_16, C_16, B_16}, - {1, J_10, L_10, K_10}, - {1, J_11, L_11, K_11}, - {1, J_12, L_12, K_12}, - {1, J_13, L_13, K_13}, - - {1, D_1, F_1, E_1}, - {1, D_2, F_2, E_2}, - {1, D_3, F_3, E_3}, - {1, D_7, F_7, E_7}, - {1, D_11, F_11, E_11}, - {1, D_12, F_12, E_12}, - {1, D_13, F_13, E_13}, - {1, D_14, F_14, E_14}, - {1, D_15, F_15, E_15}, - {1, D_16, F_16, E_16}, - {1, J_14, L_14, K_14}, - {1, J_15, L_15, K_15}, - {1, J_16, L_16, K_16}, -}; -#endif diff --git a/keyboards/keychron/k5_pro/iso/rgb/rules.mk b/keyboards/keychron/k5_pro/iso/rgb/rules.mk deleted file mode 100644 index 6e7633bfe0..0000000000 --- a/keyboards/keychron/k5_pro/iso/rgb/rules.mk +++ /dev/null @@ -1 +0,0 @@ -# This file intentionally left blank diff --git a/keyboards/keychron/k5_pro/iso/white/config.h b/keyboards/keychron/k5_pro/iso/white/config.h deleted file mode 100644 index b37b3a103e..0000000000 --- a/keyboards/keychron/k5_pro/iso/white/config.h +++ /dev/null @@ -1,53 +0,0 @@ -/* 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 . - */ - -#pragma once - -#ifdef LED_MATRIX_ENABLE -/* LED Matrix Driver Configuration */ -# define DRIVER_COUNT 1 -# define SNLED27351_I2C_ADDRESS_1 SNLED27351_I2C_ADDRESS_GND - -/* LED Matrix Configuration */ -# define LED_MATRIX_LED_COUNT 109 - -/* Set to infinit, which is use in USB mode by default */ -# define LED_MATRIX_TIMEOUT LED_MATRIX_TIMEOUT_INFINITE - -/* Allow to shutdown driver to save power */ -# define LED_MATRIX_DRIVER_SHUTDOWN_ENABLE - -/* Turn off backllit if brightness value is low */ -# define LED_MATRIX_BRIGHTNESS_TURN_OFF_VAL 48 - -/* Indication led */ -# define NUM_LOCK_INDEX 37 // NumLock -# define LOW_BAT_IND_INDEX 99 // Space - -// LED Matrix Animation modes. Explicitly enabled -// For full list of effects, see: -// https://docs.qmk.fm/#/feature_led_matrix?id=led-matrix-effects -// #if defined(LED_MATRIX_KEYPRESSES) || defined(LED_MATRIX_KEYRELEASES) -# define LED_MATRIX_KEYPRESSES -# define LED_MATRIX_KEYRELEASES - -/* Use first 9 channels of LED driver */ -# define PHASE_CHANNEL MSKPHASE_8CHANNEL - -/* Set LED driver current */ -# define SNLED27351_CURRENT_TUNE \ - { 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30 } -#endif diff --git a/keyboards/keychron/k5_pro/iso/white/info.json b/keyboards/keychron/k5_pro/iso/white/info.json deleted file mode 100644 index e1720b1d86..0000000000 --- a/keyboards/keychron/k5_pro/iso/white/info.json +++ /dev/null @@ -1,146 +0,0 @@ -{ - "usb": { - "pid": "0x0254", - "device_version": "1.0.0" - }, - "features": { - "led_matrix": true - }, - "led_matrix": { - "driver": "snled27351", - "animations": { - "none": true, - "solid": true, - "breathing": true, - "band_pinwheel": true, - "band_spiral": true, - "cycle_left_right": true, - "cycle_up_down": true, - "cycle_out_in": true, - "dual_beacon": true, - "solid_reactive_simple": true, - "solid_reactive_multiwide": true, - "solid_reactive_multinexus": true, - "solid_splash": true, - "wave_left_right": true, - "wave_up_down": true, - "effect_max": true - }, - "layout": [ - {"matrix":[0, 0], "flags":1, "x":0, "y":0}, - {"matrix":[0, 1], "flags":1, "x":21, "y":0}, - {"matrix":[0, 2], "flags":1, "x":32, "y":0}, - {"matrix":[0, 3], "flags":1, "x":42, "y":0}, - {"matrix":[0, 4], "flags":1, "x":53, "y":0}, - {"matrix":[0, 5], "flags":1, "x":69, "y":0}, - {"matrix":[0, 6], "flags":1, "x":79, "y":0}, - {"matrix":[0, 7], "flags":1, "x":90, "y":0}, - {"matrix":[0, 8], "flags":1, "x":100, "y":0}, - {"matrix":[0, 9], "flags":1, "x":116, "y":0}, - {"matrix":[0, 10], "flags":1, "x":127, "y":0}, - {"matrix":[0, 11], "flags":1, "x":137, "y":0}, - {"matrix":[0, 12], "flags":1, "x":148, "y":0}, - {"matrix":[0, 14], "flags":4, "x":160, "y":0}, - {"matrix":[0, 15], "flags":4, "x":170, "y":0}, - {"matrix":[0, 16], "flags":4, "x":181, "y":0}, - {"matrix":[0, 17], "flags":4, "x":192, "y":0}, - {"matrix":[0, 18], "flags":4, "x":203, "y":0}, - {"matrix":[0, 19], "flags":4, "x":213, "y":0}, - {"matrix":[0, 20], "flags":4, "x":224, "y":0}, - - {"matrix":[1, 0], "flags":1, "x":0, "y":14}, - {"matrix":[1, 1], "flags":8, "x":11, "y":14}, - {"matrix":[1, 2], "flags":8, "x":21, "y":14}, - {"matrix":[1, 3], "flags":8, "x":32, "y":14}, - {"matrix":[1, 4], "flags":4, "x":42, "y":14}, - {"matrix":[1, 5], "flags":4, "x":53, "y":14}, - {"matrix":[1, 6], "flags":4, "x":63, "y":14}, - {"matrix":[1, 7], "flags":4, "x":74, "y":14}, - {"matrix":[1, 8], "flags":4, "x":84, "y":14}, - {"matrix":[1, 9], "flags":4, "x":95, "y":14}, - {"matrix":[1, 10], "flags":4, "x":106, "y":14}, - {"matrix":[1, 11], "flags":4, "x":116, "y":14}, - {"matrix":[1, 12], "flags":4, "x":127, "y":14}, - {"matrix":[1, 13], "flags":1, "x":143, "y":14}, - {"matrix":[1, 14], "flags":1, "x":160, "y":14}, - {"matrix":[1, 15], "flags":1, "x":170, "y":14}, - {"matrix":[1, 16], "flags":1, "x":181, "y":14}, - {"matrix":[1, 17], "flags":8, "x":192, "y":14}, - {"matrix":[1, 18], "flags":4, "x":203, "y":14}, - {"matrix":[1, 19], "flags":4, "x":213, "y":14}, - {"matrix":[1, 20], "flags":4, "x":224, "y":14}, - - {"matrix":[2, 0], "flags":1, "x":3, "y":26}, - {"matrix":[2, 1], "flags":4, "x":16, "y":26}, - {"matrix":[2, 2], "flags":4, "x":26, "y":26}, - {"matrix":[2, 3], "flags":4, "x":37, "y":26}, - {"matrix":[2, 4], "flags":4, "x":48, "y":26}, - {"matrix":[2, 5], "flags":4, "x":58, "y":26}, - {"matrix":[2, 6], "flags":4, "x":69, "y":26}, - {"matrix":[2, 7], "flags":4, "x":79, "y":26}, - {"matrix":[2, 8], "flags":4, "x":90, "y":26}, - {"matrix":[2, 9], "flags":4, "x":100, "y":26}, - {"matrix":[2, 10], "flags":4, "x":111, "y":26}, - {"matrix":[2, 11], "flags":4, "x":121, "y":26}, - {"matrix":[2, 12], "flags":4, "x":132, "y":26}, - {"matrix":[2, 14], "flags":1, "x":160, "y":26}, - {"matrix":[2, 15], "flags":1, "x":170, "y":26}, - {"matrix":[2, 16], "flags":1, "x":181, "y":26}, - {"matrix":[2, 17], "flags":4, "x":192, "y":26}, - {"matrix":[2, 18], "flags":4, "x":203, "y":26}, - {"matrix":[2, 19], "flags":4, "x":213, "y":26}, - {"matrix":[2, 20], "flags":4, "x":224, "y":26}, - - {"matrix":[3, 0], "flags":8, "x":4, "y":39}, - {"matrix":[3, 1], "flags":4, "x":18, "y":39}, - {"matrix":[3, 2], "flags":4, "x":29, "y":39}, - {"matrix":[3, 3], "flags":4, "x":40, "y":39}, - {"matrix":[3, 4], "flags":4, "x":50, "y":39}, - {"matrix":[3, 5], "flags":4, "x":61, "y":39}, - {"matrix":[3, 6], "flags":4, "x":71, "y":39}, - {"matrix":[3, 7], "flags":4, "x":82, "y":39}, - {"matrix":[3, 8], "flags":4, "x":92, "y":39}, - {"matrix":[3, 9], "flags":4, "x":103, "y":39}, - {"matrix":[3, 10], "flags":4, "x":114, "y":39}, - {"matrix":[3, 11], "flags":4, "x":124, "y":39}, - {"matrix":[3, 13], "flags":4, "x":134, "y":39}, - {"matrix":[2, 13], "flags":1, "x":147, "y":39}, - {"matrix":[3, 17], "flags":4, "x":192, "y":39}, - {"matrix":[3, 18], "flags":4, "x":203, "y":39}, - {"matrix":[3, 19], "flags":4, "x":213, "y":39}, - - {"matrix":[4, 0], "flags":1, "x":7, "y":51}, - {"matrix":[4, 1], "flags":4, "x":13, "y":51}, - {"matrix":[4, 2], "flags":4, "x":24, "y":51}, - {"matrix":[4, 3], "flags":4, "x":34, "y":51}, - {"matrix":[4, 4], "flags":4, "x":45, "y":51}, - {"matrix":[4, 5], "flags":4, "x":55, "y":51}, - {"matrix":[4, 6], "flags":4, "x":66, "y":51}, - {"matrix":[4, 7], "flags":4, "x":77, "y":51}, - {"matrix":[4, 8], "flags":4, "x":87, "y":51}, - {"matrix":[4, 9], "flags":4, "x":98, "y":51}, - {"matrix":[4, 10], "flags":4, "x":108, "y":51}, - {"matrix":[4, 11], "flags":4, "x":119, "y":51}, - {"matrix":[4, 13], "flags":1, "x":139, "y":51}, - {"matrix":[4, 15], "flags":1, "x":170, "y":51}, - {"matrix":[4, 17], "flags":4, "x":192, "y":51}, - {"matrix":[4, 18], "flags":4, "x":203, "y":51}, - {"matrix":[4, 19], "flags":4, "x":213, "y":51}, - {"matrix":[4, 20], "flags":4, "x":224, "y":51}, - - {"matrix":[5, 0], "flags":1, "x":1, "y":64}, - {"matrix":[5, 1], "flags":1, "x":15, "y":64}, - {"matrix":[5, 2], "flags":1, "x":28, "y":64}, - {"matrix":[5, 6], "flags":4, "x":67, "y":64}, - {"matrix":[5, 10], "flags":1, "x":107, "y":64}, - {"matrix":[5, 11], "flags":1, "x":120, "y":64}, - {"matrix":[5, 12], "flags":4, "x":133, "y":64}, - {"matrix":[5, 13], "flags":1, "x":147, "y":64}, - {"matrix":[5, 14], "flags":1, "x":160, "y":64}, - {"matrix":[5, 15], "flags":1, "x":170, "y":64}, - {"matrix":[5, 16], "flags":1, "x":181, "y":64}, - {"matrix":[5, 17], "flags":4, "x":198, "y":64}, - {"matrix":[5, 19], "flags":4, "x":213, "y":64} - ] - } -} diff --git a/keyboards/keychron/k5_pro/iso/white/keymaps/default/keymap.c b/keyboards/keychron/k5_pro/iso/white/keymaps/default/keymap.c deleted file mode 100644 index 35385cbcbe..0000000000 --- a/keyboards/keychron/k5_pro/iso/white/keymaps/default/keymap.c +++ /dev/null @@ -1,59 +0,0 @@ -/* 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 . - */ - -#include QMK_KEYBOARD_H - -enum layers{ - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN, -}; - -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_109_iso( - KC_ESC, KC_BRID, KC_BRIU, KC_MCTL, KC_LPAD, BL_DOWN, BL_UP, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_SNAP, KC_SIRI, BL_STEP, KC_F13, KC_F14, KC_F15, KC_F16, - KC_GRV, 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_INS, KC_HOME, KC_PGUP, KC_NUM, KC_PSLS, KC_PAST, KC_PMNS, - 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_DEL, KC_END, KC_PGDN, KC_P7, KC_P8, KC_P9, KC_PPLS, - 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_NUHS, KC_ENT, KC_P4, KC_P5, KC_P6, - KC_LSFT, KC_NUBS, 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_P1, KC_P2, KC_P3, KC_PENT, - KC_LCTL, KC_LOPTN, KC_LCMMD, KC_SPC, KC_RCMMD, KC_ROPTN,MO(MAC_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT, KC_P0, KC_PDOT ), - - [MAC_FN] = LAYOUT_109_iso( - _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, BL_TOGG, _______, _______, _______, _______, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - BL_TOGG, BL_STEP, BL_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, BL_DOWN, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ), - - [WIN_BASE] = LAYOUT_109_iso( - KC_ESC, 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_PSCR, KC_CTANA, BL_STEP, _______, _______, _______, _______, - KC_GRV, 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_INS, KC_HOME, KC_PGUP, KC_NUM, KC_PSLS, KC_PAST, KC_PMNS, - 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_DEL, KC_END, KC_PGDN, KC_P7, KC_P8, KC_P9, KC_PPLS, - 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_NUHS, KC_ENT, KC_P4, KC_P5, KC_P6, - KC_LSFT, KC_NUBS, 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_P1, KC_P2, KC_P3, KC_PENT, - KC_LCTL, KC_LWIN, KC_LALT, KC_SPC, KC_RALT, KC_RWIN, MO(WIN_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT, KC_P0, KC_PDOT ), - - [WIN_FN] = LAYOUT_109_iso( - _______, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, BL_DOWN, BL_UP, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, BL_TOGG, _______, _______, _______, _______, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - BL_TOGG, BL_STEP, BL_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, BL_DOWN, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ), -}; diff --git a/keyboards/keychron/k5_pro/iso/white/keymaps/via/keymap.c b/keyboards/keychron/k5_pro/iso/white/keymaps/via/keymap.c deleted file mode 100644 index 1edbe274f2..0000000000 --- a/keyboards/keychron/k5_pro/iso/white/keymaps/via/keymap.c +++ /dev/null @@ -1,59 +0,0 @@ -/* 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 . - */ - -#include QMK_KEYBOARD_H - -enum layers{ - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN, -}; - -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_109_iso( - KC_ESC, KC_BRID, KC_BRIU, KC_MICT, KC_LAPA, BL_DOWN, BL_UP, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_SNAP, KC_SIRI, BL_STEP, KC_F13, KC_F14, KC_F15, KC_F16, - KC_GRV, 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_INS, KC_HOME, KC_PGUP, KC_NUM, KC_PSLS, KC_PAST, KC_PMNS, - 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_DEL, KC_END, KC_PGDN, KC_P7, KC_P8, KC_P9, KC_PPLS, - 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_NUHS, KC_ENT, KC_P4, KC_P5, KC_P6, - KC_LSFT, KC_NUBS, 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_P1, KC_P2, KC_P3, KC_PENT, - KC_LCTL, KC_LOPTN, KC_LCMMD, KC_SPC, KC_RCMMD, KC_ROPTN,MO(MAC_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT, KC_P0, KC_PDOT ), - - [MAC_FN] = LAYOUT_109_iso( - _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, BL_TOGG, _______, _______, _______, _______, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - BL_TOGG, BL_STEP, BL_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, BL_DOWN, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ), - - [WIN_BASE] = LAYOUT_109_iso( - KC_ESC, 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_PSCR, KC_CTANA, BL_STEP, _______, _______, _______, _______, - KC_GRV, 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_INS, KC_HOME, KC_PGUP, KC_NUM, KC_PSLS, KC_PAST, KC_PMNS, - 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_DEL, KC_END, KC_PGDN, KC_P7, KC_P8, KC_P9, KC_PPLS, - 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_NUHS, KC_ENT, KC_P4, KC_P5, KC_P6, - KC_LSFT, KC_NUBS, 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_P1, KC_P2, KC_P3, KC_PENT, - KC_LCTL, KC_LWIN, KC_LALT, KC_SPC, KC_RALT, KC_RWIN, MO(WIN_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT, KC_P0, KC_PDOT ), - - [WIN_FN] = LAYOUT_109_iso( - _______, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, BL_DOWN, BL_UP, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, BL_TOGG, _______, _______, _______, _______, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - BL_TOGG, BL_STEP, BL_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, BL_DOWN, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ), -}; diff --git a/keyboards/keychron/k5_pro/iso/white/keymaps/via/rules.mk b/keyboards/keychron/k5_pro/iso/white/keymaps/via/rules.mk deleted file mode 100644 index 45fa68954c..0000000000 --- a/keyboards/keychron/k5_pro/iso/white/keymaps/via/rules.mk +++ /dev/null @@ -1 +0,0 @@ -VIA_ENABLE = yes diff --git a/keyboards/keychron/k5_pro/iso/white/rules.mk b/keyboards/keychron/k5_pro/iso/white/rules.mk deleted file mode 100644 index 6e7633bfe0..0000000000 --- a/keyboards/keychron/k5_pro/iso/white/rules.mk +++ /dev/null @@ -1 +0,0 @@ -# This file intentionally left blank diff --git a/keyboards/keychron/k5_pro/iso/white/white.c b/keyboards/keychron/k5_pro/iso/white/white.c deleted file mode 100644 index 88ec165975..0000000000 --- a/keyboards/keychron/k5_pro/iso/white/white.c +++ /dev/null @@ -1,141 +0,0 @@ -/* Copyright 2021 @ 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 . - */ - -#include "quantum.h" - -// clang-format off -#ifdef LED_MATRIX_ENABLE -const snled27351_led_t g_snled27351_leds[LED_MATRIX_LED_COUNT] = { -/* Refer to snled27351manual for these locations - * driver - * | LED address - * | | */ - {0, F_1}, - {0, F_2}, - {0, F_3}, - {0, F_4}, - {0, F_5}, - {0, F_6}, - {0, F_7}, - {0, F_8}, - {0, F_9}, - {0, F_10}, - {0, F_11}, - {0, F_12}, - {0, F_13}, - {0, F_15}, - {0, F_16}, - {0, F_14}, - {0, H_7}, - {0, H_8}, - {0, H_9}, - {0, H_10}, - - {0, E_1}, - {0, E_2}, - {0, E_3}, - {0, E_4}, - {0, E_5}, - {0, E_6}, - {0, E_7}, - {0, E_8}, - {0, E_9}, - {0, E_10}, - {0, E_11}, - {0, E_12}, - {0, E_13}, - {0, E_14}, - {0, E_15}, - {0, E_16}, - {0, G_7}, - {0, G_8}, - {0, G_9}, - {0, G_10}, - {0, G_11}, - - {0, D_1}, - {0, D_2}, - {0, D_3}, - {0, D_4}, - {0, D_5}, - {0, D_6}, - {0, D_7}, - {0, D_8}, - {0, D_9}, - {0, D_10}, - {0, D_11}, - {0, D_12}, - {0, D_13}, - {0, D_15}, - {0, D_16}, - {0, G_12}, - {0, G_13}, - {0, G_14}, - {0, G_15}, - {0, G_16}, - - {0, C_1}, - {0, C_2}, - {0, C_3}, - {0, C_4}, - {0, C_5}, - {0, C_6}, - {0, C_7}, - {0, C_8}, - {0, C_9}, - {0, C_10}, - {0, C_11}, - {0, C_12}, - {0, C_14}, - {0, D_14}, - {0, C_13}, - {0, C_15}, - {0, C_16}, - - {0, B_1}, - {0, B_2}, - {0, B_3}, - {0, B_4}, - {0, B_5}, - {0, B_6}, - {0, B_7}, - {0, B_8}, - {0, B_9}, - {0, B_10}, - {0, B_11}, - {0, B_12}, - {0, B_14}, - {0, B_16}, - {0, B_13}, - {0, H_11}, - {0, H_12}, - {0, H_13}, - - {0, A_1}, - {0, A_2}, - {0, A_3}, - {0, A_7}, - {0, A_11}, - {0, A_12}, - {0, A_13}, - {0, A_14}, - {0, A_15}, - {0, A_16}, - {0, H_14}, - {0, H_15}, - {0, H_16} -}; -#endif diff --git a/keyboards/keychron/k5_pro/jis/rgb/config.h b/keyboards/keychron/k5_pro/jis/rgb/config.h deleted file mode 100644 index 152575932a..0000000000 --- a/keyboards/keychron/k5_pro/jis/rgb/config.h +++ /dev/null @@ -1,53 +0,0 @@ -/* 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 . - */ - -#pragma once - -#ifdef RGB_MATRIX_ENABLE -/* RGB Matrix Driver Configuration */ -# define DRIVER_COUNT 2 -# define DRIVER_ADDR_1 0b1110111 -# define DRIVER_ADDR_2 0b1110100 - -/* RGB Matrix Configuration */ -# define DRIVER_1_LED_TOTAL 62 -# define DRIVER_2_LED_TOTAL 50 -# define RGB_MATRIX_LED_COUNT (DRIVER_1_LED_TOTAL + DRIVER_2_LED_TOTAL) - -/* Set to infinit, which is use in USB mode by default */ -# define RGB_MATRIX_TIMEOUT RGB_MATRIX_TIMEOUT_INFINITE - -/* Allow to shutdown driver to save power */ -# define RGB_MATRIX_DRIVER_SHUTDOWN_ENABLE - -/* Turn off backllit if brightness value is low */ -# define RGB_MATRIX_BRIGHTNESS_TURN_OFF_VAL 48 - -/* Indication led */ -# define NUM_LOCK_INDEX 38 // NumLock -# define LOW_BAT_IND_INDEX 101 // Space - -/* RGB Matrix Animation modes. Explicitly enabled - * For full list of effects, see: - * https://docs.qmk.fm/#/feature_rgb_matrix?id=rgb-matrix-effects - */ -# define RGB_MATRIX_KEYPRESSES -# define RGB_MATRIX_FRAMEBUFFER_EFFECTS - -/* Set LED driver current */ -# define SNLED27351_CURRENT_TUNE \ - { 0x15, 0x15, 0x15, 0x15, 0x15, 0x15, 0x15, 0x15, 0x15, 0x15, 0x15, 0x15 } -#endif diff --git a/keyboards/keychron/k5_pro/jis/rgb/info.json b/keyboards/keychron/k5_pro/jis/rgb/info.json deleted file mode 100644 index 73b8954daa..0000000000 --- a/keyboards/keychron/k5_pro/jis/rgb/info.json +++ /dev/null @@ -1,154 +0,0 @@ -{ - "usb": { - "pid": "0x0252", - "device_version": "1.0.0" - }, - "features": { - "rgb_matrix": true - }, - "rgb_matrix": { - "driver": "snled27351", - "animations": { - "breathing": true, - "band_spiral_val": true, - "cycle_all": true, - "cycle_left_right": true, - "cycle_up_down": true, - "rainbow_moving_chevron": true, - "cycle_out_in": true, - "cycle_out_in_dual": true, - "cycle_pinwheel": true, - "cycle_spiral": true, - "dual_beacon": true, - "rainbow_beacon": true, - "jellybean_raindrops": true, - "pixel_rain": true, - "typing_heatmap": true, - "digital_rain": true, - "solid_reactive_simple": true, - "solid_reactive_multiwide": true, - "solid_reactive_multinexus": true, - "splash": true, - "solid_splash": true - }, - "layout": [ - {"matrix":[0, 0], "flags":1, "x":0, "y":0}, - {"matrix":[0, 1], "flags":1, "x":21, "y":0}, - {"matrix":[0, 2], "flags":1, "x":32, "y":0}, - {"matrix":[0, 3], "flags":1, "x":42, "y":0}, - {"matrix":[0, 4], "flags":1, "x":53, "y":0}, - {"matrix":[0, 5], "flags":1, "x":69, "y":0}, - {"matrix":[0, 6], "flags":1, "x":79, "y":0}, - {"matrix":[0, 7], "flags":1, "x":90, "y":0}, - {"matrix":[0, 8], "flags":1, "x":100, "y":0}, - {"matrix":[0, 9], "flags":1, "x":116, "y":0}, - {"matrix":[0, 10], "flags":1, "x":127, "y":0}, - {"matrix":[0, 11], "flags":1, "x":137, "y":0}, - {"matrix":[0, 12], "flags":1, "x":148, "y":0}, - {"matrix":[0, 14], "flags":1, "x":160, "y":0}, - {"matrix":[0, 15], "flags":1, "x":170, "y":0}, - {"matrix":[0, 16], "flags":1, "x":181, "y":0}, - {"matrix":[0, 17], "flags":4, "x":192, "y":0}, - {"matrix":[0, 18], "flags":4, "x":203, "y":0}, - {"matrix":[0, 19], "flags":4, "x":213, "y":0}, - {"matrix":[0, 20], "flags":4, "x":224, "y":0}, - - {"matrix":[1, 0], "flags":1, "x":0, "y":14}, - {"matrix":[1, 1], "flags":8, "x":11, "y":14}, - {"matrix":[1, 2], "flags":8, "x":21, "y":14}, - {"matrix":[1, 3], "flags":8, "x":32, "y":14}, - {"matrix":[1, 4], "flags":4, "x":42, "y":14}, - {"matrix":[1, 5], "flags":4, "x":53, "y":14}, - {"matrix":[1, 6], "flags":4, "x":63, "y":14}, - {"matrix":[1, 7], "flags":4, "x":74, "y":14}, - {"matrix":[1, 8], "flags":4, "x":84, "y":14}, - {"matrix":[1, 9], "flags":4, "x":95, "y":14}, - {"matrix":[1, 10], "flags":4, "x":106, "y":14}, - {"matrix":[1, 11], "flags":4, "x":116, "y":14}, - {"matrix":[1, 12], "flags":4, "x":127, "y":14}, - {"matrix":[1, 13], "flags":1, "x":137, "y":14}, - {"matrix":[0, 13], "flags":1, "x":148, "y":14}, - {"matrix":[1, 14], "flags":1, "x":160, "y":14}, - {"matrix":[1, 15], "flags":1, "x":170, "y":14}, - {"matrix":[1, 16], "flags":1, "x":181, "y":14}, - {"matrix":[1, 17], "flags":8, "x":192, "y":14}, - {"matrix":[1, 18], "flags":4, "x":203, "y":14}, - {"matrix":[1, 19], "flags":4, "x":213, "y":14}, - {"matrix":[1, 20], "flags":4, "x":224, "y":14}, - - {"matrix":[2, 0], "flags":1, "x":3, "y":26}, - {"matrix":[2, 1], "flags":4, "x":16, "y":26}, - {"matrix":[2, 2], "flags":4, "x":26, "y":26}, - {"matrix":[2, 3], "flags":4, "x":37, "y":26}, - {"matrix":[2, 4], "flags":4, "x":48, "y":26}, - {"matrix":[2, 5], "flags":4, "x":58, "y":26}, - {"matrix":[2, 6], "flags":4, "x":69, "y":26}, - {"matrix":[2, 7], "flags":4, "x":79, "y":26}, - {"matrix":[2, 8], "flags":4, "x":90, "y":26}, - {"matrix":[2, 9], "flags":4, "x":100, "y":26}, - {"matrix":[2, 10], "flags":4, "x":111, "y":26}, - {"matrix":[2, 11], "flags":4, "x":121, "y":26}, - {"matrix":[2, 12], "flags":4, "x":132, "y":26}, - {"matrix":[2, 14], "flags":1, "x":160, "y":26}, - {"matrix":[2, 15], "flags":1, "x":170, "y":26}, - {"matrix":[2, 16], "flags":1, "x":181, "y":26}, - {"matrix":[2, 17], "flags":4, "x":192, "y":26}, - {"matrix":[2, 18], "flags":4, "x":203, "y":26}, - {"matrix":[2, 19], "flags":4, "x":213, "y":26}, - {"matrix":[2, 20], "flags":4, "x":224, "y":33}, - - {"matrix":[3, 0], "flags":8, "x":4, "y":39}, - {"matrix":[3, 1], "flags":4, "x":18, "y":39}, - {"matrix":[3, 2], "flags":4, "x":29, "y":39}, - {"matrix":[3, 3], "flags":4, "x":40, "y":39}, - {"matrix":[3, 4], "flags":4, "x":50, "y":39}, - {"matrix":[3, 5], "flags":4, "x":61, "y":39}, - {"matrix":[3, 6], "flags":4, "x":71, "y":39}, - {"matrix":[3, 7], "flags":4, "x":82, "y":39}, - {"matrix":[3, 8], "flags":4, "x":92, "y":39}, - {"matrix":[3, 9], "flags":4, "x":103, "y":39}, - {"matrix":[3, 10], "flags":4, "x":114, "y":39}, - {"matrix":[3, 11], "flags":4, "x":124, "y":39}, - {"matrix":[3, 13], "flags":1, "x":135, "y":39}, - {"matrix":[2, 13], "flags":1, "x":147, "y":33}, - {"matrix":[3, 17], "flags":4, "x":192, "y":39}, - {"matrix":[3, 18], "flags":4, "x":203, "y":39}, - {"matrix":[3, 19], "flags":4, "x":213, "y":39}, - - {"matrix":[4, 0], "flags":1, "x":7, "y":51}, - {"matrix":[4, 2], "flags":4, "x":24, "y":51}, - {"matrix":[4, 3], "flags":4, "x":34, "y":51}, - {"matrix":[4, 4], "flags":4, "x":45, "y":51}, - {"matrix":[4, 5], "flags":4, "x":55, "y":51}, - {"matrix":[4, 6], "flags":4, "x":66, "y":51}, - {"matrix":[4, 7], "flags":4, "x":77, "y":51}, - {"matrix":[4, 8], "flags":4, "x":87, "y":51}, - {"matrix":[4, 9], "flags":4, "x":98, "y":51}, - {"matrix":[4, 10], "flags":4, "x":108, "y":51}, - {"matrix":[4, 11], "flags":4, "x":119, "y":51}, - {"matrix":[4, 12], "flags":1, "x":129, "y":51}, - {"matrix":[4, 13], "flags":1, "x":144, "y":51}, - {"matrix":[4, 15], "flags":1, "x":170, "y":51}, - {"matrix":[4, 17], "flags":4, "x":192, "y":51}, - {"matrix":[4, 18], "flags":4, "x":203, "y":51}, - {"matrix":[4, 19], "flags":4, "x":213, "y":51}, - {"matrix":[4, 20], "flags":4, "x":224, "y":58}, - - {"matrix":[5, 0], "flags":1, "x":1, "y":64}, - {"matrix":[5, 1], "flags":1, "x":13, "y":64}, - {"matrix":[5, 2], "flags":1, "x":25, "y":64}, - {"matrix":[5, 3], "flags":1, "x":37, "y":64}, - {"matrix":[5, 6], "flags":4, "x":69, "y":64}, - {"matrix":[5, 9], "flags":1, "x":100, "y":64}, - {"matrix":[5, 10], "flags":1, "x":112, "y":64}, - {"matrix":[5, 11], "flags":1, "x":124, "y":64}, - {"matrix":[5, 12], "flags":1, "x":135, "y":64}, - {"matrix":[5, 13], "flags":1, "x":147, "y":64}, - {"matrix":[5, 14], "flags":1, "x":160, "y":64}, - {"matrix":[5, 15], "flags":1, "x":170, "y":64}, - {"matrix":[5, 16], "flags":1, "x":181, "y":64}, - {"matrix":[5, 17], "flags":4, "x":198, "y":64}, - {"matrix":[5, 19], "flags":4, "x":213, "y":64} - ] - } -} diff --git a/keyboards/keychron/k5_pro/jis/rgb/keymaps/default/keymap.c b/keyboards/keychron/k5_pro/jis/rgb/keymaps/default/keymap.c deleted file mode 100644 index 88f7d5ec44..0000000000 --- a/keyboards/keychron/k5_pro/jis/rgb/keymaps/default/keymap.c +++ /dev/null @@ -1,59 +0,0 @@ -/* 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 . - */ - -#include QMK_KEYBOARD_H - -enum layers { - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN, -}; - -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_112_jis( - KC_ESC, KC_BRID, KC_BRIU, KC_MCTL, KC_LPAD, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_SNAP, KC_SIRI, RGB_MOD, KC_F13, KC_F14, KC_F15, KC_F16, - KC_GRV, 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_INT3, KC_BSPC, KC_INS, KC_HOME, KC_PGUP, KC_NUM, KC_PSLS, KC_PAST, KC_PMNS, - 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_DEL, KC_END, KC_PGDN, KC_P7, KC_P8, KC_P9, KC_PPLS, - 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_NUHS, KC_ENT, KC_P4, KC_P5, KC_P6, - KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_INT1, KC_RSFT, KC_UP, KC_P1, KC_P2, KC_P3, KC_PENT, - KC_LCTL, KC_LOPTN, KC_LCMMD, KC_LNG2, KC_SPC, KC_LNG1, KC_RCMMD, KC_ROPTN,MO(MAC_FN), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT, KC_P0, KC_PDOT ), - - [MAC_FN] = LAYOUT_112_jis( - _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, RGB_TOG, _______, _______, _______, _______, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ), - - [WIN_BASE] = LAYOUT_112_jis( - KC_ESC, 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_PSCR, KC_CTANA, RGB_MOD, _______, _______, _______, _______, - KC_GRV, 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_INT3, KC_BSPC, KC_INS, KC_HOME, KC_PGUP, KC_NUM, KC_PSLS, KC_PAST, KC_PMNS, - 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_DEL, KC_END, KC_PGDN, KC_P7, KC_P8, KC_P9, KC_PPLS, - 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_NUHS, KC_ENT, KC_P4, KC_P5, KC_P6, - KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_INT1, KC_RSFT, KC_UP, KC_P1, KC_P2, KC_P3, KC_PENT, - KC_LCTL, KC_LWIN, KC_LALT, KC_INT5, KC_SPC, KC_INT4, KC_RALT, KC_RWIN, MO(WIN_FN), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT, KC_P0, KC_PDOT ), - - [WIN_FN] = LAYOUT_112_jis( - _______, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, RGB_TOG, _______, _______, _______, _______, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ), -}; diff --git a/keyboards/keychron/k5_pro/jis/rgb/keymaps/via/keymap.c b/keyboards/keychron/k5_pro/jis/rgb/keymaps/via/keymap.c deleted file mode 100644 index 927e5b9baa..0000000000 --- a/keyboards/keychron/k5_pro/jis/rgb/keymaps/via/keymap.c +++ /dev/null @@ -1,59 +0,0 @@ -/* 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 . - */ - -#include QMK_KEYBOARD_H - -enum layers { - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN, -}; - -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_112_jis( - KC_ESC, KC_BRID, KC_BRIU, KC_MICT, KC_LAPA, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_SNAP, KC_SIRI, RGB_MOD, KC_F13, KC_F14, KC_F15, KC_F16, - KC_GRV, 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_INT3, KC_BSPC, KC_INS, KC_HOME, KC_PGUP, KC_NUM, KC_PSLS, KC_PAST, KC_PMNS, - 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_DEL, KC_END, KC_PGDN, KC_P7, KC_P8, KC_P9, KC_PPLS, - 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_NUHS, KC_ENT, KC_P4, KC_P5, KC_P6, - KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_INT1, KC_RSFT, KC_UP, KC_P1, KC_P2, KC_P3, KC_PENT, - KC_LCTL, KC_LOPTN, KC_LCMMD, KC_LNG2, KC_SPC, KC_LNG1, KC_RCMMD, KC_ROPTN,MO(MAC_FN), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT, KC_P0, KC_PDOT ), - - [MAC_FN] = LAYOUT_112_jis( - _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, RGB_TOG, _______, _______, _______, _______, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ), - - [WIN_BASE] = LAYOUT_112_jis( - KC_ESC, 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_PSCR, KC_CTANA, RGB_MOD, _______, _______, _______, _______, - KC_GRV, 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_INT3, KC_BSPC, KC_INS, KC_HOME, KC_PGUP, KC_NUM, KC_PSLS, KC_PAST, KC_PMNS, - 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_DEL, KC_END, KC_PGDN, KC_P7, KC_P8, KC_P9, KC_PPLS, - 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_NUHS, KC_ENT, KC_P4, KC_P5, KC_P6, - KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_INT1, KC_RSFT, KC_UP, KC_P1, KC_P2, KC_P3, KC_PENT, - KC_LCTL, KC_LWIN, KC_LALT, KC_INT5, KC_SPC, KC_INT4, KC_RALT, KC_RWIN, MO(WIN_FN), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT, KC_P0, KC_PDOT ), - - [WIN_FN] = LAYOUT_112_jis( - _______, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, RGB_TOG, _______, _______, _______, _______, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ), -}; diff --git a/keyboards/keychron/k5_pro/jis/rgb/keymaps/via/rules.mk b/keyboards/keychron/k5_pro/jis/rgb/keymaps/via/rules.mk deleted file mode 100644 index 45fa68954c..0000000000 --- a/keyboards/keychron/k5_pro/jis/rgb/keymaps/via/rules.mk +++ /dev/null @@ -1 +0,0 @@ -VIA_ENABLE = yes diff --git a/keyboards/keychron/k5_pro/jis/rgb/rgb.c b/keyboards/keychron/k5_pro/jis/rgb/rgb.c deleted file mode 100644 index 1ca24673ad..0000000000 --- a/keyboards/keychron/k5_pro/jis/rgb/rgb.c +++ /dev/null @@ -1,146 +0,0 @@ -/* 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 . - */ - -#include "quantum.h" - -// clang-format off -#ifdef RGB_MATRIX_ENABLE -const snled27351_led_t g_snled27351_leds[RGB_MATRIX_LED_COUNT] = { -/* Refer to snled27351manual for these locations - * driver - * | R location - * | | G location - * | | | B location - * | | | | */ - {0, G_1, I_1, H_1}, - {0, G_2, I_2, H_2}, - {0, G_3, I_3, H_3}, - {0, G_4, I_4, H_4}, - {0, G_5, I_5, H_5}, - {0, G_6, I_6, H_6}, - {0, G_7, I_7, H_7}, - {0, G_8, I_8, H_8}, - {0, G_9, I_9, H_9}, - {0, G_10, I_10, H_10}, - {0, G_11, I_11, H_11}, - {0, G_12, I_12, H_12}, - {0, G_13, I_13, H_13}, - {0, G_15, I_15, H_15}, - {0, G_16, I_16, H_16}, - {0, G_14, I_14, H_14}, - {1, G_13, I_13, H_13}, - {1, G_15, I_15, H_15}, - {1, G_16, I_16, H_16}, - {1, A_15, C_15, B_15}, - - {0, D_1, F_1, E_1}, - {0, D_2, F_2, E_2}, - {0, D_3, F_3, E_3}, - {0, D_4, F_4, E_4}, - {0, D_5, F_5, E_5}, - {0, D_6, F_6, E_6}, - {0, D_7, F_7, E_7}, - {0, D_8, F_8, E_8}, - {0, D_9, F_9, E_9}, - {0, D_10, F_10, E_10}, - {0, D_11, F_11, E_11}, - {0, D_12, F_12, E_12}, - {0, D_13, F_13, E_13}, - {0, D_14, F_14, E_14}, - {1, G_14, I_14, H_14}, - {0, D_15, F_15, E_15}, - {0, D_16, F_16, E_16}, - {0, J_7, L_7, K_7}, - {0, J_8, L_8, K_8}, - {0, J_9, L_9, K_9}, - {0, J_10, L_10, K_10}, - {0, J_11, L_11, K_11}, - - {0, C_1, A_1, B_1}, - {0, C_2, A_2, B_2}, - {0, C_3, A_3, B_3}, - {0, C_4, A_4, B_4}, - {0, C_5, A_5, B_5}, - {0, C_6, A_6, B_6}, - {0, C_7, A_7, B_7}, - {0, C_8, A_8, B_8}, - {0, C_9, A_9, B_9}, - {0, C_10, A_10, B_10}, - {0, C_11, A_11, B_11}, - {0, C_12, A_12, B_12}, - {0, C_13, A_13, B_13}, - {0, C_15, A_15, B_15}, - {0, C_16, A_16, B_16}, - {0, J_12, L_12, K_12}, - {0, J_13, L_13, K_13}, - {0, J_14, L_14, K_14}, - {0, J_15, L_15, K_15}, - {0, J_16, L_16, K_16}, - - {1, G_1, I_1, H_1}, - {1, G_2, I_2, H_2}, - {1, G_3, I_3, H_3}, - {1, G_4, I_4, H_4}, - {1, G_5, I_5, H_5}, - {1, G_6, I_6, H_6}, - {1, G_7, I_7, H_7}, - {1, G_8, I_8, H_8}, - {1, G_9, I_9, H_9}, - {1, G_10, I_10, H_10}, - {1, G_11, I_11, H_11}, - {1, G_12, I_12, H_12}, - {1, G_14, I_14, H_14}, - {0, C_14, A_14, B_14}, - {1, J_7, L_7, K_7}, - {1, J_8, L_8, K_8}, - {1, J_9, L_9, K_9}, - - {1, A_1, C_1, B_1}, - {1, A_3, C_3, B_3}, - {1, A_4, C_4, B_4}, - {1, A_5, C_5, B_5}, - {1, A_6, C_6, B_6}, - {1, A_7, C_7, B_7}, - {1, A_8, C_8, B_8}, - {1, A_9, C_9, B_9}, - {1, A_10, C_10, B_10}, - {1, A_11, C_11, B_11}, - {1, A_12, C_12, B_12}, - {1, A_13, C_13, B_13}, - {1, A_14, C_14, B_14}, - {1, A_16, C_16, B_16}, - {1, J_10, L_10, K_10}, - {1, J_11, L_11, K_11}, - {1, J_12, L_12, K_12}, - {1, J_13, L_13, K_13}, - - {1, D_1, F_1, E_1}, - {1, D_2, F_2, E_2}, - {1, D_3, F_3, E_3}, - {1, D_4, F_4, E_4}, - {1, D_7, F_7, E_7}, - {1, D_10, F_10, E_10}, - {1, D_11, F_11, E_11}, - {1, D_12, F_12, E_12}, - {1, D_13, F_13, E_13}, - {1, D_14, F_14, E_14}, - {1, D_15, F_15, E_15}, - {1, D_16, F_16, E_16}, - {1, J_14, L_14, K_14}, - {1, J_15, L_15, K_15}, - {1, J_16, L_16, K_16}, -}; -#endif diff --git a/keyboards/keychron/k5_pro/jis/rgb/rules.mk b/keyboards/keychron/k5_pro/jis/rgb/rules.mk deleted file mode 100644 index 6e7633bfe0..0000000000 --- a/keyboards/keychron/k5_pro/jis/rgb/rules.mk +++ /dev/null @@ -1 +0,0 @@ -# This file intentionally left blank diff --git a/keyboards/keychron/k5_pro/jis/white/config.h b/keyboards/keychron/k5_pro/jis/white/config.h deleted file mode 100644 index 2bdd8cab96..0000000000 --- a/keyboards/keychron/k5_pro/jis/white/config.h +++ /dev/null @@ -1,53 +0,0 @@ -/* 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 . - */ - -#pragma once - -#ifdef LED_MATRIX_ENABLE -/* LED Matrix Driver Configuration */ -# define DRIVER_COUNT 1 -# define SNLED27351_I2C_ADDRESS_1 SNLED27351_I2C_ADDRESS_GND - -/* LED Matrix Configuration */ -# define LED_MATRIX_LED_COUNT 112 - -/* Set to infinit, which is use in USB mode by default */ -# define LED_MATRIX_TIMEOUT LED_MATRIX_TIMEOUT_INFINITE - -/* Allow to shutdown driver to save power */ -# define LED_MATRIX_DRIVER_SHUTDOWN_ENABLE - -/* Turn off backllit if brightness value is low */ -# define LED_MATRIX_BRIGHTNESS_TURN_OFF_VAL 48 - -/* Indication led */ -# define NUM_LOCK_INDEX 38 // NumLock -# define LOW_BAT_IND_INDEX 101 // Space - -// LED Matrix Animation modes. Explicitly enabled -// For full list of effects, see: -// https://docs.qmk.fm/#/feature_led_matrix?id=led-matrix-effects -// #if defined(LED_MATRIX_KEYPRESSES) || defined(LED_MATRIX_KEYRELEASES) -# define LED_MATRIX_KEYPRESSES -# define LED_MATRIX_KEYRELEASES - -/* Use first 9 channels of LED driver */ -# define PHASE_CHANNEL MSKPHASE_8CHANNEL - -/* Set LED driver current */ -# define SNLED27351_CURRENT_TUNE \ - { 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30 } -#endif diff --git a/keyboards/keychron/k5_pro/jis/white/info.json b/keyboards/keychron/k5_pro/jis/white/info.json deleted file mode 100644 index d776dff997..0000000000 --- a/keyboards/keychron/k5_pro/jis/white/info.json +++ /dev/null @@ -1,149 +0,0 @@ -{ - "usb": { - "pid": "0x0255", - "device_version": "1.0.0" - }, - "features": { - "led_matrix": true - }, - "led_matrix": { - "driver": "snled27351", - "animations": { - "none": true, - "solid": true, - "breathing": true, - "band_pinwheel": true, - "band_spiral": true, - "cycle_left_right": true, - "cycle_up_down": true, - "cycle_out_in": true, - "dual_beacon": true, - "solid_reactive_simple": true, - "solid_reactive_multiwide": true, - "solid_reactive_multinexus": true, - "solid_splash": true, - "wave_left_right": true, - "wave_up_down": true, - "effect_max": true - }, - "layout": [ - {"matrix":[0, 0], "flags":1, "x":0, "y":0}, - {"matrix":[0, 1], "flags":1, "x":21, "y":0}, - {"matrix":[0, 2], "flags":1, "x":32, "y":0}, - {"matrix":[0, 3], "flags":1, "x":42, "y":0}, - {"matrix":[0, 4], "flags":1, "x":53, "y":0}, - {"matrix":[0, 5], "flags":1, "x":69, "y":0}, - {"matrix":[0, 6], "flags":1, "x":79, "y":0}, - {"matrix":[0, 7], "flags":1, "x":90, "y":0}, - {"matrix":[0, 8], "flags":1, "x":100, "y":0}, - {"matrix":[0, 9], "flags":1, "x":116, "y":0}, - {"matrix":[0, 10], "flags":1, "x":127, "y":0}, - {"matrix":[0, 11], "flags":1, "x":137, "y":0}, - {"matrix":[0, 12], "flags":1, "x":148, "y":0}, - {"matrix":[0, 14], "flags":1, "x":160, "y":0}, - {"matrix":[0, 15], "flags":1, "x":170, "y":0}, - {"matrix":[0, 16], "flags":1, "x":181, "y":0}, - {"matrix":[0, 17], "flags":4, "x":192, "y":0}, - {"matrix":[0, 18], "flags":4, "x":203, "y":0}, - {"matrix":[0, 19], "flags":4, "x":213, "y":0}, - {"matrix":[0, 20], "flags":4, "x":224, "y":0}, - - {"matrix":[1, 0], "flags":1, "x":0, "y":14}, - {"matrix":[1, 1], "flags":8, "x":11, "y":14}, - {"matrix":[1, 2], "flags":8, "x":21, "y":14}, - {"matrix":[1, 3], "flags":8, "x":32, "y":14}, - {"matrix":[1, 4], "flags":4, "x":42, "y":14}, - {"matrix":[1, 5], "flags":4, "x":53, "y":14}, - {"matrix":[1, 6], "flags":4, "x":63, "y":14}, - {"matrix":[1, 7], "flags":4, "x":74, "y":14}, - {"matrix":[1, 8], "flags":4, "x":84, "y":14}, - {"matrix":[1, 9], "flags":4, "x":95, "y":14}, - {"matrix":[1, 10], "flags":4, "x":106, "y":14}, - {"matrix":[1, 11], "flags":4, "x":116, "y":14}, - {"matrix":[1, 12], "flags":4, "x":127, "y":14}, - {"matrix":[1, 13], "flags":1, "x":137, "y":14}, - {"matrix":[0, 13], "flags":1, "x":148, "y":14}, - {"matrix":[1, 14], "flags":1, "x":160, "y":14}, - {"matrix":[1, 15], "flags":1, "x":170, "y":14}, - {"matrix":[1, 16], "flags":1, "x":181, "y":14}, - {"matrix":[1, 17], "flags":8, "x":192, "y":14}, - {"matrix":[1, 18], "flags":4, "x":203, "y":14}, - {"matrix":[1, 19], "flags":4, "x":213, "y":14}, - {"matrix":[1, 20], "flags":4, "x":224, "y":14}, - - {"matrix":[2, 0], "flags":1, "x":3, "y":26}, - {"matrix":[2, 1], "flags":4, "x":16, "y":26}, - {"matrix":[2, 2], "flags":4, "x":26, "y":26}, - {"matrix":[2, 3], "flags":4, "x":37, "y":26}, - {"matrix":[2, 4], "flags":4, "x":48, "y":26}, - {"matrix":[2, 5], "flags":4, "x":58, "y":26}, - {"matrix":[2, 6], "flags":4, "x":69, "y":26}, - {"matrix":[2, 7], "flags":4, "x":79, "y":26}, - {"matrix":[2, 8], "flags":4, "x":90, "y":26}, - {"matrix":[2, 9], "flags":4, "x":100, "y":26}, - {"matrix":[2, 10], "flags":4, "x":111, "y":26}, - {"matrix":[2, 11], "flags":4, "x":121, "y":26}, - {"matrix":[2, 12], "flags":4, "x":132, "y":26}, - {"matrix":[2, 14], "flags":1, "x":160, "y":26}, - {"matrix":[2, 15], "flags":1, "x":170, "y":26}, - {"matrix":[2, 16], "flags":1, "x":181, "y":26}, - {"matrix":[2, 17], "flags":4, "x":192, "y":26}, - {"matrix":[2, 18], "flags":4, "x":203, "y":26}, - {"matrix":[2, 19], "flags":4, "x":213, "y":26}, - {"matrix":[2, 20], "flags":4, "x":224, "y":33}, - - {"matrix":[3, 0], "flags":8, "x":4, "y":39}, - {"matrix":[3, 1], "flags":4, "x":18, "y":39}, - {"matrix":[3, 2], "flags":4, "x":29, "y":39}, - {"matrix":[3, 3], "flags":4, "x":40, "y":39}, - {"matrix":[3, 4], "flags":4, "x":50, "y":39}, - {"matrix":[3, 5], "flags":4, "x":61, "y":39}, - {"matrix":[3, 6], "flags":4, "x":71, "y":39}, - {"matrix":[3, 7], "flags":4, "x":82, "y":39}, - {"matrix":[3, 8], "flags":4, "x":92, "y":39}, - {"matrix":[3, 9], "flags":4, "x":103, "y":39}, - {"matrix":[3, 10], "flags":4, "x":114, "y":39}, - {"matrix":[3, 11], "flags":4, "x":124, "y":39}, - {"matrix":[3, 13], "flags":1, "x":135, "y":39}, - {"matrix":[2, 13], "flags":1, "x":147, "y":33}, - {"matrix":[3, 17], "flags":4, "x":192, "y":39}, - {"matrix":[3, 18], "flags":4, "x":203, "y":39}, - {"matrix":[3, 19], "flags":4, "x":213, "y":39}, - - {"matrix":[4, 0], "flags":1, "x":7, "y":51}, - {"matrix":[4, 2], "flags":4, "x":24, "y":51}, - {"matrix":[4, 3], "flags":4, "x":34, "y":51}, - {"matrix":[4, 4], "flags":4, "x":45, "y":51}, - {"matrix":[4, 5], "flags":4, "x":55, "y":51}, - {"matrix":[4, 6], "flags":4, "x":66, "y":51}, - {"matrix":[4, 7], "flags":4, "x":77, "y":51}, - {"matrix":[4, 8], "flags":4, "x":87, "y":51}, - {"matrix":[4, 9], "flags":4, "x":98, "y":51}, - {"matrix":[4, 10], "flags":4, "x":108, "y":51}, - {"matrix":[4, 11], "flags":4, "x":119, "y":51}, - {"matrix":[4, 12], "flags":1, "x":129, "y":51}, - {"matrix":[4, 13], "flags":1, "x":144, "y":51}, - {"matrix":[4, 15], "flags":1, "x":170, "y":51}, - {"matrix":[4, 17], "flags":4, "x":192, "y":51}, - {"matrix":[4, 18], "flags":4, "x":203, "y":51}, - {"matrix":[4, 19], "flags":4, "x":213, "y":51}, - {"matrix":[4, 20], "flags":4, "x":224, "y":58}, - - {"matrix":[5, 0], "flags":1, "x":1, "y":64}, - {"matrix":[5, 1], "flags":1, "x":13, "y":64}, - {"matrix":[5, 2], "flags":1, "x":25, "y":64}, - {"matrix":[5, 3], "flags":1, "x":37, "y":64}, - {"matrix":[5, 6], "flags":4, "x":69, "y":64}, - {"matrix":[5, 9], "flags":1, "x":100, "y":64}, - {"matrix":[5, 10], "flags":1, "x":112, "y":64}, - {"matrix":[5, 11], "flags":1, "x":124, "y":64}, - {"matrix":[5, 12], "flags":1, "x":135, "y":64}, - {"matrix":[5, 13], "flags":1, "x":147, "y":64}, - {"matrix":[5, 14], "flags":1, "x":160, "y":64}, - {"matrix":[5, 15], "flags":1, "x":170, "y":64}, - {"matrix":[5, 16], "flags":1, "x":181, "y":64}, - {"matrix":[5, 17], "flags":4, "x":198, "y":64}, - {"matrix":[5, 19], "flags":4, "x":213, "y":64} - ] - } -} diff --git a/keyboards/keychron/k5_pro/jis/white/keymaps/default/keymap.c b/keyboards/keychron/k5_pro/jis/white/keymaps/default/keymap.c deleted file mode 100644 index be0f89678b..0000000000 --- a/keyboards/keychron/k5_pro/jis/white/keymaps/default/keymap.c +++ /dev/null @@ -1,60 +0,0 @@ -/* 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 . - */ - -#include QMK_KEYBOARD_H - -enum layers { - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN, -}; - -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_112_jis( - KC_ESC, KC_BRID, KC_BRIU, KC_MCTL, KC_LPAD, BL_DOWN, BL_UP, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_SNAP, KC_SIRI, BL_STEP, KC_F13, KC_F14, KC_F15, KC_F16, - KC_GRV, 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_INT3, KC_BSPC, KC_INS, KC_HOME, KC_PGUP, KC_NUM, KC_PSLS, KC_PAST, KC_PMNS, - 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_DEL, KC_END, KC_PGDN, KC_P7, KC_P8, KC_P9, KC_PPLS, - 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_NUHS, KC_ENT, KC_P4, KC_P5, KC_P6, - KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_INT1, KC_RSFT, KC_UP, KC_P1, KC_P2, KC_P3, KC_PENT, - KC_LCTL, KC_LOPTN, KC_LCMMD, KC_LNG2, KC_SPC, KC_LNG1, KC_RCMMD, KC_ROPTN,MO(MAC_FN), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT, KC_P0, KC_PDOT ), - - [MAC_FN] = LAYOUT_112_jis( - _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, BL_TOGG, _______, _______, _______, _______, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - BL_TOGG, BL_STEP, BL_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, BL_DOWN, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ), - - [WIN_BASE] = LAYOUT_112_jis( - KC_ESC, 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_PSCR, KC_CTANA, BL_STEP, _______, _______, _______, _______, - KC_GRV, 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_INT3, KC_BSPC, KC_INS, KC_HOME, KC_PGUP, KC_NUM, KC_PSLS, KC_PAST, KC_PMNS, - 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_DEL, KC_END, KC_PGDN, KC_P7, KC_P8, KC_P9, KC_PPLS, - 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_NUHS, KC_ENT, KC_P4, KC_P5, KC_P6, - KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_INT1, KC_RSFT, KC_UP, KC_P1, KC_P2, KC_P3, KC_PENT, - KC_LCTL, KC_LWIN, KC_LALT, KC_INT5, KC_SPC, KC_INT4, KC_RALT, KC_RWIN, MO(WIN_FN), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT, KC_P0, KC_PDOT ), - - [WIN_FN] = LAYOUT_112_jis( - _______, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, BL_DOWN, BL_UP, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, BL_TOGG, _______, _______, _______, _______, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - BL_TOGG, BL_STEP, BL_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, BL_DOWN, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ), -}; - diff --git a/keyboards/keychron/k5_pro/jis/white/keymaps/via/keymap.c b/keyboards/keychron/k5_pro/jis/white/keymaps/via/keymap.c deleted file mode 100644 index 5ae184bde2..0000000000 --- a/keyboards/keychron/k5_pro/jis/white/keymaps/via/keymap.c +++ /dev/null @@ -1,59 +0,0 @@ -/* 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 . - */ - -#include QMK_KEYBOARD_H - -enum layers { - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN, -}; - -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_112_jis( - KC_ESC, KC_BRID, KC_BRIU, KC_MICT, KC_LAPA, BL_DOWN, BL_UP, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_SNAP, KC_SIRI, BL_STEP, KC_F13, KC_F14, KC_F15, KC_F16, - KC_GRV, 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_INT3, KC_BSPC, KC_INS, KC_HOME, KC_PGUP, KC_NUM, KC_PSLS, KC_PAST, KC_PMNS, - 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_DEL, KC_END, KC_PGDN, KC_P7, KC_P8, KC_P9, KC_PPLS, - 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_NUHS, KC_ENT, KC_P4, KC_P5, KC_P6, - KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_INT1, KC_RSFT, KC_UP, KC_P1, KC_P2, KC_P3, KC_PENT, - KC_LCTL, KC_LOPTN, KC_LCMMD, KC_LNG2, KC_SPC, KC_LNG1, KC_RCMMD, KC_ROPTN,MO(MAC_FN), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT, KC_P0, KC_PDOT ), - - [MAC_FN] = LAYOUT_112_jis( - _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, BL_TOGG, _______, _______, _______, _______, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - BL_TOGG, BL_STEP, BL_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, BL_DOWN, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ), - - [WIN_BASE] = LAYOUT_112_jis( - KC_ESC, 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_PSCR, KC_CTANA, BL_STEP, _______, _______, _______, _______, - KC_GRV, 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_INT3, KC_BSPC, KC_INS, KC_HOME, KC_PGUP, KC_NUM, KC_PSLS, KC_PAST, KC_PMNS, - 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_DEL, KC_END, KC_PGDN, KC_P7, KC_P8, KC_P9, KC_PPLS, - 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_NUHS, KC_ENT, KC_P4, KC_P5, KC_P6, - KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_INT1, KC_RSFT, KC_UP, KC_P1, KC_P2, KC_P3, KC_PENT, - KC_LCTL, KC_LWIN, KC_LALT, KC_INT5, KC_SPC, KC_INT4, KC_RALT, KC_RWIN, MO(WIN_FN), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT, KC_P0, KC_PDOT ), - - [WIN_FN] = LAYOUT_112_jis( - _______, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, BL_DOWN, BL_UP, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, BL_TOGG, _______, _______, _______, _______, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - BL_TOGG, BL_STEP, BL_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, BL_DOWN, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ), -}; diff --git a/keyboards/keychron/k5_pro/jis/white/keymaps/via/rules.mk b/keyboards/keychron/k5_pro/jis/white/keymaps/via/rules.mk deleted file mode 100644 index 45fa68954c..0000000000 --- a/keyboards/keychron/k5_pro/jis/white/keymaps/via/rules.mk +++ /dev/null @@ -1 +0,0 @@ -VIA_ENABLE = yes diff --git a/keyboards/keychron/k5_pro/jis/white/rules.mk b/keyboards/keychron/k5_pro/jis/white/rules.mk deleted file mode 100644 index 6e7633bfe0..0000000000 --- a/keyboards/keychron/k5_pro/jis/white/rules.mk +++ /dev/null @@ -1 +0,0 @@ -# This file intentionally left blank diff --git a/keyboards/keychron/k5_pro/jis/white/white.c b/keyboards/keychron/k5_pro/jis/white/white.c deleted file mode 100644 index 069092cab2..0000000000 --- a/keyboards/keychron/k5_pro/jis/white/white.c +++ /dev/null @@ -1,144 +0,0 @@ -/* 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 . - */ - -#include "quantum.h" - -// clang-format off -#ifdef LED_MATRIX_ENABLE -const snled27351_led_t g_snled27351_leds[LED_MATRIX_LED_COUNT] = { -/* Refer to snled27351manual for these locations - * driver - * | LED address - * | | */ - {0, F_1}, - {0, F_2}, - {0, F_3}, - {0, F_4}, - {0, F_5}, - {0, F_6}, - {0, F_7}, - {0, F_8}, - {0, F_9}, - {0, F_10}, - {0, F_11}, - {0, F_12}, - {0, F_13}, - {0, F_15}, - {0, F_16}, - {0, F_14}, - {0, H_1}, - {0, H_2}, - {0, H_3}, - {0, H_4}, - - {0, E_1}, - {0, E_2}, - {0, E_3}, - {0, E_4}, - {0, E_5}, - {0, E_6}, - {0, E_7}, - {0, E_8}, - {0, E_9}, - {0, E_10}, - {0, E_11}, - {0, E_12}, - {0, E_13}, - {0, E_14}, - {0, H_10}, - {0, E_15}, - {0, E_16}, - {0, H_5}, - {0, H_6}, - {0, H_7}, - {0, H_8}, - {0, H_9}, - - {0, D_1}, - {0, D_2}, - {0, D_3}, - {0, D_4}, - {0, D_5}, - {0, D_6}, - {0, D_7}, - {0, D_8}, - {0, D_9}, - {0, D_10}, - {0, D_11}, - {0, D_12}, - {0, D_13}, - {0, D_15}, - {0, D_16}, - {0, H_11}, - {0, H_12}, - {0, H_13}, - {0, H_14}, - {0, H_15}, - - {0, C_1}, - {0, C_2}, - {0, C_3}, - {0, C_4}, - {0, C_5}, - {0, C_6}, - {0, C_7}, - {0, C_8}, - {0, C_9}, - {0, C_10}, - {0, C_11}, - {0, C_12}, - {0, C_14}, - {0, D_14}, - {0, G_7}, - {0, G_8}, - {0, G_9}, - - {0, B_1}, - {0, B_3}, - {0, B_4}, - {0, B_5}, - {0, B_6}, - {0, B_7}, - {0, B_8}, - {0, B_9}, - {0, B_10}, - {0, B_11}, - {0, B_12}, - {0, B_13}, - {0, B_14}, - {0, B_16}, - {0, G_10}, - {0, G_11}, - {0, G_12}, - {0, G_13}, - - {0, A_1}, - {0, A_2}, - {0, A_3}, - {0, A_4}, - {0, A_7}, - {0, A_10}, - {0, A_11}, - {0, A_12}, - {0, A_13}, - {0, A_14}, - {0, A_15}, - {0, A_16}, - {0, G_14}, - {0, G_15}, - {0, G_16} -}; -#endif diff --git a/keyboards/keychron/k5_pro/k5_pro.c b/keyboards/keychron/k5_pro/k5_pro.c deleted file mode 100644 index a213c19e61..0000000000 --- a/keyboards/keychron/k5_pro/k5_pro.c +++ /dev/null @@ -1,342 +0,0 @@ -/* 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 . - */ - -#include "k5_pro.h" -#include -#ifdef KC_BLUETOOTH_ENABLE -# include "ckbt51.h" -# include "bluetooth.h" -# include "indicator.h" -# include "transport.h" -# include "battery.h" -# include "bat_level_animation.h" -# include "lpm.h" -#endif - -#ifdef ENABLE_FACTORY_TEST -# include "factory_test.h" -#endif - -#ifdef BAT_LOW_LED_PIN -static uint32_t power_on_indicator_timer_buffer; -# define POWER_ON_LED_DURATION 3000 -#endif - -typedef struct PACKED { - uint8_t len; - uint8_t keycode[3]; -} key_combination_t; - -static uint32_t factory_timer_buffer = 0; -static uint32_t siri_timer_buffer = 0; -static uint8_t mac_keycode[4] = {KC_LOPT, KC_ROPT, KC_LCMD, KC_RCMD}; - -key_combination_t key_comb_list[4] = { - {2, {KC_LWIN, KC_TAB}}, // Task (win) - {2, {KC_LWIN, KC_E}}, // Files (win) - {3, {KC_LSFT, KC_LGUI, KC_4}}, // Snapshot (mac) - {2, {KC_LWIN, KC_C}} // Cortana (win) -}; - -#ifdef KC_BLUETOOTH_ENABLE -bool firstDisconnect = true; -bool bt_factory_reset = false; -static virtual_timer_t pairing_key_timer; -extern uint8_t g_pwm_buffer[DRIVER_COUNT][192]; - -static void pairing_key_timer_cb(void *arg) { - bluetooth_pairing_ex(*(uint8_t *)arg, NULL); -} -#endif - -bool dip_switch_update_kb(uint8_t index, bool active) { - if (index == 0) { -#ifdef INVERT_OS_SWITCH_STATTE - default_layer_set(1UL << (!active ? 0 : 2)); -#else - default_layer_set(1UL << (active ? 0 : 2)); -#endif - } - dip_switch_update_user(index, active); - - return true; -} - -#ifdef KC_BLUETOOTH_ENABLE -bool process_record_kb_bt(uint16_t keycode, keyrecord_t *record) { -#else -bool process_record_kb(uint16_t keycode, keyrecord_t *record) { -#endif - static uint8_t host_idx = 0; - - switch (keycode) { - case KC_MICT: - if (record->event.pressed) { - register_code(KC_MISSION_CONTROL); - } else { - unregister_code(KC_MISSION_CONTROL); - } - return false; // Skip all further processing of this key - case KC_LAPA: - if (record->event.pressed) { - register_code(KC_LAUNCHPAD); - } else { - unregister_code(KC_LAUNCHPAD); - } - return false; // Skip all further processing of this key - case KC_LOPTN: - case KC_ROPTN: - case KC_LCMMD: - case KC_RCMMD: - if (record->event.pressed) { - register_code(mac_keycode[keycode - KC_LOPTN]); - } else { - unregister_code(mac_keycode[keycode - KC_LOPTN]); - } - return false; // Skip all further processing of this key) - case KC_TASK: - case KC_FILE: - case KC_SNAP: - case KC_CTANA: - if (record->event.pressed) { - for (uint8_t i = 0; i < key_comb_list[keycode - KC_TASK].len; i++) - register_code(key_comb_list[keycode - KC_TASK].keycode[i]); - } else { - for (uint8_t i = 0; i < key_comb_list[keycode - KC_TASK].len; i++) - unregister_code(key_comb_list[keycode - KC_TASK].keycode[i]); - } - return false; // Skip all further processing of this key - case KC_SIRI: - if (record->event.pressed && siri_timer_buffer == 0) { - register_code(KC_LGUI); - register_code(KC_SPACE); - siri_timer_buffer = sync_timer_read32() | 1; - } - return false; // Skip all further processing of this key -#ifdef KC_BLUETOOTH_ENABLE - case BT_HST1 ... BT_HST3: - if (get_transport() == TRANSPORT_BLUETOOTH) { - if (record->event.pressed) { - host_idx = keycode - BT_HST1 + 1; - chVTSet(&pairing_key_timer, TIME_MS2I(2000), (vtfunc_t)pairing_key_timer_cb, &host_idx); - bluetooth_connect_ex(host_idx, 0); - } else { - host_idx = 0; - chVTReset(&pairing_key_timer); - } - } - break; - case BAT_LVL: - if (get_transport() == TRANSPORT_BLUETOOTH && !usb_power_connected()) { - bat_level_animiation_start(battery_get_percentage()); - } - break; -#endif - default: -#ifdef FACTORY_RESET_CHECK - FACTORY_RESET_CHECK(keycode, record); -#endif - break; - } - return true; -} - -void keyboard_post_init_kb(void) { - dip_switch_read(true); - -#ifdef KC_BLUETOOTH_ENABLE - /* Currently we don't use this reset pin */ - palSetLineMode(CKBT51_RESET_PIN, PAL_MODE_OUTPUT_PUSHPULL); - palWriteLine(CKBT51_RESET_PIN, PAL_HIGH); - - /* IMPORTANT: DO NOT enable internal pull-up resistor - * as there is an external pull-down resistor. - */ - palSetLineMode(USB_BT_MODE_SELECT_PIN, PAL_MODE_INPUT); - - ckbt51_init(false); - bluetooth_init(); -#endif - - power_on_indicator_timer_buffer = sync_timer_read32() == 0 ? 1 : sync_timer_read32(); -#ifdef KC_BLUETOOTH_ENABLE - writePin(C15, HOST_LED_PIN_ON_STATE); -#endif - writePin(BAT_LOW_LED_PIN, BAT_LOW_LED_PIN_ON_STATE); - writePin(LED_CAPS_LOCK_PIN, LED_PIN_ON_STATE); - - keyboard_post_init_user(); -} - -void matrix_scan_kb(void) { - if (factory_timer_buffer && timer_elapsed32(factory_timer_buffer) > 2000) { - factory_timer_buffer = 0; - if (bt_factory_reset) { - bt_factory_reset = false; - palWriteLine(CKBT51_RESET_PIN, PAL_LOW); - wait_ms(5); - palWriteLine(CKBT51_RESET_PIN, PAL_HIGH); - } - } - - if (power_on_indicator_timer_buffer) { - if (sync_timer_elapsed32(power_on_indicator_timer_buffer) > POWER_ON_LED_DURATION) { - power_on_indicator_timer_buffer = 0; - writePin(C15, !HOST_LED_PIN_ON_STATE); - writePin(BAT_LOW_LED_PIN, !BAT_LOW_LED_PIN_ON_STATE); - if (!host_keyboard_led_state().caps_lock) writePin(LED_CAPS_LOCK_PIN, !LED_PIN_ON_STATE); - } else { - writePin(C15, HOST_LED_PIN_ON_STATE); - writePin(BAT_LOW_LED_PIN, BAT_LOW_LED_PIN_ON_STATE); - writePin(LED_CAPS_LOCK_PIN, LED_PIN_ON_STATE); - } - } - - if (siri_timer_buffer && sync_timer_elapsed32(siri_timer_buffer) > 500) { - siri_timer_buffer = 0; - unregister_code(KC_LGUI); - unregister_code(KC_SPACE); - } - -#ifdef FACTORY_RESET_TASK - FACTORY_RESET_TASK(); -#endif - matrix_scan_user(); -} - -#ifdef KC_BLUETOOTH_ENABLE -static void ckbt51_param_init(void) { - /* Set bluetooth device name */ - ckbt51_set_local_name(PRODUCT); - wait_ms(10); - /* Set bluetooth parameters */ - module_param_t param = {.event_mode = 0x02, - .connected_idle_timeout = 7200, - .pairing_timeout = 180, - .pairing_mode = 0, - .reconnect_timeout = 5, - .report_rate = 90, - .vendor_id_source = 1, - .verndor_id = 0, // Must be 0x3434 - .product_id = PRODUCT_ID}; - ckbt51_set_param(¶m); - wait_ms(10); -} - -void ckbt51_default_ack_handler(uint8_t *data, uint8_t len) { - if (data[1] == 0x45) { - module_param_t param = {.event_mode = 0x02, - .connected_idle_timeout = 7200, - .pairing_timeout = 180, - .pairing_mode = 0, - .reconnect_timeout = 5, - .report_rate = 90, - .vendor_id_source = 1, - .verndor_id = 0, // Must be 0x3434 - .product_id = PRODUCT_ID}; - ckbt51_set_param(¶m); - } -} - -void bluetooth_enter_disconnected_kb(uint8_t host_idx) { - if (bt_factory_reset) { - ckbt51_param_init(); - factory_timer_buffer = timer_read32(); - } - /* CKBT51 bluetooth module boot time is slower, it enters disconnected after boot, - so we place initialization here. */ - if (firstDisconnect && sync_timer_read32() < 1000 && get_transport() == TRANSPORT_BLUETOOTH) { - ckbt51_param_init(); - bluetooth_connect(); - firstDisconnect = false; - } -} - -void bluetooth_pre_task(void) { - static uint8_t mode = 1; - - if (readPin(USB_BT_MODE_SELECT_PIN) != mode) { - if (readPin(USB_BT_MODE_SELECT_PIN) != mode) { - mode = readPin(USB_BT_MODE_SELECT_PIN); - set_transport(mode == 0 ? TRANSPORT_BLUETOOTH : TRANSPORT_USB); - } - } -} -#endif - -void battery_calculte_voltage(uint16_t value) { - uint16_t voltage = ((uint32_t)value) * 2246 / 1000; - -#ifdef LED_MATRIX_ENABLE - if (led_matrix_is_enabled()) { - uint32_t totalBuf = 0; - - for (uint8_t i = 0; i < DRIVER_COUNT; i++) - for (uint8_t j = 0; j < 192; j++) - totalBuf += g_pwm_buffer[i][j]; - /* We assumpt it is linear relationship*/ - voltage += (30 * totalBuf / LED_MATRIX_LED_COUNT / 255); - } -#endif -#ifdef RGB_MATRIX_ENABLE - if (rgb_matrix_is_enabled()) { - uint32_t totalBuf = 0; - - for (uint8_t i = 0; i < DRIVER_COUNT; i++) - for (uint8_t j = 0; j < 192; j++) - totalBuf += g_pwm_buffer[i][j]; - /* We assumpt it is linear relationship*/ - uint32_t compensation = 60 * totalBuf / RGB_MATRIX_LED_COUNT / 255 / 3; - voltage += compensation; - } -#endif - battery_set_voltage(voltage); -} - -bool via_command_kb(uint8_t *data, uint8_t length) { - switch (data[0]) { -#ifdef KC_BLUETOOTH_ENABLE - case 0xAA: - ckbt51_dfu_rx(data, length); - break; -#endif -#ifdef ENABLE_FACTORY_TEST - case 0xAB: - factory_test_rx(data, length); - break; -#endif - default: - return false; - } - - return true; -} - -#if !defined(VIA_ENABLE) -void raw_hid_receive(uint8_t *data, uint8_t length) { - switch (data[0]) { - case RAW_HID_CMD: - via_command_kb(data, length); - break; - } -} -#endif - -void suspend_wakeup_init_kb(void) { - // code will run on keyboard wakeup - clear_keyboard(); - send_keyboard_report(); -} diff --git a/keyboards/keychron/k5_pro/k5_pro.h b/keyboards/keychron/k5_pro/k5_pro.h deleted file mode 100644 index bc6e1effc8..0000000000 --- a/keyboards/keychron/k5_pro/k5_pro.h +++ /dev/null @@ -1,57 +0,0 @@ -/* 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 . - */ - -#pragma once - -#include "quantum.h" -#ifdef VIA_ENABLE -# include "via.h" -#endif - -#define ___ KC_NO -#define KC_MICT QK_KB_0 -#define KC_LAPA QK_KB_1 - -#ifdef VIA_ENABLE -# define USER_START QK_KB_2 -#else -# define USER_START SAFE_RANGE -#endif - -// clang-format off -enum { - KC_LOPTN = USER_START, - KC_ROPTN, - KC_LCMMD, - KC_RCMMD, - KC_TASK, - KC_FILE, - KC_SNAP, - KC_CTANA, - KC_SIRI, -#ifdef KC_BLUETOOTH_ENABLE - BT_HST1, - BT_HST2, - BT_HST3, - BAT_LVL, -#else - BT_HST1 = KC_TRNS, - BT_HST2 = KC_TRNS, - BT_HST3 = KC_TRNS, - BAT_LVL = KC_TRNS, -#endif - NEW_SAFE_RANGE -}; diff --git a/keyboards/keychron/k5_pro/matrix.c b/keyboards/keychron/k5_pro/matrix.c deleted file mode 100644 index 003dd143bc..0000000000 --- a/keyboards/keychron/k5_pro/matrix.c +++ /dev/null @@ -1,190 +0,0 @@ -/* 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 . - */ - -#include "quantum.h" - -#define HC595_STCP B0 -#define HC595_SHCP A1 -#define HC595_DS A7 - -#define DIRECT_COL_NUM 0 - -pin_t row_pins[MATRIX_ROWS] = MATRIX_ROW_PINS; -pin_t col_pins[MATRIX_COLS] = MATRIX_COL_PINS; - -static inline uint8_t readMatrixPin(pin_t pin) { - if (pin != NO_PIN) { - return readPin(pin); - } else { - return 1; - } -} - -static inline void setPinOutput_writeLow(pin_t pin) { - setPinOutput(pin); - writePinLow(pin); -} - -static inline void setPinOutput_writeHigh(pin_t pin) { - setPinOutput(pin); - writePinHigh(pin); -} - -static inline void HC595_delay(uint16_t n) { - while (n-- > 0) { - asm volatile("nop" ::: "memory"); - } -} - -static void HC595_output(uint32_t data) { - uint8_t i; - uint8_t n = 1; - - for (i = 0; i < (MATRIX_COLS - DIRECT_COL_NUM); i++) { - writePinLow(HC595_SHCP); - if (data & 0x1) { - writePinHigh(HC595_DS); - } else { - writePinLow(HC595_DS); - } - HC595_delay(n); - writePinHigh(HC595_SHCP); - HC595_delay(n); - - data = data >> 1; - } - writePinLow(HC595_STCP); - HC595_delay(n); - writePinHigh(HC595_STCP); -} - -static void HC595_output_bit(uint16_t data) { - uint8_t n = 1; - - writePinLow(HC595_SHCP); - if (data & 0x1) { - writePinHigh(HC595_DS); - } else { - writePinLow(HC595_DS); - } - HC595_delay(n); - - writePinHigh(HC595_SHCP); - HC595_delay(n); - - writePinLow(HC595_STCP); - HC595_delay(n); - writePinHigh(HC595_STCP); -} - -static void select_col(uint8_t col) { - if (col < DIRECT_COL_NUM) { - setPinOutput_writeLow(col_pins[col]); - } else { - if (col == DIRECT_COL_NUM) { - HC595_output_bit(0x00); - } - } -} - -static void unselect_col(uint8_t col) { - if (col < DIRECT_COL_NUM) { -#ifdef MATRIX_UNSELECT_DRIVE_HIGH - setPinOutput_writeHigh(col_pins[col]); -#else - setPinInputHigh(col_pins[col]); -#endif - } else { - HC595_output_bit(0x01); - } -} - -static void unselect_cols(void) { - for (uint8_t x = 0; x < MATRIX_COLS; x++) { - if (x < DIRECT_COL_NUM) { -#ifdef MATRIX_UNSELECT_DRIVE_HIGH - setPinOutput_writeHigh(col_pins[x]); -#else - setPinInputHigh(col_pins[x]); -#endif - } else { - if (x == DIRECT_COL_NUM) HC595_output(0xFFFFFFFF); - break; - } - } -} - -void select_all_cols(void) { - for (uint8_t x = 0; x < MATRIX_COLS; x++) { - if (x < DIRECT_COL_NUM) { - setPinOutput_writeLow(col_pins[x]); - } else { - if (x == DIRECT_COL_NUM) HC595_output(0x00000000); - break; - } - } -} - -static void matrix_read_rows_on_col(matrix_row_t current_matrix[], uint8_t current_col, matrix_row_t row_shifter) { - // Select col - select_col(current_col); - HC595_delay(200); - - // For each row... - for (uint8_t row_index = 0; row_index < MATRIX_ROWS; row_index++) { - // Check row pin state - if (readMatrixPin(row_pins[row_index]) == 0) { - // Pin LO, set col bit - current_matrix[row_index] |= row_shifter; - } else { - // Pin HI, clear col bit - current_matrix[row_index] &= ~row_shifter; - } - } - - // Unselect col - unselect_col(current_col); - HC595_delay(200); // wait for all Row signals to go HIGH -} - -void matrix_init_custom(void) { - setPinOutput(HC595_DS); - setPinOutput(HC595_STCP); - setPinOutput(HC595_SHCP); - - for (uint8_t x = 0; x < MATRIX_ROWS; x++) { - if (row_pins[x] != NO_PIN) { - setPinInputHigh(row_pins[x]); - } - } - - unselect_cols(); -} - -bool matrix_scan_custom(matrix_row_t current_matrix[]) { - matrix_row_t curr_matrix[MATRIX_ROWS] = {0}; - - // Set col, read rows - matrix_row_t row_shifter = MATRIX_ROW_SHIFTER; - for (uint8_t current_col = 0; current_col < MATRIX_COLS; current_col++, row_shifter <<= 1) { - matrix_read_rows_on_col(curr_matrix, current_col, row_shifter); - } - - bool changed = memcmp(current_matrix, curr_matrix, sizeof(curr_matrix)) != 0; - if (changed) memcpy(current_matrix, curr_matrix, sizeof(curr_matrix)); - - return changed; -} diff --git a/keyboards/keychron/k5_pro/mcuconf.h b/keyboards/keychron/k5_pro/mcuconf.h deleted file mode 100644 index 4dae767a44..0000000000 --- a/keyboards/keychron/k5_pro/mcuconf.h +++ /dev/null @@ -1,36 +0,0 @@ -/* 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 - -/* Set HCLK to 48 MHz as tradeoff of USB lowest clockand and - * lower power comsumption for bluetooth. Will use dynamic - * clock when STM32L4 is supported in ChibiOS */ -#undef STM32_PLLM_VALUE -#define STM32_PLLM_VALUE 2 - -#undef STM32_PLLN_VALUE -#define STM32_PLLN_VALUE 12 - -#undef STM32_I2C_USE_I2C1 -#define STM32_I2C_USE_I2C1 TRUE - -#ifdef KC_BLUETOOTH_ENABLE -# undef STM32_SERIAL_USE_USART2 -# define STM32_SERIAL_USE_USART2 TRUE -#endif diff --git a/keyboards/keychron/k5_pro/readme.md b/keyboards/keychron/k5_pro/readme.md deleted file mode 100644 index 249d88f1ce..0000000000 --- a/keyboards/keychron/k5_pro/readme.md +++ /dev/null @@ -1,31 +0,0 @@ -# Keychron K5 Pro - -![Keychron K5 Pro](https://github.com/Keychron/ProductImage/blob/main/K_Pro/K5_Pro.JPG?raw=true) - -A customizable 100% keyboard. - -* Keyboard Maintainer: [Keychron](https://github.com/keychron) -* Hardware Supported: Keychron K5 Pro -* Hardware Availability: [Keychron K5 Pro QMK/VIA Wireless Custom Mechanical Keyboard](https://www.keychron.com/products/keychron-k5-pro-qmk-via-wireless-custom-mechanical-keyboard) - -Make example for this keyboard (after setting up your build environment): - - make keychron/k5_pro/ansi/rgb:default - make keychron/k5_pro/ansi/white:default - make keychron/k5_pro/iso/rgb:default - make keychron/k5_pro/iso/white:default - make keychron/k5_pro/jis/rgb:default - make keychron/k5_pro/jis/white:default - -Flashing example for this keyboard: - - make keychron/k5_pro/ansi/rgb:default:flash - make keychron/k5_pro/ansi/white:default:flash - make keychron/k5_pro/iso/rgb:default:flash - make keychron/k5_pro/iso/white:default:flash - make keychron/k5_pro/jis/rgb:default:flash - make keychron/k5_pro/jis/white:default:flash - -**Reset Key**: Connect the USB cable, toggle mode switch to "Off", hold down the *Esc* key or reset button underneath space bar, then toggle then switch to "Cable". - -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). diff --git a/keyboards/keychron/k5_pro/rules.mk b/keyboards/keychron/k5_pro/rules.mk deleted file mode 100644 index 1f9fc1ab58..0000000000 --- a/keyboards/keychron/k5_pro/rules.mk +++ /dev/null @@ -1,7 +0,0 @@ -# Enter lower-power sleep mode when on the ChibiOS idle thread -OPT_DEFS += -DCORTEX_ENABLE_WFI_IDLE=TRUE -OPT_DEFS += -DNO_USB_STARTUP_CHECK -DENABLE_FACTORY_TEST - -SRC += matrix.c - -include keyboards/keychron/bluetooth/bluetooth.mk diff --git a/keyboards/keychron/k5_pro/via_json/k5_pro_ansi_rgb.json b/keyboards/keychron/k5_pro/via_json/k5_pro_ansi_rgb.json deleted file mode 100644 index cc87d2f736..0000000000 --- a/keyboards/keychron/k5_pro/via_json/k5_pro_ansi_rgb.json +++ /dev/null @@ -1,342 +0,0 @@ -{ - "name": "Keychron K5 Pro ANSI RGB", - "vendorId": "0x3434", - "productId": "0x0250", - "keycodes": ["qmk_lighting"], - "menus": [ - { - "label": "Lighting", - "content": [ - { - "label": "Backlight", - "content": [ - { - "label": "Brightness", - "type": "range", - "options": [0, 255], - "content": ["id_qmk_rgb_matrix_brightness", 3, 1] - }, - { - "label": "Effect", - "type": "dropdown", - "content": ["id_qmk_rgb_matrix_effect", 3, 2], - "options": [ - ["None", 0], - ["Solid Color", 1], - ["Breathing", 2], - ["Band Spiral Val", 3], - ["Cycle All", 4], - ["Cycle Left Right", 5], - ["Cycle Up Down", 6], - ["Rainbow Moving Chevron", 7], - ["Cycle Out In", 8], - ["Cycle Out In Dual", 9], - ["Cycle Pinwheel", 10], - ["Cycle Spiral", 11], - ["Dual Beacon", 12], - ["Rainbow Beacon", 13], - ["Jellybean Raindrops", 14], - ["Pixel Rain", 15], - ["Typing Heatmap", 16], - ["Digital Rain", 17], - ["Reactive Simple", 18], - ["Reactive Multiwide", 19], - ["Reactive Multinexus", 20], - ["Splash", 21], - ["Solid Splash", 22] - ] - }, - { - "showIf": "{id_qmk_rgb_matrix_effect} > 1", - "label": "Effect Speed", - "type": "range", - "options": [0, 255], - "content": ["id_qmk_rgb_matrix_effect_speed", 3, 3] - }, - { - "showIf": "{id_qmk_rgb_matrix_effect} != 0 && ( {id_qmk_rgb_matrix_effect} < 4 || {id_qmk_rgb_matrix_effect} == 18 || ({id_qmk_rgb_matrix_effect} > 17 && {id_qmk_rgb_matrix_effect} != 21) ) ", - "label": "Color", - "type": "color", - "content": ["id_qmk_rgb_matrix_color", 3, 4] - } - ] - } - ] - } - ], - "customKeycodes": [ - {"name": "Left Option", "title": "Left Option", "shortName": "LOpt"}, - {"name": "Right Option", "title": "Right Option", "shortName": "ROpt"}, - {"name": "Left Cmd", "title": "Left Command", "shortName": "LCmd"}, - {"name": "Right Cmd", "title": "Right Command", "shortName": "RCmd"}, - {"name": "Task View", "title": "Task View in Windows", "shortName": "Task"}, - {"name": "File Explorer", "title": "File Explorer in Windows", "shortName": "File"}, - {"name": "Screen shot", "title": "Screenshot in macOS", "shortName": "SShot"}, - {"name": "Cortana", "title": "Cortana in Windows", "shortName": "Cortana"}, - {"name": "Siri", "title": "Siri in macOS", "shortName": "Siri"}, - {"name": "Bluetooth Host 1", "title": "Bluetooth Host 1", "shortName": "BTH1"}, - {"name": "Bluetooth Host 2", "title": "Bluetooth Host 2", "shortName": "BTH2"}, - {"name": "Bluetooth Host 3", "title": "Bluetooth Host 3", "shortName": "BTH3"}, - {"name": "Battery Level", "title": "Show battery level", "shortName": "Batt"} - ], - "matrix": {"rows": 6, "cols": 21}, - "layouts": { - "keymap": [ - [ - { - "c": "#777777" - }, - "0,0", - { - "x": 1, - "c": "#cccccc" - }, - "0,1", - "0,2", - "0,3", - "0,4", - { - "x": 0.5, - "c": "#aaaaaa" - }, - "0,5", - "0,6", - "0,7", - "0,8", - { - "x": 0.5, - "c": "#cccccc" - }, - "0,9", - "0,10", - "0,11", - "0,12", - { - "x": 0.25, - "c": "#aaaaaa" - }, - "0,14", - "0,15", - "0,16", - { - "x": 0.25, - "c": "#cccccc" - }, - "0,17", - "0,18", - "0,19", - "0,20" - ], - [ - { - "y": 0.25, - "c": "#aaaaaa" - }, - "1,0", - { - "c": "#cccccc" - }, - "1,1", - "1,2", - "1,3", - "1,4", - "1,5", - "1,6", - "1,7", - "1,8", - "1,9", - "1,10", - "1,11", - "1,12", - { - "c": "#aaaaaa", - "w": 2 - }, - "1,13", - { - "x": 0.25 - }, - "1,14", - "1,15", - "1,16", - { - "x": 0.25, - "c": "#cccccc" - }, - "1,17", - "1,18", - "1,19", - "1,20" - ], - [ - { - "c": "#aaaaaa", - "w": 1.5 - }, - "2,0", - { - "c": "#cccccc" - }, - "2,1", - "2,2", - "2,3", - "2,4", - "2,5", - "2,6", - "2,7", - "2,8", - "2,9", - "2,10", - "2,11", - "2,12", - { - "c": "#aaaaaa", - "w": 1.5 - }, - "2,13", - { - "x": 0.25 - }, - "2,14", - "2,15", - "2,16", - { - "x": 0.25, - "c": "#cccccc" - }, - "2,17", - "2,18", - "2,19", - { - "h": 2 - }, - "2,20" - ], - [ - { - "c": "#aaaaaa", - "w": 1.75 - }, - "3,0", - { - "c": "#cccccc" - }, - "3,1", - "3,2", - "3,3", - "3,4", - "3,5", - "3,6", - "3,7", - "3,8", - "3,9", - "3,10", - "3,11", - { - "c": "#777777", - "w": 2.25 - }, - "3,13", - { - "x": 3.5, - "c": "#cccccc" - }, - "3,17", - "3,18", - "3,19" - ], - [ - { - "c": "#aaaaaa", - "w": 2.25 - }, - "4,0", - { - "c": "#cccccc" - }, - "4,2", - "4,3", - "4,4", - "4,5", - "4,6", - "4,7", - "4,8", - "4,9", - "4,10", - "4,11", - { - "c": "#aaaaaa", - "w": 2.75 - }, - "4,13", - { - "x": 1.25, - "c": "#777777" - }, - "4,15", - { - "x": 1.25, - "c": "#cccccc" - }, - "4,17", - "4,18", - "4,19", - { - "h": 2 - }, - "4,20" - ], - [ - { - "c": "#aaaaaa", - "w": 1.25 - }, - "5,0", - { - "w": 1.25 - }, - "5,1", - { - "w": 1.25 - }, - "5,2", - { - "c": "#cccccc", - "w": 6.25 - }, - "5,6", - { - "c": "#aaaaaa", - "w": 1.25 - }, - "5,10", - { - "w": 1.25 - }, - "5,11", - { - "w": 1.25 - }, - "5,12", - { - "w": 1.25 - }, - "5,13", - { - "x": 0.25, - "c": "#777777" - }, - "5,14", - "5,15", - "5,16", - { - "x": 0.25, - "c": "#cccccc", - "w": 2 - }, - "5,17", - "5,19" - ] - ] - } -} diff --git a/keyboards/keychron/k5_pro/via_json/k5_pro_ansi_rgb_v1.00.json b/keyboards/keychron/k5_pro/via_json/k5_pro_ansi_rgb_v1.00.json deleted file mode 100644 index 67be2b79eb..0000000000 --- a/keyboards/keychron/k5_pro/via_json/k5_pro_ansi_rgb_v1.00.json +++ /dev/null @@ -1,342 +0,0 @@ -{ - "name": "Keychron K5 Pro", - "vendorId": "0x3434", - "productId": "0x0250", - "keycodes": ["qmk_lighting"], - "menus": [ - { - "label": "Lighting", - "content": [ - { - "label": "Backlight", - "content": [ - { - "label": "Brightness", - "type": "range", - "options": [0, 255], - "content": ["id_qmk_rgb_matrix_brightness", 3, 1] - }, - { - "label": "Effect", - "type": "dropdown", - "content": ["id_qmk_rgb_matrix_effect", 3, 2], - "options": [ - ["None", 0], - ["Solid Color", 1], - ["Breathing", 2], - ["Band Spiral Val", 3], - ["Cycle All", 4], - ["Cycle Left Right", 5], - ["Cycle Up Down", 6], - ["Rainbow Moving Chevron", 7], - ["Cycle Out In", 8], - ["Cycle Out In Dual", 9], - ["Cycle Pinwheel", 10], - ["Cycle Spiral", 11], - ["Dual Beacon", 12], - ["Rainbow Beacon", 13], - ["Jellybean Raindrops", 14], - ["Pixel Rain", 15], - ["Typing Heatmap", 16], - ["Digital Rain", 17], - ["Reactive Simple", 18], - ["Reactive Multiwide", 19], - ["Reactive Multinexus", 20], - ["Splash", 21], - ["Solid Splash", 22] - ] - }, - { - "showIf": "{id_qmk_rgb_matrix_effect} > 1", - "label": "Effect Speed", - "type": "range", - "options": [0, 255], - "content": ["id_qmk_rgb_matrix_effect_speed", 3, 3] - }, - { - "showIf": "{id_qmk_rgb_matrix_effect} != 0 && ( {id_qmk_rgb_matrix_effect} < 4 || {id_qmk_rgb_matrix_effect} == 18 || ({id_qmk_rgb_matrix_effect} > 17 && {id_qmk_rgb_matrix_effect} != 21) ) ", - "label": "Color", - "type": "color", - "content": ["id_qmk_rgb_matrix_color", 3, 4] - } - ] - } - ] - } - ], - "customKeycodes": [ - {"name": "Left Option", "title": "Left Option", "shortName": "LOpt"}, - {"name": "Right Option", "title": "Right Option", "shortName": "ROpt"}, - {"name": "Left Cmd", "title": "Left Command", "shortName": "LCmd"}, - {"name": "Right Cmd", "title": "Right Command", "shortName": "RCmd"}, - {"name": "Task View", "title": "Task View in Windows", "shortName": "Task"}, - {"name": "File Explorer", "title": "File Explorer in Windows", "shortName": "File"}, - {"name": "Screen shot", "title": "Screenshot in macOS", "shortName": "SShot"}, - {"name": "Cortana", "title": "Cortana in Windows", "shortName": "Cortana"}, - {"name": "Siri", "title": "Siri in macOS", "shortName": "Siri"}, - {"name": "Bluetooth Host 1", "title": "Bluetooth Host 1", "shortName": "BTH1"}, - {"name": "Bluetooth Host 2", "title": "Bluetooth Host 2", "shortName": "BTH2"}, - {"name": "Bluetooth Host 3", "title": "Bluetooth Host 3", "shortName": "BTH3"}, - {"name": "Battery Level", "title": "Show battery level", "shortName": "Batt"} - ], - "matrix": {"rows": 6, "cols": 21}, - "layouts": { - "keymap": [ - [ - { - "c": "#777777" - }, - "0,0", - { - "x": 1, - "c": "#cccccc" - }, - "0,1", - "0,2", - "0,3", - "0,4", - { - "x": 0.5, - "c": "#aaaaaa" - }, - "0,5", - "0,6", - "0,7", - "0,8", - { - "x": 0.5, - "c": "#cccccc" - }, - "0,9", - "0,10", - "0,11", - "0,12", - { - "x": 0.25, - "c": "#aaaaaa" - }, - "0,14", - "0,15", - "0,16", - { - "x": 0.25, - "c": "#cccccc" - }, - "0,17", - "0,18", - "0,19", - "0,20" - ], - [ - { - "y": 0.25, - "c": "#aaaaaa" - }, - "1,0", - { - "c": "#cccccc" - }, - "1,1", - "1,2", - "1,3", - "1,4", - "1,5", - "1,6", - "1,7", - "1,8", - "1,9", - "1,10", - "1,11", - "1,12", - { - "c": "#aaaaaa", - "w": 2 - }, - "1,13", - { - "x": 0.25 - }, - "1,14", - "1,15", - "1,16", - { - "x": 0.25, - "c": "#cccccc" - }, - "1,17", - "1,18", - "1,19", - "1,20" - ], - [ - { - "c": "#aaaaaa", - "w": 1.5 - }, - "2,0", - { - "c": "#cccccc" - }, - "2,1", - "2,2", - "2,3", - "2,4", - "2,5", - "2,6", - "2,7", - "2,8", - "2,9", - "2,10", - "2,11", - "2,12", - { - "c": "#aaaaaa", - "w": 1.5 - }, - "2,13", - { - "x": 0.25 - }, - "2,14", - "2,15", - "2,16", - { - "x": 0.25, - "c": "#cccccc" - }, - "2,17", - "2,18", - "2,19", - { - "h": 2 - }, - "2,20" - ], - [ - { - "c": "#aaaaaa", - "w": 1.75 - }, - "3,0", - { - "c": "#cccccc" - }, - "3,1", - "3,2", - "3,3", - "3,4", - "3,5", - "3,6", - "3,7", - "3,8", - "3,9", - "3,10", - "3,11", - { - "c": "#777777", - "w": 2.25 - }, - "3,13", - { - "x": 3.5, - "c": "#cccccc" - }, - "3,17", - "3,18", - "3,19" - ], - [ - { - "c": "#aaaaaa", - "w": 2.25 - }, - "4,0", - { - "c": "#cccccc" - }, - "4,2", - "4,3", - "4,4", - "4,5", - "4,6", - "4,7", - "4,8", - "4,9", - "4,10", - "4,11", - { - "c": "#aaaaaa", - "w": 2.75 - }, - "4,13", - { - "x": 1.25, - "c": "#777777" - }, - "4,15", - { - "x": 1.25, - "c": "#cccccc" - }, - "4,17", - "4,18", - "4,19", - { - "h": 2 - }, - "4,20" - ], - [ - { - "c": "#aaaaaa", - "w": 1.25 - }, - "5,0", - { - "w": 1.25 - }, - "5,1", - { - "w": 1.25 - }, - "5,2", - { - "c": "#cccccc", - "w": 6.25 - }, - "5,6", - { - "c": "#aaaaaa", - "w": 1.25 - }, - "5,10", - { - "w": 1.25 - }, - "5,11", - { - "w": 1.25 - }, - "5,12", - { - "w": 1.25 - }, - "5,13", - { - "x": 0.25, - "c": "#777777" - }, - "5,14", - "5,15", - "5,16", - { - "x": 0.25, - "c": "#cccccc", - "w": 2 - }, - "5,17", - "5,19" - ] - ] - } -} diff --git a/keyboards/keychron/k5_pro/via_json/k5_pro_ansi_white.json b/keyboards/keychron/k5_pro/via_json/k5_pro_ansi_white.json deleted file mode 100644 index f620507b26..0000000000 --- a/keyboards/keychron/k5_pro/via_json/k5_pro_ansi_white.json +++ /dev/null @@ -1,281 +0,0 @@ -{ - "name": "Keychron K5 Pro ANSI White", - "vendorId": "0x3434", - "productId": "0x0253", - "keycodes": ["qmk_lighting"], - "customKeycodes": [ - {"name": "Left Option", "title": "Left Option", "shortName": "LOpt"}, - {"name": "Right Option", "title": "Right Option", "shortName": "ROpt"}, - {"name": "Left Cmd", "title": "Left Command", "shortName": "LCmd"}, - {"name": "Right Cmd", "title": "Right Command", "shortName": "RCmd"}, - {"name": "Task View", "title": "Task View in Windows", "shortName": "Task"}, - {"name": "File Explorer", "title": "File Explorer in Windows", "shortName": "File"}, - {"name": "Screen shot", "title": "Screenshot in macOS", "shortName": "SShot"}, - {"name": "Cortana", "title": "Cortana in Windows", "shortName": "Cortana"}, - {"name": "Siri", "title": "Siri in macOS", "shortName": "Siri"}, - {"name": "Bluetooth Host 1", "title": "Bluetooth Host 1", "shortName": "BTH1"}, - {"name": "Bluetooth Host 2", "title": "Bluetooth Host 2", "shortName": "BTH2"}, - {"name": "Bluetooth Host 3", "title": "Bluetooth Host 3", "shortName": "BTH3"}, - {"name": "Battery Level", "title": "Show battery level", "shortName": "Batt"} - ], - "matrix": {"rows": 6, "cols": 21}, - "layouts": { - "keymap": [ - [ - { - "c": "#777777" - }, - "0,0", - { - "x": 1, - "c": "#cccccc" - }, - "0,1", - "0,2", - "0,3", - "0,4", - { - "x": 0.5, - "c": "#aaaaaa" - }, - "0,5", - "0,6", - "0,7", - "0,8", - { - "x": 0.5, - "c": "#cccccc" - }, - "0,9", - "0,10", - "0,11", - "0,12", - { - "x": 0.25, - "c": "#aaaaaa" - }, - "0,14", - "0,15", - "0,16", - { - "x": 0.25, - "c": "#cccccc" - }, - "0,17", - "0,18", - "0,19", - "0,20" - ], - [ - { - "y": 0.25, - "c": "#aaaaaa" - }, - "1,0", - { - "c": "#cccccc" - }, - "1,1", - "1,2", - "1,3", - "1,4", - "1,5", - "1,6", - "1,7", - "1,8", - "1,9", - "1,10", - "1,11", - "1,12", - { - "c": "#aaaaaa", - "w": 2 - }, - "1,13", - { - "x": 0.25 - }, - "1,14", - "1,15", - "1,16", - { - "x": 0.25, - "c": "#cccccc" - }, - "1,17", - "1,18", - "1,19", - "1,20" - ], - [ - { - "c": "#aaaaaa", - "w": 1.5 - }, - "2,0", - { - "c": "#cccccc" - }, - "2,1", - "2,2", - "2,3", - "2,4", - "2,5", - "2,6", - "2,7", - "2,8", - "2,9", - "2,10", - "2,11", - "2,12", - { - "c": "#aaaaaa", - "w": 1.5 - }, - "2,13", - { - "x": 0.25 - }, - "2,14", - "2,15", - "2,16", - { - "x": 0.25, - "c": "#cccccc" - }, - "2,17", - "2,18", - "2,19", - { - "h": 2 - }, - "2,20" - ], - [ - { - "c": "#aaaaaa", - "w": 1.75 - }, - "3,0", - { - "c": "#cccccc" - }, - "3,1", - "3,2", - "3,3", - "3,4", - "3,5", - "3,6", - "3,7", - "3,8", - "3,9", - "3,10", - "3,11", - { - "c": "#777777", - "w": 2.25 - }, - "3,13", - { - "x": 3.5, - "c": "#cccccc" - }, - "3,17", - "3,18", - "3,19" - ], - [ - { - "c": "#aaaaaa", - "w": 2.25 - }, - "4,0", - { - "c": "#cccccc" - }, - "4,2", - "4,3", - "4,4", - "4,5", - "4,6", - "4,7", - "4,8", - "4,9", - "4,10", - "4,11", - { - "c": "#aaaaaa", - "w": 2.75 - }, - "4,13", - { - "x": 1.25, - "c": "#777777" - }, - "4,15", - { - "x": 1.25, - "c": "#cccccc" - }, - "4,17", - "4,18", - "4,19", - { - "h": 2 - }, - "4,20" - ], - [ - { - "c": "#aaaaaa", - "w": 1.25 - }, - "5,0", - { - "w": 1.25 - }, - "5,1", - { - "w": 1.25 - }, - "5,2", - { - "c": "#cccccc", - "w": 6.25 - }, - "5,6", - { - "c": "#aaaaaa", - "w": 1.25 - }, - "5,10", - { - "w": 1.25 - }, - "5,11", - { - "w": 1.25 - }, - "5,12", - { - "w": 1.25 - }, - "5,13", - { - "x": 0.25, - "c": "#777777" - }, - "5,14", - "5,15", - "5,16", - { - "x": 0.25, - "c": "#cccccc", - "w": 2 - }, - "5,17", - "5,19" - ] - ] - } -} diff --git a/keyboards/keychron/k5_pro/via_json/k5_pro_ansi_white_v1.00.json b/keyboards/keychron/k5_pro/via_json/k5_pro_ansi_white_v1.00.json deleted file mode 100644 index a6bef8e08e..0000000000 --- a/keyboards/keychron/k5_pro/via_json/k5_pro_ansi_white_v1.00.json +++ /dev/null @@ -1,281 +0,0 @@ -{ - "name": "Keychron K5 Pro", - "vendorId": "0x3434", - "productId": "0x0253", - "keycodes": ["qmk_lighting"], - "customKeycodes": [ - {"name": "Left Option", "title": "Left Option", "shortName": "LOpt"}, - {"name": "Right Option", "title": "Right Option", "shortName": "ROpt"}, - {"name": "Left Cmd", "title": "Left Command", "shortName": "LCmd"}, - {"name": "Right Cmd", "title": "Right Command", "shortName": "RCmd"}, - {"name": "Task View", "title": "Task View in Windows", "shortName": "Task"}, - {"name": "File Explorer", "title": "File Explorer in Windows", "shortName": "File"}, - {"name": "Screen shot", "title": "Screenshot in macOS", "shortName": "SShot"}, - {"name": "Cortana", "title": "Cortana in Windows", "shortName": "Cortana"}, - {"name": "Siri", "title": "Siri in macOS", "shortName": "Siri"}, - {"name": "Bluetooth Host 1", "title": "Bluetooth Host 1", "shortName": "BTH1"}, - {"name": "Bluetooth Host 2", "title": "Bluetooth Host 2", "shortName": "BTH2"}, - {"name": "Bluetooth Host 3", "title": "Bluetooth Host 3", "shortName": "BTH3"}, - {"name": "Battery Level", "title": "Show battery level", "shortName": "Batt"} - ], - "matrix": {"rows": 6, "cols": 21}, - "layouts": { - "keymap": [ - [ - { - "c": "#777777" - }, - "0,0", - { - "x": 1, - "c": "#cccccc" - }, - "0,1", - "0,2", - "0,3", - "0,4", - { - "x": 0.5, - "c": "#aaaaaa" - }, - "0,5", - "0,6", - "0,7", - "0,8", - { - "x": 0.5, - "c": "#cccccc" - }, - "0,9", - "0,10", - "0,11", - "0,12", - { - "x": 0.25, - "c": "#aaaaaa" - }, - "0,14", - "0,15", - "0,16", - { - "x": 0.25, - "c": "#cccccc" - }, - "0,17", - "0,18", - "0,19", - "0,20" - ], - [ - { - "y": 0.25, - "c": "#aaaaaa" - }, - "1,0", - { - "c": "#cccccc" - }, - "1,1", - "1,2", - "1,3", - "1,4", - "1,5", - "1,6", - "1,7", - "1,8", - "1,9", - "1,10", - "1,11", - "1,12", - { - "c": "#aaaaaa", - "w": 2 - }, - "1,13", - { - "x": 0.25 - }, - "1,14", - "1,15", - "1,16", - { - "x": 0.25, - "c": "#cccccc" - }, - "1,17", - "1,18", - "1,19", - "1,20" - ], - [ - { - "c": "#aaaaaa", - "w": 1.5 - }, - "2,0", - { - "c": "#cccccc" - }, - "2,1", - "2,2", - "2,3", - "2,4", - "2,5", - "2,6", - "2,7", - "2,8", - "2,9", - "2,10", - "2,11", - "2,12", - { - "c": "#aaaaaa", - "w": 1.5 - }, - "2,13", - { - "x": 0.25 - }, - "2,14", - "2,15", - "2,16", - { - "x": 0.25, - "c": "#cccccc" - }, - "2,17", - "2,18", - "2,19", - { - "h": 2 - }, - "2,20" - ], - [ - { - "c": "#aaaaaa", - "w": 1.75 - }, - "3,0", - { - "c": "#cccccc" - }, - "3,1", - "3,2", - "3,3", - "3,4", - "3,5", - "3,6", - "3,7", - "3,8", - "3,9", - "3,10", - "3,11", - { - "c": "#777777", - "w": 2.25 - }, - "3,13", - { - "x": 3.5, - "c": "#cccccc" - }, - "3,17", - "3,18", - "3,19" - ], - [ - { - "c": "#aaaaaa", - "w": 2.25 - }, - "4,0", - { - "c": "#cccccc" - }, - "4,2", - "4,3", - "4,4", - "4,5", - "4,6", - "4,7", - "4,8", - "4,9", - "4,10", - "4,11", - { - "c": "#aaaaaa", - "w": 2.75 - }, - "4,13", - { - "x": 1.25, - "c": "#777777" - }, - "4,15", - { - "x": 1.25, - "c": "#cccccc" - }, - "4,17", - "4,18", - "4,19", - { - "h": 2 - }, - "4,20" - ], - [ - { - "c": "#aaaaaa", - "w": 1.25 - }, - "5,0", - { - "w": 1.25 - }, - "5,1", - { - "w": 1.25 - }, - "5,2", - { - "c": "#cccccc", - "w": 6.25 - }, - "5,6", - { - "c": "#aaaaaa", - "w": 1.25 - }, - "5,10", - { - "w": 1.25 - }, - "5,11", - { - "w": 1.25 - }, - "5,12", - { - "w": 1.25 - }, - "5,13", - { - "x": 0.25, - "c": "#777777" - }, - "5,14", - "5,15", - "5,16", - { - "x": 0.25, - "c": "#cccccc", - "w": 2 - }, - "5,17", - "5,19" - ] - ] - } -} diff --git a/keyboards/keychron/k5_pro/via_json/k5_pro_iso_rgb.json b/keyboards/keychron/k5_pro/via_json/k5_pro_iso_rgb.json deleted file mode 100644 index b1bce049f4..0000000000 --- a/keyboards/keychron/k5_pro/via_json/k5_pro_iso_rgb.json +++ /dev/null @@ -1,348 +0,0 @@ -{ - "name": "Keychron K5 Pro ISO RGB", - "vendorId": "0x3434", - "productId": "0x0251", - "keycodes": ["qmk_lighting"], - "menus": [ - { - "label": "Lighting", - "content": [ - { - "label": "Backlight", - "content": [ - { - "label": "Brightness", - "type": "range", - "options": [0, 255], - "content": ["id_qmk_rgb_matrix_brightness", 3, 1] - }, - { - "label": "Effect", - "type": "dropdown", - "content": ["id_qmk_rgb_matrix_effect", 3, 2], - "options": [ - ["None", 0], - ["Solid Color", 1], - ["Breathing", 2], - ["Band Spiral Val", 3], - ["Cycle All", 4], - ["Cycle Left Right", 5], - ["Cycle Up Down", 6], - ["Rainbow Moving Chevron", 7], - ["Cycle Out In", 8], - ["Cycle Out In Dual", 9], - ["Cycle Pinwheel", 10], - ["Cycle Spiral", 11], - ["Dual Beacon", 12], - ["Rainbow Beacon", 13], - ["Jellybean Raindrops", 14], - ["Pixel Rain", 15], - ["Typing Heatmap", 16], - ["Digital Rain", 17], - ["Reactive Simple", 18], - ["Reactive Multiwide", 19], - ["Reactive Multinexus", 20], - ["Splash", 21], - ["Solid Splash", 22] - ] - }, - { - "showIf": "{id_qmk_rgb_matrix_effect} > 1", - "label": "Effect Speed", - "type": "range", - "options": [0, 255], - "content": ["id_qmk_rgb_matrix_effect_speed", 3, 3] - }, - { - "showIf": "{id_qmk_rgb_matrix_effect} != 0 && ( {id_qmk_rgb_matrix_effect} < 4 || {id_qmk_rgb_matrix_effect} == 18 || ({id_qmk_rgb_matrix_effect} > 17 && {id_qmk_rgb_matrix_effect} != 21) ) ", - "label": "Color", - "type": "color", - "content": ["id_qmk_rgb_matrix_color", 3, 4] - } - ] - } - ] - } - ], - "customKeycodes": [ - {"name": "Left Option", "title": "Left Option", "shortName": "LOpt"}, - {"name": "Right Option", "title": "Right Option", "shortName": "ROpt"}, - {"name": "Left Cmd", "title": "Left Command", "shortName": "LCmd"}, - {"name": "Right Cmd", "title": "Right Command", "shortName": "RCmd"}, - {"name": "Task View", "title": "Task View in Windows", "shortName": "Task"}, - {"name": "File Explorer", "title": "File Explorer in Windows", "shortName": "File"}, - {"name": "Screen shot", "title": "Screenshot in macOS", "shortName": "SShot"}, - {"name": "Cortana", "title": "Cortana in Windows", "shortName": "Cortana"}, - {"name": "Siri", "title": "Siri in macOS", "shortName": "Siri"}, - {"name": "Bluetooth Host 1", "title": "Bluetooth Host 1", "shortName": "BTH1"}, - {"name": "Bluetooth Host 2", "title": "Bluetooth Host 2", "shortName": "BTH2"}, - {"name": "Bluetooth Host 3", "title": "Bluetooth Host 3", "shortName": "BTH3"}, - {"name": "Battery Level", "title": "Show battery level", "shortName": "Batt"} - ], - "matrix": {"rows": 6, "cols": 21}, - "layouts": { - "keymap": [ - [ - { - "c": "#777777" - }, - "0,0", - { - "x": 1, - "c": "#cccccc" - }, - "0,1", - "0,2", - "0,3", - "0,4", - { - "x": 0.5, - "c": "#aaaaaa" - }, - "0,5", - "0,6", - "0,7", - "0,8", - { - "x": 0.5, - "c": "#cccccc" - }, - "0,9", - "0,10", - "0,11", - "0,12", - { - "x": 0.25, - "c": "#aaaaaa" - }, - "0,14", - "0,15", - "0,16", - { - "x": 0.25, - "c": "#cccccc" - }, - "0,17", - "0,18", - "0,19", - "0,20" - ], - [ - { - "y": 0.25, - "c": "#aaaaaa" - }, - "1,0", - { - "c": "#cccccc" - }, - "1,1", - "1,2", - "1,3", - "1,4", - "1,5", - "1,6", - "1,7", - "1,8", - "1,9", - "1,10", - "1,11", - "1,12", - { - "c": "#aaaaaa", - "w": 2 - }, - "1,13", - { - "x": 0.25 - }, - "1,14", - "1,15", - "1,16", - { - "x": 0.25, - "c": "#cccccc" - }, - "1,17", - "1,18", - "1,19", - "1,20" - ], - [ - { - "c": "#aaaaaa", - "w": 1.5 - }, - "2,0", - { - "c": "#cccccc" - }, - "2,1", - "2,2", - "2,3", - "2,4", - "2,5", - "2,6", - "2,7", - "2,8", - "2,9", - "2,10", - "2,11", - "2,12", - { - "x": 0.25, - "c": "#777777", - "w": 1.25, - "h": 2, - "w2": 1.5, - "h2": 1, - "x2": -0.25 - }, - "2,13", - { - "x": 0.25, - "c": "#aaaaaa" - }, - "2,14", - "2,15", - "2,16", - { - "x": 0.25, - "c": "#cccccc" - }, - "2,17", - "2,18", - "2,19", - { - "h": 2 - }, - "2,20" - ], - [ - { - "c": "#aaaaaa", - "w": 1.75 - }, - "3,0", - { - "c": "#cccccc" - }, - "3,1", - "3,2", - "3,3", - "3,4", - "3,5", - "3,6", - "3,7", - "3,8", - "3,9", - "3,10", - "3,11", - { - "c": "#aaaaaa" - }, - "3,13", - { - "x": 4.75, - "c": "#cccccc" - }, - "3,17", - "3,18", - "3,19" - ], - [ - { - "c": "#aaaaaa", - "w": 1.25 - }, - "4,0", - "4,1", - { - "c": "#cccccc" - }, - "4,2", - "4,3", - "4,4", - "4,5", - "4,6", - "4,7", - "4,8", - "4,9", - "4,10", - "4,11", - { - "c": "#aaaaaa", - "w": 2.75 - }, - "4,13", - { - "x": 1.25, - "c": "#777777" - }, - "4,15", - { - "x": 1.25, - "c": "#cccccc" - }, - "4,17", - "4,18", - "4,19", - { - "h": 2 - }, - "4,20" - ], - [ - { - "c": "#aaaaaa", - "w": 1.25 - }, - "5,0", - { - "w": 1.25 - }, - "5,1", - { - "w": 1.25 - }, - "5,2", - { - "c": "#cccccc", - "w": 6.25 - }, - "5,6", - { - "c": "#aaaaaa", - "w": 1.25 - }, - "5,10", - { - "w": 1.25 - }, - "5,11", - { - "w": 1.25 - }, - "5,12", - { - "w": 1.25 - }, - "5,13", - { - "x": 0.25, - "c": "#777777" - }, - "5,14", - "5,15", - "5,16", - { - "x": 0.25, - "c": "#cccccc", - "w": 2 - }, - "5,17", - "5,19" - ] - ] - } -} diff --git a/keyboards/keychron/k5_pro/via_json/k5_pro_iso_white.json b/keyboards/keychron/k5_pro/via_json/k5_pro_iso_white.json deleted file mode 100644 index 3468d61d65..0000000000 --- a/keyboards/keychron/k5_pro/via_json/k5_pro_iso_white.json +++ /dev/null @@ -1,287 +0,0 @@ -{ - "name": "Keychron K5 Pro ISO White", - "vendorId": "0x3434", - "productId": "0x0254", - "keycodes": ["qmk_lighting"], - "customKeycodes": [ - {"name": "Left Option", "title": "Left Option", "shortName": "LOpt"}, - {"name": "Right Option", "title": "Right Option", "shortName": "ROpt"}, - {"name": "Left Cmd", "title": "Left Command", "shortName": "LCmd"}, - {"name": "Right Cmd", "title": "Right Command", "shortName": "RCmd"}, - {"name": "Task View", "title": "Task View in Windows", "shortName": "Task"}, - {"name": "File Explorer", "title": "File Explorer in Windows", "shortName": "File"}, - {"name": "Screen shot", "title": "Screenshot in macOS", "shortName": "SShot"}, - {"name": "Cortana", "title": "Cortana in Windows", "shortName": "Cortana"}, - {"name": "Siri", "title": "Siri in macOS", "shortName": "Siri"}, - {"name": "Bluetooth Host 1", "title": "Bluetooth Host 1", "shortName": "BTH1"}, - {"name": "Bluetooth Host 2", "title": "Bluetooth Host 2", "shortName": "BTH2"}, - {"name": "Bluetooth Host 3", "title": "Bluetooth Host 3", "shortName": "BTH3"}, - {"name": "Battery Level", "title": "Show battery level", "shortName": "Batt"} - ], - "matrix": {"rows": 6, "cols": 21}, - "layouts": { - "keymap": [ - [ - { - "c": "#777777" - }, - "0,0", - { - "x": 1, - "c": "#cccccc" - }, - "0,1", - "0,2", - "0,3", - "0,4", - { - "x": 0.5, - "c": "#aaaaaa" - }, - "0,5", - "0,6", - "0,7", - "0,8", - { - "x": 0.5, - "c": "#cccccc" - }, - "0,9", - "0,10", - "0,11", - "0,12", - { - "x": 0.25, - "c": "#aaaaaa" - }, - "0,14", - "0,15", - "0,16", - { - "x": 0.25, - "c": "#cccccc" - }, - "0,17", - "0,18", - "0,19", - "0,20" - ], - [ - { - "y": 0.25, - "c": "#aaaaaa" - }, - "1,0", - { - "c": "#cccccc" - }, - "1,1", - "1,2", - "1,3", - "1,4", - "1,5", - "1,6", - "1,7", - "1,8", - "1,9", - "1,10", - "1,11", - "1,12", - { - "c": "#aaaaaa", - "w": 2 - }, - "1,13", - { - "x": 0.25 - }, - "1,14", - "1,15", - "1,16", - { - "x": 0.25, - "c": "#cccccc" - }, - "1,17", - "1,18", - "1,19", - "1,20" - ], - [ - { - "c": "#aaaaaa", - "w": 1.5 - }, - "2,0", - { - "c": "#cccccc" - }, - "2,1", - "2,2", - "2,3", - "2,4", - "2,5", - "2,6", - "2,7", - "2,8", - "2,9", - "2,10", - "2,11", - "2,12", - { - "x": 0.25, - "c": "#777777", - "w": 1.25, - "h": 2, - "w2": 1.5, - "h2": 1, - "x2": -0.25 - }, - "2,13", - { - "x": 0.25, - "c": "#aaaaaa" - }, - "2,14", - "2,15", - "2,16", - { - "x": 0.25, - "c": "#cccccc" - }, - "2,17", - "2,18", - "2,19", - { - "h": 2 - }, - "2,20" - ], - [ - { - "c": "#aaaaaa", - "w": 1.75 - }, - "3,0", - { - "c": "#cccccc" - }, - "3,1", - "3,2", - "3,3", - "3,4", - "3,5", - "3,6", - "3,7", - "3,8", - "3,9", - "3,10", - "3,11", - { - "c": "#aaaaaa" - }, - "3,13", - { - "x": 4.75, - "c": "#cccccc" - }, - "3,17", - "3,18", - "3,19" - ], - [ - { - "c": "#aaaaaa", - "w": 1.25 - }, - "4,0", - "4,1", - { - "c": "#cccccc" - }, - "4,2", - "4,3", - "4,4", - "4,5", - "4,6", - "4,7", - "4,8", - "4,9", - "4,10", - "4,11", - { - "c": "#aaaaaa", - "w": 2.75 - }, - "4,13", - { - "x": 1.25, - "c": "#777777" - }, - "4,15", - { - "x": 1.25, - "c": "#cccccc" - }, - "4,17", - "4,18", - "4,19", - { - "h": 2 - }, - "4,20" - ], - [ - { - "c": "#aaaaaa", - "w": 1.25 - }, - "5,0", - { - "w": 1.25 - }, - "5,1", - { - "w": 1.25 - }, - "5,2", - { - "c": "#cccccc", - "w": 6.25 - }, - "5,6", - { - "c": "#aaaaaa", - "w": 1.25 - }, - "5,10", - { - "w": 1.25 - }, - "5,11", - { - "w": 1.25 - }, - "5,12", - { - "w": 1.25 - }, - "5,13", - { - "x": 0.25, - "c": "#777777" - }, - "5,14", - "5,15", - "5,16", - { - "x": 0.25, - "c": "#cccccc", - "w": 2 - }, - "5,17", - "5,19" - ] - ] - } -} diff --git a/keyboards/keychron/k5_pro/via_json/k5_pro_jis_rgb.json b/keyboards/keychron/k5_pro/via_json/k5_pro_jis_rgb.json deleted file mode 100644 index 24849e3ea3..0000000000 --- a/keyboards/keychron/k5_pro/via_json/k5_pro_jis_rgb.json +++ /dev/null @@ -1,345 +0,0 @@ -{ - "name": "Keychron K5 Pro JIS RGB", - "vendorId": "0x3434", - "productId": "0x0252", - "keycodes": ["qmk_lighting"], - "menus": [ - { - "label": "Lighting", - "content": [ - { - "label": "Backlight", - "content": [ - { - "label": "Brightness", - "type": "range", - "options": [0, 255], - "content": ["id_qmk_rgb_matrix_brightness", 3, 1] - }, - { - "label": "Effect", - "type": "dropdown", - "content": ["id_qmk_rgb_matrix_effect", 3, 2], - "options": [ - ["None", 0], - ["Solid Color", 1], - ["Breathing", 2], - ["Band Spiral Val", 3], - ["Cycle All", 4], - ["Cycle Left Right", 5], - ["Cycle Up Down", 6], - ["Rainbow Moving Chevron", 7], - ["Cycle Out In", 8], - ["Cycle Out In Dual", 9], - ["Cycle Pinwheel", 10], - ["Cycle Spiral", 11], - ["Dual Beacon", 12], - ["Rainbow Beacon", 13], - ["Jellybean Raindrops", 14], - ["Pixel Rain", 15], - ["Typing Heatmap", 16], - ["Digital Rain", 17], - ["Reactive Simple", 18], - ["Reactive Multiwide", 19], - ["Reactive Multinexus", 20], - ["Splash", 21], - ["Solid Splash", 22] - ] - }, - { - "showIf": "{id_qmk_rgb_matrix_effect} > 1", - "label": "Effect Speed", - "type": "range", - "options": [0, 255], - "content": ["id_qmk_rgb_matrix_effect_speed", 3, 3] - }, - { - "showIf": "{id_qmk_rgb_matrix_effect} != 0 && ( {id_qmk_rgb_matrix_effect} < 4 || {id_qmk_rgb_matrix_effect} == 18 || ({id_qmk_rgb_matrix_effect} > 17 && {id_qmk_rgb_matrix_effect} != 21) ) ", - "label": "Color", - "type": "color", - "content": ["id_qmk_rgb_matrix_color", 3, 4] - } - ] - } - ] - } - ], - "customKeycodes": [ - {"name": "Left Option", "title": "Left Option", "shortName": "LOpt"}, - {"name": "Right Option", "title": "Right Option", "shortName": "ROpt"}, - {"name": "Left Cmd", "title": "Left Command", "shortName": "LCmd"}, - {"name": "Right Cmd", "title": "Right Command", "shortName": "RCmd"}, - {"name": "Task View", "title": "Task View in Windows", "shortName": "Task"}, - {"name": "File Explorer", "title": "File Explorer in Windows", "shortName": "File"}, - {"name": "Screen shot", "title": "Screenshot in macOS", "shortName": "SShot"}, - {"name": "Cortana", "title": "Cortana in Windows", "shortName": "Cortana"}, - {"name": "Siri", "title": "Siri in macOS", "shortName": "Siri"}, - {"name": "Bluetooth Host 1", "title": "Bluetooth Host 1", "shortName": "BTH1"}, - {"name": "Bluetooth Host 2", "title": "Bluetooth Host 2", "shortName": "BTH2"}, - {"name": "Bluetooth Host 3", "title": "Bluetooth Host 3", "shortName": "BTH3"}, - {"name": "Battery Level", "title": "Show battery level", "shortName": "Batt"} - ], - "matrix": {"rows": 6, "cols": 21}, - "layouts": { - "keymap": [ - [ - { - "c": "#777777" - }, - "0,0", - { - "x": 1, - "c": "#cccccc" - }, - "0,1", - "0,2", - "0,3", - "0,4", - { - "x": 0.5, - "c": "#aaaaaa" - }, - "0,5", - "0,6", - "0,7", - "0,8", - { - "x": 0.5, - "c": "#cccccc" - }, - "0,9", - "0,10", - "0,11", - "0,12", - { - "x": 0.25, - "c": "#aaaaaa" - }, - "0,14", - "0,15", - "0,16", - { - "x": 0.25, - "c": "#cccccc" - }, - "0,17", - "0,18", - "0,19", - "0,20" - ], - [ - { - "y": 0.25, - "c": "#aaaaaa" - }, - "1,0", - { - "c": "#cccccc" - }, - "1,1", - "1,2", - "1,3", - "1,4", - "1,5", - "1,6", - "1,7", - "1,8", - "1,9", - "1,10", - "1,11", - "1,12", - { - "c": "#aaaaaa" - }, - "1,13", - "0,13", - { - "x": 0.25 - }, - "1,14", - "1,15", - "1,16", - { - "x": 0.25, - "c": "#cccccc" - }, - "1,17", - "1,18", - "1,19", - "1,20" - ], - [ - { - "c": "#aaaaaa", - "w": 1.5 - }, - "2,0", - { - "c": "#cccccc" - }, - "2,1", - "2,2", - "2,3", - "2,4", - "2,5", - "2,6", - "2,7", - "2,8", - "2,9", - "2,10", - "2,11", - "2,12", - { - "x": 0.25, - "c": "#777777", - "w": 1.25, - "h": 2, - "w2": 1.5, - "h2": 1, - "x2": -0.25 - }, - "2,13", - { - "x": 0.25, - "c": "#aaaaaa" - }, - "2,14", - "2,15", - "2,16", - { - "x": 0.25, - "c": "#cccccc" - }, - "2,17", - "2,18", - "2,19", - { - "h": 2 - }, - "2,20" - ], - [ - { - "c": "#aaaaaa", - "w": 1.75 - }, - "3,0", - { - "c": "#cccccc" - }, - "3,1", - "3,2", - "3,3", - "3,4", - "3,5", - "3,6", - "3,7", - "3,8", - "3,9", - "3,10", - "3,11", - { - "c": "#aaaaaa" - }, - "3,13", - { - "x": 4.75, - "c": "#cccccc" - }, - "3,17", - "3,18", - "3,19" - ], - [ - { - "c": "#aaaaaa", - "w": 2.25 - }, - "4,0", - { - "c": "#cccccc" - }, - "4,2", - "4,3", - "4,4", - "4,5", - "4,6", - "4,7", - "4,8", - "4,9", - "4,10", - "4,11", - { - "c": "#aaaaaa" - }, - "4,12", - { - "w": 1.75 - }, - "4,13", - { - "x": 1.25, - "c": "#777777" - }, - "4,15", - { - "x": 1.25, - "c": "#cccccc" - }, - "4,17", - "4,18", - "4,19", - { - "h": 2 - }, - "4,20" - ], - [ - { - "c": "#aaaaaa", - "w": 1.25 - }, - "5,0", - "5,1", - { - "w": 1.25 - }, - "5,2", - "5,3", - { - "c": "#cccccc", - "w": 5 - }, - "5,6", - { - "c": "#aaaaaa" - }, - "5,9", - { - "w": 1.25 - }, - "5,10", - "5,11", - "5,12", - { - "w": 1.25 - }, - "5,13", - { - "x": 0.25, - "c": "#777777" - }, - "5,14", - "5,15", - "5,16", - { - "x": 0.25, - "c": "#cccccc", - "w": 2 - }, - "5,17", - "5,19" - ] - ] - } -} diff --git a/keyboards/keychron/k5_pro/via_json/k5_pro_jis_white.json b/keyboards/keychron/k5_pro/via_json/k5_pro_jis_white.json deleted file mode 100644 index e72c407cd9..0000000000 --- a/keyboards/keychron/k5_pro/via_json/k5_pro_jis_white.json +++ /dev/null @@ -1,284 +0,0 @@ -{ - "name": "Keychron K5 Pro JIS White", - "vendorId": "0x3434", - "productId": "0x0255", - "keycodes": ["qmk_lighting"], - "customKeycodes": [ - {"name": "Left Option", "title": "Left Option", "shortName": "LOpt"}, - {"name": "Right Option", "title": "Right Option", "shortName": "ROpt"}, - {"name": "Left Cmd", "title": "Left Command", "shortName": "LCmd"}, - {"name": "Right Cmd", "title": "Right Command", "shortName": "RCmd"}, - {"name": "Task View", "title": "Task View in Windows", "shortName": "Task"}, - {"name": "File Explorer", "title": "File Explorer in Windows", "shortName": "File"}, - {"name": "Screen shot", "title": "Screenshot in macOS", "shortName": "SShot"}, - {"name": "Cortana", "title": "Cortana in Windows", "shortName": "Cortana"}, - {"name": "Siri", "title": "Siri in macOS", "shortName": "Siri"}, - {"name": "Bluetooth Host 1", "title": "Bluetooth Host 1", "shortName": "BTH1"}, - {"name": "Bluetooth Host 2", "title": "Bluetooth Host 2", "shortName": "BTH2"}, - {"name": "Bluetooth Host 3", "title": "Bluetooth Host 3", "shortName": "BTH3"}, - {"name": "Battery Level", "title": "Show battery level", "shortName": "Batt"} - ], - "matrix": {"rows": 6, "cols": 21}, - "layouts": { - "keymap": [ - [ - { - "c": "#777777" - }, - "0,0", - { - "x": 1, - "c": "#cccccc" - }, - "0,1", - "0,2", - "0,3", - "0,4", - { - "x": 0.5, - "c": "#aaaaaa" - }, - "0,5", - "0,6", - "0,7", - "0,8", - { - "x": 0.5, - "c": "#cccccc" - }, - "0,9", - "0,10", - "0,11", - "0,12", - { - "x": 0.25, - "c": "#aaaaaa" - }, - "0,14", - "0,15", - "0,16", - { - "x": 0.25, - "c": "#cccccc" - }, - "0,17", - "0,18", - "0,19", - "0,20" - ], - [ - { - "y": 0.25, - "c": "#aaaaaa" - }, - "1,0", - { - "c": "#cccccc" - }, - "1,1", - "1,2", - "1,3", - "1,4", - "1,5", - "1,6", - "1,7", - "1,8", - "1,9", - "1,10", - "1,11", - "1,12", - { - "c": "#aaaaaa" - }, - "1,13", - "0,13", - { - "x": 0.25 - }, - "1,14", - "1,15", - "1,16", - { - "x": 0.25, - "c": "#cccccc" - }, - "1,17", - "1,18", - "1,19", - "1,20" - ], - [ - { - "c": "#aaaaaa", - "w": 1.5 - }, - "2,0", - { - "c": "#cccccc" - }, - "2,1", - "2,2", - "2,3", - "2,4", - "2,5", - "2,6", - "2,7", - "2,8", - "2,9", - "2,10", - "2,11", - "2,12", - { - "x": 0.25, - "c": "#777777", - "w": 1.25, - "h": 2, - "w2": 1.5, - "h2": 1, - "x2": -0.25 - }, - "2,13", - { - "x": 0.25, - "c": "#aaaaaa" - }, - "2,14", - "2,15", - "2,16", - { - "x": 0.25, - "c": "#cccccc" - }, - "2,17", - "2,18", - "2,19", - { - "h": 2 - }, - "2,20" - ], - [ - { - "c": "#aaaaaa", - "w": 1.75 - }, - "3,0", - { - "c": "#cccccc" - }, - "3,1", - "3,2", - "3,3", - "3,4", - "3,5", - "3,6", - "3,7", - "3,8", - "3,9", - "3,10", - "3,11", - { - "c": "#aaaaaa" - }, - "3,13", - { - "x": 4.75, - "c": "#cccccc" - }, - "3,17", - "3,18", - "3,19" - ], - [ - { - "c": "#aaaaaa", - "w": 2.25 - }, - "4,0", - { - "c": "#cccccc" - }, - "4,2", - "4,3", - "4,4", - "4,5", - "4,6", - "4,7", - "4,8", - "4,9", - "4,10", - "4,11", - { - "c": "#aaaaaa" - }, - "4,12", - { - "w": 1.75 - }, - "4,13", - { - "x": 1.25, - "c": "#777777" - }, - "4,15", - { - "x": 1.25, - "c": "#cccccc" - }, - "4,17", - "4,18", - "4,19", - { - "h": 2 - }, - "4,20" - ], - [ - { - "c": "#aaaaaa", - "w": 1.25 - }, - "5,0", - "5,1", - { - "w": 1.25 - }, - "5,2", - "5,3", - { - "c": "#cccccc", - "w": 5 - }, - "5,6", - { - "c": "#aaaaaa" - }, - "5,9", - { - "w": 1.25 - }, - "5,10", - "5,11", - "5,12", - { - "w": 1.25 - }, - "5,13", - { - "x": 0.25, - "c": "#777777" - }, - "5,14", - "5,15", - "5,16", - { - "x": 0.25, - "c": "#cccccc", - "w": 2 - }, - "5,17", - "5,19" - ] - ] - } -} diff --git a/keyboards/keychron/k6_pro/ansi/rgb/config.h b/keyboards/keychron/k6_pro/ansi/rgb/config.h deleted file mode 100644 index 0ab3cdfb68..0000000000 --- a/keyboards/keychron/k6_pro/ansi/rgb/config.h +++ /dev/null @@ -1,53 +0,0 @@ -/* Copyright 2021 @ 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 . - */ - -#pragma once - -#ifdef RGB_MATRIX_ENABLE -/* RGB Matrix driver configuration */ -# define DRIVER_COUNT 2 - -# define DRIVER_ADDR_1 0b1110111 -# define DRIVER_ADDR_2 0b1110100 -# define DRIVER_1_LED_COUNT 30 -# define DRIVER_2_LED_COUNT 38 -# define RGB_MATRIX_LED_COUNT (DRIVER_1_LED_COUNT + DRIVER_2_LED_COUNT) - -/* Set to infinit, which is use in USB mode by default - */ -# define RGB_MATRIX_TIMEOUT RGB_MATRIX_TIMEOUT_INFINITE -/* Allow shutdown of led driver to save power */ -# define RGB_MATRIX_DRIVER_SHUTDOWN_ENABLE -/* Turn off backlight on low brightness to save power */ -# define RGB_MATRIX_BRIGHTNESS_TURN_OFF_VAL 32 - -# define DIM_CAPS_LOCK -# define CAPS_LOCK_INDEX 30 -# define LOW_BAT_IND_INDEX 61 - -/* RGB Matrix Animation modes. Explicitly enabled - * For full list of effects, see: - * https://docs.qmk.fm/#/feature_rgb_matrix?id=rgb-matrix-effects - */ - -# define RGB_MATRIX_KEYPRESSES -# define RGB_MATRIX_FRAMEBUFFER_EFFECTS - -/* Set LED driver current */ -# define SNLED27351_CURRENT_TUNE \ - { 0x38, 0x38, 0x38, 0x38, 0x38, 0x38, 0x38, 0x38, 0x38, 0x38, 0x38, 0x38 } - -#endif diff --git a/keyboards/keychron/k6_pro/ansi/rgb/info.json b/keyboards/keychron/k6_pro/ansi/rgb/info.json deleted file mode 100644 index f6324798ea..0000000000 --- a/keyboards/keychron/k6_pro/ansi/rgb/info.json +++ /dev/null @@ -1,35 +0,0 @@ -{ - "usb": { - "pid": "0x0260", - "device_version": "1.0.0" - }, - "features": { - "rgb_matrix": true - }, - "rgb_matrix": { - "driver": "snled27351", - "animations": { - "breathing": true, - "band_spiral_val": true, - "cycle_all": true, - "cycle_left_right": true, - "cycle_up_down": true, - "rainbow_moving_chevron": true, - "cycle_out_in": true, - "cycle_out_in_dual": true, - "cycle_pinwheel": true, - "cycle_spiral": true, - "dual_beacon": true, - "rainbow_beacon": true, - "jellybean_raindrops": true, - "pixel_rain": true, - "typing_heatmap": true, - "digital_rain": true, - "solid_reactive_simple": true, - "solid_reactive_multiwide": true, - "solid_reactive_multinexus": true, - "splash": true, - "solid_splash": true - } - } -} diff --git a/keyboards/keychron/k6_pro/ansi/rgb/keymaps/default/keymap.c b/keyboards/keychron/k6_pro/ansi/rgb/keymaps/default/keymap.c deleted file mode 100644 index ed69834c0a..0000000000 --- a/keyboards/keychron/k6_pro/ansi/rgb/keymaps/default/keymap.c +++ /dev/null @@ -1,63 +0,0 @@ -/* Copyright 2021 @ 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 . - */ - -#include QMK_KEYBOARD_H - -// clang-format off -enum layers{ - MAC_BASE, - WIN_BASE, - MAC_FN1, - WIN_FN1, - FN2 -}; - -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { -[MAC_BASE] = LAYOUT_ansi_68( - 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, RGB_MOD, - 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_HOME, - 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_PGUP, - 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_PGDN, - KC_LCTL, KC_LOPTN, KC_LCMMD, KC_SPC, KC_RCMMD,MO(MAC_FN1),MO(FN2), KC_LEFT, KC_DOWN, KC_RGHT), - -[WIN_BASE] = LAYOUT_ansi_68( - 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, RGB_MOD, - 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_HOME, - 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_PGUP, - 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_PGDN, - KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(WIN_FN1),MO(FN2), KC_LEFT, KC_DOWN, KC_RGHT), - -[MAC_FN1] = LAYOUT_ansi_68( - KC_GRV, KC_BRID, KC_BRIU, KC_MCTL, KC_LPAD, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_TRNS, RGB_TOG, - KC_TRNS, BT_HST1, BT_HST2, BT_HST3, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, NK_TOGG, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS), - -[WIN_FN1] = LAYOUT_ansi_68( - KC_GRV, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_TRNS, RGB_TOG, - KC_TRNS, BT_HST1, BT_HST2, BT_HST3, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, NK_TOGG, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS), - -[FN2] = LAYOUT_ansi_68( - KC_TILD, 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, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, BAT_LVL, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, 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/keychron/k6_pro/ansi/rgb/keymaps/via/keymap.c b/keyboards/keychron/k6_pro/ansi/rgb/keymaps/via/keymap.c deleted file mode 100644 index ed69834c0a..0000000000 --- a/keyboards/keychron/k6_pro/ansi/rgb/keymaps/via/keymap.c +++ /dev/null @@ -1,63 +0,0 @@ -/* Copyright 2021 @ 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 . - */ - -#include QMK_KEYBOARD_H - -// clang-format off -enum layers{ - MAC_BASE, - WIN_BASE, - MAC_FN1, - WIN_FN1, - FN2 -}; - -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { -[MAC_BASE] = LAYOUT_ansi_68( - 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, RGB_MOD, - 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_HOME, - 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_PGUP, - 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_PGDN, - KC_LCTL, KC_LOPTN, KC_LCMMD, KC_SPC, KC_RCMMD,MO(MAC_FN1),MO(FN2), KC_LEFT, KC_DOWN, KC_RGHT), - -[WIN_BASE] = LAYOUT_ansi_68( - 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, RGB_MOD, - 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_HOME, - 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_PGUP, - 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_PGDN, - KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(WIN_FN1),MO(FN2), KC_LEFT, KC_DOWN, KC_RGHT), - -[MAC_FN1] = LAYOUT_ansi_68( - KC_GRV, KC_BRID, KC_BRIU, KC_MCTL, KC_LPAD, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_TRNS, RGB_TOG, - KC_TRNS, BT_HST1, BT_HST2, BT_HST3, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, NK_TOGG, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS), - -[WIN_FN1] = LAYOUT_ansi_68( - KC_GRV, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_TRNS, RGB_TOG, - KC_TRNS, BT_HST1, BT_HST2, BT_HST3, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, NK_TOGG, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS), - -[FN2] = LAYOUT_ansi_68( - KC_TILD, 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, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, BAT_LVL, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, 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/keychron/k6_pro/ansi/rgb/keymaps/via/rules.mk b/keyboards/keychron/k6_pro/ansi/rgb/keymaps/via/rules.mk deleted file mode 100644 index 4eae6e776c..0000000000 --- a/keyboards/keychron/k6_pro/ansi/rgb/keymaps/via/rules.mk +++ /dev/null @@ -1,2 +0,0 @@ -VIA_ENABLE = yes -OPT_DEFS += -DDYNAMIC_KEYMAP_LAYER_COUNT=5 diff --git a/keyboards/keychron/k6_pro/ansi/rgb/rgb.c b/keyboards/keychron/k6_pro/ansi/rgb/rgb.c deleted file mode 100644 index 0739aca14b..0000000000 --- a/keyboards/keychron/k6_pro/ansi/rgb/rgb.c +++ /dev/null @@ -1,125 +0,0 @@ -/* Copyright 2021 @ 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 . - */ - -#include "quantum.h" - -// clang-format off -#ifdef RGB_MATRIX_ENABLE -const snled27351_led_t g_snled27351_leds[RGB_MATRIX_LED_COUNT] = { -/* Refer to IS31 manual for these locations - * driver - * | R location - * | | G location - * | | | B location - * | | | | */ - {0, C_16, A_16, B_16}, - {0, C_15, A_15, B_15}, - {0, C_14, A_14, B_14}, - {0, C_13, A_13, B_13}, - {0, C_12, A_12, B_12}, - {0, C_11, A_11, B_11}, - {0, C_10, A_10, B_10}, - {0, C_9, A_9, B_9}, - {0, C_8, A_8, B_8}, - {0, C_7, A_7, B_7}, - {0, C_6, A_6, B_6}, - {0, C_5, A_5, B_5}, - {0, C_4, A_4, B_4}, - {0, C_3, A_3, B_3}, - {0, C_2, A_2, B_2}, - - {0, F_16, D_16, E_16}, - {0, F_15, D_15, E_15}, - {0, F_14, D_14, E_14}, - {0, F_13, D_13, E_13}, - {0, F_12, D_12, E_12}, - {0, F_11, D_11, E_11}, - {0, F_10, D_10, E_10}, - {0, F_9, D_9, E_9}, - {0, F_8, D_8, E_8}, - {0, F_7, D_7, E_7}, - {0, F_6, D_6, E_6}, - {0, F_5, D_5, E_5}, - {0, F_4, D_4, E_4}, - {0, F_3, D_3, E_3}, - {0, F_2, D_2, E_2}, - - {1, C_16, A_16, B_16}, - {1, C_15, A_15, B_15}, - {1, C_14, A_14, B_14}, - {1, C_13, A_13, B_13}, - {1, C_12, A_12, B_12}, - {1, C_11, A_11, B_11}, - {1, C_10, A_10, B_10}, - {1, C_9, A_9, B_9}, - {1, C_8, A_8, B_8}, - {1, C_7, A_7, B_7}, - {1, C_6, A_6, B_6}, - {1, C_5, A_5, B_5}, - {1, C_3, A_3, B_3}, - {1, C_2, A_2, B_2}, - - {1, I_16, G_16, H_16}, - {1, I_14, G_14, H_14}, - {1, I_13, G_13, H_13}, - {1, I_12, G_12, H_12}, - {1, I_11, G_11, H_11}, - {1, I_10, G_10, H_10}, - {1, I_9, G_9, H_9}, - {1, I_8, G_8, H_8}, - {1, I_7, G_7, H_7}, - {1, I_6, G_6, H_6}, - {1, I_5, G_5, H_5}, - {1, I_4, G_4, H_4}, - {1, I_3, G_3, H_3}, - {1, I_2, G_2, H_2}, - - {1, F_16, D_16, E_16}, - {1, F_15, D_15, E_15}, - {1, F_14, D_14, E_14}, - {1, F_10, D_10, E_10}, - {1, F_7, D_7, E_7}, - {1, F_6, D_6, E_6}, - {1, F_5, D_5, E_5}, - {1, F_4, D_4, E_4}, - {1, F_3, D_3, E_3}, - {1, F_2, D_2, E_2} -}; - -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, 40, 41, NO_LED, 42, 43 }, - { 44, NO_LED, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57 }, - { 58, 59, 60, NO_LED, NO_LED, NO_LED, 61, NO_LED, NO_LED, 62, 63, 64, 65, 66, 67 } - }, - { - {0, 0}, {14, 0}, {29, 0}, { 44, 0}, { 59, 0}, { 74, 0}, { 89, 0}, {104, 0}, {119, 0}, {134, 0}, {149, 0}, {164, 0}, {179, 0}, {201, 0}, {224, 0}, - {3,16}, {22,16}, {37,16}, { 52,16}, { 67,16}, { 82,16}, { 97,16}, {112,16}, {126,16}, {141,16}, {156,16}, {171,16}, {186,16}, {205,16}, {224,16}, - {5,32}, {26,32}, {41,32}, { 55,32}, { 70,32}, { 85,32}, {100,32}, {115,32}, {130,32}, {145,32}, {160,32}, {175,32}, {199,32}, {224,32}, - {9,48}, {33,48}, {48,48}, { 63,48}, { 78,48}, { 93,48}, {108,48}, {123,48}, {138,48}, {153,48}, {167,48}, {188,48}, {209,48}, {224,48}, - {1,64}, {20,64}, {39,64}, { 95,64}, {149,64}, {164,64}, {179,64}, {194,64}, {209,64}, {224,64} - }, - { - 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, - 4, 8, 8, 8, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, - 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, - 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, - 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, - } -}; -#endif diff --git a/keyboards/keychron/k6_pro/ansi/rgb/rules.mk b/keyboards/keychron/k6_pro/ansi/rgb/rules.mk deleted file mode 100644 index f886ea2e8e..0000000000 --- a/keyboards/keychron/k6_pro/ansi/rgb/rules.mk +++ /dev/null @@ -1 +0,0 @@ -# This file intentionally blank \ No newline at end of file diff --git a/keyboards/keychron/k6_pro/ansi/white/config.h b/keyboards/keychron/k6_pro/ansi/white/config.h deleted file mode 100644 index b9d52ec03d..0000000000 --- a/keyboards/keychron/k6_pro/ansi/white/config.h +++ /dev/null @@ -1,49 +0,0 @@ -/* Copyright 2021 @ 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 . - */ - -#pragma once - -#ifdef LED_MATRIX_ENABLE -/* LED matrix driver configuration */ -# define DRIVER_COUNT 1 -# define SNLED27351_I2C_ADDRESS_1 SNLED27351_I2C_ADDRESS_GND -# define LED_MATRIX_LED_COUNT 68 - -/* Set to infinit, which is use in USB mode by default */ -# define LED_MATRIX_TIMEOUT LED_MATRIX_TIMEOUT_INFINITE -/* Allow shutdown of led driver to save power */ -# define LED_MATRIX_DRIVER_SHUTDOWN_ENABLE -/* Turn off backlight on low brightness to save power */ -# define LED_MATRIX_BRIGHTNESS_TURN_OFF_VAL 32 - - -# define DIM_CAPS_LOCK -# define CAPS_LOCK_INDEX 30 -# define LOW_BAT_IND_INDEX 61 - -/* LED Matrix Animation modes. Explicitly enabled - * For full list of effects, see: - * https://docs.qmk.fm/#/feature_led_matrix?id=led-matrix-effects - */ -# define LED_MATRIX_KEYPRESSES - -/* Use first 6 channels of LED driver */ -# define PHASE_CHANNEL MSKPHASE_6CHANNEL - -/* Set LED driver current */ -# define SNLED27351_CURRENT_TUNE { 0x60, 0x60, 0x60, 0x60, 0x60, 0x60, 0x60, 0x60, 0x60, 0x60, 0x60, 0x60 } - -#endif diff --git a/keyboards/keychron/k6_pro/ansi/white/info.json b/keyboards/keychron/k6_pro/ansi/white/info.json deleted file mode 100644 index a88be01c0b..0000000000 --- a/keyboards/keychron/k6_pro/ansi/white/info.json +++ /dev/null @@ -1,30 +0,0 @@ -{ - "usb": { - "pid": "0x0263", - "device_version": "1.0.0" - }, - "features": { - "led_matrix": true - }, - "led_matrix": { - "driver": "snled27351", - "animations": { - "none": true, - "solid": true, - "breathing": true, - "band_pinwheel": true, - "band_spiral": true, - "cycle_left_right": true, - "cycle_up_down": true, - "cycle_out_in": true, - "dual_beacon": true, - "solid_reactive_simple": true, - "solid_reactive_multiwide": true, - "solid_reactive_multinexus": true, - "solid_splash": true, - "wave_left_right": true, - "wave_up_down": true, - "effect_max": true - } - } -} diff --git a/keyboards/keychron/k6_pro/ansi/white/keymaps/default/keymap.c b/keyboards/keychron/k6_pro/ansi/white/keymaps/default/keymap.c deleted file mode 100644 index 00962096c4..0000000000 --- a/keyboards/keychron/k6_pro/ansi/white/keymaps/default/keymap.c +++ /dev/null @@ -1,63 +0,0 @@ -/* Copyright 2021 @ 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 . - */ - -#include QMK_KEYBOARD_H - -// clang-format off -enum layers{ - MAC_BASE, - WIN_BASE, - MAC_FN1, - WIN_FN1, - FN2 -}; - -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { -[MAC_BASE] = LAYOUT_ansi_68( - 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, BL_STEP, - 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_HOME, - 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_PGUP, - 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_PGDN, - KC_LCTL, KC_LOPTN, KC_LCMMD, KC_SPC, KC_RCMMD,MO(MAC_FN1),MO(FN2), KC_LEFT, KC_DOWN, KC_RGHT), - -[WIN_BASE] = LAYOUT_ansi_68( - 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, BL_STEP, - 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_HOME, - 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_PGUP, - 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_PGDN, - KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT,MO(WIN_FN1),MO(FN2), KC_LEFT, KC_DOWN, KC_RGHT), - -[MAC_FN1] = LAYOUT_ansi_68( - KC_GRV, KC_BRID, KC_BRIU, KC_MCTL, KC_LPAD, BL_DOWN, BL_UP, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_TRNS, BL_TOGG, - KC_TRNS, BT_HST1, BT_HST2, BT_HST3, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - BL_TOGG, BL_STEP, BL_UP, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, BL_DOWN, KC_TRNS, KC_TRNS, KC_TRNS, NK_TOGG, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS), - -[WIN_FN1] = LAYOUT_ansi_68( - KC_GRV, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, BL_DOWN, BL_UP, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_TRNS, BL_TOGG, - KC_TRNS, BT_HST1, BT_HST2, BT_HST3, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - BL_TOGG, BL_STEP, BL_UP, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, BL_DOWN, KC_TRNS, KC_TRNS, KC_TRNS, NK_TOGG, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS), - -[FN2] = LAYOUT_ansi_68( - KC_TILD, 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, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, BAT_LVL, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, 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/keychron/k6_pro/ansi/white/keymaps/via/keymap.c b/keyboards/keychron/k6_pro/ansi/white/keymaps/via/keymap.c deleted file mode 100644 index 50d9a1018c..0000000000 --- a/keyboards/keychron/k6_pro/ansi/white/keymaps/via/keymap.c +++ /dev/null @@ -1,63 +0,0 @@ -/* Copyright 2021 @ 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 . - */ - -#include QMK_KEYBOARD_H - -// clang-format off -enum layers{ - MAC_BASE, - WIN_BASE, - MAC_FN1, - WIN_FN1, - FN2 -}; - -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { -[MAC_BASE] = LAYOUT_ansi_68( - 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, BL_STEP, - 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_HOME, - 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_PGUP, - 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_PGDN, - KC_LCTL, KC_LOPTN, KC_LCMMD, KC_SPC, KC_RCMMD,MO(MAC_FN1),MO(FN2), KC_LEFT, KC_DOWN, KC_RGHT), - -[WIN_BASE] = LAYOUT_ansi_68( - 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, BL_STEP, - 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_HOME, - 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_PGUP, - 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_PGDN, - KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT,MO(WIN_FN1),MO(FN2), KC_LEFT, KC_DOWN, KC_RGHT), - -[MAC_FN1] = LAYOUT_ansi_68( - KC_GRV, KC_BRID, KC_BRIU, KC_MCTL, KC_LPAD, BL_DOWN, BL_UP, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_TRNS, BL_TOGG, - KC_TRNS, BT_HST1, BT_HST2, BT_HST3, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - BL_TOGG, BL_STEP, BL_UP, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, BL_DOWN, KC_TRNS, KC_TRNS, KC_TRNS, NK_TOGG, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS), - -[WIN_FN1] = LAYOUT_ansi_68( - KC_GRV, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, BL_DOWN, BL_UP, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_TRNS, BL_TOGG, - KC_TRNS, BT_HST1, BT_HST2, BT_HST3, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - BL_TOGG, BL_STEP, BL_UP, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, BL_DOWN, KC_TRNS, KC_TRNS, KC_TRNS, NK_TOGG, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS), - -[FN2] = LAYOUT_ansi_68( - KC_TILD, 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, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, BAT_LVL, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, 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/keychron/k6_pro/ansi/white/keymaps/via/rules.mk b/keyboards/keychron/k6_pro/ansi/white/keymaps/via/rules.mk deleted file mode 100644 index 4eae6e776c..0000000000 --- a/keyboards/keychron/k6_pro/ansi/white/keymaps/via/rules.mk +++ /dev/null @@ -1,2 +0,0 @@ -VIA_ENABLE = yes -OPT_DEFS += -DDYNAMIC_KEYMAP_LAYER_COUNT=5 diff --git a/keyboards/keychron/k6_pro/ansi/white/rules.mk b/keyboards/keychron/k6_pro/ansi/white/rules.mk deleted file mode 100644 index f886ea2e8e..0000000000 --- a/keyboards/keychron/k6_pro/ansi/white/rules.mk +++ /dev/null @@ -1 +0,0 @@ -# This file intentionally blank \ No newline at end of file diff --git a/keyboards/keychron/k6_pro/ansi/white/white.c b/keyboards/keychron/k6_pro/ansi/white/white.c deleted file mode 100644 index 52edc36b5b..0000000000 --- a/keyboards/keychron/k6_pro/ansi/white/white.c +++ /dev/null @@ -1,124 +0,0 @@ -/* Copyright 2022 @ 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 . - */ - -#include "quantum.h" - -// clang-format off -#ifdef LED_MATRIX_ENABLE -const snled27351_led_t g_snled27351_leds[LED_MATRIX_LED_COUNT] = { -/* Refer to IS31 manual for these locations - * driver - * | LED address - * | | */ - {0, B_16}, - {0, B_15}, - {0, B_14}, - {0, B_13}, - {0, B_12}, - {0, B_11}, - {0, B_10}, - {0, B_9}, - {0, B_8}, - {0, B_7}, - {0, B_6}, - {0, B_5}, - {0, B_4}, - {0, B_3}, - {0, B_2}, - - {0, C_16}, - {0, C_15}, - {0, C_14}, - {0, C_13}, - {0, C_12}, - {0, C_11}, - {0, C_10}, - {0, C_9}, - {0, C_8}, - {0, C_7}, - {0, C_6}, - {0, C_5}, - {0, C_4}, - {0, C_3}, - {0, C_2}, - - {0, D_16}, - {0, D_15}, - {0, D_14}, - {0, D_13}, - {0, D_12}, - {0, D_11}, - {0, D_10}, - {0, D_9}, - {0, D_8}, - {0, D_7}, - {0, D_6}, - {0, D_5}, - {0, D_3}, - {0, D_2}, - - {0, E_16}, - {0, E_14}, - {0, E_13}, - {0, E_12}, - {0, E_11}, - {0, E_10}, - {0, E_9}, - {0, E_8}, - {0, E_7}, - {0, E_6}, - {0, E_5}, - {0, E_4}, - {0, E_3}, - {0, E_2}, - - {0, F_16}, - {0, F_15}, - {0, F_14}, - {0, F_10}, - {0, F_7}, - {0, F_6}, - {0, F_5}, - {0, F_4}, - {0, F_3}, - {0, F_2} -}; - -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, 40, 41, NO_LED, 42, 43 }, - { 44, NO_LED, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57 }, - { 58, 59, 60, NO_LED, NO_LED, NO_LED, 61, NO_LED, NO_LED, 62, 63, 64, 65, 66, 67 } -}, -{ - {0, 0}, {14, 0}, {29, 0}, { 44, 0}, { 59, 0}, { 74, 0}, { 89, 0}, {104, 0}, {119, 0}, {134, 0}, {149, 0}, {164, 0}, {179, 0}, {201, 0}, {224, 0}, - {3,16}, {22,16}, {37,16}, { 52,16}, { 67,16}, { 82,16}, { 97,16}, {112,16}, {126,16}, {141,16}, {156,16}, {171,16}, {186,16}, {205,16}, {224,16}, - {5,32}, {26,32}, {41,32}, { 55,32}, { 70,32}, { 85,32}, {100,32}, {115,32}, {130,32}, {145,32}, {160,32}, {175,32}, {199,32}, {224,32}, - {9,48}, {33,48}, {48,48}, { 63,48}, { 78,48}, { 93,48}, {108,48}, {123,48}, {138,48}, {153,48}, {167,48}, {188,48}, {209,48}, {224,48}, - {1,64}, {20,64}, {39,64}, { 95,64}, {149,64}, {164,64}, {179,64}, {194,64}, {209,64}, {224,64} - }, - { - 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, - 4, 8, 8, 8, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, - 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, - 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, - 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, - } -}; - -#endif diff --git a/keyboards/keychron/k6_pro/config.h b/keyboards/keychron/k6_pro/config.h deleted file mode 100644 index 21467ade3e..0000000000 --- a/keyboards/keychron/k6_pro/config.h +++ /dev/null @@ -1,91 +0,0 @@ -/* Copyright 2022 @ 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 . - */ - -#pragma once - -/* Turn off effects when suspended */ -#define RGB_DISABLE_WHEN_USB_SUSPENDED -#define LED_DISABLE_WHEN_USB_SUSPENDED - -/* DIP switch for Mac/win OS switch */ -#define DIP_SWITCH_PINS \ - { A8 } - -/* Caps lock LED Pin */ -#define LED_CAPS_LOCK_PIN A7 -#define LED_PIN_ON_STATE 1 - -/* 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 A10 - -# 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 A4 -# 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 \ - { 16, 17, 18 } - -# 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 WEAR_LEVELING_LOGICAL_SIZE 2048 -#define WEAR_LEVELING_BACKING_SIZE (WEAR_LEVELING_LOGICAL_SIZE * 2) -#define DYNAMIC_KEYMAP_EEPROM_MAX_ADDR 2047 - -/* Factory test keys */ -#define FN_KEY1 MO(2) -#define FN_KEY2 MO(3) diff --git a/keyboards/keychron/k6_pro/halconf.h b/keyboards/keychron/k6_pro/halconf.h deleted file mode 100644 index 306f917783..0000000000 --- a/keyboards/keychron/k6_pro/halconf.h +++ /dev/null @@ -1,29 +0,0 @@ -/* 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 _CHIBIOS_HAL_CONF_VER_8_0_ - -#define HAL_USE_I2C TRUE - -#ifdef KC_BLUETOOTH_ENABLE -# define PAL_USE_CALLBACKS TRUE -# define HAL_USE_SERIAL TRUE -# define HAL_USE_RTC TRUE -#endif - -#include_next diff --git a/keyboards/keychron/k6_pro/info.json b/keyboards/keychron/k6_pro/info.json deleted file mode 100644 index de9392d350..0000000000 --- a/keyboards/keychron/k6_pro/info.json +++ /dev/null @@ -1,264 +0,0 @@ -{ - "keyboard_name": "Keychron K6 Pro", - "manufacturer": "Keychron", - "url": "https://github.com/Keychron", - "maintainer": "lokher", - "processor": "STM32L432", - "bootloader": "stm32-dfu", - "usb": { - "vid": "0x3434" - }, - "features": { - "bootmagic": true, - "mousekey": true, - "extrakey": true, - "nkro": true, - "dip_switch": true, - "raw": true - }, - "diode_direction": "ROW2COL", - "matrix_size": { - "rows": 5, - "cols": 15 - }, - "matrix_pins": { - "rows": ["B4", "B3", "A15", "A14", "A13"], - "cols": [null, null, null, null, null, null, null, null, null, null, null, null, null, null, null], - "custom": true, - "custom_lite": true - }, - "layouts": { - "LAYOUT_ansi_68": { - "layout": [ - {"matrix":[0, 0], "x":0, "y":0}, - {"matrix":[0, 1], "x":1, "y":0}, - {"matrix":[0, 2], "x":2, "y":0}, - {"matrix":[0, 3], "x":3, "y":0}, - {"matrix":[0, 4], "x":4, "y":0}, - {"matrix":[0, 5], "x":5, "y":0}, - {"matrix":[0, 6], "x":6, "y":0}, - {"matrix":[0, 7], "x":7, "y":0}, - {"matrix":[0, 8], "x":8, "y":0}, - {"matrix":[0, 9], "x":9, "y":0}, - {"matrix":[0,10], "x":10, "y":0}, - {"matrix":[0,11], "x":11, "y":0}, - {"matrix":[0,12], "x":12, "y":0}, - {"matrix":[0,13], "x":13, "y":0, "w":2}, - {"matrix":[0,14], "x":15, "y":0}, - - {"matrix":[1, 0], "x":0, "y":2, "w":1.5}, - {"matrix":[1, 1], "x":1.5, "y":2}, - {"matrix":[1, 2], "x":2.5, "y":2}, - {"matrix":[1, 3], "x":3.5, "y":2}, - {"matrix":[1, 4], "x":4.5, "y":2}, - {"matrix":[1, 5], "x":5.5, "y":2}, - {"matrix":[1, 6], "x":6.5, "y":2}, - {"matrix":[1, 7], "x":7.5, "y":2}, - {"matrix":[1, 8], "x":8.5, "y":2}, - {"matrix":[1, 9], "x":9.5, "y":2}, - {"matrix":[1,10], "x":10.5, "y":2}, - {"matrix":[1,11], "x":11.5, "y":2}, - {"matrix":[1,12], "x":12.5, "y":2}, - {"matrix":[1,13], "x":13.5, "y":2, "w":1.5}, - {"matrix":[1,14], "x":15, "y":2}, - - {"matrix":[2, 0], "x":0, "y":3, "w":1.75}, - {"matrix":[2, 1], "x":1.75, "y":3}, - {"matrix":[2, 2], "x":2.75, "y":3}, - {"matrix":[2, 3], "x":3.75, "y":3}, - {"matrix":[2, 4], "x":4.75, "y":3}, - {"matrix":[2, 5], "x":5.75, "y":3}, - {"matrix":[2, 6], "x":6.75, "y":3}, - {"matrix":[2, 7], "x":7.75, "y":3}, - {"matrix":[2, 8], "x":8.75, "y":3}, - {"matrix":[2, 9], "x":9.75, "y":3}, - {"matrix":[2,10], "x":10.75, "y":3}, - {"matrix":[2,11], "x":11.75, "y":3}, - {"matrix":[2,13], "x":12.75, "y":3, "w":2.25}, - {"matrix":[2,14], "x":15, "y":3}, - - {"matrix":[3, 0], "x":0, "y":4, "w":2.25}, - {"matrix":[3, 2], "x":2.25, "y":4}, - {"matrix":[3, 3], "x":3.25, "y":4}, - {"matrix":[3, 4], "x":4.25, "y":4}, - {"matrix":[3, 5], "x":5.25, "y":4}, - {"matrix":[3, 6], "x":6.25, "y":4}, - {"matrix":[3, 7], "x":7.25, "y":4}, - {"matrix":[3, 8], "x":8.25, "y":4}, - {"matrix":[3, 9], "x":9.25, "y":4}, - {"matrix":[3,10], "x":10.25, "y":4}, - {"matrix":[3,11], "x":11.25, "y":4}, - {"matrix":[3,12], "x":11.25, "y":4, "w":1.75}, - {"matrix":[3,13], "x":14, "y":4}, - {"matrix":[3,14], "x":15, "y":4}, - - {"matrix":[4, 0], "x":0, "y":5, "w":1.25}, - {"matrix":[4, 1], "x":1.25, "y":5, "w":1.25}, - {"matrix":[4, 2], "x":2.5, "y":5, "w":1.25}, - {"matrix":[4, 6], "x":3.75, "y":5, "w":6.25}, - {"matrix":[4, 9], "x":10, "y":5}, - {"matrix":[4,10], "x":11, "y":5}, - {"matrix":[4,11], "x":12, "y":5}, - {"matrix":[4,12], "x":13, "y":5}, - {"matrix":[4,13], "x":14, "y":5}, - {"matrix":[4,14], "x":15, "y":5} - ] - }, - "LAYOUT_iso_69": { - "layout": [ - {"matrix":[0, 0], "x":0, "y":0}, - {"matrix":[0, 1], "x":1, "y":0}, - {"matrix":[0, 2], "x":2, "y":0}, - {"matrix":[0, 3], "x":3, "y":0}, - {"matrix":[0, 4], "x":4, "y":0}, - {"matrix":[0, 5], "x":5, "y":0}, - {"matrix":[0, 6], "x":6, "y":0}, - {"matrix":[0, 7], "x":7, "y":0}, - {"matrix":[0, 8], "x":8, "y":0}, - {"matrix":[0, 9], "x":9, "y":0}, - {"matrix":[0,10], "x":10, "y":0}, - {"matrix":[0,11], "x":11, "y":0}, - {"matrix":[0,12], "x":12, "y":0}, - {"matrix":[0,13], "x":13, "y":0, "w":2}, - {"matrix":[0,14], "x":15, "y":0}, - - {"matrix":[1, 0], "x":0, "y":2, "w":1.5}, - {"matrix":[1, 1], "x":1.5, "y":2}, - {"matrix":[1, 2], "x":2.5, "y":2}, - {"matrix":[1, 3], "x":3.5, "y":2}, - {"matrix":[1, 4], "x":4.5, "y":2}, - {"matrix":[1, 5], "x":5.5, "y":2}, - {"matrix":[1, 6], "x":6.5, "y":2}, - {"matrix":[1, 7], "x":7.5, "y":2}, - {"matrix":[1, 8], "x":8.5, "y":2}, - {"matrix":[1, 9], "x":9.5, "y":2}, - {"matrix":[1,10], "x":10.5, "y":2}, - {"matrix":[1,11], "x":11.5, "y":2}, - {"matrix":[1,12], "x":12.5, "y":2}, - {"matrix":[1,14], "x":15, "y":2}, - - {"matrix":[2, 0], "x":0, "y":3, "w":1.75}, - {"matrix":[2, 1], "x":1.75, "y":3}, - {"matrix":[2, 2], "x":2.75, "y":3}, - {"matrix":[2, 3], "x":3.75, "y":3}, - {"matrix":[2, 4], "x":4.75, "y":3}, - {"matrix":[2, 5], "x":5.75, "y":3}, - {"matrix":[2, 6], "x":6.75, "y":3}, - {"matrix":[2, 7], "x":7.75, "y":3}, - {"matrix":[2, 8], "x":8.75, "y":3}, - {"matrix":[2, 9], "x":9.75, "y":3}, - {"matrix":[2,10], "x":10.75, "y":3}, - {"matrix":[2,11], "x":11.75, "y":3}, - {"matrix":[2,13], "x":12.75, "y":3}, - {"matrix":[1,13], "x":13.75, "y":2, "w":1.25, "h": 2}, - {"matrix":[2,14], "x":15, "y":3}, - - {"matrix":[3, 0], "x":0, "y":4, "w":1.25}, - {"matrix":[3, 1], "x":1.25, "y":4}, - {"matrix":[3, 2], "x":2.25, "y":4}, - {"matrix":[3, 3], "x":3.25, "y":4}, - {"matrix":[3, 4], "x":4.25, "y":4}, - {"matrix":[3, 5], "x":5.25, "y":4}, - {"matrix":[3, 6], "x":6.25, "y":4}, - {"matrix":[3, 7], "x":7.25, "y":4}, - {"matrix":[3, 8], "x":8.25, "y":4}, - {"matrix":[3, 9], "x":9.25, "y":4}, - {"matrix":[3,10], "x":10.25, "y":4}, - {"matrix":[3,11], "x":11.25, "y":4}, - {"matrix":[3,12], "x":11.25, "y":4, "w":1.75}, - {"matrix":[3,13], "x":14, "y":4}, - {"matrix":[3,14], "x":15, "y":4}, - - {"matrix":[4, 0], "x":0, "y":5, "w":1.25}, - {"matrix":[4, 1], "x":1.25, "y":5, "w":1.25}, - {"matrix":[4, 2], "x":2.5, "y":5, "w":1.25}, - {"matrix":[4, 6], "x":3.75, "y":5, "w":6.25}, - {"matrix":[4, 9], "x":10, "y":5}, - {"matrix":[4,10], "x":11, "y":5}, - {"matrix":[4,11], "x":12, "y":5}, - {"matrix":[4,12], "x":13, "y":5}, - {"matrix":[4,13], "x":14, "y":5}, - {"matrix":[4,14], "x":15, "y":5} - ] - }, - "LAYOUT": { - "layout": [ - {"matrix":[0,0], "x":0, "y":0}, - {"matrix":[0,1], "x":1, "y":0}, - {"matrix":[0,2], "x":2, "y":0}, - {"matrix":[0,3], "x":3, "y":0}, - {"matrix":[0,4], "x":4, "y":0}, - {"matrix":[0,5], "x":5, "y":0}, - {"matrix":[0,6], "x":6, "y":0}, - {"matrix":[0,7], "x":7, "y":0}, - {"matrix":[0,8], "x":8, "y":0}, - {"matrix":[0,9], "x":9, "y":0}, - {"matrix":[0,10], "x":10, "y":0}, - {"matrix":[0,11], "x":11, "y":0}, - {"matrix":[0,12], "x":12, "y":0}, - {"matrix":[2,12], "x":13, "y":0}, - {"matrix":[0,13], "x":14, "y":0}, - {"matrix":[0,14], "x":15, "y":0}, - - {"matrix":[1,0], "x":0, "y":1, "w":1.5}, - {"matrix":[1,1], "x":1.5, "y":1}, - {"matrix":[1,2], "x":2.5, "y":1}, - {"matrix":[1,3], "x":3.5, "y":1}, - {"matrix":[1,4], "x":4.5, "y":1}, - {"matrix":[1,5], "x":5.5, "y":1}, - {"matrix":[1,6], "x":6.5, "y":1}, - {"matrix":[1,7], "x":7.5, "y":1}, - {"matrix":[1,8], "x":8.5, "y":1}, - {"matrix":[1,9], "x":9.5, "y":1}, - {"matrix":[1,10], "x":10.5, "y":1}, - {"matrix":[1,11], "x":11.5, "y":1}, - {"matrix":[1,12], "x":12.5, "y":1}, - {"matrix":[1,14], "x":15, "y":1}, - - {"matrix":[2,0], "x":0, "y":2, "w":1.75}, - {"matrix":[2,1], "x":1.75, "y":2}, - {"matrix":[2,2], "x":2.75, "y":2}, - {"matrix":[2,3], "x":3.75, "y":2}, - {"matrix":[2,4], "x":4.75, "y":2}, - {"matrix":[2,5], "x":5.75, "y":2}, - {"matrix":[2,6], "x":6.75, "y":2}, - {"matrix":[2,7], "x":7.75, "y":2}, - {"matrix":[2,8], "x":8.75, "y":2}, - {"matrix":[2,9], "x":9.75, "y":2}, - {"matrix":[2,10], "x":10.75, "y":2}, - {"matrix":[2,11], "x":11.75, "y":2}, - {"matrix":[2,13], "x":12.75, "y":2}, - {"matrix":[1,13], "x":13.75, "y":1, "w":1.25, "h":2}, - {"matrix":[2,14], "x":15, "y":2}, - - {"matrix":[3,0], "x":0, "y":3, "w":2.25}, - {"matrix":[3,2], "x":2.25, "y":3}, - {"matrix":[3,3], "x":3.25, "y":3}, - {"matrix":[3,4], "x":4.25, "y":3}, - {"matrix":[3,5], "x":5.25, "y":3}, - {"matrix":[3,6], "x":6.25, "y":3}, - {"matrix":[3,7], "x":7.25, "y":3}, - {"matrix":[3,8], "x":8.25, "y":3}, - {"matrix":[3,9], "x":9.25, "y":3}, - {"matrix":[3,10], "x":10.25, "y":3}, - {"matrix":[3,11], "x":11.25, "y":3}, - {"matrix":[3,12], "x":12.25, "y":3}, - {"matrix":[3,13], "x":13.25, "y":3, "w":1.75}, - {"matrix":[3,14], "x":15, "y":3}, - - {"matrix":[4,0], "x":0, "y":4, "w":1.25}, - {"matrix":[4,1], "x":1.25, "y":4}, - {"matrix":[4,2], "x":2.25, "y":4, "w":1.25}, - {"matrix":[4,3], "x":3.5, "y":4}, - {"matrix":[4,6], "x":4.5, "y":4, "w":4.5}, - {"matrix":[4,8], "x":9, "y":4}, - {"matrix":[4,9], "x":10, "y":4}, - {"matrix":[4,10], "x":11, "y":4}, - {"matrix":[4,11], "x":12, "y":4}, - {"matrix":[4,12], "x":13, "y":4}, - {"matrix":[4,13], "x":14, "y":4}, - {"matrix":[4,14], "x":15, "y":4} - ] - } - } -} diff --git a/keyboards/keychron/k6_pro/iso/rgb/config.h b/keyboards/keychron/k6_pro/iso/rgb/config.h deleted file mode 100644 index 44f9f8af52..0000000000 --- a/keyboards/keychron/k6_pro/iso/rgb/config.h +++ /dev/null @@ -1,50 +0,0 @@ -/* Copyright 2021 @ 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 . - */ - -#ifdef RGB_MATRIX_ENABLE -/* RGB Matrix driver configuration */ -# define DRIVER_COUNT 2 - -# define DRIVER_ADDR_1 0b1110111 -# define DRIVER_ADDR_2 0b1110100 -# define DRIVER_1_LED_COUNT 31 -# define DRIVER_2_LED_COUNT 38 -# define RGB_MATRIX_LED_COUNT (DRIVER_1_LED_COUNT + DRIVER_2_LED_COUNT) - -/* Set to infinit, which is use in USB mode by default */ -# define RGB_MATRIX_TIMEOUT RGB_MATRIX_TIMEOUT_INFINITE -/* Allow shutdown of led driver to save power */ -# define RGB_MATRIX_DRIVER_SHUTDOWN_ENABLE -/* Turn off backlight on low brightness to save power */ -# define RGB_MATRIX_BRIGHTNESS_TURN_OFF_VAL 32 - -# define DIM_CAPS_LOCK -# define CAPS_LOCK_INDEX 30 -# define LOW_BAT_IND_INDEX 62 - -/* RGB Matrix Animation modes. Explicitly enabled - * For full list of effects, see: - * https://docs.qmk.fm/#/feature_rgb_matrix?id=rgb-matrix-effects - */ - -# define RGB_MATRIX_KEYPRESSES -# define RGB_MATRIX_FRAMEBUFFER_EFFECTS - -/* Set LED driver current */ -# define SNLED27351_CURRENT_TUNE \ - { 0x38, 0x38, 0x38, 0x38, 0x38, 0x38, 0x38, 0x38, 0x38, 0x38, 0x38, 0x38 } - -#endif diff --git a/keyboards/keychron/k6_pro/iso/rgb/info.json b/keyboards/keychron/k6_pro/iso/rgb/info.json deleted file mode 100644 index 510520a145..0000000000 --- a/keyboards/keychron/k6_pro/iso/rgb/info.json +++ /dev/null @@ -1,35 +0,0 @@ -{ - "usb": { - "pid": "0x0261", - "device_version": "1.0.0" - }, - "features": { - "rgb_matrix": true - }, - "rgb_matrix": { - "driver": "snled27351", - "animations": { - "breathing": true, - "band_spiral_val": true, - "cycle_all": true, - "cycle_left_right": true, - "cycle_up_down": true, - "rainbow_moving_chevron": true, - "cycle_out_in": true, - "cycle_out_in_dual": true, - "cycle_pinwheel": true, - "cycle_spiral": true, - "dual_beacon": true, - "rainbow_beacon": true, - "jellybean_raindrops": true, - "pixel_rain": true, - "typing_heatmap": true, - "digital_rain": true, - "solid_reactive_simple": true, - "solid_reactive_multiwide": true, - "solid_reactive_multinexus": true, - "splash": true, - "solid_splash": true - } - } -} diff --git a/keyboards/keychron/k6_pro/iso/rgb/keymaps/default/keymap.c b/keyboards/keychron/k6_pro/iso/rgb/keymaps/default/keymap.c deleted file mode 100644 index df7b7a2d3e..0000000000 --- a/keyboards/keychron/k6_pro/iso/rgb/keymaps/default/keymap.c +++ /dev/null @@ -1,63 +0,0 @@ -/* Copyright 2021 @ 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 . - */ - -#include QMK_KEYBOARD_H - -// clang-format off -enum layers{ - MAC_BASE, - WIN_BASE, - MAC_FN1, - WIN_FN1, - FN2 -}; - -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { -[MAC_BASE] = LAYOUT_iso_69( - 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, RGB_MOD, - 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_HOME, - 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_NUHS, KC_ENT, KC_PGUP, - KC_LSFT, KC_NUBS, 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_PGDN, - KC_LCTL, KC_LOPTN, KC_LCMMD, KC_SPC, KC_RCMMD,MO(MAC_FN1),MO(FN2), KC_LEFT, KC_DOWN, KC_RGHT), - -[WIN_BASE] = LAYOUT_iso_69( - 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, RGB_MOD, - 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_HOME, - 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_NUHS, KC_ENT, KC_PGUP, - KC_LSFT, KC_NUBS, 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_PGDN, - KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(WIN_FN1),MO(FN2), KC_LEFT, KC_DOWN, KC_RGHT), - -[MAC_FN1] = LAYOUT_iso_69( - KC_GRV, KC_BRID, KC_BRIU, KC_MCTL, KC_LPAD, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, RGB_TOG, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - -[WIN_FN1] = LAYOUT_iso_69( - KC_GRV, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, RGB_TOG, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - -[FN2] = LAYOUT_iso_69( - KC_TILD, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, BAT_LVL, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), -}; diff --git a/keyboards/keychron/k6_pro/iso/rgb/keymaps/via/keymap.c b/keyboards/keychron/k6_pro/iso/rgb/keymaps/via/keymap.c deleted file mode 100644 index df7b7a2d3e..0000000000 --- a/keyboards/keychron/k6_pro/iso/rgb/keymaps/via/keymap.c +++ /dev/null @@ -1,63 +0,0 @@ -/* Copyright 2021 @ 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 . - */ - -#include QMK_KEYBOARD_H - -// clang-format off -enum layers{ - MAC_BASE, - WIN_BASE, - MAC_FN1, - WIN_FN1, - FN2 -}; - -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { -[MAC_BASE] = LAYOUT_iso_69( - 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, RGB_MOD, - 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_HOME, - 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_NUHS, KC_ENT, KC_PGUP, - KC_LSFT, KC_NUBS, 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_PGDN, - KC_LCTL, KC_LOPTN, KC_LCMMD, KC_SPC, KC_RCMMD,MO(MAC_FN1),MO(FN2), KC_LEFT, KC_DOWN, KC_RGHT), - -[WIN_BASE] = LAYOUT_iso_69( - 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, RGB_MOD, - 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_HOME, - 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_NUHS, KC_ENT, KC_PGUP, - KC_LSFT, KC_NUBS, 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_PGDN, - KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(WIN_FN1),MO(FN2), KC_LEFT, KC_DOWN, KC_RGHT), - -[MAC_FN1] = LAYOUT_iso_69( - KC_GRV, KC_BRID, KC_BRIU, KC_MCTL, KC_LPAD, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, RGB_TOG, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - -[WIN_FN1] = LAYOUT_iso_69( - KC_GRV, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, RGB_TOG, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - -[FN2] = LAYOUT_iso_69( - KC_TILD, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, BAT_LVL, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), -}; diff --git a/keyboards/keychron/k6_pro/iso/rgb/keymaps/via/rules.mk b/keyboards/keychron/k6_pro/iso/rgb/keymaps/via/rules.mk deleted file mode 100644 index 4eae6e776c..0000000000 --- a/keyboards/keychron/k6_pro/iso/rgb/keymaps/via/rules.mk +++ /dev/null @@ -1,2 +0,0 @@ -VIA_ENABLE = yes -OPT_DEFS += -DDYNAMIC_KEYMAP_LAYER_COUNT=5 diff --git a/keyboards/keychron/k6_pro/iso/rgb/rgb.c b/keyboards/keychron/k6_pro/iso/rgb/rgb.c deleted file mode 100644 index 65cc226ddb..0000000000 --- a/keyboards/keychron/k6_pro/iso/rgb/rgb.c +++ /dev/null @@ -1,126 +0,0 @@ -/* Copyright 2021 @ 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 . - */ - -#include "quantum.h" - -// clang-format off -#ifdef RGB_MATRIX_ENABLE -const snled27351_led_t g_snled27351_leds[RGB_MATRIX_LED_COUNT] = { -/* Refer to IS31 manual for these locations - * driver - * | R location - * | | G location - * | | | B location - * | | | | */ - {0, C_16, A_16, B_16}, - {0, C_15, A_15, B_15}, - {0, C_14, A_14, B_14}, - {0, C_13, A_13, B_13}, - {0, C_12, A_12, B_12}, - {0, C_11, A_11, B_11}, - {0, C_10, A_10, B_10}, - {0, C_9, A_9, B_9}, - {0, C_8, A_8, B_8}, - {0, C_7, A_7, B_7}, - {0, C_6, A_6, B_6}, - {0, C_5, A_5, B_5}, - {0, C_4, A_4, B_4}, - {0, C_3, A_3, B_3}, - {0, C_2, A_2, B_2}, - - {0, F_16, D_16, E_16}, - {0, F_15, D_15, E_15}, - {0, F_14, D_14, E_14}, - {0, F_13, D_13, E_13}, - {0, F_12, D_12, E_12}, - {0, F_11, D_11, E_11}, - {0, F_10, D_10, E_10}, - {0, F_9, D_9, E_9}, - {0, F_8, D_8, E_8}, - {0, F_7, D_7, E_7}, - {0, F_6, D_6, E_6}, - {0, F_5, D_5, E_5}, - {0, F_4, D_4, E_4}, - {0, F_3, D_3, E_3}, - {0, F_2, D_2, E_2}, - - {1, C_16, A_16, B_16}, - {1, C_15, A_15, B_15}, - {1, C_14, A_14, B_14}, - {1, C_13, A_13, B_13}, - {1, C_12, A_12, B_12}, - {1, C_11, A_11, B_11}, - {1, C_10, A_10, B_10}, - {1, C_9, A_9, B_9}, - {1, C_8, A_8, B_8}, - {1, C_7, A_7, B_7}, - {1, C_6, A_6, B_6}, - {1, C_5, A_5, B_5}, - {1, C_3, A_3, B_3}, - {1, C_2, A_2, B_2}, - - {1, I_16, G_16, H_16}, - {1, I_15, G_15, H_15}, - {1, I_14, G_14, H_14}, - {1, I_13, G_13, H_13}, - {1, I_12, G_12, H_12}, - {1, I_11, G_11, H_11}, - {1, I_10, G_10, H_10}, - {1, I_9, G_9, H_9}, - {1, I_8, G_8, H_8}, - {1, I_7, G_7, H_7}, - {1, I_6, G_6, H_6}, - {1, I_5, G_5, H_5}, - {1, I_4, G_4, H_4}, - {1, I_3, G_3, H_3}, - {1, I_2, G_2, H_2}, - - {1, F_16, D_16, E_16}, - {1, F_15, D_15, E_15}, - {1, F_14, D_14, E_14}, - {1, F_10, D_10, E_10}, - {1, F_7, D_7, E_7}, - {1, F_6, D_6, E_6}, - {1, F_5, D_5, E_5}, - {1, F_4, D_4, E_4}, - {1, F_3, D_3, E_3}, - {1, F_2, D_2, E_2} -}; - -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, 40, 41, NO_LED, 42, 43 }, - { 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58 }, - { 59, 60, 61, NO_LED, NO_LED, NO_LED, 62, NO_LED, NO_LED, 63, 64, 65, 66, 67, 68 } - }, - { - {0, 0}, {14, 0}, {29, 0}, { 44, 0}, { 59, 0}, { 74, 0}, { 89, 0}, {104, 0}, {119, 0}, {134, 0}, {149, 0}, {164, 0}, {179, 0}, {201, 0}, {224, 0}, - {3,16}, {22,16}, {37,16}, { 52,16}, { 67,16}, { 82,16}, { 97,16}, {112,16}, {126,16}, {141,16}, {156,16}, {171,16}, {186,16}, {205,16}, {224,16}, - {5,32}, {26,32}, {41,32}, { 55,32}, { 70,32}, { 85,32}, {100,32}, {115,32}, {130,32}, {145,32}, {160,32}, {175,32}, {199,32}, {224,32}, - {2,48}, {15,48}, {33,48}, {48,48}, { 63,48}, { 78,48}, { 93,48}, {108,48}, {123,48}, {138,48}, {153,48}, {167,48}, {188,48}, {209,48}, {224,48}, - {1,64}, {20,64}, {39,64}, { 95,64}, {149,64}, {164,64}, {179,64}, {194,64}, {209,64}, {224,64} - }, - { - 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, - 4, 8, 8, 8, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, - 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, - 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, - 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, - } -}; -#endif diff --git a/keyboards/keychron/k6_pro/iso/rgb/rules.mk b/keyboards/keychron/k6_pro/iso/rgb/rules.mk deleted file mode 100644 index f886ea2e8e..0000000000 --- a/keyboards/keychron/k6_pro/iso/rgb/rules.mk +++ /dev/null @@ -1 +0,0 @@ -# This file intentionally blank \ No newline at end of file diff --git a/keyboards/keychron/k6_pro/iso/white/config.h b/keyboards/keychron/k6_pro/iso/white/config.h deleted file mode 100644 index f827608a64..0000000000 --- a/keyboards/keychron/k6_pro/iso/white/config.h +++ /dev/null @@ -1,46 +0,0 @@ -/* Copyright 2021 @ 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 . - */ - -#ifdef LED_MATRIX_ENABLE -/* LED matrix driver configuration */ -# define DRIVER_COUNT 1 -# define SNLED27351_I2C_ADDRESS_1 SNLED27351_I2C_ADDRESS_GND -# define LED_MATRIX_LED_COUNT 69 - -/* Set to infinit, which is use in USB mode by default */ -# define LED_MATRIX_TIMEOUT LED_MATRIX_TIMEOUT_INFINITE -/* Allow shutdown of led driver to save power */ -# define LED_MATRIX_DRIVER_SHUTDOWN_ENABLE -/* Turn off backlight on low brightness to save power */ -# define LED_MATRIX_BRIGHTNESS_TURN_OFF_VAL 32 - -# define DIM_CAPS_LOCK -# define CAPS_LOCK_INDEX 30 -# define LOW_BAT_IND_INDEX 62 - -/* LED Matrix Animation modes. Explicitly enabled - * For full list of effects, see: - * https://docs.qmk.fm/#/feature_led_matrix?id=led-matrix-effects - */ -# define LED_MATRIX_KEYPRESSES - -/* Use first 6 channels of LED driver */ -# define PHASE_CHANNEL MSKPHASE_6CHANNEL - -/* Set LED driver current */ -# define SNLED27351_CURRENT_TUNE { 0x60, 0x60, 0x60, 0x60, 0x60, 0x60, 0x60, 0x60, 0x60, 0x60, 0x60, 0x60 } - -#endif diff --git a/keyboards/keychron/k6_pro/iso/white/info.json b/keyboards/keychron/k6_pro/iso/white/info.json deleted file mode 100644 index 8d1bece316..0000000000 --- a/keyboards/keychron/k6_pro/iso/white/info.json +++ /dev/null @@ -1,30 +0,0 @@ -{ - "usb": { - "pid": "0x0264", - "device_version": "1.0.0" - }, - "features": { - "led_matrix": true - }, - "led_matrix": { - "driver": "snled27351", - "animations": { - "none": true, - "solid": true, - "breathing": true, - "band_pinwheel": true, - "band_spiral": true, - "cycle_left_right": true, - "cycle_up_down": true, - "cycle_out_in": true, - "dual_beacon": true, - "solid_reactive_simple": true, - "solid_reactive_multiwide": true, - "solid_reactive_multinexus": true, - "solid_splash": true, - "wave_left_right": true, - "wave_up_down": true, - "effect_max": true - } - } -} diff --git a/keyboards/keychron/k6_pro/iso/white/keymaps/default/keymap.c b/keyboards/keychron/k6_pro/iso/white/keymaps/default/keymap.c deleted file mode 100644 index 6afa70ecf9..0000000000 --- a/keyboards/keychron/k6_pro/iso/white/keymaps/default/keymap.c +++ /dev/null @@ -1,63 +0,0 @@ -/* Copyright 2021 @ 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 . - */ - -#include QMK_KEYBOARD_H - -// clang-format off -enum layers{ - MAC_BASE, - WIN_BASE, - MAC_FN1, - WIN_FN1, - FN2 -}; - -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { -[MAC_BASE] = LAYOUT_iso_69( - 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, BL_STEP, - 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_HOME, - 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_NUHS, KC_ENT, KC_PGUP, - KC_LSFT, KC_NUBS, 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_PGDN, - KC_LCTL, KC_LOPTN, KC_LCMMD, KC_SPC, KC_RCMMD,MO(MAC_FN1),MO(FN2), KC_LEFT, KC_DOWN, KC_RGHT), - -[WIN_BASE] = LAYOUT_iso_69( - 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, BL_STEP, - 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_HOME, - 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_NUHS, KC_ENT, KC_PGUP, - KC_LSFT, KC_NUBS, 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_PGDN, - KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT,MO(WIN_FN1),MO(FN2), KC_LEFT, KC_DOWN, KC_RGHT), - -[MAC_FN1] = LAYOUT_iso_69( - KC_GRV, KC_BRID, KC_BRIU, KC_MCTL, KC_LPAD, BL_DOWN, BL_UP, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, BL_TOGG, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - BL_TOGG, BL_STEP, BL_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, BL_DOWN, _______, _______, _______, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - -[WIN_FN1] = LAYOUT_iso_69( - KC_GRV, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, BL_DOWN, BL_UP, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, BL_TOGG, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - BL_TOGG, BL_STEP, BL_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, BL_DOWN, _______, _______, _______, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - -[FN2] = LAYOUT_iso_69( - KC_TILD, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, BAT_LVL, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), -}; diff --git a/keyboards/keychron/k6_pro/iso/white/keymaps/via/keymap.c b/keyboards/keychron/k6_pro/iso/white/keymaps/via/keymap.c deleted file mode 100644 index 6afa70ecf9..0000000000 --- a/keyboards/keychron/k6_pro/iso/white/keymaps/via/keymap.c +++ /dev/null @@ -1,63 +0,0 @@ -/* Copyright 2021 @ 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 . - */ - -#include QMK_KEYBOARD_H - -// clang-format off -enum layers{ - MAC_BASE, - WIN_BASE, - MAC_FN1, - WIN_FN1, - FN2 -}; - -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { -[MAC_BASE] = LAYOUT_iso_69( - 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, BL_STEP, - 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_HOME, - 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_NUHS, KC_ENT, KC_PGUP, - KC_LSFT, KC_NUBS, 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_PGDN, - KC_LCTL, KC_LOPTN, KC_LCMMD, KC_SPC, KC_RCMMD,MO(MAC_FN1),MO(FN2), KC_LEFT, KC_DOWN, KC_RGHT), - -[WIN_BASE] = LAYOUT_iso_69( - 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, BL_STEP, - 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_HOME, - 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_NUHS, KC_ENT, KC_PGUP, - KC_LSFT, KC_NUBS, 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_PGDN, - KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT,MO(WIN_FN1),MO(FN2), KC_LEFT, KC_DOWN, KC_RGHT), - -[MAC_FN1] = LAYOUT_iso_69( - KC_GRV, KC_BRID, KC_BRIU, KC_MCTL, KC_LPAD, BL_DOWN, BL_UP, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, BL_TOGG, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - BL_TOGG, BL_STEP, BL_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, BL_DOWN, _______, _______, _______, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - -[WIN_FN1] = LAYOUT_iso_69( - KC_GRV, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, BL_DOWN, BL_UP, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, BL_TOGG, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - BL_TOGG, BL_STEP, BL_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, BL_DOWN, _______, _______, _______, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - -[FN2] = LAYOUT_iso_69( - KC_TILD, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, BAT_LVL, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), -}; diff --git a/keyboards/keychron/k6_pro/iso/white/keymaps/via/rules.mk b/keyboards/keychron/k6_pro/iso/white/keymaps/via/rules.mk deleted file mode 100644 index 4eae6e776c..0000000000 --- a/keyboards/keychron/k6_pro/iso/white/keymaps/via/rules.mk +++ /dev/null @@ -1,2 +0,0 @@ -VIA_ENABLE = yes -OPT_DEFS += -DDYNAMIC_KEYMAP_LAYER_COUNT=5 diff --git a/keyboards/keychron/k6_pro/iso/white/rules.mk b/keyboards/keychron/k6_pro/iso/white/rules.mk deleted file mode 100644 index f886ea2e8e..0000000000 --- a/keyboards/keychron/k6_pro/iso/white/rules.mk +++ /dev/null @@ -1 +0,0 @@ -# This file intentionally blank \ No newline at end of file diff --git a/keyboards/keychron/k6_pro/iso/white/white.c b/keyboards/keychron/k6_pro/iso/white/white.c deleted file mode 100644 index 8e84c0376a..0000000000 --- a/keyboards/keychron/k6_pro/iso/white/white.c +++ /dev/null @@ -1,125 +0,0 @@ -/* Copyright 2022 @ 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 . - */ - -#include "quantum.h" - -// clang-format off -#ifdef LED_MATRIX_ENABLE -const snled27351_led_t g_snled27351_leds[LED_MATRIX_LED_COUNT] = { -/* Refer to IS31 manual for these locations - * driver - * | LED address - * | | */ - {0, B_16}, - {0, B_15}, - {0, B_14}, - {0, B_13}, - {0, B_12}, - {0, B_11}, - {0, B_10}, - {0, B_9}, - {0, B_8}, - {0, B_7}, - {0, B_6}, - {0, B_5}, - {0, B_4}, - {0, B_3}, - {0, B_2}, - - {0, C_16}, - {0, C_15}, - {0, C_14}, - {0, C_13}, - {0, C_12}, - {0, C_11}, - {0, C_10}, - {0, C_9}, - {0, C_8}, - {0, C_7}, - {0, C_6}, - {0, C_5}, - {0, C_4}, - {0, C_3}, - {0, C_2}, - - {0, D_16}, - {0, D_15}, - {0, D_14}, - {0, D_13}, - {0, D_12}, - {0, D_11}, - {0, D_10}, - {0, D_9}, - {0, D_8}, - {0, D_7}, - {0, D_6}, - {0, D_5}, - {0, D_3}, - {0, D_2}, - - {0, E_16}, - {0, E_15}, - {0, E_14}, - {0, E_13}, - {0, E_12}, - {0, E_11}, - {0, E_10}, - {0, E_9}, - {0, E_8}, - {0, E_7}, - {0, E_6}, - {0, E_5}, - {0, E_4}, - {0, E_3}, - {0, E_2}, - - {0, F_16}, - {0, F_15}, - {0, F_14}, - - {0, F_10}, - {0, F_6}, - {0, F_5}, - {0, F_4}, - {0, F_3}, - {0, F_2} -}; - -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, 40, 41, NO_LED, 42, 43 }, - { 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58 }, - { 59, 60, 61, NO_LED, NO_LED, NO_LED, 62, NO_LED, NO_LED, 63, 64, 65, 66, 67, 68 } - }, - { - {0, 0}, {14, 0}, {29, 0}, { 44, 0}, { 59, 0}, { 74, 0}, { 89, 0}, {104, 0}, {119, 0}, {134, 0}, {149, 0}, {164, 0}, {179, 0}, {201, 0}, {224, 0}, - {3,16}, {22,16}, {37,16}, { 52,16}, { 67,16}, { 82,16}, { 97,16}, {112,16}, {126,16}, {141,16}, {156,16}, {171,16}, {186,16}, {205,16}, {224,16}, - {5,32}, {26,32}, {41,32}, { 55,32}, { 70,32}, { 85,32}, {100,32}, {115,32}, {130,32}, {145,32}, {160,32}, {175,32}, {199,32}, {224,32}, - {2,48}, {15,48}, {33,48}, {48,48}, { 63,48}, { 78,48}, { 93,48}, {108,48}, {123,48}, {138,48}, {153,48}, {167,48}, {188,48}, {209,48}, {224,48}, - {1,64}, {20,64}, {39,64}, { 95,64}, {149,64}, {164,64}, {179,64}, {194,64}, {209,64}, {224,64} - }, - { - 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, - 4, 8, 8, 8, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, - 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, - 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, - 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, - } -}; - -#endif diff --git a/keyboards/keychron/k6_pro/jis/rgb/config.h b/keyboards/keychron/k6_pro/jis/rgb/config.h deleted file mode 100644 index 26a71c58a3..0000000000 --- a/keyboards/keychron/k6_pro/jis/rgb/config.h +++ /dev/null @@ -1,49 +0,0 @@ -/* Copyright 2021 @ 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 . - */ - -#ifdef RGB_MATRIX_ENABLE -/* RGB Matrix Driver Configuration */ -# define DRIVER_COUNT 2 - -# define DRIVER_ADDR_1 0b1110111 -# define DRIVER_ADDR_2 0b1110100 -# define DRIVER_1_LED_COUNT 30 -# define DRIVER_2_LED_COUNT 41 -# define RGB_MATRIX_LED_COUNT (DRIVER_1_LED_COUNT + DRIVER_2_LED_COUNT) - -/* Set to infinit, which is use in USB mode by default */ -# define RGB_MATRIX_TIMEOUT RGB_MATRIX_TIMEOUT_INFINITE -/* Allow shutdown of led driver to save power */ -# define RGB_MATRIX_DRIVER_SHUTDOWN_ENABLE -/* Turn off backlight on low brightness to save power */ -# define RGB_MATRIX_BRIGHTNESS_TURN_OFF_VAL 32 - -# define DIM_CAPS_LOCK -# define CAPS_LOCK_INDEX 30 -# define LOW_BAT_IND_INDEX 63 - -// RGB Matrix Animation modes. Explicitly enabled -// For full list of effects, see: -// https://docs.qmk.fm/#/feature_rgb_matrix?id=rgb-matrix-effects - -# define RGB_MATRIX_KEYPRESSES -# define RGB_MATRIX_FRAMEBUFFER_EFFECTS - -/* Set LED driver current */ -# define SNLED27351_CURRENT_TUNE \ - { 0x38, 0x38, 0x38, 0x38, 0x38, 0x38, 0x38, 0x38, 0x38, 0x38, 0x38, 0x38 } - -#endif diff --git a/keyboards/keychron/k6_pro/jis/rgb/info.json b/keyboards/keychron/k6_pro/jis/rgb/info.json deleted file mode 100644 index 3fdab05c08..0000000000 --- a/keyboards/keychron/k6_pro/jis/rgb/info.json +++ /dev/null @@ -1,35 +0,0 @@ -{ - "usb": { - "pid": "0x0262", - "device_version": "1.0.0" - }, - "features": { - "rgb_matrix": true - }, - "rgb_matrix": { - "driver": "snled27351", - "animations": { - "breathing": true, - "band_spiral_val": true, - "cycle_all": true, - "cycle_left_right": true, - "cycle_up_down": true, - "rainbow_moving_chevron": true, - "cycle_out_in": true, - "cycle_out_in_dual": true, - "cycle_pinwheel": true, - "cycle_spiral": true, - "dual_beacon": true, - "rainbow_beacon": true, - "jellybean_raindrops": true, - "pixel_rain": true, - "typing_heatmap": true, - "digital_rain": true, - "solid_reactive_simple": true, - "solid_reactive_multiwide": true, - "solid_reactive_multinexus": true, - "splash": true, - "solid_splash": true - } - } -} diff --git a/keyboards/keychron/k6_pro/jis/rgb/keymaps/default/keymap.c b/keyboards/keychron/k6_pro/jis/rgb/keymaps/default/keymap.c deleted file mode 100644 index 884d028ca1..0000000000 --- a/keyboards/keychron/k6_pro/jis/rgb/keymaps/default/keymap.c +++ /dev/null @@ -1,63 +0,0 @@ -/* Copyright 2021 @ 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 . - */ - -#include QMK_KEYBOARD_H - -// clang-format off -enum layers{ - MAC_BASE, - WIN_BASE, - MAC_FN1, - WIN_FN1, - FN2 -}; - -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = 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_INT3, KC_BSPC, RGB_MOD, - 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_HOME, - 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_NUHS, KC_ENT, KC_PGUP, - KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_INT1, KC_RSFT, KC_PGDN, - KC_LCTL, KC_LOPTN, KC_LCMMD, KC_LNG2, KC_SPC, KC_LNG1, MO(MAC_FN1),MO(FN2), KC_LEFT, KC_UP, KC_DOWN, KC_RGHT), - - [WIN_BASE] = 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_INT3, KC_BSPC, RGB_MOD, - 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_HOME, - 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_NUHS, KC_ENT, KC_PGUP, - KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_INT1, KC_RSFT, KC_PGDN, - KC_LCTL, KC_LGUI, KC_LALT, KC_INT5, KC_SPC, KC_INT4, MO(WIN_FN1),MO(FN2), KC_LEFT, KC_UP, KC_DOWN, KC_RGHT), - - [MAC_FN1] = LAYOUT( - KC_GRV, KC_BRID, KC_BRIU, KC_MCTL, KC_LPAD, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_TRNS, KC_TRNS, RGB_TOG, - KC_TRNS, BT_HST1, BT_HST2, BT_HST3, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, NK_TOGG, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS), - - [WIN_FN1] = LAYOUT( - KC_GRV, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_TRNS, KC_TRNS, RGB_TOG, - KC_TRNS, BT_HST1, BT_HST2, BT_HST3, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, NK_TOGG, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS), - - [FN2] = LAYOUT( - KC_TILD, 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, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, BAT_LVL, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - 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/keychron/k6_pro/jis/rgb/keymaps/via/keymap.c b/keyboards/keychron/k6_pro/jis/rgb/keymaps/via/keymap.c deleted file mode 100644 index 41c63855cd..0000000000 --- a/keyboards/keychron/k6_pro/jis/rgb/keymaps/via/keymap.c +++ /dev/null @@ -1,64 +0,0 @@ -/* Copyright 2021 @ 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 . - */ - -#include QMK_KEYBOARD_H - -// clang-format off -enum layers{ - MAC_BASE, - WIN_BASE, - MAC_FN1, - WIN_FN1, - FN2 -}; - -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = 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_INT3, KC_BSPC, RGB_MOD, - 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_HOME, - 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_NUHS, KC_ENT, KC_PGUP, - KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_INT1, KC_RSFT, KC_PGDN, - KC_LCTL, KC_LOPTN, KC_LCMMD, KC_LNG2, KC_SPC, KC_LNG1, MO(MAC_FN1),MO(FN2), KC_LEFT, KC_UP, KC_DOWN, KC_RGHT), - - [WIN_BASE] = 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_INT3, KC_BSPC, RGB_MOD, - 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_HOME, - 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_NUHS, KC_ENT, KC_PGUP, - KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_INT1, KC_RSFT, KC_PGDN, - KC_LCTL, KC_LGUI, KC_LALT, KC_INT5, KC_SPC, KC_INT4, MO(WIN_FN1),MO(FN2), KC_LEFT, KC_UP, KC_DOWN, KC_RGHT), - - [MAC_FN1] = LAYOUT( - KC_GRV, KC_BRID, KC_BRIU, KC_MCTL, KC_LPAD, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_TRNS, KC_TRNS, RGB_TOG, - KC_TRNS, BT_HST1, BT_HST2, BT_HST3, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, NK_TOGG, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS), - - [WIN_FN1] = LAYOUT( - KC_GRV, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_TRNS, KC_TRNS, RGB_TOG, - KC_TRNS, BT_HST1, BT_HST2, BT_HST3, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, NK_TOGG, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS), - - [FN2] = LAYOUT( - KC_TILD, 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, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, BAT_LVL, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - 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/keychron/k6_pro/jis/rgb/keymaps/via/rules.mk b/keyboards/keychron/k6_pro/jis/rgb/keymaps/via/rules.mk deleted file mode 100644 index 4eae6e776c..0000000000 --- a/keyboards/keychron/k6_pro/jis/rgb/keymaps/via/rules.mk +++ /dev/null @@ -1,2 +0,0 @@ -VIA_ENABLE = yes -OPT_DEFS += -DDYNAMIC_KEYMAP_LAYER_COUNT=5 diff --git a/keyboards/keychron/k6_pro/jis/rgb/rgb.c b/keyboards/keychron/k6_pro/jis/rgb/rgb.c deleted file mode 100644 index 178bf50c30..0000000000 --- a/keyboards/keychron/k6_pro/jis/rgb/rgb.c +++ /dev/null @@ -1,133 +0,0 @@ -/* Copyright 2021 @ 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 . - */ - -#include "quantum.h" - -// clang-format off -#ifdef RGB_MATRIX_ENABLE -const snled27351_led_t g_snled27351_leds[RGB_MATRIX_LED_COUNT] = { -/* Refer to snled27351manual for these locations - * driver - * | R location - * | | G location - * | | | B location - * | | | | */ - {0, C_16, A_16, B_16}, - {0, C_15, A_15, B_15}, - {0, C_14, A_14, B_14}, - {0, C_13, A_13, B_13}, - {0, C_12, A_12, B_12}, - {0, C_11, A_11, B_11}, - {0, C_10, A_10, B_10}, - {0, C_9, A_9, B_9}, - {0, C_8, A_8, B_8}, - {0, C_7, A_7, B_7}, - {0, C_6, A_6, B_6}, - {0, C_5, A_5, B_5}, - {0, C_4, A_4, B_4}, - {1, C_4, A_4, B_4}, - {0, C_3, A_3, B_3}, - {0, C_2, A_2, B_2}, - - {0, F_16, D_16, E_16}, - {0, F_15, D_15, E_15}, - {0, F_14, D_14, E_14}, - {0, F_13, D_13, E_13}, - {0, F_12, D_12, E_12}, - {0, F_11, D_11, E_11}, - {0, F_10, D_10, E_10}, - {0, F_9, D_9, E_9}, - {0, F_8, D_8, E_8}, - {0, F_7, D_7, E_7}, - {0, F_6, D_6, E_6}, - {0, F_5, D_5, E_5}, - {0, F_4, D_4, E_4}, - {0, F_2, D_2, E_2}, - - {1, C_16, A_16, B_16}, - {1, C_15, A_15, B_15}, - {1, C_14, A_14, B_14}, - {1, C_13, A_13, B_13}, - {1, C_12, A_12, B_12}, - {1, C_11, A_11, B_11}, - {1, C_10, A_10, B_10}, - {1, C_9, A_9, B_9}, - {1, C_8, A_8, B_8}, - {1, C_7, A_7, B_7}, - {1, C_6, A_6, B_6}, - {1, C_5, A_5, B_5}, - {1, C_3, A_3, B_3}, - {0, F_3, D_3, E_3}, - {1, C_2, A_2, B_2}, - - {1, I_16, G_16, H_16}, - {1, I_14, G_14, H_14}, - {1, I_13, G_13, H_13}, - {1, I_12, G_12, H_12}, - {1, I_11, G_11, H_11}, - {1, I_10, G_10, H_10}, - {1, I_9, G_9, H_9}, - {1, I_8, G_8, H_8}, - {1, I_7, G_7, H_7}, - {1, I_6, G_6, H_6}, - {1, I_5, G_5, H_5}, - {1, I_4, G_4, H_4}, - {1, I_3, G_3, H_3}, - {1, I_2, G_2, H_2}, - - {1, F_16, D_16, E_16}, - {1, F_15, D_15, E_15}, - {1, F_14, D_14, E_14}, - {1, F_13, D_13, E_13}, - {1, F_10, D_10, E_10}, - {1, F_8, D_8, E_8}, - {1, F_7, D_7, E_7}, - {1, F_6, D_6, E_6}, - {1, F_5, D_5, E_5}, - {1, F_4, D_4, E_4}, - {1, F_3, D_3, E_3}, - {1, F_2, D_2, E_2}, -}; - -#define __ NO_LED - -led_config_t g_led_config = { - { - // Key Matrix to LED Index - { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 14, 15 }, - { 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 43, 29 }, - { 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 13, 42, 44 }, - { 45, __, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58 }, - { 59, 60, 61, 62, __, __, 63, __, 64, 65, 66, 67, 68, 69, 70 } - }, - { - // LED Index to Physical Position - {0, 0}, {14, 0}, {29, 0}, {44, 0}, {59, 0}, {74, 0}, {89, 0}, {104, 0}, {119, 0}, {134, 0}, {149, 0}, {164, 0}, {179, 0}, {194,0}, {209, 0}, {224, 0}, - {3,16}, {22,16}, {37,16}, {52,16}, {67,16}, {82,16}, {97, 16}, {112, 16}, {126, 16}, {141, 16}, {156, 16}, {171, 16}, {186, 16}, {224, 16}, - {5,32}, {26,32}, {41,32}, {55,32}, {70,32}, {85,32}, {100,32}, {115, 32}, {130, 32}, {145, 32}, {160, 32}, {175, 32}, {204, 32}, {207, 24}, {224, 32}, - {9,48}, {33,48}, {48,48}, {63,48}, {78,48}, {93,48}, {108,48}, {123, 48}, {138, 48}, {153, 48}, {167, 48}, {182, 48}, {203, 48}, {224, 48}, - {1,64}, {18,64}, {35,64}, {52,64}, {93,64}, {134, 64}, {149, 64}, {164, 64}, {179, 64}, {194, 64}, {209, 64}, {224, 64} - }, - { - // RGB LED Index to Flag - 1, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1, 1, - 1, 8, 8, 8, 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, - 1, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1, 1, 1, - 1, 1, 1, 1, 4, 1, 1, 1, 1, 1, 1, 1, - } -}; -#endif diff --git a/keyboards/keychron/k6_pro/jis/rgb/rules.mk b/keyboards/keychron/k6_pro/jis/rgb/rules.mk deleted file mode 100644 index f886ea2e8e..0000000000 --- a/keyboards/keychron/k6_pro/jis/rgb/rules.mk +++ /dev/null @@ -1 +0,0 @@ -# This file intentionally blank \ No newline at end of file diff --git a/keyboards/keychron/k6_pro/k6_pro.c b/keyboards/keychron/k6_pro/k6_pro.c deleted file mode 100644 index be910d4bda..0000000000 --- a/keyboards/keychron/k6_pro/k6_pro.c +++ /dev/null @@ -1,293 +0,0 @@ -/* Copyright 2022 @ 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 . - */ - -#include "k6_pro.h" -#ifdef KC_BLUETOOTH_ENABLE -# include "ckbt51.h" -# include "bluetooth.h" -# include "indicator.h" -# include "transport.h" -# include "battery.h" -# include "bat_level_animation.h" -# include "lpm.h" -#endif - -#ifdef ENABLE_FACTORY_TEST -# include "factory_test.h" -#endif - -#define POWER_ON_LED_DURATION 3000 - -typedef struct PACKED { - uint8_t len; - uint8_t keycode[3]; -} key_combination_t; - -static uint32_t power_on_indicator_timer_buffer; -static uint32_t siri_timer_buffer = 0; -static uint8_t mac_keycode[4] = {KC_LOPT, KC_ROPT, KC_LCMD, KC_RCMD}; - -key_combination_t key_comb_list[4] = { - {2, {KC_LWIN, KC_TAB}}, // Task (win) - {2, {KC_LWIN, KC_E}}, // Files (win) - {3, {KC_LSFT, KC_LGUI, KC_4}}, // Snapshot (mac) - {2, {KC_LWIN, KC_C}} // Cortana (win) -}; - -#ifdef KC_BLUETOOTH_ENABLE -bool firstDisconnect = true; -bool bt_factory_reset = false; -static virtual_timer_t pairing_key_timer; -extern uint8_t g_pwm_buffer[DRIVER_COUNT][192]; - -static void pairing_key_timer_cb(void *arg) { - bluetooth_pairing_ex(*(uint8_t *)arg, NULL); -} -#endif - -bool dip_switch_update_kb(uint8_t index, bool active) { - if (index == 0) { - default_layer_set(1UL << (active ? 1 : 0)); - } - dip_switch_update_user(index, active); - - return true; -} - -#ifdef KC_BLUETOOTH_ENABLE -bool process_record_kb_bt(uint16_t keycode, keyrecord_t *record) { -#else -bool process_record_kb(uint16_t keycode, keyrecord_t *record) { -#endif - static uint8_t host_idx = 0; - - switch (keycode) { - case KC_LOPTN: - case KC_ROPTN: - case KC_LCMMD: - case KC_RCMMD: - if (record->event.pressed) { - register_code(mac_keycode[keycode - KC_LOPTN]); - } else { - unregister_code(mac_keycode[keycode - KC_LOPTN]); - } - return false; // Skip all further processing of this key) - case KC_TASK: - case KC_FILE: - case KC_SNAP: - case KC_CTANA: - if (record->event.pressed) { - for (uint8_t i = 0; i < key_comb_list[keycode - KC_TASK].len; i++) - register_code(key_comb_list[keycode - KC_TASK].keycode[i]); - } else { - for (uint8_t i = 0; i < key_comb_list[keycode - KC_TASK].len; i++) - unregister_code(key_comb_list[keycode - KC_TASK].keycode[i]); - } - return false; // Skip all further processing of this key - case KC_SIRI: - if (record->event.pressed && siri_timer_buffer == 0) { - register_code(KC_LGUI); - register_code(KC_SPACE); - siri_timer_buffer = sync_timer_read32() | 1; - } - return false; // Skip all further processing of this key -#ifdef KC_BLUETOOTH_ENABLE - case BT_HST1 ... BT_HST3: - if (get_transport() == TRANSPORT_BLUETOOTH) { - if (record->event.pressed) { - host_idx = keycode - BT_HST1 + 1; - chVTSet(&pairing_key_timer, TIME_MS2I(2000), (vtfunc_t)pairing_key_timer_cb, &host_idx); - bluetooth_connect_ex(host_idx, 0); - } else { - host_idx = 0; - chVTReset(&pairing_key_timer); - } - } - break; - case BAT_LVL: - if (get_transport() == TRANSPORT_BLUETOOTH && !usb_power_connected()) { - bat_level_animiation_start(battery_get_percentage()); - } - break; -#endif - default: -#ifdef FACTORY_RESET_CHECK - FACTORY_RESET_CHECK(keycode, record); -#endif - break; - } - return true; -} - -void keyboard_post_init_kb(void) { - dip_switch_read(true); - -#ifdef KC_BLUETOOTH_ENABLE - /* Currently we don't use this reset pin */ - palSetLineMode(CKBT51_RESET_PIN, PAL_MODE_UNCONNECTED); - - /* IMPORTANT: DO NOT enable internal pull-up resistor - * as there is an external pull-down resistor. - */ - palSetLineMode(USB_BT_MODE_SELECT_PIN, PAL_MODE_INPUT); - - ckbt51_init(false); - bluetooth_init(); -# endif - - power_on_indicator_timer_buffer = sync_timer_read32() | 1; - writePin(BAT_LOW_LED_PIN, BAT_LOW_LED_PIN_ON_STATE); - keyboard_post_init_user(); -} - -void matrix_scan_kb(void) { - if (power_on_indicator_timer_buffer) { - if (sync_timer_elapsed32(power_on_indicator_timer_buffer) > POWER_ON_LED_DURATION) { - power_on_indicator_timer_buffer = 0; - writePin(BAT_LOW_LED_PIN, !BAT_LOW_LED_PIN_ON_STATE); - } else { - writePin(BAT_LOW_LED_PIN, BAT_LOW_LED_PIN_ON_STATE); - } - } - - if (siri_timer_buffer && sync_timer_elapsed32(siri_timer_buffer) > 500) { - siri_timer_buffer = 0; - unregister_code(KC_LGUI); - unregister_code(KC_SPACE); - } - -#ifdef FACTORY_RESET_TASK - FACTORY_RESET_TASK(); -# endif - matrix_scan_user(); -} - -#ifdef KC_BLUETOOTH_ENABLE -static void ckbt51_param_init(void) { - /* Set bluetooth device name */ - // ckbt51_set_local_name(STR(PRODUCT)); - ckbt51_set_local_name(PRODUCT); - /* Set bluetooth parameters */ - module_param_t param = {.event_mode = 0x02, - .connected_idle_timeout = 7200, - .pairing_timeout = 180, - .pairing_mode = 0, - .reconnect_timeout = 5, - .report_rate = 90, - .vendor_id_source = 1, - .verndor_id = 0, // Must be 0x3434 - .product_id = PRODUCT_ID}; - ckbt51_set_param(¶m); -} - -void bluetooth_enter_disconnected_kb(uint8_t host_idx) { - if (bt_factory_reset) { - bt_factory_reset = false; - ckbt51_param_init(); - } - /* CKBT51 bluetooth module boot time is slower, it enters disconnected after boot, - so we place initialization here. */ - if (firstDisconnect && sync_timer_read32() < 1000 && get_transport() == TRANSPORT_BLUETOOTH) { - ckbt51_param_init(); - bluetooth_connect(); - firstDisconnect = false; - } -} - -void ckbt51_default_ack_handler(uint8_t *data, uint8_t len) { - if (data[1] == 0x45) { - module_param_t param = {.event_mode = 0x02, - .connected_idle_timeout = 7200, - .pairing_timeout = 180, - .pairing_mode = 0, - .reconnect_timeout = 5, - .report_rate = 90, - .vendor_id_source = 1, - .verndor_id = 0, // Must be 0x3434 - .product_id = PRODUCT_ID}; - ckbt51_set_param(¶m); - } -} - -void bluetooth_pre_task(void) { - static uint8_t mode = 1; - - if (readPin(USB_BT_MODE_SELECT_PIN) != mode) { - if (readPin(USB_BT_MODE_SELECT_PIN) != mode) { - mode = readPin(USB_BT_MODE_SELECT_PIN); - set_transport(mode == 0 ? TRANSPORT_BLUETOOTH : TRANSPORT_USB); - } - } -} -#endif - -void battery_calculte_voltage(uint16_t value) { - uint16_t voltage = ((uint32_t)value) * 2246 / 1000; - -#ifdef LED_MATRIX_ENABLE - if (led_matrix_is_enabled()) { - uint32_t totalBuf = 0; - - for (uint8_t i = 0; i < DRIVER_COUNT; i++) - for (uint8_t j = 0; j < 192; j++) - totalBuf += g_pwm_buffer[i][j]; - /* We assumpt it is linear relationship*/ - voltage += (30 * totalBuf / LED_MATRIX_LED_COUNT / 255); - } -#endif -#ifdef RGB_MATRIX_ENABLE - if (rgb_matrix_is_enabled()) { - uint32_t totalBuf = 0; - - for (uint8_t i = 0; i < DRIVER_COUNT; i++) - for (uint8_t j = 0; j < 192; j++) - totalBuf += g_pwm_buffer[i][j]; - /* We assumpt it is linear relationship*/ - uint32_t compensation = 60 * totalBuf / RGB_MATRIX_LED_COUNT / 255 / 3; - voltage += compensation; - } -#endif - battery_set_voltage(voltage); -} - -bool via_command_kb(uint8_t *data, uint8_t length) { - switch (data[0]) { -#ifdef KC_BLUETOOTH_ENABLE - case 0xAA: - ckbt51_dfu_rx(data, length); - break; -#endif -#ifdef ENABLE_FACTORY_TEST - case 0xAB: - factory_test_rx(data, length); - break; -#endif - default: - return false; - } - - return true; -} - -#if !defined(VIA_ENABLE) -void raw_hid_receive(uint8_t *data, uint8_t length) { - switch (data[0]) { - case RAW_HID_CMD: - via_command_kb(data, length); - break; - } -} -#endif diff --git a/keyboards/keychron/k6_pro/k6_pro.h b/keyboards/keychron/k6_pro/k6_pro.h deleted file mode 100644 index be5196903d..0000000000 --- a/keyboards/keychron/k6_pro/k6_pro.h +++ /dev/null @@ -1,55 +0,0 @@ -/* Copyright 2022 @ 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 . - */ - -#pragma once - -#include "quantum.h" -#ifdef VIA_ENABLE -# include "via.h" -#endif - -#define ___ KC_NO - -#ifdef VIA_ENABLE -# define USER_START QK_KB_0 -#else -# define USER_START SAFE_RANGE -#endif - -// clang-format off -enum { - KC_LOPTN = USER_START, - KC_ROPTN, - KC_LCMMD, - KC_RCMMD, - KC_TASK, - KC_FILE, - KC_SNAP, - KC_CTANA, - KC_SIRI, -#ifdef KC_BLUETOOTH_ENABLE - BT_HST1, - BT_HST2, - BT_HST3, - BAT_LVL, -#else - BT_HST1 = KC_TRNS, - BT_HST2 = KC_TRNS, - BT_HST3 = KC_TRNS, - BAT_LVL = KC_TRNS, -#endif - NEW_SAFE_RANGE -}; diff --git a/keyboards/keychron/k6_pro/matrix.c b/keyboards/keychron/k6_pro/matrix.c deleted file mode 100644 index d526c1028c..0000000000 --- a/keyboards/keychron/k6_pro/matrix.c +++ /dev/null @@ -1,152 +0,0 @@ -/* Copyright 2021 @ 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 . - */ - -//#include "q1_bluetooth.h" -#include "stdint.h" -#include "hal.h" -#include "gpio.h" -#include "quantum.h" - -#define HC595_STCP A0 -#define HC595_SHCP A1 -#define HC595_DS C15 - -pin_t row_pins[MATRIX_ROWS] = MATRIX_ROW_PINS; -pin_t col_pins[MATRIX_COLS] = MATRIX_COL_PINS; - -static inline void HC595_delay(uint16_t n) { - while (n-- > 0) { - asm volatile("nop" ::: "memory"); - }; -} - -static void HC595_output(uint16_t data) { - uint8_t i; - uint8_t n = 1; - - for (i = 16; i > 0; i--) { - writePinLow(HC595_SHCP); - - if (data & 0x8000) - writePinHigh(HC595_DS); - else - writePinLow(HC595_DS); - - data <<= 1; - - HC595_delay(n); - - writePinHigh(HC595_SHCP); - HC595_delay(n); - } - - HC595_delay(n); - writePinLow(HC595_STCP); - HC595_delay(n); - writePinHigh(HC595_STCP); -} - -static inline void setPinOutput_writeLow(pin_t pin) { - ATOMIC_BLOCK_FORCEON { - setPinOutput(pin); - writePinLow(pin); - } -} - -static inline void setPinInputHigh_atomic(pin_t pin) { - ATOMIC_BLOCK_FORCEON { - setPinInputHigh(pin); - } -} - -static inline uint8_t readMatrixPin(pin_t pin) { - if (pin != NO_PIN) { - return readPin(pin); - } else { - return 1; - } -} - -static bool select_col(uint8_t col) { - HC595_output(~(0x01 << col)); - return true; -} - -static void unselect_col(uint8_t col) { - HC595_output(0xFFFF); -} - -static void unselect_cols(void) { - HC595_output(0xFFFF); -} - -void select_all_cols(void) { - HC595_output(0x0000); -} - -void matrix_read_rows_on_col(matrix_row_t current_matrix[], uint8_t current_col) { - - // Select col - if (!select_col(current_col)) { // select col - return; // skip NO_PIN col - } - - HC595_delay(100); - - // For each row... - for (uint8_t row_index = 0; row_index < MATRIX_ROWS; row_index++) { - // Check row pin state - if (readMatrixPin(row_pins[row_index]) == 0) { - // Pin LO, set col bit - current_matrix[row_index] |= (MATRIX_ROW_SHIFTER << current_col); - // key_pressed = true; - } else { - // Pin HI, clear col bit - current_matrix[row_index] &= ~(MATRIX_ROW_SHIFTER << current_col); - } - } - - unselect_col(current_col); - HC595_delay(100); -} - -void matrix_init_custom(void) { - for (uint8_t x = 0; x < MATRIX_ROWS; x++) { - if (row_pins[x] != NO_PIN) { - setPinInputHigh_atomic(row_pins[x]); - } - } - setPinOutput(HC595_DS); - setPinOutput(HC595_STCP); - setPinOutput(HC595_SHCP); - unselect_cols(); -} - -bool matrix_scan_custom(matrix_row_t current_matrix[]) { - bool matrix_has_changed = false; - - matrix_row_t curr_matrix[MATRIX_ROWS] = {0}; - - // Set col, read rows - for (uint8_t current_col = 0; current_col < MATRIX_COLS; current_col++) { - matrix_read_rows_on_col(curr_matrix, current_col); - } - - matrix_has_changed = memcmp(current_matrix, curr_matrix, sizeof(curr_matrix)) != 0; - if (matrix_has_changed) memcpy(current_matrix, curr_matrix, sizeof(curr_matrix)); - - return matrix_has_changed; -} diff --git a/keyboards/keychron/k6_pro/mcuconf.h b/keyboards/keychron/k6_pro/mcuconf.h deleted file mode 100644 index fc7c1de23c..0000000000 --- a/keyboards/keychron/k6_pro/mcuconf.h +++ /dev/null @@ -1,37 +0,0 @@ -/* 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 - -/* Set HCLK to 48 MHz as tradeoff of USB lowest clockand and - * lower power comsumption for bluetooth. Will use dynamic - * clock when STM32L4 is supported in ChibiOS */ -#undef STM32_PLLM_VALUE -#define STM32_PLLM_VALUE 2 - -#undef STM32_PLLN_VALUE -#define STM32_PLLN_VALUE 12 - -#undef STM32_I2C_USE_I2C1 -#define STM32_I2C_USE_I2C1 TRUE - -#ifdef KC_BLUETOOTH_ENABLE -# undef STM32_SERIAL_USE_USART2 -# define STM32_SERIAL_USE_USART2 TRUE -#endif \ No newline at end of file diff --git a/keyboards/keychron/k6_pro/readme.md b/keyboards/keychron/k6_pro/readme.md deleted file mode 100644 index d8f09a97d1..0000000000 --- a/keyboards/keychron/k6_pro/readme.md +++ /dev/null @@ -1,21 +0,0 @@ -# Keychron K6 Pro - -![Keychron K6 Pro](https://github.com/Keychron/ProductImage/blob/main/K_Pro/k6_pro.jpg?raw=true) - -A customizable 68 keys TKL keyboard. - -* Keyboard Maintainer: [Keychron](https://github.com/keychron) -* Hardware Supported: Keychron K6 Pro -* Hardware Availability: [Keychron K6 Pro QMK/VIA Wireless Mechanical Keyboard](https://www.keychron.com/products/keychron-k6-pro-qmk-via-wireless-custom-mechanical-keyboard) - -Make example for this keyboard (after setting up your build environment): - - make keychron/k6_pro/ansi/rgb:default - -Flashing example for this keyboard: - - make keychron/k6_pro/ansi/rgb:default:flash - -**Reset Key**: Connect the USB cable, toggle mode switch to "Off", hold down the *Esc* key or reset button underneath space bar, then toggle then switch to "Cable". - -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). diff --git a/keyboards/keychron/k6_pro/rules.mk b/keyboards/keychron/k6_pro/rules.mk deleted file mode 100644 index 8e536fc345..0000000000 --- a/keyboards/keychron/k6_pro/rules.mk +++ /dev/null @@ -1,9 +0,0 @@ -# Enter lower-power sleep mode when on the ChibiOS idle thread -OPT_DEFS += -DCORTEX_ENABLE_WFI_IDLE=TRUE -OPT_DEFS += -DNO_USB_STARTUP_CHECK -DENABLE_FACTORY_TEST - -SRC += matrix.c - -include keyboards/keychron/bluetooth/bluetooth.mk - - diff --git a/keyboards/keychron/k6_pro/via_json/k6_pro_ansi_rgb.json b/keyboards/keychron/k6_pro/via_json/k6_pro_ansi_rgb.json deleted file mode 100644 index 572acbbca5..0000000000 --- a/keyboards/keychron/k6_pro/via_json/k6_pro_ansi_rgb.json +++ /dev/null @@ -1,239 +0,0 @@ -{ - "name": "Keychron K6 Pro", - "vendorId": "0x3434", - "productId": "0x0260", - "keycodes": ["qmk_lighting"], - "menus": [ - { - "label": "Lighting", - "content": [ - { - "label": "Backlight", - "content": [ - { - "label": "Brightness", - "type": "range", - "options": [0, 255], - "content": ["id_qmk_rgb_matrix_brightness", 3, 1] - }, - { - "label": "Effect", - "type": "dropdown", - "content": ["id_qmk_rgb_matrix_effect", 3, 2], - "options": [ - ["None", 0], - ["Solid Color", 1], - ["Breathing", 2], - ["Band Spiral Val", 3], - ["Cycle All", 4], - ["Cycle Left Right", 5], - ["Cycle Up Down", 6], - ["Rainbow Moving Chevron", 7], - ["Cycle Out In", 8], - ["Cycle Out In Dual", 9], - ["Cycle Pinwheel", 10], - ["Cycle Spiral", 11], - ["Dual Beacon", 12], - ["Rainbow Beacon", 13], - ["Jellybean Raindrops", 14], - ["Pixel Rain", 15], - ["Typing Heatmap", 16], - ["Digital Rain", 17], - ["Reactive Simple", 18], - ["Reactive Multiwide", 19], - ["Reactive Multinexus", 20], - ["Splash", 21], - ["Solid Splash", 22] - ] - }, - { - "showIf": "{id_qmk_rgb_matrix_effect} > 1", - "label": "Effect Speed", - "type": "range", - "options": [0, 255], - "content": ["id_qmk_rgb_matrix_effect_speed", 3, 3] - }, - { - "showIf": "{id_qmk_rgb_matrix_effect} != 0 && ( {id_qmk_rgb_matrix_effect} < 4 || {id_qmk_rgb_matrix_effect} == 18 || ({id_qmk_rgb_matrix_effect} > 17 && {id_qmk_rgb_matrix_effect} != 21) ) ", - "label": "Color", - "type": "color", - "content": ["id_qmk_rgb_matrix_color", 3, 4] - } - ] - } - ] - } - ], - "customKeycodes": [ - {"name": "Left Option", "title": "Left Option", "shortName": "LOpt"}, - {"name": "Right Option", "title": "Right Option", "shortName": "ROpt"}, - {"name": "Left Cmd", "title": "Left Command", "shortName": "LCmd"}, - {"name": "Right Cmd", "title": "Right Command", "shortName": "RCmd"}, - {"name": "Task View", "title": "Task View in Windows", "shortName": "Task"}, - {"name": "File Explorer", "title": "File Explorer in Windows", "shortName": "File"}, - {"name": "Screen shot", "title": "Screenshot in macOS", "shortName": "SShot"}, - {"name": "Cortana", "title": "Cortana in Windows", "shortName": "Cortana"}, - {"name": "Siri", "title": "Siri in macOS", "shortName": "Siri"}, - {"name": "Bluetooth Host 1", "title": "Bluetooth Host 1", "shortName": "BTH1"}, - {"name": "Bluetooth Host 2", "title": "Bluetooth Host 2", "shortName": "BTH2"}, - {"name": "Bluetooth Host 3", "title": "Bluetooth Host 3", "shortName": "BTH3"}, - {"name": "Battery Level", "title": "Show battery level", "shortName": "Batt"} - ], - "matrix": {"rows": 5, "cols": 15}, - "layouts": { - "keymap": [ - [ - { - "c": "#777777" - }, - "0,0", - { - "c": "#cccccc" - }, - "0,1", - "0,2", - "0,3", - "0,4", - { - "c": "#aaaaaa" - }, - "0,5", - "0,6", - "0,7", - "0,8", - "0,9", - { - "c": "#cccccc" - }, - "0,10", - "0,11", - "0,12", - { - "c": "#aaaaaa", - "w": 2 - }, - "0,13", - "0,14" - ], - [ - { - "w": 1.5 - }, - "1,0", - { - "c": "#cccccc" - }, - "1,1", - "1,2", - "1,3", - "1,4", - "1,5", - "1,6", - "1,7", - "1,8", - "1,9", - "1,10", - "1,11", - "1,12", - { - "c": "#aaaaaa", - "w": 1.5 - }, - "1,13", - "1,14" - ], - [ - { - "w": 1.75 - }, - "2,0", - { - "c": "#cccccc" - }, - "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", - { - "c": "#aaaaaa" - }, - "2,14" - ], - [ - { - "w": 2.25 - }, - "3,0", - { - "c": "#cccccc" - }, - "3,2", - "3,3", - "3,4", - "3,5", - "3,6", - "3,7", - "3,8", - "3,9", - "3,10", - "3,11", - { - "c": "#aaaaaa", - "w": 1.75 - }, - "3,12", - { - "c": "#777777" - }, - "3,13", - { - "c": "#aaaaaa" - }, - "3,14" - ], - [ - { - "w": 1.25 - }, - "4,0", - { - "w": 1.25 - }, - "4,1", - { - "w": 1.25 - }, - "4,2", - { - "c": "#cccccc", - "w": 6.25 - }, - "4,6", - { - "c": "#aaaaaa" - }, - "4,9", - "4,10", - "4,11", - { - "c": "#777777" - }, - "4,12", - "4,13", - "4,14" - ] - ] - } -} diff --git a/keyboards/keychron/k6_pro/via_json/k6_pro_ansi_white.json b/keyboards/keychron/k6_pro/via_json/k6_pro_ansi_white.json deleted file mode 100644 index 3f3abee77a..0000000000 --- a/keyboards/keychron/k6_pro/via_json/k6_pro_ansi_white.json +++ /dev/null @@ -1,178 +0,0 @@ -{ - "name": "Keychron K6 Pro", - "vendorId": "0x3434", - "productId": "0x0263", - "keycodes": ["qmk_lighting"], - "customKeycodes": [ - {"name": "Left Option", "title": "Left Option", "shortName": "LOpt"}, - {"name": "Right Option", "title": "Right Option", "shortName": "ROpt"}, - {"name": "Left Cmd", "title": "Left Command", "shortName": "LCmd"}, - {"name": "Right Cmd", "title": "Right Command", "shortName": "RCmd"}, - {"name": "Task View", "title": "Task View in Windows", "shortName": "Task"}, - {"name": "File Explorer", "title": "File Explorer in Windows", "shortName": "File"}, - {"name": "Screen shot", "title": "Screenshot in macOS", "shortName": "SShot"}, - {"name": "Cortana", "title": "Cortana in Windows", "shortName": "Cortana"}, - {"name": "Siri", "title": "Siri in macOS", "shortName": "Siri"}, - {"name": "Bluetooth Host 1", "title": "Bluetooth Host 1", "shortName": "BTH1"}, - {"name": "Bluetooth Host 2", "title": "Bluetooth Host 2", "shortName": "BTH2"}, - {"name": "Bluetooth Host 3", "title": "Bluetooth Host 3", "shortName": "BTH3"}, - {"name": "Battery Level", "title": "Show battery level", "shortName": "Batt"} - ], - "matrix": {"rows": 5, "cols": 15}, - "layouts": { - "keymap": [ - [ - { - "c": "#777777" - }, - "0,0", - { - "c": "#cccccc" - }, - "0,1", - "0,2", - "0,3", - "0,4", - { - "c": "#aaaaaa" - }, - "0,5", - "0,6", - "0,7", - "0,8", - "0,9", - { - "c": "#cccccc" - }, - "0,10", - "0,11", - "0,12", - { - "c": "#aaaaaa", - "w": 2 - }, - "0,13", - "0,14" - ], - [ - { - "w": 1.5 - }, - "1,0", - { - "c": "#cccccc" - }, - "1,1", - "1,2", - "1,3", - "1,4", - "1,5", - "1,6", - "1,7", - "1,8", - "1,9", - "1,10", - "1,11", - "1,12", - { - "c": "#aaaaaa", - "w": 1.5 - }, - "1,13", - "1,14" - ], - [ - { - "w": 1.75 - }, - "2,0", - { - "c": "#cccccc" - }, - "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", - { - "c": "#aaaaaa" - }, - "2,14" - ], - [ - { - "w": 2.25 - }, - "3,0", - { - "c": "#cccccc" - }, - "3,2", - "3,3", - "3,4", - "3,5", - "3,6", - "3,7", - "3,8", - "3,9", - "3,10", - "3,11", - { - "c": "#aaaaaa", - "w": 1.75 - }, - "3,12", - { - "c": "#777777" - }, - "3,13", - { - "c": "#aaaaaa" - }, - "3,14" - ], - [ - { - "w": 1.25 - }, - "4,0", - { - "w": 1.25 - }, - "4,1", - { - "w": 1.25 - }, - "4,2", - { - "c": "#cccccc", - "w": 6.25 - }, - "4,6", - { - "c": "#aaaaaa" - }, - "4,9", - "4,10", - "4,11", - { - "c": "#777777" - }, - "4,12", - "4,13", - "4,14" - ] - ] - } -} diff --git a/keyboards/keychron/k6_pro/via_json/k6_pro_iso_rgb.json b/keyboards/keychron/k6_pro/via_json/k6_pro_iso_rgb.json deleted file mode 100644 index f0b78c088f..0000000000 --- a/keyboards/keychron/k6_pro/via_json/k6_pro_iso_rgb.json +++ /dev/null @@ -1,243 +0,0 @@ -{ - "name": "Keychron K6 Pro", - "vendorId": "0x3434", - "productId": "0x0261", - "keycodes": ["qmk_lighting"], - "menus": [ - { - "label": "Lighting", - "content": [ - { - "label": "Backlight", - "content": [ - { - "label": "Brightness", - "type": "range", - "options": [0, 255], - "content": ["id_qmk_rgb_matrix_brightness", 3, 1] - }, - { - "label": "Effect", - "type": "dropdown", - "content": ["id_qmk_rgb_matrix_effect", 3, 2], - "options": [ - ["None", 0], - ["Solid Color", 1], - ["Breathing", 2], - ["Band Spiral Val", 3], - ["Cycle All", 4], - ["Cycle Left Right", 5], - ["Cycle Up Down", 6], - ["Rainbow Moving Chevron", 7], - ["Cycle Out In", 8], - ["Cycle Out In Dual", 9], - ["Cycle Pinwheel", 10], - ["Cycle Spiral", 11], - ["Dual Beacon", 12], - ["Rainbow Beacon", 13], - ["Jellybean Raindrops", 14], - ["Pixel Rain", 15], - ["Typing Heatmap", 16], - ["Digital Rain", 17], - ["Reactive Simple", 18], - ["Reactive Multiwide", 19], - ["Reactive Multinexus", 20], - ["Splash", 21], - ["Solid Splash", 22] - ] - }, - { - "showIf": "{id_qmk_rgb_matrix_effect} > 1", - "label": "Effect Speed", - "type": "range", - "options": [0, 255], - "content": ["id_qmk_rgb_matrix_effect_speed", 3, 3] - }, - { - "showIf": "{id_qmk_rgb_matrix_effect} != 0 && ( {id_qmk_rgb_matrix_effect} < 4 || {id_qmk_rgb_matrix_effect} == 18 || ({id_qmk_rgb_matrix_effect} > 17 && {id_qmk_rgb_matrix_effect} != 21) ) ", - "label": "Color", - "type": "color", - "content": ["id_qmk_rgb_matrix_color", 3, 4] - } - ] - } - ] - } - ], - "customKeycodes": [ - {"name": "Left Option", "title": "Left Option", "shortName": "LOpt"}, - {"name": "Right Option", "title": "Right Option", "shortName": "ROpt"}, - {"name": "Left Cmd", "title": "Left Command", "shortName": "LCmd"}, - {"name": "Right Cmd", "title": "Right Command", "shortName": "RCmd"}, - {"name": "Task View", "title": "Task View in Windows", "shortName": "Task"}, - {"name": "File Explorer", "title": "File Explorer in Windows", "shortName": "File"}, - {"name": "Screen shot", "title": "Screenshot in macOS", "shortName": "SShot"}, - {"name": "Cortana", "title": "Cortana in Windows", "shortName": "Cortana"}, - {"name": "Siri", "title": "Siri in macOS", "shortName": "Siri"}, - {"name": "Bluetooth Host 1", "title": "Bluetooth Host 1", "shortName": "BTH1"}, - {"name": "Bluetooth Host 2", "title": "Bluetooth Host 2", "shortName": "BTH2"}, - {"name": "Bluetooth Host 3", "title": "Bluetooth Host 3", "shortName": "BTH3"}, - {"name": "Battery Level", "title": "Show battery level", "shortName": "Batt"} - ], - "matrix": {"rows": 5, "cols": 15}, - "layouts": { - "keymap": [ - [ - { - "c": "#777777" - }, - "0,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.00, - "c": "#aaaaaa" - }, - "0,13", - "0,14" - ], - [ - { - "w":1.50, - "c": "#aaaaaa" - }, - "1,0", - { - "c": "#cccccc" - }, - "1,1", - "1,2", - "1,3", - "1,4", - "1,5", - "1,6", - "1,7", - "1,8", - "1,9", - "1,10", - "1,11", - "1,12", - { - "x": 0.25, - "c": "#777777", - "w": 1.25, - "h": 2, - "w2": 1.5, - "h2": 1, - "x2": -0.25 - }, - "1,13", - { - "c": "#aaaaaa" - }, - "1,14" - ], - [ - { - "w":1.75, - "c": "#aaaaaa" - }, - "2,0", - { - "c": "#cccccc" - }, - "2,1", - "2,2", - "2,3", - "2,4", - "2,5", - "2,6", - "2,7", - "2,8", - "2,9", - "2,10", - "2,11", - "2,13", - { - "x": 1.25, - "c": "#aaaaaa" - }, - "2,14" - ], - [ - { - "w":1.25, - "c": "#aaaaaa" - }, - "3,0", - { - "c": "#cccccc" - }, - "3,1", - "3,2", - "3,3", - "3,4", - "3,5", - "3,6", - "3,7", - "3,8", - "3,9", - "3,10", - "3,11", - { - "w":1.75, - "c": "#aaaaaa" - }, - "3,12", - { - "c": "#777777" - }, - "3,13", - { - "c": "#aaaaaa" - }, - "3,14" - ], - [ - { - "w":1.25, - "c": "#aaaaaa" - }, - "4,0", - { - "w":1.25 - }, - "4,1", - { - "w":1.25 - }, - "4,2", - { - "w":6.25, - "c": "#cccccc" - }, - "4,6", - { - "c": "#aaaaaa" - }, - "4,9", - "4,10", - "4,11", - { - "c": "#777777" - }, - "4,12", - "4,13", - "4,14" - ] - ] - } -} diff --git a/keyboards/keychron/k6_pro/via_json/k6_pro_iso_white.json b/keyboards/keychron/k6_pro/via_json/k6_pro_iso_white.json deleted file mode 100644 index b449e969dc..0000000000 --- a/keyboards/keychron/k6_pro/via_json/k6_pro_iso_white.json +++ /dev/null @@ -1,182 +0,0 @@ -{ - "name": "Keychron K6 Pro", - "vendorId": "0x3434", - "productId": "0x0264", - "keycodes": ["qmk_lighting"], - "customKeycodes": [ - {"name": "Left Option", "title": "Left Option", "shortName": "LOpt"}, - {"name": "Right Option", "title": "Right Option", "shortName": "ROpt"}, - {"name": "Left Cmd", "title": "Left Command", "shortName": "LCmd"}, - {"name": "Right Cmd", "title": "Right Command", "shortName": "RCmd"}, - {"name": "Task View", "title": "Task View in Windows", "shortName": "Task"}, - {"name": "File Explorer", "title": "File Explorer in Windows", "shortName": "File"}, - {"name": "Screen shot", "title": "Screenshot in macOS", "shortName": "SShot"}, - {"name": "Cortana", "title": "Cortana in Windows", "shortName": "Cortana"}, - {"name": "Siri", "title": "Siri in macOS", "shortName": "Siri"}, - {"name": "Bluetooth Host 1", "title": "Bluetooth Host 1", "shortName": "BTH1"}, - {"name": "Bluetooth Host 2", "title": "Bluetooth Host 2", "shortName": "BTH2"}, - {"name": "Bluetooth Host 3", "title": "Bluetooth Host 3", "shortName": "BTH3"}, - {"name": "Battery Level", "title": "Show battery level", "shortName": "Batt"} - ], - "matrix": {"rows": 5, "cols": 15}, - "layouts": { - "keymap": [ - [ - { - "c": "#777777" - }, - "0,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.00, - "c": "#aaaaaa" - }, - "0,13", - "0,14" - ], - [ - { - "w":1.50, - "c": "#aaaaaa" - }, - "1,0", - { - "c": "#cccccc" - }, - "1,1", - "1,2", - "1,3", - "1,4", - "1,5", - "1,6", - "1,7", - "1,8", - "1,9", - "1,10", - "1,11", - "1,12", - { - "x": 0.25, - "c": "#777777", - "w": 1.25, - "h": 2, - "w2": 1.5, - "h2": 1, - "x2": -0.25 - }, - "1,13", - { - "c": "#aaaaaa" - }, - "1,14" - ], - [ - { - "w":1.75, - "c": "#aaaaaa" - }, - "2,0", - { - "c": "#cccccc" - }, - "2,1", - "2,2", - "2,3", - "2,4", - "2,5", - "2,6", - "2,7", - "2,8", - "2,9", - "2,10", - "2,11", - "2,13", - { - "x": 1.25, - "c": "#aaaaaa" - }, - "2,14" - ], - [ - { - "w":1.25, - "c": "#aaaaaa" - }, - "3,0", - { - "c": "#cccccc" - }, - "3,1", - "3,2", - "3,3", - "3,4", - "3,5", - "3,6", - "3,7", - "3,8", - "3,9", - "3,10", - "3,11", - { - "w":1.75, - "c": "#aaaaaa" - }, - "3,12", - { - "c": "#777777" - }, - "3,13", - { - "c": "#aaaaaa" - }, - "3,14" - ], - [ - { - "w":1.25, - "c": "#aaaaaa" - }, - "4,0", - { - "w":1.25 - }, - "4,1", - { - "w":1.25 - }, - "4,2", - { - "w":6.25, - "c": "#cccccc" - }, - "4,6", - { - "c": "#aaaaaa" - }, - "4,9", - "4,10", - "4,11", - { - "c": "#777777" - }, - "4,12", - "4,13", - "4,14" - ] - ] - } -} diff --git a/keyboards/keychron/k6_pro/via_json/k6_pro_jis_rgb.json b/keyboards/keychron/k6_pro/via_json/k6_pro_jis_rgb.json deleted file mode 100644 index 4153fbf93a..0000000000 --- a/keyboards/keychron/k6_pro/via_json/k6_pro_jis_rgb.json +++ /dev/null @@ -1,241 +0,0 @@ -{ - "name": "Keychron K6 Pro", - "vendorId": "0x3434", - "productId": "0x0262", - "keycodes": ["qmk_lighting"], - "menus": [ - { - "label": "Lighting", - "content": [ - { - "label": "Backlight", - "content": [ - { - "label": "Brightness", - "type": "range", - "options": [0, 255], - "content": ["id_qmk_rgb_matrix_brightness", 3, 1] - }, - { - "label": "Effect", - "type": "dropdown", - "content": ["id_qmk_rgb_matrix_effect", 3, 2], - "options": [ - ["None", 0], - ["Solid Color", 1], - ["Breathing", 2], - ["Band Spiral Val", 3], - ["Cycle All", 4], - ["Cycle Left Right", 5], - ["Cycle Up Down", 6], - ["Rainbow Moving Chevron", 7], - ["Cycle Out In", 8], - ["Cycle Out In Dual", 9], - ["Cycle Pinwheel", 10], - ["Cycle Spiral", 11], - ["Dual Beacon", 12], - ["Rainbow Beacon", 13], - ["Jellybean Raindrops", 14], - ["Pixel Rain", 15], - ["Typing Heatmap", 16], - ["Digital Rain", 17], - ["Reactive Simple", 18], - ["Reactive Multiwide", 19], - ["Reactive Multinexus", 20], - ["Splash", 21], - ["Solid Splash", 22] - ] - }, - { - "showIf": "{id_qmk_rgb_matrix_effect} > 1", - "label": "Effect Speed", - "type": "range", - "options": [0, 255], - "content": ["id_qmk_rgb_matrix_effect_speed", 3, 3] - }, - { - "showIf": "{id_qmk_rgb_matrix_effect} != 0 && ( {id_qmk_rgb_matrix_effect} < 4 || {id_qmk_rgb_matrix_effect} == 18 || ({id_qmk_rgb_matrix_effect} > 17 && {id_qmk_rgb_matrix_effect} != 21) ) ", - "label": "Color", - "type": "color", - "content": ["id_qmk_rgb_matrix_color", 3, 4] - } - ] - } - ] - } - ], - "customKeycodes": [ - {"name": "Left Option", "title": "Left Option", "shortName": "LOpt"}, - {"name": "Right Option", "title": "Right Option", "shortName": "ROpt"}, - {"name": "Left Cmd", "title": "Left Command", "shortName": "LCmd"}, - {"name": "Right Cmd", "title": "Right Command", "shortName": "RCmd"}, - {"name": "Task View", "title": "Task View in Windows", "shortName": "Task"}, - {"name": "File Explorer", "title": "File Explorer in Windows", "shortName": "File"}, - {"name": "Screen shot", "title": "Screenshot in macOS", "shortName": "SShot"}, - {"name": "Cortana", "title": "Cortana in Windows", "shortName": "Cortana"}, - {"name": "Siri", "title": "Siri in macOS", "shortName": "Siri"}, - {"name": "Bluetooth Host 1", "title": "Bluetooth Host 1", "shortName": "BTH1"}, - {"name": "Bluetooth Host 2", "title": "Bluetooth Host 2", "shortName": "BTH2"}, - {"name": "Bluetooth Host 3", "title": "Bluetooth Host 3", "shortName": "BTH3"}, - {"name": "Battery Level", "title": "Show battery level", "shortName": "Batt"} - ], - "matrix": {"rows": 5, "cols": 15}, - "layouts": { - "keymap": [ - [ - { - "c": "#777777" - }, - "0,0", - { - "c": "#cccccc" - }, - "0,1", - "0,2", - "0,3", - "0,4", - { - "c": "#aaaaaa" - }, - "0,5", - "0,6", - "0,7", - "0,8", - { - "c": "#cccccc" - }, - "0,9", - "0,10", - "0,11", - "0,12", - { - "c": "#aaaaaa" - }, - "2,12", - "0,13", - "0,14" - ], - [ - { - "w": 1.5 - }, - "1,0", - { - "c": "#cccccc" - }, - "1,1", - "1,2", - "1,3", - "1,4", - "1,5", - "1,6", - "1,7", - "1,8", - "1,9", - "1,10", - "1,11", - "1,12", - { - "x": 0.25, - "c": "#777777", - "w": 1.25, - "h": 2, - "w2": 1.5, - "h2": 1, - "x2": -0.25 - }, - "1,13", - { - "c": "#aaaaaa" - }, - "1,14" - ], - [ - { - "w": 1.75 - }, - "2,0", - { - "c": "#cccccc" - }, - "2,1", - "2,2", - "2,3", - "2,4", - "2,5", - "2,6", - "2,7", - "2,8", - "2,9", - "2,10", - "2,11", - { - "c": "#aaaaaa" - }, - "2,13", - { - "x": 1.25 - }, - "2,14" - ], - [ - { - "w": 2.25 - }, - "3,0", - { - "c": "#cccccc" - }, - "3,2", - "3,3", - "3,4", - "3,5", - "3,6", - "3,7", - "3,8", - "3,9", - "3,10", - "3,11", - { - "c": "#aaaaaa" - }, - "3,12", - { - "w": 1.75 - }, - "3,13", - "3,14" - ], - [ - { - "w": 1.25 - }, - "4,0", - "4,1", - { - "w": 1.25 - }, - "4,2", - "4,3", - { - "c": "#cccccc", - "w": 4.5 - }, - "4,6", - { - "c": "#aaaaaa" - }, - "4,8", - "4,9", - "4,10", - "4,11", - { - "c": "#777777" - }, - "4,12", - "4,13", - "4,14" - ] - ] - } -} diff --git a/keyboards/keychron/k7_max/ansi/rgb/config.h b/keyboards/keychron/k7_max/ansi/rgb/config.h deleted file mode 100644 index 2bc3cc711e..0000000000 --- a/keyboards/keychron/k7_max/ansi/rgb/config.h +++ /dev/null @@ -1,51 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#pragma once - -#ifdef RGB_MATRIX_ENABLE -/* RGB Matrix driver configuration */ -# define RGB_MATRIX_LED_COUNT 68 -# define DRIVER_COUNT 2 -# define DRIVER_CS_PINS \ - { B8, B9 } - -/* Scan phase of led driver set as MSKPHASE_9CHANNEL(defined as 0x03 in snled27351.h) */ -# define SNLED27351_PHASE_CHANNEL MSKPHASE_9CHANNEL -/* Set LED driver current */ -# define SNLED27351_CURRENT_TUNE \ - { 0x14, 0x14, 0x14, 0x14, 0x14, 0x14, 0x14, 0x14, 0x14, 0x14, 0x14, 0x14 } - -/* Set to infinit, which is use in USB mode by default */ -# define RGB_MATRIX_TIMEOUT RGB_MATRIX_TIMEOUT_INFINITE -/* Allow shutdown of led driver to save power */ -# define RGB_MATRIX_DRIVER_SHUTDOWN_ENABLE -/* Turn off backlight on low brightness to save power */ -# define RGB_MATRIX_BRIGHTNESS_TURN_OFF_VAL 48 - -/* Indications */ -# define DIM_CAPS_LOCK -# define CAPS_LOCK_INDEX 30 -# define BT_HOST_LED_MATRIX_LIST \ - { 16, 17, 18 } -# define P2P4G_HOST_LED_MATRIX_LIST \ - { 19 } -# define LOW_BAT_IND_INDEX \ - { 61 } - -# define RGB_MATRIX_KEYPRESSES -# define RGB_MATRIX_FRAMEBUFFER_EFFECTS -#endif diff --git a/keyboards/keychron/k7_max/ansi/rgb/info.json b/keyboards/keychron/k7_max/ansi/rgb/info.json deleted file mode 100644 index 69b6943f69..0000000000 --- a/keyboards/keychron/k7_max/ansi/rgb/info.json +++ /dev/null @@ -1,36 +0,0 @@ -{ - "usb": { - "pid": "0x0A70", - "device_version": "1.0.0" - }, - "features": { - "rgb_matrix": true - }, - "rgb_matrix": { - "driver": "snled27351_spi", - "sleep": true, - "animations": { - "band_spiral_val": true, - "breathing": true, - "cycle_all": true, - "cycle_left_right": true, - "cycle_out_in": true, - "cycle_out_in_dual": true, - "cycle_pinwheel": true, - "cycle_spiral": true, - "cycle_up_down": true, - "digital_rain": true, - "dual_beacon": true, - "jellybean_raindrops": true, - "pixel_rain": true, - "rainbow_beacon": true, - "rainbow_moving_chevron": true, - "solid_reactive_multinexus": true, - "solid_reactive_multiwide": true, - "solid_reactive_simple": true, - "solid_splash": true, - "splash": true, - "typing_heatmap": true - } - } -} diff --git a/keyboards/keychron/k7_max/ansi/rgb/keymaps/default/keymap.c b/keyboards/keychron/k7_max/ansi/rgb/keymaps/default/keymap.c deleted file mode 100644 index 20e56e98cc..0000000000 --- a/keyboards/keychron/k7_max/ansi/rgb/keymaps/default/keymap.c +++ /dev/null @@ -1,72 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#include QMK_KEYBOARD_H -#include "keychron_common.h" - -enum layers{ - MAC_BASE, - WIN_BASE, - MAC_FN1, - WIN_FN1, - FN2 -}; - -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { -[MAC_BASE] = LAYOUT_ansi_68( - 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_DEL, - 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_HOME, - 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_PGUP, - 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_PGDN, - KC_LCTL, KC_LOPTN, KC_LCMMD, KC_SPC, KC_RCMMD,MO(MAC_FN1),MO(FN2), KC_LEFT, KC_DOWN, KC_RGHT), - -[WIN_BASE] = LAYOUT_ansi_68( - 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_DEL, - 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_HOME, - 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_PGUP, - 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_PGDN, - KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(WIN_FN1),MO(FN2), KC_LEFT, KC_DOWN, KC_RGHT), - -[MAC_FN1] = LAYOUT_ansi_68( - KC_GRV, KC_BRID, KC_BRIU, KC_MCTRL, KC_LNPAD, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_END, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - -[WIN_FN1] = LAYOUT_ansi_68( - KC_GRV, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_END, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - -[FN2] = LAYOUT_ansi_68( - KC_TILD, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), -}; - -// clang-format on -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - if (!process_record_keychron_common(keycode, record)) { - return false; - } - return true; -} diff --git a/keyboards/keychron/k7_max/ansi/rgb/keymaps/via/keymap.c b/keyboards/keychron/k7_max/ansi/rgb/keymaps/via/keymap.c deleted file mode 100644 index 20e56e98cc..0000000000 --- a/keyboards/keychron/k7_max/ansi/rgb/keymaps/via/keymap.c +++ /dev/null @@ -1,72 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#include QMK_KEYBOARD_H -#include "keychron_common.h" - -enum layers{ - MAC_BASE, - WIN_BASE, - MAC_FN1, - WIN_FN1, - FN2 -}; - -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { -[MAC_BASE] = LAYOUT_ansi_68( - 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_DEL, - 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_HOME, - 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_PGUP, - 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_PGDN, - KC_LCTL, KC_LOPTN, KC_LCMMD, KC_SPC, KC_RCMMD,MO(MAC_FN1),MO(FN2), KC_LEFT, KC_DOWN, KC_RGHT), - -[WIN_BASE] = LAYOUT_ansi_68( - 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_DEL, - 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_HOME, - 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_PGUP, - 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_PGDN, - KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(WIN_FN1),MO(FN2), KC_LEFT, KC_DOWN, KC_RGHT), - -[MAC_FN1] = LAYOUT_ansi_68( - KC_GRV, KC_BRID, KC_BRIU, KC_MCTRL, KC_LNPAD, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_END, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - -[WIN_FN1] = LAYOUT_ansi_68( - KC_GRV, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_END, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - -[FN2] = LAYOUT_ansi_68( - KC_TILD, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), -}; - -// clang-format on -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - if (!process_record_keychron_common(keycode, record)) { - return false; - } - return true; -} diff --git a/keyboards/keychron/k7_max/ansi/rgb/keymaps/via/rules.mk b/keyboards/keychron/k7_max/ansi/rgb/keymaps/via/rules.mk deleted file mode 100644 index 1e5b99807c..0000000000 --- a/keyboards/keychron/k7_max/ansi/rgb/keymaps/via/rules.mk +++ /dev/null @@ -1 +0,0 @@ -VIA_ENABLE = yes diff --git a/keyboards/keychron/k7_max/ansi/rgb/rgb.c b/keyboards/keychron/k7_max/ansi/rgb/rgb.c deleted file mode 100644 index b7ffd01138..0000000000 --- a/keyboards/keychron/k7_max/ansi/rgb/rgb.c +++ /dev/null @@ -1,130 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#include "quantum.h" - -// clang-format off -#ifdef RGB_MATRIX_ENABLE -const snled27351_led_t g_snled27351_leds[RGB_MATRIX_LED_COUNT] = { -/* Refer to SNLED27351 manual for these locations - * driver - * | R location - * | | G location - * | | | B location - * | | | | */ - {0, F_1, D_1, E_1}, - {0, F_2, D_2, E_2}, - {0, F_3, D_3, E_3}, - {0, F_4, D_4, E_4}, - {0, F_5, D_5, E_5}, - {0, F_6, D_6, E_6}, - {0, F_7, D_7, E_7}, - {0, F_8, D_8, E_8}, - {0, F_9, D_9, E_9}, - {0, F_10, D_10, E_10}, - {0, F_11, D_11, E_11}, - {0, F_12, D_12, E_12}, - {0, F_13, D_13, E_13}, - {0, F_14, D_14, E_14}, - {0, F_16, D_16, E_16}, - - {0, A_1, C_1, B_1}, - {0, A_2, C_2, B_2}, - {0, A_3, C_3, B_3}, - {0, A_4, C_4, B_4}, - {0, A_5, C_5, B_5}, - {0, A_6, C_6, B_6}, - {0, A_7, C_7, B_7}, - {0, A_8, C_8, B_8}, - {0, A_9, C_9, B_9}, - {0, A_10, C_10, B_10}, - {0, A_11, C_11, B_11}, - {0, A_12, C_12, B_12}, - {0, A_13, C_13, B_13}, - {0, A_14, C_14, B_14}, - {0, A_16, C_16, B_16}, - - {1, I_1, G_1, H_1}, - {1, I_2, G_2, H_2}, - {1, I_3, G_3, H_3}, - {1, I_4, G_4, H_4}, - {1, I_5, G_5, H_5}, - {1, I_6, G_6, H_6}, - {1, I_7, G_7, H_7}, - {1, I_8, G_8, H_8}, - {1, I_9, G_9, H_9}, - {1, I_10, G_10, H_10}, - {1, I_11, G_11, H_11}, - {1, I_12, G_12, H_12}, - {1, I_14, G_14, H_14}, - {1, I_16, G_16, H_16}, - - {1, C_1, A_1, B_1}, - {1, C_3, A_3, B_3}, - {1, C_4, A_4, B_4}, - {1, C_5, A_5, B_5}, - {1, C_6, A_6, B_6}, - {1, C_7, A_7, B_7}, - {1, C_8, A_8, B_8}, - {1, C_9, A_9, B_9}, - {1, C_10, A_10, B_10}, - {1, C_11, A_11, B_11}, - {1, C_12, A_12, B_12}, - {1, C_14, A_14, B_14}, - {1, C_15, A_15, B_15}, - {1, C_16, A_16, B_16}, - - {1, F_1, D_1, E_1}, - {1, F_2, D_2, E_2}, - {1, F_3, D_3, E_3}, - {1, F_7, D_7, E_7}, - {1, F_11, D_11, E_11}, - {1, F_12, D_12, E_12}, - {1, F_13, D_13, E_13}, - {1, F_14, D_14, E_14}, - {1, F_15, D_15, E_15}, - {1, F_16, D_16, E_16}, -}; - -#define __ NO_LED - -led_config_t g_led_config = { - { - // Key Matrix to LED Index - { 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, 40, 41, __, 42, __, 43 }, - { 44, __, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, __, 55, 56, 57 }, - { 58, 59, 60, __, __, __, 61, __, __, __, 62, 63, 64, 65, 66, 67 }, - }, - { - // LED Index to Physical Position - {0, 0}, {15, 0}, {30, 0}, {45, 0}, {60, 0}, {75, 0}, { 90, 0}, {105, 0}, {119, 0}, {134, 0}, {149, 0}, {164, 0}, {179, 0}, {202, 0}, {224, 0}, - {4,16}, {22,16}, {37,16}, {52,16}, {67,16}, {82,16}, { 97,16}, {112,16}, {127,16}, {142,16}, {157,16}, {172,16}, {187,16}, {205,16}, {224,16}, - {6,32}, {26,32}, {41,32}, {56,32}, {71,32}, {86,32}, {101,32}, {116,32}, {131,32}, {146,32}, {161,32}, {175,32}, {200,32}, {224,32}, - {9,48}, {34,48}, {49,48}, {64,48}, {78,48}, { 93,48}, {108,48}, {123,48}, {138,48}, {153,48}, {168,48}, {189,48}, {209,48}, {224,48}, - {2,64}, {21,64}, {39,64}, { 95,64}, {149,64}, {164,64}, {179,64}, {194,64}, {209,64}, {224,64} - }, - { - // RGB LED Index to Flag - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 - } -}; -#endif diff --git a/keyboards/keychron/k7_max/ansi/rgb/rules.mk b/keyboards/keychron/k7_max/ansi/rgb/rules.mk deleted file mode 100644 index 6e7633bfe0..0000000000 --- a/keyboards/keychron/k7_max/ansi/rgb/rules.mk +++ /dev/null @@ -1 +0,0 @@ -# This file intentionally left blank diff --git a/keyboards/keychron/k7_max/ansi/white/config.h b/keyboards/keychron/k7_max/ansi/white/config.h deleted file mode 100644 index 279a93a3bb..0000000000 --- a/keyboards/keychron/k7_max/ansi/white/config.h +++ /dev/null @@ -1,51 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#pragma once - -#ifdef LED_MATRIX_ENABLE -/* LED matrix driver configuration */ -# define LED_MATRIX_LED_COUNT 68 -# define DRIVER_COUNT 1 -# define DRIVER_CS_PINS \ - { B9 } - -/* Use first 6 channels of LED driver */ -# define SNLED27351_PHASE_CHANNEL MSKPHASE_6CHANNEL -/* Set LED driver current */ -# define SNLED27351_CURRENT_TUNE \ - { 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20 } - -/* Set to infinit, which is use in USB mode by default */ -# define LED_MATRIX_TIMEOUT LED_MATRIX_TIMEOUT_INFINITE -/* Allow shutdown of led driver to save power */ -# define LED_MATRIX_DRIVER_SHUTDOWN_ENABLE -/* Turn off backlight on low brightness to save power */ -# define LED_MATRIX_BRIGHTNESS_TURN_OFF_VAL 48 - -/* Indications */ -# define DIM_CAPS_LOCK -# define CAPS_LOCK_INDEX 30 -# define BT_HOST_LED_MATRIX_LIST \ - { 16, 17, 18 } -# define P2P4G_HOST_LED_MATRIX_LIST \ - { 19 } -# define LOW_BAT_IND_INDEX \ - { 61 } - -# define LED_MATRIX_VAL_STEP 16 -# define LED_MATRIX_KEYPRESSES -#endif diff --git a/keyboards/keychron/k7_max/ansi/white/info.json b/keyboards/keychron/k7_max/ansi/white/info.json deleted file mode 100644 index 211aa6d92a..0000000000 --- a/keyboards/keychron/k7_max/ansi/white/info.json +++ /dev/null @@ -1,30 +0,0 @@ -{ - "usb": { - "pid": "0x0A73", - "device_version": "1.0.0" - }, - "features": { - "led_matrix": true - }, - "led_matrix": { - "driver": "snled27351_spi", - "sleep": true, - "animations": { - "none": true, - "solid": true, - "breathing": true, - "band_pinwheel": true, - "band_spiral": true, - "cycle_left_right": true, - "cycle_up_down": true, - "cycle_out_in": true, - "dual_beacon": true, - "solid_reactive_simple": true, - "solid_reactive_multiwide": true, - "solid_reactive_multinexus": true, - "solid_splash": true, - "wave_left_right": true, - "wave_up_down": true - } - } -} diff --git a/keyboards/keychron/k7_max/ansi/white/keymaps/default/keymap.c b/keyboards/keychron/k7_max/ansi/white/keymaps/default/keymap.c deleted file mode 100644 index 093bf2c084..0000000000 --- a/keyboards/keychron/k7_max/ansi/white/keymaps/default/keymap.c +++ /dev/null @@ -1,72 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#include QMK_KEYBOARD_H -#include "keychron_common.h" - -enum layers{ - MAC_BASE, - WIN_BASE, - MAC_FN1, - WIN_FN1, - FN2, -}; - -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { -[MAC_BASE] = LAYOUT_ansi_68( - 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_DEL, - 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_HOME, - 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_PGUP, - 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_PGDN, - KC_LCTL, KC_LOPTN, KC_LCMMD, KC_SPC, KC_RCMMD,MO(MAC_FN1),MO(FN2), KC_LEFT, KC_DOWN, KC_RGHT), - -[WIN_BASE] = LAYOUT_ansi_68( - 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_DEL, - 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_HOME, - 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_PGUP, - 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_PGDN, - KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(WIN_FN1),MO(FN2), KC_LEFT, KC_DOWN, KC_RGHT), - -[MAC_FN1] = LAYOUT_ansi_68( - KC_GRV, KC_BRID, KC_BRIU, KC_MCTRL, KC_LNPAD, BL_DOWN, BL_UP, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_END, - BL_TOGG, BL_STEP, BL_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, BL_DOWN, _______, _______, _______, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - -[WIN_FN1] = LAYOUT_ansi_68( - KC_GRV, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, BL_DOWN, BL_UP, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_END, - BL_TOGG, BL_STEP, BL_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, BL_DOWN, _______, _______, _______, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - -[FN2] = LAYOUT_ansi_68( - KC_TILD, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), -}; - -// clang-format on -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - if (!process_record_keychron_common(keycode, record)) { - return false; - } - return true; -} diff --git a/keyboards/keychron/k7_max/ansi/white/keymaps/via/keymap.c b/keyboards/keychron/k7_max/ansi/white/keymaps/via/keymap.c deleted file mode 100644 index 093bf2c084..0000000000 --- a/keyboards/keychron/k7_max/ansi/white/keymaps/via/keymap.c +++ /dev/null @@ -1,72 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#include QMK_KEYBOARD_H -#include "keychron_common.h" - -enum layers{ - MAC_BASE, - WIN_BASE, - MAC_FN1, - WIN_FN1, - FN2, -}; - -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { -[MAC_BASE] = LAYOUT_ansi_68( - 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_DEL, - 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_HOME, - 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_PGUP, - 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_PGDN, - KC_LCTL, KC_LOPTN, KC_LCMMD, KC_SPC, KC_RCMMD,MO(MAC_FN1),MO(FN2), KC_LEFT, KC_DOWN, KC_RGHT), - -[WIN_BASE] = LAYOUT_ansi_68( - 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_DEL, - 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_HOME, - 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_PGUP, - 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_PGDN, - KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(WIN_FN1),MO(FN2), KC_LEFT, KC_DOWN, KC_RGHT), - -[MAC_FN1] = LAYOUT_ansi_68( - KC_GRV, KC_BRID, KC_BRIU, KC_MCTRL, KC_LNPAD, BL_DOWN, BL_UP, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_END, - BL_TOGG, BL_STEP, BL_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, BL_DOWN, _______, _______, _______, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - -[WIN_FN1] = LAYOUT_ansi_68( - KC_GRV, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, BL_DOWN, BL_UP, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_END, - BL_TOGG, BL_STEP, BL_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, BL_DOWN, _______, _______, _______, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - -[FN2] = LAYOUT_ansi_68( - KC_TILD, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), -}; - -// clang-format on -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - if (!process_record_keychron_common(keycode, record)) { - return false; - } - return true; -} diff --git a/keyboards/keychron/k7_max/ansi/white/keymaps/via/rules.mk b/keyboards/keychron/k7_max/ansi/white/keymaps/via/rules.mk deleted file mode 100644 index 1e5b99807c..0000000000 --- a/keyboards/keychron/k7_max/ansi/white/keymaps/via/rules.mk +++ /dev/null @@ -1 +0,0 @@ -VIA_ENABLE = yes diff --git a/keyboards/keychron/k7_max/ansi/white/rules.mk b/keyboards/keychron/k7_max/ansi/white/rules.mk deleted file mode 100644 index 6e7633bfe0..0000000000 --- a/keyboards/keychron/k7_max/ansi/white/rules.mk +++ /dev/null @@ -1 +0,0 @@ -# This file intentionally left blank diff --git a/keyboards/keychron/k7_max/ansi/white/white.c b/keyboards/keychron/k7_max/ansi/white/white.c deleted file mode 100644 index f2e49a7f50..0000000000 --- a/keyboards/keychron/k7_max/ansi/white/white.c +++ /dev/null @@ -1,128 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#include "quantum.h" - -// clang-format off -#ifdef LED_MATRIX_ENABLE -const snled27351_led_t g_snled27351_leds[LED_MATRIX_LED_COUNT] = { -/* Refer to SNLED27351 manual for these locations - * driver - * | LED address - * | | */ - {0, E_1}, - {0, E_2}, - {0, E_3}, - {0, E_4}, - {0, E_5}, - {0, E_6}, - {0, E_7}, - {0, E_8}, - {0, E_9}, - {0, E_10}, - {0, E_11}, - {0, E_12}, - {0, E_13}, - {0, E_14}, - {0, E_16}, - - {0, D_1}, - {0, D_2}, - {0, D_3}, - {0, D_4}, - {0, D_5}, - {0, D_6}, - {0, D_7}, - {0, D_8}, - {0, D_9}, - {0, D_10}, - {0, D_11}, - {0, D_12}, - {0, D_13}, - {0, D_14}, - {0, D_16}, - - {0, C_1}, - {0, C_2}, - {0, C_3}, - {0, C_4}, - {0, C_5}, - {0, C_6}, - {0, C_7}, - {0, C_8}, - {0, C_9}, - {0, C_10}, - {0, C_11}, - {0, C_12}, - {0, C_14}, - {0, C_16}, - - {0, B_1}, - {0, B_3}, - {0, B_4}, - {0, B_5}, - {0, B_6}, - {0, B_7}, - {0, B_8}, - {0, B_9}, - {0, B_10}, - {0, B_11}, - {0, B_12}, - {0, B_13}, - {0, B_14}, - {0, B_16}, - - {0, A_1}, - {0, A_2}, - {0, A_3}, - {0, A_7}, - {0, A_11}, - {0, A_12}, - {0, A_13}, - {0, A_14}, - {0, A_15}, - {0, A_16}, -}; - -#define __ NO_LED - -led_config_t g_led_config = { - { - // Key Matrix to LED Index - { 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, 40, 41, __, 42, __, 43 }, - { 44, __, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, __, 55, 56, 57 }, - { 58, 59, 60, __, __, __, 61, __, __, __, 62, 63, 64, 65, 66, 67 }, - }, - { - // LED Index to Physical Position - {0, 0}, {15, 0}, {30, 0}, {45, 0}, {60, 0}, {75, 0}, { 90, 0}, {105, 0}, {119, 0}, {134, 0}, {149, 0}, {164, 0}, {179, 0}, {202, 0}, {224, 0}, - {4,16}, {22,16}, {37,16}, {52,16}, {67,16}, {82,16}, { 97,16}, {112,16}, {127,16}, {142,16}, {157,16}, {172,16}, {187,16}, {205,16}, {224,16}, - {6,32}, {26,32}, {41,32}, {56,32}, {71,32}, {86,32}, {101,32}, {116,32}, {131,32}, {146,32}, {161,32}, {175,32}, {200,32}, {224,32}, - {9,48}, {34,48}, {49,48}, {64,48}, {78,48}, { 93,48}, {108,48}, {123,48}, {138,48}, {153,48}, {168,48}, {189,48}, {209,48}, {224,48}, - {2,64}, {21,64}, {39,64}, { 95,64}, {149,64}, {164,64}, {179,64}, {194,64}, {209,64}, {224,64} - }, - { - // RGB LED Index to Flag - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 - } -}; -#endif diff --git a/keyboards/keychron/k7_max/board.h b/keyboards/keychron/k7_max/board.h deleted file mode 100644 index 2e3a8eb926..0000000000 --- a/keyboards/keychron/k7_max/board.h +++ /dev/null @@ -1,225 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#pragma once - -#include_next - -// clang-format off - -/* Set GPIOA_SWDIO to INPUT and NOT FLOATING */ -#undef VAL_GPIOA_MODER -#define VAL_GPIOA_MODER (PIN_MODE_INPUT(GPIOA_BUTTON) | \ - PIN_MODE_INPUT(GPIOA_PIN1) | \ - PIN_MODE_INPUT(GPIOA_PIN2) | \ - PIN_MODE_INPUT(GPIOA_PIN3) | \ - PIN_MODE_ALTERNATE(GPIOA_CS43L22_LRCK) |\ - PIN_MODE_ALTERNATE(GPIOA_L3GD20_SCL) | \ - PIN_MODE_ALTERNATE(GPIOA_L3GD20_SD0) | \ - PIN_MODE_ALTERNATE(GPIOA_L3GD20_SDI) | \ - PIN_MODE_INPUT(GPIOA_PIN8) | \ - PIN_MODE_INPUT(GPIOA_VBUS_FS) | \ - PIN_MODE_ALTERNATE(GPIOA_OTG_FS_ID) | \ - PIN_MODE_ALTERNATE(GPIOA_OTG_FS_DM) | \ - PIN_MODE_ALTERNATE(GPIOA_OTG_FS_DP) | \ - PIN_MODE_INPUT(GPIOA_SWDIO) | \ - PIN_MODE_INPUT(GPIOA_SWCLK) | \ - PIN_MODE_INPUT(GPIOA_PIN15)) - -#undef VAL_GPIOA_PUPDR -#define VAL_GPIOA_PUPDR (PIN_PUPDR_FLOATING(GPIOA_BUTTON) | \ - PIN_PUPDR_PULLUP(GPIOA_PIN1) | \ - PIN_PUPDR_PULLUP(GPIOA_PIN2) | \ - PIN_PUPDR_PULLUP(GPIOA_PIN3) | \ - PIN_PUPDR_FLOATING(GPIOA_CS43L22_LRCK) |\ - PIN_PUPDR_FLOATING(GPIOA_L3GD20_SCL) | \ - PIN_PUPDR_PULLUP(GPIOA_L3GD20_SD0) | \ - PIN_PUPDR_PULLUP(GPIOA_L3GD20_SDI) | \ - PIN_PUPDR_PULLUP(GPIOA_PIN8) | \ - PIN_PUPDR_FLOATING(GPIOA_VBUS_FS) | \ - PIN_PUPDR_FLOATING(GPIOA_OTG_FS_ID) | \ - PIN_PUPDR_FLOATING(GPIOA_OTG_FS_DM) | \ - PIN_PUPDR_FLOATING(GPIOA_OTG_FS_DP) | \ - PIN_PUPDR_PULLUP(GPIOA_SWDIO) | \ - PIN_PUPDR_PULLUP(GPIOA_SWCLK) | \ - PIN_PUPDR_PULLUP(GPIOA_PIN15)) - -#undef VAL_GPIOB_MODER -#define VAL_GPIOB_MODER (PIN_MODE_INPUT(GPIOB_PIN0) | \ - PIN_MODE_INPUT(GPIOB_PIN1) | \ - PIN_MODE_INPUT(GPIOB_PIN2) | \ - PIN_MODE_INPUT(GPIOB_SWO) | \ - PIN_MODE_INPUT(GPIOB_PIN4) | \ - PIN_MODE_INPUT(GPIOB_PIN5) | \ - PIN_MODE_INPUT(GPIOB_LSM303DLHC_SCL) | \ - PIN_MODE_INPUT(GPIOB_PIN7) | \ - PIN_MODE_INPUT(GPIOB_PIN8) | \ - PIN_MODE_INPUT(GPIOB_LSM303DLHC_SDA) | \ - PIN_MODE_INPUT(GPIOB_MP45DT02_CLK_IN) |\ - PIN_MODE_INPUT(GPIOB_PIN11) | \ - PIN_MODE_INPUT(GPIOB_PIN12) | \ - PIN_MODE_INPUT(GPIOB_PIN13) | \ - PIN_MODE_INPUT(GPIOB_PIN14) | \ - PIN_MODE_INPUT(GPIOB_PIN15)) - -#undef VAL_GPIOB_PUPDR -#define VAL_GPIOB_PUPDR (PIN_PUPDR_PULLDOWN(GPIOB_PIN0) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN1) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN2) | \ - PIN_PUPDR_PULLDOWN(GPIOB_SWO) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN4) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN5) | \ - PIN_PUPDR_PULLDOWN(GPIOB_LSM303DLHC_SCL) |\ - PIN_PUPDR_PULLDOWN(GPIOB_PIN7) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN8) | \ - PIN_PUPDR_PULLDOWN(GPIOB_LSM303DLHC_SDA) |\ - PIN_PUPDR_PULLDOWN(GPIOB_MP45DT02_CLK_IN) |\ - PIN_PUPDR_PULLDOWN(GPIOB_PIN11) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN12) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN13) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN14) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN15)) - -#undef VAL_GPIOB_AFRL -#define VAL_GPIOB_AFRL (PIN_AFIO_AF(GPIOB_PIN0, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN1, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN2, 0U) | \ - PIN_AFIO_AF(GPIOB_SWO, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN4, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN5, 0U) | \ - PIN_AFIO_AF(GPIOB_LSM303DLHC_SCL, 0) | \ - PIN_AFIO_AF(GPIOB_PIN7, 0U)) - -#undef VAL_GPIOB_AFRH -#define VAL_GPIOB_AFRH (PIN_AFIO_AF(GPIOB_PIN8, 0U) | \ - PIN_AFIO_AF(GPIOB_LSM303DLHC_SDA, 0) | \ - PIN_AFIO_AF(GPIOB_MP45DT02_CLK_IN, 0U) |\ - PIN_AFIO_AF(GPIOB_PIN11, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN12, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN13, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN14, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN15, 0U)) - -/* C5 Need to be pulldown */ -#undef VAL_GPIOC_MODER -#define VAL_GPIOC_MODER (PIN_MODE_INPUT(GPIOC_OTG_FS_POWER_ON) |\ - PIN_MODE_INPUT(GPIOC_PIN1) | \ - PIN_MODE_INPUT(GPIOC_PIN2) | \ - PIN_MODE_INPUT(GPIOC_CS43L22_AIN4x) | \ - PIN_MODE_INPUT(GPIOC_PIN4) | \ - PIN_MODE_INPUT(GPIOC_PIN5) | \ - PIN_MODE_INPUT(GPIOC_PIN6) | \ - PIN_MODE_INPUT(GPIOC_CS43L22_MCLK) | \ - PIN_MODE_INPUT(GPIOC_PIN8) | \ - PIN_MODE_INPUT(GPIOC_PIN9) | \ - PIN_MODE_INPUT(GPIOC_CS43L22_SCLK) | \ - PIN_MODE_INPUT(GPIOC_PIN11) | \ - PIN_MODE_INPUT(GPIOC_CS43L22_SDIN) | \ - PIN_MODE_INPUT(GPIOC_PIN13) | \ - PIN_MODE_INPUT(GPIOC_OSC32_IN) | \ - PIN_MODE_INPUT(GPIOC_OSC32_OUT)) - -#undef VAL_GPIOC_PUPDR -#define VAL_GPIOC_PUPDR (PIN_PUPDR_PULLUP(GPIOC_OTG_FS_POWER_ON) |\ - PIN_PUPDR_PULLUP(GPIOC_PIN1) | \ - PIN_PUPDR_PULLUP(GPIOC_PIN2) | \ - PIN_PUPDR_PULLUP(GPIOC_CS43L22_AIN4x) |\ - PIN_PUPDR_PULLUP(GPIOC_PIN4) | \ - PIN_PUPDR_PULLDOWN(GPIOC_PIN5) | \ - PIN_PUPDR_PULLUP(GPIOC_PIN6) | \ - PIN_PUPDR_PULLUP(GPIOC_CS43L22_MCLK) | \ - PIN_PUPDR_PULLUP(GPIOC_PIN8) | \ - PIN_PUPDR_PULLUP(GPIOC_PIN9) | \ - PIN_PUPDR_PULLUP(GPIOC_CS43L22_SCLK) | \ - PIN_PUPDR_PULLUP(GPIOC_PIN11) | \ - PIN_PUPDR_PULLUP(GPIOC_CS43L22_SDIN) | \ - PIN_PUPDR_PULLUP(GPIOC_PIN13) | \ - PIN_PUPDR_PULLUP(GPIOC_OSC32_IN) | \ - PIN_PUPDR_PULLUP(GPIOC_OSC32_OUT)) - -/* Set all GPIOD pins to INPUT & PULLUP to avoid FLOATING */ -#undef VAL_GPIOD_MODER -#define VAL_GPIOD_MODER (PIN_MODE_INPUT(GPIOD_PIN0) | \ - PIN_MODE_INPUT(GPIOD_PIN1) | \ - PIN_MODE_INPUT(GPIOD_PIN2) | \ - PIN_MODE_INPUT(GPIOD_PIN3) | \ - PIN_MODE_INPUT(GPIOD_CS43L22_RESET) | \ - PIN_MODE_INPUT(GPIOD_OverCurrent) | \ - PIN_MODE_INPUT(GPIOD_PIN6) | \ - PIN_MODE_INPUT(GPIOD_PIN7) | \ - PIN_MODE_INPUT(GPIOD_PIN8) | \ - PIN_MODE_INPUT(GPIOD_PIN9) | \ - PIN_MODE_INPUT(GPIOD_PIN10) | \ - PIN_MODE_INPUT(GPIOD_PIN11) | \ - PIN_MODE_INPUT(GPIOD_LED4) | \ - PIN_MODE_INPUT(GPIOD_LED3) | \ - PIN_MODE_INPUT(GPIOD_LED5) | \ - PIN_MODE_INPUT(GPIOD_LED6)) - -#undef VAL_GPIOD_PUPDR -#define VAL_GPIOD_PUPDR (PIN_PUPDR_PULLUP(GPIOD_PIN0) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN1) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN2) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN3) | \ - PIN_PUPDR_PULLUP(GPIOD_CS43L22_RESET) |\ - PIN_PUPDR_PULLUP(GPIOD_OverCurrent) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN6) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN7) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN8) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN9) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN10) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN11) | \ - PIN_PUPDR_PULLUP(GPIOD_LED4) | \ - PIN_PUPDR_PULLUP(GPIOD_LED3) | \ - PIN_PUPDR_PULLUP(GPIOD_LED5) | \ - PIN_PUPDR_PULLUP(GPIOD_LED6)) - -/* Set all GPIOE pins to INPUT & PULLUP to avoid FLOATING */ -#undef VAL_GPIOE_MODER -#define VAL_GPIOE_MODER (PIN_MODE_INPUT(GPIOE_L3GD20_INT1) | \ - PIN_MODE_INPUT(GPIOE_L3GD20_INT2) | \ - PIN_MODE_INPUT(GPIOE_LSM303DLHC_DRDY) |\ - PIN_MODE_INPUT(GPIOE_L3GD20_CS) | \ - PIN_MODE_INPUT(GPIOE_LSM303DLHC_INT1) |\ - PIN_MODE_INPUT(GPIOE_LSM303DLHC_INT2) |\ - PIN_MODE_INPUT(GPIOE_PIN6) | \ - PIN_MODE_INPUT(GPIOE_PIN7) | \ - PIN_MODE_INPUT(GPIOE_PIN8) | \ - PIN_MODE_INPUT(GPIOE_PIN9) | \ - PIN_MODE_INPUT(GPIOE_PIN10) | \ - PIN_MODE_INPUT(GPIOE_PIN11) | \ - PIN_MODE_INPUT(GPIOE_PIN12) | \ - PIN_MODE_INPUT(GPIOE_PIN13) | \ - PIN_MODE_INPUT(GPIOE_PIN14) | \ - PIN_MODE_INPUT(GPIOE_PIN15)) - -#undef VAL_GPIOE_PUPDR -#define VAL_GPIOE_PUPDR (PIN_PUPDR_PULLUP(GPIOE_L3GD20_INT1) | \ - PIN_PUPDR_PULLUP(GPIOE_L3GD20_INT2) | \ - PIN_PUPDR_PULLUP(GPIOE_LSM303DLHC_DRDY) |\ - PIN_PUPDR_PULLUP(GPIOE_L3GD20_CS) | \ - PIN_PUPDR_PULLUP(GPIOE_LSM303DLHC_INT1) |\ - PIN_PUPDR_PULLUP(GPIOE_LSM303DLHC_INT2) |\ - PIN_PUPDR_PULLUP(GPIOE_PIN6) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN7) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN8) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN9) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN10) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN11) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN12) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN13) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN14) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN15)) diff --git a/keyboards/keychron/k7_max/config.h b/keyboards/keychron/k7_max/config.h deleted file mode 100644 index fd4545394a..0000000000 --- a/keyboards/keychron/k7_max/config.h +++ /dev/null @@ -1,76 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#pragma once - -#if defined(RGB_MATRIX_ENABLE) || defined(LED_MATRIX_ENABLE) || defined(LK_WIRELESS_ENABLE) -/* SPI configuration */ -# define SPI_DRIVER SPID1 -# define SPI_SCK_PIN A5 -# define SPI_MISO_PIN A6 -# define SPI_MOSI_PIN A7 -#endif - -#if defined(RGB_MATRIX_ENABLE) || defined(LED_MATRIX_ENABLE) -# define LED_DRIVER_SHUTDOWN_PIN B7 -# define SNLED23751_SPI_DIVISOR 16 -#endif - -#ifdef LK_WIRELESS_ENABLE -/* Hardware configuration */ -# define P2P4_MODE_SELECT_PIN A10 -# define BT_MODE_SELECT_PIN A9 - -# define LKBT51_RESET_PIN C4 -# define LKBT51_INT_INPUT_PIN B1 -# define BLUETOOTH_INT_OUTPUT_PIN A4 - -# define USB_POWER_SENSE_PIN B0 -# define USB_POWER_CONNECTED_LEVEL 0 - -# define BAT_CHARGING_PIN B13 -# define BAT_CHARGING_LEVEL 0 - -# define BAT_LOW_LED_PIN B12 -# define BAT_LOW_LED_PIN_ON_STATE 1 - -# define BT_HOST_DEVICES_COUNT 3 - -# if defined(RGB_MATRIX_ENABLE) || defined(LED_MATRIX_ENABLE) -# 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 - -/* Reinit LED driver on tranport changed */ -# define REINIT_LED_DRIVER 1 -# endif - -/* Keep USB connection in blueooth mode */ -# define KEEP_USB_CONNECTION_IN_WIRELESS_MODE - -/* Enable bluetooth NKRO */ -# define WIRELESS_NKRO_ENABLE -#endif - -/* Factory test keys */ -#define FN_KEY_3 MO(4) - -#define MATRIX_IO_DELAY 10 diff --git a/keyboards/keychron/k7_max/firmware/keychron_k7_max_ansi_rgb_via.bin b/keyboards/keychron/k7_max/firmware/keychron_k7_max_ansi_rgb_via.bin deleted file mode 100644 index ecf44af16f..0000000000 Binary files a/keyboards/keychron/k7_max/firmware/keychron_k7_max_ansi_rgb_via.bin and /dev/null differ diff --git a/keyboards/keychron/k7_max/firmware/keychron_k7_max_ansi_white_via.bin b/keyboards/keychron/k7_max/firmware/keychron_k7_max_ansi_white_via.bin deleted file mode 100644 index 3e034195af..0000000000 Binary files a/keyboards/keychron/k7_max/firmware/keychron_k7_max_ansi_white_via.bin and /dev/null differ diff --git a/keyboards/keychron/k7_max/firmware/keychron_k7_max_iso_rgb_via.bin b/keyboards/keychron/k7_max/firmware/keychron_k7_max_iso_rgb_via.bin deleted file mode 100644 index f169378a2f..0000000000 Binary files a/keyboards/keychron/k7_max/firmware/keychron_k7_max_iso_rgb_via.bin and /dev/null differ diff --git a/keyboards/keychron/k7_max/firmware/keychron_k7_max_iso_white_via.bin b/keyboards/keychron/k7_max/firmware/keychron_k7_max_iso_white_via.bin deleted file mode 100644 index 1110b72da5..0000000000 Binary files a/keyboards/keychron/k7_max/firmware/keychron_k7_max_iso_white_via.bin and /dev/null differ diff --git a/keyboards/keychron/k7_max/firmware/keychron_k7_max_jis_rgb_via.bin b/keyboards/keychron/k7_max/firmware/keychron_k7_max_jis_rgb_via.bin deleted file mode 100644 index 7fbd6e6009..0000000000 Binary files a/keyboards/keychron/k7_max/firmware/keychron_k7_max_jis_rgb_via.bin and /dev/null differ diff --git a/keyboards/keychron/k7_max/firmware/keychron_k7_max_jis_white_via.bin b/keyboards/keychron/k7_max/firmware/keychron_k7_max_jis_white_via.bin deleted file mode 100644 index 9e15e84f35..0000000000 Binary files a/keyboards/keychron/k7_max/firmware/keychron_k7_max_jis_white_via.bin and /dev/null differ diff --git a/keyboards/keychron/k7_max/halconf.h b/keyboards/keychron/k7_max/halconf.h deleted file mode 100644 index be6b5564c0..0000000000 --- a/keyboards/keychron/k7_max/halconf.h +++ /dev/null @@ -1,28 +0,0 @@ -/* Copyright 2024 @ 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 - -#define _CHIBIOS_HAL_CONF_VER_8_0_ - -#define HAL_USE_SPI TRUE - -#ifdef LK_WIRELESS_ENABLE -# define HAL_USE_RTC TRUE -# define PAL_USE_CALLBACKS TRUE -#endif - -#include_next diff --git a/keyboards/keychron/k7_max/info.json b/keyboards/keychron/k7_max/info.json deleted file mode 100644 index fb9fa181ef..0000000000 --- a/keyboards/keychron/k7_max/info.json +++ /dev/null @@ -1,277 +0,0 @@ -{ - "keyboard_name": "Keychron K7 Max", - "manufacturer": "Keychron", - "url": "https://github.com/Keychron", - "maintainer": "lokher", - "processor": "STM32F401", - "bootloader": "stm32-dfu", - "usb": { - "vid": "0x3434" - }, - "features": { - "bootmagic": true, - "extrakey": true, - "mousekey": true, - "dip_switch": true, - "nkro": true, - "raw": true, - "send_string": true - }, - "matrix_pins": { - "cols": ["C6", "C7", "C8", "A14", "A15", "C10", "C11", "C13", "C14", "C15", "C0", "C1", "C2", "C3", "A0", "A1"], - "rows": ["D2", "B3", "B4", "B5", "B6"] - }, - "diode_direction": "ROW2COL", - "dip_switch": { - "pins": ["B14"] - }, - "indicators": { - "caps_lock": "A13", - "on_state": 1 - }, - "eeprom": { - "wear_leveling": { - "driver": "embedded_flash", - "logical_size": 2048, - "backing_size": 4096 - } - }, - "dynamic_keymap": { - "layer_count": 5 - }, - "layouts": { - "LAYOUT_ansi_68": { - "layout": [ - {"matrix": [0, 0], "x": 0, "y": 0}, - {"matrix": [0, 1], "x": 1, "y": 0}, - {"matrix": [0, 2], "x": 2, "y": 0}, - {"matrix": [0, 3], "x": 3, "y": 0}, - {"matrix": [0, 4], "x": 4, "y": 0}, - {"matrix": [0, 5], "x": 5, "y": 0}, - {"matrix": [0, 6], "x": 6, "y": 0}, - {"matrix": [0, 7], "x": 7, "y": 0}, - {"matrix": [0, 8], "x": 8, "y": 0}, - {"matrix": [0, 9], "x": 9, "y": 0}, - {"matrix": [0, 10], "x": 10, "y": 0}, - {"matrix": [0, 11], "x": 11, "y": 0}, - {"matrix": [0, 12], "x": 12, "y": 0}, - {"matrix": [0, 13], "x": 13, "y": 0, "w": 2}, - {"matrix": [0, 15], "x": 15, "y": 0}, - - {"matrix": [1, 0], "x": 0, "y": 1, "w": 1.5}, - {"matrix": [1, 1], "x": 1.5, "y": 1}, - {"matrix": [1, 2], "x": 2.5, "y": 1}, - {"matrix": [1, 3], "x": 3.5, "y": 1}, - {"matrix": [1, 4], "x": 4.5, "y": 1}, - {"matrix": [1, 5], "x": 5.5, "y": 1}, - {"matrix": [1, 6], "x": 6.5, "y": 1}, - {"matrix": [1, 7], "x": 7.5, "y": 1}, - {"matrix": [1, 8], "x": 8.5, "y": 1}, - {"matrix": [1, 9], "x": 9.5, "y": 1}, - {"matrix": [1, 10], "x": 10.5, "y": 1}, - {"matrix": [1, 11], "x": 11.5, "y": 1}, - {"matrix": [1, 12], "x": 12.5, "y": 1}, - {"matrix": [1, 13], "x": 13.5, "y": 1, "w": 1.5}, - {"matrix": [1, 15], "x": 15, "y": 1}, - - {"matrix": [2, 0], "x": 0, "y": 2, "w": 1.75}, - {"matrix": [2, 1], "x": 1.75, "y": 2}, - {"matrix": [2, 2], "x": 2.75, "y": 2}, - {"matrix": [2, 3], "x": 3.75, "y": 2}, - {"matrix": [2, 4], "x": 4.75, "y": 2}, - {"matrix": [2, 5], "x": 5.75, "y": 2}, - {"matrix": [2, 6], "x": 6.75, "y": 2}, - {"matrix": [2, 7], "x": 7.75, "y": 2}, - {"matrix": [2, 8], "x": 8.75, "y": 2}, - {"matrix": [2, 9], "x": 9.75, "y": 2}, - {"matrix": [2, 10], "x": 10.75, "y": 2}, - {"matrix": [2, 11], "x": 11.75, "y": 2}, - {"matrix": [2, 13], "x": 12.75, "y": 2, "w": 2.25}, - {"matrix": [2, 15], "x": 15, "y": 2}, - - {"matrix": [3, 0], "x": 0, "y": 3, "w": 2.25}, - {"matrix": [3, 2], "x": 2.25, "y": 3}, - {"matrix": [3, 3], "x": 3.25, "y": 3}, - {"matrix": [3, 4], "x": 4.25, "y": 3}, - {"matrix": [3, 5], "x": 5.25, "y": 3}, - {"matrix": [3, 6], "x": 6.25, "y": 3}, - {"matrix": [3, 7], "x": 7.25, "y": 3}, - {"matrix": [3, 8], "x": 8.25, "y": 3}, - {"matrix": [3, 9], "x": 9.25, "y": 3}, - {"matrix": [3, 10], "x": 10.25, "y": 3}, - {"matrix": [3, 11], "x": 11.25, "y": 3}, - {"matrix": [3, 13], "x": 12.25, "y": 3, "w": 1.75}, - {"matrix": [3, 14], "x": 14, "y": 3}, - {"matrix": [3, 15], "x": 15, "y": 3}, - - {"matrix": [4, 0], "x": 0, "y": 4, "w": 1.25}, - {"matrix": [4, 1], "x": 1.25, "y": 4, "w": 1.25}, - {"matrix": [4, 2], "x": 2.5, "y": 4, "w": 1.25}, - {"matrix": [4, 6], "x": 3.75, "y": 4, "w": 6.25}, - {"matrix": [4, 10], "x": 10, "y": 4}, - {"matrix": [4, 11], "x": 11, "y": 4}, - {"matrix": [4, 12], "x": 12, "y": 4}, - {"matrix": [4, 13], "x": 13, "y": 4}, - {"matrix": [4, 14], "x": 14, "y": 4}, - {"matrix": [4, 15], "x": 15, "y": 4} - ] - }, - "LAYOUT_iso_69": { - "layout": [ - {"matrix": [0, 0], "x": 0, "y": 0}, - {"matrix": [0, 1], "x": 1, "y": 0}, - {"matrix": [0, 2], "x": 2, "y": 0}, - {"matrix": [0, 3], "x": 3, "y": 0}, - {"matrix": [0, 4], "x": 4, "y": 0}, - {"matrix": [0, 5], "x": 5, "y": 0}, - {"matrix": [0, 6], "x": 6, "y": 0}, - {"matrix": [0, 7], "x": 7, "y": 0}, - {"matrix": [0, 8], "x": 8, "y": 0}, - {"matrix": [0, 9], "x": 9, "y": 0}, - {"matrix": [0, 10], "x": 10, "y": 0}, - {"matrix": [0, 11], "x": 11, "y": 0}, - {"matrix": [0, 12], "x": 12, "y": 0}, - {"matrix": [0, 13], "x": 13, "y": 0, "w": 2}, - {"matrix": [0, 15], "x": 15, "y": 0}, - - {"matrix": [1, 0], "x": 0, "y": 1, "w": 1.5}, - {"matrix": [1, 1], "x": 1.5, "y": 1}, - {"matrix": [1, 2], "x": 2.5, "y": 1}, - {"matrix": [1, 3], "x": 3.5, "y": 1}, - {"matrix": [1, 4], "x": 4.5, "y": 1}, - {"matrix": [1, 5], "x": 5.5, "y": 1}, - {"matrix": [1, 6], "x": 6.5, "y": 1}, - {"matrix": [1, 7], "x": 7.5, "y": 1}, - {"matrix": [1, 8], "x": 8.5, "y": 1}, - {"matrix": [1, 9], "x": 9.5, "y": 1}, - {"matrix": [1, 10], "x": 10.5, "y": 1}, - {"matrix": [1, 11], "x": 11.5, "y": 1}, - {"matrix": [1, 12], "x": 12.5, "y": 1}, - {"matrix": [1, 15], "x": 15, "y": 1}, - - {"matrix": [2, 0], "x": 0, "y": 2, "w": 1.75}, - {"matrix": [2, 1], "x": 1.75, "y": 2}, - {"matrix": [2, 2], "x": 2.75, "y": 2}, - {"matrix": [2, 3], "x": 3.75, "y": 2}, - {"matrix": [2, 4], "x": 4.75, "y": 2}, - {"matrix": [2, 5], "x": 5.75, "y": 2}, - {"matrix": [2, 6], "x": 6.75, "y": 2}, - {"matrix": [2, 7], "x": 7.75, "y": 2}, - {"matrix": [2, 8], "x": 8.75, "y": 2}, - {"matrix": [2, 9], "x": 9.75, "y": 2}, - {"matrix": [2, 10], "x": 10.75, "y": 2}, - {"matrix": [2, 11], "x": 11.75, "y": 2}, - {"matrix": [2, 13], "x": 12.75, "y": 2}, - {"matrix": [1, 13], "x": 13.75, "y": 1, "w": 1.25, "h": 2}, - {"matrix": [2, 15], "x": 15, "y": 2}, - - {"matrix": [3, 0], "x": 0, "y": 3, "w": 1.25}, - {"matrix": [3, 1], "x": 1.25, "y": 3}, - {"matrix": [3, 2], "x": 2.25, "y": 3}, - {"matrix": [3, 3], "x": 3.25, "y": 3}, - {"matrix": [3, 4], "x": 4.25, "y": 3}, - {"matrix": [3, 5], "x": 5.25, "y": 3}, - {"matrix": [3, 6], "x": 6.25, "y": 3}, - {"matrix": [3, 7], "x": 7.25, "y": 3}, - {"matrix": [3, 8], "x": 8.25, "y": 3}, - {"matrix": [3, 9], "x": 9.25, "y": 3}, - {"matrix": [3, 10], "x": 10.25, "y": 3}, - {"matrix": [3, 11], "x": 11.25, "y": 3}, - {"matrix": [3, 13], "x": 12.25, "y": 3, "w": 1.75}, - {"matrix": [3, 14], "x": 14, "y": 3}, - {"matrix": [3, 15], "x": 15, "y": 3}, - - {"matrix": [4, 0], "x": 0, "y": 4, "w": 1.25}, - {"matrix": [4, 1], "x": 1.25, "y": 4, "w": 1.25}, - {"matrix": [4, 2], "x": 2.5, "y": 4, "w": 1.25}, - {"matrix": [4, 6], "x": 3.75, "y": 4, "w": 6.25}, - {"matrix": [4, 10], "x": 10, "y": 4}, - {"matrix": [4, 11], "x": 11, "y": 4}, - {"matrix": [4, 12], "x": 12, "y": 4}, - {"matrix": [4, 13], "x": 13, "y": 4}, - {"matrix": [4, 14], "x": 14, "y": 4}, - {"matrix": [4, 15], "x": 15, "y": 4} - ] - }, - "LAYOUT_jis_71": { - "layout": [ - {"matrix": [0, 0], "x": 0, "y": 0}, - {"matrix": [0, 1], "x": 1, "y": 0}, - {"matrix": [0, 2], "x": 2, "y": 0}, - {"matrix": [0, 3], "x": 3, "y": 0}, - {"matrix": [0, 4], "x": 4, "y": 0}, - {"matrix": [0, 5], "x": 5, "y": 0}, - {"matrix": [0, 6], "x": 6, "y": 0}, - {"matrix": [0, 7], "x": 7, "y": 0}, - {"matrix": [0, 8], "x": 8, "y": 0}, - {"matrix": [0, 9], "x": 9, "y": 0}, - {"matrix": [0, 10], "x": 10, "y": 0}, - {"matrix": [0, 11], "x": 11, "y": 0}, - {"matrix": [0, 12], "x": 12, "y": 0}, - {"matrix": [0, 13], "x": 13, "y": 0}, - {"matrix": [0, 14], "x": 14, "y": 0}, - {"matrix": [0, 15], "x": 15, "y": 0}, - - {"matrix": [1, 0], "x": 0, "y": 1, "w": 1.5}, - {"matrix": [1, 1], "x": 1.5, "y": 1}, - {"matrix": [1, 2], "x": 2.5, "y": 1}, - {"matrix": [1, 3], "x": 3.5, "y": 1}, - {"matrix": [1, 4], "x": 4.5, "y": 1}, - {"matrix": [1, 5], "x": 5.5, "y": 1}, - {"matrix": [1, 6], "x": 6.5, "y": 1}, - {"matrix": [1, 7], "x": 7.5, "y": 1}, - {"matrix": [1, 8], "x": 8.5, "y": 1}, - {"matrix": [1, 9], "x": 9.5, "y": 1}, - {"matrix": [1, 10], "x": 10.5, "y": 1}, - {"matrix": [1, 11], "x": 11.5, "y": 1}, - {"matrix": [1, 12], "x": 12.5, "y": 1}, - {"matrix": [1, 15], "x": 15, "y": 1}, - - {"matrix": [2, 0], "x": 0, "y": 2, "w": 1.75}, - {"matrix": [2, 1], "x": 1.75, "y": 2}, - {"matrix": [2, 2], "x": 2.75, "y": 2}, - {"matrix": [2, 3], "x": 3.75, "y": 2}, - {"matrix": [2, 4], "x": 4.75, "y": 2}, - {"matrix": [2, 5], "x": 5.75, "y": 2}, - {"matrix": [2, 6], "x": 6.75, "y": 2}, - {"matrix": [2, 7], "x": 7.75, "y": 2}, - {"matrix": [2, 8], "x": 8.75, "y": 2}, - {"matrix": [2, 9], "x": 9.75, "y": 2}, - {"matrix": [2, 10], "x": 10.75, "y": 2}, - {"matrix": [2, 11], "x": 11.75, "y": 2}, - {"matrix": [2, 13], "x": 12.75, "y": 2}, - {"matrix": [1, 13], "x": 13.75, "y": 1, "w": 1.25, "h": 2}, - {"matrix": [2, 15], "x": 15, "y": 2}, - - {"matrix": [3, 0], "x": 0, "y": 3, "w": 2.25}, - {"matrix": [3, 2], "x": 2.25, "y": 3}, - {"matrix": [3, 3], "x": 3.25, "y": 3}, - {"matrix": [3, 4], "x": 4.25, "y": 3}, - {"matrix": [3, 5], "x": 5.25, "y": 3}, - {"matrix": [3, 6], "x": 6.25, "y": 3}, - {"matrix": [3, 7], "x": 7.25, "y": 3}, - {"matrix": [3, 8], "x": 8.25, "y": 3}, - {"matrix": [3, 9], "x": 9.25, "y": 3}, - {"matrix": [3, 10], "x": 10.25, "y": 3}, - {"matrix": [3, 11], "x": 11.25, "y": 3}, - {"matrix": [3, 12], "x": 12.25, "y": 3}, - {"matrix": [3, 13], "x": 13.25, "y": 3, "w": 1.75}, - {"matrix": [3, 15], "x": 15, "y": 3}, - - {"matrix": [4, 0], "x": 0, "y": 4}, - {"matrix": [4, 1], "x": 1, "y": 4}, - {"matrix": [4, 2], "x": 2, "y": 4}, - {"matrix": [4, 3], "x": 3, "y": 4}, - {"matrix": [4, 6], "x": 4, "y": 4, "w": 5}, - {"matrix": [4, 9], "x": 9, "y": 4}, - {"matrix": [4, 10], "x": 10, "y": 4}, - {"matrix": [4, 11], "x": 11, "y": 4}, - {"matrix": [4, 12], "x": 12, "y": 4}, - {"matrix": [4, 13], "x": 13, "y": 4}, - {"matrix": [4, 14], "x": 14, "y": 4}, - {"matrix": [4, 15], "x": 15, "y": 4} - ] - } - } - -} diff --git a/keyboards/keychron/k7_max/iso/rgb/config.h b/keyboards/keychron/k7_max/iso/rgb/config.h deleted file mode 100644 index 3a4160083a..0000000000 --- a/keyboards/keychron/k7_max/iso/rgb/config.h +++ /dev/null @@ -1,53 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#pragma once - -#ifdef RGB_MATRIX_ENABLE -/* RGB Matrix driver configuration */ -# define RGB_MATRIX_LED_COUNT 69 -# define DRIVER_COUNT 2 -# define DRIVER_CS_PINS \ - { B8, B9 } - -/* Scan phase of led driver set as MSKPHASE_9CHANNEL(defined as 0x03 in snled27351.h) */ -# define SNLED27351_PHASE_CHANNEL MSKPHASE_9CHANNEL - -/* Set LED driver current */ -# define SNLED27351_CURRENT_TUNE \ - { 0x14, 0x14, 0x14, 0x14, 0x14, 0x14, 0x14, 0x14, 0x14, 0x14, 0x14, 0x14 } - -/* Set to infinit, which is use in USB mode by default */ -# define RGB_MATRIX_TIMEOUT RGB_MATRIX_TIMEOUT_INFINITE -/* Allow shutdown of led driver to save power */ -# define RGB_MATRIX_DRIVER_SHUTDOWN_ENABLE -/* Turn off backlight on low brightness to save power */ -# define RGB_MATRIX_BRIGHTNESS_TURN_OFF_VAL 48 - -/* Indications */ -# define DIM_CAPS_LOCK -# define CAPS_LOCK_INDEX 30 -# define BT_HOST_LED_MATRIX_LIST \ - { 16, 17, 18 } -# define P2P4G_HOST_LED_MATRIX_LIST \ - { 19 } -# define LOW_BAT_IND_INDEX \ - { 62 } - -# define RGB_MATRIX_KEYPRESSES -# define RGB_MATRIX_FRAMEBUFFER_EFFECTS - -#endif diff --git a/keyboards/keychron/k7_max/iso/rgb/info.json b/keyboards/keychron/k7_max/iso/rgb/info.json deleted file mode 100644 index 314f6be806..0000000000 --- a/keyboards/keychron/k7_max/iso/rgb/info.json +++ /dev/null @@ -1,37 +0,0 @@ -{ - "usb": { - "pid": "0x0A71", - "device_version": "1.0.0" - }, - "features": { - "rgb_matrix": true - }, - "rgb_matrix": { - "driver": "snled27351_spi", - "sleep": true, - "animations": { - "band_spiral_val": true, - "breathing": true, - "cycle_all": true, - "cycle_left_right": true, - "cycle_out_in": true, - "cycle_out_in_dual": true, - "cycle_pinwheel": true, - "cycle_spiral": true, - "cycle_up_down": true, - "digital_rain": true, - "dual_beacon": true, - "jellybean_raindrops": true, - "pixel_rain": true, - "rainbow_beacon": true, - "rainbow_moving_chevron": true, - "solid_reactive_multinexus": true, - "solid_reactive_multiwide": true, - "solid_reactive_simple": true, - "solid_splash": true, - "splash": true, - "typing_heatmap": true - } - } -} - diff --git a/keyboards/keychron/k7_max/iso/rgb/keymaps/default/keymap.c b/keyboards/keychron/k7_max/iso/rgb/keymaps/default/keymap.c deleted file mode 100644 index 4aa29d8d89..0000000000 --- a/keyboards/keychron/k7_max/iso/rgb/keymaps/default/keymap.c +++ /dev/null @@ -1,72 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#include QMK_KEYBOARD_H -#include "keychron_common.h" - -enum layers{ - MAC_BASE, - WIN_BASE, - MAC_FN1, - WIN_FN1, - FN2 -}; - -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { -[MAC_BASE] = LAYOUT_iso_69( - 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_DEL, - 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_HOME, - 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_NUHS, KC_ENT, KC_PGUP, - KC_LSFT, KC_NUBS, 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_PGDN, - KC_LCTL, KC_LOPTN, KC_LCMMD, KC_SPC, KC_RCMMD,MO(MAC_FN1),MO(FN2), KC_LEFT, KC_DOWN, KC_RGHT), - -[WIN_BASE] = LAYOUT_iso_69( - 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_DEL, - 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_HOME, - 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_NUHS, KC_ENT, KC_PGUP, - KC_LSFT, KC_NUBS, 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_PGDN, - KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(WIN_FN1),MO(FN2), KC_LEFT, KC_DOWN, KC_RGHT), - -[MAC_FN1] = LAYOUT_iso_69( - KC_GRV, KC_BRID, KC_BRIU, KC_MCTRL, KC_LNPAD, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, KC_END, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - -[WIN_FN1] = LAYOUT_iso_69( - KC_GRV, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, KC_END, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - -[FN2] = LAYOUT_iso_69( - KC_TILD, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, BAT_LVL, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), -}; - -// clang-format on -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - if (!process_record_keychron_common(keycode, record)) { - return false; - } - return true; -} diff --git a/keyboards/keychron/k7_max/iso/rgb/keymaps/via/keymap.c b/keyboards/keychron/k7_max/iso/rgb/keymaps/via/keymap.c deleted file mode 100644 index 4aa29d8d89..0000000000 --- a/keyboards/keychron/k7_max/iso/rgb/keymaps/via/keymap.c +++ /dev/null @@ -1,72 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#include QMK_KEYBOARD_H -#include "keychron_common.h" - -enum layers{ - MAC_BASE, - WIN_BASE, - MAC_FN1, - WIN_FN1, - FN2 -}; - -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { -[MAC_BASE] = LAYOUT_iso_69( - 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_DEL, - 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_HOME, - 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_NUHS, KC_ENT, KC_PGUP, - KC_LSFT, KC_NUBS, 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_PGDN, - KC_LCTL, KC_LOPTN, KC_LCMMD, KC_SPC, KC_RCMMD,MO(MAC_FN1),MO(FN2), KC_LEFT, KC_DOWN, KC_RGHT), - -[WIN_BASE] = LAYOUT_iso_69( - 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_DEL, - 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_HOME, - 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_NUHS, KC_ENT, KC_PGUP, - KC_LSFT, KC_NUBS, 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_PGDN, - KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(WIN_FN1),MO(FN2), KC_LEFT, KC_DOWN, KC_RGHT), - -[MAC_FN1] = LAYOUT_iso_69( - KC_GRV, KC_BRID, KC_BRIU, KC_MCTRL, KC_LNPAD, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, KC_END, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - -[WIN_FN1] = LAYOUT_iso_69( - KC_GRV, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, KC_END, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - -[FN2] = LAYOUT_iso_69( - KC_TILD, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, BAT_LVL, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), -}; - -// clang-format on -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - if (!process_record_keychron_common(keycode, record)) { - return false; - } - return true; -} diff --git a/keyboards/keychron/k7_max/iso/rgb/keymaps/via/rules.mk b/keyboards/keychron/k7_max/iso/rgb/keymaps/via/rules.mk deleted file mode 100644 index 1e5b99807c..0000000000 --- a/keyboards/keychron/k7_max/iso/rgb/keymaps/via/rules.mk +++ /dev/null @@ -1 +0,0 @@ -VIA_ENABLE = yes diff --git a/keyboards/keychron/k7_max/iso/rgb/rgb.c b/keyboards/keychron/k7_max/iso/rgb/rgb.c deleted file mode 100644 index 385536e90c..0000000000 --- a/keyboards/keychron/k7_max/iso/rgb/rgb.c +++ /dev/null @@ -1,131 +0,0 @@ -/* Copyright 2024 @ 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/>. - */ - -#include "quantum.h" - -// clang-format off -#ifdef RGB_MATRIX_ENABLE -const snled27351_led_t g_snled27351_leds[RGB_MATRIX_LED_COUNT] = { -/* Refer to SNLED27351 manual for these locations - * driver - * | R location - * | | G location - * | | | B location - * | | | | */ - {0, F_1, D_1, E_1}, - {0, F_2, D_2, E_2}, - {0, F_3, D_3, E_3}, - {0, F_4, D_4, E_4}, - {0, F_5, D_5, E_5}, - {0, F_6, D_6, E_6}, - {0, F_7, D_7, E_7}, - {0, F_8, D_8, E_8}, - {0, F_9, D_9, E_9}, - {0, F_10, D_10, E_10}, - {0, F_11, D_11, E_11}, - {0, F_12, D_12, E_12}, - {0, F_13, D_13, E_13}, - {0, F_14, D_14, E_14}, - {0, F_16, D_16, E_16}, - - {0, A_1, C_1, B_1}, - {0, A_2, C_2, B_2}, - {0, A_3, C_3, B_3}, - {0, A_4, C_4, B_4}, - {0, A_5, C_5, B_5}, - {0, A_6, C_6, B_6}, - {0, A_7, C_7, B_7}, - {0, A_8, C_8, B_8}, - {0, A_9, C_9, B_9}, - {0, A_10, C_10, B_10}, - {0, A_11, C_11, B_11}, - {0, A_12, C_12, B_12}, - {0, A_13, C_13, B_13}, - {0, A_14, C_14, B_14}, - {0, A_16, C_16, B_16}, - - {1, I_1, G_1, H_1}, - {1, I_2, G_2, H_2}, - {1, I_3, G_3, H_3}, - {1, I_4, G_4, H_4}, - {1, I_5, G_5, H_5}, - {1, I_6, G_6, H_6}, - {1, I_7, G_7, H_7}, - {1, I_8, G_8, H_8}, - {1, I_9, G_9, H_9}, - {1, I_10, G_10, H_10}, - {1, I_11, G_11, H_11}, - {1, I_12, G_12, H_12}, - {1, I_14, G_14, H_14}, - {1, I_16, G_16, H_16}, - - {1, C_1, A_1, B_1}, - {1, C_2, A_2, B_2}, - {1, C_3, A_3, B_3}, - {1, C_4, A_4, B_4}, - {1, C_5, A_5, B_5}, - {1, C_6, A_6, B_6}, - {1, C_7, A_7, B_7}, - {1, C_8, A_8, B_8}, - {1, C_9, A_9, B_9}, - {1, C_10, A_10, B_10}, - {1, C_11, A_11, B_11}, - {1, C_12, A_12, B_12}, - {1, C_14, A_14, B_14}, - {1, C_15, A_15, B_15}, - {1, C_16, A_16, B_16}, - - {1, F_1, D_1, E_1}, - {1, F_2, D_2, E_2}, - {1, F_3, D_3, E_3}, - {1, F_7, D_7, E_7}, - {1, F_11, D_11, E_11}, - {1, F_12, D_12, E_12}, - {1, F_13, D_13, E_13}, - {1, F_14, D_14, E_14}, - {1, F_15, D_15, E_15}, - {1, F_16, D_16, E_16}, -}; - -#define __ NO_LED - -led_config_t g_led_config = { - { - // Key Matrix to LED Index - { 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, 40, 41, __, 42, __, 43 }, - { 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, __, 56, 57, 58 }, - { 59, 60, 61, __, __, __, 62, __, __, __, 63, 64, 65, 66, 67, 68 }, - }, - { - // LED Index to Physical Position - {0, 0}, {15, 0}, {30, 0}, {45, 0}, {60, 0}, {75, 0}, { 90, 0}, {105, 0}, {119, 0}, {134, 0}, {149, 0}, {164, 0}, {179, 0}, {202, 0}, {224, 0}, - {4,16}, {22,16}, {37,16}, {52,16}, {67,16}, {82,16}, { 97,16}, {112,16}, {127,16}, {142,16}, {157,16}, {172,16}, {187,16}, {207,24}, {224,16}, - {6,32}, {26,32}, {41,32}, {56,32}, {71,32}, {86,32}, {101,32}, {116,32}, {131,32}, {146,32}, {161,32}, {175,32}, {190,32}, {224,32}, - {2,48}, {19,48}, {34,48}, {49,48}, {64,48}, {78,48}, { 93,48}, {108,48}, {123,48}, {138,48}, {153,48}, {168,48}, {189,48}, {209,48}, {224,48}, - {2,64}, {21,64}, {39,64}, { 95,64}, {149,64}, {164,64}, {179,64}, {194,64}, {209,64}, {224,64} - }, - { - // RGB LED Index to Flag - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 - } -}; -#endif diff --git a/keyboards/keychron/k7_max/iso/rgb/rules.mk b/keyboards/keychron/k7_max/iso/rgb/rules.mk deleted file mode 100644 index 6e7633bfe0..0000000000 --- a/keyboards/keychron/k7_max/iso/rgb/rules.mk +++ /dev/null @@ -1 +0,0 @@ -# This file intentionally left blank diff --git a/keyboards/keychron/k7_max/iso/white/config.h b/keyboards/keychron/k7_max/iso/white/config.h deleted file mode 100644 index c85b347d5a..0000000000 --- a/keyboards/keychron/k7_max/iso/white/config.h +++ /dev/null @@ -1,51 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#pragma once - -#ifdef LED_MATRIX_ENABLE -/* LED matrix driver configuration */ -# define LED_MATRIX_LED_COUNT 69 -# define DRIVER_COUNT 1 -# define DRIVER_CS_PINS \ - { B9 } - -/* Use first 6 channels of LED driver */ -# define SNLED27351_PHASE_CHANNEL MSKPHASE_6CHANNEL -/* Set LED driver current */ -# define SNLED27351_CURRENT_TUNE \ - { 0x2C, 0x2C, 0x2C, 0x2C, 0x2C, 0x2C, 0x2C, 0x2C, 0x2C, 0x2C, 0x2C, 0x2C } - -/* Set to infinit, which is use in USB mode by default */ -# define LED_MATRIX_TIMEOUT LED_MATRIX_TIMEOUT_INFINITE -/* Allow shutdown of led driver to save power */ -# define LED_MATRIX_DRIVER_SHUTDOWN_ENABLE -/* Turn off backlight on low brightness to save power */ -# define LED_MATRIX_BRIGHTNESS_TURN_OFF_VAL 48 - -/* Indications */ -# define DIM_CAPS_LOCK -# define CAPS_LOCK_INDEX 30 -# define BT_HOST_LED_MATRIX_LIST \ - { 16, 17, 18 } -# define P2P4G_HOST_LED_MATRIX_LIST \ - { 19 } -# define LOW_BAT_IND_INDEX \ - { 62 } - -# define LED_MATRIX_VAL_STEP 16 -# define LED_MATRIX_KEYPRESSES -#endif diff --git a/keyboards/keychron/k7_max/iso/white/info.json b/keyboards/keychron/k7_max/iso/white/info.json deleted file mode 100644 index 0ce26cd49a..0000000000 --- a/keyboards/keychron/k7_max/iso/white/info.json +++ /dev/null @@ -1,30 +0,0 @@ -{ - "usb": { - "pid": "0x0A74", - "device_version": "1.0.0" - }, - "features": { - "led_matrix": true - }, - "led_matrix": { - "driver": "snled27351_spi", - "sleep": true, - "animations": { - "none": true, - "solid": true, - "breathing": true, - "band_pinwheel": true, - "band_spiral": true, - "cycle_left_right": true, - "cycle_up_down": true, - "cycle_out_in": true, - "dual_beacon": true, - "solid_reactive_simple": true, - "solid_reactive_multiwide": true, - "solid_reactive_multinexus": true, - "solid_splash": true, - "wave_left_right": true, - "wave_up_down": true - } - } -} diff --git a/keyboards/keychron/k7_max/iso/white/keymaps/default/keymap.c b/keyboards/keychron/k7_max/iso/white/keymaps/default/keymap.c deleted file mode 100644 index 91edb0cae0..0000000000 --- a/keyboards/keychron/k7_max/iso/white/keymaps/default/keymap.c +++ /dev/null @@ -1,72 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#include QMK_KEYBOARD_H -#include "keychron_common.h" - -enum layers{ - MAC_BASE, - WIN_BASE, - MAC_FN1, - WIN_FN1, - FN2, -}; - -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { -[MAC_BASE] = LAYOUT_iso_69( - 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_DEL, - 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_HOME, - 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_NUHS, KC_ENT, KC_PGUP, - KC_LSFT, KC_NUBS, 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_PGDN, - KC_LCTL, KC_LOPTN, KC_LCMMD, KC_SPC, KC_RCMMD,MO(MAC_FN1),MO(FN2), KC_LEFT, KC_DOWN, KC_RGHT), - -[WIN_BASE] = LAYOUT_iso_69( - 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_DEL, - 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_HOME, - 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_NUHS, KC_ENT, KC_PGUP, - KC_LSFT, KC_NUBS, 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_PGDN, - KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(WIN_FN1),MO(FN2), KC_LEFT, KC_DOWN, KC_RGHT), - -[MAC_FN1] = LAYOUT_iso_69( - KC_GRV, KC_BRID, KC_BRIU, KC_MCTRL, KC_LNPAD, BL_DOWN, BL_UP, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, KC_END, - BL_TOGG, BL_STEP, BL_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, BL_DOWN, _______, _______, _______, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - -[WIN_FN1] = LAYOUT_iso_69( - KC_GRV, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, BL_DOWN, BL_UP, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, KC_END, - BL_TOGG, BL_STEP, BL_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, BL_DOWN, _______, _______, _______, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - -[FN2] = LAYOUT_iso_69( - KC_TILD, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, BAT_LVL, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), -}; - -// clang-format on -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - if (!process_record_keychron_common(keycode, record)) { - return false; - } - return true; -} diff --git a/keyboards/keychron/k7_max/iso/white/keymaps/via/keymap.c b/keyboards/keychron/k7_max/iso/white/keymaps/via/keymap.c deleted file mode 100644 index 91edb0cae0..0000000000 --- a/keyboards/keychron/k7_max/iso/white/keymaps/via/keymap.c +++ /dev/null @@ -1,72 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#include QMK_KEYBOARD_H -#include "keychron_common.h" - -enum layers{ - MAC_BASE, - WIN_BASE, - MAC_FN1, - WIN_FN1, - FN2, -}; - -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { -[MAC_BASE] = LAYOUT_iso_69( - 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_DEL, - 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_HOME, - 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_NUHS, KC_ENT, KC_PGUP, - KC_LSFT, KC_NUBS, 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_PGDN, - KC_LCTL, KC_LOPTN, KC_LCMMD, KC_SPC, KC_RCMMD,MO(MAC_FN1),MO(FN2), KC_LEFT, KC_DOWN, KC_RGHT), - -[WIN_BASE] = LAYOUT_iso_69( - 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_DEL, - 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_HOME, - 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_NUHS, KC_ENT, KC_PGUP, - KC_LSFT, KC_NUBS, 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_PGDN, - KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(WIN_FN1),MO(FN2), KC_LEFT, KC_DOWN, KC_RGHT), - -[MAC_FN1] = LAYOUT_iso_69( - KC_GRV, KC_BRID, KC_BRIU, KC_MCTRL, KC_LNPAD, BL_DOWN, BL_UP, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, KC_END, - BL_TOGG, BL_STEP, BL_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, BL_DOWN, _______, _______, _______, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - -[WIN_FN1] = LAYOUT_iso_69( - KC_GRV, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, BL_DOWN, BL_UP, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, KC_END, - BL_TOGG, BL_STEP, BL_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, BL_DOWN, _______, _______, _______, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - -[FN2] = LAYOUT_iso_69( - KC_TILD, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, BAT_LVL, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), -}; - -// clang-format on -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - if (!process_record_keychron_common(keycode, record)) { - return false; - } - return true; -} diff --git a/keyboards/keychron/k7_max/iso/white/keymaps/via/rules.mk b/keyboards/keychron/k7_max/iso/white/keymaps/via/rules.mk deleted file mode 100644 index 1e5b99807c..0000000000 --- a/keyboards/keychron/k7_max/iso/white/keymaps/via/rules.mk +++ /dev/null @@ -1 +0,0 @@ -VIA_ENABLE = yes diff --git a/keyboards/keychron/k7_max/iso/white/rules.mk b/keyboards/keychron/k7_max/iso/white/rules.mk deleted file mode 100644 index 6e7633bfe0..0000000000 --- a/keyboards/keychron/k7_max/iso/white/rules.mk +++ /dev/null @@ -1 +0,0 @@ -# This file intentionally left blank diff --git a/keyboards/keychron/k7_max/iso/white/white.c b/keyboards/keychron/k7_max/iso/white/white.c deleted file mode 100644 index 997ab374e4..0000000000 --- a/keyboards/keychron/k7_max/iso/white/white.c +++ /dev/null @@ -1,129 +0,0 @@ -/* Copyright 2024 @ 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/>. - */ - -#include "quantum.h" - -// clang-format off -#ifdef LED_MATRIX_ENABLE -const snled27351_led_t g_snled27351_leds[LED_MATRIX_LED_COUNT] = { -/* Refer to SNLED27351 manual for these locations - * driver - * | LED address - * | | */ - {0, E_1}, - {0, E_2}, - {0, E_3}, - {0, E_4}, - {0, E_5}, - {0, E_6}, - {0, E_7}, - {0, E_8}, - {0, E_9}, - {0, E_10}, - {0, E_11}, - {0, E_12}, - {0, E_13}, - {0, E_14}, - {0, E_16}, - - {0, D_1}, - {0, D_2}, - {0, D_3}, - {0, D_4}, - {0, D_5}, - {0, D_6}, - {0, D_7}, - {0, D_8}, - {0, D_9}, - {0, D_10}, - {0, D_11}, - {0, D_12}, - {0, D_13}, - {0, D_14}, - {0, D_16}, - - {0, C_1}, - {0, C_2}, - {0, C_3}, - {0, C_4}, - {0, C_5}, - {0, C_6}, - {0, C_7}, - {0, C_8}, - {0, C_9}, - {0, C_10}, - {0, C_11}, - {0, C_12}, - {0, C_14}, - {0, C_16}, - - {0, B_1}, - {0, B_2}, - {0, B_3}, - {0, B_4}, - {0, B_5}, - {0, B_6}, - {0, B_7}, - {0, B_8}, - {0, B_9}, - {0, B_10}, - {0, B_11}, - {0, B_12}, - {0, B_13}, - {0, B_14}, - {0, B_16}, - - {0, A_1}, - {0, A_2}, - {0, A_3}, - {0, A_7}, - {0, A_11}, - {0, A_12}, - {0, A_13}, - {0, A_14}, - {0, A_15}, - {0, A_16}, -}; - -#define __ NO_LED - -led_config_t g_led_config = { - { - // Key Matrix to LED Index - { 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, 40, 41, __, 42, __, 43 }, - { 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, __, 56, 57, 58 }, - { 59, 60, 61, __, __, __, 62, __, __, __, 63, 64, 65, 66, 67, 68 }, - }, - { - // LED Index to Physical Position - {0, 0}, {15, 0}, {30, 0}, {45, 0}, {60, 0}, {75, 0}, { 90, 0}, {105, 0}, {119, 0}, {134, 0}, {149, 0}, {164, 0}, {179, 0}, {202, 0}, {224, 0}, - {4,16}, {22,16}, {37,16}, {52,16}, {67,16}, {82,16}, { 97,16}, {112,16}, {127,16}, {142,16}, {157,16}, {172,16}, {187,16}, {207,24}, {224,16}, - {6,32}, {26,32}, {41,32}, {56,32}, {71,32}, {86,32}, {101,32}, {116,32}, {131,32}, {146,32}, {161,32}, {175,32}, {190,32}, {224,32}, - {2,48}, {19,48}, {34,48}, {49,48}, {64,48}, {78,48}, { 93,48}, {108,48}, {123,48}, {138,48}, {153,48}, {168,48}, {189,48}, {209,48}, {224,48}, - {2,64}, {21,64}, {39,64}, { 95,64}, {149,64}, {164,64}, {179,64}, {194,64}, {209,64}, {224,64} - }, - { - // RGB LED Index to Flag - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 - } -}; -#endif diff --git a/keyboards/keychron/k7_max/jis/rgb/config.h b/keyboards/keychron/k7_max/jis/rgb/config.h deleted file mode 100644 index 24a2bae7e9..0000000000 --- a/keyboards/keychron/k7_max/jis/rgb/config.h +++ /dev/null @@ -1,51 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#pragma once - -#ifdef RGB_MATRIX_ENABLE -/* RGB Matrix driver configuration */ -# define RGB_MATRIX_LED_COUNT 71 -# define DRIVER_COUNT 2 -# define DRIVER_CS_PINS \ - { B8, B9 } - -/* Scan phase of led driver set as MSKPHASE_9CHANNEL(defined as 0x03 in snled27351.h) */ -# define SNLED27351_PHASE_CHANNEL MSKPHASE_9CHANNEL -/* Set LED driver current */ -# define SNLED27351_CURRENT_TUNE \ - { 0x14, 0x14, 0x14, 0x14, 0x14, 0x14, 0x14, 0x14, 0x14, 0x14, 0x14, 0x14 } - -/* Set to infinit, which is use in USB mode by default */ -# define RGB_MATRIX_TIMEOUT RGB_MATRIX_TIMEOUT_INFINITE -/* Allow shutdown of led driver to save power */ -# define RGB_MATRIX_DRIVER_SHUTDOWN_ENABLE -/* Turn off backlight on low brightness to save power */ -# define RGB_MATRIX_BRIGHTNESS_TURN_OFF_VAL 48 - -/* Indications */ -# define DIM_CAPS_LOCK -# define CAPS_LOCK_INDEX 31 -# define BT_HOST_LED_MATRIX_LIST \ - { 17, 18, 19 } -# define P2P4G_HOST_LED_MATRIX_LIST \ - { 20 } -# define LOW_BAT_IND_INDEX \ - { 63 } - -# define RGB_MATRIX_KEYPRESSES -# define RGB_MATRIX_FRAMEBUFFER_EFFECTS -#endif diff --git a/keyboards/keychron/k7_max/jis/rgb/info.json b/keyboards/keychron/k7_max/jis/rgb/info.json deleted file mode 100644 index 6f61123b36..0000000000 --- a/keyboards/keychron/k7_max/jis/rgb/info.json +++ /dev/null @@ -1,36 +0,0 @@ -{ - "usb": { - "pid": "0x0A72", - "device_version": "1.0.0" - }, - "features": { - "rgb_matrix": true - }, - "rgb_matrix": { - "driver": "snled27351_spi", - "sleep": true, - "animations": { - "band_spiral_val": true, - "breathing": true, - "cycle_all": true, - "cycle_left_right": true, - "cycle_out_in": true, - "cycle_out_in_dual": true, - "cycle_pinwheel": true, - "cycle_spiral": true, - "cycle_up_down": true, - "digital_rain": true, - "dual_beacon": true, - "jellybean_raindrops": true, - "pixel_rain": true, - "rainbow_beacon": true, - "rainbow_moving_chevron": true, - "solid_reactive_multinexus": true, - "solid_reactive_multiwide": true, - "solid_reactive_simple": true, - "solid_splash": true, - "splash": true, - "typing_heatmap": true - } - } -} diff --git a/keyboards/keychron/k7_max/jis/rgb/keymaps/default/keymap.c b/keyboards/keychron/k7_max/jis/rgb/keymaps/default/keymap.c deleted file mode 100644 index 1ba6312561..0000000000 --- a/keyboards/keychron/k7_max/jis/rgb/keymaps/default/keymap.c +++ /dev/null @@ -1,72 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#include QMK_KEYBOARD_H -#include "keychron_common.h" - -enum layers{ - MAC_BASE, - WIN_BASE, - MAC_FN, - WIN_FN, - FN2 -}; - -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { -[MAC_BASE] = LAYOUT_jis_71( - 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_INT3, KC_BSPC, KC_DEL, - 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_HOME, - 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_BSLS, KC_ENT, KC_PGUP, - KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_INT1, KC_UP, KC_PGDN, - KC_LCTL, KC_LOPTN, KC_LCMMD, KC_LNG2, KC_SPC, KC_LNG1, KC_RCMMD,MO(MAC_FN),MO(FN2), KC_LEFT, KC_DOWN, KC_RGHT), - -[WIN_BASE] = LAYOUT_jis_71( - 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_INT3, KC_BSPC, KC_DEL, - 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_HOME, - 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_BSLS, KC_ENT, KC_PGUP, - KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_INT1, KC_UP, KC_PGDN, - KC_LCTL, KC_LGUI, KC_LALT, KC_INT5, KC_SPC, KC_INT4, KC_RALT, MO(WIN_FN),MO(FN2), KC_LEFT, KC_DOWN, KC_RGHT), - -[MAC_FN] = LAYOUT_jis_71( - KC_GRV, KC_BRID, KC_BRIU, KC_MCTRL, KC_LNPAD, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, RGB_TOG, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, KC_END, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, NK_TOGG, _______, _______, _______, _______, _______, KC_RSFT, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - -[WIN_FN] = LAYOUT_jis_71( - KC_GRV, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, RGB_TOG, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, KC_END, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, NK_TOGG, _______, _______, _______, _______, _______, KC_RSFT, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - -[FN2] = LAYOUT_jis_71( - KC_TILD, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, _______, _______, _______, _______, _______, _______, KC_RSFT, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______) -}; - -// clang-format on -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - if (!process_record_keychron_common(keycode, record)) { - return false; - } - return true; -} diff --git a/keyboards/keychron/k7_max/jis/rgb/keymaps/via/keymap.c b/keyboards/keychron/k7_max/jis/rgb/keymaps/via/keymap.c deleted file mode 100644 index 1ba6312561..0000000000 --- a/keyboards/keychron/k7_max/jis/rgb/keymaps/via/keymap.c +++ /dev/null @@ -1,72 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#include QMK_KEYBOARD_H -#include "keychron_common.h" - -enum layers{ - MAC_BASE, - WIN_BASE, - MAC_FN, - WIN_FN, - FN2 -}; - -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { -[MAC_BASE] = LAYOUT_jis_71( - 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_INT3, KC_BSPC, KC_DEL, - 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_HOME, - 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_BSLS, KC_ENT, KC_PGUP, - KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_INT1, KC_UP, KC_PGDN, - KC_LCTL, KC_LOPTN, KC_LCMMD, KC_LNG2, KC_SPC, KC_LNG1, KC_RCMMD,MO(MAC_FN),MO(FN2), KC_LEFT, KC_DOWN, KC_RGHT), - -[WIN_BASE] = LAYOUT_jis_71( - 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_INT3, KC_BSPC, KC_DEL, - 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_HOME, - 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_BSLS, KC_ENT, KC_PGUP, - KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_INT1, KC_UP, KC_PGDN, - KC_LCTL, KC_LGUI, KC_LALT, KC_INT5, KC_SPC, KC_INT4, KC_RALT, MO(WIN_FN),MO(FN2), KC_LEFT, KC_DOWN, KC_RGHT), - -[MAC_FN] = LAYOUT_jis_71( - KC_GRV, KC_BRID, KC_BRIU, KC_MCTRL, KC_LNPAD, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, RGB_TOG, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, KC_END, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, NK_TOGG, _______, _______, _______, _______, _______, KC_RSFT, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - -[WIN_FN] = LAYOUT_jis_71( - KC_GRV, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, RGB_TOG, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, KC_END, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, NK_TOGG, _______, _______, _______, _______, _______, KC_RSFT, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - -[FN2] = LAYOUT_jis_71( - KC_TILD, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, _______, _______, _______, _______, _______, _______, KC_RSFT, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______) -}; - -// clang-format on -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - if (!process_record_keychron_common(keycode, record)) { - return false; - } - return true; -} diff --git a/keyboards/keychron/k7_max/jis/rgb/keymaps/via/rules.mk b/keyboards/keychron/k7_max/jis/rgb/keymaps/via/rules.mk deleted file mode 100644 index 1e5b99807c..0000000000 --- a/keyboards/keychron/k7_max/jis/rgb/keymaps/via/rules.mk +++ /dev/null @@ -1 +0,0 @@ -VIA_ENABLE = yes diff --git a/keyboards/keychron/k7_max/jis/rgb/rgb.c b/keyboards/keychron/k7_max/jis/rgb/rgb.c deleted file mode 100644 index 5cec853896..0000000000 --- a/keyboards/keychron/k7_max/jis/rgb/rgb.c +++ /dev/null @@ -1,134 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#include "quantum.h" - -// clang-format off -#ifdef RGB_MATRIX_ENABLE -const snled27351_led_t g_snled27351_leds[RGB_MATRIX_LED_COUNT] = { -/* Refer to SNLED27351 manual for these locations - * driver - * | R location - * | | G location - * | | | B location - * | | | | */ - {0, F_1, D_1, E_1}, - {0, F_2, D_2, E_2}, - {0, F_3, D_3, E_3}, - {0, F_4, D_4, E_4}, - {0, F_5, D_5, E_5}, - {0, F_6, D_6, E_6}, - {0, F_7, D_7, E_7}, - {0, F_8, D_8, E_8}, - {0, F_9, D_9, E_9}, - {0, F_10, D_10, E_10}, - {0, F_11, D_11, E_11}, - {0, F_12, D_12, E_12}, - {0, F_13, D_13, E_13}, - {0, F_14, D_14, E_14}, - {0, F_15, D_15, E_15}, - {0, F_16, D_16, E_16}, - - {0, A_1, C_1, B_1}, - {0, A_2, C_2, B_2}, - {0, A_3, C_3, B_3}, - {0, A_4, C_4, B_4}, - {0, A_5, C_5, B_5}, - {0, A_6, C_6, B_6}, - {0, A_7, C_7, B_7}, - {0, A_8, C_8, B_8}, - {0, A_9, C_9, B_9}, - {0, A_10, C_10, B_10}, - {0, A_11, C_11, B_11}, - {0, A_12, C_12, B_12}, - {0, A_13, C_13, B_13}, - {0, A_14, C_14, B_14}, - {0, A_16, C_16, B_16}, - - {1, I_1, G_1, H_1}, - {1, I_2, G_2, H_2}, - {1, I_3, G_3, H_3}, - {1, I_4, G_4, H_4}, - {1, I_5, G_5, H_5}, - {1, I_6, G_6, H_6}, - {1, I_7, G_7, H_7}, - {1, I_8, G_8, H_8}, - {1, I_9, G_9, H_9}, - {1, I_10, G_10, H_10}, - {1, I_11, G_11, H_11}, - {1, I_12, G_12, H_12}, - {1, I_14, G_14, H_14}, - {1, I_16, G_16, H_16}, - - {1, C_1, A_1, B_1}, - {1, C_3, A_3, B_3}, - {1, C_4, A_4, B_4}, - {1, C_5, A_5, B_5}, - {1, C_6, A_6, B_6}, - {1, C_7, A_7, B_7}, - {1, C_8, A_8, B_8}, - {1, C_9, A_9, B_9}, - {1, C_10, A_10, B_10}, - {1, C_11, A_11, B_11}, - {1, C_12, A_12, B_12}, - {1, C_13, A_13, B_13}, - {1, C_14, A_14, B_14}, - {1, C_16, A_16, B_16}, - - {1, F_1, D_1, E_1}, - {1, F_2, D_2, E_2}, - {1, F_3, D_3, E_3}, - {1, F_4, D_4, E_4}, - {1, F_7, D_7, E_7}, - {1, F_10, D_10, E_10}, - {1, F_11, D_11, E_11}, - {1, F_12, D_12, E_12}, - {1, F_13, D_13, E_13}, - {1, F_14, D_14, E_14}, - {1, F_15, D_15, E_15}, - {1, F_16, D_16, E_16}, -}; - -#define __ NO_LED - -led_config_t g_led_config = { - { - // Key Matrix to LED Index - { 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, 40, 41, 42, __, 43, __, 44 }, - { 45, __, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, __, 58 }, - { 59, 60, 61, 62, __, __, 63, __, __, 64, 65, 66, 67, 68, 69, 70 }, - }, - { - // LED Index to Physical Position - {0, 0}, {15, 0}, {30, 0}, {45, 0}, {60, 0}, {75, 0}, { 90, 0}, {105, 0}, {119, 0}, {134, 0}, {149, 0}, {164, 0}, {179, 0}, {194, 0}, {209, 0}, {224, 0}, - {4,16}, {22,16}, {37,16}, {52,16}, {67,16}, {82,16}, { 97,16}, {112,16}, {127,16}, {142,16}, {157,16}, {172,16}, {187,16}, {205,24}, {224,16}, - {7,32}, {26,32}, {41,32}, {56,32}, {71,32}, {86,32}, {101,32}, {116,32}, {131,32}, {146,32}, {161,32}, {175,32}, {200,32}, {224,32}, - {8,48}, {34,48}, {49,48}, {64,48}, {78,48}, { 93,48}, {108,48}, {123,48}, {138,48}, {153,48}, {168,48}, {183,48}, {201,48}, {224,48}, - {0,64}, {15,64}, {30,64}, {45,64}, { 90,64}, {134,64}, {149,64}, {164,64}, {179,64}, {194,64}, {209,64}, {224,64} - - }, - { - // RGB LED Index to Flag - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 - } -}; -#endif diff --git a/keyboards/keychron/k7_max/jis/rgb/rules.mk b/keyboards/keychron/k7_max/jis/rgb/rules.mk deleted file mode 100644 index 6e7633bfe0..0000000000 --- a/keyboards/keychron/k7_max/jis/rgb/rules.mk +++ /dev/null @@ -1 +0,0 @@ -# This file intentionally left blank diff --git a/keyboards/keychron/k7_max/jis/white/config.h b/keyboards/keychron/k7_max/jis/white/config.h deleted file mode 100644 index 7eb53b05db..0000000000 --- a/keyboards/keychron/k7_max/jis/white/config.h +++ /dev/null @@ -1,51 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#pragma once - -#ifdef LED_MATRIX_ENABLE -/* LED matrix driver configuration */ -# define LED_MATRIX_LED_COUNT 71 -# define DRIVER_COUNT 1 -# define DRIVER_CS_PINS \ - { B9 } - -/* Use first 6 channels of LED driver */ -# define SNLED27351_PHASE_CHANNEL MSKPHASE_6CHANNEL -/* Set LED driver current */ -# define SNLED27351_CURRENT_TUNE \ - { 0x2A, 0x2A, 0x2A, 0x2A, 0x2A, 0x2A, 0x2A, 0x2A, 0x2A, 0x2A, 0x2A, 0x2A } - -/* Set to infinit, which is use in USB mode by default */ -# define LED_MATRIX_TIMEOUT LED_MATRIX_TIMEOUT_INFINITE -/* Allow shutdown of led driver to save power */ -# define LED_MATRIX_DRIVER_SHUTDOWN_ENABLE -/* Turn off backlight on low brightness to save power */ -# define LED_MATRIX_BRIGHTNESS_TURN_OFF_VAL 48 - -/* Indications */ -# define DIM_CAPS_LOCK -# define CAPS_LOCK_INDEX 31 -# define BT_HOST_LED_MATRIX_LIST \ - { 17, 18, 19 } -# define P2P4G_HOST_LED_MATRIX_LIST \ - { 20 } -# define LOW_BAT_IND_INDEX \ - { 63 } - -# define LED_MATRIX_VAL_STEP 16 -# define LED_MATRIX_KEYPRESSES -#endif diff --git a/keyboards/keychron/k7_max/jis/white/info.json b/keyboards/keychron/k7_max/jis/white/info.json deleted file mode 100644 index e8d0f82367..0000000000 --- a/keyboards/keychron/k7_max/jis/white/info.json +++ /dev/null @@ -1,30 +0,0 @@ -{ - "usb": { - "pid": "0x0A75", - "device_version": "1.0.0" - }, - "features": { - "led_matrix": true - }, - "led_matrix": { - "driver": "snled27351_spi", - "sleep": true, - "animations": { - "none": true, - "solid": true, - "breathing": true, - "band_pinwheel": true, - "band_spiral": true, - "cycle_left_right": true, - "cycle_up_down": true, - "cycle_out_in": true, - "dual_beacon": true, - "solid_reactive_simple": true, - "solid_reactive_multiwide": true, - "solid_reactive_multinexus": true, - "solid_splash": true, - "wave_left_right": true, - "wave_up_down": true - } - } -} diff --git a/keyboards/keychron/k7_max/jis/white/keymaps/default/keymap.c b/keyboards/keychron/k7_max/jis/white/keymaps/default/keymap.c deleted file mode 100644 index 48c70668cb..0000000000 --- a/keyboards/keychron/k7_max/jis/white/keymaps/default/keymap.c +++ /dev/null @@ -1,72 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#include QMK_KEYBOARD_H -#include "keychron_common.h" - -enum layers{ - MAC_BASE, - WIN_BASE, - MAC_FN1, - WIN_FN1, - FN2, -}; - -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { -[MAC_BASE] = LAYOUT_jis_71( - 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_INT3, KC_BSPC, KC_DEL, - 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_HOME, - 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_BSLS, KC_ENT, KC_PGUP, - KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_INT1, KC_UP, KC_PGDN, - KC_LCTL, KC_LOPTN, KC_LCMMD, KC_LNG2, KC_SPC, KC_LNG1, KC_RCMMD,MO(MAC_FN1),MO(FN2), KC_LEFT, KC_DOWN, KC_RGHT), - -[WIN_BASE] = LAYOUT_jis_71( - 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_INT3, KC_BSPC, KC_DEL, - 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_HOME, - 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_BSLS, KC_ENT, KC_PGUP, - KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_INT1, KC_UP, KC_PGDN, - KC_LCTL, KC_LGUI, KC_LALT, KC_INT5, KC_SPC, KC_INT4, KC_RALT, MO(WIN_FN1),MO(FN2), KC_LEFT, KC_DOWN, KC_RGHT), - -[MAC_FN1] = LAYOUT_jis_71( - KC_GRV, KC_BRID, KC_BRIU, KC_MCTRL, KC_LNPAD, BL_DOWN, BL_UP, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, BL_TOGG, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, KC_END, - BL_TOGG, BL_STEP, BL_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, BL_DOWN, _______, _______, _______, NK_TOGG, _______, _______, _______, _______, _______, KC_RSFT, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - -[WIN_FN1] = LAYOUT_jis_71( - KC_GRV, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, BL_DOWN, BL_UP, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, BL_TOGG, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, KC_END, - BL_TOGG, BL_STEP, BL_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, BL_DOWN, _______, _______, _______, NK_TOGG, _______, _______, _______, _______, _______, KC_RSFT, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - -[FN2] = LAYOUT_jis_71( - KC_TILD, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, _______, _______, _______, _______, _______, _______, KC_RSFT, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______) -}; - -// clang-format on -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - if (!process_record_keychron_common(keycode, record)) { - return false; - } - return true; -} diff --git a/keyboards/keychron/k7_max/jis/white/keymaps/via/keymap.c b/keyboards/keychron/k7_max/jis/white/keymaps/via/keymap.c deleted file mode 100644 index 48c70668cb..0000000000 --- a/keyboards/keychron/k7_max/jis/white/keymaps/via/keymap.c +++ /dev/null @@ -1,72 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#include QMK_KEYBOARD_H -#include "keychron_common.h" - -enum layers{ - MAC_BASE, - WIN_BASE, - MAC_FN1, - WIN_FN1, - FN2, -}; - -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { -[MAC_BASE] = LAYOUT_jis_71( - 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_INT3, KC_BSPC, KC_DEL, - 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_HOME, - 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_BSLS, KC_ENT, KC_PGUP, - KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_INT1, KC_UP, KC_PGDN, - KC_LCTL, KC_LOPTN, KC_LCMMD, KC_LNG2, KC_SPC, KC_LNG1, KC_RCMMD,MO(MAC_FN1),MO(FN2), KC_LEFT, KC_DOWN, KC_RGHT), - -[WIN_BASE] = LAYOUT_jis_71( - 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_INT3, KC_BSPC, KC_DEL, - 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_HOME, - 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_BSLS, KC_ENT, KC_PGUP, - KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_INT1, KC_UP, KC_PGDN, - KC_LCTL, KC_LGUI, KC_LALT, KC_INT5, KC_SPC, KC_INT4, KC_RALT, MO(WIN_FN1),MO(FN2), KC_LEFT, KC_DOWN, KC_RGHT), - -[MAC_FN1] = LAYOUT_jis_71( - KC_GRV, KC_BRID, KC_BRIU, KC_MCTRL, KC_LNPAD, BL_DOWN, BL_UP, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, BL_TOGG, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, KC_END, - BL_TOGG, BL_STEP, BL_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, BL_DOWN, _______, _______, _______, NK_TOGG, _______, _______, _______, _______, _______, KC_RSFT, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - -[WIN_FN1] = LAYOUT_jis_71( - KC_GRV, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, BL_DOWN, BL_UP, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, BL_TOGG, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, KC_END, - BL_TOGG, BL_STEP, BL_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, BL_DOWN, _______, _______, _______, NK_TOGG, _______, _______, _______, _______, _______, KC_RSFT, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - -[FN2] = LAYOUT_jis_71( - KC_TILD, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, _______, _______, _______, _______, _______, _______, KC_RSFT, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______) -}; - -// clang-format on -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - if (!process_record_keychron_common(keycode, record)) { - return false; - } - return true; -} diff --git a/keyboards/keychron/k7_max/jis/white/keymaps/via/rules.mk b/keyboards/keychron/k7_max/jis/white/keymaps/via/rules.mk deleted file mode 100644 index 1e5b99807c..0000000000 --- a/keyboards/keychron/k7_max/jis/white/keymaps/via/rules.mk +++ /dev/null @@ -1 +0,0 @@ -VIA_ENABLE = yes diff --git a/keyboards/keychron/k7_max/jis/white/rules.mk b/keyboards/keychron/k7_max/jis/white/rules.mk deleted file mode 100644 index 6e7633bfe0..0000000000 --- a/keyboards/keychron/k7_max/jis/white/rules.mk +++ /dev/null @@ -1 +0,0 @@ -# This file intentionally left blank diff --git a/keyboards/keychron/k7_max/jis/white/white.c b/keyboards/keychron/k7_max/jis/white/white.c deleted file mode 100644 index 0c7b91bf5a..0000000000 --- a/keyboards/keychron/k7_max/jis/white/white.c +++ /dev/null @@ -1,132 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#include "quantum.h" - -// clang-format off -#ifdef LED_MATRIX_ENABLE -const snled27351_led_t g_snled27351_leds[LED_MATRIX_LED_COUNT] = { -/* Refer to SNLED27351 manual for these locations - * driver - * | LED address - * | | */ - {0, E_1}, - {0, E_2}, - {0, E_3}, - {0, E_4}, - {0, E_5}, - {0, E_6}, - {0, E_7}, - {0, E_8}, - {0, E_9}, - {0, E_10}, - {0, E_11}, - {0, E_12}, - {0, E_13}, - {0, E_14}, - {0, E_15}, - {0, E_16}, - - {0, D_1}, - {0, D_2}, - {0, D_3}, - {0, D_4}, - {0, D_5}, - {0, D_6}, - {0, D_7}, - {0, D_8}, - {0, D_9}, - {0, D_10}, - {0, D_11}, - {0, D_12}, - {0, D_13}, - {0, D_14}, - {0, D_16}, - - {0, C_1}, - {0, C_2}, - {0, C_3}, - {0, C_4}, - {0, C_5}, - {0, C_6}, - {0, C_7}, - {0, C_8}, - {0, C_9}, - {0, C_10}, - {0, C_11}, - {0, C_12}, - {0, C_14}, - {0, C_16}, - - {0, B_1}, - {0, B_3}, - {0, B_4}, - {0, B_5}, - {0, B_6}, - {0, B_7}, - {0, B_8}, - {0, B_9}, - {0, B_10}, - {0, B_11}, - {0, B_12}, - {0, B_14}, - {0, B_15}, - {0, B_16}, - - {0, A_1}, - {0, A_2}, - {0, A_3}, - {0, A_4}, - {0, A_7}, - {0, A_10}, - {0, A_11}, - {0, A_12}, - {0, A_13}, - {0, A_14}, - {0, A_15}, - {0, A_16}, -}; - -#define __ NO_LED - -led_config_t g_led_config = { - { - // Key Matrix to LED Index - { 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, 40, 41, 42, __, 43, __, 44 }, - { 45, __, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, __, 56, 57, 58 }, - { 59, 60, 61, 62, __, __, 63, __, __, 64, 65, 66, 67, 68, 69, 70 }, - }, - { - // LED Index to Physical Position - {0, 0}, {15, 0}, {30, 0}, {45, 0}, {60, 0}, {75, 0}, { 90, 0}, {105, 0}, {119, 0}, {134, 0}, {149, 0}, {164, 0}, {179, 0}, {194, 0}, {209, 0}, {224, 0}, - {4,16}, {22,16}, {37,16}, {52,16}, {67,16}, {82,16}, { 97,16}, {112,16}, {127,16}, {142,16}, {157,16}, {172,16}, {187,16}, {205,24}, {224,16}, - {7,32}, {26,32}, {41,32}, {56,32}, {71,32}, {86,32}, {101,32}, {116,32}, {131,32}, {146,32}, {161,32}, {175,32}, {200,32}, {224,32}, - {8,48}, {34,48}, {49,48}, {64,48}, {78,48}, { 93,48}, {108,48}, {123,48}, {138,48}, {153,48}, {168,48}, {183,48}, {201,48}, {224,48}, - {0,64}, {15,64}, {30,64}, {45,64}, { 90,64}, {134,64}, {149,64}, {164,64}, {179,64}, {194,64}, {209,64}, {224,64} - }, - { - // RGB LED Index to Flag - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 - } - -}; -#endif diff --git a/keyboards/keychron/k7_max/k7_max.c b/keyboards/keychron/k7_max/k7_max.c deleted file mode 100644 index c43c802e27..0000000000 --- a/keyboards/keychron/k7_max/k7_max.c +++ /dev/null @@ -1,77 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#include "quantum.h" -#include "keychron_task.h" -#ifdef FACTORY_TEST_ENABLE -# include "factory_test.h" -# include "keychron_common.h" -#endif -#ifdef LK_WIRELESS_ENABLE -# include "lkbt51.h" -# include "wireless.h" -# include "transport.h" -# include "keychron_wireless_common.h" -# include "battery.h" -#endif - -#define POWER_ON_LED_DURATION 3000 -static uint32_t power_on_indicator_timer; - -bool dip_switch_update_kb(uint8_t index, bool active) { - if (index == 0) { - default_layer_set(1UL << (active ? 0 : 1)); - } - dip_switch_update_user(index, active); - - return true; -} - -void keyboard_post_init_kb(void) { -#ifdef LK_WIRELESS_ENABLE - palSetLineMode(P2P4_MODE_SELECT_PIN, PAL_MODE_INPUT); - palSetLineMode(BT_MODE_SELECT_PIN, PAL_MODE_INPUT); - - lkbt51_init(false); - wireless_init(); -#endif - - power_on_indicator_timer = timer_read32(); - keyboard_post_init_user(); -} - -bool keychron_task_kb(void) { - if (power_on_indicator_timer) { - if (timer_elapsed32(power_on_indicator_timer) > POWER_ON_LED_DURATION) { - power_on_indicator_timer = 0; -#ifdef LK_WIRELESS_ENABLE - writePin(BAT_LOW_LED_PIN, !BAT_LOW_LED_PIN_ON_STATE); -#endif - - } else { -#ifdef LK_WIRELESS_ENABLE - writePin(BAT_LOW_LED_PIN, BAT_LOW_LED_PIN_ON_STATE); -#endif - } - } - return true; -} - -#ifdef LK_WIRELESS_ENABLE -bool lpm_is_kb_idle(void) { - return power_on_indicator_timer == 0 && !factory_reset_indicating(); -} -#endif diff --git a/keyboards/keychron/k7_max/mcuconf.h b/keyboards/keychron/k7_max/mcuconf.h deleted file mode 100644 index 89294ee64b..0000000000 --- a/keyboards/keychron/k7_max/mcuconf.h +++ /dev/null @@ -1,37 +0,0 @@ -/* Copyright 2024 @ 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 - -#include_next - -#undef STM32_HSECLK -#define STM32_HSECLK 16000000 - -#undef STM32_PLLM_VALUE -#define STM32_PLLM_VALUE 8 - -#undef STM32_PLLN_VALUE -#define STM32_PLLN_VALUE 96 - -#undef STM32_PLLP_VALUE -#define STM32_PLLP_VALUE 4 - -#undef STM32_PLLQ_VALUE -#define STM32_PLLQ_VALUE 4 - -#undef STM32_SPI_USE_SPI1 -#define STM32_SPI_USE_SPI1 TRUE diff --git a/keyboards/keychron/k7_max/readme.md b/keyboards/keychron/k7_max/readme.md deleted file mode 100644 index fbed911474..0000000000 --- a/keyboards/keychron/k7_max/readme.md +++ /dev/null @@ -1,31 +0,0 @@ -# Keychron K7 Max - -![Keychron K7 Max](https://cdn.shopify.com/s/files/1/0059/0630/1017/t/5/assets/pf-d1ce6496--KeychronK765percentultraslimcompactwirelessmechanicalkeyboardforMacWindowsHotswappablelowprofileGateronMechanicalandOpticalswitchesforMacWindowswithRGBbacklit.jpg?v=1627545535) - -A customizable 65% low profile keyboard. - -* Keyboard Maintainer: [Keychron](https://github.com/keychron) -* Hardware Supported: Keychron K7 Max -* Hardware Availability: [Keychron K7 Max QMK/VIA Wireless Custom Mechanical Keyboard](https://www.keychron.com/products/keychron-k7-ultra-slim-wireless-mechanical-keyboard) - -Make example for this keyboard (after setting up your build environment): - - make keychron/k7_max/ansi/rgb:default - make keychron/k7_max/ansi/white:default - make keychron/k7_max/iso/rgb:default - make keychron/k7_max/iso/white:default - make keychron/k7_max/jis/rgb:default - make keychron/k7_max/jis/white:default - -Flashing example for this keyboard: - - make keychron/k7_max/ansi/rgb:default:flash - make keychron/k7_max/ansi/white:default:flash - make keychron/k7_max/iso/rgb:default:flash - make keychron/k7_max/iso/white:default:flash - make keychron/k7_max/jis/rgb:default:flash - make keychron/k7_max/jis/white:default:flash - -**Reset Key**: Disconnect the USB cable, toggle mode switch to "Cable", hold down the *Esc* key or reset button underneath space bar, then connect the USB cable. - -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). diff --git a/keyboards/keychron/k7_max/rules.mk b/keyboards/keychron/k7_max/rules.mk deleted file mode 100644 index 4eaf6820bc..0000000000 --- a/keyboards/keychron/k7_max/rules.mk +++ /dev/null @@ -1,4 +0,0 @@ -include keyboards/keychron/common/wireless/wireless.mk -include keyboards/keychron/common/keychron_common.mk - -VPATH += $(TOP_DIR)/keyboards/keychron diff --git a/keyboards/keychron/k7_max/via_json/k7_max_ansi_rgb_v1.0.json b/keyboards/keychron/k7_max/via_json/k7_max_ansi_rgb_v1.0.json deleted file mode 100644 index bfcde4d09f..0000000000 --- a/keyboards/keychron/k7_max/via_json/k7_max_ansi_rgb_v1.0.json +++ /dev/null @@ -1,240 +0,0 @@ -{ - "name": "Keychron K7 Max ANSI RGB", - "vendorId": "0x3434", - "productId": "0x0A70", - "keycodes": ["qmk_lighting"], - "menus": [ - { - "label": "Lighting", - "content": [ - { - "label": "Backlight", - "content": [ - { - "label": "Brightness", - "type": "range", - "options": [0, 255], - "content": ["id_qmk_rgb_matrix_brightness", 3, 1] - }, - { - "label": "Effect", - "type": "dropdown", - "content": ["id_qmk_rgb_matrix_effect", 3, 2], - "options": [ - ["None", 0], - ["Solid Color", 1], - ["Breathing", 2], - ["Band Spiral Val", 3], - ["Cycle All", 4], - ["Cycle Left Right", 5], - ["Cycle Up Down", 6], - ["Rainbow Moving Chevron", 7], - ["Cycle Out In", 8], - ["Cycle Out In Dual", 9], - ["Cycle Pinwheel", 10], - ["Cycle Spiral", 11], - ["Dual Beacon", 12], - ["Rainbow Beacon", 13], - ["Jellybean Raindrops", 14], - ["Pixel Rain", 15], - ["Typing Heatmap", 16], - ["Digital Rain", 17], - ["Reactive Simple", 18], - ["Reactive Multiwide", 19], - ["Reactive Multinexus", 20], - ["Splash", 21], - ["Solid Splash", 22] - ] - }, - { - "showIf": "{id_qmk_rgb_matrix_effect} > 1", - "label": "Effect Speed", - "type": "range", - "options": [0, 255], - "content": ["id_qmk_rgb_matrix_effect_speed", 3, 3] - }, - { - "showIf": "{id_qmk_rgb_matrix_effect} != 0 && ( {id_qmk_rgb_matrix_effect} < 4 || {id_qmk_rgb_matrix_effect} == 18 || ({id_qmk_rgb_matrix_effect} > 17 && {id_qmk_rgb_matrix_effect} != 21) ) ", - "label": "Color", - "type": "color", - "content": ["id_qmk_rgb_matrix_color", 3, 4] - } - ] - } - ] - } - ], - "customKeycodes": [ - {"name": "Left Option", "title": "Left Option", "shortName": "LOpt"}, - {"name": "Right Option", "title": "Right Option", "shortName": "ROpt"}, - {"name": "Left Cmd", "title": "Left Command", "shortName": "LCmd"}, - {"name": "Right Cmd", "title": "Right Command", "shortName": "RCmd"}, - {"name": "Misson Control", "title": "Misson Control in Mac", "shortName": "MCtl"}, - {"name": "Lanuch Pad", "title": "Lanuch Pad in Windows", "shortName": "LPad"}, - {"name": "Task View", "title": "Task View in Windows", "shortName": "Task"}, - {"name": "File Explorer", "title": "File Explorer in Windows", "shortName": "File"}, - {"name": "Screen shot", "title": "Screenshot in macOS", "shortName": "SShot"}, - {"name": "Cortana", "title": "Cortana in Windows", "shortName": "Cortana"}, - {"name": "Siri", "title": "Siri in macOS", "shortName": "Siri"}, - {"name": "Bluetooth Host 1", "title": "Bluetooth Host 1", "shortName": "BTH1"}, - {"name": "Bluetooth Host 2", "title": "Bluetooth Host 2", "shortName": "BTH2"}, - {"name": "Bluetooth Host 3", "title": "Bluetooth Host 3", "shortName": "BTH3"}, - {"name": "2.4G", "title": "2.4G", "shortName": "2.4G"}, - {"name": "Battery Level", "title": "Show battery level", "shortName": "Batt"} - ], - "matrix": {"rows": 5, "cols" : 16}, - "layouts": { - "keymap": [ - [ - { - "c": "#777777" - }, - "0, 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, - "c": "#aaaaaa" - }, - "0, 13", - "0, 15" - ], - [ - { - "w": 1.5, - "c": "#aaaaaa" - }, - "1, 0", - { - "c": "#cccccc" - }, - "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, - "c": "#aaaaaa" - }, - "1, 13", - "1, 15" - ], - [ - { - "w": 1.75, - "c": "#aaaaaa" - }, - "2, 0", - { - "c": "#cccccc" - }, - "2, 1", - "2, 2", - "2, 3", - "2, 4", - "2, 5", - "2, 6", - "2, 7", - "2, 8", - "2, 9", - "2, 10", - "2, 11", - { - "w": 2.25, - "c": "#777777" - }, - "2, 13", - { - "c": "#aaaaaa" - }, - "2, 15" - ], - [ - { - "w": 2.25, - "c": "#aaaaaa" - }, - "3, 0", - { - "c": "#cccccc" - }, - "3, 2", - "3, 3", - "3, 4", - "3, 5", - "3, 6", - "3, 7", - "3, 8", - "3, 9", - "3, 10", - "3, 11", - { - "w": 1.75, - "c": "#aaaaaa" - }, - "3, 13", - { - "c": "#cccccc" - }, - "3, 14", - { - "c": "#aaaaaa" - }, - "3, 15" - ], - [ - { - "w": 1.25, - "c": "#aaaaaa" - }, - "4, 0", - { - "w": 1.25 - }, - "4, 1", - { - "w": 1.25 - }, - "4, 2", - { - "w": 6.25, - "c": "#cccccc" - }, - "4, 6", - { - "c": "#aaaaaa" - }, - "4, 10", - "4, 11", - "4, 12", - { - "c": "#cccccc" - }, - "4, 13", - "4, 14", - "4, 15" - ] - ] - } -} diff --git a/keyboards/keychron/k7_max/via_json/k7_max_ansi_white_v1.0.json b/keyboards/keychron/k7_max/via_json/k7_max_ansi_white_v1.0.json deleted file mode 100644 index 70de6397ba..0000000000 --- a/keyboards/keychron/k7_max/via_json/k7_max_ansi_white_v1.0.json +++ /dev/null @@ -1,179 +0,0 @@ -{ - "name": "Keychron K7 Max White ANSI", - "vendorId": "0x3434", - "productId": "0x0A73", - "keycodes": ["qmk_lighting"], - "customKeycodes": [ - {"name": "Left Option", "title": "Left Option", "shortName": "LOpt"}, - {"name": "Right Option", "title": "Right Option", "shortName": "ROpt"}, - {"name": "Left Cmd", "title": "Left Command", "shortName": "LCmd"}, - {"name": "Right Cmd", "title": "Right Command", "shortName": "RCmd"}, - {"name": "Misson Control", "title": "Misson Control in Mac", "shortName": "MCtl"}, - {"name": "Lanuch Pad", "title": "Lanuch Pad in Windows", "shortName": "LPad"}, - {"name": "Task View", "title": "Task View in Windows", "shortName": "Task"}, - {"name": "File Explorer", "title": "File Explorer in Windows", "shortName": "File"}, - {"name": "Screen shot", "title": "Screenshot in macOS", "shortName": "SShot"}, - {"name": "Cortana", "title": "Cortana in Windows", "shortName": "Cortana"}, - {"name": "Siri", "title": "Siri in macOS", "shortName": "Siri"}, - {"name": "Bluetooth Host 1", "title": "Bluetooth Host 1", "shortName": "BTH1"}, - {"name": "Bluetooth Host 2", "title": "Bluetooth Host 2", "shortName": "BTH2"}, - {"name": "Bluetooth Host 3", "title": "Bluetooth Host 3", "shortName": "BTH3"}, - {"name": "2.4G", "title": "2.4G", "shortName": "2.4G"}, - {"name": "Battery Level", "title": "Show battery level", "shortName": "Batt"} - ], - "matrix": {"rows": 5, "cols" : 16}, - "layouts": { - "keymap": [ - [ - { - "c": "#777777" - }, - "0, 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, - "c": "#aaaaaa" - }, - "0, 13", - "0, 15" - ], - [ - { - "w": 1.5, - "c": "#aaaaaa" - }, - "1, 0", - { - "c": "#cccccc" - }, - "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, - "c": "#aaaaaa" - }, - "1, 13", - "1, 15" - ], - [ - { - "w": 1.75, - "c": "#aaaaaa" - }, - "2, 0", - { - "c": "#cccccc" - }, - "2, 1", - "2, 2", - "2, 3", - "2, 4", - "2, 5", - "2, 6", - "2, 7", - "2, 8", - "2, 9", - "2, 10", - "2, 11", - { - "w": 2.25, - "c": "#777777" - }, - "2, 13", - { - "c": "#aaaaaa" - }, - "2, 15" - ], - [ - { - "w": 2.25, - "c": "#aaaaaa" - }, - "3, 0", - { - "c": "#cccccc" - }, - "3, 2", - "3, 3", - "3, 4", - "3, 5", - "3, 6", - "3, 7", - "3, 8", - "3, 9", - "3, 10", - "3, 11", - { - "w": 1.75, - "c": "#aaaaaa" - }, - "3, 13", - { - "c": "#cccccc" - }, - "3, 14", - { - "c": "#aaaaaa" - }, - "3, 15" - ], - [ - { - "w": 1.25, - "c": "#aaaaaa" - }, - "4, 0", - { - "w": 1.25 - }, - "4, 1", - { - "w": 1.25 - }, - "4, 2", - { - "w": 6.25, - "c": "#cccccc" - }, - "4, 6", - { - "c": "#aaaaaa" - }, - "4, 10", - "4, 11", - "4, 12", - { - "c": "#cccccc" - }, - "4, 13", - "4, 14", - "4, 15" - ] - ] - } - } diff --git a/keyboards/keychron/k7_max/via_json/k7_max_iso_rgb_v1.0.json b/keyboards/keychron/k7_max/via_json/k7_max_iso_rgb_v1.0.json deleted file mode 100644 index 0795a75463..0000000000 --- a/keyboards/keychron/k7_max/via_json/k7_max_iso_rgb_v1.0.json +++ /dev/null @@ -1,245 +0,0 @@ -{ - "name": "Keychron K7 Max ISO RGB", - "vendorId": "0x3434", - "productId": "0x0A71", - "keycodes": ["qmk_lighting"], - "menus": [ - { - "label": "Lighting", - "content": [ - { - "label": "Backlight", - "content": [ - { - "label": "Brightness", - "type": "range", - "options": [0, 255], - "content": ["id_qmk_rgb_matrix_brightness", 3, 1] - }, - { - "label": "Effect", - "type": "dropdown", - "content": ["id_qmk_rgb_matrix_effect", 3, 2], - "options": [ - ["None", 0], - ["Solid Color", 1], - ["Breathing", 2], - ["Band Spiral Val", 3], - ["Cycle All", 4], - ["Cycle Left Right", 5], - ["Cycle Up Down", 6], - ["Rainbow Moving Chevron", 7], - ["Cycle Out In", 8], - ["Cycle Out In Dual", 9], - ["Cycle Pinwheel", 10], - ["Cycle Spiral", 11], - ["Dual Beacon", 12], - ["Rainbow Beacon", 13], - ["Jellybean Raindrops", 14], - ["Pixel Rain", 15], - ["Typing Heatmap", 16], - ["Digital Rain", 17], - ["Reactive Simple", 18], - ["Reactive Multiwide", 19], - ["Reactive Multinexus", 20], - ["Splash", 21], - ["Solid Splash", 22] - ] - }, - { - "showIf": "{id_qmk_rgb_matrix_effect} > 1", - "label": "Effect Speed", - "type": "range", - "options": [0, 255], - "content": ["id_qmk_rgb_matrix_effect_speed", 3, 3] - }, - { - "showIf": "{id_qmk_rgb_matrix_effect} != 0 && ( {id_qmk_rgb_matrix_effect} < 4 || {id_qmk_rgb_matrix_effect} == 18 || ({id_qmk_rgb_matrix_effect} > 17 && {id_qmk_rgb_matrix_effect} != 21) ) ", - "label": "Color", - "type": "color", - "content": ["id_qmk_rgb_matrix_color", 3, 4] - } - ] - } - ] - } - ], - "customKeycodes": [ - {"name": "Left Option", "title": "Left Option", "shortName": "LOpt"}, - {"name": "Right Option", "title": "Right Option", "shortName": "ROpt"}, - {"name": "Left Cmd", "title": "Left Command", "shortName": "LCmd"}, - {"name": "Right Cmd", "title": "Right Command", "shortName": "RCmd"}, - {"name": "Misson Control", "title": "Misson Control in Mac", "shortName": "MCtl"}, - {"name": "Lanuch Pad", "title": "Lanuch Pad in Windows", "shortName": "LPad"}, - {"name": "Task View", "title": "Task View in Windows", "shortName": "Task"}, - {"name": "File Explorer", "title": "File Explorer in Windows", "shortName": "File"}, - {"name": "Screen shot", "title": "Screenshot in macOS", "shortName": "SShot"}, - {"name": "Cortana", "title": "Cortana in Windows", "shortName": "Cortana"}, - {"name": "Siri", "title": "Siri in macOS", "shortName": "Siri"}, - {"name": "Bluetooth Host 1", "title": "Bluetooth Host 1", "shortName": "BTH1"}, - {"name": "Bluetooth Host 2", "title": "Bluetooth Host 2", "shortName": "BTH2"}, - {"name": "Bluetooth Host 3", "title": "Bluetooth Host 3", "shortName": "BTH3"}, - {"name": "2.4G", "title": "2.4G", "shortName": "2.4G"}, - {"name": "Battery Level", "title": "Show battery level", "shortName": "Batt"} - ], - "matrix": {"rows": 5, "cols" : 16}, - "layouts": { - "keymap": [ - [ - { - "c": "#777777" - }, - "0, 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, - "c": "#aaaaaa" - }, - "0, 13", - "0, 15" - ], - [ - { - "w": 1.5, - "c": "#aaaaaa" - }, - "1, 0", - { - "c": "#cccccc" - }, - "1, 1", - "1, 2", - "1, 3", - "1, 4", - "1, 5", - "1, 6", - "1, 7", - "1, 8", - "1, 9", - "1, 10", - "1, 11", - "1, 12", - { - "x": 0.25, - "w": 1.25, - "h": 2, - "x2": -0.25, - "w2": 1.5, - "h2": 1, - "c": "#777777" - }, - "1, 13", - { - "c": "#aaaaaa" - }, - "1, 15" - ], - [ - { - "w": 1.75, - "c": "#aaaaaa" - }, - "2, 0", - { - "c": "#cccccc" - }, - "2, 1", - "2, 2", - "2, 3", - "2, 4", - "2, 5", - "2, 6", - "2, 7", - "2, 8", - "2, 9", - "2, 10", - "2, 11", - "2, 13", - { - "x": 1.25, - "c": "#aaaaaa" - }, - "2, 15" - ], - [ - { - "w": 1.25 - }, - "3, 0", - { - "c": "#cccccc" - }, - "3, 1", - "3, 2", - "3, 3", - "3, 4", - "3, 5", - "3, 6", - "3, 7", - "3, 8", - "3, 9", - "3, 10", - "3, 11", - { - "w": 1.75, - "c": "#aaaaaa" - }, - "3, 13", - { - "c": "#cccccc" - }, - "3, 14", - { - "c": "#aaaaaa" - }, - "3, 15" - ], - [ - { - "w": 1.25, - "c": "#aaaaaa" - }, - "4, 0", - { - "w": 1.25 - }, - "4, 1", - { - "w": 1.25 - }, - "4, 2", - { - "w": 6.25, - "c": "#cccccc" - }, - "4, 6", - { - "c": "#aaaaaa" - }, - "4, 10", - "4, 11", - "4, 12", - { - "c": "#cccccc" - }, - "4, 13", - "4, 14", - "4, 15" - ] - ] - } -} diff --git a/keyboards/keychron/k7_max/via_json/k7_max_iso_white_v1.0.json b/keyboards/keychron/k7_max/via_json/k7_max_iso_white_v1.0.json deleted file mode 100644 index 028bba897a..0000000000 --- a/keyboards/keychron/k7_max/via_json/k7_max_iso_white_v1.0.json +++ /dev/null @@ -1,184 +0,0 @@ -{ - "name": "Keychron K7 Max ISO White", - "vendorId": "0x3434", - "productId": "0x0A74", - "keycodes": ["qmk_lighting"], - "customKeycodes": [ - {"name": "Left Option", "title": "Left Option", "shortName": "LOpt"}, - {"name": "Right Option", "title": "Right Option", "shortName": "ROpt"}, - {"name": "Left Cmd", "title": "Left Command", "shortName": "LCmd"}, - {"name": "Right Cmd", "title": "Right Command", "shortName": "RCmd"}, - {"name": "Misson Control", "title": "Misson Control in Mac", "shortName": "MCtl"}, - {"name": "Lanuch Pad", "title": "Lanuch Pad in Windows", "shortName": "LPad"}, - {"name": "Task View", "title": "Task View in Windows", "shortName": "Task"}, - {"name": "File Explorer", "title": "File Explorer in Windows", "shortName": "File"}, - {"name": "Screen shot", "title": "Screenshot in macOS", "shortName": "SShot"}, - {"name": "Cortana", "title": "Cortana in Windows", "shortName": "Cortana"}, - {"name": "Siri", "title": "Siri in macOS", "shortName": "Siri"}, - {"name": "Bluetooth Host 1", "title": "Bluetooth Host 1", "shortName": "BTH1"}, - {"name": "Bluetooth Host 2", "title": "Bluetooth Host 2", "shortName": "BTH2"}, - {"name": "Bluetooth Host 3", "title": "Bluetooth Host 3", "shortName": "BTH3"}, - {"name": "2.4G", "title": "2.4G", "shortName": "2.4G"}, - {"name": "Battery Level", "title": "Show battery level", "shortName": "Batt"} - ], - "matrix": {"rows": 5, "cols" : 16}, - "layouts": { - "keymap": [ - [ - { - "c": "#777777" - }, - "0, 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, - "c": "#aaaaaa" - }, - "0, 13", - "0, 15" - ], - [ - { - "w": 1.5, - "c": "#aaaaaa" - }, - "1, 0", - { - "c": "#cccccc" - }, - "1, 1", - "1, 2", - "1, 3", - "1, 4", - "1, 5", - "1, 6", - "1, 7", - "1, 8", - "1, 9", - "1, 10", - "1, 11", - "1, 12", - { - "x": 0.25, - "w": 1.25, - "h": 2, - "x2": -0.25, - "w2": 1.5, - "h2": 1, - "c": "#777777" - }, - "1, 13", - { - "c": "#aaaaaa" - }, - "1, 15" - ], - [ - { - "w": 1.75, - "c": "#aaaaaa" - }, - "2, 0", - { - "c": "#cccccc" - }, - "2, 1", - "2, 2", - "2, 3", - "2, 4", - "2, 5", - "2, 6", - "2, 7", - "2, 8", - "2, 9", - "2, 10", - "2, 11", - "2, 13", - { - "x": 1.25, - "c": "#aaaaaa" - }, - "2, 15" - ], - [ - { - "w": 1.25 - }, - "3, 0", - { - "c": "#cccccc" - }, - "3, 1", - "3, 2", - "3, 3", - "3, 4", - "3, 5", - "3, 6", - "3, 7", - "3, 8", - "3, 9", - "3, 10", - "3, 11", - { - "w": 1.75, - "c": "#aaaaaa" - }, - "3, 13", - { - "c": "#cccccc" - }, - "3, 14", - { - "c": "#aaaaaa" - }, - "3, 15" - ], - [ - { - "w": 1.25, - "c": "#aaaaaa" - }, - "4, 0", - { - "w": 1.25 - }, - "4, 1", - { - "w": 1.25 - }, - "4, 2", - { - "w": 6.25, - "c": "#cccccc" - }, - "4, 6", - { - "c": "#aaaaaa" - }, - "4, 10", - "4, 11", - "4, 12", - { - "c": "#cccccc" - }, - "4, 13", - "4, 14", - "4, 15" - ] - ] - } -} diff --git a/keyboards/keychron/k7_max/via_json/k7_max_jis_rgb_v1.0.json b/keyboards/keychron/k7_max/via_json/k7_max_jis_rgb_v1.0.json deleted file mode 100644 index 31ff8c3965..0000000000 --- a/keyboards/keychron/k7_max/via_json/k7_max_jis_rgb_v1.0.json +++ /dev/null @@ -1,237 +0,0 @@ -{ - "name": "Keychron K7 Max JIS RGB", - "vendorId": "0x3434", - "productId": "0x0A72", - "keycodes": ["qmk_lighting"], - "menus": [ - { - "label": "Lighting", - "content": [ - { - "label": "Backlight", - "content": [ - { - "label": "Brightness", - "type": "range", - "options": [0, 255], - "content": ["id_qmk_rgb_matrix_brightness", 3, 1] - }, - { - "label": "Effect", - "type": "dropdown", - "content": ["id_qmk_rgb_matrix_effect", 3, 2], - "options": [ - ["None", 0], - ["Solid Color", 1], - ["Breathing", 2], - ["Band Spiral Val", 3], - ["Cycle All", 4], - ["Cycle Left Right", 5], - ["Cycle Up Down", 6], - ["Rainbow Moving Chevron", 7], - ["Cycle Out In", 8], - ["Cycle Out In Dual", 9], - ["Cycle Pinwheel", 10], - ["Cycle Spiral", 11], - ["Dual Beacon", 12], - ["Rainbow Beacon", 13], - ["Jellybean Raindrops", 14], - ["Pixel Rain", 15], - ["Typing Heatmap", 16], - ["Digital Rain", 17], - ["Reactive Simple", 18], - ["Reactive Multiwide", 19], - ["Reactive Multinexus", 20], - ["Splash", 21], - ["Solid Splash", 22] - ] - }, - { - "showIf": "{id_qmk_rgb_matrix_effect} > 1", - "label": "Effect Speed", - "type": "range", - "options": [0, 255], - "content": ["id_qmk_rgb_matrix_effect_speed", 3, 3] - }, - { - "showIf": "{id_qmk_rgb_matrix_effect} != 0 && ( {id_qmk_rgb_matrix_effect} < 4 || {id_qmk_rgb_matrix_effect} == 18 || ({id_qmk_rgb_matrix_effect} > 17 && {id_qmk_rgb_matrix_effect} != 21) ) ", - "label": "Color", - "type": "color", - "content": ["id_qmk_rgb_matrix_color", 3, 4] - } - ] - } - ] - } - ], - "customKeycodes": [ - {"name": "Left Option", "title": "Left Option", "shortName": "LOpt"}, - {"name": "Right Option", "title": "Right Option", "shortName": "ROpt"}, - {"name": "Left Cmd", "title": "Left Command", "shortName": "LCmd"}, - {"name": "Right Cmd", "title": "Right Command", "shortName": "RCmd"}, - {"name": "Misson Control", "title": "Misson Control in Mac", "shortName": "MCtl"}, - {"name": "Lanuch Pad", "title": "Lanuch Pad in Windows", "shortName": "LPad"}, - {"name": "Task View", "title": "Task View in Windows", "shortName": "Task"}, - {"name": "File Explorer", "title": "File Explorer in Windows", "shortName": "File"}, - {"name": "Screen shot", "title": "Screenshot in macOS", "shortName": "SShot"}, - {"name": "Cortana", "title": "Cortana in Windows", "shortName": "Cortana"}, - {"name": "Siri", "title": "Siri in macOS", "shortName": "Siri"}, - {"name": "Bluetooth Host 1", "title": "Bluetooth Host 1", "shortName": "BTH1"}, - {"name": "Bluetooth Host 2", "title": "Bluetooth Host 2", "shortName": "BTH2"}, - {"name": "Bluetooth Host 3", "title": "Bluetooth Host 3", "shortName": "BTH3"}, - {"name": "2.4G", "title": "2.4G", "shortName": "2.4G"}, - {"name": "Battery Level", "title": "Show battery level", "shortName": "Batt"} - ], - "matrix": {"rows": 5, "cols" : 16}, - "layouts": { - "keymap": [ - [ - { - "c": "#777777" - }, - "0, 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", - { - "c": "#aaaaaa" - }, - "0, 13", - "0, 14", - "0, 15" - ], - [ - { - "w": 1.5, - "c": "#aaaaaa" - }, - "1, 0", - { - "c": "#cccccc" - }, - "1, 1", - "1, 2", - "1, 3", - "1, 4", - "1, 5", - "1, 6", - "1, 7", - "1, 8", - "1, 9", - "1, 10", - "1, 11", - "1, 12", - { - "x": 0.25, - "c": "#777777", - "w": 1.25, - "h": 2, - "x2": -0.25, - "w2": 1.5, - "h2": 1 - }, - "1, 13", - { - "c": "#aaaaaa" - }, - "1, 15" - ], - [ - { - "w": 1.75, - "c": "#aaaaaa" - }, - "2, 0", - { - "c": "#cccccc" - }, - "2, 1", - "2, 2", - "2, 3", - "2, 4", - "2, 5", - "2, 6", - "2, 7", - "2, 8", - "2, 9", - "2, 10", - "2, 11", - "2, 13", - { - "x":1.25, - "c": "#aaaaaa" - }, - "2, 15" - ], - [ - { - "w": 2.25, - "c": "#aaaaaa" - }, - "3, 0", - { - "c": "#cccccc" - }, - "3, 2", - "3, 3", - "3, 4", - "3, 5", - "3, 6", - "3, 7", - "3, 8", - "3, 9", - "3, 10", - "3, 11", - "3, 12", - { - "c": "#cccccc", - "w": 1.75 - }, - "3, 13", - { - "c": "#aaaaaa" - }, - "3, 15" - ], - [ - { - "c": "#aaaaaa" - }, - "4, 0", - "4, 1", - "4, 2", - "4, 3", - { - "w": 5, - "c": "#cccccc" - }, - "4, 6", - { - "c": "#aaaaaa" - }, - "4, 9", - "4, 10", - "4, 11", - "4, 12", - { - "c": "#cccccc" - }, - "4, 13", - "4, 14", - "4, 15" - ] - ] - } -} diff --git a/keyboards/keychron/k7_max/via_json/k7_max_jis_white_v1.0.json b/keyboards/keychron/k7_max/via_json/k7_max_jis_white_v1.0.json deleted file mode 100644 index 9caf6707fc..0000000000 --- a/keyboards/keychron/k7_max/via_json/k7_max_jis_white_v1.0.json +++ /dev/null @@ -1,176 +0,0 @@ -{ - "name": "Keychron K7 Max JIS White", - "vendorId": "0x3434", - "productId": "0x0A75", - "keycodes": ["qmk_lighting"], - "customKeycodes": [ - {"name": "Left Option", "title": "Left Option", "shortName": "LOpt"}, - {"name": "Right Option", "title": "Right Option", "shortName": "ROpt"}, - {"name": "Left Cmd", "title": "Left Command", "shortName": "LCmd"}, - {"name": "Right Cmd", "title": "Right Command", "shortName": "RCmd"}, - {"name": "Misson Control", "title": "Misson Control in Mac", "shortName": "MCtl"}, - {"name": "Lanuch Pad", "title": "Lanuch Pad in Windows", "shortName": "LPad"}, - {"name": "Task View", "title": "Task View in Windows", "shortName": "Task"}, - {"name": "File Explorer", "title": "File Explorer in Windows", "shortName": "File"}, - {"name": "Screen shot", "title": "Screenshot in macOS", "shortName": "SShot"}, - {"name": "Cortana", "title": "Cortana in Windows", "shortName": "Cortana"}, - {"name": "Siri", "title": "Siri in macOS", "shortName": "Siri"}, - {"name": "Bluetooth Host 1", "title": "Bluetooth Host 1", "shortName": "BTH1"}, - {"name": "Bluetooth Host 2", "title": "Bluetooth Host 2", "shortName": "BTH2"}, - {"name": "Bluetooth Host 3", "title": "Bluetooth Host 3", "shortName": "BTH3"}, - {"name": "2.4G", "title": "2.4G", "shortName": "2.4G"}, - {"name": "Battery Level", "title": "Show battery level", "shortName": "Batt"} - ], - "matrix": {"rows": 5, "cols" : 16}, - "layouts": { - "keymap": [ - [ - { - "c": "#777777" - }, - "0, 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", - { - "c": "#aaaaaa" - }, - "0, 13", - "0, 14", - "0, 15" - ], - [ - { - "w": 1.5, - "c": "#aaaaaa" - }, - "1, 0", - { - "c": "#cccccc" - }, - "1, 1", - "1, 2", - "1, 3", - "1, 4", - "1, 5", - "1, 6", - "1, 7", - "1, 8", - "1, 9", - "1, 10", - "1, 11", - "1, 12", - { - "x": 0.25, - "c": "#777777", - "w": 1.25, - "h": 2, - "x2": -0.25, - "w2": 1.5, - "h2": 1 - }, - "1, 13", - { - "c": "#aaaaaa" - }, - "1, 15" - ], - [ - { - "w": 1.75, - "c": "#aaaaaa" - }, - "2, 0", - { - "c": "#cccccc" - }, - "2, 1", - "2, 2", - "2, 3", - "2, 4", - "2, 5", - "2, 6", - "2, 7", - "2, 8", - "2, 9", - "2, 10", - "2, 11", - "2, 13", - { - "x":1.25, - "c": "#aaaaaa" - }, - "2, 15" - ], - [ - { - "w": 2.25, - "c": "#aaaaaa" - }, - "3, 0", - { - "c": "#cccccc" - }, - "3, 2", - "3, 3", - "3, 4", - "3, 5", - "3, 6", - "3, 7", - "3, 8", - "3, 9", - "3, 10", - "3, 11", - "3, 12", - { - "c": "#cccccc", - "w": 1.75 - }, - "3, 13", - { - "c": "#aaaaaa" - }, - "3, 15" - ], - [ - { - "c": "#aaaaaa" - }, - "4, 0", - "4, 1", - "4, 2", - "4, 3", - { - "w": 5, - "c": "#cccccc" - }, - "4, 6", - { - "c": "#aaaaaa" - }, - "4, 9", - "4, 10", - "4, 11", - "4, 12", - { - "c": "#cccccc" - }, - "4, 13", - "4, 14", - "4, 15" - ] - ] - } -} diff --git a/keyboards/keychron/k7_pro/ansi/rgb/config.h b/keyboards/keychron/k7_pro/ansi/rgb/config.h deleted file mode 100644 index dc70176c26..0000000000 --- a/keyboards/keychron/k7_pro/ansi/rgb/config.h +++ /dev/null @@ -1,53 +0,0 @@ -/* Copyright 2021 @ 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 . - */ - -#pragma once - -#ifdef RGB_MATRIX_ENABLE -/* RGB Matrix driver configuration */ -# define DRIVER_COUNT 2 - -# define DRIVER_ADDR_1 0b1110111 -# define DRIVER_ADDR_2 0b1110100 -# define DRIVER_1_LED_COUNT 30 -# define DRIVER_2_LED_COUNT 38 -# define RGB_MATRIX_LED_COUNT (DRIVER_1_LED_COUNT + DRIVER_2_LED_COUNT) - -/* Set to infinit, which is use in USB mode by default - */ -# define RGB_MATRIX_TIMEOUT RGB_MATRIX_TIMEOUT_INFINITE -/* Allow shutdown of led driver to save power */ -# define RGB_MATRIX_DRIVER_SHUTDOWN_ENABLE -/* Turn off backlight on low brightness to save power */ -# define RGB_MATRIX_BRIGHTNESS_TURN_OFF_VAL 48 - -# define DIM_CAPS_LOCK -# define CAPS_LOCK_INDEX 30 -# define LOW_BAT_IND_INDEX 61 - -/* RGB Matrix Animation modes. Explicitly enabled - * For full list of effects, see: - * https://docs.qmk.fm/#/feature_rgb_matrix?id=rgb-matrix-effects - */ - -# define RGB_MATRIX_KEYPRESSES -# define RGB_MATRIX_FRAMEBUFFER_EFFECTS - -/* Set LED driver current */ -# define SNLED27351_CURRENT_TUNE \ - { 0x38, 0x38, 0x38, 0x38, 0x38, 0x38, 0x38, 0x38, 0x38, 0x38, 0x38, 0x38 } - -#endif diff --git a/keyboards/keychron/k7_pro/ansi/rgb/info.json b/keyboards/keychron/k7_pro/ansi/rgb/info.json deleted file mode 100644 index d27ecdd913..0000000000 --- a/keyboards/keychron/k7_pro/ansi/rgb/info.json +++ /dev/null @@ -1,35 +0,0 @@ -{ - "usb": { - "pid": "0x0270", - "device_version": "1.0.0" - }, - "features": { - "rgb_matrix": true - }, - "rgb_matrix": { - "driver": "snled27351", - "animations": { - "breathing": true, - "band_spiral_val": true, - "cycle_all": true, - "cycle_left_right": true, - "cycle_up_down": true, - "rainbow_moving_chevron": true, - "cycle_out_in": true, - "cycle_out_in_dual": true, - "cycle_pinwheel": true, - "cycle_spiral": true, - "dual_beacon": true, - "rainbow_beacon": true, - "jellybean_raindrops": true, - "pixel_rain": true, - "typing_heatmap": true, - "digital_rain": true, - "solid_reactive_simple": true, - "solid_reactive_multiwide": true, - "solid_reactive_multinexus": true, - "splash": true, - "solid_splash": true - } - } -} diff --git a/keyboards/keychron/k7_pro/ansi/rgb/keymaps/default/keymap.c b/keyboards/keychron/k7_pro/ansi/rgb/keymaps/default/keymap.c deleted file mode 100644 index b822447268..0000000000 --- a/keyboards/keychron/k7_pro/ansi/rgb/keymaps/default/keymap.c +++ /dev/null @@ -1,63 +0,0 @@ -/* Copyright 2021 @ 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 . - */ - -#include QMK_KEYBOARD_H - -// clang-format off -enum layers{ - MAC_BASE, - WIN_BASE, - MAC_FN1, - WIN_FN1, - FN2 -}; - -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { -[MAC_BASE] = LAYOUT_ansi_68( - 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_DEL, - 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_HOME, - 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_PGUP, - 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_PGDN, - KC_LCTL, KC_LOPTN, KC_LCMMD, KC_SPC, KC_RCMMD,MO(MAC_FN1),MO(FN2), KC_LEFT, KC_DOWN, KC_RGHT), - -[WIN_BASE] = LAYOUT_ansi_68( - 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_DEL, - 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_HOME, - 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_PGUP, - 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_PGDN, - KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(WIN_FN1),MO(FN2), KC_LEFT, KC_DOWN, KC_RGHT), - -[MAC_FN1] = LAYOUT_ansi_68( - KC_GRV, KC_BRID, KC_BRIU, KC_MCTL, KC_LPAD, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_TRNS, RGB_TOG, - KC_TRNS, BT_HST1, BT_HST2, BT_HST3, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, NK_TOGG, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS), - -[WIN_FN1] = LAYOUT_ansi_68( - KC_GRV, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_TRNS, RGB_TOG, - KC_TRNS, BT_HST1, BT_HST2, BT_HST3, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, NK_TOGG, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS), - -[FN2] = LAYOUT_ansi_68( - KC_TILD, 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, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, BAT_LVL, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, 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/keychron/k7_pro/ansi/rgb/keymaps/via/keymap.c b/keyboards/keychron/k7_pro/ansi/rgb/keymaps/via/keymap.c deleted file mode 100644 index b822447268..0000000000 --- a/keyboards/keychron/k7_pro/ansi/rgb/keymaps/via/keymap.c +++ /dev/null @@ -1,63 +0,0 @@ -/* Copyright 2021 @ 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 . - */ - -#include QMK_KEYBOARD_H - -// clang-format off -enum layers{ - MAC_BASE, - WIN_BASE, - MAC_FN1, - WIN_FN1, - FN2 -}; - -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { -[MAC_BASE] = LAYOUT_ansi_68( - 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_DEL, - 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_HOME, - 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_PGUP, - 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_PGDN, - KC_LCTL, KC_LOPTN, KC_LCMMD, KC_SPC, KC_RCMMD,MO(MAC_FN1),MO(FN2), KC_LEFT, KC_DOWN, KC_RGHT), - -[WIN_BASE] = LAYOUT_ansi_68( - 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_DEL, - 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_HOME, - 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_PGUP, - 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_PGDN, - KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(WIN_FN1),MO(FN2), KC_LEFT, KC_DOWN, KC_RGHT), - -[MAC_FN1] = LAYOUT_ansi_68( - KC_GRV, KC_BRID, KC_BRIU, KC_MCTL, KC_LPAD, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_TRNS, RGB_TOG, - KC_TRNS, BT_HST1, BT_HST2, BT_HST3, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, NK_TOGG, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS), - -[WIN_FN1] = LAYOUT_ansi_68( - KC_GRV, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_TRNS, RGB_TOG, - KC_TRNS, BT_HST1, BT_HST2, BT_HST3, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, NK_TOGG, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS), - -[FN2] = LAYOUT_ansi_68( - KC_TILD, 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, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, BAT_LVL, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, 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/keychron/k7_pro/ansi/rgb/keymaps/via/rules.mk b/keyboards/keychron/k7_pro/ansi/rgb/keymaps/via/rules.mk deleted file mode 100644 index 4eae6e776c..0000000000 --- a/keyboards/keychron/k7_pro/ansi/rgb/keymaps/via/rules.mk +++ /dev/null @@ -1,2 +0,0 @@ -VIA_ENABLE = yes -OPT_DEFS += -DDYNAMIC_KEYMAP_LAYER_COUNT=5 diff --git a/keyboards/keychron/k7_pro/ansi/rgb/rgb.c b/keyboards/keychron/k7_pro/ansi/rgb/rgb.c deleted file mode 100644 index edc48c2f97..0000000000 --- a/keyboards/keychron/k7_pro/ansi/rgb/rgb.c +++ /dev/null @@ -1,127 +0,0 @@ -/* Copyright 2021 @ 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 . - */ - -#include "quantum.h" - -// clang-format off -#ifdef RGB_MATRIX_ENABLE -const snled27351_led_t g_snled27351_leds[RGB_MATRIX_LED_COUNT] = { -/* Refer to IS31 manual for these locations - * driver - * | R location - * | | G location - * | | | B location - * | | | | */ - {0, F_1, D_1, E_1}, - {0, F_2, D_2, E_2}, - {0, F_3, D_3, E_3}, - {0, F_4, D_4, E_4}, - {0, F_5, D_5, E_5}, - {0, F_6, D_6, E_6}, - {0, F_7, D_7, E_7}, - {0, F_8, D_8, E_8}, - {0, F_9, D_9, E_9}, - {0, F_10, D_10, E_10}, - {0, F_11, D_11, E_11}, - {0, F_12, D_12, E_12}, - {0, F_13, D_13, E_13}, - {0, F_14, D_14, E_14}, - {0, F_16, D_16, E_16}, - - {0, A_1, C_1, B_1}, - {0, A_2, C_2, B_2}, - {0, A_3, C_3, B_3}, - {0, A_4, C_4, B_4}, - {0, A_5, C_5, B_5}, - {0, A_6, C_6, B_6}, - {0, A_7, C_7, B_7}, - {0, A_8, C_8, B_8}, - {0, A_9, C_9, B_9}, - {0, A_10, C_10, B_10}, - {0, A_11, C_11, B_11}, - {0, A_12, C_12, B_12}, - {0, A_13, C_13, B_13}, - {0, A_14, C_14, B_14}, - {0, A_16, C_16, B_16}, - - {1, I_1, G_1, H_1}, - {1, I_2, G_2, H_2}, - {1, I_3, G_3, H_3}, - {1, I_4, G_4, H_4}, - {1, I_5, G_5, H_5}, - {1, I_6, G_6, H_6}, - {1, I_7, G_7, H_7}, - {1, I_8, G_8, H_8}, - {1, I_9, G_9, H_9}, - {1, I_10, G_10, H_10}, - {1, I_11, G_11, H_11}, - {1, I_12, G_12, H_12}, - {1, I_14, G_14, H_14}, - {1, I_16, G_16, H_16}, - - {1, C_1, A_1, B_1}, - {1, C_3, A_3, B_3}, - {1, C_4, A_4, B_4}, - {1, C_5, A_5, B_5}, - {1, C_6, A_6, B_6}, - {1, C_7, A_7, B_7}, - {1, C_8, A_8, B_8}, - {1, C_9, A_9, B_9}, - {1, C_10, A_10, B_10}, - {1, C_11, A_11, B_11}, - {1, C_12, A_12, B_12}, - {1, C_14, A_14, B_14}, - {1, C_15, A_15, B_15}, - {1, C_16, A_16, B_16}, - - {1, F_1, D_1, E_1}, - {1, F_2, D_2, E_2}, - {1, F_3, D_3, E_3}, - {1, F_7, D_7, E_7}, - {1, F_11, D_11, E_11}, - {1, F_12, D_12, E_12}, - {1, F_13, D_13, E_13}, - {1, F_14, D_14, E_14}, - {1, F_15, D_15, E_15}, - {1, F_16, D_16, E_16}, -}; - -led_config_t g_led_config = { - { - { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, NO_LED, 14 }, - { 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, NO_LED, 29 }, - { 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, NO_LED, 42, NO_LED, 43 }, - { 44, NO_LED, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, NO_LED, 55, 56, 57 }, - { 58, 59, 60, NO_LED, NO_LED, NO_LED, 61, NO_LED, NO_LED, NO_LED, 62, 63, 64, 65, 66, 67 } - }, - { - {0, 0}, {14, 0}, {29, 0}, {44, 0}, {59, 0}, {74, 0}, { 89, 0}, {104, 0}, {119, 0}, {134, 0}, {149, 0}, {164, 0}, {179, 0}, {201, 0}, {223, 0}, - {3,16}, {22,16}, {37,16}, {52,16}, {67,16}, {82,16}, { 97, 16}, {112, 16}, {126, 16}, {141, 16}, {156, 16}, {171, 16}, {186, 16}, {205, 16}, {223, 16}, - {5,32}, {26,32}, {41,32}, {55,32}, {70,32}, {85,32}, {100, 32}, {115, 32}, {130, 32}, {145, 32}, {160, 32}, {175, 32}, {199, 32}, {223, 32}, - {9,48}, {33,48}, {48,48}, {63,48}, {78,48}, { 93, 48}, {108, 48}, {123, 48}, {138, 48}, {153, 48}, {168, 48}, {188, 48}, {209, 48}, {223, 48}, - {1,64}, {20,64}, {39,64}, { 95, 64}, {149, 64}, {164, 64}, {179, 64}, {194, 64}, {209, 64}, {223, 64} - - }, - { - 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, - 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, - 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, - 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, - 4, 4, 4, 4, 4, 4, 4, 4, 4, 4 - - } -}; -#endif diff --git a/keyboards/keychron/k7_pro/ansi/rgb/rules.mk b/keyboards/keychron/k7_pro/ansi/rgb/rules.mk deleted file mode 100644 index f886ea2e8e..0000000000 --- a/keyboards/keychron/k7_pro/ansi/rgb/rules.mk +++ /dev/null @@ -1 +0,0 @@ -# This file intentionally blank \ No newline at end of file diff --git a/keyboards/keychron/k7_pro/ansi/white/config.h b/keyboards/keychron/k7_pro/ansi/white/config.h deleted file mode 100644 index 54861f6f82..0000000000 --- a/keyboards/keychron/k7_pro/ansi/white/config.h +++ /dev/null @@ -1,49 +0,0 @@ -/* Copyright 2021 @ 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 . - */ - -#pragma once - -#ifdef LED_MATRIX_ENABLE -/* LED matrix driver configuration */ -# define DRIVER_COUNT 1 -# define SNLED27351_I2C_ADDRESS_1 SNLED27351_I2C_ADDRESS_GND -# define LED_MATRIX_LED_COUNT 68 - -/* Set to infinit, which is use in USB mode by default */ -# define LED_MATRIX_TIMEOUT LED_MATRIX_TIMEOUT_INFINITE -/* Allow shutdown of led driver to save power */ -# define LED_MATRIX_DRIVER_SHUTDOWN_ENABLE -/* Turn off backlight on low brightness to save power */ -# define LED_MATRIX_BRIGHTNESS_TURN_OFF_VAL 48 - - -# define DIM_CAPS_LOCK -# define CAPS_LOCK_INDEX 46 -# define LOW_BAT_IND_INDEX 61 - -/* LED Matrix Animation modes. Explicitly enabled - * For full list of effects, see: - * https://docs.qmk.fm/#/feature_led_matrix?id=led-matrix-effects - */ -# define LED_MATRIX_KEYPRESSES - -/* Use first 6 channels of LED driver */ -# define PHASE_CHANNEL MSKPHASE_6CHANNEL - -/* Set LED driver current */ -# define SNLED27351_CURRENT_TUNE { 0x60, 0x60, 0x60, 0x60, 0x60, 0x60, 0x60, 0x60, 0x60, 0x60, 0x60, 0x60 } - -#endif diff --git a/keyboards/keychron/k7_pro/ansi/white/info.json b/keyboards/keychron/k7_pro/ansi/white/info.json deleted file mode 100644 index d54ab9fe38..0000000000 --- a/keyboards/keychron/k7_pro/ansi/white/info.json +++ /dev/null @@ -1,30 +0,0 @@ -{ - "usb": { - "pid": "0x0273", - "device_version": "1.0.0" - }, - "features": { - "led_matrix": true - }, - "led_matrix": { - "driver": "snled27351", - "animations": { - "none": true, - "solid": true, - "breathing": true, - "band_pinwheel": true, - "band_spiral": true, - "cycle_left_right": true, - "cycle_up_down": true, - "cycle_out_in": true, - "dual_beacon": true, - "solid_reactive_simple": true, - "solid_reactive_multiwide": true, - "solid_reactive_multinexus": true, - "solid_splash": true, - "wave_left_right": true, - "wave_up_down": true, - "effect_max": true - } - } -} diff --git a/keyboards/keychron/k7_pro/ansi/white/keymaps/default/keymap.c b/keyboards/keychron/k7_pro/ansi/white/keymaps/default/keymap.c deleted file mode 100644 index b364f0e70d..0000000000 --- a/keyboards/keychron/k7_pro/ansi/white/keymaps/default/keymap.c +++ /dev/null @@ -1,63 +0,0 @@ -/* Copyright 2021 @ 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 . - */ - -#include QMK_KEYBOARD_H - -// clang-format off -enum layers{ - MAC_BASE, - WIN_BASE, - MAC_FN1, - WIN_FN1, - FN2 -}; - -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { -[MAC_BASE] = LAYOUT_ansi_68( - 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_DEL, - 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_HOME, - 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_PGUP, - 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_PGDN, - KC_LCTL, KC_LOPTN, KC_LCMMD, KC_SPC, KC_RCMMD,MO(MAC_FN1),MO(FN2), KC_LEFT, KC_DOWN, KC_RGHT), - -[WIN_BASE] = LAYOUT_ansi_68( - 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_DEL, - 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_HOME, - 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_PGUP, - 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_PGDN, - KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(WIN_FN1),MO(FN2), KC_LEFT, KC_DOWN, KC_RGHT), - -[MAC_FN1] = LAYOUT_ansi_68( - KC_GRV, KC_BRID, KC_BRIU, KC_MCTL, KC_LPAD, BL_DOWN, BL_UP, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_TRNS, KC_TRNS, - KC_TRNS, BT_HST1, BT_HST2, BT_HST3, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - BL_TOGG, BL_STEP, BL_UP, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, BL_DOWN, KC_TRNS, KC_TRNS, KC_TRNS, NK_TOGG, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS), - -[WIN_FN1] = LAYOUT_ansi_68( - KC_GRV, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, BL_DOWN, BL_UP, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_TRNS, KC_TRNS, - KC_TRNS, BT_HST1, BT_HST2, BT_HST3, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - BL_TOGG, BL_STEP, BL_UP, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, BL_DOWN, KC_TRNS, KC_TRNS, KC_TRNS, NK_TOGG, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS), - -[FN2] = LAYOUT_ansi_68( - KC_TILD, 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, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, BAT_LVL, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, 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/keychron/k7_pro/ansi/white/keymaps/via/keymap.c b/keyboards/keychron/k7_pro/ansi/white/keymaps/via/keymap.c deleted file mode 100644 index b364f0e70d..0000000000 --- a/keyboards/keychron/k7_pro/ansi/white/keymaps/via/keymap.c +++ /dev/null @@ -1,63 +0,0 @@ -/* Copyright 2021 @ 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 . - */ - -#include QMK_KEYBOARD_H - -// clang-format off -enum layers{ - MAC_BASE, - WIN_BASE, - MAC_FN1, - WIN_FN1, - FN2 -}; - -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { -[MAC_BASE] = LAYOUT_ansi_68( - 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_DEL, - 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_HOME, - 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_PGUP, - 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_PGDN, - KC_LCTL, KC_LOPTN, KC_LCMMD, KC_SPC, KC_RCMMD,MO(MAC_FN1),MO(FN2), KC_LEFT, KC_DOWN, KC_RGHT), - -[WIN_BASE] = LAYOUT_ansi_68( - 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_DEL, - 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_HOME, - 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_PGUP, - 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_PGDN, - KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(WIN_FN1),MO(FN2), KC_LEFT, KC_DOWN, KC_RGHT), - -[MAC_FN1] = LAYOUT_ansi_68( - KC_GRV, KC_BRID, KC_BRIU, KC_MCTL, KC_LPAD, BL_DOWN, BL_UP, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_TRNS, KC_TRNS, - KC_TRNS, BT_HST1, BT_HST2, BT_HST3, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - BL_TOGG, BL_STEP, BL_UP, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, BL_DOWN, KC_TRNS, KC_TRNS, KC_TRNS, NK_TOGG, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS), - -[WIN_FN1] = LAYOUT_ansi_68( - KC_GRV, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, BL_DOWN, BL_UP, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_TRNS, KC_TRNS, - KC_TRNS, BT_HST1, BT_HST2, BT_HST3, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - BL_TOGG, BL_STEP, BL_UP, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, BL_DOWN, KC_TRNS, KC_TRNS, KC_TRNS, NK_TOGG, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS), - -[FN2] = LAYOUT_ansi_68( - KC_TILD, 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, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, BAT_LVL, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, 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/keychron/k7_pro/ansi/white/keymaps/via/rules.mk b/keyboards/keychron/k7_pro/ansi/white/keymaps/via/rules.mk deleted file mode 100644 index 4eae6e776c..0000000000 --- a/keyboards/keychron/k7_pro/ansi/white/keymaps/via/rules.mk +++ /dev/null @@ -1,2 +0,0 @@ -VIA_ENABLE = yes -OPT_DEFS += -DDYNAMIC_KEYMAP_LAYER_COUNT=5 diff --git a/keyboards/keychron/k7_pro/ansi/white/rules.mk b/keyboards/keychron/k7_pro/ansi/white/rules.mk deleted file mode 100644 index f886ea2e8e..0000000000 --- a/keyboards/keychron/k7_pro/ansi/white/rules.mk +++ /dev/null @@ -1 +0,0 @@ -# This file intentionally blank \ No newline at end of file diff --git a/keyboards/keychron/k7_pro/ansi/white/white.c b/keyboards/keychron/k7_pro/ansi/white/white.c deleted file mode 100644 index ef12033134..0000000000 --- a/keyboards/keychron/k7_pro/ansi/white/white.c +++ /dev/null @@ -1,125 +0,0 @@ -/* Copyright 2022 @ 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 . - */ - -#include "quantum.h" - -// clang-format off -#ifdef LED_MATRIX_ENABLE -const snled27351_led_t g_snled27351_leds[LED_MATRIX_LED_COUNT] = { -/* Refer to IS31 manual for these locations - * driver - * | LED address - * | | */ - {0, E_1}, - {0, E_2}, - {0, E_3}, - {0, E_4}, - {0, E_5}, - {0, E_6}, - {0, E_7}, - {0, E_8}, - {0, E_9}, - {0, E_10}, - {0, E_11}, - {0, E_12}, - {0, E_13}, - {0, E_14}, - {0, E_16}, - - {0, D_1}, - {0, D_2}, - {0, D_3}, - {0, D_4}, - {0, D_5}, - {0, D_6}, - {0, D_7}, - {0, D_8}, - {0, D_9}, - {0, D_10}, - {0, D_11}, - {0, D_12}, - {0, D_13}, - {0, D_14}, - {0, D_16}, - - {0, C_1}, - {0, C_2}, - {0, C_3}, - {0, C_4}, - {0, C_5}, - {0, C_6}, - {0, C_7}, - {0, C_8}, - {0, C_9}, - {0, C_10}, - {0, C_11}, - {0, C_12}, - {0, C_14}, - {0, C_16}, - - {0, B_1}, - {0, B_3}, - {0, B_4}, - {0, B_5}, - {0, B_6}, - {0, B_7}, - {0, B_8}, - {0, B_9}, - {0, B_10}, - {0, B_11}, - {0, B_12}, - {0, B_14}, - {0, B_15}, - {0, B_16}, - - {0, A_1}, - {0, A_2}, - {0, A_3}, - {0, A_7}, - {0, A_11}, - {0, A_12}, - {0, A_13}, - {0, A_14}, - {0, A_15}, - {0, A_16}, -}; - -led_config_t g_led_config = { - { - { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, NO_LED, 14 }, - { 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, NO_LED, 29 }, - { 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, NO_LED, 42, NO_LED, 43 }, - { 44, NO_LED, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, NO_LED, 55, 56, 57 }, - { 58, 59, 60, NO_LED, NO_LED, NO_LED, 61, NO_LED, NO_LED, NO_LED, 62, 63, 64, 65, 66, 67 } - }, - { - {0, 0}, {14, 0}, {29, 0}, {44, 0}, {59, 0}, {74, 0}, { 89, 0}, {104, 0}, {119, 0}, {134, 0}, {149, 0}, {164, 0}, {179, 0}, {201, 0}, {223, 0}, - {3,16}, {22,16}, {37,16}, {52,16}, {67,16}, {82,16}, { 97, 16}, {112, 16}, {126, 16}, {141, 16}, {156, 16}, {171, 16}, {186, 16}, {205, 16}, {223, 16}, - {5,32}, {26,32}, {41,32}, {55,32}, {70,32}, {85,32}, {100, 32}, {115, 32}, {130, 32}, {145, 32}, {160, 32}, {175, 32}, {199, 32}, {223, 32}, - {9,48}, {33,48}, {48,48}, {63,48}, {78,48}, { 93, 48}, {108, 48}, {123, 48}, {138, 48}, {153, 48}, {168, 48}, {188, 48}, {209, 48}, {223, 48}, - {1,64}, {20,64}, {39,64}, { 95, 64}, {149, 64}, {164, 64}, {179, 64}, {194, 64}, {209, 64}, {223, 64} - - }, - { - 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, - 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, - 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, - 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, - 4, 4, 4, 4, 4, 4, 4, 4, 4, 4 - - } -}; -#endif diff --git a/keyboards/keychron/k7_pro/config.h b/keyboards/keychron/k7_pro/config.h deleted file mode 100644 index 9a18b02816..0000000000 --- a/keyboards/keychron/k7_pro/config.h +++ /dev/null @@ -1,94 +0,0 @@ -/* Copyright 2022 @ 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 . - */ - -#pragma once - -/* Use SPI to drive 74HC595 shift register */ -#define DRIVE_SHRIFT_REGISTER_WITH_SPI - -/* Turn off effects when suspended */ -#define RGB_DISABLE_WHEN_USB_SUSPENDED -#define LED_DISABLE_WHEN_USB_SUSPENDED - -/* DIP switch for Mac/win OS switch */ -#define DIP_SWITCH_PINS \ - { A8 } - -/* Caps lock LED Pin */ -#define LED_CAPS_LOCK_PIN A0 -#define LED_PIN_ON_STATE 1 - -/* 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 A10 - -# 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 A4 -# 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 \ - { 16, 17, 18 } - -# 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 WEAR_LEVELING_LOGICAL_SIZE 2048 -#define WEAR_LEVELING_BACKING_SIZE (WEAR_LEVELING_LOGICAL_SIZE * 2) -#define DYNAMIC_KEYMAP_EEPROM_MAX_ADDR 2047 - -/* Factory test keys */ -#define FN_KEY1 MO(2) -#define FN_KEY2 MO(3) diff --git a/keyboards/keychron/k7_pro/halconf.h b/keyboards/keychron/k7_pro/halconf.h deleted file mode 100644 index c2d52e7952..0000000000 --- a/keyboards/keychron/k7_pro/halconf.h +++ /dev/null @@ -1,30 +0,0 @@ -/* 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 _CHIBIOS_HAL_CONF_VER_8_0_ - -#define HAL_USE_SPI TRUE -#define HAL_USE_I2C TRUE - -#ifdef KC_BLUETOOTH_ENABLE -# define PAL_USE_CALLBACKS TRUE -# define HAL_USE_SERIAL TRUE -# define HAL_USE_RTC TRUE -#endif - -#include_next diff --git a/keyboards/keychron/k7_pro/info.json b/keyboards/keychron/k7_pro/info.json deleted file mode 100644 index ebf7e8e216..0000000000 --- a/keyboards/keychron/k7_pro/info.json +++ /dev/null @@ -1,188 +0,0 @@ -{ - "keyboard_name": "Keychron K7 Pro", - "manufacturer": "Keychron", - "url": "https://github.com/Keychron", - "maintainer": "lalalademaxiya1", - "processor": "STM32L432", - "bootloader": "stm32-dfu", - "usb": { - "vid": "0x3434" - }, - "features": { - "bootmagic": true, - "mousekey": true, - "extrakey": true, - "nkro": true, - "dip_switch": true, - "raw": true - }, - "diode_direction": "ROW2COL", - "matrix_size": { - "rows": 5, - "cols": 16 - }, - "matrix_pins": { - "rows": ["B4", "B3", "A15", "A14", "A13"], - "cols": ["C15", null, null, null, null, null, null, null, null, null, null, null, null, null, null, null], - "custom": true, - "custom_lite": true - }, - "dynamic_keymap": { - "layer_count": 5 - }, - "layouts": { - "LAYOUT_ansi_68": { - "layout": [ - {"matrix":[0, 0], "x":0, "y":0}, - {"matrix":[0, 1], "x":1, "y":0}, - {"matrix":[0, 2], "x":2, "y":0}, - {"matrix":[0, 3], "x":3, "y":0}, - {"matrix":[0, 4], "x":4, "y":0}, - {"matrix":[0, 5], "x":5, "y":0}, - {"matrix":[0, 6], "x":6, "y":0}, - {"matrix":[0, 7], "x":7, "y":0}, - {"matrix":[0, 8], "x":8, "y":0}, - {"matrix":[0, 9], "x":9, "y":0}, - {"matrix":[0,10], "x":10, "y":0}, - {"matrix":[0,11], "x":11, "y":0}, - {"matrix":[0,12], "x":12, "y":0}, - {"matrix":[0,13], "x":13, "y":0, "w":2}, - {"matrix":[0,15], "x":15, "y":0}, - - {"matrix":[1, 0], "x":0, "y":2, "w":1.5}, - {"matrix":[1, 1], "x":1.5, "y":2}, - {"matrix":[1, 2], "x":2.5, "y":2}, - {"matrix":[1, 3], "x":3.5, "y":2}, - {"matrix":[1, 4], "x":4.5, "y":2}, - {"matrix":[1, 5], "x":5.5, "y":2}, - {"matrix":[1, 6], "x":6.5, "y":2}, - {"matrix":[1, 7], "x":7.5, "y":2}, - {"matrix":[1, 8], "x":8.5, "y":2}, - {"matrix":[1, 9], "x":9.5, "y":2}, - {"matrix":[1,10], "x":10.5, "y":2}, - {"matrix":[1,11], "x":11.5, "y":2}, - {"matrix":[1,12], "x":12.5, "y":2}, - {"matrix":[1,13], "x":13.5, "y":2, "w":1.5}, - {"matrix":[1,15], "x":15, "y":2}, - - {"matrix":[2, 0], "x":0, "y":3, "w":1.75}, - {"matrix":[2, 1], "x":1.75, "y":3}, - {"matrix":[2, 2], "x":2.75, "y":3}, - {"matrix":[2, 3], "x":3.75, "y":3}, - {"matrix":[2, 4], "x":4.75, "y":3}, - {"matrix":[2, 5], "x":5.75, "y":3}, - {"matrix":[2, 6], "x":6.75, "y":3}, - {"matrix":[2, 7], "x":7.75, "y":3}, - {"matrix":[2, 8], "x":8.75, "y":3}, - {"matrix":[2, 9], "x":9.75, "y":3}, - {"matrix":[2,10], "x":10.75, "y":3}, - {"matrix":[2,11], "x":11.75, "y":3}, - {"matrix":[2,13], "x":12.75, "y":3, "w":2.25}, - {"matrix":[2,15], "x":15, "y":3, "w":2.25}, - - {"matrix":[3, 0], "x":0, "y":4, "w":2.25}, - {"matrix":[3, 2], "x":2.25, "y":4}, - {"matrix":[3, 3], "x":3.25, "y":4}, - {"matrix":[3, 4], "x":4.25, "y":4}, - {"matrix":[3, 5], "x":5.25, "y":4}, - {"matrix":[3, 6], "x":6.25, "y":4}, - {"matrix":[3, 7], "x":7.25, "y":4}, - {"matrix":[3, 8], "x":8.25, "y":4}, - {"matrix":[3, 9], "x":9.25, "y":4}, - {"matrix":[3,10], "x":10.25, "y":4}, - {"matrix":[3,11], "x":11.25, "y":4}, - {"matrix":[3,13], "x":11.25, "y":4, "w":1.75}, - {"matrix":[3,14], "x":14, "y":4}, - {"matrix":[3,15], "x":15, "y":4}, - - {"matrix":[4, 0], "x":0, "y":5, "w":1.25}, - {"matrix":[4, 1], "x":1.25, "y":5, "w":1.25}, - {"matrix":[4, 2], "x":2.5, "y":5, "w":1.25}, - {"matrix":[4, 6], "x":3.75, "y":5, "w":6.25}, - {"matrix":[4,10], "x":10, "y":5}, - {"matrix":[4,11], "x":11, "y":5}, - {"matrix":[4,12], "x":12, "y":5}, - {"matrix":[4,13], "x":13, "y":5}, - {"matrix":[4,14], "x":14, "y":5}, - {"matrix":[4,15], "x":15, "y":5} - ] - }, - "LAYOUT_69_iso": { - "layout": [ - {"matrix":[0,0], "x":0, "y":0}, - {"matrix":[0,1], "x":1, "y":0}, - {"matrix":[0,2], "x":2, "y":0}, - {"matrix":[0,3], "x":3, "y":0}, - {"matrix":[0,4], "x":4, "y":0}, - {"matrix":[0,5], "x":5, "y":0}, - {"matrix":[0,6], "x":6, "y":0}, - {"matrix":[0,7], "x":7, "y":0}, - {"matrix":[0,8], "x":8, "y":0}, - {"matrix":[0,9], "x":9, "y":0}, - {"matrix":[0,10], "x":10, "y":0}, - {"matrix":[0,11], "x":11, "y":0}, - {"matrix":[0,12], "x":12, "y":0}, - {"matrix":[0,13], "x":13, "y":0, "w":2}, - {"matrix":[0,15], "x":15, "y":0}, - - {"matrix":[1,0], "x":0, "y":1, "w":1.5}, - {"matrix":[1,1], "x":1.5, "y":1}, - {"matrix":[1,2], "x":2.5, "y":1}, - {"matrix":[1,3], "x":3.5, "y":1}, - {"matrix":[1,4], "x":4.5, "y":1}, - {"matrix":[1,5], "x":5.5, "y":1}, - {"matrix":[1,6], "x":6.5, "y":1}, - {"matrix":[1,7], "x":7.5, "y":1}, - {"matrix":[1,8], "x":8.5, "y":1}, - {"matrix":[1,9], "x":9.5, "y":1}, - {"matrix":[1,10], "x":10.5, "y":1}, - {"matrix":[1,11], "x":11.5, "y":1}, - {"matrix":[1,12], "x":12.5, "y":1}, - {"matrix":[1,15], "x":15, "y":1}, - - {"matrix":[2,0], "x":0, "y":2, "w":1.75}, - {"matrix":[2,1], "x":1.75, "y":2}, - {"matrix":[2,2], "x":2.75, "y":2}, - {"matrix":[2,3], "x":3.75, "y":2}, - {"matrix":[2,4], "x":4.75, "y":2}, - {"matrix":[2,5], "x":5.75, "y":2}, - {"matrix":[2,6], "x":6.75, "y":2}, - {"matrix":[2,7], "x":7.75, "y":2}, - {"matrix":[2,8], "x":8.75, "y":2}, - {"matrix":[2,9], "x":9.75, "y":2}, - {"matrix":[2,10], "x":10.75, "y":2}, - {"matrix":[2,11], "x":11.75, "y":2}, - {"matrix":[2,13], "x":12.75, "y":2}, - {"matrix":[1,13], "x":13.75, "y":1, "w":1.25, "h":2}, - {"matrix":[2,15], "x":15, "y":2}, - - {"matrix":[3,0], "x":0, "y":3, "w":1.25}, - {"matrix":[3,1], "x":1.25, "y":3}, - {"matrix":[3,2], "x":2.25, "y":3}, - {"matrix":[3,3], "x":3.25, "y":3}, - {"matrix":[3,4], "x":4.25, "y":3}, - {"matrix":[3,5], "x":5.25, "y":3}, - {"matrix":[3,6], "x":6.25, "y":3}, - {"matrix":[3,7], "x":7.25, "y":3}, - {"matrix":[3,8], "x":8.25, "y":3}, - {"matrix":[3,9], "x":9.25, "y":3}, - {"matrix":[3,10], "x":10.25, "y":3}, - {"matrix":[3,11], "x":11.25, "y":3}, - {"matrix":[3,13], "x":12.25, "y":3, "w":1.75}, - {"matrix":[3,14], "x":14, "y":3}, - {"matrix":[3,15], "x":15, "y":3}, - - {"matrix":[4,0], "x":0, "y":4, "w":1.25}, - {"matrix":[4,1], "x":1.25, "y":4, "w":1.25}, - {"matrix":[4,2], "x":2.5, "y":4, "w":1.25}, - {"matrix":[4,6], "x":3.75, "y":4, "w":6.25}, - {"matrix":[4,10], "x":10, "y":4}, - {"matrix":[4,11], "x":11, "y":4}, - {"matrix":[4,12], "x":12, "y":4}, - {"matrix":[4,13], "x":13, "y":4}, - {"matrix":[4,14], "x":14, "y":4}, - {"matrix":[4,15], "x":15, "y":4} - ] - } - } -} diff --git a/keyboards/keychron/k7_pro/iso/rgb/config.h b/keyboards/keychron/k7_pro/iso/rgb/config.h deleted file mode 100644 index 80c9bc5cff..0000000000 --- a/keyboards/keychron/k7_pro/iso/rgb/config.h +++ /dev/null @@ -1,54 +0,0 @@ -/* 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 . - */ - -#pragma once - -#ifdef RGB_MATRIX_ENABLE -/* RGB Matrix Driver Configuration */ -# define DRIVER_COUNT 2 -# define DRIVER_ADDR_1 0b1110111 -# define DRIVER_ADDR_2 0b1110100 - -/* RGB Matrix Configuration */ -# define RGB_MATRIX_LED_COUNT 69 - -/* Set to infinit, which is use in USB mode by default - */ -# define RGB_MATRIX_TIMEOUT RGB_MATRIX_TIMEOUT_INFINITE -/* Allow shutdown of led driver to save power */ -# define RGB_MATRIX_DRIVER_SHUTDOWN_ENABLE -/* Turn off backlight on low brightness to save power */ -# define RGB_MATRIX_BRIGHTNESS_TURN_OFF_VAL 48 - -/* Indication led */ -# define DIM_CAPS_LOCK -# define CAPS_LOCK_INDEX 29 -# define LOW_BAT_IND_INDEX 62 - -/* RGB Matrix Animation modes. Explicitly enabled - * For full list of effects, see: - * https://docs.qmk.fm/#/feature_rgb_matrix?id=rgb-matrix-effects - */ -# define RGB_MATRIX_KEYPRESSES -# define RGB_MATRIX_FRAMEBUFFER_EFFECTS - -/* Use first 9 channels of LED driver */ -# define PHASE_CHANNEL MSKPHASE_9CHANNEL - -/* Set LED driver current */ -# define SNLED27351_CURRENT_TUNE \ - { 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18 } -#endif diff --git a/keyboards/keychron/k7_pro/iso/rgb/info.json b/keyboards/keychron/k7_pro/iso/rgb/info.json deleted file mode 100644 index a051ac7fd9..0000000000 --- a/keyboards/keychron/k7_pro/iso/rgb/info.json +++ /dev/null @@ -1,110 +0,0 @@ -{ - "usb": { - "pid": "0x0271", - "device_version": "1.0.1" - }, - "features": { - "rgb_matrix": true - }, - "rgb_matrix": { - "driver": "snled27351", - "animations": { - "breathing": true, - "band_spiral_val": true, - "cycle_all": true, - "cycle_left_right": true, - "cycle_up_down": true, - "rainbow_moving_chevron": true, - "cycle_out_in": true, - "cycle_out_in_dual": true, - "cycle_pinwheel": true, - "cycle_spiral": true, - "dual_beacon": true, - "rainbow_beacon": true, - "jellybean_raindrops": true, - "pixel_rain": true, - "typing_heatmap": true, - "digital_rain": true, - "solid_reactive_simple": true, - "solid_reactive_multiwide": true, - "solid_reactive_multinexus": true, - "splash": true, - "solid_splash": true - }, - "layout": [ - {"matrix":[0, 0], "flags":1, "x":0, "y":0}, - {"matrix":[0, 1], "flags":4, "x":14, "y":0}, - {"matrix":[0, 2], "flags":4, "x":29, "y":0}, - {"matrix":[0, 3], "flags":4, "x":44, "y":0}, - {"matrix":[0, 4], "flags":4, "x":59, "y":0}, - {"matrix":[0, 5], "flags":4, "x":74, "y":0}, - {"matrix":[0, 6], "flags":4, "x":89, "y":0}, - {"matrix":[0, 7], "flags":4, "x":104, "y":0}, - {"matrix":[0, 8], "flags":4, "x":119, "y":0}, - {"matrix":[0, 9], "flags":4, "x":134, "y":0}, - {"matrix":[0, 10], "flags":4, "x":149, "y":0}, - {"matrix":[0, 11], "flags":4, "x":164, "y":0}, - {"matrix":[0, 12], "flags":4, "x":179, "y":0}, - {"matrix":[0, 13], "flags":1, "x":201, "y":0}, - {"matrix":[0, 15], "flags":1, "x":224, "y":0}, - - {"matrix":[1, 0], "flags":1, "x":3, "y":16}, - {"matrix":[1, 1], "flags":4, "x":22, "y":16}, - {"matrix":[1, 2], "flags":4, "x":37, "y":16}, - {"matrix":[1, 3], "flags":4, "x":52, "y":16}, - {"matrix":[1, 4], "flags":4, "x":67, "y":16}, - {"matrix":[1, 5], "flags":4, "x":82, "y":16}, - {"matrix":[1, 6], "flags":4, "x":97, "y":16}, - {"matrix":[1, 7], "flags":4, "x":112, "y":16}, - {"matrix":[1, 8], "flags":4, "x":126, "y":16}, - {"matrix":[1, 9], "flags":4, "x":141, "y":16}, - {"matrix":[1, 10], "flags":4, "x":156, "y":16}, - {"matrix":[1, 11], "flags":4, "x":171, "y":16}, - {"matrix":[1, 12], "flags":4, "x":186, "y":16}, - {"matrix":[1, 15], "flags":1, "x":224, "y":16}, - - {"matrix":[2, 0], "flags":8, "x":5, "y":32}, - {"matrix":[2, 1], "flags":4, "x":26, "y":32}, - {"matrix":[2, 2], "flags":4, "x":41, "y":32}, - {"matrix":[2, 3], "flags":4, "x":55, "y":32}, - {"matrix":[2, 4], "flags":4, "x":70, "y":32}, - {"matrix":[2, 5], "flags":4, "x":85, "y":32}, - {"matrix":[2, 6], "flags":4, "x":100, "y":32}, - {"matrix":[2, 7], "flags":4, "x":115, "y":32}, - {"matrix":[2, 8], "flags":4, "x":130, "y":32}, - {"matrix":[2, 9], "flags":4, "x":145, "y":32}, - {"matrix":[2, 10], "flags":4, "x":160, "y":32}, - {"matrix":[2, 11], "flags":4, "x":175, "y":32}, - {"matrix":[2, 13], "flags":4, "x":190, "y":32}, - {"matrix":[1, 13], "flags":1, "x":207, "y":24}, - {"matrix":[2, 15], "flags":1, "x":224, "y":32}, - - {"matrix":[3, 0], "flags":1, "x":9, "y":48}, - {"matrix":[3, 1], "flags":4, "x":19, "y":48}, - {"matrix":[3, 2], "flags":4, "x":33, "y":48}, - {"matrix":[3, 3], "flags":4, "x":48, "y":48}, - {"matrix":[3, 4], "flags":4, "x":63, "y":48}, - {"matrix":[3, 5], "flags":4, "x":78, "y":48}, - {"matrix":[3, 6], "flags":4, "x":93, "y":48}, - {"matrix":[3, 7], "flags":4, "x":108, "y":48}, - {"matrix":[3, 8], "flags":4, "x":123, "y":48}, - {"matrix":[3, 9], "flags":4, "x":138, "y":48}, - {"matrix":[3, 10], "flags":4, "x":153, "y":48}, - {"matrix":[3, 11], "flags":4, "x":168, "y":48}, - {"matrix":[3, 13], "flags":1, "x":188, "y":48}, - {"matrix":[3, 14], "flags":1, "x":210, "y":48}, - {"matrix":[3, 15], "flags":1, "x":224, "y":48}, - - {"matrix":[4, 0], "flags":1, "x":1, "y":64}, - {"matrix":[4, 1], "flags":1, "x":20, "y":64}, - {"matrix":[4, 2], "flags":1, "x":39, "y":64}, - {"matrix":[4, 6], "flags":4, "x":95, "y":64}, - {"matrix":[4, 10], "flags":1, "x":149, "y":64}, - {"matrix":[4, 11], "flags":4, "x":164, "y":64}, - {"matrix":[4, 12], "flags":4, "x":179, "y":64}, - {"matrix":[4, 13], "flags":1, "x":194, "y":64}, - {"matrix":[4, 14], "flags":1, "x":210, "y":64}, - {"matrix":[4, 15], "flags":1, "x":224, "y":64} - ] - } -} diff --git a/keyboards/keychron/k7_pro/iso/rgb/keymaps/default/keymap.c b/keyboards/keychron/k7_pro/iso/rgb/keymaps/default/keymap.c deleted file mode 100644 index 5230c219e1..0000000000 --- a/keyboards/keychron/k7_pro/iso/rgb/keymaps/default/keymap.c +++ /dev/null @@ -1,63 +0,0 @@ -/* 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 . - */ - -#include QMK_KEYBOARD_H - -// clang-format off -enum layers{ - MAC_BASE, - WIN_BASE, - MAC_FN1, - WIN_FN1, - FN2, -}; - -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_69_iso( - 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_DEL, - 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_HOME, - 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_NUHS, KC_ENT, KC_PGUP, - KC_LSFT, KC_NUBS, 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_PGDN, - KC_LCTL, KC_LOPTN, KC_LCMMD, KC_SPC, KC_RCMMD,MO(MAC_FN1),MO(FN2), KC_LEFT, KC_DOWN, KC_RGHT), - - [WIN_BASE] = LAYOUT_69_iso( - 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_DEL, - 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_HOME, - 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_NUHS, KC_ENT, KC_PGUP, - KC_LSFT, KC_NUBS, 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_PGDN, - KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(WIN_FN1),MO(FN2), KC_LEFT, KC_DOWN, KC_RGHT), - - [MAC_FN1] = LAYOUT_69_iso( - KC_GRV, KC_BRID, KC_BRIU, KC_MCTL, KC_LPAD, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - - [WIN_FN1] = LAYOUT_69_iso( - KC_GRV, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - - [FN2] = LAYOUT_69_iso( - KC_TILD, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, BAT_LVL, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), -}; diff --git a/keyboards/keychron/k7_pro/iso/rgb/keymaps/via/keymap.c b/keyboards/keychron/k7_pro/iso/rgb/keymaps/via/keymap.c deleted file mode 100644 index 5230c219e1..0000000000 --- a/keyboards/keychron/k7_pro/iso/rgb/keymaps/via/keymap.c +++ /dev/null @@ -1,63 +0,0 @@ -/* 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 . - */ - -#include QMK_KEYBOARD_H - -// clang-format off -enum layers{ - MAC_BASE, - WIN_BASE, - MAC_FN1, - WIN_FN1, - FN2, -}; - -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_69_iso( - 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_DEL, - 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_HOME, - 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_NUHS, KC_ENT, KC_PGUP, - KC_LSFT, KC_NUBS, 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_PGDN, - KC_LCTL, KC_LOPTN, KC_LCMMD, KC_SPC, KC_RCMMD,MO(MAC_FN1),MO(FN2), KC_LEFT, KC_DOWN, KC_RGHT), - - [WIN_BASE] = LAYOUT_69_iso( - 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_DEL, - 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_HOME, - 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_NUHS, KC_ENT, KC_PGUP, - KC_LSFT, KC_NUBS, 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_PGDN, - KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(WIN_FN1),MO(FN2), KC_LEFT, KC_DOWN, KC_RGHT), - - [MAC_FN1] = LAYOUT_69_iso( - KC_GRV, KC_BRID, KC_BRIU, KC_MCTL, KC_LPAD, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - - [WIN_FN1] = LAYOUT_69_iso( - KC_GRV, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - - [FN2] = LAYOUT_69_iso( - KC_TILD, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, BAT_LVL, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), -}; diff --git a/keyboards/keychron/k7_pro/iso/rgb/keymaps/via/rules.mk b/keyboards/keychron/k7_pro/iso/rgb/keymaps/via/rules.mk deleted file mode 100644 index 1e5b99807c..0000000000 --- a/keyboards/keychron/k7_pro/iso/rgb/keymaps/via/rules.mk +++ /dev/null @@ -1 +0,0 @@ -VIA_ENABLE = yes diff --git a/keyboards/keychron/k7_pro/iso/rgb/rgb.c b/keyboards/keychron/k7_pro/iso/rgb/rgb.c deleted file mode 100644 index 10cafb20d4..0000000000 --- a/keyboards/keychron/k7_pro/iso/rgb/rgb.c +++ /dev/null @@ -1,102 +0,0 @@ -/* 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 . - */ - -#include "quantum.h" - -// clang-format off -#ifdef RGB_MATRIX_ENABLE -const snled27351_led_t g_snled27351_leds[RGB_MATRIX_LED_COUNT] = { -/* Refer to snled27351manual for these locations - * driver - * | R location - * | | G location - * | | | B location - * | | | | */ - {0, F_1, D_1, E_1}, - {0, F_2, D_2, E_2}, - {0, F_3, D_3, E_3}, - {0, F_4, D_4, E_4}, - {0, F_5, D_5, E_5}, - {0, F_6, D_6, E_6}, - {0, F_7, D_7, E_7}, - {0, F_8, D_8, E_8}, - {0, F_9, D_9, E_9}, - {0, F_10, D_10, E_10}, - {0, F_11, D_11, E_11}, - {0, F_12, D_12, E_12}, - {0, F_13, D_13, E_13}, - {0, F_14, D_14, E_14}, - {0, F_16, D_16, E_16}, - - {0, A_1, C_1, B_1}, - {0, A_2, C_2, B_2}, - {0, A_3, C_3, B_3}, - {0, A_4, C_4, B_4}, - {0, A_5, C_5, B_5}, - {0, A_6, C_6, B_6}, - {0, A_7, C_7, B_7}, - {0, A_8, C_8, B_8}, - {0, A_9, C_9, B_9}, - {0, A_10, C_10, B_10}, - {0, A_11, C_11, B_11}, - {0, A_12, C_12, B_12}, - {0, A_13, C_13, B_13}, - {0, A_16, C_16, B_16}, - - {1, I_1, G_1, H_1}, - {1, I_2, G_2, H_2}, - {1, I_3, G_3, H_3}, - {1, I_4, G_4, H_4}, - {1, I_5, G_5, H_5}, - {1, I_6, G_6, H_6}, - {1, I_7, G_7, H_7}, - {1, I_8, G_8, H_8}, - {1, I_9, G_9, H_9}, - {1, I_10, G_10, H_10}, - {1, I_11, G_11, H_11}, - {1, I_12, G_12, H_12}, - {1, I_14, G_14, H_14}, - {0, A_14, C_14, B_14}, - {1, I_16, G_16, H_16}, - - {1, C_1, A_1, B_1}, - {1, C_2, A_2, B_2}, - {1, C_3, A_3, B_3}, - {1, C_4, A_4, B_4}, - {1, C_5, A_5, B_5}, - {1, C_6, A_6, B_6}, - {1, C_7, A_7, B_7}, - {1, C_8, A_8, B_8}, - {1, C_9, A_9, B_9}, - {1, C_10, A_10, B_10}, - {1, C_11, A_11, B_11}, - {1, C_12, A_12, B_12}, - {1, C_14, A_14, B_14}, - {1, C_15, A_15, B_15}, - {1, C_16, A_16, B_16}, - - {1, F_1, D_1, E_1}, - {1, F_2, D_2, E_2}, - {1, F_3, D_3, E_3}, - {1, F_7, D_7, E_7}, - {1, F_11, D_11, E_11}, - {1, F_12, D_12, E_12}, - {1, F_13, D_13, E_13}, - {1, F_14, D_14, E_14}, - {1, F_15, D_15, E_15}, - {1, F_16, D_16, E_16}, -}; -#endif diff --git a/keyboards/keychron/k7_pro/iso/rgb/rules.mk b/keyboards/keychron/k7_pro/iso/rgb/rules.mk deleted file mode 100644 index 6e7633bfe0..0000000000 --- a/keyboards/keychron/k7_pro/iso/rgb/rules.mk +++ /dev/null @@ -1 +0,0 @@ -# This file intentionally left blank diff --git a/keyboards/keychron/k7_pro/iso/white/config.h b/keyboards/keychron/k7_pro/iso/white/config.h deleted file mode 100644 index 1e30a17a46..0000000000 --- a/keyboards/keychron/k7_pro/iso/white/config.h +++ /dev/null @@ -1,53 +0,0 @@ -/* 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 . - */ - -#pragma once - -#ifdef LED_MATRIX_ENABLE -/* LED matrix Driver Configuration */ -# define DRIVER_COUNT 1 -# define SNLED27351_I2C_ADDRESS_1 SNLED27351_I2C_ADDRESS_GND - -/* LED matrix Configuration */ -# define LED_MATRIX_LED_COUNT 69 - -/* Set to infinit, which is use in USB mode by default */ -# define LED_MATRIX_TIMEOUT LED_MATRIX_TIMEOUT_INFINITE - -/* Allow shutdown of led driver to save power */ -# define LED_MATRIX_DRIVER_SHUTDOWN_ENABLE - -/* Turn off backlight on low brightness to save power */ -# define LED_MATRIX_BRIGHTNESS_TURN_OFF_VAL 48 - -/* Indication led */ -# define DIM_CAPS_LOCK -# define CAPS_LOCK_INDEX 29 -# define LOW_BAT_IND_INDEX 62 - -// LED Matrix Animation modes. Explicitly enabled -// For full list of effects, see: -// https://docs.qmk.fm/#/feature_led_matrix?id=led-matrix-effects -// #if defined(LED_MATRIX_KEYPRESSES) || defined(LED_MATRIX_KEYRELEASES) -# define LED_MATRIX_KEYPRESSES - -/* Use first 6 channels of LED driver */ -# define PHASE_CHANNEL MSKPHASE_5CHANNEL - -/* Set LED driver current */ -# define SNLED27351_CURRENT_TUNE \ - { 0x28, 0x28, 0x28, 0x28, 0x28, 0x28, 0x28, 0x28, 0x28, 0x28, 0x28, 0x28 } -#endif diff --git a/keyboards/keychron/k7_pro/iso/white/info.json b/keyboards/keychron/k7_pro/iso/white/info.json deleted file mode 100644 index a953e527a1..0000000000 --- a/keyboards/keychron/k7_pro/iso/white/info.json +++ /dev/null @@ -1,105 +0,0 @@ -{ - "usb": { - "pid": "0x0274", - "device_version": "1.0.1" - }, - "features": { - "led_matrix": true - }, - "led_matrix": { - "driver": "snled27351", - "animations": { - "none": true, - "solid": true, - "breathing": true, - "band_pinwheel": true, - "band_spiral": true, - "cycle_left_right": true, - "cycle_up_down": true, - "cycle_out_in": true, - "dual_beacon": true, - "solid_reactive_simple": true, - "solid_reactive_multiwide": true, - "solid_reactive_multinexus": true, - "solid_splash": true, - "wave_left_right": true, - "wave_up_down": true, - "effect_max": true - }, - "layout": [ - {"matrix":[0, 0], "flags":1, "x":0, "y":0}, - {"matrix":[0, 1], "flags":4, "x":14, "y":0}, - {"matrix":[0, 2], "flags":4, "x":29, "y":0}, - {"matrix":[0, 3], "flags":4, "x":44, "y":0}, - {"matrix":[0, 4], "flags":4, "x":59, "y":0}, - {"matrix":[0, 5], "flags":4, "x":74, "y":0}, - {"matrix":[0, 6], "flags":4, "x":89, "y":0}, - {"matrix":[0, 7], "flags":4, "x":104, "y":0}, - {"matrix":[0, 8], "flags":4, "x":119, "y":0}, - {"matrix":[0, 9], "flags":4, "x":134, "y":0}, - {"matrix":[0, 10], "flags":4, "x":149, "y":0}, - {"matrix":[0, 11], "flags":4, "x":164, "y":0}, - {"matrix":[0, 12], "flags":4, "x":179, "y":0}, - {"matrix":[0, 13], "flags":1, "x":201, "y":0}, - {"matrix":[0, 15], "flags":1, "x":224, "y":0}, - - {"matrix":[1, 0], "flags":1, "x":3, "y":16}, - {"matrix":[1, 1], "flags":4, "x":22, "y":16}, - {"matrix":[1, 2], "flags":4, "x":37, "y":16}, - {"matrix":[1, 3], "flags":4, "x":52, "y":16}, - {"matrix":[1, 4], "flags":4, "x":67, "y":16}, - {"matrix":[1, 5], "flags":4, "x":82, "y":16}, - {"matrix":[1, 6], "flags":4, "x":97, "y":16}, - {"matrix":[1, 7], "flags":4, "x":112, "y":16}, - {"matrix":[1, 8], "flags":4, "x":126, "y":16}, - {"matrix":[1, 9], "flags":4, "x":141, "y":16}, - {"matrix":[1, 10], "flags":4, "x":156, "y":16}, - {"matrix":[1, 11], "flags":4, "x":171, "y":16}, - {"matrix":[1, 12], "flags":4, "x":186, "y":16}, - {"matrix":[1, 15], "flags":1, "x":224, "y":16}, - - {"matrix":[2, 0], "flags":8, "x":5, "y":32}, - {"matrix":[2, 1], "flags":4, "x":26, "y":32}, - {"matrix":[2, 2], "flags":4, "x":41, "y":32}, - {"matrix":[2, 3], "flags":4, "x":55, "y":32}, - {"matrix":[2, 4], "flags":4, "x":70, "y":32}, - {"matrix":[2, 5], "flags":4, "x":85, "y":32}, - {"matrix":[2, 6], "flags":4, "x":100, "y":32}, - {"matrix":[2, 7], "flags":4, "x":115, "y":32}, - {"matrix":[2, 8], "flags":4, "x":130, "y":32}, - {"matrix":[2, 9], "flags":4, "x":145, "y":32}, - {"matrix":[2, 10], "flags":4, "x":160, "y":32}, - {"matrix":[2, 11], "flags":4, "x":175, "y":32}, - {"matrix":[2, 13], "flags":4, "x":190, "y":32}, - {"matrix":[1, 13], "flags":1, "x":207, "y":24}, - {"matrix":[2, 15], "flags":1, "x":224, "y":32}, - - {"matrix":[3, 0], "flags":1, "x":9, "y":48}, - {"matrix":[3, 1], "flags":4, "x":19, "y":48}, - {"matrix":[3, 2], "flags":4, "x":33, "y":48}, - {"matrix":[3, 3], "flags":4, "x":48, "y":48}, - {"matrix":[3, 4], "flags":4, "x":63, "y":48}, - {"matrix":[3, 5], "flags":4, "x":78, "y":48}, - {"matrix":[3, 6], "flags":4, "x":93, "y":48}, - {"matrix":[3, 7], "flags":4, "x":108, "y":48}, - {"matrix":[3, 8], "flags":4, "x":123, "y":48}, - {"matrix":[3, 9], "flags":4, "x":138, "y":48}, - {"matrix":[3, 10], "flags":4, "x":153, "y":48}, - {"matrix":[3, 11], "flags":4, "x":168, "y":48}, - {"matrix":[3, 13], "flags":1, "x":188, "y":48}, - {"matrix":[3, 14], "flags":1, "x":210, "y":48}, - {"matrix":[3, 15], "flags":1, "x":224, "y":48}, - - {"matrix":[4, 0], "flags":1, "x":1, "y":64}, - {"matrix":[4, 1], "flags":1, "x":20, "y":64}, - {"matrix":[4, 2], "flags":1, "x":39, "y":64}, - {"matrix":[4, 6], "flags":4, "x":95, "y":64}, - {"matrix":[4, 10], "flags":1, "x":149, "y":64}, - {"matrix":[4, 11], "flags":4, "x":164, "y":64}, - {"matrix":[4, 12], "flags":4, "x":179, "y":64}, - {"matrix":[4, 13], "flags":1, "x":194, "y":64}, - {"matrix":[4, 14], "flags":1, "x":210, "y":64}, - {"matrix":[4, 15], "flags":1, "x":224, "y":64} - ] - } -} diff --git a/keyboards/keychron/k7_pro/iso/white/keymaps/default/keymap.c b/keyboards/keychron/k7_pro/iso/white/keymaps/default/keymap.c deleted file mode 100644 index a937521f45..0000000000 --- a/keyboards/keychron/k7_pro/iso/white/keymaps/default/keymap.c +++ /dev/null @@ -1,63 +0,0 @@ -/* 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 . - */ - -#include QMK_KEYBOARD_H - -// clang-format off -enum layers{ - MAC_BASE, - WIN_BASE, - MAC_FN1, - WIN_FN1, - FN2, -}; - -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_69_iso( - 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_DEL, - 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_HOME, - 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_NUHS, KC_ENT, KC_PGUP, - KC_LSFT, KC_NUBS, 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_PGDN, - KC_LCTL, KC_LOPTN, KC_LCMMD, KC_SPC, KC_RCMMD,MO(MAC_FN1),MO(FN2), KC_LEFT, KC_DOWN, KC_RGHT), - - [WIN_BASE] = LAYOUT_69_iso( - 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_DEL, - 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_HOME, - 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_NUHS, KC_ENT, KC_PGUP, - KC_LSFT, KC_NUBS, 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_PGDN, - KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(WIN_FN1),MO(FN2), KC_LEFT, KC_DOWN, KC_RGHT), - - [MAC_FN1] = LAYOUT_69_iso( - KC_GRV, KC_BRID, KC_BRIU, KC_MCTL, KC_LPAD, BL_DOWN, BL_UP, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - BL_TOGG, BL_STEP, BL_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, BL_DOWN, _______, _______, _______, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - - [WIN_FN1] = LAYOUT_69_iso( - KC_GRV, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, BL_DOWN, BL_UP, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - BL_TOGG, BL_STEP, BL_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, BL_DOWN, _______, _______, _______, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - - [FN2] = LAYOUT_69_iso( - KC_TILD, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, BAT_LVL, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), -}; diff --git a/keyboards/keychron/k7_pro/iso/white/keymaps/via/keymap.c b/keyboards/keychron/k7_pro/iso/white/keymaps/via/keymap.c deleted file mode 100644 index ffea09a539..0000000000 --- a/keyboards/keychron/k7_pro/iso/white/keymaps/via/keymap.c +++ /dev/null @@ -1,63 +0,0 @@ -/* 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 . - */ - -#include QMK_KEYBOARD_H - -// clang-format off -enum layers{ - MAC_BASE, - WIN_BASE, - MAC_FN1, - WIN_FN1, - FN2, -}; - -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_69_iso( - 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_DEL, - 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_HOME, - 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_NUHS, KC_ENT, KC_PGUP, - KC_LSFT, KC_NUBS, 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_PGDN, - KC_LCTL, KC_LOPTN, KC_LCMMD, KC_SPC, KC_RCMMD,MO(MAC_FN1),MO(FN2), KC_LEFT, KC_DOWN, KC_RGHT), - - [WIN_BASE] = LAYOUT_69_iso( - 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_DEL, - 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_HOME, - 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_NUHS, KC_ENT, KC_PGUP, - KC_LSFT, KC_NUBS, 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_PGDN, - KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(WIN_FN1),MO(FN2), KC_LEFT, KC_DOWN, KC_RGHT), - - [MAC_FN1] = LAYOUT_69_iso( - KC_GRV, KC_BRID, KC_BRIU, KC_MICT, KC_LAPA, BL_DOWN, BL_UP, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - BL_TOGG, BL_STEP, BL_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, BL_DOWN, _______, _______, _______, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - - [WIN_FN1] = LAYOUT_69_iso( - KC_GRV, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, BL_DOWN, BL_UP, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - BL_TOGG, BL_STEP, BL_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, BL_DOWN, _______, _______, _______, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - - [FN2] = LAYOUT_69_iso( - KC_TILD, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, BAT_LVL, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), -}; diff --git a/keyboards/keychron/k7_pro/iso/white/keymaps/via/rules.mk b/keyboards/keychron/k7_pro/iso/white/keymaps/via/rules.mk deleted file mode 100644 index 1e5b99807c..0000000000 --- a/keyboards/keychron/k7_pro/iso/white/keymaps/via/rules.mk +++ /dev/null @@ -1 +0,0 @@ -VIA_ENABLE = yes diff --git a/keyboards/keychron/k7_pro/iso/white/rules.mk b/keyboards/keychron/k7_pro/iso/white/rules.mk deleted file mode 100644 index 6e7633bfe0..0000000000 --- a/keyboards/keychron/k7_pro/iso/white/rules.mk +++ /dev/null @@ -1 +0,0 @@ -# This file intentionally left blank diff --git a/keyboards/keychron/k7_pro/iso/white/white.c b/keyboards/keychron/k7_pro/iso/white/white.c deleted file mode 100644 index bc7d417fd0..0000000000 --- a/keyboards/keychron/k7_pro/iso/white/white.c +++ /dev/null @@ -1,100 +0,0 @@ -/* 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 . - */ - -#include "quantum.h" - -// clang-format off -#ifdef LED_MATRIX_ENABLE -const snled27351_led_t g_snled27351_leds[LED_MATRIX_LED_COUNT] = { -/* Refer to snled27351manual for these locations - * driver - * | LED address - * | | */ - {0, E_1}, - {0, E_2}, - {0, E_3}, - {0, E_4}, - {0, E_5}, - {0, E_6}, - {0, E_7}, - {0, E_8}, - {0, E_9}, - {0, E_10}, - {0, E_11}, - {0, E_12}, - {0, E_13}, - {0, E_14}, - {0, E_16}, - - {0, D_1}, - {0, D_2}, - {0, D_3}, - {0, D_4}, - {0, D_5}, - {0, D_6}, - {0, D_7}, - {0, D_8}, - {0, D_9}, - {0, D_10}, - {0, D_11}, - {0, D_12}, - {0, D_13}, - {0, D_16}, - - {0, C_1}, - {0, C_2}, - {0, C_3}, - {0, C_4}, - {0, C_5}, - {0, C_6}, - {0, C_7}, - {0, C_8}, - {0, C_9}, - {0, C_10}, - {0, C_11}, - {0, C_12}, - {0, C_14}, - {0, D_14}, - {0, C_16}, - - {0, B_1}, - {0, B_2}, - {0, B_3}, - {0, B_4}, - {0, B_5}, - {0, B_6}, - {0, B_7}, - {0, B_8}, - {0, B_9}, - {0, B_10}, - {0, B_11}, - {0, B_12}, - {0, B_13}, - {0, B_14}, - {0, B_16}, - - {0, A_1}, - {0, A_2}, - {0, A_3}, - {0, A_7}, - {0, A_11}, - {0, A_12}, - {0, A_13}, - {0, A_14}, - {0, A_15}, - {0, A_16}, -}; -#endif diff --git a/keyboards/keychron/k7_pro/k7_pro.c b/keyboards/keychron/k7_pro/k7_pro.c deleted file mode 100644 index f62e5a69ed..0000000000 --- a/keyboards/keychron/k7_pro/k7_pro.c +++ /dev/null @@ -1,312 +0,0 @@ -/* Copyright 2022 @ 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 . - */ - -#include "k7_pro.h" -#ifdef KC_BLUETOOTH_ENABLE -# include "ckbt51.h" -# include "bluetooth.h" -# include "indicator.h" -# include "transport.h" -# include "battery.h" -# include "bat_level_animation.h" -# include "lpm.h" -#endif - -#ifdef ENABLE_FACTORY_TEST -# include "factory_test.h" -#endif - -#ifdef BAT_LOW_LED_PIN -static uint32_t power_on_indicator_timer_buffer; -# define POWER_ON_LED_DURATION 3000 -#endif - -typedef struct PACKED { - uint8_t len; - uint8_t keycode[3]; -} key_combination_t; - -static uint32_t factory_timer_buffer = 0; -static uint32_t siri_timer_buffer = 0; -static uint8_t mac_keycode[4] = {KC_LOPT, KC_ROPT, KC_LCMD, KC_RCMD}; - -key_combination_t key_comb_list[4] = { - {2, {KC_LWIN, KC_TAB}}, // Task (win) - {2, {KC_LWIN, KC_E}}, // Files (win) - {3, {KC_LSFT, KC_LGUI, KC_4}}, // Snapshot (mac) - {2, {KC_LWIN, KC_C}} // Cortana (win) -}; - -#ifdef KC_BLUETOOTH_ENABLE -bool firstDisconnect = true; -bool bt_factory_reset = false; -static virtual_timer_t pairing_key_timer; -extern uint8_t g_pwm_buffer[DRIVER_COUNT][192]; - -static void pairing_key_timer_cb(void *arg) { - bluetooth_pairing_ex(*(uint8_t *)arg, NULL); -} -#endif - -bool dip_switch_update_kb(uint8_t index, bool active) { - if (index == 0) { -#ifdef INVERT_OS_SWITCH_STATTE - default_layer_set(1UL << (!active ? 0 : 1)); -#else - default_layer_set(1UL << (active ? 0 : 1)); -#endif - } - dip_switch_update_user(index, active); - - return true; -} - -#ifdef KC_BLUETOOTH_ENABLE -bool process_record_kb_bt(uint16_t keycode, keyrecord_t *record) { -#else -bool process_record_kb(uint16_t keycode, keyrecord_t *record) { -#endif - static uint8_t host_idx = 0; - - switch (keycode) { - case KC_LOPTN: - case KC_ROPTN: - case KC_LCMMD: - case KC_RCMMD: - if (record->event.pressed) { - register_code(mac_keycode[keycode - KC_LOPTN]); - } else { - unregister_code(mac_keycode[keycode - KC_LOPTN]); - } - return false; // Skip all further processing of this key) - case KC_TASK: - case KC_FILE: - case KC_SNAP: - case KC_CTANA: - if (record->event.pressed) { - for (uint8_t i = 0; i < key_comb_list[keycode - KC_TASK].len; i++) - register_code(key_comb_list[keycode - KC_TASK].keycode[i]); - } else { - for (uint8_t i = 0; i < key_comb_list[keycode - KC_TASK].len; i++) - unregister_code(key_comb_list[keycode - KC_TASK].keycode[i]); - } - return false; // Skip all further processing of this key - case KC_SIRI: - if (record->event.pressed && siri_timer_buffer == 0) { - register_code(KC_LGUI); - register_code(KC_SPACE); - siri_timer_buffer = sync_timer_read32() | 1; - } - return false; // Skip all further processing of this key -#ifdef KC_BLUETOOTH_ENABLE - case BT_HST1 ... BT_HST3: - if (get_transport() == TRANSPORT_BLUETOOTH) { - if (record->event.pressed) { - host_idx = keycode - BT_HST1 + 1; - chVTSet(&pairing_key_timer, TIME_MS2I(2000), (vtfunc_t)pairing_key_timer_cb, &host_idx); - bluetooth_connect_ex(host_idx, 0); - } else { - host_idx = 0; - chVTReset(&pairing_key_timer); - } - } - break; - case BAT_LVL: - if (get_transport() == TRANSPORT_BLUETOOTH && !usb_power_connected()) { - bat_level_animiation_start(battery_get_percentage()); - } - break; -#endif - default: -#ifdef FACTORY_RESET_CHECK - FACTORY_RESET_CHECK(keycode, record); -#endif - break; - } - return true; -} - -void keyboard_post_init_kb(void) { - dip_switch_read(true); - -#ifdef KC_BLUETOOTH_ENABLE - /* Currently we don't use this reset pin */ - palSetLineMode(CKBT51_RESET_PIN, PAL_MODE_OUTPUT_PUSHPULL); - palWriteLine(CKBT51_RESET_PIN, PAL_HIGH); - - /* IMPORTANT: DO NOT enable internal pull-up resistor - * as there is an external pull-down resistor. - */ - palSetLineMode(USB_BT_MODE_SELECT_PIN, PAL_MODE_INPUT); - - ckbt51_init(false); - bluetooth_init(); -#endif - - power_on_indicator_timer_buffer = sync_timer_read32() | 1; - writePin(BAT_LOW_LED_PIN, BAT_LOW_LED_PIN_ON_STATE); - keyboard_post_init_user(); -} - -void matrix_scan_kb(void) { - if (factory_timer_buffer && timer_elapsed32(factory_timer_buffer) > 2000) { - factory_timer_buffer = 0; - if (bt_factory_reset) { - bt_factory_reset = false; - palWriteLine(CKBT51_RESET_PIN, PAL_LOW); - wait_ms(5); - palWriteLine(CKBT51_RESET_PIN, PAL_HIGH); - } - } - - if (power_on_indicator_timer_buffer) { - if (sync_timer_elapsed32(power_on_indicator_timer_buffer) > POWER_ON_LED_DURATION) { - power_on_indicator_timer_buffer = 0; - writePin(BAT_LOW_LED_PIN, !BAT_LOW_LED_PIN_ON_STATE); - } else { - writePin(BAT_LOW_LED_PIN, BAT_LOW_LED_PIN_ON_STATE); - } - } - - if (siri_timer_buffer && sync_timer_elapsed32(siri_timer_buffer) > 500) { - siri_timer_buffer = 0; - unregister_code(KC_LGUI); - unregister_code(KC_SPACE); - } - -#ifdef FACTORY_RESET_TASK - FACTORY_RESET_TASK(); -#endif - matrix_scan_user(); -} - -#ifdef KC_BLUETOOTH_ENABLE -static void ckbt51_param_init(void) { - /* Set bluetooth device name */ - ckbt51_set_local_name(PRODUCT); - wait_ms(10); - /* Set bluetooth parameters */ - module_param_t param = {.event_mode = 0x02, - .connected_idle_timeout = 7200, - .pairing_timeout = 180, - .pairing_mode = 0, - .reconnect_timeout = 5, - .report_rate = 90, - .vendor_id_source = 1, - .verndor_id = 0, // Must be 0x3434 - .product_id = PRODUCT_ID}; - ckbt51_set_param(¶m); - wait_ms(10); -} - -void bluetooth_enter_disconnected_kb(uint8_t host_idx) { - if (bt_factory_reset) { - ckbt51_param_init(); - factory_timer_buffer = timer_read32(); - } - /* CKBT51 bluetooth module boot time is slower, it enters disconnected after boot, - so we place initialization here. */ - if (firstDisconnect && sync_timer_read32() < 1000 && get_transport() == TRANSPORT_BLUETOOTH) { - ckbt51_param_init(); - bluetooth_connect(); - firstDisconnect = false; - } -} - -void ckbt51_default_ack_handler(uint8_t *data, uint8_t len) { - if (data[1] == 0x45) { - module_param_t param = {.event_mode = 0x02, - .connected_idle_timeout = 7200, - .pairing_timeout = 180, - .pairing_mode = 0, - .reconnect_timeout = 5, - .report_rate = 90, - .vendor_id_source = 1, - .verndor_id = 0, // Must be 0x3434 - .product_id = PRODUCT_ID}; - ckbt51_set_param(¶m); - } -} - -void bluetooth_pre_task(void) { - static uint8_t mode = 1; - - if (readPin(USB_BT_MODE_SELECT_PIN) != mode) { - if (readPin(USB_BT_MODE_SELECT_PIN) != mode) { - mode = readPin(USB_BT_MODE_SELECT_PIN); - set_transport(mode == 0 ? TRANSPORT_BLUETOOTH : TRANSPORT_USB); - } - } -} -#endif - -void battery_calculte_voltage(uint16_t value) { - uint16_t voltage = ((uint32_t)value) * 2246 / 1000; - -#ifdef LED_MATRIX_ENABLE - if (led_matrix_is_enabled()) { - uint32_t totalBuf = 0; - - for (uint8_t i = 0; i < DRIVER_COUNT; i++) - for (uint8_t j = 0; j < 192; j++) - totalBuf += g_pwm_buffer[i][j]; - /* We assumpt it is linear relationship*/ - voltage += (30 * totalBuf / LED_MATRIX_LED_COUNT / 255); - } -#endif -#ifdef RGB_MATRIX_ENABLE - if (rgb_matrix_is_enabled()) { - uint32_t totalBuf = 0; - - for (uint8_t i = 0; i < DRIVER_COUNT; i++) - for (uint8_t j = 0; j < 192; j++) - totalBuf += g_pwm_buffer[i][j]; - /* We assumpt it is linear relationship*/ - uint32_t compensation = 60 * totalBuf / RGB_MATRIX_LED_COUNT / 255 / 3; - voltage += compensation; - } -#endif - battery_set_voltage(voltage); -} - -bool via_command_kb(uint8_t *data, uint8_t length) { - switch (data[0]) { -#ifdef KC_BLUETOOTH_ENABLE - case 0xAA: - ckbt51_dfu_rx(data, length); - break; -#endif -#ifdef ENABLE_FACTORY_TEST - case 0xAB: - factory_test_rx(data, length); - break; -#endif - default: - return false; - } - - return true; -} - -#if !defined(VIA_ENABLE) -void raw_hid_receive(uint8_t *data, uint8_t length) { - switch (data[0]) { - case RAW_HID_CMD: - via_command_kb(data, length); - break; - } -} -#endif diff --git a/keyboards/keychron/k7_pro/k7_pro.h b/keyboards/keychron/k7_pro/k7_pro.h deleted file mode 100644 index be5196903d..0000000000 --- a/keyboards/keychron/k7_pro/k7_pro.h +++ /dev/null @@ -1,55 +0,0 @@ -/* Copyright 2022 @ 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 . - */ - -#pragma once - -#include "quantum.h" -#ifdef VIA_ENABLE -# include "via.h" -#endif - -#define ___ KC_NO - -#ifdef VIA_ENABLE -# define USER_START QK_KB_0 -#else -# define USER_START SAFE_RANGE -#endif - -// clang-format off -enum { - KC_LOPTN = USER_START, - KC_ROPTN, - KC_LCMMD, - KC_RCMMD, - KC_TASK, - KC_FILE, - KC_SNAP, - KC_CTANA, - KC_SIRI, -#ifdef KC_BLUETOOTH_ENABLE - BT_HST1, - BT_HST2, - BT_HST3, - BAT_LVL, -#else - BT_HST1 = KC_TRNS, - BT_HST2 = KC_TRNS, - BT_HST3 = KC_TRNS, - BAT_LVL = KC_TRNS, -#endif - NEW_SAFE_RANGE -}; diff --git a/keyboards/keychron/k7_pro/matrix.c b/keyboards/keychron/k7_pro/matrix.c deleted file mode 100644 index 45394bc7b2..0000000000 --- a/keyboards/keychron/k7_pro/matrix.c +++ /dev/null @@ -1,198 +0,0 @@ -/* Copyright 2021 @ 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 . - */ - -//#include "q1_bluetooth.h" -#include "stdint.h" -#include "hal.h" -#include "gpio.h" -#include "quantum.h" - -#define HC595_STCP B0 -#define HC595_SHCP A1 -#define HC595_DS A7 - -#define DIRECT_COL_NUM 1 - -pin_t row_pins[MATRIX_ROWS] = MATRIX_ROW_PINS; -pin_t col_pins[MATRIX_COLS] = MATRIX_COL_PINS; - -static inline void HC595_delay(uint16_t n) { - while (n-- > 0) { - asm volatile("nop" ::: "memory"); - } -} - -#ifdef DRIVE_SHRIFT_REGISTER_WITH_SPI -// clang-format off -const SPIConfig hs_spicfg = { - .circular = false, - .slave = false, - .data_cb = NULL, - .error_cb = NULL, - .ssport = PAL_PORT(HC595_STCP), - .sspad = PAL_PAD(HC595_STCP), - .cr1 = SPI_CR1_BR_1, - .cr2 = SPI_CR2_DS_3 | SPI_CR2_DS_2 | SPI_CR2_DS_1 | SPI_CR2_DS_0 | SPI_CR2_SSOE | SPI_CR2_NSSP -}; -// clang-format on -#endif -static void HC595_output(uint16_t data) { -#ifdef DRIVE_SHRIFT_REGISTER_WITH_SPI - spiSend(&SPID1, 1, &data); -#else - uint8_t i; - uint8_t n = 1; - - for (i = 16; i > 0; i--) { - writePinLow(HC595_SHCP); - - if (data & 0x8000) - writePinHigh(HC595_DS); - else - writePinLow(HC595_DS); - - data <<= 1; - - HC595_delay(n); - - writePinHigh(HC595_SHCP); - HC595_delay(n); - } - - HC595_delay(n); - writePinLow(HC595_STCP); - HC595_delay(n); - writePinHigh(HC595_STCP); -#endif -} - -static inline void setPinOutput_writeLow(pin_t pin) { - ATOMIC_BLOCK_FORCEON { - setPinOutput(pin); - writePinLow(pin); - } -} - -static inline void setPinInputHigh_atomic(pin_t pin) { - ATOMIC_BLOCK_FORCEON { - setPinInputHigh(pin); - } -} - -static inline uint8_t readMatrixPin(pin_t pin) { - if (pin != NO_PIN) { - return readPin(pin); - } else { - return 1; - } -} - -static bool select_col(uint8_t col) { - pin_t pin = col_pins[col]; - - if (col < 1) { - if (pin != NO_PIN) { - setPinOutput_writeLow(pin); - return true; - } - } else { - HC595_output(~(0x01 << (col - 1))); - return true; - } - return false; -} - -static void unselect_col(uint8_t col) { - pin_t pin = col_pins[col]; - - if (col < 1) { - if (pin != NO_PIN) { - setPinInputHigh_atomic(pin); - } - } else { - if (col >= MATRIX_COLS - 1) HC595_output(0xFFFF); - } -} - -static void unselect_cols(void) { - if (col_pins[0] != NO_PIN) setPinInputHigh_atomic(col_pins[0]); - HC595_output(0xFFFF); -} - -void select_all_cols(void) { - if (col_pins[0] != NO_PIN) setPinOutput_writeLow(col_pins[0]); - HC595_output(0x0000); -} - -void matrix_read_rows_on_col(matrix_row_t current_matrix[], uint8_t current_col) { - // Select col - if (!select_col(current_col)) { // select col - return; // skip NO_PIN col - } - - HC595_delay(100); - - // For each row... - for (uint8_t row_index = 0; row_index < MATRIX_ROWS; row_index++) { - // Check row pin state - if (readMatrixPin(row_pins[row_index]) == 0) { - // Pin LO, set col bit - current_matrix[row_index] |= (MATRIX_ROW_SHIFTER << current_col); - // key_pressed = true; - } else { - // Pin HI, clear col bit - current_matrix[row_index] &= ~(MATRIX_ROW_SHIFTER << current_col); - } - } - - unselect_col(current_col); - HC595_delay(100); -} - -void matrix_init_custom(void) { - for (uint8_t x = 0; x < MATRIX_ROWS; x++) { - if (row_pins[x] != NO_PIN) { - setPinInputHigh_atomic(row_pins[x]); - } - } -#ifdef DRIVE_SHRIFT_REGISTER_WITH_SPI - palSetPadMode(PAL_PORT(HC595_SHCP), PAL_PAD(HC595_SHCP), PAL_MODE_ALTERNATE(5) | PAL_STM32_OSPEED_HIGHEST); /* SCK */ - palSetPadMode(PAL_PORT(HC595_DS), PAL_PAD(HC595_DS), PAL_MODE_ALTERNATE(5) | PAL_STM32_OSPEED_HIGHEST); /* MOSI*/ - palSetPadMode(PAL_PORT(HC595_STCP), PAL_PAD(HC595_STCP), PAL_MODE_ALTERNATE(5) | PAL_STM32_OSPEED_HIGHEST); /* CS*/ - spiStart(&SPID1, &hs_spicfg); -#else - setPinOutput(HC595_DS); - setPinOutput(HC595_STCP); - setPinOutput(HC595_SHCP); -#endif - unselect_cols(); -} - -bool matrix_scan_custom(matrix_row_t current_matrix[]) { - bool matrix_has_changed = false; - - matrix_row_t curr_matrix[MATRIX_ROWS] = {0}; - - // Set col, read rows - for (uint8_t current_col = 0; current_col < MATRIX_COLS; current_col++) { - matrix_read_rows_on_col(curr_matrix, current_col); - } - - matrix_has_changed = memcmp(current_matrix, curr_matrix, sizeof(curr_matrix)) != 0; - if (matrix_has_changed) memcpy(current_matrix, curr_matrix, sizeof(curr_matrix)); - - return matrix_has_changed; -} diff --git a/keyboards/keychron/k7_pro/mcuconf.h b/keyboards/keychron/k7_pro/mcuconf.h deleted file mode 100644 index ec9b964582..0000000000 --- a/keyboards/keychron/k7_pro/mcuconf.h +++ /dev/null @@ -1,40 +0,0 @@ -/* 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 - -/* Set HCLK to 48 MHz as tradeoff of USB lowest clockand and - * lower power comsumption for bluetooth. Will use dynamic - * clock when STM32L4 is supported in ChibiOS */ -#undef STM32_PLLM_VALUE -#define STM32_PLLM_VALUE 2 - -#undef STM32_PLLN_VALUE -#define STM32_PLLN_VALUE 12 - -#undef STM32_I2C_USE_I2C1 -#define STM32_I2C_USE_I2C1 TRUE - -#undef STM32_SPI_USE_SPI1 -#define STM32_SPI_USE_SPI1 TRUE - -#ifdef KC_BLUETOOTH_ENABLE -# undef STM32_SERIAL_USE_USART2 -# define STM32_SERIAL_USE_USART2 TRUE -#endif \ No newline at end of file diff --git a/keyboards/keychron/k7_pro/readme.md b/keyboards/keychron/k7_pro/readme.md deleted file mode 100644 index 5fc682638c..0000000000 --- a/keyboards/keychron/k7_pro/readme.md +++ /dev/null @@ -1,27 +0,0 @@ -# Keychron K7 Pro - -![Keychron K7 Pro](https://github.com/Keychron/ProductImage/blob/main/K_Pro/k7_pro.jpg?raw=true) - -A customizable 68 keys TKL low profile switch keyboard. - -* Keyboard Maintainer: [Keychron](https://github.com/keychron) -* Hardware Supported: Keychron K7 Pro -* Hardware Availability: [Keychron K7 Pro QMK/VIA Wireless Mechanical Keyboard](https://www.keychron.com/products/keychron-k7-pro-qmk-via-wireless-custom-mechanical-keyboard) - -Make example for this keyboard (after setting up your build environment): - - make keychron/k7_pro/ansi/rgb:default - make keychron/k7_pro/ansi/white:default - make keychron/k7_pro/iso/rgb:default - make keychron/k7_pro/iso/white:default - -Flashing example for this keyboard: - - make keychron/k7_pro/ansi/rgb:default:flash - make keychron/k7_pro/ansi/white:default:flash - make keychron/k7_pro/ansi/iso:default:flash - make keychron/k7_pro/ansi/white:default:flash - -**Reset Key**: Connect the USB cable, toggle mode switch to "Off", hold down the *Esc* key or reset button underneath space bar, then toggle then switch to "Cable". - -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). diff --git a/keyboards/keychron/k7_pro/rules.mk b/keyboards/keychron/k7_pro/rules.mk deleted file mode 100644 index 8e536fc345..0000000000 --- a/keyboards/keychron/k7_pro/rules.mk +++ /dev/null @@ -1,9 +0,0 @@ -# Enter lower-power sleep mode when on the ChibiOS idle thread -OPT_DEFS += -DCORTEX_ENABLE_WFI_IDLE=TRUE -OPT_DEFS += -DNO_USB_STARTUP_CHECK -DENABLE_FACTORY_TEST - -SRC += matrix.c - -include keyboards/keychron/bluetooth/bluetooth.mk - - diff --git a/keyboards/keychron/k7_pro/via_json/k7_pro_ansi_rgb.json b/keyboards/keychron/k7_pro/via_json/k7_pro_ansi_rgb.json deleted file mode 100644 index 631b6238f8..0000000000 --- a/keyboards/keychron/k7_pro/via_json/k7_pro_ansi_rgb.json +++ /dev/null @@ -1,233 +0,0 @@ -{ - "name": "Keychron K7 Pro", - "vendorId": "0x3434", - "productId": "0x0270", - "keycodes": ["qmk_lighting"], - "menus": [ - { - "label": "Lighting", - "content": [ - { - "label": "Backlight", - "content": [ - { - "label": "Brightness", - "type": "range", - "options": [0, 255], - "content": ["id_qmk_rgb_matrix_brightness", 3, 1] - }, - { - "label": "Effect", - "type": "dropdown", - "content": ["id_qmk_rgb_matrix_effect", 3, 2], - "options": [ - ["None", 0], - ["Solid Color", 1], - ["Breathing", 2], - ["Band Spiral Val", 3], - ["Cycle All", 4], - ["Cycle Left Right", 5], - ["Cycle Up Down", 6], - ["Rainbow Moving Chevron", 7], - ["Cycle Out In", 8], - ["Cycle Out In Dual", 9], - ["Cycle Pinwheel", 10], - ["Cycle Spiral", 11], - ["Dual Beacon", 12], - ["Rainbow Beacon", 13], - ["Jellybean Raindrops", 14], - ["Pixel Rain", 15], - ["Typing Heatmap", 16], - ["Digital Rain", 17], - ["Reactive Simple", 18], - ["Reactive Multiwide", 19], - ["Reactive Multinexus", 20], - ["Splash", 21], - ["Solid Splash", 22] - ] - }, - { - "showIf": "{id_qmk_rgb_matrix_effect} > 1", - "label": "Effect Speed", - "type": "range", - "options": [0, 255], - "content": ["id_qmk_rgb_matrix_effect_speed", 3, 3] - }, - { - "showIf": "{id_qmk_rgb_matrix_effect} != 0 && ( {id_qmk_rgb_matrix_effect} < 4 || {id_qmk_rgb_matrix_effect} == 18 || ({id_qmk_rgb_matrix_effect} > 17 && {id_qmk_rgb_matrix_effect} != 21) ) ", - "label": "Color", - "type": "color", - "content": ["id_qmk_rgb_matrix_color", 3, 4] - } - ] - } - ] - } - ], - "customKeycodes": [ - {"name": "Left Option", "title": "Left Option", "shortName": "LOpt"}, - {"name": "Right Option", "title": "Right Option", "shortName": "ROpt"}, - {"name": "Left Cmd", "title": "Left Command", "shortName": "LCmd"}, - {"name": "Right Cmd", "title": "Right Command", "shortName": "RCmd"}, - {"name": "Task View", "title": "Task View in Windows", "shortName": "Task"}, - {"name": "File Explorer", "title": "File Explorer in Windows", "shortName": "File"}, - {"name": "Screen shot", "title": "Screenshot in macOS", "shortName": "SShot"}, - {"name": "Cortana", "title": "Cortana in Windows", "shortName": "Cortana"}, - {"name": "Siri", "title": "Siri in macOS", "shortName": "Siri"}, - {"name": "Bluetooth Host 1", "title": "Bluetooth Host 1", "shortName": "BTH1"}, - {"name": "Bluetooth Host 2", "title": "Bluetooth Host 2", "shortName": "BTH2"}, - {"name": "Bluetooth Host 3", "title": "Bluetooth Host 3", "shortName": "BTH3"}, - {"name": "Battery Level", "title": "Show battery level", "shortName": "Batt"} - ], - "matrix": {"rows": 5, "cols": 16}, - "layouts": { - "keymap": [ - [ - { - "c": "#777777" - }, - "0,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", - { - "c": "#aaaaaa", - "w": 2 - }, - "0,13", - "0,15" - ], - [ - { - "w": 1.5 - }, - "1,0", - { - "c": "#cccccc" - }, - "1,1", - "1,2", - "1,3", - "1,4", - "1,5", - "1,6", - "1,7", - "1,8", - "1,9", - "1,10", - "1,11", - "1,12", - { - "c": "#aaaaaa", - "w": 1.5 - }, - "1,13", - "1,15" - ], - [ - { - "w": 1.75 - }, - "2,0", - { - "c": "#cccccc" - }, - "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", - { - "c": "#aaaaaa" - }, - "2,15" - ], - [ - { - "w": 2.25 - }, - "3,0", - { - "c": "#cccccc" - }, - "3,2", - "3,3", - "3,4", - "3,5", - "3,6", - "3,7", - "3,8", - "3,9", - "3,10", - "3,11", - { - "c": "#aaaaaa", - "w": 1.75 - }, - "3,13", - { - "c": "#777777" - }, - "3,14", - { - "c": "#aaaaaa" - }, - "3,15" - ], - [ - { - "w": 1.25 - }, - "4,0", - { - "w": 1.25 - }, - "4,1", - { - "w": 1.25 - }, - "4,2", - { - "c": "#cccccc", - "w": 6.25 - }, - "4,6", - { - "c": "#aaaaaa" - }, - "4,10", - "4,11", - "4,12", - { - "c": "#777777" - }, - "4,13", - "4,14", - "4,15" - ] - ] - } -} diff --git a/keyboards/keychron/k7_pro/via_json/k7_pro_ansi_white.json b/keyboards/keychron/k7_pro/via_json/k7_pro_ansi_white.json deleted file mode 100644 index aa1c84b85d..0000000000 --- a/keyboards/keychron/k7_pro/via_json/k7_pro_ansi_white.json +++ /dev/null @@ -1,172 +0,0 @@ -{ - "name": "Keychron K7 Pro", - "vendorId": "0x3434", - "productId": "0x0273", - "keycodes": ["qmk_lighting"], - "customKeycodes": [ - {"name": "Left Option", "title": "Left Option", "shortName": "LOpt"}, - {"name": "Right Option", "title": "Right Option", "shortName": "ROpt"}, - {"name": "Left Cmd", "title": "Left Command", "shortName": "LCmd"}, - {"name": "Right Cmd", "title": "Right Command", "shortName": "RCmd"}, - {"name": "Task View", "title": "Task View in Windows", "shortName": "Task"}, - {"name": "File Explorer", "title": "File Explorer in Windows", "shortName": "File"}, - {"name": "Screen shot", "title": "Screenshot in macOS", "shortName": "SShot"}, - {"name": "Cortana", "title": "Cortana in Windows", "shortName": "Cortana"}, - {"name": "Siri", "title": "Siri in macOS", "shortName": "Siri"}, - {"name": "Bluetooth Host 1", "title": "Bluetooth Host 1", "shortName": "BTH1"}, - {"name": "Bluetooth Host 2", "title": "Bluetooth Host 2", "shortName": "BTH2"}, - {"name": "Bluetooth Host 3", "title": "Bluetooth Host 3", "shortName": "BTH3"}, - {"name": "Battery Level", "title": "Show battery level", "shortName": "Batt"} - ], - "matrix": {"rows": 5, "cols": 16}, - "layouts": { - "keymap": [ - [ - { - "c": "#777777" - }, - "0,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", - { - "c": "#aaaaaa", - "w": 2 - }, - "0,13", - "0,15" - ], - [ - { - "w": 1.5 - }, - "1,0", - { - "c": "#cccccc" - }, - "1,1", - "1,2", - "1,3", - "1,4", - "1,5", - "1,6", - "1,7", - "1,8", - "1,9", - "1,10", - "1,11", - "1,12", - { - "c": "#aaaaaa", - "w": 1.5 - }, - "1,13", - "1,15" - ], - [ - { - "w": 1.75 - }, - "2,0", - { - "c": "#cccccc" - }, - "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", - { - "c": "#aaaaaa" - }, - "2,15" - ], - [ - { - "w": 2.25 - }, - "3,0", - { - "c": "#cccccc" - }, - "3,2", - "3,3", - "3,4", - "3,5", - "3,6", - "3,7", - "3,8", - "3,9", - "3,10", - "3,11", - { - "c": "#aaaaaa", - "w": 1.75 - }, - "3,13", - { - "c": "#777777" - }, - "3,14", - { - "c": "#aaaaaa" - }, - "3,15" - ], - [ - { - "w": 1.25 - }, - "4,0", - { - "w": 1.25 - }, - "4,1", - { - "w": 1.25 - }, - "4,2", - { - "c": "#cccccc", - "w": 6.25 - }, - "4,6", - { - "c": "#aaaaaa" - }, - "4,10", - "4,11", - "4,12", - { - "c": "#777777" - }, - "4,13", - "4,14", - "4,15" - ] - ] - } -} diff --git a/keyboards/keychron/k7_pro/via_json/k7_pro_iso_rgb.json b/keyboards/keychron/k7_pro/via_json/k7_pro_iso_rgb.json deleted file mode 100644 index 1a7fd211a8..0000000000 --- a/keyboards/keychron/k7_pro/via_json/k7_pro_iso_rgb.json +++ /dev/null @@ -1,241 +0,0 @@ -{ - "name": "Keychron K7 Pro ISO RGB", - "vendorId": "0x3434", - "productId": "0x0271", - "keycodes": ["qmk_lighting"], - "menus": [ - { - "label": "Lighting", - "content": [ - { - "label": "Backlight", - "content": [ - { - "label": "Brightness", - "type": "range", - "options": [0, 255], - "content": ["id_qmk_rgb_matrix_brightness", 3, 1] - }, - { - "label": "Effect", - "type": "dropdown", - "content": ["id_qmk_rgb_matrix_effect", 3, 2], - "options": [ - ["None", 0], - ["Solid Color", 1], - ["Breathing", 2], - ["Band Spiral Val", 3], - ["Cycle All", 4], - ["Cycle Left Right", 5], - ["Cycle Up Down", 6], - ["Rainbow Moving Chevron", 7], - ["Cycle Out In", 8], - ["Cycle Out In Dual", 9], - ["Cycle Pinwheel", 10], - ["Cycle Spiral", 11], - ["Dual Beacon", 12], - ["Rainbow Beacon", 13], - ["Jellybean Raindrops", 14], - ["Pixel Rain", 15], - ["Typing Heatmap", 16], - ["Digital Rain", 17], - ["Reactive Simple", 18], - ["Reactive Multiwide", 19], - ["Reactive Multinexus", 20], - ["Splash", 21], - ["Solid Splash", 22] - ] - }, - { - "showIf": "{id_qmk_rgb_matrix_effect} > 1", - "label": "Effect Speed", - "type": "range", - "options": [0, 255], - "content": ["id_qmk_rgb_matrix_effect_speed", 3, 3] - }, - { - "showIf": "{id_qmk_rgb_matrix_effect} != 0 && ( {id_qmk_rgb_matrix_effect} < 4 || {id_qmk_rgb_matrix_effect} == 18 || ({id_qmk_rgb_matrix_effect} > 17 && {id_qmk_rgb_matrix_effect} != 21) ) ", - "label": "Color", - "type": "color", - "content": ["id_qmk_rgb_matrix_color", 3, 4] - } - ] - } - ] - } - ], - "customKeycodes": [ - {"name": "Left Option", "title": "Left Option", "shortName": "LOpt"}, - {"name": "Right Option", "title": "Right Option", "shortName": "ROpt"}, - {"name": "Left Cmd", "title": "Left Command", "shortName": "LCmd"}, - {"name": "Right Cmd", "title": "Right Command", "shortName": "RCmd"}, - {"name": "Task View", "title": "Task View in Windows", "shortName": "Task"}, - {"name": "File Explorer", "title": "File Explorer in Windows", "shortName": "File"}, - {"name": "Screen shot", "title": "Screenshot in macOS", "shortName": "SShot"}, - {"name": "Cortana", "title": "Cortana in Windows", "shortName": "Cortana"}, - {"name": "Siri", "title": "Siri in macOS", "shortName": "Siri"}, - {"name": "Bluetooth Host 1", "title": "Bluetooth Host 1", "shortName": "BTH1"}, - {"name": "Bluetooth Host 2", "title": "Bluetooth Host 2", "shortName": "BTH2"}, - {"name": "Bluetooth Host 3", "title": "Bluetooth Host 3", "shortName": "BTH3"}, - {"name": "Battery Level", "title": "Show battery level", "shortName": "Batt"} - ], - "matrix": {"rows": 5, "cols": 16}, - "layouts": { - "keymap": [ - [ - { - "c": "#777777" - }, - "0,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", - { - "c": "#aaaaaa", - "w": 2 - }, - "0,13", - "0,15" - ], - [ - { - "w": 1.5 - }, - "1,0", - { - "c": "#cccccc" - }, - "1,1", - "1,2", - "1,3", - "1,4", - "1,5", - "1,6", - "1,7", - "1,8", - "1,9", - "1,10", - "1,11", - "1,12", - { - "x": 0.25, - "c": "#777777", - "w": 1.25, - "h": 2, - "w2": 1.5, - "h2": 1, - "x2": -0.25 - }, - "1,13", - { - "c": "#aaaaaa" - }, - "1,15" - ], - [ - { - "w": 1.75 - }, - "2,0", - { - "c": "#cccccc" - }, - "2,1", - "2,2", - "2,3", - "2,4", - "2,5", - "2,6", - "2,7", - "2,8", - "2,9", - "2,10", - "2,11", - { - "c": "#aaaaaa" - }, - "2,13", - { - "x": 1.25 - }, - "2,15" - ], - [ - { - "w": 1.25 - }, - "3,0", - "3,1", - { - "c": "#cccccc" - }, - "3,2", - "3,3", - "3,4", - "3,5", - "3,6", - "3,7", - "3,8", - "3,9", - "3,10", - "3,11", - { - "c": "#aaaaaa", - "w": 1.75 - }, - "3,13", - { - "c": "#777777" - }, - "3,14", - { - "c": "#aaaaaa" - }, - "3,15" - ], - [ - { - "w": 1.25 - }, - "4,0", - { - "w": 1.25 - }, - "4,1", - { - "w": 1.25 - }, - "4,2", - { - "c": "#cccccc", - "w": 6.25 - }, - "4,6", - { - "c": "#aaaaaa" - }, - "4,10", - "4,11", - "4,12", - { - "c": "#777777" - }, - "4,13", - "4,14", - "4,15" - ] - ] - } -} diff --git a/keyboards/keychron/k7_pro/via_json/k7_pro_iso_white.json b/keyboards/keychron/k7_pro/via_json/k7_pro_iso_white.json deleted file mode 100644 index a73e0d8aab..0000000000 --- a/keyboards/keychron/k7_pro/via_json/k7_pro_iso_white.json +++ /dev/null @@ -1,180 +0,0 @@ -{ - "name": "Keychron K7 Pro ISO White", - "vendorId": "0x3434", - "productId": "0x0274", - "keycodes": ["qmk_lighting"], - "customKeycodes": [ - {"name": "Left Option", "title": "Left Option", "shortName": "LOpt"}, - {"name": "Right Option", "title": "Right Option", "shortName": "ROpt"}, - {"name": "Left Cmd", "title": "Left Command", "shortName": "LCmd"}, - {"name": "Right Cmd", "title": "Right Command", "shortName": "RCmd"}, - {"name": "Task View", "title": "Task View in Windows", "shortName": "Task"}, - {"name": "File Explorer", "title": "File Explorer in Windows", "shortName": "File"}, - {"name": "Screen shot", "title": "Screenshot in macOS", "shortName": "SShot"}, - {"name": "Cortana", "title": "Cortana in Windows", "shortName": "Cortana"}, - {"name": "Siri", "title": "Siri in macOS", "shortName": "Siri"}, - {"name": "Bluetooth Host 1", "title": "Bluetooth Host 1", "shortName": "BTH1"}, - {"name": "Bluetooth Host 2", "title": "Bluetooth Host 2", "shortName": "BTH2"}, - {"name": "Bluetooth Host 3", "title": "Bluetooth Host 3", "shortName": "BTH3"}, - {"name": "Battery Level", "title": "Show battery level", "shortName": "Batt"} - ], - "matrix": {"rows": 5, "cols": 16}, - "layouts": { - "keymap": [ - [ - { - "c": "#777777" - }, - "0,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", - { - "c": "#aaaaaa", - "w": 2 - }, - "0,13", - "0,15" - ], - [ - { - "w": 1.5 - }, - "1,0", - { - "c": "#cccccc" - }, - "1,1", - "1,2", - "1,3", - "1,4", - "1,5", - "1,6", - "1,7", - "1,8", - "1,9", - "1,10", - "1,11", - "1,12", - { - "x": 0.25, - "c": "#777777", - "w": 1.25, - "h": 2, - "w2": 1.5, - "h2": 1, - "x2": -0.25 - }, - "1,13", - { - "c": "#aaaaaa" - }, - "1,15" - ], - [ - { - "w": 1.75 - }, - "2,0", - { - "c": "#cccccc" - }, - "2,1", - "2,2", - "2,3", - "2,4", - "2,5", - "2,6", - "2,7", - "2,8", - "2,9", - "2,10", - "2,11", - { - "c": "#aaaaaa" - }, - "2,13", - { - "x": 1.25 - }, - "2,15" - ], - [ - { - "w": 1.25 - }, - "3,0", - "3,1", - { - "c": "#cccccc" - }, - "3,2", - "3,3", - "3,4", - "3,5", - "3,6", - "3,7", - "3,8", - "3,9", - "3,10", - "3,11", - { - "c": "#aaaaaa", - "w": 1.75 - }, - "3,13", - { - "c": "#777777" - }, - "3,14", - { - "c": "#aaaaaa" - }, - "3,15" - ], - [ - { - "w": 1.25 - }, - "4,0", - { - "w": 1.25 - }, - "4,1", - { - "w": 1.25 - }, - "4,2", - { - "c": "#cccccc", - "w": 6.25 - }, - "4,6", - { - "c": "#aaaaaa" - }, - "4,10", - "4,11", - "4,12", - { - "c": "#777777" - }, - "4,13", - "4,14", - "4,15" - ] - ] - } -} diff --git a/keyboards/keychron/k8_max/ansi/rgb/config.h b/keyboards/keychron/k8_max/ansi/rgb/config.h deleted file mode 100644 index 064f8b9bbc..0000000000 --- a/keyboards/keychron/k8_max/ansi/rgb/config.h +++ /dev/null @@ -1,53 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#pragma once - -#ifdef RGB_MATRIX_ENABLE -/* RGB Matrix driver configuration */ -# define RGB_MATRIX_LED_COUNT 87 -# define DRIVER_COUNT 2 -# define DRIVER_CS_PINS \ - { A8, C9 } - -# ifdef LK_WIRELESS_ENABLE -# define BT_HOST_LED_MATRIX_LIST \ - { 17, 18, 19 } - -# define P2P4G_HOST_LED_MATRIX_LIST \ - { 20 } - -# define BAT_LEVEL_LED_LIST \ - { 17, 18, 19, 20, 21, 22, 23, 24, 25, 26 } -# endif - -/* Scan phase of led driver set as MSKPHASE_9CHANNEL(defined as 0x03 in snled27351.h) */ -# define SNLED27351_PHASE_CHANNEL MSKPHASE_9CHANNEL - -/* Set LED driver current */ -# define SNLED27351_CURRENT_TUNE \ - { 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30 } - -/* Set to infinit, which is use in USB mode by default */ -# define RGB_MATRIX_TIMEOUT RGB_MATRIX_TIMEOUT_INFINITE -/* Allow shutdown of led driver to save power */ -# define RGB_MATRIX_DRIVER_SHUTDOWN_ENABLE -/* Turn off backlight on low brightness to save power */ -# define RGB_MATRIX_BRIGHTNESS_TURN_OFF_VAL 48 - -# define RGB_MATRIX_KEYPRESSES -# define RGB_MATRIX_FRAMEBUFFER_EFFECTS -#endif diff --git a/keyboards/keychron/k8_max/ansi/rgb/info.json b/keyboards/keychron/k8_max/ansi/rgb/info.json deleted file mode 100644 index b90f0fe944..0000000000 --- a/keyboards/keychron/k8_max/ansi/rgb/info.json +++ /dev/null @@ -1,36 +0,0 @@ -{ - "usb": { - "pid": "0x0A80", - "device_version": "1.0.0" - }, - "features": { - "rgb_matrix": true - }, - "rgb_matrix": { - "driver": "snled27351_spi", - "sleep": true, - "animations": { - "band_spiral_val": true, - "breathing": true, - "cycle_all": true, - "cycle_left_right": true, - "cycle_out_in": true, - "cycle_out_in_dual": true, - "cycle_pinwheel": true, - "cycle_spiral": true, - "cycle_up_down": true, - "digital_rain": true, - "dual_beacon": true, - "jellybean_raindrops": true, - "pixel_rain": true, - "rainbow_beacon": true, - "rainbow_moving_chevron": true, - "solid_reactive_multinexus": true, - "solid_reactive_multiwide": true, - "solid_reactive_simple": true, - "solid_splash": true, - "splash": true, - "typing_heatmap": true - } - } -} diff --git a/keyboards/keychron/k8_max/ansi/rgb/keymaps/default/keymap.c b/keyboards/keychron/k8_max/ansi/rgb/keymaps/default/keymap.c deleted file mode 100644 index 057c2ff654..0000000000 --- a/keyboards/keychron/k8_max/ansi/rgb/keymaps/default/keymap.c +++ /dev/null @@ -1,67 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#include QMK_KEYBOARD_H -#include "keychron_common.h" - -enum layers { - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN, -}; -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_ansi_87( - KC_ESC, KC_BRID, KC_BRIU, KC_MCTRL, KC_LNPAD, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_SNAP, KC_SIRI, RGB_MOD, - KC_GRV, 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_INS, KC_HOME, KC_PGUP, - 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_DEL, KC_END, KC_PGDN, - 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_LCTL, KC_LOPTN, KC_LCMMD, KC_SPC, KC_RCMMD, KC_ROPTN,MO(MAC_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - - [MAC_FN] = LAYOUT_ansi_87( - _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, RGB_TOG, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - - [WIN_BASE] = LAYOUT_ansi_87( - KC_ESC, 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_PSCR, KC_CTANA, RGB_MOD, - KC_GRV, 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_INS, KC_HOME, KC_PGUP, - 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_DEL, KC_END, KC_PGDN, - 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_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, KC_RGUI, MO(WIN_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - - [WIN_FN] = LAYOUT_ansi_87( - _______, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, RGB_TOG, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______) -}; - -// clang-format on -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - if (!process_record_keychron_common(keycode, record)) { - return false; - } - return true; -} diff --git a/keyboards/keychron/k8_max/ansi/rgb/keymaps/via/keymap.c b/keyboards/keychron/k8_max/ansi/rgb/keymaps/via/keymap.c deleted file mode 100644 index 024a40bdad..0000000000 --- a/keyboards/keychron/k8_max/ansi/rgb/keymaps/via/keymap.c +++ /dev/null @@ -1,67 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#include QMK_KEYBOARD_H -#include "keychron_common.h" - -enum layers { - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN, -}; -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_ansi_87( - KC_ESC, KC_BRID, KC_BRIU, KC_MCTRL, KC_LNPAD, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_SNAP, KC_SIRI, RGB_MOD, - KC_GRV, 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_INS, KC_HOME, KC_PGUP, - 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_DEL, KC_END, KC_PGDN, - 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_LCTL, KC_LOPTN, KC_LCMMD, KC_SPC, KC_RCMMD, KC_ROPTN, MO(MAC_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - - [MAC_FN] = LAYOUT_ansi_87( - _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, RGB_TOG, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - - [WIN_BASE] = LAYOUT_ansi_87( - KC_ESC, 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_PSCR, KC_CTANA, RGB_MOD, - KC_GRV, 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_INS, KC_HOME, KC_PGUP, - 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_DEL, KC_END, KC_PGDN, - 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_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, KC_RGUI, MO(WIN_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - - [WIN_FN] = LAYOUT_ansi_87( - _______, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, RGB_TOG, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______) -}; - -// clang-format on -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - if (!process_record_keychron_common(keycode, record)) { - return false; - } - return true; -} diff --git a/keyboards/keychron/k8_max/ansi/rgb/keymaps/via/rules.mk b/keyboards/keychron/k8_max/ansi/rgb/keymaps/via/rules.mk deleted file mode 100644 index 1e5b99807c..0000000000 --- a/keyboards/keychron/k8_max/ansi/rgb/keymaps/via/rules.mk +++ /dev/null @@ -1 +0,0 @@ -VIA_ENABLE = yes diff --git a/keyboards/keychron/k8_max/ansi/rgb/rgb.c b/keyboards/keychron/k8_max/ansi/rgb/rgb.c deleted file mode 100644 index 9e6d2ccd79..0000000000 --- a/keyboards/keychron/k8_max/ansi/rgb/rgb.c +++ /dev/null @@ -1,153 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#include "quantum.h" - -// clang-format off -#ifdef RGB_MATRIX_ENABLE -const snled27351_led_t PROGMEM g_snled27351_leds[RGB_MATRIX_LED_COUNT] = { -/* Refer to SNLED27351 manual for these locations - * driver - * | R location - * | | G location - * | | | B location - * | | | | */ - {0, G_16, I_16, H_16}, - {0, G_14, I_14, H_14}, - {0, G_13, I_13, H_13}, - {0, G_12, I_12, H_12}, - {0, G_11, I_11, H_11}, - {0, G_10, I_10, H_10}, - {0, G_9, I_9, H_9}, - {0, G_8, I_8, H_8}, - {0, G_7, I_7, H_7}, - {0, G_6, I_6, H_6}, - {0, G_5, I_5, H_5}, - {0, G_4, I_4, H_4}, - {0, G_3, I_3, H_3}, - {0, G_2, I_2, H_2}, - {0, G_1, I_1, H_1}, - {1, A_4, C_4, B_4}, - - {0, A_16, C_16, B_16}, - {0, A_15, C_15, B_15}, - {0, A_14, C_14, B_14}, - {0, A_13, C_13, B_13}, - {0, A_12, C_12, B_12}, - {0, A_11, C_11, B_11}, - {0, A_10, C_10, B_10}, - {0, A_9, C_9, B_9}, - {0, A_8, C_8, B_8}, - {0, A_7, C_7, B_7}, - {0, A_6, C_6, B_6}, - {0, A_5, C_5, B_5}, - {0, A_4, C_4, B_4}, - {0, A_3, C_3, B_3}, - {0, A_2, C_2, B_2}, - {0, A_1, C_1, B_1}, - {1, A_1, C_1, B_1}, - - {0, D_16, F_16, E_16}, - {0, D_15, F_15, E_15}, - {0, D_14, F_14, E_14}, - {0, D_13, F_13, E_13}, - {0, D_12, F_12, E_12}, - {0, D_11, F_11, E_11}, - {0, D_10, F_10, E_10}, - {0, D_9, F_9, E_9}, - {0, D_8, F_8, E_8}, - {0, D_7, F_7, E_7}, - {0, D_6, F_6, E_6}, - {0, D_5, F_5, E_5}, - {0, D_4, F_4, E_4}, - {0, D_3, F_3, E_3}, - {0, D_2, F_2, E_2}, - {0, D_1, F_1, E_1}, - {1, A_2, C_2, B_2}, - - {1, A_16, C_16, B_16}, - {1, A_15, C_15, B_15}, - {1, A_14, C_14, B_14}, - {1, A_13, C_13, B_13}, - {1, A_12, C_12, B_12}, - {1, A_11, C_11, B_11}, - {1, A_10, C_10, B_10}, - {1, A_9, C_9, B_9}, - {1, A_8, C_8, B_8}, - {1, A_7, C_7, B_7}, - {1, A_6, C_6, B_6}, - {1, A_5, C_5, B_5}, - {1, A_3, C_3, B_3}, - - {1, G_16, I_16, H_16}, - {1, G_14, I_14, H_14}, - {1, G_13, I_13, H_13}, - {1, G_12, I_12, H_12}, - {1, G_11, I_11, H_11}, - {1, G_10, I_10, H_10}, - {1, G_9, I_9, H_9}, - {1, G_8, I_8, H_8}, - {1, G_7, I_7, H_7}, - {1, G_6, I_6, H_6}, - {1, G_5, I_5, H_5}, - {1, G_3, I_3, H_3}, - {1, G_1, I_1, H_1}, - - {1, D_16, F_16, E_16}, - {1, D_15, F_15, E_15}, - {1, D_14, F_14, E_14}, - {1, D_10, F_10, E_10}, - {1, D_6, F_6, E_6}, - {1, D_5, F_5, E_5}, - {1, D_4, F_4, E_4}, - {1, D_3, F_3, E_3}, - {1, D_2, F_2, E_2}, - {1, D_1, F_1, E_1}, - {1, G_2, I_2, H_2}, -}; - -#define __ NO_LED - -led_config_t g_led_config = { - { - // Key Matrix to RGB Index - { 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, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49 }, - { 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, __, 62, __, __, __ }, - { 63, __, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, __, 74, __, 75, __ }, - { 76, 77, 78, __, __, __, 79, __, __, __, 80, 81, 82, 83, 84, 85, 86 }, - }, - { - // RGB Index to Physical Position - {0, 0}, {25, 0}, {38, 0}, {51, 0}, {64, 0}, {84, 0}, { 97, 0}, {110, 0}, {123, 0}, {142, 0}, {155, 0}, {168, 0}, {181, 0}, {198, 0}, {211, 0}, {224, 0}, - {0,14}, {12,14}, {25,14}, {38,14}, {51,14}, {64,14}, {77,14}, { 90,14}, {103,14}, {116,14}, {129,14}, {142,14}, {155,14}, {175,14}, {198,14}, {211,14}, {224,14}, - {3,26}, {19,26}, {32,26}, {45,26}, {58,26}, {71,26}, {84,26}, { 97,26}, {110,26}, {123,26}, {136,26}, {149,26}, {162,26}, {178,26}, {198,26}, {211,26}, {224,26}, - {4,39}, {22,39}, {35,39}, {48,39}, {61,39}, {74,39}, {87,39}, {100,39}, {113,39}, {126,39}, {139,39}, {152,39}, {173,39}, - {8,51}, {29,51}, {42,51}, {55,51}, {68,51}, {81,51}, { 94,51}, {107,51}, {120,51}, {132,51}, {145,51}, {170,51}, {211,51}, - {1,64}, {17,64}, {34,64}, {82,64}, {131,64}, {147,64}, {163,64}, {180,64}, {198,64}, {211,64}, {224,64} - }, - { - // RGB Index to Flag - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - } -}; -#endif diff --git a/keyboards/keychron/k8_max/ansi/rgb/rules.mk b/keyboards/keychron/k8_max/ansi/rgb/rules.mk deleted file mode 100644 index 6e7633bfe0..0000000000 --- a/keyboards/keychron/k8_max/ansi/rgb/rules.mk +++ /dev/null @@ -1 +0,0 @@ -# This file intentionally left blank diff --git a/keyboards/keychron/k8_max/ansi/white/config.h b/keyboards/keychron/k8_max/ansi/white/config.h deleted file mode 100644 index 9fdb493ad8..0000000000 --- a/keyboards/keychron/k8_max/ansi/white/config.h +++ /dev/null @@ -1,54 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#pragma once - -#ifdef LED_MATRIX_ENABLE -/* LED matrix driver configuration */ -# define LED_MATRIX_LED_COUNT 87 -# define DRIVER_COUNT 1 -# define DRIVER_CS_PINS \ - { C9 } - -# define LED_MATRIX_VAL_STEP 16 - -# ifdef LK_WIRELESS_ENABLE -# define BT_HOST_LED_MATRIX_LIST \ - { 17, 18, 19 } - -# define P2P4G_HOST_LED_MATRIX_LIST \ - { 20 } - -# define BAT_LEVEL_LED_LIST \ - { 17, 18, 19, 20, 21, 22, 23, 24, 25, 26 } -# endif - -/* Use first 8 channels of LED driver */ -# define SNLED27351_PHASE_CHANNEL MSKPHASE_8CHANNEL - -/* Set LED driver current */ -# define SNLED27351_CURRENT_TUNE \ - { 0x60, 0x60, 0x60, 0x60, 0x60, 0x60, 0x60, 0x60, 0x60, 0x60, 0x60, 0x60 } - -/* Set to infinit, which is use in USB mode by default */ -# define LED_MATRIX_TIMEOUT LED_MATRIX_TIMEOUT_INFINITE -/* Allow shutdown of led driver to save power */ -# define LED_MATRIX_DRIVER_SHUTDOWN_ENABLE -/* Turn off backlight on low brightness to save power */ -# define LED_MATRIX_BRIGHTNESS_TURN_OFF_VAL 48 - -# define LED_MATRIX_KEYPRESSES -#endif diff --git a/keyboards/keychron/k8_max/ansi/white/info.json b/keyboards/keychron/k8_max/ansi/white/info.json deleted file mode 100644 index 868834f4e2..0000000000 --- a/keyboards/keychron/k8_max/ansi/white/info.json +++ /dev/null @@ -1,30 +0,0 @@ -{ - "usb": { - "pid": "0x0A83", - "device_version": "1.0.0" - }, - "features": { - "led_matrix": true - }, - "led_matrix": { - "driver": "snled27351_spi", - "sleep": true, - "animations": { - "none": true, - "solid": true, - "breathing": true, - "band_pinwheel": true, - "band_spiral": true, - "cycle_left_right": true, - "cycle_up_down": true, - "cycle_out_in": true, - "dual_beacon": true, - "solid_reactive_simple": true, - "solid_reactive_multiwide": true, - "solid_reactive_multinexus": true, - "solid_splash": true, - "wave_left_right": true, - "wave_up_down": true - } - } -} diff --git a/keyboards/keychron/k8_max/ansi/white/keymaps/default/keymap.c b/keyboards/keychron/k8_max/ansi/white/keymaps/default/keymap.c deleted file mode 100644 index da174ce40f..0000000000 --- a/keyboards/keychron/k8_max/ansi/white/keymaps/default/keymap.c +++ /dev/null @@ -1,67 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#include QMK_KEYBOARD_H -#include "keychron_common.h" - -enum layers { - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN, -}; -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_ansi_87( - KC_ESC, KC_BRID, KC_BRIU, KC_MCTRL, KC_LNPAD, BL_DOWN, BL_UP, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_SNAP, KC_SIRI, BL_STEP, - KC_GRV, 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_INS, KC_HOME, KC_PGUP, - 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_DEL, KC_END, KC_PGDN, - 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_LCTL, KC_LOPTN, KC_LCMMD, KC_SPC, KC_RCMMD, KC_ROPTN, MO(MAC_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - - [MAC_FN] = LAYOUT_ansi_87( - _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, BL_TOGG, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - BL_TOGG, BL_STEP, BL_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, BL_DOWN, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - - [WIN_BASE] = LAYOUT_ansi_87( - KC_ESC, 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_PSCR, KC_CTANA, BL_STEP, - KC_GRV, 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_INS, KC_HOME, KC_PGUP, - 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_DEL, KC_END, KC_PGDN, - 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_LCTL, KC_LWIN, KC_LALT, KC_SPC, KC_RALT, KC_RGUI, MO(WIN_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - - [WIN_FN] = LAYOUT_ansi_87( - _______, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, BL_DOWN, BL_UP, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, BL_TOGG, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - BL_TOGG, BL_STEP, BL_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, BL_DOWN, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______) -}; - -// clang-format on -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - if (!process_record_keychron_common(keycode, record)) { - return false; - } - return true; -} diff --git a/keyboards/keychron/k8_max/ansi/white/keymaps/via/keymap.c b/keyboards/keychron/k8_max/ansi/white/keymaps/via/keymap.c deleted file mode 100644 index de6b48c0f9..0000000000 --- a/keyboards/keychron/k8_max/ansi/white/keymaps/via/keymap.c +++ /dev/null @@ -1,67 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#include QMK_KEYBOARD_H -#include "keychron_common.h" - -enum layers { - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN, -}; -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_ansi_87( - KC_ESC, KC_BRID, KC_BRIU, KC_MCTRL, KC_LNPAD, BL_DOWN, BL_UP, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_SNAP, KC_SIRI, BL_STEP, - KC_GRV, 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_INS, KC_HOME, KC_PGUP, - 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_DEL, KC_END, KC_PGDN, - 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_LCTL, KC_LOPTN, KC_LCMMD, KC_SPC, KC_RCMMD, KC_ROPTN,MO(MAC_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - - [MAC_FN] = LAYOUT_ansi_87( - _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, BL_TOGG, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - BL_TOGG, BL_STEP, BL_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, BL_DOWN, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - - [WIN_BASE] = LAYOUT_ansi_87( - KC_ESC, 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_PSCR, KC_CTANA, BL_STEP, - KC_GRV, 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_INS, KC_HOME, KC_PGUP, - 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_DEL, KC_END, KC_PGDN, - 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_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, KC_RGUI, MO(WIN_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - - [WIN_FN] = LAYOUT_ansi_87( - _______, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, BL_DOWN, BL_UP, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, BL_TOGG, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - BL_TOGG, BL_STEP, BL_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, BL_DOWN, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______) -}; - -// clang-format on -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - if (!process_record_keychron_common(keycode, record)) { - return false; - } - return true; -} diff --git a/keyboards/keychron/k8_max/ansi/white/keymaps/via/rules.mk b/keyboards/keychron/k8_max/ansi/white/keymaps/via/rules.mk deleted file mode 100644 index 1e5b99807c..0000000000 --- a/keyboards/keychron/k8_max/ansi/white/keymaps/via/rules.mk +++ /dev/null @@ -1 +0,0 @@ -VIA_ENABLE = yes diff --git a/keyboards/keychron/k8_max/ansi/white/rules.mk b/keyboards/keychron/k8_max/ansi/white/rules.mk deleted file mode 100644 index 6e7633bfe0..0000000000 --- a/keyboards/keychron/k8_max/ansi/white/rules.mk +++ /dev/null @@ -1 +0,0 @@ -# This file intentionally left blank diff --git a/keyboards/keychron/k8_max/ansi/white/white.c b/keyboards/keychron/k8_max/ansi/white/white.c deleted file mode 100644 index c1aca5af70..0000000000 --- a/keyboards/keychron/k8_max/ansi/white/white.c +++ /dev/null @@ -1,152 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#include "quantum.h" - -// clang-format off -#ifdef LED_MATRIX_ENABLE -const snled27351_led_t g_snled27351_leds[LED_MATRIX_LED_COUNT] = { -/* Refer to SNLED27351 manual for these locations - * driver - * | LED address - * | | */ - {0, A_16}, - {0, A_14}, - {0, A_13}, - {0, A_12}, - {0, A_11}, - {0, A_10}, - {0, A_9}, - {0, A_8}, - {0, A_7}, - {0, A_6}, - {0, A_5}, - {0, A_4}, - {0, A_3}, - {0, A_2}, - {0, A_1}, - {0, D_2}, - - {0, B_16}, - {0, B_15}, - {0, B_14}, - {0, B_13}, - {0, B_12}, - {0, B_11}, - {0, B_10}, - {0, B_9}, - {0, B_8}, - {0, B_7}, - {0, B_6}, - {0, B_5}, - {0, B_4}, - {0, B_3}, - {0, B_2}, - {0, B_1}, - {0, E_2}, - - {0, C_16}, - {0, C_15}, - {0, C_14}, - {0, C_13}, - {0, C_12}, - {0, C_11}, - {0, C_10}, - {0, C_9}, - {0, C_8}, - {0, C_7}, - {0, C_6}, - {0, C_5}, - {0, C_4}, - {0, C_3}, - {0, C_2}, - {0, C_1}, - {0, D_1}, - - {0, D_16}, - {0, D_15}, - {0, D_14}, - {0, D_13}, - {0, D_12}, - {0, D_11}, - {0, D_10}, - {0, D_9}, - {0, D_8}, - {0, D_7}, - {0, D_6}, - {0, D_5}, - {0, D_3}, - - {0, E_16}, - {0, E_14}, - {0, E_13}, - {0, E_12}, - {0, E_11}, - {0, E_10}, - {0, E_9}, - {0, E_8}, - {0, E_7}, - {0, E_6}, - {0, E_5}, - {0, E_3}, - {0, E_1}, - - {0, F_16}, - {0, F_15}, - {0, F_14}, - {0, F_10}, - {0, F_6}, - {0, F_5}, - {0, F_4}, - {0, F_3}, - {0, F_2}, - {0, F_1}, - {0, D_4}, -}; - -#define __ NO_LED - -led_config_t g_led_config = { - { - // Key Matrix to LED Index - { 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, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49 }, - { 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, __, 62, __, __, __ }, - { 63, __, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, __, 74, __, 75, __ }, - { 76, 77, 78, __, __, __, 79, __, __, __, 80, 81, 82, 83, 84, 85, 86 }, - }, - { - // LED Index to Physical Position - {0, 0}, {25, 0}, {38, 0}, {51, 0}, {64, 0}, {84, 0}, { 97, 0}, {110, 0}, {123, 0}, {142, 0}, {155, 0}, {168, 0}, {181, 0}, {198, 0}, {211, 0}, {224, 0}, - {0,14}, {12,14}, {25,14}, {38,14}, {51,14}, {64,14}, {77,14}, { 90,14}, {103,14}, {116,14}, {129,14}, {142,14}, {155,14}, {175,14}, {198,14}, {211,14}, {224,14}, - {3,26}, {19,26}, {32,26}, {45,26}, {58,26}, {71,26}, {84,26}, { 97,26}, {110,26}, {123,26}, {136,26}, {149,26}, {162,26}, {178,26}, {198,26}, {211,26}, {224,26}, - {4,39}, {22,39}, {35,39}, {48,39}, {61,39}, {74,39}, {87,39}, {100,39}, {113,39}, {126,39}, {139,39}, {152,39}, {173,39}, - {8,51}, {29,51}, {42,51}, {55,51}, {68,51}, {81,51}, { 94,51}, {107,51}, {120,51}, {132,51}, {145,51}, {170,51}, {211,51}, - {1,64}, {17,64}, {34,64}, {82,64}, {131,64}, {147,64}, {163,64}, {180,64}, {198,64}, {211,64}, {224,64} - }, - { - // LED Index to Flag - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - } -}; - -#endif diff --git a/keyboards/keychron/k8_max/board.h b/keyboards/keychron/k8_max/board.h deleted file mode 100644 index faf908141c..0000000000 --- a/keyboards/keychron/k8_max/board.h +++ /dev/null @@ -1,226 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#pragma once - -#include_next - -// clang-format off - -/* Set GPIOA_SWDIO to INPUT and NOT FLOATING */ -#undef VAL_GPIOA_MODER -#define VAL_GPIOA_MODER (PIN_MODE_INPUT(GPIOA_BUTTON) | \ - PIN_MODE_INPUT(GPIOA_PIN1) | \ - PIN_MODE_INPUT(GPIOA_PIN2) | \ - PIN_MODE_INPUT(GPIOA_PIN3) | \ - PIN_MODE_ALTERNATE(GPIOA_CS43L22_LRCK) |\ - PIN_MODE_ALTERNATE(GPIOA_L3GD20_SCL) | \ - PIN_MODE_ALTERNATE(GPIOA_L3GD20_SD0) | \ - PIN_MODE_ALTERNATE(GPIOA_L3GD20_SDI) | \ - PIN_MODE_INPUT(GPIOA_PIN8) | \ - PIN_MODE_INPUT(GPIOA_VBUS_FS) | \ - PIN_MODE_ALTERNATE(GPIOA_OTG_FS_ID) | \ - PIN_MODE_ALTERNATE(GPIOA_OTG_FS_DM) | \ - PIN_MODE_ALTERNATE(GPIOA_OTG_FS_DP) | \ - PIN_MODE_INPUT(GPIOA_SWDIO) | \ - PIN_MODE_INPUT(GPIOA_SWCLK) | \ - PIN_MODE_INPUT(GPIOA_PIN15)) - -#undef VAL_GPIOA_PUPDR -#define VAL_GPIOA_PUPDR (PIN_PUPDR_FLOATING(GPIOA_BUTTON) | \ - PIN_PUPDR_PULLUP(GPIOA_PIN1) | \ - PIN_PUPDR_PULLUP(GPIOA_PIN2) | \ - PIN_PUPDR_PULLUP(GPIOA_PIN3) | \ - PIN_PUPDR_FLOATING(GPIOA_CS43L22_LRCK) |\ - PIN_PUPDR_FLOATING(GPIOA_L3GD20_SCL) | \ - PIN_PUPDR_PULLUP(GPIOA_L3GD20_SD0) | \ - PIN_PUPDR_PULLUP(GPIOA_L3GD20_SDI) | \ - PIN_PUPDR_PULLDOWN(GPIOA_PIN8) | \ - PIN_PUPDR_FLOATING(GPIOA_VBUS_FS) | \ - PIN_PUPDR_FLOATING(GPIOA_OTG_FS_ID) | \ - PIN_PUPDR_FLOATING(GPIOA_OTG_FS_DM) | \ - PIN_PUPDR_FLOATING(GPIOA_OTG_FS_DP) | \ - PIN_PUPDR_PULLDOWN(GPIOA_SWDIO) | \ - PIN_PUPDR_PULLUP(GPIOA_SWCLK) | \ - PIN_PUPDR_PULLUP(GPIOA_PIN15)) - -#undef VAL_GPIOB_MODER -#define VAL_GPIOB_MODER (PIN_MODE_INPUT(GPIOB_PIN0) | \ - PIN_MODE_INPUT(GPIOB_PIN1) | \ - PIN_MODE_INPUT(GPIOB_PIN2) | \ - PIN_MODE_INPUT(GPIOB_SWO) | \ - PIN_MODE_INPUT(GPIOB_PIN4) | \ - PIN_MODE_INPUT(GPIOB_PIN5) | \ - PIN_MODE_INPUT(GPIOB_LSM303DLHC_SCL) | \ - PIN_MODE_INPUT(GPIOB_PIN7) | \ - PIN_MODE_INPUT(GPIOB_PIN8) | \ - PIN_MODE_INPUT(GPIOB_LSM303DLHC_SDA) | \ - PIN_MODE_INPUT(GPIOB_MP45DT02_CLK_IN) |\ - PIN_MODE_INPUT(GPIOB_PIN11) | \ - PIN_MODE_INPUT(GPIOB_PIN12) | \ - PIN_MODE_INPUT(GPIOB_PIN13) | \ - PIN_MODE_INPUT(GPIOB_PIN14) | \ - PIN_MODE_INPUT(GPIOB_PIN15)) - -#undef VAL_GPIOB_PUPDR -#define VAL_GPIOB_PUPDR (PIN_PUPDR_PULLDOWN(GPIOB_PIN0) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN1) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN2) | \ - PIN_PUPDR_PULLDOWN(GPIOB_SWO) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN4) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN5) | \ - PIN_PUPDR_PULLDOWN(GPIOB_LSM303DLHC_SCL) |\ - PIN_PUPDR_PULLDOWN(GPIOB_PIN7) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN8) | \ - PIN_PUPDR_PULLDOWN(GPIOB_LSM303DLHC_SDA) |\ - PIN_PUPDR_PULLDOWN(GPIOB_MP45DT02_CLK_IN) |\ - PIN_PUPDR_PULLDOWN(GPIOB_PIN11) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN12) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN13) | \ - PIN_PUPDR_PULLUP(GPIOB_PIN14) | \ - PIN_PUPDR_PULLUP(GPIOB_PIN15)) - -#undef VAL_GPIOB_AFRL -#define VAL_GPIOB_AFRL (PIN_AFIO_AF(GPIOB_PIN0, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN1, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN2, 0U) | \ - PIN_AFIO_AF(GPIOB_SWO, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN4, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN5, 0U) | \ - PIN_AFIO_AF(GPIOB_LSM303DLHC_SCL, 0) | \ - PIN_AFIO_AF(GPIOB_PIN7, 0U)) - -#undef VAL_GPIOB_AFRH -#define VAL_GPIOB_AFRH (PIN_AFIO_AF(GPIOB_PIN8, 0U) | \ - PIN_AFIO_AF(GPIOB_LSM303DLHC_SDA, 0) | \ - PIN_AFIO_AF(GPIOB_MP45DT02_CLK_IN, 0U) |\ - PIN_AFIO_AF(GPIOB_PIN11, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN12, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN13, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN14, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN15, 0U)) - -/* C5 Need to be pulldown */ -#undef VAL_GPIOC_MODER -#define VAL_GPIOC_MODER (PIN_MODE_INPUT(GPIOC_OTG_FS_POWER_ON) |\ - PIN_MODE_INPUT(GPIOC_PIN1) | \ - PIN_MODE_INPUT(GPIOC_PIN2) | \ - PIN_MODE_INPUT(GPIOC_CS43L22_AIN4x) | \ - PIN_MODE_INPUT(GPIOC_PIN4) | \ - PIN_MODE_INPUT(GPIOC_PIN5) | \ - PIN_MODE_INPUT(GPIOC_PIN6) | \ - PIN_MODE_INPUT(GPIOC_CS43L22_MCLK) | \ - PIN_MODE_INPUT(GPIOC_PIN8) | \ - PIN_MODE_INPUT(GPIOC_PIN9) | \ - PIN_MODE_INPUT(GPIOC_CS43L22_SCLK) | \ - PIN_MODE_INPUT(GPIOC_PIN11) | \ - PIN_MODE_INPUT(GPIOC_CS43L22_SDIN) | \ - PIN_MODE_INPUT(GPIOC_PIN13) | \ - PIN_MODE_INPUT(GPIOC_OSC32_IN) | \ - PIN_MODE_INPUT(GPIOC_OSC32_OUT)) - -#undef VAL_GPIOC_PUPDR -#define VAL_GPIOC_PUPDR (PIN_PUPDR_PULLUP(GPIOC_OTG_FS_POWER_ON) |\ - PIN_PUPDR_PULLUP(GPIOC_PIN1) | \ - PIN_PUPDR_PULLUP(GPIOC_PIN2) | \ - PIN_PUPDR_PULLUP(GPIOC_CS43L22_AIN4x) |\ - PIN_PUPDR_PULLUP(GPIOC_PIN4) | \ - PIN_PUPDR_PULLDOWN(GPIOC_PIN5) | \ - PIN_PUPDR_PULLDOWN(GPIOC_PIN6) | \ - PIN_PUPDR_PULLUP(GPIOC_CS43L22_MCLK) | \ - PIN_PUPDR_PULLDOWN(GPIOC_PIN8) | \ - PIN_PUPDR_PULLDOWN(GPIOC_PIN9) | \ - PIN_PUPDR_PULLUP(GPIOC_CS43L22_SCLK) | \ - PIN_PUPDR_PULLUP(GPIOC_PIN11) | \ - PIN_PUPDR_PULLUP(GPIOC_CS43L22_SDIN) | \ - PIN_PUPDR_PULLUP(GPIOC_PIN13) | \ - PIN_PUPDR_PULLUP(GPIOC_OSC32_IN) | \ - PIN_PUPDR_PULLUP(GPIOC_OSC32_OUT)) - -/* Set all GPIOD pins to INPUT & PULLUP to avoid FLOATING */ -#undef VAL_GPIOD_MODER -#define VAL_GPIOD_MODER (PIN_MODE_INPUT(GPIOD_PIN0) | \ - PIN_MODE_INPUT(GPIOD_PIN1) | \ - PIN_MODE_INPUT(GPIOD_PIN2) | \ - PIN_MODE_INPUT(GPIOD_PIN3) | \ - PIN_MODE_INPUT(GPIOD_CS43L22_RESET) | \ - PIN_MODE_INPUT(GPIOD_OverCurrent) | \ - PIN_MODE_INPUT(GPIOD_PIN6) | \ - PIN_MODE_INPUT(GPIOD_PIN7) | \ - PIN_MODE_INPUT(GPIOD_PIN8) | \ - PIN_MODE_INPUT(GPIOD_PIN9) | \ - PIN_MODE_INPUT(GPIOD_PIN10) | \ - PIN_MODE_INPUT(GPIOD_PIN11) | \ - PIN_MODE_INPUT(GPIOD_LED4) | \ - PIN_MODE_INPUT(GPIOD_LED3) | \ - PIN_MODE_INPUT(GPIOD_LED5) | \ - PIN_MODE_INPUT(GPIOD_LED6)) - -#undef VAL_GPIOD_PUPDR -#define VAL_GPIOD_PUPDR (PIN_PUPDR_PULLUP(GPIOD_PIN0) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN1) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN2) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN3) | \ - PIN_PUPDR_PULLUP(GPIOD_CS43L22_RESET) |\ - PIN_PUPDR_PULLUP(GPIOD_OverCurrent) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN6) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN7) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN8) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN9) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN10) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN11) | \ - PIN_PUPDR_PULLUP(GPIOD_LED4) | \ - PIN_PUPDR_PULLUP(GPIOD_LED3) | \ - PIN_PUPDR_PULLUP(GPIOD_LED5) | \ - PIN_PUPDR_PULLUP(GPIOD_LED6)) - -/* Set all GPIOE pins to INPUT & PULLUP to avoid FLOATING */ -#undef VAL_GPIOE_MODER -#define VAL_GPIOE_MODER (PIN_MODE_INPUT(GPIOE_L3GD20_INT1) | \ - PIN_MODE_INPUT(GPIOE_L3GD20_INT2) | \ - PIN_MODE_INPUT(GPIOE_LSM303DLHC_DRDY) |\ - PIN_MODE_INPUT(GPIOE_L3GD20_CS) | \ - PIN_MODE_INPUT(GPIOE_LSM303DLHC_INT1) |\ - PIN_MODE_INPUT(GPIOE_LSM303DLHC_INT2) |\ - PIN_MODE_INPUT(GPIOE_PIN6) | \ - PIN_MODE_INPUT(GPIOE_PIN7) | \ - PIN_MODE_INPUT(GPIOE_PIN8) | \ - PIN_MODE_INPUT(GPIOE_PIN9) | \ - PIN_MODE_INPUT(GPIOE_PIN10) | \ - PIN_MODE_INPUT(GPIOE_PIN11) | \ - PIN_MODE_INPUT(GPIOE_PIN12) | \ - PIN_MODE_INPUT(GPIOE_PIN13) | \ - PIN_MODE_INPUT(GPIOE_PIN14) | \ - PIN_MODE_INPUT(GPIOE_PIN15)) - -#undef VAL_GPIOE_PUPDR -#define VAL_GPIOE_PUPDR (PIN_PUPDR_PULLUP(GPIOE_L3GD20_INT1) | \ - PIN_PUPDR_PULLUP(GPIOE_L3GD20_INT2) | \ - PIN_PUPDR_PULLUP(GPIOE_LSM303DLHC_DRDY) |\ - PIN_PUPDR_PULLUP(GPIOE_L3GD20_CS) | \ - PIN_PUPDR_PULLUP(GPIOE_LSM303DLHC_INT1) |\ - PIN_PUPDR_PULLUP(GPIOE_LSM303DLHC_INT2) |\ - PIN_PUPDR_PULLUP(GPIOE_PIN6) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN7) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN8) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN9) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN10) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN11) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN12) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN13) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN14) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN15)) - diff --git a/keyboards/keychron/k8_max/config.h b/keyboards/keychron/k8_max/config.h deleted file mode 100644 index 309fe78622..0000000000 --- a/keyboards/keychron/k8_max/config.h +++ /dev/null @@ -1,84 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#pragma once - -#if defined(RGB_MATRIX_ENABLE) || defined(LED_MATRIX_ENABLE) || defined(LK_WIRELESS_ENABLE) -/* SPI configuration */ -# define SPI_DRIVER SPID1 -# define SPI_SCK_PIN A5 -# define SPI_MISO_PIN A6 -# define SPI_MOSI_PIN A7 -#endif - -#if defined(RGB_MATRIX_ENABLE) || defined(LED_MATRIX_ENABLE) -# define LED_DRIVER_SHUTDOWN_PIN B7 -# define SNLED23751_SPI_DIVISOR 16 - -# ifdef LK_WIRELESS_ENABLE -/* 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 - -/* Reinit LED driver on tranport changed */ -# define REINIT_LED_DRIVER 1 -# endif -#endif - -#ifdef LK_WIRELESS_ENABLE -/* Hardware configuration */ -# define P2P4_MODE_SELECT_PIN A9 -# define BT_MODE_SELECT_PIN A10 - -# define LKBT51_RESET_PIN C4 -# define LKBT51_INT_INPUT_PIN B1 -# define BLUETOOTH_INT_OUTPUT_PIN A4 - -# define USB_POWER_SENSE_PIN B0 -# define USB_POWER_CONNECTED_LEVEL 0 - -# define BAT_CHARGING_PIN B13 -# define BAT_CHARGING_LEVEL 0 - -# define BAT_LOW_LED_PIN C5 -# define BAT_LOW_LED_PIN_ON_STATE 1 - -# define BT_HOST_DEVICES_COUNT 3 -# define HOST_LED_PIN_ON_STATE 0 - -# define BT_HOST_LED_PIN_LIST \ - { B15, B15, B15 } - -# define P24G_HOST_DEVICES_COUNT 1 - -# define P24G_HOST_LED_PIN_LIST \ - { B14 } - -/* Keep USB connection in blueooth mode */ -# define KEEP_USB_CONNECTION_IN_WIRELESS_MODE - -/* Enable bluetooth NKRO */ -# define WIRELESS_NKRO_ENABLE -#endif - -/* Factory test keys */ -#define FN_KEY_1 MO(1) -#define FN_KEY_2 MO(3) - -#define MATRIX_IO_DELAY 10 - diff --git a/keyboards/keychron/k8_max/firmware/keychron_k8_max_ansi_rgb_via.bin b/keyboards/keychron/k8_max/firmware/keychron_k8_max_ansi_rgb_via.bin deleted file mode 100644 index dc884d1ce6..0000000000 Binary files a/keyboards/keychron/k8_max/firmware/keychron_k8_max_ansi_rgb_via.bin and /dev/null differ diff --git a/keyboards/keychron/k8_max/firmware/keychron_k8_max_ansi_white_via.bin b/keyboards/keychron/k8_max/firmware/keychron_k8_max_ansi_white_via.bin deleted file mode 100644 index 8d1ca28054..0000000000 Binary files a/keyboards/keychron/k8_max/firmware/keychron_k8_max_ansi_white_via.bin and /dev/null differ diff --git a/keyboards/keychron/k8_max/firmware/keychron_k8_max_iso_rgb_via.bin b/keyboards/keychron/k8_max/firmware/keychron_k8_max_iso_rgb_via.bin deleted file mode 100644 index 9ff49c24dc..0000000000 Binary files a/keyboards/keychron/k8_max/firmware/keychron_k8_max_iso_rgb_via.bin and /dev/null differ diff --git a/keyboards/keychron/k8_max/firmware/keychron_k8_max_iso_white_via.bin b/keyboards/keychron/k8_max/firmware/keychron_k8_max_iso_white_via.bin deleted file mode 100644 index 69cb8efd0a..0000000000 Binary files a/keyboards/keychron/k8_max/firmware/keychron_k8_max_iso_white_via.bin and /dev/null differ diff --git a/keyboards/keychron/k8_max/firmware/keychron_k8_max_jis_rgb_via.bin b/keyboards/keychron/k8_max/firmware/keychron_k8_max_jis_rgb_via.bin deleted file mode 100644 index 1a52aaed19..0000000000 Binary files a/keyboards/keychron/k8_max/firmware/keychron_k8_max_jis_rgb_via.bin and /dev/null differ diff --git a/keyboards/keychron/k8_max/firmware/keychron_k8_max_jis_white_via.bin b/keyboards/keychron/k8_max/firmware/keychron_k8_max_jis_white_via.bin deleted file mode 100644 index 16a1bbdf43..0000000000 Binary files a/keyboards/keychron/k8_max/firmware/keychron_k8_max_jis_white_via.bin and /dev/null differ diff --git a/keyboards/keychron/k8_max/halconf.h b/keyboards/keychron/k8_max/halconf.h deleted file mode 100644 index be6b5564c0..0000000000 --- a/keyboards/keychron/k8_max/halconf.h +++ /dev/null @@ -1,28 +0,0 @@ -/* Copyright 2024 @ 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 - -#define _CHIBIOS_HAL_CONF_VER_8_0_ - -#define HAL_USE_SPI TRUE - -#ifdef LK_WIRELESS_ENABLE -# define HAL_USE_RTC TRUE -# define PAL_USE_CALLBACKS TRUE -#endif - -#include_next diff --git a/keyboards/keychron/k8_max/info.json b/keyboards/keychron/k8_max/info.json deleted file mode 100644 index 0470760048..0000000000 --- a/keyboards/keychron/k8_max/info.json +++ /dev/null @@ -1,337 +0,0 @@ -{ - "keyboard_name": "Keychron K8 Max", - "manufacturer": "Keychron", - "url": "https://github.com/Keychron", - "maintainer": "Keychron", - "processor": "STM32F401", - "bootloader": "stm32-dfu", - "usb": { - "vid": "0x3434" - }, - "features": { - "bootmagic": true, - "extrakey": true, - "mousekey": true, - "dip_switch": true, - "nkro": true, - "raw": true, - "sendstring": true - }, - "matrix_pins": { - "cols": ["C7", "C8", "A14", "A15", "C10", "C11", "C13", "C14", "C15", "C0", "C1", "C2", "C3", "A0", "A1", "A2", "A3"], - "rows": ["C12", "D2", "B3", "B4", "B5", "B6"] - }, - "diode_direction": "ROW2COL", - "dip_switch" :{ - "pins": ["B12"] - }, - "dynamic_keymap": { - "layer_count": 4 - }, - "eeprom": { - "wear_leveling": { - "driver": "embedded_flash", - "logical_size": 2048, - "backing_size": 4096 - } - }, - "indicators": { - "caps_lock": "B10", - "on_state": 1 - }, - "layouts": { - "LAYOUT_ansi_87": { - "layout": [ - {"matrix":[0, 0], "x":0, "y":0}, - {"matrix":[0, 2], "x":2, "y":0}, - {"matrix":[0, 3], "x":3, "y":0}, - {"matrix":[0, 4], "x":4, "y":0}, - {"matrix":[0, 5], "x":5, "y":0}, - {"matrix":[0, 6], "x":6.5, "y":0}, - {"matrix":[0, 7], "x":7.5, "y":0}, - {"matrix":[0, 8], "x":8.5, "y":0}, - {"matrix":[0, 9], "x":9.5, "y":0}, - {"matrix":[0,10], "x":11, "y":0}, - {"matrix":[0,11], "x":12, "y":0}, - {"matrix":[0,12], "x":13, "y":0}, - {"matrix":[0,13], "x":14, "y":0}, - {"matrix":[0,14], "x":15.25, "y":0}, - {"matrix":[0,15], "x":16.25, "y":0}, - {"matrix":[0,16], "x":17.25, "y":0}, - - {"matrix":[1, 0], "x":0, "y":1.25}, - {"matrix":[1, 1], "x":1, "y":1.25}, - {"matrix":[1, 2], "x":2, "y":1.25}, - {"matrix":[1, 3], "x":3, "y":1.25}, - {"matrix":[1, 4], "x":4, "y":1.25}, - {"matrix":[1, 5], "x":5, "y":1.25}, - {"matrix":[1, 6], "x":6, "y":1.25}, - {"matrix":[1, 7], "x":7, "y":1.25}, - {"matrix":[1, 8], "x":8, "y":1.25}, - {"matrix":[1, 9], "x":9, "y":1.25}, - {"matrix":[1,10], "x":10, "y":1.25}, - {"matrix":[1,11], "x":11, "y":1.25}, - {"matrix":[1,12], "x":12, "y":1.25}, - {"matrix":[1,13], "x":13, "y":1.25, "w":2}, - {"matrix":[1,14], "x":15.25, "y":1.25}, - {"matrix":[1,15], "x":16.25, "y":1.25}, - {"matrix":[1,16], "x":17.25, "y":1.25}, - - {"matrix":[2, 0], "x":0, "y":2.25, "w":1.5}, - {"matrix":[2, 1], "x":1.5, "y":2.25}, - {"matrix":[2, 2], "x":2.5, "y":2.25}, - {"matrix":[2, 3], "x":3.5, "y":2.25}, - {"matrix":[2, 4], "x":4.5, "y":2.25}, - {"matrix":[2, 5], "x":5.5, "y":2.25}, - {"matrix":[2, 6], "x":6.5, "y":2.25}, - {"matrix":[2, 7], "x":7.5, "y":2.25}, - {"matrix":[2, 8], "x":8.5, "y":2.25}, - {"matrix":[2, 9], "x":9.5, "y":2.25}, - {"matrix":[2,10], "x":10.5, "y":2.25}, - {"matrix":[2,11], "x":11.5, "y":2.25}, - {"matrix":[2,12], "x":12.5, "y":2.25}, - {"matrix":[2,13], "x":13.5, "y":2.25, "w":1.5}, - {"matrix":[2,14], "x":15.25, "y":2.25}, - {"matrix":[2,15], "x":16.25, "y":2.25}, - {"matrix":[2,16], "x":17.25, "y":2.25}, - - {"matrix":[3, 0], "x":0, "y":3.25, "w":1.75}, - {"matrix":[3, 1], "x":1.75, "y":3.25}, - {"matrix":[3, 2], "x":2.75, "y":3.25}, - {"matrix":[3, 3], "x":3.75, "y":3.25}, - {"matrix":[3, 4], "x":4.75, "y":3.25}, - {"matrix":[3, 5], "x":5.75, "y":3.25}, - {"matrix":[3, 6], "x":6.75, "y":3.25}, - {"matrix":[3, 7], "x":7.75, "y":3.25}, - {"matrix":[3, 8], "x":8.75, "y":3.25}, - {"matrix":[3, 9], "x":9.75, "y":3.25}, - {"matrix":[3,10], "x":10.75, "y":3.25}, - {"matrix":[3,11], "x":11.75, "y":3.25}, - {"matrix":[3,13], "x":12.75, "y":3.25, "w":2.25}, - - {"matrix":[4, 0], "x":0, "y":4.25, "w":2.25}, - {"matrix":[4, 2], "x":2.25, "y":4.25}, - {"matrix":[4, 3], "x":3.25, "y":4.25}, - {"matrix":[4, 4], "x":4.25, "y":4.25}, - {"matrix":[4, 5], "x":5.25, "y":4.25}, - {"matrix":[4, 6], "x":6.25, "y":4.25}, - {"matrix":[4, 7], "x":7.25, "y":4.25}, - {"matrix":[4, 8], "x":8.25, "y":4.25}, - {"matrix":[4, 9], "x":9.25, "y":4.25}, - {"matrix":[4,10], "x":10.25, "y":4.25}, - {"matrix":[4,11], "x":11.25, "y":4.25}, - {"matrix":[4,13], "x":12.25, "y":4.25, "w":2.75}, - {"matrix":[4,15], "x":16.25, "y":4.25}, - - {"matrix":[5, 0], "x":0, "y":5.25, "w":1.25}, - {"matrix":[5, 1], "x":1.25, "y":5.25, "w":1.25}, - {"matrix":[5, 2], "x":2.5, "y":5.25, "w":1.25}, - {"matrix":[5, 6], "x":3.75, "y":5.25, "w":6.25}, - {"matrix":[5,10], "x":10, "y":5.25, "w":1.25}, - {"matrix":[5,11], "x":11.25, "y":5.25, "w":1.25}, - {"matrix":[5,12], "x":12.5, "y":5.25, "w":1.25}, - {"matrix":[5,13], "x":13.75, "y":5.25, "w":1.25}, - {"matrix":[5,14], "x":15.25, "y":5.25}, - {"matrix":[5,15], "x":16.25, "y":5.25}, - {"matrix":[5,16], "x":17.25, "y":5.25} - ] - }, - "LAYOUT_iso_88": { - "layout": [ - {"matrix":[0, 0], "x":0, "y":0}, - {"matrix":[0, 2], "x":2, "y":0}, - {"matrix":[0, 3], "x":3, "y":0}, - {"matrix":[0, 4], "x":4, "y":0}, - {"matrix":[0, 5], "x":5, "y":0}, - {"matrix":[0, 6], "x":6.5, "y":0}, - {"matrix":[0, 7], "x":7.5, "y":0}, - {"matrix":[0, 8], "x":8.5, "y":0}, - {"matrix":[0, 9], "x":9.5, "y":0}, - {"matrix":[0,10], "x":11, "y":0}, - {"matrix":[0,11], "x":12, "y":0}, - {"matrix":[0,12], "x":13, "y":0}, - {"matrix":[0,13], "x":14, "y":0}, - {"matrix":[0,14], "x":15.25, "y":0}, - {"matrix":[0,15], "x":16.25, "y":0}, - {"matrix":[0,16], "x":17.25, "y":0}, - - {"matrix":[1, 0], "x":0, "y":1.25}, - {"matrix":[1, 1], "x":1, "y":1.25}, - {"matrix":[1, 2], "x":2, "y":1.25}, - {"matrix":[1, 3], "x":3, "y":1.25}, - {"matrix":[1, 4], "x":4, "y":1.25}, - {"matrix":[1, 5], "x":5, "y":1.25}, - {"matrix":[1, 6], "x":6, "y":1.25}, - {"matrix":[1, 7], "x":7, "y":1.25}, - {"matrix":[1, 8], "x":8, "y":1.25}, - {"matrix":[1, 9], "x":9, "y":1.25}, - {"matrix":[1,10], "x":10, "y":1.25}, - {"matrix":[1,11], "x":11, "y":1.25}, - {"matrix":[1,12], "x":12, "y":1.25}, - {"matrix":[1,13], "x":13, "y":1.25, "w":2}, - {"matrix":[1,14], "x":15.25, "y":1.25}, - {"matrix":[1,15], "x":16.25, "y":1.25}, - {"matrix":[1,16], "x":17.25, "y":1.25}, - - {"matrix":[2, 0], "x":0, "y":2.25, "w":1.5}, - {"matrix":[2, 1], "x":1.5, "y":2.25}, - {"matrix":[2, 2], "x":2.5, "y":2.25}, - {"matrix":[2, 3], "x":3.5, "y":2.25}, - {"matrix":[2, 4], "x":4.5, "y":2.25}, - {"matrix":[2, 5], "x":5.5, "y":2.25}, - {"matrix":[2, 6], "x":6.5, "y":2.25}, - {"matrix":[2, 7], "x":7.5, "y":2.25}, - {"matrix":[2, 8], "x":8.5, "y":2.25}, - {"matrix":[2, 9], "x":9.5, "y":2.25}, - {"matrix":[2,10], "x":10.5, "y":2.25}, - {"matrix":[2,11], "x":11.5, "y":2.25}, - {"matrix":[2,12], "x":12.5, "y":2.25}, - {"matrix":[2,14], "x":15.25, "y":2.25}, - {"matrix":[2,15], "x":16.25, "y":2.25}, - {"matrix":[2,16], "x":17.25, "y":2.25}, - - {"matrix":[3, 0], "x":0, "y":3.25, "w":1.75}, - {"matrix":[3, 1], "x":1.75, "y":3.25}, - {"matrix":[3, 2], "x":2.75, "y":3.25}, - {"matrix":[3, 3], "x":3.75, "y":3.25}, - {"matrix":[3, 4], "x":4.75, "y":3.25}, - {"matrix":[3, 5], "x":5.75, "y":3.25}, - {"matrix":[3, 6], "x":6.75, "y":3.25}, - {"matrix":[3, 7], "x":7.75, "y":3.25}, - {"matrix":[3, 8], "x":8.75, "y":3.25}, - {"matrix":[3, 9], "x":9.75, "y":3.25}, - {"matrix":[3,10], "x":10.75, "y":3.25}, - {"matrix":[3,11], "x":11.75, "y":3.25}, - {"matrix":[3,13], "x":12.75, "y":3.25}, - {"matrix":[2,13], "x":13.75, "y":2.25, "w":1.25, "h":2}, - - {"matrix":[4, 0], "x":0, "y":4.25, "w":1.25}, - {"matrix":[4, 1], "x":1.25, "y":4.25}, - {"matrix":[4, 2], "x":2.25, "y":4.25}, - {"matrix":[4, 3], "x":3.25, "y":4.25}, - {"matrix":[4, 4], "x":4.25, "y":4.25}, - {"matrix":[4, 5], "x":5.25, "y":4.25}, - {"matrix":[4, 6], "x":6.25, "y":4.25}, - {"matrix":[4, 7], "x":7.25, "y":4.25}, - {"matrix":[4, 8], "x":8.25, "y":4.25}, - {"matrix":[4, 9], "x":9.25, "y":4.25}, - {"matrix":[4,10], "x":10.25, "y":4.25}, - {"matrix":[4,11], "x":11.25, "y":4.25}, - {"matrix":[4,13], "x":12.25, "y":4.25, "w":2.75}, - {"matrix":[4,15], "x":16.25, "y":4.25}, - - {"matrix":[5, 0], "x":0, "y":5.25, "w":1.25}, - {"matrix":[5, 1], "x":1.25, "y":5.25, "w":1.25}, - {"matrix":[5, 2], "x":2.5, "y":5.25, "w":1.25}, - {"matrix":[5, 6], "x":3.75, "y":5.25, "w":6.25}, - {"matrix":[5,10], "x":10, "y":5.25, "w":1.25}, - {"matrix":[5,11], "x":11.25, "y":5.25, "w":1.25}, - {"matrix":[5,12], "x":12.5, "y":5.25, "w":1.25}, - {"matrix":[5,13], "x":13.75, "y":5.25, "w":1.25}, - {"matrix":[5,14], "x":15.25, "y":5.25}, - {"matrix":[5,15], "x":16.25, "y":5.25}, - {"matrix":[5,16], "x":17.25, "y":5.25} - ] - }, - "LAYOUT_jis_91": { - "layout": [ - {"matrix":[0, 0], "x":0, "y":0}, - {"matrix":[0, 2], "x":2, "y":0}, - {"matrix":[0, 3], "x":3, "y":0}, - {"matrix":[0, 4], "x":4, "y":0}, - {"matrix":[0, 5], "x":5, "y":0}, - {"matrix":[0, 6], "x":6.5, "y":0}, - {"matrix":[0, 7], "x":7.5, "y":0}, - {"matrix":[0, 8], "x":8.5, "y":0}, - {"matrix":[0, 9], "x":9.5, "y":0}, - {"matrix":[0,10], "x":11, "y":0}, - {"matrix":[0,11], "x":12, "y":0}, - {"matrix":[0,12], "x":13, "y":0}, - {"matrix":[0,13], "x":14, "y":0}, - {"matrix":[0,14], "x":15.25, "y":0}, - {"matrix":[0,15], "x":16.25, "y":0}, - {"matrix":[0,16], "x":17.25, "y":0}, - - {"matrix":[1, 0], "x":0, "y":1.25}, - {"matrix":[1, 1], "x":1, "y":1.25}, - {"matrix":[1, 2], "x":2, "y":1.25}, - {"matrix":[1, 3], "x":3, "y":1.25}, - {"matrix":[1, 4], "x":4, "y":1.25}, - {"matrix":[1, 5], "x":5, "y":1.25}, - {"matrix":[1, 6], "x":6, "y":1.25}, - {"matrix":[1, 7], "x":7, "y":1.25}, - {"matrix":[1, 8], "x":8, "y":1.25}, - {"matrix":[1, 9], "x":9, "y":1.25}, - {"matrix":[1,10], "x":10, "y":1.25}, - {"matrix":[1,11], "x":11, "y":1.25}, - {"matrix":[1,12], "x":12, "y":1.25}, - {"matrix":[0, 1], "x":13, "y":1.25}, - {"matrix":[1,13], "x":14, "y":1.25}, - {"matrix":[1,14], "x":15.25, "y":1.25}, - {"matrix":[1,15], "x":16.25, "y":1.25}, - {"matrix":[1,16], "x":17.25, "y":1.25}, - - {"matrix":[2, 0], "x":0, "y":2.25, "w":1.5}, - {"matrix":[2, 1], "x":1.5, "y":2.25}, - {"matrix":[2, 2], "x":2.5, "y":2.25}, - {"matrix":[2, 3], "x":3.5, "y":2.25}, - {"matrix":[2, 4], "x":4.5, "y":2.25}, - {"matrix":[2, 5], "x":5.5, "y":2.25}, - {"matrix":[2, 6], "x":6.5, "y":2.25}, - {"matrix":[2, 7], "x":7.5, "y":2.25}, - {"matrix":[2, 8], "x":8.5, "y":2.25}, - {"matrix":[2, 9], "x":9.5, "y":2.25}, - {"matrix":[2,10], "x":10.5, "y":2.25}, - {"matrix":[2,11], "x":11.5, "y":2.25}, - {"matrix":[2,12], "x":12.5, "y":2.25}, - {"matrix":[2,14], "x":15.25, "y":2.25}, - {"matrix":[2,15], "x":16.25, "y":2.25}, - {"matrix":[2,16], "x":17.25, "y":2.25}, - - {"matrix":[3, 0], "x":0, "y":3.25, "w":1.75}, - {"matrix":[3, 1], "x":1.75, "y":3.25}, - {"matrix":[3, 2], "x":2.75, "y":3.25}, - {"matrix":[3, 3], "x":3.75, "y":3.25}, - {"matrix":[3, 4], "x":4.75, "y":3.25}, - {"matrix":[3, 5], "x":5.75, "y":3.25}, - {"matrix":[3, 6], "x":6.75, "y":3.25}, - {"matrix":[3, 7], "x":7.75, "y":3.25}, - {"matrix":[3, 8], "x":8.75, "y":3.25}, - {"matrix":[3, 9], "x":9.75, "y":3.25}, - {"matrix":[3,10], "x":10.75, "y":3.25}, - {"matrix":[3,11], "x":11.75, "y":3.25}, - {"matrix":[3,13], "x":12.75, "y":3.25}, - {"matrix":[2,13], "x":13.75, "y":2.25, "w": 1.25,"h": 2}, - - {"matrix":[4, 0], "x":0, "y":4.25, "w":2.25}, - {"matrix":[4, 2], "x":2.25, "y":4.25}, - {"matrix":[4, 3], "x":3.25, "y":4.25}, - {"matrix":[4, 4], "x":4.25, "y":4.25}, - {"matrix":[4, 5], "x":5.25, "y":4.25}, - {"matrix":[4, 6], "x":6.25, "y":4.25}, - {"matrix":[4, 7], "x":7.25, "y":4.25}, - {"matrix":[4, 8], "x":8.25, "y":4.25}, - {"matrix":[4, 9], "x":9.25, "y":4.25}, - {"matrix":[4,10], "x":10.25, "y":4.25}, - {"matrix":[4,11], "x":11.25, "y":4.25}, - {"matrix":[4,12], "x":12.25, "y":4.25}, - {"matrix":[4,13], "x":13.25, "y":4.25, "w":1.75}, - {"matrix":[4,15], "x":16.25, "y":4.25}, - - {"matrix":[5, 0], "x":0, "y":5.25, "w":1.25}, - {"matrix":[5, 1], "x":1.25, "y":5.25}, - {"matrix":[5, 2], "x":2.25, "y":5.25, "w":1.25}, - {"matrix":[5, 3], "x":3.5, "y":5.25}, - {"matrix":[5, 6], "x":4.5, "y":5.25, "w":4.5}, - {"matrix":[5, 9], "x":9, "y":5.25}, - {"matrix":[5,10], "x":10, "y":5.25, "w":1.25}, - {"matrix":[5,11], "x":11.25, "y":5.25, "w":1.25}, - {"matrix":[5,12], "x":12.5, "y":5.25, "w":1.25}, - {"matrix":[5,13], "x":13.75, "y":5.25, "w":1.25}, - {"matrix":[5,14], "x":15.25, "y":5.25}, - {"matrix":[5,15], "x":16.25, "y":5.25}, - {"matrix":[5,16], "x":17.25, "y":5.25} - ] - } - } -} diff --git a/keyboards/keychron/k8_max/iso/rgb/config.h b/keyboards/keychron/k8_max/iso/rgb/config.h deleted file mode 100644 index cac551f5ec..0000000000 --- a/keyboards/keychron/k8_max/iso/rgb/config.h +++ /dev/null @@ -1,55 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#pragma once - -#ifdef RGB_MATRIX_ENABLE -/* RGB Matrix driver configuration */ -# define RGB_MATRIX_LED_COUNT 88 -# define DRIVER_COUNT 2 -# define DRIVER_CS_PINS \ - { A8, C9 } - -#ifdef LK_WIRELESS_ENABLE -# define BT_HOST_LED_MATRIX_LIST \ - { 17, 18, 19 } - -# define P2P4G_HOST_LED_MATRIX_LIST \ - { 20 } - -# define BAT_LEVEL_LED_LIST \ - { 17, 18, 19, 20, 21, 22, 23, 24, 25, 26 } -#endif - -/* Scan phase of led driver set as MSKPHASE_9CHANNEL(defined as 0x03 in snled27351.h) */ -# define SNLED27351_PHASE_CHANNEL MSKPHASE_9CHANNEL - -/* Set LED driver current */ -# define SNLED27351_CURRENT_TUNE \ - { 0x2C, 0x2C, 0x2C, 0x2C, 0x2C, 0x2C, 0x2C, 0x2C, 0x2C, 0x2C, 0x2C, 0x2C } - -/* Set to infinit, which is use in USB mode by default */ -# define RGB_MATRIX_TIMEOUT RGB_MATRIX_TIMEOUT_INFINITE -/* Allow shutdown of led driver to save power */ -# define RGB_MATRIX_DRIVER_SHUTDOWN_ENABLE -/* Turn off backlight on low brightness to save power */ -# define RGB_MATRIX_BRIGHTNESS_TURN_OFF_VAL 48 - -# define RGB_MATRIX_KEYPRESSES -# define RGB_MATRIX_FRAMEBUFFER_EFFECTS -#endif - - diff --git a/keyboards/keychron/k8_max/iso/rgb/info.json b/keyboards/keychron/k8_max/iso/rgb/info.json deleted file mode 100644 index 2750b18ed7..0000000000 --- a/keyboards/keychron/k8_max/iso/rgb/info.json +++ /dev/null @@ -1,36 +0,0 @@ -{ - "usb": { - "pid": "0x0A81", - "device_version": "1.0.0" - }, - "features": { - "rgb_matrix": true - }, - "rgb_matrix": { - "driver": "snled27351_spi", - "sleep": true, - "animations": { - "band_spiral_val": true, - "breathing": true, - "cycle_all": true, - "cycle_left_right": true, - "cycle_out_in": true, - "cycle_out_in_dual": true, - "cycle_pinwheel": true, - "cycle_spiral": true, - "cycle_up_down": true, - "digital_rain": true, - "dual_beacon": true, - "jellybean_raindrops": true, - "pixel_rain": true, - "rainbow_beacon": true, - "rainbow_moving_chevron": true, - "solid_reactive_multinexus": true, - "solid_reactive_multiwide": true, - "solid_reactive_simple": true, - "solid_splash": true, - "splash": true, - "typing_heatmap": true - } - } -} diff --git a/keyboards/keychron/k8_max/iso/rgb/keymaps/default/keymap.c b/keyboards/keychron/k8_max/iso/rgb/keymaps/default/keymap.c deleted file mode 100644 index 24e0a26410..0000000000 --- a/keyboards/keychron/k8_max/iso/rgb/keymaps/default/keymap.c +++ /dev/null @@ -1,67 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#include QMK_KEYBOARD_H -#include "keychron_common.h" - -enum layers { - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN, -}; -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_iso_88( - KC_ESC, KC_BRID, KC_BRIU, KC_MCTRL, KC_LNPAD, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_SNAP, KC_SIRI, RGB_MOD, - KC_GRV, 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_INS, KC_HOME, KC_PGUP, - 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_DEL, KC_END, KC_PGDN, - 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_NUHS, KC_ENT, - KC_LSFT, KC_NUBS, 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_LCTL, KC_LOPTN, KC_LCMMD, KC_SPC, KC_RCMMD, KC_ROPTN,MO(MAC_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - - [MAC_FN] = LAYOUT_iso_88( - _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, RGB_TOG, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - - [WIN_BASE] = LAYOUT_iso_88( - KC_ESC, 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_PSCR, KC_CTANA, RGB_MOD, - KC_GRV, 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_INS, KC_HOME, KC_PGUP, - 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_DEL, KC_END, KC_PGDN, - 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_NUHS, KC_ENT, - KC_LSFT, KC_NUBS, 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_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, KC_RGUI, MO(WIN_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - - [WIN_FN] = LAYOUT_iso_88( - _______, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, RGB_TOG, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______) -}; - -// clang-format on -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - if (!process_record_keychron_common(keycode, record)) { - return false; - } - return true; -} diff --git a/keyboards/keychron/k8_max/iso/rgb/keymaps/via/keymap.c b/keyboards/keychron/k8_max/iso/rgb/keymaps/via/keymap.c deleted file mode 100644 index 24e0a26410..0000000000 --- a/keyboards/keychron/k8_max/iso/rgb/keymaps/via/keymap.c +++ /dev/null @@ -1,67 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#include QMK_KEYBOARD_H -#include "keychron_common.h" - -enum layers { - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN, -}; -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_iso_88( - KC_ESC, KC_BRID, KC_BRIU, KC_MCTRL, KC_LNPAD, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_SNAP, KC_SIRI, RGB_MOD, - KC_GRV, 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_INS, KC_HOME, KC_PGUP, - 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_DEL, KC_END, KC_PGDN, - 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_NUHS, KC_ENT, - KC_LSFT, KC_NUBS, 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_LCTL, KC_LOPTN, KC_LCMMD, KC_SPC, KC_RCMMD, KC_ROPTN,MO(MAC_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - - [MAC_FN] = LAYOUT_iso_88( - _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, RGB_TOG, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - - [WIN_BASE] = LAYOUT_iso_88( - KC_ESC, 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_PSCR, KC_CTANA, RGB_MOD, - KC_GRV, 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_INS, KC_HOME, KC_PGUP, - 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_DEL, KC_END, KC_PGDN, - 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_NUHS, KC_ENT, - KC_LSFT, KC_NUBS, 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_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, KC_RGUI, MO(WIN_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - - [WIN_FN] = LAYOUT_iso_88( - _______, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, RGB_TOG, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______) -}; - -// clang-format on -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - if (!process_record_keychron_common(keycode, record)) { - return false; - } - return true; -} diff --git a/keyboards/keychron/k8_max/iso/rgb/keymaps/via/rules.mk b/keyboards/keychron/k8_max/iso/rgb/keymaps/via/rules.mk deleted file mode 100644 index 1e5b99807c..0000000000 --- a/keyboards/keychron/k8_max/iso/rgb/keymaps/via/rules.mk +++ /dev/null @@ -1 +0,0 @@ -VIA_ENABLE = yes diff --git a/keyboards/keychron/k8_max/iso/rgb/rgb.c b/keyboards/keychron/k8_max/iso/rgb/rgb.c deleted file mode 100644 index 3bbe9a0c62..0000000000 --- a/keyboards/keychron/k8_max/iso/rgb/rgb.c +++ /dev/null @@ -1,155 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#include "quantum.h" - -// clang-format off -#ifdef RGB_MATRIX_ENABLE -const snled27351_led_t PROGMEM g_snled27351_leds[RGB_MATRIX_LED_COUNT] = { -/* Refer to SNLED27351 manual for these locations - * driver - * | R location - * | | G location - * | | | B location - * | | | | */ - {0, G_16, I_16, H_16}, - {0, G_14, I_14, H_14}, - {0, G_13, I_13, H_13}, - {0, G_12, I_12, H_12}, - {0, G_11, I_11, H_11}, - {0, G_10, I_10, H_10}, - {0, G_9, I_9, H_9}, - {0, G_8, I_8, H_8}, - {0, G_7, I_7, H_7}, - {0, G_6, I_6, H_6}, - {0, G_5, I_5, H_5}, - {0, G_4, I_4, H_4}, - {0, G_3, I_3, H_3}, - {0, G_2, I_2, H_2}, - {0, G_1, I_1, H_1}, - {1, A_4, C_4, B_4}, - - {0, A_16, C_16, B_16}, - {0, A_15, C_15, B_15}, - {0, A_14, C_14, B_14}, - {0, A_13, C_13, B_13}, - {0, A_12, C_12, B_12}, - {0, A_11, C_11, B_11}, - {0, A_10, C_10, B_10}, - {0, A_9, C_9, B_9}, - {0, A_8, C_8, B_8}, - {0, A_7, C_7, B_7}, - {0, A_6, C_6, B_6}, - {0, A_5, C_5, B_5}, - {0, A_4, C_4, B_4}, - {0, A_3, C_3, B_3}, - {0, A_2, C_2, B_2}, - {0, A_1, C_1, B_1}, - {1, A_1, C_1, B_1}, - - {0, D_16, F_16, E_16}, - {0, D_15, F_15, E_15}, - {0, D_14, F_14, E_14}, - {0, D_13, F_13, E_13}, - {0, D_12, F_12, E_12}, - {0, D_11, F_11, E_11}, - {0, D_10, F_10, E_10}, - {0, D_9, F_9, E_9}, - {0, D_8, F_8, E_8}, - {0, D_7, F_7, E_7}, - {0, D_6, F_6, E_6}, - {0, D_5, F_5, E_5}, - {0, D_4, F_4, E_4}, - {0, D_3, F_3, E_3}, - {0, D_2, F_2, E_2}, - {0, D_1, F_1, E_1}, - {1, A_2, C_2, B_2}, - - {1, A_16, C_16, B_16}, - {1, A_15, C_15, B_15}, - {1, A_14, C_14, B_14}, - {1, A_13, C_13, B_13}, - {1, A_12, C_12, B_12}, - {1, A_11, C_11, B_11}, - {1, A_10, C_10, B_10}, - {1, A_9, C_9, B_9}, - {1, A_8, C_8, B_8}, - {1, A_7, C_7, B_7}, - {1, A_6, C_6, B_6}, - {1, A_5, C_5, B_5}, - {1, A_3, C_3, B_3}, - - {1, G_16, I_16, H_16}, - {1, G_15, I_15, H_15}, - {1, G_14, I_14, H_14}, - {1, G_13, I_13, H_13}, - {1, G_12, I_12, H_12}, - {1, G_11, I_11, H_11}, - {1, G_10, I_10, H_10}, - {1, G_9, I_9, H_9}, - {1, G_8, I_8, H_8}, - {1, G_7, I_7, H_7}, - {1, G_6, I_6, H_6}, - {1, G_5, I_5, H_5}, - {1, G_3, I_3, H_3}, - {1, G_1, I_1, H_1}, - - {1, D_16, F_16, E_16}, - {1, D_15, F_15, E_15}, - {1, D_14, F_14, E_14}, - {1, D_10, F_10, E_10}, - {1, D_6, F_6, E_6}, - {1, D_5, F_5, E_5}, - {1, D_4, F_4, E_4}, - {1, D_3, F_3, E_3}, - {1, D_2, F_2, E_2}, - {1, D_1, F_1, E_1}, - {1, G_2, I_2, H_2}, -}; - -#define __ NO_LED - -led_config_t g_led_config = { - { - // Key Matrix to RGB Index - { 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, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49 }, - { 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, __, 62, __, __, __ }, - { 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, __, 75, __, 76, __ }, - { 77, 78, 79, __, __, __, 80, __, __, __, 81, 82, 83, 84, 85, 86, 87 }, - }, - { - // RGB Index to Physical Position - {0, 0}, {25, 0}, {38, 0}, {51, 0}, {64, 0}, {84, 0}, {97, 0}, {110, 0}, {123, 0}, {142, 0}, {155, 0}, {168, 0}, {179, 0}, {198, 0}, {211, 0}, {224, 0}, - {0,14}, {12,14}, {25,14}, {38,14}, {51,14}, {64,14}, {77,14}, {90,14}, {103,14}, {116,14}, {129,14}, {142,14}, {155,14}, {175,14}, {198,14}, {211,14}, {224,14}, - {3,26}, {19,26}, {32,26}, {45,26}, {58,26}, {71,26}, {84,26}, {97,26}, {110,26}, {123,26}, {136,26}, {149,26}, {162,26}, {178,32}, {198,26}, {211,26}, {224,26}, - {4,39}, {22,39}, {35,39}, {48,39}, {61,39}, {74,39}, {87,39}, {100,39}, {113,39}, {126,39}, {139,39}, {152,39}, {165,39}, - {1,51}, {15,39}, {29,51}, {42,51}, {55,51}, {68,51}, {81,51}, {94,51}, {107,51}, {120,51}, {132,51}, {145,51}, {171,51}, {211,51}, - {1,64}, {17,64}, {34,64}, {82,64}, {131,64}, {147,64}, {163,64}, {179,64}, {198,64}, {211,64}, {224,64} - }, - { - // RGB Index to Flag - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - } -}; - -#endif diff --git a/keyboards/keychron/k8_max/iso/rgb/rules.mk b/keyboards/keychron/k8_max/iso/rgb/rules.mk deleted file mode 100644 index 6e7633bfe0..0000000000 --- a/keyboards/keychron/k8_max/iso/rgb/rules.mk +++ /dev/null @@ -1 +0,0 @@ -# This file intentionally left blank diff --git a/keyboards/keychron/k8_max/iso/white/config.h b/keyboards/keychron/k8_max/iso/white/config.h deleted file mode 100644 index f118f82522..0000000000 --- a/keyboards/keychron/k8_max/iso/white/config.h +++ /dev/null @@ -1,54 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#pragma once - -#ifdef LED_MATRIX_ENABLE -/* LED matrix driver configuration */ -# define LED_MATRIX_LED_COUNT 88 -# define DRIVER_COUNT 1 -# define DRIVER_CS_PINS \ - { C9 } - -# define LED_MATRIX_VAL_STEP 16 - -# ifdef LK_WIRELESS_ENABLE -# define BT_HOST_LED_MATRIX_LIST \ - { 17, 18, 19 } - -# define P2P4G_HOST_LED_MATRIX_LIST \ - { 20 } - -# define BAT_LEVEL_LED_LIST \ - { 17, 18, 19, 20, 21, 22, 23, 24, 25, 26 } -# endif - -/* Use first 8 channels of LED driver */ -# define SNLED27351_PHASE_CHANNEL MSKPHASE_8CHANNEL - -/* Set LED driver current */ -# define SNLED27351_CURRENT_TUNE \ - { 0x60, 0x60, 0x60, 0x60, 0x60, 0x60, 0x60, 0x60, 0x60, 0x60, 0x60, 0x60 } - -/* Set to infinit, which is use in USB mode by default */ -# define LED_MATRIX_TIMEOUT LED_MATRIX_TIMEOUT_INFINITE -/* Allow shutdown of led driver to save power */ -# define LED_MATRIX_DRIVER_SHUTDOWN_ENABLE -/* Turn off backlight on low brightness to save power */ -# define LED_MATRIX_BRIGHTNESS_TURN_OFF_VAL 48 - -# define LED_MATRIX_KEYPRESSES -#endif diff --git a/keyboards/keychron/k8_max/iso/white/info.json b/keyboards/keychron/k8_max/iso/white/info.json deleted file mode 100644 index 692469a47b..0000000000 --- a/keyboards/keychron/k8_max/iso/white/info.json +++ /dev/null @@ -1,30 +0,0 @@ -{ - "usb": { - "pid": "0x0A84", - "device_version": "1.0.0" - }, - "features": { - "led_matrix": true - }, - "led_matrix": { - "driver": "snled27351_spi", - "sleep": true, - "animations": { - "none": true, - "solid": true, - "breathing": true, - "band_pinwheel": true, - "band_spiral": true, - "cycle_left_right": true, - "cycle_up_down": true, - "cycle_out_in": true, - "dual_beacon": true, - "solid_reactive_simple": true, - "solid_reactive_multiwide": true, - "solid_reactive_multinexus": true, - "solid_splash": true, - "wave_left_right": true, - "wave_up_down": true - } - } -} diff --git a/keyboards/keychron/k8_max/iso/white/keymaps/default/keymap.c b/keyboards/keychron/k8_max/iso/white/keymaps/default/keymap.c deleted file mode 100644 index baa0cb57b0..0000000000 --- a/keyboards/keychron/k8_max/iso/white/keymaps/default/keymap.c +++ /dev/null @@ -1,67 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#include QMK_KEYBOARD_H -#include "keychron_common.h" - -enum layers { - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN, -}; -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_iso_88( - KC_ESC, KC_BRID, KC_BRIU, KC_MCTRL, KC_LNPAD, BL_DOWN, BL_UP, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_SNAP, KC_SIRI, BL_STEP, - KC_GRV, 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_INS, KC_HOME, KC_PGUP, - 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_DEL, KC_END, KC_PGDN, - 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_NUHS, KC_ENT, - KC_LSFT, KC_NUBS, 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_LCTL, KC_LOPTN, KC_LCMMD, KC_SPC, KC_RCMMD, KC_ROPTN,MO(MAC_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - - [MAC_FN] = LAYOUT_iso_88( - _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, BL_TOGG, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - BL_TOGG, BL_STEP, BL_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, BL_DOWN, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - - [WIN_BASE] = LAYOUT_iso_88( - KC_ESC, 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_PSCR, KC_CTANA, BL_STEP, - KC_GRV, 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_INS, KC_HOME, KC_PGUP, - 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_DEL, KC_END, KC_PGDN, - 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_NUHS, KC_ENT, - KC_LSFT, KC_NUBS, 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_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, KC_RGUI, MO(WIN_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - - [WIN_FN] = LAYOUT_iso_88( - _______, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, BL_DOWN, BL_UP, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, BL_TOGG, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - BL_TOGG, BL_STEP, BL_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, BL_DOWN, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______) -}; - -// clang-format on -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - if (!process_record_keychron_common(keycode, record)) { - return false; - } - return true; -} diff --git a/keyboards/keychron/k8_max/iso/white/keymaps/via/keymap.c b/keyboards/keychron/k8_max/iso/white/keymaps/via/keymap.c deleted file mode 100644 index baa0cb57b0..0000000000 --- a/keyboards/keychron/k8_max/iso/white/keymaps/via/keymap.c +++ /dev/null @@ -1,67 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#include QMK_KEYBOARD_H -#include "keychron_common.h" - -enum layers { - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN, -}; -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_iso_88( - KC_ESC, KC_BRID, KC_BRIU, KC_MCTRL, KC_LNPAD, BL_DOWN, BL_UP, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_SNAP, KC_SIRI, BL_STEP, - KC_GRV, 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_INS, KC_HOME, KC_PGUP, - 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_DEL, KC_END, KC_PGDN, - 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_NUHS, KC_ENT, - KC_LSFT, KC_NUBS, 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_LCTL, KC_LOPTN, KC_LCMMD, KC_SPC, KC_RCMMD, KC_ROPTN,MO(MAC_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - - [MAC_FN] = LAYOUT_iso_88( - _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, BL_TOGG, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - BL_TOGG, BL_STEP, BL_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, BL_DOWN, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - - [WIN_BASE] = LAYOUT_iso_88( - KC_ESC, 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_PSCR, KC_CTANA, BL_STEP, - KC_GRV, 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_INS, KC_HOME, KC_PGUP, - 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_DEL, KC_END, KC_PGDN, - 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_NUHS, KC_ENT, - KC_LSFT, KC_NUBS, 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_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, KC_RGUI, MO(WIN_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - - [WIN_FN] = LAYOUT_iso_88( - _______, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, BL_DOWN, BL_UP, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, BL_TOGG, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - BL_TOGG, BL_STEP, BL_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, BL_DOWN, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______) -}; - -// clang-format on -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - if (!process_record_keychron_common(keycode, record)) { - return false; - } - return true; -} diff --git a/keyboards/keychron/k8_max/iso/white/keymaps/via/rules.mk b/keyboards/keychron/k8_max/iso/white/keymaps/via/rules.mk deleted file mode 100644 index 1e5b99807c..0000000000 --- a/keyboards/keychron/k8_max/iso/white/keymaps/via/rules.mk +++ /dev/null @@ -1 +0,0 @@ -VIA_ENABLE = yes diff --git a/keyboards/keychron/k8_max/iso/white/rules.mk b/keyboards/keychron/k8_max/iso/white/rules.mk deleted file mode 100644 index 6e7633bfe0..0000000000 --- a/keyboards/keychron/k8_max/iso/white/rules.mk +++ /dev/null @@ -1 +0,0 @@ -# This file intentionally left blank diff --git a/keyboards/keychron/k8_max/iso/white/white.c b/keyboards/keychron/k8_max/iso/white/white.c deleted file mode 100644 index 4177169f63..0000000000 --- a/keyboards/keychron/k8_max/iso/white/white.c +++ /dev/null @@ -1,153 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#include "quantum.h" - -// clang-format off -#ifdef LED_MATRIX_ENABLE -const snled27351_led_t g_snled27351_leds[LED_MATRIX_LED_COUNT] = { -/* Refer to SNLED27351 manual for these locations - * driver - * | LED address - * | | */ - {0, A_16}, - {0, A_14}, - {0, A_13}, - {0, A_12}, - {0, A_11}, - {0, A_10}, - {0, A_9}, - {0, A_8}, - {0, A_7}, - {0, A_6}, - {0, A_5}, - {0, A_4}, - {0, A_3}, - {0, A_2}, - {0, A_1}, - {0, D_2}, - - {0, B_16}, - {0, B_15}, - {0, B_14}, - {0, B_13}, - {0, B_12}, - {0, B_11}, - {0, B_10}, - {0, B_9}, - {0, B_8}, - {0, B_7}, - {0, B_6}, - {0, B_5}, - {0, B_4}, - {0, B_3}, - {0, B_2}, - {0, B_1}, - {0, E_2}, - - {0, C_16}, - {0, C_15}, - {0, C_14}, - {0, C_13}, - {0, C_12}, - {0, C_11}, - {0, C_10}, - {0, C_9}, - {0, C_8}, - {0, C_7}, - {0, C_6}, - {0, C_5}, - {0, C_4}, - {0, C_3}, - {0, C_2}, - {0, C_1}, - {0, D_1}, - - {0, D_16}, - {0, D_15}, - {0, D_14}, - {0, D_13}, - {0, D_12}, - {0, D_11}, - {0, D_10}, - {0, D_9}, - {0, D_8}, - {0, D_7}, - {0, D_6}, - {0, D_5}, - {0, D_3}, - - {0, E_16}, - {0, E_15}, - {0, E_14}, - {0, E_13}, - {0, E_12}, - {0, E_11}, - {0, E_10}, - {0, E_9}, - {0, E_8}, - {0, E_7}, - {0, E_6}, - {0, E_5}, - {0, E_3}, - {0, E_1}, - - {0, F_16}, - {0, F_15}, - {0, F_14}, - {0, F_10}, - {0, F_6}, - {0, F_5}, - {0, F_4}, - {0, F_3}, - {0, F_2}, - {0, F_1}, - {0, D_4}, -}; - -#define __ NO_LED - -led_config_t g_led_config = { - { - // Key Matrix to LED Index - { 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, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49 }, - { 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, __, 62, __, __, __ }, - { 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, __, 75, __, 76, __ }, - { 77, 78, 79, __, __, __, 80, __, __, __, 81, 82, 83, 84, 85, 86, 87 }, - }, - { - // LED Index to Physical Position - {0, 0}, {25, 0}, {38, 0}, {51, 0}, {64, 0}, {84, 0}, { 97, 0}, {110, 0}, {123, 0}, {142, 0}, {156, 0}, {168, 0}, {180, 0}, {198, 0}, {211, 0}, {224, 0}, - {0,14}, {12,14}, {25,14}, {38,14}, {51,14}, {64,14}, {77,14}, { 90,14}, {103,14}, {116,14}, {129,14}, {142,14}, {156,14}, {175,14}, {198,14}, {211,14}, {224,14}, - {3,26}, {19,26}, {32,26}, {45,26}, {58,26}, {71,26}, {84,26}, { 97,26}, {110,26}, {123,26}, {136,26}, {149,26}, {162,26}, {178,26}, {198,26}, {211,26}, {224,26}, - {4,39}, {22,39}, {35,39}, {48,39}, {61,39}, {74,39}, {87,39}, {100,39}, {113,39}, {126,39}, {139,39}, {152,39}, {165,39}, - {1,51}, {14,51}, {29,51}, {42,51}, {55,51}, {68,51}, {81,51}, {94,51}, {107,51}, {120,51}, {132,51}, {145,51}, {172,51}, {211,51}, - {1,64}, {17,64}, {34,64}, {82,64}, {131,64}, {147,64}, {164,64}, {180,64}, {198,64}, {211,64}, {224,64} - }, - { - // LED Index to Flag - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - } -}; - -#endif diff --git a/keyboards/keychron/k8_max/jis/rgb/config.h b/keyboards/keychron/k8_max/jis/rgb/config.h deleted file mode 100644 index 7c9ada33d0..0000000000 --- a/keyboards/keychron/k8_max/jis/rgb/config.h +++ /dev/null @@ -1,53 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#pragma once - -#ifdef RGB_MATRIX_ENABLE -/* RGB Matrix driver configuration */ -# define RGB_MATRIX_LED_COUNT 91 -# define DRIVER_COUNT 2 -# define DRIVER_CS_PINS \ - { A8, C9 } - -# ifdef LK_WIRELESS_ENABLE -# define BT_HOST_LED_MATRIX_LIST \ - { 18, 19, 20 } - -# define P2P4G_HOST_LED_MATRIX_LIST \ - { 21 } - -# define BAT_LEVEL_LED_LIST \ - { 18, 19, 20, 21, 22, 23, 24, 25, 26, 27 } -# endif - -/* Scan phase of led driver set as MSKPHASE_9CHANNEL(defined as 0x03 in snled27351.h) */ -# define SNLED27351_PHASE_CHANNEL MSKPHASE_9CHANNEL - -/* Set LED driver current */ -# define SNLED27351_CURRENT_TUNE \ - { 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30 } - -/* Set to infinit, which is use in USB mode by default */ -# define RGB_MATRIX_TIMEOUT RGB_MATRIX_TIMEOUT_INFINITE -/* Allow shutdown of led driver to save power */ -# define RGB_MATRIX_DRIVER_SHUTDOWN_ENABLE -/* Turn off backlight on low brightness to save power */ -# define RGB_MATRIX_BRIGHTNESS_TURN_OFF_VAL 48 - -# define RGB_MATRIX_KEYPRESSES -# define RGB_MATRIX_FRAMEBUFFER_EFFECTS -#endif diff --git a/keyboards/keychron/k8_max/jis/rgb/info.json b/keyboards/keychron/k8_max/jis/rgb/info.json deleted file mode 100644 index c9e9f7fdb9..0000000000 --- a/keyboards/keychron/k8_max/jis/rgb/info.json +++ /dev/null @@ -1,36 +0,0 @@ -{ - "usb": { - "pid": "0x0A82", - "device_version": "1.0.0" - }, - "features": { - "rgb_matrix": true - }, - "rgb_matrix": { - "driver": "snled27351_spi", - "sleep": true, - "animations": { - "band_spiral_val": true, - "breathing": true, - "cycle_all": true, - "cycle_left_right": true, - "cycle_out_in": true, - "cycle_out_in_dual": true, - "cycle_pinwheel": true, - "cycle_spiral": true, - "cycle_up_down": true, - "digital_rain": true, - "dual_beacon": true, - "jellybean_raindrops": true, - "pixel_rain": true, - "rainbow_beacon": true, - "rainbow_moving_chevron": true, - "solid_reactive_multinexus": true, - "solid_reactive_multiwide": true, - "solid_reactive_simple": true, - "solid_splash": true, - "splash": true, - "typing_heatmap": true - } - } -} diff --git a/keyboards/keychron/k8_max/jis/rgb/keymaps/default/keymap.c b/keyboards/keychron/k8_max/jis/rgb/keymaps/default/keymap.c deleted file mode 100644 index 12e66ecd3b..0000000000 --- a/keyboards/keychron/k8_max/jis/rgb/keymaps/default/keymap.c +++ /dev/null @@ -1,67 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#include QMK_KEYBOARD_H -#include "keychron_common.h" - -enum layers { - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN, -}; -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_jis_91( - KC_ESC, KC_BRID, KC_BRIU, KC_MCTRL, KC_LNPAD, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_SNAP, KC_SIRI, RGB_MOD, - KC_GRV, 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_INT3, KC_BSPC, KC_INS, KC_HOME, KC_PGUP, - 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_DEL, KC_END, KC_PGDN, - 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_BSLS, 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_INT1, KC_RSFT, KC_UP, - KC_LCTL, KC_LOPTN, KC_LCMMD, KC_LNG2, KC_SPC, KC_LNG1, KC_RCMMD, KC_ROPTN, MO(MAC_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - - [MAC_FN] = LAYOUT_jis_91( - _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, RGB_TOG, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - - [WIN_BASE] = LAYOUT_jis_91( - KC_ESC, 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_PSCR, KC_CTANA, RGB_MOD, - KC_GRV, 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_INT3, KC_BSPC, KC_INS, KC_HOME, KC_PGUP, - 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_DEL, KC_END, KC_PGDN, - 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_BSLS, 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_INT1, KC_RSFT, KC_UP, - KC_LCTL, KC_LGUI, KC_LALT, KC_INT5, KC_SPC, KC_INT4, KC_RALT, KC_RGUI, MO(WIN_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - - [WIN_FN] = LAYOUT_jis_91( - _______, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, RGB_TOG, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______) -}; - -// clang-format on -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - if (!process_record_keychron_common(keycode, record)) { - return false; - } - return true; -} diff --git a/keyboards/keychron/k8_max/jis/rgb/keymaps/via/keymap.c b/keyboards/keychron/k8_max/jis/rgb/keymaps/via/keymap.c deleted file mode 100644 index 12e66ecd3b..0000000000 --- a/keyboards/keychron/k8_max/jis/rgb/keymaps/via/keymap.c +++ /dev/null @@ -1,67 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#include QMK_KEYBOARD_H -#include "keychron_common.h" - -enum layers { - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN, -}; -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_jis_91( - KC_ESC, KC_BRID, KC_BRIU, KC_MCTRL, KC_LNPAD, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_SNAP, KC_SIRI, RGB_MOD, - KC_GRV, 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_INT3, KC_BSPC, KC_INS, KC_HOME, KC_PGUP, - 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_DEL, KC_END, KC_PGDN, - 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_BSLS, 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_INT1, KC_RSFT, KC_UP, - KC_LCTL, KC_LOPTN, KC_LCMMD, KC_LNG2, KC_SPC, KC_LNG1, KC_RCMMD, KC_ROPTN, MO(MAC_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - - [MAC_FN] = LAYOUT_jis_91( - _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, RGB_TOG, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - - [WIN_BASE] = LAYOUT_jis_91( - KC_ESC, 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_PSCR, KC_CTANA, RGB_MOD, - KC_GRV, 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_INT3, KC_BSPC, KC_INS, KC_HOME, KC_PGUP, - 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_DEL, KC_END, KC_PGDN, - 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_BSLS, 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_INT1, KC_RSFT, KC_UP, - KC_LCTL, KC_LGUI, KC_LALT, KC_INT5, KC_SPC, KC_INT4, KC_RALT, KC_RGUI, MO(WIN_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - - [WIN_FN] = LAYOUT_jis_91( - _______, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, RGB_TOG, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______) -}; - -// clang-format on -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - if (!process_record_keychron_common(keycode, record)) { - return false; - } - return true; -} diff --git a/keyboards/keychron/k8_max/jis/rgb/keymaps/via/rules.mk b/keyboards/keychron/k8_max/jis/rgb/keymaps/via/rules.mk deleted file mode 100644 index 1e5b99807c..0000000000 --- a/keyboards/keychron/k8_max/jis/rgb/keymaps/via/rules.mk +++ /dev/null @@ -1 +0,0 @@ -VIA_ENABLE = yes diff --git a/keyboards/keychron/k8_max/jis/rgb/rgb.c b/keyboards/keychron/k8_max/jis/rgb/rgb.c deleted file mode 100644 index 48fa130a37..0000000000 --- a/keyboards/keychron/k8_max/jis/rgb/rgb.c +++ /dev/null @@ -1,159 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#include "quantum.h" - -// clang-format off -#ifdef RGB_MATRIX_ENABLE -const snled27351_led_t PROGMEM g_snled27351_leds[RGB_MATRIX_LED_COUNT] = { -/* Refer to SNLED27351 manual for these locations - * driver - * | R location - * | | G location - * | | | B location - * | | | | */ - {0, G_16, I_16, H_16}, - {0, G_15, I_15, H_15}, - {0, G_14, I_14, H_14}, - {0, G_13, I_13, H_13}, - {0, G_12, I_12, H_12}, - {0, G_11, I_11, H_11}, - {0, G_10, I_10, H_10}, - {0, G_9, I_9, H_9}, - {0, G_8, I_8, H_8}, - {0, G_7, I_7, H_7}, - {0, G_6, I_6, H_6}, - {0, G_5, I_5, H_5}, - {0, G_4, I_4, H_4}, - {0, G_3, I_3, H_3}, - {0, G_2, I_2, H_2}, - {0, G_1, I_1, H_1}, - {1, A_4, C_4, B_4}, - - {0, A_16, C_16, B_16}, - {0, A_15, C_15, B_15}, - {0, A_14, C_14, B_14}, - {0, A_13, C_13, B_13}, - {0, A_12, C_12, B_12}, - {0, A_11, C_11, B_11}, - {0, A_10, C_10, B_10}, - {0, A_9, C_9, B_9}, - {0, A_8, C_8, B_8}, - {0, A_7, C_7, B_7}, - {0, A_6, C_6, B_6}, - {0, A_5, C_5, B_5}, - {0, A_4, C_4, B_4}, - {0, A_3, C_3, B_3}, - {0, A_2, C_2, B_2}, - {0, A_1, C_1, B_1}, - {1, A_1, C_1, B_1}, - - {0, D_16, F_16, E_16}, - {0, D_15, F_15, E_15}, - {0, D_14, F_14, E_14}, - {0, D_13, F_13, E_13}, - {0, D_12, F_12, E_12}, - {0, D_11, F_11, E_11}, - {0, D_10, F_10, E_10}, - {0, D_9, F_9, E_9}, - {0, D_8, F_8, E_8}, - {0, D_7, F_7, E_7}, - {0, D_6, F_6, E_6}, - {0, D_5, F_5, E_5}, - {0, D_4, F_4, E_4}, - {0, D_3, F_3, E_3}, - {0, D_2, F_2, E_2}, - {0, D_1, F_1, E_1}, - {1, A_2, C_2, B_2}, - - {1, A_16, C_16, B_16}, - {1, A_15, C_15, B_15}, - {1, A_14, C_14, B_14}, - {1, A_13, C_13, B_13}, - {1, A_12, C_12, B_12}, - {1, A_11, C_11, B_11}, - {1, A_10, C_10, B_10}, - {1, A_9, C_9, B_9}, - {1, A_8, C_8, B_8}, - {1, A_7, C_7, B_7}, - {1, A_6, C_6, B_6}, - {1, A_5, C_5, B_5}, - {1, A_3, C_3, B_3}, - - {1, G_16, I_16, H_16}, - {1, G_14, I_14, H_14}, - {1, G_13, I_13, H_13}, - {1, G_12, I_12, H_12}, - {1, G_11, I_11, H_11}, - {1, G_10, I_10, H_10}, - {1, G_9, I_9, H_9}, - {1, G_8, I_8, H_8}, - {1, G_7, I_7, H_7}, - {1, G_6, I_6, H_6}, - {1, G_5, I_5, H_5}, - {1, G_4, I_4, H_4}, - {1, G_3, I_3, H_3}, - {1, G_1, I_1, H_1}, - - {1, D_16, F_16, E_16}, - {1, D_15, F_15, E_15}, - {1, D_14, F_14, E_14}, - {1, D_13, F_13, E_13}, - {1, D_10, F_10, E_10}, - {1, D_7, F_7, E_7}, - {1, D_6, F_6, E_6}, - {1, D_5, F_5, E_5}, - {1, D_4, F_4, E_4}, - {1, D_3, F_3, E_3}, - {1, D_2, F_2, E_2}, - {1, D_1, F_1, E_1}, - {1, G_2, I_2, H_2}, -}; - -#define __ NO_LED - -led_config_t g_led_config = { - { - // Key Matrix to RGB Index - { 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, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50 }, - { 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, __, 63, __, __, __ }, - { 64, __, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, __, 77, __ }, - { 78, 79, 80, 81, __, __, 82, __, __, 83, 84, 85, 86, 87, 88, 89, 90 }, - }, - { - // RGB Index to Physical Position - {0, 0}, {168,14},{25, 0}, {38, 0}, {51, 0}, {64, 0}, {84, 0}, { 97, 0}, {110, 0}, {123, 0}, {142, 0}, {156, 0}, {168, 0}, {180, 0}, {198, 0}, {211, 0}, {224, 0}, - {0,14}, {12,14}, {25,14}, {38,14}, {51,14}, {64,14}, {77,14}, { 90,14}, {103,14}, {116,14}, {129,14}, {142,14}, {156,14}, {180,14}, {198,14}, {211,14}, {224,14}, - {3,26}, {19,26}, {32,26}, {45,26}, {58,26}, {71,26}, {84,26}, { 97,26}, {110,26}, {123,26}, {136,26}, {149,26}, {162,26}, {178,32}, {198,26}, {211,26}, {224,26}, - {4,39}, {22,39}, {35,39}, {48,39}, {61,39}, {74,39}, {87,39}, {100,39}, {113,39}, {126,39}, {139,39}, {152,39}, {165,39}, - {8,51}, {29,51}, {42,51}, {55,51}, {68,51}, {81,51}, { 94,51}, {107,51}, {120,51}, {132,51}, {145,51}, {158,51}, {172,51}, {211,51}, - {1,64}, {16,64}, {31,64}, {45,64}, {82,64}, {116,64}, {131,64}, {147,64}, {164,64}, {180,64}, {198,64}, {211,64}, {224,64} - }, - { - // RGB Index to Flag - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - } -}; - - -#endif diff --git a/keyboards/keychron/k8_max/jis/rgb/rules.mk b/keyboards/keychron/k8_max/jis/rgb/rules.mk deleted file mode 100644 index 6e7633bfe0..0000000000 --- a/keyboards/keychron/k8_max/jis/rgb/rules.mk +++ /dev/null @@ -1 +0,0 @@ -# This file intentionally left blank diff --git a/keyboards/keychron/k8_max/jis/white/config.h b/keyboards/keychron/k8_max/jis/white/config.h deleted file mode 100644 index a7050e1e64..0000000000 --- a/keyboards/keychron/k8_max/jis/white/config.h +++ /dev/null @@ -1,54 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#pragma once - -#ifdef LED_MATRIX_ENABLE -/* LED matrix driver configuration */ -# define LED_MATRIX_LED_COUNT 91 -# define DRIVER_COUNT 1 -# define DRIVER_CS_PINS \ - { C9 } - -# define LED_MATRIX_VAL_STEP 16 - -# ifdef LK_WIRELESS_ENABLE -# define BT_HOST_LED_MATRIX_LIST \ - { 18, 19, 20 } - -# define P2P4G_HOST_LED_MATRIX_LIST \ - { 21 } - -# define BAT_LEVEL_LED_LIST \ - { 18, 19, 20, 21, 22, 23, 24, 25, 26, 27 } -# endif - -/* Use first 8 channels of LED driver */ -# define SNLED27351_PHASE_CHANNEL MSKPHASE_8CHANNEL - -/* Set LED driver current */ -# define SNLED27351_CURRENT_TUNE \ - { 0x60, 0x60, 0x60, 0x60, 0x60, 0x60, 0x60, 0x60, 0x60, 0x60, 0x60, 0x60 } - -/* Set to infinit, which is use in USB mode by default */ -# define LED_MATRIX_TIMEOUT LED_MATRIX_TIMEOUT_INFINITE -/* Allow shutdown of led driver to save power */ -# define LED_MATRIX_DRIVER_SHUTDOWN_ENABLE -/* Turn off backlight on low brightness to save power */ -# define LED_MATRIX_BRIGHTNESS_TURN_OFF_VAL 48 - -# define LED_MATRIX_KEYPRESSES -#endif diff --git a/keyboards/keychron/k8_max/jis/white/info.json b/keyboards/keychron/k8_max/jis/white/info.json deleted file mode 100644 index 60f2835184..0000000000 --- a/keyboards/keychron/k8_max/jis/white/info.json +++ /dev/null @@ -1,30 +0,0 @@ -{ - "usb": { - "pid": "0x0A85", - "device_version": "1.0.0" - }, - "features": { - "led_matrix": true - }, - "led_matrix": { - "driver": "snled27351_spi", - "sleep": true, - "animations": { - "none": true, - "solid": true, - "breathing": true, - "band_pinwheel": true, - "band_spiral": true, - "cycle_left_right": true, - "cycle_up_down": true, - "cycle_out_in": true, - "dual_beacon": true, - "solid_reactive_simple": true, - "solid_reactive_multiwide": true, - "solid_reactive_multinexus": true, - "solid_splash": true, - "wave_left_right": true, - "wave_up_down": true - } - } -} diff --git a/keyboards/keychron/k8_max/jis/white/keymaps/default/keymap.c b/keyboards/keychron/k8_max/jis/white/keymaps/default/keymap.c deleted file mode 100644 index c1acc606d5..0000000000 --- a/keyboards/keychron/k8_max/jis/white/keymaps/default/keymap.c +++ /dev/null @@ -1,67 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#include QMK_KEYBOARD_H -#include "keychron_common.h" - -enum layers { - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN, -}; -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_jis_91( - KC_ESC, KC_BRID, KC_BRIU, KC_MCTRL, KC_LNPAD, BL_DOWN, BL_UP, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_SNAP, KC_SIRI, BL_STEP, - KC_GRV, 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_INT3, KC_BSPC, KC_INS, KC_HOME, KC_PGUP, - 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_DEL, KC_END, KC_PGDN, - 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_BSLS, 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_INT1, KC_RSFT, KC_UP, - KC_LCTL, KC_LOPTN, KC_LCMMD, KC_LNG2, KC_SPC, KC_LNG1, KC_RCMMD, KC_ROPTN,MO(MAC_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - - [MAC_FN] = LAYOUT_jis_91( - _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, BL_TOGG, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - BL_TOGG, BL_STEP, BL_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, BL_DOWN, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - - [WIN_BASE] = LAYOUT_jis_91( - KC_ESC, 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_PSCR, KC_CTANA, BL_STEP, - KC_GRV, 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_INT3, KC_BSPC, KC_INS, KC_HOME, KC_PGUP, - 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_DEL, KC_END, KC_PGDN, - 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_BSLS, 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_INT1, KC_RSFT, KC_UP, - KC_LCTL, KC_LGUI, KC_LALT, KC_INT5, KC_SPC, KC_INT4, KC_RALT, KC_RGUI, MO(WIN_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - - [WIN_FN] = LAYOUT_jis_91( - _______, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, BL_DOWN, BL_UP, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, BL_TOGG, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - BL_TOGG, BL_STEP, BL_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, BL_DOWN, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______) -}; - -// clang-format on -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - if (!process_record_keychron_common(keycode, record)) { - return false; - } - return true; -} diff --git a/keyboards/keychron/k8_max/jis/white/keymaps/via/keymap.c b/keyboards/keychron/k8_max/jis/white/keymaps/via/keymap.c deleted file mode 100644 index c1acc606d5..0000000000 --- a/keyboards/keychron/k8_max/jis/white/keymaps/via/keymap.c +++ /dev/null @@ -1,67 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#include QMK_KEYBOARD_H -#include "keychron_common.h" - -enum layers { - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN, -}; -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_jis_91( - KC_ESC, KC_BRID, KC_BRIU, KC_MCTRL, KC_LNPAD, BL_DOWN, BL_UP, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_SNAP, KC_SIRI, BL_STEP, - KC_GRV, 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_INT3, KC_BSPC, KC_INS, KC_HOME, KC_PGUP, - 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_DEL, KC_END, KC_PGDN, - 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_BSLS, 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_INT1, KC_RSFT, KC_UP, - KC_LCTL, KC_LOPTN, KC_LCMMD, KC_LNG2, KC_SPC, KC_LNG1, KC_RCMMD, KC_ROPTN,MO(MAC_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - - [MAC_FN] = LAYOUT_jis_91( - _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, BL_TOGG, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - BL_TOGG, BL_STEP, BL_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, BL_DOWN, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - - [WIN_BASE] = LAYOUT_jis_91( - KC_ESC, 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_PSCR, KC_CTANA, BL_STEP, - KC_GRV, 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_INT3, KC_BSPC, KC_INS, KC_HOME, KC_PGUP, - 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_DEL, KC_END, KC_PGDN, - 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_BSLS, 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_INT1, KC_RSFT, KC_UP, - KC_LCTL, KC_LGUI, KC_LALT, KC_INT5, KC_SPC, KC_INT4, KC_RALT, KC_RGUI, MO(WIN_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - - [WIN_FN] = LAYOUT_jis_91( - _______, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, BL_DOWN, BL_UP, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, BL_TOGG, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - BL_TOGG, BL_STEP, BL_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, BL_DOWN, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______) -}; - -// clang-format on -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - if (!process_record_keychron_common(keycode, record)) { - return false; - } - return true; -} diff --git a/keyboards/keychron/k8_max/jis/white/keymaps/via/rules.mk b/keyboards/keychron/k8_max/jis/white/keymaps/via/rules.mk deleted file mode 100644 index 1e5b99807c..0000000000 --- a/keyboards/keychron/k8_max/jis/white/keymaps/via/rules.mk +++ /dev/null @@ -1 +0,0 @@ -VIA_ENABLE = yes diff --git a/keyboards/keychron/k8_max/jis/white/rules.mk b/keyboards/keychron/k8_max/jis/white/rules.mk deleted file mode 100644 index 6e7633bfe0..0000000000 --- a/keyboards/keychron/k8_max/jis/white/rules.mk +++ /dev/null @@ -1 +0,0 @@ -# This file intentionally left blank diff --git a/keyboards/keychron/k8_max/jis/white/white.c b/keyboards/keychron/k8_max/jis/white/white.c deleted file mode 100644 index f35bc2c25c..0000000000 --- a/keyboards/keychron/k8_max/jis/white/white.c +++ /dev/null @@ -1,156 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#include "quantum.h" - -// clang-format off -#ifdef LED_MATRIX_ENABLE -const snled27351_led_t g_snled27351_leds[LED_MATRIX_LED_COUNT] = { -/* Refer to SNLED27351 manual for these locations - * driver - * | LED address - * | | */ - {0, A_16}, - {0, A_15}, - {0, A_14}, - {0, A_13}, - {0, A_12}, - {0, A_11}, - {0, A_10}, - {0, A_9}, - {0, A_8}, - {0, A_7}, - {0, A_6}, - {0, A_5}, - {0, A_4}, - {0, A_3}, - {0, A_2}, - {0, A_1}, - {0, D_4}, - - {0, B_16}, - {0, B_15}, - {0, B_14}, - {0, B_13}, - {0, B_12}, - {0, B_11}, - {0, B_10}, - {0, B_9}, - {0, B_8}, - {0, B_7}, - {0, B_6}, - {0, B_5}, - {0, B_4}, - {0, B_3}, - {0, B_2}, - {0, B_1}, - {0, D_1}, - - {0, C_16}, - {0, C_15}, - {0, C_14}, - {0, C_13}, - {0, C_12}, - {0, C_11}, - {0, C_10}, - {0, C_9}, - {0, C_8}, - {0, C_7}, - {0, C_6}, - {0, C_5}, - {0, C_4}, - {0, C_3}, - {0, C_2}, - {0, C_1}, - {0, D_2}, - - {0, D_16}, - {0, D_15}, - {0, D_14}, - {0, D_13}, - {0, D_12}, - {0, D_11}, - {0, D_10}, - {0, D_9}, - {0, D_8}, - {0, D_7}, - {0, D_6}, - {0, D_5}, - {0, D_3}, - - {0, E_16}, - {0, E_14}, - {0, E_13}, - {0, E_12}, - {0, E_11}, - {0, E_10}, - {0, E_9}, - {0, E_8}, - {0, E_7}, - {0, E_6}, - {0, E_5}, - {0, E_4}, - {0, E_3}, - {0, E_1}, - - {0, F_16}, - {0, F_15}, - {0, F_14}, - {0, F_13}, - {0, F_10}, - {0, F_7}, - {0, F_6}, - {0, F_5}, - {0, F_4}, - {0, F_3}, - {0, F_2}, - {0, F_1}, - {0, E_2}, -}; - -#define __ NO_LED - -led_config_t g_led_config = { - { - // Key Matrix to LED Index - { 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, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50 }, - { 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, __, 63, __, __, __ }, - { 64, __, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, __, 77, __ }, - { 78, 79, 80, 81, __, __, 82, __, __, 83, 84, 85, 86, 87, 88, 89, 90 }, - }, - { - // LED Index to Physical Position - {0, 0}, {168,14},{25, 0}, {38, 0}, {51, 0}, {64, 0}, {84, 0}, { 97, 0}, {110, 0}, {123, 0}, {142, 0}, {156, 0}, {168, 0}, {180, 0}, {198, 0}, {211, 0}, {224, 0}, - {0,14}, {12,14}, {25,14}, {38,14}, {51,14}, {64,14}, {77,14}, { 90,14}, {103,14}, {116,14}, {129,14}, {142,14}, {156,14}, {180,14}, {198,14}, {211,14}, {224,14}, - {3,26}, {19,26}, {32,26}, {45,26}, {58,26}, {71,26}, {84,26}, { 97,26}, {110,26}, {123,26}, {136,26}, {149,26}, {162,26}, {178,32}, {198,26}, {211,26}, {224,26}, - {4,39}, {22,39}, {35,39}, {48,39}, {61,39}, {74,39}, {87,39}, {100,39}, {113,39}, {126,39}, {139,39}, {152,39}, {165,39}, - {8,51}, {29,51}, {42,51}, {55,51}, {68,51}, {81,51}, {94,51}, {107,51}, {120,51}, {132,51}, {145,51}, {158,51}, {172,51}, {211,51}, - {1,64}, {16,64}, {31,64}, {45,64}, {82,64}, {116,64}, {131,64}, {147,64}, {164,64}, {180,64}, {198,64}, {211,64}, {224,64} - }, - { - // LED Index to Flag - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - } -}; - -#endif diff --git a/keyboards/keychron/k8_max/k8_max.c b/keyboards/keychron/k8_max/k8_max.c deleted file mode 100644 index 21045b9706..0000000000 --- a/keyboards/keychron/k8_max/k8_max.c +++ /dev/null @@ -1,94 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#include "quantum.h" -#include "keychron_task.h" -#ifdef FACTORY_TEST_ENABLE -# include "factory_test.h" -# include "keychron_common.h" -#endif -#ifdef LK_WIRELESS_ENABLE -# include "lkbt51.h" -# include "wireless.h" -# include "transport.h" -# include "keychron_wireless_common.h" -# include "battery.h" -#endif - -#define POWER_ON_LED_DURATION 3000 -static uint32_t power_on_indicator_timer; - -#if defined(LK_WIRELESS_ENABLE) -pin_t bt_led_pins[] = BT_HOST_LED_MATRIX_LIST; -pin_t p24g_led_pins[] = P2P4G_HOST_LED_MATRIX_LIST; -#endif - -bool dip_switch_update_kb(uint8_t index, bool active) { - if (index == 0) { - default_layer_set(1UL << (active ? 2 : 0)); - } - dip_switch_update_user(index, active); - - return true; -} - -void keyboard_post_init_kb(void) { -#ifdef LK_WIRELESS_ENABLE - palSetLineMode(P2P4_MODE_SELECT_PIN, PAL_MODE_INPUT); - palSetLineMode(BT_MODE_SELECT_PIN, PAL_MODE_INPUT); - - lkbt51_init(false); - wireless_init(); -#endif - power_on_indicator_timer = timer_read32(); - - keyboard_post_init_user(); -} - -bool keychron_task_kb(void) { - if (power_on_indicator_timer) { - if (timer_elapsed32(power_on_indicator_timer) > POWER_ON_LED_DURATION) { - power_on_indicator_timer = 0; - - if (!host_keyboard_led_state().caps_lock) writePin(LED_CAPS_LOCK_PIN, !LED_PIN_ON_STATE); -#if defined(LK_WIRELESS_ENABLE) - writePin(BAT_LOW_LED_PIN, !BAT_LOW_LED_PIN_ON_STATE); - for (uint8_t i = 0; i < sizeof(bt_led_pins) / sizeof(pin_t); i++) - writePin(bt_led_pins[i], !HOST_LED_PIN_ON_STATE); - for (uint8_t i = 0; i < sizeof(p24g_led_pins) / sizeof(pin_t); i++) - writePin(p24g_led_pins[i], !HOST_LED_PIN_ON_STATE); -#endif - } else { - writePin(LED_CAPS_LOCK_PIN, LED_PIN_ON_STATE); -#if defined(LK_WIRELESS_ENABLE) - writePin(BAT_LOW_LED_PIN, BAT_LOW_LED_PIN_ON_STATE); - if (get_transport() != TRANSPORT_P2P4) - for (uint8_t i = 0; i < sizeof(bt_led_pins) / sizeof(pin_t); i++) - writePin(bt_led_pins[i], HOST_LED_PIN_ON_STATE); - if (get_transport() != TRANSPORT_BLUETOOTH) - for (uint8_t i = 0; i < sizeof(p24g_led_pins) / sizeof(pin_t); i++) - writePin(p24g_led_pins[i], HOST_LED_PIN_ON_STATE); -#endif - } - } - return true; -} - -#ifdef LK_WIRELESS_ENABLE -bool lpm_is_kb_idle(void) { - return power_on_indicator_timer == 0 && !factory_reset_indicating(); -} -#endif diff --git a/keyboards/keychron/k8_max/mcuconf.h b/keyboards/keychron/k8_max/mcuconf.h deleted file mode 100644 index a616c82cdf..0000000000 --- a/keyboards/keychron/k8_max/mcuconf.h +++ /dev/null @@ -1,37 +0,0 @@ -/* Copyright 2024 @ lokher (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 . - */ - -#pragma once - -#include_next - -#undef STM32_HSECLK -#define STM32_HSECLK 16000000 - -#undef STM32_PLLM_VALUE -#define STM32_PLLM_VALUE 8 - -#undef STM32_PLLN_VALUE -#define STM32_PLLN_VALUE 96 - -#undef STM32_PLLP_VALUE -#define STM32_PLLP_VALUE 4 - -#undef STM32_PLLQ_VALUE -#define STM32_PLLQ_VALUE 4 - -#undef STM32_SPI_USE_SPI1 -#define STM32_SPI_USE_SPI1 TRUE diff --git a/keyboards/keychron/k8_max/readme.md b/keyboards/keychron/k8_max/readme.md deleted file mode 100644 index ffa8a05eb6..0000000000 --- a/keyboards/keychron/k8_max/readme.md +++ /dev/null @@ -1,31 +0,0 @@ -# Keychron K8 Max - -![Keychron K8 Max](https://cdn.shopify.com/s/files/1/0059/0630/1017/files/Keychron_K8_Max_Wireless_Mechanical_Keyboard.jpg?v=1722679778) - -A customizable 87 keys TKL keyboard. - -* Keyboard Maintainer: [Keychron](https://github.com/keychron) -* Hardware Supported: Keychron K8 Max -* Hardware Availability: [Keychron K8 Max QMK/VIA Wireless Custom Mechanical Keyboard](https://www.keychron.com/products/keychron-k8-max-qmk-wireless-mechanical-keyboard) - -Make example for this keyboard (after setting up your build environment): - - make keychron/k8_max/ansi/rgb:default - make keychron/k8_max/ansi/white:default - make keychron/k8_max/iso/rgb:default - make keychron/k8_max/iso/white:default - make keychron/k8_max/jisi/rgb:default - make keychron/k8_max/jis/white:default - -Flashing example for this keyboard: - - make keychron/k8_max/ansi/rgb:default:flash - make keychron/k8_max/ansi/white:default:flash - make keychron/k8_max/iso/rgb:default:flash - make keychron/k8_max/iso/white:default:flash - make keychron/k8_max/jisi/rgb:default:flash - make keychron/k8_max/jis/white:default:flash - -**Reset Key**: Toggle mode switch to "Cable", hold down the *Esc* key or reset button underneath space bar while connecting the USB cable, - -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). diff --git a/keyboards/keychron/k8_max/rules.mk b/keyboards/keychron/k8_max/rules.mk deleted file mode 100644 index 4eaf6820bc..0000000000 --- a/keyboards/keychron/k8_max/rules.mk +++ /dev/null @@ -1,4 +0,0 @@ -include keyboards/keychron/common/wireless/wireless.mk -include keyboards/keychron/common/keychron_common.mk - -VPATH += $(TOP_DIR)/keyboards/keychron diff --git a/keyboards/keychron/k8_max/via_json/k8_max_ansi_rgb.json b/keyboards/keychron/k8_max/via_json/k8_max_ansi_rgb.json deleted file mode 100644 index 80705df072..0000000000 --- a/keyboards/keychron/k8_max/via_json/k8_max_ansi_rgb.json +++ /dev/null @@ -1,290 +0,0 @@ -{ - "name": "Keychron K8 Max ANSI RGB", - "vendorId": "0x3434", - "productId": "0x0A80", - "keycodes": ["qmk_lighting"], - "menus": [ - { - "label": "Lighting", - "content": [ - { - "label": "Backlight", - "content": [ - { - "label": "Brightness", - "type": "range", - "options": [0, 255], - "content": ["id_qmk_rgb_matrix_brightness", 3, 1] - }, - { - "label": "Effect", - "type": "dropdown", - "content": ["id_qmk_rgb_matrix_effect", 3, 2], - "options": [ - ["None", 0], - ["Solid Color", 1], - ["Breathing", 2], - ["Band Spiral Val", 3], - ["Cycle All", 4], - ["Cycle Left Right", 5], - ["Cycle Up Down", 6], - ["Rainbow Moving Chevron", 7], - ["Cycle Out In", 8], - ["Cycle Out In Dual", 9], - ["Cycle Pinwheel", 10], - ["Cycle Spiral", 11], - ["Dual Beacon", 12], - ["Rainbow Beacon", 13], - ["Jellybean Raindrops", 14], - ["Pixel Rain", 15], - ["Typing Heatmap", 16], - ["Digital Rain", 17], - ["Reactive Simple", 18], - ["Reactive Multiwide", 19], - ["Reactive Multinexus", 20], - ["Splash", 21], - ["Solid Splash", 22] - ] - }, - { - "showIf": "{id_qmk_rgb_matrix_effect} > 1", - "label": "Effect Speed", - "type": "range", - "options": [0, 255], - "content": ["id_qmk_rgb_matrix_effect_speed", 3, 3] - }, - { - "showIf": "{id_qmk_rgb_matrix_effect} != 0 && ( {id_qmk_rgb_matrix_effect} < 4 || {id_qmk_rgb_matrix_effect} == 18 || ({id_qmk_rgb_matrix_effect} > 17 && {id_qmk_rgb_matrix_effect} != 21) ) ", - "label": "Color", - "type": "color", - "content": ["id_qmk_rgb_matrix_color", 3, 4] - } - ] - } - ] - } - ], - "customKeycodes": [ - {"name": "Left Option", "title": "Left Option", "shortName": "LOpt"}, - {"name": "Right Option", "title": "Right Option", "shortName": "ROpt"}, - {"name": "Left Cmd", "title": "Left Command", "shortName": "LCmd"}, - {"name": "Right Cmd", "title": "Right Command", "shortName": "RCmd"}, - {"name": "Misson Control", "title": "Misson Control in Mac", "shortName": "MCtl"}, - {"name": "Lanuch Pad", "title": "Lanuch Pad in Windows", "shortName": "LPad"}, - {"name": "Task View", "title": "Task View in Windows", "shortName": "Task"}, - {"name": "File Explorer", "title": "File Explorer in Windows", "shortName": "File"}, - {"name": "Screen shot", "title": "Screenshot in macOS", "shortName": "SShot"}, - {"name": "Cortana", "title": "Cortana in Windows", "shortName": "Cortana"}, - {"name": "Siri", "title": "Siri in macOS", "shortName": "Siri"}, - {"name": "Bluetooth Host 1", "title": "Bluetooth Host 1", "shortName": "BTH1"}, - {"name": "Bluetooth Host 2", "title": "Bluetooth Host 2", "shortName": "BTH2"}, - {"name": "Bluetooth Host 3", "title": "Bluetooth Host 3", "shortName": "BTH3"}, - {"name": "2.4G", "title": "2.4G", "shortName": "2.4G"}, - {"name": "Battery Level", "title": "Show battery level", "shortName": "Batt"} - ], - "matrix": {"rows": 6, "cols": 17}, - "layouts": { - "keymap": [ - [ - { - "c": "#777777" - }, - "0,0", - { - "x": 1, - "c": "#cccccc" - }, - "0,2", - "0,3", - "0,4", - "0,5", - { - "x": 0.5, - "c": "#aaaaaa" - }, - "0,6", - "0,7", - "0,8", - "0,9", - { - "x": 0.5, - "c": "#cccccc" - }, - "0,10", - "0,11", - "0,12", - "0,13", - { - "x": 0.25, - "c": "#aaaaaa" - }, - "0,14", - "0,15", - "0,16" - ], - [ - { - "y": 0.25 - }, - "1,0", - { - "c": "#cccccc" - }, - "1,1", - "1,2", - "1,3", - "1,4", - "1,5", - "1,6", - "1,7", - "1,8", - "1,9", - "1,10", - "1,11", - "1,12", - { - "c": "#aaaaaa", - "w": 2 - }, - "1,13", - { - "x": 0.25 - }, - "1,14", - "1,15", - "1,16" - ], - [ - { - "w": 1.5 - }, - "2,0", - { - "c": "#cccccc" - }, - "2,1", - "2,2", - "2,3", - "2,4", - "2,5", - "2,6", - "2,7", - "2,8", - "2,9", - "2,10", - "2,11", - "2,12", - { - "c": "#aaaaaa", - "w": 1.5 - }, - "2,13", - { - "x": 0.25 - }, - "2,14", - "2,15", - "2,16" - ], - [ - { - "w": 1.75 - }, - "3,0", - { - "c": "#cccccc" - }, - "3,1", - "3,2", - "3,3", - "3,4", - "3,5", - "3,6", - "3,7", - "3,8", - "3,9", - "3,10", - "3,11", - { - "c": "#777777", - "w": 2.25 - }, - "3,13" - ], - [ - { - "c": "#aaaaaa", - "w": 2.25 - }, - "4,0", - { - "c": "#cccccc" - }, - "4,2", - "4,3", - "4,4", - "4,5", - "4,6", - "4,7", - "4,8", - "4,9", - "4,10", - "4,11", - { - "c": "#aaaaaa", - "w": 2.75 - }, - "4,13", - { - "x": 1.25, - "c": "#cccccc" - }, - "4,15" - ], - [ - { - "c": "#aaaaaa", - "w": 1.25 - }, - "5,0", - { - "w": 1.25 - }, - "5,1", - { - "w": 1.25 - }, - "5,2", - { - "c": "#cccccc", - "w": 6.25 - }, - "5,6", - { - "c": "#aaaaaa", - "w": 1.25 - }, - "5,10", - { - "w": 1.25 - }, - "5,11", - { - "w": 1.25 - }, - "5,12", - { - "w": 1.25 - }, - "5,13", - { - "x": 0.25, - "c": "#cccccc" - }, - "5,14", - "5,15", - "5,16" - ] - ] - } -} \ No newline at end of file diff --git a/keyboards/keychron/k8_max/via_json/k8_max_ansi_white.json b/keyboards/keychron/k8_max/via_json/k8_max_ansi_white.json deleted file mode 100644 index f1db7a75e4..0000000000 --- a/keyboards/keychron/k8_max/via_json/k8_max_ansi_white.json +++ /dev/null @@ -1,229 +0,0 @@ -{ - "name": "Keychron K8 Max ANSI White", - "vendorId": "0x3434", - "productId": "0x0A83", - "keycodes": ["qmk_lighting"], - "customKeycodes": [ - {"name": "Left Option", "title": "Left Option", "shortName": "LOpt"}, - {"name": "Right Option", "title": "Right Option", "shortName": "ROpt"}, - {"name": "Left Cmd", "title": "Left Command", "shortName": "LCmd"}, - {"name": "Right Cmd", "title": "Right Command", "shortName": "RCmd"}, - {"name": "Misson Control", "title": "Misson Control in Mac", "shortName": "MCtl"}, - {"name": "Lanuch Pad", "title": "Lanuch Pad in Windows", "shortName": "LPad"}, - {"name": "Task View", "title": "Task View in Windows", "shortName": "Task"}, - {"name": "File Explorer", "title": "File Explorer in Windows", "shortName": "File"}, - {"name": "Screen shot", "title": "Screenshot in macOS", "shortName": "SShot"}, - {"name": "Cortana", "title": "Cortana in Windows", "shortName": "Cortana"}, - {"name": "Siri", "title": "Siri in macOS", "shortName": "Siri"}, - {"name": "Bluetooth Host 1", "title": "Bluetooth Host 1", "shortName": "BTH1"}, - {"name": "Bluetooth Host 2", "title": "Bluetooth Host 2", "shortName": "BTH2"}, - {"name": "Bluetooth Host 3", "title": "Bluetooth Host 3", "shortName": "BTH3"}, - {"name": "2.4G", "title": "2.4G", "shortName": "2.4G"}, - {"name": "Battery Level", "title": "Show battery level", "shortName": "Batt"} - ], - "matrix": {"rows": 6, "cols": 17}, - "layouts": { - "keymap": [ - [ - { - "c": "#777777" - }, - "0,0", - { - "x": 1, - "c": "#cccccc" - }, - "0,2", - "0,3", - "0,4", - "0,5", - { - "x": 0.5, - "c": "#aaaaaa" - }, - "0,6", - "0,7", - "0,8", - "0,9", - { - "x": 0.5, - "c": "#cccccc" - }, - "0,10", - "0,11", - "0,12", - "0,13", - { - "x": 0.25, - "c": "#aaaaaa" - }, - "0,14", - "0,15", - "0,16" - ], - [ - { - "y": 0.25 - }, - "1,0", - { - "c": "#cccccc" - }, - "1,1", - "1,2", - "1,3", - "1,4", - "1,5", - "1,6", - "1,7", - "1,8", - "1,9", - "1,10", - "1,11", - "1,12", - { - "c": "#aaaaaa", - "w": 2 - }, - "1,13", - { - "x": 0.25 - }, - "1,14", - "1,15", - "1,16" - ], - [ - { - "w": 1.5 - }, - "2,0", - { - "c": "#cccccc" - }, - "2,1", - "2,2", - "2,3", - "2,4", - "2,5", - "2,6", - "2,7", - "2,8", - "2,9", - "2,10", - "2,11", - "2,12", - { - "c": "#aaaaaa", - "w": 1.5 - }, - "2,13", - { - "x": 0.25 - }, - "2,14", - "2,15", - "2,16" - ], - [ - { - "w": 1.75 - }, - "3,0", - { - "c": "#cccccc" - }, - "3,1", - "3,2", - "3,3", - "3,4", - "3,5", - "3,6", - "3,7", - "3,8", - "3,9", - "3,10", - "3,11", - { - "c": "#777777", - "w": 2.25 - }, - "3,13" - ], - [ - { - "c": "#aaaaaa", - "w": 2.25 - }, - "4,0", - { - "c": "#cccccc" - }, - "4,2", - "4,3", - "4,4", - "4,5", - "4,6", - "4,7", - "4,8", - "4,9", - "4,10", - "4,11", - { - "c": "#aaaaaa", - "w": 2.75 - }, - "4,13", - { - "x": 1.25, - "c": "#cccccc" - }, - "4,15" - ], - [ - { - "c": "#aaaaaa", - "w": 1.25 - }, - "5,0", - { - "w": 1.25 - }, - "5,1", - { - "w": 1.25 - }, - "5,2", - { - "c": "#cccccc", - "w": 6.25 - }, - "5,6", - { - "c": "#aaaaaa", - "w": 1.25 - }, - "5,10", - { - "w": 1.25 - }, - "5,11", - { - "w": 1.25 - }, - "5,12", - { - "w": 1.25 - }, - "5,13", - { - "x": 0.25, - "c": "#cccccc" - }, - "5,14", - "5,15", - "5,16" - ] - ] - } -} \ No newline at end of file diff --git a/keyboards/keychron/k8_max/via_json/k8_max_iso_rgb.json b/keyboards/keychron/k8_max/via_json/k8_max_iso_rgb.json deleted file mode 100644 index a00452b8fc..0000000000 --- a/keyboards/keychron/k8_max/via_json/k8_max_iso_rgb.json +++ /dev/null @@ -1,292 +0,0 @@ -{ - "name": "Keychron K8 Max ISO RGB", - "vendorId": "0x3434", - "productId": "0x0A81", - "keycodes": ["qmk_lighting"], - "menus": [ - { - "label": "Lighting", - "content": [ - { - "label": "Backlight", - "content": [ - { - "label": "Brightness", - "type": "range", - "options": [0, 255], - "content": ["id_qmk_rgb_matrix_brightness", 3, 1] - }, - { - "label": "Effect", - "type": "dropdown", - "content": ["id_qmk_rgb_matrix_effect", 3, 2], - "options": [ - ["None", 0], - ["Solid Color", 1], - ["Breathing", 2], - ["Band Spiral Val", 3], - ["Cycle All", 4], - ["Cycle Left Right", 5], - ["Cycle Up Down", 6], - ["Rainbow Moving Chevron", 7], - ["Cycle Out In", 8], - ["Cycle Out In Dual", 9], - ["Cycle Pinwheel", 10], - ["Cycle Spiral", 11], - ["Dual Beacon", 12], - ["Rainbow Beacon", 13], - ["Jellybean Raindrops", 14], - ["Pixel Rain", 15], - ["Typing Heatmap", 16], - ["Digital Rain", 17], - ["Reactive Simple", 18], - ["Reactive Multiwide", 19], - ["Reactive Multinexus", 20], - ["Splash", 21], - ["Solid Splash", 22] - ] - }, - { - "showIf": "{id_qmk_rgb_matrix_effect} > 1", - "label": "Effect Speed", - "type": "range", - "options": [0, 255], - "content": ["id_qmk_rgb_matrix_effect_speed", 3, 3] - }, - { - "showIf": "{id_qmk_rgb_matrix_effect} != 0 && ( {id_qmk_rgb_matrix_effect} < 4 || {id_qmk_rgb_matrix_effect} == 18 || ({id_qmk_rgb_matrix_effect} > 17 && {id_qmk_rgb_matrix_effect} != 21) ) ", - "label": "Color", - "type": "color", - "content": ["id_qmk_rgb_matrix_color", 3, 4] - } - ] - } - ] - } - ], - "customKeycodes": [ - {"name": "Left Option", "title": "Left Option", "shortName": "LOpt"}, - {"name": "Right Option", "title": "Right Option", "shortName": "ROpt"}, - {"name": "Left Cmd", "title": "Left Command", "shortName": "LCmd"}, - {"name": "Right Cmd", "title": "Right Command", "shortName": "RCmd"}, - {"name": "Misson Control", "title": "Misson Control in Mac", "shortName": "MCtl"}, - {"name": "Lanuch Pad", "title": "Lanuch Pad in Windows", "shortName": "LPad"}, - {"name": "Task View", "title": "Task View in Windows", "shortName": "Task"}, - {"name": "File Explorer", "title": "File Explorer in Windows", "shortName": "File"}, - {"name": "Screen shot", "title": "Screenshot in macOS", "shortName": "SShot"}, - {"name": "Cortana", "title": "Cortana in Windows", "shortName": "Cortana"}, - {"name": "Siri", "title": "Siri in macOS", "shortName": "Siri"}, - {"name": "Bluetooth Host 1", "title": "Bluetooth Host 1", "shortName": "BTH1"}, - {"name": "Bluetooth Host 2", "title": "Bluetooth Host 2", "shortName": "BTH2"}, - {"name": "Bluetooth Host 3", "title": "Bluetooth Host 3", "shortName": "BTH3"}, - {"name": "2.4G", "title": "2.4G", "shortName": "2.4G"}, - {"name": "Battery Level", "title": "Show battery level", "shortName": "Batt"} - ], - "matrix": {"rows": 6, "cols": 17}, - "layouts": { - "keymap": [ - [ - { - "c": "#777777" - }, - "0,0", - { - "x": 1, - "c": "#cccccc" - }, - "0,2", - "0,3", - "0,4", - "0,5", - { - "x": 0.5, - "c": "#aaaaaa" - }, - "0,6", - "0,7", - "0,8", - "0,9", - { - "x": 0.5, - "c": "#cccccc" - }, - "0,10", - "0,11", - "0,12", - "0,13", - { - "x": 0.25, - "c": "#aaaaaa" - }, - "0,14", - "0,15", - "0,16" - ], - [ - { - "y": 0.25 - }, - "1,0", - { - "c": "#cccccc" - }, - "1,1", - "1,2", - "1,3", - "1,4", - "1,5", - "1,6", - "1,7", - "1,8", - "1,9", - "1,10", - "1,11", - "1,12", - { - "c": "#aaaaaa", - "w": 2 - }, - "1,13", - { - "x": 0.25 - }, - "1,14", - "1,15", - "1,16" - ], - [ - { - "w": 1.5 - }, - "2,0", - { - "c": "#cccccc" - }, - "2,1", - "2,2", - "2,3", - "2,4", - "2,5", - "2,6", - "2,7", - "2,8", - "2,9", - "2,10", - "2,11", - "2,12", - { - "x": 0.25, - "c": "#aaaaaa", - "w": 1.25, - "h": 2, - "w2": 1.5, - "h2": 1, - "x2": -0.25 - }, - "2,13", - { - "x": 0.25 - }, - "2,14", - "2,15", - "2,16" - ], - [ - { - "w": 1.75 - }, - "3,0", - { - "c": "#cccccc" - }, - "3,1", - "3,2", - "3,3", - "3,4", - "3,5", - "3,6", - "3,7", - "3,8", - "3,9", - "3,10", - "3,11", - "3,13" - ], - [ - { - "c": "#aaaaaa", - "w": 1.25 - }, - "4,0", - { - "c": "#cccccc" - }, - "4,1", - "4,2", - "4,3", - "4,4", - "4,5", - "4,6", - "4,7", - "4,8", - "4,9", - "4,10", - "4,11", - { - "c": "#aaaaaa", - "w": 2.75 - }, - "4,13", - { - "x": 1.25, - "c": "#cccccc" - }, - "4,15" - ], - [ - { - "c": "#aaaaaa", - "w": 1.25 - }, - "5,0", - { - "w": 1.25 - }, - "5,1", - { - "w": 1.25 - }, - "5,2", - { - "c": "#cccccc", - "w": 6.25 - }, - "5,6", - { - "c": "#aaaaaa", - "w": 1.25 - }, - "5,10", - { - "w": 1.25 - }, - "5,11", - { - "w": 1.25 - }, - "5,12", - { - "w": 1.25 - }, - "5,13", - { - "x": 0.25, - "c": "#cccccc" - }, - "5,14", - "5,15", - "5,16" - ] - ] - } -} \ No newline at end of file diff --git a/keyboards/keychron/k8_max/via_json/k8_max_iso_white.json b/keyboards/keychron/k8_max/via_json/k8_max_iso_white.json deleted file mode 100644 index ef147553da..0000000000 --- a/keyboards/keychron/k8_max/via_json/k8_max_iso_white.json +++ /dev/null @@ -1,231 +0,0 @@ -{ - "name": "Keychron K8 Max ISO White", - "vendorId": "0x3434", - "productId": "0x0A84", - "keycodes": ["qmk_lighting"], - "customKeycodes": [ - {"name": "Left Option", "title": "Left Option", "shortName": "LOpt"}, - {"name": "Right Option", "title": "Right Option", "shortName": "ROpt"}, - {"name": "Left Cmd", "title": "Left Command", "shortName": "LCmd"}, - {"name": "Right Cmd", "title": "Right Command", "shortName": "RCmd"}, - {"name": "Misson Control", "title": "Misson Control in Mac", "shortName": "MCtl"}, - {"name": "Lanuch Pad", "title": "Lanuch Pad in Windows", "shortName": "LPad"}, - {"name": "Task View", "title": "Task View in Windows", "shortName": "Task"}, - {"name": "File Explorer", "title": "File Explorer in Windows", "shortName": "File"}, - {"name": "Screen shot", "title": "Screenshot in macOS", "shortName": "SShot"}, - {"name": "Cortana", "title": "Cortana in Windows", "shortName": "Cortana"}, - {"name": "Siri", "title": "Siri in macOS", "shortName": "Siri"}, - {"name": "Bluetooth Host 1", "title": "Bluetooth Host 1", "shortName": "BTH1"}, - {"name": "Bluetooth Host 2", "title": "Bluetooth Host 2", "shortName": "BTH2"}, - {"name": "Bluetooth Host 3", "title": "Bluetooth Host 3", "shortName": "BTH3"}, - {"name": "2.4G", "title": "2.4G", "shortName": "2.4G"}, - {"name": "Battery Level", "title": "Show battery level", "shortName": "Batt"} - ], - "matrix": {"rows": 6, "cols": 17}, - "layouts": { - "keymap": [ - [ - { - "c": "#777777" - }, - "0,0", - { - "x": 1, - "c": "#cccccc" - }, - "0,2", - "0,3", - "0,4", - "0,5", - { - "x": 0.5, - "c": "#aaaaaa" - }, - "0,6", - "0,7", - "0,8", - "0,9", - { - "x": 0.5, - "c": "#cccccc" - }, - "0,10", - "0,11", - "0,12", - "0,13", - { - "x": 0.25, - "c": "#aaaaaa" - }, - "0,14", - "0,15", - "0,16" - ], - [ - { - "y": 0.25 - }, - "1,0", - { - "c": "#cccccc" - }, - "1,1", - "1,2", - "1,3", - "1,4", - "1,5", - "1,6", - "1,7", - "1,8", - "1,9", - "1,10", - "1,11", - "1,12", - { - "c": "#aaaaaa", - "w": 2 - }, - "1,13", - { - "x": 0.25 - }, - "1,14", - "1,15", - "1,16" - ], - [ - { - "w": 1.5 - }, - "2,0", - { - "c": "#cccccc" - }, - "2,1", - "2,2", - "2,3", - "2,4", - "2,5", - "2,6", - "2,7", - "2,8", - "2,9", - "2,10", - "2,11", - "2,12", - { - "x": 0.25, - "c": "#aaaaaa", - "w": 1.25, - "h": 2, - "w2": 1.5, - "h2": 1, - "x2": -0.25 - }, - "2,13", - { - "x": 0.25 - }, - "2,14", - "2,15", - "2,16" - ], - [ - { - "w": 1.75 - }, - "3,0", - { - "c": "#cccccc" - }, - "3,1", - "3,2", - "3,3", - "3,4", - "3,5", - "3,6", - "3,7", - "3,8", - "3,9", - "3,10", - "3,11", - "3,13" - ], - [ - { - "c": "#aaaaaa", - "w": 1.25 - }, - "4,0", - { - "c": "#cccccc" - }, - "4,1", - "4,2", - "4,3", - "4,4", - "4,5", - "4,6", - "4,7", - "4,8", - "4,9", - "4,10", - "4,11", - { - "c": "#aaaaaa", - "w": 2.75 - }, - "4,13", - { - "x": 1.25, - "c": "#cccccc" - }, - "4,15" - ], - [ - { - "c": "#aaaaaa", - "w": 1.25 - }, - "5,0", - { - "w": 1.25 - }, - "5,1", - { - "w": 1.25 - }, - "5,2", - { - "c": "#cccccc", - "w": 6.25 - }, - "5,6", - { - "c": "#aaaaaa", - "w": 1.25 - }, - "5,10", - { - "w": 1.25 - }, - "5,11", - { - "w": 1.25 - }, - "5,12", - { - "w": 1.25 - }, - "5,13", - { - "x": 0.25, - "c": "#cccccc" - }, - "5,14", - "5,15", - "5,16" - ] - ] - } -} \ No newline at end of file diff --git a/keyboards/keychron/k8_max/via_json/k8_max_jis_rgb.json b/keyboards/keychron/k8_max/via_json/k8_max_jis_rgb.json deleted file mode 100644 index 04e26aeb8b..0000000000 --- a/keyboards/keychron/k8_max/via_json/k8_max_jis_rgb.json +++ /dev/null @@ -1,291 +0,0 @@ -{ - "name": "Keychron K8 Max JIS RGB", - "vendorId": "0x3434", - "productId": "0x0A82", - "keycodes": ["qmk_lighting"], - "menus": [ - { - "label": "Lighting", - "content": [ - { - "label": "Backlight", - "content": [ - { - "label": "Brightness", - "type": "range", - "options": [0, 255], - "content": ["id_qmk_rgb_matrix_brightness", 3, 1] - }, - { - "label": "Effect", - "type": "dropdown", - "content": ["id_qmk_rgb_matrix_effect", 3, 2], - "options": [ - ["None", 0], - ["Solid Color", 1], - ["Breathing", 2], - ["Band Spiral Val", 3], - ["Cycle All", 4], - ["Cycle Left Right", 5], - ["Cycle Up Down", 6], - ["Rainbow Moving Chevron", 7], - ["Cycle Out In", 8], - ["Cycle Out In Dual", 9], - ["Cycle Pinwheel", 10], - ["Cycle Spiral", 11], - ["Dual Beacon", 12], - ["Rainbow Beacon", 13], - ["Jellybean Raindrops", 14], - ["Pixel Rain", 15], - ["Typing Heatmap", 16], - ["Digital Rain", 17], - ["Reactive Simple", 18], - ["Reactive Multiwide", 19], - ["Reactive Multinexus", 20], - ["Splash", 21], - ["Solid Splash", 22] - ] - }, - { - "showIf": "{id_qmk_rgb_matrix_effect} > 1", - "label": "Effect Speed", - "type": "range", - "options": [0, 255], - "content": ["id_qmk_rgb_matrix_effect_speed", 3, 3] - }, - { - "showIf": "{id_qmk_rgb_matrix_effect} != 0 && ( {id_qmk_rgb_matrix_effect} < 4 || {id_qmk_rgb_matrix_effect} == 18 || ({id_qmk_rgb_matrix_effect} > 17 && {id_qmk_rgb_matrix_effect} != 21) ) ", - "label": "Color", - "type": "color", - "content": ["id_qmk_rgb_matrix_color", 3, 4] - } - ] - } - ] - } - ], - "customKeycodes": [ - {"name": "Left Option", "title": "Left Option", "shortName": "LOpt"}, - {"name": "Right Option", "title": "Right Option", "shortName": "ROpt"}, - {"name": "Left Cmd", "title": "Left Command", "shortName": "LCmd"}, - {"name": "Right Cmd", "title": "Right Command", "shortName": "RCmd"}, - {"name": "Misson Control", "title": "Misson Control in Mac", "shortName": "MCtl"}, - {"name": "Lanuch Pad", "title": "Lanuch Pad in Windows", "shortName": "LPad"}, - {"name": "Task View", "title": "Task View in Windows", "shortName": "Task"}, - {"name": "File Explorer", "title": "File Explorer in Windows", "shortName": "File"}, - {"name": "Screen shot", "title": "Screenshot in macOS", "shortName": "SShot"}, - {"name": "Cortana", "title": "Cortana in Windows", "shortName": "Cortana"}, - {"name": "Siri", "title": "Siri in macOS", "shortName": "Siri"}, - {"name": "Bluetooth Host 1", "title": "Bluetooth Host 1", "shortName": "BTH1"}, - {"name": "Bluetooth Host 2", "title": "Bluetooth Host 2", "shortName": "BTH2"}, - {"name": "Bluetooth Host 3", "title": "Bluetooth Host 3", "shortName": "BTH3"}, - {"name": "2.4G", "title": "2.4G", "shortName": "2.4G"}, - {"name": "Battery Level", "title": "Show battery level", "shortName": "Batt"} - ], - "matrix": {"rows": 6, "cols": 17}, - "layouts": { - "keymap": [ - [ - { - "c": "#777777" - }, - "0,0", - { - "x": 1, - "c": "#cccccc" - }, - "0,2", - "0,3", - "0,4", - "0,5", - { - "x": 0.5, - "c": "#aaaaaa" - }, - "0,6", - "0,7", - "0,8", - "0,9", - { - "x": 0.5, - "c": "#cccccc" - }, - "0,10", - "0,11", - "0,12", - "0,13", - { - "x": 0.25, - "c": "#aaaaaa" - }, - "0,14", - "0,15", - "0,16" - ], - [ - { - "y": 0.25 - }, - "1,0", - { - "c": "#cccccc" - }, - "1,1", - "1,2", - "1,3", - "1,4", - "1,5", - "1,6", - "1,7", - "1,8", - "1,9", - "1,10", - "1,11", - "1,12", - "0,1", - "1,13", - { - "c": "#aaaaaa", - "x": 0.25 - }, - "1,14", - "1,15", - "1,16" - ], - [ - { - "w": 1.5 - }, - "2,0", - { - "c": "#cccccc" - }, - "2,1", - "2,2", - "2,3", - "2,4", - "2,5", - "2,6", - "2,7", - "2,8", - "2,9", - "2,10", - "2,11", - "2,12", - { - "x": 0.25, - "c": "#aaaaaa", - "w": 1.25, - "h": 2, - "w2": 1.5, - "h2": 1, - "x2": -0.25 - }, - "2,13", - { - "x": 0.25 - }, - "2,14", - "2,15", - "2,16" - ], - [ - { - "w": 1.75 - }, - "3,0", - { - "c": "#cccccc" - }, - "3,1", - "3,2", - "3,3", - "3,4", - "3,5", - "3,6", - "3,7", - "3,8", - "3,9", - "3,10", - "3,11", - "3,13" - ], - [ - { - "c": "#aaaaaa", - "w": 2.25 - }, - "4,0", - { - "c": "#cccccc" - }, - "4,2", - "4,3", - "4,4", - "4,5", - "4,6", - "4,7", - "4,8", - "4,9", - "4,10", - "4,11", - "4,12", - { - "c": "#aaaaaa", - "w": 1.75 - }, - "4,13", - { - "x": 1.25, - "c": "#cccccc" - }, - "4,15" - ], - [ - { - "c": "#aaaaaa", - "w": 1.25 - }, - "5,0", - "5,1", - { - "w": 1.25 - }, - "5,2", - "5,3", - { - "c": "#cccccc", - "w": 4.5 - }, - "5,6", - { - "c": "#aaaaaa" - }, - "5,9", - { - "w": 1.25 - }, - "5,10", - { - "w": 1.25 - }, - "5,11", - { - "w": 1.25 - }, - "5,12", - { - "w": 1.25 - }, - "5,13", - { - "x": 0.25, - "c": "#cccccc" - }, - "5,14", - "5,15", - "5,16" - ] - ] - } -} \ No newline at end of file diff --git a/keyboards/keychron/k8_max/via_json/k8_max_jis_white.json b/keyboards/keychron/k8_max/via_json/k8_max_jis_white.json deleted file mode 100644 index 937ba1e448..0000000000 --- a/keyboards/keychron/k8_max/via_json/k8_max_jis_white.json +++ /dev/null @@ -1,230 +0,0 @@ -{ - "name": "Keychron K8 Max JIS White", - "vendorId": "0x3434", - "productId": "0x0A85", - "keycodes": ["qmk_lighting"], - "customKeycodes": [ - {"name": "Left Option", "title": "Left Option", "shortName": "LOpt"}, - {"name": "Right Option", "title": "Right Option", "shortName": "ROpt"}, - {"name": "Left Cmd", "title": "Left Command", "shortName": "LCmd"}, - {"name": "Right Cmd", "title": "Right Command", "shortName": "RCmd"}, - {"name": "Misson Control", "title": "Misson Control in Mac", "shortName": "MCtl"}, - {"name": "Lanuch Pad", "title": "Lanuch Pad in Windows", "shortName": "LPad"}, - {"name": "Task View", "title": "Task View in Windows", "shortName": "Task"}, - {"name": "File Explorer", "title": "File Explorer in Windows", "shortName": "File"}, - {"name": "Screen shot", "title": "Screenshot in macOS", "shortName": "SShot"}, - {"name": "Cortana", "title": "Cortana in Windows", "shortName": "Cortana"}, - {"name": "Siri", "title": "Siri in macOS", "shortName": "Siri"}, - {"name": "Bluetooth Host 1", "title": "Bluetooth Host 1", "shortName": "BTH1"}, - {"name": "Bluetooth Host 2", "title": "Bluetooth Host 2", "shortName": "BTH2"}, - {"name": "Bluetooth Host 3", "title": "Bluetooth Host 3", "shortName": "BTH3"}, - {"name": "2.4G", "title": "2.4G", "shortName": "2.4G"}, - {"name": "Battery Level", "title": "Show battery level", "shortName": "Batt"} - ], - "matrix": {"rows": 6, "cols": 17}, - "layouts": { - "keymap": [ - [ - { - "c": "#777777" - }, - "0,0", - { - "x": 1, - "c": "#cccccc" - }, - "0,2", - "0,3", - "0,4", - "0,5", - { - "x": 0.5, - "c": "#aaaaaa" - }, - "0,6", - "0,7", - "0,8", - "0,9", - { - "x": 0.5, - "c": "#cccccc" - }, - "0,10", - "0,11", - "0,12", - "0,13", - { - "x": 0.25, - "c": "#aaaaaa" - }, - "0,14", - "0,15", - "0,16" - ], - [ - { - "y": 0.25 - }, - "1,0", - { - "c": "#cccccc" - }, - "1,1", - "1,2", - "1,3", - "1,4", - "1,5", - "1,6", - "1,7", - "1,8", - "1,9", - "1,10", - "1,11", - "1,12", - "0,1", - "1,13", - { - "c": "#aaaaaa", - "x": 0.25 - }, - "1,14", - "1,15", - "1,16" - ], - [ - { - "w": 1.5 - }, - "2,0", - { - "c": "#cccccc" - }, - "2,1", - "2,2", - "2,3", - "2,4", - "2,5", - "2,6", - "2,7", - "2,8", - "2,9", - "2,10", - "2,11", - "2,12", - { - "x": 0.25, - "c": "#aaaaaa", - "w": 1.25, - "h": 2, - "w2": 1.5, - "h2": 1, - "x2": -0.25 - }, - "2,13", - { - "x": 0.25 - }, - "2,14", - "2,15", - "2,16" - ], - [ - { - "w": 1.75 - }, - "3,0", - { - "c": "#cccccc" - }, - "3,1", - "3,2", - "3,3", - "3,4", - "3,5", - "3,6", - "3,7", - "3,8", - "3,9", - "3,10", - "3,11", - "3,13" - ], - [ - { - "c": "#aaaaaa", - "w": 2.25 - }, - "4,0", - { - "c": "#cccccc" - }, - "4,2", - "4,3", - "4,4", - "4,5", - "4,6", - "4,7", - "4,8", - "4,9", - "4,10", - "4,11", - "4,12", - { - "c": "#aaaaaa", - "w": 1.75 - }, - "4,13", - { - "x": 1.25, - "c": "#cccccc" - }, - "4,15" - ], - [ - { - "c": "#aaaaaa", - "w": 1.25 - }, - "5,0", - "5,1", - { - "w": 1.25 - }, - "5,2", - "5,3", - { - "c": "#cccccc", - "w": 4.5 - }, - "5,6", - { - "c": "#aaaaaa" - }, - "5,9", - { - "w": 1.25 - }, - "5,10", - { - "w": 1.25 - }, - "5,11", - { - "w": 1.25 - }, - "5,12", - { - "w": 1.25 - }, - "5,13", - { - "x": 0.25, - "c": "#cccccc" - }, - "5,14", - "5,15", - "5,16" - ] - ] - } -} \ No newline at end of file diff --git a/keyboards/keychron/k8_pro/ansi/rgb/config.h b/keyboards/keychron/k8_pro/ansi/rgb/config.h deleted file mode 100644 index 9dfe4d3e80..0000000000 --- a/keyboards/keychron/k8_pro/ansi/rgb/config.h +++ /dev/null @@ -1,49 +0,0 @@ -/* Copyright 2021 @ 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 . - */ - -#pragma once - -#ifdef RGB_MATRIX_ENABLE -/* RGB Matrix driver configuration */ -# define DRIVER_COUNT 2 - -# define DRIVER_ADDR_1 0b1110111 -# define DRIVER_ADDR_2 0b1110100 -# define DRIVER_1_LED_COUNT 47 -# define DRIVER_2_LED_COUNT 40 -# define RGB_MATRIX_LED_COUNT (DRIVER_1_LED_COUNT + DRIVER_2_LED_COUNT) - -/* Set to infinit, which is use in USB mode by default */ -# define RGB_MATRIX_TIMEOUT RGB_MATRIX_TIMEOUT_INFINITE - -/* Allow shutdown of led driver to save power */ -# define RGB_MATRIX_DRIVER_SHUTDOWN_ENABLE -/* Turn off backlight on low brightness to save power */ -# define RGB_MATRIX_BRIGHTNESS_TURN_OFF_VAL 32 - -/* RGB Matrix Animation modes. Explicitly enabled - * For full list of effects, see: - * https://docs.qmk.fm/#/feature_rgb_matrix?id=rgb-matrix-effects - */ - -# define RGB_MATRIX_KEYPRESSES -# define RGB_MATRIX_FRAMEBUFFER_EFFECTS - -/* Set LED driver current */ -# define SNLED27351_CURRENT_TUNE \ - { 0x38, 0x38, 0x38, 0x38, 0x38, 0x38, 0x38, 0x38, 0x38, 0x38, 0x38, 0x38 } - -#endif diff --git a/keyboards/keychron/k8_pro/ansi/rgb/info.json b/keyboards/keychron/k8_pro/ansi/rgb/info.json deleted file mode 100644 index 16ffe59a51..0000000000 --- a/keyboards/keychron/k8_pro/ansi/rgb/info.json +++ /dev/null @@ -1,35 +0,0 @@ -{ - "usb": { - "pid": "0x0280", - "device_version": "1.0.0" - }, - "features": { - "rgb_matrix": true - }, - "rgb_matrix": { - "driver": "snled27351", - "animations": { - "breathing": true, - "band_spiral_val": true, - "cycle_all": true, - "cycle_left_right": true, - "cycle_up_down": true, - "rainbow_moving_chevron": true, - "cycle_out_in": true, - "cycle_out_in_dual": true, - "cycle_pinwheel": true, - "cycle_spiral": true, - "dual_beacon": true, - "rainbow_beacon": true, - "jellybean_raindrops": true, - "pixel_rain": true, - "typing_heatmap": true, - "digital_rain": true, - "solid_reactive_simple": true, - "solid_reactive_multiwide": true, - "solid_reactive_multinexus": true, - "splash": true, - "solid_splash": true - } - } -} diff --git a/keyboards/keychron/k8_pro/ansi/rgb/keymaps/default/keymap.c b/keyboards/keychron/k8_pro/ansi/rgb/keymaps/default/keymap.c deleted file mode 100644 index 3db520d782..0000000000 --- a/keyboards/keychron/k8_pro/ansi/rgb/keymaps/default/keymap.c +++ /dev/null @@ -1,60 +0,0 @@ -/* Copyright 2021 @ 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 . - */ - -#include QMK_KEYBOARD_H - -// clang-format off -enum layers{ - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN -}; - -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { -[MAC_BASE] = LAYOUT_tkl_ansi( - KC_ESC, KC_BRID, KC_BRIU, KC_MCTL, KC_LPAD, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_SNAP, KC_SIRI, RGB_MOD, - KC_GRV, 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_INS, KC_HOME, KC_PGUP, - 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_DEL, KC_END, KC_PGDN, - 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_LCTL, KC_LOPTN, KC_LCMMD, KC_SPC, KC_RCMMD, KC_ROPTN, MO(MAC_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - -[MAC_FN] = LAYOUT_tkl_ansi( - KC_TRNS, 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, - KC_TRNS, BT_HST1, BT_HST2, BT_HST3, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, BAT_LVL, NK_TOGG, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS), - -[WIN_BASE] = LAYOUT_tkl_ansi( - KC_ESC, 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_PSCR, KC_CTANA, RGB_MOD, - KC_GRV, 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_INS, KC_HOME, KC_PGUP, - 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_DEL, KC_END, KC_PGDN, - 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_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, KC_RGUI, MO(WIN_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - -[WIN_FN] = LAYOUT_tkl_ansi( - KC_TRNS, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_TRNS, KC_TRNS, RGB_TOG, - KC_TRNS, BT_HST1, BT_HST2, BT_HST3, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, BAT_LVL, NK_TOGG, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, 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/keychron/k8_pro/ansi/rgb/keymaps/via/keymap.c b/keyboards/keychron/k8_pro/ansi/rgb/keymaps/via/keymap.c deleted file mode 100644 index 3db520d782..0000000000 --- a/keyboards/keychron/k8_pro/ansi/rgb/keymaps/via/keymap.c +++ /dev/null @@ -1,60 +0,0 @@ -/* Copyright 2021 @ 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 . - */ - -#include QMK_KEYBOARD_H - -// clang-format off -enum layers{ - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN -}; - -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { -[MAC_BASE] = LAYOUT_tkl_ansi( - KC_ESC, KC_BRID, KC_BRIU, KC_MCTL, KC_LPAD, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_SNAP, KC_SIRI, RGB_MOD, - KC_GRV, 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_INS, KC_HOME, KC_PGUP, - 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_DEL, KC_END, KC_PGDN, - 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_LCTL, KC_LOPTN, KC_LCMMD, KC_SPC, KC_RCMMD, KC_ROPTN, MO(MAC_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - -[MAC_FN] = LAYOUT_tkl_ansi( - KC_TRNS, 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, - KC_TRNS, BT_HST1, BT_HST2, BT_HST3, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, BAT_LVL, NK_TOGG, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS), - -[WIN_BASE] = LAYOUT_tkl_ansi( - KC_ESC, 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_PSCR, KC_CTANA, RGB_MOD, - KC_GRV, 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_INS, KC_HOME, KC_PGUP, - 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_DEL, KC_END, KC_PGDN, - 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_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, KC_RGUI, MO(WIN_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - -[WIN_FN] = LAYOUT_tkl_ansi( - KC_TRNS, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_TRNS, KC_TRNS, RGB_TOG, - KC_TRNS, BT_HST1, BT_HST2, BT_HST3, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, BAT_LVL, NK_TOGG, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, 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/keychron/k8_pro/ansi/rgb/keymaps/via/rules.mk b/keyboards/keychron/k8_pro/ansi/rgb/keymaps/via/rules.mk deleted file mode 100644 index 036bd6d1c3..0000000000 --- a/keyboards/keychron/k8_pro/ansi/rgb/keymaps/via/rules.mk +++ /dev/null @@ -1 +0,0 @@ -VIA_ENABLE = yes \ No newline at end of file diff --git a/keyboards/keychron/k8_pro/ansi/rgb/rgb.c b/keyboards/keychron/k8_pro/ansi/rgb/rgb.c deleted file mode 100644 index e7f35aa43e..0000000000 --- a/keyboards/keychron/k8_pro/ansi/rgb/rgb.c +++ /dev/null @@ -1,148 +0,0 @@ -/* Copyright 2021 @ 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 . - */ - -#include "quantum.h" - -// clang-format off -#ifdef RGB_MATRIX_ENABLE -const snled27351_led_t g_snled27351_leds[RGB_MATRIX_LED_COUNT] = { -/* Refer to IS31 manual for these locations - * driver - * | R location - * | | G location - * | | | B location - * | | | | */ - {0, I_1, G_1, H_1}, - {0, G_2, H_2, I_2}, - {0, H_3, I_3, G_3}, - {0, I_4, G_4, H_4}, - {0, G_5, H_5, I_5}, - {0, H_6, I_6, G_6}, - {0, I_7, G_7, H_7}, - {0, G_8, H_8, I_8}, - {0, H_9, I_9, G_9}, - {0, I_10, G_10, H_10}, - {0, G_11, H_11, I_11}, - {0, H_12, I_12, G_12}, - {0, I_13, G_13, H_13}, - {0, H_15, I_15, G_15}, - {0, I_16, G_16, H_16}, - {1, A_2, B_2, C_2,}, - - {0, C_1, A_1, B_1}, - {0, A_2, B_2, C_2}, - {0, B_3, C_3, A_3}, - {0, C_4, A_4, B_4}, - {0, A_5, B_5, C_5}, - {0, B_6, C_6, A_6}, - {0, C_7, A_7, B_7}, - {0, A_8, B_8, C_8}, - {0, B_9, C_9, A_9}, - {0, C_10, A_10, B_10}, - {0, A_11, B_11, C_11}, - {0, B_12, C_12, A_12}, - {0, C_13, A_13, B_13}, - {0, A_14, B_14, C_14}, - {0, B_15, C_15, A_15}, - {0, C_16, A_16, B_16}, - {1, G_2, H_2, I_2}, - - {0, F_1, D_1, E_1}, - {0, D_2, E_2, F_2}, - {0, E_3, F_3, D_3}, - {0, F_4, D_4, E_4}, - {0, D_5, E_5, F_5}, - {0, E_6, F_6, D_6}, - {0, F_7, D_7, E_7}, - {0, D_8, E_8, F_8}, - {0, E_9, F_9, D_9}, - {0, F_10, D_10, E_10}, - {0, D_11, E_11, F_11}, - {0, E_12, F_12, D_12}, - {0, F_13, D_13, E_13}, - {0, D_14, E_14, F_14}, - {0, E_15, F_15, D_15}, - {0, F_16, D_16, E_16}, - {1, A_1, B_1, C_1}, - - {1, C_16, A_16, B_16}, - {1, A_15, B_15, C_15}, - {1, B_14, C_14, A_14}, - {1, C_13, A_13, B_13}, - {1, A_12, B_12, C_12}, - {1, B_11, C_11, A_11}, - {1, C_10, A_10, B_10}, - {1, A_9, B_9, C_9}, - {1, B_8, C_8, A_8}, - {1, C_7, A_7, B_7}, - {1, A_6, B_6, C_6}, - {1, B_5, C_5, A_5}, - {1, A_3, B_3, C_3}, - - {1, I_16, G_16, H_16}, - {1, H_14, I_14, G_14}, - {1, I_13, G_13, H_13}, - {1, G_12, H_12, I_12}, - {1, H_11, I_11, G_11}, - {1, I_10, G_10, H_10}, - {1, G_9, H_9, I_9}, - {1, H_8, I_8, G_8}, - {1, I_7, G_7, H_7}, - {1, G_6, H_6, I_6}, - {1, H_5, I_5, G_5}, - {1, G_3, H_3, I_3}, - {1, I_1, G_1, H_1}, - - {1, F_16, D_16, E_16}, - {1, D_15, E_15, F_15}, - {1, E_14, F_14, D_14}, - {1, F_10, D_10, E_10}, - {1, D_6, E_6, F_6}, - {1, E_5, F_5, D_5}, - {1, F_4, D_4, E_4}, - {1, D_3, E_3, F_3}, - {1, E_2, F_2, D_2}, - {1, F_1, D_1, E_1}, - {1, A_4, B_4, C_4} -}; - -led_config_t g_led_config = { - { - { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, NO_LED, 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, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49 }, - { 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, NO_LED, 62, NO_LED, NO_LED, NO_LED }, - { 63, NO_LED, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, NO_LED, 74, NO_LED, 75, NO_LED }, - { 76, 77, 78, NO_LED, NO_LED, NO_LED, 79, NO_LED, NO_LED, NO_LED, 80, 81, 82, 83, 84, 85, 86} - }, - { - {0, 0}, {25, 0}, {38, 0}, {51, 0}, {64, 0}, {84, 0}, { 97, 0}, {110, 0}, {123, 0}, {142, 0}, {155, 0}, {168, 0}, {181, 0}, {198, 0}, {211, 0}, {224, 0}, - {0,14}, {12,14}, {25,14}, {38,14}, {51,14}, {64,14}, {77,14}, { 90,14}, {103,14}, {116,14}, {129,14}, {142,14}, {155,14}, {175,14}, {198,14}, {211,14}, {224,14}, - {3,26}, {19,26}, {32,26}, {45,26}, {58,26}, {71,26}, {84,26}, { 97,26}, {110,26}, {123,26}, {136,26}, {149,26}, {162,26}, {178,26}, {198,26}, {211,26}, {224,26}, - {4,39}, {22,39}, {35,39}, {48,39}, {61,39}, {74,39}, {87,39}, {100,39}, {113,39}, {126,39}, {139,39}, {152,39}, {173,39}, - {8,51}, {29,51}, {42,51}, {55,51}, {68,51}, {81,51}, {94,51}, {107,51}, {120,51}, {132,51}, {145,51}, {170,51}, {211,51}, - {1,64}, {17,64}, {34,64}, {82,64}, {131,64}, {147,64}, {163,64}, {180,64}, {198,64}, {211,64}, {224,64} - }, - { - 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, - 4, 8, 8, 8, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, - 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, - 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, - 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, - 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4 - } -}; -#endif diff --git a/keyboards/keychron/k8_pro/ansi/rgb/rules.mk b/keyboards/keychron/k8_pro/ansi/rgb/rules.mk deleted file mode 100644 index f886ea2e8e..0000000000 --- a/keyboards/keychron/k8_pro/ansi/rgb/rules.mk +++ /dev/null @@ -1 +0,0 @@ -# This file intentionally blank \ No newline at end of file diff --git a/keyboards/keychron/k8_pro/ansi/white/config.h b/keyboards/keychron/k8_pro/ansi/white/config.h deleted file mode 100644 index 2fbec99d3f..0000000000 --- a/keyboards/keychron/k8_pro/ansi/white/config.h +++ /dev/null @@ -1,44 +0,0 @@ -/* Copyright 2021 @ 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 . - */ - -#pragma once - -#ifdef LED_MATRIX_ENABLE -/* LED matrix driver configuration */ -# define DRIVER_COUNT 1 -# define SNLED27351_I2C_ADDRESS_1 SNLED27351_I2C_ADDRESS_GND -# define LED_MATRIX_LED_COUNT 88 - -/* Set to infinit, which is use in USB mode by default */ -# define LED_MATRIX_TIMEOUT LED_MATRIX_TIMEOUT_INFINITE -/* Allow shutdown of led driver to save power */ -# define LED_MATRIX_DRIVER_SHUTDOWN_ENABLE -/* Turn off backlight on low brightness to save power */ -# define LED_MATRIX_BRIGHTNESS_TURN_OFF_VAL 32 - -/* LED Matrix Animation modes. Explicitly enabled - * For full list of effects, see: - * https://docs.qmk.fm/#/feature_led_matrix?id=led-matrix-effects - */ -# define LED_MATRIX_KEYPRESSES - -/* Use first 6 channels of LED driver */ -# define PHASE_CHANNEL MSKPHASE_6CHANNEL - -/* Set LED driver current */ -# define SNLED27351_CURRENT_TUNE { 0x60, 0x60, 0x60, 0x60, 0x60, 0x60, 0x60, 0x60, 0x60, 0x60, 0x60, 0x60 } - -#endif diff --git a/keyboards/keychron/k8_pro/ansi/white/info.json b/keyboards/keychron/k8_pro/ansi/white/info.json deleted file mode 100644 index e0f2595114..0000000000 --- a/keyboards/keychron/k8_pro/ansi/white/info.json +++ /dev/null @@ -1,30 +0,0 @@ -{ - "usb": { - "pid": "0x0283", - "device_version": "1.0.0" - }, - "features": { - "led_matrix": true - }, - "led_matrix": { - "driver": "snled27351", - "animations": { - "none": true, - "solid": true, - "breathing": true, - "band_pinwheel": true, - "band_spiral": true, - "cycle_left_right": true, - "cycle_up_down": true, - "cycle_out_in": true, - "dual_beacon": true, - "solid_reactive_simple": true, - "solid_reactive_multiwide": true, - "solid_reactive_multinexus": true, - "solid_splash": true, - "wave_left_right": true, - "wave_up_down": true, - "effect_max": true - } - } -} diff --git a/keyboards/keychron/k8_pro/ansi/white/keymaps/default/keymap.c b/keyboards/keychron/k8_pro/ansi/white/keymaps/default/keymap.c deleted file mode 100644 index e41c039f9b..0000000000 --- a/keyboards/keychron/k8_pro/ansi/white/keymaps/default/keymap.c +++ /dev/null @@ -1,60 +0,0 @@ -/* Copyright 2021 @ 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 . - */ - -#include QMK_KEYBOARD_H - -// clang-format off -enum layers{ - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN -}; - -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { -[MAC_BASE] = LAYOUT_tkl_ansi( - KC_ESC, KC_BRID, KC_BRIU, KC_MCTL, KC_LPAD, BL_DOWN, BL_UP, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_SNAP, KC_SIRI, BL_STEP, - KC_GRV, 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_INS, KC_HOME, KC_PGUP, - 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_DEL, KC_END, KC_PGDN, - 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_LCTL, KC_LOPTN, KC_LCMMD, KC_SPC, KC_RCMMD, KC_ROPTN, MO(MAC_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - -[MAC_FN] = LAYOUT_tkl_ansi( - KC_TRNS, 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, BL_TOGG, - KC_TRNS, BT_HST1, BT_HST2, BT_HST3, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - BL_TOGG, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, BAT_LVL, NK_TOGG, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS), - -[WIN_BASE] = LAYOUT_tkl_ansi( - KC_ESC, 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_PSCR, KC_CTANA, BL_STEP, - KC_GRV, 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_INS, KC_HOME, KC_PGUP, - 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_DEL, KC_END, KC_PGDN, - 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_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, KC_RGUI, MO(WIN_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - -[WIN_FN] = LAYOUT_tkl_ansi( - KC_TRNS, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, BL_DOWN, BL_UP, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_TRNS, KC_TRNS, BL_TOGG, - KC_TRNS, BT_HST1, BT_HST2, BT_HST3, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - BL_TOGG, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, BAT_LVL, NK_TOGG, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, 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/keychron/k8_pro/ansi/white/keymaps/via/keymap.c b/keyboards/keychron/k8_pro/ansi/white/keymaps/via/keymap.c deleted file mode 100644 index 888508d7de..0000000000 --- a/keyboards/keychron/k8_pro/ansi/white/keymaps/via/keymap.c +++ /dev/null @@ -1,60 +0,0 @@ -/* Copyright 2021 @ 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 . - */ - -#include QMK_KEYBOARD_H - -// clang-format off -enum layers{ - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN -}; - -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { -[MAC_BASE] = LAYOUT_tkl_ansi( - KC_ESC, KC_BRID, KC_BRIU, KC_MCTL, KC_LPAD, BL_DOWN, BL_UP, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_SNAP, KC_SIRI, BL_STEP, - KC_GRV, 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_INS, KC_HOME, KC_PGUP, - 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_DEL, KC_END, KC_PGDN, - 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_LCTL, KC_LOPTN, KC_LCMMD, KC_SPC, KC_RCMMD, KC_ROPTN, MO(MAC_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - -[MAC_FN] = LAYOUT_tkl_ansi( - KC_TRNS, 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, BL_TOGG, - KC_TRNS, BT_HST1, BT_HST2, BT_HST3, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - BL_TOGG, BL_STEP, BL_UP, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, BL_DOWN, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, BAT_LVL, NK_TOGG, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS), - -[WIN_BASE] = LAYOUT_tkl_ansi( - KC_ESC, 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_PSCR, KC_CTANA, BL_STEP, - KC_GRV, 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_INS, KC_HOME, KC_PGUP, - 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_DEL, KC_END, KC_PGDN, - 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_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, KC_RGUI, MO(WIN_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - -[WIN_FN] = LAYOUT_tkl_ansi( - KC_TRNS, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, BL_DOWN, BL_UP, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_TRNS, KC_TRNS, BL_TOGG, - KC_TRNS, BT_HST1, BT_HST2, BT_HST3, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - BL_TOGG, BL_STEP, BL_UP, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, BL_DOWN, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, BAT_LVL, NK_TOGG, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, 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/keychron/k8_pro/ansi/white/keymaps/via/rules.mk b/keyboards/keychron/k8_pro/ansi/white/keymaps/via/rules.mk deleted file mode 100644 index 036bd6d1c3..0000000000 --- a/keyboards/keychron/k8_pro/ansi/white/keymaps/via/rules.mk +++ /dev/null @@ -1 +0,0 @@ -VIA_ENABLE = yes \ No newline at end of file diff --git a/keyboards/keychron/k8_pro/ansi/white/rules.mk b/keyboards/keychron/k8_pro/ansi/white/rules.mk deleted file mode 100644 index f886ea2e8e..0000000000 --- a/keyboards/keychron/k8_pro/ansi/white/rules.mk +++ /dev/null @@ -1 +0,0 @@ -# This file intentionally blank \ No newline at end of file diff --git a/keyboards/keychron/k8_pro/ansi/white/white.c b/keyboards/keychron/k8_pro/ansi/white/white.c deleted file mode 100644 index 48ce277c5a..0000000000 --- a/keyboards/keychron/k8_pro/ansi/white/white.c +++ /dev/null @@ -1,148 +0,0 @@ -/* Copyright 2021 @ 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 . - */ - -#include "quantum.h" - -// clang-format off -#ifdef LED_MATRIX_ENABLE -const snled27351_led_t g_snled27351_leds[LED_MATRIX_LED_COUNT] = { -/* Refer to snled27351manual for these locations - * driver - * | LED address - * | | */ - {0, A_16}, - {0, A_15}, - {0, A_14}, - {0, A_13}, - {0, A_12}, - {0, A_11}, - {0, A_10}, - {0, A_9}, - {0, A_8}, - {0, A_7}, - {0, A_6}, - {0, A_5}, - {0, A_4}, - {0, A_2}, - {0, A_1}, - {0, D_2}, - - {0, B_16}, - {0, B_15}, - {0, B_14}, - {0, B_13}, - {0, B_12}, - {0, B_11}, - {0, B_10}, - {0, B_9}, - {0, B_8}, - {0, B_7}, - {0, B_6}, - {0, B_5}, - {0, B_4}, - {0, B_3}, - {0, B_2}, - {0, B_1}, - {0, E_2}, - - {0, C_16}, - {0, C_15}, - {0, C_14}, - {0, C_13}, - {0, C_12}, - {0, C_11}, - {0, C_10}, - {0, C_9}, - {0, C_8}, - {0, C_7}, - {0, C_6}, - {0, C_5}, - {0, C_4}, - {0, C_3}, - {0, C_2}, - {0, C_1}, - {0, D_1}, - - {0, D_16}, - {0, D_15}, - {0, D_14}, - {0, D_13}, - {0, D_12}, - {0, D_11}, - {0, D_10}, - {0, D_9}, - {0, D_8}, - {0, D_7}, - {0, D_6}, - {0, D_5}, - {0, D_3}, - - {0, E_16}, - {0, E_14}, - {0, E_13}, - {0, E_12}, - {0, E_11}, - {0, E_10}, - {0, E_9}, - {0, E_8}, - {0, E_7}, - {0, E_6}, - {0, E_5}, - {0, E_3}, - {0, E_1}, - - {0, F_16}, - {0, F_15}, - {0, F_14}, - {0, F_10}, - {0, F_6}, - {0, F_5}, - {0, F_4}, - {0, F_3}, - {0, F_2}, - {0, F_1}, - {0, D_4}, -}; - - -led_config_t g_led_config = { - { - { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, NO_LED, 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, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49 }, - { 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, NO_LED, 62, NO_LED, NO_LED, NO_LED }, - { 63, NO_LED, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, NO_LED, 74, NO_LED, 75, NO_LED }, - { 76, 77, 78, NO_LED, NO_LED, NO_LED, 79, NO_LED, NO_LED, NO_LED, 80, 81, 82, 83, 84, 85, 86} - }, - { - {0, 0}, {25, 0}, {38, 0}, {51, 0}, {64, 0}, {84, 0}, { 97, 0}, {110, 0}, {123, 0}, {142, 0}, {155, 0}, {168, 0}, {181, 0}, {198, 0}, {211, 0}, {224, 0}, - {0,14}, {12,14}, {25,14}, {38,14}, {51,14}, {64,14}, {77,14}, { 90,14}, {103,14}, {116,14}, {129,14}, {142,14}, {155,14}, {175,14}, {198,14}, {211,14}, {224,14}, - {3,26}, {19,26}, {32,26}, {45,26}, {58,26}, {71,26}, {84,26}, { 97,26}, {110,26}, {123,26}, {136,26}, {149,26}, {162,26}, {178,26}, {198,26}, {211,26}, {224,26}, - {4,39}, {22,39}, {35,39}, {48,39}, {61,39}, {74,39}, {87,39}, {100,39}, {113,39}, {126,39}, {139,39}, {152,39}, {173,39}, - {8,51}, {29,51}, {42,51}, {55,51}, {68,51}, {81,51}, {94,51}, {107,51}, {120,51}, {132,51}, {145,51}, {170,51}, {211,51}, - {1,64}, {17,64}, {34,64}, {82,64}, {131,64}, {147,64}, {163,64}, {180,64}, {198,64}, {211,64}, {224,64} - }, - { - 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, - 4, 8, 8, 8, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, - 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, - 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, - 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, - 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4 - } -}; - -#endif \ No newline at end of file diff --git a/keyboards/keychron/k8_pro/config.h b/keyboards/keychron/k8_pro/config.h deleted file mode 100644 index d7dec42abd..0000000000 --- a/keyboards/keychron/k8_pro/config.h +++ /dev/null @@ -1,95 +0,0 @@ -/* Copyright 2021 @ 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 . - */ - -#pragma once - -/* Turn off effects when suspended */ -#define RGB_DISABLE_WHEN_USB_SUSPENDED -#define LED_DISABLE_WHEN_USB_SUSPENDED - -/* DIP switch for Mac/win OS switch */ -#define DIP_SWITCH_PINS \ - { A8 } - -/* Caps lock LED Pin */ -#define LED_CAPS_LOCK_PIN A7 -#define LED_PIN_ON_STATE 1 - -/* 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 A10 - -# 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 A4 -# define BAT_LOW_LED_PIN_ON_STATE 1 - -# define HOST_DEVICES_COUNT 3 - -# define HOST_LED_PIN_LIST \ - { H3, H3, H3 } -# define HOST_LED_PIN_ON_STATE 1 - -# 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 - -/* Emulated EEPROM configuration */ -#define WEAR_LEVELING_LOGICAL_SIZE 2048 -#define WEAR_LEVELING_BACKING_SIZE (WEAR_LEVELING_LOGICAL_SIZE * 2) -#define DYNAMIC_KEYMAP_EEPROM_MAX_ADDR 2047 - -/* Factory test keys */ -#define FN_KEY1 MO(1) -#define FN_KEY2 MO(3) diff --git a/keyboards/keychron/k8_pro/halconf.h b/keyboards/keychron/k8_pro/halconf.h deleted file mode 100644 index 306f917783..0000000000 --- a/keyboards/keychron/k8_pro/halconf.h +++ /dev/null @@ -1,29 +0,0 @@ -/* 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 _CHIBIOS_HAL_CONF_VER_8_0_ - -#define HAL_USE_I2C TRUE - -#ifdef KC_BLUETOOTH_ENABLE -# define PAL_USE_CALLBACKS TRUE -# define HAL_USE_SERIAL TRUE -# define HAL_USE_RTC TRUE -#endif - -#include_next diff --git a/keyboards/keychron/k8_pro/info.json b/keyboards/keychron/k8_pro/info.json deleted file mode 100644 index c5f2fe00b1..0000000000 --- a/keyboards/keychron/k8_pro/info.json +++ /dev/null @@ -1,325 +0,0 @@ -{ - "keyboard_name": "Keychron K8 Pro", - "manufacturer": "Keychron", - "url": "https://github.com/Keychron", - "maintainer": "lokher", - "processor": "STM32L432", - "bootloader": "stm32-dfu", - "usb": { - "vid": "0x3434" - }, - "features": { - "bootmagic": true, - "mousekey": true, - "extrakey": true, - "nkro": true, - "dip_switch": true, - "raw": true - }, - "diode_direction": "ROW2COL", - "matrix_size": { - "rows": 6, - "cols": 17 - }, - "matrix_pins": { - "rows": ["B5", "B4", "B3", "A15", "A14", "A13"], - "cols": ["B0", null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null], - "custom": true, - "custom_lite": true - }, - "layouts": { - "LAYOUT_tkl_ansi": { - "layout": [ - {"matrix":[0, 0], "x":0, "y":0}, - {"matrix":[0, 1], "x":2, "y":0}, - {"matrix":[0, 2], "x":3, "y":0}, - {"matrix":[0, 3], "x":4, "y":0}, - {"matrix":[0, 4], "x":5, "y":0}, - {"matrix":[0, 5], "x":6.5, "y":0}, - {"matrix":[0, 6], "x":7.5, "y":0}, - {"matrix":[0, 7], "x":8.5, "y":0}, - {"matrix":[0, 8], "x":9.5, "y":0}, - {"matrix":[0, 9], "x":11, "y":0}, - {"matrix":[0,10], "x":12, "y":0}, - {"matrix":[0,11], "x":13, "y":0}, - {"matrix":[0,12], "x":14, "y":0}, - {"matrix":[0,14], "x":15.25, "y":0}, - {"matrix":[0,15], "x":16.25, "y":0}, - {"matrix":[0,16], "x":17.25, "y":0}, - - {"matrix":[1, 0], "x":0, "y":1.25}, - {"matrix":[1, 1], "x":1, "y":1.25}, - {"matrix":[1, 2], "x":2, "y":1.25}, - {"matrix":[1, 3], "x":3, "y":1.25}, - {"matrix":[1, 4], "x":4, "y":1.25}, - {"matrix":[1, 5], "x":5, "y":1.25}, - {"matrix":[1, 6], "x":6, "y":1.25}, - {"matrix":[1, 7], "x":7, "y":1.25}, - {"matrix":[1, 8], "x":8, "y":1.25}, - {"matrix":[1, 9], "x":9, "y":1.25}, - {"matrix":[1,10], "x":10, "y":1.25}, - {"matrix":[1,11], "x":11, "y":1.25}, - {"matrix":[1,12], "x":12, "y":1.25}, - {"matrix":[1,13], "x":13, "y":1.25, "w":2}, - {"matrix":[1,14], "x":15.25, "y":1.25}, - {"matrix":[1,15], "x":16.25, "y":1.25}, - {"matrix":[1,16], "x":17.25, "y":1.25}, - - {"matrix":[2, 0], "x":0, "y":2.25, "w":1.5}, - {"matrix":[2, 1], "x":1.5, "y":2.25}, - {"matrix":[2, 2], "x":2.5, "y":2.25}, - {"matrix":[2, 3], "x":3.5, "y":2.25}, - {"matrix":[2, 4], "x":4.5, "y":2.25}, - {"matrix":[2, 5], "x":5.5, "y":2.25}, - {"matrix":[2, 6], "x":6.5, "y":2.25}, - {"matrix":[2, 7], "x":7.5, "y":2.25}, - {"matrix":[2, 8], "x":8.5, "y":2.25}, - {"matrix":[2, 9], "x":9.5, "y":2.25}, - {"matrix":[2,10], "x":10.5, "y":2.25}, - {"matrix":[2,11], "x":11.5, "y":2.25}, - {"matrix":[2,12], "x":12.5, "y":2.25}, - {"matrix":[2,13], "x":13.5, "y":2.25, "w":1.5}, - {"matrix":[2,14], "x":15.25, "y":2.25}, - {"matrix":[2,15], "x":16.25, "y":2.25}, - {"matrix":[2,16], "x":17.25, "y":2.25}, - - {"matrix":[3, 0], "x":0, "y":3.25, "w":1.75}, - {"matrix":[3, 1], "x":1.75, "y":3.25}, - {"matrix":[3, 2], "x":2.75, "y":3.25}, - {"matrix":[3, 3], "x":3.75, "y":3.25}, - {"matrix":[3, 4], "x":4.75, "y":3.25}, - {"matrix":[3, 5], "x":5.75, "y":3.25}, - {"matrix":[3, 6], "x":6.75, "y":3.25}, - {"matrix":[3, 7], "x":7.75, "y":3.25}, - {"matrix":[3, 8], "x":8.75, "y":3.25}, - {"matrix":[3, 9], "x":9.75, "y":3.25}, - {"matrix":[3,10], "x":10.75, "y":3.25}, - {"matrix":[3,11], "x":11.75, "y":3.25}, - {"matrix":[3,13], "x":12.75, "y":3.25, "w":2.25}, - - {"matrix":[4, 0], "x":0, "y":4.25, "w":2.25}, - {"matrix":[4, 2], "x":2.25, "y":4.25}, - {"matrix":[4, 3], "x":3.25, "y":4.25}, - {"matrix":[4, 4], "x":4.25, "y":4.25}, - {"matrix":[4, 5], "x":5.25, "y":4.25}, - {"matrix":[4, 6], "x":6.25, "y":4.25}, - {"matrix":[4, 7], "x":7.25, "y":4.25}, - {"matrix":[4, 8], "x":8.25, "y":4.25}, - {"matrix":[4, 9], "x":9.25, "y":4.25}, - {"matrix":[4,10], "x":10.25, "y":4.25}, - {"matrix":[4,11], "x":11.25, "y":4.25}, - {"matrix":[4,13], "x":12.25, "y":4.25, "w":2.75}, - {"matrix":[4,15], "x":16.25, "y":4.25}, - - {"matrix":[5, 0], "x":0, "y":5.25, "w":1.25}, - {"matrix":[5, 1], "x":1.25, "y":5.25, "w":1.25}, - {"matrix":[5, 2], "x":2.5, "y":5.25, "w":1.25}, - {"matrix":[5, 6], "x":3.75, "y":5.25, "w":6.25}, - {"matrix":[5,10], "x":10, "y":5.25, "w":1.25}, - {"matrix":[5,11], "x":11.25, "y":5.25, "w":1.25}, - {"matrix":[5,12], "x":12.5, "y":5.25, "w":1.25}, - {"matrix":[5,13], "x":13.75, "y":5.25, "w":1.25}, - {"matrix":[5,14], "x":15.25, "y":5.25}, - {"matrix":[5,15], "x":16.25, "y":5.25}, - {"matrix":[5,16], "x":17.25, "y":5.25} - ] - }, - "LAYOUT_tkl_iso": { - "layout": [ - {"matrix":[0, 0], "x":0, "y":0}, - {"matrix":[0, 1], "x":2, "y":0}, - {"matrix":[0, 2], "x":3, "y":0}, - {"matrix":[0, 3], "x":4, "y":0}, - {"matrix":[0, 4], "x":5, "y":0}, - {"matrix":[0, 5], "x":6.5, "y":0}, - {"matrix":[0, 6], "x":7.5, "y":0}, - {"matrix":[0, 7], "x":8.5, "y":0}, - {"matrix":[0, 8], "x":9.5, "y":0}, - {"matrix":[0, 9], "x":11, "y":0}, - {"matrix":[0,10], "x":12, "y":0}, - {"matrix":[0,11], "x":13, "y":0}, - {"matrix":[0,12], "x":14, "y":0}, - {"matrix":[0,14], "x":15.25, "y":0}, - {"matrix":[0,15], "x":16.25, "y":0}, - {"matrix":[0,16], "x":17.25, "y":0}, - - {"matrix":[1, 0], "x":0, "y":1.25}, - {"matrix":[1, 1], "x":1, "y":1.25}, - {"matrix":[1, 2], "x":2, "y":1.25}, - {"matrix":[1, 3], "x":3, "y":1.25}, - {"matrix":[1, 4], "x":4, "y":1.25}, - {"matrix":[1, 5], "x":5, "y":1.25}, - {"matrix":[1, 6], "x":6, "y":1.25}, - {"matrix":[1, 7], "x":7, "y":1.25}, - {"matrix":[1, 8], "x":8, "y":1.25}, - {"matrix":[1, 9], "x":9, "y":1.25}, - {"matrix":[1,10], "x":10, "y":1.25}, - {"matrix":[1,11], "x":11, "y":1.25}, - {"matrix":[1,12], "x":12, "y":1.25}, - {"matrix":[1,13], "x":13, "y":1.25, "w":2}, - {"matrix":[1,14], "x":15.25, "y":1.25}, - {"matrix":[1,15], "x":16.25, "y":1.25}, - {"matrix":[1,16], "x":17.25, "y":1.25}, - - {"matrix":[2, 0], "x":0, "y":2.25, "w":1.5}, - {"matrix":[2, 1], "x":1.5, "y":2.25}, - {"matrix":[2, 2], "x":2.5, "y":2.25}, - {"matrix":[2, 3], "x":3.5, "y":2.25}, - {"matrix":[2, 4], "x":4.5, "y":2.25}, - {"matrix":[2, 5], "x":5.5, "y":2.25}, - {"matrix":[2, 6], "x":6.5, "y":2.25}, - {"matrix":[2, 7], "x":7.5, "y":2.25}, - {"matrix":[2, 8], "x":8.5, "y":2.25}, - {"matrix":[2, 9], "x":9.5, "y":2.25}, - {"matrix":[2,10], "x":10.5, "y":2.25}, - {"matrix":[2,11], "x":11.5, "y":2.25}, - {"matrix":[2,12], "x":12.5, "y":2.25}, - {"matrix":[2,14], "x":15.25, "y":2.25}, - {"matrix":[2,15], "x":16.25, "y":2.25}, - {"matrix":[2,16], "x":17.25, "y":2.25}, - - {"matrix":[3, 0], "x":0, "y":3.25, "w":1.75}, - {"matrix":[3, 1], "x":1.75, "y":3.25}, - {"matrix":[3, 2], "x":2.75, "y":3.25}, - {"matrix":[3, 3], "x":3.75, "y":3.25}, - {"matrix":[3, 4], "x":4.75, "y":3.25}, - {"matrix":[3, 5], "x":5.75, "y":3.25}, - {"matrix":[3, 6], "x":6.75, "y":3.25}, - {"matrix":[3, 7], "x":7.75, "y":3.25}, - {"matrix":[3, 8], "x":8.75, "y":3.25}, - {"matrix":[3, 9], "x":9.75, "y":3.25}, - {"matrix":[3,10], "x":10.75, "y":3.25}, - {"matrix":[3,11], "x":11.75, "y":3.25}, - {"matrix":[3,13], "x":12.75, "y":3.25}, - {"matrix":[2,13], "x":13.75, "y":2.25, "w":1.25, "h":2}, - - {"matrix":[4, 0], "x":0, "y":4.25, "w":1.25}, - {"matrix":[4, 1], "x":1.25, "y":4.25}, - {"matrix":[4, 2], "x":2.25, "y":4.25}, - {"matrix":[4, 3], "x":3.25, "y":4.25}, - {"matrix":[4, 4], "x":4.25, "y":4.25}, - {"matrix":[4, 5], "x":5.25, "y":4.25}, - {"matrix":[4, 6], "x":6.25, "y":4.25}, - {"matrix":[4, 7], "x":7.25, "y":4.25}, - {"matrix":[4, 8], "x":8.25, "y":4.25}, - {"matrix":[4, 9], "x":9.25, "y":4.25}, - {"matrix":[4,10], "x":10.25, "y":4.25}, - {"matrix":[4,11], "x":11.25, "y":4.25}, - {"matrix":[4,13], "x":12.25, "y":4.25, "w":2.75}, - {"matrix":[4,15], "x":16.25, "y":4.25}, - - {"matrix":[5, 0], "x":0, "y":5.25, "w":1.25}, - {"matrix":[5, 1], "x":1.25, "y":5.25, "w":1.25}, - {"matrix":[5, 2], "x":2.5, "y":5.25, "w":1.25}, - {"matrix":[5, 6], "x":3.75, "y":5.25, "w":6.25}, - {"matrix":[5,10], "x":10, "y":5.25, "w":1.25}, - {"matrix":[5,11], "x":11.25, "y":5.25, "w":1.25}, - {"matrix":[5,12], "x":12.5, "y":5.25, "w":1.25}, - {"matrix":[5,13], "x":13.75, "y":5.25, "w":1.25}, - {"matrix":[5,14], "x":15.25, "y":5.25}, - {"matrix":[5,15], "x":16.25, "y":5.25}, - {"matrix":[5,16], "x":17.25, "y":5.25} - ] - }, - "LAYOUT_91_jis": { - "layout": [ - {"matrix":[0,0], "x":0, "y":0}, - {"matrix":[0,1], "x":2, "y":0}, - {"matrix":[0,2], "x":3, "y":0}, - {"matrix":[0,3], "x":4, "y":0}, - {"matrix":[0,4], "x":5, "y":0}, - {"matrix":[0,5], "x":6.5, "y":0}, - {"matrix":[0,6], "x":7.5, "y":0}, - {"matrix":[0,7], "x":8.5, "y":0}, - {"matrix":[0,8], "x":9.5, "y":0}, - {"matrix":[0,9], "x":11, "y":0}, - {"matrix":[0,10], "x":12, "y":0}, - {"matrix":[0,11], "x":13, "y":0}, - {"matrix":[0,12], "x":14, "y":0}, - {"matrix":[0,14], "x":15.25, "y":0}, - {"matrix":[0,15], "x":16.25, "y":0}, - {"matrix":[0,16], "x":17.25, "y":0}, - - {"matrix":[1,0], "x":0, "y":1.25}, - {"matrix":[1,1], "x":1, "y":1.25}, - {"matrix":[1,2], "x":2, "y":1.25}, - {"matrix":[1,3], "x":3, "y":1.25}, - {"matrix":[1,4], "x":4, "y":1.25}, - {"matrix":[1,5], "x":5, "y":1.25}, - {"matrix":[1,6], "x":6, "y":1.25}, - {"matrix":[1,7], "x":7, "y":1.25}, - {"matrix":[1,8], "x":8, "y":1.25}, - {"matrix":[1,9], "x":9, "y":1.25}, - {"matrix":[1,10], "x":10, "y":1.25}, - {"matrix":[1,11], "x":11, "y":1.25}, - {"matrix":[1,12], "x":12, "y":1.25}, - {"matrix":[1,13], "x":13, "y":1.25}, - {"matrix":[0,13], "x":14, "y":1.25}, - {"matrix":[1,14], "x":15.25, "y":1.25}, - {"matrix":[1,15], "x":16.25, "y":1.25}, - {"matrix":[1,16], "x":17.25, "y":1.25}, - - {"matrix":[2,0], "x":0, "y":2.25, "w":1.5}, - {"matrix":[2,1], "x":1.5, "y":2.25}, - {"matrix":[2,2], "x":2.5, "y":2.25}, - {"matrix":[2,3], "x":3.5, "y":2.25}, - {"matrix":[2,4], "x":4.5, "y":2.25}, - {"matrix":[2,5], "x":5.5, "y":2.25}, - {"matrix":[2,6], "x":6.5, "y":2.25}, - {"matrix":[2,7], "x":7.5, "y":2.25}, - {"matrix":[2,8], "x":8.5, "y":2.25}, - {"matrix":[2,9], "x":9.5, "y":2.25}, - {"matrix":[2,10], "x":10.5, "y":2.25}, - {"matrix":[2,11], "x":11.5, "y":2.25}, - {"matrix":[2,12], "x":12.5, "y":2.25}, - {"matrix":[2,14], "x":15.25, "y":2.25}, - {"matrix":[2,15], "x":16.25, "y":2.25}, - {"matrix":[2,16], "x":17.25, "y":2.25}, - - {"matrix":[3,0], "x":0, "y":3.25, "w":1.75}, - {"matrix":[3,1], "x":1.75, "y":3.25}, - {"matrix":[3,2], "x":2.75, "y":3.25}, - {"matrix":[3,3], "x":3.75, "y":3.25}, - {"matrix":[3,4], "x":4.75, "y":3.25}, - {"matrix":[3,5], "x":5.75, "y":3.25}, - {"matrix":[3,6], "x":6.75, "y":3.25}, - {"matrix":[3,7], "x":7.75, "y":3.25}, - {"matrix":[3,8], "x":8.75, "y":3.25}, - {"matrix":[3,9], "x":9.75, "y":3.25}, - {"matrix":[3,10], "x":10.75, "y":3.25}, - {"matrix":[3,11], "x":11.75, "y":3.25}, - {"matrix":[3,13], "x":12.75, "y":3.25}, - {"matrix":[2,13], "x":13.75, "y":2.25, "w":1.25, "h":2}, - - {"matrix":[4,0], "x":0, "y":4.25, "w":2.25}, - {"matrix":[4,2], "x":2.25, "y":4.25}, - {"matrix":[4,3], "x":3.25, "y":4.25}, - {"matrix":[4,4], "x":4.25, "y":4.25}, - {"matrix":[4,5], "x":5.25, "y":4.25}, - {"matrix":[4,6], "x":6.25, "y":4.25}, - {"matrix":[4,7], "x":7.25, "y":4.25}, - {"matrix":[4,8], "x":8.25, "y":4.25}, - {"matrix":[4,9], "x":9.25, "y":4.25}, - {"matrix":[4,10], "x":10.25, "y":4.25}, - {"matrix":[4,11], "x":11.25, "y":4.25}, - {"matrix":[4,12], "x":12.25, "y":4.25}, - {"matrix":[4,13], "x":13.25, "y":4.25, "w":1.75}, - {"matrix":[4,15], "x":16.25, "y":4.25}, - - {"matrix":[5,0], "x":0, "y":5.25, "w":1.25}, - {"matrix":[5,1], "x":1.25, "y":5.25}, - {"matrix":[5,2], "x":2.25, "y":5.25, "w":1.25}, - {"matrix":[5,3], "x":3.5, "y":5.25}, - {"matrix":[5,6], "x":4.5, "y":5.25, "w":4.75}, - {"matrix":[5,9], "x":9.25, "y":5.25}, - {"matrix":[5,10], "x":10.25, "y":5.25, "w":1.25}, - {"matrix":[5,11], "x":11.5, "y":5.25, "w":1.25}, - {"matrix":[5,12], "x":12.75, "y":5.25}, - {"matrix":[5,13], "x":13.75, "y":5.25, "w":1.25}, - {"matrix":[5,14], "x":15.25, "y":5.25}, - {"matrix":[5,15], "x":16.25, "y":5.25}, - {"matrix":[5,16], "x":17.25, "y":5.25} - ] - } - } -} diff --git a/keyboards/keychron/k8_pro/iso/rgb/config.h b/keyboards/keychron/k8_pro/iso/rgb/config.h deleted file mode 100644 index a7d719c22d..0000000000 --- a/keyboards/keychron/k8_pro/iso/rgb/config.h +++ /dev/null @@ -1,46 +0,0 @@ -/* Copyright 2021 @ 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 . - */ - -#ifdef RGB_MATRIX_ENABLE -/* RGB Matrix driver configuration */ -# define DRIVER_COUNT 2 - -# define DRIVER_ADDR_1 0b1110111 -# define DRIVER_ADDR_2 0b1110100 -# define DRIVER_1_LED_COUNT 47 -# define DRIVER_2_LED_COUNT 41 -# define RGB_MATRIX_LED_COUNT (DRIVER_1_LED_COUNT + DRIVER_2_LED_COUNT) - -/* Set to infinit, which is use in USB mode by default */ -# define RGB_MATRIX_TIMEOUT RGB_MATRIX_TIMEOUT_INFINITE -/* Allow shutdown of led driver to save power */ -# define RGB_MATRIX_DRIVER_SHUTDOWN_ENABLE -/* Turn off backlight on low brightness to save power */ -# define RGB_MATRIX_BRIGHTNESS_TURN_OFF_VAL 32 - -/* RGB Matrix Animation modes. Explicitly enabled - * For full list of effects, see: - * https://docs.qmk.fm/#/feature_rgb_matrix?id=rgb-matrix-effects - */ - -# define RGB_MATRIX_KEYPRESSES -# define RGB_MATRIX_FRAMEBUFFER_EFFECTS - -/* Set LED driver current */ -# define SNLED27351_CURRENT_TUNE \ - { 0x38, 0x38, 0x38, 0x38, 0x38, 0x38, 0x38, 0x38, 0x38, 0x38, 0x38, 0x38 } - -#endif diff --git a/keyboards/keychron/k8_pro/iso/rgb/info.json b/keyboards/keychron/k8_pro/iso/rgb/info.json deleted file mode 100644 index 31db1883c9..0000000000 --- a/keyboards/keychron/k8_pro/iso/rgb/info.json +++ /dev/null @@ -1,35 +0,0 @@ -{ - "usb": { - "pid": "0x0281", - "device_version": "1.0.1" - }, - "features": { - "rgb_matrix": true - }, - "rgb_matrix": { - "driver": "snled27351", - "animations": { - "breathing": true, - "band_spiral_val": true, - "cycle_all": true, - "cycle_left_right": true, - "cycle_up_down": true, - "rainbow_moving_chevron": true, - "cycle_out_in": true, - "cycle_out_in_dual": true, - "cycle_pinwheel": true, - "cycle_spiral": true, - "dual_beacon": true, - "rainbow_beacon": true, - "jellybean_raindrops": true, - "pixel_rain": true, - "typing_heatmap": true, - "digital_rain": true, - "solid_reactive_simple": true, - "solid_reactive_multiwide": true, - "solid_reactive_multinexus": true, - "splash": true, - "solid_splash": true - } - } -} diff --git a/keyboards/keychron/k8_pro/iso/rgb/keymaps/default/keymap.c b/keyboards/keychron/k8_pro/iso/rgb/keymaps/default/keymap.c deleted file mode 100644 index d7db627817..0000000000 --- a/keyboards/keychron/k8_pro/iso/rgb/keymaps/default/keymap.c +++ /dev/null @@ -1,60 +0,0 @@ -/* Copyright 2021 @ 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 . - */ - -#include QMK_KEYBOARD_H - -// clang-format off -enum layers{ - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN -}; - -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { -[MAC_BASE] = LAYOUT_tkl_iso( - KC_ESC, KC_BRID, KC_BRIU, KC_MCTL, KC_LPAD, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_SNAP, KC_SIRI, RGB_MOD, - KC_GRV, 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_INS, KC_HOME, KC_PGUP, - 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_DEL, KC_END, KC_PGDN, - 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_NUHS, KC_ENT, - KC_LSFT, KC_NUBS, 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_LCTL, KC_LOPTN, KC_LCMMD, KC_SPC, KC_RCMMD, KC_ROPTN, MO(MAC_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - -[MAC_FN] = LAYOUT_tkl_iso( - KC_TRNS, 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, - KC_TRNS, BT_HST1, BT_HST2, BT_HST3, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, BAT_LVL, NK_TOGG, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS), - -[WIN_BASE] = LAYOUT_tkl_iso( - KC_ESC, 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_PSCR, KC_CTANA, RGB_MOD, - KC_GRV, 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_INS, KC_HOME, KC_PGUP, - 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_DEL, KC_END, KC_PGDN, - 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_NUHS, KC_ENT, - KC_LSFT, KC_NUBS, 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_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, KC_RGUI, MO(WIN_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - -[WIN_FN] = LAYOUT_tkl_iso( - KC_TRNS, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_TRNS, KC_TRNS, RGB_TOG, - KC_TRNS, BT_HST1, BT_HST2, BT_HST3, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, BAT_LVL, NK_TOGG, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, 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/keychron/k8_pro/iso/rgb/keymaps/via/keymap.c b/keyboards/keychron/k8_pro/iso/rgb/keymaps/via/keymap.c deleted file mode 100644 index d7db627817..0000000000 --- a/keyboards/keychron/k8_pro/iso/rgb/keymaps/via/keymap.c +++ /dev/null @@ -1,60 +0,0 @@ -/* Copyright 2021 @ 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 . - */ - -#include QMK_KEYBOARD_H - -// clang-format off -enum layers{ - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN -}; - -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { -[MAC_BASE] = LAYOUT_tkl_iso( - KC_ESC, KC_BRID, KC_BRIU, KC_MCTL, KC_LPAD, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_SNAP, KC_SIRI, RGB_MOD, - KC_GRV, 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_INS, KC_HOME, KC_PGUP, - 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_DEL, KC_END, KC_PGDN, - 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_NUHS, KC_ENT, - KC_LSFT, KC_NUBS, 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_LCTL, KC_LOPTN, KC_LCMMD, KC_SPC, KC_RCMMD, KC_ROPTN, MO(MAC_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - -[MAC_FN] = LAYOUT_tkl_iso( - KC_TRNS, 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, - KC_TRNS, BT_HST1, BT_HST2, BT_HST3, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, BAT_LVL, NK_TOGG, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS), - -[WIN_BASE] = LAYOUT_tkl_iso( - KC_ESC, 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_PSCR, KC_CTANA, RGB_MOD, - KC_GRV, 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_INS, KC_HOME, KC_PGUP, - 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_DEL, KC_END, KC_PGDN, - 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_NUHS, KC_ENT, - KC_LSFT, KC_NUBS, 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_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, KC_RGUI, MO(WIN_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - -[WIN_FN] = LAYOUT_tkl_iso( - KC_TRNS, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_TRNS, KC_TRNS, RGB_TOG, - KC_TRNS, BT_HST1, BT_HST2, BT_HST3, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, BAT_LVL, NK_TOGG, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, 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/keychron/k8_pro/iso/rgb/keymaps/via/rules.mk b/keyboards/keychron/k8_pro/iso/rgb/keymaps/via/rules.mk deleted file mode 100644 index 036bd6d1c3..0000000000 --- a/keyboards/keychron/k8_pro/iso/rgb/keymaps/via/rules.mk +++ /dev/null @@ -1 +0,0 @@ -VIA_ENABLE = yes \ No newline at end of file diff --git a/keyboards/keychron/k8_pro/iso/rgb/rgb.c b/keyboards/keychron/k8_pro/iso/rgb/rgb.c deleted file mode 100644 index 21bc3b02e0..0000000000 --- a/keyboards/keychron/k8_pro/iso/rgb/rgb.c +++ /dev/null @@ -1,149 +0,0 @@ -/* Copyright 2021 @ 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 . - */ - -#include "quantum.h" - -#ifdef RGB_MATRIX_ENABLE -const snled27351_led_t g_snled27351_leds[RGB_MATRIX_LED_COUNT] = { -/* Refer to CKLED manual for these locations - * driver - * | R location - * | | G location - * | | | B location - * | | | | */ - {0, I_1, G_1, H_1}, - {0, G_2, H_2, I_2}, - {0, H_3, I_3, G_3}, - {0, I_4, G_4, H_4}, - {0, G_5, H_5, I_5}, - {0, H_6, I_6, G_6}, - {0, I_7, G_7, H_7}, - {0, G_8, H_8, I_8}, - {0, H_9, I_9, G_9}, - {0, I_10, G_10, H_10}, - {0, G_11, H_11, I_11}, - {0, H_12, I_12, G_12}, - {0, I_13, G_13, H_13}, - {0, H_15, I_15, G_15}, - {0, I_16, G_16, H_16}, - {1, A_2, B_2, C_2,}, - - {0, C_1, A_1, B_1}, - {0, A_2, B_2, C_2}, - {0, B_3, C_3, A_3}, - {0, C_4, A_4, B_4}, - {0, A_5, B_5, C_5}, - {0, B_6, C_6, A_6}, - {0, C_7, A_7, B_7}, - {0, A_8, B_8, C_8}, - {0, B_9, C_9, A_9}, - {0, C_10, A_10, B_10}, - {0, A_11, B_11, C_11}, - {0, B_12, C_12, A_12}, - {0, C_13, A_13, B_13}, - {0, A_14, B_14, C_14}, - {0, B_15, C_15, A_15}, - {0, C_16, A_16, B_16}, - {1, G_2, H_2, I_2}, - - {0, F_1, D_1, E_1}, - {0, D_2, E_2, F_2}, - {0, E_3, F_3, D_3}, - {0, F_4, D_4, E_4}, - {0, D_5, E_5, F_5}, - {0, E_6, F_6, D_6}, - {0, F_7, D_7, E_7}, - {0, D_8, E_8, F_8}, - {0, E_9, F_9, D_9}, - {0, F_10, D_10, E_10}, - {0, D_11, E_11, F_11}, - {0, E_12, F_12, D_12}, - {0, F_13, D_13, E_13}, - {0, D_14, E_14, F_14}, - {0, E_15, F_15, D_15}, - {0, F_16, D_16, E_16}, - {1, A_1, B_1, C_1}, - - {1, C_16, A_16, B_16}, - {1, A_15, B_15, C_15}, - {1, B_14, C_14, A_14}, - {1, C_13, A_13, B_13}, - {1, A_12, B_12, C_12}, - {1, B_11, C_11, A_11}, - {1, C_10, A_10, B_10}, - {1, A_9, B_9, C_9}, - {1, B_8, C_8, A_8}, - {1, C_7, A_7, B_7}, - {1, A_6, B_6, C_6}, - {1, B_5, C_5, A_5}, - {1, A_3, B_3, C_3}, - - {1, I_16, G_16, H_16}, - {1, G_15, H_15, I_15}, - {1, H_14, I_14, G_14}, - {1, I_13, G_13, H_13}, - {1, G_12, H_12, I_12}, - {1, H_11, I_11, G_11}, - {1, I_10, G_10, H_10}, - {1, G_9, H_9, I_9}, - {1, H_8, I_8, G_8}, - {1, I_7, G_7, H_7}, - {1, G_6, H_6, I_6}, - {1, H_5, I_5, G_5}, - {1, G_3, H_3, I_3}, - {1, I_1, G_1, H_1}, - - {1, F_16, D_16, E_16}, - {1, D_15, E_15, F_15}, - {1, E_14, F_14, D_14}, - {1, F_10, D_10, E_10}, - {1, D_6, E_6, F_6}, - {1, E_5, F_5, D_5}, - {1, F_4, D_4, E_4}, - {1, D_3, E_3, F_3}, - {1, E_2, F_2, D_2}, - {1, F_1, D_1, E_1}, - {1, A_4, B_4, C_4} -}; - - -led_config_t g_led_config = { - { - { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, NO_LED, 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, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49 }, - { 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, NO_LED, 62, NO_LED, NO_LED, NO_LED }, - { 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, NO_LED, 75, NO_LED, 76, NO_LED }, - { 77, 78, 79, NO_LED, NO_LED, NO_LED, 80, NO_LED, NO_LED, NO_LED, 81, 82, 83, 84, 85, 86, 87} - }, - { - {0, 0}, {25, 0}, {38, 0}, {51, 0}, {64, 0}, {84, 0}, { 97, 0}, {110, 0}, {123, 0}, {142, 0}, {155, 0}, {168, 0}, {181, 0}, {198, 0}, {211, 0}, {224, 0}, - {0,14}, {12,14}, {25,14}, {38,14}, {51,14}, {64,14}, {77,14}, { 90,14}, {103,14}, {116,14}, {129,14}, {142,14}, {155,14}, {175,14}, {198,14}, {211,14}, {224,14}, - {3,26}, {19,26}, {32,26}, {45,26}, {58,26}, {71,26}, {84,26}, { 97,26}, {110,26}, {123,26}, {136,26}, {149,26}, {162,26}, {178,26}, {198,26}, {211,26}, {224,26}, - {4,39}, {22,39}, {35,39}, {48,39}, {61,39}, {74,39}, {87,39}, {100,39}, {113,39}, {126,39}, {139,39}, {152,39}, {173,39}, - {0,51}, {16,51}, {29,51}, {42,51}, {55,51}, {68,51}, {81,51}, {94,51}, {107,51}, {120,51}, {132,51}, {145,51}, {170,51}, {211,51}, - {1,64}, {17,64}, {34,64}, {82,64}, {131,64}, {147,64}, {163,64}, {180,64}, {198,64}, {211,64}, {224,64} - }, - { - 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, - 4, 8, 8, 8, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, - 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, - 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, - 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, - 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4 - } -}; -#endif \ No newline at end of file diff --git a/keyboards/keychron/k8_pro/iso/rgb/rules.mk b/keyboards/keychron/k8_pro/iso/rgb/rules.mk deleted file mode 100644 index f886ea2e8e..0000000000 --- a/keyboards/keychron/k8_pro/iso/rgb/rules.mk +++ /dev/null @@ -1 +0,0 @@ -# This file intentionally blank \ No newline at end of file diff --git a/keyboards/keychron/k8_pro/iso/white/config.h b/keyboards/keychron/k8_pro/iso/white/config.h deleted file mode 100644 index 2fbec99d3f..0000000000 --- a/keyboards/keychron/k8_pro/iso/white/config.h +++ /dev/null @@ -1,44 +0,0 @@ -/* Copyright 2021 @ 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 . - */ - -#pragma once - -#ifdef LED_MATRIX_ENABLE -/* LED matrix driver configuration */ -# define DRIVER_COUNT 1 -# define SNLED27351_I2C_ADDRESS_1 SNLED27351_I2C_ADDRESS_GND -# define LED_MATRIX_LED_COUNT 88 - -/* Set to infinit, which is use in USB mode by default */ -# define LED_MATRIX_TIMEOUT LED_MATRIX_TIMEOUT_INFINITE -/* Allow shutdown of led driver to save power */ -# define LED_MATRIX_DRIVER_SHUTDOWN_ENABLE -/* Turn off backlight on low brightness to save power */ -# define LED_MATRIX_BRIGHTNESS_TURN_OFF_VAL 32 - -/* LED Matrix Animation modes. Explicitly enabled - * For full list of effects, see: - * https://docs.qmk.fm/#/feature_led_matrix?id=led-matrix-effects - */ -# define LED_MATRIX_KEYPRESSES - -/* Use first 6 channels of LED driver */ -# define PHASE_CHANNEL MSKPHASE_6CHANNEL - -/* Set LED driver current */ -# define SNLED27351_CURRENT_TUNE { 0x60, 0x60, 0x60, 0x60, 0x60, 0x60, 0x60, 0x60, 0x60, 0x60, 0x60, 0x60 } - -#endif diff --git a/keyboards/keychron/k8_pro/iso/white/info.json b/keyboards/keychron/k8_pro/iso/white/info.json deleted file mode 100644 index 5e0a0a8cc1..0000000000 --- a/keyboards/keychron/k8_pro/iso/white/info.json +++ /dev/null @@ -1,30 +0,0 @@ -{ - "usb": { - "pid": "0x0284", - "device_version": "1.0.0" - }, - "features": { - "led_matrix": true - }, - "led_matrix": { - "driver": "snled27351", - "animations": { - "none": true, - "solid": true, - "breathing": true, - "band_pinwheel": true, - "band_spiral": true, - "cycle_left_right": true, - "cycle_up_down": true, - "cycle_out_in": true, - "dual_beacon": true, - "solid_reactive_simple": true, - "solid_reactive_multiwide": true, - "solid_reactive_multinexus": true, - "solid_splash": true, - "wave_left_right": true, - "wave_up_down": true, - "effect_max": true - } - } -} diff --git a/keyboards/keychron/k8_pro/iso/white/keymaps/default/keymap.c b/keyboards/keychron/k8_pro/iso/white/keymaps/default/keymap.c deleted file mode 100644 index 36afe4aa10..0000000000 --- a/keyboards/keychron/k8_pro/iso/white/keymaps/default/keymap.c +++ /dev/null @@ -1,59 +0,0 @@ -/* Copyright 2021 @ 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 . - */ - -#include QMK_KEYBOARD_H - -enum layers{ - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN -}; - -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { -[MAC_BASE] = LAYOUT_tkl_iso( - KC_ESC, KC_BRID, KC_BRIU, KC_MCTL, KC_LPAD, BL_DOWN, BL_UP, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_SNAP, KC_SIRI, BL_STEP, - KC_GRV, 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_INS, KC_HOME, KC_PGUP, - 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_DEL, KC_END, KC_PGDN, - 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_NUHS, KC_ENT, - KC_LSFT, KC_NUBS, 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_LCTL, KC_LOPTN, KC_LCMMD, KC_SPC, KC_RCMMD, KC_ROPTN, MO(MAC_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - -[MAC_FN] = LAYOUT_tkl_iso( - KC_TRNS, 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, BL_TOGG, - KC_TRNS, BT_HST1, BT_HST2, BT_HST3, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - BL_TOGG, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, BAT_LVL, NK_TOGG, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS), - -[WIN_BASE] = LAYOUT_tkl_iso( - KC_ESC, 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_PSCR, KC_CTANA, BL_STEP, - KC_GRV, 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_INS, KC_HOME, KC_PGUP, - 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_DEL, KC_END, KC_PGDN, - 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_NUHS, KC_ENT, - KC_LSFT, KC_NUBS, 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_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, KC_RGUI, MO(WIN_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - -[WIN_FN] = LAYOUT_tkl_iso( - KC_TRNS, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, BL_DOWN, BL_UP, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_TRNS, KC_TRNS, BL_TOGG, - KC_TRNS, BT_HST1, BT_HST2, BT_HST3, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - BL_TOGG, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, BAT_LVL, NK_TOGG, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, 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/keychron/k8_pro/iso/white/keymaps/via/keymap.c b/keyboards/keychron/k8_pro/iso/white/keymaps/via/keymap.c deleted file mode 100644 index f8647dd3a6..0000000000 --- a/keyboards/keychron/k8_pro/iso/white/keymaps/via/keymap.c +++ /dev/null @@ -1,59 +0,0 @@ -/* Copyright 2021 @ 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 . - */ - -#include QMK_KEYBOARD_H - -enum layers{ - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN -}; - -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { -[MAC_BASE] = LAYOUT_tkl_iso( - KC_ESC, KC_BRID, KC_BRIU, KC_MCTL, KC_LPAD, BL_DOWN, BL_UP, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_SNAP, KC_SIRI, BL_STEP, - KC_GRV, 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_INS, KC_HOME, KC_PGUP, - 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_DEL, KC_END, KC_PGDN, - 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_NUHS, KC_ENT, - KC_LSFT, KC_NUBS, 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_LCTL, KC_LOPTN, KC_LCMMD, KC_SPC, KC_RCMMD, KC_ROPTN, MO(MAC_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - -[MAC_FN] = LAYOUT_tkl_iso( - KC_TRNS, 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, BL_TOGG, - KC_TRNS, BT_HST1, BT_HST2, BT_HST3, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - BL_TOGG, BL_STEP, BL_UP, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, BL_DOWN, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, BAT_LVL, NK_TOGG, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS), - -[WIN_BASE] = LAYOUT_tkl_iso( - KC_ESC, 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_PSCR, KC_CTANA, BL_STEP, - KC_GRV, 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_INS, KC_HOME, KC_PGUP, - 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_DEL, KC_END, KC_PGDN, - 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_NUHS, KC_ENT, - KC_LSFT, KC_NUBS, 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_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, KC_RGUI, MO(WIN_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - -[WIN_FN] = LAYOUT_tkl_iso( - KC_TRNS, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, BL_DOWN, BL_UP, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_TRNS, KC_TRNS, BL_TOGG, - KC_TRNS, BT_HST1, BT_HST2, BT_HST3, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - BL_TOGG, BL_STEP, BL_UP, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, BL_DOWN, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, BAT_LVL, NK_TOGG, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, 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/keychron/k8_pro/iso/white/keymaps/via/rules.mk b/keyboards/keychron/k8_pro/iso/white/keymaps/via/rules.mk deleted file mode 100644 index 1e5b99807c..0000000000 --- a/keyboards/keychron/k8_pro/iso/white/keymaps/via/rules.mk +++ /dev/null @@ -1 +0,0 @@ -VIA_ENABLE = yes diff --git a/keyboards/keychron/k8_pro/iso/white/rules.mk b/keyboards/keychron/k8_pro/iso/white/rules.mk deleted file mode 100644 index f886ea2e8e..0000000000 --- a/keyboards/keychron/k8_pro/iso/white/rules.mk +++ /dev/null @@ -1 +0,0 @@ -# This file intentionally blank \ No newline at end of file diff --git a/keyboards/keychron/k8_pro/iso/white/white.c b/keyboards/keychron/k8_pro/iso/white/white.c deleted file mode 100644 index 4f3efb369f..0000000000 --- a/keyboards/keychron/k8_pro/iso/white/white.c +++ /dev/null @@ -1,149 +0,0 @@ -/* Copyright 2021 @ 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 . - */ - -#include "quantum.h" - -// clang-format off -#ifdef LED_MATRIX_ENABLE -const snled27351_led_t g_snled27351_leds[LED_MATRIX_LED_COUNT] = { -/* Refer to snled27351manual for these locations - * driver - * | LED address - * | | */ - {0, A_16}, - {0, A_15}, - {0, A_14}, - {0, A_13}, - {0, A_12}, - {0, A_11}, - {0, A_10}, - {0, A_9}, - {0, A_8}, - {0, A_7}, - {0, A_6}, - {0, A_5}, - {0, A_4}, - {0, A_2}, - {0, A_1}, - {0, D_2}, - - {0, B_16}, - {0, B_15}, - {0, B_14}, - {0, B_13}, - {0, B_12}, - {0, B_11}, - {0, B_10}, - {0, B_9}, - {0, B_8}, - {0, B_7}, - {0, B_6}, - {0, B_5}, - {0, B_4}, - {0, B_3}, - {0, B_2}, - {0, B_1}, - {0, E_2}, - - {0, C_16}, - {0, C_15}, - {0, C_14}, - {0, C_13}, - {0, C_12}, - {0, C_11}, - {0, C_10}, - {0, C_9}, - {0, C_8}, - {0, C_7}, - {0, C_6}, - {0, C_5}, - {0, C_4}, - {0, C_3}, - {0, C_2}, - {0, C_1}, - {0, D_1}, - - {0, D_16}, - {0, D_15}, - {0, D_14}, - {0, D_13}, - {0, D_12}, - {0, D_11}, - {0, D_10}, - {0, D_9}, - {0, D_8}, - {0, D_7}, - {0, D_6}, - {0, D_5}, - {0, D_3}, - - {0, E_16}, - {0, E_15}, - {0, E_14}, - {0, E_13}, - {0, E_12}, - {0, E_11}, - {0, E_10}, - {0, E_9}, - {0, E_8}, - {0, E_7}, - {0, E_6}, - {0, E_5}, - {0, E_3}, - {0, E_1}, - - {0, F_16}, - {0, F_15}, - {0, F_14}, - - {0, F_10}, - {0, F_6}, - {0, F_5}, - {0, F_4}, - {0, F_3}, - {0, F_2}, - {0, F_1}, - {0, D_4}, -}; - -led_config_t g_led_config = { - { - { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, NO_LED, 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, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49 }, - { 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, NO_LED, 62, NO_LED, NO_LED, NO_LED }, - { 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, NO_LED, 75, NO_LED, 76, NO_LED }, - { 77, 78, 79, NO_LED, NO_LED, NO_LED, 80, NO_LED, NO_LED, NO_LED, 81, 82, 83, 84, 85, 86, 87} - }, - { - {0, 0}, {25, 0}, {38, 0}, {51, 0}, {64, 0}, {84, 0}, { 97, 0}, {110, 0}, {123, 0}, {142, 0}, {155, 0}, {168, 0}, {181, 0}, {198, 0}, {211, 0}, {224, 0}, - {0,14}, {12,14}, {25,14}, {38,14}, {51,14}, {64,14}, {77,14}, { 90,14}, {103,14}, {116,14}, {129,14}, {142,14}, {155,14}, {175,14}, {198,14}, {211,14}, {224,14}, - {3,26}, {19,26}, {32,26}, {45,26}, {58,26}, {71,26}, {84,26}, { 97,26}, {110,26}, {123,26}, {136,26}, {149,26}, {162,26}, {178,26}, {198,26}, {211,26}, {224,26}, - {4,39}, {22,39}, {35,39}, {48,39}, {61,39}, {74,39}, {87,39}, {100,39}, {113,39}, {126,39}, {139,39}, {152,39}, {173,39}, - {0,51}, {16,51}, {29,51}, {42,51}, {55,51}, {68,51}, {81,51}, {94,51}, {107,51}, {120,51}, {132,51}, {145,51}, {170,51}, {211,51}, - {1,64}, {17,64}, {34,64}, {82,64}, {131,64}, {147,64}, {163,64}, {180,64}, {198,64}, {211,64}, {224,64} - }, - { - 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, - 4, 8, 8, 8, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, - 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, - 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, - 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, - 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4 - } -}; - -#endif \ No newline at end of file diff --git a/keyboards/keychron/k8_pro/jis/rgb/config.h b/keyboards/keychron/k8_pro/jis/rgb/config.h deleted file mode 100644 index 9df6402d50..0000000000 --- a/keyboards/keychron/k8_pro/jis/rgb/config.h +++ /dev/null @@ -1,47 +0,0 @@ -/* Copyright 2021 @ 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 . - */ - -#ifdef RGB_MATRIX_ENABLE -/* RGB Matrix Driver Configuration */ -# define DRIVER_COUNT 2 -# define DRIVER_ADDR_1 0b1110111 -# define DRIVER_ADDR_2 0b1110100 - -/* RGB Matrix Configuration */ -# define DRIVER_1_LED_TOTAL 51 -# define DRIVER_2_LED_TOTAL 40 -# define RGB_MATRIX_LED_COUNT (DRIVER_1_LED_TOTAL + DRIVER_2_LED_TOTAL) - -/* Set to infinit, which is use in USB mode by default */ -# define RGB_MATRIX_TIMEOUT RGB_MATRIX_TIMEOUT_INFINITE -/* Allow shutdown of led driver to save power */ -# define RGB_MATRIX_DRIVER_SHUTDOWN_ENABLE -/* Turn off backlight on low brightness to save power */ -# define RGB_MATRIX_BRIGHTNESS_TURN_OFF_VAL 32 - -/* RGB Matrix Animation modes. Explicitly enabled - * For full list of effects, see: - * https://docs.qmk.fm/#/feature_rgb_matrix?id=rgb-matrix-effects - */ - -# define RGB_MATRIX_KEYPRESSES -# define RGB_MATRIX_FRAMEBUFFER_EFFECTS - -/* Set LED driver current */ -# define SNLED27351_CURRENT_TUNE \ - { 0x38, 0x38, 0x38, 0x38, 0x38, 0x38, 0x38, 0x38, 0x38, 0x38, 0x38, 0x38 } - -#endif diff --git a/keyboards/keychron/k8_pro/jis/rgb/info.json b/keyboards/keychron/k8_pro/jis/rgb/info.json deleted file mode 100644 index 7ad58e0077..0000000000 --- a/keyboards/keychron/k8_pro/jis/rgb/info.json +++ /dev/null @@ -1,133 +0,0 @@ -{ - "usb": { - "pid": "0x0282", - "device_version": "1.0.1" - }, - "features": { - "rgb_matrix": true - }, - "rgb_matrix": { - "driver": "snled27351", - "animations": { - "breathing": true, - "band_spiral_val": true, - "cycle_all": true, - "cycle_left_right": true, - "cycle_up_down": true, - "rainbow_moving_chevron": true, - "cycle_out_in": true, - "cycle_out_in_dual": true, - "cycle_pinwheel": true, - "cycle_spiral": true, - "dual_beacon": true, - "rainbow_beacon": true, - "jellybean_raindrops": true, - "pixel_rain": true, - "typing_heatmap": true, - "digital_rain": true, - "solid_reactive_simple": true, - "solid_reactive_multiwide": true, - "solid_reactive_multinexus": true, - "splash": true, - "solid_splash": true - }, - "layout": [ - {"matrix":[0, 0], "flags":1, "x":0, "y":0}, - {"matrix":[0, 1], "flags":1, "x":25, "y":0}, - {"matrix":[0, 2], "flags":1, "x":38, "y":0}, - {"matrix":[0, 3], "flags":1, "x":51, "y":0}, - {"matrix":[0, 4], "flags":1, "x":64, "y":0}, - {"matrix":[0, 5], "flags":1, "x":84, "y":0}, - {"matrix":[0, 6], "flags":1, "x":97, "y":0}, - {"matrix":[0, 7], "flags":1, "x":110, "y":0}, - {"matrix":[0, 8], "flags":1, "x":123, "y":0}, - {"matrix":[0, 9], "flags":1, "x":142, "y":0}, - {"matrix":[0, 10], "flags":1, "x":155, "y":0}, - {"matrix":[0, 11], "flags":1, "x":168, "y":0}, - {"matrix":[0, 12], "flags":1, "x":181, "y":0}, - {"matrix":[0, 14], "flags":1, "x":198, "y":0}, - {"matrix":[0, 15], "flags":1, "x":211, "y":0}, - {"matrix":[0, 16], "flags":1, "x":224, "y":0}, - - {"matrix":[1, 0], "flags":1, "x":0, "y":14}, - {"matrix":[1, 1], "flags":8, "x":12, "y":14}, - {"matrix":[1, 2], "flags":8, "x":25, "y":14}, - {"matrix":[1, 3], "flags":8, "x":38, "y":14}, - {"matrix":[1, 4], "flags":4, "x":51, "y":14}, - {"matrix":[1, 5], "flags":4, "x":64, "y":14}, - {"matrix":[1, 6], "flags":4, "x":77, "y":14}, - {"matrix":[1, 7], "flags":4, "x":90, "y":14}, - {"matrix":[1, 8], "flags":4, "x":103, "y":14}, - {"matrix":[1, 9], "flags":4, "x":116, "y":14}, - {"matrix":[1, 10], "flags":4, "x":129, "y":14}, - {"matrix":[1, 11], "flags":4, "x":142, "y":14}, - {"matrix":[1, 12], "flags":4, "x":155, "y":14}, - {"matrix":[1, 13], "flags":1, "x":168, "y":14}, - {"matrix":[0, 13], "flags":1, "x":181, "y":14}, - {"matrix":[1, 14], "flags":1, "x":198, "y":14}, - {"matrix":[1, 15], "flags":1, "x":211, "y":14}, - {"matrix":[1, 16], "flags":1, "x":224, "y":14}, - - {"matrix":[2, 0], "flags":1, "x":3, "y":27}, - {"matrix":[2, 1], "flags":4, "x":19, "y":27}, - {"matrix":[2, 2], "flags":4, "x":32, "y":27}, - {"matrix":[2, 3], "flags":4, "x":45, "y":27}, - {"matrix":[2, 4], "flags":4, "x":58, "y":27}, - {"matrix":[2, 5], "flags":4, "x":71, "y":27}, - {"matrix":[2, 6], "flags":4, "x":84, "y":27}, - {"matrix":[2, 7], "flags":4, "x":97, "y":27}, - {"matrix":[2, 8], "flags":4, "x":110, "y":27}, - {"matrix":[2, 9], "flags":4, "x":123, "y":27}, - {"matrix":[2, 10], "flags":4, "x":136, "y":27}, - {"matrix":[2, 11], "flags":4, "x":149, "y":27}, - {"matrix":[2, 12], "flags":4, "x":162, "y":27}, - {"matrix":[2, 14], "flags":1, "x":198, "y":27}, - {"matrix":[2, 15], "flags":1, "x":211, "y":27}, - {"matrix":[2, 16], "flags":1, "x":224, "y":27}, - - {"matrix":[3, 0], "flags":8, "x":4, "y":39}, - {"matrix":[3, 1], "flags":4, "x":22, "y":39}, - {"matrix":[3, 2], "flags":4, "x":35, "y":39}, - {"matrix":[3, 3], "flags":4, "x":48, "y":39}, - {"matrix":[3, 4], "flags":4, "x":61, "y":39}, - {"matrix":[3, 5], "flags":4, "x":74, "y":39}, - {"matrix":[3, 6], "flags":4, "x":87, "y":39}, - {"matrix":[3, 7], "flags":4, "x":100, "y":39}, - {"matrix":[3, 8], "flags":4, "x":113, "y":39}, - {"matrix":[3, 9], "flags":4, "x":126, "y":39}, - {"matrix":[3, 10], "flags":4, "x":139, "y":39}, - {"matrix":[3, 11], "flags":4, "x":152, "y":39}, - {"matrix":[3, 13], "flags":1, "x":165, "y":39}, - {"matrix":[2, 13], "flags":1, "x":180, "y":33}, - - {"matrix":[4, 0], "flags":1, "x":8, "y":51}, - {"matrix":[4, 2], "flags":4, "x":29, "y":51}, - {"matrix":[4, 3], "flags":4, "x":42, "y":51}, - {"matrix":[4, 4], "flags":4, "x":55, "y":51}, - {"matrix":[4, 5], "flags":4, "x":68, "y":51}, - {"matrix":[4, 6], "flags":4, "x":81, "y":51}, - {"matrix":[4, 7], "flags":4, "x":94, "y":51}, - {"matrix":[4, 8], "flags":4, "x":107, "y":51}, - {"matrix":[4, 9], "flags":4, "x":120, "y":51}, - {"matrix":[4, 10], "flags":4, "x":132, "y":51}, - {"matrix":[4, 11], "flags":4, "x":145, "y":51}, - {"matrix":[4, 12], "flags":4, "x":158, "y":51}, - {"matrix":[4, 13], "flags":1, "x":176, "y":51}, - {"matrix":[4, 15], "flags":1, "x":211, "y":51}, - - {"matrix":[5, 0], "flags":1, "x":1, "y":64}, - {"matrix":[5, 1], "flags":1, "x":16, "y":64}, - {"matrix":[5, 2], "flags":1, "x":30, "y":64}, - {"matrix":[5, 3], "flags":1, "x":45, "y":64}, - {"matrix":[5, 6], "flags":4, "x":81, "y":64}, - {"matrix":[5, 9], "flags":1, "x":118, "y":64}, - {"matrix":[5, 10], "flags":1, "x":134, "y":64}, - {"matrix":[5, 11], "flags":1, "x":150, "y":64}, - {"matrix":[5, 12], "flags":1, "x":165, "y":64}, - {"matrix":[5, 13], "flags":1, "x":180, "y":64}, - {"matrix":[5, 14], "flags":1, "x":198, "y":64}, - {"matrix":[5, 15], "flags":1, "x":211, "y":64}, - {"matrix":[5, 16], "flags":1, "x":224, "y":64} - ] - } -} diff --git a/keyboards/keychron/k8_pro/jis/rgb/keymaps/default/keymap.c b/keyboards/keychron/k8_pro/jis/rgb/keymaps/default/keymap.c deleted file mode 100644 index b7aa49954b..0000000000 --- a/keyboards/keychron/k8_pro/jis/rgb/keymaps/default/keymap.c +++ /dev/null @@ -1,60 +0,0 @@ -/* 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 . - */ - -#include QMK_KEYBOARD_H - -enum layers{ - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN, -}; - -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_91_jis( - KC_ESC, KC_BRID, KC_BRIU, KC_MCTL, KC_LPAD, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_SNAP, KC_SIRI, RGB_MOD, - KC_GRV, 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_INT3, KC_BSPC, KC_INS, KC_HOME, KC_PGUP, - 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_DEL, KC_END, KC_PGDN, - 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_NUHS, 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_INT1, KC_RSFT, KC_UP, - KC_LCTL, KC_LOPTN, KC_LCMMD, KC_LNG2, KC_SPC, KC_LNG1, KC_RCMMD, KC_ROPTN, MO(MAC_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - - [MAC_FN] = LAYOUT_91_jis( - _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, RGB_TOG, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - - [WIN_BASE] = LAYOUT_91_jis( - KC_ESC, 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_PSCR, KC_CTANA, RGB_MOD, - KC_GRV, 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_INT3, KC_BSPC, KC_INS, KC_HOME, KC_PGUP, - 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_DEL, KC_END, KC_PGDN, - 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_NUHS, 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_INT1, KC_RSFT, KC_UP, - KC_LCTL, KC_LGUI, KC_LALT, KC_INT5, KC_SPC, KC_INT4, KC_RALT, KC_RGUI, MO(WIN_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - - [WIN_FN] = LAYOUT_91_jis( - _______, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, RGB_TOG, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______) -}; - diff --git a/keyboards/keychron/k8_pro/jis/rgb/keymaps/via/keymap.c b/keyboards/keychron/k8_pro/jis/rgb/keymaps/via/keymap.c deleted file mode 100644 index 3f568e30f8..0000000000 --- a/keyboards/keychron/k8_pro/jis/rgb/keymaps/via/keymap.c +++ /dev/null @@ -1,59 +0,0 @@ -/* 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 . - */ - -#include QMK_KEYBOARD_H - -enum layers{ - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN -}; - -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_91_jis( - KC_ESC, KC_BRID, KC_BRIU, KC_MCTL, KC_LPAD, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_SNAP, KC_SIRI, RGB_MOD, - KC_GRV, 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_INT3, KC_BSPC, KC_INS, KC_HOME, KC_PGUP, - 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_DEL, KC_END, KC_PGDN, - 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_NUHS, 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_INT1, KC_RSFT, KC_UP, - KC_LCTL, KC_LOPTN, KC_LCMMD, KC_LNG2, KC_SPC, KC_LNG1, KC_RCMMD, KC_ROPTN, MO(MAC_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - - [MAC_FN] = LAYOUT_91_jis( - _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, RGB_TOG, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - - [WIN_BASE] = LAYOUT_91_jis( - KC_ESC, 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_PSCR, KC_CTANA, RGB_MOD, - KC_GRV, 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_INT3, KC_BSPC, KC_INS, KC_HOME, KC_PGUP, - 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_DEL, KC_END, KC_PGDN, - 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_NUHS, 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_INT1, KC_RSFT, KC_UP, - KC_LCTL, KC_LGUI, KC_LALT, KC_INT5, KC_SPC, KC_INT4, KC_RALT, KC_RGUI, MO(WIN_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - - [WIN_FN] = LAYOUT_91_jis( - _______, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, RGB_TOG, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______) -}; diff --git a/keyboards/keychron/k8_pro/jis/rgb/keymaps/via/rules.mk b/keyboards/keychron/k8_pro/jis/rgb/keymaps/via/rules.mk deleted file mode 100644 index 45fa68954c..0000000000 --- a/keyboards/keychron/k8_pro/jis/rgb/keymaps/via/rules.mk +++ /dev/null @@ -1 +0,0 @@ -VIA_ENABLE = yes diff --git a/keyboards/keychron/k8_pro/jis/rgb/rgb.c b/keyboards/keychron/k8_pro/jis/rgb/rgb.c deleted file mode 100644 index 08045622e7..0000000000 --- a/keyboards/keychron/k8_pro/jis/rgb/rgb.c +++ /dev/null @@ -1,125 +0,0 @@ -/* 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 . - */ - -#include "quantum.h" - -// clang-format off -#ifdef RGB_MATRIX_ENABLE -const snled27351_led_t g_snled27351_leds[RGB_MATRIX_LED_COUNT] = { -/* Refer to snled27351manual for these locations - * driver - * | R location - * | | G location - * | | | B location - * | | | | */ - {0, I_1, G_1, H_1}, - {0, G_2, H_2, I_2}, - {0, H_3, I_3, G_3}, - {0, I_4, G_4, H_4}, - {0, G_5, H_5, I_5}, - {0, H_6, I_6, G_6}, - {0, I_7, G_7, H_7}, - {0, G_8, H_8, I_8}, - {0, H_9, I_9, G_9}, - {0, I_10, G_10, H_10}, - {0, G_11, H_11, I_11}, - {0, H_12, I_12, G_12}, - {0, I_13, G_13, H_13}, - {0, H_15, I_15, G_15}, - {0, I_16, G_16, H_16}, - {1, D_2, E_2, F_2}, - - {0, C_1, A_1, B_1}, - {0, A_2, B_2, C_2}, - {0, B_3, C_3, A_3}, - {0, C_4, A_4, B_4}, - {0, A_5, B_5, C_5}, - {0, B_6, C_6, A_6}, - {0, C_7, A_7, B_7}, - {0, A_8, B_8, C_8}, - {0, B_9, C_9, A_9}, - {0, C_10, A_10, B_10}, - {0, A_11, B_11, C_11}, - {0, B_12, C_12, A_12}, - {0, C_13, A_13, B_13}, - {0, A_14, B_14, C_14}, - {0, G_14, H_14, I_14}, - {0, B_15, C_15, A_15}, - {0, C_16, A_16, B_16}, - {1, D_4, E_4, F_4}, - - {0, F_1, D_1, E_1}, - {0, D_2, E_2, F_2}, - {0, E_3, F_3, D_3}, - {0, F_4, D_4, E_4}, - {0, D_5, E_5, F_5}, - {0, E_6, F_6, D_6}, - {0, F_7, D_7, E_7}, - {0, D_8, E_8, F_8}, - {0, E_9, F_9, D_9}, - {0, F_10, D_10, E_10}, - {0, D_11, E_11, F_11}, - {0, E_12, F_12, D_12}, - {0, F_13, D_13, E_13}, - {0, E_15, F_15, D_15}, - {0, F_16, D_16, E_16}, - {1, D_1, E_1, F_1}, - - {1, F_16, D_16, E_16}, - {1, D_15, E_15, F_15}, - {1, E_14, F_14, D_14}, - {1, F_13, D_13, E_13}, - {1, D_12, E_12, F_12}, - {1, E_11, F_11, D_11}, - {1, F_10, D_10, E_10}, - {1, D_9, E_9, F_9}, - {1, E_8, F_8, D_8}, - {1, F_7, D_7, E_7}, - {1, D_6, E_6, F_6}, - {1, E_5, F_5, D_5}, - {1, D_3, E_3, F_3}, - {0, D_14, E_14, F_14}, - - {1, C_16, A_16, B_16}, - {1, B_14, C_14, A_14}, - {1, C_13, A_13, B_13}, - {1, A_12, B_12, C_12}, - {1, B_11, C_11, A_11}, - {1, C_10, A_10, B_10}, - {1, A_9, B_9, C_9}, - {1, B_8, C_8, A_8}, - {1, C_7, A_7, B_7}, - {1, A_6, B_6, C_6}, - {1, B_5, C_5, A_5}, - {1, C_4, A_4, B_4}, - {1, A_3, B_3, C_3}, - {1, C_1, A_1, B_1}, - - {1, I_16, G_16, H_16}, - {1, G_15, H_15, I_15}, - {1, H_14, I_14, G_14}, - {1, I_13, G_13, H_13}, - {1, I_10, G_10, H_10}, - {1, I_7, G_7, H_7}, - {1, G_6, H_6, I_6}, - {1, H_5, I_5, G_5}, - {1, I_4, G_4, H_4}, - {1, G_3, H_3, I_3}, - {1, H_2, I_2, G_2}, - {1, I_1, G_1, H_1}, - {1, A_2, B_2, C_2} -}; -#endif diff --git a/keyboards/keychron/k8_pro/jis/rgb/rules.mk b/keyboards/keychron/k8_pro/jis/rgb/rules.mk deleted file mode 100644 index c628fc7d0f..0000000000 --- a/keyboards/keychron/k8_pro/jis/rgb/rules.mk +++ /dev/null @@ -1 +0,0 @@ -# This file intentionally blank diff --git a/keyboards/keychron/k8_pro/jis/white/config.h b/keyboards/keychron/k8_pro/jis/white/config.h deleted file mode 100644 index aeadf4be9c..0000000000 --- a/keyboards/keychron/k8_pro/jis/white/config.h +++ /dev/null @@ -1,45 +0,0 @@ -/* Copyright 2021 @ 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 . - */ - -#ifdef LED_MATRIX_ENABLE -/* LED Matrix Driver Configuration */ -# define DRIVER_COUNT 1 -# define SNLED27351_I2C_ADDRESS_1 SNLED27351_I2C_ADDRESS_GND - -/* LED Matrix Configuration */ -# define LED_MATRIX_LED_COUNT 91 - -/* Set to infinit, which is use in USB mode by default */ -# define LED_MATRIX_TIMEOUT LED_MATRIX_TIMEOUT_INFINITE -/* Allow shutdown of led driver to save power */ -# define LED_MATRIX_DRIVER_SHUTDOWN_ENABLE -/* Turn off backlight on low brightness to save power */ -# define LED_MATRIX_BRIGHTNESS_TURN_OFF_VAL 32 - -/* LED Matrix Animation modes. Explicitly enabled - * For full list of effects, see: - * https://docs.qmk.fm/#/feature_led_matrix?id=led-matrix-effects - */ -# define LED_MATRIX_KEYPRESSES - -/* Use first 6 channels of LED driver */ -# define PHASE_CHANNEL MSKPHASE_6CHANNEL - -/* Set LED driver current */ -# define SNLED27351_CURRENT_TUNE \ - { 0x60, 0x60, 0x60, 0x60, 0x60, 0x60, 0x60, 0x60, 0x60, 0x60, 0x60, 0x60 } - -#endif diff --git a/keyboards/keychron/k8_pro/jis/white/info.json b/keyboards/keychron/k8_pro/jis/white/info.json deleted file mode 100644 index 6976f778b5..0000000000 --- a/keyboards/keychron/k8_pro/jis/white/info.json +++ /dev/null @@ -1,128 +0,0 @@ -{ - "usb": { - "pid": "0x0285", - "device_version": "1.0.1" - }, - "features": { - "led_matrix": true - }, - "led_matrix": { - "driver": "snled27351", - "animations": { - "none": true, - "solid": true, - "breathing": true, - "band_pinwheel": true, - "band_spiral": true, - "cycle_left_right": true, - "cycle_up_down": true, - "cycle_out_in": true, - "dual_beacon": true, - "solid_reactive_simple": true, - "solid_reactive_multiwide": true, - "solid_reactive_multinexus": true, - "solid_splash": true, - "wave_left_right": true, - "wave_up_down": true, - "effect_max": true - }, - "layout": [ - {"matrix":[0, 0], "flags":1, "x":0, "y":0}, - {"matrix":[0, 1], "flags":1, "x":25, "y":0}, - {"matrix":[0, 2], "flags":1, "x":38, "y":0}, - {"matrix":[0, 3], "flags":1, "x":51, "y":0}, - {"matrix":[0, 4], "flags":1, "x":64, "y":0}, - {"matrix":[0, 5], "flags":1, "x":84, "y":0}, - {"matrix":[0, 6], "flags":1, "x":97, "y":0}, - {"matrix":[0, 7], "flags":1, "x":110, "y":0}, - {"matrix":[0, 8], "flags":1, "x":123, "y":0}, - {"matrix":[0, 9], "flags":1, "x":142, "y":0}, - {"matrix":[0, 10], "flags":1, "x":155, "y":0}, - {"matrix":[0, 11], "flags":1, "x":168, "y":0}, - {"matrix":[0, 12], "flags":1, "x":181, "y":0}, - {"matrix":[0, 14], "flags":1, "x":198, "y":0}, - {"matrix":[0, 15], "flags":1, "x":211, "y":0}, - {"matrix":[0, 16], "flags":1, "x":224, "y":0}, - - {"matrix":[1, 0], "flags":1, "x":0, "y":14}, - {"matrix":[1, 1], "flags":8, "x":12, "y":14}, - {"matrix":[1, 2], "flags":8, "x":25, "y":14}, - {"matrix":[1, 3], "flags":8, "x":38, "y":14}, - {"matrix":[1, 4], "flags":4, "x":51, "y":14}, - {"matrix":[1, 5], "flags":4, "x":64, "y":14}, - {"matrix":[1, 6], "flags":4, "x":77, "y":14}, - {"matrix":[1, 7], "flags":4, "x":90, "y":14}, - {"matrix":[1, 8], "flags":4, "x":103, "y":14}, - {"matrix":[1, 9], "flags":4, "x":116, "y":14}, - {"matrix":[1, 10], "flags":4, "x":129, "y":14}, - {"matrix":[1, 11], "flags":4, "x":142, "y":14}, - {"matrix":[1, 12], "flags":4, "x":155, "y":14}, - {"matrix":[1, 13], "flags":1, "x":168, "y":14}, - {"matrix":[0, 13], "flags":1, "x":181, "y":14}, - {"matrix":[1, 14], "flags":1, "x":198, "y":14}, - {"matrix":[1, 15], "flags":1, "x":211, "y":14}, - {"matrix":[1, 16], "flags":1, "x":224, "y":14}, - - {"matrix":[2, 0], "flags":1, "x":3, "y":27}, - {"matrix":[2, 1], "flags":4, "x":19, "y":27}, - {"matrix":[2, 2], "flags":4, "x":32, "y":27}, - {"matrix":[2, 3], "flags":4, "x":45, "y":27}, - {"matrix":[2, 4], "flags":4, "x":58, "y":27}, - {"matrix":[2, 5], "flags":4, "x":71, "y":27}, - {"matrix":[2, 6], "flags":4, "x":84, "y":27}, - {"matrix":[2, 7], "flags":4, "x":97, "y":27}, - {"matrix":[2, 8], "flags":4, "x":110, "y":27}, - {"matrix":[2, 9], "flags":4, "x":123, "y":27}, - {"matrix":[2, 10], "flags":4, "x":136, "y":27}, - {"matrix":[2, 11], "flags":4, "x":149, "y":27}, - {"matrix":[2, 12], "flags":4, "x":162, "y":27}, - {"matrix":[2, 14], "flags":1, "x":198, "y":27}, - {"matrix":[2, 15], "flags":1, "x":211, "y":27}, - {"matrix":[2, 16], "flags":1, "x":224, "y":27}, - - {"matrix":[3, 0], "flags":8, "x":4, "y":39}, - {"matrix":[3, 1], "flags":4, "x":22, "y":39}, - {"matrix":[3, 2], "flags":4, "x":35, "y":39}, - {"matrix":[3, 3], "flags":4, "x":48, "y":39}, - {"matrix":[3, 4], "flags":4, "x":61, "y":39}, - {"matrix":[3, 5], "flags":4, "x":74, "y":39}, - {"matrix":[3, 6], "flags":4, "x":87, "y":39}, - {"matrix":[3, 7], "flags":4, "x":100, "y":39}, - {"matrix":[3, 8], "flags":4, "x":113, "y":39}, - {"matrix":[3, 9], "flags":4, "x":126, "y":39}, - {"matrix":[3, 10], "flags":4, "x":139, "y":39}, - {"matrix":[3, 11], "flags":4, "x":152, "y":39}, - {"matrix":[3, 13], "flags":1, "x":165, "y":39}, - {"matrix":[2, 13], "flags":1, "x":180, "y":33}, - - {"matrix":[4, 0], "flags":1, "x":8, "y":51}, - {"matrix":[4, 2], "flags":4, "x":29, "y":51}, - {"matrix":[4, 3], "flags":4, "x":42, "y":51}, - {"matrix":[4, 4], "flags":4, "x":55, "y":51}, - {"matrix":[4, 5], "flags":4, "x":68, "y":51}, - {"matrix":[4, 6], "flags":4, "x":81, "y":51}, - {"matrix":[4, 7], "flags":4, "x":94, "y":51}, - {"matrix":[4, 8], "flags":4, "x":107, "y":51}, - {"matrix":[4, 9], "flags":4, "x":120, "y":51}, - {"matrix":[4, 10], "flags":4, "x":132, "y":51}, - {"matrix":[4, 11], "flags":4, "x":145, "y":51}, - {"matrix":[4, 12], "flags":4, "x":158, "y":51}, - {"matrix":[4, 13], "flags":1, "x":176, "y":51}, - {"matrix":[4, 15], "flags":1, "x":211, "y":51}, - - {"matrix":[5, 0], "flags":1, "x":1, "y":64}, - {"matrix":[5, 1], "flags":1, "x":16, "y":64}, - {"matrix":[5, 2], "flags":1, "x":30, "y":64}, - {"matrix":[5, 3], "flags":1, "x":45, "y":64}, - {"matrix":[5, 6], "flags":4, "x":81, "y":64}, - {"matrix":[5, 9], "flags":1, "x":118, "y":64}, - {"matrix":[5, 10], "flags":1, "x":134, "y":64}, - {"matrix":[5, 11], "flags":1, "x":150, "y":64}, - {"matrix":[5, 12], "flags":1, "x":165, "y":64}, - {"matrix":[5, 13], "flags":1, "x":180, "y":64}, - {"matrix":[5, 14], "flags":1, "x":198, "y":64}, - {"matrix":[5, 15], "flags":1, "x":211, "y":64}, - {"matrix":[5, 16], "flags":1, "x":224, "y":64} - ] - } -} diff --git a/keyboards/keychron/k8_pro/jis/white/keymaps/default/keymap.c b/keyboards/keychron/k8_pro/jis/white/keymaps/default/keymap.c deleted file mode 100644 index 1eff064b7a..0000000000 --- a/keyboards/keychron/k8_pro/jis/white/keymaps/default/keymap.c +++ /dev/null @@ -1,59 +0,0 @@ -/* 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 . - */ - -#include QMK_KEYBOARD_H - -enum layers{ - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN, -}; - -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_91_jis( - KC_ESC, KC_BRID, KC_BRIU, KC_MCTL, KC_LPAD, BL_DOWN, BL_UP, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_SNAP, KC_SIRI, BL_STEP, - KC_GRV, 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_INT3, KC_BSPC, KC_INS, KC_HOME, KC_PGUP, - 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_DEL, KC_END, KC_PGDN, - 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_NUHS, 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_INT1, KC_RSFT, KC_UP, - KC_LCTL, KC_LOPTN, KC_LCMMD, KC_LNG2, KC_SPC, KC_LNG1, KC_RCMMD, KC_ROPTN, MO(MAC_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - - [MAC_FN] = LAYOUT_91_jis( - _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, BL_TOGG, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - BL_TOGG, BL_STEP, BL_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, BL_DOWN, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - - [WIN_BASE] = LAYOUT_91_jis( - KC_ESC, 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_PSCR, KC_CTANA, BL_STEP, - KC_GRV, 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_INT3, KC_BSPC, KC_INS, KC_HOME, KC_PGUP, - 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_DEL, KC_END, KC_PGDN, - 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_NUHS, 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_INT1, KC_RSFT, KC_UP, - KC_LCTL, KC_LGUI, KC_LALT, KC_INT5, KC_SPC, KC_INT4, KC_RALT, KC_RGUI, MO(WIN_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - - [WIN_FN] = LAYOUT_91_jis( - _______, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, BL_DOWN, BL_UP, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, BL_TOGG, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - BL_TOGG, BL_STEP, BL_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, BL_DOWN, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______) -}; diff --git a/keyboards/keychron/k8_pro/jis/white/keymaps/via/keymap.c b/keyboards/keychron/k8_pro/jis/white/keymaps/via/keymap.c deleted file mode 100644 index 1eff064b7a..0000000000 --- a/keyboards/keychron/k8_pro/jis/white/keymaps/via/keymap.c +++ /dev/null @@ -1,59 +0,0 @@ -/* 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 . - */ - -#include QMK_KEYBOARD_H - -enum layers{ - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN, -}; - -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_91_jis( - KC_ESC, KC_BRID, KC_BRIU, KC_MCTL, KC_LPAD, BL_DOWN, BL_UP, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_SNAP, KC_SIRI, BL_STEP, - KC_GRV, 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_INT3, KC_BSPC, KC_INS, KC_HOME, KC_PGUP, - 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_DEL, KC_END, KC_PGDN, - 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_NUHS, 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_INT1, KC_RSFT, KC_UP, - KC_LCTL, KC_LOPTN, KC_LCMMD, KC_LNG2, KC_SPC, KC_LNG1, KC_RCMMD, KC_ROPTN, MO(MAC_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - - [MAC_FN] = LAYOUT_91_jis( - _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, BL_TOGG, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - BL_TOGG, BL_STEP, BL_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, BL_DOWN, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - - [WIN_BASE] = LAYOUT_91_jis( - KC_ESC, 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_PSCR, KC_CTANA, BL_STEP, - KC_GRV, 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_INT3, KC_BSPC, KC_INS, KC_HOME, KC_PGUP, - 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_DEL, KC_END, KC_PGDN, - 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_NUHS, 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_INT1, KC_RSFT, KC_UP, - KC_LCTL, KC_LGUI, KC_LALT, KC_INT5, KC_SPC, KC_INT4, KC_RALT, KC_RGUI, MO(WIN_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - - [WIN_FN] = LAYOUT_91_jis( - _______, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, BL_DOWN, BL_UP, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, BL_TOGG, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - BL_TOGG, BL_STEP, BL_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, BL_DOWN, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______) -}; diff --git a/keyboards/keychron/k8_pro/jis/white/keymaps/via/rules.mk b/keyboards/keychron/k8_pro/jis/white/keymaps/via/rules.mk deleted file mode 100644 index 45fa68954c..0000000000 --- a/keyboards/keychron/k8_pro/jis/white/keymaps/via/rules.mk +++ /dev/null @@ -1 +0,0 @@ -VIA_ENABLE = yes diff --git a/keyboards/keychron/k8_pro/jis/white/rules.mk b/keyboards/keychron/k8_pro/jis/white/rules.mk deleted file mode 100644 index c628fc7d0f..0000000000 --- a/keyboards/keychron/k8_pro/jis/white/rules.mk +++ /dev/null @@ -1 +0,0 @@ -# This file intentionally blank diff --git a/keyboards/keychron/k8_pro/jis/white/white.c b/keyboards/keychron/k8_pro/jis/white/white.c deleted file mode 100644 index a3e540f9a0..0000000000 --- a/keyboards/keychron/k8_pro/jis/white/white.c +++ /dev/null @@ -1,123 +0,0 @@ -/* Copyright 2021 @ 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 . - */ - -#include "quantum.h" - -// clang-format off -#ifdef LED_MATRIX_ENABLE -const snled27351_led_t g_snled27351_leds[LED_MATRIX_LED_COUNT] = { -/* Refer to IS31 manual for these locations - * driver - * | LED address - * | | */ - {0, A_16}, - {0, A_15}, - {0, A_14}, - {0, A_13}, - {0, A_12}, - {0, A_11}, - {0, A_10}, - {0, A_9}, - {0, A_8}, - {0, A_7}, - {0, A_6}, - {0, A_5}, - {0, A_4}, - {0, A_2}, - {0, A_1}, - {0, D_2}, - - {0, B_16}, - {0, B_15}, - {0, B_14}, - {0, B_13}, - {0, B_12}, - {0, B_11}, - {0, B_10}, - {0, B_9}, - {0, B_8}, - {0, B_7}, - {0, B_6}, - {0, B_5}, - {0, B_4}, - {0, B_3}, - {0, A_3}, - {0, B_2}, - {0, B_1}, - {0, E_2}, - - {0, C_16}, - {0, C_15}, - {0, C_14}, - {0, C_13}, - {0, C_12}, - {0, C_11}, - {0, C_10}, - {0, C_9}, - {0, C_8}, - {0, C_7}, - {0, C_6}, - {0, C_5}, - {0, C_4}, - {0, C_2}, - {0, C_1}, - {0, D_1}, - - {0, D_16}, - {0, D_15}, - {0, D_14}, - {0, D_13}, - {0, D_12}, - {0, D_11}, - {0, D_10}, - {0, D_9}, - {0, D_8}, - {0, D_7}, - {0, D_6}, - {0, D_5}, - {0, D_3}, - {0, C_3}, - - {0, E_16}, - {0, E_14}, - {0, E_13}, - {0, E_12}, - {0, E_11}, - {0, E_10}, - {0, E_9}, - {0, E_8}, - {0, E_7}, - {0, E_6}, - {0, E_5}, - {0, E_4}, - {0, E_3}, - {0, E_1}, - - {0, F_16}, - {0, F_15}, - {0, F_14}, - {0, F_13}, - {0, F_10}, - {0, F_7}, - {0, F_6}, - {0, F_5}, - {0, F_4}, - {0, F_3}, - {0, F_2}, - {0, F_1}, - {0, D_4} -}; -#endif diff --git a/keyboards/keychron/k8_pro/k8_pro.c b/keyboards/keychron/k8_pro/k8_pro.c deleted file mode 100644 index ba0cd7e819..0000000000 --- a/keyboards/keychron/k8_pro/k8_pro.c +++ /dev/null @@ -1,322 +0,0 @@ -/* Copyright 2021 @ 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 . - */ - -#include "k8_pro.h" -#ifdef KC_BLUETOOTH_ENABLE -# include "ckbt51.h" -# include "bluetooth.h" -# include "indicator.h" -# include "transport.h" -# include "battery.h" -# include "bat_level_animation.h" -# include "lpm.h" -#endif - -#ifdef ENABLE_FACTORY_TEST -# include "factory_test.h" -#endif - -#define POWER_ON_LED_DURATION 3000 - -typedef struct PACKED { - uint8_t len; - uint8_t keycode[3]; -} key_combination_t; - -static uint32_t factory_timer_buffer = 0; -static uint32_t power_on_indicator_timer_buffer = 0; -static uint32_t siri_timer_buffer = 0; -static uint8_t mac_keycode[4] = {KC_LOPT, KC_ROPT, KC_LCMD, KC_RCMD}; - -key_combination_t key_comb_list[4] = { - {2, {KC_LWIN, KC_TAB}}, // Task (win) - {2, {KC_LWIN, KC_E}}, // Files (win) - {3, {KC_LSFT, KC_LGUI, KC_4}}, // Snapshot (mac) - {2, {KC_LWIN, KC_C}} // Cortana (win) -}; - -#ifdef KC_BLUETOOTH_ENABLE -bool firstDisconnect = true; -bool bt_factory_reset = false; -static virtual_timer_t pairing_key_timer; -extern uint8_t g_pwm_buffer[DRIVER_COUNT][192]; - -static void pairing_key_timer_cb(void *arg) { - bluetooth_pairing_ex(*(uint8_t *)arg, NULL); -} -#endif - -bool dip_switch_update_kb(uint8_t index, bool active) { - if (index == 0) { -#ifdef INVERT_OS_SWITCH_STATE - default_layer_set(1UL << (!active ? 2 : 0)); -#else - default_layer_set(1UL << (active ? 2 : 0)); -#endif - } - dip_switch_update_user(index, active); - - return true; -} - -#ifdef KC_BLUETOOTH_ENABLE -bool process_record_kb_bt(uint16_t keycode, keyrecord_t *record) { -#else -bool process_record_kb(uint16_t keycode, keyrecord_t *record) { -#endif - static uint8_t host_idx = 0; - - switch (keycode) { - case KC_LOPTN: - case KC_ROPTN: - case KC_LCMMD: - case KC_RCMMD: - if (record->event.pressed) { - register_code(mac_keycode[keycode - KC_LOPTN]); - } else { - unregister_code(mac_keycode[keycode - KC_LOPTN]); - } - return false; // Skip all further processing of this key) - case KC_TASK: - case KC_FILE: - case KC_SNAP: - case KC_CTANA: - if (record->event.pressed) { - for (uint8_t i = 0; i < key_comb_list[keycode - KC_TASK].len; i++) - register_code(key_comb_list[keycode - KC_TASK].keycode[i]); - } else { - for (uint8_t i = 0; i < key_comb_list[keycode - KC_TASK].len; i++) - unregister_code(key_comb_list[keycode - KC_TASK].keycode[i]); - } - return false; // Skip all further processing of this key - case KC_SIRI: - if (record->event.pressed && siri_timer_buffer == 0) { - register_code(KC_LGUI); - register_code(KC_SPACE); - siri_timer_buffer = sync_timer_read32() | 1; - } - return false; // Skip all further processing of this key -#ifdef KC_BLUETOOTH_ENABLE - case BT_HST1 ... BT_HST3: - if (get_transport() == TRANSPORT_BLUETOOTH) { - if (record->event.pressed) { - host_idx = keycode - BT_HST1 + 1; - chVTSet(&pairing_key_timer, TIME_MS2I(2000), (vtfunc_t)pairing_key_timer_cb, &host_idx); - bluetooth_connect_ex(host_idx, 0); - } else { - host_idx = 0; - chVTReset(&pairing_key_timer); - } - } - break; - case BAT_LVL: - if (get_transport() == TRANSPORT_BLUETOOTH && !usb_power_connected()) { - bat_level_animiation_start(battery_get_percentage()); - } - break; -#endif - default: -#ifdef FACTORY_RESET_CHECK - FACTORY_RESET_CHECK(keycode, record); -#endif - break; - } - return true; -} - -void keyboard_post_init_kb(void) { - dip_switch_read(true); - -#ifdef KC_BLUETOOTH_ENABLE - /* Currently we don't use this reset pin */ - // palSetLineMode(CKBT51_RESET_PIN, PAL_MODE_UNCONNECTED); - palSetLineMode(CKBT51_RESET_PIN, PAL_MODE_OUTPUT_PUSHPULL); - palWriteLine(CKBT51_RESET_PIN, PAL_HIGH); - - /* IMPORTANT: DO NOT enable internal pull-up resistor - * as there is an external pull-down resistor. - */ - palSetLineMode(USB_BT_MODE_SELECT_PIN, PAL_MODE_INPUT); - - ckbt51_init(false); - bluetooth_init(); -#endif - - power_on_indicator_timer_buffer = sync_timer_read32() | 1; - writePin(BAT_LOW_LED_PIN, BAT_LOW_LED_PIN_ON_STATE); - writePin(LED_CAPS_LOCK_PIN, LED_PIN_ON_STATE); -#ifdef KC_BLUETOOTH_ENABLE - writePin(H3, HOST_LED_PIN_ON_STATE); -#endif - - keyboard_post_init_user(); -} - -void matrix_scan_kb(void) { - if (factory_timer_buffer && timer_elapsed32(factory_timer_buffer) > 2000) { - factory_timer_buffer = 0; - if (bt_factory_reset) { - bt_factory_reset = false; - palWriteLine(CKBT51_RESET_PIN, PAL_LOW); - wait_ms(5); - palWriteLine(CKBT51_RESET_PIN, PAL_HIGH); - } - } - - if (power_on_indicator_timer_buffer) { - if (sync_timer_elapsed32(power_on_indicator_timer_buffer) > POWER_ON_LED_DURATION) { - power_on_indicator_timer_buffer = 0; - - writePin(BAT_LOW_LED_PIN, !BAT_LOW_LED_PIN_ON_STATE); - writePin(H3, !HOST_LED_PIN_ON_STATE); - if (!host_keyboard_led_state().caps_lock) writePin(LED_CAPS_LOCK_PIN, !LED_PIN_ON_STATE); - } else { - writePin(BAT_LOW_LED_PIN, BAT_LOW_LED_PIN_ON_STATE); - writePin(H3, HOST_LED_PIN_ON_STATE); - writePin(LED_CAPS_LOCK_PIN, LED_PIN_ON_STATE); - } - } - - if (siri_timer_buffer && sync_timer_elapsed32(siri_timer_buffer) > 500) { - siri_timer_buffer = 0; - unregister_code(KC_LGUI); - unregister_code(KC_SPACE); - } - -#ifdef FACTORY_RESET_TASK - FACTORY_RESET_TASK(); -#endif - matrix_scan_user(); -} - -#ifdef KC_BLUETOOTH_ENABLE -static void ckbt51_param_init(void) { - /* Set bluetooth device name */ - // ckbt51_set_local_name(STR(PRODUCT)); - ckbt51_set_local_name(PRODUCT); - wait_ms(10); - /* Set bluetooth parameters */ - module_param_t param = {.event_mode = 0x02, - .connected_idle_timeout = 7200, - .pairing_timeout = 180, - .pairing_mode = 0, - .reconnect_timeout = 5, - .report_rate = 90, - .vendor_id_source = 1, - .verndor_id = 0, // Must be 0x3434 - .product_id = PRODUCT_ID}; - ckbt51_set_param(¶m); - wait_ms(10); -} - -void bluetooth_enter_disconnected_kb(uint8_t host_idx) { - if (bt_factory_reset) { - ckbt51_param_init(); - factory_timer_buffer = timer_read32(); - } - /* CKBT51 bluetooth module boot time is slower, it enters disconnected after boot, - so we place initialization here. */ - if (firstDisconnect && sync_timer_read32() < 1000 && get_transport() == TRANSPORT_BLUETOOTH) { - ckbt51_param_init(); - bluetooth_connect(); - firstDisconnect = false; - } -} - -void ckbt51_default_ack_handler(uint8_t *data, uint8_t len) { - if (data[1] == 0x45) { - module_param_t param = {.event_mode = 0x02, - .connected_idle_timeout = 7200, - .pairing_timeout = 180, - .pairing_mode = 0, - .reconnect_timeout = 5, - .report_rate = 90, - .vendor_id_source = 1, - .verndor_id = 0, // Must be 0x3434 - .product_id = PRODUCT_ID}; - ckbt51_set_param(¶m); - } -} - -void bluetooth_pre_task(void) { - static uint8_t mode = 1; - - if (readPin(USB_BT_MODE_SELECT_PIN) != mode) { - if (readPin(USB_BT_MODE_SELECT_PIN) != mode) { - mode = readPin(USB_BT_MODE_SELECT_PIN); - set_transport(mode == 0 ? TRANSPORT_BLUETOOTH : TRANSPORT_USB); - } - } -} -#endif - -void battery_calculte_voltage(uint16_t value) { - uint16_t voltage = ((uint32_t)value) * 2246 / 1000; - -#ifdef LED_MATRIX_ENABLE - if (led_matrix_is_enabled()) { - uint32_t totalBuf = 0; - - for (uint8_t i = 0; i < DRIVER_COUNT; i++) - for (uint8_t j = 0; j < 192; j++) - totalBuf += g_pwm_buffer[i][j]; - /* We assumpt it is linear relationship*/ - voltage += (30 * totalBuf / LED_MATRIX_LED_COUNT / 255); - } -#endif -#ifdef RGB_MATRIX_ENABLE - if (rgb_matrix_is_enabled()) { - uint32_t totalBuf = 0; - - for (uint8_t i = 0; i < DRIVER_COUNT; i++) - for (uint8_t j = 0; j < 192; j++) - totalBuf += g_pwm_buffer[i][j]; - /* We assumpt it is linear relationship*/ - uint32_t compensation = 60 * totalBuf / RGB_MATRIX_LED_COUNT / 255 / 3; - voltage += compensation; - } -#endif - battery_set_voltage(voltage); -} - -bool via_command_kb(uint8_t *data, uint8_t length) { - switch (data[0]) { -#ifdef KC_BLUETOOTH_ENABLE - case 0xAA: - ckbt51_dfu_rx(data, length); - break; -#endif -#ifdef ENABLE_FACTORY_TEST - case 0xAB: - factory_test_rx(data, length); - break; -#endif - default: - return false; - } - - return true; -} - -#if !defined(VIA_ENABLE) -void raw_hid_receive(uint8_t *data, uint8_t length) { - switch (data[0]) { - case RAW_HID_CMD: - via_command_kb(data, length); - break; - } -} -#endif diff --git a/keyboards/keychron/k8_pro/k8_pro.h b/keyboards/keychron/k8_pro/k8_pro.h deleted file mode 100644 index 1202a8587e..0000000000 --- a/keyboards/keychron/k8_pro/k8_pro.h +++ /dev/null @@ -1,55 +0,0 @@ -/* Copyright 2021 @ 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 . - */ - -#pragma once - -#include "quantum.h" -#ifdef VIA_ENABLE -# include "via.h" -#endif - -#define ___ KC_NO - -#ifdef VIA_ENABLE -# define USER_START QK_KB_0 -#else -# define USER_START SAFE_RANGE -#endif - -// clang-format off -enum { - KC_LOPTN = USER_START, - KC_ROPTN, - KC_LCMMD, - KC_RCMMD, - KC_TASK, - KC_FILE, - KC_SNAP, - KC_CTANA, - KC_SIRI, -#ifdef KC_BLUETOOTH_ENABLE - BT_HST1, - BT_HST2, - BT_HST3, - BAT_LVL, -#else - BT_HST1 = KC_TRNS, - BT_HST2 = KC_TRNS, - BT_HST3 = KC_TRNS, - BAT_LVL = KC_TRNS, -#endif - NEW_SAFE_RANGE -}; diff --git a/keyboards/keychron/k8_pro/matrix.c b/keyboards/keychron/k8_pro/matrix.c deleted file mode 100644 index 6e322ec795..0000000000 --- a/keyboards/keychron/k8_pro/matrix.c +++ /dev/null @@ -1,173 +0,0 @@ -/* Copyright 2021 @ 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 . - */ - -//#include "q1_bluetooth.h" -#include "stdint.h" -#include "hal.h" -#include "gpio.h" -#include "quantum.h" - -#define HC595_STCP A0 -#define HC595_SHCP A1 -#define HC595_DS C15 - -pin_t row_pins[MATRIX_ROWS] = MATRIX_ROW_PINS; -pin_t col_pins[MATRIX_COLS] = MATRIX_COL_PINS; - -static inline void HC595_delay(uint16_t n) { - while (n-- > 0) { - asm volatile("nop" ::: "memory"); - }; -} - -static void HC595_output(uint16_t data) { - uint8_t i; - uint8_t n = 1; - - for (i = 16; i > 0; i--) { - writePinLow(HC595_SHCP); - - if (data & 0x8000) - writePinHigh(HC595_DS); - else - writePinLow(HC595_DS); - - data <<= 1; - - HC595_delay(n); - - writePinHigh(HC595_SHCP); - HC595_delay(n); - } - - HC595_delay(n); - writePinLow(HC595_STCP); - HC595_delay(n); - writePinHigh(HC595_STCP); -} - -static inline void setPinOutput_writeLow(pin_t pin) { - ATOMIC_BLOCK_FORCEON { - setPinOutput(pin); - writePinLow(pin); - } -} - -static inline void setPinInputHigh_atomic(pin_t pin) { - ATOMIC_BLOCK_FORCEON { - setPinInputHigh(pin); - } -} - -static inline uint8_t readMatrixPin(pin_t pin) { - if (pin != NO_PIN) { - return readPin(pin); - } else { - return 1; - } -} - -static bool select_col(uint8_t col) { - pin_t pin = col_pins[col]; - - if (col < 1) { - if (pin != NO_PIN) { - setPinOutput_writeLow(pin); - return true; - } - } else { - HC595_output(~(0x01 << (col - 1))); - return true; - } - return false; -} - -static void unselect_col(uint8_t col) { - pin_t pin = col_pins[col]; - - if (col < 1) { - if (pin != NO_PIN) { - setPinInputHigh_atomic(pin); - } - } else { - // HC595_output(0x01 << (col - 1)); - if (col >= MATRIX_COLS - 1) HC595_output(0xFFFF); - } -} - -static void unselect_cols(void) { - if (col_pins[0] != NO_PIN) setPinInputHigh_atomic(col_pins[0]); - HC595_output(0xFFFF); -} - -void select_all_cols(void) { - if (col_pins[0] != NO_PIN) setPinOutput_writeLow(col_pins[0]); - HC595_output(0x0000); -} - -void matrix_read_rows_on_col(matrix_row_t current_matrix[], uint8_t current_col) { - - // Select col - if (!select_col(current_col)) { // select col - return; // skip NO_PIN col - } - - HC595_delay(100); - - // For each row... - for (uint8_t row_index = 0; row_index < MATRIX_ROWS; row_index++) { - // Check row pin state - if (readMatrixPin(row_pins[row_index]) == 0) { - // Pin LO, set col bit - current_matrix[row_index] |= (MATRIX_ROW_SHIFTER << current_col); - // key_pressed = true; - } else { - // Pin HI, clear col bit - current_matrix[row_index] &= ~(MATRIX_ROW_SHIFTER << current_col); - } - } - - unselect_col(current_col); - HC595_delay(100); -} - -void matrix_init_custom(void) { - for (uint8_t x = 0; x < MATRIX_ROWS; x++) { - if (row_pins[x] != NO_PIN) { - setPinInputHigh_atomic(row_pins[x]); - } - } - setPinOutput(HC595_DS); - setPinOutput(HC595_STCP); - setPinOutput(HC595_SHCP); - unselect_cols(); -} - -bool matrix_scan_custom(matrix_row_t current_matrix[]) { - bool matrix_has_changed = false; - - matrix_row_t curr_matrix[MATRIX_ROWS] = {0}; - - // Set col, read rows - for (uint8_t current_col = 0; current_col < MATRIX_COLS; current_col++) { - matrix_read_rows_on_col(curr_matrix, current_col); - } - - matrix_has_changed = memcmp(current_matrix, curr_matrix, sizeof(curr_matrix)) != 0; - if (matrix_has_changed) memcpy(current_matrix, curr_matrix, sizeof(curr_matrix)); - - return matrix_has_changed; -} diff --git a/keyboards/keychron/k8_pro/mcuconf.h b/keyboards/keychron/k8_pro/mcuconf.h deleted file mode 100644 index 4dae767a44..0000000000 --- a/keyboards/keychron/k8_pro/mcuconf.h +++ /dev/null @@ -1,36 +0,0 @@ -/* 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 - -/* Set HCLK to 48 MHz as tradeoff of USB lowest clockand and - * lower power comsumption for bluetooth. Will use dynamic - * clock when STM32L4 is supported in ChibiOS */ -#undef STM32_PLLM_VALUE -#define STM32_PLLM_VALUE 2 - -#undef STM32_PLLN_VALUE -#define STM32_PLLN_VALUE 12 - -#undef STM32_I2C_USE_I2C1 -#define STM32_I2C_USE_I2C1 TRUE - -#ifdef KC_BLUETOOTH_ENABLE -# undef STM32_SERIAL_USE_USART2 -# define STM32_SERIAL_USE_USART2 TRUE -#endif diff --git a/keyboards/keychron/k8_pro/readme.md b/keyboards/keychron/k8_pro/readme.md deleted file mode 100644 index 1c0a151909..0000000000 --- a/keyboards/keychron/k8_pro/readme.md +++ /dev/null @@ -1,31 +0,0 @@ -# Keychron K8 Pro - -![Keychron K8 Pro](https://github.com/Keychron/ProductImage/blob/main/K_Pro/k8_pro.jpg?raw=true) - -A customizable 87 keys TKL keyboard. - -* Keyboard Maintainer: [Keychron](https://github.com/keychron) -* Hardware Supported: Keychron K8 Pro -* Hardware Availability: [Keychron K8 Pro QMK/VIA Wireless Mechanical Keyboard](https://www.keychron.com/products/keychron-k8-pro-qmk-via-wireless-mechanical-keyboard) - -Make example for this keyboard (after setting up your build environment): - - make keychron/k8_pro/ansi/rgb:default - make keychron/k8_pro/ansi/white:default - make keychron/k8_pro/iso/rgb:default - make keychron/k8_pro/iso/white:default - make keychron/k8_pro/jis/rgb:default - make keychron/k8_pro/jis/white:default - -Flashing example for this keyboard: - - make keychron/k8_pro/ansi/rgb:default:flash - make keychron/k8_pro/ansi/white:default:flash - make keychron/k8_pro/iso/rgb:default:flash - make keychron/k8_pro/iso/white:default:flash - make keychron/k8_pro/jis/rgb:default:flash - make keychron/k8_pro/jis/white:default:flash - -**Reset Key**: Connect the USB cable, toggle mode switch to "Off", hold down the *Esc* key or reset button underneath space bar, then toggle then switch to "Cable". - -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). diff --git a/keyboards/keychron/k8_pro/rules.mk b/keyboards/keychron/k8_pro/rules.mk deleted file mode 100644 index 8e536fc345..0000000000 --- a/keyboards/keychron/k8_pro/rules.mk +++ /dev/null @@ -1,9 +0,0 @@ -# Enter lower-power sleep mode when on the ChibiOS idle thread -OPT_DEFS += -DCORTEX_ENABLE_WFI_IDLE=TRUE -OPT_DEFS += -DNO_USB_STARTUP_CHECK -DENABLE_FACTORY_TEST - -SRC += matrix.c - -include keyboards/keychron/bluetooth/bluetooth.mk - - diff --git a/keyboards/keychron/k8_pro/via_json/k8_pro_ansi_rgb.json b/keyboards/keychron/k8_pro/via_json/k8_pro_ansi_rgb.json deleted file mode 100644 index 8eb68bdd52..0000000000 --- a/keyboards/keychron/k8_pro/via_json/k8_pro_ansi_rgb.json +++ /dev/null @@ -1,287 +0,0 @@ -{ - "name": "Keychron K8 Pro", - "vendorId": "0x3434", - "productId": "0x0280", - "keycodes": ["qmk_lighting"], - "menus": [ - { - "label": "Lighting", - "content": [ - { - "label": "Backlight", - "content": [ - { - "label": "Brightness", - "type": "range", - "options": [0, 255], - "content": ["id_qmk_rgb_matrix_brightness", 3, 1] - }, - { - "label": "Effect", - "type": "dropdown", - "content": ["id_qmk_rgb_matrix_effect", 3, 2], - "options": [ - ["None", 0], - ["Solid Color", 1], - ["Breathing", 2], - ["Band Spiral Val", 3], - ["Cycle All", 4], - ["Cycle Left Right", 5], - ["Cycle Up Down", 6], - ["Rainbow Moving Chevron", 7], - ["Cycle Out In", 8], - ["Cycle Out In Dual", 9], - ["Cycle Pinwheel", 10], - ["Cycle Spiral", 11], - ["Dual Beacon", 12], - ["Rainbow Beacon", 13], - ["Jellybean Raindrops", 14], - ["Pixel Rain", 15], - ["Typing Heatmap", 16], - ["Digital Rain", 17], - ["Reactive Simple", 18], - ["Reactive Multiwide", 19], - ["Reactive Multinexus", 20], - ["Splash", 21], - ["Solid Splash", 22] - ] - }, - { - "showIf": "{id_qmk_rgb_matrix_effect} > 1", - "label": "Effect Speed", - "type": "range", - "options": [0, 255], - "content": ["id_qmk_rgb_matrix_effect_speed", 3, 3] - }, - { - "showIf": "{id_qmk_rgb_matrix_effect} != 0 && ( {id_qmk_rgb_matrix_effect} < 4 || {id_qmk_rgb_matrix_effect} == 18 || ({id_qmk_rgb_matrix_effect} > 17 && {id_qmk_rgb_matrix_effect} != 21) ) ", - "label": "Color", - "type": "color", - "content": ["id_qmk_rgb_matrix_color", 3, 4] - } - ] - } - ] - } - ], - "customKeycodes": [ - {"name": "Left Option", "title": "Left Option", "shortName": "LOpt"}, - {"name": "Right Option", "title": "Right Option", "shortName": "ROpt"}, - {"name": "Left Cmd", "title": "Left Command", "shortName": "LCmd"}, - {"name": "Right Cmd", "title": "Right Command", "shortName": "RCmd"}, - {"name": "Task View", "title": "Task View in Windows", "shortName": "Task"}, - {"name": "File Explorer", "title": "File Explorer in Windows", "shortName": "File"}, - {"name": "Screen shot", "title": "Screenshot in macOS", "shortName": "SShot"}, - {"name": "Cortana", "title": "Cortana in Windows", "shortName": "Cortana"}, - {"name": "Siri", "title": "Siri in macOS", "shortName": "Siri"}, - {"name": "Bluetooth Host 1", "title": "Bluetooth Host 1", "shortName": "BTH1"}, - {"name": "Bluetooth Host 2", "title": "Bluetooth Host 2", "shortName": "BTH2"}, - {"name": "Bluetooth Host 3", "title": "Bluetooth Host 3", "shortName": "BTH3"}, - {"name": "Battery Level", "title": "Show battery level", "shortName": "Batt"} - ], - "matrix": {"rows": 6, "cols": 17}, - "layouts": { - "keymap": [ - [ - { - "c": "#777777" - }, - "0,0", - { - "x": 1, - "c": "#cccccc" - }, - "0,1", - "0,2", - "0,3", - "0,4", - { - "x": 0.5, - "c": "#aaaaaa" - }, - "0,5", - "0,6", - "0,7", - "0,8", - { - "x": 0.5, - "c": "#cccccc" - }, - "0,9", - "0,10", - "0,11", - "0,12", - { - "x": 0.25, - "c": "#aaaaaa" - }, - "0,14", - "0,15", - "0,16" - ], - [ - { - "y": 0.25 - }, - "1,0", - { - "c": "#cccccc" - }, - "1,1", - "1,2", - "1,3", - "1,4", - "1,5", - "1,6", - "1,7", - "1,8", - "1,9", - "1,10", - "1,11", - "1,12", - { - "c": "#aaaaaa", - "w": 2 - }, - "1,13", - { - "x": 0.25 - }, - "1,14", - "1,15", - "1,16" - ], - [ - { - "w": 1.5 - }, - "2,0", - { - "c": "#cccccc" - }, - "2,1", - "2,2", - "2,3", - "2,4", - "2,5", - "2,6", - "2,7", - "2,8", - "2,9", - "2,10", - "2,11", - "2,12", - { - "c": "#aaaaaa", - "w": 1.5 - }, - "2,13", - { - "x": 0.25 - }, - "2,14", - "2,15", - "2,16" - ], - [ - { - "w": 1.75 - }, - "3,0", - { - "c": "#cccccc" - }, - "3,1", - "3,2", - "3,3", - "3,4", - "3,5", - "3,6", - "3,7", - "3,8", - "3,9", - "3,10", - "3,11", - { - "c": "#777777", - "w": 2.25 - }, - "3,13" - ], - [ - { - "c": "#aaaaaa", - "w": 2.25 - }, - "4,0", - { - "c": "#cccccc" - }, - "4,2", - "4,3", - "4,4", - "4,5", - "4,6", - "4,7", - "4,8", - "4,9", - "4,10", - "4,11", - { - "c": "#aaaaaa", - "w": 2.75 - }, - "4,13", - { - "x": 1.25, - "c": "#777777" - }, - "4,15" - ], - [ - { - "c": "#aaaaaa", - "w": 1.25 - }, - "5,0", - { - "w": 1.25 - }, - "5,1", - { - "w": 1.25 - }, - "5,2", - { - "c": "#cccccc", - "w": 6.25 - }, - "5,6", - { - "c": "#aaaaaa", - "w": 1.25 - }, - "5,10", - { - "w": 1.25 - }, - "5,11", - { - "w": 1.25 - }, - "5,12", - { - "w": 1.25 - }, - "5,13", - { - "x": 0.25, - "c": "#777777" - }, - "5,14", - "5,15", - "5,16" - ] - ] - } -} diff --git a/keyboards/keychron/k8_pro/via_json/k8_pro_ansi_white.json b/keyboards/keychron/k8_pro/via_json/k8_pro_ansi_white.json deleted file mode 100644 index 6c6754fe70..0000000000 --- a/keyboards/keychron/k8_pro/via_json/k8_pro_ansi_white.json +++ /dev/null @@ -1,226 +0,0 @@ -{ - "name": "Keychron K8 Pro", - "vendorId": "0x3434", - "productId": "0x0283", - "keycodes": ["qmk_lighting"], - "customKeycodes": [ - {"name": "Left Option", "title": "Left Option", "shortName": "LOpt"}, - {"name": "Right Option", "title": "Right Option", "shortName": "ROpt"}, - {"name": "Left Cmd", "title": "Left Command", "shortName": "LCmd"}, - {"name": "Right Cmd", "title": "Right Command", "shortName": "RCmd"}, - {"name": "Task View", "title": "Task View in Windows", "shortName": "Task"}, - {"name": "File Explorer", "title": "File Explorer in Windows", "shortName": "File"}, - {"name": "Screen shot", "title": "Screenshot in macOS", "shortName": "SShot"}, - {"name": "Cortana", "title": "Cortana in Windows", "shortName": "Cortana"}, - {"name": "Siri", "title": "Siri in macOS", "shortName": "Siri"}, - {"name": "Bluetooth Host 1", "title": "Bluetooth Host 1", "shortName": "BTH1"}, - {"name": "Bluetooth Host 2", "title": "Bluetooth Host 2", "shortName": "BTH2"}, - {"name": "Bluetooth Host 3", "title": "Bluetooth Host 3", "shortName": "BTH3"}, - {"name": "Battery Level", "title": "Show battery level", "shortName": "Batt"} - ], - "matrix": {"rows": 6, "cols": 17}, - "layouts": { - "keymap": [ - [ - { - "c": "#777777" - }, - "0,0", - { - "x": 1, - "c": "#cccccc" - }, - "0,1", - "0,2", - "0,3", - "0,4", - { - "x": 0.5, - "c": "#aaaaaa" - }, - "0,5", - "0,6", - "0,7", - "0,8", - { - "x": 0.5, - "c": "#cccccc" - }, - "0,9", - "0,10", - "0,11", - "0,12", - { - "x": 0.25, - "c": "#aaaaaa" - }, - "0,14", - "0,15", - "0,16" - ], - [ - { - "y": 0.25 - }, - "1,0", - { - "c": "#cccccc" - }, - "1,1", - "1,2", - "1,3", - "1,4", - "1,5", - "1,6", - "1,7", - "1,8", - "1,9", - "1,10", - "1,11", - "1,12", - { - "c": "#aaaaaa", - "w": 2 - }, - "1,13", - { - "x": 0.25 - }, - "1,14", - "1,15", - "1,16" - ], - [ - { - "w": 1.5 - }, - "2,0", - { - "c": "#cccccc" - }, - "2,1", - "2,2", - "2,3", - "2,4", - "2,5", - "2,6", - "2,7", - "2,8", - "2,9", - "2,10", - "2,11", - "2,12", - { - "c": "#aaaaaa", - "w": 1.5 - }, - "2,13", - { - "x": 0.25 - }, - "2,14", - "2,15", - "2,16" - ], - [ - { - "w": 1.75 - }, - "3,0", - { - "c": "#cccccc" - }, - "3,1", - "3,2", - "3,3", - "3,4", - "3,5", - "3,6", - "3,7", - "3,8", - "3,9", - "3,10", - "3,11", - { - "c": "#777777", - "w": 2.25 - }, - "3,13" - ], - [ - { - "c": "#aaaaaa", - "w": 2.25 - }, - "4,0", - { - "c": "#cccccc" - }, - "4,2", - "4,3", - "4,4", - "4,5", - "4,6", - "4,7", - "4,8", - "4,9", - "4,10", - "4,11", - { - "c": "#aaaaaa", - "w": 2.75 - }, - "4,13", - { - "x": 1.25, - "c": "#777777" - }, - "4,15" - ], - [ - { - "c": "#aaaaaa", - "w": 1.25 - }, - "5,0", - { - "w": 1.25 - }, - "5,1", - { - "w": 1.25 - }, - "5,2", - { - "c": "#cccccc", - "w": 6.25 - }, - "5,6", - { - "c": "#aaaaaa", - "w": 1.25 - }, - "5,10", - { - "w": 1.25 - }, - "5,11", - { - "w": 1.25 - }, - "5,12", - { - "w": 1.25 - }, - "5,13", - { - "x": 0.25, - "c": "#777777" - }, - "5,14", - "5,15", - "5,16" - ] - ] - } -} diff --git a/keyboards/keychron/k8_pro/via_json/k8_pro_iso_rgb.json b/keyboards/keychron/k8_pro/via_json/k8_pro_iso_rgb.json deleted file mode 100644 index 38bc52b070..0000000000 --- a/keyboards/keychron/k8_pro/via_json/k8_pro_iso_rgb.json +++ /dev/null @@ -1,292 +0,0 @@ -{ - "name": "Keychron K8 Pro", - "vendorId": "0x3434", - "productId": "0x0281", - "keycodes": ["qmk_lighting"], - "menus": [ - { - "label": "Lighting", - "content": [ - { - "label": "Backlight", - "content": [ - { - "label": "Brightness", - "type": "range", - "options": [0, 255], - "content": ["id_qmk_rgb_matrix_brightness", 3, 1] - }, - { - "label": "Effect", - "type": "dropdown", - "content": ["id_qmk_rgb_matrix_effect", 3, 2], - "options": [ - ["None", 0], - ["Solid Color", 1], - ["Breathing", 2], - ["Band Spiral Val", 3], - ["Cycle All", 4], - ["Cycle Left Right", 5], - ["Cycle Up Down", 6], - ["Rainbow Moving Chevron", 7], - ["Cycle Out In", 8], - ["Cycle Out In Dual", 9], - ["Cycle Pinwheel", 10], - ["Cycle Spiral", 11], - ["Dual Beacon", 12], - ["Rainbow Beacon", 13], - ["Jellybean Raindrops", 14], - ["Pixel Rain", 15], - ["Typing Heatmap", 16], - ["Digital Rain", 17], - ["Reactive Simple", 18], - ["Reactive Multiwide", 19], - ["Reactive Multinexus", 20], - ["Splash", 21], - ["Solid Splash", 22] - ] - }, - { - "showIf": "{id_qmk_rgb_matrix_effect} > 1", - "label": "Effect Speed", - "type": "range", - "options": [0, 255], - "content": ["id_qmk_rgb_matrix_effect_speed", 3, 3] - }, - { - "showIf": "{id_qmk_rgb_matrix_effect} != 0 && ( {id_qmk_rgb_matrix_effect} < 4 || {id_qmk_rgb_matrix_effect} == 18 || ({id_qmk_rgb_matrix_effect} > 17 && {id_qmk_rgb_matrix_effect} != 21) ) ", - "label": "Color", - "type": "color", - "content": ["id_qmk_rgb_matrix_color", 3, 4] - } - ] - } - ] - } - ], - "customKeycodes": [ - {"name": "Left Option", "title": "Left Option", "shortName": "LOpt"}, - {"name": "Right Option", "title": "Right Option", "shortName": "ROpt"}, - {"name": "Left Cmd", "title": "Left Command", "shortName": "LCmd"}, - {"name": "Right Cmd", "title": "Right Command", "shortName": "RCmd"}, - {"name": "Task View", "title": "Task View in Windows", "shortName": "Task"}, - {"name": "File Explorer", "title": "File Explorer in Windows", "shortName": "File"}, - {"name": "Screen shot", "title": "Screenshot in macOS", "shortName": "SShot"}, - {"name": "Cortana", "title": "Cortana in Windows", "shortName": "Cortana"}, - {"name": "Siri", "title": "Siri in macOS", "shortName": "Siri"}, - {"name": "Bluetooth Host 1", "title": "Bluetooth Host 1", "shortName": "BTH1"}, - {"name": "Bluetooth Host 2", "title": "Bluetooth Host 2", "shortName": "BTH2"}, - {"name": "Bluetooth Host 3", "title": "Bluetooth Host 3", "shortName": "BTH3"}, - {"name": "Battery Level", "title": "Show battery level", "shortName": "Batt"} - ], - "matrix": {"rows": 6, "cols": 17}, - "layouts": { - "keymap": [ - [ - { - "c": "#777777" - }, - "0,0", - { - "x": 1, - "c": "#cccccc" - }, - "0,1", - "0,2", - "0,3", - "0,4", - { - "x": 0.5, - "c": "#aaaaaa" - }, - "0,5", - "0,6", - "0,7", - "0,8", - { - "x": 0.5, - "c": "#cccccc" - }, - "0,9", - "0,10", - "0,11", - "0,12", - { - "x": 0.25, - "c": "#aaaaaa" - }, - "0,14", - "0,15", - "0,16" - ], - [ - { - "y": 0.25 - }, - "1,0", - { - "c": "#cccccc" - }, - "1,1", - "1,2", - "1,3", - "1,4", - "1,5", - "1,6", - "1,7", - "1,8", - "1,9", - "1,10", - "1,11", - "1,12", - { - "c": "#aaaaaa", - "w": 2 - }, - "1,13", - { - "x": 0.25 - }, - "1,14", - "1,15", - "1,16" - ], - [ - { - "w": 1.5 - }, - "2,0", - { - "c": "#cccccc" - }, - "2,1", - "2,2", - "2,3", - "2,4", - "2,5", - "2,6", - "2,7", - "2,8", - "2,9", - "2,10", - "2,11", - "2,12", - { - "x": 0.25, - "c": "#777777", - "w": 1.25, - "h": 2, - "w2": 1.5, - "h2": 1, - "x2": -0.25 - }, - "2,13", - { - "x": 0.25, - "c": "#aaaaaa" - }, - "2,14", - "2,15", - "2,16" - ], - [ - { - "w": 1.75 - }, - "3,0", - { - "c": "#cccccc" - }, - "3,1", - "3,2", - "3,3", - "3,4", - "3,5", - "3,6", - "3,7", - "3,8", - "3,9", - "3,10", - "3,11", - { - "c": "#aaaaaa" - }, - "3,13" - ], - [ - { - "w": 1.25 - }, - "4,0", - "4,1", - { - "c": "#cccccc" - }, - "4,2", - "4,3", - "4,4", - "4,5", - "4,6", - "4,7", - "4,8", - "4,9", - "4,10", - "4,11", - { - "c": "#aaaaaa", - "w": 2.75 - }, - "4,13", - { - "x": 1.25, - "c": "#777777" - }, - "4,15" - ], - [ - { - "c": "#aaaaaa", - "w": 1.25 - }, - "5,0", - { - "w": 1.25 - }, - "5,1", - { - "w": 1.25 - }, - "5,2", - { - "c": "#cccccc", - "w": 6.25 - }, - "5,6", - { - "c": "#aaaaaa", - "w": 1.25 - }, - "5,10", - { - "w": 1.25 - }, - "5,11", - { - "w": 1.25 - }, - "5,12", - { - "w": 1.25 - }, - "5,13", - { - "x": 0.25, - "c": "#777777" - }, - "5,14", - "5,15", - "5,16" - ] - ] - } -} diff --git a/keyboards/keychron/k8_pro/via_json/k8_pro_iso_white.json b/keyboards/keychron/k8_pro/via_json/k8_pro_iso_white.json deleted file mode 100644 index 8c0ac2ad3a..0000000000 --- a/keyboards/keychron/k8_pro/via_json/k8_pro_iso_white.json +++ /dev/null @@ -1,231 +0,0 @@ -{ - "name": "Keychron K8 Pro", - "vendorId": "0x3434", - "productId": "0x0284", - "keycodes": ["qmk_lighting"], - "customKeycodes": [ - {"name": "Left Option", "title": "Left Option", "shortName": "LOpt"}, - {"name": "Right Option", "title": "Right Option", "shortName": "ROpt"}, - {"name": "Left Cmd", "title": "Left Command", "shortName": "LCmd"}, - {"name": "Right Cmd", "title": "Right Command", "shortName": "RCmd"}, - {"name": "Task View", "title": "Task View in Windows", "shortName": "Task"}, - {"name": "File Explorer", "title": "File Explorer in Windows", "shortName": "File"}, - {"name": "Screen shot", "title": "Screenshot in macOS", "shortName": "SShot"}, - {"name": "Cortana", "title": "Cortana in Windows", "shortName": "Cortana"}, - {"name": "Siri", "title": "Siri in macOS", "shortName": "Siri"}, - {"name": "Bluetooth Host 1", "title": "Bluetooth Host 1", "shortName": "BTH1"}, - {"name": "Bluetooth Host 2", "title": "Bluetooth Host 2", "shortName": "BTH2"}, - {"name": "Bluetooth Host 3", "title": "Bluetooth Host 3", "shortName": "BTH3"}, - {"name": "Battery Level", "title": "Show battery level", "shortName": "Batt"} - ], - "matrix": {"rows": 6, "cols": 17}, - "layouts": { - "keymap": [ - [ - { - "c": "#777777" - }, - "0,0", - { - "x": 1, - "c": "#cccccc" - }, - "0,1", - "0,2", - "0,3", - "0,4", - { - "x": 0.5, - "c": "#aaaaaa" - }, - "0,5", - "0,6", - "0,7", - "0,8", - { - "x": 0.5, - "c": "#cccccc" - }, - "0,9", - "0,10", - "0,11", - "0,12", - { - "x": 0.25, - "c": "#aaaaaa" - }, - "0,14", - "0,15", - "0,16" - ], - [ - { - "y": 0.25 - }, - "1,0", - { - "c": "#cccccc" - }, - "1,1", - "1,2", - "1,3", - "1,4", - "1,5", - "1,6", - "1,7", - "1,8", - "1,9", - "1,10", - "1,11", - "1,12", - { - "c": "#aaaaaa", - "w": 2 - }, - "1,13", - { - "x": 0.25 - }, - "1,14", - "1,15", - "1,16" - ], - [ - { - "w": 1.5 - }, - "2,0", - { - "c": "#cccccc" - }, - "2,1", - "2,2", - "2,3", - "2,4", - "2,5", - "2,6", - "2,7", - "2,8", - "2,9", - "2,10", - "2,11", - "2,12", - { - "x": 0.25, - "c": "#777777", - "w": 1.25, - "h": 2, - "w2": 1.5, - "h2": 1, - "x2": -0.25 - }, - "2,13", - { - "x": 0.25, - "c": "#aaaaaa" - }, - "2,14", - "2,15", - "2,16" - ], - [ - { - "w": 1.75 - }, - "3,0", - { - "c": "#cccccc" - }, - "3,1", - "3,2", - "3,3", - "3,4", - "3,5", - "3,6", - "3,7", - "3,8", - "3,9", - "3,10", - "3,11", - { - "c": "#aaaaaa" - }, - "3,13" - ], - [ - { - "w": 1.25 - }, - "4,0", - "4,1", - { - "c": "#cccccc" - }, - "4,2", - "4,3", - "4,4", - "4,5", - "4,6", - "4,7", - "4,8", - "4,9", - "4,10", - "4,11", - { - "c": "#aaaaaa", - "w": 2.75 - }, - "4,13", - { - "x": 1.25, - "c": "#777777" - }, - "4,15" - ], - [ - { - "c": "#aaaaaa", - "w": 1.25 - }, - "5,0", - { - "w": 1.25 - }, - "5,1", - { - "w": 1.25 - }, - "5,2", - { - "c": "#cccccc", - "w": 6.25 - }, - "5,6", - { - "c": "#aaaaaa", - "w": 1.25 - }, - "5,10", - { - "w": 1.25 - }, - "5,11", - { - "w": 1.25 - }, - "5,12", - { - "w": 1.25 - }, - "5,13", - { - "x": 0.25, - "c": "#777777" - }, - "5,14", - "5,15", - "5,16" - ] - ] - } -} diff --git a/keyboards/keychron/k8_pro/via_json/k8_pro_jis_rgb.json b/keyboards/keychron/k8_pro/via_json/k8_pro_jis_rgb.json deleted file mode 100644 index 058d8e3d78..0000000000 --- a/keyboards/keychron/k8_pro/via_json/k8_pro_jis_rgb.json +++ /dev/null @@ -1,292 +0,0 @@ -{ - "name": "Keychron K8 Pro", - "vendorId": "0x3434", - "productId": "0x0282", - "keycodes": ["qmk_lighting"], - "menus": [ - { - "label": "Lighting", - "content": [ - { - "label": "Backlight", - "content": [ - { - "label": "Brightness", - "type": "range", - "options": [0, 255], - "content": ["id_qmk_rgb_matrix_brightness", 3, 1] - }, - { - "label": "Effect", - "type": "dropdown", - "content": ["id_qmk_rgb_matrix_effect", 3, 2], - "options": [ - ["None", 0], - ["Solid Color", 1], - ["Breathing", 2], - ["Band Spiral Val", 3], - ["Cycle All", 4], - ["Cycle Left Right", 5], - ["Cycle Up Down", 6], - ["Rainbow Moving Chevron", 7], - ["Cycle Out In", 8], - ["Cycle Out In Dual", 9], - ["Cycle Pinwheel", 10], - ["Cycle Spiral", 11], - ["Dual Beacon", 12], - ["Rainbow Beacon", 13], - ["Jellybean Raindrops", 14], - ["Pixel Rain", 15], - ["Typing Heatmap", 16], - ["Digital Rain", 17], - ["Reactive Simple", 18], - ["Reactive Multiwide", 19], - ["Reactive Multinexus", 20], - ["Splash", 21], - ["Solid Splash", 22] - ] - }, - { - "showIf": "{id_qmk_rgb_matrix_effect} > 1", - "label": "Effect Speed", - "type": "range", - "options": [0, 255], - "content": ["id_qmk_rgb_matrix_effect_speed", 3, 3] - }, - { - "showIf": "{id_qmk_rgb_matrix_effect} != 0 && ( {id_qmk_rgb_matrix_effect} < 4 || {id_qmk_rgb_matrix_effect} == 18 || ({id_qmk_rgb_matrix_effect} > 17 && {id_qmk_rgb_matrix_effect} != 21) ) ", - "label": "Color", - "type": "color", - "content": ["id_qmk_rgb_matrix_color", 3, 4] - } - ] - } - ] - } - ], - "customKeycodes": [ - {"name": "Left Option", "title": "Left Option", "shortName": "LOpt"}, - {"name": "Right Option", "title": "Right Option", "shortName": "ROpt"}, - {"name": "Left Cmd", "title": "Left Command", "shortName": "LCmd"}, - {"name": "Right Cmd", "title": "Right Command", "shortName": "RCmd"}, - {"name": "Task View", "title": "Task View in Windows", "shortName": "Task"}, - {"name": "File Explorer", "title": "File Explorer in Windows", "shortName": "File"}, - {"name": "Screen shot", "title": "Screenshot in macOS", "shortName": "SShot"}, - {"name": "Cortana", "title": "Cortana in Windows", "shortName": "Cortana"}, - {"name": "Siri", "title": "Siri in macOS", "shortName": "Siri"}, - {"name": "Bluetooth Host 1", "title": "Bluetooth Host 1", "shortName": "BTH1"}, - {"name": "Bluetooth Host 2", "title": "Bluetooth Host 2", "shortName": "BTH2"}, - {"name": "Bluetooth Host 3", "title": "Bluetooth Host 3", "shortName": "BTH3"}, - {"name": "Battery Level", "title": "Show battery level", "shortName": "Batt"} - ], - "matrix": {"rows": 6, "cols": 17}, - "layouts": { - "keymap": [ - [ - { - "c": "#777777" - }, - "0,0", - { - "x": 1, - "c": "#cccccc" - }, - "0,1", - "0,2", - "0,3", - "0,4", - { - "x": 0.5, - "c": "#aaaaaa" - }, - "0,5", - "0,6", - "0,7", - "0,8", - { - "x": 0.5, - "c": "#cccccc" - }, - "0,9", - "0,10", - "0,11", - "0,12", - { - "x": 0.25, - "c": "#aaaaaa" - }, - "0,14", - "0,15", - "0,16" - ], - [ - { - "y": 0.25 - }, - "1,0", - { - "c": "#cccccc" - }, - "1,1", - "1,2", - "1,3", - "1,4", - "1,5", - "1,6", - "1,7", - "1,8", - "1,9", - "1,10", - "1,11", - "1,12", - { - "c": "#aaaaaa" - }, - "1,13", - "0,13", - { - "x": 0.25 - }, - "1,14", - "1,15", - "1,16" - ], - [ - { - "w": 1.5 - }, - "2,0", - { - "c": "#cccccc" - }, - "2,1", - "2,2", - "2,3", - "2,4", - "2,5", - "2,6", - "2,7", - "2,8", - "2,9", - "2,10", - "2,11", - "2,12", - { - "x": 0.25, - "c": "#777777", - "w": 1.25, - "h": 2, - "w2": 1.5, - "h2": 1, - "x2": -0.25 - }, - "2,13", - { - "x": 0.25, - "c": "#aaaaaa" - }, - "2,14", - "2,15", - "2,16" - ], - [ - { - "w": 1.75 - }, - "3,0", - { - "c": "#cccccc" - }, - "3,1", - "3,2", - "3,3", - "3,4", - "3,5", - "3,6", - "3,7", - "3,8", - "3,9", - "3,10", - "3,11", - { - "c": "#aaaaaa" - }, - "3,13" - ], - [ - { - "w": 2.25 - }, - "4,0", - { - "c": "#cccccc" - }, - "4,2", - "4,3", - "4,4", - "4,5", - "4,6", - "4,7", - "4,8", - "4,9", - "4,10", - "4,11", - { - "c": "#aaaaaa" - }, - "4,12", - { - "w": 1.75 - }, - "4,13", - { - "x": 1.25, - "c": "#777777" - }, - "4,15" - ], - [ - { - "c": "#aaaaaa", - "w": 1.25 - }, - "5,0", - "5,1", - { - "w": 1.25 - }, - "5,2", - "5,3", - { - "c": "#cccccc", - "w": 4.75 - }, - "5,6", - { - "c": "#aaaaaa" - }, - "5,9", - { - "w": 1.25 - }, - "5,10", - { - "w": 1.25 - }, - "5,11", - "5,12", - { - "w": 1.25 - }, - "5,13", - { - "x": 0.25, - "c": "#777777" - }, - "5,14", - "5,15", - "5,16" - ] - ] - } -} diff --git a/keyboards/keychron/k8_pro/via_json/k8_pro_jis_white.json b/keyboards/keychron/k8_pro/via_json/k8_pro_jis_white.json deleted file mode 100644 index d815120317..0000000000 --- a/keyboards/keychron/k8_pro/via_json/k8_pro_jis_white.json +++ /dev/null @@ -1,231 +0,0 @@ -{ - "name": "Keychron K8 Pro", - "vendorId": "0x3434", - "productId": "0x0285", - "keycodes": ["qmk_lighting"], - "customKeycodes": [ - {"name": "Left Option", "title": "Left Option", "shortName": "LOpt"}, - {"name": "Right Option", "title": "Right Option", "shortName": "ROpt"}, - {"name": "Left Cmd", "title": "Left Command", "shortName": "LCmd"}, - {"name": "Right Cmd", "title": "Right Command", "shortName": "RCmd"}, - {"name": "Task View", "title": "Task View in Windows", "shortName": "Task"}, - {"name": "File Explorer", "title": "File Explorer in Windows", "shortName": "File"}, - {"name": "Screen shot", "title": "Screenshot in macOS", "shortName": "SShot"}, - {"name": "Cortana", "title": "Cortana in Windows", "shortName": "Cortana"}, - {"name": "Siri", "title": "Siri in macOS", "shortName": "Siri"}, - {"name": "Bluetooth Host 1", "title": "Bluetooth Host 1", "shortName": "BTH1"}, - {"name": "Bluetooth Host 2", "title": "Bluetooth Host 2", "shortName": "BTH2"}, - {"name": "Bluetooth Host 3", "title": "Bluetooth Host 3", "shortName": "BTH3"}, - {"name": "Battery Level", "title": "Show battery level", "shortName": "Batt"} - ], - "matrix": {"rows": 6, "cols": 17}, - "layouts": { - "keymap": [ - [ - { - "c": "#777777" - }, - "0,0", - { - "x": 1, - "c": "#cccccc" - }, - "0,1", - "0,2", - "0,3", - "0,4", - { - "x": 0.5, - "c": "#aaaaaa" - }, - "0,5", - "0,6", - "0,7", - "0,8", - { - "x": 0.5, - "c": "#cccccc" - }, - "0,9", - "0,10", - "0,11", - "0,12", - { - "x": 0.25, - "c": "#aaaaaa" - }, - "0,14", - "0,15", - "0,16" - ], - [ - { - "y": 0.25 - }, - "1,0", - { - "c": "#cccccc" - }, - "1,1", - "1,2", - "1,3", - "1,4", - "1,5", - "1,6", - "1,7", - "1,8", - "1,9", - "1,10", - "1,11", - "1,12", - { - "c": "#aaaaaa" - }, - "1,13", - "0,13", - { - "x": 0.25 - }, - "1,14", - "1,15", - "1,16" - ], - [ - { - "w": 1.5 - }, - "2,0", - { - "c": "#cccccc" - }, - "2,1", - "2,2", - "2,3", - "2,4", - "2,5", - "2,6", - "2,7", - "2,8", - "2,9", - "2,10", - "2,11", - "2,12", - { - "x": 0.25, - "c": "#777777", - "w": 1.25, - "h": 2, - "w2": 1.5, - "h2": 1, - "x2": -0.25 - }, - "2,13", - { - "x": 0.25, - "c": "#aaaaaa" - }, - "2,14", - "2,15", - "2,16" - ], - [ - { - "w": 1.75 - }, - "3,0", - { - "c": "#cccccc" - }, - "3,1", - "3,2", - "3,3", - "3,4", - "3,5", - "3,6", - "3,7", - "3,8", - "3,9", - "3,10", - "3,11", - { - "c": "#aaaaaa" - }, - "3,13" - ], - [ - { - "w": 2.25 - }, - "4,0", - { - "c": "#cccccc" - }, - "4,2", - "4,3", - "4,4", - "4,5", - "4,6", - "4,7", - "4,8", - "4,9", - "4,10", - "4,11", - { - "c": "#aaaaaa" - }, - "4,12", - { - "w": 1.75 - }, - "4,13", - { - "x": 1.25, - "c": "#777777" - }, - "4,15" - ], - [ - { - "c": "#aaaaaa", - "w": 1.25 - }, - "5,0", - "5,1", - { - "w": 1.25 - }, - "5,2", - "5,3", - { - "c": "#cccccc", - "w": 4.75 - }, - "5,6", - { - "c": "#aaaaaa" - }, - "5,9", - { - "w": 1.25 - }, - "5,10", - { - "w": 1.25 - }, - "5,11", - "5,12", - { - "w": 1.25 - }, - "5,13", - { - "x": 0.25, - "c": "#777777" - }, - "5,14", - "5,15", - "5,16" - ] - ] - } -} diff --git a/keyboards/keychron/k9_pro/ansi/info.json b/keyboards/keychron/k9_pro/ansi/info.json deleted file mode 100644 index c217e0a41d..0000000000 --- a/keyboards/keychron/k9_pro/ansi/info.json +++ /dev/null @@ -1,83 +0,0 @@ -{ - "matrix_pins": { - "rows": ["B4", "B3", "A15", "A14", "A13"], - "cols": [null, null, null, null, null, null, null, null, null, null, null, null, null, null], - "custom": true, - "custom_lite": true - }, - "matrix_size": { - "rows": 5, - "cols": 14 - }, - "layouts": { - "LAYOUT_61_ansi": { - "layout": [ - {"matrix":[0,0], "x":0, "y":0}, - {"matrix":[0,1], "x":1, "y":0}, - {"matrix":[0,2], "x":2, "y":0}, - {"matrix":[0,3], "x":3, "y":0}, - {"matrix":[0,4], "x":4, "y":0}, - {"matrix":[0,5], "x":5, "y":0}, - {"matrix":[0,6], "x":6, "y":0}, - {"matrix":[0,7], "x":7, "y":0}, - {"matrix":[0,8], "x":8, "y":0}, - {"matrix":[0,9], "x":9, "y":0}, - {"matrix":[0,10], "x":10, "y":0}, - {"matrix":[0,11], "x":11, "y":0}, - {"matrix":[0,12], "x":12, "y":0}, - {"matrix":[0,13], "x":13, "y":0, "w":2}, - - {"matrix":[1,0], "x":0, "y":1, "w":1.5}, - {"matrix":[1,1], "x":1.5, "y":1}, - {"matrix":[1,2], "x":2.5, "y":1}, - {"matrix":[1,3], "x":3.5, "y":1}, - {"matrix":[1,4], "x":4.5, "y":1}, - {"matrix":[1,5], "x":5.5, "y":1}, - {"matrix":[1,6], "x":6.5, "y":1}, - {"matrix":[1,7], "x":7.5, "y":1}, - {"matrix":[1,8], "x":8.5, "y":1}, - {"matrix":[1,9], "x":9.5, "y":1}, - {"matrix":[1,10], "x":10.5, "y":1}, - {"matrix":[1,11], "x":11.5, "y":1}, - {"matrix":[1,12], "x":12.5, "y":1}, - {"matrix":[1,13], "x":13.5, "y":1, "w":1.5}, - - {"matrix":[2,0], "x":0, "y":2, "w":1.75}, - {"matrix":[2,1], "x":1.75, "y":2}, - {"matrix":[2,2], "x":2.75, "y":2}, - {"matrix":[2,3], "x":3.75, "y":2}, - {"matrix":[2,4], "x":4.75, "y":2}, - {"matrix":[2,5], "x":5.75, "y":2}, - {"matrix":[2,6], "x":6.75, "y":2}, - {"matrix":[2,7], "x":7.75, "y":2}, - {"matrix":[2,8], "x":8.75, "y":2}, - {"matrix":[2,9], "x":9.75, "y":2}, - {"matrix":[2,10], "x":10.75, "y":2}, - {"matrix":[2,11], "x":11.75, "y":2}, - {"matrix":[2,13], "x":12.75, "y":2, "w":2.25}, - - {"matrix":[3,0], "x":0, "y":3, "w":2.25}, - {"matrix":[3,2], "x":2.25, "y":3}, - {"matrix":[3,3], "x":3.25, "y":3}, - {"matrix":[3,4], "x":4.25, "y":3}, - {"matrix":[3,5], "x":5.25, "y":3}, - {"matrix":[3,6], "x":6.25, "y":3}, - {"matrix":[3,7], "x":7.25, "y":3}, - {"matrix":[3,8], "x":8.25, "y":3}, - {"matrix":[3,9], "x":9.25, "y":3}, - {"matrix":[3,10], "x":10.25, "y":3}, - {"matrix":[3,11], "x":11.25, "y":3}, - {"matrix":[3,13], "x":12.25, "y":3, "w":2.75}, - - {"matrix":[4,0], "x":0, "y":4, "w":1.25}, - {"matrix":[4,1], "x":1.25, "y":4, "w":1.25}, - {"matrix":[4,2], "x":2.5, "y":4, "w":1.25}, - {"matrix":[4,6], "x":3.75, "y":4, "w":6.25}, - {"matrix":[4,10], "x":10, "y":4, "w":1.25}, - {"matrix":[4,11], "x":11.25, "y":4, "w":1.25}, - {"matrix":[4,12], "x":12.5, "y":4, "w":1.25}, - {"matrix":[4,13], "x":13.75, "y":4, "w":1.25} - ] - } - } -} diff --git a/keyboards/keychron/k9_pro/ansi/rgb/config.h b/keyboards/keychron/k9_pro/ansi/rgb/config.h deleted file mode 100644 index 9abcbb73e5..0000000000 --- a/keyboards/keychron/k9_pro/ansi/rgb/config.h +++ /dev/null @@ -1,52 +0,0 @@ -/* 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 . - */ - -#pragma once - -#ifdef RGB_MATRIX_ENABLE -/* RGB Matrix Driver Configuration */ -# define DRIVER_COUNT 1 -# define DRIVER_ADDR_1 0b1110100 - -/* RGB Matrix Configuration */ -# define RGB_MATRIX_LED_COUNT 61 - -/* Set to infinite, which is use in USB mode by default */ -# define RGB_MATRIX_TIMEOUT RGB_MATRIX_TIMEOUT_INFINITE - -/* Allow shutdown of led driver to save power */ -# define RGB_MATRIX_DRIVER_SHUTDOWN_ENABLE - -/* Turn off backlight on low brightness to save power */ -# define RGB_MATRIX_BRIGHTNESS_TURN_OFF_VAL 48 - -/* Indication led index */ -# define DIM_CAPS_LOCK -# define CAPS_LOCK_INDEX 28 -# define LOW_BAT_IND_INDEX 56 - -/* RGB Matrix Animation modes. Explicitly enabled - * For full list of effects, see: - * https://docs.qmk.fm/#/feature_rgb_matrix?id=rgb-matrix-effects - */ - -# define RGB_MATRIX_KEYPRESSES -# define RGB_MATRIX_FRAMEBUFFER_EFFECTS - -/* Set LED driver current */ -# define SNLED27351_CURRENT_TUNE \ - { 0x28, 0x28, 0x28, 0x28, 0x28, 0x28, 0x28, 0x28, 0x28, 0x28, 0x28, 0x28 } -#endif diff --git a/keyboards/keychron/k9_pro/ansi/rgb/info.json b/keyboards/keychron/k9_pro/ansi/rgb/info.json deleted file mode 100644 index 1e7f805e99..0000000000 --- a/keyboards/keychron/k9_pro/ansi/rgb/info.json +++ /dev/null @@ -1,102 +0,0 @@ -{ - "usb": { - "pid": "0x0290", - "device_version": "1.0.0" - }, - "features": { - "rgb_matrix": true - }, - "rgb_matrix": { - "driver": "snled27351", - "animations": { - "breathing": true, - "band_spiral_val": true, - "cycle_all": true, - "cycle_left_right": true, - "cycle_up_down": true, - "rainbow_moving_chevron": true, - "cycle_out_in": true, - "cycle_out_in_dual": true, - "cycle_pinwheel": true, - "cycle_spiral": true, - "dual_beacon": true, - "rainbow_beacon": true, - "jellybean_raindrops": true, - "pixel_rain": true, - "typing_heatmap": true, - "digital_rain": true, - "solid_reactive_simple": true, - "solid_reactive_multiwide": true, - "solid_reactive_multinexus": true, - "splash": true, - "solid_splash": true - }, - "layout": [ - {"matrix":[0, 0], "flags":1, "x":0, "y":0}, - {"matrix":[0, 1], "flags":4, "x":16, "y":0}, - {"matrix":[0, 2], "flags":4, "x":32, "y":0}, - {"matrix":[0, 3], "flags":4, "x":48, "y":0}, - {"matrix":[0, 4], "flags":4, "x":65, "y":0}, - {"matrix":[0, 5], "flags":4, "x":81, "y":0}, - {"matrix":[0, 6], "flags":4, "x":97, "y":0}, - {"matrix":[0, 7], "flags":4, "x":113, "y":0}, - {"matrix":[0, 8], "flags":4, "x":129, "y":0}, - {"matrix":[0, 9], "flags":4, "x":145, "y":0}, - {"matrix":[0, 10], "flags":4, "x":161, "y":0}, - {"matrix":[0, 11], "flags":4, "x":178, "y":0}, - {"matrix":[0, 12], "flags":4, "x":194, "y":0}, - {"matrix":[0, 13], "flags":1, "x":218, "y":0}, - - {"matrix":[1, 0], "flags":1, "x":4, "y":16}, - {"matrix":[1, 1], "flags":8, "x":24, "y":16}, - {"matrix":[1, 2], "flags":8, "x":40, "y":16}, - {"matrix":[1, 3], "flags":8, "x":57, "y":16}, - {"matrix":[1, 4], "flags":4, "x":73, "y":16}, - {"matrix":[1, 5], "flags":4, "x":89, "y":16}, - {"matrix":[1, 6], "flags":4, "x":105, "y":16}, - {"matrix":[1, 7], "flags":4, "x":121, "y":16}, - {"matrix":[1, 8], "flags":4, "x":137, "y":16}, - {"matrix":[1, 9], "flags":4, "x":153, "y":16}, - {"matrix":[1, 10], "flags":4, "x":170, "y":16}, - {"matrix":[1, 11], "flags":4, "x":186, "y":16}, - {"matrix":[1, 12], "flags":4, "x":202, "y":16}, - {"matrix":[1, 13], "flags":1, "x":222, "y":16}, - - {"matrix":[2, 0], "flags":8, "x":6, "y":32}, - {"matrix":[2, 1], "flags":4, "x":28, "y":32}, - {"matrix":[2, 2], "flags":4, "x":44, "y":32}, - {"matrix":[2, 3], "flags":4, "x":61, "y":32}, - {"matrix":[2, 4], "flags":4, "x":77, "y":32}, - {"matrix":[2, 5], "flags":4, "x":93, "y":32}, - {"matrix":[2, 6], "flags":4, "x":109, "y":32}, - {"matrix":[2, 7], "flags":4, "x":125, "y":32}, - {"matrix":[2, 8], "flags":4, "x":141, "y":32}, - {"matrix":[2, 9], "flags":4, "x":157, "y":32}, - {"matrix":[2, 10], "flags":4, "x":174, "y":32}, - {"matrix":[2, 11], "flags":4, "x":190, "y":32}, - {"matrix":[2, 13], "flags":1, "x":216, "y":32}, - - {"matrix":[3, 0], "flags":1, "x":2, "y":48}, - {"matrix":[3, 2], "flags":4, "x":36, "y":48}, - {"matrix":[3, 3], "flags":4, "x":53, "y":48}, - {"matrix":[3, 4], "flags":4, "x":69, "y":48}, - {"matrix":[3, 5], "flags":4, "x":85, "y":48}, - {"matrix":[3, 6], "flags":4, "x":101, "y":48}, - {"matrix":[3, 7], "flags":4, "x":117, "y":48}, - {"matrix":[3, 8], "flags":4, "x":133, "y":48}, - {"matrix":[3, 9], "flags":4, "x":149, "y":48}, - {"matrix":[3, 10], "flags":4, "x":166, "y":48}, - {"matrix":[3, 11], "flags":4, "x":182, "y":48}, - {"matrix":[3, 13], "flags":1, "x":212, "y":48}, - - {"matrix":[4, 0], "flags":1, "x":2, "y":64}, - {"matrix":[4, 1], "flags":1, "x":22, "y":64}, - {"matrix":[4, 2], "flags":1, "x":42, "y":64}, - {"matrix":[4, 6], "flags":4, "x":103, "y":64}, - {"matrix":[4, 10], "flags":1, "x":163, "y":64}, - {"matrix":[4, 11], "flags":1, "x":184, "y":64}, - {"matrix":[4, 12], "flags":1, "x":204, "y":64}, - {"matrix":[4, 13], "flags":1, "x":224, "y":64} - ] - } -} diff --git a/keyboards/keychron/k9_pro/ansi/rgb/keymaps/default/keymap.c b/keyboards/keychron/k9_pro/ansi/rgb/keymaps/default/keymap.c deleted file mode 100644 index 6752be64b6..0000000000 --- a/keyboards/keychron/k9_pro/ansi/rgb/keymaps/default/keymap.c +++ /dev/null @@ -1,63 +0,0 @@ -/* 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 . - */ - -#include QMK_KEYBOARD_H - -enum layers{ - MAC_BASE, - WIN_BASE, - MAC_FN, - WIN_FN, - L_FN1, -}; - -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_61_ansi( - 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_LCTL, KC_LOPTN, KC_LCMMD, KC_SPC, KC_RCMMD,MO(MAC_FN),MO(L_FN1),KC_RCTL), - - [WIN_BASE] = LAYOUT_61_ansi( - 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_LCTL, KC_LWIN, KC_LALT, KC_SPC, KC_RALT, MO(WIN_FN),MO(L_FN1),KC_RCTL), - - [MAC_FN] = LAYOUT_61_ansi( - KC_GRV, KC_BRID, KC_BRIU, KC_MCTL, KC_LPAD, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, KC_INS, KC_PGUP, KC_HOME, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, KC_UP, KC_SNAP, KC_PGDN, KC_END, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, NK_TOGG, KC_LEFT, KC_DOWN, KC_RIGHT, KC_DEL, _______, - _______, _______, _______, _______, _______, _______, _______, _______), - - [WIN_FN] = LAYOUT_61_ansi( - KC_GRV, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, KC_APP, KC_SCRL, KC_INS, KC_PGUP, KC_HOME, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, KC_UP, KC_PSCR, KC_PGDN, KC_END, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, NK_TOGG, KC_LEFT, KC_DOWN, KC_RIGHT, KC_DEL, _______, - _______, _______, _______, _______, _______, _______, _______, _______), - - [L_FN1] = LAYOUT_61_ansi( - _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______), - }; diff --git a/keyboards/keychron/k9_pro/ansi/rgb/keymaps/via/keymap.c b/keyboards/keychron/k9_pro/ansi/rgb/keymaps/via/keymap.c deleted file mode 100644 index 2477927b1c..0000000000 --- a/keyboards/keychron/k9_pro/ansi/rgb/keymaps/via/keymap.c +++ /dev/null @@ -1,63 +0,0 @@ -/* 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 . - */ - -#include QMK_KEYBOARD_H - -enum layers { - MAC_BASE, - WIN_BASE, - MAC_FN, - WIN_FN, - L_FN1, -}; - -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_61_ansi( - 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_LCTL, KC_LOPTN, KC_LCMMD, KC_SPC, KC_RCMMD,MO(MAC_FN),MO(L_FN1),KC_RCTL), - - [WIN_BASE] = LAYOUT_61_ansi( - 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_LCTL, KC_LWIN, KC_LALT, KC_SPC, KC_RALT, MO(WIN_FN),MO(L_FN1),KC_RCTL), - - [MAC_FN] = LAYOUT_61_ansi( - KC_GRV, KC_BRID, KC_BRIU, KC_MCTL, KC_LPAD, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, KC_INS, KC_PGUP, KC_HOME, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, KC_UP, KC_SNAP, KC_PGDN, KC_END, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, NK_TOGG, KC_LEFT, KC_DOWN, KC_RIGHT, KC_DEL, _______, - _______, _______, _______, _______, _______, _______, _______, _______), - - [WIN_FN] = LAYOUT_61_ansi( - KC_GRV, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, KC_APP, KC_SCRL, KC_INS, KC_PGUP, KC_HOME, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, KC_UP, KC_PSCR, KC_PGDN, KC_END, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, NK_TOGG, KC_LEFT, KC_DOWN, KC_RIGHT, KC_DEL, _______, - _______, _______, _______, _______, _______, _______, _______, _______), - - [L_FN1] = LAYOUT_61_ansi( - _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______), -}; diff --git a/keyboards/keychron/k9_pro/ansi/rgb/keymaps/via/rules.mk b/keyboards/keychron/k9_pro/ansi/rgb/keymaps/via/rules.mk deleted file mode 100644 index 1e5b99807c..0000000000 --- a/keyboards/keychron/k9_pro/ansi/rgb/keymaps/via/rules.mk +++ /dev/null @@ -1 +0,0 @@ -VIA_ENABLE = yes diff --git a/keyboards/keychron/k9_pro/ansi/rgb/rgb.c b/keyboards/keychron/k9_pro/ansi/rgb/rgb.c deleted file mode 100644 index 66ccb36748..0000000000 --- a/keyboards/keychron/k9_pro/ansi/rgb/rgb.c +++ /dev/null @@ -1,94 +0,0 @@ -/* 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 . - */ - -#include "quantum.h" - -// clang-format off -#ifdef RGB_MATRIX_ENABLE -const snled27351_led_t g_snled27351_leds[RGB_MATRIX_LED_COUNT] = { -/* Refer to snled27351manual for these locations - * driver - * | R location - * | | G location - * | | | B location - * | | | | */ - {0, L_1, J_1, K_1}, - {0, L_2, J_2, K_2}, - {0, L_3, J_3, K_3}, - {0, L_4, J_4, K_4}, - {0, L_5, J_5, K_5}, - {0, L_6, J_6, K_6}, - {0, L_7, J_7, K_7}, - {0, L_8, J_8, K_8}, - {0, L_9, J_9, K_9}, - {0, L_10, J_10, K_10}, - {0, L_11, J_11, K_11}, - {0, L_12, J_12, K_12}, - {0, L_13, J_13, K_13}, - {0, L_14, J_14, K_14}, - - {0, I_1, G_1, H_1}, - {0, I_2, G_2, H_2}, - {0, I_3, G_3, H_3}, - {0, I_4, G_4, H_4}, - {0, I_5, G_5, H_5}, - {0, I_6, G_6, H_6}, - {0, I_7, G_7, H_7}, - {0, I_8, G_8, H_8}, - {0, I_9, G_9, H_9}, - {0, I_10, G_10, H_10}, - {0, I_11, G_11, H_11}, - {0, I_12, G_12, H_12}, - {0, I_13, G_13, H_13}, - {0, I_14, G_14, H_14}, - - {0, F_1, D_1, E_1}, - {0, F_2, D_2, E_2}, - {0, F_3, D_3, E_3}, - {0, F_4, D_4, E_4}, - {0, F_5, D_5, E_5}, - {0, F_6, D_6, E_6}, - {0, F_7, D_7, E_7}, - {0, F_8, D_8, E_8}, - {0, F_9, D_9, E_9}, - {0, F_10, D_10, E_10}, - {0, F_11, D_11, E_11}, - {0, F_12, D_12, E_12}, - {0, F_14, D_14, E_14}, - - {0, C_1, A_1, B_1}, - {0, C_3, A_3, B_3}, - {0, C_4, A_4, B_4}, - {0, C_5, A_5, B_5}, - {0, C_6, A_6, B_6}, - {0, C_7, A_7, B_7}, - {0, C_8, A_8, B_8}, - {0, C_9, A_9, B_9}, - {0, C_10, A_10, B_10}, - {0, C_11, A_11, B_11}, - {0, C_12, A_12, B_12}, - {0, C_14, A_14, B_14}, - - {0, C_15, A_15, B_15}, - {0, C_16, A_16, B_16}, - {0, F_15, D_15, E_15}, - {0, F_16, D_16, E_16}, - {0, I_15, G_15, H_15}, - {0, I_16, G_16, H_16}, - {0, L_15, J_15, K_15}, - {0, L_16, J_16, K_16}, -}; -#endif diff --git a/keyboards/keychron/k9_pro/ansi/rgb/rules.mk b/keyboards/keychron/k9_pro/ansi/rgb/rules.mk deleted file mode 100644 index f886ea2e8e..0000000000 --- a/keyboards/keychron/k9_pro/ansi/rgb/rules.mk +++ /dev/null @@ -1 +0,0 @@ -# This file intentionally blank \ No newline at end of file diff --git a/keyboards/keychron/k9_pro/ansi/white/config.h b/keyboards/keychron/k9_pro/ansi/white/config.h deleted file mode 100644 index 7c89023d1c..0000000000 --- a/keyboards/keychron/k9_pro/ansi/white/config.h +++ /dev/null @@ -1,51 +0,0 @@ -/* 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 . - */ - -#pragma once - -#ifdef LED_MATRIX_ENABLE -/* LED Matrix Driver Configuration */ -# define DRIVER_COUNT 1 -# define SNLED27351_I2C_ADDRESS_1 SNLED27351_I2C_ADDRESS_GND - -/* LED Matrix Configuration */ -# define LED_MATRIX_LED_COUNT 61 - -/* Set to infinit, which is use in USB mode by default */ -# define LED_MATRIX_TIMEOUT LED_MATRIX_TIMEOUT_INFINITE - -/* Allow to shutdown driver to save power */ -# define LED_MATRIX_DRIVER_SHUTDOWN_ENABLE - -/* Turn off backllit if brightness value is low */ -# define LED_MATRIX_BRIGHTNESS_TURN_OFF_VAL 48 - -/* Indication led index */ -# define DIM_CAPS_LOCK -# define CAPS_LOCK_INDEX 28 -# define LOW_BAT_IND_INDEX 56 - -// LED Matrix Animation modes. Explicitly enabled -// For full list of effects, see: -// https://docs.qmk.fm/#/feature_led_matrix?id=led-matrix-effects -// #if defined(LED_MATRIX_KEYPRESSES) || defined(LED_MATRIX_KEYRELEASES) -# define LED_MATRIX_KEYPRESSES -# define LED_MATRIX_KEYRELEASES - -/* Set LED driver current */ -# define SNLED27351_CURRENT_TUNE \ - { 0x28, 0x28, 0x28, 0x28, 0x28, 0x28, 0x28, 0x28, 0x28, 0x28, 0x28, 0x28 } -#endif diff --git a/keyboards/keychron/k9_pro/ansi/white/info.json b/keyboards/keychron/k9_pro/ansi/white/info.json deleted file mode 100644 index e6ea53164e..0000000000 --- a/keyboards/keychron/k9_pro/ansi/white/info.json +++ /dev/null @@ -1,97 +0,0 @@ -{ - "usb": { - "pid": "0x0293", - "device_version": "1.0.0" - }, - "features": { - "led_matrix": true - }, - "led_matrix": { - "driver": "snled27351", - "animations": { - "none": true, - "solid": true, - "breathing": true, - "band_pinwheel": true, - "band_spiral": true, - "cycle_left_right": true, - "cycle_up_down": true, - "cycle_out_in": true, - "dual_beacon": true, - "solid_reactive_simple": true, - "solid_reactive_multiwide": true, - "solid_reactive_multinexus": true, - "solid_splash": true, - "wave_left_right": true, - "wave_up_down": true, - "effect_max": true - }, - "layout": [ - {"matrix":[0, 0], "flags":1, "x":0, "y":0}, - {"matrix":[0, 1], "flags":4, "x":16, "y":0}, - {"matrix":[0, 2], "flags":4, "x":32, "y":0}, - {"matrix":[0, 3], "flags":4, "x":48, "y":0}, - {"matrix":[0, 4], "flags":4, "x":65, "y":0}, - {"matrix":[0, 5], "flags":4, "x":81, "y":0}, - {"matrix":[0, 6], "flags":4, "x":97, "y":0}, - {"matrix":[0, 7], "flags":4, "x":113, "y":0}, - {"matrix":[0, 8], "flags":4, "x":129, "y":0}, - {"matrix":[0, 9], "flags":4, "x":145, "y":0}, - {"matrix":[0, 10], "flags":4, "x":161, "y":0}, - {"matrix":[0, 11], "flags":4, "x":178, "y":0}, - {"matrix":[0, 12], "flags":4, "x":194, "y":0}, - {"matrix":[0, 13], "flags":1, "x":218, "y":0}, - - {"matrix":[1, 0], "flags":1, "x":4, "y":16}, - {"matrix":[1, 1], "flags":8, "x":24, "y":16}, - {"matrix":[1, 2], "flags":8, "x":40, "y":16}, - {"matrix":[1, 3], "flags":8, "x":57, "y":16}, - {"matrix":[1, 4], "flags":4, "x":73, "y":16}, - {"matrix":[1, 5], "flags":4, "x":89, "y":16}, - {"matrix":[1, 6], "flags":4, "x":105, "y":16}, - {"matrix":[1, 7], "flags":4, "x":121, "y":16}, - {"matrix":[1, 8], "flags":4, "x":137, "y":16}, - {"matrix":[1, 9], "flags":4, "x":153, "y":16}, - {"matrix":[1, 10], "flags":4, "x":170, "y":16}, - {"matrix":[1, 11], "flags":4, "x":186, "y":16}, - {"matrix":[1, 12], "flags":4, "x":202, "y":16}, - {"matrix":[1, 13], "flags":1, "x":222, "y":16}, - - {"matrix":[2, 0], "flags":8, "x":6, "y":32}, - {"matrix":[2, 1], "flags":4, "x":28, "y":32}, - {"matrix":[2, 2], "flags":4, "x":44, "y":32}, - {"matrix":[2, 3], "flags":4, "x":61, "y":32}, - {"matrix":[2, 4], "flags":4, "x":77, "y":32}, - {"matrix":[2, 5], "flags":4, "x":93, "y":32}, - {"matrix":[2, 6], "flags":4, "x":109, "y":32}, - {"matrix":[2, 7], "flags":4, "x":125, "y":32}, - {"matrix":[2, 8], "flags":4, "x":141, "y":32}, - {"matrix":[2, 9], "flags":4, "x":157, "y":32}, - {"matrix":[2, 10], "flags":4, "x":174, "y":32}, - {"matrix":[2, 11], "flags":4, "x":190, "y":32}, - {"matrix":[2, 13], "flags":1, "x":216, "y":32}, - - {"matrix":[3, 0], "flags":1, "x":2, "y":48}, - {"matrix":[3, 2], "flags":4, "x":36, "y":48}, - {"matrix":[3, 3], "flags":4, "x":53, "y":48}, - {"matrix":[3, 4], "flags":4, "x":69, "y":48}, - {"matrix":[3, 5], "flags":4, "x":85, "y":48}, - {"matrix":[3, 6], "flags":4, "x":101, "y":48}, - {"matrix":[3, 7], "flags":4, "x":117, "y":48}, - {"matrix":[3, 8], "flags":4, "x":133, "y":48}, - {"matrix":[3, 9], "flags":4, "x":149, "y":48}, - {"matrix":[3, 10], "flags":4, "x":166, "y":48}, - {"matrix":[3, 11], "flags":4, "x":182, "y":48}, - {"matrix":[3, 13], "flags":1, "x":212, "y":48}, - - {"matrix":[4, 0], "flags":1, "x":2, "y":64}, - {"matrix":[4, 1], "flags":1, "x":22, "y":64}, - {"matrix":[4, 2], "flags":1, "x":42, "y":64}, - {"matrix":[4, 6], "flags":4, "x":103, "y":64}, - {"matrix":[4, 10], "flags":1, "x":163, "y":64}, - {"matrix":[4, 11], "flags":1, "x":184, "y":64}, - {"matrix":[4, 12], "flags":1, "x":204, "y":64}, - {"matrix":[4, 13], "flags":1, "x":224, "y":64} - ] - } -} diff --git a/keyboards/keychron/k9_pro/ansi/white/keymaps/default/keymap.c b/keyboards/keychron/k9_pro/ansi/white/keymaps/default/keymap.c deleted file mode 100644 index 7cea4e8016..0000000000 --- a/keyboards/keychron/k9_pro/ansi/white/keymaps/default/keymap.c +++ /dev/null @@ -1,63 +0,0 @@ -/* 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 . - */ - -#include QMK_KEYBOARD_H - -enum layers{ - MAC_BASE, - WIN_BASE, - MAC_FN, - WIN_FN, - L_FN1, -}; - -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_61_ansi( - 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_LCTL, KC_LOPTN, KC_LCMMD, KC_SPC, KC_RCMMD,MO(MAC_FN),MO(L_FN1),KC_RCTL), - - [WIN_BASE] = LAYOUT_61_ansi( - 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_LCTL, KC_LWIN, KC_LALT, KC_SPC, KC_RALT, MO(WIN_FN),MO(L_FN1),KC_RCTL), - - [MAC_FN] = LAYOUT_61_ansi( - KC_GRV, KC_BRID, KC_BRIU, KC_MCTL, KC_LPAD, BL_DOWN, BL_UP, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, KC_INS, KC_PGUP, KC_HOME, _______, - BL_TOGG, BL_STEP, BL_UP, _______, _______, _______, _______, _______, KC_UP, KC_SNAP, KC_PGDN, KC_END, _______, - _______, _______, BL_DOWN, _______, _______, _______, NK_TOGG, KC_LEFT, KC_DOWN, KC_RIGHT, KC_DEL, _______, - _______, _______, _______, _______, _______, _______, _______, _______), - - [WIN_FN] = LAYOUT_61_ansi( - KC_GRV, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, BL_DOWN, BL_UP, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, KC_APP, KC_SCRL, KC_INS, KC_PGUP, KC_HOME, _______, - BL_TOGG, BL_STEP, BL_UP, _______, _______, _______, _______, _______, KC_UP, KC_PSCR, KC_PGDN, KC_END, _______, - _______, _______, BL_DOWN, _______, _______, _______, NK_TOGG, KC_LEFT, KC_DOWN, KC_RIGHT, KC_DEL, _______, - _______, _______, _______, _______, _______, _______, _______, _______), - - [L_FN1] = LAYOUT_61_ansi( - _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______), -}; diff --git a/keyboards/keychron/k9_pro/ansi/white/keymaps/via/keymap.c b/keyboards/keychron/k9_pro/ansi/white/keymaps/via/keymap.c deleted file mode 100644 index 2fd3a2b4ba..0000000000 --- a/keyboards/keychron/k9_pro/ansi/white/keymaps/via/keymap.c +++ /dev/null @@ -1,57 +0,0 @@ -/* 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 . - */ - -#include QMK_KEYBOARD_H - -enum layers { MAC_BASE, WIN_BASE, MAC_FN, WIN_FN, L_FN1 }; - -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_61_ansi( - 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_LCTL, KC_LOPTN, KC_LCMMD, KC_SPC, KC_RCMMD,MO(MAC_FN),MO(L_FN1),KC_RCTL), - - [WIN_BASE] = LAYOUT_61_ansi( - 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_LCTL, KC_LWIN, KC_LALT, KC_SPC, KC_RALT, MO(WIN_FN),MO(L_FN1),KC_RCTL), - - [MAC_FN] = LAYOUT_61_ansi( - KC_GRV, KC_BRID, KC_BRIU, KC_MCTL, KC_LPAD, BL_DOWN, BL_UP, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, KC_INS, KC_PGUP, KC_HOME, _______, - BL_TOGG, BL_STEP, BL_UP, _______, _______, _______, _______, _______, KC_UP, KC_SNAP, KC_PGDN, KC_END, _______, - _______, _______, BL_DOWN, _______, _______, _______, NK_TOGG, KC_LEFT, KC_DOWN, KC_RIGHT, KC_DEL, _______, - _______, _______, _______, _______, _______, _______, _______, _______), - - [WIN_FN] = LAYOUT_61_ansi( - KC_GRV, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, BL_DOWN, BL_UP, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, KC_APP, KC_SCRL, KC_INS, KC_PGUP, KC_HOME, _______, - BL_TOGG, BL_STEP, BL_UP, _______, _______, _______, _______, _______, KC_UP, KC_PSCR, KC_PGDN, KC_END, _______, - _______, _______, BL_DOWN, _______, _______, _______, NK_TOGG, KC_LEFT, KC_DOWN, KC_RIGHT, KC_DEL, _______, - _______, _______, _______, _______, _______, _______, _______, _______), - - [L_FN1] = LAYOUT_61_ansi( - _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______), -}; diff --git a/keyboards/keychron/k9_pro/ansi/white/keymaps/via/rules.mk b/keyboards/keychron/k9_pro/ansi/white/keymaps/via/rules.mk deleted file mode 100644 index 1e5b99807c..0000000000 --- a/keyboards/keychron/k9_pro/ansi/white/keymaps/via/rules.mk +++ /dev/null @@ -1 +0,0 @@ -VIA_ENABLE = yes diff --git a/keyboards/keychron/k9_pro/ansi/white/rules.mk b/keyboards/keychron/k9_pro/ansi/white/rules.mk deleted file mode 100644 index c628fc7d0f..0000000000 --- a/keyboards/keychron/k9_pro/ansi/white/rules.mk +++ /dev/null @@ -1 +0,0 @@ -# This file intentionally blank diff --git a/keyboards/keychron/k9_pro/ansi/white/white.c b/keyboards/keychron/k9_pro/ansi/white/white.c deleted file mode 100644 index 27a8625295..0000000000 --- a/keyboards/keychron/k9_pro/ansi/white/white.c +++ /dev/null @@ -1,92 +0,0 @@ -/* 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 .g - */ - -#include "quantum.h" - -// clang-format off -#ifdef LED_MATRIX_ENABLE -const snled27351_led_t g_snled27351_leds[LED_MATRIX_LED_COUNT] = { -/* Refer to snled27351manual for these locations - * driver - * | LED address - * | | */ - {0, J_1}, - {0, J_2}, - {0, J_3}, - {0, J_4}, - {0, J_5}, - {0, J_6}, - {0, J_7}, - {0, J_8}, - {0, J_9}, - {0, J_10}, - {0, J_11}, - {0, J_12}, - {0, J_13}, - {0, J_14}, - - {0, G_1}, - {0, G_2}, - {0, G_3}, - {0, G_4}, - {0, G_5}, - {0, G_6}, - {0, G_7}, - {0, G_8}, - {0, G_9}, - {0, G_10}, - {0, G_11}, - {0, G_12}, - {0, G_13}, - {0, G_14}, - - {0, D_1}, - {0, D_2}, - {0, D_3}, - {0, D_4}, - {0, D_5}, - {0, D_6}, - {0, D_7}, - {0, D_8}, - {0, D_9}, - {0, D_10}, - {0, D_11}, - {0, D_12}, - {0, D_14}, - - {0, A_1}, - {0, A_3}, - {0, A_4}, - {0, A_5}, - {0, A_6}, - {0, A_7}, - {0, A_8}, - {0, A_9}, - {0, A_10}, - {0, A_11}, - {0, A_12}, - {0, A_14}, - - {0, A_15}, - {0, A_16}, - {0, D_15}, - {0, D_16}, - {0, G_15}, - {0, G_16}, - {0, J_15}, - {0, J_16}, -}; -#endif diff --git a/keyboards/keychron/k9_pro/config.h b/keyboards/keychron/k9_pro/config.h deleted file mode 100644 index 6b852a8bcd..0000000000 --- a/keyboards/keychron/k9_pro/config.h +++ /dev/null @@ -1,91 +0,0 @@ -/* 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 . - */ - -#pragma once - -/* Turn off effects when suspended */ -#define RGB_DISABLE_WHEN_USB_SUSPENDED -#define LED_DISABLE_WHEN_USB_SUSPENDED - -/* DIP switch for Mac/win OS switch */ -#define DIP_SWITCH_PINS \ - { A8 } -#define INVERT_OS_SWITCH_STATE - -/* Caps lock LED Pin */ -#define LED_CAPS_LOCK_PIN A0 -#define LED_PIN_ON_STATE 1 - -/* 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 A10 - -# 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 A4 -# 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 \ - { 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 WEAR_LEVELING_LOGICAL_SIZE 2048 -#define WEAR_LEVELING_BACKING_SIZE (WEAR_LEVELING_LOGICAL_SIZE * 2) -#define DYNAMIC_KEYMAP_EEPROM_MAX_ADDR 2047 - -/* Factory test keys */ -#define FN_KEY1 MO(4) diff --git a/keyboards/keychron/k9_pro/halconf.h b/keyboards/keychron/k9_pro/halconf.h deleted file mode 100644 index 0a2d7c550f..0000000000 --- a/keyboards/keychron/k9_pro/halconf.h +++ /dev/null @@ -1,29 +0,0 @@ -/* 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_I2C TRUE - -#define _CHIBIOS_HAL_CONF_VER_8_0_ - -#ifdef KC_BLUETOOTH_ENABLE -# define PAL_USE_CALLBACKS TRUE -# define HAL_USE_SERIAL TRUE -# define HAL_USE_RTC TRUE -#endif - -#include_next diff --git a/keyboards/keychron/k9_pro/info.json b/keyboards/keychron/k9_pro/info.json deleted file mode 100644 index f8676d524e..0000000000 --- a/keyboards/keychron/k9_pro/info.json +++ /dev/null @@ -1,23 +0,0 @@ -{ - "keyboard_name": "Keychron K9 Pro", - "manufacturer": "Keychron", - "url": "https://github.com/Keychron", - "maintainer": "lalalademaxiya1", - "processor": "STM32L432", - "bootloader": "stm32-dfu", - "usb": { - "vid": "0x3434" - }, - "features": { - "bootmagic": true, - "mousekey": true, - "extrakey": true, - "nkro": true, - "dip_switch": true, - "raw": true - }, - "diode_direction": "ROW2COL", - "dynamic_keymap": { - "layer_count": 5 - } -} diff --git a/keyboards/keychron/k9_pro/iso/info.json b/keyboards/keychron/k9_pro/iso/info.json deleted file mode 100644 index 1949df9b51..0000000000 --- a/keyboards/keychron/k9_pro/iso/info.json +++ /dev/null @@ -1,84 +0,0 @@ -{ - "matrix_size": { - "rows": 5, - "cols": 14 - }, - "matrix_pins": { - "rows": ["B4", "B3", "A15", "A14", "A13"], - "cols": [null, null, null, null, null, null, null, null, null, null, null, null, null, null], - "custom": true, - "custom_lite": true - }, - "layouts": { - "LAYOUT_62_iso": { - "layout": [ - {"matrix":[0,0], "x":0, "y":0}, - {"matrix":[0,1], "x":1, "y":0}, - {"matrix":[0,2], "x":2, "y":0}, - {"matrix":[0,3], "x":3, "y":0}, - {"matrix":[0,4], "x":4, "y":0}, - {"matrix":[0,5], "x":5, "y":0}, - {"matrix":[0,6], "x":6, "y":0}, - {"matrix":[0,7], "x":7, "y":0}, - {"matrix":[0,8], "x":8, "y":0}, - {"matrix":[0,9], "x":9, "y":0}, - {"matrix":[0,10], "x":10, "y":0}, - {"matrix":[0,11], "x":11, "y":0}, - {"matrix":[0,12], "x":12, "y":0}, - {"matrix":[0,13], "x":13, "y":0, "w":2}, - - {"matrix":[1,0], "x":0, "y":1, "w":1.5}, - {"matrix":[1,1], "x":1.5, "y":1}, - {"matrix":[1,2], "x":2.5, "y":1}, - {"matrix":[1,3], "x":3.5, "y":1}, - {"matrix":[1,4], "x":4.5, "y":1}, - {"matrix":[1,5], "x":5.5, "y":1}, - {"matrix":[1,6], "x":6.5, "y":1}, - {"matrix":[1,7], "x":7.5, "y":1}, - {"matrix":[1,8], "x":8.5, "y":1}, - {"matrix":[1,9], "x":9.5, "y":1}, - {"matrix":[1,10], "x":10.5, "y":1}, - {"matrix":[1,11], "x":11.5, "y":1}, - {"matrix":[1,12], "x":12.5, "y":1}, - - {"matrix":[2,0], "x":0, "y":2, "w":1.75}, - {"matrix":[2,1], "x":1.75, "y":2}, - {"matrix":[2,2], "x":2.75, "y":2}, - {"matrix":[2,3], "x":3.75, "y":2}, - {"matrix":[2,4], "x":4.75, "y":2}, - {"matrix":[2,5], "x":5.75, "y":2}, - {"matrix":[2,6], "x":6.75, "y":2}, - {"matrix":[2,7], "x":7.75, "y":2}, - {"matrix":[2,8], "x":8.75, "y":2}, - {"matrix":[2,9], "x":9.75, "y":2}, - {"matrix":[2,10], "x":10.75, "y":2}, - {"matrix":[2,11], "x":11.75, "y":2}, - {"matrix":[2,13], "x":12.75, "y":2}, - {"matrix":[1,13], "x":13.75, "y":1, "w":1.25, "h":2}, - - {"matrix":[3,0], "x":0, "y":3, "w":1.25}, - {"matrix":[3,1], "x":1.25, "y":3}, - {"matrix":[3,2], "x":2.25, "y":3}, - {"matrix":[3,3], "x":3.25, "y":3}, - {"matrix":[3,4], "x":4.25, "y":3}, - {"matrix":[3,5], "x":5.25, "y":3}, - {"matrix":[3,6], "x":6.25, "y":3}, - {"matrix":[3,7], "x":7.25, "y":3}, - {"matrix":[3,8], "x":8.25, "y":3}, - {"matrix":[3,9], "x":9.25, "y":3}, - {"matrix":[3,10], "x":10.25, "y":3}, - {"matrix":[3,11], "x":11.25, "y":3}, - {"matrix":[3,13], "x":12.25, "y":3, "w":2.75}, - - {"matrix":[4,0], "x":0, "y":4, "w":1.25}, - {"matrix":[4,1], "x":1.25, "y":4, "w":1.25}, - {"matrix":[4,2], "x":2.5, "y":4, "w":1.25}, - {"matrix":[4,6], "x":3.75, "y":4, "w":6.25}, - {"matrix":[4,10], "x":10, "y":4, "w":1.25}, - {"matrix":[4,11], "x":11.25, "y":4, "w":1.25}, - {"matrix":[4,12], "x":12.5, "y":4, "w":1.25}, - {"matrix":[4,13], "x":13.75, "y":4, "w":1.25} - ] - } - } -} diff --git a/keyboards/keychron/k9_pro/iso/rgb/config.h b/keyboards/keychron/k9_pro/iso/rgb/config.h deleted file mode 100644 index a06d5e2110..0000000000 --- a/keyboards/keychron/k9_pro/iso/rgb/config.h +++ /dev/null @@ -1,51 +0,0 @@ -/* 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 . - */ - -#pragma once - -#ifdef RGB_MATRIX_ENABLE -/* RGB Matrix driver configuration */ -# define DRIVER_COUNT 1 -# define DRIVER_ADDR_1 0b1110100 - -/* RGB Matrix configuration */ -# define RGB_MATRIX_LED_COUNT 62 - -/* Set to infinite, which is use in USB mode by default */ -# define RGB_MATRIX_TIMEOUT RGB_MATRIX_TIMEOUT_INFINITE - -/* Allow shutdown of led driver to save power */ -# define RGB_MATRIX_DRIVER_SHUTDOWN_ENABLE - -/* Turn off backlight on low brightness to save power */ -# define RGB_MATRIX_BRIGHTNESS_TURN_OFF_VAL 48 - -/* Indication led index */ -# define DIM_CAPS_LOCK -# define CAPS_LOCK_INDEX 27 -# define LOW_BAT_IND_INDEX 57 - -/* RGB Matrix Animation modes. Explicitly enabled - * For full list of effects, see: - * https://docs.qmk.fm/#/feature_rgb_matrix?id=rgb-matrix-effects - */ -# define RGB_MATRIX_KEYPRESSES -# define RGB_MATRIX_FRAMEBUFFER_EFFECTS - -/* Set LED driver current */ -# define SNLED27351_CURRENT_TUNE \ - { 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18 } -#endif diff --git a/keyboards/keychron/k9_pro/iso/rgb/info.json b/keyboards/keychron/k9_pro/iso/rgb/info.json deleted file mode 100644 index b7f83e5bd9..0000000000 --- a/keyboards/keychron/k9_pro/iso/rgb/info.json +++ /dev/null @@ -1,103 +0,0 @@ -{ - "usb": { - "pid": "0x0291", - "device_version": "1.0.0" - }, - "features": { - "rgb_matrix": true - }, - "rgb_matrix": { - "driver": "snled27351", - "animations": { - "breathing": true, - "band_spiral_val": true, - "cycle_all": true, - "cycle_left_right": true, - "cycle_up_down": true, - "rainbow_moving_chevron": true, - "cycle_out_in": true, - "cycle_out_in_dual": true, - "cycle_pinwheel": true, - "cycle_spiral": true, - "dual_beacon": true, - "rainbow_beacon": true, - "jellybean_raindrops": true, - "pixel_rain": true, - "typing_heatmap": true, - "digital_rain": true, - "solid_reactive_simple": true, - "solid_reactive_multiwide": true, - "solid_reactive_multinexus": true, - "splash": true, - "solid_splash": true - }, - "layout": [ - {"matrix":[0, 0], "flags":1, "x":0, "y":0}, - {"matrix":[0, 1], "flags":4, "x":16, "y":0}, - {"matrix":[0, 2], "flags":4, "x":32, "y":0}, - {"matrix":[0, 3], "flags":4, "x":48, "y":0}, - {"matrix":[0, 4], "flags":4, "x":65, "y":0}, - {"matrix":[0, 5], "flags":4, "x":81, "y":0}, - {"matrix":[0, 6], "flags":4, "x":97, "y":0}, - {"matrix":[0, 7], "flags":4, "x":113, "y":0}, - {"matrix":[0, 8], "flags":4, "x":129, "y":0}, - {"matrix":[0, 9], "flags":4, "x":145, "y":0}, - {"matrix":[0, 10], "flags":4, "x":161, "y":0}, - {"matrix":[0, 11], "flags":4, "x":178, "y":0}, - {"matrix":[0, 12], "flags":4, "x":194, "y":0}, - {"matrix":[0, 13], "flags":1, "x":218, "y":0}, - - {"matrix":[1, 0], "flags":1, "x":4, "y":16}, - {"matrix":[1, 1], "flags":8, "x":24, "y":16}, - {"matrix":[1, 2], "flags":8, "x":40, "y":16}, - {"matrix":[1, 3], "flags":8, "x":57, "y":16}, - {"matrix":[1, 4], "flags":4, "x":73, "y":16}, - {"matrix":[1, 5], "flags":4, "x":89, "y":16}, - {"matrix":[1, 6], "flags":4, "x":105, "y":16}, - {"matrix":[1, 7], "flags":4, "x":121, "y":16}, - {"matrix":[1, 8], "flags":4, "x":137, "y":16}, - {"matrix":[1, 9], "flags":4, "x":153, "y":16}, - {"matrix":[1, 10], "flags":4, "x":170, "y":16}, - {"matrix":[1, 11], "flags":4, "x":186, "y":16}, - {"matrix":[1, 12], "flags":4, "x":202, "y":16}, - - {"matrix":[2, 0], "flags":8, "x":6, "y":32}, - {"matrix":[2, 1], "flags":4, "x":28, "y":32}, - {"matrix":[2, 2], "flags":4, "x":44, "y":32}, - {"matrix":[2, 3], "flags":4, "x":61, "y":32}, - {"matrix":[2, 4], "flags":4, "x":77, "y":32}, - {"matrix":[2, 5], "flags":4, "x":93, "y":32}, - {"matrix":[2, 6], "flags":4, "x":109, "y":32}, - {"matrix":[2, 7], "flags":4, "x":125, "y":32}, - {"matrix":[2, 8], "flags":4, "x":141, "y":32}, - {"matrix":[2, 9], "flags":4, "x":157, "y":32}, - {"matrix":[2, 10], "flags":4, "x":174, "y":32}, - {"matrix":[2, 11], "flags":4, "x":190, "y":32}, - {"matrix":[2, 13], "flags":1, "x":206, "y":32}, - {"matrix":[1, 13], "flags":1, "x":222, "y":24}, - - {"matrix":[3, 0], "flags":1, "x":2, "y":48}, - {"matrix":[3, 1], "flags":1, "x":20, "y":48}, - {"matrix":[3, 2], "flags":4, "x":36, "y":48}, - {"matrix":[3, 3], "flags":4, "x":53, "y":48}, - {"matrix":[3, 4], "flags":4, "x":69, "y":48}, - {"matrix":[3, 5], "flags":4, "x":85, "y":48}, - {"matrix":[3, 6], "flags":4, "x":101, "y":48}, - {"matrix":[3, 7], "flags":4, "x":117, "y":48}, - {"matrix":[3, 8], "flags":4, "x":133, "y":48}, - {"matrix":[3, 9], "flags":4, "x":149, "y":48}, - {"matrix":[3, 10], "flags":4, "x":166, "y":48}, - {"matrix":[3, 11], "flags":4, "x":182, "y":48}, - {"matrix":[3, 13], "flags":1, "x":212, "y":48}, - - {"matrix":[4, 0], "flags":1, "x":2, "y":64}, - {"matrix":[4, 1], "flags":1, "x":22, "y":64}, - {"matrix":[4, 2], "flags":1, "x":42, "y":64}, - {"matrix":[4, 6], "flags":4, "x":103, "y":64}, - {"matrix":[4, 10], "flags":1, "x":163, "y":64}, - {"matrix":[4, 11], "flags":1, "x":184, "y":64}, - {"matrix":[4, 12], "flags":1, "x":204, "y":64}, - {"matrix":[4, 13], "flags":1, "x":224, "y":64} - ] - } -} diff --git a/keyboards/keychron/k9_pro/iso/rgb/keymaps/default/keymap.c b/keyboards/keychron/k9_pro/iso/rgb/keymaps/default/keymap.c deleted file mode 100644 index 1fbbd08709..0000000000 --- a/keyboards/keychron/k9_pro/iso/rgb/keymaps/default/keymap.c +++ /dev/null @@ -1,63 +0,0 @@ -/* 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 . - */ - -#include QMK_KEYBOARD_H - -enum layers{ - MAC_BASE, - WIN_BASE, - MAC_FN, - WIN_FN, - FN1, -}; - -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_62_iso( - 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_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_NUHS, KC_ENT, - KC_LSFT, KC_NUBS, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, - KC_LCTL, KC_LOPTN, KC_LCMMD, KC_SPC, KC_RCMMD, MO(MAC_FN),MO(FN1), KC_RCTL), - - [WIN_BASE] = LAYOUT_62_iso( - 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_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_NUHS, KC_ENT, - KC_LSFT, KC_NUBS, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, - KC_LCTL, KC_LWIN, KC_LALT, KC_SPC, KC_RALT, MO(WIN_FN),MO(FN1), KC_RCTL), - - [MAC_FN] = LAYOUT_62_iso( - KC_GRV, KC_BRID, KC_BRIU, KC_MCTL, KC_LPAD, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, KC_INS, KC_PGUP, KC_HOME, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, KC_UP, KC_SNAP, KC_PGDN, KC_END, _______, _______, - _______, _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, NK_TOGG, KC_LEFT, KC_DOWN, KC_RIGHT, KC_DEL, _______, - _______, _______, _______, _______, _______, _______, _______, _______), - - [WIN_FN] = LAYOUT_62_iso( - KC_GRV, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, KC_APP, KC_SCRL, KC_INS, KC_PGUP, KC_HOME, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, KC_UP, KC_PSCR, KC_PGDN, KC_END, _______, _______, - _______, _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, NK_TOGG, KC_LEFT, KC_DOWN, KC_RIGHT, KC_DEL, _______, - _______, _______, _______, _______, _______, _______, _______, _______), - - [FN1] = LAYOUT_62_iso( - _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, BAT_LVL, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______), -}; diff --git a/keyboards/keychron/k9_pro/iso/rgb/keymaps/via/keymap.c b/keyboards/keychron/k9_pro/iso/rgb/keymaps/via/keymap.c deleted file mode 100644 index 1fbbd08709..0000000000 --- a/keyboards/keychron/k9_pro/iso/rgb/keymaps/via/keymap.c +++ /dev/null @@ -1,63 +0,0 @@ -/* 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 . - */ - -#include QMK_KEYBOARD_H - -enum layers{ - MAC_BASE, - WIN_BASE, - MAC_FN, - WIN_FN, - FN1, -}; - -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_62_iso( - 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_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_NUHS, KC_ENT, - KC_LSFT, KC_NUBS, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, - KC_LCTL, KC_LOPTN, KC_LCMMD, KC_SPC, KC_RCMMD, MO(MAC_FN),MO(FN1), KC_RCTL), - - [WIN_BASE] = LAYOUT_62_iso( - 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_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_NUHS, KC_ENT, - KC_LSFT, KC_NUBS, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, - KC_LCTL, KC_LWIN, KC_LALT, KC_SPC, KC_RALT, MO(WIN_FN),MO(FN1), KC_RCTL), - - [MAC_FN] = LAYOUT_62_iso( - KC_GRV, KC_BRID, KC_BRIU, KC_MCTL, KC_LPAD, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, KC_INS, KC_PGUP, KC_HOME, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, KC_UP, KC_SNAP, KC_PGDN, KC_END, _______, _______, - _______, _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, NK_TOGG, KC_LEFT, KC_DOWN, KC_RIGHT, KC_DEL, _______, - _______, _______, _______, _______, _______, _______, _______, _______), - - [WIN_FN] = LAYOUT_62_iso( - KC_GRV, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, KC_APP, KC_SCRL, KC_INS, KC_PGUP, KC_HOME, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, KC_UP, KC_PSCR, KC_PGDN, KC_END, _______, _______, - _______, _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, NK_TOGG, KC_LEFT, KC_DOWN, KC_RIGHT, KC_DEL, _______, - _______, _______, _______, _______, _______, _______, _______, _______), - - [FN1] = LAYOUT_62_iso( - _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, BAT_LVL, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______), -}; diff --git a/keyboards/keychron/k9_pro/iso/rgb/keymaps/via/rules.mk b/keyboards/keychron/k9_pro/iso/rgb/keymaps/via/rules.mk deleted file mode 100644 index 1e5b99807c..0000000000 --- a/keyboards/keychron/k9_pro/iso/rgb/keymaps/via/rules.mk +++ /dev/null @@ -1 +0,0 @@ -VIA_ENABLE = yes diff --git a/keyboards/keychron/k9_pro/iso/rgb/rgb.c b/keyboards/keychron/k9_pro/iso/rgb/rgb.c deleted file mode 100644 index f27c8eef10..0000000000 --- a/keyboards/keychron/k9_pro/iso/rgb/rgb.c +++ /dev/null @@ -1,95 +0,0 @@ -/* 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 . - */ - -#include "quantum.h" - -// clang-format off -#ifdef RGB_MATRIX_ENABLE -const snled27351_led_t g_snled27351_leds[RGB_MATRIX_LED_COUNT] = { -/* Refer to snled27351manual for these locations - * driver - * | R location - * | | G location - * | | | B location - * | | | | */ - {0, L_1, J_1, K_1}, - {0, L_2, J_2, K_2}, - {0, L_3, J_3, K_3}, - {0, L_4, J_4, K_4}, - {0, L_5, J_5, K_5}, - {0, L_6, J_6, K_6}, - {0, L_7, J_7, K_7}, - {0, L_8, J_8, K_8}, - {0, L_9, J_9, K_9}, - {0, L_10, J_10, K_10}, - {0, L_11, J_11, K_11}, - {0, L_12, J_12, K_12}, - {0, L_13, J_13, K_13}, - {0, L_14, J_14, K_14}, - - {0, I_1, G_1, H_1}, - {0, I_2, G_2, H_2}, - {0, I_3, G_3, H_3}, - {0, I_4, G_4, H_4}, - {0, I_5, G_5, H_5}, - {0, I_6, G_6, H_6}, - {0, I_7, G_7, H_7}, - {0, I_8, G_8, H_8}, - {0, I_9, G_9, H_9}, - {0, I_10, G_10, H_10}, - {0, I_11, G_11, H_11}, - {0, I_12, G_12, H_12}, - {0, I_13, G_13, H_13}, - - {0, F_1, D_1, E_1}, - {0, F_2, D_2, E_2}, - {0, F_3, D_3, E_3}, - {0, F_4, D_4, E_4}, - {0, F_5, D_5, E_5}, - {0, F_6, D_6, E_6}, - {0, F_7, D_7, E_7}, - {0, F_8, D_8, E_8}, - {0, F_9, D_9, E_9}, - {0, F_10, D_10, E_10}, - {0, F_11, D_11, E_11}, - {0, F_12, D_12, E_12}, - {0, F_14, D_14, E_14}, - {0, I_14, G_14, H_14}, - - {0, C_1, A_1, B_1}, - {0, C_2, A_2, B_2}, - {0, C_3, A_3, B_3}, - {0, C_4, A_4, B_4}, - {0, C_5, A_5, B_5}, - {0, C_6, A_6, B_6}, - {0, C_7, A_7, B_7}, - {0, C_8, A_8, B_8}, - {0, C_9, A_9, B_9}, - {0, C_10, A_10, B_10}, - {0, C_11, A_11, B_11}, - {0, C_12, A_12, B_12}, - {0, C_14, A_14, B_14}, - - {0, C_15, A_15, B_15}, - {0, C_16, A_16, B_16}, - {0, F_15, D_15, E_15}, - {0, F_16, D_16, E_16}, - {0, I_15, G_15, H_15}, - {0, I_16, G_16, H_16}, - {0, L_15, J_15, K_15}, - {0, L_16, J_16, K_16}, -}; -#endif diff --git a/keyboards/keychron/k9_pro/iso/rgb/rules.mk b/keyboards/keychron/k9_pro/iso/rgb/rules.mk deleted file mode 100644 index 6e7633bfe0..0000000000 --- a/keyboards/keychron/k9_pro/iso/rgb/rules.mk +++ /dev/null @@ -1 +0,0 @@ -# This file intentionally left blank diff --git a/keyboards/keychron/k9_pro/iso/white/config.h b/keyboards/keychron/k9_pro/iso/white/config.h deleted file mode 100644 index 75c280cd69..0000000000 --- a/keyboards/keychron/k9_pro/iso/white/config.h +++ /dev/null @@ -1,54 +0,0 @@ -/* 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 . - */ - -#pragma once - -#ifdef LED_MATRIX_ENABLE -/* LED Matrix Driver Configuration */ -# define DRIVER_COUNT 1 -# define SNLED27351_I2C_ADDRESS_1 SNLED27351_I2C_ADDRESS_GND - -/* LED Matrix Configuration */ -# define LED_MATRIX_LED_COUNT 62 - -/* Set to infinit, which is use in USB mode by default */ -# define LED_MATRIX_TIMEOUT LED_MATRIX_TIMEOUT_INFINITE - -/* Allow to shutdown driver to save power */ -# define LED_MATRIX_DRIVER_SHUTDOWN_ENABLE - -/* Turn off backllit if brightness value is low */ -# define LED_MATRIX_BRIGHTNESS_TURN_OFF_VAL 48 - -/* Indication led index */ -# define DIM_CAPS_LOCK -# define CAPS_LOCK_INDEX 27 -# define LOW_BAT_IND_INDEX 57 - -// LED Matrix Animation modes. Explicitly enabled -// For full list of effects, see: -// https://docs.qmk.fm/#/feature_led_matrix?id=led-matrix-effects -// #if defined(LED_MATRIX_KEYPRESSES) || defined(LED_MATRIX_KEYRELEASES) -# define LED_MATRIX_KEYPRESSES -# define LED_MATRIX_KEYRELEASES - -/* Use the first 5 channels of led driver */ -# define PHASE_CHANNEL MSKPHASE_5CHANNEL - -/* Set LED driver current */ -# define SNLED27351_CURRENT_TUNE \ - { 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30 } -#endif diff --git a/keyboards/keychron/k9_pro/iso/white/info.json b/keyboards/keychron/k9_pro/iso/white/info.json deleted file mode 100644 index 25b4ac09d9..0000000000 --- a/keyboards/keychron/k9_pro/iso/white/info.json +++ /dev/null @@ -1,98 +0,0 @@ -{ - "usb": { - "pid": "0x0294", - "device_version": "1.0.0" - }, - "features": { - "led_matrix": true - }, - "led_matrix": { - "driver": "snled27351", - "animations": { - "none": true, - "solid": true, - "breathing": true, - "band_pinwheel": true, - "band_spiral": true, - "cycle_left_right": true, - "cycle_up_down": true, - "cycle_out_in": true, - "dual_beacon": true, - "solid_reactive_simple": true, - "solid_reactive_multiwide": true, - "solid_reactive_multinexus": true, - "solid_splash": true, - "wave_left_right": true, - "wave_up_down": true, - "effect_max": true - }, - "layout": [ - {"matrix":[0, 0], "flags":1, "x":0, "y":0}, - {"matrix":[0, 1], "flags":4, "x":16, "y":0}, - {"matrix":[0, 2], "flags":4, "x":32, "y":0}, - {"matrix":[0, 3], "flags":4, "x":48, "y":0}, - {"matrix":[0, 4], "flags":4, "x":65, "y":0}, - {"matrix":[0, 5], "flags":4, "x":81, "y":0}, - {"matrix":[0, 6], "flags":4, "x":97, "y":0}, - {"matrix":[0, 7], "flags":4, "x":113, "y":0}, - {"matrix":[0, 8], "flags":4, "x":129, "y":0}, - {"matrix":[0, 9], "flags":4, "x":145, "y":0}, - {"matrix":[0, 10], "flags":4, "x":161, "y":0}, - {"matrix":[0, 11], "flags":4, "x":178, "y":0}, - {"matrix":[0, 12], "flags":4, "x":194, "y":0}, - {"matrix":[0, 13], "flags":1, "x":218, "y":0}, - - {"matrix":[1, 0], "flags":1, "x":4, "y":16}, - {"matrix":[1, 1], "flags":8, "x":24, "y":16}, - {"matrix":[1, 2], "flags":8, "x":40, "y":16}, - {"matrix":[1, 3], "flags":8, "x":57, "y":16}, - {"matrix":[1, 4], "flags":4, "x":73, "y":16}, - {"matrix":[1, 5], "flags":4, "x":89, "y":16}, - {"matrix":[1, 6], "flags":4, "x":105, "y":16}, - {"matrix":[1, 7], "flags":4, "x":121, "y":16}, - {"matrix":[1, 8], "flags":4, "x":137, "y":16}, - {"matrix":[1, 9], "flags":4, "x":153, "y":16}, - {"matrix":[1, 10], "flags":4, "x":170, "y":16}, - {"matrix":[1, 11], "flags":4, "x":186, "y":16}, - {"matrix":[1, 12], "flags":4, "x":202, "y":16}, - - {"matrix":[2, 0], "flags":8, "x":6, "y":32}, - {"matrix":[2, 1], "flags":4, "x":28, "y":32}, - {"matrix":[2, 2], "flags":4, "x":44, "y":32}, - {"matrix":[2, 3], "flags":4, "x":61, "y":32}, - {"matrix":[2, 4], "flags":4, "x":77, "y":32}, - {"matrix":[2, 5], "flags":4, "x":93, "y":32}, - {"matrix":[2, 6], "flags":4, "x":109, "y":32}, - {"matrix":[2, 7], "flags":4, "x":125, "y":32}, - {"matrix":[2, 8], "flags":4, "x":141, "y":32}, - {"matrix":[2, 9], "flags":4, "x":157, "y":32}, - {"matrix":[2, 10], "flags":4, "x":174, "y":32}, - {"matrix":[2, 11], "flags":4, "x":190, "y":32}, - {"matrix":[2, 13], "flags":1, "x":206, "y":32}, - {"matrix":[1, 13], "flags":1, "x":222, "y":24}, - - {"matrix":[3, 0], "flags":1, "x":2, "y":48}, - {"matrix":[3, 1], "flags":1, "x":20, "y":48}, - {"matrix":[3, 2], "flags":4, "x":36, "y":48}, - {"matrix":[3, 3], "flags":4, "x":53, "y":48}, - {"matrix":[3, 4], "flags":4, "x":69, "y":48}, - {"matrix":[3, 5], "flags":4, "x":85, "y":48}, - {"matrix":[3, 6], "flags":4, "x":101, "y":48}, - {"matrix":[3, 7], "flags":4, "x":117, "y":48}, - {"matrix":[3, 8], "flags":4, "x":133, "y":48}, - {"matrix":[3, 9], "flags":4, "x":149, "y":48}, - {"matrix":[3, 10], "flags":4, "x":166, "y":48}, - {"matrix":[3, 11], "flags":4, "x":182, "y":48}, - {"matrix":[3, 13], "flags":1, "x":212, "y":48}, - - {"matrix":[4, 0], "flags":1, "x":2, "y":64}, - {"matrix":[4, 1], "flags":1, "x":22, "y":64}, - {"matrix":[4, 2], "flags":1, "x":42, "y":64}, - {"matrix":[4, 6], "flags":4, "x":103, "y":64}, - {"matrix":[4, 10], "flags":1, "x":163, "y":64}, - {"matrix":[4, 11], "flags":1, "x":184, "y":64}, - {"matrix":[4, 12], "flags":1, "x":204, "y":64}, - {"matrix":[4, 13], "flags":1, "x":224, "y":64} - ] - } -} diff --git a/keyboards/keychron/k9_pro/iso/white/keymaps/default/keymap.c b/keyboards/keychron/k9_pro/iso/white/keymaps/default/keymap.c deleted file mode 100644 index c48cbef784..0000000000 --- a/keyboards/keychron/k9_pro/iso/white/keymaps/default/keymap.c +++ /dev/null @@ -1,63 +0,0 @@ -/* 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 . - */ - -#include QMK_KEYBOARD_H - -enum layers{ - MAC_BASE, - WIN_BASE, - MAC_FN, - WIN_FN, - FN1, -}; - -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_62_iso( - 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_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_NUHS, KC_ENT, - KC_LSFT, KC_NUBS, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, - KC_LCTL, KC_LOPTN, KC_LCMMD, KC_SPC, KC_RCMMD, MO(MAC_FN),MO(FN1), KC_RCTL), - - [WIN_BASE] = LAYOUT_62_iso( - 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_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_NUHS, KC_ENT, - KC_LSFT, KC_NUBS, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, - KC_LCTL, KC_LWIN, KC_LALT, KC_SPC, KC_RALT, MO(WIN_FN),MO(FN1), KC_RCTL), - - [MAC_FN] = LAYOUT_62_iso( - KC_GRV, KC_BRID, KC_BRIU, KC_MCTL, KC_LPAD, BL_DOWN, BL_UP, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, KC_INS, KC_PGUP, KC_HOME, - BL_TOGG, BL_STEP, BL_UP, _______, _______, _______, _______, _______, KC_UP, KC_SNAP, KC_PGDN, KC_END, _______, _______, - _______, _______, _______, BL_DOWN, _______, _______, _______, NK_TOGG, KC_LEFT, KC_DOWN, KC_RIGHT, KC_DEL, _______, - _______, _______, _______, _______, _______, _______, _______, _______), - - [WIN_FN] = LAYOUT_62_iso( - KC_GRV, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, BL_DOWN, BL_UP, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, KC_APP, KC_SCRL, KC_INS, KC_PGUP, KC_HOME, - BL_TOGG, BL_STEP, BL_UP, _______, _______, _______, _______, _______, KC_UP, KC_PSCR, KC_PGDN, KC_END, _______, _______, - _______, _______, _______, BL_DOWN, _______, _______, _______, NK_TOGG, KC_LEFT, KC_DOWN, KC_RIGHT, KC_DEL, _______, - _______, _______, _______, _______, _______, _______, _______, _______), - - [FN1] = LAYOUT_62_iso( - _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, BAT_LVL, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______), -}; diff --git a/keyboards/keychron/k9_pro/iso/white/keymaps/via/keymap.c b/keyboards/keychron/k9_pro/iso/white/keymaps/via/keymap.c deleted file mode 100644 index c48cbef784..0000000000 --- a/keyboards/keychron/k9_pro/iso/white/keymaps/via/keymap.c +++ /dev/null @@ -1,63 +0,0 @@ -/* 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 . - */ - -#include QMK_KEYBOARD_H - -enum layers{ - MAC_BASE, - WIN_BASE, - MAC_FN, - WIN_FN, - FN1, -}; - -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_62_iso( - 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_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_NUHS, KC_ENT, - KC_LSFT, KC_NUBS, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, - KC_LCTL, KC_LOPTN, KC_LCMMD, KC_SPC, KC_RCMMD, MO(MAC_FN),MO(FN1), KC_RCTL), - - [WIN_BASE] = LAYOUT_62_iso( - 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_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_NUHS, KC_ENT, - KC_LSFT, KC_NUBS, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, - KC_LCTL, KC_LWIN, KC_LALT, KC_SPC, KC_RALT, MO(WIN_FN),MO(FN1), KC_RCTL), - - [MAC_FN] = LAYOUT_62_iso( - KC_GRV, KC_BRID, KC_BRIU, KC_MCTL, KC_LPAD, BL_DOWN, BL_UP, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, KC_INS, KC_PGUP, KC_HOME, - BL_TOGG, BL_STEP, BL_UP, _______, _______, _______, _______, _______, KC_UP, KC_SNAP, KC_PGDN, KC_END, _______, _______, - _______, _______, _______, BL_DOWN, _______, _______, _______, NK_TOGG, KC_LEFT, KC_DOWN, KC_RIGHT, KC_DEL, _______, - _______, _______, _______, _______, _______, _______, _______, _______), - - [WIN_FN] = LAYOUT_62_iso( - KC_GRV, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, BL_DOWN, BL_UP, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, KC_APP, KC_SCRL, KC_INS, KC_PGUP, KC_HOME, - BL_TOGG, BL_STEP, BL_UP, _______, _______, _______, _______, _______, KC_UP, KC_PSCR, KC_PGDN, KC_END, _______, _______, - _______, _______, _______, BL_DOWN, _______, _______, _______, NK_TOGG, KC_LEFT, KC_DOWN, KC_RIGHT, KC_DEL, _______, - _______, _______, _______, _______, _______, _______, _______, _______), - - [FN1] = LAYOUT_62_iso( - _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, BAT_LVL, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______), -}; diff --git a/keyboards/keychron/k9_pro/iso/white/keymaps/via/rules.mk b/keyboards/keychron/k9_pro/iso/white/keymaps/via/rules.mk deleted file mode 100644 index 1e5b99807c..0000000000 --- a/keyboards/keychron/k9_pro/iso/white/keymaps/via/rules.mk +++ /dev/null @@ -1 +0,0 @@ -VIA_ENABLE = yes diff --git a/keyboards/keychron/k9_pro/iso/white/rules.mk b/keyboards/keychron/k9_pro/iso/white/rules.mk deleted file mode 100644 index 6e7633bfe0..0000000000 --- a/keyboards/keychron/k9_pro/iso/white/rules.mk +++ /dev/null @@ -1 +0,0 @@ -# This file intentionally left blank diff --git a/keyboards/keychron/k9_pro/iso/white/white.c b/keyboards/keychron/k9_pro/iso/white/white.c deleted file mode 100644 index 7a92043c65..0000000000 --- a/keyboards/keychron/k9_pro/iso/white/white.c +++ /dev/null @@ -1,93 +0,0 @@ -/* 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 .g - */ - -#include "quantum.h" - -// clang-format off -#ifdef LED_MATRIX_ENABLE -const snled27351_led_t g_snled27351_leds[LED_MATRIX_LED_COUNT] = { -/* Refer to snled27351manual for these locations - * driver - * | LED address - * | | */ - {0, A_1}, - {0, A_2}, - {0, A_3}, - {0, A_4}, - {0, A_5}, - {0, A_6}, - {0, A_7}, - {0, A_8}, - {0, A_9}, - {0, A_10}, - {0, A_11}, - {0, A_12}, - {0, A_13}, - {0, A_14}, - - {0, B_1}, - {0, B_2}, - {0, B_3}, - {0, B_4}, - {0, B_5}, - {0, B_6}, - {0, B_7}, - {0, B_8}, - {0, B_9}, - {0, B_10}, - {0, B_11}, - {0, B_12}, - {0, B_13}, - - {0, C_1}, - {0, C_2}, - {0, C_3}, - {0, C_4}, - {0, C_5}, - {0, C_6}, - {0, C_7}, - {0, C_8}, - {0, C_9}, - {0, C_10}, - {0, C_11}, - {0, C_12}, - {0, C_14}, - {0, B_14}, - - {0, D_1}, - {0, D_2}, - {0, D_3}, - {0, D_4}, - {0, D_5}, - {0, D_6}, - {0, D_7}, - {0, D_8}, - {0, D_9}, - {0, D_10}, - {0, D_11}, - {0, D_12}, - {0, D_14}, - - {0, C_15}, - {0, C_16}, - {0, D_15}, - {0, D_16}, - {0, B_15}, - {0, B_16}, - {0, A_15}, - {0, A_16}, -}; -#endif diff --git a/keyboards/keychron/k9_pro/jis/info.json b/keyboards/keychron/k9_pro/jis/info.json deleted file mode 100644 index 33af721adc..0000000000 --- a/keyboards/keychron/k9_pro/jis/info.json +++ /dev/null @@ -1,87 +0,0 @@ -{ - "matrix_pins": { - "rows": ["B4", "B3", "A15", "A14", "A13"], - "cols": [null, null, null, null, null, null, null, null, null, null, null, null, null, null, null], - "custom": true, - "custom_lite": true - }, - "matrix_size": { - "rows": 5, - "cols": 15 - }, - "layouts": { - "LAYOUT_65_jis": { - "layout": [ - {"matrix":[0,0], "x":0, "y":0}, - {"matrix":[0,1], "x":1, "y":0}, - {"matrix":[0,2], "x":2, "y":0}, - {"matrix":[0,3], "x":3, "y":0}, - {"matrix":[0,4], "x":4, "y":0}, - {"matrix":[0,5], "x":5, "y":0}, - {"matrix":[0,6], "x":6, "y":0}, - {"matrix":[0,7], "x":7, "y":0}, - {"matrix":[0,8], "x":8, "y":0}, - {"matrix":[0,9], "x":9, "y":0}, - {"matrix":[0,10], "x":10, "y":0}, - {"matrix":[0,11], "x":11, "y":0}, - {"matrix":[0,12], "x":12, "y":0}, - {"matrix":[0,13], "x":13, "y":0}, - {"matrix":[0,14], "x":14, "y":0}, - - {"matrix":[1,0], "x":0, "y":1, "w":1.5}, - {"matrix":[1,1], "x":1.5, "y":1}, - {"matrix":[1,2], "x":2.5, "y":1}, - {"matrix":[1,3], "x":3.5, "y":1}, - {"matrix":[1,4], "x":4.5, "y":1}, - {"matrix":[1,5], "x":5.5, "y":1}, - {"matrix":[1,6], "x":6.5, "y":1}, - {"matrix":[1,7], "x":7.5, "y":1}, - {"matrix":[1,8], "x":8.5, "y":1}, - {"matrix":[1,9], "x":9.5, "y":1}, - {"matrix":[1,10], "x":10.5, "y":1}, - {"matrix":[1,11], "x":11.5, "y":1}, - {"matrix":[1,12], "x":12.5, "y":1}, - - {"matrix":[2,0], "x":0, "y":2, "w":1.75}, - {"matrix":[2,1], "x":1.75, "y":2}, - {"matrix":[2,2], "x":2.75, "y":2}, - {"matrix":[2,3], "x":3.75, "y":2}, - {"matrix":[2,4], "x":4.75, "y":2}, - {"matrix":[2,5], "x":5.75, "y":2}, - {"matrix":[2,6], "x":6.75, "y":2}, - {"matrix":[2,7], "x":7.75, "y":2}, - {"matrix":[2,8], "x":8.75, "y":2}, - {"matrix":[2,9], "x":9.75, "y":2}, - {"matrix":[2,10], "x":10.75, "y":2}, - {"matrix":[2,11], "x":11.75, "y":2}, - {"matrix":[2,13], "x":12.75, "y":2}, - {"matrix":[1,13], "x":13.75, "y":1, "w":1.25, "h":2}, - - {"matrix":[3,0], "x":0, "y":3, "w":2.25}, - {"matrix":[3,2], "x":2.25, "y":3}, - {"matrix":[3,3], "x":3.25, "y":3}, - {"matrix":[3,4], "x":4.25, "y":3}, - {"matrix":[3,5], "x":5.25, "y":3}, - {"matrix":[3,6], "x":6.25, "y":3}, - {"matrix":[3,7], "x":7.25, "y":3}, - {"matrix":[3,8], "x":8.25, "y":3}, - {"matrix":[3,9], "x":9.25, "y":3}, - {"matrix":[3,10], "x":10.25, "y":3}, - {"matrix":[3,11], "x":11.25, "y":3}, - {"matrix":[3,12], "x":12.25, "y":3}, - {"matrix":[3,13], "x":13.25, "y":3, "w":1.75}, - - {"matrix":[4,0], "x":0, "y":4, "w":1.25}, - {"matrix":[4,1], "x":1.25, "y":4}, - {"matrix":[4,2], "x":2.25, "y":4, "w":1.25}, - {"matrix":[4,3], "x":3.5, "y":4}, - {"matrix":[4,6], "x":4.5, "y":4, "w":5}, - {"matrix":[4,9], "x":9.5, "y":4, "w":1.25}, - {"matrix":[4,10], "x":10.75, "y":4}, - {"matrix":[4,11], "x":11.75, "y":4}, - {"matrix":[4,12], "x":12.75, "y":4}, - {"matrix":[4,13], "x":13.75, "y":4, "w":1.25} - ] - } - } -} diff --git a/keyboards/keychron/k9_pro/jis/rgb/config.h b/keyboards/keychron/k9_pro/jis/rgb/config.h deleted file mode 100644 index 238559f676..0000000000 --- a/keyboards/keychron/k9_pro/jis/rgb/config.h +++ /dev/null @@ -1,62 +0,0 @@ -/* 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 . - */ - -#pragma once - -#ifdef RGB_MATRIX_ENABLE -/* RGB Matrix Driver Configuration */ -# define DRIVER_COUNT 2 -# define DRIVER_ADDR_1 0b1110111 -# define DRIVER_ADDR_2 0b1110100 - -/* RGB Matrix Configuration */ -# define DRIVER_1_LED_COUNT 29 -# define DRIVER_2_LED_COUNT 36 -# define RGB_MATRIX_LED_COUNT (DRIVER_1_LED_COUNT + DRIVER_2_LED_COUNT) - -/* Set to infinite, which is use in USB mode by default */ -# define RGB_MATRIX_TIMEOUT RGB_MATRIX_TIMEOUT_INFINITE - -/* Allow shutdown of led driver to save power */ -# define RGB_MATRIX_DRIVER_SHUTDOWN_ENABLE - -/* Turn off backlight on low brightness to save power */ -# define RGB_MATRIX_BRIGHTNESS_TURN_OFF_VAL 48 - -# define DIM_CAPS_LOCK -# define CAPS_LOCK_INDEX 28 -# define LOW_BAT_IND_INDEX 59 - -# ifdef KC_BLUETOOTH_ENABLE -# undef HOST_LED_MATRIX_LIST -# define HOST_LED_MATRIX_LIST \ - { 16, 17, 18 } -# endif - -/* RGB Matrix Animation modes. Explicitly enabled - * For full list of effects, see: - * https://docs.qmk.fm/#/feature_rgb_matrix?id=rgb-matrix-effects - */ -# define RGB_MATRIX_KEYPRESSES -# define RGB_MATRIX_FRAMEBUFFER_EFFECTS - -/* Use first 9 channels of LED driver */ -# define PHASE_CHANNEL MSKPHASE_9CHANNEL - -/* Set LED driver current */ -# define SNLED27351_CURRENT_TUNE \ - { 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18 } -#endif diff --git a/keyboards/keychron/k9_pro/jis/rgb/info.json b/keyboards/keychron/k9_pro/jis/rgb/info.json deleted file mode 100644 index 936afc18fe..0000000000 --- a/keyboards/keychron/k9_pro/jis/rgb/info.json +++ /dev/null @@ -1,106 +0,0 @@ -{ - "usb": { - "pid": "0x0292", - "device_version": "1.0.0" - }, - "features": { - "rgb_matrix": true - }, - "rgb_matrix": { - "driver": "snled27351", - "animations": { - "breathing": true, - "band_spiral_val": true, - "cycle_all": true, - "cycle_left_right": true, - "cycle_up_down": true, - "rainbow_moving_chevron": true, - "cycle_out_in": true, - "cycle_out_in_dual": true, - "cycle_pinwheel": true, - "cycle_spiral": true, - "dual_beacon": true, - "rainbow_beacon": true, - "jellybean_raindrops": true, - "pixel_rain": true, - "typing_heatmap": true, - "digital_rain": true, - "solid_reactive_simple": true, - "solid_reactive_multiwide": true, - "solid_reactive_multinexus": true, - "splash": true, - "solid_splash": true - }, - "layout": [ - {"matrix":[0, 0], "flags":1, "x":0, "y":0}, - {"matrix":[0, 1], "flags":4, "x":16, "y":0}, - {"matrix":[0, 2], "flags":4, "x":32, "y":0}, - {"matrix":[0, 3], "flags":4, "x":48, "y":0}, - {"matrix":[0, 4], "flags":4, "x":64, "y":0}, - {"matrix":[0, 5], "flags":4, "x":80, "y":0}, - {"matrix":[0, 6], "flags":4, "x":96, "y":0}, - {"matrix":[0, 7], "flags":4, "x":112, "y":0}, - {"matrix":[0, 8], "flags":4, "x":128, "y":0}, - {"matrix":[0, 9], "flags":4, "x":144, "y":0}, - {"matrix":[0, 10], "flags":4, "x":160, "y":0}, - {"matrix":[0, 11], "flags":4, "x":176, "y":0}, - {"matrix":[0, 12], "flags":4, "x":192, "y":0}, - {"matrix":[0, 13], "flags":1, "x":208, "y":0}, - {"matrix":[0, 14], "flags":1, "x":224, "y":0}, - - {"matrix":[1, 0], "flags":1, "x":4, "y":16}, - {"matrix":[1, 1], "flags":8, "x":24, "y":16}, - {"matrix":[1, 2], "flags":8, "x":40, "y":16}, - {"matrix":[1, 3], "flags":8, "x":56, "y":16}, - {"matrix":[1, 4], "flags":4, "x":72, "y":16}, - {"matrix":[1, 5], "flags":4, "x":88, "y":16}, - {"matrix":[1, 6], "flags":4, "x":104, "y":16}, - {"matrix":[1, 7], "flags":4, "x":120, "y":16}, - {"matrix":[1, 8], "flags":4, "x":136, "y":16}, - {"matrix":[1, 9], "flags":4, "x":152, "y":16}, - {"matrix":[1, 10], "flags":4, "x":168, "y":16}, - {"matrix":[1, 11], "flags":4, "x":184, "y":16}, - {"matrix":[1, 12], "flags":4, "x":200, "y":16}, - - {"matrix":[2, 0], "flags":8, "x":6, "y":32}, - {"matrix":[2, 1], "flags":4, "x":28, "y":32}, - {"matrix":[2, 2], "flags":4, "x":44, "y":32}, - {"matrix":[2, 3], "flags":4, "x":60, "y":32}, - {"matrix":[2, 4], "flags":4, "x":76, "y":32}, - {"matrix":[2, 5], "flags":4, "x":92, "y":32}, - {"matrix":[2, 6], "flags":4, "x":108, "y":32}, - {"matrix":[2, 7], "flags":4, "x":124, "y":32}, - {"matrix":[2, 8], "flags":4, "x":140, "y":32}, - {"matrix":[2, 9], "flags":4, "x":156, "y":32}, - {"matrix":[2, 10], "flags":4, "x":172, "y":32}, - {"matrix":[2, 11], "flags":4, "x":188, "y":32}, - {"matrix":[2, 13], "flags":1, "x":204, "y":32}, - {"matrix":[1, 13], "flags":1, "x":222, "y":24}, - - {"matrix":[3, 0], "flags":1, "x":10, "y":48}, - {"matrix":[3, 2], "flags":4, "x":36, "y":48}, - {"matrix":[3, 3], "flags":4, "x":52, "y":48}, - {"matrix":[3, 4], "flags":4, "x":68, "y":48}, - {"matrix":[3, 5], "flags":4, "x":84, "y":48}, - {"matrix":[3, 6], "flags":4, "x":100, "y":48}, - {"matrix":[3, 7], "flags":4, "x":116, "y":48}, - {"matrix":[3, 8], "flags":4, "x":132, "y":48}, - {"matrix":[3, 9], "flags":4, "x":148, "y":48}, - {"matrix":[3, 10], "flags":4, "x":164, "y":48}, - {"matrix":[3, 11], "flags":4, "x":180, "y":48}, - {"matrix":[3, 12], "flags":1, "x":196, "y":48}, - {"matrix":[3, 13], "flags":1, "x":218, "y":48}, - - {"matrix":[4, 0], "flags":1, "x":2, "y":64}, - {"matrix":[4, 1], "flags":1, "x":20, "y":64}, - {"matrix":[4, 2], "flags":1, "x":38, "y":64}, - {"matrix":[4, 3], "flags":1, "x":56, "y":64}, - {"matrix":[4, 6], "flags":4, "x":104, "y":64}, - {"matrix":[4, 9], "flags":1, "x":154, "y":64}, - {"matrix":[4, 10], "flags":1, "x":172, "y":64}, - {"matrix":[4, 11], "flags":1, "x":188, "y":64}, - {"matrix":[4, 12], "flags":1, "x":204, "y":64}, - {"matrix":[4, 13], "flags":1, "x":222, "y":64} - ] - } -} diff --git a/keyboards/keychron/k9_pro/jis/rgb/keymaps/default/keymap.c b/keyboards/keychron/k9_pro/jis/rgb/keymaps/default/keymap.c deleted file mode 100644 index 7ee7b322c2..0000000000 --- a/keyboards/keychron/k9_pro/jis/rgb/keymaps/default/keymap.c +++ /dev/null @@ -1,63 +0,0 @@ -/* 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 . - */ - -#include QMK_KEYBOARD_H - -enum layers{ - MAC_BASE, - WIN_BASE, - MAC_FN, - WIN_FN, - FN1, -}; - -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_65_jis( - 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_INT3, 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_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_NUHS, 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_INT1, KC_RSFT, - KC_LCTL, KC_LOPTN, KC_LCMMD, KC_LNG2, KC_SPC, KC_LNG1, KC_RCMMD, MO(MAC_FN),MO(FN1), KC_RCTL), - - [WIN_BASE] = LAYOUT_65_jis( - 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_INT3, 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_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_NUHS, 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_INT1, KC_RSFT, - KC_LCTL, KC_LWIN, KC_LALT, KC_INT5, KC_SPC, KC_INT4, KC_RALT, MO(WIN_FN),MO(FN1), KC_RCTL), - - [MAC_FN] = LAYOUT_65_jis( - KC_GRV, KC_BRID, KC_BRIU, KC_MCTL, KC_LPAD, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, KC_INS, KC_PGUP, KC_HOME, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, KC_UP, KC_SNAP, KC_PGDN, KC_END, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, NK_TOGG, KC_LEFT, KC_DOWN, KC_RIGHT, KC_DEL, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - - [WIN_FN] = LAYOUT_65_jis( - KC_GRV, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, KC_APP, KC_SCRL, KC_INS, KC_PGUP, KC_HOME, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, KC_UP, KC_PSCR, KC_PGDN, KC_END, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, NK_TOGG, KC_LEFT, KC_DOWN, KC_RIGHT, KC_DEL, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - - [FN1] = LAYOUT_65_jis( - _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), -}; diff --git a/keyboards/keychron/k9_pro/jis/rgb/keymaps/via/keymap.c b/keyboards/keychron/k9_pro/jis/rgb/keymaps/via/keymap.c deleted file mode 100644 index 965a2b7877..0000000000 --- a/keyboards/keychron/k9_pro/jis/rgb/keymaps/via/keymap.c +++ /dev/null @@ -1,63 +0,0 @@ -/* 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 . - */ - -#include QMK_KEYBOARD_H - -enum layers { - MAC_BASE, - WIN_BASE, - MAC_FN, - WIN_FN, - FN1, -}; - -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_65_jis( - 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_INT3, 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_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_NUHS, 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_INT1, KC_RSFT, - KC_LCTL, KC_LOPTN, KC_LCMMD, KC_LNG2, KC_SPC, KC_LNG1, KC_RCMMD, MO(MAC_FN),MO(FN1), KC_RCTL), - - [WIN_BASE] = LAYOUT_65_jis( - 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_INT3, 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_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_NUHS, 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_INT1, KC_RSFT, - KC_LCTL, KC_LWIN, KC_LALT, KC_INT5, KC_SPC, KC_INT4, KC_RALT, MO(WIN_FN),MO(FN1), KC_RCTL), - - [MAC_FN] = LAYOUT_65_jis( - KC_GRV, KC_BRID, KC_BRIU, KC_MCTL, KC_LPAD, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, KC_INS, KC_PGUP, KC_HOME, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, KC_UP, KC_SNAP, KC_PGDN, KC_END, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, NK_TOGG, KC_LEFT, KC_DOWN, KC_RIGHT, KC_DEL, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - - [WIN_FN] = LAYOUT_65_jis( - KC_GRV, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, KC_APP, KC_SCRL, KC_INS, KC_PGUP, KC_HOME, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, KC_UP, KC_PSCR, KC_PGDN, KC_END, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, NK_TOGG, KC_LEFT, KC_DOWN, KC_RIGHT, KC_DEL, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - - [FN1] = LAYOUT_65_jis( - _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), -}; diff --git a/keyboards/keychron/k9_pro/jis/rgb/keymaps/via/rules.mk b/keyboards/keychron/k9_pro/jis/rgb/keymaps/via/rules.mk deleted file mode 100644 index 1e5b99807c..0000000000 --- a/keyboards/keychron/k9_pro/jis/rgb/keymaps/via/rules.mk +++ /dev/null @@ -1 +0,0 @@ -VIA_ENABLE = yes diff --git a/keyboards/keychron/k9_pro/jis/rgb/rgb.c b/keyboards/keychron/k9_pro/jis/rgb/rgb.c deleted file mode 100644 index 2d4eaba75a..0000000000 --- a/keyboards/keychron/k9_pro/jis/rgb/rgb.c +++ /dev/null @@ -1,98 +0,0 @@ -/* 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 . - */ - -#include "quantum.h" - -// clang-format off -#ifdef RGB_MATRIX_ENABLE -const snled27351_led_t g_snled27351_leds[RGB_MATRIX_LED_COUNT] = { -/* Refer to snled27351manual for these locations - * driver - * | R location - * | | G location - * | | | B location - * | | | | */ - {0, A_1, C_1, B_1}, - {0, A_2, C_2, B_2}, - {0, A_3, C_3, B_3}, - {0, A_4, C_4, B_4}, - {0, A_5, C_5, B_5}, - {0, A_6, C_6, B_6}, - {0, A_7, C_7, B_7}, - {0, A_8, C_8, B_8}, - {0, A_9, C_9, B_9}, - {0, A_10, C_10, B_10}, - {0, A_11, C_11, B_11}, - {0, A_12, C_12, B_12}, - {0, A_13, C_13, B_13}, - {0, A_14, C_14, B_14}, - {0, A_15, C_15, B_15}, - - {0, D_1, F_1, E_1}, - {0, D_2, F_2, E_2}, - {0, D_3, F_3, E_3}, - {0, D_4, F_4, E_4}, - {0, D_5, F_5, E_5}, - {0, D_6, F_6, E_6}, - {0, D_7, F_7, E_7}, - {0, D_8, F_8, E_8}, - {0, D_9, F_9, E_9}, - {0, D_10, F_10, E_10}, - {0, D_11, F_11, E_11}, - {0, D_12, F_12, E_12}, - {0, D_13, F_13, E_13}, - - {1, F_1, D_1, E_1}, - {1, F_2, D_2, E_2}, - {1, F_3, D_3, E_3}, - {1, F_4, D_4, E_4}, - {1, F_5, D_5, E_5}, - {1, F_6, D_6, E_6}, - {1, F_7, D_7, E_7}, - {1, F_8, D_8, E_8}, - {1, F_9, D_9, E_9}, - {1, F_10, D_10, E_10}, - {1, F_11, D_11, E_11}, - {1, F_12, D_12, E_12}, - {1, F_14, D_14, E_14}, - {0, D_14, F_14, E_14}, - - {1, C_1, A_1, B_1}, - {1, C_3, A_3, B_3}, - {1, C_4, A_4, B_4}, - {1, C_5, A_5, B_5}, - {1, C_6, A_6, B_6}, - {1, C_7, A_7, B_7}, - {1, C_8, A_8, B_8}, - {1, C_9, A_9, B_9}, - {1, C_10, A_10, B_10}, - {1, C_11, A_11, B_11}, - {1, C_12, A_12, B_12}, - {1, C_13, A_13, B_13}, - {1, C_14, A_14, B_14}, - - {1, I_1, G_1, H_1}, - {1, I_2, G_2, H_2}, - {1, I_3, G_3, H_3}, - {1, I_4, G_4, H_4}, - {1, I_7, G_7, H_7}, - {1, I_10, G_10, H_10}, - {1, I_11, G_11, H_11}, - {1, I_12, G_12, H_12}, - {1, I_13, G_13, H_13}, - {1, I_14, G_14, H_14}, -}; -#endif diff --git a/keyboards/keychron/k9_pro/jis/rgb/rules.mk b/keyboards/keychron/k9_pro/jis/rgb/rules.mk deleted file mode 100644 index 6e7633bfe0..0000000000 --- a/keyboards/keychron/k9_pro/jis/rgb/rules.mk +++ /dev/null @@ -1 +0,0 @@ -# This file intentionally left blank diff --git a/keyboards/keychron/k9_pro/jis/white/config.h b/keyboards/keychron/k9_pro/jis/white/config.h deleted file mode 100644 index 193d765a63..0000000000 --- a/keyboards/keychron/k9_pro/jis/white/config.h +++ /dev/null @@ -1,59 +0,0 @@ -/* 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 . - */ - -#pragma once - -#ifdef LED_MATRIX_ENABLE -/* LED Matrix Driver Configuration */ -# define DRIVER_COUNT 1 -# define SNLED27351_I2C_ADDRESS_1 SNLED27351_I2C_ADDRESS_GND - -/* LED Matrix Configuration */ -# define LED_MATRIX_LED_COUNT 65 - -/* Set to infinit, which is use in USB mode by default */ -# define LED_MATRIX_TIMEOUT LED_MATRIX_TIMEOUT_INFINITE - -/* Allow to shutdown driver to save power */ -# define LED_MATRIX_DRIVER_SHUTDOWN_ENABLE - -/* Turn off backllit if brightness value is low */ -# define LED_MATRIX_BRIGHTNESS_TURN_OFF_VAL 48 - -# define DIM_CAPS_LOCK -# define CAPS_LOCK_INDEX 28 -# define LOW_BAT_IND_INDEX 59 - -# ifdef KC_BLUETOOTH_ENABLE -# undef HOST_LED_MATRIX_LIST -# define HOST_LED_MATRIX_LIST \ - { 16, 17, 18 } -# endif - -// LED Matrix Animation modes. Explicitly enabled -// For full list of effects, see: -// https://docs.qmk.fm/#/feature_led_matrix?id=led-matrix-effects -// #if defined(LED_MATRIX_KEYPRESSES) || defined(LED_MATRIX_KEYRELEASES) -# define LED_MATRIX_KEYPRESSES -# define LED_MATRIX_KEYRELEASES - -/* Use first 5 channels of LED driver */ -# define PHASE_CHANNEL MSKPHASE_5CHANNEL - -/* Set LED driver current */ -# define SNLED27351_CURRENT_TUNE \ - { 0x28, 0x28, 0x28, 0x28, 0x28, 0x28, 0x28, 0x28, 0x28, 0x28, 0x28, 0x28 } -#endif diff --git a/keyboards/keychron/k9_pro/jis/white/info.json b/keyboards/keychron/k9_pro/jis/white/info.json deleted file mode 100644 index 986e7b5fdf..0000000000 --- a/keyboards/keychron/k9_pro/jis/white/info.json +++ /dev/null @@ -1,101 +0,0 @@ -{ - "usb": { - "pid": "0x0295", - "device_version": "1.0.0" - }, - "features": { - "led_matrix": true - }, - "led_matrix": { - "driver": "snled27351", - "animations": { - "none": true, - "solid": true, - "breathing": true, - "band_pinwheel": true, - "band_spiral": true, - "cycle_left_right": true, - "cycle_up_down": true, - "cycle_out_in": true, - "dual_beacon": true, - "solid_reactive_simple": true, - "solid_reactive_multiwide": true, - "solid_reactive_multinexus": true, - "solid_splash": true, - "wave_left_right": true, - "wave_up_down": true, - "effect_max": true - }, - "layout": [ - {"matrix":[0, 0], "flags":1, "x":0, "y":0}, - {"matrix":[0, 1], "flags":4, "x":16, "y":0}, - {"matrix":[0, 2], "flags":4, "x":32, "y":0}, - {"matrix":[0, 3], "flags":4, "x":48, "y":0}, - {"matrix":[0, 4], "flags":4, "x":64, "y":0}, - {"matrix":[0, 5], "flags":4, "x":80, "y":0}, - {"matrix":[0, 6], "flags":4, "x":96, "y":0}, - {"matrix":[0, 7], "flags":4, "x":112, "y":0}, - {"matrix":[0, 8], "flags":4, "x":128, "y":0}, - {"matrix":[0, 9], "flags":4, "x":144, "y":0}, - {"matrix":[0, 10], "flags":4, "x":160, "y":0}, - {"matrix":[0, 11], "flags":4, "x":176, "y":0}, - {"matrix":[0, 12], "flags":4, "x":192, "y":0}, - {"matrix":[0, 13], "flags":1, "x":208, "y":0}, - {"matrix":[0, 14], "flags":1, "x":224, "y":0}, - - {"matrix":[1, 0], "flags":1, "x":4, "y":16}, - {"matrix":[1, 1], "flags":8, "x":24, "y":16}, - {"matrix":[1, 2], "flags":8, "x":40, "y":16}, - {"matrix":[1, 3], "flags":8, "x":56, "y":16}, - {"matrix":[1, 4], "flags":4, "x":72, "y":16}, - {"matrix":[1, 5], "flags":4, "x":88, "y":16}, - {"matrix":[1, 6], "flags":4, "x":104, "y":16}, - {"matrix":[1, 7], "flags":4, "x":120, "y":16}, - {"matrix":[1, 8], "flags":4, "x":136, "y":16}, - {"matrix":[1, 9], "flags":4, "x":152, "y":16}, - {"matrix":[1, 10], "flags":4, "x":168, "y":16}, - {"matrix":[1, 11], "flags":4, "x":184, "y":16}, - {"matrix":[1, 12], "flags":4, "x":200, "y":16}, - - {"matrix":[2, 0], "flags":8, "x":6, "y":32}, - {"matrix":[2, 1], "flags":4, "x":28, "y":32}, - {"matrix":[2, 2], "flags":4, "x":44, "y":32}, - {"matrix":[2, 3], "flags":4, "x":60, "y":32}, - {"matrix":[2, 4], "flags":4, "x":76, "y":32}, - {"matrix":[2, 5], "flags":4, "x":92, "y":32}, - {"matrix":[2, 6], "flags":4, "x":108, "y":32}, - {"matrix":[2, 7], "flags":4, "x":124, "y":32}, - {"matrix":[2, 8], "flags":4, "x":140, "y":32}, - {"matrix":[2, 9], "flags":4, "x":156, "y":32}, - {"matrix":[2, 10], "flags":4, "x":172, "y":32}, - {"matrix":[2, 11], "flags":4, "x":188, "y":32}, - {"matrix":[2, 13], "flags":1, "x":204, "y":32}, - {"matrix":[1, 13], "flags":1, "x":222, "y":24}, - - {"matrix":[3, 0], "flags":1, "x":10, "y":48}, - {"matrix":[3, 2], "flags":4, "x":36, "y":48}, - {"matrix":[3, 3], "flags":4, "x":52, "y":48}, - {"matrix":[3, 4], "flags":4, "x":68, "y":48}, - {"matrix":[3, 5], "flags":4, "x":84, "y":48}, - {"matrix":[3, 6], "flags":4, "x":100, "y":48}, - {"matrix":[3, 7], "flags":4, "x":116, "y":48}, - {"matrix":[3, 8], "flags":4, "x":132, "y":48}, - {"matrix":[3, 9], "flags":4, "x":148, "y":48}, - {"matrix":[3, 10], "flags":4, "x":164, "y":48}, - {"matrix":[3, 11], "flags":4, "x":180, "y":48}, - {"matrix":[3, 12], "flags":1, "x":196, "y":48}, - {"matrix":[3, 13], "flags":1, "x":218, "y":48}, - - {"matrix":[4, 0], "flags":1, "x":2, "y":64}, - {"matrix":[4, 1], "flags":1, "x":20, "y":64}, - {"matrix":[4, 2], "flags":1, "x":38, "y":64}, - {"matrix":[4, 3], "flags":1, "x":56, "y":64}, - {"matrix":[4, 6], "flags":4, "x":104, "y":64}, - {"matrix":[4, 9], "flags":1, "x":154, "y":64}, - {"matrix":[4, 10], "flags":1, "x":172, "y":64}, - {"matrix":[4, 11], "flags":1, "x":188, "y":64}, - {"matrix":[4, 12], "flags":1, "x":204, "y":64}, - {"matrix":[4, 13], "flags":1, "x":222, "y":64} - ] - } -} diff --git a/keyboards/keychron/k9_pro/jis/white/keymaps/default/keymap.c b/keyboards/keychron/k9_pro/jis/white/keymaps/default/keymap.c deleted file mode 100644 index 61fe5c80ad..0000000000 --- a/keyboards/keychron/k9_pro/jis/white/keymaps/default/keymap.c +++ /dev/null @@ -1,63 +0,0 @@ -/* 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 . - */ - -#include QMK_KEYBOARD_H - -enum layers{ - MAC_BASE, - WIN_BASE, - MAC_FN, - WIN_FN, - FN1, -}; - -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_65_jis( - 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_INT3, 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_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_NUHS, 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_INT1, KC_RSFT, - KC_LCTL, KC_LOPTN, KC_LCMMD, KC_LNG2, KC_SPC, KC_LNG1, KC_RCMMD, MO(MAC_FN),MO(FN1), KC_RCTL), - - [WIN_BASE] = LAYOUT_65_jis( - 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_INT3, 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_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_NUHS, 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_INT1, KC_RSFT, - KC_LCTL, KC_LWIN, KC_LALT, KC_INT5, KC_SPC, KC_INT4, KC_RALT, MO(WIN_FN),MO(FN1), KC_RCTL), - - [MAC_FN] = LAYOUT_65_jis( - KC_GRV, KC_BRID, KC_BRIU, KC_MCTL, KC_LPAD, BL_DOWN, BL_UP, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, KC_INS, KC_PGUP, KC_HOME, - BL_TOGG, BL_STEP, BL_UP, _______, _______, _______, _______, _______, KC_UP, KC_SNAP, KC_PGDN, KC_END, _______, _______, - _______, _______, BL_DOWN, _______, _______, _______, NK_TOGG, KC_LEFT, KC_DOWN, KC_RIGHT, KC_DEL, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - - [WIN_FN] = LAYOUT_65_jis( - KC_GRV, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, BL_DOWN, BL_UP, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, KC_APP, KC_SCRL, KC_INS, KC_PGUP, KC_HOME, - BL_TOGG, BL_STEP, BL_UP, _______, _______, _______, _______, _______, KC_UP, KC_PSCR, KC_PGDN, KC_END, _______, _______, - _______, _______, BL_DOWN, _______, _______, _______, NK_TOGG, KC_LEFT, KC_DOWN, KC_RIGHT, KC_DEL, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - - [FN1] = LAYOUT_65_jis( - _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), -}; diff --git a/keyboards/keychron/k9_pro/jis/white/keymaps/via/keymap.c b/keyboards/keychron/k9_pro/jis/white/keymaps/via/keymap.c deleted file mode 100644 index 61fe5c80ad..0000000000 --- a/keyboards/keychron/k9_pro/jis/white/keymaps/via/keymap.c +++ /dev/null @@ -1,63 +0,0 @@ -/* 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 . - */ - -#include QMK_KEYBOARD_H - -enum layers{ - MAC_BASE, - WIN_BASE, - MAC_FN, - WIN_FN, - FN1, -}; - -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_65_jis( - 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_INT3, 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_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_NUHS, 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_INT1, KC_RSFT, - KC_LCTL, KC_LOPTN, KC_LCMMD, KC_LNG2, KC_SPC, KC_LNG1, KC_RCMMD, MO(MAC_FN),MO(FN1), KC_RCTL), - - [WIN_BASE] = LAYOUT_65_jis( - 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_INT3, 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_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_NUHS, 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_INT1, KC_RSFT, - KC_LCTL, KC_LWIN, KC_LALT, KC_INT5, KC_SPC, KC_INT4, KC_RALT, MO(WIN_FN),MO(FN1), KC_RCTL), - - [MAC_FN] = LAYOUT_65_jis( - KC_GRV, KC_BRID, KC_BRIU, KC_MCTL, KC_LPAD, BL_DOWN, BL_UP, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, KC_INS, KC_PGUP, KC_HOME, - BL_TOGG, BL_STEP, BL_UP, _______, _______, _______, _______, _______, KC_UP, KC_SNAP, KC_PGDN, KC_END, _______, _______, - _______, _______, BL_DOWN, _______, _______, _______, NK_TOGG, KC_LEFT, KC_DOWN, KC_RIGHT, KC_DEL, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - - [WIN_FN] = LAYOUT_65_jis( - KC_GRV, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, BL_DOWN, BL_UP, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, KC_APP, KC_SCRL, KC_INS, KC_PGUP, KC_HOME, - BL_TOGG, BL_STEP, BL_UP, _______, _______, _______, _______, _______, KC_UP, KC_PSCR, KC_PGDN, KC_END, _______, _______, - _______, _______, BL_DOWN, _______, _______, _______, NK_TOGG, KC_LEFT, KC_DOWN, KC_RIGHT, KC_DEL, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - - [FN1] = LAYOUT_65_jis( - _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), -}; diff --git a/keyboards/keychron/k9_pro/jis/white/keymaps/via/rules.mk b/keyboards/keychron/k9_pro/jis/white/keymaps/via/rules.mk deleted file mode 100644 index 1e5b99807c..0000000000 --- a/keyboards/keychron/k9_pro/jis/white/keymaps/via/rules.mk +++ /dev/null @@ -1 +0,0 @@ -VIA_ENABLE = yes diff --git a/keyboards/keychron/k9_pro/jis/white/rules.mk b/keyboards/keychron/k9_pro/jis/white/rules.mk deleted file mode 100644 index 6e7633bfe0..0000000000 --- a/keyboards/keychron/k9_pro/jis/white/rules.mk +++ /dev/null @@ -1 +0,0 @@ -# This file intentionally left blank diff --git a/keyboards/keychron/k9_pro/jis/white/white.c b/keyboards/keychron/k9_pro/jis/white/white.c deleted file mode 100644 index 3e89d2b151..0000000000 --- a/keyboards/keychron/k9_pro/jis/white/white.c +++ /dev/null @@ -1,96 +0,0 @@ -/* 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 HNU Heneral 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 - * HNU Heneral Public License for more details. - * - * You should have received a copy of the HNU Heneral Public License - * along with this program. If not, see .g - */ - -#include "quantum.h" - -// clang-format off -#ifdef LED_MATRIX_ENABLE -const snled27351_led_t g_snled27351_leds[LED_MATRIX_LED_COUNT] = { -/* Refer to snled27351manual for these locations - * driver - * | LED address - * | | */ - {0, A_1}, - {0, A_2}, - {0, A_3}, - {0, A_4}, - {0, A_5}, - {0, A_6}, - {0, A_7}, - {0, A_8}, - {0, A_9}, - {0, A_10}, - {0, A_11}, - {0, A_12}, - {0, A_13}, - {0, A_14}, - {0, A_15}, - - {0, B_1}, - {0, B_2}, - {0, B_3}, - {0, B_4}, - {0, B_5}, - {0, B_6}, - {0, B_7}, - {0, B_8}, - {0, B_9}, - {0, B_10}, - {0, B_11}, - {0, B_12}, - {0, B_13}, - - {0, C_1}, - {0, C_2}, - {0, C_3}, - {0, C_4}, - {0, C_5}, - {0, C_6}, - {0, C_7}, - {0, C_8}, - {0, C_9}, - {0, C_10}, - {0, C_11}, - {0, C_12}, - {0, C_14}, - {0, B_14}, - - {0, D_1}, - {0, D_3}, - {0, D_4}, - {0, D_5}, - {0, D_6}, - {0, D_7}, - {0, D_8}, - {0, D_9}, - {0, D_10}, - {0, D_11}, - {0, D_12}, - {0, D_13}, - {0, D_14}, - - {0, E_1}, - {0, E_2}, - {0, E_3}, - {0, E_4}, - {0, E_7}, - {0, E_10}, - {0, E_11}, - {0, E_12}, - {0, E_13}, - {0, E_14}, -}; -#endif diff --git a/keyboards/keychron/k9_pro/k9_pro.c b/keyboards/keychron/k9_pro/k9_pro.c deleted file mode 100644 index 9fd19612ef..0000000000 --- a/keyboards/keychron/k9_pro/k9_pro.c +++ /dev/null @@ -1,308 +0,0 @@ -/* 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 . - */ - -#include "k9_pro.h" -#ifdef KC_BLUETOOTH_ENABLE -# include "ckbt51.h" -# include "bluetooth.h" -# include "indicator.h" -# include "transport.h" -# include "battery.h" -# include "bat_level_animation.h" -# include "lpm.h" -#endif - -#ifdef ENABLE_FACTORY_TEST -# include "factory_test.h" -#endif - -#define POWER_ON_LED_DURATION 3000 - -typedef struct PACKED { - uint8_t len; - uint8_t keycode[3]; -} key_combination_t; - -static uint32_t factory_timer_buffer = 0; -static uint32_t power_on_indicator_timer_buffer = 0; -static uint32_t siri_timer_buffer = 0; -static uint8_t mac_keycode[4] = {KC_LOPT, KC_ROPT, KC_LCMD, KC_RCMD}; - -key_combination_t key_comb_list[4] = { - {2, {KC_LWIN, KC_TAB}}, // Task (win) - {2, {KC_LWIN, KC_E}}, // Files (win) - {3, {KC_LSFT, KC_LGUI, KC_4}}, // Snapshot (mac) - {2, {KC_LWIN, KC_C}} // Cortana (win) -}; - -#ifdef KC_BLUETOOTH_ENABLE -bool firstDisconnect = true; -bool bt_factory_reset = false; -static virtual_timer_t pairing_key_timer; -extern uint8_t g_pwm_buffer[DRIVER_COUNT][192]; - -static void pairing_key_timer_cb(void *arg) { - bluetooth_pairing_ex(*(uint8_t *)arg, NULL); -} -#endif - -bool dip_switch_update_kb(uint8_t index, bool active) { - if (index == 0) { -#ifdef INVERT_OS_SWITCH_STATE - default_layer_set(1UL << (!active ? 1 : 0)); -#else - default_layer_set(1UL << (active ? 1 : 0)); -#endif - } - dip_switch_update_user(index, active); - - return true; -} - -#ifdef KC_BLUETOOTH_ENABLE -bool process_record_kb_bt(uint16_t keycode, keyrecord_t *record) { -#else -bool process_record_kb(uint16_t keycode, keyrecord_t *record) { -#endif - static uint8_t host_idx = 0; - - switch (keycode) { - case KC_LOPTN: - case KC_ROPTN: - case KC_LCMMD: - case KC_RCMMD: - if (record->event.pressed) { - register_code(mac_keycode[keycode - KC_LOPTN]); - } else { - unregister_code(mac_keycode[keycode - KC_LOPTN]); - } - return false; // Skip all further processing of this key) - case KC_TASK: - case KC_FILE: - case KC_SNAP: - case KC_CTANA: - if (record->event.pressed) { - for (uint8_t i = 0; i < key_comb_list[keycode - KC_TASK].len; i++) - register_code(key_comb_list[keycode - KC_TASK].keycode[i]); - } else { - for (uint8_t i = 0; i < key_comb_list[keycode - KC_TASK].len; i++) - unregister_code(key_comb_list[keycode - KC_TASK].keycode[i]); - } - return false; // Skip all further processing of this key - case KC_SIRI: - if (record->event.pressed && siri_timer_buffer == 0) { - register_code(KC_LGUI); - register_code(KC_SPACE); - siri_timer_buffer = sync_timer_read32() == 0 ? 1 : sync_timer_read32(); - } - return false; // Skip all further processing of this key -#ifdef KC_BLUETOOTH_ENABLE - case BT_HST1 ... BT_HST3: - if (get_transport() == TRANSPORT_BLUETOOTH) { - if (record->event.pressed) { - host_idx = keycode - BT_HST1 + 1; - chVTSet(&pairing_key_timer, TIME_MS2I(2000), (vtfunc_t)pairing_key_timer_cb, &host_idx); - bluetooth_connect_ex(host_idx, 0); - } else { - host_idx = 0; - chVTReset(&pairing_key_timer); - } - } - break; - case BAT_LVL: - if (get_transport() == TRANSPORT_BLUETOOTH && !usb_power_connected()) { - bat_level_animiation_start(battery_get_percentage()); - } - break; -#endif - default: -#ifdef FACTORY_RESET_CHECK - FACTORY_RESET_CHECK(keycode, record); -#endif - break; - } - return true; -} - -void keyboard_post_init_kb(void) { - dip_switch_read(true); - -#ifdef KC_BLUETOOTH_ENABLE - palSetLineMode(CKBT51_RESET_PIN, PAL_MODE_OUTPUT_PUSHPULL); - palWriteLine(CKBT51_RESET_PIN, PAL_HIGH); - - /* IMPORTANT: DO NOT enable internal pull-up resistor - * as there is an external pull-down resistor. - */ - palSetLineMode(USB_BT_MODE_SELECT_PIN, PAL_MODE_INPUT); - - ckbt51_init(false); - bluetooth_init(); -#endif - - power_on_indicator_timer_buffer = sync_timer_read32() == 0 ? 1 : sync_timer_read32(); - writePin(BAT_LOW_LED_PIN, BAT_LOW_LED_PIN_ON_STATE); - - keyboard_post_init_user(); -} - -void matrix_scan_kb(void) { - if (power_on_indicator_timer_buffer) { - if (factory_timer_buffer && timer_elapsed32(factory_timer_buffer) > 2000) { - factory_timer_buffer = 0; - if (bt_factory_reset) { - bt_factory_reset = false; - palWriteLine(CKBT51_RESET_PIN, PAL_LOW); - wait_ms(5); - palWriteLine(CKBT51_RESET_PIN, PAL_HIGH); - } - } - - if (sync_timer_elapsed32(power_on_indicator_timer_buffer) > POWER_ON_LED_DURATION) { - power_on_indicator_timer_buffer = 0; - writePin(BAT_LOW_LED_PIN, !BAT_LOW_LED_PIN_ON_STATE); - } else { - writePin(BAT_LOW_LED_PIN, BAT_LOW_LED_PIN_ON_STATE); - } - } - - if (siri_timer_buffer && sync_timer_elapsed32(siri_timer_buffer) > 500) { - siri_timer_buffer = 0; - unregister_code(KC_LGUI); - unregister_code(KC_SPACE); - } - -#ifdef FACTORY_RESET_TASK - FACTORY_RESET_TASK(); -#endif - matrix_scan_user(); -} - -#ifdef KC_BLUETOOTH_ENABLE -static void ckbt51_param_init(void) { - /* Set bluetooth device name */ - ckbt51_set_local_name(PRODUCT); - /* Set bluetooth parameters */ - module_param_t param = {.event_mode = 0x02, - .connected_idle_timeout = 7200, - .pairing_timeout = 180, - .pairing_mode = 0, - .reconnect_timeout = 5, - .report_rate = 90, - .vendor_id_source = 1, - .verndor_id = 0, // Must be 0x3434 - .product_id = PRODUCT_ID}; - ckbt51_set_param(¶m); -} - -void bluetooth_enter_disconnected_kb(uint8_t host_idx) { - if (bt_factory_reset) { - ckbt51_param_init(); - factory_timer_buffer = timer_read32(); - } - /* CKBT51 bluetooth module boot time is slower, it enters disconnected after boot, - so we place initialization here. */ - if (firstDisconnect && sync_timer_read32() < 1000 && get_transport() == TRANSPORT_BLUETOOTH) { - ckbt51_param_init(); - bluetooth_connect(); - firstDisconnect = false; - } -} - -void ckbt51_default_ack_handler(uint8_t *data, uint8_t len) { - if (data[1] == 0x45) { - module_param_t param = {.event_mode = 0x02, - .connected_idle_timeout = 7200, - .pairing_timeout = 180, - .pairing_mode = 0, - .reconnect_timeout = 5, - .report_rate = 90, - .vendor_id_source = 1, - .verndor_id = 0, // Must be 0x3434 - .product_id = PRODUCT_ID}; - ckbt51_set_param(¶m); - } -} - -void bluetooth_pre_task(void) { - static uint8_t mode = 1; - - if (readPin(USB_BT_MODE_SELECT_PIN) != mode) { - if (readPin(USB_BT_MODE_SELECT_PIN) != mode) { - mode = readPin(USB_BT_MODE_SELECT_PIN); - set_transport(mode == 0 ? TRANSPORT_BLUETOOTH : TRANSPORT_USB); - } - } -} -#endif - -void battery_calculte_voltage(uint16_t value) { - uint16_t voltage = ((uint32_t)value) * 2246 / 1000; - -#ifdef LED_MATRIX_ENABLE - if (led_matrix_is_enabled()) { - uint32_t totalBuf = 0; - - for (uint8_t i = 0; i < DRIVER_COUNT; i++) - for (uint8_t j = 0; j < 192; j++) - totalBuf += g_pwm_buffer[i][j]; - /* We assumpt it is linear relationship*/ - voltage += (30 * totalBuf / LED_MATRIX_LED_COUNT / 255); - } -#endif -#ifdef RGB_MATRIX_ENABLE - if (rgb_matrix_is_enabled()) { - uint32_t totalBuf = 0; - - for (uint8_t i = 0; i < DRIVER_COUNT; i++) - for (uint8_t j = 0; j < 192; j++) - totalBuf += g_pwm_buffer[i][j]; - /* We assumpt it is linear relationship*/ - uint32_t compensation = 60 * totalBuf / RGB_MATRIX_LED_COUNT / 255 / 3; - voltage += compensation; - } -#endif - battery_set_voltage(voltage); -} - -bool via_command_kb(uint8_t *data, uint8_t length) { - switch (data[0]) { -#ifdef KC_BLUETOOTH_ENABLE - case 0xAA: - ckbt51_dfu_rx(data, length); - break; -#endif -#ifdef ENABLE_FACTORY_TEST - case 0xAB: - factory_test_rx(data, length); - break; -#endif - default: - return false; - } - - return true; -} - -#if !defined(VIA_ENABLE) -void raw_hid_receive(uint8_t *data, uint8_t length) { - switch (data[0]) { - case RAW_HID_CMD: - via_command_kb(data, length); - break; - } -} -#endif diff --git a/keyboards/keychron/k9_pro/k9_pro.h b/keyboards/keychron/k9_pro/k9_pro.h deleted file mode 100644 index cd0954d579..0000000000 --- a/keyboards/keychron/k9_pro/k9_pro.h +++ /dev/null @@ -1,55 +0,0 @@ -/* 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 . - */ - -#pragma once - -#include "quantum.h" -#ifdef VIA_ENABLE -# include "via.h" -#endif - -#define ___ KC_NO - -#ifdef VIA_ENABLE -# define USER_START QK_KB_0 -#else -# define USER_START SAFE_RANGE -#endif - -// clang-format off -enum { - KC_LOPTN = USER_START, - KC_ROPTN, - KC_LCMMD, - KC_RCMMD, - KC_TASK, - KC_FILE, - KC_SNAP, - KC_CTANA, - KC_SIRI, -#ifdef KC_BLUETOOTH_ENABLE - BT_HST1, - BT_HST2, - BT_HST3, - BAT_LVL, -#else - BT_HST1 = KC_TRNS, - BT_HST2 = KC_TRNS, - BT_HST3 = KC_TRNS, - BAT_LVL = KC_TRNS, -#endif - NEW_SAFE_RANGE -}; diff --git a/keyboards/keychron/k9_pro/matrix.c b/keyboards/keychron/k9_pro/matrix.c deleted file mode 100644 index c6710b22d5..0000000000 --- a/keyboards/keychron/k9_pro/matrix.c +++ /dev/null @@ -1,213 +0,0 @@ -/* 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 . - */ - -#include "quantum.h" - -#define HC595_STCP B0 -#define HC595_SHCP A1 -#define HC595_DS A7 - -pin_t row_pins[MATRIX_ROWS] = MATRIX_ROW_PINS; -pin_t col_pins[MATRIX_COLS] = MATRIX_COL_PINS; - -static inline void setPinOutput_writeLow(pin_t pin) { - ATOMIC_BLOCK_FORCEON { - setPinOutput(pin); - writePinLow(pin); - } -} - -static inline void setPinOutput_writeHigh(pin_t pin) { - ATOMIC_BLOCK_FORCEON { - setPinOutput(pin); - writePinHigh(pin); - } -} - -static inline void setPinInput_high(pin_t pin) { - ATOMIC_BLOCK_FORCEON { - setPinInputHigh(pin); - } -} - -static inline uint8_t readMatrixPin(pin_t pin) { - if (pin != NO_PIN) { - return readPin(pin); - } else { - return 1; - } -} - -static inline void HC595_delay(uint16_t n) { - while (n-- > 0) { - asm volatile("nop" ::: "memory"); - } -} - -static void HC595_output(uint16_t data) { - ATOMIC_BLOCK_FORCEON { - for (uint8_t i = 0; i < MATRIX_COLS; i++) { - if (data & 0x1) { - writePinHigh(HC595_DS); - } else { - writePinLow(HC595_DS); - } - - data = data >> 1; - - writePinHigh(HC595_SHCP); - HC595_delay(1); - writePinLow(HC595_SHCP); - HC595_delay(1); - } - writePinHigh(HC595_STCP); - HC595_delay(1); - writePinLow(HC595_STCP); - HC595_delay(1); - } -} - -static void HC595_output_oneBit(uint8_t data) { - ATOMIC_BLOCK_FORCEON { - if (data & 0x1) { - writePinHigh(HC595_DS); - } else { - writePinLow(HC595_DS); - } - - writePinHigh(HC595_SHCP); - HC595_delay(1); - writePinLow(HC595_SHCP); - HC595_delay(1); - - writePinHigh(HC595_STCP); - HC595_delay(1); - writePinLow(HC595_STCP); - HC595_delay(1); - } -} - -static bool select_col(uint8_t col) { - pin_t pin = col_pins[col]; - - if (pin != NO_PIN) { - setPinOutput_writeLow(pin); - return true; - } else { - if (col == 0) { - HC595_output_oneBit(0x00); - } - return true; - } - return false; -} - -static void unselect_col(uint8_t col) { - pin_t pin = col_pins[col]; - - if (pin != NO_PIN) { -#ifdef MATRIX_UNSELECT_DRIVE_HIGH - setPinOutput_writeHigh(pin); -#else - setPinInput_high(pin); -#endif - } else { - HC595_output_oneBit(0x01); - } -} - -static void unselect_cols(void) { - for (uint8_t x = 0; x < MATRIX_COLS; x++) { - pin_t pin = col_pins[x]; - if (pin != NO_PIN) { -#ifdef MATRIX_UNSELECT_DRIVE_HIGH - setPinOutput_writeHigh(pin); -#else - setPinInput_high(pin); -#endif - } else { - if (x == 0) HC595_output(0xFFFF); - } - } -} - -void select_all_cols(void) { - for (uint8_t x = 0; x < MATRIX_COLS; x++) { - pin_t pin = col_pins[x]; - if (pin != NO_PIN) { - setPinOutput_writeLow(pin); - } else { - if (x == 0) HC595_output(0x0000); - } - } -} - -static void matrix_read_rows_on_col(matrix_row_t current_matrix[], uint8_t current_col, matrix_row_t row_shifter) { - bool key_pressed = false; - - // Select col - if (!select_col(current_col)) { // select col - return; // skip NO_PIN col - } - - matrix_output_select_delay(); - - // For each row... - for (uint8_t row_index = 0; row_index < MATRIX_ROWS; row_index++) { - // Check row pin state - if (readMatrixPin(row_pins[row_index]) == 0) { - // Pin LO, set col bit - current_matrix[row_index] |= row_shifter; - key_pressed = true; - } else { - // Pin HI, clear col bit - current_matrix[row_index] &= ~row_shifter; - } - } - - // Unselect col - unselect_col(current_col); - matrix_output_unselect_delay(current_col, key_pressed); // wait for all Row signals to go HIGH -} - -void matrix_init_custom(void) { - setPinOutput(HC595_DS); - setPinOutput(HC595_STCP); - setPinOutput(HC595_SHCP); - - for (uint8_t x = 0; x < MATRIX_ROWS; x++) { - if (row_pins[x] != NO_PIN) { - setPinInput_high(row_pins[x]); - } - } - - unselect_cols(); -} - -bool matrix_scan_custom(matrix_row_t current_matrix[]) { - matrix_row_t curr_matrix[MATRIX_ROWS] = {0}; - - // Set col, read rows - matrix_row_t row_shifter = MATRIX_ROW_SHIFTER; - for (uint8_t current_col = 0; current_col < MATRIX_COLS; current_col++, row_shifter <<= 1) { - matrix_read_rows_on_col(curr_matrix, current_col, row_shifter); - } - - bool changed = memcmp(current_matrix, curr_matrix, sizeof(curr_matrix)) != 0; - if (changed) memcpy(current_matrix, curr_matrix, sizeof(curr_matrix)); - - return changed; -} diff --git a/keyboards/keychron/k9_pro/mcuconf.h b/keyboards/keychron/k9_pro/mcuconf.h deleted file mode 100644 index 72d4f6795f..0000000000 --- a/keyboards/keychron/k9_pro/mcuconf.h +++ /dev/null @@ -1,37 +0,0 @@ -/* 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 - -/* Set HCLK to 48 MHz as tradeoff of USB lowest clockand and - * lower power comsumption for bluetooth. Will use dynamic - * clock when STM32L4 is supported in ChibiOS */ -#undef STM32_PLLM_VALUE -#define STM32_PLLM_VALUE 2 - -#undef STM32_PLLN_VALUE -#define STM32_PLLN_VALUE 12 - -#undef STM32_I2C_USE_I2C1 -#define STM32_I2C_USE_I2C1 TRUE - -#ifdef KC_BLUETOOTH_ENABLE -# undef STM32_SERIAL_USE_USART2 -# define STM32_SERIAL_USE_USART2 TRUE -#endif diff --git a/keyboards/keychron/k9_pro/readme.md b/keyboards/keychron/k9_pro/readme.md deleted file mode 100644 index 30f6536192..0000000000 --- a/keyboards/keychron/k9_pro/readme.md +++ /dev/null @@ -1,31 +0,0 @@ -# Keychron K9 Pro - -![Keychron K9 Pro](https://github.com/Keychron/ProductImage/blob/main/K_Pro/k9_pro.jpg?raw=true) - -A customizable 60% keyboard. - -* Keyboard Maintainer: [Keychron](https://github.com/keychron) -* Hardware Supported: Keychron K9 Pro -* Hardware Availability: [Keychron K9 Pro QMK/VIA Wireless Custom Mechanical Keyboard](https://www.keychron.com/products/keychron-k9-pro-qmk-via-wireless-custom-mechanical-keyboard) - -Make example for this keyboard (after setting up your build environment): - - make keychron/k9_pro/ansi/rgb:default - make keychron/k9_pro/ansi/white:default - make keychron/k9_pro/iso/rgb:default - make keychron/k9_pro/iso/white:default - make keychron/k9_pro/jis/rgb:default - make keychron/k9_pro/jis/white:default - -Flashing example for this keyboard: - - make keychron/k9_pro/ansi/rgb:default:flash - make keychron/k9_pro/ansi/white:default:flash - make keychron/k9_pro/iso/rgb:default:flash - make keychron/k9_pro/iso/white:default:flash - make keychron/k9_pro/jis/rgb:default:flash - make keychron/k9_pro/jis/white:default:flash - -**Reset Key**: Connect the USB cable, toggle mode switch to "Off", hold down the *Esc* key or reset button underneath space bar, then toggle then switch to "Cable". - -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). diff --git a/keyboards/keychron/k9_pro/rules.mk b/keyboards/keychron/k9_pro/rules.mk deleted file mode 100644 index 1f9fc1ab58..0000000000 --- a/keyboards/keychron/k9_pro/rules.mk +++ /dev/null @@ -1,7 +0,0 @@ -# Enter lower-power sleep mode when on the ChibiOS idle thread -OPT_DEFS += -DCORTEX_ENABLE_WFI_IDLE=TRUE -OPT_DEFS += -DNO_USB_STARTUP_CHECK -DENABLE_FACTORY_TEST - -SRC += matrix.c - -include keyboards/keychron/bluetooth/bluetooth.mk diff --git a/keyboards/keychron/q0_max/board.h b/keyboards/keychron/q0_max/board.h deleted file mode 100644 index 372694871c..0000000000 --- a/keyboards/keychron/q0_max/board.h +++ /dev/null @@ -1,226 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#pragma once - -#include_next - -// clang-format off - -/* Set GPIOA_SWDIO to INPUT & PIN_PUPDR_PULLUP to avoid FLOATING */ -#undef VAL_GPIOA_MODER -#define VAL_GPIOA_MODER (PIN_MODE_INPUT(GPIOA_BUTTON) | \ - PIN_MODE_INPUT(GPIOA_PIN1) | \ - PIN_MODE_INPUT(GPIOA_PIN2) | \ - PIN_MODE_INPUT(GPIOA_PIN3) | \ - PIN_MODE_ALTERNATE(GPIOA_CS43L22_LRCK) |\ - PIN_MODE_ALTERNATE(GPIOA_L3GD20_SCL) | \ - PIN_MODE_ALTERNATE(GPIOA_L3GD20_SD0) | \ - PIN_MODE_ALTERNATE(GPIOA_L3GD20_SDI) | \ - PIN_MODE_INPUT(GPIOA_PIN8) | \ - PIN_MODE_INPUT(GPIOA_VBUS_FS) | \ - PIN_MODE_ALTERNATE(GPIOA_OTG_FS_ID) | \ - PIN_MODE_ALTERNATE(GPIOA_OTG_FS_DM) | \ - PIN_MODE_ALTERNATE(GPIOA_OTG_FS_DP) | \ - PIN_MODE_INPUT(GPIOA_SWDIO) | \ - PIN_MODE_INPUT(GPIOA_SWCLK) | \ - PIN_MODE_INPUT(GPIOA_PIN15)) - -#undef VAL_GPIOA_PUPDR -#define VAL_GPIOA_PUPDR (PIN_PUPDR_FLOATING(GPIOA_BUTTON) | \ - PIN_PUPDR_PULLUP(GPIOA_PIN1) | \ - PIN_PUPDR_PULLUP(GPIOA_PIN2) | \ - PIN_PUPDR_PULLUP(GPIOA_PIN3) | \ - PIN_PUPDR_FLOATING(GPIOA_CS43L22_LRCK) |\ - PIN_PUPDR_FLOATING(GPIOA_L3GD20_SCL) | \ - PIN_PUPDR_PULLUP(GPIOA_L3GD20_SD0) | \ - PIN_PUPDR_PULLUP(GPIOA_L3GD20_SDI) | \ - PIN_PUPDR_PULLUP(GPIOA_PIN8) | \ - PIN_PUPDR_FLOATING(GPIOA_VBUS_FS) | \ - PIN_PUPDR_FLOATING(GPIOA_OTG_FS_ID) | \ - PIN_PUPDR_FLOATING(GPIOA_OTG_FS_DM) | \ - PIN_PUPDR_FLOATING(GPIOA_OTG_FS_DP) | \ - PIN_PUPDR_PULLUP(GPIOA_SWDIO) | \ - PIN_PUPDR_PULLUP(GPIOA_SWCLK) | \ - PIN_PUPDR_PULLUP(GPIOA_PIN15)) - -#undef VAL_GPIOB_MODER -#define VAL_GPIOB_MODER (PIN_MODE_INPUT(GPIOB_PIN0) | \ - PIN_MODE_INPUT(GPIOB_PIN1) | \ - PIN_MODE_INPUT(GPIOB_PIN2) | \ - PIN_MODE_INPUT(GPIOB_SWO) | \ - PIN_MODE_INPUT(GPIOB_PIN4) | \ - PIN_MODE_INPUT(GPIOB_PIN5) | \ - PIN_MODE_INPUT(GPIOB_LSM303DLHC_SCL) | \ - PIN_MODE_INPUT(GPIOB_PIN7) | \ - PIN_MODE_INPUT(GPIOB_PIN8) | \ - PIN_MODE_INPUT(GPIOB_LSM303DLHC_SDA) | \ - PIN_MODE_INPUT(GPIOB_MP45DT02_CLK_IN) |\ - PIN_MODE_INPUT(GPIOB_PIN11) | \ - PIN_MODE_INPUT(GPIOB_PIN12) | \ - PIN_MODE_INPUT(GPIOB_PIN13) | \ - PIN_MODE_INPUT(GPIOB_PIN14) | \ - PIN_MODE_INPUT(GPIOB_PIN15)) - -#undef VAL_GPIOB_PUPDR -#define VAL_GPIOB_PUPDR (PIN_PUPDR_PULLDOWN(GPIOB_PIN0) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN1) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN2) | \ - PIN_PUPDR_PULLDOWN(GPIOB_SWO) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN4) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN5) | \ - PIN_PUPDR_PULLDOWN(GPIOB_LSM303DLHC_SCL) |\ - PIN_PUPDR_PULLDOWN(GPIOB_PIN7) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN8) | \ - PIN_PUPDR_PULLDOWN(GPIOB_LSM303DLHC_SDA) |\ - PIN_PUPDR_PULLDOWN(GPIOB_MP45DT02_CLK_IN) |\ - PIN_PUPDR_PULLDOWN(GPIOB_PIN11) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN12) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN13) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN14) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN15)) - -#undef VAL_GPIOB_AFRL -#define VAL_GPIOB_AFRL (PIN_AFIO_AF(GPIOB_PIN0, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN1, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN2, 0U) | \ - PIN_AFIO_AF(GPIOB_SWO, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN4, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN5, 0U) | \ - PIN_AFIO_AF(GPIOB_LSM303DLHC_SCL, 0) | \ - PIN_AFIO_AF(GPIOB_PIN7, 0U)) - -#undef VAL_GPIOB_AFRH -#define VAL_GPIOB_AFRH (PIN_AFIO_AF(GPIOB_PIN8, 0U) | \ - PIN_AFIO_AF(GPIOB_LSM303DLHC_SDA, 0) | \ - PIN_AFIO_AF(GPIOB_MP45DT02_CLK_IN, 0U) |\ - PIN_AFIO_AF(GPIOB_PIN11, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN12, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN13, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN14, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN15, 0U)) - -/* C5 Need to be pulldown */ -#undef VAL_GPIOC_MODER -#define VAL_GPIOC_MODER (PIN_MODE_INPUT(GPIOC_OTG_FS_POWER_ON) |\ - PIN_MODE_INPUT(GPIOC_PIN1) | \ - PIN_MODE_INPUT(GPIOC_PIN2) | \ - PIN_MODE_INPUT(GPIOC_CS43L22_AIN4x) | \ - PIN_MODE_INPUT(GPIOC_PIN4) | \ - PIN_MODE_INPUT(GPIOC_PIN5) | \ - PIN_MODE_INPUT(GPIOC_PIN6) | \ - PIN_MODE_INPUT(GPIOC_CS43L22_MCLK) | \ - PIN_MODE_INPUT(GPIOC_PIN8) | \ - PIN_MODE_INPUT(GPIOC_PIN9) | \ - PIN_MODE_INPUT(GPIOC_CS43L22_SCLK) | \ - PIN_MODE_INPUT(GPIOC_PIN11) | \ - PIN_MODE_INPUT(GPIOC_CS43L22_SDIN) | \ - PIN_MODE_INPUT(GPIOC_PIN13) | \ - PIN_MODE_INPUT(GPIOC_OSC32_IN) | \ - PIN_MODE_INPUT(GPIOC_OSC32_OUT)) - -#undef VAL_GPIOC_PUPDR -#define VAL_GPIOC_PUPDR (PIN_PUPDR_PULLUP(GPIOC_OTG_FS_POWER_ON) |\ - PIN_PUPDR_PULLUP(GPIOC_PIN1) | \ - PIN_PUPDR_PULLUP(GPIOC_PIN2) | \ - PIN_PUPDR_PULLUP(GPIOC_CS43L22_AIN4x) |\ - PIN_PUPDR_PULLUP(GPIOC_PIN4) | \ - PIN_PUPDR_PULLDOWN(GPIOC_PIN5) | \ - PIN_PUPDR_PULLUP(GPIOC_PIN6) | \ - PIN_PUPDR_PULLUP(GPIOC_CS43L22_MCLK) | \ - PIN_PUPDR_PULLUP(GPIOC_PIN8) | \ - PIN_PUPDR_PULLUP(GPIOC_PIN9) | \ - PIN_PUPDR_PULLUP(GPIOC_CS43L22_SCLK) | \ - PIN_PUPDR_PULLUP(GPIOC_PIN11) | \ - PIN_PUPDR_PULLUP(GPIOC_CS43L22_SDIN) | \ - PIN_PUPDR_PULLUP(GPIOC_PIN13) | \ - PIN_PUPDR_PULLUP(GPIOC_OSC32_IN) | \ - PIN_PUPDR_PULLUP(GPIOC_OSC32_OUT)) - -/* Set all GPIOD pins to INPUT & PULLUP to avoid FLOATING */ -#undef VAL_GPIOD_MODER -#define VAL_GPIOD_MODER (PIN_MODE_INPUT(GPIOD_PIN0) | \ - PIN_MODE_INPUT(GPIOD_PIN1) | \ - PIN_MODE_INPUT(GPIOD_PIN2) | \ - PIN_MODE_INPUT(GPIOD_PIN3) | \ - PIN_MODE_INPUT(GPIOD_CS43L22_RESET) | \ - PIN_MODE_INPUT(GPIOD_OverCurrent) | \ - PIN_MODE_INPUT(GPIOD_PIN6) | \ - PIN_MODE_INPUT(GPIOD_PIN7) | \ - PIN_MODE_INPUT(GPIOD_PIN8) | \ - PIN_MODE_INPUT(GPIOD_PIN9) | \ - PIN_MODE_INPUT(GPIOD_PIN10) | \ - PIN_MODE_INPUT(GPIOD_PIN11) | \ - PIN_MODE_INPUT(GPIOD_LED4) | \ - PIN_MODE_INPUT(GPIOD_LED3) | \ - PIN_MODE_INPUT(GPIOD_LED5) | \ - PIN_MODE_INPUT(GPIOD_LED6)) - -#undef VAL_GPIOD_PUPDR -#define VAL_GPIOD_PUPDR (PIN_PUPDR_PULLUP(GPIOD_PIN0) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN1) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN2) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN3) | \ - PIN_PUPDR_PULLUP(GPIOD_CS43L22_RESET) |\ - PIN_PUPDR_PULLUP(GPIOD_OverCurrent) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN6) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN7) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN8) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN9) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN10) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN11) | \ - PIN_PUPDR_PULLUP(GPIOD_LED4) | \ - PIN_PUPDR_PULLUP(GPIOD_LED3) | \ - PIN_PUPDR_PULLUP(GPIOD_LED5) | \ - PIN_PUPDR_PULLUP(GPIOD_LED6)) - -/* Set all GPIOE pins to INPUT & PULLUP to avoid FLOATING */ -#undef VAL_GPIOE_MODER -#define VAL_GPIOE_MODER (PIN_MODE_INPUT(GPIOE_L3GD20_INT1) | \ - PIN_MODE_INPUT(GPIOE_L3GD20_INT2) | \ - PIN_MODE_INPUT(GPIOE_LSM303DLHC_DRDY) |\ - PIN_MODE_INPUT(GPIOE_L3GD20_CS) | \ - PIN_MODE_INPUT(GPIOE_LSM303DLHC_INT1) |\ - PIN_MODE_INPUT(GPIOE_LSM303DLHC_INT2) |\ - PIN_MODE_INPUT(GPIOE_PIN6) | \ - PIN_MODE_INPUT(GPIOE_PIN7) | \ - PIN_MODE_INPUT(GPIOE_PIN8) | \ - PIN_MODE_INPUT(GPIOE_PIN9) | \ - PIN_MODE_INPUT(GPIOE_PIN10) | \ - PIN_MODE_INPUT(GPIOE_PIN11) | \ - PIN_MODE_INPUT(GPIOE_PIN12) | \ - PIN_MODE_INPUT(GPIOE_PIN13) | \ - PIN_MODE_INPUT(GPIOE_PIN14) | \ - PIN_MODE_INPUT(GPIOE_PIN15)) - -#undef VAL_GPIOE_PUPDR -#define VAL_GPIOE_PUPDR (PIN_PUPDR_PULLUP(GPIOE_L3GD20_INT1) | \ - PIN_PUPDR_PULLUP(GPIOE_L3GD20_INT2) | \ - PIN_PUPDR_PULLUP(GPIOE_LSM303DLHC_DRDY) |\ - PIN_PUPDR_PULLUP(GPIOE_L3GD20_CS) | \ - PIN_PUPDR_PULLUP(GPIOE_LSM303DLHC_INT1) |\ - PIN_PUPDR_PULLUP(GPIOE_LSM303DLHC_INT2) |\ - PIN_PUPDR_PULLUP(GPIOE_PIN6) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN7) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN8) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN9) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN10) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN11) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN12) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN13) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN14) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN15)) - diff --git a/keyboards/keychron/q0_max/config.h b/keyboards/keychron/q0_max/config.h deleted file mode 100644 index cb5f133002..0000000000 --- a/keyboards/keychron/q0_max/config.h +++ /dev/null @@ -1,82 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#pragma once - -/* Encoder Configuration */ -#define ENCODER_DEFAULT_POS 0x3 -#define ENCODER_MAP_KEY_DELAY 2 - -#ifdef LK_WIRELESS_ENABLE -/* Hardware configuration */ -# define P2P4_MODE_SELECT_PIN A10 -# define BT_MODE_SELECT_PIN A9 - -# define LKBT51_RESET_PIN C4 -# define LKBT51_INT_INPUT_PIN B0 -# define BLUETOOTH_INT_OUTPUT_PIN A4 - -# define USB_POWER_SENSE_PIN B1 -# define USB_POWER_CONNECTED_LEVEL 0 - -# define BAT_CHARGING_PIN C11 -# define BAT_CHARGING_LEVEL 0 - -# define BT_HOST_DEVICES_COUNT 3 - -# if defined(RGB_MATRIX_ENABLE) - -# define LED_DRIVER_SHUTDOWN_PIN A2 - -# define BT_HOST_LED_MATRIX_LIST \ - { 0, 1, 2 } - -# define P2P4G_HOST_LED_MATRIX_LIST \ - { 3 } - -/* 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 - -/* Reinit LED driver on tranport changed */ -# define REINIT_LED_DRIVER 1 - -# endif - -/* Keep USB connection in blueooth mode */ -# define KEEP_USB_CONNECTION_IN_WIRELESS_MODE - -/* Enable bluetooth NKRO */ -# define WIRELESS_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 - -/* Factory test keys */ -#define FN_KEY_1 MO(1) -#define FN_BL_TRIG_KEY KC_PMNS - -#define BL_CYCLE_KEY KC_MPLY -#define FN_Z_KEY RGB_SAD -#define FN_J_KEY RGB_HUD - -#define MATRIX_IO_DELAY 10 diff --git a/keyboards/keychron/q0_max/encoder/config.h b/keyboards/keychron/q0_max/encoder/config.h deleted file mode 100644 index a01825761e..0000000000 --- a/keyboards/keychron/q0_max/encoder/config.h +++ /dev/null @@ -1,58 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#pragma once - -#ifdef RGB_MATRIX_ENABLE -/* RGB Matrix driver configuration */ -# define DRIVER_COUNT 1 -# define RGB_MATRIX_LED_COUNT 26 - -# define SPI_SCK_PIN A5 -# define SPI_MISO_PIN A6 -# define SPI_MOSI_PIN A7 - -# define DRIVER_CS_PINS \ - { A3 } -# define SNLED23751_SPI_DIVISOR 16 -# define SPI_DRIVER SPID1 - -/* Scan phase of led driver set as MSKPHASE_12CHANNEL(defined as 0x03 in snled27351.h) */ -# define SNLED27351_PHASE_CHANNEL MSKPHASE_12CHANNEL - -/* Set LED driver current */ -# define SNLED27351_CURRENT_TUNE \ - { 0x9A, 0x9A, 0x9A, 0x9A, 0x9A, 0x9A, 0x9A, 0x9A, 0x9A, 0x9A, 0x9A, 0x9A } - -/* Allow shutdown of led driver to save power */ -# define RGB_MATRIX_DRIVER_SHUTDOWN_ENABLE -/* Set to infinit, which is use in USB mode by default */ -# define RGB_MATRIX_TIMEOUT RGB_MATRIX_TIMEOUT_INFINITE - -/* Turn off backlight on low brightness to save power */ -# define RGB_MATRIX_BRIGHTNESS_TURN_OFF_VAL 32 - -/* Indications */ -# define NUM_LOCK_INDEX 5 -# define LOW_BAT_IND_INDEX { 24 } - -# define RGB_MATRIX_KEYPRESSES -# define RGB_MATRIX_FRAMEBUFFER_EFFECTS - -# define BOOTMAGIC_LITE_ROW 0 -# define BOOTMAGIC_LITE_COLUMN 1 - -#endif diff --git a/keyboards/keychron/q0_max/encoder/encoder.c b/keyboards/keychron/q0_max/encoder/encoder.c deleted file mode 100644 index 2104de2680..0000000000 --- a/keyboards/keychron/q0_max/encoder/encoder.c +++ /dev/null @@ -1,94 +0,0 @@ -/* Copyright 2024 @ 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/>. - */ - -#include "quantum.h" - -// clang-format off - -#ifdef RGB_MATRIX_ENABLE -const snled27351_led_t g_snled27351_leds[RGB_MATRIX_LED_COUNT] = { -/* Refer to SNLED27351 manual for these locations - * driver - * | R location - * | | G location - * | | | B location - * | | | | */ - {0, J_2, L_2, K_2}, - {0, J_3, L_3, K_3}, - {0, J_4, L_4, K_4}, - {0, J_5, L_5, K_5}, - - {0, J_6, L_6, K_6}, - {0, J_7, L_7, K_7}, - {0, J_8, L_8, K_8}, - {0, J_9, L_9, K_9}, - {0, J_10, L_10, K_10}, - - {0, G_1, I_1, H_1}, - {0, G_2, I_2, H_2}, - {0, G_3, I_3, H_3}, - {0, G_4, I_4, H_4}, - {0, G_5, I_5, H_5}, - - {0, G_6, I_6, H_6}, - {0, G_7, I_7, H_7}, - {0, G_8, I_8, H_8}, - {0, G_9, I_9, H_9}, - - {0, A_1, C_1, B_1}, - {0, A_2, C_2, B_2}, - {0, A_3, C_3, B_3}, - {0, A_4, C_4, B_4}, - {0, A_5, C_5, B_5}, - - {0, A_6, C_6, B_6}, - {0, A_7, C_7, B_7}, - {0, A_9, C_9, B_9}, -}; - -#define __ NO_LED - -led_config_t g_led_config = { - { - // Key Matrix to LED Index - { __, 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, __ } - - }, - { - // LED Index to Physical Position - {102, 0},{117, 0}, {132, 0}, {147, 0}, - {87,15}, {102,15},{117,15}, {132,15}, {147,15}, - {87,26}, {102,26},{117,26}, {132,26}, {147,32}, - {87,38}, {102,38},{117,38}, {132,38}, - {87,49}, {102,49},{117,49}, {132,49}, {147,55}, - {87,61}, {110,61}, {132,61}, - }, - { - // RGB LED Index to Flag - 1, 1, 1, 1, - 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, - 1, 1, 1, 1, - 1, 1, 1, 1, 1, - 1, 1, 1, - } -}; -#endif diff --git a/keyboards/keychron/q0_max/encoder/info.json b/keyboards/keychron/q0_max/encoder/info.json deleted file mode 100644 index 6b2747e73b..0000000000 --- a/keyboards/keychron/q0_max/encoder/info.json +++ /dev/null @@ -1,44 +0,0 @@ -{ - "usb": { - "pid": "0x0800", - "device_version": "1.0.0" - }, - "layouts": { - "LAYOUT_tenkey_27": { - "layout": [ - {"matrix": [0, 0], "x": 0, "y": 0}, - {"matrix": [0, 1], "x": 1.25, "y": 0}, - {"matrix": [0, 2], "x": 2.25, "y": 0}, - {"matrix": [0, 3], "x": 3.25, "y": 0}, - {"matrix": [0, 4], "x": 4.25, "y": 0}, - - {"matrix": [1, 0], "x": 0, "y": 1.25}, - {"matrix": [1, 1], "x": 1.25, "y": 1.25}, - {"matrix": [1, 2], "x": 2.25, "y": 1.25}, - {"matrix": [1, 3], "x": 3.25, "y": 1.25}, - {"matrix": [1, 4], "x": 4.25, "y": 1.25}, - - {"matrix": [2, 0], "x": 0, "y": 2.25}, - {"matrix": [2, 1], "x": 1.25, "y": 2.25}, - {"matrix": [2, 2], "x": 2.25, "y": 2.25}, - {"matrix": [2, 3], "x": 3.25, "y": 2.25}, - {"matrix": [2, 4], "x": 4.25, "y": 2.25, "h": 2}, - - {"matrix": [3, 0], "x": 0, "y": 3.25}, - {"matrix": [3, 1], "x": 1.25, "y": 3.25}, - {"matrix": [3, 2], "x": 2.25, "y": 3.25}, - {"matrix": [3, 3], "x": 3.25, "y": 3.25}, - - {"matrix": [4, 0], "x": 0, "y": 4.25}, - {"matrix": [4, 1], "x": 1.25, "y": 4.25}, - {"matrix": [4, 2], "x": 2.25, "y": 4.25}, - {"matrix": [4, 3], "x": 3.25, "y": 4.25}, - {"matrix": [4, 4], "x": 4.25, "y": 4.25,"h": 2}, - - {"matrix": [5, 0], "x": 0, "y": 5.25}, - {"matrix": [5, 1], "x": 1.25,"y": 5.25, "w": 2}, - {"matrix": [5, 3], "x": 3.25,"y": 5.25}, - ] - } - } -} diff --git a/keyboards/keychron/q0_max/encoder/keymaps/default/keymap.c b/keyboards/keychron/q0_max/encoder/keymaps/default/keymap.c deleted file mode 100644 index 93c4b89b8c..0000000000 --- a/keyboards/keychron/q0_max/encoder/keymaps/default/keymap.c +++ /dev/null @@ -1,76 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#include QMK_KEYBOARD_H -#include "keychron_common.h" - -enum layers { - BASE, - FN, - L2, - L3, -}; -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [BASE] = LAYOUT_tenkey_27( - KC_MUTE, KC_ESC, KC_DEL, KC_TAB, KC_BSPC, - MC_1, KC_NUM, KC_PSLS,KC_PAST,KC_PMNS, - MC_2, KC_P7, KC_P8, KC_P9, KC_PPLS, - MC_3, KC_P4, KC_P5, KC_P6, - MC_4, KC_P1, KC_P2, KC_P3, KC_PENT, - MO(FN), KC_P0, KC_PDOT ), - - [FN] = LAYOUT_tenkey_27( - RGB_TOG, BT_HST1, BT_HST2, BT_HST3, P2P4G, - _______, RGB_MOD, RGB_VAI, RGB_HUI, _______, - _______, RGB_RMOD,RGB_VAD, RGB_HUD, _______, - _______, RGB_SAI, RGB_SPI, KC_MPRV, - _______, RGB_SAD, RGB_SPD, KC_MPLY, _______, - _______, RGB_TOG, KC_MNXT ), - - [L2] = LAYOUT_tenkey_27( - _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, - _______, _______, _______, _______, - _______, _______, _______, _______, _______, - _______, _______, _______ ), - - [L3] = LAYOUT_tenkey_27( - _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, - _______, _______, _______, _______, - _______, _______, _______, _______, _______, - _______, _______, _______ ) -}; - -// clang-format on -#if defined(ENCODER_MAP_ENABLE) -const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][2] = { - [BASE] = {ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [FN] = {ENCODER_CCW_CW(RGB_VAD, RGB_VAI)}, - [L2] = {ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [L3] = {ENCODER_CCW_CW(RGB_VAD, RGB_VAI)}, -}; -#endif // ENCODER_MAP_ENABLE - -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - if (!process_record_keychron_common(keycode, record)) { - return false; - } - return true; -} diff --git a/keyboards/keychron/q0_max/encoder/keymaps/via/keymap.c b/keyboards/keychron/q0_max/encoder/keymaps/via/keymap.c deleted file mode 100644 index 93c4b89b8c..0000000000 --- a/keyboards/keychron/q0_max/encoder/keymaps/via/keymap.c +++ /dev/null @@ -1,76 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#include QMK_KEYBOARD_H -#include "keychron_common.h" - -enum layers { - BASE, - FN, - L2, - L3, -}; -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [BASE] = LAYOUT_tenkey_27( - KC_MUTE, KC_ESC, KC_DEL, KC_TAB, KC_BSPC, - MC_1, KC_NUM, KC_PSLS,KC_PAST,KC_PMNS, - MC_2, KC_P7, KC_P8, KC_P9, KC_PPLS, - MC_3, KC_P4, KC_P5, KC_P6, - MC_4, KC_P1, KC_P2, KC_P3, KC_PENT, - MO(FN), KC_P0, KC_PDOT ), - - [FN] = LAYOUT_tenkey_27( - RGB_TOG, BT_HST1, BT_HST2, BT_HST3, P2P4G, - _______, RGB_MOD, RGB_VAI, RGB_HUI, _______, - _______, RGB_RMOD,RGB_VAD, RGB_HUD, _______, - _______, RGB_SAI, RGB_SPI, KC_MPRV, - _______, RGB_SAD, RGB_SPD, KC_MPLY, _______, - _______, RGB_TOG, KC_MNXT ), - - [L2] = LAYOUT_tenkey_27( - _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, - _______, _______, _______, _______, - _______, _______, _______, _______, _______, - _______, _______, _______ ), - - [L3] = LAYOUT_tenkey_27( - _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, - _______, _______, _______, _______, - _______, _______, _______, _______, _______, - _______, _______, _______ ) -}; - -// clang-format on -#if defined(ENCODER_MAP_ENABLE) -const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][2] = { - [BASE] = {ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [FN] = {ENCODER_CCW_CW(RGB_VAD, RGB_VAI)}, - [L2] = {ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [L3] = {ENCODER_CCW_CW(RGB_VAD, RGB_VAI)}, -}; -#endif // ENCODER_MAP_ENABLE - -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - if (!process_record_keychron_common(keycode, record)) { - return false; - } - return true; -} diff --git a/keyboards/keychron/q0_max/encoder/keymaps/via/rules.mk b/keyboards/keychron/q0_max/encoder/keymaps/via/rules.mk deleted file mode 100644 index 1e5b99807c..0000000000 --- a/keyboards/keychron/q0_max/encoder/keymaps/via/rules.mk +++ /dev/null @@ -1 +0,0 @@ -VIA_ENABLE = yes diff --git a/keyboards/keychron/q0_max/encoder/rules.mk b/keyboards/keychron/q0_max/encoder/rules.mk deleted file mode 100644 index 7ff128fa69..0000000000 --- a/keyboards/keychron/q0_max/encoder/rules.mk +++ /dev/null @@ -1 +0,0 @@ -# This file intentionally left blank \ No newline at end of file diff --git a/keyboards/keychron/q0_max/firmware/keychron_q0_max_encoder_via.bin b/keyboards/keychron/q0_max/firmware/keychron_q0_max_encoder_via.bin deleted file mode 100644 index 4f79dfb242..0000000000 Binary files a/keyboards/keychron/q0_max/firmware/keychron_q0_max_encoder_via.bin and /dev/null differ diff --git a/keyboards/keychron/q0_max/halconf.h b/keyboards/keychron/q0_max/halconf.h deleted file mode 100644 index 37bcc7c47b..0000000000 --- a/keyboards/keychron/q0_max/halconf.h +++ /dev/null @@ -1,31 +0,0 @@ -/* Copyright 2024 @ 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 - -#define _CHIBIOS_HAL_CONF_VER_8_0_ - -#define HAL_USE_SPI TRUE - -#ifdef LK_WIRELESS_ENABLE -# define HAL_USE_RTC TRUE -#endif - -#if defined(LK_WIRELESS_ENABLE) || defined(ENCODER_ENABLE) -# define PAL_USE_CALLBACKS TRUE -#endif - -#include_next diff --git a/keyboards/keychron/q0_max/info.json b/keyboards/keychron/q0_max/info.json deleted file mode 100644 index cb3afc5848..0000000000 --- a/keyboards/keychron/q0_max/info.json +++ /dev/null @@ -1,74 +0,0 @@ -{ - "keyboard_name": "Keychron Q0 Max", - "manufacturer": "Keychron", - "url": "https://github.com/Keychron", - "maintainer": "Joe", - "processor": "STM32F401", - "bootloader": "stm32-dfu", - "usb": { - "vid": "0x3434" - }, - "features": { - "bootmagic": true, - "extrakey" : true, - "mousekey" : true, - "dip_switch" : false, - "encoder": true, - "encoder_map": true, - "nkro" : true, - "rgb_matrix": true, - "raw" : true, - "sendstring" : true - }, - "matrix_pins": { - "cols": ["B15", "C6", "C7", "C8", "C9"], - "rows": ["B6", "B5", "B4", "B3", "D2", "C12"] - }, - "diode_direction": "ROW2COL", - "encoder": { - "rotary": [ - { - "pin_a": "B13", - "pin_b": "B14" - } - ] - }, - "rgb_matrix": { - "driver": "snled27351_spi", - "sleep": true, - "animations": { - "band_spiral_val": true, - "breathing": true, - "cycle_all": true, - "cycle_left_right": true, - "cycle_out_in": true, - "cycle_out_in_dual": true, - "cycle_pinwheel": true, - "cycle_spiral": true, - "cycle_up_down": true, - "digital_rain": true, - "dual_beacon": true, - "jellybean_raindrops": true, - "pixel_rain": true, - "rainbow_beacon": true, - "rainbow_moving_chevron": true, - "solid_reactive_multinexus": true, - "solid_reactive_multiwide": true, - "solid_reactive_simple": true, - "solid_splash": true, - "splash": true, - "typing_heatmap": true - } - }, - "eeprom": { - "wear_leveling": { - "driver": "embedded_flash", - "logical_size": 2048, - "backing_size": 4096 - } - }, - "build": { - "debounce_type": "sym_eager_pk" - }, - "debounce": 20 -} diff --git a/keyboards/keychron/q0_max/mcuconf.h b/keyboards/keychron/q0_max/mcuconf.h deleted file mode 100644 index 89294ee64b..0000000000 --- a/keyboards/keychron/q0_max/mcuconf.h +++ /dev/null @@ -1,37 +0,0 @@ -/* Copyright 2024 @ 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 - -#include_next - -#undef STM32_HSECLK -#define STM32_HSECLK 16000000 - -#undef STM32_PLLM_VALUE -#define STM32_PLLM_VALUE 8 - -#undef STM32_PLLN_VALUE -#define STM32_PLLN_VALUE 96 - -#undef STM32_PLLP_VALUE -#define STM32_PLLP_VALUE 4 - -#undef STM32_PLLQ_VALUE -#define STM32_PLLQ_VALUE 4 - -#undef STM32_SPI_USE_SPI1 -#define STM32_SPI_USE_SPI1 TRUE diff --git a/keyboards/keychron/q0_max/q0_max.c b/keyboards/keychron/q0_max/q0_max.c deleted file mode 100644 index 050c4cb040..0000000000 --- a/keyboards/keychron/q0_max/q0_max.c +++ /dev/null @@ -1,50 +0,0 @@ -/* Copyright 2024 @ 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/>. - */ - -#include "quantum.h" -#include "keychron_task.h" -#ifdef FACTORY_TEST_ENABLE -# include "factory_test.h" -# include "keychron_common.h" -#endif -#ifdef LK_WIRELESS_ENABLE -# include "lkbt51.h" -# include "wireless.h" -# include "keychron_wireless_common.h" -# include "battery.h" -#endif - -void keyboard_post_init_kb(void) { -#ifdef LK_WIRELESS_ENABLE - palSetLineMode(P2P4_MODE_SELECT_PIN, PAL_MODE_INPUT); - palSetLineMode(BT_MODE_SELECT_PIN, PAL_MODE_INPUT); - - lkbt51_init(false); - wireless_init(); -#endif - -#ifdef ENCODER_ENABLE - encoder_cb_init(); -#endif - - keyboard_post_init_user(); -} - -#ifdef LK_WIRELESS_ENABLE -bool lpm_is_kb_idle(void) { - return !factory_reset_indicating(); -} -#endif diff --git a/keyboards/keychron/q0_max/readme.md b/keyboards/keychron/q0_max/readme.md deleted file mode 100644 index a20fac3462..0000000000 --- a/keyboards/keychron/q0_max/readme.md +++ /dev/null @@ -1,21 +0,0 @@ -# Keychron Q0 Max - -![Keychron Q0 Max](https://www.keychron.com/cdn/shop/files/Keychron-Q0-Max-White_2048x.jpg?v=1709610279) - -A customizable number keypad. - -* Keyboard Maintainer: [Keychron](https://github.com/keychron) -* Hardware Supported: Keychron Q0 Max -* Hardware Availability: [Keychron Q0 Max QMK/VIA Wireless Custom Mechanical Keyboard](https://www.keychron.com/products/keychron-q0-max-qmk-custom-number-pad) - -Make example for this keyboard (after setting up your build environment): - - make keychron/q0_max/encoder:default - -Flashing example for this keyboard: - - make keychron/q0_max/encoder:default:flash - -**Reset Key**: Disconnect the USB cable, toggle mode switch to "Cable", hold down the *O* key or reset button underneath *0*, then connect the USB cable. - -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). diff --git a/keyboards/keychron/q0_max/rules.mk b/keyboards/keychron/q0_max/rules.mk deleted file mode 100644 index 4eaf6820bc..0000000000 --- a/keyboards/keychron/q0_max/rules.mk +++ /dev/null @@ -1,4 +0,0 @@ -include keyboards/keychron/common/wireless/wireless.mk -include keyboards/keychron/common/keychron_common.mk - -VPATH += $(TOP_DIR)/keyboards/keychron diff --git a/keyboards/keychron/q0_max/via_json/q0_max_encoder.json b/keyboards/keychron/q0_max/via_json/q0_max_encoder.json deleted file mode 100644 index f225749ef5..0000000000 --- a/keyboards/keychron/q0_max/via_json/q0_max_encoder.json +++ /dev/null @@ -1,137 +0,0 @@ -{ - "name": "Keychron Q0 Max Knob", - "vendorId": "0x3434", - "productId": "0x0800", - "keycodes": ["qmk_lighting"], - "menus": [ - { - "label": "Lighting", - "content": [ - { - "label": "Backlight", - "content": [ - { - "label": "Brightness", - "type": "range", - "options": [0, 255], - "content": ["id_qmk_rgb_matrix_brightness", 3, 1] - }, - { - "label": "Effect", - "type": "dropdown", - "content": ["id_qmk_rgb_matrix_effect", 3, 2], - "options": [ - ["None", 0], - ["Solid Color", 1], - ["Breathing", 2], - ["Band Spiral Val", 3], - ["Cycle All", 4], - ["Cycle Left Right", 5], - ["Cycle Up Down", 6], - ["Rainbow Moving Chevron", 7], - ["Cycle Out In", 8], - ["Cycle Out In Dual", 9], - ["Cycle Pinwheel", 10], - ["Cycle Spiral", 11], - ["Dual Beacon", 12], - ["Rainbow Beacon", 13], - ["Jellybean Raindrops", 14], - ["Pixel Rain", 15], - ["Typing Heatmap", 16], - ["Digital Rain", 17], - ["Reactive Simple", 18], - ["Reactive Multiwide", 19], - ["Reactive Multinexus", 20], - ["Splash", 21], - ["Solid Splash", 22] - ] - }, - { - "showIf": "{id_qmk_rgb_matrix_effect} > 1", - "label": "Effect Speed", - "type": "range", - "options": [0, 255], - "content": ["id_qmk_rgb_matrix_effect_speed", 3, 3] - }, - { - "showIf": "{id_qmk_rgb_matrix_effect} != 0 && ( {id_qmk_rgb_matrix_effect} < 4 || {id_qmk_rgb_matrix_effect} == 18 || ({id_qmk_rgb_matrix_effect} > 17 && {id_qmk_rgb_matrix_effect} != 21) ) ", - "label": "Color", - "type": "color", - "content": ["id_qmk_rgb_matrix_color", 3, 4] - } - ] - } - ] - } - ], - "matrix": {"rows": 6, "cols": 5}, - "customKeycodes": [ - {"name": "Left Option", "title": "Left Option", "shortName": "LOpt"}, - {"name": "Right Option", "title": "Right Option", "shortName": "ROpt"}, - {"name": "Left Cmd", "title": "Left Command", "shortName": "LCmd"}, - {"name": "Right Cmd", "title": "Right Command", "shortName": "RCmd"}, - {"name": "Misson Control", "title": "Misson Control, availabe in macOS", "shortName": "MCtrl"}, - {"name": "Launch pad", "title": "Launch pad, availabe in macOS", "shortName": "LPad"}, - {"name": "Task View", "title": "Task View in Windows", "shortName": "Task"}, - {"name": "File Explorer", "title": "File Explorer in Windows", "shortName": "File"}, - {"name": "Screen shot", "title": "Screenshot in macOS", "shortName": "SShot"}, - {"name": "Cortana", "title": "Cortana in Windows", "shortName": "Cortana"}, - {"name": "Siri", "title": "Siri in macOS", "shortName": "Siri"}, - {"name": "Bluetooth Host 1", "title": "Bluetooth Host 1", "shortName": "BTH1"}, - {"name": "Bluetooth Host 2", "title": "Bluetooth Host 2", "shortName": "BTH2"}, - {"name": "Bluetooth Host 3", "title": "Bluetooth Host 3", "shortName": "BTH3"}, - {"name": "2.4G", "title": "2.4G", "shortName": "2.4G"} - ], - "layouts": { - "keymap":[ - [ - "0,0\n\n\n\n\n\n\n\n\ne0", - {"x": 0.25}, - "0,1", - "0,2", - "0,3", - "0,4" - ], - [ - {"y": 0.25}, - "1,0", - {"x": 0.25}, - "1,1", - "1,2", - "1,3", - "1,4" - ], - [ - "2,0", - {"x": 0.25}, - "2,1", - "2,2", - "2,3", - {"h": 2}, - "2,4" - ], - [ - "3,0", - {"x": 0.25}, - "3,1", - "3,2", - "3,3" - ], - [ - "4,0", - {"x": 0.25}, - "4,1", - "4,2", - "4,3", - {"h": 2}, - "4,4" - ], - [ - "5,0", - {"x": 0.25, "w": 2}, - "5,1", - "5,3" - ] - ] - } -} diff --git a/keyboards/keychron/q10_max/ansi_encoder/ansi_encoder.c b/keyboards/keychron/q10_max/ansi_encoder/ansi_encoder.c deleted file mode 100644 index 885d3019e8..0000000000 --- a/keyboards/keychron/q10_max/ansi_encoder/ansi_encoder.c +++ /dev/null @@ -1,156 +0,0 @@ -/* Copyright 2024 @ 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/>. - */ - -#include "quantum.h" - -// clang-format off - -#ifdef RGB_MATRIX_ENABLE -const snled27351_led_t g_snled27351_leds[RGB_MATRIX_LED_COUNT] = { -/* Refer to SNLED27351 manual for these locations - * driver - * | R location - * | | G location - * | | | B location - * | | | | */ - {0, F_2, D_2, E_2}, - {0, F_3, D_3, E_3}, - {0, F_4, D_4, E_4}, - {0, F_5, D_5, E_5}, - {0, F_6, D_6, E_6}, - {0, F_7, D_7, E_7}, - {0, F_8, D_8, E_8}, - {0, F_9, D_9, E_9}, - {0, F_10, D_10, E_10}, - {0, F_11, D_11, E_11}, - {0, F_12, D_12, E_12}, - {0, F_13, D_13, E_13}, - {0, F_14, D_14, E_14}, - {0, F_15, D_15, E_15}, - {0, F_16, D_16, E_16}, - - {0, L_1, J_1, K_1}, - {0, L_2, J_2, K_2}, - {0, L_3, J_3, K_3}, - {0, L_4, J_4, K_4}, - {0, L_5, J_5, K_5}, - {0, L_6, J_6, K_6}, - {0, L_7, J_7, K_7}, - {0, L_8, J_8, K_8}, - {0, L_9, J_9, K_9}, - {0, L_10, J_10, K_10}, - {0, L_11, J_11, K_11}, - {0, L_12, J_12, K_12}, - {0, L_13, J_13, K_13}, - {0, L_14, J_14, K_14}, - {0, L_15, J_15, K_15}, - {0, L_16, J_16, K_16}, - - {0, C_1, A_1, B_1}, - {0, C_2, A_2, B_2}, - {0, C_3, A_3, B_3}, - {0, C_4, A_4, B_4}, - {0, C_5, A_5, B_5}, - {0, C_6, A_6, B_6}, - {0, C_7, A_7, B_7}, - {0, C_8, A_8, B_8}, - {0, C_9, A_9, B_9}, - {0, C_10, A_10, B_10}, - {0, C_11, A_11, B_11}, - {0, C_12, A_12, B_12}, - {0, C_13, A_13, B_13}, - {0, C_14, A_14, B_14}, - {0, C_15, A_15, B_15}, - {0, C_16, A_16, B_16}, - - {1, C_16, A_16, B_16}, - {1, C_15, A_15, B_15}, - {1, C_14, A_14, B_14}, - {1, C_13, A_13, B_13}, - {1, C_12, A_12, B_12}, - {1, C_11, A_11, B_11}, - {1, C_10, A_10, B_10}, - {1, C_8, A_8, B_8}, - {1, C_7, A_7, B_7}, - {1, C_6, A_6, B_6}, - {1, C_5, A_5, B_5}, - {1, C_4, A_4, B_4}, - {1, C_3, A_3, B_3}, - {1, C_2, A_2, B_2}, - {1, C_1, A_1, B_1}, - - {1, I_16, G_16, H_16}, - {1, I_15, G_15, H_15}, - {1, I_13, G_13, H_13}, - {1, I_12, G_12, H_12}, - {1, I_11, G_11, H_11}, - {1, I_10, G_10, H_10}, - {1, I_9, G_9, H_9}, - {1, I_8, G_8, H_8}, - {1, I_7, G_7, H_7}, - {1, I_6, G_6, H_6}, - {1, I_5, G_5, H_5}, - {1, I_4, G_4, H_4}, - {1, I_3, G_3, H_3}, - {1, I_2, G_2, H_2}, - {1, I_1, G_1, H_1}, - - {1, F_16, D_16, E_16}, - {1, F_15, D_15, E_15}, - {1, F_14, D_14, E_14}, - {1, F_13, D_13, E_13}, - {1, F_12, D_12, E_12}, - {1, F_9, D_9, E_9}, - {1, F_8, D_8, E_8}, - {1, F_7, D_7, E_7}, - {1, F_6, D_6, E_6}, - {1, F_3, D_3, E_3}, - {1, F_2, D_2, E_2}, - {1, F_1, D_1, E_1}, -}; - -#define __ NO_LED - -led_config_t g_led_config = { - { - // Key Matrix to LED Index - { __, 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, 40, 41, 42, 43, 44, 45, 46 }, - { 47, 48, 49, 50, 51, 52, 53, __, 54, 55, 56, 57, 58, 59, 60, 61 }, - { 62, 63, __, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76 }, - { 77, 78, 79, 80, 81, __, __, 82, 83, 84, 85, __, __, 86, 87, 88 }, - }, - { - // LED Index to Physical Position - {19, 0}, {34, 0}, {46, 0}, {59, 1}, {71, 3}, {86, 6}, { 98, 8}, {121, 8}, {133, 6}, {147, 3}, {159, 1}, {173, 0}, {185, 0}, {203, 0}, {220, 0}, - {5,14}, {24,14}, {36,14}, {48,13}, {61,15}, {73,17}, {85,20}, { 97,22}, {116,22}, {128,20}, {140,17}, {152,15}, {165,13}, {177,14}, {195,14}, {220,14}, - {4,24}, {24,24}, {40,24}, {53,24}, {65,27}, {77,29}, {89,31}, {113,33}, {125,31}, {137,29}, {149,26}, {161,24}, {174,24}, {186,24}, {201,24}, {222,24}, - {2,34}, {23,34}, {40,34}, {53,35}, {65,37}, {77,39}, {89,42}, {118,42}, {130,40}, {142,38}, {154,36}, {167,34}, {179,34}, {199,34}, {224,35}, - {0,45}, {24,45}, {44,45}, {57,46}, {69,48}, {81,51}, { 93,53}, {112,54}, {124,52}, {136,50}, {148,48}, {160,46}, {173,45}, {190,45}, {210,47}, - {0,55}, {18,55}, {33,55}, {56,57}, {77,61}, { 96,64}, {125,63}, {147,58}, {159,56}, {198,58}, {210,58}, {222,58} - }, - { - // RGB LED Index to Flag - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 - } -}; -#endif diff --git a/keyboards/keychron/q10_max/ansi_encoder/config.h b/keyboards/keychron/q10_max/ansi_encoder/config.h deleted file mode 100644 index 5ff1b952e8..0000000000 --- a/keyboards/keychron/q10_max/ansi_encoder/config.h +++ /dev/null @@ -1,47 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#pragma once - -#ifdef RGB_MATRIX_ENABLE -/* RGB Matrix driver configuration */ -# define RGB_MATRIX_LED_COUNT 89 -# define DRIVER_COUNT 2 -# define DRIVER_CS_PINS \ - { B8, B10 } - -/* Scan phase of led driver set as MSKPHASE_9CHANNEL(defined as 0x03 in snled27351.h) */ -# define SNLED27351_PHASE_CHANNEL MSKPHASE_12CHANNEL -/* Set LED driver current */ -# define SNLED27351_CURRENT_TUNE \ - { 0x32, 0x32, 0x32, 0x32, 0x32, 0x32, 0x32, 0x32, 0x32, 0x32, 0x32, 0x32 } - -/* Set to infinit, which is use in USB mode by default */ -# define RGB_MATRIX_TIMEOUT RGB_MATRIX_TIMEOUT_INFINITE -/* Allow shutdown of led driver to save power */ -# define RGB_MATRIX_DRIVER_SHUTDOWN_ENABLE -/* Turn off backlight on low brightness to save power */ -# define RGB_MATRIX_BRIGHTNESS_TURN_OFF_VAL 32 - -/* Indications */ -# define CAPS_LOCK_INDEX 48 -# define LOW_BAT_IND_INDEX \ - { 81, 83 } - -# define RGB_MATRIX_KEYPRESSES -# define RGB_MATRIX_FRAMEBUFFER_EFFECTS - -#endif diff --git a/keyboards/keychron/q10_max/ansi_encoder/info.json b/keyboards/keychron/q10_max/ansi_encoder/info.json deleted file mode 100644 index ab173b0fbb..0000000000 --- a/keyboards/keychron/q10_max/ansi_encoder/info.json +++ /dev/null @@ -1,107 +0,0 @@ -{ - "usb": { - "pid": "0x08A0", - "device_version": "1.0.0" - }, - "layouts": { - "LAYOUT_ansi_90": { - "layout": [ - {"matrix": [0, 0], "x": 0, "y": 0}, - {"matrix": [0, 1], "x": 1.5, "y": 0}, - {"matrix": [0, 2], "x": 2.75, "y": 0}, - {"matrix": [0, 3], "x": 3.75, "y": 0}, - {"matrix": [0, 4], "x": 4.75, "y": 0}, - {"matrix": [0, 5], "x": 5.75, "y": 0.25}, - {"matrix": [0, 6], "x": 7, "y": 0.5}, - {"matrix": [0, 7], "x": 8, "y": 0.75}, - {"matrix": [0, 8], "x": 9.75, "y": 0.75}, - {"matrix": [0, 9], "x": 10.75, "y": 0.5}, - {"matrix": [0, 10], "x": 12, "y": 0.25}, - {"matrix": [0, 11], "x": 13, "y": 0}, - {"matrix": [0, 12], "x": 14, "y": 0}, - {"matrix": [0, 13], "x": 15, "y": 0}, - {"matrix": [0, 14], "x": 16.5, "y": 0}, - {"matrix": [0, 15], "x": 18, "y": 0}, - - {"matrix": [1, 0], "x": 0.5, "y": 1.25}, - {"matrix": [1, 1], "x": 2, "y": 1.25}, - {"matrix": [1, 2], "x": 3, "y": 1.25}, - {"matrix": [1, 3], "x": 4, "y": 1.25}, - {"matrix": [1, 4], "x": 5, "y": 1.5}, - {"matrix": [1, 5], "x": 6, "y": 1.75}, - {"matrix": [1, 6], "x": 7, "y": 2}, - {"matrix": [1, 7], "x": 8, "y": 2}, - {"matrix": [1, 8], "x": 9.5, "y": 2}, - {"matrix": [1, 9], "x": 10.5, "y": 2}, - {"matrix": [1, 10], "x": 11.5, "y": 1.75}, - {"matrix": [1, 11], "x": 12.5, "y": 1.5}, - {"matrix": [1, 12], "x": 13.5, "y": 1.25}, - {"matrix": [1, 13], "x": 14.5, "y": 1.25}, - {"matrix": [1, 14], "x": 15.5, "y": 1.25, "w": 2}, - {"matrix": [1, 15], "x": 18, "y": 1.25}, - - {"matrix": [2, 0], "x": 0.25, "y": 2.25}, - {"matrix": [2, 1], "x": 1.75, "y": 2.25, "w": 1.5}, - {"matrix": [2, 2], "x": 3.25, "y": 2.25}, - {"matrix": [2, 3], "x": 4.25, "y": 2.25}, - {"matrix": [2, 4], "x": 5.25, "y": 2.5}, - {"matrix": [2, 5], "x": 6.25, "y": 2.75}, - {"matrix": [2, 6], "x": 7.25, "y": 3}, - {"matrix": [2, 7], "x": 9.25, "y": 3.25}, - {"matrix": [2, 8], "x": 10.25, "y": 3}, - {"matrix": [2, 9], "x": 11.25, "y": 2.75}, - {"matrix": [2, 10], "x": 12.25, "y": 2.5}, - {"matrix": [2, 11], "x": 13, "y": 2.25}, - {"matrix": [2, 12], "x": 14.25, "y": 2.25}, - {"matrix": [2, 13], "x": 15.25, "y": 2.25}, - {"matrix": [2, 14], "x": 16.25, "y": 2.25, "w": 1.5}, - {"matrix": [2, 15], "x": 18, "y": 2.25}, - - {"matrix": [3, 0], "x": 0.25, "y": 3.25}, - {"matrix": [3, 1], "x": 1.5, "y": 3.25, "w": 1.75}, - {"matrix": [3, 2], "x": 3.25, "y": 3.25}, - {"matrix": [3, 3], "x": 4.25, "y": 3.5}, - {"matrix": [3, 4], "x": 5.25, "y": 3.5}, - {"matrix": [3, 5], "x": 6.25, "y": 3.75}, - {"matrix": [3, 6], "x": 7.25, "y": 4}, - {"matrix": [3, 8], "x": 9.75, "y": 4}, - {"matrix": [3, 9], "x": 10.5, "y": 4}, - {"matrix": [3, 10], "x": 11.5, "y": 3.75}, - {"matrix": [3, 11], "x": 12.5, "y": 3.5}, - {"matrix": [3, 12], "x": 13.75, "y": 3.25}, - {"matrix": [3, 13], "x": 14.75, "y": 3.25}, - {"matrix": [3, 14], "x": 15.75, "y": 3.25, "w": 2.25}, - {"matrix": [3, 15], "x": 18.25, "y": 3.25}, - - {"matrix": [4, 0], "x": 0, "y": 4.25}, - {"matrix": [4, 1], "x": 1.25, "y": 4.25, "w": 2.25}, - {"matrix": [4, 3], "x": 3.5, "y": 4.25}, - {"matrix": [4, 4], "x": 4.75, "y": 4.5}, - {"matrix": [4, 5], "x": 5.5, "y": 4.75}, - {"matrix": [4, 6], "x": 6.5, "y": 4.75}, - {"matrix": [4, 7], "x": 7.5, "y": 5}, - {"matrix": [4, 8], "x": 9, "y": 5.25}, - {"matrix": [4, 9], "x": 10, "y": 5}, - {"matrix": [4, 10], "x": 11, "y": 4.75}, - {"matrix": [4, 11], "x": 12, "y": 4.5}, - {"matrix": [4, 12], "x": 13, "y": 4.5}, - {"matrix": [4, 13], "x": 14, "y": 4.25}, - {"matrix": [4, 14], "x": 15, "y": 4.25, "w": 1.75}, - {"matrix": [4, 15], "x": 17.25, "y": 4.5}, - - {"matrix": [5, 0], "x": 0, "y": 5.25}, - {"matrix": [5, 1], "x": 1.25, "y": 5.25, "w": 1.25}, - {"matrix": [5, 2], "x": 2.5, "y": 5.25, "w": 1.25}, - {"matrix": [5, 3], "x": 4.5, "y": 5.5, "w": 1.25}, - {"matrix": [5, 4], "x": 5.75, "y": 5.75, "w": 2.25}, - {"matrix": [5, 7], "x": 7.75, "y": 6.25}, - {"matrix": [5, 8], "x": 9.25, "y": 6, "w": 2.75}, - {"matrix": [5, 9], "x": 12, "y": 5.75}, - {"matrix": [5, 10], "x": 13, "y": 5.5}, - {"matrix": [5, 13], "x": 16.25, "y": 5.5}, - {"matrix": [5, 14], "x": 17.25, "y": 5.5}, - {"matrix": [5, 15], "x": 18.25, "y": 5.5} - ] - } - } -} diff --git a/keyboards/keychron/q10_max/ansi_encoder/keymaps/default/keymap.c b/keyboards/keychron/q10_max/ansi_encoder/keymaps/default/keymap.c deleted file mode 100644 index f2e1218c7b..0000000000 --- a/keyboards/keychron/q10_max/ansi_encoder/keymaps/default/keymap.c +++ /dev/null @@ -1,77 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#include QMK_KEYBOARD_H -#include "keychron_common.h" - -enum layers { - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN, -}; - -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_ansi_90( - KC_MUTE, KC_ESC, KC_BRID, KC_BRIU, KC_MCTRL, KC_LNPAD, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_INS, KC_DEL, - MC_1, KC_GRV, 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_PGUP, - MC_2, 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_PGDN, - MC_3, 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_HOME, - MC_4, KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, - MC_5, KC_LCTL, KC_LOPTN, KC_LCMMD, KC_SPC, MO(MAC_FN), KC_SPC, KC_RCMMD, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - - [MAC_FN] = LAYOUT_ansi_90( - RGB_TOG, _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, - _______, _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, KC_END, - _______, _______, _______, _______, _______, _______, BAT_LVL, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - - [WIN_BASE] = LAYOUT_ansi_90( - KC_MUTE, KC_ESC, 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_INS, KC_DEL, - MC_1, KC_GRV, 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_PGUP, - MC_2, 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_PGDN, - MC_3, 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_HOME, - MC_4, KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, - MC_5, KC_LCTL, KC_LWIN, KC_LALT, KC_SPC, MO(WIN_FN), KC_SPC, KC_RALT, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - - [WIN_FN] = LAYOUT_ansi_90( - RGB_TOG, _______, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, - _______, _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, KC_END, - _______, _______, _______, _______, _______, _______, BAT_LVL, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), -}; - -#if defined(ENCODER_MAP_ENABLE) -const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][2] = { - [MAC_BASE] = {ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [MAC_FN] = {ENCODER_CCW_CW(RGB_VAD, RGB_VAI)}, - [WIN_BASE] = {ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [WIN_FN] = {ENCODER_CCW_CW(RGB_VAD, RGB_VAI)} -}; -#endif // ENCODER_MAP_ENABLE - -// clang-format on -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - if (!process_record_keychron_common(keycode, record)) { - return false; - } - return true; -} diff --git a/keyboards/keychron/q10_max/ansi_encoder/keymaps/via/keymap.c b/keyboards/keychron/q10_max/ansi_encoder/keymaps/via/keymap.c deleted file mode 100644 index b9724650ae..0000000000 --- a/keyboards/keychron/q10_max/ansi_encoder/keymaps/via/keymap.c +++ /dev/null @@ -1,77 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#include QMK_KEYBOARD_H -#include "keychron_common.h" - -enum layers { - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN, -}; - -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_ansi_90( - KC_MUTE, KC_ESC, KC_BRID, KC_BRIU, KC_MCTRL, KC_LNPAD, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_INS, KC_DEL, - MC_1, KC_GRV, 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_PGUP, - MC_2, 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_PGDN, - MC_3, 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_HOME, - MC_4, KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, - MC_5, KC_LCTL, KC_LOPTN, KC_LCMMD, KC_SPC, MO(MAC_FN), KC_SPC, KC_RCMMD, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - - [MAC_FN] = LAYOUT_ansi_90( - RGB_TOG, _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, - _______, _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, KC_END, - _______, _______, _______, _______, _______, _______, BAT_LVL, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - - [WIN_BASE] = LAYOUT_ansi_90( - KC_MUTE, KC_ESC, 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_INS, KC_DEL, - MC_1, KC_GRV, 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_PGUP, - MC_2, 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_PGDN, - MC_3, 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_HOME, - MC_4, KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, - MC_5, KC_LCTL, KC_LWIN, KC_LALT, KC_SPC, MO(WIN_FN), KC_SPC, KC_RALT, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - - [WIN_FN] = LAYOUT_ansi_90( - RGB_TOG, _______, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, - _______, _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, KC_END, - _______, _______, _______, _______, _______, _______, BAT_LVL, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), -}; - -#if defined(ENCODER_MAP_ENABLE) -const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][2] = { - [MAC_BASE] = {ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [MAC_FN] = {ENCODER_CCW_CW(RGB_VAD, RGB_VAI)}, - [WIN_BASE] = {ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [WIN_FN] = {ENCODER_CCW_CW(RGB_VAD, RGB_VAI)} -}; -#endif // ENCODER_MAP_ENABLE - -// clang-format on -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - if (!process_record_keychron_common(keycode, record)) { - return false; - } - return true; -} diff --git a/keyboards/keychron/q10_max/ansi_encoder/keymaps/via/rules.mk b/keyboards/keychron/q10_max/ansi_encoder/keymaps/via/rules.mk deleted file mode 100644 index 1e5b99807c..0000000000 --- a/keyboards/keychron/q10_max/ansi_encoder/keymaps/via/rules.mk +++ /dev/null @@ -1 +0,0 @@ -VIA_ENABLE = yes diff --git a/keyboards/keychron/q10_max/ansi_encoder/rules.mk b/keyboards/keychron/q10_max/ansi_encoder/rules.mk deleted file mode 100644 index 7ff128fa69..0000000000 --- a/keyboards/keychron/q10_max/ansi_encoder/rules.mk +++ /dev/null @@ -1 +0,0 @@ -# This file intentionally left blank \ No newline at end of file diff --git a/keyboards/keychron/q10_max/board.h b/keyboards/keychron/q10_max/board.h deleted file mode 100644 index 54fba748bf..0000000000 --- a/keyboards/keychron/q10_max/board.h +++ /dev/null @@ -1,226 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#pragma once - -#include_next - -// clang-format off - -/* Set GPIOA_SWDIO to INPUT and NOT FLOATING */ -#undef VAL_GPIOA_MODER -#define VAL_GPIOA_MODER (PIN_MODE_INPUT(GPIOA_BUTTON) | \ - PIN_MODE_INPUT(GPIOA_PIN1) | \ - PIN_MODE_INPUT(GPIOA_PIN2) | \ - PIN_MODE_INPUT(GPIOA_PIN3) | \ - PIN_MODE_ALTERNATE(GPIOA_CS43L22_LRCK) |\ - PIN_MODE_ALTERNATE(GPIOA_L3GD20_SCL) | \ - PIN_MODE_ALTERNATE(GPIOA_L3GD20_SD0) | \ - PIN_MODE_ALTERNATE(GPIOA_L3GD20_SDI) | \ - PIN_MODE_INPUT(GPIOA_PIN8) | \ - PIN_MODE_INPUT(GPIOA_VBUS_FS) | \ - PIN_MODE_ALTERNATE(GPIOA_OTG_FS_ID) | \ - PIN_MODE_ALTERNATE(GPIOA_OTG_FS_DM) | \ - PIN_MODE_ALTERNATE(GPIOA_OTG_FS_DP) | \ - PIN_MODE_INPUT(GPIOA_SWDIO) | \ - PIN_MODE_INPUT(GPIOA_SWCLK) | \ - PIN_MODE_INPUT(GPIOA_PIN15)) - -#undef VAL_GPIOA_PUPDR -#define VAL_GPIOA_PUPDR (PIN_PUPDR_FLOATING(GPIOA_BUTTON) | \ - PIN_PUPDR_PULLUP(GPIOA_PIN1) | \ - PIN_PUPDR_PULLUP(GPIOA_PIN2) | \ - PIN_PUPDR_PULLUP(GPIOA_PIN3) | \ - PIN_PUPDR_FLOATING(GPIOA_CS43L22_LRCK) |\ - PIN_PUPDR_FLOATING(GPIOA_L3GD20_SCL) | \ - PIN_PUPDR_PULLUP(GPIOA_L3GD20_SD0) | \ - PIN_PUPDR_PULLUP(GPIOA_L3GD20_SDI) | \ - PIN_PUPDR_PULLUP(GPIOA_PIN8) | \ - PIN_PUPDR_FLOATING(GPIOA_VBUS_FS) | \ - PIN_PUPDR_FLOATING(GPIOA_OTG_FS_ID) | \ - PIN_PUPDR_FLOATING(GPIOA_OTG_FS_DM) | \ - PIN_PUPDR_FLOATING(GPIOA_OTG_FS_DP) | \ - PIN_PUPDR_PULLUP(GPIOA_SWDIO) | \ - PIN_PUPDR_PULLUP(GPIOA_SWCLK) | \ - PIN_PUPDR_PULLUP(GPIOA_PIN15)) - -#undef VAL_GPIOB_MODER -#define VAL_GPIOB_MODER (PIN_MODE_INPUT(GPIOB_PIN0) | \ - PIN_MODE_INPUT(GPIOB_PIN1) | \ - PIN_MODE_INPUT(GPIOB_PIN2) | \ - PIN_MODE_INPUT(GPIOB_SWO) | \ - PIN_MODE_INPUT(GPIOB_PIN4) | \ - PIN_MODE_INPUT(GPIOB_PIN5) | \ - PIN_MODE_INPUT(GPIOB_LSM303DLHC_SCL) | \ - PIN_MODE_INPUT(GPIOB_PIN7) | \ - PIN_MODE_INPUT(GPIOB_PIN8) | \ - PIN_MODE_INPUT(GPIOB_LSM303DLHC_SDA) | \ - PIN_MODE_INPUT(GPIOB_MP45DT02_CLK_IN) |\ - PIN_MODE_INPUT(GPIOB_PIN11) | \ - PIN_MODE_INPUT(GPIOB_PIN12) | \ - PIN_MODE_INPUT(GPIOB_PIN13) | \ - PIN_MODE_INPUT(GPIOB_PIN14) | \ - PIN_MODE_INPUT(GPIOB_PIN15)) - -#undef VAL_GPIOB_PUPDR -#define VAL_GPIOB_PUPDR (PIN_PUPDR_PULLDOWN(GPIOB_PIN0) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN1) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN2) | \ - PIN_PUPDR_PULLDOWN(GPIOB_SWO) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN4) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN5) | \ - PIN_PUPDR_PULLDOWN(GPIOB_LSM303DLHC_SCL) |\ - PIN_PUPDR_PULLDOWN(GPIOB_PIN7) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN8) | \ - PIN_PUPDR_PULLDOWN(GPIOB_LSM303DLHC_SDA) |\ - PIN_PUPDR_PULLDOWN(GPIOB_MP45DT02_CLK_IN) |\ - PIN_PUPDR_PULLDOWN(GPIOB_PIN11) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN12) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN13) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN14) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN15)) - -#undef VAL_GPIOB_AFRL -#define VAL_GPIOB_AFRL (PIN_AFIO_AF(GPIOB_PIN0, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN1, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN2, 0U) | \ - PIN_AFIO_AF(GPIOB_SWO, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN4, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN5, 0U) | \ - PIN_AFIO_AF(GPIOB_LSM303DLHC_SCL, 0) | \ - PIN_AFIO_AF(GPIOB_PIN7, 0U)) - -#undef VAL_GPIOB_AFRH -#define VAL_GPIOB_AFRH (PIN_AFIO_AF(GPIOB_PIN8, 0U) | \ - PIN_AFIO_AF(GPIOB_LSM303DLHC_SDA, 0) | \ - PIN_AFIO_AF(GPIOB_MP45DT02_CLK_IN, 0U) |\ - PIN_AFIO_AF(GPIOB_PIN11, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN12, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN13, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN14, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN15, 0U)) - -/* C5 Need to be pulldown */ -#undef VAL_GPIOC_MODER -#define VAL_GPIOC_MODER (PIN_MODE_INPUT(GPIOC_OTG_FS_POWER_ON) |\ - PIN_MODE_INPUT(GPIOC_PIN1) | \ - PIN_MODE_INPUT(GPIOC_PIN2) | \ - PIN_MODE_INPUT(GPIOC_CS43L22_AIN4x) | \ - PIN_MODE_INPUT(GPIOC_PIN4) | \ - PIN_MODE_INPUT(GPIOC_PIN5) | \ - PIN_MODE_INPUT(GPIOC_PIN6) | \ - PIN_MODE_INPUT(GPIOC_CS43L22_MCLK) | \ - PIN_MODE_INPUT(GPIOC_PIN8) | \ - PIN_MODE_INPUT(GPIOC_PIN9) | \ - PIN_MODE_INPUT(GPIOC_CS43L22_SCLK) | \ - PIN_MODE_INPUT(GPIOC_PIN11) | \ - PIN_MODE_INPUT(GPIOC_CS43L22_SDIN) | \ - PIN_MODE_INPUT(GPIOC_PIN13) | \ - PIN_MODE_INPUT(GPIOC_OSC32_IN) | \ - PIN_MODE_INPUT(GPIOC_OSC32_OUT)) - -#undef VAL_GPIOC_PUPDR -#define VAL_GPIOC_PUPDR (PIN_PUPDR_PULLUP(GPIOC_OTG_FS_POWER_ON) |\ - PIN_PUPDR_PULLUP(GPIOC_PIN1) | \ - PIN_PUPDR_PULLUP(GPIOC_PIN2) | \ - PIN_PUPDR_PULLUP(GPIOC_CS43L22_AIN4x) |\ - PIN_PUPDR_PULLUP(GPIOC_PIN4) | \ - PIN_PUPDR_PULLDOWN(GPIOC_PIN5) | \ - PIN_PUPDR_PULLUP(GPIOC_PIN6) | \ - PIN_PUPDR_PULLUP(GPIOC_CS43L22_MCLK) | \ - PIN_PUPDR_PULLUP(GPIOC_PIN8) | \ - PIN_PUPDR_PULLUP(GPIOC_PIN9) | \ - PIN_PUPDR_PULLUP(GPIOC_CS43L22_SCLK) | \ - PIN_PUPDR_PULLUP(GPIOC_PIN11) | \ - PIN_PUPDR_PULLUP(GPIOC_CS43L22_SDIN) | \ - PIN_PUPDR_PULLUP(GPIOC_PIN13) | \ - PIN_PUPDR_PULLUP(GPIOC_OSC32_IN) | \ - PIN_PUPDR_PULLUP(GPIOC_OSC32_OUT)) - -/* Set all GPIOD pins to INPUT & PULLUP to avoid FLOATING */ -#undef VAL_GPIOD_MODER -#define VAL_GPIOD_MODER (PIN_MODE_INPUT(GPIOD_PIN0) | \ - PIN_MODE_INPUT(GPIOD_PIN1) | \ - PIN_MODE_INPUT(GPIOD_PIN2) | \ - PIN_MODE_INPUT(GPIOD_PIN3) | \ - PIN_MODE_INPUT(GPIOD_CS43L22_RESET) | \ - PIN_MODE_INPUT(GPIOD_OverCurrent) | \ - PIN_MODE_INPUT(GPIOD_PIN6) | \ - PIN_MODE_INPUT(GPIOD_PIN7) | \ - PIN_MODE_INPUT(GPIOD_PIN8) | \ - PIN_MODE_INPUT(GPIOD_PIN9) | \ - PIN_MODE_INPUT(GPIOD_PIN10) | \ - PIN_MODE_INPUT(GPIOD_PIN11) | \ - PIN_MODE_INPUT(GPIOD_LED4) | \ - PIN_MODE_INPUT(GPIOD_LED3) | \ - PIN_MODE_INPUT(GPIOD_LED5) | \ - PIN_MODE_INPUT(GPIOD_LED6)) - -#undef VAL_GPIOD_PUPDR -#define VAL_GPIOD_PUPDR (PIN_PUPDR_PULLUP(GPIOD_PIN0) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN1) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN2) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN3) | \ - PIN_PUPDR_PULLUP(GPIOD_CS43L22_RESET) |\ - PIN_PUPDR_PULLUP(GPIOD_OverCurrent) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN6) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN7) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN8) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN9) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN10) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN11) | \ - PIN_PUPDR_PULLUP(GPIOD_LED4) | \ - PIN_PUPDR_PULLUP(GPIOD_LED3) | \ - PIN_PUPDR_PULLUP(GPIOD_LED5) | \ - PIN_PUPDR_PULLUP(GPIOD_LED6)) - -/* Set all GPIOE pins to INPUT & PULLUP to avoid FLOATING */ -#undef VAL_GPIOE_MODER -#define VAL_GPIOE_MODER (PIN_MODE_INPUT(GPIOE_L3GD20_INT1) | \ - PIN_MODE_INPUT(GPIOE_L3GD20_INT2) | \ - PIN_MODE_INPUT(GPIOE_LSM303DLHC_DRDY) |\ - PIN_MODE_INPUT(GPIOE_L3GD20_CS) | \ - PIN_MODE_INPUT(GPIOE_LSM303DLHC_INT1) |\ - PIN_MODE_INPUT(GPIOE_LSM303DLHC_INT2) |\ - PIN_MODE_INPUT(GPIOE_PIN6) | \ - PIN_MODE_INPUT(GPIOE_PIN7) | \ - PIN_MODE_INPUT(GPIOE_PIN8) | \ - PIN_MODE_INPUT(GPIOE_PIN9) | \ - PIN_MODE_INPUT(GPIOE_PIN10) | \ - PIN_MODE_INPUT(GPIOE_PIN11) | \ - PIN_MODE_INPUT(GPIOE_PIN12) | \ - PIN_MODE_INPUT(GPIOE_PIN13) | \ - PIN_MODE_INPUT(GPIOE_PIN14) | \ - PIN_MODE_INPUT(GPIOE_PIN15)) - -#undef VAL_GPIOE_PUPDR -#define VAL_GPIOE_PUPDR (PIN_PUPDR_PULLUP(GPIOE_L3GD20_INT1) | \ - PIN_PUPDR_PULLUP(GPIOE_L3GD20_INT2) | \ - PIN_PUPDR_PULLUP(GPIOE_LSM303DLHC_DRDY) |\ - PIN_PUPDR_PULLUP(GPIOE_L3GD20_CS) | \ - PIN_PUPDR_PULLUP(GPIOE_LSM303DLHC_INT1) |\ - PIN_PUPDR_PULLUP(GPIOE_LSM303DLHC_INT2) |\ - PIN_PUPDR_PULLUP(GPIOE_PIN6) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN7) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN8) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN9) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN10) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN11) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN12) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN13) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN14) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN15)) - diff --git a/keyboards/keychron/q10_max/config.h b/keyboards/keychron/q10_max/config.h deleted file mode 100644 index f4aa5e96ea..0000000000 --- a/keyboards/keychron/q10_max/config.h +++ /dev/null @@ -1,88 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#pragma once - -/* Encoder Configuration */ -#define ENCODER_DEFAULT_POS 0x3 -#define ENCODER_MAP_KEY_DELAY 2 - -#if defined(RGB_MATRIX_ENABLE) || defined(LED_MATRIX_ENABLE) || defined(LK_WIRELESS_ENABLE) -/* SPI configuration */ -# define SPI_DRIVER SPID1 -# define SPI_SCK_PIN A5 -# define SPI_MISO_PIN A6 -# define SPI_MOSI_PIN A7 -#endif - -#if defined(RGB_MATRIX_ENABLE) || defined(LED_MATRIX_ENABLE) -# define LED_DRIVER_SHUTDOWN_PIN B9 -# define SNLED23751_SPI_DIVISOR 16 -#endif - -#ifdef LK_WIRELESS_ENABLE -/* Hardware configuration */ - -# define P2P4_MODE_SELECT_PIN A10 -# define BT_MODE_SELECT_PIN A9 - -# define LKBT51_RESET_PIN C4 -# define LKBT51_INT_INPUT_PIN B1 -# define BLUETOOTH_INT_OUTPUT_PIN A4 - -# define USB_POWER_SENSE_PIN B0 -# define USB_POWER_CONNECTED_LEVEL 0 - -# define BAT_CHARGING_PIN C14 -# define BAT_CHARGING_LEVEL 0 - -# define BT_HOST_DEVICES_COUNT 3 - -# if defined(RGB_MATRIX_ENABLE) - -# define BT_HOST_LED_MATRIX_LIST \ - { 17, 18, 19 } - -# define P2P4G_HOST_LED_MATRIX_LIST \ - { 20 } - -# 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 - -/* Reinit LED driver on tranport changed */ -# define REINIT_LED_DRIVER 1 - -# endif - -/* Keep USB connection in blueooth mode */ -# define KEEP_USB_CONNECTION_IN_WIRELESS_MODE - -/* Enable bluetooth NKRO */ -# define WIRELESS_NKRO_ENABLE -#endif - -/* Factory test keys */ -#define FN_KEY_1 MO(1) -#define FN_KEY_2 MO(3) -#define FN_BL_TRIG_KEY KC_END - -#define MATRIX_IO_DELAY 10 diff --git a/keyboards/keychron/q10_max/firmware/keychron_q10_max_ansi_encoder_via.bin b/keyboards/keychron/q10_max/firmware/keychron_q10_max_ansi_encoder_via.bin deleted file mode 100644 index ed09c8e460..0000000000 Binary files a/keyboards/keychron/q10_max/firmware/keychron_q10_max_ansi_encoder_via.bin and /dev/null differ diff --git a/keyboards/keychron/q10_max/halconf.h b/keyboards/keychron/q10_max/halconf.h deleted file mode 100644 index c0f5e16803..0000000000 --- a/keyboards/keychron/q10_max/halconf.h +++ /dev/null @@ -1,31 +0,0 @@ -/* Copyright 2024 Keychron - * - * 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 _CHIBIOS_HAL_CONF_VER_8_0_ - -#define HAL_USE_SPI TRUE - -#ifdef LK_WIRELESS_ENABLE -# define HAL_USE_RTC TRUE -#endif - -#if defined(LK_WIRELESS_ENABLE) || defined(ENCODER_ENABLE) -# define PAL_USE_CALLBACKS TRUE -#endif - -#include_next diff --git a/keyboards/keychron/q10_max/info.json b/keyboards/keychron/q10_max/info.json deleted file mode 100644 index 479623c13b..0000000000 --- a/keyboards/keychron/q10_max/info.json +++ /dev/null @@ -1,80 +0,0 @@ -{ - "keyboard_name": "Keychron Q10 Max", - "manufacturer": "Keychron", - "url": "https://github.com/Keychron", - "maintainer": "lokher", - "processor": "STM32F401", - "bootloader": "stm32-dfu", - "usb": { - "vid": "0x3434" - }, - "features": { - "bootmagic": true, - "extrakey" : true, - "mousekey" : true, - "dip_switch" : true, - "encoder": true, - "encoder_map": true, - "nkro" : true, - "rgb_matrix": true, - "raw" : true, - "send_string": true - }, - "matrix_pins": { - "cols": ["C7", "C8", "C9", "A8", "A15", "C10", "C11", "C15", "C0", "C1", "C2", "C3", "A0", "A1", "A2", "A3"], - "rows": ["C12", "D2", "B3", "B4", "B5", "B6"] - }, - "diode_direction": "ROW2COL", - "bootmagic": { - "matrix": [0, 1] - }, - "encoder": { - "rotary": [ - { - "pin_a": "B14", - "pin_b": "B15" - } - ] - }, - "dip_switch" :{ - "pins": ["B7"] - }, - "rgb_matrix": { - "driver": "snled27351_spi", - "sleep": true, - "animations": { - "band_spiral_val": true, - "breathing": true, - "cycle_all": true, - "cycle_left_right": true, - "cycle_out_in": true, - "cycle_out_in_dual": true, - "cycle_pinwheel": true, - "cycle_spiral": true, - "cycle_up_down": true, - "digital_rain": true, - "dual_beacon": true, - "jellybean_raindrops": true, - "pixel_rain": true, - "rainbow_beacon": true, - "rainbow_moving_chevron": true, - "solid_reactive_multinexus": true, - "solid_reactive_multiwide": true, - "solid_reactive_simple": true, - "solid_splash": true, - "splash": true, - "typing_heatmap": true - } - }, - "eeprom": { - "wear_leveling": { - "driver": "embedded_flash", - "logical_size": 2048, - "backing_size": 4096 - } - }, - "build": { - "debounce_type": "sym_eager_pk" - }, - "debounce": 20 -} diff --git a/keyboards/keychron/q10_max/iso_encoder/config.h b/keyboards/keychron/q10_max/iso_encoder/config.h deleted file mode 100644 index fbfd382fd9..0000000000 --- a/keyboards/keychron/q10_max/iso_encoder/config.h +++ /dev/null @@ -1,47 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#pragma once - -#ifdef RGB_MATRIX_ENABLE -/* RGB Matrix driver configuration */ -# define RGB_MATRIX_LED_COUNT 90 -# define DRIVER_COUNT 2 -# define DRIVER_CS_PINS \ - { B8, B10 } - -/* Scan phase of led driver set as MSKPHASE_9CHANNEL(defined as 0x03 in snled27351.h) */ -# define SNLED27351_PHASE_CHANNEL MSKPHASE_12CHANNEL -/* Set LED driver current */ -# define SNLED27351_CURRENT_TUNE \ - { 0x32, 0x32, 0x32, 0x32, 0x32, 0x32, 0x32, 0x32, 0x32, 0x32, 0x32, 0x32 } - -/* Set to infinit, which is use in USB mode by default */ -# define RGB_MATRIX_TIMEOUT RGB_MATRIX_TIMEOUT_INFINITE -/* Allow shutdown of led driver to save power */ -# define RGB_MATRIX_DRIVER_SHUTDOWN_ENABLE -/* Turn off backlight on low brightness to save power */ -# define RGB_MATRIX_BRIGHTNESS_TURN_OFF_VAL 32 - -/* Indications */ -# define CAPS_LOCK_INDEX 48 -# define LOW_BAT_IND_INDEX \ - { 82, 84 } - -# define RGB_MATRIX_KEYPRESSES -# define RGB_MATRIX_FRAMEBUFFER_EFFECTS - -#endif diff --git a/keyboards/keychron/q10_max/iso_encoder/info.json b/keyboards/keychron/q10_max/iso_encoder/info.json deleted file mode 100644 index 067dc6405a..0000000000 --- a/keyboards/keychron/q10_max/iso_encoder/info.json +++ /dev/null @@ -1,108 +0,0 @@ -{ - "usb": { - "pid": "0x08A1", - "device_version": "1.0.0" - }, - "layouts": { - "LAYOUT_iso_91": { - "layout": [ - {"matrix": [0, 0], "x": 0, "y": 0}, - {"matrix": [0, 1], "x": 1.5, "y": 0}, - {"matrix": [0, 2], "x": 2.75, "y": 0}, - {"matrix": [0, 3], "x": 3.75, "y": 0}, - {"matrix": [0, 4], "x": 4.75, "y": 0}, - {"matrix": [0, 5], "x": 5.75, "y": 0.25}, - {"matrix": [0, 6], "x": 7, "y": 0.5}, - {"matrix": [0, 7], "x": 8, "y": 0.75}, - {"matrix": [0, 8], "x": 9.75, "y": 0.75}, - {"matrix": [0, 9], "x": 10.75, "y": 0.5}, - {"matrix": [0, 10], "x": 12, "y": 0.25}, - {"matrix": [0, 11], "x": 13, "y": 0}, - {"matrix": [0, 12], "x": 14, "y": 0}, - {"matrix": [0, 13], "x": 15, "y": 0}, - {"matrix": [0, 14], "x": 16.5, "y": 0}, - {"matrix": [0, 15], "x": 18, "y": 0}, - - {"matrix": [1, 0], "x": 0.5, "y": 1.25}, - {"matrix": [1, 1], "x": 2, "y": 1.25}, - {"matrix": [1, 2], "x": 3, "y": 1.25}, - {"matrix": [1, 3], "x": 4, "y": 1.25}, - {"matrix": [1, 4], "x": 5, "y": 1.5}, - {"matrix": [1, 5], "x": 6, "y": 1.75}, - {"matrix": [1, 6], "x": 7, "y": 2}, - {"matrix": [1, 7], "x": 8, "y": 2}, - {"matrix": [1, 8], "x": 9.5, "y": 2}, - {"matrix": [1, 9], "x": 10.5, "y": 2}, - {"matrix": [1, 10], "x": 11.5, "y": 1.75}, - {"matrix": [1, 11], "x": 12.5, "y": 1.5}, - {"matrix": [1, 12], "x": 13.5, "y": 1.25}, - {"matrix": [1, 13], "x": 14.5, "y": 1.25}, - {"matrix": [1, 14], "x": 15.5, "y": 1.25, "w": 2}, - {"matrix": [1, 15], "x": 18, "y": 1.25}, - - {"matrix": [2, 0], "x": 0.25, "y": 2.25}, - {"matrix": [2, 1], "x": 1.75, "y": 2.25, "w": 1.5}, - {"matrix": [2, 2], "x": 3.25, "y": 2.25}, - {"matrix": [2, 3], "x": 4.25, "y": 2.25}, - {"matrix": [2, 4], "x": 5.25, "y": 2.5}, - {"matrix": [2, 5], "x": 6.25, "y": 2.75}, - {"matrix": [2, 6], "x": 7.25, "y": 3}, - {"matrix": [2, 7], "x": 9.25, "y": 3.25}, - {"matrix": [2, 8], "x": 10.25, "y": 3}, - {"matrix": [2, 9], "x": 11.25, "y": 2.75}, - {"matrix": [2, 10], "x": 12.25, "y": 2.5}, - {"matrix": [2, 11], "x": 13, "y": 2.25}, - {"matrix": [2, 12], "x": 14.25, "y": 2.25}, - {"matrix": [2, 13], "x": 15.25, "y": 2.25}, - {"matrix": [2, 15], "x": 18, "y": 2.25}, - - {"matrix": [3, 0], "x": 0.25, "y": 3.25}, - {"matrix": [3, 1], "x": 1.5, "y": 3.25, "w": 1.75}, - {"matrix": [3, 2], "x": 3.25, "y": 3.25}, - {"matrix": [3, 3], "x": 4.25, "y": 3.5}, - {"matrix": [3, 4], "x": 5.25, "y": 3.5}, - {"matrix": [3, 5], "x": 6.25, "y": 3.75}, - {"matrix": [3, 6], "x": 7.25, "y": 4}, - {"matrix": [3, 8], "x": 9.75, "y": 4}, - {"matrix": [3, 9], "x": 10.5, "y": 4}, - {"matrix": [3, 10], "x": 11.5, "y": 3.75}, - {"matrix": [3, 11], "x": 12.5, "y": 3.5}, - {"matrix": [3, 12], "x": 13.75, "y": 3.25}, - {"matrix": [3, 13], "x": 14.75, "y": 3.25}, - {"matrix": [3, 14], "x": 15.75, "y": 3.25}, - {"matrix": [2, 14], "x": 16.75, "y": 2.25, "w": 1.5, "h": 2}, - {"matrix": [3, 15], "x": 18.25, "y": 3.25}, - - {"matrix": [4, 0], "x": 0, "y": 4.25}, - {"matrix": [4, 1], "x": 1.25, "y": 4.25, "w": 1.25}, - {"matrix": [4, 2], "x": 2.5, "y": 4.25}, - {"matrix": [4, 3], "x": 3.5, "y": 4.25}, - {"matrix": [4, 4], "x": 4.75, "y": 4.5}, - {"matrix": [4, 5], "x": 5.5, "y": 4.75}, - {"matrix": [4, 6], "x": 6.5, "y": 4.75}, - {"matrix": [4, 7], "x": 7.5, "y": 5}, - {"matrix": [4, 8], "x": 9, "y": 5.25}, - {"matrix": [4, 9], "x": 10, "y": 5}, - {"matrix": [4, 10], "x": 11, "y": 4.75}, - {"matrix": [4, 11], "x": 12, "y": 4.5}, - {"matrix": [4, 12], "x": 13, "y": 4.5}, - {"matrix": [4, 13], "x": 14, "y": 4.25}, - {"matrix": [4, 14], "x": 15, "y": 4.25, "w": 1.75}, - {"matrix": [4, 15], "x": 17.25, "y": 4.5}, - - {"matrix": [5, 0], "x": 0, "y": 5.25}, - {"matrix": [5, 1], "x": 1.25, "y": 5.25, "w": 1.25}, - {"matrix": [5, 2], "x": 2.5, "y": 5.25, "w": 1.25}, - {"matrix": [5, 3], "x": 4.5, "y": 5.5, "w": 1.25}, - {"matrix": [5, 4], "x": 5.75, "y": 5.75, "w": 2.25}, - {"matrix": [5, 7], "x": 7.75, "y": 6.25}, - {"matrix": [5, 8], "x": 9.25, "y": 6, "w": 2.75}, - {"matrix": [5, 9], "x": 12, "y": 5.75}, - {"matrix": [5, 10], "x": 13, "y": 5.5}, - {"matrix": [5, 13], "x": 16.25, "y": 5.5}, - {"matrix": [5, 14], "x": 17.25, "y": 5.5}, - {"matrix": [5, 15], "x": 18.25, "y": 5.5} - ] - } - } -} diff --git a/keyboards/keychron/q10_max/iso_encoder/iso_encoder.c b/keyboards/keychron/q10_max/iso_encoder/iso_encoder.c deleted file mode 100644 index c70988d330..0000000000 --- a/keyboards/keychron/q10_max/iso_encoder/iso_encoder.c +++ /dev/null @@ -1,157 +0,0 @@ -/* Copyright 2024 @ 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/>. - */ - -#include "quantum.h" - -// clang-format off - -#ifdef RGB_MATRIX_ENABLE -const snled27351_led_t g_snled27351_leds[RGB_MATRIX_LED_COUNT] = { -/* Refer to SNLED27351 manual for these locations - * driver - * | R location - * | | G location - * | | | B location - * | | | | */ - {0, F_2, D_2, E_2}, - {0, F_3, D_3, E_3}, - {0, F_4, D_4, E_4}, - {0, F_5, D_5, E_5}, - {0, F_6, D_6, E_6}, - {0, F_7, D_7, E_7}, - {0, F_8, D_8, E_8}, - {0, F_9, D_9, E_9}, - {0, F_10, D_10, E_10}, - {0, F_11, D_11, E_11}, - {0, F_12, D_12, E_12}, - {0, F_13, D_13, E_13}, - {0, F_14, D_14, E_14}, - {0, F_15, D_15, E_15}, - {0, F_16, D_16, E_16}, - - {0, L_1, J_1, K_1}, - {0, L_2, J_2, K_2}, - {0, L_3, J_3, K_3}, - {0, L_4, J_4, K_4}, - {0, L_5, J_5, K_5}, - {0, L_6, J_6, K_6}, - {0, L_7, J_7, K_7}, - {0, L_8, J_8, K_8}, - {0, L_9, J_9, K_9}, - {0, L_10, J_10, K_10}, - {0, L_11, J_11, K_11}, - {0, L_12, J_12, K_12}, - {0, L_13, J_13, K_13}, - {0, L_14, J_14, K_14}, - {0, L_15, J_15, K_15}, - {0, L_16, J_16, K_16}, - - {0, C_1, A_1, B_1}, - {0, C_2, A_2, B_2}, - {0, C_3, A_3, B_3}, - {0, C_4, A_4, B_4}, - {0, C_5, A_5, B_5}, - {0, C_6, A_6, B_6}, - {0, C_7, A_7, B_7}, - {0, C_8, A_8, B_8}, - {0, C_9, A_9, B_9}, - {0, C_10, A_10, B_10}, - {0, C_11, A_11, B_11}, - {0, C_12, A_12, B_12}, - {0, C_13, A_13, B_13}, - {0, C_14, A_14, B_14}, - {0, C_15, A_15, B_15}, - {0, C_16, A_16, B_16}, - - {1, C_16, A_16, B_16}, - {1, C_15, A_15, B_15}, - {1, C_14, A_14, B_14}, - {1, C_13, A_13, B_13}, - {1, C_12, A_12, B_12}, - {1, C_11, A_11, B_11}, - {1, C_10, A_10, B_10}, - {1, C_8, A_8, B_8}, - {1, C_7, A_7, B_7}, - {1, C_6, A_6, B_6}, - {1, C_5, A_5, B_5}, - {1, C_4, A_4, B_4}, - {1, C_3, A_3, B_3}, - {1, C_2, A_2, B_2}, - {1, C_1, A_1, B_1}, - - {1, I_16, G_16, H_16}, - {1, I_15, G_15, H_15}, - {1, I_14, G_14, H_14}, - {1, I_13, G_13, H_13}, - {1, I_12, G_12, H_12}, - {1, I_11, G_11, H_11}, - {1, I_10, G_10, H_10}, - {1, I_9, G_9, H_9}, - {1, I_8, G_8, H_8}, - {1, I_7, G_7, H_7}, - {1, I_6, G_6, H_6}, - {1, I_5, G_5, H_5}, - {1, I_4, G_4, H_4}, - {1, I_3, G_3, H_3}, - {1, I_2, G_2, H_2}, - {1, I_1, G_1, H_1}, - - {1, F_16, D_16, E_16}, - {1, F_15, D_15, E_15}, - {1, F_14, D_14, E_14}, - {1, F_13, D_13, E_13}, - {1, F_12, D_12, E_12}, - {1, F_9, D_9, E_9}, - {1, F_8, D_8, E_8}, - {1, F_7, D_7, E_7}, - {1, F_6, D_6, E_6}, - {1, F_3, D_3, E_3}, - {1, F_2, D_2, E_2}, - {1, F_1, D_1, E_1}, -}; - -#define __ NO_LED - -led_config_t g_led_config = { - { - // Key Matrix to LED Index - { __, 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, 40, 41, 42, 43, 44, 45, 46 }, - { 47, 48, 49, 50, 51, 52, 53, __, 54, 55, 56, 57, 58, 59, 60, 61 }, - { 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77 }, - { 78, 79, 80, 81, 82, __, __, 83, 84, 85, 86, __, __, 87, 88, 89 }, - }, - { - // LED Index to Physical Position - {19, 0}, {34, 0}, {46, 0}, {59, 1}, {71, 3}, {86, 6}, { 98, 8}, {121, 8}, {133, 6}, {147, 3}, {159, 1}, {173, 0}, {185, 0}, {203, 0}, {220, 0}, - {5,14}, {24,14}, {36,14}, {48,13}, {61,15}, {73,17}, {85,20}, { 97,22}, {116,22}, {128,20}, {140,17}, {152,15}, {165,13}, {177,14}, {195,14}, {220,14}, - {4,24}, {24,24}, {40,24}, {53,24}, {65,27}, {77,29}, {89,31}, {113,33}, {125,31}, {137,29}, {149,26}, {161,24}, {174,24}, {186,24}, {201,24}, {222,24}, - {2,34}, {23,34}, {40,34}, {53,35}, {65,37}, {77,39}, {89,42}, {118,42}, {130,40}, {142,38}, {154,36}, {167,34}, {179,34}, {199,34}, {224,35}, - {0,45}, {20,45}, {31,45}, {44,45}, {57,46}, {69,48}, {81,51}, { 93,53}, {112,54}, {124,52}, {136,50}, {148,48}, {160,46}, {173,45}, {190,45}, {210,47}, - {0,55}, {18,55}, {33,55}, {56,57}, {77,61}, { 96,64}, {125,63}, {147,58}, {159,56}, {198,58}, {210,58}, {222,58} - }, - { - // RGB LED Index to Flag - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 - } -}; -#endif diff --git a/keyboards/keychron/q10_max/iso_encoder/keymaps/default/keymap.c b/keyboards/keychron/q10_max/iso_encoder/keymaps/default/keymap.c deleted file mode 100644 index 2a5d638fa6..0000000000 --- a/keyboards/keychron/q10_max/iso_encoder/keymaps/default/keymap.c +++ /dev/null @@ -1,77 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#include QMK_KEYBOARD_H -#include "keychron_common.h" - -enum layers { - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN, -}; - -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_iso_91( - KC_MUTE, KC_ESC, KC_BRID, KC_BRIU, KC_MCTRL, KC_LNPAD, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_INS, KC_DEL, - MC_1, KC_GRV, 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_PGUP, - MC_2, 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_PGDN, - MC_3, 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_NUHS, KC_ENT, KC_HOME, - MC_4, KC_LSFT, KC_NUBS, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, - MC_5, KC_LCTL, KC_LOPTN, KC_LCMMD, KC_SPC, MO(MAC_FN), KC_SPC, KC_RCMMD, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - - [MAC_FN] = LAYOUT_iso_91( - RGB_TOG, _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, - _______, _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, KC_END, - _______, _______, _______, _______, _______, _______, _______, BAT_LVL, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - - [WIN_BASE] = LAYOUT_iso_91( - KC_MUTE, KC_ESC, 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_INS, KC_DEL, - MC_1, KC_GRV, 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_PGUP, - MC_2, 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_PGDN, - MC_3, 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_NUHS, KC_ENT, KC_HOME, - MC_4, KC_LSFT, KC_NUBS, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, - MC_5, KC_LCTL, KC_LWIN, KC_LALT, KC_SPC, MO(WIN_FN), KC_SPC, KC_RALT, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - - [WIN_FN] = LAYOUT_iso_91( - RGB_TOG, _______, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, - _______, _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, KC_END, - _______, _______, _______, _______, _______, _______, _______, BAT_LVL, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), -}; - -#if defined(ENCODER_MAP_ENABLE) -const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][2] = { - [MAC_BASE] = {ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [MAC_FN] = {ENCODER_CCW_CW(RGB_VAD, RGB_VAI)}, - [WIN_BASE] = {ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [WIN_FN] = {ENCODER_CCW_CW(RGB_VAD, RGB_VAI)} -}; -#endif // ENCODER_MAP_ENABLE - -// clang-format on -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - if (!process_record_keychron_common(keycode, record)) { - return false; - } - return true; -} diff --git a/keyboards/keychron/q10_max/iso_encoder/keymaps/via/keymap.c b/keyboards/keychron/q10_max/iso_encoder/keymaps/via/keymap.c deleted file mode 100644 index 2a5d638fa6..0000000000 --- a/keyboards/keychron/q10_max/iso_encoder/keymaps/via/keymap.c +++ /dev/null @@ -1,77 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#include QMK_KEYBOARD_H -#include "keychron_common.h" - -enum layers { - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN, -}; - -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_iso_91( - KC_MUTE, KC_ESC, KC_BRID, KC_BRIU, KC_MCTRL, KC_LNPAD, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_INS, KC_DEL, - MC_1, KC_GRV, 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_PGUP, - MC_2, 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_PGDN, - MC_3, 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_NUHS, KC_ENT, KC_HOME, - MC_4, KC_LSFT, KC_NUBS, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, - MC_5, KC_LCTL, KC_LOPTN, KC_LCMMD, KC_SPC, MO(MAC_FN), KC_SPC, KC_RCMMD, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - - [MAC_FN] = LAYOUT_iso_91( - RGB_TOG, _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, - _______, _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, KC_END, - _______, _______, _______, _______, _______, _______, _______, BAT_LVL, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - - [WIN_BASE] = LAYOUT_iso_91( - KC_MUTE, KC_ESC, 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_INS, KC_DEL, - MC_1, KC_GRV, 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_PGUP, - MC_2, 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_PGDN, - MC_3, 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_NUHS, KC_ENT, KC_HOME, - MC_4, KC_LSFT, KC_NUBS, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, - MC_5, KC_LCTL, KC_LWIN, KC_LALT, KC_SPC, MO(WIN_FN), KC_SPC, KC_RALT, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - - [WIN_FN] = LAYOUT_iso_91( - RGB_TOG, _______, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, - _______, _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, KC_END, - _______, _______, _______, _______, _______, _______, _______, BAT_LVL, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), -}; - -#if defined(ENCODER_MAP_ENABLE) -const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][2] = { - [MAC_BASE] = {ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [MAC_FN] = {ENCODER_CCW_CW(RGB_VAD, RGB_VAI)}, - [WIN_BASE] = {ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [WIN_FN] = {ENCODER_CCW_CW(RGB_VAD, RGB_VAI)} -}; -#endif // ENCODER_MAP_ENABLE - -// clang-format on -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - if (!process_record_keychron_common(keycode, record)) { - return false; - } - return true; -} diff --git a/keyboards/keychron/q10_max/iso_encoder/keymaps/via/rules.mk b/keyboards/keychron/q10_max/iso_encoder/keymaps/via/rules.mk deleted file mode 100644 index 1e5b99807c..0000000000 --- a/keyboards/keychron/q10_max/iso_encoder/keymaps/via/rules.mk +++ /dev/null @@ -1 +0,0 @@ -VIA_ENABLE = yes diff --git a/keyboards/keychron/q10_max/iso_encoder/rules.mk b/keyboards/keychron/q10_max/iso_encoder/rules.mk deleted file mode 100644 index 7ff128fa69..0000000000 --- a/keyboards/keychron/q10_max/iso_encoder/rules.mk +++ /dev/null @@ -1 +0,0 @@ -# This file intentionally left blank \ No newline at end of file diff --git a/keyboards/keychron/q10_max/mcuconf.h b/keyboards/keychron/q10_max/mcuconf.h deleted file mode 100644 index 89294ee64b..0000000000 --- a/keyboards/keychron/q10_max/mcuconf.h +++ /dev/null @@ -1,37 +0,0 @@ -/* Copyright 2024 @ 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 - -#include_next - -#undef STM32_HSECLK -#define STM32_HSECLK 16000000 - -#undef STM32_PLLM_VALUE -#define STM32_PLLM_VALUE 8 - -#undef STM32_PLLN_VALUE -#define STM32_PLLN_VALUE 96 - -#undef STM32_PLLP_VALUE -#define STM32_PLLP_VALUE 4 - -#undef STM32_PLLQ_VALUE -#define STM32_PLLQ_VALUE 4 - -#undef STM32_SPI_USE_SPI1 -#define STM32_SPI_USE_SPI1 TRUE diff --git a/keyboards/keychron/q10_max/q10_max.c b/keyboards/keychron/q10_max/q10_max.c deleted file mode 100644 index c36eb60e7d..0000000000 --- a/keyboards/keychron/q10_max/q10_max.c +++ /dev/null @@ -1,61 +0,0 @@ -/* Copyright 2024 @ 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/>. - */ - -#include "quantum.h" -#include "keychron_task.h" -#ifdef FACTORY_TEST_ENABLE -# include "factory_test.h" -# include "keychron_common.h" -#endif -#ifdef LK_WIRELESS_ENABLE -# include "lkbt51.h" -# include "wireless.h" -# include "keychron_wireless_common.h" -# include "battery.h" -#endif - -#ifdef DIP_SWITCH_ENABLE -bool dip_switch_update_kb(uint8_t index, bool active) { - if (index == 0) { - default_layer_set(1UL << (active ? 2 : 0)); - } - dip_switch_update_user(index, active); - - return true; -} -#endif - -void keyboard_post_init_kb(void) { -#ifdef LK_WIRELESS_ENABLE - palSetLineMode(P2P4_MODE_SELECT_PIN, PAL_MODE_INPUT); - palSetLineMode(BT_MODE_SELECT_PIN, PAL_MODE_INPUT); - - lkbt51_init(false); - wireless_init(); -#endif - -#ifdef ENCODER_ENABLE - encoder_cb_init(); -#endif - - keyboard_post_init_user(); -} - -#ifdef LK_WIRELESS_ENABLE -bool lpm_is_kb_idle(void) { - return !factory_reset_indicating(); -} -#endif diff --git a/keyboards/keychron/q10_max/readme.md b/keyboards/keychron/q10_max/readme.md deleted file mode 100644 index d0981dbdf2..0000000000 --- a/keyboards/keychron/q10_max/readme.md +++ /dev/null @@ -1,23 +0,0 @@ -# Keychron Q10 Max - -![Keychron Q10 Max](https://cdn.shopify.com/s/files/1/0059/0630/1017/files/Keychron-Q10-Max-Alice-Layout-QMK_VIA-Wireless-Custom-Mechanical-Keyboard-White.jpg?v=1705301117) - -A customizable 75% ergonomic keyboard. - -* Keyboard Maintainer: [Keychron](https://github.com/keychron) -* Hardware Supported: Keychron Q10 Max -* Hardware Availability: [Keychron Q10 Max QMK/VIA Wireless Custom Mechanical Keyboard](https://www.keychron.com/products/keychron-q10-max-alice-layout-qmk-via-wireless-custom-mechanical-keyboard) - -Make example for this keyboard (after setting up your build environment): - - make keychron/q10_max/ansi_encoder:default - make keychron/q10_max/iso_encoder:default - -Flashing example for this keyboard: - - make keychron/q10_max/ansi_encoder:default:flash - make keychron/q10_max/iso_encoder:default:flash - -**Reset Key**: Toggle mode switch to "Cable", hold down the *Esc* key or reset button underneath space bar while connecting the USB cable, - -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). diff --git a/keyboards/keychron/q10_max/rules.mk b/keyboards/keychron/q10_max/rules.mk deleted file mode 100644 index 4eaf6820bc..0000000000 --- a/keyboards/keychron/q10_max/rules.mk +++ /dev/null @@ -1,4 +0,0 @@ -include keyboards/keychron/common/wireless/wireless.mk -include keyboards/keychron/common/keychron_common.mk - -VPATH += $(TOP_DIR)/keyboards/keychron diff --git a/keyboards/keychron/q10_max/via_json/q10_max_ansi_encoder.json b/keyboards/keychron/q10_max/via_json/q10_max_ansi_encoder.json deleted file mode 100644 index 977b994775..0000000000 --- a/keyboards/keychron/q10_max/via_json/q10_max_ansi_encoder.json +++ /dev/null @@ -1,406 +0,0 @@ -{ - "name": "Keychron Q10 Max ANSI Knob", - "vendorId": "0x3434", - "productId": "0x08A0", - "keycodes": ["qmk_lighting"], - "menus": [ - { - "label": "Lighting", - "content": [ - { - "label": "Backlight", - "content": [ - { - "label": "Brightness", - "type": "range", - "options": [0, 255], - "content": ["id_qmk_rgb_matrix_brightness", 3, 1] - }, - { - "label": "Effect", - "type": "dropdown", - "content": ["id_qmk_rgb_matrix_effect", 3, 2], - "options": [ - ["None", 0], - ["Solid Color", 1], - ["Breathing", 2], - ["Band Spiral Val", 3], - ["Cycle All", 4], - ["Cycle Left Right", 5], - ["Cycle Up Down", 6], - ["Rainbow Moving Chevron", 7], - ["Cycle Out In", 8], - ["Cycle Out In Dual", 9], - ["Cycle Pinwheel", 10], - ["Cycle Spiral", 11], - ["Dual Beacon", 12], - ["Rainbow Beacon", 13], - ["Jellybean Raindrops", 14], - ["Pixel Rain", 15], - ["Typing Heatmap", 16], - ["Digital Rain", 17], - ["Reactive Simple", 18], - ["Reactive Multiwide", 19], - ["Reactive Multinexus", 20], - ["Splash", 21], - ["Solid Splash", 22] - ] - }, - { - "showIf": "{id_qmk_rgb_matrix_effect} > 1", - "label": "Effect Speed", - "type": "range", - "options": [0, 255], - "content": ["id_qmk_rgb_matrix_effect_speed", 3, 3] - }, - { - "showIf": "{id_qmk_rgb_matrix_effect} != 0 && ( {id_qmk_rgb_matrix_effect} < 4 || {id_qmk_rgb_matrix_effect} == 18 || ({id_qmk_rgb_matrix_effect} > 17 && {id_qmk_rgb_matrix_effect} != 21) ) ", - "label": "Color", - "type": "color", - "content": ["id_qmk_rgb_matrix_color", 3, 4] - } - ] - } - ] - } - ], - "customKeycodes": [ - {"name": "Left Option", "title": "Left Option", "shortName": "LOpt"}, - {"name": "Right Option", "title": "Right Option", "shortName": "ROpt"}, - {"name": "Left Cmd", "title": "Left Command", "shortName": "LCmd"}, - {"name": "Right Cmd", "title": "Right Command", "shortName": "RCmd"}, - {"name": "Misson Control", "title": "Misson Control in Mac", "shortName": "MCtl"}, - {"name": "Lanuch Pad", "title": "Lanuch Pad in Windows", "shortName": "LPad"}, - {"name": "Task View", "title": "Task View in Windows", "shortName": "Task"}, - {"name": "File Explorer", "title": "File Explorer in Windows", "shortName": "File"}, - {"name": "Screen shot", "title": "Screenshot in macOS", "shortName": "SShot"}, - {"name": "Cortana", "title": "Cortana in Windows", "shortName": "Cortana"}, - {"name": "Siri", "title": "Siri in macOS", "shortName": "Siri"}, - {"name": "Bluetooth Host 1", "title": "Bluetooth Host 1", "shortName": "BTH1"}, - {"name": "Bluetooth Host 2", "title": "Bluetooth Host 2", "shortName": "BTH2"}, - {"name": "Bluetooth Host 3", "title": "Bluetooth Host 3", "shortName": "BTH3"}, - {"name": "2.4G", "title": "2.4G", "shortName": "2.4G"}, - {"name": "Battery Level", "title": "Show battery level", "shortName": "Batt"} - ], - "matrix": {"rows": 6, "cols": 16}, - "layouts": { - "keymap": [ - [ - { - "x": 0.5 - }, - "0,0\n\n\n\n\n\n\n\n\ne0", - { - "x": 0.5, - "c": "#777777" - }, - "0,1\nESC", - { - "x": 0.25, - "c": "#cccccc" - }, - "0,2", - "0,3", - { - "x": 9.35 - }, - "0,12", - "0,13", - { - "x": 0.25, - "c": "#aaaaaa" - }, - "0,14", - { - "x": 0.25 - }, - "0,15" - ], - [ - { - "y": 0.25, - "x": 0.75, - "c": "#aaaaaa" - }, - "1,0", - { - "x": 0.5 - }, - "1,1", - { - "c": "#cccccc" - }, - "1,2", - "1,3", - { - "x": 8.65 - }, - "1,12", - "1,13", - { - "c": "#aaaaaa", - "w": 2 - }, - "1,14", - { - "x": 0.6 - }, - "1,15" - ], - [ - { - "x": 0.5, - "c": "#aaaaaa" - }, - "2,0", - { - "x": 0.5, - "w": 1.5 - }, - "2,1", - { - "c": "#cccccc" - }, - "2,2", - { - "x": 9.9 - }, - "2,12", - "2,13", - { - "c": "#aaaaaa", - "w": 1.75 - }, - "2,14", - { - "x": 0.5 - }, - "2,15" - ], - [ - { - "x": 0.25, - "c": "#aaaaaa" - }, - "3,0", - { - "x": 0.5, - "w": 1.75 - }, - "3,1", - { - "c": "#cccccc" - }, - "3,2", - { - "x": 9.6 - }, - "3,12", - "3,13", - { - "c": "#777777", - "w": 2.25 - }, - "3,14", - { - "x": 0.5, - "c": "#aaaaaa" - }, - "3,15" - ], - [ - { - "c": "#aaaaaa" - }, - "4,0", - { - "x": 0.5, - "w": 2.25 - }, - "4,1", - { - "c": "#cccccc" - }, - "4,3", - { - "x": 9.95 - }, - "4,13", - { - "c": "#aaaaaa", - "w": 1.75 - }, - "4,14" - ], - [ - { - "y": -0.75, - "x": 17.7, - "c": "#cccccc" - }, - "4,15" - ], - [ - { - "y": -0.25, - "c": "#aaaaaa" - }, - "5,0", - { - "x": 0.5, - "w": 1.25 - }, - "5,1", - { - "w": 1.25 - }, - "5,2" - ], - [ - { - "y": -0.75, - "x": 16.7, - "c": "#cccccc" - }, - "5,13", - "5,14", - "5,15" - ], - [ - { - "r": 6, - "y": -7.05, - "x": 5.4, - "c": "#cccccc" - }, - "0,4", - "0,5", - { - "x": 0.25, - "c": "#aaaaaa" - }, - "0,6", - "0,7" - ], - [ - { - "y": 0.25, - "x": 5.55, - "c": "#cccccc" - }, - "1,4", - "1,5", - "1,6", - "1,7" - ], - [ - { - "x": 4.9 - }, - "2,3", - "2,4", - "2,5", - "2,6" - ], - [ - { - "x": 5 - }, - "3,3", - "3,4", - "3,5", - "3,6" - ], - [ - { - "x": 5.35 - }, - "4,4", - "4,5", - "4,6", - "4,7" - ], - [ - { - "x": 5.35, - "c": "#aaaaaa", - "w": 1.25 - }, - "5,3", - { - "w": 2.25 - }, - "5,4", - { - "c": "#aaaaaa" - }, - "5,7" - ], - [ - { - "r": -6, - "y": -4.25, - "x": 10.05 - }, - "0,8", - "0,9", - { - "x": 0.25, - "c": "#cccccc" - }, - "0,10", - "0,11" - ], - [ - { - "y": 0.25, - "x": 9.4, - "c": "#cccccc" - }, - "1,8", - "1,9", - "1,10", - "1,11" - ], - [ - { - "x": 8.9 - }, - "2,7", - "2,8", - "2,9", - "2,10", - "2,11" - ], - [ - { - "x": 9.4 - }, - "3,8", - "3,9", - "3,10", - "3,11" - ], - [ - { - "x": 8.85 - }, - "4,8", - "4,9", - "4,10", - "4,11", - "4,12" - ], - [ - { - "x": 8.85, - "w": 2.55, - "c": "#aaaaaa" - }, - "5,8", - "5,9", - "5,10" - ] - ] - } -} diff --git a/keyboards/keychron/q10_max/via_json/q10_max_iso_encoder.json b/keyboards/keychron/q10_max/via_json/q10_max_iso_encoder.json deleted file mode 100644 index 5d6e6edf27..0000000000 --- a/keyboards/keychron/q10_max/via_json/q10_max_iso_encoder.json +++ /dev/null @@ -1,399 +0,0 @@ -{ - "name": "Keychron Q10 Max ISO knob", - "vendorId": "0x3434", - "productId": "0x08A1", - "keycodes": ["qmk_lighting"], - "menus": [ - { - "label": "Lighting", - "content": [ - { - "label": "Backlight", - "content": [ - { - "label": "Brightness", - "type": "range", - "options": [0, 255], - "content": ["id_qmk_rgb_matrix_brightness", 3, 1] - }, - { - "label": "Effect", - "type": "dropdown", - "content": ["id_qmk_rgb_matrix_effect", 3, 2], - "options": [ - ["None", 0], - ["Solid Color", 1], - ["Breathing", 2], - ["Band Spiral Val", 3], - ["Cycle All", 4], - ["Cycle Left Right", 5], - ["Cycle Up Down", 6], - ["Rainbow Moving Chevron", 7], - ["Cycle Out In", 8], - ["Cycle Out In Dual", 9], - ["Cycle Pinwheel", 10], - ["Cycle Spiral", 11], - ["Dual Beacon", 12], - ["Rainbow Beacon", 13], - ["Jellybean Raindrops", 14], - ["Pixel Rain", 15], - ["Typing Heatmap", 16], - ["Digital Rain", 17], - ["Reactive Simple", 18], - ["Reactive Multiwide", 19], - ["Reactive Multinexus", 20], - ["Splash", 21], - ["Solid Splash", 22] - ] - }, - { - "showIf": "{id_qmk_rgb_matrix_effect} > 1", - "label": "Effect Speed", - "type": "range", - "options": [0, 255], - "content": ["id_qmk_rgb_matrix_effect_speed", 3, 3] - }, - { - "showIf": "{id_qmk_rgb_matrix_effect} != 0 && ( {id_qmk_rgb_matrix_effect} < 4 || {id_qmk_rgb_matrix_effect} == 18 || ({id_qmk_rgb_matrix_effect} > 17 && {id_qmk_rgb_matrix_effect} != 21) ) ", - "label": "Color", - "type": "color", - "content": ["id_qmk_rgb_matrix_color", 3, 4] - } - ] - } - ] - } - ], - "customKeycodes": [ - {"name": "Left Option", "title": "Left Option", "shortName": "LOpt"}, - {"name": "Right Option", "title": "Right Option", "shortName": "ROpt"}, - {"name": "Left Cmd", "title": "Left Command", "shortName": "LCmd"}, - {"name": "Right Cmd", "title": "Right Command", "shortName": "RCmd"}, - {"name": "Misson Control", "title": "Misson Control in Mac", "shortName": "MCtl"}, - {"name": "Lanuch Pad", "title": "Lanuch Pad in Windows", "shortName": "LPad"}, - {"name": "Task View", "title": "Task View in Windows", "shortName": "Task"}, - {"name": "File Explorer", "title": "File Explorer in Windows", "shortName": "File"}, - {"name": "Screen shot", "title": "Screenshot in macOS", "shortName": "SShot"}, - {"name": "Cortana", "title": "Cortana in Windows", "shortName": "Cortana"}, - {"name": "Siri", "title": "Siri in macOS", "shortName": "Siri"}, - {"name": "Bluetooth Host 1", "title": "Bluetooth Host 1", "shortName": "BTH1"}, - {"name": "Bluetooth Host 2", "title": "Bluetooth Host 2", "shortName": "BTH2"}, - {"name": "Bluetooth Host 3", "title": "Bluetooth Host 3", "shortName": "BTH3"}, - {"name": "2.4G", "title": "2.4G", "shortName": "2.4G"}, - {"name": "Battery Level", "title": "Show battery level", "shortName": "Batt"} - ], - "matrix": {"rows": 6, "cols": 16}, - "layouts": { - "keymap": [ - [ - { - "x": 0.5, - "c": "#aaaaaa" - }, - "0,0\n\n\n\n\n\n\n\n\ne0", - { - "x": 0.5, - "c": "#777777" - }, - "0,1\nESC", - { - "x": 0.25, - "c": "#cccccc" - }, - "0,2", - "0,3", - { - "x": 9.35 - }, - "0,12", - "0,13", - { - "x": 0.45, - "c": "#aaaaaa" - }, - "0,14", - { - "x": 0.45 - }, - "0,15" - ], - [ - { - "y": 0.25, - "x": 0.75 - }, - "1,0", - { - "x": 0.5 - }, - "1,1", - { - "c": "#cccccc" - }, - "1,2", - "1,3", - { - "x": 8.65 - }, - "1,12", - "1,13", - { - "c": "#aaaaaa", - "w": 2 - }, - "1,14", - { - "x": 0.6 - }, - "1,15" - ], - [ - { - "x": 0.5 - }, - "2,0", - { - "x": 0.5, - "w": 1.5 - }, - "2,1", - { - "c": "#cccccc" - }, - "2,2", - { - "x": 10.25 - }, - "2,12", - "2,13", - { - "x": 0.25, - "c": "#aaaaaa", - "w": 1.25, - "h": 2, - "w2": 1.5, - "h2": 1, - "x2": -0.25 - }, - "2,14", - { - "x": 0.45 - }, - "2,15" - ], - [ - { - "x": 0.25 - }, - "3,0", - { - "x": 0.5, - "w": 1.75 - }, - "3,1", - { - "c": "#cccccc" - }, - "3,2", - { - "x": 9.5 - }, - "3,12", - "3,13", - "3,14", - { - "x": 1.9, - "c": "#aaaaaa" - }, - "3,15" - ], - [ - "4,0", - { - "x": 0.5, - "w": 1.25 - }, - "4,1", - "4,2", - { - "c": "#cccccc" - }, - "4,3", - { - "x": 9.75 - }, - "4,13", - { - "c": "#aaaaaa", - "w": 1.75 - }, - "4,14" - ], - [ - { - "y": -0.75, - "x": 17.5, - "c": "#777777" - }, - "4,15" - ], - [ - { - "y": -0.25, - "c": "#aaaaaa" - }, - "5,0", - { - "x": 0.5, - "w": 1.25 - }, - "5,1", - { - "w": 1.25 - }, - "5,2" - ], - [ - { - "y": -0.75, - "x": 16.5, - "c": "#777777" - }, - "5,13", - "5,14", - "5,15" - ], - [ - { - "r": 6, - "y": -7.05, - "x": 5.4, - "c": "#cccccc" - }, - "0,4", - "0,5", - { - "x": 0.25, - "c": "#aaaaaa" - }, - "0,6", - "0,7" - ], - [ - { - "y": 0.25, - "x": 5.55, - "c": "#cccccc" - }, - "1,4", - "1,5", - "1,6", - "1,7" - ], - [ - { - "x": 4.9 - }, - "2,3", - "2,4", - "2,5", - "2,6" - ], - [ - { - "x": 5 - }, - "3,3", - "3,4", - "3,5", - "3,6" - ], - [ - { - "x": 5.35 - }, - "4,4", - "4,5", - "4,6", - "4,7" - ], - [ - { - "x": 5.35, - "c": "#aaaaaa", - "w": 1.25 - }, - "5,3", - { - "w": 2.25 - }, - "5,4", - "5,7" - ], - [ - { - "r": -6, - "y": -4.25, - "x": 10.05 - }, - "0,8", - "0,9", - { - "x": 0.25, - "c": "#cccccc" - }, - "0,10", - "0,11" - ], - [ - { - "y": 0.25, - "x": 9.4 - }, - "1,8", - "1,9", - "1,10", - "1,11" - ], - [ - { - "x": 8.9 - }, - "2,7", - "2,8", - "2,9", - "2,10", - "2,11" - ], - [ - { - "x": 9.4 - }, - "3,8", - "3,9", - "3,10", - "3,11" - ], - [ - { - "x": 8.85 - }, - "4,8", - "4,9", - "4,10", - "4,11", - "4,12" - ], - [ - { - "x": 8.85, - "c": "#aaaaaa", - "w": 2.55 - }, - "5,8", - "5,9", - "5,10" - ] - ] - } -} diff --git a/keyboards/keychron/q10_pro/ansi_encoder/ansi_encoder.c b/keyboards/keychron/q10_pro/ansi_encoder/ansi_encoder.c deleted file mode 100644 index 24632992fe..0000000000 --- a/keyboards/keychron/q10_pro/ansi_encoder/ansi_encoder.c +++ /dev/null @@ -1,123 +0,0 @@ -/* 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 . - */ - -#include "quantum.h" - -// clang-format off -#ifdef RGB_MATRIX_ENABLE -const snled27351_led_t g_snled27351_leds[RGB_MATRIX_LED_COUNT] = { -/* Refer to snled27351manual for these locations - * driver - * | R location - * | | G location - * | | | B location - * | | | | */ - {0, C_2, A_2, B_2}, // ESC - {0, C_3, A_3, B_3}, // F1 - {0, C_4, A_4, B_4}, // F2 - {0, C_5, A_5, B_5}, // F3 - {0, C_6, A_6, B_6}, // F4 - {0, C_7, A_7, B_7}, // F5 - {0, C_8, A_8, B_8}, // F6 - {0, C_9, A_9, B_9}, // F7 - {0, C_10, A_10, B_10}, // F8 - {0, C_11, A_11, B_11}, // F9 - {0, C_12, A_12, B_12}, // F10 - {0, C_13, A_13, B_13}, // F11 - {0, C_14, A_14, B_14}, // F12 - {0, C_15, A_15, B_15}, // INS - {0, C_16, A_16, B_16}, // DEL - - {0, I_1, G_1, H_1}, // M1 - {0, I_2, G_2, H_2}, // `~ - {0, I_3, G_3, H_3}, // 1! - {0, I_4, G_4, H_4}, // 2@ - {0, I_5, G_5, H_5}, // 3# - {0, I_6, G_6, H_6}, // 4$ - {0, I_7, G_7, H_7}, // 5% - {0, I_8, G_8, H_8}, // 6^ - {0, I_9, G_9, H_9}, // 7& - {0, I_10, G_10, H_10}, // 8* - {0, I_11, G_11, H_11}, // 9( - {0, I_12, G_12, H_12}, // 0) - {0, I_13, G_13, H_13}, // -_ - {0, I_14, G_14, H_14}, // =+ - {0, I_15, G_15, H_15}, // BackSpace - {0, I_16, G_16, H_16}, // PgUp - - {0, F_1, D_1, E_1}, // M2 - {0, F_2, D_2, E_2}, // TAB - {0, F_3, D_3, E_3}, // Q - {0, F_4, D_4, E_4}, // W - {0, F_5, D_5, E_5}, // E - {0, F_6, D_6, E_6}, // R - {0, F_7, D_7, E_7}, // T - {0, F_8, D_8, E_8}, // Y - {0, F_9, D_9, E_9}, // U - {0, F_10, D_10, E_10}, // I - {0, F_11, D_11, E_11}, // O - {0, F_12, D_12, E_12}, // P - {0, F_13, D_13, E_13}, // [ - {0, F_14, D_14, E_14}, // ] - {0, F_15, D_15, E_15}, // | - {0, F_16, D_16, E_16}, // PgDn - - {1, C_16, A_16, B_16}, // M3 - {1, C_15, A_15, B_15}, // CapsLock - {1, C_14, A_14, B_14}, // A - {1, C_13, A_13, B_13}, // S - {1, C_12, A_12, B_12}, // D - {1, C_11, A_11, B_11}, // F - {1, C_10, A_10, B_10}, // G - {1, C_8, A_8, B_8}, // H - {1, C_7, A_7, B_7}, // J - {1, C_6, A_6, B_6}, // K - {1, C_5, A_5, B_5}, // L - {1, C_4, A_4, B_4}, // ; - {1, C_3, A_3, B_3}, // ' - {1, C_2, A_2, B_2}, // Enter - {1, C_1, A_1, B_1}, // Home - - {1, I_16, G_16, H_16}, // M4 - {1, I_15, G_15, H_15}, // Shift_L - {1, I_13, G_13, H_13}, // Z - {1, I_12, G_12, H_12}, // X - {1, I_11, G_11, H_11}, // C - {1, I_10, G_10, H_10}, // V - {1, I_9, G_9, H_9}, // B - {1, I_8, G_8, H_8}, // B - {1, I_7, G_7, H_7}, // N - {1, I_6, G_6, H_6}, // M - {1, I_5, G_5, H_5}, // , - {1, I_4, G_4, H_4}, // . - {1, I_3, G_3, H_3}, // ? - {1, I_2, G_2, H_2}, // Shift_R - {1, I_1, G_1, H_1}, // Up - - {1, F_16, D_16, E_16}, // M5 - {1, F_15, D_15, E_15}, // Ctrl_L - {1, F_14, D_14, E_14}, // Win_L - {1, F_13, D_13, E_13}, // Alt_L - {1, F_12, D_12, E_12}, // Space - {1, F_9, D_9, E_9}, // Fn - {1, F_8, D_8, E_8}, // Space - {1, F_7, D_7, E_7}, // Alt_R - {1, F_6, D_6, E_6}, // Ctrl_R - {1, F_3, D_3, E_3}, // Left - {1, F_2, D_2, E_2}, // Down - {1, F_1, D_1, E_1}, // Right -}; -#endif diff --git a/keyboards/keychron/q10_pro/ansi_encoder/config.h b/keyboards/keychron/q10_pro/ansi_encoder/config.h deleted file mode 100644 index 27bf234b17..0000000000 --- a/keyboards/keychron/q10_pro/ansi_encoder/config.h +++ /dev/null @@ -1,59 +0,0 @@ -/* 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 . - */ - -#pragma once - -#ifdef RGB_MATRIX_ENABLE -/* RGB Matrix Driver Configuration */ -# define DRIVER_COUNT 2 -# define DRIVER_ADDR_1 0b1110111 -# define DRIVER_ADDR_2 0b1110100 - -/* RGB Matrix Configuration */ -# define DRIVER_1_LED_TOTAL 47 -# define DRIVER_2_LED_TOTAL 42 -# define RGB_MATRIX_LED_COUNT (DRIVER_1_LED_TOTAL + DRIVER_2_LED_TOTAL) - -/* 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 - -/* Use the first 9 channels of led driver */ -# define PHASE_CHANNEL MSKPHASE_9CHANNEL - -/* Set LED driver current */ -# define SNLED27351_CURRENT_TUNE \ - { 0x28, 0x28, 0x28, 0x28, 0x28, 0x28, 0x28, 0x28, 0x28, 0x28, 0x28, 0x28 } - -/* Set to infinit, which is use in USB mode by default */ -# define RGB_MATRIX_TIMEOUT RGB_MATRIX_TIMEOUT_INFINITE - -/* Allow shutdown of led driver to save power */ -# define RGB_MATRIX_DRIVER_SHUTDOWN_ENABLE - -/* Turn off backlight on low brightness to save power */ -# define RGB_MATRIX_BRIGHTNESS_TURN_OFF_VAL 32 - -/* Indication led */ -# define CAPS_LOCK_INDEX 48 -# define LOW_BAT_IND_INDEX 81 - -# define RGB_MATRIX_KEYPRESSES -# define RGB_MATRIX_FRAMEBUFFER_EFFECTS -#endif diff --git a/keyboards/keychron/q10_pro/ansi_encoder/info.json b/keyboards/keychron/q10_pro/ansi_encoder/info.json deleted file mode 100644 index 9d648d64f7..0000000000 --- a/keyboards/keychron/q10_pro/ansi_encoder/info.json +++ /dev/null @@ -1,205 +0,0 @@ -{ - "usb": { - "pid": "0x06A0", - "device_version": "1.0.1" - }, - "layouts": { - "LAYOUT_90_ansi": { - "layout": [ - {"matrix":[0,0], "x":0.5, "y":0}, - {"matrix":[0,1], "x":2, "y":0}, - {"matrix":[0,2], "x":3.25, "y":0}, - {"matrix":[0,3], "x":4.25, "y":0}, - {"matrix":[0,4], "x":5.4, "y":-0.55}, - {"matrix":[0,5], "x":6.4, "y":-0.55}, - {"matrix":[0,6], "x":7.65, "y":-0.55}, - {"matrix":[0,7], "x":8.65, "y":-0.55}, - {"matrix":[0,8], "x":10.05, "y":1.45}, - {"matrix":[0,9], "x":11.05, "y":1.45}, - {"matrix":[0,10], "x":12.3, "y":1.45}, - {"matrix":[0,11], "x":13.3, "y":1.45}, - {"matrix":[0,12], "x":14.6, "y":0}, - {"matrix":[0,13], "x":15.6, "y":0}, - {"matrix":[0,14], "x":17.05, "y":0}, - {"matrix":[0,15], "x":18.5, "y":0}, - - {"matrix":[1,0], "x":0.75, "y":1.25}, - {"matrix":[1,1], "x":2.25, "y":1.25}, - {"matrix":[1,2], "x":3.25, "y":1.25}, - {"matrix":[1,3], "x":4.25, "y":1.25}, - {"matrix":[1,4], "x":5.55, "y":0.7}, - {"matrix":[1,5], "x":6.55, "y":0.7}, - {"matrix":[1,6], "x":7.55, "y":0.7}, - {"matrix":[1,7], "x":8.55, "y":0.7}, - {"matrix":[1,8], "x":9.4, "y":2.7}, - {"matrix":[1,9], "x":10.4, "y":2.7}, - {"matrix":[1,10], "x":11.4, "y":2.7}, - {"matrix":[1,11], "x":12.4, "y":2.7}, - {"matrix":[1,12], "x":13.9, "y":1.25}, - {"matrix":[1,13], "x":14.9, "y":1.25}, - {"matrix":[1,14], "x":15.9, "y":1.25, "w":2}, - {"matrix":[1,15], "x":18.5, "y":1.25}, - - {"matrix":[2,0], "x":0.5, "y":2.25}, - {"matrix":[2,1], "x":2, "y":2.25, "w":1.5}, - {"matrix":[2,2], "x":3.5, "y":2.25}, - {"matrix":[2,3], "x":4.9, "y":1.7}, - {"matrix":[2,4], "x":5.9, "y":1.7}, - {"matrix":[2,5], "x":6.9, "y":1.7}, - {"matrix":[2,6], "x":7.9, "y":1.7}, - {"matrix":[2,7], "x":8.9, "y":3.7}, - {"matrix":[2,8], "x":9.9, "y":3.7}, - {"matrix":[2,9], "x":10.9, "y":3.7}, - {"matrix":[2,10], "x":11.9, "y":3.7}, - {"matrix":[2,11], "x":12.9, "y":3.7}, - {"matrix":[2,12], "x":14.4, "y":2.25}, - {"matrix":[2,13], "x":15.4, "y":2.25}, - {"matrix":[2,14], "x":16.4, "y":2.25, "w":1.75}, - {"matrix":[2,15], "x":18.65, "y":2.25}, - - {"matrix":[3,0], "x":0.25, "y":3.25}, - {"matrix":[3,1], "x":1.75, "y":3.25, "w":1.75}, - {"matrix":[3,2], "x":3.5, "y":3.25}, - {"matrix":[3,3], "x":5, "y":2.7}, - {"matrix":[3,4], "x":6, "y":2.7}, - {"matrix":[3,5], "x":7, "y":2.7}, - {"matrix":[3,6], "x":8, "y":2.7}, - {"matrix":[3,8], "x":9.4, "y":4.7}, - {"matrix":[3,9], "x":10.4, "y":4.7}, - {"matrix":[3,10], "x":11.4, "y":4.7}, - {"matrix":[3,11], "x":12.4, "y":4.7}, - {"matrix":[3,12], "x":14, "y":3.25}, - {"matrix":[3,13], "x":15, "y":3.25}, - {"matrix":[3,14], "x":16, "y":3.25, "w":2.25}, - {"matrix":[3,15], "x":18.75, "y":3.25}, - - {"matrix":[4,0], "x":0, "y":4.25}, - {"matrix":[4,1], "x":1.5, "y":4.25, "w":2.25}, - {"matrix":[4,3], "x":3.75, "y":4.25}, - {"matrix":[4,4], "x":5.35, "y":3.7}, - {"matrix":[4,5], "x":6.35, "y":3.7}, - {"matrix":[4,6], "x":7.35, "y":3.7}, - {"matrix":[4,7], "x":8.35, "y":3.7}, - {"matrix":[4,8], "x":8.85, "y":5.7}, - {"matrix":[4,9], "x":9.85, "y":5.7}, - {"matrix":[4,10], "x":10.85, "y":5.7}, - {"matrix":[4,11], "x":11.85, "y":5.7}, - {"matrix":[4,12], "x":12.85, "y":5.7}, - {"matrix":[4,13], "x":14.5, "y":4.25}, - {"matrix":[4,14], "x":15.5, "y":4.25, "w":1.75}, - {"matrix":[4,15], "x":17.5, "y":4.5}, - - {"matrix":[5,0], "x":0, "y":5.25}, - {"matrix":[5,1], "x":1.5, "y":5.25, "w":1.25}, - {"matrix":[5,2], "x":2.75, "y":5.25, "w":1.25}, - {"matrix":[5,3], "x":5.35, "y":4.7, "w":1.25}, - {"matrix":[5,4], "x":6.6, "y":4.7, "w":2.25}, - {"matrix":[5,7], "x":8.85, "y":4.7}, - {"matrix":[5,8], "x":8.85, "y":6.7, "w":2.55}, - {"matrix":[5,9], "x":11.4, "y":6.7}, - {"matrix":[5,10], "x":12.4, "y":6.7}, - {"matrix":[5,13], "x":16.5, "y":5.5}, - {"matrix":[5,14], "x":17.5, "y":5.5}, - {"matrix":[5,15], "x":18.5, "y":5.5} - ] - } - }, - "rgb_matrix": { - "layout": [ - {"matrix":[0, 1], "flags":1, "x":19, "y":0}, - {"matrix":[0, 2], "flags":1, "x":34, "y":0}, - {"matrix":[0, 3], "flags":1, "x":46, "y":0}, - {"matrix":[0, 4], "flags":1, "x":60, "y":1}, - {"matrix":[0, 5], "flags":1, "x":72, "y":3}, - {"matrix":[0, 6], "flags":1, "x":87, "y":6}, - {"matrix":[0, 7], "flags":1, "x":99, "y":8}, - {"matrix":[0, 8], "flags":1, "x":120, "y":8}, - {"matrix":[0, 9], "flags":1, "x":132, "y":6}, - {"matrix":[0, 10], "flags":1, "x":147, "y":3}, - {"matrix":[0, 11], "flags":1, "x":159, "y":1}, - {"matrix":[0, 12], "flags":1, "x":173, "y":0}, - {"matrix":[0, 13], "flags":1, "x":185, "y":0}, - {"matrix":[0, 14], "flags":1, "x":203, "y":0}, - {"matrix":[0, 15], "flags":1, "x":221, "y":0}, - - {"matrix":[1, 0], "flags":4, "x":5, "y":14}, - {"matrix":[1, 1], "flags":4, "x":24, "y":14}, - {"matrix":[1, 2], "flags":8, "x":36, "y":14}, - {"matrix":[1, 3], "flags":8, "x":48, "y":13}, - {"matrix":[1, 4], "flags":8, "x":62, "y":15}, - {"matrix":[1, 5], "flags":4, "x":74, "y":17}, - {"matrix":[1, 6], "flags":4, "x":86, "y":20}, - {"matrix":[1, 7], "flags":4, "x":98, "y":22}, - {"matrix":[1, 8], "flags":4, "x":115, "y":22}, - {"matrix":[1, 9], "flags":4, "x":127, "y":20}, - {"matrix":[1, 10], "flags":4, "x":139, "y":17}, - {"matrix":[1, 11], "flags":4, "x":151, "y":15}, - {"matrix":[1, 12], "flags":4, "x":165, "y":13}, - {"matrix":[1, 13], "flags":4, "x":177, "y":14}, - {"matrix":[1, 14], "flags":1, "x":195, "y":14}, - {"matrix":[1, 15], "flags":1, "x":220, "y":13}, - - {"matrix":[2, 0], "flags":4, "x":4, "y":24}, - {"matrix":[2, 1], "flags":1, "x":24, "y":24}, - {"matrix":[2, 2], "flags":4, "x":40, "y":24}, - {"matrix":[2, 3], "flags":4, "x":53, "y":24}, - {"matrix":[2, 4], "flags":4, "x":65, "y":27}, - {"matrix":[2, 5], "flags":4, "x":77, "y":29}, - {"matrix":[2, 6], "flags":4, "x":89, "y":31}, - {"matrix":[2, 7], "flags":4, "x":112, "y":33}, - {"matrix":[2, 8], "flags":4, "x":124, "y":31}, - {"matrix":[2, 9], "flags":4, "x":136, "y":29}, - {"matrix":[2, 10], "flags":4, "x":148, "y":27}, - {"matrix":[2, 11], "flags":4, "x":160, "y":24}, - {"matrix":[2, 12], "flags":4, "x":174, "y":24}, - {"matrix":[2, 13], "flags":4, "x":186, "y":24}, - {"matrix":[2, 14], "flags":4, "x":201, "y":24}, - {"matrix":[2, 15], "flags":1, "x":224, "y":24}, - - {"matrix":[3, 0], "flags":4, "x":2, "y":34}, - {"matrix":[3, 1], "flags":8, "x":23, "y":34}, - {"matrix":[3, 2], "flags":4, "x":40, "y":34}, - {"matrix":[3, 3], "flags":4, "x":54, "y":35}, - {"matrix":[3, 4], "flags":4, "x":66, "y":37}, - {"matrix":[3, 5], "flags":4, "x":78, "y":39}, - {"matrix":[3, 6], "flags":4, "x":90, "y":42}, - {"matrix":[3, 8], "flags":4, "x":118, "y":43}, - {"matrix":[3, 9], "flags":4, "x":130, "y":40}, - {"matrix":[3, 10], "flags":4, "x":142, "y":38}, - {"matrix":[3, 11], "flags":4, "x":154, "y":36}, - {"matrix":[3, 12], "flags":4, "x":167, "y":35}, - {"matrix":[3, 13], "flags":4, "x":179, "y":35}, - {"matrix":[3, 14], "flags":1, "x":199, "y":35}, - {"matrix":[3, 15], "flags":4, "x":224, "y":35}, - - {"matrix":[4, 0], "flags":4, "x":0, "y":45}, - {"matrix":[4, 1], "flags":1, "x":24, "y":45}, - {"matrix":[4, 3], "flags":4, "x":44, "y":45}, - {"matrix":[4, 4], "flags":4, "x":57, "y":46}, - {"matrix":[4, 5], "flags":4, "x":69, "y":48}, - {"matrix":[4, 6], "flags":4, "x":81, "y":51}, - {"matrix":[4, 7], "flags":4, "x":93, "y":53}, - {"matrix":[4, 8], "flags":4, "x":111, "y":54}, - {"matrix":[4, 9], "flags":4, "x":123, "y":52}, - {"matrix":[4, 10], "flags":4, "x":135, "y":50}, - {"matrix":[4, 11], "flags":4, "x":147, "y":48}, - {"matrix":[4, 12], "flags":4, "x":159, "y":46}, - {"matrix":[4, 13], "flags":4, "x":173, "y":45}, - {"matrix":[4, 14], "flags":1, "x":190, "y":45}, - {"matrix":[4, 15], "flags":1, "x":210, "y":47}, - - {"matrix":[5, 0], "flags":4, "x":0, "y":55}, - {"matrix":[5, 1], "flags":1, "x":18, "y":55}, - {"matrix":[5, 2], "flags":1, "x":33, "y":55}, - {"matrix":[5, 3], "flags":1, "x":56, "y":57}, - {"matrix":[5, 4], "flags":4, "x":77, "y":61}, - {"matrix":[5, 7], "flags":1, "x":97, "y":64}, - {"matrix":[5, 8], "flags":4, "x":124, "y":63}, - {"matrix":[5, 9], "flags":1, "x":147, "y":59}, - {"matrix":[5, 10], "flags":1, "x":159, "y":56}, - {"matrix":[5, 13], "flags":1, "x":198, "y":58}, - {"matrix":[5, 14], "flags":1, "x":210, "y":58}, - {"matrix":[5, 15], "flags":1, "x":222, "y":58} - ] - } -} diff --git a/keyboards/keychron/q10_pro/ansi_encoder/keymaps/default/keymap.c b/keyboards/keychron/q10_pro/ansi_encoder/keymaps/default/keymap.c deleted file mode 100644 index 210b328351..0000000000 --- a/keyboards/keychron/q10_pro/ansi_encoder/keymaps/default/keymap.c +++ /dev/null @@ -1,68 +0,0 @@ -/* 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 . - */ - -#include QMK_KEYBOARD_H - -enum layers{ - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN, -}; - -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_90_ansi( - KC_MUTE, KC_ESC, KC_BRID, KC_BRIU, KC_MCTL, KC_LPAD, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_INS, KC_DEL, - MC_1, KC_GRV, 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_PGUP, - MC_2, 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_PGDN, - MC_3, 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_HOME, - MC_4, KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, - MC_5, KC_LCTL, KC_LOPTN, KC_LCMMD, KC_SPC, MO(MAC_FN), KC_SPC, KC_RCMMD, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - - [MAC_FN] = LAYOUT_90_ansi( - RGB_TOG, _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, - _______, _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, BAT_LVL, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - - [WIN_BASE] = LAYOUT_90_ansi( - KC_MUTE, KC_ESC, 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_INS, KC_DEL, - MC_1, KC_GRV, 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_PGUP, - MC_2, 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_PGDN, - MC_3, 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_HOME, - MC_4, KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, - MC_5, KC_LCTL, KC_LWIN, KC_LALT, KC_SPC, MO(WIN_FN), KC_SPC, KC_RALT, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - - [WIN_FN] = LAYOUT_90_ansi( - RGB_TOG, _______, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, - _______, _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, BAT_LVL, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), -}; - -#if defined(ENCODER_MAP_ENABLE) -const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][2] = { - [MAC_BASE] = { ENCODER_CCW_CW(KC_VOLD, KC_VOLU) }, - [MAC_FN] = { ENCODER_CCW_CW(RGB_VAD, RGB_VAI) }, - [WIN_BASE] = { ENCODER_CCW_CW(KC_VOLD, KC_VOLU) }, - [WIN_FN] = { ENCODER_CCW_CW(RGB_VAD, RGB_VAI) }, -}; -#endif // ENCODER_MAP_ENABLE diff --git a/keyboards/keychron/q10_pro/ansi_encoder/keymaps/default/rules.mk b/keyboards/keychron/q10_pro/ansi_encoder/keymaps/default/rules.mk deleted file mode 100644 index ee32568148..0000000000 --- a/keyboards/keychron/q10_pro/ansi_encoder/keymaps/default/rules.mk +++ /dev/null @@ -1 +0,0 @@ -ENCODER_MAP_ENABLE = yes diff --git a/keyboards/keychron/q10_pro/ansi_encoder/keymaps/via/keymap.c b/keyboards/keychron/q10_pro/ansi_encoder/keymaps/via/keymap.c deleted file mode 100644 index e064b5ad95..0000000000 --- a/keyboards/keychron/q10_pro/ansi_encoder/keymaps/via/keymap.c +++ /dev/null @@ -1,68 +0,0 @@ -/* 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 . - */ - -#include QMK_KEYBOARD_H - -enum layers{ - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN, -}; - -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_90_ansi( - KC_MUTE, KC_ESC, KC_BRID, KC_BRIU, KC_MICT, KC_LAPA, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_INS, KC_DEL, - MC_1, KC_GRV, 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_PGUP, - MC_2, 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_PGDN, - MC_3, 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_HOME, - MC_4, KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, - MC_5, KC_LCTL, KC_LOPTN, KC_LCMMD, KC_SPC, MO(MAC_FN), KC_SPC, KC_RCMMD, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - - [MAC_FN] = LAYOUT_90_ansi( - RGB_TOG, _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, - _______, _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, BAT_LVL, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - - [WIN_BASE] = LAYOUT_90_ansi( - KC_MUTE, KC_ESC, 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_INS, KC_DEL, - MC_1, KC_GRV, 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_PGUP, - MC_2, 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_PGDN, - MC_3, 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_HOME, - MC_4, KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, - MC_5, KC_LCTL, KC_LWIN, KC_LALT, KC_SPC, MO(WIN_FN), KC_SPC, KC_RALT, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - - [WIN_FN] = LAYOUT_90_ansi( - RGB_TOG, _______, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, - _______, _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, BAT_LVL, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), -}; - -#if defined(ENCODER_MAP_ENABLE) -const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][2] = { - [MAC_BASE] = { ENCODER_CCW_CW(KC_VOLD, KC_VOLU) }, - [MAC_FN] = { ENCODER_CCW_CW(RGB_VAD, RGB_VAI) }, - [WIN_BASE] = { ENCODER_CCW_CW(KC_VOLD, KC_VOLU) }, - [WIN_FN] = { ENCODER_CCW_CW(RGB_VAD, RGB_VAI) }, -}; -#endif // ENCODER_MAP_ENABLE diff --git a/keyboards/keychron/q10_pro/ansi_encoder/keymaps/via/rules.mk b/keyboards/keychron/q10_pro/ansi_encoder/keymaps/via/rules.mk deleted file mode 100644 index f1adcab005..0000000000 --- a/keyboards/keychron/q10_pro/ansi_encoder/keymaps/via/rules.mk +++ /dev/null @@ -1,2 +0,0 @@ -VIA_ENABLE = yes -ENCODER_MAP_ENABLE = yes diff --git a/keyboards/keychron/q10_pro/ansi_encoder/rules.mk b/keyboards/keychron/q10_pro/ansi_encoder/rules.mk deleted file mode 100644 index a77dc6c674..0000000000 --- a/keyboards/keychron/q10_pro/ansi_encoder/rules.mk +++ /dev/null @@ -1 +0,0 @@ -# This file intentionally left blank diff --git a/keyboards/keychron/q10_pro/config.h b/keyboards/keychron/q10_pro/config.h deleted file mode 100644 index b3f295e738..0000000000 --- a/keyboards/keychron/q10_pro/config.h +++ /dev/null @@ -1,84 +0,0 @@ -/* 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 . - */ - -#pragma once - -/* Disable RGB lighting when PC is in suspend */ -#define RGB_DISABLE_WHEN_USB_SUSPENDED - -/* DIP switch for Mac/win OS switch */ -#define DIP_SWITCH_PINS \ - { A8 } - -/* Encoder Configuration */ -#ifdef ENCODER_ENABLE -# define ENCODER_DEFAULT_POS 0x3 -#endif - -#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 \ - { 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 - -/* Emulated EEPROM configuration */ -#define WEAR_LEVELING_LOGICAL_SIZE 2048 -#define WEAR_LEVELING_BACKING_SIZE (WEAR_LEVELING_LOGICAL_SIZE * 2) -#define DYNAMIC_KEYMAP_EEPROM_MAX_ADDR 2047 - -/* HC595 Driver configuration */ -#define HC595_END_INDEX 15 - -/* Factory test keys */ -#define FN_KEY1 MO(1) -#define FN_KEY2 MO(3) diff --git a/keyboards/keychron/q10_pro/halconf.h b/keyboards/keychron/q10_pro/halconf.h deleted file mode 100644 index 8d8e138e4e..0000000000 --- a/keyboards/keychron/q10_pro/halconf.h +++ /dev/null @@ -1,29 +0,0 @@ -/* Copyright 2023 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 _CHIBIOS_HAL_CONF_VER_8_0_ - -#define HAL_USE_I2C TRUE - -#ifdef KC_BLUETOOTH_ENABLE -# define PAL_USE_CALLBACKS TRUE -# define HAL_USE_SERIAL TRUE -# define HAL_USE_RTC TRUE -#endif - -#include_next diff --git a/keyboards/keychron/q10_pro/info.json b/keyboards/keychron/q10_pro/info.json deleted file mode 100644 index a92ea5b417..0000000000 --- a/keyboards/keychron/q10_pro/info.json +++ /dev/null @@ -1,64 +0,0 @@ -{ - "keyboard_name": "Keychron Q10 Pro", - "manufacturer": "Keychron", - "url": "https://github.com/Keychron", - "maintainer": "lalalademaxiya1", - "processor": "STM32L432", - "bootloader": "stm32-dfu", - "usb": { - "vid": "0x3434" - }, - "features": { - "bootmagic": true, - "command": false, - "console": false, - "extrakey": true, - "mousekey": true, - "nkro": true, - "rgb_matrix": true, - "dip_switch": true, - "encoder": true, - "raw": true - }, - "rgb_matrix": { - "driver": "snled27351", - "animations": { - "breathing": true, - "band_spiral_val": true, - "cycle_all": true, - "cycle_left_right": true, - "cycle_up_down": true, - "rainbow_moving_chevron": true, - "cycle_out_in": true, - "cycle_out_in_dual": true, - "cycle_pinwheel": true, - "cycle_spiral": true, - "dual_beacon": true, - "rainbow_beacon": true, - "jellybean_raindrops": true, - "pixel_rain": true, - "typing_heatmap": true, - "digital_rain": true, - "solid_reactive_simple": true, - "solid_reactive_multiwide": true, - "solid_reactive_multinexus": true, - "splash": true, - "solid_splash": true - } - }, - "matrix_pins": { - "cols": [null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null], - "rows": ["B5", "B4", "B3", "A15", "A14", "A13"], - "custom": true, - "custom_lite": true - }, - "diode_direction": "ROW2COL", - "encoder": { - "rotary": [ - {"pin_a": "A0", "pin_b": "A10"} - ] - }, - "bootmagic": { - "matrix": [0, 1] - } -} diff --git a/keyboards/keychron/q10_pro/iso_encoder/config.h b/keyboards/keychron/q10_pro/iso_encoder/config.h deleted file mode 100644 index 15522566c2..0000000000 --- a/keyboards/keychron/q10_pro/iso_encoder/config.h +++ /dev/null @@ -1,59 +0,0 @@ -/* 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 . - */ - -#pragma once - -#ifdef RGB_MATRIX_ENABLE -/* RGB Matrix Driver Configuration */ -# define DRIVER_COUNT 2 -# define DRIVER_ADDR_1 0b1110111 -# define DRIVER_ADDR_2 0b1110100 - -/* RGB Matrix Configuration */ -# define DRIVER_1_LED_TOTAL 47 -# define DRIVER_2_LED_TOTAL 43 -# define RGB_MATRIX_LED_COUNT (DRIVER_1_LED_TOTAL + DRIVER_2_LED_TOTAL) - -/* 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 - -/* Use the first 9 channels of led driver */ -# define PHASE_CHANNEL MSKPHASE_9CHANNEL - -/* Set LED driver current */ -# define SNLED27351_CURRENT_TUNE \ - { 0x28, 0x28, 0x28, 0x28, 0x28, 0x28, 0x28, 0x28, 0x28, 0x28, 0x28, 0x28 } - -/* Set to infinit, which is use in USB mode by default */ -# define RGB_MATRIX_TIMEOUT RGB_MATRIX_TIMEOUT_INFINITE - -/* Allow shutdown of led driver to save power */ -# define RGB_MATRIX_DRIVER_SHUTDOWN_ENABLE - -/* Turn off backlight on low brightness to save power */ -# define RGB_MATRIX_BRIGHTNESS_TURN_OFF_VAL 32 - -/* Indication led */ -# define CAPS_LOCK_INDEX 47 -# define LOW_BAT_IND_INDEX 82 - -# define RGB_MATRIX_KEYPRESSES -# define RGB_MATRIX_FRAMEBUFFER_EFFECTS -#endif diff --git a/keyboards/keychron/q10_pro/iso_encoder/info.json b/keyboards/keychron/q10_pro/iso_encoder/info.json deleted file mode 100644 index 77025cf993..0000000000 --- a/keyboards/keychron/q10_pro/iso_encoder/info.json +++ /dev/null @@ -1,207 +0,0 @@ -{ - "usb": { - "pid": "0x06A1", - "device_version": "1.0.1" - }, - "layouts": { - "LAYOUT_91_iso": { - "layout": [ - {"matrix":[0,0], "x":0.5, "y":0}, - {"matrix":[0,1], "x":2, "y":0}, - {"matrix":[0,2], "x":3.25, "y":0}, - {"matrix":[0,3], "x":4.25, "y":0}, - {"matrix":[0,4], "x":5.4, "y":-0.55}, - {"matrix":[0,5], "x":6.4, "y":-0.55}, - {"matrix":[0,6], "x":7.65, "y":-0.55}, - {"matrix":[0,7], "x":8.65, "y":-0.55}, - {"matrix":[0,8], "x":10.05, "y":1.45}, - {"matrix":[0,9], "x":11.05, "y":1.45}, - {"matrix":[0,10], "x":12.3, "y":1.45}, - {"matrix":[0,11], "x":13.3, "y":1.45}, - {"matrix":[0,12], "x":14.6, "y":0}, - {"matrix":[0,13], "x":15.6, "y":0}, - {"matrix":[0,14], "x":17.05, "y":0}, - {"matrix":[0,15], "x":18.5, "y":0}, - - {"matrix":[1,0], "x":0.75, "y":1.25}, - {"matrix":[1,1], "x":2.25, "y":1.25}, - {"matrix":[1,2], "x":3.25, "y":1.25}, - {"matrix":[1,3], "x":4.25, "y":1.25}, - {"matrix":[1,4], "x":5.55, "y":0.7}, - {"matrix":[1,5], "x":6.55, "y":0.7}, - {"matrix":[1,6], "x":7.55, "y":0.7}, - {"matrix":[1,7], "x":8.55, "y":0.7}, - {"matrix":[1,8], "x":9.4, "y":2.7}, - {"matrix":[1,9], "x":10.4, "y":2.7}, - {"matrix":[1,10], "x":11.4, "y":2.7}, - {"matrix":[1,11], "x":12.4, "y":2.7}, - {"matrix":[1,12], "x":13.9, "y":1.25}, - {"matrix":[1,13], "x":14.9, "y":1.25}, - {"matrix":[1,14], "x":15.9, "y":1.25, "w":2}, - {"matrix":[1,15], "x":18.5, "y":1.25}, - - {"matrix":[2,0], "x":0.5, "y":2.25}, - {"matrix":[2,1], "x":2, "y":2.25, "w":1.5}, - {"matrix":[2,2], "x":3.5, "y":2.25}, - {"matrix":[2,3], "x":4.9, "y":1.7}, - {"matrix":[2,4], "x":5.9, "y":1.7}, - {"matrix":[2,5], "x":6.9, "y":1.7}, - {"matrix":[2,6], "x":7.9, "y":1.7}, - {"matrix":[2,7], "x":8.9, "y":3.7}, - {"matrix":[2,8], "x":9.9, "y":3.7}, - {"matrix":[2,9], "x":10.9, "y":3.7}, - {"matrix":[2,10], "x":11.9, "y":3.7}, - {"matrix":[2,11], "x":12.9, "y":3.7}, - {"matrix":[2,12], "x":14.75, "y":2.25}, - {"matrix":[2,13], "x":15.75, "y":2.25}, - {"matrix":[2,15], "x":18.65, "y":2.25}, - - {"matrix":[3,0], "x":0.25, "y":3.25}, - {"matrix":[3,1], "x":1.75, "y":3.25, "w":1.75}, - {"matrix":[3,2], "x":3.5, "y":3.25}, - {"matrix":[3,3], "x":5, "y":2.7}, - {"matrix":[3,4], "x":6, "y":2.7}, - {"matrix":[3,5], "x":7, "y":2.7}, - {"matrix":[3,6], "x":8, "y":2.7}, - {"matrix":[3,8], "x":9.4, "y":4.7}, - {"matrix":[3,9], "x":10.4, "y":4.7}, - {"matrix":[3,10], "x":11.4, "y":4.7}, - {"matrix":[3,11], "x":12.4, "y":4.7}, - {"matrix":[3,12], "x":14, "y":3.25}, - {"matrix":[3,13], "x":15, "y":3.25}, - {"matrix":[3,14], "x":16, "y":3.25}, - {"matrix":[2,14], "x":17, "y":2.25, "w":1.25, "h":2}, - {"matrix":[3,15], "x":18.75, "y":3.25}, - - {"matrix":[4,0], "x":0, "y":4.25}, - {"matrix":[4,1], "x":1.5, "y":4.25, "w":1.25}, - {"matrix":[4,2], "x":2.75, "y":4.25}, - {"matrix":[4,3], "x":3.75, "y":4.25}, - {"matrix":[4,4], "x":5.35, "y":3.7}, - {"matrix":[4,5], "x":6.35, "y":3.7}, - {"matrix":[4,6], "x":7.35, "y":3.7}, - {"matrix":[4,7], "x":8.35, "y":3.7}, - {"matrix":[4,8], "x":8.85, "y":5.7}, - {"matrix":[4,9], "x":9.85, "y":5.7}, - {"matrix":[4,10], "x":10.85, "y":5.7}, - {"matrix":[4,11], "x":11.85, "y":5.7}, - {"matrix":[4,12], "x":12.85, "y":5.7}, - {"matrix":[4,13], "x":14.5, "y":4.25}, - {"matrix":[4,14], "x":15.5, "y":4.25, "w":1.75}, - {"matrix":[4,15], "x":17.5, "y":4.5}, - - {"matrix":[5,0], "x":0, "y":5.25}, - {"matrix":[5,1], "x":1.5, "y":5.25, "w":1.25}, - {"matrix":[5,2], "x":2.75, "y":5.25, "w":1.25}, - {"matrix":[5,3], "x":5.35, "y":4.7, "w":1.25}, - {"matrix":[5,4], "x":6.6, "y":4.7, "w":2.25}, - {"matrix":[5,7], "x":8.85, "y":4.7}, - {"matrix":[5,8], "x":8.85, "y":6.7, "w":2.55}, - {"matrix":[5,9], "x":11.4, "y":6.7}, - {"matrix":[5,10], "x":12.4, "y":6.7}, - {"matrix":[5,13], "x":16.5, "y":5.5}, - {"matrix":[5,14], "x":17.5, "y":5.5}, - {"matrix":[5,15], "x":18.5, "y":5.5} - ] - } - }, - "rgb_matrix": { - "layout": [ - {"matrix":[0, 1], "flags":1, "x":19, "y":0}, - {"matrix":[0, 2], "flags":1, "x":34, "y":0}, - {"matrix":[0, 3], "flags":1, "x":46, "y":0}, - {"matrix":[0, 4], "flags":1, "x":60, "y":1}, - {"matrix":[0, 5], "flags":1, "x":72, "y":3}, - {"matrix":[0, 6], "flags":1, "x":87, "y":6}, - {"matrix":[0, 7], "flags":1, "x":99, "y":8}, - {"matrix":[0, 8], "flags":1, "x":120, "y":8}, - {"matrix":[0, 9], "flags":1, "x":132, "y":6}, - {"matrix":[0, 10], "flags":1, "x":147, "y":3}, - {"matrix":[0, 11], "flags":1, "x":159, "y":1}, - {"matrix":[0, 12], "flags":1, "x":173, "y":0}, - {"matrix":[0, 13], "flags":1, "x":185, "y":0}, - {"matrix":[0, 14], "flags":1, "x":203, "y":0}, - {"matrix":[0, 15], "flags":1, "x":221, "y":0}, - - {"matrix":[1, 0], "flags":4, "x":5, "y":14}, - {"matrix":[1, 1], "flags":1, "x":24, "y":14}, - {"matrix":[1, 2], "flags":8, "x":36, "y":14}, - {"matrix":[1, 3], "flags":8, "x":48, "y":13}, - {"matrix":[1, 4], "flags":8, "x":62, "y":15}, - {"matrix":[1, 5], "flags":4, "x":74, "y":17}, - {"matrix":[1, 6], "flags":4, "x":86, "y":20}, - {"matrix":[1, 7], "flags":4, "x":98, "y":22}, - {"matrix":[1, 8], "flags":4, "x":115, "y":22}, - {"matrix":[1, 9], "flags":4, "x":127, "y":20}, - {"matrix":[1, 10], "flags":4, "x":139, "y":17}, - {"matrix":[1, 11], "flags":4, "x":151, "y":15}, - {"matrix":[1, 12], "flags":4, "x":165, "y":13}, - {"matrix":[1, 13], "flags":4, "x":177, "y":14}, - {"matrix":[1, 14], "flags":1, "x":195, "y":14}, - {"matrix":[1, 15], "flags":1, "x":220, "y":14}, - - {"matrix":[2, 0], "flags":4, "x":4, "y":24}, - {"matrix":[2, 1], "flags":1, "x":24, "y":24}, - {"matrix":[2, 2], "flags":4, "x":40, "y":24}, - {"matrix":[2, 3], "flags":4, "x":54, "y":24}, - {"matrix":[2, 4], "flags":4, "x":65, "y":27}, - {"matrix":[2, 5], "flags":4, "x":77, "y":29}, - {"matrix":[2, 6], "flags":4, "x":89, "y":31}, - {"matrix":[2, 7], "flags":4, "x":112, "y":33}, - {"matrix":[2, 8], "flags":4, "x":124, "y":31}, - {"matrix":[2, 9], "flags":4, "x":136, "y":29}, - {"matrix":[2, 10], "flags":4, "x":148, "y":27}, - {"matrix":[2, 11], "flags":4, "x":160, "y":24}, - {"matrix":[2, 12], "flags":4, "x":176, "y":24}, - {"matrix":[2, 13], "flags":4, "x":189, "y":24}, - {"matrix":[2, 15], "flags":1, "x":222, "y":24}, - - {"matrix":[3, 0], "flags":4, "x":2, "y":34}, - {"matrix":[3, 1], "flags":8, "x":23, "y":34}, - {"matrix":[3, 2], "flags":4, "x":40, "y":34}, - {"matrix":[3, 3], "flags":4, "x":54, "y":35}, - {"matrix":[3, 4], "flags":4, "x":66, "y":37}, - {"matrix":[3, 5], "flags":4, "x":78, "y":39}, - {"matrix":[3, 6], "flags":4, "x":90, "y":42}, - {"matrix":[3, 8], "flags":4, "x":118, "y":43}, - {"matrix":[3, 9], "flags":4, "x":130, "y":40}, - {"matrix":[3, 10], "flags":4, "x":142, "y":38}, - {"matrix":[3, 11], "flags":4, "x":154, "y":36}, - {"matrix":[3, 12], "flags":4, "x":167, "y":35}, - {"matrix":[3, 13], "flags":4, "x":180, "y":35}, - {"matrix":[3, 14], "flags":1, "x":192, "y":35}, - {"matrix":[2, 14], "flags":1, "x":208, "y":31}, - {"matrix":[3, 15], "flags":1, "x":224, "y":35}, - - {"matrix":[4, 0], "flags":4, "x":0, "y":45}, - {"matrix":[4, 1], "flags":1, "x":18, "y":45}, - {"matrix":[4, 2], "flags":1, "x":31, "y":45}, - {"matrix":[4, 3], "flags":4, "x":44, "y":45}, - {"matrix":[4, 4], "flags":4, "x":57, "y":46}, - {"matrix":[4, 5], "flags":4, "x":69, "y":48}, - {"matrix":[4, 6], "flags":4, "x":81, "y":51}, - {"matrix":[4, 7], "flags":4, "x":93, "y":53}, - {"matrix":[4, 8], "flags":4, "x":111, "y":54}, - {"matrix":[4, 9], "flags":4, "x":123, "y":52}, - {"matrix":[4, 10], "flags":4, "x":135, "y":50}, - {"matrix":[4, 11], "flags":4, "x":147, "y":48}, - {"matrix":[4, 12], "flags":4, "x":159, "y":46}, - {"matrix":[4, 13], "flags":4, "x":173, "y":45}, - {"matrix":[4, 14], "flags":1, "x":190, "y":45}, - {"matrix":[4, 15], "flags":1, "x":210, "y":47}, - - {"matrix":[5, 0], "flags":4, "x":0, "y":55}, - {"matrix":[5, 1], "flags":1, "x":18, "y":55}, - {"matrix":[5, 2], "flags":1, "x":33, "y":55}, - {"matrix":[5, 3], "flags":1, "x":56, "y":57}, - {"matrix":[5, 4], "flags":4, "x":77, "y":61}, - {"matrix":[5, 7], "flags":1, "x":97, "y":64}, - {"matrix":[5, 8], "flags":4, "x":124, "y":63}, - {"matrix":[5, 9], "flags":1, "x":147, "y":59}, - {"matrix":[5, 10], "flags":1, "x":159, "y":56}, - {"matrix":[5, 13], "flags":1, "x":198, "y":58}, - {"matrix":[5, 14], "flags":1, "x":210, "y":58}, - {"matrix":[5, 15], "flags":1, "x":222, "y":58} - ] - } -} diff --git a/keyboards/keychron/q10_pro/iso_encoder/iso_encoder.c b/keyboards/keychron/q10_pro/iso_encoder/iso_encoder.c deleted file mode 100644 index 33236dc808..0000000000 --- a/keyboards/keychron/q10_pro/iso_encoder/iso_encoder.c +++ /dev/null @@ -1,124 +0,0 @@ -/* 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 . - */ - -#include "quantum.h" - -// clang-format off -#ifdef RGB_MATRIX_ENABLE -const snled27351_led_t g_snled27351_leds[RGB_MATRIX_LED_COUNT] = { -/* Refer to snled27351manual for these locations - * driver - * | R location - * | | G location - * | | | B location - * | | | | */ - {0, C_2, A_2, B_2}, // ESC - {0, C_3, A_3, B_3}, // F1 - {0, C_4, A_4, B_4}, // F2 - {0, C_5, A_5, B_5}, // F3 - {0, C_6, A_6, B_6}, // F4 - {0, C_7, A_7, B_7}, // F5 - {0, C_8, A_8, B_8}, // F6 - {0, C_9, A_9, B_9}, // F7 - {0, C_10, A_10, B_10}, // F8 - {0, C_11, A_11, B_11}, // F9 - {0, C_12, A_12, B_12}, // F10 - {0, C_13, A_13, B_13}, // F11 - {0, C_14, A_14, B_14}, // F12 - {0, C_15, A_15, B_15}, // INS - {0, C_16, A_16, B_16}, // DEL - - {0, I_1, G_1, H_1}, // M1 - {0, I_2, G_2, H_2}, // `~ - {0, I_3, G_3, H_3}, // 1! - {0, I_4, G_4, H_4}, // 2@ - {0, I_5, G_5, H_5}, // 3# - {0, I_6, G_6, H_6}, // 4$ - {0, I_7, G_7, H_7}, // 5% - {0, I_8, G_8, H_8}, // 6^ - {0, I_9, G_9, H_9}, // 7& - {0, I_10, G_10, H_10}, // 8* - {0, I_11, G_11, H_11}, // 9( - {0, I_12, G_12, H_12}, // 0) - {0, I_13, G_13, H_13}, // -_ - {0, I_14, G_14, H_14}, // =+ - {0, I_15, G_15, H_15}, // BackSpace - {0, I_16, G_16, H_16}, // PgUp - - {0, F_1, D_1, E_1}, // M2 - {0, F_2, D_2, E_2}, // TAB - {0, F_3, D_3, E_3}, // Q - {0, F_4, D_4, E_4}, // W - {0, F_5, D_5, E_5}, // E - {0, F_6, D_6, E_6}, // R - {0, F_7, D_7, E_7}, // T - {0, F_8, D_8, E_8}, // Y - {0, F_9, D_9, E_9}, // U - {0, F_10, D_10, E_10}, // I - {0, F_11, D_11, E_11}, // O - {0, F_12, D_12, E_12}, // P - {0, F_13, D_13, E_13}, // [ - {0, F_14, D_14, E_14}, // ] - {0, F_16, D_16, E_16}, // PgDn - - {1, C_16, A_16, B_16}, // M3 - {1, C_15, A_15, B_15}, // CapsLock - {1, C_14, A_14, B_14}, // A - {1, C_13, A_13, B_13}, // S - {1, C_12, A_12, B_12}, // D - {1, C_11, A_11, B_11}, // F - {1, C_10, A_10, B_10}, // G - {1, C_8, A_8, B_8}, // H - {1, C_7, A_7, B_7}, // J - {1, C_6, A_6, B_6}, // K - {1, C_5, A_5, B_5}, // L - {1, C_4, A_4, B_4}, // ; - {1, C_3, A_3, B_3}, // ' - {1, C_2, A_2, B_2}, // Enter - {0, F_15, D_15, E_15}, // | - {1, C_1, A_1, B_1}, // Home - - {1, I_16, G_16, H_16}, // M4 - {1, I_15, G_15, H_15}, // Shift_L - {1, I_14, G_14, H_14}, // KC_NUBS - {1, I_13, G_13, H_13}, // Z - {1, I_12, G_12, H_12}, // X - {1, I_11, G_11, H_11}, // C - {1, I_10, G_10, H_10}, // V - {1, I_9, G_9, H_9}, // B - {1, I_8, G_8, H_8}, // B - {1, I_7, G_7, H_7}, // N - {1, I_6, G_6, H_6}, // M - {1, I_5, G_5, H_5}, // , - {1, I_4, G_4, H_4}, // . - {1, I_3, G_3, H_3}, // ? - {1, I_2, G_2, H_2}, // Shift_R - {1, I_1, G_1, H_1}, // Up - - {1, F_16, D_16, E_16}, // M5 - {1, F_15, D_15, E_15}, // Ctrl_L - {1, F_14, D_14, E_14}, // Win_L - {1, F_13, D_13, E_13}, // Alt_L - {1, F_12, D_12, E_12}, // Space - {1, F_9, D_9, E_9}, // Fn - {1, F_8, D_8, E_8}, // Space - {1, F_7, D_7, E_7}, // Alt_R - {1, F_6, D_6, E_6}, // Ctrl_R - {1, F_3, D_3, E_3}, // Left - {1, F_2, D_2, E_2}, // Down - {1, F_1, D_1, E_1}, // Right -}; -#endif diff --git a/keyboards/keychron/q10_pro/iso_encoder/keymaps/default/keymap.c b/keyboards/keychron/q10_pro/iso_encoder/keymaps/default/keymap.c deleted file mode 100644 index f1c40e162d..0000000000 --- a/keyboards/keychron/q10_pro/iso_encoder/keymaps/default/keymap.c +++ /dev/null @@ -1,69 +0,0 @@ -/* 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 . - */ - -#include QMK_KEYBOARD_H - -enum layers{ - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN, -}; - -// clang-format off - -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_91_iso( - KC_MUTE, KC_ESC, KC_BRID, KC_BRIU, KC_MCTL, KC_LPAD, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_INS, KC_DEL, - MC_1, KC_GRV, 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_PGUP, - MC_2, 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_PGDN, - MC_3, 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_NUHS, KC_ENT, KC_HOME, - MC_4, KC_LSFT, KC_NUBS, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, - MC_5, KC_LCTL, KC_LOPTN, KC_LCMMD, KC_SPC, MO(MAC_FN), KC_SPC, KC_RCMMD, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - - [MAC_FN] = LAYOUT_91_iso( - RGB_TOG, _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, - _______, _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, BAT_LVL, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - - [WIN_BASE] = LAYOUT_91_iso( - KC_MUTE, KC_ESC, 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_INS, KC_DEL, - MC_1, KC_GRV, 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_PGUP, - MC_2, 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_PGDN, - MC_3, 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_NUHS, KC_ENT, KC_HOME, - MC_4, KC_LSFT, KC_NUBS, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, - MC_5, KC_LCTL, KC_LWIN, KC_LALT, KC_SPC, MO(WIN_FN), KC_SPC, KC_RALT, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - - [WIN_FN] = LAYOUT_91_iso( - RGB_TOG, _______, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, - _______, _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, BAT_LVL, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), -}; - -#if defined(ENCODER_MAP_ENABLE) -const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][2] = { - [MAC_BASE] = { ENCODER_CCW_CW(KC_VOLD, KC_VOLU) }, - [MAC_FN] = { ENCODER_CCW_CW(RGB_VAD, RGB_VAI) }, - [WIN_BASE] = { ENCODER_CCW_CW(KC_VOLD, KC_VOLU) }, - [WIN_FN] = { ENCODER_CCW_CW(RGB_VAD, RGB_VAI) }, -}; -#endif // ENCODER_MAP_ENABLE diff --git a/keyboards/keychron/q10_pro/iso_encoder/keymaps/default/rules.mk b/keyboards/keychron/q10_pro/iso_encoder/keymaps/default/rules.mk deleted file mode 100644 index ee32568148..0000000000 --- a/keyboards/keychron/q10_pro/iso_encoder/keymaps/default/rules.mk +++ /dev/null @@ -1 +0,0 @@ -ENCODER_MAP_ENABLE = yes diff --git a/keyboards/keychron/q10_pro/iso_encoder/keymaps/via/keymap.c b/keyboards/keychron/q10_pro/iso_encoder/keymaps/via/keymap.c deleted file mode 100644 index 34302db075..0000000000 --- a/keyboards/keychron/q10_pro/iso_encoder/keymaps/via/keymap.c +++ /dev/null @@ -1,68 +0,0 @@ -/* 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 . - */ - -#include QMK_KEYBOARD_H - -enum layers{ - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN, -}; - -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_91_iso( - KC_MUTE, KC_ESC, KC_BRID, KC_BRIU, KC_MICT, KC_LAPA, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_INS, KC_DEL, - MC_1, KC_GRV, 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_PGUP, - MC_2, 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_PGDN, - MC_3, 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_NUHS, KC_ENT, KC_HOME, - MC_4, KC_LSFT, KC_NUBS, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, - MC_5, KC_LCTL, KC_LOPTN, KC_LCMMD, KC_SPC, MO(MAC_FN), KC_SPC, KC_RCMMD, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - - [MAC_FN] = LAYOUT_91_iso( - RGB_TOG, _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, - _______, _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, BAT_LVL, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - - [WIN_BASE] = LAYOUT_91_iso( - KC_MUTE, KC_ESC, 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_INS, KC_DEL, - MC_1, KC_GRV, 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_PGUP, - MC_2, 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_PGDN, - MC_3, 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_NUHS, KC_ENT, KC_HOME, - MC_4, KC_LSFT, KC_NUBS, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, - MC_5, KC_LCTL, KC_LWIN, KC_LALT, KC_SPC, MO(WIN_FN), KC_SPC, KC_RALT, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - - [WIN_FN] = LAYOUT_91_iso( - RGB_TOG, _______, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, - _______, _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, BAT_LVL, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), -}; - -#if defined(ENCODER_MAP_ENABLE) -const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][2] = { - [MAC_BASE] = { ENCODER_CCW_CW(KC_VOLD, KC_VOLU) }, - [MAC_FN] = { ENCODER_CCW_CW(RGB_VAD, RGB_VAI) }, - [WIN_BASE] = { ENCODER_CCW_CW(KC_VOLD, KC_VOLU) }, - [WIN_FN] = { ENCODER_CCW_CW(RGB_VAD, RGB_VAI) }, -}; -#endif // ENCODER_MAP_ENABLE diff --git a/keyboards/keychron/q10_pro/iso_encoder/keymaps/via/rules.mk b/keyboards/keychron/q10_pro/iso_encoder/keymaps/via/rules.mk deleted file mode 100644 index f1adcab005..0000000000 --- a/keyboards/keychron/q10_pro/iso_encoder/keymaps/via/rules.mk +++ /dev/null @@ -1,2 +0,0 @@ -VIA_ENABLE = yes -ENCODER_MAP_ENABLE = yes diff --git a/keyboards/keychron/q10_pro/iso_encoder/rules.mk b/keyboards/keychron/q10_pro/iso_encoder/rules.mk deleted file mode 100644 index a77dc6c674..0000000000 --- a/keyboards/keychron/q10_pro/iso_encoder/rules.mk +++ /dev/null @@ -1 +0,0 @@ -# This file intentionally left blank diff --git a/keyboards/keychron/q10_pro/mcuconf.h b/keyboards/keychron/q10_pro/mcuconf.h deleted file mode 100644 index 882d6bd568..0000000000 --- a/keyboards/keychron/q10_pro/mcuconf.h +++ /dev/null @@ -1,36 +0,0 @@ -/* Copyright 2023 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 - -/* Set HCLK to 48 MHz as tradeoff of USB lowest clockand and - * lower power comsumption for bluetooth. Will use dynamic - * clock when STM32L4 is supported in ChibiOS */ -#undef STM32_PLLM_VALUE -#define STM32_PLLM_VALUE 2 - -#undef STM32_PLLN_VALUE -#define STM32_PLLN_VALUE 12 - -#undef STM32_I2C_USE_I2C1 -#define STM32_I2C_USE_I2C1 TRUE - -#ifdef KC_BLUETOOTH_ENABLE -# undef STM32_SERIAL_USE_USART2 -# define STM32_SERIAL_USE_USART2 TRUE -#endif diff --git a/keyboards/keychron/q10_pro/q10_pro.c b/keyboards/keychron/q10_pro/q10_pro.c deleted file mode 100644 index 30e36c7ec1..0000000000 --- a/keyboards/keychron/q10_pro/q10_pro.c +++ /dev/null @@ -1,326 +0,0 @@ -/* 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 . - */ - -#include "q10_pro.h" -#ifdef KC_BLUETOOTH_ENABLE -# include "ckbt51.h" -# include "bluetooth.h" -# include "indicator.h" -# include "transport.h" -# include "battery.h" -# include "bat_level_animation.h" -# include "lpm.h" -#endif - -#ifdef ENABLE_FACTORY_TEST -# include "factory_test.h" -#endif - -typedef struct PACKED { - uint8_t len; - uint8_t keycode[3]; -} key_combination_t; - -static uint32_t factory_timer_buffer = 0; -static uint32_t siri_timer_buffer = 0; -static uint8_t mac_keycode[4] = {KC_LOPT, KC_ROPT, KC_LCMD, KC_RCMD}; - -key_combination_t key_comb_list[4] = { - {2, {KC_LWIN, KC_TAB}}, // Task (win) - {2, {KC_LWIN, KC_E}}, // Files (win) - {3, {KC_LSFT, KC_LGUI, KC_4}}, // Snapshot (mac) - {2, {KC_LWIN, KC_C}} // Cortana (win) -}; - -#ifdef KC_BLUETOOTH_ENABLE -bool firstDisconnect = true; -bool bt_factory_reset = false; -static virtual_timer_t pairing_key_timer; -extern uint8_t g_pwm_buffer[DRIVER_COUNT][192]; - -static void pairing_key_timer_cb(void *arg) { - bluetooth_pairing_ex(*(uint8_t *)arg, NULL); -} -#endif - -bool dip_switch_update_kb(uint8_t index, bool active) { - if (index == 0) { -#ifdef INVERT_OS_SWITCH_STATE - default_layer_set(1UL << (!active ? 2 : 0)); -#else - default_layer_set(1UL << (active ? 2 : 0)); -#endif - } - dip_switch_update_user(index, active); - - return true; -} - -#ifdef KC_BLUETOOTH_ENABLE -bool process_record_kb_bt(uint16_t keycode, keyrecord_t *record) { -#else -bool process_record_kb(uint16_t keycode, keyrecord_t *record) { -#endif - static uint8_t host_idx = 0; - - switch (keycode) { - case KC_MICT: - if (record->event.pressed) { - register_code(KC_MISSION_CONTROL); - } else { - unregister_code(KC_MISSION_CONTROL); - } - return false; // Skip all further processing of this key - case KC_LAPA: - if (record->event.pressed) { - register_code(KC_LAUNCHPAD); - } else { - unregister_code(KC_LAUNCHPAD); - } - return false; // Skip all further processing of this key - case KC_LOPTN: - case KC_ROPTN: - case KC_LCMMD: - case KC_RCMMD: - if (record->event.pressed) { - register_code(mac_keycode[keycode - KC_LOPTN]); - } else { - unregister_code(mac_keycode[keycode - KC_LOPTN]); - } - return false; // Skip all further processing of this key) - case KC_TASK: - case KC_FILE: - case KC_SNAP: - case KC_CTANA: - if (record->event.pressed) { - for (uint8_t i = 0; i < key_comb_list[keycode - KC_TASK].len; i++) - register_code(key_comb_list[keycode - KC_TASK].keycode[i]); - } else { - for (uint8_t i = 0; i < key_comb_list[keycode - KC_TASK].len; i++) - unregister_code(key_comb_list[keycode - KC_TASK].keycode[i]); - } - return false; // Skip all further processing of this key - case KC_SIRI: - if (record->event.pressed && siri_timer_buffer == 0) { - register_code(KC_LGUI); - register_code(KC_SPACE); - siri_timer_buffer = sync_timer_read32() == 0 ? 1 : sync_timer_read32(); - } - return false; // Skip all further processing of this key -#ifdef KC_BLUETOOTH_ENABLE - case BT_HST1 ... BT_HST3: - if (get_transport() == TRANSPORT_BLUETOOTH) { - if (record->event.pressed) { - host_idx = keycode - BT_HST1 + 1; - chVTSet(&pairing_key_timer, TIME_MS2I(2000), (vtfunc_t)pairing_key_timer_cb, &host_idx); - bluetooth_connect_ex(host_idx, 0); - } else { - host_idx = 0; - chVTReset(&pairing_key_timer); - } - } - break; - case BAT_LVL: - if (get_transport() == TRANSPORT_BLUETOOTH && !usb_power_connected()) { - bat_level_animiation_start(battery_get_percentage()); - } - break; -#endif - default: -#ifdef FACTORY_RESET_CHECK - FACTORY_RESET_CHECK(keycode, record); -#endif - break; - } - return true; -} - -#if defined(KC_BLUETOOTH_ENABLE) && defined(ENCODER_ENABLE) -static void encoder_pad_cb(void *param) { - encoder_inerrupt_read((uint32_t)param & 0XFF); -} -#endif - -void keyboard_post_init_kb(void) { - dip_switch_read(true); - -#ifdef KC_BLUETOOTH_ENABLE - /* Currently we don't use this reset pin */ - palSetLineMode(CKBT51_RESET_PIN, PAL_MODE_OUTPUT_PUSHPULL); - palWriteLine(CKBT51_RESET_PIN, PAL_HIGH); - - /* IMPORTANT: DO NOT enable internal pull-up resistor - * as there is an external pull-down resistor. - */ - palSetLineMode(USB_BT_MODE_SELECT_PIN, PAL_MODE_INPUT); - - ckbt51_init(false); - bluetooth_init(); -# ifdef ENCODER_ENABLE - pin_t encoders_pad_a[NUM_ENCODERS] = ENCODERS_PAD_A; - pin_t encoders_pad_b[NUM_ENCODERS] = ENCODERS_PAD_B; - for (uint32_t i = 0; i < NUM_ENCODERS; i++) { - palEnableLineEvent(encoders_pad_a[i], PAL_EVENT_MODE_BOTH_EDGES); - palEnableLineEvent(encoders_pad_b[i], PAL_EVENT_MODE_BOTH_EDGES); - palSetLineCallback(encoders_pad_a[i], encoder_pad_cb, (void *)i); - palSetLineCallback(encoders_pad_b[i], encoder_pad_cb, (void *)i); - } -# endif -#endif - - keyboard_post_init_user(); -} - -void matrix_scan_kb(void) { - if (factory_timer_buffer && timer_elapsed32(factory_timer_buffer) > 2000) { - factory_timer_buffer = 0; - if (bt_factory_reset) { - bt_factory_reset = false; - palWriteLine(CKBT51_RESET_PIN, PAL_LOW); - wait_ms(5); - palWriteLine(CKBT51_RESET_PIN, PAL_HIGH); - } - } - - if (siri_timer_buffer && sync_timer_elapsed32(siri_timer_buffer) > 500) { - siri_timer_buffer = 0; - unregister_code(KC_LGUI); - unregister_code(KC_SPACE); - } - -#ifdef FACTORY_RESET_TASK - FACTORY_RESET_TASK(); -#endif - matrix_scan_user(); -} - -#ifdef KC_BLUETOOTH_ENABLE -static void ckbt51_param_init(void) { - /* Set bluetooth device name */ - ckbt51_set_local_name(PRODUCT); - wait_ms(10); - /* Set bluetooth parameters */ - module_param_t param = {.event_mode = 0x02, - .connected_idle_timeout = 7200, - .pairing_timeout = 180, - .pairing_mode = 0, - .reconnect_timeout = 5, - .report_rate = 90, - .vendor_id_source = 1, - .verndor_id = 0, // Must be 0x3434 - .product_id = PRODUCT_ID}; - ckbt51_set_param(¶m); - wait_ms(10); -} - -void bluetooth_enter_disconnected_kb(uint8_t host_idx) { - if (bt_factory_reset) { - ckbt51_param_init(); - factory_timer_buffer = timer_read32(); - } - /* CKBT51 bluetooth module boot time is slower, it enters disconnected after boot, - so we place initialization here. */ - if (firstDisconnect && sync_timer_read32() < 1000 && get_transport() == TRANSPORT_BLUETOOTH) { - ckbt51_param_init(); - bluetooth_connect(); - firstDisconnect = false; - } -} - -void ckbt51_default_ack_handler(uint8_t *data, uint8_t len) { - if (data[1] == 0x45) { - module_param_t param = {.event_mode = 0x02, - .connected_idle_timeout = 7200, - .pairing_timeout = 180, - .pairing_mode = 0, - .reconnect_timeout = 5, - .report_rate = 90, - .vendor_id_source = 1, - .verndor_id = 0, // Must be 0x3434 - .product_id = PRODUCT_ID}; - ckbt51_set_param(¶m); - } -} - -void bluetooth_pre_task(void) { - static uint8_t mode = 1; - - if (readPin(USB_BT_MODE_SELECT_PIN) != mode) { - if (readPin(USB_BT_MODE_SELECT_PIN) != mode) { - mode = readPin(USB_BT_MODE_SELECT_PIN); - set_transport(mode == 0 ? TRANSPORT_BLUETOOTH : TRANSPORT_USB); - } - } -} -#endif - -void battery_calculte_voltage(uint16_t value) { - uint16_t voltage = ((uint32_t)value) * 2246 / 1000; - -#ifdef LED_MATRIX_ENABLE - if (led_matrix_is_enabled()) { - uint32_t totalBuf = 0; - - for (uint8_t i = 0; i < DRIVER_COUNT; i++) - for (uint8_t j = 0; j < 192; j++) - totalBuf += g_pwm_buffer[i][j]; - /* We assumpt it is linear relationship*/ - voltage += (30 * totalBuf / LED_MATRIX_LED_COUNT / 255); - } -#endif -#ifdef RGB_MATRIX_ENABLE - if (rgb_matrix_is_enabled()) { - uint32_t totalBuf = 0; - - for (uint8_t i = 0; i < DRIVER_COUNT; i++) - for (uint8_t j = 0; j < 192; j++) - totalBuf += g_pwm_buffer[i][j]; - /* We assumpt it is linear relationship*/ - uint32_t compensation = 60 * totalBuf / RGB_MATRIX_LED_COUNT / 255 / 3; - voltage += compensation; - } -#endif - battery_set_voltage(voltage); -} - -bool via_command_kb(uint8_t *data, uint8_t length) { - switch (data[0]) { -#ifdef KC_BLUETOOTH_ENABLE - case 0xAA: - ckbt51_dfu_rx(data, length); - break; -#endif -#ifdef ENABLE_FACTORY_TEST - case 0xAB: - factory_test_rx(data, length); - break; -#endif - default: - return false; - } - - return true; -} - -#if !defined(VIA_ENABLE) -void raw_hid_receive(uint8_t *data, uint8_t length) { - switch (data[0]) { - case RAW_HID_CMD: - via_command_kb(data, length); - break; - } -} -#endif diff --git a/keyboards/keychron/q10_pro/q10_pro.h b/keyboards/keychron/q10_pro/q10_pro.h deleted file mode 100644 index bc6e1effc8..0000000000 --- a/keyboards/keychron/q10_pro/q10_pro.h +++ /dev/null @@ -1,57 +0,0 @@ -/* 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 . - */ - -#pragma once - -#include "quantum.h" -#ifdef VIA_ENABLE -# include "via.h" -#endif - -#define ___ KC_NO -#define KC_MICT QK_KB_0 -#define KC_LAPA QK_KB_1 - -#ifdef VIA_ENABLE -# define USER_START QK_KB_2 -#else -# define USER_START SAFE_RANGE -#endif - -// clang-format off -enum { - KC_LOPTN = USER_START, - KC_ROPTN, - KC_LCMMD, - KC_RCMMD, - KC_TASK, - KC_FILE, - KC_SNAP, - KC_CTANA, - KC_SIRI, -#ifdef KC_BLUETOOTH_ENABLE - BT_HST1, - BT_HST2, - BT_HST3, - BAT_LVL, -#else - BT_HST1 = KC_TRNS, - BT_HST2 = KC_TRNS, - BT_HST3 = KC_TRNS, - BAT_LVL = KC_TRNS, -#endif - NEW_SAFE_RANGE -}; diff --git a/keyboards/keychron/q10_pro/readme.md b/keyboards/keychron/q10_pro/readme.md deleted file mode 100644 index 6e974fa13f..0000000000 --- a/keyboards/keychron/q10_pro/readme.md +++ /dev/null @@ -1,23 +0,0 @@ -# Keychron Q10 - -![Keychron Q10 Pro](https://i.imgur.com/w8nAW8u.jpg) - -A customizable 75% ergonomic keyboard. - -* Keyboard Maintainer: [Keychron](https://github.com/keychron) -* Hardware Supported: Keychron Q10 Pro -* Hardware Availability: [Keychron Q10 Pro (Alice Layout) QMK/VIA Wireless Custom Mechanical Keyboard](https://www.keychron.com/products/keychron-q10-pro-alice-layout-qmk-via-wireless-custom-mechanical-keyboard) - -Make example for this keyboard (after setting up your build environment): - - make keychron/q10_pro/ansi_encoder:default - make keychron/q10_pro/iso_encoder:default - -Flashing example for this keyboard: - - make keychron/q10_pro/ansi_encoder:default:flash - make keychron/q10_pro/iso_encoder:default:flash - -**Reset Key**: Connect the USB cable, toggle mode switch to "Off", hold down the *Esc* key or reset button underneath space bar, then toggle then switch to "Cable". - -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). diff --git a/keyboards/keychron/q10_pro/rules.mk b/keyboards/keychron/q10_pro/rules.mk deleted file mode 100644 index f995372f9c..0000000000 --- a/keyboards/keychron/q10_pro/rules.mk +++ /dev/null @@ -1,6 +0,0 @@ -# Enter lower-power sleep mode when on the ChibiOS idle thread -OPT_DEFS += -DCORTEX_ENABLE_WFI_IDLE=TRUE -OPT_DEFS += -DNO_USB_STARTUP_CHECK -DENABLE_FACTORY_TEST - -include keyboards/keychron/bluetooth/bluetooth.mk -include keyboards/keychron/common/common.mk diff --git a/keyboards/keychron/q10_pro/via_json/q10_pro_ansi_encoder.json b/keyboards/keychron/q10_pro/via_json/q10_pro_ansi_encoder.json deleted file mode 100644 index 7191aaef0c..0000000000 --- a/keyboards/keychron/q10_pro/via_json/q10_pro_ansi_encoder.json +++ /dev/null @@ -1,395 +0,0 @@ -{ - "name": "Keychron Q10 Pro ANSI knob", - "vendorId": "0x3434", - "productId": "0x06A0", - "keycodes": ["qmk_lighting"], - "menus": [ - { - "label": "Lighting", - "content": [ - { - "label": "Backlight", - "content": [ - { - "label": "Brightness", - "type": "range", - "options": [0, 255], - "content": ["id_qmk_rgb_matrix_brightness", 3, 1] - }, - { - "label": "Effect", - "type": "dropdown", - "content": ["id_qmk_rgb_matrix_effect", 3, 2], - "options": [ - ["None", 0], - ["Solid Color", 1], - ["Breathing", 2], - ["Band Spiral Val", 3], - ["Cycle All", 4], - ["Cycle Left Right", 5], - ["Cycle Up Down", 6], - ["Rainbow Moving Chevron", 7], - ["Cycle Out In", 8], - ["Cycle Out In Dual", 9], - ["Cycle Pinwheel", 10], - ["Cycle Spiral", 11], - ["Dual Beacon", 12], - ["Rainbow Beacon", 13], - ["Jellybean Raindrops", 14], - ["Pixel Rain", 15], - ["Typing Heatmap", 16], - ["Digital Rain", 17], - ["Reactive Simple", 18], - ["Reactive Multiwide", 19], - ["Reactive Multinexus", 20], - ["Splash", 21], - ["Solid Splash", 22] - ] - }, - { - "showIf": "{id_qmk_rgb_matrix_effect} > 1", - "label": "Effect Speed", - "type": "range", - "options": [0, 255], - "content": ["id_qmk_rgb_matrix_effect_speed", 3, 3] - }, - { - "showIf": "{id_qmk_rgb_matrix_effect} != 0 && ( {id_qmk_rgb_matrix_effect} < 4 || {id_qmk_rgb_matrix_effect} == 18 || ({id_qmk_rgb_matrix_effect} > 17 && {id_qmk_rgb_matrix_effect} != 21) ) ", - "label": "Color", - "type": "color", - "content": ["id_qmk_rgb_matrix_color", 3, 4] - } - ] - } - ] - } - ], - "customKeycodes": [ - {"name": "Misson Control", "title": "Misson Control, availabe in macOS", "shortName": "MCtrl"}, - {"name": "Launch pad", "title": "Launch pad, availabe in macOS", "shortName": "LPad"}, - {"name": "Left Option", "title": "Left Option", "shortName": "LOpt"}, - {"name": "Right Option", "title": "Right Option", "shortName": "ROpt"}, - {"name": "Left Cmd", "title": "Left Command", "shortName": "LCmd"}, - {"name": "Right Cmd", "title": "Right Command", "shortName": "RCmd"}, - {"name": "Task View", "title": "Task View in Windows", "shortName": "Task"}, - {"name": "File Explorer", "title": "File Explorer in Windows", "shortName": "File"}, - {"name": "Screen shot", "title": "Screenshot in macOS", "shortName": "SShot"}, - {"name": "Cortana", "title": "Cortana in Windows", "shortName": "Cortana"}, - {"name": "Siri", "title": "Siri in macOS", "shortName": "Siri"}, - {"name": "Bluetooth Host 1", "title": "Bluetooth Host 1", "shortName": "BTH1"}, - {"name": "Bluetooth Host 2", "title": "Bluetooth Host 2", "shortName": "BTH2"}, - {"name": "Bluetooth Host 3", "title": "Bluetooth Host 3", "shortName": "BTH3"}, - {"name": "Battery Level", "title": "Show battery level", "shortName": "Batt"} - ], - "matrix": {"rows": 6, "cols": 16}, - "layouts": { - "keymap": [ - [ - { - "x": 0.5 - }, - "0,0\n\n\n\n\n\n\n\n\ne0", - { - "x": 0.5, - "c": "#777777" - }, - "0,1\nESC", - { - "x": 0.25, - "c": "#cccccc" - }, - "0,2", - "0,3", - { - "x": 9.35 - }, - "0,12", - "0,13", - { - "x": 0.45, - "c": "#aaaaaa" - }, - "0,14", - { - "x": 0.45 - }, - "0,15" - ], - [ - { - "y": 0.25, - "x": 0.75 - }, - "1,0", - { - "x": 0.5 - }, - "1,1", - { - "c": "#cccccc" - }, - "1,2", - "1,3", - { - "x": 8.65 - }, - "1,12", - "1,13", - { - "c": "#aaaaaa", - "w": 2 - }, - "1,14", - { - "x": 0.6 - }, - "1,15" - ], - [ - { - "x": 0.5 - }, - "2,0", - { - "x": 0.5, - "w": 1.5 - }, - "2,1", - { - "c": "#cccccc" - }, - "2,2", - { - "x": 9.9 - }, - "2,12", - "2,13", - { - "c": "#aaaaaa", - "w": 1.75 - }, - "2,14", - { - "x": 0.5 - }, - "2,15" - ], - [ - { - "x": 0.25 - }, - "3,0", - { - "x": 0.5, - "w": 1.75 - }, - "3,1", - { - "c": "#cccccc" - }, - "3,2", - { - "x": 9.5 - }, - "3,12", - "3,13", - { - "c": "#777777", - "w": 2.25 - }, - "3,14", - { - "x": 0.5, - "c": "#aaaaaa" - }, - "3,15" - ], - [ - "4,0", - { - "x": 0.5, - "w": 2.25 - }, - "4,1", - { - "c": "#cccccc" - }, - "4,3", - { - "x": 9.75 - }, - "4,13", - { - "c": "#aaaaaa", - "w": 1.75 - }, - "4,14" - ], - [ - { - "y": -0.75, - "x": 17.5, - "c": "#777777" - }, - "4,15" - ], - [ - { - "y": -0.25, - "c": "#aaaaaa" - }, - "5,0", - { - "x": 0.5, - "w": 1.25 - }, - "5,1", - { - "w": 1.25 - }, - "5,2" - ], - [ - { - "y": -0.75, - "x": 16.5, - "c": "#777777" - }, - "5,13", - "5,14", - "5,15" - ], - [ - { - "r": 6, - "y": -7.05, - "x": 5.4, - "c": "#cccccc" - }, - "0,4", - "0,5", - { - "x": 0.25, - "c": "#aaaaaa" - }, - "0,6", - "0,7" - ], - [ - { - "y": 0.25, - "x": 5.55, - "c": "#cccccc" - }, - "1,4", - "1,5", - "1,6", - "1,7" - ], - [ - { - "x": 4.9 - }, - "2,3", - "2,4", - "2,5", - "2,6" - ], - [ - { - "x": 5 - }, - "3,3", - "3,4", - "3,5", - "3,6" - ], - [ - { - "x": 5.35 - }, - "4,4", - "4,5", - "4,6", - "4,7" - ], - [ - { - "x": 5.35, - "c": "#aaaaaa", - "w": 1.25 - }, - "5,3", - { - "w": 2.25 - }, - "5,4", - "5,7" - ], - [ - { - "r": -6, - "y": -4.25, - "x": 10.05 - }, - "0,8", - "0,9", - { - "x": 0.25, - "c": "#cccccc" - }, - "0,10", - "0,11" - ], - [ - { - "y": 0.25, - "x": 9.4 - }, - "1,8", - "1,9", - "1,10", - "1,11" - ], - [ - { - "x": 8.9 - }, - "2,7", - "2,8", - "2,9", - "2,10", - "2,11" - ], - [ - { - "x": 9.4 - }, - "3,8", - "3,9", - "3,10", - "3,11" - ], - [ - { - "x": 8.85 - }, - "4,8", - "4,9", - "4,10", - "4,11", - "4,12" - ], - [ - { - "x": 8.85, - "c": "#aaaaaa", - "w": 2.55 - }, - "5,8", - "5,9", - "5,10" - ] - ] - } -} diff --git a/keyboards/keychron/q10_pro/via_json/q10_pro_iso_encoder.json b/keyboards/keychron/q10_pro/via_json/q10_pro_iso_encoder.json deleted file mode 100644 index 9ba844958b..0000000000 --- a/keyboards/keychron/q10_pro/via_json/q10_pro_iso_encoder.json +++ /dev/null @@ -1,399 +0,0 @@ -{ - "name": "Keychron Q10 Pro ISO knob", - "vendorId": "0x3434", - "productId": "0x06A1", - "keycodes": ["qmk_lighting"], - "menus": [ - { - "label": "Lighting", - "content": [ - { - "label": "Backlight", - "content": [ - { - "label": "Brightness", - "type": "range", - "options": [0, 255], - "content": ["id_qmk_rgb_matrix_brightness", 3, 1] - }, - { - "label": "Effect", - "type": "dropdown", - "content": ["id_qmk_rgb_matrix_effect", 3, 2], - "options": [ - ["None", 0], - ["Solid Color", 1], - ["Breathing", 2], - ["Band Spiral Val", 3], - ["Cycle All", 4], - ["Cycle Left Right", 5], - ["Cycle Up Down", 6], - ["Rainbow Moving Chevron", 7], - ["Cycle Out In", 8], - ["Cycle Out In Dual", 9], - ["Cycle Pinwheel", 10], - ["Cycle Spiral", 11], - ["Dual Beacon", 12], - ["Rainbow Beacon", 13], - ["Jellybean Raindrops", 14], - ["Pixel Rain", 15], - ["Typing Heatmap", 16], - ["Digital Rain", 17], - ["Reactive Simple", 18], - ["Reactive Multiwide", 19], - ["Reactive Multinexus", 20], - ["Splash", 21], - ["Solid Splash", 22] - ] - }, - { - "showIf": "{id_qmk_rgb_matrix_effect} > 1", - "label": "Effect Speed", - "type": "range", - "options": [0, 255], - "content": ["id_qmk_rgb_matrix_effect_speed", 3, 3] - }, - { - "showIf": "{id_qmk_rgb_matrix_effect} != 0 && ( {id_qmk_rgb_matrix_effect} < 4 || {id_qmk_rgb_matrix_effect} == 18 || ({id_qmk_rgb_matrix_effect} > 17 && {id_qmk_rgb_matrix_effect} != 21) ) ", - "label": "Color", - "type": "color", - "content": ["id_qmk_rgb_matrix_color", 3, 4] - } - ] - } - ] - } - ], - "customKeycodes": [ - {"name": "Misson Control", "title": "Misson Control, availabe in macOS", "shortName": "MCtrl"}, - {"name": "Launch pad", "title": "Launch pad, availabe in macOS", "shortName": "LPad"}, - {"name": "Left Option", "title": "Left Option", "shortName": "LOpt"}, - {"name": "Right Option", "title": "Right Option", "shortName": "ROpt"}, - {"name": "Left Cmd", "title": "Left Command", "shortName": "LCmd"}, - {"name": "Right Cmd", "title": "Right Command", "shortName": "RCmd"}, - {"name": "Task View", "title": "Task View in Windows", "shortName": "Task"}, - {"name": "File Explorer", "title": "File Explorer in Windows", "shortName": "File"}, - {"name": "Screen shot", "title": "Screenshot in macOS", "shortName": "SShot"}, - {"name": "Cortana", "title": "Cortana in Windows", "shortName": "Cortana"}, - {"name": "Siri", "title": "Siri in macOS", "shortName": "Siri"}, - {"name": "Bluetooth Host 1", "title": "Bluetooth Host 1", "shortName": "BTH1"}, - {"name": "Bluetooth Host 2", "title": "Bluetooth Host 2", "shortName": "BTH2"}, - {"name": "Bluetooth Host 3", "title": "Bluetooth Host 3", "shortName": "BTH3"}, - {"name": "Battery Level", "title": "Show battery level", "shortName": "Batt"} - ], - "matrix": {"rows": 6, "cols": 16}, - "layouts": { - "keymap": [ - [ - { - "x": 0.5 - }, - "0,0\n\n\n\n\n\n\n\n\ne0", - { - "x": 0.5, - "c": "#777777" - }, - "0,1\nESC", - { - "x": 0.25, - "c": "#cccccc" - }, - "0,2", - "0,3", - { - "x": 9.35 - }, - "0,12", - "0,13", - { - "x": 0.45, - "c": "#aaaaaa" - }, - "0,14", - { - "x": 0.45 - }, - "0,15" - ], - [ - { - "y": 0.25, - "x": 0.75 - }, - "1,0", - { - "x": 0.5 - }, - "1,1", - { - "c": "#cccccc" - }, - "1,2", - "1,3", - { - "x": 8.65 - }, - "1,12", - "1,13", - { - "c": "#aaaaaa", - "w": 2 - }, - "1,14", - { - "x": 0.6 - }, - "1,15" - ], - [ - { - "x": 0.5 - }, - "2,0", - { - "x": 0.5, - "w": 1.5 - }, - "2,1", - { - "c": "#cccccc" - }, - "2,2", - { - "x": 10.25 - }, - "2,12", - "2,13", - { - "x": 0.25, - "c": "#aaaaaa", - "w": 1.25, - "h": 2, - "w2": 1.5, - "h2": 1, - "x2": -0.25 - }, - "2,14", - { - "x": 0.4 - }, - "2,15" - ], - [ - { - "x": 0.25 - }, - "3,0", - { - "x": 0.5, - "w": 1.75 - }, - "3,1", - { - "c": "#cccccc" - }, - "3,2", - { - "x": 9.5 - }, - "3,12", - "3,13", - { - "c": "#aaaaaa" - }, - "3,14", - { - "x": 1.75 - }, - "3,15" - ], - [ - "4,0", - { - "x": 0.5, - "w": 1.25 - }, - "4,1", - "4,2", - { - "c": "#cccccc" - }, - "4,3", - { - "x": 9.75 - }, - "4,13", - { - "c": "#aaaaaa", - "w": 1.75 - }, - "4,14" - ], - [ - { - "y": -0.75, - "x": 17.5, - "c": "#777777" - }, - "4,15" - ], - [ - { - "y": -0.25, - "c": "#aaaaaa" - }, - "5,0", - { - "x": 0.5, - "w": 1.25 - }, - "5,1", - { - "w": 1.25 - }, - "5,2" - ], - [ - { - "y": -0.75, - "x": 16.5, - "c": "#777777" - }, - "5,13", - "5,14", - "5,15" - ], - [ - { - "r": 6, - "y": -7.05, - "x": 5.4, - "c": "#cccccc" - }, - "0,4", - "0,5", - { - "x": 0.25, - "c": "#aaaaaa" - }, - "0,6", - "0,7" - ], - [ - { - "y": 0.25, - "x": 5.55, - "c": "#cccccc" - }, - "1,4", - "1,5", - "1,6", - "1,7" - ], - [ - { - "x": 4.9 - }, - "2,3", - "2,4", - "2,5", - "2,6" - ], - [ - { - "x": 5 - }, - "3,3", - "3,4", - "3,5", - "3,6" - ], - [ - { - "x": 5.35 - }, - "4,4", - "4,5", - "4,6", - "4,7" - ], - [ - { - "x": 5.35, - "c": "#aaaaaa", - "w": 1.25 - }, - "5,3", - { - "w": 2.25 - }, - "5,4", - "5,7" - ], - [ - { - "r": -6, - "y": -4.25, - "x": 10.05 - }, - "0,8", - "0,9", - { - "x": 0.25, - "c": "#cccccc" - }, - "0,10", - "0,11" - ], - [ - { - "y": 0.25, - "x": 9.4 - }, - "1,8", - "1,9", - "1,10", - "1,11" - ], - [ - { - "x": 8.9 - }, - "2,7", - "2,8", - "2,9", - "2,10", - "2,11" - ], - [ - { - "x": 9.4 - }, - "3,8", - "3,9", - "3,10", - "3,11" - ], - [ - { - "x": 8.85 - }, - "4,8", - "4,9", - "4,10", - "4,11", - "4,12" - ], - [ - { - "x": 8.85, - "c": "#aaaaaa", - "w": 2.55 - }, - "5,8", - "5,9", - "5,10" - ] - ] - } -} diff --git a/keyboards/keychron/q12_max/ansi_encoder/ansi_encoder.c b/keyboards/keychron/q12_max/ansi_encoder/ansi_encoder.c deleted file mode 100644 index 1bdcf2cc0a..0000000000 --- a/keyboards/keychron/q12_max/ansi_encoder/ansi_encoder.c +++ /dev/null @@ -1,169 +0,0 @@ -/* Copyright 2024 @ 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/>. - */ - -#include "quantum.h" - -// clang-format off - -#ifdef RGB_MATRIX_ENABLE -const snled27351_led_t g_snled27351_leds[RGB_MATRIX_LED_COUNT] = { -/* Refer to SNLED27351 manual for these locations - * driver - * | R location - * | | G location - * | | | B location - * | | | | */ - {0, D_15, F_15, E_15}, - {0, D_16, F_16, E_16}, - {0, G_16, I_16, H_16}, - {0, G_15, I_15, H_15}, - {0, G_14, I_14, H_14}, - {0, G_13, I_13, H_13}, - {0, G_12, I_12, H_12}, - {0, G_11, I_11, H_11}, - {0, G_10, I_10, H_10}, - {0, G_9, I_9, H_9}, - {0, G_8, I_8, H_8}, - {0, G_7, I_7, H_7}, - {0, G_6, I_6, H_6}, - {0, G_5, I_5, H_5}, - {0, G_4, I_4, H_4}, - {0, G_3, I_3, H_3}, - {0, G_2, I_2, H_2}, - {0, G_1, I_1, H_1}, - - {0, D_12, F_12, E_12}, - {0, D_13, F_13, E_13}, - {0, D_14, F_14, E_14}, - {0, A_16, C_16, B_16}, - {0, A_15, C_15, B_15}, - {0, A_14, C_14, B_14}, - {0, A_13, C_13, B_13}, - {0, A_12, C_12, B_12}, - {0, A_11, C_11, B_11}, - {0, A_10, C_10, B_10}, - {0, A_9, C_9, B_9}, - {0, A_8, C_8, B_8}, - {0, A_7, C_7, B_7}, - {0, A_6, C_6, B_6}, - {0, A_5, C_5, B_5}, - {0, A_4, C_4, B_4}, - {0, A_3, C_3, B_3}, - {0, A_2, C_2, B_2}, - {0, A_1, C_1, B_1}, - - {0, D_9, F_9, E_9}, - {0, D_10, F_10, E_10}, - {0, D_11, F_11, E_11}, - {0, J_16, L_16, K_16}, - {0, J_15, L_15, K_15}, - {0, J_14, L_14, K_14}, - {0, J_13, L_13, K_13}, - {0, J_12, L_12, K_12}, - {0, J_11, L_11, K_11}, - {0, J_10, L_10, K_10}, - {0, J_9, L_9, K_9}, - {0, J_8, L_8, K_8}, - {0, J_7, L_7, K_7}, - {0, J_6, L_6, K_6}, - {0, J_5, L_5, K_5}, - {0, J_4, L_4, K_4}, - {0, J_3, L_3, K_3}, - {0, J_2, L_2, K_2}, - {0, J_1, L_1, K_1}, - - {1, J_11, L_11, K_11}, - {1, J_12, L_12, K_12}, - {1, A_16, C_16, B_16}, - {1, A_15, C_15, B_15}, - {1, A_14, C_14, B_14}, - {1, A_13, C_13, B_13}, - {1, A_12, C_12, B_12}, - {1, A_11, C_11, B_11}, - {1, A_10, C_10, B_10}, - {1, A_9, C_9, B_9}, - {1, A_8, C_8, B_8}, - {1, A_7, C_7, B_7}, - {1, A_6, C_6, B_6}, - {1, A_5, C_5, B_5}, - {1, A_4, C_4, B_4}, - {1, A_3, C_3, B_3}, - {1, A_2, C_2, B_2}, - - {1, J_13, L_13, K_13}, - {1, J_14, L_14, K_14}, - {1, J_15, L_15, K_15}, - {1, G_16, I_16, H_16}, - {1, G_15, I_15, H_15}, - {1, G_13, I_13, H_13}, - {1, G_12, I_12, H_12}, - {1, G_11, I_11, H_11}, - {1, G_10, I_10, H_10}, - {1, G_9, I_9, H_9}, - {1, G_8, I_8, H_8}, - {1, G_7, I_7, H_7}, - {1, G_6, I_6, H_6}, - {1, G_5, I_5, H_5}, - {1, G_4, I_4, H_4}, - {1, G_3, I_3, H_3}, - {1, G_2, I_2, H_2}, - - {1, J_16, L_16, K_16}, - {1, D_16, F_16, E_16}, - {1, D_15, F_15, E_15}, - {1, D_14, F_14, E_14}, - {1, D_13, F_13, E_13}, - {1, D_9, F_9, E_9}, - {1, D_6, F_6, E_6}, - {1, D_5, F_5, E_5}, - {1, D_4, F_4, E_4}, - {1, D_3, F_3, E_3}, - {1, D_2, F_2, E_2}, - {1, D_1, F_1, E_1}, -}; - -#define __ NO_LED - -led_config_t g_led_config = { - { - // Key Matrix to LED Index - { __, 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, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55 }, - { 56, 57, 58, __, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, __ }, - { 73, 74, 75, 76, 77, __, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, __ }, - { __, 90, 91, __, 92, 93, 94, __, __, __, 95, __, __, 96, 97, 98, 99,100, 101}, - }, - { - // LED Index to Physical Position - {10, 0}, {20, 0}, {30, 0}, {47, 0}, {62, 0}, {73, 0}, {84, 0}, {95, 0}, {110,0}, {120, 0}, {131, 0}, {142, 0}, {155, 0}, {166, 0}, {177,0}, {190, 0}, {205,0}, {224,0}, - {0,15}, {10,15}, {20,15}, {30,15}, {47,15}, {58,15}, {69,15}, {80,15}, {91,15}, {102,15},{113,15}, {124,15}, {135,15}, {146,15}, {157,15}, {168,15}, {179,15}, {200,15}, {224,15}, - {0,26}, {10,26}, {20,26}, {30,32}, {49,26}, {64,26}, {75,26}, {86,26}, {97,26}, {108,26},{119,26}, {130,26}, {141,26}, {152,26}, {163,26}, {174,26}, {185,26}, {205,26}, {224,26}, - {0,38}, {10,38}, {20,38}, {52,38}, {68,38}, {79,38}, {90,38}, {101,38},{112,38},{123,38}, {134,38}, {145,38}, {156,38}, {167,38}, {178,38}, {197,38}, {224,38}, - {0,49}, {10,49}, {20,49}, {30,55}, {55,49}, {73,49}, {84,49}, {95,49}, {106,49},{117,49}, {128,49}, {139,49}, {151,49}, {162,49}, {173,49}, {190,49}, {210,51}, - {5,61}, {20,61}, {48,61}, {62,61}, {79,61}, {117,61}, {159,61}, {170,64}, {182,61}, {198,63}, {210,63}, {224,63} - }, - { - // RGB LED Index to Flag - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - } -}; -#endif diff --git a/keyboards/keychron/q12_max/ansi_encoder/config.h b/keyboards/keychron/q12_max/ansi_encoder/config.h deleted file mode 100644 index 1279ea8bc3..0000000000 --- a/keyboards/keychron/q12_max/ansi_encoder/config.h +++ /dev/null @@ -1,57 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#pragma once - -#ifdef RGB_MATRIX_ENABLE -/* RGB Matrix driver configuration */ -# define DRIVER_COUNT 2 -# define RGB_MATRIX_LED_COUNT 102 - -# define SPI_SCK_PIN A5 -# define SPI_MISO_PIN A6 -# define SPI_MOSI_PIN A7 - -# define DRIVER_CS_PINS \ - { B8, B9 } -# define SNLED23751_SPI_DIVISOR 16 -# define SPI_DRIVER SPID1 - -/* Scan phase of led driver set as MSKPHASE_12CHANNEL(defined as 0x03 in snled27351.h) */ -# define SNLED27351_PHASE_CHANNEL MSKPHASE_12CHANNEL - -/* Set LED driver current */ -# define SNLED27351_CURRENT_TUNE \ - { 0x2C, 0x2C, 0x2C, 0x2C, 0x2C, 0x2C, 0x2C, 0x2C, 0x2C, 0x2C, 0x2C, 0x2C } - -/* Set to infinit, which is use in USB mode by default */ -# define RGB_MATRIX_TIMEOUT RGB_MATRIX_TIMEOUT_INFINITE - -/* Allow shutdown of led driver to save power */ -# define RGB_MATRIX_DRIVER_SHUTDOWN_ENABLE -/* Turn off backlight on low brightness to save power */ -# define RGB_MATRIX_BRIGHTNESS_TURN_OFF_VAL 32 - -/* Indications */ -# define CAPS_LOCK_INDEX 59 -# define NUM_LOCK_INDEX 18 -# define LOW_BAT_IND_INDEX \ - { 95 } - -# define RGB_MATRIX_KEYPRESSES -# define RGB_MATRIX_FRAMEBUFFER_EFFECTS - -#endif diff --git a/keyboards/keychron/q12_max/ansi_encoder/info.json b/keyboards/keychron/q12_max/ansi_encoder/info.json deleted file mode 100644 index 8613ba43b8..0000000000 --- a/keyboards/keychron/q12_max/ansi_encoder/info.json +++ /dev/null @@ -1,120 +0,0 @@ -{ - "usb": { - "pid": "0x08C3", - "device_version": "1.0.0" - }, - "layouts": { - "LAYOUT_ansi_103": { - "layout": [ - {"matrix": [0, 0], "x": 0, "y": 0}, - {"matrix": [0, 1], "x": 1, "y": 0}, - {"matrix": [0, 2], "x": 2, "y": 0}, - {"matrix": [0, 3], "x": 3, "y": 0}, - {"matrix": [0, 4], "x": 4.25, "y": 0}, - {"matrix": [0, 5], "x": 5.5, "y": 0}, - {"matrix": [0, 6], "x": 6.5, "y": 0}, - {"matrix": [0, 7], "x": 7.5, "y": 0}, - {"matrix": [0, 8], "x": 8.5, "y": 0}, - {"matrix": [0, 9], "x": 9.75, "y": 0}, - {"matrix": [0, 10], "x": 10.75, "y": 0}, - {"matrix": [0, 11], "x": 11.75, "y": 0}, - {"matrix": [0, 12], "x": 12.75, "y": 0}, - {"matrix": [0, 13], "x": 14, "y": 0}, - {"matrix": [0, 14], "x": 15, "y": 0}, - {"matrix": [0, 15], "x": 16, "y": 0}, - {"matrix": [0, 16], "x": 17, "y": 0}, - {"matrix": [0, 17], "x": 18.25, "y": 0}, - {"matrix": [0, 18], "x": 19.5, "y": 0}, - - {"matrix": [1, 0], "x": 0, "y": 1.25}, - {"matrix": [1, 1], "x": 1, "y": 1.25}, - {"matrix": [1, 2], "x": 2, "y": 1.25}, - {"matrix": [1, 3], "x": 3, "y": 1.25}, - {"matrix": [1, 4], "x": 4.25, "y": 1.25}, - {"matrix": [1, 5], "x": 5.25, "y": 1.25}, - {"matrix": [1, 6], "x": 6.25, "y": 1.25}, - {"matrix": [1, 7], "x": 7.25, "y": 1.25}, - {"matrix": [1, 8], "x": 8.25, "y": 1.25}, - {"matrix": [1, 9], "x": 9.25, "y": 1.25}, - {"matrix": [1, 10], "x": 10.25, "y": 1.25}, - {"matrix": [1, 11], "x": 11.25, "y": 1.25}, - {"matrix": [1, 12], "x": 12.25, "y": 1.25}, - {"matrix": [1, 13], "x": 13.25, "y": 1.25}, - {"matrix": [1, 14], "x": 14.25, "y": 1.25}, - {"matrix": [1, 15], "x": 15.25, "y": 1.25}, - {"matrix": [1, 16], "x": 16.25, "y": 1.25}, - {"matrix": [1, 17], "x": 17.25, "y": 1.25, "w": 2}, - {"matrix": [1, 18], "x": 19.5, "y": 1.25}, - - {"matrix": [2, 0], "x": 0, "y": 2.25}, - {"matrix": [2, 1], "x": 1, "y": 2.25}, - {"matrix": [2, 2], "x": 2, "y": 2.25}, - {"matrix": [2, 3], "x": 3, "y": 2.25, "h": 2}, - {"matrix": [2, 4], "x": 4.25, "y": 2.25, "w": 1.5}, - {"matrix": [2, 5], "x": 5.75, "y": 2.25}, - {"matrix": [2, 6], "x": 6.75, "y": 2.25}, - {"matrix": [2, 7], "x": 7.75, "y": 2.25}, - {"matrix": [2, 8], "x": 8.75, "y": 2.25}, - {"matrix": [2, 9], "x": 9.75, "y": 2.25}, - {"matrix": [2, 10], "x": 10.75, "y": 2.25}, - {"matrix": [2, 11], "x": 11.75, "y": 2.25}, - {"matrix": [2, 12], "x": 12.75, "y": 2.25}, - {"matrix": [2, 13], "x": 13.75, "y": 2.25}, - {"matrix": [2, 14], "x": 14.75, "y": 2.25}, - {"matrix": [2, 15], "x": 15.75, "y": 1.25}, - {"matrix": [2, 16], "x": 16.75, "y": 1.25}, - {"matrix": [2, 17], "x": 17.75, "y": 1.25, "w": 1.5}, - {"matrix": [2, 18], "x": 19.5, "y": 1.25}, - - {"matrix": [3, 0], "x": 0, "y": 3.25}, - {"matrix": [3, 1], "x": 1, "y": 3.25}, - {"matrix": [3, 2], "x": 2, "y": 3.25}, - {"matrix": [3, 4], "x": 3.25, "y": 3.25, "w": 1.75}, - {"matrix": [3, 5], "x": 5, "y": 3.25}, - {"matrix": [3, 6], "x": 6, "y": 3.25}, - {"matrix": [3, 7], "x": 7, "y": 3.25}, - {"matrix": [3, 8], "x": 8, "y": 3.25}, - {"matrix": [3, 9], "x": 9, "y": 3.25}, - {"matrix": [3, 10], "x": 10, "y": 3.25}, - {"matrix": [3, 11], "x": 11, "y": 3.25}, - {"matrix": [3, 12], "x": 12, "y": 3.25}, - {"matrix": [3, 13], "x": 13, "y": 3.25}, - {"matrix": [3, 14], "x": 14, "y": 3.25}, - {"matrix": [3, 15], "x": 16, "y": 3.25}, - {"matrix": [3, 16], "x": 17, "y": 3.25, "w": 2.25}, - {"matrix": [3, 17], "x": 19.5, "y": 3.25}, - - {"matrix": [4, 0], "x": 0, "y": 4.25}, - {"matrix": [4, 1], "x": 1, "y": 4.25}, - {"matrix": [4, 2], "x": 2, "y": 4.25}, - {"matrix": [4, 3], "x": 3, "y": 4.25, "h": 2}, - {"matrix": [4, 4], "x": 4.25, "y": 4.25, "w": 2.25}, - {"matrix": [4, 6], "x": 6.5, "y": 4.25}, - {"matrix": [4, 7], "x": 7.5, "y": 4.25}, - {"matrix": [4, 8], "x": 8.5, "y": 4.25}, - {"matrix": [4, 9], "x": 9.5, "y": 4.25}, - {"matrix": [4, 10], "x": 10.5, "y": 4.25}, - {"matrix": [4, 11], "x": 11.5, "y": 4.25}, - {"matrix": [4, 12], "x": 12.5, "y": 4.25, "w": 1.75}, - {"matrix": [4, 13], "x": 13.5, "y": 4.5}, - {"matrix": [4, 14], "x": 14.5, "y": 4.25}, - {"matrix": [4, 15], "x": 15.5, "y": 4.25}, - {"matrix": [4, 16], "x": 16.5, "y": 4.25, "w": 1.75}, - {"matrix": [4, 17], "x": 18.5, "y": 4.5}, - - {"matrix": [5, 1], "x": 0, "y": 5.25, "w": 2}, - {"matrix": [5, 2], "x": 2, "y": 5.25}, - {"matrix": [5, 4], "x": 4.25, "y": 5.25, "w": 1.25}, - {"matrix": [5, 5], "x": 5.5, "y": 5.25, "w": 1.25}, - {"matrix": [5, 6], "x": 6.75, "y": 5.25, "w": 1.25}, - {"matrix": [5, 10], "x": 8, "y": 5.25, "w": 6.25}, - {"matrix": [5, 13], "x": 14.25, "y": 5.25}, - {"matrix": [5, 14], "x": 15.25, "y": 5.25}, - {"matrix": [5, 15], "x": 16.25, "y": 5.25}, - {"matrix": [5, 16], "x": 17.5, "y": 5.5}, - {"matrix": [5, 17], "x": 18.5, "y": 5.5}, - {"matrix": [5, 18], "x": 19.5, "y": 5.5} - ] - } - } -} diff --git a/keyboards/keychron/q12_max/ansi_encoder/keymaps/default/keymap.c b/keyboards/keychron/q12_max/ansi_encoder/keymaps/default/keymap.c deleted file mode 100644 index 542f89680b..0000000000 --- a/keyboards/keychron/q12_max/ansi_encoder/keymaps/default/keymap.c +++ /dev/null @@ -1,76 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#include QMK_KEYBOARD_H -#include "keychron_common.h" - -enum layers { - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN, -}; -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_ansi_103( - KC_MUTE, KC_F14, KC_F15, KC_F16, KC_ESC, KC_BRID, KC_BRIU, KC_MCTRL, KC_LNPAD, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_DEL, RGB_MOD, - KC_NUM, KC_PSLS, KC_PAST, KC_PMNS, KC_GRV, 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_PGUP, - KC_P7, KC_P8, KC_P9, KC_PPLS, 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_PGDN, - KC_P4, KC_P5, KC_P6, 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_HOME, - KC_P1, KC_P2, KC_P3, KC_PENT, 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_P0, KC_PDOT, KC_LCTL, KC_LOPTN, KC_LCMMD, KC_SPC, KC_RCMMD,MO(MAC_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - - [MAC_FN] = LAYOUT_ansi_103( - _______, _______, _______, _______, _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, RGB_TOG, - _______, _______, _______, _______, _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, KC_END, - _______, _______, _______, _______, _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ), - - [WIN_BASE] = LAYOUT_ansi_103( - KC_MUTE, _______, _______, _______, KC_ESC, 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_DEL, RGB_MOD, - KC_NUM, KC_PSLS, KC_PAST, KC_PMNS, KC_GRV, 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_PGUP, - KC_P7, KC_P8, KC_P9, KC_PPLS, 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_PGDN, - KC_P4, KC_P5, KC_P6, 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_HOME, - KC_P1, KC_P2, KC_P3, KC_PENT, 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_P0, KC_PDOT, KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(WIN_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - - [WIN_FN] = LAYOUT_ansi_103( - _______, _______, _______, _______, _______, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, RGB_TOG, - _______, _______, _______, _______, _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, KC_END, - _______, _______, _______, _______, _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ) -}; - -// clang-format on -#if defined(ENCODER_MAP_ENABLE) -const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][2] = { - [MAC_BASE] = {ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [MAC_FN] = {ENCODER_CCW_CW(RGB_VAD, RGB_VAI)}, - [WIN_BASE] = {ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [WIN_FN] = {ENCODER_CCW_CW(RGB_VAD, RGB_VAI)}, -}; -#endif // ENCODER_MAP_ENABLE - -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - if (!process_record_keychron_common(keycode, record)) { - return false; - } - return true; -} diff --git a/keyboards/keychron/q12_max/ansi_encoder/keymaps/via/keymap.c b/keyboards/keychron/q12_max/ansi_encoder/keymaps/via/keymap.c deleted file mode 100644 index 542f89680b..0000000000 --- a/keyboards/keychron/q12_max/ansi_encoder/keymaps/via/keymap.c +++ /dev/null @@ -1,76 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#include QMK_KEYBOARD_H -#include "keychron_common.h" - -enum layers { - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN, -}; -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_ansi_103( - KC_MUTE, KC_F14, KC_F15, KC_F16, KC_ESC, KC_BRID, KC_BRIU, KC_MCTRL, KC_LNPAD, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_DEL, RGB_MOD, - KC_NUM, KC_PSLS, KC_PAST, KC_PMNS, KC_GRV, 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_PGUP, - KC_P7, KC_P8, KC_P9, KC_PPLS, 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_PGDN, - KC_P4, KC_P5, KC_P6, 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_HOME, - KC_P1, KC_P2, KC_P3, KC_PENT, 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_P0, KC_PDOT, KC_LCTL, KC_LOPTN, KC_LCMMD, KC_SPC, KC_RCMMD,MO(MAC_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - - [MAC_FN] = LAYOUT_ansi_103( - _______, _______, _______, _______, _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, RGB_TOG, - _______, _______, _______, _______, _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, KC_END, - _______, _______, _______, _______, _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ), - - [WIN_BASE] = LAYOUT_ansi_103( - KC_MUTE, _______, _______, _______, KC_ESC, 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_DEL, RGB_MOD, - KC_NUM, KC_PSLS, KC_PAST, KC_PMNS, KC_GRV, 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_PGUP, - KC_P7, KC_P8, KC_P9, KC_PPLS, 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_PGDN, - KC_P4, KC_P5, KC_P6, 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_HOME, - KC_P1, KC_P2, KC_P3, KC_PENT, 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_P0, KC_PDOT, KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(WIN_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - - [WIN_FN] = LAYOUT_ansi_103( - _______, _______, _______, _______, _______, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, RGB_TOG, - _______, _______, _______, _______, _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, KC_END, - _______, _______, _______, _______, _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ) -}; - -// clang-format on -#if defined(ENCODER_MAP_ENABLE) -const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][2] = { - [MAC_BASE] = {ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [MAC_FN] = {ENCODER_CCW_CW(RGB_VAD, RGB_VAI)}, - [WIN_BASE] = {ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [WIN_FN] = {ENCODER_CCW_CW(RGB_VAD, RGB_VAI)}, -}; -#endif // ENCODER_MAP_ENABLE - -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - if (!process_record_keychron_common(keycode, record)) { - return false; - } - return true; -} diff --git a/keyboards/keychron/q12_max/ansi_encoder/keymaps/via/rules.mk b/keyboards/keychron/q12_max/ansi_encoder/keymaps/via/rules.mk deleted file mode 100644 index 1e5b99807c..0000000000 --- a/keyboards/keychron/q12_max/ansi_encoder/keymaps/via/rules.mk +++ /dev/null @@ -1 +0,0 @@ -VIA_ENABLE = yes diff --git a/keyboards/keychron/q12_max/ansi_encoder/rules.mk b/keyboards/keychron/q12_max/ansi_encoder/rules.mk deleted file mode 100644 index 7ff128fa69..0000000000 --- a/keyboards/keychron/q12_max/ansi_encoder/rules.mk +++ /dev/null @@ -1 +0,0 @@ -# This file intentionally left blank \ No newline at end of file diff --git a/keyboards/keychron/q12_max/board.h b/keyboards/keychron/q12_max/board.h deleted file mode 100644 index 372694871c..0000000000 --- a/keyboards/keychron/q12_max/board.h +++ /dev/null @@ -1,226 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#pragma once - -#include_next - -// clang-format off - -/* Set GPIOA_SWDIO to INPUT & PIN_PUPDR_PULLUP to avoid FLOATING */ -#undef VAL_GPIOA_MODER -#define VAL_GPIOA_MODER (PIN_MODE_INPUT(GPIOA_BUTTON) | \ - PIN_MODE_INPUT(GPIOA_PIN1) | \ - PIN_MODE_INPUT(GPIOA_PIN2) | \ - PIN_MODE_INPUT(GPIOA_PIN3) | \ - PIN_MODE_ALTERNATE(GPIOA_CS43L22_LRCK) |\ - PIN_MODE_ALTERNATE(GPIOA_L3GD20_SCL) | \ - PIN_MODE_ALTERNATE(GPIOA_L3GD20_SD0) | \ - PIN_MODE_ALTERNATE(GPIOA_L3GD20_SDI) | \ - PIN_MODE_INPUT(GPIOA_PIN8) | \ - PIN_MODE_INPUT(GPIOA_VBUS_FS) | \ - PIN_MODE_ALTERNATE(GPIOA_OTG_FS_ID) | \ - PIN_MODE_ALTERNATE(GPIOA_OTG_FS_DM) | \ - PIN_MODE_ALTERNATE(GPIOA_OTG_FS_DP) | \ - PIN_MODE_INPUT(GPIOA_SWDIO) | \ - PIN_MODE_INPUT(GPIOA_SWCLK) | \ - PIN_MODE_INPUT(GPIOA_PIN15)) - -#undef VAL_GPIOA_PUPDR -#define VAL_GPIOA_PUPDR (PIN_PUPDR_FLOATING(GPIOA_BUTTON) | \ - PIN_PUPDR_PULLUP(GPIOA_PIN1) | \ - PIN_PUPDR_PULLUP(GPIOA_PIN2) | \ - PIN_PUPDR_PULLUP(GPIOA_PIN3) | \ - PIN_PUPDR_FLOATING(GPIOA_CS43L22_LRCK) |\ - PIN_PUPDR_FLOATING(GPIOA_L3GD20_SCL) | \ - PIN_PUPDR_PULLUP(GPIOA_L3GD20_SD0) | \ - PIN_PUPDR_PULLUP(GPIOA_L3GD20_SDI) | \ - PIN_PUPDR_PULLUP(GPIOA_PIN8) | \ - PIN_PUPDR_FLOATING(GPIOA_VBUS_FS) | \ - PIN_PUPDR_FLOATING(GPIOA_OTG_FS_ID) | \ - PIN_PUPDR_FLOATING(GPIOA_OTG_FS_DM) | \ - PIN_PUPDR_FLOATING(GPIOA_OTG_FS_DP) | \ - PIN_PUPDR_PULLUP(GPIOA_SWDIO) | \ - PIN_PUPDR_PULLUP(GPIOA_SWCLK) | \ - PIN_PUPDR_PULLUP(GPIOA_PIN15)) - -#undef VAL_GPIOB_MODER -#define VAL_GPIOB_MODER (PIN_MODE_INPUT(GPIOB_PIN0) | \ - PIN_MODE_INPUT(GPIOB_PIN1) | \ - PIN_MODE_INPUT(GPIOB_PIN2) | \ - PIN_MODE_INPUT(GPIOB_SWO) | \ - PIN_MODE_INPUT(GPIOB_PIN4) | \ - PIN_MODE_INPUT(GPIOB_PIN5) | \ - PIN_MODE_INPUT(GPIOB_LSM303DLHC_SCL) | \ - PIN_MODE_INPUT(GPIOB_PIN7) | \ - PIN_MODE_INPUT(GPIOB_PIN8) | \ - PIN_MODE_INPUT(GPIOB_LSM303DLHC_SDA) | \ - PIN_MODE_INPUT(GPIOB_MP45DT02_CLK_IN) |\ - PIN_MODE_INPUT(GPIOB_PIN11) | \ - PIN_MODE_INPUT(GPIOB_PIN12) | \ - PIN_MODE_INPUT(GPIOB_PIN13) | \ - PIN_MODE_INPUT(GPIOB_PIN14) | \ - PIN_MODE_INPUT(GPIOB_PIN15)) - -#undef VAL_GPIOB_PUPDR -#define VAL_GPIOB_PUPDR (PIN_PUPDR_PULLDOWN(GPIOB_PIN0) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN1) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN2) | \ - PIN_PUPDR_PULLDOWN(GPIOB_SWO) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN4) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN5) | \ - PIN_PUPDR_PULLDOWN(GPIOB_LSM303DLHC_SCL) |\ - PIN_PUPDR_PULLDOWN(GPIOB_PIN7) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN8) | \ - PIN_PUPDR_PULLDOWN(GPIOB_LSM303DLHC_SDA) |\ - PIN_PUPDR_PULLDOWN(GPIOB_MP45DT02_CLK_IN) |\ - PIN_PUPDR_PULLDOWN(GPIOB_PIN11) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN12) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN13) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN14) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN15)) - -#undef VAL_GPIOB_AFRL -#define VAL_GPIOB_AFRL (PIN_AFIO_AF(GPIOB_PIN0, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN1, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN2, 0U) | \ - PIN_AFIO_AF(GPIOB_SWO, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN4, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN5, 0U) | \ - PIN_AFIO_AF(GPIOB_LSM303DLHC_SCL, 0) | \ - PIN_AFIO_AF(GPIOB_PIN7, 0U)) - -#undef VAL_GPIOB_AFRH -#define VAL_GPIOB_AFRH (PIN_AFIO_AF(GPIOB_PIN8, 0U) | \ - PIN_AFIO_AF(GPIOB_LSM303DLHC_SDA, 0) | \ - PIN_AFIO_AF(GPIOB_MP45DT02_CLK_IN, 0U) |\ - PIN_AFIO_AF(GPIOB_PIN11, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN12, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN13, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN14, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN15, 0U)) - -/* C5 Need to be pulldown */ -#undef VAL_GPIOC_MODER -#define VAL_GPIOC_MODER (PIN_MODE_INPUT(GPIOC_OTG_FS_POWER_ON) |\ - PIN_MODE_INPUT(GPIOC_PIN1) | \ - PIN_MODE_INPUT(GPIOC_PIN2) | \ - PIN_MODE_INPUT(GPIOC_CS43L22_AIN4x) | \ - PIN_MODE_INPUT(GPIOC_PIN4) | \ - PIN_MODE_INPUT(GPIOC_PIN5) | \ - PIN_MODE_INPUT(GPIOC_PIN6) | \ - PIN_MODE_INPUT(GPIOC_CS43L22_MCLK) | \ - PIN_MODE_INPUT(GPIOC_PIN8) | \ - PIN_MODE_INPUT(GPIOC_PIN9) | \ - PIN_MODE_INPUT(GPIOC_CS43L22_SCLK) | \ - PIN_MODE_INPUT(GPIOC_PIN11) | \ - PIN_MODE_INPUT(GPIOC_CS43L22_SDIN) | \ - PIN_MODE_INPUT(GPIOC_PIN13) | \ - PIN_MODE_INPUT(GPIOC_OSC32_IN) | \ - PIN_MODE_INPUT(GPIOC_OSC32_OUT)) - -#undef VAL_GPIOC_PUPDR -#define VAL_GPIOC_PUPDR (PIN_PUPDR_PULLUP(GPIOC_OTG_FS_POWER_ON) |\ - PIN_PUPDR_PULLUP(GPIOC_PIN1) | \ - PIN_PUPDR_PULLUP(GPIOC_PIN2) | \ - PIN_PUPDR_PULLUP(GPIOC_CS43L22_AIN4x) |\ - PIN_PUPDR_PULLUP(GPIOC_PIN4) | \ - PIN_PUPDR_PULLDOWN(GPIOC_PIN5) | \ - PIN_PUPDR_PULLUP(GPIOC_PIN6) | \ - PIN_PUPDR_PULLUP(GPIOC_CS43L22_MCLK) | \ - PIN_PUPDR_PULLUP(GPIOC_PIN8) | \ - PIN_PUPDR_PULLUP(GPIOC_PIN9) | \ - PIN_PUPDR_PULLUP(GPIOC_CS43L22_SCLK) | \ - PIN_PUPDR_PULLUP(GPIOC_PIN11) | \ - PIN_PUPDR_PULLUP(GPIOC_CS43L22_SDIN) | \ - PIN_PUPDR_PULLUP(GPIOC_PIN13) | \ - PIN_PUPDR_PULLUP(GPIOC_OSC32_IN) | \ - PIN_PUPDR_PULLUP(GPIOC_OSC32_OUT)) - -/* Set all GPIOD pins to INPUT & PULLUP to avoid FLOATING */ -#undef VAL_GPIOD_MODER -#define VAL_GPIOD_MODER (PIN_MODE_INPUT(GPIOD_PIN0) | \ - PIN_MODE_INPUT(GPIOD_PIN1) | \ - PIN_MODE_INPUT(GPIOD_PIN2) | \ - PIN_MODE_INPUT(GPIOD_PIN3) | \ - PIN_MODE_INPUT(GPIOD_CS43L22_RESET) | \ - PIN_MODE_INPUT(GPIOD_OverCurrent) | \ - PIN_MODE_INPUT(GPIOD_PIN6) | \ - PIN_MODE_INPUT(GPIOD_PIN7) | \ - PIN_MODE_INPUT(GPIOD_PIN8) | \ - PIN_MODE_INPUT(GPIOD_PIN9) | \ - PIN_MODE_INPUT(GPIOD_PIN10) | \ - PIN_MODE_INPUT(GPIOD_PIN11) | \ - PIN_MODE_INPUT(GPIOD_LED4) | \ - PIN_MODE_INPUT(GPIOD_LED3) | \ - PIN_MODE_INPUT(GPIOD_LED5) | \ - PIN_MODE_INPUT(GPIOD_LED6)) - -#undef VAL_GPIOD_PUPDR -#define VAL_GPIOD_PUPDR (PIN_PUPDR_PULLUP(GPIOD_PIN0) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN1) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN2) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN3) | \ - PIN_PUPDR_PULLUP(GPIOD_CS43L22_RESET) |\ - PIN_PUPDR_PULLUP(GPIOD_OverCurrent) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN6) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN7) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN8) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN9) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN10) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN11) | \ - PIN_PUPDR_PULLUP(GPIOD_LED4) | \ - PIN_PUPDR_PULLUP(GPIOD_LED3) | \ - PIN_PUPDR_PULLUP(GPIOD_LED5) | \ - PIN_PUPDR_PULLUP(GPIOD_LED6)) - -/* Set all GPIOE pins to INPUT & PULLUP to avoid FLOATING */ -#undef VAL_GPIOE_MODER -#define VAL_GPIOE_MODER (PIN_MODE_INPUT(GPIOE_L3GD20_INT1) | \ - PIN_MODE_INPUT(GPIOE_L3GD20_INT2) | \ - PIN_MODE_INPUT(GPIOE_LSM303DLHC_DRDY) |\ - PIN_MODE_INPUT(GPIOE_L3GD20_CS) | \ - PIN_MODE_INPUT(GPIOE_LSM303DLHC_INT1) |\ - PIN_MODE_INPUT(GPIOE_LSM303DLHC_INT2) |\ - PIN_MODE_INPUT(GPIOE_PIN6) | \ - PIN_MODE_INPUT(GPIOE_PIN7) | \ - PIN_MODE_INPUT(GPIOE_PIN8) | \ - PIN_MODE_INPUT(GPIOE_PIN9) | \ - PIN_MODE_INPUT(GPIOE_PIN10) | \ - PIN_MODE_INPUT(GPIOE_PIN11) | \ - PIN_MODE_INPUT(GPIOE_PIN12) | \ - PIN_MODE_INPUT(GPIOE_PIN13) | \ - PIN_MODE_INPUT(GPIOE_PIN14) | \ - PIN_MODE_INPUT(GPIOE_PIN15)) - -#undef VAL_GPIOE_PUPDR -#define VAL_GPIOE_PUPDR (PIN_PUPDR_PULLUP(GPIOE_L3GD20_INT1) | \ - PIN_PUPDR_PULLUP(GPIOE_L3GD20_INT2) | \ - PIN_PUPDR_PULLUP(GPIOE_LSM303DLHC_DRDY) |\ - PIN_PUPDR_PULLUP(GPIOE_L3GD20_CS) | \ - PIN_PUPDR_PULLUP(GPIOE_LSM303DLHC_INT1) |\ - PIN_PUPDR_PULLUP(GPIOE_LSM303DLHC_INT2) |\ - PIN_PUPDR_PULLUP(GPIOE_PIN6) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN7) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN8) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN9) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN10) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN11) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN12) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN13) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN14) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN15)) - diff --git a/keyboards/keychron/q12_max/config.h b/keyboards/keychron/q12_max/config.h deleted file mode 100644 index 8c7be75245..0000000000 --- a/keyboards/keychron/q12_max/config.h +++ /dev/null @@ -1,82 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#pragma once - -/* Encoder Configuration */ -#define ENCODER_DEFAULT_POS 0x3 -#define ENCODER_MAP_KEY_DELAY 2 - -#ifdef LK_WIRELESS_ENABLE -/* Hardware configuration */ -# define P2P4_MODE_SELECT_PIN A10 -# define BT_MODE_SELECT_PIN A9 - -# define LKBT51_RESET_PIN C4 -# define LKBT51_INT_INPUT_PIN B1 -# define BLUETOOTH_INT_OUTPUT_PIN A4 - -# define USB_POWER_SENSE_PIN B0 -# define USB_POWER_CONNECTED_LEVEL 0 - -# define BAT_CHARGING_PIN B13 -# define BAT_CHARGING_LEVEL 0 - -# define BT_HOST_DEVICES_COUNT 3 - -# if defined(RGB_MATRIX_ENABLE) - -# define LED_DRIVER_SHUTDOWN_PIN B7 - -# define BT_HOST_LED_MATRIX_LIST \ - { 23, 24, 25 } - -# define P2P4G_HOST_LED_MATRIX_LIST \ - { 26 } - -# define BAT_LEVEL_LED_LIST \ - { 23, 24, 25, 26, 27, 28, 29, 30, 31, 32 } - -/* 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 - -/* Reinit LED driver on tranport changed */ -# define REINIT_LED_DRIVER 1 - -# endif - -/* Keep USB connection in blueooth mode */ -# define KEEP_USB_CONNECTION_IN_WIRELESS_MODE - -/* Enable bluetooth NKRO */ -# define WIRELESS_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 - -/* Factory test keys */ -#define FN_KEY_1 MO(1) -#define FN_KEY_2 MO(3) -#define FN_BL_TRIG_KEY KC_END - -#define MATRIX_IO_DELAY 10 diff --git a/keyboards/keychron/q12_max/firmware/keychron_q12_max_ansi_encoder_via.bin b/keyboards/keychron/q12_max/firmware/keychron_q12_max_ansi_encoder_via.bin deleted file mode 100644 index cc77b3e38a..0000000000 Binary files a/keyboards/keychron/q12_max/firmware/keychron_q12_max_ansi_encoder_via.bin and /dev/null differ diff --git a/keyboards/keychron/q12_max/halconf.h b/keyboards/keychron/q12_max/halconf.h deleted file mode 100644 index 37bcc7c47b..0000000000 --- a/keyboards/keychron/q12_max/halconf.h +++ /dev/null @@ -1,31 +0,0 @@ -/* Copyright 2024 @ 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 - -#define _CHIBIOS_HAL_CONF_VER_8_0_ - -#define HAL_USE_SPI TRUE - -#ifdef LK_WIRELESS_ENABLE -# define HAL_USE_RTC TRUE -#endif - -#if defined(LK_WIRELESS_ENABLE) || defined(ENCODER_ENABLE) -# define PAL_USE_CALLBACKS TRUE -#endif - -#include_next diff --git a/keyboards/keychron/q12_max/info.json b/keyboards/keychron/q12_max/info.json deleted file mode 100644 index 1a2711c51e..0000000000 --- a/keyboards/keychron/q12_max/info.json +++ /dev/null @@ -1,80 +0,0 @@ -{ - "keyboard_name": "Keychron Q12 Max", - "manufacturer": "Keychron", - "url": "https://github.com/Keychron", - "maintainer": "Joe", - "processor": "STM32F401", - "bootloader": "stm32-dfu", - "usb": { - "vid": "0x3434" - }, - "features": { - "bootmagic": true, - "extrakey" : true, - "mousekey" : true, - "dip_switch" : true, - "encoder": true, - "encoder_map": true, - "nkro" : true, - "rgb_matrix": true, - "raw" : true, - "send_string": true - }, - "matrix_pins": { - "cols": ["A1", "A2", "A3", "B10", "C6", "C7", "C8", "A14", "A15", "C10", "C11", "C13", "C14", "C15", "C0", "C1", "C2", "C3", "A0"], - "rows": ["C12", "D2", "B3", "B4", "B5", "B6"] - }, - "diode_direction": "ROW2COL", - "bootmagic": { - "matrix": [0, 4] - }, - "encoder": { - "rotary": [ - { - "pin_a": "B14", - "pin_b": "B15" - } - ] - }, - "dip_switch" :{ - "pins": ["B12"] - }, - "rgb_matrix": { - "driver": "snled27351_spi", - "sleep": true, - "animations": { - "band_spiral_val": true, - "breathing": true, - "cycle_all": true, - "cycle_left_right": true, - "cycle_out_in": true, - "cycle_out_in_dual": true, - "cycle_pinwheel": true, - "cycle_spiral": true, - "cycle_up_down": true, - "digital_rain": true, - "dual_beacon": true, - "jellybean_raindrops": true, - "pixel_rain": true, - "rainbow_beacon": true, - "rainbow_moving_chevron": true, - "solid_reactive_multinexus": true, - "solid_reactive_multiwide": true, - "solid_reactive_simple": true, - "solid_splash": true, - "splash": true, - "typing_heatmap": true - } - }, - "eeprom": { - "wear_leveling": { - "driver": "embedded_flash", - "logical_size": 2048, - "backing_size": 4096 - } - }, - "build": { - "debounce_type": "sym_eager_pk" - }, - "debounce": 20 -} diff --git a/keyboards/keychron/q12_max/mcuconf.h b/keyboards/keychron/q12_max/mcuconf.h deleted file mode 100644 index 89294ee64b..0000000000 --- a/keyboards/keychron/q12_max/mcuconf.h +++ /dev/null @@ -1,37 +0,0 @@ -/* Copyright 2024 @ 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 - -#include_next - -#undef STM32_HSECLK -#define STM32_HSECLK 16000000 - -#undef STM32_PLLM_VALUE -#define STM32_PLLM_VALUE 8 - -#undef STM32_PLLN_VALUE -#define STM32_PLLN_VALUE 96 - -#undef STM32_PLLP_VALUE -#define STM32_PLLP_VALUE 4 - -#undef STM32_PLLQ_VALUE -#define STM32_PLLQ_VALUE 4 - -#undef STM32_SPI_USE_SPI1 -#define STM32_SPI_USE_SPI1 TRUE diff --git a/keyboards/keychron/q12_max/q12_max.c b/keyboards/keychron/q12_max/q12_max.c deleted file mode 100644 index 53f1d54b25..0000000000 --- a/keyboards/keychron/q12_max/q12_max.c +++ /dev/null @@ -1,61 +0,0 @@ -/* Copyright 2024 @ 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/>. - */ - -#include "quantum.h" -#include "keychron_task.h" -#include "keychron_common.h" -#ifdef FACTORY_TEST_ENABLE -# include "factory_test.h" -#endif -#ifdef LK_WIRELESS_ENABLE -# include "lkbt51.h" -# include "wireless.h" -# include "keychron_wireless_common.h" -# include "battery.h" -#endif - -#ifdef DIP_SWITCH_ENABLE -bool dip_switch_update_kb(uint8_t index, bool active) { - if (index == 0) { - default_layer_set(1UL << (active ? 2 : 0)); - } - dip_switch_update_user(index, active); - - return true; -} -#endif - -void keyboard_post_init_kb(void) { -#ifdef LK_WIRELESS_ENABLE - palSetLineMode(P2P4_MODE_SELECT_PIN, PAL_MODE_INPUT); - palSetLineMode(BT_MODE_SELECT_PIN, PAL_MODE_INPUT); - - lkbt51_init(false); - wireless_init(); -#endif - -#ifdef ENCODER_ENABLE - encoder_cb_init(); -#endif - - keyboard_post_init_user(); -} - -#ifdef LK_WIRELESS_ENABLE -bool lpm_is_kb_idle(void) { - return !factory_reset_indicating(); -} -#endif diff --git a/keyboards/keychron/q12_max/readme.md b/keyboards/keychron/q12_max/readme.md deleted file mode 100644 index e592666800..0000000000 --- a/keyboards/keychron/q12_max/readme.md +++ /dev/null @@ -1,21 +0,0 @@ -# Keychron Q12 Max - -![Keychron Q12 Max](https://cdn.shopify.com/s/files/1/0059/0630/1017/files/Q12-Max-1.jpg?v=1711071913) - -A customizable 96% keyboard. - -* Keyboard Maintainer: [Keychron](https://github.com/keychron) -* Hardware Supported: Keychron Q12 Max -* Hardware Availability: [Keychron Q12 Max QMK/VIA Wireless Custom Mechanical Keyboard](https://www.keychron.com/products/keychron-q12-max-qmk-via-wireless-custom-mechanical-keyboard) - -Make example for this keyboard (after setting up your build environment): - - make keychron/q12_max/ansi_encoder:default - -Flashing example for this keyboard: - - make keychron/q12_max/ansi_encoder:default:flash - -**Reset Key**: Toggle mode switch to "Cable", hold down the *Esc* key or reset button underneath space bar while connecting the USB cable, - -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). diff --git a/keyboards/keychron/q12_max/rules.mk b/keyboards/keychron/q12_max/rules.mk deleted file mode 100644 index 4eaf6820bc..0000000000 --- a/keyboards/keychron/q12_max/rules.mk +++ /dev/null @@ -1,4 +0,0 @@ -include keyboards/keychron/common/wireless/wireless.mk -include keyboards/keychron/common/keychron_common.mk - -VPATH += $(TOP_DIR)/keyboards/keychron diff --git a/keyboards/keychron/q12_max/via_json/q12_max_ansi_knob.json b/keyboards/keychron/q12_max/via_json/q12_max_ansi_knob.json deleted file mode 100644 index 386d522bc0..0000000000 --- a/keyboards/keychron/q12_max/via_json/q12_max_ansi_knob.json +++ /dev/null @@ -1,337 +0,0 @@ -{ - "name": "Keychron Q12 MAX ANSI Knob", - "vendorId": "0x3434", - "productId": "0x08C3", - "keycodes": ["qmk_lighting"], - "menus": [ - { - "label": "Lighting", - "content": [ - { - "label": "Backlight", - "content": [ - { - "label": "Brightness", - "type": "range", - "options": [0, 255], - "content": ["id_qmk_rgb_matrix_brightness", 3, 1] - }, - { - "label": "Effect", - "type": "dropdown", - "content": ["id_qmk_rgb_matrix_effect", 3, 2], - "options": [ - ["None", 0], - ["Solid Color", 1], - ["Breathing", 2], - ["Band Spiral Val", 3], - ["Cycle All", 4], - ["Cycle Left Right", 5], - ["Cycle Up Down", 6], - ["Rainbow Moving Chevron", 7], - ["Cycle Out In", 8], - ["Cycle Out In Dual", 9], - ["Cycle Pinwheel", 10], - ["Cycle Spiral", 11], - ["Dual Beacon", 12], - ["Rainbow Beacon", 13], - ["Jellybean Raindrops", 14], - ["Pixel Rain", 15], - ["Typing Heatmap", 16], - ["Digital Rain", 17], - ["Reactive Simple", 18], - ["Reactive Multiwide", 19], - ["Reactive Multinexus", 20], - ["Splash", 21], - ["Solid Splash", 22] - ] - }, - { - "showIf": "{id_qmk_rgb_matrix_effect} > 1", - "label": "Effect Speed", - "type": "range", - "options": [0, 255], - "content": ["id_qmk_rgb_matrix_effect_speed", 3, 3] - }, - { - "showIf": "{id_qmk_rgb_matrix_effect} != 0 && ( {id_qmk_rgb_matrix_effect} < 4 || {id_qmk_rgb_matrix_effect} == 18 || ({id_qmk_rgb_matrix_effect} > 17 && {id_qmk_rgb_matrix_effect} != 21) ) ", - "label": "Color", - "type": "color", - "content": ["id_qmk_rgb_matrix_color", 3, 4] - } - ] - } - ] - } - ], - "customKeycodes": [ - {"name": "Left Option", "title": "Left Option", "shortName": "LOpt"}, - {"name": "Right Option", "title": "Right Option", "shortName": "ROpt"}, - {"name": "Left Cmd", "title": "Left Command", "shortName": "LCmd"}, - {"name": "Right Cmd", "title": "Right Command", "shortName": "RCmd"}, - {"name": "Misson Control", "title": "Misson Control in Mac", "shortName": "MCtl"}, - {"name": "Lanuch Pad", "title": "Lanuch Pad in Windows", "shortName": "LPad"}, - {"name": "Task View", "title": "Task View in Windows", "shortName": "Task"}, - {"name": "File Explorer", "title": "File Explorer in Windows", "shortName": "File"}, - {"name": "Screen shot", "title": "Screenshot in macOS", "shortName": "SShot"}, - {"name": "Cortana", "title": "Cortana in Windows", "shortName": "Cortana"}, - {"name": "Siri", "title": "Siri in macOS", "shortName": "Siri"}, - {"name": "Bluetooth Host 1", "title": "Bluetooth Host 1", "shortName": "BTH1"}, - {"name": "Bluetooth Host 2", "title": "Bluetooth Host 2", "shortName": "BTH2"}, - {"name": "Bluetooth Host 3", "title": "Bluetooth Host 3", "shortName": "BTH3"}, - {"name": "2.4G", "title": "2.4G", "shortName": "2.4G"}, - {"name": "Battery Level", "title": "Show battery level", "shortName": "Batt"} - ], - "matrix": {"rows": 6, "cols": 19}, - "layouts": { - "keymap":[ - [ - "0,0\n\n\n\n\n\n\n\n\ne0", - "0,1", - "0,2", - "0,3", - { - "x": 0.25, - "c": "#777777" - }, - "0,4\nESC", - { - "x": 0.25, - "c": "#cccccc" - }, - "0,5", - "0,6", - "0,7", - "0,8", - { - "x": 0.25, - "c": "#aaaaaa" - }, - "0,9", - "0,10", - "0,11", - "0,12", - { - "x": 0.25, - "c": "#cccccc" - }, - "0,13", - "0,14", - "0,15", - "0,16", - { - "x": 0.25, - "c": "#aaaaaa" - }, - "0,17", - { - "x": 0.25 - }, - "0,18" - ], - [ - { - "y": 0.25, - "c": "#cccccc" - }, - "1,0", - "1,1", - "1,2", - "1,3", - { - "x": 0.25 - }, - "1,4", - "1,5", - "1,6", - "1,7", - "1,8", - "1,9", - "1,10", - "1,11", - "1,12", - "1,13", - "1,14", - "1,15", - "1,16", - { - "c": "#aaaaaa", - "w": 2 - }, - "1,17", - { - "x": 0.25 - }, - "1,18" - ], - [ - { - "c": "#cccccc" - }, - "2,0", - "2,1", - "2,2", - { - "h": 2 - }, - "2,3", - { - "x": 0.25, - "c": "#aaaaaa", - "w": 1.5 - }, - "2,4", - { - "c": "#cccccc" - }, - "2,5", - "2,6", - "2,7", - "2,8", - "2,9", - "2,10", - "2,11", - "2,12", - "2,13", - "2,14", - "2,15", - "2,16", - { - "c": "#aaaaaa", - "w": 1.5 - }, - "2,17", - { - "x": 0.25 - }, - "2,18" - ], - [ - { - "c": "#cccccc" - }, - "3,0", - "3,1", - "3,2", - { - "x": 1.25, - "c": "#aaaaaa", - "w": 1.75 - }, - "3,4", - { - "c": "#cccccc" - }, - "3,5", - "3,6", - "3,7", - "3,8", - "3,9", - "3,10", - "3,11", - "3,12", - "3,13", - "3,14", - "3,15", - { - "c": "#777777", - "w": 2.25 - }, - "3,16", - { - "x": 0.25, - "c": "#aaaaaa" - }, - "3,17" - ], - [ - { - "c": "#cccccc" - }, - "4,0", - "4,1", - "4,2", - { - "h": 2 - }, - "4,3", - { - "x": 0.25, - "c": "#aaaaaa", - "w": 2.25 - }, - "4,4", - { - "c": "#cccccc" - }, - "4,6", - "4,7", - "4,8", - "4,9", - "4,10", - "4,11", - "4,12", - "4,13", - "4,14", - "4,15", - { - "c": "#aaaaaa", - "w": 1.75 - }, - "4,16" - ], - [ - { - "y": -0.75, - "x": 18.5, - "c": "#777777" - }, - "4,17" - ], - [ - { - "y": -0.25, - "c": "#cccccc", - "w": 2 - }, - "5,1", - "5,2", - { - "x": 1.25, - "c": "#aaaaaa", - "w": 1.25 - }, - "5,4", - { - "w": 1.25 - }, - "5,5", - { - "w": 1.25 - }, - "5,6", - { - "c": "#cccccc", - "w": 6.25 - }, - "5,10", - { - "c": "#aaaaaa" - }, - "5,13", - "5,14", - "5,15" - ], - [ - { - "y": -0.75, - "x": 17.5, - "c": "#777777" - }, - "5,16", - "5,17", - "5,18" - ] - ] - } -} diff --git a/keyboards/keychron/q13_max/ansi_encoder/ansi_encoder.c b/keyboards/keychron/q13_max/ansi_encoder/ansi_encoder.c deleted file mode 100644 index a6bdab87b1..0000000000 --- a/keyboards/keychron/q13_max/ansi_encoder/ansi_encoder.c +++ /dev/null @@ -1,172 +0,0 @@ -/* Copyright 2024 @ 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/>. - */ - -#include "quantum.h" - -// clang-format off -#ifdef RGB_MATRIX_ENABLE -const snled27351_led_t g_snled27351_leds[RGB_MATRIX_LED_COUNT] = { -/* Refer to snled27351 manual for these locations - * driver - * | R location - * | | G location - * | | | B location - * | | | | */ - {0, A_2, C_2, B_2}, - {0, A_3, C_3, B_3}, - {0, A_4, C_4, B_4}, - {0, A_5, C_5, B_5}, - {0, A_6, C_6, B_6}, - {0, A_7, C_7, B_7}, - {0, A_8, C_8, B_8}, - {0, A_9, C_9, B_9}, - {0, A_10, C_10, B_10}, - {0, A_11, C_11, B_11}, - {0, A_12, C_12, B_12}, - {0, A_13, C_13, B_13}, - {0, A_14, C_14, B_14}, - {0, A_16, C_16, B_16}, - {0, D_16, F_16, E_16}, - {0, D_15, F_15, E_15}, - {0, D_14, F_14, E_14}, - {0, D_13, F_13, E_13}, - - {0, J_1, L_1, K_1}, - {0, J_2, L_2, K_2}, - {0, J_3, L_3, K_3}, - {0, J_4, L_4, K_4}, - {0, J_5, L_5, K_5}, - {0, J_6, L_6, K_6}, - {0, J_7, L_7, K_7}, - {0, J_8, L_8, K_8}, - {0, J_9, L_9, K_9}, - {0, J_10, L_10, K_10}, - {0, J_11, L_11, K_11}, - {0, J_12, L_12, K_12}, - {0, J_13, L_13, K_13}, - {0, J_14, L_14, K_14}, - {0, J_15, L_15, K_15}, - {0, D_12, F_12, E_12}, - {0, D_11, F_11, E_11}, - {0, D_10, F_10, E_10}, - {0, D_9, F_9, E_9}, - - {0, G_1, I_1, H_1}, - {0, G_2, I_2, H_2}, - {0, G_3, I_3, H_3}, - {0, G_4, I_4, H_4}, - {0, G_5, I_5, H_5}, - {0, G_6, I_6, H_6}, - {0, G_7, I_7, H_7}, - {0, G_9, I_9, H_9}, - {0, G_10, I_10, H_10}, - {0, G_11, I_11, H_11}, - {0, G_12, I_12, H_12}, - {0, G_13, I_13, H_13}, - {0, G_14, I_14, H_14}, - {0, G_15, I_15, H_15}, - {0, G_16, I_16, H_16}, - {0, D_8, F_8, E_8}, - {0, D_7, F_7, E_7}, - {0, D_6, F_6, E_6}, - {0, D_5, F_5, E_5}, - - {1, G_16, I_16, H_16}, - {1, G_15, I_15, H_15}, - {1, G_14, I_14, H_14}, - {1, G_13, I_13, H_13}, - {1, G_12, I_12, H_12}, - {1, G_11, I_11, H_11}, - {1, G_10, I_10, H_10}, - {1, G_8, I_8, H_8}, - {1, G_7, I_7, H_7}, - {1, G_6, I_6, H_6}, - {1, G_5, I_5, H_5}, - {1, G_4, I_4, H_4}, - {1, G_3, I_3, H_3}, - {1, G_2, I_2, H_2}, - {1, J_10, L_10, K_10}, - {1, J_11, L_11, K_11}, - {1, J_12, L_12, K_12}, - - {1, D_16, F_16, E_16}, - {1, D_15, F_15, E_15}, - {1, D_13, F_13, E_13}, - {1, D_12, F_12, E_12}, - {1, D_11, F_11, E_11}, - {1, D_10, F_10, E_10}, - {1, D_9, F_9, E_9}, - {1, D_8, F_8, E_8}, - {1, D_7, F_7, E_7}, - {1, D_6, F_6, E_6}, - {1, D_5, F_5, E_5}, - {1, D_4, F_4, E_4}, - {1, D_3, F_3, E_3}, - {1, D_2, F_2, E_2}, - {1, J_5, L_5, K_5}, - {1, J_6, L_6, K_6}, - {1, J_7, L_7, K_7}, - {1, J_8, L_8, K_8}, - {1, J_9, L_9, K_9}, - - {1, A_16, C_16, B_16}, - {1, A_15, C_15, B_15}, - {1, A_14, C_14, B_14}, - {1, A_12, C_12, B_12}, - {1, A_10, C_10, B_10}, - {1, A_9, C_9, B_9}, - {1, A_7, C_7, B_7}, - {1, A_5, C_5, B_5}, - {1, A_4, C_4, B_4}, - {1, A_1, C_1, B_1}, - {1, J_1, L_1, K_1}, - {1, J_2, L_2, K_2}, - {1, J_3, L_3, K_3}, - {1, J_4, L_4, K_4}, -}; - -#define __ NO_LED - -led_config_t g_led_config = { - { - // Key Matrix to LED Index - { __, 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, 40, 41, 42, 43, __, 44, 45, 46, 47, 48, 49, 50, 51, __, 52, 53, 54, 55 }, - { 56, 57, 58, 59, 60, 61, 62, __, 63, 64, 65, 66, 67, 68, 69, __, __, 70, 71, 72, __ }, - { 73, 74, __, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, __, 87, 88, 89, 90, 91 }, - { 92, 93, 94, __, 95, __, 96, 97, __, 98, __, 99, 100, __, __, 101, 102, 103, 104, 105, __ }, - }, - { - // LED Index to Physical Position - {16, 0}, {29, 0}, {39, 0}, {51, 1}, {61, 3}, {74, 6}, {84, 8}, {103, 8}, {113, 6}, {126, 3}, {136, 1}, {148, 0}, {158, 0}, {175, 0}, {193, 0}, {203, 0}, {214, 0}, {224, 0}, - {4,14}, {20,14}, {31,14}, {41,13}, {52,15}, {63,17}, {73,20}, {83,22}, { 99,22}, {109,20}, {119,17}, {130,15}, {141,13}, {151,14}, {167,14}, {193,14}, {203,14}, {214,14}, {224,14}, - {3,24}, {21,24}, {34,24}, {45,24}, {55,27}, {66,29}, {76,31}, { 96,33}, {106,31}, {117,29}, {127,26}, {137,24}, {148,24}, {159,24}, {172,24}, {193,24}, {203,24}, {214,24}, {224,29}, - {1,34}, {20,34}, {34,34}, {45,35}, {56,37}, {66,39}, {76,42}, {101,42}, {111,40}, {121,38}, {132,36}, {143,34}, {153,34}, {170,34}, {193,34}, {203,34}, {214,34}, - {0,45}, {20,45}, {37,45}, {48,46}, {59,48}, {69,51}, {79,53}, { 95,54}, {106,52}, {116,50}, {126,48}, {136,46}, {148,45}, {162,45}, {179,47}, {193,45}, {203,45}, {214,45}, {224,50}, - {0,55}, {15,55}, {28,55}, {48,57}, {66,61}, {82,64}, {107,63}, {126,58}, {136,56}, {169,58}, {179,58}, {190,58}, {203,55}, {214,55} - }, - { - // RGB LED Index to Flag - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 - } -}; -#endif diff --git a/keyboards/keychron/q13_max/ansi_encoder/config.h b/keyboards/keychron/q13_max/ansi_encoder/config.h deleted file mode 100644 index 4ea42e0025..0000000000 --- a/keyboards/keychron/q13_max/ansi_encoder/config.h +++ /dev/null @@ -1,56 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#pragma once - -#ifdef RGB_MATRIX_ENABLE -/* RGB Matrix driver configuration */ -# define DRIVER_COUNT 2 -# define RGB_MATRIX_LED_COUNT 106 - -# define SPI_SCK_PIN A5 -# define SPI_MISO_PIN A6 -# define SPI_MOSI_PIN A7 - -# define DRIVER_CS_PINS \ - { B8, B9 } -# define SNLED23751_SPI_DIVISOR 16 -# define SPI_DRIVER SPID1 - -/* Scan phase of led driver set as MSKPHASE_9CHANNEL(defined as 0x03 in snled27351.h) */ -# define SNLED27351_PHASE_CHANNEL MSKPHASE_12CHANNEL - -/* Set LED driver current */ -# define SNLED27351_CURRENT_TUNE \ - { 0x2E, 0x2E, 0x2E, 0x2E, 0x2E, 0x2E, 0x2E, 0x2E, 0x2E, 0x2E, 0x2E, 0x2E } - -/* Set to infinit, which is use in USB mode by default */ -# define RGB_MATRIX_TIMEOUT RGB_MATRIX_TIMEOUT_INFINITE - -/* Allow shutdown of led driver to save power */ -# define RGB_MATRIX_DRIVER_SHUTDOWN_ENABLE -/* Turn off backlight on low brightness to save power */ -# define RGB_MATRIX_BRIGHTNESS_TURN_OFF_VAL 32 - -/* Indication led */ -# define NUM_LOCK_INDEX 33 -# define CAPS_LOCK_INDEX 57 -# define LOW_BAT_IND_INDEX { 96, 98 } - -# define RGB_MATRIX_KEYPRESSES -# define RGB_MATRIX_FRAMEBUFFER_EFFECTS - -#endif diff --git a/keyboards/keychron/q13_max/ansi_encoder/info.json b/keyboards/keychron/q13_max/ansi_encoder/info.json deleted file mode 100644 index 3cef7d28cb..0000000000 --- a/keyboards/keychron/q13_max/ansi_encoder/info.json +++ /dev/null @@ -1,124 +0,0 @@ -{ - "usb": { - "pid": "0x08D0", - "device_version": "1.0.0" - }, - "layouts": { - "LAYOUT_ansi_107": { - "layout": [ - {"matrix":[0,0], "x":0.5, "y":0}, - {"matrix":[0,1], "x":2, "y":0}, - {"matrix":[0,2], "x":3.25, "y":0}, - {"matrix":[0,3], "x":4.25, "y":0}, - {"matrix":[0,4], "x":5.4, "y":-0.55}, - {"matrix":[0,5], "x":6.4, "y":-0.55}, - {"matrix":[0,6], "x":7.65, "y":-0.55}, - {"matrix":[0,7], "x":8.65, "y":-0.55}, - {"matrix":[0,8], "x":10.05, "y":1.45}, - {"matrix":[0,9], "x":11.05, "y":1.45}, - {"matrix":[0,10], "x":12.3, "y":1.45}, - {"matrix":[0,11], "x":13.3, "y":1.45}, - {"matrix":[0,12], "x":14.6, "y":0}, - {"matrix":[0,13], "x":15.6, "y":0}, - {"matrix":[0,15], "x":17.05, "y":0}, - {"matrix":[0,17], "x":18.75, "y":0}, - {"matrix":[0,18], "x":19.75, "y":0}, - {"matrix":[0,19], "x":20.75, "y":0}, - {"matrix":[0,20], "x":21.75, "y":0}, - - {"matrix":[1,0], "x":0.75, "y":1.25}, - {"matrix":[1,1], "x":2.25, "y":1.25}, - {"matrix":[1,2], "x":3.25, "y":1.25}, - {"matrix":[1,3], "x":4.25, "y":1.25}, - {"matrix":[1,4], "x":5.55, "y":0.7}, - {"matrix":[1,5], "x":6.55, "y":0.7}, - {"matrix":[1,6], "x":7.55, "y":0.7}, - {"matrix":[1,7], "x":8.55, "y":0.7}, - {"matrix":[1,8], "x":9.4, "y":2.7}, - {"matrix":[1,9], "x":10.4, "y":2.7}, - {"matrix":[1,10], "x":11.4, "y":2.7}, - {"matrix":[1,11], "x":12.4, "y":2.7}, - {"matrix":[1,12], "x":13.9, "y":1.25}, - {"matrix":[1,13], "x":14.9, "y":1.25}, - {"matrix":[1,14], "x":15.9, "y":1.25, "w":2}, - {"matrix":[1,17], "x":18.75, "y":1.25}, - {"matrix":[1,18], "x":19.75, "y":1.25}, - {"matrix":[1,19], "x":20.75, "y":1.25}, - {"matrix":[1,20], "x":21.75, "y":1.25}, - - {"matrix":[2,0], "x":0.5, "y":2.25}, - {"matrix":[2,1], "x":2, "y":2.25, "w":1.5}, - {"matrix":[2,2], "x":3.5, "y":2.25}, - {"matrix":[2,3], "x":4.9, "y":1.7}, - {"matrix":[2,4], "x":5.9, "y":1.7}, - {"matrix":[2,5], "x":6.9, "y":1.7}, - {"matrix":[2,6], "x":7.9, "y":1.7}, - {"matrix":[2,8], "x":8.9, "y":3.7}, - {"matrix":[2,9], "x":9.9, "y":3.7}, - {"matrix":[2,10], "x":10.9, "y":3.7}, - {"matrix":[2,11], "x":11.9, "y":3.7}, - {"matrix":[2,12], "x":12.9, "y":3.7}, - {"matrix":[2,13], "x":14.4, "y":2.25}, - {"matrix":[2,14], "x":15.4, "y":2.25}, - {"matrix":[2,15], "x":16.4, "y":2.25, "w":1.75}, - {"matrix":[2,17], "x":18.75, "y":2.25}, - {"matrix":[2,18], "x":19.75, "y":2.25}, - {"matrix":[2,19], "x":20.75, "y":2.25}, - {"matrix":[2,20], "x":21.75, "y":2.25, "h":2}, - - {"matrix":[3,0], "x":0.25, "y":3.25}, - {"matrix":[3,1], "x":1.75, "y":3.25, "w":1.75}, - {"matrix":[3,2], "x":3.5, "y":3.25}, - {"matrix":[3,3], "x":5, "y":2.7}, - {"matrix":[3,4], "x":6, "y":2.7}, - {"matrix":[3,5], "x":7, "y":2.7}, - {"matrix":[3,6], "x":8, "y":2.7}, - {"matrix":[3,8], "x":9.4, "y":4.7}, - {"matrix":[3,9], "x":10.4, "y":4.7}, - {"matrix":[3,10], "x":11.4, "y":4.7}, - {"matrix":[3,11], "x":12.4, "y":4.7}, - {"matrix":[3,12], "x":14, "y":3.25}, - {"matrix":[3,13], "x":15, "y":3.25}, - {"matrix":[3,14], "x":16, "y":3.25, "w":2.25}, - {"matrix":[3,17], "x":18.75, "y":3.25}, - {"matrix":[3,18], "x":19.75, "y":3.25}, - {"matrix":[3,19], "x":20.75, "y":3.25}, - - {"matrix":[4,0], "x":0, "y":4.25}, - {"matrix":[4,1], "x":1.5, "y":4.25, "w":2.25}, - {"matrix":[4,3], "x":3.75, "y":4.25}, - {"matrix":[4,4], "x":5.35, "y":3.7}, - {"matrix":[4,5], "x":6.35, "y":3.7}, - {"matrix":[4,6], "x":7.35, "y":3.7}, - {"matrix":[4,7], "x":8.35, "y":3.7}, - {"matrix":[4,8], "x":8.85, "y":5.7}, - {"matrix":[4,9], "x":9.85, "y":5.7}, - {"matrix":[4,10], "x":10.85, "y":5.7}, - {"matrix":[4,11], "x":11.85, "y":5.7}, - {"matrix":[4,12], "x":12.85, "y":5.7}, - {"matrix":[4,13], "x":14.5, "y":4.25}, - {"matrix":[4,14], "x":15.5, "y":4.25, "w":1.75}, - {"matrix":[4,16], "x":17.5, "y":4.5}, - {"matrix":[4,17], "x":18.75, "y":4.25}, - {"matrix":[4,18], "x":19.75, "y":4.25}, - {"matrix":[4,19], "x":20.75, "y":4.25}, - {"matrix":[4,20], "x":21.75, "y":4.25, "h":2}, - - {"matrix":[5,0], "x":0, "y":5.25}, - {"matrix":[5,1], "x":1.5, "y":5.25, "w":1.25}, - {"matrix":[5,2], "x":2.75, "y":5.25, "w":1.25}, - {"matrix":[5,4], "x":5.35, "y":4.7, "w":1.25}, - {"matrix":[5,6], "x":6.6, "y":4.7, "w":2.25}, - {"matrix":[5,7], "x":8.85, "y":4.7}, - {"matrix":[5,9], "x":8.85, "y":6.7, "w":2.55}, - {"matrix":[5,11], "x":11.4, "y":6.7}, - {"matrix":[5,12], "x":12.4, "y":6.7}, - {"matrix":[5,15], "x":16.5, "y":5.5}, - {"matrix":[5,16], "x":17.5, "y":5.5}, - {"matrix":[5,17], "x":18.5, "y":5.5}, - {"matrix":[5,18], "x":19.75, "y":5.25}, - {"matrix":[5,19], "x":20.75, "y":5.25} - ] - } - } -} diff --git a/keyboards/keychron/q13_max/ansi_encoder/keymaps/default/keymap.c b/keyboards/keychron/q13_max/ansi_encoder/keymaps/default/keymap.c deleted file mode 100644 index 3bfa1cb37c..0000000000 --- a/keyboards/keychron/q13_max/ansi_encoder/keymaps/default/keymap.c +++ /dev/null @@ -1,77 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#include QMK_KEYBOARD_H -#include "keychron_common.h" - -enum layers { - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN, -}; - -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_ansi_107( - KC_MUTE, KC_ESC, KC_BRID, KC_BRIU, KC_MCTRL, KC_LNPAD, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_DEL, KC_F13, KC_F14, KC_F15, KC_F16, - MC_1, KC_GRV, 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_NUM, KC_PSLS, KC_PAST, KC_PMNS, - MC_2, 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_P7, KC_P8, KC_P9, KC_PPLS, - MC_3, 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_P4, KC_P5, KC_P6, - MC_4, KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, KC_P1, KC_P2, KC_P3, KC_PENT, - MC_5, KC_LCTL, KC_LOPTN, KC_LCMMD, KC_SPC, MO(MAC_FN), KC_SPC, KC_RCMMD, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT, KC_P0, KC_PDOT ), - - [MAC_FN] = LAYOUT_ansi_107( - RGB_TOG, _______, 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_INS, _______, _______, _______, _______, - _______, _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, BAT_LVL, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ), - - [WIN_BASE] = LAYOUT_ansi_107( - KC_MUTE, KC_ESC, 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_DEL, _______, _______, _______, _______, - MC_1, KC_GRV, 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_NUM, KC_PSLS, KC_PAST, KC_PMNS, - MC_2, 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_P7, KC_P8, KC_P9, KC_PPLS, - MC_3, 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_P4, KC_P5, KC_P6, - MC_4, KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, KC_P1, KC_P2, KC_P3, KC_PENT, - MC_5, KC_LCTL, KC_LWIN, KC_LALT, KC_SPC, MO(WIN_FN), KC_SPC, KC_RALT, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT, KC_P0, KC_PDOT ), - - [WIN_FN] = LAYOUT_ansi_107( - RGB_TOG, _______, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_INS, _______, _______, _______, _______, - _______, _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, BAT_LVL, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ), -}; - -#if defined(ENCODER_MAP_ENABLE) -const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][2] = { - [MAC_BASE] = {ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [MAC_FN] = {ENCODER_CCW_CW(RGB_VAD, RGB_VAI)}, - [WIN_BASE] = {ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [WIN_FN] = {ENCODER_CCW_CW(RGB_VAD, RGB_VAI)} -}; -#endif // ENCODER_MAP_ENABLE - -// clang-format on -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - if (!process_record_keychron_common(keycode, record)) { - return false; - } - return true; -} diff --git a/keyboards/keychron/q13_max/ansi_encoder/keymaps/default/rules.mk b/keyboards/keychron/q13_max/ansi_encoder/keymaps/default/rules.mk deleted file mode 100644 index e69de29bb2..0000000000 diff --git a/keyboards/keychron/q13_max/ansi_encoder/keymaps/via/keymap.c b/keyboards/keychron/q13_max/ansi_encoder/keymaps/via/keymap.c deleted file mode 100644 index 3bfa1cb37c..0000000000 --- a/keyboards/keychron/q13_max/ansi_encoder/keymaps/via/keymap.c +++ /dev/null @@ -1,77 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#include QMK_KEYBOARD_H -#include "keychron_common.h" - -enum layers { - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN, -}; - -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_ansi_107( - KC_MUTE, KC_ESC, KC_BRID, KC_BRIU, KC_MCTRL, KC_LNPAD, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_DEL, KC_F13, KC_F14, KC_F15, KC_F16, - MC_1, KC_GRV, 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_NUM, KC_PSLS, KC_PAST, KC_PMNS, - MC_2, 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_P7, KC_P8, KC_P9, KC_PPLS, - MC_3, 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_P4, KC_P5, KC_P6, - MC_4, KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, KC_P1, KC_P2, KC_P3, KC_PENT, - MC_5, KC_LCTL, KC_LOPTN, KC_LCMMD, KC_SPC, MO(MAC_FN), KC_SPC, KC_RCMMD, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT, KC_P0, KC_PDOT ), - - [MAC_FN] = LAYOUT_ansi_107( - RGB_TOG, _______, 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_INS, _______, _______, _______, _______, - _______, _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, BAT_LVL, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ), - - [WIN_BASE] = LAYOUT_ansi_107( - KC_MUTE, KC_ESC, 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_DEL, _______, _______, _______, _______, - MC_1, KC_GRV, 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_NUM, KC_PSLS, KC_PAST, KC_PMNS, - MC_2, 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_P7, KC_P8, KC_P9, KC_PPLS, - MC_3, 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_P4, KC_P5, KC_P6, - MC_4, KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, KC_P1, KC_P2, KC_P3, KC_PENT, - MC_5, KC_LCTL, KC_LWIN, KC_LALT, KC_SPC, MO(WIN_FN), KC_SPC, KC_RALT, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT, KC_P0, KC_PDOT ), - - [WIN_FN] = LAYOUT_ansi_107( - RGB_TOG, _______, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_INS, _______, _______, _______, _______, - _______, _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, BAT_LVL, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ), -}; - -#if defined(ENCODER_MAP_ENABLE) -const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][2] = { - [MAC_BASE] = {ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [MAC_FN] = {ENCODER_CCW_CW(RGB_VAD, RGB_VAI)}, - [WIN_BASE] = {ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [WIN_FN] = {ENCODER_CCW_CW(RGB_VAD, RGB_VAI)} -}; -#endif // ENCODER_MAP_ENABLE - -// clang-format on -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - if (!process_record_keychron_common(keycode, record)) { - return false; - } - return true; -} diff --git a/keyboards/keychron/q13_max/ansi_encoder/keymaps/via/rules.mk b/keyboards/keychron/q13_max/ansi_encoder/keymaps/via/rules.mk deleted file mode 100644 index 1e5b99807c..0000000000 --- a/keyboards/keychron/q13_max/ansi_encoder/keymaps/via/rules.mk +++ /dev/null @@ -1 +0,0 @@ -VIA_ENABLE = yes diff --git a/keyboards/keychron/q13_max/ansi_encoder/rules.mk b/keyboards/keychron/q13_max/ansi_encoder/rules.mk deleted file mode 100644 index 7ff128fa69..0000000000 --- a/keyboards/keychron/q13_max/ansi_encoder/rules.mk +++ /dev/null @@ -1 +0,0 @@ -# This file intentionally left blank \ No newline at end of file diff --git a/keyboards/keychron/q13_max/board.h b/keyboards/keychron/q13_max/board.h deleted file mode 100644 index 54fba748bf..0000000000 --- a/keyboards/keychron/q13_max/board.h +++ /dev/null @@ -1,226 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#pragma once - -#include_next - -// clang-format off - -/* Set GPIOA_SWDIO to INPUT and NOT FLOATING */ -#undef VAL_GPIOA_MODER -#define VAL_GPIOA_MODER (PIN_MODE_INPUT(GPIOA_BUTTON) | \ - PIN_MODE_INPUT(GPIOA_PIN1) | \ - PIN_MODE_INPUT(GPIOA_PIN2) | \ - PIN_MODE_INPUT(GPIOA_PIN3) | \ - PIN_MODE_ALTERNATE(GPIOA_CS43L22_LRCK) |\ - PIN_MODE_ALTERNATE(GPIOA_L3GD20_SCL) | \ - PIN_MODE_ALTERNATE(GPIOA_L3GD20_SD0) | \ - PIN_MODE_ALTERNATE(GPIOA_L3GD20_SDI) | \ - PIN_MODE_INPUT(GPIOA_PIN8) | \ - PIN_MODE_INPUT(GPIOA_VBUS_FS) | \ - PIN_MODE_ALTERNATE(GPIOA_OTG_FS_ID) | \ - PIN_MODE_ALTERNATE(GPIOA_OTG_FS_DM) | \ - PIN_MODE_ALTERNATE(GPIOA_OTG_FS_DP) | \ - PIN_MODE_INPUT(GPIOA_SWDIO) | \ - PIN_MODE_INPUT(GPIOA_SWCLK) | \ - PIN_MODE_INPUT(GPIOA_PIN15)) - -#undef VAL_GPIOA_PUPDR -#define VAL_GPIOA_PUPDR (PIN_PUPDR_FLOATING(GPIOA_BUTTON) | \ - PIN_PUPDR_PULLUP(GPIOA_PIN1) | \ - PIN_PUPDR_PULLUP(GPIOA_PIN2) | \ - PIN_PUPDR_PULLUP(GPIOA_PIN3) | \ - PIN_PUPDR_FLOATING(GPIOA_CS43L22_LRCK) |\ - PIN_PUPDR_FLOATING(GPIOA_L3GD20_SCL) | \ - PIN_PUPDR_PULLUP(GPIOA_L3GD20_SD0) | \ - PIN_PUPDR_PULLUP(GPIOA_L3GD20_SDI) | \ - PIN_PUPDR_PULLUP(GPIOA_PIN8) | \ - PIN_PUPDR_FLOATING(GPIOA_VBUS_FS) | \ - PIN_PUPDR_FLOATING(GPIOA_OTG_FS_ID) | \ - PIN_PUPDR_FLOATING(GPIOA_OTG_FS_DM) | \ - PIN_PUPDR_FLOATING(GPIOA_OTG_FS_DP) | \ - PIN_PUPDR_PULLUP(GPIOA_SWDIO) | \ - PIN_PUPDR_PULLUP(GPIOA_SWCLK) | \ - PIN_PUPDR_PULLUP(GPIOA_PIN15)) - -#undef VAL_GPIOB_MODER -#define VAL_GPIOB_MODER (PIN_MODE_INPUT(GPIOB_PIN0) | \ - PIN_MODE_INPUT(GPIOB_PIN1) | \ - PIN_MODE_INPUT(GPIOB_PIN2) | \ - PIN_MODE_INPUT(GPIOB_SWO) | \ - PIN_MODE_INPUT(GPIOB_PIN4) | \ - PIN_MODE_INPUT(GPIOB_PIN5) | \ - PIN_MODE_INPUT(GPIOB_LSM303DLHC_SCL) | \ - PIN_MODE_INPUT(GPIOB_PIN7) | \ - PIN_MODE_INPUT(GPIOB_PIN8) | \ - PIN_MODE_INPUT(GPIOB_LSM303DLHC_SDA) | \ - PIN_MODE_INPUT(GPIOB_MP45DT02_CLK_IN) |\ - PIN_MODE_INPUT(GPIOB_PIN11) | \ - PIN_MODE_INPUT(GPIOB_PIN12) | \ - PIN_MODE_INPUT(GPIOB_PIN13) | \ - PIN_MODE_INPUT(GPIOB_PIN14) | \ - PIN_MODE_INPUT(GPIOB_PIN15)) - -#undef VAL_GPIOB_PUPDR -#define VAL_GPIOB_PUPDR (PIN_PUPDR_PULLDOWN(GPIOB_PIN0) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN1) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN2) | \ - PIN_PUPDR_PULLDOWN(GPIOB_SWO) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN4) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN5) | \ - PIN_PUPDR_PULLDOWN(GPIOB_LSM303DLHC_SCL) |\ - PIN_PUPDR_PULLDOWN(GPIOB_PIN7) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN8) | \ - PIN_PUPDR_PULLDOWN(GPIOB_LSM303DLHC_SDA) |\ - PIN_PUPDR_PULLDOWN(GPIOB_MP45DT02_CLK_IN) |\ - PIN_PUPDR_PULLDOWN(GPIOB_PIN11) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN12) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN13) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN14) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN15)) - -#undef VAL_GPIOB_AFRL -#define VAL_GPIOB_AFRL (PIN_AFIO_AF(GPIOB_PIN0, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN1, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN2, 0U) | \ - PIN_AFIO_AF(GPIOB_SWO, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN4, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN5, 0U) | \ - PIN_AFIO_AF(GPIOB_LSM303DLHC_SCL, 0) | \ - PIN_AFIO_AF(GPIOB_PIN7, 0U)) - -#undef VAL_GPIOB_AFRH -#define VAL_GPIOB_AFRH (PIN_AFIO_AF(GPIOB_PIN8, 0U) | \ - PIN_AFIO_AF(GPIOB_LSM303DLHC_SDA, 0) | \ - PIN_AFIO_AF(GPIOB_MP45DT02_CLK_IN, 0U) |\ - PIN_AFIO_AF(GPIOB_PIN11, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN12, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN13, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN14, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN15, 0U)) - -/* C5 Need to be pulldown */ -#undef VAL_GPIOC_MODER -#define VAL_GPIOC_MODER (PIN_MODE_INPUT(GPIOC_OTG_FS_POWER_ON) |\ - PIN_MODE_INPUT(GPIOC_PIN1) | \ - PIN_MODE_INPUT(GPIOC_PIN2) | \ - PIN_MODE_INPUT(GPIOC_CS43L22_AIN4x) | \ - PIN_MODE_INPUT(GPIOC_PIN4) | \ - PIN_MODE_INPUT(GPIOC_PIN5) | \ - PIN_MODE_INPUT(GPIOC_PIN6) | \ - PIN_MODE_INPUT(GPIOC_CS43L22_MCLK) | \ - PIN_MODE_INPUT(GPIOC_PIN8) | \ - PIN_MODE_INPUT(GPIOC_PIN9) | \ - PIN_MODE_INPUT(GPIOC_CS43L22_SCLK) | \ - PIN_MODE_INPUT(GPIOC_PIN11) | \ - PIN_MODE_INPUT(GPIOC_CS43L22_SDIN) | \ - PIN_MODE_INPUT(GPIOC_PIN13) | \ - PIN_MODE_INPUT(GPIOC_OSC32_IN) | \ - PIN_MODE_INPUT(GPIOC_OSC32_OUT)) - -#undef VAL_GPIOC_PUPDR -#define VAL_GPIOC_PUPDR (PIN_PUPDR_PULLUP(GPIOC_OTG_FS_POWER_ON) |\ - PIN_PUPDR_PULLUP(GPIOC_PIN1) | \ - PIN_PUPDR_PULLUP(GPIOC_PIN2) | \ - PIN_PUPDR_PULLUP(GPIOC_CS43L22_AIN4x) |\ - PIN_PUPDR_PULLUP(GPIOC_PIN4) | \ - PIN_PUPDR_PULLDOWN(GPIOC_PIN5) | \ - PIN_PUPDR_PULLUP(GPIOC_PIN6) | \ - PIN_PUPDR_PULLUP(GPIOC_CS43L22_MCLK) | \ - PIN_PUPDR_PULLUP(GPIOC_PIN8) | \ - PIN_PUPDR_PULLUP(GPIOC_PIN9) | \ - PIN_PUPDR_PULLUP(GPIOC_CS43L22_SCLK) | \ - PIN_PUPDR_PULLUP(GPIOC_PIN11) | \ - PIN_PUPDR_PULLUP(GPIOC_CS43L22_SDIN) | \ - PIN_PUPDR_PULLUP(GPIOC_PIN13) | \ - PIN_PUPDR_PULLUP(GPIOC_OSC32_IN) | \ - PIN_PUPDR_PULLUP(GPIOC_OSC32_OUT)) - -/* Set all GPIOD pins to INPUT & PULLUP to avoid FLOATING */ -#undef VAL_GPIOD_MODER -#define VAL_GPIOD_MODER (PIN_MODE_INPUT(GPIOD_PIN0) | \ - PIN_MODE_INPUT(GPIOD_PIN1) | \ - PIN_MODE_INPUT(GPIOD_PIN2) | \ - PIN_MODE_INPUT(GPIOD_PIN3) | \ - PIN_MODE_INPUT(GPIOD_CS43L22_RESET) | \ - PIN_MODE_INPUT(GPIOD_OverCurrent) | \ - PIN_MODE_INPUT(GPIOD_PIN6) | \ - PIN_MODE_INPUT(GPIOD_PIN7) | \ - PIN_MODE_INPUT(GPIOD_PIN8) | \ - PIN_MODE_INPUT(GPIOD_PIN9) | \ - PIN_MODE_INPUT(GPIOD_PIN10) | \ - PIN_MODE_INPUT(GPIOD_PIN11) | \ - PIN_MODE_INPUT(GPIOD_LED4) | \ - PIN_MODE_INPUT(GPIOD_LED3) | \ - PIN_MODE_INPUT(GPIOD_LED5) | \ - PIN_MODE_INPUT(GPIOD_LED6)) - -#undef VAL_GPIOD_PUPDR -#define VAL_GPIOD_PUPDR (PIN_PUPDR_PULLUP(GPIOD_PIN0) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN1) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN2) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN3) | \ - PIN_PUPDR_PULLUP(GPIOD_CS43L22_RESET) |\ - PIN_PUPDR_PULLUP(GPIOD_OverCurrent) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN6) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN7) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN8) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN9) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN10) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN11) | \ - PIN_PUPDR_PULLUP(GPIOD_LED4) | \ - PIN_PUPDR_PULLUP(GPIOD_LED3) | \ - PIN_PUPDR_PULLUP(GPIOD_LED5) | \ - PIN_PUPDR_PULLUP(GPIOD_LED6)) - -/* Set all GPIOE pins to INPUT & PULLUP to avoid FLOATING */ -#undef VAL_GPIOE_MODER -#define VAL_GPIOE_MODER (PIN_MODE_INPUT(GPIOE_L3GD20_INT1) | \ - PIN_MODE_INPUT(GPIOE_L3GD20_INT2) | \ - PIN_MODE_INPUT(GPIOE_LSM303DLHC_DRDY) |\ - PIN_MODE_INPUT(GPIOE_L3GD20_CS) | \ - PIN_MODE_INPUT(GPIOE_LSM303DLHC_INT1) |\ - PIN_MODE_INPUT(GPIOE_LSM303DLHC_INT2) |\ - PIN_MODE_INPUT(GPIOE_PIN6) | \ - PIN_MODE_INPUT(GPIOE_PIN7) | \ - PIN_MODE_INPUT(GPIOE_PIN8) | \ - PIN_MODE_INPUT(GPIOE_PIN9) | \ - PIN_MODE_INPUT(GPIOE_PIN10) | \ - PIN_MODE_INPUT(GPIOE_PIN11) | \ - PIN_MODE_INPUT(GPIOE_PIN12) | \ - PIN_MODE_INPUT(GPIOE_PIN13) | \ - PIN_MODE_INPUT(GPIOE_PIN14) | \ - PIN_MODE_INPUT(GPIOE_PIN15)) - -#undef VAL_GPIOE_PUPDR -#define VAL_GPIOE_PUPDR (PIN_PUPDR_PULLUP(GPIOE_L3GD20_INT1) | \ - PIN_PUPDR_PULLUP(GPIOE_L3GD20_INT2) | \ - PIN_PUPDR_PULLUP(GPIOE_LSM303DLHC_DRDY) |\ - PIN_PUPDR_PULLUP(GPIOE_L3GD20_CS) | \ - PIN_PUPDR_PULLUP(GPIOE_LSM303DLHC_INT1) |\ - PIN_PUPDR_PULLUP(GPIOE_LSM303DLHC_INT2) |\ - PIN_PUPDR_PULLUP(GPIOE_PIN6) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN7) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN8) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN9) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN10) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN11) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN12) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN13) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN14) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN15)) - diff --git a/keyboards/keychron/q13_max/config.h b/keyboards/keychron/q13_max/config.h deleted file mode 100644 index 9f0e548c53..0000000000 --- a/keyboards/keychron/q13_max/config.h +++ /dev/null @@ -1,84 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#pragma once - -/* Encoder Configuration */ -#define ENCODER_DEFAULT_POS 0x3 -#define ENCODER_MAP_KEY_DELAY 2 - -#ifdef LK_WIRELESS_ENABLE -/* Hardware configuration */ - -# define P2P4_MODE_SELECT_PIN A10 -# define BT_MODE_SELECT_PIN A9 - -# define LKBT51_RESET_PIN C4 -# define LKBT51_INT_INPUT_PIN B1 -# define BLUETOOTH_INT_OUTPUT_PIN A4 - -# define USB_POWER_SENSE_PIN B0 -# define USB_POWER_CONNECTED_LEVEL 0 - -# define BAT_CHARGING_PIN B13 -# define BAT_CHARGING_LEVEL 0 - -# define BT_HOST_DEVICES_COUNT 3 - -# if defined(RGB_MATRIX_ENABLE) - -# define LED_DRIVER_SHUTDOWN_PIN B7 - -# define BT_HOST_LED_MATRIX_LIST \ - { 20, 21, 22 } - -# define P2P4G_HOST_LED_MATRIX_LIST \ - { 23 } - -# define BAT_LEVEL_LED_LIST \ - { 20, 21, 22, 23, 24, 25, 26, 27, 28, 29 } - -/* 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 - -/* Reinit LED driver on tranport changed */ -# define REINIT_LED_DRIVER 1 - -# endif - -/* Keep USB connection in blueooth mode */ -# define KEEP_USB_CONNECTION_IN_WIRELESS_MODE - -/* Enable bluetooth NKRO */ -# define WIRELESS_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 - -/* Factory test keys */ -#define FN_KEY_1 MO(1) -#define FN_KEY_2 MO(3) -#define BL_TRIG_KEY KC_DEL -#define FN_BL_TRIG_KEY KC_INS - -#define MATRIX_IO_DELAY 10 diff --git a/keyboards/keychron/q13_max/firmware/keychron_q13_max_ansi_encoder_via.bin b/keyboards/keychron/q13_max/firmware/keychron_q13_max_ansi_encoder_via.bin deleted file mode 100644 index 2b4ac03660..0000000000 Binary files a/keyboards/keychron/q13_max/firmware/keychron_q13_max_ansi_encoder_via.bin and /dev/null differ diff --git a/keyboards/keychron/q13_max/halconf.h b/keyboards/keychron/q13_max/halconf.h deleted file mode 100644 index 173de33d27..0000000000 --- a/keyboards/keychron/q13_max/halconf.h +++ /dev/null @@ -1,30 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#pragma once - -#define _CHIBIOS_HAL_CONF_VER_8_0_ - -#ifdef LK_WIRELESS_ENABLE -# define HAL_USE_RTC TRUE -# define HAL_USE_SPI TRUE -#endif - -#if defined(LK_WIRELESS_ENABLE) || defined(ENCODER_ENABLE) -# define PAL_USE_CALLBACKS TRUE -#endif - -#include_next diff --git a/keyboards/keychron/q13_max/info.json b/keyboards/keychron/q13_max/info.json deleted file mode 100644 index 3799661164..0000000000 --- a/keyboards/keychron/q13_max/info.json +++ /dev/null @@ -1,80 +0,0 @@ -{ - "keyboard_name": "Keychron Q13 Max", - "manufacturer": "Keychron", - "url": "https://github.com/Keychron", - "maintainer": "lokher", - "processor": "STM32F401", - "bootloader": "stm32-dfu", - "usb": { - "vid": "0x3434" - }, - "features": { - "bootmagic": true, - "extrakey" : true, - "mousekey" : true, - "dip_switch" : true, - "encoder": true, - "encoder_map": true, - "nkro" : true, - "rgb_matrix": true, - "raw" : true, - "send_string": true - }, - "matrix_pins": { - "cols": ["C6", "C7", "C8", "A14", "A15", "C10", "C11", "C13", "C14", "C15", "C0", "C1", "C2", "C3", "A0", "A1", "A2", "A3", "C5", "B10", "C9"], - "rows": ["C12", "D2", "B3", "B4", "B5", "B6"] - }, - "diode_direction": "ROW2COL", - "bootmagic": { - "matrix": [0, 1] - }, - "encoder": { - "rotary": [ - { - "pin_a": "B15", - "pin_b": "B14" - } - ] - }, - "dip_switch" :{ - "pins": ["A8"] - }, - "rgb_matrix": { - "driver": "snled27351_spi", - "sleep": true, - "animations": { - "band_spiral_val": true, - "breathing": true, - "cycle_all": true, - "cycle_left_right": true, - "cycle_out_in": true, - "cycle_out_in_dual": true, - "cycle_pinwheel": true, - "cycle_spiral": true, - "cycle_up_down": true, - "digital_rain": true, - "dual_beacon": true, - "jellybean_raindrops": true, - "pixel_rain": true, - "rainbow_beacon": true, - "rainbow_moving_chevron": true, - "solid_reactive_multinexus": true, - "solid_reactive_multiwide": true, - "solid_reactive_simple": true, - "solid_splash": true, - "splash": true, - "typing_heatmap": true - } - }, - "eeprom": { - "wear_leveling": { - "driver": "embedded_flash", - "logical_size": 4096, - "backing_size": 8192 - } - }, - "build": { - "debounce_type": "sym_eager_pk" - }, - "debounce": 20 -} diff --git a/keyboards/keychron/q13_max/mcuconf.h b/keyboards/keychron/q13_max/mcuconf.h deleted file mode 100644 index 89294ee64b..0000000000 --- a/keyboards/keychron/q13_max/mcuconf.h +++ /dev/null @@ -1,37 +0,0 @@ -/* Copyright 2024 @ 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 - -#include_next - -#undef STM32_HSECLK -#define STM32_HSECLK 16000000 - -#undef STM32_PLLM_VALUE -#define STM32_PLLM_VALUE 8 - -#undef STM32_PLLN_VALUE -#define STM32_PLLN_VALUE 96 - -#undef STM32_PLLP_VALUE -#define STM32_PLLP_VALUE 4 - -#undef STM32_PLLQ_VALUE -#define STM32_PLLQ_VALUE 4 - -#undef STM32_SPI_USE_SPI1 -#define STM32_SPI_USE_SPI1 TRUE diff --git a/keyboards/keychron/q13_max/q13_max.c b/keyboards/keychron/q13_max/q13_max.c deleted file mode 100644 index c36eb60e7d..0000000000 --- a/keyboards/keychron/q13_max/q13_max.c +++ /dev/null @@ -1,61 +0,0 @@ -/* Copyright 2024 @ 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/>. - */ - -#include "quantum.h" -#include "keychron_task.h" -#ifdef FACTORY_TEST_ENABLE -# include "factory_test.h" -# include "keychron_common.h" -#endif -#ifdef LK_WIRELESS_ENABLE -# include "lkbt51.h" -# include "wireless.h" -# include "keychron_wireless_common.h" -# include "battery.h" -#endif - -#ifdef DIP_SWITCH_ENABLE -bool dip_switch_update_kb(uint8_t index, bool active) { - if (index == 0) { - default_layer_set(1UL << (active ? 2 : 0)); - } - dip_switch_update_user(index, active); - - return true; -} -#endif - -void keyboard_post_init_kb(void) { -#ifdef LK_WIRELESS_ENABLE - palSetLineMode(P2P4_MODE_SELECT_PIN, PAL_MODE_INPUT); - palSetLineMode(BT_MODE_SELECT_PIN, PAL_MODE_INPUT); - - lkbt51_init(false); - wireless_init(); -#endif - -#ifdef ENCODER_ENABLE - encoder_cb_init(); -#endif - - keyboard_post_init_user(); -} - -#ifdef LK_WIRELESS_ENABLE -bool lpm_is_kb_idle(void) { - return !factory_reset_indicating(); -} -#endif diff --git a/keyboards/keychron/q13_max/readme.md b/keyboards/keychron/q13_max/readme.md deleted file mode 100644 index 8e9aecf9d9..0000000000 --- a/keyboards/keychron/q13_max/readme.md +++ /dev/null @@ -1,21 +0,0 @@ -# Keychron Q13 Max - -![Keychron Q13 Max](https://cdn.shopify.com/s/files/1/0059/0630/1017/files/Keychron-Q13-Max-4.jpg?v=1724135037) - -A customizable 96% ergonomic keyboard. - -* Keyboard Maintainer: [Keychron](https://github.com/keychron) -* Hardware Supported: Keychron Q13 Max -* Hardware Availability: [Keychron](https://www.keychron.com/products/keychron-q13-max-alice-layout-qmk-wireless-custom-mechanical-keyboard?srsltid=AfmBOoomwvC2Hj94-pEDTmB30fRi7coZ0ACjkLCG_cB6l-7q-nqHBxZ7) - -Make example for this keyboard (after setting up your build environment): - - make keychron/q13_max/ansi_encoder:default - -Flashing example for this keyboard: - - make keychron/q13_max/ansi_encoder:default:flash - -**Reset Key**: Toggle mode switch to "Cable", hold down the *Esc* key or reset button underneath space bar while connecting the USB cable, - -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). diff --git a/keyboards/keychron/q13_max/rules.mk b/keyboards/keychron/q13_max/rules.mk deleted file mode 100644 index 4eaf6820bc..0000000000 --- a/keyboards/keychron/q13_max/rules.mk +++ /dev/null @@ -1,4 +0,0 @@ -include keyboards/keychron/common/wireless/wireless.mk -include keyboards/keychron/common/keychron_common.mk - -VPATH += $(TOP_DIR)/keyboards/keychron diff --git a/keyboards/keychron/q13_max/via_json/q13_max_ansi_encoder.json b/keyboards/keychron/q13_max/via_json/q13_max_ansi_encoder.json deleted file mode 100644 index aea9b02e42..0000000000 --- a/keyboards/keychron/q13_max/via_json/q13_max_ansi_encoder.json +++ /dev/null @@ -1,431 +0,0 @@ -{ - "name": "Keychron Q13 Max ANSI Knob", - "vendorId": "0x3434", - "productId": "0x08D0", - "keycodes": ["qmk_lighting"], - "menus": [ - { - "label": "Lighting", - "content": [ - { - "label": "Backlight", - "content": [ - { - "label": "Brightness", - "type": "range", - "options": [0, 255], - "content": ["id_qmk_rgb_matrix_brightness", 3, 1] - }, - { - "label": "Effect", - "type": "dropdown", - "content": ["id_qmk_rgb_matrix_effect", 3, 2], - "options": [ - ["None", 0], - ["Solid Color", 1], - ["Breathing", 2], - ["Band Spiral Val", 3], - ["Cycle All", 4], - ["Cycle Left Right", 5], - ["Cycle Up Down", 6], - ["Rainbow Moving Chevron", 7], - ["Cycle Out In", 8], - ["Cycle Out In Dual", 9], - ["Cycle Pinwheel", 10], - ["Cycle Spiral", 11], - ["Dual Beacon", 12], - ["Rainbow Beacon", 13], - ["Jellybean Raindrops", 14], - ["Pixel Rain", 15], - ["Typing Heatmap", 16], - ["Digital Rain", 17], - ["Reactive Simple", 18], - ["Reactive Multiwide", 19], - ["Reactive Multinexus", 20], - ["Splash", 21], - ["Solid Splash", 22] - ] - }, - { - "showIf": "{id_qmk_rgb_matrix_effect} > 1", - "label": "Effect Speed", - "type": "range", - "options": [0, 255], - "content": ["id_qmk_rgb_matrix_effect_speed", 3, 3] - }, - { - "showIf": "{id_qmk_rgb_matrix_effect} != 0 && ( {id_qmk_rgb_matrix_effect} < 4 || {id_qmk_rgb_matrix_effect} == 18 || ({id_qmk_rgb_matrix_effect} > 17 && {id_qmk_rgb_matrix_effect} != 21) ) ", - "label": "Color", - "type": "color", - "content": ["id_qmk_rgb_matrix_color", 3, 4] - } - ] - } - ] - } - ], - "customKeycodes": [ - {"name": "Left Option", "title": "Left Option", "shortName": "LOpt"}, - {"name": "Right Option", "title": "Right Option", "shortName": "ROpt"}, - {"name": "Left Cmd", "title": "Left Command", "shortName": "LCmd"}, - {"name": "Right Cmd", "title": "Right Command", "shortName": "RCmd"}, - {"name": "Misson Control", "title": "Misson Control in Mac", "shortName": "MCtl"}, - {"name": "Lanuch Pad", "title": "Lanuch Pad in Windows", "shortName": "LPad"}, - {"name": "Task View", "title": "Task View in Windows", "shortName": "Task"}, - {"name": "File Explorer", "title": "File Explorer in Windows", "shortName": "File"}, - {"name": "Screen shot", "title": "Screenshot in macOS", "shortName": "SShot"}, - {"name": "Cortana", "title": "Cortana in Windows", "shortName": "Cortana"}, - {"name": "Siri", "title": "Siri in macOS", "shortName": "Siri"}, - {"name": "Bluetooth Host 1", "title": "Bluetooth Host 1", "shortName": "BTH1"}, - {"name": "Bluetooth Host 2", "title": "Bluetooth Host 2", "shortName": "BTH2"}, - {"name": "Bluetooth Host 3", "title": "Bluetooth Host 3", "shortName": "BTH3"}, - {"name": "2.4G", "title": "2.4G", "shortName": "2.4G"}, - {"name": "Battery Level", "title": "Show battery level", "shortName": "Batt"} - ], - "matrix": {"rows": 6, "cols" : 21}, - "layouts": { - "keymap": [ - [ - { - "x": 0.5 - }, - "0,0\n\n\n\n\n\n\n\n\ne0", - { - "x": 0.5, - "c": "#777777" - }, - "0,1\nESC", - { - "x": 0.25, - "c": "#cccccc" - }, - "0,2", - "0,3", - { - "x": 9.35 - }, - "0,12", - "0,13", - { - "x": 0.45, - "c": "#aaaaaa" - }, - "0,15", - { - "x": 0.7, - "c": "#cccccc" - }, - "0,17", - "0,18", - "0,19", - "0,20" - ], - [ - { - "y": 0.25, - "x": 0.75, - "c": "#aaaaaa" - }, - "1,0", - { - "x": 0.5 - }, - "1,1", - { - "c": "#cccccc" - }, - "1,2", - "1,3", - { - "x": 8.65 - }, - "1,12", - "1,13", - { - "c": "#aaaaaa", - "w": 2 - }, - "1,14", - { - "x": 0.85, - "c": "#cccccc" - }, - "1,17", - "1,18", - "1,19", - "1,20" - ], - [ - { - "x": 0.5, - "c": "#aaaaaa" - }, - "2,0", - { - "x": 0.5, - "w": 1.5 - }, - "2,1", - { - "c": "#cccccc" - }, - "2,2", - { - "x": 9.9 - }, - "2,13", - "2,14", - { - "c": "#aaaaaa", - "w": 1.75 - }, - "2,15", - { - "x": 0.6, - "c": "#cccccc" - }, - "2,17", - "2,18", - "2,19", - { - "h": 2 - }, - "2,20" - ], - [ - { - "x": 0.25, - "c": "#aaaaaa" - }, - "3,0", - { - "x": 0.5, - "w": 1.75 - }, - "3,1", - { - "c": "#cccccc" - }, - "3,2", - { - "x": 9.5 - }, - "3,12", - "3,13", - { - "c": "#777777", - "w": 2.25 - }, - "3,14", - { - "x": 0.5, - "c": "#cccccc" - }, - "3,17", - "3,18", - "3,19" - ], - [ - { - "c": "#aaaaaa" - }, - "4,0", - { - "x": 0.5, - "w": 2.25 - }, - "4,1", - { - "c": "#cccccc" - }, - "4,3", - { - "x": 9.75 - }, - "4,13", - { - "c": "#aaaaaa", - "w": 1.75 - }, - "4,14", - { - "x": 0.25, - "y": 0.25, - "c": "#cccccc" - }, - "4,16", - { - "x": 0.25, - "y": -0.25 - }, - "4,17", - "4,18", - "4,19", - { - "h": 2 - }, - "4,20" - ], - [ - { - "c": "#aaaaaa" - }, - "5,0", - { - "x": 0.5, - "w": 1.25 - }, - "5,1", - { - "w": 1.25 - }, - "5,2", - { - "x": 12.5, - "y": 0.25, - "c": "#cccccc" - }, - "5,15", - "5,16", - "5,17", - { - "x": 0.25, - "y": -0.25 - }, - "5,18", - "5,19" - ], - [ - { - "r": 6, - "y": -6.8, - "x": 5.4, - "c": "#cccccc" - }, - "0,4", - "0,5", - { - "x": 0.25, - "c": "#aaaaaa" - }, - "0,6", - "0,7" - ], - [ - { - "y": 0.25, - "x": 5.55, - "c": "#cccccc" - }, - "1,4", - "1,5", - "1,6", - "1,7" - ], - [ - { - "x": 4.9 - }, - "2,3", - "2,4", - "2,5", - "2,6" - ], - [ - { - "x": 5 - }, - "3,3", - "3,4", - "3,5", - "3,6" - ], - [ - { - "x": 5.35 - }, - "4,4", - "4,5", - "4,6", - "4,7" - ], - [ - { - "x": 5.35, - "c": "#aaaaaa", - "w": 1.25 - }, - "5,4", - { - "w": 2.25 - }, - "5,6", - "5,7" - ], - [ - { - "r": -6, - "y": -4.25, - "x": 10.05 - }, - "0,8", - "0,9", - { - "x": 0.25, - "c": "#cccccc" - }, - "0,10", - "0,11" - ], - [ - { - "y": 0.25, - "x": 9.4 - }, - "1,8", - "1,9", - "1,10", - "1,11" - ], - [ - { - "x": 8.9 - }, - "2,8", - "2,9", - "2,10", - "2,11", - "2,12" - ], - [ - { - "x": 9.4 - }, - "3,8", - "3,9", - "3,10", - "3,11" - ], - [ - { - "x": 8.85 - }, - "4,8", - "4,9", - "4,10", - "4,11", - "4,12" - ], - [ - { - "x": 8.85, - "c": "#aaaaaa", - "w": 2.55 - }, - "5,9", - "5,11", - "5,12" - ] - ] - } -} diff --git a/keyboards/keychron/q13_pro/ansi_encoder/ansi_encoder.c b/keyboards/keychron/q13_pro/ansi_encoder/ansi_encoder.c deleted file mode 100644 index 2c0474d5bb..0000000000 --- a/keyboards/keychron/q13_pro/ansi_encoder/ansi_encoder.c +++ /dev/null @@ -1,140 +0,0 @@ -/* 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 . - */ - -#include "quantum.h" - -// clang-format off -#ifdef RGB_MATRIX_ENABLE -const snled27351_led_t g_snled27351_leds[RGB_MATRIX_LED_COUNT] = { -/* Refer to snled27351manual for these locations - * driver - * | R location - * | | G location - * | | | B location - * | | | | */ - {0, A_2, C_2, B_2}, - {0, A_3, C_3, B_3}, - {0, A_4, C_4, B_4}, - {0, A_5, C_5, B_5}, - {0, A_6, C_6, B_6}, - {0, A_7, C_7, B_7}, - {0, A_8, C_8, B_8}, - {0, A_9, C_9, B_9}, - {0, A_10, C_10, B_10}, - {0, A_11, C_11, B_11}, - {0, A_12, C_12, B_12}, - {0, A_13, C_13, B_13}, - {0, A_14, C_14, B_14}, - {0, A_15, C_15, B_15}, - {0, A_16, C_16, B_16}, - {0, L_16, J_16, K_16}, - {0, L_15, J_15, K_15}, - {0, L_14, J_14, K_14}, - - {0, G_1, I_1, H_1}, - {0, G_2, I_2, H_2}, - {0, G_3, I_3, H_3}, - {0, G_4, I_4, H_4}, - {0, G_5, I_5, H_5}, - {0, G_6, I_6, H_6}, - {0, G_7, I_7, H_7}, - {0, G_8, I_8, H_8}, - {0, G_9, I_9, H_9}, - {0, G_10, I_10, H_10}, - {0, G_11, I_11, H_11}, - {0, G_12, I_12, H_12}, - {0, G_13, I_13, H_13}, - {0, G_14, I_14, H_14}, - {0, G_15, I_15, H_15}, - {0, G_16, I_16, H_16}, - {0, L_13, J_13, K_13}, - {0, L_12, J_12, K_12}, - {0, L_11, J_11, K_11}, - - {0, D_1, F_1, E_1}, - {0, D_2, F_2, E_2}, - {0, D_3, F_3, E_3}, - {0, D_4, F_4, E_4}, - {0, D_5, F_5, E_5}, - {0, D_6, F_6, E_6}, - {0, D_7, F_7, E_7}, - {0, D_8, F_8, E_8}, - {0, D_9, F_9, E_9}, - {0, D_10, F_10, E_10}, - {0, D_11, F_11, E_11}, - {0, D_12, F_12, E_12}, - {0, D_13, F_13, E_13}, - {0, D_14, F_14, E_14}, - {0, D_15, F_15, E_15}, - {0, D_16, F_16, E_16}, - {0, L_10, J_10, K_10}, - {0, L_9, J_9, K_9}, - {0, L_8, J_8, K_8}, - - {1, A_16, C_16, B_16}, - {1, A_15, C_15, B_15}, - {1, A_14, C_14, B_14}, - {1, A_13, C_13, B_13}, - {1, A_12, C_12, B_12}, - {1, A_11, C_11, B_11}, - {1, A_10, C_10, B_10}, - {1, A_8, C_8, B_8}, - {1, A_7, C_7, B_7}, - {1, A_6, C_6, B_6}, - {1, A_5, C_5, B_5}, - {1, A_4, C_4, B_4}, - {1, A_3, C_3, B_3}, - {1, A_2, C_2, B_2}, - {1, A_1, C_1, B_1}, - {1, L_1, J_1, K_1}, - {1, L_2, J_2, K_2}, - - {1, G_16, I_16, H_16}, - {1, G_15, I_15, H_15}, - {1, G_13, I_13, H_13}, - {1, G_12, I_12, H_12}, - {1, G_11, I_11, H_11}, - {1, G_10, I_10, H_10}, - {1, G_9, I_9, H_9}, - {1, G_8, I_8, H_8}, - {1, G_7, I_7, H_7}, - {1, G_6, I_6, H_6}, - {1, G_5, I_5, H_5}, - {1, G_4, I_4, H_4}, - {1, G_3, I_3, H_3}, - {1, G_2, I_2, H_2}, - {1, G_1, I_1, H_1}, - {1, L_3, J_3, K_3}, - {1, L_4, J_4, K_4}, - {1, L_5, J_5, K_5}, - {1, L_8, J_8, K_8}, - - {1, D_16, F_16, E_16}, - {1, D_15, F_15, E_15}, - {1, D_14, F_14, E_14}, - {1, D_13, F_13, E_13}, - {1, D_12, F_12, E_12}, - {1, D_9, F_9, E_9}, - {1, D_8, F_8, E_8}, - {1, D_7, F_7, E_7}, - {1, D_6, F_6, E_6}, - {1, D_3, F_3, E_3}, - {1, D_2, F_2, E_2}, - {1, D_1, F_1, E_1}, - {1, L_6, J_6, K_6}, - {1, L_7, J_7, K_7}, -}; -#endif diff --git a/keyboards/keychron/q13_pro/ansi_encoder/config.h b/keyboards/keychron/q13_pro/ansi_encoder/config.h deleted file mode 100644 index fece5cd27c..0000000000 --- a/keyboards/keychron/q13_pro/ansi_encoder/config.h +++ /dev/null @@ -1,57 +0,0 @@ -/* 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 . - */ - -#pragma once - -#ifdef RGB_MATRIX_ENABLE -/* RGB Matrix Driver Configuration */ -# define DRIVER_COUNT 2 -# define DRIVER_ADDR_1 0b1110111 -# define DRIVER_ADDR_2 0b1110100 - -/* RGB Matrix Configuration */ -# define DRIVER_1_LED_TOTAL 56 -# define DRIVER_2_LED_TOTAL 50 -# define RGB_MATRIX_LED_COUNT (DRIVER_1_LED_TOTAL + DRIVER_2_LED_TOTAL) - -/* 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 - -/* Set LED driver current */ -# define SNLED27351_CURRENT_TUNE \ - { 0x28, 0x28, 0x28, 0x28, 0x28, 0x28, 0x28, 0x28, 0x28, 0x28, 0x28, 0x28 } - -/* Set to infinit, which is use in USB mode by default */ -# define RGB_MATRIX_TIMEOUT RGB_MATRIX_TIMEOUT_INFINITE - -/* Allow shutdown of led driver to save power */ -# define RGB_MATRIX_DRIVER_SHUTDOWN_ENABLE - -/* Turn off backlight on low brightness to save power */ -# define RGB_MATRIX_BRIGHTNESS_TURN_OFF_VAL 32 - -/* Indication led */ -# define NUM_LOCK_INDEX 33 -# define CAPS_LOCK_INDEX 57 -# define LOW_BAT_IND_INDEX 96 - -# define RGB_MATRIX_KEYPRESSES -# define RGB_MATRIX_FRAMEBUFFER_EFFECTS -#endif diff --git a/keyboards/keychron/q13_pro/ansi_encoder/info.json b/keyboards/keychron/q13_pro/ansi_encoder/info.json deleted file mode 100644 index c9e8750881..0000000000 --- a/keyboards/keychron/q13_pro/ansi_encoder/info.json +++ /dev/null @@ -1,239 +0,0 @@ -{ - "usb": { - "pid": "0x06D0", - "device_version": "1.0.0" - }, - "layouts": { - "LAYOUT_107_ansi": { - "layout": [ - {"matrix":[0,0], "x":0.5, "y":0}, - {"matrix":[0,1], "x":2, "y":0}, - {"matrix":[0,2], "x":3.25, "y":0}, - {"matrix":[0,3], "x":4.25, "y":0}, - {"matrix":[0,4], "x":5.4, "y":-0.55}, - {"matrix":[0,5], "x":6.4, "y":-0.55}, - {"matrix":[0,6], "x":7.65, "y":-0.55}, - {"matrix":[0,7], "x":8.65, "y":-0.55}, - {"matrix":[0,8], "x":10.05, "y":1.45}, - {"matrix":[0,9], "x":11.05, "y":1.45}, - {"matrix":[0,10], "x":12.3, "y":1.45}, - {"matrix":[0,11], "x":13.3, "y":1.45}, - {"matrix":[0,12], "x":14.6, "y":0}, - {"matrix":[0,13], "x":15.6, "y":0}, - {"matrix":[0,14], "x":17.05, "y":0}, - {"matrix":[0,15], "x":18.75, "y":0}, - {"matrix":[0,16], "x":19.75, "y":0}, - {"matrix":[0,17], "x":20.75, "y":0}, - {"matrix":[0,18], "x":21.75, "y":0}, - - {"matrix":[1,0], "x":0.75, "y":1.25}, - {"matrix":[1,1], "x":2.25, "y":1.25}, - {"matrix":[1,2], "x":3.25, "y":1.25}, - {"matrix":[1,3], "x":4.25, "y":1.25}, - {"matrix":[1,4], "x":5.55, "y":0.7}, - {"matrix":[1,5], "x":6.55, "y":0.7}, - {"matrix":[1,6], "x":7.55, "y":0.7}, - {"matrix":[1,7], "x":8.55, "y":0.7}, - {"matrix":[1,8], "x":9.4, "y":2.7}, - {"matrix":[1,9], "x":10.4, "y":2.7}, - {"matrix":[1,10], "x":11.4, "y":2.7}, - {"matrix":[1,11], "x":12.4, "y":2.7}, - {"matrix":[1,12], "x":13.9, "y":1.25}, - {"matrix":[1,13], "x":14.9, "y":1.25}, - {"matrix":[1,14], "x":15.9, "y":1.25, "w":2}, - {"matrix":[1,15], "x":18.75, "y":1.25}, - {"matrix":[1,16], "x":19.75, "y":1.25}, - {"matrix":[1,17], "x":20.75, "y":1.25}, - {"matrix":[1,18], "x":21.75, "y":1.25}, - - {"matrix":[2,0], "x":0.5, "y":2.25}, - {"matrix":[2,1], "x":2, "y":2.25, "w":1.5}, - {"matrix":[2,2], "x":3.5, "y":2.25}, - {"matrix":[2,3], "x":4.9, "y":1.7}, - {"matrix":[2,4], "x":5.9, "y":1.7}, - {"matrix":[2,5], "x":6.9, "y":1.7}, - {"matrix":[2,6], "x":7.9, "y":1.7}, - {"matrix":[2,7], "x":8.9, "y":3.7}, - {"matrix":[2,8], "x":9.9, "y":3.7}, - {"matrix":[2,9], "x":10.9, "y":3.7}, - {"matrix":[2,10], "x":11.9, "y":3.7}, - {"matrix":[2,11], "x":12.9, "y":3.7}, - {"matrix":[2,12], "x":14.4, "y":2.25}, - {"matrix":[2,13], "x":15.4, "y":2.25}, - {"matrix":[2,14], "x":16.4, "y":2.25, "w":1.75}, - {"matrix":[2,15], "x":18.75, "y":2.25}, - {"matrix":[2,16], "x":19.75, "y":2.25}, - {"matrix":[2,17], "x":20.75, "y":2.25}, - {"matrix":[2,18], "x":21.75, "y":2.25, "h":2}, - - {"matrix":[3,0], "x":0.25, "y":3.25}, - {"matrix":[3,1], "x":1.75, "y":3.25, "w":1.75}, - {"matrix":[3,2], "x":3.5, "y":3.25}, - {"matrix":[3,3], "x":5, "y":2.7}, - {"matrix":[3,4], "x":6, "y":2.7}, - {"matrix":[3,5], "x":7, "y":2.7}, - {"matrix":[3,6], "x":8, "y":2.7}, - {"matrix":[3,8], "x":9.4, "y":4.7}, - {"matrix":[3,9], "x":10.4, "y":4.7}, - {"matrix":[3,10], "x":11.4, "y":4.7}, - {"matrix":[3,11], "x":12.4, "y":4.7}, - {"matrix":[3,12], "x":14, "y":3.25}, - {"matrix":[3,13], "x":15, "y":3.25}, - {"matrix":[3,14], "x":16, "y":3.25, "w":2.25}, - {"matrix":[3,15], "x":18.75, "y":3.25}, - {"matrix":[3,16], "x":19.75, "y":3.25}, - {"matrix":[3,17], "x":20.75, "y":3.25}, - - {"matrix":[4,0], "x":0, "y":4.25}, - {"matrix":[4,1], "x":1.5, "y":4.25, "w":2.25}, - {"matrix":[4,3], "x":3.75, "y":4.25}, - {"matrix":[4,4], "x":5.35, "y":3.7}, - {"matrix":[4,5], "x":6.35, "y":3.7}, - {"matrix":[4,6], "x":7.35, "y":3.7}, - {"matrix":[4,7], "x":8.35, "y":3.7}, - {"matrix":[4,8], "x":8.85, "y":5.7}, - {"matrix":[4,9], "x":9.85, "y":5.7}, - {"matrix":[4,10], "x":10.85, "y":5.7}, - {"matrix":[4,11], "x":11.85, "y":5.7}, - {"matrix":[4,12], "x":12.85, "y":5.7}, - {"matrix":[4,13], "x":14.5, "y":4.25}, - {"matrix":[4,14], "x":15.5, "y":4.25, "w":1.75}, - {"matrix":[4,15], "x":17.5, "y":4.5}, - {"matrix":[4,16], "x":18.75, "y":4.25}, - {"matrix":[4,17], "x":19.75, "y":4.25}, - {"matrix":[4,18], "x":20.75, "y":4.25}, - {"matrix":[5,18], "x":21.75, "y":4.25, "h":2}, - - {"matrix":[5,0], "x":0, "y":5.25}, - {"matrix":[5,1], "x":1.5, "y":5.25, "w":1.25}, - {"matrix":[5,2], "x":2.75, "y":5.25, "w":1.25}, - {"matrix":[5,3], "x":5.35, "y":4.7, "w":1.25}, - {"matrix":[5,4], "x":6.6, "y":4.7, "w":2.25}, - {"matrix":[5,7], "x":8.85, "y":4.7}, - {"matrix":[5,8], "x":8.85, "y":6.7, "w":2.55}, - {"matrix":[5,9], "x":11.4, "y":6.7}, - {"matrix":[5,10], "x":12.4, "y":6.7}, - {"matrix":[5,13], "x":16.5, "y":5.5}, - {"matrix":[5,14], "x":17.5, "y":5.5}, - {"matrix":[5,15], "x":18.5, "y":5.5}, - {"matrix":[5,16], "x":19.75, "y":5.25}, - {"matrix":[5,17], "x":20.75, "y":5.25} - ] - } - }, - "rgb_matrix": { - "layout": [ - {"matrix":[0, 1], "flags":4, "x":16, "y":0}, - {"matrix":[0, 2], "flags":1, "x":29, "y":0}, - {"matrix":[0, 3], "flags":1, "x":39, "y":0}, - {"matrix":[0, 4], "flags":1, "x":51, "y":1}, - {"matrix":[0, 5], "flags":1, "x":61, "y":3}, - {"matrix":[0, 6], "flags":1, "x":74, "y":6}, - {"matrix":[0, 7], "flags":1, "x":84, "y":8}, - {"matrix":[0, 8], "flags":1, "x":103, "y":8}, - {"matrix":[0, 9], "flags":1, "x":113, "y":6}, - {"matrix":[0, 10], "flags":1, "x":125, "y":3}, - {"matrix":[0, 11], "flags":1, "x":136, "y":1}, - {"matrix":[0, 12], "flags":1, "x":148, "y":0}, - {"matrix":[0, 13], "flags":1, "x":158, "y":0}, - {"matrix":[0, 14], "flags":1, "x":175, "y":0}, - {"matrix":[0, 15], "flags":4, "x":193, "y":0}, - {"matrix":[0, 16], "flags":4, "x":203, "y":0}, - {"matrix":[0, 17], "flags":4, "x":214, "y":0}, - {"matrix":[0, 18], "flags":4, "x":224, "y":0}, - - {"matrix":[1, 0], "flags":4, "x":4, "y":14}, - {"matrix":[1, 1], "flags":1, "x":20, "y":14}, - {"matrix":[1, 2], "flags":8, "x":31, "y":14}, - {"matrix":[1, 3], "flags":8, "x":41, "y":13}, - {"matrix":[1, 4], "flags":8, "x":53, "y":15}, - {"matrix":[1, 5], "flags":4, "x":63, "y":17}, - {"matrix":[1, 6], "flags":4, "x":73, "y":20}, - {"matrix":[1, 7], "flags":4, "x":84, "y":22}, - {"matrix":[1, 8], "flags":4, "x":98, "y":22}, - {"matrix":[1, 9], "flags":4, "x":109, "y":20}, - {"matrix":[1, 10], "flags":4, "x":119, "y":17}, - {"matrix":[1, 11], "flags":4, "x":129, "y":15}, - {"matrix":[1, 12], "flags":4, "x":141, "y":13}, - {"matrix":[1, 13], "flags":4, "x":151, "y":14}, - {"matrix":[1, 14], "flags":1, "x":167, "y":14}, - {"matrix":[1, 15], "flags":8, "x":193, "y":13}, - {"matrix":[1, 16], "flags":4, "x":203, "y":13}, - {"matrix":[1, 17], "flags":4, "x":214, "y":13}, - {"matrix":[1, 18], "flags":4, "x":224, "y":13}, - - {"matrix":[2, 0], "flags":4, "x":3, "y":24}, - {"matrix":[2, 1], "flags":1, "x":21, "y":24}, - {"matrix":[2, 2], "flags":4, "x":34, "y":24}, - {"matrix":[2, 3], "flags":4, "x":46, "y":24}, - {"matrix":[2, 4], "flags":4, "x":56, "y":27}, - {"matrix":[2, 5], "flags":4, "x":66, "y":29}, - {"matrix":[2, 6], "flags":4, "x":76, "y":31}, - {"matrix":[2, 7], "flags":4, "x":96, "y":33}, - {"matrix":[2, 8], "flags":4, "x":106, "y":31}, - {"matrix":[2, 9], "flags":4, "x":116, "y":29}, - {"matrix":[2, 10], "flags":4, "x":127, "y":27}, - {"matrix":[2, 11], "flags":4, "x":137, "y":24}, - {"matrix":[2, 12], "flags":4, "x":148, "y":24}, - {"matrix":[2, 13], "flags":4, "x":159, "y":24}, - {"matrix":[2, 14], "flags":1, "x":172, "y":24}, - {"matrix":[2, 15], "flags":4, "x":193, "y":24}, - {"matrix":[2, 16], "flags":4, "x":203, "y":24}, - {"matrix":[2, 17], "flags":4, "x":214, "y":24}, - {"matrix":[2, 18], "flags":4, "x":224, "y":29}, - - {"matrix":[3, 0], "flags":4, "x":1, "y":34}, - {"matrix":[3, 1], "flags":8, "x":20, "y":34}, - {"matrix":[3, 2], "flags":4, "x":37, "y":34}, - {"matrix":[3, 3], "flags":4, "x":46, "y":35}, - {"matrix":[3, 4], "flags":4, "x":56, "y":37}, - {"matrix":[3, 5], "flags":4, "x":66, "y":39}, - {"matrix":[3, 6], "flags":4, "x":77, "y":42}, - {"matrix":[3, 8], "flags":4, "x":100, "y":43}, - {"matrix":[3, 9], "flags":4, "x":111, "y":40}, - {"matrix":[3, 10], "flags":4, "x":121, "y":38}, - {"matrix":[3, 11], "flags":4, "x":131, "y":36}, - {"matrix":[3, 12], "flags":4, "x":143, "y":35}, - {"matrix":[3, 13], "flags":4, "x":153, "y":35}, - {"matrix":[3, 14], "flags":1, "x":170, "y":35}, - {"matrix":[3, 15], "flags":4, "x":193, "y":35}, - {"matrix":[3, 16], "flags":4, "x":203, "y":35}, - {"matrix":[3, 17], "flags":4, "x":214, "y":35}, - - {"matrix":[4, 0], "flags":4, "x":0, "y":45}, - {"matrix":[4, 1], "flags":1, "x":20, "y":45}, - {"matrix":[4, 3], "flags":4, "x":37, "y":45}, - {"matrix":[4, 4], "flags":4, "x":49, "y":46}, - {"matrix":[4, 5], "flags":4, "x":59, "y":48}, - {"matrix":[4, 6], "flags":4, "x":69, "y":51}, - {"matrix":[4, 7], "flags":4, "x":80, "y":53}, - {"matrix":[4, 8], "flags":4, "x":95, "y":54}, - {"matrix":[4, 9], "flags":4, "x":105, "y":52}, - {"matrix":[4, 10], "flags":4, "x":115, "y":50}, - {"matrix":[4, 11], "flags":4, "x":126, "y":48}, - {"matrix":[4, 12], "flags":4, "x":136, "y":46}, - {"matrix":[4, 13], "flags":4, "x":148, "y":45}, - {"matrix":[4, 14], "flags":1, "x":162, "y":45}, - {"matrix":[4, 15], "flags":1, "x":179, "y":47}, - {"matrix":[4, 16], "flags":4, "x":193, "y":45}, - {"matrix":[4, 17], "flags":4, "x":203, "y":45}, - {"matrix":[4, 18], "flags":4, "x":214, "y":45}, - {"matrix":[5, 18], "flags":4, "x":224, "y":50}, - - {"matrix":[5, 0], "flags":4, "x":0, "y":55}, - {"matrix":[5, 1], "flags":1, "x":15, "y":55}, - {"matrix":[5, 2], "flags":1, "x":28, "y":55}, - {"matrix":[5, 3], "flags":1, "x":48, "y":57}, - {"matrix":[5, 4], "flags":4, "x":66, "y":61}, - {"matrix":[5, 7], "flags":1, "x":83, "y":64}, - {"matrix":[5, 8], "flags":4, "x":106, "y":63}, - {"matrix":[5, 9], "flags":1, "x":125, "y":59}, - {"matrix":[5, 10], "flags":1, "x":135, "y":56}, - {"matrix":[5, 13], "flags":1, "x":169, "y":58}, - {"matrix":[5, 14], "flags":1, "x":179, "y":58}, - {"matrix":[5, 15], "flags":1, "x":190, "y":58}, - {"matrix":[5, 16], "flags":4, "x":203, "y":58}, - {"matrix":[5, 17], "flags":4, "x":214, "y":55} - ] - } -} diff --git a/keyboards/keychron/q13_pro/ansi_encoder/keymaps/default/keymap.c b/keyboards/keychron/q13_pro/ansi_encoder/keymaps/default/keymap.c deleted file mode 100644 index 56700e3bff..0000000000 --- a/keyboards/keychron/q13_pro/ansi_encoder/keymaps/default/keymap.c +++ /dev/null @@ -1,68 +0,0 @@ -/* 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 . - */ - -#include QMK_KEYBOARD_H - -enum layers { - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN, -}; - -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_107_ansi( - KC_MUTE, KC_ESC, KC_BRID, KC_BRIU, KC_MCTL, KC_LPAD, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_DEL, KC_F13, KC_F14, KC_F15, KC_F16, - MC_1, KC_GRV, 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_NUM, KC_PSLS, KC_PAST, KC_PMNS, - MC_2, 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_P7, KC_P8, KC_P9, KC_PPLS, - MC_3, 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_P4, KC_P5, KC_P6, - MC_4, KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, KC_P1, KC_P2, KC_P3, KC_PENT, - MC_5, KC_LCTL, KC_LOPTN, KC_LCMMD, KC_SPC, MO(MAC_FN), KC_SPC, KC_RCMMD, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT, KC_P0, KC_PDOT ), - - [MAC_FN] = LAYOUT_107_ansi( - RGB_TOG, _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, _______, _______, _______, - _______, _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, BAT_LVL, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ), - - [WIN_BASE] = LAYOUT_107_ansi( - KC_MUTE, KC_ESC, 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_DEL, _______, _______, _______, _______, - MC_1, KC_GRV, 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_NUM, KC_PSLS, KC_PAST, KC_PMNS, - MC_2, 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_P7, KC_P8, KC_P9, KC_PPLS, - MC_3, 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_P4, KC_P5, KC_P6, - MC_4, KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, KC_P1, KC_P2, KC_P3, KC_PENT, - MC_5, KC_LCTL, KC_LWIN, KC_LALT, KC_SPC, MO(WIN_FN), KC_SPC, KC_RALT, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT, KC_P0, KC_PDOT ), - - [WIN_FN] = LAYOUT_107_ansi( - RGB_TOG, _______, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, _______, _______, _______, - _______, _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, BAT_LVL, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ), -}; - -#if defined(ENCODER_MAP_ENABLE) -const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][2] = { - [MAC_BASE] = { ENCODER_CCW_CW(KC_VOLD, KC_VOLU) }, - [MAC_FN] = { ENCODER_CCW_CW(RGB_VAD, RGB_VAI) }, - [WIN_BASE] = { ENCODER_CCW_CW(KC_VOLD, KC_VOLU) }, - [WIN_FN] = { ENCODER_CCW_CW(RGB_VAD, RGB_VAI) }, -}; -#endif // ENCODER_MAP_ENABLE diff --git a/keyboards/keychron/q13_pro/ansi_encoder/keymaps/default/rules.mk b/keyboards/keychron/q13_pro/ansi_encoder/keymaps/default/rules.mk deleted file mode 100644 index ee32568148..0000000000 --- a/keyboards/keychron/q13_pro/ansi_encoder/keymaps/default/rules.mk +++ /dev/null @@ -1 +0,0 @@ -ENCODER_MAP_ENABLE = yes diff --git a/keyboards/keychron/q13_pro/ansi_encoder/keymaps/via/keymap.c b/keyboards/keychron/q13_pro/ansi_encoder/keymaps/via/keymap.c deleted file mode 100644 index 186e111b62..0000000000 --- a/keyboards/keychron/q13_pro/ansi_encoder/keymaps/via/keymap.c +++ /dev/null @@ -1,68 +0,0 @@ -/* 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 . - */ - -#include QMK_KEYBOARD_H - -enum layers { - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN, -}; - -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_107_ansi( - KC_MUTE, KC_ESC, KC_BRID, KC_BRIU, KC_MICT, KC_LAPA, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_DEL, KC_F13, KC_F14, KC_F15, KC_F16, - MC_1, KC_GRV, 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_NUM, KC_PSLS, KC_PAST, KC_PMNS, - MC_2, 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_P7, KC_P8, KC_P9, KC_PPLS, - MC_3, 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_P4, KC_P5, KC_P6, - MC_4, KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, KC_P1, KC_P2, KC_P3, KC_PENT, - MC_5, KC_LCTL, KC_LOPTN, KC_LCMMD, KC_SPC, MO(MAC_FN), KC_SPC, KC_RCMMD, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT, KC_P0, KC_PDOT ), - - [MAC_FN] = LAYOUT_107_ansi( - RGB_TOG, _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, _______, _______, _______, - _______, _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, BAT_LVL, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ), - - [WIN_BASE] = LAYOUT_107_ansi( - KC_MUTE, KC_ESC, 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_DEL, _______, _______, _______, _______, - MC_1, KC_GRV, 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_NUM, KC_PSLS, KC_PAST, KC_PMNS, - MC_2, 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_P7, KC_P8, KC_P9, KC_PPLS, - MC_3, 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_P4, KC_P5, KC_P6, - MC_4, KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, KC_P1, KC_P2, KC_P3, KC_PENT, - MC_5, KC_LCTL, KC_LWIN, KC_LALT, KC_SPC, MO(WIN_FN), KC_SPC, KC_RALT, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT, KC_P0, KC_PDOT ), - - [WIN_FN] = LAYOUT_107_ansi( - RGB_TOG, _______, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, _______, _______, _______, - _______, _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, BAT_LVL, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ), -}; - -#if defined(ENCODER_MAP_ENABLE) -const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][2] = { - [MAC_BASE] = { ENCODER_CCW_CW(KC_VOLD, KC_VOLU) }, - [MAC_FN] = { ENCODER_CCW_CW(RGB_VAD, RGB_VAI) }, - [WIN_BASE] = { ENCODER_CCW_CW(KC_VOLD, KC_VOLU) }, - [WIN_FN] = { ENCODER_CCW_CW(RGB_VAD, RGB_VAI) }, -}; -#endif // ENCODER_MAP_ENABLE diff --git a/keyboards/keychron/q13_pro/ansi_encoder/keymaps/via/rules.mk b/keyboards/keychron/q13_pro/ansi_encoder/keymaps/via/rules.mk deleted file mode 100644 index f1adcab005..0000000000 --- a/keyboards/keychron/q13_pro/ansi_encoder/keymaps/via/rules.mk +++ /dev/null @@ -1,2 +0,0 @@ -VIA_ENABLE = yes -ENCODER_MAP_ENABLE = yes diff --git a/keyboards/keychron/q13_pro/ansi_encoder/rules.mk b/keyboards/keychron/q13_pro/ansi_encoder/rules.mk deleted file mode 100644 index a77dc6c674..0000000000 --- a/keyboards/keychron/q13_pro/ansi_encoder/rules.mk +++ /dev/null @@ -1 +0,0 @@ -# This file intentionally left blank diff --git a/keyboards/keychron/q13_pro/config.h b/keyboards/keychron/q13_pro/config.h deleted file mode 100644 index 933e767b78..0000000000 --- a/keyboards/keychron/q13_pro/config.h +++ /dev/null @@ -1,85 +0,0 @@ -/* 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 . - */ - -#pragma once - -/* Disable RGB lighting when PC is in suspend */ -#define RGB_DISABLE_WHEN_USB_SUSPENDED - -/* DIP switch for Mac/win OS switch */ -#define DIP_SWITCH_PINS \ - { A8 } - -/* Encoder Configuration */ -#ifdef ENCODER_ENABLE -# define ENCODER_DEFAULT_POS 0x3 -#endif - -#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 \ - { 20, 21, 22 } - -# define BAT_LEVEL_LED_LIST \ - { 20, 21, 22, 23, 24, 25, 26, 27, 28, 29 } - -/* 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 WEAR_LEVELING_LOGICAL_SIZE 2048 -#define WEAR_LEVELING_BACKING_SIZE (WEAR_LEVELING_LOGICAL_SIZE * 2) -#define DYNAMIC_KEYMAP_EEPROM_MAX_ADDR 2047 - -/* HC595 Driver Configuration */ -#define HC595_END_INDEX 18 - -/* Factory test keys */ -#define FN_KEY1 MO(1) -#define FN_KEY2 MO(3) -#define BL_TEST_KEY2 KC_DEL diff --git a/keyboards/keychron/q13_pro/halconf.h b/keyboards/keychron/q13_pro/halconf.h deleted file mode 100644 index 8d8e138e4e..0000000000 --- a/keyboards/keychron/q13_pro/halconf.h +++ /dev/null @@ -1,29 +0,0 @@ -/* Copyright 2023 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 _CHIBIOS_HAL_CONF_VER_8_0_ - -#define HAL_USE_I2C TRUE - -#ifdef KC_BLUETOOTH_ENABLE -# define PAL_USE_CALLBACKS TRUE -# define HAL_USE_SERIAL TRUE -# define HAL_USE_RTC TRUE -#endif - -#include_next diff --git a/keyboards/keychron/q13_pro/info.json b/keyboards/keychron/q13_pro/info.json deleted file mode 100644 index 659d109bc5..0000000000 --- a/keyboards/keychron/q13_pro/info.json +++ /dev/null @@ -1,64 +0,0 @@ -{ - "keyboard_name": "Keychron Q13 Pro", - "manufacturer": "Keychron", - "url": "https://github.com/Keychron", - "maintainer": "lalalademaxiya1", - "processor": "STM32L432", - "bootloader": "stm32-dfu", - "usb": { - "vid": "0x3434" - }, - "features": { - "bootmagic": true, - "command": false, - "console": false, - "extrakey": true, - "mousekey": true, - "nkro": true, - "rgb_matrix": true, - "dip_switch": true, - "encoder": true, - "raw": true - }, - "rgb_matrix": { - "driver": "snled27351", - "animations": { - "breathing": true, - "band_spiral_val": true, - "cycle_all": true, - "cycle_left_right": true, - "cycle_up_down": true, - "rainbow_moving_chevron": true, - "cycle_out_in": true, - "cycle_out_in_dual": true, - "cycle_pinwheel": true, - "cycle_spiral": true, - "dual_beacon": true, - "rainbow_beacon": true, - "jellybean_raindrops": true, - "pixel_rain": true, - "typing_heatmap": true, - "digital_rain": true, - "solid_reactive_simple": true, - "solid_reactive_multiwide": true, - "solid_reactive_multinexus": true, - "splash": true, - "solid_splash": true - } - }, - "matrix_pins": { - "cols": [null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null], - "rows": ["B5", "B4", "B3", "A15", "A14", "A13"], - "custom": true, - "custom_lite": true - }, - "diode_direction": "ROW2COL", - "encoder": { - "rotary": [ - {"pin_a": "A0", "pin_b": "A10"} - ] - }, - "bootmagic": { - "matrix": [0, 1] - } -} diff --git a/keyboards/keychron/q13_pro/iso_encoder/config.h b/keyboards/keychron/q13_pro/iso_encoder/config.h deleted file mode 100644 index ad53e4d05a..0000000000 --- a/keyboards/keychron/q13_pro/iso_encoder/config.h +++ /dev/null @@ -1,57 +0,0 @@ -/* 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 . - */ - -#pragma once - -#ifdef RGB_MATRIX_ENABLE -/* RGB Matrix Driver Configuration */ -# define DRIVER_COUNT 2 -# define DRIVER_ADDR_1 0b1110111 -# define DRIVER_ADDR_2 0b1110100 - -/* RGB Matrix Configuration */ -# define DRIVER_1_LED_TOTAL 56 -# define DRIVER_2_LED_TOTAL 51 -# define RGB_MATRIX_LED_COUNT (DRIVER_1_LED_TOTAL + DRIVER_2_LED_TOTAL) - -/* 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 - -/* Set LED driver current */ -# define SNLED27351_CURRENT_TUNE \ - { 0x28, 0x28, 0x28, 0x28, 0x28, 0x28, 0x28, 0x28, 0x28, 0x28, 0x28, 0x28 } - -/* Set to infinit, which is use in USB mode by default */ -# define RGB_MATRIX_TIMEOUT RGB_MATRIX_TIMEOUT_INFINITE - -/* Allow shutdown of led driver to save power */ -# define RGB_MATRIX_DRIVER_SHUTDOWN_ENABLE - -/* Turn off backlight on low brightness to save power */ -# define RGB_MATRIX_BRIGHTNESS_TURN_OFF_VAL 32 - -/* Indication led */ -# define NUM_LOCK_INDEX 33 -# define CAPS_LOCK_INDEX 56 -# define LOW_BAT_IND_INDEX 97 - -# define RGB_MATRIX_KEYPRESSES -# define RGB_MATRIX_FRAMEBUFFER_EFFECTS -#endif diff --git a/keyboards/keychron/q13_pro/iso_encoder/info.json b/keyboards/keychron/q13_pro/iso_encoder/info.json deleted file mode 100644 index 9995507a18..0000000000 --- a/keyboards/keychron/q13_pro/iso_encoder/info.json +++ /dev/null @@ -1,241 +0,0 @@ -{ - "usb": { - "pid": "0x06D1", - "device_version": "1.0.0" - }, - "layouts": { - "LAYOUT_108_iso": { - "layout": [ - {"matrix":[0,0], "x":0.5, "y":0}, - {"matrix":[0,1], "x":2, "y":0}, - {"matrix":[0,2], "x":3.25, "y":0}, - {"matrix":[0,3], "x":4.25, "y":0}, - {"matrix":[0,4], "x":5.4, "y":-0.55}, - {"matrix":[0,5], "x":6.4, "y":-0.55}, - {"matrix":[0,6], "x":7.65, "y":-0.55}, - {"matrix":[0,7], "x":8.65, "y":-0.55}, - {"matrix":[0,8], "x":10.05, "y":1.45}, - {"matrix":[0,9], "x":11.05, "y":1.45}, - {"matrix":[0,10], "x":12.3, "y":1.45}, - {"matrix":[0,11], "x":13.3, "y":1.45}, - {"matrix":[0,12], "x":14.6, "y":0}, - {"matrix":[0,13], "x":15.6, "y":0}, - {"matrix":[0,14], "x":17.05, "y":0}, - {"matrix":[0,15], "x":18.75, "y":0}, - {"matrix":[0,16], "x":19.75, "y":0}, - {"matrix":[0,17], "x":20.75, "y":0}, - {"matrix":[0,18], "x":21.75, "y":0}, - - {"matrix":[1,0], "x":0.75, "y":1.25}, - {"matrix":[1,1], "x":2.25, "y":1.25}, - {"matrix":[1,2], "x":3.25, "y":1.25}, - {"matrix":[1,3], "x":4.25, "y":1.25}, - {"matrix":[1,4], "x":5.55, "y":0.7}, - {"matrix":[1,5], "x":6.55, "y":0.7}, - {"matrix":[1,6], "x":7.55, "y":0.7}, - {"matrix":[1,7], "x":8.55, "y":0.7}, - {"matrix":[1,8], "x":9.4, "y":2.7}, - {"matrix":[1,9], "x":10.4, "y":2.7}, - {"matrix":[1,10], "x":11.4, "y":2.7}, - {"matrix":[1,11], "x":12.4, "y":2.7}, - {"matrix":[1,12], "x":13.9, "y":1.25}, - {"matrix":[1,13], "x":14.9, "y":1.25}, - {"matrix":[1,14], "x":15.9, "y":1.25, "w":2}, - {"matrix":[1,15], "x":18.75, "y":1.25}, - {"matrix":[1,16], "x":19.75, "y":1.25}, - {"matrix":[1,17], "x":20.75, "y":1.25}, - {"matrix":[1,18], "x":21.75, "y":1.25}, - - {"matrix":[2,0], "x":0.5, "y":2.25}, - {"matrix":[2,1], "x":2, "y":2.25, "w":1.5}, - {"matrix":[2,2], "x":3.5, "y":2.25}, - {"matrix":[2,3], "x":4.9, "y":1.7}, - {"matrix":[2,4], "x":5.9, "y":1.7}, - {"matrix":[2,5], "x":6.9, "y":1.7}, - {"matrix":[2,6], "x":7.9, "y":1.7}, - {"matrix":[2,7], "x":8.9, "y":3.7}, - {"matrix":[2,8], "x":9.9, "y":3.7}, - {"matrix":[2,9], "x":10.9, "y":3.7}, - {"matrix":[2,10], "x":11.9, "y":3.7}, - {"matrix":[2,11], "x":12.9, "y":3.7}, - {"matrix":[2,12], "x":14.75, "y":2.25}, - {"matrix":[2,13], "x":15.75, "y":2.25}, - {"matrix":[2,15], "x":18.75, "y":2.25}, - {"matrix":[2,16], "x":19.75, "y":2.25}, - {"matrix":[2,17], "x":20.75, "y":2.25}, - {"matrix":[2,18], "x":21.75, "y":2.25, "h":2}, - - {"matrix":[3,0], "x":0.25, "y":3.25}, - {"matrix":[3,1], "x":1.75, "y":3.25, "w":1.75}, - {"matrix":[3,2], "x":3.5, "y":3.25}, - {"matrix":[3,3], "x":5, "y":2.7}, - {"matrix":[3,4], "x":6, "y":2.7}, - {"matrix":[3,5], "x":7, "y":2.7}, - {"matrix":[3,6], "x":8, "y":2.7}, - {"matrix":[3,8], "x":9.4, "y":4.7}, - {"matrix":[3,9], "x":10.4, "y":4.7}, - {"matrix":[3,10], "x":11.4, "y":4.7}, - {"matrix":[3,11], "x":12.4, "y":4.7}, - {"matrix":[3,12], "x":14, "y":3.25}, - {"matrix":[3,13], "x":15, "y":3.25}, - {"matrix":[3,14], "x":16, "y":3.25}, - {"matrix":[2,14], "x":17, "y":2.25, "w":1.25, "h":2}, - {"matrix":[3,15], "x":18.75, "y":3.25}, - {"matrix":[3,16], "x":19.75, "y":3.25}, - {"matrix":[3,17], "x":20.75, "y":3.25}, - - {"matrix":[4,0], "x":0, "y":4.25}, - {"matrix":[4,1], "x":1.5, "y":4.25, "w":1.25}, - {"matrix":[4,2], "x":2.75, "y":4.25}, - {"matrix":[4,3], "x":3.75, "y":4.25}, - {"matrix":[4,4], "x":5.35, "y":3.7}, - {"matrix":[4,5], "x":6.35, "y":3.7}, - {"matrix":[4,6], "x":7.35, "y":3.7}, - {"matrix":[4,7], "x":8.35, "y":3.7}, - {"matrix":[4,8], "x":8.85, "y":5.7}, - {"matrix":[4,9], "x":9.85, "y":5.7}, - {"matrix":[4,10], "x":10.85, "y":5.7}, - {"matrix":[4,11], "x":11.85, "y":5.7}, - {"matrix":[4,12], "x":12.85, "y":5.7}, - {"matrix":[4,13], "x":14.5, "y":4.25}, - {"matrix":[4,14], "x":15.5, "y":4.25, "w":1.75}, - {"matrix":[4,15], "x":17.5, "y":4.5}, - {"matrix":[4,16], "x":18.75, "y":4.25}, - {"matrix":[4,17], "x":19.75, "y":4.25}, - {"matrix":[4,18], "x":20.75, "y":4.25}, - {"matrix":[5,18], "x":21.75, "y":4.25, "h":2}, - - {"matrix":[5,0], "x":0, "y":5.25}, - {"matrix":[5,1], "x":1.5, "y":5.25, "w":1.25}, - {"matrix":[5,2], "x":2.75, "y":5.25, "w":1.25}, - {"matrix":[5,3], "x":5.35, "y":4.7, "w":1.25}, - {"matrix":[5,4], "x":6.6, "y":4.7, "w":2.25}, - {"matrix":[5,7], "x":8.85, "y":4.7}, - {"matrix":[5,8], "x":8.85, "y":6.7, "w":2.55}, - {"matrix":[5,9], "x":11.4, "y":6.7}, - {"matrix":[5,10], "x":12.4, "y":6.7}, - {"matrix":[5,13], "x":16.5, "y":5.5}, - {"matrix":[5,14], "x":17.5, "y":5.5}, - {"matrix":[5,15], "x":18.5, "y":5.5}, - {"matrix":[5,16], "x":19.75, "y":5.25}, - {"matrix":[5,17], "x":20.75, "y":5.25} - ] - } - }, - "rgb_matrix": { - "layout": [ - {"matrix":[0, 1], "flags":4, "x":16, "y":0}, - {"matrix":[0, 2], "flags":1, "x":29, "y":0}, - {"matrix":[0, 3], "flags":1, "x":39, "y":0}, - {"matrix":[0, 4], "flags":1, "x":51, "y":1}, - {"matrix":[0, 5], "flags":1, "x":61, "y":3}, - {"matrix":[0, 6], "flags":1, "x":74, "y":6}, - {"matrix":[0, 7], "flags":1, "x":84, "y":8}, - {"matrix":[0, 8], "flags":1, "x":103, "y":8}, - {"matrix":[0, 9], "flags":1, "x":113, "y":6}, - {"matrix":[0, 10], "flags":1, "x":125, "y":3}, - {"matrix":[0, 11], "flags":1, "x":136, "y":1}, - {"matrix":[0, 12], "flags":1, "x":148, "y":0}, - {"matrix":[0, 13], "flags":1, "x":158, "y":0}, - {"matrix":[0, 14], "flags":1, "x":175, "y":0}, - {"matrix":[0, 15], "flags":4, "x":193, "y":0}, - {"matrix":[0, 16], "flags":4, "x":203, "y":0}, - {"matrix":[0, 17], "flags":4, "x":214, "y":0}, - {"matrix":[0, 18], "flags":4, "x":224, "y":0}, - - {"matrix":[1, 0], "flags":4, "x":4, "y":14}, - {"matrix":[1, 1], "flags":1, "x":20, "y":14}, - {"matrix":[1, 2], "flags":8, "x":31, "y":14}, - {"matrix":[1, 3], "flags":8, "x":41, "y":13}, - {"matrix":[1, 4], "flags":8, "x":53, "y":15}, - {"matrix":[1, 5], "flags":4, "x":63, "y":17}, - {"matrix":[1, 6], "flags":4, "x":73, "y":20}, - {"matrix":[1, 7], "flags":4, "x":84, "y":22}, - {"matrix":[1, 8], "flags":4, "x":98, "y":22}, - {"matrix":[1, 9], "flags":4, "x":109, "y":20}, - {"matrix":[1, 10], "flags":4, "x":119, "y":17}, - {"matrix":[1, 11], "flags":4, "x":129, "y":15}, - {"matrix":[1, 12], "flags":4, "x":141, "y":13}, - {"matrix":[1, 13], "flags":4, "x":151, "y":14}, - {"matrix":[1, 14], "flags":1, "x":167, "y":14}, - {"matrix":[1, 15], "flags":8, "x":193, "y":13}, - {"matrix":[1, 16], "flags":4, "x":203, "y":13}, - {"matrix":[1, 17], "flags":4, "x":214, "y":13}, - {"matrix":[1, 18], "flags":4, "x":224, "y":13}, - - {"matrix":[2, 0], "flags":4, "x":3, "y":24}, - {"matrix":[2, 1], "flags":1, "x":21, "y":24}, - {"matrix":[2, 2], "flags":4, "x":34, "y":24}, - {"matrix":[2, 3], "flags":4, "x":46, "y":24}, - {"matrix":[2, 4], "flags":4, "x":56, "y":27}, - {"matrix":[2, 5], "flags":4, "x":66, "y":29}, - {"matrix":[2, 6], "flags":4, "x":76, "y":31}, - {"matrix":[2, 7], "flags":4, "x":96, "y":33}, - {"matrix":[2, 8], "flags":4, "x":106, "y":31}, - {"matrix":[2, 9], "flags":4, "x":116, "y":29}, - {"matrix":[2, 10], "flags":4, "x":127, "y":27}, - {"matrix":[2, 11], "flags":4, "x":137, "y":24}, - {"matrix":[2, 12], "flags":4, "x":151, "y":24}, - {"matrix":[2, 13], "flags":4, "x":161, "y":24}, - {"matrix":[2, 15], "flags":4, "x":193, "y":24}, - {"matrix":[2, 16], "flags":4, "x":203, "y":24}, - {"matrix":[2, 17], "flags":4, "x":214, "y":24}, - {"matrix":[2, 18], "flags":4, "x":224, "y":29}, - - {"matrix":[3, 0], "flags":4, "x":1, "y":34}, - {"matrix":[3, 1], "flags":8, "x":20, "y":34}, - {"matrix":[3, 2], "flags":4, "x":37, "y":34}, - {"matrix":[3, 3], "flags":4, "x":46, "y":35}, - {"matrix":[3, 4], "flags":4, "x":56, "y":37}, - {"matrix":[3, 5], "flags":4, "x":66, "y":39}, - {"matrix":[3, 6], "flags":4, "x":77, "y":42}, - {"matrix":[3, 8], "flags":4, "x":100, "y":43}, - {"matrix":[3, 9], "flags":4, "x":111, "y":40}, - {"matrix":[3, 10], "flags":4, "x":121, "y":38}, - {"matrix":[3, 11], "flags":4, "x":131, "y":36}, - {"matrix":[3, 12], "flags":4, "x":143, "y":35}, - {"matrix":[3, 13], "flags":4, "x":153, "y":35}, - {"matrix":[3, 14], "flags":1, "x":164, "y":35}, - {"matrix":[2, 14], "flags":1, "x":178, "y":31}, - {"matrix":[3, 15], "flags":4, "x":193, "y":35}, - {"matrix":[3, 16], "flags":4, "x":203, "y":35}, - {"matrix":[3, 17], "flags":4, "x":214, "y":35}, - - {"matrix":[4, 0], "flags":4, "x":0, "y":45}, - {"matrix":[4, 1], "flags":1, "x":15, "y":45}, - {"matrix":[4, 2], "flags":1, "x":27, "y":45}, - {"matrix":[4, 3], "flags":4, "x":37, "y":45}, - {"matrix":[4, 4], "flags":4, "x":49, "y":46}, - {"matrix":[4, 5], "flags":4, "x":59, "y":48}, - {"matrix":[4, 6], "flags":4, "x":69, "y":51}, - {"matrix":[4, 7], "flags":4, "x":80, "y":53}, - {"matrix":[4, 8], "flags":4, "x":95, "y":54}, - {"matrix":[4, 9], "flags":4, "x":105, "y":52}, - {"matrix":[4, 10], "flags":4, "x":115, "y":50}, - {"matrix":[4, 11], "flags":4, "x":126, "y":48}, - {"matrix":[4, 12], "flags":4, "x":136, "y":46}, - {"matrix":[4, 13], "flags":4, "x":148, "y":45}, - {"matrix":[4, 14], "flags":1, "x":162, "y":45}, - {"matrix":[4, 15], "flags":1, "x":179, "y":47}, - {"matrix":[4, 16], "flags":4, "x":193, "y":45}, - {"matrix":[4, 17], "flags":4, "x":203, "y":45}, - {"matrix":[4, 18], "flags":4, "x":214, "y":45}, - {"matrix":[5, 18], "flags":4, "x":224, "y":50}, - - {"matrix":[5, 0], "flags":4, "x":0, "y":55}, - {"matrix":[5, 1], "flags":1, "x":15, "y":55}, - {"matrix":[5, 2], "flags":1, "x":28, "y":55}, - {"matrix":[5, 3], "flags":1, "x":48, "y":57}, - {"matrix":[5, 4], "flags":4, "x":66, "y":61}, - {"matrix":[5, 7], "flags":1, "x":83, "y":64}, - {"matrix":[5, 8], "flags":4, "x":106, "y":63}, - {"matrix":[5, 9], "flags":1, "x":125, "y":59}, - {"matrix":[5, 10], "flags":1, "x":135, "y":56}, - {"matrix":[5, 13], "flags":1, "x":169, "y":58}, - {"matrix":[5, 14], "flags":1, "x":179, "y":58}, - {"matrix":[5, 15], "flags":1, "x":190, "y":58}, - {"matrix":[5, 16], "flags":4, "x":203, "y":58}, - {"matrix":[5, 17], "flags":4, "x":214, "y":55} - ] - } -} diff --git a/keyboards/keychron/q13_pro/iso_encoder/iso_encoder.c b/keyboards/keychron/q13_pro/iso_encoder/iso_encoder.c deleted file mode 100644 index 9185bd3a06..0000000000 --- a/keyboards/keychron/q13_pro/iso_encoder/iso_encoder.c +++ /dev/null @@ -1,141 +0,0 @@ -/* 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 . - */ - -#include "quantum.h" - -// clang-format off -#ifdef RGB_MATRIX_ENABLE -const snled27351_led_t g_snled27351_leds[RGB_MATRIX_LED_COUNT] = { -/* Refer to snled27351manual for these locations - * driver - * | R location - * | | G location - * | | | B location - * | | | | */ - {0, A_2, C_2, B_2}, - {0, A_3, C_3, B_3}, - {0, A_4, C_4, B_4}, - {0, A_5, C_5, B_5}, - {0, A_6, C_6, B_6}, - {0, A_7, C_7, B_7}, - {0, A_8, C_8, B_8}, - {0, A_9, C_9, B_9}, - {0, A_10, C_10, B_10}, - {0, A_11, C_11, B_11}, - {0, A_12, C_12, B_12}, - {0, A_13, C_13, B_13}, - {0, A_14, C_14, B_14}, - {0, A_15, C_15, B_15}, - {0, A_16, C_16, B_16}, - {0, L_16, J_16, K_16}, - {0, L_15, J_15, K_15}, - {0, L_14, J_14, K_14}, - - {0, G_1, I_1, H_1}, - {0, G_2, I_2, H_2}, - {0, G_3, I_3, H_3}, - {0, G_4, I_4, H_4}, - {0, G_5, I_5, H_5}, - {0, G_6, I_6, H_6}, - {0, G_7, I_7, H_7}, - {0, G_8, I_8, H_8}, - {0, G_9, I_9, H_9}, - {0, G_10, I_10, H_10}, - {0, G_11, I_11, H_11}, - {0, G_12, I_12, H_12}, - {0, G_13, I_13, H_13}, - {0, G_14, I_14, H_14}, - {0, G_15, I_15, H_15}, - {0, G_16, I_16, H_16}, - {0, L_13, J_13, K_13}, - {0, L_12, J_12, K_12}, - {0, L_11, J_11, K_11}, - - {0, D_1, F_1, E_1}, - {0, D_2, F_2, E_2}, - {0, D_3, F_3, E_3}, - {0, D_4, F_4, E_4}, - {0, D_5, F_5, E_5}, - {0, D_6, F_6, E_6}, - {0, D_7, F_7, E_7}, - {0, D_8, F_8, E_8}, - {0, D_9, F_9, E_9}, - {0, D_10, F_10, E_10}, - {0, D_11, F_11, E_11}, - {0, D_12, F_12, E_12}, - {0, D_13, F_13, E_13}, - {0, D_14, F_14, E_14}, - {0, D_16, F_16, E_16}, - {0, L_10, J_10, K_10}, - {0, L_9, J_9, K_9}, - {0, L_8, J_8, K_8}, - - {1, A_16, C_16, B_16}, - {1, A_15, C_15, B_15}, - {1, A_14, C_14, B_14}, - {1, A_13, C_13, B_13}, - {1, A_12, C_12, B_12}, - {1, A_11, C_11, B_11}, - {1, A_10, C_10, B_10}, - {1, A_8, C_8, B_8}, - {1, A_7, C_7, B_7}, - {1, A_6, C_6, B_6}, - {1, A_5, C_5, B_5}, - {1, A_4, C_4, B_4}, - {1, A_3, C_3, B_3}, - {1, A_2, C_2, B_2}, - {0, D_15, F_15, E_15}, - {1, A_1, C_1, B_1}, - {1, L_1, J_1, K_1}, - {1, L_2, J_2, K_2}, - - {1, G_16, I_16, H_16}, - {1, G_15, I_15, H_15}, - {1, G_14, I_14, H_14}, - {1, G_13, I_13, H_13}, - {1, G_12, I_12, H_12}, - {1, G_11, I_11, H_11}, - {1, G_10, I_10, H_10}, - {1, G_9, I_9, H_9}, - {1, G_8, I_8, H_8}, - {1, G_7, I_7, H_7}, - {1, G_6, I_6, H_6}, - {1, G_5, I_5, H_5}, - {1, G_4, I_4, H_4}, - {1, G_3, I_3, H_3}, - {1, G_2, I_2, H_2}, - {1, G_1, I_1, H_1}, - {1, L_3, J_3, K_3}, - {1, L_4, J_4, K_4}, - {1, L_5, J_5, K_5}, - {1, L_8, J_8, K_8}, - - {1, D_16, F_16, E_16}, - {1, D_15, F_15, E_15}, - {1, D_14, F_14, E_14}, - {1, D_13, F_13, E_13}, - {1, D_12, F_12, E_12}, - {1, D_9, F_9, E_9}, - {1, D_8, F_8, E_8}, - {1, D_7, F_7, E_7}, - {1, D_6, F_6, E_6}, - {1, D_3, F_3, E_3}, - {1, D_2, F_2, E_2}, - {1, D_1, F_1, E_1}, - {1, L_6, J_6, K_6}, - {1, L_7, J_7, K_7}, -}; -#endif diff --git a/keyboards/keychron/q13_pro/iso_encoder/keymaps/default/keymap.c b/keyboards/keychron/q13_pro/iso_encoder/keymaps/default/keymap.c deleted file mode 100644 index 5079872eb6..0000000000 --- a/keyboards/keychron/q13_pro/iso_encoder/keymaps/default/keymap.c +++ /dev/null @@ -1,68 +0,0 @@ -/* 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 . - */ - -#include QMK_KEYBOARD_H - -enum layers { - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN, -}; - -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_108_iso( - KC_MUTE, KC_ESC, KC_BRID, KC_BRIU, KC_MCTL, KC_LPAD, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_DEL, KC_F13, KC_F14, KC_F15, KC_F16, - MC_1, KC_GRV, 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_NUM, KC_PSLS, KC_PAST, KC_PMNS, - MC_2, 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_P7, KC_P8, KC_P9, KC_PPLS, - MC_3, 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_NUHS, KC_ENT, KC_P4, KC_P5, KC_P6, - MC_4, KC_LSFT, KC_NUBS, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, KC_P1, KC_P2, KC_P3, KC_PENT, - MC_5, KC_LCTL, KC_LOPTN, KC_LCMMD, KC_SPC, MO(MAC_FN), KC_SPC, KC_RCMMD, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT, KC_P0, KC_PDOT ), - - [MAC_FN] = LAYOUT_108_iso( - RGB_TOG, _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, _______, _______, _______, - _______, _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, BAT_LVL, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ), - - [WIN_BASE] = LAYOUT_108_iso( - KC_MUTE, KC_ESC, 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_DEL, _______, _______, _______, _______, - MC_1, KC_GRV, 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_NUM, KC_PSLS, KC_PAST, KC_PMNS, - MC_2, 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_P7, KC_P8, KC_P9, KC_PPLS, - MC_3, 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_NUHS, KC_ENT, KC_P4, KC_P5, KC_P6, - MC_4, KC_LSFT, KC_NUBS, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, KC_P1, KC_P2, KC_P3, KC_PENT, - MC_5, KC_LCTL, KC_LWIN, KC_LALT, KC_SPC, MO(WIN_FN), KC_SPC, KC_RALT, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT, KC_P0, KC_PDOT ), - - [WIN_FN] = LAYOUT_108_iso( - RGB_TOG, _______, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, _______, _______, _______, - _______, _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, BAT_LVL, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ), -}; - -#if defined(ENCODER_MAP_ENABLE) -const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][2] = { - [MAC_BASE] = { ENCODER_CCW_CW(KC_VOLD, KC_VOLU) }, - [MAC_FN] = { ENCODER_CCW_CW(RGB_VAD, RGB_VAI) }, - [WIN_BASE] = { ENCODER_CCW_CW(KC_VOLD, KC_VOLU) }, - [WIN_FN] = { ENCODER_CCW_CW(RGB_VAD, RGB_VAI) }, -}; -#endif // ENCODER_MAP_ENABLE diff --git a/keyboards/keychron/q13_pro/iso_encoder/keymaps/default/rules.mk b/keyboards/keychron/q13_pro/iso_encoder/keymaps/default/rules.mk deleted file mode 100644 index ee32568148..0000000000 --- a/keyboards/keychron/q13_pro/iso_encoder/keymaps/default/rules.mk +++ /dev/null @@ -1 +0,0 @@ -ENCODER_MAP_ENABLE = yes diff --git a/keyboards/keychron/q13_pro/iso_encoder/keymaps/via/keymap.c b/keyboards/keychron/q13_pro/iso_encoder/keymaps/via/keymap.c deleted file mode 100644 index c353202852..0000000000 --- a/keyboards/keychron/q13_pro/iso_encoder/keymaps/via/keymap.c +++ /dev/null @@ -1,68 +0,0 @@ -/* 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 . - */ - -#include QMK_KEYBOARD_H - -enum layers { - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN, -}; - -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_108_iso( - KC_MUTE, KC_ESC, KC_BRID, KC_BRIU, KC_MICT, KC_LAPA, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_DEL, KC_F13, KC_F14, KC_F15, KC_F16, - MC_1, KC_GRV, 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_NUM, KC_PSLS, KC_PAST, KC_PMNS, - MC_2, 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_P7, KC_P8, KC_P9, KC_PPLS, - MC_3, 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_NUHS, KC_ENT, KC_P4, KC_P5, KC_P6, - MC_4, KC_LSFT, KC_NUBS, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, KC_P1, KC_P2, KC_P3, KC_PENT, - MC_5, KC_LCTL, KC_LOPTN, KC_LCMMD, KC_SPC, MO(MAC_FN), KC_SPC, KC_RCMMD, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT, KC_P0, KC_PDOT ), - - [MAC_FN] = LAYOUT_108_iso( - RGB_TOG, _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, _______, _______, _______, - _______, _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, BAT_LVL, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ), - - [WIN_BASE] = LAYOUT_108_iso( - KC_MUTE, KC_ESC, 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_DEL, _______, _______, _______, _______, - MC_1, KC_GRV, 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_NUM, KC_PSLS, KC_PAST, KC_PMNS, - MC_2, 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_P7, KC_P8, KC_P9, KC_PPLS, - MC_3, 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_NUHS, KC_ENT, KC_P4, KC_P5, KC_P6, - MC_4, KC_LSFT, KC_NUBS, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, KC_P1, KC_P2, KC_P3, KC_PENT, - MC_5, KC_LCTL, KC_LWIN, KC_LALT, KC_SPC, MO(WIN_FN), KC_SPC, KC_RALT, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT, KC_P0, KC_PDOT ), - - [WIN_FN] = LAYOUT_108_iso( - RGB_TOG, _______, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, _______, _______, _______, - _______, _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, BAT_LVL, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ), -}; - -#if defined(ENCODER_MAP_ENABLE) -const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][2] = { - [MAC_BASE] = { ENCODER_CCW_CW(KC_VOLD, KC_VOLU) }, - [MAC_FN] = { ENCODER_CCW_CW(RGB_VAD, RGB_VAI) }, - [WIN_BASE] = { ENCODER_CCW_CW(KC_VOLD, KC_VOLU) }, - [WIN_FN] = { ENCODER_CCW_CW(RGB_VAD, RGB_VAI) }, -}; -#endif // ENCODER_MAP_ENABLE diff --git a/keyboards/keychron/q13_pro/iso_encoder/keymaps/via/rules.mk b/keyboards/keychron/q13_pro/iso_encoder/keymaps/via/rules.mk deleted file mode 100644 index f1adcab005..0000000000 --- a/keyboards/keychron/q13_pro/iso_encoder/keymaps/via/rules.mk +++ /dev/null @@ -1,2 +0,0 @@ -VIA_ENABLE = yes -ENCODER_MAP_ENABLE = yes diff --git a/keyboards/keychron/q13_pro/iso_encoder/rules.mk b/keyboards/keychron/q13_pro/iso_encoder/rules.mk deleted file mode 100644 index a77dc6c674..0000000000 --- a/keyboards/keychron/q13_pro/iso_encoder/rules.mk +++ /dev/null @@ -1 +0,0 @@ -# This file intentionally left blank diff --git a/keyboards/keychron/q13_pro/mcuconf.h b/keyboards/keychron/q13_pro/mcuconf.h deleted file mode 100644 index 882d6bd568..0000000000 --- a/keyboards/keychron/q13_pro/mcuconf.h +++ /dev/null @@ -1,36 +0,0 @@ -/* Copyright 2023 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 - -/* Set HCLK to 48 MHz as tradeoff of USB lowest clockand and - * lower power comsumption for bluetooth. Will use dynamic - * clock when STM32L4 is supported in ChibiOS */ -#undef STM32_PLLM_VALUE -#define STM32_PLLM_VALUE 2 - -#undef STM32_PLLN_VALUE -#define STM32_PLLN_VALUE 12 - -#undef STM32_I2C_USE_I2C1 -#define STM32_I2C_USE_I2C1 TRUE - -#ifdef KC_BLUETOOTH_ENABLE -# undef STM32_SERIAL_USE_USART2 -# define STM32_SERIAL_USE_USART2 TRUE -#endif diff --git a/keyboards/keychron/q13_pro/q13_pro.c b/keyboards/keychron/q13_pro/q13_pro.c deleted file mode 100644 index 98796234b9..0000000000 --- a/keyboards/keychron/q13_pro/q13_pro.c +++ /dev/null @@ -1,327 +0,0 @@ -/* 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 . - */ - -#include "q13_pro.h" -#ifdef KC_BLUETOOTH_ENABLE -# include "ckbt51.h" -# include "bluetooth.h" -# include "indicator.h" -# include "transport.h" -# include "battery.h" -# include "bat_level_animation.h" -# include "lpm.h" -#endif - -#ifdef ENABLE_FACTORY_TEST -# include "factory_test.h" -#endif - -typedef struct PACKED { - uint8_t len; - uint8_t keycode[3]; -} key_combination_t; - -static uint32_t factory_timer_buffer = 0; -static uint32_t siri_timer_buffer = 0; -static uint8_t mac_keycode[4] = {KC_LOPT, KC_ROPT, KC_LCMD, KC_RCMD}; - -key_combination_t key_comb_list[4] = { - {2, {KC_LWIN, KC_TAB}}, // Task (win) - {2, {KC_LWIN, KC_E}}, // Files (win) - {3, {KC_LSFT, KC_LGUI, KC_4}}, // Snapshot (mac) - {2, {KC_LWIN, KC_C}} // Cortana (win) -}; - -#ifdef KC_BLUETOOTH_ENABLE -bool firstDisconnect = true; -bool bt_factory_reset = false; -static virtual_timer_t pairing_key_timer; -extern uint8_t g_pwm_buffer[DRIVER_COUNT][192]; - -static void pairing_key_timer_cb(void *arg) { - bluetooth_pairing_ex(*(uint8_t *)arg, NULL); -} -#endif - -bool dip_switch_update_kb(uint8_t index, bool active) { - if (index == 0) { -#ifdef INVERT_OS_SWITCH_STATE - default_layer_set(1UL << (!active ? 2 : 0)); -#else - default_layer_set(1UL << (active ? 2 : 0)); -#endif - } - dip_switch_update_user(index, active); - - return true; -} - -#ifdef KC_BLUETOOTH_ENABLE -bool process_record_kb_bt(uint16_t keycode, keyrecord_t *record) { -#else -bool process_record_kb(uint16_t keycode, keyrecord_t *record) { -#endif - static uint8_t host_idx = 0; - - switch (keycode) { - case KC_MICT: - if (record->event.pressed) { - register_code(KC_MISSION_CONTROL); - } else { - unregister_code(KC_MISSION_CONTROL); - } - return false; // Skip all further processing of this key - case KC_LAPA: - if (record->event.pressed) { - register_code(KC_LAUNCHPAD); - } else { - unregister_code(KC_LAUNCHPAD); - } - return false; // Skip all further processing of this key - case KC_LOPTN: - case KC_ROPTN: - case KC_LCMMD: - case KC_RCMMD: - if (record->event.pressed) { - register_code(mac_keycode[keycode - KC_LOPTN]); - } else { - unregister_code(mac_keycode[keycode - KC_LOPTN]); - } - return false; // Skip all further processing of this key) - case KC_TASK: - case KC_FILE: - case KC_SNAP: - case KC_CTANA: - if (record->event.pressed) { - for (uint8_t i = 0; i < key_comb_list[keycode - KC_TASK].len; i++) - register_code(key_comb_list[keycode - KC_TASK].keycode[i]); - } else { - for (uint8_t i = 0; i < key_comb_list[keycode - KC_TASK].len; i++) - unregister_code(key_comb_list[keycode - KC_TASK].keycode[i]); - } - return false; // Skip all further processing of this key - case KC_SIRI: - if (record->event.pressed && siri_timer_buffer == 0) { - register_code(KC_LGUI); - register_code(KC_SPACE); - siri_timer_buffer = sync_timer_read32() == 0 ? 1 : sync_timer_read32(); - } - return false; // Skip all further processing of this key -#ifdef KC_BLUETOOTH_ENABLE - case BT_HST1 ... BT_HST3: - if (get_transport() == TRANSPORT_BLUETOOTH) { - if (record->event.pressed) { - host_idx = keycode - BT_HST1 + 1; - chVTSet(&pairing_key_timer, TIME_MS2I(2000), (vtfunc_t)pairing_key_timer_cb, &host_idx); - bluetooth_connect_ex(host_idx, 0); - } else { - host_idx = 0; - chVTReset(&pairing_key_timer); - } - } - break; - case BAT_LVL: - if (get_transport() == TRANSPORT_BLUETOOTH && !usb_power_connected()) { - bat_level_animiation_start(battery_get_percentage()); - } - break; -#endif - default: -#ifdef FACTORY_RESET_CHECK - FACTORY_RESET_CHECK(keycode, record); -#endif - break; - } - return true; -} - -#if defined(KC_BLUETOOTH_ENABLE) && defined(ENCODER_ENABLE) -static void encoder_pad_cb(void *param) { - encoder_inerrupt_read((uint32_t)param & 0XFF); -} -#endif - -void keyboard_post_init_kb(void) { - dip_switch_read(true); - -#ifdef KC_BLUETOOTH_ENABLE - /* Currently we don't use this reset pin */ - palSetLineMode(CKBT51_RESET_PIN, PAL_MODE_OUTPUT_PUSHPULL); - palWriteLine(CKBT51_RESET_PIN, PAL_HIGH); - - /* IMPORTANT: DO NOT enable internal pull-up resistor - * as there is an external pull-down resistor. - */ - palSetLineMode(USB_BT_MODE_SELECT_PIN, PAL_MODE_INPUT); - - ckbt51_init(false); - bluetooth_init(); - -# ifdef ENCODER_ENABLE - pin_t encoders_pad_a[NUM_ENCODERS] = ENCODERS_PAD_A; - pin_t encoders_pad_b[NUM_ENCODERS] = ENCODERS_PAD_B; - for (uint32_t i = 0; i < NUM_ENCODERS; i++) { - palEnableLineEvent(encoders_pad_a[i], PAL_EVENT_MODE_BOTH_EDGES); - palEnableLineEvent(encoders_pad_b[i], PAL_EVENT_MODE_BOTH_EDGES); - palSetLineCallback(encoders_pad_a[i], encoder_pad_cb, (void *)i); - palSetLineCallback(encoders_pad_b[i], encoder_pad_cb, (void *)i); - } -# endif -#endif - - keyboard_post_init_user(); -} - -void matrix_scan_kb(void) { - if (factory_timer_buffer && timer_elapsed32(factory_timer_buffer) > 2000) { - factory_timer_buffer = 0; - if (bt_factory_reset) { - bt_factory_reset = false; - palWriteLine(CKBT51_RESET_PIN, PAL_LOW); - wait_ms(5); - palWriteLine(CKBT51_RESET_PIN, PAL_HIGH); - } - } - - if (siri_timer_buffer && sync_timer_elapsed32(siri_timer_buffer) > 500) { - siri_timer_buffer = 0; - unregister_code(KC_LGUI); - unregister_code(KC_SPACE); - } - -#ifdef FACTORY_RESET_TASK - FACTORY_RESET_TASK(); -#endif - matrix_scan_user(); -} - -#ifdef KC_BLUETOOTH_ENABLE -static void ckbt51_param_init(void) { - /* Set bluetooth device name */ - ckbt51_set_local_name(PRODUCT); - wait_ms(10); - /* Set bluetooth parameters */ - module_param_t param = {.event_mode = 0x02, - .connected_idle_timeout = 7200, - .pairing_timeout = 180, - .pairing_mode = 0, - .reconnect_timeout = 5, - .report_rate = 90, - .vendor_id_source = 1, - .verndor_id = 0, // Must be 0x3434 - .product_id = PRODUCT_ID}; - ckbt51_set_param(¶m); - wait_ms(10); -} - -void bluetooth_enter_disconnected_kb(uint8_t host_idx) { - if (bt_factory_reset) { - ckbt51_param_init(); - factory_timer_buffer = timer_read32(); - } - /* CKBT51 bluetooth module boot time is slower, it enters disconnected after boot, - so we place initialization here. */ - if (firstDisconnect && sync_timer_read32() < 1000 && get_transport() == TRANSPORT_BLUETOOTH) { - ckbt51_param_init(); - bluetooth_connect(); - firstDisconnect = false; - } -} - -void ckbt51_default_ack_handler(uint8_t *data, uint8_t len) { - if (data[1] == 0x45) { - module_param_t param = {.event_mode = 0x02, - .connected_idle_timeout = 7200, - .pairing_timeout = 180, - .pairing_mode = 0, - .reconnect_timeout = 5, - .report_rate = 90, - .vendor_id_source = 1, - .verndor_id = 0, // Must be 0x3434 - .product_id = PRODUCT_ID}; - ckbt51_set_param(¶m); - } -} - -void bluetooth_pre_task(void) { - static uint8_t mode = 1; - - if (readPin(USB_BT_MODE_SELECT_PIN) != mode) { - if (readPin(USB_BT_MODE_SELECT_PIN) != mode) { - mode = readPin(USB_BT_MODE_SELECT_PIN); - set_transport(mode == 0 ? TRANSPORT_BLUETOOTH : TRANSPORT_USB); - } - } -} -#endif - -void battery_calculte_voltage(uint16_t value) { - uint16_t voltage = ((uint32_t)value) * 2246 / 1000; - -#ifdef LED_MATRIX_ENABLE - if (led_matrix_is_enabled()) { - uint32_t totalBuf = 0; - - for (uint8_t i = 0; i < DRIVER_COUNT; i++) - for (uint8_t j = 0; j < 192; j++) - totalBuf += g_pwm_buffer[i][j]; - /* We assumpt it is linear relationship*/ - voltage += (30 * totalBuf / LED_MATRIX_LED_COUNT / 255); - } -#endif -#ifdef RGB_MATRIX_ENABLE - if (rgb_matrix_is_enabled()) { - uint32_t totalBuf = 0; - - for (uint8_t i = 0; i < DRIVER_COUNT; i++) - for (uint8_t j = 0; j < 192; j++) - totalBuf += g_pwm_buffer[i][j]; - /* We assumpt it is linear relationship*/ - uint32_t compensation = 60 * totalBuf / RGB_MATRIX_LED_COUNT / 255 / 3; - voltage += compensation; - } -#endif - battery_set_voltage(voltage); -} - -bool via_command_kb(uint8_t *data, uint8_t length) { - switch (data[0]) { -#ifdef KC_BLUETOOTH_ENABLE - case 0xAA: - ckbt51_dfu_rx(data, length); - break; -#endif -#ifdef ENABLE_FACTORY_TEST - case 0xAB: - factory_test_rx(data, length); - break; -#endif - default: - return false; - } - - return true; -} - -#if !defined(VIA_ENABLE) -void raw_hid_receive(uint8_t *data, uint8_t length) { - switch (data[0]) { - case RAW_HID_CMD: - via_command_kb(data, length); - break; - } -} -#endif diff --git a/keyboards/keychron/q13_pro/q13_pro.h b/keyboards/keychron/q13_pro/q13_pro.h deleted file mode 100644 index bc6e1effc8..0000000000 --- a/keyboards/keychron/q13_pro/q13_pro.h +++ /dev/null @@ -1,57 +0,0 @@ -/* 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 . - */ - -#pragma once - -#include "quantum.h" -#ifdef VIA_ENABLE -# include "via.h" -#endif - -#define ___ KC_NO -#define KC_MICT QK_KB_0 -#define KC_LAPA QK_KB_1 - -#ifdef VIA_ENABLE -# define USER_START QK_KB_2 -#else -# define USER_START SAFE_RANGE -#endif - -// clang-format off -enum { - KC_LOPTN = USER_START, - KC_ROPTN, - KC_LCMMD, - KC_RCMMD, - KC_TASK, - KC_FILE, - KC_SNAP, - KC_CTANA, - KC_SIRI, -#ifdef KC_BLUETOOTH_ENABLE - BT_HST1, - BT_HST2, - BT_HST3, - BAT_LVL, -#else - BT_HST1 = KC_TRNS, - BT_HST2 = KC_TRNS, - BT_HST3 = KC_TRNS, - BAT_LVL = KC_TRNS, -#endif - NEW_SAFE_RANGE -}; diff --git a/keyboards/keychron/q13_pro/readme.md b/keyboards/keychron/q13_pro/readme.md deleted file mode 100644 index 25b62a19c9..0000000000 --- a/keyboards/keychron/q13_pro/readme.md +++ /dev/null @@ -1,21 +0,0 @@ -# Keychron Q13 Pro - -A customizable 96% ergonomic keyboard. - -* Keyboard Maintainer: [Keychron](https://github.com/keychron) -* Hardware Supported: Keychron Q13 Pro -* Hardware Availability:[Keychron](https://www.keychron.com/) - -Make example for this keyboard (after setting up your build environment): - - make keychron/q13_pro/ansi_encoder:default - make keychron/q13_pro/iso_encoder:default - -Flashing example for this keyboard: - - make keychron/q13_pro/ansi_encoder:default:flash - make keychron/q13_pro/iso_encoder:default:flash - -**Reset Key**: Connect the USB cable, toggle mode switch to "Off", hold down the *Esc* key or reset button underneath space bar, then toggle then switch to "Cable". - -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). diff --git a/keyboards/keychron/q13_pro/rules.mk b/keyboards/keychron/q13_pro/rules.mk deleted file mode 100644 index f995372f9c..0000000000 --- a/keyboards/keychron/q13_pro/rules.mk +++ /dev/null @@ -1,6 +0,0 @@ -# Enter lower-power sleep mode when on the ChibiOS idle thread -OPT_DEFS += -DCORTEX_ENABLE_WFI_IDLE=TRUE -OPT_DEFS += -DNO_USB_STARTUP_CHECK -DENABLE_FACTORY_TEST - -include keyboards/keychron/bluetooth/bluetooth.mk -include keyboards/keychron/common/common.mk diff --git a/keyboards/keychron/q13_pro/via_json/q13_pro_ansi_encoder.json b/keyboards/keychron/q13_pro/via_json/q13_pro_ansi_encoder.json deleted file mode 100644 index c63917cec4..0000000000 --- a/keyboards/keychron/q13_pro/via_json/q13_pro_ansi_encoder.json +++ /dev/null @@ -1,432 +0,0 @@ -{ - "name": "Keychron Q13 Pro ANSI knob", - "vendorId": "0x3434", - "productId": "0x06D0", - "keycodes": ["qmk_lighting"], - "menus": [ - { - "label": "Lighting", - "content": [ - { - "label": "Backlight", - "content": [ - { - "label": "Brightness", - "type": "range", - "options": [0, 255], - "content": ["id_qmk_rgb_matrix_brightness", 3, 1] - }, - { - "label": "Effect", - "type": "dropdown", - "content": ["id_qmk_rgb_matrix_effect", 3, 2], - "options": [ - ["None", 0], - ["Solid Color", 1], - ["Breathing", 2], - ["Band Spiral Val", 3], - ["Cycle All", 4], - ["Cycle Left Right", 5], - ["Cycle Up Down", 6], - ["Rainbow Moving Chevron", 7], - ["Cycle Out In", 8], - ["Cycle Out In Dual", 9], - ["Cycle Pinwheel", 10], - ["Cycle Spiral", 11], - ["Dual Beacon", 12], - ["Rainbow Beacon", 13], - ["Jellybean Raindrops", 14], - ["Pixel Rain", 15], - ["Typing Heatmap", 16], - ["Digital Rain", 17], - ["Reactive Simple", 18], - ["Reactive Multiwide", 19], - ["Reactive Multinexus", 20], - ["Splash", 21], - ["Solid Splash", 22] - ] - }, - { - "showIf": "{id_qmk_rgb_matrix_effect} > 1", - "label": "Effect Speed", - "type": "range", - "options": [0, 255], - "content": ["id_qmk_rgb_matrix_effect_speed", 3, 3] - }, - { - "showIf": "{id_qmk_rgb_matrix_effect} != 0 && ( {id_qmk_rgb_matrix_effect} < 4 || {id_qmk_rgb_matrix_effect} == 18 || ({id_qmk_rgb_matrix_effect} > 17 && {id_qmk_rgb_matrix_effect} != 21) ) ", - "label": "Color", - "type": "color", - "content": ["id_qmk_rgb_matrix_color", 3, 4] - } - ] - } - ] - } - ], - "customKeycodes": [ - {"name": "Left Option", "title": "Left Option", "shortName": "LOpt"}, - {"name": "Right Option", "title": "Right Option", "shortName": "ROpt"}, - {"name": "Left Cmd", "title": "Left Command", "shortName": "LCmd"}, - {"name": "Right Cmd", "title": "Right Command", "shortName": "RCmd"}, - {"name": "Task View", "title": "Task View in Windows", "shortName": "Task"}, - {"name": "File Explorer", "title": "File Explorer in Windows", "shortName": "File"}, - {"name": "Screen shot", "title": "Screenshot in macOS", "shortName": "SShot"}, - {"name": "Cortana", "title": "Cortana in Windows", "shortName": "Cortana"}, - {"name": "Siri", "title": "Siri in macOS", "shortName": "Siri"}, - {"name": "Bluetooth Host 1", "title": "Bluetooth Host 1", "shortName": "BTH1"}, - {"name": "Bluetooth Host 2", "title": "Bluetooth Host 2", "shortName": "BTH2"}, - {"name": "Bluetooth Host 3", "title": "Bluetooth Host 3", "shortName": "BTH3"}, - {"name": "Battery Level", "title": "Show battery level", "shortName": "Batt"} - ], - "matrix": {"rows": 6, "cols": 19}, - "layouts": { - "keymap": [ - [ - { - "x": 0.5 - }, - "0,0\n\n\n\n\n\n\n\n\ne0", - { - "x": 0.5, - "c": "#777777" - }, - "0,1\nESC", - { - "x": 0.25, - "c": "#cccccc" - }, - "0,2", - "0,3", - { - "x": 9.35 - }, - "0,12", - "0,13", - { - "x": 0.45, - "c": "#aaaaaa" - }, - "0,14", - { - "x": 0.7, - "c": "#cccccc" - }, - "0,15", - "0,16", - "0,17", - "0,18" - ], - [ - { - "y": 0.25, - "x": 0.75 - }, - "1,0", - { - "x": 0.5, - "c": "#aaaaaa" - }, - "1,1", - { - "c": "#cccccc" - }, - "1,2", - "1,3", - { - "x": 8.65 - }, - "1,12", - "1,13", - { - "c": "#aaaaaa", - "w": 2 - }, - "1,14", - { - "x": 0.85, - "c": "#cccccc" - }, - "1,15", - "1,16", - "1,17", - "1,18" - ], - [ - { - "x": 0.5 - }, - "2,0", - { - "x": 0.5, - "c": "#aaaaaa", - "w": 1.5 - }, - "2,1", - { - "c": "#cccccc" - }, - "2,2", - { - "x": 9.9 - }, - "2,12", - "2,13", - { - "c": "#aaaaaa", - "w": 1.75 - }, - "2,14", - { - "x": 0.6, - "c": "#cccccc" - }, - "2,15", - "2,16", - "2,17", - { - "h": 2 - }, - "2,18" - ], - [ - { - "x": 0.25 - }, - "3,0", - { - "x": 0.5, - "c": "#aaaaaa", - "w": 1.75 - }, - "3,1", - { - "c": "#cccccc" - }, - "3,2", - { - "x": 9.5 - }, - "3,12", - "3,13", - { - "c": "#777777", - "w": 2.25 - }, - "3,14", - { - "x": 0.5, - "c": "#cccccc" - }, - "3,15", - "3,16", - "3,17" - ], - [ - "4,0", - { - "x": 0.5, - "c": "#aaaaaa", - "w": 2.25 - }, - "4,1", - { - "c": "#cccccc" - }, - "4,3", - { - "x": 9.75 - }, - "4,13", - { - "c": "#aaaaaa", - "w": 1.75 - }, - "4,14", - { - "x": 1.5, - "c": "#cccccc" - }, - "4,16", - "4,17", - "4,18", - { - "h": 2 - }, - "5,18" - ], - [ - { - "y": -0.75, - "x": 17.5, - "c": "#777777" - }, - "4,15" - ], - [ - { - "y": -0.25, - "c": "#cccccc" - }, - "5,0", - { - "x": 0.5, - "c": "#aaaaaa", - "w": 1.25 - }, - "5,1", - { - "w": 1.25 - }, - "5,2", - { - "x": 15.75, - "c": "#cccccc" - }, - "5,16", - "5,17" - ], - [ - { - "y": -0.75, - "x": 16.5, - "c": "#777777" - }, - "5,13", - "5,14", - "5,15" - ], - [ - { - "r": 6, - "y": -7.05, - "x": 5.4, - "c": "#cccccc" - }, - "0,4", - "0,5", - { - "x": 0.25, - "c": "#aaaaaa" - }, - "0,6", - "0,7" - ], - [ - { - "y": 0.25, - "x": 5.55, - "c": "#cccccc" - }, - "1,4", - "1,5", - "1,6", - "1,7" - ], - [ - { - "x": 4.9 - }, - "2,3", - "2,4", - "2,5", - "2,6" - ], - [ - { - "x": 5 - }, - "3,3", - "3,4", - "3,5", - "3,6" - ], - [ - { - "x": 5.35 - }, - "4,4", - "4,5", - "4,6", - "4,7" - ], - [ - { - "x": 5.35, - "c": "#aaaaaa", - "w": 1.25 - }, - "5,3", - { - "w": 2.25 - }, - "5,4", - "5,7" - ], - [ - { - "r": -6, - "y": -4.25, - "x": 10.05 - }, - "0,8", - "0,9", - { - "x": 0.25, - "c": "#cccccc" - }, - "0,10", - "0,11" - ], - [ - { - "y": 0.25, - "x": 9.4 - }, - "1,8", - "1,9", - "1,10", - "1,11" - ], - [ - { - "x": 8.9 - }, - "2,7", - "2,8", - "2,9", - "2,10", - "2,11" - ], - [ - { - "x": 9.4 - }, - "3,8", - "3,9", - "3,10", - "3,11" - ], - [ - { - "x": 8.85 - }, - "4,8", - "4,9", - "4,10", - "4,11", - "4,12" - ], - [ - { - "x": 8.85, - "c": "#aaaaaa", - "w": 2.55 - }, - "5,8", - "5,9", - "5,10" - ] - ] - } -} diff --git a/keyboards/keychron/q13_pro/via_json/q13_pro_iso_encoder.json b/keyboards/keychron/q13_pro/via_json/q13_pro_iso_encoder.json deleted file mode 100644 index c386ba880b..0000000000 --- a/keyboards/keychron/q13_pro/via_json/q13_pro_iso_encoder.json +++ /dev/null @@ -1,437 +0,0 @@ -{ - "name": "Keychron Q13 Pro ISO knob", - "vendorId": "0x3434", - "productId": "0x06D1", - "keycodes": ["qmk_lighting"], - "menus": [ - { - "label": "Lighting", - "content": [ - { - "label": "Backlight", - "content": [ - { - "label": "Brightness", - "type": "range", - "options": [0, 255], - "content": ["id_qmk_rgb_matrix_brightness", 3, 1] - }, - { - "label": "Effect", - "type": "dropdown", - "content": ["id_qmk_rgb_matrix_effect", 3, 2], - "options": [ - ["None", 0], - ["Solid Color", 1], - ["Breathing", 2], - ["Band Spiral Val", 3], - ["Cycle All", 4], - ["Cycle Left Right", 5], - ["Cycle Up Down", 6], - ["Rainbow Moving Chevron", 7], - ["Cycle Out In", 8], - ["Cycle Out In Dual", 9], - ["Cycle Pinwheel", 10], - ["Cycle Spiral", 11], - ["Dual Beacon", 12], - ["Rainbow Beacon", 13], - ["Jellybean Raindrops", 14], - ["Pixel Rain", 15], - ["Typing Heatmap", 16], - ["Digital Rain", 17], - ["Reactive Simple", 18], - ["Reactive Multiwide", 19], - ["Reactive Multinexus", 20], - ["Splash", 21], - ["Solid Splash", 22] - ] - }, - { - "showIf": "{id_qmk_rgb_matrix_effect} > 1", - "label": "Effect Speed", - "type": "range", - "options": [0, 255], - "content": ["id_qmk_rgb_matrix_effect_speed", 3, 3] - }, - { - "showIf": "{id_qmk_rgb_matrix_effect} != 0 && ( {id_qmk_rgb_matrix_effect} < 4 || {id_qmk_rgb_matrix_effect} == 18 || ({id_qmk_rgb_matrix_effect} > 17 && {id_qmk_rgb_matrix_effect} != 21) ) ", - "label": "Color", - "type": "color", - "content": ["id_qmk_rgb_matrix_color", 3, 4] - } - ] - } - ] - } - ], - "customKeycodes": [ - {"name": "Left Option", "title": "Left Option", "shortName": "LOpt"}, - {"name": "Right Option", "title": "Right Option", "shortName": "ROpt"}, - {"name": "Left Cmd", "title": "Left Command", "shortName": "LCmd"}, - {"name": "Right Cmd", "title": "Right Command", "shortName": "RCmd"}, - {"name": "Task View", "title": "Task View in Windows", "shortName": "Task"}, - {"name": "File Explorer", "title": "File Explorer in Windows", "shortName": "File"}, - {"name": "Screen shot", "title": "Screenshot in macOS", "shortName": "SShot"}, - {"name": "Cortana", "title": "Cortana in Windows", "shortName": "Cortana"}, - {"name": "Siri", "title": "Siri in macOS", "shortName": "Siri"}, - {"name": "Bluetooth Host 1", "title": "Bluetooth Host 1", "shortName": "BTH1"}, - {"name": "Bluetooth Host 2", "title": "Bluetooth Host 2", "shortName": "BTH2"}, - {"name": "Bluetooth Host 3", "title": "Bluetooth Host 3", "shortName": "BTH3"}, - {"name": "Battery Level", "title": "Show battery level", "shortName": "Batt"} - ], - "matrix": {"rows": 6, "cols": 19}, - "layouts": { - "keymap": [ - [ - { - "x": 0.5 - }, - "0,0\n\n\n\n\n\n\n\n\ne0", - { - "x": 0.5, - "c": "#777777" - }, - "0,1\nESC", - { - "x": 0.25, - "c": "#cccccc" - }, - "0,2", - "0,3", - { - "x": 9.35 - }, - "0,12", - "0,13", - { - "x": 0.45, - "c": "#aaaaaa" - }, - "0,14", - { - "x": 0.7, - "c": "#cccccc" - }, - "0,15", - "0,16", - "0,17", - "0,18" - ], - [ - { - "y": 0.25, - "x": 0.75 - }, - "1,0", - { - "x": 0.5, - "c": "#aaaaaa" - }, - "1,1", - { - "c": "#cccccc" - }, - "1,2", - "1,3", - { - "x": 8.65 - }, - "1,12", - "1,13", - { - "c": "#aaaaaa", - "w": 2 - }, - "1,14", - { - "x": 0.85, - "c": "#cccccc" - }, - "1,15", - "1,16", - "1,17", - "1,18" - ], - [ - { - "x": 0.5 - }, - "2,0", - { - "x": 0.5, - "c": "#aaaaaa", - "w": 1.5 - }, - "2,1", - { - "c": "#cccccc" - }, - "2,2", - { - "x": 10.25 - }, - "2,12", - "2,13", - { - "x": 0.25, - "c": "#777777", - "w": 1.25, - "h": 2, - "w2": 1.5, - "h2": 1, - "x2": -0.25 - }, - "2,14", - { - "x": 0.5, - "c": "#cccccc" - }, - "2,15", - "2,16", - "2,17", - { - "h": 2 - }, - "2,18" - ], - [ - { - "x": 0.25 - }, - "3,0", - { - "x": 0.5, - "c": "#aaaaaa", - "w": 1.75 - }, - "3,1", - { - "c": "#cccccc" - }, - "3,2", - { - "x": 9.5 - }, - "3,12", - "3,13", - { - "c": "#aaaaaa" - }, - "3,14", - { - "x": 1.75, - "c": "#cccccc" - }, - "3,15", - "3,16", - "3,17" - ], - [ - "4,0", - { - "x": 0.5, - "c": "#aaaaaa", - "w": 1.25 - }, - "4,1", - "4,2", - { - "c": "#cccccc" - }, - "4,3", - { - "x": 9.75 - }, - "4,13", - { - "c": "#aaaaaa", - "w": 1.75 - }, - "4,14", - { - "x": 1.5, - "c": "#cccccc" - }, - "4,16", - "4,17", - "4,18", - { - "h": 2 - }, - "5,18" - ], - [ - { - "y": -0.75, - "x": 17.5, - "c": "#777777" - }, - "4,15" - ], - [ - { - "y": -0.25, - "c": "#cccccc" - }, - "5,0", - { - "x": 0.5, - "c": "#aaaaaa", - "w": 1.25 - }, - "5,1", - { - "w": 1.25 - }, - "5,2", - { - "x": 15.75, - "c": "#cccccc" - }, - "5,16", - "5,17" - ], - [ - { - "y": -0.75, - "x": 16.5, - "c": "#777777" - }, - "5,13", - "5,14", - "5,15" - ], - [ - { - "r": 6, - "y": -7.05, - "x": 5.4, - "c": "#cccccc" - }, - "0,4", - "0,5", - { - "x": 0.25, - "c": "#aaaaaa" - }, - "0,6", - "0,7" - ], - [ - { - "y": 0.25, - "x": 5.55, - "c": "#cccccc" - }, - "1,4", - "1,5", - "1,6", - "1,7" - ], - [ - { - "x": 4.9 - }, - "2,3", - "2,4", - "2,5", - "2,6" - ], - [ - { - "x": 5 - }, - "3,3", - "3,4", - "3,5", - "3,6" - ], - [ - { - "x": 5.35 - }, - "4,4", - "4,5", - "4,6", - "4,7" - ], - [ - { - "x": 5.35, - "c": "#aaaaaa", - "w": 1.25 - }, - "5,3", - { - "w": 2.25 - }, - "5,4", - "5,7" - ], - [ - { - "r": -6, - "y": -4.25, - "x": 10.05 - }, - "0,8", - "0,9", - { - "x": 0.25, - "c": "#cccccc" - }, - "0,10", - "0,11" - ], - [ - { - "y": 0.25, - "x": 9.4 - }, - "1,8", - "1,9", - "1,10", - "1,11" - ], - [ - { - "x": 8.9 - }, - "2,7", - "2,8", - "2,9", - "2,10", - "2,11" - ], - [ - { - "x": 9.4 - }, - "3,8", - "3,9", - "3,10", - "3,11" - ], - [ - { - "x": 8.85 - }, - "4,8", - "4,9", - "4,10", - "4,11", - "4,12" - ], - [ - { - "x": 8.85, - "c": "#aaaaaa", - "w": 2.55 - }, - "5,8", - "5,9", - "5,10" - ] - ] - } -} diff --git a/keyboards/keychron/q14_max/ansi_encoder/ansi_encoder.c b/keyboards/keychron/q14_max/ansi_encoder/ansi_encoder.c deleted file mode 100644 index 5f34e1c306..0000000000 --- a/keyboards/keychron/q14_max/ansi_encoder/ansi_encoder.c +++ /dev/null @@ -1,171 +0,0 @@ -/* Copyright 2024 @ 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/>. - */ - -#include "quantum.h" - -// clang-format off - -#ifdef RGB_MATRIX_ENABLE -const snled27351_led_t g_snled27351_leds[RGB_MATRIX_LED_COUNT] = { -/* Refer to SNLED27351 manual for these locations - * driver - * | R location - * | | G location - * | | | B location - * | | | | */ - {0, G_2, I_2, H_2}, - {0, G_3, I_3, H_3}, - {0, G_4, I_4, H_4}, - {0, G_5, I_5, H_5}, - {0, G_6, I_6, H_6}, - {0, G_7, I_7, H_7}, - {0, G_8, I_8, H_8}, - {0, G_9, I_9, H_9}, - {0, G_10, I_10, H_10}, - {0, G_11, I_11, H_11}, - {0, G_14, I_14, H_14}, - {0, G_15, I_15, H_15}, - {0, G_16, I_16, H_16}, - {0, J_16, L_16, K_16}, - {0, J_15, L_15, K_15}, - {0, J_14, L_14, K_14}, - {0, J_13, L_13, K_13}, - {0, J_12, L_12, K_12}, - - {0, D_1, F_1, E_1}, - {0, D_2, F_2, E_2}, - {0, D_3, F_3, E_3}, - {0, D_4, F_4, E_4}, - {0, D_5, F_5, E_5}, - {0, D_6, F_6, E_6}, - {0, D_7, F_7, E_7}, - {0, D_8, F_8, E_8}, - {0, D_9, F_9, E_9}, - {0, D_10, F_10, E_10}, - {0, D_11, F_11, E_11}, - {0, D_13, F_13, E_13}, - {0, D_14, F_14, E_14}, - {0, D_15, F_15, E_15}, - {0, D_16, F_16, E_16}, - {0, J_11, L_11, K_11}, - {0, J_10, L_10, K_10}, - {0, J_9, L_9, K_9}, - {0, J_8, L_8, K_8}, - - {0, A_1, C_1, B_1}, - {0, A_2, C_2, B_2}, - {0, A_3, C_3, B_3}, - {0, A_4, C_4, B_4}, - {0, A_5, C_5, B_5}, - {0, A_6, C_6, B_6}, - {0, A_7, C_7, B_7}, - {0, A_8, C_8, B_8}, - {0, A_9, C_9, B_9}, - {0, A_10, C_10, B_10}, - {0, A_12, C_12, B_12}, - {0, A_13, C_13, B_13}, - {0, A_14, C_14, B_14}, - {0, A_15, C_15, B_15}, - {0, A_16, C_16, B_16}, - {0, J_7, L_7, K_7}, - {0, J_6, L_6, K_6}, - {0, J_5, L_5, K_5}, - {0, J_4, L_4, K_4}, - - {1, G_16, I_16, H_16}, - {1, G_15, I_15, H_15}, - {1, G_14, I_14, H_14}, - {1, G_12, I_12, H_12}, - {1, G_11, I_11, H_11}, - {1, G_10, I_10, H_10}, - {1, G_9, I_9, H_9}, - {1, G_8, I_8, H_8}, - {1, G_7, I_7, H_7}, - {1, G_5, I_5, H_5}, - {1, G_4, I_4, H_4}, - {1, G_3, I_3, H_3}, - {1, G_2, I_2, H_2}, - {1, G_1, I_1, H_1}, - {1, J_7, L_7, K_7}, - {1, J_8, L_8, K_8}, - {1, J_9, L_9, K_9}, - - {1, D_16, F_16, E_16}, - {1, D_15, F_15, E_15}, - {1, D_14, F_14, E_14}, - {1, D_13, F_13, E_13}, - {1, D_12, F_12, E_12}, - {1, D_10, F_10, E_10}, - {1, D_9, F_9, E_9}, - {1, D_8, F_8, E_8}, - {1, D_7, F_7, E_7}, - {1, D_6, F_6, E_6}, - {1, D_5, F_5, E_5}, - {1, D_4, F_4, E_4}, - {1, D_3, F_3, E_3}, - {1, D_2, F_2, E_2}, - {1, D_1, F_1, E_1}, - {1, J_4, L_4, K_4}, - {1, J_5, L_5, K_5}, - {1, J_6, L_6, K_6}, - - {1, A_16, C_16, B_16}, - {1, A_14, C_14, B_14}, - {1, A_12, C_12, B_12}, - {1, A_11, C_11, B_11}, - {1, A_9, C_9, B_9}, - {1, A_7, C_7, B_7}, - {1, A_6, C_6, B_6}, - {1, A_4, C_4, B_4}, - {1, A_2, C_2, B_2}, - {1, A_1, C_1, B_1}, - {1, J_1, L_1, K_1}, - {1, J_2, L_2, K_2}, - {1, J_3, L_3, K_3}, -}; - -#define __ NO_LED - -led_config_t g_led_config = { - { - // Key Matrix to LED Index - { __, 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, 40, 41, 42, 43, 44, 45, 46, __, 47, 48, 49, 50, 51, 52, 53, 54, __, 55 }, - { 56, 57, 58, __, 59, 60, 61, 62, 63, 64, __, 65, 66, 67, 68, 69, 70, 71, __, __, 72 }, - { 73, 74, 75, 76, 77, __, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, __, 90, __ }, - { 91, __, 92, __, 93, 94, __, 95, __, 96, 97, __, 98, __, 99,100, __, __,101,102,103 }, - }, - { - // LED Index to Physical Position - {10, 0}, {20, 0}, {30, 0}, {47, 0}, {62, 0}, {73, 0}, {84, 1}, {95, 3}, {107,6}, {117, 8}, {135, 8}, {146, 6}, {158, 2}, {168, 1}, {180,0}, {191, 0}, {206,0}, {221,0}, - {0,14}, {10,14}, {20,14}, {30,14}, {53,14}, {64,14}, {74,13}, {86,15}, {96,17}, {106,20},{116,22}, {131,22}, {141,20}, {152,17}, {162,15}, {173,13}, {184,14}, {200,14}, {221,14}, - {0,24}, {10,24}, {20,24}, {30,29}, {53,24}, {66,24}, {78,24}, {88,24}, {99,24}, {109,24},{128,33}, {139,31}, {149,29}, {159,27}, {169,24}, {181,24}, {192,24}, {205,24}, {222,24}, - {0,34}, {10,34}, {20,34}, {53,34}, {67,34}, {79,35}, {89,37}, {99,39}, {109,42},{133,43}, {143,40}, {154,38}, {164,36}, {176,35}, {186,35}, {203,35}, {224,35}, - {0,45}, {10,45}, {20,45}, {30,50}, {53,45}, {70,45}, {82,46}, {92,48}, {102,51},{112,53},{128,54}, {138,52}, {148,50}, {158,48}, {169,46}, {180,45}, {195,45}, {212,47}, - {5,55}, {20,55}, {48,55}, {61,55}, {81,57}, {99,61}, {115,64}, {139,63}, {158,59}, {168,56}, {202,58}, {212,58}, {223,58} - }, - { - // RGB LED Index to Flag - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - } -}; -#endif diff --git a/keyboards/keychron/q14_max/ansi_encoder/config.h b/keyboards/keychron/q14_max/ansi_encoder/config.h deleted file mode 100644 index 00b00f5571..0000000000 --- a/keyboards/keychron/q14_max/ansi_encoder/config.h +++ /dev/null @@ -1,54 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#pragma once - -#ifdef RGB_MATRIX_ENABLE -/* RGB Matrix driver configuration */ -# define DRIVER_COUNT 2 -# define RGB_MATRIX_LED_COUNT 104 - -# define SPI_SCK_PIN A5 -# define SPI_MISO_PIN A6 -# define SPI_MOSI_PIN A7 - -# define DRIVER_CS_PINS \ - { B8, B9 } -# define SNLED23751_SPI_DIVISOR 16 -# define SPI_DRIVER SPID1 - -/* Set LED driver current */ -# define SNLED27351_CURRENT_TUNE \ - { 0x2C, 0x2C, 0x2C, 0x2C, 0x2C, 0x2C, 0x2C, 0x2C, 0x2C, 0x2C, 0x2C, 0x2C } - -/* Set to infinit, which is use in USB mode by default */ -# define RGB_MATRIX_TIMEOUT RGB_MATRIX_TIMEOUT_INFINITE - -/* Allow shutdown of led driver to save power */ -# define RGB_MATRIX_DRIVER_SHUTDOWN_ENABLE -/* Turn off backlight on low brightness to save power */ -# define RGB_MATRIX_BRIGHTNESS_TURN_OFF_VAL 32 - -/* Indications */ -# define CAPS_LOCK_INDEX 59 -# define LOW_BAT_IND_INDEX \ - { 96, 98 } -# define NUM_LOCK_INDEX 18 - -# define RGB_MATRIX_KEYPRESSES -# define RGB_MATRIX_FRAMEBUFFER_EFFECTS - -#endif diff --git a/keyboards/keychron/q14_max/ansi_encoder/info.json b/keyboards/keychron/q14_max/ansi_encoder/info.json deleted file mode 100644 index 71d8c9bb96..0000000000 --- a/keyboards/keychron/q14_max/ansi_encoder/info.json +++ /dev/null @@ -1,122 +0,0 @@ -{ - "usb": { - "pid": "0x08E0", - "device_version": "1.0.0" - }, - "layouts": { - "LAYOUT_105_ansi": { - "layout": [ - {"matrix":[0,0], "x":0, "y":0.8}, - {"matrix":[0,1], "x":1, "y":0.8}, - {"matrix":[0,2], "x":2, "y":0.8}, - {"matrix":[0,3], "x":3, "y":0.8}, - {"matrix":[0,4], "x":4.5, "y":0.8}, - {"matrix":[0,5], "x":6, "y":0.8}, - {"matrix":[0,6], "x":7, "y":0.8}, - {"matrix":[0,7], "x":8.25, "y":0}, - {"matrix":[0,8], "x":9.25, "y":0}, - {"matrix":[0,9], "x":10.5, "y":0}, - {"matrix":[0,10], "x":11.5, "y":0}, - {"matrix":[0,13], "x":12.75, "y":2.6}, - {"matrix":[0,14], "x":13.75, "y":2.6}, - {"matrix":[0,15], "x":15, "y":2.6}, - {"matrix":[0,16], "x":16, "y":2.6}, - {"matrix":[0,17], "x":17.3, "y":0.8}, - {"matrix":[0,18], "x":18.3, "y":0.8}, - {"matrix":[0,19], "x":19.75, "y":0.8}, - {"matrix":[0,20], "x":21.25, "y":0.8}, - - {"matrix":[1,0], "x":0, "y":2.3}, - {"matrix":[1,1], "x":1, "y":2.3}, - {"matrix":[1,2], "x":2, "y":2.3}, - {"matrix":[1,3], "x":3, "y":2.3}, - {"matrix":[1,4], "x":5.25, "y":2.3}, - {"matrix":[1,5], "x":6.25, "y":2.3}, - {"matrix":[1,6], "x":7.25, "y":2.1}, - {"matrix":[1,7], "x":8.6, "y":1.35}, - {"matrix":[1,8], "x":9.6, "y":1.35}, - {"matrix":[1,9], "x":10.6, "y":1.35}, - {"matrix":[1,10], "x":11.6, "y":1.35}, - {"matrix":[1,12], "x":12.5, "y":4.0}, - {"matrix":[1,13], "x":13.5, "y":4.0}, - {"matrix":[1,14], "x":14.5, "y":4.0}, - {"matrix":[1,15], "x":15.5, "y":4.0}, - {"matrix":[1,16], "x":16.95, "y":2.2}, - {"matrix":[1,17], "x":17.95, "y":2.1}, - {"matrix":[1,18], "x":18.95, "y":2.2, "w":2}, - {"matrix":[1,20], "x":21.35, "y":2.2}, - - {"matrix":[2,0], "x":0, "y":3.3}, - {"matrix":[2,1], "x":1, "y":3.3}, - {"matrix":[2,2], "x":2, "y":3.3}, - {"matrix":[2,3], "x":3, "y":3.3, "h":2}, - {"matrix":[2,4], "x":5, "y":3.3, "w":1.5}, - {"matrix":[2,5], "x":6.5, "y":3.3}, - {"matrix":[2,6], "x":8.13, "y":2.35}, - {"matrix":[2,7], "x":9.13, "y":2.335}, - {"matrix":[2,8], "x":10.13, "y":2.35}, - {"matrix":[2,9], "x":11.13, "y":2.35}, - {"matrix":[2,11], "x":12.1, "y":5.0}, - {"matrix":[2,12], "x":13.1, "y":5.0}, - {"matrix":[2,13], "x":14.1, "y":5.0}, - {"matrix":[2,14], "x":15.1, "y":5.0}, - {"matrix":[2,15], "x":16.1, "y":5.0}, - {"matrix":[2,16], "x":17.65, "y":3.2}, - {"matrix":[2,17], "x":18.65, "y":3.2}, - {"matrix":[2,18], "x":19.65, "y":3.2, "w":1.5}, - {"matrix":[2,20], "x":21.55, "y":3.2}, - - {"matrix":[3,0], "x":0, "y":4.3}, - {"matrix":[3,1], "x":1, "y":4.3}, - {"matrix":[3,2], "x":2, "y":4.3}, - {"matrix":[3,4], "x":4.75, "y":4.3, "w":1.75}, - {"matrix":[3,5], "x":6.5, "y":4.3}, - {"matrix":[3,6], "x":8.3, "y":3.35}, - {"matrix":[3,7], "x":9.3, "y":3.35}, - {"matrix":[3,8], "x":10.3, "y":3.35}, - {"matrix":[3,9], "x":11.3, "y":3.35}, - {"matrix":[3,11], "x":12.45, "y":6.0}, - {"matrix":[3,12], "x":13.45, "y":6.0}, - {"matrix":[3,13], "x":14.45, "y":6.0}, - {"matrix":[3,14], "x":15.45, "y":6.0}, - {"matrix":[3,15], "x":17.1, "y":4.2}, - {"matrix":[3,16], "x":18.1, "y":4.2}, - {"matrix":[3,17], "x":19.1, "y":4.2, "w":2.25}, - {"matrix":[3,20], "x":21.75, "y":4.2}, - - {"matrix":[4,0], "x":0, "y":5.3}, - {"matrix":[4,1], "x":1, "y":5.3}, - {"matrix":[4,2], "x":2, "y":5.3}, - {"matrix":[4,3], "x":3, "y":5.3, "h":2}, - {"matrix":[4,4], "x":4.5, "y":5.3, "w":2.25}, - {"matrix":[4,6], "x":6.75, "y":5.3}, - {"matrix":[4,7], "x":8.65, "y":4.35}, - {"matrix":[4,8], "x":9.65, "y":4.35}, - {"matrix":[4,9], "x":10.65, "y":4.35}, - {"matrix":[4,10], "x":11.65, "y":4.35}, - {"matrix":[4,11], "x":12, "y":7.0}, - {"matrix":[4,12], "x":13, "y":7.0}, - {"matrix":[4,13], "x":14, "y":7.0}, - {"matrix":[4,14], "x":15, "y":7.0}, - {"matrix":[4,15], "x":16, "y":7.0}, - {"matrix":[4,16], "x":17.75, "y":5.2}, - {"matrix":[4,17], "x":18.75, "y":5.2, "w":1.75}, - {"matrix":[4,19], "x":20.75, "y":5.55}, - - {"matrix":[5,0], "x":0, "y":6.3, "w":2}, - {"matrix":[5,2], "x":2, "y":6.3}, - {"matrix":[5,4], "x":4.5, "y":6.3, "w":1.25}, - {"matrix":[5,5], "x":5.75, "y":6.3, "w":1.25}, - {"matrix":[5,7], "x":8.75, "y":5.35, "w":1.25}, - {"matrix":[5,9], "x":10, "y":5.35, "w":2.25}, - {"matrix":[5,10], "x":12.25, "y":5.35}, - {"matrix":[5,12], "x":12.05, "y":8.0}, - {"matrix":[5,14], "x":13.05, "y":8.0, "w":2.75}, - {"matrix":[5,15], "x":15.8, "y":8.0}, - {"matrix":[5,18], "x":19.75, "y":6.55}, - {"matrix":[5,19], "x":20.75, "y":6.55}, - {"matrix":[5,20], "x":21.75, "y":6.55} - ] - } - } -} diff --git a/keyboards/keychron/q14_max/ansi_encoder/keymaps/default/keymap.c b/keyboards/keychron/q14_max/ansi_encoder/keymaps/default/keymap.c deleted file mode 100644 index ad3066c793..0000000000 --- a/keyboards/keychron/q14_max/ansi_encoder/keymaps/default/keymap.c +++ /dev/null @@ -1,73 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#include QMK_KEYBOARD_H -#include "keychron_common.h" - -enum layers{ - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN, -}; - -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_105_ansi( - KC_MUTE, KC_F13, KC_F14, KC_F15, KC_ESC, KC_BRID, KC_BRIU, KC_MCTRL, KC_LNPAD, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_DEL, RGB_MOD, - KC_NUM, KC_PSLS, KC_PAST, KC_PMNS, KC_GRV, 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_PGUP, - KC_P7, KC_P8, KC_P9, KC_PPLS, 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_PGDN, - KC_P4, KC_P5, KC_P6, 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_HOME, - KC_P1, KC_P2, KC_P3, KC_PENT, KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, - KC_P0, KC_PDOT, KC_LCTL, KC_LOPTN, KC_LCMMD, KC_SPC, MO(MAC_FN), KC_SPC, KC_RCMMD, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - [MAC_FN] = LAYOUT_105_ansi( - RGB_TOG, _______, _______, _______, _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, RGB_TOG, - _______, _______, _______, _______, _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, KC_END, - _______, _______, _______, _______, _______, _______, _______, _______, _______, BAT_LVL, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - [WIN_BASE] = LAYOUT_105_ansi( - KC_MUTE, _______, _______, _______, KC_ESC, 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_DEL, RGB_MOD, - KC_NUM, KC_PSLS, KC_PAST, KC_PMNS, KC_GRV, 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_PGUP, - KC_P7, KC_P8, KC_P9, KC_PPLS, 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_PGDN, - KC_P4, KC_P5, KC_P6, 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_HOME, - KC_P1, KC_P2, KC_P3, KC_PENT, KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, - KC_P0, KC_PDOT, KC_LCTL, KC_LWIN, KC_LALT, KC_SPC, MO(WIN_FN), KC_SPC, KC_RALT, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - [WIN_FN] = LAYOUT_105_ansi( - RGB_TOG, _______, _______, _______, _______, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, RGB_TOG, - _______, _______, _______, _______, _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, KC_END, - _______, _______, _______, _______, _______, _______, _______, _______, _______, BAT_LVL, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), -}; - -#if defined(ENCODER_MAP_ENABLE) -const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][2] = { - [MAC_BASE] = {ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [MAC_FN] = {ENCODER_CCW_CW(RGB_VAD, RGB_VAI)}, - [WIN_BASE] = {ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [WIN_FN] = {ENCODER_CCW_CW(RGB_VAD, RGB_VAI)}, -}; -#endif // ENCODER_MAP_ENABLE - -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - if (!process_record_keychron_common(keycode, record)) { - return false; - } - return true; -} diff --git a/keyboards/keychron/q14_max/ansi_encoder/keymaps/via/keymap.c b/keyboards/keychron/q14_max/ansi_encoder/keymaps/via/keymap.c deleted file mode 100644 index ad3066c793..0000000000 --- a/keyboards/keychron/q14_max/ansi_encoder/keymaps/via/keymap.c +++ /dev/null @@ -1,73 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#include QMK_KEYBOARD_H -#include "keychron_common.h" - -enum layers{ - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN, -}; - -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_105_ansi( - KC_MUTE, KC_F13, KC_F14, KC_F15, KC_ESC, KC_BRID, KC_BRIU, KC_MCTRL, KC_LNPAD, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_DEL, RGB_MOD, - KC_NUM, KC_PSLS, KC_PAST, KC_PMNS, KC_GRV, 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_PGUP, - KC_P7, KC_P8, KC_P9, KC_PPLS, 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_PGDN, - KC_P4, KC_P5, KC_P6, 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_HOME, - KC_P1, KC_P2, KC_P3, KC_PENT, KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, - KC_P0, KC_PDOT, KC_LCTL, KC_LOPTN, KC_LCMMD, KC_SPC, MO(MAC_FN), KC_SPC, KC_RCMMD, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - [MAC_FN] = LAYOUT_105_ansi( - RGB_TOG, _______, _______, _______, _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, RGB_TOG, - _______, _______, _______, _______, _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, KC_END, - _______, _______, _______, _______, _______, _______, _______, _______, _______, BAT_LVL, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - [WIN_BASE] = LAYOUT_105_ansi( - KC_MUTE, _______, _______, _______, KC_ESC, 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_DEL, RGB_MOD, - KC_NUM, KC_PSLS, KC_PAST, KC_PMNS, KC_GRV, 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_PGUP, - KC_P7, KC_P8, KC_P9, KC_PPLS, 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_PGDN, - KC_P4, KC_P5, KC_P6, 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_HOME, - KC_P1, KC_P2, KC_P3, KC_PENT, KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, - KC_P0, KC_PDOT, KC_LCTL, KC_LWIN, KC_LALT, KC_SPC, MO(WIN_FN), KC_SPC, KC_RALT, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - [WIN_FN] = LAYOUT_105_ansi( - RGB_TOG, _______, _______, _______, _______, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, RGB_TOG, - _______, _______, _______, _______, _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, KC_END, - _______, _______, _______, _______, _______, _______, _______, _______, _______, BAT_LVL, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), -}; - -#if defined(ENCODER_MAP_ENABLE) -const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][2] = { - [MAC_BASE] = {ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [MAC_FN] = {ENCODER_CCW_CW(RGB_VAD, RGB_VAI)}, - [WIN_BASE] = {ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [WIN_FN] = {ENCODER_CCW_CW(RGB_VAD, RGB_VAI)}, -}; -#endif // ENCODER_MAP_ENABLE - -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - if (!process_record_keychron_common(keycode, record)) { - return false; - } - return true; -} diff --git a/keyboards/keychron/q14_max/ansi_encoder/keymaps/via/rules.mk b/keyboards/keychron/q14_max/ansi_encoder/keymaps/via/rules.mk deleted file mode 100644 index 1e5b99807c..0000000000 --- a/keyboards/keychron/q14_max/ansi_encoder/keymaps/via/rules.mk +++ /dev/null @@ -1 +0,0 @@ -VIA_ENABLE = yes diff --git a/keyboards/keychron/q14_max/ansi_encoder/rules.mk b/keyboards/keychron/q14_max/ansi_encoder/rules.mk deleted file mode 100644 index 7ff128fa69..0000000000 --- a/keyboards/keychron/q14_max/ansi_encoder/rules.mk +++ /dev/null @@ -1 +0,0 @@ -# This file intentionally left blank \ No newline at end of file diff --git a/keyboards/keychron/q14_max/board.h b/keyboards/keychron/q14_max/board.h deleted file mode 100644 index 372694871c..0000000000 --- a/keyboards/keychron/q14_max/board.h +++ /dev/null @@ -1,226 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#pragma once - -#include_next - -// clang-format off - -/* Set GPIOA_SWDIO to INPUT & PIN_PUPDR_PULLUP to avoid FLOATING */ -#undef VAL_GPIOA_MODER -#define VAL_GPIOA_MODER (PIN_MODE_INPUT(GPIOA_BUTTON) | \ - PIN_MODE_INPUT(GPIOA_PIN1) | \ - PIN_MODE_INPUT(GPIOA_PIN2) | \ - PIN_MODE_INPUT(GPIOA_PIN3) | \ - PIN_MODE_ALTERNATE(GPIOA_CS43L22_LRCK) |\ - PIN_MODE_ALTERNATE(GPIOA_L3GD20_SCL) | \ - PIN_MODE_ALTERNATE(GPIOA_L3GD20_SD0) | \ - PIN_MODE_ALTERNATE(GPIOA_L3GD20_SDI) | \ - PIN_MODE_INPUT(GPIOA_PIN8) | \ - PIN_MODE_INPUT(GPIOA_VBUS_FS) | \ - PIN_MODE_ALTERNATE(GPIOA_OTG_FS_ID) | \ - PIN_MODE_ALTERNATE(GPIOA_OTG_FS_DM) | \ - PIN_MODE_ALTERNATE(GPIOA_OTG_FS_DP) | \ - PIN_MODE_INPUT(GPIOA_SWDIO) | \ - PIN_MODE_INPUT(GPIOA_SWCLK) | \ - PIN_MODE_INPUT(GPIOA_PIN15)) - -#undef VAL_GPIOA_PUPDR -#define VAL_GPIOA_PUPDR (PIN_PUPDR_FLOATING(GPIOA_BUTTON) | \ - PIN_PUPDR_PULLUP(GPIOA_PIN1) | \ - PIN_PUPDR_PULLUP(GPIOA_PIN2) | \ - PIN_PUPDR_PULLUP(GPIOA_PIN3) | \ - PIN_PUPDR_FLOATING(GPIOA_CS43L22_LRCK) |\ - PIN_PUPDR_FLOATING(GPIOA_L3GD20_SCL) | \ - PIN_PUPDR_PULLUP(GPIOA_L3GD20_SD0) | \ - PIN_PUPDR_PULLUP(GPIOA_L3GD20_SDI) | \ - PIN_PUPDR_PULLUP(GPIOA_PIN8) | \ - PIN_PUPDR_FLOATING(GPIOA_VBUS_FS) | \ - PIN_PUPDR_FLOATING(GPIOA_OTG_FS_ID) | \ - PIN_PUPDR_FLOATING(GPIOA_OTG_FS_DM) | \ - PIN_PUPDR_FLOATING(GPIOA_OTG_FS_DP) | \ - PIN_PUPDR_PULLUP(GPIOA_SWDIO) | \ - PIN_PUPDR_PULLUP(GPIOA_SWCLK) | \ - PIN_PUPDR_PULLUP(GPIOA_PIN15)) - -#undef VAL_GPIOB_MODER -#define VAL_GPIOB_MODER (PIN_MODE_INPUT(GPIOB_PIN0) | \ - PIN_MODE_INPUT(GPIOB_PIN1) | \ - PIN_MODE_INPUT(GPIOB_PIN2) | \ - PIN_MODE_INPUT(GPIOB_SWO) | \ - PIN_MODE_INPUT(GPIOB_PIN4) | \ - PIN_MODE_INPUT(GPIOB_PIN5) | \ - PIN_MODE_INPUT(GPIOB_LSM303DLHC_SCL) | \ - PIN_MODE_INPUT(GPIOB_PIN7) | \ - PIN_MODE_INPUT(GPIOB_PIN8) | \ - PIN_MODE_INPUT(GPIOB_LSM303DLHC_SDA) | \ - PIN_MODE_INPUT(GPIOB_MP45DT02_CLK_IN) |\ - PIN_MODE_INPUT(GPIOB_PIN11) | \ - PIN_MODE_INPUT(GPIOB_PIN12) | \ - PIN_MODE_INPUT(GPIOB_PIN13) | \ - PIN_MODE_INPUT(GPIOB_PIN14) | \ - PIN_MODE_INPUT(GPIOB_PIN15)) - -#undef VAL_GPIOB_PUPDR -#define VAL_GPIOB_PUPDR (PIN_PUPDR_PULLDOWN(GPIOB_PIN0) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN1) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN2) | \ - PIN_PUPDR_PULLDOWN(GPIOB_SWO) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN4) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN5) | \ - PIN_PUPDR_PULLDOWN(GPIOB_LSM303DLHC_SCL) |\ - PIN_PUPDR_PULLDOWN(GPIOB_PIN7) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN8) | \ - PIN_PUPDR_PULLDOWN(GPIOB_LSM303DLHC_SDA) |\ - PIN_PUPDR_PULLDOWN(GPIOB_MP45DT02_CLK_IN) |\ - PIN_PUPDR_PULLDOWN(GPIOB_PIN11) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN12) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN13) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN14) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN15)) - -#undef VAL_GPIOB_AFRL -#define VAL_GPIOB_AFRL (PIN_AFIO_AF(GPIOB_PIN0, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN1, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN2, 0U) | \ - PIN_AFIO_AF(GPIOB_SWO, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN4, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN5, 0U) | \ - PIN_AFIO_AF(GPIOB_LSM303DLHC_SCL, 0) | \ - PIN_AFIO_AF(GPIOB_PIN7, 0U)) - -#undef VAL_GPIOB_AFRH -#define VAL_GPIOB_AFRH (PIN_AFIO_AF(GPIOB_PIN8, 0U) | \ - PIN_AFIO_AF(GPIOB_LSM303DLHC_SDA, 0) | \ - PIN_AFIO_AF(GPIOB_MP45DT02_CLK_IN, 0U) |\ - PIN_AFIO_AF(GPIOB_PIN11, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN12, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN13, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN14, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN15, 0U)) - -/* C5 Need to be pulldown */ -#undef VAL_GPIOC_MODER -#define VAL_GPIOC_MODER (PIN_MODE_INPUT(GPIOC_OTG_FS_POWER_ON) |\ - PIN_MODE_INPUT(GPIOC_PIN1) | \ - PIN_MODE_INPUT(GPIOC_PIN2) | \ - PIN_MODE_INPUT(GPIOC_CS43L22_AIN4x) | \ - PIN_MODE_INPUT(GPIOC_PIN4) | \ - PIN_MODE_INPUT(GPIOC_PIN5) | \ - PIN_MODE_INPUT(GPIOC_PIN6) | \ - PIN_MODE_INPUT(GPIOC_CS43L22_MCLK) | \ - PIN_MODE_INPUT(GPIOC_PIN8) | \ - PIN_MODE_INPUT(GPIOC_PIN9) | \ - PIN_MODE_INPUT(GPIOC_CS43L22_SCLK) | \ - PIN_MODE_INPUT(GPIOC_PIN11) | \ - PIN_MODE_INPUT(GPIOC_CS43L22_SDIN) | \ - PIN_MODE_INPUT(GPIOC_PIN13) | \ - PIN_MODE_INPUT(GPIOC_OSC32_IN) | \ - PIN_MODE_INPUT(GPIOC_OSC32_OUT)) - -#undef VAL_GPIOC_PUPDR -#define VAL_GPIOC_PUPDR (PIN_PUPDR_PULLUP(GPIOC_OTG_FS_POWER_ON) |\ - PIN_PUPDR_PULLUP(GPIOC_PIN1) | \ - PIN_PUPDR_PULLUP(GPIOC_PIN2) | \ - PIN_PUPDR_PULLUP(GPIOC_CS43L22_AIN4x) |\ - PIN_PUPDR_PULLUP(GPIOC_PIN4) | \ - PIN_PUPDR_PULLDOWN(GPIOC_PIN5) | \ - PIN_PUPDR_PULLUP(GPIOC_PIN6) | \ - PIN_PUPDR_PULLUP(GPIOC_CS43L22_MCLK) | \ - PIN_PUPDR_PULLUP(GPIOC_PIN8) | \ - PIN_PUPDR_PULLUP(GPIOC_PIN9) | \ - PIN_PUPDR_PULLUP(GPIOC_CS43L22_SCLK) | \ - PIN_PUPDR_PULLUP(GPIOC_PIN11) | \ - PIN_PUPDR_PULLUP(GPIOC_CS43L22_SDIN) | \ - PIN_PUPDR_PULLUP(GPIOC_PIN13) | \ - PIN_PUPDR_PULLUP(GPIOC_OSC32_IN) | \ - PIN_PUPDR_PULLUP(GPIOC_OSC32_OUT)) - -/* Set all GPIOD pins to INPUT & PULLUP to avoid FLOATING */ -#undef VAL_GPIOD_MODER -#define VAL_GPIOD_MODER (PIN_MODE_INPUT(GPIOD_PIN0) | \ - PIN_MODE_INPUT(GPIOD_PIN1) | \ - PIN_MODE_INPUT(GPIOD_PIN2) | \ - PIN_MODE_INPUT(GPIOD_PIN3) | \ - PIN_MODE_INPUT(GPIOD_CS43L22_RESET) | \ - PIN_MODE_INPUT(GPIOD_OverCurrent) | \ - PIN_MODE_INPUT(GPIOD_PIN6) | \ - PIN_MODE_INPUT(GPIOD_PIN7) | \ - PIN_MODE_INPUT(GPIOD_PIN8) | \ - PIN_MODE_INPUT(GPIOD_PIN9) | \ - PIN_MODE_INPUT(GPIOD_PIN10) | \ - PIN_MODE_INPUT(GPIOD_PIN11) | \ - PIN_MODE_INPUT(GPIOD_LED4) | \ - PIN_MODE_INPUT(GPIOD_LED3) | \ - PIN_MODE_INPUT(GPIOD_LED5) | \ - PIN_MODE_INPUT(GPIOD_LED6)) - -#undef VAL_GPIOD_PUPDR -#define VAL_GPIOD_PUPDR (PIN_PUPDR_PULLUP(GPIOD_PIN0) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN1) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN2) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN3) | \ - PIN_PUPDR_PULLUP(GPIOD_CS43L22_RESET) |\ - PIN_PUPDR_PULLUP(GPIOD_OverCurrent) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN6) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN7) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN8) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN9) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN10) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN11) | \ - PIN_PUPDR_PULLUP(GPIOD_LED4) | \ - PIN_PUPDR_PULLUP(GPIOD_LED3) | \ - PIN_PUPDR_PULLUP(GPIOD_LED5) | \ - PIN_PUPDR_PULLUP(GPIOD_LED6)) - -/* Set all GPIOE pins to INPUT & PULLUP to avoid FLOATING */ -#undef VAL_GPIOE_MODER -#define VAL_GPIOE_MODER (PIN_MODE_INPUT(GPIOE_L3GD20_INT1) | \ - PIN_MODE_INPUT(GPIOE_L3GD20_INT2) | \ - PIN_MODE_INPUT(GPIOE_LSM303DLHC_DRDY) |\ - PIN_MODE_INPUT(GPIOE_L3GD20_CS) | \ - PIN_MODE_INPUT(GPIOE_LSM303DLHC_INT1) |\ - PIN_MODE_INPUT(GPIOE_LSM303DLHC_INT2) |\ - PIN_MODE_INPUT(GPIOE_PIN6) | \ - PIN_MODE_INPUT(GPIOE_PIN7) | \ - PIN_MODE_INPUT(GPIOE_PIN8) | \ - PIN_MODE_INPUT(GPIOE_PIN9) | \ - PIN_MODE_INPUT(GPIOE_PIN10) | \ - PIN_MODE_INPUT(GPIOE_PIN11) | \ - PIN_MODE_INPUT(GPIOE_PIN12) | \ - PIN_MODE_INPUT(GPIOE_PIN13) | \ - PIN_MODE_INPUT(GPIOE_PIN14) | \ - PIN_MODE_INPUT(GPIOE_PIN15)) - -#undef VAL_GPIOE_PUPDR -#define VAL_GPIOE_PUPDR (PIN_PUPDR_PULLUP(GPIOE_L3GD20_INT1) | \ - PIN_PUPDR_PULLUP(GPIOE_L3GD20_INT2) | \ - PIN_PUPDR_PULLUP(GPIOE_LSM303DLHC_DRDY) |\ - PIN_PUPDR_PULLUP(GPIOE_L3GD20_CS) | \ - PIN_PUPDR_PULLUP(GPIOE_LSM303DLHC_INT1) |\ - PIN_PUPDR_PULLUP(GPIOE_LSM303DLHC_INT2) |\ - PIN_PUPDR_PULLUP(GPIOE_PIN6) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN7) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN8) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN9) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN10) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN11) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN12) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN13) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN14) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN15)) - diff --git a/keyboards/keychron/q14_max/config.h b/keyboards/keychron/q14_max/config.h deleted file mode 100644 index 06ce24cffb..0000000000 --- a/keyboards/keychron/q14_max/config.h +++ /dev/null @@ -1,82 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#pragma once - -/* Encoder Configuration */ -#define ENCODER_DEFAULT_POS 0x3 -#define ENCODER_MAP_KEY_DELAY 2 - -#ifdef LK_WIRELESS_ENABLE -/* Hardware configuration */ -# define P2P4_MODE_SELECT_PIN A10 -# define BT_MODE_SELECT_PIN A9 - -# define LKBT51_RESET_PIN C4 -# define LKBT51_INT_INPUT_PIN B1 -# define BLUETOOTH_INT_OUTPUT_PIN A4 - -# define USB_POWER_SENSE_PIN B0 -# define USB_POWER_CONNECTED_LEVEL 0 - -# define BAT_CHARGING_PIN B13 -# define BAT_CHARGING_LEVEL 0 - -# define BT_HOST_DEVICES_COUNT 3 - -# if defined(RGB_MATRIX_ENABLE) || defined(LED_MATRIX_ENABLE) - -# define LED_DRIVER_SHUTDOWN_PIN B7 - -# define BT_HOST_LED_MATRIX_LIST \ - { 23, 24, 25 } - -# define P2P4G_HOST_LED_MATRIX_LIST \ - { 26 } - -# define BAT_LEVEL_LED_LIST \ - { 23, 24, 25, 26, 27, 28, 29, 30, 31, 32 } - -/* 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 - -/* Reinit LED driver on tranport changed */ -# define REINIT_LED_DRIVER 1 - -# endif - -/* Keep USB connection in blueooth mode */ -# define KEEP_USB_CONNECTION_IN_WIRELESS_MODE - -/* Enable bluetooth NKRO */ -# define WIRELESS_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 - -/* Factory test keys */ -#define FN_KEY_1 MO(1) -#define FN_KEY_2 MO(3) -#define FN_BL_TRIG_KEY KC_END - -#define MATRIX_IO_DELAY 10 diff --git a/keyboards/keychron/q14_max/firmware/keychron_q14_max_ansi_encoder_via.bin b/keyboards/keychron/q14_max/firmware/keychron_q14_max_ansi_encoder_via.bin deleted file mode 100644 index 4cb689953c..0000000000 Binary files a/keyboards/keychron/q14_max/firmware/keychron_q14_max_ansi_encoder_via.bin and /dev/null differ diff --git a/keyboards/keychron/q14_max/halconf.h b/keyboards/keychron/q14_max/halconf.h deleted file mode 100644 index 37bcc7c47b..0000000000 --- a/keyboards/keychron/q14_max/halconf.h +++ /dev/null @@ -1,31 +0,0 @@ -/* Copyright 2024 @ 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 - -#define _CHIBIOS_HAL_CONF_VER_8_0_ - -#define HAL_USE_SPI TRUE - -#ifdef LK_WIRELESS_ENABLE -# define HAL_USE_RTC TRUE -#endif - -#if defined(LK_WIRELESS_ENABLE) || defined(ENCODER_ENABLE) -# define PAL_USE_CALLBACKS TRUE -#endif - -#include_next diff --git a/keyboards/keychron/q14_max/info.json b/keyboards/keychron/q14_max/info.json deleted file mode 100644 index a283451857..0000000000 --- a/keyboards/keychron/q14_max/info.json +++ /dev/null @@ -1,81 +0,0 @@ -{ - "keyboard_name": "Keychron Q14 Max", - "manufacturer": "Keychron", - "url": "https://github.com/Keychron", - "maintainer": "Keychron", - "processor": "STM32F401", - "bootloader": "stm32-dfu", - "usb": { - "vid": "0x3434" - }, - "features": { - "bootmagic": true, - "extrakey" : true, - "mousekey" : true, - "dip_switch" : true, - "encoder": true, - "encoder_map": true, - "nkro" : true, - "rgb_matrix": true, - "raw" : true, - "sendstring" : true, - "console": false - }, - "matrix_pins": { - "cols": ["C6", "C7", "C8", "A14", "A15", "C10", "C11", "C13", "C14", "C15", "C0", "C1", "C2", "C3", "A0", "A1", "A2", "A3", "C5", "B10", "C9"], - "rows": ["C12", "D2", "B3", "B4", "B5", "B6"] - }, - "diode_direction": "ROW2COL", - "encoder": { - "rotary": [ - { - "pin_a": "B15", - "pin_b": "B14" - } - ] - }, - "dip_switch" :{ - "pins": ["A8"] - }, - "bootmagic": { - "matrix": [0, 4] - }, - "rgb_matrix": { - "driver": "snled27351_spi", - "sleep": true, - "animations": { - "band_spiral_val": true, - "breathing": true, - "cycle_all": true, - "cycle_left_right": true, - "cycle_out_in": true, - "cycle_out_in_dual": true, - "cycle_pinwheel": true, - "cycle_spiral": true, - "cycle_up_down": true, - "digital_rain": true, - "dual_beacon": true, - "jellybean_raindrops": true, - "pixel_rain": true, - "rainbow_beacon": true, - "rainbow_moving_chevron": true, - "solid_reactive_multinexus": true, - "solid_reactive_multiwide": true, - "solid_reactive_simple": true, - "solid_splash": true, - "splash": true, - "typing_heatmap": true - } - }, - "eeprom": { - "wear_leveling": { - "driver": "embedded_flash", - "logical_size": 2096, - "backing_size": 4192 - } - }, - "build": { - "debounce_type": "sym_eager_pk" - }, - "debounce": 20 -} diff --git a/keyboards/keychron/q14_max/mcuconf.h b/keyboards/keychron/q14_max/mcuconf.h deleted file mode 100644 index 89294ee64b..0000000000 --- a/keyboards/keychron/q14_max/mcuconf.h +++ /dev/null @@ -1,37 +0,0 @@ -/* Copyright 2024 @ 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 - -#include_next - -#undef STM32_HSECLK -#define STM32_HSECLK 16000000 - -#undef STM32_PLLM_VALUE -#define STM32_PLLM_VALUE 8 - -#undef STM32_PLLN_VALUE -#define STM32_PLLN_VALUE 96 - -#undef STM32_PLLP_VALUE -#define STM32_PLLP_VALUE 4 - -#undef STM32_PLLQ_VALUE -#define STM32_PLLQ_VALUE 4 - -#undef STM32_SPI_USE_SPI1 -#define STM32_SPI_USE_SPI1 TRUE diff --git a/keyboards/keychron/q14_max/q14_max.c b/keyboards/keychron/q14_max/q14_max.c deleted file mode 100644 index c36eb60e7d..0000000000 --- a/keyboards/keychron/q14_max/q14_max.c +++ /dev/null @@ -1,61 +0,0 @@ -/* Copyright 2024 @ 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/>. - */ - -#include "quantum.h" -#include "keychron_task.h" -#ifdef FACTORY_TEST_ENABLE -# include "factory_test.h" -# include "keychron_common.h" -#endif -#ifdef LK_WIRELESS_ENABLE -# include "lkbt51.h" -# include "wireless.h" -# include "keychron_wireless_common.h" -# include "battery.h" -#endif - -#ifdef DIP_SWITCH_ENABLE -bool dip_switch_update_kb(uint8_t index, bool active) { - if (index == 0) { - default_layer_set(1UL << (active ? 2 : 0)); - } - dip_switch_update_user(index, active); - - return true; -} -#endif - -void keyboard_post_init_kb(void) { -#ifdef LK_WIRELESS_ENABLE - palSetLineMode(P2P4_MODE_SELECT_PIN, PAL_MODE_INPUT); - palSetLineMode(BT_MODE_SELECT_PIN, PAL_MODE_INPUT); - - lkbt51_init(false); - wireless_init(); -#endif - -#ifdef ENCODER_ENABLE - encoder_cb_init(); -#endif - - keyboard_post_init_user(); -} - -#ifdef LK_WIRELESS_ENABLE -bool lpm_is_kb_idle(void) { - return !factory_reset_indicating(); -} -#endif diff --git a/keyboards/keychron/q14_max/readme.md b/keyboards/keychron/q14_max/readme.md deleted file mode 100644 index de63274a91..0000000000 --- a/keyboards/keychron/q14_max/readme.md +++ /dev/null @@ -1,21 +0,0 @@ -# Keychron Q14 Max - -![Keychron Q14 Max](https://cdn.shopify.com/s/files/1/0059/0630/1017/files/Q14-Max-page7.jpg?v=1719222959) - -A customizable 96% Alice layout wireless keyboard. - -* Keyboard Maintainer: [Keychron](https://github.com/keychron) -* Hardware Supported: Keychron Q14 Max -* Hardware Availability: [Keychron Q14 Max QMK/VIA Wireless Custom Mechanical Keyboard](https://www.keychron.com/products/keychron-q14-max-alice-layout-qmk-wireless-custom-mechanical-keyboard) - -Make example for this keyboard (after setting up your build environment): - - make keychron/q14_max/ansi_encoder:default - -Flashing example for this keyboard: - - make keychron/q14_max/ansi_encoder:default:flash - -**Reset Key**: Toggle mode switch to "Cable", hold down the *Esc* key or reset button underneath space bar while connecting the USB cable, - -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). diff --git a/keyboards/keychron/q14_max/rules.mk b/keyboards/keychron/q14_max/rules.mk deleted file mode 100644 index 4eaf6820bc..0000000000 --- a/keyboards/keychron/q14_max/rules.mk +++ /dev/null @@ -1,4 +0,0 @@ -include keyboards/keychron/common/wireless/wireless.mk -include keyboards/keychron/common/keychron_common.mk - -VPATH += $(TOP_DIR)/keyboards/keychron diff --git a/keyboards/keychron/q14_max/via_json/q14_max_ansi_encoder.json b/keyboards/keychron/q14_max/via_json/q14_max_ansi_encoder.json deleted file mode 100644 index 01d5e7dad6..0000000000 --- a/keyboards/keychron/q14_max/via_json/q14_max_ansi_encoder.json +++ /dev/null @@ -1,466 +0,0 @@ -{ - "name": "Keychron Q14 Max ANSI Knob", - "vendorId": "0x3434", - "productId": "0x08E0", - "keycodes": ["qmk_lighting"], - "menus": [ - { - "label": "Lighting", - "content": [ - { - "label": "Backlight", - "content": [ - { - "label": "Brightness", - "type": "range", - "options": [0, 255], - "content": ["id_qmk_rgb_matrix_brightness", 3, 1] - }, - { - "label": "Effect", - "type": "dropdown", - "content": ["id_qmk_rgb_matrix_effect", 3, 2], - "options": [ - ["None", 0], - ["Solid Color", 1], - ["Breathing", 2], - ["Band Spiral Val", 3], - ["Cycle All", 4], - ["Cycle Left Right", 5], - ["Cycle Up Down", 6], - ["Rainbow Moving Chevron", 7], - ["Cycle Out In", 8], - ["Cycle Out In Dual", 9], - ["Cycle Pinwheel", 10], - ["Cycle Spiral", 11], - ["Dual Beacon", 12], - ["Rainbow Beacon", 13], - ["Jellybean Raindrops", 14], - ["Pixel Rain", 15], - ["Typing Heatmap", 16], - ["Digital Rain", 17], - ["Reactive Simple", 18], - ["Reactive Multiwide", 19], - ["Reactive Multinexus", 20], - ["Splash", 21], - ["Solid Splash", 22] - ] - }, - { - "showIf": "{id_qmk_rgb_matrix_effect} > 1", - "label": "Effect Speed", - "type": "range", - "options": [0, 255], - "content": ["id_qmk_rgb_matrix_effect_speed", 3, 3] - }, - { - "showIf": "{id_qmk_rgb_matrix_effect} != 0 && ( {id_qmk_rgb_matrix_effect} < 4 || {id_qmk_rgb_matrix_effect} == 18 || ({id_qmk_rgb_matrix_effect} > 17 && {id_qmk_rgb_matrix_effect} != 21) ) ", - "label": "Color", - "type": "color", - "content": ["id_qmk_rgb_matrix_color", 3, 4] - } - ] - } - ] - } - ], - "customKeycodes": [ - {"name": "Left Option", "title": "Left Option", "shortName": "LOpt"}, - {"name": "Right Option", "title": "Right Option", "shortName": "ROpt"}, - {"name": "Left Cmd", "title": "Left Command", "shortName": "LCmd"}, - {"name": "Right Cmd", "title": "Right Command", "shortName": "RCmd"}, - {"name": "Misson Control", "title": "Misson Control in Mac", "shortName": "MCtl"}, - {"name": "Lanuch Pad", "title": "Lanuch Pad in Windows", "shortName": "LPad"}, - {"name": "Task View", "title": "Task View in Windows", "shortName": "Task"}, - {"name": "File Explorer", "title": "File Explorer in Windows", "shortName": "File"}, - {"name": "Screen shot", "title": "Screenshot in macOS", "shortName": "SShot"}, - {"name": "Cortana", "title": "Cortana in Windows", "shortName": "Cortana"}, - {"name": "Siri", "title": "Siri in macOS", "shortName": "Siri"}, - {"name": "Bluetooth Host 1", "title": "Bluetooth Host 1", "shortName": "BTH1"}, - {"name": "Bluetooth Host 2", "title": "Bluetooth Host 2", "shortName": "BTH2"}, - {"name": "Bluetooth Host 3", "title": "Bluetooth Host 3", "shortName": "BTH3"}, - {"name": "2.4G", "title": "2.4G", "shortName": "2.4G"}, - {"name": "Battery Level", "title": "Show battery level", "shortName": "Batt"} - ], - "matrix": {"rows": 6, "cols": 21}, - "layouts": { - "keymap": [ - [ - { - "y": 0.8, - "c": "#aaaaaa" - }, - "0,0\n\n\n\n\n\n\n\n\ne0", - { - "c": "#cccccc" - }, - "0,1", - "0,2", - "0,3", - { - "x": 0.5, - "c": "#777777" - }, - "0,4\nESC", - { - "x": 0.5, - "c": "#cccccc" - }, - "0,5", - "0,6", - { - "x": 9.3 - }, - "0,17", - "0,18", - { - "x": 0.45, - "c": "#aaaaaa" - }, - "0,19", - { - "x": 0.5 - }, - "0,20" - ], - [ - { - "y": 0.3, - "x": 7.25, - "c": "#cccccc" - }, - "1,6", - { - "x": 9.7 - }, - "1,16" - ], - [ - { - "y": -0.9, - "x": 16.95 - }, - "1,17", - { - "x": 1, - "c": "#aaaaaa", - "w": 2 - }, - "1,18", - { - "x": 0.4 - }, - "1,20" - ], - [ - { - "y": -0.9, - "c": "#cccccc" - }, - "1,0", - "1,1", - "1,2", - "1,3", - { - "x": 1.25, - "c": "#aaaaaa" - }, - "1,4", - { - "c": "#cccccc" - }, - "1,5" - ], - [ - { - "y": -0.1, - "x": 17.65 - }, - "2,16", - "2,17", - { - "c": "#aaaaaa", - "w": 1.5 - }, - "2,18", - { - "x": 0.4 - }, - "2,20" - ], - [ - { - "y": -0.9, - "c": "#cccccc" - }, - "2,0", - "2,1", - "2,2", - { - "h": 2 - }, - "2,3", - { - "x": 1, - "c": "#aaaaaa", - "w": 1.5 - }, - "2,4", - { - "c": "#cccccc" - }, - "2,5" - ], - [ - { - "y": -0.1, - "x": 17.1 - }, - "3,15", - "3,16", - { - "c": "#777777", - "w": 2.25 - }, - "3,17", - { - "x": 0.4, - "c": "#aaaaaa" - }, - "3,20" - ], - [ - { - "y": -0.9, - "c": "#cccccc" - }, - "3,0", - "3,1", - "3,2", - { - "x": 1.75, - "c": "#aaaaaa", - "w": 1.75 - }, - "3,4", - { - "c": "#cccccc" - }, - "3,5" - ], - [ - { - "y": -0.1, - "x": 17.75 - }, - "4,16", - { - "c": "#aaaaaa", - "w": 1.75 - }, - "4,17" - ], - [ - { - "y": -0.9, - "c": "#cccccc" - }, - "4,0", - "4,1", - "4,2", - { - "h": 2 - }, - "4,3", - { - "x": 0.5, - "c": "#aaaaaa", - "w": 2.25 - }, - "4,4", - { - "c": "#cccccc" - }, - "4,6" - ], - [ - { - "y": -0.75, - "x": 20.75, - "c": "#cccccc" - }, - "4,19" - ], - [ - { - "y": -0.25, - "c": "#cccccc", - "w": 2 - }, - "5,0", - "5,2", - { - "x": 1.5, - "c": "#aaaaaa", - "w": 1.25 - }, - "5,4", - { - "w": 1.25 - }, - "5,5" - ], - [ - { - "y": -0.75, - "x": 19.75, - "c": "#cccccc" - }, - "5,18", - "5,19", - "5,20" - ], - [ - { - "r": 6, - "y": -7.55, - "x": 8.25, - "c": "#cccccc" - }, - "0,7", - "0,8", - { - "x": 0.25, - "c": "#aaaaaa" - }, - "0,9", - "0,10" - ], - [ - { - "y": 0.35, - "x": 8.6, - "c": "#cccccc" - }, - "1,7", - "1,8", - "1,9", - "1,10" - ], - [ - { - "y": -0.015, - "x": 9.13 - }, - "2,7" - ], - [ - { - "y": -0.985, - "x": 8.13 - }, - "2,6", - { - "x": 1 - }, - "2,8", - "2,9" - ], - [ - { - "x": 8.3 - }, - "3,6", - "3,7", - "3,8", - "3,9" - ], - [ - { - "x": 8.65 - }, - "4,7", - "4,8", - "4,9", - "4,10" - ], - [ - { - "x": 8.75, - "c": "#aaaaaa", - "w": 1.25 - }, - "5,7", - { - "w": 2.25 - }, - "5,9", - "5,10" - ], - [ - { - "r": -6, - "y": -3.75, - "x": 12.75 - }, - "0,13", - "0,14", - { - "x": 0.25, - "c": "#cccccc" - }, - "0,15", - "0,16" - ], - [ - { - "y": 0.4, - "x": 12.5 - }, - "1,12", - "1,13", - "1,14", - "1,15" - ], - [ - { - "x": 12.1 - }, - "2,11", - "2,12", - "2,13", - "2,14", - "2,15" - ], - [ - { - "x": 12.45 - }, - "3,11", - "3,12", - "3,13", - "3,14" - ], - [ - { - "x": 12 - }, - "4,11", - "4,12", - "4,13", - "4,14", - "4,15" - ], - [ - { - "x": 12.05, - "w": 2.75, - "c": "#aaaaaa" - }, - "5,12", - "5,14", - "5,15" - ] - ] - } -} diff --git a/keyboards/keychron/q14_pro/ansi_encoder/ansi_encoder.c b/keyboards/keychron/q14_pro/ansi_encoder/ansi_encoder.c deleted file mode 100644 index 74a037ae2d..0000000000 --- a/keyboards/keychron/q14_pro/ansi_encoder/ansi_encoder.c +++ /dev/null @@ -1,138 +0,0 @@ -/* 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 . - */ - -#include "quantum.h" - -// clang-format off -#ifdef RGB_MATRIX_ENABLE -const snled27351_led_t g_snled27351_leds[RGB_MATRIX_LED_COUNT] = { -/* Refer to snled27351manual for these locations - * driver - * | R location - * | | G location - * | | | B location - * | | | | */ - {0, L_8, J_8, K_8}, - {0, L_7, J_7, K_7}, - {0, C_1, A_1, B_1}, - {0, C_2, A_2, B_2}, - {0, C_3, A_3, B_3}, - {0, C_4, A_4, B_4}, - {0, C_5, A_5, B_5}, - {0, C_6, A_6, B_6}, - {0, C_7, A_7, B_7}, - {0, C_8, A_8, B_8}, - {0, C_9, A_9, B_9}, - {0, C_10, A_10, B_10}, - {0, C_11, A_11, B_11}, - {0, C_12, A_12, B_12}, - {0, C_13, A_13, B_13}, - {0, C_14, A_14, B_14}, - {0, C_15, A_15, B_15}, - {0, C_16, A_16, B_16}, - - {0, L_6, J_6, K_6}, - {0, L_5, J_5, K_5}, - {0, L_4, J_4, K_4}, - {0, I_1, G_1, H_1}, - {0, I_2, G_2, H_2}, - {0, I_3, G_3, H_3}, - {0, I_4, G_4, H_4}, - {0, I_5, G_5, H_5}, - {0, I_6, G_6, H_6}, - {0, I_7, G_7, H_7}, - {0, I_8, G_8, H_8}, - {0, I_9, G_9, H_9}, - {0, I_10, G_10, H_10}, - {0, I_11, G_11, H_11}, - {0, I_12, G_12, H_12}, - {0, I_13, G_13, H_13}, - {0, I_14, G_14, H_14}, - {0, I_15, G_15, H_15}, - {0, I_16, G_16, H_16}, - - {0, L_3, J_3, K_3}, - {0, L_2, J_2, K_2}, - {0, L_1, J_1, K_1}, - {0, F_1, D_1, E_1}, - {0, F_2, D_2, E_2}, - {0, F_3, D_3, E_3}, - {0, F_4, D_4, E_4}, - {0, F_5, D_5, E_5}, - {0, F_6, D_6, E_6}, - {0, F_7, D_7, E_7}, - {0, F_8, D_8, E_8}, - {0, F_9, D_9, E_9}, - {0, F_10, D_10, E_10}, - {0, F_11, D_11, E_11}, - {0, F_12, D_12, E_12}, - {0, F_13, D_13, E_13}, - {0, F_14, D_14, E_14}, - {0, F_15, D_15, E_15}, - {0, F_16, D_16, E_16}, - - {1, L_9, J_9, K_9}, - {1, L_10, J_10, K_10}, - {1, L_11, J_11, K_11}, - {1, C_15, A_15, B_15}, - {1, C_14, A_14, B_14}, - {1, C_13, A_13, B_13}, - {1, C_12, A_12, B_12}, - {1, C_11, A_11, B_11}, - {1, C_10, A_10, B_10}, - {1, C_8, A_8, B_8}, - {1, C_7, A_7, B_7}, - {1, C_6, A_6, B_6}, - {1, C_5, A_5, B_5}, - {1, C_4, A_4, B_4}, - {1, C_3, A_3, B_3}, - {1, C_2, A_2, B_2}, - {1, C_1, A_1, B_1}, - - {1, L_12, J_12, K_12}, - {1, L_13, J_13, K_13}, - {1, L_14, J_14, K_14}, - {1, I_16, G_16, H_16}, - {1, I_15, G_15, H_15}, - {1, I_13, G_13, H_13}, - {1, I_12, G_12, H_12}, - {1, I_11, G_11, H_11}, - {1, I_10, G_10, H_10}, - {1, I_9, G_9, H_9}, - {1, I_8, G_8, H_8}, - {1, I_7, G_7, H_7}, - {1, I_6, G_6, H_6}, - {1, I_5, G_5, H_5}, - {1, I_4, G_4, H_4}, - {1, I_3, G_3, H_3}, - {1, I_2, G_2, H_2}, - {1, I_1, G_1, H_1}, - - {1, L_15, J_15, K_15}, - {1, L_16, J_16, K_16}, - {1, F_15, D_15, E_15}, - {1, F_14, D_14, E_14}, - {1, F_13, D_13, E_13}, - {1, F_12, D_12, E_12}, - {1, F_9, D_9, E_9}, - {1, F_8, D_8, E_8}, - {1, F_7, D_7, E_7}, - {1, F_6, D_6, E_6}, - {1, F_3, D_3, E_3}, - {1, F_2, D_2, E_2}, - {1, F_1, D_1, E_1}, -}; -#endif diff --git a/keyboards/keychron/q14_pro/ansi_encoder/config.h b/keyboards/keychron/q14_pro/ansi_encoder/config.h deleted file mode 100644 index 984ab58b14..0000000000 --- a/keyboards/keychron/q14_pro/ansi_encoder/config.h +++ /dev/null @@ -1,53 +0,0 @@ -/* 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 . - */ - -#pragma once - -#ifdef RGB_MATRIX_ENABLE -/* RGB Matrix Driver Configuration */ -# define DRIVER_COUNT 2 -# define DRIVER_ADDR_1 0b1110111 -# define DRIVER_ADDR_2 0b1110100 - -/* RGB Matrix Configuration */ -# define DRIVER_1_LED_TOTAL 56 -# define DRIVER_2_LED_TOTAL 48 -# define RGB_MATRIX_LED_COUNT (DRIVER_1_LED_TOTAL + DRIVER_2_LED_TOTAL) - -/* Set to infinit, which is use in USB mode by default */ -# define RGB_MATRIX_TIMEOUT RGB_MATRIX_TIMEOUT_INFINITE - -/* Allow to shutdown driver to save power */ -# define RGB_MATRIX_DRIVER_SHUTDOWN_ENABLE - -/* Turn off backllit if brightness value is low */ -# define RGB_MATRIX_BRIGHTNESS_TURN_OFF_VAL 48 - -/* Indication led */ -# define NUM_LOCK_INDEX 18 -# define CAPS_LOCK_INDEX 59 -# define LOW_BAT_IND_INDEX 98 - -// RGB Matrix Animation modes. Explicitly enabled -// For full list of effects, see: -// https://docs.qmk.fm/#/feature_rgb_matrix?id=rgb-matrix-effects -# define RGB_MATRIX_FRAMEBUFFER_EFFECTS -# define RGB_MATRIX_KEYPRESSES - -/* Set LED driver current */ -# define SNLED27351_CURRENT_TUNE \ - { 0x28, 0x28, 0x28, 0x28, 0x28, 0x28, 0x28, 0x28, 0x28, 0x28, 0x28, 0x28 } -#endif diff --git a/keyboards/keychron/q14_pro/ansi_encoder/info.json b/keyboards/keychron/q14_pro/ansi_encoder/info.json deleted file mode 100644 index 1322eadb06..0000000000 --- a/keyboards/keychron/q14_pro/ansi_encoder/info.json +++ /dev/null @@ -1,235 +0,0 @@ -{ - "usb": { - "pid": "0x06E0", - "device_version": "1.0.1" - }, - "layouts": { - "LAYOUT_105_ansi": { - "layout": [ - {"matrix":[0,0], "x":0, "y":0.8}, - {"matrix":[0,1], "x":1, "y":0.8}, - {"matrix":[0,2], "x":2, "y":0.8}, - {"matrix":[0,3], "x":3, "y":0.8}, - {"matrix":[0,4], "x":4.5, "y":0.8}, - {"matrix":[0,5], "x":6, "y":0.8}, - {"matrix":[0,6], "x":7, "y":0.8}, - {"matrix":[0,7], "x":8.25, "y":0}, - {"matrix":[0,8], "x":9.25, "y":0}, - {"matrix":[0,9], "x":10.5, "y":0}, - {"matrix":[0,10], "x":11.5, "y":0}, - {"matrix":[0,11], "x":12.75, "y":2.6}, - {"matrix":[0,12], "x":13.75, "y":2.6}, - {"matrix":[0,13], "x":15, "y":2.6}, - {"matrix":[0,14], "x":16, "y":2.6}, - {"matrix":[0,15], "x":17.3, "y":0.8}, - {"matrix":[0,16], "x":18.3, "y":0.8}, - {"matrix":[0,17], "x":19.75, "y":0.8}, - {"matrix":[0,18], "x":21.25, "y":0.8}, - - {"matrix":[1,0], "x":0, "y":2.3}, - {"matrix":[1,1], "x":1, "y":2.3}, - {"matrix":[1,2], "x":2, "y":2.3}, - {"matrix":[1,3], "x":3, "y":2.3}, - {"matrix":[1,4], "x":5.25, "y":2.3}, - {"matrix":[1,5], "x":6.25, "y":2.3}, - {"matrix":[1,6], "x":7.25, "y":2.1}, - {"matrix":[1,7], "x":8.6, "y":1.35}, - {"matrix":[1,8], "x":9.6, "y":1.35}, - {"matrix":[1,9], "x":10.6, "y":1.35}, - {"matrix":[1,10], "x":11.6, "y":1.35}, - {"matrix":[1,11], "x":12.5, "y":4.0}, - {"matrix":[1,12], "x":13.5, "y":4.0}, - {"matrix":[1,13], "x":14.5, "y":4.0}, - {"matrix":[1,14], "x":15.5, "y":4.0}, - {"matrix":[1,15], "x":16.95, "y":2.2}, - {"matrix":[1,16], "x":17.95, "y":2.1}, - {"matrix":[1,17], "x":18.95, "y":2.2, "w":2}, - {"matrix":[1,18], "x":21.35, "y":2.2}, - - {"matrix":[2,0], "x":0, "y":3.3}, - {"matrix":[2,1], "x":1, "y":3.3}, - {"matrix":[2,2], "x":2, "y":3.3}, - {"matrix":[2,3], "x":3, "y":3.3, "h":2}, - {"matrix":[2,4], "x":5, "y":3.3, "w":1.5}, - {"matrix":[2,5], "x":6.5, "y":3.3}, - {"matrix":[2,6], "x":8.13, "y":2.35}, - {"matrix":[2,7], "x":9.13, "y":2.335}, - {"matrix":[2,8], "x":10.13, "y":2.35}, - {"matrix":[2,9], "x":11.13, "y":2.35}, - {"matrix":[2,10], "x":12.1, "y":5.0}, - {"matrix":[2,11], "x":13.1, "y":5.0}, - {"matrix":[2,12], "x":14.1, "y":5.0}, - {"matrix":[2,13], "x":15.1, "y":5.0}, - {"matrix":[2,14], "x":16.1, "y":5.0}, - {"matrix":[2,15], "x":17.65, "y":3.2}, - {"matrix":[2,16], "x":18.65, "y":3.2}, - {"matrix":[2,17], "x":19.65, "y":3.2, "w":1.5}, - {"matrix":[2,18], "x":21.55, "y":3.2}, - - {"matrix":[3,0], "x":0, "y":4.3}, - {"matrix":[3,1], "x":1, "y":4.3}, - {"matrix":[3,2], "x":2, "y":4.3}, - {"matrix":[3,4], "x":4.75, "y":4.3, "w":1.75}, - {"matrix":[3,5], "x":6.5, "y":4.3}, - {"matrix":[3,6], "x":8.3, "y":3.35}, - {"matrix":[3,7], "x":9.3, "y":3.35}, - {"matrix":[3,8], "x":10.3, "y":3.35}, - {"matrix":[3,9], "x":11.3, "y":3.35}, - {"matrix":[3,11], "x":12.45, "y":6.0}, - {"matrix":[3,12], "x":13.45, "y":6.0}, - {"matrix":[3,13], "x":14.45, "y":6.0}, - {"matrix":[3,14], "x":15.45, "y":6.0}, - {"matrix":[3,15], "x":17.1, "y":4.2}, - {"matrix":[3,16], "x":18.1, "y":4.2}, - {"matrix":[3,17], "x":19.1, "y":4.2, "w":2.25}, - {"matrix":[3,18], "x":21.75, "y":4.2}, - - {"matrix":[4,0], "x":0, "y":5.3}, - {"matrix":[4,1], "x":1, "y":5.3}, - {"matrix":[4,2], "x":2, "y":5.3}, - {"matrix":[4,3], "x":3, "y":5.3, "h":2}, - {"matrix":[4,4], "x":4.5, "y":5.3, "w":2.25}, - {"matrix":[4,6], "x":6.75, "y":5.3}, - {"matrix":[4,7], "x":8.65, "y":4.35}, - {"matrix":[4,8], "x":9.65, "y":4.35}, - {"matrix":[4,9], "x":10.65, "y":4.35}, - {"matrix":[4,10], "x":11.65, "y":4.35}, - {"matrix":[4,11], "x":12, "y":7.0}, - {"matrix":[4,12], "x":13, "y":7.0}, - {"matrix":[4,13], "x":14, "y":7.0}, - {"matrix":[4,14], "x":15, "y":7.0}, - {"matrix":[4,15], "x":16, "y":7.0}, - {"matrix":[4,16], "x":17.75, "y":5.2}, - {"matrix":[4,17], "x":18.75, "y":5.2, "w":1.75}, - {"matrix":[4,18], "x":20.75, "y":5.55}, - - {"matrix":[5,1], "x":0, "y":6.3, "w":2}, - {"matrix":[5,2], "x":2, "y":6.3}, - {"matrix":[5,4], "x":4.5, "y":6.3, "w":1.25}, - {"matrix":[5,5], "x":5.75, "y":6.3, "w":1.25}, - {"matrix":[5,6], "x":8.75, "y":5.35, "w":1.25}, - {"matrix":[5,7], "x":10, "y":5.35, "w":2.25}, - {"matrix":[5,10], "x":12.25, "y":5.35}, - {"matrix":[5,11], "x":12.05, "y":8.0}, - {"matrix":[5,12], "x":13.05, "y":8.0, "w":2.75}, - {"matrix":[5,13], "x":15.8, "y":8.0}, - {"matrix":[5,16], "x":19.75, "y":6.55}, - {"matrix":[5,17], "x":20.75, "y":6.55}, - {"matrix":[5,18], "x":21.75, "y":6.55} - ] - } - }, - "rgb_matrix": { - "layout": [ - {"matrix":[0, 1], "flags":1, "x":10, "y":0}, - {"matrix":[0, 2], "flags":1, "x":21, "y":0}, - {"matrix":[0, 3], "flags":1, "x":31, "y":0}, - {"matrix":[0, 4], "flags":1, "x":46, "y":0}, - {"matrix":[0, 5], "flags":1, "x":61, "y":0}, - {"matrix":[0, 6], "flags":1, "x":72, "y":0}, - {"matrix":[0, 7], "flags":1, "x":84, "y":1}, - {"matrix":[0, 8], "flags":1, "x":94, "y":3}, - {"matrix":[0, 9], "flags":1, "x":107, "y":6}, - {"matrix":[0, 10], "flags":1, "x":117, "y":8}, - {"matrix":[0, 11], "flags":1, "x":135, "y":8}, - {"matrix":[0, 12], "flags":1, "x":146, "y":6}, - {"matrix":[0, 13], "flags":1, "x":158, "y":2}, - {"matrix":[0, 14], "flags":1, "x":168, "y":1}, - {"matrix":[0, 15], "flags":1, "x":180, "y":0}, - {"matrix":[0, 16], "flags":1, "x":191, "y":0}, - {"matrix":[0, 17], "flags":1, "x":206, "y":0}, - {"matrix":[0, 18], "flags":1, "x":221, "y":0}, - - {"matrix":[1, 0], "flags":8, "x":0, "y":14}, - {"matrix":[1, 1], "flags":4, "x":10, "y":14}, - {"matrix":[1, 2], "flags":4, "x":21, "y":14}, - {"matrix":[1, 3], "flags":4, "x":31, "y":14}, - {"matrix":[1, 4], "flags":1, "x":53, "y":14}, - {"matrix":[1, 5], "flags":8, "x":64, "y":14}, - {"matrix":[1, 6], "flags":8, "x":74, "y":13}, - {"matrix":[1, 7], "flags":8, "x":86, "y":15}, - {"matrix":[1, 8], "flags":4, "x":96, "y":17}, - {"matrix":[1, 9], "flags":4, "x":106, "y":20}, - {"matrix":[1, 10], "flags":4, "x":116, "y":22}, - {"matrix":[1, 11], "flags":4, "x":131, "y":22}, - {"matrix":[1, 12], "flags":4, "x":141, "y":20}, - {"matrix":[1, 13], "flags":4, "x":152, "y":17}, - {"matrix":[1, 14], "flags":4, "x":162, "y":15}, - {"matrix":[1, 15], "flags":4, "x":173, "y":13}, - {"matrix":[1, 16], "flags":4, "x":184, "y":14}, - {"matrix":[1, 17], "flags":1, "x":200, "y":14}, - {"matrix":[1, 18], "flags":1, "x":221, "y":14}, - - {"matrix":[2, 0], "flags":4, "x":0, "y":24}, - {"matrix":[2, 1], "flags":4, "x":10, "y":24}, - {"matrix":[2, 2], "flags":4, "x":21, "y":24}, - {"matrix":[2, 3], "flags":4, "x":31, "y":24}, - {"matrix":[2, 4], "flags":1, "x":53, "y":24}, - {"matrix":[2, 5], "flags":4, "x":66, "y":24}, - {"matrix":[2, 6], "flags":4, "x":78, "y":24}, - {"matrix":[2, 7], "flags":4, "x":88, "y":27}, - {"matrix":[2, 8], "flags":4, "x":99, "y":29}, - {"matrix":[2, 9], "flags":4, "x":109, "y":31}, - {"matrix":[2, 10], "flags":4, "x":128, "y":33}, - {"matrix":[2, 11], "flags":4, "x":139, "y":31}, - {"matrix":[2, 12], "flags":4, "x":149, "y":29}, - {"matrix":[2, 13], "flags":4, "x":159, "y":27}, - {"matrix":[2, 14], "flags":4, "x":169, "y":24}, - {"matrix":[2, 15], "flags":4, "x":181, "y":24}, - {"matrix":[2, 16], "flags":4, "x":192, "y":24}, - {"matrix":[2, 17], "flags":1, "x":205, "y":24}, - {"matrix":[2, 18], "flags":1, "x":222, "y":24}, - - {"matrix":[3, 0], "flags":4, "x":0, "y":34}, - {"matrix":[3, 1], "flags":4, "x":10, "y":34}, - {"matrix":[3, 2], "flags":4, "x":21, "y":34}, - {"matrix":[3, 4], "flags":8, "x":53, "y":34}, - {"matrix":[3, 5], "flags":4, "x":67, "y":34}, - {"matrix":[3, 6], "flags":4, "x":79, "y":35}, - {"matrix":[3, 7], "flags":4, "x":89, "y":37}, - {"matrix":[3, 8], "flags":4, "x":99, "y":39}, - {"matrix":[3, 9], "flags":4, "x":109, "y":42}, - {"matrix":[3, 11], "flags":4, "x":133, "y":43}, - {"matrix":[3, 12], "flags":4, "x":143, "y":40}, - {"matrix":[3, 13], "flags":4, "x":154, "y":38}, - {"matrix":[3, 14], "flags":4, "x":164, "y":36}, - {"matrix":[3, 15], "flags":4, "x":176, "y":35}, - {"matrix":[3, 16], "flags":4, "x":186, "y":35}, - {"matrix":[3, 17], "flags":1, "x":203, "y":35}, - {"matrix":[3, 18], "flags":1, "x":224, "y":35}, - - {"matrix":[4, 0], "flags":4, "x":0, "y":45}, - {"matrix":[4, 1], "flags":4, "x":10, "y":45}, - {"matrix":[4, 2], "flags":4, "x":21, "y":45}, - {"matrix":[4, 3], "flags":4, "x":31, "y":45}, - {"matrix":[4, 4], "flags":1, "x":53, "y":45}, - {"matrix":[4, 6], "flags":4, "x":70, "y":45}, - {"matrix":[4, 7], "flags":4, "x":82, "y":46}, - {"matrix":[4, 8], "flags":4, "x":92, "y":48}, - {"matrix":[4, 9], "flags":4, "x":102, "y":51}, - {"matrix":[4, 10], "flags":4, "x":112, "y":53}, - {"matrix":[4, 11], "flags":4, "x":128, "y":54}, - {"matrix":[4, 12], "flags":4, "x":138, "y":52}, - {"matrix":[4, 13], "flags":4, "x":148, "y":50}, - {"matrix":[4, 14], "flags":4, "x":158, "y":48}, - {"matrix":[4, 15], "flags":4, "x":169, "y":46}, - {"matrix":[4, 16], "flags":4, "x":180, "y":45}, - {"matrix":[4, 17], "flags":1, "x":195, "y":45}, - {"matrix":[4, 18], "flags":1, "x":212, "y":47}, - - {"matrix":[5, 1], "flags":4, "x":5, "y":55}, - {"matrix":[5, 2], "flags":4, "x":21, "y":55}, - {"matrix":[5, 4], "flags":1, "x":48, "y":55}, - {"matrix":[5, 5], "flags":1, "x":61, "y":55}, - {"matrix":[5, 6], "flags":1, "x":81, "y":57}, - {"matrix":[5, 7], "flags":4, "x":99, "y":61}, - {"matrix":[5, 10], "flags":1, "x":115, "y":64}, - {"matrix":[5, 11], "flags":4, "x":139, "y":63}, - {"matrix":[5, 12], "flags":1, "x":158, "y":59}, - {"matrix":[5, 13], "flags":1, "x":168, "y":56}, - {"matrix":[5, 16], "flags":1, "x":202, "y":58}, - {"matrix":[5, 17], "flags":1, "x":212, "y":58}, - {"matrix":[5, 18], "flags":1, "x":213, "y":58} - ] - } -} diff --git a/keyboards/keychron/q14_pro/ansi_encoder/keymaps/default/keymap.c b/keyboards/keychron/q14_pro/ansi_encoder/keymaps/default/keymap.c deleted file mode 100644 index 3d9fb497de..0000000000 --- a/keyboards/keychron/q14_pro/ansi_encoder/keymaps/default/keymap.c +++ /dev/null @@ -1,66 +0,0 @@ -/* 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 . - */ - -#include QMK_KEYBOARD_H - -enum layers{ - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN, - FN1, -}; - -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_105_ansi( - KC_MUTE, KC_F13, KC_F14, KC_F15, KC_ESC, KC_BRID, KC_BRIU, KC_MCTL, KC_LPAD, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_DEL, RGB_MOD, - KC_NUM, KC_PSLS, KC_PAST, KC_PMNS, KC_GRV, 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_PGUP, - KC_P7, KC_P8, KC_P9, KC_PPLS, 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_PGDN, - KC_P4, KC_P5, KC_P6, 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_HOME, - KC_P1, KC_P2, KC_P3, KC_PENT, KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, - KC_P0, KC_PDOT, KC_LCTL, KC_LOPTN, KC_LCMMD, KC_SPC, MO(MAC_FN), KC_SPC, KC_RCMMD, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - [MAC_FN] = LAYOUT_105_ansi( - RGB_TOG, _______, _______, _______, _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, RGB_TOG, - _______, _______, _______, _______, _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, BAT_LVL, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - [WIN_BASE] = LAYOUT_105_ansi( - KC_MUTE, _______, _______, _______, KC_ESC, 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_DEL, RGB_MOD, - KC_NUM, KC_PSLS, KC_PAST, KC_PMNS, KC_GRV, 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_PGUP, - KC_P7, KC_P8, KC_P9, KC_PPLS, 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_PGDN, - KC_P4, KC_P5, KC_P6, 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_HOME, - KC_P1, KC_P2, KC_P3, KC_PENT, KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, - KC_P0, KC_PDOT, KC_LCTL, KC_LWIN, KC_LALT, KC_SPC, MO(WIN_FN), KC_SPC, KC_RALT, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - [WIN_FN] = LAYOUT_105_ansi( - RGB_TOG, _______, _______, _______, _______, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, RGB_TOG, - _______, _______, _______, _______, _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, BAT_LVL, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), -}; - -#if defined(ENCODER_MAP_ENABLE) -const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][2] = { - [MAC_BASE] = {ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [MAC_FN] = {ENCODER_CCW_CW(RGB_VAD, RGB_VAI)}, - [WIN_BASE] = {ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [WIN_FN] = {ENCODER_CCW_CW(RGB_VAD, RGB_VAI)}, -}; -#endif // ENCODER_MAP_ENABLE diff --git a/keyboards/keychron/q14_pro/ansi_encoder/keymaps/default/rules.mk b/keyboards/keychron/q14_pro/ansi_encoder/keymaps/default/rules.mk deleted file mode 100644 index ee32568148..0000000000 --- a/keyboards/keychron/q14_pro/ansi_encoder/keymaps/default/rules.mk +++ /dev/null @@ -1 +0,0 @@ -ENCODER_MAP_ENABLE = yes diff --git a/keyboards/keychron/q14_pro/ansi_encoder/keymaps/via/keymap.c b/keyboards/keychron/q14_pro/ansi_encoder/keymaps/via/keymap.c deleted file mode 100644 index 3d9fb497de..0000000000 --- a/keyboards/keychron/q14_pro/ansi_encoder/keymaps/via/keymap.c +++ /dev/null @@ -1,66 +0,0 @@ -/* 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 . - */ - -#include QMK_KEYBOARD_H - -enum layers{ - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN, - FN1, -}; - -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_105_ansi( - KC_MUTE, KC_F13, KC_F14, KC_F15, KC_ESC, KC_BRID, KC_BRIU, KC_MCTL, KC_LPAD, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_DEL, RGB_MOD, - KC_NUM, KC_PSLS, KC_PAST, KC_PMNS, KC_GRV, 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_PGUP, - KC_P7, KC_P8, KC_P9, KC_PPLS, 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_PGDN, - KC_P4, KC_P5, KC_P6, 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_HOME, - KC_P1, KC_P2, KC_P3, KC_PENT, KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, - KC_P0, KC_PDOT, KC_LCTL, KC_LOPTN, KC_LCMMD, KC_SPC, MO(MAC_FN), KC_SPC, KC_RCMMD, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - [MAC_FN] = LAYOUT_105_ansi( - RGB_TOG, _______, _______, _______, _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, RGB_TOG, - _______, _______, _______, _______, _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, BAT_LVL, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - [WIN_BASE] = LAYOUT_105_ansi( - KC_MUTE, _______, _______, _______, KC_ESC, 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_DEL, RGB_MOD, - KC_NUM, KC_PSLS, KC_PAST, KC_PMNS, KC_GRV, 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_PGUP, - KC_P7, KC_P8, KC_P9, KC_PPLS, 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_PGDN, - KC_P4, KC_P5, KC_P6, 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_HOME, - KC_P1, KC_P2, KC_P3, KC_PENT, KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, - KC_P0, KC_PDOT, KC_LCTL, KC_LWIN, KC_LALT, KC_SPC, MO(WIN_FN), KC_SPC, KC_RALT, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - [WIN_FN] = LAYOUT_105_ansi( - RGB_TOG, _______, _______, _______, _______, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, RGB_TOG, - _______, _______, _______, _______, _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, BAT_LVL, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), -}; - -#if defined(ENCODER_MAP_ENABLE) -const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][2] = { - [MAC_BASE] = {ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [MAC_FN] = {ENCODER_CCW_CW(RGB_VAD, RGB_VAI)}, - [WIN_BASE] = {ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [WIN_FN] = {ENCODER_CCW_CW(RGB_VAD, RGB_VAI)}, -}; -#endif // ENCODER_MAP_ENABLE diff --git a/keyboards/keychron/q14_pro/ansi_encoder/keymaps/via/rules.mk b/keyboards/keychron/q14_pro/ansi_encoder/keymaps/via/rules.mk deleted file mode 100644 index f1adcab005..0000000000 --- a/keyboards/keychron/q14_pro/ansi_encoder/keymaps/via/rules.mk +++ /dev/null @@ -1,2 +0,0 @@ -VIA_ENABLE = yes -ENCODER_MAP_ENABLE = yes diff --git a/keyboards/keychron/q14_pro/ansi_encoder/rules.mk b/keyboards/keychron/q14_pro/ansi_encoder/rules.mk deleted file mode 100644 index 6e7633bfe0..0000000000 --- a/keyboards/keychron/q14_pro/ansi_encoder/rules.mk +++ /dev/null @@ -1 +0,0 @@ -# This file intentionally left blank diff --git a/keyboards/keychron/q14_pro/config.h b/keyboards/keychron/q14_pro/config.h deleted file mode 100644 index 185fb3ce04..0000000000 --- a/keyboards/keychron/q14_pro/config.h +++ /dev/null @@ -1,90 +0,0 @@ -/* 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 . - */ - -#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 \ - { 23, 24, 25 } - -# define BAT_LEVEL_LED_LIST \ - { 23, 24, 25, 26, 27, 28, 29, 30, 31, 32 } - -/* 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 WEAR_LEVELING_LOGICAL_SIZE 2048 -#define WEAR_LEVELING_BACKING_SIZE (WEAR_LEVELING_LOGICAL_SIZE * 2) -#define DYNAMIC_KEYMAP_EEPROM_MAX_ADDR 2047 - -/* Encoder Configuration */ -#ifdef ENCODER_ENABLE -# define ENCODER_DEFAULT_POS 0x3 -#endif - -/* HC595 Driver configuration */ -#define HC595_END_INDEX 18 - -/* Factory test keys */ -#define FN_KEY1 MO(1) -#define FN_KEY2 MO(3) diff --git a/keyboards/keychron/q14_pro/halconf.h b/keyboards/keychron/q14_pro/halconf.h deleted file mode 100644 index 8d8e138e4e..0000000000 --- a/keyboards/keychron/q14_pro/halconf.h +++ /dev/null @@ -1,29 +0,0 @@ -/* Copyright 2023 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 _CHIBIOS_HAL_CONF_VER_8_0_ - -#define HAL_USE_I2C TRUE - -#ifdef KC_BLUETOOTH_ENABLE -# define PAL_USE_CALLBACKS TRUE -# define HAL_USE_SERIAL TRUE -# define HAL_USE_RTC TRUE -#endif - -#include_next diff --git a/keyboards/keychron/q14_pro/info.json b/keyboards/keychron/q14_pro/info.json deleted file mode 100644 index faac26077f..0000000000 --- a/keyboards/keychron/q14_pro/info.json +++ /dev/null @@ -1,64 +0,0 @@ -{ - "manufacturer": "Keychron", - "keyboard_name": "Keychron Q14 Pro", - "url": "https://github.com/Keychron", - "maintainer": "lalalademaxiya1", - "processor": "STM32L432", - "bootloader": "stm32-dfu", - "usb": { - "vid": "0x3434" - }, - "features": { - "bootmagic": true, - "command": false, - "console": false, - "extrakey": true, - "mousekey": true, - "nkro": true, - "rgb_matrix": true, - "dip_switch": true, - "encoder": true, - "raw": true - }, - "rgb_matrix": { - "driver": "snled27351", - "animations": { - "breathing": true, - "band_spiral_val": true, - "cycle_all": true, - "cycle_left_right": true, - "cycle_up_down": true, - "rainbow_moving_chevron": true, - "cycle_out_in": true, - "cycle_out_in_dual": true, - "cycle_pinwheel": true, - "cycle_spiral": true, - "dual_beacon": true, - "rainbow_beacon": true, - "jellybean_raindrops": true, - "pixel_rain": true, - "typing_heatmap": true, - "digital_rain": true, - "solid_reactive_simple": true, - "solid_reactive_multiwide": true, - "solid_reactive_multinexus": true, - "splash": true, - "solid_splash": true - } - }, - "bootmagic": { - "matrix": [0, 4] - }, - "matrix_pins": { - "cols": [null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null], - "rows": ["B5", "B4", "B3", "A15", "A14", "A13"], - "custom": true, - "custom_lite": true - }, - "diode_direction": "ROW2COL", - "encoder": { - "rotary": [ - {"pin_a": "A0", "pin_b": "A10"} - ] - } -} diff --git a/keyboards/keychron/q14_pro/iso_encoder/config.h b/keyboards/keychron/q14_pro/iso_encoder/config.h deleted file mode 100644 index 479204495b..0000000000 --- a/keyboards/keychron/q14_pro/iso_encoder/config.h +++ /dev/null @@ -1,53 +0,0 @@ -/* 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 . - */ - -#pragma once - -#ifdef RGB_MATRIX_ENABLE -/* RGB Matrix Driver Configuration */ -# define DRIVER_COUNT 2 -# define DRIVER_ADDR_1 0b1110111 -# define DRIVER_ADDR_2 0b1110100 - -/* RGB Matrix Configuration */ -# define DRIVER_1_LED_TOTAL 56 -# define DRIVER_2_LED_TOTAL 49 -# define RGB_MATRIX_LED_COUNT (DRIVER_1_LED_TOTAL + DRIVER_2_LED_TOTAL) - -/* Set to infinit, which is use in USB mode by default */ -# define RGB_MATRIX_TIMEOUT RGB_MATRIX_TIMEOUT_INFINITE - -/* Allow to shutdown driver to save power */ -# define RGB_MATRIX_DRIVER_SHUTDOWN_ENABLE - -/* Turn off backllit if brightness value is low */ -# define RGB_MATRIX_BRIGHTNESS_TURN_OFF_VAL 48 - -/* Indication led */ -# define NUM_LOCK_INDEX 18 -# define CAPS_LOCK_INDEX 58 -# define LOW_BAT_IND_INDEX 99 - -// RGB Matrix Animation modes. Explicitly enabled -// For full list of effects, see: -// https://docs.qmk.fm/#/feature_rgb_matrix?id=rgb-matrix-effects -# define RGB_MATRIX_FRAMEBUFFER_EFFECTS -# define RGB_MATRIX_KEYPRESSES - -/* Set LED driver current */ -# define SNLED27351_CURRENT_TUNE \ - { 0x28, 0x28, 0x28, 0x28, 0x28, 0x28, 0x28, 0x28, 0x28, 0x28, 0x28, 0x28 } -#endif diff --git a/keyboards/keychron/q14_pro/iso_encoder/info.json b/keyboards/keychron/q14_pro/iso_encoder/info.json deleted file mode 100644 index 3ceca56ba6..0000000000 --- a/keyboards/keychron/q14_pro/iso_encoder/info.json +++ /dev/null @@ -1,237 +0,0 @@ -{ - "usb": { - "pid": "0x06E1", - "device_version": "1.0.0" - }, - "layouts": { - "LAYOUT_106_iso": { - "layout": [ - {"matrix":[0,0], "x":0, "y":0.85}, - {"matrix":[0,1], "x":1, "y":0.85}, - {"matrix":[0,2], "x":2, "y":0.85}, - {"matrix":[0,3], "x":3, "y":0.85}, - {"matrix":[0,4], "x":4.5, "y":0.85}, - {"matrix":[0,5], "x":6, "y":0.85}, - {"matrix":[0,6], "x":7, "y":0.85}, - {"matrix":[0,7], "x":8.25, "y":0}, - {"matrix":[0,8], "x":9.25, "y":0}, - {"matrix":[0,9], "x":10.5, "y":0}, - {"matrix":[0,10], "x":11.5, "y":0}, - {"matrix":[0,11], "x":12.75, "y":2.6}, - {"matrix":[0,12], "x":13.75, "y":2.6}, - {"matrix":[0,13], "x":15, "y":2.6}, - {"matrix":[0,14], "x":16, "y":2.6}, - {"matrix":[0,15], "x":17.3, "y":0.8}, - {"matrix":[0,16], "x":18.3, "y":0.8}, - {"matrix":[0,17], "x":19.75, "y":0.8}, - {"matrix":[0,18], "x":21.25, "y":0.8}, - - {"matrix":[1,0], "x":0, "y":2.3}, - {"matrix":[1,1], "x":1, "y":2.3}, - {"matrix":[1,2], "x":2, "y":2.3}, - {"matrix":[1,3], "x":3, "y":2.3}, - {"matrix":[1,4], "x":5.25, "y":2.3}, - {"matrix":[1,5], "x":6.25, "y":2.3}, - {"matrix":[1,6], "x":7.25, "y":2.1}, - {"matrix":[1,7], "x":8.6, "y":1.35}, - {"matrix":[1,8], "x":9.6, "y":1.35}, - {"matrix":[1,9], "x":10.6, "y":1.35}, - {"matrix":[1,10], "x":11.6, "y":1.35}, - {"matrix":[1,11], "x":12.5, "y":4.0}, - {"matrix":[1,12], "x":13.5, "y":4.0}, - {"matrix":[1,13], "x":14.5, "y":4.0}, - {"matrix":[1,14], "x":15.5, "y":4.0}, - {"matrix":[1,15], "x":16.95, "y":2.2}, - {"matrix":[1,16], "x":17.95, "y":2.1}, - {"matrix":[1,17], "x":18.95, "y":2.2, "w":2}, - {"matrix":[1,18], "x":21.35, "y":2.2}, - - {"matrix":[2,0], "x":0, "y":3.3}, - {"matrix":[2,1], "x":1, "y":3.3}, - {"matrix":[2,2], "x":2, "y":3.3}, - {"matrix":[2,3], "x":3, "y":3.3, "h":2}, - {"matrix":[2,4], "x":5, "y":3.3, "w":1.5}, - {"matrix":[2,5], "x":6.5, "y":3.3}, - {"matrix":[2,6], "x":8.13, "y":2.35}, - {"matrix":[2,7], "x":9.13, "y":2.35}, - {"matrix":[2,8], "x":10.13, "y":2.35}, - {"matrix":[2,9], "x":11.13, "y":2.35}, - {"matrix":[2,10], "x":12.1, "y":5.0}, - {"matrix":[2,11], "x":13.1, "y":5.0}, - {"matrix":[2,12], "x":14.1, "y":5.0}, - {"matrix":[2,13], "x":15.1, "y":5.0}, - {"matrix":[2,14], "x":16.1, "y":5.0}, - {"matrix":[2,15], "x":17.85, "y":3.2}, - {"matrix":[2,16], "x":18.85, "y":3.2}, - {"matrix":[2,18], "x":21.55, "y":3.2}, - - {"matrix":[3,0], "x":0, "y":4.3}, - {"matrix":[3,1], "x":1, "y":4.3}, - {"matrix":[3,2], "x":2, "y":4.3}, - {"matrix":[3,4], "x":4.75, "y":4.3, "w":1.75}, - {"matrix":[3,5], "x":6.5, "y":4.3}, - {"matrix":[3,6], "x":8.3, "y":3.35}, - {"matrix":[3,7], "x":9.3, "y":3.35}, - {"matrix":[3,8], "x":10.3, "y":3.35}, - {"matrix":[3,9], "x":11.3, "y":3.35}, - {"matrix":[3,11], "x":12.45, "y":6.0}, - {"matrix":[3,12], "x":13.45, "y":6.0}, - {"matrix":[3,13], "x":14.45, "y":6.0}, - {"matrix":[3,14], "x":15.45, "y":6.0}, - {"matrix":[3,15], "x":17.1, "y":4.2}, - {"matrix":[3,16], "x":18.1, "y":4.2}, - {"matrix":[3,17], "x":19.1, "y":4.2}, - {"matrix":[2,17], "x":20.1, "y":3.2, "w":1.25, "h":2}, - {"matrix":[3,18], "x":21.75, "y":4.2}, - - {"matrix":[4,0], "x":0, "y":5.3}, - {"matrix":[4,1], "x":1, "y":5.3}, - {"matrix":[4,2], "x":2, "y":5.3}, - {"matrix":[4,3], "x":3, "y":5.3, "h":2}, - {"matrix":[4,4], "x":4.5, "y":5.3, "w":1.25}, - {"matrix":[4,5], "x":5.75, "y":5.3}, - {"matrix":[4,6], "x":6.75, "y":5.3}, - {"matrix":[4,7], "x":8.65, "y":4.35}, - {"matrix":[4,8], "x":9.65, "y":4.35}, - {"matrix":[4,9], "x":10.65, "y":4.35}, - {"matrix":[4,10], "x":11.65, "y":4.35}, - {"matrix":[4,11], "x":12, "y":7.0}, - {"matrix":[4,12], "x":13, "y":7.0}, - {"matrix":[4,13], "x":14, "y":7.0}, - {"matrix":[4,14], "x":15, "y":7.0}, - {"matrix":[4,15], "x":16, "y":7.0}, - {"matrix":[4,16], "x":17.75, "y":5.2}, - {"matrix":[4,17], "x":18.75, "y":5.2, "w":1.75}, - {"matrix":[4,18], "x":20.75, "y":5.55}, - - {"matrix":[5,1], "x":0, "y":6.3, "w":2}, - {"matrix":[5,2], "x":2, "y":6.3}, - {"matrix":[5,4], "x":4.5, "y":6.3, "w":1.25}, - {"matrix":[5,5], "x":5.75, "y":6.3, "w":1.25}, - {"matrix":[5,6], "x":8.75, "y":5.35, "w":1.25}, - {"matrix":[5,7], "x":10, "y":5.35, "w":2.25}, - {"matrix":[5,10], "x":12.25, "y":5.35}, - {"matrix":[5,11], "x":12.05, "y":8.0}, - {"matrix":[5,12], "x":13.05, "y":8.0, "w":2.75}, - {"matrix":[5,13], "x":15.8, "y":8.0}, - {"matrix":[5,16], "x":19.75, "y":6.55}, - {"matrix":[5,17], "x":20.75, "y":6.55}, - {"matrix":[5,18], "x":21.75, "y":6.55} - ] - } - }, - "rgb_matrix": { - "layout": [ - {"matrix":[0, 1], "flags":1, "x":10, "y":0}, - {"matrix":[0, 2], "flags":1, "x":21, "y":0}, - {"matrix":[0, 3], "flags":1, "x":31, "y":0}, - {"matrix":[0, 4], "flags":1, "x":46, "y":0}, - {"matrix":[0, 5], "flags":1, "x":61, "y":0}, - {"matrix":[0, 6], "flags":1, "x":72, "y":0}, - {"matrix":[0, 7], "flags":1, "x":84, "y":1}, - {"matrix":[0, 8], "flags":1, "x":94, "y":3}, - {"matrix":[0, 9], "flags":1, "x":107, "y":6}, - {"matrix":[0, 10], "flags":1, "x":117, "y":8}, - {"matrix":[0, 11], "flags":1, "x":135, "y":8}, - {"matrix":[0, 12], "flags":1, "x":146, "y":6}, - {"matrix":[0, 13], "flags":1, "x":158, "y":2}, - {"matrix":[0, 14], "flags":1, "x":168, "y":1}, - {"matrix":[0, 15], "flags":1, "x":180, "y":0}, - {"matrix":[0, 16], "flags":1, "x":191, "y":0}, - {"matrix":[0, 17], "flags":1, "x":206, "y":0}, - {"matrix":[0, 18], "flags":1, "x":221, "y":0}, - - {"matrix":[1, 0], "flags":8, "x":0, "y":14}, - {"matrix":[1, 1], "flags":4, "x":10, "y":14}, - {"matrix":[1, 2], "flags":4, "x":21, "y":14}, - {"matrix":[1, 3], "flags":4, "x":31, "y":14}, - {"matrix":[1, 4], "flags":4, "x":53, "y":14}, - {"matrix":[1, 5], "flags":8, "x":64, "y":14}, - {"matrix":[1, 6], "flags":8, "x":74, "y":13}, - {"matrix":[1, 7], "flags":8, "x":86, "y":15}, - {"matrix":[1, 8], "flags":4, "x":96, "y":17}, - {"matrix":[1, 9], "flags":4, "x":106, "y":20}, - {"matrix":[1, 10], "flags":4, "x":116, "y":22}, - {"matrix":[1, 11], "flags":4, "x":131, "y":22}, - {"matrix":[1, 12], "flags":4, "x":141, "y":20}, - {"matrix":[1, 13], "flags":4, "x":152, "y":17}, - {"matrix":[1, 14], "flags":4, "x":162, "y":15}, - {"matrix":[1, 15], "flags":4, "x":173, "y":13}, - {"matrix":[1, 16], "flags":4, "x":184, "y":14}, - {"matrix":[1, 17], "flags":1, "x":200, "y":14}, - {"matrix":[1, 18], "flags":1, "x":221, "y":14}, - - {"matrix":[2, 0], "flags":4, "x":0, "y":24}, - {"matrix":[2, 1], "flags":4, "x":10, "y":24}, - {"matrix":[2, 2], "flags":4, "x":21, "y":24}, - {"matrix":[2, 3], "flags":4, "x":31, "y":24}, - {"matrix":[2, 4], "flags":1, "x":53, "y":24}, - {"matrix":[2, 5], "flags":4, "x":66, "y":24}, - {"matrix":[2, 6], "flags":4, "x":78, "y":24}, - {"matrix":[2, 7], "flags":4, "x":88, "y":27}, - {"matrix":[2, 8], "flags":4, "x":99, "y":29}, - {"matrix":[2, 9], "flags":4, "x":109, "y":31}, - {"matrix":[2, 10], "flags":4, "x":128, "y":33}, - {"matrix":[2, 11], "flags":4, "x":139, "y":31}, - {"matrix":[2, 12], "flags":4, "x":149, "y":29}, - {"matrix":[2, 13], "flags":4, "x":159, "y":27}, - {"matrix":[2, 14], "flags":4, "x":169, "y":24}, - {"matrix":[2, 15], "flags":4, "x":184, "y":24}, - {"matrix":[2, 16], "flags":4, "x":195, "y":24}, - {"matrix":[2, 18], "flags":1, "x":222, "y":24}, - - {"matrix":[3, 0], "flags":4, "x":0, "y":34}, - {"matrix":[3, 1], "flags":4, "x":10, "y":34}, - {"matrix":[3, 2], "flags":4, "x":21, "y":34}, - {"matrix":[3, 4], "flags":8, "x":53, "y":34}, - {"matrix":[3, 5], "flags":4, "x":67, "y":34}, - {"matrix":[3, 6], "flags":4, "x":79, "y":35}, - {"matrix":[3, 7], "flags":4, "x":89, "y":37}, - {"matrix":[3, 8], "flags":4, "x":99, "y":39}, - {"matrix":[3, 9], "flags":4, "x":109, "y":42}, - {"matrix":[3, 11], "flags":4, "x":133, "y":43}, - {"matrix":[3, 12], "flags":4, "x":143, "y":40}, - {"matrix":[3, 13], "flags":4, "x":154, "y":38}, - {"matrix":[3, 14], "flags":4, "x":164, "y":36}, - {"matrix":[3, 15], "flags":4, "x":176, "y":35}, - {"matrix":[3, 16], "flags":4, "x":186, "y":35}, - {"matrix":[3, 17], "flags":1, "x":198, "y":35}, - {"matrix":[2, 17], "flags":1, "x":209, "y":29}, - {"matrix":[3, 18], "flags":1, "x":224, "y":35}, - - {"matrix":[4, 0], "flags":4, "x":0, "y":45}, - {"matrix":[4, 1], "flags":4, "x":10, "y":45}, - {"matrix":[4, 2], "flags":4, "x":21, "y":45}, - {"matrix":[4, 3], "flags":4, "x":31, "y":45}, - {"matrix":[4, 4], "flags":1, "x":53, "y":45}, - {"matrix":[4, 5], "flags":1, "x":61, "y":45}, - {"matrix":[4, 6], "flags":4, "x":70, "y":45}, - {"matrix":[4, 7], "flags":4, "x":82, "y":46}, - {"matrix":[4, 8], "flags":4, "x":92, "y":48}, - {"matrix":[4, 9], "flags":4, "x":102, "y":51}, - {"matrix":[4, 10], "flags":4, "x":112, "y":53}, - {"matrix":[4, 11], "flags":4, "x":128, "y":54}, - {"matrix":[4, 12], "flags":4, "x":138, "y":52}, - {"matrix":[4, 13], "flags":4, "x":148, "y":50}, - {"matrix":[4, 14], "flags":4, "x":158, "y":48}, - {"matrix":[4, 15], "flags":4, "x":169, "y":46}, - {"matrix":[4, 16], "flags":4, "x":180, "y":45}, - {"matrix":[4, 17], "flags":1, "x":195, "y":45}, - {"matrix":[4, 18], "flags":1, "x":212, "y":47}, - - {"matrix":[5, 1], "flags":4, "x":5, "y":55}, - {"matrix":[5, 2], "flags":4, "x":21, "y":55}, - {"matrix":[5, 4], "flags":1, "x":48, "y":55}, - {"matrix":[5, 5], "flags":1, "x":61, "y":55}, - {"matrix":[5, 6], "flags":1, "x":81, "y":57}, - {"matrix":[5, 7], "flags":4, "x":99, "y":61}, - {"matrix":[5, 10], "flags":1, "x":115, "y":64}, - {"matrix":[5, 11], "flags":4, "x":139, "y":63}, - {"matrix":[5, 12], "flags":1, "x":158, "y":59}, - {"matrix":[5, 13], "flags":1, "x":168, "y":56}, - {"matrix":[5, 16], "flags":1, "x":202, "y":58}, - {"matrix":[5, 17], "flags":1, "x":212, "y":58}, - {"matrix":[5, 18], "flags":1, "x":213, "y":58} - ] - } -} diff --git a/keyboards/keychron/q14_pro/iso_encoder/iso_encoder.c b/keyboards/keychron/q14_pro/iso_encoder/iso_encoder.c deleted file mode 100644 index c69e2d75c3..0000000000 --- a/keyboards/keychron/q14_pro/iso_encoder/iso_encoder.c +++ /dev/null @@ -1,139 +0,0 @@ -/* 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 . - */ - -#include "quantum.h" - -// clang-format off -#ifdef RGB_MATRIX_ENABLE -const snled27351_led_t g_snled27351_leds[RGB_MATRIX_LED_COUNT] = { -/* Refer to snled27351manual for these locations - * driver - * | R location - * | | G location - * | | | B location - * | | | | */ - {0, L_8, J_8, K_8}, - {0, L_7, J_7, K_7}, - {0, C_1, A_1, B_1}, - {0, C_2, A_2, B_2}, - {0, C_3, A_3, B_3}, - {0, C_4, A_4, B_4}, - {0, C_5, A_5, B_5}, - {0, C_6, A_6, B_6}, - {0, C_7, A_7, B_7}, - {0, C_8, A_8, B_8}, - {0, C_9, A_9, B_9}, - {0, C_10, A_10, B_10}, - {0, C_11, A_11, B_11}, - {0, C_12, A_12, B_12}, - {0, C_13, A_13, B_13}, - {0, C_14, A_14, B_14}, - {0, C_15, A_15, B_15}, - {0, C_16, A_16, B_16}, - - {0, L_6, J_6, K_6}, - {0, L_5, J_5, K_5}, - {0, L_4, J_4, K_4}, - {0, I_1, G_1, H_1}, - {0, I_2, G_2, H_2}, - {0, I_3, G_3, H_3}, - {0, I_4, G_4, H_4}, - {0, I_5, G_5, H_5}, - {0, I_6, G_6, H_6}, - {0, I_7, G_7, H_7}, - {0, I_8, G_8, H_8}, - {0, I_9, G_9, H_9}, - {0, I_10, G_10, H_10}, - {0, I_11, G_11, H_11}, - {0, I_12, G_12, H_12}, - {0, I_13, G_13, H_13}, - {0, I_14, G_14, H_14}, - {0, I_15, G_15, H_15}, - {0, I_16, G_16, H_16}, - - {0, L_3, J_3, K_3}, - {0, L_2, J_2, K_2}, - {0, L_1, J_1, K_1}, - {0, F_1, D_1, E_1}, - {0, F_2, D_2, E_2}, - {0, F_3, D_3, E_3}, - {0, F_4, D_4, E_4}, - {0, F_5, D_5, E_5}, - {0, F_6, D_6, E_6}, - {0, F_7, D_7, E_7}, - {0, F_8, D_8, E_8}, - {0, F_9, D_9, E_9}, - {0, F_10, D_10, E_10}, - {0, F_11, D_11, E_11}, - {0, F_12, D_12, E_12}, - {0, F_13, D_13, E_13}, - {0, F_14, D_14, E_14}, - {0, F_16, D_16, E_16}, - - {1, L_9, J_9, K_9}, - {1, L_10, J_10, K_10}, - {1, L_11, J_11, K_11}, - {1, C_15, A_15, B_15}, - {1, C_14, A_14, B_14}, - {1, C_13, A_13, B_13}, - {1, C_12, A_12, B_12}, - {1, C_11, A_11, B_11}, - {1, C_10, A_10, B_10}, - {1, C_8, A_8, B_8}, - {1, C_7, A_7, B_7}, - {1, C_6, A_6, B_6}, - {1, C_5, A_5, B_5}, - {1, C_4, A_4, B_4}, - {1, C_3, A_3, B_3}, - {1, C_2, A_2, B_2}, - {0, F_15, D_15, E_15}, - {1, C_1, A_1, B_1}, - - {1, L_12, J_12, K_12}, - {1, L_13, J_13, K_13}, - {1, L_14, J_14, K_14}, - {1, I_16, G_16, H_16}, - {1, I_15, G_15, H_15}, - {1, I_14, G_14, H_14}, - {1, I_13, G_13, H_13}, - {1, I_12, G_12, H_12}, - {1, I_11, G_11, H_11}, - {1, I_10, G_10, H_10}, - {1, I_9, G_9, H_9}, - {1, I_8, G_8, H_8}, - {1, I_7, G_7, H_7}, - {1, I_6, G_6, H_6}, - {1, I_5, G_5, H_5}, - {1, I_4, G_4, H_4}, - {1, I_3, G_3, H_3}, - {1, I_2, G_2, H_2}, - {1, I_1, G_1, H_1}, - - {1, L_15, J_15, K_15}, - {1, L_16, J_16, K_16}, - {1, F_15, D_15, E_15}, - {1, F_14, D_14, E_14}, - {1, F_13, D_13, E_13}, - {1, F_12, D_12, E_12}, - {1, F_9, D_9, E_9}, - {1, F_8, D_8, E_8}, - {1, F_7, D_7, E_7}, - {1, F_6, D_6, E_6}, - {1, F_3, D_3, E_3}, - {1, F_2, D_2, E_2}, - {1, F_1, D_1, E_1}, -}; -#endif diff --git a/keyboards/keychron/q14_pro/iso_encoder/keymaps/default/keymap.c b/keyboards/keychron/q14_pro/iso_encoder/keymaps/default/keymap.c deleted file mode 100644 index 1ee2e13a1d..0000000000 --- a/keyboards/keychron/q14_pro/iso_encoder/keymaps/default/keymap.c +++ /dev/null @@ -1,66 +0,0 @@ -/* 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 . - */ - -#include QMK_KEYBOARD_H - -enum layers{ - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN, - FN1, -}; - -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_106_iso( - KC_MUTE, KC_F13, KC_F14, KC_F15, KC_ESC, KC_BRID, KC_BRIU, KC_MCTL, KC_LPAD, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_DEL, RGB_MOD, - KC_NUM, KC_PSLS, KC_PAST, KC_PMNS, KC_GRV, 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_PGUP, - KC_P7, KC_P8, KC_P9, KC_PPLS, 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_PGDN, - KC_P4, KC_P5, KC_P6, 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_NUHS, KC_ENT, KC_HOME, - KC_P1, KC_P2, KC_P3, KC_PENT, KC_LSFT, KC_NUBS, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, - KC_P0, KC_PDOT, KC_LCTL, KC_LOPTN, KC_LCMMD, KC_SPC, MO(MAC_FN), KC_SPC, KC_RCMMD, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - [MAC_FN] = LAYOUT_106_iso( - RGB_TOG, _______, _______, _______, _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, RGB_TOG, - _______, _______, _______, _______, _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, BAT_LVL, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - [WIN_BASE] = LAYOUT_106_iso( - KC_MUTE, _______, _______, _______, KC_ESC, 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_DEL, RGB_MOD, - KC_NUM, KC_PSLS, KC_PAST, KC_PMNS, KC_GRV, 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_PGUP, - KC_P7, KC_P8, KC_P9, KC_PPLS, 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_PGDN, - KC_P4, KC_P5, KC_P6, 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_NUHS, KC_ENT, KC_HOME, - KC_P1, KC_P2, KC_P3, KC_PENT, KC_LSFT, KC_NUBS, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, - KC_P0, KC_PDOT, KC_LCTL, KC_LWIN, KC_LALT, KC_SPC, MO(WIN_FN), KC_SPC, KC_RALT, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - [WIN_FN] = LAYOUT_106_iso( - RGB_TOG, _______, _______, _______, _______, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, RGB_TOG, - _______, _______, _______, _______, _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, BAT_LVL, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), -}; - -#if defined(ENCODER_MAP_ENABLE) -const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][2] = { - [MAC_BASE] = {ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [MAC_FN] = {ENCODER_CCW_CW(RGB_VAD, RGB_VAI)}, - [WIN_BASE] = {ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [WIN_FN] = {ENCODER_CCW_CW(RGB_VAD, RGB_VAI)}, -}; -#endif // ENCODER_MAP_ENABLE diff --git a/keyboards/keychron/q14_pro/iso_encoder/keymaps/default/rules.mk b/keyboards/keychron/q14_pro/iso_encoder/keymaps/default/rules.mk deleted file mode 100644 index ee32568148..0000000000 --- a/keyboards/keychron/q14_pro/iso_encoder/keymaps/default/rules.mk +++ /dev/null @@ -1 +0,0 @@ -ENCODER_MAP_ENABLE = yes diff --git a/keyboards/keychron/q14_pro/iso_encoder/keymaps/via/keymap.c b/keyboards/keychron/q14_pro/iso_encoder/keymaps/via/keymap.c deleted file mode 100644 index 1ee2e13a1d..0000000000 --- a/keyboards/keychron/q14_pro/iso_encoder/keymaps/via/keymap.c +++ /dev/null @@ -1,66 +0,0 @@ -/* 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 . - */ - -#include QMK_KEYBOARD_H - -enum layers{ - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN, - FN1, -}; - -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_106_iso( - KC_MUTE, KC_F13, KC_F14, KC_F15, KC_ESC, KC_BRID, KC_BRIU, KC_MCTL, KC_LPAD, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_DEL, RGB_MOD, - KC_NUM, KC_PSLS, KC_PAST, KC_PMNS, KC_GRV, 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_PGUP, - KC_P7, KC_P8, KC_P9, KC_PPLS, 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_PGDN, - KC_P4, KC_P5, KC_P6, 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_NUHS, KC_ENT, KC_HOME, - KC_P1, KC_P2, KC_P3, KC_PENT, KC_LSFT, KC_NUBS, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, - KC_P0, KC_PDOT, KC_LCTL, KC_LOPTN, KC_LCMMD, KC_SPC, MO(MAC_FN), KC_SPC, KC_RCMMD, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - [MAC_FN] = LAYOUT_106_iso( - RGB_TOG, _______, _______, _______, _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, RGB_TOG, - _______, _______, _______, _______, _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, BAT_LVL, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - [WIN_BASE] = LAYOUT_106_iso( - KC_MUTE, _______, _______, _______, KC_ESC, 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_DEL, RGB_MOD, - KC_NUM, KC_PSLS, KC_PAST, KC_PMNS, KC_GRV, 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_PGUP, - KC_P7, KC_P8, KC_P9, KC_PPLS, 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_PGDN, - KC_P4, KC_P5, KC_P6, 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_NUHS, KC_ENT, KC_HOME, - KC_P1, KC_P2, KC_P3, KC_PENT, KC_LSFT, KC_NUBS, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, - KC_P0, KC_PDOT, KC_LCTL, KC_LWIN, KC_LALT, KC_SPC, MO(WIN_FN), KC_SPC, KC_RALT, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - [WIN_FN] = LAYOUT_106_iso( - RGB_TOG, _______, _______, _______, _______, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, RGB_TOG, - _______, _______, _______, _______, _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, BAT_LVL, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), -}; - -#if defined(ENCODER_MAP_ENABLE) -const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][2] = { - [MAC_BASE] = {ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [MAC_FN] = {ENCODER_CCW_CW(RGB_VAD, RGB_VAI)}, - [WIN_BASE] = {ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [WIN_FN] = {ENCODER_CCW_CW(RGB_VAD, RGB_VAI)}, -}; -#endif // ENCODER_MAP_ENABLE diff --git a/keyboards/keychron/q14_pro/iso_encoder/keymaps/via/rules.mk b/keyboards/keychron/q14_pro/iso_encoder/keymaps/via/rules.mk deleted file mode 100644 index f1adcab005..0000000000 --- a/keyboards/keychron/q14_pro/iso_encoder/keymaps/via/rules.mk +++ /dev/null @@ -1,2 +0,0 @@ -VIA_ENABLE = yes -ENCODER_MAP_ENABLE = yes diff --git a/keyboards/keychron/q14_pro/iso_encoder/rules.mk b/keyboards/keychron/q14_pro/iso_encoder/rules.mk deleted file mode 100644 index 6e7633bfe0..0000000000 --- a/keyboards/keychron/q14_pro/iso_encoder/rules.mk +++ /dev/null @@ -1 +0,0 @@ -# This file intentionally left blank diff --git a/keyboards/keychron/q14_pro/mcuconf.h b/keyboards/keychron/q14_pro/mcuconf.h deleted file mode 100644 index 882d6bd568..0000000000 --- a/keyboards/keychron/q14_pro/mcuconf.h +++ /dev/null @@ -1,36 +0,0 @@ -/* Copyright 2023 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 - -/* Set HCLK to 48 MHz as tradeoff of USB lowest clockand and - * lower power comsumption for bluetooth. Will use dynamic - * clock when STM32L4 is supported in ChibiOS */ -#undef STM32_PLLM_VALUE -#define STM32_PLLM_VALUE 2 - -#undef STM32_PLLN_VALUE -#define STM32_PLLN_VALUE 12 - -#undef STM32_I2C_USE_I2C1 -#define STM32_I2C_USE_I2C1 TRUE - -#ifdef KC_BLUETOOTH_ENABLE -# undef STM32_SERIAL_USE_USART2 -# define STM32_SERIAL_USE_USART2 TRUE -#endif diff --git a/keyboards/keychron/q14_pro/q14_pro.c b/keyboards/keychron/q14_pro/q14_pro.c deleted file mode 100644 index de6a3f22e5..0000000000 --- a/keyboards/keychron/q14_pro/q14_pro.c +++ /dev/null @@ -1,313 +0,0 @@ -/* 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 . - */ - -#include "q14_pro.h" -#ifdef KC_BLUETOOTH_ENABLE -# include "ckbt51.h" -# include "bluetooth.h" -# include "indicator.h" -# include "transport.h" -# include "battery.h" -# include "bat_level_animation.h" -# include "lpm.h" -#endif - -#ifdef ENABLE_FACTORY_TEST -# include "factory_test.h" -#endif - -typedef struct PACKED { - uint8_t len; - uint8_t keycode[3]; -} key_combination_t; - -static uint32_t factory_timer_buffer = 0; -static uint32_t siri_timer_buffer = 0; -static uint8_t mac_keycode[4] = {KC_LOPT, KC_ROPT, KC_LCMD, KC_RCMD}; - -key_combination_t key_comb_list[4] = { - {2, {KC_LWIN, KC_TAB}}, // Task (win) - {2, {KC_LWIN, KC_E}}, // Files (win) - {3, {KC_LSFT, KC_LGUI, KC_4}}, // Snapshot (mac) - {2, {KC_LWIN, KC_C}} // Cortana (win) -}; - -#ifdef KC_BLUETOOTH_ENABLE -bool firstDisconnect = true; -bool bt_factory_reset = false; -static virtual_timer_t pairing_key_timer; -extern uint8_t g_pwm_buffer[DRIVER_COUNT][192]; - -static void pairing_key_timer_cb(void *arg) { - bluetooth_pairing_ex(*(uint8_t *)arg, NULL); -} -#endif - -bool dip_switch_update_kb(uint8_t index, bool active) { - if (index == 0) { -#ifdef INVERT_OS_SWITCH_STATE - default_layer_set(1UL << (!active ? 2 : 0)); -#else - default_layer_set(1UL << (active ? 2 : 0)); -#endif - } - dip_switch_update_user(index, active); - - return true; -} - -#ifdef KC_BLUETOOTH_ENABLE -bool process_record_kb_bt(uint16_t keycode, keyrecord_t *record) { -#else -bool process_record_kb(uint16_t keycode, keyrecord_t *record) { -#endif - static uint8_t host_idx = 0; - - switch (keycode) { - case KC_LOPTN: - case KC_ROPTN: - case KC_LCMMD: - case KC_RCMMD: - if (record->event.pressed) { - register_code(mac_keycode[keycode - KC_LOPTN]); - } else { - unregister_code(mac_keycode[keycode - KC_LOPTN]); - } - return false; // Skip all further processing of this key) - case KC_TASK: - case KC_FILE: - case KC_SNAP: - case KC_CTANA: - if (record->event.pressed) { - for (uint8_t i = 0; i < key_comb_list[keycode - KC_TASK].len; i++) - register_code(key_comb_list[keycode - KC_TASK].keycode[i]); - } else { - for (uint8_t i = 0; i < key_comb_list[keycode - KC_TASK].len; i++) - unregister_code(key_comb_list[keycode - KC_TASK].keycode[i]); - } - return false; // Skip all further processing of this key - case KC_SIRI: - if (record->event.pressed && siri_timer_buffer == 0) { - register_code(KC_LGUI); - register_code(KC_SPACE); - siri_timer_buffer = sync_timer_read32() == 0 ? 1 : sync_timer_read32(); - } - return false; // Skip all further processing of this key -#ifdef KC_BLUETOOTH_ENABLE - case BT_HST1 ... BT_HST3: - if (get_transport() == TRANSPORT_BLUETOOTH) { - if (record->event.pressed) { - host_idx = keycode - BT_HST1 + 1; - chVTSet(&pairing_key_timer, TIME_MS2I(2000), (vtfunc_t)pairing_key_timer_cb, &host_idx); - bluetooth_connect_ex(host_idx, 0); - } else { - host_idx = 0; - chVTReset(&pairing_key_timer); - } - } - break; - case BAT_LVL: - if (get_transport() == TRANSPORT_BLUETOOTH && !usb_power_connected()) { - bat_level_animiation_start(battery_get_percentage()); - } - break; -#endif - default: -#ifdef FACTORY_RESET_CHECK - FACTORY_RESET_CHECK(keycode, record); -#endif - break; - } - return true; -} - -#if defined(KC_BLUETOOTH_ENABLE) && defined(ENCODER_ENABLE) -static void encoder_pad_cb(void *param) { - encoder_inerrupt_read((uint32_t)param & 0xFF); -} -#endif - -void keyboard_post_init_kb(void) { - dip_switch_read(true); - -#ifdef KC_BLUETOOTH_ENABLE - /* Currently we don't use this reset pin */ - palSetLineMode(CKBT51_RESET_PIN, PAL_MODE_OUTPUT_PUSHPULL); - palWriteLine(CKBT51_RESET_PIN, PAL_HIGH); - - /* IMPORTANT: DO NOT enable internal pull-up resistor - * as there is an external pull-down resistor. - */ - palSetLineMode(USB_BT_MODE_SELECT_PIN, PAL_MODE_INPUT); - - ckbt51_init(false); - bluetooth_init(); - -# ifdef ENCODER_ENABLE - pin_t encoders_pad_a[NUM_ENCODERS] = ENCODERS_PAD_A; - pin_t encoders_pad_b[NUM_ENCODERS] = ENCODERS_PAD_B; - for (uint32_t i = 0; i < NUM_ENCODERS; i++) { - palEnableLineEvent(encoders_pad_a[i], PAL_EVENT_MODE_BOTH_EDGES); - palEnableLineEvent(encoders_pad_b[i], PAL_EVENT_MODE_BOTH_EDGES); - palSetLineCallback(encoders_pad_a[i], encoder_pad_cb, (void *)i); - palSetLineCallback(encoders_pad_b[i], encoder_pad_cb, (void *)i); - } -# endif -#endif - - keyboard_post_init_user(); -} - -void matrix_scan_kb(void) { - if (factory_timer_buffer && timer_elapsed32(factory_timer_buffer) > 2000) { - factory_timer_buffer = 0; - if (bt_factory_reset) { - bt_factory_reset = false; - palWriteLine(CKBT51_RESET_PIN, PAL_LOW); - wait_ms(5); - palWriteLine(CKBT51_RESET_PIN, PAL_HIGH); - } - } - - if (siri_timer_buffer && sync_timer_elapsed32(siri_timer_buffer) > 500) { - siri_timer_buffer = 0; - unregister_code(KC_LGUI); - unregister_code(KC_SPACE); - } - -#ifdef FACTORY_RESET_TASK - FACTORY_RESET_TASK(); -#endif - matrix_scan_user(); -} - -#ifdef KC_BLUETOOTH_ENABLE -static void ckbt51_param_init(void) { - /* Set bluetooth device name */ - ckbt51_set_local_name(PRODUCT); - wait_ms(10); - /* Set bluetooth parameters */ - module_param_t param = {.event_mode = 0x02, - .connected_idle_timeout = 7200, - .pairing_timeout = 180, - .pairing_mode = 0, - .reconnect_timeout = 5, - .report_rate = 90, - .vendor_id_source = 1, - .verndor_id = 0, // Must be 0x3434 - .product_id = PRODUCT_ID}; - ckbt51_set_param(¶m); - wait_ms(10); -} - -void bluetooth_enter_disconnected_kb(uint8_t host_idx) { - if (bt_factory_reset) { - ckbt51_param_init(); - factory_timer_buffer = timer_read32(); - } - /* CKBT51 bluetooth module boot time is slower, it enters disconnected after boot, - so we place initialization here. */ - if (firstDisconnect && sync_timer_read32() < 1000 && get_transport() == TRANSPORT_BLUETOOTH) { - ckbt51_param_init(); - bluetooth_connect(); - firstDisconnect = false; - } -} - -void ckbt51_default_ack_handler(uint8_t *data, uint8_t len) { - if (data[1] == 0x45) { - module_param_t param = {.event_mode = 0x02, - .connected_idle_timeout = 7200, - .pairing_timeout = 180, - .pairing_mode = 0, - .reconnect_timeout = 5, - .report_rate = 90, - .vendor_id_source = 1, - .verndor_id = 0, // Must be 0x3434 - .product_id = PRODUCT_ID}; - ckbt51_set_param(¶m); - } -} - -void bluetooth_pre_task(void) { - static uint8_t mode = 1; - - if (readPin(USB_BT_MODE_SELECT_PIN) != mode) { - if (readPin(USB_BT_MODE_SELECT_PIN) != mode) { - mode = readPin(USB_BT_MODE_SELECT_PIN); - set_transport(mode == 0 ? TRANSPORT_BLUETOOTH : TRANSPORT_USB); - } - } -} -#endif - -void battery_calculte_voltage(uint16_t value) { - uint16_t voltage = ((uint32_t)value) * 2246 / 1000; - -#ifdef LED_MATRIX_ENABLE - if (led_matrix_is_enabled()) { - uint32_t totalBuf = 0; - - for (uint8_t i = 0; i < DRIVER_COUNT; i++) - for (uint8_t j = 0; j < 192; j++) - totalBuf += g_pwm_buffer[i][j]; - /* We assumpt it is linear relationship*/ - voltage += (30 * totalBuf / LED_MATRIX_LED_COUNT / 255); - } -#endif -#ifdef RGB_MATRIX_ENABLE - if (rgb_matrix_is_enabled()) { - uint32_t totalBuf = 0; - - for (uint8_t i = 0; i < DRIVER_COUNT; i++) - for (uint8_t j = 0; j < 192; j++) - totalBuf += g_pwm_buffer[i][j]; - /* We assumpt it is linear relationship*/ - uint32_t compensation = 60 * totalBuf / RGB_MATRIX_LED_COUNT / 255 / 3; - voltage += compensation; - } -#endif - battery_set_voltage(voltage); -} - -bool via_command_kb(uint8_t *data, uint8_t length) { - switch (data[0]) { -#ifdef KC_BLUETOOTH_ENABLE - case 0xAA: - ckbt51_dfu_rx(data, length); - break; -#endif -#ifdef ENABLE_FACTORY_TEST - case 0xAB: - factory_test_rx(data, length); - break; -#endif - default: - return false; - } - - return true; -} - -#if !defined(VIA_ENABLE) -void raw_hid_receive(uint8_t *data, uint8_t length) { - switch (data[0]) { - case RAW_HID_CMD: - via_command_kb(data, length); - break; - } -} -#endif diff --git a/keyboards/keychron/q14_pro/q14_pro.h b/keyboards/keychron/q14_pro/q14_pro.h deleted file mode 100644 index cd0954d579..0000000000 --- a/keyboards/keychron/q14_pro/q14_pro.h +++ /dev/null @@ -1,55 +0,0 @@ -/* 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 . - */ - -#pragma once - -#include "quantum.h" -#ifdef VIA_ENABLE -# include "via.h" -#endif - -#define ___ KC_NO - -#ifdef VIA_ENABLE -# define USER_START QK_KB_0 -#else -# define USER_START SAFE_RANGE -#endif - -// clang-format off -enum { - KC_LOPTN = USER_START, - KC_ROPTN, - KC_LCMMD, - KC_RCMMD, - KC_TASK, - KC_FILE, - KC_SNAP, - KC_CTANA, - KC_SIRI, -#ifdef KC_BLUETOOTH_ENABLE - BT_HST1, - BT_HST2, - BT_HST3, - BAT_LVL, -#else - BT_HST1 = KC_TRNS, - BT_HST2 = KC_TRNS, - BT_HST3 = KC_TRNS, - BAT_LVL = KC_TRNS, -#endif - NEW_SAFE_RANGE -}; diff --git a/keyboards/keychron/q14_pro/readme.md b/keyboards/keychron/q14_pro/readme.md deleted file mode 100644 index c6c9b7085f..0000000000 --- a/keyboards/keychron/q14_pro/readme.md +++ /dev/null @@ -1,23 +0,0 @@ -# Keychron Q14 Pro - -![Keychron Q14 Pro](https://i.imgur.com/RmWaunr.jpg) - -A customizable 96% keyboard. - -* Keyboard Maintainer: [Keychron](https://github.com/keychron) -* Hardware Supported: Keychron Q14 Pro -* Hardware Availability:[Keychron Q14 Pro (Alice Layout) QMK/VIA Wireless Custom Mechanical Keyboard](https://www.keychron.com/products/keychron-q14-pro-alice-layout-qmk-via-wireless-custom-mechanical-keyboard) - -Make example for this keyboard (after setting up your build environment): - - make keychron/q14_pro/ansi_encoder:default - make keychron/q14_pro/iso_encoder:default - -Flashing example for this keyboard: - - make keychron/q14_pro/ansi_encoder:default:flash - make keychron/q14_pro/iso_encoder:default:flash - -**Reset Key**: Connect the USB cable, toggle mode switch to "Off", hold down the *Esc* key or reset button underneath space bar, then toggle the switch to "Cable". - -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). diff --git a/keyboards/keychron/q14_pro/rules.mk b/keyboards/keychron/q14_pro/rules.mk deleted file mode 100644 index f995372f9c..0000000000 --- a/keyboards/keychron/q14_pro/rules.mk +++ /dev/null @@ -1,6 +0,0 @@ -# Enter lower-power sleep mode when on the ChibiOS idle thread -OPT_DEFS += -DCORTEX_ENABLE_WFI_IDLE=TRUE -OPT_DEFS += -DNO_USB_STARTUP_CHECK -DENABLE_FACTORY_TEST - -include keyboards/keychron/bluetooth/bluetooth.mk -include keyboards/keychron/common/common.mk diff --git a/keyboards/keychron/q14_pro/via_json/q14_pro_ansi_encoder.json b/keyboards/keychron/q14_pro/via_json/q14_pro_ansi_encoder.json deleted file mode 100644 index 60d7f0c670..0000000000 --- a/keyboards/keychron/q14_pro/via_json/q14_pro_ansi_encoder.json +++ /dev/null @@ -1,461 +0,0 @@ -{ - "name": "Keychron Q14 Pro ANIS Knob", - "vendorId": "0x3434", - "productId": "0x06E0", - "keycodes": ["qmk_lighting"], - "menus": [ - { - "label": "Lighting", - "content": [ - { - "label": "Backlight", - "content": [ - { - "label": "Brightness", - "type": "range", - "options": [0, 255], - "content": ["id_qmk_rgb_matrix_brightness", 3, 1] - }, - { - "label": "Effect", - "type": "dropdown", - "content": ["id_qmk_rgb_matrix_effect", 3, 2], - "options": [ - ["None", 0], - ["Solid Color", 1], - ["Breathing", 2], - ["Band Spiral Val", 3], - ["Cycle All", 4], - ["Cycle Left Right", 5], - ["Cycle Up Down", 6], - ["Rainbow Moving Chevron", 7], - ["Cycle Out In", 8], - ["Cycle Out In Dual", 9], - ["Cycle Pinwheel", 10], - ["Cycle Spiral", 11], - ["Dual Beacon", 12], - ["Rainbow Beacon", 13], - ["Jellybean Raindrops", 14], - ["Pixel Rain", 15], - ["Typing Heatmap", 16], - ["Digital Rain", 17], - ["Reactive Simple", 18], - ["Reactive Multiwide", 19], - ["Reactive Multinexus", 20], - ["Splash", 21], - ["Solid Splash", 22] - ] - }, - { - "showIf": "{id_qmk_rgb_matrix_effect} > 1", - "label": "Effect Speed", - "type": "range", - "options": [0, 255], - "content": ["id_qmk_rgb_matrix_effect_speed", 3, 3] - }, - { - "showIf": "{id_qmk_rgb_matrix_effect} != 0 && ( {id_qmk_rgb_matrix_effect} < 4 || {id_qmk_rgb_matrix_effect} == 18 || ({id_qmk_rgb_matrix_effect} > 17 && {id_qmk_rgb_matrix_effect} != 21) ) ", - "label": "Color", - "type": "color", - "content": ["id_qmk_rgb_matrix_color", 3, 4] - } - ] - } - ] - } - ], - "customKeycodes": [ - {"name": "Left Option", "title": "Left Option", "shortName": "LOpt"}, - {"name": "Right Option", "title": "Right Option", "shortName": "ROpt"}, - {"name": "Left Cmd", "title": "Left Command", "shortName": "LCmd"}, - {"name": "Right Cmd", "title": "Right Command", "shortName": "RCmd"}, - {"name": "Task View", "title": "Task View in Windows", "shortName": "Task"}, - {"name": "File Explorer", "title": "File Explorer in Windows", "shortName": "File"}, - {"name": "Screen shot", "title": "Screenshot in macOS", "shortName": "SShot"}, - {"name": "Cortana", "title": "Cortana in Windows", "shortName": "Cortana"}, - {"name": "Siri", "title": "Siri in macOS", "shortName": "Siri"}, - {"name": "Bluetooth Host 1", "title": "Bluetooth Host 1", "shortName": "BTH1"}, - {"name": "Bluetooth Host 2", "title": "Bluetooth Host 2", "shortName": "BTH2"}, - {"name": "Bluetooth Host 3", "title": "Bluetooth Host 3", "shortName": "BTH3"}, - {"name": "Battery Level", "title": "Show battery level", "shortName": "Batt"} - ], - "matrix": {"rows": 6, "cols": 19}, - "layouts": { - "keymap": [ - [ - { - "y": 0.8 - }, - "0,0\n\n\n\n\n\n\n\n\ne0", - "0,1", - "0,2", - "0,3", - { - "x": 0.5, - "c": "#777777" - }, - "0,4\nESC", - { - "x": 0.5, - "c": "#cccccc" - }, - "0,5", - "0,6", - { - "x": 9.3 - }, - "0,15", - "0,16", - { - "x": 0.45, - "c": "#aaaaaa" - }, - "0,17", - { - "x": 0.5 - }, - "0,18" - ], - [ - { - "y": 0.3, - "x": 7.25, - "c": "#cccccc" - }, - "1,6", - { - "x": 9.7 - }, - "1,16" - ], - [ - { - "y": -0.9, - "x": 16.95 - }, - "1,15", - { - "x": 1, - "c": "#aaaaaa", - "w": 2 - }, - "1,17", - { - "x": 0.4 - }, - "1,18" - ], - [ - { - "y": -0.9, - "c": "#cccccc" - }, - "1,0", - "1,1", - "1,2", - "1,3", - { - "x": 1.25, - "c": "#aaaaaa" - }, - "1,4", - { - "c": "#cccccc" - }, - "1,5" - ], - [ - { - "y": -0.1, - "x": 17.65 - }, - "2,15", - "2,16", - { - "c": "#aaaaaa", - "w": 1.5 - }, - "2,17", - { - "x": 0.4 - }, - "2,18" - ], - [ - { - "y": -0.9, - "c": "#cccccc" - }, - "2,0", - "2,1", - "2,2", - { - "h": 2 - }, - "2,3", - { - "x": 1, - "c": "#aaaaaa", - "w": 1.5 - }, - "2,4", - { - "c": "#cccccc" - }, - "2,5" - ], - [ - { - "y": -0.1, - "x": 17.1 - }, - "3,15", - "3,16", - { - "c": "#777777", - "w": 2.25 - }, - "3,17", - { - "x": 0.4, - "c": "#aaaaaa" - }, - "3,18" - ], - [ - { - "y": -0.9, - "c": "#cccccc" - }, - "3,0", - "3,1", - "3,2", - { - "x": 1.75, - "c": "#aaaaaa", - "w": 1.75 - }, - "3,4", - { - "c": "#cccccc" - }, - "3,5" - ], - [ - { - "y": -0.1, - "x": 17.75 - }, - "4,16", - { - "c": "#aaaaaa", - "w": 1.75 - }, - "4,17" - ], - [ - { - "y": -0.9, - "c": "#cccccc" - }, - "4,0", - "4,1", - "4,2", - { - "h": 2 - }, - "4,3", - { - "x": 0.5, - "c": "#aaaaaa", - "w": 2.25 - }, - "4,4", - { - "c": "#cccccc" - }, - "4,6" - ], - [ - { - "y": -0.75, - "x": 20.75, - "c": "#777777" - }, - "4,18" - ], - [ - { - "y": -0.25, - "c": "#cccccc", - "w": 2 - }, - "5,1", - "5,2", - { - "x": 1.5, - "c": "#aaaaaa", - "w": 1.25 - }, - "5,4", - { - "w": 1.25 - }, - "5,5" - ], - [ - { - "y": -0.75, - "x": 19.75, - "c": "#777777" - }, - "5,16", - "5,17", - "5,18" - ], - [ - { - "r": 6, - "y": -7.55, - "x": 8.25, - "c": "#cccccc" - }, - "0,7", - "0,8", - { - "x": 0.25, - "c": "#aaaaaa" - }, - "0,9", - "0,10" - ], - [ - { - "y": 0.35, - "x": 8.6, - "c": "#cccccc" - }, - "1,7", - "1,8", - "1,9", - "1,10" - ], - [ - { - "y": -0.015, - "x": 9.13 - }, - "2,7" - ], - [ - { - "y": -0.985, - "x": 8.13 - }, - "2,6", - { - "x": 1 - }, - "2,8", - "2,9" - ], - [ - { - "x": 8.3 - }, - "3,6", - "3,7", - "3,8", - "3,9" - ], - [ - { - "x": 8.65 - }, - "4,7", - "4,8", - "4,9", - "4,10" - ], - [ - { - "x": 8.75, - "c": "#aaaaaa", - "w": 1.25 - }, - "5,6", - { - "w": 2.25 - }, - "5,7", - "5,10" - ], - [ - { - "r": -6, - "y": -3.75, - "x": 12.75 - }, - "0,11", - "0,12", - { - "x": 0.25, - "c": "#cccccc" - }, - "0,13", - "0,14" - ], - [ - { - "y": 0.4, - "x": 12.5 - }, - "1,11", - "1,12", - "1,13", - "1,14" - ], - [ - { - "x": 12.1 - }, - "2,10", - "2,11", - "2,12", - "2,13", - "2,14" - ], - [ - { - "x": 12.45 - }, - "3,11", - "3,12", - "3,13", - "3,14" - ], - [ - { - "x": 12 - }, - "4,11", - "4,12", - "4,13", - "4,14", - "4,15" - ], - [ - { - "x": 12.05, - "c": "#aaaaaa" - }, - "5,11", - { - "w": 2.75 - }, - "5,12", - "5,13" - ] - ] - } -} diff --git a/keyboards/keychron/q14_pro/via_json/q14_pro_iso_encoder.json b/keyboards/keychron/q14_pro/via_json/q14_pro_iso_encoder.json deleted file mode 100644 index 815827dadb..0000000000 --- a/keyboards/keychron/q14_pro/via_json/q14_pro_iso_encoder.json +++ /dev/null @@ -1,472 +0,0 @@ -{ - "name": "Keychron Q14 Pro ISO Knob", - "vendorId": "0x3434", - "productId": "0x06E1", - "keycodes": ["qmk_lighting"], - "menus": [ - { - "label": "Lighting", - "content": [ - { - "label": "Backlight", - "content": [ - { - "label": "Brightness", - "type": "range", - "options": [0, 255], - "content": ["id_qmk_rgb_matrix_brightness", 3, 1] - }, - { - "label": "Effect", - "type": "dropdown", - "content": ["id_qmk_rgb_matrix_effect", 3, 2], - "options": [ - ["None", 0], - ["Solid Color", 1], - ["Breathing", 2], - ["Band Spiral Val", 3], - ["Cycle All", 4], - ["Cycle Left Right", 5], - ["Cycle Up Down", 6], - ["Rainbow Moving Chevron", 7], - ["Cycle Out In", 8], - ["Cycle Out In Dual", 9], - ["Cycle Pinwheel", 10], - ["Cycle Spiral", 11], - ["Dual Beacon", 12], - ["Rainbow Beacon", 13], - ["Jellybean Raindrops", 14], - ["Pixel Rain", 15], - ["Typing Heatmap", 16], - ["Digital Rain", 17], - ["Reactive Simple", 18], - ["Reactive Multiwide", 19], - ["Reactive Multinexus", 20], - ["Splash", 21], - ["Solid Splash", 22] - ] - }, - { - "showIf": "{id_qmk_rgb_matrix_effect} > 1", - "label": "Effect Speed", - "type": "range", - "options": [0, 255], - "content": ["id_qmk_rgb_matrix_effect_speed", 3, 3] - }, - { - "showIf": "{id_qmk_rgb_matrix_effect} != 0 && ( {id_qmk_rgb_matrix_effect} < 4 || {id_qmk_rgb_matrix_effect} == 18 || ({id_qmk_rgb_matrix_effect} > 17 && {id_qmk_rgb_matrix_effect} != 21) ) ", - "label": "Color", - "type": "color", - "content": ["id_qmk_rgb_matrix_color", 3, 4] - } - ] - } - ] - } - ], - "customKeycodes": [ - {"name": "Left Option", "title": "Left Option", "shortName": "LOpt"}, - {"name": "Right Option", "title": "Right Option", "shortName": "ROpt"}, - {"name": "Left Cmd", "title": "Left Command", "shortName": "LCmd"}, - {"name": "Right Cmd", "title": "Right Command", "shortName": "RCmd"}, - {"name": "Task View", "title": "Task View in Windows", "shortName": "Task"}, - {"name": "File Explorer", "title": "File Explorer in Windows", "shortName": "File"}, - {"name": "Screen shot", "title": "Screenshot in macOS", "shortName": "SShot"}, - {"name": "Cortana", "title": "Cortana in Windows", "shortName": "Cortana"}, - {"name": "Siri", "title": "Siri in macOS", "shortName": "Siri"}, - {"name": "Bluetooth Host 1", "title": "Bluetooth Host 1", "shortName": "BTH1"}, - {"name": "Bluetooth Host 2", "title": "Bluetooth Host 2", "shortName": "BTH2"}, - {"name": "Bluetooth Host 3", "title": "Bluetooth Host 3", "shortName": "BTH3"}, - {"name": "Battery Level", "title": "Show battery level", "shortName": "Batt"} - ], - "matrix": {"rows": 6, "cols": 19}, - "layouts": { - "keymap": [ - [ - { - "y": 0.8, - "x": 17.3 - }, - "0,15", - "0,16", - { - "x": 0.45, - "c": "#aaaaaa" - }, - "0,17", - { - "x": 0.5 - }, - "0,18" - ], - [ - { - "y": -0.95, - "c": "#aaaaaa" - }, - "0,0\n\n\n\n\n\n\n\n\ne0", - { - "c": "#cccccc" - }, - "0,1", - "0,2", - "0,3", - { - "x": 0.5, - "c": "#777777" - }, - "0,4\nESC", - { - "x": 0.5, - "c": "#cccccc" - }, - "0,5", - "0,6" - ], - [ - { - "y": 0.25, - "x": 7.25 - }, - "1,6", - { - "x": 9.7 - }, - "1,16" - ], - [ - { - "y": -0.9, - "x": 16.95 - }, - "1,15", - { - "x": 1, - "c": "#aaaaaa", - "w": 2 - }, - "1,17", - { - "x": 0.4 - }, - "1,18" - ], - [ - { - "y": -0.9, - "c": "#cccccc" - }, - "1,0", - "1,1", - "1,2", - "1,3", - { - "x": 1.25, - "c": "#aaaaaa" - }, - "1,4", - { - "c": "#cccccc" - }, - "1,5" - ], - [ - { - "y": -0.1, - "x": 17.85 - }, - "2,15", - "2,16", - { - "x": 0.25, - "c": "#777777", - "w": 1.25, - "h": 2, - "w2": 1.5, - "h2": 1, - "x2": -0.25 - }, - "2,17", - { - "x": 0.2, - "c": "#aaaaaa" - }, - "2,18" - ], - [ - { - "y": -0.9, - "c": "#cccccc" - }, - "2,0", - "2,1", - "2,2", - { - "h": 2 - }, - "2,3", - { - "x": 1, - "c": "#aaaaaa", - "w": 1.5 - }, - "2,4", - { - "c": "#cccccc" - }, - "2,5" - ], - [ - { - "y": -0.1, - "x": 17.1 - }, - "3,15", - "3,16", - { - "c": "#aaaaaa" - }, - "3,17", - { - "x": 1.65 - }, - "3,18" - ], - [ - { - "y": -0.9, - "c": "#cccccc" - }, - "3,0", - "3,1", - "3,2", - { - "x": 1.75, - "c": "#aaaaaa", - "w": 1.75 - }, - "3,4", - { - "c": "#cccccc" - }, - "3,5" - ], - [ - { - "y": -0.1, - "x": 17.75 - }, - "4,16", - { - "c": "#aaaaaa", - "w": 1.75 - }, - "4,17" - ], - [ - { - "y": -0.9, - "x": 5.75 - }, - "4,5" - ], - [ - { - "y": -1, - "c": "#cccccc" - }, - "4,0", - "4,1", - "4,2", - { - "h": 2 - }, - "4,3", - { - "x": 0.5, - "c": "#aaaaaa", - "w": 1.25 - }, - "4,4", - { - "x": 1, - "c": "#cccccc" - }, - "4,6" - ], - [ - { - "y": -0.75, - "x": 20.75, - "c": "#777777" - }, - "4,18" - ], - [ - { - "y": -0.25, - "c": "#cccccc", - "w": 2 - }, - "5,1", - "5,2", - { - "x": 1.5, - "c": "#aaaaaa", - "w": 1.25 - }, - "5,4", - { - "w": 1.25 - }, - "5,5" - ], - [ - { - "y": -0.75, - "x": 19.75, - "c": "#777777" - }, - "5,16", - "5,17", - "5,18" - ], - [ - { - "r": 6, - "y": -7.55, - "x": 8.25, - "c": "#cccccc" - }, - "0,7", - "0,8" - ], - [ - { - "y": -1, - "x": 10.5, - "c": "#aaaaaa" - }, - "0,9", - "0,10" - ], - [ - { - "y": 0.35, - "x": 8.6, - "c": "#cccccc" - }, - "1,7", - "1,8", - "1,9", - "1,10" - ], - [ - { - "x": 8.13 - }, - "2,6", - "2,7", - "2,8", - "2,9" - ], - [ - { - "x": 8.3 - }, - "3,6", - "3,7", - "3,8", - "3,9" - ], - [ - { - "x": 8.65 - }, - "4,7", - "4,8", - "4,9", - "4,10" - ], - [ - { - "x": 8.75, - "c": "#aaaaaa", - "w": 1.25 - }, - "5,6", - { - "w": 2.25 - }, - "5,7", - "5,10" - ], - [ - { - "r": -6, - "y": -3.75, - "x": 12.75 - }, - "0,11", - "0,12", - { - "x": 0.25, - "c": "#cccccc" - }, - "0,13", - "0,14" - ], - [ - { - "y": 0.4, - "x": 12.5 - }, - "1,11", - "1,12", - "1,13", - "1,14" - ], - [ - { - "x": 12.1 - }, - "2,10", - "2,11", - "2,12", - "2,13", - "2,14" - ], - [ - { - "x": 12.45 - }, - "3,11", - "3,12", - "3,13", - "3,14" - ], - [ - { - "x": 12 - }, - "4,11", - "4,12", - "4,13", - "4,14", - "4,15" - ], - [ - { - "x": 12.05, - "c": "#aaaaaa" - }, - "5,11", - { - "w": 2.75 - }, - "5,12", - "5,13" - ] - ] - } -} diff --git a/keyboards/keychron/q15_max/ansi_encoder/ansi_encoder.c b/keyboards/keychron/q15_max/ansi_encoder/ansi_encoder.c deleted file mode 100644 index 84d6e0ef08..0000000000 --- a/keyboards/keychron/q15_max/ansi_encoder/ansi_encoder.c +++ /dev/null @@ -1,127 +0,0 @@ -/* Copyright 2024 @ 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/>. - */ - -#include "quantum.h" - -// clang-format off - -#ifdef RGB_MATRIX_ENABLE -const snled27351_led_t g_snled27351_leds[RGB_MATRIX_LED_COUNT] = { -/* Refer to SNLED27351 manual for these locations - * driver - * | R location - * | | G location - * | | | B location - * | | | | */ - {0, G_1, I_1, H_1}, - {0, G_2, I_2, H_2}, - {0, A_2, C_2, B_2}, - {0, A_1, C_1, B_1}, - {0, A_4, C_4, B_4}, - {0, J_10, L_10, K_10}, - {0, J_11, L_11, K_11}, - {0, J_8, L_8, K_8}, - {0, J_2, L_2, K_2}, - {0, J_1, L_1, K_1}, - {0, D_1, F_1, E_1}, - {0, D_2, F_2, E_2}, - - {0, D_16, F_16, E_16}, - {0, D_15, F_15, E_15}, - {0, D_14, F_14, E_14}, - {0, D_13, F_13, E_13}, - {0, D_12, F_12, E_12}, - {0, D_11, F_11, E_11}, - {0, D_10, F_10, E_10}, - {0, D_9, F_9, E_9}, - {0, D_8, F_8, E_8}, - {0, D_7, F_7, E_7}, - {0, D_6, F_6, E_6}, - {0, D_5, F_5, E_5}, - {0, D_4, F_4, E_4}, - {0, D_3, F_3, E_3}, - - {0, A_16, C_16, B_16}, - {0, A_15, C_15, B_15}, - {0, A_14, C_14, B_14}, - {0, A_13, C_13, B_13}, - {0, A_12, C_12, B_12}, - {0, A_11, C_11, B_11}, - {0, A_10, C_10, B_10}, - {0, A_9, C_9, B_9}, - {0, A_8, C_8, B_8}, - {0, A_7, C_7, B_7}, - {0, A_6, C_6, B_6}, - {0, A_5, C_5, B_5}, - {0, A_3, C_3, B_3}, - - {0, G_16, I_16, H_16}, - {0, G_15, I_15, H_15}, - {0, G_14, I_14, H_14}, - {0, G_13, I_13, H_13}, - {0, G_12, I_12, H_12}, - {0, G_11, I_11, H_11}, - {0, G_10, I_10, H_10}, - {0, G_9, I_9, H_9}, - {0, G_8, I_8, H_8}, - {0, G_7, I_7, H_7}, - {0, G_6, I_6, H_6}, - {0, G_5, I_5, H_5}, - {0, G_4, I_4, H_4}, - {0, G_3, I_3, H_3}, - - {0, J_16, L_16, K_16}, - {0, J_15, L_15, K_15}, - {0, J_14, L_14, K_14}, - {0, J_13, L_13, K_13}, - {0, J_12, L_12, K_12}, - {0, J_9, L_9, K_9}, - {0, J_7, L_7, K_7}, - {0, J_6, L_6, K_6}, - {0, J_5, L_5, K_5}, - {0, J_4, L_4, K_4}, - {0, J_3, L_3, K_3}, -}; - -#define __ NO_LED - -led_config_t g_led_config = { - { - // Key Matrix to LED Index - { __, 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, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52 }, - { 53, 54, 55, 56, 57, __, __, 58, __, 59, 60, 61, 62, 63 }, - }, - { - // LED Index to Physical Position - {17,0}, {34,0}, {51,0}, {68,0}, {84,0}, {102,0}, {119,0}, {136,0}, {153,0}, {170,0}, {187,0}, {204,0}, - {0,16},{17,16},{34,16},{51,16},{68,16},{84,16},{102,16},{119,16},{136,16},{153,16},{170,16},{187,16},{204,16},{220,16}, - {0,32},{17,32},{34,32},{51,32},{68,32},{84,32},{102,32},{119,32},{136,32},{153,32},{170,32},{187,32}, {212,32}, - {0,48},{17,48},{34,48},{51,48},{68,48},{84,48},{102,48},{119,48},{136,48},{153,48},{170,48},{187,48},{204,48},{220,48}, - {0,64},{17,64},{34,64},{51,64},{76,64}, {121,64}, {153,64},{170,64},{187,64},{204,64},{220,64}, - }, - { - // RGB LED Index to Flag - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - } -}; -#endif diff --git a/keyboards/keychron/q15_max/ansi_encoder/config.h b/keyboards/keychron/q15_max/ansi_encoder/config.h deleted file mode 100644 index 5aef9dfdc0..0000000000 --- a/keyboards/keychron/q15_max/ansi_encoder/config.h +++ /dev/null @@ -1,55 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#pragma once - -#ifdef RGB_MATRIX_ENABLE -/* RGB Matrix driver configuration */ -# define DRIVER_COUNT 1 -# define RGB_MATRIX_LED_COUNT 64 - -# define SPI_SCK_PIN A5 -# define SPI_MISO_PIN A6 -# define SPI_MOSI_PIN A7 - -# define DRIVER_CS_PINS \ - { B8 } -# define SNLED23751_SPI_DIVISOR 16 -# define SPI_DRIVER SPID1 - -/* Scan phase of led driver set as MSKPHASE_12CHANNEL(defined as 0x03 in snled27351.h) */ -# define SNLED27351_PHASE_CHANNEL MSKPHASE_12CHANNEL - -/* Set LED driver current */ -# define SNLED27351_CURRENT_TUNE \ - { 0x2C, 0x2C, 0x2C, 0x2C, 0x2C, 0x2C, 0x2C, 0x2C, 0x2C, 0x2C, 0x2C, 0x2C } - -/* Set to infinit, which is use in USB mode by default */ -# define RGB_MATRIX_TIMEOUT RGB_MATRIX_TIMEOUT_INFINITE - -/* Allow shutdown of led driver to save power */ -# define RGB_MATRIX_DRIVER_SHUTDOWN_ENABLE -/* Turn off backlight on low brightness to save power */ -# define RGB_MATRIX_BRIGHTNESS_TURN_OFF_VAL 32 - -/* Indications */ -# define CAPS_LOCK_INDEX 26 -# define LOW_BAT_IND_INDEX { 57, 58 } - -# define RGB_MATRIX_KEYPRESSES -# define RGB_MATRIX_FRAMEBUFFER_EFFECTS - -#endif diff --git a/keyboards/keychron/q15_max/ansi_encoder/info.json b/keyboards/keychron/q15_max/ansi_encoder/info.json deleted file mode 100644 index c5e5d5c22e..0000000000 --- a/keyboards/keychron/q15_max/ansi_encoder/info.json +++ /dev/null @@ -1,82 +0,0 @@ -{ - "usb": { - "pid": "0x08F0", - "device_version": "1.0.0" - }, - "layouts": { - "LAYOUT_ansi_66": { - "layout": [ - {"matrix": [0, 0], "x": 0, "y": 0}, - {"matrix": [0, 1], "x": 1, "y": 0}, - {"matrix": [0, 2], "x": 2, "y": 0}, - {"matrix": [0, 3], "x": 3, "y": 0}, - {"matrix": [0, 4], "x": 4, "y": 0}, - {"matrix": [0, 5], "x": 5, "y": 0}, - {"matrix": [0, 6], "x": 6, "y": 0}, - {"matrix": [0, 7], "x": 7, "y": 0}, - {"matrix": [0, 8], "x": 8, "y": 0}, - {"matrix": [0, 9], "x": 9, "y": 0}, - {"matrix": [0, 10], "x": 10, "y": 0}, - {"matrix": [0, 11], "x": 11, "y": 0}, - {"matrix": [0, 12], "x": 12, "y": 0}, - {"matrix": [0, 13], "x": 13, "y": 0}, - - {"matrix": [1, 0], "x": 0, "y": 1}, - {"matrix": [1, 1], "x": 1, "y": 1}, - {"matrix": [1, 2], "x": 2, "y": 1}, - {"matrix": [1, 3], "x": 3, "y": 1}, - {"matrix": [1, 4], "x": 4, "y": 1}, - {"matrix": [1, 5], "x": 5, "y": 1}, - {"matrix": [1, 6], "x": 6, "y": 1}, - {"matrix": [1, 7], "x": 7, "y": 1}, - {"matrix": [1, 8], "x": 8, "y": 1}, - {"matrix": [1, 9], "x": 9, "y": 1}, - {"matrix": [1, 10], "x": 10, "y": 1}, - {"matrix": [1, 11], "x": 11, "y": 1}, - {"matrix": [1, 12], "x": 12, "y": 1}, - {"matrix": [1, 13], "x": 13, "y": 1}, - - {"matrix": [2, 0], "x": 0, "y": 2}, - {"matrix": [2, 1], "x": 1, "y": 2}, - {"matrix": [2, 2], "x": 2, "y": 2}, - {"matrix": [2, 3], "x": 3, "y": 2}, - {"matrix": [2, 4], "x": 4, "y": 2}, - {"matrix": [2, 5], "x": 5, "y": 2}, - {"matrix": [2, 6], "x": 6, "y": 2}, - {"matrix": [2, 7], "x": 7, "y": 2}, - {"matrix": [2, 8], "x": 8, "y": 2}, - {"matrix": [2, 9], "x": 9, "y": 2}, - {"matrix": [2, 10], "x": 10, "y": 2}, - {"matrix": [2, 11], "x": 11, "y": 2}, - {"matrix": [2, 12], "x": 12, "y": 2, "w": 2}, - - {"matrix": [3, 0], "x": 0, "y": 3}, - {"matrix": [3, 1], "x": 1, "y": 3}, - {"matrix": [3, 2], "x": 2, "y": 3}, - {"matrix": [3, 3], "x": 3, "y": 3}, - {"matrix": [3, 4], "x": 4, "y": 3}, - {"matrix": [3, 5], "x": 5, "y": 3}, - {"matrix": [3, 6], "x": 6, "y": 3}, - {"matrix": [3, 7], "x": 7, "y": 3}, - {"matrix": [3, 8], "x": 8, "y": 3}, - {"matrix": [3, 9], "x": 9, "y": 3}, - {"matrix": [3, 10], "x": 10, "y": 3}, - {"matrix": [3, 11], "x": 11, "y": 3}, - {"matrix": [3, 12], "x": 12, "y": 3}, - {"matrix": [3, 13], "x": 13, "y": 3}, - - {"matrix": [4, 0], "x": 0, "y": 4}, - {"matrix": [4, 1], "x": 1, "y": 4}, - {"matrix": [4, 2], "x": 2, "y": 4}, - {"matrix": [4, 3], "x": 3, "y": 4}, - {"matrix": [4, 4], "x": 4, "y": 4, "w": 2.25}, - {"matrix": [4, 7], "x": 6.25, "y": 4, "w": 2.75}, - {"matrix": [4, 9], "x": 9, "y": 4}, - {"matrix": [4, 10], "x": 10, "y": 4}, - {"matrix": [4, 11], "x": 11, "y": 4}, - {"matrix": [4, 12], "x": 12, "y": 4}, - {"matrix": [4, 13], "x": 13, "y": 4}, - ] - } - } -} diff --git a/keyboards/keychron/q15_max/ansi_encoder/keymaps/default/keymap.c b/keyboards/keychron/q15_max/ansi_encoder/keymaps/default/keymap.c deleted file mode 100644 index 879ed7b1c4..0000000000 --- a/keyboards/keychron/q15_max/ansi_encoder/keymaps/default/keymap.c +++ /dev/null @@ -1,82 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#include QMK_KEYBOARD_H -#include "keychron_common.h" - -enum layers { - MAC_BASE, - WIN_BASE, - MAC_FN, - WIN_FN, - COM_FN, -}; -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_ansi_66( - KC_MUTE, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_BSPC, KC_MUTE, - KC_ESC, 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_DEL, - KC_LCTL, KC_LOPTN, KC_LCMMD, _______, KC_SPC, KC_SPC, MO(MAC_FN),MO(COM_FN),KC_LEFT, KC_DOWN, KC_RGHT), - - [WIN_BASE] = LAYOUT_ansi_66( - KC_MUTE, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_BSPC, KC_MUTE, - KC_ESC, 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_DEL, - KC_LCTL, KC_LGUI, KC_LALT, _______, KC_SPC, KC_SPC, MO(WIN_FN),MO(COM_FN),KC_LEFT, KC_DOWN, KC_RGHT), - - [MAC_FN] = LAYOUT_ansi_66( - RGB_TOG, KC_BRID, KC_BRIU, KC_MCTRL, KC_LNPAD, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, RGB_TOG, - KC_GRV, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - - [WIN_FN] = LAYOUT_ansi_66( - RGB_TOG, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, RGB_TOG, - KC_GRV, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - - [COM_FN] = LAYOUT_ansi_66( - _______, 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_TILD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______) -}; - -// clang-format on -#if defined(ENCODER_MAP_ENABLE) -const uint16_t PROGMEM encoder_map[][2][2] = { - [MAC_BASE] = {ENCODER_CCW_CW(KC_VOLD, KC_VOLU),ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [WIN_BASE] = {ENCODER_CCW_CW(KC_VOLD, KC_VOLU),ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [MAC_FN] = {ENCODER_CCW_CW(RGB_VAD, RGB_VAI),ENCODER_CCW_CW(RGB_VAD, RGB_VAI)}, - [WIN_FN] = {ENCODER_CCW_CW(RGB_VAD, RGB_VAI),ENCODER_CCW_CW(RGB_VAD, RGB_VAI)}, - [COM_FN] = {ENCODER_CCW_CW(_______, _______),ENCODER_CCW_CW(_______, _______)}, -}; - -#endif // ENCODER_MAP_ENABLE - -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - if (!process_record_keychron_common(keycode, record)) { - return false; - } - return true; -} diff --git a/keyboards/keychron/q15_max/ansi_encoder/keymaps/via/keymap.c b/keyboards/keychron/q15_max/ansi_encoder/keymaps/via/keymap.c deleted file mode 100644 index 879ed7b1c4..0000000000 --- a/keyboards/keychron/q15_max/ansi_encoder/keymaps/via/keymap.c +++ /dev/null @@ -1,82 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#include QMK_KEYBOARD_H -#include "keychron_common.h" - -enum layers { - MAC_BASE, - WIN_BASE, - MAC_FN, - WIN_FN, - COM_FN, -}; -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_ansi_66( - KC_MUTE, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_BSPC, KC_MUTE, - KC_ESC, 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_DEL, - KC_LCTL, KC_LOPTN, KC_LCMMD, _______, KC_SPC, KC_SPC, MO(MAC_FN),MO(COM_FN),KC_LEFT, KC_DOWN, KC_RGHT), - - [WIN_BASE] = LAYOUT_ansi_66( - KC_MUTE, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_BSPC, KC_MUTE, - KC_ESC, 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_DEL, - KC_LCTL, KC_LGUI, KC_LALT, _______, KC_SPC, KC_SPC, MO(WIN_FN),MO(COM_FN),KC_LEFT, KC_DOWN, KC_RGHT), - - [MAC_FN] = LAYOUT_ansi_66( - RGB_TOG, KC_BRID, KC_BRIU, KC_MCTRL, KC_LNPAD, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, RGB_TOG, - KC_GRV, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - - [WIN_FN] = LAYOUT_ansi_66( - RGB_TOG, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, RGB_TOG, - KC_GRV, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - - [COM_FN] = LAYOUT_ansi_66( - _______, 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_TILD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______) -}; - -// clang-format on -#if defined(ENCODER_MAP_ENABLE) -const uint16_t PROGMEM encoder_map[][2][2] = { - [MAC_BASE] = {ENCODER_CCW_CW(KC_VOLD, KC_VOLU),ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [WIN_BASE] = {ENCODER_CCW_CW(KC_VOLD, KC_VOLU),ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [MAC_FN] = {ENCODER_CCW_CW(RGB_VAD, RGB_VAI),ENCODER_CCW_CW(RGB_VAD, RGB_VAI)}, - [WIN_FN] = {ENCODER_CCW_CW(RGB_VAD, RGB_VAI),ENCODER_CCW_CW(RGB_VAD, RGB_VAI)}, - [COM_FN] = {ENCODER_CCW_CW(_______, _______),ENCODER_CCW_CW(_______, _______)}, -}; - -#endif // ENCODER_MAP_ENABLE - -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - if (!process_record_keychron_common(keycode, record)) { - return false; - } - return true; -} diff --git a/keyboards/keychron/q15_max/ansi_encoder/keymaps/via/rules.mk b/keyboards/keychron/q15_max/ansi_encoder/keymaps/via/rules.mk deleted file mode 100644 index 1e5b99807c..0000000000 --- a/keyboards/keychron/q15_max/ansi_encoder/keymaps/via/rules.mk +++ /dev/null @@ -1 +0,0 @@ -VIA_ENABLE = yes diff --git a/keyboards/keychron/q15_max/ansi_encoder/rules.mk b/keyboards/keychron/q15_max/ansi_encoder/rules.mk deleted file mode 100644 index 7ff128fa69..0000000000 --- a/keyboards/keychron/q15_max/ansi_encoder/rules.mk +++ /dev/null @@ -1 +0,0 @@ -# This file intentionally left blank \ No newline at end of file diff --git a/keyboards/keychron/q15_max/board.h b/keyboards/keychron/q15_max/board.h deleted file mode 100644 index 372694871c..0000000000 --- a/keyboards/keychron/q15_max/board.h +++ /dev/null @@ -1,226 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#pragma once - -#include_next - -// clang-format off - -/* Set GPIOA_SWDIO to INPUT & PIN_PUPDR_PULLUP to avoid FLOATING */ -#undef VAL_GPIOA_MODER -#define VAL_GPIOA_MODER (PIN_MODE_INPUT(GPIOA_BUTTON) | \ - PIN_MODE_INPUT(GPIOA_PIN1) | \ - PIN_MODE_INPUT(GPIOA_PIN2) | \ - PIN_MODE_INPUT(GPIOA_PIN3) | \ - PIN_MODE_ALTERNATE(GPIOA_CS43L22_LRCK) |\ - PIN_MODE_ALTERNATE(GPIOA_L3GD20_SCL) | \ - PIN_MODE_ALTERNATE(GPIOA_L3GD20_SD0) | \ - PIN_MODE_ALTERNATE(GPIOA_L3GD20_SDI) | \ - PIN_MODE_INPUT(GPIOA_PIN8) | \ - PIN_MODE_INPUT(GPIOA_VBUS_FS) | \ - PIN_MODE_ALTERNATE(GPIOA_OTG_FS_ID) | \ - PIN_MODE_ALTERNATE(GPIOA_OTG_FS_DM) | \ - PIN_MODE_ALTERNATE(GPIOA_OTG_FS_DP) | \ - PIN_MODE_INPUT(GPIOA_SWDIO) | \ - PIN_MODE_INPUT(GPIOA_SWCLK) | \ - PIN_MODE_INPUT(GPIOA_PIN15)) - -#undef VAL_GPIOA_PUPDR -#define VAL_GPIOA_PUPDR (PIN_PUPDR_FLOATING(GPIOA_BUTTON) | \ - PIN_PUPDR_PULLUP(GPIOA_PIN1) | \ - PIN_PUPDR_PULLUP(GPIOA_PIN2) | \ - PIN_PUPDR_PULLUP(GPIOA_PIN3) | \ - PIN_PUPDR_FLOATING(GPIOA_CS43L22_LRCK) |\ - PIN_PUPDR_FLOATING(GPIOA_L3GD20_SCL) | \ - PIN_PUPDR_PULLUP(GPIOA_L3GD20_SD0) | \ - PIN_PUPDR_PULLUP(GPIOA_L3GD20_SDI) | \ - PIN_PUPDR_PULLUP(GPIOA_PIN8) | \ - PIN_PUPDR_FLOATING(GPIOA_VBUS_FS) | \ - PIN_PUPDR_FLOATING(GPIOA_OTG_FS_ID) | \ - PIN_PUPDR_FLOATING(GPIOA_OTG_FS_DM) | \ - PIN_PUPDR_FLOATING(GPIOA_OTG_FS_DP) | \ - PIN_PUPDR_PULLUP(GPIOA_SWDIO) | \ - PIN_PUPDR_PULLUP(GPIOA_SWCLK) | \ - PIN_PUPDR_PULLUP(GPIOA_PIN15)) - -#undef VAL_GPIOB_MODER -#define VAL_GPIOB_MODER (PIN_MODE_INPUT(GPIOB_PIN0) | \ - PIN_MODE_INPUT(GPIOB_PIN1) | \ - PIN_MODE_INPUT(GPIOB_PIN2) | \ - PIN_MODE_INPUT(GPIOB_SWO) | \ - PIN_MODE_INPUT(GPIOB_PIN4) | \ - PIN_MODE_INPUT(GPIOB_PIN5) | \ - PIN_MODE_INPUT(GPIOB_LSM303DLHC_SCL) | \ - PIN_MODE_INPUT(GPIOB_PIN7) | \ - PIN_MODE_INPUT(GPIOB_PIN8) | \ - PIN_MODE_INPUT(GPIOB_LSM303DLHC_SDA) | \ - PIN_MODE_INPUT(GPIOB_MP45DT02_CLK_IN) |\ - PIN_MODE_INPUT(GPIOB_PIN11) | \ - PIN_MODE_INPUT(GPIOB_PIN12) | \ - PIN_MODE_INPUT(GPIOB_PIN13) | \ - PIN_MODE_INPUT(GPIOB_PIN14) | \ - PIN_MODE_INPUT(GPIOB_PIN15)) - -#undef VAL_GPIOB_PUPDR -#define VAL_GPIOB_PUPDR (PIN_PUPDR_PULLDOWN(GPIOB_PIN0) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN1) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN2) | \ - PIN_PUPDR_PULLDOWN(GPIOB_SWO) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN4) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN5) | \ - PIN_PUPDR_PULLDOWN(GPIOB_LSM303DLHC_SCL) |\ - PIN_PUPDR_PULLDOWN(GPIOB_PIN7) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN8) | \ - PIN_PUPDR_PULLDOWN(GPIOB_LSM303DLHC_SDA) |\ - PIN_PUPDR_PULLDOWN(GPIOB_MP45DT02_CLK_IN) |\ - PIN_PUPDR_PULLDOWN(GPIOB_PIN11) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN12) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN13) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN14) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN15)) - -#undef VAL_GPIOB_AFRL -#define VAL_GPIOB_AFRL (PIN_AFIO_AF(GPIOB_PIN0, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN1, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN2, 0U) | \ - PIN_AFIO_AF(GPIOB_SWO, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN4, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN5, 0U) | \ - PIN_AFIO_AF(GPIOB_LSM303DLHC_SCL, 0) | \ - PIN_AFIO_AF(GPIOB_PIN7, 0U)) - -#undef VAL_GPIOB_AFRH -#define VAL_GPIOB_AFRH (PIN_AFIO_AF(GPIOB_PIN8, 0U) | \ - PIN_AFIO_AF(GPIOB_LSM303DLHC_SDA, 0) | \ - PIN_AFIO_AF(GPIOB_MP45DT02_CLK_IN, 0U) |\ - PIN_AFIO_AF(GPIOB_PIN11, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN12, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN13, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN14, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN15, 0U)) - -/* C5 Need to be pulldown */ -#undef VAL_GPIOC_MODER -#define VAL_GPIOC_MODER (PIN_MODE_INPUT(GPIOC_OTG_FS_POWER_ON) |\ - PIN_MODE_INPUT(GPIOC_PIN1) | \ - PIN_MODE_INPUT(GPIOC_PIN2) | \ - PIN_MODE_INPUT(GPIOC_CS43L22_AIN4x) | \ - PIN_MODE_INPUT(GPIOC_PIN4) | \ - PIN_MODE_INPUT(GPIOC_PIN5) | \ - PIN_MODE_INPUT(GPIOC_PIN6) | \ - PIN_MODE_INPUT(GPIOC_CS43L22_MCLK) | \ - PIN_MODE_INPUT(GPIOC_PIN8) | \ - PIN_MODE_INPUT(GPIOC_PIN9) | \ - PIN_MODE_INPUT(GPIOC_CS43L22_SCLK) | \ - PIN_MODE_INPUT(GPIOC_PIN11) | \ - PIN_MODE_INPUT(GPIOC_CS43L22_SDIN) | \ - PIN_MODE_INPUT(GPIOC_PIN13) | \ - PIN_MODE_INPUT(GPIOC_OSC32_IN) | \ - PIN_MODE_INPUT(GPIOC_OSC32_OUT)) - -#undef VAL_GPIOC_PUPDR -#define VAL_GPIOC_PUPDR (PIN_PUPDR_PULLUP(GPIOC_OTG_FS_POWER_ON) |\ - PIN_PUPDR_PULLUP(GPIOC_PIN1) | \ - PIN_PUPDR_PULLUP(GPIOC_PIN2) | \ - PIN_PUPDR_PULLUP(GPIOC_CS43L22_AIN4x) |\ - PIN_PUPDR_PULLUP(GPIOC_PIN4) | \ - PIN_PUPDR_PULLDOWN(GPIOC_PIN5) | \ - PIN_PUPDR_PULLUP(GPIOC_PIN6) | \ - PIN_PUPDR_PULLUP(GPIOC_CS43L22_MCLK) | \ - PIN_PUPDR_PULLUP(GPIOC_PIN8) | \ - PIN_PUPDR_PULLUP(GPIOC_PIN9) | \ - PIN_PUPDR_PULLUP(GPIOC_CS43L22_SCLK) | \ - PIN_PUPDR_PULLUP(GPIOC_PIN11) | \ - PIN_PUPDR_PULLUP(GPIOC_CS43L22_SDIN) | \ - PIN_PUPDR_PULLUP(GPIOC_PIN13) | \ - PIN_PUPDR_PULLUP(GPIOC_OSC32_IN) | \ - PIN_PUPDR_PULLUP(GPIOC_OSC32_OUT)) - -/* Set all GPIOD pins to INPUT & PULLUP to avoid FLOATING */ -#undef VAL_GPIOD_MODER -#define VAL_GPIOD_MODER (PIN_MODE_INPUT(GPIOD_PIN0) | \ - PIN_MODE_INPUT(GPIOD_PIN1) | \ - PIN_MODE_INPUT(GPIOD_PIN2) | \ - PIN_MODE_INPUT(GPIOD_PIN3) | \ - PIN_MODE_INPUT(GPIOD_CS43L22_RESET) | \ - PIN_MODE_INPUT(GPIOD_OverCurrent) | \ - PIN_MODE_INPUT(GPIOD_PIN6) | \ - PIN_MODE_INPUT(GPIOD_PIN7) | \ - PIN_MODE_INPUT(GPIOD_PIN8) | \ - PIN_MODE_INPUT(GPIOD_PIN9) | \ - PIN_MODE_INPUT(GPIOD_PIN10) | \ - PIN_MODE_INPUT(GPIOD_PIN11) | \ - PIN_MODE_INPUT(GPIOD_LED4) | \ - PIN_MODE_INPUT(GPIOD_LED3) | \ - PIN_MODE_INPUT(GPIOD_LED5) | \ - PIN_MODE_INPUT(GPIOD_LED6)) - -#undef VAL_GPIOD_PUPDR -#define VAL_GPIOD_PUPDR (PIN_PUPDR_PULLUP(GPIOD_PIN0) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN1) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN2) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN3) | \ - PIN_PUPDR_PULLUP(GPIOD_CS43L22_RESET) |\ - PIN_PUPDR_PULLUP(GPIOD_OverCurrent) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN6) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN7) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN8) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN9) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN10) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN11) | \ - PIN_PUPDR_PULLUP(GPIOD_LED4) | \ - PIN_PUPDR_PULLUP(GPIOD_LED3) | \ - PIN_PUPDR_PULLUP(GPIOD_LED5) | \ - PIN_PUPDR_PULLUP(GPIOD_LED6)) - -/* Set all GPIOE pins to INPUT & PULLUP to avoid FLOATING */ -#undef VAL_GPIOE_MODER -#define VAL_GPIOE_MODER (PIN_MODE_INPUT(GPIOE_L3GD20_INT1) | \ - PIN_MODE_INPUT(GPIOE_L3GD20_INT2) | \ - PIN_MODE_INPUT(GPIOE_LSM303DLHC_DRDY) |\ - PIN_MODE_INPUT(GPIOE_L3GD20_CS) | \ - PIN_MODE_INPUT(GPIOE_LSM303DLHC_INT1) |\ - PIN_MODE_INPUT(GPIOE_LSM303DLHC_INT2) |\ - PIN_MODE_INPUT(GPIOE_PIN6) | \ - PIN_MODE_INPUT(GPIOE_PIN7) | \ - PIN_MODE_INPUT(GPIOE_PIN8) | \ - PIN_MODE_INPUT(GPIOE_PIN9) | \ - PIN_MODE_INPUT(GPIOE_PIN10) | \ - PIN_MODE_INPUT(GPIOE_PIN11) | \ - PIN_MODE_INPUT(GPIOE_PIN12) | \ - PIN_MODE_INPUT(GPIOE_PIN13) | \ - PIN_MODE_INPUT(GPIOE_PIN14) | \ - PIN_MODE_INPUT(GPIOE_PIN15)) - -#undef VAL_GPIOE_PUPDR -#define VAL_GPIOE_PUPDR (PIN_PUPDR_PULLUP(GPIOE_L3GD20_INT1) | \ - PIN_PUPDR_PULLUP(GPIOE_L3GD20_INT2) | \ - PIN_PUPDR_PULLUP(GPIOE_LSM303DLHC_DRDY) |\ - PIN_PUPDR_PULLUP(GPIOE_L3GD20_CS) | \ - PIN_PUPDR_PULLUP(GPIOE_LSM303DLHC_INT1) |\ - PIN_PUPDR_PULLUP(GPIOE_LSM303DLHC_INT2) |\ - PIN_PUPDR_PULLUP(GPIOE_PIN6) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN7) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN8) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN9) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN10) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN11) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN12) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN13) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN14) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN15)) - diff --git a/keyboards/keychron/q15_max/config.h b/keyboards/keychron/q15_max/config.h deleted file mode 100644 index b74c2ea9f6..0000000000 --- a/keyboards/keychron/q15_max/config.h +++ /dev/null @@ -1,79 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#pragma once - -/* Encoder Configuration */ -#define ENCODER_DEFAULT_POS 0x3 -#define ENCODER_MAP_KEY_DELAY 2 - -#ifdef LK_WIRELESS_ENABLE -/* Hardware configuration */ -# define P2P4_MODE_SELECT_PIN A10 -# define BT_MODE_SELECT_PIN A9 - -# define LKBT51_RESET_PIN C4 -# define LKBT51_INT_INPUT_PIN B1 -# define BLUETOOTH_INT_OUTPUT_PIN A4 - -# define USB_POWER_SENSE_PIN B0 -# define USB_POWER_CONNECTED_LEVEL 0 - -# define BAT_CHARGING_PIN A3 -# define BAT_CHARGING_LEVEL 0 - -# define BT_HOST_DEVICES_COUNT 3 - -# if defined(RGB_MATRIX_ENABLE) || defined(LED_MATRIX_ENABLE) - -# define LED_DRIVER_SHUTDOWN_PIN B7 - -# define BT_HOST_LED_MATRIX_LIST \ - { 13, 14, 15 } - -# define P2P4G_HOST_LED_MATRIX_LIST \ - { 16 } - -# define BAT_LEVEL_LED_LIST \ - { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9 } - -/* 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 - -/* Reinit LED driver on tranport changed */ -# define REINIT_LED_DRIVER 1 -# endif - -/* Keep USB connection in blueooth mode */ -# define KEEP_USB_CONNECTION_IN_WIRELESS_MODE - -/* Enable bluetooth NKRO */ -# define WIRELESS_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 - -/* Factory test keys */ -#define FN_KEY_1 MO(4) - -#define MATRIX_IO_DELAY 10 diff --git a/keyboards/keychron/q15_max/firmware/keychron_q15_max_ansi_encoder_via.bin b/keyboards/keychron/q15_max/firmware/keychron_q15_max_ansi_encoder_via.bin deleted file mode 100644 index 01bda3de88..0000000000 Binary files a/keyboards/keychron/q15_max/firmware/keychron_q15_max_ansi_encoder_via.bin and /dev/null differ diff --git a/keyboards/keychron/q15_max/halconf.h b/keyboards/keychron/q15_max/halconf.h deleted file mode 100644 index 37bcc7c47b..0000000000 --- a/keyboards/keychron/q15_max/halconf.h +++ /dev/null @@ -1,31 +0,0 @@ -/* Copyright 2024 @ 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 - -#define _CHIBIOS_HAL_CONF_VER_8_0_ - -#define HAL_USE_SPI TRUE - -#ifdef LK_WIRELESS_ENABLE -# define HAL_USE_RTC TRUE -#endif - -#if defined(LK_WIRELESS_ENABLE) || defined(ENCODER_ENABLE) -# define PAL_USE_CALLBACKS TRUE -#endif - -#include_next diff --git a/keyboards/keychron/q15_max/info.json b/keyboards/keychron/q15_max/info.json deleted file mode 100644 index 65e7f9dc98..0000000000 --- a/keyboards/keychron/q15_max/info.json +++ /dev/null @@ -1,87 +0,0 @@ -{ - "keyboard_name": "Keychron Q15 Max", - "manufacturer": "Keychron", - "url": "https://github.com/Keychron", - "maintainer": "Keychron", - "processor": "STM32F401", - "bootloader": "stm32-dfu", - "usb": { - "vid": "0x3434" - }, - "features": { - "bootmagic": true, - "extrakey" : true, - "mousekey" : true, - "dip_switch" : true, - "encoder": true, - "encoder_map": true, - "nkro" : true, - "rgb_matrix": true, - "raw" : true, - "sendstring" : true - }, - "matrix_pins": { - "cols": ["B10", "B12", "B13", "B14", "B15", "C9", "A8", "A13", "A14", "A15", "C10", "C11", "C12", "C2"], - "rows": ["D2", "B3", "B4", "B5", "B6"] - }, - "diode_direction": "ROW2COL", - "dip_switch" :{ - "pins": ["C6"] - }, - "dynamic_keymap": { - "layer_count": 5 - }, - "bootmagic": { - "matrix": [1, 0] - }, - "encoder": { - "rotary": [ - { - "pin_a": "C7", - "pin_b": "C8" - }, - { - "pin_a": "C14", - "pin_b": "C13" - } - ] - }, - "rgb_matrix": { - "driver": "snled27351_spi", - "sleep": true, - "animations": { - "band_spiral_val": true, - "breathing": true, - "cycle_all": true, - "cycle_left_right": true, - "cycle_out_in": true, - "cycle_out_in_dual": true, - "cycle_pinwheel": true, - "cycle_spiral": true, - "cycle_up_down": true, - "digital_rain": true, - "dual_beacon": true, - "jellybean_raindrops": true, - "pixel_rain": true, - "rainbow_beacon": true, - "rainbow_moving_chevron": true, - "solid_reactive_multinexus": true, - "solid_reactive_multiwide": true, - "solid_reactive_simple": true, - "solid_splash": true, - "splash": true, - "typing_heatmap": true - } - }, - "eeprom": { - "wear_leveling": { - "driver": "embedded_flash", - "logical_size": 2048, - "backing_size": 4096 - } - }, - "build": { - "debounce_type": "sym_eager_pk" - }, - "debounce": 20 -} diff --git a/keyboards/keychron/q15_max/mcuconf.h b/keyboards/keychron/q15_max/mcuconf.h deleted file mode 100644 index 89294ee64b..0000000000 --- a/keyboards/keychron/q15_max/mcuconf.h +++ /dev/null @@ -1,37 +0,0 @@ -/* Copyright 2024 @ 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 - -#include_next - -#undef STM32_HSECLK -#define STM32_HSECLK 16000000 - -#undef STM32_PLLM_VALUE -#define STM32_PLLM_VALUE 8 - -#undef STM32_PLLN_VALUE -#define STM32_PLLN_VALUE 96 - -#undef STM32_PLLP_VALUE -#define STM32_PLLP_VALUE 4 - -#undef STM32_PLLQ_VALUE -#define STM32_PLLQ_VALUE 4 - -#undef STM32_SPI_USE_SPI1 -#define STM32_SPI_USE_SPI1 TRUE diff --git a/keyboards/keychron/q15_max/q15_max.c b/keyboards/keychron/q15_max/q15_max.c deleted file mode 100644 index 2d460c41a5..0000000000 --- a/keyboards/keychron/q15_max/q15_max.c +++ /dev/null @@ -1,61 +0,0 @@ -/* Copyright 2024 @ 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/>. - */ - -#include "quantum.h" -#include "keychron_task.h" -#ifdef FACTORY_TEST_ENABLE -# include "factory_test.h" -# include "keychron_common.h" -#endif -#ifdef LK_WIRELESS_ENABLE -# include "lkbt51.h" -# include "wireless.h" -# include "keychron_wireless_common.h" -# include "battery.h" -#endif - -#ifdef DIP_SWITCH_ENABLE -bool dip_switch_update_kb(uint8_t index, bool active) { - if (index == 0) { - default_layer_set(1UL << (active ? 0 : 1)); - } - dip_switch_update_user(index, active); - - return true; -} -#endif - -void keyboard_post_init_kb(void) { -#ifdef LK_WIRELESS_ENABLE - palSetLineMode(P2P4_MODE_SELECT_PIN, PAL_MODE_INPUT); - palSetLineMode(BT_MODE_SELECT_PIN, PAL_MODE_INPUT); - - lkbt51_init(false); - wireless_init(); -#endif - -#ifdef ENCODER_ENABLE - encoder_cb_init(); -#endif - - keyboard_post_init_user(); -} - -#ifdef LK_WIRELESS_ENABLE -bool lpm_is_kb_idle(void) { - return !factory_reset_indicating(); -} -#endif diff --git a/keyboards/keychron/q15_max/readme.md b/keyboards/keychron/q15_max/readme.md deleted file mode 100644 index 7d09459148..0000000000 --- a/keyboards/keychron/q15_max/readme.md +++ /dev/null @@ -1,21 +0,0 @@ -# Keychron Q15 Max - -![Keychron Q15 Max](https://cdn.shopify.com/s/files/1/0059/0630/1017/files/Keychron_Q15_Max_ortholinear_wireless_QMK_customized_mechanical_keyboard-2.jpg?v=1719210507) - -An Ortholinear keyboard. - -* Keyboard Maintainer: [Keychron](https://github.com/keychron) -* Hardware Supported: Keychron Q15 Max -* Hardware Availability: [Keychron Q15 Max QMK/VIA Wireless Custom Mechanical Keyboard](https://www.keychron.com/products/keychron-q15-max-qmk-wireless-custom-mechanical-keyboard) - -Make example for this keyboard (after setting up your build environment): - - make keychron/q15_max/ansi_encoder:default - -Flashing example for this keyboard: - - make keychron/q15_max/ansi_encoder:default:flash - -**Reset Key**: Toggle mode switch to "Cable", hold down the *Esc* key or reset button underneath space bar while connecting the USB cable, - -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). diff --git a/keyboards/keychron/q15_max/rules.mk b/keyboards/keychron/q15_max/rules.mk deleted file mode 100644 index 4eaf6820bc..0000000000 --- a/keyboards/keychron/q15_max/rules.mk +++ /dev/null @@ -1,4 +0,0 @@ -include keyboards/keychron/common/wireless/wireless.mk -include keyboards/keychron/common/keychron_common.mk - -VPATH += $(TOP_DIR)/keyboards/keychron diff --git a/keyboards/keychron/q15_max/via_json/q15_max_ansi_encoder.json b/keyboards/keychron/q15_max/via_json/q15_max_ansi_encoder.json deleted file mode 100644 index 641d328c7a..0000000000 --- a/keyboards/keychron/q15_max/via_json/q15_max_ansi_encoder.json +++ /dev/null @@ -1,223 +0,0 @@ -{ - "name": "Keychron Q15 Max ANSI Knob", - "vendorId": "0x3434", - "productId": "0x08F0", - "keycodes": ["qmk_lighting"], - "menus": [ - { - "label": "Lighting", - "content": [ - { - "label": "Backlight", - "content": [ - { - "label": "Brightness", - "type": "range", - "options": [0, 255], - "content": ["id_qmk_rgb_matrix_brightness", 3, 1] - }, - { - "label": "Effect", - "type": "dropdown", - "content": ["id_qmk_rgb_matrix_effect", 3, 2], - "options": [ - ["None", 0], - ["Solid Color", 1], - ["Breathing", 2], - ["Band Spiral Val", 3], - ["Cycle All", 4], - ["Cycle Left Right", 5], - ["Cycle Up Down", 6], - ["Rainbow Moving Chevron", 7], - ["Cycle Out In", 8], - ["Cycle Out In Dual", 9], - ["Cycle Pinwheel", 10], - ["Cycle Spiral", 11], - ["Dual Beacon", 12], - ["Rainbow Beacon", 13], - ["Jellybean Raindrops", 14], - ["Pixel Rain", 15], - ["Typing Heatmap", 16], - ["Digital Rain", 17], - ["Reactive Simple", 18], - ["Reactive Multiwide", 19], - ["Reactive Multinexus", 20], - ["Splash", 21], - ["Solid Splash", 22] - ] - }, - { - "showIf": "{id_qmk_rgb_matrix_effect} > 1", - "label": "Effect Speed", - "type": "range", - "options": [0, 255], - "content": ["id_qmk_rgb_matrix_effect_speed", 3, 3] - }, - { - "showIf": "{id_qmk_rgb_matrix_effect} != 0 && ( {id_qmk_rgb_matrix_effect} < 4 || {id_qmk_rgb_matrix_effect} == 18 || ({id_qmk_rgb_matrix_effect} > 17 && {id_qmk_rgb_matrix_effect} != 21) ) ", - "label": "Color", - "type": "color", - "content": ["id_qmk_rgb_matrix_color", 3, 4] - } - ] - } - ] - } - ], - "customKeycodes": [ - {"name": "Left Option", "title": "Left Option", "shortName": "LOpt"}, - {"name": "Right Option", "title": "Right Option", "shortName": "ROpt"}, - {"name": "Left Cmd", "title": "Left Command", "shortName": "LCmd"}, - {"name": "Right Cmd", "title": "Right Command", "shortName": "RCmd"}, - {"name": "Misson Control", "title": "Misson Control, availabe in macOS", "shortName": "MCtrl"}, - {"name": "Launch pad", "title": "Launch pad, availabe in macOS", "shortName": "LPad"}, - {"name": "Task View", "title": "Task View in Windows", "shortName": "Task"}, - {"name": "File Explorer", "title": "File Explorer in Windows", "shortName": "File"}, - {"name": "Screen shot", "title": "Screenshot in macOS", "shortName": "SShot"}, - {"name": "Cortana", "title": "Cortana in Windows", "shortName": "Cortana"}, - {"name": "Siri", "title": "Siri in macOS", "shortName": "Siri"}, - {"name": "Bluetooth Host 1", "title": "Bluetooth Host 1", "shortName": "BTH1"}, - {"name": "Bluetooth Host 2", "title": "Bluetooth Host 2", "shortName": "BTH2"}, - {"name": "Bluetooth Host 3", "title": "Bluetooth Host 3", "shortName": "BTH3"}, - {"name": "2.4G", "title": "2.4G", "shortName": "2.4G"}, - {"name": "Battery Level", "title": "Show battery level", "shortName": "Batt"}, - {"name": "~", "title": "~", "shortName": "~"} - ], - "matrix": {"rows": 5, "cols": 14}, - "layouts": { - "keymap": [ - [ - { - "c":"#aaaaaa" - }, - "0,0\n\n\n\n\n\n\n\n\ne0", - { - "c":"#cccccc" - }, - "0,1", - "0,2", - "0,3", - "0,4", - "0,5", - "0,6", - "0,7", - "0,8", - "0,9", - "0,10", - "0,11", - { - "c":"#aaaaaa" - }, - "0,12", - "0,13\n\n\n\n\n\n\n\n\ne1", - { - "c":"#cccccc" - } - ], - [ - { - "c":"#777777" - }, - "1,0", - { - "c":"#cccccc" - }, - "1,1", - "1,2", - "1,3", - "1,4", - "1,5", - "1,6", - "1,7", - "1,8", - "1,9", - "1,10", - "1,11", - "1,12", - { - "c":"#aaaaaa" - }, - "1,13" - ], - [ - "2,0", - { - "c":"#cccccc" - }, - "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 - }, - "2,12" - ], - [ - { - "c":"#aaaaaa" - }, - "3,0", - { - "c":"#cccccc" - }, - "3,1", - "3,2", - "3,3", - "3,4", - "3,5", - "3,6", - "3,7", - "3,8", - "3,9", - "3,10", - { - "c":"#aaaaaa" - }, - "3,11", - { - "c":"#cccccc" - }, - "3,12", - { - "c":"#aaaaaa" - }, - "3,13" - ], - [ - "4,0", - "4,1", - "4,2", - "4,3", - { - "c":"#cccccc", - "w": 2.25 - }, - "4,4", - { - "w": 2.75 - }, - "4,7", - { - "c":"#aaaaaa" - }, - "4,9", - "4,10", - { - "c":"#cccccc" - }, - "4,11", - "4,12", - "4,13" - ] - ] - } -} diff --git a/keyboards/keychron/q1_max/ansi_encoder/ansi_encoder.c b/keyboards/keychron/q1_max/ansi_encoder/ansi_encoder.c deleted file mode 100644 index b674d9d248..0000000000 --- a/keyboards/keychron/q1_max/ansi_encoder/ansi_encoder.c +++ /dev/null @@ -1,148 +0,0 @@ -/* 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/>. - */ - -#include "quantum.h" - -// clang-format off - -#ifdef RGB_MATRIX_ENABLE -const snled27351_led_t g_snled27351_leds[RGB_MATRIX_LED_COUNT] = { -/* Refer to SNLED27351 manual for these locations - * driver - * | R location - * | | G location - * | | | B location - * | | | | */ - {0, G_15, I_15, H_15}, - {0, G_14, I_14, H_14}, - {0, G_13, I_13, H_13}, - {0, G_12, I_12, H_12}, - {0, G_11, I_11, H_11}, - {0, G_10, I_10, H_10}, - {0, G_9, I_9, H_9}, - {0, G_8, I_8, H_8}, - {0, G_7, I_7, H_7}, - {0, G_6, I_6, H_6}, - {0, G_5, I_5, H_5}, - {0, G_4, I_4, H_4}, - {0, G_3, I_3, H_3}, - {0, G_2, I_2, H_2}, - - {0, A_15, C_15, B_15}, - {0, A_14, C_14, B_14}, - {0, A_13, C_13, B_13}, - {0, A_12, C_12, B_12}, - {0, A_11, C_11, B_11}, - {0, A_10, C_10, B_10}, - {0, A_9, C_9, B_9}, - {0, A_8, C_8, B_8}, - {0, A_7, C_7, B_7}, - {0, A_6, C_6, B_6}, - {0, A_5, C_5, B_5}, - {0, A_4, C_4, B_4}, - {0, A_3, C_3, B_3}, - {0, A_2, C_2, B_2}, - {0, A_1, C_1, B_1}, - - {0, D_15, F_15, E_15}, - {0, D_14, F_14, E_14}, - {0, D_13, F_13, E_13}, - {0, D_12, F_12, E_12}, - {0, D_11, F_11, E_11}, - {0, D_10, F_10, E_10}, - {0, D_9, F_9, E_9}, - {0, D_8, F_8, E_8}, - {0, D_7, F_7, E_7}, - {0, D_6, F_6, E_6}, - {0, D_5, F_5, E_5}, - {0, D_4, F_4, E_4}, - {0, D_3, F_3, E_3}, - {0, D_2, F_2, E_2}, - {0, D_1, F_1, E_1}, - - {1, A_15, C_15, B_15}, - {1, A_14, C_14, B_14}, - {1, A_13, C_13, B_13}, - {1, A_12, C_12, B_12}, - {1, A_11, C_11, B_11}, - {1, A_10, C_10, B_10}, - {1, A_9, C_9, B_9}, - {1, A_8, C_8, B_8}, - {1, A_7, C_7, B_7}, - {1, A_6, C_6, B_6}, - {1, A_5, C_5, B_5}, - {1, A_4, C_4, B_4}, - {1, A_3, C_3, B_3}, - {1, A_2, C_2, B_2}, - - {1, G_15, I_15, H_15}, - {1, G_13, I_13, H_13}, - {1, G_12, I_12, H_12}, - {1, G_11, I_11, H_11}, - {1, G_10, I_10, H_10}, - {1, G_9, I_9, H_9}, - {1, G_8, I_8, H_8}, - {1, G_7, I_7, H_7}, - {1, G_6, I_6, H_6}, - {1, G_5, I_5, H_5}, - {1, G_4, I_4, H_4}, - {1, G_2, I_2, H_2}, - {1, G_1, I_1, H_1}, - - {1, D_15, F_15, E_15}, - {1, D_14, F_14, E_14}, - {1, D_13, F_13, E_13}, - {1, D_9, F_9, E_9}, - {1, D_6, F_6, E_6}, - {1, D_5, F_5, E_5}, - {1, D_4, F_4, E_4}, - {1, D_3, F_3, E_3}, - {1, D_2, F_2, E_2}, - {1, D_1, F_1, E_1}, -}; - -#define __ NO_LED - -led_config_t g_led_config = { - { - // Key Matrix to LED Index - { 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, 40, 41, 42, 43 }, - { 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, __ }, - { 58, __, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, __, 69, 70 }, - { 71, 72, 73, __, __, __, 74, __, __, 75, 76, 77, 78, 79, 80 }, - }, - { - // LED Index to Physical Position - {0, 0}, {18, 0}, {33, 0}, {48, 0}, {62, 0}, {81, 0}, {95, 0}, {110, 0}, {125, 0}, {143, 0}, {158, 0}, {172, 0}, {187, 0}, {205, 0}, - {0,15}, {15,15}, {29,15}, {44,15}, {59,15}, {73,15}, {88,15}, {103,15}, {117,15}, {132,15}, {146,15}, {161,15}, {176,15}, {198,15}, {224,15}, - {4,26}, {22,26}, {37,26}, {51,26}, {66,26}, {81,26}, {95,26}, {110,26}, {125,26}, {139,26}, {154,26}, {168,26}, {183,26}, {201,26}, {224,26}, - {6,38}, {26,38}, {40,38}, {55,38}, {70,38}, {84,38}, {99,38}, {114,38}, {128,38}, {143,38}, {158,38}, {172,38}, {196,38}, {224,38}, - {6,49}, {33,49}, {48,49}, {62,49}, {77,49}, {92,49}, {106,49}, {121,49}, {136,49}, {150,49}, {165,49}, {185,49}, {209,52}, - {2,61}, {20,61}, {38,61}, {94,61}, {147,61}, {161,61}, {176,61}, {195,64}, {209,64}, {224,64}, - }, - { - // RGB LED Index to Flag - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - } -}; -#endif diff --git a/keyboards/keychron/q1_max/ansi_encoder/config.h b/keyboards/keychron/q1_max/ansi_encoder/config.h deleted file mode 100644 index 97a8e5861c..0000000000 --- a/keyboards/keychron/q1_max/ansi_encoder/config.h +++ /dev/null @@ -1,54 +0,0 @@ -/* 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 . - */ - -#pragma once - -#ifdef RGB_MATRIX_ENABLE -/* RGB Matrix driver configuration */ -# define DRIVER_COUNT 2 -# define RGB_MATRIX_LED_COUNT 81 - -# define SPI_SCK_PIN A5 -# define SPI_MISO_PIN A6 -# define SPI_MOSI_PIN A7 - -# define DRIVER_CS_PINS \ - { B8, B9 } -# define SNLED23751_SPI_DIVISOR 16 -# define SPI_DRIVER SPID1 - -/* Scan phase of led driver set as MSKPHASE_9CHANNEL(defined as 0x03 in snled27351.h) */ -# define PHASE_CHANNEL MSKPHASE_9CHANNEL -/* Set LED driver current */ -# define SNLED27351_CURRENT_TUNE \ - { 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40 } - -/* Set to infinit, which is use in USB mode by default */ -# define RGB_MATRIX_TIMEOUT RGB_MATRIX_TIMEOUT_INFINITE -/* Allow shutdown of led driver to save power */ -# define RGB_MATRIX_DRIVER_SHUTDOWN_ENABLE -/* Turn off backlight on low brightness to save power */ -# define RGB_MATRIX_BRIGHTNESS_TURN_OFF_VAL 32 - -/* Indications */ -# define CAPS_LOCK_INDEX 44 -# define LOW_BAT_IND_INDEX \ - { 74 } - -# define RGB_MATRIX_KEYPRESSES -# define RGB_MATRIX_FRAMEBUFFER_EFFECTS - -#endif diff --git a/keyboards/keychron/q1_max/ansi_encoder/info.json b/keyboards/keychron/q1_max/ansi_encoder/info.json deleted file mode 100644 index 48881c605b..0000000000 --- a/keyboards/keychron/q1_max/ansi_encoder/info.json +++ /dev/null @@ -1,99 +0,0 @@ -{ - "usb": { - "pid": "0x0810", - "device_version": "1.0.2" - }, - "layouts": { - "LAYOUT_ansi_82": { - "layout": [ - {"matrix": [0, 0], "x": 0, "y": 0}, - {"matrix": [0, 1], "x": 1.25, "y": 0}, - {"matrix": [0, 2], "x": 2.25, "y": 0}, - {"matrix": [0, 3], "x": 3.25, "y": 0}, - {"matrix": [0, 4], "x": 4.25, "y": 0}, - {"matrix": [0, 5], "x": 5.5, "y": 0}, - {"matrix": [0, 6], "x": 6.5, "y": 0}, - {"matrix": [0, 7], "x": 7.5, "y": 0}, - {"matrix": [0, 8], "x": 8.5, "y": 0}, - {"matrix": [0, 9], "x": 9.75, "y": 0}, - {"matrix": [0, 10], "x": 10.75, "y": 0}, - {"matrix": [0, 11], "x": 11.75, "y": 0}, - {"matrix": [0, 12], "x": 12.75, "y": 0}, - {"matrix": [0, 13], "x": 14, "y": 0}, - {"matrix": [0, 14], "x": 15.25, "y": 0}, - - {"matrix": [1, 0], "x": 0, "y": 1.25}, - {"matrix": [1, 1], "x": 1, "y": 1.25}, - {"matrix": [1, 2], "x": 2, "y": 1.25}, - {"matrix": [1, 3], "x": 3, "y": 1.25}, - {"matrix": [1, 4], "x": 4, "y": 1.25}, - {"matrix": [1, 5], "x": 5, "y": 1.25}, - {"matrix": [1, 6], "x": 6, "y": 1.25}, - {"matrix": [1, 7], "x": 7, "y": 1.25}, - {"matrix": [1, 8], "x": 8, "y": 1.25}, - {"matrix": [1, 9], "x": 9, "y": 1.25}, - {"matrix": [1, 10], "x": 10, "y": 1.25}, - {"matrix": [1, 11], "x": 11, "y": 1.25}, - {"matrix": [1, 12], "x": 12, "y": 1.25}, - {"matrix": [1, 13], "x": 13, "y": 1.25, "w": 2}, - {"matrix": [1, 14], "x": 15.25, "y": 1.25}, - - {"matrix": [2, 0], "x": 0, "y": 2.25, "w": 1.5}, - {"matrix": [2, 1], "x": 1.5, "y": 2.25}, - {"matrix": [2, 2], "x": 2.5, "y": 2.25}, - {"matrix": [2, 3], "x": 3.5, "y": 2.25}, - {"matrix": [2, 4], "x": 4.5, "y": 2.25}, - {"matrix": [2, 5], "x": 5.5, "y": 2.25}, - {"matrix": [2, 6], "x": 6.5, "y": 2.25}, - {"matrix": [2, 7], "x": 7.5, "y": 2.25}, - {"matrix": [2, 8], "x": 8.5, "y": 2.25}, - {"matrix": [2, 9], "x": 9.5, "y": 2.25}, - {"matrix": [2, 10], "x": 10.5, "y": 2.25}, - {"matrix": [2, 11], "x": 11.5, "y": 2.25}, - {"matrix": [2, 12], "x": 12.5, "y": 2.25}, - {"matrix": [2, 13], "x": 13.5, "y": 2.25, "w": 1.5}, - {"matrix": [2, 14], "x": 15.25, "y": 2.25}, - - {"matrix": [3, 0], "x": 0, "y": 3.25, "w": 1.75}, - {"matrix": [3, 1], "x": 1.75, "y": 3.25}, - {"matrix": [3, 2], "x": 2.75, "y": 3.25}, - {"matrix": [3, 3], "x": 3.75, "y": 3.25}, - {"matrix": [3, 4], "x": 4.75, "y": 3.25}, - {"matrix": [3, 5], "x": 5.75, "y": 3.25}, - {"matrix": [3, 6], "x": 6.75, "y": 3.25}, - {"matrix": [3, 7], "x": 7.75, "y": 3.25}, - {"matrix": [3, 8], "x": 8.75, "y": 3.25}, - {"matrix": [3, 9], "x": 9.75, "y": 3.25}, - {"matrix": [3, 10], "x": 10.75, "y": 3.25}, - {"matrix": [3, 11], "x": 11.75, "y": 3.25}, - {"matrix": [3, 12], "x": 12.75, "y": 3.25, "w": 2.25}, - {"matrix": [3, 13], "x": 15.25, "y": 3.25}, - - {"matrix": [4, 0], "x": 0, "y": 4.25, "w": 2.25}, - {"matrix": [4, 2], "x": 2.25, "y": 4.25}, - {"matrix": [4, 3], "x": 3.25, "y": 4.25}, - {"matrix": [4, 4], "x": 4.25, "y": 4.25}, - {"matrix": [4, 5], "x": 5.25, "y": 4.25}, - {"matrix": [4, 6], "x": 6.25, "y": 4.25}, - {"matrix": [4, 7], "x": 7.25, "y": 4.25}, - {"matrix": [4, 8], "x": 8.25, "y": 4.25}, - {"matrix": [4, 9], "x": 9.25, "y": 4.25}, - {"matrix": [4, 10], "x": 10.25, "y": 4.25}, - {"matrix": [4, 11], "x": 11.25, "y": 4.25}, - {"matrix": [4, 13], "x": 12.25, "y": 4.25, "w": 1.75}, - {"matrix": [4, 14], "x": 14.25, "y": 4.5}, - - {"matrix": [5, 0], "x": 0, "y": 5.25, "w": 1.25}, - {"matrix": [5, 1], "x": 1.25, "y": 5.25, "w": 1.25}, - {"matrix": [5, 2], "x": 2.5, "y": 5.25, "w": 1.25}, - {"matrix": [5, 6], "x": 3.75, "y": 5.25, "w": 6.25}, - {"matrix": [5, 9], "x": 10, "y": 5.25}, - {"matrix": [5, 10], "x": 11, "y": 5.25}, - {"matrix": [5, 11], "x": 12, "y": 5.25}, - {"matrix": [5, 12], "x": 13.25, "y": 5.5}, - {"matrix": [5, 13], "x": 14.25, "y": 5.5}, - {"matrix": [5, 14], "x": 15.25, "y": 5.5} - ] - } - } -} diff --git a/keyboards/keychron/q1_max/ansi_encoder/keymaps/default/keymap.c b/keyboards/keychron/q1_max/ansi_encoder/keymaps/default/keymap.c deleted file mode 100644 index 30f2396b4f..0000000000 --- a/keyboards/keychron/q1_max/ansi_encoder/keymaps/default/keymap.c +++ /dev/null @@ -1,77 +0,0 @@ -/* 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 . - */ - -#include QMK_KEYBOARD_H -#include "keychron_common.h" - -enum layers { - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN, -}; - -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_ansi_82( - KC_ESC, KC_BRID, KC_BRIU, KC_MCTRL, KC_LNPAD, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_DEL, KC_MUTE, - KC_GRV, 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_PGUP, - 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_PGDN, - 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_HOME, - 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_LCTL, KC_LOPTN, KC_LCMMD, KC_SPC, KC_RCMMD,MO(MAC_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - - [MAC_FN] = LAYOUT_ansi_82( - _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, RGB_TOG, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, KC_END, - _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - - [WIN_BASE] = LAYOUT_ansi_82( - KC_ESC, 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_DEL, KC_MUTE, - KC_GRV, 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_PGUP, - 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_PGDN, - 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_HOME, - 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_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(WIN_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - - [WIN_FN] = LAYOUT_ansi_82( - _______, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, RGB_TOG, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, KC_END, - _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______) -}; - -// clang-format on -#if defined(ENCODER_MAP_ENABLE) -const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][2] = { - [MAC_BASE] = {ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [MAC_FN] = {ENCODER_CCW_CW(RGB_VAD, RGB_VAI)}, - [WIN_BASE] = {ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [WIN_FN] = {ENCODER_CCW_CW(RGB_VAD, RGB_VAI)}, -}; -#endif // ENCODER_MAP_ENABLE - -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - if (!process_record_keychron_common(keycode, record)) { - return false; - } - return true; -} diff --git a/keyboards/keychron/q1_max/ansi_encoder/keymaps/via/keymap.c b/keyboards/keychron/q1_max/ansi_encoder/keymaps/via/keymap.c deleted file mode 100644 index 30f2396b4f..0000000000 --- a/keyboards/keychron/q1_max/ansi_encoder/keymaps/via/keymap.c +++ /dev/null @@ -1,77 +0,0 @@ -/* 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 . - */ - -#include QMK_KEYBOARD_H -#include "keychron_common.h" - -enum layers { - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN, -}; - -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_ansi_82( - KC_ESC, KC_BRID, KC_BRIU, KC_MCTRL, KC_LNPAD, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_DEL, KC_MUTE, - KC_GRV, 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_PGUP, - 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_PGDN, - 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_HOME, - 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_LCTL, KC_LOPTN, KC_LCMMD, KC_SPC, KC_RCMMD,MO(MAC_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - - [MAC_FN] = LAYOUT_ansi_82( - _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, RGB_TOG, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, KC_END, - _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - - [WIN_BASE] = LAYOUT_ansi_82( - KC_ESC, 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_DEL, KC_MUTE, - KC_GRV, 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_PGUP, - 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_PGDN, - 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_HOME, - 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_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(WIN_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - - [WIN_FN] = LAYOUT_ansi_82( - _______, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, RGB_TOG, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, KC_END, - _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______) -}; - -// clang-format on -#if defined(ENCODER_MAP_ENABLE) -const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][2] = { - [MAC_BASE] = {ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [MAC_FN] = {ENCODER_CCW_CW(RGB_VAD, RGB_VAI)}, - [WIN_BASE] = {ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [WIN_FN] = {ENCODER_CCW_CW(RGB_VAD, RGB_VAI)}, -}; -#endif // ENCODER_MAP_ENABLE - -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - if (!process_record_keychron_common(keycode, record)) { - return false; - } - return true; -} diff --git a/keyboards/keychron/q1_max/ansi_encoder/keymaps/via/rules.mk b/keyboards/keychron/q1_max/ansi_encoder/keymaps/via/rules.mk deleted file mode 100644 index 1e5b99807c..0000000000 --- a/keyboards/keychron/q1_max/ansi_encoder/keymaps/via/rules.mk +++ /dev/null @@ -1 +0,0 @@ -VIA_ENABLE = yes diff --git a/keyboards/keychron/q1_max/ansi_encoder/rules.mk b/keyboards/keychron/q1_max/ansi_encoder/rules.mk deleted file mode 100644 index 7ff128fa69..0000000000 --- a/keyboards/keychron/q1_max/ansi_encoder/rules.mk +++ /dev/null @@ -1 +0,0 @@ -# This file intentionally left blank \ No newline at end of file diff --git a/keyboards/keychron/q1_max/board.h b/keyboards/keychron/q1_max/board.h deleted file mode 100644 index 5f159c5276..0000000000 --- a/keyboards/keychron/q1_max/board.h +++ /dev/null @@ -1,226 +0,0 @@ -/* 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 . - */ - -#pragma once - -#include_next - -// clang-format off - -/* Set GPIOA_SWDIO to INPUT & PIN_PUPDR_PULLUP to avoid FLOATING */ -#undef VAL_GPIOA_MODER -#define VAL_GPIOA_MODER (PIN_MODE_INPUT(GPIOA_BUTTON) | \ - PIN_MODE_INPUT(GPIOA_PIN1) | \ - PIN_MODE_INPUT(GPIOA_PIN2) | \ - PIN_MODE_INPUT(GPIOA_PIN3) | \ - PIN_MODE_ALTERNATE(GPIOA_CS43L22_LRCK) |\ - PIN_MODE_ALTERNATE(GPIOA_L3GD20_SCL) | \ - PIN_MODE_ALTERNATE(GPIOA_L3GD20_SD0) | \ - PIN_MODE_ALTERNATE(GPIOA_L3GD20_SDI) | \ - PIN_MODE_INPUT(GPIOA_PIN8) | \ - PIN_MODE_INPUT(GPIOA_VBUS_FS) | \ - PIN_MODE_ALTERNATE(GPIOA_OTG_FS_ID) | \ - PIN_MODE_ALTERNATE(GPIOA_OTG_FS_DM) | \ - PIN_MODE_ALTERNATE(GPIOA_OTG_FS_DP) | \ - PIN_MODE_INPUT(GPIOA_SWDIO) | \ - PIN_MODE_INPUT(GPIOA_SWCLK) | \ - PIN_MODE_INPUT(GPIOA_PIN15)) - -#undef VAL_GPIOA_PUPDR -#define VAL_GPIOA_PUPDR (PIN_PUPDR_FLOATING(GPIOA_BUTTON) | \ - PIN_PUPDR_PULLUP(GPIOA_PIN1) | \ - PIN_PUPDR_PULLUP(GPIOA_PIN2) | \ - PIN_PUPDR_PULLUP(GPIOA_PIN3) | \ - PIN_PUPDR_FLOATING(GPIOA_CS43L22_LRCK) |\ - PIN_PUPDR_FLOATING(GPIOA_L3GD20_SCL) | \ - PIN_PUPDR_PULLUP(GPIOA_L3GD20_SD0) | \ - PIN_PUPDR_PULLUP(GPIOA_L3GD20_SDI) | \ - PIN_PUPDR_PULLUP(GPIOA_PIN8) | \ - PIN_PUPDR_FLOATING(GPIOA_VBUS_FS) | \ - PIN_PUPDR_FLOATING(GPIOA_OTG_FS_ID) | \ - PIN_PUPDR_FLOATING(GPIOA_OTG_FS_DM) | \ - PIN_PUPDR_FLOATING(GPIOA_OTG_FS_DP) | \ - PIN_PUPDR_PULLUP(GPIOA_SWDIO) | \ - PIN_PUPDR_PULLUP(GPIOA_SWCLK) | \ - PIN_PUPDR_PULLUP(GPIOA_PIN15)) - -#undef VAL_GPIOB_MODER -#define VAL_GPIOB_MODER (PIN_MODE_INPUT(GPIOB_PIN0) | \ - PIN_MODE_INPUT(GPIOB_PIN1) | \ - PIN_MODE_INPUT(GPIOB_PIN2) | \ - PIN_MODE_INPUT(GPIOB_SWO) | \ - PIN_MODE_INPUT(GPIOB_PIN4) | \ - PIN_MODE_INPUT(GPIOB_PIN5) | \ - PIN_MODE_INPUT(GPIOB_LSM303DLHC_SCL) | \ - PIN_MODE_INPUT(GPIOB_PIN7) | \ - PIN_MODE_INPUT(GPIOB_PIN8) | \ - PIN_MODE_INPUT(GPIOB_LSM303DLHC_SDA) | \ - PIN_MODE_INPUT(GPIOB_MP45DT02_CLK_IN) |\ - PIN_MODE_INPUT(GPIOB_PIN11) | \ - PIN_MODE_INPUT(GPIOB_PIN12) | \ - PIN_MODE_INPUT(GPIOB_PIN13) | \ - PIN_MODE_INPUT(GPIOB_PIN14) | \ - PIN_MODE_INPUT(GPIOB_PIN15)) - -#undef VAL_GPIOB_PUPDR -#define VAL_GPIOB_PUPDR (PIN_PUPDR_PULLDOWN(GPIOB_PIN0) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN1) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN2) | \ - PIN_PUPDR_PULLDOWN(GPIOB_SWO) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN4) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN5) | \ - PIN_PUPDR_PULLDOWN(GPIOB_LSM303DLHC_SCL) |\ - PIN_PUPDR_PULLDOWN(GPIOB_PIN7) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN8) | \ - PIN_PUPDR_PULLDOWN(GPIOB_LSM303DLHC_SDA) |\ - PIN_PUPDR_PULLDOWN(GPIOB_MP45DT02_CLK_IN) |\ - PIN_PUPDR_PULLDOWN(GPIOB_PIN11) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN12) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN13) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN14) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN15)) - -#undef VAL_GPIOB_AFRL -#define VAL_GPIOB_AFRL (PIN_AFIO_AF(GPIOB_PIN0, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN1, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN2, 0U) | \ - PIN_AFIO_AF(GPIOB_SWO, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN4, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN5, 0U) | \ - PIN_AFIO_AF(GPIOB_LSM303DLHC_SCL, 0) | \ - PIN_AFIO_AF(GPIOB_PIN7, 0U)) - -#undef VAL_GPIOB_AFRH -#define VAL_GPIOB_AFRH (PIN_AFIO_AF(GPIOB_PIN8, 0U) | \ - PIN_AFIO_AF(GPIOB_LSM303DLHC_SDA, 0) | \ - PIN_AFIO_AF(GPIOB_MP45DT02_CLK_IN, 0U) |\ - PIN_AFIO_AF(GPIOB_PIN11, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN12, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN13, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN14, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN15, 0U)) - -/* C5 Need to be pulldown */ -#undef VAL_GPIOC_MODER -#define VAL_GPIOC_MODER (PIN_MODE_INPUT(GPIOC_OTG_FS_POWER_ON) |\ - PIN_MODE_INPUT(GPIOC_PIN1) | \ - PIN_MODE_INPUT(GPIOC_PIN2) | \ - PIN_MODE_INPUT(GPIOC_CS43L22_AIN4x) | \ - PIN_MODE_INPUT(GPIOC_PIN4) | \ - PIN_MODE_INPUT(GPIOC_PIN5) | \ - PIN_MODE_INPUT(GPIOC_PIN6) | \ - PIN_MODE_INPUT(GPIOC_CS43L22_MCLK) | \ - PIN_MODE_INPUT(GPIOC_PIN8) | \ - PIN_MODE_INPUT(GPIOC_PIN9) | \ - PIN_MODE_INPUT(GPIOC_CS43L22_SCLK) | \ - PIN_MODE_INPUT(GPIOC_PIN11) | \ - PIN_MODE_INPUT(GPIOC_CS43L22_SDIN) | \ - PIN_MODE_INPUT(GPIOC_PIN13) | \ - PIN_MODE_INPUT(GPIOC_OSC32_IN) | \ - PIN_MODE_INPUT(GPIOC_OSC32_OUT)) - -#undef VAL_GPIOC_PUPDR -#define VAL_GPIOC_PUPDR (PIN_PUPDR_PULLUP(GPIOC_OTG_FS_POWER_ON) |\ - PIN_PUPDR_PULLUP(GPIOC_PIN1) | \ - PIN_PUPDR_PULLUP(GPIOC_PIN2) | \ - PIN_PUPDR_PULLUP(GPIOC_CS43L22_AIN4x) |\ - PIN_PUPDR_PULLUP(GPIOC_PIN4) | \ - PIN_PUPDR_PULLDOWN(GPIOC_PIN5) | \ - PIN_PUPDR_PULLUP(GPIOC_PIN6) | \ - PIN_PUPDR_PULLUP(GPIOC_CS43L22_MCLK) | \ - PIN_PUPDR_PULLUP(GPIOC_PIN8) | \ - PIN_PUPDR_PULLUP(GPIOC_PIN9) | \ - PIN_PUPDR_PULLUP(GPIOC_CS43L22_SCLK) | \ - PIN_PUPDR_PULLUP(GPIOC_PIN11) | \ - PIN_PUPDR_PULLUP(GPIOC_CS43L22_SDIN) | \ - PIN_PUPDR_PULLUP(GPIOC_PIN13) | \ - PIN_PUPDR_PULLUP(GPIOC_OSC32_IN) | \ - PIN_PUPDR_PULLUP(GPIOC_OSC32_OUT)) - -/* Set all GPIOD pins to INPUT & PULLUP to avoid FLOATING */ -#undef VAL_GPIOD_MODER -#define VAL_GPIOD_MODER (PIN_MODE_INPUT(GPIOD_PIN0) | \ - PIN_MODE_INPUT(GPIOD_PIN1) | \ - PIN_MODE_INPUT(GPIOD_PIN2) | \ - PIN_MODE_INPUT(GPIOD_PIN3) | \ - PIN_MODE_INPUT(GPIOD_CS43L22_RESET) | \ - PIN_MODE_INPUT(GPIOD_OverCurrent) | \ - PIN_MODE_INPUT(GPIOD_PIN6) | \ - PIN_MODE_INPUT(GPIOD_PIN7) | \ - PIN_MODE_INPUT(GPIOD_PIN8) | \ - PIN_MODE_INPUT(GPIOD_PIN9) | \ - PIN_MODE_INPUT(GPIOD_PIN10) | \ - PIN_MODE_INPUT(GPIOD_PIN11) | \ - PIN_MODE_INPUT(GPIOD_LED4) | \ - PIN_MODE_INPUT(GPIOD_LED3) | \ - PIN_MODE_INPUT(GPIOD_LED5) | \ - PIN_MODE_INPUT(GPIOD_LED6)) - -#undef VAL_GPIOD_PUPDR -#define VAL_GPIOD_PUPDR (PIN_PUPDR_PULLUP(GPIOD_PIN0) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN1) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN2) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN3) | \ - PIN_PUPDR_PULLUP(GPIOD_CS43L22_RESET) |\ - PIN_PUPDR_PULLUP(GPIOD_OverCurrent) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN6) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN7) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN8) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN9) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN10) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN11) | \ - PIN_PUPDR_PULLUP(GPIOD_LED4) | \ - PIN_PUPDR_PULLUP(GPIOD_LED3) | \ - PIN_PUPDR_PULLUP(GPIOD_LED5) | \ - PIN_PUPDR_PULLUP(GPIOD_LED6)) - -/* Set all GPIOE pins to INPUT & PULLUP to avoid FLOATING */ -#undef VAL_GPIOE_MODER -#define VAL_GPIOE_MODER (PIN_MODE_INPUT(GPIOE_L3GD20_INT1) | \ - PIN_MODE_INPUT(GPIOE_L3GD20_INT2) | \ - PIN_MODE_INPUT(GPIOE_LSM303DLHC_DRDY) |\ - PIN_MODE_INPUT(GPIOE_L3GD20_CS) | \ - PIN_MODE_INPUT(GPIOE_LSM303DLHC_INT1) |\ - PIN_MODE_INPUT(GPIOE_LSM303DLHC_INT2) |\ - PIN_MODE_INPUT(GPIOE_PIN6) | \ - PIN_MODE_INPUT(GPIOE_PIN7) | \ - PIN_MODE_INPUT(GPIOE_PIN8) | \ - PIN_MODE_INPUT(GPIOE_PIN9) | \ - PIN_MODE_INPUT(GPIOE_PIN10) | \ - PIN_MODE_INPUT(GPIOE_PIN11) | \ - PIN_MODE_INPUT(GPIOE_PIN12) | \ - PIN_MODE_INPUT(GPIOE_PIN13) | \ - PIN_MODE_INPUT(GPIOE_PIN14) | \ - PIN_MODE_INPUT(GPIOE_PIN15)) - -#undef VAL_GPIOE_PUPDR -#define VAL_GPIOE_PUPDR (PIN_PUPDR_PULLUP(GPIOE_L3GD20_INT1) | \ - PIN_PUPDR_PULLUP(GPIOE_L3GD20_INT2) | \ - PIN_PUPDR_PULLUP(GPIOE_LSM303DLHC_DRDY) |\ - PIN_PUPDR_PULLUP(GPIOE_L3GD20_CS) | \ - PIN_PUPDR_PULLUP(GPIOE_LSM303DLHC_INT1) |\ - PIN_PUPDR_PULLUP(GPIOE_LSM303DLHC_INT2) |\ - PIN_PUPDR_PULLUP(GPIOE_PIN6) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN7) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN8) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN9) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN10) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN11) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN12) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN13) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN14) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN15)) - diff --git a/keyboards/keychron/q1_max/config.h b/keyboards/keychron/q1_max/config.h deleted file mode 100644 index ace28dab12..0000000000 --- a/keyboards/keychron/q1_max/config.h +++ /dev/null @@ -1,82 +0,0 @@ -/* 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 . - */ - -#pragma once - -/* Encoder Configuration */ -#define ENCODER_DEFAULT_POS 0x3 -#define ENCODER_MAP_KEY_DELAY 2 - -#ifdef LK_WIRELESS_ENABLE -/* Hardware configuration */ -# define P2P4_MODE_SELECT_PIN A10 -# define BT_MODE_SELECT_PIN A9 - -# define LKBT51_RESET_PIN C4 -# define LKBT51_INT_INPUT_PIN B1 -# define BLUETOOTH_INT_OUTPUT_PIN A4 - -# define USB_POWER_SENSE_PIN B0 -# define USB_POWER_CONNECTED_LEVEL 0 - -# define BAT_CHARGING_PIN B13 -# define BAT_CHARGING_LEVEL 0 - -# define BT_HOST_DEVICES_COUNT 3 - -# if defined(RGB_MATRIX_ENABLE) || defined(LED_MATRIX_ENABLE) - -# define LED_DRIVER_SHUTDOWN_PIN B7 - -# define BT_HOST_LED_MATRIX_LIST \ - { 15, 16, 17 } - -# define P2P4G_HOST_LED_MATRIX_LIST \ - { 18 } - -# define BAT_LEVEL_LED_LIST \ - { 15, 16, 17, 18, 19, 20, 21, 22, 23, 24 } - -/* 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 - -/* Reinit LED driver on tranport changed */ -# define REINIT_LED_DRIVER 1 - -# endif - -/* Keep USB connection in blueooth mode */ -# define KEEP_USB_CONNECTION_IN_WIRELESS_MODE - -/* Enable bluetooth NKRO */ -# define WIRELESS_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 - -/* Factory test keys */ -#define FN_KEY_1 MO(1) -#define FN_KEY_2 MO(3) -#define FN_BL_TRIG_KEY KC_END - -#define MATRIX_IO_DELAY 10 diff --git a/keyboards/keychron/q1_max/firmware/keychron_q1_max_ansi_encoder_via.bin b/keyboards/keychron/q1_max/firmware/keychron_q1_max_ansi_encoder_via.bin deleted file mode 100644 index 49e5da6593..0000000000 Binary files a/keyboards/keychron/q1_max/firmware/keychron_q1_max_ansi_encoder_via.bin and /dev/null differ diff --git a/keyboards/keychron/q1_max/firmware/keychron_q1_max_iso_encoder_via.bin b/keyboards/keychron/q1_max/firmware/keychron_q1_max_iso_encoder_via.bin deleted file mode 100644 index c32369b6b6..0000000000 Binary files a/keyboards/keychron/q1_max/firmware/keychron_q1_max_iso_encoder_via.bin and /dev/null differ diff --git a/keyboards/keychron/q1_max/firmware/keychron_q1_max_jis_encoder_via.bin b/keyboards/keychron/q1_max/firmware/keychron_q1_max_jis_encoder_via.bin deleted file mode 100644 index acf815f274..0000000000 Binary files a/keyboards/keychron/q1_max/firmware/keychron_q1_max_jis_encoder_via.bin and /dev/null differ diff --git a/keyboards/keychron/q1_max/halconf.h b/keyboards/keychron/q1_max/halconf.h deleted file mode 100644 index b1ed75e0b8..0000000000 --- a/keyboards/keychron/q1_max/halconf.h +++ /dev/null @@ -1,31 +0,0 @@ -/* 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 - -#define _CHIBIOS_HAL_CONF_VER_8_0_ - -#define HAL_USE_SPI TRUE - -#ifdef LK_WIRELESS_ENABLE -# define HAL_USE_RTC TRUE -#endif - -#if defined(LK_WIRELESS_ENABLE) || defined(ENCODER_ENABLE) -# define PAL_USE_CALLBACKS TRUE -#endif - -#include_next diff --git a/keyboards/keychron/q1_max/info.json b/keyboards/keychron/q1_max/info.json deleted file mode 100644 index 06b955f9a6..0000000000 --- a/keyboards/keychron/q1_max/info.json +++ /dev/null @@ -1,77 +0,0 @@ -{ - "keyboard_name": "Keychron Q1 Max", - "manufacturer": "Keychron", - "url": "https://github.com/Keychron", - "maintainer": "lokher", - "processor": "STM32F401", - "bootloader": "stm32-dfu", - "usb": { - "vid": "0x3434" - }, - "features": { - "bootmagic": true, - "extrakey" : true, - "mousekey" : true, - "dip_switch" : true, - "encoder": true, - "encoder_map": true, - "nkro" : true, - "rgb_matrix": true, - "raw" : true, - "send_string" : true - }, - "matrix_pins": { - "cols": ["C7", "C8", "A14", "A15", "C10", "C11", "C13", "C14", "C15", "C0", "C1", "C2", "C3", "A0", "A1"], - "rows": ["C12", "D2", "B3", "B4", "B5", "B6"] - }, - "diode_direction": "ROW2COL", - "encoder": { - "rotary": [ - { - "pin_a": "B14", - "pin_b": "B15" - } - ] - }, - "dip_switch" :{ - "pins": ["B12"] - }, - "rgb_matrix": { - "driver": "snled27351_spi", - "sleep": true, - "animations": { - "band_spiral_val": true, - "breathing": true, - "cycle_all": true, - "cycle_left_right": true, - "cycle_out_in": true, - "cycle_out_in_dual": true, - "cycle_pinwheel": true, - "cycle_spiral": true, - "cycle_up_down": true, - "digital_rain": true, - "dual_beacon": true, - "jellybean_raindrops": true, - "pixel_rain": true, - "rainbow_beacon": true, - "rainbow_moving_chevron": true, - "solid_reactive_multinexus": true, - "solid_reactive_multiwide": true, - "solid_reactive_simple": true, - "solid_splash": true, - "splash": true, - "typing_heatmap": true - } - }, - "eeprom": { - "wear_leveling": { - "driver": "embedded_flash", - "logical_size": 2048, - "backing_size": 4096 - } - }, - "build": { - "debounce_type": "sym_eager_pk" - }, - "debounce": 20 -} diff --git a/keyboards/keychron/q1_max/iso_encoder/config.h b/keyboards/keychron/q1_max/iso_encoder/config.h deleted file mode 100644 index baeb1d1f42..0000000000 --- a/keyboards/keychron/q1_max/iso_encoder/config.h +++ /dev/null @@ -1,54 +0,0 @@ -/* 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 . - */ - -#pragma once - -#ifdef RGB_MATRIX_ENABLE -/* RGB Matrix driver configuration */ -# define DRIVER_COUNT 2 -# define RGB_MATRIX_LED_COUNT 82 - -# define SPI_SCK_PIN A5 -# define SPI_MISO_PIN A6 -# define SPI_MOSI_PIN A7 - -# define DRIVER_CS_PINS \ - { B8, B9 } -# define SNLED23751_SPI_DIVISOR 16 -# define SPI_DRIVER SPID1 - -/* Scan phase of led driver set as MSKPHASE_9CHANNEL(defined as 0x03 in snled27351.h) */ -# define PHASE_CHANNEL MSKPHASE_9CHANNEL -/* Set LED driver current */ -# define SNLED27351_CURRENT_TUNE \ - { 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40 } - -/* Set to infinit, which is use in USB mode by default */ -# define RGB_MATRIX_TIMEOUT RGB_MATRIX_TIMEOUT_INFINITE -/* Allow shutdown of led driver to save power */ -# define RGB_MATRIX_DRIVER_SHUTDOWN_ENABLE -/* Turn off backlight on low brightness to save power */ -# define RGB_MATRIX_BRIGHTNESS_TURN_OFF_VAL 32 - -/* Indications */ -# define CAPS_LOCK_INDEX 44 -# define LOW_BAT_IND_INDEX \ - { 75 } - -# define RGB_MATRIX_KEYPRESSES -# define RGB_MATRIX_FRAMEBUFFER_EFFECTS - -#endif diff --git a/keyboards/keychron/q1_max/iso_encoder/info.json b/keyboards/keychron/q1_max/iso_encoder/info.json deleted file mode 100644 index 82fb828ffe..0000000000 --- a/keyboards/keychron/q1_max/iso_encoder/info.json +++ /dev/null @@ -1,100 +0,0 @@ -{ - "usb": { - "pid": "0x0811", - "device_version": "1.0.0" - }, - "layouts": { - "LAYOUT_iso_83": { - "layout": [ - {"matrix": [0, 0], "x": 0, "y": 0}, - {"matrix": [0, 1], "x": 1.25, "y": 0}, - {"matrix": [0, 2], "x": 2.25, "y": 0}, - {"matrix": [0, 3], "x": 3.25, "y": 0}, - {"matrix": [0, 4], "x": 4.25, "y": 0}, - {"matrix": [0, 5], "x": 5.5, "y": 0}, - {"matrix": [0, 6], "x": 6.5, "y": 0}, - {"matrix": [0, 7], "x": 7.5, "y": 0}, - {"matrix": [0, 8], "x": 8.5, "y": 0}, - {"matrix": [0, 9], "x": 9.75, "y": 0}, - {"matrix": [0, 10], "x": 10.75, "y": 0}, - {"matrix": [0, 11], "x": 11.75, "y": 0}, - {"matrix": [0, 12], "x": 12.75, "y": 0}, - {"matrix": [0, 13], "x": 14, "y": 0}, - {"matrix": [0, 14], "x": 15.25, "y": 0}, - - {"matrix": [1, 0], "x": 0, "y": 1.25}, - {"matrix": [1, 1], "x": 1, "y": 1.25}, - {"matrix": [1, 2], "x": 2, "y": 1.25}, - {"matrix": [1, 3], "x": 3, "y": 1.25}, - {"matrix": [1, 4], "x": 4, "y": 1.25}, - {"matrix": [1, 5], "x": 5, "y": 1.25}, - {"matrix": [1, 6], "x": 6, "y": 1.25}, - {"matrix": [1, 7], "x": 7, "y": 1.25}, - {"matrix": [1, 8], "x": 8, "y": 1.25}, - {"matrix": [1, 9], "x": 9, "y": 1.25}, - {"matrix": [1, 10], "x": 10, "y": 1.25}, - {"matrix": [1, 11], "x": 11, "y": 1.25}, - {"matrix": [1, 12], "x": 12, "y": 1.25}, - {"matrix": [1, 13], "x": 13, "y": 1.25, "w": 2}, - {"matrix": [1, 14], "x": 15.25, "y": 1.25}, - - {"matrix": [2, 0], "x": 0, "y": 2.25, "w": 1.5}, - {"matrix": [2, 1], "x": 1.5, "y": 2.25}, - {"matrix": [2, 2], "x": 2.5, "y": 2.25}, - {"matrix": [2, 3], "x": 3.5, "y": 2.25}, - {"matrix": [2, 4], "x": 4.5, "y": 2.25}, - {"matrix": [2, 5], "x": 5.5, "y": 2.25}, - {"matrix": [2, 6], "x": 6.5, "y": 2.25}, - {"matrix": [2, 7], "x": 7.5, "y": 2.25}, - {"matrix": [2, 8], "x": 8.5, "y": 2.25}, - {"matrix": [2, 9], "x": 9.5, "y": 2.25}, - {"matrix": [2, 10], "x": 10.5, "y": 2.25}, - {"matrix": [2, 11], "x": 11.5, "y": 2.25}, - {"matrix": [2, 12], "x": 12.5, "y": 2.25}, - {"matrix": [2, 14], "x": 15.25, "y": 2.25}, - - {"matrix": [3, 0], "x": 0, "y": 3.25, "w": 1.75}, - {"matrix": [3, 1], "x": 1.75, "y": 3.25}, - {"matrix": [3, 2], "x": 2.75, "y": 3.25}, - {"matrix": [3, 3], "x": 3.75, "y": 3.25}, - {"matrix": [3, 4], "x": 4.75, "y": 3.25}, - {"matrix": [3, 5], "x": 5.75, "y": 3.25}, - {"matrix": [3, 6], "x": 6.75, "y": 3.25}, - {"matrix": [3, 7], "x": 7.75, "y": 3.25}, - {"matrix": [3, 8], "x": 8.75, "y": 3.25}, - {"matrix": [3, 9], "x": 9.75, "y": 3.25}, - {"matrix": [3, 10], "x": 10.75, "y": 3.25}, - {"matrix": [3, 11], "x": 11.75, "y": 3.25}, - {"matrix": [3, 12], "x": 12.75, "y": 3.25}, - {"matrix": [2, 13], "x": 13.25, "y": 2.75, "w": 1.25, "h": 2}, - {"matrix": [3, 13], "x": 15.25, "y": 3.25}, - - {"matrix": [4, 0], "x": 0, "y": 4.25, "w": 1.25}, - {"matrix": [4, 1], "x": 1.25, "y": 4.25}, - {"matrix": [4, 2], "x": 2.25, "y": 4.25}, - {"matrix": [4, 3], "x": 3.25, "y": 4.25}, - {"matrix": [4, 4], "x": 4.25, "y": 4.25}, - {"matrix": [4, 5], "x": 5.25, "y": 4.25}, - {"matrix": [4, 6], "x": 6.25, "y": 4.25}, - {"matrix": [4, 7], "x": 7.25, "y": 4.25}, - {"matrix": [4, 8], "x": 8.25, "y": 4.25}, - {"matrix": [4, 9], "x": 9.25, "y": 4.25}, - {"matrix": [4, 10], "x": 10.25, "y": 4.25}, - {"matrix": [4, 11], "x": 11.25, "y": 4.25}, - {"matrix": [4, 13], "x": 12.25, "y": 4.25, "w": 1.75}, - {"matrix": [4, 14], "x": 14.25, "y": 4.5}, - - {"matrix": [5, 0], "x": 0, "y": 5.25, "w": 1.25}, - {"matrix": [5, 1], "x": 1.25, "y": 5.25, "w": 1.25}, - {"matrix": [5, 2], "x": 2.5, "y": 5.25, "w": 1.25}, - {"matrix": [5, 6], "x": 3.75, "y": 5.25, "w": 6.25}, - {"matrix": [5, 9], "x": 10, "y": 5.25}, - {"matrix": [5, 10], "x": 11, "y": 5.25}, - {"matrix": [5, 11], "x": 12, "y": 5.25}, - {"matrix": [5, 12], "x": 13.25, "y": 5.5}, - {"matrix": [5, 13], "x": 14.25, "y": 5.5}, - {"matrix": [5, 14], "x": 15.25, "y": 5.5} - ] - } - } -} diff --git a/keyboards/keychron/q1_max/iso_encoder/iso_encoder.c b/keyboards/keychron/q1_max/iso_encoder/iso_encoder.c deleted file mode 100644 index 4aefdb572b..0000000000 --- a/keyboards/keychron/q1_max/iso_encoder/iso_encoder.c +++ /dev/null @@ -1,149 +0,0 @@ -/* 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/>. - */ - -#include "quantum.h" - -// clang-format off - -#ifdef RGB_MATRIX_ENABLE -const snled27351_led_t g_snled27351_leds[RGB_MATRIX_LED_COUNT] = { -/* Refer to SNLED27351 manual for these locations - * driver - * | R location - * | | G location - * | | | B location - * | | | | */ - {0, G_15, I_15, H_15}, - {0, G_14, I_14, H_14}, - {0, G_13, I_13, H_13}, - {0, G_12, I_12, H_12}, - {0, G_11, I_11, H_11}, - {0, G_10, I_10, H_10}, - {0, G_9, I_9, H_9}, - {0, G_8, I_8, H_8}, - {0, G_7, I_7, H_7}, - {0, G_6, I_6, H_6}, - {0, G_5, I_5, H_5}, - {0, G_4, I_4, H_4}, - {0, G_3, I_3, H_3}, - {0, G_2, I_2, H_2}, - - {0, A_15, C_15, B_15}, - {0, A_14, C_14, B_14}, - {0, A_13, C_13, B_13}, - {0, A_12, C_12, B_12}, - {0, A_11, C_11, B_11}, - {0, A_10, C_10, B_10}, - {0, A_9, C_9, B_9}, - {0, A_8, C_8, B_8}, - {0, A_7, C_7, B_7}, - {0, A_6, C_6, B_6}, - {0, A_5, C_5, B_5}, - {0, A_4, C_4, B_4}, - {0, A_3, C_3, B_3}, - {0, A_2, C_2, B_2}, - {0, A_1, C_1, B_1}, - - {0, D_15, F_15, E_15}, - {0, D_14, F_14, E_14}, - {0, D_13, F_13, E_13}, - {0, D_12, F_12, E_12}, - {0, D_11, F_11, E_11}, - {0, D_10, F_10, E_10}, - {0, D_9, F_9, E_9}, - {0, D_8, F_8, E_8}, - {0, D_7, F_7, E_7}, - {0, D_6, F_6, E_6}, - {0, D_5, F_5, E_5}, - {0, D_4, F_4, E_4}, - {0, D_3, F_3, E_3}, - {0, D_2, F_2, E_2}, - {0, D_1, F_1, E_1}, - - {1, A_15, C_15, B_15}, - {1, A_14, C_14, B_14}, - {1, A_13, C_13, B_13}, - {1, A_12, C_12, B_12}, - {1, A_11, C_11, B_11}, - {1, A_10, C_10, B_10}, - {1, A_9, C_9, B_9}, - {1, A_8, C_8, B_8}, - {1, A_7, C_7, B_7}, - {1, A_6, C_6, B_6}, - {1, A_5, C_5, B_5}, - {1, A_4, C_4, B_4}, - {1, A_3, C_3, B_3}, - {1, A_2, C_2, B_2}, - - {1, G_15, I_15, H_15}, - {1, G_14, I_14, H_14}, - {1, G_13, I_13, H_13}, - {1, G_12, I_12, H_12}, - {1, G_11, I_11, H_11}, - {1, G_10, I_10, H_10}, - {1, G_9, I_9, H_9}, - {1, G_8, I_8, H_8}, - {1, G_7, I_7, H_7}, - {1, G_6, I_6, H_6}, - {1, G_5, I_5, H_5}, - {1, G_4, I_4, H_4}, - {1, G_2, I_2, H_2}, - {1, G_1, I_1, H_1}, - - {1, D_15, F_15, E_15}, - {1, D_14, F_14, E_14}, - {1, D_13, F_13, E_13}, - {1, D_9, F_9, E_9}, - {1, D_6, F_6, E_6}, - {1, D_5, F_5, E_5}, - {1, D_4, F_4, E_4}, - {1, D_3, F_3, E_3}, - {1, D_2, F_2, E_2}, - {1, D_1, F_1, E_1}, -}; - -#define __ NO_LED - -led_config_t g_led_config = { - { - // Key Matrix to LED Index - { 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, 40, 41, 42, 43 }, - { 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, __ }, - { 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, __, 70, 71 }, - { 72, 73, 74, __, __, __, 75, __, __, 76, 77, 78, 79, 80, 81 }, - }, - { - // LED Index to Physical Position - {0, 0}, {18, 0}, {33, 0}, {48, 0}, {62, 0}, {81, 0}, {95, 0}, {110, 0}, {125, 0}, {143, 0}, {158, 0}, {172, 0}, {187, 0}, {205, 0}, - {0,15}, {15,15}, {29,15}, {44,15}, {59,15}, {73,15}, {88,15}, {103,15}, {117,15}, {132,15}, {146,15}, {161,15}, {176,15}, {198,15}, {224,15}, - {4,26}, {22,26}, {37,26}, {51,26}, {66,26}, {81,26}, {95,26}, {110,26}, {125,26}, {139,26}, {154,26}, {168,26}, {183,26}, {203,32}, {224,26}, - {6,38}, {26,38}, {40,38}, {55,38}, {70,38}, {84,38}, {99,38}, {114,38}, {128,38}, {143,38}, {158,38}, {172,38}, {187,38}, {224,38}, - {2,49}, {18,49}, {33,49}, {48,49}, {62,49}, {77,49}, {92,49}, {106,49}, {121,49}, {136,49}, {150,49}, {165,49}, {185,49}, {209,52}, - {2,61}, {20,61}, {38,61}, {94,61}, {147,61}, {161,61}, {176,61}, {195,64}, {209,64}, {224,64} - }, - { - // RGB LED Index to Flag - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 - } -}; -#endif diff --git a/keyboards/keychron/q1_max/iso_encoder/keymaps/default/keymap.c b/keyboards/keychron/q1_max/iso_encoder/keymaps/default/keymap.c deleted file mode 100644 index d39e904932..0000000000 --- a/keyboards/keychron/q1_max/iso_encoder/keymaps/default/keymap.c +++ /dev/null @@ -1,77 +0,0 @@ -/* 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 . - */ - -#include QMK_KEYBOARD_H -#include "keychron_common.h" - -enum layers { - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN, -}; - -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_iso_83( - KC_ESC, KC_BRID, KC_BRIU, KC_MCTRL, KC_LNPAD, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_DEL, KC_MUTE, - KC_GRV, 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_PGUP, - 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_PGDN, - 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_NUHS, KC_ENT, KC_HOME, - KC_LSFT, KC_NUBS, 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_LCTL, KC_LOPTN, KC_LCMMD, KC_SPC, KC_RCMMD,MO(MAC_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - - [MAC_FN] = LAYOUT_iso_83( - _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, RGB_TOG, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, KC_END, - _______, _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - - [WIN_BASE] = LAYOUT_iso_83( - KC_ESC, 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_DEL, KC_MUTE, - KC_GRV, 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_PGUP, - 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_PGDN, - 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_NUHS, KC_ENT, KC_HOME, - KC_LSFT, KC_NUBS, 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_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(WIN_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - - [WIN_FN] = LAYOUT_iso_83( - _______, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, RGB_TOG, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, KC_END, - _______, _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______) -}; - -// clang-format on -#if defined(ENCODER_MAP_ENABLE) -const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][2] = { - [MAC_BASE] = {ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [MAC_FN] = {ENCODER_CCW_CW(RGB_VAD, RGB_VAI)}, - [WIN_BASE] = {ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [WIN_FN] = {ENCODER_CCW_CW(RGB_VAD, RGB_VAI)}, -}; -#endif // ENCODER_MAP_ENABLE - -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - if (!process_record_keychron_common(keycode, record)) { - return false; - } - return true; -} diff --git a/keyboards/keychron/q1_max/iso_encoder/keymaps/via/keymap.c b/keyboards/keychron/q1_max/iso_encoder/keymaps/via/keymap.c deleted file mode 100644 index d39e904932..0000000000 --- a/keyboards/keychron/q1_max/iso_encoder/keymaps/via/keymap.c +++ /dev/null @@ -1,77 +0,0 @@ -/* 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 . - */ - -#include QMK_KEYBOARD_H -#include "keychron_common.h" - -enum layers { - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN, -}; - -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_iso_83( - KC_ESC, KC_BRID, KC_BRIU, KC_MCTRL, KC_LNPAD, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_DEL, KC_MUTE, - KC_GRV, 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_PGUP, - 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_PGDN, - 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_NUHS, KC_ENT, KC_HOME, - KC_LSFT, KC_NUBS, 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_LCTL, KC_LOPTN, KC_LCMMD, KC_SPC, KC_RCMMD,MO(MAC_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - - [MAC_FN] = LAYOUT_iso_83( - _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, RGB_TOG, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, KC_END, - _______, _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - - [WIN_BASE] = LAYOUT_iso_83( - KC_ESC, 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_DEL, KC_MUTE, - KC_GRV, 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_PGUP, - 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_PGDN, - 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_NUHS, KC_ENT, KC_HOME, - KC_LSFT, KC_NUBS, 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_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(WIN_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - - [WIN_FN] = LAYOUT_iso_83( - _______, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, RGB_TOG, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, KC_END, - _______, _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______) -}; - -// clang-format on -#if defined(ENCODER_MAP_ENABLE) -const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][2] = { - [MAC_BASE] = {ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [MAC_FN] = {ENCODER_CCW_CW(RGB_VAD, RGB_VAI)}, - [WIN_BASE] = {ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [WIN_FN] = {ENCODER_CCW_CW(RGB_VAD, RGB_VAI)}, -}; -#endif // ENCODER_MAP_ENABLE - -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - if (!process_record_keychron_common(keycode, record)) { - return false; - } - return true; -} diff --git a/keyboards/keychron/q1_max/iso_encoder/keymaps/via/rules.mk b/keyboards/keychron/q1_max/iso_encoder/keymaps/via/rules.mk deleted file mode 100644 index 1e5b99807c..0000000000 --- a/keyboards/keychron/q1_max/iso_encoder/keymaps/via/rules.mk +++ /dev/null @@ -1 +0,0 @@ -VIA_ENABLE = yes diff --git a/keyboards/keychron/q1_max/iso_encoder/rules.mk b/keyboards/keychron/q1_max/iso_encoder/rules.mk deleted file mode 100644 index 7ff128fa69..0000000000 --- a/keyboards/keychron/q1_max/iso_encoder/rules.mk +++ /dev/null @@ -1 +0,0 @@ -# This file intentionally left blank \ No newline at end of file diff --git a/keyboards/keychron/q1_max/jis_encoder/config.h b/keyboards/keychron/q1_max/jis_encoder/config.h deleted file mode 100644 index 4e7980850d..0000000000 --- a/keyboards/keychron/q1_max/jis_encoder/config.h +++ /dev/null @@ -1,55 +0,0 @@ -/* 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 . - */ - -#pragma once - -#ifdef RGB_MATRIX_ENABLE -/* RGB Matrix driver configuration */ -# define DRIVER_COUNT 2 -# define RGB_MATRIX_LED_COUNT 85 - -# define SPI_SCK_PIN A5 -# define SPI_MISO_PIN A6 -# define SPI_MOSI_PIN A7 - -# define DRIVER_CS_PINS \ - { B8, B9 } -# define SNLED23751_SPI_DIVISOR 16 -# define SPI_DRIVER SPID1 - -/* Scan phase of led driver set as MSKPHASE_9CHANNEL(defined as 0x03 in snled27351.h) */ -# define PHASE_CHANNEL MSKPHASE_9CHANNEL -/* Set LED driver current */ -# define SNLED27351_CURRENT_TUNE \ - { 0x2C, 0x2C, 0x2C, 0x2C, 0x2C, 0x2C, 0x2C, 0x2C, 0x2C, 0x2C, 0x2C, 0x2C } - -/* Set to infinit, which is use in USB mode by default */ -# define RGB_MATRIX_TIMEOUT RGB_MATRIX_TIMEOUT_INFINITE - -/* Allow shutdown of led driver to save power */ -# define RGB_MATRIX_DRIVER_SHUTDOWN_ENABLE -/* Turn off backlight on low brightness to save power */ -# define RGB_MATRIX_BRIGHTNESS_TURN_OFF_VAL 32 - -/* Caps lock indicating led */ -# define CAPS_LOCK_INDEX 44 -# define LOW_BAT_IND_INDEX \ - { 77 } - -# define RGB_MATRIX_KEYPRESSES -# define RGB_MATRIX_FRAMEBUFFER_EFFECTS - -#endif diff --git a/keyboards/keychron/q1_max/jis_encoder/info.json b/keyboards/keychron/q1_max/jis_encoder/info.json deleted file mode 100644 index 78e9c2d9bc..0000000000 --- a/keyboards/keychron/q1_max/jis_encoder/info.json +++ /dev/null @@ -1,103 +0,0 @@ -{ - "usb": { - "pid": "0x0812", - "device_version": "1.0.0" - }, - "layouts": { - "LAYOUT_jis_86": { - "layout": [ - {"matrix": [0, 0], "x": 0, "y": 0}, - {"matrix": [0, 1], "x": 1.25, "y": 0}, - {"matrix": [0, 2], "x": 2.25, "y": 0}, - {"matrix": [0, 3], "x": 3.25, "y": 0}, - {"matrix": [0, 4], "x": 4.25, "y": 0}, - {"matrix": [0, 5], "x": 5.5, "y": 0}, - {"matrix": [0, 6], "x": 6.5, "y": 0}, - {"matrix": [0, 7], "x": 7.5, "y": 0}, - {"matrix": [0, 8], "x": 8.5, "y": 0}, - {"matrix": [0, 9], "x": 9.75, "y": 0}, - {"matrix": [0, 10], "x": 10.75, "y": 0}, - {"matrix": [0, 11], "x": 11.75, "y": 0}, - {"matrix": [0, 12], "x": 12.75, "y": 0}, - {"matrix": [0, 13], "x": 14, "y": 0}, - {"matrix": [0, 14], "x": 15.25, "y": 0}, - - {"matrix": [1, 0], "x": 0, "y": 1.25}, - {"matrix": [1, 1], "x": 1, "y": 1.25}, - {"matrix": [1, 2], "x": 2, "y": 1.25}, - {"matrix": [1, 3], "x": 3, "y": 1.25}, - {"matrix": [1, 4], "x": 4, "y": 1.25}, - {"matrix": [1, 5], "x": 5, "y": 1.25}, - {"matrix": [1, 6], "x": 6, "y": 1.25}, - {"matrix": [1, 7], "x": 7, "y": 1.25}, - {"matrix": [1, 8], "x": 8, "y": 1.25}, - {"matrix": [1, 9], "x": 9, "y": 1.25}, - {"matrix": [1, 10], "x": 10, "y": 1.25}, - {"matrix": [1, 11], "x": 11, "y": 1.25}, - {"matrix": [1, 12], "x": 12, "y": 1.25}, - {"matrix": [1, 13], "x": 13, "y": 1.25}, - {"matrix": [1, 14], "x": 14, "y": 1.25}, - {"matrix": [3, 14], "x": 15.25, "y": 1.25}, - - {"matrix": [2, 0], "x": 0, "y": 2.25, "w": 1.5}, - {"matrix": [2, 1], "x": 1.5, "y": 2.25}, - {"matrix": [2, 2], "x": 2.5, "y": 2.25}, - {"matrix": [2, 3], "x": 3.5, "y": 2.25}, - {"matrix": [2, 4], "x": 4.5, "y": 2.25}, - {"matrix": [2, 5], "x": 5.5, "y": 2.25}, - {"matrix": [2, 6], "x": 6.5, "y": 2.25}, - {"matrix": [2, 7], "x": 7.5, "y": 2.25}, - {"matrix": [2, 8], "x": 8.5, "y": 2.25}, - {"matrix": [2, 9], "x": 9.5, "y": 2.25}, - {"matrix": [2, 10], "x": 10.5, "y": 2.25}, - {"matrix": [2, 11], "x": 11.5, "y": 2.25}, - {"matrix": [2, 12], "x": 12.5, "y": 2.25}, - {"matrix": [2, 14], "x": 15.25, "y": 2.25}, - - {"matrix": [3, 0], "x": 0, "y": 3.25, "w": 1.75}, - {"matrix": [3, 1], "x": 1.75, "y": 3.25}, - {"matrix": [3, 2], "x": 2.75, "y": 3.25}, - {"matrix": [3, 3], "x": 3.75, "y": 3.25}, - {"matrix": [3, 4], "x": 4.75, "y": 3.25}, - {"matrix": [3, 5], "x": 5.75, "y": 3.25}, - {"matrix": [3, 6], "x": 6.75, "y": 3.25}, - {"matrix": [3, 7], "x": 7.75, "y": 3.25}, - {"matrix": [3, 8], "x": 8.75, "y": 3.25}, - {"matrix": [3, 9], "x": 9.75, "y": 3.25}, - {"matrix": [3, 10], "x": 10.75, "y": 3.25}, - {"matrix": [3, 11], "x": 11.75, "y": 3.25}, - {"matrix": [3, 12], "x": 12.75, "y": 3.25}, - {"matrix": [2, 13], "x": 13.25, "y": 2.75, "w": 1.25, "h": 2}, - {"matrix": [3, 13], "x": 15.25, "y": 3.25}, - - {"matrix": [4, 0], "x": 0, "y": 4.25, "w": 2.25}, - {"matrix": [4, 2], "x": 2.25, "y": 4.25}, - {"matrix": [4, 3], "x": 3.25, "y": 4.25}, - {"matrix": [4, 4], "x": 4.25, "y": 4.25}, - {"matrix": [4, 5], "x": 5.25, "y": 4.25}, - {"matrix": [4, 6], "x": 6.25, "y": 4.25}, - {"matrix": [4, 7], "x": 7.25, "y": 4.25}, - {"matrix": [4, 8], "x": 8.25, "y": 4.25}, - {"matrix": [4, 9], "x": 9.25, "y": 4.25}, - {"matrix": [4, 10], "x": 10.25, "y": 4.25}, - {"matrix": [4, 11], "x": 11.25, "y": 4.25}, - {"matrix": [4, 12], "x": 12.25, "y": 4.25}, - {"matrix": [4, 13], "x": 13.25, "y": 4.25}, - {"matrix": [4, 14], "x": 14.25, "y": 4.25}, - - {"matrix": [5, 0], "x": 0, "y": 5.25, "w": 1.25}, - {"matrix": [5, 1], "x": 1.25, "y": 5.25}, - {"matrix": [5, 2], "x": 2.25, "y": 5.25, "w": 1.25}, - {"matrix": [5, 3], "x": 3.5, "y": 5.25}, - {"matrix": [5, 6], "x": 4.5, "y": 5.25, "w": 4.5}, - {"matrix": [5, 8], "x": 9, "y": 5.25, "w": 1.25}, - {"matrix": [5, 9], "x": 10.25, "y": 5.25}, - {"matrix": [5, 10], "x": 11.25, "y": 5.25}, - {"matrix": [5, 11], "x": 12.25, "y": 5.25}, - {"matrix": [5, 12], "x": 13.25, "y": 5.25}, - {"matrix": [5, 13], "x": 14.25, "y": 5.25}, - {"matrix": [5, 14], "x": 15.25, "y": 5.25} - ] - } - } -} diff --git a/keyboards/keychron/q1_max/jis_encoder/jis_encoder.c b/keyboards/keychron/q1_max/jis_encoder/jis_encoder.c deleted file mode 100644 index 37f9a3487c..0000000000 --- a/keyboards/keychron/q1_max/jis_encoder/jis_encoder.c +++ /dev/null @@ -1,152 +0,0 @@ -/* 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/>. - */ - -#include "quantum.h" - -// clang-format off - -#ifdef RGB_MATRIX_ENABLE -const snled27351_led_t g_snled27351_leds[RGB_MATRIX_LED_COUNT] = { -/* Refer to SNLED27351 manual for these locations - * driver - * | R location - * | | G location - * | | | B location - * | | | | */ - {0, G_15, I_15, H_15}, - {0, G_14, I_14, H_14}, - {0, G_13, I_13, H_13}, - {0, G_12, I_12, H_12}, - {0, G_11, I_11, H_11}, - {0, G_10, I_10, H_10}, - {0, G_9, I_9, H_9}, - {0, G_8, I_8, H_8}, - {0, G_7, I_7, H_7}, - {0, G_6, I_6, H_6}, - {0, G_5, I_5, H_5}, - {0, G_4, I_4, H_4}, - {0, G_3, I_3, H_3}, - {0, G_2, I_2, H_2}, - - {0, A_15, C_15, B_15}, - {0, A_14, C_14, B_14}, - {0, A_13, C_13, B_13}, - {0, A_12, C_12, B_12}, - {0, A_11, C_11, B_11}, - {0, A_10, C_10, B_10}, - {0, A_9, C_9, B_9}, - {0, A_8, C_8, B_8}, - {0, A_7, C_7, B_7}, - {0, A_6, C_6, B_6}, - {0, A_5, C_5, B_5}, - {0, A_4, C_4, B_4}, - {0, A_3, C_3, B_3}, - {0, A_2, C_2, B_2}, - {0, A_1, C_1, B_1}, - - {0, D_15, F_15, E_15}, - {0, D_14, F_14, E_14}, - {0, D_13, F_13, E_13}, - {0, D_12, F_12, E_12}, - {0, D_11, F_11, E_11}, - {0, D_10, F_10, E_10}, - {0, D_9, F_9, E_9}, - {0, D_8, F_8, E_8}, - {0, D_7, F_7, E_7}, - {0, D_6, F_6, E_6}, - {0, D_5, F_5, E_5}, - {0, D_4, F_4, E_4}, - {0, D_3, F_3, E_3}, - {0, D_2, F_2, E_2}, - {0, D_1, F_1, E_1}, - - {1, A_15, C_15, B_15}, - {1, A_14, C_14, B_14}, - {1, A_13, C_13, B_13}, - {1, A_12, C_12, B_12}, - {1, A_11, C_11, B_11}, - {1, A_10, C_10, B_10}, - {1, A_9, C_9, B_9}, - {1, A_8, C_8, B_8}, - {1, A_7, C_7, B_7}, - {1, A_6, C_6, B_6}, - {1, A_5, C_5, B_5}, - {1, A_4, C_4, B_4}, - {1, A_3, C_3, B_3}, - {1, A_2, C_2, B_2}, - {1, A_1, C_1, B_1}, - - {1, G_15, I_15, H_15}, - {1, G_13, I_13, H_13}, - {1, G_12, I_12, H_12}, - {1, G_11, I_11, H_11}, - {1, G_10, I_10, H_10}, - {1, G_9, I_9, H_9}, - {1, G_8, I_8, H_8}, - {1, G_7, I_7, H_7}, - {1, G_6, I_6, H_6}, - {1, G_5, I_5, H_5}, - {1, G_4, I_4, H_4}, - {1, G_3, I_3, H_3}, - {1, G_2, I_2, H_2}, - {1, G_1, I_1, H_1}, - - {1, D_15, F_15, E_15}, - {1, D_14, F_14, E_14}, - {1, D_13, F_13, E_13}, - {1, D_12, F_12, E_12}, - {1, D_9, F_9, E_9}, - {1, D_7, F_7, E_7}, - {1, D_6, F_6, E_6}, - {1, D_5, F_5, E_5}, - {1, D_4, F_4, E_4}, - {1, D_3, F_3, E_3}, - {1, D_2, F_2, E_2}, - {1, D_1, F_1, E_1}, -}; - -#define __ NO_LED - -led_config_t g_led_config = { - { - // Key Matrix to LED Index - { 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, 40, 41, 42, 43 }, - { 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58 }, - { 59, __, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72 }, - { 73, 74, 75, 76, __, __, 77, __, 78, 79, 80, 81, 82, 83, 84 }, - }, - { - // LED Index to Physical Position - {0, 0}, {18, 0}, {33, 0}, {48, 0}, {62, 0}, {81, 0}, {95, 0}, {110, 0}, {125, 0}, {143, 0}, {158, 0}, {172, 0}, {187, 0}, {205, 0}, - {0,15}, {15,15}, {29,15}, {44,15}, {59,15}, {73,15}, {88,15}, {103,15}, {117,15}, {132,15}, {146,15}, {161,15}, {176,15}, {190,15}, {205,15}, - {4,28}, {22,28}, {37,28}, {51,28}, {66,28}, {81,28}, {95,28}, {110,28}, {125,28}, {139,28}, {154,28}, {168,28}, {183,28}, {203,34}, {224,28}, - {6,40}, {26,40}, {40,40}, {55,40}, {70,40}, {84,40}, {99,40}, {114,40}, {128,40}, {143,40}, {158,40}, {172,40}, {187,40}, {224,40}, {224,15}, - {9,52}, {33,52}, {48,52}, {62,52}, {77,52}, {92,52}, {106,52}, {121,52}, {136,52}, {150,52}, {165,52}, {179,52}, {194,52}, {209,52}, - {2,64}, {18,64}, {35,64}, {51,64}, {92,64}, {134,64}, {150,64}, {165,64}, {179,64}, {194,64}, {209,64}, {223,64}, - }, - { - // RGB LED Index to Flag - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - } -}; -#endif diff --git a/keyboards/keychron/q1_max/jis_encoder/keymaps/default/keymap.c b/keyboards/keychron/q1_max/jis_encoder/keymaps/default/keymap.c deleted file mode 100644 index 2cb9887f5c..0000000000 --- a/keyboards/keychron/q1_max/jis_encoder/keymaps/default/keymap.c +++ /dev/null @@ -1,76 +0,0 @@ -/* 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 . - */ - -#include QMK_KEYBOARD_H -#include "keychron_common.h" - -enum layers { - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN, -}; -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_jis_86( - KC_ESC, KC_BRID, KC_BRIU, KC_MCTRL, KC_LNPAD, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_DEL, KC_MUTE, - KC_GRV, 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_INT3, KC_BSPC, KC_PGUP, - 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_PGDN, - 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_BSLS, KC_ENT, KC_HOME, - KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_INT1, KC_RSFT, KC_UP, - KC_LCTL, KC_LOPTN, KC_LCMMD, KC_LNG2, KC_SPC, KC_LNG1, KC_RCMMD, MO(MAC_FN), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - - [MAC_FN] = LAYOUT_jis_86( - _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, RGB_TOG, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, KC_END, - _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - - [WIN_BASE] = LAYOUT_jis_86( - KC_ESC, 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_DEL, KC_MUTE, - KC_GRV, 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_INT3, KC_BSPC, KC_PGUP, - 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_PGDN, - 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_BSLS, KC_ENT, KC_HOME, - KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_INT1, KC_RSFT, KC_UP, - KC_LCTL, KC_LWIN, KC_LALT, KC_INT5, KC_SPC, KC_INT4, KC_RALT, MO(WIN_FN), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - - [WIN_FN] = LAYOUT_jis_86( - _______, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, RGB_TOG, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, KC_END, - _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), -}; - -// clang-format on -#if defined(ENCODER_MAP_ENABLE) -const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][2] = { - [MAC_BASE] = {ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [MAC_FN] = {ENCODER_CCW_CW(RGB_VAD, RGB_VAI)}, - [WIN_BASE] = {ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [WIN_FN] = {ENCODER_CCW_CW(RGB_VAD, RGB_VAI)}, -}; -#endif // ENCODER_MAP_ENABLE - -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - if (!process_record_keychron_common(keycode, record)) { - return false; - } - return true; -} diff --git a/keyboards/keychron/q1_max/jis_encoder/keymaps/via/keymap.c b/keyboards/keychron/q1_max/jis_encoder/keymaps/via/keymap.c deleted file mode 100644 index 2cb9887f5c..0000000000 --- a/keyboards/keychron/q1_max/jis_encoder/keymaps/via/keymap.c +++ /dev/null @@ -1,76 +0,0 @@ -/* 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 . - */ - -#include QMK_KEYBOARD_H -#include "keychron_common.h" - -enum layers { - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN, -}; -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_jis_86( - KC_ESC, KC_BRID, KC_BRIU, KC_MCTRL, KC_LNPAD, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_DEL, KC_MUTE, - KC_GRV, 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_INT3, KC_BSPC, KC_PGUP, - 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_PGDN, - 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_BSLS, KC_ENT, KC_HOME, - KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_INT1, KC_RSFT, KC_UP, - KC_LCTL, KC_LOPTN, KC_LCMMD, KC_LNG2, KC_SPC, KC_LNG1, KC_RCMMD, MO(MAC_FN), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - - [MAC_FN] = LAYOUT_jis_86( - _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, RGB_TOG, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, KC_END, - _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - - [WIN_BASE] = LAYOUT_jis_86( - KC_ESC, 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_DEL, KC_MUTE, - KC_GRV, 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_INT3, KC_BSPC, KC_PGUP, - 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_PGDN, - 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_BSLS, KC_ENT, KC_HOME, - KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_INT1, KC_RSFT, KC_UP, - KC_LCTL, KC_LWIN, KC_LALT, KC_INT5, KC_SPC, KC_INT4, KC_RALT, MO(WIN_FN), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - - [WIN_FN] = LAYOUT_jis_86( - _______, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, RGB_TOG, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, KC_END, - _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), -}; - -// clang-format on -#if defined(ENCODER_MAP_ENABLE) -const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][2] = { - [MAC_BASE] = {ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [MAC_FN] = {ENCODER_CCW_CW(RGB_VAD, RGB_VAI)}, - [WIN_BASE] = {ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [WIN_FN] = {ENCODER_CCW_CW(RGB_VAD, RGB_VAI)}, -}; -#endif // ENCODER_MAP_ENABLE - -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - if (!process_record_keychron_common(keycode, record)) { - return false; - } - return true; -} diff --git a/keyboards/keychron/q1_max/jis_encoder/keymaps/via/rules.mk b/keyboards/keychron/q1_max/jis_encoder/keymaps/via/rules.mk deleted file mode 100644 index 1e5b99807c..0000000000 --- a/keyboards/keychron/q1_max/jis_encoder/keymaps/via/rules.mk +++ /dev/null @@ -1 +0,0 @@ -VIA_ENABLE = yes diff --git a/keyboards/keychron/q1_max/jis_encoder/rules.mk b/keyboards/keychron/q1_max/jis_encoder/rules.mk deleted file mode 100644 index 7ff128fa69..0000000000 --- a/keyboards/keychron/q1_max/jis_encoder/rules.mk +++ /dev/null @@ -1 +0,0 @@ -# This file intentionally left blank \ No newline at end of file diff --git a/keyboards/keychron/q1_max/mcuconf.h b/keyboards/keychron/q1_max/mcuconf.h deleted file mode 100644 index 9cbef71ca6..0000000000 --- a/keyboards/keychron/q1_max/mcuconf.h +++ /dev/null @@ -1,37 +0,0 @@ -/* 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 - -#include_next - -#undef STM32_HSECLK -#define STM32_HSECLK 16000000 - -#undef STM32_PLLM_VALUE -#define STM32_PLLM_VALUE 8 - -#undef STM32_PLLN_VALUE -#define STM32_PLLN_VALUE 96 - -#undef STM32_PLLP_VALUE -#define STM32_PLLP_VALUE 4 - -#undef STM32_PLLQ_VALUE -#define STM32_PLLQ_VALUE 4 - -#undef STM32_SPI_USE_SPI1 -#define STM32_SPI_USE_SPI1 TRUE diff --git a/keyboards/keychron/q1_max/q1_max.c b/keyboards/keychron/q1_max/q1_max.c deleted file mode 100644 index bf1c53e15a..0000000000 --- a/keyboards/keychron/q1_max/q1_max.c +++ /dev/null @@ -1,61 +0,0 @@ -/* 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/>. - */ - -#include "quantum.h" -#include "keychron_task.h" -#ifdef FACTORY_TEST_ENABLE -# include "factory_test.h" -# include "keychron_common.h" -#endif -#ifdef LK_WIRELESS_ENABLE -# include "lkbt51.h" -# include "wireless.h" -# include "keychron_wireless_common.h" -# include "battery.h" -#endif - -#ifdef DIP_SWITCH_ENABLE -bool dip_switch_update_kb(uint8_t index, bool active) { - if (index == 0) { - default_layer_set(1UL << (active ? 2 : 0)); - } - dip_switch_update_user(index, active); - - return true; -} -#endif - -void keyboard_post_init_kb(void) { -#ifdef LK_WIRELESS_ENABLE - palSetLineMode(P2P4_MODE_SELECT_PIN, PAL_MODE_INPUT); - palSetLineMode(BT_MODE_SELECT_PIN, PAL_MODE_INPUT); - - lkbt51_init(false); - wireless_init(); -#endif - -#ifdef ENCODER_ENABLE - encoder_cb_init(); -#endif - - keyboard_post_init_user(); -} - -#ifdef LK_WIRELESS_ENABLE -bool lpm_is_kb_idle(void) { - return !factory_reset_indicating(); -} -#endif diff --git a/keyboards/keychron/q1_max/readme.md b/keyboards/keychron/q1_max/readme.md deleted file mode 100644 index c85989c49d..0000000000 --- a/keyboards/keychron/q1_max/readme.md +++ /dev/null @@ -1,21 +0,0 @@ -# Keychron Q1 Max - -![Keychron Q1 Max](https://cdn.shopify.com/s/files/1/0059/0630/1017/files/Q1-Max-7.jpg?v=1701051646) - -A customizable 75% keyboard. - -* Keyboard Maintainer: [Keychron](https://github.com/keychron) -* Hardware Supported: Keychron Q1 Max -* Hardware Availability: [Keychron Q1 Max QMK/VIA Wireless Custom Mechanical Keyboard](https://www.keychron.com/products/keychron-q1-max-qmk-via-wireless-custom-mechanical-keyboard) - -Make example for this keyboard (after setting up your build environment): - - make keychron/q1_max/ansi_encoder:default - -Flashing example for this keyboard: - - make keychron/q1_max/ansi_encoder:default:flash - -**Reset Key**: Toggle mode switch to "Cable", hold down the *Esc* key or reset button underneath space bar while connecting the USB cable, - -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). diff --git a/keyboards/keychron/q1_max/rules.mk b/keyboards/keychron/q1_max/rules.mk deleted file mode 100644 index 4eaf6820bc..0000000000 --- a/keyboards/keychron/q1_max/rules.mk +++ /dev/null @@ -1,4 +0,0 @@ -include keyboards/keychron/common/wireless/wireless.mk -include keyboards/keychron/common/keychron_common.mk - -VPATH += $(TOP_DIR)/keyboards/keychron diff --git a/keyboards/keychron/q1_max/via_json/q1_max_ansi_encoder.json b/keyboards/keychron/q1_max/via_json/q1_max_ansi_encoder.json deleted file mode 100644 index f5e9f1b754..0000000000 --- a/keyboards/keychron/q1_max/via_json/q1_max_ansi_encoder.json +++ /dev/null @@ -1,285 +0,0 @@ -{ - "name": "Keychron Q1 Max ANSI Knob", - "vendorId": "0x3434", - "productId": "0x0810", - "keycodes": ["qmk_lighting"], - "menus": [ - { - "label": "Lighting", - "content": [ - { - "label": "Backlight", - "content": [ - { - "label": "Brightness", - "type": "range", - "options": [0, 255], - "content": ["id_qmk_rgb_matrix_brightness", 3, 1] - }, - { - "label": "Effect", - "type": "dropdown", - "content": ["id_qmk_rgb_matrix_effect", 3, 2], - "options": [ - ["None", 0], - ["Solid Color", 1], - ["Breathing", 2], - ["Band Spiral Val", 3], - ["Cycle All", 4], - ["Cycle Left Right", 5], - ["Cycle Up Down", 6], - ["Rainbow Moving Chevron", 7], - ["Cycle Out In", 8], - ["Cycle Out In Dual", 9], - ["Cycle Pinwheel", 10], - ["Cycle Spiral", 11], - ["Dual Beacon", 12], - ["Rainbow Beacon", 13], - ["Jellybean Raindrops", 14], - ["Pixel Rain", 15], - ["Typing Heatmap", 16], - ["Digital Rain", 17], - ["Reactive Simple", 18], - ["Reactive Multiwide", 19], - ["Reactive Multinexus", 20], - ["Splash", 21], - ["Solid Splash", 22] - ] - }, - { - "showIf": "{id_qmk_rgb_matrix_effect} > 1", - "label": "Effect Speed", - "type": "range", - "options": [0, 255], - "content": ["id_qmk_rgb_matrix_effect_speed", 3, 3] - }, - { - "showIf": "{id_qmk_rgb_matrix_effect} != 0 && ( {id_qmk_rgb_matrix_effect} < 4 || {id_qmk_rgb_matrix_effect} == 18 || ({id_qmk_rgb_matrix_effect} > 17 && {id_qmk_rgb_matrix_effect} != 21) ) ", - "label": "Color", - "type": "color", - "content": ["id_qmk_rgb_matrix_color", 3, 4] - } - ] - } - ] - } - ], - "customKeycodes": [ - {"name": "Left Option", "title": "Left Option", "shortName": "LOpt"}, - {"name": "Right Option", "title": "Right Option", "shortName": "ROpt"}, - {"name": "Left Cmd", "title": "Left Command", "shortName": "LCmd"}, - {"name": "Right Cmd", "title": "Right Command", "shortName": "RCmd"}, - {"name": "Misson Control", "title": "Misson Control in Mac", "shortName": "MCtl"}, - {"name": "Lanuch Pad", "title": "Lanuch Pad in Windows", "shortName": "LPad"}, - {"name": "Task View", "title": "Task View in Windows", "shortName": "Task"}, - {"name": "File Explorer", "title": "File Explorer in Windows", "shortName": "File"}, - {"name": "Screen shot", "title": "Screenshot in macOS", "shortName": "SShot"}, - {"name": "Cortana", "title": "Cortana in Windows", "shortName": "Cortana"}, - {"name": "Siri", "title": "Siri in macOS", "shortName": "Siri"}, - {"name": "Bluetooth Host 1", "title": "Bluetooth Host 1", "shortName": "BTH1"}, - {"name": "Bluetooth Host 2", "title": "Bluetooth Host 2", "shortName": "BTH2"}, - {"name": "Bluetooth Host 3", "title": "Bluetooth Host 3", "shortName": "BTH3"}, - {"name": "2.4G", "title": "2.4G", "shortName": "2.4G"}, - {"name": "Battery Level", "title": "Show battery level", "shortName": "Batt"} - ], - "matrix": {"rows": 6, "cols" : 15}, - "layouts": { - "keymap": [ - [ - { - "c": "#777777" - }, - "0, 0", - { - "x": 0.25, - "c": "#cccccc" - }, - "0, 1", - "0, 2", - "0, 3", - "0, 4", - { - "x": 0.25, - "c": "#aaaaaa" - }, - "0, 5", - "0, 6", - "0, 7", - "0, 8", - { - "x": 0.25, - "c": "#cccccc" - }, - "0, 9", - "0, 10", - "0, 11", - "0, 12", - { - "x": 0.25, - "c": "#aaaaaa" - }, - "0, 13", - { - "x": 0.25 - }, - "0, 14\n\n\n\n\n\n\n\n\ne0" - ], - [ - { - "y": 0.25, - "c": "#aaaaaa" - }, - "1, 0", - { - "c": "#cccccc" - }, - "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": 2, - "c": "#aaaaaa" - }, - "1, 13", - { - "x": 0.25 - }, - "1, 14" - ], - [ - { - "w": 1.5, - "c": "#aaaaaa" - }, - "2, 0", - { - "c": "#cccccc" - }, - "2, 1", - "2, 2", - "2, 3", - "2, 4", - "2, 5", - "2, 6", - "2, 7", - "2, 8", - "2, 9", - "2, 10", - "2, 11", - "2, 12", - { - "w": 1.5, - "c": "#aaaaaa" - }, - "2, 13", - { - "x": 0.25 - }, - "2, 14" - ], - [ - { - "w": 1.75, - "c": "#aaaaaa" - }, - "3, 0", - { - "c": "#cccccc" - }, - "3, 1", - "3, 2", - "3, 3", - "3, 4", - "3, 5", - "3, 6", - "3, 7", - "3, 8", - "3, 9", - "3, 10", - "3, 11", - { - "w": 2.25, - "c": "#aaaaaa" - }, - "3, 12", - { - "x": 0.25 - }, - "3, 13" - ], - [ - { - "w": 2.25, - "c": "#aaaaaa" - }, - "4, 0", - { - "c": "#cccccc" - }, - "4, 2", - "4, 3", - "4, 4", - "4, 5", - "4, 6", - "4, 7", - "4, 8", - "4, 9", - "4, 10", - "4, 11", - { - "w": 1.75, - "c": "#aaaaaa" - }, - "4, 13", - { - "x": 0.25, - "y": 0.25 - }, - "4, 14" - ], - [ - { - "y": -0.25, - "w": 1.25, - "c": "#aaaaaa" - }, - "5, 0", - { - "w": 1.25 - }, - "5, 1", - { - "w": 1.25 - }, - "5, 2", - { - "w": 6.25, - "c": "#cccccc" - }, - "5, 6", - { - "c": "#aaaaaa" - }, - "5, 9", - "5, 10", - "5, 11", - { - "x": 0.25, - "y": 0.25 - }, - "5, 12", - "5, 13", - "5, 14" - ] - ] - } -} diff --git a/keyboards/keychron/q1_max/via_json/q1_max_iso_encoder.json b/keyboards/keychron/q1_max/via_json/q1_max_iso_encoder.json deleted file mode 100644 index eb23ee3449..0000000000 --- a/keyboards/keychron/q1_max/via_json/q1_max_iso_encoder.json +++ /dev/null @@ -1,287 +0,0 @@ -{ - "name": "Keychron Q1 Max ISO Knob", - "vendorId": "0x3434", - "productId": "0x0811", - "keycodes": ["qmk_lighting"], - "menus": [ - { - "label": "Lighting", - "content": [ - { - "label": "Backlight", - "content": [ - { - "label": "Brightness", - "type": "range", - "options": [0, 255], - "content": ["id_qmk_rgb_matrix_brightness", 3, 1] - }, - { - "label": "Effect", - "type": "dropdown", - "content": ["id_qmk_rgb_matrix_effect", 3, 2], - "options": [ - ["None", 0], - ["Solid Color", 1], - ["Breathing", 2], - ["Band Spiral Val", 3], - ["Cycle All", 4], - ["Cycle Left Right", 5], - ["Cycle Up Down", 6], - ["Rainbow Moving Chevron", 7], - ["Cycle Out In", 8], - ["Cycle Out In Dual", 9], - ["Cycle Pinwheel", 10], - ["Cycle Spiral", 11], - ["Dual Beacon", 12], - ["Rainbow Beacon", 13], - ["Jellybean Raindrops", 14], - ["Pixel Rain", 15], - ["Typing Heatmap", 16], - ["Digital Rain", 17], - ["Reactive Simple", 18], - ["Reactive Multiwide", 19], - ["Reactive Multinexus", 20], - ["Splash", 21], - ["Solid Splash", 22] - ] - }, - { - "showIf": "{id_qmk_rgb_matrix_effect} > 1", - "label": "Effect Speed", - "type": "range", - "options": [0, 255], - "content": ["id_qmk_rgb_matrix_effect_speed", 3, 3] - }, - { - "showIf": "{id_qmk_rgb_matrix_effect} != 0 && ( {id_qmk_rgb_matrix_effect} < 4 || {id_qmk_rgb_matrix_effect} == 18 || ({id_qmk_rgb_matrix_effect} > 17 && {id_qmk_rgb_matrix_effect} != 21) ) ", - "label": "Color", - "type": "color", - "content": ["id_qmk_rgb_matrix_color", 3, 4] - } - ] - } - ] - } - ], - "customKeycodes": [ - {"name": "Left Option", "title": "Left Option", "shortName": "LOpt"}, - {"name": "Right Option", "title": "Right Option", "shortName": "ROpt"}, - {"name": "Left Cmd", "title": "Left Command", "shortName": "LCmd"}, - {"name": "Right Cmd", "title": "Right Command", "shortName": "RCmd"}, - {"name": "Misson Control", "title": "Misson Control in Mac", "shortName": "MCtl"}, - {"name": "Lanuch Pad", "title": "Lanuch Pad in Windows", "shortName": "LPad"}, - {"name": "Task View", "title": "Task View in Windows", "shortName": "Task"}, - {"name": "File Explorer", "title": "File Explorer in Windows", "shortName": "File"}, - {"name": "Screen shot", "title": "Screenshot in macOS", "shortName": "SShot"}, - {"name": "Cortana", "title": "Cortana in Windows", "shortName": "Cortana"}, - {"name": "Siri", "title": "Siri in macOS", "shortName": "Siri"}, - {"name": "Bluetooth Host 1", "title": "Bluetooth Host 1", "shortName": "BTH1"}, - {"name": "Bluetooth Host 2", "title": "Bluetooth Host 2", "shortName": "BTH2"}, - {"name": "Bluetooth Host 3", "title": "Bluetooth Host 3", "shortName": "BTH3"}, - {"name": "2.4G", "title": "2.4G", "shortName": "2.4G"}, - {"name": "Battery Level", "title": "Show battery level", "shortName": "Batt"} - ], - "matrix": {"rows": 6, "cols" : 15}, - "layouts": { - "keymap": [ - [ - { - "c": "#777777" - }, - "0, 0", - { - "x": 0.25, - "c": "#cccccc" - }, - "0, 1", - "0, 2", - "0, 3", - "0, 4", - { - "x": 0.25, - "c": "#aaaaaa" - }, - "0, 5", - "0, 6", - "0, 7", - "0, 8", - { - "x": 0.25, - "c": "#cccccc" - }, - "0, 9", - "0, 10", - "0, 11", - "0, 12", - { - "x": 0.25, - "c": "#aaaaaa" - }, - "0, 13", - { - "x": 0.25 - }, - "0, 14\n\n\n\n\n\n\n\n\ne0" - ], - [ - { - "y": 0.25, - "c": "#aaaaaa" - }, - "1, 0", - { - "c": "#cccccc" - }, - "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": 2, - "c": "#aaaaaa" - }, - "1, 13", - { - "x": 0.25 - }, - "1, 14" - ], - [ - { - "w": 1.5, - "c": "#aaaaaa" - }, - "2, 0", - { - "c": "#cccccc" - }, - "2, 1", - "2, 2", - "2, 3", - "2, 4", - "2, 5", - "2, 6", - "2, 7", - "2, 8", - "2, 9", - "2, 10", - "2, 11", - "2, 12", - { - "x": 0.25, - "w": 1.25, - "h": 2, - "x2": -0.25, - "w2": 1.5, - "h2": 1, - "c": "#aaaaaa" - }, - "2, 13", - { - "x": 0.25 - }, - "2, 14" - ], - [ - { - "w": 1.75, - "c": "#aaaaaa" - }, - "3, 0", - { - "c": "#cccccc" - }, - "3, 1", - "3, 2", - "3, 3", - "3, 4", - "3, 5", - "3, 6", - "3, 7", - "3, 8", - "3, 9", - "3, 10", - "3, 11", - "3, 12", - { - "x": 1.5 - }, - "3, 13" - ], - [ - { - "w": 1.25, - "c": "#aaaaaa" - }, - "4, 0", - { - "c": "#cccccc" - }, - "4, 1", - "4, 2", - "4, 3", - "4, 4", - "4, 5", - "4, 6", - "4, 7", - "4, 8", - "4, 9", - "4, 10", - "4, 11", - { - "w": 1.75, - "c": "#aaaaaa" - }, - "4, 13", - { - "x": 0.25, - "y": 0.25 - }, - "4, 14" - ], - [ - { - "y": -0.25, - "w": 1.25, - "c": "#aaaaaa" - }, - "5, 0", - { - "w": 1.25 - }, - "5, 1", - { - "w": 1.25 - }, - "5, 2", - { - "w": 6.25, - "c": "#cccccc" - }, - "5, 6", - { - "c": "#aaaaaa" - }, - "5, 9", - "5, 10", - "5, 11", - { - "x": 0.25, - "y": 0.25 - }, - "5, 12", - "5, 13", - "5, 14" - ] - ] - } -} diff --git a/keyboards/keychron/q1_max/via_json/q1_max_jis_encoder.json b/keyboards/keychron/q1_max/via_json/q1_max_jis_encoder.json deleted file mode 100644 index bdac3f26dc..0000000000 --- a/keyboards/keychron/q1_max/via_json/q1_max_jis_encoder.json +++ /dev/null @@ -1,285 +0,0 @@ -{ - "name": "Keychron Q1 Max JIS Knob", - "vendorId": "0x3434", - "productId": "0x0812", - "keycodes": ["qmk_lighting"], - "menus": [ - { - "label": "Lighting", - "content": [ - { - "label": "Backlight", - "content": [ - { - "label": "Brightness", - "type": "range", - "options": [0, 255], - "content": ["id_qmk_rgb_matrix_brightness", 3, 1] - }, - { - "label": "Effect", - "type": "dropdown", - "content": ["id_qmk_rgb_matrix_effect", 3, 2], - "options": [ - ["None", 0], - ["Solid Color", 1], - ["Breathing", 2], - ["Band Spiral Val", 3], - ["Cycle All", 4], - ["Cycle Left Right", 5], - ["Cycle Up Down", 6], - ["Rainbow Moving Chevron", 7], - ["Cycle Out In", 8], - ["Cycle Out In Dual", 9], - ["Cycle Pinwheel", 10], - ["Cycle Spiral", 11], - ["Dual Beacon", 12], - ["Rainbow Beacon", 13], - ["Jellybean Raindrops", 14], - ["Pixel Rain", 15], - ["Typing Heatmap", 16], - ["Digital Rain", 17], - ["Reactive Simple", 18], - ["Reactive Multiwide", 19], - ["Reactive Multinexus", 20], - ["Splash", 21], - ["Solid Splash", 22] - ] - }, - { - "showIf": "{id_qmk_rgb_matrix_effect} > 1", - "label": "Effect Speed", - "type": "range", - "options": [0, 255], - "content": ["id_qmk_rgb_matrix_effect_speed", 3, 3] - }, - { - "showIf": "{id_qmk_rgb_matrix_effect} != 0 && ( {id_qmk_rgb_matrix_effect} < 4 || {id_qmk_rgb_matrix_effect} == 18 || ({id_qmk_rgb_matrix_effect} > 17 && {id_qmk_rgb_matrix_effect} != 21) ) ", - "label": "Color", - "type": "color", - "content": ["id_qmk_rgb_matrix_color", 3, 4] - } - ] - } - ] - } - ], - "customKeycodes": [ - {"name": "Left Option", "title": "Left Option", "shortName": "LOpt"}, - {"name": "Right Option", "title": "Right Option", "shortName": "ROpt"}, - {"name": "Left Cmd", "title": "Left Command", "shortName": "LCmd"}, - {"name": "Right Cmd", "title": "Right Command", "shortName": "RCmd"}, - {"name": "Misson Control", "title": "Misson Control in Mac", "shortName": "MCtl"}, - {"name": "Lanuch Pad", "title": "Lanuch Pad in Windows", "shortName": "LPad"}, - {"name": "Task View", "title": "Task View in Windows", "shortName": "Task"}, - {"name": "File Explorer", "title": "File Explorer in Windows", "shortName": "File"}, - {"name": "Screen shot", "title": "Screenshot in macOS", "shortName": "SShot"}, - {"name": "Cortana", "title": "Cortana in Windows", "shortName": "Cortana"}, - {"name": "Siri", "title": "Siri in macOS", "shortName": "Siri"}, - {"name": "Bluetooth Host 1", "title": "Bluetooth Host 1", "shortName": "BTH1"}, - {"name": "Bluetooth Host 2", "title": "Bluetooth Host 2", "shortName": "BTH2"}, - {"name": "Bluetooth Host 3", "title": "Bluetooth Host 3", "shortName": "BTH3"}, - {"name": "2.4G", "title": "2.4G", "shortName": "2.4G"}, - {"name": "Battery Level", "title": "Show battery level", "shortName": "Batt"} - ], - "matrix": {"rows": 6, "cols" : 15}, - "layouts": { - "keymap": [ - [ - { - "c": "#777777" - }, - "0, 0", - { - "x": 0.25, - "c": "#cccccc" - }, - "0, 1", - "0, 2", - "0, 3", - "0, 4", - { - "x": 0.25, - "c": "#aaaaaa" - }, - "0, 5", - "0, 6", - "0, 7", - "0, 8", - { - "x": 0.25, - "c": "#cccccc" - }, - "0, 9", - "0, 10", - "0, 11", - "0, 12", - { - "x": 0.25, - "c": "#aaaaaa" - }, - "0, 13", - { - "x": 0.25 - }, - "0, 14\n\n\n\n\n\n\n\n\ne0" - ], - [ - { - "y": 0.25, - "c": "#aaaaaa" - }, - "1, 0", - { - "c": "#cccccc" - }, - "1, 1", - "1, 2", - "1, 3", - "1, 4", - "1, 5", - "1, 6", - "1, 7", - "1, 8", - "1, 9", - "1, 10", - "1, 11", - "1, 12", - "1, 13", - { - "c": "#aaaaaa" - }, - "1, 14", - { - "x": 0.25 - }, - "3, 14" - ], - [ - { - "w": 1.5, - "c": "#aaaaaa" - }, - "2, 0", - { - "c": "#cccccc" - }, - "2, 1", - "2, 2", - "2, 3", - "2, 4", - "2, 5", - "2, 6", - "2, 7", - "2, 8", - "2, 9", - "2, 10", - "2, 11", - "2, 12", - { - "x": 0.25, - "w": 1.25, - "h": 2, - "x2": -0.25, - "w2": 1.5, - "h2": 1, - "c": "#777777" - }, - "2, 13", - { - "x": 0.25, - "c": "#aaaaaa" - }, - "2, 14" - ], - [ - { - "w": 1.75, - "c": "#aaaaaa" - }, - "3, 0", - { - "c": "#cccccc" - }, - "3, 1", - "3, 2", - "3, 3", - "3, 4", - "3, 5", - "3, 6", - "3, 7", - "3, 8", - "3, 9", - "3, 10", - "3, 11", - "3, 12", - { - "x": 1.5, - "c": "#aaaaaa" - }, - "3, 13" - ], - [ - { - "w": 2.25, - "c": "#aaaaaa" - }, - "4, 0", - { - "c": "#cccccc" - }, - "4, 2", - "4, 3", - "4, 4", - "4, 5", - "4, 6", - "4, 7", - "4, 8", - "4, 9", - "4, 10", - "4, 11", - "4, 12", - { - "c": "#aaaaaa" - }, - "4, 13", - { - "c": "#cccccc" - }, - "4, 14" - ], - [ - { - "w": 1.25, - "c": "#aaaaaa" - }, - "5, 0", - "5, 1", - { - "w": 1.25 - }, - "5, 2", - "5, 3", - { - "w": 4.5, - "c": "#cccccc" - }, - "5, 6", - { - "w": 1.25, - "c": "#aaaaaa" - }, - "5, 8", - "5, 9", - "5, 10", - "5, 11", - { - "c": "#cccccc" - }, - "5, 12", - "5, 13", - "5, 14" - ] - ] - } -} diff --git a/keyboards/keychron/q1_pro/ansi_knob/ansi_knob.c b/keyboards/keychron/q1_pro/ansi_knob/ansi_knob.c deleted file mode 100644 index 23be9e71db..0000000000 --- a/keyboards/keychron/q1_pro/ansi_knob/ansi_knob.c +++ /dev/null @@ -1,144 +0,0 @@ -/* 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 . - */ - -#include "quantum.h" - -// clang-format off -#ifdef RGB_MATRIX_ENABLE -const snled27351_led_t g_snled27351_leds[RGB_MATRIX_LED_COUNT] = { -/* Refer to CKLED manual for these locations - * driver - * | R location - * | | G location - * | | | B location - * | | | | */ - {0, I_1, G_1, H_1}, - {0, I_2, G_2, H_2}, - {0, I_3, G_3, H_3}, - {0, I_4, G_4, H_4}, - {0, I_5, G_5, H_5}, - {0, I_6, G_6, H_6}, - {0, I_7, G_7, H_7}, - {0, I_8, G_8, H_8}, - {0, I_9, G_9, H_9}, - {0, I_10, G_10, H_10}, - {0, I_11, G_11, H_11}, - {0, I_12, G_12, H_12}, - {0, I_13, G_13, H_13}, - {0, I_14, G_14, H_14}, - {0, I_16, G_16, H_16}, - - {0, C_1, A_1, B_1}, - {0, C_2, A_2, B_2}, - {0, C_3, A_3, B_3}, - {0, C_4, A_4, B_4}, - {0, C_5, A_5, B_5}, - {0, C_6, A_6, B_6}, - {0, C_7, A_7, B_7}, - {0, C_8, A_8, B_8}, - {0, C_9, A_9, B_9}, - {0, C_10, A_10, B_10}, - {0, C_11, A_11, B_11}, - {0, C_12, A_12, B_12}, - {0, C_13, A_13, B_13}, - {0, C_14, A_14, B_14}, - {0, C_16, A_16, B_16}, - - {0, F_1, D_1, E_1}, - {0, F_2, D_2, E_2}, - {0, F_3, D_3, E_3}, - {0, F_4, D_4, E_4}, - {0, F_5, D_5, E_5}, - {0, F_6, D_6, E_6}, - {0, F_7, D_7, E_7}, - {0, F_8, D_8, E_8}, - {0, F_9, D_9, E_9}, - {0, F_10, D_10, E_10}, - {0, F_11, D_11, E_11}, - {0, F_12, D_12, E_12}, - {0, F_13, D_13, E_13}, - {0, F_14, D_14, E_14}, - {0, F_16, D_16, E_16}, - - {1, C_16, A_16, B_16}, - {1, C_15, A_15, B_15}, - {1, C_14, A_14, B_14}, - {1, C_13, A_13, B_13}, - {1, C_12, A_12, B_12}, - {1, C_11, A_11, B_11}, - {1, C_10, A_10, B_10}, - {1, C_9, A_9, B_9}, - {1, C_8, A_8, B_8}, - {1, C_7, A_7, B_7}, - {1, C_6, A_6, B_6}, - {1, C_5, A_5, B_5}, - {1, C_3, A_3, B_3}, - {1, C_1, A_1, B_1}, - - {1, I_16, G_16, H_16}, - {1, I_14, G_14, H_14}, - {1, I_13, G_13, H_13}, - {1, I_12, G_12, H_12}, - {1, I_11, G_11, H_11}, - {1, I_10, G_10, H_10}, - {1, I_9, G_9, H_9}, - {1, I_8, G_8, H_8}, - {1, I_7, G_7, H_7}, - {1, I_6, G_6, H_6}, - {1, I_5, G_5, H_5}, - {1, I_3, G_3, H_3}, - {1, I_2, G_2, H_2}, - - {1, F_16, D_16, E_16}, - {1, F_15, D_15, E_15}, - {1, F_14, D_14, E_14}, - {1, F_10, D_10, E_10}, - {1, F_6, D_6, E_6}, - {1, F_5, D_5, E_5}, - {1, F_4, D_4, E_4}, - {1, F_3, D_3, E_3}, - {1, F_2, D_2, E_2}, - {1, F_1, D_1, E_1} -}; - -led_config_t g_led_config = { - { - { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, NO_LED, 14 }, - { 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, NO_LED, 29 }, - { 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, NO_LED, 44 }, - { 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, NO_LED, 57, NO_LED, 58 }, - { 59, NO_LED, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, NO_LED, 70, 71, NO_LED }, - { 72, 73, 74, NO_LED, NO_LED, NO_LED, 75, NO_LED, NO_LED, NO_LED, 76, 77, 78, 79, 80, 81 } - }, - { - {0, 0}, {18, 0}, {32, 0}, {47, 0}, {62, 0}, {80, 0}, {95, 0}, {109, 0}, {124, 0}, {142, 0}, {157, 0}, {172, 0}, {186, 0}, {205, 0}, {223, 0}, - {0,14}, {14,14}, {29,14}, {43,14}, {58,14}, {73,14}, {87,14}, {102, 14}, {117, 14}, {131, 14}, {146, 14}, {161, 14}, {175, 14}, {197, 14}, {224, 14}, - {3,26}, {21,26}, {36,26}, {51,26}, {65,26}, {80,26}, {95,26}, {109, 26}, {124, 26}, {139, 26}, {153, 26}, {168, 26}, {183, 26}, {201, 26}, {224, 26}, - {5,37}, {25,37}, {40,37}, {54,37}, {69,37}, {84,37}, {98,37}, {113, 37}, {128, 37}, {142, 37}, {157, 37}, {172, 37}, {195, 37}, {224, 37}, - {9,50}, {32,50}, {47,50}, {62,50}, {76,50}, {91,50}, {106, 50}, {120, 50}, {135, 50}, {150, 50}, {164, 50}, {185, 50}, {209, 50}, - {1,62}, {20,62}, {38,62}, {93,62}, {146, 62}, {161, 62}, {176, 62}, {194, 62}, {209, 62}, {224, 62} - - }, - { - 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, - 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, - 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, - 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, - 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, - 4, 4, 4, 4, 4, 4, 4, 4, 4, 4 - } -}; -#endif diff --git a/keyboards/keychron/q1_pro/ansi_knob/config.h b/keyboards/keychron/q1_pro/ansi_knob/config.h deleted file mode 100644 index c80c43ad4c..0000000000 --- a/keyboards/keychron/q1_pro/ansi_knob/config.h +++ /dev/null @@ -1,56 +0,0 @@ -/* 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 . - */ - -#pragma once - -/* Encoder Configuration */ -#ifdef ENCODER_ENABLE -# define ENCODER_DEFAULT_POS 0x3 -#endif - -#ifdef RGB_MATRIX_ENABLE -/* RGB Matrix driver configuration */ -# define DRIVER_COUNT 2 - -# define DRIVER_ADDR_1 0b1110111 -# define DRIVER_ADDR_2 0b1110100 -# define DRIVER_1_LED_COUNT 45 -# define DRIVER_2_LED_COUNT 37 -# define RGB_MATRIX_LED_COUNT (DRIVER_1_LED_COUNT + DRIVER_2_LED_COUNT) - -/* Set to infinit, which is use in USB mode by default */ -# define RGB_MATRIX_TIMEOUT RGB_MATRIX_TIMEOUT_INFINITE - -/* Allow shutdown of led driver to save power */ -# define RGB_MATRIX_DRIVER_SHUTDOWN_ENABLE -/* Turn off backlight on low brightness to save power */ -# define RGB_MATRIX_BRIGHTNESS_TURN_OFF_VAL 32 - -# define CAPS_LOCK_INDEX 45 -# define LOW_BAT_IND_INDEX 75 - -/* RGB Matrix Animation modes. Explicitly enabled - * For full list of effects, see: - * https://docs.qmk.fm/#/feature_rgb_matrix?id=rgb-matrix-effects - */ -# define RGB_MATRIX_KEYPRESSES -# define RGB_MATRIX_FRAMEBUFFER_EFFECTS - -/* Set LED driver current */ -# define SNLED27351_CURRENT_TUNE \ - { 0x38, 0x38, 0x38, 0x38, 0x38, 0x38, 0x38, 0x38, 0x38, 0x38, 0x38, 0x38 } - -#endif \ No newline at end of file diff --git a/keyboards/keychron/q1_pro/ansi_knob/info.json b/keyboards/keychron/q1_pro/ansi_knob/info.json deleted file mode 100644 index 7bfd333649..0000000000 --- a/keyboards/keychron/q1_pro/ansi_knob/info.json +++ /dev/null @@ -1,99 +0,0 @@ -{ - "usb": { - "pid": "0x0610", - "device_version": "1.0.0" - }, - "layouts": { - "LAYOUT_ansi_82": { - "layout": [ - {"matrix":[0, 0], "x":0, "y":0}, - {"matrix":[0, 1], "x":1.25, "y":0}, - {"matrix":[0, 2], "x":2.25, "y":0}, - {"matrix":[0, 3], "x":3.25, "y":0}, - {"matrix":[0, 4], "x":4.25, "y":0}, - {"matrix":[0, 5], "x":5.5, "y":0}, - {"matrix":[0, 6], "x":6.5, "y":0}, - {"matrix":[0, 7], "x":7.5, "y":0}, - {"matrix":[0, 8], "x":8.5, "y":0}, - {"matrix":[0, 9], "x":9.75, "y":0}, - {"matrix":[0,10], "x":10.75, "y":0}, - {"matrix":[0,11], "x":11.75, "y":0}, - {"matrix":[0,12], "x":12.75, "y":0}, - {"matrix":[0,13], "x":14, "y":0}, - {"matrix":[0,15], "x":15.25, "y":0}, - - {"matrix":[1, 0], "x":0, "y":1.25}, - {"matrix":[1, 1], "x":1, "y":1.25}, - {"matrix":[1, 2], "x":2, "y":1.25}, - {"matrix":[1, 3], "x":3, "y":1.25}, - {"matrix":[1, 4], "x":4, "y":1.25}, - {"matrix":[1, 5], "x":5, "y":1.25}, - {"matrix":[1, 6], "x":6, "y":1.25}, - {"matrix":[1, 7], "x":7, "y":1.25}, - {"matrix":[1, 8], "x":8, "y":1.25}, - {"matrix":[1, 9], "x":9, "y":1.25}, - {"matrix":[1,10], "x":10, "y":1.25}, - {"matrix":[1,11], "x":11, "y":1.25}, - {"matrix":[1,12], "x":12, "y":1.25}, - {"matrix":[1,13], "x":13, "y":1.25, "w":2}, - {"matrix":[1,15], "x":15.25, "y":1.25}, - - {"matrix":[2, 0], "x":0, "y":2.25, "w":1.5}, - {"matrix":[2, 1], "x":1.5, "y":2.25}, - {"matrix":[2, 2], "x":2.5, "y":2.25}, - {"matrix":[2, 3], "x":3.5, "y":2.25}, - {"matrix":[2, 4], "x":4.5, "y":2.25}, - {"matrix":[2, 5], "x":5.5, "y":2.25}, - {"matrix":[2, 6], "x":6.5, "y":2.25}, - {"matrix":[2, 7], "x":7.5, "y":2.25}, - {"matrix":[2, 8], "x":8.5, "y":2.25}, - {"matrix":[2, 9], "x":9.5, "y":2.25}, - {"matrix":[2,10], "x":10.5, "y":2.25}, - {"matrix":[2,11], "x":11.5, "y":2.25}, - {"matrix":[2,12], "x":12.5, "y":2.25}, - {"matrix":[2,13], "x":13.5, "y":2.25, "w":1.5}, - {"matrix":[2,15], "x":15.25, "y":2.25}, - - {"matrix":[3, 0], "x":0, "y":3.25, "w":1.75}, - {"matrix":[3, 1], "x":1.75, "y":3.25}, - {"matrix":[3, 2], "x":2.75, "y":3.25}, - {"matrix":[3, 3], "x":3.75, "y":3.25}, - {"matrix":[3, 4], "x":4.75, "y":3.25}, - {"matrix":[3, 5], "x":5.75, "y":3.25}, - {"matrix":[3, 6], "x":6.75, "y":3.25}, - {"matrix":[3, 7], "x":7.75, "y":3.25}, - {"matrix":[3, 8], "x":8.75, "y":3.25}, - {"matrix":[3, 9], "x":9.75, "y":3.25}, - {"matrix":[3,10], "x":10.75, "y":3.25}, - {"matrix":[3,11], "x":11.75, "y":3.25}, - {"matrix":[3,13], "x":12.75, "y":3.25, "w":2.25}, - {"matrix":[3,15], "x":15.25, "y":3.25}, - - {"matrix":[4, 0], "x":0, "y":4.25, "w":2.25}, - {"matrix":[4, 2], "x":2.25, "y":4.25}, - {"matrix":[4, 3], "x":3.25, "y":4.25}, - {"matrix":[4, 4], "x":4.25, "y":4.25}, - {"matrix":[4, 5], "x":5.25, "y":4.25}, - {"matrix":[4, 6], "x":6.25, "y":4.25}, - {"matrix":[4, 7], "x":7.25, "y":4.25}, - {"matrix":[4, 8], "x":8.25, "y":4.25}, - {"matrix":[4, 9], "x":9.25, "y":4.25}, - {"matrix":[4,10], "x":10.25, "y":4.25}, - {"matrix":[4,11], "x":11.25, "y":4.25}, - {"matrix":[4,13], "x":12.25, "y":4.25, "w":1.75}, - {"matrix":[4,14], "x":14.25, "y":4.5}, - - {"matrix":[5, 0], "x":0, "y":5.25, "w":1.25}, - {"matrix":[5, 1], "x":1.25, "y":5.25, "w":1.25}, - {"matrix":[5, 2], "x":2.5, "y":5.25, "w":1.25}, - {"matrix":[5, 6], "x":3.75, "y":5.25, "w":6.25}, - {"matrix":[5,10], "x":10, "y":5.25}, - {"matrix":[5,11], "x":11, "y":5.25}, - {"matrix":[5,12], "x":12, "y":5.25}, - {"matrix":[5,13], "x":13.25, "y":5.5}, - {"matrix":[5,14], "x":14.25, "y":5.5}, - {"matrix":[5,15], "x":15.25, "y":5.5} - ] - } - } -} diff --git a/keyboards/keychron/q1_pro/ansi_knob/keymaps/default/keymap.c b/keyboards/keychron/q1_pro/ansi_knob/keymaps/default/keymap.c deleted file mode 100644 index 0219642690..0000000000 --- a/keyboards/keychron/q1_pro/ansi_knob/keymaps/default/keymap.c +++ /dev/null @@ -1,68 +0,0 @@ -/* 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 . - */ - -#include QMK_KEYBOARD_H - -// clang-format off -enum layers{ - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN -}; - -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_ansi_82( - KC_ESC, KC_BRID, KC_BRIU, KC_MCTL, KC_LPAD, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_DEL, KC_MUTE, - KC_GRV, 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_PGUP, - 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_PGDN, - 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_HOME, - 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_LCTL, KC_LOPTN, KC_LCMMD, KC_SPC, KC_LCMMD,MO(MAC_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - - [MAC_FN] = LAYOUT_ansi_82( - KC_TRNS, 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, RGB_TOG, - KC_TRNS, BT_HST1, BT_HST2, BT_HST3, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_END, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, BAT_LVL, NK_TOGG, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS), - - [WIN_BASE] = LAYOUT_ansi_82( - KC_ESC, 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_DEL, KC_MUTE, - KC_GRV, 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_PGUP, - 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_PGDN, - 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_HOME, - 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_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(WIN_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - - [WIN_FN] = LAYOUT_ansi_82( - KC_TRNS, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_TRNS, RGB_TOG, - KC_TRNS, BT_HST1, BT_HST2, BT_HST3, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_END, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, BAT_LVL, NK_TOGG, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS) -}; - -#if defined(ENCODER_MAP_ENABLE) -const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][2] = { - [MAC_BASE] = {ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [MAC_FN] = {ENCODER_CCW_CW(RGB_VAD, RGB_VAI)}, - [WIN_BASE] = {ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [WIN_FN] = {ENCODER_CCW_CW(RGB_VAD, RGB_VAI)} -}; -#endif // ENCODER_MAP_ENABLE diff --git a/keyboards/keychron/q1_pro/ansi_knob/keymaps/via/keymap.c b/keyboards/keychron/q1_pro/ansi_knob/keymaps/via/keymap.c deleted file mode 100644 index 09295a955e..0000000000 --- a/keyboards/keychron/q1_pro/ansi_knob/keymaps/via/keymap.c +++ /dev/null @@ -1,69 +0,0 @@ -/* 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 . - */ - -#include QMK_KEYBOARD_H - -// clang-format off -enum layers{ - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN -}; - -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_ansi_82( - KC_ESC, KC_BRID, KC_BRIU, KC_MCTL, KC_LPAD, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_DEL, KC_MUTE, - KC_GRV, 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_PGUP, - 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_PGDN, - 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_HOME, - 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_LCTL, KC_LOPTN, KC_LCMMD, KC_SPC, KC_LCMMD,MO(MAC_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - - [MAC_FN] = LAYOUT_ansi_82( - KC_TRNS, 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, RGB_TOG, - KC_TRNS, BT_HST1, BT_HST2, BT_HST3, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_END, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, BAT_LVL, NK_TOGG, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS), - - [WIN_BASE] = LAYOUT_ansi_82( - KC_ESC, 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_DEL, KC_MUTE, - KC_GRV, 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_PGUP, - 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_PGDN, - 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_HOME, - 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_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(WIN_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - - [WIN_FN] = LAYOUT_ansi_82( - KC_TRNS, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_TRNS, RGB_TOG, - KC_TRNS, BT_HST1, BT_HST2, BT_HST3, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_END, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, BAT_LVL, NK_TOGG, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS) - -}; - -#if defined(ENCODER_MAP_ENABLE) -const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][2] = { - [MAC_BASE] = {ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [MAC_FN] = {ENCODER_CCW_CW(RGB_VAD, RGB_VAI)}, - [WIN_BASE] = {ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [WIN_FN] = {ENCODER_CCW_CW(RGB_VAD, RGB_VAI)} -}; -#endif // ENCODER_MAP_ENABLE diff --git a/keyboards/keychron/q1_pro/ansi_knob/keymaps/via/rules.mk b/keyboards/keychron/q1_pro/ansi_knob/keymaps/via/rules.mk deleted file mode 100644 index 1e5b99807c..0000000000 --- a/keyboards/keychron/q1_pro/ansi_knob/keymaps/via/rules.mk +++ /dev/null @@ -1 +0,0 @@ -VIA_ENABLE = yes diff --git a/keyboards/keychron/q1_pro/ansi_knob/rules.mk b/keyboards/keychron/q1_pro/ansi_knob/rules.mk deleted file mode 100644 index f886ea2e8e..0000000000 --- a/keyboards/keychron/q1_pro/ansi_knob/rules.mk +++ /dev/null @@ -1 +0,0 @@ -# This file intentionally blank \ No newline at end of file diff --git a/keyboards/keychron/q1_pro/config.h b/keyboards/keychron/q1_pro/config.h deleted file mode 100644 index 35f6253cb5..0000000000 --- a/keyboards/keychron/q1_pro/config.h +++ /dev/null @@ -1,83 +0,0 @@ -/* 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 . - */ - -#pragma once - -/* Turn off effects when suspended */ -#define RGB_DISABLE_WHEN_USB_SUSPENDED - -/* DIP switch for Mac/win OS switch */ -#define DIP_SWITCH_PINS { A8 } - -#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 \ - { 16, 17, 18 } - -# define BAT_LEVEL_LED_LIST \ - { 16, 17, 18, 19, 20, 21, 22, 23, 24, 25 } - -/* 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 WEAR_LEVELING_LOGICAL_SIZE 2048 -#define WEAR_LEVELING_BACKING_SIZE (WEAR_LEVELING_LOGICAL_SIZE * 2) -#define DYNAMIC_KEYMAP_EEPROM_MAX_ADDR 2047 - -/* Encoder Configuration */ -#ifdef ENCODER_ENABLE -# define ENCODER_DEFAULT_POS 0x3 -#endif - -/* Factory test keys */ -#define FN_KEY1 MO(1) -#define FN_KEY2 MO(3) -#define BL_TEST_KEY2 KC_END - -#define INVERT_OS_SWITCH_STATE diff --git a/keyboards/keychron/q1_pro/halconf.h b/keyboards/keychron/q1_pro/halconf.h deleted file mode 100644 index 306f917783..0000000000 --- a/keyboards/keychron/q1_pro/halconf.h +++ /dev/null @@ -1,29 +0,0 @@ -/* 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 _CHIBIOS_HAL_CONF_VER_8_0_ - -#define HAL_USE_I2C TRUE - -#ifdef KC_BLUETOOTH_ENABLE -# define PAL_USE_CALLBACKS TRUE -# define HAL_USE_SERIAL TRUE -# define HAL_USE_RTC TRUE -#endif - -#include_next diff --git a/keyboards/keychron/q1_pro/info.json b/keyboards/keychron/q1_pro/info.json deleted file mode 100644 index fb3a11d399..0000000000 --- a/keyboards/keychron/q1_pro/info.json +++ /dev/null @@ -1,64 +0,0 @@ -{ - "keyboard_name": "Keychron Q1 Pro", - "manufacturer": "Keychron", - "url": "https://github.com/Keychron", - "maintainer": "lokher", - "processor": "STM32L432", - "bootloader": "stm32-dfu", - "usb": { - "vid": "0x3434" - }, - "features": { - "bootmagic": true, - "mousekey": true, - "extrakey": true, - "nkro": true, - "dip_switch": true, - "raw": true, - "encoder": true, - "encoder_map": true, - "rgb_matrix": true - }, - "diode_direction": "ROW2COL", - "matrix_size": { - "rows": 6, - "cols": 16 - }, - "matrix_pins": { - "rows": ["B5", "B4", "B3", "A15", "A14", "A13"], - "cols": [null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null], - "custom": true, - "custom_lite": true - }, - "encoder": { - "rotary": [ - {"pin_a": "A10", "pin_b": "A0", "resolution": 4} - ] - }, - "rgb_matrix": { - "driver": "snled27351", - "animations": { - "breathing": true, - "band_spiral_val": true, - "cycle_all": true, - "cycle_left_right": true, - "cycle_up_down": true, - "rainbow_moving_chevron": true, - "cycle_out_in": true, - "cycle_out_in_dual": true, - "cycle_pinwheel": true, - "cycle_spiral": true, - "dual_beacon": true, - "rainbow_beacon": true, - "jellybean_raindrops": true, - "pixel_rain": true, - "typing_heatmap": true, - "digital_rain": true, - "solid_reactive_simple": true, - "solid_reactive_multiwide": true, - "solid_reactive_multinexus": true, - "splash": true, - "solid_splash": true - } - } -} diff --git a/keyboards/keychron/q1_pro/iso_knob/config.h b/keyboards/keychron/q1_pro/iso_knob/config.h deleted file mode 100644 index 9e9d2e8894..0000000000 --- a/keyboards/keychron/q1_pro/iso_knob/config.h +++ /dev/null @@ -1,57 +0,0 @@ -/* 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 . - */ - -#pragma once - -/* Encoder Configuration */ -#ifdef ENCODER_ENABLE -# define ENCODER_DEFAULT_POS 0x3 -#endif - -#ifdef RGB_MATRIX_ENABLE -/* RGB Matrix driver configuration */ -# define DRIVER_COUNT 2 - -# define DRIVER_ADDR_1 0b1110111 -# define DRIVER_ADDR_2 0b1110100 -# define DRIVER_1_LED_COUNT 45 -# define DRIVER_2_LED_COUNT 38 -# define RGB_MATRIX_LED_COUNT (DRIVER_1_LED_COUNT + DRIVER_2_LED_COUNT) - -/* Set to infinit, which is use in USB mode by default */ -# define RGB_MATRIX_TIMEOUT RGB_MATRIX_TIMEOUT_INFINITE - -/* Allow shutdown of led driver to save power */ -# define RGB_MATRIX_DRIVER_SHUTDOWN_ENABLE -/* Turn off backlight on low brightness to save power */ -# define RGB_MATRIX_BRIGHTNESS_TURN_OFF_VAL 32 - -# define CAPS_LOCK_INDEX 45 -# define LOW_BAT_IND_INDEX 76 - -/* RGB Matrix Animation modes. Explicitly enabled - * For full list of effects, see: - * https://docs.qmk.fm/#/feature_rgb_matrix?id=rgb-matrix-effects - */ - -# define RGB_MATRIX_KEYPRESSES -# define RGB_MATRIX_FRAMEBUFFER_EFFECTS - -/* Set LED driver current */ -# define SNLED27351_CURRENT_TUNE \ - { 0x38, 0x38, 0x38, 0x38, 0x38, 0x38, 0x38, 0x38, 0x38, 0x38, 0x38, 0x38 } - -#endif diff --git a/keyboards/keychron/q1_pro/iso_knob/info.json b/keyboards/keychron/q1_pro/iso_knob/info.json deleted file mode 100644 index 8d96101f1b..0000000000 --- a/keyboards/keychron/q1_pro/iso_knob/info.json +++ /dev/null @@ -1,100 +0,0 @@ -{ - "usb": { - "pid": "0x0611", - "device_version": "1.0.0" - }, - "layouts": { - "LAYOUT_iso_83": { - "layout": [ - {"matrix":[0, 0], "x":0, "y":0}, - {"matrix":[0, 1], "x":1.25, "y":0}, - {"matrix":[0, 2], "x":2.25, "y":0}, - {"matrix":[0, 3], "x":3.25, "y":0}, - {"matrix":[0, 4], "x":4.25, "y":0}, - {"matrix":[0, 5], "x":5.5, "y":0}, - {"matrix":[0, 6], "x":6.5, "y":0}, - {"matrix":[0, 7], "x":7.5, "y":0}, - {"matrix":[0, 8], "x":8.5, "y":0}, - {"matrix":[0, 9], "x":9.75, "y":0}, - {"matrix":[0,10], "x":10.75, "y":0}, - {"matrix":[0,11], "x":11.75, "y":0}, - {"matrix":[0,12], "x":12.75, "y":0}, - {"matrix":[0,13], "x":14, "y":0}, - {"matrix":[0,15], "x":15.25, "y":0}, - - {"matrix":[1, 0], "x":0, "y":1.25}, - {"matrix":[1, 1], "x":1, "y":1.25}, - {"matrix":[1, 2], "x":2, "y":1.25}, - {"matrix":[1, 3], "x":3, "y":1.25}, - {"matrix":[1, 4], "x":4, "y":1.25}, - {"matrix":[1, 5], "x":5, "y":1.25}, - {"matrix":[1, 6], "x":6, "y":1.25}, - {"matrix":[1, 7], "x":7, "y":1.25}, - {"matrix":[1, 8], "x":8, "y":1.25}, - {"matrix":[1, 9], "x":9, "y":1.25}, - {"matrix":[1,10], "x":10, "y":1.25}, - {"matrix":[1,11], "x":11, "y":1.25}, - {"matrix":[1,12], "x":12, "y":1.25}, - {"matrix":[1,13], "x":13, "y":1.25, "w":2}, - {"matrix":[1,15], "x":15.25, "y":1.25}, - - {"matrix":[2, 0], "x":0, "y":2.25, "w":1.5}, - {"matrix":[2, 1], "x":1.5, "y":2.25}, - {"matrix":[2, 2], "x":2.5, "y":2.25}, - {"matrix":[2, 3], "x":3.5, "y":2.25}, - {"matrix":[2, 4], "x":4.5, "y":2.25}, - {"matrix":[2, 5], "x":5.5, "y":2.25}, - {"matrix":[2, 6], "x":6.5, "y":2.25}, - {"matrix":[2, 7], "x":7.5, "y":2.25}, - {"matrix":[2, 8], "x":8.5, "y":2.25}, - {"matrix":[2, 9], "x":9.5, "y":2.25}, - {"matrix":[2,10], "x":10.5, "y":2.25}, - {"matrix":[2,11], "x":11.5, "y":2.25}, - {"matrix":[2,12], "x":12.5, "y":2.25}, - {"matrix":[2,13], "x":13.5, "y":2.25, "w":1.5}, - {"matrix":[2,15], "x":15.25, "y":2.25}, - - {"matrix":[3, 0], "x":0, "y":3.25, "w":1.75}, - {"matrix":[3, 1], "x":1.75, "y":3.25}, - {"matrix":[3, 2], "x":2.75, "y":3.25}, - {"matrix":[3, 3], "x":3.75, "y":3.25}, - {"matrix":[3, 4], "x":4.75, "y":3.25}, - {"matrix":[3, 5], "x":5.75, "y":3.25}, - {"matrix":[3, 6], "x":6.75, "y":3.25}, - {"matrix":[3, 7], "x":7.75, "y":3.25}, - {"matrix":[3, 8], "x":8.75, "y":3.25}, - {"matrix":[3, 9], "x":9.75, "y":3.25}, - {"matrix":[3,10], "x":10.75, "y":3.25}, - {"matrix":[3,11], "x":11.75, "y":3.25}, - {"matrix":[3,13], "x":12.75, "y":3.25, "w":2.25}, - {"matrix":[3,15], "x":15.25, "y":3.25}, - - {"matrix":[4, 0], "x":0, "y":4.25, "w":1.25}, - {"matrix":[4, 1], "x":1.25, "y":4.25}, - {"matrix":[4, 2], "x":2.25, "y":4.25}, - {"matrix":[4, 3], "x":3.25, "y":4.25}, - {"matrix":[4, 4], "x":4.25, "y":4.25}, - {"matrix":[4, 5], "x":5.25, "y":4.25}, - {"matrix":[4, 6], "x":6.25, "y":4.25}, - {"matrix":[4, 7], "x":7.25, "y":4.25}, - {"matrix":[4, 8], "x":8.25, "y":4.25}, - {"matrix":[4, 9], "x":9.25, "y":4.25}, - {"matrix":[4,10], "x":10.25, "y":4.25}, - {"matrix":[4,11], "x":11.25, "y":4.25}, - {"matrix":[4,13], "x":12.25, "y":4.25, "w":1.75}, - {"matrix":[4,14], "x":14.25, "y":4.5}, - - {"matrix":[5, 0], "x":0, "y":5.25, "w":1.25}, - {"matrix":[5, 1], "x":1.25, "y":5.25, "w":1.25}, - {"matrix":[5, 2], "x":2.5, "y":5.25, "w":1.25}, - {"matrix":[5, 6], "x":3.75, "y":5.25, "w":6.25}, - {"matrix":[5,10], "x":10, "y":5.25}, - {"matrix":[5,11], "x":11, "y":5.25}, - {"matrix":[5,12], "x":12, "y":5.25}, - {"matrix":[5,13], "x":13.25, "y":5.5}, - {"matrix":[5,14], "x":14.25, "y":5.5}, - {"matrix":[5,15], "x":15.25, "y":5.5} - ] - } - } -} diff --git a/keyboards/keychron/q1_pro/iso_knob/iso_knob.c b/keyboards/keychron/q1_pro/iso_knob/iso_knob.c deleted file mode 100644 index 0fcc3ff402..0000000000 --- a/keyboards/keychron/q1_pro/iso_knob/iso_knob.c +++ /dev/null @@ -1,146 +0,0 @@ -/* 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 . - */ - -#include "quantum.h" - -// clang-format off -#ifdef RGB_MATRIX_ENABLE -const snled27351_led_t g_snled27351_leds[RGB_MATRIX_LED_COUNT] = { -/* Refer to CKLED manual for these locations - * driver - * | R location - * | | G location - * | | | B location - * | | | | */ - {0, I_1, G_1, H_1}, - {0, I_2, G_2, H_2}, - {0, I_3, G_3, H_3}, - {0, I_4, G_4, H_4}, - {0, I_5, G_5, H_5}, - {0, I_6, G_6, H_6}, - {0, I_7, G_7, H_7}, - {0, I_8, G_8, H_8}, - {0, I_9, G_9, H_9}, - {0, I_10, G_10, H_10}, - {0, I_11, G_11, H_11}, - {0, I_12, G_12, H_12}, - {0, I_13, G_13, H_13}, - {0, I_14, G_14, H_14}, - {0, I_16, G_16, H_16}, - - {0, C_1, A_1, B_1}, - {0, C_2, A_2, B_2}, - {0, C_3, A_3, B_3}, - {0, C_4, A_4, B_4}, - {0, C_5, A_5, B_5}, - {0, C_6, A_6, B_6}, - {0, C_7, A_7, B_7}, - {0, C_8, A_8, B_8}, - {0, C_9, A_9, B_9}, - {0, C_10, A_10, B_10}, - {0, C_11, A_11, B_11}, - {0, C_12, A_12, B_12}, - {0, C_13, A_13, B_13}, - {0, C_14, A_14, B_14}, - {0, C_16, A_16, B_16}, - - {0, F_1, D_1, E_1}, - {0, F_2, D_2, E_2}, - {0, F_3, D_3, E_3}, - {0, F_4, D_4, E_4}, - {0, F_5, D_5, E_5}, - {0, F_6, D_6, E_6}, - {0, F_7, D_7, E_7}, - {0, F_8, D_8, E_8}, - {0, F_9, D_9, E_9}, - {0, F_10, D_10, E_10}, - {0, F_11, D_11, E_11}, - {0, F_12, D_12, E_12}, - {0, F_13, D_13, E_13}, - {0, F_14, D_14, E_14}, - {0, F_16, D_16, E_16}, - - {1, C_16, A_16, B_16}, - {1, C_15, A_15, B_15}, - {1, C_14, A_14, B_14}, - {1, C_13, A_13, B_13}, - {1, C_12, A_12, B_12}, - {1, C_11, A_11, B_11}, - {1, C_10, A_10, B_10}, - {1, C_9, A_9, B_9}, - {1, C_8, A_8, B_8}, - {1, C_7, A_7, B_7}, - {1, C_6, A_6, B_6}, - {1, C_5, A_5, B_5}, - {1, C_3, A_3, B_3}, - {1, C_1, A_1, B_1}, - - {1, I_16, G_16, H_16}, - {1, I_15, G_15, H_15}, - {1, I_14, G_14, H_14}, - {1, I_13, G_13, H_13}, - {1, I_12, G_12, H_12}, - {1, I_11, G_11, H_11}, - {1, I_10, G_10, H_10}, - {1, I_9, G_9, H_9}, - {1, I_8, G_8, H_8}, - {1, I_7, G_7, H_7}, - {1, I_6, G_6, H_6}, - {1, I_5, G_5, H_5}, - {1, I_3, G_3, H_3}, - {1, I_2, G_2, H_2}, - - {1, F_16, D_16, E_16}, - {1, F_15, D_15, E_15}, - {1, F_14, D_14, E_14}, - {1, F_10, D_10, E_10}, - {1, F_6, D_6, E_6}, - {1, F_5, D_5, E_5}, - {1, F_4, D_4, E_4}, - {1, F_3, D_3, E_3}, - {1, F_2, D_2, E_2}, - {1, F_1, D_1, E_1} -}; - - -led_config_t g_led_config = { - { - { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, NO_LED, 14 }, - { 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, NO_LED, 29 }, - { 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, NO_LED, 44 }, - { 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, NO_LED, 57, NO_LED, 58 }, - { 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, NO_LED, 71, NO_LED, 72 }, - { 73, 74, 75, NO_LED, NO_LED, NO_LED, 76, NO_LED, NO_LED, NO_LED, 77, 78, 79, 80, 81, 82 } - }, - { - {0, 0}, {18, 0}, {32, 0}, {47, 0}, {62, 0}, {80, 0}, {95, 0}, {109, 0}, {124, 0}, {142, 0}, {157, 0}, {172, 0}, {186, 0}, {205, 0}, {223, 0}, - {0,14}, {14,14}, {29,14}, {43,14}, {58,14}, {73,14}, {87,14}, {102, 14}, {117, 14}, {131, 14}, {146, 14}, {161, 14}, {175, 14}, {197, 14}, {224, 14}, - {3,26}, {21,26}, {36,26}, {51,26}, {65,26}, {80,26}, {95,26}, {109, 26}, {124, 26}, {139, 26}, {153, 26}, {168, 26}, {183, 26}, {201, 26}, {224, 26}, - {5,37}, {25,37}, {40,37}, {54,37}, {69,37}, {84,37}, {98,37}, {113, 37}, {128, 37}, {142, 37}, {157, 37}, {172, 37}, {195, 37}, {224, 37}, - {0,50}, {16,14}, {32,50}, {47,50}, {62,50}, {76,50}, {91,50}, {106, 50}, {120, 50}, {135, 50}, {150, 50}, {164, 50}, {185, 50}, {209, 50}, - {1,62}, {20,62}, {38,62}, {93,62}, {146, 62}, {161, 62}, {176, 62}, {194, 62}, {209, 62}, {224, 62} - - }, - { - 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, - 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, - 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, - 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, - 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, - 4, 4, 4, 4, 4, 4, 4, 4, 4, 4 - } -}; -#endif diff --git a/keyboards/keychron/q1_pro/iso_knob/keymaps/default/keymap.c b/keyboards/keychron/q1_pro/iso_knob/keymaps/default/keymap.c deleted file mode 100644 index cd4cacb978..0000000000 --- a/keyboards/keychron/q1_pro/iso_knob/keymaps/default/keymap.c +++ /dev/null @@ -1,68 +0,0 @@ -/* 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 . - */ - -#include QMK_KEYBOARD_H - -// clang-format off -enum layers{ - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN -}; - -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_iso_83( - KC_ESC, KC_BRID, KC_BRIU, KC_MCTL, KC_LPAD, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_DEL, KC_MUTE, - KC_GRV, 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_PGUP, - 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_ENT, KC_PGDN, - 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_BSLS, KC_HOME, - KC_LSFT, KC_NUBS, 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_LCTL, KC_LOPTN, KC_LCMMD, KC_SPC, KC_LCMMD,MO(MAC_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - - [MAC_FN] = LAYOUT_iso_83( - KC_TRNS, 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, RGB_TOG, - KC_TRNS, BT_HST1, BT_HST2, BT_HST3, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_END, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, BAT_LVL, NK_TOGG, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS), - - [WIN_BASE] = LAYOUT_iso_83( - KC_ESC, 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_DEL, KC_MUTE, - KC_GRV, 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_PGUP, - 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_ENT, KC_PGDN, - 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_BSLS, KC_HOME, - KC_LSFT, KC_NUBS, 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_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(WIN_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - - [WIN_FN] = LAYOUT_iso_83( - KC_TRNS, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_TRNS, RGB_TOG, - KC_TRNS, BT_HST1, BT_HST2, BT_HST3, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_END, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, BAT_LVL, NK_TOGG, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS) -}; - -#if defined(ENCODER_MAP_ENABLE) -const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][2] = { - [MAC_BASE] = {ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [MAC_FN] = {ENCODER_CCW_CW(RGB_VAD, RGB_VAI)}, - [WIN_BASE] = {ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [WIN_FN] = {ENCODER_CCW_CW(RGB_VAD, RGB_VAI)} -}; -#endif // ENCODER_MAP_ENABLE diff --git a/keyboards/keychron/q1_pro/iso_knob/keymaps/via/keymap.c b/keyboards/keychron/q1_pro/iso_knob/keymaps/via/keymap.c deleted file mode 100644 index cd4cacb978..0000000000 --- a/keyboards/keychron/q1_pro/iso_knob/keymaps/via/keymap.c +++ /dev/null @@ -1,68 +0,0 @@ -/* 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 . - */ - -#include QMK_KEYBOARD_H - -// clang-format off -enum layers{ - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN -}; - -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_iso_83( - KC_ESC, KC_BRID, KC_BRIU, KC_MCTL, KC_LPAD, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_DEL, KC_MUTE, - KC_GRV, 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_PGUP, - 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_ENT, KC_PGDN, - 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_BSLS, KC_HOME, - KC_LSFT, KC_NUBS, 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_LCTL, KC_LOPTN, KC_LCMMD, KC_SPC, KC_LCMMD,MO(MAC_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - - [MAC_FN] = LAYOUT_iso_83( - KC_TRNS, 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, RGB_TOG, - KC_TRNS, BT_HST1, BT_HST2, BT_HST3, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_END, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, BAT_LVL, NK_TOGG, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS), - - [WIN_BASE] = LAYOUT_iso_83( - KC_ESC, 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_DEL, KC_MUTE, - KC_GRV, 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_PGUP, - 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_ENT, KC_PGDN, - 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_BSLS, KC_HOME, - KC_LSFT, KC_NUBS, 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_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(WIN_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - - [WIN_FN] = LAYOUT_iso_83( - KC_TRNS, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_TRNS, RGB_TOG, - KC_TRNS, BT_HST1, BT_HST2, BT_HST3, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_END, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, BAT_LVL, NK_TOGG, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS) -}; - -#if defined(ENCODER_MAP_ENABLE) -const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][2] = { - [MAC_BASE] = {ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [MAC_FN] = {ENCODER_CCW_CW(RGB_VAD, RGB_VAI)}, - [WIN_BASE] = {ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [WIN_FN] = {ENCODER_CCW_CW(RGB_VAD, RGB_VAI)} -}; -#endif // ENCODER_MAP_ENABLE diff --git a/keyboards/keychron/q1_pro/iso_knob/keymaps/via/rules.mk b/keyboards/keychron/q1_pro/iso_knob/keymaps/via/rules.mk deleted file mode 100644 index 1e5b99807c..0000000000 --- a/keyboards/keychron/q1_pro/iso_knob/keymaps/via/rules.mk +++ /dev/null @@ -1 +0,0 @@ -VIA_ENABLE = yes diff --git a/keyboards/keychron/q1_pro/iso_knob/rules.mk b/keyboards/keychron/q1_pro/iso_knob/rules.mk deleted file mode 100644 index f886ea2e8e..0000000000 --- a/keyboards/keychron/q1_pro/iso_knob/rules.mk +++ /dev/null @@ -1 +0,0 @@ -# This file intentionally blank \ No newline at end of file diff --git a/keyboards/keychron/q1_pro/jis_encoder/config.h b/keyboards/keychron/q1_pro/jis_encoder/config.h deleted file mode 100644 index ed89ec7009..0000000000 --- a/keyboards/keychron/q1_pro/jis_encoder/config.h +++ /dev/null @@ -1,58 +0,0 @@ -/* 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 . - */ - -#pragma once - -/* Encoder Configuration */ -#ifdef ENCODER_ENABLE -# define ENCODER_DEFAULT_POS 0x3 -#endif - -#ifdef RGB_MATRIX_ENABLE -/* RGB Matrix driver configuration */ -# define DRIVER_COUNT 2 -# define DRIVER_ADDR_1 0b1110111 -# define DRIVER_ADDR_2 0b1110100 - -/* RGB Matrix Configuration */ -# define DRIVER_1_LED_COUNT 46 -# define DRIVER_2_LED_COUNT 40 -# define RGB_MATRIX_LED_COUNT (DRIVER_1_LED_COUNT + DRIVER_2_LED_COUNT) - -/* Set to infinit, which is use in USB mode by default */ -# define RGB_MATRIX_TIMEOUT RGB_MATRIX_TIMEOUT_INFINITE - -/* Allow shutdown of led driver to save power */ -# define RGB_MATRIX_DRIVER_SHUTDOWN_ENABLE - -/* Turn off backlight on low brightness to save power */ -# define RGB_MATRIX_BRIGHTNESS_TURN_OFF_VAL 32 - -/* Indication led index */ -# define CAPS_LOCK_INDEX 45 -# define LOW_BAT_IND_INDEX 78 - -/* RGB Matrix Animation modes. Explicitly enabled - * For full list of effects, see: - * https://docs.qmk.fm/#/feature_rgb_matrix?id=rgb-matrix-effects - */ -# define RGB_MATRIX_KEYPRESSES -# define RGB_MATRIX_FRAMEBUFFER_EFFECTS - -/* Set LED driver current */ -# define SNLED27351_CURRENT_TUNE \ - { 0x38, 0x38, 0x38, 0x38, 0x38, 0x38, 0x38, 0x38, 0x38, 0x38, 0x38, 0x38 } -#endif diff --git a/keyboards/keychron/q1_pro/jis_encoder/info.json b/keyboards/keychron/q1_pro/jis_encoder/info.json deleted file mode 100644 index 90ba59c970..0000000000 --- a/keyboards/keychron/q1_pro/jis_encoder/info.json +++ /dev/null @@ -1,198 +0,0 @@ -{ - "usb": { - "pid": "0xA612", - "device_version": "1.0.0" - }, - "layouts": { - "LAYOUT_86_jis": { - "layout": [ - {"matrix":[0,0], "x":0, "y":0}, - {"matrix":[0,1], "x":1.25, "y":0}, - {"matrix":[0,2], "x":2.25, "y":0}, - {"matrix":[0,3], "x":3.25, "y":0}, - {"matrix":[0,4], "x":4.25, "y":0}, - {"matrix":[0,5], "x":5.5, "y":0}, - {"matrix":[0,6], "x":6.5, "y":0}, - {"matrix":[0,7], "x":7.5, "y":0}, - {"matrix":[0,8], "x":8.5, "y":0}, - {"matrix":[0,9], "x":9.75, "y":0}, - {"matrix":[0,10], "x":10.75, "y":0}, - {"matrix":[0,11], "x":11.75, "y":0}, - {"matrix":[0,12], "x":12.75, "y":0}, - {"matrix":[0,13], "x":14, "y":0}, - {"matrix":[0,15], "x":15.25, "y":0}, - - {"matrix":[1,0], "x":0, "y":1.25}, - {"matrix":[1,1], "x":1, "y":1.25}, - {"matrix":[1,2], "x":2, "y":1.25}, - {"matrix":[1,3], "x":3, "y":1.25}, - {"matrix":[1,4], "x":4, "y":1.25}, - {"matrix":[1,5], "x":5, "y":1.25}, - {"matrix":[1,6], "x":6, "y":1.25}, - {"matrix":[1,7], "x":7, "y":1.25}, - {"matrix":[1,8], "x":8, "y":1.25}, - {"matrix":[1,9], "x":9, "y":1.25}, - {"matrix":[1,10], "x":10, "y":1.25}, - {"matrix":[1,11], "x":11, "y":1.25}, - {"matrix":[1,12], "x":12, "y":1.25}, - {"matrix":[1,13], "x":13, "y":1.25}, - {"matrix":[1,14], "x":14, "y":1.25}, - {"matrix":[1,15], "x":15.25, "y":1.25}, - - {"matrix":[2,0], "x":0, "y":2.25, "w":1.5}, - {"matrix":[2,1], "x":1.5, "y":2.25}, - {"matrix":[2,2], "x":2.5, "y":2.25}, - {"matrix":[2,3], "x":3.5, "y":2.25}, - {"matrix":[2,4], "x":4.5, "y":2.25}, - {"matrix":[2,5], "x":5.5, "y":2.25}, - {"matrix":[2,6], "x":6.5, "y":2.25}, - {"matrix":[2,7], "x":7.5, "y":2.25}, - {"matrix":[2,8], "x":8.5, "y":2.25}, - {"matrix":[2,9], "x":9.5, "y":2.25}, - {"matrix":[2,10], "x":10.5, "y":2.25}, - {"matrix":[2,11], "x":11.5, "y":2.25}, - {"matrix":[2,12], "x":12.5, "y":2.25}, - {"matrix":[2,13], "x":13.75, "y":2.25, "w":1.25, "h":2}, - {"matrix":[2,15], "x":15.25, "y":2.25}, - - {"matrix":[3,0], "x":0, "y":3.25, "w":1.75}, - {"matrix":[3,1], "x":1.75, "y":3.25}, - {"matrix":[3,2], "x":2.75, "y":3.25}, - {"matrix":[3,3], "x":3.75, "y":3.25}, - {"matrix":[3,4], "x":4.75, "y":3.25}, - {"matrix":[3,5], "x":5.75, "y":3.25}, - {"matrix":[3,6], "x":6.75, "y":3.25}, - {"matrix":[3,7], "x":7.75, "y":3.25}, - {"matrix":[3,8], "x":8.75, "y":3.25}, - {"matrix":[3,9], "x":9.75, "y":3.25}, - {"matrix":[3,10], "x":10.75, "y":3.25}, - {"matrix":[3,11], "x":11.75, "y":3.25}, - {"matrix":[3,13], "x":12.75, "y":3.25}, - {"matrix":[3,15], "x":15.25, "y":3.25}, - - {"matrix":[4,0], "x":0, "y":4.25, "w":2.25}, - {"matrix":[4,2], "x":2.25, "y":4.25}, - {"matrix":[4,3], "x":3.25, "y":4.25}, - {"matrix":[4,4], "x":4.25, "y":4.25}, - {"matrix":[4,5], "x":5.25, "y":4.25}, - {"matrix":[4,6], "x":6.25, "y":4.25}, - {"matrix":[4,7], "x":7.25, "y":4.25}, - {"matrix":[4,8], "x":8.25, "y":4.25}, - {"matrix":[4,9], "x":9.25, "y":4.25}, - {"matrix":[4,10], "x":10.25, "y":4.25}, - {"matrix":[4,11], "x":11.25, "y":4.25}, - {"matrix":[4,12], "x":12.25, "y":4.25}, - {"matrix":[4,13], "x":13.25, "y":4.25}, - {"matrix":[4,14], "x":14.25, "y":4.25}, - - {"matrix":[5,0], "x":0, "y":5.25, "w":1.25}, - {"matrix":[5,1], "x":1.25, "y":5.25}, - {"matrix":[5,2], "x":2.25, "y":5.25, "w":1.25}, - {"matrix":[5,3], "x":3.5, "y":5.25}, - {"matrix":[5,6], "x":4.5, "y":5.25, "w":4.5}, - {"matrix":[5,9], "x":9, "y":5.25, "w":1.25}, - {"matrix":[5,10], "x":10.25, "y":5.25}, - {"matrix":[5,11], "x":11.25, "y":5.25}, - {"matrix":[5,12], "x":12.25, "y":5.25}, - {"matrix":[5,13], "x":13.25, "y":5.25}, - {"matrix":[5,14], "x":14.25, "y":5.25}, - {"matrix":[5,15], "x":15.25, "y":5.25} - ] - } - }, - "rgb_matrix": { - "layout": [ - {"matrix":[0, 0], "flags":1, "x":0, "y":0}, - {"matrix":[0, 1], "flags":1, "x":18, "y":0}, - {"matrix":[0, 2], "flags":1, "x":33, "y":0}, - {"matrix":[0, 3], "flags":1, "x":48, "y":0}, - {"matrix":[0, 4], "flags":1, "x":62, "y":0}, - {"matrix":[0, 5], "flags":1, "x":81, "y":0}, - {"matrix":[0, 6], "flags":1, "x":95, "y":0}, - {"matrix":[0, 7], "flags":1, "x":110, "y":0}, - {"matrix":[0, 8], "flags":1, "x":125, "y":0}, - {"matrix":[0, 9], "flags":1, "x":143, "y":0}, - {"matrix":[0, 10], "flags":1, "x":158, "y":0}, - {"matrix":[0, 11], "flags":1, "x":172, "y":0}, - {"matrix":[0, 12], "flags":1, "x":187, "y":0}, - {"matrix":[0, 13], "flags":1, "x":205, "y":0}, - {"matrix":[0, 15], "flags":1, "x":224, "y":0}, - - {"matrix":[1, 0], "flags":1, "x":0, "y":15}, - {"matrix":[1, 1], "flags":8, "x":15, "y":15}, - {"matrix":[1, 2], "flags":8, "x":29, "y":15}, - {"matrix":[1, 3], "flags":8, "x":44, "y":15}, - {"matrix":[1, 4], "flags":4, "x":59, "y":15}, - {"matrix":[1, 5], "flags":4, "x":73, "y":15}, - {"matrix":[1, 6], "flags":4, "x":88, "y":15}, - {"matrix":[1, 7], "flags":4, "x":103, "y":15}, - {"matrix":[1, 8], "flags":4, "x":117, "y":15}, - {"matrix":[1, 9], "flags":4, "x":132, "y":15}, - {"matrix":[1, 10], "flags":4, "x":146, "y":15}, - {"matrix":[1, 11], "flags":4, "x":161, "y":15}, - {"matrix":[1, 12], "flags":4, "x":176, "y":15}, - {"matrix":[1, 13], "flags":1, "x":190, "y":15}, - {"matrix":[1, 14], "flags":1, "x":205, "y":15}, - {"matrix":[1, 15], "flags":1, "x":224, "y":15}, - - {"matrix":[2, 0], "flags":1, "x":4, "y":28}, - {"matrix":[2, 1], "flags":4, "x":22, "y":28}, - {"matrix":[2, 2], "flags":4, "x":37, "y":28}, - {"matrix":[2, 3], "flags":4, "x":51, "y":28}, - {"matrix":[2, 4], "flags":4, "x":66, "y":28}, - {"matrix":[2, 5], "flags":4, "x":81, "y":28}, - {"matrix":[2, 6], "flags":4, "x":95, "y":28}, - {"matrix":[2, 7], "flags":4, "x":110, "y":28}, - {"matrix":[2, 8], "flags":4, "x":125, "y":28}, - {"matrix":[2, 9], "flags":4, "x":139, "y":28}, - {"matrix":[2, 10], "flags":4, "x":154, "y":28}, - {"matrix":[2, 11], "flags":4, "x":168, "y":28}, - {"matrix":[2, 12], "flags":4, "x":183, "y":28}, - {"matrix":[2, 15], "flags":1, "x":224, "y":28}, - - {"matrix":[3, 0], "flags":8, "x":5, "y":40}, - {"matrix":[3, 1], "flags":4, "x":26, "y":40}, - {"matrix":[3, 2], "flags":4, "x":40, "y":40}, - {"matrix":[3, 3], "flags":4, "x":55, "y":40}, - {"matrix":[3, 4], "flags":4, "x":70, "y":40}, - {"matrix":[3, 5], "flags":4, "x":84, "y":40}, - {"matrix":[3, 6], "flags":4, "x":99, "y":40}, - {"matrix":[3, 7], "flags":4, "x":114, "y":40}, - {"matrix":[3, 8], "flags":4, "x":128, "y":40}, - {"matrix":[3, 9], "flags":4, "x":143, "y":40}, - {"matrix":[3, 10], "flags":4, "x":158, "y":40}, - {"matrix":[3, 11], "flags":4, "x":172, "y":40}, - {"matrix":[3, 13], "flags":1, "x":187, "y":40}, - {"matrix":[2, 13], "flags":1, "x":207, "y":36}, - {"matrix":[3, 15], "flags":1, "x":224, "y":40}, - - {"matrix":[4, 0], "flags":1, "x":9, "y":52}, - {"matrix":[4, 2], "flags":4, "x":33, "y":52}, - {"matrix":[4, 3], "flags":4, "x":48, "y":52}, - {"matrix":[4, 4], "flags":4, "x":62, "y":52}, - {"matrix":[4, 5], "flags":4, "x":77, "y":52}, - {"matrix":[4, 6], "flags":4, "x":92, "y":52}, - {"matrix":[4, 7], "flags":4, "x":106, "y":52}, - {"matrix":[4, 8], "flags":4, "x":121, "y":52}, - {"matrix":[4, 9], "flags":4, "x":136, "y":52}, - {"matrix":[4, 10], "flags":4, "x":150, "y":52}, - {"matrix":[4, 11], "flags":4, "x":165, "y":52}, - {"matrix":[4, 12], "flags":1, "x":179, "y":52}, - {"matrix":[4, 13], "flags":1, "x":194, "y":52}, - {"matrix":[4, 14], "flags":1, "x":209, "y":52}, - - {"matrix":[5, 0], "flags":1, "x":2, "y":64}, - {"matrix":[5, 1], "flags":1, "x":18, "y":64}, - {"matrix":[5, 2], "flags":1, "x":35, "y":64}, - {"matrix":[5, 3], "flags":1, "x":51, "y":64}, - {"matrix":[5, 6], "flags":4, "x":92, "y":64}, - {"matrix":[5, 9], "flags":1, "x":134, "y":64}, - {"matrix":[5, 10], "flags":1, "x":140, "y":64}, - {"matrix":[5, 11], "flags":1, "x":165, "y":64}, - {"matrix":[5, 12], "flags":1, "x":179, "y":64}, - {"matrix":[5, 13], "flags":1, "x":194, "y":64}, - {"matrix":[5, 14], "flags":1, "x":209, "y":64}, - {"matrix":[5, 15], "flags":1, "x":224, "y":64} - ] - } -} diff --git a/keyboards/keychron/q1_pro/jis_encoder/jis_encoder.c b/keyboards/keychron/q1_pro/jis_encoder/jis_encoder.c deleted file mode 100644 index 2dc877a09e..0000000000 --- a/keyboards/keychron/q1_pro/jis_encoder/jis_encoder.c +++ /dev/null @@ -1,120 +0,0 @@ -/* 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 . - */ - -#include "quantum.h" - -// clang-format off -#ifdef RGB_MATRIX_ENABLE -const snled27351_led_t g_snled27351_leds[RGB_MATRIX_LED_COUNT] = { -/* Refer to CKLED manual for these locations - * driver - * | R location - * | | G location - * | | | B location - * | | | | */ - {0, I_1, G_1, H_1}, - {0, I_2, G_2, H_2}, - {0, I_3, G_3, H_3}, - {0, I_4, G_4, H_4}, - {0, I_5, G_5, H_5}, - {0, I_6, G_6, H_6}, - {0, I_7, G_7, H_7}, - {0, I_8, G_8, H_8}, - {0, I_9, G_9, H_9}, - {0, I_10, G_10, H_10}, - {0, I_11, G_11, H_11}, - {0, I_12, G_12, H_12}, - {0, I_13, G_13, H_13}, - {0, I_14, G_14, H_14}, - {0, I_16, G_16, H_16}, - - {0, C_1, A_1, B_1}, - {0, C_2, A_2, B_2}, - {0, C_3, A_3, B_3}, - {0, C_4, A_4, B_4}, - {0, C_5, A_5, B_5}, - {0, C_6, A_6, B_6}, - {0, C_7, A_7, B_7}, - {0, C_8, A_8, B_8}, - {0, C_9, A_9, B_9}, - {0, C_10, A_10, B_10}, - {0, C_11, A_11, B_11}, - {0, C_12, A_12, B_12}, - {0, C_13, A_13, B_13}, - {0, C_14, A_14, B_14}, - {0, C_15, A_15, B_15}, - {0, C_16, A_16, B_16}, - - {0, F_1, D_1, E_1}, - {0, F_2, D_2, E_2}, - {0, F_3, D_3, E_3}, - {0, F_4, D_4, E_4}, - {0, F_5, D_5, E_5}, - {0, F_6, D_6, E_6}, - {0, F_7, D_7, E_7}, - {0, F_8, D_8, E_8}, - {0, F_9, D_9, E_9}, - {0, F_10, D_10, E_10}, - {0, F_11, D_11, E_11}, - {0, F_12, D_12, E_12}, - {0, F_13, D_13, E_13}, - {0, F_16, D_16, E_16}, - - {1, C_16, A_16, B_16}, - {1, C_15, A_15, B_15}, - {1, C_14, A_14, B_14}, - {1, C_13, A_13, B_13}, - {1, C_12, A_12, B_12}, - {1, C_11, A_11, B_11}, - {1, C_10, A_10, B_10}, - {1, C_9, A_9, B_9}, - {1, C_8, A_8, B_8}, - {1, C_7, A_7, B_7}, - {1, C_6, A_6, B_6}, - {1, C_5, A_5, B_5}, - {1, C_3, A_3, B_3}, - {0, F_14, D_14, E_14}, - {1, C_1, A_1, B_1}, - - {1, I_16, G_16, H_16}, - {1, I_14, G_14, H_14}, - {1, I_13, G_13, H_13}, - {1, I_12, G_12, H_12}, - {1, I_11, G_11, H_11}, - {1, I_10, G_10, H_10}, - {1, I_9, G_9, H_9}, - {1, I_8, G_8, H_8}, - {1, I_7, G_7, H_7}, - {1, I_6, G_6, H_6}, - {1, I_5, G_5, H_5}, - {1, I_4, G_4, H_4}, - {1, I_3, G_3, H_3}, - {1, I_2, G_2, H_2}, - - {1, F_16, D_16, E_16}, - {1, F_15, D_15, E_15}, - {1, F_14, D_14, E_14}, - {1, F_13, D_13, E_13}, - {1, F_10, D_10, E_10}, - {1, F_7, D_7, E_7}, - {1, F_6, D_6, E_6}, - {1, F_5, D_5, E_5}, - {1, F_4, D_4, E_4}, - {1, F_3, D_3, E_3}, - {1, F_2, D_2, E_2}, - {1, F_1, D_1, E_1} -}; -#endif diff --git a/keyboards/keychron/q1_pro/jis_encoder/keymaps/default/keymap.c b/keyboards/keychron/q1_pro/jis_encoder/keymaps/default/keymap.c deleted file mode 100644 index 95fcd80dbb..0000000000 --- a/keyboards/keychron/q1_pro/jis_encoder/keymaps/default/keymap.c +++ /dev/null @@ -1,68 +0,0 @@ -/* 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 . - */ - -#include QMK_KEYBOARD_H - -enum layers{ - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN, -}; - -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_86_jis( - KC_ESC, KC_BRID, KC_BRIU, KC_MCTL, KC_LPAD, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_DEL, KC_MUTE, - KC_GRV, 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_INT3, KC_BSPC, KC_PGUP, - 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_ENT, KC_PGDN, - 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_BSLS, KC_HOME, - KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_INT1, KC_RSFT, KC_UP, - KC_LCTL, KC_LOPTN, KC_LCMMD, KC_LNG2, KC_SPC, KC_LNG1, KC_RCMMD,MO(MAC_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - - [MAC_FN] = LAYOUT_86_jis( - _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, RGB_TOG, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, KC_END, - _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - - [WIN_BASE] = LAYOUT_86_jis( - KC_ESC, 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_DEL, KC_MUTE, - KC_GRV, 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_INT3, KC_BSPC, KC_PGUP, - 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_ENT, KC_PGDN, - 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_BSLS, KC_HOME, - KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_INT1, KC_RSFT, KC_UP, - KC_LCTL, KC_LGUI, KC_LALT, KC_INT5, KC_SPC, KC_INT4, KC_RALT, MO(WIN_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - - [WIN_FN] = LAYOUT_86_jis( - _______, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, RGB_TOG, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, KC_END, - _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______) -}; - -#if defined(ENCODER_MAP_ENABLE) -const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][2] = { - [MAC_BASE] = {ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [MAC_FN] = {ENCODER_CCW_CW(RGB_VAD, RGB_VAI)}, - [WIN_BASE] = {ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [WIN_FN] = {ENCODER_CCW_CW(RGB_VAD, RGB_VAI)} -}; -#endif // ENCODER_MAP_ENABLE diff --git a/keyboards/keychron/q1_pro/jis_encoder/keymaps/default/rules.mk b/keyboards/keychron/q1_pro/jis_encoder/keymaps/default/rules.mk deleted file mode 100644 index ee32568148..0000000000 --- a/keyboards/keychron/q1_pro/jis_encoder/keymaps/default/rules.mk +++ /dev/null @@ -1 +0,0 @@ -ENCODER_MAP_ENABLE = yes diff --git a/keyboards/keychron/q1_pro/jis_encoder/keymaps/via/keymap.c b/keyboards/keychron/q1_pro/jis_encoder/keymaps/via/keymap.c deleted file mode 100644 index 95fcd80dbb..0000000000 --- a/keyboards/keychron/q1_pro/jis_encoder/keymaps/via/keymap.c +++ /dev/null @@ -1,68 +0,0 @@ -/* 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 . - */ - -#include QMK_KEYBOARD_H - -enum layers{ - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN, -}; - -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_86_jis( - KC_ESC, KC_BRID, KC_BRIU, KC_MCTL, KC_LPAD, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_DEL, KC_MUTE, - KC_GRV, 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_INT3, KC_BSPC, KC_PGUP, - 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_ENT, KC_PGDN, - 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_BSLS, KC_HOME, - KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_INT1, KC_RSFT, KC_UP, - KC_LCTL, KC_LOPTN, KC_LCMMD, KC_LNG2, KC_SPC, KC_LNG1, KC_RCMMD,MO(MAC_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - - [MAC_FN] = LAYOUT_86_jis( - _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, RGB_TOG, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, KC_END, - _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - - [WIN_BASE] = LAYOUT_86_jis( - KC_ESC, 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_DEL, KC_MUTE, - KC_GRV, 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_INT3, KC_BSPC, KC_PGUP, - 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_ENT, KC_PGDN, - 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_BSLS, KC_HOME, - KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_INT1, KC_RSFT, KC_UP, - KC_LCTL, KC_LGUI, KC_LALT, KC_INT5, KC_SPC, KC_INT4, KC_RALT, MO(WIN_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - - [WIN_FN] = LAYOUT_86_jis( - _______, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, RGB_TOG, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, KC_END, - _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______) -}; - -#if defined(ENCODER_MAP_ENABLE) -const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][2] = { - [MAC_BASE] = {ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [MAC_FN] = {ENCODER_CCW_CW(RGB_VAD, RGB_VAI)}, - [WIN_BASE] = {ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [WIN_FN] = {ENCODER_CCW_CW(RGB_VAD, RGB_VAI)} -}; -#endif // ENCODER_MAP_ENABLE diff --git a/keyboards/keychron/q1_pro/jis_encoder/keymaps/via/rules.mk b/keyboards/keychron/q1_pro/jis_encoder/keymaps/via/rules.mk deleted file mode 100644 index f1adcab005..0000000000 --- a/keyboards/keychron/q1_pro/jis_encoder/keymaps/via/rules.mk +++ /dev/null @@ -1,2 +0,0 @@ -VIA_ENABLE = yes -ENCODER_MAP_ENABLE = yes diff --git a/keyboards/keychron/q1_pro/jis_encoder/rules.mk b/keyboards/keychron/q1_pro/jis_encoder/rules.mk deleted file mode 100644 index f886ea2e8e..0000000000 --- a/keyboards/keychron/q1_pro/jis_encoder/rules.mk +++ /dev/null @@ -1 +0,0 @@ -# This file intentionally blank \ No newline at end of file diff --git a/keyboards/keychron/q1_pro/matrix.c b/keyboards/keychron/q1_pro/matrix.c deleted file mode 100644 index ec623eb297..0000000000 --- a/keyboards/keychron/q1_pro/matrix.c +++ /dev/null @@ -1,176 +0,0 @@ -/* 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 . - */ - -#include "stdint.h" -#include "hal.h" -#include "gpio.h" -#include "quantum.h" - -#ifndef DRIVE_SHRIFT_REGISTER_WITH_SPI -# define DRIVE_SHRIFT_REGISTER_WITH_SPI 0 -#endif - -#define HC595_STCP B0 -#define HC595_SHCP A1 -#define HC595_DS A7 - -pin_t row_pins[MATRIX_ROWS] = MATRIX_ROW_PINS; -pin_t col_pins[MATRIX_COLS] = MATRIX_COL_PINS; - -static inline void HC595_delay(uint16_t n) { - while (n-- > 0) { - asm volatile("nop" ::: "memory"); - }; -} - -#if (DRIVE_SHRIFT_REGISTER_WITH_SPI) -// clang-format off -const SPIConfig hs_spicfg = { - false, - NULL, - PAL_PORT(HC595_STCP), - PAL_PAD(HC595_STCP), - SPI_CR1_BR_1, - SPI_CR2_DS_3 | SPI_CR2_DS_2 | SPI_CR2_DS_1 | SPI_CR2_DS_0 | SPI_CR2_SSOE | SPI_CR2_NSSP - }; -// clang-format on -#endif - -static void HC595_output(uint16_t data) { -#if (DRIVE_SHRIFT_REGISTER_WITH_SPI) - spiStart(&SPID1, &hs_spicfg); - spiSend(&SPID1, 1, &data); -#else - uint8_t i; - uint8_t n = 1; - for (i = 16; i > 0; i--) { - writePinLow(HC595_SHCP); - - if (data & 0x8000) - writePinHigh(HC595_DS); - else - writePinLow(HC595_DS); - - data <<= 1; - - HC595_delay(n); - - writePinHigh(HC595_SHCP); - HC595_delay(n); - } - - HC595_delay(n); - writePinLow(HC595_STCP); - HC595_delay(n); - writePinHigh(HC595_STCP); -#endif -} - -static inline void setPinOutput_writeLow(pin_t pin) { - ATOMIC_BLOCK_FORCEON { - setPinOutput(pin); - writePinLow(pin); - } -} - -static inline void setPinInputHigh_atomic(pin_t pin) { - ATOMIC_BLOCK_FORCEON { - setPinInputHigh(pin); - } -} - -static inline uint8_t readMatrixPin(pin_t pin) { - if (pin != NO_PIN) { - return readPin(pin); - } else { - return 1; - } -} - -static bool select_col(uint8_t col) { - HC595_output(~(0x01 << col)); - return true; -} - -static void unselect_col(uint8_t col) { - HC595_output(0xFFFF); -} - -static void unselect_cols(void) { - HC595_output(0xFFFF); -} - -void select_all_cols(void) { - HC595_output(0x0000); -} - -void matrix_read_rows_on_col(matrix_row_t current_matrix[], uint8_t current_col) { - // Select col - if (!select_col(current_col)) { // select col - return; // skip NO_PIN col - } - - HC595_delay(100); - - // For each row... - for (uint8_t row_index = 0; row_index < MATRIX_ROWS; row_index++) { - // Check row pin state - if (readMatrixPin(row_pins[row_index]) == 0) { - // Pin LO, set col bit - current_matrix[row_index] |= (MATRIX_ROW_SHIFTER << current_col); - } else { - // Pin HI, clear col bit - current_matrix[row_index] &= ~(MATRIX_ROW_SHIFTER << current_col); - } - } - - unselect_col(current_col); - HC595_delay(100); -} - -void matrix_init_custom(void) { - for (uint8_t x = 0; x < MATRIX_ROWS; x++) { - if (row_pins[x] != NO_PIN) { - setPinInputHigh_atomic(row_pins[x]); - } - } -#if (DRIVE_SHRIFT_REGISTER_WITH_SPI) - palSetPadMode(PAL_PORT(HC595_SHCP), PAL_PAD(HC595_SHCP), PAL_MODE_ALTERNATE(5) | PAL_STM32_OSPEED_HIGHEST); /* SCK */ - palSetPadMode(PAL_PORT(HC595_DS), PAL_PAD(HC595_DS), PAL_MODE_ALTERNATE(5) | PAL_STM32_OSPEED_HIGHEST); /* MOSI*/ - palSetPadMode(PAL_PORT(HC595_STCP), PAL_PAD(HC595_STCP), PAL_MODE_ALTERNATE(5) | PAL_STM32_OSPEED_HIGHEST); /* CS*/ -#else - setPinOutput(HC595_DS); - setPinOutput(HC595_STCP); - setPinOutput(HC595_SHCP); -#endif - unselect_cols(); -} - -bool matrix_scan_custom(matrix_row_t current_matrix[]) { - bool matrix_has_changed = false; - - matrix_row_t curr_matrix[MATRIX_ROWS] = {0}; - - // Set col, read rows - for (uint8_t current_col = 0; current_col < MATRIX_COLS; current_col++) { - matrix_read_rows_on_col(curr_matrix, current_col); - } - - matrix_has_changed = memcmp(current_matrix, curr_matrix, sizeof(curr_matrix)) != 0; - if (matrix_has_changed) memcpy(current_matrix, curr_matrix, sizeof(curr_matrix)); - - return matrix_has_changed; -} diff --git a/keyboards/keychron/q1_pro/mcuconf.h b/keyboards/keychron/q1_pro/mcuconf.h deleted file mode 100644 index 4dae767a44..0000000000 --- a/keyboards/keychron/q1_pro/mcuconf.h +++ /dev/null @@ -1,36 +0,0 @@ -/* 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 - -/* Set HCLK to 48 MHz as tradeoff of USB lowest clockand and - * lower power comsumption for bluetooth. Will use dynamic - * clock when STM32L4 is supported in ChibiOS */ -#undef STM32_PLLM_VALUE -#define STM32_PLLM_VALUE 2 - -#undef STM32_PLLN_VALUE -#define STM32_PLLN_VALUE 12 - -#undef STM32_I2C_USE_I2C1 -#define STM32_I2C_USE_I2C1 TRUE - -#ifdef KC_BLUETOOTH_ENABLE -# undef STM32_SERIAL_USE_USART2 -# define STM32_SERIAL_USE_USART2 TRUE -#endif diff --git a/keyboards/keychron/q1_pro/q1_pro.c b/keyboards/keychron/q1_pro/q1_pro.c deleted file mode 100644 index a83953fdbd..0000000000 --- a/keyboards/keychron/q1_pro/q1_pro.c +++ /dev/null @@ -1,311 +0,0 @@ -/* 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 . - */ - -#include "q1_pro.h" -#ifdef KC_BLUETOOTH_ENABLE -# include "ckbt51.h" -# include "bluetooth.h" -# include "indicator.h" -# include "transport.h" -# include "battery.h" -# include "bat_level_animation.h" -# include "lpm.h" -#endif - -#ifdef ENABLE_FACTORY_TEST -# include "factory_test.h" -#endif - -typedef struct PACKED { - uint8_t len; - uint8_t keycode[3]; -} key_combination_t; - -static uint32_t factory_timer_buffer = 0; -static uint32_t siri_timer_buffer = 0; -static uint8_t mac_keycode[4] = {KC_LOPT, KC_ROPT, KC_LCMD, KC_RCMD}; - -key_combination_t key_comb_list[4] = { - {2, {KC_LWIN, KC_TAB}}, // Task (win) - {2, {KC_LWIN, KC_E}}, // Files (win) - {3, {KC_LSFT, KC_LGUI, KC_4}}, // Snapshot (mac) - {2, {KC_LWIN, KC_C}} // Cortana (win) -}; - -#ifdef KC_BLUETOOTH_ENABLE -bool firstDisconnect = true; -bool bt_factory_reset = false; -static virtual_timer_t pairing_key_timer; -extern uint8_t g_pwm_buffer[DRIVER_COUNT][192]; - -static void pairing_key_timer_cb(void *arg) { - bluetooth_pairing_ex(*(uint8_t *)arg, NULL); -} -#endif - -bool dip_switch_update_kb(uint8_t index, bool active) { - if (index == 0) { - default_layer_set(1UL << (active ? 2 : 0)); - } - dip_switch_update_user(index, active); - - return true; -} - -#ifdef KC_BLUETOOTH_ENABLE -bool process_record_kb_bt(uint16_t keycode, keyrecord_t *record) { - static uint8_t host_idx = 0; -#else -bool process_record_kb(uint16_t keycode, keyrecord_t *record) { -#endif - - switch (keycode) { - case KC_LOPTN: - case KC_ROPTN: - case KC_LCMMD: - case KC_RCMMD: - if (record->event.pressed) { - register_code(mac_keycode[keycode - KC_LOPTN]); - } else { - unregister_code(mac_keycode[keycode - KC_LOPTN]); - } - return false; // Skip all further processing of this key) - case KC_TASK: - case KC_FILE: - case KC_SNAP: - case KC_CTANA: - if (record->event.pressed) { - for (uint8_t i = 0; i < key_comb_list[keycode - KC_TASK].len; i++) - register_code(key_comb_list[keycode - KC_TASK].keycode[i]); - } else { - for (uint8_t i = 0; i < key_comb_list[keycode - KC_TASK].len; i++) - unregister_code(key_comb_list[keycode - KC_TASK].keycode[i]); - } - return false; // Skip all further processing of this key - case KC_SIRI: - if (record->event.pressed && siri_timer_buffer == 0) { - register_code(KC_LGUI); - register_code(KC_SPACE); - siri_timer_buffer = sync_timer_read32() | 1; - } - return false; // Skip all further processing of this key -#ifdef KC_BLUETOOTH_ENABLE - case BT_HST1 ... BT_HST3: - if (get_transport() == TRANSPORT_BLUETOOTH) { - if (record->event.pressed) { - host_idx = keycode - BT_HST1 + 1; - chVTSet(&pairing_key_timer, TIME_MS2I(2000), (vtfunc_t)pairing_key_timer_cb, &host_idx); - bluetooth_connect_ex(host_idx, 0); - } else { - host_idx = 0; - chVTReset(&pairing_key_timer); - } - } - break; - case BAT_LVL: - if (get_transport() == TRANSPORT_BLUETOOTH && !usb_power_connected()) { - bat_level_animiation_start(battery_get_percentage()); - } - break; -#endif - default: -#ifdef FACTORY_RESET_CHECK - FACTORY_RESET_CHECK(keycode, record); -#endif - break; - } - return true; -} - -#if defined(ENCODER_ENABLE) -static void encoder0_pad_cb(void *param) { - encoder_inerrupt_read((uint32_t)param & 0XFF); -} -#endif - -#ifdef BLUETOOTH_ENABLE -static void own_bt_param_init(void) { - /* Set bluetooth device name */ - ckbt51_set_local_name(STR(PRODUCT)); - wait_ms(10); - module_param_t param = {.event_mode = 0x02, - .connected_idle_timeout = 7200, - .pairing_timeout = 180, - .pairing_mode = 0, - .reconnect_timeout = 5, - .report_rate = 90, - .vendor_id_source = 1, - .verndor_id = 0, // Must be 0x3434 - .product_id = PRODUCT_ID}; - ckbt51_set_param(¶m); - wait_ms(10); -} -#endif - -void keyboard_post_init_kb(void) { - dip_switch_read(true); - -#ifdef KC_BLUETOOTH_ENABLE - setPinOutput(A9); - writePinLow(A9); - /* IMPORTANT: DO NOT enable internal pull-up resistor - * as there is an external pull-down resistor. - */ - palSetLineMode(USB_BT_MODE_SELECT_PIN, PAL_MODE_INPUT); - - ckbt51_init(false); - bluetooth_init(); - -# ifdef ENCODER_ENABLE - pin_t encoders_pad_a[] = ENCODERS_PAD_A; - pin_t encoders_pad_b[] = ENCODERS_PAD_B; - palEnableLineEvent(encoders_pad_a[0], PAL_EVENT_MODE_BOTH_EDGES); - palEnableLineEvent(encoders_pad_b[0], PAL_EVENT_MODE_BOTH_EDGES); - palSetLineCallback(encoders_pad_a[0], encoder0_pad_cb, NULL); - palSetLineCallback(encoders_pad_b[0], encoder0_pad_cb, NULL); -# endif -#endif - - keyboard_post_init_user(); -} - -void matrix_scan_kb(void) { - if (factory_timer_buffer && timer_elapsed32(factory_timer_buffer) > 2000) { - factory_timer_buffer = 0; - if (bt_factory_reset) { - bt_factory_reset = false; - palWriteLine(CKBT51_RESET_PIN, PAL_LOW); - wait_ms(5); - palWriteLine(CKBT51_RESET_PIN, PAL_HIGH); - } - } - - if (siri_timer_buffer && sync_timer_elapsed32(siri_timer_buffer) > 500) { - siri_timer_buffer = 0; - unregister_code(KC_LGUI); - unregister_code(KC_SPACE); - } - -#ifdef FACTORY_RESET_TASK - FACTORY_RESET_TASK(); -#endif - matrix_scan_user(); -} - -#ifdef KC_BLUETOOTH_ENABLE -static void ckbt51_param_init(void) { - /* Set bluetooth device name */ - ckbt51_set_local_name(STR(PRODUCT)); - /* Set bluetooth parameters */ - module_param_t param = {.event_mode = 0x02, - .connected_idle_timeout = 7200, - .pairing_timeout = 180, - .pairing_mode = 0, - .reconnect_timeout = 5, - .report_rate = 90, - .vendor_id_source = 1, - .verndor_id = 0, // Must be 0x3434 - .product_id = PRODUCT_ID}; - ckbt51_set_param(¶m); -} - -void bluetooth_enter_disconnected_kb(uint8_t host_idx) { - if (bt_factory_reset) { - ckbt51_param_init(); - factory_timer_buffer = timer_read32(); - } - /* CKBT51 bluetooth module boot time is slower, it enters disconnected after boot, - so we place initialization here. */ - if (firstDisconnect && sync_timer_read32() < 1000 && get_transport() == TRANSPORT_BLUETOOTH) { - ckbt51_param_init(); - bluetooth_connect(); - firstDisconnect = false; - } -} - -void ckbt51_default_ack_handler(uint8_t *data, uint8_t len) { - if (data[1] == 0x45) { - module_param_t param = {.event_mode = 0x02, - .connected_idle_timeout = 7200, - .pairing_timeout = 180, - .pairing_mode = 0, - .reconnect_timeout = 5, - .report_rate = 90, - .vendor_id_source = 1, - .verndor_id = 0, // Must be 0x3434 - .product_id = PRODUCT_ID}; - ckbt51_set_param(¶m); - } -} - -void bluetooth_pre_task(void) { - static uint8_t mode = 1; - - if (readPin(USB_BT_MODE_SELECT_PIN) != mode) { - if (readPin(USB_BT_MODE_SELECT_PIN) != mode) { - mode = readPin(USB_BT_MODE_SELECT_PIN); - set_transport(mode == 0 ? TRANSPORT_BLUETOOTH : TRANSPORT_USB); - } - } -} - -void battery_calculte_voltage(uint16_t value) { - uint16_t voltage = ((uint32_t)value) * 2246 / 1000; - -# ifdef RGB_MATRIX_ENABLE - if (rgb_matrix_is_enabled()) { - uint32_t totalBuf = 0; - - for (uint8_t i = 0; i < DRIVER_COUNT; i++) - for (uint8_t j = 0; j < 192; j++) - totalBuf += g_pwm_buffer[i][j]; - /* We assumpt it is linear relationship*/ - uint32_t compensation = 60 * totalBuf / RGB_MATRIX_LED_COUNT / 255 / 3; - voltage += compensation; - } -# endif - battery_set_voltage(voltage); -} -#endif - -bool via_command_kb(uint8_t *data, uint8_t length) { - switch (data[0]) { -#ifdef KC_BLUETOOTH_ENABLE - case 0xAA: - ckbt51_dfu_rx(data, length); - break; -#endif -#ifdef ENABLE_FACTORY_TEST - case 0xAB: - factory_test_rx(data, length); - break; -#endif - default: - return false; - } - - return true; -} - -#if !defined(VIA_ENABLE) -void raw_hid_receive(uint8_t *data, uint8_t length) { - switch (data[0]) { - case RAW_HID_CMD: - via_command_kb(data, length); - break; - } -} -#endif diff --git a/keyboards/keychron/q1_pro/q1_pro.h b/keyboards/keychron/q1_pro/q1_pro.h deleted file mode 100644 index cd0954d579..0000000000 --- a/keyboards/keychron/q1_pro/q1_pro.h +++ /dev/null @@ -1,55 +0,0 @@ -/* 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 . - */ - -#pragma once - -#include "quantum.h" -#ifdef VIA_ENABLE -# include "via.h" -#endif - -#define ___ KC_NO - -#ifdef VIA_ENABLE -# define USER_START QK_KB_0 -#else -# define USER_START SAFE_RANGE -#endif - -// clang-format off -enum { - KC_LOPTN = USER_START, - KC_ROPTN, - KC_LCMMD, - KC_RCMMD, - KC_TASK, - KC_FILE, - KC_SNAP, - KC_CTANA, - KC_SIRI, -#ifdef KC_BLUETOOTH_ENABLE - BT_HST1, - BT_HST2, - BT_HST3, - BAT_LVL, -#else - BT_HST1 = KC_TRNS, - BT_HST2 = KC_TRNS, - BT_HST3 = KC_TRNS, - BAT_LVL = KC_TRNS, -#endif - NEW_SAFE_RANGE -}; diff --git a/keyboards/keychron/q1_pro/readme.md b/keyboards/keychron/q1_pro/readme.md deleted file mode 100644 index 73b50a345c..0000000000 --- a/keyboards/keychron/q1_pro/readme.md +++ /dev/null @@ -1,21 +0,0 @@ -# Keychron Q1 Pro - -![Keychron Q1 Pro](https://cdn.shopify.com/s/files/1/0059/0630/1017/t/5/assets/keychronq1proqmkviacustommechanicalkeyboard--edited-1669962623486.jpg) - -A customizable 81 keys TKL keyboard. - -* Keyboard Maintainer: [Keychron](https://github.com/keychron) -* Hardware Supported: Keychron Q1 Pro -* Hardware Availability: [Keychron Q1 Pro Wireless, Customizeable, QMK/VIA Mechanical Keyboard](https://www.keychron.com/products/keychron-k8-pro-qmk-via-wireless-mechanical-keyboard) - -Make example for this keyboard (after setting up your build environment): - - make keychron/q1_pro/ansi_knob:default - -Flashing example for this keyboard: - - make keychron/q1_pro/ansi_knob:default:flash - -**Reset Key**: Connect the USB cable, toggle mode switch to "Off", hold down the *Esc* key or reset button underneath space bar, then toggle then switch to "Cable". - -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). diff --git a/keyboards/keychron/q1_pro/rules.mk b/keyboards/keychron/q1_pro/rules.mk deleted file mode 100644 index f995372f9c..0000000000 --- a/keyboards/keychron/q1_pro/rules.mk +++ /dev/null @@ -1,6 +0,0 @@ -# Enter lower-power sleep mode when on the ChibiOS idle thread -OPT_DEFS += -DCORTEX_ENABLE_WFI_IDLE=TRUE -OPT_DEFS += -DNO_USB_STARTUP_CHECK -DENABLE_FACTORY_TEST - -include keyboards/keychron/bluetooth/bluetooth.mk -include keyboards/keychron/common/common.mk diff --git a/keyboards/keychron/q1_pro/via_json/q1_pro_ansi_knob.json b/keyboards/keychron/q1_pro/via_json/q1_pro_ansi_knob.json deleted file mode 100644 index 53ec32e465..0000000000 --- a/keyboards/keychron/q1_pro/via_json/q1_pro_ansi_knob.json +++ /dev/null @@ -1,282 +0,0 @@ -{ - "name": "Keychron Q1 Pro ANSI Knob", - "vendorId": "0x3434", - "productId": "0x0610", - "keycodes": ["qmk_lighting"], - "menus": [ - { - "label": "Lighting", - "content": [ - { - "label": "Backlight", - "content": [ - { - "label": "Brightness", - "type": "range", - "options": [0, 255], - "content": ["id_qmk_rgb_matrix_brightness", 3, 1] - }, - { - "label": "Effect", - "type": "dropdown", - "content": ["id_qmk_rgb_matrix_effect", 3, 2], - "options": [ - ["None", 0], - ["Solid Color", 1], - ["Breathing", 2], - ["Band Spiral Val", 3], - ["Cycle All", 4], - ["Cycle Left Right", 5], - ["Cycle Up Down", 6], - ["Rainbow Moving Chevron", 7], - ["Cycle Out In", 8], - ["Cycle Out In Dual", 9], - ["Cycle Pinwheel", 10], - ["Cycle Spiral", 11], - ["Dual Beacon", 12], - ["Rainbow Beacon", 13], - ["Jellybean Raindrops", 14], - ["Pixel Rain", 15], - ["Typing Heatmap", 16], - ["Digital Rain", 17], - ["Reactive Simple", 18], - ["Reactive Multiwide", 19], - ["Reactive Multinexus", 20], - ["Splash", 21], - ["Solid Splash", 22] - ] - }, - { - "showIf": "{id_qmk_rgb_matrix_effect} > 1", - "label": "Effect Speed", - "type": "range", - "options": [0, 255], - "content": ["id_qmk_rgb_matrix_effect_speed", 3, 3] - }, - { - "showIf": "{id_qmk_rgb_matrix_effect} != 0 && ( {id_qmk_rgb_matrix_effect} < 4 || {id_qmk_rgb_matrix_effect} == 18 || ({id_qmk_rgb_matrix_effect} > 17 && {id_qmk_rgb_matrix_effect} != 21) ) ", - "label": "Color", - "type": "color", - "content": ["id_qmk_rgb_matrix_color", 3, 4] - } - ] - } - ] - } - ], - "customKeycodes": [ - {"name": "Left Option", "title": "Left Option", "shortName": "LOpt"}, - {"name": "Right Option", "title": "Right Option", "shortName": "ROpt"}, - {"name": "Left Cmd", "title": "Left Command", "shortName": "LCmd"}, - {"name": "Right Cmd", "title": "Right Command", "shortName": "RCmd"}, - {"name": "Misson Control", "title": "Misson Control, availabe in macOS", "shortName": "MCtrl"}, - {"name": "Launch pad", "title": "Launch pad, availabe in macOS", "shortName": "LPad"}, - {"name": "Task View", "title": "Task View in Windows", "shortName": "Task"}, - {"name": "File Explorer", "title": "File Explorer in Windows", "shortName": "File"}, - {"name": "Screen shot", "title": "Screenshot in macOS", "shortName": "SShot"}, - {"name": "Cortana", "title": "Cortana in Windows", "shortName": "Cortana"}, - {"name": "Siri", "title": "Siri in macOS", "shortName": "Siri"}, - {"name": "Bluetooth Host 1", "title": "Bluetooth Host 1", "shortName": "BT1"}, - {"name": "Bluetooth Host 2", "title": "Bluetooth Host 2", "shortName": "BT2"}, - {"name": "Bluetooth Host 3", "title": "Bluetooth Host 3", "shortName": "BT3"}, - {"name": "Battery Level", "title": "Show battery level", "shortName": "Batt"} - ], - "matrix": {"rows": 6, "cols": 16}, - "layouts": { - "keymap": [ - [ - { - "c": "#777777" - }, - "0,0\nESC", - { - "x": 0.25, - "c": "#cccccc" - }, - "0,1", - "0,2", - "0,3", - "0,4", - { - "x": 0.25 - }, - "0,5", - "0,6", - "0,7", - "0,8", - { - "x": 0.25 - }, - "0,9", - "0,10", - "0,11", - "0,12", - { - "x": 0.25, - "c": "#aaaaaa" - }, - "0,13", - { - "x": 0.25 - }, - "0,15\n\n\n\n\n\ne0" - ], - [ - "1,0", - { - "c": "#cccccc" - }, - "1,1", - "1,2", - "1,3", - "1,4", - "1,5", - "1,6", - "1,7", - "1,8", - "1,9", - "1,10", - "1,11", - "1,12", - { - "c": "#aaaaaa", - "w": 2 - }, - "1,13", - { - "x": 0.25 - }, - "1,15" - ], - [ - { - "w": 1.5 - }, - "2,0", - { - "c": "#cccccc" - }, - "2,1", - "2,2", - "2,3", - "2,4", - "2,5", - "2,6", - "2,7", - "2,8", - "2,9", - "2,10", - "2,11", - "2,12", - { - "w": 1.5 - }, - "2,13", - { - "x": 0.25, - "c": "#aaaaaa" - }, - "2,15" - ], - [ - { - "w": 1.75 - }, - "3,0", - { - "c": "#cccccc" - }, - "3,1", - "3,2", - "3,3", - "3,4", - "3,5", - "3,6", - "3,7", - "3,8", - "3,9", - "3,10", - "3,11", - { - "c": "#777777", - "w": 2.25 - }, - "3,13", - { - "x": 0.25, - "c": "#aaaaaa" - }, - "3,15" - ], - [ - { - "w": 2.25 - }, - "4,0", - { - "c": "#cccccc" - }, - "4,2", - "4,3", - "4,4", - "4,5", - "4,6", - "4,7", - "4,8", - "4,9", - "4,10", - "4,11", - { - "c": "#aaaaaa", - "w": 1.75 - }, - "4,13" - ], - [ - { - "y": -0.75, - "x": 14.25, - "c": "#777777" - }, - "4,14" - ], - [ - { - "y": -0.25, - "c": "#aaaaaa", - "w": 1.25 - }, - "5,0", - { - "w": 1.25 - }, - "5,1", - { - "w": 1.25 - }, - "5,2", - { - "c": "#cccccc", - "w": 6.25 - }, - "5,6", - { - "c": "#aaaaaa" - }, - "5,10", - "5,11", - "5,12" - ], - [ - { - "y": -0.75, - "x": 13.25, - "c": "#777777" - }, - "5,13", - "5,14", - "5,15" - ] - ] - } -} diff --git a/keyboards/keychron/q1_pro/via_json/q1_pro_iso_knob.json b/keyboards/keychron/q1_pro/via_json/q1_pro_iso_knob.json deleted file mode 100644 index 9ba798dd95..0000000000 --- a/keyboards/keychron/q1_pro/via_json/q1_pro_iso_knob.json +++ /dev/null @@ -1,292 +0,0 @@ -{ - "name": "Keychron Q1 Pro ISO Knob", - "vendorId": "0x3434", - "productId": "0x0611", - "keycodes": ["qmk_lighting"], - "menus": [ - { - "label": "Lighting", - "content": [ - { - "label": "Backlight", - "content": [ - { - "label": "Brightness", - "type": "range", - "options": [0, 255], - "content": ["id_qmk_rgb_matrix_brightness", 3, 1] - }, - { - "label": "Effect", - "type": "dropdown", - "content": ["id_qmk_rgb_matrix_effect", 3, 2], - "options": [ - ["None", 0], - ["Solid Color", 1], - ["Breathing", 2], - ["Band Spiral Val", 3], - ["Cycle All", 4], - ["Cycle Left Right", 5], - ["Cycle Up Down", 6], - ["Rainbow Moving Chevron", 7], - ["Cycle Out In", 8], - ["Cycle Out In Dual", 9], - ["Cycle Pinwheel", 10], - ["Cycle Spiral", 11], - ["Dual Beacon", 12], - ["Rainbow Beacon", 13], - ["Jellybean Raindrops", 14], - ["Pixel Rain", 15], - ["Typing Heatmap", 16], - ["Digital Rain", 17], - ["Reactive Simple", 18], - ["Reactive Multiwide", 19], - ["Reactive Multinexus", 20], - ["Splash", 21], - ["Solid Splash", 22] - ] - }, - { - "showIf": "{id_qmk_rgb_matrix_effect} > 1", - "label": "Effect Speed", - "type": "range", - "options": [0, 255], - "content": ["id_qmk_rgb_matrix_effect_speed", 3, 3] - }, - { - "showIf": "{id_qmk_rgb_matrix_effect} != 0 && ( {id_qmk_rgb_matrix_effect} < 4 || {id_qmk_rgb_matrix_effect} == 18 || ({id_qmk_rgb_matrix_effect} > 17 && {id_qmk_rgb_matrix_effect} != 21) ) ", - "label": "Color", - "type": "color", - "content": ["id_qmk_rgb_matrix_color", 3, 4] - } - ] - } - ] - } - ], - "customKeycodes": [ - {"name": "Left Option", "title": "Left Option", "shortName": "LOpt"}, - {"name": "Right Option", "title": "Right Option", "shortName": "ROpt"}, - {"name": "Left Cmd", "title": "Left Command", "shortName": "LCmd"}, - {"name": "Right Cmd", "title": "Right Command", "shortName": "RCmd"}, - {"name": "Misson Control", "title": "Misson Control, availabe in macOS", "shortName": "MCtrl"}, - {"name": "Launch pad", "title": "Launch pad, availabe in macOS", "shortName": "LPad"}, - {"name": "Task View", "title": "Task View in Windows", "shortName": "Task"}, - {"name": "File Explorer", "title": "File Explorer in Windows", "shortName": "File"}, - {"name": "Screen shot", "title": "Screenshot in macOS", "shortName": "SShot"}, - {"name": "Cortana", "title": "Cortana in Windows", "shortName": "Cortana"}, - {"name": "Siri", "title": "Siri in macOS", "shortName": "Siri"}, - {"name": "Bluetooth Host 1", "title": "Bluetooth Host 1", "shortName": "BT1"}, - {"name": "Bluetooth Host 2", "title": "Bluetooth Host 2", "shortName": "BT2"}, - {"name": "Bluetooth Host 3", "title": "Bluetooth Host 3", "shortName": "BT3"}, - {"name": "Battery Level", "title": "Show battery level", "shortName": "Batt"} - ], - "matrix": {"rows": 6, "cols": 16}, - "layouts": { - "keymap": [ - [ - { - "c": "#777777" - }, - "0,0\nESC", - { - "x": 0.25, - "c": "#cccccc" - }, - "0,1", - "0,2", - "0,3", - "0,4", - { - "x": 0.25, - "c": "#aaaaaa" - }, - "0,5", - "0,6", - "0,7", - "0,8", - { - "x": 0.25, - "c": "#cccccc" - }, - "0,9", - "0,10", - "0,11", - "0,12", - { - "x": 0.25, - "c": "#aaaaaa" - }, - "0,13", - { - "x": 0.25 - }, - "0,15\n\n\n\n\n\n\n\n\ne0" - ], - [ - { - "y": 0.25 - }, - "1,0", - { - "c": "#cccccc" - }, - "1,1", - "1,2", - "1,3", - "1,4", - "1,5", - "1,6", - "1,7", - "1,8", - "1,9", - "1,10", - "1,11", - "1,12", - { - "c": "#aaaaaa", - "w": 2 - }, - "1,13", - { - "x": 0.25 - }, - "1,15" - ], - [ - { - "w": 1.5 - }, - "2,0", - { - "c": "#cccccc" - }, - "2,1", - "2,2", - "2,3", - "2,4", - "2,5", - "2,6", - "2,7", - "2,8", - "2,9", - "2,10", - "2,11", - "2,12", - { - "x": 0.25, - "w": 1.25, - "h": 2, - "x2": -0.25, - "w2": 1.5, - "h2": 1, - "c": "#777777" - }, - "2,13", - { - "x": 0.25, - "c": "#aaaaaa" - }, - "2,15" - ], - [ - { - "w": 1.75 - }, - "3,0", - { - "c": "#cccccc" - }, - "3,1", - "3,2", - "3,3", - "3,4", - "3,5", - "3,6", - "3,7", - "3,8", - "3,9", - "3,10", - "3,11", - { - "c": "#aaaaaa" - }, - "3,13", - { - "x": 1.5 - }, - "3,15" - ], - [ - { - "w": 1.25 - }, - "4,0", - "4,1", - { - "c": "#cccccc" - }, - "4,2", - "4,3", - "4,4", - "4,5", - "4,6", - "4,7", - "4,8", - "4,9", - "4,10", - "4,11", - { - "c": "#aaaaaa", - "w": 1.75 - }, - "4,13" - ], - [ - { - "y": -0.75, - "x": 14.25, - "c": "#777777" - }, - "4,14" - ], - [ - { - "y": -0.25, - "c": "#aaaaaa", - "w": 1.25 - }, - "5,0", - { - "w": 1.25 - }, - "5,1", - { - "w": 1.25 - }, - "5,2", - { - "c": "#cccccc", - "w": 6.25 - }, - "5,6", - { - "c": "#aaaaaa" - }, - "5,10", - "5,11", - "5,12" - ], - [ - { - "y": -0.75, - "x": 13.25, - "c": "#777777" - }, - "5,13", - "5,14", - "5,15" - ] - ] - } -} diff --git a/keyboards/keychron/q2_max/ansi_encoder/ansi_encoder.c b/keyboards/keychron/q2_max/ansi_encoder/ansi_encoder.c deleted file mode 100644 index 749f6c7549..0000000000 --- a/keyboards/keychron/q2_max/ansi_encoder/ansi_encoder.c +++ /dev/null @@ -1,129 +0,0 @@ -/* Copyright 2024 @ 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/>. - */ - -#include "quantum.h" - -// clang-format off - -#ifdef RGB_MATRIX_ENABLE -const snled27351_led_t g_snled27351_leds[RGB_MATRIX_LED_COUNT] = { -/* Refer to SNLED27351 manual for these locations - * driver - * | R location - * | | G location - * | | | B location - * | | | | */ - {0, A_15, C_15, B_15}, - {0, A_14, C_14, B_14}, - {0, A_13, C_13, B_13}, - {0, A_12, C_12, B_12}, - {0, A_11, C_11, B_11}, - {0, A_10, C_10, B_10}, - {0, A_9, C_9, B_9}, - {0, A_8, C_8, B_8}, - {0, A_7, C_7, B_7}, - {0, A_6, C_6, B_6}, - {0, A_5, C_5, B_5}, - {0, A_4, C_4, B_4}, - {0, A_3, C_3, B_3}, - {0, A_2, C_2, B_2}, - - {0, D_15, F_15, E_15}, - {0, D_14, F_14, E_14}, - {0, D_13, F_13, E_13}, - {0, D_12, F_12, E_12}, - {0, D_11, F_11, E_11}, - {0, D_10, F_10, E_10}, - {0, D_9, F_9, E_9}, - {0, D_8, F_8, E_8}, - {0, D_7, F_7, E_7}, - {0, D_6, F_6, E_6}, - {0, D_5, F_5, E_5}, - {0, D_4, F_4, E_4}, - {0, D_3, F_3, E_3}, - {0, D_2, F_2, E_2}, - {0, D_1, F_1, E_1}, - - {1, A_15, C_15, B_15}, - {1, A_14, C_14, B_14}, - {1, A_13, C_13, B_13}, - {1, A_12, C_12, B_12}, - {1, A_11, C_11, B_11}, - {1, A_10, C_10, B_10}, - {1, A_9, C_9, B_9}, - {1, A_8, C_8, B_8}, - {1, A_7, C_7, B_7}, - {1, A_6, C_6, B_6}, - {1, A_5, C_5, B_5}, - {1, A_4, C_4, B_4}, - {1, A_3, C_3, B_3}, - {1, A_2, C_2, B_2}, - - {1, G_15, I_15, H_15}, - {1, G_13, I_13, H_13}, - {1, G_12, I_12, H_12}, - {1, G_11, I_11, H_11}, - {1, G_10, I_10, H_10}, - {1, G_9, I_9, H_9}, - {1, G_8, I_8, H_8}, - {1, G_7, I_7, H_7}, - {1, G_6, I_6, H_6}, - {1, G_5, I_5, H_5}, - {1, G_4, I_4, H_4}, - {1, G_2, I_2, H_2}, - {1, G_1, I_1, H_1}, - - {1, D_15, F_15, E_15}, - {1, D_14, F_14, E_14}, - {1, D_13, F_13, E_13}, - {1, D_9, F_9, E_9}, - {1, D_6, F_6, E_6}, - {1, D_5, F_5, E_5}, - {1, D_4, F_4, E_4}, - {1, D_3, F_3, E_3}, - {1, D_2, F_2, E_2}, - {1, D_1, F_1, E_1}, -}; - -#define __ NO_LED - -led_config_t g_led_config = { - { - // Key Matrix to LED Index - { 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, 40, 41, 42, __ }, - { 43, __, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, __, 54, 55 }, - { 56, 57, 58, __, __, __, 59, __, __, 60, 61, 62, 63, 64, 65 }, - }, - { - // LED Index to Physical Position - {0, 0}, {15, 0}, {29, 0}, {44, 0}, {59, 0}, {73, 0}, {88, 0}, {103, 0}, {117, 0}, {132, 0}, {146, 0}, {161, 0}, {176, 0}, {198, 0}, - {4,15}, {22,15}, {37,15}, {51,15}, {66,15}, {81,15}, {95,15}, {110,15}, {125,15}, {139,15}, {154,15}, {168,15}, {183,15}, {201,15}, {224,15}, - {6,30}, {26,30}, {40,30}, {55,30}, {70,30}, {84,30}, {99,30}, {114,30}, {128,30}, {143,30}, {158,30}, {172,30}, {196,30}, {224,30}, - {9,45}, {33,45}, {48,45}, {62,45}, {77,45}, {92,45}, {106,45}, {121,45}, {136,45}, {150,45}, {165,45}, {185,45}, {209,49}, - {2,60}, {20,60}, {38,60}, {94,60}, {147,60}, {161,60}, {176,60}, {195,64}, {209,64}, {224,64}, - }, - { - // RGB LED Index to Flag - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - } -}; -#endif diff --git a/keyboards/keychron/q2_max/ansi_encoder/config.h b/keyboards/keychron/q2_max/ansi_encoder/config.h deleted file mode 100644 index 1de8bdc5ca..0000000000 --- a/keyboards/keychron/q2_max/ansi_encoder/config.h +++ /dev/null @@ -1,53 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#pragma once - -#ifdef RGB_MATRIX_ENABLE -/* RGB Matrix driver configuration */ -# define DRIVER_COUNT 2 -# define RGB_MATRIX_LED_COUNT 66 - -# define SPI_SCK_PIN A5 -# define SPI_MISO_PIN A6 -# define SPI_MOSI_PIN A7 - -# define DRIVER_CS_PINS \ - { B8, B9 } -# define SNLED23751_SPI_DIVISOR 16 -# define SPI_DRIVER SPID1 - -/* Set LED driver current */ -# define SNLED27351_CURRENT_TUNE \ - { 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40 } - -/* Set to infinit, which is use in USB mode by default */ -# define RGB_MATRIX_TIMEOUT RGB_MATRIX_TIMEOUT_INFINITE - -/* Allow shutdown of led driver to save power */ -# define RGB_MATRIX_DRIVER_SHUTDOWN_ENABLE -/* Turn off backlight on low brightness to save power */ -# define RGB_MATRIX_BRIGHTNESS_TURN_OFF_VAL 32 - -/* Indications */ -# define CAPS_LOCK_INDEX 29 -# define LOW_BAT_IND_INDEX \ - { 59 } - -# define RGB_MATRIX_KEYPRESSES -# define RGB_MATRIX_FRAMEBUFFER_EFFECTS - -#endif diff --git a/keyboards/keychron/q2_max/ansi_encoder/info.json b/keyboards/keychron/q2_max/ansi_encoder/info.json deleted file mode 100644 index 24e54c7e2d..0000000000 --- a/keyboards/keychron/q2_max/ansi_encoder/info.json +++ /dev/null @@ -1,83 +0,0 @@ -{ - "usb": { - "pid": "0x0820", - "device_version": "1.0.0" - }, - "layouts": { - "LAYOUT_ansi_67": { - "layout": [ - {"matrix": [0, 0], "x": 0, "y": 0}, - {"matrix": [0, 1], "x": 1, "y": 0}, - {"matrix": [0, 2], "x": 2, "y": 0}, - {"matrix": [0, 3], "x": 3, "y": 0}, - {"matrix": [0, 4], "x": 4, "y": 0}, - {"matrix": [0, 5], "x": 5, "y": 0}, - {"matrix": [0, 6], "x": 6, "y": 0}, - {"matrix": [0, 7], "x": 7, "y": 0}, - {"matrix": [0, 8], "x": 8, "y": 0}, - {"matrix": [0, 9], "x": 9, "y": 0}, - {"matrix": [0, 10], "x": 10, "y": 0}, - {"matrix": [0, 11], "x": 11, "y": 0}, - {"matrix": [0, 12], "x": 12, "y": 0}, - {"matrix": [0, 13], "x": 13, "y": 0, "w": 2}, - {"matrix": [0, 14], "x": 15.25, "y": -0.25}, - - {"matrix": [1, 0], "x": 0, "y": 1, "w": 1.5}, - {"matrix": [1, 1], "x": 1.5, "y": 1}, - {"matrix": [1, 2], "x": 2.5, "y": 1}, - {"matrix": [1, 3], "x": 3.5, "y": 1}, - {"matrix": [1, 4], "x": 4.5, "y": 1}, - {"matrix": [1, 5], "x": 5.5, "y": 1}, - {"matrix": [1, 6], "x": 6.5, "y": 1}, - {"matrix": [1, 7], "x": 7.5, "y": 1}, - {"matrix": [1, 8], "x": 8.5, "y": 1}, - {"matrix": [1, 9], "x": 9.5, "y": 1}, - {"matrix": [1, 10], "x": 10.5, "y": 1}, - {"matrix": [1, 11], "x": 11.5, "y": 1}, - {"matrix": [1, 12], "x": 12.5, "y": 1}, - {"matrix": [1, 13], "x": 13.5, "y": 1, "w": 1.5}, - {"matrix": [1, 14], "x": 15.25, "y": 1}, - - {"matrix": [2, 0], "x": 0, "y": 2, "w": 1.75}, - {"matrix": [2, 1], "x": 1.75, "y": 2}, - {"matrix": [2, 2], "x": 2.75, "y": 2}, - {"matrix": [2, 3], "x": 3.75, "y": 2}, - {"matrix": [2, 4], "x": 4.75, "y": 2}, - {"matrix": [2, 5], "x": 5.75, "y": 2}, - {"matrix": [2, 6], "x": 6.75, "y": 2}, - {"matrix": [2, 7], "x": 7.75, "y": 2}, - {"matrix": [2, 8], "x": 8.75, "y": 2}, - {"matrix": [2, 9], "x": 9.75, "y": 2}, - {"matrix": [2, 10], "x": 10.75, "y": 2}, - {"matrix": [2, 11], "x": 11.75, "y": 2}, - {"matrix": [2, 12], "x": 12.75, "y": 2, "w": 2.25}, - {"matrix": [2, 13], "x": 15.25, "y": 2}, - - {"matrix": [3, 0], "x": 0, "y": 3, "w": 2.25}, - {"matrix": [3, 2], "x": 2.25, "y": 3}, - {"matrix": [3, 3], "x": 3.25, "y": 3}, - {"matrix": [3, 4], "x": 4.25, "y": 3}, - {"matrix": [3, 5], "x": 5.25, "y": 3}, - {"matrix": [3, 6], "x": 6.25, "y": 3}, - {"matrix": [3, 7], "x": 7.25, "y": 3}, - {"matrix": [3, 8], "x": 8.25, "y": 3}, - {"matrix": [3, 9], "x": 9.25, "y": 3}, - {"matrix": [3, 10], "x": 10.25, "y": 3}, - {"matrix": [3, 11], "x": 11.25, "y": 3}, - {"matrix": [3, 13], "x": 12.25, "y": 3, "w": 1.75}, - {"matrix": [3, 14], "x": 14.25, "y": 3.25}, - - {"matrix": [4, 0], "x": 0, "y": 4, "w": 1.25}, - {"matrix": [4, 1], "x": 1.25, "y": 4, "w": 1.25}, - {"matrix": [4, 2], "x": 2.5, "y": 4, "w": 1.25}, - {"matrix": [4, 6], "x": 3.75, "y": 4, "w": 6.25}, - {"matrix": [4, 9], "x": 10, "y": 4}, - {"matrix": [4, 10], "x": 11, "y": 4}, - {"matrix": [4, 11], "x": 12, "y": 4}, - {"matrix": [4, 12], "x": 13.25, "y": 4.25}, - {"matrix": [4, 13], "x": 14.25, "y": 4.25}, - {"matrix": [4, 14], "x": 15.25, "y": 4.25} - ] - } - } -} diff --git a/keyboards/keychron/q2_max/ansi_encoder/keymaps/default/keymap.c b/keyboards/keychron/q2_max/ansi_encoder/keymaps/default/keymap.c deleted file mode 100644 index f890e5a8b1..0000000000 --- a/keyboards/keychron/q2_max/ansi_encoder/keymaps/default/keymap.c +++ /dev/null @@ -1,82 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#include QMK_KEYBOARD_H -#include "keychron_common.h" - -enum layers { - MAC_BASE, - WIN_BASE, - MAC_FN1, - WIN_FN1, - _FN2, -}; - -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_ansi_67( - 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_MUTE, - 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_DEL, - 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_HOME, - 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_LCTL, KC_LOPTN, KC_LCMMD, KC_SPC, KC_RCMMD, MO(MAC_FN1), MO(_FN2), KC_LEFT, KC_DOWN, KC_RGHT), - - [WIN_BASE] = LAYOUT_ansi_67( - 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_MUTE, - 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_DEL, - 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_HOME, - 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_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(WIN_FN1), MO(_FN2), KC_LEFT, KC_DOWN, KC_RGHT), - - [MAC_FN1] = LAYOUT_ansi_67( - KC_GRV, KC_BRID, KC_BRIU, KC_MCTRL,KC_LNPAD,RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, RGB_TOG, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, KC_END, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, NK_TOGG, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - - [WIN_FN1] = LAYOUT_ansi_67( - KC_GRV, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, RGB_TOG, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, KC_END, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, NK_TOGG, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - - [_FN2] = LAYOUT_ansi_67( - KC_TILD, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______) -}; - -#if defined(ENCODER_MAP_ENABLE) -const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][2] = { - [MAC_BASE] = { ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [WIN_BASE] = { ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [MAC_FN1] = { ENCODER_CCW_CW(RGB_VAD, RGB_VAI)}, - [WIN_FN1] = { ENCODER_CCW_CW(RGB_VAD, RGB_VAI)}, - [_FN2] = { ENCODER_CCW_CW(_______, _______)}, -}; -#endif // ENCODER_MAP_ENABLE - -// clang-format on -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - if (!process_record_keychron_common(keycode, record)) { - return false; - } - return true; -} diff --git a/keyboards/keychron/q2_max/ansi_encoder/keymaps/via/keymap.c b/keyboards/keychron/q2_max/ansi_encoder/keymaps/via/keymap.c deleted file mode 100644 index 286aaa1cc9..0000000000 --- a/keyboards/keychron/q2_max/ansi_encoder/keymaps/via/keymap.c +++ /dev/null @@ -1,82 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#include QMK_KEYBOARD_H -#include "keychron_common.h" - -enum layers { - MAC_BASE, - WIN_BASE, - MAC_FN1, - WIN_FN1, - FN2, -}; - -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_ansi_67( - 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_MUTE, - 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_DEL, - 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_HOME, - 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_LCTL, KC_LOPTN, KC_LCMMD, KC_SPC, KC_RCMMD, MO(MAC_FN1),MO(FN2),KC_LEFT, KC_DOWN, KC_RGHT), - - [WIN_BASE] = LAYOUT_ansi_67( - 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_MUTE, - 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_DEL, - 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_HOME, - 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_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(WIN_FN1),MO(FN2),KC_LEFT, KC_DOWN, KC_RGHT), - - [MAC_FN1] = LAYOUT_ansi_67( - KC_GRV, KC_BRID, KC_BRIU, KC_MCTRL,KC_LNPAD,RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, RGB_TOG, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, KC_END, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, NK_TOGG, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - - [WIN_FN1] = LAYOUT_ansi_67( - KC_GRV, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, RGB_TOG, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, KC_END, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, NK_TOGG, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - - [FN2] = LAYOUT_ansi_67( - KC_TILD, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______) -}; - -#if defined(ENCODER_MAP_ENABLE) -const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][2] = { - [MAC_BASE] = { ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [WIN_BASE] = { ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [MAC_FN1] = { ENCODER_CCW_CW(RGB_VAD, RGB_VAI)}, - [WIN_FN1] = { ENCODER_CCW_CW(RGB_VAD, RGB_VAI)}, - [FN2] = { ENCODER_CCW_CW(_______, _______)}, -}; -#endif // ENCODER_MAP_ENABLE - -// clang-format on -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - if (!process_record_keychron_common(keycode, record)) { - return false; - } - return true; -} diff --git a/keyboards/keychron/q2_max/ansi_encoder/keymaps/via/rules.mk b/keyboards/keychron/q2_max/ansi_encoder/keymaps/via/rules.mk deleted file mode 100644 index 1e5b99807c..0000000000 --- a/keyboards/keychron/q2_max/ansi_encoder/keymaps/via/rules.mk +++ /dev/null @@ -1 +0,0 @@ -VIA_ENABLE = yes diff --git a/keyboards/keychron/q2_max/ansi_encoder/rules.mk b/keyboards/keychron/q2_max/ansi_encoder/rules.mk deleted file mode 100644 index 7ff128fa69..0000000000 --- a/keyboards/keychron/q2_max/ansi_encoder/rules.mk +++ /dev/null @@ -1 +0,0 @@ -# This file intentionally left blank \ No newline at end of file diff --git a/keyboards/keychron/q2_max/board.h b/keyboards/keychron/q2_max/board.h deleted file mode 100644 index 372694871c..0000000000 --- a/keyboards/keychron/q2_max/board.h +++ /dev/null @@ -1,226 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#pragma once - -#include_next - -// clang-format off - -/* Set GPIOA_SWDIO to INPUT & PIN_PUPDR_PULLUP to avoid FLOATING */ -#undef VAL_GPIOA_MODER -#define VAL_GPIOA_MODER (PIN_MODE_INPUT(GPIOA_BUTTON) | \ - PIN_MODE_INPUT(GPIOA_PIN1) | \ - PIN_MODE_INPUT(GPIOA_PIN2) | \ - PIN_MODE_INPUT(GPIOA_PIN3) | \ - PIN_MODE_ALTERNATE(GPIOA_CS43L22_LRCK) |\ - PIN_MODE_ALTERNATE(GPIOA_L3GD20_SCL) | \ - PIN_MODE_ALTERNATE(GPIOA_L3GD20_SD0) | \ - PIN_MODE_ALTERNATE(GPIOA_L3GD20_SDI) | \ - PIN_MODE_INPUT(GPIOA_PIN8) | \ - PIN_MODE_INPUT(GPIOA_VBUS_FS) | \ - PIN_MODE_ALTERNATE(GPIOA_OTG_FS_ID) | \ - PIN_MODE_ALTERNATE(GPIOA_OTG_FS_DM) | \ - PIN_MODE_ALTERNATE(GPIOA_OTG_FS_DP) | \ - PIN_MODE_INPUT(GPIOA_SWDIO) | \ - PIN_MODE_INPUT(GPIOA_SWCLK) | \ - PIN_MODE_INPUT(GPIOA_PIN15)) - -#undef VAL_GPIOA_PUPDR -#define VAL_GPIOA_PUPDR (PIN_PUPDR_FLOATING(GPIOA_BUTTON) | \ - PIN_PUPDR_PULLUP(GPIOA_PIN1) | \ - PIN_PUPDR_PULLUP(GPIOA_PIN2) | \ - PIN_PUPDR_PULLUP(GPIOA_PIN3) | \ - PIN_PUPDR_FLOATING(GPIOA_CS43L22_LRCK) |\ - PIN_PUPDR_FLOATING(GPIOA_L3GD20_SCL) | \ - PIN_PUPDR_PULLUP(GPIOA_L3GD20_SD0) | \ - PIN_PUPDR_PULLUP(GPIOA_L3GD20_SDI) | \ - PIN_PUPDR_PULLUP(GPIOA_PIN8) | \ - PIN_PUPDR_FLOATING(GPIOA_VBUS_FS) | \ - PIN_PUPDR_FLOATING(GPIOA_OTG_FS_ID) | \ - PIN_PUPDR_FLOATING(GPIOA_OTG_FS_DM) | \ - PIN_PUPDR_FLOATING(GPIOA_OTG_FS_DP) | \ - PIN_PUPDR_PULLUP(GPIOA_SWDIO) | \ - PIN_PUPDR_PULLUP(GPIOA_SWCLK) | \ - PIN_PUPDR_PULLUP(GPIOA_PIN15)) - -#undef VAL_GPIOB_MODER -#define VAL_GPIOB_MODER (PIN_MODE_INPUT(GPIOB_PIN0) | \ - PIN_MODE_INPUT(GPIOB_PIN1) | \ - PIN_MODE_INPUT(GPIOB_PIN2) | \ - PIN_MODE_INPUT(GPIOB_SWO) | \ - PIN_MODE_INPUT(GPIOB_PIN4) | \ - PIN_MODE_INPUT(GPIOB_PIN5) | \ - PIN_MODE_INPUT(GPIOB_LSM303DLHC_SCL) | \ - PIN_MODE_INPUT(GPIOB_PIN7) | \ - PIN_MODE_INPUT(GPIOB_PIN8) | \ - PIN_MODE_INPUT(GPIOB_LSM303DLHC_SDA) | \ - PIN_MODE_INPUT(GPIOB_MP45DT02_CLK_IN) |\ - PIN_MODE_INPUT(GPIOB_PIN11) | \ - PIN_MODE_INPUT(GPIOB_PIN12) | \ - PIN_MODE_INPUT(GPIOB_PIN13) | \ - PIN_MODE_INPUT(GPIOB_PIN14) | \ - PIN_MODE_INPUT(GPIOB_PIN15)) - -#undef VAL_GPIOB_PUPDR -#define VAL_GPIOB_PUPDR (PIN_PUPDR_PULLDOWN(GPIOB_PIN0) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN1) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN2) | \ - PIN_PUPDR_PULLDOWN(GPIOB_SWO) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN4) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN5) | \ - PIN_PUPDR_PULLDOWN(GPIOB_LSM303DLHC_SCL) |\ - PIN_PUPDR_PULLDOWN(GPIOB_PIN7) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN8) | \ - PIN_PUPDR_PULLDOWN(GPIOB_LSM303DLHC_SDA) |\ - PIN_PUPDR_PULLDOWN(GPIOB_MP45DT02_CLK_IN) |\ - PIN_PUPDR_PULLDOWN(GPIOB_PIN11) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN12) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN13) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN14) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN15)) - -#undef VAL_GPIOB_AFRL -#define VAL_GPIOB_AFRL (PIN_AFIO_AF(GPIOB_PIN0, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN1, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN2, 0U) | \ - PIN_AFIO_AF(GPIOB_SWO, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN4, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN5, 0U) | \ - PIN_AFIO_AF(GPIOB_LSM303DLHC_SCL, 0) | \ - PIN_AFIO_AF(GPIOB_PIN7, 0U)) - -#undef VAL_GPIOB_AFRH -#define VAL_GPIOB_AFRH (PIN_AFIO_AF(GPIOB_PIN8, 0U) | \ - PIN_AFIO_AF(GPIOB_LSM303DLHC_SDA, 0) | \ - PIN_AFIO_AF(GPIOB_MP45DT02_CLK_IN, 0U) |\ - PIN_AFIO_AF(GPIOB_PIN11, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN12, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN13, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN14, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN15, 0U)) - -/* C5 Need to be pulldown */ -#undef VAL_GPIOC_MODER -#define VAL_GPIOC_MODER (PIN_MODE_INPUT(GPIOC_OTG_FS_POWER_ON) |\ - PIN_MODE_INPUT(GPIOC_PIN1) | \ - PIN_MODE_INPUT(GPIOC_PIN2) | \ - PIN_MODE_INPUT(GPIOC_CS43L22_AIN4x) | \ - PIN_MODE_INPUT(GPIOC_PIN4) | \ - PIN_MODE_INPUT(GPIOC_PIN5) | \ - PIN_MODE_INPUT(GPIOC_PIN6) | \ - PIN_MODE_INPUT(GPIOC_CS43L22_MCLK) | \ - PIN_MODE_INPUT(GPIOC_PIN8) | \ - PIN_MODE_INPUT(GPIOC_PIN9) | \ - PIN_MODE_INPUT(GPIOC_CS43L22_SCLK) | \ - PIN_MODE_INPUT(GPIOC_PIN11) | \ - PIN_MODE_INPUT(GPIOC_CS43L22_SDIN) | \ - PIN_MODE_INPUT(GPIOC_PIN13) | \ - PIN_MODE_INPUT(GPIOC_OSC32_IN) | \ - PIN_MODE_INPUT(GPIOC_OSC32_OUT)) - -#undef VAL_GPIOC_PUPDR -#define VAL_GPIOC_PUPDR (PIN_PUPDR_PULLUP(GPIOC_OTG_FS_POWER_ON) |\ - PIN_PUPDR_PULLUP(GPIOC_PIN1) | \ - PIN_PUPDR_PULLUP(GPIOC_PIN2) | \ - PIN_PUPDR_PULLUP(GPIOC_CS43L22_AIN4x) |\ - PIN_PUPDR_PULLUP(GPIOC_PIN4) | \ - PIN_PUPDR_PULLDOWN(GPIOC_PIN5) | \ - PIN_PUPDR_PULLUP(GPIOC_PIN6) | \ - PIN_PUPDR_PULLUP(GPIOC_CS43L22_MCLK) | \ - PIN_PUPDR_PULLUP(GPIOC_PIN8) | \ - PIN_PUPDR_PULLUP(GPIOC_PIN9) | \ - PIN_PUPDR_PULLUP(GPIOC_CS43L22_SCLK) | \ - PIN_PUPDR_PULLUP(GPIOC_PIN11) | \ - PIN_PUPDR_PULLUP(GPIOC_CS43L22_SDIN) | \ - PIN_PUPDR_PULLUP(GPIOC_PIN13) | \ - PIN_PUPDR_PULLUP(GPIOC_OSC32_IN) | \ - PIN_PUPDR_PULLUP(GPIOC_OSC32_OUT)) - -/* Set all GPIOD pins to INPUT & PULLUP to avoid FLOATING */ -#undef VAL_GPIOD_MODER -#define VAL_GPIOD_MODER (PIN_MODE_INPUT(GPIOD_PIN0) | \ - PIN_MODE_INPUT(GPIOD_PIN1) | \ - PIN_MODE_INPUT(GPIOD_PIN2) | \ - PIN_MODE_INPUT(GPIOD_PIN3) | \ - PIN_MODE_INPUT(GPIOD_CS43L22_RESET) | \ - PIN_MODE_INPUT(GPIOD_OverCurrent) | \ - PIN_MODE_INPUT(GPIOD_PIN6) | \ - PIN_MODE_INPUT(GPIOD_PIN7) | \ - PIN_MODE_INPUT(GPIOD_PIN8) | \ - PIN_MODE_INPUT(GPIOD_PIN9) | \ - PIN_MODE_INPUT(GPIOD_PIN10) | \ - PIN_MODE_INPUT(GPIOD_PIN11) | \ - PIN_MODE_INPUT(GPIOD_LED4) | \ - PIN_MODE_INPUT(GPIOD_LED3) | \ - PIN_MODE_INPUT(GPIOD_LED5) | \ - PIN_MODE_INPUT(GPIOD_LED6)) - -#undef VAL_GPIOD_PUPDR -#define VAL_GPIOD_PUPDR (PIN_PUPDR_PULLUP(GPIOD_PIN0) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN1) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN2) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN3) | \ - PIN_PUPDR_PULLUP(GPIOD_CS43L22_RESET) |\ - PIN_PUPDR_PULLUP(GPIOD_OverCurrent) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN6) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN7) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN8) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN9) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN10) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN11) | \ - PIN_PUPDR_PULLUP(GPIOD_LED4) | \ - PIN_PUPDR_PULLUP(GPIOD_LED3) | \ - PIN_PUPDR_PULLUP(GPIOD_LED5) | \ - PIN_PUPDR_PULLUP(GPIOD_LED6)) - -/* Set all GPIOE pins to INPUT & PULLUP to avoid FLOATING */ -#undef VAL_GPIOE_MODER -#define VAL_GPIOE_MODER (PIN_MODE_INPUT(GPIOE_L3GD20_INT1) | \ - PIN_MODE_INPUT(GPIOE_L3GD20_INT2) | \ - PIN_MODE_INPUT(GPIOE_LSM303DLHC_DRDY) |\ - PIN_MODE_INPUT(GPIOE_L3GD20_CS) | \ - PIN_MODE_INPUT(GPIOE_LSM303DLHC_INT1) |\ - PIN_MODE_INPUT(GPIOE_LSM303DLHC_INT2) |\ - PIN_MODE_INPUT(GPIOE_PIN6) | \ - PIN_MODE_INPUT(GPIOE_PIN7) | \ - PIN_MODE_INPUT(GPIOE_PIN8) | \ - PIN_MODE_INPUT(GPIOE_PIN9) | \ - PIN_MODE_INPUT(GPIOE_PIN10) | \ - PIN_MODE_INPUT(GPIOE_PIN11) | \ - PIN_MODE_INPUT(GPIOE_PIN12) | \ - PIN_MODE_INPUT(GPIOE_PIN13) | \ - PIN_MODE_INPUT(GPIOE_PIN14) | \ - PIN_MODE_INPUT(GPIOE_PIN15)) - -#undef VAL_GPIOE_PUPDR -#define VAL_GPIOE_PUPDR (PIN_PUPDR_PULLUP(GPIOE_L3GD20_INT1) | \ - PIN_PUPDR_PULLUP(GPIOE_L3GD20_INT2) | \ - PIN_PUPDR_PULLUP(GPIOE_LSM303DLHC_DRDY) |\ - PIN_PUPDR_PULLUP(GPIOE_L3GD20_CS) | \ - PIN_PUPDR_PULLUP(GPIOE_LSM303DLHC_INT1) |\ - PIN_PUPDR_PULLUP(GPIOE_LSM303DLHC_INT2) |\ - PIN_PUPDR_PULLUP(GPIOE_PIN6) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN7) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN8) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN9) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN10) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN11) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN12) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN13) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN14) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN15)) - diff --git a/keyboards/keychron/q2_max/config.h b/keyboards/keychron/q2_max/config.h deleted file mode 100644 index 348317711c..0000000000 --- a/keyboards/keychron/q2_max/config.h +++ /dev/null @@ -1,80 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#pragma once - -/* Encoder Configuration */ -#define ENCODER_DEFAULT_POS 0x3 -#define ENCODER_MAP_KEY_DELAY 2 - -#ifdef LK_WIRELESS_ENABLE -/* Hardware configuration */ -# define P2P4_MODE_SELECT_PIN A10 -# define BT_MODE_SELECT_PIN A9 - -# define LKBT51_RESET_PIN C4 -# define LKBT51_INT_INPUT_PIN B1 -# define BLUETOOTH_INT_OUTPUT_PIN A4 - -# define USB_POWER_SENSE_PIN B0 -# define USB_POWER_CONNECTED_LEVEL 0 - -# define BAT_CHARGING_PIN B13 -# define BAT_CHARGING_LEVEL 0 - -# define BT_HOST_DEVICES_COUNT 3 - -# if defined(RGB_MATRIX_ENABLE) - -# define LED_DRIVER_SHUTDOWN_PIN B7 - -# define BT_HOST_LED_MATRIX_LIST \ - { 15, 16, 17 } - -# define P2P4G_HOST_LED_MATRIX_LIST \ - { 18 } - -# 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 - -/* Reinit LED driver on tranport changed */ -# define REINIT_LED_DRIVER 1 - -# endif - -/* Keep USB connection in blueooth mode */ -# define KEEP_USB_CONNECTION_IN_WIRELESS_MODE - -/* Enable bluetooth NKRO */ -# define WIRELESS_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 - -/* Factory test keys */ -#define FN_KEY_1 MO(4) - -#define MATRIX_IO_DELAY 10 diff --git a/keyboards/keychron/q2_max/firmware/keychron_q2_max_ansi_encoder_via.bin b/keyboards/keychron/q2_max/firmware/keychron_q2_max_ansi_encoder_via.bin deleted file mode 100644 index 1f8cf47b25..0000000000 Binary files a/keyboards/keychron/q2_max/firmware/keychron_q2_max_ansi_encoder_via.bin and /dev/null differ diff --git a/keyboards/keychron/q2_max/firmware/keychron_q2_max_iso_encoder_via.bin b/keyboards/keychron/q2_max/firmware/keychron_q2_max_iso_encoder_via.bin deleted file mode 100644 index caf9196df2..0000000000 Binary files a/keyboards/keychron/q2_max/firmware/keychron_q2_max_iso_encoder_via.bin and /dev/null differ diff --git a/keyboards/keychron/q2_max/halconf.h b/keyboards/keychron/q2_max/halconf.h deleted file mode 100644 index 37bcc7c47b..0000000000 --- a/keyboards/keychron/q2_max/halconf.h +++ /dev/null @@ -1,31 +0,0 @@ -/* Copyright 2024 @ 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 - -#define _CHIBIOS_HAL_CONF_VER_8_0_ - -#define HAL_USE_SPI TRUE - -#ifdef LK_WIRELESS_ENABLE -# define HAL_USE_RTC TRUE -#endif - -#if defined(LK_WIRELESS_ENABLE) || defined(ENCODER_ENABLE) -# define PAL_USE_CALLBACKS TRUE -#endif - -#include_next diff --git a/keyboards/keychron/q2_max/info.json b/keyboards/keychron/q2_max/info.json deleted file mode 100644 index e532f26f75..0000000000 --- a/keyboards/keychron/q2_max/info.json +++ /dev/null @@ -1,80 +0,0 @@ -{ - "keyboard_name": "Keychron Q2 Max", - "manufacturer": "Keychron", - "url": "https://github.com/Keychron", - "maintainer": "lokher", - "processor": "STM32F401", - "bootloader": "stm32-dfu", - "usb": { - "vid": "0x3434" - }, - "features": { - "bootmagic": true, - "extrakey" : true, - "mousekey" : true, - "dip_switch" : true, - "encoder": true, - "encoder_map": true, - "nkro" : true, - "rgb_matrix": true, - "raw" : true, - "send_string" : true - }, - "matrix_pins": { - "cols": ["C7", "C8", "A14", "A15", "C10", "C11", "C13", "C14", "C15", "C0", "C1", "C2", "C3", "A0", "A1"], - "rows": ["D2", "B3", "B4", "B5", "B6"] - }, - "diode_direction": "ROW2COL", - "encoder": { - "rotary": [ - { - "pin_a": "B14", - "pin_b": "B15" - } - ] - }, - "dip_switch" :{ - "pins": ["B12"] - }, - "rgb_matrix": { - "driver": "snled27351_spi", - "sleep": true, - "animations": { - "band_spiral_val": true, - "breathing": true, - "cycle_all": true, - "cycle_left_right": true, - "cycle_out_in": true, - "cycle_out_in_dual": true, - "cycle_pinwheel": true, - "cycle_spiral": true, - "cycle_up_down": true, - "digital_rain": true, - "dual_beacon": true, - "jellybean_raindrops": true, - "pixel_rain": true, - "rainbow_beacon": true, - "rainbow_moving_chevron": true, - "solid_reactive_multinexus": true, - "solid_reactive_multiwide": true, - "solid_reactive_simple": true, - "solid_splash": true, - "splash": true, - "typing_heatmap": true - } - }, - "eeprom": { - "wear_leveling": { - "driver": "embedded_flash", - "logical_size": 2048, - "backing_size": 4096 - } - }, - "dynamic_keymap": { - "layer_count": 5 - }, - "build": { - "debounce_type": "sym_eager_pk" - }, - "debounce": 20 -} diff --git a/keyboards/keychron/q2_max/iso_encoder/config.h b/keyboards/keychron/q2_max/iso_encoder/config.h deleted file mode 100644 index e7f7e3340c..0000000000 --- a/keyboards/keychron/q2_max/iso_encoder/config.h +++ /dev/null @@ -1,53 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#pragma once - -#ifdef RGB_MATRIX_ENABLE -/* RGB Matrix driver configuration */ -# define DRIVER_COUNT 2 -# define RGB_MATRIX_LED_COUNT 67 - -# define SPI_SCK_PIN A5 -# define SPI_MISO_PIN A6 -# define SPI_MOSI_PIN A7 - -# define DRIVER_CS_PINS \ - { B8, B9 } -# define SNLED23751_SPI_DIVISOR 16 -# define SPI_DRIVER SPID1 - -/* Set LED driver current */ -# define SNLED27351_CURRENT_TUNE \ - { 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40 } - -/* Set to infinit, which is use in USB mode by default */ -# define RGB_MATRIX_TIMEOUT RGB_MATRIX_TIMEOUT_INFINITE - -/* Allow shutdown of led driver to save power */ -# define RGB_MATRIX_DRIVER_SHUTDOWN_ENABLE -/* Turn off backlight on low brightness to save power */ -# define RGB_MATRIX_BRIGHTNESS_TURN_OFF_VAL 32 - -/* Indications */ -# define CAPS_LOCK_INDEX 29 -# define LOW_BAT_IND_INDEX \ - { 60 } - -# define RGB_MATRIX_KEYPRESSES -# define RGB_MATRIX_FRAMEBUFFER_EFFECTS - -#endif diff --git a/keyboards/keychron/q2_max/iso_encoder/info.json b/keyboards/keychron/q2_max/iso_encoder/info.json deleted file mode 100644 index 75babf87c1..0000000000 --- a/keyboards/keychron/q2_max/iso_encoder/info.json +++ /dev/null @@ -1,84 +0,0 @@ -{ - "usb": { - "pid": "0x0821", - "device_version": "1.0.0" - }, - "layouts": { - "LAYOUT_iso_68": { - "layout": [ - {"matrix": [0, 0], "x": 0, "y": 0}, - {"matrix": [0, 1], "x": 1, "y": 0}, - {"matrix": [0, 2], "x": 2, "y": 0}, - {"matrix": [0, 3], "x": 3, "y": 0}, - {"matrix": [0, 4], "x": 4, "y": 0}, - {"matrix": [0, 5], "x": 5, "y": 0}, - {"matrix": [0, 6], "x": 6, "y": 0}, - {"matrix": [0, 7], "x": 7, "y": 0}, - {"matrix": [0, 8], "x": 8, "y": 0}, - {"matrix": [0, 9], "x": 9, "y": 0}, - {"matrix": [0, 10], "x": 10, "y": 0}, - {"matrix": [0, 11], "x": 11, "y": 0}, - {"matrix": [0, 12], "x": 12, "y": 0}, - {"matrix": [0, 13], "x": 13, "y": 0, "w": 2}, - {"matrix": [0, 14], "x": 15.25, "y": -0.25}, - - {"matrix": [1, 0], "x": 0, "y": 1, "w": 1.5}, - {"matrix": [1, 1], "x": 1.5, "y": 1}, - {"matrix": [1, 2], "x": 2.5, "y": 1}, - {"matrix": [1, 3], "x": 3.5, "y": 1}, - {"matrix": [1, 4], "x": 4.5, "y": 1}, - {"matrix": [1, 5], "x": 5.5, "y": 1}, - {"matrix": [1, 6], "x": 6.5, "y": 1}, - {"matrix": [1, 7], "x": 7.5, "y": 1}, - {"matrix": [1, 8], "x": 8.5, "y": 1}, - {"matrix": [1, 9], "x": 9.5, "y": 1}, - {"matrix": [1, 10], "x": 10.5, "y": 1}, - {"matrix": [1, 11], "x": 11.5, "y": 1}, - {"matrix": [1, 12], "x": 12.5, "y": 1}, - {"matrix": [1, 14], "x": 15.25, "y": 1}, - - {"matrix": [2, 0], "x": 0, "y": 2, "w": 1.75}, - {"matrix": [2, 1], "x": 1.75, "y": 2}, - {"matrix": [2, 2], "x": 2.75, "y": 2}, - {"matrix": [2, 3], "x": 3.75, "y": 2}, - {"matrix": [2, 4], "x": 4.75, "y": 2}, - {"matrix": [2, 5], "x": 5.75, "y": 2}, - {"matrix": [2, 6], "x": 6.75, "y": 2}, - {"matrix": [2, 7], "x": 7.75, "y": 2}, - {"matrix": [2, 8], "x": 8.75, "y": 2}, - {"matrix": [2, 9], "x": 9.75, "y": 2}, - {"matrix": [2, 10], "x": 10.75, "y": 2}, - {"matrix": [2, 11], "x": 11.75, "y": 2}, - {"matrix": [2, 12], "x": 12.75, "y": 2}, - {"matrix": [1, 13], "x": 13.25, "y": 1.5, "w": 1.25, "h": 2}, - {"matrix": [2, 13], "x": 15.25, "y": 2}, - - {"matrix": [3, 0], "x": 0, "y": 3, "w": 1.25}, - {"matrix": [3, 1], "x": 1.25, "y": 3}, - {"matrix": [3, 2], "x": 2.25, "y": 3}, - {"matrix": [3, 3], "x": 3.25, "y": 3}, - {"matrix": [3, 4], "x": 4.25, "y": 3}, - {"matrix": [3, 5], "x": 5.25, "y": 3}, - {"matrix": [3, 6], "x": 6.25, "y": 3}, - {"matrix": [3, 7], "x": 7.25, "y": 3}, - {"matrix": [3, 8], "x": 8.25, "y": 3}, - {"matrix": [3, 9], "x": 9.25, "y": 3}, - {"matrix": [3, 10], "x": 10.25, "y": 3}, - {"matrix": [3, 11], "x": 11.25, "y": 3}, - {"matrix": [3, 13], "x": 12.25, "y": 3, "w": 1.75}, - {"matrix": [3, 14], "x": 14.25, "y": 3.25}, - - {"matrix": [4, 0], "x": 0, "y": 4, "w": 1.25}, - {"matrix": [4, 1], "x": 1.25, "y": 4, "w": 1.25}, - {"matrix": [4, 2], "x": 2.5, "y": 4, "w": 1.25}, - {"matrix": [4, 6], "x": 3.75, "y": 4, "w": 6.25}, - {"matrix": [4, 9], "x": 10, "y": 4}, - {"matrix": [4, 10], "x": 11, "y": 4}, - {"matrix": [4, 11], "x": 12, "y": 4}, - {"matrix": [4, 12], "x": 13.25, "y": 4.25}, - {"matrix": [4, 13], "x": 14.25, "y": 4.25}, - {"matrix": [4, 14], "x": 15.25, "y": 4.25} - ] - } - } -} diff --git a/keyboards/keychron/q2_max/iso_encoder/iso_encoder.c b/keyboards/keychron/q2_max/iso_encoder/iso_encoder.c deleted file mode 100644 index 6b156aeeed..0000000000 --- a/keyboards/keychron/q2_max/iso_encoder/iso_encoder.c +++ /dev/null @@ -1,130 +0,0 @@ -/* Copyright 2024 @ 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/>. - */ - -#include "quantum.h" - -// clang-format off - -#ifdef RGB_MATRIX_ENABLE -const snled27351_led_t g_snled27351_leds[RGB_MATRIX_LED_COUNT] = { -/* Refer to SNLED27351 manual for these locations - * driver - * | R location - * | | G location - * | | | B location - * | | | | */ - {0, A_15, C_15, B_15}, - {0, A_14, C_14, B_14}, - {0, A_13, C_13, B_13}, - {0, A_12, C_12, B_12}, - {0, A_11, C_11, B_11}, - {0, A_10, C_10, B_10}, - {0, A_9, C_9, B_9}, - {0, A_8, C_8, B_8}, - {0, A_7, C_7, B_7}, - {0, A_6, C_6, B_6}, - {0, A_5, C_5, B_5}, - {0, A_4, C_4, B_4}, - {0, A_3, C_3, B_3}, - {0, A_2, C_2, B_2}, - - {0, D_15, F_15, E_15}, - {0, D_14, F_14, E_14}, - {0, D_13, F_13, E_13}, - {0, D_12, F_12, E_12}, - {0, D_11, F_11, E_11}, - {0, D_10, F_10, E_10}, - {0, D_9, F_9, E_9}, - {0, D_8, F_8, E_8}, - {0, D_7, F_7, E_7}, - {0, D_6, F_6, E_6}, - {0, D_5, F_5, E_5}, - {0, D_4, F_4, E_4}, - {0, D_3, F_3, E_3}, - {0, D_2, F_2, E_2}, - {0, D_1, F_1, E_1}, - - {1, A_15, C_15, B_15}, - {1, A_14, C_14, B_14}, - {1, A_13, C_13, B_13}, - {1, A_12, C_12, B_12}, - {1, A_11, C_11, B_11}, - {1, A_10, C_10, B_10}, - {1, A_9, C_9, B_9}, - {1, A_8, C_8, B_8}, - {1, A_7, C_7, B_7}, - {1, A_6, C_6, B_6}, - {1, A_5, C_5, B_5}, - {1, A_4, C_4, B_4}, - {1, A_3, C_3, B_3}, - {1, A_2, C_2, B_2}, - - {1, G_15, I_15, H_15}, - {1, G_14, I_14, H_14}, - {1, G_13, I_13, H_13}, - {1, G_12, I_12, H_12}, - {1, G_11, I_11, H_11}, - {1, G_10, I_10, H_10}, - {1, G_9, I_9, H_9}, - {1, G_8, I_8, H_8}, - {1, G_7, I_7, H_7}, - {1, G_6, I_6, H_6}, - {1, G_5, I_5, H_5}, - {1, G_4, I_4, H_4}, - {1, G_2, I_2, H_2}, - {1, G_1, I_1, H_1}, - - {1, D_15, F_15, E_15}, - {1, D_14, F_14, E_14}, - {1, D_13, F_13, E_13}, - {1, D_9, F_9, E_9}, - {1, D_6, F_6, E_6}, - {1, D_5, F_5, E_5}, - {1, D_4, F_4, E_4}, - {1, D_3, F_3, E_3}, - {1, D_2, F_2, E_2}, - {1, D_1, F_1, E_1}, -}; - -#define __ NO_LED - -led_config_t g_led_config = { - { - // Key Matrix to LED Index - { 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, 40, 41, 42, __ }, - { 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, __, 55, 56 }, - { 57, 58, 59, __, __, __, 60, __, __, 61, 62, 63, 64, 65, 66 }, - }, - { - // LED Index to Physical Position - {0, 0}, {15, 0}, {29, 0}, {44, 0}, {59, 0}, {73, 0}, {88, 0}, {103, 0}, {117, 0}, {132, 0}, {146, 0}, {161, 0}, {176, 0}, {198, 0}, - {4,15}, {22,15}, {37,15}, {51,15}, {66,15}, {81,15}, {95,15}, {110,15}, {125,15}, {139,15}, {154,15}, {168,15}, {183,15}, {203,23}, {224,15}, - {6,30}, {26,30}, {40,30}, {55,30}, {70,30}, {84,30}, {99,30}, {114,30}, {128,30}, {143,30}, {158,30}, {172,30}, {187,30}, {224,30}, - {2,45}, {18,45}, {33,45}, {48,45}, {62,45}, {77,45}, {92,45}, {106,45}, {121,45}, {136,45}, {150,45}, {165,45}, {185,45}, {209,49}, - {2,60}, {20,60}, {38,60}, {94,60}, {147,60}, {161,60}, {176,60}, {195,64}, {209,64}, {224,64} - }, - { - // RGB LED Index to Flag - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 - } -}; -#endif diff --git a/keyboards/keychron/q2_max/iso_encoder/keymaps/default/keymap.c b/keyboards/keychron/q2_max/iso_encoder/keymaps/default/keymap.c deleted file mode 100644 index 347d05974b..0000000000 --- a/keyboards/keychron/q2_max/iso_encoder/keymaps/default/keymap.c +++ /dev/null @@ -1,82 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#include QMK_KEYBOARD_H -#include "keychron_common.h" - -enum layers { - MAC_BASE, - WIN_BASE, - MAC_FN1, - WIN_FN1, - FN2, -}; - -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_iso_68( - 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_MUTE, - 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_DEL, - 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_NUHS, KC_ENT, KC_HOME, - KC_LSFT, KC_NUBS, 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_LCTL, KC_LOPTN, KC_LCMMD, KC_SPC, KC_RCMMD, MO(MAC_FN1),MO(FN2),KC_LEFT, KC_DOWN, KC_RGHT), - - [WIN_BASE] = LAYOUT_iso_68( - 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_MUTE, - 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_DEL, - 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_NUHS, KC_ENT, KC_HOME, - KC_LSFT, KC_NUBS, 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_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(WIN_FN1),MO(FN2),KC_LEFT, KC_DOWN, KC_RGHT), - - [MAC_FN1] = LAYOUT_iso_68( - KC_GRV, KC_BRID, KC_BRIU, KC_MCTRL,KC_LNPAD,RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, RGB_TOG, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, KC_END, - _______, _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, NK_TOGG, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - - [WIN_FN1] = LAYOUT_iso_68( - KC_GRV, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, RGB_TOG, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, KC_END, - _______, _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, NK_TOGG, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - - [FN2] = LAYOUT_iso_68( - KC_TILD, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, BAT_LVL, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______) -}; - -#if defined(ENCODER_MAP_ENABLE) -const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][2] = { - [MAC_BASE] = { ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [WIN_BASE] = { ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [MAC_FN1] = { ENCODER_CCW_CW(RGB_VAD, RGB_VAI)}, - [WIN_FN1] = { ENCODER_CCW_CW(RGB_VAD, RGB_VAI)}, - [FN2] = { ENCODER_CCW_CW(_______, _______)} -}; -#endif // ENCODER_MAP_ENABLE - -// clang-format on -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - if (!process_record_keychron_common(keycode, record)) { - return false; - } - return true; -} diff --git a/keyboards/keychron/q2_max/iso_encoder/keymaps/via/keymap.c b/keyboards/keychron/q2_max/iso_encoder/keymaps/via/keymap.c deleted file mode 100644 index 347d05974b..0000000000 --- a/keyboards/keychron/q2_max/iso_encoder/keymaps/via/keymap.c +++ /dev/null @@ -1,82 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#include QMK_KEYBOARD_H -#include "keychron_common.h" - -enum layers { - MAC_BASE, - WIN_BASE, - MAC_FN1, - WIN_FN1, - FN2, -}; - -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_iso_68( - 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_MUTE, - 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_DEL, - 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_NUHS, KC_ENT, KC_HOME, - KC_LSFT, KC_NUBS, 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_LCTL, KC_LOPTN, KC_LCMMD, KC_SPC, KC_RCMMD, MO(MAC_FN1),MO(FN2),KC_LEFT, KC_DOWN, KC_RGHT), - - [WIN_BASE] = LAYOUT_iso_68( - 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_MUTE, - 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_DEL, - 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_NUHS, KC_ENT, KC_HOME, - KC_LSFT, KC_NUBS, 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_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(WIN_FN1),MO(FN2),KC_LEFT, KC_DOWN, KC_RGHT), - - [MAC_FN1] = LAYOUT_iso_68( - KC_GRV, KC_BRID, KC_BRIU, KC_MCTRL,KC_LNPAD,RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, RGB_TOG, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, KC_END, - _______, _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, NK_TOGG, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - - [WIN_FN1] = LAYOUT_iso_68( - KC_GRV, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, RGB_TOG, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, KC_END, - _______, _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, NK_TOGG, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - - [FN2] = LAYOUT_iso_68( - KC_TILD, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, BAT_LVL, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______) -}; - -#if defined(ENCODER_MAP_ENABLE) -const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][2] = { - [MAC_BASE] = { ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [WIN_BASE] = { ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [MAC_FN1] = { ENCODER_CCW_CW(RGB_VAD, RGB_VAI)}, - [WIN_FN1] = { ENCODER_CCW_CW(RGB_VAD, RGB_VAI)}, - [FN2] = { ENCODER_CCW_CW(_______, _______)} -}; -#endif // ENCODER_MAP_ENABLE - -// clang-format on -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - if (!process_record_keychron_common(keycode, record)) { - return false; - } - return true; -} diff --git a/keyboards/keychron/q2_max/iso_encoder/keymaps/via/rules.mk b/keyboards/keychron/q2_max/iso_encoder/keymaps/via/rules.mk deleted file mode 100644 index 1e5b99807c..0000000000 --- a/keyboards/keychron/q2_max/iso_encoder/keymaps/via/rules.mk +++ /dev/null @@ -1 +0,0 @@ -VIA_ENABLE = yes diff --git a/keyboards/keychron/q2_max/iso_encoder/rules.mk b/keyboards/keychron/q2_max/iso_encoder/rules.mk deleted file mode 100644 index 7ff128fa69..0000000000 --- a/keyboards/keychron/q2_max/iso_encoder/rules.mk +++ /dev/null @@ -1 +0,0 @@ -# This file intentionally left blank \ No newline at end of file diff --git a/keyboards/keychron/q2_max/mcuconf.h b/keyboards/keychron/q2_max/mcuconf.h deleted file mode 100644 index 89294ee64b..0000000000 --- a/keyboards/keychron/q2_max/mcuconf.h +++ /dev/null @@ -1,37 +0,0 @@ -/* Copyright 2024 @ 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 - -#include_next - -#undef STM32_HSECLK -#define STM32_HSECLK 16000000 - -#undef STM32_PLLM_VALUE -#define STM32_PLLM_VALUE 8 - -#undef STM32_PLLN_VALUE -#define STM32_PLLN_VALUE 96 - -#undef STM32_PLLP_VALUE -#define STM32_PLLP_VALUE 4 - -#undef STM32_PLLQ_VALUE -#define STM32_PLLQ_VALUE 4 - -#undef STM32_SPI_USE_SPI1 -#define STM32_SPI_USE_SPI1 TRUE diff --git a/keyboards/keychron/q2_max/q2_max.c b/keyboards/keychron/q2_max/q2_max.c deleted file mode 100644 index 0c4361f4e2..0000000000 --- a/keyboards/keychron/q2_max/q2_max.c +++ /dev/null @@ -1,61 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#include "quantum.h" -#include "keychron_task.h" -#ifdef FACTORY_TEST_ENABLE -# include "factory_test.h" -# include "keychron_common.h" -#endif -#ifdef LK_WIRELESS_ENABLE -# include "lkbt51.h" -# include "wireless.h" -# include "keychron_wireless_common.h" -# include "battery.h" -#endif - -#ifdef DIP_SWITCH_ENABLE -bool dip_switch_update_kb(uint8_t index, bool active) { - if (index == 0) { - default_layer_set(1UL << (active ? 1 : 0)); - } - dip_switch_update_user(index, active); - - return true; -} -#endif - -void keyboard_post_init_kb(void) { -#ifdef LK_WIRELESS_ENABLE - palSetLineMode(P2P4_MODE_SELECT_PIN, PAL_MODE_INPUT); - palSetLineMode(BT_MODE_SELECT_PIN, PAL_MODE_INPUT); - - lkbt51_init(false); - wireless_init(); -#endif - -#ifdef ENCODER_ENABLE - encoder_cb_init(); -#endif - - keyboard_post_init_user(); -} - -#ifdef LK_WIRELESS_ENABLE -bool lpm_is_kb_idle(void) { - return !factory_reset_indicating(); -} -#endif diff --git a/keyboards/keychron/q2_max/readme.md b/keyboards/keychron/q2_max/readme.md deleted file mode 100644 index 4638cca960..0000000000 --- a/keyboards/keychron/q2_max/readme.md +++ /dev/null @@ -1,21 +0,0 @@ -# Keychron Q2 Max - -![Keychron Q2 Max](https://cdn.shopify.com/s/files/1/0059/0630/1017/files/Keychron-Q2-Max-65_-Layout-Wireless-Custom-Mechanical-Keyboard-Carbon-Black.jpg?v=1703917113) - -A customizable 65% keyboard. - -* Keyboard Maintainer: [Keychron](https://github.com/keychron) -* Hardware Supported: Keychron Q2 Max -* Hardware Availability: [Keychron Q2 Max QMK/VIA Wireless Custom Mechanical Keyboard](https://www.keychron.com/products/keychron-q2-max-qmk-via-wireless-custom-mechanical-keyboard) - -Make example for this keyboard (after setting up your build environment): - - make keychron/q2_max/ansi_encoder:default - -Flashing example for this keyboard: - - make keychron/q2_max/ansi_encoder:default:flash - -**Reset Key**: Toggle mode switch to "Cable", hold down the *Esc* key or reset button underneath space bar while connecting the USB cable, - -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). diff --git a/keyboards/keychron/q2_max/rules.mk b/keyboards/keychron/q2_max/rules.mk deleted file mode 100644 index 4eaf6820bc..0000000000 --- a/keyboards/keychron/q2_max/rules.mk +++ /dev/null @@ -1,4 +0,0 @@ -include keyboards/keychron/common/wireless/wireless.mk -include keyboards/keychron/common/keychron_common.mk - -VPATH += $(TOP_DIR)/keyboards/keychron diff --git a/keyboards/keychron/q2_max/via_json/q2_ansi_encoder.json b/keyboards/keychron/q2_max/via_json/q2_ansi_encoder.json deleted file mode 100644 index fcc60fdaad..0000000000 --- a/keyboards/keychron/q2_max/via_json/q2_ansi_encoder.json +++ /dev/null @@ -1,250 +0,0 @@ -{ - "name": "Keychron Q2 Max ANSI Knob", - "vendorId": "0x3434", - "productId": "0x0820", - "keycodes": ["qmk_lighting"], - "menus": [ - { - "label": "Lighting", - "content": [ - { - "label": "Backlight", - "content": [ - { - "label": "Brightness", - "type": "range", - "options": [0, 255], - "content": ["id_qmk_rgb_matrix_brightness", 3, 1] - }, - { - "label": "Effect", - "type": "dropdown", - "content": ["id_qmk_rgb_matrix_effect", 3, 2], - "options": [ - ["None", 0], - ["Solid Color", 1], - ["Breathing", 2], - ["Band Spiral Val", 3], - ["Cycle All", 4], - ["Cycle Left Right", 5], - ["Cycle Up Down", 6], - ["Rainbow Moving Chevron", 7], - ["Cycle Out In", 8], - ["Cycle Out In Dual", 9], - ["Cycle Pinwheel", 10], - ["Cycle Spiral", 11], - ["Dual Beacon", 12], - ["Rainbow Beacon", 13], - ["Jellybean Raindrops", 14], - ["Pixel Rain", 15], - ["Typing Heatmap", 16], - ["Digital Rain", 17], - ["Reactive Simple", 18], - ["Reactive Multiwide", 19], - ["Reactive Multinexus", 20], - ["Splash", 21], - ["Solid Splash", 22] - ] - }, - { - "showIf": "{id_qmk_rgb_matrix_effect} > 1", - "label": "Effect Speed", - "type": "range", - "options": [0, 255], - "content": ["id_qmk_rgb_matrix_effect_speed", 3, 3] - }, - { - "showIf": "{id_qmk_rgb_matrix_effect} != 0 && ( {id_qmk_rgb_matrix_effect} < 4 || {id_qmk_rgb_matrix_effect} == 18 || ({id_qmk_rgb_matrix_effect} > 17 && {id_qmk_rgb_matrix_effect} != 21) ) ", - "label": "Color", - "type": "color", - "content": ["id_qmk_rgb_matrix_color", 3, 4] - } - ] - } - ] - } - ], - "customKeycodes": [ - {"name": "Left Option", "title": "Left Option", "shortName": "LOpt"}, - {"name": "Right Option", "title": "Right Option", "shortName": "ROpt"}, - {"name": "Left Cmd", "title": "Left Command", "shortName": "LCmd"}, - {"name": "Right Cmd", "title": "Right Command", "shortName": "RCmd"}, - {"name": "Misson Control", "title": "Misson Control in Mac", "shortName": "MCtl"}, - {"name": "Lanuch Pad", "title": "Lanuch Pad in Windows", "shortName": "LPad"}, - {"name": "Task View", "title": "Task View in Windows", "shortName": "Task"}, - {"name": "File Explorer", "title": "File Explorer in Windows", "shortName": "File"}, - {"name": "Screen shot", "title": "Screenshot in macOS", "shortName": "SShot"}, - {"name": "Cortana", "title": "Cortana in Windows", "shortName": "Cortana"}, - {"name": "Siri", "title": "Siri in macOS", "shortName": "Siri"}, - {"name": "Bluetooth Host 1", "title": "Bluetooth Host 1", "shortName": "BTH1"}, - {"name": "Bluetooth Host 2", "title": "Bluetooth Host 2", "shortName": "BTH2"}, - {"name": "Bluetooth Host 3", "title": "Bluetooth Host 3", "shortName": "BTH3"}, - {"name": "2.4G", "title": "2.4G", "shortName": "2.4G"}, - {"name": "Battery Level", "title": "Show battery level", "shortName": "Batt"} - ], - "matrix": {"rows": 5, "cols" : 15}, - "layouts": { - "keymap": [ - [ - { - "c": "#777777" - }, - "0, 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, - "c": "#aaaaaa" - }, - "0, 13", - { - "x": 0.25, - "y": -0.25 - }, - "0, 14\n\n\n\n\n\n\n\n\ne0" - ], - [ - { - "y": 0.25, - "w": 1.5, - "c": "#aaaaaa" - }, - "1, 0", - { - "c": "#cccccc" - }, - "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, - "c": "#aaaaaa" - }, - "1, 13", - { - "x": 0.25 - }, - "1, 14" - ], - [ - { - "w": 1.75, - "c": "#aaaaaa" - }, - "2, 0", - { - "c": "#cccccc" - }, - "2, 1", - "2, 2", - "2, 3", - "2, 4", - "2, 5", - "2, 6", - "2, 7", - "2, 8", - "2, 9", - "2, 10", - "2, 11", - { - "w": 2.25, - "c": "#777777" - }, - "2, 12", - { - "x": 0.25, - "c": "#aaaaaa" - }, - "2, 13" - ], - [ - { - "w": 2.25, - "c": "#aaaaaa" - }, - "3, 0", - { - "c": "#cccccc" - }, - "3, 2", - "3, 3", - "3, 4", - "3, 5", - "3, 6", - "3, 7", - "3, 8", - "3, 9", - "3, 10", - "3, 11", - { - "w": 1.75, - "c": "#aaaaaa" - }, - "3, 13", - { - "x": 0.25, - "y": 0.25, - "c": "#cccccc" - }, - "3, 14" - ], - [ - { - "y": -0.25, - "w": 1.25, - "c": "#aaaaaa" - }, - "4, 0", - { - "w": 1.25 - }, - "4, 1", - { - "w": 1.25 - }, - "4, 2", - { - "w": 6.25, - "c": "#cccccc" - }, - "4, 6", - { - "c": "#aaaaaa" - }, - "4, 9", - "4, 10", - "4, 11", - { - "x": 0.25, - "y": 0.25, - "c": "#cccccc" - }, - "4, 12", - "4, 13", - "4, 14" - ] - ] - } -} diff --git a/keyboards/keychron/q2_pro/ansi_encoder/ansi_encoder.c b/keyboards/keychron/q2_pro/ansi_encoder/ansi_encoder.c deleted file mode 100644 index a76fe1e3d5..0000000000 --- a/keyboards/keychron/q2_pro/ansi_encoder/ansi_encoder.c +++ /dev/null @@ -1,98 +0,0 @@ -/* 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 . - */ - -#include "quantum.h" - -#ifdef RGB_MATRIX_ENABLE -const snled27351_led_t g_snled27351_leds[RGB_MATRIX_LED_COUNT] = { -/* Refer to snled27351manual for these locations - * driver - * | R location - * | | G location - * | | | B location - * | | | | */ - {0, C_16, A_16, B_16}, - {0, C_15, A_15, B_15}, - {0, C_14, A_14, B_14}, - {0, C_13, A_13, B_13}, - {0, C_12, A_12, B_12}, - {0, C_11, A_11, B_11}, - {0, C_10, A_10, B_10}, - {0, C_9, A_9, B_9}, - {0, C_8, A_8, B_8}, - {0, C_7, A_7, B_7}, - {0, C_6, A_6, B_6}, - {0, C_5, A_5, B_5}, - {0, C_4, A_4, B_4}, - {0, C_3, A_3, B_3}, - - {0, F_16, D_16, E_16}, - {0, F_15, D_15, E_15}, - {0, F_14, D_14, E_14}, - {0, F_13, D_13, E_13}, - {0, F_12, D_12, E_12}, - {0, F_11, D_11, E_11}, - {0, F_10, D_10, E_10}, - {0, F_9, D_9, E_9}, - {0, F_8, D_8, E_8}, - {0, F_7, D_7, E_7}, - {0, F_6, D_6, E_6}, - {0, F_5, D_5, E_5}, - {0, F_4, D_4, E_4}, - {0, F_3, D_3, E_3}, - {0, F_1, D_1, E_1}, - - {1, C_16, A_16, B_16}, - {1, C_15, A_15, B_15}, - {1, C_14, A_14, B_14}, - {1, C_13, A_13, B_13}, - {1, C_12, A_12, B_12}, - {1, C_11, A_11, B_11}, - {1, C_10, A_10, B_10}, - {1, C_9, A_9, B_9}, - {1, C_8, A_8, B_8}, - {1, C_7, A_7, B_7}, - {1, C_6, A_6, B_6}, - {1, C_5, A_5, B_5}, - {1, C_3, A_3, B_3}, - {1, C_1, A_1, B_1}, - - {1, I_16, G_16, H_16}, - {1, I_14, G_14, H_14}, - {1, I_13, G_13, H_13}, - {1, I_12, G_12, H_12}, - {1, I_11, G_11, H_11}, - {1, I_10, G_10, H_10}, - {1, I_9, G_9, H_9}, - {1, I_8, G_8, H_8}, - {1, I_7, G_7, H_7}, - {1, I_6, G_6, H_6}, - {1, I_5, G_5, H_5}, - {1, I_3, G_3, H_3}, - {1, I_2, G_2, H_2}, - - {1, F_16, D_16, E_16}, - {1, F_15, D_15, E_15}, - {1, F_14, D_14, E_14}, - {1, F_10, D_10, E_10}, - {1, F_6, D_6, E_6}, - {1, F_5, D_5, E_5}, - {1, F_4, D_4, E_4}, - {1, F_3, D_3, E_3}, - {1, F_2, D_2, E_2}, - {1, F_1, D_1, E_1}, -}; -#endif diff --git a/keyboards/keychron/q2_pro/ansi_encoder/config.h b/keyboards/keychron/q2_pro/ansi_encoder/config.h deleted file mode 100644 index cdfe584974..0000000000 --- a/keyboards/keychron/q2_pro/ansi_encoder/config.h +++ /dev/null @@ -1,55 +0,0 @@ -/* 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 . - */ - -#pragma once - -/* Encoder Configuration */ -#define ENCODER_DEFAULT_POS 0x3 - -#ifdef RGB_MATRIX_ENABLE -/* RGB Matrix Driver Configuration */ -# define DRIVER_COUNT 2 -# define DRIVER_ADDR_1 0b1110111 -# define DRIVER_ADDR_2 0b1110100 - -/* RGB Matrix Configuration */ -# define DRIVER_1_LED_TOTAL 29 -# define DRIVER_2_LED_TOTAL 37 -# define RGB_MATRIX_LED_COUNT (DRIVER_1_LED_TOTAL + DRIVER_2_LED_TOTAL) - -/* Set to infinit, which is use in USB mode by default */ -# define RGB_MATRIX_TIMEOUT RGB_MATRIX_TIMEOUT_INFINITE - -/* Allow to shutdown driver to save power */ -# define RGB_MATRIX_DRIVER_SHUTDOWN_ENABLE - -/* Turn off backllit if brightness value is low */ -# define RGB_MATRIX_BRIGHTNESS_TURN_OFF_VAL 48 - -/* Indication led index */ -# define CAPS_LOCK_INDEX 29 -# define LOW_BAT_IND_INDEX 59 - -# define RGB_MATRIX_KEYPRESSES -# define RGB_MATRIX_FRAMEBUFFER_EFFECTS - -/* Use the first 9 channels of led driver */ -# define PHASE_CHANNEL MSKPHASE_9CHANNEL - -/* Set LED driver current */ -# define SNLED27351_CURRENT_TUNE \ - { 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40 } -#endif diff --git a/keyboards/keychron/q2_pro/ansi_encoder/info.json b/keyboards/keychron/q2_pro/ansi_encoder/info.json deleted file mode 100644 index 0353c9eaed..0000000000 --- a/keyboards/keychron/q2_pro/ansi_encoder/info.json +++ /dev/null @@ -1,157 +0,0 @@ -{ - "usb": { - "pid": "0x0620", - "device_version": "1.0.0" - }, - "layouts": { - "LAYOUT_ansi_knob_67": { - "layout": [ - {"matrix":[0,0], "x":0, "y":0.25}, - {"matrix":[0,1], "x":1, "y":0.25}, - {"matrix":[0,2], "x":2, "y":0.25}, - {"matrix":[0,3], "x":3, "y":0.25}, - {"matrix":[0,4], "x":4, "y":0.25}, - {"matrix":[0,5], "x":5, "y":0.25}, - {"matrix":[0,6], "x":6, "y":0.25}, - {"matrix":[0,7], "x":7, "y":0.25}, - {"matrix":[0,8], "x":8, "y":0.25}, - {"matrix":[0,9], "x":9, "y":0.25}, - {"matrix":[0,10], "x":10, "y":0.25}, - {"matrix":[0,11], "x":11, "y":0.25}, - {"matrix":[0,12], "x":12, "y":0.25}, - {"matrix":[0,13], "x":13, "y":0.25, "w":2}, - {"matrix":[0,15], "x":15.25, "y":0}, - - {"matrix":[1,0], "x":0, "y":1.25, "w":1.5}, - {"matrix":[1,1], "x":1.5, "y":1.25}, - {"matrix":[1,2], "x":2.5, "y":1.25}, - {"matrix":[1,3], "x":3.5, "y":1.25}, - {"matrix":[1,4], "x":4.5, "y":1.25}, - {"matrix":[1,5], "x":5.5, "y":1.25}, - {"matrix":[1,6], "x":6.5, "y":1.25}, - {"matrix":[1,7], "x":7.5, "y":1.25}, - {"matrix":[1,8], "x":8.5, "y":1.25}, - {"matrix":[1,9], "x":9.5, "y":1.25}, - {"matrix":[1,10], "x":10.5, "y":1.25}, - {"matrix":[1,11], "x":11.5, "y":1.25}, - {"matrix":[1,12], "x":12.5, "y":1.25}, - {"matrix":[1,13], "x":13.5, "y":1.25, "w":1.5}, - {"matrix":[1,15], "x":15.25, "y":1.25}, - - {"matrix":[2,0], "x":0, "y":2.25, "w":1.75}, - {"matrix":[2,1], "x":1.75, "y":2.25}, - {"matrix":[2,2], "x":2.75, "y":2.25}, - {"matrix":[2,3], "x":3.75, "y":2.25}, - {"matrix":[2,4], "x":4.75, "y":2.25}, - {"matrix":[2,5], "x":5.75, "y":2.25}, - {"matrix":[2,6], "x":6.75, "y":2.25}, - {"matrix":[2,7], "x":7.75, "y":2.25}, - {"matrix":[2,8], "x":8.75, "y":2.25}, - {"matrix":[2,9], "x":9.75, "y":2.25}, - {"matrix":[2,10], "x":10.75, "y":2.25}, - {"matrix":[2,11], "x":11.75, "y":2.25}, - {"matrix":[2,13], "x":12.75, "y":2.25, "w":2.25}, - {"matrix":[2,15], "x":15.25, "y":2.25}, - - {"matrix":[3,0], "x":0, "y":3.25, "w":2.25}, - {"matrix":[3,2], "x":2.25, "y":3.25}, - {"matrix":[3,3], "x":3.25, "y":3.25}, - {"matrix":[3,4], "x":4.25, "y":3.25}, - {"matrix":[3,5], "x":5.25, "y":3.25}, - {"matrix":[3,6], "x":6.25, "y":3.25}, - {"matrix":[3,7], "x":7.25, "y":3.25}, - {"matrix":[3,8], "x":8.25, "y":3.25}, - {"matrix":[3,9], "x":9.25, "y":3.25}, - {"matrix":[3,10], "x":10.25, "y":3.25}, - {"matrix":[3,11], "x":11.25, "y":3.25}, - {"matrix":[3,13], "x":12.25, "y":3.25, "w":1.75}, - {"matrix":[3,14], "x":14.25, "y":3.5}, - - {"matrix":[4,0], "x":0, "y":4.25, "w":1.24}, - {"matrix":[4,1], "x":1.24, "y":4.25, "w":1.25}, - {"matrix":[4,2], "x":2.49, "y":4.25, "w":1.25}, - {"matrix":[4,6], "x":3.74, "y":4.25, "w":6.25}, - {"matrix":[4,10], "x":9.99, "y":4.25}, - {"matrix":[4,11], "x":10.99, "y":4.25}, - {"matrix":[4,12], "x":11.99, "y":4.25}, - {"matrix":[4,13], "x":13.25, "y":4.5}, - {"matrix":[4,14], "x":14.25, "y":4.5}, - {"matrix":[4,15], "x":15.25, "y":4.5} - ] - } - }, - "rgb_matrix": { - "layout": [ - {"matrix":[0, 0], "flags":1, "x":0, "y":3}, - {"matrix":[0, 1], "flags":1, "x":14, "y":3}, - {"matrix":[0, 2], "flags":4, "x":29, "y":3}, - {"matrix":[0, 3], "flags":4, "x":43, "y":3}, - {"matrix":[0, 4], "flags":4, "x":58, "y":3}, - {"matrix":[0, 5], "flags":4, "x":73, "y":3}, - {"matrix":[0, 6], "flags":4, "x":87, "y":3}, - {"matrix":[0, 7], "flags":4, "x":102, "y":3}, - {"matrix":[0, 8], "flags":4, "x":117, "y":3}, - {"matrix":[0, 9], "flags":4, "x":131, "y":3}, - {"matrix":[0, 10], "flags":4, "x":146, "y":3}, - {"matrix":[0, 11], "flags":4, "x":161, "y":3}, - {"matrix":[0, 12], "flags":4, "x":175, "y":3}, - {"matrix":[0, 13], "flags":1, "x":197, "y":3}, - - {"matrix":[1, 0], "flags":1, "x":3, "y":17}, - {"matrix":[1, 1], "flags":8, "x":21, "y":17}, - {"matrix":[1, 2], "flags":8, "x":36, "y":17}, - {"matrix":[1, 3], "flags":8, "x":51, "y":17}, - {"matrix":[1, 4], "flags":4, "x":65, "y":17}, - {"matrix":[1, 5], "flags":4, "x":80, "y":17}, - {"matrix":[1, 6], "flags":4, "x":95, "y":17}, - {"matrix":[1, 7], "flags":4, "x":109, "y":17}, - {"matrix":[1, 8], "flags":4, "x":124, "y":17}, - {"matrix":[1, 9], "flags":4, "x":139, "y":17}, - {"matrix":[1, 10], "flags":4, "x":153, "y":17}, - {"matrix":[1, 11], "flags":4, "x":168, "y":17}, - {"matrix":[1, 12], "flags":4, "x":183, "y":17}, - {"matrix":[1, 13], "flags":1, "x":201, "y":17}, - {"matrix":[1, 15], "flags":1, "x":223, "y":17}, - - {"matrix":[2, 0], "flags":8, "x":5, "y":32}, - {"matrix":[2, 1], "flags":4, "x":25, "y":32}, - {"matrix":[2, 2], "flags":4, "x":40, "y":32}, - {"matrix":[2, 3], "flags":4, "x":54, "y":32}, - {"matrix":[2, 4], "flags":4, "x":69, "y":32}, - {"matrix":[2, 5], "flags":4, "x":84, "y":32}, - {"matrix":[2, 6], "flags":4, "x":98, "y":32}, - {"matrix":[2, 7], "flags":4, "x":113, "y":32}, - {"matrix":[2, 8], "flags":4, "x":128, "y":32}, - {"matrix":[2, 9], "flags":4, "x":142, "y":32}, - {"matrix":[2, 10], "flags":4, "x":157, "y":32}, - {"matrix":[2, 11], "flags":4, "x":172, "y":32}, - {"matrix":[2, 13], "flags":1, "x":195, "y":32}, - {"matrix":[2, 15], "flags":1, "x":223, "y":32}, - - {"matrix":[3, 0], "flags":1, "x":9, "y":47}, - {"matrix":[3, 2], "flags":4, "x":32, "y":47}, - {"matrix":[3, 3], "flags":4, "x":47, "y":47}, - {"matrix":[3, 4], "flags":4, "x":62, "y":47}, - {"matrix":[3, 5], "flags":4, "x":76, "y":47}, - {"matrix":[3, 6], "flags":4, "x":91, "y":47}, - {"matrix":[3, 7], "flags":4, "x":106, "y":47}, - {"matrix":[3, 8], "flags":4, "x":120, "y":47}, - {"matrix":[3, 9], "flags":4, "x":135, "y":47}, - {"matrix":[3, 10], "flags":4, "x":150, "y":47}, - {"matrix":[3, 11], "flags":4, "x":164, "y":47}, - {"matrix":[3, 13], "flags":1, "x":185, "y":47}, - {"matrix":[3, 14], "flags":1, "x":209, "y":49}, - - {"matrix":[4, 0], "flags":1, "x":1, "y":62}, - {"matrix":[4, 1], "flags":1, "x":20, "y":62}, - {"matrix":[4, 2], "flags":1, "x":38, "y":62}, - {"matrix":[4, 6], "flags":4, "x":93, "y":62}, - {"matrix":[4, 10], "flags":1, "x":146, "y":62}, - {"matrix":[4, 11], "flags":1, "x":161, "y":62}, - {"matrix":[4, 12], "flags":1, "x":176, "y":62}, - {"matrix":[4, 13], "flags":1, "x":194, "y":64}, - {"matrix":[4, 14], "flags":1, "x":209, "y":64}, - {"matrix":[4, 15], "flags":1, "x":223, "y":64} - ] - } -} diff --git a/keyboards/keychron/q2_pro/ansi_encoder/keymaps/default/keymap.c b/keyboards/keychron/q2_pro/ansi_encoder/keymaps/default/keymap.c deleted file mode 100644 index 30ccf36a45..0000000000 --- a/keyboards/keychron/q2_pro/ansi_encoder/keymaps/default/keymap.c +++ /dev/null @@ -1,73 +0,0 @@ -/* 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 . - */ - -#include QMK_KEYBOARD_H - -enum layers { - MAC_BASE, - WIN_BASE, - MAC_FN1, - WIN_FN1, - FN2, -}; - -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_ansi_knob_67( - 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_MUTE, - 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_DEL, - 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_HOME, - 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_LCTL, KC_LOPTN, KC_LCMMD, KC_SPC, KC_RCMMD,MO(MAC_FN1),MO(FN2), KC_LEFT, KC_DOWN, KC_RGHT), - - [WIN_BASE] = LAYOUT_ansi_knob_67( - 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_MUTE, - 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_DEL, - 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_HOME, - 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_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(WIN_FN1),MO(FN2), KC_LEFT, KC_DOWN, KC_RGHT), - - [MAC_FN1] = LAYOUT_ansi_knob_67( - KC_GRV, KC_BRID, KC_BRIU, KC_MCTL, KC_LPAD, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, RGB_TOG, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, NK_TOGG, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - - [WIN_FN1] = LAYOUT_ansi_knob_67( - KC_GRV, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, RGB_TOG, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, NK_TOGG, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - - [FN2] = LAYOUT_ansi_knob_67( - KC_TILD, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), -}; - -#if defined(ENCODER_MAP_ENABLE) -const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][2] = { - [MAC_BASE] = {ENCODER_CCW_CW(KC_VOLD, KC_VOLU) }, - [WIN_BASE] = {ENCODER_CCW_CW(KC_VOLD, KC_VOLU) }, - [MAC_FN1] = {ENCODER_CCW_CW(RGB_VAD, RGB_VAI) }, - [WIN_FN1] = {ENCODER_CCW_CW(RGB_VAD, RGB_VAI) }, - [FN2] = {ENCODER_CCW_CW(_______, _______) } -}; -#endif // ENCODER_MAP_ENABLE diff --git a/keyboards/keychron/q2_pro/ansi_encoder/keymaps/default/rules.mk b/keyboards/keychron/q2_pro/ansi_encoder/keymaps/default/rules.mk deleted file mode 100644 index ee32568148..0000000000 --- a/keyboards/keychron/q2_pro/ansi_encoder/keymaps/default/rules.mk +++ /dev/null @@ -1 +0,0 @@ -ENCODER_MAP_ENABLE = yes diff --git a/keyboards/keychron/q2_pro/ansi_encoder/keymaps/via/keymap.c b/keyboards/keychron/q2_pro/ansi_encoder/keymaps/via/keymap.c deleted file mode 100644 index 2d94a88fe5..0000000000 --- a/keyboards/keychron/q2_pro/ansi_encoder/keymaps/via/keymap.c +++ /dev/null @@ -1,74 +0,0 @@ -/* 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 . - */ - -#include QMK_KEYBOARD_H - -enum layers { - MAC_BASE, - WIN_BASE, - MAC_FN1, - WIN_FN1, - FN2, -}; - -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_ansi_knob_67( - 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_MUTE, - 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_DEL, - 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_HOME, - 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_LCTL, KC_LOPTN, KC_LCMMD, KC_SPC, KC_RCMMD,MO(MAC_FN1),MO(FN2), KC_LEFT, KC_DOWN, KC_RGHT), - - [WIN_BASE] = LAYOUT_ansi_knob_67( - 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_MUTE, - 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_DEL, - 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_HOME, - 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_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(WIN_FN1),MO(FN2), KC_LEFT, KC_DOWN, KC_RGHT), - - [MAC_FN1] = LAYOUT_ansi_knob_67( - KC_GRV, KC_BRID, KC_BRIU, KC_MCTL, KC_LPAD, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, RGB_TOG, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, NK_TOGG, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - - [WIN_FN1] = LAYOUT_ansi_knob_67( - KC_GRV, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, RGB_TOG, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, NK_TOGG, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - - [FN2] = LAYOUT_ansi_knob_67( - KC_TILD, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), -}; - -#if defined(ENCODER_MAP_ENABLE) -const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][2] = { - [MAC_BASE] = {ENCODER_CCW_CW(KC_VOLD, KC_VOLU) }, - [WIN_BASE] = {ENCODER_CCW_CW(KC_VOLD, KC_VOLU) }, - [MAC_FN1] = {ENCODER_CCW_CW(RGB_VAD, RGB_VAI) }, - [WIN_FN1] = {ENCODER_CCW_CW(RGB_VAD, RGB_VAI) }, - [FN2] = {ENCODER_CCW_CW(_______, _______) } -}; -#endif // ENCODER_MAP_ENABLE - diff --git a/keyboards/keychron/q2_pro/ansi_encoder/keymaps/via/rules.mk b/keyboards/keychron/q2_pro/ansi_encoder/keymaps/via/rules.mk deleted file mode 100644 index f1adcab005..0000000000 --- a/keyboards/keychron/q2_pro/ansi_encoder/keymaps/via/rules.mk +++ /dev/null @@ -1,2 +0,0 @@ -VIA_ENABLE = yes -ENCODER_MAP_ENABLE = yes diff --git a/keyboards/keychron/q2_pro/ansi_encoder/rules.mk b/keyboards/keychron/q2_pro/ansi_encoder/rules.mk deleted file mode 100644 index f886ea2e8e..0000000000 --- a/keyboards/keychron/q2_pro/ansi_encoder/rules.mk +++ /dev/null @@ -1 +0,0 @@ -# This file intentionally blank \ No newline at end of file diff --git a/keyboards/keychron/q2_pro/config.h b/keyboards/keychron/q2_pro/config.h deleted file mode 100644 index 48a8a61a79..0000000000 --- a/keyboards/keychron/q2_pro/config.h +++ /dev/null @@ -1,86 +0,0 @@ -/* 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 . - */ - -#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 \ - { 16, 17, 18 } - -# define BAT_LEVEL_LED_LIST \ - { 16, 17, 18, 19, 20, 21, 22, 23, 24, 25 } - -/* 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 WEAR_LEVELING_LOGICAL_SIZE 2048 -#define WEAR_LEVELING_BACKING_SIZE (WEAR_LEVELING_LOGICAL_SIZE * 2) -#define DYNAMIC_KEYMAP_EEPROM_MAX_ADDR 2047 - -/* Encoder Configuration */ -#ifdef ENCODER_ENABLE -# define ENCODER_DEFAULT_POS 0x3 -#endif - -/* Factory test keys */ -#define FN_KEY2 MO(4) diff --git a/keyboards/keychron/q2_pro/halconf.h b/keyboards/keychron/q2_pro/halconf.h deleted file mode 100644 index 8d8e138e4e..0000000000 --- a/keyboards/keychron/q2_pro/halconf.h +++ /dev/null @@ -1,29 +0,0 @@ -/* Copyright 2023 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 _CHIBIOS_HAL_CONF_VER_8_0_ - -#define HAL_USE_I2C TRUE - -#ifdef KC_BLUETOOTH_ENABLE -# define PAL_USE_CALLBACKS TRUE -# define HAL_USE_SERIAL TRUE -# define HAL_USE_RTC TRUE -#endif - -#include_next diff --git a/keyboards/keychron/q2_pro/info.json b/keyboards/keychron/q2_pro/info.json deleted file mode 100644 index 9b2eecc2dc..0000000000 --- a/keyboards/keychron/q2_pro/info.json +++ /dev/null @@ -1,66 +0,0 @@ -{ - "keyboard_name": "Keychron Q2 Pro", - "manufacturer": "Keychron", - "url": "https://github.com/Keychron", - "maintainer": "lokher", - "processor": "STM32L432", - "bootloader": "stm32-dfu", - "usb": { - "vid": "0x3434" - }, - "features": { - "bootmagic": true, - "mousekey": true, - "extrakey": true, - "nkro": true, - "dip_switch": true, - "encoder": true, - "rgb_matrix": true, - "raw": true - }, - "diode_direction": "ROW2COL", - "matrix_size": { - "rows": 5, - "cols": 16 - }, - "matrix_pins": { - "rows": ["B4", "B3", "A15", "A14", "A13"], - "cols": [null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null], - "custom": true, - "custom_lite": true - }, - "encoder": { - "rotary": [ - {"pin_a": "A10", "pin_b": "A0", "resolution": 4} - ] - }, - "dynamic_keymap": { - "layer_count": 5 - }, - "rgb_matrix": { - "driver": "snled27351", - "animations": { - "breathing": true, - "band_spiral_val": true, - "cycle_all": true, - "cycle_left_right": true, - "cycle_up_down": true, - "rainbow_moving_chevron": true, - "cycle_out_in": true, - "cycle_out_in_dual": true, - "cycle_pinwheel": true, - "cycle_spiral": true, - "dual_beacon": true, - "rainbow_beacon": true, - "jellybean_raindrops": true, - "pixel_rain": true, - "typing_heatmap": true, - "digital_rain": true, - "solid_reactive_simple": true, - "solid_reactive_multiwide": true, - "solid_reactive_multinexus": true, - "splash": true, - "solid_splash": true - } - } -} diff --git a/keyboards/keychron/q2_pro/iso_encoder/config.h b/keyboards/keychron/q2_pro/iso_encoder/config.h deleted file mode 100644 index 0e3cd95f81..0000000000 --- a/keyboards/keychron/q2_pro/iso_encoder/config.h +++ /dev/null @@ -1,55 +0,0 @@ -/* 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 . - */ - -#pragma once - -/* Encoder Configuration */ -#define ENCODER_DEFAULT_POS 0x3 - -#ifdef RGB_MATRIX_ENABLE -/* RGB Matrix Driver Configuration */ -# define DRIVER_COUNT 2 -# define DRIVER_ADDR_1 0b1110111 -# define DRIVER_ADDR_2 0b1110100 - -/* RGB Matrix Configuration */ -# define DRIVER_1_LED_TOTAL 29 -# define DRIVER_2_LED_TOTAL 38 -# define RGB_MATRIX_LED_COUNT (DRIVER_1_LED_TOTAL + DRIVER_2_LED_TOTAL) - -/* Set to infinit, which is use in USB mode by default */ -# define RGB_MATRIX_TIMEOUT RGB_MATRIX_TIMEOUT_INFINITE - -/* Allow to shutdown driver to save power */ -# define RGB_MATRIX_DRIVER_SHUTDOWN_ENABLE - -/* Turn off backllit if brightness value is low */ -# define RGB_MATRIX_BRIGHTNESS_TURN_OFF_VAL 48 - -/* Indication led index */ -# define CAPS_LOCK_INDEX 28 -# define LOW_BAT_IND_INDEX 60 - -# define RGB_MATRIX_KEYPRESSES -# define RGB_MATRIX_FRAMEBUFFER_EFFECTS - -/* Use the first 9 channels of led driver */ -# define PHASE_CHANNEL MSKPHASE_9CHANNEL - -/* Set LED driver current */ -# define SNLED27351_CURRENT_TUNE \ - { 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40 } -#endif diff --git a/keyboards/keychron/q2_pro/iso_encoder/info.json b/keyboards/keychron/q2_pro/iso_encoder/info.json deleted file mode 100644 index 6d44e9db90..0000000000 --- a/keyboards/keychron/q2_pro/iso_encoder/info.json +++ /dev/null @@ -1,160 +0,0 @@ -{ - "usb": { - "pid": "0x0621", - "device_version": "1.0.0" - }, - "layouts": { - "LAYOUT_iso_68": { - "layout": [ - {"matrix":[0,0], "x":0, "y":0.25}, - {"matrix":[0,1], "x":1, "y":0.25}, - {"matrix":[0,2], "x":2, "y":0.25}, - {"matrix":[0,3], "x":3, "y":0.25}, - {"matrix":[0,4], "x":4, "y":0.25}, - {"matrix":[0,5], "x":5, "y":0.25}, - {"matrix":[0,6], "x":6, "y":0.25}, - {"matrix":[0,7], "x":7, "y":0.25}, - {"matrix":[0,8], "x":8, "y":0.25}, - {"matrix":[0,9], "x":9, "y":0.25}, - {"matrix":[0,10], "x":10, "y":0.25}, - {"matrix":[0,11], "x":11, "y":0.25}, - {"matrix":[0,12], "x":12, "y":0.25}, - {"matrix":[0,13], "x":13, "y":0.25, "w":2}, - {"matrix":[0,15], "x":15.25, "y":0}, - - {"matrix":[1,0], "x":0, "y":1.25, "w":1.5}, - {"matrix":[1,1], "x":1.5, "y":1.25}, - {"matrix":[1,2], "x":2.5, "y":1.25}, - {"matrix":[1,3], "x":3.5, "y":1.25}, - {"matrix":[1,4], "x":4.5, "y":1.25}, - {"matrix":[1,5], "x":5.5, "y":1.25}, - {"matrix":[1,6], "x":6.5, "y":1.25}, - {"matrix":[1,7], "x":7.5, "y":1.25}, - {"matrix":[1,8], "x":8.5, "y":1.25}, - {"matrix":[1,9], "x":9.5, "y":1.25}, - {"matrix":[1,10], "x":10.5, "y":1.25}, - {"matrix":[1,11], "x":11.5, "y":1.25}, - {"matrix":[1,12], "x":12.5, "y":1.25}, - {"matrix":[1,15], "x":15.25, "y":1.25}, - - {"matrix":[2,0], "x":0, "y":2.25, "w":1.75}, - {"matrix":[2,1], "x":1.75, "y":2.25}, - {"matrix":[2,2], "x":2.75, "y":2.25}, - {"matrix":[2,3], "x":3.75, "y":2.25}, - {"matrix":[2,4], "x":4.75, "y":2.25}, - {"matrix":[2,5], "x":5.75, "y":2.25}, - {"matrix":[2,6], "x":6.75, "y":2.25}, - {"matrix":[2,7], "x":7.75, "y":2.25}, - {"matrix":[2,8], "x":8.75, "y":2.25}, - {"matrix":[2,9], "x":9.75, "y":2.25}, - {"matrix":[2,10], "x":10.75, "y":2.25}, - {"matrix":[2,11], "x":11.75, "y":2.25}, - {"matrix":[2,13], "x":12.75, "y":2.25}, - {"matrix":[1,13], "x":13.75, "y":1.25, "w":1.25, "h":2}, - {"matrix":[2,15], "x":15.25, "y":2.25}, - - {"matrix":[3,0], "x":0, "y":3.25, "w":1.25}, - {"matrix":[3,1], "x":1.25, "y":3.25}, - {"matrix":[3,2], "x":2.25, "y":3.25}, - {"matrix":[3,3], "x":3.25, "y":3.25}, - {"matrix":[3,4], "x":4.25, "y":3.25}, - {"matrix":[3,5], "x":5.25, "y":3.25}, - {"matrix":[3,6], "x":6.25, "y":3.25}, - {"matrix":[3,7], "x":7.25, "y":3.25}, - {"matrix":[3,8], "x":8.25, "y":3.25}, - {"matrix":[3,9], "x":9.25, "y":3.25}, - {"matrix":[3,10], "x":10.25, "y":3.25}, - {"matrix":[3,11], "x":11.25, "y":3.25}, - {"matrix":[3,13], "x":12.25, "y":3.25, "w":1.75}, - {"matrix":[3,14], "x":14.25, "y":3.5}, - - {"matrix":[4,0], "x":0, "y":4.25, "w":1.24}, - {"matrix":[4,1], "x":1.24, "y":4.25, "w":1.25}, - {"matrix":[4,2], "x":2.49, "y":4.25, "w":1.25}, - {"matrix":[4,6], "x":3.74, "y":4.25, "w":6.25}, - {"matrix":[4,10], "x":9.99, "y":4.25}, - {"matrix":[4,11], "x":10.99, "y":4.25}, - {"matrix":[4,12], "x":11.99, "y":4.25}, - {"matrix":[4,13], "x":13.25, "y":4.5}, - {"matrix":[4,14], "x":14.25, "y":4.5}, - {"matrix":[4,15], "x":15.25, "y":4.5} - ] - } - }, - "rgb_matrix": { - "layout": [ - {"matrix":[0, 0], "flags":1, "x":0, "y":4}, - {"matrix":[0, 1], "flags":4, "x":15, "y":4}, - {"matrix":[0, 2], "flags":4, "x":29, "y":4}, - {"matrix":[0, 3], "flags":4, "x":44, "y":4}, - {"matrix":[0, 4], "flags":4, "x":59, "y":4}, - {"matrix":[0, 5], "flags":4, "x":73, "y":4}, - {"matrix":[0, 6], "flags":4, "x":88, "y":4}, - {"matrix":[0, 7], "flags":4, "x":103, "y":4}, - {"matrix":[0, 8], "flags":4, "x":117, "y":4}, - {"matrix":[0, 9], "flags":4, "x":132, "y":4}, - {"matrix":[0, 10], "flags":4, "x":146, "y":4}, - {"matrix":[0, 11], "flags":4, "x":161, "y":4}, - {"matrix":[0, 12], "flags":4, "x":176, "y":4}, - {"matrix":[0, 13], "flags":1, "x":198, "y":4}, - - {"matrix":[1, 0], "flags":1, "x":4, "y":15}, - {"matrix":[1, 1], "flags":8, "x":22, "y":15}, - {"matrix":[1, 2], "flags":8, "x":37, "y":15}, - {"matrix":[1, 3], "flags":8, "x":51, "y":15}, - {"matrix":[1, 4], "flags":4, "x":66, "y":15}, - {"matrix":[1, 5], "flags":4, "x":81, "y":15}, - {"matrix":[1, 6], "flags":4, "x":95, "y":15}, - {"matrix":[1, 7], "flags":4, "x":110, "y":15}, - {"matrix":[1, 8], "flags":4, "x":125, "y":15}, - {"matrix":[1, 9], "flags":4, "x":139, "y":15}, - {"matrix":[1, 10], "flags":4, "x":154, "y":15}, - {"matrix":[1, 11], "flags":4, "x":168, "y":15}, - {"matrix":[1, 12], "flags":4, "x":183, "y":15}, - {"matrix":[1, 15], "flags":1, "x":224, "y":15}, - - {"matrix":[2, 0], "flags":8, "x":5, "y":30}, - {"matrix":[2, 1], "flags":4, "x":26, "y":30}, - {"matrix":[2, 2], "flags":4, "x":40, "y":30}, - {"matrix":[2, 3], "flags":4, "x":55, "y":30}, - {"matrix":[2, 4], "flags":4, "x":70, "y":30}, - {"matrix":[2, 5], "flags":4, "x":84, "y":30}, - {"matrix":[2, 6], "flags":4, "x":99, "y":30}, - {"matrix":[2, 7], "flags":4, "x":114, "y":30}, - {"matrix":[2, 8], "flags":4, "x":128, "y":30}, - {"matrix":[2, 9], "flags":4, "x":143, "y":30}, - {"matrix":[2, 10], "flags":4, "x":158, "y":30}, - {"matrix":[2, 11], "flags":4, "x":172, "y":30}, - {"matrix":[2, 13], "flags":1, "x":187, "y":30}, - {"matrix":[1, 13], "flags":1, "x":207, "y":25}, - {"matrix":[2, 15], "flags":1, "x":224, "y":30}, - - {"matrix":[3, 0], "flags":1, "x":2, "y":45}, - {"matrix":[3, 1], "flags":1, "x":18, "y":45}, - {"matrix":[3, 2], "flags":4, "x":33, "y":45}, - {"matrix":[3, 3], "flags":4, "x":48, "y":45}, - {"matrix":[3, 4], "flags":4, "x":62, "y":45}, - {"matrix":[3, 5], "flags":4, "x":77, "y":45}, - {"matrix":[3, 6], "flags":4, "x":92, "y":45}, - {"matrix":[3, 7], "flags":4, "x":106, "y":45}, - {"matrix":[3, 8], "flags":4, "x":121, "y":45}, - {"matrix":[3, 9], "flags":4, "x":136, "y":45}, - {"matrix":[3, 10], "flags":4, "x":150, "y":45}, - {"matrix":[3, 11], "flags":4, "x":165, "y":45}, - {"matrix":[3, 13], "flags":1, "x":185, "y":45}, - {"matrix":[3, 14], "flags":1, "x":209, "y":49}, - - {"matrix":[4, 0], "flags":1, "x":2, "y":60}, - {"matrix":[4, 1], "flags":1, "x":20, "y":60}, - {"matrix":[4, 2], "flags":1, "x":38, "y":60}, - {"matrix":[4, 6], "flags":4, "x":94, "y":60}, - {"matrix":[4, 10], "flags":1, "x":147, "y":60}, - {"matrix":[4, 11], "flags":1, "x":161, "y":60}, - {"matrix":[4, 12], "flags":1, "x":176, "y":60}, - {"matrix":[4, 13], "flags":1, "x":195, "y":64}, - {"matrix":[4, 14], "flags":1, "x":209, "y":64}, - {"matrix":[4, 15], "flags":1, "x":224, "y":64} - ] - } -} - diff --git a/keyboards/keychron/q2_pro/iso_encoder/iso_encoder.c b/keyboards/keychron/q2_pro/iso_encoder/iso_encoder.c deleted file mode 100644 index 52333bb175..0000000000 --- a/keyboards/keychron/q2_pro/iso_encoder/iso_encoder.c +++ /dev/null @@ -1,99 +0,0 @@ -/* 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 . - */ - -#include "quantum.h" - -#ifdef RGB_MATRIX_ENABLE -const snled27351_led_t g_snled27351_leds[RGB_MATRIX_LED_COUNT] = { -/* Refer to snled27351manual for these locations - * driver - * | R location - * | | G location - * | | | B location - * | | | | */ - {0, C_16, A_16, B_16}, - {0, C_15, A_15, B_15}, - {0, C_14, A_14, B_14}, - {0, C_13, A_13, B_13}, - {0, C_12, A_12, B_12}, - {0, C_11, A_11, B_11}, - {0, C_10, A_10, B_10}, - {0, C_9, A_9, B_9}, - {0, C_8, A_8, B_8}, - {0, C_7, A_7, B_7}, - {0, C_6, A_6, B_6}, - {0, C_5, A_5, B_5}, - {0, C_4, A_4, B_4}, - {0, C_3, A_3, B_3}, - - {0, F_16, D_16, E_16}, - {0, F_15, D_15, E_15}, - {0, F_14, D_14, E_14}, - {0, F_13, D_13, E_13}, - {0, F_12, D_12, E_12}, - {0, F_11, D_11, E_11}, - {0, F_10, D_10, E_10}, - {0, F_9, D_9, E_9}, - {0, F_8, D_8, E_8}, - {0, F_7, D_7, E_7}, - {0, F_6, D_6, E_6}, - {0, F_5, D_5, E_5}, - {0, F_4, D_4, E_4}, - {0, F_1, D_1, E_1}, - - {1, C_16, A_16, B_16}, - {1, C_15, A_15, B_15}, - {1, C_14, A_14, B_14}, - {1, C_13, A_13, B_13}, - {1, C_12, A_12, B_12}, - {1, C_11, A_11, B_11}, - {1, C_10, A_10, B_10}, - {1, C_9, A_9, B_9}, - {1, C_8, A_8, B_8}, - {1, C_7, A_7, B_7}, - {1, C_6, A_6, B_6}, - {1, C_5, A_5, B_5}, - {1, C_3, A_3, B_3}, - {0, F_3, D_3, E_3}, - {1, C_1, A_1, B_1}, - - {1, I_16, G_16, H_16}, - {1, I_15, G_15, H_15}, - {1, I_14, G_14, H_14}, - {1, I_13, G_13, H_13}, - {1, I_12, G_12, H_12}, - {1, I_11, G_11, H_11}, - {1, I_10, G_10, H_10}, - {1, I_9, G_9, H_9}, - {1, I_8, G_8, H_8}, - {1, I_7, G_7, H_7}, - {1, I_6, G_6, H_6}, - {1, I_5, G_5, H_5}, - {1, I_3, G_3, H_3}, - {1, I_2, G_2, H_2}, - - {1, F_16, D_16, E_16}, - {1, F_15, D_15, E_15}, - {1, F_14, D_14, E_14}, - {1, F_10, D_10, E_10}, - {1, F_6, D_6, E_6}, - {1, F_5, D_5, E_5}, - {1, F_4, D_4, E_4}, - {1, F_3, D_3, E_3}, - {1, F_2, D_2, E_2}, - {1, F_1, D_1, E_1} -}; -#endif diff --git a/keyboards/keychron/q2_pro/iso_encoder/keymaps/default/keymap.c b/keyboards/keychron/q2_pro/iso_encoder/keymaps/default/keymap.c deleted file mode 100644 index 7424db7271..0000000000 --- a/keyboards/keychron/q2_pro/iso_encoder/keymaps/default/keymap.c +++ /dev/null @@ -1,73 +0,0 @@ -/* 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 . - */ - -#include QMK_KEYBOARD_H - -enum layers{ - MAC_BASE, - WIN_BASE, - MAC_FN1, - WIN_FN1, - FN2, -}; - -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_iso_68( - 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_MUTE, - 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_DEL, - 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_NUHS, KC_ENT, KC_HOME, - KC_LSFT, KC_NUBS, 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_LCTL, KC_LOPTN, KC_LCMMD, KC_SPC, KC_RCMMD,MO(MAC_FN1),MO(FN2), KC_LEFT, KC_DOWN, KC_RGHT), - - [WIN_BASE] = LAYOUT_iso_68( - 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_MUTE, - 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_DEL, - 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_NUHS, KC_ENT, KC_HOME, - KC_LSFT, KC_NUBS, 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_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(WIN_FN1),MO(FN2), KC_LEFT, KC_DOWN, KC_RGHT), - - [MAC_FN1] = LAYOUT_iso_68( - KC_GRV, KC_BRID, KC_BRIU, KC_MCTL, KC_LPAD, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, RGB_TOG, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, NK_TOGG, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - - [WIN_FN1] = LAYOUT_iso_68( - KC_GRV, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, RGB_TOG, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, NK_TOGG, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - - [FN2] = LAYOUT_iso_68( - KC_TILD, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, BAT_LVL, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), -}; - -#if defined(ENCODER_MAP_ENABLE) -const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][2] = { - [MAC_BASE] = {ENCODER_CCW_CW(KC_VOLD, KC_VOLU) }, - [WIN_BASE] = {ENCODER_CCW_CW(KC_VOLD, KC_VOLU) }, - [MAC_FN1] = {ENCODER_CCW_CW(RGB_VAD, RGB_VAI) }, - [WIN_FN1] = {ENCODER_CCW_CW(RGB_VAD, RGB_VAI) }, - [FN2] = {ENCODER_CCW_CW(_______, _______) } -}; -#endif // ENCODER_MAP_ENABLE diff --git a/keyboards/keychron/q2_pro/iso_encoder/keymaps/default/rules.mk b/keyboards/keychron/q2_pro/iso_encoder/keymaps/default/rules.mk deleted file mode 100644 index ee32568148..0000000000 --- a/keyboards/keychron/q2_pro/iso_encoder/keymaps/default/rules.mk +++ /dev/null @@ -1 +0,0 @@ -ENCODER_MAP_ENABLE = yes diff --git a/keyboards/keychron/q2_pro/iso_encoder/keymaps/via/keymap.c b/keyboards/keychron/q2_pro/iso_encoder/keymaps/via/keymap.c deleted file mode 100644 index 7424db7271..0000000000 --- a/keyboards/keychron/q2_pro/iso_encoder/keymaps/via/keymap.c +++ /dev/null @@ -1,73 +0,0 @@ -/* 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 . - */ - -#include QMK_KEYBOARD_H - -enum layers{ - MAC_BASE, - WIN_BASE, - MAC_FN1, - WIN_FN1, - FN2, -}; - -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_iso_68( - 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_MUTE, - 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_DEL, - 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_NUHS, KC_ENT, KC_HOME, - KC_LSFT, KC_NUBS, 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_LCTL, KC_LOPTN, KC_LCMMD, KC_SPC, KC_RCMMD,MO(MAC_FN1),MO(FN2), KC_LEFT, KC_DOWN, KC_RGHT), - - [WIN_BASE] = LAYOUT_iso_68( - 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_MUTE, - 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_DEL, - 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_NUHS, KC_ENT, KC_HOME, - KC_LSFT, KC_NUBS, 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_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(WIN_FN1),MO(FN2), KC_LEFT, KC_DOWN, KC_RGHT), - - [MAC_FN1] = LAYOUT_iso_68( - KC_GRV, KC_BRID, KC_BRIU, KC_MCTL, KC_LPAD, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, RGB_TOG, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, NK_TOGG, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - - [WIN_FN1] = LAYOUT_iso_68( - KC_GRV, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, RGB_TOG, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, NK_TOGG, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - - [FN2] = LAYOUT_iso_68( - KC_TILD, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, BAT_LVL, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), -}; - -#if defined(ENCODER_MAP_ENABLE) -const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][2] = { - [MAC_BASE] = {ENCODER_CCW_CW(KC_VOLD, KC_VOLU) }, - [WIN_BASE] = {ENCODER_CCW_CW(KC_VOLD, KC_VOLU) }, - [MAC_FN1] = {ENCODER_CCW_CW(RGB_VAD, RGB_VAI) }, - [WIN_FN1] = {ENCODER_CCW_CW(RGB_VAD, RGB_VAI) }, - [FN2] = {ENCODER_CCW_CW(_______, _______) } -}; -#endif // ENCODER_MAP_ENABLE diff --git a/keyboards/keychron/q2_pro/iso_encoder/keymaps/via/rules.mk b/keyboards/keychron/q2_pro/iso_encoder/keymaps/via/rules.mk deleted file mode 100644 index f1adcab005..0000000000 --- a/keyboards/keychron/q2_pro/iso_encoder/keymaps/via/rules.mk +++ /dev/null @@ -1,2 +0,0 @@ -VIA_ENABLE = yes -ENCODER_MAP_ENABLE = yes diff --git a/keyboards/keychron/q2_pro/iso_encoder/rules.mk b/keyboards/keychron/q2_pro/iso_encoder/rules.mk deleted file mode 100644 index c628fc7d0f..0000000000 --- a/keyboards/keychron/q2_pro/iso_encoder/rules.mk +++ /dev/null @@ -1 +0,0 @@ -# This file intentionally blank diff --git a/keyboards/keychron/q2_pro/matrix.c b/keyboards/keychron/q2_pro/matrix.c deleted file mode 100644 index c6710b22d5..0000000000 --- a/keyboards/keychron/q2_pro/matrix.c +++ /dev/null @@ -1,213 +0,0 @@ -/* 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 . - */ - -#include "quantum.h" - -#define HC595_STCP B0 -#define HC595_SHCP A1 -#define HC595_DS A7 - -pin_t row_pins[MATRIX_ROWS] = MATRIX_ROW_PINS; -pin_t col_pins[MATRIX_COLS] = MATRIX_COL_PINS; - -static inline void setPinOutput_writeLow(pin_t pin) { - ATOMIC_BLOCK_FORCEON { - setPinOutput(pin); - writePinLow(pin); - } -} - -static inline void setPinOutput_writeHigh(pin_t pin) { - ATOMIC_BLOCK_FORCEON { - setPinOutput(pin); - writePinHigh(pin); - } -} - -static inline void setPinInput_high(pin_t pin) { - ATOMIC_BLOCK_FORCEON { - setPinInputHigh(pin); - } -} - -static inline uint8_t readMatrixPin(pin_t pin) { - if (pin != NO_PIN) { - return readPin(pin); - } else { - return 1; - } -} - -static inline void HC595_delay(uint16_t n) { - while (n-- > 0) { - asm volatile("nop" ::: "memory"); - } -} - -static void HC595_output(uint16_t data) { - ATOMIC_BLOCK_FORCEON { - for (uint8_t i = 0; i < MATRIX_COLS; i++) { - if (data & 0x1) { - writePinHigh(HC595_DS); - } else { - writePinLow(HC595_DS); - } - - data = data >> 1; - - writePinHigh(HC595_SHCP); - HC595_delay(1); - writePinLow(HC595_SHCP); - HC595_delay(1); - } - writePinHigh(HC595_STCP); - HC595_delay(1); - writePinLow(HC595_STCP); - HC595_delay(1); - } -} - -static void HC595_output_oneBit(uint8_t data) { - ATOMIC_BLOCK_FORCEON { - if (data & 0x1) { - writePinHigh(HC595_DS); - } else { - writePinLow(HC595_DS); - } - - writePinHigh(HC595_SHCP); - HC595_delay(1); - writePinLow(HC595_SHCP); - HC595_delay(1); - - writePinHigh(HC595_STCP); - HC595_delay(1); - writePinLow(HC595_STCP); - HC595_delay(1); - } -} - -static bool select_col(uint8_t col) { - pin_t pin = col_pins[col]; - - if (pin != NO_PIN) { - setPinOutput_writeLow(pin); - return true; - } else { - if (col == 0) { - HC595_output_oneBit(0x00); - } - return true; - } - return false; -} - -static void unselect_col(uint8_t col) { - pin_t pin = col_pins[col]; - - if (pin != NO_PIN) { -#ifdef MATRIX_UNSELECT_DRIVE_HIGH - setPinOutput_writeHigh(pin); -#else - setPinInput_high(pin); -#endif - } else { - HC595_output_oneBit(0x01); - } -} - -static void unselect_cols(void) { - for (uint8_t x = 0; x < MATRIX_COLS; x++) { - pin_t pin = col_pins[x]; - if (pin != NO_PIN) { -#ifdef MATRIX_UNSELECT_DRIVE_HIGH - setPinOutput_writeHigh(pin); -#else - setPinInput_high(pin); -#endif - } else { - if (x == 0) HC595_output(0xFFFF); - } - } -} - -void select_all_cols(void) { - for (uint8_t x = 0; x < MATRIX_COLS; x++) { - pin_t pin = col_pins[x]; - if (pin != NO_PIN) { - setPinOutput_writeLow(pin); - } else { - if (x == 0) HC595_output(0x0000); - } - } -} - -static void matrix_read_rows_on_col(matrix_row_t current_matrix[], uint8_t current_col, matrix_row_t row_shifter) { - bool key_pressed = false; - - // Select col - if (!select_col(current_col)) { // select col - return; // skip NO_PIN col - } - - matrix_output_select_delay(); - - // For each row... - for (uint8_t row_index = 0; row_index < MATRIX_ROWS; row_index++) { - // Check row pin state - if (readMatrixPin(row_pins[row_index]) == 0) { - // Pin LO, set col bit - current_matrix[row_index] |= row_shifter; - key_pressed = true; - } else { - // Pin HI, clear col bit - current_matrix[row_index] &= ~row_shifter; - } - } - - // Unselect col - unselect_col(current_col); - matrix_output_unselect_delay(current_col, key_pressed); // wait for all Row signals to go HIGH -} - -void matrix_init_custom(void) { - setPinOutput(HC595_DS); - setPinOutput(HC595_STCP); - setPinOutput(HC595_SHCP); - - for (uint8_t x = 0; x < MATRIX_ROWS; x++) { - if (row_pins[x] != NO_PIN) { - setPinInput_high(row_pins[x]); - } - } - - unselect_cols(); -} - -bool matrix_scan_custom(matrix_row_t current_matrix[]) { - matrix_row_t curr_matrix[MATRIX_ROWS] = {0}; - - // Set col, read rows - matrix_row_t row_shifter = MATRIX_ROW_SHIFTER; - for (uint8_t current_col = 0; current_col < MATRIX_COLS; current_col++, row_shifter <<= 1) { - matrix_read_rows_on_col(curr_matrix, current_col, row_shifter); - } - - bool changed = memcmp(current_matrix, curr_matrix, sizeof(curr_matrix)) != 0; - if (changed) memcpy(current_matrix, curr_matrix, sizeof(curr_matrix)); - - return changed; -} diff --git a/keyboards/keychron/q2_pro/mcuconf.h b/keyboards/keychron/q2_pro/mcuconf.h deleted file mode 100644 index b33ceb18b2..0000000000 --- a/keyboards/keychron/q2_pro/mcuconf.h +++ /dev/null @@ -1,41 +0,0 @@ -/* Copyright 2023 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 . - */ - -/* - * This file was auto-generated by: - * `qmk chibios-confmigrate -i keyboards/acheron/arctic/mcuconf.h -r platforms/chibios/GENERIC_STM32_F072XB/configs/mcuconf.h` - */ - -#pragma once - -#include_next - -/* Set HCLK to 48 MHz as tradeoff of USB lowest clockand and - * lower power comsumption for bluetooth. Will use dynamic - * clock when STM32L4 is supported in ChibiOS */ -#undef STM32_PLLM_VALUE -#define STM32_PLLM_VALUE 2 - -#undef STM32_PLLN_VALUE -#define STM32_PLLN_VALUE 12 - -#undef STM32_I2C_USE_I2C1 -#define STM32_I2C_USE_I2C1 TRUE - -#ifdef KC_BLUETOOTH_ENABLE -# undef STM32_SERIAL_USE_USART2 -# define STM32_SERIAL_USE_USART2 TRUE -#endif diff --git a/keyboards/keychron/q2_pro/q2_pro.c b/keyboards/keychron/q2_pro/q2_pro.c deleted file mode 100644 index 57ea3d79f7..0000000000 --- a/keyboards/keychron/q2_pro/q2_pro.c +++ /dev/null @@ -1,311 +0,0 @@ -/* 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 . - */ - -#include "q2_pro.h" -#ifdef KC_BLUETOOTH_ENABLE -# include "ckbt51.h" -# include "bluetooth.h" -# include "indicator.h" -# include "transport.h" -# include "battery.h" -# include "bat_level_animation.h" -# include "lpm.h" -#endif - -#ifdef ENABLE_FACTORY_TEST -# include "factory_test.h" -#endif - -typedef struct PACKED { - uint8_t len; - uint8_t keycode[3]; -} key_combination_t; - -static uint32_t factory_timer_buffer = 0; -static uint32_t siri_timer_buffer = 0; -static uint8_t mac_keycode[4] = {KC_LOPT, KC_ROPT, KC_LCMD, KC_RCMD}; - -key_combination_t key_comb_list[4] = { - {2, {KC_LWIN, KC_TAB}}, // Task (win) - {2, {KC_LWIN, KC_E}}, // Files (win) - {3, {KC_LSFT, KC_LGUI, KC_4}}, // Snapshot (mac) - {2, {KC_LWIN, KC_C}} // Cortana (win) -}; - -#ifdef KC_BLUETOOTH_ENABLE -bool firstDisconnect = true; -bool bt_factory_reset = false; -static virtual_timer_t pairing_key_timer; -extern uint8_t g_pwm_buffer[DRIVER_COUNT][192]; - -static void pairing_key_timer_cb(void *arg) { - bluetooth_pairing_ex(*(uint8_t *)arg, NULL); -} -#endif - -bool dip_switch_update_kb(uint8_t index, bool active) { - if (index == 0) { -#ifdef INVERT_OS_SWITCH_STATE - default_layer_set(1UL << (!active ? 1 : 0)); -#else - default_layer_set(1UL << (active ? 1 : 0)); -#endif - } - dip_switch_update_user(index, active); - - return true; -} - -#ifdef KC_BLUETOOTH_ENABLE -bool process_record_kb_bt(uint16_t keycode, keyrecord_t *record) { -#else -bool process_record_kb(uint16_t keycode, keyrecord_t *record) { -#endif - static uint8_t host_idx = 0; - - switch (keycode) { - case KC_LOPTN: - case KC_ROPTN: - case KC_LCMMD: - case KC_RCMMD: - if (record->event.pressed) { - register_code(mac_keycode[keycode - KC_LOPTN]); - } else { - unregister_code(mac_keycode[keycode - KC_LOPTN]); - } - return false; // Skip all further processing of this key) - case KC_TASK: - case KC_FILE: - case KC_SNAP: - case KC_CTANA: - if (record->event.pressed) { - for (uint8_t i = 0; i < key_comb_list[keycode - KC_TASK].len; i++) - register_code(key_comb_list[keycode - KC_TASK].keycode[i]); - } else { - for (uint8_t i = 0; i < key_comb_list[keycode - KC_TASK].len; i++) - unregister_code(key_comb_list[keycode - KC_TASK].keycode[i]); - } - return false; // Skip all further processing of this key - case KC_SIRI: - if (record->event.pressed && siri_timer_buffer == 0) { - register_code(KC_LGUI); - register_code(KC_SPACE); - siri_timer_buffer = sync_timer_read32() == 0 ? 1 : sync_timer_read32(); - } - return false; // Skip all further processing of this key -#ifdef KC_BLUETOOTH_ENABLE - case BT_HST1 ... BT_HST3: - if (get_transport() == TRANSPORT_BLUETOOTH) { - if (record->event.pressed) { - host_idx = keycode - BT_HST1 + 1; - chVTSet(&pairing_key_timer, TIME_MS2I(2000), (vtfunc_t)pairing_key_timer_cb, &host_idx); - bluetooth_connect_ex(host_idx, 0); - } else { - host_idx = 0; - chVTReset(&pairing_key_timer); - } - } - break; - case BAT_LVL: - if (get_transport() == TRANSPORT_BLUETOOTH && !usb_power_connected()) { - bat_level_animiation_start(battery_get_percentage()); - } - break; -#endif - default: -#ifdef FACTORY_RESET_CHECK - FACTORY_RESET_CHECK(keycode, record); -#endif - break; - } - return true; -} - -#if defined(KC_BLUETOOTH_ENABLE) && defined(ENCODER_ENABLE) -static void encoder_pad_cb(void *param) { - encoder_inerrupt_read((uint32_t)param & 0XFF); -} -#endif - -void keyboard_post_init_kb(void) { - dip_switch_read(true); - -#ifdef KC_BLUETOOTH_ENABLE - /* Currently we don't use this reset pin */ - palSetLineMode(CKBT51_RESET_PIN, PAL_MODE_OUTPUT_PUSHPULL); - palWriteLine(CKBT51_RESET_PIN, PAL_HIGH); - - /* IMPORTANT: DO NOT enable internal pull-up resistor - * as there is an external pull-down resistor. - */ - palSetLineMode(USB_BT_MODE_SELECT_PIN, PAL_MODE_INPUT); - - ckbt51_init(false); - bluetooth_init(); - -# ifdef ENCODER_ENABLE - pin_t encoders_pad_a[NUM_ENCODERS] = ENCODERS_PAD_A; - pin_t encoders_pad_b[NUM_ENCODERS] = ENCODERS_PAD_B; - for (uint32_t i = 0; i < NUM_ENCODERS; i++) { - palEnableLineEvent(encoders_pad_a[i], PAL_EVENT_MODE_BOTH_EDGES); - palEnableLineEvent(encoders_pad_b[i], PAL_EVENT_MODE_BOTH_EDGES); - palSetLineCallback(encoders_pad_a[i], encoder_pad_cb, (void *)i); - palSetLineCallback(encoders_pad_b[i], encoder_pad_cb, (void *)i); - } -# endif -#endif - - keyboard_post_init_user(); -} - -void matrix_scan_kb(void) { - if (factory_timer_buffer && timer_elapsed32(factory_timer_buffer) > 2000) { - factory_timer_buffer = 0; - if (bt_factory_reset) { - bt_factory_reset = false; - palWriteLine(CKBT51_RESET_PIN, PAL_LOW); - wait_ms(5); - palWriteLine(CKBT51_RESET_PIN, PAL_HIGH); - } - } - - if (siri_timer_buffer && sync_timer_elapsed32(siri_timer_buffer) > 500) { - siri_timer_buffer = 0; - unregister_code(KC_LGUI); - unregister_code(KC_SPACE); - } - -#ifdef FACTORY_RESET_TASK - FACTORY_RESET_TASK(); -#endif - matrix_scan_user(); -} - -#ifdef KC_BLUETOOTH_ENABLE -static void ckbt51_param_init(void) { - /* Set bluetooth device name */ - ckbt51_set_local_name(PRODUCT); - /* Set bluetooth parameters */ - module_param_t param = {.event_mode = 0x02, - .connected_idle_timeout = 7200, - .pairing_timeout = 180, - .pairing_mode = 0, - .reconnect_timeout = 5, - .report_rate = 90, - .vendor_id_source = 1, - .verndor_id = 0, // Must be 0x3434 - .product_id = PRODUCT_ID}; - ckbt51_set_param(¶m); -} - -void bluetooth_enter_disconnected_kb(uint8_t host_idx) { - if (bt_factory_reset) { - ckbt51_param_init(); - factory_timer_buffer = timer_read32(); - } - /* CKBT51 bluetooth module boot time is slower, it enters disconnected after boot, - so we place initialization here. */ - if (firstDisconnect && sync_timer_read32() < 1000 && get_transport() == TRANSPORT_BLUETOOTH) { - ckbt51_param_init(); - bluetooth_connect(); - firstDisconnect = false; - } -} - -void ckbt51_default_ack_handler(uint8_t *data, uint8_t len) { - if (data[1] == 0x45) { - module_param_t param = {.event_mode = 0x02, - .connected_idle_timeout = 7200, - .pairing_timeout = 180, - .pairing_mode = 0, - .reconnect_timeout = 5, - .report_rate = 90, - .vendor_id_source = 1, - .verndor_id = 0, // Must be 0x3434 - .product_id = PRODUCT_ID}; - ckbt51_set_param(¶m); - } -} - -void bluetooth_pre_task(void) { - static uint8_t mode = 1; - - if (readPin(USB_BT_MODE_SELECT_PIN) != mode) { - if (readPin(USB_BT_MODE_SELECT_PIN) != mode) { - mode = readPin(USB_BT_MODE_SELECT_PIN); - set_transport(mode == 0 ? TRANSPORT_BLUETOOTH : TRANSPORT_USB); - } - } -} -#endif - -void battery_calculte_voltage(uint16_t value) { - uint16_t voltage = ((uint32_t)value) * 2246 / 1000; - -#ifdef LED_MATRIX_ENABLE - if (led_matrix_is_enabled()) { - uint32_t totalBuf = 0; - - for (uint8_t i = 0; i < DRIVER_COUNT; i++) - for (uint8_t j = 0; j < 192; j++) - totalBuf += g_pwm_buffer[i][j]; - /* We assumpt it is linear relationship*/ - voltage += (30 * totalBuf / LED_MATRIX_LED_COUNT / 255); - } -#endif -#ifdef RGB_MATRIX_ENABLE - if (rgb_matrix_is_enabled()) { - uint32_t totalBuf = 0; - - for (uint8_t i = 0; i < DRIVER_COUNT; i++) - for (uint8_t j = 0; j < 192; j++) - totalBuf += g_pwm_buffer[i][j]; - /* We assumpt it is linear relationship*/ - uint32_t compensation = 60 * totalBuf / RGB_MATRIX_LED_COUNT / 255 / 3; - voltage += compensation; - } -#endif - battery_set_voltage(voltage); -} - -bool via_command_kb(uint8_t *data, uint8_t length) { - switch (data[0]) { -#ifdef KC_BLUETOOTH_ENABLE - case 0xAA: - ckbt51_dfu_rx(data, length); - break; -#endif -#ifdef ENABLE_FACTORY_TEST - case 0xAB: - factory_test_rx(data, length); - break; -#endif - default: - return false; - } - - return true; -} - -#if !defined(VIA_ENABLE) -void raw_hid_receive(uint8_t *data, uint8_t length) { - switch (data[0]) { - case RAW_HID_CMD: - via_command_kb(data, length); - break; - } -} -#endif diff --git a/keyboards/keychron/q2_pro/q2_pro.h b/keyboards/keychron/q2_pro/q2_pro.h deleted file mode 100644 index 0e15df4e45..0000000000 --- a/keyboards/keychron/q2_pro/q2_pro.h +++ /dev/null @@ -1,53 +0,0 @@ -/* 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 . - */ - -#pragma once - -#include "quantum.h" -#ifdef VIA_ENABLE -# include "via.h" -#endif - -#ifdef VIA_ENABLE -# define USER_START QK_KB_0 -#else -# define USER_START SAFE_RANGE -#endif - -// clang-format off -enum { - KC_LOPTN = USER_START, - KC_ROPTN, - KC_LCMMD, - KC_RCMMD, - KC_TASK, - KC_FILE, - KC_SNAP, - KC_CTANA, - KC_SIRI, -#ifdef KC_BLUETOOTH_ENABLE - BT_HST1, - BT_HST2, - BT_HST3, - BAT_LVL, -#else - BT_HST1 = KC_TRNS, - BT_HST2 = KC_TRNS, - BT_HST3 = KC_TRNS, - BAT_LVL = KC_TRNS, -#endif - NEW_SAFE_RANGE -}; diff --git a/keyboards/keychron/q2_pro/readme.md b/keyboards/keychron/q2_pro/readme.md deleted file mode 100644 index ff1ae03c19..0000000000 --- a/keyboards/keychron/q2_pro/readme.md +++ /dev/null @@ -1,23 +0,0 @@ -# Keychron Q2 Pro - -![Keychron Q2 Pro](https://i.imgur.com/sRf98x5.jpg) - -A customizable 60% keyboard. - -* Keyboard Maintainer: [Keychron](https://github.com/keychron) -* Hardware Supported: Keychron Q2 Pro -* Hardware Availability: [Keychron Q2 Pro QMK/VIA Wireless Custom Mechanical Keyboard](https://www.keychron.com/products/keychron-q2-pro-qmk-via-wireless-custom-mechanical-keyboard) - -Make example for this keyboard (after setting up your build environment): - - make keychron/q2_pro/ansi_encoder:default - make keychron/q2_pro/iso_encoder:default - -Flashing example for this keyboard: - - make keychron/q2_pro/ansi_encoder:default:flash - make keychron/q2_pro/iso_encoder:default:flash - -**Reset Key**: Connect the USB cable, toggle mode switch to "Off", hold down the *Esc* key or reset button underneath space bar, then toggle then switch to "Cable". - -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). diff --git a/keyboards/keychron/q2_pro/rules.mk b/keyboards/keychron/q2_pro/rules.mk deleted file mode 100644 index f995372f9c..0000000000 --- a/keyboards/keychron/q2_pro/rules.mk +++ /dev/null @@ -1,6 +0,0 @@ -# Enter lower-power sleep mode when on the ChibiOS idle thread -OPT_DEFS += -DCORTEX_ENABLE_WFI_IDLE=TRUE -OPT_DEFS += -DNO_USB_STARTUP_CHECK -DENABLE_FACTORY_TEST - -include keyboards/keychron/bluetooth/bluetooth.mk -include keyboards/keychron/common/common.mk diff --git a/keyboards/keychron/q2_pro/via_json/q2_pro_ansi_encoder.json b/keyboards/keychron/q2_pro/via_json/q2_pro_ansi_encoder.json deleted file mode 100644 index 6120de6885..0000000000 --- a/keyboards/keychron/q2_pro/via_json/q2_pro_ansi_encoder.json +++ /dev/null @@ -1,250 +0,0 @@ -{ - "name": "Keychron Q2 Pro ANSI Knob", - "vendorId": "0x3434", - "productId": "0x0620", - "keycodes": ["qmk_lighting"], - "menus": [ - { - "label": "Lighting", - "content": [ - { - "label": "Backlight", - "content": [ - { - "label": "Brightness", - "type": "range", - "options": [0, 255], - "content": ["id_qmk_rgb_matrix_brightness", 3, 1] - }, - { - "label": "Effect", - "type": "dropdown", - "content": ["id_qmk_rgb_matrix_effect", 3, 2], - "options": [ - ["None", 0], - ["Solid Color", 1], - ["Breathing", 2], - ["Band Spiral Val", 3], - ["Cycle All", 4], - ["Cycle Left Right", 5], - ["Cycle Up Down", 6], - ["Rainbow Moving Chevron", 7], - ["Cycle Out In", 8], - ["Cycle Out In Dual", 9], - ["Cycle Pinwheel", 10], - ["Cycle Spiral", 11], - ["Dual Beacon", 12], - ["Rainbow Beacon", 13], - ["Jellybean Raindrops", 14], - ["Pixel Rain", 15], - ["Typing Heatmap", 16], - ["Digital Rain", 17], - ["Reactive Simple", 18], - ["Reactive Multiwide", 19], - ["Reactive Multinexus", 20], - ["Splash", 21], - ["Solid Splash", 22] - ] - }, - { - "showIf": "{id_qmk_rgb_matrix_effect} > 1", - "label": "Effect Speed", - "type": "range", - "options": [0, 255], - "content": ["id_qmk_rgb_matrix_effect_speed", 3, 3] - }, - { - "showIf": "{id_qmk_rgb_matrix_effect} != 0 && ( {id_qmk_rgb_matrix_effect} < 4 || {id_qmk_rgb_matrix_effect} == 18 || ({id_qmk_rgb_matrix_effect} > 17 && {id_qmk_rgb_matrix_effect} != 21) ) ", - "label": "Color", - "type": "color", - "content": ["id_qmk_rgb_matrix_color", 3, 4] - } - ] - } - ] - } - ], - "customKeycodes": [ - {"name": "Left Option", "title": "Left Option", "shortName": "LOpt"}, - {"name": "Right Option", "title": "Right Option", "shortName": "ROpt"}, - {"name": "Left Cmd", "title": "Left Command", "shortName": "LCmd"}, - {"name": "Right Cmd", "title": "Right Command", "shortName": "RCmd"}, - {"name": "Task View", "title": "Task View in Windows", "shortName": "Task"}, - {"name": "File Explorer", "title": "File Explorer in Windows", "shortName": "File"}, - {"name": "Screen shot", "title": "Screenshot in macOS", "shortName": "SShot"}, - {"name": "Cortana", "title": "Cortana in Windows", "shortName": "Cortana"}, - {"name": "Siri", "title": "Siri in macOS", "shortName": "Siri"}, - {"name": "Bluetooth Host 1", "title": "Bluetooth Host 1", "shortName": "BTH1"}, - {"name": "Bluetooth Host 2", "title": "Bluetooth Host 2", "shortName": "BTH2"}, - {"name": "Bluetooth Host 3", "title": "Bluetooth Host 3", "shortName": "BTH3"}, - {"name": "Battery Level", "title": "Show battery level", "shortName": "Batt"} - ], - "matrix": {"rows": 5, "cols": 16}, - "layouts": { - "keymap": [ - [ - { - "x": 15.25, - "c": "#aaaaaa" - }, - "0,15\n\n\n\n\n\n\n\n\ne0" - ], - [ - { - "y": -0.75, - "c": "#777777" - }, - "0,0\nESC", - { - "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", - { - "c": "#aaaaaa", - "w": 2 - }, - "0,13" - ], - [ - { - "w": 1.5 - }, - "1,0", - { - "c": "#cccccc" - }, - "1,1", - "1,2", - "1,3", - "1,4", - "1,5", - "1,6", - "1,7", - "1,8", - "1,9", - "1,10", - "1,11", - "1,12", - { - "c": "#aaaaaa", - "w": 1.5 - }, - "1,13", - { - "x": 0.25 - }, - "1,15" - ], - [ - { - "w": 1.75 - }, - "2,0", - { - "c": "#cccccc" - }, - "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": 0.25, - "c": "#aaaaaa" - }, - "2,15" - ], - [ - { - "w": 2.25 - }, - "3,0", - { - "c": "#cccccc" - }, - "3,2", - "3,3", - "3,4", - "3,5", - "3,6", - "3,7", - "3,8", - "3,9", - "3,10", - "3,11", - { - "c": "#aaaaaa", - "w": 1.75 - }, - "3,13" - ], - [ - { - "y": -0.75, - "x": 14.25, - "c": "#777777" - }, - "3,14" - ], - [ - { - "y": -0.25, - "c": "#aaaaaa", - "w": 1.24 - }, - "4,0", - { - "w": 1.25 - }, - "4,1", - { - "w": 1.25 - }, - "4,2", - { - "c": "#cccccc", - "w": 6.25 - }, - "4,6", - { - "c": "#aaaaaa" - }, - "4,10", - "4,11", - "4,12" - ], - [ - { - "y": -0.75, - "x": 13.25, - "c": "#777777" - }, - "4,13", - "4,14", - "4,15" - ] - ] - } -} diff --git a/keyboards/keychron/q2_pro/via_json/q2_pro_iso_encoder.json b/keyboards/keychron/q2_pro/via_json/q2_pro_iso_encoder.json deleted file mode 100644 index e46bbc3a56..0000000000 --- a/keyboards/keychron/q2_pro/via_json/q2_pro_iso_encoder.json +++ /dev/null @@ -1,254 +0,0 @@ -{ - "name": "Keychron Q2 Pro ISO Knob", - "vendorId": "0x3434", - "productId": "0x0621", - "keycodes": ["qmk_lighting"], - "menus": [ - { - "label": "Lighting", - "content": [ - { - "label": "Backlight", - "content": [ - { - "label": "Brightness", - "type": "range", - "options": [0, 255], - "content": ["id_qmk_rgb_matrix_brightness", 3, 1] - }, - { - "label": "Effect", - "type": "dropdown", - "content": ["id_qmk_rgb_matrix_effect", 3, 2], - "options": [ - ["None", 0], - ["Solid Color", 1], - ["Breathing", 2], - ["Band Spiral Val", 3], - ["Cycle All", 4], - ["Cycle Left Right", 5], - ["Cycle Up Down", 6], - ["Rainbow Moving Chevron", 7], - ["Cycle Out In", 8], - ["Cycle Out In Dual", 9], - ["Cycle Pinwheel", 10], - ["Cycle Spiral", 11], - ["Dual Beacon", 12], - ["Rainbow Beacon", 13], - ["Jellybean Raindrops", 14], - ["Pixel Rain", 15], - ["Typing Heatmap", 16], - ["Digital Rain", 17], - ["Reactive Simple", 18], - ["Reactive Multiwide", 19], - ["Reactive Multinexus", 20], - ["Splash", 21], - ["Solid Splash", 22] - ] - }, - { - "showIf": "{id_qmk_rgb_matrix_effect} > 1", - "label": "Effect Speed", - "type": "range", - "options": [0, 255], - "content": ["id_qmk_rgb_matrix_effect_speed", 3, 3] - }, - { - "showIf": "{id_qmk_rgb_matrix_effect} != 0 && ( {id_qmk_rgb_matrix_effect} < 4 || {id_qmk_rgb_matrix_effect} == 18 || ({id_qmk_rgb_matrix_effect} > 17 && {id_qmk_rgb_matrix_effect} != 21) ) ", - "label": "Color", - "type": "color", - "content": ["id_qmk_rgb_matrix_color", 3, 4] - } - ] - } - ] - } - ], - "customKeycodes": [ - {"name": "Left Option", "title": "Left Option", "shortName": "LOpt"}, - {"name": "Right Option", "title": "Right Option", "shortName": "ROpt"}, - {"name": "Left Cmd", "title": "Left Command", "shortName": "LCmd"}, - {"name": "Right Cmd", "title": "Right Command", "shortName": "RCmd"}, - {"name": "Task View", "title": "Task View in Windows", "shortName": "Task"}, - {"name": "File Explorer", "title": "File Explorer in Windows", "shortName": "File"}, - {"name": "Screen shot", "title": "Screenshot in macOS", "shortName": "SShot"}, - {"name": "Cortana", "title": "Cortana in Windows", "shortName": "Cortana"}, - {"name": "Siri", "title": "Siri in macOS", "shortName": "Siri"}, - {"name": "Bluetooth Host 1", "title": "Bluetooth Host 1", "shortName": "BTH1"}, - {"name": "Bluetooth Host 2", "title": "Bluetooth Host 2", "shortName": "BTH2"}, - {"name": "Bluetooth Host 3", "title": "Bluetooth Host 3", "shortName": "BTH3"}, - {"name": "Battery Level", "title": "Show battery level", "shortName": "Batt"} - ], - "matrix": {"rows": 5, "cols": 16}, - "layouts": { - "keymap": [ - [ - { - "x": 15.25, - "c": "#aaaaaa" - }, - "0,15\n\n\n\n\n\n\n\n\ne0" - ], - [ - { - "y": -0.75, - "c": "#777777" - }, - "0,0\nESC", - { - "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", - { - "c": "#aaaaaa", - "w": 2 - }, - "0,13" - ], - [ - { - "w": 1.5 - }, - "1,0", - { - "c": "#cccccc" - }, - "1,1", - "1,2", - "1,3", - "1,4", - "1,5", - "1,6", - "1,7", - "1,8", - "1,9", - "1,10", - "1,11", - "1,12", - { - "x": 0.25, - "c": "#aaaaaa", - "w": 1.25, - "h": 2, - "w2": 1.5, - "h2": 1, - "x2": -0.25 - }, - "1,13", - { - "x": 0.25 - }, - "1,15" - ], - [ - { - "w": 1.75 - }, - "2,0", - { - "c": "#cccccc" - }, - "2,1", - "2,2", - "2,3", - "2,4", - "2,5", - "2,6", - "2,7", - "2,8", - "2,9", - "2,10", - "2,11", - { - "c": "#aaaaaa" - }, - "2,13", - { - "x": 1.5 - }, - "2,15" - ], - [ - { - "w": 1.25 - }, - "3,0", - "3,1", - { - "c": "#cccccc" - }, - "3,2", - "3,3", - "3,4", - "3,5", - "3,6", - "3,7", - "3,8", - "3,9", - "3,10", - "3,11", - { - "c": "#aaaaaa", - "w": 1.75 - }, - "3,13" - ], - [ - { - "y": -0.75, - "x": 14.25, - "c": "#777777" - }, - "3,14" - ], - [ - { - "y": -0.25, - "c": "#aaaaaa", - "w": 1.24 - }, - "4,0", - { - "w": 1.25 - }, - "4,1", - { - "w": 1.25 - }, - "4,2", - { - "c": "#cccccc", - "w": 6.25 - }, - "4,6", - { - "c": "#aaaaaa" - }, - "4,10", - "4,11", - "4,12" - ], - [ - { - "y": -0.75, - "x": 13.25, - "c": "#777777" - }, - "4,13", - "4,14", - "4,15" - ] - ] - } -} diff --git a/keyboards/keychron/q3_max/ansi_encoder/ansi_encoder.c b/keyboards/keychron/q3_max/ansi_encoder/ansi_encoder.c deleted file mode 100644 index 921d5de949..0000000000 --- a/keyboards/keychron/q3_max/ansi_encoder/ansi_encoder.c +++ /dev/null @@ -1,154 +0,0 @@ -/* Copyright 2024 @ 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/>. - */ - -#include "quantum.h" - -// clang-format off - -#ifdef RGB_MATRIX_ENABLE -const snled27351_led_t g_snled27351_leds[RGB_MATRIX_LED_COUNT] = { -/* Refer to SNLED27351 manual for these locations - * driver - * | R location - * | | G location - * | | | B location - * | | | | */ - {0, G_15, I_15, H_15}, - {0, G_14, I_14, H_14}, - {0, G_13, I_13, H_13}, - {0, G_12, I_12, H_12}, - {0, G_11, I_11, H_11}, - {0, G_10, I_10, H_10}, - {0, G_9, I_9, H_9}, - {0, G_8, I_8, H_8}, - {0, G_7, I_7, H_7}, - {0, G_6, I_6, H_6}, - {0, G_5, I_5, H_5}, - {0, G_4, I_4, H_4}, - {0, G_3, I_3, H_3}, - {0, G_1, I_1, H_1}, - {0, D_6, F_6, E_6}, - {0, D_5, F_5, E_5}, - - {0, A_15, C_15, B_15}, - {0, A_14, C_14, B_14}, - {0, A_13, C_13, B_13}, - {0, A_12, C_12, B_12}, - {0, A_11, C_11, B_11}, - {0, A_10, C_10, B_10}, - {0, A_9, C_9, B_9}, - {0, A_8, C_8, B_8}, - {0, A_7, C_7, B_7}, - {0, A_6, C_6, B_6}, - {0, A_5, C_5, B_5}, - {0, A_4, C_4, B_4}, - {0, A_3, C_3, B_3}, - {0, A_2, C_2, B_2}, - {0, A_1, C_1, B_1}, - {0, D_4, F_4, E_4}, - {0, D_3, F_3, E_3}, - - {0, J_15, L_15, K_15}, - {0, J_14, L_14, K_14}, - {0, J_13, L_13, K_13}, - {0, J_12, L_12, K_12}, - {0, J_11, L_11, K_11}, - {0, J_10, L_10, K_10}, - {0, J_9, L_9, K_9}, - {0, J_8, L_8, K_8}, - {0, J_7, L_7, K_7}, - {0, J_6, L_6, K_6}, - {0, J_5, L_5, K_5}, - {0, J_4, L_4, K_4}, - {0, J_3, L_3, K_3}, - {0, J_2, L_2, K_2}, - {0, J_1, L_1, K_1}, - {0, D_2, F_2, E_2}, - {0, D_1, F_1, E_1}, - - {1, A_15, C_15, B_15}, - {1, A_14, C_14, B_14}, - {1, A_13, C_13, B_13}, - {1, A_12, C_12, B_12}, - {1, A_11, C_11, B_11}, - {1, A_10, C_10, B_10}, - {1, A_9, C_9, B_9}, - {1, A_8, C_8, B_8}, - {1, A_7, C_7, B_7}, - {1, A_6, C_6, B_6}, - {1, A_5, C_5, B_5}, - {1, A_4, C_4, B_4}, - {1, A_2, C_2, B_2}, - - {1, G_15, I_15, H_15}, - {1, G_13, I_13, H_13}, - {1, G_12, I_12, H_12}, - {1, G_11, I_11, H_11}, - {1, G_10, I_10, H_10}, - {1, G_9, I_9, H_9}, - {1, G_8, I_8, H_8}, - {1, G_7, I_7, H_7}, - {1, G_6, I_6, H_6}, - {1, G_5, I_5, H_5}, - {1, G_4, I_4, H_4}, - {1, G_2, I_2, H_2}, - {1, G_1, I_1, H_1}, - - {1, D_15, F_15, E_15}, - {1, D_14, F_14, E_14}, - {1, D_13, F_13, E_13}, - {1, D_9, F_9, E_9}, - {1, D_7, F_7, E_7}, - {1, D_6, F_6, E_6}, - {1, D_5, F_5, E_5}, - {1, D_4, F_4, E_4}, - {1, D_3, F_3, E_3}, - {1, D_2, F_2, E_2}, - {1, D_1, F_1, E_1}, -}; - -#define __ NO_LED - -led_config_t g_led_config = { - { - // Key Matrix to LED Index - { 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, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49 }, - { 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, __, 62, __, __, __ }, - { 63, __, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, __, 74, __, 75, __ }, - { 76, 77, 78, __, __, __, 79, __, __, __, 80, 81, 82, 83, 84, 85, 86 }, - }, - { - // LED Index to Physical Position - {0, 0}, {16, 0}, {29, 0}, {42, 0}, {55, 0}, {71, 0}, {84, 0}, { 97, 0}, {110, 0}, {126, 0}, {139, 0}, {152, 0}, {165, 0}, {198, 0}, {211, 0}, {224, 0}, - {0,15}, {13,15}, {26,15}, {39,15}, {52,15}, {65,15}, {78,15}, { 91,15}, {104,15}, {117,15}, {130,15}, {143,15}, {156,15}, {176,15}, {198,15}, {211,15}, {224,15}, - {3,28}, {19,28}, {32,28}, {46,28}, {59,28}, {72,28}, {85,28}, { 98,28}, {111,28}, {124,28}, {137,28}, {150,28}, {163,28}, {179,28}, {198,28}, {211,28}, {224,28}, - {5,40}, {23,40}, {36,40}, {49,40}, {62,40}, {75,40}, {88,40}, {101,40}, {114,40}, {127,40}, {140,40}, {153,40}, {174,40}, - {8,52}, {29,52}, {42,52}, {55,52}, {68,52}, {81,52}, { 94,52}, {107,52}, {120,52}, {133,52}, {146,52}, {171,52}, {211,52}, - {2,64}, {18,64}, {34,64}, {83,64}, {131,64}, {148,64}, {164,64}, {180,64}, {198,64}, {211,64}, {224,64}, - }, - { - // RGB LED Index to Flag - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - } -}; -#endif diff --git a/keyboards/keychron/q3_max/ansi_encoder/config.h b/keyboards/keychron/q3_max/ansi_encoder/config.h deleted file mode 100644 index a733bf83ca..0000000000 --- a/keyboards/keychron/q3_max/ansi_encoder/config.h +++ /dev/null @@ -1,51 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#pragma once - -#ifdef RGB_MATRIX_ENABLE -/* RGB Matrix driver configuration */ -# define DRIVER_COUNT 2 -# define RGB_MATRIX_LED_COUNT 87 - -# define SPI_SCK_PIN A5 -# define SPI_MISO_PIN A6 -# define SPI_MOSI_PIN A7 - -# define DRIVER_CS_PINS \ - { B8, B9 } -# define SNLED23751_SPI_DIVISOR 16 -# define SPI_DRIVER SPID1 - -/* Set LED driver current */ -# define SNLED27351_CURRENT_TUNE \ - { 0x34, 0x34, 0x34, 0x34, 0x34, 0x34, 0x34, 0x34, 0x34, 0x34, 0x34, 0x34 } - -/* Set to infinit, which is use in USB mode by default */ -# define RGB_MATRIX_TIMEOUT RGB_MATRIX_TIMEOUT_INFINITE - -/* Allow shutdown of led driver to save power */ -# define RGB_MATRIX_DRIVER_SHUTDOWN_ENABLE -/* Turn off backlight on low brightness to save power */ -# define RGB_MATRIX_BRIGHTNESS_TURN_OFF_VAL 32 - -/* Caps lock indicating led */ -# define CAPS_LOCK_INDEX 50 - -# define RGB_MATRIX_KEYPRESSES -# define RGB_MATRIX_FRAMEBUFFER_EFFECTS - -#endif diff --git a/keyboards/keychron/q3_max/ansi_encoder/info.json b/keyboards/keychron/q3_max/ansi_encoder/info.json deleted file mode 100644 index 94971017e7..0000000000 --- a/keyboards/keychron/q3_max/ansi_encoder/info.json +++ /dev/null @@ -1,105 +0,0 @@ -{ - "usb": { - "pid": "0x0830", - "device_version": "1.0.0" - }, - "layouts": { - "LAYOUT_tkl_ansi": { - "layout": [ - {"matrix": [0, 0], "x": 0, "y": 0}, - {"matrix": [0, 1], "x": 1.25, "y": 0}, - {"matrix": [0, 2], "x": 2.25, "y": 0}, - {"matrix": [0, 3], "x": 3.25, "y": 0}, - {"matrix": [0, 4], "x": 4.25, "y": 0}, - {"matrix": [0, 5], "x": 5.5, "y": 0}, - {"matrix": [0, 6], "x": 6.5, "y": 0}, - {"matrix": [0, 7], "x": 7.5, "y": 0}, - {"matrix": [0, 8], "x": 8.5, "y": 0}, - {"matrix": [0, 9], "x": 9.75, "y": 0}, - {"matrix": [0, 10], "x": 10.75, "y": 0}, - {"matrix": [0, 11], "x": 11.75, "y": 0}, - {"matrix": [0, 12], "x": 12.75, "y": 0}, - {"matrix": [0, 13], "x": 14, "y": 0}, - {"matrix": [0, 14], "x": 15.25, "y": 0}, - {"matrix": [0, 15], "x": 16.25, "y": 0}, - {"matrix": [0, 16], "x": 17.25, "y": 0}, - - {"matrix": [1, 0], "x": 0, "y": 1.25}, - {"matrix": [1, 1], "x": 1, "y": 1.25}, - {"matrix": [1, 2], "x": 2, "y": 1.25}, - {"matrix": [1, 3], "x": 3, "y": 1.25}, - {"matrix": [1, 4], "x": 4, "y": 1.25}, - {"matrix": [1, 5], "x": 5, "y": 1.25}, - {"matrix": [1, 6], "x": 6, "y": 1.25}, - {"matrix": [1, 7], "x": 7, "y": 1.25}, - {"matrix": [1, 8], "x": 8, "y": 1.25}, - {"matrix": [1, 9], "x": 9, "y": 1.25}, - {"matrix": [1, 10], "x": 10, "y": 1.25}, - {"matrix": [1, 11], "x": 11, "y": 1.25}, - {"matrix": [1, 12], "x": 12, "y": 1.25}, - {"matrix": [1, 13], "x": 13, "y": 1.25, "w": 2}, - {"matrix": [1, 14], "x": 15.25, "y": 1.25}, - {"matrix": [1, 15], "x": 16.25, "y": 1.25}, - {"matrix": [1, 16], "x": 17.25, "y": 1.25}, - - {"matrix": [2, 0], "x": 0, "y": 2.25, "w": 1.5}, - {"matrix": [2, 1], "x": 1.5, "y": 2.25}, - {"matrix": [2, 2], "x": 2.5, "y": 2.25}, - {"matrix": [2, 3], "x": 3.5, "y": 2.25}, - {"matrix": [2, 4], "x": 4.5, "y": 2.25}, - {"matrix": [2, 5], "x": 5.5, "y": 2.25}, - {"matrix": [2, 6], "x": 6.5, "y": 2.25}, - {"matrix": [2, 7], "x": 7.5, "y": 2.25}, - {"matrix": [2, 8], "x": 8.5, "y": 2.25}, - {"matrix": [2, 9], "x": 9.5, "y": 2.25}, - {"matrix": [2, 10], "x": 10.5, "y": 2.25}, - {"matrix": [2, 11], "x": 11.5, "y": 2.25}, - {"matrix": [2, 12], "x": 12.5, "y": 2.25}, - {"matrix": [2, 13], "x": 13.5, "y": 2.25, "w": 1.5}, - {"matrix": [2, 14], "x": 15.25, "y": 2.25}, - {"matrix": [2, 15], "x": 16.25, "y": 2.25}, - {"matrix": [2, 16], "x": 17.25, "y": 2.25}, - - {"matrix": [3, 0], "x": 0, "y": 3.25, "w": 1.75}, - {"matrix": [3, 1], "x": 1.75, "y": 3.25}, - {"matrix": [3, 2], "x": 2.75, "y": 3.25}, - {"matrix": [3, 3], "x": 3.75, "y": 3.25}, - {"matrix": [3, 4], "x": 4.75, "y": 3.25}, - {"matrix": [3, 5], "x": 5.75, "y": 3.25}, - {"matrix": [3, 6], "x": 6.75, "y": 3.25}, - {"matrix": [3, 7], "x": 7.75, "y": 3.25}, - {"matrix": [3, 8], "x": 8.75, "y": 3.25}, - {"matrix": [3, 9], "x": 9.75, "y": 3.25}, - {"matrix": [3, 10], "x": 10.75, "y": 3.25}, - {"matrix": [3, 11], "x": 11.75, "y": 3.25}, - {"matrix": [3, 13], "x": 12.75, "y": 3.25, "w": 2.25}, - - {"matrix": [4, 0], "x": 0, "y": 4.25, "w": 2.25}, - {"matrix": [4, 2], "x": 2.25, "y": 4.25}, - {"matrix": [4, 3], "x": 3.25, "y": 4.25}, - {"matrix": [4, 4], "x": 4.25, "y": 4.25}, - {"matrix": [4, 5], "x": 5.25, "y": 4.25}, - {"matrix": [4, 6], "x": 6.25, "y": 4.25}, - {"matrix": [4, 7], "x": 7.25, "y": 4.25}, - {"matrix": [4, 8], "x": 8.25, "y": 4.25}, - {"matrix": [4, 9], "x": 9.25, "y": 4.25}, - {"matrix": [4, 10], "x": 10.25, "y": 4.25}, - {"matrix": [4, 11], "x": 11.25, "y": 4.25}, - {"matrix": [4, 13], "x": 12.25, "y": 4.25, "w": 2.75}, - {"matrix": [4, 15], "x": 16.25, "y": 4.25}, - - {"matrix": [5, 0], "x": 0, "y": 5.25, "w": 1.25}, - {"matrix": [5, 1], "x": 1.25, "y": 5.25, "w": 1.25}, - {"matrix": [5, 2], "x": 2.5, "y": 5.25, "w": 1.25}, - {"matrix": [5, 6], "x": 3.75, "y": 5.25, "w": 6.25}, - {"matrix": [5, 10], "x": 10, "y": 5.25, "w": 1.25}, - {"matrix": [5, 11], "x": 11.25, "y": 5.25, "w": 1.25}, - {"matrix": [5, 12], "x": 12.5, "y": 5.25, "w": 1.25}, - {"matrix": [5, 13], "x": 13.75, "y": 5.25, "w": 1.25}, - {"matrix": [5, 14], "x": 15.25, "y": 5.25}, - {"matrix": [5, 15], "x": 16.25, "y": 5.25}, - {"matrix": [5, 16], "x": 17.25, "y": 5.25} - ] - } - } -} diff --git a/keyboards/keychron/q3_max/ansi_encoder/keymaps/default/keymap.c b/keyboards/keychron/q3_max/ansi_encoder/keymaps/default/keymap.c deleted file mode 100644 index bb95acf1c5..0000000000 --- a/keyboards/keychron/q3_max/ansi_encoder/keymaps/default/keymap.c +++ /dev/null @@ -1,77 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#include QMK_KEYBOARD_H -#include "keychron_common.h" - -enum layers { - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN, -}; - -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_tkl_ansi( - KC_ESC, KC_BRID, KC_BRIU, KC_MCTRL, KC_LNPAD, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_MUTE, KC_SNAP, KC_SIRI, RGB_MOD, - KC_GRV, 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_INS, KC_HOME, KC_PGUP, - 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_DEL, KC_END, KC_PGDN, - 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_LCTL, KC_LOPTN, KC_LCMMD, KC_SPC, KC_RCMMD, KC_ROPTN, MO(MAC_FN), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - - [MAC_FN] = LAYOUT_tkl_ansi( - _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, RGB_TOG, _______, _______, RGB_TOG, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - - [WIN_BASE] = LAYOUT_tkl_ansi( - KC_ESC, 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_MUTE, KC_PSCR, KC_CTANA, RGB_MOD, - KC_GRV, 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_INS, KC_HOME, KC_PGUP, - 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_DEL, KC_END, KC_PGDN, - 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_LCTL, KC_LCMD, KC_LALT, KC_SPC, KC_RALT, KC_RWIN, MO(WIN_FN), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - - [WIN_FN] = LAYOUT_tkl_ansi( - _______, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, RGB_TOG, _______, _______, RGB_TOG, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), -}; - -// clang-format on -#if defined(ENCODER_MAP_ENABLE) -const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][2] = { - [MAC_BASE] = {ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [MAC_FN] = {ENCODER_CCW_CW(RGB_VAD, RGB_VAI)}, - [WIN_BASE] = {ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [WIN_FN] = {ENCODER_CCW_CW(RGB_VAD, RGB_VAI)}, -}; -#endif // ENCODER_MAP_ENABLE - -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - if (!process_record_keychron_common(keycode, record)) { - return false; - } - return true; -} diff --git a/keyboards/keychron/q3_max/ansi_encoder/keymaps/via/keymap.c b/keyboards/keychron/q3_max/ansi_encoder/keymaps/via/keymap.c deleted file mode 100644 index bb95acf1c5..0000000000 --- a/keyboards/keychron/q3_max/ansi_encoder/keymaps/via/keymap.c +++ /dev/null @@ -1,77 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#include QMK_KEYBOARD_H -#include "keychron_common.h" - -enum layers { - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN, -}; - -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_tkl_ansi( - KC_ESC, KC_BRID, KC_BRIU, KC_MCTRL, KC_LNPAD, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_MUTE, KC_SNAP, KC_SIRI, RGB_MOD, - KC_GRV, 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_INS, KC_HOME, KC_PGUP, - 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_DEL, KC_END, KC_PGDN, - 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_LCTL, KC_LOPTN, KC_LCMMD, KC_SPC, KC_RCMMD, KC_ROPTN, MO(MAC_FN), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - - [MAC_FN] = LAYOUT_tkl_ansi( - _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, RGB_TOG, _______, _______, RGB_TOG, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - - [WIN_BASE] = LAYOUT_tkl_ansi( - KC_ESC, 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_MUTE, KC_PSCR, KC_CTANA, RGB_MOD, - KC_GRV, 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_INS, KC_HOME, KC_PGUP, - 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_DEL, KC_END, KC_PGDN, - 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_LCTL, KC_LCMD, KC_LALT, KC_SPC, KC_RALT, KC_RWIN, MO(WIN_FN), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - - [WIN_FN] = LAYOUT_tkl_ansi( - _______, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, RGB_TOG, _______, _______, RGB_TOG, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), -}; - -// clang-format on -#if defined(ENCODER_MAP_ENABLE) -const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][2] = { - [MAC_BASE] = {ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [MAC_FN] = {ENCODER_CCW_CW(RGB_VAD, RGB_VAI)}, - [WIN_BASE] = {ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [WIN_FN] = {ENCODER_CCW_CW(RGB_VAD, RGB_VAI)}, -}; -#endif // ENCODER_MAP_ENABLE - -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - if (!process_record_keychron_common(keycode, record)) { - return false; - } - return true; -} diff --git a/keyboards/keychron/q3_max/ansi_encoder/keymaps/via/rules.mk b/keyboards/keychron/q3_max/ansi_encoder/keymaps/via/rules.mk deleted file mode 100644 index 1e5b99807c..0000000000 --- a/keyboards/keychron/q3_max/ansi_encoder/keymaps/via/rules.mk +++ /dev/null @@ -1 +0,0 @@ -VIA_ENABLE = yes diff --git a/keyboards/keychron/q3_max/ansi_encoder/rules.mk b/keyboards/keychron/q3_max/ansi_encoder/rules.mk deleted file mode 100644 index 7ff128fa69..0000000000 --- a/keyboards/keychron/q3_max/ansi_encoder/rules.mk +++ /dev/null @@ -1 +0,0 @@ -# This file intentionally left blank \ No newline at end of file diff --git a/keyboards/keychron/q3_max/board.h b/keyboards/keychron/q3_max/board.h deleted file mode 100644 index 2f57b47ecf..0000000000 --- a/keyboards/keychron/q3_max/board.h +++ /dev/null @@ -1,226 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#pragma once - -#include_next - -// clang-format off - -/* Set GPIOA_SWDIO to INPUT and NOT FLOATING */ -#undef VAL_GPIOA_MODER -#define VAL_GPIOA_MODER (PIN_MODE_INPUT(GPIOA_BUTTON) | \ - PIN_MODE_INPUT(GPIOA_PIN1) | \ - PIN_MODE_INPUT(GPIOA_PIN2) | \ - PIN_MODE_INPUT(GPIOA_PIN3) | \ - PIN_MODE_ALTERNATE(GPIOA_CS43L22_LRCK) |\ - PIN_MODE_ALTERNATE(GPIOA_L3GD20_SCL) | \ - PIN_MODE_ALTERNATE(GPIOA_L3GD20_SD0) | \ - PIN_MODE_ALTERNATE(GPIOA_L3GD20_SDI) | \ - PIN_MODE_INPUT(GPIOA_PIN8) | \ - PIN_MODE_INPUT(GPIOA_VBUS_FS) | \ - PIN_MODE_ALTERNATE(GPIOA_OTG_FS_ID) | \ - PIN_MODE_ALTERNATE(GPIOA_OTG_FS_DM) | \ - PIN_MODE_ALTERNATE(GPIOA_OTG_FS_DP) | \ - PIN_MODE_INPUT(GPIOA_SWDIO) | \ - PIN_MODE_INPUT(GPIOA_SWCLK) | \ - PIN_MODE_INPUT(GPIOA_PIN15)) - -#undef VAL_GPIOA_PUPDR -#define VAL_GPIOA_PUPDR (PIN_PUPDR_FLOATING(GPIOA_BUTTON) | \ - PIN_PUPDR_PULLUP(GPIOA_PIN1) | \ - PIN_PUPDR_PULLUP(GPIOA_PIN2) | \ - PIN_PUPDR_PULLUP(GPIOA_PIN3) | \ - PIN_PUPDR_FLOATING(GPIOA_CS43L22_LRCK) |\ - PIN_PUPDR_FLOATING(GPIOA_L3GD20_SCL) | \ - PIN_PUPDR_PULLUP(GPIOA_L3GD20_SD0) | \ - PIN_PUPDR_PULLUP(GPIOA_L3GD20_SDI) | \ - PIN_PUPDR_PULLDOWN(GPIOA_PIN8) | \ - PIN_PUPDR_FLOATING(GPIOA_VBUS_FS) | \ - PIN_PUPDR_FLOATING(GPIOA_OTG_FS_ID) | \ - PIN_PUPDR_FLOATING(GPIOA_OTG_FS_DM) | \ - PIN_PUPDR_FLOATING(GPIOA_OTG_FS_DP) | \ - PIN_PUPDR_PULLUP(GPIOA_SWDIO) | \ - PIN_PUPDR_PULLUP(GPIOA_SWCLK) | \ - PIN_PUPDR_PULLUP(GPIOA_PIN15)) - -#undef VAL_GPIOB_MODER -#define VAL_GPIOB_MODER (PIN_MODE_INPUT(GPIOB_PIN0) | \ - PIN_MODE_INPUT(GPIOB_PIN1) | \ - PIN_MODE_INPUT(GPIOB_PIN2) | \ - PIN_MODE_INPUT(GPIOB_SWO) | \ - PIN_MODE_INPUT(GPIOB_PIN4) | \ - PIN_MODE_INPUT(GPIOB_PIN5) | \ - PIN_MODE_INPUT(GPIOB_LSM303DLHC_SCL) | \ - PIN_MODE_INPUT(GPIOB_PIN7) | \ - PIN_MODE_INPUT(GPIOB_PIN8) | \ - PIN_MODE_INPUT(GPIOB_LSM303DLHC_SDA) | \ - PIN_MODE_INPUT(GPIOB_MP45DT02_CLK_IN) |\ - PIN_MODE_INPUT(GPIOB_PIN11) | \ - PIN_MODE_INPUT(GPIOB_PIN12) | \ - PIN_MODE_INPUT(GPIOB_PIN13) | \ - PIN_MODE_INPUT(GPIOB_PIN14) | \ - PIN_MODE_INPUT(GPIOB_PIN15)) - -#undef VAL_GPIOB_PUPDR -#define VAL_GPIOB_PUPDR (PIN_PUPDR_PULLDOWN(GPIOB_PIN0) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN1) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN2) | \ - PIN_PUPDR_PULLDOWN(GPIOB_SWO) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN4) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN5) | \ - PIN_PUPDR_PULLDOWN(GPIOB_LSM303DLHC_SCL) |\ - PIN_PUPDR_PULLDOWN(GPIOB_PIN7) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN8) | \ - PIN_PUPDR_PULLDOWN(GPIOB_LSM303DLHC_SDA) |\ - PIN_PUPDR_PULLDOWN(GPIOB_MP45DT02_CLK_IN) |\ - PIN_PUPDR_PULLDOWN(GPIOB_PIN11) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN12) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN13) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN14) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN15)) - -#undef VAL_GPIOB_AFRL -#define VAL_GPIOB_AFRL (PIN_AFIO_AF(GPIOB_PIN0, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN1, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN2, 0U) | \ - PIN_AFIO_AF(GPIOB_SWO, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN4, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN5, 0U) | \ - PIN_AFIO_AF(GPIOB_LSM303DLHC_SCL, 0) | \ - PIN_AFIO_AF(GPIOB_PIN7, 0U)) - -#undef VAL_GPIOB_AFRH -#define VAL_GPIOB_AFRH (PIN_AFIO_AF(GPIOB_PIN8, 0U) | \ - PIN_AFIO_AF(GPIOB_LSM303DLHC_SDA, 0) | \ - PIN_AFIO_AF(GPIOB_MP45DT02_CLK_IN, 0U) |\ - PIN_AFIO_AF(GPIOB_PIN11, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN12, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN13, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN14, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN15, 0U)) - -/* C5 Need to be pulldown */ -#undef VAL_GPIOC_MODER -#define VAL_GPIOC_MODER (PIN_MODE_INPUT(GPIOC_OTG_FS_POWER_ON) |\ - PIN_MODE_INPUT(GPIOC_PIN1) | \ - PIN_MODE_INPUT(GPIOC_PIN2) | \ - PIN_MODE_INPUT(GPIOC_CS43L22_AIN4x) | \ - PIN_MODE_INPUT(GPIOC_PIN4) | \ - PIN_MODE_INPUT(GPIOC_PIN5) | \ - PIN_MODE_INPUT(GPIOC_PIN6) | \ - PIN_MODE_INPUT(GPIOC_CS43L22_MCLK) | \ - PIN_MODE_INPUT(GPIOC_PIN8) | \ - PIN_MODE_INPUT(GPIOC_PIN9) | \ - PIN_MODE_INPUT(GPIOC_CS43L22_SCLK) | \ - PIN_MODE_INPUT(GPIOC_PIN11) | \ - PIN_MODE_INPUT(GPIOC_CS43L22_SDIN) | \ - PIN_MODE_INPUT(GPIOC_PIN13) | \ - PIN_MODE_INPUT(GPIOC_OSC32_IN) | \ - PIN_MODE_INPUT(GPIOC_OSC32_OUT)) - -#undef VAL_GPIOC_PUPDR -#define VAL_GPIOC_PUPDR (PIN_PUPDR_PULLUP(GPIOC_OTG_FS_POWER_ON) |\ - PIN_PUPDR_PULLUP(GPIOC_PIN1) | \ - PIN_PUPDR_PULLUP(GPIOC_PIN2) | \ - PIN_PUPDR_PULLUP(GPIOC_CS43L22_AIN4x) |\ - PIN_PUPDR_PULLUP(GPIOC_PIN4) | \ - PIN_PUPDR_PULLDOWN(GPIOC_PIN5) | \ - PIN_PUPDR_PULLUP(GPIOC_PIN6) | \ - PIN_PUPDR_PULLUP(GPIOC_CS43L22_MCLK) | \ - PIN_PUPDR_PULLUP(GPIOC_PIN8) | \ - PIN_PUPDR_PULLUP(GPIOC_PIN9) | \ - PIN_PUPDR_PULLUP(GPIOC_CS43L22_SCLK) | \ - PIN_PUPDR_PULLUP(GPIOC_PIN11) | \ - PIN_PUPDR_PULLUP(GPIOC_CS43L22_SDIN) | \ - PIN_PUPDR_PULLUP(GPIOC_PIN13) | \ - PIN_PUPDR_PULLUP(GPIOC_OSC32_IN) | \ - PIN_PUPDR_PULLUP(GPIOC_OSC32_OUT)) - -/* Set all GPIOD pins to INPUT & PULLUP to avoid FLOATING */ -#undef VAL_GPIOD_MODER -#define VAL_GPIOD_MODER (PIN_MODE_INPUT(GPIOD_PIN0) | \ - PIN_MODE_INPUT(GPIOD_PIN1) | \ - PIN_MODE_INPUT(GPIOD_PIN2) | \ - PIN_MODE_INPUT(GPIOD_PIN3) | \ - PIN_MODE_INPUT(GPIOD_CS43L22_RESET) | \ - PIN_MODE_INPUT(GPIOD_OverCurrent) | \ - PIN_MODE_INPUT(GPIOD_PIN6) | \ - PIN_MODE_INPUT(GPIOD_PIN7) | \ - PIN_MODE_INPUT(GPIOD_PIN8) | \ - PIN_MODE_INPUT(GPIOD_PIN9) | \ - PIN_MODE_INPUT(GPIOD_PIN10) | \ - PIN_MODE_INPUT(GPIOD_PIN11) | \ - PIN_MODE_INPUT(GPIOD_LED4) | \ - PIN_MODE_INPUT(GPIOD_LED3) | \ - PIN_MODE_INPUT(GPIOD_LED5) | \ - PIN_MODE_INPUT(GPIOD_LED6)) - -#undef VAL_GPIOD_PUPDR -#define VAL_GPIOD_PUPDR (PIN_PUPDR_PULLUP(GPIOD_PIN0) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN1) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN2) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN3) | \ - PIN_PUPDR_PULLUP(GPIOD_CS43L22_RESET) |\ - PIN_PUPDR_PULLUP(GPIOD_OverCurrent) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN6) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN7) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN8) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN9) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN10) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN11) | \ - PIN_PUPDR_PULLUP(GPIOD_LED4) | \ - PIN_PUPDR_PULLUP(GPIOD_LED3) | \ - PIN_PUPDR_PULLUP(GPIOD_LED5) | \ - PIN_PUPDR_PULLUP(GPIOD_LED6)) - -/* Set all GPIOE pins to INPUT & PULLUP to avoid FLOATING */ -#undef VAL_GPIOE_MODER -#define VAL_GPIOE_MODER (PIN_MODE_INPUT(GPIOE_L3GD20_INT1) | \ - PIN_MODE_INPUT(GPIOE_L3GD20_INT2) | \ - PIN_MODE_INPUT(GPIOE_LSM303DLHC_DRDY) |\ - PIN_MODE_INPUT(GPIOE_L3GD20_CS) | \ - PIN_MODE_INPUT(GPIOE_LSM303DLHC_INT1) |\ - PIN_MODE_INPUT(GPIOE_LSM303DLHC_INT2) |\ - PIN_MODE_INPUT(GPIOE_PIN6) | \ - PIN_MODE_INPUT(GPIOE_PIN7) | \ - PIN_MODE_INPUT(GPIOE_PIN8) | \ - PIN_MODE_INPUT(GPIOE_PIN9) | \ - PIN_MODE_INPUT(GPIOE_PIN10) | \ - PIN_MODE_INPUT(GPIOE_PIN11) | \ - PIN_MODE_INPUT(GPIOE_PIN12) | \ - PIN_MODE_INPUT(GPIOE_PIN13) | \ - PIN_MODE_INPUT(GPIOE_PIN14) | \ - PIN_MODE_INPUT(GPIOE_PIN15)) - -#undef VAL_GPIOE_PUPDR -#define VAL_GPIOE_PUPDR (PIN_PUPDR_PULLUP(GPIOE_L3GD20_INT1) | \ - PIN_PUPDR_PULLUP(GPIOE_L3GD20_INT2) | \ - PIN_PUPDR_PULLUP(GPIOE_LSM303DLHC_DRDY) |\ - PIN_PUPDR_PULLUP(GPIOE_L3GD20_CS) | \ - PIN_PUPDR_PULLUP(GPIOE_LSM303DLHC_INT1) |\ - PIN_PUPDR_PULLUP(GPIOE_LSM303DLHC_INT2) |\ - PIN_PUPDR_PULLUP(GPIOE_PIN6) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN7) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN8) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN9) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN10) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN11) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN12) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN13) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN14) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN15)) - diff --git a/keyboards/keychron/q3_max/config.h b/keyboards/keychron/q3_max/config.h deleted file mode 100644 index d3ff493bf6..0000000000 --- a/keyboards/keychron/q3_max/config.h +++ /dev/null @@ -1,84 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#pragma once - -/* Encoder Configuration */ -#define ENCODER_DEFAULT_POS 0x3 -#define ENCODER_MAP_KEY_DELAY 2 - -#ifdef LK_WIRELESS_ENABLE -/* Hardware configuration */ -# define P2P4_MODE_SELECT_PIN A10 -# define BT_MODE_SELECT_PIN A9 - -# define LKBT51_RESET_PIN C4 -# define LKBT51_INT_INPUT_PIN B1 -# define BLUETOOTH_INT_OUTPUT_PIN A4 - -# define USB_POWER_SENSE_PIN B0 -# define USB_POWER_CONNECTED_LEVEL 0 - -# define BAT_CHARGING_PIN B13 -# define BAT_CHARGING_LEVEL 0 - -# define BAT_LOW_LED_PIN A8 -# define BAT_LOW_LED_PIN_ON_STATE 1 - -# define BT_HOST_DEVICES_COUNT 3 - -# if defined(RGB_MATRIX_ENABLE) || defined(LED_MATRIX_ENABLE) - -# define LED_DRIVER_SHUTDOWN_PIN B7 - -# define BT_HOST_LED_MATRIX_LIST \ - { 17, 18, 19 } - -# define P2P4G_HOST_LED_MATRIX_LIST \ - { 20 } - -# 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 - -/* Reinit LED driver on tranport changed */ -# define REINIT_LED_DRIVER 1 - -# endif - -/* Keep USB connection in blueooth mode */ -# define KEEP_USB_CONNECTION_IN_WIRELESS_MODE - -/* Enable bluetooth NKRO */ -# define WIRELESS_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 - -/* Factory test keys */ -#define FN_KEY_1 MO(1) -#define FN_KEY_2 MO(3) - -#define MATRIX_IO_DELAY 10 diff --git a/keyboards/keychron/q3_max/firmware/keychron_q3_max_ansi_encoder_via.bin b/keyboards/keychron/q3_max/firmware/keychron_q3_max_ansi_encoder_via.bin deleted file mode 100644 index 715d72ab0d..0000000000 Binary files a/keyboards/keychron/q3_max/firmware/keychron_q3_max_ansi_encoder_via.bin and /dev/null differ diff --git a/keyboards/keychron/q3_max/firmware/keychron_q3_max_iso_encoder_via.bin b/keyboards/keychron/q3_max/firmware/keychron_q3_max_iso_encoder_via.bin deleted file mode 100644 index 68a4983340..0000000000 Binary files a/keyboards/keychron/q3_max/firmware/keychron_q3_max_iso_encoder_via.bin and /dev/null differ diff --git a/keyboards/keychron/q3_max/halconf.h b/keyboards/keychron/q3_max/halconf.h deleted file mode 100644 index 37bcc7c47b..0000000000 --- a/keyboards/keychron/q3_max/halconf.h +++ /dev/null @@ -1,31 +0,0 @@ -/* Copyright 2024 @ 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 - -#define _CHIBIOS_HAL_CONF_VER_8_0_ - -#define HAL_USE_SPI TRUE - -#ifdef LK_WIRELESS_ENABLE -# define HAL_USE_RTC TRUE -#endif - -#if defined(LK_WIRELESS_ENABLE) || defined(ENCODER_ENABLE) -# define PAL_USE_CALLBACKS TRUE -#endif - -#include_next diff --git a/keyboards/keychron/q3_max/info.json b/keyboards/keychron/q3_max/info.json deleted file mode 100644 index bdeba1c153..0000000000 --- a/keyboards/keychron/q3_max/info.json +++ /dev/null @@ -1,77 +0,0 @@ -{ - "keyboard_name": "Keychron Q3 Max", - "manufacturer": "Keychron", - "url": "https://github.com/Keychron", - "maintainer": "lokher", - "processor": "STM32F401", - "bootloader": "stm32-dfu", - "usb": { - "vid": "0x3434" - }, - "features": { - "bootmagic": true, - "extrakey" : true, - "mousekey" : true, - "dip_switch" : true, - "encoder": true, - "encoder_map": true, - "nkro" : true, - "rgb_matrix": true, - "raw" : true, - "send_string" : true - }, - "matrix_pins": { - "cols": ["C6", "C7", "C8", "A14", "A15", "C10", "C11", "C13", "C14", "C15", "C0", "C1", "C2", "C3", "A0", "A1", "A2"], - "rows": ["C12", "D2", "B3", "B4", "B5", "B6"] - }, - "diode_direction": "ROW2COL", - "encoder": { - "rotary": [ - { - "pin_a": "B15", - "pin_b": "B14" - } - ] - }, - "dip_switch" :{ - "pins": ["C9"] - }, - "rgb_matrix": { - "driver": "snled27351_spi", - "sleep": true, - "animations": { - "band_spiral_val": true, - "breathing": true, - "cycle_all": true, - "cycle_left_right": true, - "cycle_out_in": true, - "cycle_out_in_dual": true, - "cycle_pinwheel": true, - "cycle_spiral": true, - "cycle_up_down": true, - "digital_rain": true, - "dual_beacon": true, - "jellybean_raindrops": true, - "pixel_rain": true, - "rainbow_beacon": true, - "rainbow_moving_chevron": true, - "solid_reactive_multinexus": true, - "solid_reactive_multiwide": true, - "solid_reactive_simple": true, - "solid_splash": true, - "splash": true, - "typing_heatmap": true - } - }, - "eeprom": { - "wear_leveling": { - "driver": "embedded_flash", - "logical_size": 2048, - "backing_size": 4096 - } - }, - "build": { - "debounce_type": "sym_eager_pk" - }, - "debounce": 20 -} diff --git a/keyboards/keychron/q3_max/iso_encoder/config.h b/keyboards/keychron/q3_max/iso_encoder/config.h deleted file mode 100644 index 678b297209..0000000000 --- a/keyboards/keychron/q3_max/iso_encoder/config.h +++ /dev/null @@ -1,51 +0,0 @@ -/* 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 . - */ - -#pragma once - -#ifdef RGB_MATRIX_ENABLE -/* RGB Matrix driver configuration */ -# define DRIVER_COUNT 2 -# define RGB_MATRIX_LED_COUNT 88 - -# define SPI_SCK_PIN A5 -# define SPI_MISO_PIN A6 -# define SPI_MOSI_PIN A7 - -# define DRIVER_CS_PINS \ - { B8, B9 } -# define SNLED23751_SPI_DIVISOR 16 -# define SPI_DRIVER SPID1 - -/* Set LED driver current */ -# define SNLED27351_CURRENT_TUNE \ - { 0x34, 0x34, 0x34, 0x34, 0x34, 0x34, 0x34, 0x34, 0x34, 0x34, 0x34, 0x34 } - -/* Set to infinit, which is use in USB mode by default */ -# define RGB_MATRIX_TIMEOUT RGB_MATRIX_TIMEOUT_INFINITE - -/* Allow shutdown of led driver to save power */ -# define RGB_MATRIX_DRIVER_SHUTDOWN_ENABLE -/* Turn off backlight on low brightness to save power */ -# define RGB_MATRIX_BRIGHTNESS_TURN_OFF_VAL 32 - -/* Caps lock indicating led */ -# define CAPS_LOCK_INDEX 51 - -# define RGB_MATRIX_KEYPRESSES -# define RGB_MATRIX_FRAMEBUFFER_EFFECTS - -#endif diff --git a/keyboards/keychron/q3_max/iso_encoder/info.json b/keyboards/keychron/q3_max/iso_encoder/info.json deleted file mode 100644 index d2d6c6c970..0000000000 --- a/keyboards/keychron/q3_max/iso_encoder/info.json +++ /dev/null @@ -1,107 +0,0 @@ -{ - "usb": { - "pid": "0x0831", - "device_version": "1.0.0" - }, - "layouts": { - "LAYOUT_iso_88": { - "layout": [ - {"matrix": [0, 0], "x": 0, "y": 0}, - {"matrix": [0, 1], "x": 1.25, "y": 0}, - {"matrix": [0, 2], "x": 2.25, "y": 0}, - {"matrix": [0, 3], "x": 3.25, "y": 0}, - {"matrix": [0, 4], "x": 4.25, "y": 0}, - {"matrix": [0, 5], "x": 5.5, "y": 0}, - {"matrix": [0, 6], "x": 6.5, "y": 0}, - {"matrix": [0, 7], "x": 7.5, "y": 0}, - {"matrix": [0, 8], "x": 8.5, "y": 0}, - {"matrix": [0, 9], "x": 9.75, "y": 0}, - {"matrix": [0, 10], "x": 10.75, "y": 0}, - {"matrix": [0, 11], "x": 11.75, "y": 0}, - {"matrix": [0, 12], "x": 12.75, "y": 0}, - {"matrix": [0, 13], "x": 14, "y": 0}, - {"matrix": [0, 14], "x": 15.25, "y": 0}, - {"matrix": [0, 15], "x": 16.25, "y": 0}, - {"matrix": [0, 16], "x": 17.25, "y": 0}, - - {"matrix": [1, 0], "x": 0, "y": 1.25}, - {"matrix": [1, 1], "x": 1, "y": 1.25}, - {"matrix": [1, 2], "x": 2, "y": 1.25}, - {"matrix": [1, 3], "x": 3, "y": 1.25}, - {"matrix": [1, 4], "x": 4, "y": 1.25}, - {"matrix": [1, 5], "x": 5, "y": 1.25}, - {"matrix": [1, 6], "x": 6, "y": 1.25}, - {"matrix": [1, 7], "x": 7, "y": 1.25}, - {"matrix": [1, 8], "x": 8, "y": 1.25}, - {"matrix": [1, 9], "x": 9, "y": 1.25}, - {"matrix": [1, 10], "x": 10, "y": 1.25}, - {"matrix": [1, 11], "x": 11, "y": 1.25}, - {"matrix": [1, 12], "x": 12, "y": 1.25}, - {"matrix": [1, 13], "x": 13, "y": 1.25, "w": 2}, - {"matrix": [1, 14], "x": 15.25, "y": 1.25}, - {"matrix": [1, 15], "x": 16.25, "y": 1.25}, - {"matrix": [1, 16], "x": 17.25, "y": 1.25}, - - {"matrix": [2, 0], "x": 0, "y": 2.25, "w": 1.5}, - {"matrix": [2, 1], "x": 1.5, "y": 2.25}, - {"matrix": [2, 2], "x": 2.5, "y": 2.25}, - {"matrix": [2, 3], "x": 3.5, "y": 2.25}, - {"matrix": [2, 4], "x": 4.5, "y": 2.25}, - {"matrix": [2, 5], "x": 5.5, "y": 2.25}, - {"matrix": [2, 6], "x": 6.5, "y": 2.25}, - {"matrix": [2, 7], "x": 7.5, "y": 2.25}, - {"matrix": [2, 8], "x": 8.5, "y": 2.25}, - {"matrix": [2, 9], "x": 9.5, "y": 2.25}, - {"matrix": [2, 10], "x": 10.5, "y": 2.25}, - {"matrix": [2, 11], "x": 11.5, "y": 2.25}, - {"matrix": [2, 12], "x": 12.5, "y": 2.25}, - {"matrix": [2, 13], "x": 13.5, "y": 2.25,"w":1.5,"h":2}, - {"matrix": [2, 14], "x": 15.25, "y": 2.25}, - {"matrix": [2, 15], "x": 16.25, "y": 2.25}, - {"matrix": [2, 16], "x": 17.25, "y": 2.25}, - - {"matrix": [3, 0], "x": 0, "y": 3.25, "w": 1.75}, - {"matrix": [3, 1], "x": 1.75, "y": 3.25}, - {"matrix": [3, 2], "x": 2.75, "y": 3.25}, - {"matrix": [3, 3], "x": 3.75, "y": 3.25}, - {"matrix": [3, 4], "x": 4.75, "y": 3.25}, - {"matrix": [3, 5], "x": 5.75, "y": 3.25}, - {"matrix": [3, 6], "x": 6.75, "y": 3.25}, - {"matrix": [3, 7], "x": 7.75, "y": 3.25}, - {"matrix": [3, 8], "x": 8.75, "y": 3.25}, - {"matrix": [3, 9], "x": 9.75, "y": 3.25}, - {"matrix": [3, 10], "x": 10.75, "y": 3.25}, - {"matrix": [3, 11], "x": 11.75, "y": 3.25}, - {"matrix": [3, 12], "x": 12.75, "y": 3.25}, - - - {"matrix": [4, 0], "x": 0, "y": 4.25, "w": 1.25}, - {"matrix": [4, 1], "x": 1.25, "y": 4.25}, - {"matrix": [4, 2], "x": 2.25, "y": 4.25}, - {"matrix": [4, 3], "x": 3.25, "y": 4.25}, - {"matrix": [4, 4], "x": 4.25, "y": 4.25}, - {"matrix": [4, 5], "x": 5.25, "y": 4.25}, - {"matrix": [4, 6], "x": 6.25, "y": 4.25}, - {"matrix": [4, 7], "x": 7.25, "y": 4.25}, - {"matrix": [4, 8], "x": 8.25, "y": 4.25}, - {"matrix": [4, 9], "x": 9.25, "y": 4.25}, - {"matrix": [4, 10], "x": 10.25, "y": 4.25}, - {"matrix": [4, 11], "x": 11.25, "y": 4.25}, - {"matrix": [4, 13], "x": 12.25, "y": 4.25, "w": 2.25}, - {"matrix": [4, 15], "x": 16.25, "y": 4.25}, - - {"matrix": [5, 0], "x": 0, "y": 5.25, "w": 1.25}, - {"matrix": [5, 1], "x": 1.25, "y": 5.25, "w": 1.25}, - {"matrix": [5, 2], "x": 2.5, "y": 5.25, "w": 1.25}, - {"matrix": [5, 6], "x": 3.75, "y": 5.25, "w": 6.25}, - {"matrix": [5, 10], "x": 10, "y": 5.25, "w": 1.25}, - {"matrix": [5, 11], "x": 11.25, "y": 5.25, "w": 1.25}, - {"matrix": [5, 12], "x": 12.5, "y": 5.25, "w": 1.25}, - {"matrix": [5, 13], "x": 13.75, "y": 5.25, "w": 1.25}, - {"matrix": [5, 14], "x": 15.25, "y": 5.25}, - {"matrix": [5, 15], "x": 16.25, "y": 5.25}, - {"matrix": [5, 16], "x": 17.25, "y": 5.25} - ] - } - } -} diff --git a/keyboards/keychron/q3_max/iso_encoder/iso_encoder.c b/keyboards/keychron/q3_max/iso_encoder/iso_encoder.c deleted file mode 100644 index 14f7fe1dfd..0000000000 --- a/keyboards/keychron/q3_max/iso_encoder/iso_encoder.c +++ /dev/null @@ -1,155 +0,0 @@ -/* Copyright 2024 @ 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/>. - */ - -#include "quantum.h" - -// clang-format off - -#ifdef RGB_MATRIX_ENABLE -const snled27351_led_t g_snled27351_leds[RGB_MATRIX_LED_COUNT] = { -/* Refer to SNLED27351 manual for these locations - * driver - * | R location - * | | G location - * | | | B location - * | | | | */ - {0, G_15, I_15, H_15}, - {0, G_14, I_14, H_14}, - {0, G_13, I_13, H_13}, - {0, G_12, I_12, H_12}, - {0, G_11, I_11, H_11}, - {0, G_10, I_10, H_10}, - {0, G_9, I_9, H_9}, - {0, G_8, I_8, H_8}, - {0, G_7, I_7, H_7}, - {0, G_6, I_6, H_6}, - {0, G_5, I_5, H_5}, - {0, G_4, I_4, H_4}, - {0, G_3, I_3, H_3}, - {0, G_1, I_1, H_1}, - {0, D_6, F_6, E_6}, - {0, D_5, F_5, E_5}, - - {0, A_15, C_15, B_15}, - {0, A_14, C_14, B_14}, - {0, A_13, C_13, B_13}, - {0, A_12, C_12, B_12}, - {0, A_11, C_11, B_11}, - {0, A_10, C_10, B_10}, - {0, A_9, C_9, B_9}, - {0, A_8, C_8, B_8}, - {0, A_7, C_7, B_7}, - {0, A_6, C_6, B_6}, - {0, A_5, C_5, B_5}, - {0, A_4, C_4, B_4}, - {0, A_3, C_3, B_3}, - {0, A_2, C_2, B_2}, - {0, A_1, C_1, B_1}, - {0, D_4, F_4, E_4}, - {0, D_3, F_3, E_3}, - - {0, J_15, L_15, K_15}, - {0, J_14, L_14, K_14}, - {0, J_13, L_13, K_13}, - {0, J_12, L_12, K_12}, - {0, J_11, L_11, K_11}, - {0, J_10, L_10, K_10}, - {0, J_9, L_9, K_9}, - {0, J_8, L_8, K_8}, - {0, J_7, L_7, K_7}, - {0, J_6, L_6, K_6}, - {0, J_5, L_5, K_5}, - {0, J_4, L_4, K_4}, - {0, J_3, L_3, K_3}, - {0, J_2, L_2, K_2}, - {0, J_1, L_1, K_1}, - {0, D_2, F_2, E_2}, - {0, D_1, F_1, E_1}, - - {1, A_15, C_15, B_15}, - {1, A_14, C_14, B_14}, - {1, A_13, C_13, B_13}, - {1, A_12, C_12, B_12}, - {1, A_11, C_11, B_11}, - {1, A_10, C_10, B_10}, - {1, A_9, C_9, B_9}, - {1, A_8, C_8, B_8}, - {1, A_7, C_7, B_7}, - {1, A_6, C_6, B_6}, - {1, A_5, C_5, B_5}, - {1, A_4, C_4, B_4}, - {1, A_3, C_3, B_3}, - - {1, G_15, I_15, H_15}, - {1, G_14, I_14, H_14}, - {1, G_13, I_13, H_13}, - {1, G_12, I_12, H_12}, - {1, G_11, I_11, H_11}, - {1, G_10, I_10, H_10}, - {1, G_9, I_9, H_9}, - {1, G_8, I_8, H_8}, - {1, G_7, I_7, H_7}, - {1, G_6, I_6, H_6}, - {1, G_5, I_5, H_5}, - {1, G_4, I_4, H_4}, - {1, G_2, I_2, H_2}, - {1, G_1, I_1, H_1}, - - {1, D_15, F_15, E_15}, - {1, D_14, F_14, E_14}, - {1, D_13, F_13, E_13}, - {1, D_9, F_9, E_9}, - {1, D_7, F_7, E_7}, - {1, D_6, F_6, E_6}, - {1, D_5, F_5, E_5}, - {1, D_4, F_4, E_4}, - {1, D_3, F_3, E_3}, - {1, D_2, F_2, E_2}, - {1, D_1, F_1, E_1}, -}; - -#define __ NO_LED - -led_config_t g_led_config = { - { - // Key Matrix to LED Index - { 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, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49 }, - { 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, __, __, __, __ }, - { 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, __, 75, __, 76, __ }, - { 77, 78, 79, __, __, __, 80, __, __, __, 81, 82, 83, 84, 85, 86, 87 }, - }, - { - // LED Index to Physical Position - {0, 0}, {16, 0}, {29, 0}, {42, 0}, {54, 0}, {66, 0}, {84, 0}, {97, 0}, {110, 0}, {126, 0}, {139, 0}, {152, 0}, {165,0}, {198, 0}, {211,0}, {224,0}, - {0,15}, {13,15}, {26,15}, {39,15}, {52,15}, {65,15}, {78,15}, {91,15}, {104,15}, {117,15}, {130,15}, {143,15}, {156,15}, {176,15}, {198,15}, {211,15}, {224,15}, - {3,28}, {20,28}, {33,28}, {46,28}, {59,28}, {72,28}, {85,28}, {98,28}, {111,28}, {124,28}, {137,28}, {150,28}, {163,28}, {178,28}, {198,28}, {211,28}, {224,28}, - {5,40}, {23,40}, {36,40}, {49,40}, {62,40}, {75,40}, {88,40}, {101,40}, {114,40}, {127,40}, {140,40}, {150,40}, {166,40}, - {2,52}, {16,52}, {29,52}, {42,52}, {55,52}, {68,52}, {81,52}, {94,52}, {107,52}, {120,52}, {133,52}, {146,52}, {171,52}, {211,52}, - {2,64}, {18,64}, {34,64}, {83,64}, {131,64}, {148,64}, {164,64}, {178,64}, {198,64}, {211,64}, {224,64} - }, - { - // RGB LED Index to Flag - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1, 1, 1, 1, - 1, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1, 1, 1, 1, - 8, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1, 1, - 1, 1, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1, 1, - 1, 1, 1, 4, 1, 1, 1, 1, 1, 1, 1 - } -}; -#endif diff --git a/keyboards/keychron/q3_max/iso_encoder/keymaps/default/keymap.c b/keyboards/keychron/q3_max/iso_encoder/keymaps/default/keymap.c deleted file mode 100644 index e66a1d120f..0000000000 --- a/keyboards/keychron/q3_max/iso_encoder/keymaps/default/keymap.c +++ /dev/null @@ -1,77 +0,0 @@ -/* 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 . - */ - -#include QMK_KEYBOARD_H -#include "keychron_common.h" - -enum layers { - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN, -}; - -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_iso_88( - KC_ESC, KC_BRID, KC_BRIU, KC_MCTRL, KC_LNPAD, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_MUTE, KC_SNAP, KC_SIRI, RGB_MOD, - KC_GRV, 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_INS, KC_HOME, KC_PGUP, - 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_ENT, KC_DEL, KC_END, KC_PGDN, - 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_NUHS, - KC_LSFT, KC_NUBS, 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_LCTL, KC_LOPTN, KC_LCMMD, KC_SPC, KC_RCMMD, KC_ROPTN, MO(MAC_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - - [MAC_FN] = LAYOUT_iso_88( - _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, RGB_TOG, _______, _______, RGB_TOG, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - - [WIN_BASE] = LAYOUT_iso_88( - KC_ESC, 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_MUTE, KC_PSCR, KC_CTANA, RGB_MOD, - KC_GRV, 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_INS, KC_HOME, KC_PGUP, - 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_ENT, KC_DEL, KC_END, KC_PGDN, - 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_NUHS, - KC_LSFT, KC_NUBS, 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_LCTL, KC_LWIN, KC_LALT, KC_SPC, KC_RALT, KC_RWIN, MO(WIN_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - - [WIN_FN] = LAYOUT_iso_88( - _______, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, RGB_TOG, _______, _______, RGB_TOG, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______) -}; - -// clang-format on -#if defined(ENCODER_MAP_ENABLE) -const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][2] = { - [MAC_BASE] = {ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [MAC_FN] = {ENCODER_CCW_CW(RGB_VAD, RGB_VAI)}, - [WIN_BASE] = {ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [WIN_FN] = {ENCODER_CCW_CW(RGB_VAD, RGB_VAI)}, -}; -#endif // ENCODER_MAP_ENABLE - -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - if (!process_record_keychron_common(keycode, record)) { - return false; - } - return true; -} diff --git a/keyboards/keychron/q3_max/iso_encoder/keymaps/via/keymap.c b/keyboards/keychron/q3_max/iso_encoder/keymaps/via/keymap.c deleted file mode 100644 index e66a1d120f..0000000000 --- a/keyboards/keychron/q3_max/iso_encoder/keymaps/via/keymap.c +++ /dev/null @@ -1,77 +0,0 @@ -/* 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 . - */ - -#include QMK_KEYBOARD_H -#include "keychron_common.h" - -enum layers { - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN, -}; - -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_iso_88( - KC_ESC, KC_BRID, KC_BRIU, KC_MCTRL, KC_LNPAD, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_MUTE, KC_SNAP, KC_SIRI, RGB_MOD, - KC_GRV, 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_INS, KC_HOME, KC_PGUP, - 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_ENT, KC_DEL, KC_END, KC_PGDN, - 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_NUHS, - KC_LSFT, KC_NUBS, 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_LCTL, KC_LOPTN, KC_LCMMD, KC_SPC, KC_RCMMD, KC_ROPTN, MO(MAC_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - - [MAC_FN] = LAYOUT_iso_88( - _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, RGB_TOG, _______, _______, RGB_TOG, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - - [WIN_BASE] = LAYOUT_iso_88( - KC_ESC, 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_MUTE, KC_PSCR, KC_CTANA, RGB_MOD, - KC_GRV, 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_INS, KC_HOME, KC_PGUP, - 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_ENT, KC_DEL, KC_END, KC_PGDN, - 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_NUHS, - KC_LSFT, KC_NUBS, 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_LCTL, KC_LWIN, KC_LALT, KC_SPC, KC_RALT, KC_RWIN, MO(WIN_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - - [WIN_FN] = LAYOUT_iso_88( - _______, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, RGB_TOG, _______, _______, RGB_TOG, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______) -}; - -// clang-format on -#if defined(ENCODER_MAP_ENABLE) -const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][2] = { - [MAC_BASE] = {ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [MAC_FN] = {ENCODER_CCW_CW(RGB_VAD, RGB_VAI)}, - [WIN_BASE] = {ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [WIN_FN] = {ENCODER_CCW_CW(RGB_VAD, RGB_VAI)}, -}; -#endif // ENCODER_MAP_ENABLE - -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - if (!process_record_keychron_common(keycode, record)) { - return false; - } - return true; -} diff --git a/keyboards/keychron/q3_max/iso_encoder/keymaps/via/rules.mk b/keyboards/keychron/q3_max/iso_encoder/keymaps/via/rules.mk deleted file mode 100644 index 1e5b99807c..0000000000 --- a/keyboards/keychron/q3_max/iso_encoder/keymaps/via/rules.mk +++ /dev/null @@ -1 +0,0 @@ -VIA_ENABLE = yes diff --git a/keyboards/keychron/q3_max/iso_encoder/rules.mk b/keyboards/keychron/q3_max/iso_encoder/rules.mk deleted file mode 100644 index 7ff128fa69..0000000000 --- a/keyboards/keychron/q3_max/iso_encoder/rules.mk +++ /dev/null @@ -1 +0,0 @@ -# This file intentionally left blank \ No newline at end of file diff --git a/keyboards/keychron/q3_max/mcuconf.h b/keyboards/keychron/q3_max/mcuconf.h deleted file mode 100644 index 89294ee64b..0000000000 --- a/keyboards/keychron/q3_max/mcuconf.h +++ /dev/null @@ -1,37 +0,0 @@ -/* Copyright 2024 @ 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 - -#include_next - -#undef STM32_HSECLK -#define STM32_HSECLK 16000000 - -#undef STM32_PLLM_VALUE -#define STM32_PLLM_VALUE 8 - -#undef STM32_PLLN_VALUE -#define STM32_PLLN_VALUE 96 - -#undef STM32_PLLP_VALUE -#define STM32_PLLP_VALUE 4 - -#undef STM32_PLLQ_VALUE -#define STM32_PLLQ_VALUE 4 - -#undef STM32_SPI_USE_SPI1 -#define STM32_SPI_USE_SPI1 TRUE diff --git a/keyboards/keychron/q3_max/q3_max.c b/keyboards/keychron/q3_max/q3_max.c deleted file mode 100644 index 5ba6224b6f..0000000000 --- a/keyboards/keychron/q3_max/q3_max.c +++ /dev/null @@ -1,83 +0,0 @@ -/* Copyright 2024 @ 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/>. - */ - -#include "quantum.h" -#include "keychron_task.h" -#ifdef FACTORY_TEST_ENABLE -# include "factory_test.h" -# include "keychron_common.h" -#endif -#ifdef LK_WIRELESS_ENABLE -# include "lkbt51.h" -# include "wireless.h" -# include "keychron_wireless_common.h" -# include "battery.h" -#endif - -#define POWER_ON_LED_DURATION 3000 -static uint32_t power_on_indicator_timer; - -#ifdef DIP_SWITCH_ENABLE -bool dip_switch_update_kb(uint8_t index, bool active) { - if (index == 0) { - default_layer_set(1UL << (active ? 2 : 0)); - } - dip_switch_update_user(index, active); - - return true; -} -#endif - -void keyboard_post_init_kb(void) { -#ifdef LK_WIRELESS_ENABLE - palSetLineMode(P2P4_MODE_SELECT_PIN, PAL_MODE_INPUT); - palSetLineMode(BT_MODE_SELECT_PIN, PAL_MODE_INPUT); - - lkbt51_init(false); - wireless_init(); -#endif - - power_on_indicator_timer = timer_read32(); -#ifdef ENCODER_ENABLE - encoder_cb_init(); -#endif - - keyboard_post_init_user(); -} - -bool keychron_task_kb(void) { - - if (power_on_indicator_timer) { - if (timer_elapsed32(power_on_indicator_timer) > POWER_ON_LED_DURATION) { - power_on_indicator_timer = 0; -#ifdef LK_WIRELESS_ENABLE - writePin(BAT_LOW_LED_PIN, !BAT_LOW_LED_PIN_ON_STATE); -#endif - - } else { -#ifdef LK_WIRELESS_ENABLE - writePin(BAT_LOW_LED_PIN, BAT_LOW_LED_PIN_ON_STATE); -#endif - } - } - return true; -} - -#ifdef LK_WIRELESS_ENABLE -bool lpm_is_kb_idle(void) { - return power_on_indicator_timer == 0 && !factory_reset_indicating(); -} -#endif diff --git a/keyboards/keychron/q3_max/readme.md b/keyboards/keychron/q3_max/readme.md deleted file mode 100644 index c99ee6b243..0000000000 --- a/keyboards/keychron/q3_max/readme.md +++ /dev/null @@ -1,21 +0,0 @@ -# Keychron Q3 Max - -![Keychron Q3 Max](https://cdn.shopify.com/s/files/1/0059/0630/1017/files/Q3-Max-email-2_bcc67f24-78a6-4d03-a967-d1978597fe1a.jpg?v=1704695482) - -A customizable TKL keyboard. - -* Keyboard Maintainer: [Keychron](https://github.com/keychron) -* Hardware Supported: Keychron Q3 Max -* Hardware Availability: [Keychron Q3 Max QMK/VIA Wireless Custom Mechanical Keyboard](https://www.keychron.com/products/keychron-q3-max-qmk-via-wireless-custom-mechanical-keyboard) - -Make example for this keyboard (after setting up your build environment): - - make keychron/q3_max/ansi_encoder:default - -Flashing example for this keyboard: - - make keychron/q3_max/ansi_encoder:default:flash - -**Reset Key**: Toggle mode switch to "Cable", hold down the *Esc* key or reset button underneath space bar while connecting the USB cable, - -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). diff --git a/keyboards/keychron/q3_max/rules.mk b/keyboards/keychron/q3_max/rules.mk deleted file mode 100644 index 4eaf6820bc..0000000000 --- a/keyboards/keychron/q3_max/rules.mk +++ /dev/null @@ -1,4 +0,0 @@ -include keyboards/keychron/common/wireless/wireless.mk -include keyboards/keychron/common/keychron_common.mk - -VPATH += $(TOP_DIR)/keyboards/keychron diff --git a/keyboards/keychron/q3_max/via_json/q3_max_ansi_encoder.json b/keyboards/keychron/q3_max/via_json/q3_max_ansi_encoder.json deleted file mode 100644 index 8877acc747..0000000000 --- a/keyboards/keychron/q3_max/via_json/q3_max_ansi_encoder.json +++ /dev/null @@ -1,297 +0,0 @@ -{ - "name": "Keychron Q3 Max ANSI Knob", - "vendorId": "0x3434", - "productId": "0x0830", - "keycodes": ["qmk_lighting"], - "menus": [ - { - "label": "Lighting", - "content": [ - { - "label": "Backlight", - "content": [ - { - "label": "Brightness", - "type": "range", - "options": [0, 255], - "content": ["id_qmk_rgb_matrix_brightness", 3, 1] - }, - { - "label": "Effect", - "type": "dropdown", - "content": ["id_qmk_rgb_matrix_effect", 3, 2], - "options": [ - ["None", 0], - ["Solid Color", 1], - ["Breathing", 2], - ["Band Spiral Val", 3], - ["Cycle All", 4], - ["Cycle Left Right", 5], - ["Cycle Up Down", 6], - ["Rainbow Moving Chevron", 7], - ["Cycle Out In", 8], - ["Cycle Out In Dual", 9], - ["Cycle Pinwheel", 10], - ["Cycle Spiral", 11], - ["Dual Beacon", 12], - ["Rainbow Beacon", 13], - ["Jellybean Raindrops", 14], - ["Pixel Rain", 15], - ["Typing Heatmap", 16], - ["Digital Rain", 17], - ["Reactive Simple", 18], - ["Reactive Multiwide", 19], - ["Reactive Multinexus", 20], - ["Splash", 21], - ["Solid Splash", 22] - ] - }, - { - "showIf": "{id_qmk_rgb_matrix_effect} > 1", - "label": "Effect Speed", - "type": "range", - "options": [0, 255], - "content": ["id_qmk_rgb_matrix_effect_speed", 3, 3] - }, - { - "showIf": "{id_qmk_rgb_matrix_effect} != 0 && ( {id_qmk_rgb_matrix_effect} < 4 || {id_qmk_rgb_matrix_effect} == 18 || ({id_qmk_rgb_matrix_effect} > 17 && {id_qmk_rgb_matrix_effect} != 21) ) ", - "label": "Color", - "type": "color", - "content": ["id_qmk_rgb_matrix_color", 3, 4] - } - ] - } - ] - } - ], - "customKeycodes": [ - {"name": "Left Option", "title": "Left Option", "shortName": "LOpt"}, - {"name": "Right Option", "title": "Right Option", "shortName": "ROpt"}, - {"name": "Left Cmd", "title": "Left Command", "shortName": "LCmd"}, - {"name": "Right Cmd", "title": "Right Command", "shortName": "RCmd"}, - {"name": "Misson Control", "title": "Misson Control in Mac", "shortName": "MCtl"}, - {"name": "Lanuch Pad", "title": "Lanuch Pad in Windows", "shortName": "LPad"}, - {"name": "Task View", "title": "Task View in Windows", "shortName": "Task"}, - {"name": "File Explorer", "title": "File Explorer in Windows", "shortName": "File"}, - {"name": "Screen shot", "title": "Screenshot in macOS", "shortName": "SShot"}, - {"name": "Cortana", "title": "Cortana in Windows", "shortName": "Cortana"}, - {"name": "Siri", "title": "Siri in macOS", "shortName": "Siri"}, - {"name": "Bluetooth Host 1", "title": "Bluetooth Host 1", "shortName": "BTH1"}, - {"name": "Bluetooth Host 2", "title": "Bluetooth Host 2", "shortName": "BTH2"}, - {"name": "Bluetooth Host 3", "title": "Bluetooth Host 3", "shortName": "BTH3"}, - {"name": "2.4G", "title": "2.4G", "shortName": "2.4G"}, - {"name": "Battery Level", "title": "Show battery level", "shortName": "Batt"} - ], - "matrix": {"rows": 6, "cols" : 17}, - "layouts": { - "keymap": [ - [ - { - "c": "#777777" - }, - "0, 0", - { - "x": 0.25, - "c": "#cccccc" - }, - "0, 1", - "0, 2", - "0, 3", - "0, 4", - { - "x": 0.25, - "c": "#aaaaaa" - }, - "0, 5", - "0, 6", - "0, 7", - "0, 8", - { - "x": 0.25, - "c": "#cccccc" - }, - "0, 9", - "0, 10", - "0, 11", - "0, 12", - { - "x": 0.25, - "c": "#aaaaaa" - }, - "0, 13\n\n\n\n\n\n\n\n\ne0", - { - "x": 0.25 - }, - "0, 14", - "0, 15", - "0, 16" - ], - [ - { - "y": 0.25, - "c": "#aaaaaa" - }, - "1, 0", - { - "c": "#cccccc" - }, - "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": 2, - "c": "#aaaaaa" - }, - "1, 13", - { - "x": 0.25 - }, - "1, 14", - "1, 15", - "1, 16" - ], - [ - { - "w": 1.5, - "c": "#aaaaaa" - }, - "2, 0", - { - "c": "#cccccc" - }, - "2, 1", - "2, 2", - "2, 3", - "2, 4", - "2, 5", - "2, 6", - "2, 7", - "2, 8", - "2, 9", - "2, 10", - "2, 11", - "2, 12", - { - "w": 1.5, - "c": "#aaaaaa" - }, - "2, 13", - { - "x": 0.25 - }, - "2, 14", - "2, 15", - "2, 16" - ], - [ - { - "w": 1.75, - "c": "#aaaaaa" - }, - "3, 0", - { - "c": "#cccccc" - }, - "3, 1", - "3, 2", - "3, 3", - "3, 4", - "3, 5", - "3, 6", - "3, 7", - "3, 8", - "3, 9", - "3, 10", - "3, 11", - { - "w": 2.25, - "c": "#777777" - }, - "3, 13" - ], - [ - { - "w": 2.25, - "c": "#aaaaaa" - }, - "4, 0", - { - "c": "#cccccc" - }, - "4, 2", - "4, 3", - "4, 4", - "4, 5", - "4, 6", - "4, 7", - "4, 8", - "4, 9", - "4, 10", - "4, 11", - { - "w": 2.75, - "c": "#aaaaaa" - }, - "4, 13", - { - "x": 1.25, - "c": "#cccccc" - }, - "4, 15" - ], - [ - { - "w": 1.25, - "c": "#aaaaaa" - }, - "5, 0", - { - "w": 1.25 - }, - "5, 1", - { - "w": 1.25 - }, - "5, 2", - { - "w": 6.25, - "c": "#cccccc" - }, - "5, 6", - { - "w": 1.25, - "c": "#aaaaaa" - }, - "5, 10", - { - "w": 1.25 - }, - "5, 11", - { - "w": 1.25 - }, - "5, 12", - { - "w": 1.25 - }, - "5, 13", - { - "x": 0.25, - "c": "#cccccc" - }, - "5, 14", - "5, 15", - "5, 16" - ] - ] - } -} diff --git a/keyboards/keychron/q3_max/via_json/q3_max_iso_encoder.json b/keyboards/keychron/q3_max/via_json/q3_max_iso_encoder.json deleted file mode 100644 index 38a7523ad7..0000000000 --- a/keyboards/keychron/q3_max/via_json/q3_max_iso_encoder.json +++ /dev/null @@ -1,300 +0,0 @@ -{ - "name": "Keychron Q3 Max ISO Knob", - "vendorId": "0x3434", - "productId": "0x0831", - "keycodes": ["qmk_lighting"], - "menus": [ - { - "label": "Lighting", - "content": [ - { - "label": "Backlight", - "content": [ - { - "label": "Brightness", - "type": "range", - "options": [0, 255], - "content": ["id_qmk_rgb_matrix_brightness", 3, 1] - }, - { - "label": "Effect", - "type": "dropdown", - "content": ["id_qmk_rgb_matrix_effect", 3, 2], - "options": [ - ["None", 0], - ["Solid Color", 1], - ["Breathing", 2], - ["Band Spiral Val", 3], - ["Cycle All", 4], - ["Cycle Left Right", 5], - ["Cycle Up Down", 6], - ["Rainbow Moving Chevron", 7], - ["Cycle Out In", 8], - ["Cycle Out In Dual", 9], - ["Cycle Pinwheel", 10], - ["Cycle Spiral", 11], - ["Dual Beacon", 12], - ["Rainbow Beacon", 13], - ["Jellybean Raindrops", 14], - ["Pixel Rain", 15], - ["Typing Heatmap", 16], - ["Digital Rain", 17], - ["Reactive Simple", 18], - ["Reactive Multiwide", 19], - ["Reactive Multinexus", 20], - ["Splash", 21], - ["Solid Splash", 22] - ] - }, - { - "showIf": "{id_qmk_rgb_matrix_effect} > 1", - "label": "Effect Speed", - "type": "range", - "options": [0, 255], - "content": ["id_qmk_rgb_matrix_effect_speed", 3, 3] - }, - { - "showIf": "{id_qmk_rgb_matrix_effect} != 0 && ( {id_qmk_rgb_matrix_effect} < 4 || {id_qmk_rgb_matrix_effect} == 18 || ({id_qmk_rgb_matrix_effect} > 17 && {id_qmk_rgb_matrix_effect} != 21) ) ", - "label": "Color", - "type": "color", - "content": ["id_qmk_rgb_matrix_color", 3, 4] - } - ] - } - ] - } - ], - "customKeycodes": [ - {"name": "Left Option", "title": "Left Option", "shortName": "LOpt"}, - {"name": "Right Option", "title": "Right Option", "shortName": "ROpt"}, - {"name": "Left Cmd", "title": "Left Command", "shortName": "LCmd"}, - {"name": "Right Cmd", "title": "Right Command", "shortName": "RCmd"}, - {"name": "Misson Control", "title": "Misson Control in Mac", "shortName": "MCtl"}, - {"name": "Lanuch Pad", "title": "Lanuch Pad in Windows", "shortName": "LPad"}, - {"name": "Task View", "title": "Task View in Windows", "shortName": "Task"}, - {"name": "File Explorer", "title": "File Explorer in Windows", "shortName": "File"}, - {"name": "Screen shot", "title": "Screenshot in macOS", "shortName": "SShot"}, - {"name": "Cortana", "title": "Cortana in Windows", "shortName": "Cortana"}, - {"name": "Siri", "title": "Siri in macOS", "shortName": "Siri"}, - {"name": "Bluetooth Host 1", "title": "Bluetooth Host 1", "shortName": "BTH1"}, - {"name": "Bluetooth Host 2", "title": "Bluetooth Host 2", "shortName": "BTH2"}, - {"name": "Bluetooth Host 3", "title": "Bluetooth Host 3", "shortName": "BTH3"}, - {"name": "2.4G", "title": "2.4G", "shortName": "2.4G"}, - {"name": "Battery Level", "title": "Show battery level", "shortName": "Batt"} - ], - "matrix": {"rows": 6, "cols" : 17}, - "layouts": { - "keymap": [ - [ - { - "c": "#777777" - }, - "0, 0", - { - "x": 0.25, - "c": "#cccccc" - }, - "0, 1", - "0, 2", - "0, 3", - "0, 4", - { - "x": 0.25, - "c": "#aaaaaa" - }, - "0, 5", - "0, 6", - "0, 7", - "0, 8", - { - "x": 0.25, - "c": "#cccccc" - }, - "0, 9", - "0, 10", - "0, 11", - "0, 12", - { - "x": 0.25, - "c": "#aaaaaa" - }, - "0, 13\n\n\n\n\n\n\n\n\ne0", - { - "x": 0.25 - }, - "0, 14", - "0, 15", - "0, 16" - ], - [ - { - "y": 0.25, - "c": "#aaaaaa" - }, - "1, 0", - { - "c": "#cccccc" - }, - "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": 2, - "c": "#aaaaaa" - }, - "1, 13", - { - "x": 0.25 - }, - "1, 14", - "1, 15", - "1, 16" - ], - [ - { - "w": 1.5, - "c": "#aaaaaa" - }, - "2, 0", - { - "c": "#cccccc" - }, - "2, 1", - "2, 2", - "2, 3", - "2, 4", - "2, 5", - "2, 6", - "2, 7", - "2, 8", - "2, 9", - "2, 10", - "2, 11", - "2, 12", - { - "x": 0.25, - "c": "#777777", - "w": 1.25, - "h": 2, - "x2": -0.25, - "w2": 1.5, - "h2": 1 - }, - "2, 13", - { - "c": "#aaaaaa", - "x": 0.25 - }, - "2, 14", - "2, 15", - "2, 16" - ], - [ - { - "w": 1.75, - "c": "#aaaaaa" - }, - "3, 0", - { - "c": "#cccccc" - }, - "3, 1", - "3, 2", - "3, 3", - "3, 4", - "3, 5", - "3, 6", - "3, 7", - "3, 8", - "3, 9", - "3, 10", - "3, 11", - "3, 12" - ], - [ - { - "w": 1.25, - "c": "#aaaaaa" - }, - "4, 0", - { - "c": "#cccccc" - }, - "4, 1", - "4, 2", - "4, 3", - "4, 4", - "4, 5", - "4, 6", - "4, 7", - "4, 8", - "4, 9", - "4, 10", - "4, 11", - { - "w": 2.75, - "c": "#aaaaaa" - }, - "4, 13", - { - "x": 1.25, - "c": "#cccccc" - }, - "4, 15" - ], - [ - { - "w": 1.25, - "c": "#aaaaaa" - }, - "5, 0", - { - "w": 1.25 - }, - "5, 1", - { - "w": 1.25 - }, - "5, 2", - { - "w": 6.25, - "c": "#cccccc" - }, - "5, 6", - { - "w": 1.25, - "c": "#aaaaaa" - }, - "5, 10", - { - "w": 1.25 - }, - "5, 11", - { - "w": 1.25 - }, - "5, 12", - { - "w": 1.25 - }, - "5, 13", - { - "x": 0.25, - "c": "#cccccc" - }, - "5, 14", - "5, 15", - "5, 16" - ] - ] - } -} diff --git a/keyboards/keychron/q3_pro/ansi_encoder/ansi_encoder.c b/keyboards/keychron/q3_pro/ansi_encoder/ansi_encoder.c deleted file mode 100644 index 6296a2d873..0000000000 --- a/keyboards/keychron/q3_pro/ansi_encoder/ansi_encoder.c +++ /dev/null @@ -1,121 +0,0 @@ -/* 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 . - */ - -#include "quantum.h" - -// clang-format off -#ifdef RGB_MATRIX_ENABLE -const snled27351_led_t g_snled27351_leds[RGB_MATRIX_LED_COUNT] = { -/* Refer to snled27351manual for these locations - * driver - * | R location - * | | G location - * | | | B location - * | | | | */ - {0, I_1, G_1, H_1}, - {0, I_2, G_2, H_2}, - {0, I_3, G_3, H_3}, - {0, I_4, G_4, H_4}, - {0, I_5, G_5, H_5}, - {0, I_6, G_6, H_6}, - {0, I_7, G_7, H_7}, - {0, I_8, G_8, H_8}, - {0, I_9, G_9, H_9}, - {0, I_10, G_10, H_10}, - {0, I_11, G_11, H_11}, - {0, I_12, G_12, H_12}, - {0, I_13, G_13, H_13}, - {0, I_15, G_15, H_15}, - {0, I_16, G_16, H_16}, - {1, C_4, A_4, B_4}, // 16 - - {0, C_1, A_1, B_1}, - {0, C_2, A_2, B_2}, - {0, C_3, A_3, B_3}, - {0, C_4, A_4, B_4}, - {0, C_5, A_5, B_5}, - {0, C_6, A_6, B_6}, - {0, C_7, A_7, B_7}, - {0, C_8, A_8, B_8}, - {0, C_9, A_9, B_9}, - {0, C_10, A_10, B_10}, - {0, C_11, A_11, B_11}, - {0, C_12, A_12, B_12}, - {0, C_13, A_13, B_13}, - {0, C_14, A_14, B_14}, - {0, C_15, A_15, B_15}, - {0, C_16, A_16, B_16}, - {1, C_2, A_2, B_2}, // 17 - - {0, F_1, D_1, E_1}, - {0, F_2, D_2, E_2}, - {0, F_3, D_3, E_3}, - {0, F_4, D_4, E_4}, - {0, F_5, D_5, E_5}, - {0, F_6, D_6, E_6}, - {0, F_7, D_7, E_7}, - {0, F_8, D_8, E_8}, - {0, F_9, D_9, E_9}, - {0, F_10, D_10, E_10}, - {0, F_11, D_11, E_11}, - {0, F_12, D_12, E_12}, - {0, F_13, D_13, E_13}, - {0, F_14, D_14, E_14}, - {0, F_15, D_15, E_15}, - {0, F_16, D_16, E_16}, - {1, C_1, A_1, B_1}, // 17 - - {1, C_16, A_16, B_16}, - {1, C_15, A_15, B_15}, - {1, C_14, A_14, B_14}, - {1, C_13, A_13, B_13}, - {1, C_12, A_12, B_12}, - {1, C_11, A_11, B_11}, - {1, C_10, A_10, B_10}, - {1, C_9, A_9, B_9}, - {1, C_8, A_8, B_8}, - {1, C_7, A_7, B_7}, - {1, C_6, A_6, B_6}, - {1, C_5, A_5, B_5}, - {1, C_3, A_3, B_3}, // 13 - - {1, I_16, G_16, H_16}, - {1, I_14, G_14, H_14}, - {1, I_13, G_13, H_13}, - {1, I_12, G_12, H_12}, - {1, I_11, G_11, H_11}, - {1, I_10, G_10, H_10}, - {1, I_9, G_9, H_9}, - {1, I_8, G_8, H_8}, - {1, I_7, G_7, H_7}, - {1, I_6, G_6, H_6}, - {1, I_5, G_5, H_5}, - {1, I_3, G_3, H_3}, - {1, I_1, G_1, H_1}, // 13 - - {1, F_16, D_16, E_16}, - {1, F_15, D_15, E_15}, - {1, F_14, D_14, E_14}, - {1, F_10, D_10, E_10}, - {1, F_6, D_6, E_6}, - {1, F_5, D_5, E_5}, - {1, F_4, D_4, E_4}, - {1, F_3, D_3, E_3}, - {1, F_2, D_2, E_2}, - {1, F_1, D_1, E_1}, - {1, I_2, G_2, H_2}, -}; -#endif diff --git a/keyboards/keychron/q3_pro/ansi_encoder/config.h b/keyboards/keychron/q3_pro/ansi_encoder/config.h deleted file mode 100644 index b9f1dafba4..0000000000 --- a/keyboards/keychron/q3_pro/ansi_encoder/config.h +++ /dev/null @@ -1,52 +0,0 @@ -/* 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 . - */ - -#pragma once - -#ifdef RGB_MATRIX_ENABLE -/* RGB Matrix Driver Configuration */ -# define DRIVER_COUNT 2 -# define DRIVER_ADDR_1 0b1110111 -# define DRIVER_ADDR_2 0b1110100 - -/* RGB Matrix Configuration */ -# define DRIVER_1_LED_COUNT 47 -# define DRIVER_2_LED_COUNT 40 -# define RGB_MATRIX_LED_COUNT (DRIVER_1_LED_COUNT + DRIVER_2_LED_COUNT) - -/* Set to infinit, which is use in USB mode by default */ -# define RGB_MATRIX_TIMEOUT RGB_MATRIX_TIMEOUT_INFINITE - -/* Allow shutdown of led driver to save power */ -# define RGB_MATRIX_DRIVER_SHUTDOWN_ENABLE - -/* Turn off backlight on low brightness to save power */ -# define RGB_MATRIX_BRIGHTNESS_TURN_OFF_VAL 32 - -/* Indication led */ -# define CAPS_LOCK_INDEX 50 -# define LOW_BAT_IND_INDEX 79 - -# define RGB_MATRIX_FRAMEBUFFER_EFFECTS -# define RGB_MATRIX_KEYPRESSES - -/* Use the first 9 channels of led driver */ -# define PHASE_CHANNEL MSKPHASE_9CHANNEL - -/* Set LED driver current */ -# define SNLED27351_CURRENT_TUNE \ - { 0x28, 0x28, 0x28, 0x28, 0x28, 0x28, 0x28, 0x28, 0x28, 0x28, 0x28, 0x28 } -#endif diff --git a/keyboards/keychron/q3_pro/ansi_encoder/info.json b/keyboards/keychron/q3_pro/ansi_encoder/info.json deleted file mode 100644 index 43c8d820e1..0000000000 --- a/keyboards/keychron/q3_pro/ansi_encoder/info.json +++ /dev/null @@ -1,212 +0,0 @@ -{ - "usb": { - "pid": "0x0633", - "device_version": "1.0.0" - }, - "encoder": { - "rotary": [ - {"pin_a": "A4", "pin_b": "A0"} - ] - }, - "matrix_pins": { - "cols": [null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null], - "rows": ["B5", "B4", "B3", "A15", "A14", "A13"], - "custom": true, - "custom_lite": true - }, - "layouts": { - "LAYOUT_tkl_f13_ansi": { - "layout": [ - {"matrix":[0, 0], "x":0, "y":0}, - {"matrix":[0, 1], "x":1.25, "y":0}, - {"matrix":[0, 2], "x":2.25, "y":0}, - {"matrix":[0, 3], "x":3.25, "y":0}, - {"matrix":[0, 4], "x":4.25, "y":0}, - {"matrix":[0, 5], "x":5.5, "y":0}, - {"matrix":[0, 6], "x":6.5, "y":0}, - {"matrix":[0, 7], "x":7.5, "y":0}, - {"matrix":[0, 8], "x":8.5, "y":0}, - {"matrix":[0, 9], "x":9.75, "y":0}, - {"matrix":[0,10], "x":10.75, "y":0}, - {"matrix":[0,11], "x":11.75, "y":0}, - {"matrix":[0,12], "x":12.75, "y":0}, - {"matrix":[0,13], "x":14, "y":0}, - {"matrix":[0,14], "x":15.75, "y":0}, - {"matrix":[0,15], "x":16.75, "y":0}, - {"matrix":[3,12], "x":17.75, "y":0}, - - {"matrix":[1, 0], "x":0, "y":1.25}, - {"matrix":[1, 1], "x":1, "y":1.25}, - {"matrix":[1, 2], "x":2, "y":1.25}, - {"matrix":[1, 3], "x":3, "y":1.25}, - {"matrix":[1, 4], "x":4, "y":1.25}, - {"matrix":[1, 5], "x":5, "y":1.25}, - {"matrix":[1, 6], "x":6, "y":1.25}, - {"matrix":[1, 7], "x":7, "y":1.25}, - {"matrix":[1, 8], "x":8, "y":1.25}, - {"matrix":[1, 9], "x":9, "y":1.25}, - {"matrix":[1,10], "x":10, "y":1.25}, - {"matrix":[1,11], "x":11, "y":1.25}, - {"matrix":[1,12], "x":12, "y":1.25}, - {"matrix":[1,13], "x":13, "y":1.25, "w":2}, - {"matrix":[1,14], "x":15.75, "y":1.25}, - {"matrix":[1,15], "x":16.75, "y":1.25}, - {"matrix":[3,14], "x":17.75, "y":1.25}, - - {"matrix":[2, 0], "x":0, "y":2.25, "w":1.5}, - {"matrix":[2, 1], "x":1.5, "y":2.25}, - {"matrix":[2, 2], "x":2.5, "y":2.25}, - {"matrix":[2, 3], "x":3.5, "y":2.25}, - {"matrix":[2, 4], "x":4.5, "y":2.25}, - {"matrix":[2, 5], "x":5.5, "y":2.25}, - {"matrix":[2, 6], "x":6.5, "y":2.25}, - {"matrix":[2, 7], "x":7.5, "y":2.25}, - {"matrix":[2, 8], "x":8.5, "y":2.25}, - {"matrix":[2, 9], "x":9.5, "y":2.25}, - {"matrix":[2,10], "x":10.5, "y":2.25}, - {"matrix":[2,11], "x":11.5, "y":2.25}, - {"matrix":[2,12], "x":12.5, "y":2.25}, - {"matrix":[2,13], "x":13.5, "y":2.25, "w":1.5}, - {"matrix":[2,14], "x":15.75, "y":2.25}, - {"matrix":[2,15], "x":16.75, "y":2.25}, - {"matrix":[3,15], "x":17.75, "y":2.25}, - - {"matrix":[3, 0], "x":0, "y":3.25, "w":1.75}, - {"matrix":[3, 1], "x":1.75, "y":3.25}, - {"matrix":[3, 2], "x":2.75, "y":3.25}, - {"matrix":[3, 3], "x":3.75, "y":3.25}, - {"matrix":[3, 4], "x":4.75, "y":3.25}, - {"matrix":[3, 5], "x":5.75, "y":3.25}, - {"matrix":[3, 6], "x":6.75, "y":3.25}, - {"matrix":[3, 7], "x":7.75, "y":3.25}, - {"matrix":[3, 8], "x":8.75, "y":3.25}, - {"matrix":[3, 9], "x":9.75, "y":3.25}, - {"matrix":[3,10], "x":10.75, "y":3.25}, - {"matrix":[3,11], "x":11.75, "y":3.25}, - {"matrix":[3,13], "x":12.75, "y":3.25, "w":2.25}, - - {"matrix":[4, 0], "x":0, "y":4.25, "w":2.25}, - {"matrix":[4, 2], "x":2.25, "y":4.25}, - {"matrix":[4, 3], "x":3.25, "y":4.25}, - {"matrix":[4, 4], "x":4.25, "y":4.25}, - {"matrix":[4, 5], "x":5.25, "y":4.25}, - {"matrix":[4, 6], "x":6.25, "y":4.25}, - {"matrix":[4, 7], "x":7.25, "y":4.25}, - {"matrix":[4, 8], "x":8.25, "y":4.25}, - {"matrix":[4, 9], "x":9.25, "y":4.25}, - {"matrix":[4,10], "x":10.25, "y":4.25}, - {"matrix":[4,11], "x":11.25, "y":4.25}, - {"matrix":[4,13], "x":12.25, "y":4.25, "w":2.75}, - {"matrix":[4,15], "x":16.75, "y":4.25}, - - {"matrix":[5, 0], "x":0, "y":5.25, "w":1.25}, - {"matrix":[5, 1], "x":1.25, "y":5.25, "w":1.25}, - {"matrix":[5, 2], "x":2.5, "y":5.25, "w":1.25}, - {"matrix":[5, 6], "x":3.75, "y":5.25, "w":6.25}, - {"matrix":[5,10], "x":10, "y":5.25, "w":1.25}, - {"matrix":[5,11], "x":11.25, "y":5.25, "w":1.25}, - {"matrix":[5,12], "x":12.5, "y":5.25, "w":1.25}, - {"matrix":[5,13], "x":13.75, "y":5.25, "w":1.25}, - {"matrix":[5,14], "x":15.75, "y":5.25}, - {"matrix":[5,15], "x":16.75, "y":5.25}, - {"matrix":[4,14], "x":17.75, "y":5.25} - ] - } - }, - "rgb_matrix": { - "layout": [ - {"matrix":[0, 0], "flags":1, "x":0, "y":0}, - {"matrix":[0, 1], "flags":1, "x":16, "y":0}, - {"matrix":[0, 2], "flags":1, "x":29, "y":0}, - {"matrix":[0, 3], "flags":1, "x":42, "y":0}, - {"matrix":[0, 4], "flags":1, "x":55, "y":0}, - {"matrix":[0, 5], "flags":1, "x":71, "y":0}, - {"matrix":[0, 6], "flags":1, "x":84, "y":0}, - {"matrix":[0, 7], "flags":1, "x":97, "y":0}, - {"matrix":[0, 8], "flags":1, "x":110, "y":0}, - {"matrix":[0, 9], "flags":1, "x":126, "y":0}, - {"matrix":[0, 10], "flags":1, "x":139, "y":0}, - {"matrix":[0, 11], "flags":1, "x":152, "y":0}, - {"matrix":[0, 12], "flags":1, "x":165, "y":0}, - {"matrix":[0, 14], "flags":1, "x":198, "y":0}, - {"matrix":[0, 15], "flags":1, "x":211, "y":0}, - {"matrix":[3, 12], "flags":1, "x":224, "y":0}, - - {"matrix":[1, 0], "flags":1, "x":0, "y":15}, - {"matrix":[1, 1], "flags":8, "x":13, "y":15}, - {"matrix":[1, 2], "flags":8, "x":26, "y":15}, - {"matrix":[1, 3], "flags":8, "x":39, "y":15}, - {"matrix":[1, 4], "flags":4, "x":52, "y":15}, - {"matrix":[1, 5], "flags":4, "x":65, "y":15}, - {"matrix":[1, 6], "flags":4, "x":78, "y":15}, - {"matrix":[1, 7], "flags":4, "x":91, "y":15}, - {"matrix":[1, 8], "flags":4, "x":104, "y":15}, - {"matrix":[1, 9], "flags":4, "x":117, "y":15}, - {"matrix":[1, 10], "flags":4, "x":130, "y":15}, - {"matrix":[1, 11], "flags":4, "x":143, "y":15}, - {"matrix":[1, 12], "flags":4, "x":156, "y":15}, - {"matrix":[1, 13], "flags":1, "x":176, "y":15}, - {"matrix":[1, 14], "flags":1, "x":198, "y":15}, - {"matrix":[1, 15], "flags":1, "x":211, "y":15}, - {"matrix":[3, 14], "flags":1, "x":224, "y":15}, - - {"matrix":[2, 0], "flags":1, "x":3, "y":28}, - {"matrix":[2, 1], "flags":4, "x":19, "y":28}, - {"matrix":[2, 2], "flags":4, "x":32, "y":28}, - {"matrix":[2, 3], "flags":4, "x":45, "y":28}, - {"matrix":[2, 4], "flags":4, "x":59, "y":28}, - {"matrix":[2, 5], "flags":4, "x":72, "y":28}, - {"matrix":[2, 6], "flags":4, "x":85, "y":28}, - {"matrix":[2, 7], "flags":4, "x":98, "y":28}, - {"matrix":[2, 8], "flags":4, "x":111, "y":28}, - {"matrix":[2, 9], "flags":4, "x":124, "y":28}, - {"matrix":[2, 10], "flags":4, "x":137, "y":28}, - {"matrix":[2, 11], "flags":4, "x":150, "y":28}, - {"matrix":[2, 12], "flags":4, "x":163, "y":28}, - {"matrix":[2, 13], "flags":1, "x":179, "y":28}, - {"matrix":[2, 14], "flags":1, "x":198, "y":28}, - {"matrix":[2, 15], "flags":1, "x":211, "y":28}, - {"matrix":[3, 15], "flags":1, "x":224, "y":28}, - - {"matrix":[3, 0], "flags":8, "x":5, "y":40}, - {"matrix":[3, 1], "flags":4, "x":23, "y":40}, - {"matrix":[3, 2], "flags":4, "x":36, "y":40}, - {"matrix":[3, 3], "flags":4, "x":49, "y":40}, - {"matrix":[3, 4], "flags":4, "x":62, "y":40}, - {"matrix":[3, 5], "flags":4, "x":75, "y":40}, - {"matrix":[3, 6], "flags":4, "x":88, "y":40}, - {"matrix":[3, 7], "flags":4, "x":101, "y":40}, - {"matrix":[3, 8], "flags":4, "x":114, "y":40}, - {"matrix":[3, 9], "flags":4, "x":127, "y":40}, - {"matrix":[3, 10], "flags":4, "x":140, "y":40}, - {"matrix":[3, 11], "flags":4, "x":153, "y":40}, - {"matrix":[3, 13], "flags":1, "x":174, "y":40}, - - {"matrix":[4, 0], "flags":1, "x":8, "y":52}, - {"matrix":[4, 2], "flags":4, "x":29, "y":52}, - {"matrix":[4, 3], "flags":4, "x":42, "y":52}, - {"matrix":[4, 4], "flags":4, "x":55, "y":52}, - {"matrix":[4, 5], "flags":4, "x":68, "y":52}, - {"matrix":[4, 6], "flags":4, "x":81, "y":52}, - {"matrix":[4, 7], "flags":4, "x":94, "y":52}, - {"matrix":[4, 8], "flags":4, "x":107, "y":52}, - {"matrix":[4, 9], "flags":4, "x":120, "y":52}, - {"matrix":[4, 10], "flags":4, "x":140, "y":52}, - {"matrix":[4, 11], "flags":4, "x":153, "y":52}, - {"matrix":[4, 13], "flags":1, "x":171, "y":52}, - {"matrix":[4, 15], "flags":1, "x":211, "y":52}, - - {"matrix":[5, 0], "flags":1, "x":2, "y":64}, - {"matrix":[5, 1], "flags":1, "x":18, "y":64}, - {"matrix":[5, 2], "flags":1, "x":34, "y":64}, - {"matrix":[5, 6], "flags":4, "x":83, "y":64}, - {"matrix":[5, 10], "flags":1, "x":131, "y":64}, - {"matrix":[5, 11], "flags":1, "x":148, "y":64}, - {"matrix":[5, 12], "flags":1, "x":164, "y":64}, - {"matrix":[5, 13], "flags":1, "x":180, "y":64}, - {"matrix":[5, 14], "flags":1, "x":198, "y":64}, - {"matrix":[5, 15], "flags":1, "x":211, "y":64}, - {"matrix":[4, 14], "flags":1, "x":224, "y":64} - ] - } -} diff --git a/keyboards/keychron/q3_pro/ansi_encoder/keymaps/default/keymap.c b/keyboards/keychron/q3_pro/ansi_encoder/keymaps/default/keymap.c deleted file mode 100644 index 61ef956bb1..0000000000 --- a/keyboards/keychron/q3_pro/ansi_encoder/keymaps/default/keymap.c +++ /dev/null @@ -1,68 +0,0 @@ -/* 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 . - */ - -#include QMK_KEYBOARD_H - -enum layers{ - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN, -}; - -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_tkl_f13_ansi( - KC_ESC, KC_BRID, KC_BRIU, KC_MCTL, KC_LPAD, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_MUTE, KC_SNAP, KC_SIRI, RGB_MOD, - KC_GRV, 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_INS, KC_HOME, KC_PGUP, - 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_DEL, KC_END, KC_PGDN, - 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_LCTL, KC_LOPTN, KC_LCMMD, KC_SPC, KC_RCMMD, KC_ROPTN, MO(MAC_FN), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - - [MAC_FN] = LAYOUT_tkl_f13_ansi( - _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, RGB_TOG, _______, _______, RGB_TOG, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - - [WIN_BASE] = LAYOUT_tkl_f13_ansi( - KC_ESC, 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_MUTE, KC_PSCR, KC_CTANA, RGB_MOD, - KC_GRV, 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_INS, KC_HOME, KC_PGUP, - 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_DEL, KC_END, KC_PGDN, - 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_LCTL, KC_LCMD, KC_LALT, KC_SPC, KC_RALT, KC_RWIN, MO(WIN_FN), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - - [WIN_FN] = LAYOUT_tkl_f13_ansi( - _______, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, RGB_TOG, _______, _______, RGB_TOG, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), -}; - -#if defined(ENCODER_MAP_ENABLE) -const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][2] = { - [MAC_BASE] = { ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [MAC_FN] = { ENCODER_CCW_CW(RGB_VAD, RGB_VAI)}, - [WIN_BASE] = { ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [WIN_FN] = { ENCODER_CCW_CW(RGB_VAD, RGB_VAI)}, -}; -#endif // ENCODER_MAP_ENABLE diff --git a/keyboards/keychron/q3_pro/ansi_encoder/keymaps/default/rules.mk b/keyboards/keychron/q3_pro/ansi_encoder/keymaps/default/rules.mk deleted file mode 100644 index ee32568148..0000000000 --- a/keyboards/keychron/q3_pro/ansi_encoder/keymaps/default/rules.mk +++ /dev/null @@ -1 +0,0 @@ -ENCODER_MAP_ENABLE = yes diff --git a/keyboards/keychron/q3_pro/ansi_encoder/keymaps/via/keymap.c b/keyboards/keychron/q3_pro/ansi_encoder/keymaps/via/keymap.c deleted file mode 100644 index 61ef956bb1..0000000000 --- a/keyboards/keychron/q3_pro/ansi_encoder/keymaps/via/keymap.c +++ /dev/null @@ -1,68 +0,0 @@ -/* 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 . - */ - -#include QMK_KEYBOARD_H - -enum layers{ - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN, -}; - -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_tkl_f13_ansi( - KC_ESC, KC_BRID, KC_BRIU, KC_MCTL, KC_LPAD, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_MUTE, KC_SNAP, KC_SIRI, RGB_MOD, - KC_GRV, 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_INS, KC_HOME, KC_PGUP, - 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_DEL, KC_END, KC_PGDN, - 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_LCTL, KC_LOPTN, KC_LCMMD, KC_SPC, KC_RCMMD, KC_ROPTN, MO(MAC_FN), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - - [MAC_FN] = LAYOUT_tkl_f13_ansi( - _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, RGB_TOG, _______, _______, RGB_TOG, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - - [WIN_BASE] = LAYOUT_tkl_f13_ansi( - KC_ESC, 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_MUTE, KC_PSCR, KC_CTANA, RGB_MOD, - KC_GRV, 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_INS, KC_HOME, KC_PGUP, - 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_DEL, KC_END, KC_PGDN, - 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_LCTL, KC_LCMD, KC_LALT, KC_SPC, KC_RALT, KC_RWIN, MO(WIN_FN), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - - [WIN_FN] = LAYOUT_tkl_f13_ansi( - _______, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, RGB_TOG, _______, _______, RGB_TOG, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), -}; - -#if defined(ENCODER_MAP_ENABLE) -const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][2] = { - [MAC_BASE] = { ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [MAC_FN] = { ENCODER_CCW_CW(RGB_VAD, RGB_VAI)}, - [WIN_BASE] = { ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [WIN_FN] = { ENCODER_CCW_CW(RGB_VAD, RGB_VAI)}, -}; -#endif // ENCODER_MAP_ENABLE diff --git a/keyboards/keychron/q3_pro/ansi_encoder/keymaps/via/rules.mk b/keyboards/keychron/q3_pro/ansi_encoder/keymaps/via/rules.mk deleted file mode 100644 index f1adcab005..0000000000 --- a/keyboards/keychron/q3_pro/ansi_encoder/keymaps/via/rules.mk +++ /dev/null @@ -1,2 +0,0 @@ -VIA_ENABLE = yes -ENCODER_MAP_ENABLE = yes diff --git a/keyboards/keychron/q3_pro/ansi_encoder/rules.mk b/keyboards/keychron/q3_pro/ansi_encoder/rules.mk deleted file mode 100644 index 23c407488a..0000000000 --- a/keyboards/keychron/q3_pro/ansi_encoder/rules.mk +++ /dev/null @@ -1 +0,0 @@ -include keyboards/keychron/common/common.mk diff --git a/keyboards/keychron/q3_pro/ansi_encoder_se/ansi_encoder_se.c b/keyboards/keychron/q3_pro/ansi_encoder_se/ansi_encoder_se.c deleted file mode 100644 index 34a4fc6565..0000000000 --- a/keyboards/keychron/q3_pro/ansi_encoder_se/ansi_encoder_se.c +++ /dev/null @@ -1,125 +0,0 @@ -/* 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 . - */ - -#include "quantum.h" - -// clang-format off -#ifdef RGB_MATRIX_ENABLE -const snled27351_led_t g_snled27351_leds[RGB_MATRIX_LED_COUNT] = { -/* Refer to snled27351manual for these locations - * driver - * | R location - * | | G location - * | | | B location - * | | | | */ - {0, I_2, G_2, H_2}, - {0, I_3, G_3, H_3}, - {0, I_4, G_4, H_4}, - {0, I_5, G_5, H_5}, - {0, I_6, G_6, H_6}, - {0, I_7, G_7, H_7}, - {0, I_8, G_8, H_8}, - {0, I_9, G_9, H_9}, - {0, I_10, G_10, H_10}, - {0, I_11, G_11, H_11}, - {0, I_12, G_12, H_12}, - {0, I_13, G_13, H_13}, - {0, I_14, G_14, H_14}, - {0, I_15, G_15, H_15}, - {0, I_16, G_16, H_16}, - {1, C_4, A_4, B_4}, // 16 - - {0, C_1, A_1, B_1}, - {0, C_2, A_2, B_2}, - {0, C_3, A_3, B_3}, - {0, C_4, A_4, B_4}, - {0, C_5, A_5, B_5}, - {0, C_6, A_6, B_6}, - {0, C_7, A_7, B_7}, - {0, C_8, A_8, B_8}, - {0, C_9, A_9, B_9}, - {0, C_10, A_10, B_10}, - {0, C_11, A_11, B_11}, - {0, C_12, A_12, B_12}, - {0, C_13, A_13, B_13}, - {0, C_14, A_14, B_14}, - {0, C_15, A_15, B_15}, - {0, C_16, A_16, B_16}, - {1, C_2, A_2, B_2}, // 17 - - {1, F_13, D_13, E_13}, - {0, F_1, D_1, E_1}, - {0, F_2, D_2, E_2}, - {0, F_3, D_3, E_3}, - {0, F_4, D_4, E_4}, - {0, F_5, D_5, E_5}, - {0, F_6, D_6, E_6}, - {0, F_7, D_7, E_7}, - {0, F_8, D_8, E_8}, - {0, F_9, D_9, E_9}, - {0, F_10, D_10, E_10}, - {0, F_11, D_11, E_11}, - {0, F_12, D_12, E_12}, - {0, F_13, D_13, E_13}, - {0, F_14, D_14, E_14}, - {0, F_15, D_15, E_15}, - {0, F_16, D_16, E_16}, - {1, C_1, A_1, B_1}, // 17 - - {1, F_12, D_12, E_12}, - {1, C_16, A_16, B_16}, - {1, C_15, A_15, B_15}, - {1, C_14, A_14, B_14}, - {1, C_13, A_13, B_13}, - {1, C_12, A_12, B_12}, - {1, C_11, A_11, B_11}, - {1, C_10, A_10, B_10}, - {1, C_9, A_9, B_9}, - {1, C_8, A_8, B_8}, - {1, C_7, A_7, B_7}, - {1, C_6, A_6, B_6}, - {1, C_5, A_5, B_5}, - {1, C_3, A_3, B_3}, // 13 - - {1, F_8, D_8, E_8}, - {1, I_16, G_16, H_16}, - {1, I_14, G_14, H_14}, - {1, I_13, G_13, H_13}, - {1, I_12, G_12, H_12}, - {1, I_11, G_11, H_11}, - {1, I_10, G_10, H_10}, - {1, I_9, G_9, H_9}, - {1, I_8, G_8, H_8}, - {1, I_7, G_7, H_7}, - {1, I_6, G_6, H_6}, - {1, I_5, G_5, H_5}, - {1, I_3, G_3, H_3}, - {1, I_1, G_1, H_1}, // 13 - - {1, F_7, D_7, E_7}, - {1, F_16, D_16, E_16}, - {1, F_15, D_15, E_15}, - {1, F_14, D_14, E_14}, - {1, F_10, D_10, E_10}, - {1, F_6, D_6, E_6}, - {1, F_5, D_5, E_5}, - {1, F_4, D_4, E_4}, - {1, F_3, D_3, E_3}, - {1, F_2, D_2, E_2}, - {1, F_1, D_1, E_1}, - {1, I_2, G_2, H_2}, -}; -#endif diff --git a/keyboards/keychron/q3_pro/ansi_encoder_se/config.h b/keyboards/keychron/q3_pro/ansi_encoder_se/config.h deleted file mode 100644 index 64d302d765..0000000000 --- a/keyboards/keychron/q3_pro/ansi_encoder_se/config.h +++ /dev/null @@ -1,54 +0,0 @@ -/* 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 . - */ - -#pragma once - -#ifdef RGB_MATRIX_ENABLE -/* RGB Matrix Driver Configuration */ -# define DRIVER_COUNT 2 -# define DRIVER_ADDR_1 0b1110111 -# define DRIVER_ADDR_2 0b1110100 - -/* RGB Matrix Configuration */ -# define DRIVER_1_LED_COUNT 47 -# define DRIVER_2_LED_COUNT 44 -# define RGB_MATRIX_LED_COUNT (DRIVER_1_LED_COUNT + DRIVER_2_LED_COUNT) - -/* Use the first 9 channels of led driver */ -# define PHASE_CHANNEL MSKPHASE_9CHANNEL - -/* Set LED driver current */ -# define SNLED27351_CURRENT_TUNE \ - { 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20 } - -/* Set to infinit, which is use in USB mode by default */ -# define RGB_MATRIX_TIMEOUT RGB_MATRIX_TIMEOUT_INFINITE - -/* Allow shutdown of led driver to save power */ -# define RGB_MATRIX_DRIVER_SHUTDOWN_ENABLE - -/* Turn off backlight on low brightness to save power */ -# define RGB_MATRIX_BRIGHTNESS_TURN_OFF_VAL 32 - -# define LOW_BAT_IND_INDEX 83 - -# define RGB_MATRIX_KEYPRESSES -# define RGB_MATRIX_FRAMEBUFFER_EFFECTS -#endif // RGB_MATRIX_ENABLE - -/* Specifed (0,1) which programmed as "ESC" key on this keyboard as bootmagic key */ -#define BOOTMAGIC_LITE_ROW 0 -#define BOOTMAGIC_LITE_COLUMN 1 diff --git a/keyboards/keychron/q3_pro/ansi_encoder_se/info.json b/keyboards/keychron/q3_pro/ansi_encoder_se/info.json deleted file mode 100644 index 81d4640229..0000000000 --- a/keyboards/keychron/q3_pro/ansi_encoder_se/info.json +++ /dev/null @@ -1,234 +0,0 @@ -{ - "usb": { - "pid": "0x0630", - "device_version": "1.0.0" - }, - "matrix_size": { - "rows": 6, - "cols": 18 - }, - "matrix_pins": { - "rows": ["B5", "B4", "B3", "A15", "A14", "A13"], - "cols": [null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null], - "custom": true, - "custom_lite": true - }, - "diode_direction": "ROW2COL", - "encoder": { - "rotary": [ - { - "pin_a": "A10", - "pin_b": "A0", - "resolution": 4 - } - ] - }, - "layouts": { - "LAYOUT_ansi_92": { - "layout": [ - {"matrix":[0,0], "x":0, "y":0.25}, - - {"matrix":[0,1], "x":1.25, "y":0}, - {"matrix":[0,2], "x":3.25, "y":0}, - {"matrix":[0,3], "x":4.25, "y":0}, - {"matrix":[0,4], "x":5.25, "y":0}, - {"matrix":[0,5], "x":6.25, "y":0}, - {"matrix":[0,6], "x":7.75, "y":0}, - {"matrix":[0,7], "x":8.75, "y":0}, - {"matrix":[0,8], "x":9.75, "y":0}, - {"matrix":[0,9], "x":10.75, "y":0}, - {"matrix":[0,10], "x":12.25, "y":0}, - {"matrix":[0,11], "x":13.25, "y":0}, - {"matrix":[0,12], "x":14.25, "y":0}, - {"matrix":[0,13], "x":15.25, "y":0}, - {"matrix":[0,14], "x":16.5, "y":0}, - {"matrix":[0,15], "x":17.5, "y":0}, - {"matrix":[0,16], "x":18.5, "y":0}, - - {"matrix":[1,0], "x":1.25, "y":1.25}, - {"matrix":[1,1], "x":2.25, "y":1.25}, - {"matrix":[1,2], "x":3.25, "y":1.25}, - {"matrix":[1,3], "x":4.25, "y":1.25}, - {"matrix":[1,4], "x":5.25, "y":1.25}, - {"matrix":[1,5], "x":6.25, "y":1.25}, - {"matrix":[1,6], "x":7.25, "y":1.25}, - {"matrix":[1,7], "x":8.25, "y":1.25}, - {"matrix":[1,8], "x":9.25, "y":1.25}, - {"matrix":[1,9], "x":10.25, "y":1.25}, - {"matrix":[1,10], "x":11.25, "y":1.25}, - {"matrix":[1,11], "x":12.25, "y":1.25}, - {"matrix":[1,12], "x":13.25, "y":1.25}, - {"matrix":[1,13], "x":14.25, "y":1.25, "w":2}, - {"matrix":[1,14], "x":16.5, "y":1.25}, - {"matrix":[1,15], "x":17.5, "y":1.25}, - {"matrix":[1,16], "x":18.5, "y":1.25}, - - {"matrix":[1,17], "x":0, "y":1.5}, - - {"matrix":[2,0], "x":1.25, "y":2.25, "w":1.5}, - {"matrix":[2,1], "x":2.75, "y":2.25}, - {"matrix":[2,2], "x":3.75, "y":2.25}, - {"matrix":[2,3], "x":4.75, "y":2.25}, - {"matrix":[2,4], "x":5.75, "y":2.25}, - {"matrix":[2,5], "x":6.75, "y":2.25}, - {"matrix":[2,6], "x":7.75, "y":2.25}, - {"matrix":[2,7], "x":8.75, "y":2.25}, - {"matrix":[2,8], "x":9.75, "y":2.25}, - {"matrix":[2,9], "x":10.75, "y":2.25}, - {"matrix":[2,10], "x":11.75, "y":2.25}, - {"matrix":[2,11], "x":12.75, "y":2.25}, - {"matrix":[2,12], "x":13.75, "y":2.25}, - {"matrix":[2,13], "x":14.75, "y":2.25, "w":1.5}, - {"matrix":[2,14], "x":16.5, "y":2.25}, - {"matrix":[2,15], "x":17.5, "y":2.25}, - {"matrix":[2,16], "x":18.5, "y":2.25}, - - {"matrix":[3,17], "x":0, "y":2.75}, - - {"matrix":[3,0], "x":1.25, "y":3.25, "w":1.75}, - {"matrix":[3,1], "x":3, "y":3.25}, - {"matrix":[3,2], "x":4, "y":3.25}, - {"matrix":[3,3], "x":5, "y":3.25}, - {"matrix":[3,4], "x":6, "y":3.25}, - {"matrix":[3,5], "x":7, "y":3.25}, - {"matrix":[3,6], "x":8, "y":3.25}, - {"matrix":[3,7], "x":9, "y":3.25}, - {"matrix":[3,8], "x":10, "y":3.25}, - {"matrix":[3,9], "x":11, "y":3.25}, - {"matrix":[3,10], "x":12, "y":3.25}, - {"matrix":[3,11], "x":13, "y":3.25}, - {"matrix":[3,13], "x":14, "y":3.25, "w":2.25}, - - {"matrix":[4,17], "x":0, "y":4}, - - {"matrix":[4,0], "x":1.25, "y":4.25, "w":2.25}, - {"matrix":[4,2], "x":3.5, "y":4.25}, - {"matrix":[4,3], "x":4.5, "y":4.25}, - {"matrix":[4,4], "x":5.5, "y":4.25}, - {"matrix":[4,5], "x":6.5, "y":4.25}, - {"matrix":[4,6], "x":7.5, "y":4.25}, - {"matrix":[4,7], "x":8.5, "y":4.25}, - {"matrix":[4,8], "x":9.5, "y":4.25}, - {"matrix":[4,9], "x":10.5, "y":4.25}, - {"matrix":[4,10], "x":11.5, "y":4.25}, - {"matrix":[4,11], "x":12.5, "y":4.25}, - {"matrix":[4,13], "x":13.5, "y":4.25, "w":2.75}, - {"matrix":[4,15], "x":17.5, "y":4.25}, - - {"matrix":[5,17], "x":0, "y":5.25}, - - {"matrix":[5,0], "x":1.25, "y":5.25, "w":1.25}, - {"matrix":[5,1], "x":2.5, "y":5.25, "w":1.25}, - {"matrix":[5,2], "x":3.75, "y":5.25, "w":1.25}, - {"matrix":[5,6], "x":5, "y":5.25, "w":6.25}, - {"matrix":[5,10], "x":11.25, "y":5.25, "w":1.25}, - {"matrix":[5,11], "x":12.5, "y":5.25, "w":1.25}, - {"matrix":[5,12], "x":13.75, "y":5.25, "w":1.25}, - {"matrix":[5,13], "x":15, "y":5.25, "w":1.25}, - {"matrix":[5,14], "x":16.5, "y":5.25}, - {"matrix":[5,15], "x":17.5, "y":5.25}, - {"matrix":[5,16], "x":18.5, "y":5.25} - ] - } - }, - "rgb_matrix": { - "layout": [ - {"matrix":[0, 1], "flags":1, "x":21, "y":0}, - {"matrix":[0, 2], "flags":1, "x":44, "y":0}, - {"matrix":[0, 3], "flags":1, "x":56, "y":0}, - {"matrix":[0, 4], "flags":1, "x":68, "y":0}, - {"matrix":[0, 5], "flags":1, "x":79, "y":0}, - {"matrix":[0, 6], "flags":1, "x":96, "y":0}, - {"matrix":[0, 7], "flags":1, "x":108, "y":0}, - {"matrix":[0, 8], "flags":1, "x":120, "y":0}, - {"matrix":[0, 9], "flags":1, "x":131, "y":0}, - {"matrix":[0, 10], "flags":1, "x":149, "y":0}, - {"matrix":[0, 11], "flags":1, "x":160, "y":0}, - {"matrix":[0, 12], "flags":1, "x":172, "y":0}, - {"matrix":[0, 13], "flags":1, "x":183, "y":0}, - {"matrix":[0, 14], "flags":1, "x":201, "y":0}, - {"matrix":[0, 15], "flags":1, "x":212, "y":0}, - {"matrix":[0, 16], "flags":1, "x":224, "y":0}, - - {"matrix":[1, 0], "flags":1, "x":21, "y":17}, - {"matrix":[1, 1], "flags":8, "x":32, "y":17}, - {"matrix":[1, 2], "flags":8, "x":44, "y":17}, - {"matrix":[1, 3], "flags":8, "x":55, "y":17}, - {"matrix":[1, 4], "flags":4, "x":67, "y":17}, - {"matrix":[1, 5], "flags":4, "x":79, "y":17}, - {"matrix":[1, 6], "flags":4, "x":90, "y":17}, - {"matrix":[1, 7], "flags":4, "x":102, "y":17}, - {"matrix":[1, 8], "flags":4, "x":114, "y":17}, - {"matrix":[1, 9], "flags":4, "x":125, "y":17}, - {"matrix":[1, 10], "flags":4, "x":137, "y":17}, - {"matrix":[1, 11], "flags":4, "x":149, "y":17}, - {"matrix":[1, 12], "flags":4, "x":160, "y":17}, - {"matrix":[1, 13], "flags":1, "x":178, "y":17}, - {"matrix":[1, 14], "flags":1, "x":201, "y":17}, - {"matrix":[1, 15], "flags":1, "x":212, "y":17}, - {"matrix":[1, 16], "flags":1, "x":224, "y":17}, - - {"matrix":[1, 17], "flags":4, "x":0, "y":23}, - {"matrix":[2, 0], "flags":1, "x":25, "y":29}, - {"matrix":[2, 1], "flags":4, "x":41, "y":29}, - {"matrix":[2, 2], "flags":4, "x":53, "y":29}, - {"matrix":[2, 3], "flags":4, "x":64, "y":29}, - {"matrix":[2, 4], "flags":4, "x":76, "y":29}, - {"matrix":[2, 5], "flags":4, "x":87, "y":29}, - {"matrix":[2, 6], "flags":4, "x":99, "y":29}, - {"matrix":[2, 7], "flags":4, "x":111, "y":29}, - {"matrix":[2, 8], "flags":4, "x":122, "y":29}, - {"matrix":[2, 9], "flags":4, "x":131, "y":29}, - {"matrix":[2, 10], "flags":4, "x":143, "y":29}, - {"matrix":[2, 11], "flags":4, "x":154, "y":29}, - {"matrix":[2, 12], "flags":4, "x":166, "y":29}, - {"matrix":[2, 13], "flags":1, "x":180, "y":29}, - {"matrix":[2, 14], "flags":1, "x":201, "y":29}, - {"matrix":[2, 15], "flags":1, "x":212, "y":29}, - {"matrix":[2, 16], "flags":1, "x":224, "y":29}, - - {"matrix":[3, 17], "flags":4, "x":0, "y":37}, - {"matrix":[3, 0], "flags":8, "x":25, "y":40}, - {"matrix":[3, 1], "flags":4, "x":41, "y":40}, - {"matrix":[3, 2], "flags":4, "x":53, "y":40}, - {"matrix":[3, 3], "flags":4, "x":64, "y":40}, - {"matrix":[3, 4], "flags":4, "x":76, "y":40}, - {"matrix":[3, 5], "flags":4, "x":87, "y":40}, - {"matrix":[3, 6], "flags":4, "x":99, "y":40}, - {"matrix":[3, 7], "flags":4, "x":111, "y":40}, - {"matrix":[3, 8], "flags":4, "x":122, "y":40}, - {"matrix":[3, 9], "flags":4, "x":134, "y":40}, - {"matrix":[3, 10], "flags":4, "x":146, "y":40}, - {"matrix":[3, 11], "flags":4, "x":157, "y":40}, - {"matrix":[3, 13], "flags":1, "x":176, "y":40}, - - {"matrix":[4, 17], "flags":4, "x":0, "y":50}, - {"matrix":[4, 0], "flags":1, "x":28, "y":52}, - {"matrix":[4, 2], "flags":4, "x":47, "y":52}, - {"matrix":[4, 3], "flags":4, "x":58, "y":52}, - {"matrix":[4, 4], "flags":4, "x":70, "y":52}, - {"matrix":[4, 5], "flags":4, "x":82, "y":52}, - {"matrix":[4, 6], "flags":4, "x":93, "y":52}, - {"matrix":[4, 7], "flags":4, "x":105, "y":52}, - {"matrix":[4, 8], "flags":4, "x":116, "y":52}, - {"matrix":[4, 9], "flags":4, "x":128, "y":52}, - {"matrix":[4, 10], "flags":4, "x":140, "y":52}, - {"matrix":[4, 11], "flags":4, "x":151, "y":52}, - {"matrix":[4, 13], "flags":1, "x":173, "y":52}, - {"matrix":[4, 15], "flags":1, "x":212, "y":52}, - - {"matrix":[5, 17], "flags":4, "x":0, "y":64}, - {"matrix":[5, 0], "flags":1, "x":22, "y":64}, - {"matrix":[5, 1], "flags":1, "x":37, "y":64}, - {"matrix":[5, 2], "flags":1, "x":51, "y":64}, - {"matrix":[5, 6], "flags":4, "x":95, "y":64}, - {"matrix":[5, 10], "flags":1, "x":138, "y":64}, - {"matrix":[5, 11], "flags":1, "x":153, "y":64}, - {"matrix":[5, 12], "flags":1, "x":167, "y":64}, - {"matrix":[5, 13], "flags":1, "x":182, "y":64}, - {"matrix":[5, 14], "flags":1, "x":201, "y":64}, - {"matrix":[5, 15], "flags":1, "x":212, "y":64}, - {"matrix":[5, 16], "flags":1, "x":224, "y":64} - ] - } -} diff --git a/keyboards/keychron/q3_pro/ansi_encoder_se/keymaps/default/keymap.c b/keyboards/keychron/q3_pro/ansi_encoder_se/keymaps/default/keymap.c deleted file mode 100644 index 307c1783c1..0000000000 --- a/keyboards/keychron/q3_pro/ansi_encoder_se/keymaps/default/keymap.c +++ /dev/null @@ -1,68 +0,0 @@ -/* 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 . - */ - -#include QMK_KEYBOARD_H - -// clang-format off -enum layers{ - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN, -}; - -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_ansi_92( - KC_MUTE, KC_ESC, KC_BRID, KC_BRIU, KC_MCTL, KC_LPAD, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_SNAP, KC_SIRI, RGB_MOD, - KC_GRV, 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_INS, KC_HOME, KC_PGUP, - _______, 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_DEL, KC_END, KC_PGDN, - _______, 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_LCTL, KC_LOPT, KC_LCMD, KC_SPC, KC_RCMD, KC_ROPT, MO(MAC_FN), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - - [MAC_FN] = LAYOUT_ansi_92( - RGB_TOG, _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, RGB_TOG, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - - [WIN_BASE] = LAYOUT_ansi_92( - KC_MUTE, KC_ESC, 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_PSCR, KC_CTANA, RGB_MOD, - KC_GRV, 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_INS, KC_HOME, KC_PGUP, - _______, 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_DEL, KC_END, KC_PGDN, - _______, 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_LCTL, KC_LWIN, KC_LALT, KC_SPC, KC_RALT, KC_RWIN, MO(WIN_FN), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - - [WIN_FN] = LAYOUT_ansi_92( - RGB_TOG, _______, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, RGB_TOG, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), -}; - -#if defined(ENCODER_MAP_ENABLE) -const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][2] = { - [MAC_BASE] = { ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [MAC_FN] = { ENCODER_CCW_CW(RGB_VAD, RGB_VAI)}, - [WIN_BASE] = { ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [WIN_FN] = { ENCODER_CCW_CW(RGB_VAD, RGB_VAI)}, -}; -#endif // ENCODER_MAP_ENABLE diff --git a/keyboards/keychron/q3_pro/ansi_encoder_se/keymaps/default/rules.mk b/keyboards/keychron/q3_pro/ansi_encoder_se/keymaps/default/rules.mk deleted file mode 100644 index ee32568148..0000000000 --- a/keyboards/keychron/q3_pro/ansi_encoder_se/keymaps/default/rules.mk +++ /dev/null @@ -1 +0,0 @@ -ENCODER_MAP_ENABLE = yes diff --git a/keyboards/keychron/q3_pro/ansi_encoder_se/keymaps/via/keymap.c b/keyboards/keychron/q3_pro/ansi_encoder_se/keymaps/via/keymap.c deleted file mode 100644 index 534326a3b2..0000000000 --- a/keyboards/keychron/q3_pro/ansi_encoder_se/keymaps/via/keymap.c +++ /dev/null @@ -1,68 +0,0 @@ -/* 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 . - */ - -#include QMK_KEYBOARD_H - -enum layers{ - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN, -}; - -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_ansi_92( - KC_MUTE, KC_ESC, KC_BRID, KC_BRIU, KC_MCTL, KC_LPAD, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_SNAP, KC_SIRI, RGB_MOD, - KC_GRV, 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_INS, KC_HOME, KC_PGUP, - MC_1, 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_DEL, KC_END, KC_PGDN, - MC_2, 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, - MC_3, 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, - MC_4, KC_LCTL, KC_LOPTN, KC_LCMMD, KC_SPC, KC_RCMMD, KC_ROPTN, MO(MAC_FN), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - - [MAC_FN] = LAYOUT_ansi_92( - RGB_TOG, _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, RGB_TOG, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - - [WIN_BASE] = LAYOUT_ansi_92( - KC_MUTE, KC_ESC, 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_PSCR, KC_CTANA, RGB_MOD, - KC_GRV, 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_INS, KC_HOME, KC_PGUP, - MC_1, 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_DEL, KC_END, KC_PGDN, - MC_2, 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, - MC_3, 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, - MC_4, KC_LCTL, KC_LWIN, KC_LALT, KC_SPC, KC_RALT, KC_RWIN, MO(WIN_FN), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - - [WIN_FN] = LAYOUT_ansi_92( - RGB_TOG, _______, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, RGB_TOG, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), -}; - -#if defined(ENCODER_MAP_ENABLE) -const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][2] = { - [MAC_BASE] = { ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [MAC_FN] = { ENCODER_CCW_CW(RGB_VAD, RGB_VAI)}, - [WIN_BASE] = { ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [WIN_FN] = { ENCODER_CCW_CW(RGB_VAD, RGB_VAI)}, -}; -#endif // ENCODER_MAP_ENABLE diff --git a/keyboards/keychron/q3_pro/ansi_encoder_se/keymaps/via/rules.mk b/keyboards/keychron/q3_pro/ansi_encoder_se/keymaps/via/rules.mk deleted file mode 100644 index f1adcab005..0000000000 --- a/keyboards/keychron/q3_pro/ansi_encoder_se/keymaps/via/rules.mk +++ /dev/null @@ -1,2 +0,0 @@ -VIA_ENABLE = yes -ENCODER_MAP_ENABLE = yes diff --git a/keyboards/keychron/q3_pro/ansi_encoder_se/rules.mk b/keyboards/keychron/q3_pro/ansi_encoder_se/rules.mk deleted file mode 100644 index 36ee49ccb0..0000000000 --- a/keyboards/keychron/q3_pro/ansi_encoder_se/rules.mk +++ /dev/null @@ -1 +0,0 @@ -SRC += matrix.c diff --git a/keyboards/keychron/q3_pro/config.h b/keyboards/keychron/q3_pro/config.h deleted file mode 100644 index 0d84fe4d4a..0000000000 --- a/keyboards/keychron/q3_pro/config.h +++ /dev/null @@ -1,90 +0,0 @@ -/* 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 . - */ - -#pragma once - -/* turn off effects when suspended */ -#define RGB_DISABLE_WHEN_USB_SUSPENDED - -/* DIP switch for Mac/win OS 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_STATE 1 - -# define HOST_DEVICES_COUNT 3 - -# if defined(RGB_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 - -/* Encoder Configuration */ -#ifdef ENCODER_ENABLE -# define ENCODER_DEFAULT_POS 0x3 -#endif - -/* Emulated EEPROM configuration */ -#define WEAR_LEVELING_LOGICAL_SIZE 2048 -#define WEAR_LEVELING_BACKING_SIZE (WEAR_LEVELING_LOGICAL_SIZE * 2) -#define DYNAMIC_KEYMAP_EEPROM_MAX_ADDR 2047 - -/* Factory test keys */ -#define FN_KEY1 MO(1) -#define FN_KEY2 MO(3) diff --git a/keyboards/keychron/q3_pro/halconf.h b/keyboards/keychron/q3_pro/halconf.h deleted file mode 100644 index 941c1626c7..0000000000 --- a/keyboards/keychron/q3_pro/halconf.h +++ /dev/null @@ -1,29 +0,0 @@ -/* Copyright 2022 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 _CHIBIOS_HAL_CONF_VER_8_0_ - -#define HAL_USE_I2C TRUE - -#ifdef KC_BLUETOOTH_ENABLE -# define PAL_USE_CALLBACKS TRUE -# define HAL_USE_SERIAL TRUE -# define HAL_USE_RTC TRUE -#endif - -#include_next diff --git a/keyboards/keychron/q3_pro/info.json b/keyboards/keychron/q3_pro/info.json deleted file mode 100644 index 79c485a994..0000000000 --- a/keyboards/keychron/q3_pro/info.json +++ /dev/null @@ -1,47 +0,0 @@ -{ - "keyboard_name": "Keychron Q3 Pro", - "manufacturer": "Keychron", - "url": "https://github.com/Keychron", - "maintainer": "lokher", - "processor": "STM32L432", - "bootloader": "stm32-dfu", - "usb": { - "vid": "0x3434" - }, - "features": { - "bootmagic": true, - "mousekey": true, - "extrakey": true, - "nkro": true, - "dip_switch": true, - "encoder": true, - "rgb_matrix": true, - "raw": true - }, - "rgb_matrix": { - "driver": "snled27351", - "animations": { - "breathing": true, - "band_spiral_val": true, - "cycle_all": true, - "cycle_left_right": true, - "cycle_up_down": true, - "rainbow_moving_chevron": true, - "cycle_out_in": true, - "cycle_out_in_dual": true, - "cycle_pinwheel": true, - "cycle_spiral": true, - "dual_beacon": true, - "rainbow_beacon": true, - "jellybean_raindrops": true, - "pixel_rain": true, - "typing_heatmap": true, - "digital_rain": true, - "solid_reactive_simple": true, - "solid_reactive_multiwide": true, - "solid_reactive_multinexus": true, - "splash": true, - "solid_splash": true - } - } -} diff --git a/keyboards/keychron/q3_pro/iso_encoder/config.h b/keyboards/keychron/q3_pro/iso_encoder/config.h deleted file mode 100644 index 7a1ea63e98..0000000000 --- a/keyboards/keychron/q3_pro/iso_encoder/config.h +++ /dev/null @@ -1,68 +0,0 @@ -/* 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 . - */ - -#pragma once - -#ifdef RGB_MATRIX_ENABLE -/* RGB Matrix Driver Configuration */ -# define DRIVER_COUNT 2 -# define DRIVER_ADDR_1 0b1110111 -# define DRIVER_ADDR_2 0b1110100 - -/* RGB Matrix Configuration */ -# define DRIVER_1_LED_COUNT 47 -# define DRIVER_2_LED_COUNT 41 -# define RGB_MATRIX_LED_COUNT (DRIVER_1_LED_COUNT + DRIVER_2_LED_COUNT) - -/* Set to infinit, which is use in USB mode by default */ -# define RGB_MATRIX_TIMEOUT RGB_MATRIX_TIMEOUT_INFINITE - -/* Allow shutdown of led driver to save power */ -# define RGB_MATRIX_DRIVER_SHUTDOWN_ENABLE - -/* Turn off backlight on low brightness to save power */ -# define RGB_MATRIX_BRIGHTNESS_TURN_OFF_VAL 32 - -/* Indication led */ -# define CAPS_LOCK_INDEX 49 -# define LOW_BAT_IND_INDEX 80 - -// RGB Matrix Animation modes. Explicitly enabled -// For full list of effects, see: -// https://docs.qmk.fm/#/feature_rgb_matrix?id=rgb-matrix-effects -# define RGB_MATRIX_FRAMEBUFFER_EFFECTS -# define RGB_MATRIX_KEYPRESSES - -/* Scan phase of led driver set as MSKPHASE_9CHANNEL(defined as 0x03 in snled27351.h) */ -# define PHASE_CHANNEL MSKPHASE_9CHANNEL - -/* Set LED driver current */ -# define SNLED27351_CURRENT_TUNE \ - { 0x28, 0x28, 0x28, 0x28, 0x28, 0x28, 0x28, 0x28, 0x28, 0x28, 0x28, 0x28 } - -# ifdef KC_BLUETOOTH_ENABLE -# define HOST_DEVICES_COUNT 3 -# define HOST_LED_MATRIX_LIST \ - { 17, 18, 19 } -# define BAT_LEVEL_LED_LIST \ - { 17, 18, 19, 20, 21, 22, 23, 24, 25, 26 } -# endif -#endif - -#ifdef KC_BLUETOOTH_ENABLE -# define BAT_LOW_LED_PIN A10 -# define BAT_LOW_LED_PIN_ON_STATE 1 -#endif diff --git a/keyboards/keychron/q3_pro/iso_encoder/info.json b/keyboards/keychron/q3_pro/iso_encoder/info.json deleted file mode 100644 index d1bd4c13e4..0000000000 --- a/keyboards/keychron/q3_pro/iso_encoder/info.json +++ /dev/null @@ -1,214 +0,0 @@ -{ - "usb": { - "pid": "0x0634", - "device_version": "1.0.0" - }, - "encoder": { - "rotary": [ - {"pin_a": "A4", "pin_b": "A0"} - ] - }, - "matrix_pins": { - "cols": [null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null], - "rows": ["B5", "B4", "B3", "A15", "A14", "A13"], - "custom": true, - "custom_lite": true - }, - "layouts": { - "LAYOUT_tkl_f13_iso": { - "layout": [ - {"matrix":[0,0], "x":0, "y":0}, - {"matrix":[0,1], "x":1.25, "y":0}, - {"matrix":[0,2], "x":2.25, "y":0}, - {"matrix":[0,3], "x":3.25, "y":0}, - {"matrix":[0,4], "x":4.25, "y":0}, - {"matrix":[0,5], "x":5.5, "y":0}, - {"matrix":[0,6], "x":6.5, "y":0}, - {"matrix":[0,7], "x":7.5, "y":0}, - {"matrix":[0,8], "x":8.5, "y":0}, - {"matrix":[0,9], "x":9.75, "y":0}, - {"matrix":[0,10], "x":10.75, "y":0}, - {"matrix":[0,11], "x":11.75, "y":0}, - {"matrix":[0,12], "x":12.75, "y":0}, - {"matrix":[0,13], "x":14, "y":0}, - {"matrix":[0,14], "x":15.25, "y":0}, - {"matrix":[0,15], "x":16.25, "y":0}, - {"matrix":[3,12], "x":17.25, "y":0}, - - {"matrix":[1,0], "x":0, "y":1.25}, - {"matrix":[1,1], "x":1, "y":1.25}, - {"matrix":[1,2], "x":2, "y":1.25}, - {"matrix":[1,3], "x":3, "y":1.25}, - {"matrix":[1,4], "x":4, "y":1.25}, - {"matrix":[1,5], "x":5, "y":1.25}, - {"matrix":[1,6], "x":6, "y":1.25}, - {"matrix":[1,7], "x":7, "y":1.25}, - {"matrix":[1,8], "x":8, "y":1.25}, - {"matrix":[1,9], "x":9, "y":1.25}, - {"matrix":[1,10], "x":10, "y":1.25}, - {"matrix":[1,11], "x":11, "y":1.25}, - {"matrix":[1,12], "x":12, "y":1.25}, - {"matrix":[1,13], "x":13, "y":1.25, "w":2}, - {"matrix":[1,14], "x":15.25, "y":1.25}, - {"matrix":[1,15], "x":16.25, "y":1.25}, - {"matrix":[3,14], "x":17.25, "y":1.25}, - - {"matrix":[2,0], "x":0, "y":2.25, "w":1.5}, - {"matrix":[2,1], "x":1.5, "y":2.25}, - {"matrix":[2,2], "x":2.5, "y":2.25}, - {"matrix":[2,3], "x":3.5, "y":2.25}, - {"matrix":[2,4], "x":4.5, "y":2.25}, - {"matrix":[2,5], "x":5.5, "y":2.25}, - {"matrix":[2,6], "x":6.5, "y":2.25}, - {"matrix":[2,7], "x":7.5, "y":2.25}, - {"matrix":[2,8], "x":8.5, "y":2.25}, - {"matrix":[2,9], "x":9.5, "y":2.25}, - {"matrix":[2,10], "x":10.5, "y":2.25}, - {"matrix":[2,11], "x":11.5, "y":2.25}, - {"matrix":[2,12], "x":12.5, "y":2.25}, - {"matrix":[2,14], "x":15.25, "y":2.25}, - {"matrix":[2,15], "x":16.25, "y":2.25}, - {"matrix":[3,15], "x":17.25, "y":2.25}, - - {"matrix":[3,0], "x":0, "y":3.25, "w":1.75}, - {"matrix":[3,1], "x":1.75, "y":3.25}, - {"matrix":[3,2], "x":2.75, "y":3.25}, - {"matrix":[3,3], "x":3.75, "y":3.25}, - {"matrix":[3,4], "x":4.75, "y":3.25}, - {"matrix":[3,5], "x":5.75, "y":3.25}, - {"matrix":[3,6], "x":6.75, "y":3.25}, - {"matrix":[3,7], "x":7.75, "y":3.25}, - {"matrix":[3,8], "x":8.75, "y":3.25}, - {"matrix":[3,9], "x":9.75, "y":3.25}, - {"matrix":[3,10], "x":10.75, "y":3.25}, - {"matrix":[3,11], "x":11.75, "y":3.25}, - {"matrix":[3,13], "x":12.75, "y":3.25}, - {"matrix":[2,13], "x":13.75, "y":2.25, "w":1.25, "h":2}, - - {"matrix":[4,0], "x":0, "y":4.25, "w":1.25}, - {"matrix":[4,1], "x":1.25, "y":4.25}, - {"matrix":[4,2], "x":2.25, "y":4.25}, - {"matrix":[4,3], "x":3.25, "y":4.25}, - {"matrix":[4,4], "x":4.25, "y":4.25}, - {"matrix":[4,5], "x":5.25, "y":4.25}, - {"matrix":[4,6], "x":6.25, "y":4.25}, - {"matrix":[4,7], "x":7.25, "y":4.25}, - {"matrix":[4,8], "x":8.25, "y":4.25}, - {"matrix":[4,9], "x":9.25, "y":4.25}, - {"matrix":[4,10], "x":10.25, "y":4.25}, - {"matrix":[4,11], "x":11.25, "y":4.25}, - {"matrix":[4,13], "x":12.25, "y":4.25, "w":2.75}, - {"matrix":[4,15], "x":16.25, "y":4.25}, - - {"matrix":[5,0], "x":0, "y":5.25, "w":1.25}, - {"matrix":[5,1], "x":1.25, "y":5.25, "w":1.25}, - {"matrix":[5,2], "x":2.5, "y":5.25, "w":1.25}, - {"matrix":[5,6], "x":3.75, "y":5.25, "w":6.25}, - {"matrix":[5,10], "x":10, "y":5.25, "w":1.25}, - {"matrix":[5,11], "x":11.25, "y":5.25, "w":1.25}, - {"matrix":[5,12], "x":12.5, "y":5.25, "w":1.25}, - {"matrix":[5,13], "x":13.75, "y":5.25, "w":1.25}, - {"matrix":[5,14], "x":15.25, "y":5.25}, - {"matrix":[5,15], "x":16.25, "y":5.25}, - {"matrix":[4,14], "x":17.25, "y":5.25} - ] - } - }, - "rgb_matrix": { - "layout": [ - {"matrix":[0, 0], "flags":1, "x":0, "y":0}, - {"matrix":[0, 1], "flags":1, "x":16, "y":0}, - {"matrix":[0, 2], "flags":1, "x":29, "y":0}, - {"matrix":[0, 3], "flags":1, "x":42, "y":0}, - {"matrix":[0, 4], "flags":1, "x":55, "y":0}, - {"matrix":[0, 5], "flags":1, "x":71, "y":0}, - {"matrix":[0, 6], "flags":1, "x":84, "y":0}, - {"matrix":[0, 7], "flags":1, "x":97, "y":0}, - {"matrix":[0, 8], "flags":1, "x":110, "y":0}, - {"matrix":[0, 9], "flags":1, "x":126, "y":0}, - {"matrix":[0, 10], "flags":1, "x":139, "y":0}, - {"matrix":[0, 11], "flags":1, "x":152, "y":0}, - {"matrix":[0, 12], "flags":1, "x":165, "y":0}, - {"matrix":[0, 14], "flags":1, "x":198, "y":0}, - {"matrix":[0, 15], "flags":1, "x":211, "y":0}, - {"matrix":[3, 12], "flags":1, "x":224, "y":0}, - - {"matrix":[1, 0], "flags":1, "x":0, "y":15}, - {"matrix":[1, 1], "flags":8, "x":13, "y":15}, - {"matrix":[1, 2], "flags":8, "x":26, "y":15}, - {"matrix":[1, 3], "flags":8, "x":39, "y":15}, - {"matrix":[1, 4], "flags":4, "x":52, "y":15}, - {"matrix":[1, 5], "flags":4, "x":65, "y":15}, - {"matrix":[1, 6], "flags":4, "x":78, "y":15}, - {"matrix":[1, 7], "flags":4, "x":91, "y":15}, - {"matrix":[1, 8], "flags":4, "x":104, "y":15}, - {"matrix":[1, 9], "flags":4, "x":117, "y":15}, - {"matrix":[1, 10], "flags":4, "x":130, "y":15}, - {"matrix":[1, 11], "flags":4, "x":143, "y":15}, - {"matrix":[1, 12], "flags":4, "x":156, "y":15}, - {"matrix":[1, 13], "flags":1, "x":176, "y":15}, - {"matrix":[1, 14], "flags":1, "x":198, "y":15}, - {"matrix":[1, 15], "flags":1, "x":211, "y":15}, - {"matrix":[3, 14], "flags":1, "x":224, "y":15}, - - {"matrix":[2, 0], "flags":1, "x":3, "y":28}, - {"matrix":[2, 1], "flags":4, "x":19, "y":28}, - {"matrix":[2, 2], "flags":4, "x":32, "y":28}, - {"matrix":[2, 3], "flags":4, "x":45, "y":28}, - {"matrix":[2, 4], "flags":4, "x":59, "y":28}, - {"matrix":[2, 5], "flags":4, "x":72, "y":28}, - {"matrix":[2, 6], "flags":4, "x":85, "y":28}, - {"matrix":[2, 7], "flags":4, "x":98, "y":28}, - {"matrix":[2, 8], "flags":4, "x":111, "y":28}, - {"matrix":[2, 9], "flags":4, "x":124, "y":28}, - {"matrix":[2, 10], "flags":4, "x":137, "y":28}, - {"matrix":[2, 11], "flags":4, "x":150, "y":28}, - {"matrix":[2, 12], "flags":4, "x":163, "y":28}, - {"matrix":[2, 14], "flags":1, "x":198, "y":28}, - {"matrix":[2, 15], "flags":1, "x":211, "y":28}, - {"matrix":[3, 15], "flags":1, "x":224, "y":28}, - - {"matrix":[3, 0], "flags":8, "x":5, "y":40}, - {"matrix":[3, 1], "flags":4, "x":23, "y":40}, - {"matrix":[3, 2], "flags":4, "x":36, "y":40}, - {"matrix":[3, 3], "flags":4, "x":49, "y":40}, - {"matrix":[3, 4], "flags":4, "x":62, "y":40}, - {"matrix":[3, 5], "flags":4, "x":75, "y":40}, - {"matrix":[3, 6], "flags":4, "x":88, "y":40}, - {"matrix":[3, 7], "flags":4, "x":101, "y":40}, - {"matrix":[3, 8], "flags":4, "x":114, "y":40}, - {"matrix":[3, 9], "flags":4, "x":127, "y":40}, - {"matrix":[3, 10], "flags":4, "x":140, "y":40}, - {"matrix":[3, 11], "flags":4, "x":153, "y":40}, - {"matrix":[3, 13], "flags":1, "x":166, "y":40}, - {"matrix":[2, 13], "flags":1, "x":183, "y":36}, - - {"matrix":[4, 0], "flags":1, "x":2, "y":52}, - {"matrix":[4, 1], "flags":1, "x":16, "y":52}, - {"matrix":[4, 2], "flags":4, "x":29, "y":52}, - {"matrix":[4, 3], "flags":4, "x":42, "y":52}, - {"matrix":[4, 4], "flags":4, "x":55, "y":52}, - {"matrix":[4, 5], "flags":4, "x":68, "y":52}, - {"matrix":[4, 6], "flags":4, "x":81, "y":52}, - {"matrix":[4, 7], "flags":4, "x":94, "y":52}, - {"matrix":[4, 8], "flags":4, "x":107, "y":52}, - {"matrix":[4, 9], "flags":4, "x":120, "y":52}, - {"matrix":[4, 10], "flags":4, "x":133, "y":52}, - {"matrix":[4, 11], "flags":4, "x":146, "y":52}, - {"matrix":[4, 13], "flags":1, "x":171, "y":52}, - {"matrix":[4, 15], "flags":1, "x":211, "y":52}, - - {"matrix":[5, 0], "flags":1, "x":2, "y":64}, - {"matrix":[5, 1], "flags":1, "x":18, "y":64}, - {"matrix":[5, 2], "flags":1, "x":34, "y":64}, - {"matrix":[5, 6], "flags":4, "x":83, "y":64}, - {"matrix":[5, 10], "flags":1, "x":131, "y":64}, - {"matrix":[5, 11], "flags":1, "x":148, "y":64}, - {"matrix":[5, 12], "flags":1, "x":164, "y":64}, - {"matrix":[5, 13], "flags":1, "x":180, "y":64}, - {"matrix":[5, 14], "flags":1, "x":198, "y":64}, - {"matrix":[5, 15], "flags":1, "x":211, "y":64}, - {"matrix":[4, 14], "flags":1, "x":224, "y":64} - ] - } -} diff --git a/keyboards/keychron/q3_pro/iso_encoder/iso_encoder.c b/keyboards/keychron/q3_pro/iso_encoder/iso_encoder.c deleted file mode 100644 index b51ffedecc..0000000000 --- a/keyboards/keychron/q3_pro/iso_encoder/iso_encoder.c +++ /dev/null @@ -1,122 +0,0 @@ -/* 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 . - */ - -#include "quantum.h" - -// clang-format off -#ifdef RGB_MATRIX_ENABLE -const snled27351_led_t g_snled27351_leds[RGB_MATRIX_LED_COUNT] = { -/* Refer to snled27351manual for these locations - * driver - * | R location - * | | G location - * | | | B location - * | | | | */ - {0, I_1, G_1, H_1}, - {0, I_2, G_2, H_2}, - {0, I_3, G_3, H_3}, - {0, I_4, G_4, H_4}, - {0, I_5, G_5, H_5}, - {0, I_6, G_6, H_6}, - {0, I_7, G_7, H_7}, - {0, I_8, G_8, H_8}, - {0, I_9, G_9, H_9}, - {0, I_10, G_10, H_10}, - {0, I_11, G_11, H_11}, - {0, I_12, G_12, H_12}, - {0, I_13, G_13, H_13}, - {0, I_15, G_15, H_15}, - {0, I_16, G_16, H_16}, - {1, C_4, A_4, B_4}, // 16 - - {0, C_1, A_1, B_1}, - {0, C_2, A_2, B_2}, - {0, C_3, A_3, B_3}, - {0, C_4, A_4, B_4}, - {0, C_5, A_5, B_5}, - {0, C_6, A_6, B_6}, - {0, C_7, A_7, B_7}, - {0, C_8, A_8, B_8}, - {0, C_9, A_9, B_9}, - {0, C_10, A_10, B_10}, - {0, C_11, A_11, B_11}, - {0, C_12, A_12, B_12}, - {0, C_13, A_13, B_13}, - {0, C_14, A_14, B_14}, - {0, C_15, A_15, B_15}, - {0, C_16, A_16, B_16}, - {1, C_2, A_2, B_2}, // 17 - - {0, F_1, D_1, E_1}, - {0, F_2, D_2, E_2}, - {0, F_3, D_3, E_3}, - {0, F_4, D_4, E_4}, - {0, F_5, D_5, E_5}, - {0, F_6, D_6, E_6}, - {0, F_7, D_7, E_7}, - {0, F_8, D_8, E_8}, - {0, F_9, D_9, E_9}, - {0, F_10, D_10, E_10}, - {0, F_11, D_11, E_11}, - {0, F_12, D_12, E_12}, - {0, F_13, D_13, E_13}, - {0, F_15, D_15, E_15}, - {0, F_16, D_16, E_16}, - {1, C_1, A_1, B_1}, // 17 - - {1, C_16, A_16, B_16}, - {1, C_15, A_15, B_15}, - {1, C_14, A_14, B_14}, - {1, C_13, A_13, B_13}, - {1, C_12, A_12, B_12}, - {1, C_11, A_11, B_11}, - {1, C_10, A_10, B_10}, - {1, C_9, A_9, B_9}, - {1, C_8, A_8, B_8}, - {1, C_7, A_7, B_7}, - {1, C_6, A_6, B_6}, - {1, C_5, A_5, B_5}, - {1, C_3, A_3, B_3}, // 13 - {0, F_14, D_14, E_14}, // Enter - - {1, I_16, G_16, H_16}, - {1, I_15, G_15, H_15}, - {1, I_14, G_14, H_14}, - {1, I_13, G_13, H_13}, - {1, I_12, G_12, H_12}, - {1, I_11, G_11, H_11}, - {1, I_10, G_10, H_10}, - {1, I_9, G_9, H_9}, - {1, I_8, G_8, H_8}, - {1, I_7, G_7, H_7}, - {1, I_6, G_6, H_6}, - {1, I_5, G_5, H_5}, - {1, I_3, G_3, H_3}, - {1, I_1, G_1, H_1}, // 13 - - {1, F_16, D_16, E_16}, - {1, F_15, D_15, E_15}, - {1, F_14, D_14, E_14}, - {1, F_10, D_10, E_10}, - {1, F_6, D_6, E_6}, - {1, F_5, D_5, E_5}, - {1, F_4, D_4, E_4}, - {1, F_3, D_3, E_3}, - {1, F_2, D_2, E_2}, - {1, F_1, D_1, E_1}, - {1, I_2, G_2, H_2}, -}; -#endif diff --git a/keyboards/keychron/q3_pro/iso_encoder/keymaps/default/keymap.c b/keyboards/keychron/q3_pro/iso_encoder/keymaps/default/keymap.c deleted file mode 100644 index 2e6b8acc79..0000000000 --- a/keyboards/keychron/q3_pro/iso_encoder/keymaps/default/keymap.c +++ /dev/null @@ -1,68 +0,0 @@ -/* 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 . - */ - -#include QMK_KEYBOARD_H - -enum layers{ - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN, -}; - -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_tkl_f13_iso( - KC_ESC, KC_BRID, KC_BRIU, KC_MCTL, KC_LPAD, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_MUTE, KC_SNAP, KC_SIRI, RGB_MOD, - KC_GRV, 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_INS, KC_HOME, KC_PGUP, - 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_DEL, KC_END, KC_PGDN, - 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_NUHS, KC_ENT, - KC_LSFT, KC_NUBS, 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_LCTL, KC_LOPTN, KC_LCMMD, KC_SPC, KC_RCMMD, KC_ROPTN, MO(MAC_FN), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - - [MAC_FN] = LAYOUT_tkl_f13_iso( - _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, RGB_TOG, _______, _______, RGB_TOG, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - - [WIN_BASE] = LAYOUT_tkl_f13_iso( - KC_ESC, 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_MUTE, KC_PSCR, KC_CTANA, RGB_MOD, - KC_GRV, 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_INS, KC_HOME, KC_PGUP, - 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_DEL, KC_END, KC_PGDN, - 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_NUHS, KC_ENT, - KC_LSFT, KC_NUBS, 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_LCTL, KC_LCMD, KC_LALT, KC_SPC, KC_RALT, KC_RWIN, MO(WIN_FN), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - - [WIN_FN] = LAYOUT_tkl_f13_iso( - _______, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, RGB_TOG, _______, _______, RGB_TOG, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), -}; - -#if defined(ENCODER_MAP_ENABLE) -const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][2] = { - [MAC_BASE] = { ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [MAC_FN] = { ENCODER_CCW_CW(RGB_VAD, RGB_VAI)}, - [WIN_BASE] = { ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [WIN_FN] = { ENCODER_CCW_CW(RGB_VAD, RGB_VAI)}, -}; -#endif // ENCODER_MAP_ENABLE diff --git a/keyboards/keychron/q3_pro/iso_encoder/keymaps/default/rules.mk b/keyboards/keychron/q3_pro/iso_encoder/keymaps/default/rules.mk deleted file mode 100644 index ee32568148..0000000000 --- a/keyboards/keychron/q3_pro/iso_encoder/keymaps/default/rules.mk +++ /dev/null @@ -1 +0,0 @@ -ENCODER_MAP_ENABLE = yes diff --git a/keyboards/keychron/q3_pro/iso_encoder/keymaps/via/keymap.c b/keyboards/keychron/q3_pro/iso_encoder/keymaps/via/keymap.c deleted file mode 100644 index 2e6b8acc79..0000000000 --- a/keyboards/keychron/q3_pro/iso_encoder/keymaps/via/keymap.c +++ /dev/null @@ -1,68 +0,0 @@ -/* 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 . - */ - -#include QMK_KEYBOARD_H - -enum layers{ - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN, -}; - -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_tkl_f13_iso( - KC_ESC, KC_BRID, KC_BRIU, KC_MCTL, KC_LPAD, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_MUTE, KC_SNAP, KC_SIRI, RGB_MOD, - KC_GRV, 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_INS, KC_HOME, KC_PGUP, - 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_DEL, KC_END, KC_PGDN, - 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_NUHS, KC_ENT, - KC_LSFT, KC_NUBS, 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_LCTL, KC_LOPTN, KC_LCMMD, KC_SPC, KC_RCMMD, KC_ROPTN, MO(MAC_FN), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - - [MAC_FN] = LAYOUT_tkl_f13_iso( - _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, RGB_TOG, _______, _______, RGB_TOG, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - - [WIN_BASE] = LAYOUT_tkl_f13_iso( - KC_ESC, 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_MUTE, KC_PSCR, KC_CTANA, RGB_MOD, - KC_GRV, 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_INS, KC_HOME, KC_PGUP, - 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_DEL, KC_END, KC_PGDN, - 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_NUHS, KC_ENT, - KC_LSFT, KC_NUBS, 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_LCTL, KC_LCMD, KC_LALT, KC_SPC, KC_RALT, KC_RWIN, MO(WIN_FN), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - - [WIN_FN] = LAYOUT_tkl_f13_iso( - _______, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, RGB_TOG, _______, _______, RGB_TOG, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), -}; - -#if defined(ENCODER_MAP_ENABLE) -const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][2] = { - [MAC_BASE] = { ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [MAC_FN] = { ENCODER_CCW_CW(RGB_VAD, RGB_VAI)}, - [WIN_BASE] = { ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [WIN_FN] = { ENCODER_CCW_CW(RGB_VAD, RGB_VAI)}, -}; -#endif // ENCODER_MAP_ENABLE diff --git a/keyboards/keychron/q3_pro/iso_encoder/keymaps/via/rules.mk b/keyboards/keychron/q3_pro/iso_encoder/keymaps/via/rules.mk deleted file mode 100644 index f1adcab005..0000000000 --- a/keyboards/keychron/q3_pro/iso_encoder/keymaps/via/rules.mk +++ /dev/null @@ -1,2 +0,0 @@ -VIA_ENABLE = yes -ENCODER_MAP_ENABLE = yes diff --git a/keyboards/keychron/q3_pro/iso_encoder/rules.mk b/keyboards/keychron/q3_pro/iso_encoder/rules.mk deleted file mode 100644 index 23c407488a..0000000000 --- a/keyboards/keychron/q3_pro/iso_encoder/rules.mk +++ /dev/null @@ -1 +0,0 @@ -include keyboards/keychron/common/common.mk diff --git a/keyboards/keychron/q3_pro/iso_encoder_se/config.h b/keyboards/keychron/q3_pro/iso_encoder_se/config.h deleted file mode 100644 index e992685335..0000000000 --- a/keyboards/keychron/q3_pro/iso_encoder_se/config.h +++ /dev/null @@ -1,58 +0,0 @@ -/* 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 . - */ - -#pragma once - -#ifdef RGB_MATRIX_ENABLE -/* RGB Matrix Driver Configuration */ -# define DRIVER_COUNT 2 -# define DRIVER_ADDR_1 0b1110111 -# define DRIVER_ADDR_2 0b1110100 - -/* RGB Matrix Configuration */ -# define DRIVER_1_LED_COUNT 47 -# define DRIVER_2_LED_COUNT 45 -# define RGB_MATRIX_LED_COUNT (DRIVER_1_LED_COUNT + DRIVER_2_LED_COUNT) - -/* Use the first 9 channels of led driver */ -# define PHASE_CHANNEL MSKPHASE_9CHANNEL - -/* Set LED driver current */ -# define SNLED27351_CURRENT_TUNE \ - { 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20 } - -/* Set to infinit, which is use in USB mode by default */ -# define RGB_MATRIX_TIMEOUT RGB_MATRIX_TIMEOUT_INFINITE - -/* Allow shutdown of led driver to save power */ -# define RGB_MATRIX_DRIVER_SHUTDOWN_ENABLE - -/* Turn off backlight on low brightness to save power */ -# define RGB_MATRIX_BRIGHTNESS_TURN_OFF_VAL 32 - -/* Indication led */ -# define LOW_BAT_IND_INDEX 84 - -// RGB Matrix Animation modes. Explicitly enabled -// For full list of effects, see: -// https://docs.qmk.fm/#/feature_rgb_matrix?id=rgb-matrix-effects -# define RGB_MATRIX_FRAMEBUFFER_EFFECTS -# define RGB_MATRIX_KEYPRESSES -#endif // RGB_MATRIX_ENABLE - -/* Specifed (0,1) which programmed as "ESC" key on this keyboard as bootmagic key */ -#define BOOTMAGIC_LITE_ROW 0 -#define BOOTMAGIC_LITE_COLUMN 1 diff --git a/keyboards/keychron/q3_pro/iso_encoder_se/info.json b/keyboards/keychron/q3_pro/iso_encoder_se/info.json deleted file mode 100644 index e9ed086e7f..0000000000 --- a/keyboards/keychron/q3_pro/iso_encoder_se/info.json +++ /dev/null @@ -1,231 +0,0 @@ -{ - "usb": { - "pid": "0x0631", - "device_version": "1.0.0" - }, - "matrix_size": { - "rows": 6, - "cols": 18 - }, - "matrix_pins": { - "rows": ["B5", "B4", "B3", "A15", "A14", "A13"], - "cols": [null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null], - "custom": true, - "custom_lite": true - }, - "diode_direction": "ROW2COL", - "encoder": { - "rotary": [ - { - "pin_a": "A10", - "pin_b": "A0", - "resolution": 4 - } - ] - }, - "layouts": { - "LAYOUT_93_iso": { - "layout": [ - {"matrix":[0,0], "x":0, "y":0.25}, - {"matrix":[0,1], "x":1.25, "y":0}, - {"matrix":[0,2], "x":3.25, "y":0}, - {"matrix":[0,3], "x":4.25, "y":0}, - {"matrix":[0,4], "x":5.25, "y":0}, - {"matrix":[0,5], "x":6.25, "y":0}, - {"matrix":[0,6], "x":7.75, "y":0}, - {"matrix":[0,7], "x":8.75, "y":0}, - {"matrix":[0,8], "x":9.75, "y":0}, - {"matrix":[0,9], "x":10.75, "y":0}, - {"matrix":[0,10], "x":12.25, "y":0}, - {"matrix":[0,11], "x":13.25, "y":0}, - {"matrix":[0,12], "x":14.25, "y":0}, - {"matrix":[0,13], "x":15.25, "y":0}, - {"matrix":[0,14], "x":16.5, "y":0}, - {"matrix":[0,15], "x":17.5, "y":0}, - {"matrix":[0,16], "x":18.5, "y":0}, - - {"matrix":[1,0], "x":1.25, "y":1.25}, - {"matrix":[1,1], "x":2.25, "y":1.25}, - {"matrix":[1,2], "x":3.25, "y":1.25}, - {"matrix":[1,3], "x":4.25, "y":1.25}, - {"matrix":[1,4], "x":5.25, "y":1.25}, - {"matrix":[1,5], "x":6.25, "y":1.25}, - {"matrix":[1,6], "x":7.25, "y":1.25}, - {"matrix":[1,7], "x":8.25, "y":1.25}, - {"matrix":[1,8], "x":9.25, "y":1.25}, - {"matrix":[1,9], "x":10.25, "y":1.25}, - {"matrix":[1,10], "x":11.25, "y":1.25}, - {"matrix":[1,11], "x":12.25, "y":1.25}, - {"matrix":[1,12], "x":13.25, "y":1.25}, - {"matrix":[1,13], "x":14.25, "y":1.25, "w":2}, - {"matrix":[1,14], "x":16.5, "y":1.25}, - {"matrix":[1,15], "x":17.5, "y":1.25}, - {"matrix":[1,16], "x":18.5, "y":1.25}, - - {"matrix":[1,17], "x":0, "y":1.5}, - {"matrix":[2,0], "x":1.25, "y":2.25, "w":1.5}, - {"matrix":[2,1], "x":2.75, "y":2.25}, - {"matrix":[2,2], "x":3.75, "y":2.25}, - {"matrix":[2,3], "x":4.75, "y":2.25}, - {"matrix":[2,4], "x":5.75, "y":2.25}, - {"matrix":[2,5], "x":6.75, "y":2.25}, - {"matrix":[2,6], "x":7.75, "y":2.25}, - {"matrix":[2,7], "x":8.75, "y":2.25}, - {"matrix":[2,8], "x":9.75, "y":2.25}, - {"matrix":[2,9], "x":10.75, "y":2.25}, - {"matrix":[2,10], "x":11.75, "y":2.25}, - {"matrix":[2,11], "x":12.75, "y":2.25}, - {"matrix":[2,12], "x":13.75, "y":2.25}, - {"matrix":[2,14], "x":16.5, "y":2.25}, - {"matrix":[2,15], "x":17.5, "y":2.25}, - {"matrix":[2,16], "x":18.5, "y":2.25}, - - {"matrix":[3,17], "x":0, "y":2.75}, - {"matrix":[3,0], "x":1.25, "y":3.25, "w":1.75}, - {"matrix":[3,1], "x":3, "y":3.25}, - {"matrix":[3,2], "x":4, "y":3.25}, - {"matrix":[3,3], "x":5, "y":3.25}, - {"matrix":[3,4], "x":6, "y":3.25}, - {"matrix":[3,5], "x":7, "y":3.25}, - {"matrix":[3,6], "x":8, "y":3.25}, - {"matrix":[3,7], "x":9, "y":3.25}, - {"matrix":[3,8], "x":10, "y":3.25}, - {"matrix":[3,9], "x":11, "y":3.25}, - {"matrix":[3,10], "x":12, "y":3.25}, - {"matrix":[3,11], "x":13, "y":3.25}, - {"matrix":[3,13], "x":14, "y":3.25}, - {"matrix":[2,13], "x":15, "y":2.25, "w":1.25, "h":2}, - - {"matrix":[4,17], "x":0, "y":4}, - {"matrix":[4,0], "x":1.25, "y":4.25, "w":1.25}, - {"matrix":[4,1], "x":2.5, "y":4.25}, - {"matrix":[4,2], "x":3.5, "y":4.25}, - {"matrix":[4,3], "x":4.5, "y":4.25}, - {"matrix":[4,4], "x":5.5, "y":4.25}, - {"matrix":[4,5], "x":6.5, "y":4.25}, - {"matrix":[4,6], "x":7.5, "y":4.25}, - {"matrix":[4,7], "x":8.5, "y":4.25}, - {"matrix":[4,8], "x":9.5, "y":4.25}, - {"matrix":[4,9], "x":10.5, "y":4.25}, - {"matrix":[4,10], "x":11.5, "y":4.25}, - {"matrix":[4,11], "x":12.5, "y":4.25}, - {"matrix":[4,13], "x":13.5, "y":4.25, "w":2.75}, - {"matrix":[4,15], "x":17.5, "y":4.25}, - - {"matrix":[5,17], "x":0, "y":5.25}, - {"matrix":[5,0], "x":1.25, "y":5.25, "w":1.25}, - {"matrix":[5,1], "x":2.5, "y":5.25, "w":1.25}, - {"matrix":[5,2], "x":3.75, "y":5.25, "w":1.25}, - {"matrix":[5,6], "x":5, "y":5.25, "w":6.25}, - {"matrix":[5,10], "x":11.25, "y":5.25, "w":1.25}, - {"matrix":[5,11], "x":12.5, "y":5.25, "w":1.25}, - {"matrix":[5,12], "x":13.75, "y":5.25, "w":1.25}, - {"matrix":[5,13], "x":15, "y":5.25, "w":1.25}, - {"matrix":[5,14], "x":16.5, "y":5.25}, - {"matrix":[5,15], "x":17.5, "y":5.25}, - {"matrix":[5,16], "x":18.5, "y":5.25} - ] - } - }, - "rgb_matrix": { - "layout": [ - {"matrix":[0, 1], "flags":1, "x":21, "y":0}, - {"matrix":[0, 2], "flags":1, "x":44, "y":0}, - {"matrix":[0, 3], "flags":1, "x":56, "y":0}, - {"matrix":[0, 4], "flags":1, "x":68, "y":0}, - {"matrix":[0, 5], "flags":1, "x":79, "y":0}, - {"matrix":[0, 6], "flags":1, "x":96, "y":0}, - {"matrix":[0, 7], "flags":1, "x":108, "y":0}, - {"matrix":[0, 8], "flags":1, "x":120, "y":0}, - {"matrix":[0, 9], "flags":1, "x":131, "y":0}, - {"matrix":[0, 10], "flags":1, "x":149, "y":0}, - {"matrix":[0, 11], "flags":1, "x":160, "y":0}, - {"matrix":[0, 12], "flags":1, "x":172, "y":0}, - {"matrix":[0, 13], "flags":1, "x":183, "y":0}, - {"matrix":[0, 14], "flags":1, "x":201, "y":0}, - {"matrix":[0, 15], "flags":1, "x":212, "y":0}, - {"matrix":[0, 16], "flags":1, "x":224, "y":0}, - - {"matrix":[1, 0], "flags":1, "x":21, "y":17}, - {"matrix":[1, 1], "flags":8, "x":32, "y":17}, - {"matrix":[1, 2], "flags":8, "x":44, "y":17}, - {"matrix":[1, 3], "flags":8, "x":55, "y":17}, - {"matrix":[1, 4], "flags":4, "x":67, "y":17}, - {"matrix":[1, 5], "flags":4, "x":79, "y":17}, - {"matrix":[1, 6], "flags":4, "x":90, "y":17}, - {"matrix":[1, 7], "flags":4, "x":102, "y":17}, - {"matrix":[1, 8], "flags":4, "x":114, "y":17}, - {"matrix":[1, 9], "flags":4, "x":125, "y":17}, - {"matrix":[1, 10], "flags":4, "x":137, "y":17}, - {"matrix":[1, 11], "flags":4, "x":149, "y":17}, - {"matrix":[1, 12], "flags":4, "x":160, "y":17}, - {"matrix":[1, 13], "flags":1, "x":178, "y":17}, - {"matrix":[1, 14], "flags":1, "x":201, "y":17}, - {"matrix":[1, 15], "flags":1, "x":212, "y":17}, - {"matrix":[1, 16], "flags":1, "x":224, "y":17}, - - {"matrix":[1, 17], "flags":4, "x":0, "y":23}, - {"matrix":[2, 0], "flags":1, "x":23, "y":29}, - {"matrix":[2, 1], "flags":4, "x":38, "y":29}, - {"matrix":[2, 2], "flags":4, "x":50, "y":29}, - {"matrix":[2, 3], "flags":4, "x":61, "y":29}, - {"matrix":[2, 4], "flags":4, "x":73, "y":29}, - {"matrix":[2, 5], "flags":4, "x":85, "y":29}, - {"matrix":[2, 6], "flags":4, "x":96, "y":29}, - {"matrix":[2, 7], "flags":4, "x":108, "y":29}, - {"matrix":[2, 8], "flags":4, "x":119, "y":29}, - {"matrix":[2, 9], "flags":4, "x":131, "y":29}, - {"matrix":[2, 10], "flags":4, "x":143, "y":29}, - {"matrix":[2, 11], "flags":4, "x":154, "y":29}, - {"matrix":[2, 12], "flags":4, "x":166, "y":29}, - {"matrix":[2, 14], "flags":1, "x":201, "y":29}, - {"matrix":[2, 15], "flags":1, "x":212, "y":29}, - {"matrix":[2, 16], "flags":1, "x":224, "y":29}, - - {"matrix":[3, 17], "flags":4, "x":0, "y":37}, - {"matrix":[3, 0], "flags":8, "x":25, "y":40}, - {"matrix":[3, 1], "flags":4, "x":41, "y":40}, - {"matrix":[3, 2], "flags":4, "x":53, "y":40}, - {"matrix":[3, 3], "flags":4, "x":64, "y":40}, - {"matrix":[3, 4], "flags":4, "x":76, "y":40}, - {"matrix":[3, 5], "flags":4, "x":87, "y":40}, - {"matrix":[3, 6], "flags":4, "x":99, "y":40}, - {"matrix":[3, 7], "flags":4, "x":111, "y":40}, - {"matrix":[3, 8], "flags":4, "x":122, "y":40}, - {"matrix":[3, 9], "flags":4, "x":134, "y":40}, - {"matrix":[3, 10], "flags":4, "x":146, "y":40}, - {"matrix":[3, 11], "flags":4, "x":157, "y":40}, - {"matrix":[3, 13], "flags":1, "x":176, "y":40}, - {"matrix":[2, 13], "flags":1, "x":185, "y":36}, - - {"matrix":[4, 17], "flags":4, "x":0, "y":50}, - {"matrix":[4, 0], "flags":1, "x":22, "y":52}, - {"matrix":[4, 1], "flags":1, "x":35, "y":52}, - {"matrix":[4, 2], "flags":4, "x":47, "y":52}, - {"matrix":[4, 3], "flags":4, "x":58, "y":52}, - {"matrix":[4, 4], "flags":4, "x":70, "y":52}, - {"matrix":[4, 5], "flags":4, "x":82, "y":52}, - {"matrix":[4, 6], "flags":4, "x":93, "y":52}, - {"matrix":[4, 7], "flags":4, "x":105, "y":52}, - {"matrix":[4, 8], "flags":4, "x":116, "y":52}, - {"matrix":[4, 9], "flags":4, "x":128, "y":52}, - {"matrix":[4, 10], "flags":4, "x":140, "y":52}, - {"matrix":[4, 11], "flags":4, "x":151, "y":52}, - {"matrix":[4, 13], "flags":1, "x":173, "y":52}, - {"matrix":[4, 15], "flags":1, "x":212, "y":52}, - - {"matrix":[5, 17], "flags":4, "x":0, "y":64}, - {"matrix":[5, 0], "flags":1, "x":22, "y":64}, - {"matrix":[5, 1], "flags":1, "x":37, "y":64}, - {"matrix":[5, 2], "flags":1, "x":51, "y":64}, - {"matrix":[5, 6], "flags":4, "x":95, "y":64}, - {"matrix":[5, 10], "flags":1, "x":138, "y":64}, - {"matrix":[5, 11], "flags":1, "x":153, "y":64}, - {"matrix":[5, 12], "flags":1, "x":167, "y":64}, - {"matrix":[5, 13], "flags":1, "x":182, "y":64}, - {"matrix":[5, 14], "flags":1, "x":201, "y":64}, - {"matrix":[5, 15], "flags":1, "x":212, "y":64}, - {"matrix":[5, 16], "flags":1, "x":224, "y":64} - ] - } -} diff --git a/keyboards/keychron/q3_pro/iso_encoder_se/iso_encoder_se.c b/keyboards/keychron/q3_pro/iso_encoder_se/iso_encoder_se.c deleted file mode 100644 index e4b189e930..0000000000 --- a/keyboards/keychron/q3_pro/iso_encoder_se/iso_encoder_se.c +++ /dev/null @@ -1,126 +0,0 @@ -/* 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 . - */ - -#include "quantum.h" - -// clang-format off -#ifdef RGB_MATRIX_ENABLE -const snled27351_led_t g_snled27351_leds[RGB_MATRIX_LED_COUNT] = { -/* Refer to snled27351manual for these locations - * driver - * | R location - * | | G location - * | | | B location - * | | | | */ - {0, I_2, G_2, H_2}, - {0, I_3, G_3, H_3}, - {0, I_4, G_4, H_4}, - {0, I_5, G_5, H_5}, - {0, I_6, G_6, H_6}, - {0, I_7, G_7, H_7}, - {0, I_8, G_8, H_8}, - {0, I_9, G_9, H_9}, - {0, I_10, G_10, H_10}, - {0, I_11, G_11, H_11}, - {0, I_12, G_12, H_12}, - {0, I_13, G_13, H_13}, - {0, I_14, G_14, H_14}, - {0, I_15, G_15, H_15}, - {0, I_16, G_16, H_16}, - {1, C_4, A_4, B_4}, - - {0, C_1, A_1, B_1}, - {0, C_2, A_2, B_2}, - {0, C_3, A_3, B_3}, - {0, C_4, A_4, B_4}, - {0, C_5, A_5, B_5}, - {0, C_6, A_6, B_6}, - {0, C_7, A_7, B_7}, - {0, C_8, A_8, B_8}, - {0, C_9, A_9, B_9}, - {0, C_10, A_10, B_10}, - {0, C_11, A_11, B_11}, - {0, C_12, A_12, B_12}, - {0, C_13, A_13, B_13}, - {0, C_14, A_14, B_14}, - {0, C_15, A_15, B_15}, - {0, C_16, A_16, B_16}, - {1, C_2, A_2, B_2}, - - {1, F_13, D_13, E_13}, - {0, F_1, D_1, E_1}, - {0, F_2, D_2, E_2}, - {0, F_3, D_3, E_3}, - {0, F_4, D_4, E_4}, - {0, F_5, D_5, E_5}, - {0, F_6, D_6, E_6}, - {0, F_7, D_7, E_7}, - {0, F_8, D_8, E_8}, - {0, F_9, D_9, E_9}, - {0, F_10, D_10, E_10}, - {0, F_11, D_11, E_11}, - {0, F_12, D_12, E_12}, - {0, F_13, D_13, E_13}, - {0, F_15, D_15, E_15}, - {0, F_16, D_16, E_16}, - {1, C_1, A_1, B_1}, - - {1, F_12, D_12, E_12}, - {1, C_16, A_16, B_16}, - {1, C_15, A_15, B_15}, - {1, C_14, A_14, B_14}, - {1, C_13, A_13, B_13}, - {1, C_12, A_12, B_12}, - {1, C_11, A_11, B_11}, - {1, C_10, A_10, B_10}, - {1, C_9, A_9, B_9}, - {1, C_8, A_8, B_8}, - {1, C_7, A_7, B_7}, - {1, C_6, A_6, B_6}, - {1, C_5, A_5, B_5}, - {1, C_3, A_3, B_3}, - {0, F_14, D_14, E_14}, // Enter - - {1, F_8, D_8, E_8}, - {1, I_16, G_16, H_16}, - {1, I_15, G_15, H_15}, - {1, I_14, G_14, H_14}, - {1, I_13, G_13, H_13}, - {1, I_12, G_12, H_12}, - {1, I_11, G_11, H_11}, - {1, I_10, G_10, H_10}, - {1, I_9, G_9, H_9}, - {1, I_8, G_8, H_8}, - {1, I_7, G_7, H_7}, - {1, I_6, G_6, H_6}, - {1, I_5, G_5, H_5}, - {1, I_3, G_3, H_3}, - {1, I_1, G_1, H_1}, - - {1, F_7, D_7, E_7}, - {1, F_16, D_16, E_16}, - {1, F_15, D_15, E_15}, - {1, F_14, D_14, E_14}, - {1, F_10, D_10, E_10}, - {1, F_6, D_6, E_6}, - {1, F_5, D_5, E_5}, - {1, F_4, D_4, E_4}, - {1, F_3, D_3, E_3}, - {1, F_2, D_2, E_2}, - {1, F_1, D_1, E_1}, - {1, I_2, G_2, H_2}, -}; -#endif diff --git a/keyboards/keychron/q3_pro/iso_encoder_se/keymaps/default/keymap.c b/keyboards/keychron/q3_pro/iso_encoder_se/keymaps/default/keymap.c deleted file mode 100644 index b701e16819..0000000000 --- a/keyboards/keychron/q3_pro/iso_encoder_se/keymaps/default/keymap.c +++ /dev/null @@ -1,68 +0,0 @@ -/* 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 . - */ - -#include QMK_KEYBOARD_H - -// clang-format off -enum layers{ - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN, -}; - -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_93_iso( - KC_MUTE, KC_ESC, KC_BRID, KC_BRIU, KC_MCTL, KC_LPAD, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_SNAP, KC_SIRI, RGB_MOD, - KC_GRV, 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_INS, KC_HOME, KC_PGUP, - _______, 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_DEL, KC_END, KC_PGDN, - _______, 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_NUHS, KC_ENT, - _______, KC_LSFT, KC_NUBS, 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_LCTL, KC_LOPT, KC_LCMD, KC_SPC, KC_RCMD, KC_ROPT, MO(MAC_FN), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - - [MAC_FN] = LAYOUT_93_iso( - RGB_TOG, _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, RGB_TOG, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - - [WIN_BASE] = LAYOUT_93_iso( - KC_MUTE, KC_ESC, 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_PSCR, KC_CTANA, RGB_MOD, - KC_GRV, 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_INS, KC_HOME, KC_PGUP, - _______, 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_DEL, KC_END, KC_PGDN, - _______, 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_NUHS, KC_ENT, - _______, KC_LSFT, KC_NUBS, 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_LCTL, KC_LWIN, KC_LALT, KC_SPC, KC_RALT, KC_RWIN, MO(WIN_FN), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - - [WIN_FN] = LAYOUT_93_iso( - RGB_TOG, _______, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, RGB_TOG, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), -}; - -#if defined(ENCODER_MAP_ENABLE) -const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][2] = { - [MAC_BASE] = { ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [MAC_FN] = { ENCODER_CCW_CW(RGB_VAD, RGB_VAI)}, - [WIN_BASE] = { ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [WIN_FN] = { ENCODER_CCW_CW(RGB_VAD, RGB_VAI)}, -}; -#endif // ENCODER_MAP_ENABLE diff --git a/keyboards/keychron/q3_pro/iso_encoder_se/keymaps/default/rules.mk b/keyboards/keychron/q3_pro/iso_encoder_se/keymaps/default/rules.mk deleted file mode 100644 index ee32568148..0000000000 --- a/keyboards/keychron/q3_pro/iso_encoder_se/keymaps/default/rules.mk +++ /dev/null @@ -1 +0,0 @@ -ENCODER_MAP_ENABLE = yes diff --git a/keyboards/keychron/q3_pro/iso_encoder_se/keymaps/via/keymap.c b/keyboards/keychron/q3_pro/iso_encoder_se/keymaps/via/keymap.c deleted file mode 100644 index 5d8e767fcb..0000000000 --- a/keyboards/keychron/q3_pro/iso_encoder_se/keymaps/via/keymap.c +++ /dev/null @@ -1,68 +0,0 @@ -/* 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 . - */ - -#include QMK_KEYBOARD_H - -// clang-format off -enum layers{ - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN, -}; - -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_93_iso( - KC_MUTE, KC_ESC, KC_BRID, KC_BRIU, KC_MCTL, KC_LPAD, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_SNAP, KC_SIRI, RGB_MOD, - KC_GRV, 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_INS, KC_HOME, KC_PGUP, - MC_1, 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_DEL, KC_END, KC_PGDN, - MC_2, 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_NUHS, KC_ENT, - MC_3, KC_LSFT, KC_NUBS, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, - MC_4, KC_LCTL, KC_LOPTN, KC_LCMMD, KC_SPC, KC_RCMMD, KC_ROPTN, MO(MAC_FN), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - - [MAC_FN] = LAYOUT_93_iso( - RGB_TOG, _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, RGB_TOG, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - - [WIN_BASE] = LAYOUT_93_iso( - KC_MUTE, KC_ESC, 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_PSCR, KC_CTANA, RGB_MOD, - KC_GRV, 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_INS, KC_HOME, KC_PGUP, - MC_1, 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_DEL, KC_END, KC_PGDN, - MC_2, 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_NUHS, KC_ENT, - MC_3, KC_LSFT, KC_NUBS, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, - MC_4, KC_LCTL, KC_LWIN, KC_LALT, KC_SPC, KC_RALT, KC_RWIN, MO(WIN_FN), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - - [WIN_FN] = LAYOUT_93_iso( - RGB_TOG, _______, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, RGB_TOG, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), -}; - -#if defined(ENCODER_MAP_ENABLE) -const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][2] = { - [MAC_BASE] = { ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [MAC_FN] = { ENCODER_CCW_CW(RGB_VAD, RGB_VAI)}, - [WIN_BASE] = { ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [WIN_FN] = { ENCODER_CCW_CW(RGB_VAD, RGB_VAI)}, -}; -#endif // ENCODER_MAP_ENABLE diff --git a/keyboards/keychron/q3_pro/iso_encoder_se/keymaps/via/rules.mk b/keyboards/keychron/q3_pro/iso_encoder_se/keymaps/via/rules.mk deleted file mode 100644 index f1adcab005..0000000000 --- a/keyboards/keychron/q3_pro/iso_encoder_se/keymaps/via/rules.mk +++ /dev/null @@ -1,2 +0,0 @@ -VIA_ENABLE = yes -ENCODER_MAP_ENABLE = yes diff --git a/keyboards/keychron/q3_pro/iso_encoder_se/rules.mk b/keyboards/keychron/q3_pro/iso_encoder_se/rules.mk deleted file mode 100644 index 36ee49ccb0..0000000000 --- a/keyboards/keychron/q3_pro/iso_encoder_se/rules.mk +++ /dev/null @@ -1 +0,0 @@ -SRC += matrix.c diff --git a/keyboards/keychron/q3_pro/jis_encoder_se/config.h b/keyboards/keychron/q3_pro/jis_encoder_se/config.h deleted file mode 100644 index 18f134a0bb..0000000000 --- a/keyboards/keychron/q3_pro/jis_encoder_se/config.h +++ /dev/null @@ -1,66 +0,0 @@ -/* 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 . - */ - -#pragma once - -#ifdef RGB_MATRIX_ENABLE -/* RGB Matrix Driver Configuration */ -# define DRIVER_COUNT 2 -# define DRIVER_ADDR_1 0b1110111 -# define DRIVER_ADDR_2 0b1110100 - -/* RGB Matrix Configuration */ -# define DRIVER_1_LED_COUNT 48 -# define DRIVER_2_LED_COUNT 47 -# define RGB_MATRIX_LED_COUNT (DRIVER_1_LED_COUNT + DRIVER_2_LED_COUNT) - -/* Use the first 9 channels of led driver */ -# define PHASE_CHANNEL MSKPHASE_9CHANNEL - -/* Set LED driver current */ -# define SNLED27351_CURRENT_TUNE \ - { 0x28, 0x28, 0x28, 0x28, 0x28, 0x28, 0x28, 0x28, 0x28, 0x28, 0x28, 0x28 } - -/* Set to infinit, which is use in USB mode by default */ -# define RGB_MATRIX_TIMEOUT RGB_MATRIX_TIMEOUT_INFINITE - -/* Allow shutdown of led driver to save power */ -# define RGB_MATRIX_DRIVER_SHUTDOWN_ENABLE - -/* Turn off backlight on low brightness to save power */ -# define RGB_MATRIX_BRIGHTNESS_TURN_OFF_VAL 32 - -/* Indication led */ -# define LOW_BAT_IND_INDEX 86 - -// RGB Matrix Animation modes. Explicitly enabled -// For full list of effects, see: -// https://docs.qmk.fm/#/feature_rgb_matrix?id=rgb-matrix-effects -# define RGB_MATRIX_FRAMEBUFFER_EFFECTS -# define RGB_MATRIX_KEYPRESSES - -# ifdef KC_BLUETOOTH_ENABLE -# define HOST_DEVICES_COUNT 3 -# define HOST_LED_MATRIX_LIST \ - { 17, 18, 19 } -# define BAT_LEVEL_LED_LIST \ - { 17, 18, 19, 20, 21, 22, 23, 24, 25, 26 } -# endif -#endif // RGB_MATRIX_ENABLE - -/* Specifed (0,1) which programmed as "ESC" key on this keyboard as bootmagic key */ -#define BOOTMAGIC_LITE_ROW 0 -#define BOOTMAGIC_LITE_COLUMN 1 diff --git a/keyboards/keychron/q3_pro/jis_encoder_se/info.json b/keyboards/keychron/q3_pro/jis_encoder_se/info.json deleted file mode 100644 index 78a837398e..0000000000 --- a/keyboards/keychron/q3_pro/jis_encoder_se/info.json +++ /dev/null @@ -1,237 +0,0 @@ -{ - "usb": { - "pid": "0x0632", - "device_version": "1.0.0" - }, - "matrix_size": { - "rows": 6, - "cols": 18 - }, - "matrix_pins": { - "rows": ["B5", "B4", "B3", "A15", "A14", "A13"], - "cols": [null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null], - "custom": true, - "custom_lite": true - }, - "diode_direction": "ROW2COL", - "encoder": { - "rotary": [ - { - "pin_a": "A10", - "pin_b": "A0", - "resolution": 4 - } - ] - }, - "layouts": { - "LAYOUT_96_jis": { - "layout": [ - {"matrix":[0,0], "x":0, "y":0.25}, - {"matrix":[0,1], "x":1.25, "y":0}, - {"matrix":[0,2], "x":3.25, "y":0}, - {"matrix":[0,3], "x":4.25, "y":0}, - {"matrix":[0,4], "x":5.25, "y":0}, - {"matrix":[0,5], "x":6.25, "y":0}, - {"matrix":[0,6], "x":7.75, "y":0}, - {"matrix":[0,7], "x":8.75, "y":0}, - {"matrix":[0,8], "x":9.75, "y":0}, - {"matrix":[0,9], "x":10.75, "y":0}, - {"matrix":[0,10], "x":12.25, "y":0}, - {"matrix":[0,11], "x":13.25, "y":0}, - {"matrix":[0,12], "x":14.25, "y":0}, - {"matrix":[0,13], "x":15.25, "y":0}, - {"matrix":[0,14], "x":16.5, "y":0}, - {"matrix":[0,15], "x":17.5, "y":0}, - {"matrix":[0,16], "x":18.5, "y":0}, - - {"matrix":[1,0], "x":1.25, "y":1.25}, - {"matrix":[1,1], "x":2.25, "y":1.25}, - {"matrix":[1,2], "x":3.25, "y":1.25}, - {"matrix":[1,3], "x":4.25, "y":1.25}, - {"matrix":[1,4], "x":5.25, "y":1.25}, - {"matrix":[1,5], "x":6.25, "y":1.25}, - {"matrix":[1,6], "x":7.25, "y":1.25}, - {"matrix":[1,7], "x":8.25, "y":1.25}, - {"matrix":[1,8], "x":9.25, "y":1.25}, - {"matrix":[1,9], "x":10.25, "y":1.25}, - {"matrix":[1,10], "x":11.25, "y":1.25}, - {"matrix":[1,11], "x":12.25, "y":1.25}, - {"matrix":[1,12], "x":13.25, "y":1.25}, - {"matrix":[1,13], "x":14.25, "y":1.25}, - {"matrix":[3,12], "x":15.25, "y":1.25}, - {"matrix":[1,14], "x":16.5, "y":1.25}, - {"matrix":[1,15], "x":17.5, "y":1.25}, - {"matrix":[1,16], "x":18.5, "y":1.25}, - - {"matrix":[1,17], "x":0, "y":1.5}, - {"matrix":[2,0], "x":1.25, "y":2.25, "w":1.5}, - {"matrix":[2,1], "x":2.75, "y":2.25}, - {"matrix":[2,2], "x":3.75, "y":2.25}, - {"matrix":[2,3], "x":4.75, "y":2.25}, - {"matrix":[2,4], "x":5.75, "y":2.25}, - {"matrix":[2,5], "x":6.75, "y":2.25}, - {"matrix":[2,6], "x":7.75, "y":2.25}, - {"matrix":[2,7], "x":8.75, "y":2.25}, - {"matrix":[2,8], "x":9.75, "y":2.25}, - {"matrix":[2,9], "x":10.75, "y":2.25}, - {"matrix":[2,10], "x":11.75, "y":2.25}, - {"matrix":[2,11], "x":12.75, "y":2.25}, - {"matrix":[2,12], "x":13.75, "y":2.25}, - {"matrix":[2,14], "x":16.5, "y":2.25}, - {"matrix":[2,15], "x":17.5, "y":2.25}, - {"matrix":[2,16], "x":18.5, "y":2.25}, - - {"matrix":[3,17], "x":0, "y":2.75}, - {"matrix":[3,0], "x":1.25, "y":3.25, "w":1.75}, - {"matrix":[3,1], "x":3, "y":3.25}, - {"matrix":[3,2], "x":4, "y":3.25}, - {"matrix":[3,3], "x":5, "y":3.25}, - {"matrix":[3,4], "x":6, "y":3.25}, - {"matrix":[3,5], "x":7, "y":3.25}, - {"matrix":[3,6], "x":8, "y":3.25}, - {"matrix":[3,7], "x":9, "y":3.25}, - {"matrix":[3,8], "x":10, "y":3.25}, - {"matrix":[3,9], "x":11, "y":3.25}, - {"matrix":[3,10], "x":12, "y":3.25}, - {"matrix":[3,11], "x":13, "y":3.25}, - {"matrix":[3,13], "x":14, "y":3.25}, - {"matrix":[2,13], "x":15, "y":2.25, "w":1.25, "h":2}, - - {"matrix":[4,17], "x":0, "y":4}, - {"matrix":[4,0], "x":1.25, "y":4.25, "w":2.25}, - {"matrix":[4,2], "x":3.5, "y":4.25}, - {"matrix":[4,3], "x":4.5, "y":4.25}, - {"matrix":[4,4], "x":5.5, "y":4.25}, - {"matrix":[4,5], "x":6.5, "y":4.25}, - {"matrix":[4,6], "x":7.5, "y":4.25}, - {"matrix":[4,7], "x":8.5, "y":4.25}, - {"matrix":[4,8], "x":9.5, "y":4.25}, - {"matrix":[4,9], "x":10.5, "y":4.25}, - {"matrix":[4,10], "x":11.5, "y":4.25}, - {"matrix":[4,11], "x":12.5, "y":4.25}, - {"matrix":[4,12], "x":13.5, "y":4.25}, - {"matrix":[4,13], "x":14.5, "y":4.25, "w":1.75}, - {"matrix":[4,15], "x":17.5, "y":4.25}, - - {"matrix":[5,17], "x":0, "y":5.25}, - {"matrix":[5,0], "x":1.25, "y":5.25, "w":1.25}, - {"matrix":[5,1], "x":2.5, "y":5.25}, - {"matrix":[5,2], "x":3.5, "y":5.25, "w":1.25}, - {"matrix":[5,3], "x":4.75, "y":5.25}, - {"matrix":[5,6], "x":5.75, "y":5.25, "w":4.75}, - {"matrix":[5,9], "x":10.5, "y":5.25}, - {"matrix":[5,10], "x":11.5, "y":5.25, "w":1.25}, - {"matrix":[5,11], "x":12.75, "y":5.25, "w":1.25}, - {"matrix":[5,12], "x":14, "y":5.25}, - {"matrix":[5,13], "x":15, "y":5.25, "w":1.25}, - {"matrix":[5,14], "x":16.5, "y":5.25}, - {"matrix":[5,15], "x":17.5, "y":5.25}, - {"matrix":[5,16], "x":18.5, "y":5.25} - ] - } - }, - "rgb_matrix": { - "layout": [ - {"matrix":[0, 1], "flags":1, "x":21, "y":0}, - {"matrix":[0, 2], "flags":1, "x":44, "y":0}, - {"matrix":[0, 3], "flags":1, "x":56, "y":0}, - {"matrix":[0, 4], "flags":1, "x":68, "y":0}, - {"matrix":[0, 5], "flags":1, "x":79, "y":0}, - {"matrix":[0, 6], "flags":1, "x":96, "y":0}, - {"matrix":[0, 7], "flags":1, "x":108, "y":0}, - {"matrix":[0, 8], "flags":1, "x":120, "y":0}, - {"matrix":[0, 9], "flags":1, "x":131, "y":0}, - {"matrix":[0, 10], "flags":1, "x":149, "y":0}, - {"matrix":[0, 11], "flags":1, "x":160, "y":0}, - {"matrix":[0, 12], "flags":1, "x":172, "y":0}, - {"matrix":[0, 13], "flags":1, "x":183, "y":0}, - {"matrix":[0, 14], "flags":1, "x":201, "y":0}, - {"matrix":[0, 15], "flags":1, "x":212, "y":0}, - {"matrix":[0, 16], "flags":1, "x":224, "y":0}, - - {"matrix":[1, 0], "flags":1, "x":21, "y":17}, - {"matrix":[1, 1], "flags":8, "x":32, "y":17}, - {"matrix":[1, 2], "flags":8, "x":44, "y":17}, - {"matrix":[1, 3], "flags":8, "x":55, "y":17}, - {"matrix":[1, 4], "flags":4, "x":67, "y":17}, - {"matrix":[1, 5], "flags":4, "x":79, "y":17}, - {"matrix":[1, 6], "flags":4, "x":90, "y":17}, - {"matrix":[1, 7], "flags":4, "x":102, "y":17}, - {"matrix":[1, 8], "flags":4, "x":114, "y":17}, - {"matrix":[1, 9], "flags":4, "x":125, "y":17}, - {"matrix":[1, 10], "flags":4, "x":137, "y":17}, - {"matrix":[1, 11], "flags":4, "x":149, "y":17}, - {"matrix":[1, 12], "flags":4, "x":160, "y":17}, - {"matrix":[1, 13], "flags":1, "x":178, "y":17}, - {"matrix":[3, 12], "flags":1, "x":183, "y":17}, - {"matrix":[1, 14], "flags":1, "x":201, "y":17}, - {"matrix":[1, 15], "flags":1, "x":212, "y":17}, - {"matrix":[1, 16], "flags":1, "x":224, "y":17}, - - {"matrix":[1, 17], "flags":4, "x":0, "y":23}, - {"matrix":[2, 0], "flags":1, "x":23, "y":29}, - {"matrix":[2, 1], "flags":4, "x":38, "y":29}, - {"matrix":[2, 2], "flags":4, "x":50, "y":29}, - {"matrix":[2, 3], "flags":4, "x":61, "y":29}, - {"matrix":[2, 4], "flags":4, "x":73, "y":29}, - {"matrix":[2, 5], "flags":4, "x":85, "y":29}, - {"matrix":[2, 6], "flags":4, "x":96, "y":29}, - {"matrix":[2, 7], "flags":4, "x":108, "y":29}, - {"matrix":[2, 8], "flags":4, "x":119, "y":29}, - {"matrix":[2, 9], "flags":4, "x":131, "y":29}, - {"matrix":[2, 10], "flags":4, "x":143, "y":29}, - {"matrix":[2, 11], "flags":4, "x":154, "y":29}, - {"matrix":[2, 12], "flags":4, "x":166, "y":29}, - {"matrix":[2, 14], "flags":1, "x":201, "y":29}, - {"matrix":[2, 15], "flags":1, "x":212, "y":29}, - {"matrix":[2, 16], "flags":1, "x":224, "y":29}, - - {"matrix":[3, 17], "flags":4, "x":0, "y":37}, - {"matrix":[3, 0], "flags":8, "x":25, "y":40}, - {"matrix":[3, 1], "flags":4, "x":41, "y":40}, - {"matrix":[3, 2], "flags":4, "x":52, "y":40}, - {"matrix":[3, 3], "flags":4, "x":64, "y":40}, - {"matrix":[3, 4], "flags":4, "x":76, "y":40}, - {"matrix":[3, 5], "flags":4, "x":87, "y":40}, - {"matrix":[3, 6], "flags":4, "x":99, "y":40}, - {"matrix":[3, 7], "flags":4, "x":111, "y":40}, - {"matrix":[3, 8], "flags":4, "x":122, "y":40}, - {"matrix":[3, 9], "flags":4, "x":134, "y":40}, - {"matrix":[3, 10], "flags":4, "x":146, "y":40}, - {"matrix":[3, 11], "flags":4, "x":157, "y":40}, - {"matrix":[3, 13], "flags":1, "x":176, "y":40}, - {"matrix":[2, 13], "flags":1, "x":185, "y":36}, - - {"matrix":[4, 17], "flags":4, "x":0, "y":50}, - {"matrix":[4, 0], "flags":1, "x":28, "y":52}, - {"matrix":[4, 2], "flags":4, "x":47, "y":52}, - {"matrix":[4, 3], "flags":4, "x":58, "y":52}, - {"matrix":[4, 4], "flags":4, "x":70, "y":52}, - {"matrix":[4, 5], "flags":4, "x":82, "y":52}, - {"matrix":[4, 6], "flags":4, "x":93, "y":52}, - {"matrix":[4, 7], "flags":4, "x":105, "y":52}, - {"matrix":[4, 8], "flags":4, "x":116, "y":52}, - {"matrix":[4, 9], "flags":4, "x":128, "y":52}, - {"matrix":[4, 10], "flags":4, "x":140, "y":52}, - {"matrix":[4, 11], "flags":4, "x":151, "y":52}, - {"matrix":[4, 12], "flags":4, "x":163, "y":52}, - {"matrix":[4, 13], "flags":1, "x":179, "y":52}, - {"matrix":[4, 15], "flags":1, "x":212, "y":52}, - - {"matrix":[5, 17], "flags":4, "x":0, "y":64}, - {"matrix":[5, 0], "flags":1, "x":22, "y":64}, - {"matrix":[5, 1], "flags":1, "x":35, "y":64}, - {"matrix":[5, 2], "flags":1, "x":48, "y":64}, - {"matrix":[5, 3], "flags":1, "x":61, "y":64}, - {"matrix":[5, 6], "flags":4, "x":93, "y":64}, - {"matrix":[5, 9], "flags":1, "x":127, "y":64}, - {"matrix":[5, 10], "flags":1, "x":141, "y":64}, - {"matrix":[5, 11], "flags":1, "x":156, "y":64}, - {"matrix":[5, 12], "flags":1, "x":169, "y":64}, - {"matrix":[5, 13], "flags":1, "x":182, "y":64}, - {"matrix":[5, 14], "flags":1, "x":201, "y":64}, - {"matrix":[5, 15], "flags":1, "x":212, "y":64}, - {"matrix":[5, 16], "flags":1, "x":224, "y":64} - ] - } -} diff --git a/keyboards/keychron/q3_pro/jis_encoder_se/jis_encoder_se.c b/keyboards/keychron/q3_pro/jis_encoder_se/jis_encoder_se.c deleted file mode 100644 index d9d837f33b..0000000000 --- a/keyboards/keychron/q3_pro/jis_encoder_se/jis_encoder_se.c +++ /dev/null @@ -1,129 +0,0 @@ -/* 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 . - */ - -#include "quantum.h" - -// clang-format off -#ifdef RGB_MATRIX_ENABLE -const snled27351_led_t g_snled27351_leds[RGB_MATRIX_LED_COUNT] = { -/* Refer to snled27351manual for these locations - * driver - * | R location - * | | G location - * | | | B location - * | | | | */ - {0, I_2, G_2, H_2}, - {0, I_3, G_3, H_3}, - {0, I_4, G_4, H_4}, - {0, I_5, G_5, H_5}, - {0, I_6, G_6, H_6}, - {0, I_7, G_7, H_7}, - {0, I_8, G_8, H_8}, - {0, I_9, G_9, H_9}, - {0, I_10, G_10, H_10}, - {0, I_11, G_11, H_11}, - {0, I_12, G_12, H_12}, - {0, I_13, G_13, H_13}, - {0, I_14, G_14, H_14}, - {0, I_15, G_15, H_15}, - {0, I_16, G_16, H_16}, - {1, C_4, A_4, B_4}, - - {0, C_1, A_1, B_1}, - {0, C_2, A_2, B_2}, - {0, C_3, A_3, B_3}, - {0, C_4, A_4, B_4}, - {0, C_5, A_5, B_5}, - {0, C_6, A_6, B_6}, - {0, C_7, A_7, B_7}, - {0, C_8, A_8, B_8}, - {0, C_9, A_9, B_9}, - {0, C_10, A_10, B_10}, - {0, C_11, A_11, B_11}, - {0, C_12, A_12, B_12}, - {0, C_13, A_13, B_13}, - {0, C_14, A_14, B_14}, - {0, I_1, G_1, H_1}, - {0, C_15, A_15, B_15}, - {0, C_16, A_16, B_16}, - {1, C_2, A_2, B_2}, - - {1, F_13, D_13, E_13}, - {0, F_1, D_1, E_1}, - {0, F_2, D_2, E_2}, - {0, F_3, D_3, E_3}, - {0, F_4, D_4, E_4}, - {0, F_5, D_5, E_5}, - {0, F_6, D_6, E_6}, - {0, F_7, D_7, E_7}, - {0, F_8, D_8, E_8}, - {0, F_9, D_9, E_9}, - {0, F_10, D_10, E_10}, - {0, F_11, D_11, E_11}, - {0, F_12, D_12, E_12}, - {0, F_13, D_13, E_13}, - {0, F_15, D_15, E_15}, - {0, F_16, D_16, E_16}, - {1, C_1, A_1, B_1}, - - {1, F_12, D_12, E_12}, - {1, C_16, A_16, B_16}, - {1, C_15, A_15, B_15}, - {1, C_14, A_14, B_14}, - {1, C_13, A_13, B_13}, - {1, C_12, A_12, B_12}, - {1, C_11, A_11, B_11}, - {1, C_10, A_10, B_10}, - {1, C_9, A_9, B_9}, - {1, C_8, A_8, B_8}, - {1, C_7, A_7, B_7}, - {1, C_6, A_6, B_6}, - {1, C_5, A_5, B_5}, - {1, C_3, A_3, B_3}, - {0, F_14, D_14, E_14}, // Enter - - {1, F_8, D_8, E_8}, - {1, I_16, G_16, H_16}, - {1, I_14, G_14, H_14}, - {1, I_13, G_13, H_13}, - {1, I_12, G_12, H_12}, - {1, I_11, G_11, H_11}, - {1, I_10, G_10, H_10}, - {1, I_9, G_9, H_9}, - {1, I_8, G_8, H_8}, - {1, I_7, G_7, H_7}, - {1, I_6, G_6, H_6}, - {1, I_5, G_5, H_5}, - {1, I_4, G_4, H_4}, - {1, I_3, G_3, H_3}, - {1, I_1, G_1, H_1}, - - {1, F_7, D_7, E_7}, - {1, F_16, D_16, E_16}, - {1, F_15, D_15, E_15}, - {1, F_14, D_14, E_14}, - {1, F_11, D_11, E_11}, - {1, F_10, D_10, E_10}, - {1, F_9, D_9, E_9}, - {1, F_6, D_6, E_6}, - {1, F_5, D_5, E_5}, - {1, F_4, D_4, E_4}, - {1, F_3, D_3, E_3}, - {1, F_2, D_2, E_2}, - {1, F_1, D_1, E_1}, - {1, I_2, G_2, H_2}, -}; -#endif diff --git a/keyboards/keychron/q3_pro/jis_encoder_se/keymaps/default/keymap.c b/keyboards/keychron/q3_pro/jis_encoder_se/keymaps/default/keymap.c deleted file mode 100644 index 1358472b55..0000000000 --- a/keyboards/keychron/q3_pro/jis_encoder_se/keymaps/default/keymap.c +++ /dev/null @@ -1,68 +0,0 @@ -/* 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 . - */ - -#include QMK_KEYBOARD_H - -enum layers{ - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN, -}; - -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_96_jis( - KC_MUTE, KC_ESC, KC_BRID, KC_BRIU, KC_MCTL, KC_LPAD, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_SNAP, KC_SIRI, RGB_MOD, - KC_GRV, 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_INT3, KC_BSPC, KC_INS, KC_HOME, KC_PGUP, - _______, 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_DEL, KC_END, KC_PGDN, - _______, 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_NUHS, 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_INT1, KC_RSFT, KC_UP, - _______, KC_LCTL, KC_LOPT, KC_LCMD, KC_LNG2, KC_SPC, KC_LNG1, KC_RCMD, KC_ROPT, MO(MAC_FN), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - - [MAC_FN] = LAYOUT_96_jis( - RGB_TOG, _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, RGB_TOG, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - - [WIN_BASE] = LAYOUT_96_jis( - KC_MUTE, KC_ESC, 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_PSCR, KC_CTANA, RGB_MOD, - KC_GRV, 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_INT3, KC_BSPC, KC_INS, KC_HOME, KC_PGUP, - _______, 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_DEL, KC_END, KC_PGDN, - _______, 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_NUHS, 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_INT1, KC_RSFT, KC_UP, - _______, KC_LCTL, KC_LWIN, KC_LALT, KC_INT5, KC_SPC, KC_INT4, KC_RALT, KC_RWIN, MO(WIN_FN), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - - [WIN_FN] = LAYOUT_96_jis( - RGB_TOG, _______, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, RGB_TOG, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), -}; - -#if defined(ENCODER_MAP_ENABLE) -const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][2] = { - [MAC_BASE] = { ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [MAC_FN] = { ENCODER_CCW_CW(RGB_VAD, RGB_VAI)}, - [WIN_BASE] = { ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [WIN_FN] = { ENCODER_CCW_CW(RGB_VAD, RGB_VAI)}, -}; -#endif // ENCODER_MAP_ENABLE diff --git a/keyboards/keychron/q3_pro/jis_encoder_se/keymaps/default/rules.mk b/keyboards/keychron/q3_pro/jis_encoder_se/keymaps/default/rules.mk deleted file mode 100644 index ee32568148..0000000000 --- a/keyboards/keychron/q3_pro/jis_encoder_se/keymaps/default/rules.mk +++ /dev/null @@ -1 +0,0 @@ -ENCODER_MAP_ENABLE = yes diff --git a/keyboards/keychron/q3_pro/jis_encoder_se/keymaps/via/keymap.c b/keyboards/keychron/q3_pro/jis_encoder_se/keymaps/via/keymap.c deleted file mode 100644 index 1358472b55..0000000000 --- a/keyboards/keychron/q3_pro/jis_encoder_se/keymaps/via/keymap.c +++ /dev/null @@ -1,68 +0,0 @@ -/* 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 . - */ - -#include QMK_KEYBOARD_H - -enum layers{ - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN, -}; - -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_96_jis( - KC_MUTE, KC_ESC, KC_BRID, KC_BRIU, KC_MCTL, KC_LPAD, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_SNAP, KC_SIRI, RGB_MOD, - KC_GRV, 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_INT3, KC_BSPC, KC_INS, KC_HOME, KC_PGUP, - _______, 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_DEL, KC_END, KC_PGDN, - _______, 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_NUHS, 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_INT1, KC_RSFT, KC_UP, - _______, KC_LCTL, KC_LOPT, KC_LCMD, KC_LNG2, KC_SPC, KC_LNG1, KC_RCMD, KC_ROPT, MO(MAC_FN), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - - [MAC_FN] = LAYOUT_96_jis( - RGB_TOG, _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, RGB_TOG, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - - [WIN_BASE] = LAYOUT_96_jis( - KC_MUTE, KC_ESC, 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_PSCR, KC_CTANA, RGB_MOD, - KC_GRV, 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_INT3, KC_BSPC, KC_INS, KC_HOME, KC_PGUP, - _______, 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_DEL, KC_END, KC_PGDN, - _______, 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_NUHS, 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_INT1, KC_RSFT, KC_UP, - _______, KC_LCTL, KC_LWIN, KC_LALT, KC_INT5, KC_SPC, KC_INT4, KC_RALT, KC_RWIN, MO(WIN_FN), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - - [WIN_FN] = LAYOUT_96_jis( - RGB_TOG, _______, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, RGB_TOG, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), -}; - -#if defined(ENCODER_MAP_ENABLE) -const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][2] = { - [MAC_BASE] = { ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [MAC_FN] = { ENCODER_CCW_CW(RGB_VAD, RGB_VAI)}, - [WIN_BASE] = { ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [WIN_FN] = { ENCODER_CCW_CW(RGB_VAD, RGB_VAI)}, -}; -#endif // ENCODER_MAP_ENABLE diff --git a/keyboards/keychron/q3_pro/jis_encoder_se/keymaps/via/rules.mk b/keyboards/keychron/q3_pro/jis_encoder_se/keymaps/via/rules.mk deleted file mode 100644 index f1adcab005..0000000000 --- a/keyboards/keychron/q3_pro/jis_encoder_se/keymaps/via/rules.mk +++ /dev/null @@ -1,2 +0,0 @@ -VIA_ENABLE = yes -ENCODER_MAP_ENABLE = yes diff --git a/keyboards/keychron/q3_pro/jis_encoder_se/rules.mk b/keyboards/keychron/q3_pro/jis_encoder_se/rules.mk deleted file mode 100644 index 36ee49ccb0..0000000000 --- a/keyboards/keychron/q3_pro/jis_encoder_se/rules.mk +++ /dev/null @@ -1 +0,0 @@ -SRC += matrix.c diff --git a/keyboards/keychron/q3_pro/matrix.c b/keyboards/keychron/q3_pro/matrix.c deleted file mode 100644 index cdaa1ec0a6..0000000000 --- a/keyboards/keychron/q3_pro/matrix.c +++ /dev/null @@ -1,293 +0,0 @@ -/* Copyright 2022 @ 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 . - */ - -#include "quantum.h" -#include "indicator.h" -#include "transport.h" - -#define HC595_STCP B0 -#define HC595_SHCP A1 -#define HC595_DS A7 - -pin_t row_pins[MATRIX_ROWS] = MATRIX_ROW_PINS; -pin_t col_pins[MATRIX_COLS] = MATRIX_COL_PINS; - -extern indicator_config_t indicator_config; -static uint32_t power_on_indicator_timer_buffer; -extern bool bat_low_led_pin_state; - -#define POWER_ON_LED_DURATION 3000 - -static inline void HC595_delay(uint16_t n) { - while (n-- > 0) { - asm volatile("nop" ::: "memory"); - }; -} - -static void HC595_output(uint32_t data) { - uint8_t i; - uint8_t n = 1; - - for (i = 0; i < (MATRIX_COLS + 3); i++) { - writePinLow(HC595_SHCP); - - if (data & 0x1) - writePinHigh(HC595_DS); - else - writePinLow(HC595_DS); - - data >>= 1; - - HC595_delay(n); - - writePinHigh(HC595_SHCP); - HC595_delay(n); - } - - HC595_delay(n); - writePinLow(HC595_STCP); - HC595_delay(n); - writePinHigh(HC595_STCP); -} - -static inline void setPinOutput_writeLow(pin_t pin) { - ATOMIC_BLOCK_FORCEON { - setPinOutput(pin); - writePinLow(pin); - } -} - -static inline void setPinInput_high(pin_t pin) { - ATOMIC_BLOCK_FORCEON { - setPinInputHigh(pin); - } -} - -static inline uint8_t readMatrixPin(pin_t pin) { - if (pin != NO_PIN) { - return readPin(pin); - } else { - return 1; - } -} - -static bool select_col(uint8_t col) { - pin_t pin = col_pins[col]; - uint32_t value = 0; - - if (pin != NO_PIN) { - setPinOutput_writeLow(pin); - return true; - } else { - if (power_on_indicator_timer_buffer) { - if (sync_timer_elapsed32(power_on_indicator_timer_buffer) > POWER_ON_LED_DURATION) { - power_on_indicator_timer_buffer = 0; - HC595_output((~(0x1 << (21 - col - 1))) & (7 << 0)); - } else { - HC595_output((~(0x1 << (21 - col - 1)))); - } - } else { - if (get_transport() == TRANSPORT_BLUETOOTH) { - if (indicator_config.value) { - if (indicator_config.value & 0x80) { - value = ~(0x1 << (21 - col - 1)) & ~(3 << 0); - HC595_output(value); - } else { - value = (~(0x1 << (21 - col - 1))) & ~(7 << 0); - HC595_output(value); - } - } else { - if (host_keyboard_led_state().caps_lock) { - value = (~(0x1 << (21 - col - 1))) & ~(5 << 0); - HC595_output(value); - } else { - value = (~(0x1 << (21 - col - 1))) & ~(7 << 0); - HC595_output(value); - } - } - if (bat_low_led_pin_state) { - HC595_output(value | (1 << 0)); - } - } else { - if (host_keyboard_led_state().caps_lock) { - HC595_output((~(0x1 << (21 - col - 1))) & ~(5 << 0)); - } else { - HC595_output((~(0x1 << (21 - col - 1))) & ~(7 << 0)); - } - } - } - return true; - } - return false; -} - -static void unselect_col(uint8_t col) { - pin_t pin = col_pins[col]; - uint32_t value = 0; - - if (pin != NO_PIN) { -#ifdef MATRIX_UNSELECT_DRIVE_HIGH - setPinOutput_writeHigh(pin); -#else - setPinInput_high(pin); -#endif - } else { - if (power_on_indicator_timer_buffer) { - if (sync_timer_elapsed32(power_on_indicator_timer_buffer) > POWER_ON_LED_DURATION) { - power_on_indicator_timer_buffer = 0; - HC595_output(0x1FFFFF & ~(7 << 0)); - } else { - HC595_output(0x1FFFFF); - } - } else { - if (get_transport() == TRANSPORT_BLUETOOTH) { - if (indicator_config.value) { - if (indicator_config.value & 0x80) { - if (col == (MATRIX_COLS - 1)) { - value = 0x1FFFFF & ~(3 << 0); - HC595_output(value); - } - } else { - if (col == (MATRIX_COLS - 1)) { - if (col == (MATRIX_COLS - 1)) { - value = 0x1FFFFF & ~(7 << 0); - HC595_output(value); - } - } - } - } else { - if (host_keyboard_led_state().caps_lock) { - if (col == (MATRIX_COLS - 1)) { - if (col == (MATRIX_COLS - 1)) { - value = 0x1FFFFF & ~(5 << 0); - HC595_output(value); - } - } - } else { - if (col == (MATRIX_COLS - 1)) { - if (col == (MATRIX_COLS - 1)) { - value = 0x1FFFFF & ~(7 << 0); - HC595_output(value); - } - } - } - } - if (bat_low_led_pin_state) { - HC595_output(value | (1 << 0)); - } - } else { - if (host_keyboard_led_state().caps_lock) { - if (col == (MATRIX_COLS - 1)) { - HC595_output(0x1FFFFF & ~(5 << 0)); - } - } else { - if (col == (MATRIX_COLS - 1)) { - HC595_output(0x1FFFFF & ~(7 << 0)); - } - } - } - } - } -} - -static void unselect_cols(void) { - for (uint8_t x = 0; x < MATRIX_COLS; x++) { - pin_t pin = col_pins[x]; - if (pin != NO_PIN) { -#ifdef MATRIX_UNSELECT_DRIVE_HIGH - setPinOutput_writeHigh(pin); -#else - setPinInput_high(pin); -#endif - } else { - if (x == 0) { - HC595_output(0xFFFFFFFF); - power_on_indicator_timer_buffer = sync_timer_read32() | 1; - } - } - } -} - -void select_all_cols(void) { - for (uint8_t x = 0; x < MATRIX_COLS; x++) { - pin_t pin = col_pins[x]; - if (pin != NO_PIN) { - setPinOutput_writeLow(pin); - } else { - if (x == 0) { - if (host_keyboard_led_state().caps_lock) { - HC595_output(0x00000000 | (2 << 0)); - } else { - HC595_output(0x00000000); - } - } - } - } -} - -void matrix_read_rows_on_col(matrix_row_t current_matrix[], uint8_t current_col) { - // Select col - if (!select_col(current_col)) { // select col - return; // skip NO_PIN col - } - HC595_delay(200); - - // For each row... - for (uint8_t row_index = 0; row_index < MATRIX_ROWS; row_index++) { - // Check row pin state - if (readMatrixPin(row_pins[row_index]) == 0) { - // Pin LO, set col bit - current_matrix[row_index] |= (MATRIX_ROW_SHIFTER << current_col); - // key_pressed = true; - } else { - // Pin HI, clear col bit - current_matrix[row_index] &= ~(MATRIX_ROW_SHIFTER << current_col); - } - } - - unselect_col(current_col); - HC595_delay(200); -} - -void matrix_init_custom(void) { - setPinOutput(HC595_DS); - setPinOutput(HC595_STCP); - setPinOutput(HC595_SHCP); - - for (uint8_t x = 0; x < MATRIX_ROWS; x++) { - if (row_pins[x] != NO_PIN) { - setPinInput_high(row_pins[x]); - } - } - - unselect_cols(); -} - -bool matrix_scan_custom(matrix_row_t current_matrix[]) { - bool matrix_has_changed = false; - - matrix_row_t curr_matrix[MATRIX_ROWS] = {0}; - - // Set col, read rows - for (uint8_t current_col = 0; current_col < MATRIX_COLS; current_col++) { - matrix_read_rows_on_col(curr_matrix, current_col); - } - - matrix_has_changed = memcmp(current_matrix, curr_matrix, sizeof(curr_matrix)) != 0; - if (matrix_has_changed) memcpy(current_matrix, curr_matrix, sizeof(curr_matrix)); - - return matrix_has_changed; -} diff --git a/keyboards/keychron/q3_pro/mcuconf.h b/keyboards/keychron/q3_pro/mcuconf.h deleted file mode 100644 index 8bc48dbe12..0000000000 --- a/keyboards/keychron/q3_pro/mcuconf.h +++ /dev/null @@ -1,37 +0,0 @@ -/* Copyright 2022 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 - -/* Set HCLK to 48 MHz as tradeoff of USB lowest clock and - * lower power comsumption for bluetooth. Will use dynamic - * clock when STM32L4 is supported in ChibiOS */ -#undef STM32_PLLM_VALUE -#define STM32_PLLM_VALUE 2 - -#undef STM32_PLLN_VALUE -#define STM32_PLLN_VALUE 12 - -#undef STM32_I2C_USE_I2C1 -#define STM32_I2C_USE_I2C1 TRUE - -#ifdef KC_BLUETOOTH_ENABLE -# undef STM32_SERIAL_USE_USART2 -# define STM32_SERIAL_USE_USART2 TRUE -#endif diff --git a/keyboards/keychron/q3_pro/q3_pro.c b/keyboards/keychron/q3_pro/q3_pro.c deleted file mode 100644 index 6c47334e72..0000000000 --- a/keyboards/keychron/q3_pro/q3_pro.c +++ /dev/null @@ -1,322 +0,0 @@ -/* 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 . - */ - -#include "q3_pro.h" - -#ifdef KC_BLUETOOTH_ENABLE -# include "ckbt51.h" -# include "bluetooth.h" -# include "indicator.h" -# include "transport.h" -# include "battery.h" -# include "bat_level_animation.h" -# include "lpm.h" -#endif - -#ifdef ENABLE_FACTORY_TEST -# include "factory_test.h" -#endif - -#ifdef BAT_LOW_LED_PIN -static uint32_t power_on_indicator_timer_buffer; -# define POWER_ON_LED_DURATION 3000 -#endif - -typedef struct PACKED { - uint8_t len; - uint8_t keycode[3]; -} key_combination_t; - -static uint32_t factory_timer_buffer = 0; -static uint32_t siri_timer_buffer = 0; -static uint8_t mac_keycode[4] = {KC_LOPT, KC_ROPT, KC_LCMD, KC_RCMD}; - -key_combination_t key_comb_list[4] = { - {2, {KC_LWIN, KC_TAB}}, // Task (win) - {2, {KC_LWIN, KC_E}}, // Files (win) - {3, {KC_LSFT, KC_LGUI, KC_4}}, // Snapshot (mac) - {2, {KC_LWIN, KC_C}} // Cortana (win) -}; - -#ifdef KC_BLUETOOTH_ENABLE -bool firstDisconnect = true; -bool bt_factory_reset = false; -static virtual_timer_t pairing_key_timer; -extern uint8_t g_pwm_buffer[DRIVER_COUNT][192]; - -static void pairing_key_timer_cb(void *arg) { - bluetooth_pairing_ex(*(uint8_t *)arg, NULL); -} -#endif - -#ifdef DIP_SWITCH_ENABLE -bool dip_switch_update_kb(uint8_t index, bool active) { - if (index == 0) { - default_layer_set(1UL << (active ? 2 : 0)); - } - dip_switch_update_user(index, active); - - return true; -} -#endif - -#ifdef KC_BLUETOOTH_ENABLE -bool process_record_kb_bt(uint16_t keycode, keyrecord_t *record) { -#else -bool process_record_kb(uint16_t keycode, keyrecord_t *record) { -#endif - static uint8_t host_idx = 0; - - switch (keycode) { - case KC_LOPTN: - case KC_ROPTN: - case KC_LCMMD: - case KC_RCMMD: - if (record->event.pressed) { - register_code(mac_keycode[keycode - KC_LOPTN]); - } else { - unregister_code(mac_keycode[keycode - KC_LOPTN]); - } - return false; // Skip all further processing of this key) - case KC_TASK: - case KC_FILE: - case KC_SNAP: - case KC_CTANA: - if (record->event.pressed) { - for (uint8_t i = 0; i < key_comb_list[keycode - KC_TASK].len; i++) - register_code(key_comb_list[keycode - KC_TASK].keycode[i]); - } else { - for (uint8_t i = 0; i < key_comb_list[keycode - KC_TASK].len; i++) - unregister_code(key_comb_list[keycode - KC_TASK].keycode[i]); - } - return false; // Skip all further processing of this key - case KC_SIRI: - if (record->event.pressed && siri_timer_buffer == 0) { - register_code(KC_LGUI); - register_code(KC_SPACE); - siri_timer_buffer = sync_timer_read32() | 1; - } - return false; // Skip all further processing of this key -#ifdef KC_BLUETOOTH_ENABLE - case BT_HST1 ... BT_HST3: - if (get_transport() == TRANSPORT_BLUETOOTH) { - if (record->event.pressed) { - host_idx = keycode - BT_HST1 + 1; - chVTSet(&pairing_key_timer, TIME_MS2I(2000), (vtfunc_t)pairing_key_timer_cb, &host_idx); - bluetooth_connect_ex(host_idx, 0); - } else { - host_idx = 0; - chVTReset(&pairing_key_timer); - } - } - break; - case BAT_LVL: - if (get_transport() == TRANSPORT_BLUETOOTH && !usb_power_connected()) { - bat_level_animiation_start(battery_get_percentage()); - } - break; -#endif - default: -#ifdef FACTORY_RESET_CHECK - FACTORY_RESET_CHECK(keycode, record); -#endif - break; - } - return true; -} - -#if defined(KC_BLUETOOTH_ENABLE) && defined(ENCODER_ENABLE) -static void encoder_pad_cb(void *param) { - encoder_inerrupt_read((uint32_t)param & 0XFF); -} -#endif - -void keyboard_post_init_kb(void) { - dip_switch_read(true); - -#ifdef KC_BLUETOOTH_ENABLE - /* Currently we don't use this reset pin */ - palSetLineMode(CKBT51_RESET_PIN, PAL_MODE_OUTPUT_PUSHPULL); - palWriteLine(CKBT51_RESET_PIN, PAL_HIGH); - - /* IMPORTANT: DO NOT enable internal pull-up resistor - * as there is an external pull-down resistor. - */ - palSetLineMode(USB_BT_MODE_SELECT_PIN, PAL_MODE_INPUT); - - ckbt51_init(false); - bluetooth_init(); - -# ifdef ENCODER_ENABLE - pin_t encoders_pad_a[NUM_ENCODERS] = ENCODERS_PAD_A; - pin_t encoders_pad_b[NUM_ENCODERS] = ENCODERS_PAD_B; - for (uint32_t i = 0; i < NUM_ENCODERS; i++) { - palEnableLineEvent(encoders_pad_a[i], PAL_EVENT_MODE_BOTH_EDGES); - palEnableLineEvent(encoders_pad_b[i], PAL_EVENT_MODE_BOTH_EDGES); - palSetLineCallback(encoders_pad_a[i], encoder_pad_cb, (void *)i); - palSetLineCallback(encoders_pad_b[i], encoder_pad_cb, (void *)i); - } -# endif -#endif - -#ifdef BAT_LOW_LED_PIN - power_on_indicator_timer_buffer = sync_timer_read32() | 1; - writePin(BAT_LOW_LED_PIN, BAT_LOW_LED_PIN_ON_STATE); -#endif - - keyboard_post_init_user(); -} - -void matrix_scan_kb(void) { - if (factory_timer_buffer && timer_elapsed32(factory_timer_buffer) > 2000) { - factory_timer_buffer = 0; - if (bt_factory_reset) { - bt_factory_reset = false; - palWriteLine(CKBT51_RESET_PIN, PAL_LOW); - wait_ms(5); - palWriteLine(CKBT51_RESET_PIN, PAL_HIGH); - } - } - - if (siri_timer_buffer && sync_timer_elapsed32(siri_timer_buffer) > 500) { - siri_timer_buffer = 0; - unregister_code(KC_LGUI); - unregister_code(KC_SPACE); - } - -#ifdef FACTORY_RESET_TASK - FACTORY_RESET_TASK(); -#endif - - matrix_scan_user(); -} - -#ifdef KC_BLUETOOTH_ENABLE -static void ckbt51_param_init(void) { - /* Set bluetooth device name */ - ckbt51_set_local_name(PRODUCT); - /* Set bluetooth parameters */ - module_param_t param = {.event_mode = 0x02, - .connected_idle_timeout = 7200, - .pairing_timeout = 180, - .pairing_mode = 0, - .reconnect_timeout = 5, - .report_rate = 90, - .vendor_id_source = 1, - .verndor_id = 0, // Must be 0x3434 - .product_id = PRODUCT_ID}; - ckbt51_set_param(¶m); -} - -void bluetooth_enter_disconnected_kb(uint8_t host_idx) { - if (bt_factory_reset) { - ckbt51_param_init(); - factory_timer_buffer = timer_read32(); - } - /* CKBT51 bluetooth module boot time is slower, it enters disconnected after boot, - so we place initialization here. */ - if (firstDisconnect && sync_timer_read32() < 1000 && get_transport() == TRANSPORT_BLUETOOTH) { - ckbt51_param_init(); - bluetooth_connect(); - firstDisconnect = false; - } -} - -void ckbt51_default_ack_handler(uint8_t *data, uint8_t len) { - if (data[1] == 0x45) { - module_param_t param = {.event_mode = 0x02, - .connected_idle_timeout = 7200, - .pairing_timeout = 180, - .pairing_mode = 0, - .reconnect_timeout = 5, - .report_rate = 90, - .vendor_id_source = 1, - .verndor_id = 0, // Must be 0x3434 - .product_id = PRODUCT_ID}; - ckbt51_set_param(¶m); - } -} - -void bluetooth_pre_task(void) { - static uint8_t mode = 1; - - if (readPin(USB_BT_MODE_SELECT_PIN) != mode) { - if (readPin(USB_BT_MODE_SELECT_PIN) != mode) { - mode = readPin(USB_BT_MODE_SELECT_PIN); - set_transport(mode == 0 ? TRANSPORT_BLUETOOTH : TRANSPORT_USB); - } - } -} -#endif // KC_BLUETOOTH_ENABLE - -void battery_calculte_voltage(uint16_t value) { - uint16_t voltage = ((uint32_t)value) * 2246 / 1000; - -#ifdef LED_MATRIX_ENABLE - if (led_matrix_is_enabled()) { - uint32_t totalBuf = 0; - - for (uint8_t i = 0; i < DRIVER_COUNT; i++) - for (uint8_t j = 0; j < 192; j++) - totalBuf += g_pwm_buffer[i][j]; - /* We assumpt it is linear relationship*/ - voltage += (30 * totalBuf / LED_MATRIX_LED_COUNT / 255); - } -#endif - -#ifdef RGB_MATRIX_ENABLE - if (rgb_matrix_is_enabled()) { - uint32_t totalBuf = 0; - - for (uint8_t i = 0; i < DRIVER_COUNT; i++) - for (uint8_t j = 0; j < 192; j++) - totalBuf += g_pwm_buffer[i][j]; - /* We assumpt it is linear relationship*/ - uint32_t compensation = 60 * totalBuf / RGB_MATRIX_LED_COUNT / 255 / 3; - voltage += compensation; - } -#endif - battery_set_voltage(voltage); -} - -bool via_command_kb(uint8_t *data, uint8_t length) { - switch (data[0]) { -#ifdef KC_BLUETOOTH_ENABLE - case 0xAA: - ckbt51_dfu_rx(data, length); - break; -#endif -#ifdef ENABLE_FACTORY_TEST - case 0xAB: - factory_test_rx(data, length); - break; -#endif - default: - return false; - } - - return true; -} - -#if !defined(VIA_ENABLE) -void raw_hid_receive(uint8_t *data, uint8_t length) { - switch (data[0]) { - case RAW_HID_CMD: - via_command_kb(data, length); - break; - } -} -#endif diff --git a/keyboards/keychron/q3_pro/q3_pro.h b/keyboards/keychron/q3_pro/q3_pro.h deleted file mode 100644 index 0e15df4e45..0000000000 --- a/keyboards/keychron/q3_pro/q3_pro.h +++ /dev/null @@ -1,53 +0,0 @@ -/* 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 . - */ - -#pragma once - -#include "quantum.h" -#ifdef VIA_ENABLE -# include "via.h" -#endif - -#ifdef VIA_ENABLE -# define USER_START QK_KB_0 -#else -# define USER_START SAFE_RANGE -#endif - -// clang-format off -enum { - KC_LOPTN = USER_START, - KC_ROPTN, - KC_LCMMD, - KC_RCMMD, - KC_TASK, - KC_FILE, - KC_SNAP, - KC_CTANA, - KC_SIRI, -#ifdef KC_BLUETOOTH_ENABLE - BT_HST1, - BT_HST2, - BT_HST3, - BAT_LVL, -#else - BT_HST1 = KC_TRNS, - BT_HST2 = KC_TRNS, - BT_HST3 = KC_TRNS, - BAT_LVL = KC_TRNS, -#endif - NEW_SAFE_RANGE -}; diff --git a/keyboards/keychron/q3_pro/readme.md b/keyboards/keychron/q3_pro/readme.md deleted file mode 100644 index cf9aa82765..0000000000 --- a/keyboards/keychron/q3_pro/readme.md +++ /dev/null @@ -1,25 +0,0 @@ -# Keychron Q3 Pro - -![Keychron Q3 Pro](https://i.imgur.com/wTueyKr.jpg) - -A customizable 80% TKL keyboard. - -* Keyboard Maintainer: [Keychron](https://github.com/keychron) -* Hardware Supported: Keychron Q3 Pro -* Hardware Availability: [Keychron Q3 Pro QMK/VIA Wireless Custom Mechanical Keyboard](https://www.keychron.com/products/keychron-q3-pro-qmk-via-wireless-custom-mechanical-keyboard) - -Make example for this keyboard (after setting up your build environment): - - make keychron/q3_pro/ansi_encoder_se:default - make keychron/q3_pro/iso_encoder_se:default - make keychron/q3_pro/ansi_encoder:default - -Flashing example for this keyboard: - - make keychron/q3_pro/ansi_encoder_se:default:flash - make keychron/q3_pro/iso_encoder_se:default:flash - make keychron/q3_pro/ansi_encoder:default:flash - -**Reset Key**: Connect the USB cable, toggle mode switch to "Off", hold down the *Esc* key or reset button underneath space bar, then toggle then switch to "Cable". - -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). diff --git a/keyboards/keychron/q3_pro/rules.mk b/keyboards/keychron/q3_pro/rules.mk deleted file mode 100644 index 9f710c1714..0000000000 --- a/keyboards/keychron/q3_pro/rules.mk +++ /dev/null @@ -1,5 +0,0 @@ -# Enter lower-power sleep mode when on the ChibiOS idle thread -OPT_DEFS += -DCORTEX_ENABLE_WFI_IDLE=TRUE -OPT_DEFS += -DNO_USB_STARTUP_CHECK -DENABLE_FACTORY_TEST - -include keyboards/keychron/bluetooth/bluetooth.mk diff --git a/keyboards/keychron/q3_pro/via_json/q3_pro_ansi_encoder_v1.json b/keyboards/keychron/q3_pro/via_json/q3_pro_ansi_encoder_v1.json deleted file mode 100644 index a5d132506f..0000000000 --- a/keyboards/keychron/q3_pro/via_json/q3_pro_ansi_encoder_v1.json +++ /dev/null @@ -1,332 +0,0 @@ -{ - "name": "Keychron Q3 Pro", - "vendorId": "0x3434", - "productId": "0x0630", - "keycodes": ["qmk_lighting"], - "menus": [ - { - "label": "Lighting", - "content": [ - { - "label": "Backlight", - "content": [ - { - "label": "Brightness", - "type": "range", - "options": [0, 255], - "content": ["id_qmk_rgb_matrix_brightness", 3, 1] - }, - { - "label": "Effect", - "type": "dropdown", - "content": ["id_qmk_rgb_matrix_effect", 3, 2], - "options": [ - ["None", 0], - ["Solid Color", 1], - ["Breathing", 2], - ["Band Spiral Val", 3], - ["Cycle All", 4], - ["Cycle Left Right", 5], - ["Cycle Up Down", 6], - ["Rainbow Moving Chevron", 7], - ["Cycle Out In", 8], - ["Cycle Out In Dual", 9], - ["Cycle Pinwheel", 10], - ["Cycle Spiral", 11], - ["Dual Beacon", 12], - ["Rainbow Beacon", 13], - ["Jellybean Raindrops", 14], - ["Pixel Rain", 15], - ["Typing Heatmap", 16], - ["Digital Rain", 17], - ["Reactive Simple", 18], - ["Reactive Multiwide", 19], - ["Reactive Multinexus", 20], - ["Splash", 21], - ["Solid Splash", 22] - ] - }, - { - "showIf": "{id_qmk_rgb_matrix_effect} > 1", - "label": "Effect Speed", - "type": "range", - "options": [0, 255], - "content": ["id_qmk_rgb_matrix_effect_speed", 3, 3] - }, - { - "showIf": "{id_qmk_rgb_matrix_effect} != 0 && ( {id_qmk_rgb_matrix_effect} < 4 || {id_qmk_rgb_matrix_effect} == 18 || ({id_qmk_rgb_matrix_effect} > 17 && {id_qmk_rgb_matrix_effect} != 21) ) ", - "label": "Color", - "type": "color", - "content": ["id_qmk_rgb_matrix_color", 3, 4] - } - ] - } - ] - } - ], - "customKeycodes": [ - {"name": "Left Option", "title": "Left Option", "shortName": "LOpt"}, - {"name": "Right Option", "title": "Right Option", "shortName": "ROpt"}, - {"name": "Left Cmd", "title": "Left Command", "shortName": "LCmd"}, - {"name": "Right Cmd", "title": "Right Command", "shortName": "RCmd"}, - {"name": "Misson Control", "title": "Misson Control, availabe in macOS", "shortName": "MCtrl"}, - {"name": "Launch pad", "title": "Launch pad, availabe in macOS", "shortName": "LPad"}, - {"name": "Task View", "title": "Task View in Windows", "shortName": "Task"}, - {"name": "File Explorer", "title": "File Explorer in Windows", "shortName": "File"}, - {"name": "Screen shot", "title": "Screenshot in macOS", "shortName": "SShot"}, - {"name": "Cortana", "title": "Cortana in Windows", "shortName": "Cortana"}, - {"name": "Siri", "title": "Siri in macOS", "shortName": "Siri"}, - {"name": "Bluetooth Host 1", "title": "Bluetooth Host 1", "shortName": "BTH1"}, - {"name": "Bluetooth Host 2", "title": "Bluetooth Host 2", "shortName": "BTH2"}, - {"name": "Bluetooth Host 3", "title": "Bluetooth Host 3", "shortName": "BTH3"}, - {"name": "Battery Level", "title": "Show battery level", "shortName": "Batt"} - ], - "matrix": {"rows": 6, "cols": 18}, - "layouts": { - "keymap": [ - [ - { - "x": 1.25, - "c": "#777777" - }, - "0,1\nESC", - { - "x": 1, - "c": "#cccccc" - }, - "0,2", - "0,3", - "0,4", - "0,5", - { - "x": 0.5, - "c": "#aaaaaa" - }, - "0,6", - "0,7", - "0,8", - "0,9", - { - "x": 0.5, - "c": "#cccccc" - }, - "0,10", - "0,11", - "0,12", - "0,13", - { - "x": 0.25, - "c": "#aaaaaa" - }, - "0,14", - "0,15", - "0,16" - ], - [ - { - "y": -0.75, - "c": "#cccccc" - }, - "0,0\n\n\n\n\n\n\n\n\ne0" - ], - [ - { - "x": 1.25, - "c": "#aaaaaa" - }, - "1,0", - { - "c": "#cccccc" - }, - "1,1", - "1,2", - "1,3", - "1,4", - "1,5", - "1,6", - "1,7", - "1,8", - "1,9", - "1,10", - "1,11", - "1,12", - { - "c": "#aaaaaa", - "w": 2 - }, - "1,13", - { - "x": 0.25 - }, - "1,14", - "1,15", - "1,16" - ], - [ - { - "y": -0.75, - "c": "#cccccc" - }, - "1,17" - ], - [ - { - "y": -0.25, - "x": 1.25, - "c": "#aaaaaa", - "w": 1.5 - }, - "2,0", - { - "c": "#cccccc" - }, - "2,1", - "2,2", - "2,3", - "2,4", - "2,5", - "2,6", - "2,7", - "2,8", - "2,9", - "2,10", - "2,11", - "2,12", - { - "c": "#aaaaaa", - "w": 1.5 - }, - "2,13", - { - "x": 0.25 - }, - "2,14", - "2,15", - "2,16" - ], - [ - { - "y": -0.5, - "c": "#cccccc" - }, - "3,17" - ], - [ - { - "y": -0.5, - "x": 1.25, - "c": "#aaaaaa", - "w": 1.75 - }, - "3,0", - { - "c": "#cccccc" - }, - "3,1", - "3,2", - "3,3", - "3,4", - "3,5", - "3,6", - "3,7", - "3,8", - "3,9", - "3,10", - "3,11", - { - "c": "#777777", - "w": 2.25 - }, - "3,13" - ], - [ - { - "y": -0.25, - "c": "#cccccc" - }, - "4,17" - ], - [ - { - "y": -0.75, - "x": 1.25, - "c": "#aaaaaa", - "w": 2.25 - }, - "4,0", - { - "c": "#cccccc" - }, - "4,2", - "4,3", - "4,4", - "4,5", - "4,6", - "4,7", - "4,8", - "4,9", - "4,10", - "4,11", - { - "c": "#aaaaaa", - "w": 2.75 - }, - "4,13", - { - "x": 1.25, - "c": "#777777" - }, - "4,15" - ], - [ - { - "c": "#cccccc" - }, - "5,17", - { - "x": 0.25, - "c": "#aaaaaa", - "w": 1.25 - }, - "5,0", - { - "w": 1.25 - }, - "5,1", - { - "w": 1.25 - }, - "5,2", - { - "c": "#cccccc", - "w": 6.25 - }, - "5,6", - { - "c": "#aaaaaa", - "w": 1.25 - }, - "5,10", - { - "w": 1.25 - }, - "5,11", - { - "w": 1.25 - }, - "5,12", - { - "w": 1.25 - }, - "5,13", - { - "x": 0.25, - "c": "#777777" - }, - "5,14", - "5,15", - "5,16" - ] - ] - } -} diff --git a/keyboards/keychron/q3_pro/via_json/q3_pro_ansi_encoder_v2.json b/keyboards/keychron/q3_pro/via_json/q3_pro_ansi_encoder_v2.json deleted file mode 100644 index 8c735bbabe..0000000000 --- a/keyboards/keychron/q3_pro/via_json/q3_pro_ansi_encoder_v2.json +++ /dev/null @@ -1,291 +0,0 @@ -{ - "name": "Keychron Q3 Pro ANSI Knob", - "vendorId": "0x3434", - "productId": "0x0633", - "keycodes": ["qmk_lighting"], - "menus": [ - { - "label": "Lighting", - "content": [ - { - "label": "Backlight", - "content": [ - { - "label": "Brightness", - "type": "range", - "options": [0, 255], - "content": ["id_qmk_rgb_matrix_brightness", 3, 1] - }, - { - "label": "Effect", - "type": "dropdown", - "content": ["id_qmk_rgb_matrix_effect", 3, 2], - "options": [ - ["None", 0], - ["Solid Color", 1], - ["Breathing", 2], - ["Band Spiral Val", 3], - ["Cycle All", 4], - ["Cycle Left Right", 5], - ["Cycle Up Down", 6], - ["Rainbow Moving Chevron", 7], - ["Cycle Out In", 8], - ["Cycle Out In Dual", 9], - ["Cycle Pinwheel", 10], - ["Cycle Spiral", 11], - ["Dual Beacon", 12], - ["Rainbow Beacon", 13], - ["Jellybean Raindrops", 14], - ["Pixel Rain", 15], - ["Typing Heatmap", 16], - ["Digital Rain", 17], - ["Reactive Simple", 18], - ["Reactive Multiwide", 19], - ["Reactive Multinexus", 20], - ["Splash", 21], - ["Solid Splash", 22] - ] - }, - { - "showIf": "{id_qmk_rgb_matrix_effect} > 1", - "label": "Effect Speed", - "type": "range", - "options": [0, 255], - "content": ["id_qmk_rgb_matrix_effect_speed", 3, 3] - }, - { - "showIf": "{id_qmk_rgb_matrix_effect} != 0 && ( {id_qmk_rgb_matrix_effect} < 4 || {id_qmk_rgb_matrix_effect} == 18 || ({id_qmk_rgb_matrix_effect} > 17 && {id_qmk_rgb_matrix_effect} != 21) ) ", - "label": "Color", - "type": "color", - "content": ["id_qmk_rgb_matrix_color", 3, 4] - } - ] - } - ] - } - ], - "customKeycodes": [ - {"name": "Left Option", "title": "Left Option", "shortName": "LOpt"}, - {"name": "Right Option", "title": "Right Option", "shortName": "ROpt"}, - {"name": "Left Cmd", "title": "Left Command", "shortName": "LCmd"}, - {"name": "Right Cmd", "title": "Right Command", "shortName": "RCmd"}, - {"name": "Task View", "title": "Task View in Windows", "shortName": "Task"}, - {"name": "File Explorer", "title": "File Explorer in Windows", "shortName": "File"}, - {"name": "Screen shot", "title": "Screenshot in macOS", "shortName": "SShot"}, - {"name": "Cortana", "title": "Cortana in Windows", "shortName": "Cortana"}, - {"name": "Siri", "title": "Siri in macOS", "shortName": "Siri"}, - {"name": "Bluetooth Host 1", "title": "Bluetooth Host 1", "shortName": "BTH1"}, - {"name": "Bluetooth Host 2", "title": "Bluetooth Host 2", "shortName": "BTH2"}, - {"name": "Bluetooth Host 3", "title": "Bluetooth Host 3", "shortName": "BTH3"}, - {"name": "Battery Level", "title": "Show battery level", "shortName": "Batt"} - ], - "matrix": {"rows": 6, "cols": 16}, - "layouts": { - "keymap": [ - [ - { - "c": "#777777" - }, - "0,0\nESC", - { - "x": 0.25, - "c": "#cccccc" - }, - "0,1", - "0,2", - "0,3", - "0,4", - { - "x": 0.25, - "c": "#aaaaaa" - }, - "0,5", - "0,6", - "0,7", - "0,8", - { - "x": 0.25, - "c": "#cccccc" - }, - "0,9", - "0,10", - "0,11", - "0,12", - { - "x": 0.25 - }, - "0,13\n\n\n\n\n\n\n\n\ne0", - { - "x": 0.25, - "c": "#aaaaaa" - }, - "0,14", - "0,15", - "3,12" - ], - [ - { - "y": 0.25 - }, - "1,0", - { - "c": "#cccccc" - }, - "1,1", - "1,2", - "1,3", - "1,4", - "1,5", - "1,6", - "1,7", - "1,8", - "1,9", - "1,10", - "1,11", - "1,12", - { - "c": "#aaaaaa", - "w": 2 - }, - "1,13", - { - "x": 0.25 - }, - "1,14", - "1,15", - "3,14" - ], - [ - { - "w": 1.5 - }, - "2,0", - { - "c": "#cccccc" - }, - "2,1", - "2,2", - "2,3", - "2,4", - "2,5", - "2,6", - "2,7", - "2,8", - "2,9", - "2,10", - "2,11", - "2,12", - { - "c": "#aaaaaa", - "w": 1.5 - }, - "2,13", - { - "x": 0.25 - }, - "2,14", - "2,15", - "3,15" - ], - [ - { - "w": 1.75 - }, - "3,0", - { - "c": "#cccccc" - }, - "3,1", - "3,2", - "3,3", - "3,4", - "3,5", - "3,6", - "3,7", - "3,8", - "3,9", - "3,10", - "3,11", - { - "c": "#777777", - "w": 2.25 - }, - "3,13" - ], - [ - { - "c": "#aaaaaa", - "w": 2.25 - }, - "4,0", - { - "c": "#cccccc" - }, - "4,2", - "4,3", - "4,4", - "4,5", - "4,6", - "4,7", - "4,8", - "4,9", - "4,10", - "4,11", - { - "c": "#aaaaaa", - "w": 2.75 - }, - "4,13", - { - "x": 1.25, - "c": "#777777" - }, - "4,15" - ], - [ - { - "c": "#aaaaaa", - "w": 1.25 - }, - "5,0", - { - "w": 1.25 - }, - "5,1", - { - "w": 1.25 - }, - "5,2", - { - "c": "#cccccc", - "w": 6.25 - }, - "5,6", - { - "c": "#aaaaaa", - "w": 1.25 - }, - "5,10", - { - "w": 1.25 - }, - "5,11", - { - "w": 1.25 - }, - "5,12", - { - "w": 1.25 - }, - "5,13", - { - "x": 0.25, - "c": "#777777" - }, - "5,14", - "5,15", - "4,14" - ] - ] - } -} diff --git a/keyboards/keychron/q3_pro/via_json/q3_pro_iso_encoder_v1.json b/keyboards/keychron/q3_pro/via_json/q3_pro_iso_encoder_v1.json deleted file mode 100644 index 93dc333e0a..0000000000 --- a/keyboards/keychron/q3_pro/via_json/q3_pro_iso_encoder_v1.json +++ /dev/null @@ -1,337 +0,0 @@ -{ - "name": "Keychron Q3 Pro ISO Knob", - "vendorId": "0x3434", - "productId": "0x0631", - "keycodes": ["qmk_lighting"], - "menus": [ - { - "label": "Lighting", - "content": [ - { - "label": "Backlight", - "content": [ - { - "label": "Brightness", - "type": "range", - "options": [0, 255], - "content": ["id_qmk_rgb_matrix_brightness", 3, 1] - }, - { - "label": "Effect", - "type": "dropdown", - "content": ["id_qmk_rgb_matrix_effect", 3, 2], - "options": [ - ["None", 0], - ["Solid Color", 1], - ["Breathing", 2], - ["Band Spiral Val", 3], - ["Cycle All", 4], - ["Cycle Left Right", 5], - ["Cycle Up Down", 6], - ["Rainbow Moving Chevron", 7], - ["Cycle Out In", 8], - ["Cycle Out In Dual", 9], - ["Cycle Pinwheel", 10], - ["Cycle Spiral", 11], - ["Dual Beacon", 12], - ["Rainbow Beacon", 13], - ["Jellybean Raindrops", 14], - ["Pixel Rain", 15], - ["Typing Heatmap", 16], - ["Digital Rain", 17], - ["Reactive Simple", 18], - ["Reactive Multiwide", 19], - ["Reactive Multinexus", 20], - ["Splash", 21], - ["Solid Splash", 22] - ] - }, - { - "showIf": "{id_qmk_rgb_matrix_effect} > 1", - "label": "Effect Speed", - "type": "range", - "options": [0, 255], - "content": ["id_qmk_rgb_matrix_effect_speed", 3, 3] - }, - { - "showIf": "{id_qmk_rgb_matrix_effect} != 0 && ( {id_qmk_rgb_matrix_effect} < 4 || {id_qmk_rgb_matrix_effect} == 18 || ({id_qmk_rgb_matrix_effect} > 17 && {id_qmk_rgb_matrix_effect} != 21) ) ", - "label": "Color", - "type": "color", - "content": ["id_qmk_rgb_matrix_color", 3, 4] - } - ] - } - ] - } - ], - "customKeycodes": [ - {"name": "Left Option", "title": "Left Option", "shortName": "LOpt"}, - {"name": "Right Option", "title": "Right Option", "shortName": "ROpt"}, - {"name": "Left Cmd", "title": "Left Command", "shortName": "LCmd"}, - {"name": "Right Cmd", "title": "Right Command", "shortName": "RCmd"}, - {"name": "Misson Control", "title": "Misson Control, availabe in macOS", "shortName": "MCtrl"}, - {"name": "Launch pad", "title": "Launch pad, availabe in macOS", "shortName": "LPad"}, - {"name": "Task View", "title": "Task View in Windows", "shortName": "Task"}, - {"name": "File Explorer", "title": "File Explorer in Windows", "shortName": "File"}, - {"name": "Screen shot", "title": "Screenshot in macOS", "shortName": "SShot"}, - {"name": "Cortana", "title": "Cortana in Windows", "shortName": "Cortana"}, - {"name": "Siri", "title": "Siri in macOS", "shortName": "Siri"}, - {"name": "Bluetooth Host 1", "title": "Bluetooth Host 1", "shortName": "BTH1"}, - {"name": "Bluetooth Host 2", "title": "Bluetooth Host 2", "shortName": "BTH2"}, - {"name": "Bluetooth Host 3", "title": "Bluetooth Host 3", "shortName": "BTH3"}, - {"name": "Battery Level", "title": "Show battery level", "shortName": "Batt"} - ], - "matrix": {"rows": 6, "cols": 18}, - "layouts": { - "keymap": [ - [ - { - "x": 1.25, - "c": "#777777" - }, - "0,1\nESC", - { - "x": 1, - "c": "#cccccc" - }, - "0,2", - "0,3", - "0,4", - "0,5", - { - "x": 0.5, - "c": "#aaaaaa" - }, - "0,6", - "0,7", - "0,8", - "0,9", - { - "x": 0.5, - "c": "#cccccc" - }, - "0,10", - "0,11", - "0,12", - "0,13", - { - "x": 0.25, - "c": "#aaaaaa" - }, - "0,14", - "0,15", - "0,16" - ], - [ - { - "y": -0.75, - "c": "#cccccc" - }, - "0,0\n\n\n\n\n\n\n\n\ne0" - ], - [ - { - "x": 1.25, - "c": "#aaaaaa" - }, - "1,0", - { - "c": "#cccccc" - }, - "1,1", - "1,2", - "1,3", - "1,4", - "1,5", - "1,6", - "1,7", - "1,8", - "1,9", - "1,10", - "1,11", - "1,12", - { - "c": "#aaaaaa", - "w": 2 - }, - "1,13", - { - "x": 0.25 - }, - "1,14", - "1,15", - "1,16" - ], - [ - { - "y": -0.75, - "c": "#cccccc" - }, - "1,17" - ], - [ - { - "y": -0.25, - "x": 1.25, - "c": "#aaaaaa", - "w": 1.5 - }, - "2,0", - { - "c": "#cccccc" - }, - "2,1", - "2,2", - "2,3", - "2,4", - "2,5", - "2,6", - "2,7", - "2,8", - "2,9", - "2,10", - "2,11", - "2,12", - { - "x": 0.25, - "c": "#aaaaaa", - "w": 1.25, - "h": 2, - "w2": 1.5, - "h2": 1, - "x2": -0.25 - }, - "2,13", - { - "x": 0.25 - }, - "2,14", - "2,15", - "2,16" - ], - [ - { - "y": -0.5, - "c": "#cccccc" - }, - "3,17" - ], - [ - { - "y": -0.5, - "x": 1.25, - "c": "#aaaaaa", - "w": 1.75 - }, - "3,0", - { - "c": "#cccccc" - }, - "3,1", - "3,2", - "3,3", - "3,4", - "3,5", - "3,6", - "3,7", - "3,8", - "3,9", - "3,10", - "3,11", - { - "c": "#aaaaaa" - }, - "3,13" - ], - [ - { - "y": -0.25, - "c": "#cccccc" - }, - "4,17" - ], - [ - { - "y": -0.75, - "x": 1.25, - "c": "#aaaaaa", - "w": 1.25 - }, - "4,0", - "4,1", - { - "c": "#cccccc" - }, - "4,2", - "4,3", - "4,4", - "4,5", - "4,6", - "4,7", - "4,8", - "4,9", - "4,10", - "4,11", - { - "c": "#aaaaaa", - "w": 2.75 - }, - "4,13", - { - "x": 1.25, - "c": "#777777" - }, - "4,15" - ], - [ - { - "c": "#cccccc" - }, - "5,17", - { - "x": 0.25, - "c": "#aaaaaa", - "w": 1.25 - }, - "5,0", - { - "w": 1.25 - }, - "5,1", - { - "w": 1.25 - }, - "5,2", - { - "c": "#cccccc", - "w": 6.25 - }, - "5,6", - { - "c": "#aaaaaa", - "w": 1.25 - }, - "5,10", - { - "w": 1.25 - }, - "5,11", - { - "w": 1.25 - }, - "5,12", - { - "w": 1.25 - }, - "5,13", - { - "x": 0.25, - "c": "#777777" - }, - "5,14", - "5,15", - "5,16" - ] - ] - } -} diff --git a/keyboards/keychron/q4_pro/ansi/ansi.c b/keyboards/keychron/q4_pro/ansi/ansi.c deleted file mode 100644 index c97de2e781..0000000000 --- a/keyboards/keychron/q4_pro/ansi/ansi.c +++ /dev/null @@ -1,94 +0,0 @@ -/* 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 . - */ - -#include "quantum.h" - -// clang-format off -#ifdef RGB_MATRIX_ENABLE -const snled27351_led_t g_snled27351_leds[RGB_MATRIX_LED_COUNT] = { -/* Refer to snled27351manual for these locations - * driver - * | R location - * | | G location - * | | | B location - * | | | | */ - {0, F_16, D_16, E_16}, - {0, F_15, D_15, E_15}, - {0, F_14, D_14, E_14}, - {0, F_13, D_13, E_13}, - {0, F_12, D_12, E_12}, - {0, F_11, D_11, E_11}, - {0, F_10, D_10, E_10}, - {0, F_9, D_9, E_9}, - {0, F_8, D_8, E_8}, - {0, F_7, D_7, E_7}, - {0, F_6, D_6, E_6}, - {0, F_5, D_5, E_5}, - {0, F_4, D_4, E_4}, - {0, F_3, D_3, E_3}, - - {0, I_16, G_16, H_16}, - {0, I_15, G_15, H_15}, - {0, I_14, G_14, H_14}, - {0, I_13, G_13, H_13}, - {0, I_12, G_12, H_12}, - {0, I_11, G_11, H_11}, - {0, I_10, G_10, H_10}, - {0, I_9, G_9, H_9}, - {0, I_8, G_8, H_8}, - {0, I_7, G_7, H_7}, - {0, I_6, G_6, H_6}, - {0, I_5, G_5, H_5}, - {0, I_4, G_4, H_4}, - {0, I_3, G_3, H_3}, - - {0, C_16, A_16, B_16}, - {0, C_15, A_15, B_15}, - {0, C_14, A_14, B_14}, - {0, C_13, A_13, B_13}, - {0, C_12, A_12, B_12}, - {0, C_11, A_11, B_11}, - {0, C_10, A_10, B_10}, - {0, C_9, A_9, B_9}, - {0, C_8, A_8, B_8}, - {0, C_7, A_7, B_7}, - {0, C_6, A_6, B_6}, - {0, C_5, A_5, B_5}, - {0, C_3, A_3, B_3}, - - {0, L_16, J_16, K_16}, - {0, L_14, J_14, K_14}, - {0, L_13, J_13, K_13}, - {0, L_12, J_12, K_12}, - {0, L_11, J_11, K_11}, - {0, L_10, J_10, K_10}, - {0, L_9, J_9, K_9}, - {0, L_8, J_8, K_8}, - {0, L_7, J_7, K_7}, - {0, L_6, J_6, K_6}, - {0, L_5, J_5, K_5}, - {0, L_3, J_3, K_3}, - - {0, C_2, A_2, B_2}, - {0, C_1, A_1, B_1}, - {0, L_2, J_2, K_2}, - {0, L_1, J_1, K_1}, - {0, F_2, D_2, E_2}, - {0, F_1, D_1, E_1}, - {0, I_2, G_2, H_2}, - {0, I_1, G_1, H_1} -}; -#endif diff --git a/keyboards/keychron/q4_pro/ansi/config.h b/keyboards/keychron/q4_pro/ansi/config.h deleted file mode 100644 index b7cad24d03..0000000000 --- a/keyboards/keychron/q4_pro/ansi/config.h +++ /dev/null @@ -1,43 +0,0 @@ -/* 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 . - */ - -#pragma once - -#ifdef RGB_MATRIX_ENABLE -/* RGB Matrix Driver Configuration */ -# define DRIVER_COUNT 1 -# define DRIVER_ADDR_1 0b1110100 -# define RGB_MATRIX_LED_COUNT 61 - -/* Set to infinit, which is use in USB mode by default */ -# define RGB_MATRIX_TIMEOUT RGB_MATRIX_TIMEOUT_INFINITE - -/* Allow to shutdown driver to save power */ -# define RGB_MATRIX_DRIVER_SHUTDOWN_ENABLE - -/* Turn off backllit if brightness value is low */ -# define RGB_MATRIX_BRIGHTNESS_TURN_OFF_VAL 48 - -# define CAPS_LOCK_INDEX 28 // Caps Lock -# define LOW_BAT_IND_INDEX 56 // Space - -# define RGB_MATRIX_KEYPRESSES -# define RGB_MATRIX_FRAMEBUFFER_EFFECTS - -/* Set LED driver current */ -# define SNLED27351_CURRENT_TUNE \ - { 0x50, 0x50, 0x50, 0x50, 0x50, 0x50, 0x50, 0x50, 0x50, 0x50, 0x50, 0x50 } -#endif diff --git a/keyboards/keychron/q4_pro/ansi/info.json b/keyboards/keychron/q4_pro/ansi/info.json deleted file mode 100644 index 20d56df565..0000000000 --- a/keyboards/keychron/q4_pro/ansi/info.json +++ /dev/null @@ -1,146 +0,0 @@ -{ - "usb": { - "pid": "0x0640", - "device_version": "1.0.1" - }, - "layouts": { - "LAYOUT_61_ansi": { - "layout": [ - {"matrix":[0,0], "x":0, "y":0}, - {"matrix":[0,1], "x":1, "y":0}, - {"matrix":[0,2], "x":2, "y":0}, - {"matrix":[0,3], "x":3, "y":0}, - {"matrix":[0,4], "x":4, "y":0}, - {"matrix":[0,5], "x":5, "y":0}, - {"matrix":[0,6], "x":6, "y":0}, - {"matrix":[0,7], "x":7, "y":0}, - {"matrix":[0,8], "x":8, "y":0}, - {"matrix":[0,9], "x":9, "y":0}, - {"matrix":[0,10], "x":10, "y":0}, - {"matrix":[0,11], "x":11, "y":0}, - {"matrix":[0,12], "x":12, "y":0}, - {"matrix":[0,13], "x":13, "y":0, "w":2}, - - {"matrix":[1,0], "x":0, "y":1, "w":1.5}, - {"matrix":[1,1], "x":1.5, "y":1}, - {"matrix":[1,2], "x":2.5, "y":1}, - {"matrix":[1,3], "x":3.5, "y":1}, - {"matrix":[1,4], "x":4.5, "y":1}, - {"matrix":[1,5], "x":5.5, "y":1}, - {"matrix":[1,6], "x":6.5, "y":1}, - {"matrix":[1,7], "x":7.5, "y":1}, - {"matrix":[1,8], "x":8.5, "y":1}, - {"matrix":[1,9], "x":9.5, "y":1}, - {"matrix":[1,10], "x":10.5, "y":1}, - {"matrix":[1,11], "x":11.5, "y":1}, - {"matrix":[1,12], "x":12.5, "y":1}, - {"matrix":[1,13], "x":13.5, "y":1, "w":1.5}, - - {"matrix":[2,0], "x":0, "y":2, "w":1.75}, - {"matrix":[2,1], "x":1.75, "y":2}, - {"matrix":[2,2], "x":2.75, "y":2}, - {"matrix":[2,3], "x":3.75, "y":2}, - {"matrix":[2,4], "x":4.75, "y":2}, - {"matrix":[2,5], "x":5.75, "y":2}, - {"matrix":[2,6], "x":6.75, "y":2}, - {"matrix":[2,7], "x":7.75, "y":2}, - {"matrix":[2,8], "x":8.75, "y":2}, - {"matrix":[2,9], "x":9.75, "y":2}, - {"matrix":[2,10], "x":10.75, "y":2}, - {"matrix":[2,11], "x":11.75, "y":2}, - {"matrix":[2,13], "x":12.75, "y":2, "w":2.25}, - - {"matrix":[3,0], "x":0, "y":3, "w":2.25}, - {"matrix":[3,2], "x":2.25, "y":3}, - {"matrix":[3,3], "x":3.25, "y":3}, - {"matrix":[3,4], "x":4.25, "y":3}, - {"matrix":[3,5], "x":5.25, "y":3}, - {"matrix":[3,6], "x":6.25, "y":3}, - {"matrix":[3,7], "x":7.25, "y":3}, - {"matrix":[3,8], "x":8.25, "y":3}, - {"matrix":[3,9], "x":9.25, "y":3}, - {"matrix":[3,10], "x":10.25, "y":3}, - {"matrix":[3,11], "x":11.25, "y":3}, - {"matrix":[3,13], "x":12.25, "y":3, "w":2.75}, - - {"matrix":[4,0], "x":0, "y":4, "w":1.24}, - {"matrix":[4,1], "x":1.24, "y":4, "w":1.25}, - {"matrix":[4,2], "x":2.49, "y":4, "w":1.25}, - {"matrix":[4,6], "x":3.74, "y":4, "w":6.25}, - {"matrix":[4,10], "x":9.99, "y":4, "w":1.25}, - {"matrix":[4,11], "x":11.24, "y":4, "w":1.25}, - {"matrix":[4,12], "x":12.49, "y":4, "w":1.25}, - {"matrix":[4,13], "x":13.74, "y":4, "w":1.25} - ] - } - }, - "rgb_matrix": { - "layout": [ - {"matrix":[0, 0], "flags":1, "x":0, "y":0}, - {"matrix":[0, 1], "flags":4, "x":16, "y":0}, - {"matrix":[0, 2], "flags":4, "x":32, "y":0}, - {"matrix":[0, 3], "flags":4, "x":48, "y":0}, - {"matrix":[0, 4], "flags":4, "x":63, "y":0}, - {"matrix":[0, 5], "flags":4, "x":81, "y":0}, - {"matrix":[0, 6], "flags":4, "x":97, "y":0}, - {"matrix":[0, 7], "flags":4, "x":113, "y":0}, - {"matrix":[0, 8], "flags":4, "x":129, "y":0}, - {"matrix":[0, 9], "flags":4, "x":145, "y":0}, - {"matrix":[0, 10], "flags":4, "x":161, "y":0}, - {"matrix":[0, 11], "flags":4, "x":177, "y":0}, - {"matrix":[0, 12], "flags":4, "x":193, "y":0}, - {"matrix":[0, 13], "flags":1, "x":218, "y":0}, - - {"matrix":[1, 0], "flags":1, "x":4, "y":16}, - {"matrix":[1, 1], "flags":8, "x":24, "y":16}, - {"matrix":[1, 2], "flags":8, "x":40, "y":16}, - {"matrix":[1, 3], "flags":8, "x":56, "y":16}, - {"matrix":[1, 4], "flags":4, "x":73, "y":16}, - {"matrix":[1, 5], "flags":4, "x":89, "y":16}, - {"matrix":[1, 6], "flags":4, "x":105, "y":16}, - {"matrix":[1, 7], "flags":4, "x":121, "y":16}, - {"matrix":[1, 8], "flags":4, "x":137, "y":16}, - {"matrix":[1, 9], "flags":4, "x":153, "y":16}, - {"matrix":[1, 10], "flags":4, "x":169, "y":16}, - {"matrix":[1, 11], "flags":4, "x":185, "y":16}, - {"matrix":[1, 12], "flags":4, "x":202, "y":16}, - {"matrix":[1, 13], "flags":1, "x":222, "y":27}, - - {"matrix":[2, 0], "flags":8, "x":6, "y":32}, - {"matrix":[2, 1], "flags":4, "x":28, "y":32}, - {"matrix":[2, 2], "flags":4, "x":44, "y":32}, - {"matrix":[2, 3], "flags":4, "x":60, "y":32}, - {"matrix":[2, 4], "flags":4, "x":77, "y":32}, - {"matrix":[2, 5], "flags":4, "x":93, "y":32}, - {"matrix":[2, 6], "flags":4, "x":109, "y":32}, - {"matrix":[2, 7], "flags":4, "x":125, "y":32}, - {"matrix":[2, 8], "flags":4, "x":141, "y":32}, - {"matrix":[2, 9], "flags":4, "x":157, "y":32}, - {"matrix":[2, 10], "flags":4, "x":173, "y":32}, - {"matrix":[2, 11], "flags":4, "x":189, "y":32}, - {"matrix":[2, 13], "flags":1, "x":216, "y":32}, - - {"matrix":[3, 0], "flags":1, "x":10, "y":48}, - {"matrix":[3, 2], "flags":4, "x":36, "y":48}, - {"matrix":[3, 3], "flags":4, "x":52, "y":48}, - {"matrix":[3, 4], "flags":4, "x":69, "y":48}, - {"matrix":[3, 5], "flags":4, "x":85, "y":48}, - {"matrix":[3, 6], "flags":4, "x":101, "y":48}, - {"matrix":[3, 7], "flags":4, "x":117, "y":48}, - {"matrix":[3, 8], "flags":4, "x":133, "y":48}, - {"matrix":[3, 9], "flags":4, "x":149, "y":48}, - {"matrix":[3, 10], "flags":4, "x":165, "y":48}, - {"matrix":[3, 11], "flags":4, "x":181, "y":48}, - {"matrix":[3, 13], "flags":1, "x":212, "y":48}, - - {"matrix":[4, 0], "flags":1, "x":2, "y":64}, - {"matrix":[4, 1], "flags":1, "x":22, "y":64}, - {"matrix":[4, 2], "flags":1, "x":42, "y":64}, - {"matrix":[4, 6], "flags":4, "x":103, "y":64}, - {"matrix":[4, 10], "flags":1, "x":164, "y":64}, - {"matrix":[4, 11], "flags":1, "x":184, "y":64}, - {"matrix":[4, 12], "flags":1, "x":204, "y":64}, - {"matrix":[4, 13], "flags":1, "x":224, "y":64} - ] - } -} diff --git a/keyboards/keychron/q4_pro/ansi/keymaps/default/keymap.c b/keyboards/keychron/q4_pro/ansi/keymaps/default/keymap.c deleted file mode 100644 index aedc0ac50d..0000000000 --- a/keyboards/keychron/q4_pro/ansi/keymaps/default/keymap.c +++ /dev/null @@ -1,63 +0,0 @@ -/* 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 . - */ - -#include QMK_KEYBOARD_H - -// clang-format off -enum layers{ - MAC_BASE, - WIN_BASE, - MAC_FN, - WIN_FN, - FN1, -}; - -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_61_ansi( - 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_LCTL, KC_LOPTN, KC_LCMMD, KC_SPC, KC_RCMMD,MO(MAC_FN),MO(FN1), KC_RCTL), - - [WIN_BASE] = LAYOUT_61_ansi( - 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_LCTL, KC_LWIN, KC_LALT, KC_SPC, KC_RALT, MO(WIN_FN),MO(FN1), KC_RCTL), - - [MAC_FN] = LAYOUT_61_ansi( - KC_GRV, KC_BRID, KC_BRIU, KC_MCTL, KC_LPAD, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, KC_INS, KC_PGUP, KC_HOME, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, KC_UP, KC_SNAP, KC_PGDN, KC_END, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, NK_TOGG, KC_LEFT, KC_DOWN, KC_RIGHT, KC_DEL, _______, - _______, _______, _______, _______, _______, _______, _______, _______), - - [WIN_FN] = LAYOUT_61_ansi( - KC_GRV, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, KC_APP, KC_SCRL, KC_INS, KC_PGUP, KC_HOME, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, KC_UP, KC_PSCR, KC_PGDN, KC_END, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, NK_TOGG, KC_LEFT, KC_DOWN, KC_RIGHT, KC_DEL, _______, - _______, _______, _______, _______, _______, _______, _______, _______), - - [FN1] = LAYOUT_61_ansi( - KC_TILD, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______), -}; diff --git a/keyboards/keychron/q4_pro/ansi/keymaps/via/keymap.c b/keyboards/keychron/q4_pro/ansi/keymaps/via/keymap.c deleted file mode 100644 index aedc0ac50d..0000000000 --- a/keyboards/keychron/q4_pro/ansi/keymaps/via/keymap.c +++ /dev/null @@ -1,63 +0,0 @@ -/* 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 . - */ - -#include QMK_KEYBOARD_H - -// clang-format off -enum layers{ - MAC_BASE, - WIN_BASE, - MAC_FN, - WIN_FN, - FN1, -}; - -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_61_ansi( - 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_LCTL, KC_LOPTN, KC_LCMMD, KC_SPC, KC_RCMMD,MO(MAC_FN),MO(FN1), KC_RCTL), - - [WIN_BASE] = LAYOUT_61_ansi( - 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_LCTL, KC_LWIN, KC_LALT, KC_SPC, KC_RALT, MO(WIN_FN),MO(FN1), KC_RCTL), - - [MAC_FN] = LAYOUT_61_ansi( - KC_GRV, KC_BRID, KC_BRIU, KC_MCTL, KC_LPAD, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, KC_INS, KC_PGUP, KC_HOME, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, KC_UP, KC_SNAP, KC_PGDN, KC_END, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, NK_TOGG, KC_LEFT, KC_DOWN, KC_RIGHT, KC_DEL, _______, - _______, _______, _______, _______, _______, _______, _______, _______), - - [WIN_FN] = LAYOUT_61_ansi( - KC_GRV, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, KC_APP, KC_SCRL, KC_INS, KC_PGUP, KC_HOME, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, KC_UP, KC_PSCR, KC_PGDN, KC_END, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, NK_TOGG, KC_LEFT, KC_DOWN, KC_RIGHT, KC_DEL, _______, - _______, _______, _______, _______, _______, _______, _______, _______), - - [FN1] = LAYOUT_61_ansi( - KC_TILD, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______), -}; diff --git a/keyboards/keychron/q4_pro/ansi/keymaps/via/rules.mk b/keyboards/keychron/q4_pro/ansi/keymaps/via/rules.mk deleted file mode 100644 index 4eae6e776c..0000000000 --- a/keyboards/keychron/q4_pro/ansi/keymaps/via/rules.mk +++ /dev/null @@ -1,2 +0,0 @@ -VIA_ENABLE = yes -OPT_DEFS += -DDYNAMIC_KEYMAP_LAYER_COUNT=5 diff --git a/keyboards/keychron/q4_pro/ansi/rules.mk b/keyboards/keychron/q4_pro/ansi/rules.mk deleted file mode 100644 index 6e7633bfe0..0000000000 --- a/keyboards/keychron/q4_pro/ansi/rules.mk +++ /dev/null @@ -1 +0,0 @@ -# This file intentionally left blank diff --git a/keyboards/keychron/q4_pro/config.h b/keyboards/keychron/q4_pro/config.h deleted file mode 100644 index cb0b79445c..0000000000 --- a/keyboards/keychron/q4_pro/config.h +++ /dev/null @@ -1,84 +0,0 @@ -/* 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 . - */ - -#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 WEAR_LEVELING_LOGICAL_SIZE 2048 -#define WEAR_LEVELING_BACKING_SIZE (WEAR_LEVELING_LOGICAL_SIZE * 2) -#define DYNAMIC_KEYMAP_EEPROM_MAX_ADDR 2047 - -/* HC595 Driver configuration */ -#define HC595_END_INDEX 13 - -/* Factory test keys */ -#define FN_KEY1 MO(4) diff --git a/keyboards/keychron/q4_pro/halconf.h b/keyboards/keychron/q4_pro/halconf.h deleted file mode 100644 index 8d8e138e4e..0000000000 --- a/keyboards/keychron/q4_pro/halconf.h +++ /dev/null @@ -1,29 +0,0 @@ -/* Copyright 2023 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 _CHIBIOS_HAL_CONF_VER_8_0_ - -#define HAL_USE_I2C TRUE - -#ifdef KC_BLUETOOTH_ENABLE -# define PAL_USE_CALLBACKS TRUE -# define HAL_USE_SERIAL TRUE -# define HAL_USE_RTC TRUE -#endif - -#include_next diff --git a/keyboards/keychron/q4_pro/info.json b/keyboards/keychron/q4_pro/info.json deleted file mode 100644 index 8f74e372d5..0000000000 --- a/keyboards/keychron/q4_pro/info.json +++ /dev/null @@ -1,55 +0,0 @@ -{ - "keyboard_name": "Keychron Q4 Pro", - "manufacturer": "Keychron", - "url": "https://github.com/Keychron", - "maintainer": "lalalademaxiya1", - "processor": "STM32L432", - "bootloader": "stm32-dfu", - "usb": { - "vid": "0x3434" - }, - "features": { - "bootmagic": true, - "command": false, - "console": false, - "dip_switch": true, - "extrakey": true, - "mousekey": true, - "nkro": true, - "rgb_matrix": true, - "raw": true - }, - "rgb_matrix": { - "driver": "snled27351", - "animations": { - "breathing": true, - "band_spiral_val": true, - "cycle_all": true, - "cycle_left_right": true, - "cycle_up_down": true, - "rainbow_moving_chevron": true, - "cycle_out_in": true, - "cycle_out_in_dual": true, - "cycle_pinwheel": true, - "cycle_spiral": true, - "dual_beacon": true, - "rainbow_beacon": true, - "jellybean_raindrops": true, - "pixel_rain": true, - "typing_heatmap": true, - "digital_rain": true, - "solid_reactive_simple": true, - "solid_reactive_multiwide": true, - "solid_reactive_multinexus": true, - "splash": true, - "solid_splash": true - } - }, - "matrix_pins": { - "cols": [null, null, null, null, null, null, null, null, null, null, null, null, null, null], - "rows": ["B4", "B3", "A15", "A14", "A13"], - "custom": true, - "custom_lite": true - }, - "diode_direction": "ROW2COL" -} diff --git a/keyboards/keychron/q4_pro/iso/config.h b/keyboards/keychron/q4_pro/iso/config.h deleted file mode 100644 index e59f73774d..0000000000 --- a/keyboards/keychron/q4_pro/iso/config.h +++ /dev/null @@ -1,45 +0,0 @@ -/* 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 . - */ - -#pragma once - -#ifdef RGB_MATRIX_ENABLE -/* RGB Matrix Driver Configuration */ -# define DRIVER_COUNT 1 -# define DRIVER_ADDR_1 0b1110100 -# define DRIVER_1_LED_TOTAL 62 -# define RGB_MATRIX_LED_COUNT DRIVER_1_LED_TOTAL - -/* Set to infinit, which is use in USB mode by default */ -# define RGB_MATRIX_TIMEOUT RGB_MATRIX_TIMEOUT_INFINITE - -/* Allow to shutdown driver to save power */ -# define RGB_MATRIX_DRIVER_SHUTDOWN_ENABLE - -/* Turn off backllit if brightness value is low */ -# define RGB_MATRIX_BRIGHTNESS_TURN_OFF_VAL 48 - -/* Indication led */ -# define CAPS_LOCK_INDEX 27 // Caps Lock -# define LOW_BAT_IND_INDEX 57 // Space - -# define RGB_MATRIX_KEYPRESSES -# define RGB_MATRIX_FRAMEBUFFER_EFFECTS - -/* Set LED driver current */ -# define SNLED27351_CURRENT_TUNE \ - { 0x50, 0x50, 0x50, 0x50, 0x50, 0x50, 0x50, 0x50, 0x50, 0x50, 0x50, 0x50 } -#endif diff --git a/keyboards/keychron/q4_pro/iso/info.json b/keyboards/keychron/q4_pro/iso/info.json deleted file mode 100644 index 640ca71cab..0000000000 --- a/keyboards/keychron/q4_pro/iso/info.json +++ /dev/null @@ -1,172 +0,0 @@ -{ - "usb": { - "pid": "0x0641", - "device_version": "1.0.0" - }, - "layouts": { - "LAYOUT_62_iso": { - "layout": [ - {"matrix":[0,0], "x":0, "y":0}, - {"matrix":[0,1], "x":1, "y":0}, - {"matrix":[0,2], "x":2, "y":0}, - {"matrix":[0,3], "x":3, "y":0}, - {"matrix":[0,4], "x":4, "y":0}, - {"matrix":[0,5], "x":5, "y":0}, - {"matrix":[0,6], "x":6, "y":0}, - {"matrix":[0,7], "x":7, "y":0}, - {"matrix":[0,8], "x":8, "y":0}, - {"matrix":[0,9], "x":9, "y":0}, - {"matrix":[0,10], "x":10, "y":0}, - {"matrix":[0,11], "x":11, "y":0}, - {"matrix":[0,12], "x":12, "y":0}, - {"matrix":[0,13], "x":13, "y":0, "w":2}, - - {"matrix":[1,0], "x":0, "y":1, "w":1.5}, - {"matrix":[1,1], "x":1.5, "y":1}, - {"matrix":[1,2], "x":2.5, "y":1}, - {"matrix":[1,3], "x":3.5, "y":1}, - {"matrix":[1,4], "x":4.5, "y":1}, - {"matrix":[1,5], "x":5.5, "y":1}, - {"matrix":[1,6], "x":6.5, "y":1}, - {"matrix":[1,7], "x":7.5, "y":1}, - {"matrix":[1,8], "x":8.5, "y":1}, - {"matrix":[1,9], "x":9.5, "y":1}, - {"matrix":[1,10], "x":10.5, "y":1}, - {"matrix":[1,11], "x":11.5, "y":1}, - {"matrix":[1,12], "x":12.5, "y":1}, - - {"matrix":[2,0], "x":0, "y":2, "w":1.75}, - {"matrix":[2,1], "x":1.75, "y":2}, - {"matrix":[2,2], "x":2.75, "y":2}, - {"matrix":[2,3], "x":3.75, "y":2}, - {"matrix":[2,4], "x":4.75, "y":2}, - {"matrix":[2,5], "x":5.75, "y":2}, - {"matrix":[2,6], "x":6.75, "y":2}, - {"matrix":[2,7], "x":7.75, "y":2}, - {"matrix":[2,8], "x":8.75, "y":2}, - {"matrix":[2,9], "x":9.75, "y":2}, - {"matrix":[2,10], "x":10.75, "y":2}, - {"matrix":[2,11], "x":11.75, "y":2}, - {"matrix":[2,13], "x":12.75, "y":2}, - {"matrix":[1,13], "x":13.75, "y":1, "w":1.25, "h":2}, - - {"matrix":[3,0], "x":0, "y":3, "w":1.25}, - {"matrix":[3,1], "x":1.25, "y":3}, - {"matrix":[3,2], "x":2.25, "y":3}, - {"matrix":[3,3], "x":3.25, "y":3}, - {"matrix":[3,4], "x":4.25, "y":3}, - {"matrix":[3,5], "x":5.25, "y":3}, - {"matrix":[3,6], "x":6.25, "y":3}, - {"matrix":[3,7], "x":7.25, "y":3}, - {"matrix":[3,8], "x":8.25, "y":3}, - {"matrix":[3,9], "x":9.25, "y":3}, - {"matrix":[3,10], "x":10.25, "y":3}, - {"matrix":[3,11], "x":11.25, "y":3}, - {"matrix":[3,13], "x":12.25, "y":3, "w":2.75}, - - {"matrix":[4,0], "x":0, "y":4, "w":1.24}, - {"matrix":[4,1], "x":1.24, "y":4, "w":1.25}, - {"matrix":[4,2], "x":2.49, "y":4, "w":1.25}, - {"matrix":[4,6], "x":3.74, "y":4, "w":6.25}, - {"matrix":[4,10], "x":9.99, "y":4, "w":1.25}, - {"matrix":[4,11], "x":11.24, "y":4, "w":1.25}, - {"matrix":[4,12], "x":12.49, "y":4, "w":1.25}, - {"matrix":[4,13], "x":13.74, "y":4, "w":1.25} - ] - } - }, - "rgb_matrix": { - "driver": "snled27351", - "animations": { - "breathing": true, - "band_spiral_val": true, - "cycle_all": true, - "cycle_left_right": true, - "cycle_up_down": true, - "rainbow_moving_chevron": true, - "cycle_out_in": true, - "cycle_out_in_dual": true, - "cycle_pinwheel": true, - "cycle_spiral": true, - "dual_beacon": true, - "rainbow_beacon": true, - "jellybean_raindrops": true, - "pixel_rain": true, - "typing_heatmap": true, - "digital_rain": true, - "solid_reactive_simple": true, - "solid_reactive_multiwide": true, - "solid_reactive_multinexus": true, - "splash": true, - "solid_splash": true - }, - "layout": [ - {"matrix":[0, 0], "flags":1, "x":0, "y":0}, - {"matrix":[0, 1], "flags":4, "x":16, "y":0}, - {"matrix":[0, 2], "flags":4, "x":32, "y":0}, - {"matrix":[0, 3], "flags":4, "x":48, "y":0}, - {"matrix":[0, 4], "flags":4, "x":63, "y":0}, - {"matrix":[0, 5], "flags":4, "x":79, "y":0}, - {"matrix":[0, 6], "flags":4, "x":95, "y":0}, - {"matrix":[0, 7], "flags":4, "x":111, "y":0}, - {"matrix":[0, 8], "flags":4, "x":127, "y":0}, - {"matrix":[0, 9], "flags":4, "x":143, "y":0}, - {"matrix":[0, 10], "flags":4, "x":159, "y":0}, - {"matrix":[0, 11], "flags":4, "x":175, "y":0}, - {"matrix":[0, 12], "flags":4, "x":190, "y":0}, - {"matrix":[0, 13], "flags":1, "x":214, "y":0}, - - {"matrix":[1, 0], "flags":1, "x":4, "y":16}, - {"matrix":[1, 1], "flags":8, "x":24, "y":16}, - {"matrix":[1, 2], "flags":8, "x":40, "y":16}, - {"matrix":[1, 3], "flags":8, "x":56, "y":16}, - {"matrix":[1, 4], "flags":4, "x":71, "y":16}, - {"matrix":[1, 5], "flags":4, "x":87, "y":16}, - {"matrix":[1, 6], "flags":4, "x":103, "y":16}, - {"matrix":[1, 7], "flags":4, "x":119, "y":16}, - {"matrix":[1, 8], "flags":4, "x":135, "y":16}, - {"matrix":[1, 9], "flags":4, "x":151, "y":16}, - {"matrix":[1, 10], "flags":4, "x":167, "y":16}, - {"matrix":[1, 11], "flags":4, "x":183, "y":16}, - {"matrix":[1, 12], "flags":4, "x":198, "y":16}, - - {"matrix":[2, 0], "flags":8, "x":6, "y":32}, - {"matrix":[2, 1], "flags":4, "x":28, "y":32}, - {"matrix":[2, 2], "flags":4, "x":44, "y":32}, - {"matrix":[2, 3], "flags":4, "x":60, "y":32}, - {"matrix":[2, 4], "flags":4, "x":75, "y":32}, - {"matrix":[2, 5], "flags":4, "x":91, "y":32}, - {"matrix":[2, 6], "flags":4, "x":107, "y":32}, - {"matrix":[2, 7], "flags":4, "x":123, "y":32}, - {"matrix":[2, 8], "flags":4, "x":139, "y":32}, - {"matrix":[2, 9], "flags":4, "x":155, "y":32}, - {"matrix":[2, 10], "flags":4, "x":171, "y":32}, - {"matrix":[2, 11], "flags":4, "x":186, "y":32}, - {"matrix":[2, 13], "flags":1, "x":202, "y":32}, - {"matrix":[1, 13], "flags":1, "x":224, "y":27}, - - {"matrix":[3, 0], "flags":1, "x":2, "y":48}, - {"matrix":[3, 1], "flags":1, "x":20, "y":48}, - {"matrix":[3, 2], "flags":4, "x":36, "y":48}, - {"matrix":[3, 3], "flags":4, "x":52, "y":48}, - {"matrix":[3, 4], "flags":4, "x":67, "y":48}, - {"matrix":[3, 5], "flags":4, "x":83, "y":48}, - {"matrix":[3, 6], "flags":4, "x":99, "y":48}, - {"matrix":[3, 7], "flags":4, "x":115, "y":48}, - {"matrix":[3, 8], "flags":4, "x":131, "y":48}, - {"matrix":[3, 9], "flags":4, "x":147, "y":48}, - {"matrix":[3, 10], "flags":4, "x":163, "y":48}, - {"matrix":[3, 11], "flags":4, "x":179, "y":48}, - {"matrix":[3, 13], "flags":1, "x":208, "y":48}, - - {"matrix":[4, 0], "flags":1, "x":2, "y":64}, - {"matrix":[4, 1], "flags":1, "x":22, "y":64}, - {"matrix":[4, 2], "flags":1, "x":42, "y":64}, - {"matrix":[4, 6], "flags":4, "x":101, "y":64}, - {"matrix":[4, 10], "flags":1, "x":161, "y":64}, - {"matrix":[4, 11], "flags":1, "x":181, "y":64}, - {"matrix":[4, 12], "flags":1, "x":200, "y":64}, - {"matrix":[4, 13], "flags":1, "x":220, "y":64} - ] - } -} diff --git a/keyboards/keychron/q4_pro/iso/iso.c b/keyboards/keychron/q4_pro/iso/iso.c deleted file mode 100644 index a670c0deeb..0000000000 --- a/keyboards/keychron/q4_pro/iso/iso.c +++ /dev/null @@ -1,95 +0,0 @@ -/* 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 . - */ - -#include "quantum.h" - -// clang-format off -#ifdef RGB_MATRIX_ENABLE -const snled27351_led_t g_snled27351_leds[RGB_MATRIX_LED_COUNT] = { -/* Refer to snled27351manual for these locations - * driver - * | R location - * | | G location - * | | | B location - * | | | | */ - {0, F_16, D_16, E_16}, - {0, F_15, D_15, E_15}, - {0, F_14, D_14, E_14}, - {0, F_13, D_13, E_13}, - {0, F_12, D_12, E_12}, - {0, F_11, D_11, E_11}, - {0, F_10, D_10, E_10}, - {0, F_9, D_9, E_9}, - {0, F_8, D_8, E_8}, - {0, F_7, D_7, E_7}, - {0, F_6, D_6, E_6}, - {0, F_5, D_5, E_5}, - {0, F_4, D_4, E_4}, - {0, F_3, D_3, E_3}, - - {0, I_16, G_16, H_16}, - {0, I_15, G_15, H_15}, - {0, I_14, G_14, H_14}, - {0, I_13, G_13, H_13}, - {0, I_12, G_12, H_12}, - {0, I_11, G_11, H_11}, - {0, I_10, G_10, H_10}, - {0, I_9, G_9, H_9}, - {0, I_8, G_8, H_8}, - {0, I_7, G_7, H_7}, - {0, I_6, G_6, H_6}, - {0, I_5, G_5, H_5}, - {0, I_4, G_4, H_4}, - - {0, C_16, A_16, B_16}, - {0, C_15, A_15, B_15}, - {0, C_14, A_14, B_14}, - {0, C_13, A_13, B_13}, - {0, C_12, A_12, B_12}, - {0, C_11, A_11, B_11}, - {0, C_10, A_10, B_10}, - {0, C_9, A_9, B_9}, - {0, C_8, A_8, B_8}, - {0, C_7, A_7, B_7}, - {0, C_6, A_6, B_6}, - {0, C_5, A_5, B_5}, - {0, C_3, A_3, B_3}, - {0, I_3, G_3, H_3}, - - {0, L_16, J_16, K_16}, - {0, L_15, J_15, K_15}, - {0, L_14, J_14, K_14}, - {0, L_13, J_13, K_13}, - {0, L_12, J_12, K_12}, - {0, L_11, J_11, K_11}, - {0, L_10, J_10, K_10}, - {0, L_9, J_9, K_9}, - {0, L_8, J_8, K_8}, - {0, L_7, J_7, K_7}, - {0, L_6, J_6, K_6}, - {0, L_5, J_5, K_5}, - {0, L_3, J_3, K_3}, - - {0, C_2, A_2, B_2}, - {0, C_1, A_1, B_1}, - {0, L_2, J_2, K_2}, - {0, L_1, J_1, K_1}, - {0, F_2, D_2, E_2}, - {0, F_1, D_1, E_1}, - {0, I_2, G_2, H_2}, - {0, I_1, G_1, H_1} -}; -#endif diff --git a/keyboards/keychron/q4_pro/iso/keymaps/default/keymap.c b/keyboards/keychron/q4_pro/iso/keymaps/default/keymap.c deleted file mode 100644 index 1519bd61e3..0000000000 --- a/keyboards/keychron/q4_pro/iso/keymaps/default/keymap.c +++ /dev/null @@ -1,63 +0,0 @@ -/* 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 . - */ - -#include QMK_KEYBOARD_H - -// clang-format off -enum layers{ - MAC_BASE, - WIN_BASE, - MAC_FN, - WIN_FN, - FN1, -}; - -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_62_iso( - 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_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_NUHS, KC_ENT, - KC_LSFT, KC_NUBS, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, - KC_LCTL, KC_LOPTN, KC_LCMMD, KC_SPC, KC_RCMMD,MO(MAC_FN),MO(FN1), KC_RCTL), - - [WIN_BASE] = LAYOUT_62_iso( - 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_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_NUHS, KC_ENT, - KC_LSFT, KC_NUBS, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, - KC_LCTL, KC_LWIN, KC_LALT, KC_SPC, KC_RALT, MO(WIN_FN),MO(FN1), KC_RCTL), - - [MAC_FN] = LAYOUT_62_iso( - KC_GRV, KC_BRID, KC_BRIU, KC_MCTL, KC_LPAD, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, KC_INS, KC_PGUP, KC_HOME, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, KC_UP, KC_SNAP, KC_PGDN, KC_END, _______, _______, - _______, _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, NK_TOGG, KC_LEFT, KC_DOWN, KC_RIGHT, KC_DEL, _______, - _______, _______, _______, _______, _______, _______, _______, _______), - - [WIN_FN] = LAYOUT_62_iso( - KC_GRV, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, KC_APP, KC_SCRL, KC_INS, KC_PGUP, KC_HOME, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, KC_UP, KC_PSCR, KC_PGDN, KC_END, _______, _______, - _______, _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, NK_TOGG, KC_LEFT, KC_DOWN, KC_RIGHT, KC_DEL, _______, - _______, _______, _______, _______, _______, _______, _______, _______), - - [FN1] = LAYOUT_62_iso( - KC_TILD, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, BAT_LVL, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______), -}; diff --git a/keyboards/keychron/q4_pro/iso/keymaps/via/keymap.c b/keyboards/keychron/q4_pro/iso/keymaps/via/keymap.c deleted file mode 100644 index 1519bd61e3..0000000000 --- a/keyboards/keychron/q4_pro/iso/keymaps/via/keymap.c +++ /dev/null @@ -1,63 +0,0 @@ -/* 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 . - */ - -#include QMK_KEYBOARD_H - -// clang-format off -enum layers{ - MAC_BASE, - WIN_BASE, - MAC_FN, - WIN_FN, - FN1, -}; - -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_62_iso( - 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_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_NUHS, KC_ENT, - KC_LSFT, KC_NUBS, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, - KC_LCTL, KC_LOPTN, KC_LCMMD, KC_SPC, KC_RCMMD,MO(MAC_FN),MO(FN1), KC_RCTL), - - [WIN_BASE] = LAYOUT_62_iso( - 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_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_NUHS, KC_ENT, - KC_LSFT, KC_NUBS, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, - KC_LCTL, KC_LWIN, KC_LALT, KC_SPC, KC_RALT, MO(WIN_FN),MO(FN1), KC_RCTL), - - [MAC_FN] = LAYOUT_62_iso( - KC_GRV, KC_BRID, KC_BRIU, KC_MCTL, KC_LPAD, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, KC_INS, KC_PGUP, KC_HOME, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, KC_UP, KC_SNAP, KC_PGDN, KC_END, _______, _______, - _______, _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, NK_TOGG, KC_LEFT, KC_DOWN, KC_RIGHT, KC_DEL, _______, - _______, _______, _______, _______, _______, _______, _______, _______), - - [WIN_FN] = LAYOUT_62_iso( - KC_GRV, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, KC_APP, KC_SCRL, KC_INS, KC_PGUP, KC_HOME, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, KC_UP, KC_PSCR, KC_PGDN, KC_END, _______, _______, - _______, _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, NK_TOGG, KC_LEFT, KC_DOWN, KC_RIGHT, KC_DEL, _______, - _______, _______, _______, _______, _______, _______, _______, _______), - - [FN1] = LAYOUT_62_iso( - KC_TILD, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, BAT_LVL, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______), -}; diff --git a/keyboards/keychron/q4_pro/iso/keymaps/via/rules.mk b/keyboards/keychron/q4_pro/iso/keymaps/via/rules.mk deleted file mode 100644 index 4eae6e776c..0000000000 --- a/keyboards/keychron/q4_pro/iso/keymaps/via/rules.mk +++ /dev/null @@ -1,2 +0,0 @@ -VIA_ENABLE = yes -OPT_DEFS += -DDYNAMIC_KEYMAP_LAYER_COUNT=5 diff --git a/keyboards/keychron/q4_pro/iso/rules.mk b/keyboards/keychron/q4_pro/iso/rules.mk deleted file mode 100644 index 6e7633bfe0..0000000000 --- a/keyboards/keychron/q4_pro/iso/rules.mk +++ /dev/null @@ -1 +0,0 @@ -# This file intentionally left blank diff --git a/keyboards/keychron/q4_pro/mcuconf.h b/keyboards/keychron/q4_pro/mcuconf.h deleted file mode 100644 index b33ceb18b2..0000000000 --- a/keyboards/keychron/q4_pro/mcuconf.h +++ /dev/null @@ -1,41 +0,0 @@ -/* Copyright 2023 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 . - */ - -/* - * This file was auto-generated by: - * `qmk chibios-confmigrate -i keyboards/acheron/arctic/mcuconf.h -r platforms/chibios/GENERIC_STM32_F072XB/configs/mcuconf.h` - */ - -#pragma once - -#include_next - -/* Set HCLK to 48 MHz as tradeoff of USB lowest clockand and - * lower power comsumption for bluetooth. Will use dynamic - * clock when STM32L4 is supported in ChibiOS */ -#undef STM32_PLLM_VALUE -#define STM32_PLLM_VALUE 2 - -#undef STM32_PLLN_VALUE -#define STM32_PLLN_VALUE 12 - -#undef STM32_I2C_USE_I2C1 -#define STM32_I2C_USE_I2C1 TRUE - -#ifdef KC_BLUETOOTH_ENABLE -# undef STM32_SERIAL_USE_USART2 -# define STM32_SERIAL_USE_USART2 TRUE -#endif diff --git a/keyboards/keychron/q4_pro/q4_pro.c b/keyboards/keychron/q4_pro/q4_pro.c deleted file mode 100644 index 066dfa876e..0000000000 --- a/keyboards/keychron/q4_pro/q4_pro.c +++ /dev/null @@ -1,298 +0,0 @@ -/* 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 . - */ - -#include "q4_pro.h" -#ifdef KC_BLUETOOTH_ENABLE -# include "ckbt51.h" -# include "bluetooth.h" -# include "indicator.h" -# include "transport.h" -# include "battery.h" -# include "bat_level_animation.h" -# include "lpm.h" -#endif - -#ifdef ENABLE_FACTORY_TEST -# include "factory_test.h" -#endif - -typedef struct PACKED { - uint8_t len; - uint8_t keycode[3]; -} key_combination_t; - -static uint32_t factory_timer_buffer = 0; -static uint32_t siri_timer_buffer = 0; -static uint8_t mac_keycode[4] = {KC_LOPT, KC_ROPT, KC_LCMD, KC_RCMD}; - -key_combination_t key_comb_list[4] = { - {2, {KC_LWIN, KC_TAB}}, // Task (win) - {2, {KC_LWIN, KC_E}}, // Files (win) - {3, {KC_LSFT, KC_LGUI, KC_4}}, // Snapshot (mac) - {2, {KC_LWIN, KC_C}} // Cortana (win) -}; - -#ifdef KC_BLUETOOTH_ENABLE -bool firstDisconnect = true; -bool bt_factory_reset = false; -static virtual_timer_t pairing_key_timer; -extern uint8_t g_pwm_buffer[DRIVER_COUNT][192]; - -static void pairing_key_timer_cb(void *arg) { - bluetooth_pairing_ex(*(uint8_t *)arg, NULL); -} -#endif - -bool dip_switch_update_kb(uint8_t index, bool active) { - if (index == 0) { -#ifdef INVERT_OS_SWITCH_STATE - default_layer_set(1UL << (!active ? 1 : 0)); -#else - default_layer_set(1UL << (active ? 1 : 0)); -#endif - } - dip_switch_update_user(index, active); - - return true; -} - -#ifdef KC_BLUETOOTH_ENABLE -bool process_record_kb_bt(uint16_t keycode, keyrecord_t *record) { -#else -bool process_record_kb(uint16_t keycode, keyrecord_t *record) { -#endif - static uint8_t host_idx = 0; - - switch (keycode) { - case KC_LOPTN: - case KC_ROPTN: - case KC_LCMMD: - case KC_RCMMD: - if (record->event.pressed) { - register_code(mac_keycode[keycode - KC_LOPTN]); - } else { - unregister_code(mac_keycode[keycode - KC_LOPTN]); - } - return false; // Skip all further processing of this key) - case KC_TASK: - case KC_FILE: - case KC_SNAP: - case KC_CTANA: - if (record->event.pressed) { - for (uint8_t i = 0; i < key_comb_list[keycode - KC_TASK].len; i++) - register_code(key_comb_list[keycode - KC_TASK].keycode[i]); - } else { - for (uint8_t i = 0; i < key_comb_list[keycode - KC_TASK].len; i++) - unregister_code(key_comb_list[keycode - KC_TASK].keycode[i]); - } - return false; // Skip all further processing of this key - case KC_SIRI: - if (record->event.pressed && siri_timer_buffer == 0) { - register_code(KC_LGUI); - register_code(KC_SPACE); - siri_timer_buffer = sync_timer_read32() == 0 ? 1 : sync_timer_read32(); - } - return false; // Skip all further processing of this key -#ifdef KC_BLUETOOTH_ENABLE - case BT_HST1 ... BT_HST3: - if (get_transport() == TRANSPORT_BLUETOOTH) { - if (record->event.pressed) { - host_idx = keycode - BT_HST1 + 1; - chVTSet(&pairing_key_timer, TIME_MS2I(2000), (vtfunc_t)pairing_key_timer_cb, &host_idx); - bluetooth_connect_ex(host_idx, 0); - } else { - host_idx = 0; - chVTReset(&pairing_key_timer); - } - } - break; - case BAT_LVL: - if (get_transport() == TRANSPORT_BLUETOOTH && !usb_power_connected()) { - bat_level_animiation_start(battery_get_percentage()); - } - break; -#endif - default: -#ifdef FACTORY_RESET_CHECK - FACTORY_RESET_CHECK(keycode, record); -#endif - break; - } - return true; -} - -void keyboard_post_init_kb(void) { - dip_switch_read(true); - -#ifdef KC_BLUETOOTH_ENABLE - /* Currently we don't use this reset pin */ - // palSetLineMode(CKBT51_RESET_PIN, PAL_MODE_UNCONNECTED); - palSetLineMode(CKBT51_RESET_PIN, PAL_MODE_OUTPUT_PUSHPULL); - palWriteLine(CKBT51_RESET_PIN, PAL_HIGH); - - /* IMPORTANT: DO NOT enable internal pull-up resistor - * as there is an external pull-down resistor. - */ - palSetLineMode(USB_BT_MODE_SELECT_PIN, PAL_MODE_INPUT); - - ckbt51_init(false); - bluetooth_init(); -#endif - - keyboard_post_init_user(); -} - -void matrix_scan_kb(void) { - if (factory_timer_buffer && timer_elapsed32(factory_timer_buffer) > 2000) { - factory_timer_buffer = 0; - if (bt_factory_reset) { - bt_factory_reset = false; - palWriteLine(CKBT51_RESET_PIN, PAL_LOW); - wait_ms(5); - palWriteLine(CKBT51_RESET_PIN, PAL_HIGH); - } - } - - if (siri_timer_buffer && sync_timer_elapsed32(siri_timer_buffer) > 500) { - siri_timer_buffer = 0; - unregister_code(KC_LGUI); - unregister_code(KC_SPACE); - } - -#ifdef FACTORY_RESET_TASK - FACTORY_RESET_TASK(); -#endif - matrix_scan_user(); -} - -#ifdef KC_BLUETOOTH_ENABLE -static void ckbt51_param_init(void) { - /* Set bluetooth device name */ - // ckbt51_set_local_name(STR(PRODUCT)); - ckbt51_set_local_name(PRODUCT); - wait_ms(10); - /* Set bluetooth parameters */ - module_param_t param = {.event_mode = 0x02, - .connected_idle_timeout = 7200, - .pairing_timeout = 180, - .pairing_mode = 0, - .reconnect_timeout = 5, - .report_rate = 90, - .vendor_id_source = 1, - .verndor_id = 0, // Must be 0x3434 - .product_id = PRODUCT_ID}; - ckbt51_set_param(¶m); - wait_ms(10); -} - -void bluetooth_enter_disconnected_kb(uint8_t host_idx) { - if (bt_factory_reset) { - ckbt51_param_init(); - factory_timer_buffer = timer_read32(); - } - /* CKBT51 bluetooth module boot time is slower, it enters disconnected after boot, - so we place initialization here. */ - if (firstDisconnect && sync_timer_read32() < 1000 && get_transport() == TRANSPORT_BLUETOOTH) { - ckbt51_param_init(); - bluetooth_connect(); - firstDisconnect = false; - } -} - -void ckbt51_default_ack_handler(uint8_t *data, uint8_t len) { - if (data[1] == 0x45) { - module_param_t param = {.event_mode = 0x02, - .connected_idle_timeout = 7200, - .pairing_timeout = 180, - .pairing_mode = 0, - .reconnect_timeout = 5, - .report_rate = 90, - .vendor_id_source = 1, - .verndor_id = 0, // Must be 0x3434 - .product_id = PRODUCT_ID}; - ckbt51_set_param(¶m); - } -} - -void bluetooth_pre_task(void) { - static uint8_t mode = 1; - - if (readPin(USB_BT_MODE_SELECT_PIN) != mode) { - if (readPin(USB_BT_MODE_SELECT_PIN) != mode) { - mode = readPin(USB_BT_MODE_SELECT_PIN); - set_transport(mode == 0 ? TRANSPORT_BLUETOOTH : TRANSPORT_USB); - } - } -} -#endif - -void battery_calculte_voltage(uint16_t value) { - uint16_t voltage = ((uint32_t)value) * 2246 / 1000; - -#ifdef LED_MATRIX_ENABLE - if (led_matrix_is_enabled()) { - uint32_t totalBuf = 0; - - for (uint8_t i = 0; i < DRIVER_COUNT; i++) - for (uint8_t j = 0; j < 192; j++) - totalBuf += g_pwm_buffer[i][j]; - /* We assumpt it is linear relationship*/ - voltage += (30 * totalBuf / LED_MATRIX_LED_COUNT / 255); - } -#endif -#ifdef RGB_MATRIX_ENABLE - if (rgb_matrix_is_enabled()) { - uint32_t totalBuf = 0; - - for (uint8_t i = 0; i < DRIVER_COUNT; i++) - for (uint8_t j = 0; j < 192; j++) - totalBuf += g_pwm_buffer[i][j]; - /* We assumpt it is linear relationship*/ - uint32_t compensation = 60 * totalBuf / RGB_MATRIX_LED_COUNT / 255 / 3; - voltage += compensation; - } -#endif - battery_set_voltage(voltage); -} - -bool via_command_kb(uint8_t *data, uint8_t length) { - switch (data[0]) { -#ifdef KC_BLUETOOTH_ENABLE - case 0xAA: - ckbt51_dfu_rx(data, length); - break; -#endif -#ifdef ENABLE_FACTORY_TEST - case 0xAB: - factory_test_rx(data, length); - break; -#endif - default: - return false; - } - - return true; -} - -#if !defined(VIA_ENABLE) -void raw_hid_receive(uint8_t *data, uint8_t length) { - switch (data[0]) { - case RAW_HID_CMD: - via_command_kb(data, length); - break; - } -} -#endif diff --git a/keyboards/keychron/q4_pro/q4_pro.h b/keyboards/keychron/q4_pro/q4_pro.h deleted file mode 100644 index 170a1210ff..0000000000 --- a/keyboards/keychron/q4_pro/q4_pro.h +++ /dev/null @@ -1,53 +0,0 @@ -/* 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 . - */ - -#pragma once - -#include "quantum.h" -#ifdef VIA_ENABLE -# include "via.h" -#endif - -#ifdef VIA_ENABLE -# define USER_START QK_KB_0 -#else -# define USER_START SAFE_RANGE -#endif - -// clang-format off -enum { - KC_LOPTN = USER_START, - KC_ROPTN, - KC_LCMMD, - KC_RCMMD, - KC_TASK, - KC_FILE, - KC_SNAP, - KC_CTANA, - KC_SIRI, -#ifdef KC_BLUETOOTH_ENABLE - BT_HST1, - BT_HST2, - BT_HST3, - BAT_LVL, -#else - BT_HST1 = KC_TRNS, - BT_HST2 = KC_TRNS, - BT_HST3 = KC_TRNS, - BAT_LVL = KC_TRNS, -#endif - NEW_SAFE_RANGE -}; diff --git a/keyboards/keychron/q4_pro/readme.md b/keyboards/keychron/q4_pro/readme.md deleted file mode 100644 index fed68ac41f..0000000000 --- a/keyboards/keychron/q4_pro/readme.md +++ /dev/null @@ -1,23 +0,0 @@ -# Keychron Q4 Pro - -![Keychron Q4 Pro](https://i.imgur.com/0ERzbOa.jpg) - -A wireless custom mechanical 60% keyboard. - -* Keyboard Maintainer: [Keychron](https://github.com/keychron) -* Hardware Supported: Keychron Q4 Pro -* Hardware Availability:[Keychron Q4 Pro QMK/VIA Wireless Custom Mechanical Keyboard](https://www.keychron.com/products/keychron-q4-pro-qmk-via-wireless-custom-mechanical-keyboard) - -Make example for this keyboard (after setting up your build environment): - - make keychron/q4_pro/ansi:default - make keychron/q4_pro/iso:default - -Flashing example for this keyboard: - - make keychron/q4_pro/ansi:default:flash - make keychron/q4_pro/iso:default:flash - -**Reset Key**: Connect the USB cable, toggle mode switch to "Off", hold down the *Esc* key or reset button underneath space bar, then toggle then switch to "Cable". - -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). diff --git a/keyboards/keychron/q4_pro/rules.mk b/keyboards/keychron/q4_pro/rules.mk deleted file mode 100644 index f995372f9c..0000000000 --- a/keyboards/keychron/q4_pro/rules.mk +++ /dev/null @@ -1,6 +0,0 @@ -# Enter lower-power sleep mode when on the ChibiOS idle thread -OPT_DEFS += -DCORTEX_ENABLE_WFI_IDLE=TRUE -OPT_DEFS += -DNO_USB_STARTUP_CHECK -DENABLE_FACTORY_TEST - -include keyboards/keychron/bluetooth/bluetooth.mk -include keyboards/keychron/common/common.mk diff --git a/keyboards/keychron/q4_pro/via_json/q4_pro_ansi_rgb.json b/keyboards/keychron/q4_pro/via_json/q4_pro_ansi_rgb.json deleted file mode 100644 index a71866c7aa..0000000000 --- a/keyboards/keychron/q4_pro/via_json/q4_pro_ansi_rgb.json +++ /dev/null @@ -1,225 +0,0 @@ -{ - "name": "Keychron Q4 Pro ANSI", - "vendorId": "0x3434", - "productId": "0x0640", - "keycodes": ["qmk_lighting"], - "menus": [ - { - "label": "Lighting", - "content": [ - { - "label": "Backlight", - "content": [ - { - "label": "Brightness", - "type": "range", - "options": [0, 255], - "content": ["id_qmk_rgb_matrix_brightness", 3, 1] - }, - { - "label": "Effect", - "type": "dropdown", - "content": ["id_qmk_rgb_matrix_effect", 3, 2], - "options": [ - ["None", 0], - ["Solid Color", 1], - ["Breathing", 2], - ["Band Spiral Val", 3], - ["Cycle All", 4], - ["Cycle Left Right", 5], - ["Cycle Up Down", 6], - ["Rainbow Moving Chevron", 7], - ["Cycle Out In", 8], - ["Cycle Out In Dual", 9], - ["Cycle Pinwheel", 10], - ["Cycle Spiral", 11], - ["Dual Beacon", 12], - ["Rainbow Beacon", 13], - ["Jellybean Raindrops", 14], - ["Pixel Rain", 15], - ["Typing Heatmap", 16], - ["Digital Rain", 17], - ["Reactive Simple", 18], - ["Reactive Multiwide", 19], - ["Reactive Multinexus", 20], - ["Splash", 21], - ["Solid Splash", 22] - ] - }, - { - "showIf": "{id_qmk_rgb_matrix_effect} > 1", - "label": "Effect Speed", - "type": "range", - "options": [0, 255], - "content": ["id_qmk_rgb_matrix_effect_speed", 3, 3] - }, - { - "showIf": "{id_qmk_rgb_matrix_effect} != 0 && ( {id_qmk_rgb_matrix_effect} < 4 || {id_qmk_rgb_matrix_effect} == 18 || ({id_qmk_rgb_matrix_effect} > 17 && {id_qmk_rgb_matrix_effect} != 21) ) ", - "label": "Color", - "type": "color", - "content": ["id_qmk_rgb_matrix_color", 3, 4] - } - ] - } - ] - } - ], - "customKeycodes": [ - {"name": "Left Option", "title": "Left Option", "shortName": "LOpt"}, - {"name": "Right Option", "title": "Right Option", "shortName": "ROpt"}, - {"name": "Left Cmd", "title": "Left Command", "shortName": "LCmd"}, - {"name": "Right Cmd", "title": "Right Command", "shortName": "RCmd"}, - {"name": "Task View", "title": "Task View in Windows", "shortName": "Task"}, - {"name": "File Explorer", "title": "File Explorer in Windows", "shortName": "File"}, - {"name": "Screen shot", "title": "Screenshot in macOS", "shortName": "SShot"}, - {"name": "Cortana", "title": "Cortana in Windows", "shortName": "Cortana"}, - {"name": "Siri", "title": "Siri in macOS", "shortName": "Siri"}, - {"name": "Bluetooth Host 1", "title": "Bluetooth Host 1", "shortName": "BTH1"}, - {"name": "Bluetooth Host 2", "title": "Bluetooth Host 2", "shortName": "BTH2"}, - {"name": "Bluetooth Host 3", "title": "Bluetooth Host 3", "shortName": "BTH3"}, - {"name": "Battery Level", "title": "Show battery level", "shortName": "Batt"} - ], - "matrix": {"rows": 5, "cols": 14}, - "layouts": { - "keymap": [ - [ - { - "c": "#777777" - }, - "0,0\nESC", - { - "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", - { - "c": "#aaaaaa", - "w": 2 - }, - "0,13" - ], - [ - { - "w": 1.5 - }, - "1,0", - { - "c": "#cccccc" - }, - "1,1", - "1,2", - "1,3", - "1,4", - "1,5", - "1,6", - "1,7", - "1,8", - "1,9", - "1,10", - "1,11", - "1,12", - { - "c": "#aaaaaa", - "w": 1.5 - }, - "1,13" - ], - [ - { - "w": 1.75 - }, - "2,0", - { - "c": "#cccccc" - }, - "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" - ], - [ - { - "c": "#aaaaaa", - "w": 2.25 - }, - "3,0", - { - "c": "#cccccc" - }, - "3,2", - "3,3", - "3,4", - "3,5", - "3,6", - "3,7", - "3,8", - "3,9", - "3,10", - "3,11", - { - "c": "#aaaaaa", - "w": 2.75 - }, - "3,13" - ], - [ - { - "w": 1.24 - }, - "4,0", - { - "w": 1.25 - }, - "4,1", - { - "w": 1.25 - }, - "4,2", - { - "c": "#cccccc", - "w": 6.25 - }, - "4,6", - { - "c": "#aaaaaa", - "w": 1.25 - }, - "4,10", - { - "w": 1.25 - }, - "4,11", - { - "w": 1.25 - }, - "4,12", - { - "w": 1.25 - }, - "4,13" - ] - ] - } -} diff --git a/keyboards/keychron/q4_pro/via_json/q4_pro_iso_rgb.json b/keyboards/keychron/q4_pro/via_json/q4_pro_iso_rgb.json deleted file mode 100644 index 8dacc0c20c..0000000000 --- a/keyboards/keychron/q4_pro/via_json/q4_pro_iso_rgb.json +++ /dev/null @@ -1,229 +0,0 @@ -{ - "name": "Keychron Q4 Pro ISO", - "vendorId": "0x3434", - "productId": "0x0641", - "keycodes": ["qmk_lighting"], - "menus": [ - { - "label": "Lighting", - "content": [ - { - "label": "Backlight", - "content": [ - { - "label": "Brightness", - "type": "range", - "options": [0, 255], - "content": ["id_qmk_rgb_matrix_brightness", 3, 1] - }, - { - "label": "Effect", - "type": "dropdown", - "content": ["id_qmk_rgb_matrix_effect", 3, 2], - "options": [ - ["None", 0], - ["Solid Color", 1], - ["Breathing", 2], - ["Band Spiral Val", 3], - ["Cycle All", 4], - ["Cycle Left Right", 5], - ["Cycle Up Down", 6], - ["Rainbow Moving Chevron", 7], - ["Cycle Out In", 8], - ["Cycle Out In Dual", 9], - ["Cycle Pinwheel", 10], - ["Cycle Spiral", 11], - ["Dual Beacon", 12], - ["Rainbow Beacon", 13], - ["Jellybean Raindrops", 14], - ["Pixel Rain", 15], - ["Typing Heatmap", 16], - ["Digital Rain", 17], - ["Reactive Simple", 18], - ["Reactive Multiwide", 19], - ["Reactive Multinexus", 20], - ["Splash", 21], - ["Solid Splash", 22] - ] - }, - { - "showIf": "{id_qmk_rgb_matrix_effect} > 1", - "label": "Effect Speed", - "type": "range", - "options": [0, 255], - "content": ["id_qmk_rgb_matrix_effect_speed", 3, 3] - }, - { - "showIf": "{id_qmk_rgb_matrix_effect} != 0 && ( {id_qmk_rgb_matrix_effect} < 4 || {id_qmk_rgb_matrix_effect} == 18 || ({id_qmk_rgb_matrix_effect} > 17 && {id_qmk_rgb_matrix_effect} != 21) ) ", - "label": "Color", - "type": "color", - "content": ["id_qmk_rgb_matrix_color", 3, 4] - } - ] - } - ] - } - ], - "customKeycodes": [ - {"name": "Left Option", "title": "Left Option", "shortName": "LOpt"}, - {"name": "Right Option", "title": "Right Option", "shortName": "ROpt"}, - {"name": "Left Cmd", "title": "Left Command", "shortName": "LCmd"}, - {"name": "Right Cmd", "title": "Right Command", "shortName": "RCmd"}, - {"name": "Task View", "title": "Task View in Windows", "shortName": "Task"}, - {"name": "File Explorer", "title": "File Explorer in Windows", "shortName": "File"}, - {"name": "Screen shot", "title": "Screenshot in macOS", "shortName": "SShot"}, - {"name": "Cortana", "title": "Cortana in Windows", "shortName": "Cortana"}, - {"name": "Siri", "title": "Siri in macOS", "shortName": "Siri"}, - {"name": "Bluetooth Host 1", "title": "Bluetooth Host 1", "shortName": "BTH1"}, - {"name": "Bluetooth Host 2", "title": "Bluetooth Host 2", "shortName": "BTH2"}, - {"name": "Bluetooth Host 3", "title": "Bluetooth Host 3", "shortName": "BTH3"}, - {"name": "Battery Level", "title": "Show battery level", "shortName": "Batt"} - ], - "matrix": {"rows": 5, "cols": 14}, - "layouts": { - "keymap": [ - [ - { - "c": "#777777" - }, - "0,0\nESC", - { - "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", - { - "c": "#aaaaaa", - "w": 2 - }, - "0,13" - ], - [ - { - "w": 1.5 - }, - "1,0", - { - "c": "#cccccc" - }, - "1,1", - "1,2", - "1,3", - "1,4", - "1,5", - "1,6", - "1,7", - "1,8", - "1,9", - "1,10", - "1,11", - "1,12", - { - "x": 0.25, - "c": "#aaaaaa", - "w": 1.25, - "h": 2, - "w2": 1.5, - "h2": 1, - "x2": -0.25 - }, - "1,13" - ], - [ - { - "w": 1.75 - }, - "2,0", - { - "c": "#cccccc" - }, - "2,1", - "2,2", - "2,3", - "2,4", - "2,5", - "2,6", - "2,7", - "2,8", - "2,9", - "2,10", - "2,11", - { - "c": "#aaaaaa" - }, - "2,13" - ], - [ - { - "w": 1.25 - }, - "3,0", - "3,1", - { - "c": "#cccccc" - }, - "3,2", - "3,3", - "3,4", - "3,5", - "3,6", - "3,7", - "3,8", - "3,9", - "3,10", - "3,11", - { - "c": "#aaaaaa", - "w": 2.75 - }, - "3,13" - ], - [ - { - "w": 1.24 - }, - "4,0", - { - "w": 1.25 - }, - "4,1", - { - "w": 1.25 - }, - "4,2", - { - "c": "#cccccc", - "w": 6.25 - }, - "4,6", - { - "c": "#aaaaaa", - "w": 1.25 - }, - "4,10", - { - "w": 1.25 - }, - "4,11", - { - "w": 1.25 - }, - "4,12", - { - "w": 1.25 - }, - "4,13" - ] - ] - } -} diff --git a/keyboards/keychron/q5_max/ansi_encoder/ansi_encoder.c b/keyboards/keychron/q5_max/ansi_encoder/ansi_encoder.c deleted file mode 100644 index 43ffdf6040..0000000000 --- a/keyboards/keychron/q5_max/ansi_encoder/ansi_encoder.c +++ /dev/null @@ -1,168 +0,0 @@ -/* Copyright 2024 @ 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/>. - */ - -#include "quantum.h" - -// clang-format off - -#ifdef RGB_MATRIX_ENABLE -const snled27351_led_t g_snled27351_leds[RGB_MATRIX_LED_COUNT] = { -/* Refer to SNLED27351 manual for these locations - * driver - * | R location - * | | G location - * | | | B location - * | | | | */ - {0, G_15, I_15, H_15}, - {0, G_14, I_14, H_14}, - {0, G_13, I_13, H_13}, - {0, G_12, I_12, H_12}, - {0, G_11, I_11, H_11}, - {0, G_10, I_10, H_10}, - {0, G_9, I_9, H_9}, - {0, G_8, I_8, H_8}, - {0, G_7, I_7, H_7}, - {0, G_6, I_6, H_6}, - {0, G_5, I_5, H_5}, - {0, G_4, I_4, H_4}, - {0, G_3, I_3, H_3}, - {0, G_2, I_2, H_2}, - {0, D_4, F_4, E_4}, - {0, D_3, F_3, E_3}, - {0, D_2, F_2, E_2}, - - {0, A_15, C_15, B_15}, - {0, A_14, C_14, B_14}, - {0, A_13, C_13, B_13}, - {0, A_12, C_12, B_12}, - {0, A_11, C_11, B_11}, - {0, A_10, C_10, B_10}, - {0, A_9, C_9, B_9}, - {0, A_8, C_8, B_8}, - {0, A_7, C_7, B_7}, - {0, A_6, C_6, B_6}, - {0, A_5, C_5, B_5}, - {0, A_4, C_4, B_4}, - {0, A_3, C_3, B_3}, - {0, A_2, C_2, B_2}, - {0, A_1, C_1, B_1}, - {0, D_8, F_8, E_8}, - {0, D_7, F_7, E_7}, - {0, D_6, F_6, E_6}, - {0, D_5, F_5, E_5}, - - {0, J_15, L_15, K_15}, - {0, J_14, L_14, K_14}, - {0, J_13, L_13, K_13}, - {0, J_12, L_12, K_12}, - {0, J_11, L_11, K_11}, - {0, J_10, L_10, K_10}, - {0, J_9, L_9, K_9}, - {0, J_8, L_8, K_8}, - {0, J_7, L_7, K_7}, - {0, J_6, L_6, K_6}, - {0, J_5, L_5, K_5}, - {0, J_4, L_4, K_4}, - {0, J_3, L_3, K_3}, - {0, J_2, L_2, K_2}, - {0, J_1, L_1, K_1}, - {0, D_12, F_12, E_12}, - {0, D_11, F_11, E_11}, - {0, D_10, F_10, E_10}, - {0, D_9, F_9, E_9}, - - {1, A_15, C_15, B_15}, - {1, A_14, C_14, B_14}, - {1, A_13, C_13, B_13}, - {1, A_12, C_12, B_12}, - {1, A_11, C_11, B_11}, - {1, A_10, C_10, B_10}, - {1, A_9, C_9, B_9}, - {1, A_8, C_8, B_8}, - {1, A_7, C_7, B_7}, - {1, A_6, C_6, B_6}, - {1, A_5, C_5, B_5}, - {1, A_4, C_4, B_4}, - {1, A_3, C_3, B_3}, - {1, A_2, C_2, B_2}, - {1, J_9, L_9, K_9}, - {1, J_8, L_8, K_8}, - {1, J_7, L_7, K_7}, - - {1, G_15, I_15, H_15}, - {1, G_13, I_13, H_13}, - {1, G_12, I_12, H_12}, - {1, G_11, I_11, H_11}, - {1, G_10, I_10, H_10}, - {1, G_9, I_9, H_9}, - {1, G_8, I_8, H_8}, - {1, G_7, I_7, H_7}, - {1, G_6, I_6, H_6}, - {1, G_5, I_5, H_5}, - {1, G_4, I_4, H_4}, - {1, G_3, I_3, H_3}, - {1, G_2, I_2, H_2}, - {1, J_6, L_6, K_6}, - {1, J_5, L_5, K_5}, - {1, J_4, L_4, K_4}, - {1, J_3, L_3, K_3}, - - {1, D_15, F_15, E_15}, - {1, D_14, F_14, E_14}, - {1, D_13, F_13, E_13}, - {1, D_9, F_9, E_9}, - {1, D_6, F_6, E_6}, - {1, D_5, F_5, E_5}, - {1, D_4, F_4, E_4}, - {1, D_3, F_3, E_3}, - {1, D_2, F_2, E_2}, - {1, D_1, F_1, E_1}, - {1, J_2, L_2, K_2}, - {1, J_1, L_1, K_1}, -}; - -#define __ NO_LED - -led_config_t g_led_config = { - { - // Key Matrix to LED Index - { 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, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54 }, - { 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, __, 69, 70, 71, __ }, - { 72, __, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, __, 85, 86, 87, 88 }, - { 89, 90, 91, __, __, __, 92, __, __, 93, 94, 95, 96, 97, 98, __, 99, 100, __ }, - }, - { - // LED Index to Physical Position - {0, 0}, {23, 0}, {34, 0}, {46, 0}, {57, 0}, {75, 0}, {86, 0}, {98, 0}, {109, 0}, {127, 0}, {138, 0}, {150, 0}, {161, 0}, {175, 0}, {189, 0}, {201, 0}, {212, 0}, - {0,15}, {12,15}, {23,15}, {35,15}, {46,15}, {58,15}, {69,15}, {81,15}, { 92,15}, {104,15}, {115,15}, {127,15}, {138,15}, {155,15}, {175,15}, {189,15}, {201,15}, {212,15}, {224,15}, - {3,26}, {17,26}, {29,26}, {40,26}, {52,26}, {63,26}, {75,26}, {86,26}, { 98,26}, {109,26}, {121,26}, {132,26}, {144,26}, {158,26}, {175,26}, {189,26}, {201,26}, {212,26}, {224,32}, - {4,38}, {20,38}, {32,38}, {43,38}, {55,38}, {66,38}, {78,38}, {89,38}, {101,38}, {112,38}, {124,38}, {135,38}, {154,38}, {175,38}, {189,38}, {201,38}, {212,38}, - {7,50}, {26,50}, {37,50}, {49,50}, {60,50}, {72,50}, {83,50}, { 95,50}, {106,50}, {118,50}, {129,50}, {145,50}, {164,52}, {189,50}, {201,50}, {212,50}, {224,55}, - {1,61}, {16,61}, {30,61}, {73,61}, {115,61}, {126,61}, {138,61}, {152,64}, {164,64}, {175,64}, {195,61}, {212,61}, - }, - { - // RGB LED Index to Flag - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - } -}; -#endif diff --git a/keyboards/keychron/q5_max/ansi_encoder/config.h b/keyboards/keychron/q5_max/ansi_encoder/config.h deleted file mode 100644 index a9f45ab66e..0000000000 --- a/keyboards/keychron/q5_max/ansi_encoder/config.h +++ /dev/null @@ -1,46 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#pragma once - -#ifdef RGB_MATRIX_ENABLE -/* RGB Matrix driver configuration */ -# define RGB_MATRIX_LED_COUNT 101 -# define DRIVER_COUNT 2 -# define DRIVER_CS_PINS \ - { B8, B9 } - -/* Set LED driver current */ -# define SNLED27351_CURRENT_TUNE \ - { 0x2C, 0x2C, 0x2C, 0x2C, 0x2C, 0x2C, 0x2C, 0x2C, 0x2C, 0x2C, 0x2C, 0x2C } - -/* Set to infinit, which is use in USB mode by default */ -# define RGB_MATRIX_TIMEOUT RGB_MATRIX_TIMEOUT_INFINITE -/* Allow shutdown of led driver to save power */ -# define RGB_MATRIX_DRIVER_SHUTDOWN_ENABLE -/* Turn off backlight on low brightness to save power */ -# define RGB_MATRIX_BRIGHTNESS_TURN_OFF_VAL 32 - -/* Indications */ -# define NUM_LOCK_INDEX 32 -# define CAPS_LOCK_INDEX 55 -# define LOW_BAT_IND_INDEX \ - { 92 } - -# define RGB_MATRIX_KEYPRESSES -# define RGB_MATRIX_FRAMEBUFFER_EFFECTS - -#endif diff --git a/keyboards/keychron/q5_max/ansi_encoder/info.json b/keyboards/keychron/q5_max/ansi_encoder/info.json deleted file mode 100644 index a206fdef1a..0000000000 --- a/keyboards/keychron/q5_max/ansi_encoder/info.json +++ /dev/null @@ -1,119 +0,0 @@ -{ - "usb": { - "pid": "0x0850", - "device_version": "1.0.0" - }, - "layouts": { - "LAYOUT_ansi_101": { - "layout": [ - {"matrix": [0, 0], "x": 0, "y": 0}, - {"matrix": [0, 1], "x": 2, "y": 0}, - {"matrix": [0, 2], "x": 3, "y": 0}, - {"matrix": [0, 3], "x": 4, "y": 0}, - {"matrix": [0, 4], "x": 5, "y": 0}, - {"matrix": [0, 5], "x": 6.5, "y": 0}, - {"matrix": [0, 6], "x": 7.5, "y": 0}, - {"matrix": [0, 7], "x": 8.5, "y": 0}, - {"matrix": [0, 8], "x": 9.5, "y": 0}, - {"matrix": [0, 9], "x": 11, "y": 0}, - {"matrix": [0, 10], "x": 12, "y": 0}, - {"matrix": [0, 11], "x": 13, "y": 0}, - {"matrix": [0, 12], "x": 14, "y": 0}, - {"matrix": [0, 13], "x": 15.25, "y": 0}, - {"matrix": [0, 15], "x": 16.5, "y": 0}, - {"matrix": [0, 16], "x": 17.5, "y": 0}, - {"matrix": [0, 17], "x": 18.5, "y": 0}, - {"matrix": [0, 18], "x": 19.5, "y": 0}, - - {"matrix": [1, 0], "x": 0, "y": 1.25}, - {"matrix": [1, 1], "x": 1, "y": 1.25}, - {"matrix": [1, 2], "x": 2, "y": 1.25}, - {"matrix": [1, 3], "x": 3, "y": 1.25}, - {"matrix": [1, 4], "x": 4, "y": 1.25}, - {"matrix": [1, 5], "x": 5, "y": 1.25}, - {"matrix": [1, 6], "x": 6, "y": 1.25}, - {"matrix": [1, 7], "x": 7, "y": 1.25}, - {"matrix": [1, 8], "x": 8, "y": 1.25}, - {"matrix": [1, 9], "x": 9, "y": 1.25}, - {"matrix": [1, 10], "x": 10, "y": 1.25}, - {"matrix": [1, 11], "x": 11, "y": 1.25}, - {"matrix": [1, 12], "x": 12, "y": 1.25}, - {"matrix": [1, 13], "x": 13, "y": 1.25, "w": 2}, - {"matrix": [1, 14], "x": 15.25, "y": 1.25}, - {"matrix": [1, 15], "x": 16.5, "y": 1.25}, - {"matrix": [1, 16], "x": 17.5, "y": 1.25}, - {"matrix": [1, 17], "x": 18.5, "y": 1.25}, - {"matrix": [1, 18], "x": 19.5, "y": 1.25}, - - {"matrix": [2, 0], "x": 0, "y": 2.25, "w": 1.5}, - {"matrix": [2, 1], "x": 1.5, "y": 2.25}, - {"matrix": [2, 2], "x": 2.5, "y": 2.25}, - {"matrix": [2, 3], "x": 3.5, "y": 2.25}, - {"matrix": [2, 4], "x": 4.5, "y": 2.25}, - {"matrix": [2, 5], "x": 5.5, "y": 2.25}, - {"matrix": [2, 6], "x": 6.5, "y": 2.25}, - {"matrix": [2, 7], "x": 7.5, "y": 2.25}, - {"matrix": [2, 8], "x": 8.5, "y": 2.25}, - {"matrix": [2, 9], "x": 9.5, "y": 2.25}, - {"matrix": [2, 10], "x": 10.5, "y": 2.25}, - {"matrix": [2, 11], "x": 11.5, "y": 2.25}, - {"matrix": [2, 12], "x": 12.5, "y": 2.25}, - {"matrix": [2, 13], "x": 13.5, "y": 2.25, "w": 1.5}, - {"matrix": [2, 14], "x": 15.25, "y": 2.25}, - {"matrix": [2, 15], "x": 16.5, "y": 2.25}, - {"matrix": [2, 16], "x": 17.5, "y": 2.25}, - {"matrix": [2, 17], "x": 18.5, "y": 2.25}, - - {"matrix": [3, 0], "x": 0, "y": 3.25, "w": 1.75}, - {"matrix": [3, 1], "x": 1.75, "y": 3.25}, - {"matrix": [3, 2], "x": 2.75, "y": 3.25}, - {"matrix": [3, 3], "x": 3.75, "y": 3.25}, - {"matrix": [3, 4], "x": 4.75, "y": 3.25}, - {"matrix": [3, 5], "x": 5.75, "y": 3.25}, - {"matrix": [3, 6], "x": 6.75, "y": 3.25}, - {"matrix": [3, 7], "x": 7.75, "y": 3.25}, - {"matrix": [3, 8], "x": 8.75, "y": 3.25}, - {"matrix": [3, 9], "x": 9.75, "y": 3.25}, - {"matrix": [3, 10], "x": 10.75, "y": 3.25}, - {"matrix": [3, 11], "x": 11.75, "y": 3.25}, - {"matrix": [3, 12], "x": 12.75, "y": 3.25, "w": 2.25}, - {"matrix": [3, 13], "x": 15.25, "y": 3.25}, - {"matrix": [3, 15], "x": 16.5, "y": 3.25}, - {"matrix": [3, 16], "x": 17.5, "y": 3.25}, - {"matrix": [3, 17], "x": 18.5, "y": 3.25}, - {"matrix": [2, 18], "x": 19.5, "y": 2.25, "h": 2}, - - {"matrix": [4, 0], "x": 0, "y": 4.25, "w": 2.25}, - {"matrix": [4, 2], "x": 2.25, "y": 4.25}, - {"matrix": [4, 3], "x": 3.25, "y": 4.25}, - {"matrix": [4, 4], "x": 4.25, "y": 4.25}, - {"matrix": [4, 5], "x": 5.25, "y": 4.25}, - {"matrix": [4, 6], "x": 6.25, "y": 4.25}, - {"matrix": [4, 7], "x": 7.25, "y": 4.25}, - {"matrix": [4, 8], "x": 8.25, "y": 4.25}, - {"matrix": [4, 9], "x": 9.25, "y": 4.25}, - {"matrix": [4, 10], "x": 10.25, "y": 4.25}, - {"matrix": [4, 11], "x": 11.25, "y": 4.25}, - {"matrix": [4, 12], "x": 12.25, "y": 4.25, "w": 1.75}, - {"matrix": [4, 13], "x": 14.25, "y": 4.5}, - {"matrix": [4, 15], "x": 16.5, "y": 4.25}, - {"matrix": [4, 16], "x": 17.5, "y": 4.25}, - {"matrix": [4, 17], "x": 18.5, "y": 4.25}, - - {"matrix": [5, 0], "x": 0, "y": 5.25, "w": 1.25}, - {"matrix": [5, 1], "x": 1.25, "y": 5.25, "w": 1.25}, - {"matrix": [5, 2], "x": 2.5, "y": 5.25, "w": 1.25}, - {"matrix": [5, 6], "x": 3.75, "y": 5.25, "w": 6.25}, - {"matrix": [5, 9], "x": 10, "y": 5.25}, - {"matrix": [5, 10], "x": 11, "y": 5.25}, - {"matrix": [5, 11], "x": 12, "y": 5.25}, - {"matrix": [5, 12], "x": 13.25, "y": 5.5}, - {"matrix": [5, 13], "x": 14.25, "y": 5.5}, - {"matrix": [5, 14], "x": 15.25, "y": 5.5}, - {"matrix": [5, 16], "x": 16.5, "y": 5.25, "w": 2}, - {"matrix": [5, 17], "x": 18.5, "y": 5.25}, - {"matrix": [4, 18], "x": 19.5, "y": 4.25, "h": 2} - ] - } - } -} diff --git a/keyboards/keychron/q5_max/ansi_encoder/keymaps/default/keymap.c b/keyboards/keychron/q5_max/ansi_encoder/keymaps/default/keymap.c deleted file mode 100644 index feb75933b0..0000000000 --- a/keyboards/keychron/q5_max/ansi_encoder/keymaps/default/keymap.c +++ /dev/null @@ -1,77 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#include QMK_KEYBOARD_H -#include "keychron_common.h" - -enum layers { - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN, -}; - -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_ansi_101( - KC_ESC, KC_BRID, KC_BRIU, KC_MCTRL, KC_LNPAD, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_DEL, KC_F13, KC_F14 , KC_F15, KC_MUTE, - KC_GRV, 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_PGUP, KC_NUM, KC_PSLS, KC_PAST, KC_PMNS, - 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_PGDN, KC_P7, KC_P8, KC_P9, - 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_HOME, KC_P4, KC_P5, KC_P6, KC_PPLS, - 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_P1, KC_P2, KC_P3, - KC_LCTL, KC_LOPTN, KC_LCMMD, KC_SPC, KC_RCMMD, MO(MAC_FN), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT, KC_P0, KC_PDOT, KC_PENT), - - [MAC_FN] = LAYOUT_ansi_101( - _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, _______, _______, RGB_TOG, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, KC_END, _______, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - - [WIN_BASE] = LAYOUT_ansi_101( - KC_ESC, 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_DEL, _______, _______, _______, KC_MUTE, - KC_GRV, 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_PGUP, KC_NUM, KC_PSLS, KC_PAST, KC_PMNS, - 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_PGDN, KC_P7, KC_P8, KC_P9, - 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_HOME, KC_P4, KC_P5, KC_P6, KC_PPLS, - 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_P1, KC_P2, KC_P3, - KC_LCTL, KC_LWIN, KC_LALT, KC_SPC, KC_RALT, MO(WIN_FN), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT, KC_P0, KC_PDOT, KC_PENT), - - [WIN_FN] = LAYOUT_ansi_101( - _______, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, _______, _______, RGB_TOG, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, KC_END, _______, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), -}; - -// clang-format on -#if defined(ENCODER_MAP_ENABLE) -const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][2] = { - [MAC_BASE] = {ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [MAC_FN] = {ENCODER_CCW_CW(RGB_VAD, RGB_VAI)}, - [WIN_BASE] = {ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [WIN_FN] = {ENCODER_CCW_CW(RGB_VAD, RGB_VAI)}, -}; -#endif // ENCODER_MAP_ENABLE - -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - if (!process_record_keychron_common(keycode, record)) { - return false; - } - return true; -} diff --git a/keyboards/keychron/q5_max/ansi_encoder/keymaps/via/keymap.c b/keyboards/keychron/q5_max/ansi_encoder/keymaps/via/keymap.c deleted file mode 100644 index feb75933b0..0000000000 --- a/keyboards/keychron/q5_max/ansi_encoder/keymaps/via/keymap.c +++ /dev/null @@ -1,77 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#include QMK_KEYBOARD_H -#include "keychron_common.h" - -enum layers { - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN, -}; - -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_ansi_101( - KC_ESC, KC_BRID, KC_BRIU, KC_MCTRL, KC_LNPAD, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_DEL, KC_F13, KC_F14 , KC_F15, KC_MUTE, - KC_GRV, 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_PGUP, KC_NUM, KC_PSLS, KC_PAST, KC_PMNS, - 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_PGDN, KC_P7, KC_P8, KC_P9, - 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_HOME, KC_P4, KC_P5, KC_P6, KC_PPLS, - 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_P1, KC_P2, KC_P3, - KC_LCTL, KC_LOPTN, KC_LCMMD, KC_SPC, KC_RCMMD, MO(MAC_FN), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT, KC_P0, KC_PDOT, KC_PENT), - - [MAC_FN] = LAYOUT_ansi_101( - _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, _______, _______, RGB_TOG, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, KC_END, _______, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - - [WIN_BASE] = LAYOUT_ansi_101( - KC_ESC, 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_DEL, _______, _______, _______, KC_MUTE, - KC_GRV, 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_PGUP, KC_NUM, KC_PSLS, KC_PAST, KC_PMNS, - 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_PGDN, KC_P7, KC_P8, KC_P9, - 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_HOME, KC_P4, KC_P5, KC_P6, KC_PPLS, - 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_P1, KC_P2, KC_P3, - KC_LCTL, KC_LWIN, KC_LALT, KC_SPC, KC_RALT, MO(WIN_FN), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT, KC_P0, KC_PDOT, KC_PENT), - - [WIN_FN] = LAYOUT_ansi_101( - _______, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, _______, _______, RGB_TOG, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, KC_END, _______, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), -}; - -// clang-format on -#if defined(ENCODER_MAP_ENABLE) -const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][2] = { - [MAC_BASE] = {ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [MAC_FN] = {ENCODER_CCW_CW(RGB_VAD, RGB_VAI)}, - [WIN_BASE] = {ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [WIN_FN] = {ENCODER_CCW_CW(RGB_VAD, RGB_VAI)}, -}; -#endif // ENCODER_MAP_ENABLE - -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - if (!process_record_keychron_common(keycode, record)) { - return false; - } - return true; -} diff --git a/keyboards/keychron/q5_max/ansi_encoder/keymaps/via/rules.mk b/keyboards/keychron/q5_max/ansi_encoder/keymaps/via/rules.mk deleted file mode 100644 index 1e5b99807c..0000000000 --- a/keyboards/keychron/q5_max/ansi_encoder/keymaps/via/rules.mk +++ /dev/null @@ -1 +0,0 @@ -VIA_ENABLE = yes diff --git a/keyboards/keychron/q5_max/ansi_encoder/rules.mk b/keyboards/keychron/q5_max/ansi_encoder/rules.mk deleted file mode 100644 index 7ff128fa69..0000000000 --- a/keyboards/keychron/q5_max/ansi_encoder/rules.mk +++ /dev/null @@ -1 +0,0 @@ -# This file intentionally left blank \ No newline at end of file diff --git a/keyboards/keychron/q5_max/board.h b/keyboards/keychron/q5_max/board.h deleted file mode 100644 index 54fba748bf..0000000000 --- a/keyboards/keychron/q5_max/board.h +++ /dev/null @@ -1,226 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#pragma once - -#include_next - -// clang-format off - -/* Set GPIOA_SWDIO to INPUT and NOT FLOATING */ -#undef VAL_GPIOA_MODER -#define VAL_GPIOA_MODER (PIN_MODE_INPUT(GPIOA_BUTTON) | \ - PIN_MODE_INPUT(GPIOA_PIN1) | \ - PIN_MODE_INPUT(GPIOA_PIN2) | \ - PIN_MODE_INPUT(GPIOA_PIN3) | \ - PIN_MODE_ALTERNATE(GPIOA_CS43L22_LRCK) |\ - PIN_MODE_ALTERNATE(GPIOA_L3GD20_SCL) | \ - PIN_MODE_ALTERNATE(GPIOA_L3GD20_SD0) | \ - PIN_MODE_ALTERNATE(GPIOA_L3GD20_SDI) | \ - PIN_MODE_INPUT(GPIOA_PIN8) | \ - PIN_MODE_INPUT(GPIOA_VBUS_FS) | \ - PIN_MODE_ALTERNATE(GPIOA_OTG_FS_ID) | \ - PIN_MODE_ALTERNATE(GPIOA_OTG_FS_DM) | \ - PIN_MODE_ALTERNATE(GPIOA_OTG_FS_DP) | \ - PIN_MODE_INPUT(GPIOA_SWDIO) | \ - PIN_MODE_INPUT(GPIOA_SWCLK) | \ - PIN_MODE_INPUT(GPIOA_PIN15)) - -#undef VAL_GPIOA_PUPDR -#define VAL_GPIOA_PUPDR (PIN_PUPDR_FLOATING(GPIOA_BUTTON) | \ - PIN_PUPDR_PULLUP(GPIOA_PIN1) | \ - PIN_PUPDR_PULLUP(GPIOA_PIN2) | \ - PIN_PUPDR_PULLUP(GPIOA_PIN3) | \ - PIN_PUPDR_FLOATING(GPIOA_CS43L22_LRCK) |\ - PIN_PUPDR_FLOATING(GPIOA_L3GD20_SCL) | \ - PIN_PUPDR_PULLUP(GPIOA_L3GD20_SD0) | \ - PIN_PUPDR_PULLUP(GPIOA_L3GD20_SDI) | \ - PIN_PUPDR_PULLUP(GPIOA_PIN8) | \ - PIN_PUPDR_FLOATING(GPIOA_VBUS_FS) | \ - PIN_PUPDR_FLOATING(GPIOA_OTG_FS_ID) | \ - PIN_PUPDR_FLOATING(GPIOA_OTG_FS_DM) | \ - PIN_PUPDR_FLOATING(GPIOA_OTG_FS_DP) | \ - PIN_PUPDR_PULLUP(GPIOA_SWDIO) | \ - PIN_PUPDR_PULLUP(GPIOA_SWCLK) | \ - PIN_PUPDR_PULLUP(GPIOA_PIN15)) - -#undef VAL_GPIOB_MODER -#define VAL_GPIOB_MODER (PIN_MODE_INPUT(GPIOB_PIN0) | \ - PIN_MODE_INPUT(GPIOB_PIN1) | \ - PIN_MODE_INPUT(GPIOB_PIN2) | \ - PIN_MODE_INPUT(GPIOB_SWO) | \ - PIN_MODE_INPUT(GPIOB_PIN4) | \ - PIN_MODE_INPUT(GPIOB_PIN5) | \ - PIN_MODE_INPUT(GPIOB_LSM303DLHC_SCL) | \ - PIN_MODE_INPUT(GPIOB_PIN7) | \ - PIN_MODE_INPUT(GPIOB_PIN8) | \ - PIN_MODE_INPUT(GPIOB_LSM303DLHC_SDA) | \ - PIN_MODE_INPUT(GPIOB_MP45DT02_CLK_IN) |\ - PIN_MODE_INPUT(GPIOB_PIN11) | \ - PIN_MODE_INPUT(GPIOB_PIN12) | \ - PIN_MODE_INPUT(GPIOB_PIN13) | \ - PIN_MODE_INPUT(GPIOB_PIN14) | \ - PIN_MODE_INPUT(GPIOB_PIN15)) - -#undef VAL_GPIOB_PUPDR -#define VAL_GPIOB_PUPDR (PIN_PUPDR_PULLDOWN(GPIOB_PIN0) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN1) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN2) | \ - PIN_PUPDR_PULLDOWN(GPIOB_SWO) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN4) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN5) | \ - PIN_PUPDR_PULLDOWN(GPIOB_LSM303DLHC_SCL) |\ - PIN_PUPDR_PULLDOWN(GPIOB_PIN7) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN8) | \ - PIN_PUPDR_PULLDOWN(GPIOB_LSM303DLHC_SDA) |\ - PIN_PUPDR_PULLDOWN(GPIOB_MP45DT02_CLK_IN) |\ - PIN_PUPDR_PULLDOWN(GPIOB_PIN11) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN12) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN13) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN14) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN15)) - -#undef VAL_GPIOB_AFRL -#define VAL_GPIOB_AFRL (PIN_AFIO_AF(GPIOB_PIN0, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN1, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN2, 0U) | \ - PIN_AFIO_AF(GPIOB_SWO, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN4, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN5, 0U) | \ - PIN_AFIO_AF(GPIOB_LSM303DLHC_SCL, 0) | \ - PIN_AFIO_AF(GPIOB_PIN7, 0U)) - -#undef VAL_GPIOB_AFRH -#define VAL_GPIOB_AFRH (PIN_AFIO_AF(GPIOB_PIN8, 0U) | \ - PIN_AFIO_AF(GPIOB_LSM303DLHC_SDA, 0) | \ - PIN_AFIO_AF(GPIOB_MP45DT02_CLK_IN, 0U) |\ - PIN_AFIO_AF(GPIOB_PIN11, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN12, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN13, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN14, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN15, 0U)) - -/* C5 Need to be pulldown */ -#undef VAL_GPIOC_MODER -#define VAL_GPIOC_MODER (PIN_MODE_INPUT(GPIOC_OTG_FS_POWER_ON) |\ - PIN_MODE_INPUT(GPIOC_PIN1) | \ - PIN_MODE_INPUT(GPIOC_PIN2) | \ - PIN_MODE_INPUT(GPIOC_CS43L22_AIN4x) | \ - PIN_MODE_INPUT(GPIOC_PIN4) | \ - PIN_MODE_INPUT(GPIOC_PIN5) | \ - PIN_MODE_INPUT(GPIOC_PIN6) | \ - PIN_MODE_INPUT(GPIOC_CS43L22_MCLK) | \ - PIN_MODE_INPUT(GPIOC_PIN8) | \ - PIN_MODE_INPUT(GPIOC_PIN9) | \ - PIN_MODE_INPUT(GPIOC_CS43L22_SCLK) | \ - PIN_MODE_INPUT(GPIOC_PIN11) | \ - PIN_MODE_INPUT(GPIOC_CS43L22_SDIN) | \ - PIN_MODE_INPUT(GPIOC_PIN13) | \ - PIN_MODE_INPUT(GPIOC_OSC32_IN) | \ - PIN_MODE_INPUT(GPIOC_OSC32_OUT)) - -#undef VAL_GPIOC_PUPDR -#define VAL_GPIOC_PUPDR (PIN_PUPDR_PULLUP(GPIOC_OTG_FS_POWER_ON) |\ - PIN_PUPDR_PULLUP(GPIOC_PIN1) | \ - PIN_PUPDR_PULLUP(GPIOC_PIN2) | \ - PIN_PUPDR_PULLUP(GPIOC_CS43L22_AIN4x) |\ - PIN_PUPDR_PULLUP(GPIOC_PIN4) | \ - PIN_PUPDR_PULLDOWN(GPIOC_PIN5) | \ - PIN_PUPDR_PULLUP(GPIOC_PIN6) | \ - PIN_PUPDR_PULLUP(GPIOC_CS43L22_MCLK) | \ - PIN_PUPDR_PULLUP(GPIOC_PIN8) | \ - PIN_PUPDR_PULLUP(GPIOC_PIN9) | \ - PIN_PUPDR_PULLUP(GPIOC_CS43L22_SCLK) | \ - PIN_PUPDR_PULLUP(GPIOC_PIN11) | \ - PIN_PUPDR_PULLUP(GPIOC_CS43L22_SDIN) | \ - PIN_PUPDR_PULLUP(GPIOC_PIN13) | \ - PIN_PUPDR_PULLUP(GPIOC_OSC32_IN) | \ - PIN_PUPDR_PULLUP(GPIOC_OSC32_OUT)) - -/* Set all GPIOD pins to INPUT & PULLUP to avoid FLOATING */ -#undef VAL_GPIOD_MODER -#define VAL_GPIOD_MODER (PIN_MODE_INPUT(GPIOD_PIN0) | \ - PIN_MODE_INPUT(GPIOD_PIN1) | \ - PIN_MODE_INPUT(GPIOD_PIN2) | \ - PIN_MODE_INPUT(GPIOD_PIN3) | \ - PIN_MODE_INPUT(GPIOD_CS43L22_RESET) | \ - PIN_MODE_INPUT(GPIOD_OverCurrent) | \ - PIN_MODE_INPUT(GPIOD_PIN6) | \ - PIN_MODE_INPUT(GPIOD_PIN7) | \ - PIN_MODE_INPUT(GPIOD_PIN8) | \ - PIN_MODE_INPUT(GPIOD_PIN9) | \ - PIN_MODE_INPUT(GPIOD_PIN10) | \ - PIN_MODE_INPUT(GPIOD_PIN11) | \ - PIN_MODE_INPUT(GPIOD_LED4) | \ - PIN_MODE_INPUT(GPIOD_LED3) | \ - PIN_MODE_INPUT(GPIOD_LED5) | \ - PIN_MODE_INPUT(GPIOD_LED6)) - -#undef VAL_GPIOD_PUPDR -#define VAL_GPIOD_PUPDR (PIN_PUPDR_PULLUP(GPIOD_PIN0) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN1) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN2) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN3) | \ - PIN_PUPDR_PULLUP(GPIOD_CS43L22_RESET) |\ - PIN_PUPDR_PULLUP(GPIOD_OverCurrent) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN6) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN7) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN8) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN9) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN10) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN11) | \ - PIN_PUPDR_PULLUP(GPIOD_LED4) | \ - PIN_PUPDR_PULLUP(GPIOD_LED3) | \ - PIN_PUPDR_PULLUP(GPIOD_LED5) | \ - PIN_PUPDR_PULLUP(GPIOD_LED6)) - -/* Set all GPIOE pins to INPUT & PULLUP to avoid FLOATING */ -#undef VAL_GPIOE_MODER -#define VAL_GPIOE_MODER (PIN_MODE_INPUT(GPIOE_L3GD20_INT1) | \ - PIN_MODE_INPUT(GPIOE_L3GD20_INT2) | \ - PIN_MODE_INPUT(GPIOE_LSM303DLHC_DRDY) |\ - PIN_MODE_INPUT(GPIOE_L3GD20_CS) | \ - PIN_MODE_INPUT(GPIOE_LSM303DLHC_INT1) |\ - PIN_MODE_INPUT(GPIOE_LSM303DLHC_INT2) |\ - PIN_MODE_INPUT(GPIOE_PIN6) | \ - PIN_MODE_INPUT(GPIOE_PIN7) | \ - PIN_MODE_INPUT(GPIOE_PIN8) | \ - PIN_MODE_INPUT(GPIOE_PIN9) | \ - PIN_MODE_INPUT(GPIOE_PIN10) | \ - PIN_MODE_INPUT(GPIOE_PIN11) | \ - PIN_MODE_INPUT(GPIOE_PIN12) | \ - PIN_MODE_INPUT(GPIOE_PIN13) | \ - PIN_MODE_INPUT(GPIOE_PIN14) | \ - PIN_MODE_INPUT(GPIOE_PIN15)) - -#undef VAL_GPIOE_PUPDR -#define VAL_GPIOE_PUPDR (PIN_PUPDR_PULLUP(GPIOE_L3GD20_INT1) | \ - PIN_PUPDR_PULLUP(GPIOE_L3GD20_INT2) | \ - PIN_PUPDR_PULLUP(GPIOE_LSM303DLHC_DRDY) |\ - PIN_PUPDR_PULLUP(GPIOE_L3GD20_CS) | \ - PIN_PUPDR_PULLUP(GPIOE_LSM303DLHC_INT1) |\ - PIN_PUPDR_PULLUP(GPIOE_LSM303DLHC_INT2) |\ - PIN_PUPDR_PULLUP(GPIOE_PIN6) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN7) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN8) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN9) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN10) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN11) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN12) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN13) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN14) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN15)) - diff --git a/keyboards/keychron/q5_max/config.h b/keyboards/keychron/q5_max/config.h deleted file mode 100644 index 24e7110418..0000000000 --- a/keyboards/keychron/q5_max/config.h +++ /dev/null @@ -1,86 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#pragma once - -/* Encoder Configuration */ -#define ENCODER_DEFAULT_POS 0x3 -#define ENCODER_MAP_KEY_DELAY 2 - -#if defined(RGB_MATRIX_ENABLE) || defined(LK_WIRELESS_ENABLE) -/* SPI configuration */ -# define SPI_DRIVER SPID1 -# define SPI_SCK_PIN A5 -# define SPI_MISO_PIN A6 -# define SPI_MOSI_PIN A7 -#endif - -#if defined(RGB_MATRIX_ENABLE) -# define LED_DRIVER_SHUTDOWN_PIN B7 -# define SNLED23751_SPI_DIVISOR 16 -#endif - -#ifdef LK_WIRELESS_ENABLE -/* Hardware configuration */ -# define P2P4_MODE_SELECT_PIN A10 -# define BT_MODE_SELECT_PIN A9 - -# define LKBT51_RESET_PIN C4 -# define LKBT51_INT_INPUT_PIN B1 -# define BLUETOOTH_INT_OUTPUT_PIN A4 - -# define USB_POWER_SENSE_PIN B0 -# define USB_POWER_CONNECTED_LEVEL 0 - -# define BAT_CHARGING_PIN B13 -# define BAT_CHARGING_LEVEL 0 - -# define BT_HOST_DEVICES_COUNT 3 - -# if defined(RGB_MATRIX_ENABLE) || defined(LED_MATRIX_ENABLE) - -# define BT_HOST_LED_MATRIX_LIST \ - { 18, 19, 20 } - -# define P2P4G_HOST_LED_MATRIX_LIST \ - { 21 } - -# define BAT_LEVEL_LED_LIST \ - { 18, 19, 20, 21, 22, 23, 24, 25, 26, 27 } - -/* 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 - -/* Reinit LED driver on tranport changed */ -# define REINIT_LED_DRIVER 1 - -# endif - -/* Keep USB connection in blueooth mode */ -# define KEEP_USB_CONNECTION_IN_WIRELESS_MODE - -/* Enable bluetooth NKRO */ -# define WIRELESS_NKRO_ENABLE -#endif - -/* Factory test keys */ -#define FN_KEY_1 MO(1) -#define FN_KEY_2 MO(3) - -#define MATRIX_IO_DELAY 10 diff --git a/keyboards/keychron/q5_max/firmware/keychron_q5_max_ansi_encoder_via.bin b/keyboards/keychron/q5_max/firmware/keychron_q5_max_ansi_encoder_via.bin deleted file mode 100644 index ac3d2a5117..0000000000 Binary files a/keyboards/keychron/q5_max/firmware/keychron_q5_max_ansi_encoder_via.bin and /dev/null differ diff --git a/keyboards/keychron/q5_max/halconf.h b/keyboards/keychron/q5_max/halconf.h deleted file mode 100644 index 37bcc7c47b..0000000000 --- a/keyboards/keychron/q5_max/halconf.h +++ /dev/null @@ -1,31 +0,0 @@ -/* Copyright 2024 @ 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 - -#define _CHIBIOS_HAL_CONF_VER_8_0_ - -#define HAL_USE_SPI TRUE - -#ifdef LK_WIRELESS_ENABLE -# define HAL_USE_RTC TRUE -#endif - -#if defined(LK_WIRELESS_ENABLE) || defined(ENCODER_ENABLE) -# define PAL_USE_CALLBACKS TRUE -#endif - -#include_next diff --git a/keyboards/keychron/q5_max/info.json b/keyboards/keychron/q5_max/info.json deleted file mode 100644 index e589981b7c..0000000000 --- a/keyboards/keychron/q5_max/info.json +++ /dev/null @@ -1,77 +0,0 @@ -{ - "keyboard_name": "Keychron Q5 Max", - "manufacturer": "Keychron", - "url": "https://github.com/Keychron", - "maintainer": "lokher", - "processor": "STM32F401", - "bootloader": "stm32-dfu", - "usb": { - "vid": "0x3434" - }, - "features": { - "bootmagic": true, - "extrakey" : true, - "mousekey" : true, - "dip_switch" : true, - "encoder": true, - "encoder_map": true, - "nkro" : true, - "rgb_matrix": true, - "raw" : true, - "send_string": true - }, - "matrix_pins": { - "cols": ["C6", "C7", "C8", "A14", "A15", "C10", "C11", "C13", "C14", "C15", "C0", "C1", "C2", "C3", "A0", "A1", "A2", "A3", "B10"], - "rows": ["C12", "D2", "B3", "B4", "B5", "B6"] - }, - "diode_direction": "ROW2COL", - "encoder": { - "rotary": [ - { - "pin_a": "B14", - "pin_b": "B15" - } - ] - }, - "dip_switch" :{ - "pins": ["B12"] - }, - "rgb_matrix": { - "driver": "snled27351_spi", - "sleep": true, - "animations": { - "band_spiral_val": true, - "breathing": true, - "cycle_all": true, - "cycle_left_right": true, - "cycle_out_in": true, - "cycle_out_in_dual": true, - "cycle_pinwheel": true, - "cycle_spiral": true, - "cycle_up_down": true, - "digital_rain": true, - "dual_beacon": true, - "jellybean_raindrops": true, - "pixel_rain": true, - "rainbow_beacon": true, - "rainbow_moving_chevron": true, - "solid_reactive_multinexus": true, - "solid_reactive_multiwide": true, - "solid_reactive_simple": true, - "solid_splash": true, - "splash": true, - "typing_heatmap": true - } - }, - "eeprom": { - "wear_leveling": { - "driver": "embedded_flash", - "logical_size": 2048, - "backing_size": 4096 - } - }, - "build": { - "debounce_type": "sym_eager_pk" - }, - "debounce": 20 -} diff --git a/keyboards/keychron/q5_max/iso_encoder/config.h b/keyboards/keychron/q5_max/iso_encoder/config.h deleted file mode 100644 index 86516ee40c..0000000000 --- a/keyboards/keychron/q5_max/iso_encoder/config.h +++ /dev/null @@ -1,46 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#pragma once - -#ifdef RGB_MATRIX_ENABLE -/* RGB Matrix driver configuration */ -# define RGB_MATRIX_LED_COUNT 102 -# define DRIVER_COUNT 2 -# define DRIVER_CS_PINS \ - { B8, B9 } - -/* Set LED driver current */ -# define SNLED27351_CURRENT_TUNE \ - { 0x2C, 0x2C, 0x2C, 0x2C, 0x2C, 0x2C, 0x2C, 0x2C, 0x2C, 0x2C, 0x2C, 0x2C } - -/* Set to infinit, which is use in USB mode by default */ -# define RGB_MATRIX_TIMEOUT RGB_MATRIX_TIMEOUT_INFINITE -/* Allow shutdown of led driver to save power */ -# define RGB_MATRIX_DRIVER_SHUTDOWN_ENABLE -/* Turn off backlight on low brightness to save power */ -# define RGB_MATRIX_BRIGHTNESS_TURN_OFF_VAL 32 - -/* Indications */ -# define NUM_LOCK_INDEX 32 -# define CAPS_LOCK_INDEX 55 -# define LOW_BAT_IND_INDEX \ - { 93 } - -# define RGB_MATRIX_KEYPRESSES -# define RGB_MATRIX_FRAMEBUFFER_EFFECTS - -#endif diff --git a/keyboards/keychron/q5_max/iso_encoder/info.json b/keyboards/keychron/q5_max/iso_encoder/info.json deleted file mode 100644 index f26b692f28..0000000000 --- a/keyboards/keychron/q5_max/iso_encoder/info.json +++ /dev/null @@ -1,120 +0,0 @@ -{ - "usb": { - "pid": "0x0851", - "device_version": "1.0.0" - }, - "layouts": { - "LAYOUT_iso_102": { - "layout": [ - {"matrix": [0, 0], "x": 0, "y": 0}, - {"matrix": [0, 1], "x": 2, "y": 0}, - {"matrix": [0, 2], "x": 3, "y": 0}, - {"matrix": [0, 3], "x": 4, "y": 0}, - {"matrix": [0, 4], "x": 5, "y": 0}, - {"matrix": [0, 5], "x": 6.5, "y": 0}, - {"matrix": [0, 6], "x": 7.5, "y": 0}, - {"matrix": [0, 7], "x": 8.5, "y": 0}, - {"matrix": [0, 8], "x": 9.5, "y": 0}, - {"matrix": [0, 9], "x": 11, "y": 0}, - {"matrix": [0, 10], "x": 12, "y": 0}, - {"matrix": [0, 11], "x": 13, "y": 0}, - {"matrix": [0, 12], "x": 14, "y": 0}, - {"matrix": [0, 13], "x": 15.25, "y": 0}, - {"matrix": [0, 15], "x": 16.5, "y": 0}, - {"matrix": [0, 16], "x": 17.5, "y": 0}, - {"matrix": [0, 17], "x": 18.5, "y": 0}, - {"matrix": [0, 18], "x": 19.5, "y": 0}, - - {"matrix": [1, 0], "x": 0, "y": 1.25}, - {"matrix": [1, 1], "x": 1, "y": 1.25}, - {"matrix": [1, 2], "x": 2, "y": 1.25}, - {"matrix": [1, 3], "x": 3, "y": 1.25}, - {"matrix": [1, 4], "x": 4, "y": 1.25}, - {"matrix": [1, 5], "x": 5, "y": 1.25}, - {"matrix": [1, 6], "x": 6, "y": 1.25}, - {"matrix": [1, 7], "x": 7, "y": 1.25}, - {"matrix": [1, 8], "x": 8, "y": 1.25}, - {"matrix": [1, 9], "x": 9, "y": 1.25}, - {"matrix": [1, 10], "x": 10, "y": 1.25}, - {"matrix": [1, 11], "x": 11, "y": 1.25}, - {"matrix": [1, 12], "x": 12, "y": 1.25}, - {"matrix": [1, 13], "x": 13, "y": 1.25, "w": 2}, - {"matrix": [1, 14], "x": 15.25, "y": 1.25}, - {"matrix": [1, 15], "x": 16.5, "y": 1.25}, - {"matrix": [1, 16], "x": 17.5, "y": 1.25}, - {"matrix": [1, 17], "x": 18.5, "y": 1.25}, - {"matrix": [1, 18], "x": 19.5, "y": 1.25}, - - {"matrix": [2, 0], "x": 0, "y": 2.25, "w": 1.5}, - {"matrix": [2, 1], "x": 1.5, "y": 2.25}, - {"matrix": [2, 2], "x": 2.5, "y": 2.25}, - {"matrix": [2, 3], "x": 3.5, "y": 2.25}, - {"matrix": [2, 4], "x": 4.5, "y": 2.25}, - {"matrix": [2, 5], "x": 5.5, "y": 2.25}, - {"matrix": [2, 6], "x": 6.5, "y": 2.25}, - {"matrix": [2, 7], "x": 7.5, "y": 2.25}, - {"matrix": [2, 8], "x": 8.5, "y": 2.25}, - {"matrix": [2, 9], "x": 9.5, "y": 2.25}, - {"matrix": [2, 10], "x": 10.5, "y": 2.25}, - {"matrix": [2, 11], "x": 11.5, "y": 2.25}, - {"matrix": [2, 12], "x": 12.5, "y": 2.25}, - {"matrix": [2, 14], "x": 15.25, "y": 2.25}, - {"matrix": [2, 15], "x": 16.5, "y": 2.25}, - {"matrix": [2, 16], "x": 17.5, "y": 2.25}, - {"matrix": [2, 17], "x": 18.5, "y": 2.25}, - - {"matrix": [3, 0], "x": 0, "y": 3.25, "w": 1.75}, - {"matrix": [3, 1], "x": 1.75, "y": 3.25}, - {"matrix": [3, 2], "x": 2.75, "y": 3.25}, - {"matrix": [3, 3], "x": 3.75, "y": 3.25}, - {"matrix": [3, 4], "x": 4.75, "y": 3.25}, - {"matrix": [3, 5], "x": 5.75, "y": 3.25}, - {"matrix": [3, 6], "x": 6.75, "y": 3.25}, - {"matrix": [3, 7], "x": 7.75, "y": 3.25}, - {"matrix": [3, 8], "x": 8.75, "y": 3.25}, - {"matrix": [3, 9], "x": 9.75, "y": 3.25}, - {"matrix": [3, 10], "x": 10.75, "y": 3.25}, - {"matrix": [3, 11], "x": 11.75, "y": 3.25}, - {"matrix": [3, 12], "x": 12.75, "y": 3.25}, - {"matrix": [2, 13], "x": 13.75, "y": 2.25, "w":1.25, "h":2}, - {"matrix": [3, 13], "x": 15.25, "y": 3.25}, - {"matrix": [3, 15], "x": 16.5, "y": 3.25}, - {"matrix": [3, 16], "x": 17.5, "y": 3.25}, - {"matrix": [3, 17], "x": 18.5, "y": 3.25}, - {"matrix": [2, 18], "x": 19.5, "y": 2.25, "h": 2}, - - {"matrix": [4, 0], "x": 0, "y": 4.25, "w":1.25}, - {"matrix": [4, 1], "x": 1.25, "y": 4.25}, - {"matrix": [4, 2], "x": 2.25, "y": 4.25}, - {"matrix": [4, 3], "x": 3.25, "y": 4.25}, - {"matrix": [4, 4], "x": 4.25, "y": 4.25}, - {"matrix": [4, 5], "x": 5.25, "y": 4.25}, - {"matrix": [4, 6], "x": 6.25, "y": 4.25}, - {"matrix": [4, 7], "x": 7.25, "y": 4.25}, - {"matrix": [4, 8], "x": 8.25, "y": 4.25}, - {"matrix": [4, 9], "x": 9.25, "y": 4.25}, - {"matrix": [4, 10], "x": 10.25, "y": 4.25}, - {"matrix": [4, 11], "x": 11.25, "y": 4.25}, - {"matrix": [4, 12], "x": 12.25, "y": 4.25, "w": 1.75}, - {"matrix": [4, 13], "x": 14.25, "y": 4.5}, - {"matrix": [4, 15], "x": 16.5, "y": 4.25}, - {"matrix": [4, 16], "x": 17.5, "y": 4.25}, - {"matrix": [4, 17], "x": 18.5, "y": 4.25}, - - {"matrix": [5, 0], "x": 0, "y": 5.25, "w": 1.25}, - {"matrix": [5, 1], "x": 1.25, "y": 5.25, "w": 1.25}, - {"matrix": [5, 2], "x": 2.5, "y": 5.25, "w": 1.25}, - {"matrix": [5, 6], "x": 3.75, "y": 5.25, "w": 6.25}, - {"matrix": [5, 9], "x": 10, "y": 5.25}, - {"matrix": [5, 10], "x": 11, "y": 5.25}, - {"matrix": [5, 11], "x": 12, "y": 5.25}, - {"matrix": [5, 12], "x": 13.25, "y": 5.5}, - {"matrix": [5, 13], "x": 14.25, "y": 5.5}, - {"matrix": [5, 14], "x": 15.25, "y": 5.5}, - {"matrix": [5, 16], "x": 16.5, "y": 5.25, "w": 2}, - {"matrix": [5, 17], "x": 18.5, "y": 5.25}, - {"matrix": [4, 18], "x": 19.5, "y": 4.25, "h": 2} - ] - } - } -} diff --git a/keyboards/keychron/q5_max/iso_encoder/iso_encoder.c b/keyboards/keychron/q5_max/iso_encoder/iso_encoder.c deleted file mode 100644 index 752e1f2366..0000000000 --- a/keyboards/keychron/q5_max/iso_encoder/iso_encoder.c +++ /dev/null @@ -1,169 +0,0 @@ -/* Copyright 2024 @ 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/>. - */ - -#include "quantum.h" - -// clang-format off - -#ifdef RGB_MATRIX_ENABLE -const snled27351_led_t g_snled27351_leds[RGB_MATRIX_LED_COUNT] = { -/* Refer to SNLED27351 manual for these locations - * driver - * | R location - * | | G location - * | | | B location - * | | | | */ - {0, G_15, I_15, H_15}, - {0, G_14, I_14, H_14}, - {0, G_13, I_13, H_13}, - {0, G_12, I_12, H_12}, - {0, G_11, I_11, H_11}, - {0, G_10, I_10, H_10}, - {0, G_9, I_9, H_9}, - {0, G_8, I_8, H_8}, - {0, G_7, I_7, H_7}, - {0, G_6, I_6, H_6}, - {0, G_5, I_5, H_5}, - {0, G_4, I_4, H_4}, - {0, G_3, I_3, H_3}, - {0, G_2, I_2, H_2}, - {0, D_4, F_4, E_4}, - {0, D_3, F_3, E_3}, - {0, D_2, F_2, E_2}, - - {0, A_15, C_15, B_15}, - {0, A_14, C_14, B_14}, - {0, A_13, C_13, B_13}, - {0, A_12, C_12, B_12}, - {0, A_11, C_11, B_11}, - {0, A_10, C_10, B_10}, - {0, A_9, C_9, B_9}, - {0, A_8, C_8, B_8}, - {0, A_7, C_7, B_7}, - {0, A_6, C_6, B_6}, - {0, A_5, C_5, B_5}, - {0, A_4, C_4, B_4}, - {0, A_3, C_3, B_3}, - {0, A_2, C_2, B_2}, - {0, A_1, C_1, B_1}, - {0, D_8, F_8, E_8}, - {0, D_7, F_7, E_7}, - {0, D_6, F_6, E_6}, - {0, D_5, F_5, E_5}, - - {0, J_15, L_15, K_15}, - {0, J_14, L_14, K_14}, - {0, J_13, L_13, K_13}, - {0, J_12, L_12, K_12}, - {0, J_11, L_11, K_11}, - {0, J_10, L_10, K_10}, - {0, J_9, L_9, K_9}, - {0, J_8, L_8, K_8}, - {0, J_7, L_7, K_7}, - {0, J_6, L_6, K_6}, - {0, J_5, L_5, K_5}, - {0, J_4, L_4, K_4}, - {0, J_3, L_3, K_3}, - {0, J_2, L_2, K_2}, - {0, J_1, L_1, K_1}, - {0, D_12, F_12, E_12}, - {0, D_11, F_11, E_11}, - {0, D_10, F_10, E_10}, - {0, D_9, F_9, E_9}, - - {1, A_15, C_15, B_15}, - {1, A_14, C_14, B_14}, - {1, A_13, C_13, B_13}, - {1, A_12, C_12, B_12}, - {1, A_11, C_11, B_11}, - {1, A_10, C_10, B_10}, - {1, A_9, C_9, B_9}, - {1, A_8, C_8, B_8}, - {1, A_7, C_7, B_7}, - {1, A_6, C_6, B_6}, - {1, A_5, C_5, B_5}, - {1, A_4, C_4, B_4}, - {1, A_3, C_3, B_3}, - {1, A_2, C_2, B_2}, - {1, J_9, L_9, K_9}, - {1, J_8, L_8, K_8}, - {1, J_7, L_7, K_7}, - - {1, G_15, I_15, H_15}, - {1, G_14, I_14, H_14}, - {1, G_13, I_13, H_13}, - {1, G_12, I_12, H_12}, - {1, G_11, I_11, H_11}, - {1, G_10, I_10, H_10}, - {1, G_9, I_9, H_9}, - {1, G_8, I_8, H_8}, - {1, G_7, I_7, H_7}, - {1, G_6, I_6, H_6}, - {1, G_5, I_5, H_5}, - {1, G_4, I_4, H_4}, - {1, G_3, I_3, H_3}, - {1, G_2, I_2, H_2}, - {1, J_6, L_6, K_6}, - {1, J_5, L_5, K_5}, - {1, J_4, L_4, K_4}, - {1, J_3, L_3, K_3}, - - {1, D_15, F_15, E_15}, - {1, D_14, F_14, E_14}, - {1, D_13, F_13, E_13}, - {1, D_9, F_9, E_9}, - {1, D_6, F_6, E_6}, - {1, D_5, F_5, E_5}, - {1, D_4, F_4, E_4}, - {1, D_3, F_3, E_3}, - {1, D_2, F_2, E_2}, - {1, D_1, F_1, E_1}, - {1, J_2, L_2, K_2}, - {1, J_1, L_1, K_1}, -}; - -#define __ NO_LED - -led_config_t g_led_config = { - { - // Key Matrix to LED Index - { 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, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54 }, - { 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, __, 69, 70, 71, __ }, - { 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, __, 86, 87, 88, 89 }, - { 90, 91, 92, __, __, __, 93, __, __, 94, 95, 96, 97, 98, 99, __, 100, 101, __ }, - }, - { - // LED Index to Physical Position - {0, 0}, {23, 0}, {34, 0}, {46, 0}, {57, 0}, {75, 0}, {86, 0}, {98, 0}, {109, 0}, {127, 0}, {138, 0}, {150, 0}, {161, 0}, {175, 0}, {189, 0}, {201, 0}, {212, 0}, - {0,15}, {12,15}, {23,15}, {35,15}, {46,15}, {58,15}, {69,15}, {81,15}, { 92,15}, {104,15}, {115,15}, {127,15}, {138,15}, {155,15}, {175,15}, {189,15}, {201,15}, {212,15}, {224,15}, - {3,26}, {17,26}, {29,26}, {40,26}, {52,26}, {63,26}, {75,26}, {86,26}, { 98,26}, {109,26}, {121,26}, {132,26}, {144,26}, {158,26}, {175,26}, {189,26}, {201,26}, {212,26}, {224,32}, - {4,38}, {20,38}, {32,38}, {43,38}, {55,38}, {66,38}, {78,38}, {89,38}, {101,38}, {112,38}, {124,38}, {135,38}, {154,38}, {175,38}, {189,38}, {201,38}, {212,38}, - {2,50}, {15,50}, {26,50}, {37,50}, {49,50}, {60,50}, {72,50}, {83,50}, { 95,50}, {106,50}, {118,50}, {129,50}, {145,50}, {164,52}, {189,50}, {201,50}, {212,50}, {224,55}, - {1,61}, {16,61}, {30,61}, {73,61}, {115,61}, {126,61}, {138,61}, {152,64}, {164,64}, {175,64}, {195,61}, {212,61}, - }, - { - // RGB LED Index to Flag - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - } -}; -#endif diff --git a/keyboards/keychron/q5_max/iso_encoder/keymaps/default/keymap.c b/keyboards/keychron/q5_max/iso_encoder/keymaps/default/keymap.c deleted file mode 100644 index 9a46244935..0000000000 --- a/keyboards/keychron/q5_max/iso_encoder/keymaps/default/keymap.c +++ /dev/null @@ -1,77 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#include QMK_KEYBOARD_H -#include "keychron_common.h" - -enum layers { - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN, -}; - -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_iso_102( - KC_ESC, KC_BRID, KC_BRIU, KC_MCTRL, KC_LNPAD, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_DEL, KC_F13, KC_F14 , KC_F15, KC_MUTE, - KC_GRV, 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_PGUP, KC_NUM, KC_PSLS, KC_PAST, KC_PMNS, - 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_PGDN, KC_P7, KC_P8, KC_P9, - 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_NUHS, KC_ENT, KC_HOME, KC_P4, KC_P5, KC_P6, KC_PPLS, - KC_LSFT, KC_NUBS, 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_P1, KC_P2, KC_P3, - KC_LCTL, KC_LOPTN, KC_LCMMD, KC_SPC, KC_RCMMD, MO(MAC_FN), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT, KC_P0, KC_PDOT, KC_PENT), - - [MAC_FN] = LAYOUT_iso_102( - _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, _______, _______, RGB_TOG, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, KC_END, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - - [WIN_BASE] = LAYOUT_iso_102( - KC_ESC, 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_DEL, _______, _______, _______, KC_MUTE, - KC_GRV, 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_PGUP, KC_NUM, KC_PSLS, KC_PAST, KC_PMNS, - 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_PGDN, KC_P7, KC_P8, KC_P9, - 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_NUHS, KC_ENT, KC_HOME, KC_P4, KC_P5, KC_P6, KC_PPLS, - KC_LSFT, KC_NUBS, 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_P1, KC_P2, KC_P3, - KC_LCTL, KC_LWIN, KC_LALT, KC_SPC, KC_RALT, MO(WIN_FN), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT, KC_P0, KC_PDOT, KC_PENT), - - [WIN_FN] = LAYOUT_iso_102( - _______, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, _______, _______, RGB_TOG, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, KC_END, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), -}; - -// clang-format on -#if defined(ENCODER_MAP_ENABLE) -const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][2] = { - [MAC_BASE] = {ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [MAC_FN] = {ENCODER_CCW_CW(RGB_VAD, RGB_VAI)}, - [WIN_BASE] = {ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [WIN_FN] = {ENCODER_CCW_CW(RGB_VAD, RGB_VAI)}, -}; -#endif // ENCODER_MAP_ENABLE - -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - if (!process_record_keychron_common(keycode, record)) { - return false; - } - return true; -} diff --git a/keyboards/keychron/q5_max/iso_encoder/keymaps/via/keymap.c b/keyboards/keychron/q5_max/iso_encoder/keymaps/via/keymap.c deleted file mode 100644 index 9a46244935..0000000000 --- a/keyboards/keychron/q5_max/iso_encoder/keymaps/via/keymap.c +++ /dev/null @@ -1,77 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#include QMK_KEYBOARD_H -#include "keychron_common.h" - -enum layers { - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN, -}; - -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_iso_102( - KC_ESC, KC_BRID, KC_BRIU, KC_MCTRL, KC_LNPAD, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_DEL, KC_F13, KC_F14 , KC_F15, KC_MUTE, - KC_GRV, 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_PGUP, KC_NUM, KC_PSLS, KC_PAST, KC_PMNS, - 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_PGDN, KC_P7, KC_P8, KC_P9, - 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_NUHS, KC_ENT, KC_HOME, KC_P4, KC_P5, KC_P6, KC_PPLS, - KC_LSFT, KC_NUBS, 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_P1, KC_P2, KC_P3, - KC_LCTL, KC_LOPTN, KC_LCMMD, KC_SPC, KC_RCMMD, MO(MAC_FN), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT, KC_P0, KC_PDOT, KC_PENT), - - [MAC_FN] = LAYOUT_iso_102( - _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, _______, _______, RGB_TOG, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, KC_END, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - - [WIN_BASE] = LAYOUT_iso_102( - KC_ESC, 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_DEL, _______, _______, _______, KC_MUTE, - KC_GRV, 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_PGUP, KC_NUM, KC_PSLS, KC_PAST, KC_PMNS, - 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_PGDN, KC_P7, KC_P8, KC_P9, - 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_NUHS, KC_ENT, KC_HOME, KC_P4, KC_P5, KC_P6, KC_PPLS, - KC_LSFT, KC_NUBS, 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_P1, KC_P2, KC_P3, - KC_LCTL, KC_LWIN, KC_LALT, KC_SPC, KC_RALT, MO(WIN_FN), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT, KC_P0, KC_PDOT, KC_PENT), - - [WIN_FN] = LAYOUT_iso_102( - _______, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, _______, _______, RGB_TOG, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, KC_END, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), -}; - -// clang-format on -#if defined(ENCODER_MAP_ENABLE) -const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][2] = { - [MAC_BASE] = {ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [MAC_FN] = {ENCODER_CCW_CW(RGB_VAD, RGB_VAI)}, - [WIN_BASE] = {ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [WIN_FN] = {ENCODER_CCW_CW(RGB_VAD, RGB_VAI)}, -}; -#endif // ENCODER_MAP_ENABLE - -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - if (!process_record_keychron_common(keycode, record)) { - return false; - } - return true; -} diff --git a/keyboards/keychron/q5_max/iso_encoder/keymaps/via/rules.mk b/keyboards/keychron/q5_max/iso_encoder/keymaps/via/rules.mk deleted file mode 100644 index 1e5b99807c..0000000000 --- a/keyboards/keychron/q5_max/iso_encoder/keymaps/via/rules.mk +++ /dev/null @@ -1 +0,0 @@ -VIA_ENABLE = yes diff --git a/keyboards/keychron/q5_max/iso_encoder/rules.mk b/keyboards/keychron/q5_max/iso_encoder/rules.mk deleted file mode 100644 index 7ff128fa69..0000000000 --- a/keyboards/keychron/q5_max/iso_encoder/rules.mk +++ /dev/null @@ -1 +0,0 @@ -# This file intentionally left blank \ No newline at end of file diff --git a/keyboards/keychron/q5_max/mcuconf.h b/keyboards/keychron/q5_max/mcuconf.h deleted file mode 100644 index 89294ee64b..0000000000 --- a/keyboards/keychron/q5_max/mcuconf.h +++ /dev/null @@ -1,37 +0,0 @@ -/* Copyright 2024 @ 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 - -#include_next - -#undef STM32_HSECLK -#define STM32_HSECLK 16000000 - -#undef STM32_PLLM_VALUE -#define STM32_PLLM_VALUE 8 - -#undef STM32_PLLN_VALUE -#define STM32_PLLN_VALUE 96 - -#undef STM32_PLLP_VALUE -#define STM32_PLLP_VALUE 4 - -#undef STM32_PLLQ_VALUE -#define STM32_PLLQ_VALUE 4 - -#undef STM32_SPI_USE_SPI1 -#define STM32_SPI_USE_SPI1 TRUE diff --git a/keyboards/keychron/q5_max/q5_max.c b/keyboards/keychron/q5_max/q5_max.c deleted file mode 100644 index be569dd189..0000000000 --- a/keyboards/keychron/q5_max/q5_max.c +++ /dev/null @@ -1,62 +0,0 @@ -/* Copyright 2024 @ 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/>. - */ - -#include "quantum.h" -#include "keychron_task.h" -#ifdef FACTORY_TEST_ENABLE -# include "factory_test.h" -# include "keychron_common.h" -#endif -#ifdef LK_WIRELESS_ENABLE -# include "lkbt51.h" -# include "wireless.h" -# include "keychron_wireless_common.h" -# include "battery.h" -#endif - - -#ifdef DIP_SWITCH_ENABLE -bool dip_switch_update_kb(uint8_t index, bool active) { - if (index == 0) { - default_layer_set(1UL << (active ? 2 : 0)); - } - dip_switch_update_user(index, active); - - return true; -} -#endif - -void keyboard_post_init_kb(void) { -#ifdef LK_WIRELESS_ENABLE - palSetLineMode(P2P4_MODE_SELECT_PIN, PAL_MODE_INPUT); - palSetLineMode(BT_MODE_SELECT_PIN, PAL_MODE_INPUT); - - lkbt51_init(false); - wireless_init(); -#endif - -#ifdef ENCODER_ENABLE - encoder_cb_init(); -#endif - - keyboard_post_init_user(); -} - -#ifdef LK_WIRELESS_ENABLE -bool lpm_is_kb_idle(void) { - return !factory_reset_indicating(); -} -#endif diff --git a/keyboards/keychron/q5_max/readme.md b/keyboards/keychron/q5_max/readme.md deleted file mode 100644 index 5db708912c..0000000000 --- a/keyboards/keychron/q5_max/readme.md +++ /dev/null @@ -1,23 +0,0 @@ -# Keychron Q5 Max - -![Keychron Q5 Max](https://cdn.shopify.com/s/files/1/0059/0630/1017/files/Q5-Max-1.jpg?v=1703736781) - -A customizable 98% keyboard. - -* Keyboard Maintainer: [Keychron](https://github.com/keychron) -* Hardware Supported: Keychron Q5 Max -* Hardware Availability: [Keychron Q5 Max QMK/VIA Wireless Custom Mechanical Keyboard](https://www.keychron.com/products/keychron-q5-max-qmk-via-wireless-custom-mechanical-keyboard) - -Make example for this keyboard (after setting up your build environment): - - make keychron/q5_max/ansi_encoder:default - make keychron/q5_max/iso_encoder:default - -Flashing example for this keyboard: - - make keychron/q5_max/ansi_encoder:default:flash - make keychron/q5_max/iso_encoder:default:flash - -**Reset Key**: Toggle mode switch to "Cable", hold down the *Esc* key or reset button underneath space bar while connecting the USB cable, - -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). diff --git a/keyboards/keychron/q5_max/rules.mk b/keyboards/keychron/q5_max/rules.mk deleted file mode 100644 index 4eaf6820bc..0000000000 --- a/keyboards/keychron/q5_max/rules.mk +++ /dev/null @@ -1,4 +0,0 @@ -include keyboards/keychron/common/wireless/wireless.mk -include keyboards/keychron/common/keychron_common.mk - -VPATH += $(TOP_DIR)/keyboards/keychron diff --git a/keyboards/keychron/q5_max/via_json/q5_max_ansi_encoder.json b/keyboards/keychron/q5_max/via_json/q5_max_ansi_encoder.json deleted file mode 100644 index 94a5028c36..0000000000 --- a/keyboards/keychron/q5_max/via_json/q5_max_ansi_encoder.json +++ /dev/null @@ -1,339 +0,0 @@ -{ - "name": "Keychron Q5 Max ANSI Knob", - "vendorId": "0x3434", - "productId": "0x0850", - "keycodes": ["qmk_lighting"], - "menus": [ - { - "label": "Lighting", - "content": [ - { - "label": "Backlight", - "content": [ - { - "label": "Brightness", - "type": "range", - "options": [0, 255], - "content": ["id_qmk_rgb_matrix_brightness", 3, 1] - }, - { - "label": "Effect", - "type": "dropdown", - "content": ["id_qmk_rgb_matrix_effect", 3, 2], - "options": [ - ["None", 0], - ["Solid Color", 1], - ["Breathing", 2], - ["Band Spiral Val", 3], - ["Cycle All", 4], - ["Cycle Left Right", 5], - ["Cycle Up Down", 6], - ["Rainbow Moving Chevron", 7], - ["Cycle Out In", 8], - ["Cycle Out In Dual", 9], - ["Cycle Pinwheel", 10], - ["Cycle Spiral", 11], - ["Dual Beacon", 12], - ["Rainbow Beacon", 13], - ["Jellybean Raindrops", 14], - ["Pixel Rain", 15], - ["Typing Heatmap", 16], - ["Digital Rain", 17], - ["Reactive Simple", 18], - ["Reactive Multiwide", 19], - ["Reactive Multinexus", 20], - ["Splash", 21], - ["Solid Splash", 22] - ] - }, - { - "showIf": "{id_qmk_rgb_matrix_effect} > 1", - "label": "Effect Speed", - "type": "range", - "options": [0, 255], - "content": ["id_qmk_rgb_matrix_effect_speed", 3, 3] - }, - { - "showIf": "{id_qmk_rgb_matrix_effect} != 0 && ( {id_qmk_rgb_matrix_effect} < 4 || {id_qmk_rgb_matrix_effect} == 18 || ({id_qmk_rgb_matrix_effect} > 17 && {id_qmk_rgb_matrix_effect} != 21) ) ", - "label": "Color", - "type": "color", - "content": ["id_qmk_rgb_matrix_color", 3, 4] - } - ] - } - ] - } - ], - "customKeycodes": [ - {"name": "Left Option", "title": "Left Option", "shortName": "LOpt"}, - {"name": "Right Option", "title": "Right Option", "shortName": "ROpt"}, - {"name": "Left Cmd", "title": "Left Command", "shortName": "LCmd"}, - {"name": "Right Cmd", "title": "Right Command", "shortName": "RCmd"}, - {"name": "Misson Control", "title": "Misson Control in Mac", "shortName": "MCtl"}, - {"name": "Lanuch Pad", "title": "Lanuch Pad in Windows", "shortName": "LPad"}, - {"name": "Task View", "title": "Task View in Windows", "shortName": "Task"}, - {"name": "File Explorer", "title": "File Explorer in Windows", "shortName": "File"}, - {"name": "Screen shot", "title": "Screenshot in macOS", "shortName": "SShot"}, - {"name": "Cortana", "title": "Cortana in Windows", "shortName": "Cortana"}, - {"name": "Siri", "title": "Siri in macOS", "shortName": "Siri"}, - {"name": "Bluetooth Host 1", "title": "Bluetooth Host 1", "shortName": "BTH1"}, - {"name": "Bluetooth Host 2", "title": "Bluetooth Host 2", "shortName": "BTH2"}, - {"name": "Bluetooth Host 3", "title": "Bluetooth Host 3", "shortName": "BTH3"}, - {"name": "2.4G", "title": "2.4G", "shortName": "2.4G"}, - {"name": "Battery Level", "title": "Show battery level", "shortName": "Batt"} - ], - "matrix": {"rows": 6, "cols" : 19}, - "layouts": { - "keymap": [ - [ - { - "c": "#777777" - }, - "0, 0", - { - "x": 1, - "c": "#cccccc" - }, - "0, 1", - "0, 2", - "0, 3", - "0, 4", - { - "x": 0.5, - "c": "#aaaaaa" - }, - "0, 5", - "0, 6", - "0, 7", - "0, 8", - { - "x": 0.5, - "c": "#cccccc" - }, - "0, 9", - "0, 10", - "0, 11", - "0, 12", - { - "x": 0.25, - "c": "#aaaaaa" - }, - "0, 13", - { - "x": 0.25, - "c": "#cccccc" - }, - "0, 15", - "0, 16", - "0, 17", - { - "x": 0.25, - "c": "#aaaaaa" - }, - "0, 18\n\n\n\n\n\n\n\n\ne0" - ], - [ - { - "y": 0.25, - "c": "#aaaaaa" - }, - "1, 0", - { - "c": "#cccccc" - }, - "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": 2, - "c": "#aaaaaa" - }, - "1, 13", - { - "x": 0.25 - }, - "1, 14", - { - "x": 0.25, - "c": "#cccccc" - }, - "1, 15", - "1, 16", - "1, 17", - "1, 18" - ], - [ - { - "w": 1.5, - "c": "#aaaaaa" - }, - "2, 0", - { - "c": "#cccccc" - }, - "2, 1", - "2, 2", - "2, 3", - "2, 4", - "2, 5", - "2, 6", - "2, 7", - "2, 8", - "2, 9", - "2, 10", - "2, 11", - "2, 12", - { - "w": 1.5, - "c": "#aaaaaa" - }, - "2, 13", - { - "x": 0.25 - }, - "2, 14", - { - "x": 0.25, - "c": "#cccccc" - }, - "2, 15", - "2, 16", - "2, 17", - { - "h": 2 - }, - "2, 18" - ], - [ - { - "w": 1.75, - "c": "#aaaaaa" - }, - "3, 0", - { - "c": "#cccccc" - }, - "3, 1", - "3, 2", - "3, 3", - "3, 4", - "3, 5", - "3, 6", - "3, 7", - "3, 8", - "3, 9", - "3, 10", - "3, 11", - { - "w": 2.25, - "c": "#777777" - }, - "3, 12", - { - "x": 0.25, - "c": "#aaaaaa" - }, - "3, 13", - { - "x": 0.25, - "c": "#cccccc" - }, - "3, 15", - "3, 16", - "3, 17" - ], - [ - { - "w": 2.25, - "c": "#aaaaaa" - }, - "4, 0", - { - "c": "#cccccc" - }, - "4, 2", - "4, 3", - "4, 4", - "4, 5", - "4, 6", - "4, 7", - "4, 8", - "4, 9", - "4, 10", - "4, 11", - { - "w": 1.75, - "c": "#aaaaaa" - }, - "4, 12", - { - "x": 0.25, - "y": 0.25, - "c": "#cccccc" - }, - "4, 13", - { - "x": 1.25, - "y": -0.25 - }, - "4, 15", - "4, 16", - "4, 17", - { - "h": 2 - }, - "4, 18" - ], - [ - { - "w": 1.25, - "c": "#aaaaaa" - }, - "5, 0", - { - "w": 1.25 - }, - "5, 1", - { - "w": 1.25 - }, - "5, 2", - { - "w": 6.25, - "c": "#cccccc" - }, - "5, 6", - { - "c": "#aaaaaa" - }, - "5, 9", - "5, 10", - "5, 11", - { - "x": 0.25, - "y": 0.25, - "c": "#cccccc" - }, - "5, 12", - "5, 13", - "5, 14", - { - "x": 0.25, - "y": -0.25, - "w": 2 - }, - "5, 16", - "5, 17" - ] - ] - } -} diff --git a/keyboards/keychron/q5_max/via_json/q5_max_iso_encoder.json b/keyboards/keychron/q5_max/via_json/q5_max_iso_encoder.json deleted file mode 100644 index 8faa3ecefe..0000000000 --- a/keyboards/keychron/q5_max/via_json/q5_max_iso_encoder.json +++ /dev/null @@ -1,339 +0,0 @@ -{ - "name": "Keychron Q5 Max ISO Knob", - "vendorId": "0x3434", - "productId": "0x0851", - "keycodes": ["qmk_lighting"], - "menus": [ - { - "label": "Lighting", - "content": [ - { - "label": "Backlight", - "content": [ - { - "label": "Brightness", - "type": "range", - "options": [0, 255], - "content": ["id_qmk_rgb_matrix_brightness", 3, 1] - }, - { - "label": "Effect", - "type": "dropdown", - "content": ["id_qmk_rgb_matrix_effect", 3, 2], - "options": [ - ["None", 0], - ["Solid Color", 1], - ["Breathing", 2], - ["Band Spiral Val", 3], - ["Cycle All", 4], - ["Cycle Left Right", 5], - ["Cycle Up Down", 6], - ["Rainbow Moving Chevron", 7], - ["Cycle Out In", 8], - ["Cycle Out In Dual", 9], - ["Cycle Pinwheel", 10], - ["Cycle Spiral", 11], - ["Dual Beacon", 12], - ["Rainbow Beacon", 13], - ["Jellybean Raindrops", 14], - ["Pixel Rain", 15], - ["Typing Heatmap", 16], - ["Digital Rain", 17], - ["Reactive Simple", 18], - ["Reactive Multiwide", 19], - ["Reactive Multinexus", 20], - ["Splash", 21], - ["Solid Splash", 22] - ] - }, - { - "showIf": "{id_qmk_rgb_matrix_effect} > 1", - "label": "Effect Speed", - "type": "range", - "options": [0, 255], - "content": ["id_qmk_rgb_matrix_effect_speed", 3, 3] - }, - { - "showIf": "{id_qmk_rgb_matrix_effect} != 0 && ( {id_qmk_rgb_matrix_effect} < 4 || {id_qmk_rgb_matrix_effect} == 18 || ({id_qmk_rgb_matrix_effect} > 17 && {id_qmk_rgb_matrix_effect} != 21) ) ", - "label": "Color", - "type": "color", - "content": ["id_qmk_rgb_matrix_color", 3, 4] - } - ] - } - ] - } - ], - "customKeycodes": [ - {"name": "Left Option", "title": "Left Option", "shortName": "LOpt"}, - {"name": "Right Option", "title": "Right Option", "shortName": "ROpt"}, - {"name": "Left Cmd", "title": "Left Command", "shortName": "LCmd"}, - {"name": "Right Cmd", "title": "Right Command", "shortName": "RCmd"}, - {"name": "Misson Control", "title": "Misson Control in Mac", "shortName": "MCtl"}, - {"name": "Lanuch Pad", "title": "Lanuch Pad in Windows", "shortName": "LPad"}, - {"name": "Task View", "title": "Task View in Windows", "shortName": "Task"}, - {"name": "File Explorer", "title": "File Explorer in Windows", "shortName": "File"}, - {"name": "Screen shot", "title": "Screenshot in macOS", "shortName": "SShot"}, - {"name": "Cortana", "title": "Cortana in Windows", "shortName": "Cortana"}, - {"name": "Siri", "title": "Siri in macOS", "shortName": "Siri"}, - {"name": "Bluetooth Host 1", "title": "Bluetooth Host 1", "shortName": "BTH1"}, - {"name": "Bluetooth Host 2", "title": "Bluetooth Host 2", "shortName": "BTH2"}, - {"name": "Bluetooth Host 3", "title": "Bluetooth Host 3", "shortName": "BTH3"}, - {"name": "2.4G", "title": "2.4G", "shortName": "2.4G"}, - {"name": "Battery Level", "title": "Show battery level", "shortName": "Batt"} - ], - "matrix": {"rows": 6, "cols": 19}, - "layouts": { - "keymap": [ - [ - { - "c": "#777777" - }, - "0,0\nESC", - { - "x": 1, - "c": "#cccccc" - }, - "0,1", - "0,2", - "0,3", - "0,4", - { - "x": 0.5, - "c": "#aaaaaa" - }, - "0,5", - "0,6", - "0,7", - "0,8", - { - "x": 0.5, - "c": "#cccccc" - }, - "0,9", - "0,10", - "0,11", - "0,12", - { - "x": 0.25, - "c": "#aaaaaa" - }, - "0,13", - { - "x": 0.25, - "c": "#cccccc" - }, - "0,15", - "0,16", - "0,17", - "0,18\n\n\n\n\n\n\n\n\ne0" - ], - [ - { - "y": 0.25 - }, - "1,0", - { - "c": "#cccccc" - }, - "1,1", - "1,2", - "1,3", - "1,4", - "1,5", - "1,6", - "1,7", - "1,8", - "1,9", - "1,10", - "1,11", - "1,12", - { - "c": "#aaaaaa", - "w": 2 - }, - "1,13", - { - "x": 0.25 - }, - "1,14", - { - "x": 0.25, - "c": "#cccccc" - }, - "1,15", - "1,16", - "1,17", - "1,18" - ], - [ - { - "c": "#aaaaaa", - "w": 1.5 - }, - "2,0", - { - "c": "#cccccc" - }, - "2,1", - "2,2", - "2,3", - "2,4", - "2,5", - "2,6", - "2,7", - "2,8", - "2,9", - "2,10", - "2,11", - "2,12", - { - "x": 0.25, - "c": "#aaaaaa", - "w": 1.25, - "h": 2, - "w2": 1.5, - "h2": 1, - "x2": -0.25 - }, - "2,13", - { - "x": 0.25 - }, - "2,14", - { - "x": 0.25, - "c": "#cccccc" - }, - "2,15", - "2,16", - "2,17", - { - "h": 2 - }, - "2,18" - ], - [ - { - "c": "#aaaaaa", - "w": 1.75 - }, - "3,0", - { - "c": "#cccccc" - }, - "3,1", - "3,2", - "3,3", - "3,4", - "3,5", - "3,6", - "3,7", - "3,8", - "3,9", - "3,10", - "3,11", - "3,12", - { - "c": "#aaaaaa", - "x": 1.5 - }, - "3,13", - { - "x": 0.25, - "c": "#cccccc" - }, - "3,15", - "3,16", - "3,17" - ], - [ - { - "c": "#aaaaaa", - "w": 1.25 - }, - "4,0", - { - "c": "#cccccc" - }, - "4,1", - "4,2", - "4,3", - "4,4", - "4,5", - "4,6", - "4,7", - "4,8", - "4,9", - "4,10", - "4,11", - { - "c": "#aaaaaa", - "w": 1.75 - }, - "4,12", - { - "x": 2.5, - "c": "#cccccc" - }, - "4,15", - "4,16", - "4,17", - { - "h": 2 - }, - "4,18" - ], - [ - { - "y": -0.75, - "x": 14.25 - }, - "4,13" - ], - [ - { - "y": -0.25, - "c": "#aaaaaa", - "w": 1.25 - }, - "5,0", - { - "w": 1.25 - }, - "5,1", - { - "w": 1.25 - }, - "5,2", - { - "c": "#cccccc", - "w": 6.25 - }, - "5,6", - { - "c": "#aaaaaa" - }, - "5,9", - "5,10", - "5,11", - { - "x": 3.5, - "c": "#cccccc", - "w": 2 - }, - "5,16", - "5,17" - ], - [ - { - "y": -0.75, - "x": 13.25 - }, - "5,12", - "5,13", - "5,14" - ] - ] - } -} diff --git a/keyboards/keychron/q5_pro/ansi_encoder/ansi_encoder.c b/keyboards/keychron/q5_pro/ansi_encoder/ansi_encoder.c deleted file mode 100644 index 932d169ace..0000000000 --- a/keyboards/keychron/q5_pro/ansi_encoder/ansi_encoder.c +++ /dev/null @@ -1,135 +0,0 @@ -/* 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 . - */ - -#include "quantum.h" - -// clang-format off -#ifdef RGB_MATRIX_ENABLE -const snled27351_led_t g_snled27351_leds[RGB_MATRIX_LED_COUNT] = { -/* Refer to snled27351manual for these locations - * driver - * | R location - * | | G location - * | | | B location - * | | | | */ - {0, I_1, G_1, H_1}, - {0, I_3, G_3, H_3}, - {0, I_4, G_4, H_4}, - {0, I_5, G_5, H_5}, - {0, I_6, G_6, H_6}, - {0, I_7, G_7, H_7}, - {0, I_8, G_8, H_8}, - {0, I_9, G_9, H_9}, - {0, I_10, G_10, H_10}, - {0, I_11, G_11, H_11}, - {0, I_12, G_12, H_12}, - {0, I_13, G_13, H_13}, - {0, I_14, G_14, H_14}, - {0, I_16, G_16, H_16}, - {0, L_5, J_5, K_5}, - {0, L_6, J_6, K_6}, - {0, L_7, J_7, K_7}, - - {0, C_1, A_1, B_1}, - {0, C_2, A_2, B_2}, - {0, C_3, A_3, B_3}, - {0, C_4, A_4, B_4}, - {0, C_5, A_5, B_5}, - {0, C_6, A_6, B_6}, - {0, C_7, A_7, B_7}, - {0, C_8, A_8, B_8}, - {0, C_9, A_9, B_9}, - {0, C_10, A_10, B_10}, - {0, C_11, A_11, B_11}, - {0, C_12, A_12, B_12}, - {0, C_13, A_13, B_13}, - {0, C_14, A_14, B_14}, - {0, C_16, A_16, B_16}, - {0, L_9, J_9, K_9}, - {0, L_10, J_10, K_10}, - {0, L_11, J_11, K_11}, - {0, L_12, J_12, K_12}, - - {0, F_1, D_1, E_1}, - {0, F_2, D_2, E_2}, - {0, F_3, D_3, E_3}, - {0, F_4, D_4, E_4}, - {0, F_5, D_5, E_5}, - {0, F_6, D_6, E_6}, - {0, F_7, D_7, E_7}, - {0, F_8, D_8, E_8}, - {0, F_9, D_9, E_9}, - {0, F_10, D_10, E_10}, - {0, F_11, D_11, E_11}, - {0, F_12, D_12, E_12}, - {0, F_13, D_13, E_13}, - {0, F_14, D_14, E_14}, - {0, F_16, D_16, E_16}, - {0, L_13, J_13, K_13}, - {0, L_14, J_14, K_14}, - {0, L_15, J_15, K_15}, - {0, L_16, J_16, K_16}, - - {1, C_16, A_16, B_16}, - {1, C_15, A_15, B_15}, - {1, C_14, A_14, B_14}, - {1, C_13, A_13, B_13}, - {1, C_12, A_12, B_12}, - {1, C_11, A_11, B_11}, - {1, C_10, A_10, B_10}, - {1, C_9, A_9, B_9}, - {1, C_8, A_8, B_8}, - {1, C_7, A_7, B_7}, - {1, C_6, A_6, B_6}, - {1, C_5, A_5, B_5}, - {1, C_3, A_3, B_3}, - {1, C_1, A_1, B_1}, - {1, L_9, J_9, K_9}, - {1, L_8, J_8, K_8}, - {1, L_7, J_7, K_7}, - - {1, I_16, G_16, H_16}, - {1, I_14, G_14, H_14}, - {1, I_13, G_13, H_13}, - {1, I_12, G_12, H_12}, - {1, I_11, G_11, H_11}, - {1, I_10, G_10, H_10}, - {1, I_9, G_9, H_9}, - {1, I_8, G_8, H_8}, - {1, I_7, G_7, H_7}, - {1, I_6, G_6, H_6}, - {1, I_5, G_5, H_5}, - {1, I_3, G_3, H_3}, - {1, I_2, G_2, H_2}, - {1, L_6, J_6, K_6}, - {1, L_5, J_5, K_5}, - {1, L_4, J_4, K_4}, - {1, L_3, J_3, K_3}, - - {1, F_16, D_16, E_16}, - {1, F_15, D_15, E_15}, - {1, F_14, D_14, E_14}, - {1, F_10, D_10, E_10}, - {1, F_6, D_6, E_6}, - {1, F_5, D_5, E_5}, - {1, F_4, D_4, E_4}, - {1, F_3, D_3, E_3}, - {1, F_2, D_2, E_2}, - {1, F_1, D_1, E_1}, - {1, L_2, J_2, K_2}, - {1, L_1, J_1, K_1} -}; -#endif diff --git a/keyboards/keychron/q5_pro/ansi_encoder/config.h b/keyboards/keychron/q5_pro/ansi_encoder/config.h deleted file mode 100644 index 76b82b6486..0000000000 --- a/keyboards/keychron/q5_pro/ansi_encoder/config.h +++ /dev/null @@ -1,50 +0,0 @@ -/* 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 . - */ - -#pragma once - -#ifdef RGB_MATRIX_ENABLE -/* RGB Matrix Driver Configuration */ -# define DRIVER_COUNT 2 -# define DRIVER_ADDR_1 0b1110111 -# define DRIVER_ADDR_2 0b1110100 - -/* RGB Matrix Configuration */ -# define DRIVER_1_LED_TOTAL 55 -# define DRIVER_2_LED_TOTAL 46 -# define RGB_MATRIX_LED_COUNT (DRIVER_1_LED_TOTAL + DRIVER_2_LED_TOTAL) - -/* Set to infinit, which is use in USB mode by default */ -# define RGB_MATRIX_TIMEOUT RGB_MATRIX_TIMEOUT_INFINITE - -/* Allow to shutdown driver to save power */ -# define RGB_MATRIX_DRIVER_SHUTDOWN_ENABLE - -/* Turn off backllit if brightness value is low */ -# define RGB_MATRIX_BRIGHTNESS_TURN_OFF_VAL 48 - -/* Indication led index */ -# define NUM_LOCK_INDEX 32 -# define CAPS_LOCK_INDEX 55 -# define LOW_BAT_IND_INDEX 92 - -# define RGB_MATRIX_FRAMEBUFFER_EFFECTS -# define RGB_MATRIX_KEYPRESSES - -/* Set LED driver current */ -# define SNLED27351_CURRENT_TUNE \ - { 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30 } -#endif diff --git a/keyboards/keychron/q5_pro/ansi_encoder/info.json b/keyboards/keychron/q5_pro/ansi_encoder/info.json deleted file mode 100644 index ad82c46e53..0000000000 --- a/keyboards/keychron/q5_pro/ansi_encoder/info.json +++ /dev/null @@ -1,230 +0,0 @@ -{ - "usb": { - "pid": "0x0650", - "device_version": "1.0.0" - }, - "layouts": { - "LAYOUT_102_ansi": { - "layout": [ - {"matrix":[0,0], "x":0, "y":0}, - {"matrix":[0,2], "x":2, "y":0}, - {"matrix":[0,3], "x":3, "y":0}, - {"matrix":[0,4], "x":4, "y":0}, - {"matrix":[0,5], "x":5, "y":0}, - {"matrix":[0,6], "x":6.5, "y":0}, - {"matrix":[0,7], "x":7.5, "y":0}, - {"matrix":[0,8], "x":8.5, "y":0}, - {"matrix":[0,9], "x":9.5, "y":0}, - {"matrix":[0,10], "x":11, "y":0}, - {"matrix":[0,11], "x":12, "y":0}, - {"matrix":[0,12], "x":13, "y":0}, - {"matrix":[0,13], "x":14, "y":0}, - {"matrix":[0,15], "x":15.25, "y":0}, - {"matrix":[0,16], "x":16.5, "y":0}, - {"matrix":[0,17], "x":17.5, "y":0}, - {"matrix":[0,18], "x":18.5, "y":0}, - {"matrix":[0,19], "x":19.5, "y":0}, - - {"matrix":[1,0], "x":0, "y":1.25}, - {"matrix":[1,1], "x":1, "y":1.25}, - {"matrix":[1,2], "x":2, "y":1.25}, - {"matrix":[1,3], "x":3, "y":1.25}, - {"matrix":[1,4], "x":4, "y":1.25}, - {"matrix":[1,5], "x":5, "y":1.25}, - {"matrix":[1,6], "x":6, "y":1.25}, - {"matrix":[1,7], "x":7, "y":1.25}, - {"matrix":[1,8], "x":8, "y":1.25}, - {"matrix":[1,9], "x":9, "y":1.25}, - {"matrix":[1,10], "x":10, "y":1.25}, - {"matrix":[1,11], "x":11, "y":1.25}, - {"matrix":[1,12], "x":12, "y":1.25}, - {"matrix":[1,13], "x":13, "y":1.25, "w":2}, - {"matrix":[1,15], "x":15.25, "y":1.25}, - {"matrix":[1,16], "x":16.5, "y":1.25}, - {"matrix":[1,17], "x":17.5, "y":1.25}, - {"matrix":[1,18], "x":18.5, "y":1.25}, - {"matrix":[1,19], "x":19.5, "y":1.25}, - - {"matrix":[2,0], "x":0, "y":2.25, "w":1.5}, - {"matrix":[2,1], "x":1.5, "y":2.25}, - {"matrix":[2,2], "x":2.5, "y":2.25}, - {"matrix":[2,3], "x":3.5, "y":2.25}, - {"matrix":[2,4], "x":4.5, "y":2.25}, - {"matrix":[2,5], "x":5.5, "y":2.25}, - {"matrix":[2,6], "x":6.5, "y":2.25}, - {"matrix":[2,7], "x":7.5, "y":2.25}, - {"matrix":[2,8], "x":8.5, "y":2.25}, - {"matrix":[2,9], "x":9.5, "y":2.25}, - {"matrix":[2,10], "x":10.5, "y":2.25}, - {"matrix":[2,11], "x":11.5, "y":2.25}, - {"matrix":[2,12], "x":12.5, "y":2.25}, - {"matrix":[2,13], "x":13.5, "y":2.25, "w":1.5}, - {"matrix":[2,15], "x":15.25, "y":2.25}, - {"matrix":[2,16], "x":16.5, "y":2.25}, - {"matrix":[2,17], "x":17.5, "y":2.25}, - {"matrix":[2,18], "x":18.5, "y":2.25}, - {"matrix":[2,19], "x":19.5, "y":2.25, "h":2}, - - {"matrix":[3,0], "x":0, "y":3.25, "w":1.75}, - {"matrix":[3,1], "x":1.75, "y":3.25}, - {"matrix":[3,2], "x":2.75, "y":3.25}, - {"matrix":[3,3], "x":3.75, "y":3.25}, - {"matrix":[3,4], "x":4.75, "y":3.25}, - {"matrix":[3,5], "x":5.75, "y":3.25}, - {"matrix":[3,6], "x":6.75, "y":3.25}, - {"matrix":[3,7], "x":7.75, "y":3.25}, - {"matrix":[3,8], "x":8.75, "y":3.25}, - {"matrix":[3,9], "x":9.75, "y":3.25}, - {"matrix":[3,10], "x":10.75, "y":3.25}, - {"matrix":[3,11], "x":11.75, "y":3.25}, - {"matrix":[3,13], "x":12.75, "y":3.25, "w":2.25}, - {"matrix":[3,15], "x":15.25, "y":3.25}, - {"matrix":[3,16], "x":16.5, "y":3.25}, - {"matrix":[3,17], "x":17.5, "y":3.25}, - {"matrix":[3,18], "x":18.5, "y":3.25}, - - {"matrix":[4,0], "x":0, "y":4.25, "w":2.25}, - {"matrix":[4,2], "x":2.25, "y":4.25}, - {"matrix":[4,3], "x":3.25, "y":4.25}, - {"matrix":[4,4], "x":4.25, "y":4.25}, - {"matrix":[4,5], "x":5.25, "y":4.25}, - {"matrix":[4,6], "x":6.25, "y":4.25}, - {"matrix":[4,7], "x":7.25, "y":4.25}, - {"matrix":[4,8], "x":8.25, "y":4.25}, - {"matrix":[4,9], "x":9.25, "y":4.25}, - {"matrix":[4,10], "x":10.25, "y":4.25}, - {"matrix":[4,11], "x":11.25, "y":4.25}, - {"matrix":[4,13], "x":12.25, "y":4.25, "w":1.75}, - {"matrix":[4,14], "x":14.25, "y":4.5}, - {"matrix":[4,16], "x":16.5, "y":4.25}, - {"matrix":[4,17], "x":17.5, "y":4.25}, - {"matrix":[4,18], "x":18.5, "y":4.25}, - {"matrix":[4,19], "x":19.5, "y":4.25, "h":2}, - - {"matrix":[5,0], "x":0, "y":5.25, "w":1.25}, - {"matrix":[5,1], "x":1.25, "y":5.25, "w":1.25}, - {"matrix":[5,2], "x":2.5, "y":5.25, "w":1.25}, - {"matrix":[5,6], "x":3.75, "y":5.25, "w":6.25}, - {"matrix":[5,10], "x":10, "y":5.25}, - {"matrix":[5,11], "x":11, "y":5.25}, - {"matrix":[5,12], "x":12, "y":5.25}, - {"matrix":[5,13], "x":13.25, "y":5.5}, - {"matrix":[5,14], "x":14.25, "y":5.5}, - {"matrix":[5,15], "x":15.25, "y":5.5}, - {"matrix":[5,17], "x":16.5, "y":5.25, "w":2}, - {"matrix":[5,18], "x":18.5, "y":5.25} - ] - } - }, - "rgb_matrix": { - "layout": [ - {"matrix":[0, 0], "flags":1, "x":0, "y":0}, - {"matrix":[0, 2], "flags":1, "x":23, "y":0}, - {"matrix":[0, 3], "flags":1, "x":34, "y":0}, - {"matrix":[0, 4], "flags":1, "x":46, "y":0}, - {"matrix":[0, 5], "flags":1, "x":57, "y":0}, - {"matrix":[0, 6], "flags":1, "x":75, "y":0}, - {"matrix":[0, 7], "flags":1, "x":86, "y":0}, - {"matrix":[0, 8], "flags":1, "x":98, "y":0}, - {"matrix":[0, 9], "flags":1, "x":109, "y":0}, - {"matrix":[0, 10], "flags":1, "x":127, "y":0}, - {"matrix":[0, 11], "flags":1, "x":138, "y":0}, - {"matrix":[0, 12], "flags":1, "x":150, "y":0}, - {"matrix":[0, 13], "flags":1, "x":161, "y":0}, - {"matrix":[0, 15], "flags":1, "x":175, "y":0}, - {"matrix":[0, 16], "flags":4, "x":189, "y":0}, - {"matrix":[0, 17], "flags":4, "x":201, "y":0}, - {"matrix":[0, 18], "flags":4, "x":212, "y":0}, - - {"matrix":[1, 0], "flags":1, "x":0, "y":15}, - {"matrix":[1, 1], "flags":8, "x":12, "y":15}, - {"matrix":[1, 2], "flags":8, "x":23, "y":15}, - {"matrix":[1, 3], "flags":8, "x":35, "y":15}, - {"matrix":[1, 4], "flags":4, "x":46, "y":15}, - {"matrix":[1, 5], "flags":4, "x":58, "y":15}, - {"matrix":[1, 6], "flags":4, "x":69, "y":15}, - {"matrix":[1, 7], "flags":4, "x":81, "y":15}, - {"matrix":[1, 8], "flags":4, "x":92, "y":15}, - {"matrix":[1, 9], "flags":4, "x":104, "y":15}, - {"matrix":[1, 10], "flags":4, "x":115, "y":15}, - {"matrix":[1, 11], "flags":4, "x":127, "y":15}, - {"matrix":[1, 12], "flags":4, "x":138, "y":15}, - {"matrix":[1, 13], "flags":1, "x":155, "y":15}, - {"matrix":[1, 15], "flags":1, "x":175, "y":15}, - {"matrix":[1, 16], "flags":8, "x":189, "y":15}, - {"matrix":[1, 17], "flags":4, "x":201, "y":15}, - {"matrix":[1, 18], "flags":4, "x":212, "y":15}, - {"matrix":[1, 19], "flags":4, "x":224, "y":15}, - - {"matrix":[2, 0], "flags":1, "x":3, "y":26}, - {"matrix":[2, 1], "flags":4, "x":17, "y":26}, - {"matrix":[2, 2], "flags":4, "x":29, "y":26}, - {"matrix":[2, 3], "flags":4, "x":40, "y":26}, - {"matrix":[2, 4], "flags":4, "x":52, "y":26}, - {"matrix":[2, 5], "flags":4, "x":63, "y":26}, - {"matrix":[2, 6], "flags":4, "x":75, "y":26}, - {"matrix":[2, 7], "flags":4, "x":86, "y":26}, - {"matrix":[2, 8], "flags":4, "x":98, "y":26}, - {"matrix":[2, 9], "flags":4, "x":109, "y":26}, - {"matrix":[2, 10], "flags":4, "x":121, "y":26}, - {"matrix":[2, 11], "flags":4, "x":132, "y":26}, - {"matrix":[2, 12], "flags":4, "x":144, "y":26}, - {"matrix":[2, 13], "flags":1, "x":158, "y":26}, - {"matrix":[2, 15], "flags":1, "x":175, "y":26}, - {"matrix":[2, 16], "flags":4, "x":189, "y":26}, - {"matrix":[2, 17], "flags":4, "x":201, "y":26}, - {"matrix":[2, 18], "flags":4, "x":212, "y":26}, - {"matrix":[2, 19], "flags":4, "x":224, "y":32}, - - {"matrix":[3, 0], "flags":8, "x":4, "y":38}, - {"matrix":[3, 1], "flags":4, "x":20, "y":38}, - {"matrix":[3, 2], "flags":4, "x":32, "y":38}, - {"matrix":[3, 3], "flags":4, "x":43, "y":38}, - {"matrix":[3, 4], "flags":4, "x":55, "y":38}, - {"matrix":[3, 5], "flags":4, "x":66, "y":38}, - {"matrix":[3, 6], "flags":4, "x":78, "y":38}, - {"matrix":[3, 7], "flags":4, "x":89, "y":38}, - {"matrix":[3, 8], "flags":4, "x":101, "y":38}, - {"matrix":[3, 9], "flags":4, "x":112, "y":38}, - {"matrix":[3, 10], "flags":4, "x":124, "y":38}, - {"matrix":[3, 11], "flags":4, "x":135, "y":38}, - {"matrix":[3, 13], "flags":1, "x":154, "y":38}, - {"matrix":[3, 15], "flags":1, "x":175, "y":38}, - {"matrix":[3, 16], "flags":4, "x":189, "y":38}, - {"matrix":[3, 17], "flags":4, "x":201, "y":38}, - {"matrix":[3, 18], "flags":4, "x":212, "y":38}, - - {"matrix":[4, 0], "flags":1, "x":7, "y":50}, - {"matrix":[4, 2], "flags":4, "x":26, "y":50}, - {"matrix":[4, 3], "flags":4, "x":37, "y":50}, - {"matrix":[4, 4], "flags":4, "x":49, "y":50}, - {"matrix":[4, 5], "flags":4, "x":60, "y":50}, - {"matrix":[4, 6], "flags":4, "x":72, "y":50}, - {"matrix":[4, 7], "flags":4, "x":83, "y":50}, - {"matrix":[4, 8], "flags":4, "x":95, "y":50}, - {"matrix":[4, 9], "flags":4, "x":106, "y":50}, - {"matrix":[4, 10], "flags":4, "x":118, "y":50}, - {"matrix":[4, 11], "flags":4, "x":129, "y":50}, - {"matrix":[4, 13], "flags":1, "x":145, "y":50}, - {"matrix":[4, 14], "flags":1, "x":164, "y":50}, - {"matrix":[4, 16], "flags":4, "x":189, "y":50}, - {"matrix":[4, 17], "flags":4, "x":201, "y":50}, - {"matrix":[4, 18], "flags":4, "x":212, "y":50}, - {"matrix":[4, 19], "flags":4, "x":224, "y":55}, - - {"matrix":[5, 0], "flags":1, "x":1, "y":61}, - {"matrix":[5, 1], "flags":1, "x":16, "y":61}, - {"matrix":[5, 2], "flags":1, "x":30, "y":61}, - {"matrix":[5, 6], "flags":4, "x":73, "y":61}, - {"matrix":[5, 10], "flags":1, "x":115, "y":61}, - {"matrix":[5, 11], "flags":1, "x":126, "y":61}, - {"matrix":[5, 12], "flags":1, "x":138, "y":61}, - {"matrix":[5, 13], "flags":1, "x":152, "y":64}, - {"matrix":[5, 14], "flags":1, "x":164, "y":64}, - {"matrix":[5, 15], "flags":1, "x":175, "y":64}, - {"matrix":[5, 17], "flags":4, "x":195, "y":61}, - {"matrix":[5, 18], "flags":4, "x":212, "y":61} - ] - } -} - diff --git a/keyboards/keychron/q5_pro/ansi_encoder/keymaps/default/keymap.c b/keyboards/keychron/q5_pro/ansi_encoder/keymaps/default/keymap.c deleted file mode 100644 index 23ba5c3678..0000000000 --- a/keyboards/keychron/q5_pro/ansi_encoder/keymaps/default/keymap.c +++ /dev/null @@ -1,65 +0,0 @@ -/* 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 . - */ - -#include QMK_KEYBOARD_H - -enum layers{ - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN, -}; - -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_102_ansi( - KC_ESC, KC_BRID, KC_BRIU, KC_MCTL, KC_LPAD, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_DEL, KC_F13, KC_F14, KC_F15, KC_MUTE, - KC_GRV, 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_PGUP, KC_NUM, KC_PSLS, KC_PAST, KC_PMNS, - 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_PGDN, KC_P7, KC_P8, KC_P9, KC_PPLS, - 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_HOME, KC_P4, KC_P5, KC_P6, - 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_P1, KC_P2, KC_P3, KC_PENT, - KC_LCTL, KC_LOPTN, KC_LCMMD, KC_SPC, KC_RCMMD, MO(MAC_FN), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT, KC_P0, KC_PDOT ), - [MAC_FN] = LAYOUT_102_ansi( - _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, _______, _______, RGB_TOG, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ), - [WIN_BASE] = LAYOUT_102_ansi( - KC_ESC, 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_DEL, KC_F13, KC_F14, KC_F15, KC_MUTE, - KC_GRV, 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_PGUP, KC_NUM, KC_PSLS, KC_PAST, KC_PMNS, - 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_PGDN, KC_P7, KC_P8, KC_P9, KC_PPLS, - 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_HOME, KC_P4, KC_P5, KC_P6, - 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_P1, KC_P2, KC_P3, KC_PENT, - KC_LCTL, KC_LWIN, KC_LALT, KC_SPC, KC_RALT, MO(WIN_FN), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT, KC_P0, KC_PDOT ), - [WIN_FN] = LAYOUT_102_ansi( - _______, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, _______, _______, RGB_TOG, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ), -}; - -#if defined(ENCODER_MAP_ENABLE) -const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][2] = { - [MAC_BASE] = {ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [MAC_FN] = {ENCODER_CCW_CW(RGB_VAD, RGB_VAI)}, - [WIN_BASE] = {ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [WIN_FN] = {ENCODER_CCW_CW(RGB_VAD, RGB_VAI)}, -}; -#endif // ENCODER_MAP_ENABLE diff --git a/keyboards/keychron/q5_pro/ansi_encoder/keymaps/default/rules.mk b/keyboards/keychron/q5_pro/ansi_encoder/keymaps/default/rules.mk deleted file mode 100644 index ee32568148..0000000000 --- a/keyboards/keychron/q5_pro/ansi_encoder/keymaps/default/rules.mk +++ /dev/null @@ -1 +0,0 @@ -ENCODER_MAP_ENABLE = yes diff --git a/keyboards/keychron/q5_pro/ansi_encoder/keymaps/via/keymap.c b/keyboards/keychron/q5_pro/ansi_encoder/keymaps/via/keymap.c deleted file mode 100644 index 23ba5c3678..0000000000 --- a/keyboards/keychron/q5_pro/ansi_encoder/keymaps/via/keymap.c +++ /dev/null @@ -1,65 +0,0 @@ -/* 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 . - */ - -#include QMK_KEYBOARD_H - -enum layers{ - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN, -}; - -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_102_ansi( - KC_ESC, KC_BRID, KC_BRIU, KC_MCTL, KC_LPAD, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_DEL, KC_F13, KC_F14, KC_F15, KC_MUTE, - KC_GRV, 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_PGUP, KC_NUM, KC_PSLS, KC_PAST, KC_PMNS, - 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_PGDN, KC_P7, KC_P8, KC_P9, KC_PPLS, - 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_HOME, KC_P4, KC_P5, KC_P6, - 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_P1, KC_P2, KC_P3, KC_PENT, - KC_LCTL, KC_LOPTN, KC_LCMMD, KC_SPC, KC_RCMMD, MO(MAC_FN), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT, KC_P0, KC_PDOT ), - [MAC_FN] = LAYOUT_102_ansi( - _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, _______, _______, RGB_TOG, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ), - [WIN_BASE] = LAYOUT_102_ansi( - KC_ESC, 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_DEL, KC_F13, KC_F14, KC_F15, KC_MUTE, - KC_GRV, 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_PGUP, KC_NUM, KC_PSLS, KC_PAST, KC_PMNS, - 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_PGDN, KC_P7, KC_P8, KC_P9, KC_PPLS, - 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_HOME, KC_P4, KC_P5, KC_P6, - 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_P1, KC_P2, KC_P3, KC_PENT, - KC_LCTL, KC_LWIN, KC_LALT, KC_SPC, KC_RALT, MO(WIN_FN), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT, KC_P0, KC_PDOT ), - [WIN_FN] = LAYOUT_102_ansi( - _______, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, _______, _______, RGB_TOG, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ), -}; - -#if defined(ENCODER_MAP_ENABLE) -const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][2] = { - [MAC_BASE] = {ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [MAC_FN] = {ENCODER_CCW_CW(RGB_VAD, RGB_VAI)}, - [WIN_BASE] = {ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [WIN_FN] = {ENCODER_CCW_CW(RGB_VAD, RGB_VAI)}, -}; -#endif // ENCODER_MAP_ENABLE diff --git a/keyboards/keychron/q5_pro/ansi_encoder/keymaps/via/rules.mk b/keyboards/keychron/q5_pro/ansi_encoder/keymaps/via/rules.mk deleted file mode 100644 index f1adcab005..0000000000 --- a/keyboards/keychron/q5_pro/ansi_encoder/keymaps/via/rules.mk +++ /dev/null @@ -1,2 +0,0 @@ -VIA_ENABLE = yes -ENCODER_MAP_ENABLE = yes diff --git a/keyboards/keychron/q5_pro/ansi_encoder/rules.mk b/keyboards/keychron/q5_pro/ansi_encoder/rules.mk deleted file mode 100644 index 6e7633bfe0..0000000000 --- a/keyboards/keychron/q5_pro/ansi_encoder/rules.mk +++ /dev/null @@ -1 +0,0 @@ -# This file intentionally left blank diff --git a/keyboards/keychron/q5_pro/config.h b/keyboards/keychron/q5_pro/config.h deleted file mode 100644 index da0e1ba5b7..0000000000 --- a/keyboards/keychron/q5_pro/config.h +++ /dev/null @@ -1,90 +0,0 @@ -/* 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 . - */ - -#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 \ - { 18, 19, 20 } - -# define BAT_LEVEL_LED_LIST \ - { 18, 19, 20, 21, 22, 23, 24, 25, 26, 27 } - -/* 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 - -/* Encoder Configuration */ -#ifdef ENCODER_ENABLE -# define ENCODER_DEFAULT_POS 0x3 -#endif - -/* Emulated EEPROM configuration */ -#define WEAR_LEVELING_LOGICAL_SIZE 2048 -#define WEAR_LEVELING_BACKING_SIZE (WEAR_LEVELING_LOGICAL_SIZE * 2) -#define DYNAMIC_KEYMAP_EEPROM_MAX_ADDR 2047 - -/* HC595 Driver configuration */ -#define HC595_END_INDEX 19 - -/* Factory test keys */ -#define FN_KEY1 MO(1) -#define FN_KEY2 MO(3) diff --git a/keyboards/keychron/q5_pro/halconf.h b/keyboards/keychron/q5_pro/halconf.h deleted file mode 100644 index 8d8e138e4e..0000000000 --- a/keyboards/keychron/q5_pro/halconf.h +++ /dev/null @@ -1,29 +0,0 @@ -/* Copyright 2023 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 _CHIBIOS_HAL_CONF_VER_8_0_ - -#define HAL_USE_I2C TRUE - -#ifdef KC_BLUETOOTH_ENABLE -# define PAL_USE_CALLBACKS TRUE -# define HAL_USE_SERIAL TRUE -# define HAL_USE_RTC TRUE -#endif - -#include_next diff --git a/keyboards/keychron/q5_pro/info.json b/keyboards/keychron/q5_pro/info.json deleted file mode 100644 index 0995179485..0000000000 --- a/keyboards/keychron/q5_pro/info.json +++ /dev/null @@ -1,61 +0,0 @@ -{ - "keyboard_name": "Keychron Q5 Pro", - "manufacturer": "Keychron", - "url": "https://github.com/Keychron", - "maintainer": "lalalademaxiya1", - "processor": "STM32L432", - "bootloader": "stm32-dfu", - "usb": { - "vid": "0x3434" - }, - "features": { - "bootmagic": true, - "command": false, - "console": false, - "extrakey": true, - "mousekey": true, - "nkro": true, - "rgb_matrix": true, - "dip_switch": true, - "encoder": true, - "raw": true - }, - "rgb_matrix": { - "driver": "snled27351", - "animations": { - "breathing": true, - "band_spiral_val": true, - "cycle_all": true, - "cycle_left_right": true, - "cycle_up_down": true, - "rainbow_moving_chevron": true, - "cycle_out_in": true, - "cycle_out_in_dual": true, - "cycle_pinwheel": true, - "cycle_spiral": true, - "dual_beacon": true, - "rainbow_beacon": true, - "jellybean_raindrops": true, - "pixel_rain": true, - "typing_heatmap": true, - "digital_rain": true, - "solid_reactive_simple": true, - "solid_reactive_multiwide": true, - "solid_reactive_multinexus": true, - "splash": true, - "solid_splash": true - } - }, - "matrix_pins": { - "cols": [null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null], - "rows": ["B5", "B4", "B3", "A15", "A14", "A13"], - "custom": true, - "custom_lite": true - }, - "diode_direction": "ROW2COL", - "encoder": { - "rotary": [ - {"pin_a": "A10", "pin_b": "A0"} - ] - } -} diff --git a/keyboards/keychron/q5_pro/iso_encoder/config.h b/keyboards/keychron/q5_pro/iso_encoder/config.h deleted file mode 100644 index 5139c4207f..0000000000 --- a/keyboards/keychron/q5_pro/iso_encoder/config.h +++ /dev/null @@ -1,50 +0,0 @@ -/* 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 . - */ - -#pragma once - -#ifdef RGB_MATRIX_ENABLE -/* RGB Matrix Driver Configuration */ -# define DRIVER_COUNT 2 -# define DRIVER_ADDR_1 0b1110111 -# define DRIVER_ADDR_2 0b1110100 - -/* RGB Matrix Configuration */ -# define DRIVER_1_LED_TOTAL 55 -# define DRIVER_2_LED_TOTAL 47 -# define RGB_MATRIX_LED_COUNT (DRIVER_1_LED_TOTAL + DRIVER_2_LED_TOTAL) - -/* Set to infinit, which is use in USB mode by default */ -# define RGB_MATRIX_TIMEOUT RGB_MATRIX_TIMEOUT_INFINITE - -/* Allow to shutdown driver to save power */ -# define RGB_MATRIX_DRIVER_SHUTDOWN_ENABLE - -/* Turn off backllit if brightness value is low */ -# define RGB_MATRIX_BRIGHTNESS_TURN_OFF_VAL 48 - -/* Indication led index */ -# define NUM_LOCK_INDEX 32 -# define CAPS_LOCK_INDEX 54 -# define LOW_BAT_IND_INDEX 93 - -# define RGB_MATRIX_FRAMEBUFFER_EFFECTS -# define RGB_MATRIX_KEYPRESSES - -/* Set LED driver current */ -# define SNLED27351_CURRENT_TUNE \ - { 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30 } -#endif diff --git a/keyboards/keychron/q5_pro/iso_encoder/info.json b/keyboards/keychron/q5_pro/iso_encoder/info.json deleted file mode 100644 index 84118ff380..0000000000 --- a/keyboards/keychron/q5_pro/iso_encoder/info.json +++ /dev/null @@ -1,232 +0,0 @@ -{ - "usb": { - "pid": "0x0651", - "device_version": "1.0.0" - }, - "layouts": { - "LAYOUT_103_iso": { - "layout": [ - {"matrix":[0,0], "x":0, "y":0}, - {"matrix":[0,2], "x":2, "y":0}, - {"matrix":[0,3], "x":3, "y":0}, - {"matrix":[0,4], "x":4, "y":0}, - {"matrix":[0,5], "x":5, "y":0}, - {"matrix":[0,6], "x":6.5, "y":0}, - {"matrix":[0,7], "x":7.5, "y":0}, - {"matrix":[0,8], "x":8.5, "y":0}, - {"matrix":[0,9], "x":9.5, "y":0}, - {"matrix":[0,10], "x":11, "y":0}, - {"matrix":[0,11], "x":12, "y":0}, - {"matrix":[0,12], "x":13, "y":0}, - {"matrix":[0,13], "x":14, "y":0}, - {"matrix":[0,15], "x":15.25, "y":0}, - {"matrix":[0,16], "x":16.5, "y":0}, - {"matrix":[0,17], "x":17.5, "y":0}, - {"matrix":[0,18], "x":18.5, "y":0}, - {"matrix":[0,19], "x":19.5, "y":0}, - - {"matrix":[1,0], "x":0, "y":1.25}, - {"matrix":[1,1], "x":1, "y":1.25}, - {"matrix":[1,2], "x":2, "y":1.25}, - {"matrix":[1,3], "x":3, "y":1.25}, - {"matrix":[1,4], "x":4, "y":1.25}, - {"matrix":[1,5], "x":5, "y":1.25}, - {"matrix":[1,6], "x":6, "y":1.25}, - {"matrix":[1,7], "x":7, "y":1.25}, - {"matrix":[1,8], "x":8, "y":1.25}, - {"matrix":[1,9], "x":9, "y":1.25}, - {"matrix":[1,10], "x":10, "y":1.25}, - {"matrix":[1,11], "x":11, "y":1.25}, - {"matrix":[1,12], "x":12, "y":1.25}, - {"matrix":[1,13], "x":13, "y":1.25, "w":2}, - {"matrix":[1,15], "x":15.25, "y":1.25}, - {"matrix":[1,16], "x":16.5, "y":1.25}, - {"matrix":[1,17], "x":17.5, "y":1.25}, - {"matrix":[1,18], "x":18.5, "y":1.25}, - {"matrix":[1,19], "x":19.5, "y":1.25}, - - {"matrix":[2,0], "x":0, "y":2.25, "w":1.5}, - {"matrix":[2,1], "x":1.5, "y":2.25}, - {"matrix":[2,2], "x":2.5, "y":2.25}, - {"matrix":[2,3], "x":3.5, "y":2.25}, - {"matrix":[2,4], "x":4.5, "y":2.25}, - {"matrix":[2,5], "x":5.5, "y":2.25}, - {"matrix":[2,6], "x":6.5, "y":2.25}, - {"matrix":[2,7], "x":7.5, "y":2.25}, - {"matrix":[2,8], "x":8.5, "y":2.25}, - {"matrix":[2,9], "x":9.5, "y":2.25}, - {"matrix":[2,10], "x":10.5, "y":2.25}, - {"matrix":[2,11], "x":11.5, "y":2.25}, - {"matrix":[2,12], "x":12.5, "y":2.25}, - {"matrix":[2,15], "x":15.25, "y":2.25}, - {"matrix":[2,16], "x":16.5, "y":2.25}, - {"matrix":[2,17], "x":17.5, "y":2.25}, - {"matrix":[2,18], "x":18.5, "y":2.25}, - {"matrix":[2,19], "x":19.5, "y":2.25, "h":2}, - - {"matrix":[3,0], "x":0, "y":3.25, "w":1.75}, - {"matrix":[3,1], "x":1.75, "y":3.25}, - {"matrix":[3,2], "x":2.75, "y":3.25}, - {"matrix":[3,3], "x":3.75, "y":3.25}, - {"matrix":[3,4], "x":4.75, "y":3.25}, - {"matrix":[3,5], "x":5.75, "y":3.25}, - {"matrix":[3,6], "x":6.75, "y":3.25}, - {"matrix":[3,7], "x":7.75, "y":3.25}, - {"matrix":[3,8], "x":8.75, "y":3.25}, - {"matrix":[3,9], "x":9.75, "y":3.25}, - {"matrix":[3,10], "x":10.75, "y":3.25}, - {"matrix":[3,11], "x":11.75, "y":3.25}, - {"matrix":[3,13], "x":12.75, "y":3.25}, - {"matrix":[2,13], "x":13.75, "y":2.25, "w":1.25, "h":2}, - {"matrix":[3,15], "x":15.25, "y":3.25}, - {"matrix":[3,16], "x":16.5, "y":3.25}, - {"matrix":[3,17], "x":17.5, "y":3.25}, - {"matrix":[3,18], "x":18.5, "y":3.25}, - - {"matrix":[4,0], "x":0, "y":4.25, "w":1.25}, - {"matrix":[4,1], "x":1.25, "y":4.25}, - {"matrix":[4,2], "x":2.25, "y":4.25}, - {"matrix":[4,3], "x":3.25, "y":4.25}, - {"matrix":[4,4], "x":4.25, "y":4.25}, - {"matrix":[4,5], "x":5.25, "y":4.25}, - {"matrix":[4,6], "x":6.25, "y":4.25}, - {"matrix":[4,7], "x":7.25, "y":4.25}, - {"matrix":[4,8], "x":8.25, "y":4.25}, - {"matrix":[4,9], "x":9.25, "y":4.25}, - {"matrix":[4,10], "x":10.25, "y":4.25}, - {"matrix":[4,11], "x":11.25, "y":4.25}, - {"matrix":[4,13], "x":12.25, "y":4.25, "w":1.75}, - {"matrix":[4,14], "x":14.25, "y":4.5}, - {"matrix":[4,16], "x":16.5, "y":4.25}, - {"matrix":[4,17], "x":17.5, "y":4.25}, - {"matrix":[4,18], "x":18.5, "y":4.25}, - {"matrix":[4,19], "x":19.5, "y":4.25, "h":2}, - - {"matrix":[5,0], "x":0, "y":5.25, "w":1.25}, - {"matrix":[5,1], "x":1.25, "y":5.25, "w":1.25}, - {"matrix":[5,2], "x":2.5, "y":5.25, "w":1.25}, - {"matrix":[5,6], "x":3.75, "y":5.25, "w":6.25}, - {"matrix":[5,10], "x":10, "y":5.25}, - {"matrix":[5,11], "x":11, "y":5.25}, - {"matrix":[5,12], "x":12, "y":5.25}, - {"matrix":[5,13], "x":13.25, "y":5.5}, - {"matrix":[5,14], "x":14.25, "y":5.5}, - {"matrix":[5,15], "x":15.25, "y":5.5}, - {"matrix":[5,17], "x":16.5, "y":5.25, "w":2}, - {"matrix":[5,18], "x":18.5, "y":5.25} - ] - } - }, - "rgb_matrix": { - "layout": [ - {"matrix":[0, 0], "flags":1, "x":0, "y":0}, - {"matrix":[0, 2], "flags":1, "x":23, "y":0}, - {"matrix":[0, 3], "flags":1, "x":34, "y":0}, - {"matrix":[0, 4], "flags":1, "x":46, "y":0}, - {"matrix":[0, 5], "flags":1, "x":57, "y":0}, - {"matrix":[0, 6], "flags":1, "x":75, "y":0}, - {"matrix":[0, 7], "flags":1, "x":86, "y":0}, - {"matrix":[0, 8], "flags":1, "x":97, "y":0}, - {"matrix":[0, 9], "flags":1, "x":109, "y":0}, - {"matrix":[0, 10], "flags":1, "x":126, "y":0}, - {"matrix":[0, 11], "flags":1, "x":137, "y":0}, - {"matrix":[0, 12], "flags":1, "x":149, "y":0}, - {"matrix":[0, 13], "flags":1, "x":160, "y":0}, - {"matrix":[0, 15], "flags":1, "x":174, "y":0}, - {"matrix":[0, 16], "flags":4, "x":188, "y":0}, - {"matrix":[0, 17], "flags":4, "x":200, "y":0}, - {"matrix":[0, 18], "flags":4, "x":211, "y":0}, - - {"matrix":[1, 0], "flags":1, "x":0, "y":15}, - {"matrix":[1, 1], "flags":8, "x":11, "y":15}, - {"matrix":[1, 2], "flags":8, "x":23, "y":15}, - {"matrix":[1, 3], "flags":8, "x":34, "y":15}, - {"matrix":[1, 4], "flags":4, "x":46, "y":15}, - {"matrix":[1, 5], "flags":4, "x":57, "y":15}, - {"matrix":[1, 6], "flags":4, "x":69, "y":15}, - {"matrix":[1, 7], "flags":4, "x":80, "y":15}, - {"matrix":[1, 8], "flags":4, "x":91, "y":15}, - {"matrix":[1, 9], "flags":4, "x":103, "y":15}, - {"matrix":[1, 10], "flags":4, "x":114, "y":15}, - {"matrix":[1, 11], "flags":4, "x":126, "y":15}, - {"matrix":[1, 12], "flags":4, "x":137, "y":15}, - {"matrix":[1, 13], "flags":1, "x":154, "y":15}, - {"matrix":[1, 15], "flags":1, "x":174, "y":15}, - {"matrix":[1, 16], "flags":8, "x":188, "y":15}, - {"matrix":[1, 17], "flags":4, "x":200, "y":15}, - {"matrix":[1, 18], "flags":4, "x":211, "y":15}, - {"matrix":[1, 19], "flags":4, "x":223, "y":15}, - - {"matrix":[2, 0], "flags":1, "x":3, "y":26}, - {"matrix":[2, 1], "flags":4, "x":17, "y":26}, - {"matrix":[2, 2], "flags":4, "x":29, "y":26}, - {"matrix":[2, 3], "flags":4, "x":40, "y":26}, - {"matrix":[2, 4], "flags":4, "x":51, "y":26}, - {"matrix":[2, 5], "flags":4, "x":63, "y":26}, - {"matrix":[2, 6], "flags":4, "x":74, "y":26}, - {"matrix":[2, 7], "flags":4, "x":86, "y":26}, - {"matrix":[2, 8], "flags":4, "x":97, "y":26}, - {"matrix":[2, 9], "flags":4, "x":109, "y":26}, - {"matrix":[2, 10], "flags":4, "x":120, "y":26}, - {"matrix":[2, 11], "flags":4, "x":132, "y":26}, - {"matrix":[2, 12], "flags":4, "x":143, "y":26}, - {"matrix":[2, 15], "flags":1, "x":174, "y":26}, - {"matrix":[2, 16], "flags":4, "x":188, "y":26}, - {"matrix":[2, 17], "flags":4, "x":200, "y":26}, - {"matrix":[2, 18], "flags":4, "x":211, "y":26}, - {"matrix":[2, 19], "flags":4, "x":223, "y":32}, - - {"matrix":[3, 0], "flags":8, "x":4, "y":38}, - {"matrix":[3, 1], "flags":4, "x":20, "y":38}, - {"matrix":[3, 2], "flags":4, "x":31, "y":38}, - {"matrix":[3, 3], "flags":4, "x":43, "y":38}, - {"matrix":[3, 4], "flags":4, "x":54, "y":38}, - {"matrix":[3, 5], "flags":4, "x":66, "y":38}, - {"matrix":[3, 6], "flags":4, "x":77, "y":38}, - {"matrix":[3, 7], "flags":4, "x":89, "y":38}, - {"matrix":[3, 8], "flags":4, "x":100, "y":38}, - {"matrix":[3, 9], "flags":4, "x":111, "y":38}, - {"matrix":[3, 10], "flags":4, "x":123, "y":38}, - {"matrix":[3, 11], "flags":4, "x":134, "y":38}, - {"matrix":[3, 13], "flags":1, "x":146, "y":38}, - {"matrix":[2, 13], "flags":1, "x":161, "y":26}, - {"matrix":[3, 15], "flags":1, "x":174, "y":38}, - {"matrix":[3, 16], "flags":4, "x":188, "y":38}, - {"matrix":[3, 17], "flags":4, "x":200, "y":38}, - {"matrix":[3, 18], "flags":4, "x":211, "y":38}, - - {"matrix":[4, 0], "flags":1, "x":1, "y":50}, - {"matrix":[4, 1], "flags":1, "x":14, "y":50}, - {"matrix":[4, 2], "flags":4, "x":26, "y":50}, - {"matrix":[4, 3], "flags":4, "x":37, "y":50}, - {"matrix":[4, 4], "flags":4, "x":49, "y":50}, - {"matrix":[4, 5], "flags":4, "x":60, "y":50}, - {"matrix":[4, 6], "flags":4, "x":71, "y":50}, - {"matrix":[4, 7], "flags":4, "x":83, "y":50}, - {"matrix":[4, 8], "flags":4, "x":94, "y":50}, - {"matrix":[4, 9], "flags":4, "x":106, "y":50}, - {"matrix":[4, 10], "flags":4, "x":117, "y":50}, - {"matrix":[4, 11], "flags":4, "x":129, "y":50}, - {"matrix":[4, 13], "flags":1, "x":144, "y":50}, - {"matrix":[4, 14], "flags":1, "x":163, "y":50}, - {"matrix":[4, 16], "flags":4, "x":188, "y":50}, - {"matrix":[4, 17], "flags":4, "x":200, "y":50}, - {"matrix":[4, 18], "flags":4, "x":211, "y":50}, - {"matrix":[4, 19], "flags":4, "x":223, "y":55}, - - {"matrix":[5, 0], "flags":1, "x":1, "y":61}, - {"matrix":[5, 1], "flags":1, "x":16, "y":61}, - {"matrix":[5, 2], "flags":1, "x":30, "y":61}, - {"matrix":[5, 6], "flags":4, "x":73, "y":61}, - {"matrix":[5, 10], "flags":1, "x":114, "y":61}, - {"matrix":[5, 11], "flags":1, "x":126, "y":61}, - {"matrix":[5, 12], "flags":1, "x":137, "y":61}, - {"matrix":[5, 13], "flags":1, "x":151, "y":64}, - {"matrix":[5, 14], "flags":1, "x":163, "y":64}, - {"matrix":[5, 15], "flags":1, "x":174, "y":64}, - {"matrix":[5, 17], "flags":4, "x":194, "y":61}, - {"matrix":[5, 18], "flags":4, "x":211, "y":61} - ] - } -} - diff --git a/keyboards/keychron/q5_pro/iso_encoder/iso_encoder.c b/keyboards/keychron/q5_pro/iso_encoder/iso_encoder.c deleted file mode 100644 index db1b4f6121..0000000000 --- a/keyboards/keychron/q5_pro/iso_encoder/iso_encoder.c +++ /dev/null @@ -1,137 +0,0 @@ -/* 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 . - */ - -#include "quantum.h" - -// clang-format off -#ifdef RGB_MATRIX_ENABLE -const snled27351_led_t g_snled27351_leds[RGB_MATRIX_LED_COUNT] = { -/* Refer to snled27351manual for these locations - * driver - * | R location - * | | G location - * | | | B location - * | | | | */ - {0, I_1, G_1, H_1}, - {0, I_3, G_3, H_3}, - {0, I_4, G_4, H_4}, - {0, I_5, G_5, H_5}, - {0, I_6, G_6, H_6}, - {0, I_7, G_7, H_7}, - {0, I_8, G_8, H_8}, - {0, I_9, G_9, H_9}, - {0, I_10, G_10, H_10}, - {0, I_11, G_11, H_11}, - {0, I_12, G_12, H_12}, - {0, I_13, G_13, H_13}, - {0, I_14, G_14, H_14}, - {0, I_16, G_16, H_16}, - {0, L_5, J_5, K_5}, - {0, L_6, J_6, K_6}, - {0, L_7, J_7, K_7}, - // {0, L_8, J_8, K_8}, // Knob - - {0, C_1, A_1, B_1}, - {0, C_2, A_2, B_2}, - {0, C_3, A_3, B_3}, - {0, C_4, A_4, B_4}, - {0, C_5, A_5, B_5}, - {0, C_6, A_6, B_6}, - {0, C_7, A_7, B_7}, - {0, C_8, A_8, B_8}, - {0, C_9, A_9, B_9}, - {0, C_10, A_10, B_10}, - {0, C_11, A_11, B_11}, - {0, C_12, A_12, B_12}, - {0, C_13, A_13, B_13}, - {0, C_14, A_14, B_14}, - {0, C_16, A_16, B_16}, - {0, L_9, J_9, K_9}, - {0, L_10, J_10, K_10}, - {0, L_11, J_11, K_11}, - {0, L_12, J_12, K_12}, - - {0, F_1, D_1, E_1}, - {0, F_2, D_2, E_2}, - {0, F_3, D_3, E_3}, - {0, F_4, D_4, E_4}, - {0, F_5, D_5, E_5}, - {0, F_6, D_6, E_6}, - {0, F_7, D_7, E_7}, - {0, F_8, D_8, E_8}, - {0, F_9, D_9, E_9}, - {0, F_10, D_10, E_10}, - {0, F_11, D_11, E_11}, - {0, F_12, D_12, E_12}, - {0, F_13, D_13, E_13}, - {0, F_16, D_16, E_16}, - {0, L_13, J_13, K_13}, - {0, L_14, J_14, K_14}, - {0, L_15, J_15, K_15}, - {0, L_16, J_16, K_16}, - - {1, C_16, A_16, B_16}, - {1, C_15, A_15, B_15}, - {1, C_14, A_14, B_14}, - {1, C_13, A_13, B_13}, - {1, C_12, A_12, B_12}, - {1, C_11, A_11, B_11}, - {1, C_10, A_10, B_10}, - {1, C_9, A_9, B_9}, - {1, C_8, A_8, B_8}, - {1, C_7, A_7, B_7}, - {1, C_6, A_6, B_6}, - {1, C_5, A_5, B_5}, - {1, C_3, A_3, B_3}, - {0, F_14, D_14, E_14}, - {1, C_1, A_1, B_1}, - {1, L_9, J_9, K_9}, - {1, L_8, J_8, K_8}, - {1, L_7, J_7, K_7}, - - {1, I_16, G_16, H_16}, - {1, I_15, G_15, H_15}, - {1, I_14, G_14, H_14}, - {1, I_13, G_13, H_13}, - {1, I_12, G_12, H_12}, - {1, I_11, G_11, H_11}, - {1, I_10, G_10, H_10}, - {1, I_9, G_9, H_9}, - {1, I_8, G_8, H_8}, - {1, I_7, G_7, H_7}, - {1, I_6, G_6, H_6}, - {1, I_5, G_5, H_5}, - {1, I_3, G_3, H_3}, - {1, I_2, G_2, H_2}, - {1, L_6, J_6, K_6}, - {1, L_5, J_5, K_5}, - {1, L_4, J_4, K_4}, - {1, L_3, J_3, K_3}, - - {1, F_16, D_16, E_16}, - {1, F_15, D_15, E_15}, - {1, F_14, D_14, E_14}, - {1, F_10, D_10, E_10}, - {1, F_6, D_6, E_6}, - {1, F_5, D_5, E_5}, - {1, F_4, D_4, E_4}, - {1, F_3, D_3, E_3}, - {1, F_2, D_2, E_2}, - {1, F_1, D_1, E_1}, - {1, L_2, J_2, K_2}, - {1, L_1, J_1, K_1} -}; -#endif diff --git a/keyboards/keychron/q5_pro/iso_encoder/keymaps/default/keymap.c b/keyboards/keychron/q5_pro/iso_encoder/keymaps/default/keymap.c deleted file mode 100644 index b72f63536a..0000000000 --- a/keyboards/keychron/q5_pro/iso_encoder/keymaps/default/keymap.c +++ /dev/null @@ -1,65 +0,0 @@ -/* 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 . - */ - -#include QMK_KEYBOARD_H - -enum layers{ - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN, -}; - -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_103_iso( - KC_ESC, KC_BRID, KC_BRIU, KC_MCTL, KC_LPAD, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_DEL, KC_F13, KC_F14, KC_F15, KC_MUTE, - KC_GRV, 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_PGUP, KC_NUM, KC_PSLS, KC_PAST, KC_PMNS, - 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_PGDN, KC_P7, KC_P8, KC_P9, KC_PPLS, - 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_NUHS, KC_ENT, KC_HOME, KC_P4, KC_P5, KC_P6, - KC_LSFT, KC_NUBS, 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_P1, KC_P2, KC_P3, KC_PENT, - KC_LCTL, KC_LOPTN, KC_LCMMD, KC_SPC, KC_RCMMD, MO(MAC_FN), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT, KC_P0, KC_PDOT ), - [MAC_FN] = LAYOUT_103_iso( - _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, _______, _______, RGB_TOG, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ), - [WIN_BASE] = LAYOUT_103_iso( - KC_ESC, 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_DEL, KC_F13, KC_F14, KC_F15, KC_MUTE, - KC_GRV, 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_PGUP, KC_NUM, KC_PSLS, KC_PAST, KC_PMNS, - 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_PGDN, KC_P7, KC_P8, KC_P9, KC_PPLS, - 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_NUHS, KC_ENT, KC_HOME, KC_P4, KC_P5, KC_P6, - KC_LSFT, KC_NUBS, 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_P1, KC_P2, KC_P3, KC_PENT, - KC_LCTL, KC_LWIN, KC_LALT, KC_SPC, KC_RALT, MO(WIN_FN), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT, KC_P0, KC_PDOT ), - [WIN_FN] = LAYOUT_103_iso( - _______, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, _______, _______, RGB_TOG, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ), -}; - -#if defined(ENCODER_MAP_ENABLE) -const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][2] = { - [MAC_BASE] = {ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [MAC_FN] = {ENCODER_CCW_CW(RGB_VAD, RGB_VAI)}, - [WIN_BASE] = {ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [WIN_FN] = {ENCODER_CCW_CW(RGB_VAD, RGB_VAI)}, -}; -#endif // ENCODER_MAP_ENABLE diff --git a/keyboards/keychron/q5_pro/iso_encoder/keymaps/default/rules.mk b/keyboards/keychron/q5_pro/iso_encoder/keymaps/default/rules.mk deleted file mode 100644 index ee32568148..0000000000 --- a/keyboards/keychron/q5_pro/iso_encoder/keymaps/default/rules.mk +++ /dev/null @@ -1 +0,0 @@ -ENCODER_MAP_ENABLE = yes diff --git a/keyboards/keychron/q5_pro/iso_encoder/keymaps/via/keymap.c b/keyboards/keychron/q5_pro/iso_encoder/keymaps/via/keymap.c deleted file mode 100644 index 88e16e042b..0000000000 --- a/keyboards/keychron/q5_pro/iso_encoder/keymaps/via/keymap.c +++ /dev/null @@ -1,65 +0,0 @@ -/* 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 . - */ - -#include QMK_KEYBOARD_H - -enum layers{ - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN, -}; - -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_103_iso( - KC_ESC, KC_BRID, KC_BRIU, KC_MCTL, KC_LPAD, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_DEL, KC_F13, KC_F14, KC_F15, KC_MUTE, - KC_GRV, 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_PGUP, KC_NUM, KC_PSLS, KC_PAST, KC_PMNS, - 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_PGDN, KC_P7, KC_P8, KC_P9, KC_PPLS, - 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_NUHS, KC_ENT, KC_HOME, KC_P4, KC_P5, KC_P6, - KC_LSFT, KC_NUBS, 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_P1, KC_P2, KC_P3, KC_PENT, - KC_LCTL, KC_LOPTN, KC_LCMMD, KC_SPC, KC_RCMMD, MO(MAC_FN), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT, KC_P0, KC_PDOT ), - [MAC_FN] = LAYOUT_103_iso( - _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, _______, _______, RGB_TOG, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ), - [WIN_BASE] = LAYOUT_103_iso( - KC_ESC, 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_DEL, KC_F13, KC_F14, KC_F15, KC_MUTE, - KC_GRV, 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_PGUP, KC_NUM, KC_PSLS, KC_PAST, KC_PMNS, - 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_PGDN, KC_P7, KC_P8, KC_P9, KC_PPLS, - 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_NUHS, KC_ENT, KC_HOME, KC_P4, KC_P5, KC_P6, - KC_LSFT, KC_NUBS, 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_P1, KC_P2, KC_P3, KC_PENT, - KC_LCTL, KC_LWIN, KC_LALT, KC_SPC, KC_RALT, MO(WIN_FN), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT, KC_P0, KC_PDOT ), - [WIN_FN] = LAYOUT_103_iso( - _______, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, _______, _______, RGB_TOG, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ), -}; - -#if defined(ENCODER_MAP_ENABLE) -const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][2] = { - [MAC_BASE] = {ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [MAC_FN] = {ENCODER_CCW_CW(RGB_VAD, RGB_VAI)}, - [WIN_BASE] = {ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [WIN_FN] = {ENCODER_CCW_CW(RGB_VAD, RGB_VAI)}, -}; -#endif // ENCODER_MAP_ENABLE diff --git a/keyboards/keychron/q5_pro/iso_encoder/keymaps/via/rules.mk b/keyboards/keychron/q5_pro/iso_encoder/keymaps/via/rules.mk deleted file mode 100644 index f1adcab005..0000000000 --- a/keyboards/keychron/q5_pro/iso_encoder/keymaps/via/rules.mk +++ /dev/null @@ -1,2 +0,0 @@ -VIA_ENABLE = yes -ENCODER_MAP_ENABLE = yes diff --git a/keyboards/keychron/q5_pro/iso_encoder/rules.mk b/keyboards/keychron/q5_pro/iso_encoder/rules.mk deleted file mode 100644 index 6e7633bfe0..0000000000 --- a/keyboards/keychron/q5_pro/iso_encoder/rules.mk +++ /dev/null @@ -1 +0,0 @@ -# This file intentionally left blank diff --git a/keyboards/keychron/q5_pro/mcuconf.h b/keyboards/keychron/q5_pro/mcuconf.h deleted file mode 100644 index 882d6bd568..0000000000 --- a/keyboards/keychron/q5_pro/mcuconf.h +++ /dev/null @@ -1,36 +0,0 @@ -/* Copyright 2023 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 - -/* Set HCLK to 48 MHz as tradeoff of USB lowest clockand and - * lower power comsumption for bluetooth. Will use dynamic - * clock when STM32L4 is supported in ChibiOS */ -#undef STM32_PLLM_VALUE -#define STM32_PLLM_VALUE 2 - -#undef STM32_PLLN_VALUE -#define STM32_PLLN_VALUE 12 - -#undef STM32_I2C_USE_I2C1 -#define STM32_I2C_USE_I2C1 TRUE - -#ifdef KC_BLUETOOTH_ENABLE -# undef STM32_SERIAL_USE_USART2 -# define STM32_SERIAL_USE_USART2 TRUE -#endif diff --git a/keyboards/keychron/q5_pro/q5_pro.c b/keyboards/keychron/q5_pro/q5_pro.c deleted file mode 100644 index 28c94399d1..0000000000 --- a/keyboards/keychron/q5_pro/q5_pro.c +++ /dev/null @@ -1,313 +0,0 @@ -/* 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 . - */ - -#include "q5_pro.h" -#ifdef KC_BLUETOOTH_ENABLE -# include "ckbt51.h" -# include "bluetooth.h" -# include "indicator.h" -# include "transport.h" -# include "battery.h" -# include "bat_level_animation.h" -# include "lpm.h" -#endif - -#ifdef ENABLE_FACTORY_TEST -# include "factory_test.h" -#endif - -typedef struct PACKED { - uint8_t len; - uint8_t keycode[3]; -} key_combination_t; - -static uint32_t factory_timer_buffer = 0; -static uint32_t siri_timer_buffer = 0; -static uint8_t mac_keycode[4] = {KC_LOPT, KC_ROPT, KC_LCMD, KC_RCMD}; - -key_combination_t key_comb_list[4] = { - {2, {KC_LWIN, KC_TAB}}, // Task (win) - {2, {KC_LWIN, KC_E}}, // Files (win) - {3, {KC_LSFT, KC_LGUI, KC_4}}, // Snapshot (mac) - {2, {KC_LWIN, KC_C}} // Cortana (win) -}; - -#ifdef KC_BLUETOOTH_ENABLE -bool firstDisconnect = true; -bool bt_factory_reset = false; -static virtual_timer_t pairing_key_timer; -extern uint8_t g_pwm_buffer[DRIVER_COUNT][192]; - -static void pairing_key_timer_cb(void *arg) { - bluetooth_pairing_ex(*(uint8_t *)arg, NULL); -} -#endif - -bool dip_switch_update_kb(uint8_t index, bool active) { - if (index == 0) { -#ifdef INVERT_OS_SWITCH_STATE - default_layer_set(1UL << (!active ? 2 : 0)); -#else - default_layer_set(1UL << (active ? 2 : 0)); -#endif - } - dip_switch_update_user(index, active); - - return true; -} - -#ifdef KC_BLUETOOTH_ENABLE -bool process_record_kb_bt(uint16_t keycode, keyrecord_t *record) { -#else -bool process_record_kb(uint16_t keycode, keyrecord_t *record) { -#endif - static uint8_t host_idx = 0; - - switch (keycode) { - case KC_LOPTN: - case KC_ROPTN: - case KC_LCMMD: - case KC_RCMMD: - if (record->event.pressed) { - register_code(mac_keycode[keycode - KC_LOPTN]); - } else { - unregister_code(mac_keycode[keycode - KC_LOPTN]); - } - return false; // Skip all further processing of this key) - case KC_TASK: - case KC_FILE: - case KC_SNAP: - case KC_CTANA: - if (record->event.pressed) { - for (uint8_t i = 0; i < key_comb_list[keycode - KC_TASK].len; i++) - register_code(key_comb_list[keycode - KC_TASK].keycode[i]); - } else { - for (uint8_t i = 0; i < key_comb_list[keycode - KC_TASK].len; i++) - unregister_code(key_comb_list[keycode - KC_TASK].keycode[i]); - } - return false; // Skip all further processing of this key - case KC_SIRI: - if (record->event.pressed && siri_timer_buffer == 0) { - register_code(KC_LGUI); - register_code(KC_SPACE); - siri_timer_buffer = sync_timer_read32() == 0 ? 1 : sync_timer_read32(); - } - return false; // Skip all further processing of this key -#ifdef KC_BLUETOOTH_ENABLE - case BT_HST1 ... BT_HST3: - if (get_transport() == TRANSPORT_BLUETOOTH) { - if (record->event.pressed) { - host_idx = keycode - BT_HST1 + 1; - chVTSet(&pairing_key_timer, TIME_MS2I(2000), (vtfunc_t)pairing_key_timer_cb, &host_idx); - bluetooth_connect_ex(host_idx, 0); - } else { - host_idx = 0; - chVTReset(&pairing_key_timer); - } - } - break; - case BAT_LVL: - if (get_transport() == TRANSPORT_BLUETOOTH && !usb_power_connected()) { - bat_level_animiation_start(battery_get_percentage()); - } - break; -#endif - default: -#ifdef FACTORY_RESET_CHECK - FACTORY_RESET_CHECK(keycode, record); -#endif - break; - } - return true; -} - -#if defined(KC_BLUETOOTH_ENABLE) && defined(ENCODER_ENABLE) -static void encoder_pad_cb(void *param) { - encoder_inerrupt_read((uint32_t)param & 0XFF); -} -#endif - -void keyboard_post_init_kb(void) { - dip_switch_read(true); - -#ifdef KC_BLUETOOTH_ENABLE - /* Currently we don't use this reset pin */ - palSetLineMode(CKBT51_RESET_PIN, PAL_MODE_OUTPUT_PUSHPULL); - palWriteLine(CKBT51_RESET_PIN, PAL_HIGH); - - /* IMPORTANT: DO NOT enable internal pull-up resistor - * as there is an external pull-down resistor. - */ - palSetLineMode(USB_BT_MODE_SELECT_PIN, PAL_MODE_INPUT); - - ckbt51_init(false); - bluetooth_init(); - -# ifdef ENCODER_ENABLE - pin_t encoders_pad_a[NUM_ENCODERS] = ENCODERS_PAD_A; - pin_t encoders_pad_b[NUM_ENCODERS] = ENCODERS_PAD_B; - for (uint32_t i = 0; i < NUM_ENCODERS; i++) { - palEnableLineEvent(encoders_pad_a[i], PAL_EVENT_MODE_BOTH_EDGES); - palEnableLineEvent(encoders_pad_b[i], PAL_EVENT_MODE_BOTH_EDGES); - palSetLineCallback(encoders_pad_a[i], encoder_pad_cb, (void *)i); - palSetLineCallback(encoders_pad_b[i], encoder_pad_cb, (void *)i); - } -# endif -#endif - - keyboard_post_init_user(); -} - -void matrix_scan_kb(void) { - if (factory_timer_buffer && timer_elapsed32(factory_timer_buffer) > 2000) { - factory_timer_buffer = 0; - if (bt_factory_reset) { - bt_factory_reset = false; - palWriteLine(CKBT51_RESET_PIN, PAL_LOW); - wait_ms(5); - palWriteLine(CKBT51_RESET_PIN, PAL_HIGH); - } - } - - if (siri_timer_buffer && sync_timer_elapsed32(siri_timer_buffer) > 500) { - siri_timer_buffer = 0; - unregister_code(KC_LGUI); - unregister_code(KC_SPACE); - } - -#ifdef FACTORY_RESET_TASK - FACTORY_RESET_TASK(); -#endif - matrix_scan_user(); -} - -#ifdef KC_BLUETOOTH_ENABLE -static void ckbt51_param_init(void) { - /* Set bluetooth device name */ - ckbt51_set_local_name(PRODUCT); - wait_ms(10); - /* Set bluetooth parameters */ - module_param_t param = {.event_mode = 0x02, - .connected_idle_timeout = 7200, - .pairing_timeout = 180, - .pairing_mode = 0, - .reconnect_timeout = 5, - .report_rate = 90, - .vendor_id_source = 1, - .verndor_id = 0, // Must be 0x3434 - .product_id = PRODUCT_ID}; - ckbt51_set_param(¶m); - wait_ms(10); -} - -void bluetooth_enter_disconnected_kb(uint8_t host_idx) { - if (bt_factory_reset) { - ckbt51_param_init(); - factory_timer_buffer = timer_read32(); - } - /* CKBT51 bluetooth module boot time is slower, it enters disconnected after boot, - so we place initialization here. */ - if (firstDisconnect && sync_timer_read32() < 1000 && get_transport() == TRANSPORT_BLUETOOTH) { - ckbt51_param_init(); - bluetooth_connect(); - firstDisconnect = false; - } -} - -void ckbt51_default_ack_handler(uint8_t *data, uint8_t len) { - if (data[1] == 0x45) { - module_param_t param = {.event_mode = 0x02, - .connected_idle_timeout = 7200, - .pairing_timeout = 180, - .pairing_mode = 0, - .reconnect_timeout = 5, - .report_rate = 90, - .vendor_id_source = 1, - .verndor_id = 0, // Must be 0x3434 - .product_id = PRODUCT_ID}; - ckbt51_set_param(¶m); - } -} - -void bluetooth_pre_task(void) { - static uint8_t mode = 1; - - if (readPin(USB_BT_MODE_SELECT_PIN) != mode) { - if (readPin(USB_BT_MODE_SELECT_PIN) != mode) { - mode = readPin(USB_BT_MODE_SELECT_PIN); - set_transport(mode == 0 ? TRANSPORT_BLUETOOTH : TRANSPORT_USB); - } - } -} -#endif - -void battery_calculte_voltage(uint16_t value) { - uint16_t voltage = ((uint32_t)value) * 2246 / 1000; - -#ifdef LED_MATRIX_ENABLE - if (led_matrix_is_enabled()) { - uint32_t totalBuf = 0; - - for (uint8_t i = 0; i < DRIVER_COUNT; i++) - for (uint8_t j = 0; j < 192; j++) - totalBuf += g_pwm_buffer[i][j]; - /* We assumpt it is linear relationship*/ - voltage += (30 * totalBuf / LED_MATRIX_LED_COUNT / 255); - } -#endif -#ifdef RGB_MATRIX_ENABLE - if (rgb_matrix_is_enabled()) { - uint32_t totalBuf = 0; - - for (uint8_t i = 0; i < DRIVER_COUNT; i++) - for (uint8_t j = 0; j < 192; j++) - totalBuf += g_pwm_buffer[i][j]; - /* We assumpt it is linear relationship*/ - uint32_t compensation = 60 * totalBuf / RGB_MATRIX_LED_COUNT / 255 / 3; - voltage += compensation; - } -#endif - battery_set_voltage(voltage); -} - -bool via_command_kb(uint8_t *data, uint8_t length) { - switch (data[0]) { -#ifdef KC_BLUETOOTH_ENABLE - case 0xAA: - ckbt51_dfu_rx(data, length); - break; -#endif -#ifdef ENABLE_FACTORY_TEST - case 0xAB: - factory_test_rx(data, length); - break; -#endif - default: - return false; - } - - return true; -} - -#if !defined(VIA_ENABLE) -void raw_hid_receive(uint8_t *data, uint8_t length) { - switch (data[0]) { - case RAW_HID_CMD: - via_command_kb(data, length); - break; - } -} -#endif diff --git a/keyboards/keychron/q5_pro/q5_pro.h b/keyboards/keychron/q5_pro/q5_pro.h deleted file mode 100644 index cd0954d579..0000000000 --- a/keyboards/keychron/q5_pro/q5_pro.h +++ /dev/null @@ -1,55 +0,0 @@ -/* 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 . - */ - -#pragma once - -#include "quantum.h" -#ifdef VIA_ENABLE -# include "via.h" -#endif - -#define ___ KC_NO - -#ifdef VIA_ENABLE -# define USER_START QK_KB_0 -#else -# define USER_START SAFE_RANGE -#endif - -// clang-format off -enum { - KC_LOPTN = USER_START, - KC_ROPTN, - KC_LCMMD, - KC_RCMMD, - KC_TASK, - KC_FILE, - KC_SNAP, - KC_CTANA, - KC_SIRI, -#ifdef KC_BLUETOOTH_ENABLE - BT_HST1, - BT_HST2, - BT_HST3, - BAT_LVL, -#else - BT_HST1 = KC_TRNS, - BT_HST2 = KC_TRNS, - BT_HST3 = KC_TRNS, - BAT_LVL = KC_TRNS, -#endif - NEW_SAFE_RANGE -}; diff --git a/keyboards/keychron/q5_pro/readme.md b/keyboards/keychron/q5_pro/readme.md deleted file mode 100644 index 95cd22f342..0000000000 --- a/keyboards/keychron/q5_pro/readme.md +++ /dev/null @@ -1,23 +0,0 @@ -# Keychron Q5 Pro - -![Keychron Q5 Pro](https://i.imgur.com/3z9mMMI.jpg) - -A wireless custom mechanical 96% keyboard. - -* Keyboard Maintainer: [Keychron](https://github.com/keychron) -* Hardware Supported: Keychron Q5 Pro -* Hardware Availability:[Keychron Q5 Pro QMK/VIA Wireless Custom Mechanical Keyboard](https://www.keychron.com/products/keychron-q5-pro-qmk-via-wireless-custom-mechanical-keyboard) - -Make example for this keyboard (after setting up your build environment): - - make keychron/q5_pro/ansi_encoder:default - make keychron/q5_pro/iso_encoder:default - -Flashing example for this keyboard: - - make keychron/q5_pro/ansi_encoder:default:flash - make keychron/q5_pro/iso_encoder:default:flash - -**Reset Key**: Connect the USB cable, toggle mode switch to "Off", hold down the *Esc* key or reset button underneath space bar, then toggle then switch to "Cable". - -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). diff --git a/keyboards/keychron/q5_pro/rules.mk b/keyboards/keychron/q5_pro/rules.mk deleted file mode 100644 index f995372f9c..0000000000 --- a/keyboards/keychron/q5_pro/rules.mk +++ /dev/null @@ -1,6 +0,0 @@ -# Enter lower-power sleep mode when on the ChibiOS idle thread -OPT_DEFS += -DCORTEX_ENABLE_WFI_IDLE=TRUE -OPT_DEFS += -DNO_USB_STARTUP_CHECK -DENABLE_FACTORY_TEST - -include keyboards/keychron/bluetooth/bluetooth.mk -include keyboards/keychron/common/common.mk diff --git a/keyboards/keychron/q5_pro/via_json/q5_pro_ansi_encoder.json b/keyboards/keychron/q5_pro/via_json/q5_pro_ansi_encoder.json deleted file mode 100644 index a2f3b34538..0000000000 --- a/keyboards/keychron/q5_pro/via_json/q5_pro_ansi_encoder.json +++ /dev/null @@ -1,335 +0,0 @@ -{ - "name": "Keychron Q5 Pro ANSI Knob", - "vendorId": "0x3434", - "productId": "0x0650", - "keycodes": ["qmk_lighting"], - "menus": [ - { - "label": "Lighting", - "content": [ - { - "label": "Backlight", - "content": [ - { - "label": "Brightness", - "type": "range", - "options": [0, 255], - "content": ["id_qmk_rgb_matrix_brightness", 3, 1] - }, - { - "label": "Effect", - "type": "dropdown", - "content": ["id_qmk_rgb_matrix_effect", 3, 2], - "options": [ - ["None", 0], - ["Solid Color", 1], - ["Breathing", 2], - ["Band Spiral Val", 3], - ["Cycle All", 4], - ["Cycle Left Right", 5], - ["Cycle Up Down", 6], - ["Rainbow Moving Chevron", 7], - ["Cycle Out In", 8], - ["Cycle Out In Dual", 9], - ["Cycle Pinwheel", 10], - ["Cycle Spiral", 11], - ["Dual Beacon", 12], - ["Rainbow Beacon", 13], - ["Jellybean Raindrops", 14], - ["Pixel Rain", 15], - ["Typing Heatmap", 16], - ["Digital Rain", 17], - ["Reactive Simple", 18], - ["Reactive Multiwide", 19], - ["Reactive Multinexus", 20], - ["Splash", 21], - ["Solid Splash", 22] - ] - }, - { - "showIf": "{id_qmk_rgb_matrix_effect} > 1", - "label": "Effect Speed", - "type": "range", - "options": [0, 255], - "content": ["id_qmk_rgb_matrix_effect_speed", 3, 3] - }, - { - "showIf": "{id_qmk_rgb_matrix_effect} != 0 && ( {id_qmk_rgb_matrix_effect} < 4 || {id_qmk_rgb_matrix_effect} == 18 || ({id_qmk_rgb_matrix_effect} > 17 && {id_qmk_rgb_matrix_effect} != 21) ) ", - "label": "Color", - "type": "color", - "content": ["id_qmk_rgb_matrix_color", 3, 4] - } - ] - } - ] - } - ], - "customKeycodes": [ - {"name": "Left Option", "title": "Left Option", "shortName": "LOpt"}, - {"name": "Right Option", "title": "Right Option", "shortName": "ROpt"}, - {"name": "Left Cmd", "title": "Left Command", "shortName": "LCmd"}, - {"name": "Right Cmd", "title": "Right Command", "shortName": "RCmd"}, - {"name": "Task View", "title": "Task View in Windows", "shortName": "Task"}, - {"name": "File Explorer", "title": "File Explorer in Windows", "shortName": "File"}, - {"name": "Screen shot", "title": "Screenshot in macOS", "shortName": "SShot"}, - {"name": "Cortana", "title": "Cortana in Windows", "shortName": "Cortana"}, - {"name": "Siri", "title": "Siri in macOS", "shortName": "Siri"}, - {"name": "Bluetooth Host 1", "title": "Bluetooth Host 1", "shortName": "BTH1"}, - {"name": "Bluetooth Host 2", "title": "Bluetooth Host 2", "shortName": "BTH2"}, - {"name": "Bluetooth Host 3", "title": "Bluetooth Host 3", "shortName": "BTH3"}, - {"name": "Battery Level", "title": "Show battery level", "shortName": "Batt"} - ], - "matrix": {"rows": 6, "cols": 20}, - "layouts": { - "keymap": [ - [ - { - "c": "#777777" - }, - "0,0\nESC", - { - "x": 1, - "c": "#cccccc" - }, - "0,2", - "0,3", - "0,4", - "0,5", - { - "x": 0.5, - "c": "#aaaaaa" - }, - "0,6", - "0,7", - "0,8", - "0,9", - { - "x": 0.5, - "c": "#cccccc" - }, - "0,10", - "0,11", - "0,12", - "0,13", - { - "x": 0.25, - "c": "#aaaaaa" - }, - "0,15", - { - "x": 0.25 - }, - "0,16", - "0,17", - "0,18", - "0,19\n\n\n\n\n\n\n\n\ne0" - ], - [ - { - "y": 0.25 - }, - "1,0", - { - "c": "#cccccc" - }, - "1,1", - "1,2", - "1,3", - "1,4", - "1,5", - "1,6", - "1,7", - "1,8", - "1,9", - "1,10", - "1,11", - "1,12", - { - "c": "#aaaaaa", - "w": 2 - }, - "1,13", - { - "x": 0.25 - }, - "1,15", - { - "x": 0.25, - "c": "#cccccc" - }, - "1,16", - "1,17", - "1,18", - "1,19" - ], - [ - { - "c": "#aaaaaa", - "w": 1.5 - }, - "2,0", - { - "c": "#cccccc" - }, - "2,1", - "2,2", - "2,3", - "2,4", - "2,5", - "2,6", - "2,7", - "2,8", - "2,9", - "2,10", - "2,11", - "2,12", - { - "c": "#aaaaaa", - "w": 1.5 - }, - "2,13", - { - "x": 0.25 - }, - "2,15", - { - "x": 0.25, - "c": "#cccccc" - }, - "2,16", - "2,17", - "2,18", - { - "h": 2 - }, - "2,19" - ], - [ - { - "c": "#aaaaaa", - "w": 1.75 - }, - "3,0", - { - "c": "#cccccc" - }, - "3,1", - "3,2", - "3,3", - "3,4", - "3,5", - "3,6", - "3,7", - "3,8", - "3,9", - "3,10", - "3,11", - { - "c": "#777777", - "w": 2.25 - }, - "3,13", - { - "x": 0.25, - "c": "#aaaaaa" - }, - "3,15", - { - "x": 0.25, - "c": "#cccccc" - }, - "3,16", - "3,17", - "3,18" - ], - [ - { - "c": "#aaaaaa", - "w": 2.25 - }, - "4,0", - { - "c": "#cccccc" - }, - "4,2", - "4,3", - "4,4", - "4,5", - "4,6", - "4,7", - "4,8", - "4,9", - "4,10", - "4,11", - { - "c": "#aaaaaa", - "w": 1.75 - }, - "4,13", - { - "x": 2.5, - "c": "#cccccc" - }, - "4,16", - "4,17", - "4,18", - { - "h": 2 - }, - "4,19" - ], - [ - { - "y": -0.75, - "x": 14.25, - "c": "#777777" - }, - "4,14" - ], - [ - { - "y": -0.25, - "c": "#aaaaaa", - "w": 1.25 - }, - "5,0", - { - "w": 1.25 - }, - "5,1", - { - "w": 1.25 - }, - "5,2", - { - "c": "#cccccc", - "w": 6.25 - }, - "5,6", - { - "c": "#aaaaaa" - }, - "5,10", - "5,11", - "5,12", - { - "x": 3.5, - "c": "#cccccc", - "w": 2 - }, - "5,17", - "5,18" - ], - [ - { - "y": -0.75, - "x": 13.25, - "c": "#777777" - }, - "5,13", - "5,14", - "5,15" - ] - ] - } -} diff --git a/keyboards/keychron/q5_pro/via_json/q5_pro_iso_encoder.json b/keyboards/keychron/q5_pro/via_json/q5_pro_iso_encoder.json deleted file mode 100644 index df2f0d6286..0000000000 --- a/keyboards/keychron/q5_pro/via_json/q5_pro_iso_encoder.json +++ /dev/null @@ -1,340 +0,0 @@ -{ - "name": "Keychron Q5 Pro ISO Knob", - "vendorId": "0x3434", - "productId": "0x0651", - "keycodes": ["qmk_lighting"], - "menus": [ - { - "label": "Lighting", - "content": [ - { - "label": "Backlight", - "content": [ - { - "label": "Brightness", - "type": "range", - "options": [0, 255], - "content": ["id_qmk_rgb_matrix_brightness", 3, 1] - }, - { - "label": "Effect", - "type": "dropdown", - "content": ["id_qmk_rgb_matrix_effect", 3, 2], - "options": [ - ["None", 0], - ["Solid Color", 1], - ["Breathing", 2], - ["Band Spiral Val", 3], - ["Cycle All", 4], - ["Cycle Left Right", 5], - ["Cycle Up Down", 6], - ["Rainbow Moving Chevron", 7], - ["Cycle Out In", 8], - ["Cycle Out In Dual", 9], - ["Cycle Pinwheel", 10], - ["Cycle Spiral", 11], - ["Dual Beacon", 12], - ["Rainbow Beacon", 13], - ["Jellybean Raindrops", 14], - ["Pixel Rain", 15], - ["Typing Heatmap", 16], - ["Digital Rain", 17], - ["Reactive Simple", 18], - ["Reactive Multiwide", 19], - ["Reactive Multinexus", 20], - ["Splash", 21], - ["Solid Splash", 22] - ] - }, - { - "showIf": "{id_qmk_rgb_matrix_effect} > 1", - "label": "Effect Speed", - "type": "range", - "options": [0, 255], - "content": ["id_qmk_rgb_matrix_effect_speed", 3, 3] - }, - { - "showIf": "{id_qmk_rgb_matrix_effect} != 0 && ( {id_qmk_rgb_matrix_effect} < 4 || {id_qmk_rgb_matrix_effect} == 18 || ({id_qmk_rgb_matrix_effect} > 17 && {id_qmk_rgb_matrix_effect} != 21) ) ", - "label": "Color", - "type": "color", - "content": ["id_qmk_rgb_matrix_color", 3, 4] - } - ] - } - ] - } - ], - "customKeycodes": [ - {"name": "Left Option", "title": "Left Option", "shortName": "LOpt"}, - {"name": "Right Option", "title": "Right Option", "shortName": "ROpt"}, - {"name": "Left Cmd", "title": "Left Command", "shortName": "LCmd"}, - {"name": "Right Cmd", "title": "Right Command", "shortName": "RCmd"}, - {"name": "Task View", "title": "Task View in Windows", "shortName": "Task"}, - {"name": "File Explorer", "title": "File Explorer in Windows", "shortName": "File"}, - {"name": "Screen shot", "title": "Screenshot in macOS", "shortName": "SShot"}, - {"name": "Cortana", "title": "Cortana in Windows", "shortName": "Cortana"}, - {"name": "Siri", "title": "Siri in macOS", "shortName": "Siri"}, - {"name": "Bluetooth Host 1", "title": "Bluetooth Host 1", "shortName": "BTH1"}, - {"name": "Bluetooth Host 2", "title": "Bluetooth Host 2", "shortName": "BTH2"}, - {"name": "Bluetooth Host 3", "title": "Bluetooth Host 3", "shortName": "BTH3"}, - {"name": "Battery Level", "title": "Show battery level", "shortName": "Batt"} - ], - "matrix": {"rows": 6, "cols": 20}, - "layouts": { - "keymap": [ - [ - { - "c": "#777777" - }, - "0,0\nESC", - { - "x": 1, - "c": "#cccccc" - }, - "0,2", - "0,3", - "0,4", - "0,5", - { - "x": 0.5, - "c": "#aaaaaa" - }, - "0,6", - "0,7", - "0,8", - "0,9", - { - "x": 0.5, - "c": "#cccccc" - }, - "0,10", - "0,11", - "0,12", - "0,13", - { - "x": 0.25, - "c": "#aaaaaa" - }, - "0,15", - { - "x": 0.25 - }, - "0,16", - "0,17", - "0,18", - "0,19\n\n\n\n\n\n\n\n\ne0" - ], - [ - { - "y": 0.25 - }, - "1,0", - { - "c": "#cccccc" - }, - "1,1", - "1,2", - "1,3", - "1,4", - "1,5", - "1,6", - "1,7", - "1,8", - "1,9", - "1,10", - "1,11", - "1,12", - { - "c": "#aaaaaa", - "w": 2 - }, - "1,13", - { - "x": 0.25 - }, - "1,15", - { - "x": 0.25, - "c": "#cccccc" - }, - "1,16", - "1,17", - "1,18", - "1,19" - ], - [ - { - "c": "#aaaaaa", - "w": 1.5 - }, - "2,0", - { - "c": "#cccccc" - }, - "2,1", - "2,2", - "2,3", - "2,4", - "2,5", - "2,6", - "2,7", - "2,8", - "2,9", - "2,10", - "2,11", - "2,12", - { - "x": 0.25, - "c": "#777777", - "w": 1.25, - "h": 2, - "w2": 1.5, - "h2": 1, - "x2": -0.25 - }, - "2,13", - { - "x": 0.25, - "c": "#aaaaaa" - }, - "2,15", - { - "x": 0.25, - "c": "#cccccc" - }, - "2,16", - "2,17", - "2,18", - { - "h": 2 - }, - "2,19" - ], - [ - { - "c": "#aaaaaa", - "w": 1.75 - }, - "3,0", - { - "c": "#cccccc" - }, - "3,1", - "3,2", - "3,3", - "3,4", - "3,5", - "3,6", - "3,7", - "3,8", - "3,9", - "3,10", - "3,11", - { - "c": "#aaaaaa" - }, - "3,13", - { - "x": 1.5 - }, - "3,15", - { - "x": 0.25, - "c": "#cccccc" - }, - "3,16", - "3,17", - "3,18" - ], - [ - { - "c": "#aaaaaa", - "w": 1.25 - }, - "4,0", - "4,1", - { - "c": "#cccccc" - }, - "4,2", - "4,3", - "4,4", - "4,5", - "4,6", - "4,7", - "4,8", - "4,9", - "4,10", - "4,11", - { - "c": "#aaaaaa", - "w": 1.75 - }, - "4,13", - { - "x": 2.5, - "c": "#cccccc" - }, - "4,16", - "4,17", - "4,18", - { - "h": 2 - }, - "4,19" - ], - [ - { - "y": -0.75, - "x": 14.25, - "c": "#777777" - }, - "4,14" - ], - [ - { - "y": -0.25, - "c": "#aaaaaa", - "w": 1.25 - }, - "5,0", - { - "w": 1.25 - }, - "5,1", - { - "w": 1.25 - }, - "5,2", - { - "c": "#cccccc", - "w": 6.25 - }, - "5,6", - { - "c": "#aaaaaa" - }, - "5,10", - "5,11", - "5,12", - { - "x": 3.5, - "c": "#cccccc", - "w": 2 - }, - "5,17", - "5,18" - ], - [ - { - "y": -0.75, - "x": 13.25, - "c": "#777777" - }, - "5,13", - "5,14", - "5,15" - ] - ] - } -} diff --git a/keyboards/keychron/q60_max/ansi/ansi.c b/keyboards/keychron/q60_max/ansi/ansi.c deleted file mode 100644 index d564262bf0..0000000000 --- a/keyboards/keychron/q60_max/ansi/ansi.c +++ /dev/null @@ -1,124 +0,0 @@ -/* 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/>. - */ - -#include "quantum.h" - -// clang-format off - -#ifdef RGB_MATRIX_ENABLE -const snled27351_led_t g_snled27351_leds[RGB_MATRIX_LED_COUNT] = { -/* Refer to snled27351manual for these locations - * driver - * | R location - * | | G location - * | | | B location - * | | | | */ - {0, J_15, L_15, K_15}, - {0, J_14, L_14, K_14}, - {0, J_13, L_13, K_13}, - {0, J_12, L_12, K_12}, - {0, J_11, L_11, K_11}, - {0, J_10, L_10, K_10}, - {0, J_9, L_9, K_9}, - {0, J_8, L_8, K_8}, - {0, J_7, L_7, K_7}, - {0, J_6, L_6, K_6}, - {0, J_5, L_5, K_5}, - {0, J_4, L_4, K_4}, - {0, J_3, L_3, K_3}, - {0, J_2, L_2, K_2}, - {0, J_1, L_1, K_1}, - - {0, D_15, F_15, E_15}, - {0, D_14, F_14, E_14}, - {0, D_13, F_13, E_13}, - {0, D_12, F_12, E_12}, - {0, D_11, F_11, E_11}, - {0, D_10, F_10, E_10}, - {0, D_9, F_9, E_9}, - {0, D_8, F_8, E_8}, - {0, D_7, F_7, E_7}, - {0, D_6, F_6, E_6}, - {0, D_5, F_5, E_5}, - {0, D_4, F_4, E_4}, - {0, D_3, F_3, E_3}, - {0, D_2, F_2, E_2}, - - {0, A_15, C_15, B_15}, - {0, A_14, C_14, B_14}, - {0, A_13, C_13, B_13}, - {0, A_12, C_12, B_12}, - {0, A_11, C_11, B_11}, - {0, A_10, C_10, B_10}, - {0, A_9, C_9, B_9}, - {0, A_8, C_8, B_8}, - {0, A_7, C_7, B_7}, - {0, A_6, C_6, B_6}, - {0, A_5, C_5, B_5}, - {0, A_4, C_4, B_4}, - {0, A_3, C_3, B_3}, - - {0, G_15, I_15, H_15}, - {0, G_13, I_13, H_13}, - {0, G_12, I_12, H_12}, - {0, G_11, I_11, H_11}, - {0, G_10, I_10, H_10}, - {0, G_9, I_9, H_9}, - {0, G_8, I_8, H_8}, - {0, G_7, I_7, H_7}, - {0, G_6, I_6, H_6}, - {0, G_5, I_5, H_5}, - {0, G_4, I_4, H_4}, - {0, G_3, I_3, H_3}, - {0, G_2, I_2, H_2}, - - {0, A_16, C_16, B_16}, - {0, G_16, I_16, H_16}, - {0, G_1, I_1, H_1}, - {0, D_1, F_1, E_1}, - {0, A_1, C_1, B_1}, -}; - -#define __ NO_LED - -led_config_t g_led_config = { - { - // Key Matrix to LED Index - { 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, 40, 41, __, __ }, - { 42, __, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, __ }, - { __, 55, 56, __, __, __, 57, __, __, __, __, 58, 59, __, __ }, - }, - { - // LED Index to Physical Position - { 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}, {208, 0}, {224, 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}, - {10,48}, {36,48}, {52,48}, {68,48}, {84,48}, {100,48}, {116,48}, {132,48}, {148,48}, {164,48}, {180,48}, {202,48}, {224,48}, - {24,64}, {44,64}, {112,64}, {180,64}, {200,64} - }, - { - // RGB LED Index to Flag - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1 - } -}; - -#endif diff --git a/keyboards/keychron/q60_max/ansi/config.h b/keyboards/keychron/q60_max/ansi/config.h deleted file mode 100644 index e435dde180..0000000000 --- a/keyboards/keychron/q60_max/ansi/config.h +++ /dev/null @@ -1,61 +0,0 @@ -/* 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 . - */ - -#pragma once - -#ifdef RGB_MATRIX_ENABLE -/* RGB Matrix driver configuration */ -# define DRIVER_COUNT 1 -# define RGB_MATRIX_LED_COUNT 60 - -# define SPI_SCK_PIN A5 -# define SPI_MISO_PIN A6 -# define SPI_MOSI_PIN A7 - -# define DRIVER_CS_PINS \ - { B9 } -# define SNLED23751_SPI_DIVISOR 16 -# define SPI_DRIVER SPID1 - -/* Set LED driver current */ -# define SNLED27351_CURRENT_TUNE \ - { 0x50, 0x50, 0x50, 0x50, 0x50, 0x50, 0x50, 0x50, 0x50, 0x50, 0x50, 0x50 } - -/* Set to infinit, which is use in USB mode by default */ -# define RGB_MATRIX_TIMEOUT RGB_MATRIX_TIMEOUT_INFINITE - -/* Allow shutdown of led driver to save power */ -# define RGB_MATRIX_DRIVER_SHUTDOWN_ENABLE -/* Turn off backlight on low brightness to save power */ -# define RGB_MATRIX_BRIGHTNESS_TURN_OFF_VAL 32 - -/* Indications */ -# define BT_HOST_LED_MATRIX_LIST \ - { 16, 17, 18 } - -# define P2P4G_HOST_LED_MATRIX_LIST \ - { 19 } - -# define BAT_LEVEL_LED_LIST \ - { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 } - -# define LOW_BAT_IND_INDEX \ - { 57 } - -# define RGB_MATRIX_KEYPRESSES -# define RGB_MATRIX_FRAMEBUFFER_EFFECTS - -#endif diff --git a/keyboards/keychron/q60_max/ansi/info.json b/keyboards/keychron/q60_max/ansi/info.json deleted file mode 100644 index 91bce79159..0000000000 --- a/keyboards/keychron/q60_max/ansi/info.json +++ /dev/null @@ -1,76 +0,0 @@ -{ - "usb": { - "pid": "0x08C0", - "device_version": "1.0.0" - }, - "layouts": { - "LAYOUT_ansi_60": { - "layout": [ - {"matrix": [0, 0], "x": 0, "y": 0}, - {"matrix": [0, 1], "x": 1, "y": 0}, - {"matrix": [0, 2], "x": 2, "y": 0}, - {"matrix": [0, 3], "x": 3, "y": 0}, - {"matrix": [0, 4], "x": 4, "y": 0}, - {"matrix": [0, 5], "x": 5, "y": 0}, - {"matrix": [0, 6], "x": 6, "y": 0}, - {"matrix": [0, 7], "x": 7, "y": 0}, - {"matrix": [0, 8], "x": 8, "y": 0}, - {"matrix": [0, 9], "x": 9, "y": 0}, - {"matrix": [0, 10], "x": 10, "y": 0}, - {"matrix": [0, 11], "x": 11, "y": 0}, - {"matrix": [0, 12], "x": 12, "y": 0}, - {"matrix": [0, 13], "x": 13, "y": 0}, - {"matrix": [0, 14], "x": 14, "y": 0}, - - {"matrix": [1, 0], "x": 0, "y": 1, "w": 1.5}, - {"matrix": [1, 1], "x": 1.5, "y": 1}, - {"matrix": [1, 2], "x": 2.5, "y": 1}, - {"matrix": [1, 3], "x": 3.5, "y": 1}, - {"matrix": [1, 4], "x": 4.5, "y": 1}, - {"matrix": [1, 5], "x": 5.5, "y": 1}, - {"matrix": [1, 6], "x": 6.5, "y": 1}, - {"matrix": [1, 7], "x": 7.5, "y": 1}, - {"matrix": [1, 8], "x": 8.5, "y": 1}, - {"matrix": [1, 9], "x": 9.5, "y": 1}, - {"matrix": [1, 10], "x": 10.5, "y": 1}, - {"matrix": [1, 11], "x": 11.5, "y": 1}, - {"matrix": [1, 12], "x": 12.5, "y": 1}, - {"matrix": [1, 13], "x": 13.5, "y": 1, "w": 1.5}, - - {"matrix": [2, 0], "x": 0, "y": 2, "w": 1.75}, - {"matrix": [2, 1], "x": 1.75, "y": 2}, - {"matrix": [2, 2], "x": 2.75, "y": 2}, - {"matrix": [2, 3], "x": 3.75, "y": 2}, - {"matrix": [2, 4], "x": 4.75, "y": 2}, - {"matrix": [2, 5], "x": 5.75, "y": 2}, - {"matrix": [2, 6], "x": 6.75, "y": 2}, - {"matrix": [2, 7], "x": 7.75, "y": 2}, - {"matrix": [2, 8], "x": 8.75, "y": 2}, - {"matrix": [2, 9], "x": 9.75, "y": 2}, - {"matrix": [2, 10], "x": 10.75, "y": 2}, - {"matrix": [2, 11], "x": 11.75, "y": 2}, - {"matrix": [2, 12], "x": 12.75, "y": 2, "w": 2.25}, - - {"matrix": [3, 0], "x": 0, "y": 3, "w": 2.25}, - {"matrix": [3, 2], "x": 2.25, "y": 3}, - {"matrix": [3, 3], "x": 3.25, "y": 3}, - {"matrix": [3, 4], "x": 4.25, "y": 3}, - {"matrix": [3, 5], "x": 5.25, "y": 3}, - {"matrix": [3, 6], "x": 6.25, "y": 3}, - {"matrix": [3, 7], "x": 7.25, "y": 3}, - {"matrix": [3, 8], "x": 8.25, "y": 3}, - {"matrix": [3, 9], "x": 9.25, "y": 3}, - {"matrix": [3, 10], "x": 10.25, "y": 3}, - {"matrix": [3, 11], "x": 11.25, "y": 3}, - {"matrix": [3, 12], "x": 12.25, "y": 3, "w": 1.75}, - {"matrix": [3, 13], "x": 14, "y": 3}, - - {"matrix": [4, 1], "x": 1.5, "y": 4, "w": 1.25}, - {"matrix": [4, 2], "x": 2.75, "y": 4, "w": 1.25}, - {"matrix": [4, 6], "x": 4, "y": 4, "w": 7.25}, - {"matrix": [4, 11], "x": 11, "y": 4, "w": 1.25}, - {"matrix": [4, 12], "x": 12.25, "y": 4, "w": 1.25} - ] - } - } -} diff --git a/keyboards/keychron/q60_max/ansi/keymaps/default/keymap.c b/keyboards/keychron/q60_max/ansi/keymaps/default/keymap.c deleted file mode 100644 index a39ed4b9a2..0000000000 --- a/keyboards/keychron/q60_max/ansi/keymaps/default/keymap.c +++ /dev/null @@ -1,79 +0,0 @@ -/* 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 . - */ - -#include QMK_KEYBOARD_H -#include "keychron_common.h" - -enum layers { - MAC_BASE, - WIN_BASE, - FN, - L3, - L4, - L5 -}; -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_ansi_60( - 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_BSLS, KC_GRV, - 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_DEL, - KC_LCTL, 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, MO(FN), - KC_LOPTN, KC_LCMMD, KC_SPC, KC_RCMMD, KC_ROPTN), - - [WIN_BASE] = LAYOUT_ansi_60( - 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_BSLS, KC_GRV, - 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_DEL, - KC_LCTL, 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, MO(FN), - KC_LWIN, KC_LALT, KC_SPC, KC_RALT, KC_RWIN), - - [FN] = LAYOUT_ansi_60( - _______, 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_INS, KC_DEL, - KC_CAPS, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, KC_PSCR, KC_SCRL, KC_PAUS, KC_UP, _______, KC_BSPC, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, _______, _______, _______, KC_HOME, KC_PGUP, KC_LEFT, KC_RIGHT, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, BAT_LVL, NK_TOGG, _______, KC_END, KC_PGDN, KC_DOWN, _______, _______, - _______, _______, _______, _______, _______), - - [L3] = LAYOUT_ansi_60( - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______), - - [L4] = LAYOUT_ansi_60( - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______), - - [L5] = LAYOUT_ansi_60( - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______) -}; - -// clang-format on -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - if (!process_record_keychron_common(keycode, record)) { - return false; - } - return true; -} diff --git a/keyboards/keychron/q60_max/ansi/keymaps/via/keymap.c b/keyboards/keychron/q60_max/ansi/keymaps/via/keymap.c deleted file mode 100644 index a39ed4b9a2..0000000000 --- a/keyboards/keychron/q60_max/ansi/keymaps/via/keymap.c +++ /dev/null @@ -1,79 +0,0 @@ -/* 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 . - */ - -#include QMK_KEYBOARD_H -#include "keychron_common.h" - -enum layers { - MAC_BASE, - WIN_BASE, - FN, - L3, - L4, - L5 -}; -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_ansi_60( - 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_BSLS, KC_GRV, - 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_DEL, - KC_LCTL, 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, MO(FN), - KC_LOPTN, KC_LCMMD, KC_SPC, KC_RCMMD, KC_ROPTN), - - [WIN_BASE] = LAYOUT_ansi_60( - 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_BSLS, KC_GRV, - 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_DEL, - KC_LCTL, 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, MO(FN), - KC_LWIN, KC_LALT, KC_SPC, KC_RALT, KC_RWIN), - - [FN] = LAYOUT_ansi_60( - _______, 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_INS, KC_DEL, - KC_CAPS, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, KC_PSCR, KC_SCRL, KC_PAUS, KC_UP, _______, KC_BSPC, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, _______, _______, _______, KC_HOME, KC_PGUP, KC_LEFT, KC_RIGHT, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, BAT_LVL, NK_TOGG, _______, KC_END, KC_PGDN, KC_DOWN, _______, _______, - _______, _______, _______, _______, _______), - - [L3] = LAYOUT_ansi_60( - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______), - - [L4] = LAYOUT_ansi_60( - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______), - - [L5] = LAYOUT_ansi_60( - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______) -}; - -// clang-format on -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - if (!process_record_keychron_common(keycode, record)) { - return false; - } - return true; -} diff --git a/keyboards/keychron/q60_max/ansi/keymaps/via/rules.mk b/keyboards/keychron/q60_max/ansi/keymaps/via/rules.mk deleted file mode 100644 index 1e5b99807c..0000000000 --- a/keyboards/keychron/q60_max/ansi/keymaps/via/rules.mk +++ /dev/null @@ -1 +0,0 @@ -VIA_ENABLE = yes diff --git a/keyboards/keychron/q60_max/ansi/rules.mk b/keyboards/keychron/q60_max/ansi/rules.mk deleted file mode 100644 index 7ff128fa69..0000000000 --- a/keyboards/keychron/q60_max/ansi/rules.mk +++ /dev/null @@ -1 +0,0 @@ -# This file intentionally left blank \ No newline at end of file diff --git a/keyboards/keychron/q60_max/board.h b/keyboards/keychron/q60_max/board.h deleted file mode 100644 index 5f159c5276..0000000000 --- a/keyboards/keychron/q60_max/board.h +++ /dev/null @@ -1,226 +0,0 @@ -/* 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 . - */ - -#pragma once - -#include_next - -// clang-format off - -/* Set GPIOA_SWDIO to INPUT & PIN_PUPDR_PULLUP to avoid FLOATING */ -#undef VAL_GPIOA_MODER -#define VAL_GPIOA_MODER (PIN_MODE_INPUT(GPIOA_BUTTON) | \ - PIN_MODE_INPUT(GPIOA_PIN1) | \ - PIN_MODE_INPUT(GPIOA_PIN2) | \ - PIN_MODE_INPUT(GPIOA_PIN3) | \ - PIN_MODE_ALTERNATE(GPIOA_CS43L22_LRCK) |\ - PIN_MODE_ALTERNATE(GPIOA_L3GD20_SCL) | \ - PIN_MODE_ALTERNATE(GPIOA_L3GD20_SD0) | \ - PIN_MODE_ALTERNATE(GPIOA_L3GD20_SDI) | \ - PIN_MODE_INPUT(GPIOA_PIN8) | \ - PIN_MODE_INPUT(GPIOA_VBUS_FS) | \ - PIN_MODE_ALTERNATE(GPIOA_OTG_FS_ID) | \ - PIN_MODE_ALTERNATE(GPIOA_OTG_FS_DM) | \ - PIN_MODE_ALTERNATE(GPIOA_OTG_FS_DP) | \ - PIN_MODE_INPUT(GPIOA_SWDIO) | \ - PIN_MODE_INPUT(GPIOA_SWCLK) | \ - PIN_MODE_INPUT(GPIOA_PIN15)) - -#undef VAL_GPIOA_PUPDR -#define VAL_GPIOA_PUPDR (PIN_PUPDR_FLOATING(GPIOA_BUTTON) | \ - PIN_PUPDR_PULLUP(GPIOA_PIN1) | \ - PIN_PUPDR_PULLUP(GPIOA_PIN2) | \ - PIN_PUPDR_PULLUP(GPIOA_PIN3) | \ - PIN_PUPDR_FLOATING(GPIOA_CS43L22_LRCK) |\ - PIN_PUPDR_FLOATING(GPIOA_L3GD20_SCL) | \ - PIN_PUPDR_PULLUP(GPIOA_L3GD20_SD0) | \ - PIN_PUPDR_PULLUP(GPIOA_L3GD20_SDI) | \ - PIN_PUPDR_PULLUP(GPIOA_PIN8) | \ - PIN_PUPDR_FLOATING(GPIOA_VBUS_FS) | \ - PIN_PUPDR_FLOATING(GPIOA_OTG_FS_ID) | \ - PIN_PUPDR_FLOATING(GPIOA_OTG_FS_DM) | \ - PIN_PUPDR_FLOATING(GPIOA_OTG_FS_DP) | \ - PIN_PUPDR_PULLUP(GPIOA_SWDIO) | \ - PIN_PUPDR_PULLUP(GPIOA_SWCLK) | \ - PIN_PUPDR_PULLUP(GPIOA_PIN15)) - -#undef VAL_GPIOB_MODER -#define VAL_GPIOB_MODER (PIN_MODE_INPUT(GPIOB_PIN0) | \ - PIN_MODE_INPUT(GPIOB_PIN1) | \ - PIN_MODE_INPUT(GPIOB_PIN2) | \ - PIN_MODE_INPUT(GPIOB_SWO) | \ - PIN_MODE_INPUT(GPIOB_PIN4) | \ - PIN_MODE_INPUT(GPIOB_PIN5) | \ - PIN_MODE_INPUT(GPIOB_LSM303DLHC_SCL) | \ - PIN_MODE_INPUT(GPIOB_PIN7) | \ - PIN_MODE_INPUT(GPIOB_PIN8) | \ - PIN_MODE_INPUT(GPIOB_LSM303DLHC_SDA) | \ - PIN_MODE_INPUT(GPIOB_MP45DT02_CLK_IN) |\ - PIN_MODE_INPUT(GPIOB_PIN11) | \ - PIN_MODE_INPUT(GPIOB_PIN12) | \ - PIN_MODE_INPUT(GPIOB_PIN13) | \ - PIN_MODE_INPUT(GPIOB_PIN14) | \ - PIN_MODE_INPUT(GPIOB_PIN15)) - -#undef VAL_GPIOB_PUPDR -#define VAL_GPIOB_PUPDR (PIN_PUPDR_PULLDOWN(GPIOB_PIN0) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN1) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN2) | \ - PIN_PUPDR_PULLDOWN(GPIOB_SWO) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN4) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN5) | \ - PIN_PUPDR_PULLDOWN(GPIOB_LSM303DLHC_SCL) |\ - PIN_PUPDR_PULLDOWN(GPIOB_PIN7) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN8) | \ - PIN_PUPDR_PULLDOWN(GPIOB_LSM303DLHC_SDA) |\ - PIN_PUPDR_PULLDOWN(GPIOB_MP45DT02_CLK_IN) |\ - PIN_PUPDR_PULLDOWN(GPIOB_PIN11) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN12) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN13) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN14) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN15)) - -#undef VAL_GPIOB_AFRL -#define VAL_GPIOB_AFRL (PIN_AFIO_AF(GPIOB_PIN0, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN1, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN2, 0U) | \ - PIN_AFIO_AF(GPIOB_SWO, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN4, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN5, 0U) | \ - PIN_AFIO_AF(GPIOB_LSM303DLHC_SCL, 0) | \ - PIN_AFIO_AF(GPIOB_PIN7, 0U)) - -#undef VAL_GPIOB_AFRH -#define VAL_GPIOB_AFRH (PIN_AFIO_AF(GPIOB_PIN8, 0U) | \ - PIN_AFIO_AF(GPIOB_LSM303DLHC_SDA, 0) | \ - PIN_AFIO_AF(GPIOB_MP45DT02_CLK_IN, 0U) |\ - PIN_AFIO_AF(GPIOB_PIN11, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN12, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN13, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN14, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN15, 0U)) - -/* C5 Need to be pulldown */ -#undef VAL_GPIOC_MODER -#define VAL_GPIOC_MODER (PIN_MODE_INPUT(GPIOC_OTG_FS_POWER_ON) |\ - PIN_MODE_INPUT(GPIOC_PIN1) | \ - PIN_MODE_INPUT(GPIOC_PIN2) | \ - PIN_MODE_INPUT(GPIOC_CS43L22_AIN4x) | \ - PIN_MODE_INPUT(GPIOC_PIN4) | \ - PIN_MODE_INPUT(GPIOC_PIN5) | \ - PIN_MODE_INPUT(GPIOC_PIN6) | \ - PIN_MODE_INPUT(GPIOC_CS43L22_MCLK) | \ - PIN_MODE_INPUT(GPIOC_PIN8) | \ - PIN_MODE_INPUT(GPIOC_PIN9) | \ - PIN_MODE_INPUT(GPIOC_CS43L22_SCLK) | \ - PIN_MODE_INPUT(GPIOC_PIN11) | \ - PIN_MODE_INPUT(GPIOC_CS43L22_SDIN) | \ - PIN_MODE_INPUT(GPIOC_PIN13) | \ - PIN_MODE_INPUT(GPIOC_OSC32_IN) | \ - PIN_MODE_INPUT(GPIOC_OSC32_OUT)) - -#undef VAL_GPIOC_PUPDR -#define VAL_GPIOC_PUPDR (PIN_PUPDR_PULLUP(GPIOC_OTG_FS_POWER_ON) |\ - PIN_PUPDR_PULLUP(GPIOC_PIN1) | \ - PIN_PUPDR_PULLUP(GPIOC_PIN2) | \ - PIN_PUPDR_PULLUP(GPIOC_CS43L22_AIN4x) |\ - PIN_PUPDR_PULLUP(GPIOC_PIN4) | \ - PIN_PUPDR_PULLDOWN(GPIOC_PIN5) | \ - PIN_PUPDR_PULLUP(GPIOC_PIN6) | \ - PIN_PUPDR_PULLUP(GPIOC_CS43L22_MCLK) | \ - PIN_PUPDR_PULLUP(GPIOC_PIN8) | \ - PIN_PUPDR_PULLUP(GPIOC_PIN9) | \ - PIN_PUPDR_PULLUP(GPIOC_CS43L22_SCLK) | \ - PIN_PUPDR_PULLUP(GPIOC_PIN11) | \ - PIN_PUPDR_PULLUP(GPIOC_CS43L22_SDIN) | \ - PIN_PUPDR_PULLUP(GPIOC_PIN13) | \ - PIN_PUPDR_PULLUP(GPIOC_OSC32_IN) | \ - PIN_PUPDR_PULLUP(GPIOC_OSC32_OUT)) - -/* Set all GPIOD pins to INPUT & PULLUP to avoid FLOATING */ -#undef VAL_GPIOD_MODER -#define VAL_GPIOD_MODER (PIN_MODE_INPUT(GPIOD_PIN0) | \ - PIN_MODE_INPUT(GPIOD_PIN1) | \ - PIN_MODE_INPUT(GPIOD_PIN2) | \ - PIN_MODE_INPUT(GPIOD_PIN3) | \ - PIN_MODE_INPUT(GPIOD_CS43L22_RESET) | \ - PIN_MODE_INPUT(GPIOD_OverCurrent) | \ - PIN_MODE_INPUT(GPIOD_PIN6) | \ - PIN_MODE_INPUT(GPIOD_PIN7) | \ - PIN_MODE_INPUT(GPIOD_PIN8) | \ - PIN_MODE_INPUT(GPIOD_PIN9) | \ - PIN_MODE_INPUT(GPIOD_PIN10) | \ - PIN_MODE_INPUT(GPIOD_PIN11) | \ - PIN_MODE_INPUT(GPIOD_LED4) | \ - PIN_MODE_INPUT(GPIOD_LED3) | \ - PIN_MODE_INPUT(GPIOD_LED5) | \ - PIN_MODE_INPUT(GPIOD_LED6)) - -#undef VAL_GPIOD_PUPDR -#define VAL_GPIOD_PUPDR (PIN_PUPDR_PULLUP(GPIOD_PIN0) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN1) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN2) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN3) | \ - PIN_PUPDR_PULLUP(GPIOD_CS43L22_RESET) |\ - PIN_PUPDR_PULLUP(GPIOD_OverCurrent) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN6) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN7) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN8) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN9) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN10) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN11) | \ - PIN_PUPDR_PULLUP(GPIOD_LED4) | \ - PIN_PUPDR_PULLUP(GPIOD_LED3) | \ - PIN_PUPDR_PULLUP(GPIOD_LED5) | \ - PIN_PUPDR_PULLUP(GPIOD_LED6)) - -/* Set all GPIOE pins to INPUT & PULLUP to avoid FLOATING */ -#undef VAL_GPIOE_MODER -#define VAL_GPIOE_MODER (PIN_MODE_INPUT(GPIOE_L3GD20_INT1) | \ - PIN_MODE_INPUT(GPIOE_L3GD20_INT2) | \ - PIN_MODE_INPUT(GPIOE_LSM303DLHC_DRDY) |\ - PIN_MODE_INPUT(GPIOE_L3GD20_CS) | \ - PIN_MODE_INPUT(GPIOE_LSM303DLHC_INT1) |\ - PIN_MODE_INPUT(GPIOE_LSM303DLHC_INT2) |\ - PIN_MODE_INPUT(GPIOE_PIN6) | \ - PIN_MODE_INPUT(GPIOE_PIN7) | \ - PIN_MODE_INPUT(GPIOE_PIN8) | \ - PIN_MODE_INPUT(GPIOE_PIN9) | \ - PIN_MODE_INPUT(GPIOE_PIN10) | \ - PIN_MODE_INPUT(GPIOE_PIN11) | \ - PIN_MODE_INPUT(GPIOE_PIN12) | \ - PIN_MODE_INPUT(GPIOE_PIN13) | \ - PIN_MODE_INPUT(GPIOE_PIN14) | \ - PIN_MODE_INPUT(GPIOE_PIN15)) - -#undef VAL_GPIOE_PUPDR -#define VAL_GPIOE_PUPDR (PIN_PUPDR_PULLUP(GPIOE_L3GD20_INT1) | \ - PIN_PUPDR_PULLUP(GPIOE_L3GD20_INT2) | \ - PIN_PUPDR_PULLUP(GPIOE_LSM303DLHC_DRDY) |\ - PIN_PUPDR_PULLUP(GPIOE_L3GD20_CS) | \ - PIN_PUPDR_PULLUP(GPIOE_LSM303DLHC_INT1) |\ - PIN_PUPDR_PULLUP(GPIOE_LSM303DLHC_INT2) |\ - PIN_PUPDR_PULLUP(GPIOE_PIN6) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN7) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN8) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN9) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN10) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN11) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN12) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN13) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN14) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN15)) - diff --git a/keyboards/keychron/q60_max/config.h b/keyboards/keychron/q60_max/config.h deleted file mode 100644 index 51f54769db..0000000000 --- a/keyboards/keychron/q60_max/config.h +++ /dev/null @@ -1,76 +0,0 @@ -/* 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 . - */ - -#pragma once - -/* Encoder Configuration */ -#define ENCODER_DEFAULT_POS 0x3 -#define ENCODER_MAP_KEY_DELAY 2 - -#ifdef LK_WIRELESS_ENABLE -/* Hardware configuration */ -# define P2P4_MODE_SELECT_PIN A10 -# define BT_MODE_SELECT_PIN A9 - -# define LKBT51_RESET_PIN C4 -# define LKBT51_INT_INPUT_PIN B1 -# define BLUETOOTH_INT_OUTPUT_PIN A4 - -# define USB_POWER_SENSE_PIN B0 -# define USB_POWER_CONNECTED_LEVEL 0 - -# define BAT_CHARGING_PIN B13 -# define BAT_CHARGING_LEVEL 0 - -# define BT_HOST_DEVICES_COUNT 3 - -# if defined(RGB_MATRIX_ENABLE) || defined(LED_MATRIX_ENABLE) - -# define LED_DRIVER_SHUTDOWN_PIN B7 - -/* 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 - -/* Reinit LED driver on tranport changed */ -# define REINIT_LED_DRIVER 1 - -# endif - -/* Keep USB connection in blueooth mode */ -# define KEEP_USB_CONNECTION_IN_WIRELESS_MODE - -/* Enable bluetooth NKRO */ -# define WIRELESS_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 - -/* Factory test keys */ -#define FN_KEY_1 MO(2) -#define BL_CYCLE_KEY KC_C -#define FN_BL_CYCLE_KEY RGB_HUD -#define BL_TRIG_KEY KC_L -#define FN_BL_TRIG_KEY KC_PGUP -#define FN_Z_KEY RGB_RMOD - -#define MATRIX_IO_DELAY 10 diff --git a/keyboards/keychron/q60_max/firmware/keychron_q60_max_ansi_via.bin b/keyboards/keychron/q60_max/firmware/keychron_q60_max_ansi_via.bin deleted file mode 100644 index 06f4a7c7ee..0000000000 Binary files a/keyboards/keychron/q60_max/firmware/keychron_q60_max_ansi_via.bin and /dev/null differ diff --git a/keyboards/keychron/q60_max/halconf.h b/keyboards/keychron/q60_max/halconf.h deleted file mode 100644 index b1ed75e0b8..0000000000 --- a/keyboards/keychron/q60_max/halconf.h +++ /dev/null @@ -1,31 +0,0 @@ -/* 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 - -#define _CHIBIOS_HAL_CONF_VER_8_0_ - -#define HAL_USE_SPI TRUE - -#ifdef LK_WIRELESS_ENABLE -# define HAL_USE_RTC TRUE -#endif - -#if defined(LK_WIRELESS_ENABLE) || defined(ENCODER_ENABLE) -# define PAL_USE_CALLBACKS TRUE -#endif - -#include_next diff --git a/keyboards/keychron/q60_max/info.json b/keyboards/keychron/q60_max/info.json deleted file mode 100644 index 4053a97dc4..0000000000 --- a/keyboards/keychron/q60_max/info.json +++ /dev/null @@ -1,70 +0,0 @@ -{ - "keyboard_name": "Keychron Q60 Max", - "manufacturer": "Keychron", - "url": "https://github.com/Keychron", - "maintainer": "lokher", - "processor": "STM32F401", - "bootloader": "stm32-dfu", - "usb": { - "vid": "0x3434" - }, - "features": { - "bootmagic": true, - "extrakey" : true, - "mousekey" : true, - "dip_switch" : true, - "nkro" : true, - "rgb_matrix": true, - "raw" : true, - "send_string" : true - }, - "matrix_pins": { - "cols": ["C7", "C8", "A14", "A15", "C10", "C11", "C13", "C14", "C15", "C0", "C1", "C2", "C3", "A0", "A1"], - "rows": ["B5", "B4", "B3", "D2", "C12"] - }, - "diode_direction": "ROW2COL", - "dip_switch" :{ - "pins": ["B12"] - }, - "rgb_matrix": { - "driver": "snled27351_spi", - "sleep": true, - "animations": { - "band_spiral_val": true, - "breathing": true, - "cycle_all": true, - "cycle_left_right": true, - "cycle_out_in": true, - "cycle_out_in_dual": true, - "cycle_pinwheel": true, - "cycle_spiral": true, - "cycle_up_down": true, - "digital_rain": true, - "dual_beacon": true, - "jellybean_raindrops": true, - "pixel_rain": true, - "rainbow_beacon": true, - "rainbow_moving_chevron": true, - "solid_reactive_multinexus": true, - "solid_reactive_multiwide": true, - "solid_reactive_simple": true, - "solid_splash": true, - "splash": true, - "typing_heatmap": true - } - }, - "eeprom": { - "wear_leveling": { - "driver": "embedded_flash", - "logical_size": 2048, - "backing_size": 4096 - } - }, - "dynamic_keymap": { - "layer_count": 6 - }, - "build": { - "debounce_type": "sym_eager_pk" - }, - "debounce": 20 -} diff --git a/keyboards/keychron/q60_max/mcuconf.h b/keyboards/keychron/q60_max/mcuconf.h deleted file mode 100644 index 9cbef71ca6..0000000000 --- a/keyboards/keychron/q60_max/mcuconf.h +++ /dev/null @@ -1,37 +0,0 @@ -/* 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 - -#include_next - -#undef STM32_HSECLK -#define STM32_HSECLK 16000000 - -#undef STM32_PLLM_VALUE -#define STM32_PLLM_VALUE 8 - -#undef STM32_PLLN_VALUE -#define STM32_PLLN_VALUE 96 - -#undef STM32_PLLP_VALUE -#define STM32_PLLP_VALUE 4 - -#undef STM32_PLLQ_VALUE -#define STM32_PLLQ_VALUE 4 - -#undef STM32_SPI_USE_SPI1 -#define STM32_SPI_USE_SPI1 TRUE diff --git a/keyboards/keychron/q60_max/q60_max.c b/keyboards/keychron/q60_max/q60_max.c deleted file mode 100644 index c19133b683..0000000000 --- a/keyboards/keychron/q60_max/q60_max.c +++ /dev/null @@ -1,61 +0,0 @@ -/* 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/>. - */ - -#include "quantum.h" -#include "keychron_task.h" -#ifdef FACTORY_TEST_ENABLE -# include "factory_test.h" -# include "keychron_common.h" -#endif -#ifdef LK_WIRELESS_ENABLE -# include "lkbt51.h" -# include "wireless.h" -# include "keychron_wireless_common.h" -# include "battery.h" -#endif - -#ifdef DIP_SWITCH_ENABLE -bool dip_switch_update_kb(uint8_t index, bool active) { - if (index == 0) { - default_layer_set(1UL << (active ? 1 : 0)); - } - dip_switch_update_user(index, active); - - return true; -} -#endif - -void keyboard_post_init_kb(void) { -#ifdef LK_WIRELESS_ENABLE - palSetLineMode(P2P4_MODE_SELECT_PIN, PAL_MODE_INPUT); - palSetLineMode(BT_MODE_SELECT_PIN, PAL_MODE_INPUT); - - lkbt51_init(false); - wireless_init(); -#endif - -#ifdef ENCODER_ENABLE - encoder_cb_init(); -#endif - - keyboard_post_init_user(); -} - -#ifdef LK_WIRELESS_ENABLE -bool lpm_is_kb_idle(void) { - return !factory_reset_indicating(); -} -#endif diff --git a/keyboards/keychron/q60_max/readme.md b/keyboards/keychron/q60_max/readme.md deleted file mode 100644 index 6a681a058d..0000000000 --- a/keyboards/keychron/q60_max/readme.md +++ /dev/null @@ -1,21 +0,0 @@ -# Keychron Q60 Max - -![Keychron Q60 Max](https://cdn.shopify.com/s/files/1/0059/0630/1017/files/Keychron-Q60-Max-QMK-VIA-Custom-Mechanical-Keyboard-2_ff1caf01-49d3-4b6a-a002-b2f613da13e1.jpg?v=1702534477) - -A customizable 60% keyboard. - -* Keyboard Maintainer: [Keychron](https://github.com/keychron) -* Hardware Supported: Keychron Q60 Max -* Hardware Availability: [Keychron Q60 Max QMK/VIA Wireless Custom Mechanical Keyboard](https://www.keychron.com/products/keychron-q60-max-qmk-via-wireless-custom-mechanical-keyboard) - -Make example for this keyboard (after setting up your build environment): - - make keychron/q60_max/ansi/rgb:default - -Flashing example for this keyboard: - - make keychron/q60_max/ansi/rgb:default:flash - -**Reset Key**: Toggle mode switch to "Cable", hold down the *Esc* key or reset button underneath space bar while connecting the USB cable, - -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). diff --git a/keyboards/keychron/q60_max/rules.mk b/keyboards/keychron/q60_max/rules.mk deleted file mode 100644 index 4eaf6820bc..0000000000 --- a/keyboards/keychron/q60_max/rules.mk +++ /dev/null @@ -1,4 +0,0 @@ -include keyboards/keychron/common/wireless/wireless.mk -include keyboards/keychron/common/keychron_common.mk - -VPATH += $(TOP_DIR)/keyboards/keychron diff --git a/keyboards/keychron/q60_max/via_json/q60_max_ansi.json b/keyboards/keychron/q60_max/via_json/q60_max_ansi.json deleted file mode 100644 index 596e8fa803..0000000000 --- a/keyboards/keychron/q60_max/via_json/q60_max_ansi.json +++ /dev/null @@ -1,213 +0,0 @@ -{ - "name": "Keychron Q60 Max", - "vendorId": "0x3434", - "productId": "0x08C0", - "keycodes": ["qmk_lighting"], - "menus": [ - { - "label": "Lighting", - "content": [ - { - "label": "Backlight", - "content": [ - { - "label": "Brightness", - "type": "range", - "options": [0, 255], - "content": ["id_qmk_rgb_matrix_brightness", 3, 1] - }, - { - "label": "Effect", - "type": "dropdown", - "content": ["id_qmk_rgb_matrix_effect", 3, 2], - "options": [ - ["None", 0], - ["Solid Color", 1], - ["Breathing", 2], - ["Band Spiral Val", 3], - ["Cycle All", 4], - ["Cycle Left Right", 5], - ["Cycle Up Down", 6], - ["Rainbow Moving Chevron", 7], - ["Cycle Out In", 8], - ["Cycle Out In Dual", 9], - ["Cycle Pinwheel", 10], - ["Cycle Spiral", 11], - ["Dual Beacon", 12], - ["Rainbow Beacon", 13], - ["Jellybean Raindrops", 14], - ["Pixel Rain", 15], - ["Typing Heatmap", 16], - ["Digital Rain", 17], - ["Reactive Simple", 18], - ["Reactive Multiwide", 19], - ["Reactive Multinexus", 20], - ["Splash", 21], - ["Solid Splash", 22] - ] - }, - { - "showIf": "{id_qmk_rgb_matrix_effect} > 1", - "label": "Effect Speed", - "type": "range", - "options": [0, 255], - "content": ["id_qmk_rgb_matrix_effect_speed", 3, 3] - }, - { - "showIf": "{id_qmk_rgb_matrix_effect} != 0 && ( {id_qmk_rgb_matrix_effect} < 4 || {id_qmk_rgb_matrix_effect} == 18 || ({id_qmk_rgb_matrix_effect} > 17 && {id_qmk_rgb_matrix_effect} != 21) ) ", - "label": "Color", - "type": "color", - "content": ["id_qmk_rgb_matrix_color", 3, 4] - } - ] - } - ] - } - ], - "customKeycodes": [ - {"name": "Left Option", "title": "Left Option", "shortName": "LOpt"}, - {"name": "Right Option", "title": "Right Option", "shortName": "ROpt"}, - {"name": "Left Cmd", "title": "Left Command", "shortName": "LCmd"}, - {"name": "Right Cmd", "title": "Right Command", "shortName": "RCmd"}, - {"name": "Misson Control", "title": "Misson Control in Mac", "shortName": "MCtl"}, - {"name": "Lanuch Pad", "title": "Lanuch Pad in Windows", "shortName": "LPad"}, - {"name": "Task View", "title": "Task View in Windows", "shortName": "Task"}, - {"name": "File Explorer", "title": "File Explorer in Windows", "shortName": "File"}, - {"name": "Screen shot", "title": "Screenshot in macOS", "shortName": "SShot"}, - {"name": "Cortana", "title": "Cortana in Windows", "shortName": "Cortana"}, - {"name": "Siri", "title": "Siri in macOS", "shortName": "Siri"}, - {"name": "Bluetooth Host 1", "title": "Bluetooth Host 1", "shortName": "BTH1"}, - {"name": "Bluetooth Host 2", "title": "Bluetooth Host 2", "shortName": "BTH2"}, - {"name": "Bluetooth Host 3", "title": "Bluetooth Host 3", "shortName": "BTH3"}, - {"name": "2.4G", "title": "2.4G", "shortName": "2.4G"}, - {"name": "Battery Level", "title": "Show battery level", "shortName": "Batt"} - ], - "matrix": {"rows": 5, "cols" : 15}, - "layouts": { - "keymap": [ - [ - { - "c": "#777777" - }, - "0, 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", - "0, 13", - "0, 14" - ], - [ - { - "w": 1.5, - "c": "#aaaaaa" - }, - "1, 0", - { - "c": "#cccccc" - }, - "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, - "c": "#aaaaaa" - }, - "1, 13" - ], - [ - { - "w": 1.75, - "c": "#aaaaaa" - }, - "2, 0", - { - "c": "#cccccc" - }, - "2, 1", - "2, 2", - "2, 3", - "2, 4", - "2, 5", - "2, 6", - "2, 7", - "2, 8", - "2, 9", - "2, 10", - "2, 11", - { - "w": 2.25, - "c": "#777777" - }, - "2, 12" - ], - [ - { - "w": 2.25, - "c": "#aaaaaa" - }, - "3, 0", - { - "c": "#cccccc" - }, - "3, 2", - "3, 3", - "3, 4", - "3, 5", - "3, 6", - "3, 7", - "3, 8", - "3, 9", - "3, 10", - "3, 11", - { - "w": 1.75, - "c": "#aaaaaa" - }, - "3, 12", - "3, 13" - ], - [ - { - "x": 1.5 - }, - "4, 1", - { - "w": 1.5 - }, - "4, 2", - { - "w": 7, - "c": "#cccccc" - }, - "4, 6", - { - "w": 1.5, - "c": "#aaaaaa" - }, - "4, 11", - "4, 12" - ] - ] - } -} diff --git a/keyboards/keychron/q65_max/ansi_encoder/ansi_encoder.c b/keyboards/keychron/q65_max/ansi_encoder/ansi_encoder.c deleted file mode 100644 index 614a628c73..0000000000 --- a/keyboards/keychron/q65_max/ansi_encoder/ansi_encoder.c +++ /dev/null @@ -1,131 +0,0 @@ -/* 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/>. - */ - -#include "quantum.h" - -// clang-format off - -#ifdef RGB_MATRIX_ENABLE -const snled27351_led_t g_snled27351_leds[RGB_MATRIX_LED_COUNT] = { -/* Refer to SNLED27351 manual for these locations - * driver - * | R location - * | | G location - * | | | B location - * | | | | */ - {0, A_15, C_15, B_15}, - {0, A_14, C_14, B_14}, - {0, A_13, C_13, B_13}, - {0, A_12, C_12, B_12}, - {0, A_11, C_11, B_11}, - {0, A_10, C_10, B_10}, - {0, A_9, C_9, B_9}, - {0, A_8, C_8, B_8}, - {0, A_7, C_7, B_7}, - {0, A_6, C_6, B_6}, - {0, A_5, C_5, B_5}, - {0, A_4, C_4, B_4}, - {0, A_3, C_3, B_3}, - {0, A_2, C_2, B_2}, - {0, A_1, C_1, B_1}, - {0, D_16, F_16, E_16}, - {0, D_15, F_15, E_15}, - {0, D_14, F_14, E_14}, - {0, D_13, F_13, E_13}, - {0, D_12, F_12, E_12}, - {0, D_11, F_11, E_11}, - {0, D_10, F_10, E_10}, - {0, D_9, F_9, E_9}, - {0, D_8, F_8, E_8}, - {0, D_7, F_7, E_7}, - {0, D_6, F_6, E_6}, - {0, D_5, F_5, E_5}, - {0, D_4, F_4, E_4}, - {0, D_3, F_3, E_3}, - {0, D_2, F_2, E_2}, - {0, D_1, F_1, E_1}, - {1, A_16, C_16, B_16}, - {1, A_15, C_15, B_15}, - {1, A_14, C_14, B_14}, - {1, A_13, C_13, B_13}, - {1, A_12, C_12, B_12}, - {1, A_11, C_11, B_11}, - {1, A_10, C_10, B_10}, - {1, A_9, C_9, B_9}, - {1, A_8, C_8, B_8}, - {1, A_7, C_7, B_7}, - {1, A_6, C_6, B_6}, - {1, A_5, C_5, B_5}, - {1, A_4, C_4, B_4}, - {1, A_3, C_3, B_3}, - {1, A_2, C_2, B_2}, - {1, G_16, I_16, H_16}, - {1, G_15, I_15, H_15}, - {1, G_13, I_13, H_13}, - {1, G_12, I_12, H_12}, - {1, G_11, I_11, H_11}, - {1, G_10, I_10, H_10}, - {1, G_9, I_9, H_9}, - {1, G_8, I_8, H_8}, - {1, G_7, I_7, H_7}, - {1, G_6, I_6, H_6}, - {1, G_5, I_5, H_5}, - {1, G_4, I_4, H_4}, - {1, G_3, I_3, H_3}, - {1, G_2, I_2, H_2}, - {1, G_1, I_1, H_1}, - {1, D_16, F_16, E_16}, - {1, D_15, F_15, E_15}, - {1, D_14, F_14, E_14}, - {1, D_13, F_13, E_13}, - {1, D_9, F_9, E_9}, - {1, D_6, F_6, E_6}, - {1, D_5, F_5, E_5}, - {1, D_4, F_4, E_4}, - {1, D_3, F_3, E_3}, - {1, D_2, F_2, E_2}, - {1, D_1, F_1, E_1}, -}; - -#define __ NO_LED - -led_config_t g_led_config = { - { - // Key Matrix to LED Index - { __, 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, 40, 41, 42, 43, 44, 45, __ }, - { 46, 47, __, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60 }, - { 61, 62, 63, 64, __, __, __, 65, __, __, 66, 67, 68, 69, 70, 71 }, - }, - { - // LED Index to Physical Position - {20, 0}, {33, 0}, {47, 0}, {60, 0}, {73, 0}, {86, 0}, { 99, 0}, {112, 0}, {125, 0}, {138, 0}, {151, 0}, {164, 0}, {177, 0}, {197, 0}, {224, 0}, - {0,15}, {24,15}, {40,15}, {53,15}, {66,15}, {79,15}, {92,15}, {105,15}, {119,15}, {132,15}, {145,15}, {158,15}, {171,15}, {184,15}, {200,15}, {224,15}, - {0,30}, {25,30}, {43,30}, {56,30}, {69,30}, {83,30}, {96,30}, {109,30}, {122,30}, {135,30}, {148,30}, {161,30}, {174,30}, {195,30}, {224,30}, - {0,45}, {29,45}, {50,45}, {63,45}, {76,45}, {89,45}, {102,45}, {115,45}, {128,45}, {141,45}, {155,45}, {168,45}, {186,45}, {207,49}, {224,45}, - {0,60}, {22,60}, {38,60}, {55,60}, {104,60}, {151,60}, {164,60}, {177,60}, {194,64}, {207,64}, {220,64} - }, - { - // RGB LED Index to Flag - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 - } -}; -#endif diff --git a/keyboards/keychron/q65_max/ansi_encoder/config.h b/keyboards/keychron/q65_max/ansi_encoder/config.h deleted file mode 100644 index adc78bfc23..0000000000 --- a/keyboards/keychron/q65_max/ansi_encoder/config.h +++ /dev/null @@ -1,56 +0,0 @@ -/* Copyright 2021 @ 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 . - */ - -#pragma once - -#ifdef RGB_MATRIX_ENABLE -/* RGB Matrix driver configuration */ -# define DRIVER_COUNT 2 -# define RGB_MATRIX_LED_COUNT 72 - -# define SPI_SCK_PIN A5 -# define SPI_MISO_PIN A6 -# define SPI_MOSI_PIN A7 - -# define DRIVER_CS_PINS \ - { B9, B8 } -# define SNLED23751_SPI_DIVISOR 16 -# define SPI_DRIVER SPID1 - -/* Scan phase of led driver set as MSKPHASE_9CHANNEL(defined as 0x03 in snled27351.h) */ -# define PHASE_CHANNEL MSKPHASE_9CHANNEL - -/* Set LED driver current */ -# define SNLED27351_CURRENT_TUNE \ - { 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40 } - -/* Set to infinit, which is use in USB mode by default */ -# define RGB_MATRIX_TIMEOUT RGB_MATRIX_TIMEOUT_INFINITE - -/* Allow shutdown of led driver to save power */ -# define RGB_MATRIX_DRIVER_SHUTDOWN_ENABLE -/* Turn off backlight on low brightness to save power */ -# define RGB_MATRIX_BRIGHTNESS_TURN_OFF_VAL 32 - -/* Indications */ -# define CAPS_LOCK_INDEX 32 -# define LOW_BAT_IND_INDEX \ - { 65 } - -# define RGB_MATRIX_KEYPRESSES -# define RGB_MATRIX_FRAMEBUFFER_EFFECTS - -#endif diff --git a/keyboards/keychron/q65_max/ansi_encoder/info.json b/keyboards/keychron/q65_max/ansi_encoder/info.json deleted file mode 100644 index fd3efbc85b..0000000000 --- a/keyboards/keychron/q65_max/ansi_encoder/info.json +++ /dev/null @@ -1,89 +0,0 @@ -{ - "usb": { - "pid": "0x08B0", - "device_version": "1.0.0" - }, - "layouts": { - "LAYOUT_ansi_73": { - "layout": [ - {"matrix": [0, 0], "x": 0, "y": 0}, - {"matrix": [0, 1], "x": 1.5, "y": 0.25}, - {"matrix": [0, 2], "x": 2.5, "y": 0.25}, - {"matrix": [0, 3], "x": 3.5, "y": 0.25}, - {"matrix": [0, 4], "x": 4.5, "y": 0.25}, - {"matrix": [0, 5], "x": 5.5, "y": 0.25}, - {"matrix": [0, 6], "x": 6.5, "y": 0.25}, - {"matrix": [0, 7], "x": 7.5, "y": 0.25}, - {"matrix": [0, 8], "x": 8.5, "y": 0.25}, - {"matrix": [0, 9], "x": 9.5, "y": 0.25}, - {"matrix": [0, 10], "x": 10.5, "y": 0.25}, - {"matrix": [0, 11], "x": 11.5, "y": 0.25}, - {"matrix": [0, 12], "x": 12.5, "y": 0.25}, - {"matrix": [0, 13], "x": 13.5, "y": 0.25}, - {"matrix": [0, 14], "x": 14.5, "y": 0.25, "w": 2}, - {"matrix": [0, 15], "x": 17, "y": 0.25}, - - {"matrix": [1, 0], "x": 0, "y": 1.25}, - {"matrix": [1, 1], "x": 1.5, "y": 1.25, "w": 1.5}, - {"matrix": [1, 2], "x": 3, "y": 1.25}, - {"matrix": [1, 3], "x": 4, "y": 1.25}, - {"matrix": [1, 4], "x": 5, "y": 1.25}, - {"matrix": [1, 5], "x": 6, "y": 1.25}, - {"matrix": [1, 6], "x": 7, "y": 1.25}, - {"matrix": [1, 7], "x": 8, "y": 1.25}, - {"matrix": [1, 8], "x": 9, "y": 1.25}, - {"matrix": [1, 9], "x": 10, "y": 1.25}, - {"matrix": [1, 10], "x": 11, "y": 1.25}, - {"matrix": [1, 11], "x": 12, "y": 1.25}, - {"matrix": [1, 12], "x": 13, "y": 1.25}, - {"matrix": [1, 13], "x": 14, "y": 1.25}, - {"matrix": [1, 14], "x": 15, "y": 1.25, "w": 1.5}, - {"matrix": [1, 15], "x": 17, "y": 1.25}, - - {"matrix": [2, 0], "x": 0, "y": 2.25}, - {"matrix": [2, 1], "x": 1.5, "y": 2.25, "w": 1.75}, - {"matrix": [2, 2], "x": 3.25, "y": 2.25}, - {"matrix": [2, 3], "x": 4.25, "y": 2.25}, - {"matrix": [2, 4], "x": 5.25, "y": 2.25}, - {"matrix": [2, 5], "x": 6.25, "y": 2.25}, - {"matrix": [2, 6], "x": 7.25, "y": 2.25}, - {"matrix": [2, 7], "x": 8.25, "y": 2.25}, - {"matrix": [2, 8], "x": 9.25, "y": 2.25}, - {"matrix": [2, 9], "x": 10.25, "y": 2.25}, - {"matrix": [2, 10], "x": 11.25, "y": 2.25}, - {"matrix": [2, 11], "x": 12.25, "y": 2.25}, - {"matrix": [2, 12], "x": 13.25, "y": 2.25}, - {"matrix": [2, 13], "x": 14.25, "y": 2.25, "w": 2.25}, - {"matrix": [2, 14], "x": 17, "y": 2.25}, - - {"matrix": [3, 0], "x": 0, "y": 3.25}, - {"matrix": [3, 1], "x": 1.5, "y": 3.25, "w": 2.25}, - {"matrix": [3, 3], "x": 3.75, "y": 3.25}, - {"matrix": [3, 4], "x": 4.75, "y": 3.25}, - {"matrix": [3, 5], "x": 5.75, "y": 3.25}, - {"matrix": [3, 6], "x": 6.75, "y": 3.25}, - {"matrix": [3, 7], "x": 7.75, "y": 3.25}, - {"matrix": [3, 8], "x": 8.75, "y": 3.25}, - {"matrix": [3, 9], "x": 9.75, "y": 3.25}, - {"matrix": [3, 10], "x": 10.75, "y": 3.25}, - {"matrix": [3, 11], "x": 11.75, "y": 3.25}, - {"matrix": [3, 12], "x": 12.75, "y": 3.25}, - {"matrix": [3, 13], "x": 13.75, "y": 3.25, "w": 1.75}, - {"matrix": [3, 14], "x": 15.75, "y": 3.5}, - {"matrix": [3, 15], "x": 17, "y": 3.25}, - - {"matrix": [4, 0], "x": 0, "y": 4.25}, - {"matrix": [4, 1], "x": 1.5, "y": 4.25, "w": 1.25}, - {"matrix": [4, 2], "x": 2.75, "y": 4.25, "w": 1.25}, - {"matrix": [4, 3], "x": 4, "y": 4.25, "w": 1.25}, - {"matrix": [4, 7], "x": 5.25, "y": 4.25, "w": 6.25}, - {"matrix": [4, 10], "x": 11.5, "y": 4.25}, - {"matrix": [4, 11], "x": 12.5, "y": 4.25}, - {"matrix": [4, 12], "x": 13.5, "y": 4.25}, - {"matrix": [4, 13], "x": 14.75, "y": 4.5}, - {"matrix": [4, 14], "x": 15.75, "y": 4.5}, - {"matrix": [4, 15], "x": 16.75, "y": 4.5} - ] - } - } -} diff --git a/keyboards/keychron/q65_max/ansi_encoder/keymaps/default/keymap.c b/keyboards/keychron/q65_max/ansi_encoder/keymaps/default/keymap.c deleted file mode 100644 index 4af969cac9..0000000000 --- a/keyboards/keychron/q65_max/ansi_encoder/keymaps/default/keymap.c +++ /dev/null @@ -1,81 +0,0 @@ -/* 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 . - */ - -#include QMK_KEYBOARD_H -#include "keychron_common.h" - -enum layers { - MAC_BASE, - WIN_BASE, - MAC_FN1, - WIN_FN1, - FN2 -}; -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_ansi_73( - KC_MUTE, 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_DEL, - MC_2, 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_HOME, - MC_3, 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_PGUP, - MC_4, 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_PGDN, - MC_5, KC_LCTL, KC_LOPTN,KC_LCMMD, KC_SPC, KC_RCMMD, MO(MAC_FN1),MO(FN2),KC_LEFT, KC_DOWN, KC_RGHT), - - [WIN_BASE] = LAYOUT_ansi_73( - KC_MUTE, 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_DEL, - MC_2, 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_HOME, - MC_3, 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_PGUP, - MC_4, 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_PGDN, - MC_5, KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(WIN_FN1),MO(FN2),KC_LEFT, KC_DOWN, KC_RGHT), - - [MAC_FN1] = LAYOUT_ansi_73( - RGB_TOG, KC_GRV, KC_BRID, KC_BRIU, KC_MCTRL,KC_LNPAD,RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, - _______, _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - - [WIN_FN1] = LAYOUT_ansi_73( - RGB_TOG, KC_GRV, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, - _______, _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - - [FN2] = LAYOUT_ansi_73( - _______, KC_TILD, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, BAT_LVL, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______) -}; - -// clang-format on -#if defined(ENCODER_MAP_ENABLE) -const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][2] = { - [MAC_BASE] = {ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [WIN_BASE] = {ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [MAC_FN1] = {ENCODER_CCW_CW(RGB_VAD, RGB_VAI)}, - [WIN_FN1] = {ENCODER_CCW_CW(RGB_VAD, RGB_VAI)}, - [FN2] = {ENCODER_CCW_CW(_______, _______)}, -}; -#endif // ENCODER_MAP_ENABLE - -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - if (!process_record_keychron_common(keycode, record)) { - return false; - } - return true; -} diff --git a/keyboards/keychron/q65_max/ansi_encoder/keymaps/via/keymap.c b/keyboards/keychron/q65_max/ansi_encoder/keymaps/via/keymap.c deleted file mode 100644 index 4af969cac9..0000000000 --- a/keyboards/keychron/q65_max/ansi_encoder/keymaps/via/keymap.c +++ /dev/null @@ -1,81 +0,0 @@ -/* 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 . - */ - -#include QMK_KEYBOARD_H -#include "keychron_common.h" - -enum layers { - MAC_BASE, - WIN_BASE, - MAC_FN1, - WIN_FN1, - FN2 -}; -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_ansi_73( - KC_MUTE, 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_DEL, - MC_2, 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_HOME, - MC_3, 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_PGUP, - MC_4, 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_PGDN, - MC_5, KC_LCTL, KC_LOPTN,KC_LCMMD, KC_SPC, KC_RCMMD, MO(MAC_FN1),MO(FN2),KC_LEFT, KC_DOWN, KC_RGHT), - - [WIN_BASE] = LAYOUT_ansi_73( - KC_MUTE, 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_DEL, - MC_2, 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_HOME, - MC_3, 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_PGUP, - MC_4, 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_PGDN, - MC_5, KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(WIN_FN1),MO(FN2),KC_LEFT, KC_DOWN, KC_RGHT), - - [MAC_FN1] = LAYOUT_ansi_73( - RGB_TOG, KC_GRV, KC_BRID, KC_BRIU, KC_MCTRL,KC_LNPAD,RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, - _______, _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - - [WIN_FN1] = LAYOUT_ansi_73( - RGB_TOG, KC_GRV, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, - _______, _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - - [FN2] = LAYOUT_ansi_73( - _______, KC_TILD, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, BAT_LVL, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______) -}; - -// clang-format on -#if defined(ENCODER_MAP_ENABLE) -const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][2] = { - [MAC_BASE] = {ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [WIN_BASE] = {ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [MAC_FN1] = {ENCODER_CCW_CW(RGB_VAD, RGB_VAI)}, - [WIN_FN1] = {ENCODER_CCW_CW(RGB_VAD, RGB_VAI)}, - [FN2] = {ENCODER_CCW_CW(_______, _______)}, -}; -#endif // ENCODER_MAP_ENABLE - -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - if (!process_record_keychron_common(keycode, record)) { - return false; - } - return true; -} diff --git a/keyboards/keychron/q65_max/ansi_encoder/keymaps/via/rules.mk b/keyboards/keychron/q65_max/ansi_encoder/keymaps/via/rules.mk deleted file mode 100644 index 1e5b99807c..0000000000 --- a/keyboards/keychron/q65_max/ansi_encoder/keymaps/via/rules.mk +++ /dev/null @@ -1 +0,0 @@ -VIA_ENABLE = yes diff --git a/keyboards/keychron/q65_max/ansi_encoder/rules.mk b/keyboards/keychron/q65_max/ansi_encoder/rules.mk deleted file mode 100644 index 7ff128fa69..0000000000 --- a/keyboards/keychron/q65_max/ansi_encoder/rules.mk +++ /dev/null @@ -1 +0,0 @@ -# This file intentionally left blank \ No newline at end of file diff --git a/keyboards/keychron/q65_max/board.h b/keyboards/keychron/q65_max/board.h deleted file mode 100644 index 5f159c5276..0000000000 --- a/keyboards/keychron/q65_max/board.h +++ /dev/null @@ -1,226 +0,0 @@ -/* 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 . - */ - -#pragma once - -#include_next - -// clang-format off - -/* Set GPIOA_SWDIO to INPUT & PIN_PUPDR_PULLUP to avoid FLOATING */ -#undef VAL_GPIOA_MODER -#define VAL_GPIOA_MODER (PIN_MODE_INPUT(GPIOA_BUTTON) | \ - PIN_MODE_INPUT(GPIOA_PIN1) | \ - PIN_MODE_INPUT(GPIOA_PIN2) | \ - PIN_MODE_INPUT(GPIOA_PIN3) | \ - PIN_MODE_ALTERNATE(GPIOA_CS43L22_LRCK) |\ - PIN_MODE_ALTERNATE(GPIOA_L3GD20_SCL) | \ - PIN_MODE_ALTERNATE(GPIOA_L3GD20_SD0) | \ - PIN_MODE_ALTERNATE(GPIOA_L3GD20_SDI) | \ - PIN_MODE_INPUT(GPIOA_PIN8) | \ - PIN_MODE_INPUT(GPIOA_VBUS_FS) | \ - PIN_MODE_ALTERNATE(GPIOA_OTG_FS_ID) | \ - PIN_MODE_ALTERNATE(GPIOA_OTG_FS_DM) | \ - PIN_MODE_ALTERNATE(GPIOA_OTG_FS_DP) | \ - PIN_MODE_INPUT(GPIOA_SWDIO) | \ - PIN_MODE_INPUT(GPIOA_SWCLK) | \ - PIN_MODE_INPUT(GPIOA_PIN15)) - -#undef VAL_GPIOA_PUPDR -#define VAL_GPIOA_PUPDR (PIN_PUPDR_FLOATING(GPIOA_BUTTON) | \ - PIN_PUPDR_PULLUP(GPIOA_PIN1) | \ - PIN_PUPDR_PULLUP(GPIOA_PIN2) | \ - PIN_PUPDR_PULLUP(GPIOA_PIN3) | \ - PIN_PUPDR_FLOATING(GPIOA_CS43L22_LRCK) |\ - PIN_PUPDR_FLOATING(GPIOA_L3GD20_SCL) | \ - PIN_PUPDR_PULLUP(GPIOA_L3GD20_SD0) | \ - PIN_PUPDR_PULLUP(GPIOA_L3GD20_SDI) | \ - PIN_PUPDR_PULLUP(GPIOA_PIN8) | \ - PIN_PUPDR_FLOATING(GPIOA_VBUS_FS) | \ - PIN_PUPDR_FLOATING(GPIOA_OTG_FS_ID) | \ - PIN_PUPDR_FLOATING(GPIOA_OTG_FS_DM) | \ - PIN_PUPDR_FLOATING(GPIOA_OTG_FS_DP) | \ - PIN_PUPDR_PULLUP(GPIOA_SWDIO) | \ - PIN_PUPDR_PULLUP(GPIOA_SWCLK) | \ - PIN_PUPDR_PULLUP(GPIOA_PIN15)) - -#undef VAL_GPIOB_MODER -#define VAL_GPIOB_MODER (PIN_MODE_INPUT(GPIOB_PIN0) | \ - PIN_MODE_INPUT(GPIOB_PIN1) | \ - PIN_MODE_INPUT(GPIOB_PIN2) | \ - PIN_MODE_INPUT(GPIOB_SWO) | \ - PIN_MODE_INPUT(GPIOB_PIN4) | \ - PIN_MODE_INPUT(GPIOB_PIN5) | \ - PIN_MODE_INPUT(GPIOB_LSM303DLHC_SCL) | \ - PIN_MODE_INPUT(GPIOB_PIN7) | \ - PIN_MODE_INPUT(GPIOB_PIN8) | \ - PIN_MODE_INPUT(GPIOB_LSM303DLHC_SDA) | \ - PIN_MODE_INPUT(GPIOB_MP45DT02_CLK_IN) |\ - PIN_MODE_INPUT(GPIOB_PIN11) | \ - PIN_MODE_INPUT(GPIOB_PIN12) | \ - PIN_MODE_INPUT(GPIOB_PIN13) | \ - PIN_MODE_INPUT(GPIOB_PIN14) | \ - PIN_MODE_INPUT(GPIOB_PIN15)) - -#undef VAL_GPIOB_PUPDR -#define VAL_GPIOB_PUPDR (PIN_PUPDR_PULLDOWN(GPIOB_PIN0) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN1) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN2) | \ - PIN_PUPDR_PULLDOWN(GPIOB_SWO) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN4) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN5) | \ - PIN_PUPDR_PULLDOWN(GPIOB_LSM303DLHC_SCL) |\ - PIN_PUPDR_PULLDOWN(GPIOB_PIN7) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN8) | \ - PIN_PUPDR_PULLDOWN(GPIOB_LSM303DLHC_SDA) |\ - PIN_PUPDR_PULLDOWN(GPIOB_MP45DT02_CLK_IN) |\ - PIN_PUPDR_PULLDOWN(GPIOB_PIN11) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN12) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN13) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN14) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN15)) - -#undef VAL_GPIOB_AFRL -#define VAL_GPIOB_AFRL (PIN_AFIO_AF(GPIOB_PIN0, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN1, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN2, 0U) | \ - PIN_AFIO_AF(GPIOB_SWO, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN4, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN5, 0U) | \ - PIN_AFIO_AF(GPIOB_LSM303DLHC_SCL, 0) | \ - PIN_AFIO_AF(GPIOB_PIN7, 0U)) - -#undef VAL_GPIOB_AFRH -#define VAL_GPIOB_AFRH (PIN_AFIO_AF(GPIOB_PIN8, 0U) | \ - PIN_AFIO_AF(GPIOB_LSM303DLHC_SDA, 0) | \ - PIN_AFIO_AF(GPIOB_MP45DT02_CLK_IN, 0U) |\ - PIN_AFIO_AF(GPIOB_PIN11, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN12, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN13, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN14, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN15, 0U)) - -/* C5 Need to be pulldown */ -#undef VAL_GPIOC_MODER -#define VAL_GPIOC_MODER (PIN_MODE_INPUT(GPIOC_OTG_FS_POWER_ON) |\ - PIN_MODE_INPUT(GPIOC_PIN1) | \ - PIN_MODE_INPUT(GPIOC_PIN2) | \ - PIN_MODE_INPUT(GPIOC_CS43L22_AIN4x) | \ - PIN_MODE_INPUT(GPIOC_PIN4) | \ - PIN_MODE_INPUT(GPIOC_PIN5) | \ - PIN_MODE_INPUT(GPIOC_PIN6) | \ - PIN_MODE_INPUT(GPIOC_CS43L22_MCLK) | \ - PIN_MODE_INPUT(GPIOC_PIN8) | \ - PIN_MODE_INPUT(GPIOC_PIN9) | \ - PIN_MODE_INPUT(GPIOC_CS43L22_SCLK) | \ - PIN_MODE_INPUT(GPIOC_PIN11) | \ - PIN_MODE_INPUT(GPIOC_CS43L22_SDIN) | \ - PIN_MODE_INPUT(GPIOC_PIN13) | \ - PIN_MODE_INPUT(GPIOC_OSC32_IN) | \ - PIN_MODE_INPUT(GPIOC_OSC32_OUT)) - -#undef VAL_GPIOC_PUPDR -#define VAL_GPIOC_PUPDR (PIN_PUPDR_PULLUP(GPIOC_OTG_FS_POWER_ON) |\ - PIN_PUPDR_PULLUP(GPIOC_PIN1) | \ - PIN_PUPDR_PULLUP(GPIOC_PIN2) | \ - PIN_PUPDR_PULLUP(GPIOC_CS43L22_AIN4x) |\ - PIN_PUPDR_PULLUP(GPIOC_PIN4) | \ - PIN_PUPDR_PULLDOWN(GPIOC_PIN5) | \ - PIN_PUPDR_PULLUP(GPIOC_PIN6) | \ - PIN_PUPDR_PULLUP(GPIOC_CS43L22_MCLK) | \ - PIN_PUPDR_PULLUP(GPIOC_PIN8) | \ - PIN_PUPDR_PULLUP(GPIOC_PIN9) | \ - PIN_PUPDR_PULLUP(GPIOC_CS43L22_SCLK) | \ - PIN_PUPDR_PULLUP(GPIOC_PIN11) | \ - PIN_PUPDR_PULLUP(GPIOC_CS43L22_SDIN) | \ - PIN_PUPDR_PULLUP(GPIOC_PIN13) | \ - PIN_PUPDR_PULLUP(GPIOC_OSC32_IN) | \ - PIN_PUPDR_PULLUP(GPIOC_OSC32_OUT)) - -/* Set all GPIOD pins to INPUT & PULLUP to avoid FLOATING */ -#undef VAL_GPIOD_MODER -#define VAL_GPIOD_MODER (PIN_MODE_INPUT(GPIOD_PIN0) | \ - PIN_MODE_INPUT(GPIOD_PIN1) | \ - PIN_MODE_INPUT(GPIOD_PIN2) | \ - PIN_MODE_INPUT(GPIOD_PIN3) | \ - PIN_MODE_INPUT(GPIOD_CS43L22_RESET) | \ - PIN_MODE_INPUT(GPIOD_OverCurrent) | \ - PIN_MODE_INPUT(GPIOD_PIN6) | \ - PIN_MODE_INPUT(GPIOD_PIN7) | \ - PIN_MODE_INPUT(GPIOD_PIN8) | \ - PIN_MODE_INPUT(GPIOD_PIN9) | \ - PIN_MODE_INPUT(GPIOD_PIN10) | \ - PIN_MODE_INPUT(GPIOD_PIN11) | \ - PIN_MODE_INPUT(GPIOD_LED4) | \ - PIN_MODE_INPUT(GPIOD_LED3) | \ - PIN_MODE_INPUT(GPIOD_LED5) | \ - PIN_MODE_INPUT(GPIOD_LED6)) - -#undef VAL_GPIOD_PUPDR -#define VAL_GPIOD_PUPDR (PIN_PUPDR_PULLUP(GPIOD_PIN0) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN1) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN2) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN3) | \ - PIN_PUPDR_PULLUP(GPIOD_CS43L22_RESET) |\ - PIN_PUPDR_PULLUP(GPIOD_OverCurrent) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN6) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN7) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN8) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN9) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN10) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN11) | \ - PIN_PUPDR_PULLUP(GPIOD_LED4) | \ - PIN_PUPDR_PULLUP(GPIOD_LED3) | \ - PIN_PUPDR_PULLUP(GPIOD_LED5) | \ - PIN_PUPDR_PULLUP(GPIOD_LED6)) - -/* Set all GPIOE pins to INPUT & PULLUP to avoid FLOATING */ -#undef VAL_GPIOE_MODER -#define VAL_GPIOE_MODER (PIN_MODE_INPUT(GPIOE_L3GD20_INT1) | \ - PIN_MODE_INPUT(GPIOE_L3GD20_INT2) | \ - PIN_MODE_INPUT(GPIOE_LSM303DLHC_DRDY) |\ - PIN_MODE_INPUT(GPIOE_L3GD20_CS) | \ - PIN_MODE_INPUT(GPIOE_LSM303DLHC_INT1) |\ - PIN_MODE_INPUT(GPIOE_LSM303DLHC_INT2) |\ - PIN_MODE_INPUT(GPIOE_PIN6) | \ - PIN_MODE_INPUT(GPIOE_PIN7) | \ - PIN_MODE_INPUT(GPIOE_PIN8) | \ - PIN_MODE_INPUT(GPIOE_PIN9) | \ - PIN_MODE_INPUT(GPIOE_PIN10) | \ - PIN_MODE_INPUT(GPIOE_PIN11) | \ - PIN_MODE_INPUT(GPIOE_PIN12) | \ - PIN_MODE_INPUT(GPIOE_PIN13) | \ - PIN_MODE_INPUT(GPIOE_PIN14) | \ - PIN_MODE_INPUT(GPIOE_PIN15)) - -#undef VAL_GPIOE_PUPDR -#define VAL_GPIOE_PUPDR (PIN_PUPDR_PULLUP(GPIOE_L3GD20_INT1) | \ - PIN_PUPDR_PULLUP(GPIOE_L3GD20_INT2) | \ - PIN_PUPDR_PULLUP(GPIOE_LSM303DLHC_DRDY) |\ - PIN_PUPDR_PULLUP(GPIOE_L3GD20_CS) | \ - PIN_PUPDR_PULLUP(GPIOE_LSM303DLHC_INT1) |\ - PIN_PUPDR_PULLUP(GPIOE_LSM303DLHC_INT2) |\ - PIN_PUPDR_PULLUP(GPIOE_PIN6) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN7) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN8) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN9) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN10) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN11) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN12) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN13) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN14) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN15)) - diff --git a/keyboards/keychron/q65_max/config.h b/keyboards/keychron/q65_max/config.h deleted file mode 100644 index 6fe594feea..0000000000 --- a/keyboards/keychron/q65_max/config.h +++ /dev/null @@ -1,82 +0,0 @@ -/* 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 . - */ - -#pragma once - -/* Encoder Configuration */ -#define ENCODER_DEFAULT_POS 0x3 -#define ENCODER_MAP_KEY_DELAY 2 - -#ifdef LK_WIRELESS_ENABLE -/* Hardware configuration */ -# define P2P4_MODE_SELECT_PIN A10 -# define BT_MODE_SELECT_PIN A9 - -# define LKBT51_RESET_PIN C4 -# define LKBT51_INT_INPUT_PIN B1 -# define BLUETOOTH_INT_OUTPUT_PIN A4 - -# define USB_POWER_SENSE_PIN B0 -# define USB_POWER_CONNECTED_LEVEL 0 - -# define BAT_CHARGING_PIN B13 -# define BAT_CHARGING_LEVEL 0 - -# define BT_HOST_DEVICES_COUNT 3 - -# if defined(RGB_MATRIX_ENABLE) || defined(LED_MATRIX_ENABLE) - -# define LED_DRIVER_SHUTDOWN_PIN B7 - -# define BT_HOST_LED_MATRIX_LIST \ - { 17, 18, 19 } - -# define P2P4G_HOST_LED_MATRIX_LIST \ - { 20 } - -# 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 - -/* Reinit LED driver on tranport changed */ -# define REINIT_LED_DRIVER 1 - -# endif - -/* Keep USB connection in blueooth mode */ -# define KEEP_USB_CONNECTION_IN_WIRELESS_MODE - -/* Enable bluetooth NKRO */ -# define WIRELESS_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 - -/* Factory test keys */ -#define FN_KEY_1 MO(2) -#define FN_KEY_2 MO(3) -#define FN_KEY_3 MO(4) - -#define MATRIX_IO_DELAY 10 diff --git a/keyboards/keychron/q65_max/firmware/keychron_q65_max_ansi_encoder_via.bin b/keyboards/keychron/q65_max/firmware/keychron_q65_max_ansi_encoder_via.bin deleted file mode 100644 index 827fc65e7f..0000000000 Binary files a/keyboards/keychron/q65_max/firmware/keychron_q65_max_ansi_encoder_via.bin and /dev/null differ diff --git a/keyboards/keychron/q65_max/halconf.h b/keyboards/keychron/q65_max/halconf.h deleted file mode 100644 index b1ed75e0b8..0000000000 --- a/keyboards/keychron/q65_max/halconf.h +++ /dev/null @@ -1,31 +0,0 @@ -/* 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 - -#define _CHIBIOS_HAL_CONF_VER_8_0_ - -#define HAL_USE_SPI TRUE - -#ifdef LK_WIRELESS_ENABLE -# define HAL_USE_RTC TRUE -#endif - -#if defined(LK_WIRELESS_ENABLE) || defined(ENCODER_ENABLE) -# define PAL_USE_CALLBACKS TRUE -#endif - -#include_next diff --git a/keyboards/keychron/q65_max/info.json b/keyboards/keychron/q65_max/info.json deleted file mode 100644 index 4658a01f12..0000000000 --- a/keyboards/keychron/q65_max/info.json +++ /dev/null @@ -1,80 +0,0 @@ -{ - "keyboard_name": "Keychron Q65 Max", - "manufacturer": "Keychron", - "url": "https://github.com/Keychron", - "maintainer": "lokher", - "processor": "STM32F401", - "bootloader": "stm32-dfu", - "usb": { - "vid": "0x3434" - }, - "features": { - "bootmagic": true, - "extrakey" : true, - "mousekey" : true, - "dip_switch" : true, - "encoder": true, - "encoder_map": true, - "nkro" : true, - "rgb_matrix": true, - "raw" : true, - "send_string" : true - }, - "matrix_pins": { - "cols": ["C6", "C7", "C8", "A14", "A15", "C10", "C11", "C13", "C14", "C15", "C0", "C1", "C2", "C3", "A0", "A1"], - "rows": ["D2", "B3", "B4", "B5", "B6"] - }, - "diode_direction": "ROW2COL", - "encoder": { - "rotary": [ - { - "pin_a": "B15", - "pin_b": "B14" - } - ] - }, - "dip_switch" :{ - "pins": ["B12"] - }, - "rgb_matrix": { - "driver": "snled27351_spi", - "sleep": true, - "animations": { - "band_spiral_val": true, - "breathing": true, - "cycle_all": true, - "cycle_left_right": true, - "cycle_out_in": true, - "cycle_out_in_dual": true, - "cycle_pinwheel": true, - "cycle_spiral": true, - "cycle_up_down": true, - "digital_rain": true, - "dual_beacon": true, - "jellybean_raindrops": true, - "pixel_rain": true, - "rainbow_beacon": true, - "rainbow_moving_chevron": true, - "solid_reactive_multinexus": true, - "solid_reactive_multiwide": true, - "solid_reactive_simple": true, - "solid_splash": true, - "splash": true, - "typing_heatmap": true - } - }, - "eeprom": { - "wear_leveling": { - "driver": "embedded_flash", - "logical_size": 2048, - "backing_size": 4096 - } - }, - "dynamic_keymap": { - "layer_count": 5 - }, - "build": { - "debounce_type": "sym_eager_pk" - }, - "debounce": 20 -} diff --git a/keyboards/keychron/q65_max/mcuconf.h b/keyboards/keychron/q65_max/mcuconf.h deleted file mode 100644 index 9cbef71ca6..0000000000 --- a/keyboards/keychron/q65_max/mcuconf.h +++ /dev/null @@ -1,37 +0,0 @@ -/* 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 - -#include_next - -#undef STM32_HSECLK -#define STM32_HSECLK 16000000 - -#undef STM32_PLLM_VALUE -#define STM32_PLLM_VALUE 8 - -#undef STM32_PLLN_VALUE -#define STM32_PLLN_VALUE 96 - -#undef STM32_PLLP_VALUE -#define STM32_PLLP_VALUE 4 - -#undef STM32_PLLQ_VALUE -#define STM32_PLLQ_VALUE 4 - -#undef STM32_SPI_USE_SPI1 -#define STM32_SPI_USE_SPI1 TRUE diff --git a/keyboards/keychron/q65_max/q65_max.c b/keyboards/keychron/q65_max/q65_max.c deleted file mode 100644 index c19133b683..0000000000 --- a/keyboards/keychron/q65_max/q65_max.c +++ /dev/null @@ -1,61 +0,0 @@ -/* 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/>. - */ - -#include "quantum.h" -#include "keychron_task.h" -#ifdef FACTORY_TEST_ENABLE -# include "factory_test.h" -# include "keychron_common.h" -#endif -#ifdef LK_WIRELESS_ENABLE -# include "lkbt51.h" -# include "wireless.h" -# include "keychron_wireless_common.h" -# include "battery.h" -#endif - -#ifdef DIP_SWITCH_ENABLE -bool dip_switch_update_kb(uint8_t index, bool active) { - if (index == 0) { - default_layer_set(1UL << (active ? 1 : 0)); - } - dip_switch_update_user(index, active); - - return true; -} -#endif - -void keyboard_post_init_kb(void) { -#ifdef LK_WIRELESS_ENABLE - palSetLineMode(P2P4_MODE_SELECT_PIN, PAL_MODE_INPUT); - palSetLineMode(BT_MODE_SELECT_PIN, PAL_MODE_INPUT); - - lkbt51_init(false); - wireless_init(); -#endif - -#ifdef ENCODER_ENABLE - encoder_cb_init(); -#endif - - keyboard_post_init_user(); -} - -#ifdef LK_WIRELESS_ENABLE -bool lpm_is_kb_idle(void) { - return !factory_reset_indicating(); -} -#endif diff --git a/keyboards/keychron/q65_max/readme.md b/keyboards/keychron/q65_max/readme.md deleted file mode 100644 index 3a1dc24e8b..0000000000 --- a/keyboards/keychron/q65_max/readme.md +++ /dev/null @@ -1,21 +0,0 @@ -# Keychron Q65 Max - -![Keychron Q65 Max](https://cdn.shopify.com/s/files/1/0059/0630/1017/files/Q65-Max-page12.jpg?v=1702977681) - -A customizable 65% keyboard. - -* Keyboard Maintainer: [Keychron](https://github.com/keychron) -* Hardware Supported: Keychron Q65 Max -* Hardware Availability: [Keychron Q65 Max QMK/VIA Wireless Custom Mechanical Keyboard](https://www.keychron.com/products/keychron-q65-max-qmk-via-wireless-custom-mechanical-keyboard) - -Make example for this keyboard (after setting up your build environment): - - make keychron/q65_max/ansi_encoder:default - -Flashing example for this keyboard: - - make keychron/q65_max/ansi_encoder:default:flash - -**Reset Key**: Toggle mode switch to "Cable", hold down the *Esc* key or reset button underneath space bar while connecting the USB cable, - -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). diff --git a/keyboards/keychron/q65_max/rules.mk b/keyboards/keychron/q65_max/rules.mk deleted file mode 100644 index 4eaf6820bc..0000000000 --- a/keyboards/keychron/q65_max/rules.mk +++ /dev/null @@ -1,4 +0,0 @@ -include keyboards/keychron/common/wireless/wireless.mk -include keyboards/keychron/common/keychron_common.mk - -VPATH += $(TOP_DIR)/keyboards/keychron diff --git a/keyboards/keychron/q65_max/via_json/q65_max_ansi_encoder.json b/keyboards/keychron/q65_max/via_json/q65_max_ansi_encoder.json deleted file mode 100644 index 88d98270a9..0000000000 --- a/keyboards/keychron/q65_max/via_json/q65_max_ansi_encoder.json +++ /dev/null @@ -1,275 +0,0 @@ -{ - "name": "Keychron Q65 Max ANSI Knob", - "vendorId": "0x3434", - "productId": "0x08B0", - "keycodes": ["qmk_lighting"], - "menus": [ - { - "label": "Lighting", - "content": [ - { - "label": "Backlight", - "content": [ - { - "label": "Brightness", - "type": "range", - "options": [0, 255], - "content": ["id_qmk_rgb_matrix_brightness", 3, 1] - }, - { - "label": "Effect", - "type": "dropdown", - "content": ["id_qmk_rgb_matrix_effect", 3, 2], - "options": [ - ["None", 0], - ["Solid Color", 1], - ["Breathing", 2], - ["Band Spiral Val", 3], - ["Cycle All", 4], - ["Cycle Left Right", 5], - ["Cycle Up Down", 6], - ["Rainbow Moving Chevron", 7], - ["Cycle Out In", 8], - ["Cycle Out In Dual", 9], - ["Cycle Pinwheel", 10], - ["Cycle Spiral", 11], - ["Dual Beacon", 12], - ["Rainbow Beacon", 13], - ["Jellybean Raindrops", 14], - ["Pixel Rain", 15], - ["Typing Heatmap", 16], - ["Digital Rain", 17], - ["Reactive Simple", 18], - ["Reactive Multiwide", 19], - ["Reactive Multinexus", 20], - ["Splash", 21], - ["Solid Splash", 22] - ] - }, - { - "showIf": "{id_qmk_rgb_matrix_effect} > 1", - "label": "Effect Speed", - "type": "range", - "options": [0, 255], - "content": ["id_qmk_rgb_matrix_effect_speed", 3, 3] - }, - { - "showIf": "{id_qmk_rgb_matrix_effect} != 0 && ( {id_qmk_rgb_matrix_effect} < 4 || {id_qmk_rgb_matrix_effect} == 18 || ({id_qmk_rgb_matrix_effect} > 17 && {id_qmk_rgb_matrix_effect} != 21) ) ", - "label": "Color", - "type": "color", - "content": ["id_qmk_rgb_matrix_color", 3, 4] - } - ] - } - ] - } - ], - "customKeycodes": [ - {"name": "Left Option", "title": "Left Option", "shortName": "LOpt"}, - {"name": "Right Option", "title": "Right Option", "shortName": "ROpt"}, - {"name": "Left Cmd", "title": "Left Command", "shortName": "LCmd"}, - {"name": "Right Cmd", "title": "Right Command", "shortName": "RCmd"}, - {"name": "Misson Control", "title": "Misson Control in Mac", "shortName": "MCtl"}, - {"name": "Lanuch Pad", "title": "Lanuch Pad in Windows", "shortName": "LPad"}, - {"name": "Task View", "title": "Task View in Windows", "shortName": "Task"}, - {"name": "File Explorer", "title": "File Explorer in Windows", "shortName": "File"}, - {"name": "Screen shot", "title": "Screenshot in macOS", "shortName": "SShot"}, - {"name": "Cortana", "title": "Cortana in Windows", "shortName": "Cortana"}, - {"name": "Siri", "title": "Siri in macOS", "shortName": "Siri"}, - {"name": "Bluetooth Host 1", "title": "Bluetooth Host 1", "shortName": "BTH1"}, - {"name": "Bluetooth Host 2", "title": "Bluetooth Host 2", "shortName": "BTH2"}, - {"name": "Bluetooth Host 3", "title": "Bluetooth Host 3", "shortName": "BTH3"}, - {"name": "2.4G", "title": "2.4G", "shortName": "2.4G"}, - {"name": "Battery Level", "title": "Show battery level", "shortName": "Batt"} - ], - "matrix": {"rows": 5, "cols" : 16}, - "layouts": { - "keymap": [ - [ - { - "c": "#aaaaaa" - }, - "0, 0\n\n\n\n\n\n\n\n\ne0", - { - "x": 0.5, - "y": 0.25, - "c": "#777777" - }, - "0, 1", - { - "c": "#cccccc" - }, - "0, 2", - "0, 3", - "0, 4", - "0, 5", - { - "c": "#aaaaaa" - }, - "0, 6", - "0, 7", - "0, 8", - "0, 9", - { - "c": "#cccccc" - }, - "0, 10", - "0, 11", - "0, 12", - "0, 13", - { - "w": 2, - "c": "#aaaaaa" - }, - "0, 14", - { - "x": 0.5 - }, - "0, 15" - ], - [ - "1, 0", - { - "x": 0.5, - "w": 1.5, - "c": "#aaaaaa" - }, - "1, 1", - { - "c": "#cccccc" - }, - "1, 2", - "1, 3", - "1, 4", - "1, 5", - "1, 6", - "1, 7", - "1, 8", - "1, 9", - "1, 10", - "1, 11", - "1, 12", - "1, 13", - { - "w": 1.5, - "c": "#aaaaaa" - }, - "1, 14", - { - "x": 0.5 - }, - "1, 15" - ], - [ - "2, 0", - { - "x": 0.5, - "w": 1.75, - "c": "#aaaaaa" - }, - "2, 1", - { - "c": "#cccccc" - }, - "2, 2", - "2, 3", - "2, 4", - "2, 5", - "2, 6", - "2, 7", - "2, 8", - "2, 9", - "2, 10", - "2, 11", - "2, 12", - { - "w": 2.25, - "c": "#777777" - }, - "2, 13", - { - "c": "#aaaaaa" - }, - { - "x": 0.5 - }, - "2, 14" - ], - [ - "3, 0", - { - "x": 0.5, - "w": 2.25, - "c": "#aaaaaa" - }, - "3, 1", - { - "c": "#cccccc" - }, - "3, 3", - "3, 4", - "3, 5", - "3, 6", - "3, 7", - "3, 8", - "3, 9", - "3, 10", - "3, 11", - "3, 12", - { - "w": 1.75, - "c": "#aaaaaa" - }, - "3, 13", - { - "x": 0.25, - "y": 0.25, - "c": "#cccccc" - }, - "3, 14", - { - "x": 0.25, - "y": -0.25, - "c": "#aaaaaa" - }, - "3, 15" - ], - [ - "4, 0", - { - "x": 0.5, - "w": 1.25, - "c": "#aaaaaa" - }, - "4, 1", - { - "w": 1.25 - }, - "4, 2", - { - "w": 1.25 - }, - "4, 3", - { - "w": 6.25, - "c": "#cccccc" - }, - "4, 7", - { - "c": "#aaaaaa" - }, - "4, 10", - "4, 11", - "4, 12", - { - "x": 0.25, - "y": 0.25, - "c": "#cccccc" - }, - "4, 13", - "4, 14", - "4, 15" - ] - ] - } -} diff --git a/keyboards/keychron/q6_max/ansi_encoder/ansi_encoder.c b/keyboards/keychron/q6_max/ansi_encoder/ansi_encoder.c deleted file mode 100644 index b55fea0668..0000000000 --- a/keyboards/keychron/q6_max/ansi_encoder/ansi_encoder.c +++ /dev/null @@ -1,175 +0,0 @@ -/* Copyright 2024 @ 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/>. - */ - -#include "quantum.h" - -// clang-format off - -#ifdef RGB_MATRIX_ENABLE -const snled27351_led_t g_snled27351_leds[RGB_MATRIX_LED_COUNT] = { -/* Refer to SNLED27351 manual for these locations - * driver - * | R location - * | | G location - * | | | B location - * | | | | */ - {0, G_16, I_16, H_16}, - {0, G_15, I_15, H_15}, - {0, G_14, I_14, H_14}, - {0, G_13, I_13, H_13}, - {0, G_12, I_12, H_12}, - {0, G_11, I_11, H_11}, - {0, G_10, I_10, H_10}, - {0, G_9, I_9, H_9}, - {0, G_8, I_8, H_8}, - {0, G_7, I_7, H_7}, - {0, G_6, I_6, H_6}, - {0, G_5, I_5, H_5}, - {0, G_4, I_4, H_4}, - {0, G_2, I_2, H_2}, - {0, G_1, I_1, H_1}, - {1, A_3, C_3, B_3}, - {0, D_4, F_4, E_4}, - {0, D_3, F_3, E_3}, - {0, D_2, F_2, E_2}, - - {0, A_16, C_16, B_16}, - {0, A_15, C_15, B_15}, - {0, A_14, C_14, B_14}, - {0, A_13, C_13, B_13}, - {0, A_12, C_12, B_12}, - {0, A_11, C_11, B_11}, - {0, A_10, C_10, B_10}, - {0, A_9, C_9, B_9}, - {0, A_8, C_8, B_8}, - {0, A_7, C_7, B_7}, - {0, A_6, C_6, B_6}, - {0, A_5, C_5, B_5}, - {0, A_4, C_4, B_4}, - {0, A_3, C_3, B_3}, - {0, A_2, C_2, B_2}, - {0, A_1, C_1, B_1}, - {1, A_2, C_2, B_2}, - {0, D_8, F_8, E_8}, - {0, D_7, F_7, E_7}, - {0, D_6, F_6, E_6}, - - {0, J_16, L_16, K_16}, - {0, J_15, L_15, K_15}, - {0, J_14, L_14, K_14}, - {0, J_13, L_13, K_13}, - {0, J_12, L_12, K_12}, - {0, J_11, L_11, K_11}, - {0, J_10, L_10, K_10}, - {0, J_9, L_9, K_9}, - {0, J_8, L_8, K_8}, - {0, J_7, L_7, K_7}, - {0, J_6, L_6, K_6}, - {0, J_5, L_5, K_5}, - {0, J_4, L_4, K_4}, - {0, J_3, L_3, K_3}, - {0, J_2, L_2, K_2}, - {0, J_1, L_1, K_1}, - {1, A_1, C_1, B_1}, - {0, D_12, F_12, E_12}, - {0, D_11, F_11, E_11}, - {0, D_10, F_10, E_10}, - - {1, A_16, C_16, B_16}, - {1, A_15, C_15, B_15}, - {1, A_14, C_14, B_14}, - {1, A_13, C_13, B_13}, - {1, A_12, C_12, B_12}, - {1, A_11, C_11, B_11}, - {1, A_10, C_10, B_10}, - {1, A_9, C_9, B_9}, - {1, A_8, C_8, B_8}, - {1, A_7, C_7, B_7}, - {1, A_6, C_6, B_6}, - {1, A_5, C_5, B_5}, - {1, A_4, C_4, B_4}, - {0, D_1, F_1, E_1}, - {0, D_5, F_5, E_5}, - {0, D_9, F_9, E_9}, - {1, J_3, L_3, K_3}, - {1, J_9, L_9, K_9}, - {1, J_8, L_8, K_8}, - {1, J_7, L_7, K_7}, - - {1, G_16, I_16, H_16}, - {1, G_14, I_14, H_14}, - {1, G_13, I_13, H_13}, - {1, G_12, I_12, H_12}, - {1, G_11, I_11, H_11}, - {1, G_10, I_10, H_10}, - {1, G_9, I_9, H_9}, - {1, G_8, I_8, H_8}, - {1, G_7, I_7, H_7}, - {1, G_6, I_6, H_6}, - {1, G_5, I_5, H_5}, - {1, G_3, I_3, H_3}, - {1, G_1, I_1, H_1}, - {1, J_6, L_6, K_6}, - {1, J_5, L_5, K_5}, - {1, J_4, L_4, K_4}, - - {1, D_16, F_16, E_16}, - {1, D_15, F_15, E_15}, - {1, D_14, F_14, E_14}, - {1, D_10, F_10, E_10}, - {1, D_6, F_6, E_6}, - {1, D_5, F_5, E_5}, - {1, D_4, F_4, E_4}, - {1, D_3, F_3, E_3}, - {1, D_2, F_2, E_2}, - {1, D_1, F_1, E_1}, - {1, G_2, I_2, H_2}, - {1, J_2, L_2, K_2}, - {1, J_1, L_1, K_1}, -}; - -#define __ NO_LED - -led_config_t g_led_config = { - { - // Key Matrix to LED Index - { 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, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58 }, - { 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78 }, - { 79, __, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, __, 90, __, 91, __, 92, 93, 94 }, - { 95, 96, 97, __, __, __, 98, __, __, __, 99, 100, 101, 102, 103, 104, 105, __, 106, 107 }, - }, - { - // LED Index to Physical Position - {0, 0}, {13, 0}, {24, 0}, {34, 0}, {45, 0}, {57, 0}, {68, 0}, {78, 0}, {89, 0}, {102, 0}, {112, 0}, {123, 0}, {133, 0}, {159, 0}, {169, 0}, {180, 0}, {193, 0}, {203, 0}, {214, 0}, - {0,15}, {10,15}, {21,15}, {31,15}, {42,15}, {52,15}, {63,15}, {73,15}, {83,15}, { 94,15}, {104,15}, {115,15}, {125,15}, {141,15}, {159,15}, {169,15}, {180,15}, {193,15}, {203,15}, {214,15}, - {3,27}, {16,27}, {26,27}, {36,27}, {47,27}, {57,27}, {68,27}, {78,27}, {89,27}, { 99,27}, {109,27}, {120,27}, {130,27}, {143,27}, {159,27}, {169,27}, {180,27}, {193,27}, {203,27}, {214,27}, - {4,40}, {18,40}, {29,40}, {39,40}, {50,40}, {60,40}, {70,40}, {81,40}, {91,40}, {102,40}, {112,40}, {123,40}, {139,40}, {224, 0}, {224,15}, {224,34}, {224,58}, {193,40}, {203,40}, {214,40}, - {7,52}, {23,52}, {34,52}, {44,52}, {55,52}, {65,52}, {76,52}, {86,52}, { 96,52}, {107,52}, {117,52}, {137,52}, {169,52}, {193,52}, {203,52}, {214,52}, - {1,64}, {14,64}, {27,64}, {66,64}, {105,64}, {118,64}, {131,64}, {145,64}, {159,64}, {169,64}, {180,64}, {198,64}, {214,64}, - }, - { - // RGB LED Index to Flag - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - } -}; -#endif diff --git a/keyboards/keychron/q6_max/ansi_encoder/config.h b/keyboards/keychron/q6_max/ansi_encoder/config.h deleted file mode 100644 index 067f433ba1..0000000000 --- a/keyboards/keychron/q6_max/ansi_encoder/config.h +++ /dev/null @@ -1,46 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#pragma once - -#ifdef RGB_MATRIX_ENABLE -/* RGB Matrix driver configuration */ -# define DRIVER_COUNT 2 -# define RGB_MATRIX_LED_COUNT 108 -# define DRIVER_CS_PINS \ - { B8, B9 } - -/* Set LED driver current */ -# define SNLED27351_CURRENT_TUNE \ - { 0x28, 0x28, 0x28, 0x28, 0x28, 0x28, 0x28, 0x28, 0x28, 0x28, 0x28, 0x28 } - -/* Set to infinit, which is use in USB mode by default */ -# define RGB_MATRIX_TIMEOUT RGB_MATRIX_TIMEOUT_INFINITE -/* Allow shutdown of led driver to save power */ -# define RGB_MATRIX_DRIVER_SHUTDOWN_ENABLE -/* Turn off backlight on low brightness to save power */ -# define RGB_MATRIX_BRIGHTNESS_TURN_OFF_VAL 32 - -/* Indications */ -# define NUM_LOCK_INDEX 36 -# define CAPS_LOCK_INDEX 59 -# define LOW_BAT_IND_INDEX \ - { 98 } - -# define RGB_MATRIX_KEYPRESSES -# define RGB_MATRIX_FRAMEBUFFER_EFFECTS - -#endif diff --git a/keyboards/keychron/q6_max/ansi_encoder/info.json b/keyboards/keychron/q6_max/ansi_encoder/info.json deleted file mode 100644 index a438ce3c04..0000000000 --- a/keyboards/keychron/q6_max/ansi_encoder/info.json +++ /dev/null @@ -1,126 +0,0 @@ -{ - "usb": { - "pid": "0x0860", - "device_version": "1.0.0" - }, - "layouts": { - "LAYOUT_109_ansi": { - "layout": [ - {"matrix": [0, 0], "x": 0, "y": 0}, - {"matrix": [0, 1], "x": 1.25, "y": 0}, - {"matrix": [0, 2], "x": 2.25, "y": 0}, - {"matrix": [0, 3], "x": 3.25, "y": 0}, - {"matrix": [0, 4], "x": 4.25, "y": 0}, - {"matrix": [0, 5], "x": 5.5, "y": 0}, - {"matrix": [0, 6], "x": 6.5, "y": 0}, - {"matrix": [0, 7], "x": 7.5, "y": 0}, - {"matrix": [0, 8], "x": 8.5, "y": 0}, - {"matrix": [0, 9], "x": 9.75, "y": 0}, - {"matrix": [0, 10], "x": 10.75, "y": 0}, - {"matrix": [0, 11], "x": 11.75, "y": 0}, - {"matrix": [0, 12], "x": 12.75, "y": 0}, - {"matrix": [0, 13], "x": 14, "y": 0}, - {"matrix": [0, 14], "x": 15.25, "y": 0}, - {"matrix": [0, 15], "x": 16.25, "y": 0}, - {"matrix": [0, 16], "x": 17.25, "y": 0}, - {"matrix": [0, 17], "x": 18.5, "y": 0}, - {"matrix": [0, 18], "x": 19.5, "y": 0}, - {"matrix": [0, 19], "x": 20.5, "y": 0}, - {"matrix": [3, 13], "x": 21.5, "y": 0}, - - {"matrix": [1, 0], "x": 0, "y": 1.25}, - {"matrix": [1, 1], "x": 1, "y": 1.25}, - {"matrix": [1, 2], "x": 2, "y": 1.25}, - {"matrix": [1, 3], "x": 3, "y": 1.25}, - {"matrix": [1, 4], "x": 4, "y": 1.25}, - {"matrix": [1, 5], "x": 5, "y": 1.25}, - {"matrix": [1, 6], "x": 6, "y": 1.25}, - {"matrix": [1, 7], "x": 7, "y": 1.25}, - {"matrix": [1, 8], "x": 8, "y": 1.25}, - {"matrix": [1, 9], "x": 9, "y": 1.25}, - {"matrix": [1, 10], "x": 10, "y": 1.25}, - {"matrix": [1, 11], "x": 11, "y": 1.25}, - {"matrix": [1, 12], "x": 12, "y": 1.25}, - {"matrix": [1, 13], "x": 13, "y": 1.25, "w": 2}, - {"matrix": [1, 14], "x": 15.25, "y": 1.25}, - {"matrix": [1, 15], "x": 16.25, "y": 1.25}, - {"matrix": [1, 16], "x": 17.25, "y": 1.25}, - {"matrix": [1, 17], "x": 18.5, "y": 1.25}, - {"matrix": [1, 18], "x": 19.5, "y": 1.25}, - {"matrix": [1, 19], "x": 20.5, "y": 1.25}, - {"matrix": [3, 14], "x": 21.5, "y": 1.25}, - - {"matrix": [2, 0], "x": 0, "y": 2.25, "w": 1.5}, - {"matrix": [2, 1], "x": 1.5, "y": 2.25}, - {"matrix": [2, 2], "x": 2.5, "y": 2.25}, - {"matrix": [2, 3], "x": 3.5, "y": 2.25}, - {"matrix": [2, 4], "x": 4.5, "y": 2.25}, - {"matrix": [2, 5], "x": 5.5, "y": 2.25}, - {"matrix": [2, 6], "x": 6.5, "y": 2.25}, - {"matrix": [2, 7], "x": 7.5, "y": 2.25}, - {"matrix": [2, 8], "x": 8.5, "y": 2.25}, - {"matrix": [2, 9], "x": 9.5, "y": 2.25}, - {"matrix": [2, 10], "x": 10.5, "y": 2.25}, - {"matrix": [2, 11], "x": 11.5, "y": 2.25}, - {"matrix": [2, 12], "x": 12.5, "y": 2.25}, - {"matrix": [2, 13], "x": 13.5, "y": 2.25, "w": 1.5}, - {"matrix": [2, 14], "x": 15.25, "y": 2.25}, - {"matrix": [2, 15], "x": 16.25, "y": 2.25}, - {"matrix": [2, 16], "x": 17.25, "y": 2.25}, - {"matrix": [2, 17], "x": 18.5, "y": 2.25}, - {"matrix": [2, 18], "x": 19.5, "y": 2.25}, - {"matrix": [2, 19], "x": 20.5, "y": 2.25}, - - {"matrix": [3, 0], "x": 0, "y": 3.25, "w": 1.75}, - {"matrix": [3, 1], "x": 1.75, "y": 3.25}, - {"matrix": [3, 2], "x": 2.75, "y": 3.25}, - {"matrix": [3, 3], "x": 3.75, "y": 3.25}, - {"matrix": [3, 4], "x": 4.75, "y": 3.25}, - {"matrix": [3, 5], "x": 5.75, "y": 3.25}, - {"matrix": [3, 6], "x": 6.75, "y": 3.25}, - {"matrix": [3, 7], "x": 7.75, "y": 3.25}, - {"matrix": [3, 8], "x": 8.75, "y": 3.25}, - {"matrix": [3, 9], "x": 9.75, "y": 3.25}, - {"matrix": [3, 10], "x": 10.75, "y": 3.25}, - {"matrix": [3, 11], "x": 11.75, "y": 3.25}, - {"matrix": [3, 12], "x": 12.75, "y": 3.25, "w": 2.25}, - {"matrix": [3, 17], "x": 18.5, "y": 3.25}, - {"matrix": [3, 18], "x": 19.5, "y": 3.25}, - {"matrix": [3, 19], "x": 20.5, "y": 3.25}, - {"matrix": [3, 15], "x": 21.5, "y": 2.25, "h": 2}, - - {"matrix": [4, 0], "x": 0, "y": 4.25, "w": 2.25}, - {"matrix": [4, 2], "x": 2.25, "y": 4.25}, - {"matrix": [4, 3], "x": 3.25, "y": 4.25}, - {"matrix": [4, 4], "x": 4.25, "y": 4.25}, - {"matrix": [4, 5], "x": 5.25, "y": 4.25}, - {"matrix": [4, 6], "x": 6.25, "y": 4.25}, - {"matrix": [4, 7], "x": 7.25, "y": 4.25}, - {"matrix": [4, 8], "x": 8.25, "y": 4.25}, - {"matrix": [4, 9], "x": 9.25, "y": 4.25}, - {"matrix": [4, 10], "x": 10.25, "y": 4.25}, - {"matrix": [4, 11], "x": 11.25, "y": 4.25}, - {"matrix": [4, 13], "x": 12.25, "y": 4.25, "w": 2.75}, - {"matrix": [4, 15], "x": 16.25, "y": 4.25}, - {"matrix": [4, 17], "x": 18.5, "y": 4.25}, - {"matrix": [4, 18], "x": 19.5, "y": 4.25}, - {"matrix": [4, 19], "x": 20.5, "y": 4.25}, - - {"matrix": [5, 0], "x": 0, "y": 5.25, "w": 1.25}, - {"matrix": [5, 1], "x": 1.25, "y": 5.25, "w": 1.25}, - {"matrix": [5, 2], "x": 2.5, "y": 5.25, "w": 1.25}, - {"matrix": [5, 6], "x": 3.75, "y": 5.25, "w": 6.25}, - {"matrix": [5, 10], "x": 10, "y": 5.25, "w": 1.25}, - {"matrix": [5, 11], "x": 11.25, "y": 5.25, "w": 1.25}, - {"matrix": [5, 12], "x": 12.5, "y": 5.25, "w": 1.25}, - {"matrix": [5, 13], "x": 13.75, "y": 5.25, "w": 1.25}, - {"matrix": [5, 14], "x": 15.25, "y": 5.25}, - {"matrix": [5, 15], "x": 16.25, "y": 5.25}, - {"matrix": [5, 16], "x": 17.25, "y": 5.25}, - {"matrix": [5, 18], "x": 18.5, "y": 5.25, "w": 2}, - {"matrix": [5, 19], "x": 20.5, "y": 5.25}, - {"matrix": [3, 16], "x": 21.5, "y": 4.25, "h": 2} - ] - } - } -} diff --git a/keyboards/keychron/q6_max/ansi_encoder/keymaps/default/keymap.c b/keyboards/keychron/q6_max/ansi_encoder/keymaps/default/keymap.c deleted file mode 100644 index 70e2526b49..0000000000 --- a/keyboards/keychron/q6_max/ansi_encoder/keymaps/default/keymap.c +++ /dev/null @@ -1,74 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#include QMK_KEYBOARD_H -#include "keychron_common.h" - -enum layers { - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN, -}; - -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_109_ansi( - KC_ESC, KC_BRID, KC_BRIU, KC_MCTRL, KC_LNPAD, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_MUTE, KC_SNAP, KC_SIRI, RGB_MOD, KC_F13, KC_F14, KC_F15, KC_F16, - KC_GRV, 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_INS, KC_HOME, KC_PGUP, KC_NUM, KC_PSLS, KC_PAST, KC_PMNS, - 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_DEL, KC_END, KC_PGDN, KC_P7, KC_P8, KC_P9, - 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_P4, KC_P5, KC_P6, KC_PPLS, - 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_P1, KC_P2, KC_P3, - KC_LCTL, KC_LOPTN, KC_LCMMD, KC_SPC, KC_RCMMD, KC_ROPTN, MO(MAC_FN), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT, KC_P0, KC_PDOT, KC_PENT), - [MAC_FN] = LAYOUT_109_ansi( - _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, RGB_TOG, _______, _______, RGB_TOG, _______, _______, _______, _______, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - [WIN_BASE] = LAYOUT_109_ansi( - KC_ESC, 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_MUTE, KC_PSCR, KC_CTANA, RGB_MOD, _______, _______, _______, _______, - KC_GRV, 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_INS, KC_HOME, KC_PGUP, KC_NUM, KC_PSLS, KC_PAST, KC_PMNS, - 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_DEL, KC_END, KC_PGDN, KC_P7, KC_P8, KC_P9, - 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_P4, KC_P5, KC_P6, KC_PPLS, - 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_P1, KC_P2, KC_P3, - KC_LCTL, KC_LWIN, KC_LALT, KC_SPC, KC_RALT, KC_RWIN, MO(WIN_FN), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT, KC_P0, KC_PDOT, KC_PENT), - [WIN_FN] = LAYOUT_109_ansi( - _______, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, RGB_TOG, _______, _______, RGB_TOG, _______, _______, _______, _______, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______) -}; - -// clang-format on -#if defined(ENCODER_MAP_ENABLE) -const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][2] = { - [MAC_BASE] = {ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [MAC_FN] = {ENCODER_CCW_CW(RGB_VAD, RGB_VAI)}, - [WIN_BASE] = {ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [WIN_FN] = {ENCODER_CCW_CW(RGB_VAD, RGB_VAI)}, -}; -#endif // ENCODER_MAP_ENABLE - -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - if (!process_record_keychron_common(keycode, record)) { - return false; - } - return true; -} diff --git a/keyboards/keychron/q6_max/ansi_encoder/keymaps/via/keymap.c b/keyboards/keychron/q6_max/ansi_encoder/keymaps/via/keymap.c deleted file mode 100644 index 70e2526b49..0000000000 --- a/keyboards/keychron/q6_max/ansi_encoder/keymaps/via/keymap.c +++ /dev/null @@ -1,74 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#include QMK_KEYBOARD_H -#include "keychron_common.h" - -enum layers { - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN, -}; - -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_109_ansi( - KC_ESC, KC_BRID, KC_BRIU, KC_MCTRL, KC_LNPAD, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_MUTE, KC_SNAP, KC_SIRI, RGB_MOD, KC_F13, KC_F14, KC_F15, KC_F16, - KC_GRV, 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_INS, KC_HOME, KC_PGUP, KC_NUM, KC_PSLS, KC_PAST, KC_PMNS, - 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_DEL, KC_END, KC_PGDN, KC_P7, KC_P8, KC_P9, - 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_P4, KC_P5, KC_P6, KC_PPLS, - 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_P1, KC_P2, KC_P3, - KC_LCTL, KC_LOPTN, KC_LCMMD, KC_SPC, KC_RCMMD, KC_ROPTN, MO(MAC_FN), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT, KC_P0, KC_PDOT, KC_PENT), - [MAC_FN] = LAYOUT_109_ansi( - _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, RGB_TOG, _______, _______, RGB_TOG, _______, _______, _______, _______, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - [WIN_BASE] = LAYOUT_109_ansi( - KC_ESC, 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_MUTE, KC_PSCR, KC_CTANA, RGB_MOD, _______, _______, _______, _______, - KC_GRV, 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_INS, KC_HOME, KC_PGUP, KC_NUM, KC_PSLS, KC_PAST, KC_PMNS, - 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_DEL, KC_END, KC_PGDN, KC_P7, KC_P8, KC_P9, - 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_P4, KC_P5, KC_P6, KC_PPLS, - 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_P1, KC_P2, KC_P3, - KC_LCTL, KC_LWIN, KC_LALT, KC_SPC, KC_RALT, KC_RWIN, MO(WIN_FN), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT, KC_P0, KC_PDOT, KC_PENT), - [WIN_FN] = LAYOUT_109_ansi( - _______, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, RGB_TOG, _______, _______, RGB_TOG, _______, _______, _______, _______, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______) -}; - -// clang-format on -#if defined(ENCODER_MAP_ENABLE) -const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][2] = { - [MAC_BASE] = {ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [MAC_FN] = {ENCODER_CCW_CW(RGB_VAD, RGB_VAI)}, - [WIN_BASE] = {ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [WIN_FN] = {ENCODER_CCW_CW(RGB_VAD, RGB_VAI)}, -}; -#endif // ENCODER_MAP_ENABLE - -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - if (!process_record_keychron_common(keycode, record)) { - return false; - } - return true; -} diff --git a/keyboards/keychron/q6_max/ansi_encoder/keymaps/via/rules.mk b/keyboards/keychron/q6_max/ansi_encoder/keymaps/via/rules.mk deleted file mode 100644 index 1e5b99807c..0000000000 --- a/keyboards/keychron/q6_max/ansi_encoder/keymaps/via/rules.mk +++ /dev/null @@ -1 +0,0 @@ -VIA_ENABLE = yes diff --git a/keyboards/keychron/q6_max/ansi_encoder/rules.mk b/keyboards/keychron/q6_max/ansi_encoder/rules.mk deleted file mode 100644 index 7ff128fa69..0000000000 --- a/keyboards/keychron/q6_max/ansi_encoder/rules.mk +++ /dev/null @@ -1 +0,0 @@ -# This file intentionally left blank \ No newline at end of file diff --git a/keyboards/keychron/q6_max/board.h b/keyboards/keychron/q6_max/board.h deleted file mode 100644 index debc73961e..0000000000 --- a/keyboards/keychron/q6_max/board.h +++ /dev/null @@ -1,226 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#pragma once - -#include_next - -// clang-format off - -/* Set GPIOA_SWDIO to INPUT and NOT FLOATING */ -#undef VAL_GPIOA_MODER -#define VAL_GPIOA_MODER (PIN_MODE_INPUT(GPIOA_BUTTON) | \ - PIN_MODE_INPUT(GPIOA_PIN1) | \ - PIN_MODE_INPUT(GPIOA_PIN2) | \ - PIN_MODE_INPUT(GPIOA_PIN3) | \ - PIN_MODE_ALTERNATE(GPIOA_CS43L22_LRCK) |\ - PIN_MODE_ALTERNATE(GPIOA_L3GD20_SCL) | \ - PIN_MODE_ALTERNATE(GPIOA_L3GD20_SD0) | \ - PIN_MODE_ALTERNATE(GPIOA_L3GD20_SDI) | \ - PIN_MODE_INPUT(GPIOA_PIN8) | \ - PIN_MODE_INPUT(GPIOA_VBUS_FS) | \ - PIN_MODE_ALTERNATE(GPIOA_OTG_FS_ID) | \ - PIN_MODE_ALTERNATE(GPIOA_OTG_FS_DM) | \ - PIN_MODE_ALTERNATE(GPIOA_OTG_FS_DP) | \ - PIN_MODE_INPUT(GPIOA_SWDIO) | \ - PIN_MODE_INPUT(GPIOA_SWCLK) | \ - PIN_MODE_INPUT(GPIOA_PIN15)) - -#undef VAL_GPIOA_PUPDR -#define VAL_GPIOA_PUPDR (PIN_PUPDR_FLOATING(GPIOA_BUTTON) | \ - PIN_PUPDR_PULLUP(GPIOA_PIN1) | \ - PIN_PUPDR_PULLUP(GPIOA_PIN2) | \ - PIN_PUPDR_PULLUP(GPIOA_PIN3) | \ - PIN_PUPDR_FLOATING(GPIOA_CS43L22_LRCK) |\ - PIN_PUPDR_FLOATING(GPIOA_L3GD20_SCL) | \ - PIN_PUPDR_PULLUP(GPIOA_L3GD20_SD0) | \ - PIN_PUPDR_PULLUP(GPIOA_L3GD20_SDI) | \ - PIN_PUPDR_PULLUP(GPIOA_PIN8) | \ - PIN_PUPDR_FLOATING(GPIOA_VBUS_FS) | \ - PIN_PUPDR_FLOATING(GPIOA_OTG_FS_ID) | \ - PIN_PUPDR_FLOATING(GPIOA_OTG_FS_DM) | \ - PIN_PUPDR_FLOATING(GPIOA_OTG_FS_DP) | \ - PIN_PUPDR_PULLUP(GPIOA_SWDIO) | \ - PIN_PUPDR_PULLUP(GPIOA_SWCLK) | \ - PIN_PUPDR_PULLUP(GPIOA_PIN15)) - -#undef VAL_GPIOB_MODER -#define VAL_GPIOB_MODER (PIN_MODE_INPUT(GPIOB_PIN0) | \ - PIN_MODE_INPUT(GPIOB_PIN1) | \ - PIN_MODE_INPUT(GPIOB_PIN2) | \ - PIN_MODE_INPUT(GPIOB_SWO) | \ - PIN_MODE_INPUT(GPIOB_PIN4) | \ - PIN_MODE_INPUT(GPIOB_PIN5) | \ - PIN_MODE_INPUT(GPIOB_LSM303DLHC_SCL) | \ - PIN_MODE_INPUT(GPIOB_PIN7) | \ - PIN_MODE_INPUT(GPIOB_PIN8) | \ - PIN_MODE_INPUT(GPIOB_LSM303DLHC_SDA) | \ - PIN_MODE_INPUT(GPIOB_MP45DT02_CLK_IN) |\ - PIN_MODE_INPUT(GPIOB_PIN11) | \ - PIN_MODE_INPUT(GPIOB_PIN12) | \ - PIN_MODE_INPUT(GPIOB_PIN13) | \ - PIN_MODE_INPUT(GPIOB_PIN14) | \ - PIN_MODE_INPUT(GPIOB_PIN15)) - -#undef VAL_GPIOB_PUPDR -#define VAL_GPIOB_PUPDR (PIN_PUPDR_PULLDOWN(GPIOB_PIN0) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN1) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN2) | \ - PIN_PUPDR_PULLDOWN(GPIOB_SWO) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN4) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN5) | \ - PIN_PUPDR_PULLDOWN(GPIOB_LSM303DLHC_SCL) |\ - PIN_PUPDR_PULLDOWN(GPIOB_PIN7) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN8) | \ - PIN_PUPDR_PULLDOWN(GPIOB_LSM303DLHC_SDA) |\ - PIN_PUPDR_PULLDOWN(GPIOB_MP45DT02_CLK_IN) |\ - PIN_PUPDR_PULLDOWN(GPIOB_PIN11) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN12) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN13) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN14) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN15)) - -#undef VAL_GPIOB_AFRL -#define VAL_GPIOB_AFRL (PIN_AFIO_AF(GPIOB_PIN0, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN1, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN2, 0U) | \ - PIN_AFIO_AF(GPIOB_SWO, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN4, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN5, 0U) | \ - PIN_AFIO_AF(GPIOB_LSM303DLHC_SCL, 0) | \ - PIN_AFIO_AF(GPIOB_PIN7, 0U)) - -#undef VAL_GPIOB_AFRH -#define VAL_GPIOB_AFRH (PIN_AFIO_AF(GPIOB_PIN8, 0U) | \ - PIN_AFIO_AF(GPIOB_LSM303DLHC_SDA, 0) | \ - PIN_AFIO_AF(GPIOB_MP45DT02_CLK_IN, 0U) |\ - PIN_AFIO_AF(GPIOB_PIN11, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN12, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN13, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN14, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN15, 0U)) - -/* C5 Need to be pulldown */ -#undef VAL_GPIOC_MODER -#define VAL_GPIOC_MODER (PIN_MODE_INPUT(GPIOC_OTG_FS_POWER_ON) |\ - PIN_MODE_INPUT(GPIOC_PIN1) | \ - PIN_MODE_INPUT(GPIOC_PIN2) | \ - PIN_MODE_INPUT(GPIOC_CS43L22_AIN4x) | \ - PIN_MODE_INPUT(GPIOC_PIN4) | \ - PIN_MODE_INPUT(GPIOC_PIN5) | \ - PIN_MODE_INPUT(GPIOC_PIN6) | \ - PIN_MODE_INPUT(GPIOC_CS43L22_MCLK) | \ - PIN_MODE_INPUT(GPIOC_PIN8) | \ - PIN_MODE_INPUT(GPIOC_PIN9) | \ - PIN_MODE_INPUT(GPIOC_CS43L22_SCLK) | \ - PIN_MODE_INPUT(GPIOC_PIN11) | \ - PIN_MODE_INPUT(GPIOC_CS43L22_SDIN) | \ - PIN_MODE_INPUT(GPIOC_PIN13) | \ - PIN_MODE_INPUT(GPIOC_OSC32_IN) | \ - PIN_MODE_INPUT(GPIOC_OSC32_OUT)) - -#undef VAL_GPIOC_PUPDR -#define VAL_GPIOC_PUPDR (PIN_PUPDR_PULLUP(GPIOC_OTG_FS_POWER_ON) |\ - PIN_PUPDR_PULLUP(GPIOC_PIN1) | \ - PIN_PUPDR_PULLUP(GPIOC_PIN2) | \ - PIN_PUPDR_PULLUP(GPIOC_CS43L22_AIN4x) |\ - PIN_PUPDR_PULLUP(GPIOC_PIN4) | \ - PIN_PUPDR_PULLDOWN(GPIOC_PIN5) | \ - PIN_PUPDR_PULLUP(GPIOC_PIN6) | \ - PIN_PUPDR_PULLUP(GPIOC_CS43L22_MCLK) | \ - PIN_PUPDR_PULLUP(GPIOC_PIN8) | \ - PIN_PUPDR_PULLDOWN(GPIOC_PIN9) | \ - PIN_PUPDR_PULLUP(GPIOC_CS43L22_SCLK) | \ - PIN_PUPDR_PULLUP(GPIOC_PIN11) | \ - PIN_PUPDR_PULLUP(GPIOC_CS43L22_SDIN) | \ - PIN_PUPDR_PULLUP(GPIOC_PIN13) | \ - PIN_PUPDR_PULLUP(GPIOC_OSC32_IN) | \ - PIN_PUPDR_PULLUP(GPIOC_OSC32_OUT)) - -/* Set all GPIOD pins to INPUT & PULLUP to avoid FLOATING */ -#undef VAL_GPIOD_MODER -#define VAL_GPIOD_MODER (PIN_MODE_INPUT(GPIOD_PIN0) | \ - PIN_MODE_INPUT(GPIOD_PIN1) | \ - PIN_MODE_INPUT(GPIOD_PIN2) | \ - PIN_MODE_INPUT(GPIOD_PIN3) | \ - PIN_MODE_INPUT(GPIOD_CS43L22_RESET) | \ - PIN_MODE_INPUT(GPIOD_OverCurrent) | \ - PIN_MODE_INPUT(GPIOD_PIN6) | \ - PIN_MODE_INPUT(GPIOD_PIN7) | \ - PIN_MODE_INPUT(GPIOD_PIN8) | \ - PIN_MODE_INPUT(GPIOD_PIN9) | \ - PIN_MODE_INPUT(GPIOD_PIN10) | \ - PIN_MODE_INPUT(GPIOD_PIN11) | \ - PIN_MODE_INPUT(GPIOD_LED4) | \ - PIN_MODE_INPUT(GPIOD_LED3) | \ - PIN_MODE_INPUT(GPIOD_LED5) | \ - PIN_MODE_INPUT(GPIOD_LED6)) - -#undef VAL_GPIOD_PUPDR -#define VAL_GPIOD_PUPDR (PIN_PUPDR_PULLUP(GPIOD_PIN0) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN1) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN2) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN3) | \ - PIN_PUPDR_PULLUP(GPIOD_CS43L22_RESET) |\ - PIN_PUPDR_PULLUP(GPIOD_OverCurrent) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN6) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN7) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN8) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN9) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN10) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN11) | \ - PIN_PUPDR_PULLUP(GPIOD_LED4) | \ - PIN_PUPDR_PULLUP(GPIOD_LED3) | \ - PIN_PUPDR_PULLUP(GPIOD_LED5) | \ - PIN_PUPDR_PULLUP(GPIOD_LED6)) - -/* Set all GPIOE pins to INPUT & PULLUP to avoid FLOATING */ -#undef VAL_GPIOE_MODER -#define VAL_GPIOE_MODER (PIN_MODE_INPUT(GPIOE_L3GD20_INT1) | \ - PIN_MODE_INPUT(GPIOE_L3GD20_INT2) | \ - PIN_MODE_INPUT(GPIOE_LSM303DLHC_DRDY) |\ - PIN_MODE_INPUT(GPIOE_L3GD20_CS) | \ - PIN_MODE_INPUT(GPIOE_LSM303DLHC_INT1) |\ - PIN_MODE_INPUT(GPIOE_LSM303DLHC_INT2) |\ - PIN_MODE_INPUT(GPIOE_PIN6) | \ - PIN_MODE_INPUT(GPIOE_PIN7) | \ - PIN_MODE_INPUT(GPIOE_PIN8) | \ - PIN_MODE_INPUT(GPIOE_PIN9) | \ - PIN_MODE_INPUT(GPIOE_PIN10) | \ - PIN_MODE_INPUT(GPIOE_PIN11) | \ - PIN_MODE_INPUT(GPIOE_PIN12) | \ - PIN_MODE_INPUT(GPIOE_PIN13) | \ - PIN_MODE_INPUT(GPIOE_PIN14) | \ - PIN_MODE_INPUT(GPIOE_PIN15)) - -#undef VAL_GPIOE_PUPDR -#define VAL_GPIOE_PUPDR (PIN_PUPDR_PULLUP(GPIOE_L3GD20_INT1) | \ - PIN_PUPDR_PULLUP(GPIOE_L3GD20_INT2) | \ - PIN_PUPDR_PULLUP(GPIOE_LSM303DLHC_DRDY) |\ - PIN_PUPDR_PULLUP(GPIOE_L3GD20_CS) | \ - PIN_PUPDR_PULLUP(GPIOE_LSM303DLHC_INT1) |\ - PIN_PUPDR_PULLUP(GPIOE_LSM303DLHC_INT2) |\ - PIN_PUPDR_PULLUP(GPIOE_PIN6) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN7) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN8) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN9) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN10) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN11) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN12) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN13) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN14) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN15)) - diff --git a/keyboards/keychron/q6_max/config.h b/keyboards/keychron/q6_max/config.h deleted file mode 100644 index 16bf57e34d..0000000000 --- a/keyboards/keychron/q6_max/config.h +++ /dev/null @@ -1,91 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#pragma once - -/* Encoder Configuration */ -#define ENCODER_DEFAULT_POS 0x3 -#define ENCODER_MAP_KEY_DELAY 2 - -#if defined(RGB_MATRIX_ENABLE) || defined(LK_WIRELESS_ENABLE) -/* SPI configuration */ -# define SPI_DRIVER SPID1 -# define SPI_SCK_PIN A5 -# define SPI_MISO_PIN A6 -# define SPI_MOSI_PIN A7 -#endif - -#if defined(RGB_MATRIX_ENABLE) -# define LED_DRIVER_SHUTDOWN_PIN B7 -# define SNLED23751_SPI_DIVISOR 16 -#endif - -#ifdef LK_WIRELESS_ENABLE -/* Hardware configuration */ -# define P2P4_MODE_SELECT_PIN A10 -# define BT_MODE_SELECT_PIN A9 - -# define LKBT51_RESET_PIN C4 -# define LKBT51_INT_INPUT_PIN B1 -# define BLUETOOTH_INT_OUTPUT_PIN A4 - -# define USB_POWER_SENSE_PIN B0 -# define USB_POWER_CONNECTED_LEVEL 0 - -# define BAT_LOW_LED_PIN C9 -# define BAT_LOW_LED_PIN_ON_STATE 1 - -# define BAT_CHARGING_PIN B13 -# define BAT_CHARGING_LEVEL 0 - -# define BT_HOST_DEVICES_COUNT 3 - -# if defined(RGB_MATRIX_ENABLE) || defined(LED_MATRIX_ENABLE) - -# define BT_HOST_LED_MATRIX_LIST \ - { 20, 21, 22 } -# define P2P4G_HOST_LED_MATRIX_LIST \ - { 23 } -# define BAT_LEVEL_LED_LIST \ - { 20, 21, 22, 23, 24, 25, 26, 27, 28, 29 } - -/* 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 -/* Reinit LED driver on tranport changed */ -# define REINIT_LED_DRIVER 1 - -# endif - -/* Keep USB connection in blueooth mode */ -# define KEEP_USB_CONNECTION_IN_WIRELESS_MODE - -/* Enable bluetooth NKRO */ -# define WIRELESS_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 - -/* Factory test keys */ -#define FN_KEY_1 MO(1) -#define FN_KEY_2 MO(3) - -#define MATRIX_IO_DELAY 10 diff --git a/keyboards/keychron/q6_max/firmware/keychron_q6_max_ansi_encoder_via.bin b/keyboards/keychron/q6_max/firmware/keychron_q6_max_ansi_encoder_via.bin deleted file mode 100644 index df5e7663f1..0000000000 Binary files a/keyboards/keychron/q6_max/firmware/keychron_q6_max_ansi_encoder_via.bin and /dev/null differ diff --git a/keyboards/keychron/q6_max/firmware/keychron_q6_max_iso_encoder_via.bin b/keyboards/keychron/q6_max/firmware/keychron_q6_max_iso_encoder_via.bin deleted file mode 100644 index 5c30f79e41..0000000000 Binary files a/keyboards/keychron/q6_max/firmware/keychron_q6_max_iso_encoder_via.bin and /dev/null differ diff --git a/keyboards/keychron/q6_max/halconf.h b/keyboards/keychron/q6_max/halconf.h deleted file mode 100644 index 37bcc7c47b..0000000000 --- a/keyboards/keychron/q6_max/halconf.h +++ /dev/null @@ -1,31 +0,0 @@ -/* Copyright 2024 @ 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 - -#define _CHIBIOS_HAL_CONF_VER_8_0_ - -#define HAL_USE_SPI TRUE - -#ifdef LK_WIRELESS_ENABLE -# define HAL_USE_RTC TRUE -#endif - -#if defined(LK_WIRELESS_ENABLE) || defined(ENCODER_ENABLE) -# define PAL_USE_CALLBACKS TRUE -#endif - -#include_next diff --git a/keyboards/keychron/q6_max/info.json b/keyboards/keychron/q6_max/info.json deleted file mode 100644 index 21089420c6..0000000000 --- a/keyboards/keychron/q6_max/info.json +++ /dev/null @@ -1,77 +0,0 @@ -{ - "keyboard_name": "Keychron Q6 Max", - "manufacturer": "Keychron", - "url": "https://github.com/Keychron", - "maintainer": "lokher", - "processor": "STM32F401", - "bootloader": "stm32-dfu", - "usb": { - "vid": "0x3434" - }, - "features": { - "bootmagic": true, - "extrakey" : true, - "mousekey" : true, - "dip_switch" : true, - "encoder": true, - "encoder_map": true, - "nkro" : true, - "rgb_matrix": true, - "raw" : true, - "send_string" : true - }, - "matrix_pins": { - "cols": ["C6", "C7", "C8", "A13", "A14", "A15", "C10", "C11", "C13", "C14", "C15", "C0", "C1", "C2", "C3", "A0", "A1", "A2", "A3", "B10"], - "rows": ["C12", "D2", "B3", "B4", "B5", "B6"] - }, - "diode_direction": "ROW2COL", - "encoder": { - "rotary": [ - { - "pin_a": "B14", - "pin_b": "B15" - } - ] - }, - "dip_switch" :{ - "pins": ["B12"] - }, - "rgb_matrix": { - "driver": "snled27351_spi", - "sleep": true, - "animations": { - "band_spiral_val": true, - "breathing": true, - "cycle_all": true, - "cycle_left_right": true, - "cycle_out_in": true, - "cycle_out_in_dual": true, - "cycle_pinwheel": true, - "cycle_spiral": true, - "cycle_up_down": true, - "digital_rain": true, - "dual_beacon": true, - "jellybean_raindrops": true, - "pixel_rain": true, - "rainbow_beacon": true, - "rainbow_moving_chevron": true, - "solid_reactive_multinexus": true, - "solid_reactive_multiwide": true, - "solid_reactive_simple": true, - "solid_splash": true, - "splash": true, - "typing_heatmap": true - } - }, - "eeprom": { - "wear_leveling": { - "driver": "embedded_flash", - "logical_size": 2048, - "backing_size": 4096 - } - }, - "build": { - "debounce_type": "sym_eager_pk" - }, - "debounce": 20 -} diff --git a/keyboards/keychron/q6_max/iso_encoder/config.h b/keyboards/keychron/q6_max/iso_encoder/config.h deleted file mode 100644 index eb54e620ab..0000000000 --- a/keyboards/keychron/q6_max/iso_encoder/config.h +++ /dev/null @@ -1,47 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#pragma once - -#ifdef RGB_MATRIX_ENABLE -/* RGB Matrix driver configuration */ -# define DRIVER_COUNT 2 -# define RGB_MATRIX_LED_COUNT 109 -# define DRIVER_CS_PINS \ - { B8, B9 } - -/* Set LED driver current */ -# define SNLED27351_CURRENT_TUNE \ - { 0x28, 0x28, 0x28, 0x28, 0x28, 0x28, 0x28, 0x28, 0x28, 0x28, 0x28, 0x28 } - -/* Set to infinit, which is use in USB mode by default */ -# define RGB_MATRIX_TIMEOUT RGB_MATRIX_TIMEOUT_INFINITE - -/* Allow shutdown of led driver to save power */ -# define RGB_MATRIX_DRIVER_SHUTDOWN_ENABLE -/* Turn off backlight on low brightness to save power */ -# define RGB_MATRIX_BRIGHTNESS_TURN_OFF_VAL 32 - -/* Indications */ -# define NUM_LOCK_INDEX 36 -# define CAPS_LOCK_INDEX 59 -# define LOW_BAT_IND_INDEX \ - { 99 } - -# define RGB_MATRIX_KEYPRESSES -# define RGB_MATRIX_FRAMEBUFFER_EFFECTS - -#endif diff --git a/keyboards/keychron/q6_max/iso_encoder/info.json b/keyboards/keychron/q6_max/iso_encoder/info.json deleted file mode 100644 index d136b041b0..0000000000 --- a/keyboards/keychron/q6_max/iso_encoder/info.json +++ /dev/null @@ -1,128 +0,0 @@ -{ - "usb": { - "pid": "0x0861", - "device_version": "1.0.0" - }, - "layouts": { - "LAYOUT_iso_110": { - "layout": [ - {"matrix":[0,0], "x":0, "y":0}, - {"matrix":[0,1], "x":1.25, "y":0}, - {"matrix":[0,2], "x":2.25, "y":0}, - {"matrix":[0,3], "x":3.25, "y":0}, - {"matrix":[0,4], "x":4.25, "y":0}, - {"matrix":[0,5], "x":5.5, "y":0}, - {"matrix":[0,6], "x":6.5, "y":0}, - {"matrix":[0,7], "x":7.5, "y":0}, - {"matrix":[0,8], "x":8.5, "y":0}, - {"matrix":[0,9], "x":9.75, "y":0}, - {"matrix":[0,10], "x":10.75, "y":0}, - {"matrix":[0,11], "x":11.75, "y":0}, - {"matrix":[0,12], "x":12.75, "y":0}, - {"matrix":[0,13], "x":14, "y":0}, - {"matrix":[0,14], "x":15.25, "y":0}, - {"matrix":[0,15], "x":16.25, "y":0}, - {"matrix":[0,16], "x":17.25, "y":0}, - {"matrix":[0,17], "x":18.5, "y":0}, - {"matrix":[0,18], "x":19.5, "y":0}, - {"matrix":[0,19], "x":20.5, "y":0}, - {"matrix":[3,13], "x":21.5, "y":0}, - - {"matrix":[1,0], "x":0, "y":1.25}, - {"matrix":[1,1], "x":1, "y":1.25}, - {"matrix":[1,2], "x":2, "y":1.25}, - {"matrix":[1,3], "x":3, "y":1.25}, - {"matrix":[1,4], "x":4, "y":1.25}, - {"matrix":[1,5], "x":5, "y":1.25}, - {"matrix":[1,6], "x":6, "y":1.25}, - {"matrix":[1,7], "x":7, "y":1.25}, - {"matrix":[1,8], "x":8, "y":1.25}, - {"matrix":[1,9], "x":9, "y":1.25}, - {"matrix":[1,10], "x":10, "y":1.25}, - {"matrix":[1,11], "x":11, "y":1.25}, - {"matrix":[1,12], "x":12, "y":1.25}, - {"matrix":[1,13], "x":13, "y":1.25, "w":2}, - {"matrix":[1,14], "x":15.25, "y":1.25}, - {"matrix":[1,15], "x":16.25, "y":1.25}, - {"matrix":[1,16], "x":17.25, "y":1.25}, - {"matrix":[1,17], "x":18.5, "y":1.25}, - {"matrix":[1,18], "x":19.5, "y":1.25}, - {"matrix":[1,19], "x":20.5, "y":1.25}, - {"matrix":[3,14], "x":21.5, "y":1.25}, - - {"matrix":[2,0], "x":0, "y":2.25, "w":1.5}, - {"matrix":[2,1], "x":1.5, "y":2.25}, - {"matrix":[2,2], "x":2.5, "y":2.25}, - {"matrix":[2,3], "x":3.5, "y":2.25}, - {"matrix":[2,4], "x":4.5, "y":2.25}, - {"matrix":[2,5], "x":5.5, "y":2.25}, - {"matrix":[2,6], "x":6.5, "y":2.25}, - {"matrix":[2,7], "x":7.5, "y":2.25}, - {"matrix":[2,8], "x":8.5, "y":2.25}, - {"matrix":[2,9], "x":9.5, "y":2.25}, - {"matrix":[2,10], "x":10.5, "y":2.25}, - {"matrix":[2,11], "x":11.5, "y":2.25}, - {"matrix":[2,12], "x":12.5, "y":2.25}, - {"matrix":[2,14], "x":15.25, "y":2.25}, - {"matrix":[2,15], "x":16.25, "y":2.25}, - {"matrix":[2,16], "x":17.25, "y":2.25}, - {"matrix":[2,17], "x":18.5, "y":2.25}, - {"matrix":[2,18], "x":19.5, "y":2.25}, - {"matrix":[2,19], "x":20.5, "y":2.25}, - - {"matrix":[3,0], "x":0, "y":3.25, "w":1.75}, - {"matrix":[3,1], "x":1.75, "y":3.25}, - {"matrix":[3,2], "x":2.75, "y":3.25}, - {"matrix":[3,3], "x":3.75, "y":3.25}, - {"matrix":[3,4], "x":4.75, "y":3.25}, - {"matrix":[3,5], "x":5.75, "y":3.25}, - {"matrix":[3,6], "x":6.75, "y":3.25}, - {"matrix":[3,7], "x":7.75, "y":3.25}, - {"matrix":[3,8], "x":8.75, "y":3.25}, - {"matrix":[3,9], "x":9.75, "y":3.25}, - {"matrix":[3,10], "x":10.75, "y":3.25}, - {"matrix":[3,11], "x":11.75, "y":3.25}, - {"matrix":[3,12], "x":12.75, "y":3.25}, - {"matrix": [2,13], "x": 13.75, "y": 2.25, "w": 1.25, "h": 2}, - {"matrix":[3,17], "x":18.5, "y":3.25}, - {"matrix":[3,18], "x":19.5, "y":3.25}, - {"matrix":[3,19], "x":20.5, "y":3.25}, - {"matrix":[3,15], "x":21.5, "y":2.25, "h": 2}, - - {"matrix":[4,0], "x":0, "y":4.25, "w":1.25}, - {"matrix":[4,1], "x":1.25, "y":4.25}, - {"matrix":[4,2], "x":2.25, "y":4.25}, - {"matrix":[4,3], "x":3.25, "y":4.25}, - {"matrix":[4,4], "x":4.25, "y":4.25}, - {"matrix":[4,5], "x":5.25, "y":4.25}, - {"matrix":[4,6], "x":6.25, "y":4.25}, - {"matrix":[4,7], "x":7.25, "y":4.25}, - {"matrix":[4,8], "x":8.25, "y":4.25}, - {"matrix":[4,9], "x":9.25, "y":4.25}, - {"matrix":[4,10], "x":10.25, "y":4.25}, - {"matrix":[4,11], "x":11.25, "y":4.25}, - {"matrix":[4,13], "x":12.25, "y":4.25, "w":2.75}, - {"matrix":[4,15], "x":16.25, "y":4.25}, - {"matrix":[4,17], "x":18.5, "y":4.25}, - {"matrix":[4,18], "x":19.5, "y":4.25}, - {"matrix":[4,19], "x":20.5, "y":4.25}, - - {"matrix":[5,0], "x":0, "y":5.25, "w":1.25}, - {"matrix":[5,1], "x":1.25, "y":5.25, "w":1.25}, - {"matrix":[5,2], "x":2.5, "y":5.25, "w":1.25}, - {"matrix":[5,6], "x":3.75, "y":5.25, "w":6.25}, - {"matrix":[5,10], "x":10, "y":5.25, "w":1.25}, - {"matrix":[5,11], "x":11.25, "y":5.25, "w":1.25}, - {"matrix":[5,12], "x":12.5, "y":5.25, "w":1.25}, - {"matrix":[5,13], "x":13.75, "y":5.25, "w":1.25}, - {"matrix":[5,14], "x":15.25, "y":5.25}, - {"matrix":[5,15], "x":16.25, "y":5.25}, - {"matrix":[5,16], "x":17.25, "y":5.25}, - {"matrix":[5,18], "x":18.5, "y":5.25, "w":2}, - {"matrix":[5,19], "x":20.5, "y":5.25}, - {"matrix":[3,16], "x":21.5, "y":4.25, "h":2} - ] - } - } - -} diff --git a/keyboards/keychron/q6_max/iso_encoder/iso_encoder.c b/keyboards/keychron/q6_max/iso_encoder/iso_encoder.c deleted file mode 100644 index bb5a325974..0000000000 --- a/keyboards/keychron/q6_max/iso_encoder/iso_encoder.c +++ /dev/null @@ -1,177 +0,0 @@ -/* Copyright 2024 @ 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/>. - */ - -#include "quantum.h" - -// clang-format off - -#ifdef RGB_MATRIX_ENABLE -const snled27351_led_t g_snled27351_leds[RGB_MATRIX_LED_COUNT] = { -/* Refer to SNLED27351 manual for these locations - * driver - * | R location - * | | G location - * | | | B location - * | | | | */ - {0, G_16, I_16, H_16}, - {0, G_15, I_15, H_15}, - {0, G_14, I_14, H_14}, - {0, G_13, I_13, H_13}, - {0, G_12, I_12, H_12}, - {0, G_11, I_11, H_11}, - {0, G_10, I_10, H_10}, - {0, G_9, I_9, H_9}, - {0, G_8, I_8, H_8}, - {0, G_7, I_7, H_7}, - {0, G_6, I_6, H_6}, - {0, G_5, I_5, H_5}, - {0, G_4, I_4, H_4}, - {0, G_2, I_2, H_2}, - {0, G_1, I_1, H_1}, - {1, A_3, C_3, B_3}, - {0, D_4, F_4, E_4}, - {0, D_3, F_3, E_3}, - {0, D_2, F_2, E_2}, - - {0, A_16, C_16, B_16}, - {0, A_15, C_15, B_15}, - {0, A_14, C_14, B_14}, - {0, A_13, C_13, B_13}, - {0, A_12, C_12, B_12}, - {0, A_11, C_11, B_11}, - {0, A_10, C_10, B_10}, - {0, A_9, C_9, B_9}, - {0, A_8, C_8, B_8}, - {0, A_7, C_7, B_7}, - {0, A_6, C_6, B_6}, - {0, A_5, C_5, B_5}, - {0, A_4, C_4, B_4}, - {0, A_3, C_3, B_3}, - {0, A_2, C_2, B_2}, - {0, A_1, C_1, B_1}, - {1, A_2, C_2, B_2}, - {0, D_8, F_8, E_8}, - {0, D_7, F_7, E_7}, - {0, D_6, F_6, E_6}, - - {0, J_16, L_16, K_16}, - {0, J_15, L_15, K_15}, - {0, J_14, L_14, K_14}, - {0, J_13, L_13, K_13}, - {0, J_12, L_12, K_12}, - {0, J_11, L_11, K_11}, - {0, J_10, L_10, K_10}, - {0, J_9, L_9, K_9}, - {0, J_8, L_8, K_8}, - {0, J_7, L_7, K_7}, - {0, J_6, L_6, K_6}, - {0, J_5, L_5, K_5}, - {0, J_4, L_4, K_4}, - {0, J_3, L_3, K_3}, - {0, J_2, L_2, K_2}, - {0, J_1, L_1, K_1}, - {1, A_1, C_1, B_1}, - {0, D_12, F_12, E_12}, - {0, D_11, F_11, E_11}, - {0, D_10, F_10, E_10}, - - {1, A_16, C_16, B_16}, - {1, A_15, C_15, B_15}, - {1, A_14, C_14, B_14}, - {1, A_13, C_13, B_13}, - {1, A_12, C_12, B_12}, - {1, A_11, C_11, B_11}, - {1, A_10, C_10, B_10}, - {1, A_9, C_9, B_9}, - {1, A_8, C_8, B_8}, - {1, A_7, C_7, B_7}, - {1, A_6, C_6, B_6}, - {1, A_5, C_5, B_5}, - {1, A_4, C_4, B_4}, - {0, D_1, F_1, E_1}, - {0, D_5, F_5, E_5}, - {0, D_9, F_9, E_9}, - {1, J_3, L_3, K_3}, - {1, J_9, L_9, K_9}, - {1, J_8, L_8, K_8}, - {1, J_7, L_7, K_7}, - - {1, G_16, I_16, H_16}, - {1, G_15, I_15, H_15}, - {1, G_14, I_14, H_14}, - {1, G_13, I_13, H_13}, - {1, G_12, I_12, H_12}, - {1, G_11, I_11, H_11}, - {1, G_10, I_10, H_10}, - {1, G_9, I_9, H_9}, - {1, G_8, I_8, H_8}, - {1, G_7, I_7, H_7}, - {1, G_6, I_6, H_6}, - {1, G_5, I_5, H_5}, - {1, G_3, I_3, H_3}, - {1, G_1, I_1, H_1}, - {1, J_6, L_6, K_6}, - {1, J_5, L_5, K_5}, - {1, J_4, L_4, K_4}, - - {1, D_16, F_16, E_16}, - {1, D_15, F_15, E_15}, - {1, D_14, F_14, E_14}, - {1, D_10, F_10, E_10}, - {1, D_6, F_6, E_6}, - {1, D_5, F_5, E_5}, - {1, D_4, F_4, E_4}, - {1, D_3, F_3, E_3}, - {1, D_2, F_2, E_2}, - {1, D_1, F_1, E_1}, - {1, G_2, I_2, H_2}, - {1, J_2, L_2, K_2}, - {1, J_1, L_1, K_1}, -}; - -#define __ NO_LED - -led_config_t g_led_config = { - { - // Key Matrix to RGB Index - { 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, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58 }, - { 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78 }, - { 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, __, 91, __, 92, __, 93, 94, 95 }, - { 96, 97, 98, __, __, __, 99, __, __, __, 100, 101, 102, 103, 104, 105, 106, __, 107, 108 }, - }, - { - // RGB Index to Physical Position - {0, 0}, {13, 0}, {24, 0}, {34, 0}, {45, 0}, {57, 0}, {68, 0}, {78, 0}, {89, 0}, {102,0}, {112, 0}, {123, 0}, {133, 0}, {159, 0}, {169,0}, {180, 0}, {193,0}, {203,0}, {214,0}, - {0,15}, {10,15}, {21,15}, {32,15}, {42,15}, {52,15}, {63,15}, {73,15}, {83,15}, {94,15}, {104,15}, {115,15}, {125,15}, {141,15}, {159,15}, {169,15}, {180,15}, {193,15},{203,15},{214,15}, - {3,26}, {16,26}, {26,26}, {36,26}, {47,26}, {57,26}, {68,26}, {78,26}, {89,26}, {99,26}, {109,26}, {120,26}, {130,26}, {141,26}, {159,26}, {169,26}, {180,26}, {193,26},{203,26},{214,26}, - {4,38}, {18,38}, {29,38}, {39,38}, {50,38}, {60,38}, {70,38}, {81,38}, {91,38}, {102,38},{112,38}, {133,38}, {147,38}, {224, 0}, {224,15}, {224,26}, {224,49}, {193,38},{204,38},{214,38}, - {1,49}, {13,49}, {23,49}, {34,49}, {44,49}, {55,49}, {65,49}, {76,49}, {86,49}, {96,49}, {107,49}, {117,49}, {137,49}, {169,49}, {193,49},{204,49},{214,49}, - {1,61}, {14,61}, {27,61}, {66,61}, {105,61}, {118,61}, {131,61}, {145,64}, {159,61}, {169,61}, {180,61}, {198,61},{214,61} - }, - { - // RGB Index to Flag - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - } - -}; -#endif diff --git a/keyboards/keychron/q6_max/iso_encoder/keymaps/default/keymap.c b/keyboards/keychron/q6_max/iso_encoder/keymaps/default/keymap.c deleted file mode 100644 index e816a1d8e8..0000000000 --- a/keyboards/keychron/q6_max/iso_encoder/keymaps/default/keymap.c +++ /dev/null @@ -1,76 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#include QMK_KEYBOARD_H -#include "keychron_common.h" - -enum layers { - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN, -}; -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_iso_110( - KC_ESC, KC_BRID, KC_BRIU, KC_MCTRL, KC_LNPAD, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_MUTE, KC_SNAP, KC_SIRI, RGB_MOD, KC_F13, KC_F14, KC_F15, KC_F16, - KC_GRV, 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_INS, KC_HOME, KC_PGUP, KC_NUM, KC_PSLS, KC_PAST, KC_PMNS, - 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_DEL, KC_END, KC_PGDN, KC_P7, KC_P8, KC_P9, - 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_NUHS, KC_ENT, KC_P4, KC_P5, KC_P6, KC_PPLS, - KC_LSFT, KC_NUBS, 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_P1, KC_P2, KC_P3, - KC_LCTL, KC_LOPTN, KC_LCMMD, KC_SPC, KC_RCMMD, KC_ROPTN, MO(MAC_FN), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT, KC_P0, KC_PDOT, KC_PENT), - - [MAC_FN] = LAYOUT_iso_110( - _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, RGB_TOG, _______, _______, RGB_TOG, _______, _______, _______, _______, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - - [WIN_BASE] = LAYOUT_iso_110( - KC_ESC, 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_MUTE, KC_PSCR, KC_CTANA, RGB_MOD, _______, _______, _______, _______, - KC_GRV, 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_INS, KC_HOME, KC_PGUP, KC_NUM, KC_PSLS, KC_PAST, KC_PMNS, - 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_DEL, KC_END, KC_PGDN, KC_P7, KC_P8, KC_P9, - 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_NUHS, KC_ENT, KC_P4, KC_P5, KC_P6, KC_PPLS, - KC_LSFT, KC_NUBS, 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_P1, KC_P2, KC_P3, - KC_LCTL, KC_LWIN, KC_LALT, KC_SPC, KC_RALT, KC_RWIN, MO(WIN_FN), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT, KC_P0, KC_PDOT, KC_PENT), - - [WIN_FN] = LAYOUT_iso_110( - _______, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, RGB_TOG, _______, _______, RGB_TOG, _______, _______, _______, _______, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______) -}; - -// clang-format on -#if defined(ENCODER_MAP_ENABLE) -const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][2] = { - [MAC_BASE] = {ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [MAC_FN] = {ENCODER_CCW_CW(RGB_VAD, RGB_VAI)}, - [WIN_BASE] = {ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [WIN_FN] = {ENCODER_CCW_CW(RGB_VAD, RGB_VAI)}, -}; -#endif // ENCODER_MAP_ENABLE - -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - if (!process_record_keychron_common(keycode, record)) { - return false; - } - return true; -} diff --git a/keyboards/keychron/q6_max/iso_encoder/keymaps/via/keymap.c b/keyboards/keychron/q6_max/iso_encoder/keymaps/via/keymap.c deleted file mode 100644 index e816a1d8e8..0000000000 --- a/keyboards/keychron/q6_max/iso_encoder/keymaps/via/keymap.c +++ /dev/null @@ -1,76 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#include QMK_KEYBOARD_H -#include "keychron_common.h" - -enum layers { - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN, -}; -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_iso_110( - KC_ESC, KC_BRID, KC_BRIU, KC_MCTRL, KC_LNPAD, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_MUTE, KC_SNAP, KC_SIRI, RGB_MOD, KC_F13, KC_F14, KC_F15, KC_F16, - KC_GRV, 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_INS, KC_HOME, KC_PGUP, KC_NUM, KC_PSLS, KC_PAST, KC_PMNS, - 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_DEL, KC_END, KC_PGDN, KC_P7, KC_P8, KC_P9, - 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_NUHS, KC_ENT, KC_P4, KC_P5, KC_P6, KC_PPLS, - KC_LSFT, KC_NUBS, 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_P1, KC_P2, KC_P3, - KC_LCTL, KC_LOPTN, KC_LCMMD, KC_SPC, KC_RCMMD, KC_ROPTN, MO(MAC_FN), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT, KC_P0, KC_PDOT, KC_PENT), - - [MAC_FN] = LAYOUT_iso_110( - _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, RGB_TOG, _______, _______, RGB_TOG, _______, _______, _______, _______, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - - [WIN_BASE] = LAYOUT_iso_110( - KC_ESC, 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_MUTE, KC_PSCR, KC_CTANA, RGB_MOD, _______, _______, _______, _______, - KC_GRV, 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_INS, KC_HOME, KC_PGUP, KC_NUM, KC_PSLS, KC_PAST, KC_PMNS, - 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_DEL, KC_END, KC_PGDN, KC_P7, KC_P8, KC_P9, - 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_NUHS, KC_ENT, KC_P4, KC_P5, KC_P6, KC_PPLS, - KC_LSFT, KC_NUBS, 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_P1, KC_P2, KC_P3, - KC_LCTL, KC_LWIN, KC_LALT, KC_SPC, KC_RALT, KC_RWIN, MO(WIN_FN), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT, KC_P0, KC_PDOT, KC_PENT), - - [WIN_FN] = LAYOUT_iso_110( - _______, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, RGB_TOG, _______, _______, RGB_TOG, _______, _______, _______, _______, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______) -}; - -// clang-format on -#if defined(ENCODER_MAP_ENABLE) -const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][2] = { - [MAC_BASE] = {ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [MAC_FN] = {ENCODER_CCW_CW(RGB_VAD, RGB_VAI)}, - [WIN_BASE] = {ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [WIN_FN] = {ENCODER_CCW_CW(RGB_VAD, RGB_VAI)}, -}; -#endif // ENCODER_MAP_ENABLE - -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - if (!process_record_keychron_common(keycode, record)) { - return false; - } - return true; -} diff --git a/keyboards/keychron/q6_max/iso_encoder/keymaps/via/rules.mk b/keyboards/keychron/q6_max/iso_encoder/keymaps/via/rules.mk deleted file mode 100644 index 1e5b99807c..0000000000 --- a/keyboards/keychron/q6_max/iso_encoder/keymaps/via/rules.mk +++ /dev/null @@ -1 +0,0 @@ -VIA_ENABLE = yes diff --git a/keyboards/keychron/q6_max/iso_encoder/rules.mk b/keyboards/keychron/q6_max/iso_encoder/rules.mk deleted file mode 100644 index 7ff128fa69..0000000000 --- a/keyboards/keychron/q6_max/iso_encoder/rules.mk +++ /dev/null @@ -1 +0,0 @@ -# This file intentionally left blank \ No newline at end of file diff --git a/keyboards/keychron/q6_max/jis_encoder/config.h b/keyboards/keychron/q6_max/jis_encoder/config.h deleted file mode 100644 index 93ae2896ab..0000000000 --- a/keyboards/keychron/q6_max/jis_encoder/config.h +++ /dev/null @@ -1,47 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#pragma once - -#ifdef RGB_MATRIX_ENABLE -/* RGB Matrix driver configuration */ -# define DRIVER_COUNT 2 -# define RGB_MATRIX_LED_COUNT 113 -# define DRIVER_CS_PINS \ - { B8, B9 } - -/* Set LED driver current */ -# define SNLED27351_CURRENT_TUNE \ - { 0x28, 0x28, 0x28, 0x28, 0x28, 0x28, 0x28, 0x28, 0x28, 0x28, 0x28, 0x28 } - -/* Set to infinit, which is use in USB mode by default */ -# define RGB_MATRIX_TIMEOUT RGB_MATRIX_TIMEOUT_INFINITE - -/* Allow shutdown of led driver to save power */ -# define RGB_MATRIX_DRIVER_SHUTDOWN_ENABLE -/* Turn off backlight on low brightness to save power */ -# define RGB_MATRIX_BRIGHTNESS_TURN_OFF_VAL 32 - -/* Indications */ -# define NUM_LOCK_INDEX 39 -# define CAPS_LOCK_INDEX 64 -# define LOW_BAT_IND_INDEX \ - { 102 } - -# define RGB_MATRIX_KEYPRESSES -# define RGB_MATRIX_FRAMEBUFFER_EFFECTS - -#endif diff --git a/keyboards/keychron/q6_max/jis_encoder/info.json b/keyboards/keychron/q6_max/jis_encoder/info.json deleted file mode 100644 index 0fac79c36b..0000000000 --- a/keyboards/keychron/q6_max/jis_encoder/info.json +++ /dev/null @@ -1,130 +0,0 @@ -{ - "usb": { - "pid": "0x0862", - "device_version": "1.0.0" - }, - "layouts": { - "LAYOUT_jis_113": { - "layout": [ - {"matrix":[0,0], "x":0, "y":0}, - {"matrix":[0,1], "x":1.25, "y":0}, - {"matrix":[0,2], "x":2.25, "y":0}, - {"matrix":[0,3], "x":3.25, "y":0}, - {"matrix":[0,4], "x":4.25, "y":0}, - {"matrix":[0,5], "x":5.5, "y":0}, - {"matrix":[0,6], "x":6.5, "y":0}, - {"matrix":[0,7], "x":7.5, "y":0}, - {"matrix":[0,8], "x":8.5, "y":0}, - {"matrix":[0,9], "x":9.75, "y":0}, - {"matrix":[0,10], "x":10.75, "y":0}, - {"matrix":[0,11], "x":11.75, "y":0}, - {"matrix":[0,12], "x":12.75, "y":0}, - {"matrix":[0,13], "x":14, "y":0}, - {"matrix":[0,14], "x":15.25, "y":0}, - {"matrix":[0,15], "x":16.25, "y":0}, - {"matrix":[0,16], "x":17.25, "y":0}, - {"matrix":[0,17], "x":18.5, "y":0}, - {"matrix":[0,18], "x":19.5, "y":0}, - {"matrix":[0,19], "x":20.5, "y":0}, - {"matrix":[3,13], "x":21.5, "y":0}, - - {"matrix":[1,0], "x":0, "y":1.25}, - {"matrix":[1,1], "x":1, "y":1.25}, - {"matrix":[1,2], "x":2, "y":1.25}, - {"matrix":[1,3], "x":3, "y":1.25}, - {"matrix":[1,4], "x":4, "y":1.25}, - {"matrix":[1,5], "x":5, "y":1.25}, - {"matrix":[1,6], "x":6, "y":1.25}, - {"matrix":[1,7], "x":7, "y":1.25}, - {"matrix":[1,8], "x":8, "y":1.25}, - {"matrix":[1,9], "x":9, "y":1.25}, - {"matrix":[1,10], "x":10, "y":1.25}, - {"matrix":[1,11], "x":11, "y":1.25}, - {"matrix":[1,12], "x":12, "y":1.25}, - {"matrix":[1,13], "x":13, "y":1.25}, - {"matrix":[4,14], "x":14, "y":1.25}, - {"matrix":[1,14], "x":15.25, "y":1.25}, - {"matrix":[1,15], "x":16.25, "y":1.25}, - {"matrix":[1,16], "x":17.25, "y":1.25}, - {"matrix":[1,17], "x":18.5, "y":1.25}, - {"matrix":[1,18], "x":19.5, "y":1.25}, - {"matrix":[1,19], "x":20.5, "y":1.25}, - {"matrix":[3,14], "x":21.5, "y":1.25}, - - {"matrix":[2,0], "x":0, "y":2.25, "w":1.5}, - {"matrix":[2,1], "x":1.5, "y":2.25}, - {"matrix":[2,2], "x":2.5, "y":2.25}, - {"matrix":[2,3], "x":3.5, "y":2.25}, - {"matrix":[2,4], "x":4.5, "y":2.25}, - {"matrix":[2,5], "x":5.5, "y":2.25}, - {"matrix":[2,6], "x":6.5, "y":2.25}, - {"matrix":[2,7], "x":7.5, "y":2.25}, - {"matrix":[2,8], "x":8.5, "y":2.25}, - {"matrix":[2,9], "x":9.5, "y":2.25}, - {"matrix":[2,10], "x":10.5, "y":2.25}, - {"matrix":[2,11], "x":11.5, "y":2.25}, - {"matrix":[2,12], "x":12.5, "y":2.25}, - {"matrix":[2,14], "x":15.25, "y":2.25}, - {"matrix":[2,15], "x":16.25, "y":2.25}, - {"matrix":[2,16], "x":17.25, "y":2.25}, - {"matrix":[2,17], "x":18.5, "y":2.25}, - {"matrix":[2,18], "x":19.5, "y":2.25}, - {"matrix":[2,19], "x":20.5, "y":2.25}, - {"matrix":[3,15], "x":21.5, "y":2.25, "h":2}, - - {"matrix":[3,0], "x":0, "y":3.25, "w":1.75}, - {"matrix":[3,1], "x":1.75, "y":3.25}, - {"matrix":[3,2], "x":2.75, "y":3.25}, - {"matrix":[3,3], "x":3.75, "y":3.25}, - {"matrix":[3,4], "x":4.75, "y":3.25}, - {"matrix":[3,5], "x":5.75, "y":3.25}, - {"matrix":[3,6], "x":6.75, "y":3.25}, - {"matrix":[3,7], "x":7.75, "y":3.25}, - {"matrix":[3,8], "x":8.75, "y":3.25}, - {"matrix":[3,9], "x":9.75, "y":3.25}, - {"matrix":[3,10], "x":10.75, "y":3.25}, - {"matrix":[3,11], "x":11.75, "y":3.25}, - {"matrix":[3,12], "x":12.75, "y":3.25}, - {"matrix":[2,13], "x":13.75, "y":2.25, "w":1.25, "h":2}, - {"matrix":[3,17], "x":18.5, "y":3.25}, - {"matrix":[3,18], "x":19.5, "y":3.25}, - {"matrix":[3,19], "x":20.5, "y":3.25}, - - {"matrix":[4,0], "x":0, "y":4.25, "w":2.25}, - {"matrix":[4,2], "x":2.25, "y":4.25}, - {"matrix":[4,3], "x":3.25, "y":4.25}, - {"matrix":[4,4], "x":4.25, "y":4.25}, - {"matrix":[4,5], "x":5.25, "y":4.25}, - {"matrix":[4,6], "x":6.25, "y":4.25}, - {"matrix":[4,7], "x":7.25, "y":4.25}, - {"matrix":[4,8], "x":8.25, "y":4.25}, - {"matrix":[4,9], "x":9.25, "y":4.25}, - {"matrix":[4,10], "x":10.25, "y":4.25}, - {"matrix":[4,11], "x":11.25, "y":4.25}, - {"matrix":[4,13], "x":12.25, "y":4.25}, - {"matrix":[4,12], "x":13.25, "y":4.25, "w":1.75}, - {"matrix":[4,15], "x":16.25, "y":4.25}, - {"matrix":[4,17], "x":18.5, "y":4.25}, - {"matrix":[4,18], "x":19.5, "y":4.25}, - {"matrix":[4,19], "x":20.5, "y":4.25}, - {"matrix":[3,16], "x":21.5, "y":4.25, "h":2}, - - {"matrix":[5,0], "x":0, "y":5.25, "w":1.25}, - {"matrix":[5,1], "x":1.25, "y":5.25}, - {"matrix":[5,2], "x":2.25, "y":5.25, "w":1.25}, - {"matrix":[5,3], "x":3.5, "y":5.25}, - {"matrix":[5,6], "x":4.5, "y":5.25, "w":4.5}, - {"matrix":[5,9], "x":9, "y":5.25}, - {"matrix":[5,10], "x":10, "y":5.25, "w":1.25}, - {"matrix":[5,11], "x":11.25, "y":5.25, "w":1.25}, - {"matrix":[5,12], "x":12.5, "y":5.25, "w":1.25}, - {"matrix":[5,13], "x":13.75, "y":5.25, "w":1.25}, - {"matrix":[5,14], "x":15.25, "y":5.25}, - {"matrix":[5,15], "x":16.25, "y":5.25}, - {"matrix":[5,16], "x":17.25, "y":5.25}, - {"matrix":[5,18], "x":18.5, "y":5.25, "w":2}, - {"matrix":[5,19], "x":20.5, "y":5.25} - ] - } - } -} diff --git a/keyboards/keychron/q6_max/jis_encoder/jis_encoder.c b/keyboards/keychron/q6_max/jis_encoder/jis_encoder.c deleted file mode 100644 index 3dfdeb11b5..0000000000 --- a/keyboards/keychron/q6_max/jis_encoder/jis_encoder.c +++ /dev/null @@ -1,181 +0,0 @@ -/* Copyright 2024 @ 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/>. - */ - -#include "quantum.h" - -// clang-format off - -#ifdef RGB_MATRIX_ENABLE -const snled27351_led_t g_snled27351_leds[RGB_MATRIX_LED_COUNT] = { -/* Refer to SNLED27351 manual for these locations - * driver - * | R location - * | | G location - * | | | B location - * | | | | */ - {0, G_16, I_16, H_16}, - {0, G_15, I_15, H_15}, - {0, G_14, I_14, H_14}, - {0, G_13, I_13, H_13}, - {0, G_12, I_12, H_12}, - {0, G_11, I_11, H_11}, - {0, G_10, I_10, H_10}, - {0, G_9, I_9, H_9}, - {0, G_8, I_8, H_8}, - {0, G_7, I_7, H_7}, - {0, G_6, I_6, H_6}, - {0, G_5, I_5, H_5}, - {0, G_4, I_4, H_4}, - {0, G_3, I_3, H_3}, - {0, G_2, I_2, H_2}, - {0, G_1, I_1, H_1}, - {1, A_3, C_3, B_3}, - {0, D_4, F_4, E_4}, - {0, D_3, F_3, E_3}, - {0, D_2, F_2, E_2}, - {0, D_1, F_1, E_1}, - - {0, A_16, C_16, B_16}, - {0, A_15, C_15, B_15}, - {0, A_14, C_14, B_14}, - {0, A_13, C_13, B_13}, - {0, A_12, C_12, B_12}, - {0, A_11, C_11, B_11}, - {0, A_10, C_10, B_10}, - {0, A_9, C_9, B_9}, - {0, A_8, C_8, B_8}, - {0, A_7, C_7, B_7}, - {0, A_6, C_6, B_6}, - {0, A_5, C_5, B_5}, - {0, A_4, C_4, B_4}, - {0, A_3, C_3, B_3}, - {1, D_8, F_8, E_8}, - {0, A_2, C_2, B_2}, - {0, A_1, C_1, B_1}, - {1, A_2, C_2, B_2}, - {0, D_8, F_8, E_8}, - {0, D_7, F_7, E_7}, - {0, D_6, F_6, E_6}, - {0, D_5, F_5, E_5}, - - {0, J_16, L_16, K_16}, - {0, J_15, L_15, K_15}, - {0, J_14, L_14, K_14}, - {0, J_13, L_13, K_13}, - {0, J_12, L_12, K_12}, - {0, J_11, L_11, K_11}, - {0, J_10, L_10, K_10}, - {0, J_9, L_9, K_9}, - {0, J_8, L_8, K_8}, - {0, J_7, L_7, K_7}, - {0, J_6, L_6, K_6}, - {0, J_5, L_5, K_5}, - {0, J_4, L_4, K_4}, - {0, J_3, L_3, K_3}, - {0, J_2, L_2, K_2}, - {0, J_1, L_1, K_1}, - {1, A_1, C_1, B_1}, - {0, D_12, F_12, E_12}, - {0, D_11, F_11, E_11}, - {0, D_10, F_10, E_10}, - {0, D_9, F_9, E_9}, - - {1, A_16, C_16, B_16}, - {1, A_15, C_15, B_15}, - {1, A_14, C_14, B_14}, - {1, A_13, C_13, B_13}, - {1, A_12, C_12, B_12}, - {1, A_11, C_11, B_11}, - {1, A_10, C_10, B_10}, - {1, A_9, C_9, B_9}, - {1, A_8, C_8, B_8}, - {1, A_7, C_7, B_7}, - {1, A_6, C_6, B_6}, - {1, A_5, C_5, B_5}, - {1, A_4, C_4, B_4}, - {1, J_9, L_9, K_9}, - {1, J_8, L_8, K_8}, - {1, J_7, L_7, K_7}, - - {1, G_16, I_16, H_16}, - {1, G_14, I_14, H_14}, - {1, G_13, I_13, H_13}, - {1, G_12, I_12, H_12}, - {1, G_11, I_11, H_11}, - {1, G_10, I_10, H_10}, - {1, G_9, I_9, H_9}, - {1, G_8, I_8, H_8}, - {1, G_7, I_7, H_7}, - {1, G_6, I_6, H_6}, - {1, G_5, I_5, H_5}, - {1, G_4, I_4, H_4}, - {1, G_3, I_3, H_3}, - - {1, G_1, I_1, H_1}, - {1, J_6, L_6, K_6}, - {1, J_5, L_5, K_5}, - {1, J_4, L_4, K_4}, - {1, J_3, L_3, K_3}, - - {1, D_16, F_16, E_16}, - {1, D_15, F_15, E_15}, - {1, D_14, F_14, E_14}, - {1, D_13, F_13, E_13}, - {1, D_10, F_10, E_10}, - {1, D_7, F_7, E_7}, - {1, D_6, F_6, E_6}, - {1, D_5, F_5, E_5}, - {1, D_4, F_4, E_4}, - {1, D_3, F_3, E_3}, - {1, D_2, F_2, E_2}, - {1, D_1, F_1, E_1}, - {1, G_2, I_2, H_2}, - {1, J_2, L_2, K_2}, - {1, J_1, L_1, K_1}, -}; - -#define __ NO_LED - -led_config_t g_led_config = { - { - // Key Matrix to LED Index - { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19 }, - { 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 36, 37, 38, 39, 40, 41 }, - { 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62 }, - { 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 20, 42, 63, 97, 77, 78, 79 }, - { 80, __, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 35, 93, __, 94, 95, 96 }, - { 98, 99, 100, 101, __, __, 102, __, __, 103, 104, 105, 106, 107, 108, 109, 110, __, 111, 112 } - }, - { - // LED Index to Physical Position - {0, 0}, {13, 0}, {24, 0}, {34, 0}, {45, 0}, {57, 0}, {68, 0}, {78, 0}, {89, 0}, {102,0}, {112, 0}, {123, 0}, {133, 0}, {149, 0}, {159, 0}, {169,0}, {180, 0}, {193,0}, {203,0}, {214,0}, {224, 0}, - {0,15}, {10,15}, {21,15}, {32,15}, {42,15}, {52,15}, {63,15}, {73,15}, {83,15}, {94,15}, {104,15}, {115,15}, {125,15}, {141,15}, {147,61}, {159,15}, {169,15}, {180,15}, {193,15},{203,15},{214,15}, {224,15}, - {3,27}, {16,27}, {26,27}, {36,27}, {47,27}, {57,27}, {68,27}, {78,27}, {89,27}, {99,27}, {109,27}, {120,27}, {130,27}, {141,27}, {159,27}, {169,27}, {180,27}, {193,27},{203,27},{214,27}, {224,33}, - {4,39}, {18,39}, {29,39}, {39,39}, {50,39}, {60,39}, {70,39}, {81,39}, {91,39}, {102,39},{112,39}, {133,39}, {147,39}, {193,39},{204,39},{214,39}, - {6,51}, {23,51}, {34,51}, {44,51}, {55,51}, {65,51}, {76,51}, {86,51}, {96,51}, {107,51}, {117,51}, {128,61}, {137,51}, {169,51}, {193,51},{204,51},{214,51}, {224,57}, - {1,64}, {14,64}, {27,64}, {36,64}, {66,64}, {94,64}, {105,64}, {118,64}, {131,64}, {145,64}, {159,64}, {169,64}, {180,64}, {198,64}, {214,64} - }, - { - // LED Index to Flag - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - } -}; -#endif diff --git a/keyboards/keychron/q6_max/jis_encoder/keymaps/default/keymap.c b/keyboards/keychron/q6_max/jis_encoder/keymaps/default/keymap.c deleted file mode 100644 index 434dea423b..0000000000 --- a/keyboards/keychron/q6_max/jis_encoder/keymaps/default/keymap.c +++ /dev/null @@ -1,70 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#include QMK_KEYBOARD_H -#include "keychron_common.h" - -enum layers { - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN, -}; - -#define FN_MAC MO(MAC_FN) -#define FN_WIN MO(WIN_FN) - -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_jis_113( - KC_ESC, KC_BRID, KC_BRIU, KC_MCTRL, KC_LNPAD, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_MUTE, KC_SNAP, KC_SIRI, RGB_MOD, KC_F13, KC_F14, KC_F15, KC_F16, - KC_GRV, 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_INT3, KC_BSPC, KC_INS, KC_HOME, KC_PGUP, KC_NUM, KC_PSLS, KC_PAST, KC_PMNS, - 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_DEL, KC_END, KC_PGDN, KC_P7, KC_P8, KC_P9, KC_PPLS, - 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_BSLS, KC_ENT, KC_P4, KC_P5, KC_P6, - KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_INT1, KC_RSFT, KC_UP, KC_P1, KC_P2, KC_P3, KC_PENT, - KC_LCTL, KC_LOPTN, KC_LCMMD,KC_LNG2, KC_SPC, KC_LNG1, KC_RCMMD, KC_ROPTN, FN_MAC, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT, KC_P0, KC_PDOT ), - - [MAC_FN] = LAYOUT_jis_113( - _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, RGB_TOG, _______, _______, RGB_TOG, _______, _______, _______, _______, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ), - - [WIN_BASE] = LAYOUT_jis_113( - KC_ESC, 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_MUTE, KC_PSCR, KC_CTANA, RGB_MOD, _______, _______, _______, _______, - KC_GRV, 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_INT3, KC_BSPC, KC_INS, KC_HOME, KC_PGUP, KC_NUM, KC_PSLS, KC_PAST, KC_PMNS, - 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_DEL, KC_END, KC_PGDN, KC_P7, KC_P8, KC_P9, KC_PPLS, - 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_BSLS, KC_ENT, KC_P4, KC_P5, KC_P6, - KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_INT1, KC_RSFT, KC_UP, KC_P1, KC_P2, KC_P3, KC_PENT, - KC_LCTL, KC_LWIN, KC_LALT, KC_INT5, KC_SPC, KC_INT4, KC_RALT, KC_RWIN, FN_WIN, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT, KC_P0, KC_PDOT ), - - [WIN_FN] = LAYOUT_jis_113( - _______, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, RGB_TOG, _______, _______, RGB_TOG, _______, _______, _______, _______, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ) -}; - -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - if (!process_record_keychron_common(keycode, record)) { - return false; - } - return true; -} diff --git a/keyboards/keychron/q6_max/jis_encoder/keymaps/via/keymap.c b/keyboards/keychron/q6_max/jis_encoder/keymaps/via/keymap.c deleted file mode 100644 index ec011f0c4e..0000000000 --- a/keyboards/keychron/q6_max/jis_encoder/keymaps/via/keymap.c +++ /dev/null @@ -1,80 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#include QMK_KEYBOARD_H -#include "keychron_common.h" - -enum layers { - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN, -}; - -#define FN_MAC MO(MAC_FN) -#define FN_WIN MO(WIN_FN) - -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_jis_113( - KC_ESC, KC_BRID, KC_BRIU, KC_MCTRL, KC_LNPAD, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_MUTE, KC_SNAP, KC_SIRI, RGB_MOD, KC_F13, KC_F14, KC_F15, KC_F16, - KC_GRV, 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_INT3, KC_BSPC, KC_INS, KC_HOME, KC_PGUP, KC_NUM, KC_PSLS, KC_PAST, KC_PMNS, - 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_DEL, KC_END, KC_PGDN, KC_P7, KC_P8, KC_P9, KC_PPLS, - 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_BSLS, KC_ENT, KC_P4, KC_P5, KC_P6, - KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_INT1, KC_RSFT, KC_UP, KC_P1, KC_P2, KC_P3, KC_PENT, - KC_LCTL, KC_LOPTN, KC_LCMMD,KC_LNG2, KC_SPC, KC_LNG1, KC_RCMMD, KC_ROPTN, FN_MAC, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT, KC_P0, KC_PDOT ), - - [MAC_FN] = LAYOUT_jis_113( - _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, RGB_TOG, _______, _______, RGB_TOG, _______, _______, _______, _______, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ), - - [WIN_BASE] = LAYOUT_jis_113( - KC_ESC, 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_MUTE, KC_PSCR, KC_CTANA, RGB_MOD, _______, _______, _______, _______, - KC_GRV, 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_INT3, KC_BSPC, KC_INS, KC_HOME, KC_PGUP, KC_NUM, KC_PSLS, KC_PAST, KC_PMNS, - 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_DEL, KC_END, KC_PGDN, KC_P7, KC_P8, KC_P9, KC_PPLS, - 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_BSLS, KC_ENT, KC_P4, KC_P5, KC_P6, - KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_INT1, KC_RSFT, KC_UP, KC_P1, KC_P2, KC_P3, KC_PENT, - KC_LCTL, KC_LWIN, KC_LALT, KC_INT5, KC_SPC, KC_INT4, KC_RALT, KC_RWIN, FN_WIN, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT, KC_P0, KC_PDOT ), - - [WIN_FN] = LAYOUT_jis_113( - _______, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, RGB_TOG, _______, _______, RGB_TOG, _______, _______, _______, _______, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ) -}; - -// clang-format on -#if defined(ENCODER_MAP_ENABLE) -const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][2] = { - [MAC_BASE] = {ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [MAC_FN] = {ENCODER_CCW_CW(RGB_VAD, RGB_VAI)}, - [WIN_BASE] = {ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [WIN_FN] = {ENCODER_CCW_CW(RGB_VAD, RGB_VAI)}, -}; -#endif // ENCODER_MAP_ENABLE - -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - if (!process_record_keychron_common(keycode, record)) { - return false; - } - return true; -} diff --git a/keyboards/keychron/q6_max/jis_encoder/keymaps/via/rules.mk b/keyboards/keychron/q6_max/jis_encoder/keymaps/via/rules.mk deleted file mode 100644 index 1e5b99807c..0000000000 --- a/keyboards/keychron/q6_max/jis_encoder/keymaps/via/rules.mk +++ /dev/null @@ -1 +0,0 @@ -VIA_ENABLE = yes diff --git a/keyboards/keychron/q6_max/jis_encoder/rules.mk b/keyboards/keychron/q6_max/jis_encoder/rules.mk deleted file mode 100644 index 7ff128fa69..0000000000 --- a/keyboards/keychron/q6_max/jis_encoder/rules.mk +++ /dev/null @@ -1 +0,0 @@ -# This file intentionally left blank \ No newline at end of file diff --git a/keyboards/keychron/q6_max/mcuconf.h b/keyboards/keychron/q6_max/mcuconf.h deleted file mode 100644 index 89294ee64b..0000000000 --- a/keyboards/keychron/q6_max/mcuconf.h +++ /dev/null @@ -1,37 +0,0 @@ -/* Copyright 2024 @ 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 - -#include_next - -#undef STM32_HSECLK -#define STM32_HSECLK 16000000 - -#undef STM32_PLLM_VALUE -#define STM32_PLLM_VALUE 8 - -#undef STM32_PLLN_VALUE -#define STM32_PLLN_VALUE 96 - -#undef STM32_PLLP_VALUE -#define STM32_PLLP_VALUE 4 - -#undef STM32_PLLQ_VALUE -#define STM32_PLLQ_VALUE 4 - -#undef STM32_SPI_USE_SPI1 -#define STM32_SPI_USE_SPI1 TRUE diff --git a/keyboards/keychron/q6_max/q6_max.c b/keyboards/keychron/q6_max/q6_max.c deleted file mode 100644 index be15f9ad4a..0000000000 --- a/keyboards/keychron/q6_max/q6_max.c +++ /dev/null @@ -1,84 +0,0 @@ -/* Copyright 2024 @ 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/>. - */ - -#include "quantum.h" -#include "keychron_task.h" -#ifdef FACTORY_TEST_ENABLE -# include "factory_test.h" -# include "keychron_common.h" -#endif -#ifdef LK_WIRELESS_ENABLE -# include "lkbt51.h" -# include "wireless.h" -# include "keychron_wireless_common.h" -# include "battery.h" -#endif - -#define POWER_ON_LED_DURATION 3000 -static uint32_t power_on_indicator_timer; - -#ifdef DIP_SWITCH_ENABLE -bool dip_switch_update_kb(uint8_t index, bool active) { - if (index == 0) { - default_layer_set(1UL << (active ? 2 : 0)); - } - dip_switch_update_user(index, active); - - return true; -} -#endif - -void keyboard_post_init_kb(void) { -#ifdef LK_WIRELESS_ENABLE - palSetLineMode(P2P4_MODE_SELECT_PIN, PAL_MODE_INPUT); - palSetLineMode(BT_MODE_SELECT_PIN, PAL_MODE_INPUT); - - writePin(BAT_LOW_LED_PIN, BAT_LOW_LED_PIN_ON_STATE); - - lkbt51_init(false); - wireless_init(); -#endif - - power_on_indicator_timer = timer_read32(); -#ifdef ENCODER_ENABLE - encoder_cb_init(); -#endif - - keyboard_post_init_user(); -} - -bool keychron_task_kb(void) { - if (power_on_indicator_timer) { - if (timer_elapsed32(power_on_indicator_timer) > POWER_ON_LED_DURATION) { - power_on_indicator_timer = 0; - -#ifdef LK_WIRELESS_ENABLE - writePin(BAT_LOW_LED_PIN, !BAT_LOW_LED_PIN_ON_STATE); -#endif - } else { -#ifdef LK_WIRELESS_ENABLE - writePin(BAT_LOW_LED_PIN, BAT_LOW_LED_PIN_ON_STATE); -#endif - } - } - return true; -} - -#ifdef LK_WIRELESS_ENABLE -bool lpm_is_kb_idle(void) { - return power_on_indicator_timer == 0 && !factory_reset_indicating(); -} -#endif diff --git a/keyboards/keychron/q6_max/readme.md b/keyboards/keychron/q6_max/readme.md deleted file mode 100644 index e403583d6e..0000000000 --- a/keyboards/keychron/q6_max/readme.md +++ /dev/null @@ -1,21 +0,0 @@ -# Keychron Q6 Max - -![Keychron Q6 Max](https://cdn.shopify.com/s/files/1/0059/0630/1017/files/Keychron-Q6-Max-100_-Layout-QMK_VIA-Wireless-Custom-Mechanical-Keyboard-White.jpg?v=1705458447) - -A customizable 100% fullsize keyboard. - -* Keyboard Maintainer: [Keychron](https://github.com/keychron) -* Hardware Supported: Keychron Q6 Max -* Hardware Availability: [Keychron Q6 Max QMK/VIA Wireless Custom Mechanical Keyboard](https://www.keychron.com/products/keychron-q6-max-qmk-via-wireless-custom-mechanical-keyboard) - -Make example for this keyboard (after setting up your build environment): - - make keychron/q6_max/ansi_encoder:default - -Flashing example for this keyboard: - - make keychron/q6_max/ansi_encoder:default:flash - -**Reset Key**: Toggle mode switch to "Cable", hold down the *Esc* key or reset button underneath space bar while connecting the USB cable, - -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). diff --git a/keyboards/keychron/q6_max/rules.mk b/keyboards/keychron/q6_max/rules.mk deleted file mode 100644 index 4eaf6820bc..0000000000 --- a/keyboards/keychron/q6_max/rules.mk +++ /dev/null @@ -1,4 +0,0 @@ -include keyboards/keychron/common/wireless/wireless.mk -include keyboards/keychron/common/keychron_common.mk - -VPATH += $(TOP_DIR)/keyboards/keychron diff --git a/keyboards/keychron/q6_max/via_json/q6_max_ansi_encoder.json b/keyboards/keychron/q6_max/via_json/q6_max_ansi_encoder.json deleted file mode 100644 index 5254a68dfa..0000000000 --- a/keyboards/keychron/q6_max/via_json/q6_max_ansi_encoder.json +++ /dev/null @@ -1,349 +0,0 @@ -{ - "name": "Keychron Q6 Max ANSI Knob", - "vendorId": "0x3434", - "productId": "0x0860", - "keycodes": ["qmk_lighting"], - "menus": [ - { - "label": "Lighting", - "content": [ - { - "label": "Backlight", - "content": [ - { - "label": "Brightness", - "type": "range", - "options": [0, 255], - "content": ["id_qmk_rgb_matrix_brightness", 3, 1] - }, - { - "label": "Effect", - "type": "dropdown", - "content": ["id_qmk_rgb_matrix_effect", 3, 2], - "options": [ - ["None", 0], - ["Solid Color", 1], - ["Breathing", 2], - ["Band Spiral Val", 3], - ["Cycle All", 4], - ["Cycle Left Right", 5], - ["Cycle Up Down", 6], - ["Rainbow Moving Chevron", 7], - ["Cycle Out In", 8], - ["Cycle Out In Dual", 9], - ["Cycle Pinwheel", 10], - ["Cycle Spiral", 11], - ["Dual Beacon", 12], - ["Rainbow Beacon", 13], - ["Jellybean Raindrops", 14], - ["Pixel Rain", 15], - ["Typing Heatmap", 16], - ["Digital Rain", 17], - ["Reactive Simple", 18], - ["Reactive Multiwide", 19], - ["Reactive Multinexus", 20], - ["Splash", 21], - ["Solid Splash", 22] - ] - }, - { - "showIf": "{id_qmk_rgb_matrix_effect} > 1", - "label": "Effect Speed", - "type": "range", - "options": [0, 255], - "content": ["id_qmk_rgb_matrix_effect_speed", 3, 3] - }, - { - "showIf": "{id_qmk_rgb_matrix_effect} != 0 && ( {id_qmk_rgb_matrix_effect} < 4 || {id_qmk_rgb_matrix_effect} == 18 || ({id_qmk_rgb_matrix_effect} > 17 && {id_qmk_rgb_matrix_effect} != 21) ) ", - "label": "Color", - "type": "color", - "content": ["id_qmk_rgb_matrix_color", 3, 4] - } - ] - } - ] - } - ], - "customKeycodes": [ - {"name": "Left Option", "title": "Left Option", "shortName": "LOpt"}, - {"name": "Right Option", "title": "Right Option", "shortName": "ROpt"}, - {"name": "Left Cmd", "title": "Left Command", "shortName": "LCmd"}, - {"name": "Right Cmd", "title": "Right Command", "shortName": "RCmd"}, - {"name": "Misson Control", "title": "Misson Control in Mac", "shortName": "MCtl"}, - {"name": "Lanuch Pad", "title": "Lanuch Pad in Windows", "shortName": "LPad"}, - {"name": "Task View", "title": "Task View in Windows", "shortName": "Task"}, - {"name": "File Explorer", "title": "File Explorer in Windows", "shortName": "File"}, - {"name": "Screen shot", "title": "Screenshot in macOS", "shortName": "SShot"}, - {"name": "Cortana", "title": "Cortana in Windows", "shortName": "Cortana"}, - {"name": "Siri", "title": "Siri in macOS", "shortName": "Siri"}, - {"name": "Bluetooth Host 1", "title": "Bluetooth Host 1", "shortName": "BTH1"}, - {"name": "Bluetooth Host 2", "title": "Bluetooth Host 2", "shortName": "BTH2"}, - {"name": "Bluetooth Host 3", "title": "Bluetooth Host 3", "shortName": "BTH3"}, - {"name": "2.4G", "title": "2.4G", "shortName": "2.4G"}, - {"name": "Battery Level", "title": "Show battery level", "shortName": "Batt"} - ], - "matrix": {"rows": 6, "cols" : 20}, - "layouts": { - "keymap": [ - [ - { - "c": "#777777" - }, - "0, 0", - { - "x": 0.25, - "c": "#aaaaaa" - }, - "0, 1", - "0, 2", - "0, 3", - "0, 4", - { - "x": 0.25, - "c": "#cccccc" - }, - "0, 5", - "0, 6", - "0, 7", - "0, 8", - { - "x": 0.25, - "c": "#aaaaaa" - }, - "0, 9", - "0, 10", - "0, 11", - "0, 12", - { - "x": 0.25, - "c": "#cccccc" - }, - "0, 13\n\n\n\n\n\n\n\n\ne0", - { - "x": 0.25 - }, - "0, 14", - "0, 15", - "0, 16", - { - "x": 0.25, - "c": "#aaaaaa" - }, - "0, 17", - "0, 18", - "0, 19", - "3, 13" - ], - [ - { - "y": 0.25, - "c": "#cccccc" - }, - "1, 0", - { - "c": "#aaaaaa" - }, - "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": 2, - "c": "#cccccc" - }, - "1, 13", - { - "x": 0.25 - }, - "1, 14", - "1, 15", - "1, 16", - { - "x": 0.25, - "c": "#aaaaaa" - }, - "1, 17", - "1, 18", - "1, 19", - "3, 14" - ], - [ - { - "w": 1.5, - "c": "#cccccc" - }, - "2, 0", - { - "c": "#aaaaaa" - }, - "2, 1", - "2, 2", - "2, 3", - "2, 4", - "2, 5", - "2, 6", - "2, 7", - "2, 8", - "2, 9", - "2, 10", - "2, 11", - "2, 12", - { - "w": 1.5, - "c": "#cccccc" - }, - "2, 13", - { - "x": 0.25 - }, - "2, 14", - "2, 15", - "2, 16", - { - "x": 0.25, - "c": "#aaaaaa" - }, - "2, 17", - "2, 18", - "2, 19", - { - "h": 2, - "c": "#aaaaaa" - }, - "3, 15" - ], - [ - { - "w": 1.75, - "c": "#cccccc" - }, - "3, 0", - { - "c": "#aaaaaa" - }, - "3, 1", - "3, 2", - "3, 3", - "3, 4", - "3, 5", - "3, 6", - "3, 7", - "3, 8", - "3, 9", - "3, 10", - "3, 11", - { - "w": 2.25, - "c": "#777777" - }, - "3, 12", - { - "x": 3.5, - "c": "#aaaaaa" - }, - "3, 17", - "3, 18", - "3, 19" - ], - [ - { - "w": 2.25, - "c": "#cccccc" - }, - "4, 0", - { - "c": "#aaaaaa" - }, - "4, 2", - "4, 3", - "4, 4", - "4, 5", - "4, 6", - "4, 7", - "4, 8", - "4, 9", - "4, 10", - "4, 11", - { - "w": 2.75, - "c": "#cccccc" - }, - "4, 13", - { - "x": 1.25, - "c": "#aaaaaa" - }, - "4, 15", - { - "x": 1.25 - }, - "4, 17", - "4, 18", - "4, 19", - { - "h": 2 - }, - "3, 16" - ], - [ - { - "w": 1.25, - "c": "#cccccc" - }, - "5, 0", - { - "w": 1.25 - }, - "5, 1", - { - "w": 1.25 - }, - "5, 2", - { - "w": 6.25, - "c": "#aaaaaa" - }, - "5, 6", - { - "w": 1.25, - "c": "#cccccc" - }, - "5, 10", - { - "w": 1.25 - }, - "5, 11", - { - "w": 1.25, - "c": "#cccccc" - }, - "5, 12", - { - "w": 1.25 - }, - "5, 13", - { - "x": 0.25, - "c": "#aaaaaa" - }, - "5, 14", - "5, 15", - "5, 16", - { - "x": 0.25, - "w": 2 - }, - "5, 18", - "5, 19" - ] - ] - } - } diff --git a/keyboards/keychron/q6_pro/ansi_encoder/ansi_encoder.c b/keyboards/keychron/q6_pro/ansi_encoder/ansi_encoder.c deleted file mode 100644 index c2f79a897c..0000000000 --- a/keyboards/keychron/q6_pro/ansi_encoder/ansi_encoder.c +++ /dev/null @@ -1,142 +0,0 @@ -/* 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 . - */ - -#include "quantum.h" - -// clang-format off -#ifdef RGB_MATRIX_ENABLE -const snled27351_led_t g_snled27351_leds[RGB_MATRIX_LED_COUNT] = { -/* Refer to snled27351manual for these locations - * driver - * | R location - * | | G location - * | | | B location - * | | | | */ - {0, I_1, G_1, H_1}, - {0, I_2, G_2, H_2}, - {0, I_3, G_3, H_3}, - {0, I_4, G_4, H_4}, - {0, I_5, G_5, H_5}, - {0, I_6, G_6, H_6}, - {0, I_7, G_7, H_7}, - {0, I_8, G_8, H_8}, - {0, I_9, G_9, H_9}, - {0, I_10, G_10, H_10}, - {0, I_11, G_11, H_11}, - {0, I_12, G_12, H_12}, - {0, I_13, G_13, H_13}, - {0, I_15, G_15, H_15}, - {0, I_16, G_16, H_16}, - {1, C_4, A_4, B_4}, - {0, L_5, J_5, K_5}, - {0, L_6, J_6, K_6}, - {0, L_7, J_7, K_7}, - {0, L_8, J_8, K_8}, - - {0, C_1, A_1, B_1}, - {0, C_2, A_2, B_2}, - {0, C_3, A_3, B_3}, - {0, C_4, A_4, B_4}, - {0, C_5, A_5, B_5}, - {0, C_6, A_6, B_6}, - {0, C_7, A_7, B_7}, - {0, C_8, A_8, B_8}, - {0, C_9, A_9, B_9}, - {0, C_10, A_10, B_10}, - {0, C_11, A_11, B_11}, - {0, C_12, A_12, B_12}, - {0, C_13, A_13, B_13}, - {0, C_14, A_14, B_14}, - {0, C_15, A_15, B_15}, - {0, C_16, A_16, B_16}, - {1, C_2, A_2, B_2}, - {0, L_9, J_9, K_9}, - {0, L_10, J_10, K_10}, - {0, L_11, J_11, K_11}, - {0, L_12, J_12, K_12}, - - {0, F_1, D_1, E_1}, - {0, F_2, D_2, E_2}, - {0, F_3, D_3, E_3}, - {0, F_4, D_4, E_4}, - {0, F_5, D_5, E_5}, - {0, F_6, D_6, E_6}, - {0, F_7, D_7, E_7}, - {0, F_8, D_8, E_8}, - {0, F_9, D_9, E_9}, - {0, F_10, D_10, E_10}, - {0, F_11, D_11, E_11}, - {0, F_12, D_12, E_12}, - {0, F_13, D_13, E_13}, - {0, F_14, D_14, E_14}, - {0, F_15, D_15, E_15}, - {0, F_16, D_16, E_16}, - {1, C_1, A_1, B_1}, - {0, L_13, J_13, K_13}, - {0, L_14, J_14, K_14}, - {0, L_15, J_15, K_15}, - {0, L_16, J_16, K_16}, - - {1, C_16, A_16, B_16}, - {1, C_15, A_15, B_15}, - {1, C_14, A_14, B_14}, - {1, C_13, A_13, B_13}, - {1, C_12, A_12, B_12}, - {1, C_11, A_11, B_11}, - {1, C_10, A_10, B_10}, - {1, C_9, A_9, B_9}, - {1, C_8, A_8, B_8}, - {1, C_7, A_7, B_7}, - {1, C_6, A_6, B_6}, - {1, C_5, A_5, B_5}, - {1, C_3, A_3, B_3}, - {1, L_9, J_9, K_9}, - {1, L_8, J_8, K_8}, - {1, L_7, J_7, K_7}, - - {1, I_16, G_16, H_16}, - {1, I_14, G_14, H_14}, - {1, I_13, G_13, H_13}, - {1, I_12, G_12, H_12}, - {1, I_11, G_11, H_11}, - {1, I_10, G_10, H_10}, - {1, I_9, G_9, H_9}, - {1, I_8, G_8, H_8}, - {1, I_7, G_7, H_7}, - {1, I_6, G_6, H_6}, - {1, I_5, G_5, H_5}, - {1, I_3, G_3, H_3}, - {1, I_1, G_1, H_1}, - {1, L_6, J_6, K_6}, - {1, L_5, J_5, K_5}, - {1, L_4, J_4, K_4}, - {1, L_3, J_3, K_3}, - - {1, F_16, D_16, E_16}, - {1, F_15, D_15, E_15}, - {1, F_14, D_14, E_14}, - {1, F_10, D_10, E_10}, - {1, F_6, D_6, E_6}, - {1, F_5, D_5, E_5}, - {1, F_4, D_4, E_4}, - {1, F_3, D_3, E_3}, - {1, F_2, D_2, E_2}, - {1, F_1, D_1, E_1}, - {1, I_2, G_2, H_2}, - {1, L_2, J_2, K_2}, - {1, L_1, J_1, K_1} -}; -#endif diff --git a/keyboards/keychron/q6_pro/ansi_encoder/config.h b/keyboards/keychron/q6_pro/ansi_encoder/config.h deleted file mode 100644 index 77d36e5b7d..0000000000 --- a/keyboards/keychron/q6_pro/ansi_encoder/config.h +++ /dev/null @@ -1,49 +0,0 @@ -/* 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 . - */ - -#pragma once - -#ifdef RGB_MATRIX_ENABLE -/* RGB Matrix Driver Configuration */ -# define DRIVER_COUNT 2 -# define DRIVER_ADDR_1 0b1110111 -# define DRIVER_ADDR_2 0b1110100 -# define DRIVER_1_LED_TOTAL 59 -# define DRIVER_2_LED_TOTAL 49 -# define RGB_MATRIX_LED_COUNT (DRIVER_1_LED_TOTAL + DRIVER_2_LED_TOTAL) - -/* Set to infinit, which is use in USB mode by default */ -# define RGB_MATRIX_TIMEOUT RGB_MATRIX_TIMEOUT_INFINITE - -/* Allow to shutdown driver to save power */ -# define RGB_MATRIX_DRIVER_SHUTDOWN_ENABLE - -/* Turn off backllit if brightness value is low */ -# define RGB_MATRIX_BRIGHTNESS_TURN_OFF_VAL 48 - -/* Indication led */ -# define NUM_LOCK_INDEX 37 -# define CAPS_LOCK_INDEX 62 -# define LOW_BAT_IND_INDEX 98 - -/* Enable Reactive Animation */ -# define RGB_MATRIX_FRAMEBUFFER_EFFECTS -# define RGB_MATRIX_KEYPRESSES - -/* Set LED driver current */ -# define SNLED27351_CURRENT_TUNE \ - { 0x28, 0x28, 0x28, 0x28, 0x28, 0x28, 0x28, 0x28, 0x28, 0x28, 0x28, 0x28 } -#endif diff --git a/keyboards/keychron/q6_pro/ansi_encoder/info.json b/keyboards/keychron/q6_pro/ansi_encoder/info.json deleted file mode 100644 index 5eb0e0ce7e..0000000000 --- a/keyboards/keychron/q6_pro/ansi_encoder/info.json +++ /dev/null @@ -1,243 +0,0 @@ -{ - "usb": { - "pid": "0x0660", - "device_version": "1.0.1" - }, - "layouts": { - "LAYOUT_109_ansi": { - "layout": [ - {"matrix":[0, 0], "x":0, "y":0}, - {"matrix":[0, 1], "x":1.25, "y":0}, - {"matrix":[0, 2], "x":2.25, "y":0}, - {"matrix":[0, 3], "x":3.25, "y":0}, - {"matrix":[0, 4], "x":4.25, "y":0}, - {"matrix":[0, 5], "x":5.5, "y":0}, - {"matrix":[0, 6], "x":6.5, "y":0}, - {"matrix":[0, 7], "x":7.5, "y":0}, - {"matrix":[0, 8], "x":8.5, "y":0}, - {"matrix":[0, 9], "x":9.75, "y":0}, - {"matrix":[0,10], "x":10.75, "y":0}, - {"matrix":[0,11], "x":11.75, "y":0}, - {"matrix":[0,12], "x":12.75, "y":0}, - {"matrix":[0,13], "x":14, "y":0}, - {"matrix":[0,14], "x":15.25, "y":0}, - {"matrix":[0,15], "x":16.25, "y":0}, - {"matrix":[0,16], "x":17.25, "y":0}, - {"matrix":[0,17], "x":18.5, "y":0}, - {"matrix":[0,18], "x":19.5, "y":0}, - {"matrix":[0,19], "x":20.5, "y":0}, - {"matrix":[0,20], "x":21.5, "y":0}, - - {"matrix":[1, 0], "x":0, "y":1.25}, - {"matrix":[1, 1], "x":1, "y":1.25}, - {"matrix":[1, 2], "x":2, "y":1.25}, - {"matrix":[1, 3], "x":3, "y":1.25}, - {"matrix":[1, 4], "x":4, "y":1.25}, - {"matrix":[1, 5], "x":5, "y":1.25}, - {"matrix":[1, 6], "x":6, "y":1.25}, - {"matrix":[1, 7], "x":7, "y":1.25}, - {"matrix":[1, 8], "x":8, "y":1.25}, - {"matrix":[1, 9], "x":9, "y":1.25}, - {"matrix":[1,10], "x":10, "y":1.25}, - {"matrix":[1,11], "x":11, "y":1.25}, - {"matrix":[1,12], "x":12, "y":1.25}, - {"matrix":[1,13], "x":13, "y":1.25, "w":2}, - {"matrix":[1,14], "x":15.25, "y":1.25}, - {"matrix":[1,15], "x":16.25, "y":1.25}, - {"matrix":[1,16], "x":17.25, "y":1.25}, - {"matrix":[1,17], "x":18.5, "y":1.25}, - {"matrix":[1,18], "x":19.5, "y":1.25}, - {"matrix":[1,19], "x":20.5, "y":1.25}, - {"matrix":[1,20], "x":21.5, "y":1.25}, - - {"matrix":[2, 0], "x":0, "y":2.25, "w":1.5}, - {"matrix":[2, 1], "x":1.5, "y":2.25}, - {"matrix":[2, 2], "x":2.5, "y":2.25}, - {"matrix":[2, 3], "x":3.5, "y":2.25}, - {"matrix":[2, 4], "x":4.5, "y":2.25}, - {"matrix":[2, 5], "x":5.5, "y":2.25}, - {"matrix":[2, 6], "x":6.5, "y":2.25}, - {"matrix":[2, 7], "x":7.5, "y":2.25}, - {"matrix":[2, 8], "x":8.5, "y":2.25}, - {"matrix":[2, 9], "x":9.5, "y":2.25}, - {"matrix":[2,10], "x":10.5, "y":2.25}, - {"matrix":[2,11], "x":11.5, "y":2.25}, - {"matrix":[2,12], "x":12.5, "y":2.25}, - {"matrix":[2,13], "x":13.5, "y":2.25, "w":1.5}, - {"matrix":[2,14], "x":15.25, "y":2.25}, - {"matrix":[2,15], "x":16.25, "y":2.25}, - {"matrix":[2,16], "x":17.25, "y":2.25}, - {"matrix":[2,17], "x":18.5, "y":2.25}, - {"matrix":[2,18], "x":19.5, "y":2.25}, - {"matrix":[2,19], "x":20.5, "y":2.25}, - {"matrix":[2,20], "x":21.5, "y":2.25, "h":2}, - - {"matrix":[3, 0], "x":0, "y":3.25, "w":1.75}, - {"matrix":[3, 1], "x":1.75, "y":3.25}, - {"matrix":[3, 2], "x":2.75, "y":3.25}, - {"matrix":[3, 3], "x":3.75, "y":3.25}, - {"matrix":[3, 4], "x":4.75, "y":3.25}, - {"matrix":[3, 5], "x":5.75, "y":3.25}, - {"matrix":[3, 6], "x":6.75, "y":3.25}, - {"matrix":[3, 7], "x":7.75, "y":3.25}, - {"matrix":[3, 8], "x":8.75, "y":3.25}, - {"matrix":[3, 9], "x":9.75, "y":3.25}, - {"matrix":[3,10], "x":10.75, "y":3.25}, - {"matrix":[3,11], "x":11.75, "y":3.25}, - {"matrix":[3,13], "x":12.75, "y":3.25, "w":2.25}, - {"matrix":[3,17], "x":18.5, "y":3.25}, - {"matrix":[3,18], "x":19.5, "y":3.25}, - {"matrix":[3,19], "x":20.5, "y":3.25}, - - {"matrix":[4, 0], "x":0, "y":4.25, "w":2.25}, - {"matrix":[4, 2], "x":2.25, "y":4.25}, - {"matrix":[4, 3], "x":3.25, "y":4.25}, - {"matrix":[4, 4], "x":4.25, "y":4.25}, - {"matrix":[4, 5], "x":5.25, "y":4.25}, - {"matrix":[4, 6], "x":6.25, "y":4.25}, - {"matrix":[4, 7], "x":7.25, "y":4.25}, - {"matrix":[4, 8], "x":8.25, "y":4.25}, - {"matrix":[4, 9], "x":9.25, "y":4.25}, - {"matrix":[4,10], "x":10.25, "y":4.25}, - {"matrix":[4,11], "x":11.25, "y":4.25}, - {"matrix":[4,13], "x":12.25, "y":4.25, "w":2.75}, - {"matrix":[4,15], "x":16.25, "y":4.25}, - {"matrix":[4,17], "x":18.5, "y":4.25}, - {"matrix":[4,18], "x":19.5, "y":4.25}, - {"matrix":[4,19], "x":20.5, "y":4.25}, - {"matrix":[4,20], "x":21.5, "y":4.25, "h":2}, - - {"matrix":[5, 0], "x":0, "y":5.25, "w":1.25}, - {"matrix":[5, 1], "x":1.25, "y":5.25, "w":1.25}, - {"matrix":[5, 2], "x":2.5, "y":5.25, "w":1.25}, - {"matrix":[5, 6], "x":3.75, "y":5.25, "w":6.25}, - {"matrix":[5,10], "x":10, "y":5.25, "w":1.25}, - {"matrix":[5,11], "x":11.25, "y":5.25, "w":1.25}, - {"matrix":[5,12], "x":12.5, "y":5.25, "w":1.25}, - {"matrix":[5,13], "x":13.75, "y":5.25, "w":1.25}, - {"matrix":[5,14], "x":15.25, "y":5.25}, - {"matrix":[5,15], "x":16.25, "y":5.25}, - {"matrix":[5,16], "x":17.25, "y":5.25}, - {"matrix":[5,18], "x":18.5, "y":5.25, "w":2}, - {"matrix":[5,19], "x":20.5, "y":5.25} - ] - } - }, - "rgb_matrix": { - "layout": [ - {"matrix":[0, 0], "flags":1, "x":0, "y":0}, - {"matrix":[0, 1], "flags":1, "x":13, "y":0}, - {"matrix":[0, 2], "flags":1, "x":24, "y":0}, - {"matrix":[0, 3], "flags":1, "x":34, "y":0}, - {"matrix":[0, 4], "flags":1, "x":45, "y":0}, - {"matrix":[0, 5], "flags":1, "x":57, "y":0}, - {"matrix":[0, 6], "flags":1, "x":68, "y":0}, - {"matrix":[0, 7], "flags":1, "x":78, "y":0}, - {"matrix":[0, 8], "flags":1, "x":89, "y":0}, - {"matrix":[0, 9], "flags":1, "x":102, "y":0}, - {"matrix":[0, 10], "flags":1, "x":112, "y":0}, - {"matrix":[0, 11], "flags":1, "x":123, "y":0}, - {"matrix":[0, 12], "flags":1, "x":133, "y":0}, - {"matrix":[0, 14], "flags":1, "x":159, "y":0}, - {"matrix":[0, 15], "flags":1, "x":169, "y":0}, - {"matrix":[0, 16], "flags":1, "x":180, "y":0}, - {"matrix":[0, 17], "flags":4, "x":193, "y":0}, - {"matrix":[0, 18], "flags":4, "x":203, "y":0}, - {"matrix":[0, 19], "flags":4, "x":214, "y":0}, - {"matrix":[0, 20], "flags":4, "x":224, "y":0}, - - {"matrix":[1, 0], "flags":4, "x":0, "y":15}, - {"matrix":[1, 1], "flags":8, "x":10, "y":15}, - {"matrix":[1, 2], "flags":8, "x":21, "y":15}, - {"matrix":[1, 3], "flags":8, "x":32, "y":15}, - {"matrix":[1, 4], "flags":4, "x":42, "y":15}, - {"matrix":[1, 5], "flags":4, "x":52, "y":15}, - {"matrix":[1, 6], "flags":4, "x":63, "y":15}, - {"matrix":[1, 7], "flags":4, "x":73, "y":15}, - {"matrix":[1, 8], "flags":4, "x":83, "y":15}, - {"matrix":[1, 9], "flags":4, "x":94, "y":15}, - {"matrix":[1, 10], "flags":4, "x":104, "y":15}, - {"matrix":[1, 11], "flags":4, "x":115, "y":15}, - {"matrix":[1, 12], "flags":4, "x":125, "y":15}, - {"matrix":[1, 13], "flags":1, "x":141, "y":15}, - {"matrix":[1, 14], "flags":1, "x":159, "y":15}, - {"matrix":[1, 15], "flags":1, "x":169, "y":15}, - {"matrix":[1, 16], "flags":1, "x":180, "y":15}, - {"matrix":[1, 17], "flags":8, "x":193, "y":15}, - {"matrix":[1, 18], "flags":4, "x":203, "y":15}, - {"matrix":[1, 19], "flags":4, "x":214, "y":15}, - {"matrix":[1, 20], "flags":4, "x":224, "y":15}, - - {"matrix":[2, 0], "flags":1, "x":3, "y":27}, - {"matrix":[2, 1], "flags":4, "x":16, "y":27}, - {"matrix":[2, 2], "flags":4, "x":26, "y":27}, - {"matrix":[2, 3], "flags":4, "x":36, "y":27}, - {"matrix":[2, 4], "flags":4, "x":47, "y":27}, - {"matrix":[2, 5], "flags":4, "x":57, "y":27}, - {"matrix":[2, 6], "flags":4, "x":68, "y":27}, - {"matrix":[2, 7], "flags":4, "x":78, "y":27}, - {"matrix":[2, 8], "flags":4, "x":89, "y":27}, - {"matrix":[2, 9], "flags":4, "x":99, "y":27}, - {"matrix":[2, 10], "flags":4, "x":109, "y":27}, - {"matrix":[2, 11], "flags":4, "x":120, "y":27}, - {"matrix":[2, 12], "flags":4, "x":130, "y":27}, - {"matrix":[2, 13], "flags":1, "x":143, "y":27}, - {"matrix":[2, 14], "flags":1, "x":159, "y":27}, - {"matrix":[2, 15], "flags":1, "x":169, "y":27}, - {"matrix":[2, 16], "flags":1, "x":180, "y":27}, - {"matrix":[2, 17], "flags":4, "x":193, "y":27}, - {"matrix":[2, 18], "flags":4, "x":203, "y":27}, - {"matrix":[2, 19], "flags":4, "x":214, "y":27}, - {"matrix":[2, 20], "flags":4, "x":224, "y":27}, - - {"matrix":[3, 0], "flags":8, "x":4, "y":40}, - {"matrix":[3, 1], "flags":4, "x":18, "y":40}, - {"matrix":[3, 2], "flags":4, "x":29, "y":40}, - {"matrix":[3, 3], "flags":4, "x":39, "y":40}, - {"matrix":[3, 4], "flags":4, "x":50, "y":40}, - {"matrix":[3, 5], "flags":4, "x":60, "y":40}, - {"matrix":[3, 6], "flags":4, "x":70, "y":40}, - {"matrix":[3, 7], "flags":4, "x":81, "y":40}, - {"matrix":[3, 8], "flags":4, "x":91, "y":40}, - {"matrix":[3, 9], "flags":4, "x":102, "y":40}, - {"matrix":[3, 10], "flags":4, "x":112, "y":40}, - {"matrix":[3, 11], "flags":4, "x":123, "y":40}, - {"matrix":[3, 13], "flags":1, "x":139, "y":40}, - {"matrix":[3, 17], "flags":4, "x":193, "y":40}, - {"matrix":[3, 18], "flags":4, "x":203, "y":40}, - {"matrix":[3, 19], "flags":4, "x":214, "y":40}, - - {"matrix":[4, 0], "flags":1, "x":7, "y":52}, - {"matrix":[4, 2], "flags":4, "x":23, "y":52}, - {"matrix":[4, 3], "flags":4, "x":34, "y":52}, - {"matrix":[4, 4], "flags":4, "x":44, "y":52}, - {"matrix":[4, 5], "flags":4, "x":55, "y":52}, - {"matrix":[4, 6], "flags":4, "x":65, "y":52}, - {"matrix":[4, 7], "flags":4, "x":76, "y":52}, - {"matrix":[4, 8], "flags":4, "x":86, "y":52}, - {"matrix":[4, 9], "flags":4, "x":96, "y":52}, - {"matrix":[4, 10], "flags":4, "x":107, "y":52}, - {"matrix":[4, 11], "flags":4, "x":117, "y":52}, - {"matrix":[4, 13], "flags":1, "x":137, "y":52}, - {"matrix":[4, 15], "flags":1, "x":169, "y":52}, - {"matrix":[4, 17], "flags":4, "x":193, "y":52}, - {"matrix":[4, 18], "flags":4, "x":203, "y":52}, - {"matrix":[4, 19], "flags":4, "x":214, "y":52}, - {"matrix":[4, 20], "flags":4, "x":224, "y":52}, - - {"matrix":[5, 0], "flags":1, "x":1, "y":64}, - {"matrix":[5, 1], "flags":1, "x":14, "y":64}, - {"matrix":[5, 2], "flags":1, "x":27, "y":64}, - {"matrix":[5, 6], "flags":4, "x":66, "y":64}, - {"matrix":[5, 10], "flags":1, "x":105, "y":64}, - {"matrix":[5, 11], "flags":1, "x":118, "y":64}, - {"matrix":[5, 12], "flags":1, "x":131, "y":64}, - {"matrix":[5, 13], "flags":1, "x":145, "y":64}, - {"matrix":[5, 14], "flags":1, "x":159, "y":64}, - {"matrix":[5, 15], "flags":1, "x":169, "y":64}, - {"matrix":[5, 16], "flags":1, "x":180, "y":64}, - {"matrix":[5, 18], "flags":4, "x":198, "y":64}, - {"matrix":[5, 19], "flags":4, "x":214, "y":64} - ] - } -} diff --git a/keyboards/keychron/q6_pro/ansi_encoder/keymaps/default/keymap.c b/keyboards/keychron/q6_pro/ansi_encoder/keymaps/default/keymap.c deleted file mode 100644 index 237cafbd58..0000000000 --- a/keyboards/keychron/q6_pro/ansi_encoder/keymaps/default/keymap.c +++ /dev/null @@ -1,65 +0,0 @@ -/* 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 . - */ - -#include QMK_KEYBOARD_H - -// clang-format off -enum layers{ - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN, -}; - -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_109_ansi( - KC_ESC, KC_BRID, KC_BRIU, KC_MCTL, KC_LPAD, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_MUTE, KC_SNAP, KC_SIRI, RGB_MOD, KC_F13, KC_F14, KC_F15, KC_F16, - KC_GRV, 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_INS, KC_HOME, KC_PGUP, KC_NUM, KC_PSLS, KC_PAST, KC_PMNS, - 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_DEL, KC_END, KC_PGDN, KC_P7, KC_P8, KC_P9, KC_PPLS, - 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_P4, KC_P5, KC_P6, - 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_P1, KC_P2, KC_P3, KC_PENT, - KC_LCTL, KC_LOPTN, KC_LCMMD, KC_SPC, KC_RCMMD, KC_ROPTN, MO(MAC_FN), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT, KC_P0, KC_PDOT ), - [MAC_FN] = LAYOUT_109_ansi( - _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, RGB_TOG, _______, _______, RGB_TOG, _______, _______, _______, _______, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ), - [WIN_BASE] = LAYOUT_109_ansi( - KC_ESC, 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_MUTE, KC_PSCR, KC_CTANA, RGB_MOD, _______, _______, _______, _______, - KC_GRV, 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_INS, KC_HOME, KC_PGUP, KC_NUM, KC_PSLS, KC_PAST, KC_PMNS, - 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_DEL, KC_END, KC_PGDN, KC_P7, KC_P8, KC_P9, KC_PPLS, - 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_P4, KC_P5, KC_P6, - 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_P1, KC_P2, KC_P3, KC_PENT, - KC_LCTL, KC_LWIN, KC_LALT, KC_SPC, KC_RALT, KC_RWIN, MO(WIN_FN), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT, KC_P0, KC_PDOT ), - [WIN_FN] = LAYOUT_109_ansi( - _______, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, RGB_TOG, _______, _______, RGB_TOG, _______, _______, _______, _______, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ), -}; - -#if defined(ENCODER_MAP_ENABLE) -const uint16_t PROGMEM encoder_map[][1][2] = { - [MAC_BASE] = {ENCODER_CCW_CW(KC_VOLD, KC_VOLU) }, - [MAC_FN] = {ENCODER_CCW_CW(RGB_VAD, RGB_VAI) }, - [WIN_BASE] = {ENCODER_CCW_CW(KC_VOLD, KC_VOLU) }, - [WIN_FN] = {ENCODER_CCW_CW(RGB_VAD, RGB_VAI) } -}; -#endif // ENCODER_MAP_ENABLE diff --git a/keyboards/keychron/q6_pro/ansi_encoder/keymaps/default/rules.mk b/keyboards/keychron/q6_pro/ansi_encoder/keymaps/default/rules.mk deleted file mode 100644 index ee32568148..0000000000 --- a/keyboards/keychron/q6_pro/ansi_encoder/keymaps/default/rules.mk +++ /dev/null @@ -1 +0,0 @@ -ENCODER_MAP_ENABLE = yes diff --git a/keyboards/keychron/q6_pro/ansi_encoder/keymaps/via/keymap.c b/keyboards/keychron/q6_pro/ansi_encoder/keymaps/via/keymap.c deleted file mode 100644 index 237cafbd58..0000000000 --- a/keyboards/keychron/q6_pro/ansi_encoder/keymaps/via/keymap.c +++ /dev/null @@ -1,65 +0,0 @@ -/* 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 . - */ - -#include QMK_KEYBOARD_H - -// clang-format off -enum layers{ - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN, -}; - -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_109_ansi( - KC_ESC, KC_BRID, KC_BRIU, KC_MCTL, KC_LPAD, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_MUTE, KC_SNAP, KC_SIRI, RGB_MOD, KC_F13, KC_F14, KC_F15, KC_F16, - KC_GRV, 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_INS, KC_HOME, KC_PGUP, KC_NUM, KC_PSLS, KC_PAST, KC_PMNS, - 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_DEL, KC_END, KC_PGDN, KC_P7, KC_P8, KC_P9, KC_PPLS, - 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_P4, KC_P5, KC_P6, - 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_P1, KC_P2, KC_P3, KC_PENT, - KC_LCTL, KC_LOPTN, KC_LCMMD, KC_SPC, KC_RCMMD, KC_ROPTN, MO(MAC_FN), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT, KC_P0, KC_PDOT ), - [MAC_FN] = LAYOUT_109_ansi( - _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, RGB_TOG, _______, _______, RGB_TOG, _______, _______, _______, _______, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ), - [WIN_BASE] = LAYOUT_109_ansi( - KC_ESC, 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_MUTE, KC_PSCR, KC_CTANA, RGB_MOD, _______, _______, _______, _______, - KC_GRV, 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_INS, KC_HOME, KC_PGUP, KC_NUM, KC_PSLS, KC_PAST, KC_PMNS, - 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_DEL, KC_END, KC_PGDN, KC_P7, KC_P8, KC_P9, KC_PPLS, - 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_P4, KC_P5, KC_P6, - 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_P1, KC_P2, KC_P3, KC_PENT, - KC_LCTL, KC_LWIN, KC_LALT, KC_SPC, KC_RALT, KC_RWIN, MO(WIN_FN), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT, KC_P0, KC_PDOT ), - [WIN_FN] = LAYOUT_109_ansi( - _______, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, RGB_TOG, _______, _______, RGB_TOG, _______, _______, _______, _______, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ), -}; - -#if defined(ENCODER_MAP_ENABLE) -const uint16_t PROGMEM encoder_map[][1][2] = { - [MAC_BASE] = {ENCODER_CCW_CW(KC_VOLD, KC_VOLU) }, - [MAC_FN] = {ENCODER_CCW_CW(RGB_VAD, RGB_VAI) }, - [WIN_BASE] = {ENCODER_CCW_CW(KC_VOLD, KC_VOLU) }, - [WIN_FN] = {ENCODER_CCW_CW(RGB_VAD, RGB_VAI) } -}; -#endif // ENCODER_MAP_ENABLE diff --git a/keyboards/keychron/q6_pro/ansi_encoder/keymaps/via/rules.mk b/keyboards/keychron/q6_pro/ansi_encoder/keymaps/via/rules.mk deleted file mode 100644 index f1adcab005..0000000000 --- a/keyboards/keychron/q6_pro/ansi_encoder/keymaps/via/rules.mk +++ /dev/null @@ -1,2 +0,0 @@ -VIA_ENABLE = yes -ENCODER_MAP_ENABLE = yes diff --git a/keyboards/keychron/q6_pro/ansi_encoder/rules.mk b/keyboards/keychron/q6_pro/ansi_encoder/rules.mk deleted file mode 100644 index 6e7633bfe0..0000000000 --- a/keyboards/keychron/q6_pro/ansi_encoder/rules.mk +++ /dev/null @@ -1 +0,0 @@ -# This file intentionally left blank diff --git a/keyboards/keychron/q6_pro/config.h b/keyboards/keychron/q6_pro/config.h deleted file mode 100644 index c72b658132..0000000000 --- a/keyboards/keychron/q6_pro/config.h +++ /dev/null @@ -1,93 +0,0 @@ -/* 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 . - */ - -#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 BAT_LOW_LED_PIN A4 -# define BAT_LOW_LED_PIN_ON_STATE 1 - -# define HOST_DEVICES_COUNT 3 - -# if defined(RGB_MATRIX_ENABLE) - -# define LED_DRIVER_SHUTDOWN_PIN C14 - -# define HOST_LED_MATRIX_LIST \ - { 21, 22, 23 } - -# define BAT_LEVEL_LED_LIST \ - { 21, 22, 23, 24, 25, 26, 27, 28, 29, 30 } - -/* 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 - -/* Encoder Configuration */ -#ifdef ENCODER_ENABLE -# define ENCODER_DEFAULT_POS 0x3 -#endif - -/* Emulated EEPROM configuration */ -#define WEAR_LEVELING_LOGICAL_SIZE 2048 -#define WEAR_LEVELING_BACKING_SIZE (WEAR_LEVELING_LOGICAL_SIZE * 2) -#define DYNAMIC_KEYMAP_EEPROM_MAX_ADDR 2047 - -/* HC595 Driver configuration */ -#define HC595_END_INDEX 20 - -/* Factory test keys */ -#define FN_KEY1 MO(1) -#define FN_KEY2 MO(3) diff --git a/keyboards/keychron/q6_pro/halconf.h b/keyboards/keychron/q6_pro/halconf.h deleted file mode 100644 index 8d8e138e4e..0000000000 --- a/keyboards/keychron/q6_pro/halconf.h +++ /dev/null @@ -1,29 +0,0 @@ -/* Copyright 2023 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 _CHIBIOS_HAL_CONF_VER_8_0_ - -#define HAL_USE_I2C TRUE - -#ifdef KC_BLUETOOTH_ENABLE -# define PAL_USE_CALLBACKS TRUE -# define HAL_USE_SERIAL TRUE -# define HAL_USE_RTC TRUE -#endif - -#include_next diff --git a/keyboards/keychron/q6_pro/info.json b/keyboards/keychron/q6_pro/info.json deleted file mode 100644 index d950ae71bc..0000000000 --- a/keyboards/keychron/q6_pro/info.json +++ /dev/null @@ -1,61 +0,0 @@ -{ - "manufacturer": "Keychron", - "keyboard_name": "Keychron Q6 Pro", - "url": "https://github.com/Keychron", - "maintainer": "lalalademaxiya1", - "processor": "STM32L432", - "bootloader": "stm32-dfu", - "usb": { - "vid": "0x3434" - }, - "features": { - "bootmagic": true, - "command": false, - "console": false, - "extrakey": true, - "mousekey": true, - "nkro": true, - "rgb_matrix": true, - "dip_switch": true, - "encoder": true, - "raw": true - }, - "rgb_matrix": { - "driver": "snled27351", - "animations": { - "breathing": true, - "band_spiral_val": true, - "cycle_all": true, - "cycle_left_right": true, - "cycle_up_down": true, - "rainbow_moving_chevron": true, - "cycle_out_in": true, - "cycle_out_in_dual": true, - "cycle_pinwheel": true, - "cycle_spiral": true, - "dual_beacon": true, - "rainbow_beacon": true, - "jellybean_raindrops": true, - "pixel_rain": true, - "typing_heatmap": true, - "digital_rain": true, - "solid_reactive_simple": true, - "solid_reactive_multiwide": true, - "solid_reactive_multinexus": true, - "splash": true, - "solid_splash": true - } - }, - "matrix_pins": { - "cols": [null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null], - "rows": ["B5", "B4", "B3", "A15", "A14", "A13"], - "custom": true, - "custom_lite": true - }, - "diode_direction": "ROW2COL", - "encoder": { - "rotary": [ - {"pin_a": "A0", "pin_b": "A10"} - ] - } -} diff --git a/keyboards/keychron/q6_pro/iso_encoder/config.h b/keyboards/keychron/q6_pro/iso_encoder/config.h deleted file mode 100644 index 0c3996ff94..0000000000 --- a/keyboards/keychron/q6_pro/iso_encoder/config.h +++ /dev/null @@ -1,49 +0,0 @@ -/* 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 . - */ - -#pragma once - -#ifdef RGB_MATRIX_ENABLE -/* RGB Matrix Driver Configuration */ -# define DRIVER_COUNT 2 -# define DRIVER_ADDR_1 0b1110111 -# define DRIVER_ADDR_2 0b1110100 -# define DRIVER_1_LED_TOTAL 59 -# define DRIVER_2_LED_TOTAL 50 -# define RGB_MATRIX_LED_COUNT (DRIVER_1_LED_TOTAL + DRIVER_2_LED_TOTAL) - -/* Set to infinit, which is use in USB mode by default */ -# define RGB_MATRIX_TIMEOUT RGB_MATRIX_TIMEOUT_INFINITE - -/* Allow to shutdown driver to save power */ -# define RGB_MATRIX_DRIVER_SHUTDOWN_ENABLE - -/* Turn off backllit if brightness value is low */ -# define RGB_MATRIX_BRIGHTNESS_TURN_OFF_VAL 48 - -/* Indication led */ -# define NUM_LOCK_INDEX 37 -# define CAPS_LOCK_INDEX 61 -# define LOW_BAT_IND_INDEX 99 - -/* Enable Reactive Animation */ -# define RGB_MATRIX_FRAMEBUFFER_EFFECTS -# define RGB_MATRIX_KEYPRESSES - -/* Set LED driver current */ -# define SNLED27351_CURRENT_TUNE \ - { 0x28, 0x28, 0x28, 0x28, 0x28, 0x28, 0x28, 0x28, 0x28, 0x28, 0x28, 0x28 } -#endif diff --git a/keyboards/keychron/q6_pro/iso_encoder/info.json b/keyboards/keychron/q6_pro/iso_encoder/info.json deleted file mode 100644 index c0feb6f218..0000000000 --- a/keyboards/keychron/q6_pro/iso_encoder/info.json +++ /dev/null @@ -1,245 +0,0 @@ -{ - "usb": { - "pid": "0x0661", - "device_version": "1.0.0" - }, - "layouts": { - "LAYOUT_110_iso": { - "layout": [ - {"matrix":[0,0], "x":0, "y":0}, - {"matrix":[0,1], "x":1.25, "y":0}, - {"matrix":[0,2], "x":2.25, "y":0}, - {"matrix":[0,3], "x":3.25, "y":0}, - {"matrix":[0,4], "x":4.25, "y":0}, - {"matrix":[0,5], "x":5.5, "y":0}, - {"matrix":[0,6], "x":6.5, "y":0}, - {"matrix":[0,7], "x":7.5, "y":0}, - {"matrix":[0,8], "x":8.5, "y":0}, - {"matrix":[0,9], "x":9.75, "y":0}, - {"matrix":[0,10], "x":10.75, "y":0}, - {"matrix":[0,11], "x":11.75, "y":0}, - {"matrix":[0,12], "x":12.75, "y":0}, - {"matrix":[0,13], "x":14, "y":0}, - {"matrix":[0,14], "x":15.25, "y":0}, - {"matrix":[0,15], "x":16.25, "y":0}, - {"matrix":[0,16], "x":17.25, "y":0}, - {"matrix":[0,17], "x":18.5, "y":0}, - {"matrix":[0,18], "x":19.5, "y":0}, - {"matrix":[0,19], "x":20.5, "y":0}, - {"matrix":[0,20], "x":21.5, "y":0}, - - {"matrix":[1,0], "x":0, "y":1.25}, - {"matrix":[1,1], "x":1, "y":1.25}, - {"matrix":[1,2], "x":2, "y":1.25}, - {"matrix":[1,3], "x":3, "y":1.25}, - {"matrix":[1,4], "x":4, "y":1.25}, - {"matrix":[1,5], "x":5, "y":1.25}, - {"matrix":[1,6], "x":6, "y":1.25}, - {"matrix":[1,7], "x":7, "y":1.25}, - {"matrix":[1,8], "x":8, "y":1.25}, - {"matrix":[1,9], "x":9, "y":1.25}, - {"matrix":[1,10], "x":10, "y":1.25}, - {"matrix":[1,11], "x":11, "y":1.25}, - {"matrix":[1,12], "x":12, "y":1.25}, - {"matrix":[1,13], "x":13, "y":1.25, "w":2}, - {"matrix":[1,14], "x":15.25, "y":1.25}, - {"matrix":[1,15], "x":16.25, "y":1.25}, - {"matrix":[1,16], "x":17.25, "y":1.25}, - {"matrix":[1,17], "x":18.5, "y":1.25}, - {"matrix":[1,18], "x":19.5, "y":1.25}, - {"matrix":[1,19], "x":20.5, "y":1.25}, - {"matrix":[1,20], "x":21.5, "y":1.25}, - - {"matrix":[2,0], "x":0, "y":2.25, "w":1.5}, - {"matrix":[2,1], "x":1.5, "y":2.25}, - {"matrix":[2,2], "x":2.5, "y":2.25}, - {"matrix":[2,3], "x":3.5, "y":2.25}, - {"matrix":[2,4], "x":4.5, "y":2.25}, - {"matrix":[2,5], "x":5.5, "y":2.25}, - {"matrix":[2,6], "x":6.5, "y":2.25}, - {"matrix":[2,7], "x":7.5, "y":2.25}, - {"matrix":[2,8], "x":8.5, "y":2.25}, - {"matrix":[2,9], "x":9.5, "y":2.25}, - {"matrix":[2,10], "x":10.5, "y":2.25}, - {"matrix":[2,11], "x":11.5, "y":2.25}, - {"matrix":[2,12], "x":12.5, "y":2.25}, - {"matrix":[2,14], "x":15.25, "y":2.25}, - {"matrix":[2,15], "x":16.25, "y":2.25}, - {"matrix":[2,16], "x":17.25, "y":2.25}, - {"matrix":[2,17], "x":18.5, "y":2.25}, - {"matrix":[2,18], "x":19.5, "y":2.25}, - {"matrix":[2,19], "x":20.5, "y":2.25}, - {"matrix":[2,20], "x":21.5, "y":2.25, "h":2}, - - {"matrix":[3,0], "x":0, "y":3.25, "w":1.75}, - {"matrix":[3,1], "x":1.75, "y":3.25}, - {"matrix":[3,2], "x":2.75, "y":3.25}, - {"matrix":[3,3], "x":3.75, "y":3.25}, - {"matrix":[3,4], "x":4.75, "y":3.25}, - {"matrix":[3,5], "x":5.75, "y":3.25}, - {"matrix":[3,6], "x":6.75, "y":3.25}, - {"matrix":[3,7], "x":7.75, "y":3.25}, - {"matrix":[3,8], "x":8.75, "y":3.25}, - {"matrix":[3,9], "x":9.75, "y":3.25}, - {"matrix":[3,10], "x":10.75, "y":3.25}, - {"matrix":[3,11], "x":11.75, "y":3.25}, - {"matrix":[3,13], "x":12.75, "y":3.25}, - {"matrix":[2,13], "x":13.75, "y":2.25, "w":1.25, "h":2}, - {"matrix":[3,17], "x":18.5, "y":3.25}, - {"matrix":[3,18], "x":19.5, "y":3.25}, - {"matrix":[3,19], "x":20.5, "y":3.25}, - - {"matrix":[4,0], "x":0, "y":4.25, "w":1.25}, - {"matrix":[4,1], "x":1.25, "y":4.25}, - {"matrix":[4,2], "x":2.25, "y":4.25}, - {"matrix":[4,3], "x":3.25, "y":4.25}, - {"matrix":[4,4], "x":4.25, "y":4.25}, - {"matrix":[4,5], "x":5.25, "y":4.25}, - {"matrix":[4,6], "x":6.25, "y":4.25}, - {"matrix":[4,7], "x":7.25, "y":4.25}, - {"matrix":[4,8], "x":8.25, "y":4.25}, - {"matrix":[4,9], "x":9.25, "y":4.25}, - {"matrix":[4,10], "x":10.25, "y":4.25}, - {"matrix":[4,11], "x":11.25, "y":4.25}, - {"matrix":[4,13], "x":12.25, "y":4.25, "w":2.75}, - {"matrix":[4,15], "x":16.25, "y":4.25}, - {"matrix":[4,17], "x":18.5, "y":4.25}, - {"matrix":[4,18], "x":19.5, "y":4.25}, - {"matrix":[4,19], "x":20.5, "y":4.25}, - {"matrix":[4,20], "x":21.5, "y":4.25, "h":2}, - - {"matrix":[5,0], "x":0, "y":5.25, "w":1.25}, - {"matrix":[5,1], "x":1.25, "y":5.25, "w":1.25}, - {"matrix":[5,2], "x":2.5, "y":5.25, "w":1.25}, - {"matrix":[5,6], "x":3.75, "y":5.25, "w":6.25}, - {"matrix":[5,10], "x":10, "y":5.25, "w":1.25}, - {"matrix":[5,11], "x":11.25, "y":5.25, "w":1.25}, - {"matrix":[5,12], "x":12.5, "y":5.25, "w":1.25}, - {"matrix":[5,13], "x":13.75, "y":5.25, "w":1.25}, - {"matrix":[5,14], "x":15.25, "y":5.25}, - {"matrix":[5,15], "x":16.25, "y":5.25}, - {"matrix":[5,16], "x":17.25, "y":5.25}, - {"matrix":[5,18], "x":18.5, "y":5.25, "w":2}, - {"matrix":[5,19], "x":20.5, "y":5.25} - ] - } - }, - "rgb_matrix": { - "layout": [ - {"matrix":[0, 0], "flags":1, "x":0, "y":0}, - {"matrix":[0, 1], "flags":1, "x":13, "y":0}, - {"matrix":[0, 2], "flags":1, "x":24, "y":0}, - {"matrix":[0, 3], "flags":1, "x":34, "y":0}, - {"matrix":[0, 4], "flags":1, "x":45, "y":0}, - {"matrix":[0, 5], "flags":1, "x":57, "y":0}, - {"matrix":[0, 6], "flags":1, "x":68, "y":0}, - {"matrix":[0, 7], "flags":1, "x":78, "y":0}, - {"matrix":[0, 8], "flags":1, "x":89, "y":0}, - {"matrix":[0, 9], "flags":1, "x":102, "y":0}, - {"matrix":[0, 10], "flags":1, "x":112, "y":0}, - {"matrix":[0, 11], "flags":1, "x":123, "y":0}, - {"matrix":[0, 12], "flags":1, "x":133, "y":0}, - {"matrix":[0, 14], "flags":1, "x":159, "y":0}, - {"matrix":[0, 15], "flags":1, "x":169, "y":0}, - {"matrix":[0, 16], "flags":1, "x":180, "y":0}, - {"matrix":[0, 17], "flags":4, "x":193, "y":0}, - {"matrix":[0, 18], "flags":4, "x":203, "y":0}, - {"matrix":[0, 19], "flags":4, "x":214, "y":0}, - {"matrix":[0, 20], "flags":4, "x":224, "y":0}, - - {"matrix":[1, 0], "flags":1, "x":0, "y":15}, - {"matrix":[1, 1], "flags":8, "x":10, "y":15}, - {"matrix":[1, 2], "flags":8, "x":21, "y":15}, - {"matrix":[1, 3], "flags":8, "x":32, "y":15}, - {"matrix":[1, 4], "flags":4, "x":42, "y":15}, - {"matrix":[1, 5], "flags":4, "x":52, "y":15}, - {"matrix":[1, 6], "flags":4, "x":63, "y":15}, - {"matrix":[1, 7], "flags":4, "x":73, "y":15}, - {"matrix":[1, 8], "flags":4, "x":83, "y":15}, - {"matrix":[1, 9], "flags":4, "x":94, "y":15}, - {"matrix":[1, 10], "flags":4, "x":104, "y":15}, - {"matrix":[1, 11], "flags":4, "x":115, "y":15}, - {"matrix":[1, 12], "flags":4, "x":125, "y":15}, - {"matrix":[1, 13], "flags":1, "x":141, "y":15}, - {"matrix":[1, 14], "flags":1, "x":159, "y":15}, - {"matrix":[1, 15], "flags":1, "x":169, "y":15}, - {"matrix":[1, 16], "flags":1, "x":180, "y":15}, - {"matrix":[1, 17], "flags":8, "x":193, "y":15}, - {"matrix":[1, 18], "flags":4, "x":203, "y":15}, - {"matrix":[1, 19], "flags":4, "x":214, "y":15}, - {"matrix":[1, 20], "flags":4, "x":224, "y":15}, - - {"matrix":[2, 0], "flags":1, "x":3, "y":27}, - {"matrix":[2, 1], "flags":4, "x":16, "y":27}, - {"matrix":[2, 2], "flags":4, "x":26, "y":27}, - {"matrix":[2, 3], "flags":4, "x":36, "y":27}, - {"matrix":[2, 4], "flags":1, "x":47, "y":27}, - {"matrix":[2, 5], "flags":4, "x":57, "y":27}, - {"matrix":[2, 6], "flags":4, "x":68, "y":27}, - {"matrix":[2, 7], "flags":4, "x":78, "y":27}, - {"matrix":[2, 8], "flags":4, "x":89, "y":27}, - {"matrix":[2, 9], "flags":4, "x":99, "y":27}, - {"matrix":[2, 10], "flags":4, "x":109, "y":27}, - {"matrix":[2, 11], "flags":4, "x":120, "y":27}, - {"matrix":[2, 12], "flags":4, "x":130, "y":27}, - {"matrix":[2, 14], "flags":1, "x":159, "y":27}, - {"matrix":[2, 15], "flags":1, "x":169, "y":27}, - {"matrix":[2, 16], "flags":1, "x":180, "y":27}, - {"matrix":[2, 17], "flags":4, "x":193, "y":27}, - {"matrix":[2, 18], "flags":4, "x":203, "y":27}, - {"matrix":[2, 19], "flags":4, "x":214, "y":27}, - {"matrix":[2, 20], "flags":4, "x":224, "y":27}, - - {"matrix":[3, 0], "flags":8, "x":4, "y":40}, - {"matrix":[3, 1], "flags":4, "x":18, "y":40}, - {"matrix":[3, 2], "flags":4, "x":29, "y":40}, - {"matrix":[3, 3], "flags":4, "x":39, "y":40}, - {"matrix":[3, 4], "flags":4, "x":50, "y":40}, - {"matrix":[3, 5], "flags":4, "x":60, "y":40}, - {"matrix":[3, 6], "flags":4, "x":70, "y":40}, - {"matrix":[3, 7], "flags":4, "x":81, "y":40}, - {"matrix":[3, 8], "flags":4, "x":91, "y":40}, - {"matrix":[3, 9], "flags":4, "x":102, "y":40}, - {"matrix":[3, 10], "flags":4, "x":112, "y":40}, - {"matrix":[3, 11], "flags":4, "x":122, "y":40}, - {"matrix":[3, 13], "flags":1, "x":133, "y":40}, - {"matrix":[2, 13], "flags":1, "x":147, "y":35}, - {"matrix":[3, 17], "flags":4, "x":193, "y":40}, - {"matrix":[3, 18], "flags":4, "x":203, "y":40}, - {"matrix":[3, 19], "flags":4, "x":214, "y":40}, - - {"matrix":[4, 0], "flags":1, "x":1, "y":52}, - {"matrix":[4, 1], "flags":1, "x":14, "y":52}, - {"matrix":[4, 2], "flags":4, "x":23, "y":52}, - {"matrix":[4, 3], "flags":4, "x":34, "y":52}, - {"matrix":[4, 4], "flags":4, "x":44, "y":52}, - {"matrix":[4, 5], "flags":4, "x":55, "y":52}, - {"matrix":[4, 6], "flags":4, "x":65, "y":52}, - {"matrix":[4, 7], "flags":4, "x":76, "y":52}, - {"matrix":[4, 8], "flags":4, "x":86, "y":52}, - {"matrix":[4, 9], "flags":4, "x":96, "y":52}, - {"matrix":[4, 10], "flags":4, "x":107, "y":52}, - {"matrix":[4, 11], "flags":4, "x":117, "y":52}, - {"matrix":[4, 13], "flags":1, "x":137, "y":52}, - {"matrix":[4, 15], "flags":1, "x":169, "y":52}, - {"matrix":[4, 17], "flags":4, "x":193, "y":52}, - {"matrix":[4, 18], "flags":4, "x":203, "y":52}, - {"matrix":[4, 19], "flags":4, "x":214, "y":52}, - {"matrix":[4, 20], "flags":4, "x":224, "y":52}, - - {"matrix":[5, 0], "flags":1, "x":1, "y":64}, - {"matrix":[5, 1], "flags":1, "x":14, "y":64}, - {"matrix":[5, 2], "flags":1, "x":27, "y":64}, - {"matrix":[5, 6], "flags":4, "x":66, "y":64}, - {"matrix":[5, 10], "flags":1, "x":105, "y":64}, - {"matrix":[5, 11], "flags":1, "x":118, "y":64}, - {"matrix":[5, 12], "flags":1, "x":131, "y":64}, - {"matrix":[5, 13], "flags":1, "x":145, "y":64}, - {"matrix":[5, 14], "flags":1, "x":159, "y":64}, - {"matrix":[5, 15], "flags":1, "x":169, "y":64}, - {"matrix":[5, 16], "flags":1, "x":180, "y":64}, - {"matrix":[5, 18], "flags":4, "x":198, "y":64}, - {"matrix":[5, 19], "flags":4, "x":214, "y":64} - ] - } -} diff --git a/keyboards/keychron/q6_pro/iso_encoder/iso_encoder.c b/keyboards/keychron/q6_pro/iso_encoder/iso_encoder.c deleted file mode 100644 index 77bc35aadd..0000000000 --- a/keyboards/keychron/q6_pro/iso_encoder/iso_encoder.c +++ /dev/null @@ -1,143 +0,0 @@ -/* 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 . - */ - -#include "quantum.h" - -// clang-format off -#ifdef RGB_MATRIX_ENABLE -const snled27351_led_t g_snled27351_leds[RGB_MATRIX_LED_COUNT] = { -/* Refer to snled27351manual for these locations - * driver - * | R location - * | | G location - * | | | B location - * | | | | */ - {0, I_1, G_1, H_1}, - {0, I_2, G_2, H_2}, - {0, I_3, G_3, H_3}, - {0, I_4, G_4, H_4}, - {0, I_5, G_5, H_5}, - {0, I_6, G_6, H_6}, - {0, I_7, G_7, H_7}, - {0, I_8, G_8, H_8}, - {0, I_9, G_9, H_9}, - {0, I_10, G_10, H_10}, - {0, I_11, G_11, H_11}, - {0, I_12, G_12, H_12}, - {0, I_13, G_13, H_13}, - {0, I_15, G_15, H_15}, - {0, I_16, G_16, H_16}, - {1, C_4, A_4, B_4}, - {0, L_5, J_5, K_5}, - {0, L_6, J_6, K_6}, - {0, L_7, J_7, K_7}, - {0, L_8, J_8, K_8}, - - {0, C_1, A_1, B_1}, - {0, C_2, A_2, B_2}, - {0, C_3, A_3, B_3}, - {0, C_4, A_4, B_4}, - {0, C_5, A_5, B_5}, - {0, C_6, A_6, B_6}, - {0, C_7, A_7, B_7}, - {0, C_8, A_8, B_8}, - {0, C_9, A_9, B_9}, - {0, C_10, A_10, B_10}, - {0, C_11, A_11, B_11}, - {0, C_12, A_12, B_12}, - {0, C_13, A_13, B_13}, - {0, C_14, A_14, B_14}, - {0, C_15, A_15, B_15}, - {0, C_16, A_16, B_16}, - {1, C_2, A_2, B_2}, - {0, L_9, J_9, K_9}, - {0, L_10, J_10, K_10}, - {0, L_11, J_11, K_11}, - {0, L_12, J_12, K_12}, - - {0, F_1, D_1, E_1}, - {0, F_2, D_2, E_2}, - {0, F_3, D_3, E_3}, - {0, F_4, D_4, E_4}, - {0, F_5, D_5, E_5}, - {0, F_6, D_6, E_6}, - {0, F_7, D_7, E_7}, - {0, F_8, D_8, E_8}, - {0, F_9, D_9, E_9}, - {0, F_10, D_10, E_10}, - {0, F_11, D_11, E_11}, - {0, F_12, D_12, E_12}, - {0, F_13, D_13, E_13}, - {0, F_15, D_15, E_15}, - {0, F_16, D_16, E_16}, - {1, C_1, A_1, B_1}, - {0, L_13, J_13, K_13}, - {0, L_14, J_14, K_14}, - {0, L_15, J_15, K_15}, - {0, L_16, J_16, K_16}, - - {1, C_16, A_16, B_16}, - {1, C_15, A_15, B_15}, - {1, C_14, A_14, B_14}, - {1, C_13, A_13, B_13}, - {1, C_12, A_12, B_12}, - {1, C_11, A_11, B_11}, - {1, C_10, A_10, B_10}, - {1, C_9, A_9, B_9}, - {1, C_8, A_8, B_8}, - {1, C_7, A_7, B_7}, - {1, C_6, A_6, B_6}, - {1, C_5, A_5, B_5}, - {1, C_3, A_3, B_3}, - {0, F_14, D_14, E_14}, - {1, L_9, J_9, K_9}, - {1, L_8, J_8, K_8}, - {1, L_7, J_7, K_7}, - - {1, I_16, G_16, H_16}, - {1, I_15, G_15, H_15}, - {1, I_14, G_14, H_14}, - {1, I_13, G_13, H_13}, - {1, I_12, G_12, H_12}, - {1, I_11, G_11, H_11}, - {1, I_10, G_10, H_10}, - {1, I_9, G_9, H_9}, - {1, I_8, G_8, H_8}, - {1, I_7, G_7, H_7}, - {1, I_6, G_6, H_6}, - {1, I_5, G_5, H_5}, - {1, I_3, G_3, H_3}, - {1, I_1, G_1, H_1}, - {1, L_6, J_6, K_6}, - {1, L_5, J_5, K_5}, - {1, L_4, J_4, K_4}, - {1, L_3, J_3, K_3}, - - {1, F_16, D_16, E_16}, - {1, F_15, D_15, E_15}, - {1, F_14, D_14, E_14}, - {1, F_10, D_10, E_10}, - {1, F_6, D_6, E_6}, - {1, F_5, D_5, E_5}, - {1, F_4, D_4, E_4}, - {1, F_3, D_3, E_3}, - {1, F_2, D_2, E_2}, - {1, F_1, D_1, E_1}, - {1, I_2, G_2, H_2}, - {1, L_2, J_2, K_2}, - {1, L_1, J_1, K_1} -}; -#endif diff --git a/keyboards/keychron/q6_pro/iso_encoder/keymaps/default/keymap.c b/keyboards/keychron/q6_pro/iso_encoder/keymaps/default/keymap.c deleted file mode 100644 index dbd8f810d1..0000000000 --- a/keyboards/keychron/q6_pro/iso_encoder/keymaps/default/keymap.c +++ /dev/null @@ -1,65 +0,0 @@ -/* 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 . - */ - -#include QMK_KEYBOARD_H - -// clang-format off -enum layers{ - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN, -}; - -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_110_iso( - KC_ESC, KC_BRID, KC_BRIU, KC_MCTL, KC_LPAD, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_MUTE, KC_SNAP, KC_SIRI, RGB_MOD, KC_F13, KC_F14, KC_F15, KC_F16, - KC_GRV, 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_INS, KC_HOME, KC_PGUP, KC_NUM, KC_PSLS, KC_PAST, KC_PMNS, - 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_DEL, KC_END, KC_PGDN, KC_P7, KC_P8, KC_P9, KC_PPLS, - 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_NUHS, KC_ENT, KC_P4, KC_P5, KC_P6, - KC_LSFT, KC_NUBS, 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_P1, KC_P2, KC_P3, KC_PENT, - KC_LCTL, KC_LOPTN, KC_LCMMD, KC_SPC, KC_RCMMD, KC_ROPTN, MO(MAC_FN), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT, KC_P0, KC_PDOT ), - [MAC_FN] = LAYOUT_110_iso( - _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, RGB_TOG, _______, _______, RGB_TOG, _______, _______, _______, _______, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ), - [WIN_BASE] = LAYOUT_110_iso( - KC_ESC, 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_MUTE, KC_PSCR, KC_CTANA, RGB_MOD, _______, _______, _______, _______, - KC_GRV, 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_INS, KC_HOME, KC_PGUP, KC_NUM, KC_PSLS, KC_PAST, KC_PMNS, - 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_DEL, KC_END, KC_PGDN, KC_P7, KC_P8, KC_P9, KC_PPLS, - 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_NUHS, KC_ENT, KC_P4, KC_P5, KC_P6, - KC_LSFT, KC_NUBS, 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_P1, KC_P2, KC_P3, KC_PENT, - KC_LCTL, KC_LWIN, KC_LALT, KC_SPC, KC_RALT, KC_RWIN, MO(WIN_FN), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT, KC_P0, KC_PDOT ), - [WIN_FN] = LAYOUT_110_iso( - _______, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, RGB_TOG, _______, _______, RGB_TOG, _______, _______, _______, _______, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ), -}; - -#if defined(ENCODER_MAP_ENABLE) -const uint16_t PROGMEM encoder_map[][1][2] = { - [MAC_BASE] = {ENCODER_CCW_CW(KC_VOLD, KC_VOLU) }, - [MAC_FN] = {ENCODER_CCW_CW(RGB_VAD, RGB_VAI) }, - [WIN_BASE] = {ENCODER_CCW_CW(KC_VOLD, KC_VOLU) }, - [WIN_FN] = {ENCODER_CCW_CW(RGB_VAD, RGB_VAI) } -}; -#endif // ENCODER_MAP_ENABLE diff --git a/keyboards/keychron/q6_pro/iso_encoder/keymaps/default/rules.mk b/keyboards/keychron/q6_pro/iso_encoder/keymaps/default/rules.mk deleted file mode 100644 index ee32568148..0000000000 --- a/keyboards/keychron/q6_pro/iso_encoder/keymaps/default/rules.mk +++ /dev/null @@ -1 +0,0 @@ -ENCODER_MAP_ENABLE = yes diff --git a/keyboards/keychron/q6_pro/iso_encoder/keymaps/via/keymap.c b/keyboards/keychron/q6_pro/iso_encoder/keymaps/via/keymap.c deleted file mode 100644 index dbd8f810d1..0000000000 --- a/keyboards/keychron/q6_pro/iso_encoder/keymaps/via/keymap.c +++ /dev/null @@ -1,65 +0,0 @@ -/* 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 . - */ - -#include QMK_KEYBOARD_H - -// clang-format off -enum layers{ - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN, -}; - -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_110_iso( - KC_ESC, KC_BRID, KC_BRIU, KC_MCTL, KC_LPAD, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_MUTE, KC_SNAP, KC_SIRI, RGB_MOD, KC_F13, KC_F14, KC_F15, KC_F16, - KC_GRV, 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_INS, KC_HOME, KC_PGUP, KC_NUM, KC_PSLS, KC_PAST, KC_PMNS, - 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_DEL, KC_END, KC_PGDN, KC_P7, KC_P8, KC_P9, KC_PPLS, - 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_NUHS, KC_ENT, KC_P4, KC_P5, KC_P6, - KC_LSFT, KC_NUBS, 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_P1, KC_P2, KC_P3, KC_PENT, - KC_LCTL, KC_LOPTN, KC_LCMMD, KC_SPC, KC_RCMMD, KC_ROPTN, MO(MAC_FN), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT, KC_P0, KC_PDOT ), - [MAC_FN] = LAYOUT_110_iso( - _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, RGB_TOG, _______, _______, RGB_TOG, _______, _______, _______, _______, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ), - [WIN_BASE] = LAYOUT_110_iso( - KC_ESC, 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_MUTE, KC_PSCR, KC_CTANA, RGB_MOD, _______, _______, _______, _______, - KC_GRV, 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_INS, KC_HOME, KC_PGUP, KC_NUM, KC_PSLS, KC_PAST, KC_PMNS, - 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_DEL, KC_END, KC_PGDN, KC_P7, KC_P8, KC_P9, KC_PPLS, - 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_NUHS, KC_ENT, KC_P4, KC_P5, KC_P6, - KC_LSFT, KC_NUBS, 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_P1, KC_P2, KC_P3, KC_PENT, - KC_LCTL, KC_LWIN, KC_LALT, KC_SPC, KC_RALT, KC_RWIN, MO(WIN_FN), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT, KC_P0, KC_PDOT ), - [WIN_FN] = LAYOUT_110_iso( - _______, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, RGB_TOG, _______, _______, RGB_TOG, _______, _______, _______, _______, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ), -}; - -#if defined(ENCODER_MAP_ENABLE) -const uint16_t PROGMEM encoder_map[][1][2] = { - [MAC_BASE] = {ENCODER_CCW_CW(KC_VOLD, KC_VOLU) }, - [MAC_FN] = {ENCODER_CCW_CW(RGB_VAD, RGB_VAI) }, - [WIN_BASE] = {ENCODER_CCW_CW(KC_VOLD, KC_VOLU) }, - [WIN_FN] = {ENCODER_CCW_CW(RGB_VAD, RGB_VAI) } -}; -#endif // ENCODER_MAP_ENABLE diff --git a/keyboards/keychron/q6_pro/iso_encoder/keymaps/via/rules.mk b/keyboards/keychron/q6_pro/iso_encoder/keymaps/via/rules.mk deleted file mode 100644 index f1adcab005..0000000000 --- a/keyboards/keychron/q6_pro/iso_encoder/keymaps/via/rules.mk +++ /dev/null @@ -1,2 +0,0 @@ -VIA_ENABLE = yes -ENCODER_MAP_ENABLE = yes diff --git a/keyboards/keychron/q6_pro/iso_encoder/rules.mk b/keyboards/keychron/q6_pro/iso_encoder/rules.mk deleted file mode 100644 index 6e7633bfe0..0000000000 --- a/keyboards/keychron/q6_pro/iso_encoder/rules.mk +++ /dev/null @@ -1 +0,0 @@ -# This file intentionally left blank diff --git a/keyboards/keychron/q6_pro/mcuconf.h b/keyboards/keychron/q6_pro/mcuconf.h deleted file mode 100644 index 882d6bd568..0000000000 --- a/keyboards/keychron/q6_pro/mcuconf.h +++ /dev/null @@ -1,36 +0,0 @@ -/* Copyright 2023 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 - -/* Set HCLK to 48 MHz as tradeoff of USB lowest clockand and - * lower power comsumption for bluetooth. Will use dynamic - * clock when STM32L4 is supported in ChibiOS */ -#undef STM32_PLLM_VALUE -#define STM32_PLLM_VALUE 2 - -#undef STM32_PLLN_VALUE -#define STM32_PLLN_VALUE 12 - -#undef STM32_I2C_USE_I2C1 -#define STM32_I2C_USE_I2C1 TRUE - -#ifdef KC_BLUETOOTH_ENABLE -# undef STM32_SERIAL_USE_USART2 -# define STM32_SERIAL_USE_USART2 TRUE -#endif diff --git a/keyboards/keychron/q6_pro/q6_pro.c b/keyboards/keychron/q6_pro/q6_pro.c deleted file mode 100644 index bba69f3260..0000000000 --- a/keyboards/keychron/q6_pro/q6_pro.c +++ /dev/null @@ -1,334 +0,0 @@ -/* 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 . - */ - -#include "q6_pro.h" -#ifdef KC_BLUETOOTH_ENABLE -# include "ckbt51.h" -# include "bluetooth.h" -# include "indicator.h" -# include "transport.h" -# include "battery.h" -# include "bat_level_animation.h" -# include "lpm.h" -#endif - -#ifdef ENABLE_FACTORY_TEST -# include "factory_test.h" -#endif - -#define POWER_ON_LED_DURATION 3000 - -typedef struct PACKED { - uint8_t len; - uint8_t keycode[3]; -} key_combination_t; - -static uint32_t factory_timer_buffer = 0; -static uint32_t power_on_indicator_timer_buffer = 0; -static uint32_t siri_timer_buffer = 0; -static uint8_t mac_keycode[4] = {KC_LOPT, KC_ROPT, KC_LCMD, KC_RCMD}; - -key_combination_t key_comb_list[4] = { - {2, {KC_LWIN, KC_TAB}}, // Task (win) - {2, {KC_LWIN, KC_E}}, // Files (win) - {3, {KC_LSFT, KC_LGUI, KC_4}}, // Snapshot (mac) - {2, {KC_LWIN, KC_C}} // Cortana (win) -}; - -#ifdef KC_BLUETOOTH_ENABLE -bool firstDisconnect = true; -bool bt_factory_reset = false; -static virtual_timer_t pairing_key_timer; -extern uint8_t g_pwm_buffer[DRIVER_COUNT][192]; - -static void pairing_key_timer_cb(void *arg) { - bluetooth_pairing_ex(*(uint8_t *)arg, NULL); -} -#endif - -bool dip_switch_update_kb(uint8_t index, bool active) { - if (index == 0) { -#ifdef INVERT_OS_SWITCH_STATE - default_layer_set(1UL << (!active ? 2 : 0)); -#else - default_layer_set(1UL << (active ? 2 : 0)); -#endif - } - dip_switch_update_user(index, active); - - return true; -} - -#ifdef KC_BLUETOOTH_ENABLE -bool process_record_kb_bt(uint16_t keycode, keyrecord_t *record) { -#else -bool process_record_kb(uint16_t keycode, keyrecord_t *record) { -#endif - static uint8_t host_idx = 0; - - switch (keycode) { - case KC_LOPTN: - case KC_ROPTN: - case KC_LCMMD: - case KC_RCMMD: - if (record->event.pressed) { - register_code(mac_keycode[keycode - KC_LOPTN]); - } else { - unregister_code(mac_keycode[keycode - KC_LOPTN]); - } - return false; // Skip all further processing of this key) - case KC_TASK: - if (record->event.pressed) { - ckbt51_factory_reset(); - } - case KC_FILE: - case KC_SNAP: - case KC_CTANA: - if (record->event.pressed) { - for (uint8_t i = 0; i < key_comb_list[keycode - KC_TASK].len; i++) - register_code(key_comb_list[keycode - KC_TASK].keycode[i]); - } else { - for (uint8_t i = 0; i < key_comb_list[keycode - KC_TASK].len; i++) - unregister_code(key_comb_list[keycode - KC_TASK].keycode[i]); - } - return false; // Skip all further processing of this key - case KC_SIRI: - if (record->event.pressed && siri_timer_buffer == 0) { - register_code(KC_LGUI); - register_code(KC_SPACE); - siri_timer_buffer = sync_timer_read32() == 0 ? 1 : sync_timer_read32(); - } - return false; // Skip all further processing of this key -#ifdef KC_BLUETOOTH_ENABLE - case BT_HST1 ... BT_HST3: - if (get_transport() == TRANSPORT_BLUETOOTH) { - if (record->event.pressed) { - host_idx = keycode - BT_HST1 + 1; - chVTSet(&pairing_key_timer, TIME_MS2I(2000), (vtfunc_t)pairing_key_timer_cb, &host_idx); - bluetooth_connect_ex(host_idx, 0); - } else { - host_idx = 0; - chVTReset(&pairing_key_timer); - } - } - break; - case BAT_LVL: - if (get_transport() == TRANSPORT_BLUETOOTH && !usb_power_connected()) { - bat_level_animiation_start(battery_get_percentage()); - } - break; -#endif - default: -#ifdef FACTORY_RESET_CHECK - FACTORY_RESET_CHECK(keycode, record); -#endif - break; - } - return true; -} - -#if defined(KC_BLUETOOTH_ENABLE) && defined(ENCODER_ENABLE) -static void encoder_pad_cb(void *param) { - encoder_inerrupt_read((uint32_t)param & 0XFF); -} -#endif - -void keyboard_post_init_kb(void) { - dip_switch_read(true); - -#ifdef KC_BLUETOOTH_ENABLE - /* Currently we don't use this reset pin */ - // palSetLineMode(CKBT51_RESET_PIN, PAL_MODE_UNCONNECTED); - palSetLineMode(CKBT51_RESET_PIN, PAL_MODE_OUTPUT_PUSHPULL); - palWriteLine(CKBT51_RESET_PIN, PAL_HIGH); - - /* IMPORTANT: DO NOT enable internal pull-up resistor - * as there is an external pull-down resistor. - */ - palSetLineMode(USB_BT_MODE_SELECT_PIN, PAL_MODE_INPUT); - - ckbt51_init(false); - bluetooth_init(); - - power_on_indicator_timer_buffer = sync_timer_read32() | 1; - writePin(BAT_LOW_LED_PIN, BAT_LOW_LED_PIN_ON_STATE); - -# ifdef ENCODER_ENABLE - pin_t encoders_pad_a[NUM_ENCODERS] = ENCODERS_PAD_A; - pin_t encoders_pad_b[NUM_ENCODERS] = ENCODERS_PAD_B; - for (uint32_t i = 0; i < NUM_ENCODERS; i++) { - palEnableLineEvent(encoders_pad_a[i], PAL_EVENT_MODE_BOTH_EDGES); - palEnableLineEvent(encoders_pad_b[i], PAL_EVENT_MODE_BOTH_EDGES); - palSetLineCallback(encoders_pad_a[i], encoder_pad_cb, (void *)i); - palSetLineCallback(encoders_pad_b[i], encoder_pad_cb, (void *)i); - } -# endif -#endif - - keyboard_post_init_user(); -} - -static void ckbt51_param_init(void); - -void matrix_scan_kb(void) { - if (factory_timer_buffer && timer_elapsed32(factory_timer_buffer) > 2000) { - factory_timer_buffer = 0; - if (bt_factory_reset) { - bt_factory_reset = false; - palWriteLine(CKBT51_RESET_PIN, PAL_LOW); - wait_ms(5); - palWriteLine(CKBT51_RESET_PIN, PAL_HIGH); - } - } - - if (power_on_indicator_timer_buffer) { - if (sync_timer_elapsed32(power_on_indicator_timer_buffer) > POWER_ON_LED_DURATION) { - power_on_indicator_timer_buffer = 0; - writePin(BAT_LOW_LED_PIN, !BAT_LOW_LED_PIN_ON_STATE); - } else { - writePin(BAT_LOW_LED_PIN, BAT_LOW_LED_PIN_ON_STATE); - } - } - - if (siri_timer_buffer && sync_timer_elapsed32(siri_timer_buffer) > 500) { - siri_timer_buffer = 0; - unregister_code(KC_LGUI); - unregister_code(KC_SPACE); - } - -#ifdef FACTORY_RESET_TASK - FACTORY_RESET_TASK(); -#endif - matrix_scan_user(); -} - -#ifdef KC_BLUETOOTH_ENABLE -static void ckbt51_param_init(void) { - /* Set bluetooth device name */ - ckbt51_set_local_name(PRODUCT); - wait_ms(10); - /* Set bluetooth parameters */ - module_param_t param = {.event_mode = 0x02, - .connected_idle_timeout = 7200, - .pairing_timeout = 180, - .pairing_mode = 0, - .reconnect_timeout = 5, - .report_rate = 90, - .vendor_id_source = 1, - .verndor_id = 0, // Must be 0x3434 - .product_id = PRODUCT_ID}; - ckbt51_set_param(¶m); - wait_ms(10); -} - -void bluetooth_enter_disconnected_kb(uint8_t host_idx) { - if (bt_factory_reset) { - ckbt51_param_init(); - factory_timer_buffer = timer_read32(); - } - /* CKBT51 bluetooth module boot time is slower, it enters disconnected after boot, - so we place initialization here. */ - if (firstDisconnect && sync_timer_read32() < 1000 && get_transport() == TRANSPORT_BLUETOOTH) { - ckbt51_param_init(); - bluetooth_connect(); - firstDisconnect = false; - } -} - -void ckbt51_default_ack_handler(uint8_t *data, uint8_t len) { - if (data[1] == 0x45) { - module_param_t param = {.event_mode = 0x02, - .connected_idle_timeout = 7200, - .pairing_timeout = 180, - .pairing_mode = 0, - .reconnect_timeout = 5, - .report_rate = 90, - .vendor_id_source = 1, - .verndor_id = 0, // Must be 0x3434 - .product_id = PRODUCT_ID}; - ckbt51_set_param(¶m); - } -} - -void bluetooth_pre_task(void) { - static uint8_t mode = 1; - - if (readPin(USB_BT_MODE_SELECT_PIN) != mode) { - if (readPin(USB_BT_MODE_SELECT_PIN) != mode) { - mode = readPin(USB_BT_MODE_SELECT_PIN); - set_transport(mode == 0 ? TRANSPORT_BLUETOOTH : TRANSPORT_USB); - } - } -} -#endif - -void battery_calculte_voltage(uint16_t value) { - uint16_t voltage = ((uint32_t)value) * 2246 / 1000; - -#ifdef LED_MATRIX_ENABLE - if (led_matrix_is_enabled()) { - uint32_t totalBuf = 0; - - for (uint8_t i = 0; i < DRIVER_COUNT; i++) - for (uint8_t j = 0; j < 192; j++) - totalBuf += g_pwm_buffer[i][j]; - /* We assumpt it is linear relationship*/ - voltage += (30 * totalBuf / LED_MATRIX_LED_COUNT / 255); - } -#endif -#ifdef RGB_MATRIX_ENABLE - if (rgb_matrix_is_enabled()) { - uint32_t totalBuf = 0; - - for (uint8_t i = 0; i < DRIVER_COUNT; i++) - for (uint8_t j = 0; j < 192; j++) - totalBuf += g_pwm_buffer[i][j]; - /* We assumpt it is linear relationship*/ - uint32_t compensation = 60 * totalBuf / RGB_MATRIX_LED_COUNT / 255 / 3; - voltage += compensation; - } -#endif - battery_set_voltage(voltage); -} - -bool via_command_kb(uint8_t *data, uint8_t length) { - switch (data[0]) { -#ifdef KC_BLUETOOTH_ENABLE - case 0xAA: - ckbt51_dfu_rx(data, length); - break; -#endif -#ifdef ENABLE_FACTORY_TEST - case 0xAB: - factory_test_rx(data, length); - break; -#endif - default: - return false; - } - - return true; -} - -#if !defined(VIA_ENABLE) -void raw_hid_receive(uint8_t *data, uint8_t length) { - switch (data[0]) { - case RAW_HID_CMD: - via_command_kb(data, length); - break; - } -} -#endif diff --git a/keyboards/keychron/q6_pro/q6_pro.h b/keyboards/keychron/q6_pro/q6_pro.h deleted file mode 100644 index 9cc6693d4d..0000000000 --- a/keyboards/keychron/q6_pro/q6_pro.h +++ /dev/null @@ -1,55 +0,0 @@ -/* 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 . - */ - -#pragma once - -#include "quantum.h" -#ifdef VIA_ENABLE -# include "via.h" -#endif - -#define ___ KC_NO - -#ifdef VIA_ENABLE -# define USER_START QK_KB_0 -#else -# define USER_START SAFE_RANGE -#endif - -// clang-format off -enum { - KC_LOPTN = USER_START, - KC_ROPTN, - KC_LCMMD, - KC_RCMMD, - KC_TASK, - KC_FILE, - KC_SNAP, - KC_CTANA, - KC_SIRI, -#ifdef KC_BLUETOOTH_ENABLE - BT_HST1, - BT_HST2, - BT_HST3, - BAT_LVL, -#else - BT_HST1 = KC_TRNS, - BT_HST2 = KC_TRNS, - BT_HST3 = KC_TRNS, - BAT_LVL = KC_TRNS, -#endif - NEW_SAFE_RANGE -}; diff --git a/keyboards/keychron/q6_pro/readme.md b/keyboards/keychron/q6_pro/readme.md deleted file mode 100644 index ba0d9bc635..0000000000 --- a/keyboards/keychron/q6_pro/readme.md +++ /dev/null @@ -1,23 +0,0 @@ -# Keychron Q6 Pro - -![Keychron Q6 Pro](https://i.imgur.com/DCqv0RE.jpg) - -A customizable 96% keyboard. - -* Keyboard Maintainer: [Keychron](https://github.com/keychron) -* Hardware Supported: Keychron Q6 Pro -* Hardware Availability:[Keychron Q6 Pro QMK/VIA Wireless Custom Mechanical Keyboard](https://www.keychron.com/products/keychron-q6-pro-qmk-via-wireless-custom-mechanical-keyboard) - -Make example for this keyboard (after setting up your build environment): - - make keychron/q6_pro/ansi_encoder:default - make keychron/q6_pro/iso_encoder:default - -Flashing example for this keyboard: - - make keychron/q6_pro/ansi_encoder:default:flash - make keychron/q6_pro/iso_encoder:default:flash - -**Reset Key**: Connect the USB cable, toggle mode switch to "Off", hold down the *Esc* key or reset button underneath space bar, then toggle then switch to "Cable". - -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). diff --git a/keyboards/keychron/q6_pro/rules.mk b/keyboards/keychron/q6_pro/rules.mk deleted file mode 100644 index f995372f9c..0000000000 --- a/keyboards/keychron/q6_pro/rules.mk +++ /dev/null @@ -1,6 +0,0 @@ -# Enter lower-power sleep mode when on the ChibiOS idle thread -OPT_DEFS += -DCORTEX_ENABLE_WFI_IDLE=TRUE -OPT_DEFS += -DNO_USB_STARTUP_CHECK -DENABLE_FACTORY_TEST - -include keyboards/keychron/bluetooth/bluetooth.mk -include keyboards/keychron/common/common.mk diff --git a/keyboards/keychron/q6_pro/via_json/q6_pro_ansi_encoder.json b/keyboards/keychron/q6_pro/via_json/q6_pro_ansi_encoder.json deleted file mode 100644 index e0f94063c3..0000000000 --- a/keyboards/keychron/q6_pro/via_json/q6_pro_ansi_encoder.json +++ /dev/null @@ -1,346 +0,0 @@ -{ - "name": "Keychron Q6 Pro ANSI Knob", - "vendorId": "0x3434", - "productId": "0x0660", - "keycodes": ["qmk_lighting"], - "menus": [ - { - "label": "Lighting", - "content": [ - { - "label": "Backlight", - "content": [ - { - "label": "Brightness", - "type": "range", - "options": [0, 255], - "content": ["id_qmk_rgb_matrix_brightness", 3, 1] - }, - { - "label": "Effect", - "type": "dropdown", - "content": ["id_qmk_rgb_matrix_effect", 3, 2], - "options": [ - ["None", 0], - ["Solid Color", 1], - ["Breathing", 2], - ["Band Spiral Val", 3], - ["Cycle All", 4], - ["Cycle Left Right", 5], - ["Cycle Up Down", 6], - ["Rainbow Moving Chevron", 7], - ["Cycle Out In", 8], - ["Cycle Out In Dual", 9], - ["Cycle Pinwheel", 10], - ["Cycle Spiral", 11], - ["Dual Beacon", 12], - ["Rainbow Beacon", 13], - ["Jellybean Raindrops", 14], - ["Pixel Rain", 15], - ["Typing Heatmap", 16], - ["Digital Rain", 17], - ["Reactive Simple", 18], - ["Reactive Multiwide", 19], - ["Reactive Multinexus", 20], - ["Splash", 21], - ["Solid Splash", 22] - ] - }, - { - "showIf": "{id_qmk_rgb_matrix_effect} > 1", - "label": "Effect Speed", - "type": "range", - "options": [0, 255], - "content": ["id_qmk_rgb_matrix_effect_speed", 3, 3] - }, - { - "showIf": "{id_qmk_rgb_matrix_effect} != 0 && ( {id_qmk_rgb_matrix_effect} < 4 || {id_qmk_rgb_matrix_effect} == 18 || ({id_qmk_rgb_matrix_effect} > 17 && {id_qmk_rgb_matrix_effect} != 21) ) ", - "label": "Color", - "type": "color", - "content": ["id_qmk_rgb_matrix_color", 3, 4] - } - ] - } - ] - } - ], - "customKeycodes": [ - {"name": "Left Option", "title": "Left Option", "shortName": "LOpt"}, - {"name": "Right Option", "title": "Right Option", "shortName": "ROpt"}, - {"name": "Left Cmd", "title": "Left Command", "shortName": "LCmd"}, - {"name": "Right Cmd", "title": "Right Command", "shortName": "RCmd"}, - {"name": "Task View", "title": "Task View in Windows", "shortName": "Task"}, - {"name": "File Explorer", "title": "File Explorer in Windows", "shortName": "File"}, - {"name": "Screen shot", "title": "Screenshot in macOS", "shortName": "SShot"}, - {"name": "Cortana", "title": "Cortana in Windows", "shortName": "Cortana"}, - {"name": "Siri", "title": "Siri in macOS", "shortName": "Siri"}, - {"name": "Bluetooth Host 1", "title": "Bluetooth Host 1", "shortName": "BTH1"}, - {"name": "Bluetooth Host 2", "title": "Bluetooth Host 2", "shortName": "BTH2"}, - {"name": "Bluetooth Host 3", "title": "Bluetooth Host 3", "shortName": "BTH3"}, - {"name": "Battery Level", "title": "Show battery level", "shortName": "Batt"} - ], - "matrix": {"rows": 6, "cols": 21}, - "layouts": { - "keymap": [ - [ - { - "c": "#777777" - }, - "0,0\nESC", - { - "x": 0.25, - "c": "#cccccc" - }, - "0,1", - "0,2", - "0,3", - "0,4", - { - "x": 0.25, - "c": "#aaaaaa" - }, - "0,5", - "0,6", - "0,7", - "0,8", - { - "x": 0.25, - "c": "#cccccc" - }, - "0,9", - "0,10", - "0,11", - "0,12", - { - "x": 0.25 - }, - "0,13\n\n\n\n\n\n\n\n\ne0", - { - "x": 0.25, - "c": "#aaaaaa" - }, - "0,14", - "0,15", - "0,16", - { - "x": 0.25, - "c": "#cccccc" - }, - "0,17", - "0,18", - "0,19", - "0,20" - ], - [ - { - "y": 0.25, - "c": "#aaaaaa" - }, - "1,0", - { - "c": "#cccccc" - }, - "1,1", - "1,2", - "1,3", - "1,4", - "1,5", - "1,6", - "1,7", - "1,8", - "1,9", - "1,10", - "1,11", - "1,12", - { - "c": "#aaaaaa", - "w": 2 - }, - "1,13", - { - "x": 0.25 - }, - "1,14", - "1,15", - "1,16", - { - "x": 0.25, - "c": "#cccccc" - }, - "1,17", - "1,18", - "1,19", - "1,20" - ], - [ - { - "c": "#aaaaaa", - "w": 1.5 - }, - "2,0", - { - "c": "#cccccc" - }, - "2,1", - "2,2", - "2,3", - "2,4", - "2,5", - "2,6", - "2,7", - "2,8", - "2,9", - "2,10", - "2,11", - "2,12", - { - "c": "#aaaaaa", - "w": 1.5 - }, - "2,13", - { - "x": 0.25 - }, - "2,14", - "2,15", - "2,16", - { - "x": 0.25, - "c": "#cccccc" - }, - "2,17", - "2,18", - "2,19", - { - "h": 2 - }, - "2,20" - ], - [ - { - "c": "#aaaaaa", - "w": 1.75 - }, - "3,0", - { - "c": "#cccccc" - }, - "3,1", - "3,2", - "3,3", - "3,4", - "3,5", - "3,6", - "3,7", - "3,8", - "3,9", - "3,10", - "3,11", - { - "c": "#777777", - "w": 2.25 - }, - "3,13", - { - "x": 3.5, - "c": "#cccccc" - }, - "3,17", - "3,18", - "3,19" - ], - [ - { - "c": "#aaaaaa", - "w": 2.25 - }, - "4,0", - { - "c": "#cccccc" - }, - "4,2", - "4,3", - "4,4", - "4,5", - "4,6", - "4,7", - "4,8", - "4,9", - "4,10", - "4,11", - { - "c": "#aaaaaa", - "w": 2.75 - }, - "4,13", - { - "x": 1.25, - "c": "#777777" - }, - "4,15", - { - "x": 1.25, - "c": "#cccccc" - }, - "4,17", - "4,18", - "4,19", - { - "h": 2 - }, - "4,20" - ], - [ - { - "c": "#aaaaaa", - "w": 1.25 - }, - "5,0", - { - "w": 1.25 - }, - "5,1", - { - "w": 1.25 - }, - "5,2", - { - "c": "#cccccc", - "w": 6.25 - }, - "5,6", - { - "c": "#aaaaaa", - "w": 1.25 - }, - "5,10", - { - "w": 1.25 - }, - "5,11", - { - "w": 1.25 - }, - "5,12", - { - "w": 1.25 - }, - "5,13", - { - "x": 0.25, - "c": "#777777" - }, - "5,14", - "5,15", - "5,16", - { - "x": 0.25, - "c": "#cccccc", - "w": 2 - }, - "5,18", - "5,19" - ] - ] - } -} diff --git a/keyboards/keychron/q6_pro/via_json/q6_pro_iso_encoder.json b/keyboards/keychron/q6_pro/via_json/q6_pro_iso_encoder.json deleted file mode 100644 index 1b6520de97..0000000000 --- a/keyboards/keychron/q6_pro/via_json/q6_pro_iso_encoder.json +++ /dev/null @@ -1,352 +0,0 @@ -{ - "name": "Keychron Q6 Pro ISO Knob", - "vendorId": "0x3434", - "productId": "0x0661", - "keycodes": ["qmk_lighting"], - "menus": [ - { - "label": "Lighting", - "content": [ - { - "label": "Backlight", - "content": [ - { - "label": "Brightness", - "type": "range", - "options": [0, 255], - "content": ["id_qmk_rgb_matrix_brightness", 3, 1] - }, - { - "label": "Effect", - "type": "dropdown", - "content": ["id_qmk_rgb_matrix_effect", 3, 2], - "options": [ - ["None", 0], - ["Solid Color", 1], - ["Breathing", 2], - ["Band Spiral Val", 3], - ["Cycle All", 4], - ["Cycle Left Right", 5], - ["Cycle Up Down", 6], - ["Rainbow Moving Chevron", 7], - ["Cycle Out In", 8], - ["Cycle Out In Dual", 9], - ["Cycle Pinwheel", 10], - ["Cycle Spiral", 11], - ["Dual Beacon", 12], - ["Rainbow Beacon", 13], - ["Jellybean Raindrops", 14], - ["Pixel Rain", 15], - ["Typing Heatmap", 16], - ["Digital Rain", 17], - ["Reactive Simple", 18], - ["Reactive Multiwide", 19], - ["Reactive Multinexus", 20], - ["Splash", 21], - ["Solid Splash", 22] - ] - }, - { - "showIf": "{id_qmk_rgb_matrix_effect} > 1", - "label": "Effect Speed", - "type": "range", - "options": [0, 255], - "content": ["id_qmk_rgb_matrix_effect_speed", 3, 3] - }, - { - "showIf": "{id_qmk_rgb_matrix_effect} != 0 && ( {id_qmk_rgb_matrix_effect} < 4 || {id_qmk_rgb_matrix_effect} == 18 || ({id_qmk_rgb_matrix_effect} > 17 && {id_qmk_rgb_matrix_effect} != 21) ) ", - "label": "Color", - "type": "color", - "content": ["id_qmk_rgb_matrix_color", 3, 4] - } - ] - } - ] - } - ], - "customKeycodes": [ - {"name": "Left Option", "title": "Left Option", "shortName": "LOpt"}, - {"name": "Right Option", "title": "Right Option", "shortName": "ROpt"}, - {"name": "Left Cmd", "title": "Left Command", "shortName": "LCmd"}, - {"name": "Right Cmd", "title": "Right Command", "shortName": "RCmd"}, - {"name": "Task View", "title": "Task View in Windows", "shortName": "Task"}, - {"name": "File Explorer", "title": "File Explorer in Windows", "shortName": "File"}, - {"name": "Screen shot", "title": "Screenshot in macOS", "shortName": "SShot"}, - {"name": "Cortana", "title": "Cortana in Windows", "shortName": "Cortana"}, - {"name": "Siri", "title": "Siri in macOS", "shortName": "Siri"}, - {"name": "Bluetooth Host 1", "title": "Bluetooth Host 1", "shortName": "BTH1"}, - {"name": "Bluetooth Host 2", "title": "Bluetooth Host 2", "shortName": "BTH2"}, - {"name": "Bluetooth Host 3", "title": "Bluetooth Host 3", "shortName": "BTH3"}, - {"name": "Battery Level", "title": "Show battery level", "shortName": "Batt"} - ], - "matrix": {"rows": 6, "cols": 21}, - "layouts": { - "keymap": [ - [ - { - "c": "#777777" - }, - "0,0\nESC", - { - "x": 0.25, - "c": "#cccccc" - }, - "0,1", - "0,2", - "0,3", - "0,4", - { - "x": 0.25, - "c": "#aaaaaa" - }, - "0,5", - "0,6", - "0,7", - "0,8", - { - "x": 0.25, - "c": "#cccccc" - }, - "0,9", - "0,10", - "0,11", - "0,12", - { - "x": 0.25 - }, - "0,13\n\n\n\n\n\n\n\n\ne0", - { - "x": 0.25, - "c": "#aaaaaa" - }, - "0,14", - "0,15", - "0,16", - { - "x": 0.25, - "c": "#cccccc" - }, - "0,17", - "0,18", - "0,19", - "0,20" - ], - [ - { - "y": 0.25, - "c": "#aaaaaa" - }, - "1,0", - { - "c": "#cccccc" - }, - "1,1", - "1,2", - "1,3", - "1,4", - "1,5", - "1,6", - "1,7", - "1,8", - "1,9", - "1,10", - "1,11", - "1,12", - { - "c": "#aaaaaa", - "w": 2 - }, - "1,13", - { - "x": 0.25 - }, - "1,14", - "1,15", - "1,16", - { - "x": 0.25, - "c": "#cccccc" - }, - "1,17", - "1,18", - "1,19", - "1,20" - ], - [ - { - "c": "#aaaaaa", - "w": 1.5 - }, - "2,0", - { - "c": "#cccccc" - }, - "2,1", - "2,2", - "2,3", - "2,4", - "2,5", - "2,6", - "2,7", - "2,8", - "2,9", - "2,10", - "2,11", - "2,12", - { - "x": 0.25, - "c": "#777777", - "w": 1.25, - "h": 2, - "w2": 1.5, - "h2": 1, - "x2": -0.25 - }, - "2,13", - { - "x": 0.25, - "c": "#aaaaaa" - }, - "2,14", - "2,15", - "2,16", - { - "x": 0.25, - "c": "#cccccc" - }, - "2,17", - "2,18", - "2,19", - { - "h": 2 - }, - "2,20" - ], - [ - { - "c": "#aaaaaa", - "w": 1.75 - }, - "3,0", - { - "c": "#cccccc" - }, - "3,1", - "3,2", - "3,3", - "3,4", - "3,5", - "3,6", - "3,7", - "3,8", - "3,9", - "3,10", - "3,11", - { - "c": "#aaaaaa" - }, - "3,13", - { - "x": 4.75, - "c": "#cccccc" - }, - "3,17", - "3,18", - "3,19" - ], - [ - { - "c": "#aaaaaa", - "w": 1.25 - }, - "4,0", - "4,1", - { - "c": "#cccccc" - }, - "4,2", - "4,3", - "4,4", - "4,5", - "4,6", - "4,7", - "4,8", - "4,9", - "4,10", - "4,11", - { - "c": "#aaaaaa", - "w": 2.75 - }, - "4,13", - { - "x": 1.25, - "c": "#777777" - }, - "4,15", - { - "x": 1.25, - "c": "#cccccc" - }, - "4,17", - "4,18", - "4,19", - { - "h": 2 - }, - "4,20" - ], - [ - { - "c": "#aaaaaa", - "w": 1.25 - }, - "5,0", - { - "w": 1.25 - }, - "5,1", - { - "w": 1.25 - }, - "5,2", - { - "c": "#cccccc", - "w": 6.25 - }, - "5,6", - { - "c": "#aaaaaa", - "w": 1.25 - }, - "5,10", - { - "w": 1.25 - }, - "5,11", - { - "w": 1.25 - }, - "5,12", - { - "w": 1.25 - }, - "5,13", - { - "x": 0.25, - "c": "#777777" - }, - "5,14", - "5,15", - "5,16", - { - "x": 0.25, - "c": "#cccccc", - "w": 2 - }, - "5,18", - "5,19" - ] - ] - } -} diff --git a/keyboards/keychron/q8_max/ansi_encoder/ansi_encoder.c b/keyboards/keychron/q8_max/ansi_encoder/ansi_encoder.c deleted file mode 100644 index cd368ec051..0000000000 --- a/keyboards/keychron/q8_max/ansi_encoder/ansi_encoder.c +++ /dev/null @@ -1,131 +0,0 @@ -/* Copyright 2024 @ 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/>. - */ - -#include "quantum.h" - -// clang-format off - -#ifdef RGB_MATRIX_ENABLE -const snled27351_led_t g_snled27351_leds[RGB_MATRIX_LED_COUNT] = { -/* Refer to SNLED27351 manual for these locations - * driver - * | R location - * | | G location - * | | | B location - * | | | | */ - {0, L_2, J_2, K_2}, - {0, L_3, J_3, K_3}, - {0, L_4, J_4, K_4}, - {0, L_5, J_5, K_5}, - {0, L_6, J_6, K_6}, - {0, L_7, J_7, K_7}, - {0, L_8, J_8, K_8}, - {0, L_9, J_9, K_9}, - {0, L_10, J_10, K_10}, - {0, L_11, J_11, K_11}, - {0, L_12, J_12, K_12}, - {0, L_13, J_13, K_13}, - {0, L_14, J_14, K_14}, - {0, L_15, J_15, K_15}, - - {0, C_2, A_2, B_2}, - {0, C_3, A_3, B_3}, - {0, C_4, A_4, B_4}, - {0, C_5, A_5, B_5}, - {0, C_6, A_6, B_6}, - {0, C_7, A_7, B_7}, - {0, C_8, A_8, B_8}, - {0, C_9, A_9, B_9}, - {0, C_10, A_10, B_10}, - {0, C_11, A_11, B_11}, - {0, C_12, A_12, B_12}, - {0, C_13, A_13, B_13}, - {0, C_14, A_14, B_14}, - {0, C_15, A_15, B_15}, - {0, C_16, A_16, B_16}, - - {1, C_15, A_15, B_15}, - {1, C_14, A_14, B_14}, - {1, C_13, A_13, B_13}, - {1, C_12, A_12, B_12}, - {1, C_11, A_11, B_11}, - {1, C_10, A_10, B_10}, - {1, C_8, A_8, B_8}, - {1, C_7, A_7, B_7}, - {1, C_6, A_6, B_6}, - {1, C_5, A_5, B_5}, - {1, C_4, A_4, B_4}, - {1, C_3, A_3, B_3}, - {1, C_2, A_2, B_2}, - {1, C_1, A_1, B_1}, - - {1, I_15, G_15, H_15}, - {1, I_13, G_13, H_13}, - {1, I_12, G_12, H_12}, - {1, I_11, G_11, H_11}, - {1, I_10, G_10, H_10}, - {1, I_9, G_9, H_9}, - {1, I_8, G_8, H_8}, - {1, I_7, G_7, H_7}, - {1, I_6, G_6, H_6}, - {1, I_5, G_5, H_5}, - {1, I_4, G_4, H_4}, - {1, I_3, G_3, H_3}, - {1, I_2, G_2, H_2}, - {1, I_1, G_1, H_1}, - - {1, F_15, D_15, E_15}, - {1, F_14, D_14, E_14}, - {1, F_13, D_13, E_13}, - {1, F_12, D_12, E_12}, - {1, F_9, D_9, E_9}, - {1, F_8, D_8, E_8}, - {1, F_7, D_7, E_7}, - {1, F_6, D_6, E_6}, - {1, F_3, D_3, E_3}, - {1, F_2, D_2, E_2}, - {1, F_1, D_1, E_1}, -}; - -#define __ NO_LED - -led_config_t g_led_config = { - { - // Key Matrix to LED Index - { 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, 40, 41, 42 }, - { 43, __, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56 }, - { 57, 58, 59, 60, __, __, 61, 62, 63, 64, __, __, 65, 66, 67 }, - }, - { - // LED Index to Physical Position - {7, 1}, {20, 1}, {33, 0}, {47, 3}, {60, 6}, {73, 8}, { 86,11}, {107,11}, {120, 8}, {133, 6}, {146, 3}, {160, 0}, {173, 1}, {193, 1}, - {7,14}, {24,14}, {38,14}, {51,17}, {64,20}, {77,22}, {103,25}, {116,22}, {129,19}, {142,17}, {155,14}, {170,14}, {183,14}, {200,14}, {222,16}, - {6,27}, {24,27}, {39,28}, {52,30}, {65,33}, {78,36}, {109,37}, {122,34}, {135,31}, {148,29}, {162,27}, {176,27}, {197,27}, {224,29}, - {7,40}, {28,40}, {43,41}, {56,44}, {69,47}, { 82,49}, {102,51}, {115,49}, {128,46}, {141,43}, {154,41}, {169,40}, {187,40}, {209,43}, - {0,53}, {17,53}, {42,54}, {64,59}, { 85,63}, {105,64}, {129,59}, {154,54}, {196,56}, {209,56}, {222,56} - }, - { - // RGB LED Index to Flag - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 - } -}; -#endif diff --git a/keyboards/keychron/q8_max/ansi_encoder/config.h b/keyboards/keychron/q8_max/ansi_encoder/config.h deleted file mode 100644 index 442e71143b..0000000000 --- a/keyboards/keychron/q8_max/ansi_encoder/config.h +++ /dev/null @@ -1,56 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#pragma once - -#ifdef RGB_MATRIX_ENABLE -/* RGB Matrix driver configuration */ -# define DRIVER_COUNT 2 -# define RGB_MATRIX_LED_COUNT 68 - -# define SPI_SCK_PIN A5 -# define SPI_MISO_PIN A6 -# define SPI_MOSI_PIN A7 - -# define DRIVER_CS_PINS \ - { B8, B10 } -# define SNLED23751_SPI_DIVISOR 16 -# define SPI_DRIVER SPID1 - -/* Scan phase of led driver set as MSKPHASE_9CHANNEL(defined as 0x03 in snled27351.h) */ -# define SNLED27351_PHASE_CHANNEL MSKPHASE_12CHANNEL - -/* Set LED driver current */ -# define SNLED27351_CURRENT_TUNE \ - { 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40 } - -/* Set to infinit, which is use in USB mode by default */ -# define RGB_MATRIX_TIMEOUT RGB_MATRIX_TIMEOUT_INFINITE - -/* Allow shutdown of led driver to save power */ -# define RGB_MATRIX_DRIVER_SHUTDOWN_ENABLE -/* Turn off backlight on low brightness to save power */ -# define RGB_MATRIX_BRIGHTNESS_TURN_OFF_VAL 32 - -/* Indications */ -# define CAPS_LOCK_INDEX 29 -# define LOW_BAT_IND_INDEX \ - { 60, 63 } - -# define RGB_MATRIX_KEYPRESSES -# define RGB_MATRIX_FRAMEBUFFER_EFFECTS - -#endif diff --git a/keyboards/keychron/q8_max/ansi_encoder/info.json b/keyboards/keychron/q8_max/ansi_encoder/info.json deleted file mode 100644 index 628e911786..0000000000 --- a/keyboards/keychron/q8_max/ansi_encoder/info.json +++ /dev/null @@ -1,85 +0,0 @@ -{ - "usb": { - "pid": "0x0880", - "device_version": "1.0.0" - }, - "layouts": { - "LAYOUT_ansi_69": { - "layout": [ - {"matrix": [0, 0], "x": 0, "y": 0}, - {"matrix": [0, 1], "x": 1, "y": 0}, - {"matrix": [0, 2], "x": 2, "y": 0}, - {"matrix": [0, 3], "x": 3, "y": 0.25}, - {"matrix": [0, 4], "x": 4, "y": 0.25}, - {"matrix": [0, 5], "x": 5, "y": 0.5}, - {"matrix": [0, 6], "x": 6, "y": 0.75}, - {"matrix": [0, 7], "x": 7.5, "y": 0.75}, - {"matrix": [0, 8], "x": 8.5, "y": 0.5}, - {"matrix": [0, 9], "x": 9.5, "y": 0.25}, - {"matrix": [0, 10], "x": 10.5, "y": 0.25}, - {"matrix": [0, 11], "x": 11.5, "y": 0}, - {"matrix": [0, 12], "x": 12.5, "y": 0}, - {"matrix": [0, 13], "x": 13.5, "y": 0, "w": 2}, - {"matrix": [0, 14], "x": 16, "y": 0}, - - {"matrix": [1, 0], "x": -0.25, "y": 1, "w": 1.5}, - {"matrix": [1, 1], "x": 1.25, "y": 1}, - {"matrix": [1, 2], "x": 2.25, "y": 1}, - {"matrix": [1, 3], "x": 3.25, "y": 1.25}, - {"matrix": [1, 4], "x": 4.25, "y": 1.5}, - {"matrix": [1, 5], "x": 5.25, "y": 1.75}, - {"matrix": [1, 6], "x": 7.25, "y": 1.75}, - {"matrix": [1, 7], "x": 8.25, "y": 1.75}, - {"matrix": [1, 8], "x": 9.25, "y": 1.5}, - {"matrix": [1, 9], "x": 10.25, "y": 1.25}, - {"matrix": [1, 10], "x": 11.25, "y": 1}, - {"matrix": [1, 11], "x": 12.25, "y": 1}, - {"matrix": [1, 12], "x": 13.25, "y": 1}, - {"matrix": [1, 13], "x": 14.25, "y": 1, "w": 1.5}, - {"matrix": [1, 14], "x": 16.25, "y": 1.25}, - - {"matrix": [2, 0], "x": -0.5, "y": 2, "w": 1.75}, - {"matrix": [2, 1], "x": 1.25, "y": 2}, - {"matrix": [2, 2], "x": 2.5, "y": 2}, - {"matrix": [2, 3], "x": 3.5, "y": 2.25}, - {"matrix": [2, 4], "x": 4.25, "y": 2.5}, - {"matrix": [2, 5], "x": 5.25, "y": 2.75}, - {"matrix": [2, 7], "x": 7.75, "y": 2.75}, - {"matrix": [2, 8], "x": 8.75, "y": 2.5}, - {"matrix": [2, 9], "x": 9.75, "y": 2.25}, - {"matrix": [2, 10], "x": 10.75, "y": 2.25}, - {"matrix": [2, 11], "x": 11.75, "y": 2}, - {"matrix": [2, 12], "x": 12.75, "y": 2}, - {"matrix": [2, 13], "x": 13.75, "y": 2, "w": 2.25}, - {"matrix": [2, 14], "x": 16.25, "y": 2.25}, - - {"matrix": [3, 0], "x": -0.75, "y": 3, "w": 2.25}, - {"matrix": [3, 2], "x": 1.5, "y": 3}, - {"matrix": [3, 3], "x": 2.75, "y": 3.25}, - {"matrix": [3, 4], "x": 3.75, "y": 3.25}, - {"matrix": [3, 5], "x": 4.75, "y": 3.5}, - {"matrix": [3, 6], "x": 5.5, "y": 3.75}, - {"matrix": [3, 7], "x": 7.25, "y": 4}, - {"matrix": [3, 8], "x": 8.25, "y": 3.75}, - {"matrix": [3, 9], "x": 9.25, "y": 3.5}, - {"matrix": [3, 10], "x": 10, "y": 3.25}, - {"matrix": [3, 11], "x": 11, "y": 3}, - {"matrix": [3, 12], "x": 12.25, "y": 3}, - {"matrix": [3, 13], "x": 13.25, "y": 3, "w": 1.75}, - {"matrix": [3, 14], "x": 15.25, "y": 3.25}, - - {"matrix": [4, 0], "x": -0.75, "y": 4, "w": 1.25}, - {"matrix": [4, 1], "x": 0.5, "y": 4, "w": 1.25}, - {"matrix": [4, 2], "x": 2.5, "y": 4.25, "w": 1.25}, - {"matrix": [4, 3], "x": 3.75, "y": 4.5, "w": 2.25}, - {"matrix": [4, 6], "x": 6, "y": 4.75}, - {"matrix": [4, 7], "x": 7.5, "y": 5}, - {"matrix": [4, 8], "x": 8.25, "y": 4.5, "w": 2.75}, - {"matrix": [4, 9], "x": 11, "y": 4}, - {"matrix": [4, 12], "x": 14.25, "y": 4.25}, - {"matrix": [4, 13], "x": 15.25, "y": 4.25}, - {"matrix": [4, 14], "x": 16.25, "y": 4.25} - ] - } - } -} diff --git a/keyboards/keychron/q8_max/ansi_encoder/keymaps/default/keymap.c b/keyboards/keychron/q8_max/ansi_encoder/keymaps/default/keymap.c deleted file mode 100644 index aca29a0cea..0000000000 --- a/keyboards/keychron/q8_max/ansi_encoder/keymaps/default/keymap.c +++ /dev/null @@ -1,82 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#include QMK_KEYBOARD_H -#include "keychron_common.h" - -enum layers { - MAC_BASE, - WIN_BASE, - MAC_FN1, - WIN_FN1, - FN2, -}; - -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_ansi_69( - 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_MUTE, - 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_DEL, - 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_HOME, - KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, - KC_LCTL, KC_LOPTN, KC_LCMMD, KC_SPC, MO(MAC_FN1), MO(FN2), KC_SPC, KC_RCMMD, KC_LEFT, KC_DOWN, KC_RGHT), - - [WIN_BASE] = LAYOUT_ansi_69( - 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_MUTE, - 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_DEL, - 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_HOME, - KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, - KC_LCTL, KC_LWIN, KC_LALT, KC_SPC, MO(WIN_FN1), MO(FN2), KC_SPC, KC_RALT, KC_LEFT, KC_DOWN, KC_RGHT), - - [MAC_FN1] = LAYOUT_ansi_69( - KC_GRV, KC_BRID, KC_BRIU, KC_MCTRL,KC_LNPAD,RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, RGB_TOG, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, KC_END, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, NK_TOGG, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - - [WIN_FN1] = LAYOUT_ansi_69( - KC_GRV, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, RGB_TOG, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, KC_END, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, NK_TOGG, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - - [FN2] = LAYOUT_ansi_69( - KC_TILD, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, BAT_LVL, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______) -}; - -#if defined(ENCODER_MAP_ENABLE) -const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][2] = { - [MAC_BASE] = {ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [WIN_BASE] = {ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [MAC_FN1] = {ENCODER_CCW_CW(RGB_VAD, RGB_VAI)}, - [WIN_FN1] = {ENCODER_CCW_CW(RGB_VAD, RGB_VAI)}, - [FN2] = {ENCODER_CCW_CW(_______, _______)}, -}; -#endif // ENCODER_MAP_ENABLE - -// clang-format on -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - if (!process_record_keychron_common(keycode, record)) { - return false; - } - return true; -} diff --git a/keyboards/keychron/q8_max/ansi_encoder/keymaps/via/keymap.c b/keyboards/keychron/q8_max/ansi_encoder/keymaps/via/keymap.c deleted file mode 100644 index aca29a0cea..0000000000 --- a/keyboards/keychron/q8_max/ansi_encoder/keymaps/via/keymap.c +++ /dev/null @@ -1,82 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#include QMK_KEYBOARD_H -#include "keychron_common.h" - -enum layers { - MAC_BASE, - WIN_BASE, - MAC_FN1, - WIN_FN1, - FN2, -}; - -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_ansi_69( - 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_MUTE, - 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_DEL, - 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_HOME, - KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, - KC_LCTL, KC_LOPTN, KC_LCMMD, KC_SPC, MO(MAC_FN1), MO(FN2), KC_SPC, KC_RCMMD, KC_LEFT, KC_DOWN, KC_RGHT), - - [WIN_BASE] = LAYOUT_ansi_69( - 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_MUTE, - 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_DEL, - 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_HOME, - KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, - KC_LCTL, KC_LWIN, KC_LALT, KC_SPC, MO(WIN_FN1), MO(FN2), KC_SPC, KC_RALT, KC_LEFT, KC_DOWN, KC_RGHT), - - [MAC_FN1] = LAYOUT_ansi_69( - KC_GRV, KC_BRID, KC_BRIU, KC_MCTRL,KC_LNPAD,RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, RGB_TOG, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, KC_END, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, NK_TOGG, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - - [WIN_FN1] = LAYOUT_ansi_69( - KC_GRV, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, RGB_TOG, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, KC_END, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, NK_TOGG, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - - [FN2] = LAYOUT_ansi_69( - KC_TILD, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, BAT_LVL, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______) -}; - -#if defined(ENCODER_MAP_ENABLE) -const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][2] = { - [MAC_BASE] = {ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [WIN_BASE] = {ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [MAC_FN1] = {ENCODER_CCW_CW(RGB_VAD, RGB_VAI)}, - [WIN_FN1] = {ENCODER_CCW_CW(RGB_VAD, RGB_VAI)}, - [FN2] = {ENCODER_CCW_CW(_______, _______)}, -}; -#endif // ENCODER_MAP_ENABLE - -// clang-format on -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - if (!process_record_keychron_common(keycode, record)) { - return false; - } - return true; -} diff --git a/keyboards/keychron/q8_max/ansi_encoder/keymaps/via/rules.mk b/keyboards/keychron/q8_max/ansi_encoder/keymaps/via/rules.mk deleted file mode 100644 index 1e5b99807c..0000000000 --- a/keyboards/keychron/q8_max/ansi_encoder/keymaps/via/rules.mk +++ /dev/null @@ -1 +0,0 @@ -VIA_ENABLE = yes diff --git a/keyboards/keychron/q8_max/ansi_encoder/rules.mk b/keyboards/keychron/q8_max/ansi_encoder/rules.mk deleted file mode 100644 index 7ff128fa69..0000000000 --- a/keyboards/keychron/q8_max/ansi_encoder/rules.mk +++ /dev/null @@ -1 +0,0 @@ -# This file intentionally left blank \ No newline at end of file diff --git a/keyboards/keychron/q8_max/board.h b/keyboards/keychron/q8_max/board.h deleted file mode 100644 index 54fba748bf..0000000000 --- a/keyboards/keychron/q8_max/board.h +++ /dev/null @@ -1,226 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#pragma once - -#include_next - -// clang-format off - -/* Set GPIOA_SWDIO to INPUT and NOT FLOATING */ -#undef VAL_GPIOA_MODER -#define VAL_GPIOA_MODER (PIN_MODE_INPUT(GPIOA_BUTTON) | \ - PIN_MODE_INPUT(GPIOA_PIN1) | \ - PIN_MODE_INPUT(GPIOA_PIN2) | \ - PIN_MODE_INPUT(GPIOA_PIN3) | \ - PIN_MODE_ALTERNATE(GPIOA_CS43L22_LRCK) |\ - PIN_MODE_ALTERNATE(GPIOA_L3GD20_SCL) | \ - PIN_MODE_ALTERNATE(GPIOA_L3GD20_SD0) | \ - PIN_MODE_ALTERNATE(GPIOA_L3GD20_SDI) | \ - PIN_MODE_INPUT(GPIOA_PIN8) | \ - PIN_MODE_INPUT(GPIOA_VBUS_FS) | \ - PIN_MODE_ALTERNATE(GPIOA_OTG_FS_ID) | \ - PIN_MODE_ALTERNATE(GPIOA_OTG_FS_DM) | \ - PIN_MODE_ALTERNATE(GPIOA_OTG_FS_DP) | \ - PIN_MODE_INPUT(GPIOA_SWDIO) | \ - PIN_MODE_INPUT(GPIOA_SWCLK) | \ - PIN_MODE_INPUT(GPIOA_PIN15)) - -#undef VAL_GPIOA_PUPDR -#define VAL_GPIOA_PUPDR (PIN_PUPDR_FLOATING(GPIOA_BUTTON) | \ - PIN_PUPDR_PULLUP(GPIOA_PIN1) | \ - PIN_PUPDR_PULLUP(GPIOA_PIN2) | \ - PIN_PUPDR_PULLUP(GPIOA_PIN3) | \ - PIN_PUPDR_FLOATING(GPIOA_CS43L22_LRCK) |\ - PIN_PUPDR_FLOATING(GPIOA_L3GD20_SCL) | \ - PIN_PUPDR_PULLUP(GPIOA_L3GD20_SD0) | \ - PIN_PUPDR_PULLUP(GPIOA_L3GD20_SDI) | \ - PIN_PUPDR_PULLUP(GPIOA_PIN8) | \ - PIN_PUPDR_FLOATING(GPIOA_VBUS_FS) | \ - PIN_PUPDR_FLOATING(GPIOA_OTG_FS_ID) | \ - PIN_PUPDR_FLOATING(GPIOA_OTG_FS_DM) | \ - PIN_PUPDR_FLOATING(GPIOA_OTG_FS_DP) | \ - PIN_PUPDR_PULLUP(GPIOA_SWDIO) | \ - PIN_PUPDR_PULLUP(GPIOA_SWCLK) | \ - PIN_PUPDR_PULLUP(GPIOA_PIN15)) - -#undef VAL_GPIOB_MODER -#define VAL_GPIOB_MODER (PIN_MODE_INPUT(GPIOB_PIN0) | \ - PIN_MODE_INPUT(GPIOB_PIN1) | \ - PIN_MODE_INPUT(GPIOB_PIN2) | \ - PIN_MODE_INPUT(GPIOB_SWO) | \ - PIN_MODE_INPUT(GPIOB_PIN4) | \ - PIN_MODE_INPUT(GPIOB_PIN5) | \ - PIN_MODE_INPUT(GPIOB_LSM303DLHC_SCL) | \ - PIN_MODE_INPUT(GPIOB_PIN7) | \ - PIN_MODE_INPUT(GPIOB_PIN8) | \ - PIN_MODE_INPUT(GPIOB_LSM303DLHC_SDA) | \ - PIN_MODE_INPUT(GPIOB_MP45DT02_CLK_IN) |\ - PIN_MODE_INPUT(GPIOB_PIN11) | \ - PIN_MODE_INPUT(GPIOB_PIN12) | \ - PIN_MODE_INPUT(GPIOB_PIN13) | \ - PIN_MODE_INPUT(GPIOB_PIN14) | \ - PIN_MODE_INPUT(GPIOB_PIN15)) - -#undef VAL_GPIOB_PUPDR -#define VAL_GPIOB_PUPDR (PIN_PUPDR_PULLDOWN(GPIOB_PIN0) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN1) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN2) | \ - PIN_PUPDR_PULLDOWN(GPIOB_SWO) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN4) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN5) | \ - PIN_PUPDR_PULLDOWN(GPIOB_LSM303DLHC_SCL) |\ - PIN_PUPDR_PULLDOWN(GPIOB_PIN7) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN8) | \ - PIN_PUPDR_PULLDOWN(GPIOB_LSM303DLHC_SDA) |\ - PIN_PUPDR_PULLDOWN(GPIOB_MP45DT02_CLK_IN) |\ - PIN_PUPDR_PULLDOWN(GPIOB_PIN11) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN12) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN13) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN14) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN15)) - -#undef VAL_GPIOB_AFRL -#define VAL_GPIOB_AFRL (PIN_AFIO_AF(GPIOB_PIN0, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN1, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN2, 0U) | \ - PIN_AFIO_AF(GPIOB_SWO, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN4, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN5, 0U) | \ - PIN_AFIO_AF(GPIOB_LSM303DLHC_SCL, 0) | \ - PIN_AFIO_AF(GPIOB_PIN7, 0U)) - -#undef VAL_GPIOB_AFRH -#define VAL_GPIOB_AFRH (PIN_AFIO_AF(GPIOB_PIN8, 0U) | \ - PIN_AFIO_AF(GPIOB_LSM303DLHC_SDA, 0) | \ - PIN_AFIO_AF(GPIOB_MP45DT02_CLK_IN, 0U) |\ - PIN_AFIO_AF(GPIOB_PIN11, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN12, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN13, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN14, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN15, 0U)) - -/* C5 Need to be pulldown */ -#undef VAL_GPIOC_MODER -#define VAL_GPIOC_MODER (PIN_MODE_INPUT(GPIOC_OTG_FS_POWER_ON) |\ - PIN_MODE_INPUT(GPIOC_PIN1) | \ - PIN_MODE_INPUT(GPIOC_PIN2) | \ - PIN_MODE_INPUT(GPIOC_CS43L22_AIN4x) | \ - PIN_MODE_INPUT(GPIOC_PIN4) | \ - PIN_MODE_INPUT(GPIOC_PIN5) | \ - PIN_MODE_INPUT(GPIOC_PIN6) | \ - PIN_MODE_INPUT(GPIOC_CS43L22_MCLK) | \ - PIN_MODE_INPUT(GPIOC_PIN8) | \ - PIN_MODE_INPUT(GPIOC_PIN9) | \ - PIN_MODE_INPUT(GPIOC_CS43L22_SCLK) | \ - PIN_MODE_INPUT(GPIOC_PIN11) | \ - PIN_MODE_INPUT(GPIOC_CS43L22_SDIN) | \ - PIN_MODE_INPUT(GPIOC_PIN13) | \ - PIN_MODE_INPUT(GPIOC_OSC32_IN) | \ - PIN_MODE_INPUT(GPIOC_OSC32_OUT)) - -#undef VAL_GPIOC_PUPDR -#define VAL_GPIOC_PUPDR (PIN_PUPDR_PULLUP(GPIOC_OTG_FS_POWER_ON) |\ - PIN_PUPDR_PULLUP(GPIOC_PIN1) | \ - PIN_PUPDR_PULLUP(GPIOC_PIN2) | \ - PIN_PUPDR_PULLUP(GPIOC_CS43L22_AIN4x) |\ - PIN_PUPDR_PULLUP(GPIOC_PIN4) | \ - PIN_PUPDR_PULLDOWN(GPIOC_PIN5) | \ - PIN_PUPDR_PULLUP(GPIOC_PIN6) | \ - PIN_PUPDR_PULLUP(GPIOC_CS43L22_MCLK) | \ - PIN_PUPDR_PULLUP(GPIOC_PIN8) | \ - PIN_PUPDR_PULLUP(GPIOC_PIN9) | \ - PIN_PUPDR_PULLUP(GPIOC_CS43L22_SCLK) | \ - PIN_PUPDR_PULLUP(GPIOC_PIN11) | \ - PIN_PUPDR_PULLUP(GPIOC_CS43L22_SDIN) | \ - PIN_PUPDR_PULLUP(GPIOC_PIN13) | \ - PIN_PUPDR_PULLUP(GPIOC_OSC32_IN) | \ - PIN_PUPDR_PULLUP(GPIOC_OSC32_OUT)) - -/* Set all GPIOD pins to INPUT & PULLUP to avoid FLOATING */ -#undef VAL_GPIOD_MODER -#define VAL_GPIOD_MODER (PIN_MODE_INPUT(GPIOD_PIN0) | \ - PIN_MODE_INPUT(GPIOD_PIN1) | \ - PIN_MODE_INPUT(GPIOD_PIN2) | \ - PIN_MODE_INPUT(GPIOD_PIN3) | \ - PIN_MODE_INPUT(GPIOD_CS43L22_RESET) | \ - PIN_MODE_INPUT(GPIOD_OverCurrent) | \ - PIN_MODE_INPUT(GPIOD_PIN6) | \ - PIN_MODE_INPUT(GPIOD_PIN7) | \ - PIN_MODE_INPUT(GPIOD_PIN8) | \ - PIN_MODE_INPUT(GPIOD_PIN9) | \ - PIN_MODE_INPUT(GPIOD_PIN10) | \ - PIN_MODE_INPUT(GPIOD_PIN11) | \ - PIN_MODE_INPUT(GPIOD_LED4) | \ - PIN_MODE_INPUT(GPIOD_LED3) | \ - PIN_MODE_INPUT(GPIOD_LED5) | \ - PIN_MODE_INPUT(GPIOD_LED6)) - -#undef VAL_GPIOD_PUPDR -#define VAL_GPIOD_PUPDR (PIN_PUPDR_PULLUP(GPIOD_PIN0) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN1) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN2) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN3) | \ - PIN_PUPDR_PULLUP(GPIOD_CS43L22_RESET) |\ - PIN_PUPDR_PULLUP(GPIOD_OverCurrent) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN6) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN7) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN8) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN9) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN10) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN11) | \ - PIN_PUPDR_PULLUP(GPIOD_LED4) | \ - PIN_PUPDR_PULLUP(GPIOD_LED3) | \ - PIN_PUPDR_PULLUP(GPIOD_LED5) | \ - PIN_PUPDR_PULLUP(GPIOD_LED6)) - -/* Set all GPIOE pins to INPUT & PULLUP to avoid FLOATING */ -#undef VAL_GPIOE_MODER -#define VAL_GPIOE_MODER (PIN_MODE_INPUT(GPIOE_L3GD20_INT1) | \ - PIN_MODE_INPUT(GPIOE_L3GD20_INT2) | \ - PIN_MODE_INPUT(GPIOE_LSM303DLHC_DRDY) |\ - PIN_MODE_INPUT(GPIOE_L3GD20_CS) | \ - PIN_MODE_INPUT(GPIOE_LSM303DLHC_INT1) |\ - PIN_MODE_INPUT(GPIOE_LSM303DLHC_INT2) |\ - PIN_MODE_INPUT(GPIOE_PIN6) | \ - PIN_MODE_INPUT(GPIOE_PIN7) | \ - PIN_MODE_INPUT(GPIOE_PIN8) | \ - PIN_MODE_INPUT(GPIOE_PIN9) | \ - PIN_MODE_INPUT(GPIOE_PIN10) | \ - PIN_MODE_INPUT(GPIOE_PIN11) | \ - PIN_MODE_INPUT(GPIOE_PIN12) | \ - PIN_MODE_INPUT(GPIOE_PIN13) | \ - PIN_MODE_INPUT(GPIOE_PIN14) | \ - PIN_MODE_INPUT(GPIOE_PIN15)) - -#undef VAL_GPIOE_PUPDR -#define VAL_GPIOE_PUPDR (PIN_PUPDR_PULLUP(GPIOE_L3GD20_INT1) | \ - PIN_PUPDR_PULLUP(GPIOE_L3GD20_INT2) | \ - PIN_PUPDR_PULLUP(GPIOE_LSM303DLHC_DRDY) |\ - PIN_PUPDR_PULLUP(GPIOE_L3GD20_CS) | \ - PIN_PUPDR_PULLUP(GPIOE_LSM303DLHC_INT1) |\ - PIN_PUPDR_PULLUP(GPIOE_LSM303DLHC_INT2) |\ - PIN_PUPDR_PULLUP(GPIOE_PIN6) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN7) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN8) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN9) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN10) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN11) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN12) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN13) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN14) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN15)) - diff --git a/keyboards/keychron/q8_max/config.h b/keyboards/keychron/q8_max/config.h deleted file mode 100644 index 6812fc93f8..0000000000 --- a/keyboards/keychron/q8_max/config.h +++ /dev/null @@ -1,81 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#pragma once - -/* Encoder Configuration */ -#define ENCODER_DEFAULT_POS 0x3 -#define ENCODER_MAP_KEY_DELAY 2 - -#ifdef LK_WIRELESS_ENABLE -/* Hardware configuration */ - -# define P2P4_MODE_SELECT_PIN A10 -# define BT_MODE_SELECT_PIN A9 - -# define LKBT51_RESET_PIN C4 -# define LKBT51_INT_INPUT_PIN B1 -# define BLUETOOTH_INT_OUTPUT_PIN A4 - -# define USB_POWER_SENSE_PIN B0 -# define USB_POWER_CONNECTED_LEVEL 0 - -# define BAT_CHARGING_PIN C14 -# define BAT_CHARGING_LEVEL 0 - -# define BT_HOST_DEVICES_COUNT 3 - -# if defined(RGB_MATRIX_ENABLE) - -# define LED_DRIVER_SHUTDOWN_PIN B9 - -# define BT_HOST_LED_MATRIX_LIST \ - { 15, 16, 17 } - -# define P2P4G_HOST_LED_MATRIX_LIST \ - { 18 } - -# 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 - -/* Reinit LED driver on tranport changed */ -# define REINIT_LED_DRIVER 1 - -# endif - -/* Keep USB connection in blueooth mode */ -# define KEEP_USB_CONNECTION_IN_WIRELESS_MODE - -/* Enable bluetooth NKRO */ -# define WIRELESS_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 - -/* Factory test keys */ -#define FN_KEY_1 MO(4) - -#define MATRIX_IO_DELAY 10 diff --git a/keyboards/keychron/q8_max/firmware/keychron_q8_max_ansi_encoder_via.bin b/keyboards/keychron/q8_max/firmware/keychron_q8_max_ansi_encoder_via.bin deleted file mode 100644 index 0bdd824522..0000000000 Binary files a/keyboards/keychron/q8_max/firmware/keychron_q8_max_ansi_encoder_via.bin and /dev/null differ diff --git a/keyboards/keychron/q8_max/halconf.h b/keyboards/keychron/q8_max/halconf.h deleted file mode 100644 index db6699c5ec..0000000000 --- a/keyboards/keychron/q8_max/halconf.h +++ /dev/null @@ -1,30 +0,0 @@ -/* Copyright 2024 Keychron - * - * 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 _CHIBIOS_HAL_CONF_VER_8_0_ - -#ifdef LK_WIRELESS_ENABLE -# define HAL_USE_RTC TRUE -# define HAL_USE_SPI TRUE -#endif - -#if defined(LK_WIRELESS_ENABLE) || defined(ENCODER_ENABLE) -# define PAL_USE_CALLBACKS TRUE -#endif - -#include_next diff --git a/keyboards/keychron/q8_max/info.json b/keyboards/keychron/q8_max/info.json deleted file mode 100644 index 9baa393420..0000000000 --- a/keyboards/keychron/q8_max/info.json +++ /dev/null @@ -1,80 +0,0 @@ -{ - "keyboard_name": "Keychron Q8 Max", - "manufacturer": "Keychron", - "url": "https://github.com/Keychron", - "maintainer": "lokher", - "processor": "STM32F401", - "bootloader": "stm32-dfu", - "usb": { - "vid": "0x3434" - }, - "features": { - "bootmagic": true, - "extrakey" : true, - "mousekey" : true, - "dip_switch" : true, - "encoder": true, - "encoder_map": true, - "nkro" : true, - "rgb_matrix": true, - "raw" : true, - "send_string" : true - }, - "matrix_pins": { - "cols": ["C8", "C9", "A8", "A15", "C10", "C11", "C15", "C0", "C1", "C2", "C3", "A0", "A1", "A2", "A3"], - "rows": ["D2", "B3", "B4", "B5", "B6"] - }, - "diode_direction": "ROW2COL", - "encoder": { - "rotary": [ - { - "pin_a": "B14", - "pin_b": "B15" - } - ] - }, - "dip_switch" :{ - "pins": ["B7"] - }, - "rgb_matrix": { - "driver": "snled27351_spi", - "sleep": true, - "animations": { - "band_spiral_val": true, - "breathing": true, - "cycle_all": true, - "cycle_left_right": true, - "cycle_out_in": true, - "cycle_out_in_dual": true, - "cycle_pinwheel": true, - "cycle_spiral": true, - "cycle_up_down": true, - "digital_rain": true, - "dual_beacon": true, - "jellybean_raindrops": true, - "pixel_rain": true, - "rainbow_beacon": true, - "rainbow_moving_chevron": true, - "solid_reactive_multinexus": true, - "solid_reactive_multiwide": true, - "solid_reactive_simple": true, - "solid_splash": true, - "splash": true, - "typing_heatmap": true - } - }, - "eeprom": { - "wear_leveling": { - "driver": "embedded_flash", - "logical_size": 2048, - "backing_size": 4096 - } - }, - "dynamic_keymap": { - "layer_count": 5 - }, - "build": { - "debounce_type": "sym_eager_pk" - }, - "debounce": 20 -} diff --git a/keyboards/keychron/q8_max/mcuconf.h b/keyboards/keychron/q8_max/mcuconf.h deleted file mode 100644 index 89294ee64b..0000000000 --- a/keyboards/keychron/q8_max/mcuconf.h +++ /dev/null @@ -1,37 +0,0 @@ -/* Copyright 2024 @ 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 - -#include_next - -#undef STM32_HSECLK -#define STM32_HSECLK 16000000 - -#undef STM32_PLLM_VALUE -#define STM32_PLLM_VALUE 8 - -#undef STM32_PLLN_VALUE -#define STM32_PLLN_VALUE 96 - -#undef STM32_PLLP_VALUE -#define STM32_PLLP_VALUE 4 - -#undef STM32_PLLQ_VALUE -#define STM32_PLLQ_VALUE 4 - -#undef STM32_SPI_USE_SPI1 -#define STM32_SPI_USE_SPI1 TRUE diff --git a/keyboards/keychron/q8_max/q8_max.c b/keyboards/keychron/q8_max/q8_max.c deleted file mode 100644 index 0c4361f4e2..0000000000 --- a/keyboards/keychron/q8_max/q8_max.c +++ /dev/null @@ -1,61 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#include "quantum.h" -#include "keychron_task.h" -#ifdef FACTORY_TEST_ENABLE -# include "factory_test.h" -# include "keychron_common.h" -#endif -#ifdef LK_WIRELESS_ENABLE -# include "lkbt51.h" -# include "wireless.h" -# include "keychron_wireless_common.h" -# include "battery.h" -#endif - -#ifdef DIP_SWITCH_ENABLE -bool dip_switch_update_kb(uint8_t index, bool active) { - if (index == 0) { - default_layer_set(1UL << (active ? 1 : 0)); - } - dip_switch_update_user(index, active); - - return true; -} -#endif - -void keyboard_post_init_kb(void) { -#ifdef LK_WIRELESS_ENABLE - palSetLineMode(P2P4_MODE_SELECT_PIN, PAL_MODE_INPUT); - palSetLineMode(BT_MODE_SELECT_PIN, PAL_MODE_INPUT); - - lkbt51_init(false); - wireless_init(); -#endif - -#ifdef ENCODER_ENABLE - encoder_cb_init(); -#endif - - keyboard_post_init_user(); -} - -#ifdef LK_WIRELESS_ENABLE -bool lpm_is_kb_idle(void) { - return !factory_reset_indicating(); -} -#endif diff --git a/keyboards/keychron/q8_max/readme.md b/keyboards/keychron/q8_max/readme.md deleted file mode 100644 index f7f5cd844f..0000000000 --- a/keyboards/keychron/q8_max/readme.md +++ /dev/null @@ -1,21 +0,0 @@ -# Keychron Q8 Max - -![Keychron Q8 Max](https://cdn.shopify.com/s/files/1/0059/0630/1017/files/Q8-Max-7.jpg?v=1705654326) - -A customizable 65% ergonomic keyboard. - -* Keyboard Maintainer: [Keychron](https://github.com/keychron) -* Hardware Supported: Keychron Q8 Max -* Hardware Availability: [Keychron Q8 Max QMK/VIA Wireless Custom Mechanical Keyboard](https://www.keychron.com/products/keychron-q8-max-alice-layout-qmk-via-wireless-custom-mechanical-keyboard) - -Make example for this keyboard (after setting up your build environment): - - make keychron/q8_max/ansi_encoder:default - -Flashing example for this keyboard: - - make keychron/q8_max/ansi_encoder:default:flash - -**Reset Key**: Toggle mode switch to "Cable", hold down the *Esc* key or reset button underneath space bar while connecting the USB cable, - -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). diff --git a/keyboards/keychron/q8_max/rules.mk b/keyboards/keychron/q8_max/rules.mk deleted file mode 100644 index 4eaf6820bc..0000000000 --- a/keyboards/keychron/q8_max/rules.mk +++ /dev/null @@ -1,4 +0,0 @@ -include keyboards/keychron/common/wireless/wireless.mk -include keyboards/keychron/common/keychron_common.mk - -VPATH += $(TOP_DIR)/keyboards/keychron diff --git a/keyboards/keychron/q8_max/via_json/q8_max_ansi_encoder.json b/keyboards/keychron/q8_max/via_json/q8_max_ansi_encoder.json deleted file mode 100644 index 8809dba483..0000000000 --- a/keyboards/keychron/q8_max/via_json/q8_max_ansi_encoder.json +++ /dev/null @@ -1,351 +0,0 @@ -{ - "name": "Keychron Q8 Max ANSI Knob", - "vendorId": "0x3434", - "productId": "0x0880", - "keycodes": ["qmk_lighting"], - "menus": [ - { - "label": "Lighting", - "content": [ - { - "label": "Backlight", - "content": [ - { - "label": "Brightness", - "type": "range", - "options": [0, 255], - "content": ["id_qmk_rgb_matrix_brightness", 3, 1] - }, - { - "label": "Effect", - "type": "dropdown", - "content": ["id_qmk_rgb_matrix_effect", 3, 2], - "options": [ - ["None", 0], - ["Solid Color", 1], - ["Breathing", 2], - ["Band Spiral Val", 3], - ["Cycle All", 4], - ["Cycle Left Right", 5], - ["Cycle Up Down", 6], - ["Rainbow Moving Chevron", 7], - ["Cycle Out In", 8], - ["Cycle Out In Dual", 9], - ["Cycle Pinwheel", 10], - ["Cycle Spiral", 11], - ["Dual Beacon", 12], - ["Rainbow Beacon", 13], - ["Jellybean Raindrops", 14], - ["Pixel Rain", 15], - ["Typing Heatmap", 16], - ["Digital Rain", 17], - ["Reactive Simple", 18], - ["Reactive Multiwide", 19], - ["Reactive Multinexus", 20], - ["Splash", 21], - ["Solid Splash", 22] - ] - }, - { - "showIf": "{id_qmk_rgb_matrix_effect} > 1", - "label": "Effect Speed", - "type": "range", - "options": [0, 255], - "content": ["id_qmk_rgb_matrix_effect_speed", 3, 3] - }, - { - "showIf": "{id_qmk_rgb_matrix_effect} != 0 && ( {id_qmk_rgb_matrix_effect} < 4 || {id_qmk_rgb_matrix_effect} == 18 || ({id_qmk_rgb_matrix_effect} > 17 && {id_qmk_rgb_matrix_effect} != 21) ) ", - "label": "Color", - "type": "color", - "content": ["id_qmk_rgb_matrix_color", 3, 4] - } - ] - } - ] - } - ], - "customKeycodes": [ - {"name": "Left Option", "title": "Left Option", "shortName": "LOpt"}, - {"name": "Right Option", "title": "Right Option", "shortName": "ROpt"}, - {"name": "Left Cmd", "title": "Left Command", "shortName": "LCmd"}, - {"name": "Right Cmd", "title": "Right Command", "shortName": "RCmd"}, - {"name": "Misson Control", "title": "Misson Control in Mac", "shortName": "MCtl"}, - {"name": "Lanuch Pad", "title": "Lanuch Pad in Windows", "shortName": "LPad"}, - {"name": "Task View", "title": "Task View in Windows", "shortName": "Task"}, - {"name": "File Explorer", "title": "File Explorer in Windows", "shortName": "File"}, - {"name": "Screen shot", "title": "Screenshot in macOS", "shortName": "SShot"}, - {"name": "Cortana", "title": "Cortana in Windows", "shortName": "Cortana"}, - {"name": "Siri", "title": "Siri in macOS", "shortName": "Siri"}, - {"name": "Bluetooth Host 1", "title": "Bluetooth Host 1", "shortName": "BTH1"}, - {"name": "Bluetooth Host 2", "title": "Bluetooth Host 2", "shortName": "BTH2"}, - {"name": "Bluetooth Host 3", "title": "Bluetooth Host 3", "shortName": "BTH3"}, - {"name": "2.4G", "title": "2.4G", "shortName": "2.4G"}, - {"name": "Battery Level", "title": "Show battery level", "shortName": "Batt"} - ], - "matrix": {"rows": 5, "cols": 15}, - "layouts": { - "keymap": [ - [ - { - "x": 2.75 - }, - "0,2", - { - "x": 8.85 - }, - "0,11", - { - "x": 3.5, - "c": "#aaaaaa" - }, - "0,14\n\n\n\n\n\n\n\n\ne0" - ], - [ - { - "y": -0.85, - "x": 0.75, - "c": "#777777" - }, - "0,0\nESC", - { - "c": "#cccccc" - }, - "0,1" - ], - [ - { - "y": -0.85, - "x": 13.6 - }, - "0,12", - { - "c": "#aaaaaa", - "w": 2 - }, - "0,13" - ], - [ - { - "x": 0.5, - "w": 1.5 - }, - "1,0", - { - "c": "#cccccc" - }, - "1,1", - { - "x": 10.3 - }, - "1,11", - "1,12", - { - "w": 1.5, - "c": "#aaaaaa" - }, - "1,13" - ], - [ - { - "y": -0.9, - "x": 17.3 - }, - "1,14" - ], - [ - { - "y": -0.1, - "x": 0.25, - "w": 1.75 - }, - "2,0", - { - "c": "#cccccc" - }, - "2,1", - { - "x": 9.75 - }, - "2,11", - "2,12", - { - "c": "#777777", - "w": 2.25 - }, - "2,13" - ], - [ - { - "y": -0.9, - "x": 17.5, - "c": "#aaaaaa" - }, - "2,14" - ], - [ - { - "y": -0.1, - "w": 2.25 - }, - "3,0", - { - "c": "#cccccc" - }, - "3,2", - { - "x": 10.15 - }, - "3,12", - { - "c": "#aaaaaa", - "w": 1.75 - }, - "3,13" - ], - [ - { - "y": -0.75, - "x": 16.4, - "c": "#777777" - }, - "3,14" - ], - [ - { - "y": -0.25, - "c": "#aaaaaa", - "w": 1.25 - }, - "4,0", - { - "w": 1.25 - }, - "4,1" - ], - [ - { - "y": -0.75, - "x": 15.4, - "c": "#777777" - }, - "4,12", - "4,13", - "4,14" - ], - [ - { - "r": 6, - "y": -5.7, - "x": 3.85, - "c": "#cccccc" - }, - "0,3", - "0,4", - "0,5", - "0,6" - ], - [ - { - "x": 3.35 - }, - "1,2", - "1,3", - "1,4", - "1,5" - ], - [ - { - "x": 3.55 - }, - "2,2", - "2,3", - "2,4", - "2,5" - ], - [ - { - "x": 3.9 - }, - "3,3", - "3,4", - "3,5", - "3,6" - ], - [ - { - "x": 4, - "c": "#aaaaaa", - "w": 1.25 - }, - "4,2", - { - "w": 2.25 - }, - "4,3", - { - "c": "#aaaaaa" - }, - "4,6" - ], - [ - { - "r": -6, - "y": -3.2, - "x": 8.35, - "c": "#cccccc" - }, - "0,7", - "0,8", - { - "c": "#cccccc" - }, - "0,9", - "0,10" - ], - [ - { - "x": 7.9 - }, - "1,6", - "1,7", - "1,8", - "1,9", - "1,10" - ], - [ - { - "x": 8.25 - }, - "2,7", - "2,8", - "2,9", - "2,10" - ], - [ - { - "x": 7.8 - }, - "3,7", - "3,8", - "3,9", - "3,10", - "3,11" - ], - [ - { - "x": 7.8, - "c": "#aaaaaa" - }, - "4,7", - { - "w": 2.75 - }, - "4,8", - { - "c": "#aaaaaa" - }, - "4,9" - ] - ] - } -} diff --git a/keyboards/keychron/q8_pro/ansi_encoder/ansi_encoder.c b/keyboards/keychron/q8_pro/ansi_encoder/ansi_encoder.c deleted file mode 100644 index 6e25f30e3c..0000000000 --- a/keyboards/keychron/q8_pro/ansi_encoder/ansi_encoder.c +++ /dev/null @@ -1,101 +0,0 @@ -/* 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 . - */ - -#include "quantum.h" - -// clang-format off -#ifdef RGB_MATRIX_ENABLE -const snled27351_led_t g_snled27351_leds[RGB_MATRIX_LED_COUNT] = { -/* Refer to snled27351manual for these locations - * driver - * | R location - * | | G location - * | | | B location - * | | | | */ - {0, I_2, G_2, H_2}, - {0, I_3, G_3, H_3}, - {0, I_4, G_4, H_4}, - {0, I_5, G_5, H_5}, - {0, I_6, G_6, H_6}, - {0, I_7, G_7, H_7}, - {0, I_8, G_8, H_8}, - {0, I_9, G_9, H_9}, - {0, I_10, G_10, H_10}, - {0, I_11, G_11, H_11}, - {0, I_12, G_12, H_12}, - {0, I_13, G_13, H_13}, - {0, I_14, G_14, H_14}, - {0, I_15, G_15, H_15}, - - {0, F_2, D_2, E_2}, - {0, F_3, D_3, E_3}, - {0, F_4, D_4, E_4}, - {0, F_5, D_5, E_5}, - {0, F_6, D_6, E_6}, - {0, F_7, D_7, E_7}, - {0, F_8, D_8, E_8}, - {0, F_9, D_9, E_9}, - {0, F_10, D_10, E_10}, - {0, F_11, D_11, E_11}, - {0, F_12, D_12, E_12}, - {0, F_13, D_13, E_13}, - {0, F_14, D_14, E_14}, - {0, F_15, D_15, E_15}, - {0, F_16, D_16, E_16}, - - {1, C_15, A_15, B_15}, - {1, C_14, A_14, B_14}, - {1, C_13, A_13, B_13}, - {1, C_12, A_12, B_12}, - {1, C_11, A_11, B_11}, - {1, C_10, A_10, B_10}, - {1, C_8, A_8, B_8}, - {1, C_7, A_7, B_7}, - {1, C_6, A_6, B_6}, - {1, C_5, A_5, B_5}, - {1, C_4, A_4, B_4}, - {1, C_3, A_3, B_3}, - {1, C_2, A_2, B_2}, - {1, C_1, A_1, B_1}, - - {1, I_15, G_15, H_15}, - {1, I_13, G_13, H_13}, - {1, I_12, G_12, H_12}, - {1, I_11, G_11, H_11}, - {1, I_10, G_10, H_10}, - {1, I_9, G_9, H_9}, - {1, I_8, G_8, H_8}, - {1, I_7, G_7, H_7}, - {1, I_6, G_6, H_6}, - {1, I_5, G_5, H_5}, - {1, I_4, G_4, H_4}, - {1, I_3, G_3, H_3}, - {1, I_2, G_2, H_2}, - {1, I_1, G_1, H_1}, - - {1, F_15, D_15, E_15}, - {1, F_14, D_14, E_14}, - {1, F_13, D_13, E_13}, - {1, F_12, D_12, E_12}, - {1, F_9, D_9, E_9}, - {1, F_8, D_8, E_8}, - {1, F_7, D_7, E_7}, - {1, F_6, D_6, E_6}, - {1, F_3, D_3, E_3}, - {1, F_2, D_2, E_2}, - {1, F_1, D_1, E_1} -}; -#endif diff --git a/keyboards/keychron/q8_pro/ansi_encoder/config.h b/keyboards/keychron/q8_pro/ansi_encoder/config.h deleted file mode 100644 index 415a24a7bb..0000000000 --- a/keyboards/keychron/q8_pro/ansi_encoder/config.h +++ /dev/null @@ -1,50 +0,0 @@ -/* 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 . - */ - -#pragma once - -#ifdef RGB_MATRIX_ENABLE -/* RGB Matrix Driver Configuration */ -# define DRIVER_COUNT 2 -# define DRIVER_ADDR_1 0b1110111 -# define DRIVER_ADDR_2 0b1110100 - -/* RGB Matrix Configuration */ -# define DRIVER_1_LED_TOTAL 29 -# define DRIVER_2_LED_TOTAL 39 -# define RGB_MATRIX_LED_COUNT (DRIVER_1_LED_TOTAL + DRIVER_2_LED_TOTAL) - -/* Set to infinit, which is use in USB mode by default */ -# define RGB_MATRIX_TIMEOUT RGB_MATRIX_TIMEOUT_INFINITE - -/* Allow to shutdown driver to save power */ -# define RGB_MATRIX_DRIVER_SHUTDOWN_ENABLE - -/* Turn off backllit if brightness value is low */ -# define RGB_MATRIX_BRIGHTNESS_TURN_OFF_VAL 48 - -/* Indication led */ -# define CAPS_LOCK_INDEX 29 -# define LOW_BAT_IND_INDEX 60 - -/* Enable Reactive Animation */ -# define RGB_MATRIX_FRAMEBUFFER_EFFECTS -# define RGB_MATRIX_KEYPRESSES - -/* Set LED driver current */ -# define SNLED27351_CURRENT_TUNE \ - { 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40 } -#endif diff --git a/keyboards/keychron/q8_pro/ansi_encoder/info.json b/keyboards/keychron/q8_pro/ansi_encoder/info.json deleted file mode 100644 index b4c31d62c4..0000000000 --- a/keyboards/keychron/q8_pro/ansi_encoder/info.json +++ /dev/null @@ -1,161 +0,0 @@ -{ - "usb": { - "pid": "0x0680", - "device_version": "1.0.0" - }, - "layouts": { - "LAYOUT_69_ansi": { - "layout": [ - {"matrix":[0, 0], "x":0.75, "y":0.25}, - {"matrix":[0, 1], "x":1.75, "y":0.25}, - {"matrix":[0, 2], "x":2.75, "y":0}, - {"matrix":[0, 3], "x":3.75, "y":0.25}, - {"matrix":[0, 4], "x":4.75, "y":0.25}, - {"matrix":[0, 5], "x":5.75, "y":0.25}, - {"matrix":[0, 6], "x":6.75, "y":0.25}, - {"matrix":[0, 7], "x":9.5, "y":0.25}, - {"matrix":[0, 8], "x":10.5, "y":0.25}, - {"matrix":[0, 9], "x":11.5, "y":0.25}, - {"matrix":[0,10], "x":12.5, "y":0.25}, - {"matrix":[0,11], "x":13.5, "y":0}, - {"matrix":[0,12], "x":14.5, "y":0.25}, - {"matrix":[0,13], "x":15.5, "y":0.25, "w":2}, - {"matrix":[0,14], "x":18, "y":0}, - - {"matrix":[1, 0], "x":0.5, "y":1.25, "w":1.5}, - {"matrix":[1, 1], "x":2, "y":1.25}, - {"matrix":[1, 2], "x":3.25, "y":1.25}, - {"matrix":[1, 3], "x":4.25, "y":1.25}, - {"matrix":[1, 4], "x":5.25, "y":1.25}, - {"matrix":[1, 5], "x":6.25, "y":1.25}, - {"matrix":[1, 6], "x":9, "y":1.25}, - {"matrix":[1, 7], "x":10, "y":1.25}, - {"matrix":[1, 8], "x":11, "y":1.25}, - {"matrix":[1, 9], "x":12, "y":1.25}, - {"matrix":[1,10], "x":13.25, "y":1.25}, - {"matrix":[1,11], "x":14.25, "y":1.25}, - {"matrix":[1,12], "x":15.25, "y":1.25}, - {"matrix":[1,13], "x":16.25, "y":1.25, "w":1.5}, - {"matrix":[1,14], "x":18.25, "y":1.5}, - - {"matrix":[2, 0], "x":0.25, "y":2.25, "w":1.75}, - {"matrix":[2, 1], "x":2, "y":2.25}, - {"matrix":[2, 2], "x":3.5, "y":2.25}, - {"matrix":[2, 3], "x":4.5, "y":2.25}, - {"matrix":[2, 4], "x":5.5, "y":2.25}, - {"matrix":[2, 5], "x":6.5, "y":2.25}, - {"matrix":[2, 7], "x":9.25, "y":2.25}, - {"matrix":[2, 8], "x":10.25, "y":2.25}, - {"matrix":[2, 9], "x":11.25, "y":2.25}, - {"matrix":[2,10], "x":12.25, "y":2.25}, - {"matrix":[2,11], "x":13.75, "y":2.25}, - {"matrix":[2,12], "x":14.75, "y":2.25}, - {"matrix":[2,13], "x":15.75, "y":2.25, "w":2.25}, - {"matrix":[2,14], "x":18.5, "y":2.5}, - - {"matrix":[3, 0], "x":0, "y":3.25, "w":2.25}, - {"matrix":[3, 2], "x":2.25, "y":3.25}, - {"matrix":[3, 3], "x":3.75, "y":3.25}, - {"matrix":[3, 4], "x":4.75, "y":3.25}, - {"matrix":[3, 5], "x":5.75, "y":3.25}, - {"matrix":[3, 6], "x":6.75, "y":3.25}, - {"matrix":[3, 7], "x":8.5, "y":3.25}, - {"matrix":[3, 8], "x":9.5, "y":3.25}, - {"matrix":[3, 9], "x":10.5, "y":3.25}, - {"matrix":[3,10], "x":11.5, "y":3.25}, - {"matrix":[3,11], "x":12.5, "y":3.25}, - {"matrix":[3,12], "x":14.25, "y":3.25}, - {"matrix":[3,13], "x":15.25, "y":3.25, "w":1.75}, - {"matrix":[3,14], "x":17.25, "y":3.5}, - - {"matrix":[4, 0], "x":0, "y":4.25, "w":1.25}, - {"matrix":[4, 1], "x":1.25, "y":4.25, "w":1.25}, - {"matrix":[4, 2], "x":3.75, "y":4.25, "w":1.25}, - {"matrix":[4, 3], "x":5, "y":4.25, "w":2.25}, - {"matrix":[4, 6], "x":7.25, "y":4.25}, - {"matrix":[4, 7], "x":8.75, "y":4.25}, - {"matrix":[4, 8], "x":9.75, "y":4.25, "w":2.75}, - {"matrix":[4, 9], "x":12.5, "y":4.25}, - {"matrix":[4,12], "x":16.25, "y":4.5}, - {"matrix":[4,13], "x":17.25, "y":4.5}, - {"matrix":[4,14], "x":18.25, "y":4.5} - ] - } - }, - "rgb_matrix": { - "layout": [ - {"matrix":[0, 0], "flags":1, "x":7, "y":1}, - {"matrix":[0, 1], "flags":4, "x":20, "y":1}, - {"matrix":[0, 2], "flags":4, "x":33, "y":0}, - {"matrix":[0, 3], "flags":4, "x":48, "y":3}, - {"matrix":[0, 4], "flags":4, "x":61, "y":6}, - {"matrix":[0, 5], "flags":4, "x":74, "y":8}, - {"matrix":[0, 6], "flags":4, "x":87, "y":11}, - {"matrix":[0, 7], "flags":4, "x":106, "y":11}, - {"matrix":[0, 8], "flags":4, "x":119, "y":8}, - {"matrix":[0, 9], "flags":4, "x":132, "y":6}, - {"matrix":[0, 10], "flags":4, "x":145, "y":3}, - {"matrix":[0, 11], "flags":4, "x":160, "y":0}, - {"matrix":[0, 12], "flags":1, "x":173, "y":1}, - {"matrix":[0, 13], "flags":1, "x":193, "y":1}, - - {"matrix":[1, 0], "flags":1, "x":7, "y":14}, - {"matrix":[1, 1], "flags":8, "x":24, "y":14}, - {"matrix":[1, 2], "flags":8, "x":39, "y":14}, - {"matrix":[1, 3], "flags":8, "x":52, "y":17}, - {"matrix":[1, 4], "flags":4, "x":65, "y":20}, - {"matrix":[1, 5], "flags":4, "x":78, "y":22}, - {"matrix":[1, 6], "flags":4, "x":103, "y":25}, - {"matrix":[1, 7], "flags":4, "x":116, "y":22}, - {"matrix":[1, 8], "flags":4, "x":129, "y":20}, - {"matrix":[1, 9], "flags":4, "x":142, "y":17}, - {"matrix":[1, 10], "flags":4, "x":155, "y":14}, - {"matrix":[1, 11], "flags":4, "x":170, "y":14}, - {"matrix":[1, 12], "flags":4, "x":183, "y":14}, - {"matrix":[1, 13], "flags":4, "x":200, "y":14}, - {"matrix":[1, 14], "flags":1, "x":222, "y":16}, - - {"matrix":[2, 0], "flags":8, "x":6, "y":27}, - {"matrix":[2, 1], "flags":4, "x":24, "y":27}, - {"matrix":[2, 2], "flags":4, "x":39, "y":28}, - {"matrix":[2, 3], "flags":4, "x":52, "y":30}, - {"matrix":[2, 4], "flags":1, "x":65, "y":33}, - {"matrix":[2, 5], "flags":4, "x":78, "y":36}, - {"matrix":[2, 7], "flags":4, "x":109, "y":37}, - {"matrix":[2, 8], "flags":4, "x":122, "y":34}, - {"matrix":[2, 9], "flags":4, "x":135, "y":32}, - {"matrix":[2, 10], "flags":4, "x":148, "y":29}, - {"matrix":[2, 11], "flags":4, "x":162, "y":27}, - {"matrix":[2, 12], "flags":4, "x":176, "y":27}, - {"matrix":[2, 13], "flags":1, "x":197, "y":27}, - {"matrix":[2, 14], "flags":1, "x":224, "y":29}, - - {"matrix":[3, 0], "flags":1, "x":7, "y":40}, - {"matrix":[3, 2], "flags":4, "x":28, "y":40}, - {"matrix":[3, 3], "flags":4, "x":43, "y":42}, - {"matrix":[3, 4], "flags":4, "x":56, "y":44}, - {"matrix":[3, 5], "flags":4, "x":69, "y":47}, - {"matrix":[3, 6], "flags":4, "x":82, "y":50}, - {"matrix":[3, 7], "flags":4, "x":102, "y":52}, - {"matrix":[3, 8], "flags":4, "x":115, "y":49}, - {"matrix":[3, 9], "flags":4, "x":128, "y":46}, - {"matrix":[3, 10], "flags":4, "x":141, "y":44}, - {"matrix":[3, 11], "flags":4, "x":154, "y":41}, - {"matrix":[3, 12], "flags":4, "x":169, "y":40}, - {"matrix":[3, 13], "flags":1, "x":187, "y":40}, - {"matrix":[3, 14], "flags":1, "x":209, "y":43}, - - {"matrix":[4, 0], "flags":1, "x":0, "y":53}, - {"matrix":[4, 1], "flags":1, "x":17, "y":53}, - {"matrix":[4, 2], "flags":1, "x":42, "y":55}, - {"matrix":[4, 3], "flags":4, "x":65, "y":60}, - {"matrix":[4, 6], "flags":4, "x":86, "y":64}, - {"matrix":[4, 7], "flags":4, "x":107, "y":64}, - {"matrix":[4, 8], "flags":4, "x":131, "y":59}, - {"matrix":[4, 9], "flags":1, "x":156, "y":54}, - {"matrix":[4, 12], "flags":1, "x":196, "y":56}, - {"matrix":[4, 13], "flags":1, "x":209, "y":56}, - {"matrix":[4, 14], "flags":1, "x":222, "y":56} - ] - } -} diff --git a/keyboards/keychron/q8_pro/ansi_encoder/keymaps/default/keymap.c b/keyboards/keychron/q8_pro/ansi_encoder/keymaps/default/keymap.c deleted file mode 100644 index c5401f5af8..0000000000 --- a/keyboards/keychron/q8_pro/ansi_encoder/keymaps/default/keymap.c +++ /dev/null @@ -1,73 +0,0 @@ -/* 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 . - */ - -#include QMK_KEYBOARD_H - -// clang-format off -enum layers{ - MAC_BASE, - WIN_BASE, - MAC_FN1, - WIN_FN1, - FN2, -}; - -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_69_ansi( - 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_MUTE, - 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_DEL, - 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_HOME, - KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, - KC_LCTL, KC_LOPTN, KC_LCMMD, KC_SPC, MO(MAC_FN1), MO(FN2), KC_SPC, KC_RCMMD, KC_LEFT, KC_DOWN, KC_RGHT), - - [WIN_BASE] = LAYOUT_69_ansi( - 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_MUTE, - 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_DEL, - 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_HOME, - KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, - KC_LCTL, KC_LWIN, KC_LALT, KC_SPC, MO(WIN_FN1), MO(FN2), KC_SPC, KC_RALT, KC_LEFT, KC_DOWN, KC_RGHT), - - [MAC_FN1] = LAYOUT_69_ansi( - KC_GRV, KC_BRID, KC_BRIU, KC_MCTL, KC_LPAD, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, RGB_TOG, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, NK_TOGG, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - - [WIN_FN1] = LAYOUT_69_ansi( - KC_GRV, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, RGB_TOG, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, NK_TOGG, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - - [FN2] = LAYOUT_69_ansi( - KC_TILD, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, BAT_LVL, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______) -}; - -#if defined(ENCODER_MAP_ENABLE) -const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][2] = { - [MAC_BASE] = {ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [WIN_BASE] = {ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [MAC_FN1] = {ENCODER_CCW_CW(RGB_VAD, RGB_VAI)}, - [WIN_FN1] = {ENCODER_CCW_CW(RGB_VAD, RGB_VAI)}, - [FN2] = {ENCODER_CCW_CW(_______, _______)}, -}; -#endif // ENCODER_MAP_ENABLE diff --git a/keyboards/keychron/q8_pro/ansi_encoder/keymaps/default/rules.mk b/keyboards/keychron/q8_pro/ansi_encoder/keymaps/default/rules.mk deleted file mode 100644 index ee32568148..0000000000 --- a/keyboards/keychron/q8_pro/ansi_encoder/keymaps/default/rules.mk +++ /dev/null @@ -1 +0,0 @@ -ENCODER_MAP_ENABLE = yes diff --git a/keyboards/keychron/q8_pro/ansi_encoder/keymaps/via/keymap.c b/keyboards/keychron/q8_pro/ansi_encoder/keymaps/via/keymap.c deleted file mode 100644 index c5401f5af8..0000000000 --- a/keyboards/keychron/q8_pro/ansi_encoder/keymaps/via/keymap.c +++ /dev/null @@ -1,73 +0,0 @@ -/* 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 . - */ - -#include QMK_KEYBOARD_H - -// clang-format off -enum layers{ - MAC_BASE, - WIN_BASE, - MAC_FN1, - WIN_FN1, - FN2, -}; - -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_69_ansi( - 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_MUTE, - 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_DEL, - 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_HOME, - KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, - KC_LCTL, KC_LOPTN, KC_LCMMD, KC_SPC, MO(MAC_FN1), MO(FN2), KC_SPC, KC_RCMMD, KC_LEFT, KC_DOWN, KC_RGHT), - - [WIN_BASE] = LAYOUT_69_ansi( - 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_MUTE, - 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_DEL, - 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_HOME, - KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, - KC_LCTL, KC_LWIN, KC_LALT, KC_SPC, MO(WIN_FN1), MO(FN2), KC_SPC, KC_RALT, KC_LEFT, KC_DOWN, KC_RGHT), - - [MAC_FN1] = LAYOUT_69_ansi( - KC_GRV, KC_BRID, KC_BRIU, KC_MCTL, KC_LPAD, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, RGB_TOG, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, NK_TOGG, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - - [WIN_FN1] = LAYOUT_69_ansi( - KC_GRV, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, RGB_TOG, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, NK_TOGG, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - - [FN2] = LAYOUT_69_ansi( - KC_TILD, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, BAT_LVL, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______) -}; - -#if defined(ENCODER_MAP_ENABLE) -const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][2] = { - [MAC_BASE] = {ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [WIN_BASE] = {ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [MAC_FN1] = {ENCODER_CCW_CW(RGB_VAD, RGB_VAI)}, - [WIN_FN1] = {ENCODER_CCW_CW(RGB_VAD, RGB_VAI)}, - [FN2] = {ENCODER_CCW_CW(_______, _______)}, -}; -#endif // ENCODER_MAP_ENABLE diff --git a/keyboards/keychron/q8_pro/ansi_encoder/keymaps/via/rules.mk b/keyboards/keychron/q8_pro/ansi_encoder/keymaps/via/rules.mk deleted file mode 100644 index f1adcab005..0000000000 --- a/keyboards/keychron/q8_pro/ansi_encoder/keymaps/via/rules.mk +++ /dev/null @@ -1,2 +0,0 @@ -VIA_ENABLE = yes -ENCODER_MAP_ENABLE = yes diff --git a/keyboards/keychron/q8_pro/ansi_encoder/rules.mk b/keyboards/keychron/q8_pro/ansi_encoder/rules.mk deleted file mode 100644 index 6e7633bfe0..0000000000 --- a/keyboards/keychron/q8_pro/ansi_encoder/rules.mk +++ /dev/null @@ -1 +0,0 @@ -# This file intentionally left blank diff --git a/keyboards/keychron/q8_pro/config.h b/keyboards/keychron/q8_pro/config.h deleted file mode 100644 index 66d4473d87..0000000000 --- a/keyboards/keychron/q8_pro/config.h +++ /dev/null @@ -1,91 +0,0 @@ -/* 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 . - */ - -#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 WEAR_LEVELING_LOGICAL_SIZE 2048 -#define WEAR_LEVELING_BACKING_SIZE (WEAR_LEVELING_LOGICAL_SIZE * 2) -#define DYNAMIC_KEYMAP_EEPROM_MAX_ADDR 2047 - -/* Encoder Configuration */ -#ifdef ENCODER_ENABLE -# define ENCODER_DEFAULT_POS 0x3 -#endif - -/* HC595 Driver configuretion */ -#define HC595_OFFSET_INDEX 1 -#define HC595_END_INDEX 14 - -/* Factory test keys */ -#define FN_KEY1 MO(4) diff --git a/keyboards/keychron/q8_pro/halconf.h b/keyboards/keychron/q8_pro/halconf.h deleted file mode 100644 index 35209171cc..0000000000 --- a/keyboards/keychron/q8_pro/halconf.h +++ /dev/null @@ -1,32 +0,0 @@ -/* Copyright 2023 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 _CHIBIOS_HAL_CONF_VER_8_0_ - -#define HAL_USE_I2C TRUE - -#if defined(ENCODER_ENBALE) || defined(KC_BLUETOOTH_ENABLE) -# define PAL_USE_CALLBACKS TRUE -#endif - -#ifdef KC_BLUETOOTH_ENABLE -# define HAL_USE_SERIAL TRUE -# define HAL_USE_RTC TRUE -#endif - -#include_next diff --git a/keyboards/keychron/q8_pro/info.json b/keyboards/keychron/q8_pro/info.json deleted file mode 100644 index 4f194cbbe4..0000000000 --- a/keyboards/keychron/q8_pro/info.json +++ /dev/null @@ -1,64 +0,0 @@ -{ - "manufacturer": "Keychron", - "keyboard_name": "Keychron Q8 Pro", - "url": "https://github.com/Keychron", - "maintainer": "lalalademaxiya1", - "processor": "STM32L432", - "bootloader": "stm32-dfu", - "usb": { - "vid": "0x3434" - }, - "features": { - "bootmagic": true, - "command": false, - "console": false, - "extrakey": true, - "mousekey": true, - "nkro": true, - "rgb_matrix": true, - "dip_switch": true, - "encoder": true, - "raw": true - }, - "rgb_matrix": { - "driver": "snled27351", - "animations": { - "breathing": true, - "band_spiral_val": true, - "cycle_all": true, - "cycle_left_right": true, - "cycle_up_down": true, - "rainbow_moving_chevron": true, - "cycle_out_in": true, - "cycle_out_in_dual": true, - "cycle_pinwheel": true, - "cycle_spiral": true, - "dual_beacon": true, - "rainbow_beacon": true, - "jellybean_raindrops": true, - "pixel_rain": true, - "typing_heatmap": true, - "digital_rain": true, - "solid_reactive_simple": true, - "solid_reactive_multiwide": true, - "solid_reactive_multinexus": true, - "splash": true, - "solid_splash": true - } - }, - "matrix_pins": { - "cols": [null, null, null, null, null, null, null, null, null, null, null, null, null, null, null], - "rows": ["B4", "B3", "A15", "A14", "A13"], - "custom": true, - "custom_lite": true - }, - "diode_direction": "ROW2COL", - "encoder": { - "rotary": [ - {"pin_a": "A0", "pin_b": "A10"} - ] - }, - "dynamic_keymap": { - "layer_count": 5 - } -} diff --git a/keyboards/keychron/q8_pro/iso_encoder/config.h b/keyboards/keychron/q8_pro/iso_encoder/config.h deleted file mode 100644 index fb2b117358..0000000000 --- a/keyboards/keychron/q8_pro/iso_encoder/config.h +++ /dev/null @@ -1,50 +0,0 @@ -/* 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 . - */ - -#pragma once - -#ifdef RGB_MATRIX_ENABLE -/* RGB Matrix Driver Configuration */ -# define DRIVER_COUNT 2 -# define DRIVER_ADDR_1 0b1110111 -# define DRIVER_ADDR_2 0b1110100 - -/* RGB Matrix Configuration */ -# define DRIVER_1_LED_TOTAL 29 -# define DRIVER_2_LED_TOTAL 40 -# define RGB_MATRIX_LED_COUNT (DRIVER_1_LED_TOTAL + DRIVER_2_LED_TOTAL) - -/* Set to infinit, which is use in USB mode by default */ -# define RGB_MATRIX_TIMEOUT RGB_MATRIX_TIMEOUT_INFINITE - -/* Allow to shutdown driver to save power */ -# define RGB_MATRIX_DRIVER_SHUTDOWN_ENABLE - -/* Turn off backllit if brightness value is low */ -# define RGB_MATRIX_BRIGHTNESS_TURN_OFF_VAL 48 - -/* Indication led */ -# define CAPS_LOCK_INDEX 28 -# define LOW_BAT_IND_INDEX 61 - -/* Enable Reactive Animation */ -# define RGB_MATRIX_FRAMEBUFFER_EFFECTS -# define RGB_MATRIX_KEYPRESSES - -/* Set LED driver current */ -# define SNLED27351_CURRENT_TUNE \ - { 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40 } -#endif diff --git a/keyboards/keychron/q8_pro/iso_encoder/info.json b/keyboards/keychron/q8_pro/iso_encoder/info.json deleted file mode 100644 index f1b172f4f2..0000000000 --- a/keyboards/keychron/q8_pro/iso_encoder/info.json +++ /dev/null @@ -1,163 +0,0 @@ -{ - "usb": { - "pid": "0x0681", - "device_version": "1.0.0" - }, - "layouts": { - "LAYOUT_70_iso": { - "layout": [ - {"matrix":[0,0], "x":0.75, "y":0.15}, - {"matrix":[0,1], "x":1.75, "y":0.15}, - {"matrix":[0,2], "x":2.75, "y":0}, - {"matrix":[0,3], "x":3.85, "y":-0.15}, - {"matrix":[0,4], "x":4.85, "y":-0.15}, - {"matrix":[0,5], "x":5.85, "y":-0.15}, - {"matrix":[0,6], "x":6.85, "y":-0.15}, - {"matrix":[0,7], "x":8.35, "y":1.65}, - {"matrix":[0,8], "x":9.35, "y":1.65}, - {"matrix":[0,9], "x":10.35, "y":1.65}, - {"matrix":[0,10], "x":11.35, "y":1.65}, - {"matrix":[0,11], "x":12.6, "y":0}, - {"matrix":[0,12], "x":13.6, "y":0.3}, - {"matrix":[0,13], "x":14.6, "y":0.3, "w":2}, - {"matrix":[0,14], "x":17.1, "y":0}, - - {"matrix":[1,0], "x":0.5, "y":1.3, "w":1.5}, - {"matrix":[1,1], "x":2, "y":1.3}, - {"matrix":[1,2], "x":3.35, "y":0.85}, - {"matrix":[1,3], "x":4.35, "y":0.85}, - {"matrix":[1,4], "x":5.35, "y":0.85}, - {"matrix":[1,5], "x":6.35, "y":0.85}, - {"matrix":[1,6], "x":7.9, "y":2.65}, - {"matrix":[1,7], "x":8.9, "y":2.65}, - {"matrix":[1,8], "x":9.9, "y":2.65}, - {"matrix":[1,9], "x":10.9, "y":2.65}, - {"matrix":[1,10], "x":11.9, "y":2.65}, - {"matrix":[1,11], "x":13.5, "y":1.3}, - {"matrix":[1,12], "x":14.5, "y":1.3}, - {"matrix":[1,14], "x":17.3, "y":1.4}, - - {"matrix":[2,0], "x":0.25, "y":2.3, "w":1.75}, - {"matrix":[2,1], "x":2, "y":2.3}, - {"matrix":[2,2], "x":3.55, "y":1.85}, - {"matrix":[2,3], "x":4.55, "y":1.85}, - {"matrix":[2,4], "x":5.55, "y":1.85}, - {"matrix":[2,5], "x":6.55, "y":1.85}, - {"matrix":[2,7], "x":8.25, "y":3.65}, - {"matrix":[2,8], "x":9.25, "y":3.65}, - {"matrix":[2,9], "x":10.25, "y":3.65}, - {"matrix":[2,10], "x":11.25, "y":3.65}, - {"matrix":[2,11], "x":12.75, "y":2.3}, - {"matrix":[2,12], "x":13.75, "y":2.3}, - {"matrix":[2,13], "x":14.75, "y":2.3}, - {"matrix":[1,13], "x":15.75, "y":1.3, "w":1.25, "h":2}, - {"matrix":[2,14], "x":17.5, "y":2.4}, - - {"matrix":[3,0], "x":0, "y":3.3, "w":1.25}, - {"matrix":[3,1], "x":1.25, "y":3.3}, - {"matrix":[3,2], "x":2.25, "y":3.3}, - {"matrix":[3,3], "x":3.9, "y":2.85}, - {"matrix":[3,4], "x":4.9, "y":2.85}, - {"matrix":[3,5], "x":5.9, "y":2.85}, - {"matrix":[3,6], "x":6.9, "y":2.85}, - {"matrix":[3,7], "x":7.8, "y":4.65}, - {"matrix":[3,8], "x":8.8, "y":4.65}, - {"matrix":[3,9], "x":9.8, "y":4.65}, - {"matrix":[3,10], "x":10.8, "y":4.65}, - {"matrix":[3,11], "x":11.8, "y":4.65}, - {"matrix":[3,12], "x":13.4, "y":3.3}, - {"matrix":[3,13], "x":14.4, "y":3.3, "w":1.75}, - {"matrix":[3,14], "x":16.4, "y":3.55}, - - {"matrix":[4,0], "x":0, "y":4.3, "w":1.25}, - {"matrix":[4,1], "x":1.25, "y":4.3, "w":1.25}, - {"matrix":[4,2], "x":4, "y":3.85, "w":1.25}, - {"matrix":[4,3], "x":5.25, "y":3.85, "w":2.25}, - {"matrix":[4,6], "x":7.5, "y":3.85}, - {"matrix":[4,7], "x":7.8, "y":5.65}, - {"matrix":[4,8], "x":8.8, "y":5.65, "w":2.75}, - {"matrix":[4,9], "x":11.55, "y":5.65}, - {"matrix":[4,12], "x":15.4, "y":4.55}, - {"matrix":[4,13], "x":16.4, "y":4.55}, - {"matrix":[4,14], "x":17.4, "y":4.55} - ] - } - }, - "rgb_matrix": { - "layout": [ - {"matrix":[0, 0], "flags":1, "x":7, "y":1}, - {"matrix":[0, 1], "flags":4, "x":20, "y":1}, - {"matrix":[0, 2], "flags":4, "x":33, "y":0}, - {"matrix":[0, 3], "flags":4, "x":48, "y":3}, - {"matrix":[0, 4], "flags":4, "x":61, "y":6}, - {"matrix":[0, 5], "flags":4, "x":74, "y":8}, - {"matrix":[0, 6], "flags":4, "x":87, "y":11}, - {"matrix":[0, 7], "flags":4, "x":106, "y":11}, - {"matrix":[0, 8], "flags":4, "x":119, "y":8}, - {"matrix":[0, 9], "flags":4, "x":132, "y":6}, - {"matrix":[0, 10], "flags":4, "x":145, "y":3}, - {"matrix":[0, 11], "flags":4, "x":160, "y":0}, - {"matrix":[0, 12], "flags":1, "x":173, "y":1}, - {"matrix":[0, 13], "flags":1, "x":193, "y":1}, - - {"matrix":[1, 0], "flags":1, "x":7, "y":14}, - {"matrix":[1, 1], "flags":8, "x":24, "y":14}, - {"matrix":[1, 2], "flags":8, "x":39, "y":14}, - {"matrix":[1, 3], "flags":8, "x":52, "y":17}, - {"matrix":[1, 4], "flags":4, "x":65, "y":20}, - {"matrix":[1, 5], "flags":4, "x":78, "y":22}, - {"matrix":[1, 6], "flags":4, "x":103, "y":25}, - {"matrix":[1, 7], "flags":4, "x":116, "y":22}, - {"matrix":[1, 8], "flags":4, "x":129, "y":20}, - {"matrix":[1, 9], "flags":4, "x":142, "y":17}, - {"matrix":[1, 10], "flags":4, "x":155, "y":14}, - {"matrix":[1, 11], "flags":4, "x":172, "y":14}, - {"matrix":[1, 12], "flags":4, "x":183, "y":14}, - {"matrix":[1, 14], "flags":1, "x":222, "y":16}, - - {"matrix":[2, 0], "flags":8, "x":6, "y":27}, - {"matrix":[2, 1], "flags":4, "x":24, "y":27}, - {"matrix":[2, 2], "flags":4, "x":39, "y":28}, - {"matrix":[2, 3], "flags":4, "x":52, "y":30}, - {"matrix":[2, 4], "flags":4, "x":65, "y":33}, - {"matrix":[2, 5], "flags":4, "x":78, "y":36}, - {"matrix":[2, 7], "flags":4, "x":109, "y":37}, - {"matrix":[2, 8], "flags":4, "x":122, "y":34}, - {"matrix":[2, 9], "flags":4, "x":135, "y":32}, - {"matrix":[2, 10], "flags":4, "x":148, "y":29}, - {"matrix":[2, 11], "flags":4, "x":162, "y":27}, - {"matrix":[2, 12], "flags":4, "x":176, "y":27}, - {"matrix":[2, 13], "flags":1, "x":189, "y":27}, - {"matrix":[1, 13], "flags":1, "x":207, "y":22}, - {"matrix":[2, 14], "flags":1, "x":224, "y":29}, - - {"matrix":[3, 0], "flags":1, "x":0, "y":40}, - {"matrix":[3, 1], "flags":1, "x":15, "y":40}, - {"matrix":[3, 2], "flags":4, "x":28, "y":40}, - {"matrix":[3, 3], "flags":4, "x":43, "y":42}, - {"matrix":[3, 4], "flags":4, "x":56, "y":44}, - {"matrix":[3, 5], "flags":4, "x":69, "y":47}, - {"matrix":[3, 6], "flags":4, "x":82, "y":50}, - {"matrix":[3, 7], "flags":4, "x":102, "y":52}, - {"matrix":[3, 8], "flags":4, "x":115, "y":49}, - {"matrix":[3, 9], "flags":4, "x":128, "y":46}, - {"matrix":[3, 10], "flags":4, "x":141, "y":44}, - {"matrix":[3, 11], "flags":4, "x":154, "y":41}, - {"matrix":[3, 12], "flags":4, "x":169, "y":40}, - {"matrix":[3, 13], "flags":1, "x":187, "y":40}, - {"matrix":[3, 14], "flags":1, "x":209, "y":43}, - - {"matrix":[4, 0], "flags":1, "x":0, "y":53}, - {"matrix":[4, 1], "flags":1, "x":17, "y":53}, - {"matrix":[4, 2], "flags":1, "x":42, "y":55}, - {"matrix":[4, 3], "flags":4, "x":65, "y":60}, - {"matrix":[4, 6], "flags":1, "x":86, "y":64}, - {"matrix":[4, 7], "flags":1, "x":104, "y":64}, - {"matrix":[4, 8], "flags":4, "x":129, "y":59}, - {"matrix":[4, 9], "flags":1, "x":153, "y":54}, - {"matrix":[4, 12], "flags":1, "x":196, "y":56}, - {"matrix":[4, 13], "flags":1, "x":209, "y":56}, - {"matrix":[4, 14], "flags":1, "x":222, "y":56} - ] - } -} diff --git a/keyboards/keychron/q8_pro/iso_encoder/iso_encoder.c b/keyboards/keychron/q8_pro/iso_encoder/iso_encoder.c deleted file mode 100644 index 5fdf911b9a..0000000000 --- a/keyboards/keychron/q8_pro/iso_encoder/iso_encoder.c +++ /dev/null @@ -1,102 +0,0 @@ -/* 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 . - */ - -#include "quantum.h" - -// clang-format off -#ifdef RGB_MATRIX_ENABLE -const snled27351_led_t g_snled27351_leds[RGB_MATRIX_LED_COUNT] = { -/* Refer to snled27351manual for these locations - * driver - * | R location - * | | G location - * | | | B location - * | | | | */ - {0, I_2, G_2, H_2}, - {0, I_3, G_3, H_3}, - {0, I_4, G_4, H_4}, - {0, I_5, G_5, H_5}, - {0, I_6, G_6, H_6}, - {0, I_7, G_7, H_7}, - {0, I_8, G_8, H_8}, - {0, I_9, G_9, H_9}, - {0, I_10, G_10, H_10}, - {0, I_11, G_11, H_11}, - {0, I_12, G_12, H_12}, - {0, I_13, G_13, H_13}, - {0, I_14, G_14, H_14}, - {0, I_15, G_15, H_15}, - - {0, F_2, D_2, E_2}, - {0, F_3, D_3, E_3}, - {0, F_4, D_4, E_4}, - {0, F_5, D_5, E_5}, - {0, F_6, D_6, E_6}, - {0, F_7, D_7, E_7}, - {0, F_8, D_8, E_8}, - {0, F_9, D_9, E_9}, - {0, F_10, D_10, E_10}, - {0, F_11, D_11, E_11}, - {0, F_12, D_12, E_12}, - {0, F_13, D_13, E_13}, - {0, F_14, D_14, E_14}, - {0, F_16, D_16, E_16}, - - {1, C_15, A_15, B_15}, - {1, C_14, A_14, B_14}, - {1, C_13, A_13, B_13}, - {1, C_12, A_12, B_12}, - {1, C_11, A_11, B_11}, - {1, C_10, A_10, B_10}, - {1, C_8, A_8, B_8}, - {1, C_7, A_7, B_7}, - {1, C_6, A_6, B_6}, - {1, C_5, A_5, B_5}, - {1, C_4, A_4, B_4}, - {1, C_3, A_3, B_3}, - {1, C_2, A_2, B_2}, - {0, F_15, D_15, E_15}, - {1, C_1, A_1, B_1}, - - {1, I_15, G_15, H_15}, - {1, I_14, G_14, H_14}, - {1, I_13, G_13, H_13}, - {1, I_12, G_12, H_12}, - {1, I_11, G_11, H_11}, - {1, I_10, G_10, H_10}, - {1, I_9, G_9, H_9}, - {1, I_8, G_8, H_8}, - {1, I_7, G_7, H_7}, - {1, I_6, G_6, H_6}, - {1, I_5, G_5, H_5}, - {1, I_4, G_4, H_4}, - {1, I_3, G_3, H_3}, - {1, I_2, G_2, H_2}, - {1, I_1, G_1, H_1}, - - {1, F_15, D_15, E_15}, - {1, F_14, D_14, E_14}, - {1, F_13, D_13, E_13}, - {1, F_12, D_12, E_12}, - {1, F_9, D_9, E_9}, - {1, F_8, D_8, E_8}, - {1, F_7, D_7, E_7}, - {1, F_6, D_6, E_6}, - {1, F_3, D_3, E_3}, - {1, F_2, D_2, E_2}, - {1, F_1, D_1, E_1} -}; -#endif diff --git a/keyboards/keychron/q8_pro/iso_encoder/keymaps/default/keymap.c b/keyboards/keychron/q8_pro/iso_encoder/keymaps/default/keymap.c deleted file mode 100644 index e5f73ff802..0000000000 --- a/keyboards/keychron/q8_pro/iso_encoder/keymaps/default/keymap.c +++ /dev/null @@ -1,73 +0,0 @@ -/* 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 . - */ - -#include QMK_KEYBOARD_H - -// clang-format off -enum layers{ - MAC_BASE, - WIN_BASE, - MAC_FN1, - WIN_FN1, - FN2, -}; - -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_70_iso( - 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_MUTE, - 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_DEL, - 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_NUHS, KC_ENT, KC_HOME, - KC_LSFT, KC_NUBS, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, - KC_LCTL, KC_LOPTN, KC_LCMMD, KC_SPC, MO(MAC_FN1), MO(FN2), KC_SPC, KC_RCMMD, KC_LEFT, KC_DOWN, KC_RGHT), - - [WIN_BASE] = LAYOUT_70_iso( - 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_MUTE, - 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_DEL, - 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_NUHS, KC_ENT, KC_HOME, - KC_LSFT, KC_NUBS, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, - KC_LCTL, KC_LWIN, KC_LALT, KC_SPC, MO(WIN_FN1), MO(FN2), KC_SPC, KC_RALT, KC_LEFT, KC_DOWN, KC_RGHT), - - [MAC_FN1] = LAYOUT_70_iso( - KC_GRV, KC_BRID, KC_BRIU, KC_MCTL, KC_LPAD, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, RGB_TOG, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, NK_TOGG, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - - [WIN_FN1] = LAYOUT_70_iso( - KC_GRV, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, RGB_TOG, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, NK_TOGG, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - - [FN2] = LAYOUT_70_iso( - KC_TILD, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, BAT_LVL, BAT_LVL, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______) -}; - -#if defined(ENCODER_MAP_ENABLE) -const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][2] = { - [MAC_BASE] = {ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [WIN_BASE] = {ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [MAC_FN1] = {ENCODER_CCW_CW(RGB_VAD, RGB_VAI)}, - [WIN_FN1] = {ENCODER_CCW_CW(RGB_VAD, RGB_VAI)}, - [FN2] = {ENCODER_CCW_CW(_______, _______)}, -}; -#endif // ENCODER_MAP_ENABLE diff --git a/keyboards/keychron/q8_pro/iso_encoder/keymaps/default/rules.mk b/keyboards/keychron/q8_pro/iso_encoder/keymaps/default/rules.mk deleted file mode 100644 index ee32568148..0000000000 --- a/keyboards/keychron/q8_pro/iso_encoder/keymaps/default/rules.mk +++ /dev/null @@ -1 +0,0 @@ -ENCODER_MAP_ENABLE = yes diff --git a/keyboards/keychron/q8_pro/iso_encoder/keymaps/via/keymap.c b/keyboards/keychron/q8_pro/iso_encoder/keymaps/via/keymap.c deleted file mode 100644 index b797889321..0000000000 --- a/keyboards/keychron/q8_pro/iso_encoder/keymaps/via/keymap.c +++ /dev/null @@ -1,73 +0,0 @@ -/* 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 . - */ - -#include QMK_KEYBOARD_H - -// clang-format off -enum layers{ - MAC_BASE, - WIN_BASE, - MAC_FN1, - WIN_FN1, - FN2 -}; - -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_70_iso( - 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_MUTE, - 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_DEL, - 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_NUHS, KC_ENT, KC_HOME, - KC_LSFT, KC_NUBS, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, - KC_LCTL, KC_LOPTN, KC_LCMMD, KC_SPC, MO(MAC_FN1), MO(FN2), KC_SPC, KC_RCMMD, KC_LEFT, KC_DOWN, KC_RGHT), - - [WIN_BASE] = LAYOUT_70_iso( - 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_MUTE, - 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_DEL, - 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_NUHS, KC_ENT, KC_HOME, - KC_LSFT, KC_NUBS, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, - KC_LCTL, KC_LWIN, KC_LALT, KC_SPC, MO(WIN_FN1), MO(FN2), KC_SPC, KC_RALT, KC_LEFT, KC_DOWN, KC_RGHT), - - [MAC_FN1] = LAYOUT_70_iso( - KC_GRV, KC_BRID, KC_BRIU, KC_MCTL, KC_LPAD, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, RGB_TOG, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, NK_TOGG, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - - [WIN_FN1] = LAYOUT_70_iso( - KC_GRV, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, RGB_TOG, - _______, BT_HST1, BT_HST2, BT_HST3, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, NK_TOGG, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - - [FN2] = LAYOUT_70_iso( - KC_TILD, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, BAT_LVL, BAT_LVL, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______) -}; - -#if defined(ENCODER_MAP_ENABLE) -const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][2] = { - [MAC_BASE] = {ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [WIN_BASE] = {ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [MAC_FN1] = {ENCODER_CCW_CW(RGB_VAD, RGB_VAI)}, - [WIN_FN1] = {ENCODER_CCW_CW(RGB_VAD, RGB_VAI)}, - [FN2] = {ENCODER_CCW_CW(_______, _______)}, -}; -#endif // ENCODER_MAP_ENABLE diff --git a/keyboards/keychron/q8_pro/iso_encoder/keymaps/via/rules.mk b/keyboards/keychron/q8_pro/iso_encoder/keymaps/via/rules.mk deleted file mode 100644 index f1adcab005..0000000000 --- a/keyboards/keychron/q8_pro/iso_encoder/keymaps/via/rules.mk +++ /dev/null @@ -1,2 +0,0 @@ -VIA_ENABLE = yes -ENCODER_MAP_ENABLE = yes diff --git a/keyboards/keychron/q8_pro/iso_encoder/rules.mk b/keyboards/keychron/q8_pro/iso_encoder/rules.mk deleted file mode 100644 index 6e7633bfe0..0000000000 --- a/keyboards/keychron/q8_pro/iso_encoder/rules.mk +++ /dev/null @@ -1 +0,0 @@ -# This file intentionally left blank diff --git a/keyboards/keychron/q8_pro/mcuconf.h b/keyboards/keychron/q8_pro/mcuconf.h deleted file mode 100644 index 882d6bd568..0000000000 --- a/keyboards/keychron/q8_pro/mcuconf.h +++ /dev/null @@ -1,36 +0,0 @@ -/* Copyright 2023 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 - -/* Set HCLK to 48 MHz as tradeoff of USB lowest clockand and - * lower power comsumption for bluetooth. Will use dynamic - * clock when STM32L4 is supported in ChibiOS */ -#undef STM32_PLLM_VALUE -#define STM32_PLLM_VALUE 2 - -#undef STM32_PLLN_VALUE -#define STM32_PLLN_VALUE 12 - -#undef STM32_I2C_USE_I2C1 -#define STM32_I2C_USE_I2C1 TRUE - -#ifdef KC_BLUETOOTH_ENABLE -# undef STM32_SERIAL_USE_USART2 -# define STM32_SERIAL_USE_USART2 TRUE -#endif diff --git a/keyboards/keychron/q8_pro/q8_pro.c b/keyboards/keychron/q8_pro/q8_pro.c deleted file mode 100644 index c2afbc04c2..0000000000 --- a/keyboards/keychron/q8_pro/q8_pro.c +++ /dev/null @@ -1,314 +0,0 @@ -/* 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 . - */ - -#include "q8_pro.h" -#ifdef KC_BLUETOOTH_ENABLE -# include "ckbt51.h" -# include "bluetooth.h" -# include "indicator.h" -# include "transport.h" -# include "battery.h" -# include "bat_level_animation.h" -# include "lpm.h" -#endif - -#ifdef ENABLE_FACTORY_TEST -# include "factory_test.h" -#endif - -typedef struct PACKED { - uint8_t len; - uint8_t keycode[3]; -} key_combination_t; - -static uint32_t factory_timer_buffer = 0; -static uint32_t siri_timer_buffer = 0; -static uint8_t mac_keycode[4] = {KC_LOPT, KC_ROPT, KC_LCMD, KC_RCMD}; - -key_combination_t key_comb_list[4] = { - {2, {KC_LWIN, KC_TAB}}, // Task (win) - {2, {KC_LWIN, KC_E}}, // Files (win) - {3, {KC_LSFT, KC_LGUI, KC_4}}, // Snapshot (mac) - {2, {KC_LWIN, KC_C}} // Cortana (win) -}; - -#ifdef KC_BLUETOOTH_ENABLE -bool firstDisconnect = true; -bool bt_factory_reset = false; -static virtual_timer_t pairing_key_timer; -extern uint8_t g_pwm_buffer[DRIVER_COUNT][192]; - -static void pairing_key_timer_cb(void *arg) { - bluetooth_pairing_ex(*(uint8_t *)arg, NULL); -} -#endif - -bool dip_switch_update_kb(uint8_t index, bool active) { - if (index == 0) { -#ifdef INVERT_OS_SWITCH_STATE - default_layer_set(1UL << (!active ? 1 : 0)); -#else - default_layer_set(1UL << (active ? 1 : 0)); -#endif - } - dip_switch_update_user(index, active); - - return true; -} - -#ifdef KC_BLUETOOTH_ENABLE -bool process_record_kb_bt(uint16_t keycode, keyrecord_t *record) { -#else -bool process_record_kb(uint16_t keycode, keyrecord_t *record) { -#endif - static uint8_t host_idx = 0; - - switch (keycode) { - case KC_LOPTN: - case KC_ROPTN: - case KC_LCMMD: - case KC_RCMMD: - if (record->event.pressed) { - register_code(mac_keycode[keycode - KC_LOPTN]); - } else { - unregister_code(mac_keycode[keycode - KC_LOPTN]); - } - return false; // Skip all further processing of this key) - case KC_TASK: - case KC_FILE: - case KC_SNAP: - case KC_CTANA: - if (record->event.pressed) { - for (uint8_t i = 0; i < key_comb_list[keycode - KC_TASK].len; i++) - register_code(key_comb_list[keycode - KC_TASK].keycode[i]); - } else { - for (uint8_t i = 0; i < key_comb_list[keycode - KC_TASK].len; i++) - unregister_code(key_comb_list[keycode - KC_TASK].keycode[i]); - } - return false; // Skip all further processing of this key - case KC_SIRI: - if (record->event.pressed && siri_timer_buffer == 0) { - register_code(KC_LGUI); - register_code(KC_SPACE); - siri_timer_buffer = sync_timer_read32() == 0 ? 1 : sync_timer_read32(); - } - return false; // Skip all further processing of this key -#ifdef KC_BLUETOOTH_ENABLE - case BT_HST1 ... BT_HST3: - if (get_transport() == TRANSPORT_BLUETOOTH) { - if (record->event.pressed) { - host_idx = keycode - BT_HST1 + 1; - chVTSet(&pairing_key_timer, TIME_MS2I(2000), (vtfunc_t)pairing_key_timer_cb, &host_idx); - bluetooth_connect_ex(host_idx, 0); - } else { - host_idx = 0; - chVTReset(&pairing_key_timer); - } - } - break; - case BAT_LVL: - if (get_transport() == TRANSPORT_BLUETOOTH && !usb_power_connected()) { - bat_level_animiation_start(battery_get_percentage()); - } - break; -#endif - default: -#ifdef FACTORY_RESET_CHECK - FACTORY_RESET_CHECK(keycode, record); -#endif - break; - } - return true; -} - -#if defined(ENCODER_ENABLE) -static void encoder_pad_cb(void *param) { - encoder_inerrupt_read((uint32_t)param & 0xFF); -} -#endif - -void keyboard_post_init_kb(void) { - dip_switch_read(true); - -#ifdef KC_BLUETOOTH_ENABLE - /* Currently we don't use this reset pin */ - // palSetLineMode(CKBT51_RESET_PIN, PAL_MODE_UNCONNECTED); - palSetLineMode(CKBT51_RESET_PIN, PAL_MODE_OUTPUT_PUSHPULL); - palWriteLine(CKBT51_RESET_PIN, PAL_HIGH); - - /* IMPORTANT: DO NOT enable internal pull-up resistor - * as there is an external pull-down resistor. - */ - palSetLineMode(USB_BT_MODE_SELECT_PIN, PAL_MODE_INPUT); - - ckbt51_init(false); - bluetooth_init(); -#endif - -#ifdef ENCODER_ENABLE - pin_t encoders_pad_a[NUM_ENCODERS] = ENCODERS_PAD_A; - pin_t encoders_pad_b[NUM_ENCODERS] = ENCODERS_PAD_B; - for (uint32_t i = 0; i < NUM_ENCODERS; i++) { - palEnableLineEvent(encoders_pad_a[i], PAL_EVENT_MODE_BOTH_EDGES); - palEnableLineEvent(encoders_pad_b[i], PAL_EVENT_MODE_BOTH_EDGES); - palSetLineCallback(encoders_pad_a[i], encoder_pad_cb, (void *)i); - palSetLineCallback(encoders_pad_b[i], encoder_pad_cb, (void *)i); - } -#endif - - keyboard_post_init_user(); -} - -void matrix_scan_kb(void) { - if (factory_timer_buffer && timer_elapsed32(factory_timer_buffer) > 2000) { - factory_timer_buffer = 0; - if (bt_factory_reset) { - bt_factory_reset = false; - palWriteLine(CKBT51_RESET_PIN, PAL_LOW); - wait_ms(5); - palWriteLine(CKBT51_RESET_PIN, PAL_HIGH); - } - } - - if (siri_timer_buffer && sync_timer_elapsed32(siri_timer_buffer) > 500) { - siri_timer_buffer = 0; - unregister_code(KC_LGUI); - unregister_code(KC_SPACE); - } - -#ifdef FACTORY_RESET_TASK - FACTORY_RESET_TASK(); -#endif - matrix_scan_user(); -} - -#ifdef KC_BLUETOOTH_ENABLE -static void ckbt51_param_init(void) { - /* Set bluetooth device name */ - ckbt51_set_local_name(PRODUCT); - wait_ms(10); - /* Set bluetooth parameters */ - module_param_t param = {.event_mode = 0x02, - .connected_idle_timeout = 7200, - .pairing_timeout = 180, - .pairing_mode = 0, - .reconnect_timeout = 5, - .report_rate = 90, - .vendor_id_source = 1, - .verndor_id = 0, // Must be 0x3434 - .product_id = PRODUCT_ID}; - ckbt51_set_param(¶m); - wait_ms(10); -} - -void bluetooth_enter_disconnected_kb(uint8_t host_idx) { - if (bt_factory_reset) { - ckbt51_param_init(); - factory_timer_buffer = timer_read32(); - } - /* CKBT51 bluetooth module boot time is slower, it enters disconnected after boot, - so we place initialization here. */ - if (firstDisconnect && sync_timer_read32() < 1000 && get_transport() == TRANSPORT_BLUETOOTH) { - ckbt51_param_init(); - bluetooth_connect(); - firstDisconnect = false; - } -} - -void ckbt51_default_ack_handler(uint8_t *data, uint8_t len) { - if (data[1] == 0x45) { - module_param_t param = {.event_mode = 0x02, - .connected_idle_timeout = 7200, - .pairing_timeout = 180, - .pairing_mode = 0, - .reconnect_timeout = 5, - .report_rate = 90, - .vendor_id_source = 1, - .verndor_id = 0, // Must be 0x3434 - .product_id = PRODUCT_ID}; - ckbt51_set_param(¶m); - } -} - -void bluetooth_pre_task(void) { - static uint8_t mode = 1; - - if (readPin(USB_BT_MODE_SELECT_PIN) != mode) { - if (readPin(USB_BT_MODE_SELECT_PIN) != mode) { - mode = readPin(USB_BT_MODE_SELECT_PIN); - set_transport(mode == 0 ? TRANSPORT_BLUETOOTH : TRANSPORT_USB); - } - } -} -#endif - -void battery_calculte_voltage(uint16_t value) { - uint16_t voltage = ((uint32_t)value) * 2246 / 1000; - -#ifdef LED_MATRIX_ENABLE - if (led_matrix_is_enabled()) { - uint32_t totalBuf = 0; - - for (uint8_t i = 0; i < DRIVER_COUNT; i++) - for (uint8_t j = 0; j < 192; j++) - totalBuf += g_pwm_buffer[i][j]; - /* We assumpt it is linear relationship*/ - voltage += (30 * totalBuf / LED_MATRIX_LED_COUNT / 255); - } -#endif -#ifdef RGB_MATRIX_ENABLE - if (rgb_matrix_is_enabled()) { - uint32_t totalBuf = 0; - - for (uint8_t i = 0; i < DRIVER_COUNT; i++) - for (uint8_t j = 0; j < 192; j++) - totalBuf += g_pwm_buffer[i][j]; - /* We assumpt it is linear relationship*/ - uint32_t compensation = 60 * totalBuf / RGB_MATRIX_LED_COUNT / 255 / 3; - voltage += compensation; - } -#endif - battery_set_voltage(voltage); -} - -bool via_command_kb(uint8_t *data, uint8_t length) { - switch (data[0]) { -#ifdef KC_BLUETOOTH_ENABLE - case 0xAA: - ckbt51_dfu_rx(data, length); - break; -#endif -#ifdef ENABLE_FACTORY_TEST - case 0xAB: - factory_test_rx(data, length); - break; -#endif - default: - return false; - } - - return true; -} - -#if !defined(VIA_ENABLE) -void raw_hid_receive(uint8_t *data, uint8_t length) { - switch (data[0]) { - case RAW_HID_CMD: - via_command_kb(data, length); - break; - } -} -#endif diff --git a/keyboards/keychron/q8_pro/q8_pro.h b/keyboards/keychron/q8_pro/q8_pro.h deleted file mode 100644 index cd0954d579..0000000000 --- a/keyboards/keychron/q8_pro/q8_pro.h +++ /dev/null @@ -1,55 +0,0 @@ -/* 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 . - */ - -#pragma once - -#include "quantum.h" -#ifdef VIA_ENABLE -# include "via.h" -#endif - -#define ___ KC_NO - -#ifdef VIA_ENABLE -# define USER_START QK_KB_0 -#else -# define USER_START SAFE_RANGE -#endif - -// clang-format off -enum { - KC_LOPTN = USER_START, - KC_ROPTN, - KC_LCMMD, - KC_RCMMD, - KC_TASK, - KC_FILE, - KC_SNAP, - KC_CTANA, - KC_SIRI, -#ifdef KC_BLUETOOTH_ENABLE - BT_HST1, - BT_HST2, - BT_HST3, - BAT_LVL, -#else - BT_HST1 = KC_TRNS, - BT_HST2 = KC_TRNS, - BT_HST3 = KC_TRNS, - BAT_LVL = KC_TRNS, -#endif - NEW_SAFE_RANGE -}; diff --git a/keyboards/keychron/q8_pro/readme.md b/keyboards/keychron/q8_pro/readme.md deleted file mode 100644 index 6a3ed73d34..0000000000 --- a/keyboards/keychron/q8_pro/readme.md +++ /dev/null @@ -1,23 +0,0 @@ -# Keychron Q8 Pro - -![Keychron Q8 Pro](https://i.imgur.com/dZBGbrs.jpg) - -A customizable 65% Alice keyboard. - -* Keyboard Maintainer: [Keychron](https://github.com/keychron) -* Hardware Supported: Keychron Q8 Pro -* Hardware Availability:[Keychron Q8 Pro (Alice Layout) QMK/VIA Wireless Custom Mechanical Keyboard](https://www.keychron.com/products/keychron-q8-pro-alice-layout-qmk-via-wireless-custom-mechanical-keyboard) - -Make example for this keyboard (after setting up your build environment): - - make keychron/q8_pro/ansi_encoder:default - make keychron/q8_pro/iso_encoder:default - -Flashing example for this keyboard: - - make keychron/q8_pro/ansi_encoder:default:flash - make keychron/q8_pro/iso_encoder:default:flash - -**Reset Key**: Connect the USB cable, toggle mode switch to "Off", hold down the *Esc* key or reset button underneath space bar, then toggle the switch to "Cable". - -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). diff --git a/keyboards/keychron/q8_pro/rules.mk b/keyboards/keychron/q8_pro/rules.mk deleted file mode 100644 index f995372f9c..0000000000 --- a/keyboards/keychron/q8_pro/rules.mk +++ /dev/null @@ -1,6 +0,0 @@ -# Enter lower-power sleep mode when on the ChibiOS idle thread -OPT_DEFS += -DCORTEX_ENABLE_WFI_IDLE=TRUE -OPT_DEFS += -DNO_USB_STARTUP_CHECK -DENABLE_FACTORY_TEST - -include keyboards/keychron/bluetooth/bluetooth.mk -include keyboards/keychron/common/common.mk diff --git a/keyboards/keychron/q8_pro/via_json/q8_pro_ansi_encoder.json b/keyboards/keychron/q8_pro/via_json/q8_pro_ansi_encoder.json deleted file mode 100644 index 148c8e1d3d..0000000000 --- a/keyboards/keychron/q8_pro/via_json/q8_pro_ansi_encoder.json +++ /dev/null @@ -1,353 +0,0 @@ -{ - "name": "Keychron Q8 Pro ANSI Knob", - "vendorId": "0x3434", - "productId": "0x0680", - "keycodes": ["qmk_lighting"], - "menus": [ - { - "label": "Lighting", - "content": [ - { - "label": "Backlight", - "content": [ - { - "label": "Brightness", - "type": "range", - "options": [0, 255], - "content": ["id_qmk_rgb_matrix_brightness", 3, 1] - }, - { - "label": "Effect", - "type": "dropdown", - "content": ["id_qmk_rgb_matrix_effect", 3, 2], - "options": [ - ["None", 0], - ["Solid Color", 1], - ["Breathing", 2], - ["Band Spiral Val", 3], - ["Cycle All", 4], - ["Cycle Left Right", 5], - ["Cycle Up Down", 6], - ["Rainbow Moving Chevron", 7], - ["Cycle Out In", 8], - ["Cycle Out In Dual", 9], - ["Cycle Pinwheel", 10], - ["Cycle Spiral", 11], - ["Dual Beacon", 12], - ["Rainbow Beacon", 13], - ["Jellybean Raindrops", 14], - ["Pixel Rain", 15], - ["Typing Heatmap", 16], - ["Digital Rain", 17], - ["Reactive Simple", 18], - ["Reactive Multiwide", 19], - ["Reactive Multinexus", 20], - ["Splash", 21], - ["Solid Splash", 22] - ] - }, - { - "showIf": "{id_qmk_rgb_matrix_effect} > 1", - "label": "Effect Speed", - "type": "range", - "options": [0, 255], - "content": ["id_qmk_rgb_matrix_effect_speed", 3, 3] - }, - { - "showIf": "{id_qmk_rgb_matrix_effect} != 0 && ( {id_qmk_rgb_matrix_effect} < 4 || {id_qmk_rgb_matrix_effect} == 18 || ({id_qmk_rgb_matrix_effect} > 17 && {id_qmk_rgb_matrix_effect} != 21) ) ", - "label": "Color", - "type": "color", - "content": ["id_qmk_rgb_matrix_color", 3, 4] - } - ] - } - ] - } - ], - "customKeycodes": [ - {"name": "Left Option", "title": "Left Option", "shortName": "LOpt"}, - {"name": "Right Option", "title": "Right Option", "shortName": "ROpt"}, - {"name": "Left Cmd", "title": "Left Command", "shortName": "LCmd"}, - {"name": "Right Cmd", "title": "Right Command", "shortName": "RCmd"}, - {"name": "Task View", "title": "Task View in Windows", "shortName": "Task"}, - {"name": "File Explorer", "title": "File Explorer in Windows", "shortName": "File"}, - {"name": "Screen shot", "title": "Screenshot in macOS", "shortName": "SShot"}, - {"name": "Cortana", "title": "Cortana in Windows", "shortName": "Cortana"}, - {"name": "Siri", "title": "Siri in macOS", "shortName": "Siri"}, - {"name": "Bluetooth Host 1", "title": "Bluetooth Host 1", "shortName": "BTH1"}, - {"name": "Bluetooth Host 2", "title": "Bluetooth Host 2", "shortName": "BTH2"}, - {"name": "Bluetooth Host 3", "title": "Bluetooth Host 3", "shortName": "BTH3"}, - {"name": "Battery Level", "title": "Show battery level", "shortName": "Batt"} - ], - "matrix": {"rows": 5, "cols": 15}, - "layouts": { - "keymap": [ - [ - { - "x": 2.75 - }, - "0,2", - { - "x": 8.85 - }, - "0,11", - { - "x": 3.5, - "c": "#aaaaaa" - }, - "0,14\n\n\n\n\n\n\n\n\ne0" - ], - [ - { - "y": -0.85, - "x": 0.75, - "c": "#777777" - }, - "0,0\nESC", - { - "c": "#cccccc" - }, - "0,1" - ], - [ - { - "y": -0.85, - "x": 13.6 - }, - "0,12", - { - "c": "#aaaaaa", - "w": 2 - }, - "0,13" - ], - [ - { - "x": 0.5, - "w": 1.5 - }, - "1,0", - { - "c": "#cccccc" - }, - "1,1", - { - "x": 10.3 - }, - "1,11", - "1,12", - { - "w": 1.5, - "c": "#aaaaaa" - }, - "1,13" - ], - [ - { - "y": -0.9, - "x": 17.3 - }, - "1,14" - ], - [ - { - "y": -0.1, - "x": 0.25, - "w": 1.75 - }, - "2,0", - { - "c": "#cccccc" - }, - "2,1", - { - "x": 9.75 - }, - "2,11", - "2,12", - { - "c": "#777777", - "w": 2.25 - }, - "2,13" - ], - [ - { - "y": -0.9, - "x": 17.5, - "c": "#aaaaaa" - }, - "2,14" - ], - [ - { - "y": -0.1, - "w": 2.25 - }, - "3,0", - { - "c": "#cccccc" - }, - "3,2", - { - "x": 10.15 - }, - "3,12", - { - "c": "#aaaaaa", - "w": 1.75 - }, - "3,13" - ], - [ - { - "y": -0.75, - "x": 16.4, - "c": "#777777" - }, - "3,14" - ], - [ - { - "y": -0.25, - "c": "#aaaaaa", - "w": 1.25 - }, - "4,0", - { - "w": 1.25 - }, - "4,1" - ], - [ - { - "y": -0.75, - "x": 15.4, - "c": "#777777" - }, - "4,12", - "4,13", - "4,14" - ], - [ - { - "r": 6, - "y": -5.7, - "x": 3.85, - "c": "#cccccc" - }, - "0,3", - "0,4", - { - "c": "#aaaaaa" - }, - "0,5", - "0,6" - ], - [ - { - "x": 3.35, - "c": "#cccccc" - }, - "1,2", - "1,3", - "1,4", - "1,5" - ], - [ - { - "x": 3.55 - }, - "2,2", - "2,3", - "2,4", - "2,5" - ], - [ - { - "x": 3.9 - }, - "3,3", - "3,4", - "3,5", - "3,6" - ], - [ - { - "x": 4, - "c": "#aaaaaa", - "w": 1.25 - }, - "4,2", - { - "c": "#cccccc", - "w": 2.25 - }, - "4,3", - { - "c": "#aaaaaa" - }, - "4,6" - ], - [ - { - "r": -6, - "y": -3.2, - "x": 8.35 - }, - "0,7", - "0,8", - { - "c": "#cccccc" - }, - "0,9", - "0,10" - ], - [ - { - "x": 7.9 - }, - "1,6", - "1,7", - "1,8", - "1,9", - "1,10" - ], - [ - { - "x": 8.25 - }, - "2,7", - "2,8", - "2,9", - "2,10" - ], - [ - { - "x": 7.8 - }, - "3,7", - "3,8", - "3,9", - "3,10", - "3,11" - ], - [ - { - "x": 7.8, - "c": "#aaaaaa" - }, - "4,7", - { - "c": "#cccccc", - "w": 2.75 - }, - "4,8", - { - "c": "#aaaaaa" - }, - "4,9" - ] - ] - } -} diff --git a/keyboards/keychron/q8_pro/via_json/q8_pro_iso_encoder.json b/keyboards/keychron/q8_pro/via_json/q8_pro_iso_encoder.json deleted file mode 100644 index cf390138d2..0000000000 --- a/keyboards/keychron/q8_pro/via_json/q8_pro_iso_encoder.json +++ /dev/null @@ -1,364 +0,0 @@ -{ - "name": "Keychron Q8 Pro ISO Knob", - "vendorId": "0x3434", - "productId": "0x0681", - "keycodes": ["qmk_lighting"], - "menus": [ - { - "label": "Lighting", - "content": [ - { - "label": "Backlight", - "content": [ - { - "label": "Brightness", - "type": "range", - "options": [0, 255], - "content": ["id_qmk_rgb_matrix_brightness", 3, 1] - }, - { - "label": "Effect", - "type": "dropdown", - "content": ["id_qmk_rgb_matrix_effect", 3, 2], - "options": [ - ["None", 0], - ["Solid Color", 1], - ["Breathing", 2], - ["Band Spiral Val", 3], - ["Cycle All", 4], - ["Cycle Left Right", 5], - ["Cycle Up Down", 6], - ["Rainbow Moving Chevron", 7], - ["Cycle Out In", 8], - ["Cycle Out In Dual", 9], - ["Cycle Pinwheel", 10], - ["Cycle Spiral", 11], - ["Dual Beacon", 12], - ["Rainbow Beacon", 13], - ["Jellybean Raindrops", 14], - ["Pixel Rain", 15], - ["Typing Heatmap", 16], - ["Digital Rain", 17], - ["Reactive Simple", 18], - ["Reactive Multiwide", 19], - ["Reactive Multinexus", 20], - ["Splash", 21], - ["Solid Splash", 22] - ] - }, - { - "showIf": "{id_qmk_rgb_matrix_effect} > 1", - "label": "Effect Speed", - "type": "range", - "options": [0, 255], - "content": ["id_qmk_rgb_matrix_effect_speed", 3, 3] - }, - { - "showIf": "{id_qmk_rgb_matrix_effect} != 0 && ( {id_qmk_rgb_matrix_effect} < 4 || {id_qmk_rgb_matrix_effect} == 18 || ({id_qmk_rgb_matrix_effect} > 17 && {id_qmk_rgb_matrix_effect} != 21) ) ", - "label": "Color", - "type": "color", - "content": ["id_qmk_rgb_matrix_color", 3, 4] - } - ] - } - ] - } - ], - "customKeycodes": [ - {"name": "Left Option", "title": "Left Option", "shortName": "LOpt"}, - {"name": "Right Option", "title": "Right Option", "shortName": "ROpt"}, - {"name": "Left Cmd", "title": "Left Command", "shortName": "LCmd"}, - {"name": "Right Cmd", "title": "Right Command", "shortName": "RCmd"}, - {"name": "Task View", "title": "Task View in Windows", "shortName": "Task"}, - {"name": "File Explorer", "title": "File Explorer in Windows", "shortName": "File"}, - {"name": "Screen shot", "title": "Screenshot in macOS", "shortName": "SShot"}, - {"name": "Cortana", "title": "Cortana in Windows", "shortName": "Cortana"}, - {"name": "Siri", "title": "Siri in macOS", "shortName": "Siri"}, - {"name": "Bluetooth Host 1", "title": "Bluetooth Host 1", "shortName": "BTH1"}, - {"name": "Bluetooth Host 2", "title": "Bluetooth Host 2", "shortName": "BTH2"}, - {"name": "Bluetooth Host 3", "title": "Bluetooth Host 3", "shortName": "BTH3"}, - {"name": "Battery Level", "title": "Show battery level", "shortName": "Batt"} - ], - "matrix": {"rows": 5, "cols": 15}, - "layouts": { - "keymap": [ - [ - { - "x": 2.75 - }, - "0,2", - { - "x": 8.85 - }, - "0,11", - { - "x": 3.5, - "c": "#aaaaaa" - }, - "0,14\n\n\n\n\n\n\n\n\ne0" - ], - [ - { - "y": -0.85, - "x": 0.75, - "c": "#777777" - }, - "0,0\nESC", - { - "c": "#cccccc" - }, - "0,1" - ], - [ - { - "y": -0.85, - "x": 13.6 - }, - "0,12", - { - "c": "#aaaaaa", - "w": 2 - }, - "0,13" - ], - [ - { - "x": 0.5, - "w": 1.5 - }, - "1,0", - { - "c": "#cccccc" - }, - "1,1", - { - "x": 10.5 - }, - "1,11" - ], - [ - { - "y": -1, - "x": 14.5 - }, - "1,12", - { - "x": 0.25, - "c": "#777777", - "w": 1.25, - "h": 2, - "w2": 1.5, - "h2": 1, - "x2": -0.25 - }, - "1,13" - ], - [ - { - "y": -0.9, - "x": 17.3, - "c": "#aaaaaa" - }, - "1,14" - ], - [ - { - "y": -0.1, - "x": 0.25, - "w": 1.75 - }, - "2,0", - { - "c": "#cccccc" - }, - "2,1", - { - "x": 9.75 - }, - "2,11", - "2,12", - { - "c": "#aaaaaa" - }, - "2,13" - ], - [ - { - "y": -0.9, - "x": 17.5 - }, - "2,14" - ], - [ - { - "y": -0.1, - "w": 1.25 - }, - "3,0", - "3,1", - { - "c": "#cccccc" - }, - "3,2", - { - "x": 10.15 - }, - "3,12", - { - "c": "#aaaaaa", - "w": 1.75 - }, - "3,13" - ], - [ - { - "y": -0.75, - "x": 16.4, - "c": "#777777" - }, - "3,14" - ], - [ - { - "y": -0.25, - "c": "#aaaaaa", - "w": 1.25 - }, - "4,0", - { - "w": 1.25 - }, - "4,1" - ], - [ - { - "y": -0.75, - "x": 15.4, - "c": "#777777" - }, - "4,12", - "4,13", - "4,14" - ], - [ - { - "r": 6, - "y": -5.7, - "x": 3.85, - "c": "#cccccc" - }, - "0,3", - "0,4", - { - "c": "#aaaaaa" - }, - "0,5", - "0,6" - ], - [ - { - "x": 3.35, - "c": "#cccccc" - }, - "1,2", - "1,3", - "1,4", - "1,5" - ], - [ - { - "x": 3.55 - }, - "2,2", - "2,3", - "2,4", - "2,5" - ], - [ - { - "x": 3.9 - }, - "3,3", - "3,4", - "3,5", - "3,6" - ], - [ - { - "x": 4, - "c": "#aaaaaa", - "w": 1.25 - }, - "4,2", - { - "c": "#cccccc", - "w": 2.25 - }, - "4,3", - { - "c": "#aaaaaa" - }, - "4,6" - ], - [ - { - "r": -6, - "y": -3.2, - "x": 8.35 - }, - "0,7", - "0,8", - { - "c": "#cccccc" - }, - "0,9", - "0,10" - ], - [ - { - "x": 7.9 - }, - "1,6", - "1,7", - "1,8", - "1,9", - "1,10" - ], - [ - { - "x": 8.25 - }, - "2,7", - "2,8", - "2,9", - "2,10" - ], - [ - { - "x": 7.8 - }, - "3,7", - "3,8", - "3,9", - "3,10", - "3,11" - ], - [ - { - "x": 7.8, - "c": "#aaaaaa" - }, - "4,7", - { - "c": "#cccccc", - "w": 2.75 - }, - "4,8", - { - "c": "#aaaaaa" - }, - "4,9" - ] - ] - } -} diff --git a/keyboards/keychron/v10_max/ansi_encoder/ansi_encoder.c b/keyboards/keychron/v10_max/ansi_encoder/ansi_encoder.c deleted file mode 100644 index b6c83faf9f..0000000000 --- a/keyboards/keychron/v10_max/ansi_encoder/ansi_encoder.c +++ /dev/null @@ -1,155 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#include "quantum.h" - -// clang-format off - -#ifdef RGB_MATRIX_ENABLE -const snled27351_led_t g_snled27351_leds[RGB_MATRIX_LED_COUNT] = { -/* Refer to SNLED27351 manual for these locations - * driver - * | R location - * | | G location - * | | | B location - * | | | | */ - {0, J_2, L_2, K_2}, - {0, J_3, L_3, K_3}, - {0, J_4, L_4, K_4}, - {0, J_5, L_5, K_5}, - {0, J_6, L_6, K_6}, - {0, J_7, L_7, K_7}, - {0, J_8, L_8, K_8}, - {0, J_9, L_9, K_9}, - {0, J_10, L_10, K_10}, - {0, J_11, L_11, K_11}, - {0, J_12, L_12, K_12}, - {0, J_13, L_13, K_13}, - {0, J_14, L_14, K_14}, - {0, J_15, L_15, K_15}, - {0, A_16, C_16, B_16}, - - {0, G_1, I_1, H_1}, - {0, G_2, I_2, H_2}, - {0, G_3, I_3, H_3}, - {0, G_4, I_4, H_4}, - {0, G_5, I_5, H_5}, - {0, G_6, I_6, H_6}, - {0, G_7, I_7, H_7}, - {0, G_8, I_8, H_8}, - {0, G_9, I_9, H_9}, - {0, G_10, I_10, H_10}, - {0, G_11, I_11, H_11}, - {0, G_12, I_12, H_12}, - {0, G_13, I_13, H_13}, - {0, G_14, I_14, H_14}, - {0, G_15, I_15, H_15}, - {0, A_15, C_15, B_15}, - - {0, D_1, F_1, E_1}, - {0, D_2, F_2, E_2}, - {0, D_3, F_3, E_3}, - {0, D_4, F_4, E_4}, - {0, D_5, F_5, E_5}, - {0, D_6, F_6, E_6}, - {0, D_7, F_7, E_7}, - {0, D_9, F_9, E_9}, - {0, D_10, F_10, E_10}, - {0, D_11, F_11, E_11}, - {0, D_12, F_12, E_12}, - {0, D_13, F_13, E_13}, - {0, D_14, F_14, E_14}, - {0, D_15, F_15, E_15}, - {0, D_16, F_16, E_16}, - {0, A_14, C_14, B_14}, - - {1, G_16, I_16, H_16}, - {1, G_15, I_15, H_15}, - {1, G_14, I_14, H_14}, - {1, G_13, I_13, H_13}, - {1, G_12, I_12, H_12}, - {1, G_11, I_11, H_11}, - {1, G_10, I_10, H_10}, - {1, G_8, I_8, H_8}, - {1, G_7, I_7, H_7}, - {1, G_6, I_6, H_6}, - {1, G_5, I_5, H_5}, - {1, G_4, I_4, H_4}, - {1, G_3, I_3, H_3}, - {1, G_2, I_2, H_2}, - {1, J_4, L_4, K_4}, - - {1, D_16, F_16, E_16}, - {1, D_15, F_15, E_15}, - {1, D_13, F_13, E_13}, - {1, D_12, F_12, E_12}, - {1, D_11, F_11, E_11}, - {1, D_10, F_10, E_10}, - {1, D_9, F_9, E_9}, - {1, D_8, F_8, E_8}, - {1, D_7, F_7, E_7}, - {1, D_6, F_6, E_6}, - {1, D_5, F_5, E_5}, - {1, D_4, F_4, E_4}, - {1, D_3, F_3, E_3}, - {1, D_2, F_2, E_2}, - {1, J_3, L_3, K_3}, - - {1, A_16, C_16, B_16}, - {1, A_15, C_15, B_15}, - {1, A_14, C_14, B_14}, - {1, A_12, C_12, B_12}, - {1, A_10, C_10, B_10}, - {1, A_9, C_9, B_9}, - {1, A_7, C_7, B_7}, - {1, A_5, C_5, B_5}, - {1, A_1, C_1, B_1}, - {1, J_1, L_1, K_1}, - {1, J_2, L_2, K_2}, -}; - -#define __ NO_LED - -led_config_t g_led_config = { - { - // Key Matrix to LED Index - { __, 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, 40, 41, 42, 43, 44, 45, __, 46 }, - { 47, 48, 49, 50, 51, 52, 53, __, 54, 55, 56, 57, 58, 59, 60, __, __, 61 }, - { 62, 63, __, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, __, 76, __ }, - { 77, 78, 79, __, 80, __, 81, 82, __, 83, __, 84, __, __, __, 85, 86, 87 }, - }, - { - // LED Index to Physical Position - {19, 0}, {34, 0}, {46, 0}, {59, 1}, {71, 3}, {86, 6}, {98, 8}, {121, 8}, {133, 6}, {147, 3}, {159, 1}, {173, 0}, {185, 0}, {201, 1}, {219, 1}, - {5,14}, {24,14}, {36,14}, {48,13}, {61,15}, {73,17}, {85,20}, {97,22}, {116,22}, {128,20}, {140,17}, {152,15}, {165,13}, {177,14}, {195,14}, {220,14}, - {4,24}, {24,24}, {40,24}, {53,24}, {65,27}, {77,29}, {89,31}, {113,33}, {125,31}, {137,29}, {149,26}, {161,24}, {174,24}, {186,24}, {201,24}, {222,24}, - {2,34}, {23,34}, {40,34}, {53,35}, {65,37}, {77,39}, {89,42}, {118,42}, {130,40}, {142,38}, {154,36}, {167,34}, {179,34}, {199,34}, {224,35}, - {0,45}, {24,45}, {44,45}, {57,46}, {69,48}, {81,51}, {93,53}, {112,54}, {124,52}, {136,50}, {148,48}, {160,46}, {173,45}, {190,45}, {210,47}, - {0,55}, {18,55}, {33,55}, {56,57}, {77,61}, {96,64}, {125,63}, {147,58}, {198,58}, {210,58}, {222,58} - }, - { - // RGB LED Index to Flag - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 - } -}; -#endif diff --git a/keyboards/keychron/v10_max/ansi_encoder/config.h b/keyboards/keychron/v10_max/ansi_encoder/config.h deleted file mode 100644 index cbde901ea5..0000000000 --- a/keyboards/keychron/v10_max/ansi_encoder/config.h +++ /dev/null @@ -1,56 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#pragma once - -#ifdef RGB_MATRIX_ENABLE -/* RGB Matrix driver configuration */ -# define DRIVER_COUNT 2 -# define RGB_MATRIX_LED_COUNT 88 - -# define SPI_SCK_PIN A5 -# define SPI_MISO_PIN A6 -# define SPI_MOSI_PIN A7 - -# define DRIVER_CS_PINS \ - { B8, B9 } -# define SNLED23751_SPI_DIVISOR 16 -# define SPI_DRIVER SPID1 - -/* Scan phase of led driver set as MSKPHASE_9CHANNEL(defined as 0x03 in snled27351.h) */ -# define SNLED27351_PHASE_CHANNEL MSKPHASE_12CHANNEL - -/* Set LED driver current */ -# define SNLED27351_CURRENT_TUNE \ - { 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20 } - -/* Set to infinit, which is use in USB mode by default */ -# define RGB_MATRIX_TIMEOUT RGB_MATRIX_TIMEOUT_INFINITE - -/* Allow shutdown of led driver to save power */ -# define RGB_MATRIX_DRIVER_SHUTDOWN_ENABLE -/* Turn off backlight on low brightness to save power */ -# define RGB_MATRIX_BRIGHTNESS_TURN_OFF_VAL 32 - -/* Indications */ -# define CAPS_LOCK_INDEX 48 -# define LOW_BAT_IND_INDEX \ - { 81, 83 } - -# define RGB_MATRIX_KEYPRESSES -# define RGB_MATRIX_FRAMEBUFFER_EFFECTS - -#endif diff --git a/keyboards/keychron/v10_max/ansi_encoder/info.json b/keyboards/keychron/v10_max/ansi_encoder/info.json deleted file mode 100644 index 598c55d5b7..0000000000 --- a/keyboards/keychron/v10_max/ansi_encoder/info.json +++ /dev/null @@ -1,106 +0,0 @@ -{ - "usb": { - "pid": "0x09A0", - "device_version": "1.0.0" - }, - "layouts": { - "LAYOUT_ansi_89": { - "layout": [ - {"matrix": [0, 0], "x": 0, "y": 0}, - {"matrix": [0, 1], "x": 1.5, "y": 0}, - {"matrix": [0, 2], "x": 2.75, "y": 0}, - {"matrix": [0, 3], "x": 3.75, "y": 0}, - {"matrix": [0, 4], "x": 4.75, "y": 0}, - {"matrix": [0, 5], "x": 5.75, "y": 0.25}, - {"matrix": [0, 6], "x": 7, "y": 0.5}, - {"matrix": [0, 7], "x": 8, "y": 0.75}, - {"matrix": [0, 8], "x": 9.75, "y": 0.75}, - {"matrix": [0, 9], "x": 10.75, "y": 0.5}, - {"matrix": [0, 10], "x": 12, "y": 0.25}, - {"matrix": [0, 11], "x": 13, "y": 0}, - {"matrix": [0, 12], "x": 14, "y": 0}, - {"matrix": [0, 13], "x": 15, "y": 0}, - {"matrix": [0, 14], "x": 16.5, "y": 0}, - {"matrix": [0, 17], "x": 17.75, "y": 0}, - - {"matrix": [1, 0], "x": 0.5, "y": 1.25}, - {"matrix": [1, 1], "x": 2, "y": 1.25}, - {"matrix": [1, 2], "x": 3, "y": 1.25}, - {"matrix": [1, 3], "x": 4, "y": 1.25}, - {"matrix": [1, 4], "x": 5, "y": 1.5}, - {"matrix": [1, 5], "x": 6, "y": 1.75}, - {"matrix": [1, 6], "x": 7, "y": 2}, - {"matrix": [1, 7], "x": 8, "y": 2}, - {"matrix": [1, 8], "x": 9.5, "y": 2}, - {"matrix": [1, 9], "x": 10.5, "y": 2}, - {"matrix": [1, 10], "x": 11.5, "y": 1.75}, - {"matrix": [1, 11], "x": 12.5, "y": 1.5}, - {"matrix": [1, 12], "x": 13.5, "y": 1.25}, - {"matrix": [1, 13], "x": 14.5, "y": 1.25}, - {"matrix": [1, 14], "x": 15.5, "y": 1.25, "w": 2}, - {"matrix": [1, 17], "x": 18, "y": 1.25}, - - {"matrix": [2, 0], "x": 0.25, "y": 2.25}, - {"matrix": [2, 1], "x": 1.75, "y": 2.25, "w": 1.5}, - {"matrix": [2, 2], "x": 3.25, "y": 2.25}, - {"matrix": [2, 3], "x": 4.25, "y": 2.25}, - {"matrix": [2, 4], "x": 5.25, "y": 2.5}, - {"matrix": [2, 5], "x": 6.25, "y": 2.75}, - {"matrix": [2, 6], "x": 7.25, "y": 3}, - {"matrix": [2, 8], "x": 9.25, "y": 3.25}, - {"matrix": [2, 9], "x": 10.25, "y": 3}, - {"matrix": [2, 10], "x": 11.25, "y": 2.75}, - {"matrix": [2, 11], "x": 12.25, "y": 2.5}, - {"matrix": [2, 12], "x": 13, "y": 2.25}, - {"matrix": [2, 13], "x": 14.25, "y": 2.25}, - {"matrix": [2, 14], "x": 15.25, "y": 2.25}, - {"matrix": [2, 15], "x": 16.25, "y": 2.25, "w": 1.5}, - {"matrix": [2, 17], "x": 18, "y": 2.25}, - - {"matrix": [3, 0], "x": 0.25, "y": 3.25}, - {"matrix": [3, 1], "x": 1.5, "y": 3.25, "w": 1.75}, - {"matrix": [3, 2], "x": 3.25, "y": 3.25}, - {"matrix": [3, 3], "x": 4.25, "y": 3.5}, - {"matrix": [3, 4], "x": 5.25, "y": 3.5}, - {"matrix": [3, 5], "x": 6.25, "y": 3.75}, - {"matrix": [3, 6], "x": 7.25, "y": 4}, - {"matrix": [3, 8], "x": 9.75, "y": 4}, - {"matrix": [3, 9], "x": 10.5, "y": 4}, - {"matrix": [3, 10], "x": 11.5, "y": 3.75}, - {"matrix": [3, 11], "x": 12.5, "y": 3.5}, - {"matrix": [3, 12], "x": 13.75, "y": 3.25}, - {"matrix": [3, 13], "x": 14.75, "y": 3.25}, - {"matrix": [3, 14], "x": 15.75, "y": 3.25, "w": 2.25}, - {"matrix": [3, 17], "x": 18.25, "y": 3.25}, - - {"matrix": [4, 0], "x": 0, "y": 4.25}, - {"matrix": [4, 1], "x": 1.25, "y": 4.25, "w": 2.25}, - {"matrix": [4, 3], "x": 3.5, "y": 4.25}, - {"matrix": [4, 4], "x": 4.75, "y": 4.5}, - {"matrix": [4, 5], "x": 5.5, "y": 4.75}, - {"matrix": [4, 6], "x": 6.5, "y": 4.75}, - {"matrix": [4, 7], "x": 7.5, "y": 5}, - {"matrix": [4, 8], "x": 9, "y": 5.25}, - {"matrix": [4, 9], "x": 10, "y": 5}, - {"matrix": [4, 10], "x": 11, "y": 4.75}, - {"matrix": [4, 11], "x": 12, "y": 4.5}, - {"matrix": [4, 12], "x": 13, "y": 4.5}, - {"matrix": [4, 13], "x": 14, "y": 4.25}, - {"matrix": [4, 14], "x": 15, "y": 4.25, "w": 1.75}, - {"matrix": [4, 16], "x": 17.25, "y": 4.5}, - - {"matrix": [5, 0], "x": 0, "y": 5.25}, - {"matrix": [5, 1], "x": 1.25, "y": 5.25, "w": 1.25}, - {"matrix": [5, 2], "x": 2.5, "y": 5.25, "w": 1.25}, - {"matrix": [5, 4], "x": 4.5, "y": 5.5, "w": 1.25}, - {"matrix": [5, 6], "x": 5.75, "y": 5.75, "w": 2.25}, - {"matrix": [5, 7], "x": 7.75, "y": 6.25}, - {"matrix": [5, 9], "x": 8.75, "y": 6, "w": 3.75}, - {"matrix": [5, 11], "x": 9, "y": 5.75, "w": 7.25}, - {"matrix": [5, 15], "x": 16.25, "y": 5.5}, - {"matrix": [5, 16], "x": 17.25, "y": 5.5}, - {"matrix": [5, 17], "x": 18.25, "y": 5.5} - ] - } - } -} diff --git a/keyboards/keychron/v10_max/ansi_encoder/keymaps/default/keymap.c b/keyboards/keychron/v10_max/ansi_encoder/keymaps/default/keymap.c deleted file mode 100644 index 9d1c44cbd0..0000000000 --- a/keyboards/keychron/v10_max/ansi_encoder/keymaps/default/keymap.c +++ /dev/null @@ -1,76 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#include QMK_KEYBOARD_H -#include "keychron_common.h" - -enum layers { - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN, -}; -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_ansi_89( - KC_MUTE, KC_ESC, KC_BRID, KC_BRIU, KC_MCTRL, KC_LNPAD, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_INS, KC_DEL, - MC_1, KC_GRV, 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_PGUP, - MC_2, 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_PGDN, - MC_3, 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_HOME, - MC_4, KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, - MC_5, KC_LCTL, KC_LOPTN, KC_LCMMD, KC_SPC, MO(MAC_FN), KC_SPC, KC_RCMMD, KC_LEFT, KC_DOWN, KC_RGHT), - - [MAC_FN] = LAYOUT_ansi_89( - RGB_TOG, _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, - _______, _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, KC_END, - _______, _______, _______, _______, _______, _______, BAT_LVL, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - - [WIN_BASE] = LAYOUT_ansi_89( - KC_MUTE, KC_ESC, 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_INS, KC_DEL, - MC_1, KC_GRV, 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_PGUP, - MC_2, 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_PGDN, - MC_3, 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_HOME, - MC_4, KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, - MC_5, KC_LCTL, KC_LWIN, KC_LALT, KC_SPC, MO(WIN_FN), KC_SPC, KC_RALT, KC_LEFT, KC_DOWN, KC_RGHT), - - [WIN_FN] = LAYOUT_ansi_89( - RGB_TOG, _______, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, - _______, _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, KC_END, - _______, _______, _______, _______, _______, _______, BAT_LVL, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), -}; - -#if defined(ENCODER_MAP_ENABLE) -const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][2] = { - [MAC_BASE] = {ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [MAC_FN] = {ENCODER_CCW_CW(RGB_VAD, RGB_VAI)}, - [WIN_BASE] = {ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [WIN_FN] = {ENCODER_CCW_CW(RGB_VAD, RGB_VAI)} -}; -#endif // ENCODER_MAP_ENABLE - -// clang-format on -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - if (!process_record_keychron_common(keycode, record)) { - return false; - } - return true; -} diff --git a/keyboards/keychron/v10_max/ansi_encoder/keymaps/via/keymap.c b/keyboards/keychron/v10_max/ansi_encoder/keymaps/via/keymap.c deleted file mode 100644 index 9d1c44cbd0..0000000000 --- a/keyboards/keychron/v10_max/ansi_encoder/keymaps/via/keymap.c +++ /dev/null @@ -1,76 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#include QMK_KEYBOARD_H -#include "keychron_common.h" - -enum layers { - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN, -}; -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_ansi_89( - KC_MUTE, KC_ESC, KC_BRID, KC_BRIU, KC_MCTRL, KC_LNPAD, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_INS, KC_DEL, - MC_1, KC_GRV, 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_PGUP, - MC_2, 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_PGDN, - MC_3, 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_HOME, - MC_4, KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, - MC_5, KC_LCTL, KC_LOPTN, KC_LCMMD, KC_SPC, MO(MAC_FN), KC_SPC, KC_RCMMD, KC_LEFT, KC_DOWN, KC_RGHT), - - [MAC_FN] = LAYOUT_ansi_89( - RGB_TOG, _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, - _______, _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, KC_END, - _______, _______, _______, _______, _______, _______, BAT_LVL, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - - [WIN_BASE] = LAYOUT_ansi_89( - KC_MUTE, KC_ESC, 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_INS, KC_DEL, - MC_1, KC_GRV, 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_PGUP, - MC_2, 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_PGDN, - MC_3, 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_HOME, - MC_4, KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, - MC_5, KC_LCTL, KC_LWIN, KC_LALT, KC_SPC, MO(WIN_FN), KC_SPC, KC_RALT, KC_LEFT, KC_DOWN, KC_RGHT), - - [WIN_FN] = LAYOUT_ansi_89( - RGB_TOG, _______, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, - _______, _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, KC_END, - _______, _______, _______, _______, _______, _______, BAT_LVL, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), -}; - -#if defined(ENCODER_MAP_ENABLE) -const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][2] = { - [MAC_BASE] = {ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [MAC_FN] = {ENCODER_CCW_CW(RGB_VAD, RGB_VAI)}, - [WIN_BASE] = {ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [WIN_FN] = {ENCODER_CCW_CW(RGB_VAD, RGB_VAI)} -}; -#endif // ENCODER_MAP_ENABLE - -// clang-format on -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - if (!process_record_keychron_common(keycode, record)) { - return false; - } - return true; -} diff --git a/keyboards/keychron/v10_max/ansi_encoder/keymaps/via/rules.mk b/keyboards/keychron/v10_max/ansi_encoder/keymaps/via/rules.mk deleted file mode 100644 index 1e5b99807c..0000000000 --- a/keyboards/keychron/v10_max/ansi_encoder/keymaps/via/rules.mk +++ /dev/null @@ -1 +0,0 @@ -VIA_ENABLE = yes diff --git a/keyboards/keychron/v10_max/ansi_encoder/rules.mk b/keyboards/keychron/v10_max/ansi_encoder/rules.mk deleted file mode 100644 index 7ff128fa69..0000000000 --- a/keyboards/keychron/v10_max/ansi_encoder/rules.mk +++ /dev/null @@ -1 +0,0 @@ -# This file intentionally left blank \ No newline at end of file diff --git a/keyboards/keychron/v10_max/board.h b/keyboards/keychron/v10_max/board.h deleted file mode 100644 index 54fba748bf..0000000000 --- a/keyboards/keychron/v10_max/board.h +++ /dev/null @@ -1,226 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#pragma once - -#include_next - -// clang-format off - -/* Set GPIOA_SWDIO to INPUT and NOT FLOATING */ -#undef VAL_GPIOA_MODER -#define VAL_GPIOA_MODER (PIN_MODE_INPUT(GPIOA_BUTTON) | \ - PIN_MODE_INPUT(GPIOA_PIN1) | \ - PIN_MODE_INPUT(GPIOA_PIN2) | \ - PIN_MODE_INPUT(GPIOA_PIN3) | \ - PIN_MODE_ALTERNATE(GPIOA_CS43L22_LRCK) |\ - PIN_MODE_ALTERNATE(GPIOA_L3GD20_SCL) | \ - PIN_MODE_ALTERNATE(GPIOA_L3GD20_SD0) | \ - PIN_MODE_ALTERNATE(GPIOA_L3GD20_SDI) | \ - PIN_MODE_INPUT(GPIOA_PIN8) | \ - PIN_MODE_INPUT(GPIOA_VBUS_FS) | \ - PIN_MODE_ALTERNATE(GPIOA_OTG_FS_ID) | \ - PIN_MODE_ALTERNATE(GPIOA_OTG_FS_DM) | \ - PIN_MODE_ALTERNATE(GPIOA_OTG_FS_DP) | \ - PIN_MODE_INPUT(GPIOA_SWDIO) | \ - PIN_MODE_INPUT(GPIOA_SWCLK) | \ - PIN_MODE_INPUT(GPIOA_PIN15)) - -#undef VAL_GPIOA_PUPDR -#define VAL_GPIOA_PUPDR (PIN_PUPDR_FLOATING(GPIOA_BUTTON) | \ - PIN_PUPDR_PULLUP(GPIOA_PIN1) | \ - PIN_PUPDR_PULLUP(GPIOA_PIN2) | \ - PIN_PUPDR_PULLUP(GPIOA_PIN3) | \ - PIN_PUPDR_FLOATING(GPIOA_CS43L22_LRCK) |\ - PIN_PUPDR_FLOATING(GPIOA_L3GD20_SCL) | \ - PIN_PUPDR_PULLUP(GPIOA_L3GD20_SD0) | \ - PIN_PUPDR_PULLUP(GPIOA_L3GD20_SDI) | \ - PIN_PUPDR_PULLUP(GPIOA_PIN8) | \ - PIN_PUPDR_FLOATING(GPIOA_VBUS_FS) | \ - PIN_PUPDR_FLOATING(GPIOA_OTG_FS_ID) | \ - PIN_PUPDR_FLOATING(GPIOA_OTG_FS_DM) | \ - PIN_PUPDR_FLOATING(GPIOA_OTG_FS_DP) | \ - PIN_PUPDR_PULLUP(GPIOA_SWDIO) | \ - PIN_PUPDR_PULLUP(GPIOA_SWCLK) | \ - PIN_PUPDR_PULLUP(GPIOA_PIN15)) - -#undef VAL_GPIOB_MODER -#define VAL_GPIOB_MODER (PIN_MODE_INPUT(GPIOB_PIN0) | \ - PIN_MODE_INPUT(GPIOB_PIN1) | \ - PIN_MODE_INPUT(GPIOB_PIN2) | \ - PIN_MODE_INPUT(GPIOB_SWO) | \ - PIN_MODE_INPUT(GPIOB_PIN4) | \ - PIN_MODE_INPUT(GPIOB_PIN5) | \ - PIN_MODE_INPUT(GPIOB_LSM303DLHC_SCL) | \ - PIN_MODE_INPUT(GPIOB_PIN7) | \ - PIN_MODE_INPUT(GPIOB_PIN8) | \ - PIN_MODE_INPUT(GPIOB_LSM303DLHC_SDA) | \ - PIN_MODE_INPUT(GPIOB_MP45DT02_CLK_IN) |\ - PIN_MODE_INPUT(GPIOB_PIN11) | \ - PIN_MODE_INPUT(GPIOB_PIN12) | \ - PIN_MODE_INPUT(GPIOB_PIN13) | \ - PIN_MODE_INPUT(GPIOB_PIN14) | \ - PIN_MODE_INPUT(GPIOB_PIN15)) - -#undef VAL_GPIOB_PUPDR -#define VAL_GPIOB_PUPDR (PIN_PUPDR_PULLDOWN(GPIOB_PIN0) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN1) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN2) | \ - PIN_PUPDR_PULLDOWN(GPIOB_SWO) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN4) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN5) | \ - PIN_PUPDR_PULLDOWN(GPIOB_LSM303DLHC_SCL) |\ - PIN_PUPDR_PULLDOWN(GPIOB_PIN7) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN8) | \ - PIN_PUPDR_PULLDOWN(GPIOB_LSM303DLHC_SDA) |\ - PIN_PUPDR_PULLDOWN(GPIOB_MP45DT02_CLK_IN) |\ - PIN_PUPDR_PULLDOWN(GPIOB_PIN11) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN12) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN13) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN14) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN15)) - -#undef VAL_GPIOB_AFRL -#define VAL_GPIOB_AFRL (PIN_AFIO_AF(GPIOB_PIN0, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN1, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN2, 0U) | \ - PIN_AFIO_AF(GPIOB_SWO, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN4, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN5, 0U) | \ - PIN_AFIO_AF(GPIOB_LSM303DLHC_SCL, 0) | \ - PIN_AFIO_AF(GPIOB_PIN7, 0U)) - -#undef VAL_GPIOB_AFRH -#define VAL_GPIOB_AFRH (PIN_AFIO_AF(GPIOB_PIN8, 0U) | \ - PIN_AFIO_AF(GPIOB_LSM303DLHC_SDA, 0) | \ - PIN_AFIO_AF(GPIOB_MP45DT02_CLK_IN, 0U) |\ - PIN_AFIO_AF(GPIOB_PIN11, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN12, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN13, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN14, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN15, 0U)) - -/* C5 Need to be pulldown */ -#undef VAL_GPIOC_MODER -#define VAL_GPIOC_MODER (PIN_MODE_INPUT(GPIOC_OTG_FS_POWER_ON) |\ - PIN_MODE_INPUT(GPIOC_PIN1) | \ - PIN_MODE_INPUT(GPIOC_PIN2) | \ - PIN_MODE_INPUT(GPIOC_CS43L22_AIN4x) | \ - PIN_MODE_INPUT(GPIOC_PIN4) | \ - PIN_MODE_INPUT(GPIOC_PIN5) | \ - PIN_MODE_INPUT(GPIOC_PIN6) | \ - PIN_MODE_INPUT(GPIOC_CS43L22_MCLK) | \ - PIN_MODE_INPUT(GPIOC_PIN8) | \ - PIN_MODE_INPUT(GPIOC_PIN9) | \ - PIN_MODE_INPUT(GPIOC_CS43L22_SCLK) | \ - PIN_MODE_INPUT(GPIOC_PIN11) | \ - PIN_MODE_INPUT(GPIOC_CS43L22_SDIN) | \ - PIN_MODE_INPUT(GPIOC_PIN13) | \ - PIN_MODE_INPUT(GPIOC_OSC32_IN) | \ - PIN_MODE_INPUT(GPIOC_OSC32_OUT)) - -#undef VAL_GPIOC_PUPDR -#define VAL_GPIOC_PUPDR (PIN_PUPDR_PULLUP(GPIOC_OTG_FS_POWER_ON) |\ - PIN_PUPDR_PULLUP(GPIOC_PIN1) | \ - PIN_PUPDR_PULLUP(GPIOC_PIN2) | \ - PIN_PUPDR_PULLUP(GPIOC_CS43L22_AIN4x) |\ - PIN_PUPDR_PULLUP(GPIOC_PIN4) | \ - PIN_PUPDR_PULLDOWN(GPIOC_PIN5) | \ - PIN_PUPDR_PULLUP(GPIOC_PIN6) | \ - PIN_PUPDR_PULLUP(GPIOC_CS43L22_MCLK) | \ - PIN_PUPDR_PULLUP(GPIOC_PIN8) | \ - PIN_PUPDR_PULLUP(GPIOC_PIN9) | \ - PIN_PUPDR_PULLUP(GPIOC_CS43L22_SCLK) | \ - PIN_PUPDR_PULLUP(GPIOC_PIN11) | \ - PIN_PUPDR_PULLUP(GPIOC_CS43L22_SDIN) | \ - PIN_PUPDR_PULLUP(GPIOC_PIN13) | \ - PIN_PUPDR_PULLUP(GPIOC_OSC32_IN) | \ - PIN_PUPDR_PULLUP(GPIOC_OSC32_OUT)) - -/* Set all GPIOD pins to INPUT & PULLUP to avoid FLOATING */ -#undef VAL_GPIOD_MODER -#define VAL_GPIOD_MODER (PIN_MODE_INPUT(GPIOD_PIN0) | \ - PIN_MODE_INPUT(GPIOD_PIN1) | \ - PIN_MODE_INPUT(GPIOD_PIN2) | \ - PIN_MODE_INPUT(GPIOD_PIN3) | \ - PIN_MODE_INPUT(GPIOD_CS43L22_RESET) | \ - PIN_MODE_INPUT(GPIOD_OverCurrent) | \ - PIN_MODE_INPUT(GPIOD_PIN6) | \ - PIN_MODE_INPUT(GPIOD_PIN7) | \ - PIN_MODE_INPUT(GPIOD_PIN8) | \ - PIN_MODE_INPUT(GPIOD_PIN9) | \ - PIN_MODE_INPUT(GPIOD_PIN10) | \ - PIN_MODE_INPUT(GPIOD_PIN11) | \ - PIN_MODE_INPUT(GPIOD_LED4) | \ - PIN_MODE_INPUT(GPIOD_LED3) | \ - PIN_MODE_INPUT(GPIOD_LED5) | \ - PIN_MODE_INPUT(GPIOD_LED6)) - -#undef VAL_GPIOD_PUPDR -#define VAL_GPIOD_PUPDR (PIN_PUPDR_PULLUP(GPIOD_PIN0) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN1) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN2) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN3) | \ - PIN_PUPDR_PULLUP(GPIOD_CS43L22_RESET) |\ - PIN_PUPDR_PULLUP(GPIOD_OverCurrent) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN6) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN7) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN8) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN9) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN10) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN11) | \ - PIN_PUPDR_PULLUP(GPIOD_LED4) | \ - PIN_PUPDR_PULLUP(GPIOD_LED3) | \ - PIN_PUPDR_PULLUP(GPIOD_LED5) | \ - PIN_PUPDR_PULLUP(GPIOD_LED6)) - -/* Set all GPIOE pins to INPUT & PULLUP to avoid FLOATING */ -#undef VAL_GPIOE_MODER -#define VAL_GPIOE_MODER (PIN_MODE_INPUT(GPIOE_L3GD20_INT1) | \ - PIN_MODE_INPUT(GPIOE_L3GD20_INT2) | \ - PIN_MODE_INPUT(GPIOE_LSM303DLHC_DRDY) |\ - PIN_MODE_INPUT(GPIOE_L3GD20_CS) | \ - PIN_MODE_INPUT(GPIOE_LSM303DLHC_INT1) |\ - PIN_MODE_INPUT(GPIOE_LSM303DLHC_INT2) |\ - PIN_MODE_INPUT(GPIOE_PIN6) | \ - PIN_MODE_INPUT(GPIOE_PIN7) | \ - PIN_MODE_INPUT(GPIOE_PIN8) | \ - PIN_MODE_INPUT(GPIOE_PIN9) | \ - PIN_MODE_INPUT(GPIOE_PIN10) | \ - PIN_MODE_INPUT(GPIOE_PIN11) | \ - PIN_MODE_INPUT(GPIOE_PIN12) | \ - PIN_MODE_INPUT(GPIOE_PIN13) | \ - PIN_MODE_INPUT(GPIOE_PIN14) | \ - PIN_MODE_INPUT(GPIOE_PIN15)) - -#undef VAL_GPIOE_PUPDR -#define VAL_GPIOE_PUPDR (PIN_PUPDR_PULLUP(GPIOE_L3GD20_INT1) | \ - PIN_PUPDR_PULLUP(GPIOE_L3GD20_INT2) | \ - PIN_PUPDR_PULLUP(GPIOE_LSM303DLHC_DRDY) |\ - PIN_PUPDR_PULLUP(GPIOE_L3GD20_CS) | \ - PIN_PUPDR_PULLUP(GPIOE_LSM303DLHC_INT1) |\ - PIN_PUPDR_PULLUP(GPIOE_LSM303DLHC_INT2) |\ - PIN_PUPDR_PULLUP(GPIOE_PIN6) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN7) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN8) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN9) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN10) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN11) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN12) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN13) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN14) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN15)) - diff --git a/keyboards/keychron/v10_max/config.h b/keyboards/keychron/v10_max/config.h deleted file mode 100644 index 20167ee437..0000000000 --- a/keyboards/keychron/v10_max/config.h +++ /dev/null @@ -1,86 +0,0 @@ -/* 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 . - */ - -#pragma once - -/* Encoder Configuration */ -#define ENCODER_DEFAULT_POS 0x3 -#define ENCODER_MAP_KEY_DELAY 2 - -#ifdef LK_WIRELESS_ENABLE -/* Hardware configuration */ -# define P2P4_MODE_SELECT_PIN A10 -# define BT_MODE_SELECT_PIN A9 - -# define LKBT51_RESET_PIN C4 -# define LKBT51_INT_INPUT_PIN B1 -# define BLUETOOTH_INT_OUTPUT_PIN A4 - -# define USB_POWER_SENSE_PIN B0 -# define USB_POWER_CONNECTED_LEVEL 0 - -# define BAT_CHARGING_PIN C14 -# define BAT_CHARGING_LEVEL 0 - -# define BAT_LOW_LED_PIN B12 -# define BAT_LOW_LED_PIN_ON_STATE 1 - -# define BT_HOST_DEVICES_COUNT 3 - -# if defined(RGB_MATRIX_ENABLE) - -# define LED_DRIVER_SHUTDOWN_PIN B7 - -# define BT_HOST_LED_MATRIX_LIST \ - { 17, 18, 19 } - -# define P2P4G_HOST_LED_MATRIX_LIST \ - { 20 } - -# 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 - -/* Reinit LED driver on tranport changed */ -# define REINIT_LED_DRIVER 1 - -# endif - -/* Keep USB connection in blueooth mode */ -# define KEEP_USB_CONNECTION_IN_WIRELESS_MODE - -/* Enable bluetooth NKRO */ -# define WIRELESS_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 - -/* Factory test keys */ -#define FN_KEY_1 MO(1) -#define FN_KEY_2 MO(3) -#define FN_BL_TRIG_KEY KC_END - -#define P2P4G_CELAR_MASK 0 -#define MATRIX_IO_DELAY 10 diff --git a/keyboards/keychron/v10_max/firmware/keychron_v10_max_ansi_encoder_via.bin b/keyboards/keychron/v10_max/firmware/keychron_v10_max_ansi_encoder_via.bin deleted file mode 100644 index 54f2170f3f..0000000000 Binary files a/keyboards/keychron/v10_max/firmware/keychron_v10_max_ansi_encoder_via.bin and /dev/null differ diff --git a/keyboards/keychron/v10_max/halconf.h b/keyboards/keychron/v10_max/halconf.h deleted file mode 100644 index 37bcc7c47b..0000000000 --- a/keyboards/keychron/v10_max/halconf.h +++ /dev/null @@ -1,31 +0,0 @@ -/* Copyright 2024 @ 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 - -#define _CHIBIOS_HAL_CONF_VER_8_0_ - -#define HAL_USE_SPI TRUE - -#ifdef LK_WIRELESS_ENABLE -# define HAL_USE_RTC TRUE -#endif - -#if defined(LK_WIRELESS_ENABLE) || defined(ENCODER_ENABLE) -# define PAL_USE_CALLBACKS TRUE -#endif - -#include_next diff --git a/keyboards/keychron/v10_max/info.json b/keyboards/keychron/v10_max/info.json deleted file mode 100644 index bd8a1a60e4..0000000000 --- a/keyboards/keychron/v10_max/info.json +++ /dev/null @@ -1,80 +0,0 @@ -{ - "keyboard_name": "Keychron V10 Max", - "manufacturer": "Keychron", - "url": "https://github.com/Keychron", - "maintainer": "lokher", - "processor": "STM32F401", - "bootloader": "stm32-dfu", - "usb": { - "vid": "0x3434" - }, - "features": { - "bootmagic": true, - "extrakey" : true, - "mousekey" : true, - "dip_switch" : true, - "nkro" : true, - "encoder": true, - "encoder_map": true, - "rgb_matrix": true, - "raw" : true, - "send_string": true - }, - "encoder": { - "rotary": [ - { - "pin_a": "B15", - "pin_b": "B14" - } - ] - }, - "matrix_pins": { - "cols": ["C6", "C7", "C8", "A14", "A15", "C10", "C11", "C13", "C14", "C15", "C0", "C1", "C2", "C3", "A0", "A1", "A2", "A3"], - "rows": ["C12", "D2", "B3", "B4", "B5", "B6"] - }, - "diode_direction": "ROW2COL", - "dip_switch" :{ - "pins": ["A8"] - }, - "rgb_matrix": { - "driver": "snled27351_spi", - "sleep": true, - "animations": { - "band_spiral_val": true, - "breathing": true, - "cycle_all": true, - "cycle_left_right": true, - "cycle_out_in": true, - "cycle_out_in_dual": true, - "cycle_pinwheel": true, - "cycle_spiral": true, - "cycle_up_down": true, - "digital_rain": true, - "dual_beacon": true, - "jellybean_raindrops": true, - "pixel_rain": true, - "rainbow_beacon": true, - "rainbow_moving_chevron": true, - "solid_reactive_multinexus": true, - "solid_reactive_multiwide": true, - "solid_reactive_simple": true, - "solid_splash": true, - "splash": true, - "typing_heatmap": true - } - }, - "eeprom": { - "wear_leveling": { - "driver": "embedded_flash", - "logical_size": 2048, - "backing_size": 4096 - } - }, - "build": { - "debounce_type": "sym_eager_pk" - }, - "debounce": 20, - "bootmagic": { - "matrix": [0,1] - } -} diff --git a/keyboards/keychron/v10_max/mcuconf.h b/keyboards/keychron/v10_max/mcuconf.h deleted file mode 100644 index 89294ee64b..0000000000 --- a/keyboards/keychron/v10_max/mcuconf.h +++ /dev/null @@ -1,37 +0,0 @@ -/* Copyright 2024 @ 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 - -#include_next - -#undef STM32_HSECLK -#define STM32_HSECLK 16000000 - -#undef STM32_PLLM_VALUE -#define STM32_PLLM_VALUE 8 - -#undef STM32_PLLN_VALUE -#define STM32_PLLN_VALUE 96 - -#undef STM32_PLLP_VALUE -#define STM32_PLLP_VALUE 4 - -#undef STM32_PLLQ_VALUE -#define STM32_PLLQ_VALUE 4 - -#undef STM32_SPI_USE_SPI1 -#define STM32_SPI_USE_SPI1 TRUE diff --git a/keyboards/keychron/v10_max/readme.md b/keyboards/keychron/v10_max/readme.md deleted file mode 100644 index 3e3d1fbd02..0000000000 --- a/keyboards/keychron/v10_max/readme.md +++ /dev/null @@ -1,21 +0,0 @@ -# Keychron V10 Max - -![Keychron V10 Max](https://www.keychron.com/cdn/shop/files/Keychron-V10-Max-wireless-mechanical-keyboard55_2048x.jpg?v=1708920832) - -A customizable 75% ergonomic wireless keyboard. - -* Keyboard Maintainer: [Keychron](https://github.com/keychron) -* Hardware Supported: Keychron V10 Max -* Hardware Availability: [Keychron V10 Max QMK/VIA Wireless Custom Mechanical Keyboard](https://www.keychron.com/products/keychron-v10-max-qmk-via-wireless-custom-mechanical-keyboard) - -Make example for this keyboard (after setting up your build environment): - - make keychron/v10_max/ansi_encoder:default - -Flashing example for this keyboard: - - make keychron/v10_max/ansi_encoder:default:flash - -**Reset Key**: Toggle mode switch to "Cable", hold down the *Esc* key or reset button underneath space bar while connecting the USB cable, - -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). diff --git a/keyboards/keychron/v10_max/rules.mk b/keyboards/keychron/v10_max/rules.mk deleted file mode 100644 index 4eaf6820bc..0000000000 --- a/keyboards/keychron/v10_max/rules.mk +++ /dev/null @@ -1,4 +0,0 @@ -include keyboards/keychron/common/wireless/wireless.mk -include keyboards/keychron/common/keychron_common.mk - -VPATH += $(TOP_DIR)/keyboards/keychron diff --git a/keyboards/keychron/v10_max/v10_max.c b/keyboards/keychron/v10_max/v10_max.c deleted file mode 100644 index 25949df514..0000000000 --- a/keyboards/keychron/v10_max/v10_max.c +++ /dev/null @@ -1,84 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#include "quantum.h" -#include "keychron_task.h" -#ifdef FACTORY_TEST_ENABLE -# include "factory_test.h" -# include "keychron_common.h" -#endif -#ifdef LK_WIRELESS_ENABLE -# include "lkbt51.h" -# include "wireless.h" -# include "keychron_wireless_common.h" -# include "battery.h" -#endif - -#define POWER_ON_LED_DURATION 3000 -static uint32_t power_on_indicator_timer; - -#ifdef DIP_SWITCH_ENABLE -bool dip_switch_update_kb(uint8_t index, bool active) { - if (index == 0) { - default_layer_set(1UL << (active ? 0 : 2)); - } - dip_switch_update_user(index, active); - - return true; -} -#endif - -void keyboard_post_init_kb(void) { -#ifdef LK_WIRELESS_ENABLE - palSetLineMode(P2P4_MODE_SELECT_PIN, PAL_MODE_INPUT); - palSetLineMode(BT_MODE_SELECT_PIN, PAL_MODE_INPUT); - - writePin(BAT_LOW_LED_PIN, BAT_LOW_LED_PIN_ON_STATE); - - lkbt51_init(false); - wireless_init(); -#endif - - power_on_indicator_timer = timer_read32(); -#ifdef ENCODER_ENABLE - encoder_cb_init(); -#endif - - keyboard_post_init_user(); -} - -bool keychron_task_kb(void) { - if (power_on_indicator_timer) { - if (timer_elapsed32(power_on_indicator_timer) > POWER_ON_LED_DURATION) { - power_on_indicator_timer = 0; - -#ifdef LK_WIRELESS_ENABLE - writePin(BAT_LOW_LED_PIN, !BAT_LOW_LED_PIN_ON_STATE); -#endif - } else { -#ifdef LK_WIRELESS_ENABLE - writePin(BAT_LOW_LED_PIN, BAT_LOW_LED_PIN_ON_STATE); -#endif - } - } - return true; -} - -#ifdef LK_WIRELESS_ENABLE -bool lpm_is_kb_idle(void) { - return power_on_indicator_timer == 0 && !factory_reset_indicating(); -} -#endif diff --git a/keyboards/keychron/v10_max/via_json/v10_max_ansi_encoder.json b/keyboards/keychron/v10_max/via_json/v10_max_ansi_encoder.json deleted file mode 100644 index 0256eb20e9..0000000000 --- a/keyboards/keychron/v10_max/via_json/v10_max_ansi_encoder.json +++ /dev/null @@ -1,400 +0,0 @@ -{ - "name": "Keychron V10 Max ANSI Knob", - "vendorId": "0x3434", - "productId": "0x09A0", - "keycodes": ["qmk_lighting"], - "menus": [ - { - "label": "Lighting", - "content": [ - { - "label": "Backlight", - "content": [ - { - "label": "Brightness", - "type": "range", - "options": [0, 255], - "content": ["id_qmk_rgb_matrix_brightness", 3, 1] - }, - { - "label": "Effect", - "type": "dropdown", - "content": ["id_qmk_rgb_matrix_effect", 3, 2], - "options": [ - ["None", 0], - ["Solid Color", 1], - ["Breathing", 2], - ["Band Spiral Val", 3], - ["Cycle All", 4], - ["Cycle Left Right", 5], - ["Cycle Up Down", 6], - ["Rainbow Moving Chevron", 7], - ["Cycle Out In", 8], - ["Cycle Out In Dual", 9], - ["Cycle Pinwheel", 10], - ["Cycle Spiral", 11], - ["Dual Beacon", 12], - ["Rainbow Beacon", 13], - ["Jellybean Raindrops", 14], - ["Pixel Rain", 15], - ["Typing Heatmap", 16], - ["Digital Rain", 17], - ["Reactive Simple", 18], - ["Reactive Multiwide", 19], - ["Reactive Multinexus", 20], - ["Splash", 21], - ["Solid Splash", 22] - ] - }, - { - "showIf": "{id_qmk_rgb_matrix_effect} > 1", - "label": "Effect Speed", - "type": "range", - "options": [0, 255], - "content": ["id_qmk_rgb_matrix_effect_speed", 3, 3] - }, - { - "showIf": "{id_qmk_rgb_matrix_effect} != 0 && ( {id_qmk_rgb_matrix_effect} < 4 || {id_qmk_rgb_matrix_effect} == 18 || ({id_qmk_rgb_matrix_effect} > 17 && {id_qmk_rgb_matrix_effect} != 21) ) ", - "label": "Color", - "type": "color", - "content": ["id_qmk_rgb_matrix_color", 3, 4] - } - ] - } - ] - } - ], - "customKeycodes": [ - {"name": "Left Option", "title": "Left Option", "shortName": "LOpt"}, - {"name": "Right Option", "title": "Right Option", "shortName": "ROpt"}, - {"name": "Left Cmd", "title": "Left Command", "shortName": "LCmd"}, - {"name": "Right Cmd", "title": "Right Command", "shortName": "RCmd"}, - {"name": "Misson Control", "title": "Misson Control in Mac", "shortName": "MCtl"}, - {"name": "Lanuch Pad", "title": "Lanuch Pad in Windows", "shortName": "LPad"}, - {"name": "Task View", "title": "Task View in Windows", "shortName": "Task"}, - {"name": "File Explorer", "title": "File Explorer in Windows", "shortName": "File"}, - {"name": "Screen shot", "title": "Screenshot in macOS", "shortName": "SShot"}, - {"name": "Cortana", "title": "Cortana in Windows", "shortName": "Cortana"}, - {"name": "Siri", "title": "Siri in macOS", "shortName": "Siri"}, - {"name": "Bluetooth Host 1", "title": "Bluetooth Host 1", "shortName": "BTH1"}, - {"name": "Bluetooth Host 2", "title": "Bluetooth Host 2", "shortName": "BTH2"}, - {"name": "Bluetooth Host 3", "title": "Bluetooth Host 3", "shortName": "BTH3"}, - {"name": "2.4G", "title": "2.4G", "shortName": "2.4G"}, - {"name": "Battery Level", "title": "Show battery level", "shortName": "Batt"} - ], - "matrix": {"rows": 6, "cols": 18}, - "layouts": { - "keymap": [ - [ - { - "x": 0.5, - "c": "#aaaaaa" - }, - "0,0\n\n\n\n\n\n\n\n\ne0", - { - "x": 0.5, - "c": "#777777" - }, - "0,1\nESC", - { - "x": 0.25, - "c": "#cccccc" - }, - "0,2", - "0,3", - { - "x": 9.35 - }, - "0,12", - "0,13", - { - "x": 0.25, - "c": "#aaaaaa" - }, - "0,14", - { - "x": 0.25 - }, - "0,17" - ], - [ - { - "y": 0.25, - "x": 0.75, - "c": "#aaaaaa" - }, - "1,0", - { - "x": 0.5, - "c": "#cccccc" - }, - "1,1", - "1,2", - "1,3", - { - "x": 8.65 - }, - "1,12", - "1,13", - { - "c": "#aaaaaa", - "w": 2 - }, - "1,14", - { - "x": 0.6 - }, - "1,17" - ], - [ - { - "x": 0.5, - "c": "#aaaaaa" - }, - "2,0", - { - "x": 0.5, - "w": 1.5 - }, - "2,1", - { - "c": "#cccccc" - }, - "2,2", - { - "x": 9.9 - }, - "2,13", - "2,14", - { - "w": 1.75, - "c": "#aaaaaa" - }, - "2,15", - { - "x": 0.5 - }, - "2,17" - ], - [ - { - "x": 0.25, - "c": "#aaaaaa" - }, - "3,0", - { - "x": 0.5, - "w": 1.75 - }, - "3,1", - { - "c": "#cccccc" - }, - "3,2", - { - "x": 9.6 - }, - "3,12", - "3,13", - { - "c": "#777777", - "w": 2.25 - }, - "3,14", - { - "x": 0.5, - "c": "#aaaaaa" - }, - "3,17" - ], - [ - { - "c": "#aaaaaa" - }, - "4,0", - { - "x": 0.5, - "w": 2.25 - }, - "4,1", - { - "c": "#cccccc" - }, - "4,3", - { - "x": 9.95 - }, - "4,13", - { - "c": "#aaaaaa", - "w": 1.75 - }, - "4,14" - ], - [ - { - "y": -0.75, - "x": 17.7, - "c": "#aaaaaa" - }, - "4,16" - ], - [ - { - "y": -0.25, - "c": "#aaaaaa" - }, - "5,0", - { - "x": 0.5, - "w": 1.25 - }, - "5,1", - { - "w": 1.25 - }, - "5,2" - ], - [ - { - "y": -0.75, - "x": 16.7, - "c": "#aaaaaa" - }, - "5,15", - "5,16", - "5,17" - ], - [ - { - "r": 6, - "y": -7.05, - "x": 5.4, - "c": "#cccccc" - }, - "0,4", - "0,5", - { - "x": 0.25, - "c": "#aaaaaa" - }, - "0,6", - "0,7" - ], - [ - { - "y": 0.25, - "x": 5.55, - "c": "#cccccc" - }, - "1,4", - "1,5", - "1,6", - "1,7" - ], - [ - { - "x": 4.9 - }, - "2,3", - "2,4", - "2,5", - "2,6" - ], - [ - { - "x": 5 - }, - "3,3", - "3,4", - "3,5", - "3,6" - ], - [ - { - "x": 5.35 - }, - "4,4", - "4,5", - "4,6", - "4,7" - ], - [ - { - "x": 5.35, - "c": "#aaaaaa", - "w": 1.25 - }, - "5,4", - { - "w": 2.25 - }, - "5,6", - "5,7" - ], - [ - { - "r": -6, - "y": -4.25, - "x": 10.05 - }, - "0,8", - "0,9", - { - "x": 0.25, - "c": "#cccccc" - }, - "0,10", - "0,11" - ], - [ - { - "y": 0.25, - "x": 9.4 - }, - "1,8", - "1,9", - "1,10", - "1,11" - ], - [ - { - "x": 8.9 - }, - "2,8", - "2,9", - "2,10", - "2,11", - "2,12" - ], - [ - { - "x": 9.4 - }, - "3,8", - "3,9", - "3,10", - "3,11" - ], - [ - { - "x": 8.85 - }, - "4,8", - "4,9", - "4,10", - "4,11", - "4,12" - ], - [ - { - "x": 8.85, - "w": 2.55, - "c": "#aaaaaa" - }, - "5,9", - "5,11" - ] - ] - } -} diff --git a/keyboards/keychron/v1_max/ansi_encoder/ansi_encoder.c b/keyboards/keychron/v1_max/ansi_encoder/ansi_encoder.c deleted file mode 100644 index 128b784e04..0000000000 --- a/keyboards/keychron/v1_max/ansi_encoder/ansi_encoder.c +++ /dev/null @@ -1,149 +0,0 @@ -/* 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 . - */ - -#include "quantum.h" - -// clang-format off - -#ifdef RGB_MATRIX_ENABLE -const snled27351_led_t g_snled27351_leds[RGB_MATRIX_LED_COUNT] = { -/* Refer to SNLED27351 manual for these locations - * driver - * | R location - * | | G location - * | | | B location - * | | | | */ - {0, G_1, I_1, H_1}, - {0, G_2, I_2, H_2}, - {0, G_3, I_3, H_3}, - {0, G_4, I_4, H_4}, - {0, G_5, I_5, H_5}, - {0, G_6, I_6, H_6}, - {0, G_7, I_7, H_7}, - {0, G_8, I_8, H_8}, - {0, G_9, I_9, H_9}, - {0, G_10, I_10, H_10}, - {0, G_11, I_11, H_11}, - {0, G_12, I_12, H_12}, - {0, G_13, I_13, H_13}, - {0, G_14, I_14, H_14}, - - {0, A_1, C_1, B_1}, - {0, A_2, C_2, B_2}, - {0, A_3, C_3, B_3}, - {0, A_4, C_4, B_4}, - {0, A_5, C_5, B_5}, - {0, A_6, C_6, B_6}, - {0, A_7, C_7, B_7}, - {0, A_8, C_8, B_8}, - {0, A_9, C_9, B_9}, - {0, A_10, C_10, B_10}, - {0, A_11, C_11, B_11}, - {0, A_12, C_12, B_12}, - {0, A_13, C_13, B_13}, - {0, A_14, C_14, B_14}, - {0, A_15, C_15, B_15}, - - {0, D_1, F_1, E_1}, - {0, D_2, F_2, E_2}, - {0, D_3, F_3, E_3}, - {0, D_4, F_4, E_4}, - {0, D_5, F_5, E_5}, - {0, D_6, F_6, E_6}, - {0, D_7, F_7, E_7}, - {0, D_8, F_8, E_8}, - {0, D_9, F_9, E_9}, - {0, D_10, F_10, E_10}, - {0, D_11, F_11, E_11}, - {0, D_12, F_12, E_12}, - {0, D_13, F_13, E_13}, - {0, D_14, F_14, E_14}, - {0, D_15, F_15, E_15}, - - {1, A_16, C_16, B_16}, - {1, A_15, C_15, B_15}, - {1, A_14, C_14, B_14}, - {1, A_13, C_13, B_13}, - {1, A_12, C_12, B_12}, - {1, A_11, C_11, B_11}, - {1, A_10, C_10, B_10}, - {1, A_9, C_9, B_9}, - {1, A_8, C_8, B_8}, - {1, A_7, C_7, B_7}, - {1, A_6, C_6, B_6}, - {1, A_5, C_5, B_5}, - {1, A_3, C_3, B_3}, - {1, A_1, C_1, B_1}, - - {1, G_16, I_16, H_16}, - {1, G_14, I_14, H_14}, - {1, G_13, I_13, H_13}, - {1, G_12, I_12, H_12}, - {1, G_11, I_11, H_11}, - {1, G_10, I_10, H_10}, - {1, G_9, I_9, H_9}, - {1, G_8, I_8, H_8}, - {1, G_7, I_7, H_7}, - {1, G_6, I_6, H_6}, - {1, G_5, I_5, H_5}, - {1, G_4, I_4, H_4}, - {1, G_2, I_2, H_2}, - - {1, D_16, F_16, E_16}, - {1, D_15, F_15, E_15}, - {1, D_14, F_14, E_14}, - {1, D_10, F_10, E_10}, - {1, D_6, F_6, E_6}, - {1, D_5, F_5, E_5}, - {1, D_4, F_4, E_4}, - {1, D_3, F_3, E_3}, - {1, D_2, F_2, E_2}, - {1, D_1, F_1, E_1} -}; - -#define __ NO_LED - -led_config_t g_led_config = { - { - // Key Matrix to LED Index - { 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, 40, 41, 42, __, 43 }, - { 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, __, 56, __, 57 }, - { 58, __, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, __, 70, __ }, - { 71, 72, 73, __, __, __, 74, __, __, __, 75, 76, 77, 78, 79, 80 } - }, - { - // LED Index to Physical Position - {0, 0}, {18, 0}, {32, 0}, {47, 0}, {62, 0}, {80, 0}, {95, 0}, {109, 0}, {124, 0}, {142, 0}, {157, 0}, {172, 0}, {186, 0}, {205, 0}, - {0,14}, {14,14}, {29,14}, {43,14}, {58,14}, {73,14}, {87,14}, {102, 14}, {117, 14}, {131, 14}, {146, 14}, {161, 14}, {175, 14}, {197, 14}, {224, 14}, - {3,26}, {21,26}, {36,26}, {51,26}, {65,26}, {80,26}, {95,26}, {109, 26}, {124, 26}, {139, 26}, {153, 26}, {168, 26}, {183, 26}, {201, 26}, {224, 26}, - {5,37}, {25,37}, {40,37}, {54,37}, {69,37}, {84,37}, {98,37}, {113, 37}, {128, 37}, {142, 37}, {157, 37}, {172, 37}, {195, 37}, {224, 37}, - {9,50}, {32,50}, {47,50}, {62,50}, {76,50}, {91,50}, {106, 50}, {120, 50}, {135, 50}, {150, 50}, {164, 50}, {185, 50}, {209, 50}, - {1,62}, {20,62}, {38,62}, {93,62}, {146, 62}, {161, 62}, {176, 62}, {194, 62}, {209, 62}, {224, 62} - - }, - { - // RGB LED Index to Flag - 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, - 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, - 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, - 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, - 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, - 4, 4, 4, 4, 4, 4, 4, 4, 4, 4 - }, -}; -#endif diff --git a/keyboards/keychron/v1_max/ansi_encoder/config.h b/keyboards/keychron/v1_max/ansi_encoder/config.h deleted file mode 100644 index 38c3b2ffba..0000000000 --- a/keyboards/keychron/v1_max/ansi_encoder/config.h +++ /dev/null @@ -1,56 +0,0 @@ -/* 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 . - */ - -#pragma once - -#ifdef RGB_MATRIX_ENABLE -/* RGB Matrix driver configuration */ -# define RGB_MATRIX_LED_COUNT 81 -# define DRIVER_COUNT 2 -# define DRIVER_CS_PINS \ - { B8, B9 } - -/* Scan phase of led driver set as MSKPHASE_9CHANNEL(defined as 0x03 in snled27351.h) */ -# define SNLED27351_PHASE_CHANNEL MSKPHASE_9CHANNEL -/* Set LED driver current */ -# define SNLED27351_CURRENT_TUNE \ - { 0x2C, 0x2C, 0x2C, 0x2C, 0x2C, 0x2C, 0x2C, 0x2C, 0x2C, 0x2C, 0x2C, 0x2C } - -/* Set to infinit, which is use in USB mode by default */ -# define RGB_MATRIX_TIMEOUT RGB_MATRIX_TIMEOUT_INFINITE -/* Allow shutdown of led driver to save power */ -# define RGB_MATRIX_DRIVER_SHUTDOWN_ENABLE -/* Turn off backlight on low brightness to save power */ -# define RGB_MATRIX_BRIGHTNESS_TURN_OFF_VAL 32 - -/* Indications */ -# define BT_HOST_LED_MATRIX_LIST \ - { 15, 16, 17 } - -# define P2P4G_HOST_LED_MATRIX_LIST \ - { 18 } - -# define BAT_LEVEL_LED_LIST \ - { 15, 16, 17, 18, 19, 20, 21, 22, 23, 24 } - -# define CAPS_LOCK_INDEX 44 -# define LOW_BAT_IND_INDEX \ - { 74 } - -# define RGB_MATRIX_KEYPRESSES -# define RGB_MATRIX_FRAMEBUFFER_EFFECTS - -#endif diff --git a/keyboards/keychron/v1_max/ansi_encoder/info.json b/keyboards/keychron/v1_max/ansi_encoder/info.json deleted file mode 100644 index 49d521e2a6..0000000000 --- a/keyboards/keychron/v1_max/ansi_encoder/info.json +++ /dev/null @@ -1,111 +0,0 @@ -{ - "usb": { - "pid": "0x0913", - "device_version": "1.0.1" - }, - "features": { - "encoder": true, - "encoder_map": true - }, - "encoder": { - "rotary": [ - { - "pin_a": "B15", - "pin_b": "B14" - } - ] - }, - "layouts": { - "LAYOUT_ansi_82": { - "layout": [ - {"matrix":[0,0], "x":0, "y":0}, - {"matrix":[0,1], "x":1.25, "y":0}, - {"matrix":[0,2], "x":2.25, "y":0}, - {"matrix":[0,3], "x":3.25, "y":0}, - {"matrix":[0,4], "x":4.25, "y":0}, - {"matrix":[0,5], "x":5.5, "y":0}, - {"matrix":[0,6], "x":6.5, "y":0}, - {"matrix":[0,7], "x":7.5, "y":0}, - {"matrix":[0,8], "x":8.5, "y":0}, - {"matrix":[0,9], "x":9.75, "y":0}, - {"matrix":[0,10], "x":10.75, "y":0}, - {"matrix":[0,11], "x":11.75, "y":0}, - {"matrix":[0,12], "x":12.75, "y":0}, - {"matrix":[0,13], "x":14, "y":0}, - {"matrix":[0,15], "x":15.25, "y":0}, - - {"matrix":[1,0], "x":0, "y":1.25}, - {"matrix":[1,1], "x":1, "y":1.25}, - {"matrix":[1,2], "x":2, "y":1.25}, - {"matrix":[1,3], "x":3, "y":1.25}, - {"matrix":[1,4], "x":4, "y":1.25}, - {"matrix":[1,5], "x":5, "y":1.25}, - {"matrix":[1,6], "x":6, "y":1.25}, - {"matrix":[1,7], "x":7, "y":1.25}, - {"matrix":[1,8], "x":8, "y":1.25}, - {"matrix":[1,9], "x":9, "y":1.25}, - {"matrix":[1,10], "x":10, "y":1.25}, - {"matrix":[1,11], "x":11, "y":1.25}, - {"matrix":[1,12], "x":12, "y":1.25}, - {"matrix":[1,13], "x":13, "y":1.25, "w":2}, - {"matrix":[1,15], "x":15.25, "y":1.25}, - - {"matrix":[2,0], "x":0, "y":2.25, "w":1.5}, - {"matrix":[2,1], "x":1.5, "y":2.25}, - {"matrix":[2,2], "x":2.5, "y":2.25}, - {"matrix":[2,3], "x":3.5, "y":2.25}, - {"matrix":[2,4], "x":4.5, "y":2.25}, - {"matrix":[2,5], "x":5.5, "y":2.25}, - {"matrix":[2,6], "x":6.5, "y":2.25}, - {"matrix":[2,7], "x":7.5, "y":2.25}, - {"matrix":[2,8], "x":8.5, "y":2.25}, - {"matrix":[2,9], "x":9.5, "y":2.25}, - {"matrix":[2,10], "x":10.5, "y":2.25}, - {"matrix":[2,11], "x":11.5, "y":2.25}, - {"matrix":[2,12], "x":12.5, "y":2.25}, - {"matrix":[2,13], "x":13.5, "y":2.25, "w":1.5}, - {"matrix":[2,15], "x":15.25, "y":2.25}, - - {"matrix":[3,0], "x":0, "y":3.25, "w":1.75}, - {"matrix":[3,1], "x":1.75, "y":3.25}, - {"matrix":[3,2], "x":2.75, "y":3.25}, - {"matrix":[3,3], "x":3.75, "y":3.25}, - {"matrix":[3,4], "x":4.75, "y":3.25}, - {"matrix":[3,5], "x":5.75, "y":3.25}, - {"matrix":[3,6], "x":6.75, "y":3.25}, - {"matrix":[3,7], "x":7.75, "y":3.25}, - {"matrix":[3,8], "x":8.75, "y":3.25}, - {"matrix":[3,9], "x":9.75, "y":3.25}, - {"matrix":[3,10], "x":10.75, "y":3.25}, - {"matrix":[3,11], "x":11.75, "y":3.25}, - {"matrix":[3,13], "x":12.75, "y":3.25, "w":2.25}, - {"matrix":[3,15], "x":15.25, "y":3.25}, - - {"matrix":[4,0], "x":0, "y":4.25, "w":2.25}, - {"matrix":[4,2], "x":2.25, "y":4.25}, - {"matrix":[4,3], "x":3.25, "y":4.25}, - {"matrix":[4,4], "x":4.25, "y":4.25}, - {"matrix":[4,5], "x":5.25, "y":4.25}, - {"matrix":[4,6], "x":6.25, "y":4.25}, - {"matrix":[4,7], "x":7.25, "y":4.25}, - {"matrix":[4,8], "x":8.25, "y":4.25}, - {"matrix":[4,9], "x":9.25, "y":4.25}, - {"matrix":[4,10], "x":10.25, "y":4.25}, - {"matrix":[4,11], "x":11.25, "y":4.25}, - {"matrix":[4,12], "x":12.25, "y":4.25, "w":1.75}, - {"matrix":[4,14], "x":14.25, "y":4.5}, - - {"matrix":[5,0], "x":0, "y":5.25, "w":1.25}, - {"matrix":[5,1], "x":1.25, "y":5.25, "w":1.25}, - {"matrix":[5,2], "x":2.5, "y":5.25, "w":1.25}, - {"matrix":[5,6], "x":3.75, "y":5.25, "w":6.25}, - {"matrix":[5,10], "x":10, "y":5.25}, - {"matrix":[5,11], "x":11, "y":5.25}, - {"matrix":[5,12], "x":12, "y":5.25}, - {"matrix":[5,13], "x":13.25, "y":5.5}, - {"matrix":[5,14], "x":14.25, "y":5.5}, - {"matrix":[5,15], "x":15.25, "y":5.5} - ] - } - } -} diff --git a/keyboards/keychron/v1_max/ansi_encoder/keymaps/default/keymap.c b/keyboards/keychron/v1_max/ansi_encoder/keymaps/default/keymap.c deleted file mode 100644 index 0a126c7a8d..0000000000 --- a/keyboards/keychron/v1_max/ansi_encoder/keymaps/default/keymap.c +++ /dev/null @@ -1,76 +0,0 @@ -/* 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 . - */ - -#include QMK_KEYBOARD_H -#include "keychron_common.h" - -enum layers { - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN, -}; -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_ansi_82( - KC_ESC, KC_BRID, KC_BRIU, KC_MCTRL, KC_LNPAD, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_DEL, KC_MUTE, - KC_GRV, 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_PGUP, - 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_PGDN, - 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_HOME, - 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_LCTL, KC_LOPTN, KC_LCMMD, KC_SPC, KC_RCMMD,MO(MAC_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - - [MAC_FN] = LAYOUT_ansi_82( - _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, RGB_TOG, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, KC_END, - _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - - [WIN_BASE] = LAYOUT_ansi_82( - KC_ESC, 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_DEL, KC_MUTE, - KC_GRV, 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_PGUP, - 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_PGDN, - 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_HOME, - 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_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(WIN_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - - [WIN_FN] = LAYOUT_ansi_82( - _______, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, RGB_TOG, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, KC_END, - _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______) -}; - -// clang-format on -#if defined(ENCODER_MAP_ENABLE) -const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][2] = { - [MAC_BASE] = {ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [MAC_FN] = {ENCODER_CCW_CW(RGB_VAD, RGB_VAI)}, - [WIN_BASE] = {ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [WIN_FN] = {ENCODER_CCW_CW(RGB_VAD, RGB_VAI)}, -}; -#endif // ENCODER_MAP_ENABLE - -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - if (!process_record_keychron_common(keycode, record)) { - return false; - } - return true; -} diff --git a/keyboards/keychron/v1_max/ansi_encoder/keymaps/via/keymap.c b/keyboards/keychron/v1_max/ansi_encoder/keymaps/via/keymap.c deleted file mode 100644 index 0636af6396..0000000000 --- a/keyboards/keychron/v1_max/ansi_encoder/keymaps/via/keymap.c +++ /dev/null @@ -1,76 +0,0 @@ -/* 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 . - */ - -#include QMK_KEYBOARD_H -#include "keychron_common.h" - -enum layers { - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN, -}; -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_ansi_82( - KC_ESC, KC_BRID, KC_BRIU, KC_MCTRL, KC_LNPAD, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_DEL, KC_MUTE, - KC_GRV, 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_PGUP, - 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_PGDN, - 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_HOME, - 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_LCTL, KC_LOPTN, KC_LCMMD, KC_SPC, KC_RCMMD,MO(MAC_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - - [MAC_FN] = LAYOUT_ansi_82( - _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, RGB_TOG, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, KC_END, - _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - - [WIN_BASE] = LAYOUT_ansi_82( - KC_ESC, 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_DEL, KC_MUTE, - KC_GRV, 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_PGUP, - 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_PGDN, - 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_HOME, - 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_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(WIN_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - - [WIN_FN] = LAYOUT_ansi_82( - _______, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, RGB_TOG, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, KC_END, - _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______) -}; - -#if defined(ENCODER_MAP_ENABLE) -const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][2] = { - [MAC_BASE] = {ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [MAC_FN] = {ENCODER_CCW_CW(RGB_VAD, RGB_VAI)}, - [WIN_BASE] = {ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [WIN_FN] = {ENCODER_CCW_CW(RGB_VAD, RGB_VAI)}, -}; -#endif // ENCODER_MAP_ENABLE - -// clang-format on -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - if (!process_record_keychron_common(keycode, record)) { - return false; - } - return true; -} diff --git a/keyboards/keychron/v1_max/ansi_encoder/keymaps/via/rules.mk b/keyboards/keychron/v1_max/ansi_encoder/keymaps/via/rules.mk deleted file mode 100644 index 1e5b99807c..0000000000 --- a/keyboards/keychron/v1_max/ansi_encoder/keymaps/via/rules.mk +++ /dev/null @@ -1 +0,0 @@ -VIA_ENABLE = yes diff --git a/keyboards/keychron/v1_max/ansi_encoder/rules.mk b/keyboards/keychron/v1_max/ansi_encoder/rules.mk deleted file mode 100644 index 7ff128fa69..0000000000 --- a/keyboards/keychron/v1_max/ansi_encoder/rules.mk +++ /dev/null @@ -1 +0,0 @@ -# This file intentionally left blank \ No newline at end of file diff --git a/keyboards/keychron/v1_max/board.h b/keyboards/keychron/v1_max/board.h deleted file mode 100644 index 6d4d1f1b02..0000000000 --- a/keyboards/keychron/v1_max/board.h +++ /dev/null @@ -1,226 +0,0 @@ -/* 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 . - */ - -#pragma once - -#include_next - -// clang-format off - -/* Set GPIOA_SWDIO to INPUT and NOT FLOATING */ -#undef VAL_GPIOA_MODER -#define VAL_GPIOA_MODER (PIN_MODE_INPUT(GPIOA_BUTTON) | \ - PIN_MODE_INPUT(GPIOA_PIN1) | \ - PIN_MODE_INPUT(GPIOA_PIN2) | \ - PIN_MODE_INPUT(GPIOA_PIN3) | \ - PIN_MODE_ALTERNATE(GPIOA_CS43L22_LRCK) |\ - PIN_MODE_ALTERNATE(GPIOA_L3GD20_SCL) | \ - PIN_MODE_ALTERNATE(GPIOA_L3GD20_SD0) | \ - PIN_MODE_ALTERNATE(GPIOA_L3GD20_SDI) | \ - PIN_MODE_INPUT(GPIOA_PIN8) | \ - PIN_MODE_INPUT(GPIOA_VBUS_FS) | \ - PIN_MODE_ALTERNATE(GPIOA_OTG_FS_ID) | \ - PIN_MODE_ALTERNATE(GPIOA_OTG_FS_DM) | \ - PIN_MODE_ALTERNATE(GPIOA_OTG_FS_DP) | \ - PIN_MODE_INPUT(GPIOA_SWDIO) | \ - PIN_MODE_INPUT(GPIOA_SWCLK) | \ - PIN_MODE_INPUT(GPIOA_PIN15)) - -#undef VAL_GPIOA_PUPDR -#define VAL_GPIOA_PUPDR (PIN_PUPDR_FLOATING(GPIOA_BUTTON) | \ - PIN_PUPDR_PULLUP(GPIOA_PIN1) | \ - PIN_PUPDR_PULLUP(GPIOA_PIN2) | \ - PIN_PUPDR_PULLUP(GPIOA_PIN3) | \ - PIN_PUPDR_FLOATING(GPIOA_CS43L22_LRCK) |\ - PIN_PUPDR_FLOATING(GPIOA_L3GD20_SCL) | \ - PIN_PUPDR_PULLUP(GPIOA_L3GD20_SD0) | \ - PIN_PUPDR_PULLUP(GPIOA_L3GD20_SDI) | \ - PIN_PUPDR_PULLUP(GPIOA_PIN8) | \ - PIN_PUPDR_FLOATING(GPIOA_VBUS_FS) | \ - PIN_PUPDR_FLOATING(GPIOA_OTG_FS_ID) | \ - PIN_PUPDR_FLOATING(GPIOA_OTG_FS_DM) | \ - PIN_PUPDR_FLOATING(GPIOA_OTG_FS_DP) | \ - PIN_PUPDR_PULLUP(GPIOA_SWDIO) | \ - PIN_PUPDR_PULLUP(GPIOA_SWCLK) | \ - PIN_PUPDR_PULLUP(GPIOA_PIN15)) - -#undef VAL_GPIOB_MODER -#define VAL_GPIOB_MODER (PIN_MODE_INPUT(GPIOB_PIN0) | \ - PIN_MODE_INPUT(GPIOB_PIN1) | \ - PIN_MODE_INPUT(GPIOB_PIN2) | \ - PIN_MODE_INPUT(GPIOB_SWO) | \ - PIN_MODE_INPUT(GPIOB_PIN4) | \ - PIN_MODE_INPUT(GPIOB_PIN5) | \ - PIN_MODE_INPUT(GPIOB_LSM303DLHC_SCL) | \ - PIN_MODE_INPUT(GPIOB_PIN7) | \ - PIN_MODE_INPUT(GPIOB_PIN8) | \ - PIN_MODE_INPUT(GPIOB_LSM303DLHC_SDA) | \ - PIN_MODE_INPUT(GPIOB_MP45DT02_CLK_IN) |\ - PIN_MODE_INPUT(GPIOB_PIN11) | \ - PIN_MODE_INPUT(GPIOB_PIN12) | \ - PIN_MODE_INPUT(GPIOB_PIN13) | \ - PIN_MODE_INPUT(GPIOB_PIN14) | \ - PIN_MODE_INPUT(GPIOB_PIN15)) - -#undef VAL_GPIOB_PUPDR -#define VAL_GPIOB_PUPDR (PIN_PUPDR_PULLDOWN(GPIOB_PIN0) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN1) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN2) | \ - PIN_PUPDR_PULLDOWN(GPIOB_SWO) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN4) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN5) | \ - PIN_PUPDR_PULLDOWN(GPIOB_LSM303DLHC_SCL) |\ - PIN_PUPDR_PULLDOWN(GPIOB_PIN7) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN8) | \ - PIN_PUPDR_PULLDOWN(GPIOB_LSM303DLHC_SDA) |\ - PIN_PUPDR_PULLDOWN(GPIOB_MP45DT02_CLK_IN) |\ - PIN_PUPDR_PULLDOWN(GPIOB_PIN11) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN12) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN13) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN14) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN15)) - -#undef VAL_GPIOB_AFRL -#define VAL_GPIOB_AFRL (PIN_AFIO_AF(GPIOB_PIN0, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN1, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN2, 0U) | \ - PIN_AFIO_AF(GPIOB_SWO, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN4, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN5, 0U) | \ - PIN_AFIO_AF(GPIOB_LSM303DLHC_SCL, 0) | \ - PIN_AFIO_AF(GPIOB_PIN7, 0U)) - -#undef VAL_GPIOB_AFRH -#define VAL_GPIOB_AFRH (PIN_AFIO_AF(GPIOB_PIN8, 0U) | \ - PIN_AFIO_AF(GPIOB_LSM303DLHC_SDA, 0) | \ - PIN_AFIO_AF(GPIOB_MP45DT02_CLK_IN, 0U) |\ - PIN_AFIO_AF(GPIOB_PIN11, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN12, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN13, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN14, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN15, 0U)) - -/* C5 Need to be pulldown */ -#undef VAL_GPIOC_MODER -#define VAL_GPIOC_MODER (PIN_MODE_INPUT(GPIOC_OTG_FS_POWER_ON) |\ - PIN_MODE_INPUT(GPIOC_PIN1) | \ - PIN_MODE_INPUT(GPIOC_PIN2) | \ - PIN_MODE_INPUT(GPIOC_CS43L22_AIN4x) | \ - PIN_MODE_INPUT(GPIOC_PIN4) | \ - PIN_MODE_INPUT(GPIOC_PIN5) | \ - PIN_MODE_INPUT(GPIOC_PIN6) | \ - PIN_MODE_INPUT(GPIOC_CS43L22_MCLK) | \ - PIN_MODE_INPUT(GPIOC_PIN8) | \ - PIN_MODE_INPUT(GPIOC_PIN9) | \ - PIN_MODE_INPUT(GPIOC_CS43L22_SCLK) | \ - PIN_MODE_INPUT(GPIOC_PIN11) | \ - PIN_MODE_INPUT(GPIOC_CS43L22_SDIN) | \ - PIN_MODE_INPUT(GPIOC_PIN13) | \ - PIN_MODE_INPUT(GPIOC_OSC32_IN) | \ - PIN_MODE_INPUT(GPIOC_OSC32_OUT)) - -#undef VAL_GPIOC_PUPDR -#define VAL_GPIOC_PUPDR (PIN_PUPDR_PULLUP(GPIOC_OTG_FS_POWER_ON) |\ - PIN_PUPDR_PULLUP(GPIOC_PIN1) | \ - PIN_PUPDR_PULLUP(GPIOC_PIN2) | \ - PIN_PUPDR_PULLUP(GPIOC_CS43L22_AIN4x) |\ - PIN_PUPDR_PULLUP(GPIOC_PIN4) | \ - PIN_PUPDR_PULLDOWN(GPIOC_PIN5) | \ - PIN_PUPDR_PULLUP(GPIOC_PIN6) | \ - PIN_PUPDR_PULLUP(GPIOC_CS43L22_MCLK) | \ - PIN_PUPDR_PULLUP(GPIOC_PIN8) | \ - PIN_PUPDR_PULLUP(GPIOC_PIN9) | \ - PIN_PUPDR_PULLUP(GPIOC_CS43L22_SCLK) | \ - PIN_PUPDR_PULLUP(GPIOC_PIN11) | \ - PIN_PUPDR_PULLUP(GPIOC_CS43L22_SDIN) | \ - PIN_PUPDR_PULLUP(GPIOC_PIN13) | \ - PIN_PUPDR_PULLUP(GPIOC_OSC32_IN) | \ - PIN_PUPDR_PULLUP(GPIOC_OSC32_OUT)) - -/* Set all GPIOD pins to INPUT & PULLUP to avoid FLOATING */ -#undef VAL_GPIOD_MODER -#define VAL_GPIOD_MODER (PIN_MODE_INPUT(GPIOD_PIN0) | \ - PIN_MODE_INPUT(GPIOD_PIN1) | \ - PIN_MODE_INPUT(GPIOD_PIN2) | \ - PIN_MODE_INPUT(GPIOD_PIN3) | \ - PIN_MODE_INPUT(GPIOD_CS43L22_RESET) | \ - PIN_MODE_INPUT(GPIOD_OverCurrent) | \ - PIN_MODE_INPUT(GPIOD_PIN6) | \ - PIN_MODE_INPUT(GPIOD_PIN7) | \ - PIN_MODE_INPUT(GPIOD_PIN8) | \ - PIN_MODE_INPUT(GPIOD_PIN9) | \ - PIN_MODE_INPUT(GPIOD_PIN10) | \ - PIN_MODE_INPUT(GPIOD_PIN11) | \ - PIN_MODE_INPUT(GPIOD_LED4) | \ - PIN_MODE_INPUT(GPIOD_LED3) | \ - PIN_MODE_INPUT(GPIOD_LED5) | \ - PIN_MODE_INPUT(GPIOD_LED6)) - -#undef VAL_GPIOD_PUPDR -#define VAL_GPIOD_PUPDR (PIN_PUPDR_PULLUP(GPIOD_PIN0) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN1) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN2) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN3) | \ - PIN_PUPDR_PULLUP(GPIOD_CS43L22_RESET) |\ - PIN_PUPDR_PULLUP(GPIOD_OverCurrent) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN6) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN7) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN8) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN9) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN10) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN11) | \ - PIN_PUPDR_PULLUP(GPIOD_LED4) | \ - PIN_PUPDR_PULLUP(GPIOD_LED3) | \ - PIN_PUPDR_PULLUP(GPIOD_LED5) | \ - PIN_PUPDR_PULLUP(GPIOD_LED6)) - -/* Set all GPIOE pins to INPUT & PULLUP to avoid FLOATING */ -#undef VAL_GPIOE_MODER -#define VAL_GPIOE_MODER (PIN_MODE_INPUT(GPIOE_L3GD20_INT1) | \ - PIN_MODE_INPUT(GPIOE_L3GD20_INT2) | \ - PIN_MODE_INPUT(GPIOE_LSM303DLHC_DRDY) |\ - PIN_MODE_INPUT(GPIOE_L3GD20_CS) | \ - PIN_MODE_INPUT(GPIOE_LSM303DLHC_INT1) |\ - PIN_MODE_INPUT(GPIOE_LSM303DLHC_INT2) |\ - PIN_MODE_INPUT(GPIOE_PIN6) | \ - PIN_MODE_INPUT(GPIOE_PIN7) | \ - PIN_MODE_INPUT(GPIOE_PIN8) | \ - PIN_MODE_INPUT(GPIOE_PIN9) | \ - PIN_MODE_INPUT(GPIOE_PIN10) | \ - PIN_MODE_INPUT(GPIOE_PIN11) | \ - PIN_MODE_INPUT(GPIOE_PIN12) | \ - PIN_MODE_INPUT(GPIOE_PIN13) | \ - PIN_MODE_INPUT(GPIOE_PIN14) | \ - PIN_MODE_INPUT(GPIOE_PIN15)) - -#undef VAL_GPIOE_PUPDR -#define VAL_GPIOE_PUPDR (PIN_PUPDR_PULLUP(GPIOE_L3GD20_INT1) | \ - PIN_PUPDR_PULLUP(GPIOE_L3GD20_INT2) | \ - PIN_PUPDR_PULLUP(GPIOE_LSM303DLHC_DRDY) |\ - PIN_PUPDR_PULLUP(GPIOE_L3GD20_CS) | \ - PIN_PUPDR_PULLUP(GPIOE_LSM303DLHC_INT1) |\ - PIN_PUPDR_PULLUP(GPIOE_LSM303DLHC_INT2) |\ - PIN_PUPDR_PULLUP(GPIOE_PIN6) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN7) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN8) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN9) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN10) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN11) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN12) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN13) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN14) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN15)) - diff --git a/keyboards/keychron/v1_max/config.h b/keyboards/keychron/v1_max/config.h deleted file mode 100644 index d50eddd85a..0000000000 --- a/keyboards/keychron/v1_max/config.h +++ /dev/null @@ -1,82 +0,0 @@ -/* Copyright 2023 ~ 2024 @ 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 . - */ - -#pragma once - -/* Encoder Configuration */ -#define ENCODER_DEFAULT_POS 0x3 -#define ENCODER_MAP_KEY_DELAY 2 - -#if defined(RGB_MATRIX_ENABLE) || defined(LED_MATRIX_ENABLE) || defined(LK_WIRELESS_ENABLE) -/* SPI configuration */ -# define SPI_DRIVER SPID1 -# define SPI_SCK_PIN A5 -# define SPI_MISO_PIN A6 -# define SPI_MOSI_PIN A7 -#endif - -#if defined(RGB_MATRIX_ENABLE) || defined(LED_MATRIX_ENABLE) -# define LED_DRIVER_SHUTDOWN_PIN B7 -# define SNLED23751_SPI_DIVISOR 16 -#endif - -#ifdef LK_WIRELESS_ENABLE -/* Hardware configuration */ -# define P2P4_MODE_SELECT_PIN A10 -# define BT_MODE_SELECT_PIN A9 - -# define LKBT51_RESET_PIN C4 -# define LKBT51_INT_INPUT_PIN B1 -# define BLUETOOTH_INT_OUTPUT_PIN A4 - -# define USB_POWER_SENSE_PIN B0 -# define USB_POWER_CONNECTED_LEVEL 0 - -# define BAT_CHARGING_PIN B13 -# define BAT_CHARGING_LEVEL 0 - -# define BAT_LOW_LED_PIN B12 -# define BAT_LOW_LED_PIN_ON_STATE 1 - -# define BT_HOST_DEVICES_COUNT 3 - -# if defined(RGB_MATRIX_ENABLE) - -/* 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 - -/* Reinit LED driver on tranport changed */ -# define REINIT_LED_DRIVER 1 - -# endif - -/* Keep USB connection in blueooth mode */ -# define KEEP_USB_CONNECTION_IN_WIRELESS_MODE - -/* Enable bluetooth NKRO */ -# define WIRELESS_NKRO_ENABLE -#endif - -/* Factory test keys */ -#define FN_KEY_1 MO(1) -#define FN_KEY_2 MO(3) -#define FN_BL_TRIG_KEY KC_END - -#define P2P4G_CELAR_MASK 0 -#define MATRIX_IO_DELAY 10 diff --git a/keyboards/keychron/v1_max/firmware/keychron_v1_max_ansi_encoder_via.bin b/keyboards/keychron/v1_max/firmware/keychron_v1_max_ansi_encoder_via.bin deleted file mode 100644 index 5806bd374d..0000000000 Binary files a/keyboards/keychron/v1_max/firmware/keychron_v1_max_ansi_encoder_via.bin and /dev/null differ diff --git a/keyboards/keychron/v1_max/firmware/keychron_v1_max_iso_encoder_via.bin b/keyboards/keychron/v1_max/firmware/keychron_v1_max_iso_encoder_via.bin deleted file mode 100644 index edbbbdbeec..0000000000 Binary files a/keyboards/keychron/v1_max/firmware/keychron_v1_max_iso_encoder_via.bin and /dev/null differ diff --git a/keyboards/keychron/v1_max/halconf.h b/keyboards/keychron/v1_max/halconf.h deleted file mode 100644 index b1ed75e0b8..0000000000 --- a/keyboards/keychron/v1_max/halconf.h +++ /dev/null @@ -1,31 +0,0 @@ -/* 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 - -#define _CHIBIOS_HAL_CONF_VER_8_0_ - -#define HAL_USE_SPI TRUE - -#ifdef LK_WIRELESS_ENABLE -# define HAL_USE_RTC TRUE -#endif - -#if defined(LK_WIRELESS_ENABLE) || defined(ENCODER_ENABLE) -# define PAL_USE_CALLBACKS TRUE -#endif - -#include_next diff --git a/keyboards/keychron/v1_max/info.json b/keyboards/keychron/v1_max/info.json deleted file mode 100644 index a013c45e1a..0000000000 --- a/keyboards/keychron/v1_max/info.json +++ /dev/null @@ -1,67 +0,0 @@ -{ - "keyboard_name": "Keychron V1 Max", - "manufacturer": "Keychron", - "url": "https://github.com/Keychron", - "maintainer": "lokher", - "processor": "STM32F401", - "bootloader": "stm32-dfu", - "usb": { - "vid": "0x3434" - }, - "features": { - "bootmagic": true, - "extrakey" : true, - "mousekey" : true, - "dip_switch" : true, - "nkro" : true, - "rgb_matrix": true, - "raw" : true, - "send_string" : true - }, - "matrix_pins": { - "cols": ["C6", "C7", "C8", "A14", "A15", "C10", "C11", "C13", "C14", "C15", "C0", "C1", "C2", "C3", "A0", "A1"], - "rows": ["C12", "D2", "B3", "B4", "B5", "B6"] - }, - "diode_direction": "ROW2COL", - "dip_switch" :{ - "pins": ["A3"] - }, - "rgb_matrix": { - "driver": "snled27351_spi", - "sleep": true, - "animations": { - "band_spiral_val": true, - "breathing": true, - "cycle_all": true, - "cycle_left_right": true, - "cycle_out_in": true, - "cycle_out_in_dual": true, - "cycle_pinwheel": true, - "cycle_spiral": true, - "cycle_up_down": true, - "digital_rain": true, - "dual_beacon": true, - "jellybean_raindrops": true, - "pixel_rain": true, - "rainbow_beacon": true, - "rainbow_moving_chevron": true, - "solid_reactive_multinexus": true, - "solid_reactive_multiwide": true, - "solid_reactive_simple": true, - "solid_splash": true, - "splash": true, - "typing_heatmap": true - } - }, - "eeprom": { - "wear_leveling": { - "driver": "embedded_flash", - "logical_size": 2048, - "backing_size": 4096 - } - }, - "build": { - "debounce_type": "sym_eager_pk" - }, - "debounce": 20 -} diff --git a/keyboards/keychron/v1_max/iso_encoder/config.h b/keyboards/keychron/v1_max/iso_encoder/config.h deleted file mode 100644 index acc95cb24b..0000000000 --- a/keyboards/keychron/v1_max/iso_encoder/config.h +++ /dev/null @@ -1,56 +0,0 @@ -/* 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 . - */ - -#pragma once - -#ifdef RGB_MATRIX_ENABLE -/* RGB Matrix driver configuration */ -# define RGB_MATRIX_LED_COUNT 82 -# define DRIVER_COUNT 2 -# define DRIVER_CS_PINS \ - { B8, B9 } - -/* Scan phase of led driver set as MSKPHASE_9CHANNEL(defined as 0x03 in snled27351.h) */ -# define SNLED27351_PHASE_CHANNEL MSKPHASE_9CHANNEL -/* Set LED driver current */ -# define SNLED27351_CURRENT_TUNE \ - { 0x2C, 0x2C, 0x2C, 0x2C, 0x2C, 0x2C, 0x2C, 0x2C, 0x2C, 0x2C, 0x2C, 0x2C } - -/* Set to infinit, which is use in USB mode by default */ -# define RGB_MATRIX_TIMEOUT RGB_MATRIX_TIMEOUT_INFINITE -/* Allow shutdown of led driver to save power */ -# define RGB_MATRIX_DRIVER_SHUTDOWN_ENABLE -/* Turn off backlight on low brightness to save power */ -# define RGB_MATRIX_BRIGHTNESS_TURN_OFF_VAL 32 - -/* Indicator */ -# define BT_HOST_LED_MATRIX_LIST \ - { 15, 16, 17 } - -# define P2P4G_HOST_LED_MATRIX_LIST \ - { 18 } - -# define BAT_LEVEL_LED_LIST \ - { 15, 16, 17, 18, 19, 20, 21, 22, 23, 24 } - -# define CAPS_LOCK_INDEX 43 -# define LOW_BAT_IND_INDEX \ - { 75 } - -# define RGB_MATRIX_KEYPRESSES -# define RGB_MATRIX_FRAMEBUFFER_EFFECTS - -#endif diff --git a/keyboards/keychron/v1_max/iso_encoder/info.json b/keyboards/keychron/v1_max/iso_encoder/info.json deleted file mode 100644 index 575c491bd2..0000000000 --- a/keyboards/keychron/v1_max/iso_encoder/info.json +++ /dev/null @@ -1,112 +0,0 @@ -{ - "usb": { - "pid": "0x0914", - "device_version": "1.0.2" - }, - "features": { - "encoder": true, - "encoder_map": true - }, - "encoder": { - "rotary": [ - { - "pin_a": "B15", - "pin_b": "B14" - } - ] - }, - "layouts": { - "LAYOUT_iso_83": { - "layout": [ - {"matrix": [0, 0], "x": 0, "y": 0}, - {"matrix": [0, 1], "x": 1.25, "y": 0}, - {"matrix": [0, 2], "x": 2.25, "y": 0}, - {"matrix": [0, 3], "x": 3.25, "y": 0}, - {"matrix": [0, 4], "x": 4.25, "y": 0}, - {"matrix": [0, 5], "x": 5.5, "y": 0}, - {"matrix": [0, 6], "x": 6.5, "y": 0}, - {"matrix": [0, 7], "x": 7.5, "y": 0}, - {"matrix": [0, 8], "x": 8.5, "y": 0}, - {"matrix": [0, 9], "x": 9.75, "y": 0}, - {"matrix": [0, 10], "x": 10.75, "y": 0}, - {"matrix": [0, 11], "x": 11.75, "y": 0}, - {"matrix": [0, 12], "x": 12.75, "y": 0}, - {"matrix": [0, 13], "x": 14, "y": 0}, - {"matrix": [0,15], "x":15.25, "y":0}, - - {"matrix": [1, 0], "x": 0, "y": 1.25}, - {"matrix": [1, 1], "x": 1, "y": 1.25}, - {"matrix": [1, 2], "x": 2, "y": 1.25}, - {"matrix": [1, 3], "x": 3, "y": 1.25}, - {"matrix": [1, 4], "x": 4, "y": 1.25}, - {"matrix": [1, 5], "x": 5, "y": 1.25}, - {"matrix": [1, 6], "x": 6, "y": 1.25}, - {"matrix": [1, 7], "x": 7, "y": 1.25}, - {"matrix": [1, 8], "x": 8, "y": 1.25}, - {"matrix": [1, 9], "x": 9, "y": 1.25}, - {"matrix": [1, 10], "x": 10, "y": 1.25}, - {"matrix": [1, 11], "x": 11, "y": 1.25}, - {"matrix": [1, 12], "x": 12, "y": 1.25}, - {"matrix": [1, 13], "x": 13, "y": 1.25, "w": 2}, - {"matrix": [1, 15], "x": 15.25, "y": 1.25}, - - {"matrix": [2, 0], "x": 0, "y": 2.25, "w": 1.5}, - {"matrix": [2, 1], "x": 1.5, "y": 2.25}, - {"matrix": [2, 2], "x": 2.5, "y": 2.25}, - {"matrix": [2, 3], "x": 3.5, "y": 2.25}, - {"matrix": [2, 4], "x": 4.5, "y": 2.25}, - {"matrix": [2, 5], "x": 5.5, "y": 2.25}, - {"matrix": [2, 6], "x": 6.5, "y": 2.25}, - {"matrix": [2, 7], "x": 7.5, "y": 2.25}, - {"matrix": [2, 8], "x": 8.5, "y": 2.25}, - {"matrix": [2, 9], "x": 9.5, "y": 2.25}, - {"matrix": [2, 10], "x": 10.5, "y": 2.25}, - {"matrix": [2, 11], "x": 11.5, "y": 2.25}, - {"matrix": [2, 12], "x": 12.5, "y": 2.25}, - {"matrix": [2, 15], "x": 15.25, "y":2.25}, - - {"matrix": [3, 0], "x": 0, "y": 3.25, "w": 1.75}, - {"matrix": [3, 1], "x": 1.75, "y": 3.25}, - {"matrix": [3, 2], "x": 2.75, "y": 3.25}, - {"matrix": [3, 3], "x": 3.75, "y": 3.25}, - {"matrix": [3, 4], "x": 4.75, "y": 3.25}, - {"matrix": [3, 5], "x": 5.75, "y": 3.25}, - {"matrix": [3, 6], "x": 6.75, "y": 3.25}, - {"matrix": [3, 7], "x": 7.75, "y": 3.25}, - {"matrix": [3, 8], "x": 8.75, "y": 3.25}, - {"matrix": [3, 9], "x": 9.75, "y": 3.25}, - {"matrix": [3, 10], "x": 10.75, "y": 3.25}, - {"matrix": [3, 11], "x": 11.75, "y": 3.25}, - {"matrix": [3, 12], "x": 12.75, "y": 3.25}, - {"matrix": [3, 13], "x": 13.25, "y": 3.25}, - {"matrix": [3, 15], "x": 15.25, "y": 3.25}, - - {"matrix": [4, 0], "x": 0, "y": 4.25, "w": 1.25}, - {"matrix": [4, 1], "x": 1.25, "y": 4.25}, - {"matrix": [4, 2], "x": 2.25, "y": 4.25}, - {"matrix": [4, 3], "x": 3.25, "y": 4.25}, - {"matrix": [4, 4], "x": 4.25, "y": 4.25}, - {"matrix": [4, 5], "x": 5.25, "y": 4.25}, - {"matrix": [4, 6], "x": 6.25, "y": 4.25}, - {"matrix": [4, 7], "x": 7.25, "y": 4.25}, - {"matrix": [4, 8], "x": 8.25, "y": 4.25}, - {"matrix": [4, 9], "x": 9.25, "y": 4.25}, - {"matrix": [4, 10], "x": 10.25, "y": 4.25}, - {"matrix": [4, 11], "x": 11.25, "y": 4.25}, - {"matrix": [4, 12], "x": 12.25, "y": 4.25, "w": 1.75}, - {"matrix": [4, 14], "x": 14.25, "y": 4.5}, - - {"matrix": [5, 0], "x": 0, "y": 5.25, "w": 1.25}, - {"matrix": [5, 1], "x": 1.25, "y": 5.25, "w": 1.25}, - {"matrix": [5, 2], "x": 2.5, "y": 5.25, "w": 1.25}, - {"matrix": [5, 6], "x": 3.75, "y": 5.25, "w": 6.25}, - {"matrix": [5, 10], "x": 10, "y": 5.25}, - {"matrix": [5, 11], "x": 11, "y": 5.25}, - {"matrix": [5, 12], "x": 12, "y": 5.25}, - {"matrix": [5, 13], "x": 13.25, "y": 5.5}, - {"matrix": [5, 14], "x": 14.25, "y": 5.5}, - {"matrix": [5, 15], "x": 15.25, "y": 5.5} - ] - } - } -} diff --git a/keyboards/keychron/v1_max/iso_encoder/iso_encoder.c b/keyboards/keychron/v1_max/iso_encoder/iso_encoder.c deleted file mode 100644 index 9e48b1424b..0000000000 --- a/keyboards/keychron/v1_max/iso_encoder/iso_encoder.c +++ /dev/null @@ -1,149 +0,0 @@ -/* 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/>. - */ - -#include "quantum.h" - -// clang-format off - -#ifdef RGB_MATRIX_ENABLE -const snled27351_led_t g_snled27351_leds[RGB_MATRIX_LED_COUNT] = { -/* Refer to SNLED27351 manual for these locations - * driver - * | R location - * | | G location - * | | | B location - * | | | | */ - {0, G_1, I_1, H_1}, - {0, G_2, I_2, H_2}, - {0, G_3, I_3, H_3}, - {0, G_4, I_4, H_4}, - {0, G_5, I_5, H_5}, - {0, G_6, I_6, H_6}, - {0, G_7, I_7, H_7}, - {0, G_8, I_8, H_8}, - {0, G_9, I_9, H_9}, - {0, G_10, I_10, H_10}, - {0, G_11, I_11, H_11}, - {0, G_12, I_12, H_12}, - {0, G_13, I_13, H_13}, - {0, G_14, I_14, H_14}, - - {0, A_1, C_1, B_1}, - {0, A_2, C_2, B_2}, - {0, A_3, C_3, B_3}, - {0, A_4, C_4, B_4}, - {0, A_5, C_5, B_5}, - {0, A_6, C_6, B_6}, - {0, A_7, C_7, B_7}, - {0, A_8, C_8, B_8}, - {0, A_9, C_9, B_9}, - {0, A_10, C_10, B_10}, - {0, A_11, C_11, B_11}, - {0, A_12, C_12, B_12}, - {0, A_13, C_13, B_13}, - {0, A_14, C_14, B_14}, - {0, A_15, C_15, B_15}, - - {0, D_1, F_1, E_1}, - {0, D_2, F_2, E_2}, - {0, D_3, F_3, E_3}, - {0, D_4, F_4, E_4}, - {0, D_5, F_5, E_5}, - {0, D_6, F_6, E_6}, - {0, D_7, F_7, E_7}, - {0, D_8, F_8, E_8}, - {0, D_9, F_9, E_9}, - {0, D_10, F_10, E_10}, - {0, D_11, F_11, E_11}, - {0, D_12, F_12, E_12}, - {0, D_13, F_13, E_13}, - {0, D_15, F_15, E_15}, - - {1, A_16, C_16, B_16}, - {1, A_15, C_15, B_15}, - {1, A_14, C_14, B_14}, - {1, A_13, C_13, B_13}, - {1, A_12, C_12, B_12}, - {1, A_11, C_11, B_11}, - {1, A_10, C_10, B_10}, - {1, A_9, C_9, B_9}, - {1, A_8, C_8, B_8}, - {1, A_7, C_7, B_7}, - {1, A_6, C_6, B_6}, - {1, A_5, C_5, B_5}, - {1, A_4, C_4, B_4}, - {1, A_3, C_3, B_3}, - {1, A_1, C_1, B_1}, - - {1, G_16, I_16, H_16}, - {1, G_15, I_15, H_15}, - {1, G_14, I_14, H_14}, - {1, G_13, I_13, H_13}, - {1, G_12, I_12, H_12}, - {1, G_11, I_11, H_11}, - {1, G_10, I_10, H_10}, - {1, G_9, I_9, H_9}, - {1, G_8, I_8, H_8}, - {1, G_7, I_7, H_7}, - {1, G_6, I_6, H_6}, - {1, G_5, I_5, H_5}, - {1, G_4, I_4, H_4}, - {1, G_2, I_2, H_2}, - - {1, D_16, F_16, E_16}, - {1, D_15, F_15, E_15}, - {1, D_14, F_14, E_14}, - {1, D_10, F_10, E_10}, - {1, D_6, F_6, E_6}, - {1, D_5, F_5, E_5}, - {1, D_4, F_4, E_4}, - {1, D_3, F_3, E_3}, - {1, D_2, F_2, E_2}, - {1, D_1, F_1, E_1} -}; - -#define __ NO_LED - -led_config_t g_led_config = { - { - // Key Matrix to LED Index - { 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, 40, 41, __, __, 42 }, - { 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, __, 57 }, - { 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, __, 71, __ }, - { 72, 73, 74, __, __, __, 75, __, __, __, 76, 77, 78, 79, 80, 81 }, - }, - { - // LED Index to Physical Position - {0, 0}, {18, 0}, {33, 0}, {48, 0}, {62, 0}, {81, 0}, {95, 0}, {110, 0}, {125, 0}, {143, 0}, {157, 0}, {172, 0}, {187, 0}, {205, 0}, - {0,15}, {15,15}, {29,15}, {44,15}, {59,15}, {73,15}, {88,15}, {103,15}, {117,15}, {132,15}, {146,15}, {161,15}, {176,15}, {203,15}, {224,15}, - {4,26}, {22,26}, {37,26}, {51,26}, {66,26}, {81,26}, {95,26}, {110,26}, {125,26}, {139,26}, {154,26}, {168,26}, {183,26}, {224,26}, - {6,38}, {26,38}, {40,38}, {55,38}, {70,38}, {84,38}, {99,38}, {114,38}, {128,38}, {143,38}, {158,38}, {172,38}, {187,38}, {203,32}, {224,38}, - {2,49}, {18,49}, {33,49}, {48,49}, {62,49}, {77,49}, {92,49}, {106,49}, {121,49}, {136,49}, {150,49}, {165,49}, {185,49}, {209,52}, - {2,61}, {20,61}, {38,61}, {94,61}, {147,61}, {161,61}, {176,61}, {195,64}, {209,64}, {224,64}, - }, - { - // RGB LED Index to Flag - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - } -}; -#endif diff --git a/keyboards/keychron/v1_max/iso_encoder/keymaps/default/keymap.c b/keyboards/keychron/v1_max/iso_encoder/keymaps/default/keymap.c deleted file mode 100644 index 3453026166..0000000000 --- a/keyboards/keychron/v1_max/iso_encoder/keymaps/default/keymap.c +++ /dev/null @@ -1,76 +0,0 @@ -/* 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 . - */ - -#include QMK_KEYBOARD_H -#include "keychron_common.h" - -enum layers { - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN, -}; -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_iso_83( - KC_ESC, KC_BRID, KC_BRIU, KC_MCTRL, KC_LNPAD, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_DEL, KC_MUTE, - KC_GRV, 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_PGUP, - 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_PGDN, - 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_NUHS, KC_ENT, KC_HOME, - KC_LSFT, KC_NUBS, 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_LCTL, KC_LOPTN, KC_LCMMD, KC_SPC, KC_RCMMD,MO(MAC_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - - [MAC_FN] = LAYOUT_iso_83( - _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, RGB_TOG, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, KC_END, - _______, _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - - [WIN_BASE] = LAYOUT_iso_83( - KC_ESC, 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_DEL, KC_MUTE, - KC_GRV, 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_PGUP, - 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_PGDN, - 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_NUHS, KC_ENT, KC_HOME, - KC_LSFT, KC_NUBS, 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_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(WIN_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - - [WIN_FN] = LAYOUT_iso_83( - _______, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, RGB_TOG, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, KC_END, - _______, _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______) -}; - -// clang-format on -#if defined(ENCODER_MAP_ENABLE) -const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][2] = { - [MAC_BASE] = {ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [MAC_FN] = {ENCODER_CCW_CW(RGB_VAD, RGB_VAI)}, - [WIN_BASE] = {ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [WIN_FN] = {ENCODER_CCW_CW(RGB_VAD, RGB_VAI)}, -}; -#endif // ENCODER_MAP_ENABLE - -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - if (!process_record_keychron_common(keycode, record)) { - return false; - } - return true; -} diff --git a/keyboards/keychron/v1_max/iso_encoder/keymaps/via/keymap.c b/keyboards/keychron/v1_max/iso_encoder/keymaps/via/keymap.c deleted file mode 100644 index 3453026166..0000000000 --- a/keyboards/keychron/v1_max/iso_encoder/keymaps/via/keymap.c +++ /dev/null @@ -1,76 +0,0 @@ -/* 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 . - */ - -#include QMK_KEYBOARD_H -#include "keychron_common.h" - -enum layers { - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN, -}; -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_iso_83( - KC_ESC, KC_BRID, KC_BRIU, KC_MCTRL, KC_LNPAD, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_DEL, KC_MUTE, - KC_GRV, 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_PGUP, - 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_PGDN, - 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_NUHS, KC_ENT, KC_HOME, - KC_LSFT, KC_NUBS, 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_LCTL, KC_LOPTN, KC_LCMMD, KC_SPC, KC_RCMMD,MO(MAC_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - - [MAC_FN] = LAYOUT_iso_83( - _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, RGB_TOG, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, KC_END, - _______, _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - - [WIN_BASE] = LAYOUT_iso_83( - KC_ESC, 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_DEL, KC_MUTE, - KC_GRV, 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_PGUP, - 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_PGDN, - 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_NUHS, KC_ENT, KC_HOME, - KC_LSFT, KC_NUBS, 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_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(WIN_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - - [WIN_FN] = LAYOUT_iso_83( - _______, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, RGB_TOG, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, KC_END, - _______, _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______) -}; - -// clang-format on -#if defined(ENCODER_MAP_ENABLE) -const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][2] = { - [MAC_BASE] = {ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [MAC_FN] = {ENCODER_CCW_CW(RGB_VAD, RGB_VAI)}, - [WIN_BASE] = {ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [WIN_FN] = {ENCODER_CCW_CW(RGB_VAD, RGB_VAI)}, -}; -#endif // ENCODER_MAP_ENABLE - -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - if (!process_record_keychron_common(keycode, record)) { - return false; - } - return true; -} diff --git a/keyboards/keychron/v1_max/iso_encoder/keymaps/via/rules.mk b/keyboards/keychron/v1_max/iso_encoder/keymaps/via/rules.mk deleted file mode 100644 index 1e5b99807c..0000000000 --- a/keyboards/keychron/v1_max/iso_encoder/keymaps/via/rules.mk +++ /dev/null @@ -1 +0,0 @@ -VIA_ENABLE = yes diff --git a/keyboards/keychron/v1_max/iso_encoder/rules.mk b/keyboards/keychron/v1_max/iso_encoder/rules.mk deleted file mode 100644 index 7ff128fa69..0000000000 --- a/keyboards/keychron/v1_max/iso_encoder/rules.mk +++ /dev/null @@ -1 +0,0 @@ -# This file intentionally left blank \ No newline at end of file diff --git a/keyboards/keychron/v1_max/jis_encoder/config.h b/keyboards/keychron/v1_max/jis_encoder/config.h deleted file mode 100644 index dd41e94906..0000000000 --- a/keyboards/keychron/v1_max/jis_encoder/config.h +++ /dev/null @@ -1,56 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#pragma once - -#ifdef RGB_MATRIX_ENABLE -/* RGB Matrix driver configuration */ -# define RGB_MATRIX_LED_COUNT 85 -# define DRIVER_COUNT 2 -# define DRIVER_CS_PINS \ - { B8, B9 } - -/* Scan phase of led driver set as MSKPHASE_9CHANNEL(defined as 0x03 in snled27351.h) */ -# define SNLED27351_PHASE_CHANNEL MSKPHASE_9CHANNEL -/* Set LED driver current */ -# define SNLED27351_CURRENT_TUNE \ - { 0x2C, 0x2C, 0x2C, 0x2C, 0x2C, 0x2C, 0x2C, 0x2C, 0x2C, 0x2C, 0x2C, 0x2C } - -/* Set to infinit, which is use in USB mode by default */ -# define RGB_MATRIX_TIMEOUT RGB_MATRIX_TIMEOUT_INFINITE -/* Allow shutdown of led driver to save power */ -# define RGB_MATRIX_DRIVER_SHUTDOWN_ENABLE -/* Turn off backlight on low brightness to save power */ -# define RGB_MATRIX_BRIGHTNESS_TURN_OFF_VAL 32 - -/* Indicator */ -# define BT_HOST_LED_MATRIX_LIST \ - { 15, 16, 17 } - -# define P2P4G_HOST_LED_MATRIX_LIST \ - { 18 } - -# define BAT_LEVEL_LED_LIST \ - { 15, 16, 17, 18, 19, 20, 21, 22, 23, 24 } - -# define CAPS_LOCK_INDEX 44 -# define LOW_BAT_IND_INDEX \ - { 77 } - -# define RGB_MATRIX_KEYPRESSES -# define RGB_MATRIX_FRAMEBUFFER_EFFECTS - -#endif diff --git a/keyboards/keychron/v1_max/jis_encoder/info.json b/keyboards/keychron/v1_max/jis_encoder/info.json deleted file mode 100644 index e6c29b2636..0000000000 --- a/keyboards/keychron/v1_max/jis_encoder/info.json +++ /dev/null @@ -1,115 +0,0 @@ -{ - "usb": { - "pid": "0x0915", - "device_version": "1.0.0" - }, - "features": { - "encoder": true, - "encoder_map": true - }, - "encoder": { - "rotary": [ - { - "pin_a": "B15", - "pin_b": "B14" - } - ] - }, - "layouts": { - "LAYOUT_jis_86": { - "layout": [ - {"matrix": [0, 0], "x": 0, "y": 0}, - {"matrix": [0, 1], "x": 1.25, "y": 0}, - {"matrix": [0, 2], "x": 2.25, "y": 0}, - {"matrix": [0, 3], "x": 3.25, "y": 0}, - {"matrix": [0, 4], "x": 4.25, "y": 0}, - {"matrix": [0, 5], "x": 5.5, "y": 0}, - {"matrix": [0, 6], "x": 6.5, "y": 0}, - {"matrix": [0, 7], "x": 7.5, "y": 0}, - {"matrix": [0, 8], "x": 8.5, "y": 0}, - {"matrix": [0, 9], "x": 9.75, "y": 0}, - {"matrix": [0, 10], "x": 10.75, "y": 0}, - {"matrix": [0, 11], "x": 11.75, "y": 0}, - {"matrix": [0, 12], "x": 12.75, "y": 0}, - {"matrix": [0, 13], "x": 14, "y": 0}, - {"matrix": [0,15], "x":15.25, "y":0}, - - {"matrix": [1, 0], "x": 0, "y": 1.25}, - {"matrix": [1, 1], "x": 1, "y": 1.25}, - {"matrix": [1, 2], "x": 2, "y": 1.25}, - {"matrix": [1, 3], "x": 3, "y": 1.25}, - {"matrix": [1, 4], "x": 4, "y": 1.25}, - {"matrix": [1, 5], "x": 5, "y": 1.25}, - {"matrix": [1, 6], "x": 6, "y": 1.25}, - {"matrix": [1, 7], "x": 7, "y": 1.25}, - {"matrix": [1, 8], "x": 8, "y": 1.25}, - {"matrix": [1, 9], "x": 9, "y": 1.25}, - {"matrix": [1, 10], "x": 10, "y": 1.25}, - {"matrix": [1, 11], "x": 11, "y": 1.25}, - {"matrix": [1, 12], "x": 12, "y": 1.25}, - {"matrix": [1, 13], "x": 13, "y": 1.25}, - {"matrix": [1, 14], "x": 14, "y": 1.25}, - {"matrix": [1, 15], "x": 15.25, "y": 1.25}, - - {"matrix": [2, 0], "x": 0, "y": 2.25, "w": 1.5}, - {"matrix": [2, 1], "x": 1.5, "y": 2.25}, - {"matrix": [2, 2], "x": 2.5, "y": 2.25}, - {"matrix": [2, 3], "x": 3.5, "y": 2.25}, - {"matrix": [2, 4], "x": 4.5, "y": 2.25}, - {"matrix": [2, 5], "x": 5.5, "y": 2.25}, - {"matrix": [2, 6], "x": 6.5, "y": 2.25}, - {"matrix": [2, 7], "x": 7.5, "y": 2.25}, - {"matrix": [2, 8], "x": 8.5, "y": 2.25}, - {"matrix": [2, 9], "x": 9.5, "y": 2.25}, - {"matrix": [2, 10], "x": 10.5, "y": 2.25}, - {"matrix": [2, 11], "x": 11.5, "y": 2.25}, - {"matrix": [2, 12], "x": 12.5, "y": 2.25}, - {"matrix": [2, 15], "x": 15.25, "y":2.25}, - - {"matrix": [3, 0], "x": 0, "y": 3.25, "w": 1.75}, - {"matrix": [3, 1], "x": 1.75, "y": 3.25}, - {"matrix": [3, 2], "x": 2.75, "y": 3.25}, - {"matrix": [3, 3], "x": 3.75, "y": 3.25}, - {"matrix": [3, 4], "x": 4.75, "y": 3.25}, - {"matrix": [3, 5], "x": 5.75, "y": 3.25}, - {"matrix": [3, 6], "x": 6.75, "y": 3.25}, - {"matrix": [3, 7], "x": 7.75, "y": 3.25}, - {"matrix": [3, 8], "x": 8.75, "y": 3.25}, - {"matrix": [3, 9], "x": 9.75, "y": 3.25}, - {"matrix": [3, 10], "x": 10.75, "y": 3.25}, - {"matrix": [3, 11], "x": 11.75, "y": 3.25}, - {"matrix": [3, 12], "x": 12.75, "y": 3.25}, - {"matrix": [3, 13], "x": 13.75, "y": 2.25, "w": 1.25, "h": 2}, - {"matrix": [3, 15], "x": 15.25, "y": 3.25}, - - {"matrix": [4, 0], "x": 0, "y": 4.25, "w": 2.25}, - {"matrix": [4, 2], "x": 2.25, "y": 4.25}, - {"matrix": [4, 3], "x": 3.25, "y": 4.25}, - {"matrix": [4, 4], "x": 4.25, "y": 4.25}, - {"matrix": [4, 5], "x": 5.25, "y": 4.25}, - {"matrix": [4, 6], "x": 6.25, "y": 4.25}, - {"matrix": [4, 7], "x": 7.25, "y": 4.25}, - {"matrix": [4, 8], "x": 8.25, "y": 4.25}, - {"matrix": [4, 9], "x": 9.25, "y": 4.25}, - {"matrix": [4, 10], "x": 10.25, "y": 4.25}, - {"matrix": [4, 11], "x": 11.25, "y": 4.25}, - {"matrix": [4, 12], "x": 12.25, "y": 4.25}, - {"matrix": [4, 13], "x": 13.25, "y": 4.25}, - {"matrix": [4, 14], "x": 14.25, "y": 4.5}, - - {"matrix": [5, 0], "x": 0, "y": 5.25, "w": 1.25}, - {"matrix": [5, 1], "x": 1.25, "y": 5.25}, - {"matrix": [5, 2], "x": 2.25, "y": 5.25, "w": 1.25}, - {"matrix": [5, 3], "x": 3.5, "y": 5.25}, - {"matrix": [5, 6], "x": 4.5, "y": 5.25, "w": 4.5}, - {"matrix": [5, 9], "x": 9, "y": 5.25}, - {"matrix": [5, 10], "x": 10, "y": 5.25}, - {"matrix": [5, 11], "x": 11, "y": 5.25}, - {"matrix": [5, 12], "x": 12, "y": 5.25}, - {"matrix": [5, 13], "x": 13.25, "y": 5.5}, - {"matrix": [5, 14], "x": 14.25, "y": 5.5}, - {"matrix": [5, 15], "x": 15.25, "y": 5.5} - ] - } - } -} diff --git a/keyboards/keychron/v1_max/jis_encoder/jis_encoder.c b/keyboards/keychron/v1_max/jis_encoder/jis_encoder.c deleted file mode 100644 index dcfdb316e8..0000000000 --- a/keyboards/keychron/v1_max/jis_encoder/jis_encoder.c +++ /dev/null @@ -1,152 +0,0 @@ -/* Copyright 2024 @ 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/>. - */ - -#include "quantum.h" - -// clang-format off - -#ifdef RGB_MATRIX_ENABLE -const snled27351_led_t g_snled27351_leds[RGB_MATRIX_LED_COUNT] = { -/* Refer to SNLED27351 manual for these locations - * driver - * | R location - * | | G location - * | | | B location - * | | | | */ - {0, G_1, I_1, H_1}, - {0, G_2, I_2, H_2}, - {0, G_3, I_3, H_3}, - {0, G_4, I_4, H_4}, - {0, G_5, I_5, H_5}, - {0, G_6, I_6, H_6}, - {0, G_7, I_7, H_7}, - {0, G_8, I_8, H_8}, - {0, G_9, I_9, H_9}, - {0, G_10, I_10, H_10}, - {0, G_11, I_11, H_11}, - {0, G_12, I_12, H_12}, - {0, G_13, I_13, H_13}, - {0, G_14, I_14, H_14}, - - {0, A_1, C_1, B_1}, - {0, A_2, C_2, B_2}, - {0, A_3, C_3, B_3}, - {0, A_4, C_4, B_4}, - {0, A_5, C_5, B_5}, - {0, A_6, C_6, B_6}, - {0, A_7, C_7, B_7}, - {0, A_8, C_8, B_8}, - {0, A_9, C_9, B_9}, - {0, A_10, C_10, B_10}, - {0, A_11, C_11, B_11}, - {0, A_12, C_12, B_12}, - {0, A_13, C_13, B_13}, - {0, A_14, C_14, B_14}, - {0, A_15, C_15, B_15}, - {0, A_16, C_16, B_16}, - - {0, D_1, F_1, E_1}, - {0, D_2, F_2, E_2}, - {0, D_3, F_3, E_3}, - {0, D_4, F_4, E_4}, - {0, D_5, F_5, E_5}, - {0, D_6, F_6, E_6}, - {0, D_7, F_7, E_7}, - {0, D_8, F_8, E_8}, - {0, D_9, F_9, E_9}, - {0, D_10, F_10, E_10}, - {0, D_11, F_11, E_11}, - {0, D_12, F_12, E_12}, - {0, D_13, F_13, E_13}, - {0, D_16, F_16, E_16}, - - {1, A_16, C_16, B_16}, - {1, A_15, C_15, B_15}, - {1, A_14, C_14, B_14}, - {1, A_13, C_13, B_13}, - {1, A_12, C_12, B_12}, - {1, A_11, C_11, B_11}, - {1, A_10, C_10, B_10}, - {1, A_9, C_9, B_9}, - {1, A_8, C_8, B_8}, - {1, A_7, C_7, B_7}, - {1, A_6, C_6, B_6}, - {1, A_5, C_5, B_5}, - {1, A_4, C_4, B_4}, - {1, A_3, C_3, B_3}, - {1, A_1, C_1, B_1}, - - {1, G_16, I_16, H_16}, - {1, G_14, I_14, H_14}, - {1, G_13, I_13, H_13}, - {1, G_12, I_12, H_12}, - {1, G_11, I_11, H_11}, - {1, G_10, I_10, H_10}, - {1, G_9, I_9, H_9}, - {1, G_8, I_8, H_8}, - {1, G_7, I_7, H_7}, - {1, G_6, I_6, H_6}, - {1, G_5, I_5, H_5}, - {1, G_4, I_4, H_4}, - {1, G_3, I_3, H_3}, - {1, G_2, I_2, H_2}, - - {1, D_16, F_16, E_16}, - {1, D_15, F_15, E_15}, - {1, D_14, F_14, E_14}, - {1, D_13, F_13, E_13}, - {1, D_10, F_10, E_10}, - {1, D_7, F_7, E_7}, - {1, D_6, F_6, E_6}, - {1, D_5, F_5, E_5}, - {1, D_4, F_4, E_4}, - {1, D_3, F_3, E_3}, - {1, D_2, F_2, E_2}, - {1, D_1, F_1, E_1} -}; - -#define __ NO_LED - -led_config_t g_led_config = { - { - // Key Matrix to LED Index - { 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, 40, 41, 42, __, __, 43 }, - { 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, __, 58 }, - { 59, __, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, __ }, - { 73, 74, 75, 76, __, __, 77, __, __, 78, 79, 80, 81, 82, 83, 84 } - }, - { - // LED Index to Physical Position - {0, 0}, {15, 0}, {27, 0}, {41, 0}, {55, 0}, {75, 0}, {89, 0}, {103, 0}, {117, 0}, {131, 0}, {145, 0}, {159, 0}, {173, 0}, {188, 0}, - {0,14}, {14,14}, {26,14}, {40,14}, {54,14}, {68,14}, {82,14}, {96, 14}, {110, 14}, {124, 14}, {138, 14}, {152, 14}, {166, 14}, {180, 14}, {192,14}, {224, 14}, - {7,26}, {18,26}, {33,26}, {47,26}, {61,26}, {75,26}, {89,26}, {103, 26}, {117, 26}, {131, 26}, {145, 26}, {159, 26}, {173, 26}, {224, 26}, - {8,37}, {20,37}, {34,37}, {48,37}, {62,37}, {76,37}, {90,37}, {104, 37}, {118, 37}, {132, 37}, {146, 37}, {160, 37}, {174, 37}, {186, 32}, {224, 37}, - {8,50}, {26,50}, {40,50}, {54,50}, {68,50}, {82,50}, {96, 50}, {110, 50}, {124, 50}, {138, 50}, {152, 50}, {166, 50}, {180, 50}, {188, 50}, - {1,62}, {15,62}, {27,62}, {40,62}, {90,62}, {123, 62}, {137, 62}, {151, 62}, {165, 62}, {174, 62}, {188, 62}, {224, 62} - }, - { - // RGB LED Index to Flag - 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, - 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, - 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, - 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, - 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, - 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4 - }, -}; -#endif diff --git a/keyboards/keychron/v1_max/jis_encoder/keymaps/default/keymap.c b/keyboards/keychron/v1_max/jis_encoder/keymaps/default/keymap.c deleted file mode 100644 index f28f36c413..0000000000 --- a/keyboards/keychron/v1_max/jis_encoder/keymaps/default/keymap.c +++ /dev/null @@ -1,77 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#include QMK_KEYBOARD_H -#include "keychron_common.h" - -enum layers { - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN, -}; -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_jis_86( - KC_ESC, KC_BRID, KC_BRIU, KC_MCTRL, KC_LNPAD, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_DEL, KC_MUTE, - KC_GRV, 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_INT3, KC_BSPC, KC_PGUP, - 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_PGDN, - 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_BSLS, KC_ENT, KC_HOME, - KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_INT1, KC_RSFT, KC_UP, - KC_LCTL, KC_LOPTN, KC_LCMMD, KC_LNG2, KC_SPC, KC_LNG1, KC_RCMMD,MO(MAC_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - - [MAC_FN] = LAYOUT_jis_86( - _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, RGB_TOG, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, KC_END, - _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - - [WIN_BASE] = LAYOUT_jis_86( - KC_ESC, 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_DEL, KC_MUTE, - KC_GRV, 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_INT3, KC_BSPC, KC_PGUP, - 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_PGDN, - 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_BSLS, KC_ENT, KC_HOME, - KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_INT1, KC_RSFT, KC_UP, - KC_LCTL, KC_LGUI, KC_LALT, KC_INT5, KC_SPC, KC_INT4, KC_RALT, MO(WIN_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - - [WIN_FN] = LAYOUT_jis_86( - _______, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, RGB_TOG, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, KC_END, - _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______) - -}; - -// clang-format on -#if defined(ENCODER_MAP_ENABLE) -const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][2] = { - [MAC_BASE] = {ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [MAC_FN] = {ENCODER_CCW_CW(RGB_VAD, RGB_VAI)}, - [WIN_BASE] = {ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [WIN_FN] = {ENCODER_CCW_CW(RGB_VAD, RGB_VAI)}, -}; -#endif // ENCODER_MAP_ENABLE - -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - if (!process_record_keychron_common(keycode, record)) { - return false; - } - return true; -} diff --git a/keyboards/keychron/v1_max/jis_encoder/keymaps/via/keymap.c b/keyboards/keychron/v1_max/jis_encoder/keymaps/via/keymap.c deleted file mode 100644 index f28f36c413..0000000000 --- a/keyboards/keychron/v1_max/jis_encoder/keymaps/via/keymap.c +++ /dev/null @@ -1,77 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#include QMK_KEYBOARD_H -#include "keychron_common.h" - -enum layers { - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN, -}; -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_jis_86( - KC_ESC, KC_BRID, KC_BRIU, KC_MCTRL, KC_LNPAD, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_DEL, KC_MUTE, - KC_GRV, 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_INT3, KC_BSPC, KC_PGUP, - 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_PGDN, - 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_BSLS, KC_ENT, KC_HOME, - KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_INT1, KC_RSFT, KC_UP, - KC_LCTL, KC_LOPTN, KC_LCMMD, KC_LNG2, KC_SPC, KC_LNG1, KC_RCMMD,MO(MAC_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - - [MAC_FN] = LAYOUT_jis_86( - _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, RGB_TOG, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, KC_END, - _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - - [WIN_BASE] = LAYOUT_jis_86( - KC_ESC, 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_DEL, KC_MUTE, - KC_GRV, 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_INT3, KC_BSPC, KC_PGUP, - 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_PGDN, - 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_BSLS, KC_ENT, KC_HOME, - KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_INT1, KC_RSFT, KC_UP, - KC_LCTL, KC_LGUI, KC_LALT, KC_INT5, KC_SPC, KC_INT4, KC_RALT, MO(WIN_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - - [WIN_FN] = LAYOUT_jis_86( - _______, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, RGB_TOG, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, KC_END, - _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______) - -}; - -// clang-format on -#if defined(ENCODER_MAP_ENABLE) -const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][2] = { - [MAC_BASE] = {ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [MAC_FN] = {ENCODER_CCW_CW(RGB_VAD, RGB_VAI)}, - [WIN_BASE] = {ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [WIN_FN] = {ENCODER_CCW_CW(RGB_VAD, RGB_VAI)}, -}; -#endif // ENCODER_MAP_ENABLE - -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - if (!process_record_keychron_common(keycode, record)) { - return false; - } - return true; -} diff --git a/keyboards/keychron/v1_max/jis_encoder/keymaps/via/rules.mk b/keyboards/keychron/v1_max/jis_encoder/keymaps/via/rules.mk deleted file mode 100644 index 1e5b99807c..0000000000 --- a/keyboards/keychron/v1_max/jis_encoder/keymaps/via/rules.mk +++ /dev/null @@ -1 +0,0 @@ -VIA_ENABLE = yes diff --git a/keyboards/keychron/v1_max/jis_encoder/rules.mk b/keyboards/keychron/v1_max/jis_encoder/rules.mk deleted file mode 100644 index 7ff128fa69..0000000000 --- a/keyboards/keychron/v1_max/jis_encoder/rules.mk +++ /dev/null @@ -1 +0,0 @@ -# This file intentionally left blank \ No newline at end of file diff --git a/keyboards/keychron/v1_max/mcuconf.h b/keyboards/keychron/v1_max/mcuconf.h deleted file mode 100644 index 9cbef71ca6..0000000000 --- a/keyboards/keychron/v1_max/mcuconf.h +++ /dev/null @@ -1,37 +0,0 @@ -/* 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 - -#include_next - -#undef STM32_HSECLK -#define STM32_HSECLK 16000000 - -#undef STM32_PLLM_VALUE -#define STM32_PLLM_VALUE 8 - -#undef STM32_PLLN_VALUE -#define STM32_PLLN_VALUE 96 - -#undef STM32_PLLP_VALUE -#define STM32_PLLP_VALUE 4 - -#undef STM32_PLLQ_VALUE -#define STM32_PLLQ_VALUE 4 - -#undef STM32_SPI_USE_SPI1 -#define STM32_SPI_USE_SPI1 TRUE diff --git a/keyboards/keychron/v1_max/readme.md b/keyboards/keychron/v1_max/readme.md deleted file mode 100644 index 8fbc226b8c..0000000000 --- a/keyboards/keychron/v1_max/readme.md +++ /dev/null @@ -1,23 +0,0 @@ -# Keychron V1 Max - -![Keychron V1 Max](https://cdn.shopify.com/s/files/1/0059/0630/1017/files/V1-Max-1.jpg?v=1699065014) - -A customizable wireless 75% keyboard. - -* Keyboard Maintainer: [Keychron](https://github.com/keychron) -* Hardware Supported: Keychron V1 Max -* Hardware Availability: [Keychron V1 Max QMK/VIA Wireless Custom Mechanical Keyboard](https://www.keychron.com/products/keychron-v1-max-qmk-via-wireless-custom-mechanical-keyboard) - -Make example for this keyboard (after setting up your build environment): - - make keychron/v1_max/ansi_encoder:default - make keychron/v1_max/iso_encoder:default - -Flashing example for this keyboard: - - make keychron/v1_max/ansi_encoder:default:flash - make keychron/v1_max/iso_encoder:default:flash - -**Reset Key**: Toggle mode switch to "Cable", hold down the *Esc* key or reset button underneath space bar while connecting the USB cable, - -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). diff --git a/keyboards/keychron/v1_max/rules.mk b/keyboards/keychron/v1_max/rules.mk deleted file mode 100644 index 4eaf6820bc..0000000000 --- a/keyboards/keychron/v1_max/rules.mk +++ /dev/null @@ -1,4 +0,0 @@ -include keyboards/keychron/common/wireless/wireless.mk -include keyboards/keychron/common/keychron_common.mk - -VPATH += $(TOP_DIR)/keyboards/keychron diff --git a/keyboards/keychron/v1_max/v1_max.c b/keyboards/keychron/v1_max/v1_max.c deleted file mode 100644 index 9708782945..0000000000 --- a/keyboards/keychron/v1_max/v1_max.c +++ /dev/null @@ -1,85 +0,0 @@ -/* 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/>. - */ - -#include "quantum.h" -#include "keychron_task.h" -#ifdef FACTORY_TEST_ENABLE -# include "factory_test.h" -# include "keychron_common.h" -#endif -#ifdef LK_WIRELESS_ENABLE -# include "lkbt51.h" -# include "wireless.h" -# include "keychron_wireless_common.h" -# include "battery.h" -#endif - -#define POWER_ON_LED_DURATION 3000 -static uint32_t power_on_indicator_timer_buffer; - -#ifdef DIP_SWITCH_ENABLE -bool dip_switch_update_kb(uint8_t index, bool active) { - if (index == 0) { - default_layer_set(1UL << (active ? 0 : 2)); - } - dip_switch_update_user(index, active); - - return true; -} -#endif - -void keyboard_post_init_kb(void) { -#ifdef LK_WIRELESS_ENABLE - palSetLineMode(P2P4_MODE_SELECT_PIN, PAL_MODE_INPUT); - palSetLineMode(BT_MODE_SELECT_PIN, PAL_MODE_INPUT); - - writePin(BAT_LOW_LED_PIN, BAT_LOW_LED_PIN_ON_STATE); - - lkbt51_init(false); - wireless_init(); -#endif - - power_on_indicator_timer_buffer = timer_read32(); -#ifdef ENCODER_ENABLE - encoder_cb_init(); -#endif - - keyboard_post_init_user(); -} - -bool keychron_task_kb(void) { - if (power_on_indicator_timer_buffer) { - if (timer_elapsed32(power_on_indicator_timer_buffer) > POWER_ON_LED_DURATION) { - power_on_indicator_timer_buffer = 0; - -#ifdef LK_WIRELESS_ENABLE - writePin(BAT_LOW_LED_PIN, !BAT_LOW_LED_PIN_ON_STATE); -#endif - - } else { -#ifdef LK_WIRELESS_ENABLE - writePin(BAT_LOW_LED_PIN, BAT_LOW_LED_PIN_ON_STATE); -#endif - } - } - return true; -} - -#ifdef LK_WIRELESS_ENABLE -bool lpm_is_kb_idle(void) { - return power_on_indicator_timer_buffer == 0 && !factory_reset_indicating(); -} -#endif diff --git a/keyboards/keychron/v1_max/via_json/v1_max_ansi_encoder.json b/keyboards/keychron/v1_max/via_json/v1_max_ansi_encoder.json deleted file mode 100644 index f5ed3a07e8..0000000000 --- a/keyboards/keychron/v1_max/via_json/v1_max_ansi_encoder.json +++ /dev/null @@ -1,286 +0,0 @@ -{ - "name": "Keychron V1 Max ANSI Knob", - "vendorId": "0x3434", - "productId": "0x0913", - "keycodes": ["qmk_lighting"], - "menus": [ - { - "label": "Lighting", - "content": [ - { - "label": "Backlight", - "content": [ - { - "label": "Brightness", - "type": "range", - "options": [0, 255], - "content": ["id_qmk_rgb_matrix_brightness", 3, 1] - }, - { - "label": "Effect", - "type": "dropdown", - "content": ["id_qmk_rgb_matrix_effect", 3, 2], - "options": [ - ["None", 0], - ["Solid Color", 1], - ["Breathing", 2], - ["Band Spiral Val", 3], - ["Cycle All", 4], - ["Cycle Left Right", 5], - ["Cycle Up Down", 6], - ["Rainbow Moving Chevron", 7], - ["Cycle Out In", 8], - ["Cycle Out In Dual", 9], - ["Cycle Pinwheel", 10], - ["Cycle Spiral", 11], - ["Dual Beacon", 12], - ["Rainbow Beacon", 13], - ["Jellybean Raindrops", 14], - ["Pixel Rain", 15], - ["Typing Heatmap", 16], - ["Digital Rain", 17], - ["Reactive Simple", 18], - ["Reactive Multiwide", 19], - ["Reactive Multinexus", 20], - ["Splash", 21], - ["Solid Splash", 22] - ] - }, - { - "showIf": "{id_qmk_rgb_matrix_effect} > 1", - "label": "Effect Speed", - "type": "range", - "options": [0, 255], - "content": ["id_qmk_rgb_matrix_effect_speed", 3, 3] - }, - { - "showIf": "{id_qmk_rgb_matrix_effect} != 0 && ( {id_qmk_rgb_matrix_effect} < 4 || {id_qmk_rgb_matrix_effect} == 18 || ({id_qmk_rgb_matrix_effect} > 17 && {id_qmk_rgb_matrix_effect} != 21) ) ", - "label": "Color", - "type": "color", - "content": ["id_qmk_rgb_matrix_color", 3, 4] - } - ] - } - ] - } - ], - "customKeycodes": [ - {"name": "Left Option", "title": "Left Option", "shortName": "LOpt"}, - {"name": "Right Option", "title": "Right Option", "shortName": "ROpt"}, - {"name": "Left Cmd", "title": "Left Command", "shortName": "LCmd"}, - {"name": "Right Cmd", "title": "Right Command", "shortName": "RCmd"}, - {"name": "Misson Control", "title": "Misson Control in Mac", "shortName": "MCtl"}, - {"name": "Lanuch Pad", "title": "Lanuch Pad in Windows", "shortName": "LPad"}, - {"name": "Task View", "title": "Task View in Windows", "shortName": "Task"}, - {"name": "File Explorer", "title": "File Explorer in Windows", "shortName": "File"}, - {"name": "Screen shot", "title": "Screenshot in macOS", "shortName": "SShot"}, - {"name": "Cortana", "title": "Cortana in Windows", "shortName": "Cortana"}, - {"name": "Siri", "title": "Siri in macOS", "shortName": "Siri"}, - {"name": "Bluetooth Host 1", "title": "Bluetooth Host 1", "shortName": "BTH1"}, - {"name": "Bluetooth Host 2", "title": "Bluetooth Host 2", "shortName": "BTH2"}, - {"name": "Bluetooth Host 3", "title": "Bluetooth Host 3", "shortName": "BTH3"}, - {"name": "2.4G", "title": "2.4G", "shortName": "2.4G"}, - {"name": "Battery Level", "title": "Show battery level", "shortName": "Batt"} - ], - "matrix": {"rows": 6, "cols" : 16}, - "layouts": { - "keymap": [ - [ - { - "c": "#777777" - }, - "0, 0", - { - "x": 0.25, - "c": "#cccccc" - }, - "0, 1", - "0, 2", - "0, 3", - "0, 4", - { - "x": 0.25, - "c": "#aaaaaa" - }, - "0, 5", - "0, 6", - "0, 7", - "0, 8", - { - "x": 0.25, - "c": "#cccccc" - }, - "0, 9", - "0, 10", - "0, 11", - "0, 12", - { - "x": 0.25, - "c": "#aaaaaa" - }, - "0, 13", - { - "x": 0.25 - }, - "0, 15\n\n\n\n\n\n\n\n\ne0" - ], - [ - { - "y": 0.25, - "c": "#aaaaaa" - }, - "1, 0", - { - "c": "#cccccc" - }, - "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": 2, - "c": "#aaaaaa" - }, - "1, 13", - { - "x": 0.25 - }, - "1, 15" - ], - [ - { - "w": 1.5, - "c": "#aaaaaa" - }, - "2, 0", - { - "c": "#cccccc" - }, - "2, 1", - "2, 2", - "2, 3", - "2, 4", - "2, 5", - "2, 6", - "2, 7", - "2, 8", - "2, 9", - "2, 10", - "2, 11", - "2, 12", - { - "w": 1.5, - "c": "#aaaaaa" - }, - "2, 13", - { - "x": 0.25 - }, - "2, 15" - ], - [ - { - "w": 1.75, - "c": "#aaaaaa" - }, - "3, 0", - { - "c": "#cccccc" - }, - "3, 1", - "3, 2", - "3, 3", - "3, 4", - "3, 5", - "3, 6", - "3, 7", - "3, 8", - "3, 9", - "3, 10", - "3, 11", - { - "w": 2.25, - "c": "#777777" - }, - "3, 13", - { - "x": 0.25, - "c": "#aaaaaa" - }, - "3, 15" - ], - [ - { - "w": 2.25, - "c": "#aaaaaa" - }, - "4, 0", - { - "c": "#cccccc" - }, - "4, 2", - "4, 3", - "4, 4", - "4, 5", - "4, 6", - "4, 7", - "4, 8", - "4, 9", - "4, 10", - "4, 11", - { - "w": 1.75, - "c": "#aaaaaa" - }, - "4, 12", - { - "x": 0.25, - "y": 0.25 - }, - "4, 14" - ], - [ - { - "y": -0.25, - "w": 1.25, - "c": "#aaaaaa" - }, - "5, 0", - { - "w": 1.25 - }, - "5, 1", - { - "w": 1.25 - }, - "5, 2", - { - "w": 6.25, - "c": "#cccccc" - }, - "5, 6", - { - "c": "#aaaaaa" - }, - "5, 10", - "5, 11", - "5, 12", - { - "x": 0.25, - "y": 0.25 - }, - "5, 13", - "5, 14", - "5, 15" - ] - ] - } -} diff --git a/keyboards/keychron/v1_max/via_json/v1_max_iso_encoder.json b/keyboards/keychron/v1_max/via_json/v1_max_iso_encoder.json deleted file mode 100644 index 4e24fc7d8c..0000000000 --- a/keyboards/keychron/v1_max/via_json/v1_max_iso_encoder.json +++ /dev/null @@ -1,291 +0,0 @@ -{ - "name": "Keychron V1 Max ISO Knob", - "vendorId": "0x3434", - "productId": "0x0914", - "keycodes": ["qmk_lighting"], - "menus": [ - { - "label": "Lighting", - "content": [ - { - "label": "Backlight", - "content": [ - { - "label": "Brightness", - "type": "range", - "options": [0, 255], - "content": ["id_qmk_rgb_matrix_brightness", 3, 1] - }, - { - "label": "Effect", - "type": "dropdown", - "content": ["id_qmk_rgb_matrix_effect", 3, 2], - "options": [ - ["None", 0], - ["Solid Color", 1], - ["Breathing", 2], - ["Band Spiral Val", 3], - ["Cycle All", 4], - ["Cycle Left Right", 5], - ["Cycle Up Down", 6], - ["Rainbow Moving Chevron", 7], - ["Cycle Out In", 8], - ["Cycle Out In Dual", 9], - ["Cycle Pinwheel", 10], - ["Cycle Spiral", 11], - ["Dual Beacon", 12], - ["Rainbow Beacon", 13], - ["Jellybean Raindrops", 14], - ["Pixel Rain", 15], - ["Typing Heatmap", 16], - ["Digital Rain", 17], - ["Reactive Simple", 18], - ["Reactive Multiwide", 19], - ["Reactive Multinexus", 20], - ["Splash", 21], - ["Solid Splash", 22] - ] - }, - { - "showIf": "{id_qmk_rgb_matrix_effect} > 1", - "label": "Effect Speed", - "type": "range", - "options": [0, 255], - "content": ["id_qmk_rgb_matrix_effect_speed", 3, 3] - }, - { - "showIf": "{id_qmk_rgb_matrix_effect} != 0 && ( {id_qmk_rgb_matrix_effect} < 4 || {id_qmk_rgb_matrix_effect} == 18 || ({id_qmk_rgb_matrix_effect} > 17 && {id_qmk_rgb_matrix_effect} != 21) ) ", - "label": "Color", - "type": "color", - "content": ["id_qmk_rgb_matrix_color", 3, 4] - } - ] - } - ] - } - ], - "customKeycodes": [ - {"name": "Left Option", "title": "Left Option", "shortName": "LOpt"}, - {"name": "Right Option", "title": "Right Option", "shortName": "ROpt"}, - {"name": "Left Cmd", "title": "Left Command", "shortName": "LCmd"}, - {"name": "Right Cmd", "title": "Right Command", "shortName": "RCmd"}, - {"name": "Misson Control", "title": "Misson Control in Mac", "shortName": "MCtl"}, - {"name": "Lanuch Pad", "title": "Lanuch Pad in Windows", "shortName": "LPad"}, - {"name": "Task View", "title": "Task View in Windows", "shortName": "Task"}, - {"name": "File Explorer", "title": "File Explorer in Windows", "shortName": "File"}, - {"name": "Screen shot", "title": "Screenshot in macOS", "shortName": "SShot"}, - {"name": "Cortana", "title": "Cortana in Windows", "shortName": "Cortana"}, - {"name": "Siri", "title": "Siri in macOS", "shortName": "Siri"}, - {"name": "Bluetooth Host 1", "title": "Bluetooth Host 1", "shortName": "BTH1"}, - {"name": "Bluetooth Host 2", "title": "Bluetooth Host 2", "shortName": "BTH2"}, - {"name": "Bluetooth Host 3", "title": "Bluetooth Host 3", "shortName": "BTH3"}, - {"name": "2.4G", "title": "2.4G", "shortName": "2.4G"}, - {"name": "Battery Level", "title": "Show battery level", "shortName": "Batt"} - ], - "matrix": {"rows": 6, "cols" : 16}, - "layouts": { - "keymap": [ - [ - { - "c": "#777777" - }, - "0, 0", - { - "x": 0.25, - "c": "#cccccc" - }, - "0, 1", - "0, 2", - "0, 3", - "0, 4", - { - "x": 0.25, - "c": "#aaaaaa" - }, - "0, 5", - "0, 6", - "0, 7", - "0, 8", - { - "x": 0.25 - }, - "0, 9", - { - "c": "#cccccc" - }, - "0, 10", - "0, 11", - "0, 12", - { - "x": 0.25, - "c": "#aaaaaa" - }, - "0, 13", - { - "x": 0.25 - }, - "0, 0\n\n\n\n\n\n\n\n\ne0" - ], - [ - { - "y": 0.25, - "c": "#aaaaaa" - }, - "1, 0", - { - "c": "#cccccc" - }, - "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": 2, - "c": "#aaaaaa" - }, - "1, 13", - { - "x": 0.25 - }, - "1, 15" - ], - [ - { - "w": 1.5, - "c": "#aaaaaa" - }, - "2, 0", - { - "c": "#cccccc" - }, - "2, 1", - "2, 2", - "2, 3", - "2, 4", - "2, 5", - "2, 6", - "2, 7", - "2, 8", - "2, 9", - "2, 10", - "2, 11", - "2, 12", - { - "x": 0.25, - "w": 1.25, - "h": 2, - "x2": -0.25, - "w2": 1.5, - "h2": 1, - "c": "#777777" - }, - "3, 13", - { - "x": 0.25, - "c": "#aaaaaa" - }, - "2, 15" - ], - [ - { - "w": 1.75, - "c": "#aaaaaa" - }, - "3, 0", - { - "c": "#cccccc" - }, - "3, 1", - "3, 2", - "3, 3", - "3, 4", - "3, 5", - "3, 6", - "3, 7", - "3, 8", - "3, 9", - "3, 10", - "3, 11", - "3, 12", - { - "x": 1.5, - "c": "#aaaaaa" - }, - "3, 15" - ], - [ - { - "w": 1.25, - "c": "#aaaaaa" - }, - "4, 0", - { - "c": "#cccccc" - }, - "4, 1", - "4, 2", - "4, 3", - "4, 4", - "4, 5", - "4, 6", - "4, 7", - "4, 8", - "4, 9", - "4, 10", - "4, 11", - { - "w": 1.75, - "c": "#aaaaaa" - }, - "4, 12", - { - "x": 0.25, - "y": 0.25 - }, - "4, 14" - ], - [ - { - "y": -0.25, - "w": 1.25, - "c": "#aaaaaa" - }, - "5, 0", - { - "w": 1.25 - }, - "5, 1", - { - "w": 1.25 - }, - "5, 2", - { - "w": 6.25, - "c": "#cccccc" - }, - "5, 6", - { - "c": "#aaaaaa" - }, - "5, 10", - "5, 11", - "5, 12", - { - "x": 0.25, - "y": 0.25 - }, - "5, 13", - "5, 14", - "5, 15" - ] - ] - } -} diff --git a/keyboards/keychron/v1_max/via_json/v1_max_jis_encoder.json b/keyboards/keychron/v1_max/via_json/v1_max_jis_encoder.json deleted file mode 100644 index bb27ab9fe4..0000000000 --- a/keyboards/keychron/v1_max/via_json/v1_max_jis_encoder.json +++ /dev/null @@ -1,281 +0,0 @@ -{ - "name": "Keychron V1 Max JIS Knob", - "vendorId": "0x3434", - "productId": "0x0915", - "keycodes": ["qmk_lighting"], - "menus": [ - { - "label": "Lighting", - "content": [ - { - "label": "Backlight", - "content": [ - { - "label": "Brightness", - "type": "range", - "options": [0, 255], - "content": ["id_qmk_rgb_matrix_brightness", 3, 1] - }, - { - "label": "Effect", - "type": "dropdown", - "content": ["id_qmk_rgb_matrix_effect", 3, 2], - "options": [ - ["None", 0], - ["Solid Color", 1], - ["Breathing", 2], - ["Band Spiral Val", 3], - ["Cycle All", 4], - ["Cycle Left Right", 5], - ["Cycle Up Down", 6], - ["Rainbow Moving Chevron", 7], - ["Cycle Out In", 8], - ["Cycle Out In Dual", 9], - ["Cycle Pinwheel", 10], - ["Cycle Spiral", 11], - ["Dual Beacon", 12], - ["Rainbow Beacon", 13], - ["Jellybean Raindrops", 14], - ["Pixel Rain", 15], - ["Typing Heatmap", 16], - ["Digital Rain", 17], - ["Reactive Simple", 18], - ["Reactive Multiwide", 19], - ["Reactive Multinexus", 20], - ["Splash", 21], - ["Solid Splash", 22] - ] - }, - { - "showIf": "{id_qmk_rgb_matrix_effect} > 1", - "label": "Effect Speed", - "type": "range", - "options": [0, 255], - "content": ["id_qmk_rgb_matrix_effect_speed", 3, 3] - }, - { - "showIf": "{id_qmk_rgb_matrix_effect} != 0 && ( {id_qmk_rgb_matrix_effect} < 4 || {id_qmk_rgb_matrix_effect} == 18 || ({id_qmk_rgb_matrix_effect} > 17 && {id_qmk_rgb_matrix_effect} != 21) ) ", - "label": "Color", - "type": "color", - "content": ["id_qmk_rgb_matrix_color", 3, 4] - } - ] - } - ] - } - ], - "customKeycodes": [ - {"name": "Left Option", "title": "Left Option", "shortName": "LOpt"}, - {"name": "Right Option", "title": "Right Option", "shortName": "ROpt"}, - {"name": "Left Cmd", "title": "Left Command", "shortName": "LCmd"}, - {"name": "Right Cmd", "title": "Right Command", "shortName": "RCmd"}, - {"name": "Misson Control", "title": "Misson Control in Mac", "shortName": "MCtl"}, - {"name": "Lanuch Pad", "title": "Lanuch Pad in Windows", "shortName": "LPad"}, - {"name": "Task View", "title": "Task View in Windows", "shortName": "Task"}, - {"name": "File Explorer", "title": "File Explorer in Windows", "shortName": "File"}, - {"name": "Screen shot", "title": "Screenshot in macOS", "shortName": "SShot"}, - {"name": "Cortana", "title": "Cortana in Windows", "shortName": "Cortana"}, - {"name": "Siri", "title": "Siri in macOS", "shortName": "Siri"}, - {"name": "Bluetooth Host 1", "title": "Bluetooth Host 1", "shortName": "BTH1"}, - {"name": "Bluetooth Host 2", "title": "Bluetooth Host 2", "shortName": "BTH2"}, - {"name": "Bluetooth Host 3", "title": "Bluetooth Host 3", "shortName": "BTH3"}, - {"name": "2.4G", "title": "2.4G", "shortName": "2.4G"}, - {"name": "Battery Level", "title": "Show battery level", "shortName": "Batt"} - ], - "matrix": {"rows": 6, "cols" : 16}, - "layouts": { - "keymap": [ - [ - { - "c": "#777777" - }, - "0, 0", - { - "x": 0.25, - "c": "#cccccc" - }, - "0, 1", - "0, 2", - "0, 3", - "0, 4", - { - "x": 0.25, - "c": "#aaaaaa" - }, - "0, 5", - "0, 6", - "0, 7", - "0, 8", - { - "x": 0.25, - "c": "#cccccc" - }, - "0, 9", - "0, 10", - "0, 11", - "0, 12", - { - "x": 0.25, - "c": "#aaaaaa" - }, - "0, 13", - { - "x": 0.25 - }, - "0, 15\n\n\n\n\n\n\n\n\ne0" - ], - [ - { - "y": 0.25 - }, - "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", - "1, 13", - "1, 14", - { - "x": 0.25, - "c": "#aaaaaa" - }, - "1, 15" - ], - [ - { - "w": 1.5, - "c": "#aaaaaa" - }, - "2, 0", - { - "c": "#cccccc" - }, - "2, 1", - "2, 2", - "2, 3", - "2, 4", - "2, 5", - "2, 6", - "2, 7", - "2, 8", - "2, 9", - "2, 10", - "2, 11", - "2, 12", - { - "x": 0.25, - "w": 1.25, - "h": 2, - "x2": -0.25, - "w2": 1.5, - "h2": 1, - "c": "#777777" - }, - "3, 13", - { - "x": 0.25, - "c": "#aaaaaa" - }, - "2, 15" - ], - [ - { - "w": 1.75, - "c": "#aaaaaa" - }, - "3, 0", - { - "c": "#cccccc" - }, - "3, 1", - "3, 2", - "3, 3", - "3, 4", - "3, 5", - "3, 6", - "3, 7", - "3, 8", - "3, 9", - "3, 10", - "3, 11", - "3, 12", - { - "x": 1.5, - "c": "#aaaaaa" - }, - "3, 15" - ], - [ - { - "w": 2.25, - "c": "#aaaaaa" - }, - "4, 0", - { - "c": "#cccccc" - }, - "4, 2", - "4, 3", - "4, 4", - "4, 5", - "4, 6", - "4, 7", - "4, 8", - "4, 9", - "4, 10", - "4, 11", - "4, 12", - { - "c": "#aaaaaa" - }, - "4, 13", - { - "c":"#cccccc" - }, - "4, 14" - ], - [ - { - "w": 1.25, - "c": "#aaaaaa" - }, - "5, 0", - "5, 1", - { - "w": 1.25 - }, - "5, 2", - "5, 3", - { - "w": 4.5, - "c": "#cccccc" - }, - "5, 6", - { - "c": "#aaaaaa" - }, - "5, 9", - "5, 10", - { - "w":1.25 - }, - "5, 11", - "5, 12", - { - "c":"#cccccc" - }, - "5, 13", - "5, 14", - "5, 15" - ] - ] - } -} diff --git a/keyboards/keychron/v2_max/ansi_encoder/ansi_encoder.c b/keyboards/keychron/v2_max/ansi_encoder/ansi_encoder.c deleted file mode 100644 index ad21b994ea..0000000000 --- a/keyboards/keychron/v2_max/ansi_encoder/ansi_encoder.c +++ /dev/null @@ -1,129 +0,0 @@ -/* Copyright 2024 @ 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/>. - */ - -#include "quantum.h" - -// clang-format off - -#ifdef RGB_MATRIX_ENABLE -const snled27351_led_t g_snled27351_leds[RGB_MATRIX_LED_COUNT] = { -/* Refer to SNLED27351 manual for these locations - * driver - * | R location - * | | G location - * | | | B location - * | | | | */ - {0, G_1, I_1, H_1}, - {0, G_2, I_2, H_2}, - {0, G_3, I_3, H_3}, - {0, G_4, I_4, H_4}, - {0, G_5, I_5, H_5}, - {0, G_6, I_6, H_6}, - {0, G_7, I_7, H_7}, - {0, G_8, I_8, H_8}, - {0, G_9, I_9, H_9}, - {0, G_10, I_10, H_10}, - {0, G_11, I_11, H_11}, - {0, G_12, I_12, H_12}, - {0, G_13, I_13, H_13}, - {0, G_14, I_14, H_14}, - - {0, D_1, F_1, E_1}, - {0, D_2, F_2, E_2}, - {0, D_3, F_3, E_3}, - {0, D_4, F_4, E_4}, - {0, D_5, F_5, E_5}, - {0, D_6, F_6, E_6}, - {0, D_7, F_7, E_7}, - {0, D_8, F_8, E_8}, - {0, D_9, F_9, E_9}, - {0, D_10, F_10, E_10}, - {0, D_11, F_11, E_11}, - {0, D_12, F_12, E_12}, - {0, D_13, F_13, E_13}, - {0, D_14, F_14, E_14}, - {0, D_16, F_16, E_16}, - - {0, A_1, C_1, B_1}, - {0, A_2, C_2, B_2}, - {0, A_3, C_3, B_3}, - {0, A_4, C_4, B_4}, - {0, A_5, C_5, B_5}, - {0, A_6, C_6, B_6}, - {0, A_7, C_7, B_7}, - {0, A_8, C_8, B_8}, - {0, A_9, C_9, B_9}, - {0, A_10, C_10, B_10}, - {0, A_11, C_11, B_11}, - {0, A_12, C_12, B_12}, - {0, A_13, C_13, B_13}, - {0, A_16, C_16, B_16}, - - {1, G_16, I_16, H_16}, - {1, G_14, I_14, H_14}, - {1, G_13, I_13, H_13}, - {1, G_12, I_12, H_12}, - {1, G_11, I_11, H_11}, - {1, G_10, I_10, H_10}, - {1, G_9, I_9, H_9}, - {1, G_8, I_8, H_8}, - {1, G_7, I_7, H_7}, - {1, G_6, I_6, H_6}, - {1, G_5, I_5, H_5}, - {1, G_4, I_4, H_4}, - {1, G_2, I_2, H_2}, - - {1, D_16, F_16, E_16}, - {1, D_15, F_15, E_15}, - {1, D_14, F_14, E_14}, - {1, D_10, F_10, E_10}, - {1, D_6, F_6, E_6}, - {1, D_5, F_5, E_5}, - {1, D_4, F_4, E_4}, - {1, D_3, F_3, E_3}, - {1, D_2, F_2, E_2}, - {1, D_1, F_1, E_1}, -}; - -#define __ NO_LED - -led_config_t g_led_config = { - { - // Key Matrix to LED Index - { 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, 40, 41, __, __, 42 }, - { 43, __, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, __, 55, __ }, - { 56, 57, 58, __, __, __, 59, __, __, __, 60, 61, 62, 63, 64, 65 }, - }, - { - // LED Index to Physical Position - {0, 0}, {15, 0}, {29, 0}, {44, 0}, {59, 0}, {73, 0}, {88, 0}, {103, 0}, {117, 0}, {132, 0}, {147, 0}, {161, 0}, {176, 0}, {198, 0}, - {4,15}, {22,15}, {37,15}, {51,15}, {66,15}, {81,15}, {95,15}, {110,15}, {125,15}, {139,15}, {154,15}, {169,15}, {183,15}, {201,15}, {224,15}, - {6,30}, {26,30}, {40,30}, {55,30}, {70,30}, {84,30}, {99,30}, {114,30}, {128,30}, {143,30}, {158,30}, {172,30}, {196,30}, {224,30}, - {9,45}, {33,45}, {48,45}, {62,45}, {77,45}, {92,45}, {106,45}, {121,45}, {136,45}, {150,45}, {165,45}, {185,45}, {209,49}, - {2,60}, {20,60}, {38,60}, {94,60}, {147,60}, {161,60}, {176,60}, {195,64}, {209,64}, {224,64} - }, - { - // RGB LED Index to Flag - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 - } -}; -#endif diff --git a/keyboards/keychron/v2_max/ansi_encoder/config.h b/keyboards/keychron/v2_max/ansi_encoder/config.h deleted file mode 100644 index 02c2bb4eae..0000000000 --- a/keyboards/keychron/v2_max/ansi_encoder/config.h +++ /dev/null @@ -1,65 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#pragma once - -#ifdef RGB_MATRIX_ENABLE -/* RGB Matrix driver configuration */ -# define DRIVER_COUNT 2 -# define RGB_MATRIX_LED_COUNT 66 - -# define SPI_SCK_PIN A5 -# define SPI_MISO_PIN A6 -# define SPI_MOSI_PIN A7 - -# define DRIVER_CS_PINS \ - { B8, B9 } -# define SNLED23751_SPI_DIVISOR 16 -# define SPI_DRIVER SPID1 - -/* Scan phase of led driver set as MSKPHASE_9CHANNEL(defined as 0x03 in snled27351.h) */ -# define SNLED27351_PHASE_CHANNEL MSKPHASE_9CHANNEL - -/* Set LED driver current */ -# define SNLED27351_CURRENT_TUNE \ - { 0x2C, 0x2C, 0x2C, 0x2C, 0x2C, 0x2C, 0x2C, 0x2C, 0x2C, 0x2C, 0x2C, 0x2C } - -/* Set to infinit, which is use in USB mode by default */ -# define RGB_MATRIX_TIMEOUT RGB_MATRIX_TIMEOUT_INFINITE - -/* Allow shutdown of led driver to save power */ -# define RGB_MATRIX_DRIVER_SHUTDOWN_ENABLE -/* Turn off backlight on low brightness to save power */ -# define RGB_MATRIX_BRIGHTNESS_TURN_OFF_VAL 32 - -/* Indications */ -# define BT_HOST_LED_MATRIX_LIST \ - { 15, 16, 17 } - -# define P2P4G_HOST_LED_MATRIX_LIST \ - { 18 } - -# define BAT_LEVEL_LED_LIST \ - { 15, 16, 17, 18, 19, 20, 21, 22, 23, 24 } - -# define CAPS_LOCK_INDEX 29 -# define LOW_BAT_IND_INDEX \ - { 59 } - -# define RGB_MATRIX_KEYPRESSES -# define RGB_MATRIX_FRAMEBUFFER_EFFECTS - -#endif diff --git a/keyboards/keychron/v2_max/ansi_encoder/info.json b/keyboards/keychron/v2_max/ansi_encoder/info.json deleted file mode 100644 index 709b6a257f..0000000000 --- a/keyboards/keychron/v2_max/ansi_encoder/info.json +++ /dev/null @@ -1,83 +0,0 @@ -{ - "usb": { - "pid": "0x0920", - "device_version": "1.0.0" - }, - "layouts": { - "LAYOUT_ansi_67": { - "layout": [ - {"matrix": [0, 0], "x": 0, "y": 0}, - {"matrix": [0, 1], "x": 1, "y": 0}, - {"matrix": [0, 2], "x": 2, "y": 0}, - {"matrix": [0, 3], "x": 3, "y": 0}, - {"matrix": [0, 4], "x": 4, "y": 0}, - {"matrix": [0, 5], "x": 5, "y": 0}, - {"matrix": [0, 6], "x": 6, "y": 0}, - {"matrix": [0, 7], "x": 7, "y": 0}, - {"matrix": [0, 8], "x": 8, "y": 0}, - {"matrix": [0, 9], "x": 9, "y": 0}, - {"matrix": [0, 10], "x": 10, "y": 0}, - {"matrix": [0, 11], "x": 11, "y": 0}, - {"matrix": [0, 12], "x": 12, "y": 0}, - {"matrix": [0, 13], "x": 13, "y": 0, "w": 2}, - {"matrix": [0, 15], "x": 15.25, "y": -0.25}, - - {"matrix": [1, 0], "x": 0, "y": 1, "w": 1.5}, - {"matrix": [1, 1], "x": 1.5, "y": 1}, - {"matrix": [1, 2], "x": 2.5, "y": 1}, - {"matrix": [1, 3], "x": 3.5, "y": 1}, - {"matrix": [1, 4], "x": 4.5, "y": 1}, - {"matrix": [1, 5], "x": 5.5, "y": 1}, - {"matrix": [1, 6], "x": 6.5, "y": 1}, - {"matrix": [1, 7], "x": 7.5, "y": 1}, - {"matrix": [1, 8], "x": 8.5, "y": 1}, - {"matrix": [1, 9], "x": 9.5, "y": 1}, - {"matrix": [1, 10], "x": 10.5, "y": 1}, - {"matrix": [1, 11], "x": 11.5, "y": 1}, - {"matrix": [1, 12], "x": 12.5, "y": 1}, - {"matrix": [1, 13], "x": 13.5, "y": 1, "w": 1.5}, - {"matrix": [1, 15], "x": 15.25, "y": 1}, - - {"matrix": [2, 0], "x": 0, "y": 2, "w": 1.75}, - {"matrix": [2, 1], "x": 1.75, "y": 2}, - {"matrix": [2, 2], "x": 2.75, "y": 2}, - {"matrix": [2, 3], "x": 3.75, "y": 2}, - {"matrix": [2, 4], "x": 4.75, "y": 2}, - {"matrix": [2, 5], "x": 5.75, "y": 2}, - {"matrix": [2, 6], "x": 6.75, "y": 2}, - {"matrix": [2, 7], "x": 7.75, "y": 2}, - {"matrix": [2, 8], "x": 8.75, "y": 2}, - {"matrix": [2, 9], "x": 9.75, "y": 2}, - {"matrix": [2, 10], "x": 10.75, "y": 2}, - {"matrix": [2, 11], "x": 11.75, "y": 2}, - {"matrix": [2, 12], "x": 12.75, "y": 2, "w": 2.25}, - {"matrix": [2, 15], "x": 15.25, "y": 2}, - - {"matrix": [3, 0], "x": 0, "y": 3, "w": 2.25}, - {"matrix": [3, 2], "x": 2.25, "y": 3}, - {"matrix": [3, 3], "x": 3.25, "y": 3}, - {"matrix": [3, 4], "x": 4.25, "y": 3}, - {"matrix": [3, 5], "x": 5.25, "y": 3}, - {"matrix": [3, 6], "x": 6.25, "y": 3}, - {"matrix": [3, 7], "x": 7.25, "y": 3}, - {"matrix": [3, 8], "x": 8.25, "y": 3}, - {"matrix": [3, 9], "x": 9.25, "y": 3}, - {"matrix": [3, 10], "x": 10.25, "y": 3}, - {"matrix": [3, 11], "x": 11.25, "y": 3}, - {"matrix": [3, 12], "x": 12.25, "y": 3, "w": 1.75}, - {"matrix": [3, 14], "x": 14.25, "y": 3.25}, - - {"matrix": [4, 0], "x": 0, "y": 4, "w": 1.25}, - {"matrix": [4, 1], "x": 1.25, "y": 4, "w": 1.25}, - {"matrix": [4, 2], "x": 2.5, "y": 4, "w": 1.25}, - {"matrix": [4, 6], "x": 3.75, "y": 4, "w": 6.25}, - {"matrix": [4, 10], "x": 10, "y": 4}, - {"matrix": [4, 11], "x": 11, "y": 4}, - {"matrix": [4, 12], "x": 12, "y": 4}, - {"matrix": [4, 13], "x": 13.25, "y": 4.25}, - {"matrix": [4, 14], "x": 14.25, "y": 4.25}, - {"matrix": [4, 15], "x": 15.25, "y": 4.25} - ] - } - } -} diff --git a/keyboards/keychron/v2_max/ansi_encoder/keymaps/default/keymap.c b/keyboards/keychron/v2_max/ansi_encoder/keymaps/default/keymap.c deleted file mode 100644 index f4efaa9738..0000000000 --- a/keyboards/keychron/v2_max/ansi_encoder/keymaps/default/keymap.c +++ /dev/null @@ -1,82 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#include QMK_KEYBOARD_H -#include "keychron_common.h" - -enum layers { - MAC_BASE, - WIN_BASE, - MAC_FN1, - WIN_FN1, - FN2, -}; - -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_ansi_67( - 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_MUTE, - 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_DEL, - 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_HOME, - 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_LCTL, KC_LOPTN, KC_LCMMD, KC_SPC, KC_RCMMD, MO(MAC_FN1),MO(FN2),KC_LEFT, KC_DOWN, KC_RGHT), - - [WIN_BASE] = LAYOUT_ansi_67( - 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_MUTE, - 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_DEL, - 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_HOME, - 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_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(WIN_FN1),MO(FN2),KC_LEFT, KC_DOWN, KC_RGHT), - - [MAC_FN1] = LAYOUT_ansi_67( - KC_GRV, KC_BRID, KC_BRIU, KC_MCTRL,KC_LNPAD,RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, RGB_TOG, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, KC_END, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, NK_TOGG, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - - [WIN_FN1] = LAYOUT_ansi_67( - KC_GRV, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, RGB_TOG, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, KC_END, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, NK_TOGG, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - - [FN2] = LAYOUT_ansi_67( - KC_TILD, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______) -}; - -#if defined(ENCODER_MAP_ENABLE) -const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][2] = { - [MAC_BASE] = { ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [WIN_BASE] = { ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [MAC_FN1] = { ENCODER_CCW_CW(RGB_VAD, RGB_VAI)}, - [WIN_FN1] = { ENCODER_CCW_CW(RGB_VAD, RGB_VAI)}, - [FN2] = { ENCODER_CCW_CW(_______, _______)} -}; -#endif // ENCODER_MAP_ENABLE - -// clang-format on -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - if (!process_record_keychron_common(keycode, record)) { - return false; - } - return true; -} diff --git a/keyboards/keychron/v2_max/ansi_encoder/keymaps/via/keymap.c b/keyboards/keychron/v2_max/ansi_encoder/keymaps/via/keymap.c deleted file mode 100644 index f4efaa9738..0000000000 --- a/keyboards/keychron/v2_max/ansi_encoder/keymaps/via/keymap.c +++ /dev/null @@ -1,82 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#include QMK_KEYBOARD_H -#include "keychron_common.h" - -enum layers { - MAC_BASE, - WIN_BASE, - MAC_FN1, - WIN_FN1, - FN2, -}; - -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_ansi_67( - 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_MUTE, - 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_DEL, - 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_HOME, - 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_LCTL, KC_LOPTN, KC_LCMMD, KC_SPC, KC_RCMMD, MO(MAC_FN1),MO(FN2),KC_LEFT, KC_DOWN, KC_RGHT), - - [WIN_BASE] = LAYOUT_ansi_67( - 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_MUTE, - 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_DEL, - 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_HOME, - 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_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(WIN_FN1),MO(FN2),KC_LEFT, KC_DOWN, KC_RGHT), - - [MAC_FN1] = LAYOUT_ansi_67( - KC_GRV, KC_BRID, KC_BRIU, KC_MCTRL,KC_LNPAD,RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, RGB_TOG, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, KC_END, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, NK_TOGG, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - - [WIN_FN1] = LAYOUT_ansi_67( - KC_GRV, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, RGB_TOG, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, KC_END, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, NK_TOGG, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - - [FN2] = LAYOUT_ansi_67( - KC_TILD, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______) -}; - -#if defined(ENCODER_MAP_ENABLE) -const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][2] = { - [MAC_BASE] = { ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [WIN_BASE] = { ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [MAC_FN1] = { ENCODER_CCW_CW(RGB_VAD, RGB_VAI)}, - [WIN_FN1] = { ENCODER_CCW_CW(RGB_VAD, RGB_VAI)}, - [FN2] = { ENCODER_CCW_CW(_______, _______)} -}; -#endif // ENCODER_MAP_ENABLE - -// clang-format on -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - if (!process_record_keychron_common(keycode, record)) { - return false; - } - return true; -} diff --git a/keyboards/keychron/v2_max/ansi_encoder/keymaps/via/rules.mk b/keyboards/keychron/v2_max/ansi_encoder/keymaps/via/rules.mk deleted file mode 100644 index 1e5b99807c..0000000000 --- a/keyboards/keychron/v2_max/ansi_encoder/keymaps/via/rules.mk +++ /dev/null @@ -1 +0,0 @@ -VIA_ENABLE = yes diff --git a/keyboards/keychron/v2_max/ansi_encoder/rules.mk b/keyboards/keychron/v2_max/ansi_encoder/rules.mk deleted file mode 100644 index 7ff128fa69..0000000000 --- a/keyboards/keychron/v2_max/ansi_encoder/rules.mk +++ /dev/null @@ -1 +0,0 @@ -# This file intentionally left blank \ No newline at end of file diff --git a/keyboards/keychron/v2_max/board.h b/keyboards/keychron/v2_max/board.h deleted file mode 100644 index 54fba748bf..0000000000 --- a/keyboards/keychron/v2_max/board.h +++ /dev/null @@ -1,226 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#pragma once - -#include_next - -// clang-format off - -/* Set GPIOA_SWDIO to INPUT and NOT FLOATING */ -#undef VAL_GPIOA_MODER -#define VAL_GPIOA_MODER (PIN_MODE_INPUT(GPIOA_BUTTON) | \ - PIN_MODE_INPUT(GPIOA_PIN1) | \ - PIN_MODE_INPUT(GPIOA_PIN2) | \ - PIN_MODE_INPUT(GPIOA_PIN3) | \ - PIN_MODE_ALTERNATE(GPIOA_CS43L22_LRCK) |\ - PIN_MODE_ALTERNATE(GPIOA_L3GD20_SCL) | \ - PIN_MODE_ALTERNATE(GPIOA_L3GD20_SD0) | \ - PIN_MODE_ALTERNATE(GPIOA_L3GD20_SDI) | \ - PIN_MODE_INPUT(GPIOA_PIN8) | \ - PIN_MODE_INPUT(GPIOA_VBUS_FS) | \ - PIN_MODE_ALTERNATE(GPIOA_OTG_FS_ID) | \ - PIN_MODE_ALTERNATE(GPIOA_OTG_FS_DM) | \ - PIN_MODE_ALTERNATE(GPIOA_OTG_FS_DP) | \ - PIN_MODE_INPUT(GPIOA_SWDIO) | \ - PIN_MODE_INPUT(GPIOA_SWCLK) | \ - PIN_MODE_INPUT(GPIOA_PIN15)) - -#undef VAL_GPIOA_PUPDR -#define VAL_GPIOA_PUPDR (PIN_PUPDR_FLOATING(GPIOA_BUTTON) | \ - PIN_PUPDR_PULLUP(GPIOA_PIN1) | \ - PIN_PUPDR_PULLUP(GPIOA_PIN2) | \ - PIN_PUPDR_PULLUP(GPIOA_PIN3) | \ - PIN_PUPDR_FLOATING(GPIOA_CS43L22_LRCK) |\ - PIN_PUPDR_FLOATING(GPIOA_L3GD20_SCL) | \ - PIN_PUPDR_PULLUP(GPIOA_L3GD20_SD0) | \ - PIN_PUPDR_PULLUP(GPIOA_L3GD20_SDI) | \ - PIN_PUPDR_PULLUP(GPIOA_PIN8) | \ - PIN_PUPDR_FLOATING(GPIOA_VBUS_FS) | \ - PIN_PUPDR_FLOATING(GPIOA_OTG_FS_ID) | \ - PIN_PUPDR_FLOATING(GPIOA_OTG_FS_DM) | \ - PIN_PUPDR_FLOATING(GPIOA_OTG_FS_DP) | \ - PIN_PUPDR_PULLUP(GPIOA_SWDIO) | \ - PIN_PUPDR_PULLUP(GPIOA_SWCLK) | \ - PIN_PUPDR_PULLUP(GPIOA_PIN15)) - -#undef VAL_GPIOB_MODER -#define VAL_GPIOB_MODER (PIN_MODE_INPUT(GPIOB_PIN0) | \ - PIN_MODE_INPUT(GPIOB_PIN1) | \ - PIN_MODE_INPUT(GPIOB_PIN2) | \ - PIN_MODE_INPUT(GPIOB_SWO) | \ - PIN_MODE_INPUT(GPIOB_PIN4) | \ - PIN_MODE_INPUT(GPIOB_PIN5) | \ - PIN_MODE_INPUT(GPIOB_LSM303DLHC_SCL) | \ - PIN_MODE_INPUT(GPIOB_PIN7) | \ - PIN_MODE_INPUT(GPIOB_PIN8) | \ - PIN_MODE_INPUT(GPIOB_LSM303DLHC_SDA) | \ - PIN_MODE_INPUT(GPIOB_MP45DT02_CLK_IN) |\ - PIN_MODE_INPUT(GPIOB_PIN11) | \ - PIN_MODE_INPUT(GPIOB_PIN12) | \ - PIN_MODE_INPUT(GPIOB_PIN13) | \ - PIN_MODE_INPUT(GPIOB_PIN14) | \ - PIN_MODE_INPUT(GPIOB_PIN15)) - -#undef VAL_GPIOB_PUPDR -#define VAL_GPIOB_PUPDR (PIN_PUPDR_PULLDOWN(GPIOB_PIN0) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN1) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN2) | \ - PIN_PUPDR_PULLDOWN(GPIOB_SWO) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN4) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN5) | \ - PIN_PUPDR_PULLDOWN(GPIOB_LSM303DLHC_SCL) |\ - PIN_PUPDR_PULLDOWN(GPIOB_PIN7) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN8) | \ - PIN_PUPDR_PULLDOWN(GPIOB_LSM303DLHC_SDA) |\ - PIN_PUPDR_PULLDOWN(GPIOB_MP45DT02_CLK_IN) |\ - PIN_PUPDR_PULLDOWN(GPIOB_PIN11) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN12) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN13) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN14) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN15)) - -#undef VAL_GPIOB_AFRL -#define VAL_GPIOB_AFRL (PIN_AFIO_AF(GPIOB_PIN0, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN1, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN2, 0U) | \ - PIN_AFIO_AF(GPIOB_SWO, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN4, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN5, 0U) | \ - PIN_AFIO_AF(GPIOB_LSM303DLHC_SCL, 0) | \ - PIN_AFIO_AF(GPIOB_PIN7, 0U)) - -#undef VAL_GPIOB_AFRH -#define VAL_GPIOB_AFRH (PIN_AFIO_AF(GPIOB_PIN8, 0U) | \ - PIN_AFIO_AF(GPIOB_LSM303DLHC_SDA, 0) | \ - PIN_AFIO_AF(GPIOB_MP45DT02_CLK_IN, 0U) |\ - PIN_AFIO_AF(GPIOB_PIN11, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN12, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN13, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN14, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN15, 0U)) - -/* C5 Need to be pulldown */ -#undef VAL_GPIOC_MODER -#define VAL_GPIOC_MODER (PIN_MODE_INPUT(GPIOC_OTG_FS_POWER_ON) |\ - PIN_MODE_INPUT(GPIOC_PIN1) | \ - PIN_MODE_INPUT(GPIOC_PIN2) | \ - PIN_MODE_INPUT(GPIOC_CS43L22_AIN4x) | \ - PIN_MODE_INPUT(GPIOC_PIN4) | \ - PIN_MODE_INPUT(GPIOC_PIN5) | \ - PIN_MODE_INPUT(GPIOC_PIN6) | \ - PIN_MODE_INPUT(GPIOC_CS43L22_MCLK) | \ - PIN_MODE_INPUT(GPIOC_PIN8) | \ - PIN_MODE_INPUT(GPIOC_PIN9) | \ - PIN_MODE_INPUT(GPIOC_CS43L22_SCLK) | \ - PIN_MODE_INPUT(GPIOC_PIN11) | \ - PIN_MODE_INPUT(GPIOC_CS43L22_SDIN) | \ - PIN_MODE_INPUT(GPIOC_PIN13) | \ - PIN_MODE_INPUT(GPIOC_OSC32_IN) | \ - PIN_MODE_INPUT(GPIOC_OSC32_OUT)) - -#undef VAL_GPIOC_PUPDR -#define VAL_GPIOC_PUPDR (PIN_PUPDR_PULLUP(GPIOC_OTG_FS_POWER_ON) |\ - PIN_PUPDR_PULLUP(GPIOC_PIN1) | \ - PIN_PUPDR_PULLUP(GPIOC_PIN2) | \ - PIN_PUPDR_PULLUP(GPIOC_CS43L22_AIN4x) |\ - PIN_PUPDR_PULLUP(GPIOC_PIN4) | \ - PIN_PUPDR_PULLDOWN(GPIOC_PIN5) | \ - PIN_PUPDR_PULLUP(GPIOC_PIN6) | \ - PIN_PUPDR_PULLUP(GPIOC_CS43L22_MCLK) | \ - PIN_PUPDR_PULLUP(GPIOC_PIN8) | \ - PIN_PUPDR_PULLUP(GPIOC_PIN9) | \ - PIN_PUPDR_PULLUP(GPIOC_CS43L22_SCLK) | \ - PIN_PUPDR_PULLUP(GPIOC_PIN11) | \ - PIN_PUPDR_PULLUP(GPIOC_CS43L22_SDIN) | \ - PIN_PUPDR_PULLUP(GPIOC_PIN13) | \ - PIN_PUPDR_PULLUP(GPIOC_OSC32_IN) | \ - PIN_PUPDR_PULLUP(GPIOC_OSC32_OUT)) - -/* Set all GPIOD pins to INPUT & PULLUP to avoid FLOATING */ -#undef VAL_GPIOD_MODER -#define VAL_GPIOD_MODER (PIN_MODE_INPUT(GPIOD_PIN0) | \ - PIN_MODE_INPUT(GPIOD_PIN1) | \ - PIN_MODE_INPUT(GPIOD_PIN2) | \ - PIN_MODE_INPUT(GPIOD_PIN3) | \ - PIN_MODE_INPUT(GPIOD_CS43L22_RESET) | \ - PIN_MODE_INPUT(GPIOD_OverCurrent) | \ - PIN_MODE_INPUT(GPIOD_PIN6) | \ - PIN_MODE_INPUT(GPIOD_PIN7) | \ - PIN_MODE_INPUT(GPIOD_PIN8) | \ - PIN_MODE_INPUT(GPIOD_PIN9) | \ - PIN_MODE_INPUT(GPIOD_PIN10) | \ - PIN_MODE_INPUT(GPIOD_PIN11) | \ - PIN_MODE_INPUT(GPIOD_LED4) | \ - PIN_MODE_INPUT(GPIOD_LED3) | \ - PIN_MODE_INPUT(GPIOD_LED5) | \ - PIN_MODE_INPUT(GPIOD_LED6)) - -#undef VAL_GPIOD_PUPDR -#define VAL_GPIOD_PUPDR (PIN_PUPDR_PULLUP(GPIOD_PIN0) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN1) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN2) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN3) | \ - PIN_PUPDR_PULLUP(GPIOD_CS43L22_RESET) |\ - PIN_PUPDR_PULLUP(GPIOD_OverCurrent) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN6) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN7) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN8) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN9) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN10) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN11) | \ - PIN_PUPDR_PULLUP(GPIOD_LED4) | \ - PIN_PUPDR_PULLUP(GPIOD_LED3) | \ - PIN_PUPDR_PULLUP(GPIOD_LED5) | \ - PIN_PUPDR_PULLUP(GPIOD_LED6)) - -/* Set all GPIOE pins to INPUT & PULLUP to avoid FLOATING */ -#undef VAL_GPIOE_MODER -#define VAL_GPIOE_MODER (PIN_MODE_INPUT(GPIOE_L3GD20_INT1) | \ - PIN_MODE_INPUT(GPIOE_L3GD20_INT2) | \ - PIN_MODE_INPUT(GPIOE_LSM303DLHC_DRDY) |\ - PIN_MODE_INPUT(GPIOE_L3GD20_CS) | \ - PIN_MODE_INPUT(GPIOE_LSM303DLHC_INT1) |\ - PIN_MODE_INPUT(GPIOE_LSM303DLHC_INT2) |\ - PIN_MODE_INPUT(GPIOE_PIN6) | \ - PIN_MODE_INPUT(GPIOE_PIN7) | \ - PIN_MODE_INPUT(GPIOE_PIN8) | \ - PIN_MODE_INPUT(GPIOE_PIN9) | \ - PIN_MODE_INPUT(GPIOE_PIN10) | \ - PIN_MODE_INPUT(GPIOE_PIN11) | \ - PIN_MODE_INPUT(GPIOE_PIN12) | \ - PIN_MODE_INPUT(GPIOE_PIN13) | \ - PIN_MODE_INPUT(GPIOE_PIN14) | \ - PIN_MODE_INPUT(GPIOE_PIN15)) - -#undef VAL_GPIOE_PUPDR -#define VAL_GPIOE_PUPDR (PIN_PUPDR_PULLUP(GPIOE_L3GD20_INT1) | \ - PIN_PUPDR_PULLUP(GPIOE_L3GD20_INT2) | \ - PIN_PUPDR_PULLUP(GPIOE_LSM303DLHC_DRDY) |\ - PIN_PUPDR_PULLUP(GPIOE_L3GD20_CS) | \ - PIN_PUPDR_PULLUP(GPIOE_LSM303DLHC_INT1) |\ - PIN_PUPDR_PULLUP(GPIOE_LSM303DLHC_INT2) |\ - PIN_PUPDR_PULLUP(GPIOE_PIN6) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN7) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN8) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN9) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN10) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN11) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN12) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN13) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN14) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN15)) - diff --git a/keyboards/keychron/v2_max/config.h b/keyboards/keychron/v2_max/config.h deleted file mode 100644 index 6bfc24e7c5..0000000000 --- a/keyboards/keychron/v2_max/config.h +++ /dev/null @@ -1,75 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#pragma once - -/* Encoder Configuration */ -#define ENCODER_DEFAULT_POS 0x3 -#define ENCODER_MAP_KEY_DELAY 2 - -#ifdef LK_WIRELESS_ENABLE -/* Hardware configuration */ -# define P2P4_MODE_SELECT_PIN A10 -# define BT_MODE_SELECT_PIN A9 - -# define LKBT51_RESET_PIN C4 -# define LKBT51_INT_INPUT_PIN B1 -# define BLUETOOTH_INT_OUTPUT_PIN A4 - -# define USB_POWER_SENSE_PIN B0 -# define USB_POWER_CONNECTED_LEVEL 0 - -# define BAT_CHARGING_PIN B13 -# define BAT_CHARGING_LEVEL 0 - -# define BAT_LOW_LED_PIN B12 -# define BAT_LOW_LED_PIN_ON_STATE 1 - -# define BT_HOST_DEVICES_COUNT 3 - -# if defined(RGB_MATRIX_ENABLE) - -# define LED_DRIVER_SHUTDOWN_PIN B7 - -/* 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 - -/* Reinit LED driver on tranport changed */ -# define REINIT_LED_DRIVER 1 - -# endif - -/* Keep USB connection in blueooth mode */ -# define KEEP_USB_CONNECTION_IN_WIRELESS_MODE - -/* Enable bluetooth NKRO */ -# define WIRELESS_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 - -/* Factory test keys */ -#define FN_KEY_1 MO(4) -#define P2P4G_CELAR_MASK 0 - -#define MATRIX_IO_DELAY 10 diff --git a/keyboards/keychron/v2_max/firmware/keychron_v2_max_ansi_encoder_via.bin b/keyboards/keychron/v2_max/firmware/keychron_v2_max_ansi_encoder_via.bin deleted file mode 100644 index 7a47f94a5d..0000000000 Binary files a/keyboards/keychron/v2_max/firmware/keychron_v2_max_ansi_encoder_via.bin and /dev/null differ diff --git a/keyboards/keychron/v2_max/firmware/keychron_v2_max_iso_encoder_via.bin b/keyboards/keychron/v2_max/firmware/keychron_v2_max_iso_encoder_via.bin deleted file mode 100644 index 164944e64a..0000000000 Binary files a/keyboards/keychron/v2_max/firmware/keychron_v2_max_iso_encoder_via.bin and /dev/null differ diff --git a/keyboards/keychron/v2_max/halconf.h b/keyboards/keychron/v2_max/halconf.h deleted file mode 100644 index 37bcc7c47b..0000000000 --- a/keyboards/keychron/v2_max/halconf.h +++ /dev/null @@ -1,31 +0,0 @@ -/* Copyright 2024 @ 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 - -#define _CHIBIOS_HAL_CONF_VER_8_0_ - -#define HAL_USE_SPI TRUE - -#ifdef LK_WIRELESS_ENABLE -# define HAL_USE_RTC TRUE -#endif - -#if defined(LK_WIRELESS_ENABLE) || defined(ENCODER_ENABLE) -# define PAL_USE_CALLBACKS TRUE -#endif - -#include_next diff --git a/keyboards/keychron/v2_max/info.json b/keyboards/keychron/v2_max/info.json deleted file mode 100644 index 43873f5ccd..0000000000 --- a/keyboards/keychron/v2_max/info.json +++ /dev/null @@ -1,80 +0,0 @@ -{ - "keyboard_name": "Keychron V2 Max", - "manufacturer": "Keychron", - "url": "https://github.com/Keychron", - "maintainer": "lokher", - "processor": "STM32F401", - "bootloader": "stm32-dfu", - "usb": { - "vid": "0x3434" - }, - "features": { - "bootmagic": true, - "extrakey" : true, - "mousekey" : true, - "dip_switch" : true, - "encoder": true, - "encoder_map": true, - "nkro" : true, - "rgb_matrix": true, - "raw" : true, - "send_string" : true - }, - "matrix_pins": { - "cols": ["C6", "C7", "C8", "A14", "A15", "C10", "C11", "C13", "C14", "C15", "C0", "C1", "C2", "C3", "A0", "A1"], - "rows": ["C12", "D2", "B3", "B4", "B5"] - }, - "diode_direction": "ROW2COL", - "encoder": { - "rotary": [ - { - "pin_a": "B15", - "pin_b": "B14" - } - ] - }, - "dip_switch" :{ - "pins": ["A8"] - }, - "rgb_matrix": { - "driver": "snled27351_spi", - "sleep": true, - "animations": { - "band_spiral_val": true, - "breathing": true, - "cycle_all": true, - "cycle_left_right": true, - "cycle_out_in": true, - "cycle_out_in_dual": true, - "cycle_pinwheel": true, - "cycle_spiral": true, - "cycle_up_down": true, - "digital_rain": true, - "dual_beacon": true, - "jellybean_raindrops": true, - "pixel_rain": true, - "rainbow_beacon": true, - "rainbow_moving_chevron": true, - "solid_reactive_multinexus": true, - "solid_reactive_multiwide": true, - "solid_reactive_simple": true, - "solid_splash": true, - "splash": true, - "typing_heatmap": true - } - }, - "eeprom": { - "wear_leveling": { - "driver": "embedded_flash", - "logical_size": 2048, - "backing_size": 4096 - } - }, - "dynamic_keymap": { - "layer_count": 5 - }, - "build": { - "debounce_type": "sym_eager_pk" - }, - "debounce": 20 -} diff --git a/keyboards/keychron/v2_max/iso_encoder/config.h b/keyboards/keychron/v2_max/iso_encoder/config.h deleted file mode 100644 index 58a4edbda7..0000000000 --- a/keyboards/keychron/v2_max/iso_encoder/config.h +++ /dev/null @@ -1,65 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#pragma once - -#ifdef RGB_MATRIX_ENABLE -/* RGB Matrix driver configuration */ -# define DRIVER_COUNT 2 -# define RGB_MATRIX_LED_COUNT 67 - -# define SPI_SCK_PIN A5 -# define SPI_MISO_PIN A6 -# define SPI_MOSI_PIN A7 - -# define DRIVER_CS_PINS \ - { B8, B9 } -# define SNLED23751_SPI_DIVISOR 16 -# define SPI_DRIVER SPID1 - -/* Scan phase of led driver set as MSKPHASE_9CHANNEL(defined as 0x03 in snled27351.h) */ -# define SNLED27351_PHASE_CHANNEL MSKPHASE_9CHANNEL - -/* Set LED driver current */ -# define SNLED27351_CURRENT_TUNE \ - { 0x2C, 0x2C, 0x2C, 0x2C, 0x2C, 0x2C, 0x2C, 0x2C, 0x2C, 0x2C, 0x2C, 0x2C } - -/* Set to infinit, which is use in USB mode by default */ -# define RGB_MATRIX_TIMEOUT RGB_MATRIX_TIMEOUT_INFINITE - -/* Allow shutdown of led driver to save power */ -# define RGB_MATRIX_DRIVER_SHUTDOWN_ENABLE -/* Turn off backlight on low brightness to save power */ -# define RGB_MATRIX_BRIGHTNESS_TURN_OFF_VAL 32 - -/* Indications */ -# define BT_HOST_LED_MATRIX_LIST \ - { 15, 16, 17 } - -# define P2P4G_HOST_LED_MATRIX_LIST \ - { 18 } - -# define BAT_LEVEL_LED_LIST \ - { 15, 16, 17, 18, 19, 20, 21, 22, 23, 24 } - -# define CAPS_LOCK_INDEX 29 -# define LOW_BAT_IND_INDEX \ - { 60 } - -# define RGB_MATRIX_KEYPRESSES -# define RGB_MATRIX_FRAMEBUFFER_EFFECTS - -#endif diff --git a/keyboards/keychron/v2_max/iso_encoder/info.json b/keyboards/keychron/v2_max/iso_encoder/info.json deleted file mode 100644 index 5ad4ae95ef..0000000000 --- a/keyboards/keychron/v2_max/iso_encoder/info.json +++ /dev/null @@ -1,84 +0,0 @@ -{ - "usb": { - "pid": "0x0921", - "device_version": "1.0.0" - }, - "layouts": { - "LAYOUT_iso_68": { - "layout": [ - {"matrix": [0, 0], "x": 0, "y": 0}, - {"matrix": [0, 1], "x": 1, "y": 0}, - {"matrix": [0, 2], "x": 2, "y": 0}, - {"matrix": [0, 3], "x": 3, "y": 0}, - {"matrix": [0, 4], "x": 4, "y": 0}, - {"matrix": [0, 5], "x": 5, "y": 0}, - {"matrix": [0, 6], "x": 6, "y": 0}, - {"matrix": [0, 7], "x": 7, "y": 0}, - {"matrix": [0, 8], "x": 8, "y": 0}, - {"matrix": [0, 9], "x": 9, "y": 0}, - {"matrix": [0, 10], "x": 10, "y": 0}, - {"matrix": [0, 11], "x": 11, "y": 0}, - {"matrix": [0, 12], "x": 12, "y": 0}, - {"matrix": [0, 13], "x": 13, "y": 0, "w": 2}, - {"matrix": [0, 15], "x": 15.25, "y": -0.25}, - - {"matrix": [1, 0], "x": 0, "y": 1, "w": 1.5}, - {"matrix": [1, 1], "x": 1.5, "y": 1}, - {"matrix": [1, 2], "x": 2.5, "y": 1}, - {"matrix": [1, 3], "x": 3.5, "y": 1}, - {"matrix": [1, 4], "x": 4.5, "y": 1}, - {"matrix": [1, 5], "x": 5.5, "y": 1}, - {"matrix": [1, 6], "x": 6.5, "y": 1}, - {"matrix": [1, 7], "x": 7.5, "y": 1}, - {"matrix": [1, 8], "x": 8.5, "y": 1}, - {"matrix": [1, 9], "x": 9.5, "y": 1}, - {"matrix": [1, 10], "x": 10.5, "y": 1}, - {"matrix": [1, 11], "x": 11.5, "y": 1}, - {"matrix": [1, 12], "x": 12.5, "y": 1}, - {"matrix": [1, 15], "x": 15.25, "y": 1}, - - {"matrix": [2, 0], "x": 0, "y": 2, "w": 1.75}, - {"matrix": [2, 1], "x": 1.75, "y": 2}, - {"matrix": [2, 2], "x": 2.75, "y": 2}, - {"matrix": [2, 3], "x": 3.75, "y": 2}, - {"matrix": [2, 4], "x": 4.75, "y": 2}, - {"matrix": [2, 5], "x": 5.75, "y": 2}, - {"matrix": [2, 6], "x": 6.75, "y": 2}, - {"matrix": [2, 7], "x": 7.75, "y": 2}, - {"matrix": [2, 8], "x": 8.75, "y": 2}, - {"matrix": [2, 9], "x": 9.75, "y": 2}, - {"matrix": [2, 10], "x": 10.75, "y": 2}, - {"matrix": [2, 11], "x": 11.75, "y": 2}, - {"matrix": [2, 12], "x": 12.75, "y": 2}, - {"matrix": [1, 13], "x": 13.25, "y": 1.25, "w": 1.25, "h": 2}, - {"matrix": [2, 15], "x": 15.25, "y": 2}, - - {"matrix": [3, 0], "x": 0, "y": 3, "w": 1.25}, - {"matrix": [3, 1], "x": 1.25, "y": 3}, - {"matrix": [3, 2], "x": 2.25, "y": 3}, - {"matrix": [3, 3], "x": 3.25, "y": 3}, - {"matrix": [3, 4], "x": 4.25, "y": 3}, - {"matrix": [3, 5], "x": 5.25, "y": 3}, - {"matrix": [3, 6], "x": 6.25, "y": 3}, - {"matrix": [3, 7], "x": 7.25, "y": 3}, - {"matrix": [3, 8], "x": 8.25, "y": 3}, - {"matrix": [3, 9], "x": 9.25, "y": 3}, - {"matrix": [3, 10], "x": 10.25, "y": 3}, - {"matrix": [3, 11], "x": 11.25, "y": 3}, - {"matrix": [3, 12], "x": 12.25, "y": 3, "w": 1.75}, - {"matrix": [3, 14], "x": 14.25, "y": 3.25}, - - {"matrix": [4, 0], "x": 0, "y": 4, "w": 1.25}, - {"matrix": [4, 1], "x": 1.25, "y": 4, "w": 1.25}, - {"matrix": [4, 2], "x": 2.5, "y": 4, "w": 1.25}, - {"matrix": [4, 6], "x": 3.75, "y": 4, "w": 6.25}, - {"matrix": [4, 10], "x": 10, "y": 4}, - {"matrix": [4, 11], "x": 11, "y": 4}, - {"matrix": [4, 12], "x": 12, "y": 4}, - {"matrix": [4, 13], "x": 13.25, "y": 4.25}, - {"matrix": [4, 14], "x": 14.25, "y": 4.25}, - {"matrix": [4, 15], "x": 15.25, "y": 4.25} - ] - } - } -} diff --git a/keyboards/keychron/v2_max/iso_encoder/iso_encoder.c b/keyboards/keychron/v2_max/iso_encoder/iso_encoder.c deleted file mode 100644 index d5f5753c17..0000000000 --- a/keyboards/keychron/v2_max/iso_encoder/iso_encoder.c +++ /dev/null @@ -1,126 +0,0 @@ -/* Copyright 2024 @ 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/>. - */ - -#include "quantum.h" - -// clang-format off - -#ifdef RGB_MATRIX_ENABLE -const snled27351_led_t g_snled27351_leds[RGB_MATRIX_LED_COUNT] = { -/* Refer to SNLED27351 manual for these locations - * driver - * | R location - * | | G location - * | | | B location - * | | | | */ - {0, G_1, I_1, H_1}, - {0, G_2, I_2, H_2}, - {0, G_3, I_3, H_3}, - {0, G_4, I_4, H_4}, - {0, G_5, I_5, H_5}, - {0, G_6, I_6, H_6}, - {0, G_7, I_7, H_7}, - {0, G_8, I_8, H_8}, - {0, G_9, I_9, H_9}, - {0, G_10, I_10, H_10}, - {0, G_11, I_11, H_11}, - {0, G_12, I_12, H_12}, - {0, G_13, I_13, H_13}, - {0, G_14, I_14, H_14}, - {0, D_1, F_1, E_1}, - {0, D_2, F_2, E_2}, - {0, D_3, F_3, E_3}, - {0, D_4, F_4, E_4}, - {0, D_5, F_5, E_5}, - {0, D_6, F_6, E_6}, - {0, D_7, F_7, E_7}, - {0, D_8, F_8, E_8}, - {0, D_9, F_9, E_9}, - {0, D_10, F_10, E_10}, - {0, D_11, F_11, E_11}, - {0, D_12, F_12, E_12}, - {0, D_13, F_13, E_13}, - {0, D_14, F_14, E_14}, - {0, D_16, F_16, E_16}, - {0, A_1, C_1, B_1}, - {0, A_2, C_2, B_2}, - {0, A_3, C_3, B_3}, - {0, A_4, C_4, B_4}, - {0, A_5, C_5, B_5}, - {0, A_6, C_6, B_6}, - {0, A_7, C_7, B_7}, - {0, A_8, C_8, B_8}, - {0, A_9, C_9, B_9}, - {0, A_10, C_10, B_10}, - {0, A_11, C_11, B_11}, - {0, A_12, C_12, B_12}, - {0, A_13, C_13, B_13}, - {0, A_16, C_16, B_16}, - {1, G_16, I_16, H_16}, - {1, G_15, I_15, H_15}, - {1, G_14, I_14, H_14}, - {1, G_13, I_13, H_13}, - {1, G_12, I_12, H_12}, - {1, G_11, I_11, H_11}, - {1, G_10, I_10, H_10}, - {1, G_9, I_9, H_9}, - {1, G_8, I_8, H_8}, - {1, G_7, I_7, H_7}, - {1, G_6, I_6, H_6}, - {1, G_5, I_5, H_5}, - {1, G_4, I_4, H_4}, - {1, G_2, I_2, H_2}, - {1, D_16, F_16, E_16}, - {1, D_15, F_15, E_15}, - {1, D_14, F_14, E_14}, - {1, D_10, F_10, E_10}, - {1, D_6, F_6, E_6}, - {1, D_5, F_5, E_5}, - {1, D_4, F_4, E_4}, - {1, D_3, F_3, E_3}, - {1, D_2, F_2, E_2}, - {1, D_1, F_1, E_1}, -}; - -#define __ NO_LED - -led_config_t g_led_config = { - { - // Key Matrix to LED Index - { 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, 40, 41, __, __, 42 }, - { 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, __, 56, __ }, - { 57, 58, 59, __, __, __, 60, __, __, __, 61, 62, 63, 64, 65, 66 }, - }, - { - // LED Index to Physical Position - {0, 0}, {15, 0}, {29, 0}, {44, 0}, {59, 0}, {73, 0}, {88, 0}, {103, 0}, {117, 0}, {132, 0}, {147, 0}, {161, 0}, {176, 0}, {198, 0}, - {4,15}, {22,15}, {37,15}, {51,15}, {66,15}, {81,15}, {95,15}, {110,15}, {125,15}, {139,15}, {154,15}, {169,15}, {183,15}, {203,22}, {224,15}, - {6,30}, {26,30}, {40,30}, {55,30}, {70,30}, {84,30}, {99,30}, {114,30}, {128,30}, {143,30}, {158,30}, {172,30}, {187,30}, {224,30}, - {2,45}, {18,45}, {33,45}, {48,45}, {62,45}, {77,45}, {92,45}, {106,45}, {121,45}, {136,45}, {150,45}, {165,45}, {185,45}, {209,49}, - {2,60}, {20,60}, {38,60}, {94,60}, {147,60}, {161,60}, {176,60}, {195,64}, {209,64}, {224,64} - }, - { - // RGB LED Index to Flag - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 - } -}; -#endif diff --git a/keyboards/keychron/v2_max/iso_encoder/keymaps/default/keymap.c b/keyboards/keychron/v2_max/iso_encoder/keymaps/default/keymap.c deleted file mode 100644 index f944bdc457..0000000000 --- a/keyboards/keychron/v2_max/iso_encoder/keymaps/default/keymap.c +++ /dev/null @@ -1,82 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#include QMK_KEYBOARD_H -#include "keychron_common.h" - -enum layers { - MAC_BASE, - WIN_BASE, - MAC_FN1, - WIN_FN1, - FN2, -}; - -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_iso_68( - 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_MUTE, - 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_DEL, - 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_NUHS, KC_ENT, KC_HOME, - KC_LSFT, KC_NUBS, 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_LCTL, KC_LOPTN, KC_LCMMD, KC_SPC, KC_RCMMD,MO(MAC_FN1),MO(FN2), KC_LEFT, KC_DOWN, KC_RGHT), - - [WIN_BASE] = LAYOUT_iso_68( - 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_MUTE, - 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_DEL, - 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_NUHS, KC_ENT, KC_HOME, - KC_LSFT, KC_NUBS, 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_LCTL, KC_LWIN, KC_LALT, KC_SPC, KC_RALT, MO(WIN_FN1),MO(FN2), KC_LEFT, KC_DOWN, KC_RGHT), - - [MAC_FN1] = LAYOUT_iso_68( - KC_GRV, KC_BRID, KC_BRIU, KC_MCTRL,KC_LNPAD,RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, RGB_TOG, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, KC_END, - _______, _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, NK_TOGG, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - - [WIN_FN1] = LAYOUT_iso_68( - KC_GRV, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, RGB_TOG, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, KC_END, - _______, _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, NK_TOGG, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - - [FN2] = LAYOUT_iso_68( - KC_TILD, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, BAT_LVL, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______) -}; - -#if defined(ENCODER_MAP_ENABLE) -const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][2] = { - [MAC_BASE] = { ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [WIN_BASE] = { ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [MAC_FN1] = { ENCODER_CCW_CW(RGB_VAD, RGB_VAI)}, - [WIN_FN1] = { ENCODER_CCW_CW(RGB_VAD, RGB_VAI)}, - [FN2] = { ENCODER_CCW_CW(_______, _______)} -}; -#endif // ENCODER_MAP_ENABLE - -// clang-format on -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - if (!process_record_keychron_common(keycode, record)) { - return false; - } - return true; -} diff --git a/keyboards/keychron/v2_max/iso_encoder/keymaps/via/keymap.c b/keyboards/keychron/v2_max/iso_encoder/keymaps/via/keymap.c deleted file mode 100644 index f944bdc457..0000000000 --- a/keyboards/keychron/v2_max/iso_encoder/keymaps/via/keymap.c +++ /dev/null @@ -1,82 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#include QMK_KEYBOARD_H -#include "keychron_common.h" - -enum layers { - MAC_BASE, - WIN_BASE, - MAC_FN1, - WIN_FN1, - FN2, -}; - -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_iso_68( - 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_MUTE, - 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_DEL, - 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_NUHS, KC_ENT, KC_HOME, - KC_LSFT, KC_NUBS, 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_LCTL, KC_LOPTN, KC_LCMMD, KC_SPC, KC_RCMMD,MO(MAC_FN1),MO(FN2), KC_LEFT, KC_DOWN, KC_RGHT), - - [WIN_BASE] = LAYOUT_iso_68( - 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_MUTE, - 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_DEL, - 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_NUHS, KC_ENT, KC_HOME, - KC_LSFT, KC_NUBS, 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_LCTL, KC_LWIN, KC_LALT, KC_SPC, KC_RALT, MO(WIN_FN1),MO(FN2), KC_LEFT, KC_DOWN, KC_RGHT), - - [MAC_FN1] = LAYOUT_iso_68( - KC_GRV, KC_BRID, KC_BRIU, KC_MCTRL,KC_LNPAD,RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, RGB_TOG, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, KC_END, - _______, _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, NK_TOGG, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - - [WIN_FN1] = LAYOUT_iso_68( - KC_GRV, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, RGB_TOG, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, KC_END, - _______, _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, NK_TOGG, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - - [FN2] = LAYOUT_iso_68( - KC_TILD, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, BAT_LVL, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______) -}; - -#if defined(ENCODER_MAP_ENABLE) -const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][2] = { - [MAC_BASE] = { ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [WIN_BASE] = { ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [MAC_FN1] = { ENCODER_CCW_CW(RGB_VAD, RGB_VAI)}, - [WIN_FN1] = { ENCODER_CCW_CW(RGB_VAD, RGB_VAI)}, - [FN2] = { ENCODER_CCW_CW(_______, _______)} -}; -#endif // ENCODER_MAP_ENABLE - -// clang-format on -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - if (!process_record_keychron_common(keycode, record)) { - return false; - } - return true; -} diff --git a/keyboards/keychron/v2_max/iso_encoder/keymaps/via/rules.mk b/keyboards/keychron/v2_max/iso_encoder/keymaps/via/rules.mk deleted file mode 100644 index 1e5b99807c..0000000000 --- a/keyboards/keychron/v2_max/iso_encoder/keymaps/via/rules.mk +++ /dev/null @@ -1 +0,0 @@ -VIA_ENABLE = yes diff --git a/keyboards/keychron/v2_max/iso_encoder/rules.mk b/keyboards/keychron/v2_max/iso_encoder/rules.mk deleted file mode 100644 index 7ff128fa69..0000000000 --- a/keyboards/keychron/v2_max/iso_encoder/rules.mk +++ /dev/null @@ -1 +0,0 @@ -# This file intentionally left blank \ No newline at end of file diff --git a/keyboards/keychron/v2_max/mcuconf.h b/keyboards/keychron/v2_max/mcuconf.h deleted file mode 100644 index 89294ee64b..0000000000 --- a/keyboards/keychron/v2_max/mcuconf.h +++ /dev/null @@ -1,37 +0,0 @@ -/* Copyright 2024 @ 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 - -#include_next - -#undef STM32_HSECLK -#define STM32_HSECLK 16000000 - -#undef STM32_PLLM_VALUE -#define STM32_PLLM_VALUE 8 - -#undef STM32_PLLN_VALUE -#define STM32_PLLN_VALUE 96 - -#undef STM32_PLLP_VALUE -#define STM32_PLLP_VALUE 4 - -#undef STM32_PLLQ_VALUE -#define STM32_PLLQ_VALUE 4 - -#undef STM32_SPI_USE_SPI1 -#define STM32_SPI_USE_SPI1 TRUE diff --git a/keyboards/keychron/v2_max/readme.md b/keyboards/keychron/v2_max/readme.md deleted file mode 100644 index ce06522777..0000000000 --- a/keyboards/keychron/v2_max/readme.md +++ /dev/null @@ -1,23 +0,0 @@ -# Keychron V2 Max - -![Keychron V2 Max](https://cdn.shopify.com/s/files/1/0059/0630/1017/files/Keychron-V2-Max-wireless-mechanical-keyboard-1.jpg?v=1705993855) - -A customizable 65% keyboard. - -* Keyboard Maintainer: [Keychron](https://github.com/keychron) -* Hardware Supported: Keychron V2 Max -* Hardware Availability: [Keychron V2 Max QMK/VIA Wireless Custom Mechanical Keyboard](https://www.keychron.com/products/keychron-v2-max-qmk-via-wireless-custom-mechanical-keyboard) - -Make example for this keyboard (after setting up your build environment): - - make keychron/v2_max/ansi_encoder:default - make keychron/v2_max/iso_encoder:default - -Flashing example for this keyboard: - - make keychron/v2_max/ansi_encoder:default:flash - make keychron/v2_max/iso_encoder:default:flash - -**Reset Key**: Toggle mode switch to "Cable", hold down the *Esc* key or reset button underneath space bar while connecting the USB cable, - -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). diff --git a/keyboards/keychron/v2_max/rules.mk b/keyboards/keychron/v2_max/rules.mk deleted file mode 100644 index 4eaf6820bc..0000000000 --- a/keyboards/keychron/v2_max/rules.mk +++ /dev/null @@ -1,4 +0,0 @@ -include keyboards/keychron/common/wireless/wireless.mk -include keyboards/keychron/common/keychron_common.mk - -VPATH += $(TOP_DIR)/keyboards/keychron diff --git a/keyboards/keychron/v2_max/v2_max.c b/keyboards/keychron/v2_max/v2_max.c deleted file mode 100644 index 0f03394494..0000000000 --- a/keyboards/keychron/v2_max/v2_max.c +++ /dev/null @@ -1,84 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#include "quantum.h" -#include "keychron_task.h" -#ifdef FACTORY_TEST_ENABLE -# include "factory_test.h" -# include "keychron_common.h" -#endif -#ifdef LK_WIRELESS_ENABLE -# include "lkbt51.h" -# include "wireless.h" -# include "keychron_wireless_common.h" -# include "battery.h" -#endif - -#define POWER_ON_LED_DURATION 3000 -static uint32_t power_on_indicator_timer; - -#ifdef DIP_SWITCH_ENABLE -bool dip_switch_update_kb(uint8_t index, bool active) { - if (index == 0) { - default_layer_set(1UL << (active ? 0 : 1)); - } - dip_switch_update_user(index, active); - - return true; -} -#endif - -void keyboard_post_init_kb(void) { -#ifdef LK_WIRELESS_ENABLE - palSetLineMode(P2P4_MODE_SELECT_PIN, PAL_MODE_INPUT); - palSetLineMode(BT_MODE_SELECT_PIN, PAL_MODE_INPUT); - - writePin(BAT_LOW_LED_PIN, BAT_LOW_LED_PIN_ON_STATE); - - lkbt51_init(false); - wireless_init(); -#endif - - power_on_indicator_timer = timer_read32(); -#ifdef ENCODER_ENABLE - encoder_cb_init(); -#endif - - keyboard_post_init_user(); -} - -bool keychron_task_kb(void) { - if (power_on_indicator_timer) { - if (timer_elapsed32(power_on_indicator_timer) > POWER_ON_LED_DURATION) { - power_on_indicator_timer = 0; - -#ifdef LK_WIRELESS_ENABLE - writePin(BAT_LOW_LED_PIN, !BAT_LOW_LED_PIN_ON_STATE); -#endif - } else { -#ifdef LK_WIRELESS_ENABLE - writePin(BAT_LOW_LED_PIN, BAT_LOW_LED_PIN_ON_STATE); -#endif - } - } - return true; -} - -#ifdef LK_WIRELESS_ENABLE -bool lpm_is_kb_idle(void) { - return power_on_indicator_timer == 0 && !factory_reset_indicating(); -} -#endif diff --git a/keyboards/keychron/v2_max/via_json/v2_max_ansi_encoder.json b/keyboards/keychron/v2_max/via_json/v2_max_ansi_encoder.json deleted file mode 100644 index a6b80c6e62..0000000000 --- a/keyboards/keychron/v2_max/via_json/v2_max_ansi_encoder.json +++ /dev/null @@ -1,250 +0,0 @@ -{ - "name": "Keychron V2 Max ANSI Knob", - "vendorId": "0x3434", - "productId": "0x0920", - "keycodes": ["qmk_lighting"], - "menus": [ - { - "label": "Lighting", - "content": [ - { - "label": "Backlight", - "content": [ - { - "label": "Brightness", - "type": "range", - "options": [0, 255], - "content": ["id_qmk_rgb_matrix_brightness", 3, 1] - }, - { - "label": "Effect", - "type": "dropdown", - "content": ["id_qmk_rgb_matrix_effect", 3, 2], - "options": [ - ["None", 0], - ["Solid Color", 1], - ["Breathing", 2], - ["Band Spiral Val", 3], - ["Cycle All", 4], - ["Cycle Left Right", 5], - ["Cycle Up Down", 6], - ["Rainbow Moving Chevron", 7], - ["Cycle Out In", 8], - ["Cycle Out In Dual", 9], - ["Cycle Pinwheel", 10], - ["Cycle Spiral", 11], - ["Dual Beacon", 12], - ["Rainbow Beacon", 13], - ["Jellybean Raindrops", 14], - ["Pixel Rain", 15], - ["Typing Heatmap", 16], - ["Digital Rain", 17], - ["Reactive Simple", 18], - ["Reactive Multiwide", 19], - ["Reactive Multinexus", 20], - ["Splash", 21], - ["Solid Splash", 22] - ] - }, - { - "showIf": "{id_qmk_rgb_matrix_effect} > 1", - "label": "Effect Speed", - "type": "range", - "options": [0, 255], - "content": ["id_qmk_rgb_matrix_effect_speed", 3, 3] - }, - { - "showIf": "{id_qmk_rgb_matrix_effect} != 0 && ( {id_qmk_rgb_matrix_effect} < 4 || {id_qmk_rgb_matrix_effect} == 18 || ({id_qmk_rgb_matrix_effect} > 17 && {id_qmk_rgb_matrix_effect} != 21) ) ", - "label": "Color", - "type": "color", - "content": ["id_qmk_rgb_matrix_color", 3, 4] - } - ] - } - ] - } - ], - "customKeycodes": [ - {"name": "Left Option", "title": "Left Option", "shortName": "LOpt"}, - {"name": "Right Option", "title": "Right Option", "shortName": "ROpt"}, - {"name": "Left Cmd", "title": "Left Command", "shortName": "LCmd"}, - {"name": "Right Cmd", "title": "Right Command", "shortName": "RCmd"}, - {"name": "Misson Control", "title": "Misson Control in Mac", "shortName": "MCtl"}, - {"name": "Lanuch Pad", "title": "Lanuch Pad in Windows", "shortName": "LPad"}, - {"name": "Task View", "title": "Task View in Windows", "shortName": "Task"}, - {"name": "File Explorer", "title": "File Explorer in Windows", "shortName": "File"}, - {"name": "Screen shot", "title": "Screenshot in macOS", "shortName": "SShot"}, - {"name": "Cortana", "title": "Cortana in Windows", "shortName": "Cortana"}, - {"name": "Siri", "title": "Siri in macOS", "shortName": "Siri"}, - {"name": "Bluetooth Host 1", "title": "Bluetooth Host 1", "shortName": "BTH1"}, - {"name": "Bluetooth Host 2", "title": "Bluetooth Host 2", "shortName": "BTH2"}, - {"name": "Bluetooth Host 3", "title": "Bluetooth Host 3", "shortName": "BTH3"}, - {"name": "2.4G", "title": "2.4G", "shortName": "2.4G"}, - {"name": "Battery Level", "title": "Show battery level", "shortName": "Batt"} - ], - "matrix": {"rows": 5, "cols" : 16}, - "layouts": { - "keymap": [ - [ - { - "c": "#777777" - }, - "0, 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, - "c": "#aaaaaa" - }, - "0, 13", - { - "x": 0.25, - "y": -0.25 - }, - "0, 15\n\n\n\n\n\n\n\n\ne0" - ], - [ - { - "y": 0.25, - "w": 1.5, - "c": "#aaaaaa" - }, - "1, 0", - { - "c": "#cccccc" - }, - "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, - "c": "#aaaaaa" - }, - "1, 13", - { - "x": 0.25 - }, - "1, 15" - ], - [ - { - "w": 1.75, - "c": "#aaaaaa" - }, - "2, 0", - { - "c": "#cccccc" - }, - "2, 1", - "2, 2", - "2, 3", - "2, 4", - "2, 5", - "2, 6", - "2, 7", - "2, 8", - "2, 9", - "2, 10", - "2, 11", - { - "w": 2.25, - "c": "#777777" - }, - "2, 12", - { - "x": 0.25, - "c": "#aaaaaa" - }, - "2, 15" - ], - [ - { - "w": 2.25, - "c": "#aaaaaa" - }, - "3, 0", - { - "c": "#cccccc" - }, - "3, 2", - "3, 3", - "3, 4", - "3, 5", - "3, 6", - "3, 7", - "3, 8", - "3, 9", - "3, 10", - "3, 11", - { - "w": 1.75, - "c": "#aaaaaa" - }, - "3, 12", - { - "x": 0.25, - "y": 0.25, - "c": "#cccccc" - }, - "3, 14" - ], - [ - { - "y": -0.25, - "w": 1.25, - "c": "#aaaaaa" - }, - "4, 0", - { - "w": 1.25 - }, - "4, 1", - { - "w": 1.25 - }, - "4, 2", - { - "w": 6.25, - "c": "#cccccc" - }, - "4, 6", - { - "c": "#aaaaaa" - }, - "4, 10", - "4, 11", - "4, 12", - { - "x": 0.25, - "y": 0.25, - "c": "#cccccc" - }, - "4, 13", - "4, 14", - "4, 15" - ] - ] - } -} diff --git a/keyboards/keychron/v2_max/via_json/v2_max_iso_encoder.json b/keyboards/keychron/v2_max/via_json/v2_max_iso_encoder.json deleted file mode 100644 index 8ba74ac970..0000000000 --- a/keyboards/keychron/v2_max/via_json/v2_max_iso_encoder.json +++ /dev/null @@ -1,253 +0,0 @@ -{ - "name": "Keychron V2 Max ISO Knob", - "vendorId": "0x3434", - "productId": "0x0921", - "keycodes": ["qmk_lighting"], - "menus": [ - { - "label": "Lighting", - "content": [ - { - "label": "Backlight", - "content": [ - { - "label": "Brightness", - "type": "range", - "options": [0, 255], - "content": ["id_qmk_rgb_matrix_brightness", 3, 1] - }, - { - "label": "Effect", - "type": "dropdown", - "content": ["id_qmk_rgb_matrix_effect", 3, 2], - "options": [ - ["None", 0], - ["Solid Color", 1], - ["Breathing", 2], - ["Band Spiral Val", 3], - ["Cycle All", 4], - ["Cycle Left Right", 5], - ["Cycle Up Down", 6], - ["Rainbow Moving Chevron", 7], - ["Cycle Out In", 8], - ["Cycle Out In Dual", 9], - ["Cycle Pinwheel", 10], - ["Cycle Spiral", 11], - ["Dual Beacon", 12], - ["Rainbow Beacon", 13], - ["Jellybean Raindrops", 14], - ["Pixel Rain", 15], - ["Typing Heatmap", 16], - ["Digital Rain", 17], - ["Reactive Simple", 18], - ["Reactive Multiwide", 19], - ["Reactive Multinexus", 20], - ["Splash", 21], - ["Solid Splash", 22] - ] - }, - { - "showIf": "{id_qmk_rgb_matrix_effect} > 1", - "label": "Effect Speed", - "type": "range", - "options": [0, 255], - "content": ["id_qmk_rgb_matrix_effect_speed", 3, 3] - }, - { - "showIf": "{id_qmk_rgb_matrix_effect} != 0 && ( {id_qmk_rgb_matrix_effect} < 4 || {id_qmk_rgb_matrix_effect} == 18 || ({id_qmk_rgb_matrix_effect} > 17 && {id_qmk_rgb_matrix_effect} != 21) ) ", - "label": "Color", - "type": "color", - "content": ["id_qmk_rgb_matrix_color", 3, 4] - } - ] - } - ] - } - ], - "customKeycodes": [ - {"name": "Left Option", "title": "Left Option", "shortName": "LOpt"}, - {"name": "Right Option", "title": "Right Option", "shortName": "ROpt"}, - {"name": "Left Cmd", "title": "Left Command", "shortName": "LCmd"}, - {"name": "Right Cmd", "title": "Right Command", "shortName": "RCmd"}, - {"name": "Misson Control", "title": "Misson Control in Mac", "shortName": "MCtl"}, - {"name": "Lanuch Pad", "title": "Lanuch Pad in Windows", "shortName": "LPad"}, - {"name": "Task View", "title": "Task View in Windows", "shortName": "Task"}, - {"name": "File Explorer", "title": "File Explorer in Windows", "shortName": "File"}, - {"name": "Screen shot", "title": "Screenshot in macOS", "shortName": "SShot"}, - {"name": "Cortana", "title": "Cortana in Windows", "shortName": "Cortana"}, - {"name": "Siri", "title": "Siri in macOS", "shortName": "Siri"}, - {"name": "Bluetooth Host 1", "title": "Bluetooth Host 1", "shortName": "BTH1"}, - {"name": "Bluetooth Host 2", "title": "Bluetooth Host 2", "shortName": "BTH2"}, - {"name": "Bluetooth Host 3", "title": "Bluetooth Host 3", "shortName": "BTH3"}, - {"name": "2.4G", "title": "2.4G", "shortName": "2.4G"}, - {"name": "Battery Level", "title": "Show battery level", "shortName": "Batt"} - ], - "matrix": {"rows": 5, "cols" : 16}, - "layouts": { - "keymap": [ - [ - { - "c": "#777777" - }, - "0, 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, - "c": "#aaaaaa" - }, - "0, 13", - { - "x": 0.25, - "y": -0.25 - }, - "0, 15\n\n\n\n\n\n\n\n\ne0" - ], - [ - { - "y": 0.25, - "w": 1.5, - "c": "#aaaaaa" - }, - "1, 0", - { - "c": "#cccccc" - }, - "1, 1", - "1, 2", - "1, 3", - "1, 4", - "1, 5", - "1, 6", - "1, 7", - "1, 8", - "1, 9", - "1, 10", - "1, 11", - "1, 12", - { - "x": 0.25, - "w": 1.25, - "h": 2, - "x2": -0.25, - "w2": 1.5, - "h2": 1, - "c": "#777777" - }, - "1, 13", - { - "x": 0.25, - "c": "#aaaaaa" - }, - "1, 15" - ], - [ - { - "w": 1.75, - "c": "#aaaaaa" - }, - "2, 0", - { - "c": "#cccccc" - }, - "2, 1", - "2, 2", - "2, 3", - "2, 4", - "2, 5", - "2, 6", - "2, 7", - "2, 8", - "2, 9", - "2, 10", - "2, 11", - "2, 12", - { - "x": 1.5, - "c": "#aaaaaa" - }, - "2, 15" - ], - [ - { - "w": 1.25, - "c": "#aaaaaa" - }, - "3, 0", - { - "c": "#cccccc" - }, - "3, 1", - "3, 2", - "3, 3", - "3, 4", - "3, 5", - "3, 6", - "3, 7", - "3, 8", - "3, 9", - "3, 10", - "3, 11", - { - "w": 1.75, - "c": "#aaaaaa" - }, - "3, 12", - { - "x": 0.25, - "y": 0.25, - "c": "#cccccc" - }, - "3, 14" - ], - [ - { - "y": -0.25, - "w": 1.25, - "c": "#aaaaaa" - }, - "4, 0", - { - "w": 1.25 - }, - "4, 1", - { - "w": 1.25 - }, - "4, 2", - { - "w": 6.25, - "c": "#cccccc" - }, - "4, 6", - { - "c": "#aaaaaa" - }, - "4, 10", - "4, 11", - "4, 12", - { - "x": 0.25, - "y": 0.25, - "c": "#cccccc" - }, - "4, 13", - "4, 14", - "4, 15" - ] - ] - } -} diff --git a/keyboards/keychron/v3_max/ansi_encoder/ansi_encoder.c b/keyboards/keychron/v3_max/ansi_encoder/ansi_encoder.c deleted file mode 100644 index 612bc3950e..0000000000 --- a/keyboards/keychron/v3_max/ansi_encoder/ansi_encoder.c +++ /dev/null @@ -1,178 +0,0 @@ -/* Copyright 2024 @ 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/>. - */ - -#include "quantum.h" - -// clang-format off - -#ifdef RGB_MATRIX_ENABLE -const snled27351_led_t g_snled27351_leds[RGB_MATRIX_LED_COUNT] = { -/* Refer to SNLED27351 manual for these locations - * driver - * | R location - * | | G location - * | | | B location - * | | | | */ - {0, J_1, L_1, K_1}, - {0, J_2, L_2, K_2}, - {0, J_3, L_3, K_3}, - {0, J_4, L_4, K_4}, - {0, J_5, L_5, K_5}, - {0, J_6, L_6, K_6}, - {0, J_7, L_7, K_7}, - {0, J_8, L_8, K_8}, - {0, J_9, L_9, K_9}, - {0, J_10, L_10, K_10}, - {0, J_11, L_11, K_11}, - {0, J_12, L_12, K_12}, - {0, J_13, L_13, K_13}, - {0, J_15, L_15, K_15}, - {0, J_16, L_16, K_16}, - {0, A_16, C_16, B_16}, - - {0, G_1, I_1, H_1}, - {0, G_2, I_2, H_2}, - {0, G_3, I_3, H_3}, - {0, G_4, I_4, H_4}, - {0, G_5, I_5, H_5}, - {0, G_6, I_6, H_6}, - {0, G_7, I_7, H_7}, - {0, G_8, I_8, H_8}, - {0, G_9, I_9, H_9}, - {0, G_10, I_10, H_10}, - {0, G_11, I_11, H_11}, - {0, G_12, I_12, H_12}, - {0, G_13, I_13, H_13}, - {0, G_14, I_14, H_14}, - {0, G_15, I_15, H_15}, - {0, G_16, I_16, H_16}, - {0, A_15, C_15, B_15}, - - {0, D_1, F_1, E_1}, - {0, D_2, F_2, E_2}, - {0, D_3, F_3, E_3}, - {0, D_4, F_4, E_4}, - {0, D_5, F_5, E_5}, - {0, D_6, F_6, E_6}, - {0, D_7, F_7, E_7}, - {0, D_8, F_8, E_8}, - {0, D_9, F_9, E_9}, - {0, D_10, F_10, E_10}, - {0, D_11, F_11, E_11}, - {0, D_12, F_12, E_12}, - {0, D_13, F_13, E_13}, - {0, D_14, F_14, E_14}, - {0, D_15, F_15, E_15}, - {0, D_16, F_16, E_16}, - {0, A_14, C_14, B_14}, - - {1, G_16, I_16, H_16}, - {1, G_15, I_15, H_15}, - {1, G_14, I_14, H_14}, - {1, G_13, I_13, H_13}, - {1, G_12, I_12, H_12}, - {1, G_11, I_11, H_11}, - {1, G_10, I_10, H_10}, - {1, G_9, I_9, H_9}, - {1, G_8, I_8, H_8}, - {1, G_7, I_7, H_7}, - {1, G_6, I_6, H_6}, - {1, G_5, I_5, H_5}, - {1, G_4, I_4, H_4}, - - {1, D_16, F_16, E_16}, - {1, D_14, F_14, E_14}, - {1, D_13, F_13, E_13}, - {1, D_12, F_12, E_12}, - {1, D_11, F_11, E_11}, - {1, D_10, F_10, E_10}, - {1, D_9, F_9, E_9}, - {1, D_8, F_8, E_8}, - {1, D_7, F_7, E_7}, - {1, D_6, F_6, E_6}, - {1, D_5, F_5, E_5}, - {1, D_4, F_4, E_4}, - {1, D_1, F_1, E_1}, - - {1, A_16, C_16, B_16}, - {1, A_15, C_15, B_15}, - {1, A_14, C_14, B_14}, - {1, A_10, C_10, B_10}, - {1, A_6, C_6, B_6}, - {1, A_5, C_5, B_5}, - {1, A_4, C_4, B_4}, - {1, A_3, C_3, B_3}, - {1, A_2, C_2, B_2}, - {1, A_1, C_1, B_1}, - {1, J_1, L_1, K_1}, -}; - -#define __ NO_LED - -led_config_t g_led_config = { - { - // Key Matrix to LED Index - { 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, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49 }, - { 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, __, __, __, __ }, - { 63, __, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, __, __, 75, __ }, - { 76, 77, 78, __, __, __, 79, __, __, __, 80, 81, 82, 83, 84, 85, 86 }, - }, - { - // LED Index to Physical Position - {0, 0}, {16, 0}, {29, 0}, {42, 0}, {55, 0}, {71, 0}, {84, 0}, { 97, 0}, {110, 0}, {126, 0}, {139, 0}, {152, 0}, {165, 0}, {198, 0}, {211, 0}, {224, 0}, - {0,15}, {13,15}, {26,15}, {39,15}, {52,15}, {65,15}, {78,15}, { 91,15}, {104,15}, {117,15}, {130,15}, {143,15}, {156,15}, {176,15}, {198,15}, {211,15}, {224,15}, - {3,28}, {19,28}, {32,28}, {46,28}, {59,28}, {72,28}, {85,28}, { 98,28}, {111,28}, {124,28}, {137,28}, {150,28}, {163,28}, {179,28}, {198,28}, {211,28}, {224,28}, - {5,40}, {23,40}, {36,40}, {49,40}, {62,40}, {75,40}, {88,40}, {101,40}, {114,40}, {127,40}, {140,40}, {153,40}, {174,40}, - {8,52}, {29,52}, {42,52}, {55,52}, {68,52}, {81,52}, { 94,52}, {107,52}, {120,52}, {133,52}, {146,52}, {171,52}, {211,52}, - {2,64}, {18,64}, {34,64}, {83,64}, {132,64}, {148,64}, {164,64}, {180,64}, {198,64}, {211,64}, {224,64} - }, - { - // RGB LED Index to Flag - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 - } -}; - -// Default Color of Per Key RGB -#define DC_RED {HSV_RED} -#define DC_BLU {HSV_BLUE} -#define DC_YLW {HSV_YELLOW} - -HSV default_per_key_led[RGB_MATRIX_LED_COUNT] = { - DC_RED, DC_YLW, DC_YLW, DC_YLW, DC_YLW, DC_YLW, DC_YLW, DC_YLW, DC_YLW, DC_YLW, DC_YLW, DC_YLW, DC_YLW, DC_YLW, DC_YLW, DC_YLW, - DC_BLU, DC_BLU, DC_BLU, DC_BLU, DC_BLU, DC_BLU, DC_BLU, DC_BLU, DC_BLU, DC_BLU, DC_BLU, DC_BLU, DC_BLU, DC_YLW, DC_YLW, DC_YLW, DC_YLW, - DC_YLW, DC_BLU, DC_BLU, DC_BLU, DC_BLU, DC_BLU, DC_BLU, DC_BLU, DC_BLU, DC_BLU, DC_BLU, DC_BLU, DC_BLU, DC_BLU, DC_YLW, DC_YLW, DC_YLW, - DC_YLW, DC_BLU, DC_BLU, DC_BLU, DC_BLU, DC_BLU, DC_BLU, DC_BLU, DC_BLU, DC_BLU, DC_BLU, DC_BLU, DC_RED, - DC_YLW, DC_BLU, DC_BLU, DC_BLU, DC_BLU, DC_BLU, DC_BLU, DC_BLU, DC_BLU, DC_BLU, DC_BLU, DC_YLW, DC_YLW, - DC_YLW, DC_YLW, DC_YLW, DC_BLU, DC_YLW, DC_YLW, DC_YLW, DC_YLW, DC_YLW, DC_YLW, DC_YLW -}; - -// Default mixed RGB region -uint8_t default_region[RGB_MATRIX_LED_COUNT] = { - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 -}; -#endif diff --git a/keyboards/keychron/v3_max/ansi_encoder/config.h b/keyboards/keychron/v3_max/ansi_encoder/config.h deleted file mode 100644 index 5e254bf794..0000000000 --- a/keyboards/keychron/v3_max/ansi_encoder/config.h +++ /dev/null @@ -1,53 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#pragma once - -#ifdef RGB_MATRIX_ENABLE -/* RGB Matrix driver configuration */ -# define DRIVER_COUNT 2 -# define RGB_MATRIX_LED_COUNT 87 - -# define SPI_SCK_PIN A5 -# define SPI_MISO_PIN A6 -# define SPI_MOSI_PIN A7 - -# define DRIVER_CS_PINS \ - { B8, B9 } -# define SNLED23751_SPI_DIVISOR 16 -# define SPI_DRIVER SPID1 - -/* Set LED driver current */ -# define SNLED27351_CURRENT_TUNE \ - { 0x34, 0x34, 0x34, 0x34, 0x34, 0x34, 0x34, 0x34, 0x34, 0x34, 0x34, 0x34 } - -/* Set to infinit, which is use in USB mode by default */ -# define RGB_MATRIX_TIMEOUT RGB_MATRIX_TIMEOUT_INFINITE - -/* Allow shutdown of led driver to save power */ -# define RGB_MATRIX_DRIVER_SHUTDOWN_ENABLE -/* Turn off backlight on low brightness to save power */ -# define RGB_MATRIX_BRIGHTNESS_TURN_OFF_VAL 32 - -/* Indications */ -# define CAPS_LOCK_INDEX 50 -# define LOW_BAT_IND_INDEX \ - { 79 } - -# define RGB_MATRIX_KEYPRESSES -# define RGB_MATRIX_FRAMEBUFFER_EFFECTS - -#endif diff --git a/keyboards/keychron/v3_max/ansi_encoder/info.json b/keyboards/keychron/v3_max/ansi_encoder/info.json deleted file mode 100644 index 52c2553a20..0000000000 --- a/keyboards/keychron/v3_max/ansi_encoder/info.json +++ /dev/null @@ -1,121 +0,0 @@ -{ - "usb": { - "pid": "0x0933", - "device_version": "1.1.1" - }, - "matrix_pins": { - "cols": ["C6", "C7", "C8", "A14", "A15", "C10", "C11", "C13", "C14", "C15", "C0", "C1", "C2", "C3", "A0", "A1", "A2"], - "rows": ["C12", "D2", "B3", "B4", "B5", "B6"] - }, - "features": { - "encoder": true, - "encoder_map": true - }, - "encoder": { - "rotary": [ - { - "pin_a": "B15", - "pin_b": "B14" - } - ] - }, - "layouts": { - "LAYOUT_tkl_ansi": { - "layout": [ - {"matrix": [0, 0], "x": 0, "y": 0}, - {"matrix": [0, 1], "x": 1.25, "y": 0}, - {"matrix": [0, 2], "x": 2.25, "y": 0}, - {"matrix": [0, 3], "x": 3.25, "y": 0}, - {"matrix": [0, 4], "x": 4.25, "y": 0}, - {"matrix": [0, 5], "x": 5.5, "y": 0}, - {"matrix": [0, 6], "x": 6.5, "y": 0}, - {"matrix": [0, 7], "x": 7.5, "y": 0}, - {"matrix": [0, 8], "x": 8.5, "y": 0}, - {"matrix": [0, 9], "x": 9.75, "y": 0}, - {"matrix": [0, 10], "x": 10.75, "y": 0}, - {"matrix": [0, 11], "x": 11.75, "y": 0}, - {"matrix": [0, 12], "x": 12.75, "y": 0}, - {"matrix": [0, 13], "x": 14, "y": 0}, - {"matrix": [0, 14], "x": 15.25, "y": 0}, - {"matrix": [0, 15], "x": 16.25, "y": 0}, - {"matrix": [0, 16], "x": 17.25, "y": 0}, - - {"matrix": [1, 0], "x": 0, "y": 1.25}, - {"matrix": [1, 1], "x": 1, "y": 1.25}, - {"matrix": [1, 2], "x": 2, "y": 1.25}, - {"matrix": [1, 3], "x": 3, "y": 1.25}, - {"matrix": [1, 4], "x": 4, "y": 1.25}, - {"matrix": [1, 5], "x": 5, "y": 1.25}, - {"matrix": [1, 6], "x": 6, "y": 1.25}, - {"matrix": [1, 7], "x": 7, "y": 1.25}, - {"matrix": [1, 8], "x": 8, "y": 1.25}, - {"matrix": [1, 9], "x": 9, "y": 1.25}, - {"matrix": [1, 10], "x": 10, "y": 1.25}, - {"matrix": [1, 11], "x": 11, "y": 1.25}, - {"matrix": [1, 12], "x": 12, "y": 1.25}, - {"matrix": [1, 13], "x": 13, "y": 1.25, "w": 2}, - {"matrix": [1, 14], "x": 15.25, "y": 1.25}, - {"matrix": [1, 15], "x": 16.25, "y": 1.25}, - {"matrix": [1, 16], "x": 17.25, "y": 1.25}, - - {"matrix": [2, 0], "x": 0, "y": 2.25, "w": 1.5}, - {"matrix": [2, 1], "x": 1.5, "y": 2.25}, - {"matrix": [2, 2], "x": 2.5, "y": 2.25}, - {"matrix": [2, 3], "x": 3.5, "y": 2.25}, - {"matrix": [2, 4], "x": 4.5, "y": 2.25}, - {"matrix": [2, 5], "x": 5.5, "y": 2.25}, - {"matrix": [2, 6], "x": 6.5, "y": 2.25}, - {"matrix": [2, 7], "x": 7.5, "y": 2.25}, - {"matrix": [2, 8], "x": 8.5, "y": 2.25}, - {"matrix": [2, 9], "x": 9.5, "y": 2.25}, - {"matrix": [2, 10], "x": 10.5, "y": 2.25}, - {"matrix": [2, 11], "x": 11.5, "y": 2.25}, - {"matrix": [2, 12], "x": 12.5, "y": 2.25}, - {"matrix": [2, 13], "x": 13.5, "y": 2.25, "w": 1.5}, - {"matrix": [2, 14], "x": 15.25, "y": 2.25}, - {"matrix": [2, 15], "x": 16.25, "y": 2.25}, - {"matrix": [2, 16], "x": 17.25, "y": 2.25}, - - {"matrix": [3, 0], "x": 0, "y": 3.25, "w": 1.75}, - {"matrix": [3, 1], "x": 1.75, "y": 3.25}, - {"matrix": [3, 2], "x": 2.75, "y": 3.25}, - {"matrix": [3, 3], "x": 3.75, "y": 3.25}, - {"matrix": [3, 4], "x": 4.75, "y": 3.25}, - {"matrix": [3, 5], "x": 5.75, "y": 3.25}, - {"matrix": [3, 6], "x": 6.75, "y": 3.25}, - {"matrix": [3, 7], "x": 7.75, "y": 3.25}, - {"matrix": [3, 8], "x": 8.75, "y": 3.25}, - {"matrix": [3, 9], "x": 9.75, "y": 3.25}, - {"matrix": [3, 10], "x": 10.75, "y": 3.25}, - {"matrix": [3, 11], "x": 11.75, "y": 3.25}, - {"matrix": [3, 12], "x": 12.75, "y": 3.25, "w": 2.25}, - - {"matrix": [4, 0], "x": 0, "y": 4.25, "w": 2.25}, - {"matrix": [4, 2], "x": 2.25, "y": 4.25}, - {"matrix": [4, 3], "x": 3.25, "y": 4.25}, - {"matrix": [4, 4], "x": 4.25, "y": 4.25}, - {"matrix": [4, 5], "x": 5.25, "y": 4.25}, - {"matrix": [4, 6], "x": 6.25, "y": 4.25}, - {"matrix": [4, 7], "x": 7.25, "y": 4.25}, - {"matrix": [4, 8], "x": 8.25, "y": 4.25}, - {"matrix": [4, 9], "x": 9.25, "y": 4.25}, - {"matrix": [4, 10], "x": 10.25, "y": 4.25}, - {"matrix": [4, 11], "x": 11.25, "y": 4.25}, - {"matrix": [4, 12], "x": 12.25, "y": 4.25, "w": 2.75}, - {"matrix": [4, 15], "x": 16.25, "y": 4.25}, - - {"matrix": [5, 0], "x": 0, "y": 5.25, "w": 1.25}, - {"matrix": [5, 1], "x": 1.25, "y": 5.25, "w": 1.25}, - {"matrix": [5, 2], "x": 2.5, "y": 5.25, "w": 1.25}, - {"matrix": [5, 6], "x": 3.75, "y": 5.25, "w": 6.25}, - {"matrix": [5, 10], "x": 10, "y": 5.25, "w": 1.25}, - {"matrix": [5, 11], "x": 11.25, "y": 5.25, "w": 1.25}, - {"matrix": [5, 12], "x": 12.5, "y": 5.25, "w": 1.25}, - {"matrix": [5, 13], "x": 13.75, "y": 5.25, "w": 1.25}, - {"matrix": [5, 14], "x": 15.25, "y": 5.25}, - {"matrix": [5, 15], "x": 16.25, "y": 5.25}, - {"matrix": [5, 16], "x": 17.25, "y": 5.25} - ] - } - } -} diff --git a/keyboards/keychron/v3_max/ansi_encoder/keymaps/default/keymap.c b/keyboards/keychron/v3_max/ansi_encoder/keymaps/default/keymap.c deleted file mode 100644 index 4c035d8b03..0000000000 --- a/keyboards/keychron/v3_max/ansi_encoder/keymaps/default/keymap.c +++ /dev/null @@ -1,76 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#include QMK_KEYBOARD_H -#include "keychron_common.h" - -enum layers { - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN, -}; -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_tkl_ansi( - KC_ESC, KC_BRID, KC_BRIU, KC_MCTRL, KC_LNPAD, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_MUTE, KC_SNAP, KC_SIRI, RGB_MOD, - KC_GRV, 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_INS, KC_HOME, KC_PGUP, - 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_DEL, KC_END, KC_PGDN, - 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_LCTL, KC_LOPTN, KC_LCMMD, KC_SPC, KC_RCMMD, KC_ROPTN, MO(MAC_FN), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - - [MAC_FN] = LAYOUT_tkl_ansi( - _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, RGB_TOG, _______, _______, RGB_TOG, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - - [WIN_BASE] = LAYOUT_tkl_ansi( - KC_ESC, 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_MUTE, KC_PSCR, KC_CTANA, RGB_MOD, - KC_GRV, 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_INS, KC_HOME, KC_PGUP, - 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_DEL, KC_END, KC_PGDN, - 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_LCTL, KC_LCMD, KC_LALT, KC_SPC, KC_RALT, KC_RWIN, MO(WIN_FN), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - - [WIN_FN] = LAYOUT_tkl_ansi( - _______, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, RGB_TOG, _______, _______, RGB_TOG, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), -}; - -#if defined(ENCODER_MAP_ENABLE) -const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][2] = { - [MAC_BASE] = {ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [MAC_FN] = {ENCODER_CCW_CW(RGB_VAD, RGB_VAI)}, - [WIN_BASE] = {ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [WIN_FN] = {ENCODER_CCW_CW(RGB_VAD, RGB_VAI)}, -}; -#endif // ENCODER_MAP_ENABLE - -// clang-format on -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - if (!process_record_keychron_common(keycode, record)) { - return false; - } - return true; -} diff --git a/keyboards/keychron/v3_max/ansi_encoder/keymaps/via/keymap.c b/keyboards/keychron/v3_max/ansi_encoder/keymaps/via/keymap.c deleted file mode 100644 index 4c035d8b03..0000000000 --- a/keyboards/keychron/v3_max/ansi_encoder/keymaps/via/keymap.c +++ /dev/null @@ -1,76 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#include QMK_KEYBOARD_H -#include "keychron_common.h" - -enum layers { - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN, -}; -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_tkl_ansi( - KC_ESC, KC_BRID, KC_BRIU, KC_MCTRL, KC_LNPAD, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_MUTE, KC_SNAP, KC_SIRI, RGB_MOD, - KC_GRV, 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_INS, KC_HOME, KC_PGUP, - 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_DEL, KC_END, KC_PGDN, - 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_LCTL, KC_LOPTN, KC_LCMMD, KC_SPC, KC_RCMMD, KC_ROPTN, MO(MAC_FN), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - - [MAC_FN] = LAYOUT_tkl_ansi( - _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, RGB_TOG, _______, _______, RGB_TOG, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - - [WIN_BASE] = LAYOUT_tkl_ansi( - KC_ESC, 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_MUTE, KC_PSCR, KC_CTANA, RGB_MOD, - KC_GRV, 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_INS, KC_HOME, KC_PGUP, - 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_DEL, KC_END, KC_PGDN, - 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_LCTL, KC_LCMD, KC_LALT, KC_SPC, KC_RALT, KC_RWIN, MO(WIN_FN), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - - [WIN_FN] = LAYOUT_tkl_ansi( - _______, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, RGB_TOG, _______, _______, RGB_TOG, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), -}; - -#if defined(ENCODER_MAP_ENABLE) -const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][2] = { - [MAC_BASE] = {ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [MAC_FN] = {ENCODER_CCW_CW(RGB_VAD, RGB_VAI)}, - [WIN_BASE] = {ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [WIN_FN] = {ENCODER_CCW_CW(RGB_VAD, RGB_VAI)}, -}; -#endif // ENCODER_MAP_ENABLE - -// clang-format on -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - if (!process_record_keychron_common(keycode, record)) { - return false; - } - return true; -} diff --git a/keyboards/keychron/v3_max/ansi_encoder/keymaps/via/rules.mk b/keyboards/keychron/v3_max/ansi_encoder/keymaps/via/rules.mk deleted file mode 100644 index 1e5b99807c..0000000000 --- a/keyboards/keychron/v3_max/ansi_encoder/keymaps/via/rules.mk +++ /dev/null @@ -1 +0,0 @@ -VIA_ENABLE = yes diff --git a/keyboards/keychron/v3_max/ansi_encoder/rules.mk b/keyboards/keychron/v3_max/ansi_encoder/rules.mk deleted file mode 100644 index 7ff128fa69..0000000000 --- a/keyboards/keychron/v3_max/ansi_encoder/rules.mk +++ /dev/null @@ -1 +0,0 @@ -# This file intentionally left blank \ No newline at end of file diff --git a/keyboards/keychron/v3_max/board.h b/keyboards/keychron/v3_max/board.h deleted file mode 100644 index 54fba748bf..0000000000 --- a/keyboards/keychron/v3_max/board.h +++ /dev/null @@ -1,226 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#pragma once - -#include_next - -// clang-format off - -/* Set GPIOA_SWDIO to INPUT and NOT FLOATING */ -#undef VAL_GPIOA_MODER -#define VAL_GPIOA_MODER (PIN_MODE_INPUT(GPIOA_BUTTON) | \ - PIN_MODE_INPUT(GPIOA_PIN1) | \ - PIN_MODE_INPUT(GPIOA_PIN2) | \ - PIN_MODE_INPUT(GPIOA_PIN3) | \ - PIN_MODE_ALTERNATE(GPIOA_CS43L22_LRCK) |\ - PIN_MODE_ALTERNATE(GPIOA_L3GD20_SCL) | \ - PIN_MODE_ALTERNATE(GPIOA_L3GD20_SD0) | \ - PIN_MODE_ALTERNATE(GPIOA_L3GD20_SDI) | \ - PIN_MODE_INPUT(GPIOA_PIN8) | \ - PIN_MODE_INPUT(GPIOA_VBUS_FS) | \ - PIN_MODE_ALTERNATE(GPIOA_OTG_FS_ID) | \ - PIN_MODE_ALTERNATE(GPIOA_OTG_FS_DM) | \ - PIN_MODE_ALTERNATE(GPIOA_OTG_FS_DP) | \ - PIN_MODE_INPUT(GPIOA_SWDIO) | \ - PIN_MODE_INPUT(GPIOA_SWCLK) | \ - PIN_MODE_INPUT(GPIOA_PIN15)) - -#undef VAL_GPIOA_PUPDR -#define VAL_GPIOA_PUPDR (PIN_PUPDR_FLOATING(GPIOA_BUTTON) | \ - PIN_PUPDR_PULLUP(GPIOA_PIN1) | \ - PIN_PUPDR_PULLUP(GPIOA_PIN2) | \ - PIN_PUPDR_PULLUP(GPIOA_PIN3) | \ - PIN_PUPDR_FLOATING(GPIOA_CS43L22_LRCK) |\ - PIN_PUPDR_FLOATING(GPIOA_L3GD20_SCL) | \ - PIN_PUPDR_PULLUP(GPIOA_L3GD20_SD0) | \ - PIN_PUPDR_PULLUP(GPIOA_L3GD20_SDI) | \ - PIN_PUPDR_PULLUP(GPIOA_PIN8) | \ - PIN_PUPDR_FLOATING(GPIOA_VBUS_FS) | \ - PIN_PUPDR_FLOATING(GPIOA_OTG_FS_ID) | \ - PIN_PUPDR_FLOATING(GPIOA_OTG_FS_DM) | \ - PIN_PUPDR_FLOATING(GPIOA_OTG_FS_DP) | \ - PIN_PUPDR_PULLUP(GPIOA_SWDIO) | \ - PIN_PUPDR_PULLUP(GPIOA_SWCLK) | \ - PIN_PUPDR_PULLUP(GPIOA_PIN15)) - -#undef VAL_GPIOB_MODER -#define VAL_GPIOB_MODER (PIN_MODE_INPUT(GPIOB_PIN0) | \ - PIN_MODE_INPUT(GPIOB_PIN1) | \ - PIN_MODE_INPUT(GPIOB_PIN2) | \ - PIN_MODE_INPUT(GPIOB_SWO) | \ - PIN_MODE_INPUT(GPIOB_PIN4) | \ - PIN_MODE_INPUT(GPIOB_PIN5) | \ - PIN_MODE_INPUT(GPIOB_LSM303DLHC_SCL) | \ - PIN_MODE_INPUT(GPIOB_PIN7) | \ - PIN_MODE_INPUT(GPIOB_PIN8) | \ - PIN_MODE_INPUT(GPIOB_LSM303DLHC_SDA) | \ - PIN_MODE_INPUT(GPIOB_MP45DT02_CLK_IN) |\ - PIN_MODE_INPUT(GPIOB_PIN11) | \ - PIN_MODE_INPUT(GPIOB_PIN12) | \ - PIN_MODE_INPUT(GPIOB_PIN13) | \ - PIN_MODE_INPUT(GPIOB_PIN14) | \ - PIN_MODE_INPUT(GPIOB_PIN15)) - -#undef VAL_GPIOB_PUPDR -#define VAL_GPIOB_PUPDR (PIN_PUPDR_PULLDOWN(GPIOB_PIN0) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN1) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN2) | \ - PIN_PUPDR_PULLDOWN(GPIOB_SWO) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN4) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN5) | \ - PIN_PUPDR_PULLDOWN(GPIOB_LSM303DLHC_SCL) |\ - PIN_PUPDR_PULLDOWN(GPIOB_PIN7) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN8) | \ - PIN_PUPDR_PULLDOWN(GPIOB_LSM303DLHC_SDA) |\ - PIN_PUPDR_PULLDOWN(GPIOB_MP45DT02_CLK_IN) |\ - PIN_PUPDR_PULLDOWN(GPIOB_PIN11) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN12) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN13) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN14) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN15)) - -#undef VAL_GPIOB_AFRL -#define VAL_GPIOB_AFRL (PIN_AFIO_AF(GPIOB_PIN0, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN1, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN2, 0U) | \ - PIN_AFIO_AF(GPIOB_SWO, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN4, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN5, 0U) | \ - PIN_AFIO_AF(GPIOB_LSM303DLHC_SCL, 0) | \ - PIN_AFIO_AF(GPIOB_PIN7, 0U)) - -#undef VAL_GPIOB_AFRH -#define VAL_GPIOB_AFRH (PIN_AFIO_AF(GPIOB_PIN8, 0U) | \ - PIN_AFIO_AF(GPIOB_LSM303DLHC_SDA, 0) | \ - PIN_AFIO_AF(GPIOB_MP45DT02_CLK_IN, 0U) |\ - PIN_AFIO_AF(GPIOB_PIN11, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN12, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN13, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN14, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN15, 0U)) - -/* C5 Need to be pulldown */ -#undef VAL_GPIOC_MODER -#define VAL_GPIOC_MODER (PIN_MODE_INPUT(GPIOC_OTG_FS_POWER_ON) |\ - PIN_MODE_INPUT(GPIOC_PIN1) | \ - PIN_MODE_INPUT(GPIOC_PIN2) | \ - PIN_MODE_INPUT(GPIOC_CS43L22_AIN4x) | \ - PIN_MODE_INPUT(GPIOC_PIN4) | \ - PIN_MODE_INPUT(GPIOC_PIN5) | \ - PIN_MODE_INPUT(GPIOC_PIN6) | \ - PIN_MODE_INPUT(GPIOC_CS43L22_MCLK) | \ - PIN_MODE_INPUT(GPIOC_PIN8) | \ - PIN_MODE_INPUT(GPIOC_PIN9) | \ - PIN_MODE_INPUT(GPIOC_CS43L22_SCLK) | \ - PIN_MODE_INPUT(GPIOC_PIN11) | \ - PIN_MODE_INPUT(GPIOC_CS43L22_SDIN) | \ - PIN_MODE_INPUT(GPIOC_PIN13) | \ - PIN_MODE_INPUT(GPIOC_OSC32_IN) | \ - PIN_MODE_INPUT(GPIOC_OSC32_OUT)) - -#undef VAL_GPIOC_PUPDR -#define VAL_GPIOC_PUPDR (PIN_PUPDR_PULLUP(GPIOC_OTG_FS_POWER_ON) |\ - PIN_PUPDR_PULLUP(GPIOC_PIN1) | \ - PIN_PUPDR_PULLUP(GPIOC_PIN2) | \ - PIN_PUPDR_PULLUP(GPIOC_CS43L22_AIN4x) |\ - PIN_PUPDR_PULLUP(GPIOC_PIN4) | \ - PIN_PUPDR_PULLDOWN(GPIOC_PIN5) | \ - PIN_PUPDR_PULLUP(GPIOC_PIN6) | \ - PIN_PUPDR_PULLUP(GPIOC_CS43L22_MCLK) | \ - PIN_PUPDR_PULLUP(GPIOC_PIN8) | \ - PIN_PUPDR_PULLUP(GPIOC_PIN9) | \ - PIN_PUPDR_PULLUP(GPIOC_CS43L22_SCLK) | \ - PIN_PUPDR_PULLUP(GPIOC_PIN11) | \ - PIN_PUPDR_PULLUP(GPIOC_CS43L22_SDIN) | \ - PIN_PUPDR_PULLUP(GPIOC_PIN13) | \ - PIN_PUPDR_PULLUP(GPIOC_OSC32_IN) | \ - PIN_PUPDR_PULLUP(GPIOC_OSC32_OUT)) - -/* Set all GPIOD pins to INPUT & PULLUP to avoid FLOATING */ -#undef VAL_GPIOD_MODER -#define VAL_GPIOD_MODER (PIN_MODE_INPUT(GPIOD_PIN0) | \ - PIN_MODE_INPUT(GPIOD_PIN1) | \ - PIN_MODE_INPUT(GPIOD_PIN2) | \ - PIN_MODE_INPUT(GPIOD_PIN3) | \ - PIN_MODE_INPUT(GPIOD_CS43L22_RESET) | \ - PIN_MODE_INPUT(GPIOD_OverCurrent) | \ - PIN_MODE_INPUT(GPIOD_PIN6) | \ - PIN_MODE_INPUT(GPIOD_PIN7) | \ - PIN_MODE_INPUT(GPIOD_PIN8) | \ - PIN_MODE_INPUT(GPIOD_PIN9) | \ - PIN_MODE_INPUT(GPIOD_PIN10) | \ - PIN_MODE_INPUT(GPIOD_PIN11) | \ - PIN_MODE_INPUT(GPIOD_LED4) | \ - PIN_MODE_INPUT(GPIOD_LED3) | \ - PIN_MODE_INPUT(GPIOD_LED5) | \ - PIN_MODE_INPUT(GPIOD_LED6)) - -#undef VAL_GPIOD_PUPDR -#define VAL_GPIOD_PUPDR (PIN_PUPDR_PULLUP(GPIOD_PIN0) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN1) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN2) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN3) | \ - PIN_PUPDR_PULLUP(GPIOD_CS43L22_RESET) |\ - PIN_PUPDR_PULLUP(GPIOD_OverCurrent) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN6) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN7) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN8) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN9) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN10) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN11) | \ - PIN_PUPDR_PULLUP(GPIOD_LED4) | \ - PIN_PUPDR_PULLUP(GPIOD_LED3) | \ - PIN_PUPDR_PULLUP(GPIOD_LED5) | \ - PIN_PUPDR_PULLUP(GPIOD_LED6)) - -/* Set all GPIOE pins to INPUT & PULLUP to avoid FLOATING */ -#undef VAL_GPIOE_MODER -#define VAL_GPIOE_MODER (PIN_MODE_INPUT(GPIOE_L3GD20_INT1) | \ - PIN_MODE_INPUT(GPIOE_L3GD20_INT2) | \ - PIN_MODE_INPUT(GPIOE_LSM303DLHC_DRDY) |\ - PIN_MODE_INPUT(GPIOE_L3GD20_CS) | \ - PIN_MODE_INPUT(GPIOE_LSM303DLHC_INT1) |\ - PIN_MODE_INPUT(GPIOE_LSM303DLHC_INT2) |\ - PIN_MODE_INPUT(GPIOE_PIN6) | \ - PIN_MODE_INPUT(GPIOE_PIN7) | \ - PIN_MODE_INPUT(GPIOE_PIN8) | \ - PIN_MODE_INPUT(GPIOE_PIN9) | \ - PIN_MODE_INPUT(GPIOE_PIN10) | \ - PIN_MODE_INPUT(GPIOE_PIN11) | \ - PIN_MODE_INPUT(GPIOE_PIN12) | \ - PIN_MODE_INPUT(GPIOE_PIN13) | \ - PIN_MODE_INPUT(GPIOE_PIN14) | \ - PIN_MODE_INPUT(GPIOE_PIN15)) - -#undef VAL_GPIOE_PUPDR -#define VAL_GPIOE_PUPDR (PIN_PUPDR_PULLUP(GPIOE_L3GD20_INT1) | \ - PIN_PUPDR_PULLUP(GPIOE_L3GD20_INT2) | \ - PIN_PUPDR_PULLUP(GPIOE_LSM303DLHC_DRDY) |\ - PIN_PUPDR_PULLUP(GPIOE_L3GD20_CS) | \ - PIN_PUPDR_PULLUP(GPIOE_LSM303DLHC_INT1) |\ - PIN_PUPDR_PULLUP(GPIOE_LSM303DLHC_INT2) |\ - PIN_PUPDR_PULLUP(GPIOE_PIN6) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN7) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN8) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN9) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN10) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN11) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN12) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN13) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN14) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN15)) - diff --git a/keyboards/keychron/v3_max/config.h b/keyboards/keychron/v3_max/config.h deleted file mode 100644 index f67ec6396b..0000000000 --- a/keyboards/keychron/v3_max/config.h +++ /dev/null @@ -1,79 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#pragma once - -#include "eeconfig_kb.h" - -/* Encoder Configuration */ -#define ENCODER_DEFAULT_POS 0x3 -#define ENCODER_MAP_KEY_DELAY 2 - -#ifdef LK_WIRELESS_ENABLE -/* Hardware configuration */ -# define P2P4_MODE_SELECT_PIN A9 -# define BT_MODE_SELECT_PIN A10 - -# define LKBT51_RESET_PIN C4 -# define LKBT51_INT_INPUT_PIN B1 -# define BLUETOOTH_INT_OUTPUT_PIN A4 - -# define USB_POWER_SENSE_PIN B0 -# define USB_POWER_CONNECTED_LEVEL 0 - -# define BAT_CHARGING_PIN B13 -# define BAT_CHARGING_LEVEL 0 - -# define BT_HOST_DEVICES_COUNT 3 - -# if defined(RGB_MATRIX_ENABLE) - -# define LED_DRIVER_SHUTDOWN_PIN B7 - -# define BT_HOST_LED_MATRIX_LIST \ - { 17, 18, 19 } - -# define P2P4G_HOST_LED_MATRIX_LIST \ - { 20 } - -# 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 - -/* Reinit LED driver on tranport changed */ -# define REINIT_LED_DRIVER 1 - -# endif - -/* Keep USB connection in blueooth mode */ -# define KEEP_USB_CONNECTION_IN_WIRELESS_MODE - -/* Enable bluetooth NKRO */ -# define WIRELESS_NKRO_ENABLE - -#endif - -/* Factory test keys */ -#define FN_KEY_1 MO(1) -#define FN_KEY_2 MO(3) - -#define P2P4G_CELAR_MASK 0 -#define MATRIX_IO_DELAY 10 diff --git a/keyboards/keychron/v3_max/firmware/keychron_v3_max_ansi_encoder_via.bin b/keyboards/keychron/v3_max/firmware/keychron_v3_max_ansi_encoder_via.bin deleted file mode 100644 index 8acca6aecb..0000000000 Binary files a/keyboards/keychron/v3_max/firmware/keychron_v3_max_ansi_encoder_via.bin and /dev/null differ diff --git a/keyboards/keychron/v3_max/firmware/keychron_v3_max_iso_encoder_via.bin b/keyboards/keychron/v3_max/firmware/keychron_v3_max_iso_encoder_via.bin deleted file mode 100644 index 9851f41e83..0000000000 Binary files a/keyboards/keychron/v3_max/firmware/keychron_v3_max_iso_encoder_via.bin and /dev/null differ diff --git a/keyboards/keychron/v3_max/halconf.h b/keyboards/keychron/v3_max/halconf.h deleted file mode 100644 index 37bcc7c47b..0000000000 --- a/keyboards/keychron/v3_max/halconf.h +++ /dev/null @@ -1,31 +0,0 @@ -/* Copyright 2024 @ 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 - -#define _CHIBIOS_HAL_CONF_VER_8_0_ - -#define HAL_USE_SPI TRUE - -#ifdef LK_WIRELESS_ENABLE -# define HAL_USE_RTC TRUE -#endif - -#if defined(LK_WIRELESS_ENABLE) || defined(ENCODER_ENABLE) -# define PAL_USE_CALLBACKS TRUE -#endif - -#include_next diff --git a/keyboards/keychron/v3_max/info.json b/keyboards/keychron/v3_max/info.json deleted file mode 100644 index 6192df3050..0000000000 --- a/keyboards/keychron/v3_max/info.json +++ /dev/null @@ -1,63 +0,0 @@ -{ - "keyboard_name": "Keychron V3 Max", - "manufacturer": "Keychron", - "url": "https://github.com/Keychron", - "maintainer": "lokher", - "processor": "STM32F401", - "bootloader": "stm32-dfu", - "usb": { - "vid": "0x3434" - }, - "features": { - "bootmagic": true, - "extrakey" : true, - "mousekey" : true, - "dip_switch" : true, - "nkro" : true, - "rgb_matrix": true, - "raw" : true, - "send_string": true - }, - "diode_direction": "ROW2COL", - "dip_switch" :{ - "pins": ["A8"] - }, - "rgb_matrix": { - "driver": "snled27351_spi", - "sleep": true, - "animations": { - "band_spiral_val": true, - "breathing": true, - "cycle_all": true, - "cycle_left_right": true, - "cycle_out_in": true, - "cycle_out_in_dual": true, - "cycle_pinwheel": true, - "cycle_spiral": true, - "cycle_up_down": true, - "digital_rain": true, - "dual_beacon": true, - "jellybean_raindrops": true, - "pixel_rain": true, - "rainbow_beacon": true, - "rainbow_moving_chevron": true, - "solid_reactive_multinexus": true, - "solid_reactive_multiwide": true, - "solid_reactive_simple": true, - "solid_splash": true, - "splash": true, - "typing_heatmap": true - } - }, - "eeprom": { - "wear_leveling": { - "driver": "embedded_flash", - "logical_size": 3072, - "backing_size": 6144 - } - }, - "build": { - "debounce_type": "custom" - }, - "debounce": 50 -} diff --git a/keyboards/keychron/v3_max/iso_encoder/config.h b/keyboards/keychron/v3_max/iso_encoder/config.h deleted file mode 100644 index 715983f22e..0000000000 --- a/keyboards/keychron/v3_max/iso_encoder/config.h +++ /dev/null @@ -1,53 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#pragma once - -#ifdef RGB_MATRIX_ENABLE -/* RGB Matrix driver configuration */ -# define DRIVER_COUNT 2 -# define RGB_MATRIX_LED_COUNT 88 - -# define SPI_SCK_PIN A5 -# define SPI_MISO_PIN A6 -# define SPI_MOSI_PIN A7 - -# define DRIVER_CS_PINS \ - { B8, B9 } -# define SNLED23751_SPI_DIVISOR 16 -# define SPI_DRIVER SPID1 - -/* Set LED driver current */ -# define SNLED27351_CURRENT_TUNE \ - { 0x34, 0x34, 0x34, 0x34, 0x34, 0x34, 0x34, 0x34, 0x34, 0x34, 0x34, 0x34 } - -/* Set to infinit, which is use in USB mode by default */ -# define RGB_MATRIX_TIMEOUT RGB_MATRIX_TIMEOUT_INFINITE - -/* Allow shutdown of led driver to save power */ -# define RGB_MATRIX_DRIVER_SHUTDOWN_ENABLE -/* Turn off backlight on low brightness to save power */ -# define RGB_MATRIX_BRIGHTNESS_TURN_OFF_VAL 32 - -/* Indicator */ -# define CAPS_LOCK_INDEX 50 -# define LOW_BAT_IND_INDEX \ - { 80 } - -# define RGB_MATRIX_KEYPRESSES -# define RGB_MATRIX_FRAMEBUFFER_EFFECTS - -#endif diff --git a/keyboards/keychron/v3_max/iso_encoder/info.json b/keyboards/keychron/v3_max/iso_encoder/info.json deleted file mode 100644 index ecddf21a2f..0000000000 --- a/keyboards/keychron/v3_max/iso_encoder/info.json +++ /dev/null @@ -1,122 +0,0 @@ -{ - "usb": { - "pid": "0x0934", - "device_version": "1.1.0" - }, - "matrix_pins": { - "cols": ["C6", "C7", "C8", "A14", "A15", "C10", "C11", "C13", "C14", "C15", "C0", "C1", "C2", "C3", "A0", "A1", "A2"], - "rows": ["C12", "D2", "B3", "B4", "B5", "B6"] - }, - "features": { - "encoder": true, - "encoder_map": true - }, - "encoder": { - "rotary": [ - { - "pin_a": "B15", - "pin_b": "B14" - } - ] - }, - "layouts": { - "LAYOUT_tkl_iso": { - "layout": [ - {"matrix": [0, 0], "x": 0, "y": 0}, - {"matrix": [0, 1], "x": 1.25, "y": 0}, - {"matrix": [0, 2], "x": 2.25, "y": 0}, - {"matrix": [0, 3], "x": 3.25, "y": 0}, - {"matrix": [0, 4], "x": 4.25, "y": 0}, - {"matrix": [0, 5], "x": 5.5, "y": 0}, - {"matrix": [0, 6], "x": 6.5, "y": 0}, - {"matrix": [0, 7], "x": 7.5, "y": 0}, - {"matrix": [0, 8], "x": 8.5, "y": 0}, - {"matrix": [0, 9], "x": 9.75, "y": 0}, - {"matrix": [0, 10], "x": 10.75, "y": 0}, - {"matrix": [0, 11], "x": 11.75, "y": 0}, - {"matrix": [0, 12], "x": 12.75, "y": 0}, - {"matrix": [0, 13], "x": 14, "y": 0}, - {"matrix": [0, 14], "x": 15.25, "y": 0}, - {"matrix": [0, 15], "x": 16.25, "y": 0}, - {"matrix": [0, 16], "x": 17.25, "y": 0}, - - {"matrix": [1, 0], "x": 0, "y": 1.25}, - {"matrix": [1, 1], "x": 1, "y": 1.25}, - {"matrix": [1, 2], "x": 2, "y": 1.25}, - {"matrix": [1, 3], "x": 3, "y": 1.25}, - {"matrix": [1, 4], "x": 4, "y": 1.25}, - {"matrix": [1, 5], "x": 5, "y": 1.25}, - {"matrix": [1, 6], "x": 6, "y": 1.25}, - {"matrix": [1, 7], "x": 7, "y": 1.25}, - {"matrix": [1, 8], "x": 8, "y": 1.25}, - {"matrix": [1, 9], "x": 9, "y": 1.25}, - {"matrix": [1, 10], "x": 10, "y": 1.25}, - {"matrix": [1, 11], "x": 11, "y": 1.25}, - {"matrix": [1, 12], "x": 12, "y": 1.25}, - {"matrix": [1, 13], "x": 13, "y": 1.25, "w": 2}, - {"matrix": [1, 14], "x": 15.25, "y": 1.25}, - {"matrix": [1, 15], "x": 16.25, "y": 1.25}, - {"matrix": [1, 16], "x": 17.25, "y": 1.25}, - - {"matrix": [2, 0], "x": 0, "y": 2.25, "w": 1.5}, - {"matrix": [2, 1], "x": 1.5, "y": 2.25}, - {"matrix": [2, 2], "x": 2.5, "y": 2.25}, - {"matrix": [2, 3], "x": 3.5, "y": 2.25}, - {"matrix": [2, 4], "x": 4.5, "y": 2.25}, - {"matrix": [2, 5], "x": 5.5, "y": 2.25}, - {"matrix": [2, 6], "x": 6.5, "y": 2.25}, - {"matrix": [2, 7], "x": 7.5, "y": 2.25}, - {"matrix": [2, 8], "x": 8.5, "y": 2.25}, - {"matrix": [2, 9], "x": 9.5, "y": 2.25}, - {"matrix": [2, 10], "x": 10.5, "y": 2.25}, - {"matrix": [2, 11], "x": 11.5, "y": 2.25}, - {"matrix": [2, 12], "x": 12.5, "y": 2.25}, - {"matrix": [2, 14], "x": 15.25, "y": 2.25}, - {"matrix": [2, 15], "x": 16.25, "y": 2.25}, - {"matrix": [2, 16], "x": 17.25, "y": 2.25}, - - {"matrix": [3, 0], "x": 0, "y": 3.25, "w": 1.75}, - {"matrix": [3, 1], "x": 1.75, "y": 3.25}, - {"matrix": [3, 2], "x": 2.75, "y": 3.25}, - {"matrix": [3, 3], "x": 3.75, "y": 3.25}, - {"matrix": [3, 4], "x": 4.75, "y": 3.25}, - {"matrix": [3, 5], "x": 5.75, "y": 3.25}, - {"matrix": [3, 6], "x": 6.75, "y": 3.25}, - {"matrix": [3, 7], "x": 7.75, "y": 3.25}, - {"matrix": [3, 8], "x": 8.75, "y": 3.25}, - {"matrix": [3, 9], "x": 9.75, "y": 3.25}, - {"matrix": [3, 10], "x": 10.75, "y": 3.25}, - {"matrix": [3, 11], "x": 11.75, "y": 3.25}, - {"matrix": [3, 12], "x": 12.75, "y": 3.25}, - {"matrix": [2, 13], "x": 13.75, "y": 2.25, "w": 1.25, "h": 2}, - - {"matrix": [4, 0], "x": 0, "y": 4.25, "w": 1.25}, - {"matrix": [4, 1], "x": 1.25, "y": 4.25}, - {"matrix": [4, 2], "x": 2.25, "y": 4.25}, - {"matrix": [4, 3], "x": 3.25, "y": 4.25}, - {"matrix": [4, 4], "x": 4.25, "y": 4.25}, - {"matrix": [4, 5], "x": 5.25, "y": 4.25}, - {"matrix": [4, 6], "x": 6.25, "y": 4.25}, - {"matrix": [4, 7], "x": 7.25, "y": 4.25}, - {"matrix": [4, 8], "x": 8.25, "y": 4.25}, - {"matrix": [4, 9], "x": 9.25, "y": 4.25}, - {"matrix": [4, 10], "x": 10.25, "y": 4.25}, - {"matrix": [4, 11], "x": 11.25, "y": 4.25}, - {"matrix": [4, 12], "x": 12.25, "y": 4.25, "w": 2.75}, - {"matrix": [4, 15], "x": 16.25, "y": 4.25}, - - {"matrix": [5, 0], "x": 0, "y": 5.25, "w": 1.25}, - {"matrix": [5, 1], "x": 1.25, "y": 5.25, "w": 1.25}, - {"matrix": [5, 2], "x": 2.5, "y": 5.25, "w": 1.25}, - {"matrix": [5, 6], "x": 3.75, "y": 5.25, "w": 6.25}, - {"matrix": [5, 10], "x": 10, "y": 5.25, "w": 1.25}, - {"matrix": [5, 11], "x": 11.25, "y": 5.25, "w": 1.25}, - {"matrix": [5, 12], "x": 12.5, "y": 5.25, "w": 1.25}, - {"matrix": [5, 13], "x": 13.75, "y": 5.25, "w": 1.25}, - {"matrix": [5, 14], "x": 15.25, "y": 5.25}, - {"matrix": [5, 15], "x": 16.25, "y": 5.25}, - {"matrix": [5, 16], "x": 17.25, "y": 5.25} - ] - } - } -} diff --git a/keyboards/keychron/v3_max/iso_encoder/iso_encoder.c b/keyboards/keychron/v3_max/iso_encoder/iso_encoder.c deleted file mode 100644 index 08188cf249..0000000000 --- a/keyboards/keychron/v3_max/iso_encoder/iso_encoder.c +++ /dev/null @@ -1,180 +0,0 @@ -/* Copyright 2024 @ 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/>. - */ - -#include "quantum.h" - -// clang-format off - -#ifdef RGB_MATRIX_ENABLE -const snled27351_led_t g_snled27351_leds[RGB_MATRIX_LED_COUNT] = { -/* Refer to SNLED27351 manual for these locations - * driver - * | R location - * | | G location - * | | | B location - * | | | | */ - {0, J_1, L_1, K_1}, - {0, J_2, L_2, K_2}, - {0, J_3, L_3, K_3}, - {0, J_4, L_4, K_4}, - {0, J_5, L_5, K_5}, - {0, J_6, L_6, K_6}, - {0, J_7, L_7, K_7}, - {0, J_8, L_8, K_8}, - {0, J_9, L_9, K_9}, - {0, J_10, L_10, K_10}, - {0, J_11, L_11, K_11}, - {0, J_12, L_12, K_12}, - {0, J_13, L_13, K_13}, - {0, J_15, L_15, K_15}, - {0, J_16, L_16, K_16}, - {0, A_16, C_16, B_16}, - - {0, G_1, I_1, H_1}, - {0, G_2, I_2, H_2}, - {0, G_3, I_3, H_3}, - {0, G_4, I_4, H_4}, - {0, G_5, I_5, H_5}, - {0, G_6, I_6, H_6}, - {0, G_7, I_7, H_7}, - {0, G_8, I_8, H_8}, - {0, G_9, I_9, H_9}, - {0, G_10, I_10, H_10}, - {0, G_11, I_11, H_11}, - {0, G_12, I_12, H_12}, - {0, G_13, I_13, H_13}, - {0, G_14, I_14, H_14}, - {0, G_15, I_15, H_15}, - {0, G_16, I_16, H_16}, - {0, A_15, C_15, B_15}, - - {0, D_1, F_1, E_1}, - {0, D_2, F_2, E_2}, - {0, D_3, F_3, E_3}, - {0, D_4, F_4, E_4}, - {0, D_5, F_5, E_5}, - {0, D_6, F_6, E_6}, - {0, D_7, F_7, E_7}, - {0, D_8, F_8, E_8}, - {0, D_9, F_9, E_9}, - {0, D_10, F_10, E_10}, - {0, D_11, F_11, E_11}, - {0, D_12, F_12, E_12}, - {0, D_13, F_13, E_13}, - {0, D_14, F_14, E_14}, - {0, D_15, F_15, E_15}, - {0, D_16, F_16, E_16}, - {0, A_14, C_14, B_14}, - - {1, G_16, I_16, H_16}, - {1, G_15, I_15, H_15}, - {1, G_14, I_14, H_14}, - {1, G_13, I_13, H_13}, - {1, G_12, I_12, H_12}, - {1, G_11, I_11, H_11}, - {1, G_10, I_10, H_10}, - {1, G_9, I_9, H_9}, - {1, G_8, I_8, H_8}, - {1, G_7, I_7, H_7}, - {1, G_6, I_6, H_6}, - {1, G_5, I_5, H_5}, - {1, G_4, I_4, H_4}, - - {1, D_16, F_16, E_16}, - {1, D_15, F_15, E_15}, - {1, D_14, F_14, E_14}, - {1, D_13, F_13, E_13}, - {1, D_12, F_12, E_12}, - {1, D_11, F_11, E_11}, - {1, D_10, F_10, E_10}, - {1, D_9, F_9, E_9}, - {1, D_8, F_8, E_8}, - {1, D_7, F_7, E_7}, - {1, D_6, F_6, E_6}, - {1, D_5, F_5, E_5}, - {1, D_4, F_4, E_4}, - {1, D_1, F_1, E_1}, - - {1, A_16, C_16, B_16}, - {1, A_15, C_15, B_15}, - {1, A_14, C_14, B_14}, - {1, A_10, C_10, B_10}, - {1, A_6, C_6, B_6}, - {1, A_5, C_5, B_5}, - {1, A_4, C_4, B_4}, - {1, A_3, C_3, B_3}, - {1, A_2, C_2, B_2}, - {1, A_1, C_1, B_1}, - {1, J_1, L_1, K_1}, -}; - -#define __ NO_LED - -led_config_t g_led_config = { - { - // Key Matrix to LED Index - { 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, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49 }, - { 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, __, __, __, __ }, - { 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, __, __, 76, __ }, - { 77, 78, 79, __, __, __, 80, __, __, __, 81, 82, 83, 84, 85, 86, 87 }, - }, - { - // LED Index to Physical Position - {0, 0}, {16, 0}, {29, 0}, {42, 0}, {55, 0}, {71, 0}, {84, 0}, { 97, 0}, {110, 0}, {126, 0}, {139, 0}, {152, 0}, {165, 0}, {198, 0}, {211, 0}, {224, 0}, - {0,15}, {13,15}, {26,15}, {39,15}, {52,15}, {65,15}, {78,15}, { 91,15}, {104,15}, {117,15}, {130,15}, {143,15}, {156,15}, {176,15}, {198,15}, {211,15}, {224,15}, - {3,28}, {19,28}, {32,28}, {46,28}, {59,28}, {72,28}, {85,28}, { 98,28}, {111,28}, {124,28}, {137,28}, {150,28}, {163,28}, {180,34}, {198,28}, {211,28}, {224,28}, - {5,40}, {23,40}, {36,40}, {49,40}, {62,40}, {75,40}, {88,40}, {101,40}, {114,40}, {127,40}, {140,40}, {153,40}, {166,40}, - {2,52}, {16,52}, {29,52}, {42,52}, {55,52}, {68,52}, {81,52}, { 94,52}, {107,52}, {120,52}, {133,52}, {146,52}, {171,52}, {211,52}, - {2,64}, {18,64}, {34,64}, {83,64}, {132,64}, {148,64}, {164,64}, {180,64}, {198,64}, {211,64}, {224,64} - }, - { - // RGB LED Index to Flag - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 - } -}; - -// Default Color of Per Key RGB -#define DC_RED {HSV_RED} -#define DC_BLU {HSV_BLUE} -#define DC_YLW {HSV_YELLOW} - -HSV default_per_key_led[RGB_MATRIX_LED_COUNT] = { - DC_RED, DC_YLW, DC_YLW, DC_YLW, DC_YLW, DC_YLW, DC_YLW, DC_YLW, DC_YLW, DC_YLW, DC_YLW, DC_YLW, DC_YLW, DC_YLW, DC_YLW, DC_YLW, - DC_BLU, DC_BLU, DC_BLU, DC_BLU, DC_BLU, DC_BLU, DC_BLU, DC_BLU, DC_BLU, DC_BLU, DC_BLU, DC_BLU, DC_BLU, DC_YLW, DC_YLW, DC_YLW, DC_YLW, - DC_YLW, DC_BLU, DC_BLU, DC_BLU, DC_BLU, DC_BLU, DC_BLU, DC_BLU, DC_BLU, DC_BLU, DC_BLU, DC_BLU, DC_BLU, DC_RED, DC_YLW, DC_YLW, DC_YLW, - DC_YLW, DC_BLU, DC_BLU, DC_BLU, DC_BLU, DC_BLU, DC_BLU, DC_BLU, DC_BLU, DC_BLU, DC_BLU, DC_BLU, DC_BLU, - DC_YLW, DC_BLU, DC_BLU, DC_BLU, DC_BLU, DC_BLU, DC_BLU, DC_BLU, DC_BLU, DC_BLU, DC_BLU, DC_BLU, DC_YLW, DC_YLW, - DC_YLW, DC_YLW, DC_YLW, DC_BLU, DC_YLW, DC_YLW, DC_YLW, DC_YLW, DC_YLW, DC_YLW, DC_YLW -}; - -// Default mixed RGB region -uint8_t default_region[RGB_MATRIX_LED_COUNT] = { - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 -}; - -#endif diff --git a/keyboards/keychron/v3_max/iso_encoder/keymaps/default/keymap.c b/keyboards/keychron/v3_max/iso_encoder/keymaps/default/keymap.c deleted file mode 100644 index 838e0c97dd..0000000000 --- a/keyboards/keychron/v3_max/iso_encoder/keymaps/default/keymap.c +++ /dev/null @@ -1,76 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#include QMK_KEYBOARD_H -#include "keychron_common.h" - -enum layers { - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN, -}; -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_tkl_iso( - KC_ESC, KC_BRID, KC_BRIU, KC_MCTRL, KC_LNPAD, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_MUTE, KC_SNAP, KC_SIRI, RGB_MOD, - KC_GRV, 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_INS, KC_HOME, KC_PGUP, - 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_DEL, KC_END, KC_PGDN, - 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_NUHS, KC_ENT, - KC_LSFT, KC_NUBS, 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_LCTL, KC_LOPTN, KC_LCMMD, KC_SPC, KC_RCMMD, KC_ROPTN, MO(MAC_FN), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - - [MAC_FN] = LAYOUT_tkl_iso( - _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, RGB_TOG, _______, _______, RGB_TOG, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - - [WIN_BASE] = LAYOUT_tkl_iso( - KC_ESC, 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_MUTE, KC_PSCR, KC_CTANA, RGB_MOD, - KC_GRV, 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_INS, KC_HOME, KC_PGUP, - 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_DEL, KC_END, KC_PGDN, - 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_NUHS, KC_ENT, - KC_LSFT, KC_NUBS, 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_LCTL, KC_LCMD, KC_LALT, KC_SPC, KC_RALT, KC_RWIN, MO(WIN_FN), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - - [WIN_FN] = LAYOUT_tkl_iso( - _______, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, RGB_TOG, _______, _______, RGB_TOG, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), -}; - -#if defined(ENCODER_MAP_ENABLE) -const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][2] = { - [MAC_BASE] = {ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [MAC_FN] = {ENCODER_CCW_CW(RGB_VAD, RGB_VAI)}, - [WIN_BASE] = {ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [WIN_FN] = {ENCODER_CCW_CW(RGB_VAD, RGB_VAI)}, -}; -#endif // ENCODER_MAP_ENABLE - -// clang-format on -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - if (!process_record_keychron_common(keycode, record)) { - return false; - } - return true; -} diff --git a/keyboards/keychron/v3_max/iso_encoder/keymaps/via/keymap.c b/keyboards/keychron/v3_max/iso_encoder/keymaps/via/keymap.c deleted file mode 100644 index 02b9b55c73..0000000000 --- a/keyboards/keychron/v3_max/iso_encoder/keymaps/via/keymap.c +++ /dev/null @@ -1,76 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#include QMK_KEYBOARD_H -#include "keychron_common.h" - -enum layers { - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN, -}; -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_tkl_iso( - KC_ESC, KC_BRID, KC_BRIU, KC_MCTRL, KC_LNPAD, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_MUTE, KC_SNAP, KC_SIRI, RGB_MOD, - KC_GRV, 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_INS, KC_HOME, KC_PGUP, - 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_DEL, KC_END, KC_PGDN, - 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_NUHS, KC_ENT, - KC_LSFT, KC_NUBS, 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_LCTL, KC_LOPTN, KC_LCMMD, KC_SPC, KC_RCMMD, KC_ROPTN, MO(MAC_FN), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - - [MAC_FN] = LAYOUT_tkl_iso( - _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, RGB_TOG, _______, _______, RGB_TOG, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, BAT_LVL, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - - [WIN_BASE] = LAYOUT_tkl_iso( - KC_ESC, 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_MUTE, KC_PSCR, KC_CTANA, RGB_MOD, - KC_GRV, 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_INS, KC_HOME, KC_PGUP, - 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_DEL, KC_END, KC_PGDN, - 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_NUHS, KC_ENT, - KC_LSFT, KC_NUBS, 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_LCTL, KC_LCMD, KC_LALT, KC_SPC, KC_RALT, KC_RWIN, MO(WIN_FN), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - - [WIN_FN] = LAYOUT_tkl_iso( - _______, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, RGB_TOG, _______, _______, RGB_TOG, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, BAT_LVL, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), -}; - -#if defined(ENCODER_MAP_ENABLE) -const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][2] = { - [MAC_BASE] = {ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [MAC_FN] = {ENCODER_CCW_CW(RGB_VAD, RGB_VAI)}, - [WIN_BASE] = {ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [WIN_FN] = {ENCODER_CCW_CW(RGB_VAD, RGB_VAI)}, -}; -#endif // ENCODER_MAP_ENABLE - -// clang-format on -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - if (!process_record_keychron_common(keycode, record)) { - return false; - } - return true; -} diff --git a/keyboards/keychron/v3_max/iso_encoder/keymaps/via/rules.mk b/keyboards/keychron/v3_max/iso_encoder/keymaps/via/rules.mk deleted file mode 100644 index 1e5b99807c..0000000000 --- a/keyboards/keychron/v3_max/iso_encoder/keymaps/via/rules.mk +++ /dev/null @@ -1 +0,0 @@ -VIA_ENABLE = yes diff --git a/keyboards/keychron/v3_max/iso_encoder/rules.mk b/keyboards/keychron/v3_max/iso_encoder/rules.mk deleted file mode 100644 index 7ff128fa69..0000000000 --- a/keyboards/keychron/v3_max/iso_encoder/rules.mk +++ /dev/null @@ -1 +0,0 @@ -# This file intentionally left blank \ No newline at end of file diff --git a/keyboards/keychron/v3_max/jis_encoder/config.h b/keyboards/keychron/v3_max/jis_encoder/config.h deleted file mode 100644 index 635e9c9ee2..0000000000 --- a/keyboards/keychron/v3_max/jis_encoder/config.h +++ /dev/null @@ -1,53 +0,0 @@ -/* Copyright 2025 @ 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 . - */ - -#pragma once - -#ifdef RGB_MATRIX_ENABLE -/* RGB Matrix driver configuration */ -# define DRIVER_COUNT 2 -# define RGB_MATRIX_LED_COUNT 91 - -# define SPI_SCK_PIN A5 -# define SPI_MISO_PIN A6 -# define SPI_MOSI_PIN A7 - -# define DRIVER_CS_PINS \ - { B8, B9 } -# define SNLED23751_SPI_DIVISOR 16 -# define SPI_DRIVER SPID1 - -/* Set LED driver current */ -# define SNLED27351_CURRENT_TUNE \ - { 0x2c, 0x2c, 0x2c, 0x2c, 0x2c, 0x2c, 0x2c, 0x2c, 0x2c, 0x2c, 0x2c, 0x2c } - -/* Set to infinit, which is use in USB mode by default */ -# define RGB_MATRIX_TIMEOUT RGB_MATRIX_TIMEOUT_INFINITE - -/* Allow shutdown of led driver to save power */ -# define RGB_MATRIX_DRIVER_SHUTDOWN_ENABLE -/* Turn off backlight on low brightness to save power */ -# define RGB_MATRIX_BRIGHTNESS_TURN_OFF_VAL 32 - -/* Indications */ -# define CAPS_LOCK_INDEX 51 -# define LOW_BAT_IND_INDEX \ - { 82 } - -# define RGB_MATRIX_KEYPRESSES -# define RGB_MATRIX_FRAMEBUFFER_EFFECTS - -#endif diff --git a/keyboards/keychron/v3_max/jis_encoder/info.json b/keyboards/keychron/v3_max/jis_encoder/info.json deleted file mode 100644 index e0fae6792b..0000000000 --- a/keyboards/keychron/v3_max/jis_encoder/info.json +++ /dev/null @@ -1,126 +0,0 @@ -{ - "usb": { - "pid": "0x0935", - "device_version": "1.1.0" - }, - "matrix_pins": { - "cols": ["C6", "C7", "C8", "A14", "A15", "C10", "C11", "C13", "C14", "C15", "C0", "C1", "C2", "C3","A0", "A1", "A2","A3"], - "rows": ["C12", "D2", "B3", "B4", "B5", "B6"] - }, - "features": { - "encoder": true, - "encoder_map": true, - "rgb_matrix":true - }, - "encoder": { - "rotary": [ - { - "pin_a": "B15", - "pin_b": "B14" - } - ] - }, - "layouts": { - "LAYOUT_tkl_jis": { - "layout": [ - {"matrix": [0, 0], "x": 0, "y": 0}, - {"matrix": [0, 1], "x": 1.25, "y": 0}, - {"matrix": [0, 2], "x": 2.25, "y": 0}, - {"matrix": [0, 3], "x": 3.25, "y": 0}, - {"matrix": [0, 4], "x": 4.25, "y": 0}, - {"matrix": [0, 5], "x": 5.5, "y": 0}, - {"matrix": [0, 6], "x": 6.5, "y": 0}, - {"matrix": [0, 7], "x": 7.5, "y": 0}, - {"matrix": [0, 8], "x": 8.5, "y": 0}, - {"matrix": [0, 9], "x": 9.75, "y": 0}, - {"matrix": [0, 10], "x": 10.75, "y": 0}, - {"matrix": [0, 11], "x": 11.75, "y": 0}, - {"matrix": [0, 12], "x": 12.75, "y": 0}, - {"matrix": [0, 13], "x": 14, "y": 0}, - {"matrix": [0, 14], "x": 15.25, "y": 0}, - {"matrix": [0, 15], "x": 16.25, "y": 0}, - {"matrix": [0, 16], "x": 17.25, "y": 0}, - - {"matrix": [1, 0], "x": 0, "y": 1.25}, - {"matrix": [1, 1], "x": 1, "y": 1.25}, - {"matrix": [1, 2], "x": 2, "y": 1.25}, - {"matrix": [1, 3], "x": 3, "y": 1.25}, - {"matrix": [1, 4], "x": 4, "y": 1.25}, - {"matrix": [1, 5], "x": 5, "y": 1.25}, - {"matrix": [1, 6], "x": 6, "y": 1.25}, - {"matrix": [1, 7], "x": 7, "y": 1.25}, - {"matrix": [1, 8], "x": 8, "y": 1.25}, - {"matrix": [1, 9], "x": 9, "y": 1.25}, - {"matrix": [1, 10], "x": 10, "y": 1.25}, - {"matrix": [1, 11], "x": 11, "y": 1.25}, - {"matrix": [1, 12], "x": 12, "y": 1.25}, - {"matrix": [1, 13], "x": 13, "y": 1.25}, - {"matrix": [1, 17], "x": 14, "y": 1.25}, - {"matrix": [1, 14], "x": 15.25, "y": 1.25}, - {"matrix": [1, 15], "x": 16.25, "y": 1.25}, - {"matrix": [1, 16], "x": 17.25, "y": 1.25}, - - {"matrix": [2, 0], "x": 0, "y": 2.25, "w": 1.5}, - {"matrix": [2, 1], "x": 1.5, "y": 2.25}, - {"matrix": [2, 2], "x": 2.5, "y": 2.25}, - {"matrix": [2, 3], "x": 3.5, "y": 2.25}, - {"matrix": [2, 4], "x": 4.5, "y": 2.25}, - {"matrix": [2, 5], "x": 5.5, "y": 2.25}, - {"matrix": [2, 6], "x": 6.5, "y": 2.25}, - {"matrix": [2, 7], "x": 7.5, "y": 2.25}, - {"matrix": [2, 8], "x": 8.5, "y": 2.25}, - {"matrix": [2, 9], "x": 9.5, "y": 2.25}, - {"matrix": [2, 10], "x": 10.5, "y": 2.25}, - {"matrix": [2, 11], "x": 11.5, "y": 2.25}, - {"matrix": [2, 12], "x": 12.5, "y": 2.25}, - {"matrix": [2, 14], "x": 15.25, "y": 2.25}, - {"matrix": [2, 15], "x": 16.25, "y": 2.25}, - {"matrix": [2, 16], "x": 17.25, "y": 2.25}, - - {"matrix": [3, 0], "x": 0, "y": 3.25, "w": 1.75}, - {"matrix": [3, 1], "x": 1.75, "y": 3.25}, - {"matrix": [3, 2], "x": 2.75, "y": 3.25}, - {"matrix": [3, 3], "x": 3.75, "y": 3.25}, - {"matrix": [3, 4], "x": 4.75, "y": 3.25}, - {"matrix": [3, 5], "x": 5.75, "y": 3.25}, - {"matrix": [3, 6], "x": 6.75, "y": 3.25}, - {"matrix": [3, 7], "x": 7.75, "y": 3.25}, - {"matrix": [3, 8], "x": 8.75, "y": 3.25}, - {"matrix": [3, 9], "x": 9.75, "y": 3.25}, - {"matrix": [3, 10], "x": 10.75, "y": 3.25}, - {"matrix": [3, 11], "x": 11.75, "y": 3.25}, - {"matrix": [3, 12], "x": 12.75, "y": 3.25}, - {"matrix": [2, 13], "x": 13.75, "y": 2.25, "w": 1.25, "h": 2}, - - {"matrix": [4, 0], "x": 0, "y": 4.25, "w": 2.25}, - {"matrix": [4, 2], "x": 2.25, "y": 4.25}, - {"matrix": [4, 3], "x": 3.25, "y": 4.25}, - {"matrix": [4, 4], "x": 4.25, "y": 4.25}, - {"matrix": [4, 5], "x": 5.25, "y": 4.25}, - {"matrix": [4, 6], "x": 6.25, "y": 4.25}, - {"matrix": [4, 7], "x": 7.25, "y": 4.25}, - {"matrix": [4, 8], "x": 8.25, "y": 4.25}, - {"matrix": [4, 9], "x": 9.25, "y": 4.25}, - {"matrix": [4, 10], "x": 10.25, "y": 4.25}, - {"matrix": [4, 11], "x": 11.25, "y": 4.25}, - {"matrix": [4, 12], "x": 12.25, "y": 4.25}, - {"matrix": [4, 13], "x": 13.25, "y": 4.25, "w": 1.75}, - {"matrix": [4, 15], "x": 16.25, "y": 4.25}, - - {"matrix": [5, 0], "x": 0, "y": 5.25, "w": 1.25}, - {"matrix": [5, 1], "x": 1.25, "y": 5.25}, - {"matrix": [5, 2], "x": 2.25, "y": 5.25, "w": 1.25}, - {"matrix": [5, 3], "x": 3.5, "y": 5.25}, - {"matrix": [5, 6], "x": 4.5, "y": 5.25, "w": 4.5}, - {"matrix": [5, 9], "x": 9, "y": 5.25}, - {"matrix": [5, 10], "x": 10, "y": 5.25, "w": 1.25}, - {"matrix": [5, 11], "x": 11.25, "y": 5.25, "w": 1.25}, - {"matrix": [5, 12], "x": 12.5, "y": 5.25, "w": 1.25}, - {"matrix": [5, 13], "x": 13.75, "y": 5.25, "w": 1.25}, - {"matrix": [5, 14], "x": 15.25, "y": 5.25}, - {"matrix": [5, 15], "x": 16.25, "y": 5.25}, - {"matrix": [5, 16], "x": 17.25, "y": 5.25} - ] - } - } -} diff --git a/keyboards/keychron/v3_max/jis_encoder/jis_encoder.c b/keyboards/keychron/v3_max/jis_encoder/jis_encoder.c deleted file mode 100644 index ed9dc1769b..0000000000 --- a/keyboards/keychron/v3_max/jis_encoder/jis_encoder.c +++ /dev/null @@ -1,183 +0,0 @@ -/* Copyright 2025 @ 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/>. - */ - -#include "quantum.h" - -// clang-format off - -#ifdef RGB_MATRIX_ENABLE -const snled27351_led_t g_snled27351_leds[RGB_MATRIX_LED_COUNT] = { -/* Refer to SNLED27351 manual for these locations - * driver - * | R location - * | | G location - * | | | B location - * | | | | */ - {0, J_1, L_1, K_1}, - {0, J_2, L_2, K_2}, - {0, J_3, L_3, K_3}, - {0, J_4, L_4, K_4}, - {0, J_5, L_5, K_5}, - {0, J_6, L_6, K_6}, - {0, J_7, L_7, K_7}, - {0, J_8, L_8, K_8}, - {0, J_9, L_9, K_9}, - {0, J_10, L_10, K_10}, - {0, J_11, L_11, K_11}, - {0, J_12, L_12, K_12}, - {0, J_13, L_13, K_13}, - {0, J_15, L_15, K_15}, - {0, J_16, L_16, K_16}, - {0, A_16, C_16, B_16}, - - {0, G_1, I_1, H_1}, - {0, G_2, I_2, H_2}, - {0, G_3, I_3, H_3}, - {0, G_4, I_4, H_4}, - {0, G_5, I_5, H_5}, - {0, G_6, I_6, H_6}, - {0, G_7, I_7, H_7}, - {0, G_8, I_8, H_8}, - {0, G_9, I_9, H_9}, - {0, G_10, I_10, H_10}, - {0, G_11, I_11, H_11}, - {0, G_12, I_12, H_12}, - {0, G_13, I_13, H_13}, - {0, G_14, I_14, H_14}, - {0, A_13, C_13, B_13}, - {0, G_15, I_15, H_15}, - {0, G_16, I_16, H_16}, - {0, A_15, C_15, B_15}, - - {0, D_1, F_1, E_1}, - {0, D_2, F_2, E_2}, - {0, D_3, F_3, E_3}, - {0, D_4, F_4, E_4}, - {0, D_5, F_5, E_5}, - {0, D_6, F_6, E_6}, - {0, D_7, F_7, E_7}, - {0, D_8, F_8, E_8}, - {0, D_9, F_9, E_9}, - {0, D_10, F_10, E_10}, - {0, D_11, F_11, E_11}, - {0, D_12, F_12, E_12}, - {0, D_13, F_13, E_13}, - {0, D_14, F_14, E_14}, - {0, D_15, F_15, E_15}, - {0, D_16, F_16, E_16}, - {0, A_14, C_14, B_14}, - - {1, G_16, I_16, H_16}, - {1, G_15, I_15, H_15}, - {1, G_14, I_14, H_14}, - {1, G_13, I_13, H_13}, - {1, G_12, I_12, H_12}, - {1, G_11, I_11, H_11}, - {1, G_10, I_10, H_10}, - {1, G_9, I_9, H_9}, - {1, G_8, I_8, H_8}, - {1, G_7, I_7, H_7}, - {1, G_6, I_6, H_6}, - {1, G_5, I_5, H_5}, - {1, G_4, I_4, H_4}, - - {1, D_16, F_16, E_16}, - {1, D_14, F_14, E_14}, - {1, D_13, F_13, E_13}, - {1, D_12, F_12, E_12}, - {1, D_11, F_11, E_11}, - {1, D_10, F_10, E_10}, - {1, D_9, F_9, E_9}, - {1, D_8, F_8, E_8}, - {1, D_7, F_7, E_7}, - {1, D_6, F_6, E_6}, - {1, D_5, F_5, E_5}, - {1, D_4, F_4, E_4}, - {1, D_3, F_3, E_3}, - {1, D_1, F_1, E_1}, - - {1, A_16, C_16, B_16}, - {1, A_15, C_15, B_15}, - {1, A_14, C_14, B_14}, - {1, A_13, C_13, B_13}, - {1, A_10, C_10, B_10}, - {1, A_7, C_7, B_7}, - {1, A_6, C_6, B_6}, - {1, A_5, C_5, B_5}, - {1, A_4, C_4, B_4}, - {1, A_3, C_3, B_3}, - {1, A_2, C_2, B_2}, - {1, A_1, C_1, B_1}, - {1, J_1, L_1, K_1}, -}; - -#define __ NO_LED - -led_config_t g_led_config = { - { - // Key Matrix to LED Index - { 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, 31, 32, 33, 30 }, - { 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, __ }, - { 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, __, __, __, __, __ }, - { 64, __, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, __, 77, __, __ }, - { 78, 79, 80, 81, __, __, 82, __, __, 83, 84, 85, 86, 87, 88, 89, 90, __ }, - }, - { - // LED Index to Physical Position - {0, 0}, {16, 0}, {29, 0}, {42, 0}, {55, 0}, {71, 0}, {84, 0}, { 97, 0}, {110, 0}, {126, 0}, {139, 0}, {152, 0}, {165, 0}, {198, 0}, {211, 0}, {224, 0}, - {0,15}, {13,15}, {26,15}, {39,15}, {52,15}, {65,15}, {78,15}, { 91,15}, {104,15}, {117,15}, {130,15}, {143,15}, {156,15}, {165,15}, {176,15}, {198,15}, {211,15}, {224,15}, - {3,28}, {19,28}, {32,28}, {46,28}, {59,28}, {72,28}, {85,28}, { 98,28}, {111,28}, {124,28}, {137,28}, {150,28}, {163,28}, {179,32}, {198,28}, {211,28}, {224,28}, - {5,40}, {20,40}, {36,40}, {49,40}, {62,40}, {75,40}, {88,40}, {101,40}, {114,40}, {127,40}, {140,40}, {153,40}, {166,40}, - {8,52}, {29,52}, {42,52}, {55,52}, {68,52}, {81,52}, { 94,52}, {107,52}, {120,52}, {133,52}, {146,52}, {159,52}, {171,52}, {211,52}, - {2,64}, {18,64}, {34,64}, {46,64}, {83,64}, {110,64}, {132,64}, {148,64}, {164,64}, {176,64}, {198,64}, {211,64}, {224,64} - }, - { - // RGB LED Index to Flag - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 - } -}; - -// Default Color of Per Key RGB -#define DC_RED {HSV_RED} -#define DC_BLU {HSV_BLUE} -#define DC_YLW {HSV_YELLOW} - -HSV default_per_key_led[RGB_MATRIX_LED_COUNT] = { - DC_RED, DC_YLW, DC_YLW, DC_YLW, DC_YLW, DC_YLW, DC_YLW, DC_YLW, DC_YLW, DC_YLW, DC_YLW, DC_YLW, DC_YLW, DC_YLW, DC_YLW, DC_YLW, - DC_BLU, DC_BLU, DC_BLU, DC_BLU, DC_BLU, DC_BLU, DC_BLU, DC_BLU, DC_BLU, DC_BLU, DC_BLU, DC_BLU, DC_BLU, DC_BLU, DC_YLW, DC_YLW, DC_YLW, DC_YLW, - DC_YLW, DC_BLU, DC_BLU, DC_BLU, DC_BLU, DC_BLU, DC_BLU, DC_BLU, DC_BLU, DC_BLU, DC_BLU, DC_BLU, DC_BLU, DC_RED, DC_YLW, DC_YLW, DC_YLW, - DC_YLW, DC_BLU, DC_BLU, DC_BLU, DC_BLU, DC_BLU, DC_BLU, DC_BLU, DC_BLU, DC_BLU, DC_BLU, DC_BLU, DC_BLU, - DC_YLW, DC_BLU, DC_BLU, DC_BLU, DC_BLU, DC_BLU, DC_BLU, DC_BLU, DC_BLU, DC_BLU, DC_BLU, DC_BLU, DC_YLW, DC_YLW, - DC_YLW, DC_YLW, DC_YLW, DC_YLW, DC_BLU, DC_YLW, DC_YLW, DC_YLW, DC_YLW, DC_YLW, DC_YLW, DC_YLW, DC_YLW -}; - -// Default mixed RGB region -uint8_t default_region[RGB_MATRIX_LED_COUNT] = { - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 -}; - -#endif diff --git a/keyboards/keychron/v3_max/jis_encoder/keymaps/default/keymap.c b/keyboards/keychron/v3_max/jis_encoder/keymaps/default/keymap.c deleted file mode 100644 index 00f8d30103..0000000000 --- a/keyboards/keychron/v3_max/jis_encoder/keymaps/default/keymap.c +++ /dev/null @@ -1,76 +0,0 @@ -/* Copyright 2025 @ 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 . - */ - -#include QMK_KEYBOARD_H -#include "keychron_common.h" - -enum layers { - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN, -}; -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_tkl_jis( - KC_ESC, KC_BRID, KC_BRIU, KC_MCTRL, KC_LNPAD, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_MUTE, KC_SNAP, KC_SIRI, RGB_MOD, - KC_GRV, 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_INT3, KC_BSPC, KC_INS, KC_HOME, KC_PGUP, - 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_DEL, KC_END, KC_PGDN, - 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_BSLS, 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_INT1, KC_RSFT, KC_UP, - KC_LCTL, KC_LOPTN, KC_LCMMD, KC_LNG2, KC_SPC, KC_LNG1, KC_RCMMD, KC_ROPTN, MO(MAC_FN), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - - [MAC_FN] = LAYOUT_tkl_jis( - _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, RGB_TOG, _______, _______, RGB_TOG, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - - [WIN_BASE] = LAYOUT_tkl_jis( - KC_ESC, 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_MUTE, KC_PSCR, KC_CTANA, RGB_MOD, - KC_GRV, 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_INT3, KC_BSPC, KC_INS, KC_HOME, KC_PGUP, - 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_DEL, KC_END, KC_PGDN, - 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_BSLS, 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_INT1, KC_RSFT, KC_UP, - KC_LCTL, KC_LCMD, KC_LALT, KC_INT5, KC_SPC, KC_INT4, KC_RALT, KC_RWIN, MO(WIN_FN), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - - [WIN_FN] = LAYOUT_tkl_jis ( - _______, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, RGB_TOG, _______, _______, RGB_TOG, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), -}; - -#if defined(ENCODER_MAP_ENABLE) -const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][2] = { - [MAC_BASE] = {ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [MAC_FN] = {ENCODER_CCW_CW(RGB_VAD, RGB_VAI)}, - [WIN_BASE] = {ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [WIN_FN] = {ENCODER_CCW_CW(RGB_VAD, RGB_VAI)}, -}; -#endif // ENCODER_MAP_ENABLE - -// clang-format on -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - if (!process_record_keychron_common(keycode, record)) { - return false; - } - return true; -} \ No newline at end of file diff --git a/keyboards/keychron/v3_max/jis_encoder/keymaps/via/keymap.c b/keyboards/keychron/v3_max/jis_encoder/keymaps/via/keymap.c deleted file mode 100644 index 00f8d30103..0000000000 --- a/keyboards/keychron/v3_max/jis_encoder/keymaps/via/keymap.c +++ /dev/null @@ -1,76 +0,0 @@ -/* Copyright 2025 @ 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 . - */ - -#include QMK_KEYBOARD_H -#include "keychron_common.h" - -enum layers { - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN, -}; -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_tkl_jis( - KC_ESC, KC_BRID, KC_BRIU, KC_MCTRL, KC_LNPAD, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_MUTE, KC_SNAP, KC_SIRI, RGB_MOD, - KC_GRV, 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_INT3, KC_BSPC, KC_INS, KC_HOME, KC_PGUP, - 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_DEL, KC_END, KC_PGDN, - 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_BSLS, 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_INT1, KC_RSFT, KC_UP, - KC_LCTL, KC_LOPTN, KC_LCMMD, KC_LNG2, KC_SPC, KC_LNG1, KC_RCMMD, KC_ROPTN, MO(MAC_FN), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - - [MAC_FN] = LAYOUT_tkl_jis( - _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, RGB_TOG, _______, _______, RGB_TOG, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - - [WIN_BASE] = LAYOUT_tkl_jis( - KC_ESC, 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_MUTE, KC_PSCR, KC_CTANA, RGB_MOD, - KC_GRV, 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_INT3, KC_BSPC, KC_INS, KC_HOME, KC_PGUP, - 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_DEL, KC_END, KC_PGDN, - 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_BSLS, 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_INT1, KC_RSFT, KC_UP, - KC_LCTL, KC_LCMD, KC_LALT, KC_INT5, KC_SPC, KC_INT4, KC_RALT, KC_RWIN, MO(WIN_FN), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - - [WIN_FN] = LAYOUT_tkl_jis ( - _______, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, RGB_TOG, _______, _______, RGB_TOG, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), -}; - -#if defined(ENCODER_MAP_ENABLE) -const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][2] = { - [MAC_BASE] = {ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [MAC_FN] = {ENCODER_CCW_CW(RGB_VAD, RGB_VAI)}, - [WIN_BASE] = {ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [WIN_FN] = {ENCODER_CCW_CW(RGB_VAD, RGB_VAI)}, -}; -#endif // ENCODER_MAP_ENABLE - -// clang-format on -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - if (!process_record_keychron_common(keycode, record)) { - return false; - } - return true; -} \ No newline at end of file diff --git a/keyboards/keychron/v3_max/jis_encoder/keymaps/via/rules.mk b/keyboards/keychron/v3_max/jis_encoder/keymaps/via/rules.mk deleted file mode 100644 index 1e5b99807c..0000000000 --- a/keyboards/keychron/v3_max/jis_encoder/keymaps/via/rules.mk +++ /dev/null @@ -1 +0,0 @@ -VIA_ENABLE = yes diff --git a/keyboards/keychron/v3_max/jis_encoder/rules.mk b/keyboards/keychron/v3_max/jis_encoder/rules.mk deleted file mode 100644 index 7ff128fa69..0000000000 --- a/keyboards/keychron/v3_max/jis_encoder/rules.mk +++ /dev/null @@ -1 +0,0 @@ -# This file intentionally left blank \ No newline at end of file diff --git a/keyboards/keychron/v3_max/mcuconf.h b/keyboards/keychron/v3_max/mcuconf.h deleted file mode 100644 index 89294ee64b..0000000000 --- a/keyboards/keychron/v3_max/mcuconf.h +++ /dev/null @@ -1,37 +0,0 @@ -/* Copyright 2024 @ 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 - -#include_next - -#undef STM32_HSECLK -#define STM32_HSECLK 16000000 - -#undef STM32_PLLM_VALUE -#define STM32_PLLM_VALUE 8 - -#undef STM32_PLLN_VALUE -#define STM32_PLLN_VALUE 96 - -#undef STM32_PLLP_VALUE -#define STM32_PLLP_VALUE 4 - -#undef STM32_PLLQ_VALUE -#define STM32_PLLQ_VALUE 4 - -#undef STM32_SPI_USE_SPI1 -#define STM32_SPI_USE_SPI1 TRUE diff --git a/keyboards/keychron/v3_max/readme.md b/keyboards/keychron/v3_max/readme.md deleted file mode 100644 index 43c1c72965..0000000000 --- a/keyboards/keychron/v3_max/readme.md +++ /dev/null @@ -1,23 +0,0 @@ -# Keychron V3 Max - -![Keychron V3 Max](https://cdn.shopify.com/s/files/1/0059/0630/1017/files/Keychron-V3-Max-wireless-mechanical-keyboard.jpg?v=1708237297) - -A customizable wireless TLK keyboard. - -* Keyboard Maintainer: [Keychron](https://github.com/keychron) -* Hardware Supported: Keychron V3 Max -* Hardware Availability: [Keychron V3 Max QMK/VIA Wireless Custom Mechanical Keyboard](https://www.keychron.com/products/keychron-v3-max-qmk-via-wireless-custom-mechanical-keyboard?variant=40868403150937) - -Make example for this keyboard (after setting up your build environment): - - make keychron/v3_max/ansi_encoder:default - make keychron/v3_max/iso_encoder:default - -Flashing example for this keyboard: - - make keychron/v3_max/ansi_encoder:default:flash - make keychron/v3_max/iso_encoder:default:flash - -**Reset Key**: Toggle mode switch to "Cable", hold down the *Esc* key or reset button underneath space bar while connecting the USB cable, - -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). diff --git a/keyboards/keychron/v3_max/rules.mk b/keyboards/keychron/v3_max/rules.mk deleted file mode 100644 index 8ac262759e..0000000000 --- a/keyboards/keychron/v3_max/rules.mk +++ /dev/null @@ -1,7 +0,0 @@ -SNAP_CLICK_ENABLE=yes -KEYCHRON_RGB_ENABLE=yes - -include keyboards/keychron/common/wireless/wireless.mk -include keyboards/keychron/common/keychron_common.mk - -VPATH += $(TOP_DIR)/keyboards/keychron diff --git a/keyboards/keychron/v3_max/v3_max.c b/keyboards/keychron/v3_max/v3_max.c deleted file mode 100644 index 1276a291a2..0000000000 --- a/keyboards/keychron/v3_max/v3_max.c +++ /dev/null @@ -1,50 +0,0 @@ -/* Copyright 2024 @ 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/>. - */ - -#include "quantum.h" -#include "keychron_task.h" -#ifdef FACTORY_TEST_ENABLE -# include "factory_test.h" -# include "keychron_common.h" -#endif -#ifdef LK_WIRELESS_ENABLE -# include "lkbt51.h" -# include "wireless.h" -# include "keychron_wireless_common.h" -# include "battery.h" -#endif - -#ifdef DIP_SWITCH_ENABLE -bool dip_switch_update_kb(uint8_t index, bool active) { - if (index == 0) { - default_layer_set(1UL << (active ? 2 : 0)); - } - dip_switch_update_user(index, active); - - return true; -} -#endif - -void keyboard_post_init_kb(void) { - keychron_common_init(); - keyboard_post_init_user(); -} - -#ifdef LK_WIRELESS_ENABLE -bool lpm_is_kb_idle(void) { - return !factory_reset_indicating(); -} -#endif diff --git a/keyboards/keychron/v3_max/via_json/v3_max_ansi_encoder.json b/keyboards/keychron/v3_max/via_json/v3_max_ansi_encoder.json deleted file mode 100644 index 9e6417331c..0000000000 --- a/keyboards/keychron/v3_max/via_json/v3_max_ansi_encoder.json +++ /dev/null @@ -1,297 +0,0 @@ -{ - "name": "Keychron V3 Max ANSI Knob", - "vendorId": "0x3434", - "productId": "0x0933", - "keycodes": ["qmk_lighting"], - "menus": [ - { - "label": "Lighting", - "content": [ - { - "label": "Backlight", - "content": [ - { - "label": "Brightness", - "type": "range", - "options": [0, 255], - "content": ["id_qmk_rgb_matrix_brightness", 3, 1] - }, - { - "label": "Effect", - "type": "dropdown", - "content": ["id_qmk_rgb_matrix_effect", 3, 2], - "options": [ - ["None", 0], - ["Solid Color", 1], - ["Breathing", 2], - ["Band Spiral Val", 3], - ["Cycle All", 4], - ["Cycle Left Right", 5], - ["Cycle Up Down", 6], - ["Rainbow Moving Chevron", 7], - ["Cycle Out In", 8], - ["Cycle Out In Dual", 9], - ["Cycle Pinwheel", 10], - ["Cycle Spiral", 11], - ["Dual Beacon", 12], - ["Rainbow Beacon", 13], - ["Jellybean Raindrops", 14], - ["Pixel Rain", 15], - ["Typing Heatmap", 16], - ["Digital Rain", 17], - ["Reactive Simple", 18], - ["Reactive Multiwide", 19], - ["Reactive Multinexus", 20], - ["Splash", 21], - ["Solid Splash", 22], - ["Per Key RGB", 23], - ["Mix PGB", 24] - ] - }, - { - "showIf": "{id_qmk_rgb_matrix_effect} > 1 && {id_qmk_rgb_matrix_effect} < 23", - "label": "Effect Speed", - "type": "range", - "options": [0, 255], - "content": ["id_qmk_rgb_matrix_effect_speed", 3, 3] - }, - { - "showIf": "({id_qmk_rgb_matrix_effect} >= 1 && {id_qmk_rgb_matrix_effect} <= 3) || ({id_qmk_rgb_matrix_effect} >= 18 && {id_qmk_rgb_matrix_effect} <= 20) || {id_qmk_rgb_matrix_effect} == 22", - "label": "Color", - "type": "color", - "content": ["id_qmk_rgb_matrix_color", 3, 4] - } - ] - } - ] - } - ], - "customKeycodes": [ - {"name": "Left Option", "title": "Left Option", "shortName": "LOpt"}, - {"name": "Right Option", "title": "Right Option", "shortName": "ROpt"}, - {"name": "Left Cmd", "title": "Left Command", "shortName": "LCmd"}, - {"name": "Right Cmd", "title": "Right Command", "shortName": "RCmd"}, - {"name": "Misson Control", "title": "Misson Control in macOS", "shortName": "MCtl"}, - {"name": "Launch pad", "title": "Launch pad in macOS", "shortName": "LPad"}, - {"name": "Task View", "title": "Task View in Windows", "shortName": "Task"}, - {"name": "File Explorer", "title": "File Explorer in Windows", "shortName": "File"}, - {"name": "Screen shot", "title": "Screenshot in macOS", "shortName": "SShot"}, - {"name": "Cortana", "title": "Cortana in Windows", "shortName": "Cortana"}, - {"name": "Siri", "title": "Siri in macOS", "shortName": "Siri"}, - {"name": "Bluetooth Host 1", "title": "Bluetooth Host 1", "shortName": "BTH1"}, - {"name": "Bluetooth Host 2", "title": "Bluetooth Host 2", "shortName": "BTH2"}, - {"name": "Bluetooth Host 3", "title": "Bluetooth Host 3", "shortName": "BTH3"}, - {"name": "2.4G", "title": "2.4G", "shortName": "2.4G"}, - {"name": "Battery Level", "title": "Show battery level", "shortName": "Batt"} - ], - "matrix": {"rows": 6, "cols" : 17}, - "layouts": { - "keymap": [ - [ - { - "c": "#777777" - }, - "0,0", - { - "x": 0.25, - "c": "#cccccc" - }, - "0,1", - "0,2", - "0,3", - "0,4", - { - "x": 0.25, - "c": "#aaaaaa" - }, - "0,5", - "0,6", - "0,7", - "0,8", - { - "x": 0.25, - "c": "#cccccc" - }, - "0,9", - "0,10", - "0,11", - "0,12", - { - "x": 0.25, - "c": "#aaaaaa" - }, - "0,13\n\n\n\n\n\n\n\n\ne0", - { - "x": 0.25 - }, - "0,14", - "0,15", - "0,16" - ], - [ - { - "y": 0.25, - "c": "#aaaaaa" - }, - "1,0", - { - "c": "#cccccc" - }, - "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": 2, - "c": "#aaaaaa" - }, - "1,13", - { - "x": 0.25 - }, - "1,14", - "1,15", - "1,16" - ], - [ - { - "w": 1.5, - "c": "#aaaaaa" - }, - "2,0", - { - "c": "#cccccc" - }, - "2,1", - "2,2", - "2,3", - "2,4", - "2,5", - "2,6", - "2,7", - "2,8", - "2,9", - "2,10", - "2,11", - "2,12", - { - "w": 1.5, - "c": "#aaaaaa" - }, - "2,13", - { - "x": 0.25 - }, - "2,14", - "2,15", - "2,16" - ], - [ - { - "w": 1.75, - "c": "#aaaaaa" - }, - "3,0", - { - "c": "#cccccc" - }, - "3,1", - "3,2", - "3,3", - "3,4", - "3,5", - "3,6", - "3,7", - "3,8", - "3,9", - "3,10", - "3,11", - { - "w": 2.25, - "c": "#777777" - }, - "3,12" - ], - [ - { - "w": 2.25, - "c": "#aaaaaa" - }, - "4,0", - { - "c": "#cccccc" - }, - "4,2", - "4,3", - "4,4", - "4,5", - "4,6", - "4,7", - "4,8", - "4,9", - "4,10", - "4,11", - { - "w": 2.75, - "c": "#aaaaaa" - }, - "4,12", - { - "x": 1.25 - }, - "4,15" - ], - [ - { - "w": 1.25, - "c": "#aaaaaa" - }, - "5,0", - { - "w": 1.25 - }, - "5,1", - { - "w": 1.25 - }, - "5,2", - { - "w": 6.25, - "c": "#cccccc" - }, - "5,6", - { - "w": 1.25, - "c": "#aaaaaa" - }, - "5,10", - { - "w": 1.25 - }, - "5,11", - { - "w": 1.25 - }, - "5,12", - { - "w": 1.25 - }, - "5,13", - { - "x": 0.25 - }, - "5,14", - "5,15", - "5,16" - ] - ] - } -} diff --git a/keyboards/keychron/v3_max/via_json/v3_max_iso_encoder.json b/keyboards/keychron/v3_max/via_json/v3_max_iso_encoder.json deleted file mode 100644 index 74a7a1dafa..0000000000 --- a/keyboards/keychron/v3_max/via_json/v3_max_iso_encoder.json +++ /dev/null @@ -1,300 +0,0 @@ -{ - "name": "Keychron V3 Max ISO Knob", - "vendorId": "0x3434", - "productId": "0x0934", - "keycodes": ["qmk_lighting"], - "menus": [ - { - "label": "Lighting", - "content": [ - { - "label": "Backlight", - "content": [ - { - "label": "Brightness", - "type": "range", - "options": [0, 255], - "content": ["id_qmk_rgb_matrix_brightness", 3, 1] - }, - { - "label": "Effect", - "type": "dropdown", - "content": ["id_qmk_rgb_matrix_effect", 3, 2], - "options": [ - ["None", 0], - ["Solid Color", 1], - ["Breathing", 2], - ["Band Spiral Val", 3], - ["Cycle All", 4], - ["Cycle Left Right", 5], - ["Cycle Up Down", 6], - ["Rainbow Moving Chevron", 7], - ["Cycle Out In", 8], - ["Cycle Out In Dual", 9], - ["Cycle Pinwheel", 10], - ["Cycle Spiral", 11], - ["Dual Beacon", 12], - ["Rainbow Beacon", 13], - ["Jellybean Raindrops", 14], - ["Pixel Rain", 15], - ["Typing Heatmap", 16], - ["Digital Rain", 17], - ["Reactive Simple", 18], - ["Reactive Multiwide", 19], - ["Reactive Multinexus", 20], - ["Splash", 21], - ["Solid Splash", 22], - ["Per Key RGB", 23], - ["Mix PGB", 24] - ] - }, - { - "showIf": "{id_qmk_rgb_matrix_effect} > 1 && {id_qmk_rgb_matrix_effect} < 23", - "label": "Effect Speed", - "type": "range", - "options": [0, 255], - "content": ["id_qmk_rgb_matrix_effect_speed", 3, 3] - }, - { - "showIf": "({id_qmk_rgb_matrix_effect} >= 1 && {id_qmk_rgb_matrix_effect} <= 3) || ({id_qmk_rgb_matrix_effect} >= 18 && {id_qmk_rgb_matrix_effect} <= 20) || {id_qmk_rgb_matrix_effect} == 22", - "label": "Color", - "type": "color", - "content": ["id_qmk_rgb_matrix_color", 3, 4] - } - ] - } - ] - } - ], - "customKeycodes": [ - {"name": "Left Option", "title": "Left Option", "shortName": "LOpt"}, - {"name": "Right Option", "title": "Right Option", "shortName": "ROpt"}, - {"name": "Left Cmd", "title": "Left Command", "shortName": "LCmd"}, - {"name": "Right Cmd", "title": "Right Command", "shortName": "RCmd"}, - {"name": "Misson Control", "title": "Misson Control in macOS", "shortName": "MCtl"}, - {"name": "Launch pad", "title": "Launch pad in macOS", "shortName": "LPad"}, - {"name": "Task View", "title": "Task View in Windows", "shortName": "Task"}, - {"name": "File Explorer", "title": "File Explorer in Windows", "shortName": "File"}, - {"name": "Screen shot", "title": "Screenshot in macOS", "shortName": "SShot"}, - {"name": "Cortana", "title": "Cortana in Windows", "shortName": "Cortana"}, - {"name": "Siri", "title": "Siri in macOS", "shortName": "Siri"}, - {"name": "Bluetooth Host 1", "title": "Bluetooth Host 1", "shortName": "BTH1"}, - {"name": "Bluetooth Host 2", "title": "Bluetooth Host 2", "shortName": "BTH2"}, - {"name": "Bluetooth Host 3", "title": "Bluetooth Host 3", "shortName": "BTH3"}, - {"name": "2.4G", "title": "2.4G", "shortName": "2.4G"}, - {"name": "Battery Level", "title": "Show battery level", "shortName": "Batt"} - ], - "matrix": {"rows": 6, "cols" : 17}, - "layouts": { - "keymap": [ - [ - { - "c": "#777777" - }, - "0,0", - { - "x": 0.25, - "c": "#cccccc" - }, - "0,1", - "0,2", - "0,3", - "0,4", - { - "x": 0.25, - "c": "#aaaaaa" - }, - "0,5", - "0,6", - "0,7", - "0,8", - { - "x": 0.25, - "c": "#cccccc" - }, - "0,9", - "0,10", - "0,11", - "0,12", - { - "x": 0.25, - "c": "#aaaaaa" - }, - "0,13\n\n\n\n\n\n\n\n\ne0", - { - "x": 0.25 - }, - "0,14", - "0,15", - "0,16" - ], - [ - { - "y": 0.25, - "c": "#aaaaaa" - }, - "1,0", - { - "c": "#cccccc" - }, - "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": 2, - "c": "#aaaaaa" - }, - "1,13", - { - "x": 0.25 - }, - "1,14", - "1,15", - "1,16" - ], - [ - { - "w": 1.5, - "c": "#aaaaaa" - }, - "2,0", - { - "c": "#cccccc" - }, - "2,1", - "2,2", - "2,3", - "2,4", - "2,5", - "2,6", - "2,7", - "2,8", - "2,9", - "2,10", - "2,11", - "2,12", - { - "x": 0.25, - "w": 1.25, - "h": 2, - "x2": -0.25, - "w2": 1.5, - "h2": 1, - "c": "#777777" - }, - "2,13", - { - "x": 0.25, - "c": "#aaaaaa" - }, - "2,14", - "2,15", - "2,16" - ], - [ - { - "w": 1.75, - "c": "#aaaaaa" - }, - "3,0", - { - "c": "#cccccc" - }, - "3,1", - "3,2", - "3,3", - "3,4", - "3,5", - "3,6", - "3,7", - "3,8", - "3,9", - "3,10", - "3,11", - "3,12" - ], - [ - { - "w": 1.25, - "c": "#aaaaaa" - }, - "4,0", - { - "c": "#cccccc" - }, - "4,1", - "4,2", - "4,3", - "4,4", - "4,5", - "4,6", - "4,7", - "4,8", - "4,9", - "4,10", - "4,11", - { - "w": 2.75, - "c": "#aaaaaa" - }, - "4,12", - { - "x": 1.25 - }, - "4,15" - ], - [ - { - "w": 1.25, - "c": "#aaaaaa" - }, - "5,0", - { - "w": 1.25 - }, - "5,1", - { - "w": 1.25 - }, - "5,2", - { - "w": 6.25, - "c": "#cccccc" - }, - "5,6", - { - "w": 1.25, - "c": "#aaaaaa" - }, - "5,10", - { - "w": 1.25 - }, - "5,11", - { - "w": 1.25 - }, - "5,12", - { - "w": 1.25 - }, - "5,13", - { - "x": 0.25 - }, - "5,14", - "5,15", - "5,16" - ] - ] - } -} diff --git a/keyboards/keychron/v3_max/via_json/v3_max_jis_encoder.json b/keyboards/keychron/v3_max/via_json/v3_max_jis_encoder.json deleted file mode 100644 index 2d9f48993f..0000000000 --- a/keyboards/keychron/v3_max/via_json/v3_max_jis_encoder.json +++ /dev/null @@ -1,296 +0,0 @@ -{ - "name": "Keychron V3 Max JIS Knob", - "vendorId": "0x3434", - "productId": "0x0935", - "keycodes": ["qmk_lighting"], - "menus": [ - { - "label": "Lighting", - "content": [ - { - "label": "Backlight", - "content": [ - { - "label": "Brightness", - "type": "range", - "options": [0, 255], - "content": ["id_qmk_rgb_matrix_brightness", 3, 1] - }, - { - "label": "Effect", - "type": "dropdown", - "content": ["id_qmk_rgb_matrix_effect", 3, 2], - "options": [ - ["None", 0], - ["Solid Color", 1], - ["Breathing", 2], - ["Band Spiral Val", 3], - ["Cycle All", 4], - ["Cycle Left Right", 5], - ["Cycle Up Down", 6], - ["Rainbow Moving Chevron", 7], - ["Cycle Out In", 8], - ["Cycle Out In Dual", 9], - ["Cycle Pinwheel", 10], - ["Cycle Spiral", 11], - ["Dual Beacon", 12], - ["Rainbow Beacon", 13], - ["Jellybean Raindrops", 14], - ["Pixel Rain", 15], - ["Typing Heatmap", 16], - ["Digital Rain", 17], - ["Reactive Simple", 18], - ["Reactive Multiwide", 19], - ["Reactive Multinexus", 20], - ["Splash", 21], - ["Solid Splash", 22], - ["Per Key RGB", 23], - ["Mix PGB", 24] - ] - }, - { - "showIf": "{id_qmk_rgb_matrix_effect} > 1 && {id_qmk_rgb_matrix_effect} < 23", - "label": "Effect Speed", - "type": "range", - "options": [0, 255], - "content": ["id_qmk_rgb_matrix_effect_speed", 3, 3] - }, - { - "showIf": "({id_qmk_rgb_matrix_effect} >= 1 && {id_qmk_rgb_matrix_effect} <= 3) || ({id_qmk_rgb_matrix_effect} >= 18 && {id_qmk_rgb_matrix_effect} <= 20) || {id_qmk_rgb_matrix_effect} == 22", - "label": "Color", - "type": "color", - "content": ["id_qmk_rgb_matrix_color", 3, 4] - } - ] - } - ] - } - ], - "customKeycodes": [ - {"name": "Left Option", "title": "Left Option", "shortName": "LOpt"}, - {"name": "Right Option", "title": "Right Option", "shortName": "ROpt"}, - {"name": "Left Cmd", "title": "Left Command", "shortName": "LCmd"}, - {"name": "Right Cmd", "title": "Right Command", "shortName": "RCmd"}, - {"name": "Misson Control", "title": "Misson Control in macOS", "shortName": "MCtl"}, - {"name": "Launch pad", "title": "Launch pad in macOS", "shortName": "LPad"}, - {"name": "Task View", "title": "Task View in Windows", "shortName": "Task"}, - {"name": "File Explorer", "title": "File Explorer in Windows", "shortName": "File"}, - {"name": "Screen shot", "title": "Screenshot in macOS", "shortName": "SShot"}, - {"name": "Cortana", "title": "Cortana in Windows", "shortName": "Cortana"}, - {"name": "Siri", "title": "Siri in macOS", "shortName": "Siri"}, - {"name": "Bluetooth Host 1", "title": "Bluetooth Host 1", "shortName": "BTH1"}, - {"name": "Bluetooth Host 2", "title": "Bluetooth Host 2", "shortName": "BTH2"}, - {"name": "Bluetooth Host 3", "title": "Bluetooth Host 3", "shortName": "BTH3"}, - {"name": "2.4G", "title": "2.4G", "shortName": "2.4G"}, - {"name": "Battery Level", "title": "Show battery level", "shortName": "Batt"} - ], - "matrix": {"rows": 6, "cols" : 18}, - "layouts": { - "keymap": [ - [ - { - "c": "#777777" - }, - "0,0", - { - "x": 0.25, - "c": "#cccccc" - }, - "0,1", - "0,2", - "0,3", - "0,4", - { - "x": 0.25, - "c": "#aaaaaa" - }, - "0,5", - "0,6", - "0,7", - "0,8", - { - "x": 0.25, - "c": "#cccccc" - }, - "0,9", - "0,10", - "0,11", - "0,12", - { - "x": 0.25, - "c": "#aaaaaa" - }, - "0,13\n\n\n\n\n\n\n\n\ne0", - { - "x": 0.25 - }, - "0,14", - "0,15", - "0,16" - ], - [ - { - "y": 0.25, - "c": "#cccccc" - }, - "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", - "1,13", - "1,17", - { - "x": 0.25, - "c": "#aaaaaa" - }, - "1,14", - "1,15", - "1,16" - ], - [ - { - "w": 1.5, - "c": "#aaaaaa" - }, - "2,0", - { - "c": "#cccccc" - }, - "2,1", - "2,2", - "2,3", - "2,4", - "2,5", - "2,6", - "2,7", - "2,8", - "2,9", - "2,10", - "2,11", - "2,12", - { - "x": 0.25, - "w": 1.25, - "h": 2, - "x2": -0.25, - "w2": 1.5, - "h2": 1, - "c": "#777777" - }, - "2,13", - { - "x": 0.25, - "c": "#aaaaaa" - }, - "2,14", - "2,15", - "2,16" - ], - [ - { - "w": 1.75 - }, - "3,0", - { - "c": "#cccccc" - }, - "3,1", - "3,2", - "3,3", - "3,4", - "3,5", - "3,6", - "3,7", - "3,8", - "3,9", - "3,10", - "3,11", - "3,12" - ], - [ - { - "w": 2.25, - "c": "#aaaaaa" - }, - "4,0", - { - "c": "#cccccc" - }, - "4,2", - "4,3", - "4,4", - "4,5", - "4,6", - "4,7", - "4,8", - "4,9", - "4,10", - "4,11", - "4,12", - { - "w": 1.75, - "c": "#aaaaaa" - }, - "4,13", - { - "x": 1.25 - }, - "4,15" - ], - [ - { - "w": 1.25, - "c": "#aaaaaa" - }, - "5,0", - "5,1", - { - "w": 1.25 - }, - "5,2", - "5,3", - { - "w": 4.5, - "c": "#cccccc" - }, - "5,6", - { - "c": "#aaaaaa" - }, - "5,9", - { - "w": 1.25 - }, - "5,10", - { - "w": 1.25 - }, - "5,11", - { - "w": 1.25 - }, - "5,12", - { - "w": 1.25 - }, - "5,13", - { - "x": 0.25 - }, - "5,14", - "5,15", - "5,16" - ] - ] - } - -} diff --git a/keyboards/keychron/v4_max/ansi/ansi.c b/keyboards/keychron/v4_max/ansi/ansi.c deleted file mode 100644 index 285ab24c5c..0000000000 --- a/keyboards/keychron/v4_max/ansi/ansi.c +++ /dev/null @@ -1,124 +0,0 @@ -/* Copyright 2024 @ 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/>. - */ - -#include "quantum.h" - -// clang-format off - -#ifdef RGB_MATRIX_ENABLE -const snled27351_led_t g_snled27351_leds[RGB_MATRIX_LED_COUNT] = { -/* Refer to SNLED27351 manual for these locations - * driver - * | R location - * | | G location - * | | | B location - * | | | | */ - {0, G_1, I_1, H_1}, - {0, G_2, I_2, H_2}, - {0, G_3, I_3, H_3}, - {0, G_4, I_4, H_4}, - {0, G_5, I_5, H_5}, - {0, G_6, I_6, H_6}, - {0, G_7, I_7, H_7}, - {0, G_8, I_8, H_8}, - {0, G_9, I_9, H_9}, - {0, G_10, I_10, H_10}, - {0, G_11, I_11, H_11}, - {0, G_12, I_12, H_12}, - {0, G_13, I_13, H_13}, - {0, G_14, I_14, H_14}, - - {0, D_1, F_1, E_1}, - {0, D_2, F_2, E_2}, - {0, D_3, F_3, E_3}, - {0, D_4, F_4, E_4}, - {0, D_5, F_5, E_5}, - {0, D_6, F_6, E_6}, - {0, D_7, F_7, E_7}, - {0, D_8, F_8, E_8}, - {0, D_9, F_9, E_9}, - {0, D_10, F_10, E_10}, - {0, D_11, F_11, E_11}, - {0, D_12, F_12, E_12}, - {0, D_13, F_13, E_13}, - {0, D_14, F_14, E_14}, - - {0, A_1, C_1, B_1}, - {0, A_2, C_2, B_2}, - {0, A_3, C_3, B_3}, - {0, A_4, C_4, B_4}, - {0, A_5, C_5, B_5}, - {0, A_6, C_6, B_6}, - {0, A_7, C_7, B_7}, - {0, A_8, C_8, B_8}, - {0, A_9, C_9, B_9}, - {0, A_10, C_10, B_10}, - {0, A_11, C_11, B_11}, - {0, A_12, C_12, B_12}, - {0, A_14, C_14, B_14}, - - {1, D_14, F_14, E_14}, - {1, D_12, F_12, E_12}, - {1, D_11, F_11, E_11}, - {1, D_10, F_10, E_10}, - {1, D_9, F_9, E_9 }, - {1, D_8, F_8, E_8 }, - {1, D_7, F_7, E_7 }, - {1, D_6, F_6, E_6 }, - {1, D_5, F_5, E_5 }, - {1, D_4, F_4, E_4 }, - {1, D_3, F_3, E_3}, - {1, D_1, F_1, E_1}, - - {1, A_14, C_14, B_14}, - {1, A_13, C_13, B_13}, - {1, A_12, C_12, B_12}, - {1, A_8, C_8, B_8}, - {1, A_4, C_4, B_4}, - {1, A_3, C_3, B_3}, - {1, A_2, C_2, B_2}, - {1, A_1, C_1, B_1} -}; - -#define __ NO_LED - -led_config_t g_led_config = { - { - // Key Matrix to LED Index - { 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, __, 40 }, - { 41, __, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, __, 52 }, - { 53, 54, 55, __, __, __, 56, __, __, __, 57, 58, 59, 60 } - }, - { - // LED Index to Physical Position - {0, 0}, {13, 0}, {26, 0}, {35, 0}, {46, 0}, {57, 0}, {68, 0}, {79, 0}, {90, 0}, {101, 0}, {112, 0}, {123, 0}, {134, 0}, {145, 0}, - {7,16}, {20,16}, {30,16}, {41,16}, {52,16}, {63,16}, {74,16}, {85,16}, {96,16}, {107,16}, {118,16}, {129,16}, {140,16}, {149,16}, - {7,32}, {21,32}, {32,32}, {43,32}, {54,32}, {65,32}, {76,32}, {87,32}, {98,32}, {109,32}, {120,32}, {132,32}, {142,32}, - {8,48}, {28,48}, {37,48}, {48,48}, {59,48}, {70,48}, {81,48}, {92,48}, {103,48}, {114,48}, {125,48}, {142,48}, - {2,64}, {15,64}, {28,64}, {72,64}, {114,64}, {125,64}, {135,64}, {143,64} - }, - { - // RGB LED Index to Flag - 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, 4, - 8, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1, - 1, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1, - 1, 1, 1, 4, 1, 1, 1, 1 - } -}; -#endif diff --git a/keyboards/keychron/v4_max/ansi/config.h b/keyboards/keychron/v4_max/ansi/config.h deleted file mode 100644 index 814f02c8e7..0000000000 --- a/keyboards/keychron/v4_max/ansi/config.h +++ /dev/null @@ -1,65 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#pragma once - -#ifdef RGB_MATRIX_ENABLE -/* RGB Matrix driver configuration */ -# define DRIVER_COUNT 2 -# define RGB_MATRIX_LED_COUNT 61 - -# define SPI_SCK_PIN A5 -# define SPI_MISO_PIN A6 -# define SPI_MOSI_PIN A7 - -# define DRIVER_CS_PINS \ - { B8, B9 } -# define SNLED23751_SPI_DIVISOR 16 -# define SPI_DRIVER SPID1 - -/* Scan phase of led driver set as MSKPHASE_9CHANNEL(defined as 0x03 in snled27351.h) */ -# define SNLED27351_PHASE_CHANNEL MSKPHASE_9CHANNEL - -/* Set LED driver current */ -# define SNLED27351_CURRENT_TUNE \ - { 0x36, 0x36, 0x36, 0x36, 0x36, 0x36, 0x36, 0x36, 0x36, 0x36, 0x36, 0x36 } - -/* Set to infinit, which is use in USB mode by default */ -# define RGB_MATRIX_TIMEOUT RGB_MATRIX_TIMEOUT_INFINITE - -/* Allow shutdown of led driver to save power */ -# define RGB_MATRIX_DRIVER_SHUTDOWN_ENABLE -/* Turn off backlight on low brightness to save power */ -# define RGB_MATRIX_BRIGHTNESS_TURN_OFF_VAL 32 - -/* Indications */ -# define BT_HOST_LED_MATRIX_LIST \ - { 15, 16, 17 } - -# define P2P4G_HOST_LED_MATRIX_LIST \ - { 18 } - -# define BAT_LEVEL_LED_LIST \ - { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 } - -# define CAPS_LOCK_INDEX 28 -# define LOW_BAT_IND_INDEX \ - { 56 } - -# define RGB_MATRIX_KEYPRESSES -# define RGB_MATRIX_FRAMEBUFFER_EFFECTS - -#endif diff --git a/keyboards/keychron/v4_max/ansi/info.json b/keyboards/keychron/v4_max/ansi/info.json deleted file mode 100644 index 7189f699ee..0000000000 --- a/keyboards/keychron/v4_max/ansi/info.json +++ /dev/null @@ -1,77 +0,0 @@ -{ - "usb": { - "pid": "0x0940", - "device_version": "1.0.0" - }, - "layouts": { - "LAYOUT_ansi_61": { - "layout": [ - {"matrix": [0, 0], "x": 0, "y": 0}, - {"matrix": [0, 1], "x": 1, "y": 0}, - {"matrix": [0, 2], "x": 2, "y": 0}, - {"matrix": [0, 3], "x": 3, "y": 0}, - {"matrix": [0, 4], "x": 4, "y": 0}, - {"matrix": [0, 5], "x": 5, "y": 0}, - {"matrix": [0, 6], "x": 6, "y": 0}, - {"matrix": [0, 7], "x": 7, "y": 0}, - {"matrix": [0, 8], "x": 8, "y": 0}, - {"matrix": [0, 9], "x": 9, "y": 0}, - {"matrix": [0, 10], "x": 10, "y": 0}, - {"matrix": [0, 11], "x": 11, "y": 0}, - {"matrix": [0, 12], "x": 12, "y": 0}, - {"matrix": [0, 13], "x": 13, "y": 0, "w": 2}, - - {"matrix": [1, 0], "x": 0, "y": 1, "w": 1.5}, - {"matrix": [1, 1], "x": 1.5, "y": 1}, - {"matrix": [1, 2], "x": 2.5, "y": 1}, - {"matrix": [1, 3], "x": 3.5, "y": 1}, - {"matrix": [1, 4], "x": 4.5, "y": 1}, - {"matrix": [1, 5], "x": 5.5, "y": 1}, - {"matrix": [1, 6], "x": 6.5, "y": 1}, - {"matrix": [1, 7], "x": 7.5, "y": 1}, - {"matrix": [1, 8], "x": 8.5, "y": 1}, - {"matrix": [1, 9], "x": 9.5, "y": 1}, - {"matrix": [1, 10], "x": 10.5, "y": 1}, - {"matrix": [1, 11], "x": 11.5, "y": 1}, - {"matrix": [1, 12], "x": 12.5, "y": 1}, - {"matrix": [1, 13], "x": 13.5, "y": 1, "w": 1.5}, - - {"matrix": [2, 0], "x": 0, "y": 2, "w": 1.75}, - {"matrix": [2, 1], "x": 1.75, "y": 2}, - {"matrix": [2, 2], "x": 2.75, "y": 2}, - {"matrix": [2, 3], "x": 3.75, "y": 2}, - {"matrix": [2, 4], "x": 4.75, "y": 2}, - {"matrix": [2, 5], "x": 5.75, "y": 2}, - {"matrix": [2, 6], "x": 6.75, "y": 2}, - {"matrix": [2, 7], "x": 7.75, "y": 2}, - {"matrix": [2, 8], "x": 8.75, "y": 2}, - {"matrix": [2, 9], "x": 9.75, "y": 2}, - {"matrix": [2, 10], "x": 10.75, "y": 2}, - {"matrix": [2, 11], "x": 11.75, "y": 2}, - {"matrix": [2, 13], "x": 12.75, "y": 2, "w": 2.25}, - - {"matrix": [3, 0], "x": 0, "y": 3, "w": 2.25}, - {"matrix": [3, 2], "x": 2.25, "y": 3}, - {"matrix": [3, 3], "x": 3.25, "y": 3}, - {"matrix": [3, 4], "x": 4.25, "y": 3}, - {"matrix": [3, 5], "x": 5.25, "y": 3}, - {"matrix": [3, 6], "x": 6.25, "y": 3}, - {"matrix": [3, 7], "x": 7.25, "y": 3}, - {"matrix": [3, 8], "x": 8.25, "y": 3}, - {"matrix": [3, 9], "x": 9.25, "y": 3}, - {"matrix": [3, 10], "x": 10.25, "y": 3}, - {"matrix": [3, 11], "x": 11.25, "y": 3}, - {"matrix": [3, 13], "x": 12.25, "y": 3, "w": 2.75}, - - {"matrix": [4, 0], "x": 0, "y": 4, "w": 1.25}, - {"matrix": [4, 1], "x": 1.25, "y": 4, "w": 1.25}, - {"matrix": [4, 2], "x": 2.5, "y": 4, "w": 1.25}, - {"matrix": [4, 6], "x": 3.75, "y": 4, "w": 6.25}, - {"matrix": [4, 10], "x": 10, "y": 4, "w": 1.25}, - {"matrix": [4, 11], "x": 11.25, "y": 4, "w": 1.25}, - {"matrix": [4, 12], "x": 12.5, "y": 4, "w": 1.25}, - {"matrix": [4, 13], "x": 13.75, "y": 4, "w": 1.25} - ] - } - } -} diff --git a/keyboards/keychron/v4_max/ansi/keymaps/default/keymap.c b/keyboards/keychron/v4_max/ansi/keymaps/default/keymap.c deleted file mode 100644 index a886e58f0a..0000000000 --- a/keyboards/keychron/v4_max/ansi/keymaps/default/keymap.c +++ /dev/null @@ -1,72 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#include QMK_KEYBOARD_H -#include "keychron_common.h" - -enum layers { - MAC_BASE, - WIN_BASE, - _FN1, - _FN2, - _FN3, -}; - -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_ansi_61( - 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_LCTL, KC_LOPT, KC_LCMD, KC_SPC, KC_RCMD, MO(_FN1), MO(_FN3), KC_RCTL), - - [WIN_BASE] = LAYOUT_ansi_61( - 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_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(_FN2), MO(_FN3), KC_RCTL), - - [_FN1] = LAYOUT_ansi_61( - KC_GRV, KC_BRID, KC_BRIU, KC_MCTL, KC_LPAD, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_DEL, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, KC_INS, KC_PGUP, KC_HOME, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUD, RGB_SAI, RGB_SPI, _______, _______, KC_UP, KC_SNAP, KC_PGDN, KC_END, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUI, RGB_SAD, RGB_SPD, NK_TOGG, KC_LEFT, KC_DOWN, KC_RIGHT, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______), - - [_FN2] = LAYOUT_ansi_61( - KC_GRV, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_DEL, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, KC_APP, KC_SCRL, KC_INS, KC_PGUP, KC_HOME, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUD, RGB_SAI, RGB_SPI, _______, _______, KC_UP, KC_PSCR, KC_PGDN, KC_END, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUI, RGB_SAD, RGB_SPD, NK_TOGG, KC_LEFT, KC_DOWN, KC_RIGHT, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______), - - [_FN3] = LAYOUT_ansi_61( - KC_TILD, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______) -}; - -// clang-format on -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - if (!process_record_keychron_common(keycode, record)) { - return false; - } - return true; -} diff --git a/keyboards/keychron/v4_max/ansi/keymaps/via/keymap.c b/keyboards/keychron/v4_max/ansi/keymaps/via/keymap.c deleted file mode 100644 index a886e58f0a..0000000000 --- a/keyboards/keychron/v4_max/ansi/keymaps/via/keymap.c +++ /dev/null @@ -1,72 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#include QMK_KEYBOARD_H -#include "keychron_common.h" - -enum layers { - MAC_BASE, - WIN_BASE, - _FN1, - _FN2, - _FN3, -}; - -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_ansi_61( - 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_LCTL, KC_LOPT, KC_LCMD, KC_SPC, KC_RCMD, MO(_FN1), MO(_FN3), KC_RCTL), - - [WIN_BASE] = LAYOUT_ansi_61( - 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_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(_FN2), MO(_FN3), KC_RCTL), - - [_FN1] = LAYOUT_ansi_61( - KC_GRV, KC_BRID, KC_BRIU, KC_MCTL, KC_LPAD, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_DEL, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, KC_INS, KC_PGUP, KC_HOME, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUD, RGB_SAI, RGB_SPI, _______, _______, KC_UP, KC_SNAP, KC_PGDN, KC_END, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUI, RGB_SAD, RGB_SPD, NK_TOGG, KC_LEFT, KC_DOWN, KC_RIGHT, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______), - - [_FN2] = LAYOUT_ansi_61( - KC_GRV, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_DEL, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, KC_APP, KC_SCRL, KC_INS, KC_PGUP, KC_HOME, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUD, RGB_SAI, RGB_SPI, _______, _______, KC_UP, KC_PSCR, KC_PGDN, KC_END, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUI, RGB_SAD, RGB_SPD, NK_TOGG, KC_LEFT, KC_DOWN, KC_RIGHT, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______), - - [_FN3] = LAYOUT_ansi_61( - KC_TILD, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______) -}; - -// clang-format on -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - if (!process_record_keychron_common(keycode, record)) { - return false; - } - return true; -} diff --git a/keyboards/keychron/v4_max/ansi/keymaps/via/rules.mk b/keyboards/keychron/v4_max/ansi/keymaps/via/rules.mk deleted file mode 100644 index 1e5b99807c..0000000000 --- a/keyboards/keychron/v4_max/ansi/keymaps/via/rules.mk +++ /dev/null @@ -1 +0,0 @@ -VIA_ENABLE = yes diff --git a/keyboards/keychron/v4_max/ansi/rules.mk b/keyboards/keychron/v4_max/ansi/rules.mk deleted file mode 100644 index 7ff128fa69..0000000000 --- a/keyboards/keychron/v4_max/ansi/rules.mk +++ /dev/null @@ -1 +0,0 @@ -# This file intentionally left blank \ No newline at end of file diff --git a/keyboards/keychron/v4_max/board.h b/keyboards/keychron/v4_max/board.h deleted file mode 100644 index 54fba748bf..0000000000 --- a/keyboards/keychron/v4_max/board.h +++ /dev/null @@ -1,226 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#pragma once - -#include_next - -// clang-format off - -/* Set GPIOA_SWDIO to INPUT and NOT FLOATING */ -#undef VAL_GPIOA_MODER -#define VAL_GPIOA_MODER (PIN_MODE_INPUT(GPIOA_BUTTON) | \ - PIN_MODE_INPUT(GPIOA_PIN1) | \ - PIN_MODE_INPUT(GPIOA_PIN2) | \ - PIN_MODE_INPUT(GPIOA_PIN3) | \ - PIN_MODE_ALTERNATE(GPIOA_CS43L22_LRCK) |\ - PIN_MODE_ALTERNATE(GPIOA_L3GD20_SCL) | \ - PIN_MODE_ALTERNATE(GPIOA_L3GD20_SD0) | \ - PIN_MODE_ALTERNATE(GPIOA_L3GD20_SDI) | \ - PIN_MODE_INPUT(GPIOA_PIN8) | \ - PIN_MODE_INPUT(GPIOA_VBUS_FS) | \ - PIN_MODE_ALTERNATE(GPIOA_OTG_FS_ID) | \ - PIN_MODE_ALTERNATE(GPIOA_OTG_FS_DM) | \ - PIN_MODE_ALTERNATE(GPIOA_OTG_FS_DP) | \ - PIN_MODE_INPUT(GPIOA_SWDIO) | \ - PIN_MODE_INPUT(GPIOA_SWCLK) | \ - PIN_MODE_INPUT(GPIOA_PIN15)) - -#undef VAL_GPIOA_PUPDR -#define VAL_GPIOA_PUPDR (PIN_PUPDR_FLOATING(GPIOA_BUTTON) | \ - PIN_PUPDR_PULLUP(GPIOA_PIN1) | \ - PIN_PUPDR_PULLUP(GPIOA_PIN2) | \ - PIN_PUPDR_PULLUP(GPIOA_PIN3) | \ - PIN_PUPDR_FLOATING(GPIOA_CS43L22_LRCK) |\ - PIN_PUPDR_FLOATING(GPIOA_L3GD20_SCL) | \ - PIN_PUPDR_PULLUP(GPIOA_L3GD20_SD0) | \ - PIN_PUPDR_PULLUP(GPIOA_L3GD20_SDI) | \ - PIN_PUPDR_PULLUP(GPIOA_PIN8) | \ - PIN_PUPDR_FLOATING(GPIOA_VBUS_FS) | \ - PIN_PUPDR_FLOATING(GPIOA_OTG_FS_ID) | \ - PIN_PUPDR_FLOATING(GPIOA_OTG_FS_DM) | \ - PIN_PUPDR_FLOATING(GPIOA_OTG_FS_DP) | \ - PIN_PUPDR_PULLUP(GPIOA_SWDIO) | \ - PIN_PUPDR_PULLUP(GPIOA_SWCLK) | \ - PIN_PUPDR_PULLUP(GPIOA_PIN15)) - -#undef VAL_GPIOB_MODER -#define VAL_GPIOB_MODER (PIN_MODE_INPUT(GPIOB_PIN0) | \ - PIN_MODE_INPUT(GPIOB_PIN1) | \ - PIN_MODE_INPUT(GPIOB_PIN2) | \ - PIN_MODE_INPUT(GPIOB_SWO) | \ - PIN_MODE_INPUT(GPIOB_PIN4) | \ - PIN_MODE_INPUT(GPIOB_PIN5) | \ - PIN_MODE_INPUT(GPIOB_LSM303DLHC_SCL) | \ - PIN_MODE_INPUT(GPIOB_PIN7) | \ - PIN_MODE_INPUT(GPIOB_PIN8) | \ - PIN_MODE_INPUT(GPIOB_LSM303DLHC_SDA) | \ - PIN_MODE_INPUT(GPIOB_MP45DT02_CLK_IN) |\ - PIN_MODE_INPUT(GPIOB_PIN11) | \ - PIN_MODE_INPUT(GPIOB_PIN12) | \ - PIN_MODE_INPUT(GPIOB_PIN13) | \ - PIN_MODE_INPUT(GPIOB_PIN14) | \ - PIN_MODE_INPUT(GPIOB_PIN15)) - -#undef VAL_GPIOB_PUPDR -#define VAL_GPIOB_PUPDR (PIN_PUPDR_PULLDOWN(GPIOB_PIN0) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN1) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN2) | \ - PIN_PUPDR_PULLDOWN(GPIOB_SWO) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN4) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN5) | \ - PIN_PUPDR_PULLDOWN(GPIOB_LSM303DLHC_SCL) |\ - PIN_PUPDR_PULLDOWN(GPIOB_PIN7) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN8) | \ - PIN_PUPDR_PULLDOWN(GPIOB_LSM303DLHC_SDA) |\ - PIN_PUPDR_PULLDOWN(GPIOB_MP45DT02_CLK_IN) |\ - PIN_PUPDR_PULLDOWN(GPIOB_PIN11) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN12) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN13) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN14) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN15)) - -#undef VAL_GPIOB_AFRL -#define VAL_GPIOB_AFRL (PIN_AFIO_AF(GPIOB_PIN0, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN1, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN2, 0U) | \ - PIN_AFIO_AF(GPIOB_SWO, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN4, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN5, 0U) | \ - PIN_AFIO_AF(GPIOB_LSM303DLHC_SCL, 0) | \ - PIN_AFIO_AF(GPIOB_PIN7, 0U)) - -#undef VAL_GPIOB_AFRH -#define VAL_GPIOB_AFRH (PIN_AFIO_AF(GPIOB_PIN8, 0U) | \ - PIN_AFIO_AF(GPIOB_LSM303DLHC_SDA, 0) | \ - PIN_AFIO_AF(GPIOB_MP45DT02_CLK_IN, 0U) |\ - PIN_AFIO_AF(GPIOB_PIN11, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN12, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN13, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN14, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN15, 0U)) - -/* C5 Need to be pulldown */ -#undef VAL_GPIOC_MODER -#define VAL_GPIOC_MODER (PIN_MODE_INPUT(GPIOC_OTG_FS_POWER_ON) |\ - PIN_MODE_INPUT(GPIOC_PIN1) | \ - PIN_MODE_INPUT(GPIOC_PIN2) | \ - PIN_MODE_INPUT(GPIOC_CS43L22_AIN4x) | \ - PIN_MODE_INPUT(GPIOC_PIN4) | \ - PIN_MODE_INPUT(GPIOC_PIN5) | \ - PIN_MODE_INPUT(GPIOC_PIN6) | \ - PIN_MODE_INPUT(GPIOC_CS43L22_MCLK) | \ - PIN_MODE_INPUT(GPIOC_PIN8) | \ - PIN_MODE_INPUT(GPIOC_PIN9) | \ - PIN_MODE_INPUT(GPIOC_CS43L22_SCLK) | \ - PIN_MODE_INPUT(GPIOC_PIN11) | \ - PIN_MODE_INPUT(GPIOC_CS43L22_SDIN) | \ - PIN_MODE_INPUT(GPIOC_PIN13) | \ - PIN_MODE_INPUT(GPIOC_OSC32_IN) | \ - PIN_MODE_INPUT(GPIOC_OSC32_OUT)) - -#undef VAL_GPIOC_PUPDR -#define VAL_GPIOC_PUPDR (PIN_PUPDR_PULLUP(GPIOC_OTG_FS_POWER_ON) |\ - PIN_PUPDR_PULLUP(GPIOC_PIN1) | \ - PIN_PUPDR_PULLUP(GPIOC_PIN2) | \ - PIN_PUPDR_PULLUP(GPIOC_CS43L22_AIN4x) |\ - PIN_PUPDR_PULLUP(GPIOC_PIN4) | \ - PIN_PUPDR_PULLDOWN(GPIOC_PIN5) | \ - PIN_PUPDR_PULLUP(GPIOC_PIN6) | \ - PIN_PUPDR_PULLUP(GPIOC_CS43L22_MCLK) | \ - PIN_PUPDR_PULLUP(GPIOC_PIN8) | \ - PIN_PUPDR_PULLUP(GPIOC_PIN9) | \ - PIN_PUPDR_PULLUP(GPIOC_CS43L22_SCLK) | \ - PIN_PUPDR_PULLUP(GPIOC_PIN11) | \ - PIN_PUPDR_PULLUP(GPIOC_CS43L22_SDIN) | \ - PIN_PUPDR_PULLUP(GPIOC_PIN13) | \ - PIN_PUPDR_PULLUP(GPIOC_OSC32_IN) | \ - PIN_PUPDR_PULLUP(GPIOC_OSC32_OUT)) - -/* Set all GPIOD pins to INPUT & PULLUP to avoid FLOATING */ -#undef VAL_GPIOD_MODER -#define VAL_GPIOD_MODER (PIN_MODE_INPUT(GPIOD_PIN0) | \ - PIN_MODE_INPUT(GPIOD_PIN1) | \ - PIN_MODE_INPUT(GPIOD_PIN2) | \ - PIN_MODE_INPUT(GPIOD_PIN3) | \ - PIN_MODE_INPUT(GPIOD_CS43L22_RESET) | \ - PIN_MODE_INPUT(GPIOD_OverCurrent) | \ - PIN_MODE_INPUT(GPIOD_PIN6) | \ - PIN_MODE_INPUT(GPIOD_PIN7) | \ - PIN_MODE_INPUT(GPIOD_PIN8) | \ - PIN_MODE_INPUT(GPIOD_PIN9) | \ - PIN_MODE_INPUT(GPIOD_PIN10) | \ - PIN_MODE_INPUT(GPIOD_PIN11) | \ - PIN_MODE_INPUT(GPIOD_LED4) | \ - PIN_MODE_INPUT(GPIOD_LED3) | \ - PIN_MODE_INPUT(GPIOD_LED5) | \ - PIN_MODE_INPUT(GPIOD_LED6)) - -#undef VAL_GPIOD_PUPDR -#define VAL_GPIOD_PUPDR (PIN_PUPDR_PULLUP(GPIOD_PIN0) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN1) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN2) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN3) | \ - PIN_PUPDR_PULLUP(GPIOD_CS43L22_RESET) |\ - PIN_PUPDR_PULLUP(GPIOD_OverCurrent) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN6) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN7) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN8) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN9) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN10) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN11) | \ - PIN_PUPDR_PULLUP(GPIOD_LED4) | \ - PIN_PUPDR_PULLUP(GPIOD_LED3) | \ - PIN_PUPDR_PULLUP(GPIOD_LED5) | \ - PIN_PUPDR_PULLUP(GPIOD_LED6)) - -/* Set all GPIOE pins to INPUT & PULLUP to avoid FLOATING */ -#undef VAL_GPIOE_MODER -#define VAL_GPIOE_MODER (PIN_MODE_INPUT(GPIOE_L3GD20_INT1) | \ - PIN_MODE_INPUT(GPIOE_L3GD20_INT2) | \ - PIN_MODE_INPUT(GPIOE_LSM303DLHC_DRDY) |\ - PIN_MODE_INPUT(GPIOE_L3GD20_CS) | \ - PIN_MODE_INPUT(GPIOE_LSM303DLHC_INT1) |\ - PIN_MODE_INPUT(GPIOE_LSM303DLHC_INT2) |\ - PIN_MODE_INPUT(GPIOE_PIN6) | \ - PIN_MODE_INPUT(GPIOE_PIN7) | \ - PIN_MODE_INPUT(GPIOE_PIN8) | \ - PIN_MODE_INPUT(GPIOE_PIN9) | \ - PIN_MODE_INPUT(GPIOE_PIN10) | \ - PIN_MODE_INPUT(GPIOE_PIN11) | \ - PIN_MODE_INPUT(GPIOE_PIN12) | \ - PIN_MODE_INPUT(GPIOE_PIN13) | \ - PIN_MODE_INPUT(GPIOE_PIN14) | \ - PIN_MODE_INPUT(GPIOE_PIN15)) - -#undef VAL_GPIOE_PUPDR -#define VAL_GPIOE_PUPDR (PIN_PUPDR_PULLUP(GPIOE_L3GD20_INT1) | \ - PIN_PUPDR_PULLUP(GPIOE_L3GD20_INT2) | \ - PIN_PUPDR_PULLUP(GPIOE_LSM303DLHC_DRDY) |\ - PIN_PUPDR_PULLUP(GPIOE_L3GD20_CS) | \ - PIN_PUPDR_PULLUP(GPIOE_LSM303DLHC_INT1) |\ - PIN_PUPDR_PULLUP(GPIOE_LSM303DLHC_INT2) |\ - PIN_PUPDR_PULLUP(GPIOE_PIN6) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN7) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN8) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN9) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN10) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN11) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN12) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN13) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN14) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN15)) - diff --git a/keyboards/keychron/v4_max/config.h b/keyboards/keychron/v4_max/config.h deleted file mode 100644 index 486d7cbbf9..0000000000 --- a/keyboards/keychron/v4_max/config.h +++ /dev/null @@ -1,78 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#pragma once - -/* Encoder Configuration */ -#define ENCODER_DEFAULT_POS 0x3 -#define ENCODER_MAP_KEY_DELAY 2 - -#ifdef LK_WIRELESS_ENABLE -/* Hardware configuration */ -# define P2P4_MODE_SELECT_PIN A10 -# define BT_MODE_SELECT_PIN A9 - -# define LKBT51_RESET_PIN C4 -# define LKBT51_INT_INPUT_PIN B1 -# define BLUETOOTH_INT_OUTPUT_PIN A4 - -# define USB_POWER_SENSE_PIN B0 -# define USB_POWER_CONNECTED_LEVEL 0 - -# define BAT_CHARGING_PIN B13 -# define BAT_CHARGING_LEVEL 0 - -# define BAT_LOW_LED_PIN B12 -# define BAT_LOW_LED_PIN_ON_STATE 1 - -# define BT_HOST_DEVICES_COUNT 3 - -# if defined(RGB_MATRIX_ENABLE) - -# define LED_DRIVER_SHUTDOWN_PIN B7 - -/* 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 - -/* Reinit LED driver on tranport changed */ -# define REINIT_LED_DRIVER 1 - -# endif - -/* Keep USB connection in blueooth mode */ -# define KEEP_USB_CONNECTION_IN_WIRELESS_MODE - -/* Enable bluetooth NKRO */ -# define WIRELESS_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 - -/* Factory test keys */ -#define FN_KEY_1 MO(4) -#define BL_CYCLE_KEY KC_C -#define BL_TRIG_KEY KC_L - -#define P2P4G_CELAR_MASK 0 - -#define MATRIX_IO_DELAY 10 diff --git a/keyboards/keychron/v4_max/firmware/keychron_v4_max_ansi_via.bin b/keyboards/keychron/v4_max/firmware/keychron_v4_max_ansi_via.bin deleted file mode 100644 index 08aceb8b56..0000000000 Binary files a/keyboards/keychron/v4_max/firmware/keychron_v4_max_ansi_via.bin and /dev/null differ diff --git a/keyboards/keychron/v4_max/halconf.h b/keyboards/keychron/v4_max/halconf.h deleted file mode 100644 index 37bcc7c47b..0000000000 --- a/keyboards/keychron/v4_max/halconf.h +++ /dev/null @@ -1,31 +0,0 @@ -/* Copyright 2024 @ 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 - -#define _CHIBIOS_HAL_CONF_VER_8_0_ - -#define HAL_USE_SPI TRUE - -#ifdef LK_WIRELESS_ENABLE -# define HAL_USE_RTC TRUE -#endif - -#if defined(LK_WIRELESS_ENABLE) || defined(ENCODER_ENABLE) -# define PAL_USE_CALLBACKS TRUE -#endif - -#include_next diff --git a/keyboards/keychron/v4_max/info.json b/keyboards/keychron/v4_max/info.json deleted file mode 100644 index d6b63ff366..0000000000 --- a/keyboards/keychron/v4_max/info.json +++ /dev/null @@ -1,70 +0,0 @@ -{ - "keyboard_name": "Keychron V4 Max", - "manufacturer": "Keychron", - "url": "https://github.com/Keychron", - "maintainer": "lokher", - "processor": "STM32F401", - "bootloader": "stm32-dfu", - "usb": { - "vid": "0x3434" - }, - "features": { - "bootmagic": true, - "extrakey" : true, - "mousekey" : true, - "dip_switch" : true, - "nkro" : true, - "rgb_matrix": true, - "raw" : true, - "send_string" : true - }, - "matrix_pins": { - "cols": ["C6", "C7", "C8", "A14", "A15", "C10", "C11", "C13", "C14", "C15", "C0", "C1", "C2", "C3"], - "rows": ["C12", "D2", "B3", "B4", "B5"] - }, - "diode_direction": "ROW2COL", - "dip_switch" :{ - "pins": ["A8"] - }, - "rgb_matrix": { - "driver": "snled27351_spi", - "sleep": true, - "animations": { - "band_spiral_val": true, - "breathing": true, - "cycle_all": true, - "cycle_left_right": true, - "cycle_out_in": true, - "cycle_out_in_dual": true, - "cycle_pinwheel": true, - "cycle_spiral": true, - "cycle_up_down": true, - "digital_rain": true, - "dual_beacon": true, - "jellybean_raindrops": true, - "pixel_rain": true, - "rainbow_beacon": true, - "rainbow_moving_chevron": true, - "solid_reactive_multinexus": true, - "solid_reactive_multiwide": true, - "solid_reactive_simple": true, - "solid_splash": true, - "splash": true, - "typing_heatmap": true - } - }, - "eeprom": { - "wear_leveling": { - "driver": "embedded_flash", - "logical_size": 2048, - "backing_size": 4096 - } - }, - "dynamic_keymap": { - "layer_count": 5 - }, - "build": { - "debounce_type": "sym_eager_pk" - }, - "debounce": 20 -} diff --git a/keyboards/keychron/v4_max/mcuconf.h b/keyboards/keychron/v4_max/mcuconf.h deleted file mode 100644 index 89294ee64b..0000000000 --- a/keyboards/keychron/v4_max/mcuconf.h +++ /dev/null @@ -1,37 +0,0 @@ -/* Copyright 2024 @ 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 - -#include_next - -#undef STM32_HSECLK -#define STM32_HSECLK 16000000 - -#undef STM32_PLLM_VALUE -#define STM32_PLLM_VALUE 8 - -#undef STM32_PLLN_VALUE -#define STM32_PLLN_VALUE 96 - -#undef STM32_PLLP_VALUE -#define STM32_PLLP_VALUE 4 - -#undef STM32_PLLQ_VALUE -#define STM32_PLLQ_VALUE 4 - -#undef STM32_SPI_USE_SPI1 -#define STM32_SPI_USE_SPI1 TRUE diff --git a/keyboards/keychron/v4_max/readme.md b/keyboards/keychron/v4_max/readme.md deleted file mode 100644 index 1d76668c23..0000000000 --- a/keyboards/keychron/v4_max/readme.md +++ /dev/null @@ -1,23 +0,0 @@ -# Keychron V4 Max - -![Keychron V4 Max](https://cdn.shopify.com/s/files/1/0059/0630/1017/files/Keychron_V4_Max_wireless_QMK_mechanical_keyboard.jpg?v=1715227166) - -A customizable keyboard. - -* Keyboard Maintainer: [Keychron](https://github.com/keychron) -* Hardware Supported: Keychron V4 Max -* Hardware Availability: [Keychron V4 Max QMK/VIA Wireless Custom Mechanical Keyboard](https://www.keychron.com/products/keychron-v4-max-qmk-via-wireless-custom-mechanical-keyboard) - -Make example for this keyboard (after setting up your build environment): - - make keychron/v4_max/ansi:default - make keychron/v4_max/iso:default - -Flashing example for this keyboard: - - make keychron/v4_max/ansi_encoder:default:flash - make keychron/v4_max/iso_encoder:default:flash - -**Reset Key**: Toggle mode switch to "Cable", hold down the *Esc* key or reset button underneath space bar while connecting the USB cable, - -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). diff --git a/keyboards/keychron/v4_max/rules.mk b/keyboards/keychron/v4_max/rules.mk deleted file mode 100644 index 4eaf6820bc..0000000000 --- a/keyboards/keychron/v4_max/rules.mk +++ /dev/null @@ -1,4 +0,0 @@ -include keyboards/keychron/common/wireless/wireless.mk -include keyboards/keychron/common/keychron_common.mk - -VPATH += $(TOP_DIR)/keyboards/keychron diff --git a/keyboards/keychron/v4_max/v4_max.c b/keyboards/keychron/v4_max/v4_max.c deleted file mode 100644 index 9b36fb37c1..0000000000 --- a/keyboards/keychron/v4_max/v4_max.c +++ /dev/null @@ -1,78 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#include "quantum.h" -#include "keychron_task.h" -#ifdef FACTORY_TEST_ENABLE -# include "factory_test.h" -# include "keychron_common.h" -#endif -#ifdef LK_WIRELESS_ENABLE -# include "lkbt51.h" -# include "wireless.h" -# include "keychron_wireless_common.h" -# include "battery.h" -#endif - -#define POWER_ON_LED_DURATION 3000 -static uint32_t power_on_indicator_timer; - -#ifdef DIP_SWITCH_ENABLE -bool dip_switch_update_kb(uint8_t index, bool active) { - if (index == 0) { - default_layer_set(1UL << (active ? 0 : 1)); - } - dip_switch_update_user(index, active); - - return true; -} -#endif - -void keyboard_post_init_kb(void) { -#ifdef LK_WIRELESS_ENABLE - palSetLineMode(P2P4_MODE_SELECT_PIN, PAL_MODE_INPUT); - palSetLineMode(BT_MODE_SELECT_PIN, PAL_MODE_INPUT); - writePin(BAT_LOW_LED_PIN, BAT_LOW_LED_PIN_ON_STATE); - - lkbt51_init(false); - wireless_init(); -#endif - - power_on_indicator_timer = timer_read32(); - keyboard_post_init_user(); -} - -bool keychron_task_kb(void) { - if (power_on_indicator_timer) { - if (timer_elapsed32(power_on_indicator_timer) > POWER_ON_LED_DURATION) { - power_on_indicator_timer = 0; -#ifdef LK_WIRELESS_ENABLE - writePin(BAT_LOW_LED_PIN, !BAT_LOW_LED_PIN_ON_STATE); -#endif - } else { -#ifdef LK_WIRELESS_ENABLE - writePin(BAT_LOW_LED_PIN, BAT_LOW_LED_PIN_ON_STATE); -#endif - } - } - return true; -} - -#ifdef LK_WIRELESS_ENABLE -bool lpm_is_kb_idle(void) { - return power_on_indicator_timer == 0 && !factory_reset_indicating(); -} -#endif diff --git a/keyboards/keychron/v4_max/via_json/v4_max_ansi.json b/keyboards/keychron/v4_max/via_json/v4_max_ansi.json deleted file mode 100644 index b1d3574562..0000000000 --- a/keyboards/keychron/v4_max/via_json/v4_max_ansi.json +++ /dev/null @@ -1,229 +0,0 @@ -{ - "name": "Keychron V4 Max ANSI", - "vendorId": "0x3434", - "productId": "0x0940", - "keycodes": ["qmk_lighting"], - "menus": [ - { - "label": "Lighting", - "content": [ - { - "label": "Backlight", - "content": [ - { - "label": "Brightness", - "type": "range", - "options": [0, 255], - "content": ["id_qmk_rgb_matrix_brightness", 3, 1] - }, - { - "label": "Effect", - "type": "dropdown", - "content": ["id_qmk_rgb_matrix_effect", 3, 2], - "options": [ - ["None", 0], - ["Solid Color", 1], - ["Breathing", 2], - ["Band Spiral Val", 3], - ["Cycle All", 4], - ["Cycle Left Right", 5], - ["Cycle Up Down", 6], - ["Rainbow Moving Chevron", 7], - ["Cycle Out In", 8], - ["Cycle Out In Dual", 9], - ["Cycle Pinwheel", 10], - ["Cycle Spiral", 11], - ["Dual Beacon", 12], - ["Rainbow Beacon", 13], - ["Jellybean Raindrops", 14], - ["Pixel Rain", 15], - ["Typing Heatmap", 16], - ["Digital Rain", 17], - ["Reactive Simple", 18], - ["Reactive Multiwide", 19], - ["Reactive Multinexus", 20], - ["Splash", 21], - ["Solid Splash", 22] - ] - }, - { - "showIf": "{id_qmk_rgb_matrix_effect} > 1", - "label": "Effect Speed", - "type": "range", - "options": [0, 255], - "content": ["id_qmk_rgb_matrix_effect_speed", 3, 3] - }, - { - "showIf": "{id_qmk_rgb_matrix_effect} != 0 && ( {id_qmk_rgb_matrix_effect} < 4 || {id_qmk_rgb_matrix_effect} == 18 || ({id_qmk_rgb_matrix_effect} > 17 && {id_qmk_rgb_matrix_effect} != 21) ) ", - "label": "Color", - "type": "color", - "content": ["id_qmk_rgb_matrix_color", 3, 4] - } - ] - } - ] - } - ], - "customKeycodes": [ - {"name": "Left Option", "title": "Left Option", "shortName": "LOpt"}, - {"name": "Right Option", "title": "Right Option", "shortName": "ROpt"}, - {"name": "Left Cmd", "title": "Left Command", "shortName": "LCmd"}, - {"name": "Right Cmd", "title": "Right Command", "shortName": "RCmd"}, - {"name": "Misson Control", "title": "Misson Control in Mac", "shortName": "MCtl"}, - {"name": "Lanuch Pad", "title": "Lanuch Pad in Windows", "shortName": "LPad"}, - {"name": "Task View", "title": "Task View in Windows", "shortName": "Task"}, - {"name": "File Explorer", "title": "File Explorer in Windows", "shortName": "File"}, - {"name": "Screen shot", "title": "Screenshot in macOS", "shortName": "SShot"}, - {"name": "Cortana", "title": "Cortana in Windows", "shortName": "Cortana"}, - {"name": "Siri", "title": "Siri in macOS", "shortName": "Siri"}, - {"name": "Bluetooth Host 1", "title": "Bluetooth Host 1", "shortName": "BTH1"}, - {"name": "Bluetooth Host 2", "title": "Bluetooth Host 2", "shortName": "BTH2"}, - {"name": "Bluetooth Host 3", "title": "Bluetooth Host 3", "shortName": "BTH3"}, - {"name": "2.4G", "title": "2.4G", "shortName": "2.4G"}, - {"name": "Battery Level", "title": "Show battery level", "shortName": "Batt"} - ], - "matrix": {"rows": 5, "cols" : 14}, - "layouts": { - "keymap": [ - [ - { - "y": 0.25, - "c": "#777777" - }, - "0,0\nESC", - { - "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", - { - "c": "#aaaaaa", - "w": 2 - }, - "0,13" - ], - [ - { - "w": 1.5 - }, - "1,0", - { - "c": "#cccccc" - }, - "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, - "c":"#aaaaaa" - }, - "1,13" - ], - [ - { - "w": 1.75 - }, - "2,0", - { - "c": "#cccccc" - }, - "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" - ], - [ - { - "c": "#aaaaaa", - "w": 2.25 - }, - "3,0", - { - "c": "#cccccc" - }, - "3,2", - "3,3", - "3,4", - "3,5", - "3,6", - "3,7", - "3,8", - "3,9", - "3,10", - "3,11", - { - "c": "#aaaaaa", - "w": 2.75 - }, - "3,13" - ], - [ - { - "w": 1.25 - }, - "4,0", - { - "w": 1.25 - }, - "4,1", - { - "w": 1.25 - }, - "4,2", - { - "c": "#cccccc", - "w": 6.25 - }, - "4,6", - { - "c": "#aaaaaa", - "w": 1.25 - }, - "4,10", - { - "w": 1.25 - }, - "4,11", - { - "w": 1.25 - }, - "4,12", - { - "w": 1.25 - }, - "4,13" - ] - ] - } -} \ No newline at end of file diff --git a/keyboards/keychron/v5_max/ansi_encoder/ansi_encoder.c b/keyboards/keychron/v5_max/ansi_encoder/ansi_encoder.c deleted file mode 100644 index f433777e0a..0000000000 --- a/keyboards/keychron/v5_max/ansi_encoder/ansi_encoder.c +++ /dev/null @@ -1,164 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#include "quantum.h" - -// clang-format off - -#ifdef RGB_MATRIX_ENABLE -const snled27351_led_t g_snled27351_leds[RGB_MATRIX_LED_COUNT] = { -/* Refer to SNLED27351 manual for these locations - * driver - * | R location - * | | G location - * | | | B location - * | | | | */ - {0, G_1, I_1, H_1}, - {0, G_3, I_3, H_3}, - {0, G_4, I_4, H_4}, - {0, G_5, I_5, H_5}, - {0, G_6, I_6, H_6}, - {0, G_8, I_8, H_8}, - {0, G_9, I_9, H_9}, - {0, G_10, I_10, H_10}, - {0, G_11, I_11, H_11}, - {0, G_12, I_12, H_12}, - {0, G_13, I_13, H_13}, - {0, G_14, I_14, H_14}, - {0, G_15, I_15, H_15}, - {0, G_16, I_16, H_16}, - {0, J_16, L_16, K_16}, - {0, J_15, L_15, K_15}, - - {0, A_1, C_1, B_1}, - {0, A_2, C_2, B_2}, - {0, A_3, C_3, B_3}, - {0, A_4, C_4, B_4}, - {0, A_5, C_5, B_5}, - {0, A_6, C_6, B_6}, - {0, A_7, C_7, B_7}, - {0, A_8, C_8, B_8}, - {0, A_9, C_9, B_9}, - {0, A_10, C_10, B_10}, - {0, A_11, C_11, B_11}, - {0, A_12, C_12, B_12}, - {0, A_13, C_13, B_13}, - {0, A_14, C_14, B_14}, - {0, A_16, C_16, B_16}, - {0, J_13, L_13, K_13}, - {0, J_12, L_12, K_12}, - {0, J_11, L_11, K_11}, - - {0, D_1, F_1, E_1}, - {0, D_2, F_2, E_2}, - {0, D_3, F_3, E_3}, - {0, D_4, F_4, E_4}, - {0, D_5, F_5, E_5}, - {0, D_6, F_6, E_6}, - {0, D_7, F_7, E_7}, - {0, D_8, F_8, E_8}, - {0, D_9, F_9, E_9}, - {0, D_10, F_10, E_10}, - {0, D_11, F_11, E_11}, - {0, D_12, F_12, E_12}, - {0, D_13, F_13, E_13}, - {0, D_14, F_14, E_14}, - {0, D_16, F_16, E_16}, - {0, J_10, L_10, K_10}, - {0, J_9, L_9, K_9}, - - {1, A_16, C_16, B_16}, - {1, A_15, C_15, B_15}, - {1, A_14, C_14, B_14}, - {1, A_13, C_13, B_13}, - {1, A_12, C_12, B_12}, - {1, A_11, C_11, B_11}, - {1, A_10, C_10, B_10}, - {1, A_9, C_9, B_9}, - {1, A_8, C_8, B_8}, - {1, A_7, C_7, B_7}, - {1, A_6, C_6, B_6}, - {1, A_5, C_5, B_5}, - {1, A_4, C_4, B_4}, - {1, A_1, C_1, B_1}, - {1, J_6, L_6, K_6}, - {1, J_7, L_7, K_7}, - {1, J_8, L_8, K_8}, - - {1, G_16, I_16, H_16}, - {1, G_14, I_14, H_14}, - {1, G_13, I_13, H_13}, - {1, G_12, I_12, H_12}, - {1, G_11, I_11, H_11}, - {1, G_10, I_10, H_10}, - {1, G_9, I_9, H_9}, - {1, G_8, I_8, H_8}, - {1, G_7, I_7, H_7}, - {1, G_6, I_6, H_6}, - {1, G_5, I_5, H_5}, - {1, G_4, I_4, H_4}, - {1, G_2, I_2, H_2}, - {1, G_1, I_1, H_1}, - {1, J_3, L_3, K_3}, - {1, J_4, L_4, K_4}, - {1, J_5, L_5, K_5}, - - {1, D_16, F_16, E_16}, - {1, D_15, F_15, E_15}, - {1, D_14, F_14, E_14}, - {1, D_10, F_10, E_10}, - {1, D_6, F_6, E_6}, - {1, D_5, F_5, E_5}, - {1, D_4, F_4, E_4}, - {1, D_3, F_3, E_3}, - {1, D_2, F_2, E_2}, - {1, D_1, F_1, E_1}, - {1, J_1, L_1, K_1}, - {1, J_2, L_2, K_2}, -}; - -#define __ NO_LED - -led_config_t g_led_config = { - { - // Key Matrix to LED Index - { 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, 40, 41, 42, 43, 44, 45, 46, 47, __, 48, 49, 50, __ }, - { 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, __, __, 64, 65, 66, 67 }, - { 68, __, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, __, 80, 81, 82, 83, 84 }, - { 85, 86, 87, __, __, __, 88, __, __, __, 89, 90, 91, 92, 93, 94, 95, 96, __ } - }, - { - // LED Index to Physical Position - {0,0}, {24,0}, {36,0}, {48,0}, {60,0}, {78,0}, {90,0}, {102,0}, {106,0}, {133,0}, {145,0}, {157,0}, {169,0}, {185,0}, {195,0}, {207,0}, - {0,15}, {12,15}, {24,15}, {36,15}, {48,15}, {60,15}, {72,15}, {84,15}, {97,15}, {109,15}, {121,15}, {133,15}, {145,15}, {163,15}, {188,15}, {200,15}, {212,15}, {224,15}, - {3,26}, {18,26}, {30,26}, {42,26}, {54,26}, {66,26}, {78,26}, {91,26}, {103,26}, {115,26}, {127,26}, {139,26}, {151,26}, {166,26}, {188,26}, {200,26}, {212,26}, - {5,38}, {21,38}, {33,38}, {45,38}, {57,38}, {69,38}, {81,38}, {94,38}, {106,38}, {118,38}, {130,38}, {142,38}, {161,38}, {188,38}, {200,38}, {212,38}, {224,32}, - {8,49}, {27,49}, {39,49}, {51,49}, {63,49}, {75,49}, {88,49}, {100,49}, {112,49}, {124,49}, {136,49}, {152,49}, {172,52}, {188,49}, {200,49}, {212,49}, {224,55}, - {1,61}, {17,61}, {32,61}, {77,61}, {121,61}, {133,61}, {145,61}, {160,64}, {172,64}, {184,64}, {200,61}, {212,61}, - }, - { - // RGB LED Index to Flag - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1, 8, 4, 4, 4, - 1, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, - 8, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1, 4, 4, 4, 4, - 1, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1, 1, 4, 4, 4, 4, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 - } -}; -#endif diff --git a/keyboards/keychron/v5_max/ansi_encoder/config.h b/keyboards/keychron/v5_max/ansi_encoder/config.h deleted file mode 100644 index ae0c70a50c..0000000000 --- a/keyboards/keychron/v5_max/ansi_encoder/config.h +++ /dev/null @@ -1,65 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#pragma once - -#ifdef RGB_MATRIX_ENABLE -/* RGB Matrix driver configuration */ -# define DRIVER_COUNT 2 -# define DRIVER_1_LED_COUNT 51 -# define DRIVER_2_LED_COUNT 46 -# define RGB_MATRIX_LED_COUNT (DRIVER_1_LED_COUNT + DRIVER_2_LED_COUNT) - -# define SPI_SCK_PIN A5 -# define SPI_MISO_PIN A6 -# define SPI_MOSI_PIN A7 - -# define DRIVER_CS_PINS \ - { B8, B9 } -# define SNLED23751_SPI_DIVISOR 16 -# define SPI_DRIVER SPID1 - -/* Set LED driver current */ -# define SNLED27351_CURRENT_TUNE \ - { 0x2C, 0x2C, 0x2C, 0x2C, 0x2C, 0x2C, 0x2C, 0x2C, 0x2C, 0x2C, 0x2C, 0x2C } - -/* Set to infinit, which is use in USB mode by default */ -# define RGB_MATRIX_TIMEOUT RGB_MATRIX_TIMEOUT_INFINITE - -/* Allow shutdown of led driver to save power */ -# define RGB_MATRIX_DRIVER_SHUTDOWN_ENABLE -/* Turn off backlight on low brightness to save power */ -# define RGB_MATRIX_BRIGHTNESS_TURN_OFF_VAL 32 - -/* Indications */ -# define BT_HOST_LED_MATRIX_LIST \ - { 17, 18, 19 } - -# define P2P4G_HOST_LED_MATRIX_LIST \ - { 20 } - -# define BAT_LEVEL_LED_LIST \ - { 17, 18, 19, 20, 21, 22, 23, 24, 25, 26 } - -# define NUM_LOCK_INDEX 30 -# define CAPS_LOCK_INDEX 51 -# define LOW_BAT_IND_INDEX \ - { 88 } - -# define RGB_MATRIX_KEYPRESSES -# define RGB_MATRIX_FRAMEBUFFER_EFFECTS - -#endif diff --git a/keyboards/keychron/v5_max/ansi_encoder/info.json b/keyboards/keychron/v5_max/ansi_encoder/info.json deleted file mode 100644 index e3776acb97..0000000000 --- a/keyboards/keychron/v5_max/ansi_encoder/info.json +++ /dev/null @@ -1,127 +0,0 @@ -{ - "usb": { - "pid": "0x0950", - "device_version": "1.0.0" - }, - "features": { - "encoder": true, - "encoder_map": true - }, - "encoder": { - "rotary": [ - { - "pin_a": "B15", - "pin_b": "B14" - } - ] - }, - "layouts": { - "LAYOUT_ansi_98": { - "layout": [ - {"matrix": [0, 0], "x": 0, "y": 0}, - {"matrix": [0, 2], "x": 2, "y": 0}, - {"matrix": [0, 3], "x": 3, "y": 0}, - {"matrix": [0, 4], "x": 4, "y": 0}, - {"matrix": [0, 5], "x": 5, "y": 0}, - {"matrix": [0, 7], "x": 6.5, "y": 0}, - {"matrix": [0, 8], "x": 7.5, "y": 0}, - {"matrix": [0, 9], "x": 8.5, "y": 0}, - {"matrix": [0, 10], "x": 9.5, "y": 0}, - {"matrix": [0, 11], "x": 11, "y": 0}, - {"matrix": [0, 12], "x": 12, "y": 0}, - {"matrix": [0, 13], "x": 13, "y": 0}, - {"matrix": [0, 14], "x": 14, "y": 0}, - {"matrix": [0, 15], "x": 15.25, "y": 0}, - {"matrix": [0, 16], "x": 16.25, "y": 0}, - {"matrix": [0, 17], "x": 17.25, "y": 0}, - {"matrix": [0, 18], "x": 18.5, "y": 0}, - - {"matrix": [1, 0], "x": 0, "y": 1.25}, - {"matrix": [1, 1], "x": 1, "y": 1.25}, - {"matrix": [1, 2], "x": 2, "y": 1.25}, - {"matrix": [1, 3], "x": 3, "y": 1.25}, - {"matrix": [1, 4], "x": 4, "y": 1.25}, - {"matrix": [1, 5], "x": 5, "y": 1.25}, - {"matrix": [1, 6], "x": 6, "y": 1.25}, - {"matrix": [1, 7], "x": 7, "y": 1.25}, - {"matrix": [1, 8], "x": 8, "y": 1.25}, - {"matrix": [1, 9], "x": 9, "y": 1.25}, - {"matrix": [1, 10], "x": 10, "y": 1.25}, - {"matrix": [1, 11], "x": 11, "y": 1.25}, - {"matrix": [1, 12], "x": 12, "y": 1.25}, - {"matrix": [1, 13], "x": 13, "y": 1.25, "w": 2}, - {"matrix": [1, 15], "x": 15.5, "y": 1.25}, - {"matrix": [1, 16], "x": 16.5, "y": 1.25}, - {"matrix": [1, 17], "x": 17.5, "y": 1.25}, - {"matrix": [1, 18], "x": 18.5, "y": 1.25}, - - {"matrix": [2, 0], "x": 0, "y": 2.25, "w": 1.5}, - {"matrix": [2, 1], "x": 1.5, "y": 2.25}, - {"matrix": [2, 2], "x": 2.5, "y": 2.25}, - {"matrix": [2, 3], "x": 3.5, "y": 2.25}, - {"matrix": [2, 4], "x": 4.5, "y": 2.25}, - {"matrix": [2, 5], "x": 5.5, "y": 2.25}, - {"matrix": [2, 6], "x": 6.5, "y": 2.25}, - {"matrix": [2, 7], "x": 7.5, "y": 2.25}, - {"matrix": [2, 8], "x": 8.5, "y": 2.25}, - {"matrix": [2, 9], "x": 9.5, "y": 2.25}, - {"matrix": [2, 10], "x": 10.5, "y": 2.25}, - {"matrix": [2, 11], "x": 11.5, "y": 2.25}, - {"matrix": [2, 12], "x": 12.5, "y": 2.25}, - {"matrix": [2, 13], "x": 13.5, "y": 2.25, "w": 1.5}, - {"matrix": [2, 15], "x": 15.5, "y": 2.25}, - {"matrix": [2, 16], "x": 16.5, "y": 2.25}, - {"matrix": [2, 17], "x": 17.5, "y": 2.25}, - {"matrix": [3, 18], "x": 18.5, "y": 2.25, "h": 2}, - - {"matrix": [3, 0], "x": 0, "y": 3.25, "w": 1.75}, - {"matrix": [3, 1], "x": 1.75, "y": 3.25}, - {"matrix": [3, 2], "x": 2.75, "y": 3.25}, - {"matrix": [3, 3], "x": 3.75, "y": 3.25}, - {"matrix": [3, 4], "x": 4.75, "y": 3.25}, - {"matrix": [3, 5], "x": 5.75, "y": 3.25}, - {"matrix": [3, 6], "x": 6.75, "y": 3.25}, - {"matrix": [3, 7], "x": 7.75, "y": 3.25}, - {"matrix": [3, 8], "x": 8.75, "y": 3.25}, - {"matrix": [3, 9], "x": 9.75, "y": 3.25}, - {"matrix": [3, 10], "x": 10.75, "y": 3.25}, - {"matrix": [3, 11], "x": 11.75, "y": 3.25}, - {"matrix": [3, 12], "x": 12.75, "y": 3.25, "w": 2.25}, - {"matrix": [3, 15], "x": 15.5, "y": 3.25}, - {"matrix": [3, 16], "x": 16.5, "y": 3.25}, - {"matrix": [3, 17], "x": 17.5, "y": 3.25}, - - {"matrix": [4, 0], "x": 0, "y": 4.25, "w": 2.25}, - {"matrix": [4, 2], "x": 2.25, "y": 4.25}, - {"matrix": [4, 3], "x": 3.25, "y": 4.25}, - {"matrix": [4, 4], "x": 4.25, "y": 4.25}, - {"matrix": [4, 5], "x": 5.25, "y": 4.25}, - {"matrix": [4, 6], "x": 6.25, "y": 4.25}, - {"matrix": [4, 7], "x": 7.25, "y": 4.25}, - {"matrix": [4, 8], "x": 8.25, "y": 4.25}, - {"matrix": [4, 9], "x": 9.25, "y": 4.25}, - {"matrix": [4, 10], "x": 10.25, "y": 4.25}, - {"matrix": [4, 11], "x": 11.25, "y": 4.25}, - {"matrix": [4, 12], "x": 12.25, "y": 4.25, "w": 1.75}, - {"matrix": [4, 14], "x": 14.25, "y": 4.5}, - {"matrix": [4, 15], "x": 15.5, "y": 4.25}, - {"matrix": [4, 16], "x": 16.5, "y": 4.25}, - {"matrix": [4, 17], "x": 17.5, "y": 4.25}, - {"matrix": [4, 18], "x": 18.5, "y": 4.25, "h": 2}, - - {"matrix": [5, 0], "x": 0, "y": 5.25, "w": 1.25}, - {"matrix": [5, 1], "x": 1.25, "y": 5.25, "w": 1.25}, - {"matrix": [5, 2], "x": 2.5, "y": 5.25, "w": 1.25}, - {"matrix": [5, 6], "x": 3.75, "y": 5.25, "w": 6.25}, - {"matrix": [5, 10], "x": 10, "y": 5.25}, - {"matrix": [5, 11], "x": 11, "y": 5.25}, - {"matrix": [5, 12], "x": 12, "y": 5.25}, - {"matrix": [5, 13], "x": 13.25, "y": 5.5}, - {"matrix": [5, 14], "x": 14.25, "y": 5.5}, - {"matrix": [5, 15], "x": 15.25, "y": 5.5}, - {"matrix": [5, 16], "x": 16.5, "y": 5.25}, - {"matrix": [5, 17], "x": 17.5, "y": 5.25} - ] - } - } -} diff --git a/keyboards/keychron/v5_max/ansi_encoder/keymaps/default/keymap.c b/keyboards/keychron/v5_max/ansi_encoder/keymaps/default/keymap.c deleted file mode 100644 index ae14fcc872..0000000000 --- a/keyboards/keychron/v5_max/ansi_encoder/keymaps/default/keymap.c +++ /dev/null @@ -1,74 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#include QMK_KEYBOARD_H -#include "keychron_common.h" - -enum layers { - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN, -}; -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_ansi_98( - KC_ESC, KC_BRID, KC_BRIU, KC_MCTRL, KC_LNPAD, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_DEL, KC_HOME, KC_END, KC_MUTE, - KC_GRV, 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_NUM, KC_PSLS, KC_PAST, KC_PMNS, - 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_P7, KC_P8, KC_P9, KC_PPLS, - 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_P4, KC_P5, KC_P6, - 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_P1, KC_P2, KC_P3, KC_PENT, - KC_LCTL, KC_LOPTN, KC_LCMMD, KC_SPC, KC_RCMMD, MO(MAC_FN), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT, KC_P0, KC_PDOT ), - [MAC_FN] = LAYOUT_ansi_98( - _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, _______, RGB_TOG, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ), - [WIN_BASE] = LAYOUT_ansi_98( - KC_ESC, 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_DEL, KC_HOME, KC_END, KC_MUTE, - KC_GRV, 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_NUM, KC_PSLS, KC_PAST, KC_PMNS, - 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_P7, KC_P8, KC_P9, KC_PPLS, - 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_P4, KC_P5, KC_P6, - 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_P1, KC_P2, KC_P3, KC_PENT, - KC_LCTL, KC_LWIN, KC_LALT, KC_SPC, KC_RALT, MO(WIN_FN), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT, KC_P0, KC_PDOT ), - [WIN_FN] = LAYOUT_ansi_98( - _______, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, _______, RGB_TOG, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ), - }; - -#if defined(ENCODER_MAP_ENABLE) -const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][2] = { - [MAC_BASE] = {ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [MAC_FN] = {ENCODER_CCW_CW(RGB_VAD, RGB_VAI)}, - [WIN_BASE] = {ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [WIN_FN] = {ENCODER_CCW_CW(RGB_VAD, RGB_VAI)}, -}; -#endif // ENCODER_MAP_ENABLE - -// clang-format on -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - if (!process_record_keychron_common(keycode, record)) { - return false; - } - return true; -} - diff --git a/keyboards/keychron/v5_max/ansi_encoder/keymaps/via/keymap.c b/keyboards/keychron/v5_max/ansi_encoder/keymaps/via/keymap.c deleted file mode 100644 index 2115adb8ae..0000000000 --- a/keyboards/keychron/v5_max/ansi_encoder/keymaps/via/keymap.c +++ /dev/null @@ -1,73 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#include QMK_KEYBOARD_H -#include "keychron_common.h" - -enum layers { - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN, -}; -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_ansi_98( - KC_ESC, KC_BRID, KC_BRIU, KC_MCTRL, KC_LNPAD, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_DEL, KC_HOME, KC_END, KC_MUTE, - KC_GRV, 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_NUM, KC_PSLS, KC_PAST, KC_PMNS, - 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_P7, KC_P8, KC_P9, KC_PPLS, - 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_P4, KC_P5, KC_P6, - 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_P1, KC_P2, KC_P3, KC_PENT, - KC_LCTL, KC_LOPTN, KC_LCMMD, KC_SPC, KC_RCMMD, MO(MAC_FN), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT, KC_P0, KC_PDOT ), - [MAC_FN] = LAYOUT_ansi_98( - _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, _______, RGB_TOG, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ), - [WIN_BASE] = LAYOUT_ansi_98( - KC_ESC, 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_DEL, KC_HOME, KC_END, KC_MUTE, - KC_GRV, 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_NUM, KC_PSLS, KC_PAST, KC_PMNS, - 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_P7, KC_P8, KC_P9, KC_PPLS, - 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_P4, KC_P5, KC_P6, - 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_P1, KC_P2, KC_P3, KC_PENT, - KC_LCTL, KC_LWIN, KC_LALT, KC_SPC, KC_RALT, MO(WIN_FN), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT, KC_P0, KC_PDOT ), - [WIN_FN] = LAYOUT_ansi_98( - _______, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, _______, RGB_TOG, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ), - }; - -#if defined(ENCODER_MAP_ENABLE) -const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][2] = { - [MAC_BASE] = {ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [MAC_FN] = {ENCODER_CCW_CW(RGB_VAD, RGB_VAI)}, - [WIN_BASE] = {ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [WIN_FN] = {ENCODER_CCW_CW(RGB_VAD, RGB_VAI)}, -}; -#endif // ENCODER_MAP_ENABLE - -// clang-format on -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - if (!process_record_keychron_common(keycode, record)) { - return false; - } - return true; -} diff --git a/keyboards/keychron/v5_max/ansi_encoder/keymaps/via/rules.mk b/keyboards/keychron/v5_max/ansi_encoder/keymaps/via/rules.mk deleted file mode 100644 index 1e5b99807c..0000000000 --- a/keyboards/keychron/v5_max/ansi_encoder/keymaps/via/rules.mk +++ /dev/null @@ -1 +0,0 @@ -VIA_ENABLE = yes diff --git a/keyboards/keychron/v5_max/ansi_encoder/rules.mk b/keyboards/keychron/v5_max/ansi_encoder/rules.mk deleted file mode 100644 index 7ff128fa69..0000000000 --- a/keyboards/keychron/v5_max/ansi_encoder/rules.mk +++ /dev/null @@ -1 +0,0 @@ -# This file intentionally left blank \ No newline at end of file diff --git a/keyboards/keychron/v5_max/board.h b/keyboards/keychron/v5_max/board.h deleted file mode 100644 index 54fba748bf..0000000000 --- a/keyboards/keychron/v5_max/board.h +++ /dev/null @@ -1,226 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#pragma once - -#include_next - -// clang-format off - -/* Set GPIOA_SWDIO to INPUT and NOT FLOATING */ -#undef VAL_GPIOA_MODER -#define VAL_GPIOA_MODER (PIN_MODE_INPUT(GPIOA_BUTTON) | \ - PIN_MODE_INPUT(GPIOA_PIN1) | \ - PIN_MODE_INPUT(GPIOA_PIN2) | \ - PIN_MODE_INPUT(GPIOA_PIN3) | \ - PIN_MODE_ALTERNATE(GPIOA_CS43L22_LRCK) |\ - PIN_MODE_ALTERNATE(GPIOA_L3GD20_SCL) | \ - PIN_MODE_ALTERNATE(GPIOA_L3GD20_SD0) | \ - PIN_MODE_ALTERNATE(GPIOA_L3GD20_SDI) | \ - PIN_MODE_INPUT(GPIOA_PIN8) | \ - PIN_MODE_INPUT(GPIOA_VBUS_FS) | \ - PIN_MODE_ALTERNATE(GPIOA_OTG_FS_ID) | \ - PIN_MODE_ALTERNATE(GPIOA_OTG_FS_DM) | \ - PIN_MODE_ALTERNATE(GPIOA_OTG_FS_DP) | \ - PIN_MODE_INPUT(GPIOA_SWDIO) | \ - PIN_MODE_INPUT(GPIOA_SWCLK) | \ - PIN_MODE_INPUT(GPIOA_PIN15)) - -#undef VAL_GPIOA_PUPDR -#define VAL_GPIOA_PUPDR (PIN_PUPDR_FLOATING(GPIOA_BUTTON) | \ - PIN_PUPDR_PULLUP(GPIOA_PIN1) | \ - PIN_PUPDR_PULLUP(GPIOA_PIN2) | \ - PIN_PUPDR_PULLUP(GPIOA_PIN3) | \ - PIN_PUPDR_FLOATING(GPIOA_CS43L22_LRCK) |\ - PIN_PUPDR_FLOATING(GPIOA_L3GD20_SCL) | \ - PIN_PUPDR_PULLUP(GPIOA_L3GD20_SD0) | \ - PIN_PUPDR_PULLUP(GPIOA_L3GD20_SDI) | \ - PIN_PUPDR_PULLUP(GPIOA_PIN8) | \ - PIN_PUPDR_FLOATING(GPIOA_VBUS_FS) | \ - PIN_PUPDR_FLOATING(GPIOA_OTG_FS_ID) | \ - PIN_PUPDR_FLOATING(GPIOA_OTG_FS_DM) | \ - PIN_PUPDR_FLOATING(GPIOA_OTG_FS_DP) | \ - PIN_PUPDR_PULLUP(GPIOA_SWDIO) | \ - PIN_PUPDR_PULLUP(GPIOA_SWCLK) | \ - PIN_PUPDR_PULLUP(GPIOA_PIN15)) - -#undef VAL_GPIOB_MODER -#define VAL_GPIOB_MODER (PIN_MODE_INPUT(GPIOB_PIN0) | \ - PIN_MODE_INPUT(GPIOB_PIN1) | \ - PIN_MODE_INPUT(GPIOB_PIN2) | \ - PIN_MODE_INPUT(GPIOB_SWO) | \ - PIN_MODE_INPUT(GPIOB_PIN4) | \ - PIN_MODE_INPUT(GPIOB_PIN5) | \ - PIN_MODE_INPUT(GPIOB_LSM303DLHC_SCL) | \ - PIN_MODE_INPUT(GPIOB_PIN7) | \ - PIN_MODE_INPUT(GPIOB_PIN8) | \ - PIN_MODE_INPUT(GPIOB_LSM303DLHC_SDA) | \ - PIN_MODE_INPUT(GPIOB_MP45DT02_CLK_IN) |\ - PIN_MODE_INPUT(GPIOB_PIN11) | \ - PIN_MODE_INPUT(GPIOB_PIN12) | \ - PIN_MODE_INPUT(GPIOB_PIN13) | \ - PIN_MODE_INPUT(GPIOB_PIN14) | \ - PIN_MODE_INPUT(GPIOB_PIN15)) - -#undef VAL_GPIOB_PUPDR -#define VAL_GPIOB_PUPDR (PIN_PUPDR_PULLDOWN(GPIOB_PIN0) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN1) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN2) | \ - PIN_PUPDR_PULLDOWN(GPIOB_SWO) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN4) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN5) | \ - PIN_PUPDR_PULLDOWN(GPIOB_LSM303DLHC_SCL) |\ - PIN_PUPDR_PULLDOWN(GPIOB_PIN7) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN8) | \ - PIN_PUPDR_PULLDOWN(GPIOB_LSM303DLHC_SDA) |\ - PIN_PUPDR_PULLDOWN(GPIOB_MP45DT02_CLK_IN) |\ - PIN_PUPDR_PULLDOWN(GPIOB_PIN11) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN12) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN13) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN14) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN15)) - -#undef VAL_GPIOB_AFRL -#define VAL_GPIOB_AFRL (PIN_AFIO_AF(GPIOB_PIN0, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN1, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN2, 0U) | \ - PIN_AFIO_AF(GPIOB_SWO, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN4, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN5, 0U) | \ - PIN_AFIO_AF(GPIOB_LSM303DLHC_SCL, 0) | \ - PIN_AFIO_AF(GPIOB_PIN7, 0U)) - -#undef VAL_GPIOB_AFRH -#define VAL_GPIOB_AFRH (PIN_AFIO_AF(GPIOB_PIN8, 0U) | \ - PIN_AFIO_AF(GPIOB_LSM303DLHC_SDA, 0) | \ - PIN_AFIO_AF(GPIOB_MP45DT02_CLK_IN, 0U) |\ - PIN_AFIO_AF(GPIOB_PIN11, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN12, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN13, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN14, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN15, 0U)) - -/* C5 Need to be pulldown */ -#undef VAL_GPIOC_MODER -#define VAL_GPIOC_MODER (PIN_MODE_INPUT(GPIOC_OTG_FS_POWER_ON) |\ - PIN_MODE_INPUT(GPIOC_PIN1) | \ - PIN_MODE_INPUT(GPIOC_PIN2) | \ - PIN_MODE_INPUT(GPIOC_CS43L22_AIN4x) | \ - PIN_MODE_INPUT(GPIOC_PIN4) | \ - PIN_MODE_INPUT(GPIOC_PIN5) | \ - PIN_MODE_INPUT(GPIOC_PIN6) | \ - PIN_MODE_INPUT(GPIOC_CS43L22_MCLK) | \ - PIN_MODE_INPUT(GPIOC_PIN8) | \ - PIN_MODE_INPUT(GPIOC_PIN9) | \ - PIN_MODE_INPUT(GPIOC_CS43L22_SCLK) | \ - PIN_MODE_INPUT(GPIOC_PIN11) | \ - PIN_MODE_INPUT(GPIOC_CS43L22_SDIN) | \ - PIN_MODE_INPUT(GPIOC_PIN13) | \ - PIN_MODE_INPUT(GPIOC_OSC32_IN) | \ - PIN_MODE_INPUT(GPIOC_OSC32_OUT)) - -#undef VAL_GPIOC_PUPDR -#define VAL_GPIOC_PUPDR (PIN_PUPDR_PULLUP(GPIOC_OTG_FS_POWER_ON) |\ - PIN_PUPDR_PULLUP(GPIOC_PIN1) | \ - PIN_PUPDR_PULLUP(GPIOC_PIN2) | \ - PIN_PUPDR_PULLUP(GPIOC_CS43L22_AIN4x) |\ - PIN_PUPDR_PULLUP(GPIOC_PIN4) | \ - PIN_PUPDR_PULLDOWN(GPIOC_PIN5) | \ - PIN_PUPDR_PULLUP(GPIOC_PIN6) | \ - PIN_PUPDR_PULLUP(GPIOC_CS43L22_MCLK) | \ - PIN_PUPDR_PULLUP(GPIOC_PIN8) | \ - PIN_PUPDR_PULLUP(GPIOC_PIN9) | \ - PIN_PUPDR_PULLUP(GPIOC_CS43L22_SCLK) | \ - PIN_PUPDR_PULLUP(GPIOC_PIN11) | \ - PIN_PUPDR_PULLUP(GPIOC_CS43L22_SDIN) | \ - PIN_PUPDR_PULLUP(GPIOC_PIN13) | \ - PIN_PUPDR_PULLUP(GPIOC_OSC32_IN) | \ - PIN_PUPDR_PULLUP(GPIOC_OSC32_OUT)) - -/* Set all GPIOD pins to INPUT & PULLUP to avoid FLOATING */ -#undef VAL_GPIOD_MODER -#define VAL_GPIOD_MODER (PIN_MODE_INPUT(GPIOD_PIN0) | \ - PIN_MODE_INPUT(GPIOD_PIN1) | \ - PIN_MODE_INPUT(GPIOD_PIN2) | \ - PIN_MODE_INPUT(GPIOD_PIN3) | \ - PIN_MODE_INPUT(GPIOD_CS43L22_RESET) | \ - PIN_MODE_INPUT(GPIOD_OverCurrent) | \ - PIN_MODE_INPUT(GPIOD_PIN6) | \ - PIN_MODE_INPUT(GPIOD_PIN7) | \ - PIN_MODE_INPUT(GPIOD_PIN8) | \ - PIN_MODE_INPUT(GPIOD_PIN9) | \ - PIN_MODE_INPUT(GPIOD_PIN10) | \ - PIN_MODE_INPUT(GPIOD_PIN11) | \ - PIN_MODE_INPUT(GPIOD_LED4) | \ - PIN_MODE_INPUT(GPIOD_LED3) | \ - PIN_MODE_INPUT(GPIOD_LED5) | \ - PIN_MODE_INPUT(GPIOD_LED6)) - -#undef VAL_GPIOD_PUPDR -#define VAL_GPIOD_PUPDR (PIN_PUPDR_PULLUP(GPIOD_PIN0) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN1) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN2) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN3) | \ - PIN_PUPDR_PULLUP(GPIOD_CS43L22_RESET) |\ - PIN_PUPDR_PULLUP(GPIOD_OverCurrent) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN6) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN7) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN8) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN9) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN10) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN11) | \ - PIN_PUPDR_PULLUP(GPIOD_LED4) | \ - PIN_PUPDR_PULLUP(GPIOD_LED3) | \ - PIN_PUPDR_PULLUP(GPIOD_LED5) | \ - PIN_PUPDR_PULLUP(GPIOD_LED6)) - -/* Set all GPIOE pins to INPUT & PULLUP to avoid FLOATING */ -#undef VAL_GPIOE_MODER -#define VAL_GPIOE_MODER (PIN_MODE_INPUT(GPIOE_L3GD20_INT1) | \ - PIN_MODE_INPUT(GPIOE_L3GD20_INT2) | \ - PIN_MODE_INPUT(GPIOE_LSM303DLHC_DRDY) |\ - PIN_MODE_INPUT(GPIOE_L3GD20_CS) | \ - PIN_MODE_INPUT(GPIOE_LSM303DLHC_INT1) |\ - PIN_MODE_INPUT(GPIOE_LSM303DLHC_INT2) |\ - PIN_MODE_INPUT(GPIOE_PIN6) | \ - PIN_MODE_INPUT(GPIOE_PIN7) | \ - PIN_MODE_INPUT(GPIOE_PIN8) | \ - PIN_MODE_INPUT(GPIOE_PIN9) | \ - PIN_MODE_INPUT(GPIOE_PIN10) | \ - PIN_MODE_INPUT(GPIOE_PIN11) | \ - PIN_MODE_INPUT(GPIOE_PIN12) | \ - PIN_MODE_INPUT(GPIOE_PIN13) | \ - PIN_MODE_INPUT(GPIOE_PIN14) | \ - PIN_MODE_INPUT(GPIOE_PIN15)) - -#undef VAL_GPIOE_PUPDR -#define VAL_GPIOE_PUPDR (PIN_PUPDR_PULLUP(GPIOE_L3GD20_INT1) | \ - PIN_PUPDR_PULLUP(GPIOE_L3GD20_INT2) | \ - PIN_PUPDR_PULLUP(GPIOE_LSM303DLHC_DRDY) |\ - PIN_PUPDR_PULLUP(GPIOE_L3GD20_CS) | \ - PIN_PUPDR_PULLUP(GPIOE_LSM303DLHC_INT1) |\ - PIN_PUPDR_PULLUP(GPIOE_LSM303DLHC_INT2) |\ - PIN_PUPDR_PULLUP(GPIOE_PIN6) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN7) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN8) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN9) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN10) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN11) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN12) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN13) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN14) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN15)) - diff --git a/keyboards/keychron/v5_max/config.h b/keyboards/keychron/v5_max/config.h deleted file mode 100644 index 15ca9a06cb..0000000000 --- a/keyboards/keychron/v5_max/config.h +++ /dev/null @@ -1,77 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#pragma once - -/* Encoder Configuration */ -#define ENCODER_DEFAULT_POS 0x3 -#define ENCODER_MAP_KEY_DELAY 2 - -#ifdef LK_WIRELESS_ENABLE -/* Hardware configuration */ -# define P2P4_MODE_SELECT_PIN A10 -# define BT_MODE_SELECT_PIN A9 - -# define LKBT51_RESET_PIN C4 -# define LKBT51_INT_INPUT_PIN B1 -# define BLUETOOTH_INT_OUTPUT_PIN A4 - -# define USB_POWER_SENSE_PIN B0 -# define USB_POWER_CONNECTED_LEVEL 0 - -# define BAT_CHARGING_PIN B13 -# define BAT_CHARGING_LEVEL 0 - -# define BAT_LOW_LED_PIN B12 -# define BAT_LOW_LED_PIN_ON_STATE 1 - -# define BT_HOST_DEVICES_COUNT 3 - -# if defined(RGB_MATRIX_ENABLE) - -# define LED_DRIVER_SHUTDOWN_PIN B7 - -/* 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 - -/* Reinit LED driver on tranport changed */ -# define REINIT_LED_DRIVER 1 - -# endif - -/* Keep USB connection in blueooth mode */ -# define KEEP_USB_CONNECTION_IN_WIRELESS_MODE - -/* Enable bluetooth NKRO */ -# define WIRELESS_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 - -/* Factory test keys */ -#define FN_KEY_1 MO(1) -#define FN_KEY_2 MO(3) - -#define P2P4G_CELAR_MASK 0 - -#define MATRIX_IO_DELAY 10 diff --git a/keyboards/keychron/v5_max/firmware/keychron_v5_max_ansi_encoder_via.bin b/keyboards/keychron/v5_max/firmware/keychron_v5_max_ansi_encoder_via.bin deleted file mode 100644 index 78b80a7e00..0000000000 Binary files a/keyboards/keychron/v5_max/firmware/keychron_v5_max_ansi_encoder_via.bin and /dev/null differ diff --git a/keyboards/keychron/v5_max/firmware/keychron_v5_max_iso_encoder_via.bin b/keyboards/keychron/v5_max/firmware/keychron_v5_max_iso_encoder_via.bin deleted file mode 100644 index aa9bd82592..0000000000 Binary files a/keyboards/keychron/v5_max/firmware/keychron_v5_max_iso_encoder_via.bin and /dev/null differ diff --git a/keyboards/keychron/v5_max/halconf.h b/keyboards/keychron/v5_max/halconf.h deleted file mode 100644 index 37bcc7c47b..0000000000 --- a/keyboards/keychron/v5_max/halconf.h +++ /dev/null @@ -1,31 +0,0 @@ -/* Copyright 2024 @ 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 - -#define _CHIBIOS_HAL_CONF_VER_8_0_ - -#define HAL_USE_SPI TRUE - -#ifdef LK_WIRELESS_ENABLE -# define HAL_USE_RTC TRUE -#endif - -#if defined(LK_WIRELESS_ENABLE) || defined(ENCODER_ENABLE) -# define PAL_USE_CALLBACKS TRUE -#endif - -#include_next diff --git a/keyboards/keychron/v5_max/info.json b/keyboards/keychron/v5_max/info.json deleted file mode 100644 index e82bbb9417..0000000000 --- a/keyboards/keychron/v5_max/info.json +++ /dev/null @@ -1,67 +0,0 @@ -{ - "keyboard_name": "Keychron V5 Max", - "manufacturer": "Keychron", - "url": "https://github.com/Keychron", - "maintainer": "lokher", - "processor": "STM32F401", - "bootloader": "stm32-dfu", - "usb": { - "vid": "0x3434" - }, - "features": { - "bootmagic": true, - "extrakey" : true, - "mousekey" : true, - "dip_switch" : true, - "nkro" : true, - "rgb_matrix": true, - "raw" : true, - "send_string" : true - }, - "matrix_pins": { - "cols": ["C6", "C7", "C8", "A14", "A15", "C10", "C11", "C13", "C14", "C15", "C0", "C1", "C2", "C3", "A0", "A1", "A2", "A3", "C9"], - "rows": ["C12", "D2", "B3", "B4", "B5", "B6"] - }, - "diode_direction": "ROW2COL", - "dip_switch" :{ - "pins": ["A8"] - }, - "rgb_matrix": { - "driver": "snled27351_spi", - "sleep": true, - "animations": { - "band_spiral_val": true, - "breathing": true, - "cycle_all": true, - "cycle_left_right": true, - "cycle_out_in": true, - "cycle_out_in_dual": true, - "cycle_pinwheel": true, - "cycle_spiral": true, - "cycle_up_down": true, - "digital_rain": true, - "dual_beacon": true, - "jellybean_raindrops": true, - "pixel_rain": true, - "rainbow_beacon": true, - "rainbow_moving_chevron": true, - "solid_reactive_multinexus": true, - "solid_reactive_multiwide": true, - "solid_reactive_simple": true, - "solid_splash": true, - "splash": true, - "typing_heatmap": true - } - }, - "eeprom": { - "wear_leveling": { - "driver": "embedded_flash", - "logical_size": 2048, - "backing_size": 4096 - } - }, - "build": { - "debounce_type": "sym_eager_pk" - }, - "debounce": 20 -} diff --git a/keyboards/keychron/v5_max/iso_encoder/config.h b/keyboards/keychron/v5_max/iso_encoder/config.h deleted file mode 100644 index 5809f0b44a..0000000000 --- a/keyboards/keychron/v5_max/iso_encoder/config.h +++ /dev/null @@ -1,65 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#pragma once - -#ifdef RGB_MATRIX_ENABLE -/* RGB Matrix driver configuration */ -# define DRIVER_COUNT 2 -# define DRIVER_1_LED_COUNT 51 -# define DRIVER_2_LED_COUNT 47 -# define RGB_MATRIX_LED_COUNT (DRIVER_1_LED_COUNT + DRIVER_2_LED_COUNT) - -# define SPI_SCK_PIN A5 -# define SPI_MISO_PIN A6 -# define SPI_MOSI_PIN A7 - -# define DRIVER_CS_PINS \ - { B8, B9 } -# define SNLED23751_SPI_DIVISOR 16 -# define SPI_DRIVER SPID1 - -/* Set LED driver current */ -# define SNLED27351_CURRENT_TUNE \ - { 0x2C, 0x2C, 0x2C, 0x2C, 0x2C, 0x2C, 0x2C, 0x2C, 0x2C, 0x2C, 0x2C, 0x2C } - -/* Set to infinit, which is use in USB mode by default */ -# define RGB_MATRIX_TIMEOUT RGB_MATRIX_TIMEOUT_INFINITE - -/* Allow shutdown of led driver to save power */ -# define RGB_MATRIX_DRIVER_SHUTDOWN_ENABLE -/* Turn off backlight on low brightness to save power */ -# define RGB_MATRIX_BRIGHTNESS_TURN_OFF_VAL 32 - -/* Indications */ -# define BT_HOST_LED_MATRIX_LIST \ - { 17, 18, 19 } - -# define P2P4G_HOST_LED_MATRIX_LIST \ - { 20 } - -# define BAT_LEVEL_LED_LIST \ - { 17, 18, 19, 20, 21, 22, 23, 24, 25, 26 } - -# define NUM_LOCK_INDEX 30 -# define CAPS_LOCK_INDEX 51 -# define LOW_BAT_IND_INDEX \ - { 89 } - -# define RGB_MATRIX_KEYPRESSES -# define RGB_MATRIX_FRAMEBUFFER_EFFECTS - -#endif diff --git a/keyboards/keychron/v5_max/iso_encoder/info.json b/keyboards/keychron/v5_max/iso_encoder/info.json deleted file mode 100644 index 993323becb..0000000000 --- a/keyboards/keychron/v5_max/iso_encoder/info.json +++ /dev/null @@ -1,128 +0,0 @@ -{ - "usb": { - "pid": "0x0951", - "device_version": "1.0.0" - }, - "features": { - "encoder": true, - "encoder_map": true - }, - "encoder": { - "rotary": [ - { - "pin_a": "B15", - "pin_b": "B14" - } - ] - }, - "layouts": { - "LAYOUT_iso_99": { - "layout": [ - {"matrix": [0, 0], "x": 0, "y": 0}, - {"matrix": [0, 2], "x": 2, "y": 0}, - {"matrix": [0, 3], "x": 3, "y": 0}, - {"matrix": [0, 4], "x": 4, "y": 0}, - {"matrix": [0, 5], "x": 5, "y": 0}, - {"matrix": [0, 7], "x": 6.5, "y": 0}, - {"matrix": [0, 8], "x": 7.5, "y": 0}, - {"matrix": [0, 9], "x": 8.5, "y": 0}, - {"matrix": [0, 10], "x": 9.5, "y": 0}, - {"matrix": [0, 11], "x": 11, "y": 0}, - {"matrix": [0, 12], "x": 12, "y": 0}, - {"matrix": [0, 13], "x": 13, "y": 0}, - {"matrix": [0, 14], "x": 14, "y": 0}, - {"matrix": [0, 15], "x": 15.25, "y": 0}, - {"matrix": [0, 16], "x": 16.25, "y": 0}, - {"matrix": [0, 17], "x": 17.25, "y": 0}, - {"matrix": [0, 18], "x": 18.5, "y": 0}, - - {"matrix": [1, 0], "x": 0, "y": 1.25}, - {"matrix": [1, 1], "x": 1, "y": 1.25}, - {"matrix": [1, 2], "x": 2, "y": 1.25}, - {"matrix": [1, 3], "x": 3, "y": 1.25}, - {"matrix": [1, 4], "x": 4, "y": 1.25}, - {"matrix": [1, 5], "x": 5, "y": 1.25}, - {"matrix": [1, 6], "x": 6, "y": 1.25}, - {"matrix": [1, 7], "x": 7, "y": 1.25}, - {"matrix": [1, 8], "x": 8, "y": 1.25}, - {"matrix": [1, 9], "x": 9, "y": 1.25}, - {"matrix": [1, 10], "x": 10, "y": 1.25}, - {"matrix": [1, 11], "x": 11, "y": 1.25}, - {"matrix": [1, 12], "x": 12, "y": 1.25}, - {"matrix": [1, 13], "x": 13, "y": 1.25, "w": 2}, - {"matrix": [1, 15], "x": 15.5, "y": 1.25}, - {"matrix": [1, 16], "x": 16.5, "y": 1.25}, - {"matrix": [1, 17], "x": 17.5, "y": 1.25}, - {"matrix": [1, 18], "x": 18.5, "y": 1.25}, - - {"matrix": [2, 0], "x": 0, "y": 2.25, "w": 1.5}, - {"matrix": [2, 1], "x": 1.5, "y": 2.25}, - {"matrix": [2, 2], "x": 2.5, "y": 2.25}, - {"matrix": [2, 3], "x": 3.5, "y": 2.25}, - {"matrix": [2, 4], "x": 4.5, "y": 2.25}, - {"matrix": [2, 5], "x": 5.5, "y": 2.25}, - {"matrix": [2, 6], "x": 6.5, "y": 2.25}, - {"matrix": [2, 7], "x": 7.5, "y": 2.25}, - {"matrix": [2, 8], "x": 8.5, "y": 2.25}, - {"matrix": [2, 9], "x": 9.5, "y": 2.25}, - {"matrix": [2, 10], "x": 10.5, "y": 2.25}, - {"matrix": [2, 11], "x": 11.5, "y": 2.25}, - {"matrix": [2, 12], "x": 12.5, "y": 2.25}, - {"matrix": [2, 15], "x": 15.5, "y": 2.25}, - {"matrix": [2, 16], "x": 16.5, "y": 2.25}, - {"matrix": [2, 17], "x": 17.5, "y": 2.25}, - {"matrix": [3, 18], "x": 18.5, "y": 2.25, "h": 2}, - - {"matrix": [3, 0], "x": 0, "y": 3.25, "w": 1.75}, - {"matrix": [3, 1], "x": 1.75, "y": 3.25}, - {"matrix": [3, 2], "x": 2.75, "y": 3.25}, - {"matrix": [3, 3], "x": 3.75, "y": 3.25}, - {"matrix": [3, 4], "x": 4.75, "y": 3.25}, - {"matrix": [3, 5], "x": 5.75, "y": 3.25}, - {"matrix": [3, 6], "x": 6.75, "y": 3.25}, - {"matrix": [3, 7], "x": 7.75, "y": 3.25}, - {"matrix": [3, 8], "x": 8.75, "y": 3.25}, - {"matrix": [3, 9], "x": 9.75, "y": 3.25}, - {"matrix": [3, 10], "x": 10.75, "y": 3.25}, - {"matrix": [3, 11], "x": 11.75, "y": 3.25}, - {"matrix": [3, 12], "x": 12.75, "y": 3.25}, - {"matrix": [2, 13], "x": 13.75, "y": 2.25, "w": 1.25, "h": 2}, - {"matrix": [3, 15], "x": 15.5, "y": 3.25}, - {"matrix": [3, 16], "x": 16.5, "y": 3.25}, - {"matrix": [3, 17], "x": 17.5, "y": 3.25}, - - {"matrix": [4, 0], "x": 0, "y": 4.25, "w": 1.25}, - {"matrix": [4, 1], "x": 1.25, "y": 4.25}, - {"matrix": [4, 2], "x": 2.25, "y": 4.25}, - {"matrix": [4, 3], "x": 3.25, "y": 4.25}, - {"matrix": [4, 4], "x": 4.25, "y": 4.25}, - {"matrix": [4, 5], "x": 5.25, "y": 4.25}, - {"matrix": [4, 6], "x": 6.25, "y": 4.25}, - {"matrix": [4, 7], "x": 7.25, "y": 4.25}, - {"matrix": [4, 8], "x": 8.25, "y": 4.25}, - {"matrix": [4, 9], "x": 9.25, "y": 4.25}, - {"matrix": [4, 10], "x": 10.25, "y": 4.25}, - {"matrix": [4, 11], "x": 11.25, "y": 4.25}, - {"matrix": [4, 12], "x": 12.25, "y": 4.25, "w": 1.75}, - {"matrix": [4, 14], "x": 14.25, "y": 4.5}, - {"matrix": [4, 15], "x": 15.5, "y": 4.25}, - {"matrix": [4, 16], "x": 16.5, "y": 4.25}, - {"matrix": [4, 17], "x": 17.5, "y": 4.25}, - {"matrix": [4, 18], "x": 18.5, "y": 4.25, "h": 2}, - - {"matrix": [5, 0], "x": 0, "y": 5.25, "w": 1.25}, - {"matrix": [5, 1], "x": 1.25, "y": 5.25, "w": 1.25}, - {"matrix": [5, 2], "x": 2.5, "y": 5.25, "w": 1.25}, - {"matrix": [5, 6], "x": 3.75, "y": 5.25, "w": 6.25}, - {"matrix": [5, 10], "x": 10, "y": 5.25}, - {"matrix": [5, 11], "x": 11, "y": 5.25}, - {"matrix": [5, 12], "x": 12, "y": 5.25}, - {"matrix": [5, 13], "x": 13.25, "y": 5.5}, - {"matrix": [5, 14], "x": 14.25, "y": 5.5}, - {"matrix": [5, 15], "x": 15.25, "y": 5.5}, - {"matrix": [5, 16], "x": 16.5, "y": 5.25}, - {"matrix": [5, 17], "x": 17.5, "y": 5.25} - ] - } - } -} diff --git a/keyboards/keychron/v5_max/iso_encoder/iso_encoder.c b/keyboards/keychron/v5_max/iso_encoder/iso_encoder.c deleted file mode 100644 index 01645a22ac..0000000000 --- a/keyboards/keychron/v5_max/iso_encoder/iso_encoder.c +++ /dev/null @@ -1,165 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#include "quantum.h" - -// clang-format off - -#ifdef RGB_MATRIX_ENABLE -const snled27351_led_t g_snled27351_leds[RGB_MATRIX_LED_COUNT] = { -/* Refer to SNLED27351 manual for these locations - * driver - * | R location - * | | G location - * | | | B location - * | | | | */ - {0, G_1, I_1, H_1}, - {0, G_3, I_3, H_3}, - {0, G_4, I_4, H_4}, - {0, G_5, I_5, H_5}, - {0, G_6, I_6, H_6}, - {0, G_8, I_8, H_8}, - {0, G_9, I_9, H_9}, - {0, G_10, I_10, H_10}, - {0, G_11, I_11, H_11}, - {0, G_12, I_12, H_12}, - {0, G_13, I_13, H_13}, - {0, G_14, I_14, H_14}, - {0, G_15, I_15, H_15}, - {0, G_16, I_16, H_16}, - {0, J_16, L_16, K_16}, - {0, J_15, L_15, K_15}, - - {0, A_1, C_1, B_1}, - {0, A_2, C_2, B_2}, - {0, A_3, C_3, B_3}, - {0, A_4, C_4, B_4}, - {0, A_5, C_5, B_5}, - {0, A_6, C_6, B_6}, - {0, A_7, C_7, B_7}, - {0, A_8, C_8, B_8}, - {0, A_9, C_9, B_9}, - {0, A_10, C_10, B_10}, - {0, A_11, C_11, B_11}, - {0, A_12, C_12, B_12}, - {0, A_13, C_13, B_13}, - {0, A_14, C_14, B_14}, - {0, A_16, C_16, B_16}, - {0, J_13, L_13, K_13}, - {0, J_12, L_12, K_12}, - {0, J_11, L_11, K_11}, - - {0, D_1, F_1, E_1}, - {0, D_2, F_2, E_2}, - {0, D_3, F_3, E_3}, - {0, D_4, F_4, E_4}, - {0, D_5, F_5, E_5}, - {0, D_6, F_6, E_6}, - {0, D_7, F_7, E_7}, - {0, D_8, F_8, E_8}, - {0, D_9, F_9, E_9}, - {0, D_10, F_10, E_10}, - {0, D_11, F_11, E_11}, - {0, D_12, F_12, E_12}, - {0, D_13, F_13, E_13}, - {0, D_14, F_14, E_14}, - {0, D_16, F_16, E_16}, - {0, J_10, L_10, K_10}, - {0, J_9, L_9, K_9}, - - {1, A_16, C_16, B_16}, - {1, A_15, C_15, B_15}, - {1, A_14, C_14, B_14}, - {1, A_13, C_13, B_13}, - {1, A_12, C_12, B_12}, - {1, A_11, C_11, B_11}, - {1, A_10, C_10, B_10}, - {1, A_9, C_9, B_9}, - {1, A_8, C_8, B_8}, - {1, A_7, C_7, B_7}, - {1, A_6, C_6, B_6}, - {1, A_5, C_5, B_5}, - {1, A_4, C_4, B_4}, - {1, A_1, C_1, B_1}, - {1, J_6, L_6, K_6}, - {1, J_7, L_7, K_7}, - {1, J_8, L_8, K_8}, - - {1, G_16, I_16, H_16}, - {1, G_15, I_15, H_15}, - {1, G_14, I_14, H_14}, - {1, G_13, I_13, H_13}, - {1, G_12, I_12, H_12}, - {1, G_11, I_11, H_11}, - {1, G_10, I_10, H_10}, - {1, G_9, I_9, H_9}, - {1, G_8, I_8, H_8}, - {1, G_7, I_7, H_7}, - {1, G_6, I_6, H_6}, - {1, G_5, I_5, H_5}, - {1, G_4, I_4, H_4}, - {1, G_2, I_2, H_2}, - {1, G_1, I_1, H_1}, - {1, J_3, L_3, K_3}, - {1, J_4, L_4, K_4}, - {1, J_5, L_5, K_5}, - - {1, D_16, F_16, E_16}, - {1, D_15, F_15, E_15}, - {1, D_14, F_14, E_14}, - {1, D_10, F_10, E_10}, - {1, D_6, F_6, E_6}, - {1, D_5, F_5, E_5}, - {1, D_4, F_4, E_4}, - {1, D_3, F_3, E_3}, - {1, D_2, F_2, E_2}, - {1, D_1, F_1, E_1}, - {1, J_1, L_1, K_1}, - {1, J_2, L_2, K_2}, -}; - -#define __ NO_LED - -led_config_t g_led_config = { - { - // Key Matrix to LED Index - { 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, 40, 41, 42, 43, 44, 45, 46, 47, __, 48, 49, 50, __ }, - { 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, __, __, 64, 65, 66, 67 }, - { 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, __, 81, 82, 83, 84, 85,}, - { 86, 87, 88, __, __, __, 89, __, __, __, 90, 91, 92, 93, 94, 95, 96, 97, __ } - }, - { - // LED Index to Physical Position - {0,0}, {24,0}, {36,0}, {48,0}, {60,0}, {78,0}, {90,0}, {102,0}, {106,0}, {133,0}, {145,0}, {157,0}, {169,0}, {185,0}, {195,0}, {207,0}, - {0,15}, {12,15}, {24,15}, {36,15}, {48,15}, {60,15}, {72,15}, {84,15}, {97,15}, {109,15}, {121,15}, {133,15}, {145,15}, {163,15}, {188,15}, {200,15}, {212,15}, {224,15}, - {3,26}, {18,26}, {30,26}, {42,26}, {54,26}, {66,26}, {78,26}, {91,26}, {103,26}, {115,26}, {127,26}, {139,26}, {151,26}, {166,32}, {188,26}, {200,26}, {212,26}, - {5,38}, {21,38}, {33,38}, {45,38}, {57,38}, {69,38}, {81,38}, {94,38}, {106,38}, {118,38}, {130,38}, {142,38}, {154,38}, {188,38}, {200,38}, {212,38}, {224,32}, - {3,49}, {13,49}, {27,49}, {39,49}, {51,49}, {63,49}, {75,49}, {88,49}, {100,49}, {112,49}, {124,49}, {136,49}, {152,49}, {172,52}, {188,49}, {200,49}, {212,49}, {224,55}, - {1,61}, {17,61}, {32,61}, {77,61}, {121,61}, {133,61}, {145,61}, {160,64}, {172,64}, {184,64}, {200,61}, {212,61}, - }, - { - // RGB LED Index to Flag - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1, 8, 4, 4, 4, - 1, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, - 8, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1, 4, 4, 4, 4, - 1, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1, 1, 4, 4, 4, 4, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 - } -}; -#endif diff --git a/keyboards/keychron/v5_max/iso_encoder/keymaps/default/keymap.c b/keyboards/keychron/v5_max/iso_encoder/keymaps/default/keymap.c deleted file mode 100644 index 1fcf8b9ce1..0000000000 --- a/keyboards/keychron/v5_max/iso_encoder/keymaps/default/keymap.c +++ /dev/null @@ -1,76 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#include QMK_KEYBOARD_H -#include "keychron_common.h" - -enum layers { - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN, -}; -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_iso_99( - KC_ESC, KC_BRID, KC_BRIU, KC_MCTRL, KC_LNPAD, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_DEL, KC_HOME, KC_END, KC_MUTE, - KC_GRV, 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_NUM, KC_PSLS, KC_PAST, KC_PMNS, - 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_P7, KC_P8, KC_P9, KC_PPLS, - 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_NUHS, KC_ENT, KC_P4, KC_P5, KC_P6, - KC_LSFT, KC_NUBS, 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_P1, KC_P2, KC_P3, KC_PENT, - KC_LCTL, KC_LOPTN, KC_LCMMD, KC_SPC, KC_RCMMD, MO(MAC_FN), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT, KC_P0, KC_PDOT ), - - [MAC_FN] = LAYOUT_iso_99( - _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, _______, RGB_TOG, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ), - - [WIN_BASE] = LAYOUT_iso_99( - KC_ESC, 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_DEL, KC_HOME, KC_END, KC_MUTE, - KC_GRV, 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_NUM, KC_PSLS, KC_PAST, KC_PMNS, - 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_P7, KC_P8, KC_P9, KC_PPLS, - 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_NUHS, KC_ENT, KC_P4, KC_P5, KC_P6, - KC_LSFT, KC_NUBS, 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_P1, KC_P2, KC_P3, KC_PENT, - KC_LCTL, KC_LWIN, KC_LALT, KC_SPC, KC_RALT, MO(WIN_FN), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT, KC_P0, KC_PDOT ), - - [WIN_FN] = LAYOUT_iso_99( - _______, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, _______, RGB_TOG, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ), - }; - -#if defined(ENCODER_MAP_ENABLE) -const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][2] = { - [MAC_BASE] = {ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [MAC_FN] = {ENCODER_CCW_CW(RGB_VAD, RGB_VAI)}, - [WIN_BASE] = {ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [WIN_FN] = {ENCODER_CCW_CW(RGB_VAD, RGB_VAI)}, -}; -#endif // ENCODER_MAP_ENABLE - -// clang-format on -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - if (!process_record_keychron_common(keycode, record)) { - return false; - } - return true; -} diff --git a/keyboards/keychron/v5_max/iso_encoder/keymaps/via/keymap.c b/keyboards/keychron/v5_max/iso_encoder/keymaps/via/keymap.c deleted file mode 100644 index 1fcf8b9ce1..0000000000 --- a/keyboards/keychron/v5_max/iso_encoder/keymaps/via/keymap.c +++ /dev/null @@ -1,76 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#include QMK_KEYBOARD_H -#include "keychron_common.h" - -enum layers { - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN, -}; -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_iso_99( - KC_ESC, KC_BRID, KC_BRIU, KC_MCTRL, KC_LNPAD, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_DEL, KC_HOME, KC_END, KC_MUTE, - KC_GRV, 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_NUM, KC_PSLS, KC_PAST, KC_PMNS, - 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_P7, KC_P8, KC_P9, KC_PPLS, - 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_NUHS, KC_ENT, KC_P4, KC_P5, KC_P6, - KC_LSFT, KC_NUBS, 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_P1, KC_P2, KC_P3, KC_PENT, - KC_LCTL, KC_LOPTN, KC_LCMMD, KC_SPC, KC_RCMMD, MO(MAC_FN), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT, KC_P0, KC_PDOT ), - - [MAC_FN] = LAYOUT_iso_99( - _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, _______, RGB_TOG, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ), - - [WIN_BASE] = LAYOUT_iso_99( - KC_ESC, 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_DEL, KC_HOME, KC_END, KC_MUTE, - KC_GRV, 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_NUM, KC_PSLS, KC_PAST, KC_PMNS, - 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_P7, KC_P8, KC_P9, KC_PPLS, - 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_NUHS, KC_ENT, KC_P4, KC_P5, KC_P6, - KC_LSFT, KC_NUBS, 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_P1, KC_P2, KC_P3, KC_PENT, - KC_LCTL, KC_LWIN, KC_LALT, KC_SPC, KC_RALT, MO(WIN_FN), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT, KC_P0, KC_PDOT ), - - [WIN_FN] = LAYOUT_iso_99( - _______, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, _______, RGB_TOG, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ), - }; - -#if defined(ENCODER_MAP_ENABLE) -const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][2] = { - [MAC_BASE] = {ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [MAC_FN] = {ENCODER_CCW_CW(RGB_VAD, RGB_VAI)}, - [WIN_BASE] = {ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [WIN_FN] = {ENCODER_CCW_CW(RGB_VAD, RGB_VAI)}, -}; -#endif // ENCODER_MAP_ENABLE - -// clang-format on -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - if (!process_record_keychron_common(keycode, record)) { - return false; - } - return true; -} diff --git a/keyboards/keychron/v5_max/iso_encoder/keymaps/via/rules.mk b/keyboards/keychron/v5_max/iso_encoder/keymaps/via/rules.mk deleted file mode 100644 index 1e5b99807c..0000000000 --- a/keyboards/keychron/v5_max/iso_encoder/keymaps/via/rules.mk +++ /dev/null @@ -1 +0,0 @@ -VIA_ENABLE = yes diff --git a/keyboards/keychron/v5_max/iso_encoder/rules.mk b/keyboards/keychron/v5_max/iso_encoder/rules.mk deleted file mode 100644 index 7ff128fa69..0000000000 --- a/keyboards/keychron/v5_max/iso_encoder/rules.mk +++ /dev/null @@ -1 +0,0 @@ -# This file intentionally left blank \ No newline at end of file diff --git a/keyboards/keychron/v5_max/mcuconf.h b/keyboards/keychron/v5_max/mcuconf.h deleted file mode 100644 index 89294ee64b..0000000000 --- a/keyboards/keychron/v5_max/mcuconf.h +++ /dev/null @@ -1,37 +0,0 @@ -/* Copyright 2024 @ 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 - -#include_next - -#undef STM32_HSECLK -#define STM32_HSECLK 16000000 - -#undef STM32_PLLM_VALUE -#define STM32_PLLM_VALUE 8 - -#undef STM32_PLLN_VALUE -#define STM32_PLLN_VALUE 96 - -#undef STM32_PLLP_VALUE -#define STM32_PLLP_VALUE 4 - -#undef STM32_PLLQ_VALUE -#define STM32_PLLQ_VALUE 4 - -#undef STM32_SPI_USE_SPI1 -#define STM32_SPI_USE_SPI1 TRUE diff --git a/keyboards/keychron/v5_max/readme.md b/keyboards/keychron/v5_max/readme.md deleted file mode 100644 index e33116545f..0000000000 --- a/keyboards/keychron/v5_max/readme.md +++ /dev/null @@ -1,21 +0,0 @@ -# Keychron V5 Max - -![Keychron V5 Max](https://cdn.shopify.com/s/files/1/0059/0630/1017/files/Keychron-V5-Max-QMK-VIA-wireless-mechanical-keyboard.jpg?v=1702977391) - -A customizable 96% keyboard. - -* Keyboard Maintainer: [Keychron](https://github.com/keychron) -* Hardware Supported: Keychron V5 Max -* Hardware Availability: [Keychron V5 Max QMK/VIA Wireless Custom Mechanical Keyboard](https://www.keychron.com/products/keychron-v5-max-qmk-via-wireless-custom-mechanical-keyboard?variant=40759400005721) - -Make example for this keyboard (after setting up your build environment): - - make keychron/v5_max/ansi_encoder:default - -Flashing example for this keyboard: - - make keychron/v5_max/ansi_encoder:default:flash - -**Reset Key**: Toggle mode switch to "Cable", hold down the *Esc* key or reset button underneath space bar while connecting the USB cable, - -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). diff --git a/keyboards/keychron/v5_max/rules.mk b/keyboards/keychron/v5_max/rules.mk deleted file mode 100644 index 4eaf6820bc..0000000000 --- a/keyboards/keychron/v5_max/rules.mk +++ /dev/null @@ -1,4 +0,0 @@ -include keyboards/keychron/common/wireless/wireless.mk -include keyboards/keychron/common/keychron_common.mk - -VPATH += $(TOP_DIR)/keyboards/keychron diff --git a/keyboards/keychron/v5_max/v5_max.c b/keyboards/keychron/v5_max/v5_max.c deleted file mode 100644 index 25949df514..0000000000 --- a/keyboards/keychron/v5_max/v5_max.c +++ /dev/null @@ -1,84 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#include "quantum.h" -#include "keychron_task.h" -#ifdef FACTORY_TEST_ENABLE -# include "factory_test.h" -# include "keychron_common.h" -#endif -#ifdef LK_WIRELESS_ENABLE -# include "lkbt51.h" -# include "wireless.h" -# include "keychron_wireless_common.h" -# include "battery.h" -#endif - -#define POWER_ON_LED_DURATION 3000 -static uint32_t power_on_indicator_timer; - -#ifdef DIP_SWITCH_ENABLE -bool dip_switch_update_kb(uint8_t index, bool active) { - if (index == 0) { - default_layer_set(1UL << (active ? 0 : 2)); - } - dip_switch_update_user(index, active); - - return true; -} -#endif - -void keyboard_post_init_kb(void) { -#ifdef LK_WIRELESS_ENABLE - palSetLineMode(P2P4_MODE_SELECT_PIN, PAL_MODE_INPUT); - palSetLineMode(BT_MODE_SELECT_PIN, PAL_MODE_INPUT); - - writePin(BAT_LOW_LED_PIN, BAT_LOW_LED_PIN_ON_STATE); - - lkbt51_init(false); - wireless_init(); -#endif - - power_on_indicator_timer = timer_read32(); -#ifdef ENCODER_ENABLE - encoder_cb_init(); -#endif - - keyboard_post_init_user(); -} - -bool keychron_task_kb(void) { - if (power_on_indicator_timer) { - if (timer_elapsed32(power_on_indicator_timer) > POWER_ON_LED_DURATION) { - power_on_indicator_timer = 0; - -#ifdef LK_WIRELESS_ENABLE - writePin(BAT_LOW_LED_PIN, !BAT_LOW_LED_PIN_ON_STATE); -#endif - } else { -#ifdef LK_WIRELESS_ENABLE - writePin(BAT_LOW_LED_PIN, BAT_LOW_LED_PIN_ON_STATE); -#endif - } - } - return true; -} - -#ifdef LK_WIRELESS_ENABLE -bool lpm_is_kb_idle(void) { - return power_on_indicator_timer == 0 && !factory_reset_indicating(); -} -#endif diff --git a/keyboards/keychron/v5_max/via_json/v5_ansi_encoder.json b/keyboards/keychron/v5_max/via_json/v5_ansi_encoder.json deleted file mode 100644 index 7e73a1616b..0000000000 --- a/keyboards/keychron/v5_max/via_json/v5_ansi_encoder.json +++ /dev/null @@ -1,321 +0,0 @@ -{ - "name": "Keychron V5 Max ANSI Knob", - "vendorId": "0x3434", - "productId": "0x0950", - "keycodes": ["qmk_lighting"], - "menus": [ - { - "label": "Lighting", - "content": [ - { - "label": "Backlight", - "content": [ - { - "label": "Brightness", - "type": "range", - "options": [0, 255], - "content": ["id_qmk_rgb_matrix_brightness", 3, 1] - }, - { - "label": "Effect", - "type": "dropdown", - "content": ["id_qmk_rgb_matrix_effect", 3, 2], - "options": [ - ["None", 0], - ["Solid Color", 1], - ["Breathing", 2], - ["Band Spiral Val", 3], - ["Cycle All", 4], - ["Cycle Left Right", 5], - ["Cycle Up Down", 6], - ["Rainbow Moving Chevron", 7], - ["Cycle Out In", 8], - ["Cycle Out In Dual", 9], - ["Cycle Pinwheel", 10], - ["Cycle Spiral", 11], - ["Dual Beacon", 12], - ["Rainbow Beacon", 13], - ["Jellybean Raindrops", 14], - ["Pixel Rain", 15], - ["Typing Heatmap", 16], - ["Digital Rain", 17], - ["Reactive Simple", 18], - ["Reactive Multiwide", 19], - ["Reactive Multinexus", 20], - ["Splash", 21], - ["Solid Splash", 22] - ] - }, - { - "showIf": "{id_qmk_rgb_matrix_effect} > 1", - "label": "Effect Speed", - "type": "range", - "options": [0, 255], - "content": ["id_qmk_rgb_matrix_effect_speed", 3, 3] - }, - { - "showIf": "{id_qmk_rgb_matrix_effect} != 0 && ( {id_qmk_rgb_matrix_effect} < 4 || {id_qmk_rgb_matrix_effect} == 18 || ({id_qmk_rgb_matrix_effect} > 17 && {id_qmk_rgb_matrix_effect} != 21) ) ", - "label": "Color", - "type": "color", - "content": ["id_qmk_rgb_matrix_color", 3, 4] - } - ] - } - ] - } - ], - "customKeycodes": [ - {"name": "Left Option", "title": "Left Option", "shortName": "LOpt"}, - {"name": "Right Option", "title": "Right Option", "shortName": "ROpt"}, - {"name": "Left Cmd", "title": "Left Command", "shortName": "LCmd"}, - {"name": "Right Cmd", "title": "Right Command", "shortName": "RCmd"}, - {"name": "Misson Control", "title": "Misson Control in Mac", "shortName": "MCtl"}, - {"name": "Lanuch Pad", "title": "Lanuch Pad in Windows", "shortName": "LPad"}, - {"name": "Task View", "title": "Task View in Windows", "shortName": "Task"}, - {"name": "File Explorer", "title": "File Explorer in Windows", "shortName": "File"}, - {"name": "Screen shot", "title": "Screenshot in macOS", "shortName": "SShot"}, - {"name": "Cortana", "title": "Cortana in Windows", "shortName": "Cortana"}, - {"name": "Siri", "title": "Siri in macOS", "shortName": "Siri"}, - {"name": "Bluetooth Host 1", "title": "Bluetooth Host 1", "shortName": "BTH1"}, - {"name": "Bluetooth Host 2", "title": "Bluetooth Host 2", "shortName": "BTH2"}, - {"name": "Bluetooth Host 3", "title": "Bluetooth Host 3", "shortName": "BTH3"}, - {"name": "2.4G", "title": "2.4G", "shortName": "2.4G"}, - {"name": "Battery Level", "title": "Show battery level", "shortName": "Batt"} - ], - "matrix": {"rows": 6, "cols" : 19}, - "layouts": { - "keymap": [ - [ - { - "c": "#777777" - }, - "0, 0", - { - "x": 1, - "c": "#cccccc" - }, - "0, 2", - "0, 3", - "0, 4", - "0, 5", - { - "x": 0.5, - "c": "#aaaaaa" - }, - "0, 7", - "0, 8", - "0, 9", - "0, 10", - { - "x": 0.5, - "c": "#cccccc" - }, - "0, 11", - "0, 12", - "0, 13", - "0, 14", - { - "x": 0.25, - "c": "#aaaaaa" - }, - "0, 15", - "0, 16", - "0, 17", - { - "x": 0.25, - "c": "#aaaaaa" - }, - "0, 18\n\n\n\n\n\n\n\n\ne0" - ], - [ - { - "y": 0.25, - "c": "#aaaaaa" - }, - "1, 0", - { - "c": "#cccccc" - }, - "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": 2, - "c": "#aaaaaa" - }, - "1, 13", - { - "x": 0.5 - }, - "1, 15", - "1, 16", - "1, 17", - "1, 18" - ], - [ - { - "w": 1.5, - "c": "#aaaaaa" - }, - "2, 0", - { - "c": "#cccccc" - }, - "2, 1", - "2, 2", - "2, 3", - "2, 4", - "2, 5", - "2, 6", - "2, 7", - "2, 8", - "2, 9", - "2, 10", - "2, 11", - "2, 12", - { - "w": 1.5, - "c": "#aaaaaa" - }, - "2, 13", - { - "x": 0.5, - "c": "#cccccc" - }, - "2, 15", - "2, 16", - "2, 17", - { - "h": 2, - "c": "#aaaaaa" - }, - "3, 18" - ], - [ - { - "w": 1.75, - "c": "#aaaaaa" - }, - "3, 0", - { - "c": "#cccccc" - }, - "3, 1", - "3, 2", - "3, 3", - "3, 4", - "3, 5", - "3, 6", - "3, 7", - "3, 8", - "3, 9", - "3, 10", - "3, 11", - { - "w": 2.25, - "c": "#aaaaaa" - }, - "3, 12", - { - "x": 0.5, - "c": "#cccccc" - }, - "3, 15", - "3, 16", - "3, 17" - ], - [ - { - "w": 2.25, - "c": "#aaaaaa" - }, - "4, 0", - { - "c": "#cccccc" - }, - "4, 2", - "4, 3", - "4, 4", - "4, 5", - "4, 6", - "4, 7", - "4, 8", - "4, 9", - "4, 10", - "4, 11", - { - "w": 1.75, - "c": "#aaaaaa" - }, - "4, 12", - { - "x": 0.25, - "y": 0.25, - "c": "#cccccc" - }, - "4, 14", - { - "x": 0.25, - "y": -0.25 - }, - "4, 15", - "4, 16", - "4, 17", - { - "h": 2, - "c": "#aaaaaa" - }, - "4, 18" - ], - [ - { "w": 1.25, - "c": "#aaaaaa" - }, - "5, 0", - { - "w": 1.25 - }, - "5, 1", - { - "w": 1.25 - }, - "5, 2", - { - "w": 6.25, - "c": "#cccccc" - }, - "5, 6", - { - "c": "#aaaaaa" - }, - "5, 10", - "5, 11", - "5, 12", - { - "x": 0.25, - "y": 0.25, - "c": "#cccccc" - }, - "5, 13", - "5, 14", - "5, 15", - { - "x": 0.25, - "y": -0.25 - }, - "5, 16", - "5, 17" - ] - ] - } - -} diff --git a/keyboards/keychron/v5_max/via_json/v5_iso_encoder.json b/keyboards/keychron/v5_max/via_json/v5_iso_encoder.json deleted file mode 100644 index 1d629bf581..0000000000 --- a/keyboards/keychron/v5_max/via_json/v5_iso_encoder.json +++ /dev/null @@ -1,323 +0,0 @@ -{ - "name": "Keychron V5 Max ISO Knob", - "vendorId": "0x3434", - "productId": "0x0951", - "keycodes": ["qmk_lighting"], - "menus": [ - { - "label": "Lighting", - "content": [ - { - "label": "Backlight", - "content": [ - { - "label": "Brightness", - "type": "range", - "options": [0, 255], - "content": ["id_qmk_rgb_matrix_brightness", 3, 1] - }, - { - "label": "Effect", - "type": "dropdown", - "content": ["id_qmk_rgb_matrix_effect", 3, 2], - "options": [ - ["None", 0], - ["Solid Color", 1], - ["Breathing", 2], - ["Band Spiral Val", 3], - ["Cycle All", 4], - ["Cycle Left Right", 5], - ["Cycle Up Down", 6], - ["Rainbow Moving Chevron", 7], - ["Cycle Out In", 8], - ["Cycle Out In Dual", 9], - ["Cycle Pinwheel", 10], - ["Cycle Spiral", 11], - ["Dual Beacon", 12], - ["Rainbow Beacon", 13], - ["Jellybean Raindrops", 14], - ["Pixel Rain", 15], - ["Typing Heatmap", 16], - ["Digital Rain", 17], - ["Reactive Simple", 18], - ["Reactive Multiwide", 19], - ["Reactive Multinexus", 20], - ["Splash", 21], - ["Solid Splash", 22] - ] - }, - { - "showIf": "{id_qmk_rgb_matrix_effect} > 1", - "label": "Effect Speed", - "type": "range", - "options": [0, 255], - "content": ["id_qmk_rgb_matrix_effect_speed", 3, 3] - }, - { - "showIf": "{id_qmk_rgb_matrix_effect} != 0 && ( {id_qmk_rgb_matrix_effect} < 4 || {id_qmk_rgb_matrix_effect} == 18 || ({id_qmk_rgb_matrix_effect} > 17 && {id_qmk_rgb_matrix_effect} != 21) ) ", - "label": "Color", - "type": "color", - "content": ["id_qmk_rgb_matrix_color", 3, 4] - } - ] - } - ] - } - ], - "customKeycodes": [ - {"name": "Left Option", "title": "Left Option", "shortName": "LOpt"}, - {"name": "Right Option", "title": "Right Option", "shortName": "ROpt"}, - {"name": "Left Cmd", "title": "Left Command", "shortName": "LCmd"}, - {"name": "Right Cmd", "title": "Right Command", "shortName": "RCmd"}, - {"name": "Misson Control", "title": "Misson Control in Mac", "shortName": "MCtl"}, - {"name": "Lanuch Pad", "title": "Lanuch Pad in Windows", "shortName": "LPad"}, - {"name": "Task View", "title": "Task View in Windows", "shortName": "Task"}, - {"name": "File Explorer", "title": "File Explorer in Windows", "shortName": "File"}, - {"name": "Screen shot", "title": "Screenshot in macOS", "shortName": "SShot"}, - {"name": "Cortana", "title": "Cortana in Windows", "shortName": "Cortana"}, - {"name": "Siri", "title": "Siri in macOS", "shortName": "Siri"}, - {"name": "Bluetooth Host 1", "title": "Bluetooth Host 1", "shortName": "BTH1"}, - {"name": "Bluetooth Host 2", "title": "Bluetooth Host 2", "shortName": "BTH2"}, - {"name": "Bluetooth Host 3", "title": "Bluetooth Host 3", "shortName": "BTH3"}, - {"name": "2.4G", "title": "2.4G", "shortName": "2.4G"}, - {"name": "Battery Level", "title": "Show battery level", "shortName": "Batt"} - ], - "matrix": {"rows": 6, "cols" : 19}, - "layouts": { - "keymap": [ - [ - { - "c": "#777777" - }, - "0, 0", - { - "x": 1, - "c": "#cccccc" - }, - "0, 2", - "0, 3", - "0, 4", - "0, 5", - { - "x": 0.5, - "c": "#aaaaaa" - }, - "0, 7", - "0, 8", - "0, 9", - "0, 10", - { - "x": 0.5, - "c": "#cccccc" - }, - "0, 11", - "0, 12", - "0, 13", - "0, 14", - { - "x": 0.25, - "c": "#aaaaaa" - }, - "0, 15", - "0, 16", - "0, 17", - { - "x": 0.25, - "c": "#aaaaaa" - }, - "0, 18\n\n\n\n\n\n\n\n\ne0" - ], - [ - { - "y": 0.25, - "c": "#aaaaaa" - }, - "1, 0", - { - "c": "#cccccc" - }, - "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": 2, - "c": "#aaaaaa" - }, - "1, 13", - { - "x": 0.5 - }, - "1, 15", - "1, 16", - "1, 17", - "1, 18" - ], - [ - { - "w": 1.5, - "c": "#aaaaaa" - }, - "2, 0", - { - "c": "#cccccc" - }, - "2, 1", - "2, 2", - "2, 3", - "2, 4", - "2, 5", - "2, 6", - "2, 7", - "2, 8", - "2, 9", - "2, 10", - "2, 11", - "2, 12", - { - "x": 0.25, - "w": 1.25, - "h": 2, - "x2": -0.25, - "w2": 1.5, - "h2": 1, - "c": "#777777" - }, - "2, 13", - { - "x": 0.5, - "c": "#cccccc" - }, - "2, 15", - "2, 16", - "2, 17", - { - "h": 2, - "c": "#aaaaaa" - }, - "3, 18" - ], - [ - { - "w": 1.75, - "c": "#aaaaaa" - }, - "3, 0", - { - "c": "#cccccc" - }, - "3, 1", - "3, 2", - "3, 3", - "3, 4", - "3, 5", - "3, 6", - "3, 7", - "3, 8", - "3, 9", - "3, 10", - "3, 11", - "3, 12", - { - "x": 1.75, - "c": "#cccccc" - }, - "3, 15", - "3, 16", - "3, 17" - ], - [ - { - "w": 1.25, - "c": "#aaaaaa" - }, - "4, 0", - { - "c": "#cccccc" - }, - "4, 1", - "4, 2", - "4, 3", - "4, 4", - "4, 5", - "4, 6", - "4, 7", - "4, 8", - "4, 9", - "4, 10", - "4, 11", - { - "w": 1.75, - "c": "#aaaaaa" - }, - "4, 12", - { - "x": 0.25, - "y": 0.25, - "c": "#cccccc" - }, - "4, 14", - { - "x": 0.25, - "y": -0.25 - }, - "4, 15", - "4, 16", - "4, 17", - { - "h": 2, - "c": "#aaaaaa" - }, - "4, 18" - ], - [ - { "w": 1.25, - "c": "#aaaaaa" - }, - "5, 0", - { - "w": 1.25 - }, - "5, 1", - { - "w": 1.25 - }, - "5, 2", - { - "w": 6.25, - "c": "#cccccc" - }, - "5, 6", - { - "c": "#aaaaaa" - }, - "5, 10", - "5, 11", - "5, 12", - { - "x": 0.25, - "y": 0.25, - "c": "#cccccc" - }, - "5, 13", - "5, 14", - "5, 15", - { - "x": 0.25, - "y": -0.25 - }, - "5, 16", - "5, 17" - ] - ] - } - -} diff --git a/keyboards/keychron/v6_max/ansi_encoder/ansi_encoder.c b/keyboards/keychron/v6_max/ansi_encoder/ansi_encoder.c deleted file mode 100644 index 517b0a416e..0000000000 --- a/keyboards/keychron/v6_max/ansi_encoder/ansi_encoder.c +++ /dev/null @@ -1,175 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#include "quantum.h" - -// clang-format off - -#ifdef RGB_MATRIX_ENABLE -const snled27351_led_t g_snled27351_leds[RGB_MATRIX_LED_COUNT] = { -/* Refer to SNLED27351 manual for these locations - * driver - * | R location - * | | G location - * | | | B location - * | | | | */ - {0, G_1, I_1, H_1}, - {0, G_2, I_2, H_2}, - {0, G_3, I_3, H_3}, - {0, G_4, I_4, H_4}, - {0, G_5, I_5, H_5}, - {0, G_6, I_6, H_6}, - {0, G_7, I_7, H_7}, - {0, G_8, I_8, H_8}, - {0, G_9, I_9, H_9}, - {0, G_10, I_10, H_10}, - {0, G_11, I_11, H_11}, - {0, G_12, I_12, H_12}, - {0, G_13, I_13, H_13}, - {0, G_15, I_15, H_15}, - {0, G_16, I_16, H_16}, - {0, G_14, I_14, H_14}, - {0, J_16, L_16, K_16}, - {0, J_15, L_15, K_15}, - {0, J_14, L_14, K_14}, - {0, J_13, L_13, K_13}, - - {0, D_1, F_1, E_1}, - {0, D_2, F_2, E_2}, - {0, D_3, F_3, E_3}, - {0, D_4, F_4, E_4}, - {0, D_5, F_5, E_5}, - {0, D_6, F_6, E_6}, - {0, D_7, F_7, E_7}, - {0, D_8, F_8, E_8}, - {0, D_9, F_9, E_9}, - {0, D_10, F_10, E_10}, - {0, D_11, F_11, E_11}, - {0, D_12, F_12, E_12}, - {0, D_13, F_13, E_13}, - {0, D_14, F_14, E_14}, - {0, D_15, F_15, E_15}, - {0, D_16, F_16, E_16}, - {0, J_12, L_12, K_12}, - {0, J_11, L_11, K_11}, - {0, J_10, L_10, K_10}, - {0, J_9, L_9, K_9}, - {0, J_8, L_8, K_8}, - - {0, A_1, C_1, B_1}, - {0, A_2, C_2, B_2}, - {0, A_3, C_3, B_3}, - {0, A_4, C_4, B_4}, - {0, A_5, C_5, B_5}, - {0, A_6, C_6, B_6}, - {0, A_7, C_7, B_7}, - {0, A_8, C_8, B_8}, - {0, A_9, C_9, B_9}, - {0, A_10, C_10, B_10}, - {0, A_11, C_11, B_11}, - {0, A_12, C_12, B_12}, - {0, A_13, C_13, B_13}, - {0, A_14, C_14, B_14}, - {0, A_15, C_15, B_15}, - {0, A_16, C_16, B_16}, - {0, J_7, L_7, K_7}, - {0, J_6, L_6, K_6}, - {0, J_5, L_5, K_5}, - {0, J_4, L_4, K_4}, - - {1, G_16, I_16, H_16}, - {1, G_15, I_15, H_15}, - {1, G_14, I_14, H_14}, - {1, G_13, I_13, H_13}, - {1, G_12, I_12, H_12}, - {1, G_11, I_11, H_11}, - {1, G_10, I_10, H_10}, - {1, G_9, I_9, H_9}, - {1, G_8, I_8, H_8}, - {1, G_7, I_7, H_7}, - {1, G_6, I_6, H_6}, - {1, G_5, I_5, H_5}, - {1, G_4, I_4, H_4}, - {1, J_8, L_8, K_8}, - {1, J_9, L_9, K_9}, - {1, J_10, L_10, K_10}, - {1, J_11, L_11, K_11}, - - {1, D_16, F_16, E_16}, - {1, D_14, F_14, E_14}, - {1, D_13, F_13, E_13}, - {1, D_12, F_12, E_12}, - {1, D_11, F_11, E_11}, - {1, D_10, F_10, E_10}, - {1, D_9, F_9, E_9}, - {1, D_8, F_8, E_8}, - {1, D_7, F_7, E_7}, - {1, D_6, F_6, E_6}, - {1, D_5, F_5, E_5}, - {1, D_4, F_4, E_4}, - {1, D_1, F_1, E_1}, - {1, J_5, L_5, K_5}, - {1, J_6, L_6, K_6}, - {1, J_7, L_7, K_7}, - - {1, A_16, C_16, B_16}, - {1, A_15, C_15, B_15}, - {1, A_14, C_14, B_14}, - {1, A_10, C_10, B_10}, - {1, A_6, C_6, B_6}, - {1, A_5, C_5, B_5}, - {1, A_4, C_4, B_4}, - {1, A_3, C_3, B_3}, - {1, A_2, C_2, B_2}, - {1, A_1, C_1, B_1}, - {1, J_1, L_1, K_1}, - {1, J_2, L_2, K_2}, - {1, J_3, L_3, K_3}, - {1, J_4, L_4, K_4}, -}; - -#define __ NO_LED - -led_config_t g_led_config = { - { - // Key Matrix to LED Index - { 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, 40 }, - { 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, __ }, - { 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, __, __, __, __, 74, 75, 76, 77 }, - { 78, __, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, __, __, 90, __, 91, 92, 93, __ }, - { 94, 95, 96, __, __, __, 97, __, __, __, 98, 99, 100, 101, 102, 103, 104, 105, __, 106, 107 }, - }, - { - // LED Index to Physical Position - {0, 0}, {13, 0}, {24, 0}, {34, 0}, {45, 0}, {57, 0}, {68, 0}, {78, 0}, {89, 0}, {102, 0}, {112, 0}, {123, 0}, {133, 0}, {159, 0}, {169, 0}, {180, 0}, {193, 0}, {203, 0}, {214, 0}, {224, 0}, - {0,15}, {10,15}, {21,15}, {31,15}, {42,15}, {52,15}, {63,15}, {73,15}, {83,15}, { 94,15}, {104,15}, {115,15}, {125,15}, {141,15}, {159,15}, {169,15}, {180,15}, {193,15}, {203,15}, {214,15}, {224,15}, - {3,27}, {16,27}, {26,27}, {36,27}, {47,27}, {57,27}, {68,27}, {78,27}, {89,27}, { 99,27}, {109,27}, {120,27}, {130,27}, {143,27}, {159,27}, {169,27}, {180,27}, {193,27}, {203,27}, {214,27}, - {4,40}, {18,40}, {29,40}, {39,40}, {50,40}, {60,40}, {70,40}, {81,40}, {91,40}, {102,40}, {112,40}, {123,40}, {139,40}, {193,40}, {203,40}, {214,40}, {224,34}, - {7,52}, {23,52}, {34,52}, {44,52}, {55,52}, {65,52}, {76,52}, {86,52}, { 96,52}, {107,52}, {117,52}, {137,52}, {169,52}, {193,52}, {203,52}, {214,52}, - {1,64}, {14,64}, {27,64}, {66,64}, {105,64}, {119,64}, {132,64}, {145,64}, {159,64}, {169,64}, {180,64}, {198,64}, {214,64}, {224,58} - }, - { - // RGB LED Index to Flag - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 - } -}; -#endif diff --git a/keyboards/keychron/v6_max/ansi_encoder/config.h b/keyboards/keychron/v6_max/ansi_encoder/config.h deleted file mode 100644 index a69ac811fe..0000000000 --- a/keyboards/keychron/v6_max/ansi_encoder/config.h +++ /dev/null @@ -1,54 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#pragma once - -#ifdef RGB_MATRIX_ENABLE -/* RGB Matrix driver configuration */ -# define DRIVER_COUNT 2 -# define RGB_MATRIX_LED_COUNT 108 - -# define SPI_SCK_PIN A5 -# define SPI_MISO_PIN A6 -# define SPI_MOSI_PIN A7 - -# define DRIVER_CS_PINS \ - { B8, B9 } -# define SNLED23751_SPI_DIVISOR 16 -# define SPI_DRIVER SPID1 - -/* Set LED driver current */ -# define SNLED27351_CURRENT_TUNE \ - { 0x28, 0x28, 0x28, 0x28, 0x28, 0x28, 0x28, 0x28, 0x28, 0x28, 0x28, 0x28 } - -/* Set to infinit, which is use in USB mode by default */ -# define RGB_MATRIX_TIMEOUT RGB_MATRIX_TIMEOUT_INFINITE - -/* Allow shutdown of led driver to save power */ -# define RGB_MATRIX_DRIVER_SHUTDOWN_ENABLE -/* Turn off backlight on low brightness to save power */ -# define RGB_MATRIX_BRIGHTNESS_TURN_OFF_VAL 32 - -/* Indications */ -# define NUM_LOCK_INDEX 37 -# define CAPS_LOCK_INDEX 61 -# define LOW_BAT_IND_INDEX \ - { 97 } - -# define RGB_MATRIX_KEYPRESSES -# define RGB_MATRIX_FRAMEBUFFER_EFFECTS - -#endif diff --git a/keyboards/keychron/v6_max/ansi_encoder/info.json b/keyboards/keychron/v6_max/ansi_encoder/info.json deleted file mode 100644 index 315e70cda3..0000000000 --- a/keyboards/keychron/v6_max/ansi_encoder/info.json +++ /dev/null @@ -1,126 +0,0 @@ -{ - "usb": { - "pid": "0x0960", - "device_version": "1.0.0" - }, - "layouts": { - "LAYOUT_ansi_109": { - "layout": [ - {"matrix": [0, 0], "x": 0, "y": 0}, - {"matrix": [0, 1], "x": 1.25, "y": 0}, - {"matrix": [0, 2], "x": 2.25, "y": 0}, - {"matrix": [0, 3], "x": 3.25, "y": 0}, - {"matrix": [0, 4], "x": 4.25, "y": 0}, - {"matrix": [0, 5], "x": 5.5, "y": 0}, - {"matrix": [0, 6], "x": 6.5, "y": 0}, - {"matrix": [0, 7], "x": 7.5, "y": 0}, - {"matrix": [0, 8], "x": 8.5, "y": 0}, - {"matrix": [0, 9], "x": 9.75, "y": 0}, - {"matrix": [0, 10], "x": 10.75, "y": 0}, - {"matrix": [0, 11], "x": 11.75, "y": 0}, - {"matrix": [0, 12], "x": 12.75, "y": 0}, - {"matrix": [0, 13], "x": 14, "y": 0}, - {"matrix": [0, 14], "x": 15.25, "y": 0}, - {"matrix": [0, 15], "x": 16.25, "y": 0}, - {"matrix": [0, 16], "x": 17.25, "y": 0}, - {"matrix": [0, 17], "x": 18.5, "y": 0}, - {"matrix": [0, 18], "x": 19.5, "y": 0}, - {"matrix": [0, 19], "x": 20.5, "y": 0}, - {"matrix": [0, 20], "x": 21.5, "y": 0}, - - {"matrix": [1, 0], "x": 0, "y": 1.25}, - {"matrix": [1, 1], "x": 1, "y": 1.25}, - {"matrix": [1, 2], "x": 2, "y": 1.25}, - {"matrix": [1, 3], "x": 3, "y": 1.25}, - {"matrix": [1, 4], "x": 4, "y": 1.25}, - {"matrix": [1, 5], "x": 5, "y": 1.25}, - {"matrix": [1, 6], "x": 6, "y": 1.25}, - {"matrix": [1, 7], "x": 7, "y": 1.25}, - {"matrix": [1, 8], "x": 8, "y": 1.25}, - {"matrix": [1, 9], "x": 9, "y": 1.25}, - {"matrix": [1, 10], "x": 10, "y": 1.25}, - {"matrix": [1, 11], "x": 11, "y": 1.25}, - {"matrix": [1, 12], "x": 12, "y": 1.25}, - {"matrix": [1, 13], "x": 13, "y": 1.25, "w": 2}, - {"matrix": [1, 14], "x": 15.25, "y": 1.25}, - {"matrix": [1, 15], "x": 16.25, "y": 1.25}, - {"matrix": [1, 16], "x": 17.25, "y": 1.25}, - {"matrix": [1, 17], "x": 18.5, "y": 1.25}, - {"matrix": [1, 18], "x": 19.5, "y": 1.25}, - {"matrix": [1, 19], "x": 20.5, "y": 1.25}, - {"matrix": [1, 20], "x": 21.5, "y": 1.25}, - - {"matrix": [2, 0], "x": 0, "y": 2.25, "w": 1.5}, - {"matrix": [2, 1], "x": 1.5, "y": 2.25}, - {"matrix": [2, 2], "x": 2.5, "y": 2.25}, - {"matrix": [2, 3], "x": 3.5, "y": 2.25}, - {"matrix": [2, 4], "x": 4.5, "y": 2.25}, - {"matrix": [2, 5], "x": 5.5, "y": 2.25}, - {"matrix": [2, 6], "x": 6.5, "y": 2.25}, - {"matrix": [2, 7], "x": 7.5, "y": 2.25}, - {"matrix": [2, 8], "x": 8.5, "y": 2.25}, - {"matrix": [2, 9], "x": 9.5, "y": 2.25}, - {"matrix": [2, 10], "x": 10.5, "y": 2.25}, - {"matrix": [2, 11], "x": 11.5, "y": 2.25}, - {"matrix": [2, 12], "x": 12.5, "y": 2.25}, - {"matrix": [2, 13], "x": 13.5, "y": 2.25, "w": 1.5}, - {"matrix": [2, 14], "x": 15.25, "y": 2.25}, - {"matrix": [2, 15], "x": 16.25, "y": 2.25}, - {"matrix": [2, 16], "x": 17.25, "y": 2.25}, - {"matrix": [2, 17], "x": 18.5, "y": 2.25}, - {"matrix": [2, 18], "x": 19.5, "y": 2.25}, - {"matrix": [2, 19], "x": 20.5, "y": 2.25}, - - {"matrix": [3, 0], "x": 0, "y": 3.25, "w": 1.75}, - {"matrix": [3, 1], "x": 1.75, "y": 3.25}, - {"matrix": [3, 2], "x": 2.75, "y": 3.25}, - {"matrix": [3, 3], "x": 3.75, "y": 3.25}, - {"matrix": [3, 4], "x": 4.75, "y": 3.25}, - {"matrix": [3, 5], "x": 5.75, "y": 3.25}, - {"matrix": [3, 6], "x": 6.75, "y": 3.25}, - {"matrix": [3, 7], "x": 7.75, "y": 3.25}, - {"matrix": [3, 8], "x": 8.75, "y": 3.25}, - {"matrix": [3, 9], "x": 9.75, "y": 3.25}, - {"matrix": [3, 10], "x": 10.75, "y": 3.25}, - {"matrix": [3, 11], "x": 11.75, "y": 3.25}, - {"matrix": [3, 12], "x": 12.75, "y": 3.25, "w": 2.25}, - {"matrix": [3, 17], "x": 18.5, "y": 3.25}, - {"matrix": [3, 18], "x": 19.5, "y": 3.25}, - {"matrix": [3, 19], "x": 20.5, "y": 3.25}, - {"matrix": [3, 20], "x": 21.5, "y": 2.25, "h": 2}, - - {"matrix": [4, 0], "x": 0, "y": 4.25, "w": 2.25}, - {"matrix": [4, 2], "x": 2.25, "y": 4.25}, - {"matrix": [4, 3], "x": 3.25, "y": 4.25}, - {"matrix": [4, 4], "x": 4.25, "y": 4.25}, - {"matrix": [4, 5], "x": 5.25, "y": 4.25}, - {"matrix": [4, 6], "x": 6.25, "y": 4.25}, - {"matrix": [4, 7], "x": 7.25, "y": 4.25}, - {"matrix": [4, 8], "x": 8.25, "y": 4.25}, - {"matrix": [4, 9], "x": 9.25, "y": 4.25}, - {"matrix": [4, 10], "x": 10.25, "y": 4.25}, - {"matrix": [4, 11], "x": 11.25, "y": 4.25}, - {"matrix": [4, 12], "x": 12.25, "y": 4.25, "w": 2.75}, - {"matrix": [4, 15], "x": 16.25, "y": 4.25}, - {"matrix": [4, 17], "x": 18.5, "y": 4.25}, - {"matrix": [4, 18], "x": 19.5, "y": 4.25}, - {"matrix": [4, 19], "x": 20.5, "y": 4.25}, - - {"matrix": [5, 0], "x": 0, "y": 5.25, "w": 1.25}, - {"matrix": [5, 1], "x": 1.25, "y": 5.25, "w": 1.25}, - {"matrix": [5, 2], "x": 2.5, "y": 5.25, "w": 1.25}, - {"matrix": [5, 6], "x": 3.75, "y": 5.25, "w": 6.25}, - {"matrix": [5, 10], "x": 10, "y": 5.25, "w": 1.25}, - {"matrix": [5, 11], "x": 11.25, "y": 5.25, "w": 1.25}, - {"matrix": [5, 12], "x": 12.5, "y": 5.25, "w": 1.25}, - {"matrix": [5, 13], "x": 13.75, "y": 5.25, "w": 1.25}, - {"matrix": [5, 14], "x": 15.25, "y": 5.25}, - {"matrix": [5, 15], "x": 16.25, "y": 5.25}, - {"matrix": [5, 16], "x": 17.25, "y": 5.25}, - {"matrix": [5, 17], "x": 18.5, "y": 5.25, "w": 2}, - {"matrix": [5, 19], "x": 20.5, "y": 5.25}, - {"matrix": [5, 20], "x": 21.5, "y": 4.25, "h": 2} - ] - } - } -} diff --git a/keyboards/keychron/v6_max/ansi_encoder/keymaps/default/keymap.c b/keyboards/keychron/v6_max/ansi_encoder/keymaps/default/keymap.c deleted file mode 100644 index 4159c5d20c..0000000000 --- a/keyboards/keychron/v6_max/ansi_encoder/keymaps/default/keymap.c +++ /dev/null @@ -1,73 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#include QMK_KEYBOARD_H -#include "keychron_common.h" - -enum layers { - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN, -}; -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_ansi_109( - KC_ESC, KC_BRID, KC_BRIU, KC_MCTRL, KC_LNPAD, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_MUTE, KC_SNAP, KC_SIRI, RGB_MOD, KC_F13, KC_F14, KC_F15, KC_F16, - KC_GRV, 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_INS, KC_HOME, KC_PGUP, KC_NUM, KC_PSLS, KC_PAST, KC_PMNS, - 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_DEL, KC_END, KC_PGDN, KC_P7, KC_P8, KC_P9, - 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_P4, KC_P5, KC_P6, KC_PPLS, - 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_P1, KC_P2, KC_P3, - KC_LCTL, KC_LOPTN, KC_LCMMD, KC_SPC, KC_RCMMD, KC_ROPTN, MO(MAC_FN), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT, KC_P0, KC_PDOT, KC_PENT), - [MAC_FN] = LAYOUT_ansi_109( - _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, RGB_TOG, _______, _______, RGB_TOG, _______, _______, _______, _______, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - [WIN_BASE] = LAYOUT_ansi_109( - KC_ESC, 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_MUTE, KC_PSCR, KC_CTANA, RGB_MOD, _______, _______, _______, _______, - KC_GRV, 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_INS, KC_HOME, KC_PGUP, KC_NUM, KC_PSLS, KC_PAST, KC_PMNS, - 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_DEL, KC_END, KC_PGDN, KC_P7, KC_P8, KC_P9, - 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_P4, KC_P5, KC_P6, KC_PPLS, - 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_P1, KC_P2, KC_P3, - KC_LCTL, KC_LWIN, KC_LALT, KC_SPC, KC_RALT, KC_RWIN, MO(WIN_FN), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT, KC_P0, KC_PDOT, KC_PENT), - [WIN_FN] = LAYOUT_ansi_109( - _______, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, RGB_TOG, _______, _______, RGB_TOG, _______, _______, _______, _______, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______) -}; - -#if defined(ENCODER_MAP_ENABLE) -const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][2] = { - [MAC_BASE] = {ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [MAC_FN] = {ENCODER_CCW_CW(RGB_VAD, RGB_VAI)}, - [WIN_BASE] = {ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [WIN_FN] = {ENCODER_CCW_CW(RGB_VAD, RGB_VAI)}, -}; -#endif // ENCODER_MAP_ENABLE - -// clang-format on -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - if (!process_record_keychron_common(keycode, record)) { - return false; - } - return true; -} diff --git a/keyboards/keychron/v6_max/ansi_encoder/keymaps/via/keymap.c b/keyboards/keychron/v6_max/ansi_encoder/keymaps/via/keymap.c deleted file mode 100644 index 4159c5d20c..0000000000 --- a/keyboards/keychron/v6_max/ansi_encoder/keymaps/via/keymap.c +++ /dev/null @@ -1,73 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#include QMK_KEYBOARD_H -#include "keychron_common.h" - -enum layers { - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN, -}; -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_ansi_109( - KC_ESC, KC_BRID, KC_BRIU, KC_MCTRL, KC_LNPAD, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_MUTE, KC_SNAP, KC_SIRI, RGB_MOD, KC_F13, KC_F14, KC_F15, KC_F16, - KC_GRV, 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_INS, KC_HOME, KC_PGUP, KC_NUM, KC_PSLS, KC_PAST, KC_PMNS, - 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_DEL, KC_END, KC_PGDN, KC_P7, KC_P8, KC_P9, - 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_P4, KC_P5, KC_P6, KC_PPLS, - 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_P1, KC_P2, KC_P3, - KC_LCTL, KC_LOPTN, KC_LCMMD, KC_SPC, KC_RCMMD, KC_ROPTN, MO(MAC_FN), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT, KC_P0, KC_PDOT, KC_PENT), - [MAC_FN] = LAYOUT_ansi_109( - _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, RGB_TOG, _______, _______, RGB_TOG, _______, _______, _______, _______, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - [WIN_BASE] = LAYOUT_ansi_109( - KC_ESC, 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_MUTE, KC_PSCR, KC_CTANA, RGB_MOD, _______, _______, _______, _______, - KC_GRV, 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_INS, KC_HOME, KC_PGUP, KC_NUM, KC_PSLS, KC_PAST, KC_PMNS, - 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_DEL, KC_END, KC_PGDN, KC_P7, KC_P8, KC_P9, - 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_P4, KC_P5, KC_P6, KC_PPLS, - 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_P1, KC_P2, KC_P3, - KC_LCTL, KC_LWIN, KC_LALT, KC_SPC, KC_RALT, KC_RWIN, MO(WIN_FN), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT, KC_P0, KC_PDOT, KC_PENT), - [WIN_FN] = LAYOUT_ansi_109( - _______, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, RGB_TOG, _______, _______, RGB_TOG, _______, _______, _______, _______, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______) -}; - -#if defined(ENCODER_MAP_ENABLE) -const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][2] = { - [MAC_BASE] = {ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [MAC_FN] = {ENCODER_CCW_CW(RGB_VAD, RGB_VAI)}, - [WIN_BASE] = {ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [WIN_FN] = {ENCODER_CCW_CW(RGB_VAD, RGB_VAI)}, -}; -#endif // ENCODER_MAP_ENABLE - -// clang-format on -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - if (!process_record_keychron_common(keycode, record)) { - return false; - } - return true; -} diff --git a/keyboards/keychron/v6_max/ansi_encoder/keymaps/via/rules.mk b/keyboards/keychron/v6_max/ansi_encoder/keymaps/via/rules.mk deleted file mode 100644 index 1e5b99807c..0000000000 --- a/keyboards/keychron/v6_max/ansi_encoder/keymaps/via/rules.mk +++ /dev/null @@ -1 +0,0 @@ -VIA_ENABLE = yes diff --git a/keyboards/keychron/v6_max/ansi_encoder/rules.mk b/keyboards/keychron/v6_max/ansi_encoder/rules.mk deleted file mode 100644 index 7ff128fa69..0000000000 --- a/keyboards/keychron/v6_max/ansi_encoder/rules.mk +++ /dev/null @@ -1 +0,0 @@ -# This file intentionally left blank \ No newline at end of file diff --git a/keyboards/keychron/v6_max/board.h b/keyboards/keychron/v6_max/board.h deleted file mode 100644 index 54fba748bf..0000000000 --- a/keyboards/keychron/v6_max/board.h +++ /dev/null @@ -1,226 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#pragma once - -#include_next - -// clang-format off - -/* Set GPIOA_SWDIO to INPUT and NOT FLOATING */ -#undef VAL_GPIOA_MODER -#define VAL_GPIOA_MODER (PIN_MODE_INPUT(GPIOA_BUTTON) | \ - PIN_MODE_INPUT(GPIOA_PIN1) | \ - PIN_MODE_INPUT(GPIOA_PIN2) | \ - PIN_MODE_INPUT(GPIOA_PIN3) | \ - PIN_MODE_ALTERNATE(GPIOA_CS43L22_LRCK) |\ - PIN_MODE_ALTERNATE(GPIOA_L3GD20_SCL) | \ - PIN_MODE_ALTERNATE(GPIOA_L3GD20_SD0) | \ - PIN_MODE_ALTERNATE(GPIOA_L3GD20_SDI) | \ - PIN_MODE_INPUT(GPIOA_PIN8) | \ - PIN_MODE_INPUT(GPIOA_VBUS_FS) | \ - PIN_MODE_ALTERNATE(GPIOA_OTG_FS_ID) | \ - PIN_MODE_ALTERNATE(GPIOA_OTG_FS_DM) | \ - PIN_MODE_ALTERNATE(GPIOA_OTG_FS_DP) | \ - PIN_MODE_INPUT(GPIOA_SWDIO) | \ - PIN_MODE_INPUT(GPIOA_SWCLK) | \ - PIN_MODE_INPUT(GPIOA_PIN15)) - -#undef VAL_GPIOA_PUPDR -#define VAL_GPIOA_PUPDR (PIN_PUPDR_FLOATING(GPIOA_BUTTON) | \ - PIN_PUPDR_PULLUP(GPIOA_PIN1) | \ - PIN_PUPDR_PULLUP(GPIOA_PIN2) | \ - PIN_PUPDR_PULLUP(GPIOA_PIN3) | \ - PIN_PUPDR_FLOATING(GPIOA_CS43L22_LRCK) |\ - PIN_PUPDR_FLOATING(GPIOA_L3GD20_SCL) | \ - PIN_PUPDR_PULLUP(GPIOA_L3GD20_SD0) | \ - PIN_PUPDR_PULLUP(GPIOA_L3GD20_SDI) | \ - PIN_PUPDR_PULLUP(GPIOA_PIN8) | \ - PIN_PUPDR_FLOATING(GPIOA_VBUS_FS) | \ - PIN_PUPDR_FLOATING(GPIOA_OTG_FS_ID) | \ - PIN_PUPDR_FLOATING(GPIOA_OTG_FS_DM) | \ - PIN_PUPDR_FLOATING(GPIOA_OTG_FS_DP) | \ - PIN_PUPDR_PULLUP(GPIOA_SWDIO) | \ - PIN_PUPDR_PULLUP(GPIOA_SWCLK) | \ - PIN_PUPDR_PULLUP(GPIOA_PIN15)) - -#undef VAL_GPIOB_MODER -#define VAL_GPIOB_MODER (PIN_MODE_INPUT(GPIOB_PIN0) | \ - PIN_MODE_INPUT(GPIOB_PIN1) | \ - PIN_MODE_INPUT(GPIOB_PIN2) | \ - PIN_MODE_INPUT(GPIOB_SWO) | \ - PIN_MODE_INPUT(GPIOB_PIN4) | \ - PIN_MODE_INPUT(GPIOB_PIN5) | \ - PIN_MODE_INPUT(GPIOB_LSM303DLHC_SCL) | \ - PIN_MODE_INPUT(GPIOB_PIN7) | \ - PIN_MODE_INPUT(GPIOB_PIN8) | \ - PIN_MODE_INPUT(GPIOB_LSM303DLHC_SDA) | \ - PIN_MODE_INPUT(GPIOB_MP45DT02_CLK_IN) |\ - PIN_MODE_INPUT(GPIOB_PIN11) | \ - PIN_MODE_INPUT(GPIOB_PIN12) | \ - PIN_MODE_INPUT(GPIOB_PIN13) | \ - PIN_MODE_INPUT(GPIOB_PIN14) | \ - PIN_MODE_INPUT(GPIOB_PIN15)) - -#undef VAL_GPIOB_PUPDR -#define VAL_GPIOB_PUPDR (PIN_PUPDR_PULLDOWN(GPIOB_PIN0) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN1) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN2) | \ - PIN_PUPDR_PULLDOWN(GPIOB_SWO) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN4) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN5) | \ - PIN_PUPDR_PULLDOWN(GPIOB_LSM303DLHC_SCL) |\ - PIN_PUPDR_PULLDOWN(GPIOB_PIN7) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN8) | \ - PIN_PUPDR_PULLDOWN(GPIOB_LSM303DLHC_SDA) |\ - PIN_PUPDR_PULLDOWN(GPIOB_MP45DT02_CLK_IN) |\ - PIN_PUPDR_PULLDOWN(GPIOB_PIN11) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN12) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN13) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN14) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN15)) - -#undef VAL_GPIOB_AFRL -#define VAL_GPIOB_AFRL (PIN_AFIO_AF(GPIOB_PIN0, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN1, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN2, 0U) | \ - PIN_AFIO_AF(GPIOB_SWO, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN4, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN5, 0U) | \ - PIN_AFIO_AF(GPIOB_LSM303DLHC_SCL, 0) | \ - PIN_AFIO_AF(GPIOB_PIN7, 0U)) - -#undef VAL_GPIOB_AFRH -#define VAL_GPIOB_AFRH (PIN_AFIO_AF(GPIOB_PIN8, 0U) | \ - PIN_AFIO_AF(GPIOB_LSM303DLHC_SDA, 0) | \ - PIN_AFIO_AF(GPIOB_MP45DT02_CLK_IN, 0U) |\ - PIN_AFIO_AF(GPIOB_PIN11, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN12, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN13, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN14, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN15, 0U)) - -/* C5 Need to be pulldown */ -#undef VAL_GPIOC_MODER -#define VAL_GPIOC_MODER (PIN_MODE_INPUT(GPIOC_OTG_FS_POWER_ON) |\ - PIN_MODE_INPUT(GPIOC_PIN1) | \ - PIN_MODE_INPUT(GPIOC_PIN2) | \ - PIN_MODE_INPUT(GPIOC_CS43L22_AIN4x) | \ - PIN_MODE_INPUT(GPIOC_PIN4) | \ - PIN_MODE_INPUT(GPIOC_PIN5) | \ - PIN_MODE_INPUT(GPIOC_PIN6) | \ - PIN_MODE_INPUT(GPIOC_CS43L22_MCLK) | \ - PIN_MODE_INPUT(GPIOC_PIN8) | \ - PIN_MODE_INPUT(GPIOC_PIN9) | \ - PIN_MODE_INPUT(GPIOC_CS43L22_SCLK) | \ - PIN_MODE_INPUT(GPIOC_PIN11) | \ - PIN_MODE_INPUT(GPIOC_CS43L22_SDIN) | \ - PIN_MODE_INPUT(GPIOC_PIN13) | \ - PIN_MODE_INPUT(GPIOC_OSC32_IN) | \ - PIN_MODE_INPUT(GPIOC_OSC32_OUT)) - -#undef VAL_GPIOC_PUPDR -#define VAL_GPIOC_PUPDR (PIN_PUPDR_PULLUP(GPIOC_OTG_FS_POWER_ON) |\ - PIN_PUPDR_PULLUP(GPIOC_PIN1) | \ - PIN_PUPDR_PULLUP(GPIOC_PIN2) | \ - PIN_PUPDR_PULLUP(GPIOC_CS43L22_AIN4x) |\ - PIN_PUPDR_PULLUP(GPIOC_PIN4) | \ - PIN_PUPDR_PULLDOWN(GPIOC_PIN5) | \ - PIN_PUPDR_PULLUP(GPIOC_PIN6) | \ - PIN_PUPDR_PULLUP(GPIOC_CS43L22_MCLK) | \ - PIN_PUPDR_PULLUP(GPIOC_PIN8) | \ - PIN_PUPDR_PULLUP(GPIOC_PIN9) | \ - PIN_PUPDR_PULLUP(GPIOC_CS43L22_SCLK) | \ - PIN_PUPDR_PULLUP(GPIOC_PIN11) | \ - PIN_PUPDR_PULLUP(GPIOC_CS43L22_SDIN) | \ - PIN_PUPDR_PULLUP(GPIOC_PIN13) | \ - PIN_PUPDR_PULLUP(GPIOC_OSC32_IN) | \ - PIN_PUPDR_PULLUP(GPIOC_OSC32_OUT)) - -/* Set all GPIOD pins to INPUT & PULLUP to avoid FLOATING */ -#undef VAL_GPIOD_MODER -#define VAL_GPIOD_MODER (PIN_MODE_INPUT(GPIOD_PIN0) | \ - PIN_MODE_INPUT(GPIOD_PIN1) | \ - PIN_MODE_INPUT(GPIOD_PIN2) | \ - PIN_MODE_INPUT(GPIOD_PIN3) | \ - PIN_MODE_INPUT(GPIOD_CS43L22_RESET) | \ - PIN_MODE_INPUT(GPIOD_OverCurrent) | \ - PIN_MODE_INPUT(GPIOD_PIN6) | \ - PIN_MODE_INPUT(GPIOD_PIN7) | \ - PIN_MODE_INPUT(GPIOD_PIN8) | \ - PIN_MODE_INPUT(GPIOD_PIN9) | \ - PIN_MODE_INPUT(GPIOD_PIN10) | \ - PIN_MODE_INPUT(GPIOD_PIN11) | \ - PIN_MODE_INPUT(GPIOD_LED4) | \ - PIN_MODE_INPUT(GPIOD_LED3) | \ - PIN_MODE_INPUT(GPIOD_LED5) | \ - PIN_MODE_INPUT(GPIOD_LED6)) - -#undef VAL_GPIOD_PUPDR -#define VAL_GPIOD_PUPDR (PIN_PUPDR_PULLUP(GPIOD_PIN0) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN1) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN2) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN3) | \ - PIN_PUPDR_PULLUP(GPIOD_CS43L22_RESET) |\ - PIN_PUPDR_PULLUP(GPIOD_OverCurrent) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN6) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN7) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN8) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN9) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN10) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN11) | \ - PIN_PUPDR_PULLUP(GPIOD_LED4) | \ - PIN_PUPDR_PULLUP(GPIOD_LED3) | \ - PIN_PUPDR_PULLUP(GPIOD_LED5) | \ - PIN_PUPDR_PULLUP(GPIOD_LED6)) - -/* Set all GPIOE pins to INPUT & PULLUP to avoid FLOATING */ -#undef VAL_GPIOE_MODER -#define VAL_GPIOE_MODER (PIN_MODE_INPUT(GPIOE_L3GD20_INT1) | \ - PIN_MODE_INPUT(GPIOE_L3GD20_INT2) | \ - PIN_MODE_INPUT(GPIOE_LSM303DLHC_DRDY) |\ - PIN_MODE_INPUT(GPIOE_L3GD20_CS) | \ - PIN_MODE_INPUT(GPIOE_LSM303DLHC_INT1) |\ - PIN_MODE_INPUT(GPIOE_LSM303DLHC_INT2) |\ - PIN_MODE_INPUT(GPIOE_PIN6) | \ - PIN_MODE_INPUT(GPIOE_PIN7) | \ - PIN_MODE_INPUT(GPIOE_PIN8) | \ - PIN_MODE_INPUT(GPIOE_PIN9) | \ - PIN_MODE_INPUT(GPIOE_PIN10) | \ - PIN_MODE_INPUT(GPIOE_PIN11) | \ - PIN_MODE_INPUT(GPIOE_PIN12) | \ - PIN_MODE_INPUT(GPIOE_PIN13) | \ - PIN_MODE_INPUT(GPIOE_PIN14) | \ - PIN_MODE_INPUT(GPIOE_PIN15)) - -#undef VAL_GPIOE_PUPDR -#define VAL_GPIOE_PUPDR (PIN_PUPDR_PULLUP(GPIOE_L3GD20_INT1) | \ - PIN_PUPDR_PULLUP(GPIOE_L3GD20_INT2) | \ - PIN_PUPDR_PULLUP(GPIOE_LSM303DLHC_DRDY) |\ - PIN_PUPDR_PULLUP(GPIOE_L3GD20_CS) | \ - PIN_PUPDR_PULLUP(GPIOE_LSM303DLHC_INT1) |\ - PIN_PUPDR_PULLUP(GPIOE_LSM303DLHC_INT2) |\ - PIN_PUPDR_PULLUP(GPIOE_PIN6) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN7) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN8) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN9) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN10) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN11) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN12) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN13) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN14) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN15)) - diff --git a/keyboards/keychron/v6_max/config.h b/keyboards/keychron/v6_max/config.h deleted file mode 100644 index bc6258fc06..0000000000 --- a/keyboards/keychron/v6_max/config.h +++ /dev/null @@ -1,86 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#pragma once - -/* Encoder Configuration */ -#define ENCODER_DEFAULT_POS 0x3 -#define ENCODER_MAP_KEY_DELAY 2 - -#ifdef LK_WIRELESS_ENABLE -/* Hardware configuration */ -# define P2P4_MODE_SELECT_PIN A9 -# define BT_MODE_SELECT_PIN A10 - -# define LKBT51_RESET_PIN C4 -# define LKBT51_INT_INPUT_PIN B1 -# define BLUETOOTH_INT_OUTPUT_PIN A4 - -# define USB_POWER_SENSE_PIN B0 -# define USB_POWER_CONNECTED_LEVEL 0 - -# define BAT_CHARGING_PIN B13 -# define BAT_CHARGING_LEVEL 0 - -# define BAT_LOW_LED_PIN B12 -# define BAT_LOW_LED_PIN_ON_STATE 1 - -# define BT_HOST_DEVICES_COUNT 3 - -# if defined(RGB_MATRIX_ENABLE) - -# define LED_DRIVER_SHUTDOWN_PIN B7 - -# define BT_HOST_LED_MATRIX_LIST \ - { 21, 22, 23 } - -# define P2P4G_HOST_LED_MATRIX_LIST \ - { 24 } - -# define BAT_LEVEL_LED_LIST \ - { 21, 22, 23, 24, 25, 26, 27, 28, 29, 30 } - -/* 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 - -/* Reinit LED driver on tranport changed */ -# define REINIT_LED_DRIVER 1 - -# endif - -/* Keep USB connection in blueooth mode */ -# define KEEP_USB_CONNECTION_IN_WIRELESS_MODE - -/* Enable bluetooth NKRO */ -# define WIRELESS_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 - -/* Factory test keys */ -#define FN_KEY_1 MO(1) -#define FN_KEY_2 MO(3) - -#define P2P4G_CELAR_MASK 0 - -#define MATRIX_IO_DELAY 10 diff --git a/keyboards/keychron/v6_max/firmware/keychron_v6_max_ansi_encoder_via.bin b/keyboards/keychron/v6_max/firmware/keychron_v6_max_ansi_encoder_via.bin deleted file mode 100644 index e063b599ba..0000000000 Binary files a/keyboards/keychron/v6_max/firmware/keychron_v6_max_ansi_encoder_via.bin and /dev/null differ diff --git a/keyboards/keychron/v6_max/firmware/keychron_v6_max_iso_encoder_via.bin b/keyboards/keychron/v6_max/firmware/keychron_v6_max_iso_encoder_via.bin deleted file mode 100644 index 0007f2cd22..0000000000 Binary files a/keyboards/keychron/v6_max/firmware/keychron_v6_max_iso_encoder_via.bin and /dev/null differ diff --git a/keyboards/keychron/v6_max/halconf.h b/keyboards/keychron/v6_max/halconf.h deleted file mode 100644 index 37bcc7c47b..0000000000 --- a/keyboards/keychron/v6_max/halconf.h +++ /dev/null @@ -1,31 +0,0 @@ -/* Copyright 2024 @ 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 - -#define _CHIBIOS_HAL_CONF_VER_8_0_ - -#define HAL_USE_SPI TRUE - -#ifdef LK_WIRELESS_ENABLE -# define HAL_USE_RTC TRUE -#endif - -#if defined(LK_WIRELESS_ENABLE) || defined(ENCODER_ENABLE) -# define PAL_USE_CALLBACKS TRUE -#endif - -#include_next diff --git a/keyboards/keychron/v6_max/info.json b/keyboards/keychron/v6_max/info.json deleted file mode 100644 index 2799751cb1..0000000000 --- a/keyboards/keychron/v6_max/info.json +++ /dev/null @@ -1,77 +0,0 @@ -{ - "keyboard_name": "Keychron V6 Max", - "manufacturer": "Keychron", - "url": "https://github.com/Keychron", - "maintainer": "lokher", - "processor": "STM32F401", - "bootloader": "stm32-dfu", - "usb": { - "vid": "0x3434" - }, - "features": { - "bootmagic": true, - "extrakey" : true, - "mousekey" : true, - "dip_switch" : true, - "nkro" : true, - "encoder": true, - "encoder_map": true, - "rgb_matrix": true, - "raw" : true, - "send_string": true - }, - "encoder": { - "rotary": [ - { - "pin_a": "B15", - "pin_b": "B14" - } - ] - }, - "matrix_pins": { - "cols": ["C6", "C7", "C8", "A14", "A15", "C10", "C11", "C13", "C14", "C15", "C0", "C1", "C2", "C3", "A0", "A1", "A2", "A3", "C5", "B10", "C9"], - "rows": ["C12", "D2", "B3", "B4", "B5", "B6"] - }, - "diode_direction": "ROW2COL", - "dip_switch" :{ - "pins": ["A8"] - }, - "rgb_matrix": { - "driver": "snled27351_spi", - "sleep": true, - "animations": { - "band_spiral_val": true, - "breathing": true, - "cycle_all": true, - "cycle_left_right": true, - "cycle_out_in": true, - "cycle_out_in_dual": true, - "cycle_pinwheel": true, - "cycle_spiral": true, - "cycle_up_down": true, - "digital_rain": true, - "dual_beacon": true, - "jellybean_raindrops": true, - "pixel_rain": true, - "rainbow_beacon": true, - "rainbow_moving_chevron": true, - "solid_reactive_multinexus": true, - "solid_reactive_multiwide": true, - "solid_reactive_simple": true, - "solid_splash": true, - "splash": true, - "typing_heatmap": true - } - }, - "eeprom": { - "wear_leveling": { - "driver": "embedded_flash", - "logical_size": 2048, - "backing_size": 4096 - } - }, - "build": { - "debounce_type": "sym_eager_pk" - }, - "debounce": 20 -} diff --git a/keyboards/keychron/v6_max/iso_encoder/config.h b/keyboards/keychron/v6_max/iso_encoder/config.h deleted file mode 100644 index 2d4c516420..0000000000 --- a/keyboards/keychron/v6_max/iso_encoder/config.h +++ /dev/null @@ -1,54 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#pragma once - -#ifdef RGB_MATRIX_ENABLE -/* RGB Matrix driver configuration */ -# define DRIVER_COUNT 2 -# define RGB_MATRIX_LED_COUNT 109 - -# define SPI_SCK_PIN A5 -# define SPI_MISO_PIN A6 -# define SPI_MOSI_PIN A7 - -# define DRIVER_CS_PINS \ - { B8, B9 } -# define SNLED23751_SPI_DIVISOR 16 -# define SPI_DRIVER SPID1 - -/* Set LED driver current */ -# define SNLED27351_CURRENT_TUNE \ - { 0x28, 0x28, 0x28, 0x28, 0x28, 0x28, 0x28, 0x28, 0x28, 0x28, 0x28, 0x28 } - -/* Set to infinit, which is use in USB mode by default */ -# define RGB_MATRIX_TIMEOUT RGB_MATRIX_TIMEOUT_INFINITE - -/* Allow shutdown of led driver to save power */ -# define RGB_MATRIX_DRIVER_SHUTDOWN_ENABLE -/* Turn off backlight on low brightness to save power */ -# define RGB_MATRIX_BRIGHTNESS_TURN_OFF_VAL 32 - -/* Indications */ -# define NUM_LOCK_INDEX 37 -# define CAPS_LOCK_INDEX 61 -# define LOW_BAT_IND_INDEX \ - { 98 } - -# define RGB_MATRIX_KEYPRESSES -# define RGB_MATRIX_FRAMEBUFFER_EFFECTS - -#endif diff --git a/keyboards/keychron/v6_max/iso_encoder/info.json b/keyboards/keychron/v6_max/iso_encoder/info.json deleted file mode 100644 index 44fdb8fb39..0000000000 --- a/keyboards/keychron/v6_max/iso_encoder/info.json +++ /dev/null @@ -1,127 +0,0 @@ -{ - "usb": { - "pid": "0x0961", - "device_version": "1.0.0" - }, - "layouts": { - "LAYOUT_iso_110": { - "layout": [ - {"matrix": [0, 0], "x": 0, "y": 0}, - {"matrix": [0, 1], "x": 1.25, "y": 0}, - {"matrix": [0, 2], "x": 2.25, "y": 0}, - {"matrix": [0, 3], "x": 3.25, "y": 0}, - {"matrix": [0, 4], "x": 4.25, "y": 0}, - {"matrix": [0, 5], "x": 5.5, "y": 0}, - {"matrix": [0, 6], "x": 6.5, "y": 0}, - {"matrix": [0, 7], "x": 7.5, "y": 0}, - {"matrix": [0, 8], "x": 8.5, "y": 0}, - {"matrix": [0, 9], "x": 9.75, "y": 0}, - {"matrix": [0, 10], "x": 10.75, "y": 0}, - {"matrix": [0, 11], "x": 11.75, "y": 0}, - {"matrix": [0, 12], "x": 12.75, "y": 0}, - {"matrix": [0, 13], "x": 14, "y": 0}, - {"matrix": [0, 14], "x": 15.25, "y": 0}, - {"matrix": [0, 15], "x": 16.25, "y": 0}, - {"matrix": [0, 16], "x": 17.25, "y": 0}, - {"matrix": [0, 17], "x": 18.5, "y": 0}, - {"matrix": [0, 18], "x": 19.5, "y": 0}, - {"matrix": [0, 19], "x": 20.5, "y": 0}, - {"matrix": [0, 20], "x": 21.5, "y": 0}, - - {"matrix": [1, 0], "x": 0, "y": 1.25}, - {"matrix": [1, 1], "x": 1, "y": 1.25}, - {"matrix": [1, 2], "x": 2, "y": 1.25}, - {"matrix": [1, 3], "x": 3, "y": 1.25}, - {"matrix": [1, 4], "x": 4, "y": 1.25}, - {"matrix": [1, 5], "x": 5, "y": 1.25}, - {"matrix": [1, 6], "x": 6, "y": 1.25}, - {"matrix": [1, 7], "x": 7, "y": 1.25}, - {"matrix": [1, 8], "x": 8, "y": 1.25}, - {"matrix": [1, 9], "x": 9, "y": 1.25}, - {"matrix": [1, 10], "x": 10, "y": 1.25}, - {"matrix": [1, 11], "x": 11, "y": 1.25}, - {"matrix": [1, 12], "x": 12, "y": 1.25}, - {"matrix": [1, 13], "x": 13, "y": 1.25, "w": 2}, - {"matrix": [1, 14], "x": 15.25, "y": 1.25}, - {"matrix": [1, 15], "x": 16.25, "y": 1.25}, - {"matrix": [1, 16], "x": 17.25, "y": 1.25}, - {"matrix": [1, 17], "x": 18.5, "y": 1.25}, - {"matrix": [1, 18], "x": 19.5, "y": 1.25}, - {"matrix": [1, 19], "x": 20.5, "y": 1.25}, - {"matrix": [1, 20], "x": 21.5, "y": 1.25}, - - {"matrix": [2, 0], "x": 0, "y": 2.25, "w": 1.5}, - {"matrix": [2, 1], "x": 1.5, "y": 2.25}, - {"matrix": [2, 2], "x": 2.5, "y": 2.25}, - {"matrix": [2, 3], "x": 3.5, "y": 2.25}, - {"matrix": [2, 4], "x": 4.5, "y": 2.25}, - {"matrix": [2, 5], "x": 5.5, "y": 2.25}, - {"matrix": [2, 6], "x": 6.5, "y": 2.25}, - {"matrix": [2, 7], "x": 7.5, "y": 2.25}, - {"matrix": [2, 8], "x": 8.5, "y": 2.25}, - {"matrix": [2, 9], "x": 9.5, "y": 2.25}, - {"matrix": [2, 10], "x": 10.5, "y": 2.25}, - {"matrix": [2, 11], "x": 11.5, "y": 2.25}, - {"matrix": [2, 12], "x": 12.5, "y": 2.25}, - {"matrix": [2, 14], "x": 15.25, "y": 2.25}, - {"matrix": [2, 15], "x": 16.25, "y": 2.25}, - {"matrix": [2, 16], "x": 17.25, "y": 2.25}, - {"matrix": [2, 17], "x": 18.5, "y": 2.25}, - {"matrix": [2, 18], "x": 19.5, "y": 2.25}, - {"matrix": [2, 19], "x": 20.5, "y": 2.25}, - - {"matrix": [3, 0], "x": 0, "y": 3.25, "w": 1.75}, - {"matrix": [3, 1], "x": 1.75, "y": 3.25}, - {"matrix": [3, 2], "x": 2.75, "y": 3.25}, - {"matrix": [3, 3], "x": 3.75, "y": 3.25}, - {"matrix": [3, 4], "x": 4.75, "y": 3.25}, - {"matrix": [3, 5], "x": 5.75, "y": 3.25}, - {"matrix": [3, 6], "x": 6.75, "y": 3.25}, - {"matrix": [3, 7], "x": 7.75, "y": 3.25}, - {"matrix": [3, 8], "x": 8.75, "y": 3.25}, - {"matrix": [3, 9], "x": 9.75, "y": 3.25}, - {"matrix": [3, 10], "x": 10.75, "y": 3.25}, - {"matrix": [3, 11], "x": 11.75, "y": 3.25}, - {"matrix": [3, 12], "x": 12.75, "y": 3.25}, - {"matrix": [2, 13], "x": 13.25, "y": 2.75, "h": 2}, - {"matrix": [3, 17], "x": 18.5, "y": 3.25}, - {"matrix": [3, 18], "x": 19.5, "y": 3.25}, - {"matrix": [3, 19], "x": 20.5, "y": 3.25}, - {"matrix": [3, 20], "x": 21.5, "y": 2.25, "h": 2}, - - {"matrix": [4, 0], "x": 0, "y": 4.25, "w": 1.25}, - {"matrix": [4, 1], "x": 1.25, "y": 4.25}, - {"matrix": [4, 2], "x": 2.25, "y": 4.25}, - {"matrix": [4, 3], "x": 3.25, "y": 4.25}, - {"matrix": [4, 4], "x": 4.25, "y": 4.25}, - {"matrix": [4, 5], "x": 5.25, "y": 4.25}, - {"matrix": [4, 6], "x": 6.25, "y": 4.25}, - {"matrix": [4, 7], "x": 7.25, "y": 4.25}, - {"matrix": [4, 8], "x": 8.25, "y": 4.25}, - {"matrix": [4, 9], "x": 9.25, "y": 4.25}, - {"matrix": [4, 10], "x": 10.25, "y": 4.25}, - {"matrix": [4, 11], "x": 11.25, "y": 4.25}, - {"matrix": [4, 12], "x": 12.25, "y": 4.25, "w": 2.75}, - {"matrix": [4, 15], "x": 16.25, "y": 4.25}, - {"matrix": [4, 17], "x": 18.5, "y": 4.25}, - {"matrix": [4, 18], "x": 19.5, "y": 4.25}, - {"matrix": [4, 19], "x": 20.5, "y": 4.25}, - - {"matrix": [5, 0], "x": 0, "y": 5.25, "w": 1.25}, - {"matrix": [5, 1], "x": 1.25, "y": 5.25, "w": 1.25}, - {"matrix": [5, 2], "x": 2.5, "y": 5.25, "w": 1.25}, - {"matrix": [5, 6], "x": 3.75, "y": 5.25, "w": 6.25}, - {"matrix": [5, 10], "x": 10, "y": 5.25, "w": 1.25}, - {"matrix": [5, 11], "x": 11.25, "y": 5.25, "w": 1.25}, - {"matrix": [5, 12], "x": 12.5, "y": 5.25, "w": 1.25}, - {"matrix": [5, 13], "x": 13.75, "y": 5.25, "w": 1.25}, - {"matrix": [5, 14], "x": 15.25, "y": 5.25}, - {"matrix": [5, 15], "x": 16.25, "y": 5.25}, - {"matrix": [5, 16], "x": 17.25, "y": 5.25}, - {"matrix": [5, 17], "x": 18.5, "y": 5.25, "w": 2}, - {"matrix": [5, 19], "x": 20.5, "y": 5.25}, - {"matrix": [5, 20], "x": 21.5, "y": 4.25, "h": 2} - ] - } - } -} diff --git a/keyboards/keychron/v6_max/iso_encoder/iso_encoder.c b/keyboards/keychron/v6_max/iso_encoder/iso_encoder.c deleted file mode 100644 index 8b67292f7c..0000000000 --- a/keyboards/keychron/v6_max/iso_encoder/iso_encoder.c +++ /dev/null @@ -1,176 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#include "quantum.h" - -// clang-format off - -#ifdef RGB_MATRIX_ENABLE -const snled27351_led_t g_snled27351_leds[RGB_MATRIX_LED_COUNT] = { -/* Refer to SNLED27351 manual for these locations - * driver - * | R location - * | | G location - * | | | B location - * | | | | */ - {0, G_1, I_1, H_1}, - {0, G_2, I_2, H_2}, - {0, G_3, I_3, H_3}, - {0, G_4, I_4, H_4}, - {0, G_5, I_5, H_5}, - {0, G_6, I_6, H_6}, - {0, G_7, I_7, H_7}, - {0, G_8, I_8, H_8}, - {0, G_9, I_9, H_9}, - {0, G_10, I_10, H_10}, - {0, G_11, I_11, H_11}, - {0, G_12, I_12, H_12}, - {0, G_13, I_13, H_13}, - {0, G_15, I_15, H_15}, - {0, G_16, I_16, H_16}, - {0, G_14, I_14, H_14}, - {0, J_16, L_16, K_16}, - {0, J_15, L_15, K_15}, - {0, J_14, L_14, K_14}, - {0, J_13, L_13, K_13}, - - {0, D_1, F_1, E_1}, - {0, D_2, F_2, E_2}, - {0, D_3, F_3, E_3}, - {0, D_4, F_4, E_4}, - {0, D_5, F_5, E_5}, - {0, D_6, F_6, E_6}, - {0, D_7, F_7, E_7}, - {0, D_8, F_8, E_8}, - {0, D_9, F_9, E_9}, - {0, D_10, F_10, E_10}, - {0, D_11, F_11, E_11}, - {0, D_12, F_12, E_12}, - {0, D_13, F_13, E_13}, - {0, D_14, F_14, E_14}, - {0, D_15, F_15, E_15}, - {0, D_16, F_16, E_16}, - {0, J_12, L_12, K_12}, - {0, J_11, L_11, K_11}, - {0, J_10, L_10, K_10}, - {0, J_9, L_9, K_9}, - {0, J_8, L_8, K_8}, - - {0, A_1, C_1, B_1}, - {0, A_2, C_2, B_2}, - {0, A_3, C_3, B_3}, - {0, A_4, C_4, B_4}, - {0, A_5, C_5, B_5}, - {0, A_6, C_6, B_6}, - {0, A_7, C_7, B_7}, - {0, A_8, C_8, B_8}, - {0, A_9, C_9, B_9}, - {0, A_10, C_10, B_10}, - {0, A_11, C_11, B_11}, - {0, A_12, C_12, B_12}, - {0, A_13, C_13, B_13}, - {0, A_14, C_14, B_14}, - {0, A_15, C_15, B_15}, - {0, A_16, C_16, B_16}, - {0, J_7, L_7, K_7}, - {0, J_6, L_6, K_6}, - {0, J_5, L_5, K_5}, - {0, J_4, L_4, K_4}, - - {1, G_16, I_16, H_16}, - {1, G_15, I_15, H_15}, - {1, G_14, I_14, H_14}, - {1, G_13, I_13, H_13}, - {1, G_12, I_12, H_12}, - {1, G_11, I_11, H_11}, - {1, G_10, I_10, H_10}, - {1, G_9, I_9, H_9}, - {1, G_8, I_8, H_8}, - {1, G_7, I_7, H_7}, - {1, G_6, I_6, H_6}, - {1, G_5, I_5, H_5}, - {1, G_4, I_4, H_4}, - {1, J_8, L_8, K_8}, - {1, J_9, L_9, K_9}, - {1, J_10, L_10, K_10}, - {1, J_11, L_11, K_11}, - - {1, D_16, F_16, E_16}, - {1, D_15, F_15, E_15}, - {1, D_14, F_14, E_14}, - {1, D_13, F_13, E_13}, - {1, D_12, F_12, E_12}, - {1, D_11, F_11, E_11}, - {1, D_10, F_10, E_10}, - {1, D_9, F_9, E_9}, - {1, D_8, F_8, E_8}, - {1, D_7, F_7, E_7}, - {1, D_6, F_6, E_6}, - {1, D_5, F_5, E_5}, - {1, D_4, F_4, E_4}, - {1, D_1, F_1, E_1}, - {1, J_5, L_5, K_5}, - {1, J_6, L_6, K_6}, - {1, J_7, L_7, K_7}, - - {1, A_16, C_16, B_16}, - {1, A_15, C_15, B_15}, - {1, A_14, C_14, B_14}, - {1, A_10, C_10, B_10}, - {1, A_6, C_6, B_6}, - {1, A_5, C_5, B_5}, - {1, A_4, C_4, B_4}, - {1, A_3, C_3, B_3}, - {1, A_2, C_2, B_2}, - {1, A_1, C_1, B_1}, - {1, J_1, L_1, K_1}, - {1, J_2, L_2, K_2}, - {1, J_3, L_3, K_3}, - {1, J_4, L_4, K_4}, -}; - -#define __ NO_LED - -led_config_t g_led_config = { - { - // Key Matrix to LED Index - { 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, 40 }, - { 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, __ }, - { 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, __, __, __, __, 74, 75, 76, 77 }, - { 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, __, __, 91, __, 92, 93, 94, __ }, - { 95, 96, 97, __, __, __, 98, __, __, __, 99, 100, 101, 102, 103, 104, 105, 106, __, 107, 108 }, - }, - { - // LED Index to Physical Position - {0, 0}, {13, 0}, {24, 0}, {34, 0}, {45, 0}, {57, 0}, {68, 0}, {78, 0}, {89, 0}, {102, 0}, {112, 0}, {123, 0}, {133, 0}, {159, 0}, {169, 0}, {180, 0}, {193, 0}, {203, 0}, {214, 0}, {224, 0}, - {0,15}, {10,15}, {21,15}, {31,15}, {42,15}, {52,15}, {63,15}, {73,15}, {83,15}, { 94,15}, {104,15}, {115,15}, {125,15}, {141,15}, {159,15}, {169,15}, {180,15}, {193,15}, {203,15}, {214,15}, {224,15}, - {3,27}, {16,27}, {26,27}, {36,27}, {47,27}, {57,27}, {68,27}, {78,27}, {89,27}, { 99,27}, {109,27}, {120,27}, {130,27}, {145,34}, {159,27}, {169,27}, {180,27}, {193,27}, {203,27}, {214,27}, - {4,40}, {18,40}, {29,40}, {39,40}, {50,40}, {60,40}, {70,40}, {81,40}, {91,40}, {102,40}, {112,40}, {123,40}, {133,40}, {193,40}, {203,40}, {214,40}, {224,34}, - {1,52}, {13,52}, {23,52}, {34,52}, {44,52}, {55,52}, {65,52}, {76,52}, {86,52}, { 96,52}, {107,52}, {117,52}, {137,52}, {169,52}, {193,52}, {203,52}, {214,52}, - {1,64}, {14,64}, {27,64}, {66,64}, {105,64}, {119,64}, {132,64}, {145,64}, {159,64}, {169,64}, {180,64}, {198,64}, {214,64}, {224,58} - }, - { - // RGB LED Index to Flag - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 - } -}; -#endif diff --git a/keyboards/keychron/v6_max/iso_encoder/keymaps/default/keymap.c b/keyboards/keychron/v6_max/iso_encoder/keymaps/default/keymap.c deleted file mode 100644 index 9ebf4ae5c8..0000000000 --- a/keyboards/keychron/v6_max/iso_encoder/keymaps/default/keymap.c +++ /dev/null @@ -1,73 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#include QMK_KEYBOARD_H -#include "keychron_common.h" - -enum layers { - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN, -}; -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_iso_110( - KC_ESC, KC_BRID, KC_BRIU, KC_MCTRL, KC_LNPAD, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_MUTE, KC_SNAP, KC_SIRI, RGB_MOD, KC_F13, KC_F14, KC_F15, KC_F16, - KC_GRV, 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_INS, KC_HOME, KC_PGUP, KC_NUM, KC_PSLS, KC_PAST, KC_PMNS, - 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_DEL, KC_END, KC_PGDN, KC_P7, KC_P8, KC_P9, - 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_NUHS, KC_ENT, KC_P4, KC_P5, KC_P6, KC_PPLS, - KC_LSFT, KC_NUBS, 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_P1, KC_P2, KC_P3, - KC_LCTL, KC_LOPTN, KC_LCMMD, KC_SPC, KC_RCMMD, KC_ROPTN, MO(MAC_FN), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT, KC_P0, KC_PDOT, KC_PENT), - [MAC_FN] = LAYOUT_iso_110( - _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, RGB_TOG, _______, _______, RGB_TOG, _______, _______, _______, _______, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - [WIN_BASE] = LAYOUT_iso_110( - KC_ESC, 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_MUTE, KC_PSCR, KC_CTANA, RGB_MOD, _______, _______, _______, _______, - KC_GRV, 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_INS, KC_HOME, KC_PGUP, KC_NUM, KC_PSLS, KC_PAST, KC_PMNS, - 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_DEL, KC_END, KC_PGDN, KC_P7, KC_P8, KC_P9, - 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_NUHS, KC_ENT, KC_P4, KC_P5, KC_P6, KC_PPLS, - KC_LSFT, KC_NUBS, 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_P1, KC_P2, KC_P3, - KC_LCTL, KC_LWIN, KC_LALT, KC_SPC, KC_RALT, KC_RWIN, MO(WIN_FN), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT, KC_P0, KC_PDOT, KC_PENT), - [WIN_FN] = LAYOUT_iso_110( - _______, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, RGB_TOG, _______, _______, RGB_TOG, _______, _______, _______, _______, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______) -}; - -#if defined(ENCODER_MAP_ENABLE) -const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][2] = { - [MAC_BASE] = {ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [MAC_FN] = {ENCODER_CCW_CW(RGB_VAD, RGB_VAI)}, - [WIN_BASE] = {ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [WIN_FN] = {ENCODER_CCW_CW(RGB_VAD, RGB_VAI)}, -}; -#endif // ENCODER_MAP_ENABLE - -// clang-format on -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - if (!process_record_keychron_common(keycode, record)) { - return false; - } - return true; -} diff --git a/keyboards/keychron/v6_max/iso_encoder/keymaps/via/keymap.c b/keyboards/keychron/v6_max/iso_encoder/keymaps/via/keymap.c deleted file mode 100644 index 9ebf4ae5c8..0000000000 --- a/keyboards/keychron/v6_max/iso_encoder/keymaps/via/keymap.c +++ /dev/null @@ -1,73 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#include QMK_KEYBOARD_H -#include "keychron_common.h" - -enum layers { - MAC_BASE, - MAC_FN, - WIN_BASE, - WIN_FN, -}; -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_iso_110( - KC_ESC, KC_BRID, KC_BRIU, KC_MCTRL, KC_LNPAD, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_MUTE, KC_SNAP, KC_SIRI, RGB_MOD, KC_F13, KC_F14, KC_F15, KC_F16, - KC_GRV, 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_INS, KC_HOME, KC_PGUP, KC_NUM, KC_PSLS, KC_PAST, KC_PMNS, - 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_DEL, KC_END, KC_PGDN, KC_P7, KC_P8, KC_P9, - 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_NUHS, KC_ENT, KC_P4, KC_P5, KC_P6, KC_PPLS, - KC_LSFT, KC_NUBS, 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_P1, KC_P2, KC_P3, - KC_LCTL, KC_LOPTN, KC_LCMMD, KC_SPC, KC_RCMMD, KC_ROPTN, MO(MAC_FN), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT, KC_P0, KC_PDOT, KC_PENT), - [MAC_FN] = LAYOUT_iso_110( - _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, RGB_TOG, _______, _______, RGB_TOG, _______, _______, _______, _______, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - [WIN_BASE] = LAYOUT_iso_110( - KC_ESC, 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_MUTE, KC_PSCR, KC_CTANA, RGB_MOD, _______, _______, _______, _______, - KC_GRV, 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_INS, KC_HOME, KC_PGUP, KC_NUM, KC_PSLS, KC_PAST, KC_PMNS, - 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_DEL, KC_END, KC_PGDN, KC_P7, KC_P8, KC_P9, - 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_NUHS, KC_ENT, KC_P4, KC_P5, KC_P6, KC_PPLS, - KC_LSFT, KC_NUBS, 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_P1, KC_P2, KC_P3, - KC_LCTL, KC_LWIN, KC_LALT, KC_SPC, KC_RALT, KC_RWIN, MO(WIN_FN), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT, KC_P0, KC_PDOT, KC_PENT), - [WIN_FN] = LAYOUT_iso_110( - _______, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, RGB_TOG, _______, _______, RGB_TOG, _______, _______, _______, _______, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______) -}; - -#if defined(ENCODER_MAP_ENABLE) -const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][2] = { - [MAC_BASE] = {ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [MAC_FN] = {ENCODER_CCW_CW(RGB_VAD, RGB_VAI)}, - [WIN_BASE] = {ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [WIN_FN] = {ENCODER_CCW_CW(RGB_VAD, RGB_VAI)}, -}; -#endif // ENCODER_MAP_ENABLE - -// clang-format on -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - if (!process_record_keychron_common(keycode, record)) { - return false; - } - return true; -} diff --git a/keyboards/keychron/v6_max/iso_encoder/keymaps/via/rules.mk b/keyboards/keychron/v6_max/iso_encoder/keymaps/via/rules.mk deleted file mode 100644 index 1e5b99807c..0000000000 --- a/keyboards/keychron/v6_max/iso_encoder/keymaps/via/rules.mk +++ /dev/null @@ -1 +0,0 @@ -VIA_ENABLE = yes diff --git a/keyboards/keychron/v6_max/iso_encoder/rules.mk b/keyboards/keychron/v6_max/iso_encoder/rules.mk deleted file mode 100644 index 7ff128fa69..0000000000 --- a/keyboards/keychron/v6_max/iso_encoder/rules.mk +++ /dev/null @@ -1 +0,0 @@ -# This file intentionally left blank \ No newline at end of file diff --git a/keyboards/keychron/v6_max/mcuconf.h b/keyboards/keychron/v6_max/mcuconf.h deleted file mode 100644 index 89294ee64b..0000000000 --- a/keyboards/keychron/v6_max/mcuconf.h +++ /dev/null @@ -1,37 +0,0 @@ -/* Copyright 2024 @ 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 - -#include_next - -#undef STM32_HSECLK -#define STM32_HSECLK 16000000 - -#undef STM32_PLLM_VALUE -#define STM32_PLLM_VALUE 8 - -#undef STM32_PLLN_VALUE -#define STM32_PLLN_VALUE 96 - -#undef STM32_PLLP_VALUE -#define STM32_PLLP_VALUE 4 - -#undef STM32_PLLQ_VALUE -#define STM32_PLLQ_VALUE 4 - -#undef STM32_SPI_USE_SPI1 -#define STM32_SPI_USE_SPI1 TRUE diff --git a/keyboards/keychron/v6_max/readme.md b/keyboards/keychron/v6_max/readme.md deleted file mode 100644 index 5b1c8d6cbd..0000000000 --- a/keyboards/keychron/v6_max/readme.md +++ /dev/null @@ -1,21 +0,0 @@ -# Keychron V6 Max - -![Keychron V6 Max](https://www.keychron.com/cdn/shop/files/V6-Max-11_2048x.jpg?v=1709002985) - -A customizable full-size 100% wireless keyboard. - -* Keyboard Maintainer: [Keychron](https://github.com/keychron) -* Hardware Supported: Keychron V6 Max -* Hardware Availability: [Keychron V6 Max QMK/VIA Wireless Custom Mechanical Keyboard](https://www.keychron.com/products/keychron-v6-max-qmk-via-wireless-custom-mechanical-keyboard) - -Make example for this keyboard (after setting up your build environment): - - make keychron/v6_max/ansi_encoder:default - -Flashing example for this keyboard: - - make keychron/v6_max/ansi_encoder:default:flash - -**Reset Key**: Toggle mode switch to "Cable", hold down the *Esc* key or reset button underneath space bar while connecting the USB cable, - -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). diff --git a/keyboards/keychron/v6_max/rules.mk b/keyboards/keychron/v6_max/rules.mk deleted file mode 100644 index 4eaf6820bc..0000000000 --- a/keyboards/keychron/v6_max/rules.mk +++ /dev/null @@ -1,4 +0,0 @@ -include keyboards/keychron/common/wireless/wireless.mk -include keyboards/keychron/common/keychron_common.mk - -VPATH += $(TOP_DIR)/keyboards/keychron diff --git a/keyboards/keychron/v6_max/v6_max.c b/keyboards/keychron/v6_max/v6_max.c deleted file mode 100644 index 67612adef5..0000000000 --- a/keyboards/keychron/v6_max/v6_max.c +++ /dev/null @@ -1,84 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#include "quantum.h" -#include "keychron_task.h" -#ifdef FACTORY_TEST_ENABLE -# include "factory_test.h" -# include "keychron_common.h" -#endif -#ifdef LK_WIRELESS_ENABLE -# include "lkbt51.h" -# include "wireless.h" -# include "keychron_wireless_common.h" -# include "battery.h" -#endif - -#define POWER_ON_LED_DURATION 3000 -static uint32_t power_on_indicator_timer; - -#ifdef DIP_SWITCH_ENABLE -bool dip_switch_update_kb(uint8_t index, bool active) { - if (index == 0) { - default_layer_set(1UL << (active ? 2 : 0)); - } - dip_switch_update_user(index, active); - - return true; -} -#endif - -void keyboard_post_init_kb(void) { -#ifdef LK_WIRELESS_ENABLE - palSetLineMode(P2P4_MODE_SELECT_PIN, PAL_MODE_INPUT); - palSetLineMode(BT_MODE_SELECT_PIN, PAL_MODE_INPUT); - - writePin(BAT_LOW_LED_PIN, BAT_LOW_LED_PIN_ON_STATE); - - lkbt51_init(false); - wireless_init(); -#endif - - power_on_indicator_timer = timer_read32(); -#ifdef ENCODER_ENABLE - encoder_cb_init(); -#endif - - keyboard_post_init_user(); -} - -bool keychron_task_kb(void) { - if (power_on_indicator_timer) { - if (timer_elapsed32(power_on_indicator_timer) > POWER_ON_LED_DURATION) { - power_on_indicator_timer = 0; - -#ifdef LK_WIRELESS_ENABLE - writePin(BAT_LOW_LED_PIN, !BAT_LOW_LED_PIN_ON_STATE); -#endif - } else { -#ifdef LK_WIRELESS_ENABLE - writePin(BAT_LOW_LED_PIN, BAT_LOW_LED_PIN_ON_STATE); -#endif - } - } - return true; -} - -#ifdef LK_WIRELESS_ENABLE -bool lpm_is_kb_idle(void) { - return power_on_indicator_timer == 0 && !factory_reset_indicating(); -} -#endif diff --git a/keyboards/keychron/v6_max/via_json/v6_max_ansi_encoder.json b/keyboards/keychron/v6_max/via_json/v6_max_ansi_encoder.json deleted file mode 100644 index c699330bdf..0000000000 --- a/keyboards/keychron/v6_max/via_json/v6_max_ansi_encoder.json +++ /dev/null @@ -1,349 +0,0 @@ -{ - "name": "Keychron V6 Max ANSI Knob", - "vendorId": "0x3434", - "productId": "0x0960", - "keycodes": ["qmk_lighting"], - "menus": [ - { - "label": "Lighting", - "content": [ - { - "label": "Backlight", - "content": [ - { - "label": "Brightness", - "type": "range", - "options": [0, 255], - "content": ["id_qmk_rgb_matrix_brightness", 3, 1] - }, - { - "label": "Effect", - "type": "dropdown", - "content": ["id_qmk_rgb_matrix_effect", 3, 2], - "options": [ - ["None", 0], - ["Solid Color", 1], - ["Breathing", 2], - ["Band Spiral Val", 3], - ["Cycle All", 4], - ["Cycle Left Right", 5], - ["Cycle Up Down", 6], - ["Rainbow Moving Chevron", 7], - ["Cycle Out In", 8], - ["Cycle Out In Dual", 9], - ["Cycle Pinwheel", 10], - ["Cycle Spiral", 11], - ["Dual Beacon", 12], - ["Rainbow Beacon", 13], - ["Jellybean Raindrops", 14], - ["Pixel Rain", 15], - ["Typing Heatmap", 16], - ["Digital Rain", 17], - ["Reactive Simple", 18], - ["Reactive Multiwide", 19], - ["Reactive Multinexus", 20], - ["Splash", 21], - ["Solid Splash", 22] - ] - }, - { - "showIf": "{id_qmk_rgb_matrix_effect} > 1", - "label": "Effect Speed", - "type": "range", - "options": [0, 255], - "content": ["id_qmk_rgb_matrix_effect_speed", 3, 3] - }, - { - "showIf": "{id_qmk_rgb_matrix_effect} != 0 && ( {id_qmk_rgb_matrix_effect} < 4 || {id_qmk_rgb_matrix_effect} == 18 || ({id_qmk_rgb_matrix_effect} > 17 && {id_qmk_rgb_matrix_effect} != 21) ) ", - "label": "Color", - "type": "color", - "content": ["id_qmk_rgb_matrix_color", 3, 4] - } - ] - } - ] - } - ], - "customKeycodes": [ - {"name": "Left Option", "title": "Left Option", "shortName": "LOpt"}, - {"name": "Right Option", "title": "Right Option", "shortName": "ROpt"}, - {"name": "Left Cmd", "title": "Left Command", "shortName": "LCmd"}, - {"name": "Right Cmd", "title": "Right Command", "shortName": "RCmd"}, - {"name": "Misson Control", "title": "Misson Control in Mac", "shortName": "MCtl"}, - {"name": "Lanuch Pad", "title": "Lanuch Pad in Windows", "shortName": "LPad"}, - {"name": "Task View", "title": "Task View in Windows", "shortName": "Task"}, - {"name": "File Explorer", "title": "File Explorer in Windows", "shortName": "File"}, - {"name": "Screen shot", "title": "Screenshot in macOS", "shortName": "SShot"}, - {"name": "Cortana", "title": "Cortana in Windows", "shortName": "Cortana"}, - {"name": "Siri", "title": "Siri in macOS", "shortName": "Siri"}, - {"name": "Bluetooth Host 1", "title": "Bluetooth Host 1", "shortName": "BTH1"}, - {"name": "Bluetooth Host 2", "title": "Bluetooth Host 2", "shortName": "BTH2"}, - {"name": "Bluetooth Host 3", "title": "Bluetooth Host 3", "shortName": "BTH3"}, - {"name": "2.4G", "title": "2.4G", "shortName": "2.4G"}, - {"name": "Battery Level", "title": "Show battery level", "shortName": "Batt"} - ], - "matrix": {"rows": 6, "cols" : 21}, - "layouts": { - "keymap": [ - [ - { - "c": "#777777" - }, - "0, 0", - { - "x": 0.25, - "c": "#aaaaaa" - }, - "0, 1", - "0, 2", - "0, 3", - "0, 4", - { - "x": 0.25, - "c": "#cccccc" - }, - "0, 5", - "0, 6", - "0, 7", - "0, 8", - { - "x": 0.25, - "c": "#aaaaaa" - }, - "0, 9", - "0, 10", - "0, 11", - "0, 12", - { - "x": 0.25, - "c": "#cccccc" - }, - "0, 13\n\n\n\n\n\n\n\n\ne0", - { - "x": 0.25 - }, - "0, 14", - "0, 15", - "0, 16", - { - "x": 0.25, - "c": "#aaaaaa" - }, - "0, 17", - "0, 18", - "0, 19", - "0, 20" - ], - [ - { - "y": 0.25, - "c": "#cccccc" - }, - "1, 0", - { - "c": "#aaaaaa" - }, - "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": 2, - "c": "#cccccc" - }, - "1, 13", - { - "x": 0.25 - }, - "1, 14", - "1, 15", - "1, 16", - { - "x": 0.25, - "c": "#aaaaaa" - }, - "1, 17", - "1, 18", - "1, 19", - "1, 20" - ], - [ - { - "w": 1.5, - "c": "#cccccc" - }, - "2, 0", - { - "c": "#aaaaaa" - }, - "2, 1", - "2, 2", - "2, 3", - "2, 4", - "2, 5", - "2, 6", - "2, 7", - "2, 8", - "2, 9", - "2, 10", - "2, 11", - "2, 12", - { - "w": 1.5, - "c": "#cccccc" - }, - "2, 13", - { - "x": 0.25 - }, - "2, 14", - "2, 15", - "2, 16", - { - "x": 0.25, - "c": "#aaaaaa" - }, - "2, 17", - "2, 18", - "2, 19", - { - "h": 2, - "c": "#aaaaaa" - }, - "3, 20" - ], - [ - { - "w": 1.75, - "c": "#cccccc" - }, - "3, 0", - { - "c": "#aaaaaa" - }, - "3, 1", - "3, 2", - "3, 3", - "3, 4", - "3, 5", - "3, 6", - "3, 7", - "3, 8", - "3, 9", - "3, 10", - "3, 11", - { - "w": 2.25, - "c": "#777777" - }, - "3, 12", - { - "x": 3.5, - "c": "#aaaaaa" - }, - "3, 17", - "3, 18", - "3, 19" - ], - [ - { - "w": 2.25, - "c": "#cccccc" - }, - "4, 0", - { - "c": "#aaaaaa" - }, - "4, 2", - "4, 3", - "4, 4", - "4, 5", - "4, 6", - "4, 7", - "4, 8", - "4, 9", - "4, 10", - "4, 11", - { - "w": 2.75, - "c": "#cccccc" - }, - "4, 13", - { - "x": 1.25, - "c": "#aaaaaa" - }, - "4, 15", - { - "x": 1.25 - }, - "4, 17", - "4, 18", - "4, 19", - { - "h": 2 - }, - "5, 20" - ], - [ - { - "w": 1.25, - "c": "#cccccc" - }, - "5, 0", - { - "w": 1.25 - }, - "5, 1", - { - "w": 1.25 - }, - "5, 2", - { - "w": 6.25, - "c": "#aaaaaa" - }, - "5, 6", - { - "w": 1.25, - "c": "#cccccc" - }, - "5, 10", - { - "w": 1.25 - }, - "5, 11", - { - "w": 1.25, - "c": "#cccccc" - }, - "5, 12", - { - "w": 1.25 - }, - "5, 13", - { - "x": 0.25, - "c": "#aaaaaa" - }, - "5, 14", - "5, 15", - "5, 16", - { - "x": 0.25, - "w": 2 - }, - "5, 18", - "5, 19" - ] - ] - } - } diff --git a/keyboards/keychron/v8_max/ansi_encoder/ansi_encoder.c b/keyboards/keychron/v8_max/ansi_encoder/ansi_encoder.c deleted file mode 100644 index f25f602596..0000000000 --- a/keyboards/keychron/v8_max/ansi_encoder/ansi_encoder.c +++ /dev/null @@ -1,131 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#include "quantum.h" - -// clang-format off - -#ifdef RGB_MATRIX_ENABLE -const snled27351_led_t g_snled27351_leds[RGB_MATRIX_LED_COUNT] = { -/* Refer to SNLED27351 manual for these locations - * driver - * | R location - * | | G location - * | | | B location - * | | | | */ - {0, G_1, I_1, H_1}, - {0, G_2, I_2, H_2}, - {0, G_3, I_3, H_3}, - {0, G_4, I_4, H_4}, - {0, G_5, I_5, H_5}, - {0, G_6, I_6, H_6}, - {0, G_7, I_7, H_7}, - {0, G_8, I_8, H_8}, - {0, G_9, I_9, H_9}, - {0, G_10, I_10, H_10}, - {0, G_11, I_11, H_11}, - {0, G_12, I_12, H_12}, - {0, G_13, I_13, H_13}, - {0, G_15, I_15, H_15}, - {0, G_16, I_16, H_16}, - - {0, D_1, F_1, E_1}, - {0, D_2, F_2, E_2}, - {0, D_3, F_3, E_3}, - {0, D_4, F_4, E_4}, - {0, D_5, F_5, E_5}, - {0, D_6, F_6, E_6}, - {0, D_8, F_8, E_8}, - {0, D_9, F_9, E_9}, - {0, D_10, F_10, E_10}, - {0, D_11, F_11, E_11}, - {0, D_12, F_12, E_12}, - {0, D_13, F_13, E_13}, - {0, D_14, F_14, E_14}, - {0, D_15, F_15, E_15}, - {0, D_16, F_16, E_16}, - - {0, A_1, C_1, B_1}, - {0, A_2, C_2, B_2}, - {0, A_3, C_3, B_3}, - {0, A_4, C_4, B_4}, - {0, A_5, C_5, B_5}, - {0, A_6, C_6, B_6}, - {0, A_8, C_8, B_8}, - {0, A_9, C_9, B_9}, - {0, A_10, C_10, B_10}, - {0, A_11, C_11, B_11}, - {0, A_12, C_12, B_12}, - {0, A_13, C_13, B_13}, - {0, A_15, C_15, B_15}, - {0, A_16, C_16, B_16}, - - {1, D_16, F_16, E_16}, - {1, D_14, F_14, E_14}, - {1, D_13, F_13, E_13}, - {1, D_12, F_12, E_12}, - {1, D_11, F_11, E_11}, - {1, D_10, F_10, E_10}, - {1, D_9, F_9, E_9}, - {1, D_8, F_8, E_8}, - {1, D_7, F_7, E_7}, - {1, D_6, F_6, E_6}, - {1, D_5, F_5, E_5}, - {1, D_4, F_4, E_4}, - {1, D_3, F_3, E_3}, - {1, D_2, F_2, E_2}, - - {1, A_16, C_16, B_16}, - {1, A_15, C_15, B_15}, - {1, A_13, C_13, B_13}, - {1, A_11, C_11, B_11}, - {1, A_10, C_10, B_10}, - {1, A_9, C_9, B_9}, - {1, A_7, C_7, B_7}, - {1, A_5, C_5, B_5}, - {1, A_3, C_3, B_3}, - {1, A_2, C_2, B_2}, - {1, A_1, C_1, B_1}, -}; -#define __ NO_LED - -led_config_t g_led_config = { - { - // Key Matrix to LED Index - { 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, 40, 41, __, 42, __, 43}, - { 44, __, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, __, 57, __}, - { 58, 59, __, 60, __, 61, 62, 63, __, 64, __, 65, __, __, 66, 67, 68}, - }, - { - // LED Index to Physical Position - {7,1}, {20,1}, {33,0}, {48,3}, {61,6}, {74,8 }, {87,11}, {106,11}, {119,8}, {132,6}, {145,3}, {160,0}, {173,1}, {193,1}, {220,0}, - {7,14}, {24,14}, {39,14}, {52,17}, {65,20}, {78,22}, {103,25}, {116,22}, {129,20}, {142,17}, {155,14}, {170,14}, {183,14}, {200,14}, {222,16}, - {6,27}, {24,27}, {39,28}, {52,30}, {65,33}, {78,36}, {109,37}, {122,34}, {135,32}, {148,29}, {162,27}, {176,27}, {197,27}, {224,29}, - {7,40}, {28,40}, {43,42}, {56,44}, {69,47}, {82,50}, {102,52}, {115,49}, {128,46}, {141,44}, {154,41}, {169,40}, {187,40}, {209,43}, - {0,53}, {17,53}, {42,55}, {65,60}, {86,64}, {107,64}, {131,59}, {156,54}, {196,56}, {209,56}, {222,56}, - }, - { - // RGB LED Index to Flag - 1, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1, 1, - 1, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1, - 8, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1, 1, - 1, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1, 1, - 1, 1, 1, 4, 1, 1, 4, 1, 1, 1, 1, - } -}; -#endif diff --git a/keyboards/keychron/v8_max/ansi_encoder/config.h b/keyboards/keychron/v8_max/ansi_encoder/config.h deleted file mode 100644 index 6eba51401e..0000000000 --- a/keyboards/keychron/v8_max/ansi_encoder/config.h +++ /dev/null @@ -1,68 +0,0 @@ - /* Copyright 2024 @ 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 . - */ - -#pragma once - -#ifdef RGB_MATRIX_ENABLE -/* RGB Matrix driver configuration */ -# define DRIVER_COUNT 2 -# define DRIVER_1_LED_COUNT 44 -# define DRIVER_2_LED_COUNT 25 -# define RGB_MATRIX_LED_COUNT (DRIVER_1_LED_COUNT + DRIVER_2_LED_COUNT) - -# define SPI_SCK_PIN A5 -# define SPI_MISO_PIN A6 -# define SPI_MOSI_PIN A7 - -# define DRIVER_CS_PINS \ - { B8, B9 } -# define SNLED23751_SPI_DIVISOR 16 -# define SPI_DRIVER SPID1 - -/* Scan phase of led driver set as MSKPHASE_9CHANNEL(defined as 0x03 in snled27351.h) */ -# define SNLED27351_PHASE_CHANNEL MSKPHASE_9CHANNEL - -/* Set LED driver current */ -# define SNLED27351_CURRENT_TUNE \ - { 0x2c, 0x2c, 0x2c, 0x2c, 0x2c, 0x2c, 0x2c, 0x2c, 0x2c, 0x2c, 0x2c, 0x2c} - -/* Set to infinit, which is use in USB mode by default */ -# define RGB_MATRIX_TIMEOUT RGB_MATRIX_TIMEOUT_INFINITE - -/* Allow shutdown of led driver to save power */ -# define RGB_MATRIX_DRIVER_SHUTDOWN_ENABLE - -/* Turn off backlight on low brightness to save power */ -# define RGB_MATRIX_BRIGHTNESS_TURN_OFF_VAL 32 - -/* Indicator */ -# define BT_HOST_LED_MATRIX_LIST \ - { 16, 17, 18 } - -# define P2P4G_HOST_LED_MATRIX_LIST \ - { 19 } - -# define BAT_LEVEL_LED_LIST \ - { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 } - -# define CAPS_LOCK_INDEX 30 -# define LOW_BAT_IND_INDEX \ - { 61, 64 } - -# define RGB_MATRIX_KEYPRESSES -# define RGB_MATRIX_FRAMEBUFFER_EFFECTS - -#endif \ No newline at end of file diff --git a/keyboards/keychron/v8_max/ansi_encoder/info.json b/keyboards/keychron/v8_max/ansi_encoder/info.json deleted file mode 100644 index 79006ed359..0000000000 --- a/keyboards/keychron/v8_max/ansi_encoder/info.json +++ /dev/null @@ -1,86 +0,0 @@ -{ - "usb": { - "pid": "0x0980", - "device_version": "1.0.0" - }, - "layouts": { - "LAYOUT_ansi_69": { - "layout": [ - {"matrix": [0, 0], "x": 0.75, "y": 0.25}, - {"matrix": [0, 1], "x": 1.75, "y": 0.25}, - {"matrix": [0, 2], "x": 2.75, "y": 0}, - {"matrix": [0, 3], "x": 3.75, "y": 0.25}, - {"matrix": [0, 4], "x": 4.75, "y": 0.25}, - {"matrix": [0, 5], "x": 5.75, "y": 0.25}, - {"matrix": [0, 6], "x": 6.75, "y": 0.25}, - {"matrix": [0, 7], "x": 9.5, "y": 0.25}, - {"matrix": [0, 8], "x": 10.5, "y": 0.25}, - {"matrix": [0, 9], "x": 11.5, "y": 0.25}, - {"matrix": [0, 10], "x": 12.5, "y": 0.25}, - {"matrix": [0, 11], "x": 13.5, "y": 0}, - {"matrix": [0, 12], "x": 14.5, "y": 0.25}, - {"matrix": [0, 14], "x": 15.5, "y": 0.25, "w": 2}, - {"matrix": [0, 16], "x": 18, "y": 0}, - - {"matrix": [1, 0], "x": 0.5, "y": 1.25, "w": 1.5}, - {"matrix": [1, 1], "x": 2, "y": 1.25}, - {"matrix": [1, 2], "x": 3.25, "y": 1.25}, - {"matrix": [1, 3], "x": 4.25, "y": 1.25}, - {"matrix": [1, 4], "x": 5.25, "y": 1.25}, - {"matrix": [1, 5], "x": 6.25, "y": 1.25}, - {"matrix": [1, 7], "x": 9, "y": 1.25}, - {"matrix": [1, 8], "x": 10, "y": 1.25}, - {"matrix": [1, 9], "x": 11, "y": 1.25}, - {"matrix": [1, 10], "x": 12, "y": 1.25}, - {"matrix": [1, 11], "x": 13.25, "y": 1.25}, - {"matrix": [1, 12], "x": 14.25, "y": 1.25}, - {"matrix": [1, 13], "x": 15.25, "y": 1.25}, - {"matrix": [1, 14], "x": 16.25, "y": 1.25, "w": 1.5}, - {"matrix": [1, 16], "x": 18.25, "y": 1.5}, - - {"matrix": [2, 0], "x": 0.25, "y": 2.25, "w": 1.75}, - {"matrix": [2, 1], "x": 2, "y": 2.25}, - {"matrix": [2, 2], "x": 3.5, "y": 2.25}, - {"matrix": [2, 3], "x": 4.5, "y": 2.25}, - {"matrix": [2, 4], "x": 5.5, "y": 2.25}, - {"matrix": [2, 5], "x": 6.5, "y": 2.25}, - {"matrix": [2, 7], "x": 9.25, "y": 2.25}, - {"matrix": [2, 8], "x": 10.25, "y": 2.25}, - {"matrix": [2, 9], "x": 11.25, "y": 2.25}, - {"matrix": [2, 10], "x": 12.25, "y": 2.25}, - {"matrix": [2, 11], "x": 13.75, "y": 2.25}, - {"matrix": [2, 12], "x": 14.75, "y": 2.25}, - {"matrix": [2, 14], "x": 15.75, "y": 2.25, "w": 2.25}, - {"matrix": [2, 16], "x": 18.5, "y": 2.5}, - - {"matrix": [3, 0], "x": 0, "y": 3.25, "w": 2.25}, - {"matrix": [3, 2], "x": 2.25, "y": 3.25}, - {"matrix": [3, 3], "x": 3.75, "y": 3.25}, - {"matrix": [3, 4], "x": 4.75, "y": 3.25}, - {"matrix": [3, 5], "x": 5.75, "y": 3.25}, - {"matrix": [3, 6], "x": 6.75, "y": 3.25}, - {"matrix": [3, 7], "x": 8.5, "y": 3.25}, - {"matrix": [3, 8], "x": 9.5, "y": 3.25}, - {"matrix": [3, 9], "x": 10.5, "y": 3.25}, - {"matrix": [3, 10], "x": 11.5, "y": 3.25}, - {"matrix": [3, 11], "x": 12.5, "y": 3.25}, - {"matrix": [3, 12], "x": 14.25, "y": 3.25}, - {"matrix": [3, 13], "x": 15.25, "y": 3.25, "w": 1.75}, - {"matrix": [3, 15], "x": 17.25, "y": 3.5}, - - {"matrix": [4, 0], "x": 0, "y": 4.25, "w": 1.25}, - {"matrix": [4, 1], "x": 1.25, "y": 4.25, "w": 1.25}, - {"matrix": [4, 3], "x": 3.75, "y": 4.25, "w": 1.25}, - {"matrix": [4, 5], "x": 5, "y": 4.25, "w": 2.25}, - {"matrix": [4, 6], "x": 7.25, "y": 4.25}, - {"matrix": [4, 7], "x": 8.75, "y": 4.25}, - {"matrix": [4, 9], "x": 9.75, "y": 4.25, "w": 2.25}, - {"matrix": [4, 11], "x": 12, "y": 4.25}, - {"matrix": [4, 14], "x": 16.25, "y": 4.5}, - {"matrix": [4, 15], "x": 17.25, "y": 4.5}, - {"matrix": [4, 16], "x": 18.25, "y": 4.5} - ] - } - } - -} \ No newline at end of file diff --git a/keyboards/keychron/v8_max/ansi_encoder/keymaps/default/keymap.c b/keyboards/keychron/v8_max/ansi_encoder/keymaps/default/keymap.c deleted file mode 100644 index d785ecd29b..0000000000 --- a/keyboards/keychron/v8_max/ansi_encoder/keymaps/default/keymap.c +++ /dev/null @@ -1,81 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#include QMK_KEYBOARD_H -#include "keychron_common.h" - -enum layers { - MAC_BASE, - WIN_BASE, - MAC_FN1, - WIN_FN1, - _FN2 -}; -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_ansi_69( - 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_MUTE, - 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_DEL, - 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_HOME, - KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, - KC_LCTL, KC_LOPTN, KC_LCMMD, KC_SPC, MO(MAC_FN1), MO(_FN2), KC_SPC, KC_RCMMD, KC_LEFT, KC_DOWN, KC_RGHT), - - [WIN_BASE] = LAYOUT_ansi_69( - 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_MUTE, - 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_DEL, - 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_HOME, - KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, - KC_LCTL, KC_LWIN, KC_LALT, KC_SPC, MO(WIN_FN1), MO(_FN2), KC_SPC, KC_RALT, KC_LEFT, KC_DOWN, KC_RGHT), - - [MAC_FN1] = LAYOUT_ansi_69( - KC_GRV, KC_BRID, KC_BRIU, KC_MCTRL,KC_LNPAD,RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, RGB_TOG, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUD, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, KC_END, - _______, RGB_RMOD, RGB_VAD, RGB_HUI, RGB_SAD, RGB_SPD, RGB_SPD, NK_TOGG, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - - [WIN_FN1] = LAYOUT_ansi_69( - KC_GRV, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, RGB_TOG, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUD, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, KC_END, - _______, RGB_RMOD, RGB_VAD, RGB_HUI, RGB_SAD, RGB_SPD, RGB_SPD, NK_TOGG, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - - [_FN2] = LAYOUT_ansi_69( - KC_TILD, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, BAT_LVL, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), -}; - -// clang-format on -#if defined(ENCODER_MAP_ENABLE) -const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][2] = { - [MAC_BASE] = {ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [WIN_BASE] = {ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [MAC_FN1] = {ENCODER_CCW_CW(RGB_VAD, RGB_VAI)}, - [WIN_FN1] = {ENCODER_CCW_CW(RGB_VAD, RGB_VAI)}, - [_FN2] = {ENCODER_CCW_CW(RGB_VAD, RGB_VAI)}, -}; -#endif // ENCODER_MAP_ENABLE - -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - if (!process_record_keychron_common(keycode, record)) { - return false; - } - return true; -} diff --git a/keyboards/keychron/v8_max/ansi_encoder/keymaps/via/keymap.c b/keyboards/keychron/v8_max/ansi_encoder/keymaps/via/keymap.c deleted file mode 100644 index d785ecd29b..0000000000 --- a/keyboards/keychron/v8_max/ansi_encoder/keymaps/via/keymap.c +++ /dev/null @@ -1,81 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#include QMK_KEYBOARD_H -#include "keychron_common.h" - -enum layers { - MAC_BASE, - WIN_BASE, - MAC_FN1, - WIN_FN1, - _FN2 -}; -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [MAC_BASE] = LAYOUT_ansi_69( - 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_MUTE, - 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_DEL, - 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_HOME, - KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, - KC_LCTL, KC_LOPTN, KC_LCMMD, KC_SPC, MO(MAC_FN1), MO(_FN2), KC_SPC, KC_RCMMD, KC_LEFT, KC_DOWN, KC_RGHT), - - [WIN_BASE] = LAYOUT_ansi_69( - 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_MUTE, - 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_DEL, - 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_HOME, - KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, - KC_LCTL, KC_LWIN, KC_LALT, KC_SPC, MO(WIN_FN1), MO(_FN2), KC_SPC, KC_RALT, KC_LEFT, KC_DOWN, KC_RGHT), - - [MAC_FN1] = LAYOUT_ansi_69( - KC_GRV, KC_BRID, KC_BRIU, KC_MCTRL,KC_LNPAD,RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, RGB_TOG, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUD, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, KC_END, - _______, RGB_RMOD, RGB_VAD, RGB_HUI, RGB_SAD, RGB_SPD, RGB_SPD, NK_TOGG, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - - [WIN_FN1] = LAYOUT_ansi_69( - KC_GRV, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, RGB_TOG, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUD, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, KC_END, - _______, RGB_RMOD, RGB_VAD, RGB_HUI, RGB_SAD, RGB_SPD, RGB_SPD, NK_TOGG, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - - [_FN2] = LAYOUT_ansi_69( - KC_TILD, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, BAT_LVL, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), -}; - -// clang-format on -#if defined(ENCODER_MAP_ENABLE) -const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][2] = { - [MAC_BASE] = {ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [WIN_BASE] = {ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [MAC_FN1] = {ENCODER_CCW_CW(RGB_VAD, RGB_VAI)}, - [WIN_FN1] = {ENCODER_CCW_CW(RGB_VAD, RGB_VAI)}, - [_FN2] = {ENCODER_CCW_CW(RGB_VAD, RGB_VAI)}, -}; -#endif // ENCODER_MAP_ENABLE - -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - if (!process_record_keychron_common(keycode, record)) { - return false; - } - return true; -} diff --git a/keyboards/keychron/v8_max/ansi_encoder/keymaps/via/rules.mk b/keyboards/keychron/v8_max/ansi_encoder/keymaps/via/rules.mk deleted file mode 100644 index 036bd6d1c3..0000000000 --- a/keyboards/keychron/v8_max/ansi_encoder/keymaps/via/rules.mk +++ /dev/null @@ -1 +0,0 @@ -VIA_ENABLE = yes \ No newline at end of file diff --git a/keyboards/keychron/v8_max/ansi_encoder/rules.mk b/keyboards/keychron/v8_max/ansi_encoder/rules.mk deleted file mode 100644 index 6e7633bfe0..0000000000 --- a/keyboards/keychron/v8_max/ansi_encoder/rules.mk +++ /dev/null @@ -1 +0,0 @@ -# This file intentionally left blank diff --git a/keyboards/keychron/v8_max/board.h b/keyboards/keychron/v8_max/board.h deleted file mode 100644 index 54fba748bf..0000000000 --- a/keyboards/keychron/v8_max/board.h +++ /dev/null @@ -1,226 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#pragma once - -#include_next - -// clang-format off - -/* Set GPIOA_SWDIO to INPUT and NOT FLOATING */ -#undef VAL_GPIOA_MODER -#define VAL_GPIOA_MODER (PIN_MODE_INPUT(GPIOA_BUTTON) | \ - PIN_MODE_INPUT(GPIOA_PIN1) | \ - PIN_MODE_INPUT(GPIOA_PIN2) | \ - PIN_MODE_INPUT(GPIOA_PIN3) | \ - PIN_MODE_ALTERNATE(GPIOA_CS43L22_LRCK) |\ - PIN_MODE_ALTERNATE(GPIOA_L3GD20_SCL) | \ - PIN_MODE_ALTERNATE(GPIOA_L3GD20_SD0) | \ - PIN_MODE_ALTERNATE(GPIOA_L3GD20_SDI) | \ - PIN_MODE_INPUT(GPIOA_PIN8) | \ - PIN_MODE_INPUT(GPIOA_VBUS_FS) | \ - PIN_MODE_ALTERNATE(GPIOA_OTG_FS_ID) | \ - PIN_MODE_ALTERNATE(GPIOA_OTG_FS_DM) | \ - PIN_MODE_ALTERNATE(GPIOA_OTG_FS_DP) | \ - PIN_MODE_INPUT(GPIOA_SWDIO) | \ - PIN_MODE_INPUT(GPIOA_SWCLK) | \ - PIN_MODE_INPUT(GPIOA_PIN15)) - -#undef VAL_GPIOA_PUPDR -#define VAL_GPIOA_PUPDR (PIN_PUPDR_FLOATING(GPIOA_BUTTON) | \ - PIN_PUPDR_PULLUP(GPIOA_PIN1) | \ - PIN_PUPDR_PULLUP(GPIOA_PIN2) | \ - PIN_PUPDR_PULLUP(GPIOA_PIN3) | \ - PIN_PUPDR_FLOATING(GPIOA_CS43L22_LRCK) |\ - PIN_PUPDR_FLOATING(GPIOA_L3GD20_SCL) | \ - PIN_PUPDR_PULLUP(GPIOA_L3GD20_SD0) | \ - PIN_PUPDR_PULLUP(GPIOA_L3GD20_SDI) | \ - PIN_PUPDR_PULLUP(GPIOA_PIN8) | \ - PIN_PUPDR_FLOATING(GPIOA_VBUS_FS) | \ - PIN_PUPDR_FLOATING(GPIOA_OTG_FS_ID) | \ - PIN_PUPDR_FLOATING(GPIOA_OTG_FS_DM) | \ - PIN_PUPDR_FLOATING(GPIOA_OTG_FS_DP) | \ - PIN_PUPDR_PULLUP(GPIOA_SWDIO) | \ - PIN_PUPDR_PULLUP(GPIOA_SWCLK) | \ - PIN_PUPDR_PULLUP(GPIOA_PIN15)) - -#undef VAL_GPIOB_MODER -#define VAL_GPIOB_MODER (PIN_MODE_INPUT(GPIOB_PIN0) | \ - PIN_MODE_INPUT(GPIOB_PIN1) | \ - PIN_MODE_INPUT(GPIOB_PIN2) | \ - PIN_MODE_INPUT(GPIOB_SWO) | \ - PIN_MODE_INPUT(GPIOB_PIN4) | \ - PIN_MODE_INPUT(GPIOB_PIN5) | \ - PIN_MODE_INPUT(GPIOB_LSM303DLHC_SCL) | \ - PIN_MODE_INPUT(GPIOB_PIN7) | \ - PIN_MODE_INPUT(GPIOB_PIN8) | \ - PIN_MODE_INPUT(GPIOB_LSM303DLHC_SDA) | \ - PIN_MODE_INPUT(GPIOB_MP45DT02_CLK_IN) |\ - PIN_MODE_INPUT(GPIOB_PIN11) | \ - PIN_MODE_INPUT(GPIOB_PIN12) | \ - PIN_MODE_INPUT(GPIOB_PIN13) | \ - PIN_MODE_INPUT(GPIOB_PIN14) | \ - PIN_MODE_INPUT(GPIOB_PIN15)) - -#undef VAL_GPIOB_PUPDR -#define VAL_GPIOB_PUPDR (PIN_PUPDR_PULLDOWN(GPIOB_PIN0) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN1) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN2) | \ - PIN_PUPDR_PULLDOWN(GPIOB_SWO) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN4) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN5) | \ - PIN_PUPDR_PULLDOWN(GPIOB_LSM303DLHC_SCL) |\ - PIN_PUPDR_PULLDOWN(GPIOB_PIN7) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN8) | \ - PIN_PUPDR_PULLDOWN(GPIOB_LSM303DLHC_SDA) |\ - PIN_PUPDR_PULLDOWN(GPIOB_MP45DT02_CLK_IN) |\ - PIN_PUPDR_PULLDOWN(GPIOB_PIN11) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN12) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN13) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN14) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN15)) - -#undef VAL_GPIOB_AFRL -#define VAL_GPIOB_AFRL (PIN_AFIO_AF(GPIOB_PIN0, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN1, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN2, 0U) | \ - PIN_AFIO_AF(GPIOB_SWO, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN4, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN5, 0U) | \ - PIN_AFIO_AF(GPIOB_LSM303DLHC_SCL, 0) | \ - PIN_AFIO_AF(GPIOB_PIN7, 0U)) - -#undef VAL_GPIOB_AFRH -#define VAL_GPIOB_AFRH (PIN_AFIO_AF(GPIOB_PIN8, 0U) | \ - PIN_AFIO_AF(GPIOB_LSM303DLHC_SDA, 0) | \ - PIN_AFIO_AF(GPIOB_MP45DT02_CLK_IN, 0U) |\ - PIN_AFIO_AF(GPIOB_PIN11, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN12, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN13, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN14, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN15, 0U)) - -/* C5 Need to be pulldown */ -#undef VAL_GPIOC_MODER -#define VAL_GPIOC_MODER (PIN_MODE_INPUT(GPIOC_OTG_FS_POWER_ON) |\ - PIN_MODE_INPUT(GPIOC_PIN1) | \ - PIN_MODE_INPUT(GPIOC_PIN2) | \ - PIN_MODE_INPUT(GPIOC_CS43L22_AIN4x) | \ - PIN_MODE_INPUT(GPIOC_PIN4) | \ - PIN_MODE_INPUT(GPIOC_PIN5) | \ - PIN_MODE_INPUT(GPIOC_PIN6) | \ - PIN_MODE_INPUT(GPIOC_CS43L22_MCLK) | \ - PIN_MODE_INPUT(GPIOC_PIN8) | \ - PIN_MODE_INPUT(GPIOC_PIN9) | \ - PIN_MODE_INPUT(GPIOC_CS43L22_SCLK) | \ - PIN_MODE_INPUT(GPIOC_PIN11) | \ - PIN_MODE_INPUT(GPIOC_CS43L22_SDIN) | \ - PIN_MODE_INPUT(GPIOC_PIN13) | \ - PIN_MODE_INPUT(GPIOC_OSC32_IN) | \ - PIN_MODE_INPUT(GPIOC_OSC32_OUT)) - -#undef VAL_GPIOC_PUPDR -#define VAL_GPIOC_PUPDR (PIN_PUPDR_PULLUP(GPIOC_OTG_FS_POWER_ON) |\ - PIN_PUPDR_PULLUP(GPIOC_PIN1) | \ - PIN_PUPDR_PULLUP(GPIOC_PIN2) | \ - PIN_PUPDR_PULLUP(GPIOC_CS43L22_AIN4x) |\ - PIN_PUPDR_PULLUP(GPIOC_PIN4) | \ - PIN_PUPDR_PULLDOWN(GPIOC_PIN5) | \ - PIN_PUPDR_PULLUP(GPIOC_PIN6) | \ - PIN_PUPDR_PULLUP(GPIOC_CS43L22_MCLK) | \ - PIN_PUPDR_PULLUP(GPIOC_PIN8) | \ - PIN_PUPDR_PULLUP(GPIOC_PIN9) | \ - PIN_PUPDR_PULLUP(GPIOC_CS43L22_SCLK) | \ - PIN_PUPDR_PULLUP(GPIOC_PIN11) | \ - PIN_PUPDR_PULLUP(GPIOC_CS43L22_SDIN) | \ - PIN_PUPDR_PULLUP(GPIOC_PIN13) | \ - PIN_PUPDR_PULLUP(GPIOC_OSC32_IN) | \ - PIN_PUPDR_PULLUP(GPIOC_OSC32_OUT)) - -/* Set all GPIOD pins to INPUT & PULLUP to avoid FLOATING */ -#undef VAL_GPIOD_MODER -#define VAL_GPIOD_MODER (PIN_MODE_INPUT(GPIOD_PIN0) | \ - PIN_MODE_INPUT(GPIOD_PIN1) | \ - PIN_MODE_INPUT(GPIOD_PIN2) | \ - PIN_MODE_INPUT(GPIOD_PIN3) | \ - PIN_MODE_INPUT(GPIOD_CS43L22_RESET) | \ - PIN_MODE_INPUT(GPIOD_OverCurrent) | \ - PIN_MODE_INPUT(GPIOD_PIN6) | \ - PIN_MODE_INPUT(GPIOD_PIN7) | \ - PIN_MODE_INPUT(GPIOD_PIN8) | \ - PIN_MODE_INPUT(GPIOD_PIN9) | \ - PIN_MODE_INPUT(GPIOD_PIN10) | \ - PIN_MODE_INPUT(GPIOD_PIN11) | \ - PIN_MODE_INPUT(GPIOD_LED4) | \ - PIN_MODE_INPUT(GPIOD_LED3) | \ - PIN_MODE_INPUT(GPIOD_LED5) | \ - PIN_MODE_INPUT(GPIOD_LED6)) - -#undef VAL_GPIOD_PUPDR -#define VAL_GPIOD_PUPDR (PIN_PUPDR_PULLUP(GPIOD_PIN0) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN1) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN2) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN3) | \ - PIN_PUPDR_PULLUP(GPIOD_CS43L22_RESET) |\ - PIN_PUPDR_PULLUP(GPIOD_OverCurrent) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN6) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN7) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN8) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN9) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN10) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN11) | \ - PIN_PUPDR_PULLUP(GPIOD_LED4) | \ - PIN_PUPDR_PULLUP(GPIOD_LED3) | \ - PIN_PUPDR_PULLUP(GPIOD_LED5) | \ - PIN_PUPDR_PULLUP(GPIOD_LED6)) - -/* Set all GPIOE pins to INPUT & PULLUP to avoid FLOATING */ -#undef VAL_GPIOE_MODER -#define VAL_GPIOE_MODER (PIN_MODE_INPUT(GPIOE_L3GD20_INT1) | \ - PIN_MODE_INPUT(GPIOE_L3GD20_INT2) | \ - PIN_MODE_INPUT(GPIOE_LSM303DLHC_DRDY) |\ - PIN_MODE_INPUT(GPIOE_L3GD20_CS) | \ - PIN_MODE_INPUT(GPIOE_LSM303DLHC_INT1) |\ - PIN_MODE_INPUT(GPIOE_LSM303DLHC_INT2) |\ - PIN_MODE_INPUT(GPIOE_PIN6) | \ - PIN_MODE_INPUT(GPIOE_PIN7) | \ - PIN_MODE_INPUT(GPIOE_PIN8) | \ - PIN_MODE_INPUT(GPIOE_PIN9) | \ - PIN_MODE_INPUT(GPIOE_PIN10) | \ - PIN_MODE_INPUT(GPIOE_PIN11) | \ - PIN_MODE_INPUT(GPIOE_PIN12) | \ - PIN_MODE_INPUT(GPIOE_PIN13) | \ - PIN_MODE_INPUT(GPIOE_PIN14) | \ - PIN_MODE_INPUT(GPIOE_PIN15)) - -#undef VAL_GPIOE_PUPDR -#define VAL_GPIOE_PUPDR (PIN_PUPDR_PULLUP(GPIOE_L3GD20_INT1) | \ - PIN_PUPDR_PULLUP(GPIOE_L3GD20_INT2) | \ - PIN_PUPDR_PULLUP(GPIOE_LSM303DLHC_DRDY) |\ - PIN_PUPDR_PULLUP(GPIOE_L3GD20_CS) | \ - PIN_PUPDR_PULLUP(GPIOE_LSM303DLHC_INT1) |\ - PIN_PUPDR_PULLUP(GPIOE_LSM303DLHC_INT2) |\ - PIN_PUPDR_PULLUP(GPIOE_PIN6) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN7) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN8) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN9) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN10) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN11) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN12) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN13) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN14) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN15)) - diff --git a/keyboards/keychron/v8_max/config.h b/keyboards/keychron/v8_max/config.h deleted file mode 100644 index 8ce123a78e..0000000000 --- a/keyboards/keychron/v8_max/config.h +++ /dev/null @@ -1,76 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#pragma once - -/* Encoder Configuration */ -#define ENCODER_DEFAULT_POS 0x3 -#define ENCODER_MAP_KEY_DELAY 2 - -#ifdef LK_WIRELESS_ENABLE -/* Hardware configuration */ -# define P2P4_MODE_SELECT_PIN A10 -# define BT_MODE_SELECT_PIN A9 - -# define LKBT51_RESET_PIN C4 -# define LKBT51_INT_INPUT_PIN B1 -# define BLUETOOTH_INT_OUTPUT_PIN A4 - -# define USB_POWER_SENSE_PIN B0 -# define USB_POWER_CONNECTED_LEVEL 0 - -# define BAT_CHARGING_PIN B13 -# define BAT_CHARGING_LEVEL 0 - -# define BAT_LOW_LED_PIN B12 -# define BAT_LOW_LED_PIN_ON_STATE 1 - -# define BT_HOST_DEVICES_COUNT 3 - -# if defined(RGB_MATRIX_ENABLE) - -# define LED_DRIVER_SHUTDOWN_PIN B7 - -/* 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 - -/* Reinit LED driver on tranport changed */ -# define REINIT_LED_DRIVER 1 - -# endif - -/* Keep USB connection in blueooth mode */ -# define KEEP_USB_CONNECTION_IN_WIRELESS_MODE - -/* Enable bluetooth NKRO */ -# define WIRELESS_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 - -/* Factory test keys */ -#define FN_KEY_2 MO(4) -#define FN_BL_TRIG_KEY KC_END - -#define P2P4G_CELAR_MASK 0 -#define MATRIX_IO_DELAY 10 diff --git a/keyboards/keychron/v8_max/firmware/keychron_v8_max_ansi_encoder_via.bin b/keyboards/keychron/v8_max/firmware/keychron_v8_max_ansi_encoder_via.bin deleted file mode 100644 index c93595866c..0000000000 Binary files a/keyboards/keychron/v8_max/firmware/keychron_v8_max_ansi_encoder_via.bin and /dev/null differ diff --git a/keyboards/keychron/v8_max/halconf.h b/keyboards/keychron/v8_max/halconf.h deleted file mode 100644 index 1284021ff5..0000000000 --- a/keyboards/keychron/v8_max/halconf.h +++ /dev/null @@ -1,31 +0,0 @@ -/*Copyright 2024 @ 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 - -#define _CHIBIOS_HAL_CONF_VER_8_0_ - -#define HAL_USE_SPI TRUE - -#ifdef LK_WIRELESS_ENABLE -# define HAL_USE_RTC TRUE -#endif - -#if defined(LK_WIRELESS_ENABLE) || defined(ENCODER_ENABLE) -# define PAL_USE_CALLBACKS TRUE -#endif - -#include_next diff --git a/keyboards/keychron/v8_max/info.json b/keyboards/keychron/v8_max/info.json deleted file mode 100644 index 1e7f290813..0000000000 --- a/keyboards/keychron/v8_max/info.json +++ /dev/null @@ -1,80 +0,0 @@ -{ - "keyboard_name": "Keychron V8 Max", - "manufacturer": "Keychron", - "url": "https://github.com/Keychron", - "maintainer": "123wink", - "processor": "STM32F401", - "bootloader": "stm32-dfu", - "usb": { - "vid": "0x3434" - }, - "features": { - "bootmagic": true, - "extrakey" : true, - "mousekey" : true, - "dip_switch" : true, - "nkro" : true, - "encoder": true, - "encoder_map": true, - "rgb_matrix": true, - "raw" : true, - "send_string": true - }, - "encoder": { - "rotary": [ - { - "pin_a": "B15", - "pin_b": "B14" - } - ] - }, - "dynamic_keymap": { - "layer_count": 5 - }, - "matrix_pins": { - "cols": ["C6", "C7", "C8", "A14", "A15", "C10", "C11", "C13", "C14", "C15", "C0", "C1", "C2", "C3", "A0", "A1","A2"], - "rows": ["C12", "D2", "B3", "B4", "B5"] - }, - "diode_direction": "ROW2COL", - "dip_switch" :{ - "pins": ["A8"] - }, - "rgb_matrix": { - "driver": "snled27351_spi", - "sleep": true, - "animations": { - "band_spiral_val": true, - "breathing": true, - "cycle_all": true, - "cycle_left_right": true, - "cycle_out_in": true, - "cycle_out_in_dual": true, - "cycle_pinwheel": true, - "cycle_spiral": true, - "cycle_up_down": true, - "digital_rain": true, - "dual_beacon": true, - "jellybean_raindrops": true, - "pixel_rain": true, - "rainbow_beacon": true, - "rainbow_moving_chevron": true, - "solid_reactive_multinexus": true, - "solid_reactive_multiwide": true, - "solid_reactive_simple": true, - "solid_splash": true, - "splash": true, - "typing_heatmap": true - } - }, - "eeprom": { - "wear_leveling": { - "driver": "embedded_flash", - "logical_size": 2048, - "backing_size": 4096 - } - }, - "build": { - "debounce_type": "sym_eager_pk" - }, - "debounce": 20 -} diff --git a/keyboards/keychron/v8_max/mcuconf.h b/keyboards/keychron/v8_max/mcuconf.h deleted file mode 100644 index 89294ee64b..0000000000 --- a/keyboards/keychron/v8_max/mcuconf.h +++ /dev/null @@ -1,37 +0,0 @@ -/* Copyright 2024 @ 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 - -#include_next - -#undef STM32_HSECLK -#define STM32_HSECLK 16000000 - -#undef STM32_PLLM_VALUE -#define STM32_PLLM_VALUE 8 - -#undef STM32_PLLN_VALUE -#define STM32_PLLN_VALUE 96 - -#undef STM32_PLLP_VALUE -#define STM32_PLLP_VALUE 4 - -#undef STM32_PLLQ_VALUE -#define STM32_PLLQ_VALUE 4 - -#undef STM32_SPI_USE_SPI1 -#define STM32_SPI_USE_SPI1 TRUE diff --git a/keyboards/keychron/v8_max/readme.md b/keyboards/keychron/v8_max/readme.md deleted file mode 100644 index 07a78f39dd..0000000000 --- a/keyboards/keychron/v8_max/readme.md +++ /dev/null @@ -1,21 +0,0 @@ -# Keychron V8 Max - -![Keychron V8 Max](https://cdn.shopify.com/s/files/1/0059/0630/1017/files/V8-Max-5.jpg?v=1717726322) - -A customizable wireless 65% ergonomic keyboard. - -* Keyboard Maintainer: [Keychron](https://www.keychron.com/products/keychron-v8-max-alice-layout-qmk-custom-mechanical-keyboard) -* Hardware Supported: Keychron V8 Max -* Hardware Availability: [Keychron V8 Max QMK/VIA Wireless Custom Mechanical Keyboard] - -Make example for this keyboard (after setting up your build environment): - - make keychron/v8_max/ansi_encoder:default - -Flashing example for this keyboard: - - make keychron/v8_max/ansi_encoder:default:flash - -**Reset Key**: Toggle mode switch to "Cable", hold down the *Esc* key or reset button underneath space bar while connecting the USB cable, - -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). diff --git a/keyboards/keychron/v8_max/rules.mk b/keyboards/keychron/v8_max/rules.mk deleted file mode 100644 index 4eaf6820bc..0000000000 --- a/keyboards/keychron/v8_max/rules.mk +++ /dev/null @@ -1,4 +0,0 @@ -include keyboards/keychron/common/wireless/wireless.mk -include keyboards/keychron/common/keychron_common.mk - -VPATH += $(TOP_DIR)/keyboards/keychron diff --git a/keyboards/keychron/v8_max/v8_max.c b/keyboards/keychron/v8_max/v8_max.c deleted file mode 100644 index 0a2bcfd5ad..0000000000 --- a/keyboards/keychron/v8_max/v8_max.c +++ /dev/null @@ -1,83 +0,0 @@ -/* Copyright 2024 @ 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/>. - */ - -#include "quantum.h" -#include "keychron_task.h" -#ifdef FACTORY_TEST_ENABLE -# include "factory_test.h" -# include "keychron_common.h" -#endif -#ifdef LK_WIRELESS_ENABLE -# include "lkbt51.h" -# include "wireless.h" -# include "keychron_wireless_common.h" -# include "battery.h" -#endif - -#define POWER_ON_LED_DURATION 3000 -static uint32_t power_on_indicator_timer; - -#ifdef DIP_SWITCH_ENABLE -bool dip_switch_update_kb(uint8_t index, bool active) { - if (index == 0) { - default_layer_set(1UL << (active ? 0 : 1)); - } - dip_switch_update_user(index, active); - - return true; -} -#endif - -void keyboard_post_init_kb(void) { -#ifdef LK_WIRELESS_ENABLE - palSetLineMode(P2P4_MODE_SELECT_PIN, PAL_MODE_INPUT); - palSetLineMode(BT_MODE_SELECT_PIN, PAL_MODE_INPUT); - - writePin(BAT_LOW_LED_PIN, BAT_LOW_LED_PIN_ON_STATE); - - lkbt51_init(false); - wireless_init(); -#endif - - power_on_indicator_timer = timer_read32(); -#ifdef ENCODER_ENABLE - encoder_cb_init(); -#endif - keyboard_post_init_user(); -} - -bool keychron_task_kb(void) { - if (power_on_indicator_timer) { - if (timer_elapsed32(power_on_indicator_timer) > POWER_ON_LED_DURATION) { - power_on_indicator_timer = 0; - -#ifdef LK_WIRELESS_ENABLE - writePin(BAT_LOW_LED_PIN, !BAT_LOW_LED_PIN_ON_STATE); -#endif - } else { -#ifdef LK_WIRELESS_ENABLE - writePin(BAT_LOW_LED_PIN, BAT_LOW_LED_PIN_ON_STATE); -#endif - } - } - return true; -} - -#ifdef LK_WIRELESS_ENABLE -bool lpm_is_kb_idle(void) { - return power_on_indicator_timer == 0 && !factory_reset_indicating(); -} -#endif diff --git a/keyboards/keychron/v8_max/via_json/v8_max_ansi_encoder.json b/keyboards/keychron/v8_max/via_json/v8_max_ansi_encoder.json deleted file mode 100644 index 181adcc9a7..0000000000 --- a/keyboards/keychron/v8_max/via_json/v8_max_ansi_encoder.json +++ /dev/null @@ -1,351 +0,0 @@ -{ - "name": "Keychron V8 Max ANSI Knob", - "vendorId": "0x3434", - "productId": "0x0980", - "keycodes": ["qmk_lighting"], - "menus": [ - { - "label": "Lighting", - "content": [ - { - "label": "Backlight", - "content": [ - { - "label": "Brightness", - "type": "range", - "options": [0, 255], - "content": ["id_qmk_rgb_matrix_brightness", 3, 1] - }, - { - "label": "Effect", - "type": "dropdown", - "content": ["id_qmk_rgb_matrix_effect", 3, 2], - "options": [ - ["None", 0], - ["Solid Color", 1], - ["Breathing", 2], - ["Band Spiral Val", 3], - ["Cycle All", 4], - ["Cycle Left Right", 5], - ["Cycle Up Down", 6], - ["Rainbow Moving Chevron", 7], - ["Cycle Out In", 8], - ["Cycle Out In Dual", 9], - ["Cycle Pinwheel", 10], - ["Cycle Spiral", 11], - ["Dual Beacon", 12], - ["Rainbow Beacon", 13], - ["Jellybean Raindrops", 14], - ["Pixel Rain", 15], - ["Typing Heatmap", 16], - ["Digital Rain", 17], - ["Reactive Simple", 18], - ["Reactive Multiwide", 19], - ["Reactive Multinexus", 20], - ["Splash", 21], - ["Solid Splash", 22] - ] - }, - { - "showIf": "{id_qmk_rgb_matrix_effect} > 1", - "label": "Effect Speed", - "type": "range", - "options": [0, 255], - "content": ["id_qmk_rgb_matrix_effect_speed", 3, 3] - }, - { - "showIf": "{id_qmk_rgb_matrix_effect} != 0 && ( {id_qmk_rgb_matrix_effect} < 4 || {id_qmk_rgb_matrix_effect} == 18 || ({id_qmk_rgb_matrix_effect} > 17 && {id_qmk_rgb_matrix_effect} != 21) ) ", - "label": "Color", - "type": "color", - "content": ["id_qmk_rgb_matrix_color", 3, 4] - } - ] - } - ] - } - ], - "customKeycodes": [ - {"name": "Left Option", "title": "Left Option", "shortName": "LOpt"}, - {"name": "Right Option", "title": "Right Option", "shortName": "ROpt"}, - {"name": "Left Cmd", "title": "Left Command", "shortName": "LCmd"}, - {"name": "Right Cmd", "title": "Right Command", "shortName": "RCmd"}, - {"name": "Misson Control", "title": "Misson Control in Mac", "shortName": "MCtl"}, - {"name": "Lanuch Pad", "title": "Lanuch Pad in Windows", "shortName": "LPad"}, - {"name": "Task View", "title": "Task View in Windows", "shortName": "Task"}, - {"name": "File Explorer", "title": "File Explorer in Windows", "shortName": "File"}, - {"name": "Screen shot", "title": "Screenshot in macOS", "shortName": "SShot"}, - {"name": "Cortana", "title": "Cortana in Windows", "shortName": "Cortana"}, - {"name": "Siri", "title": "Siri in macOS", "shortName": "Siri"}, - {"name": "Bluetooth Host 1", "title": "Bluetooth Host 1", "shortName": "BTH1"}, - {"name": "Bluetooth Host 2", "title": "Bluetooth Host 2", "shortName": "BTH2"}, - {"name": "Bluetooth Host 3", "title": "Bluetooth Host 3", "shortName": "BTH3"}, - {"name": "2.4G", "title": "2.4G", "shortName": "2.4G"}, - {"name": "Battery Level", "title": "Show battery level", "shortName": "Batt"} - ], - "matrix": {"rows": 5, "cols" : 17}, - "layouts": { - "keymap": [ - [ - { - "x":2.75, - "y":0.5 - }, - "0,2", - { - "x":8.7 - }, - - "0,11", - { - "x":3.5, - "c":"#777777" - }, - "0,16\n\n\n\n\n\n\n\n\ne0" - ], - [ - { - "y":-0.85, - "x":0.75 - }, - "0,0\nESC", - { - "c":"#cccccc" - }, - "0,1", - { - "x":10.75 - - }, - "0,12", - { - "w":2, - "c":"#777777" - }, - "0,14" - ], - [ - { - "x":0.5, - "w":1.5 - }, - "1,0", - { - "c":"#aaaaaa" - }, - "1,1", - { - "x":10.2 - }, - "1,12", - "1,13", - { - "w":1.5 - - }, - "1,14" - - ], - [ - { - "y":-0.9, - "x":17.5, - "c":"#777777" - }, - "1,16" - ], - [ - { - "x":0.25, - "y":-0.1, - "w":1.75 - }, - "2,0", - { - "c":"#aaaaaa" - }, - "2,1", - { - "x":9.9 - }, - "2,11", - "2,12", - { - "c":"#777777", - "w":2.25 - }, - "2,14" - ], - [ - { - "y":-0.9, - "x":17.7 - - }, - "2,16" - ], - [ - { - "x":0.15, - "y":-0.1, - "w":2.25 - }, - "3,0", - { - "c":"#aaaaaa" - }, - "3,2", - { - "x":9.75 - }, - "3,12", - { - "w":1.5, - "c":"#777777" - }, - "3,13" - ], - [ - { - "y":-0.65, - "x":16, - "c":"#cccccc" - }, - "3,15" - ], - [ - { - "x":0.15, - "y":-0.35, - "w":1.25, - "c":"#777777" - }, - "4,0", - { - "w":1.25 - }, - "4,1" - ], - [ - { - "x":15, - "y":-0.65, - "c":"#cccccc" - }, - "4,14", - "4,15", - "4,16" - - ], - [ - { - "r":10, - "y":-6, - "x":4 - }, - "0,3", - "0,4", - "0,5", - "0,6" - ], - [ - { - "x":3.5 - }, - "1,2", - "1,3", - "1,4", - "1,5" - ], - [ - { - "x":3.8 - }, - "2,2", - "2,3", - "2,4", - "2,5" - ], - [ - { - "x":4.25 - }, - "3,3", - "3,4", - "3,5", - "3,6" - ], - [ - { - "x":4.25, - "c":"#777777", - "w":1.25 - }, - "4,3", - { - "w":2.25 - }, - "4,5", - - "4,6" - ], - [ - { - "r":-10, - "y":-2.2, - "x":8, - "c":"#aaaaaa" - }, - "0,7", - "0,8", - "0,9", - "0,10" - ], - [ - { - "x":7.5 - }, - "1,7", - "1,8", - "1,9", - "1,10", - "1,11" - ], - [ - { - "x":7.9 - }, - "2,7", - "2,8", - "2,9", - "2,10" - ], - [ - { - "x":7.1 - }, - "3,7", - "3,8", - "3,9", - "3,10", - "3,11" - ], - [ - { - "x":7.1, - "c":"#777777" - }, - "4,7", - { - "w":2.25 - - }, - "4,9", - { - "x":-0.05 - - }, - "4,11" - ] - ] - } -} diff --git a/keyboards/lemokey/common/factory_test.c b/keyboards/lemokey/common/factory_test.c deleted file mode 100644 index fb54958041..0000000000 --- a/keyboards/lemokey/common/factory_test.c +++ /dev/null @@ -1,427 +0,0 @@ -/* Copyright 2022~2024 @ 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 . - */ - -#include "quantum.h" -#include "raw_hid.h" -#include "via.h" - -#include "lemokey_task.h" -#ifdef LK_WIRELESS_ENABLE -# include "transport.h" -# include "battery.h" -# include "lpm.h" -# include "lkbt51.h" -# include "indicator.h" -#endif -#include "config.h" -#include "version.h" - -#ifndef RAW_EPSIZE -# define RAW_EPSIZE 32 -#endif - -#ifndef BL_CYCLE_KEY -# define BL_CYCLE_KEY KC_RIGHT -#endif - -#ifndef BL_TRIG_KEY -# define BL_TRIG_KEY KC_HOME -#endif - -#ifndef P2P4G_CELAR_MASK -# define P2P4G_CELAR_MASK P2P4G_CLEAR_PAIRING_TYPE_C -#endif - -enum { - BACKLIGHT_TEST_OFF = 0, - BACKLIGHT_TEST_WHITE, - BACKLIGHT_TEST_RED, - BACKLIGHT_TEST_GREEN, - BACKLIGHT_TEST_BLUE, - BACKLIGHT_TEST_MAX, -}; - -enum { - KEY_PRESS_FN = 0x01 << 0, - KEY_PRESS_J = 0x01 << 1, - KEY_PRESS_Z = 0x01 << 2, - KEY_PRESS_BL_KEY1 = 0x01 << 3, - KEY_PRESS_BL_KEY2 = 0x01 << 4, - KEY_PRESS_FACTORY_RESET = KEY_PRESS_FN | KEY_PRESS_J | KEY_PRESS_Z, - KEY_PRESS_BACKLIGTH_TEST = KEY_PRESS_FN | KEY_PRESS_BL_KEY1 | KEY_PRESS_BL_KEY2, -}; - -enum { - FACTORY_TEST_CMD_BACKLIGHT = 0x01, - FACTORY_TEST_CMD_OS_SWITCH, - FACTORY_TEST_CMD_JUMP_TO_BL, - FACTORY_TEST_CMD_INT_PIN, - FACTORY_TEST_CMD_GET_TRANSPORT, - FACTORY_TEST_CMD_CHARGING_ADC, - FACTORY_TEST_CMD_RADIO_CARRIER, - FACTORY_TEST_CMD_GET_BUILD_TIME, -}; - -enum { - P2P4G_CLEAR_PAIRING_TYPE_A = 0x01 << 0, - P2P4G_CLEAR_PAIRING_TYPE_C = 0x01 << 1, -}; - -enum { - OS_SWITCH = 0x01, -}; - -static uint32_t factory_reset_timer = 0; -static uint8_t factory_reset_state = 0; -static uint8_t backlight_test_mode = BACKLIGHT_TEST_OFF; - -static uint32_t factory_reset_ind_timer = 0; -static uint8_t factory_reset_ind_state = 0; -static bool report_os_sw_state = false; -static bool keys_released = true; - -void factory_timer_start(void) { - factory_reset_timer = timer_read32(); -} - -static inline void factory_timer_check(void) { - if (timer_elapsed32(factory_reset_timer) > 3000) { - factory_reset_timer = 0; - - if (factory_reset_state == KEY_PRESS_FACTORY_RESET) { - factory_reset_ind_timer = timer_read32(); - factory_reset_ind_state++; - keys_released = false; - - clear_keyboard(); // Avoid key being pressed after NKRO state changed - layer_state_t default_layer_tmp = default_layer_state; - eeconfig_init(); - keymap_config.raw = eeconfig_read_keymap(); - default_layer_set(default_layer_tmp); -#ifdef LED_MATRIX_ENABLE - if (!led_matrix_is_enabled()) led_matrix_enable(); - led_matrix_init(); -#endif -#ifdef RGB_MATRIX_ENABLE - if (!rgb_matrix_is_enabled()) rgb_matrix_enable(); - rgb_matrix_init(); -#endif -#ifdef LK_WIRELESS_ENABLE - lkbt51_factory_reset(P2P4G_CELAR_MASK); -#endif - } else if (factory_reset_state == KEY_PRESS_BACKLIGTH_TEST) { -#ifdef LED_MATRIX_ENABLE - if (!led_matrix_is_enabled()) led_matrix_enable(); -#endif -#ifdef RGB_MATRIX_ENABLE - if (!rgb_matrix_is_enabled()) rgb_matrix_enable(); -#endif - backlight_test_mode = BACKLIGHT_TEST_WHITE; - } - - factory_reset_state = 0; - } -} - -static inline void factory_reset_ind_timer_check(void) { - if (factory_reset_ind_timer && timer_elapsed32(factory_reset_ind_timer) > 250) { - if (factory_reset_ind_state++ > 6) { - factory_reset_ind_timer = factory_reset_ind_state = 0; - } else { - factory_reset_ind_timer = timer_read32(); - } - } -} - -bool process_record_factory_test(uint16_t keycode, keyrecord_t *record) { - switch (keycode) { -#if defined(FN_KEY_1) || defined(FN_KEY_2) -# if defined(FN_KEY_1) - case FN_KEY_1: /* fall through */ -# endif -# if defined(FN_KEY_2) - case FN_KEY_2: -# endif -# if defined(FN_KEY_3) - case FN_KEY_3: -# endif - if (record->event.pressed) { - factory_reset_state |= KEY_PRESS_FN; - } else { - factory_reset_state &= ~KEY_PRESS_FN; - factory_reset_timer = 0; - } - break; -#endif - case KC_J: - if (record->event.pressed) { - factory_reset_state |= KEY_PRESS_J; - if (factory_reset_state == 0x07) factory_timer_start(); - if (factory_reset_state & KEY_PRESS_FN) return false; - } else { - factory_reset_state &= ~KEY_PRESS_J; - factory_reset_timer = 0; - } - break; - - case KC_Z: -#if defined(FN_Z_KEY) - case FN_Z_KEY: -#endif - if (record->event.pressed) { - factory_reset_state |= KEY_PRESS_Z; - if (factory_reset_state == 0x07) factory_timer_start(); - if ((factory_reset_state & KEY_PRESS_FN) && keycode == KC_Z) return false; - } else { - factory_reset_state &= ~KEY_PRESS_Z; - factory_reset_timer = 0; - /* Avoid changing backlight effect on key released if FN_Z_KEY is mode*/ - - if (!keys_released && keycode >= QK_BACKLIGHT_ON && keycode <= RGB_MODE_TWINKLE) { - keys_released = true; - return false; - } - } - break; - -#if defined(BL_CYCLE_KEY) || defined(BL_CYCLE_KEY_2) -# if defined(BL_CYCLE_KEY) - case BL_CYCLE_KEY: -# endif -# if defined(FN_BL_CYCLE_KEY) - case FN_BL_CYCLE_KEY: -# endif - if (record->event.pressed) { - if (backlight_test_mode) { - if (++backlight_test_mode >= BACKLIGHT_TEST_MAX) { - backlight_test_mode = BACKLIGHT_TEST_WHITE; - } - } else { - factory_reset_state |= KEY_PRESS_BL_KEY1; - if (factory_reset_state == 0x19) { - factory_timer_start(); - } - } - } else { - factory_reset_state &= ~KEY_PRESS_BL_KEY1; - factory_reset_timer = 0; - } - break; -#endif -#if defined(BL_TRIG_KEY) || defined(BL_TRIG_KEY_2) -# if defined(BL_TRIG_KEY) - case BL_TRIG_KEY: -# endif -# if defined(FN_BL_TRIG_KEY) - case FN_BL_TRIG_KEY: -# endif - if (record->event.pressed) { - if (backlight_test_mode) { - backlight_test_mode = BACKLIGHT_TEST_OFF; - } else { - factory_reset_state |= KEY_PRESS_BL_KEY2; - if (factory_reset_state == 0x19) { - factory_timer_start(); - } - } - } else { - factory_reset_state &= ~KEY_PRESS_BL_KEY2; - factory_reset_timer = 0; - } - break; -#endif - } - - return true; -} - -#ifdef LED_MATRIX_ENABLE -bool factory_test_indicator(void) { - if (factory_reset_ind_state) { - led_matrix_set_value_all(factory_reset_ind_state % 2 ? 0 : 255); - return false; - } - - return true; -} -#endif - -#ifdef RGB_MATRIX_ENABLE -bool factory_test_indicator(void) { - if (factory_reset_ind_state) { - backlight_test_mode = BACKLIGHT_TEST_OFF; - rgb_matrix_set_color_all(factory_reset_ind_state % 2 ? 0 : 255, 0, 0); - return false; - } else if (backlight_test_mode) { - switch (backlight_test_mode) { - case BACKLIGHT_TEST_WHITE: - rgb_matrix_set_color_all(255, 255, 255); - break; - case BACKLIGHT_TEST_RED: - rgb_matrix_set_color_all(255, 0, 0); - break; - case BACKLIGHT_TEST_GREEN: - rgb_matrix_set_color_all(0, 255, 0); - break; - case BACKLIGHT_TEST_BLUE: - rgb_matrix_set_color_all(0, 0, 255); - break; - } - return false; - } - - return true; -} -#endif - -bool factory_reset_indicating(void) { - return factory_reset_ind_timer; -} - -bool factory_test_task(void) { - if (factory_reset_timer) factory_timer_check(); - if (factory_reset_ind_timer) factory_reset_ind_timer_check(); - - return true; -} - -void factory_test_send(uint8_t *payload, uint8_t length) { -#ifdef RAW_ENABLE - uint16_t checksum = 0; - uint8_t data[RAW_EPSIZE] = {0}; - - uint8_t i = 0; - data[i++] = 0xAB; - - memcpy(&data[i], payload, length); - i += length; - - for (uint8_t i = 1; i < RAW_EPSIZE - 3; i++) - checksum += data[i]; - data[RAW_EPSIZE - 2] = checksum & 0xFF; - data[RAW_EPSIZE - 1] = (checksum >> 8) & 0xFF; - - raw_hid_send(data, RAW_EPSIZE); -#endif -} - -void factory_test_rx(uint8_t *data, uint8_t length) { - if (data[0] == 0xAB) { - uint16_t checksum = 0; - - for (uint8_t i = 1; i < RAW_EPSIZE - 3; i++) { - checksum += data[i]; - } - /* Verify checksum */ - if ((checksum & 0xFF) != data[RAW_EPSIZE - 2] || checksum >> 8 != data[RAW_EPSIZE - 1]) return; - -#ifdef LK_WIRELESS_ENABLE - uint8_t payload[32]; - uint8_t len = 0; -#endif - - switch (data[1]) { - case FACTORY_TEST_CMD_BACKLIGHT: - backlight_test_mode = data[2]; - factory_reset_timer = 0; - break; - case FACTORY_TEST_CMD_OS_SWITCH: - break; - case FACTORY_TEST_CMD_JUMP_TO_BL: - // if (memcmp(&data[2], "JumpToBootloader", strlen("JumpToBootloader")) == 0) bootloader_jump(); - break; -#ifdef LK_WIRELESS_ENABLE - case FACTORY_TEST_CMD_INT_PIN: - switch (data[2]) { - /* Enalbe/disable test */ - case 0xA1: - lkbt51_int_pin_test(data[3]); - break; - /* Set INT state */ - case 0xA2: - writePin(BLUETOOTH_INT_OUTPUT_PIN, data[3]); - break; - } - break; - case FACTORY_TEST_CMD_GET_TRANSPORT: - payload[len++] = FACTORY_TEST_CMD_GET_TRANSPORT; - payload[len++] = get_transport(); - payload[len++] = readPin(USB_POWER_SENSE_PIN); - factory_test_send(payload, len); - break; -#endif -#ifdef BATTERY_CHARGE_DONE_DETECT_ADC - case FACTORY_TEST_CMD_CHARGING_ADC: - case 0xA1: - battery_charging_monitor(data[3]); - break; - case 0xA2: - payload[len++] = FACTORY_TEST_CMD_CHARGING_ADC; - payload[len++] = battery_adc_read_charging_pin(); - factory_test_send(payload, len); - break; -#endif -#ifdef LK_WIRELESS_ENABLE - case FACTORY_TEST_CMD_RADIO_CARRIER: - if (data[2] < 79) lkbt51_radio_test(data[2]); - break; - -# ifdef WERELESS_PRESSURE_TEST - case 0x70: - switch (data[2]) { - /* Enalbe/disable test */ - case 0xB1: - SEND_STRING("abcdefghijklmnopqrstuvwxyz1234567890abcdefghijklmnopqrstuvwxyz1234567890abcdefghijklmnopqrstuvwxyz1234567890\n"); - break; - case 0xB2: - payload[len++] = 0x70; - payload[len++] = 0xB2; - payload[len++] = wireless_get_state(); - factory_test_send(payload, len); - break; - } - break; -# endif -#endif - case FACTORY_TEST_CMD_GET_BUILD_TIME: { - payload[len++] = FACTORY_TEST_CMD_GET_BUILD_TIME; - payload[len++] = 'v'; - if ((DEVICE_VER & 0xF000) != 0) itoa((DEVICE_VER >> 12), (char *)&payload[len++], 16); - itoa((DEVICE_VER >> 8) & 0xF, (char *)&payload[len++], 16); - payload[len++] = '.'; - itoa((DEVICE_VER >> 4) & 0xF, (char *)&payload[len++], 16); - payload[len++] = '.'; - itoa((DEVICE_VER >> 4) & 0xF, (char *)&payload[len++], 16); - payload[len++] = ' '; - memcpy(&payload[len], QMK_BUILDDATE, sizeof(QMK_BUILDDATE)); - len += sizeof(QMK_BUILDDATE); - factory_test_send(payload, len); - } break; - } - } -} - -bool dip_switch_update_user(uint8_t index, bool active) { - if (report_os_sw_state) { -#ifdef INVERT_OS_SWITCH_STATE - active = !active; -#endif - uint8_t payload[3] = {FACTORY_TEST_CMD_OS_SWITCH, OS_SWITCH, active}; - factory_test_send(payload, 3); - } - - return true; -} diff --git a/keyboards/lemokey/common/factory_test.h b/keyboards/lemokey/common/factory_test.h deleted file mode 100644 index 278f1dad4c..0000000000 --- a/keyboards/lemokey/common/factory_test.h +++ /dev/null @@ -1,33 +0,0 @@ -/* Copyright 2022~2024 @ lokher (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 . - */ - -#pragma once - -#define FACTORY_RESET_CHECK process_record_factory_test -#define FACTORY_RESET_TASK factory_test_task - -void factory_test_init(void); - -#if defined(LED_MATRIX_ENABLE) || defined(RGB_MATRIX_ENABLE) -bool factory_test_indicator(void); -#endif - -bool factory_reset_indicating(void); -void factory_test_task(void); -void factory_test_rx(uint8_t *data, uint8_t length); - -bool process_record_factory_test(uint16_t keycode, keyrecord_t *record); - diff --git a/keyboards/lemokey/common/lemokey_common.c b/keyboards/lemokey/common/lemokey_common.c deleted file mode 100644 index 1f8be8e084..0000000000 --- a/keyboards/lemokey/common/lemokey_common.c +++ /dev/null @@ -1,158 +0,0 @@ -/* Copyright 2022~2024 @ 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 . - */ - -#include QMK_KEYBOARD_H -#include "lemokey_common.h" - -#ifdef FACTORY_TEST_ENABLE -# include "factory_test.h" -# include "lemokey_common.h" -#endif - -#ifdef LK_WIRELESS_ENABLE -# include "lkbt51.h" -#endif - -static uint8_t mac_keycode[4] = {KC_LOPT, KC_ROPT, KC_LCMD, KC_RCMD}; - -static key_combination_t key_comb_list[3] = { - {2, {KC_LWIN, KC_TAB}}, - {2, {KC_LWIN, KC_E}}, - {2, {KC_LWIN, KC_L}}, -}; - -#if defined(WIN_LOCK_HOLD_TIME) -static uint32_t winlock_timer = 0; -#endif - -void gui_toggle(void) { - keymap_config.no_gui = !keymap_config.no_gui; - eeconfig_update_keymap(keymap_config.raw); - led_update_kb(host_keyboard_led_state()); -} - -bool process_record_lemokey_common(uint16_t keycode, keyrecord_t *record) { - switch (keycode) { - case KC_TASK_VIEW: - case KC_FILE_EXPLORER: - case KC_LOCK_SCREEN: - if (record->event.pressed) { - for (uint8_t i = 0; i < key_comb_list[keycode - KC_TASK].len; i++) { - register_code(key_comb_list[keycode - KC_TASK].keycode[i]); - } - } else { - for (uint8_t i = 0; i < key_comb_list[keycode - KC_TASK].len; i++) { - unregister_code(key_comb_list[keycode - KC_TASK].keycode[i]); - } - } - return false; // Skip all further processing of this key - - case KC_MCTRL: - if (record->event.pressed) { - register_code(KC_MISSION_CONTROL); - } else { - unregister_code(KC_MISSION_CONTROL); - } - return false; // Skip all further processing of this key - - case KC_LNPAD: - if (record->event.pressed) { - register_code(KC_LAUNCHPAD); - } else { - unregister_code(KC_LAUNCHPAD); - } - return false; // Skip all further processing of this key - - case KC_LOPTN: - case KC_ROPTN: - case KC_LCMMD: - case KC_RCMMD: - if (record->event.pressed) { - register_code(mac_keycode[keycode - KC_LOPTN]); - } else { - unregister_code(mac_keycode[keycode - KC_LOPTN]); - } - return false; // Skip all further processing of this key - -#if defined(WIN_LOCK_HOLD_TIME) || defined(WIN_LOCK_LED_PIN) || defined(WINLOCK_LED_LIST) - case GU_TOGG: -# if defined(WIN_LOCK_HOLD_TIME) - if (record->event.pressed) { - winlock_timer = timer_read32(); - } else { - winlock_timer = 0; - } -# else - if (record->event.pressed) gui_toggle(); -# endif - return false; -#endif - default: - return true; // Process all other keycodes normally - } -} - -void lemokey_common_task(void) { -#if defined(WIN_LOCK_HOLD_TIME) - if (winlock_timer) { - if (keymap_config.no_gui) { - winlock_timer = 0; - gui_toggle(); - } else if (timer_elapsed32(winlock_timer) > WIN_LOCK_HOLD_TIME) { - winlock_timer = 0; - gui_toggle(); - } - } -#endif -} - -#ifdef ENCODER_ENABLE -static void encoder_pad_cb(void *param) { - uint8_t index = (uint32_t)param; - encoder_inerrupt_read(index); -} - -void encoder_cb_init(void) { - pin_t encoders_pad_a[] = ENCODERS_PAD_A; - pin_t encoders_pad_b[] = ENCODERS_PAD_B; - for (uint32_t i=0; i. - */ - -#pragma once - -#include "stdint.h" - -// clang-format off -enum { - KC_TASK_VIEW = QK_KB_0, - KC_FILE_EXPLORER, - KC_LOCK_SCREEN, // Lock screen - KC_MCTRL, - KC_LNPAD, - KC_LOPTN, - KC_ROPTN, - KC_LCMMD, - KC_RCMMD, -#ifdef LK_WIRELESS_ENABLE - BT_HST1, - BT_HST2, - BT_HST3, - P2P4G, - BAT_LVL, - __LK_WIRELESS_ENABLE_END = BAT_LVL, -#else - BT_HST1 = _______, - BT_HST2 = _______, - BT_HST3 = _______, - P2P4G = _______, - BAT_LVL = _______, - __LK_WIRELESS_ENABLE_END = KC_LOCK_SCREEN, -#endif - NEW_SAFE_RANGE = __LK_WIRELESS_ENABLE_END + 1, -}; - -#define KC_TASK KC_TASK_VIEW -#define KC_FILE KC_FILE_EXPLORER -#define KC_LOCK KC_LOCK_SCREEN - -typedef struct PACKED { - uint8_t len; - uint8_t keycode[2]; -} key_combination_t; - -bool process_record_lemokey_common(uint16_t keycode, keyrecord_t *record); -void lemokey_common_task(void); - -#ifdef ENCODER_ENABLE -void encoder_cb_init(void); -#endif - diff --git a/keyboards/lemokey/common/lemokey_common.mk b/keyboards/lemokey/common/lemokey_common.mk deleted file mode 100644 index 61444fe7c0..0000000000 --- a/keyboards/lemokey/common/lemokey_common.mk +++ /dev/null @@ -1,11 +0,0 @@ -OPT_DEFS += -DFACTORY_TEST_ENABLE -DAPDAPTIVE_NKRO_ENABLE - -LEMOKEY_COMMON_DIR = common -SRC += \ - $(LEMOKEY_COMMON_DIR)/lemokey_task.c \ - $(LEMOKEY_COMMON_DIR)/lemokey_common.c \ - $(LEMOKEY_COMMON_DIR)/lemokey_raw_hid.c \ - $(LEMOKEY_COMMON_DIR)/factory_test.c - -VPATH += $(TOP_DIR)/keyboards/lemokey/$(LEMOKEY_COMMON_DIR) - diff --git a/keyboards/lemokey/common/lemokey_raw_hid.c b/keyboards/lemokey/common/lemokey_raw_hid.c deleted file mode 100644 index 1bd4ccd73b..0000000000 --- a/keyboards/lemokey/common/lemokey_raw_hid.c +++ /dev/null @@ -1,120 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#include QMK_KEYBOARD_H -#include "lemokey_common.h" -#include "raw_hid.h" -#include "version.h" -#ifdef FACTORY_TEST_ENABLE -# include "factory_test.h" -#endif -#ifdef LK_WIRELESS_ENABLE -# include "lkbt51.h" -#endif -#ifdef ANANLOG_MATRIX -# include "analog_matrix.h" -#endif - -#define PROTOCOL_VERSION 0x02 - -enum { - KC_GET_PROTOCOL_VERSION = 0xA0, - KC_GET_FIRMWARE_VERSION = 0xA1, - KC_GET_SUPPORT_FEATURE = 0xA2, - KC_GET_DEFAULT_LAYER = 0xA3, -}; - -enum { - FEATURE_DEFAULT_LAYER = 0x01 << 0, - FEATURE_BLUETOOTH = 0x01 << 1, - FEATURE_P2P4G = 0x01 << 2, - FEATURE_ANALOG_MATRIX = 0x01 << 3, -}; - -void get_support_feature(uint8_t *data) { - data[1] = FEATURE_DEFAULT_LAYER -#ifdef KC_BLUETOOTH_ENABLE - | FEATURE_BLUETOOTH -#endif -#ifdef LK_WIRELESS_ENABLE - | FEATURE_BLUETOOTH | FEATURE_P2P4G -#endif -#ifdef ANANLOG_MATRIX - | FEATURE_ANALOG_MATRIX -#endif - ; -} - -bool lemokey_raw_hid_rx(uint8_t *data, uint8_t length) { - switch (data[0]) { - case KC_GET_PROTOCOL_VERSION: - data[1] = PROTOCOL_VERSION; - break; - - case KC_GET_FIRMWARE_VERSION: { - uint8_t i = 1; - data[i++] = 'v'; - if ((DEVICE_VER & 0xF000) != 0) itoa((DEVICE_VER >> 12), (char *)&data[i++], 16); - itoa((DEVICE_VER >> 8) & 0xF, (char *)&data[i++], 16); - data[i++] = '.'; - itoa((DEVICE_VER >> 4) & 0xF, (char *)&data[i++], 16); - data[i++] = '.'; - itoa(DEVICE_VER & 0xF, (char *)&data[i++], 16); - data[i++] = ' '; - memcpy(&data[i], QMK_BUILDDATE, sizeof(QMK_BUILDDATE)); - i += sizeof(QMK_BUILDDATE); - } break; - - case KC_GET_SUPPORT_FEATURE: - get_support_feature(&data[1]); - break; - - case KC_GET_DEFAULT_LAYER: - data[1] = get_highest_layer(default_layer_state); - break; - -#ifdef ANANLOG_MATRIX - case 0xA9: - analog_matrix_rx(data, length); - return true; -#endif -#ifdef LK_WIRELESS_ENABLE - case 0xAA: - lkbt51_dfu_rx(data, length); - return true; -#endif -#ifdef FACTORY_TEST_ENABLE - case 0xAB: - factory_test_rx(data, length); - return true; -#endif - default: - return false; - } - - raw_hid_send(data, length); - return true; -} - -#if defined(VIA_ENABLE) -bool via_command_kb(uint8_t *data, uint8_t length) { - return lemokey_raw_hid_rx(data, length); -} -#else -void raw_hid_receive(uint8_t *data, uint8_t length) { - lemokey_raw_hid_rx(data, length); -} -#endif diff --git a/keyboards/lemokey/common/lemokey_task.c b/keyboards/lemokey/common/lemokey_task.c deleted file mode 100644 index a27ae6041d..0000000000 --- a/keyboards/lemokey/common/lemokey_task.c +++ /dev/null @@ -1,116 +0,0 @@ -/* Copyright 2022~2024 @ 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 . - */ - -#include -#include "lemokey_task.h" -#include "quantum.h" -#include "lemokey_common.h" -#ifdef FACTORY_TEST_ENABLE -# include "factory_test.h" -#endif - -__attribute__((weak)) bool process_record_lemokey_kb(uint16_t keycode, keyrecord_t *record) { - return true; -} - -bool process_record_lemokey(uint16_t keycode, keyrecord_t *record) { -#ifdef LK_WIRELESS_ENABLE - extern bool process_record_wireless(uint16_t keycode, keyrecord_t * record); - if (!process_record_wireless(keycode, record)) return false; -#endif -#ifdef FACTORY_TEST_ENABLE - if (!process_record_factory_test(keycode, record)) return false; -#endif - - if (!process_record_lemokey_kb(keycode, record)) return false; - - return true; -} - -#if defined(LED_MATRIX_ENABLE) -bool led_matrix_indicators_lemokey(void) { -# ifdef LK_WIRELESS_ENABLE - extern bool led_matrix_indicators_bt(void); - led_matrix_indicators_bt(); -# endif -# ifdef FACTORY_TEST_ENABLE - factory_test_indicator(); -# endif - return true; -} -#endif - -#if defined(RGB_MATRIX_ENABLE) -bool rgb_matrix_indicators_lemokey(void) { -# ifdef LK_WIRELESS_ENABLE - extern bool rgb_matrix_indicators_bt(void); - rgb_matrix_indicators_bt(); -# endif -# ifdef FACTORY_TEST_ENABLE - factory_test_indicator(); -# endif - return true; -} -#endif - -__attribute__((weak)) bool lemokey_task_kb(void) { - return true; -} - -void lemokey_task(void) { -#ifdef LK_WIRELESS_ENABLE - extern void wireless_tasks(void); - wireless_tasks(); -#endif -#ifdef FACTORY_TEST_ENABLE - factory_test_task(); -#endif - lemokey_common_task(); - - lemokey_task_kb(); -} - -bool process_record_kb(uint16_t keycode, keyrecord_t *record) { - if (!process_record_user(keycode, record)) return false; - - if (!process_record_lemokey(keycode, record)) return false; - - return true; -} - -#ifdef RGB_MATRIX_ENABLE -bool rgb_matrix_indicators_kb(void) { - if (!rgb_matrix_indicators_user()) return false; - - rgb_matrix_indicators_lemokey(); - - return true; -} -#endif - -#ifdef LED_MATRIX_ENABLE -bool led_matrix_indicators_kb(void) { - if (!led_matrix_indicators_user()) return false; - - led_matrix_indicators_lemokey(); - - return true; -} -#endif - -void housekeeping_task_kb(void) { - lemokey_task(); -} diff --git a/keyboards/lemokey/common/lemokey_task.h b/keyboards/lemokey/common/lemokey_task.h deleted file mode 100644 index c01fc14167..0000000000 --- a/keyboards/lemokey/common/lemokey_task.h +++ /dev/null @@ -1,24 +0,0 @@ -/* Copyright 2022~2024 @ Keychron (https://www.lemokey.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 . - */ - -#pragma once - -#include "stdint.h" -#include "action.h" - -bool lemokey_task_kb(void); -bool process_record_lemokey_kb(uint16_t keycode, keyrecord_t *record); -void lemokey_task(void); diff --git a/keyboards/lemokey/common/wireless/bat_level_animation.c b/keyboards/lemokey/common/wireless/bat_level_animation.c deleted file mode 100644 index 01632ffaa3..0000000000 --- a/keyboards/lemokey/common/wireless/bat_level_animation.c +++ /dev/null @@ -1,208 +0,0 @@ - -/* Copyright 2022~2024 @ 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 . - */ - -#include "quantum.h" -#include "wireless.h" -#include "indicator.h" -#include "lpm.h" -#if defined(PROTOCOL_CHIBIOS) -# include -#elif if defined(PROTOCOL_LUFA) -# include "lufa.h" -#endif -#include "eeprom.h" - -#ifndef BAT_LEVEL_GROWING_INTERVAL -# define BAT_LEVEL_GROWING_INTERVAL 150 -#endif - -#ifndef BAT_LEVEL_ON_INTERVAL -# define BAT_LEVEL_ON_INTERVAL 3000 -#endif - -#ifdef LED_MATRIX_ENABLE -# define LED_DRIVER_IS_ENABLED led_matrix_is_enabled -#endif - -#ifdef RGB_MATRIX_ENABLE -# define LED_DRIVER_IS_ENABLED rgb_matrix_is_enabled -#endif - -enum { - BAT_LVL_ANI_NONE, - BAT_LVL_ANI_GROWING, - BAT_LVL_ANI_BLINK_OFF, - BAT_LVL_ANI_BLINK_ON, -}; - -static uint8_t animation_state = 0; -static uint32_t bat_lvl_ani_timer_buffer = 0; -static uint8_t bat_percentage; -static uint8_t cur_percentage; -static uint32_t time_interval; -#ifdef RGB_MATRIX_ENABLE -static uint8_t r, g, b; -#endif - -extern indicator_config_t indicator_config; -extern backlight_state_t original_backlight_state; - -#ifdef INDICATOR_LED_PINS -void bat_level_stop(void) { - pin_t bat_lvl_led_pin_list[] = INDICATOR_LED_PINS; - for (uint8_t i = 0; i < INDICATOR_LED_COUNT; i++) { - writePin(bat_lvl_led_pin_list[i], !LED_PIN_ON_STATE); - } - animation_state = BAT_LVL_ANI_NONE; -} - -__attribute__((weak)) void bat_level_indication(uint8_t percentage) { - pin_t bat_lvl_led_pin_list[] = INDICATOR_LED_PINS; - uint8_t led_cnt = sizeof(bat_lvl_led_pin_list) / sizeof(bat_lvl_led_pin_list[0]); - - bat_level_stop(); - animation_state = BAT_LVL_ANI_BLINK_ON; - cur_percentage = 0; - time_interval = 3000; - - if ((percentage / 10) >= 8) - cur_percentage = 4; - else if ((percentage / 10) >= 6) - cur_percentage = 3; - else if ((percentage / 10) >= 3) - cur_percentage = 2; - else - cur_percentage = 1; - - for (uint8_t i = 0; i < cur_percentage && i < led_cnt; i++) { - writePin(bat_lvl_led_pin_list[i], LED_PIN_ON_STATE); - } -} -#endif - -void bat_level_animiation_start(uint8_t percentage) { - /* Turn on backlight mode for indicator */ - animation_state = BAT_LVL_ANI_GROWING; - bat_lvl_ani_timer_buffer = timer_read32(); -#if defined(LED_MATRIX_ENABLE) || defined(RGB_MATRIX_ENABLE) - indicator_enable(); - - bat_percentage = percentage; - cur_percentage = 0; - time_interval = BAT_LEVEL_GROWING_INTERVAL; -# ifdef RGB_MATRIX_ENABLE - r = g = b = 255; -# endif -#else - bat_level_indication(percentage); -#endif -} - -void bat_level_animiation_stop(void) { -#if !defined(LED_MATRIX_ENABLE) && !defined(RGB_MATRIX_ENABLE) - pin_t bat_lvl_led_pin_list[INDICATOR_LED_COUNT] = INDICATOR_LED_PINS; - for (uint8_t i = 0; i < INDICATOR_LED_COUNT; i++) { - writePin(bat_lvl_led_pin_list[i], !INDICATORS_LED_PIN_ON_STATE); - } -#endif - animation_state = BAT_LVL_ANI_NONE; -} - -bool bat_level_animiation_actived(void) { - return animation_state; -} - -void bat_level_animiation_indicate(void) { -#ifdef LED_MATRIX_ENABLE - uint8_t bat_lvl_led_list[10] = BAT_LEVEL_LED_LIST; - - for (uint8_t i = 0; i <= LED_MATRIX_LED_COUNT; i++) { - led_matrix_set_value(i, 0); - } - - if (animation_state == BAT_LVL_ANI_GROWING || animation_state == BAT_LVL_ANI_BLINK_ON) - for (uint8_t i = 0; i < cur_percentage / 10; i++) - led_matrix_set_value(bat_lvl_led_list[i], 255); -#endif - -#ifdef RGB_MATRIX_ENABLE - uint8_t bat_lvl_led_list[10] = BAT_LEVEL_LED_LIST; - - for (uint8_t i = 0; i <= RGB_MATRIX_LED_COUNT; i++) { - rgb_matrix_set_color(i, 0, 0, 0); - } - - if (animation_state == BAT_LVL_ANI_GROWING || animation_state == BAT_LVL_ANI_BLINK_ON) { - for (uint8_t i = 0; i < cur_percentage / 10; i++) { - rgb_matrix_set_color(bat_lvl_led_list[i], r, g, b); - } - } -#endif -} - -void bat_level_animiation_update(void) { - switch (animation_state) { - case BAT_LVL_ANI_GROWING: - if (cur_percentage < bat_percentage) - cur_percentage += 10; - else { - if (cur_percentage == 0) cur_percentage = 10; - animation_state = BAT_LVL_ANI_BLINK_OFF; - } - break; - - case BAT_LVL_ANI_BLINK_OFF: -#ifdef RGB_MATRIX_ENABLE - if (bat_percentage < 30) { - r = 255; - b = g = 0; - } else { - r = b = 0; - g = 255; - } -#endif - time_interval = BAT_LEVEL_ON_INTERVAL; - animation_state = BAT_LVL_ANI_BLINK_ON; - break; - - case BAT_LVL_ANI_BLINK_ON: - animation_state = BAT_LVL_ANI_NONE; -#if defined(RGB_MATRIX_ENABLE) || defined(LED_MATRIX_ENABLE) - indicator_eeconfig_reload(); - if (indicator_config.value == 0 && !LED_DRIVER_IS_ENABLED()) { - indicator_disable(); - } -#endif - lpm_timer_reset(); - break; - - default: - break; - } - - bat_lvl_ani_timer_buffer = timer_read32(); -} - -void bat_level_animiation_task(void) { - if (animation_state && sync_timer_elapsed32(bat_lvl_ani_timer_buffer) > time_interval) { -#if defined(LED_MATRIX_ENABLE) || defined(RGB_MATRIX_ENABLE) - bat_level_animiation_update(); -#else - bat_level_stop(); -#endif - } -} diff --git a/keyboards/lemokey/common/wireless/bat_level_animation.h b/keyboards/lemokey/common/wireless/bat_level_animation.h deleted file mode 100644 index 97a089621a..0000000000 --- a/keyboards/lemokey/common/wireless/bat_level_animation.h +++ /dev/null @@ -1,24 +0,0 @@ -/* Copyright 2022~2024 @ lokher (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 . - */ - -#pragma once - -void bat_level_animiation_start(uint8_t percentage); -void bat_level_animiation_stop(void); -bool bat_level_animiation_actived(void); -void bat_level_animiation_indicate(void); -void bat_level_animiation_task(void); -void bat_level_indication(uint8_t percentage); diff --git a/keyboards/lemokey/common/wireless/battery.c b/keyboards/lemokey/common/wireless/battery.c deleted file mode 100644 index e359054d17..0000000000 --- a/keyboards/lemokey/common/wireless/battery.c +++ /dev/null @@ -1,229 +0,0 @@ -/* Copyright 2022~2024 @ lokher (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 . - */ - -#include "quantum.h" -#include "wireless.h" -#include "battery.h" -#include "transport.h" -#include "lkbt51.h" -#include "lpm.h" -#include "indicator.h" -#include "rtc_timer.h" -#include "analog.h" - -#define BATTERY_EMPTY_COUNT 10 -#define CRITICAL_LOW_COUNT 20 - -/* Battery voltage resistive voltage divider setting of MCU */ -#ifndef RVD_R1 -# define RVD_R1 10 // Upper side resitor value (uint: KΩ) -#endif -#ifndef RVD_R2 -# define RVD_R2 10 // Lower side resitor value (uint: KΩ) -#endif - -/* Battery voltage resistive voltage divider setting of Bluetooth */ -#ifndef LKBT51_RVD_R1 -# define LKBT51_RVD_R1 560 -#endif -#ifndef LKBT51_RVD_R2 -# define LKBT51_RVD_R2 499 -#endif - -#ifndef VOLTAGE_TRIM_LED_MATRIX -# define VOLTAGE_TRIM_LED_MATRIX 30 -#endif - -#ifndef VOLTAGE_TRIM_RGB_MATRIX -# define VOLTAGE_TRIM_RGB_MATRIX 60 -#endif - -#if defined(LED_MATRIX_ENABLE) || defined(RGB_MATRIX_ENABLE) -extern uint8_t g_pwm_buffer[DRIVER_COUNT][192]; -#endif - -static uint32_t bat_monitor_timer_buffer = 0; -static uint16_t voltage = FULL_VOLTAGE_VALUE; -static uint8_t bat_empty = 0; -static uint8_t critical_low = 0; -static uint8_t bat_state; -static uint8_t power_on_sample = 0; - -void battery_init(void) { - bat_state = BAT_NOT_CHARGING; -#if defined(BAT_CHARGING_PIN) -# if (BAT_CHARGING_LEVEL == 0) - palSetLineMode(BAT_CHARGING_PIN, PAL_MODE_INPUT_PULLUP); -# else - palSetLineMode(BAT_CHARGING_PIN, PAL_MODE_INPUT_PULLDOWN); -# endif -#endif - -#ifdef BAT_ADC_ENABLE_PIN - palSetLineMode(BAT_ADC_ENABLE_PIN, PAL_MODE_OUTPUT_PUSHPULL); - writePin(BAT_ADC_ENABLE_PIN, 1); -#endif -#ifdef BAT_ADC_PIN - palSetLineMode(BAT_ADC_PIN, PAL_MODE_INPUT_ANALOG); -#endif -} - -void battery_stop(void) { -#if (HAL_USE_ADC) -# ifdef BAT_ADC_ENABLE_PIN - writePin(BAT_ADC_ENABLE_PIN, 0); -# endif -# ifdef BAT_ADC_PIN - palSetLineMode(BAT_ADC_PIN, PAL_MODE_INPUT_ANALOG); - analog_stop(BAT_ADC_PIN); -# endif -#endif -} - -__attribute__((weak)) void battery_measure(void) { - lkbt51_read_state_reg(0x05, 0x02); -} - -/* Calculate the voltage */ -__attribute__((weak)) void battery_calculate_voltage(bool vol_src_bt, uint16_t value) { - uint16_t voltage; - - if (vol_src_bt) - voltage = ((uint32_t)value) * (LKBT51_RVD_R1 + LKBT51_RVD_R2) / LKBT51_RVD_R2; - else - voltage = (uint32_t)value * 3300 / 1024 * (RVD_R1 + RVD_R2) / RVD_R2; - -#ifdef LED_MATRIX_ENABLE - if (led_matrix_is_enabled()) { - uint32_t totalBuf = 0; - - for (uint8_t i = 0; i < DRIVER_COUNT; i++) - for (uint8_t j = 0; j < 192; j++) - totalBuf += g_pwm_buffer[i][j]; - /* We assumpt it is linear relationship*/ - voltage += (VOLTAGE_TRIM_LED_MATRIX * totalBuf / LED_MATRIX_LED_COUNT / 255); - } -#endif -#ifdef RGB_MATRIX_ENABLE - if (rgb_matrix_is_enabled()) { - uint32_t totalBuf = 0; - - for (uint8_t i = 0; i < DRIVER_COUNT; i++) - for (uint8_t j = 0; j < 192; j++) - totalBuf += g_pwm_buffer[i][j]; - /* We assumpt it is linear relationship*/ - uint32_t compensation = VOLTAGE_TRIM_RGB_MATRIX * totalBuf / RGB_MATRIX_LED_COUNT / 255 / 3; - - voltage += compensation; - } -#endif - - battery_set_voltage(voltage); -} - -void battery_set_voltage(uint16_t value) { - voltage = value; -} - -uint16_t battery_get_voltage(void) { - return voltage; -} - -uint8_t battery_get_percentage(void) { - if (voltage > FULL_VOLTAGE_VALUE) return 100; - - if (voltage > EMPTY_VOLTAGE_VALUE) { - return ((uint32_t)voltage - EMPTY_VOLTAGE_VALUE) * 80 / (FULL_VOLTAGE_VALUE - EMPTY_VOLTAGE_VALUE) + 20; - } - - if (voltage > SHUTDOWN_VOLTAGE_VALUE) { - return ((uint32_t)voltage - SHUTDOWN_VOLTAGE_VALUE) * 20 / (EMPTY_VOLTAGE_VALUE - SHUTDOWN_VOLTAGE_VALUE); - } else - return 0; -} - -bool battery_is_empty(void) { - return bat_empty > BATTERY_EMPTY_COUNT; -} - -bool battery_is_critical_low(void) { - return critical_low > CRITICAL_LOW_COUNT; -} - -void battery_check_empty(void) { - if (voltage < EMPTY_VOLTAGE_VALUE) { - if (bat_empty <= BATTERY_EMPTY_COUNT) { - if (++bat_empty > BATTERY_EMPTY_COUNT) { - indicator_battery_low_enable(true); - power_on_sample = VOLTAGE_POWER_ON_MEASURE_COUNT; - } - } - } -} - -void battery_check_critical_low(void) { - if (voltage < SHUTDOWN_VOLTAGE_VALUE) { - if (critical_low <= CRITICAL_LOW_COUNT) { - if (++critical_low > CRITICAL_LOW_COUNT) wireless_low_battery_shutdown(); - } - } else if (critical_low <= CRITICAL_LOW_COUNT) { - critical_low = 0; - } -} - -bool battery_power_on_sample(void) { - return power_on_sample < VOLTAGE_POWER_ON_MEASURE_COUNT; -} - -void battery_task(void) { - uint32_t t = rtc_timer_elapsed_ms(bat_monitor_timer_buffer); - if ((get_transport() & TRANSPORT_WIRELESS) && (wireless_get_state() == WT_CONNECTED || battery_power_on_sample())) { -#if defined(BAT_CHARGING_PIN) - if (usb_power_connected() && t > VOLTAGE_MEASURE_INTERVAL) { - if (readPin(BAT_CHARGING_PIN) == BAT_CHARGING_LEVEL) - lkbt51_update_bat_state(BAT_CHARGING); - else - lkbt51_update_bat_state(BAT_FULL_CHARGED); - } -#endif - - if ((battery_power_on_sample() -#if defined(LED_MATRIX_ENABLE) || defined(RGB_MATRIX_ENABLE) - && !indicator_is_enabled() -#endif - && t > BACKLIGHT_OFF_VOLTAGE_MEASURE_INTERVAL) || - t > VOLTAGE_MEASURE_INTERVAL) { - - battery_check_empty(); - battery_check_critical_low(); - - bat_monitor_timer_buffer = rtc_timer_read_ms(); - if (bat_monitor_timer_buffer > RTC_MAX_TIME) { - bat_monitor_timer_buffer = 0; - rtc_timer_clear(); - } - - battery_measure(); - if (power_on_sample < VOLTAGE_POWER_ON_MEASURE_COUNT) power_on_sample++; - } - } - - if ((bat_empty || critical_low) && usb_power_connected()) { - bat_empty = false; - critical_low = false; - indicator_battery_low_enable(false); - } -} diff --git a/keyboards/lemokey/common/wireless/battery.h b/keyboards/lemokey/common/wireless/battery.h deleted file mode 100644 index a30301b9d8..0000000000 --- a/keyboards/lemokey/common/wireless/battery.h +++ /dev/null @@ -1,62 +0,0 @@ -/* Copyright 2022~2024 @ lokher (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 . - */ - -#pragma once -#include "config.h" - -enum { - BAT_NOT_CHARGING = 0, - BAT_CHARGING, - BAT_FULL_CHARGED, -}; - -#ifndef FULL_VOLTAGE_VALUE -# define FULL_VOLTAGE_VALUE 4100 -#endif - -#ifndef EMPTY_VOLTAGE_VALUE -# define EMPTY_VOLTAGE_VALUE 3500 -#endif - -#ifndef SHUTDOWN_VOLTAGE_VALUE -# define SHUTDOWN_VOLTAGE_VALUE 3300 -#endif - -#ifndef VOLTAGE_MEASURE_INTERVAL -# define VOLTAGE_MEASURE_INTERVAL 3000 -#endif - -#ifndef VOLTAGE_POWER_ON_MEASURE_COUNT -# define VOLTAGE_POWER_ON_MEASURE_COUNT 15 -#endif - -#ifndef BACKLIGHT_OFF_VOLTAGE_MEASURE_INTERVAL -# define BACKLIGHT_OFF_VOLTAGE_MEASURE_INTERVAL 200 -#endif - -void battery_init(void); -void battery_stop(void); - -void battery_measure(void); -void battery_calculate_voltage(bool vol_src_bt, uint16_t value); -void battery_set_voltage(uint16_t value); -uint16_t battery_get_voltage(void); -uint8_t battery_get_percentage(void); -bool battery_is_empty(void); -bool battery_is_critical_low(void); -bool battery_power_on_sample(void); - -void battery_task(void); diff --git a/keyboards/lemokey/common/wireless/indicator.c b/keyboards/lemokey/common/wireless/indicator.c deleted file mode 100644 index 48ace64f89..0000000000 --- a/keyboards/lemokey/common/wireless/indicator.c +++ /dev/null @@ -1,773 +0,0 @@ -/* Copyright 2022~2024 @ lokher (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 . - */ - -#include "quantum.h" -#include "indicator.h" -#include "transport.h" -#include "battery.h" -#include "eeconfig.h" -#include "wireless_config.h" -#include "config.h" -#include "rtc_timer.h" -#include "lemokey_common.h" -#include "usb_main.h" -#ifdef FACTORY_TEST_ENABLE -# include "factory_test.h" -#endif -#include "lpm.h" -#include "lemokey_task.h" -#if defined(LED_MATRIX_ENABLE) || defined(RGB_MATRIX_ENABLE) -# ifdef LED_MATRIX_ENABLE -# include "led_matrix.h" -# endif -# ifdef RGB_MATRIX_ENABLE -# include "rgb_matrix.h" -# endif -#endif -#include "bat_level_animation.h" - -#define INDEX_MASK 0x0F -#define P24G_IND_MASK 0x10 -#define USB_IND_MASK 0x20 -#define LED_ON 0x80 - -#define IND_VAL_MASK (USB_IND_MASK | P24G_IND_MASK | INDEX_MASK) - -#ifdef LED_MATRIX_ENABLE -# define DECIDE_TIME(t, duration) (duration == 0 ? LED_MATRIX_TIMEOUT_INFINITE : ((t > duration) ? t : duration)) -#endif -#ifdef RGB_MATRIX_ENABLE -# define DECIDE_TIME(t, duration) (duration == 0 ? RGB_MATRIX_TIMEOUT_INFINITE : ((t > duration) ? t : duration)) -#endif - -#define INDICATOR_SET(s) memcpy(&indicator_config, &s##_config, sizeof(indicator_config_t)); - -enum { - BACKLIGHT_OFF = 0x00, - BACKLIGHT_ON_CONNECTED = 0x01, - BACKLIGHT_ON_UNCONNECTED = 0x02, -}; - -static indicator_config_t pairing_config = INDICATOR_CONFIG_PARING; -static indicator_config_t connected_config = INDICATOR_CONFIG_CONNECTD; -static indicator_config_t reconnecting_config = INDICATOR_CONFIG_RECONNECTING; -static indicator_config_t disconnected_config = INDICATOR_CONFIG_DISCONNECTED; -indicator_config_t indicator_config; -static wt_state_t indicator_state; -static uint16_t next_period; -static indicator_type_t type; -static uint32_t indicator_timer_buffer = 0; - -#if defined(BAT_LOW_LED_PIN) || defined(SPACE_KEY_LOW_BAT_IND) -static uint32_t bat_low_backlit_indicator = 0; -static uint8_t bat_low_ind_state = 0; -static uint32_t rtc_time = 0; -#endif - -#if defined(LED_MATRIX_ENABLE) || defined(RGB_MATRIX_ENABLE) -backlight_state_t original_backlight_state; - -# ifdef BT_INDICATION_LED_LIST -static uint8_t bt_host_led_matrix_list[BT_HOST_DEVICES_COUNT] = BT_INDICATION_LED_LIST; -# endif -#endif - -#ifdef BT_INDICATION_LED_PIN_LIST -static pin_t bt_led_pin_list[BT_HOST_DEVICES_COUNT] = BT_INDICATION_LED_PIN_LIST; -#endif - -#ifdef LED_MATRIX_ENABLE -# define LED_DRIVER led_matrix_driver -# define LED_INDICATORS_KB led_matrix_indicators_bt -# define LED_INDICATORS_USER led_matrix_indicators_user -# define LED_NONE_INDICATORS_KB led_matrix_none_indicators_kb -# define SET_ALL_LED_OFF() led_matrix_set_value_all(0) -# define SET_LED_OFF(idx) led_matrix_set_value(idx, 0) -# define SET_LED_ON(idx) led_matrix_set_value(idx, 255) -# define SET_LED_BT SET_LED_ON -# define SET_LED_P24G SET_LED_ON -# define SET_LED_LOW_BAT SET_LED_ON -# define LED_DRIVER_IS_ENABLED led_matrix_is_enabled -# define LED_DRIVER_EECONFIG_RELOAD() \ - eeprom_read_block(&led_matrix_eeconfig, EECONFIG_LED_MATRIX, sizeof(led_matrix_eeconfig)); \ - if (!led_matrix_eeconfig.mode) { \ - eeconfig_update_led_matrix_default(); \ - } -# define LED_DRIVER_ALLOW_SHUTDOWN led_matrix_driver_allow_shutdown -# define LED_DRIVER_SHUTDOWN led_matrix_driver_shutdown -# define LED_DRIVER_EXIT_SHUTDOWN led_matrix_driver_exit_shutdown -# define LED_DRIVER_ENABLE_NOEEPROM led_matrix_enable_noeeprom -# define LED_DRIVER_DISABLE_NOEEPROM led_matrix_disable_noeeprom -# define LED_DRIVER_DISABLE_TIMEOUT_SET led_matrix_disable_timeout_set -# define LED_DRIVER_DISABLE_TIME_RESET led_matrix_disable_time_reset -# define LED_DRIVER_TIMEOUTED led_matrix_timeouted -#endif - -#ifdef RGB_MATRIX_ENABLE -# define LED_DRIVER rgb_matrix_driver -# define LED_INDICATORS_KB rgb_matrix_indicators_bt -# define LED_INDICATORS_USER rgb_matrix_indicators_user -# define LED_NONE_INDICATORS_KB rgb_matrix_none_indicators_kb -# define SET_ALL_LED_OFF() rgb_matrix_set_color_all(0, 0, 0) -# define SET_LED_OFF(idx) rgb_matrix_set_color(idx, 0, 0, 0) -# define SET_LED_ON(idx) rgb_matrix_set_color(idx, 255, 255, 255) -# define SET_LED_BT(idx) rgb_matrix_set_color(idx, 0, 0, 255) -# define SET_LED_P24G(idx) rgb_matrix_set_color(idx, 0, 255, 0) -# define SET_LED_LOW_BAT(idx) rgb_matrix_set_color(idx, 255, 0, 0) -# define LED_DRIVER_IS_ENABLED rgb_matrix_is_enabled -# define LED_DRIVER_EECONFIG_RELOAD() \ - eeprom_read_block(&rgb_matrix_config, EECONFIG_RGB_MATRIX, sizeof(rgb_matrix_config)); \ - if (!rgb_matrix_config.mode) { \ - eeconfig_update_rgb_matrix_default(); \ - } -# define LED_DRIVER_ALLOW_SHUTDOWN rgb_matrix_driver_allow_shutdown -# define LED_DRIVER_SHUTDOWN rgb_matrix_driver_shutdown -# define LED_DRIVER_EXIT_SHUTDOWN rgb_matrix_driver_exit_shutdown -# define LED_DRIVER_ENABLE_NOEEPROM rgb_matrix_enable_noeeprom -# define LED_DRIVER_DISABLE_NOEEPROM rgb_matrix_disable_noeeprom -# define LED_DRIVER_DISABLE_TIMEOUT_SET rgb_matrix_disable_timeout_set -# define LED_DRIVER_DISABLE_TIME_RESET rgb_matrix_disable_time_reset -# define LED_DRIVER_TIMEOUTED rgb_matrix_timeouted -#endif - -#ifdef WINLOCK_LED_LIST -# define SET_LED_WINLOCK(idx) rgb_matrix_set_color(idx, 255, 0, 0) -#endif - -bool LED_INDICATORS_KB(void); - -void indicator_init(void) { - memset(&indicator_config, 0, sizeof(indicator_config)); - -#ifdef BT_INDICATION_LED_PIN_LIST - for (uint8_t i = 0; i < BT_HOST_DEVICES_COUNT; i++) { - setPinOutput(bt_led_pin_list[i]); - writePin(bt_led_pin_list[i], !BT_INDICATION_LED_ON_STATE); - } -#endif - -#ifdef COMMON_BT_LED_PIN - setPinOutput(COMMON_BT_LED_PIN); - writePin(COMMON_BT_LED_PIN, !COMMON_BT_LED_PIN_ON_STATE); -#endif - -#ifdef P24G_INDICATION_LED_PIN - setPinOutput(P24G_INDICATION_LED_PIN); - writePin(P24G_INDICATION_LED_PIN, !BT_INDICATION_LED_ON_STATE); -#endif - -#ifdef BAT_LOW_LED_PIN - setPinOutput(BAT_LOW_LED_PIN); - writePin(BAT_LOW_LED_PIN, !BAT_LOW_LED_PIN_ON_STATE); -#endif - -#ifdef WIN_LOCK_LED_PIN - setPinOutput(WIN_LOCK_LED_PIN); - writePin(WIN_LOCK_LED_PIN, keymap_config.no_gui); -#endif -} - -#if defined(LED_MATRIX_ENABLE) || defined(RGB_MATRIX_ENABLE) -void indicator_enable(void) { - if (!LED_DRIVER_IS_ENABLED()) { - LED_DRIVER_ENABLE_NOEEPROM(); - } -} - -inline void indicator_disable(void) { - LED_DRIVER_DISABLE_NOEEPROM(); -} - -void indicator_set_backlit_timeout(uint32_t time) { - LED_DRIVER_DISABLE_TIMEOUT_SET(time); -} - -static inline void indicator_reset_backlit_time(void) { - LED_DRIVER_DISABLE_TIME_RESET(); -} - -bool indicator_is_enabled(void) { - return LED_DRIVER_IS_ENABLED(); -} - -void indicator_eeconfig_reload(void) { - LED_DRIVER_EECONFIG_RELOAD(); -} - -#endif - -bool indicator_is_running(void) { - return -#if defined(BAT_LOW_LED_PIN) || defined(SPACE_KEY_LOW_BAT_IND) - bat_low_ind_state || -#endif - !!indicator_config.value; -} - -static void indicator_timer_cb(void *arg) { - if (*(indicator_type_t *)arg != INDICATOR_LAST) type = *(indicator_type_t *)arg; - - bool time_up = false; - switch (type) { - case INDICATOR_NONE: - break; - case INDICATOR_OFF: - next_period = 0; - time_up = true; - break; - - case INDICATOR_ON: - if (indicator_config.value) { - if (indicator_config.elapsed == 0) { - indicator_config.value |= LED_ON; - - if (indicator_config.duration) { - indicator_config.elapsed += indicator_config.duration; - } - } else - time_up = true; - } - break; - - case INDICATOR_ON_OFF: - if (indicator_config.value) { - if (indicator_config.elapsed == 0) { - indicator_config.value |= LED_ON; - next_period = indicator_config.on_time; - } else { - indicator_config.value = indicator_config.value & IND_VAL_MASK; - next_period = indicator_config.duration - indicator_config.on_time; - } - - if ((indicator_config.duration == 0 || indicator_config.elapsed <= indicator_config.duration) && next_period != 0) { - indicator_config.elapsed += next_period; - } else { - time_up = true; - } - } - break; - - case INDICATOR_BLINK: - if (indicator_config.value) { - if (indicator_config.value & LED_ON) { - indicator_config.value = indicator_config.value & IND_VAL_MASK; - next_period = indicator_config.off_time; - } else { - indicator_config.value |= LED_ON; - next_period = indicator_config.on_time; - } - - if ((indicator_config.duration == 0 || indicator_config.elapsed <= indicator_config.duration) && next_period != 0) { - indicator_config.elapsed += next_period; - } else { - time_up = true; - } - } - break; - default: - time_up = true; - - next_period = 0; - break; - } - -#if defined(BT_INDICATION_LED_PIN_LIST) || defined(P24G_INDICATION_LED_PIN) || defined(COMMON_BT_LED_PIN) - if (indicator_config.value) { -# if defined(P24G_INDICATION_LED_PIN) - if (indicator_config.value & P24G_IND_MASK) { - if ((indicator_config.value & LED_ON) && !time_up) { - writePin(P24G_INDICATION_LED_PIN, BT_INDICATION_LED_ON_STATE); - } else { - writePin(P24G_INDICATION_LED_PIN, !BT_INDICATION_LED_ON_STATE); - } - } else -# endif - { - uint8_t idx = (indicator_config.value & INDEX_MASK) - 1; -#ifdef BT_INDICATION_LED_PIN_LIST - for (uint8_t i = 0; i < BT_HOST_DEVICES_COUNT; i++) { - if (i != idx) writePin(bt_led_pin_list[idx], !BT_INDICATION_LED_ON_STATE); - } -#endif - if ((indicator_config.value & LED_ON) && !time_up) { -#ifdef BT_INDICATION_LED_PIN_LIST - writePin(bt_led_pin_list[idx], BT_INDICATION_LED_ON_STATE); -#endif -#ifdef COMMON_BT_LED_PIN - writePin(COMMON_BT_LED_PIN, COMMON_BT_LED_PIN_ON_STATE); -#endif - } else { -#ifdef BT_INDICATION_LED_PIN_LIST - writePin(bt_led_pin_list[idx], !BT_INDICATION_LED_ON_STATE); -#endif -#ifdef COMMON_BT_LED_PIN - writePin(COMMON_BT_LED_PIN, !COMMON_BT_LED_PIN_ON_STATE); -#endif - } - } - } -#endif - - if (time_up) { - /* Set indicator to off on timeup, avoid keeping light up until next update in raindrop effect */ - indicator_config.value = indicator_config.value & IND_VAL_MASK; -#if defined(LED_MATRIX_ENABLE) || defined(RGB_MATRIX_ENABLE) - LED_INDICATORS_KB(); -#endif - - indicator_config.value = 0; - lpm_timer_reset(); - } - - if (indicator_config.value == 0) { -#if defined(LED_MATRIX_ENABLE) || defined(RGB_MATRIX_ENABLE) - indicator_eeconfig_reload(); - if (!LED_DRIVER_IS_ENABLED()) indicator_disable(); -#endif - } -} - -void indicator_set(wt_state_t state, uint8_t host_index) { - if (get_transport() == TRANSPORT_USB) return; - -#if defined(LED_MATRIX_ENABLE) || defined(RGB_MATRIX_ENABLE) - static uint8_t pre_state = 0; -#endif - static uint8_t current_state = 0; - static uint8_t current_host = 0; - bool host_index_changed = false; - - if (host_index == P24G_HOST_INDEX) - host_index = P24G_IND_MASK | 0x01; - - else if (host_index == USB_HOST_INDEX) - host_index = USB_IND_MASK | 0x01; - - if (current_host != host_index && state != WT_DISCONNECTED) { - host_index_changed = true; - current_host = host_index; - } - - if (current_state != state || host_index_changed || state == WT_RECONNECTING) { - // Some BT chips need to reset to enter sleep mode, ignore it. - if (current_state == WT_SUSPEND && state == WT_DISCONNECTED) return; -#if defined(LED_MATRIX_ENABLE) || defined(RGB_MATRIX_ENABLE) - pre_state = current_state; -#endif - current_state = state; - } else { - return; - } - - indicator_timer_buffer = timer_read32(); - -#if defined(LED_MATRIX_ENABLE) || defined(RGB_MATRIX_ENABLE) - /* Turn on backlight mode for indicator */ - indicator_enable(); - indicator_reset_backlit_time(); -#endif -#if defined(BT_INDICATION_LED_PIN_LIST) - for (uint8_t i = 0; i < BT_HOST_DEVICES_COUNT; i++) - writePin(bt_led_pin_list[i], !BT_INDICATION_LED_ON_STATE); -#endif - -#if defined(P24G_INDICATION_LED_PIN) - writePin(P24G_INDICATION_LED_PIN, !BT_INDICATION_LED_ON_STATE); -#endif -#ifdef COMMON_BT_LED_PIN - writePin(COMMON_BT_LED_PIN, !COMMON_BT_LED_PIN_ON_STATE); -#endif - switch (state) { - case WT_DISCONNECTED: - -#if defined(BT_INDICATION_LED_PIN_LIST) - if ((host_index & P24G_IND_MASK) != P24G_IND_MASK) writePin(bt_led_pin_list[(host_index & INDEX_MASK) - 1], !BT_INDICATION_LED_ON_STATE); -#endif -#if defined(P24G_INDICATION_LED_PIN) - writePin(P24G_INDICATION_LED_PIN, !BT_INDICATION_LED_ON_STATE); -#endif - - INDICATOR_SET(disconnected); - indicator_config.value = (indicator_config.type == INDICATOR_NONE) ? 0 : host_index; - indicator_timer_cb((void *)&indicator_config.type); -#if defined(LED_MATRIX_ENABLE) || defined(RGB_MATRIX_ENABLE) - if (battery_is_critical_low()) { - indicator_set_backlit_timeout(1000); - - } else { -#if defined(LED_MATRIX_ENABLE) || defined(RGB_MATRIX_ENABLE) - if (pre_state == WT_CONNECTED) - indicator_set_backlit_timeout(1000); - else -#endif - /* Set timer so that user has chance to turn on the backlight when is off */ - indicator_set_backlit_timeout(DECIDE_TIME(DISCONNECTED_BACKLIGHT_DISABLE_TIMEOUT * 1000, indicator_config.duration)); - } -#endif - break; - - case WT_CONNECTED: - if (indicator_state != WT_CONNECTED) { - INDICATOR_SET(connected); - indicator_config.value = (indicator_config.type == INDICATOR_NONE) ? 0 : host_index; - indicator_timer_cb((void *)&indicator_config.type); - } -#if defined(LED_MATRIX_ENABLE) || defined(RGB_MATRIX_ENABLE) - indicator_set_backlit_timeout(DECIDE_TIME(CONNECTED_BACKLIGHT_DISABLE_TIMEOUT * 1000, indicator_config.duration)); -#endif - break; - - case WT_PARING: - INDICATOR_SET(pairing); - indicator_config.value = (indicator_config.type == INDICATOR_NONE) ? 0 : LED_ON | host_index; - indicator_timer_cb((void *)&indicator_config.type); -#if defined(LED_MATRIX_ENABLE) || defined(RGB_MATRIX_ENABLE) - indicator_set_backlit_timeout(DECIDE_TIME(DISCONNECTED_BACKLIGHT_DISABLE_TIMEOUT * 1000, indicator_config.duration)); -#endif - break; - - case WT_RECONNECTING: - INDICATOR_SET(reconnecting); - indicator_config.value = (indicator_config.type == INDICATOR_NONE) ? 0 : LED_ON | host_index; - indicator_timer_cb((void *)&indicator_config.type); -#if defined(LED_MATRIX_ENABLE) || defined(RGB_MATRIX_ENABLE) - indicator_set_backlit_timeout(DECIDE_TIME(DISCONNECTED_BACKLIGHT_DISABLE_TIMEOUT * 1000, indicator_config.duration)); -#endif - break; - - case WT_SUSPEND: - INDICATOR_SET(disconnected); - indicator_config.value = (indicator_config.type == INDICATOR_NONE) ? 0 : host_index; - indicator_timer_cb((void *)&indicator_config.type); -#if defined(LED_MATRIX_ENABLE) || defined(RGB_MATRIX_ENABLE) -# ifdef FACTORY_TEST_ENABLE - if (factory_reset_indicating()) - indicator_set_backlit_timeout(3000); - else -# endif - { - indicator_set_backlit_timeout(1000); - } -#endif - -#if defined(BT_INDICATION_LED_PIN_LIST) - for (uint8_t i = 0; i < BT_HOST_DEVICES_COUNT; i++) - writePin(bt_led_pin_list[i], !BT_INDICATION_LED_ON_STATE); -#endif -#if defined(P24G_INDICATION_LED_PIN) - writePin(P24G_INDICATION_LED_PIN, !BT_INDICATION_LED_ON_STATE); -#endif -#ifdef COMMON_BT_LED_PIN - writePin(COMMON_BT_LED_PIN, !COMMON_BT_LED_PIN_ON_STATE); -#endif -# if defined(BAT_LOW_LED_PIN) - writePin(BAT_LOW_LED_PIN, !BAT_LOW_LED_PIN_ON_STATE); -# endif - break; - - default: - break; - } - - indicator_state = state; -} - -void indicator_stop(void) { - indicator_config.value = 0; -#if defined(LED_MATRIX_ENABLE) || defined(RGB_MATRIX_ENABLE) - indicator_eeconfig_reload(); - - if (indicator_is_enabled()) { - indicator_enable(); - } else { - indicator_disable(); - } -#endif -} - -void indicator_battery_low_enable(bool enable) { -#if defined(BAT_LOW_LED_PIN) || defined(SPACE_KEY_LOW_BAT_IND) - if (enable) { - uint32_t t = rtc_timer_read_ms(); - - /* Check overflow */ - if (rtc_time > t) { - if (bat_low_ind_state == 0) - rtc_time = t; // Update rtc_time if indicating is not running - else { - rtc_time += t; - } - } - - /* Indicating at first time or after the interval */ - if ((rtc_time == 0 || t - rtc_time > LOW_BAT_LED_TRIG_INTERVAL) && bat_low_ind_state == 0) { - bat_low_backlit_indicator = enable ? timer_read32() : 0; - rtc_time = rtc_timer_read_ms(); - bat_low_ind_state = 1; -# if defined(SPACE_KEY_LOW_BAT_IND) - indicator_enable(); -# endif - } - } else { - rtc_time = 0; - bat_low_ind_state = 0; -# if defined(SPACE_KEY_LOW_BAT_IND) - indicator_eeconfig_reload(); - if (!LED_DRIVER_IS_ENABLED()) indicator_disable(); -# endif - } -#endif -} - -void indicator_battery_low(void) { -#if defined(BAT_LOW_LED_PIN) || defined(SPACE_KEY_LOW_BAT_IND) - if (bat_low_ind_state) { - if ((bat_low_ind_state & 0x0F) <= (LOW_BAT_LED_BLINK_TIMES) && timer_elapsed32(bat_low_backlit_indicator) > (LOW_BAT_LED_BLINK_PERIOD)) { - if (bat_low_ind_state & 0x80) { - bat_low_ind_state &= 0x7F; - bat_low_ind_state++; -# if defined(BAT_LOW_LED_PIN) - writePin(BAT_LOW_LED_PIN, !BAT_LOW_LED_PIN_ON_STATE); -# endif - } else { - bat_low_ind_state |= 0x80; -# if defined(BAT_LOW_LED_PIN) - writePin(BAT_LOW_LED_PIN, BAT_LOW_LED_PIN_ON_STATE); -# endif - } - - bat_low_backlit_indicator = timer_read32(); - - /* Restore backligth state */ - if ((bat_low_ind_state & 0x0F) > (LOW_BAT_LED_BLINK_TIMES)) { -# if defined(BAT_LOW_LED_PIN) - writePin(BAT_LOW_LED_PIN, !BAT_LOW_LED_PIN_ON_STATE); -# endif -# if defined(SPACE_KEY_LOW_BAT_IND) -# if defined(NUM_LOCK_INDEX) || defined(CAPS_LOCK_INDEX) || defined(SCROLL_LOCK_INDEX) || defined(COMPOSE_LOCK_INDEX) || defined(KANA_LOCK_INDEX) - if (LED_DRIVER_ALLOW_SHUTDOWN()) -# endif - indicator_disable(); -# endif - } - } else if ((bat_low_ind_state & 0x0F) > (LOW_BAT_LED_BLINK_TIMES)) { -# if defined(BAT_LOW_LED_PIN) - writePin(BAT_LOW_LED_PIN, !BAT_LOW_LED_PIN_ON_STATE); -# endif - bat_low_ind_state = 0; - lpm_timer_reset(); - } - } -#endif -} - -void indicator_task(void) { - bat_level_animiation_task(); - if (indicator_config.value && timer_elapsed32(indicator_timer_buffer) >= next_period) { - indicator_timer_cb((void *)&type); - indicator_timer_buffer = timer_read32(); - } - - indicator_battery_low(); -} - -#if defined(LED_MATRIX_ENABLE) || defined(RGB_MATRIX_ENABLE) -__attribute__((weak)) void os_state_indicate(void) { -# if defined(RGB_DISABLE_WHEN_USB_SUSPENDED) || defined(LED_DISABLE_WHEN_USB_SUSPENDED) - if (get_transport() == TRANSPORT_USB && USB_DRIVER.state == USB_SUSPENDED) return; -# endif - -# if defined(NUM_LOCK_INDEX) - if (host_keyboard_led_state().num_lock) { - SET_LED_ON(NUM_LOCK_INDEX); - } -# endif -# if defined(CAPS_LOCK_INDEX) - if (host_keyboard_led_state().caps_lock) { -# if defined(DIM_CAPS_LOCK) - SET_LED_OFF(CAPS_LOCK_INDEX); -# else - SET_LED_ON(CAPS_LOCK_INDEX); -# endif - } -# endif -# if defined(SCROLL_LOCK_INDEX) - if (host_keyboard_led_state().scroll_lock) { - SET_LED_ON(SCROLL_LOCK_INDEX); - } -# endif -# if defined(COMPOSE_LOCK_INDEX) - if (host_keyboard_led_state().compose) { - SET_LED_ON(COMPOSE_LOCK_INDEX); - } -# endif -# if defined(KANA_LOCK_INDEX) - if (host_keyboard_led_state().kana) { - SET_LED_ON(KANA_LOCK_INDEX); - } -# endif - -# if defined(WIN_LOCK_LED_PIN) || defined(WINLOCK_LED_LIST) - /* TODO: move to common.c */ - if (keymap_config.no_gui && (((get_transport() & TRANSPORT_WIRELESS) && wireless_get_state() == WT_CONNECTED) || (get_transport() == TRANSPORT_USB && USBD1.state == USB_ACTIVE))) { -# ifdef WINLOCK_LED_LIST - if (keymap_config.no_gui) { - uint8_t led_list[] = WINLOCK_LED_LIST; - uint8_t led_cnt = ARRAY_SIZE(led_list); - for (uint8_t i = 0; i < led_cnt; i++) { -# if defined(DIM_WIN_LOCK) - SET_LED_OFF(led_list[i]); -# else - SET_LED_WINLOCK(led_list[i]); -# endif - } - } -# endif -# ifdef WIN_LOCK_LED_PIN - writePin(WIN_LOCK_LED_PIN, WIN_LOCK_LED_ON_LEVEL); -# endif - } else { -# ifdef WIN_LOCK_LED_PIN - writePin(WIN_LOCK_LED_PIN, !WIN_LOCK_LED_ON_LEVEL); -# endif - } -# endif -} - -bool LED_INDICATORS_KB(void) { - if (get_transport() & TRANSPORT_WIRELESS) { - /* Prevent backlight flash caused by key activities */ - if (battery_is_critical_low()) { - SET_ALL_LED_OFF(); - return true; - } - - if (battery_is_empty()) SET_ALL_LED_OFF(); -# if defined(LOW_BAT_IND_INDEX) - if (bat_low_ind_state && (bat_low_ind_state & 0x0F) <= LOW_BAT_LED_BLINK_TIMES) { - uint8_t idx_list[] = LOW_BAT_IND_INDEX; - for (uint8_t i = 0; i < sizeof(idx_list); i++) { - if (bat_low_ind_state & LED_ON) { - SET_LED_LOW_BAT(idx_list[i]); - } else { - SET_LED_OFF(idx_list[i]); - } - } - } -# endif - -# if (defined(LED_MATRIX_ENABLE) || defined(RGB_MATRIX_ENABLE)) && defined(BAT_LEVEL_LED_LIST) - if (bat_level_animiation_actived()) { - bat_level_animiation_indicate(); - } -# endif - static uint8_t last_host_index = 0xFF; - - if (indicator_config.value) { - uint8_t host_index = indicator_config.value & INDEX_MASK; - - if (indicator_config.highlight) { - SET_ALL_LED_OFF(); - } else if (last_host_index != host_index) { -# ifdef P24G_INDICATION_LED_INDEX - if (indicator_config.value & P24G_IND_MASK) - SET_LED_OFF(P24G_INDICATION_LED_INDEX); - else -# endif - SET_LED_OFF(bt_host_led_matrix_list[host_index - 1]); - last_host_index = host_index; - } - - if (indicator_config.value & LED_ON) { -# ifdef P24G_INDICATION_LED_INDEX - if (indicator_config.value & P24G_IND_MASK) - SET_LED_P24G(P24G_INDICATION_LED_INDEX); - else -# endif - SET_LED_BT(bt_host_led_matrix_list[host_index - 1]); - - } else { -# ifdef P24G_INDICATION_LED_INDEX - if (indicator_config.value & P24G_IND_MASK) - SET_LED_OFF(P24G_INDICATION_LED_INDEX); - else -# endif - SET_LED_OFF(bt_host_led_matrix_list[host_index - 1]); - } - } else - os_state_indicate(); - } - if (get_transport() == TRANSPORT_USB) os_state_indicate(); - - if (!LED_INDICATORS_USER()) return true; - - return true; -} - -bool led_update_kb(led_t led_state) { - bool res = led_update_user(led_state); - if (res) { - led_update_ports(led_state); - - if (!LED_DRIVER_IS_ENABLED() || (LED_DRIVER_IS_ENABLED() && LED_DRIVER_TIMEOUTED())) { -# if defined(LED_MATRIX_DRIVER_SHUTDOWN_ENABLE) || defined(RGB_MATRIX_DRIVER_SHUTDOWN_ENABLE) - LED_DRIVER_EXIT_SHUTDOWN(); -# endif - SET_ALL_LED_OFF(); - os_state_indicate(); - LED_DRIVER.flush(); -# if defined(LED_MATRIX_DRIVER_SHUTDOWN_ENABLE) || defined(RGB_MATRIX_DRIVER_SHUTDOWN_ENABLE) - if (LED_DRIVER_ALLOW_SHUTDOWN()) LED_DRIVER_SHUTDOWN(); -# endif - } - } - - return res; -} - -void LED_NONE_INDICATORS_KB(void) { -# if defined(RGB_DISABLE_WHEN_USB_SUSPENDED) || defined(LED_DISABLE_WHEN_USB_SUSPENDED) - if (get_transport() == TRANSPORT_USB && USB_DRIVER.state == USB_SUSPENDED) return; -# endif - - os_state_indicate(); -} - -# if defined(LED_MATRIX_DRIVER_SHUTDOWN_ENABLE) || defined(RGB_MATRIX_DRIVER_SHUTDOWN_ENABLE) -bool LED_DRIVER_ALLOW_SHUTDOWN(void) { -# if defined(NUM_LOCK_INDEX) - if (host_keyboard_led_state().num_lock) return false; -# endif -# if defined(CAPS_LOCK_INDEX) && !defined(DIM_CAPS_LOCK) - if (host_keyboard_led_state().caps_lock) return false; -# endif -# if defined(SCROLL_LOCK_INDEX) - if (host_keyboard_led_state().scroll_lock) return false; -# endif -# if defined(COMPOSE_LOCK_INDEX) - if (host_keyboard_led_state().compose) return false; -# endif -# if defined(KANA_LOCK_INDEX) - if (host_keyboard_led_state().kana) return false; -# endif -# if defined(WINLOCK_LED_LIST) && !defined(WIN_LOCK_LED_PIN) - if (keymap_config.no_gui && (wireless_get_state() == WT_CONNECTED || get_transport()==TRANSPORT_USB)) return false; -# endif - - return true; -} -# endif -#endif diff --git a/keyboards/lemokey/common/wireless/indicator.h b/keyboards/lemokey/common/wireless/indicator.h deleted file mode 100644 index b4c60e0261..0000000000 --- a/keyboards/lemokey/common/wireless/indicator.h +++ /dev/null @@ -1,113 +0,0 @@ -/* Copyright 2022~2024 @ lokher (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 . - */ - -#pragma once - -#include "config.h" -#include "wireless.h" - -#define P24G_HOST_INDEX 24 -#define USB_HOST_INDEX 34 - -/* Indication of pairing */ -#ifndef INDICATOR_CONFIG_PARING -# define INDICATOR_CONFIG_PARING {INDICATOR_BLINK, 1000, 1000, 0, true, 0}; -#endif - -/* Indication on Connected */ -#ifndef INDICATOR_CONFIG_CONNECTD -# define INDICATOR_CONFIG_CONNECTD {INDICATOR_ON_OFF, 2000, 250, 2000, true, 0}; -#endif - -/* Reconnecting indication */ -#ifndef INDICATOR_CONFIG_RECONNECTING -# define INDICATOR_CONFIG_RECONNECTING {INDICATOR_BLINK, 100, 100, 600, true, 0}; -#endif - -/* Disconnected indication */ -#ifndef INDICATOR_CONFIG_DISCONNECTED -# define INDICATOR_CONFIG_DISCONNECTED {INDICATOR_NONE, 100, 100, 600, false, 0}; -#endif - -/* Uint: Second */ -#ifndef DISCONNECTED_BACKLIGHT_DISABLE_TIMEOUT -# define DISCONNECTED_BACKLIGHT_DISABLE_TIMEOUT 40 -#endif - -/* Uint: Second, the timer restarts on key activities. */ -#ifndef CONNECTED_BACKLIGHT_DISABLE_TIMEOUT -# define CONNECTED_BACKLIGHT_DISABLE_TIMEOUT 600 -#endif - -/* Uint: ms */ -#ifndef LOW_BAT_LED_BLINK_PERIOD -# define LOW_BAT_LED_BLINK_PERIOD 1000 -#endif - -#ifndef LOW_BAT_LED_BLINK_TIMES -# define LOW_BAT_LED_BLINK_TIMES 5 -#endif - -#ifndef LOW_BAT_LED_TRIG_INTERVAL -# define LOW_BAT_LED_TRIG_INTERVAL 30000 -#endif - -#if ((defined(LED_MATRIX_ENABLE) || defined(RGB_MATRIX_ENABLE)) && defined(LOW_BAT_IND_INDEX)) -# define SPACE_KEY_LOW_BAT_IND -#endif - -#if BT_HOST_MAX_COUNT > 6 -# pragma error("HOST_COUNT max value is 6") -#endif - -typedef enum { - INDICATOR_NONE, - INDICATOR_OFF, - INDICATOR_ON, - INDICATOR_ON_OFF, - INDICATOR_BLINK, - INDICATOR_LAST, -} indicator_type_t; - -typedef struct PACKED { - indicator_type_t type; - uint32_t on_time; - uint32_t off_time; - uint32_t duration; - bool highlight; - uint8_t value; - uint32_t elapsed; -} indicator_config_t; - -typedef struct PACKED { - uint8_t value; - bool saved; -} backlight_state_t; - -void indicator_init(void); -void indicator_set(wt_state_t state, uint8_t host_index); -void indicator_set_backlit_timeout(uint32_t time); -void indicator_backlight_timer_reset(bool enable); -bool indicator_hook_key(uint16_t keycode); -void indicator_enable(void); -void indicator_disable(void); -void indicator_stop(void); -void indicator_eeconfig_reload(void); -bool indicator_is_enabled(void); -bool indicator_is_running(void); -void indicator_battery_low_enable(bool enable); - -void indicator_task(void); diff --git a/keyboards/lemokey/common/wireless/lkbt51.c b/keyboards/lemokey/common/wireless/lkbt51.c deleted file mode 100644 index 686ca32858..0000000000 --- a/keyboards/lemokey/common/wireless/lkbt51.c +++ /dev/null @@ -1,883 +0,0 @@ -/* Copyright 2022~2024 @ 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 . - */ - -#include "quantum.h" -#include "lkbt51.h" -#include "wireless.h" -#include "wireless_event_type.h" -#include "battery.h" -#include "raw_hid.h" -#include "report_buffer.h" -#include "factory_test.h" - -extern void factory_test_send(uint8_t* payload, uint8_t length); - -#ifndef RAW_EPSIZE -# define RAW_EPSIZE 32 -#endif - -#ifndef SPI_SCK_PIN -# define SPI_SCK_PIN A5 -#endif -#ifndef SPI_MISO_PIN -# define SPI_MISO_PIN A6 -#endif -#ifndef SPI_MOSI_PIN -# define SPI_MOSI_PIN A7 -#endif - -#ifndef SPI_CLK_PAL_MODE -# define SPI_CLK_PAL_MODE 5 -#endif -#ifndef SPI_MISO_PAL_MODE -# define SPI_MISO_PAL_MODE 5 -#endif -#ifndef SPI_MOSI_PAL_MODE -# define SPI_MOSI_PAL_MODE 5 -#endif - -#ifndef LKBT51_INT_INPUT_PIN -# error "LKBT51_INT_INPUT_PIN is not defined" -#endif - -#ifndef LKBT51_TX_RETRY_COUNT -# define LKBT51_TX_RETRY_COUNT 3 -#endif - -// clang-format off -enum { - /* HID Report */ - LKBT51_CMD_SEND_KB = 0x11, - LKBT51_CMD_SEND_KB_NKRO = 0x12, - LKBT51_CMD_SEND_CONSUMER = 0x13, - LKBT51_CMD_SEND_SYSTEM = 0x14, - LKBT51_CMD_SEND_FN = 0x15, // Not used currently - LKBT51_CMD_SEND_MOUSE = 0x16, - LKBT51_CMD_SEND_BOOT_KB = 0x17, - /* Bluetooth connections */ - LKBT51_CMD_PAIRING = 0x21, - LKBT51_CMD_CONNECT = 0x22, - LKBT51_CMD_DISCONNECT = 0x23, - LKBT51_CMD_SWITCH_HOST = 0x24, - LKBT51_CMD_READ_STATE_REG = 0x25, - /* Battery */ - LKBT51_CMD_BATTERY_MANAGE = 0x31, - LKBT51_CMD_UPDATE_BAT_LVL = 0x32, - LKBT51_CMD_UPDATE_BAT_STATE = 0x33, - /* Set/get parameters */ - LKBT51_CMD_GET_MODULE_INFO = 0x40, - LKBT51_CMD_SET_CONFIG = 0x41, - LKBT51_CMD_GET_CONFIG = 0x42, - LKBT51_CMD_SET_BDA = 0x43, - LKBT51_CMD_GET_BDA = 0x44, - LKBT51_CMD_SET_NAME = 0x45, - LKBT51_CMD_GET_NAME = 0x46, - LKBT51_CMD_WRTE_CSTM_DATA = 0x49, - /* DFU */ - LKBT51_CMD_GET_DFU_VER = 0x60, - LKBT51_CMD_HAND_SHAKE_TOKEN = 0x61, - LKBT51_CMD_START_DFU = 0x62, - LKBT51_CMD_SEND_FW_DATA = 0x63, - LKBT51_CMD_VERIFY_CRC32 = 0x64, - LKBT51_CMD_SWITCH_FW = 0x65, - /* Factory test */ - LKBT51_CMD_FACTORY_RESET = 0x71, - LKBT51_CMD_IO_TEST = 0x72, - LKBT51_CMD_RADIO_TEST = 0x73, - /* Event */ - LKBT51_EVT_LKBT51_CMD_RECEIVED = 0xA1, - LKBT51_EVT_OTA_RSP = 0xA3, - LKBT51_CONNECTION_EVT_ACK = 0xA4, -}; - -enum { - LKBT51_EVT_ACK = 0xA1, - LKBT51_EVT_QUERY_RSP = 0xA2, - LKBT51_EVT_RESET = 0xB0, - LKBT51_EVT_LE_CONNECTION = 0xB1, - LKBT51_EVT_HOST_TYPE = 0xB2, - LKBT51_EVT_CONNECTION = 0xB3, - LKBT51_EVT_HID_EVENT = 0xB4, - LKBT51_EVT_BATTERY = 0xB5, -}; - -enum { - LKBT51_CONNECTED = 0x20, - LKBT51_DISCOVERABLE = 0x21, - LKBT51_RECONNECTING = 0x22, - LKBT51_DISCONNECTED = 0x23, - LKBT51_PINCODE_ENTRY = 0x24, - LKBT51_EXIT_PINCODE_ENTRY = 0x25, - LKBT51_SLEEP = 0x26 -}; - -enum { - ACK_SUCCESS = 0x00, - ACK_CHECKSUM_ERROR, - ACK_FIFO_HALF_WARNING, - ACK_FIFO_FULL_ERROR, -}; - -enum{ - LK_EVT_MSK_CONNECTION = 0x01 << 0, - LK_EVT_MSK_LED = 0x01 << 1, - LK_EVT_MSK_BATT = 0x01 << 2, - LK_EVT_MSK_RESET = 0x01 << 3, - LK_EVT_MSK_RPT_INTERVAL = 0x01 << 4, - LK_EVT_MSK_MD = 0x01 << 7, -}; - -// clang-format on -static uint8_t payload[PACKET_MAX_LEN]; -static uint8_t reg_offset = 0xFF; -static uint8_t expect_len = 22; -static uint16_t connection_interval = 1; -static uint32_t wake_time; -static uint32_t factory_reset = 0; - -// clang-format off -wt_func_t wireless_transport = { - lkbt51_init, - lkbt51_connect, - lkbt51_become_discoverable, - lkbt51_disconnect, - lkbt51_send_keyboard, - lkbt51_send_nkro, - lkbt51_send_consumer, - lkbt51_send_system, - lkbt51_send_mouse, - lkbt51_update_bat_lvl, - lkbt51_task -}; -// clang-format on - -#if defined(MCU_STM32) -/* Init SPI */ -const SPIConfig spicfg = { - .circular = false, - .slave = false, - .data_cb = NULL, - .error_cb = NULL, - .ssport = PAL_PORT(BLUETOOTH_INT_OUTPUT_PIN), - .sspad = PAL_PAD(BLUETOOTH_INT_OUTPUT_PIN), - .cr1 = SPI_CR1_MSTR | SPI_CR1_BR_1 | SPI_CR1_BR_0, - .cr2 = 0U, -}; -#endif - -#if defined(WB32F3G71xx) -/* Init SPI */ -const SPIConfig spicfg = { - .ssport = PAL_PORT(BLUETOOTH_INT_OUTPUT_PIN), - .sspad = PAL_PAD(BLUETOOTH_INT_OUTPUT_PIN), - .SPI_CPOL = 0U, - .SPI_CPHA = 0U, - .SPI_BaudRatePrescaler = 32U, -}; -#endif - -void lkbt51_init(bool wakeup_from_low_power_mode) { -#ifdef LKBT51_RESET_PIN - if (!wakeup_from_low_power_mode) { - setPinOutput(LKBT51_RESET_PIN); - writePinLow(LKBT51_RESET_PIN); - wait_ms(1); - writePinHigh(LKBT51_RESET_PIN); - } -#endif - -#if (HAL_USE_SPI == TRUE) - palSetLineMode(SPI_SCK_PIN, PAL_MODE_ALTERNATE(SPI_CLK_PAL_MODE)); - palSetLineMode(SPI_MISO_PIN, PAL_MODE_ALTERNATE(SPI_MISO_PAL_MODE)); - palSetLineMode(SPI_MOSI_PIN, PAL_MODE_ALTERNATE(SPI_MOSI_PAL_MODE)); - - if (WT_DRIVER.state == SPI_UNINIT) { - if (wakeup_from_low_power_mode) { - spiInit(); - return; - } - - spiInit(); - } -#endif - - setPinOutput(BLUETOOTH_INT_OUTPUT_PIN); - writePinHigh(BLUETOOTH_INT_OUTPUT_PIN); - - setPinInputHigh(LKBT51_INT_INPUT_PIN); -} - -static inline void lkbt51_wake(void) { - if (timer_elapsed32(wake_time) > 3000) { - wake_time = timer_read32(); - - palWriteLine(BLUETOOTH_INT_OUTPUT_PIN, 0); - wait_ms(10); - palWriteLine(BLUETOOTH_INT_OUTPUT_PIN, 1); - wait_ms(300); - } -} - -void lkbt51_send_protocol_ver(uint16_t ver) { - uint8_t pkt[PACKET_MAX_LEN] = {0}; - memset(pkt, 0, PACKET_MAX_LEN); - - uint8_t i = 0; - - pkt[i++] = 0x84; - pkt[i++] = 0x7e; - pkt[i++] = 0x00; - pkt[i++] = 0x00; - pkt[i++] = 0xAA; - pkt[i++] = 0x54; - pkt[i++] = ver & 0xFF; - pkt[i++] = (ver >> 8) & 0xFF; - pkt[i++] = (uint8_t)(~0x54); - pkt[i++] = (uint8_t)(~0xAA); - -#if HAL_USE_SPI - expect_len = 10; - spiStart(&WT_DRIVER, &spicfg); - spiSelect(&WT_DRIVER); - spiSend(&WT_DRIVER, i, pkt); - spiUnselectI(&WT_DRIVER); - spiStop(&WT_DRIVER); -#endif -} - -void lkbt51_send_cmd(uint8_t* payload, uint8_t len, bool ack_enable, bool retry) { - static uint8_t sn = 0; - uint8_t i; - uint8_t pkt[PACKET_MAX_LEN] = {0}; - memset(pkt, 0, PACKET_MAX_LEN); - - if (!retry) ++sn; - if (sn == 0) ++sn; - - uint16_t checksum = 0; - for (i = 0; i < len; i++) - checksum += payload[i]; - - i = 0; - pkt[i++] = 0x84; - pkt[i++] = 0x7e; - pkt[i++] = 0x00; - pkt[i++] = 0x00; - pkt[i++] = 0xAA; - pkt[i++] = ack_enable ? 0x56 : 0x55; - pkt[i++] = len + 2; - pkt[i++] = ~(len + 2) & 0xFF; - pkt[i++] = sn; - - memcpy(pkt + i, payload, len); - i += len; - pkt[i++] = checksum & 0xFF; - pkt[i++] = (checksum >> 8) & 0xFF; -#if HAL_USE_SPI - if ((payload[0] & 0xF0) == 0x60) - expect_len = 64; - else - expect_len = 64; - - spiStart(&WT_DRIVER, &spicfg); - spiSelect(&WT_DRIVER); - spiSend(&WT_DRIVER, i, pkt); - spiUnselectI(&WT_DRIVER); - spiStop(&WT_DRIVER); -#endif -} - -void lkbt51_read(uint8_t* payload, uint8_t len) { - uint8_t i; - uint8_t pkt[PACKET_MAX_LEN] = {0}; - memset(pkt, 0, PACKET_MAX_LEN); - - i = 0; - pkt[i++] = 0x84; - pkt[i++] = 0x7f; - pkt[i++] = 0x00; - pkt[i++] = 0x80; - - i += len; - -#if HAL_USE_SPI - spiStart(&WT_DRIVER, &spicfg); - spiSelect(&WT_DRIVER); - spiExchange(&WT_DRIVER, i, pkt, payload); - spiUnselect(&WT_DRIVER); - spiStop(&WT_DRIVER); -#endif -} - -void lkbt51_send_keyboard(uint8_t* report) { - uint8_t i = 0; - memset(payload, 0, PACKET_MAX_LEN); - - payload[i++] = LKBT51_CMD_SEND_KB; - memcpy(payload + i, report, 8); - i += 8; - - lkbt51_send_cmd(payload, i, true, false); -} - -void lkbt51_send_nkro(uint8_t* report) { - uint8_t i = 0; - memset(payload, 0, PACKET_MAX_LEN); - - payload[i++] = LKBT51_CMD_SEND_KB_NKRO; - memcpy(payload + i, report, 20); // NKRO report lenght is limited to 20 bytes - i += 20; - - lkbt51_send_cmd(payload, i, true, false); -} - -void lkbt51_send_consumer(uint16_t report) { - uint8_t i = 0; - memset(payload, 0, PACKET_MAX_LEN); - - payload[i++] = LKBT51_CMD_SEND_CONSUMER; - payload[i++] = report & 0xFF; - payload[i++] = ((report) >> 8) & 0xFF; - i += 4; // QMK doesn't send multiple consumer reports, just skip 2nd and 3rd consumer reports - - lkbt51_send_cmd(payload, i, true, false); -} - -void lkbt51_send_system(uint16_t report) { - uint8_t hid_usage = report & 0xFF; - - if (hid_usage < 0x81 || hid_usage > 0x83) return; - - uint8_t i = 0; - memset(payload, 0, PACKET_MAX_LEN); - - payload[i++] = LKBT51_CMD_SEND_SYSTEM; - payload[i++] = 0x01 << (hid_usage - 0x81); - - lkbt51_send_cmd(payload, i, true, false); -} - -void lkbt51_send_mouse(uint8_t* report) { - uint8_t i = 0; - memset(payload, 0, PACKET_MAX_LEN); - - payload[i++] = LKBT51_CMD_SEND_MOUSE; // Cmd type - payload[i++] = report[1]; // Button - payload[i++] = report[2]; // X - payload[i++] = (report[2] & 0x80) ? 0xff : 0x00; // lkbt51 use 16bit report, set high byte - payload[i++] = report[3]; // Y - payload[i++] = (report[3] & 0x80) ? 0xff : 0x00; // lkbt51 use 16bit report, set high byte - payload[i++] = report[4]; // V wheel - payload[i++] = report[5]; // H wheel - - lkbt51_send_cmd(payload, i, false, false); -} - -/* Send ack to connection event, wireless module will retry 2 times if no ack received */ -void lkbt51_send_conn_evt_ack(void) { - uint8_t i = 0; - memset(payload, 0, PACKET_MAX_LEN); - - payload[i++] = LKBT51_CONNECTION_EVT_ACK; - - lkbt51_send_cmd(payload, i, false, false); -} - -void lkbt51_become_discoverable(uint8_t host_idx, void* param) { - uint8_t i = 0; - memset(payload, 0, PACKET_MAX_LEN); - - pairing_param_t default_pairing_param = {0, 0, PAIRING_MODE_LESC_OR_SSP, BT_MODE_CLASSIC, 0, NULL}; - - if (param == NULL) { - param = &default_pairing_param; - } - pairing_param_t* p = (pairing_param_t*)param; - - payload[i++] = LKBT51_CMD_PAIRING; // Cmd type - payload[i++] = host_idx; // Host Index - payload[i++] = p->timeout & 0xFF; // Timeout - payload[i++] = (p->timeout >> 8) & 0xFF; - payload[i++] = p->pairingMode; - payload[i++] = p->BRorLE; // BR/LE - payload[i++] = p->txPower; // LE TX POWER - if (p->leName) { - memcpy(&payload[i], p->leName, strlen(p->leName)); - i += strlen(p->leName); - } - - lkbt51_wake(); - lkbt51_send_cmd(payload, i, true, false); -} - -/* Timeout : 2 ~ 255 seconds */ -void lkbt51_connect(uint8_t hostIndex, uint16_t timeout) { - uint8_t i = 0; - memset(payload, 0, PACKET_MAX_LEN); - - payload[i++] = LKBT51_CMD_CONNECT; - payload[i++] = hostIndex; // Host index - payload[i++] = timeout & 0xFF; // Timeout - payload[i++] = (timeout >> 8) & 0xFF; - - lkbt51_wake(); - lkbt51_send_cmd(payload, i, true, false); -} - -void lkbt51_disconnect(void) { - uint8_t i = 0; - memset(payload, 0, PACKET_MAX_LEN); - - payload[i++] = LKBT51_CMD_DISCONNECT; - payload[i++] = 0; // Sleep mode - - if (WT_DRIVER.state != SPI_READY) spiStart(&WT_DRIVER, &spicfg); - - wait_ms(30); - // spiUnselect(&SPID1); - wait_ms(70); - - lkbt51_send_cmd(payload, i, true, false); -} - -void lkbt51_switch_host(uint8_t hostIndex) { - uint8_t i = 0; - memset(payload, 0, PACKET_MAX_LEN); - - payload[i++] = LKBT51_CMD_SWITCH_HOST; - payload[i++] = hostIndex; - - lkbt51_send_cmd(payload, i, true, false); -} - -void lkbt51_read_state_reg(uint8_t reg, uint8_t len) { - uint8_t i = 0; - memset(payload, 0, PACKET_MAX_LEN); - - payload[i++] = LKBT51_CMD_READ_STATE_REG; - payload[i++] = reg_offset = reg; - payload[i++] = len; - - // TODO - lkbt51_send_cmd(payload, i, false, false); -} - -void lkbt51_update_bat_lvl(uint8_t bat_lvl) { - uint8_t i = 0; - memset(payload, 0, PACKET_MAX_LEN); - - payload[i++] = LKBT51_CMD_UPDATE_BAT_LVL; - payload[i++] = bat_lvl; - lkbt51_send_cmd(payload, i, false, false); -} - -void lkbt51_update_bat_state(uint8_t bat_state) { - uint8_t i = 0; - memset(payload, 0, PACKET_MAX_LEN); - - payload[i++] = LKBT51_CMD_UPDATE_BAT_STATE; - payload[i++] = bat_state; - lkbt51_send_cmd(payload, i, false, false); -} - -void lkbt51_get_info(module_info_t* info) { - uint8_t i = 0; - memset(payload, 0, PACKET_MAX_LEN); - - payload[i++] = LKBT51_CMD_GET_MODULE_INFO; - lkbt51_send_cmd(payload, i, false, false); -} - -void lkbt51_set_param(module_param_t* param) { - uint8_t i = 0; - memset(payload, 0, PACKET_MAX_LEN); - - payload[i++] = LKBT51_CMD_SET_CONFIG; - memcpy(payload + i, param, sizeof(module_param_t)); - i += sizeof(module_param_t); - - lkbt51_send_cmd(payload, i, false, false); -} - -void lkbt51_get_param(module_param_t* param) { - uint8_t i = 0; - memset(payload, 0, PACKET_MAX_LEN); - - payload[i++] = LKBT51_CMD_GET_CONFIG; - - lkbt51_send_cmd(payload, i, false, false); -} - -void lkbt51_set_local_name(const char* name) { - uint8_t i = 0; - uint8_t len = strlen(name); - memset(payload, 0, PACKET_MAX_LEN); - - payload[i++] = LKBT51_CMD_SET_NAME; - memcpy(payload + i, name, len); - i += len; - lkbt51_send_cmd(payload, i, false, false); -} - -void lkbt51_get_local_name(void) { - uint8_t i = 0; - memset(payload, 0, PACKET_MAX_LEN); - - payload[i++] = LKBT51_CMD_GET_NAME; - - lkbt51_send_cmd(payload, i, false, false); -} - -void lkbt51_factory_reset(uint8_t p2p4g_clr_msk) { - uint8_t i = 0; - memset(payload, 0, PACKET_MAX_LEN); - - payload[i++] = LKBT51_CMD_FACTORY_RESET; - payload[i++] = p2p4g_clr_msk; - - lkbt51_wake(); - lkbt51_send_cmd(payload, i, false, false); - factory_reset = timer_read32(); -} - -void lkbt51_int_pin_test(bool enable) { - uint8_t i = 0; - memset(payload, 0, PACKET_MAX_LEN); - payload[i++] = LKBT51_CMD_IO_TEST; - payload[i++] = enable; - - lkbt51_send_cmd(payload, i, false, false); -} - -void lkbt51_radio_test(uint8_t channel) { - uint8_t i = 0; - memset(payload, 0, PACKET_MAX_LEN); - payload[i++] = LKBT51_CMD_RADIO_TEST; - payload[i++] = channel; - payload[i++] = 0; - - lkbt51_send_cmd(payload, i, false, false); -} - -bool lkbt51_read_customize_data(uint8_t* data, uint8_t len) { - uint8_t i; - uint8_t buf[20] = {0}; - - i = 0; - buf[i++] = 0x84; - buf[i++] = 0x7a; - buf[i++] = 0x00; - buf[i++] = 0x80; - -#if HAL_USE_SPI - spiStart(&WT_DRIVER, &spicfg); - spiSelect(&WT_DRIVER); - spiExchange(&WT_DRIVER, 20, buf, payload); - uint16_t state = buf[5] | (buf[6] << 8); - if (state == 0x9527) spiExchange(&WT_DRIVER, len, data, payload); - spiUnselect(&WT_DRIVER); - spiStop(&WT_DRIVER); -#endif - - return true; -} - -void lkbt51_write_customize_data(uint8_t* data, uint8_t len) { - uint8_t i; - uint8_t pkt[PACKET_MAX_LEN] = {0}; - - i = 0; - pkt[i++] = 0x84; - pkt[i++] = 0x7a; - pkt[i++] = 0x00; - pkt[i++] = 0x00; - -#if HAL_USE_SPI - spiStart(&WT_DRIVER, &spicfg); - spiSelect(&WT_DRIVER); - spiSend(&WT_DRIVER, i, pkt); - spiSend(&WT_DRIVER, len, data); - spiUnselectI(&WT_DRIVER); - spiStop(&WT_DRIVER); -#endif - - i = 0; - memset(payload, 0, PACKET_MAX_LEN); - payload[i++] = LKBT51_CMD_WRTE_CSTM_DATA; - - lkbt51_send_cmd(payload, i, false, false); -} -#ifdef RAW_ENABLE -void lkbt51_dfu_tx(uint8_t rsp, uint8_t* data, uint8_t len, uint8_t sn) { - uint16_t checksum = 0; - uint8_t buf[RAW_EPSIZE] = {0}; - uint8_t i = 0; - - buf[i++] = 0x03; - buf[i++] = 0xAA; - buf[i++] = 0x57; - buf[i++] = len; - buf[i++] = ~len; - buf[i++] = sn; - buf[i++] = rsp; - memcpy(&buf[i], data, len); - i += len; - - for (uint8_t k = 0; k < i; k++) - checksum += buf[i]; - - raw_hid_send(buf, RAW_EPSIZE); - - if (len > 25) { - i = 0; - memset(buf, 0, RAW_EPSIZE); - buf[i++] = 0x03; - memcpy(&buf[i], data + 25, len - 25); - i = i + len - 25; - raw_hid_send(buf, RAW_EPSIZE); - } -} -#endif -void lkbt51_dfu_rx(uint8_t* data, uint8_t length) { - if (data[0] == 0xAA && (data[1] == 0x55 || data[1] == 0x56) && data[2] == (~data[3] & 0xFF)) { - uint16_t checksum = 0; - uint8_t payload_len = data[2]; - - /* Check payload_len validity */ - if (payload_len > RAW_EPSIZE - PACKECT_HEADER_LEN) return; - - uint8_t* payload = &data[PACKECT_HEADER_LEN]; - - for (uint8_t i = 0; i < payload_len - 2; i++) { - checksum += payload[i]; - } - - /* Verify checksum */ - if ((checksum & 0xFF) != payload[payload_len - 2] || checksum >> 8 != payload[payload_len - 1]) return; - static uint8_t sn = 0; - - bool retry = true; - if (sn != data[4]) { - sn = data[4]; - retry = false; - } - - if ((payload[0] & 0xF0) == 0x60) { - lkbt51_wake(); - lkbt51_send_cmd(payload, payload_len - 2, data[1] == 0x56, retry); - } - } -} - -static void ack_handler(uint8_t* data, uint8_t len) { - switch (data[1]) { - case LKBT51_CMD_SEND_KB: - case LKBT51_CMD_SEND_KB_NKRO: - case LKBT51_CMD_SEND_CONSUMER: - case LKBT51_CMD_SEND_SYSTEM: - case LKBT51_CMD_SEND_MOUSE: - switch (data[2]) { - case ACK_SUCCESS: - report_buffer_set_retry(0); - report_buffer_set_inverval(connection_interval); - break; - case ACK_FIFO_HALF_WARNING: - report_buffer_set_retry(0); - report_buffer_set_inverval(connection_interval + 5); - break; - case ACK_FIFO_FULL_ERROR: - report_buffer_set_inverval(connection_interval + 10); - break; - } - break; - default: - break; - } -} - -static void query_rsp_handler(uint8_t* data, uint8_t len) { - if (data[2]) return; - - switch (data[1]) { - case LKBT51_CMD_IO_TEST: - factory_test_send(data, len); - break; - default: - break; - } -} - -static void lkbt51_event_handler(uint8_t evt_type, uint8_t* data, uint8_t len, uint8_t sn) { - wireless_event_t event = {0}; - - switch (evt_type) { - case LKBT51_EVT_ACK: - ack_handler(data, len); - break; - case LKBT51_EVT_RESET: - kc_printf("LKBT51_EVT_RESET\n"); - event.evt_type = EVT_RESET; - event.params.reason = data[0]; - break; - case LKBT51_EVT_LE_CONNECTION: - kc_printf("LKBT51_EVT_LE_CONNECTION\n"); - break; - case LKBT51_EVT_HOST_TYPE: - kc_printf("LKBT51_EVT_HOST_TYPE\n"); - break; - case LKBT51_EVT_HID_EVENT: - kc_printf("LKBT51_EVT_HID_EVENT\n"); - event.evt_type = EVT_HID_INDICATOR; - event.params.led = data[0]; - break; - case LKBT51_EVT_QUERY_RSP: - kc_printf("LKBT51_EVT_QUERY_RSP\n\r"); - query_rsp_handler(data, len); - break; - case LKBT51_EVT_OTA_RSP: -#ifdef RAW_ENABLE - kc_printf("LKBT51_EVT_OTA_RSP\n"); - lkbt51_dfu_tx(LKBT51_EVT_OTA_RSP, data, len, sn); -#endif - break; - default: - kc_printf("Unknown event!!!\n"); - break; - } - - if (event.evt_type) wireless_event_enqueue(event); -} - -void lkbt51_task(void) { -#define VALID_DATA_START_INDEX 4 -#define BUFFER_SIZE 64 - - static bool wait_for_new_pkt = true; - static uint8_t len = 0xff; - static uint8_t sn = 0; - - if (readPin(LKBT51_INT_INPUT_PIN) == 0) { - uint8_t buf[BUFFER_SIZE] = {0}; - lkbt51_read(buf, expect_len); - - uint8_t* pbuf = buf + VALID_DATA_START_INDEX; - - if (pbuf[0] == 0xAA && pbuf[1] == 0x54 && pbuf[4] == (uint8_t)(~0x54) && pbuf[5] == (uint8_t)(~0xAA)) { - uint16_t protol_ver = pbuf[3] << 8 | pbuf[2]; - kc_printf("protol_ver: %x\n\r", protol_ver); - (void)protol_ver; - } else if (pbuf[0] == 0xAA) { - wireless_event_t event = {0}; - uint8_t evt_mask = pbuf[1]; - - if (evt_mask & LK_EVT_MSK_RESET) { - event.evt_type = EVT_RESET; - event.params.reason = pbuf[2]; - wireless_event_enqueue(event); - } - - if (evt_mask & LK_EVT_MSK_CONNECTION) { - lkbt51_send_conn_evt_ack(); - switch (pbuf[2]) { - case LKBT51_CONNECTED: - event.evt_type = EVT_CONNECTED; - break; - case LKBT51_DISCOVERABLE: - event.evt_type = EVT_DISCOVERABLE; - break; - case LKBT51_RECONNECTING: - event.evt_type = EVT_RECONNECTING; - break; - case LKBT51_DISCONNECTED: - event.evt_type = EVT_DISCONNECTED; - if (factory_reset && timer_elapsed32(factory_reset) < 3000) { - factory_reset = 0; - event.data = 1; - } - break; - case LKBT51_PINCODE_ENTRY: - event.evt_type = EVT_BT_PINCODE_ENTRY; - break; - case LKBT51_EXIT_PINCODE_ENTRY: - event.evt_type = EVT_EXIT_BT_PINCODE_ENTRY; - break; - case LKBT51_SLEEP: - event.evt_type = EVT_SLEEP; - break; - } - event.params.hostIndex = pbuf[3]; - - wireless_event_enqueue(event); - } - - if (evt_mask & LK_EVT_MSK_LED) { - memset(&event, 0, sizeof(event)); - event.evt_type = EVT_HID_INDICATOR; - event.params.led = pbuf[4]; - wireless_event_enqueue(event); - } - - if (evt_mask & LK_EVT_MSK_RPT_INTERVAL) { - uint32_t interval; - if (pbuf[8] & 0x80) { - interval = (pbuf[8] & 0x7F) * 1250; - } else { - interval = (pbuf[8] & 0x7F) * 125; - } - - connection_interval = interval / 1000; - if (connection_interval > 7) connection_interval /= 3; - - memset(&event, 0, sizeof(event)); - event.evt_type = EVT_CONECTION_INTERVAL; - event.params.interval = connection_interval; - wireless_event_enqueue(event); - } - - if (evt_mask & LK_EVT_MSK_BATT) { - battery_calculate_voltage(true, pbuf[6] << 8 | pbuf[5]); - } - } - - pbuf = buf; - if (wait_for_new_pkt) { - for (uint8_t i = 10; i < BUFFER_SIZE - 5; i++) { - if (buf[i] == 0xAA && buf[i + 1] == 0x57 // Packet Head - && (~buf[i + 2] & 0xFF) == buf[i + 3]) { // Check wheather len is valid - len = buf[i + 2]; - sn = buf[i + 4]; - pbuf = &buf[i + 5]; - wait_for_new_pkt = false; - } - } - } - - if (!wait_for_new_pkt && BUFFER_SIZE - 5 >= len) { - wait_for_new_pkt = true; - - uint16_t checksum = 0; - for (int i = 0; i < len - 2; i++) { - checksum += pbuf[i]; - } - - if ((checksum & 0xff) == pbuf[len - 2] && ((checksum >> 8) & 0xff) == pbuf[len - 1]) { - lkbt51_event_handler(pbuf[0], pbuf + 1, len - 3, sn); - } else { - // TODO: Error handle - } - } - } -} diff --git a/keyboards/lemokey/common/wireless/lkbt51.h b/keyboards/lemokey/common/wireless/lkbt51.h deleted file mode 100644 index ca5bcdff9a..0000000000 --- a/keyboards/lemokey/common/wireless/lkbt51.h +++ /dev/null @@ -1,136 +0,0 @@ -/* Copyright 2022~2024 @ 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 . - */ - -#pragma once - -#include "stdint.h" -#include "hal.h" -#include "config.h" - -// Error checking -#if HAL_USE_SPI == FALSE -# error "Please enable SPI to use LKBT51" -#endif - -#if defined(WB32F3G71xx) -# ifndef WT_DRIVER -# define WT_DRIVER SPIDQ -# endif -#endif - -#if defined(MCU_STM32) -# ifndef WT_DRIVER -# define WT_DRIVER SPID1 -# endif -#endif - -#define PACKECT_HEADER_LEN 5 -#define BDA_LEN 6 -#define PACKET_MAX_LEN 64 -#define P24G_INDEX 24 - -enum { - PAIRING_MODE_DEFAULT = 0x00, - PAIRING_MODE_JUST_WORK, - PAIRING_MODE_PASSKEY_ENTRY, - PAIRING_MODE_LESC_OR_SSP, - PAIRING_MODE_INVALID, -}; - -enum { - BT_MODE_DEFAUL, - BT_MODE_CLASSIC, - BT_MODE_LE, - BT_MODE_INVALID, -}; - -typedef struct { - uint8_t hostIndex; - uint16_t timeout; /* Pairing timeout, valid value range from 30 to 3600 seconds, 0 for default */ - uint8_t pairingMode; /* 0: default, 1: Just Works, 2: Passkey Entry */ - uint8_t BRorLE; /* Only available for dual mode module. Keep 0 for single mode module */ - uint8_t txPower; /* Only available for BLE module */ - const char* leName; /* Only available for BLE module */ -} pairing_param_t; - -typedef struct { - uint8_t type; - uint16_t full_votage; - uint16_t empty_voltage; - uint16_t shutdown_voltage; -} battery_param_t; - -typedef struct { - uint8_t model_name[11]; - uint8_t mode; - uint8_t bluetooth_version; - uint8_t firmware_version[11]; - uint8_t hardware_version[11]; - uint16_t cmd_set_verson; -} __attribute__((packed)) module_info_t; - -typedef struct { - uint8_t event_mode; /* Must be 0x02 */ - uint16_t connected_idle_timeout; - uint16_t pairing_timeout; /* Range: 30 ~ 3600 second, 0 for default */ - uint8_t pairing_mode; /* 0: default, 1: Just Works, 2: Passkey Entry */ - uint16_t reconnect_timeout; /* 0: default, 0xFF: Unlimited time, 2 ~ 254 seconds */ - uint8_t report_rate; /* 90 or 133 */ - uint8_t rsvd1; - uint8_t rsvd2; - uint8_t vendor_id_source; /* 0: From Bluetooth SIG, 1: From USB-IF */ - uint16_t verndor_id; /* No effect, the vendor ID is 0x362D*/ - uint16_t product_id; - /* Below parametes is only available for BLE module */ - uint16_t le_connection_interval_min; - uint16_t le_connection_interval_max; - uint16_t le_connection_interval_timeout; -} __attribute__((packed)) module_param_t; - -void lkbt51_init(bool wakeup_from_low_power_mode); -void lkbt51_send_protocol_ver(uint16_t ver); - -void lkbt51_send_cmd(uint8_t* payload, uint8_t len, bool ack_enable, bool retry); - -void lkbt51_send_keyboard(uint8_t* report); -void lkbt51_send_nkro(uint8_t* report); -void lkbt51_send_consumer(uint16_t report); -void lkbt51_send_system(uint16_t report); -void lkbt51_send_mouse(uint8_t* report); - -void lkbt51_become_discoverable(uint8_t host_idx, void* param); -void lkbt51_connect(uint8_t hostIndex, uint16_t timeout); -void lkbt51_disconnect(void); -void lkbt51_switch_host(uint8_t hostIndex); -void lkbt51_read_state_reg(uint8_t reg, uint8_t len); - -void lkbt51_update_bat_lvl(uint8_t bat_lvl); -void lkbt51_update_bat_state(uint8_t bat_state); - -void lkbt51_get_info(module_info_t* info); -void lkbt51_set_param(module_param_t* param); -void lkbt51_get_param(module_param_t* param); -void lkbt51_set_local_name(const char* name); -void lkbt51_get_local_name(void); - -void lkbt51_factory_reset(uint8_t p2p4g_clr_msk); -void lkbt51_int_pin_test(bool enable); -void lkbt51_dfu_rx(uint8_t* data, uint8_t length); -void lkbt51_radio_test(uint8_t channel); -void lkbt51_write_customize_data(uint8_t* data, uint8_t len); -bool lkbt51_read_customize_data(uint8_t* data, uint8_t len); - -void lkbt51_task(void); diff --git a/keyboards/lemokey/common/wireless/lpm.c b/keyboards/lemokey/common/wireless/lpm.c deleted file mode 100644 index 6334cf22d3..0000000000 --- a/keyboards/lemokey/common/wireless/lpm.c +++ /dev/null @@ -1,316 +0,0 @@ -/* Copyright 2022~2024 @ lokher (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 . - */ - -/****************************************************************************** - * - * Filename: lpm.c - * - * Description: Contains low power mode implementation - * - ******************************************************************************/ - -#include "quantum.h" -#if defined(PROTOCOL_CHIBIOS) -# include -#endif -#include "debounce.h" -#include "wireless.h" -#include "indicator.h" -#include "lpm.h" -#include "transport.h" -#include "battery.h" -#include "bat_level_animation.h" -#include "report_buffer.h" -#include "lemokey_common.h" - -extern matrix_row_t matrix[MATRIX_ROWS]; -extern wt_func_t wireless_transport; - -static uint32_t lpm_timer_buffer; -static bool lpm_time_up = false; -#ifndef OPTICAL_SWITCH -static matrix_row_t empty_matrix[MATRIX_ROWS] = {0}; -#endif - -pin_t pins_row[MATRIX_ROWS] = MATRIX_ROW_PINS; -pin_t pins_col[MATRIX_COLS] = MATRIX_COL_PINS; - -__attribute__((weak)) void select_all_cols(void) { - for (uint8_t i = 0; i < MATRIX_COLS; i++) { - setPinOutput(pins_col[i]); - writePinLow(pins_col[i]); - } -} - -void lpm_init(void) { -#ifdef USB_POWER_SENSE_PIN -# if (USB_POWER_CONNECTED_LEVEL == 0) - setPinInputHigh(USB_POWER_SENSE_PIN); -# else - setPinInputLow(USB_POWER_SENSE_PIN); -# endif -#endif - lpm_timer_reset(); -} - -inline void lpm_timer_reset(void) { - lpm_time_up = false; - lpm_timer_buffer = timer_read32(); -} - -void lpm_timer_stop(void) { - lpm_time_up = false; - lpm_timer_buffer = 0; -} - -static inline bool lpm_any_matrix_action(void) { - return memcmp(matrix, empty_matrix, sizeof(empty_matrix)); -} - -__attribute__((weak)) void matrix_enter_low_power(void) { - /* Enable key matrix wake up */ - for (uint8_t x = 0; x < MATRIX_ROWS; x++) { - if (pins_row[x] != NO_PIN) { - palEnableLineEvent(pins_row[x], PAL_EVENT_MODE_BOTH_EDGES); - } - } - - select_all_cols(); -} - -__attribute__((weak)) void matrix_exit_low_power(void) { - /* Disable all wake up pins */ - for (uint8_t x = 0; x < MATRIX_ROWS; x++) { - if (pins_row[x] != NO_PIN) { - palDisableLineEvent(pins_row[x]); - } - } -} - -/* Implement of entering low power mode and wakeup varies per mcu or platform */ - -__attribute__((weak)) void lpm_pre_enter_low_power(void) {} - -__attribute__((weak)) void lpm_enter_low_power_kb(void) {} - -__attribute__((weak)) void lpm_enter_low_power(void) { - if (get_transport() == TRANSPORT_USB && !usb_power_connected()) { -#ifdef RGB_MATRIX_ENABLE - rgb_matrix_set_color_all(0, 0, 0); - rgb_matrix_driver.flush(); - rgb_matrix_driver_shutdown(); -#endif -#ifdef LED_MATRIX_ENABLE - led_matrix_set_value_all(0); - led_matrix_driver.flush(); - led_matrix_driver_shutdown(); -#endif -#ifdef LED_NUM_LOCK_PIN - writePin(LED_NUM_LOCK_PIN, !LED_PIN_ON_STATE); -#endif -#ifdef LED_CAPS_LOCK_PIN - writePin(LED_CAPS_LOCK_PIN, !LED_PIN_ON_STATE); -#endif -#ifdef BAT_LOW_LED_PIN - writePin(BAT_LOW_LED_PIN, !BAT_LOW_LED_PIN_ON_STATE); -#endif -#ifdef BT_INDICATION_LED_PIN_LIST - pin_t bt_led_pins[] = BT_INDICATION_LED_PIN_LIST; - for (uint8_t i = 0; i < sizeof(bt_led_pins) / sizeof(pin_t); i++) - writePin(bt_led_pins[i], !BT_INDICATION_LED_ON_STATE); -#endif - } - -#if defined(KEEP_USB_CONNECTION_IN_WIRELESS_MODE) - /* Usb unit is actived and running, stop and disconnect first */ - usbStop(&USBD1); - usbDisconnectBus(&USBD1); - - /* Isolate USB to save power.*/ - // PWR->CR2 &= ~PWR_CR2_USV; /*PWR_CR2_USV is available on STM32L4x2xx and STM32L4x3xx devices only. */ -#endif - -#if (HAL_USE_SPI == TRUE) - spiStop(&SPI_DRIVER); - palSetLineMode(SPI_SCK_PIN, PAL_MODE_INPUT_PULLDOWN); - palSetLineMode(SPI_MISO_PIN, PAL_MODE_INPUT_PULLDOWN); - palSetLineMode(SPI_MOSI_PIN, PAL_MODE_INPUT_PULLDOWN); -#endif - - palEnableLineEvent(LKBT51_INT_INPUT_PIN, PAL_EVENT_MODE_FALLING_EDGE); -#ifdef USB_POWER_SENSE_PIN - palEnableLineEvent(USB_POWER_SENSE_PIN, PAL_EVENT_MODE_BOTH_EDGES); -#endif -#ifdef P2P4_MODE_SELECT_PIN - palEnableLineEvent(P2P4_MODE_SELECT_PIN, PAL_EVENT_MODE_BOTH_EDGES); -#endif -#ifdef BT_MODE_SELECT_PIN - palEnableLineEvent(BT_MODE_SELECT_PIN, PAL_EVENT_MODE_BOTH_EDGES); -#endif - matrix_enter_low_power(); - -#if defined(DIP_SWITCH_PINS) -# define NUMBER_OF_DIP_SWITCHES (sizeof(dip_switch_pad) / sizeof(pin_t)) - static pin_t dip_switch_pad[] = DIP_SWITCH_PINS; - - for (uint8_t i = 0; i < NUMBER_OF_DIP_SWITCHES; i++) { - setPinInputLow(dip_switch_pad[i]); - } -#endif - battery_stop(); - lpm_enter_low_power_kb(); -} - -__attribute__((weak)) void lpm_post_enter_low_power(void) {} - -__attribute__((weak)) void lpm_standby(pm_t mode) {} - -__attribute__((weak)) void lpm_early_wakeup(void) { - writePinLow(BLUETOOTH_INT_OUTPUT_PIN); -} - -__attribute__((weak)) void lpm_wakeup_init(void) {} - -__attribute__((weak)) void lpm_pre_wakeup(void) { - writePinHigh(BLUETOOTH_INT_OUTPUT_PIN); -} - -__attribute__((weak)) void lpm_wakeup(void) { - matrix_exit_low_power(); - - halInit(); - -#ifdef ENCODER_ENABLE - encoder_cb_init(); -#endif - - if (wireless_transport.init) wireless_transport.init(true); - battery_init(); - - palDisableLineEvent(LKBT51_INT_INPUT_PIN); -#ifdef P2P4_MODE_SELECT_PIN - palDisableLineEvent(P2P4_MODE_SELECT_PIN); -#endif -#ifdef BT_MODE_SELECT_PIN - palDisableLineEvent(BT_MODE_SELECT_PIN); -#endif -#ifdef USB_POWER_SENSE_PIN - palDisableLineEvent(USB_POWER_SENSE_PIN); - -# if defined(KEEP_USB_CONNECTION_IN_WIRELESS_MODE) - if (usb_power_connected() -# ifndef BT_MODE_SELECT_PIN - && (get_transport() == TRANSPORT_USB) -# endif - ) { - usb_event_queue_init(); - init_usb_driver(&USB_DRIVER); - } -# endif - -#endif - -#if defined(DIP_SWITCH_PINS) - dip_switch_init(); - dip_switch_read(true); -#endif - - /* Call debounce_free() to avoiding memory leak of debounce_counters as debounce_init() - invoked in matrix_init() alloc new memory to debounce_counters */ - debounce_free(); - matrix_init(); -} -__attribute__((weak)) void lpm_post_wakeup(void) {} - -__attribute__((weak)) bool usb_power_connected(void) { -#ifdef USB_POWER_SENSE_PIN - return readPin(USB_POWER_SENSE_PIN) == USB_POWER_CONNECTED_LEVEL; -#else - return true; -#endif -} - -__attribute__((weak)) bool lpm_is_kb_idle(void) { - return true; -} - -__attribute__((weak)) bool lpm_set(pm_t mode) { - return false; -} - -__attribute__((weak)) void lpm_peripheral_enter_low_power(void) {} - -__attribute__((weak)) void lpm_peripheral_exit_low_power(void) {} - -bool allow_low_power_mode(pm_t mode) { -#if defined(KEEP_USB_CONNECTION_IN_WIRELESS_MODE) - /* Don't enter low power mode if attached to the host */ - if (mode > PM_SLEEP && usb_power_connected()) return false; -#endif - - if (!lpm_set(mode)) return false; - - return true; -} - -void lpm_task(void) { - bool lpm = false; - if (!lpm_time_up && sync_timer_elapsed32(lpm_timer_buffer) > RUN_MODE_PROCESS_TIME) { - lpm_time_up = true; - lpm_timer_buffer = 0; - } - - if (usb_power_connected() && USBD1.state == USB_STOP) { - usb_event_queue_init(); - init_usb_driver(&USB_DRIVER); - } - - if ((get_transport() & TRANSPORT_WIRELESS) && lpm_time_up && !indicator_is_running() && lpm_is_kb_idle()) { - if ( -#ifdef LED_MATRIX_ENABLE - !led_matrix_is_enabled() || (led_matrix_is_enabled() && led_matrix_is_driver_shutdown()) -#elif defined(RGB_MATRIX_ENABLE) - !rgb_matrix_is_enabled() || (rgb_matrix_is_enabled() && rgb_matrix_is_driver_shutdown()) -#else - !bat_level_animiation_actived() -#endif - ) { - if (!lpm_any_matrix_action()) { - if (allow_low_power_mode(LOW_POWER_MODE)) { - lpm = true; - } - } - } - } - - if (lpm) { - lpm_pre_enter_low_power(); - lpm_enter_low_power(); - lpm_post_enter_low_power(); - - lpm_standby(LOW_POWER_MODE); - lpm_early_wakeup(); - lpm_wakeup_init(); - - lpm_pre_wakeup(); - lpm_wakeup(); - lpm_post_wakeup(); - - lpm_timer_reset(); - report_buffer_init(); - lpm_set(PM_RUN); - } -} diff --git a/keyboards/lemokey/common/wireless/lpm.h b/keyboards/lemokey/common/wireless/lpm.h deleted file mode 100644 index bc7055e215..0000000000 --- a/keyboards/lemokey/common/wireless/lpm.h +++ /dev/null @@ -1,49 +0,0 @@ -/* Copyright 2022~2024 @ lokher (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 . - */ - -#pragma once - -#ifndef RUN_MODE_PROCESS_TIME -# define RUN_MODE_PROCESS_TIME 1000 -#endif - -typedef enum { - PM_RUN, - PM_SLEEP, - PM_STOP, - PM_STANDBY, -} pm_t; - -void lpm_init(void); -void lpm_timer_reset(void); -void lpm_timer_stop(void); -void select_all_cols(void); -void matrix_enter_low_power(void); -void matrix_exit_low_power(void); -void lpm_pre_enter_low_power(void); -void lpm_enter_low_power(void); -void lpm_enter_low_power_kb(void); -void lpm_post_enter_low_power(void) ; -void lpm_standby(pm_t mode); -void lpm_early_wakeup(void); -void lpm_wakeup_init(void); -void lpm_pre_wakeup(void); -void lpm_wakeup(void); -void lpm_post_wakeup(void); -bool usb_power_connected(void); -bool lpm_is_kb_idle(void); -void enter_power_mode(pm_t mode); -void lpm_task(void); diff --git a/keyboards/lemokey/common/wireless/lpm_stm32f401.c b/keyboards/lemokey/common/wireless/lpm_stm32f401.c deleted file mode 100644 index f235d344b2..0000000000 --- a/keyboards/lemokey/common/wireless/lpm_stm32f401.c +++ /dev/null @@ -1,136 +0,0 @@ -/* Copyright 2022~2024 @ lokher (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 . - */ - -/****************************************************************************** - * - * Filename: lpm_stm32f401.c - * - * Description: Contains low power mode implementation - * - ******************************************************************************/ - -#include "quantum.h" -#include -#include "wireless.h" -#include "lpm.h" -#include "lpm_stm32f401.h" -#include "config.h" - -#include "hal.h" - -static pm_t power_mode = PM_RUN; - -void lpm_post_enter_low_power(void) { - /* USB D+/D- */ - palSetLineMode(A12, PAL_MODE_INPUT_PULLDOWN); - palSetLineMode(A11, PAL_MODE_INPUT_PULLDOWN); -} - -void lpm_pre_wakeup(void) { - /* USB D+/D- */ - palSetLineMode(A11, PAL_STM32_OTYPE_PUSHPULL | PAL_STM32_OSPEED_HIGHEST | PAL_STM32_PUPDR_FLOATING | PAL_MODE_ALTERNATE(10U)); - palSetLineMode(A12, PAL_STM32_OTYPE_PUSHPULL | PAL_STM32_OSPEED_HIGHEST | PAL_STM32_PUPDR_FLOATING | PAL_MODE_ALTERNATE(10U)); - - /* SPI */ -#if (HAL_USE_SPI == TRUE) - palSetLineMode(SPI_SCK_PIN, PAL_MODE_ALTERNATE(5)); - palSetLineMode(SPI_MISO_PIN, PAL_MODE_ALTERNATE(5)); - palSetLineMode(SPI_MOSI_PIN, PAL_MODE_ALTERNATE(5)); -#endif -} - -bool lpm_set(pm_t mode) { - bool ret = true; - - switch (mode) { - case PM_SLEEP: - /* Wake source: Any interrupt or event */ - if (power_mode != PM_RUN) - ret = false; - else - SCB->SCR &= ~SCB_SCR_SLEEPDEEP_Msk; - break; - - case PM_STOP: - /* Wake source: Reset pin, all I/Os, BOR, PVD, PVM, RTC, LCD, IWDG, - COMPx, USARTx, LPUART1, I2Cx, LPTIMx, USB, SWPMI */ - if (power_mode != PM_RUN) - ret = false; - else { - SCB->SCR |= SCB_SCR_SLEEPDEEP_Msk; - PWR->CR |= -# if STOP_MODE_MAIN_REGULATOR_LOW_VOLTAGE - PWR_CR_MRLVDS | -# endif -# if STOP_MODE_LOW_POWER_REGULATOR_LOW_VOLTAG - PWR_CR_LPLVDS | -# endif -# if STOP_MODE_FLASH_POWER_DOWN - PWR_CR_FPDS | -# endif -# if STOP_MODE_LOW_POWER_DEEPSLEEP - PWR_CR_LPDS | -# endif - 0; - } - - break; - - case PM_STANDBY: - if (power_mode != PM_RUN) - ret = false; - else { - SCB->SCR |= SCB_SCR_SLEEPDEEP_Msk; - } - break; - - default: - break; - } - power_mode = mode; - - return ret; -} - -void lpm_standby(pm_t mode) { -#if STM32_HSE_ENABLED - /* Switch to HSI */ - RCC->CFGR = (RCC->CFGR & (~STM32_SW_MASK)) | STM32_SW_HSI; - while ((RCC->CFGR & RCC_CFGR_SWS) != (STM32_SW_HSI << 2)) - ; - - /* Set HSE off */ - RCC->CR &= ~RCC_CR_HSEON; - while ((RCC->CR & RCC_CR_HSERDY)) - ; - - /* To avoid power consumption of floating GPIO */ - palSetLineMode(H0, PAL_MODE_INPUT_PULLDOWN); - palSetLineMode(H1, PAL_MODE_INPUT_PULLDOWN); -#endif - - __WFI(); - - SCB->SCR &= ~SCB_SCR_SLEEPDEEP_Msk; -} - -void lpm_wakeup_init(void) { - stm32_clock_init(); -} - -void usb_power_connect(void) {} - -void usb_power_disconnect(void) {} diff --git a/keyboards/lemokey/common/wireless/lpm_stm32f401.h b/keyboards/lemokey/common/wireless/lpm_stm32f401.h deleted file mode 100644 index 7c3e74d278..0000000000 --- a/keyboards/lemokey/common/wireless/lpm_stm32f401.h +++ /dev/null @@ -1,33 +0,0 @@ -/* Copyright 2022~2024 @ lokher (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 . - */ - -#pragma once - -#ifndef STOP_MODE_MAIN_REGULATOR_LOW_VOLTAGE -# define STOP_MODE_MAIN_REGULATOR_LOW_VOLTAGE TRUE -#endif - -#ifndef STOP_MODE_LOW_POWER_REGULATOR_LOW_VOLTAG -# define STOP_MODE_LOW_POWER_REGULATOR_LOW_VOLTAG TRUE -#endif - -#ifndef STOP_MODE_FLASH_POWER_DOWN -# define STOP_MODE_FLASH_POWER_DOWN TRUE -#endif - -#ifndef STOP_MODE_LOW_POWER_DEEPSLEEP -# define STOP_MODE_LOW_POWER_DEEPSLEEP TRUE -#endif diff --git a/keyboards/lemokey/common/wireless/lpm_wb32f3g71.c b/keyboards/lemokey/common/wireless/lpm_wb32f3g71.c deleted file mode 100644 index 12a8a0485e..0000000000 --- a/keyboards/lemokey/common/wireless/lpm_wb32f3g71.c +++ /dev/null @@ -1,135 +0,0 @@ - -/* Copyright 2024 @ lokher (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 . - */ - -#include "quantum.h" -#include "lpm.h" - -bool wakeup_from_lpm; -static pm_t power_mode = PM_RUN; - -static const uint32_t pre_lp_code[] = {553863175u, 554459777u, 1208378049u, 4026624001u, 688390415u, 554227969u, 3204472833u, 1198571264u, 1073807360u, 1073808388u,}; -#define PRE_LP() ((void (*)(void))((unsigned int)(pre_lp_code) | 0x01))() - -static const uint32_t post_lp_code[] = {553863177u, 554459777u, 1208509121u, 51443856u, 4026550535u, 1745485839u, 3489677954u, 536895496u, 673389632u, 1198578684u, 1073807360u, 536866816u, 1073808388u,}; -#define POST_LP() ((void (*)(void))((unsigned int)(post_lp_code) | 0x01))() - -extern void __early_init(void); -extern void matrix_init_pins(void); - -void stop_mode_entry(void); - -void lpm_post_enter_low_power(void) { - /* USB D+/D- */ - palSetLineMode(A12, PAL_MODE_INPUT_PULLUP); // why PAL_MODE_INPUT_PULLUP - palSetLineMode(A11, PAL_MODE_INPUT_PULLDOWN); - - palSetLineMode(DP_PULLUP_CONTROL_PIN, PAL_MODE_INPUT_PULLDOWN); -} - -void lpm_pre_wakeup(void) { - /* USB D+/D- */ - palSetLineMode(A11, PAL_WB32_OTYPE_PUSHPULL | PAL_WB32_OSPEED_HIGH | PAL_WB32_PUPDR_FLOATING | PAL_MODE_ALTERNATE(10U)); - palSetLineMode(A12, PAL_WB32_OTYPE_PUSHPULL | PAL_WB32_OSPEED_HIGH | PAL_WB32_PUPDR_FLOATING | PAL_MODE_ALTERNATE(10U)); - - /* SPI */ -#if (HAL_USE_SPI == TRUE) - palSetLineMode(SPI_SCK_PIN, PAL_MODE_ALTERNATE(5)); - palSetLineMode(SPI_MISO_PIN, PAL_MODE_ALTERNATE(5)); - palSetLineMode(SPI_MOSI_PIN, PAL_MODE_ALTERNATE(5)); -#endif -} - -bool lpm_set(pm_t mode) { - bool ret = true; - - switch (mode) { - case PM_SLEEP: - /* Wake source: Any interrupt or event */ - if (power_mode != PM_RUN) - ret = false; - else - SCB->SCR &= ~SCB_SCR_SLEEPDEEP_Msk; - break; - - case PM_STOP: - if (power_mode != PM_RUN) ret = false; - break; - - case PM_STANDBY: - if (power_mode != PM_RUN) - ret = false; - else { - SCB->SCR |= SCB_SCR_SLEEPDEEP_Msk; - } - break; - - default: - break; - } - power_mode = mode; - - return ret; -} - -void lpm_standby(pm_t mode) { - chSysDisable(); - wb32_set_main_clock_to_mhsi(); - - rtclp_lld_init(); - stop_mode_entry(); - chSysEnable(); -} - -void lpm_wakeup_init(void) { - wakeup_from_lpm = true; - __early_init(); - wakeup_from_lpm = false; -} - -void stop_mode_entry(void) { - EXTI->PR = 0x7FFFF; - for (uint8_t i = 0; i < 8; i++) { - for (uint8_t j = 0; j < 32; j++) { - if (NVIC->ISPR[i] & (0x01UL < j)) { - NVIC->ICPR[i] = (0x01UL < j); - } - } - } - SCB->ICSR |= SCB_ICSR_PENDSTCLR_Msk; // Clear Systick IRQ Pending - - /* Clear all bits except DBP and FCLKSD bit */ - PWR->CR0 &= 0x09U; - - /* STOP LP4 MODE S32KON */ - PWR->CR0 |= 0x3B004U; - PWR->CFGR = 0x3B3; - - PRE_LP(); - - /* Set SLEEPDEEP bit of Cortex System Control Register */ - SCB->SCR |= SCB_SCR_SLEEPDEEP_Msk; - - /* Request Wait For Interrupt */ - __WFI(); - - POST_LP(); - - /* Clear SLEEPDEEP bit of Cortex System Control Register */ - SCB->SCR &= (~SCB_SCR_SLEEPDEEP_Msk); - - lpm_early_wakeup(); -} diff --git a/keyboards/lemokey/common/wireless/report_buffer.c b/keyboards/lemokey/common/wireless/report_buffer.c deleted file mode 100644 index a755aa1b28..0000000000 --- a/keyboards/lemokey/common/wireless/report_buffer.c +++ /dev/null @@ -1,143 +0,0 @@ -/* Copyright 2022~2024 @ lokher (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 . - */ - -#include "quantum.h" -#include "report_buffer.h" -#include "wireless.h" -#include "lpm.h" - -/* The report buffer is mainly used to fix key press lost issue of macro - * when wireless module fifo isn't large enough. The maximun macro - * string length is determined by this queue size, and should be - * REPORT_BUFFER_QUEUE_SIZE devided by 2 since each character is implemented - * by sending a key pressing then a key releasing report. - * Please note that it cosume sizeof(report_buffer_t) * REPORT_BUFFER_QUEUE_SIZE - * bytes RAM, with default setting, used RAM size is - * sizeof(report_buffer_t) * 256 = 34* 256 = 8704 bytes - */ -#ifndef REPORT_BUFFER_QUEUE_SIZE -# define REPORT_BUFFER_QUEUE_SIZE 256 -#endif - -extern wt_func_t wireless_transport; - -/* report_interval value should be less than bluetooth connection interval because - * it takes some time for communicating between mcu and bluetooth module. Carefully - * set this value to feed the bt module so that we don't lost the key report nor lost - * the anchor point of bluetooth interval. The bluetooth connection interval varies - * if BLE is used, invoke report_buffer_set_inverval() to update the value - */ -uint8_t report_interval = DEFAULT_2P4G_REPORT_INVERVAL_MS; - -static uint32_t report_timer_buffer = 0; -uint32_t retry_time_buffer = 0; -report_buffer_t report_buffer_queue[REPORT_BUFFER_QUEUE_SIZE]; -uint16_t report_buffer_queue_head; -uint16_t report_buffer_queue_tail; -report_buffer_t kb_rpt; -uint8_t retry = 0; - -void report_buffer_task(void); - -void report_buffer_init(void) { - // Initialise the report queue - memset(&report_buffer_queue, 0, sizeof(report_buffer_queue)); - report_buffer_queue_head = 0; - report_buffer_queue_tail = 0; - retry = 0; - report_timer_buffer = timer_read32(); -} - -bool report_buffer_enqueue(report_buffer_t *report) { - uint16_t next = (report_buffer_queue_head + 1) % REPORT_BUFFER_QUEUE_SIZE; - if (next == report_buffer_queue_tail) { - return false; - } - - report_buffer_queue[report_buffer_queue_head] = *report; - report_buffer_queue_head = next; - return true; -} - -inline bool report_buffer_dequeue(report_buffer_t *report) { - if (report_buffer_queue_head == report_buffer_queue_tail) { - return false; - } - - *report = report_buffer_queue[report_buffer_queue_tail]; - report_buffer_queue_tail = (report_buffer_queue_tail + 1) % REPORT_BUFFER_QUEUE_SIZE; - return true; -} - -bool report_buffer_is_empty() { - return report_buffer_queue_head == report_buffer_queue_tail; -} - -void report_buffer_update_timer(void) { - report_timer_buffer = timer_read32(); -} - -bool report_buffer_next_inverval(void) { - return timer_elapsed32(report_timer_buffer) > report_interval; -} - -void report_buffer_set_inverval(uint8_t interval) { - report_interval = interval; -} - -uint8_t report_buffer_get_retry(void) { - return retry; -} - -void report_buffer_set_retry(uint8_t times) { - retry = times; -} - -void report_buffer_task(void) { - if (wireless_get_state() == WT_CONNECTED && (!report_buffer_is_empty() || retry) && report_buffer_next_inverval()) { - bool pending_data = false; - - if (!retry) { - if (report_buffer_dequeue(&kb_rpt) && kb_rpt.type != REPORT_TYPE_NONE) { - if (timer_read32() > 2) { - pending_data = true; - retry = RETPORT_RETRY_COUNT; - retry_time_buffer = timer_read32(); - } - } - } else { - if (timer_elapsed32(retry_time_buffer) > 2) { - pending_data = true; - --retry; - retry_time_buffer = timer_read32(); - } - } - - if (pending_data) { -#if defined(NKRO_ENABLE) && defined(WIRELESS_NKRO_ENABLE) - if (kb_rpt.type == REPORT_TYPE_NKRO && wireless_transport.send_nkro) { - wireless_transport.send_nkro(&kb_rpt.nkro.mods); - } else if (kb_rpt.type == REPORT_TYPE_KB && wireless_transport.send_keyboard) - wireless_transport.send_keyboard(&kb_rpt.keyboard.mods); -#else - if (kb_rpt.type == REPORT_TYPE_KB && wireless_transport.send_keyboard) wireless_transport.send_keyboard(&kb_rpt.keyboard.mods); -#endif - if (kb_rpt.type == REPORT_TYPE_CONSUMER && wireless_transport.send_consumer) wireless_transport.send_consumer(kb_rpt.consumer); - report_timer_buffer = timer_read32(); - lpm_timer_reset(); - } - } -} diff --git a/keyboards/lemokey/common/wireless/report_buffer.h b/keyboards/lemokey/common/wireless/report_buffer.h deleted file mode 100644 index d5e8d22a01..0000000000 --- a/keyboards/lemokey/common/wireless/report_buffer.h +++ /dev/null @@ -1,61 +0,0 @@ -/* Copyright 2022~2024 @ lokher (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 . - */ - -#pragma once - -#include "report.h" - -/* Default report interval value */ -#ifndef DEFAULT_BLE_REPORT_INVERVAL_MS -# define DEFAULT_BLE_REPORT_INVERVAL_MS 3 -#endif - -/* Default report interval value */ -#ifndef DEFAULT_2P4G_REPORT_INVERVAL_MS -# define DEFAULT_2P4G_REPORT_INVERVAL_MS 1 -#endif - -/* Default report interval value */ -#ifndef RETPORT_RETRY_COUNT -# define RETPORT_RETRY_COUNT 30 -#endif - -enum { - REPORT_TYPE_NONE, - REPORT_TYPE_KB, - REPORT_TYPE_NKRO, - REPORT_TYPE_CONSUMER, -}; - -typedef struct { - uint8_t type; - union { - report_keyboard_t keyboard; - report_nkro_t nkro; - uint16_t consumer; - }; -} report_buffer_t; - -void report_buffer_init(void); -bool report_buffer_enqueue(report_buffer_t *report); -bool report_buffer_dequeue(report_buffer_t *report); -bool report_buffer_is_empty(void); -void report_buffer_update_timer(void); -bool report_buffer_next_inverval(void); -void report_buffer_set_inverval(uint8_t interval); -uint8_t report_buffer_get_retry(void); -void report_buffer_set_retry(uint8_t times); -void report_buffer_task(void); diff --git a/keyboards/lemokey/common/wireless/rtc_timer.c b/keyboards/lemokey/common/wireless/rtc_timer.c deleted file mode 100644 index ed7c389175..0000000000 --- a/keyboards/lemokey/common/wireless/rtc_timer.c +++ /dev/null @@ -1,41 +0,0 @@ -/* Copyright 2022~2024 @ lokher (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 . - */ - -#include "hal.h" - -#if (HAL_USE_RTC) -# include "rtc_timer.h" - -void rtc_timer_init(void) { - rtc_timer_clear(); -} - -void rtc_timer_clear(void) { - RTCDateTime tm = {0, 0, 0, 0, 0, 0}; - rtcSetTime(&RTCD1, &tm); -} - -uint32_t rtc_timer_read_ms(void) { - RTCDateTime tm; - rtcGetTime(&RTCD1, &tm); - - return tm.millisecond; -} - -uint32_t rtc_timer_elapsed_ms(uint32_t last) { - return TIMER_DIFF_32(rtc_timer_read_ms(), last); -} -#endif diff --git a/keyboards/lemokey/common/wireless/rtc_timer.h b/keyboards/lemokey/common/wireless/rtc_timer.h deleted file mode 100644 index cd7e387d10..0000000000 --- a/keyboards/lemokey/common/wireless/rtc_timer.h +++ /dev/null @@ -1,35 +0,0 @@ -/* Copyright 2022~2024 @ lokher (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 . - */ - -#pragma once - -#include "timer.h" -#include - -#define RTC_MAX_TIME (24 * 3600 * 1000) // Set to 1 day - -#ifdef __cplusplus -extern "C" { -#endif - -void rtc_timer_init(void); -void rtc_timer_clear(void); -uint32_t rtc_timer_read_ms(void); -uint32_t rtc_timer_elapsed_ms(uint32_t last); - -#ifdef __cplusplus -} -#endif diff --git a/keyboards/lemokey/common/wireless/transport.c b/keyboards/lemokey/common/wireless/transport.c deleted file mode 100644 index a5353e42b2..0000000000 --- a/keyboards/lemokey/common/wireless/transport.c +++ /dev/null @@ -1,283 +0,0 @@ -/* Copyright 2022~2024 @ lokher (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 . - */ - -#include "quantum.h" -#include "wireless.h" -#include "indicator.h" -#include "lpm.h" -#include "mousekey.h" -#if defined(PROTOCOL_CHIBIOS) -# include -#endif -#include "transport.h" -#include "lkbt51.h" - -#ifndef REINIT_LED_DRIVER -# define REINIT_LED_DRIVER 0 -#endif - -#if defined(PROTOCOL_CHIBIOS) -extern host_driver_t chibios_driver; -#endif -extern host_driver_t wireless_driver; -extern keymap_config_t keymap_config; -extern wt_func_t wireless_transport; - -static transport_t transport = TRANSPORT_NONE; - -#ifdef NKRO_ENABLE -nkro_t nkro = {false, false}; -#endif - -static void transport_changed(transport_t new_transport); - -__attribute__((weak)) void bt_transport_enable(bool enable) { - if (enable) { - // if (host_get_driver() != &wireless_driver) { - host_set_driver(&wireless_driver); - - /* Disconnect and reconnect to sync the wireless state - * TODO: query wireless state to sync - */ - wireless_disconnect(); - - uint32_t t = timer_read32(); - while (timer_elapsed32(t) < 100) { - wireless_transport.task(); - } - // wireless_connect(); - wireless_connect_ex(30, 0); - // TODO: Clear USB report - //} - } else { - indicator_stop(); - - if (wireless_get_state() == WT_CONNECTED && transport == TRANSPORT_BLUETOOTH) { - report_keyboard_t empty_report = {0}; - wireless_driver.send_keyboard(&empty_report); - } - } -} - -__attribute__((weak)) void p24g_transport_enable(bool enable) { - if (enable) { - // if (host_get_driver() != &wireless_driver) { - host_set_driver(&wireless_driver); - - /* Disconnect and reconnect to sync the wireless state - * TODO: query bluetooth state to sync - */ - wireless_disconnect(); - - uint32_t t = timer_read32(); - while (timer_elapsed32(t) < 100) { - wireless_transport.task(); - } - wireless_connect_ex(P24G_INDEX, 0); - // wireless_connect(); - // TODO: Clear USB report - //} - } else { - indicator_stop(); - - if (wireless_get_state() == WT_CONNECTED && transport == TRANSPORT_P2P4) { - report_keyboard_t empty_report = {0}; - wireless_driver.send_keyboard(&empty_report); - } - } -} - -__attribute__((weak)) void usb_power_connect(void) {} -__attribute__((weak)) void usb_power_disconnect(void) {} - -__attribute__((weak)) void usb_transport_enable(bool enable) { - if (enable) { - if (host_get_driver() != &chibios_driver) { -#if !defined(KEEP_USB_CONNECTION_IN_WIRELESS_MODE) - usb_power_connect(); - usb_start(&USBD1); -#endif - host_set_driver(&chibios_driver); - } - } else { - if (USB_DRIVER.state == USB_ACTIVE) { - report_keyboard_t empty_report = {0}; - chibios_driver.send_keyboard(&empty_report); - } - -#if !defined(KEEP_USB_CONNECTION_IN_WIRELESS_MODE) - usbStop(&USBD1); - usbDisconnectBus(&USBD1); - usb_power_disconnect(); -#endif - } -} -void set_transport(transport_t new_transport) { - if (transport != new_transport) { - indicator_init(); - - if (transport == TRANSPORT_USB || ((transport != TRANSPORT_USB) && wireless_get_state() == WT_CONNECTED)) clear_keyboard(); - - transport = new_transport; - - switch (transport) { - case TRANSPORT_USB: - usb_transport_enable(true); - bt_transport_enable(false); - wait_ms(5); - p24g_transport_enable(false); - wireless_disconnect(); - lpm_timer_stop(); -#ifdef NKRO_ENABLE -# if defined(WIRELESS_NKRO_ENABLE) - nkro.bluetooth = keymap_config.nkro; -# endif - keymap_config.nkro = nkro.usb; -#endif - break; - - case TRANSPORT_BLUETOOTH: - p24g_transport_enable(false); - wait_ms(1); - bt_transport_enable(true); - usb_transport_enable(false); - lpm_timer_reset(); -#if defined(NKRO_ENABLE) - nkro.usb = keymap_config.nkro; -# if defined(WIRELESS_NKRO_ENABLE) - keymap_config.nkro = nkro.bluetooth; -# else - keymap_config.nkro = FALSE; -# endif -#endif - break; - - case TRANSPORT_P2P4: - bt_transport_enable(false); - wait_ms(1); - p24g_transport_enable(true); - usb_transport_enable(false); - lpm_timer_reset(); -#if defined(NKRO_ENABLE) - nkro.usb = keymap_config.nkro; -# if defined(WIRELESS_NKRO_ENABLE) - keymap_config.nkro = nkro.bluetooth; -# else - keymap_config.nkro = FALSE; -# endif -#endif - break; - - default: - break; - } - - transport_changed(transport); - } -} - -transport_t get_transport(void) { - return transport; -} - -#if (REINIT_LED_DRIVER) -/* Changing transport may cause bronw-out reset of led driver - * withoug MCU reset, which lead backlight to not work, - * reinit the led driver workgound this issue */ -static void reinit_led_drvier(void) { - /* Wait circuit to discharge for a while */ - systime_t start = chVTGetSystemTime(); - while (chTimeI2MS(chVTTimeElapsedSinceX(start)) < 100) { - }; - -# ifdef LED_MATRIX_ENABLE - led_matrix_init(); -# endif -# ifdef RGB_MATRIX_ENABLE - rgb_matrix_init(); -# endif -} -#endif - -void transport_changed(transport_t new_transport) { -#if (REINIT_LED_DRIVER) && !defined(TRANSPORT_SOFT_SWITCH_ENABLE) - reinit_led_drvier(); -#endif - -#if defined(RGB_MATRIX_ENABLE) && defined(RGB_MATRIX_TIMEOUT) -# if (RGB_MATRIX_TIMEOUT > 0) - rgb_matrix_disable_timeout_set(RGB_MATRIX_TIMEOUT_INFINITE); - rgb_matrix_disable_time_reset(); -# endif -#endif -#if defined(LED_MATRIX_ENABLE) && defined(LED_MATRIX_TIMEOUT) -# if (LED_MATRIX_TIMEOUT > 0) - led_matrix_disable_timeout_set(LED_MATRIX_TIMEOUT_INFINITE); - led_matrix_disable_time_reset(); -# endif -#endif -} - -void usb_remote_wakeup(void) { - if (USB_DRIVER.state == USB_SUSPENDED) { -#if defined(WB32F3G71xx) - wait_ms(300); - if (!usb_power_connected()) return; -#endif - while (USB_DRIVER.state == USB_SUSPENDED) { - wireless_pre_task(); - if (get_transport() != TRANSPORT_USB) { - suspend_wakeup_init_quantum(); - return; - } - /* Do this in the suspended state */ - suspend_power_down(); // on AVR this deep sleeps for 15ms - /* Remote wakeup */ - if (suspend_wakeup_condition() -#ifdef ENCODER_ENABLE - || encoder_read() -#endif - ) { - usbWakeupHost(&USB_DRIVER); - wait_ms(300); -#ifdef MOUSEKEY_ENABLE - // Wiggle to wakeup - mousekey_on(KC_MS_LEFT); - mousekey_send(); - wait_ms(10); - mousekey_on(KC_MS_RIGHT); - mousekey_send(); - wait_ms(10); - mousekey_off((KC_MS_RIGHT)); - mousekey_send(); -#else - set_mods(0x02); - send_keyboard_report(); - wait_ms(10); - del_mods(0x02); - send_keyboard_report(); -#endif - } - } - /* Woken up */ - // variables has been already cleared by the wakeup hook - send_keyboard_report(); -#ifdef MOUSEKEY_ENABLE - mousekey_send(); -#endif /* MOUSEKEY_ENABLE */ - usb_event_queue_task(); - } -} diff --git a/keyboards/lemokey/common/wireless/transport.h b/keyboards/lemokey/common/wireless/transport.h deleted file mode 100644 index 475fffc958..0000000000 --- a/keyboards/lemokey/common/wireless/transport.h +++ /dev/null @@ -1,42 +0,0 @@ -/* Copyright 2022~2024 @ lokher (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 . - */ - -#pragma once - -typedef enum { - TRANSPORT_NONE, - TRANSPORT_USB = 0x01 << 0, - TRANSPORT_BLUETOOTH = 0x01 << 1, - TRANSPORT_P2P4 = 0x01 << 2, - TRANSPORT_MAX, -} transport_t; - -#ifdef NKRO_ENABLE -typedef struct { - bool usb : 1; - bool bluetooth : 1; -} nkro_t; -#endif - -#define TRANSPORT_WIRELESS (TRANSPORT_BLUETOOTH | TRANSPORT_P2P4) - -void set_transport(transport_t new_transport); -transport_t get_transport(void); - -void usb_power_connect(void); -void usb_power_disconnect(void); -void usb_transport_enable(bool enable); -void usb_remote_wakeup(void); diff --git a/keyboards/lemokey/common/wireless/wireless.c b/keyboards/lemokey/common/wireless/wireless.c deleted file mode 100644 index ed371e7792..0000000000 --- a/keyboards/lemokey/common/wireless/wireless.c +++ /dev/null @@ -1,553 +0,0 @@ -/* Copyright 2022 @ lokher (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 . - */ - -#include "quantum.h" -#include "wireless.h" -#include "report_buffer.h" -#include "lpm.h" -#include "battery.h" -#include "indicator.h" -#include "transport.h" -#include "rtc_timer.h" -#include "wireless_common.h" -#include "lemokey_task.h" - -extern uint8_t pairing_indication; -extern host_driver_t chibios_driver; -extern report_buffer_t kb_rpt; -extern uint32_t retry_time_buffer; -extern uint8_t retry; - -#ifdef NKRO_ENABLE -extern nkro_t nkro; -#endif - -static uint8_t host_index = 0; -static uint8_t led_state = 0; - -extern wt_func_t wireless_transport; -static wt_state_t wireless_state = WT_RESET; -static bool pincodeEntry = false; -uint8_t wireless_report_protocol = true; - -/* declarations */ -uint8_t wreless_keyboard_leds(void); -void wireless_send_keyboard(report_keyboard_t *report); -void wireless_send_nkro(report_nkro_t *report); -void wireless_send_mouse(report_mouse_t *report); -void wireless_send_extra(report_extra_t *report); -bool process_record_wireless(uint16_t keycode, keyrecord_t *record); - -/* host struct */ -host_driver_t wireless_driver = {wreless_keyboard_leds, wireless_send_keyboard, wireless_send_nkro, wireless_send_mouse, wireless_send_extra}; - -#define WT_EVENT_QUEUE_SIZE 16 -wireless_event_t wireless_event_queue[WT_EVENT_QUEUE_SIZE]; -uint8_t wireless_event_queue_head; -uint8_t wireless_event_queue_tail; - -void wireless_event_queue_init(void) { - // Initialise the event queue - memset(&wireless_event_queue, 0, sizeof(wireless_event_queue)); - wireless_event_queue_head = 0; - wireless_event_queue_tail = 0; -} - -bool wireless_event_enqueue(wireless_event_t event) { - uint8_t next = (wireless_event_queue_head + 1) % WT_EVENT_QUEUE_SIZE; - if (next == wireless_event_queue_tail) { - /* Override the first report */ - wireless_event_queue_tail = (wireless_event_queue_tail + 1) % WT_EVENT_QUEUE_SIZE; - } - wireless_event_queue[wireless_event_queue_head] = event; - wireless_event_queue_head = next; - return true; -} - -static inline bool wireless_event_dequeue(wireless_event_t *event) { - if (wireless_event_queue_head == wireless_event_queue_tail) { - return false; - } - *event = wireless_event_queue[wireless_event_queue_tail]; - wireless_event_queue_tail = (wireless_event_queue_tail + 1) % WT_EVENT_QUEUE_SIZE; - return true; -} - -/* - * Bluetooth init. - */ -void wireless_init(void) { - kc_printf("wireless_init\r\n"); - wireless_state = WT_INITIALIZED; - - wireless_event_queue_init(); -#ifndef DISABLE_REPORT_BUFFER - report_buffer_init(); -#endif - indicator_init(); -#ifdef BLUETOOTH_INT_INPUT_PIN - setPinInputHigh(BLUETOOTH_INT_INPUT_PIN); -#endif - - battery_init(); - lpm_init(); -#if HAL_USE_RTC - rtc_timer_init(); -#endif -#ifdef NKRO_ENABLE - keymap_config.raw = eeconfig_read_keymap(); - nkro.usb = keymap_config.nkro; -# ifdef WIRELESS_NKRO_ENABLE - nkro.bluetooth = keymap_config.nkro; -# endif -#endif -} - -/* - * Bluetooth trasponrt init. Bluetooth module driver shall use this function to register a callback - * to its implementation. - */ -void wireless_set_transport(wt_func_t *transport) { - if (transport) memcpy(&wireless_transport, transport, sizeof(wt_func_t)); -} - -/* - * Enter pairing with current host index - */ -void wireless_pairing(void) { - if (battery_is_critical_low()) return; - - wireless_pairing_ex(0, NULL); - wireless_state = WT_PARING; -} - -/* - * Enter pairing with specified host index and param - */ -void wireless_pairing_ex(uint8_t host_idx, void *param) { - kc_printf("wireless_pairing_ex %d\n\r", host_idx); - if (battery_is_critical_low()) return; - - if (wireless_transport.pairing_ex) wireless_transport.pairing_ex(host_idx, param); - wireless_state = WT_PARING; - - host_index = host_idx; -} - -/* - * Initiate connection request to paired host - */ -void wireless_connect(void) { - /* Work around empty report after wakeup, which leads to reconneect/disconnected loop */ - if (battery_is_critical_low() || timer_read32() == 0) return; - - if (wireless_state == WT_RECONNECTING && !indicator_is_running()) { - indicator_set(wireless_state, host_index); - } - wireless_transport.connect_ex(0, 0); - wireless_state = WT_RECONNECTING; -} - -/* - * Initiate connection request to paired host with argument - */ -void wireless_connect_ex(uint8_t host_idx, uint16_t timeout) { - kc_printf("wireless_connect_ex %d\n\r", host_idx); - if (battery_is_critical_low()) return; - - if (host_idx != 0) { - /* Do nothing when trying to connect to current connected host*/ - if (host_index == host_idx && wireless_state == WT_CONNECTED) return; - - host_index = host_idx; - led_state = 0; - } - wireless_transport.connect_ex(host_idx, timeout); - wireless_state = WT_RECONNECTING; -} - -/* Initiate a disconnection */ -void wireless_disconnect(void) { - kc_printf("wireless_disconnect\n\r"); - if (wireless_transport.disconnect) wireless_transport.disconnect(); -} - -/* Called when the BT device is reset. */ -static void wireless_enter_reset(uint8_t reason) { - kc_printf("wireless_enter_reset\n\r"); - wireless_state = WT_RESET; - wireless_enter_reset_kb(reason); -} - -/* Enters discoverable state. Upon entering this state we perform the following actions: - * - change state to WT_PARING - * - set pairing indication - */ -static void wireless_enter_discoverable(uint8_t host_idx) { - kc_printf("wireless_enter_discoverable: %d\n\r", host_idx); - host_index = host_idx; - - wireless_state = WT_PARING; - indicator_set(wireless_state, host_idx); - wireless_enter_discoverable_kb(host_idx); -} - -/* - * Enters reconnecting state. Upon entering this state we perform the following actions: - * - change state to RECONNECTING - * - set reconnect indication - */ -static void wireless_enter_reconnecting(uint8_t host_idx) { - host_index = host_idx; - - kc_printf("wireless_reconnecting %d\n\r", host_idx); - wireless_state = WT_RECONNECTING; - indicator_set(wireless_state, host_idx); - wireless_enter_reconnecting_kb(host_idx); -} - -/* Enters connected state. Upon entering this state we perform the following actions: - * - change state to CONNECTED - * - set connected indication - * - enable NKRO if it is support - */ -static void wireless_enter_connected(uint8_t host_idx) { - kc_printf("wireless_connected %d\n\r", host_idx); - - wireless_state = WT_CONNECTED; - indicator_set(wireless_state, host_idx); - host_index = host_idx; - - clear_keyboard(); - - /* Enable NKRO since it may be disabled in pin code entry */ -#if defined(NKRO_ENABLE) && !defined(WIRELESS_NKRO_ENABLE) - keymap_config.nkro = false; -#endif - - wireless_enter_connected_kb(host_idx); - if (battery_is_empty()) { - indicator_battery_low_enable(true); - } - if (wireless_transport.update_bat_level) wireless_transport.update_bat_level(battery_get_percentage()); - lpm_timer_reset(); -} - -/* Enters disconnected state. Upon entering this state we perform the following actions: - * - change state to DISCONNECTED - * - set disconnected indication - */ -static void wireless_enter_disconnected(uint8_t host_idx, uint8_t reason) { - kc_printf("wireless_disconnected %d, %d\n\r", host_idx, reason); - - uint8_t previous_state = wireless_state; - led_state = 0; - if (get_transport() & TRANSPORT_WIRELESS) - led_update_kb((led_t)led_state); - - wireless_state = WT_DISCONNECTED; - - if (previous_state == WT_CONNECTED) { - lpm_timer_reset(); - indicator_set(WT_SUSPEND, host_idx); - } else { - indicator_set(wireless_state, host_idx); -#if defined(RGB_MATRIX_ENABLE) || defined(LED_MATRIX_ENABLE) - if (reason && (get_transport() & TRANSPORT_WIRELESS)) - indicator_set_backlit_timeout(DISCONNECTED_BACKLIGHT_DISABLE_TIMEOUT*1000); -#endif - } - -#ifndef DISABLE_REPORT_BUFFER - report_buffer_init(); -#endif - retry = 0; - wireless_enter_disconnected_kb(host_idx, reason); - - indicator_battery_low_enable(false); -} - -/* Enter pin code entry state. */ -static void wireless_enter_bluetooth_pin_code_entry(void) { -#if defined(NKRO_ENABLE) - keymap_config.nkro = FALSE; -#endif - pincodeEntry = true; - wireless_enter_bluetooth_pin_code_entry_kb(); -} - -/* Exit pin code entry state. */ -static void wireless_exit_bluetooth_pin_code_entry(void) { -#if defined(NKRO_ENABLE) || defined(WIRELESS_NKRO_ENABLE) - keymap_config.raw = eeconfig_read_keymap(); -#endif - pincodeEntry = false; - wireless_exit_bluetooth_pin_code_entry_kb(); -} - -/* Enters disconnected state. Upon entering this state we perform the following actions: - * - change state to DISCONNECTED - * - set disconnected indication - */ -static void wireless_enter_sleep(void) { - kc_printf("wireless_enter_sleep %d\n\r", wireless_state); - - led_state = 0; -#if defined(RGB_MATRIX_ENABLE) || defined(LED_MATRIX_ENABLE) - if (wireless_state == WT_CONNECTED || wireless_state == WT_PARING) -#endif - { - kc_printf("WT_SUSPEND\n\r"); - lpm_timer_reset(); - wireless_enter_sleep_kb(); - indicator_set(WT_SUSPEND, 0); - indicator_battery_low_enable(false); - } - wireless_state = WT_SUSPEND; -} - -__attribute__((weak)) void wireless_enter_reset_kb(uint8_t reason) {} -__attribute__((weak)) void wireless_enter_discoverable_kb(uint8_t host_idx) {} -__attribute__((weak)) void wireless_enter_reconnecting_kb(uint8_t host_idx) {} -__attribute__((weak)) void wireless_enter_connected_kb(uint8_t host_idx) {} -__attribute__((weak)) void wireless_enter_disconnected_kb(uint8_t host_idx, uint8_t reason) {} -__attribute__((weak)) void wireless_enter_bluetooth_pin_code_entry_kb(void) {} -__attribute__((weak)) void wireless_exit_bluetooth_pin_code_entry_kb(void) {} -__attribute__((weak)) void wireless_enter_sleep_kb(void) {} - -/* */ -static void wireless_hid_set_protocol(bool report_protocol) { - wireless_report_protocol = false; -} - -uint8_t wreless_keyboard_leds(void) { - if (wireless_state == WT_CONNECTED) { - return led_state; - } - - return 0; -} - -extern keymap_config_t keymap_config; - -void wireless_send_keyboard(report_keyboard_t *report) { - if (battery_is_critical_low()) return; - - if (wireless_state == WT_PARING && !pincodeEntry) return; - - if (wireless_state == WT_CONNECTED || (wireless_state == WT_PARING && pincodeEntry)) { - if (wireless_transport.send_keyboard) { -#ifndef DISABLE_REPORT_BUFFER - bool empty = report_buffer_is_empty(); - - report_buffer_t report_buffer; - report_buffer.type = REPORT_TYPE_KB; - memcpy(&report_buffer.keyboard, report, sizeof(report_keyboard_t)); - report_buffer_enqueue(&report_buffer); - - if (empty) - report_buffer_task(); -#else - wireless_transport.send_keyboard(&report->mods); -#endif - } - } else if (wireless_state != WT_RESET) { - wireless_connect(); - } -} - -void wireless_send_nkro(report_nkro_t *report) { - if (battery_is_critical_low()) return; - - if (wireless_state == WT_PARING && !pincodeEntry) return; - - if (wireless_state == WT_CONNECTED || (wireless_state == WT_PARING && pincodeEntry)) { - if (wireless_transport.send_nkro) { -#ifndef DISABLE_REPORT_BUFFER - bool empty = report_buffer_is_empty(); - - report_buffer_t report_buffer; - report_buffer.type = REPORT_TYPE_NKRO; - memcpy(&report_buffer.nkro, report, sizeof(report_nkro_t)); - report_buffer_enqueue(&report_buffer); - - if (empty) - report_buffer_task(); -#else - wireless_transport.send_nkro(&report->mods); -#endif - } - } else if (wireless_state != WT_RESET) { - wireless_connect(); - } -} - -void wireless_send_mouse(report_mouse_t *report) { - if (battery_is_critical_low()) return; - - if (wireless_state == WT_CONNECTED) { - if (wireless_transport.send_mouse) wireless_transport.send_mouse((uint8_t *)report); - } else if (wireless_state != WT_RESET) { - wireless_connect(); - } -} - -void wireless_send_system(uint16_t data) { - if (wireless_state == WT_CONNECTED) { - if (wireless_transport.send_system) wireless_transport.send_system(data); - } else if (wireless_state != WT_RESET) { - wireless_connect(); - } -} - -void wireless_send_consumer(uint16_t data) { - if (wireless_state == WT_CONNECTED) { -#ifndef DISABLE_REPORT_BUFFER - if (report_buffer_is_empty() && report_buffer_next_inverval()) { - if (wireless_transport.send_consumer) wireless_transport.send_consumer(data); - report_buffer_update_timer(); - } else { - report_buffer_t report_buffer; - report_buffer.type = REPORT_TYPE_CONSUMER; - report_buffer.consumer = data; - report_buffer_enqueue(&report_buffer); - } -#else - if (wireless_transport.send_consumer) wireless_transport.send_consumer(data); -#endif - } else if (wireless_state != WT_RESET) { - wireless_connect(); - } -} - -void wireless_send_extra(report_extra_t *report) { - if (battery_is_critical_low()) return; - - if (report->report_id == REPORT_ID_SYSTEM) { - wireless_send_system(report->usage); - } else if (report->report_id == REPORT_ID_CONSUMER) { - wireless_send_consumer(report->usage); - } -} - -void wireless_low_battery_shutdown(void) { - indicator_battery_low_enable(false); - report_buffer_init(); - clear_keyboard(); // - wait_ms(50); // wait a while for bt module to free buffer by sending report - - // Release all keys by sending empty reports - if (keymap_config.nkro) { - report_nkro_t empty_nkro_report; - memset(&empty_nkro_report, 0, sizeof(empty_nkro_report)); - wireless_transport.send_nkro(&empty_nkro_report.mods); - } else { - report_keyboard_t empty_report; - memset(&empty_report, 0, sizeof(empty_report)); - wireless_transport.send_keyboard(&empty_report.mods); - } - wait_ms(10); - wireless_transport.send_consumer(0); - wait_ms(10); - report_mouse_t empty_mouse_report; - memset(&empty_mouse_report, 0, sizeof(empty_mouse_report)); - wireless_transport.send_mouse((uint8_t *)&empty_mouse_report); - wait_ms(300); // Wait for bt module to send all buffered report - - wireless_disconnect(); -} - -void wireless_event_task(void) { - wireless_event_t event; - while (wireless_event_dequeue(&event)) { - switch (event.evt_type) { - case EVT_RESET: - wireless_enter_reset(event.params.reason); - break; - case EVT_CONNECTED: - wireless_enter_connected(event.params.hostIndex); - break; - case EVT_DISCOVERABLE: - wireless_enter_discoverable(event.params.hostIndex); - break; - case EVT_RECONNECTING: - wireless_enter_reconnecting(event.params.hostIndex); - break; - case EVT_DISCONNECTED: - wireless_enter_disconnected(event.params.hostIndex, event.data); - break; - case EVT_BT_PINCODE_ENTRY: - wireless_enter_bluetooth_pin_code_entry(); - break; - case EVT_EXIT_BT_PINCODE_ENTRY: - wireless_exit_bluetooth_pin_code_entry(); - break; - case EVT_SLEEP: - wireless_enter_sleep(); - break; - case EVT_HID_INDICATOR: - led_state = event.params.led; - break; - case EVT_HID_SET_PROTOCOL: - wireless_hid_set_protocol(event.params.protocol); - break; - case EVT_CONECTION_INTERVAL: - report_buffer_set_inverval(event.params.interval); - break; - default: - break; - } - } -} - -void wireless_task(void) { - wireless_transport.task(); - wireless_event_task(); -#ifndef DISABLE_REPORT_BUFFER - report_buffer_task(); -#endif - indicator_task(); - wireless_common_task(); - battery_task(); - lpm_task(); -} - -void send_string_task(void) { - if ((get_transport() & TRANSPORT_WIRELESS) && wireless_get_state() == WT_CONNECTED) { - wireless_transport.task(); -#ifndef DISABLE_REPORT_BUFFER - report_buffer_task(); -#endif - } -} - -wt_state_t wireless_get_state(void) { - return wireless_state; -}; - -bool process_record_wireless(uint16_t keycode, keyrecord_t *record) { - if (get_transport() & TRANSPORT_WIRELESS) { - lpm_timer_reset(); - - if (battery_is_empty() && wireless_get_state() == WT_CONNECTED && record->event.pressed) { - indicator_battery_low_enable(true); - } - } - - if (!process_record_wireless_common(keycode, record)) return false; - - return true; -} diff --git a/keyboards/lemokey/common/wireless/wireless.h b/keyboards/lemokey/common/wireless/wireless.h deleted file mode 100644 index bc73d7d46b..0000000000 --- a/keyboards/lemokey/common/wireless/wireless.h +++ /dev/null @@ -1,101 +0,0 @@ -/* Copyright 2022~2024 @ lokher (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 . - */ - -#pragma once - -#include "wireless_event_type.h" -#include "action.h" - -#ifdef KC_DEBUG -# define kc_printf dprintf -#else -# define kc_printf(format, ...) -#endif - -/* Low power mode */ -#ifndef LOW_POWER_MODE -# define LOW_POWER_MODE PM_STOP -#endif - -/* Wake pin used for blueooth module/controller to wake up MCU in low power mode*/ -#ifndef BLUETOOTH_INT_INPUT_PIN -# define WAKE_PIN A5 -#endif - -// clang-format off -/* Type of an enumeration of the possible wireless transport state.*/ -typedef enum { - WT_RESET, - WT_INITIALIZED, // 1 - WT_DISCONNECTED, // 2 - WT_CONNECTED, // 3 - WT_PARING, // 4 - WT_RECONNECTING, // 5 - WT_SUSPEND -} wt_state_t; - -//extern event_listener_t wireless_driver; - -typedef struct { - void (*init)(bool); - void (*connect_ex)(uint8_t, uint16_t); - void (*pairing_ex)(uint8_t, void *); - void (*disconnect)(void); - void (*send_keyboard)(uint8_t *); - void (*send_nkro)(uint8_t *); - void (*send_consumer)(uint16_t); - void (*send_system)(uint16_t); - void (*send_mouse)(uint8_t *); - void (*update_bat_level)(uint8_t); - void (*task)(void); -} wt_func_t; -// clang-format on - -extern void register_wt_tasks(void); - -void wireless_init(void); -void wireless_set_transport(wt_func_t *transport); -void wireless(void); - -bool wireless_event_enqueue(wireless_event_t event); - -void wireless_connect(void); -void wireless_connect_ex(uint8_t host_idx, uint16_t timeout); -void wireless_disconnect(void); - -void wireless_pairing(void); -void wireless_pairing_ex(uint8_t host_idx, void *param); -// bool bluetooth_is_activated(void); - -void wireless_enter_reset_kb(uint8_t reason); -void wireless_enter_discoverable_kb(uint8_t host_idx); -void wireless_enter_reconnecting_kb(uint8_t host_idx); -void wireless_enter_connected_kb(uint8_t host_idx); -void wireless_enter_disconnected_kb(uint8_t host_idx, uint8_t reason); -void wireless_enter_bluetooth_pin_code_entry_kb(void); -void wireless_exit_bluetooth_pin_code_entry_kb(void); -void wireless_enter_sleep_kb(void); - -void wireless_task(void); -void wireless_pre_task(void); -void wireless_post_task(void); -void send_string_task(void); - -wt_state_t wireless_get_state(void); - -void wireless_low_battery_shutdown(void); - -bool process_record_wireless_common(uint16_t keycode, keyrecord_t *record); diff --git a/keyboards/lemokey/common/wireless/wireless.mk b/keyboards/lemokey/common/wireless/wireless.mk deleted file mode 100644 index 98cd1952db..0000000000 --- a/keyboards/lemokey/common/wireless/wireless.mk +++ /dev/null @@ -1,28 +0,0 @@ -OPT_DEFS += -DLK_WIRELESS_ENABLE -OPT_DEFS += -DNO_USB_STARTUP_CHECK -OPT_DEFS += -DCORTEX_ENABLE_WFI_IDLE=TRUE - -WIRELESS_DIR = common/wireless -SRC += \ - $(WIRELESS_DIR)/wireless.c \ - $(WIRELESS_DIR)/report_buffer.c \ - $(WIRELESS_DIR)/lkbt51.c \ - $(WIRELESS_DIR)/indicator.c \ - $(WIRELESS_DIR)/wireless_main.c \ - $(WIRELESS_DIR)/transport.c \ - $(WIRELESS_DIR)/lpm.c \ - $(WIRELESS_DIR)/battery.c \ - $(WIRELESS_DIR)/bat_level_animation.c \ - $(WIRELESS_DIR)/rtc_timer.c \ - $(WIRELESS_DIR)/wireless_common.c - -ifeq ($(strip $(MCU_SERIES)), STM32F4xx) -SRC += $(WIRELESS_DIR)/lpm_stm32f401.c -endif - -ifeq ($(strip $(MCU_SERIES)), WB32F3G71xx) -SRC += $(WIRELESS_DIR)/lpm_wb32f3g71.c -endif - -VPATH += $(TOP_DIR)/keyboards/lemokey/$(WIRELESS_DIR) - diff --git a/keyboards/lemokey/common/wireless/wireless_common.c b/keyboards/lemokey/common/wireless/wireless_common.c deleted file mode 100644 index dc5daa2bd8..0000000000 --- a/keyboards/lemokey/common/wireless/wireless_common.c +++ /dev/null @@ -1,158 +0,0 @@ -/* Copyright 2022~2024 @ 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 . - */ - -#include QMK_KEYBOARD_H - -#include "lkbt51.h" -#include "wireless.h" -#include "indicator.h" -#include "transport.h" -#include "battery.h" -#include "bat_level_animation.h" -#include "lpm.h" -#include "wireless_common.h" -#include "lemokey_task.h" -#include "lemokey_common.h" -#include "config.h" - -bool firstDisconnect = true; - -static uint32_t pairing_key_timer; -static uint8_t host_idx = 0; - -bool process_record_wireless_common(uint16_t keycode, keyrecord_t *record) { - static uint8_t host_idx; - - switch (keycode) { - case BT_HST1 ... BT_HST3: - if (get_transport() == TRANSPORT_BLUETOOTH) { - if (record->event.pressed) { - host_idx = keycode - BT_HST1 + 1; - - pairing_key_timer = timer_read32(); - wireless_connect_ex(host_idx, 0); - } else { - host_idx = 0; - pairing_key_timer = 0; - } - } - break; - case P2P4G: - if (get_transport() == TRANSPORT_P2P4) { - if (record->event.pressed) { - host_idx = P24G_INDEX; - - pairing_key_timer = timer_read32(); - } else { - host_idx = 0; - pairing_key_timer = 0; - } - } - break; -#if (defined(LED_MATRIX_ENABLE) || defined(RGB_MATRIX_ENABLE)) && defined(BAT_LEVEL_LED_LIST) - case BAT_LVL: - if ((get_transport() & TRANSPORT_WIRELESS) && !usb_power_connected()) { - bat_level_animiation_start(battery_get_percentage()); - } - break; -#endif - - default: - break; - } - - return true; -} - -void lkbt51_param_init(void) { - /* Set bluetooth device name */ - lkbt51_set_local_name(PRODUCT); - wait_ms(3); - // clang-format off - /* Set bluetooth parameters */ - module_param_t param = {.event_mode = 0x02, - .connected_idle_timeout = 7200, - .pairing_timeout = 180, - .pairing_mode = 0, - .reconnect_timeout = 5, - .report_rate = 90, - .vendor_id_source = 1, - .verndor_id = 0x362D, - .product_id = PRODUCT_ID}; - // clang-format on - lkbt51_set_param(¶m); -} - -void wireless_enter_reset_kb(uint8_t reason) { - lkbt51_param_init(); -} - -void wireless_enter_disconnected_kb(uint8_t host_idx, uint8_t reason) { - /* CKBT51 bluetooth module boot time is slower, it enters disconnected after boot, - so we place initialization here. */ - if (firstDisconnect && timer_read32() < 1000) { - lkbt51_param_init(); - if (get_transport() == TRANSPORT_BLUETOOTH) wireless_connect(); - firstDisconnect = false; - } -} - -void wireless_common_task(void) { - if (pairing_key_timer) { - if (timer_elapsed32(pairing_key_timer) > 2000) { - pairing_key_timer = 0; - wireless_pairing_ex(host_idx, NULL); - } - } -} - -void wireless_pre_task(void) { - static uint8_t dip_switch_state = 0; - static uint32_t time = 0; - - if (time == 0) { - uint8_t pins_state = (readPin(BT_MODE_SELECT_PIN) << 1) | readPin(P2P4_MODE_SELECT_PIN); - if (pins_state != dip_switch_state) { - dip_switch_state = pins_state; - time = timer_read32(); - } - } - - if ((time && timer_elapsed32(time) > 100) || get_transport() == TRANSPORT_NONE) { - uint8_t pins_state = (readPin(BT_MODE_SELECT_PIN) << 1) | readPin(P2P4_MODE_SELECT_PIN); - - if (pins_state == dip_switch_state) { - time = 0; - - switch (dip_switch_state) { - case 0x01: - set_transport(TRANSPORT_BLUETOOTH); - break; - case 0x02: - set_transport(TRANSPORT_P2P4); - break; - case 0x03: - set_transport(TRANSPORT_USB); - break; - default: - break; - } - } else { - dip_switch_state = pins_state; - time = timer_read32(); - } - } -} diff --git a/keyboards/lemokey/common/wireless/wireless_common.h b/keyboards/lemokey/common/wireless/wireless_common.h deleted file mode 100644 index f092beedb7..0000000000 --- a/keyboards/lemokey/common/wireless/wireless_common.h +++ /dev/null @@ -1,24 +0,0 @@ -/* Copyright 2022~2024 @ Keychron (https://www.lemokey.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 . - */ - -#pragma once -#include "quantum_keycodes.h" - -void lkbt51_param_init(void); - -bool process_record_wireless(uint16_t keycode, keyrecord_t *record); -void wireless_common_task(void); -void wireless_pre_task(void); diff --git a/keyboards/lemokey/common/wireless/wireless_config.h b/keyboards/lemokey/common/wireless/wireless_config.h deleted file mode 100644 index c3539b7018..0000000000 --- a/keyboards/lemokey/common/wireless/wireless_config.h +++ /dev/null @@ -1,23 +0,0 @@ -/* Copyright 2022~2024 @ lokher (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 . - */ - -#pragma once - -#include "config.h" - -#ifndef BT_HOST_DEVICES_COUNT -# define BT_HOST_DEVICES_COUNT 3 -#endif diff --git a/keyboards/lemokey/common/wireless/wireless_event_type.h b/keyboards/lemokey/common/wireless/wireless_event_type.h deleted file mode 100644 index 57096c5e89..0000000000 --- a/keyboards/lemokey/common/wireless/wireless_event_type.h +++ /dev/null @@ -1,45 +0,0 @@ -/* Copyright 2022~2024 @ lokher (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 . - */ - -#pragma once - -/* Type of an enumeration of the possible wireless events.*/ -typedef enum { - EVT_NONE = 0, - EVT_RESET, - EVT_DISCOVERABLE, - EVT_RECONNECTING, - EVT_CONNECTED, - EVT_DISCONNECTED, - EVT_BT_PINCODE_ENTRY, - EVT_EXIT_BT_PINCODE_ENTRY, - EVT_SLEEP, - EVT_HID_SET_PROTOCOL, - EVT_HID_INDICATOR, - EVT_CONECTION_INTERVAL, -} event_type_t; - -typedef struct { - event_type_t evt_type; /*The type of the event. */ - union { - uint8_t reason; /* Parameters to WT_RESET event */ - uint8_t hostIndex; /* Parameters to connection event from EVT_DISCOVERABLE to EVT_DISCONECTED */ - uint8_t led; /* Parameters to EVT_HID_INDICATOR event */ - uint8_t protocol; /* Parameters to EVT_HID_SET_PROTOCOL event */ - uint8_t interval; /* Parameters to EVT_CONECTION_INTERVAL event */ - } params; - uint8_t data; -} wireless_event_t; diff --git a/keyboards/lemokey/common/wireless/wireless_main.c b/keyboards/lemokey/common/wireless/wireless_main.c deleted file mode 100644 index dd9fd382ef..0000000000 --- a/keyboards/lemokey/common/wireless/wireless_main.c +++ /dev/null @@ -1,37 +0,0 @@ -/* Copyright 2022~2024 @ lokher (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 . - */ - -#include "quantum.h" -#include "wireless.h" -#include "transport.h" -#include "factory_test.h" -#include "lemokey_task.h" - -__attribute__((weak)) bool wireless_pre_task_kb(void) { return true; } -__attribute__((weak)) void wireless_pre_task(void) {} -__attribute__((weak)) void wireless_post_task(void) {} - -bool wireless_tasks(void) { - wireless_pre_task(); - wireless_task(); - wireless_post_task(); - - /* usb_remote_wakeup() should be invoked last so that we have chance - * to switch to wireless after start-up when usb is not connected - */ - if (get_transport() == TRANSPORT_USB) usb_remote_wakeup(); - return true; -} diff --git a/keyboards/lemokey/l1/ansi/ansi.c b/keyboards/lemokey/l1/ansi/ansi.c deleted file mode 100644 index b109d2e7a6..0000000000 --- a/keyboards/lemokey/l1/ansi/ansi.c +++ /dev/null @@ -1,147 +0,0 @@ -/* Copyright 2024 @ Lemokey (https://www.lemokey.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/>. - */ - -#include "quantum.h" - -// clang-format off -#ifdef RGB_MATRIX_ENABLE -const snled27351_led_t g_snled27351_leds[RGB_MATRIX_LED_COUNT] = { -/* Refer to SNLED27351 manual for these locations - * driver - * | R location - * | | G location - * | | | B location - * | | | | */ - {0, G_1, I_1, H_1}, - {0, G_2, I_2, H_2}, - {0, G_3, I_3, H_3}, - {0, G_4, I_4, H_4}, - {0, G_5, I_5, H_5}, - {0, G_6, I_6, H_6}, - {0, G_7, I_7, H_7}, - {0, G_8, I_8, H_8}, - {0, G_9, I_9, H_9}, - {0, G_10, I_10, H_10}, - {0, G_11, I_11, H_11}, - {0, G_12, I_12, H_12}, - {0, G_13, I_13, H_13}, - {0, G_14, I_14, H_14}, - {0, G_15, I_15, H_15}, - {0, A_1, C_1, B_1}, - {0, A_2, C_2, B_2}, - {0, A_3, C_3, B_3}, - {0, A_4, C_4, B_4}, - {0, A_5, C_5, B_5}, - {0, A_6, C_6, B_6}, - {0, A_7, C_7, B_7}, - {0, A_8, C_8, B_8}, - {0, A_9, C_9, B_9}, - {0, A_10, C_10, B_10}, - {0, A_11, C_11, B_11}, - {0, A_12, C_12, B_12}, - {0, A_13, C_13, B_13}, - {0, A_14, C_14, B_14}, - {0, A_15, C_15, B_15}, - {1, D_13, F_13, E_13}, - {0, D_1, F_1, E_1}, - {0, D_2, F_2, E_2}, - {0, D_3, F_3, E_3}, - {0, D_4, F_4, E_4}, - {0, D_5, F_5, E_5}, - {0, D_6, F_6, E_6}, - {0, D_7, F_7, E_7}, - {0, D_8, F_8, E_8}, - {0, D_9, F_9, E_9}, - {0, D_10, F_10, E_10}, - {0, D_11, F_11, E_11}, - {0, D_12, F_12, E_12}, - {0, D_13, F_13, E_13}, - {0, D_14, F_14, E_14}, - {0, D_15, F_15, E_15}, - {1, D_12, F_12, E_12}, - {1, A_16, C_16, B_16}, - {1, A_15, C_15, B_15}, - {1, A_14, C_14, B_14}, - {1, A_13, C_13, B_13}, - {1, A_12, C_12, B_12}, - {1, A_11, C_11, B_11}, - {1, A_10, C_10, B_10}, - {1, A_9, C_9, B_9}, - {1, A_8, C_8, B_8}, - {1, A_7, C_7, B_7}, - {1, A_6, C_6, B_6}, - {1, A_5, C_5, B_5}, - {1, A_4, C_4, B_4}, - {1, A_3, C_3, B_3}, - {1, D_11, F_11, E_11}, - {1, G_16, I_16, H_16}, - {1, G_14, I_14, H_14}, - {1, G_13, I_13, H_13}, - {1, G_12, I_12, H_12}, - {1, G_11, I_11, H_11}, - {1, G_10, I_10, H_10}, - {1, G_9, I_9, H_9}, - {1, G_8, I_8, H_8}, - {1, G_7, I_7, H_7}, - {1, G_6, I_6, H_6}, - {1, G_5, I_5, H_5}, - {1, G_3, I_3, H_3}, - {1, G_2, I_2, H_2}, - {1, D_9, F_9, E_9}, - {1, D_16, F_16, E_16}, - {1, D_15, F_15, E_15}, - {1, D_14, F_14, E_14}, - {1, D_10, F_10, E_10}, - {1, D_7, F_7, E_7}, - {1, D_6, F_6, E_6}, - {1, D_5, F_5, E_5}, - {1, D_4, F_4, E_4}, - {1, D_3, F_3, E_3}, - {1, D_2, F_2, E_2}, -}; - -#define __ NO_LED - -led_config_t g_led_config = { - { - // Key Matrix to LED Index - { __, 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, 40, 41, 42, 43, 44, 45 }, - { 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, __ }, - { 61, 62, __, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, __, 73, 74 }, - { 75, 76, 77, 78, __, __, __, 79, __, __, 80, 81, 82, 83, 84, 85 }, - }, - { - // LED Index to Physical Position - {24, 0}, {40, 0}, {53, 0}, {67, 0}, {80, 0}, {96, 0}, {109, 0}, {122, 0}, {135, 0}, {152, 0}, {165, 0}, {178, 0}, {191, 0}, {207, 0}, {224, 0}, - {24,15}, {37,15}, {50,15}, {63,15}, {76,15}, {90,15}, {103,15}, {116,15}, {129,15}, {142,15}, {155,15}, {168,15}, {181,15}, {201,15}, {224,15}, - {0,21}, {27,26}, {44,26}, {57,26}, {70,26}, {83,26}, {96,26}, {109,26}, {122,26}, {135,26}, {148,26}, {162,26}, {175,26}, {188,26}, {204,26}, {224,26}, - {0,34}, {29,38}, {47,38}, {60,38}, {73,38}, {86,38}, {99,38}, {112,38}, {126,38}, {139,38}, {152,38}, {165,38}, {178,38}, {199,38}, {224,38}, - {0,46}, {32,49}, {53,49}, {67,49}, {80,49}, {93,49}, {106,49}, {119,49}, {132,49}, {145,49}, {158,49}, {171,49}, {189,49}, {211,52}, - {0,58}, {26,61}, {42,61}, {58,61}, {107,61}, {155,61}, {168,61}, {181,61}, {198,64}, {211,64}, {224,64} - }, - { - // RGB LED Index to Flag - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 - } -}; -#endif diff --git a/keyboards/lemokey/l1/ansi/config.h b/keyboards/lemokey/l1/ansi/config.h deleted file mode 100644 index e63c90fbdf..0000000000 --- a/keyboards/lemokey/l1/ansi/config.h +++ /dev/null @@ -1,45 +0,0 @@ -/* Copyright 2024 @ Lemokey (https://www.lemokey.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 . - */ - -#pragma once - -#ifdef RGB_MATRIX_ENABLE -/* RGB Matrix driver configuration */ -# define RGB_MATRIX_LED_COUNT 86 -# define DRIVER_COUNT 2 - -/* Scan phase of led driver set as MSKPHASE_9CHANNEL(defined as 0x03 in snled27351.h) */ -# define SNLED27351_PHASE_CHANNEL MSKPHASE_9CHANNEL -/* Set LED driver current */ -# define SNLED27351_CURRENT_TUNE \ - { 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20 } - -/* Set to infinit, which is use in USB mode by default */ -# define RGB_MATRIX_TIMEOUT RGB_MATRIX_TIMEOUT_INFINITE -/* Allow shutdown of led driver to save power */ -# define RGB_MATRIX_DRIVER_SHUTDOWN_ENABLE -/* Turn off backlight on low brightness to save power */ -# define RGB_MATRIX_BRIGHTNESS_TURN_OFF_VAL 32 - -/* Indications */ -# define CAPS_LOCK_INDEX 47 -# define SPACE_KEY_LOW_BAT_IND \ - { 79 } - -# define RGB_MATRIX_KEYPRESSES -# define RGB_MATRIX_FRAMEBUFFER_EFFECTS - -#endif diff --git a/keyboards/lemokey/l1/ansi/info.json b/keyboards/lemokey/l1/ansi/info.json deleted file mode 100644 index 09ee552b92..0000000000 --- a/keyboards/lemokey/l1/ansi/info.json +++ /dev/null @@ -1,103 +0,0 @@ -{ - "usb": { - "pid": "0x0110", - "device_version": "1.0.0" - }, - "layouts": { - "LAYOUT_ansi_86": { - "layout": [ - {"matrix": [0, 1], "x": 0, "y": 0}, - {"matrix": [0, 2], "x": 1.25, "y": 0}, - {"matrix": [0, 3], "x": 2.25, "y": 0}, - {"matrix": [0, 4], "x": 3.25, "y": 0}, - {"matrix": [0, 5], "x": 4.25, "y": 0}, - {"matrix": [0, 6], "x": 5.5, "y": 0}, - {"matrix": [0, 7], "x": 6.5, "y": 0}, - {"matrix": [0, 8], "x": 7.5, "y": 0}, - {"matrix": [0, 9], "x": 8.5, "y": 0}, - {"matrix": [0, 10], "x": 9.75, "y": 0}, - {"matrix": [0, 11], "x": 10.75, "y": 0}, - {"matrix": [0, 12], "x": 11.75, "y": 0}, - {"matrix": [0, 13], "x": 12.75, "y": 0}, - {"matrix": [0, 14], "x": 14, "y": 0}, - {"matrix": [0, 15], "x": 15.25, "y": 0}, - - {"matrix": [1, 1], "x": 0, "y": 1.25}, - {"matrix": [1, 2], "x": 1, "y": 1.25}, - {"matrix": [1, 3], "x": 2, "y": 1.25}, - {"matrix": [1, 4], "x": 3, "y": 1.25}, - {"matrix": [1, 5], "x": 4, "y": 1.25}, - {"matrix": [1, 6], "x": 5, "y": 1.25}, - {"matrix": [1, 7], "x": 6, "y": 1.25}, - {"matrix": [1, 8], "x": 7, "y": 1.25}, - {"matrix": [1, 9], "x": 8, "y": 1.25}, - {"matrix": [1, 10], "x": 9, "y": 1.25}, - {"matrix": [1, 11], "x": 10, "y": 1.25}, - {"matrix": [1, 12], "x": 11, "y": 1.25}, - {"matrix": [1, 13], "x": 12, "y": 1.25}, - {"matrix": [1, 14], "x": 13, "y": 1.25, "w": 2}, - {"matrix": [1, 15], "x": 15.25, "y": 1.25}, - - {"matrix": [2, 0], "x": -1.75, "y": 1.75}, - {"matrix": [2, 1], "x": 0, "y": 2.25, "w": 1.5}, - {"matrix": [2, 2], "x": 1.5, "y": 2.25}, - {"matrix": [2, 3], "x": 2.5, "y": 2.25}, - {"matrix": [2, 4], "x": 3.5, "y": 2.25}, - {"matrix": [2, 5], "x": 4.5, "y": 2.25}, - {"matrix": [2, 6], "x": 5.5, "y": 2.25}, - {"matrix": [2, 7], "x": 6.5, "y": 2.25}, - {"matrix": [2, 8], "x": 7.5, "y": 2.25}, - {"matrix": [2, 9], "x": 8.5, "y": 2.25}, - {"matrix": [2, 10], "x": 9.5, "y": 2.25}, - {"matrix": [2, 11], "x": 10.5, "y": 2.25}, - {"matrix": [2, 12], "x": 11.5, "y": 2.25}, - {"matrix": [2, 13], "x": 12.5, "y": 2.25}, - {"matrix": [2, 14], "x": 13.5, "y": 2.25, "w": 1.5}, - {"matrix": [2, 15], "x": 15.25, "y": 2.25}, - - {"matrix": [3, 0], "x": -1.75, "y": 3}, - {"matrix": [3, 1], "x": 0, "y": 3.25, "w": 1.75}, - {"matrix": [3, 2], "x": 1.75, "y": 3.25}, - {"matrix": [3, 3], "x": 2.75, "y": 3.25}, - {"matrix": [3, 4], "x": 3.75, "y": 3.25}, - {"matrix": [3, 5], "x": 4.75, "y": 3.25}, - {"matrix": [3, 6], "x": 5.75, "y": 3.25}, - {"matrix": [3, 7], "x": 6.75, "y": 3.25}, - {"matrix": [3, 8], "x": 7.75, "y": 3.25}, - {"matrix": [3, 9], "x": 8.75, "y": 3.25}, - {"matrix": [3, 10], "x": 9.75, "y": 3.25}, - {"matrix": [3, 11], "x": 10.75, "y": 3.25}, - {"matrix": [3, 12], "x": 11.75, "y": 3.25}, - {"matrix": [3, 13], "x": 12.75, "y": 3.25, "w": 2.25}, - {"matrix": [3, 14], "x": 15.25, "y": 3.25}, - - {"matrix": [4, 0], "x": -1.75, "y": 4}, - {"matrix": [4, 1], "x": 0, "y": 4.25, "w": 2.25}, - {"matrix": [4, 3], "x": 2.25, "y": 4.25}, - {"matrix": [4, 4], "x": 3.25, "y": 4.25}, - {"matrix": [4, 5], "x": 4.25, "y": 4.25}, - {"matrix": [4, 6], "x": 5.25, "y": 4.25}, - {"matrix": [4, 7], "x": 6.25, "y": 4.25}, - {"matrix": [4, 8], "x": 7.25, "y": 4.25}, - {"matrix": [4, 9], "x": 8.25, "y": 4.25}, - {"matrix": [4, 10], "x": 9.25, "y": 4.25}, - {"matrix": [4, 11], "x": 10.25, "y": 4.25}, - {"matrix": [4, 12], "x": 11.25, "y": 4.25}, - {"matrix": [4, 14], "x": 12.25, "y": 4.25, "w": 1.75}, - {"matrix": [4, 15], "x": 14.25, "y": 4.5}, - - {"matrix": [5, 0], "x": -1.75, "y": 5}, - {"matrix": [5, 1], "x": 0, "y": 5.25, "w": 1.25}, - {"matrix": [5, 2], "x": 1.25, "y": 5.25, "w": 1.25}, - {"matrix": [5, 3], "x": 2.5, "y": 5.25, "w": 1.25}, - {"matrix": [5, 7], "x": 3.75, "y": 5.25, "w": 6.25}, - {"matrix": [5, 10], "x": 10, "y": 5.25}, - {"matrix": [5, 11], "x": 11, "y": 5.25}, - {"matrix": [5, 12], "x": 12, "y": 5.25}, - {"matrix": [5, 13], "x": 13.25, "y": 5.5}, - {"matrix": [5, 14], "x": 14.25, "y": 5.5}, - {"matrix": [5, 15], "x": 15.25, "y": 5.5} - ] - } - } -} diff --git a/keyboards/lemokey/l1/ansi/keymaps/default/keymap.c b/keyboards/lemokey/l1/ansi/keymaps/default/keymap.c deleted file mode 100644 index 9dfc610438..0000000000 --- a/keyboards/lemokey/l1/ansi/keymaps/default/keymap.c +++ /dev/null @@ -1,58 +0,0 @@ -/* Copyright 2024 @ Lemokey (https://www.lemokey.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 . - */ - -#include QMK_KEYBOARD_H -#include "lemokey_common.h" - -// clang-format off -enum layer_names { - BASE = 0, - FN, -}; - -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [BASE] = LAYOUT_ansi_86( - KC_ESC, 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_DEL, KC_INS, - KC_GRV, 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_HOME, - MC_0, 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_PGUP, - MC_1, 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_PGDN, - MC_2, 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, - MC_3, KC_LCTL, KC_LWIN, KC_LALT, KC_SPC, KC_RALT, MO(FN), KC_RCTL, KC_LEFT, KC_DOWN, KC_RIGHT ), - - [FN] = LAYOUT_ansi_86( - _______, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_END, - _______, RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, - _______, _______, GUI_TOG, _______, _______, _______, _______, _______, _______, _______, _______ ), -}; - -// clang-format on -#if defined(ENCODER_MAP_ENABLE) -const uint16_t PROGMEM encoder_map[][1][2] = { - [BASE] = {ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [FN] = {ENCODER_CCW_CW(RGB_VAD, RGB_VAI)}, -}; -#endif // ENCODER_MAP_ENABLE - -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - if (!process_record_lemokey_common(keycode, record)) { - return false; - } - - return true; -} diff --git a/keyboards/lemokey/l1/ansi/keymaps/via/keymap.c b/keyboards/lemokey/l1/ansi/keymaps/via/keymap.c deleted file mode 100644 index 9dfc610438..0000000000 --- a/keyboards/lemokey/l1/ansi/keymaps/via/keymap.c +++ /dev/null @@ -1,58 +0,0 @@ -/* Copyright 2024 @ Lemokey (https://www.lemokey.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 . - */ - -#include QMK_KEYBOARD_H -#include "lemokey_common.h" - -// clang-format off -enum layer_names { - BASE = 0, - FN, -}; - -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [BASE] = LAYOUT_ansi_86( - KC_ESC, 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_DEL, KC_INS, - KC_GRV, 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_HOME, - MC_0, 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_PGUP, - MC_1, 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_PGDN, - MC_2, 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, - MC_3, KC_LCTL, KC_LWIN, KC_LALT, KC_SPC, KC_RALT, MO(FN), KC_RCTL, KC_LEFT, KC_DOWN, KC_RIGHT ), - - [FN] = LAYOUT_ansi_86( - _______, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_END, - _______, RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, - _______, _______, GUI_TOG, _______, _______, _______, _______, _______, _______, _______, _______ ), -}; - -// clang-format on -#if defined(ENCODER_MAP_ENABLE) -const uint16_t PROGMEM encoder_map[][1][2] = { - [BASE] = {ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [FN] = {ENCODER_CCW_CW(RGB_VAD, RGB_VAI)}, -}; -#endif // ENCODER_MAP_ENABLE - -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - if (!process_record_lemokey_common(keycode, record)) { - return false; - } - - return true; -} diff --git a/keyboards/lemokey/l1/ansi/keymaps/via/rules.mk b/keyboards/lemokey/l1/ansi/keymaps/via/rules.mk deleted file mode 100644 index 1e5b99807c..0000000000 --- a/keyboards/lemokey/l1/ansi/keymaps/via/rules.mk +++ /dev/null @@ -1 +0,0 @@ -VIA_ENABLE = yes diff --git a/keyboards/lemokey/l1/ansi/rules.mk b/keyboards/lemokey/l1/ansi/rules.mk deleted file mode 100644 index 7ff128fa69..0000000000 --- a/keyboards/lemokey/l1/ansi/rules.mk +++ /dev/null @@ -1 +0,0 @@ -# This file intentionally left blank \ No newline at end of file diff --git a/keyboards/lemokey/l1/board.h b/keyboards/lemokey/l1/board.h deleted file mode 100644 index bb0abe717c..0000000000 --- a/keyboards/lemokey/l1/board.h +++ /dev/null @@ -1,226 +0,0 @@ -/* Copyright 2024 @ Lemokey (https://www.lemokey.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 . - */ - -#pragma once - -#include_next - -// clang-format off - -/* Set GPIOA_SWDIO to INPUT and NOT FLOATING */ -#undef VAL_GPIOA_MODER -#define VAL_GPIOA_MODER (PIN_MODE_INPUT(GPIOA_BUTTON) | \ - PIN_MODE_INPUT(GPIOA_PIN1) | \ - PIN_MODE_INPUT(GPIOA_PIN2) | \ - PIN_MODE_INPUT(GPIOA_PIN3) | \ - PIN_MODE_ALTERNATE(GPIOA_CS43L22_LRCK) |\ - PIN_MODE_ALTERNATE(GPIOA_L3GD20_SCL) | \ - PIN_MODE_ALTERNATE(GPIOA_L3GD20_SD0) | \ - PIN_MODE_ALTERNATE(GPIOA_L3GD20_SDI) | \ - PIN_MODE_INPUT(GPIOA_PIN8) | \ - PIN_MODE_INPUT(GPIOA_VBUS_FS) | \ - PIN_MODE_ALTERNATE(GPIOA_OTG_FS_ID) | \ - PIN_MODE_ALTERNATE(GPIOA_OTG_FS_DM) | \ - PIN_MODE_ALTERNATE(GPIOA_OTG_FS_DP) | \ - PIN_MODE_INPUT(GPIOA_SWDIO) | \ - PIN_MODE_INPUT(GPIOA_SWCLK) | \ - PIN_MODE_INPUT(GPIOA_PIN15)) - -#undef VAL_GPIOA_PUPDR -#define VAL_GPIOA_PUPDR (PIN_PUPDR_FLOATING(GPIOA_BUTTON) | \ - PIN_PUPDR_PULLUP(GPIOA_PIN1) | \ - PIN_PUPDR_PULLUP(GPIOA_PIN2) | \ - PIN_PUPDR_PULLUP(GPIOA_PIN3) | \ - PIN_PUPDR_FLOATING(GPIOA_CS43L22_LRCK) |\ - PIN_PUPDR_FLOATING(GPIOA_L3GD20_SCL) | \ - PIN_PUPDR_PULLUP(GPIOA_L3GD20_SD0) | \ - PIN_PUPDR_PULLUP(GPIOA_L3GD20_SDI) | \ - PIN_PUPDR_PULLUP(GPIOA_PIN8) | \ - PIN_PUPDR_FLOATING(GPIOA_VBUS_FS) | \ - PIN_PUPDR_FLOATING(GPIOA_OTG_FS_ID) | \ - PIN_PUPDR_FLOATING(GPIOA_OTG_FS_DM) | \ - PIN_PUPDR_FLOATING(GPIOA_OTG_FS_DP) | \ - PIN_PUPDR_PULLUP(GPIOA_SWDIO) | \ - PIN_PUPDR_PULLUP(GPIOA_SWCLK) | \ - PIN_PUPDR_PULLUP(GPIOA_PIN15)) - -#undef VAL_GPIOB_MODER -#define VAL_GPIOB_MODER (PIN_MODE_INPUT(GPIOB_PIN0) | \ - PIN_MODE_INPUT(GPIOB_PIN1) | \ - PIN_MODE_INPUT(GPIOB_PIN2) | \ - PIN_MODE_INPUT(GPIOB_SWO) | \ - PIN_MODE_INPUT(GPIOB_PIN4) | \ - PIN_MODE_INPUT(GPIOB_PIN5) | \ - PIN_MODE_INPUT(GPIOB_LSM303DLHC_SCL) | \ - PIN_MODE_INPUT(GPIOB_PIN7) | \ - PIN_MODE_INPUT(GPIOB_PIN8) | \ - PIN_MODE_INPUT(GPIOB_LSM303DLHC_SDA) | \ - PIN_MODE_INPUT(GPIOB_MP45DT02_CLK_IN) |\ - PIN_MODE_INPUT(GPIOB_PIN11) | \ - PIN_MODE_INPUT(GPIOB_PIN12) | \ - PIN_MODE_INPUT(GPIOB_PIN13) | \ - PIN_MODE_INPUT(GPIOB_PIN14) | \ - PIN_MODE_INPUT(GPIOB_PIN15)) - -#undef VAL_GPIOB_PUPDR -#define VAL_GPIOB_PUPDR (PIN_PUPDR_PULLDOWN(GPIOB_PIN0) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN1) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN2) | \ - PIN_PUPDR_PULLDOWN(GPIOB_SWO) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN4) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN5) | \ - PIN_PUPDR_PULLDOWN(GPIOB_LSM303DLHC_SCL) |\ - PIN_PUPDR_PULLDOWN(GPIOB_PIN7) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN8) | \ - PIN_PUPDR_PULLDOWN(GPIOB_LSM303DLHC_SDA) |\ - PIN_PUPDR_PULLDOWN(GPIOB_MP45DT02_CLK_IN) |\ - PIN_PUPDR_PULLDOWN(GPIOB_PIN11) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN12) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN13) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN14) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN15)) - -#undef VAL_GPIOB_AFRL -#define VAL_GPIOB_AFRL (PIN_AFIO_AF(GPIOB_PIN0, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN1, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN2, 0U) | \ - PIN_AFIO_AF(GPIOB_SWO, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN4, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN5, 0U) | \ - PIN_AFIO_AF(GPIOB_LSM303DLHC_SCL, 0) | \ - PIN_AFIO_AF(GPIOB_PIN7, 0U)) - -#undef VAL_GPIOB_AFRH -#define VAL_GPIOB_AFRH (PIN_AFIO_AF(GPIOB_PIN8, 0U) | \ - PIN_AFIO_AF(GPIOB_LSM303DLHC_SDA, 0) | \ - PIN_AFIO_AF(GPIOB_MP45DT02_CLK_IN, 0U) |\ - PIN_AFIO_AF(GPIOB_PIN11, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN12, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN13, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN14, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN15, 0U)) - -/* C5 Need to be pulldown */ -#undef VAL_GPIOC_MODER -#define VAL_GPIOC_MODER (PIN_MODE_INPUT(GPIOC_OTG_FS_POWER_ON) |\ - PIN_MODE_INPUT(GPIOC_PIN1) | \ - PIN_MODE_INPUT(GPIOC_PIN2) | \ - PIN_MODE_INPUT(GPIOC_CS43L22_AIN4x) | \ - PIN_MODE_INPUT(GPIOC_PIN4) | \ - PIN_MODE_INPUT(GPIOC_PIN5) | \ - PIN_MODE_INPUT(GPIOC_PIN6) | \ - PIN_MODE_INPUT(GPIOC_CS43L22_MCLK) | \ - PIN_MODE_INPUT(GPIOC_PIN8) | \ - PIN_MODE_INPUT(GPIOC_PIN9) | \ - PIN_MODE_INPUT(GPIOC_CS43L22_SCLK) | \ - PIN_MODE_INPUT(GPIOC_PIN11) | \ - PIN_MODE_INPUT(GPIOC_CS43L22_SDIN) | \ - PIN_MODE_INPUT(GPIOC_PIN13) | \ - PIN_MODE_INPUT(GPIOC_OSC32_IN) | \ - PIN_MODE_INPUT(GPIOC_OSC32_OUT)) - -#undef VAL_GPIOC_PUPDR -#define VAL_GPIOC_PUPDR (PIN_PUPDR_PULLUP(GPIOC_OTG_FS_POWER_ON) |\ - PIN_PUPDR_PULLUP(GPIOC_PIN1) | \ - PIN_PUPDR_PULLUP(GPIOC_PIN2) | \ - PIN_PUPDR_PULLUP(GPIOC_CS43L22_AIN4x) |\ - PIN_PUPDR_PULLUP(GPIOC_PIN4) | \ - PIN_PUPDR_PULLDOWN(GPIOC_PIN5) | \ - PIN_PUPDR_PULLUP(GPIOC_PIN6) | \ - PIN_PUPDR_PULLUP(GPIOC_CS43L22_MCLK) | \ - PIN_PUPDR_PULLUP(GPIOC_PIN8) | \ - PIN_PUPDR_PULLUP(GPIOC_PIN9) | \ - PIN_PUPDR_PULLUP(GPIOC_CS43L22_SCLK) | \ - PIN_PUPDR_PULLUP(GPIOC_PIN11) | \ - PIN_PUPDR_PULLUP(GPIOC_CS43L22_SDIN) | \ - PIN_PUPDR_PULLUP(GPIOC_PIN13) | \ - PIN_PUPDR_PULLUP(GPIOC_OSC32_IN) | \ - PIN_PUPDR_PULLUP(GPIOC_OSC32_OUT)) - -/* Set all GPIOD pins to INPUT & PULLUP to avoid FLOATING */ -#undef VAL_GPIOD_MODER -#define VAL_GPIOD_MODER (PIN_MODE_INPUT(GPIOD_PIN0) | \ - PIN_MODE_INPUT(GPIOD_PIN1) | \ - PIN_MODE_INPUT(GPIOD_PIN2) | \ - PIN_MODE_INPUT(GPIOD_PIN3) | \ - PIN_MODE_INPUT(GPIOD_CS43L22_RESET) | \ - PIN_MODE_INPUT(GPIOD_OverCurrent) | \ - PIN_MODE_INPUT(GPIOD_PIN6) | \ - PIN_MODE_INPUT(GPIOD_PIN7) | \ - PIN_MODE_INPUT(GPIOD_PIN8) | \ - PIN_MODE_INPUT(GPIOD_PIN9) | \ - PIN_MODE_INPUT(GPIOD_PIN10) | \ - PIN_MODE_INPUT(GPIOD_PIN11) | \ - PIN_MODE_INPUT(GPIOD_LED4) | \ - PIN_MODE_INPUT(GPIOD_LED3) | \ - PIN_MODE_INPUT(GPIOD_LED5) | \ - PIN_MODE_INPUT(GPIOD_LED6)) - -#undef VAL_GPIOD_PUPDR -#define VAL_GPIOD_PUPDR (PIN_PUPDR_PULLUP(GPIOD_PIN0) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN1) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN2) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN3) | \ - PIN_PUPDR_PULLUP(GPIOD_CS43L22_RESET) |\ - PIN_PUPDR_PULLUP(GPIOD_OverCurrent) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN6) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN7) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN8) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN9) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN10) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN11) | \ - PIN_PUPDR_PULLUP(GPIOD_LED4) | \ - PIN_PUPDR_PULLUP(GPIOD_LED3) | \ - PIN_PUPDR_PULLUP(GPIOD_LED5) | \ - PIN_PUPDR_PULLUP(GPIOD_LED6)) - -/* Set all GPIOE pins to INPUT & PULLUP to avoid FLOATING */ -#undef VAL_GPIOE_MODER -#define VAL_GPIOE_MODER (PIN_MODE_INPUT(GPIOE_L3GD20_INT1) | \ - PIN_MODE_INPUT(GPIOE_L3GD20_INT2) | \ - PIN_MODE_INPUT(GPIOE_LSM303DLHC_DRDY) |\ - PIN_MODE_INPUT(GPIOE_L3GD20_CS) | \ - PIN_MODE_INPUT(GPIOE_LSM303DLHC_INT1) |\ - PIN_MODE_INPUT(GPIOE_LSM303DLHC_INT2) |\ - PIN_MODE_INPUT(GPIOE_PIN6) | \ - PIN_MODE_INPUT(GPIOE_PIN7) | \ - PIN_MODE_INPUT(GPIOE_PIN8) | \ - PIN_MODE_INPUT(GPIOE_PIN9) | \ - PIN_MODE_INPUT(GPIOE_PIN10) | \ - PIN_MODE_INPUT(GPIOE_PIN11) | \ - PIN_MODE_INPUT(GPIOE_PIN12) | \ - PIN_MODE_INPUT(GPIOE_PIN13) | \ - PIN_MODE_INPUT(GPIOE_PIN14) | \ - PIN_MODE_INPUT(GPIOE_PIN15)) - -#undef VAL_GPIOE_PUPDR -#define VAL_GPIOE_PUPDR (PIN_PUPDR_PULLUP(GPIOE_L3GD20_INT1) | \ - PIN_PUPDR_PULLUP(GPIOE_L3GD20_INT2) | \ - PIN_PUPDR_PULLUP(GPIOE_LSM303DLHC_DRDY) |\ - PIN_PUPDR_PULLUP(GPIOE_L3GD20_CS) | \ - PIN_PUPDR_PULLUP(GPIOE_LSM303DLHC_INT1) |\ - PIN_PUPDR_PULLUP(GPIOE_LSM303DLHC_INT2) |\ - PIN_PUPDR_PULLUP(GPIOE_PIN6) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN7) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN8) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN9) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN10) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN11) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN12) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN13) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN14) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN15)) - diff --git a/keyboards/lemokey/l1/config.h b/keyboards/lemokey/l1/config.h deleted file mode 100644 index fae614a9da..0000000000 --- a/keyboards/lemokey/l1/config.h +++ /dev/null @@ -1,87 +0,0 @@ -/* Copyright 2024 @ Lemokey (https://www.lemokey.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 . - */ - -#pragma once - -/* Encoder Configuration */ -#define ENCODER_DEFAULT_POS 0x3 -#define ENCODER_MAP_KEY_DELAY 2 - -#if defined(RGB_MATRIX_ENABLE) || defined(LK_WIRELESS_ENABLE) -/* SPI configuration */ -# define SPI_DRIVER SPID1 -# define SPI_SCK_PIN A5 -# define SPI_MISO_PIN A6 -# define SPI_MOSI_PIN A7 -#endif - -#if defined(RGB_MATRIX_ENABLE) -# define DRIVER_COUNT 2 -# define DRIVER_CS_PINS \ - { B8, B9 } -# define LED_DRIVER_SHUTDOWN_PIN B7 -# define SNLED23751_SPI_DIVISOR 16 -#endif - -#ifdef LK_WIRELESS_ENABLE -/* Hardware configuration */ -# define P2P4_MODE_SELECT_PIN A9 -# define BT_MODE_SELECT_PIN A10 - -# define LKBT51_RESET_PIN C4 -# define LKBT51_INT_INPUT_PIN B1 -# define BLUETOOTH_INT_OUTPUT_PIN A4 - -# define USB_POWER_SENSE_PIN B0 -# define USB_POWER_CONNECTED_LEVEL 0 - -# define BAT_CHARGING_PIN B13 -# define BAT_CHARGING_LEVEL 0 - -# define BT_HOST_DEVICES_COUNT 3 - -# if defined(RGB_MATRIX_ENABLE) || defined(LED_MATRIX_ENABLE) - -# define BT_INDICATION_LED_LIST \ - { 16, 17, 18 } - -# define P24G_INDICATION_LED_INDEX 19 - -# define BAT_LEVEL_LED_LIST \ - { 16, 17, 18, 19, 20, 21, 22, 23, 24, 25 } - -/* 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 - -/* Reinit LED driver on tranport changed */ -# define REINIT_LED_DRIVER 1 - -# endif - -/* Keep USB connection in blueooth mode */ -# define KEEP_USB_CONNECTION_IN_WIRELESS_MODE - -/* Enable bluetooth NKRO */ -# define WIRELESS_NKRO_ENABLE -#endif - -/* Factory test keys */ -#define FN_KEY_1 MO(1) -#define FN_BL_TRIG_KEY KC_END -#define MATRIX_IO_DELAY 10 diff --git a/keyboards/lemokey/l1/halconf.h b/keyboards/lemokey/l1/halconf.h deleted file mode 100644 index 4934a43145..0000000000 --- a/keyboards/lemokey/l1/halconf.h +++ /dev/null @@ -1,30 +0,0 @@ -/* Copyright 2024 @ Lemokey (https://www.lemokey.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 . - */ - -#pragma once - -#define _CHIBIOS_HAL_CONF_VER_8_0_ - -#define HAL_USE_SPI TRUE -#ifdef LK_WIRELESS_ENABLE -# define HAL_USE_RTC TRUE -#endif - -#if defined(LK_WIRELESS_ENABLE) || defined(ENCODER_ENABLE) -# define PAL_USE_CALLBACKS TRUE -#endif - -#include_next diff --git a/keyboards/lemokey/l1/info.json b/keyboards/lemokey/l1/info.json deleted file mode 100644 index acaa30ee80..0000000000 --- a/keyboards/lemokey/l1/info.json +++ /dev/null @@ -1,77 +0,0 @@ -{ - "keyboard_name": "Lemokey L1", - "manufacturer": "Lemokey", - "url": "https://github.com/Keychron", - "maintainer": "lokher", - "processor": "STM32F401", - "bootloader": "stm32-dfu", - "usb": { - "vid": "0x362D" - }, - "features": { - "bootmagic": true, - "extrakey" : true, - "mousekey" : true, - "nkro" : true, - "encoder": true, - "encoder_map": true, - "rgb_matrix": true, - "raw" : true, - "send_string": true - }, - "matrix_pins": { - "rows": ["C12", "D2", "B3", "B4", "B5", "B6"], - "cols": ["A1", "C6", "C7", "C8", "A14", "A15", "C10", "C11", "C13", "C14", "C15", "C0", "C1", "C2", "C3", "A0"], - }, - "diode_direction": "ROW2COL", - "encoder": { - "rotary": [ - { - "pin_a": "B15", - "pin_b": "B14", - "resolution": 4 - } - ] - }, - "rgb_matrix": { - "driver": "snled27351_spi", - "sleep": true, - "animations": { - "band_spiral_val": true, - "breathing": true, - "cycle_all": true, - "cycle_left_right": true, - "cycle_out_in": true, - "cycle_out_in_dual": true, - "cycle_pinwheel": true, - "cycle_spiral": true, - "cycle_up_down": true, - "digital_rain": true, - "dual_beacon": true, - "jellybean_raindrops": true, - "pixel_rain": true, - "rainbow_beacon": true, - "rainbow_moving_chevron": true, - "solid_reactive_multinexus": true, - "solid_reactive_multiwide": true, - "solid_reactive_simple": true, - "solid_splash": true, - "splash": true, - "typing_heatmap": true - } - }, - "eeprom": { - "wear_leveling": { - "driver": "embedded_flash", - "logical_size": 2048, - "backing_size": 4096 - } - }, - "build": { - "debounce_type": "sym_eager_pk" - }, - "debounce": 20, - "bootmagic": { - "matrix": [0,1] - } -} diff --git a/keyboards/lemokey/l1/l1.c b/keyboards/lemokey/l1/l1.c deleted file mode 100644 index 4448aa2acd..0000000000 --- a/keyboards/lemokey/l1/l1.c +++ /dev/null @@ -1,55 +0,0 @@ -/* Copyright 2024 @ Lemokey (https://www.lemokey.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 . - */ - -#include "l1.h" -#include "lemokey_task.h" -#ifdef FACTORY_TEST_ENABLE -# include "factory_test.h" -# include "lemokey_common.h" -#endif -#ifdef LK_WIRELESS_ENABLE -# include "lkbt51.h" -# include "wireless.h" -# include "wireless_common.h" -# include "battery.h" -# include "transport.h" -#endif - -bool process_record_lemokey_kb(uint16_t keycode, keyrecord_t *record) { - return true; -} - -void keyboard_post_init_kb(void) { -#ifdef LK_WIRELESS_ENABLE - palSetLineMode(P2P4_MODE_SELECT_PIN, PAL_MODE_INPUT); - palSetLineMode(BT_MODE_SELECT_PIN, PAL_MODE_INPUT); - - lkbt51_init(false); - wireless_init(); -#endif - -#ifdef ENCODER_ENABLE - encoder_cb_init(); -#endif - - keyboard_post_init_user(); -} - -#ifdef LK_WIRELESS_ENABLE -bool lpm_is_kb_idle(void) { - return !factory_reset_indicating(); -} -#endif diff --git a/keyboards/lemokey/l1/l1.h b/keyboards/lemokey/l1/l1.h deleted file mode 100644 index 8af1040733..0000000000 --- a/keyboards/lemokey/l1/l1.h +++ /dev/null @@ -1,22 +0,0 @@ -/* Copyright 2024 @ Lemokey (https://www.lemokey.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 . - */ - -#pragma once - -#include "quantum.h" -#ifdef VIA_ENABLE -# include "via.h" -#endif diff --git a/keyboards/lemokey/l1/mcuconf.h b/keyboards/lemokey/l1/mcuconf.h deleted file mode 100644 index 9186f6b849..0000000000 --- a/keyboards/lemokey/l1/mcuconf.h +++ /dev/null @@ -1,40 +0,0 @@ -/* Copyright 2024 @ Lemokey (https://www.lemokey.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 . - */ - -#pragma once - -#include_next - -#undef STM32_HSECLK -#define STM32_HSECLK 16000000 - -#undef STM32_PLLM_VALUE -#define STM32_PLLM_VALUE 8 - -#undef STM32_PLLN_VALUE -#define STM32_PLLN_VALUE 96 - -#undef STM32_PLLP_VALUE -#define STM32_PLLP_VALUE 4 - -#undef STM32_PLLQ_VALUE -#define STM32_PLLQ_VALUE 4 - -#undef STM32_I2C_USE_I2C1 -#define STM32_I2C_USE_I2C1 TRUE - -#undef STM32_SPI_USE_SPI1 -#define STM32_SPI_USE_SPI1 TRUE diff --git a/keyboards/lemokey/l1/post_rules.mk b/keyboards/lemokey/l1/post_rules.mk deleted file mode 100644 index 5deb336ff9..0000000000 --- a/keyboards/lemokey/l1/post_rules.mk +++ /dev/null @@ -1,2 +0,0 @@ -include keyboards/lemokey/common/wireless/wireless.mk - diff --git a/keyboards/lemokey/l1/readme.md b/keyboards/lemokey/l1/readme.md deleted file mode 100644 index 34c4f2430c..0000000000 --- a/keyboards/lemokey/l1/readme.md +++ /dev/null @@ -1,23 +0,0 @@ -# Lemokey L1 - -![Lemokey L1 QMK/VIA Wireless Mechanical Keyboard](https://cdn.shopify.com/s/files/1/0680/1778/3083/files/Lemokey-L1-3_0b726823-a814-4b8e-b871-27980d10b340.jpg?v=1704791152) - -A 75% customizable wireless TKL keyboard. - -* Keyboard Maintainer: [Keychron](https://github.com/keychron) -* Hardware Supported: Lemokey L1 -* Hardware Availability: [Lemokey L1 Wireless Custom Mechanical Keyboard](https://www.lemokey.com/pages/lemokey-l1) - -Make example for this keyboard (after setting up your build environment): - - make lemokey/l1/ansi:default - -Flashing example for this keyboard: - -``` -make lemokey/l1/ansi:default:flash -``` - -**Reset Key**: Toggle mode switch to "Cable", hold down the *Esc* key or reset button underneath space bar while connecting the USB cable, - -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). diff --git a/keyboards/lemokey/l1/rules.mk b/keyboards/lemokey/l1/rules.mk deleted file mode 100644 index 95cd29f122..0000000000 --- a/keyboards/lemokey/l1/rules.mk +++ /dev/null @@ -1,3 +0,0 @@ -include keyboards/lemokey/common/lemokey_common.mk - -VPATH += $(TOP_DIR)/keyboards/lemokey diff --git a/keyboards/lemokey/l1/via_json/l1_ansi.json b/keyboards/lemokey/l1/via_json/l1_ansi.json deleted file mode 100644 index a873c57742..0000000000 --- a/keyboards/lemokey/l1/via_json/l1_ansi.json +++ /dev/null @@ -1,323 +0,0 @@ -{ - "name": "Lemokey L1 ANSI", - "vendorId": "0x362D", - "productId": "0x0110", - "keycodes": ["qmk_lighting"], - "menus": [ - { - "label": "Lighting", - "content": [ - { - "label": "Backlight", - "content": [ - { - "label": "Brightness", - "type": "range", - "options": [0, 255], - "content": ["id_qmk_rgb_matrix_brightness", 3, 1] - }, - { - "label": "Effect", - "type": "dropdown", - "content": ["id_qmk_rgb_matrix_effect", 3, 2], - "options": [ - ["None", 0], - ["Solid Color", 1], - ["Breathing", 2], - ["Band Spiral Val", 3], - ["Cycle All", 4], - ["Cycle Left Right", 5], - ["Cycle Up Down", 6], - ["Rainbow Moving Chevron", 7], - ["Cycle Out In", 8], - ["Cycle Out In Dual", 9], - ["Cycle Pinwheel", 10], - ["Cycle Spiral", 11], - ["Dual Beacon", 12], - ["Rainbow Beacon", 13], - ["Jellybean Raindrops", 14], - ["Pixel Rain", 15], - ["Typing Heatmap", 16], - ["Digital Rain", 17], - ["Reactive Simple", 18], - ["Reactive Multiwide", 19], - ["Reactive Multinexus", 20], - ["Splash", 21], - ["Solid Splash", 22] - ] - }, - { - "showIf": "{id_qmk_rgb_matrix_effect} > 1", - "label": "Effect Speed", - "type": "range", - "options": [0, 255], - "content": ["id_qmk_rgb_matrix_effect_speed", 3, 3] - }, - { - "showIf": "{id_qmk_rgb_matrix_effect} != 0 && ( {id_qmk_rgb_matrix_effect} < 4 || {id_qmk_rgb_matrix_effect} == 18 || ({id_qmk_rgb_matrix_effect} > 17 && {id_qmk_rgb_matrix_effect} != 21) ) ", - "label": "Color", - "type": "color", - "content": ["id_qmk_rgb_matrix_color", 3, 4] - } - ] - } - ] - } - ], - "customKeycodes": [ - {"name": "Task View", "title": "Task View in Windows", "shortName": "Task"}, - {"name": "File Explorer", "title": "File Explorer in Windows", "shortName": "File"}, - {"name": "Lock Sreen", "title": "Lock Screen Windows", "shortName": "Lock"}, - {"name": "Misson Control", "title": "Misson Control in Mac", "shortName": "MCtl"}, - {"name": "Lanuch Pad", "title": "Lanuch Pad in Windows", "shortName": "LPad"}, - {"name": "Left Option", "title": "Left Option", "shortName": "LOpt"}, - {"name": "Right Option", "title": "Right Option", "shortName": "ROpt"}, - {"name": "Left Cmd", "title": "Left Command", "shortName": "LCmd"}, - {"name": "Right Cmd", "title": "Right Command", "shortName": "RCmd"}, - {"name": "Bluetooth Host 1", "title": "Bluetooth Host 1", "shortName": "BTH1"}, - {"name": "Bluetooth Host 2", "title": "Bluetooth Host 2", "shortName": "BTH2"}, - {"name": "Bluetooth Host 3", "title": "Bluetooth Host 3", "shortName": "BTH3"}, - {"name": "2.4G Host", "title": "2.4G Host", "shortName": "2.4G"}, - {"name": "Battery Level", "title": "Show battery level", "shortName": "Batt"} - ], - "matrix": {"rows": 6, "cols" : 16}, - "layouts": { - "keymap": [ - [ - { - "w": 1.05, - "h": 1.05, - "c": "#aaaaaa" - }, - "0, 0\n\n\n\n\n\n\n\n\ne0", - { - "x": 0.75, - "c": "#777777" - }, - "0, 1", - { - "x": 0.25, - "c": "#cccccc" - }, - "0, 2", - "0, 3", - "0, 4", - "0, 5", - { - "x": 0.25, - "c": "#aaaaaa" - }, - "0, 6", - "0, 7", - "0, 8", - "0, 9", - { - "x": 0.25, - "c": "#cccccc" - }, - "0, 10", - "0, 11", - "0, 12", - "0, 13", - { - "x": 0.25, - "c": "#aaaaaa" - }, - "0, 14", - { - "x": 0.25 - }, - "0, 15" - ], - [ - { - "x": 1.8, - "y": 0.25, - "c": "#aaaaaa" - }, - "1, 1", - { - "c": "#cccccc" - }, - "1, 2", - "1, 3", - "1, 4", - "1, 5", - "1, 6", - "1, 7", - "1, 8", - "1, 9", - "1, 10", - "1, 11", - "1, 12", - "1, 13", - { - "w": 2, - "c": "#aaaaaa" - }, - "1, 14", - { - "x": 0.25 - }, - "1, 15" - ], - [ - { - "y": -0.5, - "w": 1.05, - "h": 1.05 - }, - "2, 0", - { - "x": 0.75, - "y": 0.5, - "w": 1.5, - "c": "#aaaaaa" - }, - "2, 1", - { - "c": "#cccccc" - }, - "2, 2", - "2, 3", - "2, 4", - "2, 5", - "2, 6", - "2, 7", - "2, 8", - "2, 9", - "2, 10", - "2, 11", - "2, 12", - "2, 13", - { - "w": 1.5, - "c": "#aaaaaa" - }, - "2, 14", - { - "x": 0.25 - }, - "2, 15" - ], - [ - { - "y": -0.45, - "w": 1.05, - "h": 1.05 - }, - "3, 0", - { - "x": 0.75, - "y": 0.45, - "w": 1.75, - "c": "#aaaaaa" - }, - "3, 1", - { - "c": "#cccccc" - }, - "3, 2", - "3, 3", - "3, 4", - "3, 5", - "3, 6", - "3, 7", - "3, 8", - "3, 9", - "3, 10", - "3, 11", - "3, 12", - { - "w": 2.25, - "c": "#777777" - }, - "3, 13", - { - "x": 0.25, - "c": "#aaaaaa" - }, - "3, 14" - ], - [ - { - "y": -0.4, - "w": 1.05, - "h": 1.05 - }, - "4, 0", - { - "x": 0.75, - "y": 0.4, - "w": 2.25, - "c": "#aaaaaa" - }, - "4, 1", - { - "c": "#cccccc" - }, - "4, 3", - "4, 4", - "4, 5", - "4, 6", - "4, 7", - "4, 8", - "4, 9", - "4, 10", - "4, 11", - "4, 12", - { - "w": 1.75, - "c": "#aaaaaa" - }, - "4, 14", - { - "x": 0.25, - "y": 0.25 - }, - "4, 15" - ], - [ - { - "y": -0.6, - "w": 1.05, - "h": 1.05 - }, - "5, 0", - { - "x": 0.75, - "y": 0.35, - "w": 1.25, - "c": "#aaaaaa" - }, - "5, 1", - { - "w": 1.25 - }, - "5, 2", - { - "w": 1.25 - }, - "5, 3", - { - "w": 6.25, - "c": "#cccccc" - }, - "5, 7", - { - "c": "#aaaaaa" - }, - "5, 10", - "5, 11", - "5, 12", - { - "x": 0.25, - "y": 0.25 - }, - "5, 13", - "5, 14", - "5, 15" - ] - ] - } -} diff --git a/keyboards/lemokey/l3/ansi/ansi.c b/keyboards/lemokey/l3/ansi/ansi.c deleted file mode 100644 index 154cc67cb5..0000000000 --- a/keyboards/lemokey/l3/ansi/ansi.c +++ /dev/null @@ -1,157 +0,0 @@ -/* Copyright 2023 ~ 2024 @ Lemokey (https://www.lemokey.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/>. - */ - -#include "quantum.h" - -// clang-format off -#ifdef RGB_MATRIX_ENABLE -const snled27351_led_t g_snled27351_leds[RGB_MATRIX_LED_COUNT] = { -/* Refer to SNLED27351 manual for these locations - * driver - * | R location - * | | G location - * | | | B location - * | | | | */ - {0, G_2, I_2, H_2}, - {0, G_3, I_3, H_3}, - {0, G_4, I_4, H_4}, - {0, G_5, I_5, H_5}, - {0, G_6, I_6, H_6}, - {0, G_7, I_7, H_7}, - {0, G_8, I_8, H_8}, - {0, G_9, I_9, H_9}, - {0, G_10, I_10, H_10}, - {0, G_11, I_11, H_11}, - {0, G_12, I_12, H_12}, - {0, G_13, I_13, H_13}, - {0, G_14, I_14, H_14}, - {0, G_15, I_15, H_15}, - {0, G_16, I_16, H_16}, - {1, A_4, C_4, B_4}, - - {0, A_1, C_1, B_1}, - {0, A_2, C_2, B_2}, - {0, A_3, C_3, B_3}, - {0, A_4, C_4, B_4}, - {0, A_5, C_5, B_5}, - {0, A_6, C_6, B_6}, - {0, A_7, C_7, B_7}, - {0, A_8, C_8, B_8}, - {0, A_9, C_9, B_9}, - {0, A_10, C_10, B_10}, - {0, A_11, C_11, B_11}, - {0, A_12, C_12, B_12}, - {0, A_13, C_13, B_13}, - {0, A_14, C_14, B_14}, - {0, A_15, C_15, B_15}, - {0, A_16, C_16, B_16}, - {1, A_2, C_2, B_2}, - - {1, D_13, F_13, E_13}, - {0, D_1, F_1, E_1}, - {0, D_2, F_2, E_2}, - {0, D_3, F_3, E_3}, - {0, D_4, F_4, E_4}, - {0, D_5, F_5, E_5}, - {0, D_6, F_6, E_6}, - {0, D_7, F_7, E_7}, - {0, D_8, F_8, E_8}, - {0, D_9, F_9, E_9}, - {0, D_10, F_10, E_10}, - {0, D_11, F_11, E_11}, - {0, D_12, F_12, E_12}, - {0, D_13, F_13, E_13}, - {0, D_14, F_14, E_14}, - {0, D_15, F_15, E_15}, - {0, D_16, F_16, E_16}, - {1, A_1, C_1, B_1}, - - {1, D_12, F_12, E_12}, - {1, A_16, C_16, B_16}, - {1, A_15, C_15, B_15}, - {1, A_14, C_14, B_14}, - {1, A_13, C_13, B_13}, - {1, A_12, C_12, B_12}, - {1, A_11, C_11, B_11}, - {1, A_10, C_10, B_10}, - {1, A_9, C_9, B_9}, - {1, A_8, C_8, B_8}, - {1, A_7, C_7, B_7}, - {1, A_6, C_6, B_6}, - {1, A_5, C_5, B_5}, - {1, A_3, C_3, B_3}, - - {1, D_11, F_11, E_11}, - {1, G_16, I_16, H_16}, - {1, G_14, I_14, H_14}, - {1, G_13, I_13, H_13}, - {1, G_12, I_12, H_12}, - {1, G_11, I_11, H_11}, - {1, G_10, I_10, H_10}, - {1, G_9, I_9, H_9}, - {1, G_8, I_8, H_8}, - {1, G_7, I_7, H_7}, - {1, G_6, I_6, H_6}, - {1, G_5, I_5, H_5}, - {1, G_3, I_3, H_3}, - {1, G_1, I_1, H_1}, - - {1, D_9, F_9, E_9}, - {1, D_16, F_16, E_16}, - {1, D_15, F_15, E_15}, - {1, D_14, F_14, E_14}, - {1, D_10, F_10, E_10}, - {1, D_6, F_6, E_6}, - {1, D_5, F_5, E_5}, - {1, D_4, F_4, E_4}, - {1, D_3, F_3, E_3}, - {1, D_2, F_2, E_2}, - {1, D_1, F_1, E_1}, - {1, G_2, I_2, H_2} -}; - -#define __ NO_LED - -led_config_t g_led_config = { - { - // Key Matrix to LED Index - { __, __, 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, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, }, - { 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, __, 64, __, __, __, }, - { 65, 66, __, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, __, 77, __, 78, __, }, - { 79, 80, 81, 82, __, __, __, 83, __, __, __, 84, 85, 86, 87, 88, 89, 90, } - }, - { - // LED Index to Physical Position - {21, 0}, {44, 0}, {56, 0}, {68, 0}, {79, 0}, { 97, 0}, {109, 0}, {120, 0}, {132, 0}, {150, 0}, {162, 0}, {173, 0}, {185, 0}, {200, 0}, {212, 0}, {224, 0}, - {21,15}, {32,15}, {44,15}, {56,15}, {68,15}, {79,15}, { 91, 15}, {103, 15}, {115, 15}, {126, 15}, {138, 15}, {150, 15}, {162, 15}, {179, 15}, {200, 15}, {212, 15}, {224, 15}, - {0,27}, {24,27}, {38,27}, {50,27}, {62,27}, {73,27}, {85,27}, { 97, 27}, {109, 27}, {121, 27}, {132, 27}, {144, 27}, {156, 27}, {168, 27}, {182, 27}, {200, 27}, {212, 27}, {224, 27}, - {0,39}, {25,39}, {41,39}, {53,39}, {65,39}, {76,39}, {88,39}, {100, 39}, {112, 39}, {123, 39}, {135, 39}, {147, 39}, {159, 39}, {178, 39}, - {0,51}, {28,51}, {47,51}, {59,51}, {71,51}, {82,51}, { 94, 51}, {106, 51}, {118, 51}, {129, 51}, {141, 51}, {153, 51}, {175, 51}, {212, 51}, - {0,64}, {22,64}, {37,64}, {51,64}, { 96, 64}, {140, 64}, {154, 64}, {169, 64}, {184, 64}, {200, 64}, {212, 64}, {224, 64} - }, - { - // RGB LED Index to Flag - 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, - 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, - 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, - 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, - 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, - 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4 - } -}; -#endif diff --git a/keyboards/lemokey/l3/ansi/config.h b/keyboards/lemokey/l3/ansi/config.h deleted file mode 100644 index 10f9457286..0000000000 --- a/keyboards/lemokey/l3/ansi/config.h +++ /dev/null @@ -1,47 +0,0 @@ -/* Copyright 2023 ~ 2024 @ Lemokey (https://www.lemokey.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 . - */ - -#pragma once - -#define VIA_FIRMWARE_VERSION 0x00000001 - -#ifdef RGB_MATRIX_ENABLE -/* RGB Matrix driver configuration */ -# define DRIVER_1_LED_COUNT 47 -# define DRIVER_2_LED_COUNT 44 -# define RGB_MATRIX_LED_COUNT (DRIVER_1_LED_COUNT + DRIVER_2_LED_COUNT) - -/* Scan phase of led driver set as MSKPHASE_9CHANNEL(defined as 0x03 in snled27351.h) */ -# define SNLED27351_PHASE_CHANNEL MSKPHASE_9CHANNEL -/* Set LED driver current */ -# define SNLED27351_CURRENT_TUNE \ - { 0x24, 0x24, 0x24, 0x24, 0x24, 0x24, 0x24, 0x24, 0x24, 0x24, 0x24, 0x24 } - -/* Set to infinit, which is use in USB mode by default */ -# define RGB_MATRIX_TIMEOUT RGB_MATRIX_TIMEOUT_INFINITE -/* Allow shutdown of led driver to save power */ -# define RGB_MATRIX_DRIVER_SHUTDOWN_ENABLE -/* Turn off backlight on low brightness to save power */ -# define RGB_MATRIX_BRIGHTNESS_TURN_OFF_VAL 32 - -/* Indications */ -# define WINLOCK_LED_LIST \ - { 81 } - -# define RGB_MATRIX_KEYPRESSES -# define RGB_MATRIX_FRAMEBUFFER_EFFECTS - -#endif diff --git a/keyboards/lemokey/l3/ansi/info.json b/keyboards/lemokey/l3/ansi/info.json deleted file mode 100644 index 4126b19597..0000000000 --- a/keyboards/lemokey/l3/ansi/info.json +++ /dev/null @@ -1,114 +0,0 @@ -{ - "usb": { - "pid": "0x0130", - "device_version": "1.0.1" - }, - "layouts": { - "LAYOUT_ansi_tkl": { - "layout": [ - {"matrix":[0,1], "x":0, "y":0.25}, - - {"matrix":[0,2], "x":1.25, "y":0}, - {"matrix":[0,3], "x":3.25, "y":0}, - {"matrix":[0,4], "x":4.25, "y":0}, - {"matrix":[0,5], "x":5.25, "y":0}, - {"matrix":[0,6], "x":6.25, "y":0}, - {"matrix":[0,7], "x":7.75, "y":0}, - {"matrix":[0,8], "x":8.75, "y":0}, - {"matrix":[0,9], "x":9.75, "y":0}, - {"matrix":[0,10], "x":10.75, "y":0}, - {"matrix":[0,11], "x":12.25, "y":0}, - {"matrix":[0,12], "x":13.25, "y":0}, - {"matrix":[0,13], "x":14.25, "y":0}, - {"matrix":[0,14], "x":15.25, "y":0}, - {"matrix":[0,15], "x":16.5, "y":0}, - {"matrix":[0,16], "x":17.5, "y":0}, - {"matrix":[0,17], "x":18.5, "y":0}, - - {"matrix":[1,1], "x":1.25, "y":1.25}, - {"matrix":[1,2], "x":2.25, "y":1.25}, - {"matrix":[1,3], "x":3.25, "y":1.25}, - {"matrix":[1,4], "x":4.25, "y":1.25}, - {"matrix":[1,5], "x":5.25, "y":1.25}, - {"matrix":[1,6], "x":6.25, "y":1.25}, - {"matrix":[1,7], "x":7.25, "y":1.25}, - {"matrix":[1,8], "x":8.25, "y":1.25}, - {"matrix":[1,9], "x":9.25, "y":1.25}, - {"matrix":[1,10], "x":10.25, "y":1.25}, - {"matrix":[1,11], "x":11.25, "y":1.25}, - {"matrix":[1,12], "x":12.25, "y":1.25}, - {"matrix":[1,13], "x":13.25, "y":1.25}, - {"matrix":[1,14], "x":14.25, "y":1.25, "w":2}, - {"matrix":[1,15], "x":16.5, "y":1.25}, - {"matrix":[1,16], "x":17.5, "y":1.25}, - {"matrix":[1,17], "x":18.5, "y":1.25}, - - {"matrix":[2,0], "x":0, "y":1.5}, - - {"matrix":[2,1], "x":1.25, "y":2.25, "w":1.5}, - {"matrix":[2,2], "x":2.75, "y":2.25}, - {"matrix":[2,3], "x":3.75, "y":2.25}, - {"matrix":[2,4], "x":4.75, "y":2.25}, - {"matrix":[2,5], "x":5.75, "y":2.25}, - {"matrix":[2,6], "x":6.75, "y":2.25}, - {"matrix":[2,7], "x":7.75, "y":2.25}, - {"matrix":[2,8], "x":8.75, "y":2.25}, - {"matrix":[2,9], "x":9.75, "y":2.25}, - {"matrix":[2,10], "x":10.75, "y":2.25}, - {"matrix":[2,11], "x":11.75, "y":2.25}, - {"matrix":[2,12], "x":12.75, "y":2.25}, - {"matrix":[2,13], "x":13.75, "y":2.25}, - {"matrix":[2,14], "x":14.75, "y":2.25, "w":1.5}, - {"matrix":[2,15], "x":16.5, "y":2.25}, - {"matrix":[2,16], "x":17.5, "y":2.25}, - {"matrix":[2,17], "x":18.5, "y":2.25}, - - {"matrix":[3,0], "x":0, "y":2.75}, - - {"matrix":[3,1], "x":1.25, "y":3.25, "w":1.75}, - {"matrix":[3,2], "x":3, "y":3.25}, - {"matrix":[3,3], "x":4, "y":3.25}, - {"matrix":[3,4], "x":5, "y":3.25}, - {"matrix":[3,5], "x":6, "y":3.25}, - {"matrix":[3,6], "x":7, "y":3.25}, - {"matrix":[3,7], "x":8, "y":3.25}, - {"matrix":[3,8], "x":9, "y":3.25}, - {"matrix":[3,9], "x":10, "y":3.25}, - {"matrix":[3,10], "x":11, "y":3.25}, - {"matrix":[3,11], "x":12, "y":3.25}, - {"matrix":[3,12], "x":13, "y":3.25}, - {"matrix":[3,14], "x":14, "y":3.25, "w":2.25}, - - {"matrix":[4,0], "x":0, "y":4}, - - {"matrix":[4,1], "x":1.25, "y":4.25, "w":2.25}, - {"matrix":[4,3], "x":3.5, "y":4.25}, - {"matrix":[4,4], "x":4.5, "y":4.25}, - {"matrix":[4,5], "x":5.5, "y":4.25}, - {"matrix":[4,6], "x":6.5, "y":4.25}, - {"matrix":[4,7], "x":7.5, "y":4.25}, - {"matrix":[4,8], "x":8.5, "y":4.25}, - {"matrix":[4,9], "x":9.5, "y":4.25}, - {"matrix":[4,10], "x":10.5, "y":4.25}, - {"matrix":[4,11], "x":11.5, "y":4.25}, - {"matrix":[4,12], "x":12.5, "y":4.25}, - {"matrix":[4,14], "x":13.5, "y":4.25, "w":2.75}, - {"matrix":[4,16], "x":17.5, "y":4.25}, - - {"matrix":[5,0], "x":0, "y":5.25}, - - {"matrix":[5,1], "x":1.25, "y":5.25, "w":1.25}, - {"matrix":[5,2], "x":2.5, "y":5.25, "w":1.25}, - {"matrix":[5,3], "x":3.75, "y":5.25, "w":1.25}, - {"matrix":[5,7], "x":5, "y":5.25, "w":6.25}, - {"matrix":[5,11], "x":11.25, "y":5.25, "w":1.25}, - {"matrix":[5,12], "x":12.5, "y":5.25, "w":1.25}, - {"matrix":[5,13], "x":13.75, "y":5.25, "w":1.25}, - {"matrix":[5,14], "x":15, "y":5.25, "w":1.25}, - {"matrix":[5,15], "x":16.5, "y":5.25}, - {"matrix":[5,16], "x":17.5, "y":5.25}, - {"matrix":[5,17], "x":18.5, "y":5.25} - ] - } - } -} diff --git a/keyboards/lemokey/l3/ansi/keymaps/default/keymap.c b/keyboards/lemokey/l3/ansi/keymaps/default/keymap.c deleted file mode 100644 index 1ecb83a1ce..0000000000 --- a/keyboards/lemokey/l3/ansi/keymaps/default/keymap.c +++ /dev/null @@ -1,56 +0,0 @@ -/* Copyright 2023 @ Lemokey (https://www.lemokey.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 . - */ - -#include QMK_KEYBOARD_H -#include "lemokey_common.h" - -enum layer_names { - BASE = 0, - FN, -}; - -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [BASE] = LAYOUT_ansi_tkl( - KC_MUTE, KC_ESC, 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_PSCR, KC_SCRL, KC_PAUS, - KC_GRV, 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_INS, KC_HOME, KC_PGUP, - MC_0, 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_DEL, KC_END, KC_PGDN, - MC_1, 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, - MC_2, 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, - MC_3, KC_LCTL, KC_LWIN, KC_LALT, KC_SPC, KC_RALT, MO(FN), KC_APP, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - [FN] = LAYOUT_ansi_tkl( - RGB_TOG, _______, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, _______, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, BAT_LVL, _______, _______, _______, _______, _______, _______, _______, - _______, _______, GUI_TOG, _______, _______, _______, _______, _______, _______, _______, _______, _______), -}; -// clang-format on -#if defined(ENCODER_MAP_ENABLE) -const uint16_t PROGMEM encoder_map[][1][2] = { - [BASE] = {ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [FN] = {ENCODER_CCW_CW(RGB_VAD, RGB_VAI)}, -}; -#endif // ENCODER_MAP_ENABLE - -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - if (!process_record_lemokey_common(keycode, record)) { - return false; - } - - return true; -} diff --git a/keyboards/lemokey/l3/ansi/keymaps/via/keymap.c b/keyboards/lemokey/l3/ansi/keymaps/via/keymap.c deleted file mode 100644 index 648a7e3939..0000000000 --- a/keyboards/lemokey/l3/ansi/keymaps/via/keymap.c +++ /dev/null @@ -1,60 +0,0 @@ -/* Copyright 2023 @ Lemokey (https://www.lemokey.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 . - */ - -#include QMK_KEYBOARD_H -#include "lemokey_common.h" - -// clang-format off - -enum layer_names { - BASE = 0, - FN, -}; - -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [BASE] = LAYOUT_ansi_tkl( - KC_MUTE, KC_ESC, 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_PSCR, KC_SCRL, KC_PAUS, - KC_GRV, 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_INS, KC_HOME, KC_PGUP, - MC_0, 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_DEL, KC_END, KC_PGDN, - MC_1, 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, - MC_2, 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, - MC_3, KC_LCTL, KC_LWIN, KC_LALT, KC_SPC, KC_RALT, MO(FN), KC_APP, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - - [FN] = LAYOUT_ansi_tkl( - RGB_TOG, _______, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, _______, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, BAT_LVL, _______, _______, _______, _______, _______, _______, _______, - _______, _______, GUI_TOG, _______, _______, _______, _______, _______, _______, _______, _______, _______), -}; - -// clang-format on -#if defined(ENCODER_MAP_ENABLE) -const uint16_t PROGMEM encoder_map[][1][2] = { - [BASE] = {ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [FN] = {ENCODER_CCW_CW(RGB_VAD, RGB_VAI)}, -}; -#endif // ENCODER_MAP_ENABLE - -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - if (!process_record_lemokey_common(keycode, record)) { - return false; - } - - return true; -} diff --git a/keyboards/lemokey/l3/ansi/keymaps/via/rules.mk b/keyboards/lemokey/l3/ansi/keymaps/via/rules.mk deleted file mode 100644 index 036bd6d1c3..0000000000 --- a/keyboards/lemokey/l3/ansi/keymaps/via/rules.mk +++ /dev/null @@ -1 +0,0 @@ -VIA_ENABLE = yes \ No newline at end of file diff --git a/keyboards/lemokey/l3/ansi/rules.mk b/keyboards/lemokey/l3/ansi/rules.mk deleted file mode 100644 index 7ff128fa69..0000000000 --- a/keyboards/lemokey/l3/ansi/rules.mk +++ /dev/null @@ -1 +0,0 @@ -# This file intentionally left blank \ No newline at end of file diff --git a/keyboards/lemokey/l3/board.h b/keyboards/lemokey/l3/board.h deleted file mode 100644 index 6ebfef0e58..0000000000 --- a/keyboards/lemokey/l3/board.h +++ /dev/null @@ -1,226 +0,0 @@ -/* Copyright 2023 @ Lemokey (https://www.lemokey.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 . - */ - -#pragma once - -#include_next - -// clang-format off - -/* Set GPIOA_SWDIO to INPUT and NOT FLOATING */ -#undef VAL_GPIOA_MODER -#define VAL_GPIOA_MODER (PIN_MODE_INPUT(GPIOA_BUTTON) | \ - PIN_MODE_INPUT(GPIOA_PIN1) | \ - PIN_MODE_INPUT(GPIOA_PIN2) | \ - PIN_MODE_INPUT(GPIOA_PIN3) | \ - PIN_MODE_ALTERNATE(GPIOA_CS43L22_LRCK) |\ - PIN_MODE_ALTERNATE(GPIOA_L3GD20_SCL) | \ - PIN_MODE_ALTERNATE(GPIOA_L3GD20_SD0) | \ - PIN_MODE_ALTERNATE(GPIOA_L3GD20_SDI) | \ - PIN_MODE_INPUT(GPIOA_PIN8) | \ - PIN_MODE_INPUT(GPIOA_VBUS_FS) | \ - PIN_MODE_ALTERNATE(GPIOA_OTG_FS_ID) | \ - PIN_MODE_ALTERNATE(GPIOA_OTG_FS_DM) | \ - PIN_MODE_ALTERNATE(GPIOA_OTG_FS_DP) | \ - PIN_MODE_INPUT(GPIOA_SWDIO) | \ - PIN_MODE_INPUT(GPIOA_SWCLK) | \ - PIN_MODE_INPUT(GPIOA_PIN15)) - -#undef VAL_GPIOA_PUPDR -#define VAL_GPIOA_PUPDR (PIN_PUPDR_FLOATING(GPIOA_BUTTON) | \ - PIN_PUPDR_PULLUP(GPIOA_PIN1) | \ - PIN_PUPDR_PULLUP(GPIOA_PIN2) | \ - PIN_PUPDR_PULLUP(GPIOA_PIN3) | \ - PIN_PUPDR_FLOATING(GPIOA_CS43L22_LRCK) |\ - PIN_PUPDR_FLOATING(GPIOA_L3GD20_SCL) | \ - PIN_PUPDR_PULLUP(GPIOA_L3GD20_SD0) | \ - PIN_PUPDR_PULLUP(GPIOA_L3GD20_SDI) | \ - PIN_PUPDR_PULLUP(GPIOA_PIN8) | \ - PIN_PUPDR_FLOATING(GPIOA_VBUS_FS) | \ - PIN_PUPDR_FLOATING(GPIOA_OTG_FS_ID) | \ - PIN_PUPDR_FLOATING(GPIOA_OTG_FS_DM) | \ - PIN_PUPDR_FLOATING(GPIOA_OTG_FS_DP) | \ - PIN_PUPDR_PULLUP(GPIOA_SWDIO) | \ - PIN_PUPDR_PULLUP(GPIOA_SWCLK) | \ - PIN_PUPDR_PULLUP(GPIOA_PIN15)) - -#undef VAL_GPIOB_MODER -#define VAL_GPIOB_MODER (PIN_MODE_INPUT(GPIOB_PIN0) | \ - PIN_MODE_INPUT(GPIOB_PIN1) | \ - PIN_MODE_INPUT(GPIOB_PIN2) | \ - PIN_MODE_INPUT(GPIOB_SWO) | \ - PIN_MODE_INPUT(GPIOB_PIN4) | \ - PIN_MODE_INPUT(GPIOB_PIN5) | \ - PIN_MODE_INPUT(GPIOB_LSM303DLHC_SCL) | \ - PIN_MODE_INPUT(GPIOB_PIN7) | \ - PIN_MODE_INPUT(GPIOB_PIN8) | \ - PIN_MODE_INPUT(GPIOB_LSM303DLHC_SDA) | \ - PIN_MODE_INPUT(GPIOB_MP45DT02_CLK_IN) |\ - PIN_MODE_INPUT(GPIOB_PIN11) | \ - PIN_MODE_INPUT(GPIOB_PIN12) | \ - PIN_MODE_INPUT(GPIOB_PIN13) | \ - PIN_MODE_INPUT(GPIOB_PIN14) | \ - PIN_MODE_INPUT(GPIOB_PIN15)) - -#undef VAL_GPIOB_PUPDR -#define VAL_GPIOB_PUPDR (PIN_PUPDR_PULLDOWN(GPIOB_PIN0) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN1) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN2) | \ - PIN_PUPDR_PULLDOWN(GPIOB_SWO) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN4) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN5) | \ - PIN_PUPDR_PULLDOWN(GPIOB_LSM303DLHC_SCL) |\ - PIN_PUPDR_PULLDOWN(GPIOB_PIN7) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN8) | \ - PIN_PUPDR_PULLDOWN(GPIOB_LSM303DLHC_SDA) |\ - PIN_PUPDR_PULLDOWN(GPIOB_MP45DT02_CLK_IN) |\ - PIN_PUPDR_PULLDOWN(GPIOB_PIN11) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN12) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN13) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN14) | \ - PIN_PUPDR_PULLDOWN(GPIOB_PIN15)) - -#undef VAL_GPIOB_AFRL -#define VAL_GPIOB_AFRL (PIN_AFIO_AF(GPIOB_PIN0, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN1, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN2, 0U) | \ - PIN_AFIO_AF(GPIOB_SWO, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN4, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN5, 0U) | \ - PIN_AFIO_AF(GPIOB_LSM303DLHC_SCL, 0) | \ - PIN_AFIO_AF(GPIOB_PIN7, 0U)) - -#undef VAL_GPIOB_AFRH -#define VAL_GPIOB_AFRH (PIN_AFIO_AF(GPIOB_PIN8, 0U) | \ - PIN_AFIO_AF(GPIOB_LSM303DLHC_SDA, 0) | \ - PIN_AFIO_AF(GPIOB_MP45DT02_CLK_IN, 0U) |\ - PIN_AFIO_AF(GPIOB_PIN11, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN12, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN13, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN14, 0U) | \ - PIN_AFIO_AF(GPIOB_PIN15, 0U)) - -/* C5 Need to be pulldown */ -#undef VAL_GPIOC_MODER -#define VAL_GPIOC_MODER (PIN_MODE_INPUT(GPIOC_OTG_FS_POWER_ON) |\ - PIN_MODE_INPUT(GPIOC_PIN1) | \ - PIN_MODE_INPUT(GPIOC_PIN2) | \ - PIN_MODE_INPUT(GPIOC_CS43L22_AIN4x) | \ - PIN_MODE_INPUT(GPIOC_PIN4) | \ - PIN_MODE_INPUT(GPIOC_PIN5) | \ - PIN_MODE_INPUT(GPIOC_PIN6) | \ - PIN_MODE_INPUT(GPIOC_CS43L22_MCLK) | \ - PIN_MODE_INPUT(GPIOC_PIN8) | \ - PIN_MODE_INPUT(GPIOC_PIN9) | \ - PIN_MODE_INPUT(GPIOC_CS43L22_SCLK) | \ - PIN_MODE_INPUT(GPIOC_PIN11) | \ - PIN_MODE_INPUT(GPIOC_CS43L22_SDIN) | \ - PIN_MODE_INPUT(GPIOC_PIN13) | \ - PIN_MODE_INPUT(GPIOC_OSC32_IN) | \ - PIN_MODE_INPUT(GPIOC_OSC32_OUT)) - -#undef VAL_GPIOC_PUPDR -#define VAL_GPIOC_PUPDR (PIN_PUPDR_PULLUP(GPIOC_OTG_FS_POWER_ON) |\ - PIN_PUPDR_PULLUP(GPIOC_PIN1) | \ - PIN_PUPDR_PULLUP(GPIOC_PIN2) | \ - PIN_PUPDR_PULLUP(GPIOC_CS43L22_AIN4x) |\ - PIN_PUPDR_PULLUP(GPIOC_PIN4) | \ - PIN_PUPDR_PULLDOWN(GPIOC_PIN5) | \ - PIN_PUPDR_PULLUP(GPIOC_PIN6) | \ - PIN_PUPDR_PULLUP(GPIOC_CS43L22_MCLK) | \ - PIN_PUPDR_PULLUP(GPIOC_PIN8) | \ - PIN_PUPDR_PULLUP(GPIOC_PIN9) | \ - PIN_PUPDR_PULLUP(GPIOC_CS43L22_SCLK) | \ - PIN_PUPDR_PULLUP(GPIOC_PIN11) | \ - PIN_PUPDR_PULLUP(GPIOC_CS43L22_SDIN) | \ - PIN_PUPDR_PULLUP(GPIOC_PIN13) | \ - PIN_PUPDR_PULLUP(GPIOC_OSC32_IN) | \ - PIN_PUPDR_PULLUP(GPIOC_OSC32_OUT)) - -/* Set all GPIOD pins to INPUT & PULLUP to avoid FLOATING */ -#undef VAL_GPIOD_MODER -#define VAL_GPIOD_MODER (PIN_MODE_INPUT(GPIOD_PIN0) | \ - PIN_MODE_INPUT(GPIOD_PIN1) | \ - PIN_MODE_INPUT(GPIOD_PIN2) | \ - PIN_MODE_INPUT(GPIOD_PIN3) | \ - PIN_MODE_INPUT(GPIOD_CS43L22_RESET) | \ - PIN_MODE_INPUT(GPIOD_OverCurrent) | \ - PIN_MODE_INPUT(GPIOD_PIN6) | \ - PIN_MODE_INPUT(GPIOD_PIN7) | \ - PIN_MODE_INPUT(GPIOD_PIN8) | \ - PIN_MODE_INPUT(GPIOD_PIN9) | \ - PIN_MODE_INPUT(GPIOD_PIN10) | \ - PIN_MODE_INPUT(GPIOD_PIN11) | \ - PIN_MODE_INPUT(GPIOD_LED4) | \ - PIN_MODE_INPUT(GPIOD_LED3) | \ - PIN_MODE_INPUT(GPIOD_LED5) | \ - PIN_MODE_INPUT(GPIOD_LED6)) - -#undef VAL_GPIOD_PUPDR -#define VAL_GPIOD_PUPDR (PIN_PUPDR_PULLUP(GPIOD_PIN0) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN1) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN2) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN3) | \ - PIN_PUPDR_PULLUP(GPIOD_CS43L22_RESET) |\ - PIN_PUPDR_PULLUP(GPIOD_OverCurrent) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN6) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN7) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN8) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN9) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN10) | \ - PIN_PUPDR_PULLUP(GPIOD_PIN11) | \ - PIN_PUPDR_PULLUP(GPIOD_LED4) | \ - PIN_PUPDR_PULLUP(GPIOD_LED3) | \ - PIN_PUPDR_PULLUP(GPIOD_LED5) | \ - PIN_PUPDR_PULLUP(GPIOD_LED6)) - -/* Set all GPIOE pins to INPUT & PULLUP to avoid FLOATING */ -#undef VAL_GPIOE_MODER -#define VAL_GPIOE_MODER (PIN_MODE_INPUT(GPIOE_L3GD20_INT1) | \ - PIN_MODE_INPUT(GPIOE_L3GD20_INT2) | \ - PIN_MODE_INPUT(GPIOE_LSM303DLHC_DRDY) |\ - PIN_MODE_INPUT(GPIOE_L3GD20_CS) | \ - PIN_MODE_INPUT(GPIOE_LSM303DLHC_INT1) |\ - PIN_MODE_INPUT(GPIOE_LSM303DLHC_INT2) |\ - PIN_MODE_INPUT(GPIOE_PIN6) | \ - PIN_MODE_INPUT(GPIOE_PIN7) | \ - PIN_MODE_INPUT(GPIOE_PIN8) | \ - PIN_MODE_INPUT(GPIOE_PIN9) | \ - PIN_MODE_INPUT(GPIOE_PIN10) | \ - PIN_MODE_INPUT(GPIOE_PIN11) | \ - PIN_MODE_INPUT(GPIOE_PIN12) | \ - PIN_MODE_INPUT(GPIOE_PIN13) | \ - PIN_MODE_INPUT(GPIOE_PIN14) | \ - PIN_MODE_INPUT(GPIOE_PIN15)) - -#undef VAL_GPIOE_PUPDR -#define VAL_GPIOE_PUPDR (PIN_PUPDR_PULLUP(GPIOE_L3GD20_INT1) | \ - PIN_PUPDR_PULLUP(GPIOE_L3GD20_INT2) | \ - PIN_PUPDR_PULLUP(GPIOE_LSM303DLHC_DRDY) |\ - PIN_PUPDR_PULLUP(GPIOE_L3GD20_CS) | \ - PIN_PUPDR_PULLUP(GPIOE_LSM303DLHC_INT1) |\ - PIN_PUPDR_PULLUP(GPIOE_LSM303DLHC_INT2) |\ - PIN_PUPDR_PULLUP(GPIOE_PIN6) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN7) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN8) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN9) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN10) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN11) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN12) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN13) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN14) | \ - PIN_PUPDR_PULLUP(GPIOE_PIN15)) - diff --git a/keyboards/lemokey/l3/config.h b/keyboards/lemokey/l3/config.h deleted file mode 100644 index 0ace63fbde..0000000000 --- a/keyboards/lemokey/l3/config.h +++ /dev/null @@ -1,93 +0,0 @@ -/* Copyright 2023 ~ 2024 @ Lemokey (https://www.lemokey.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 . - */ - -#pragma once - -/* Encoder Configuration */ -#define ENCODER_DEFAULT_POS 0x3 -#define ENCODER_MAP_KEY_DELAY 2 - -#if defined(RGB_MATRIX_ENABLE) || defined(LK_WIRELESS_ENABLE) -/* SPI configuration */ -# define SPI_DRIVER SPID1 -# define SPI_SCK_PIN A5 -# define SPI_MISO_PIN A6 -# define SPI_MOSI_PIN A7 -#endif - -#if defined(RGB_MATRIX_ENABLE) -# define DRIVER_COUNT 2 -# define DRIVER_CS_PINS \ - { B8, B9 } -# define LED_DRIVER_SHUTDOWN_PIN B7 -# define SNLED23751_SPI_DIVISOR 16 -#endif - -#ifdef LK_WIRELESS_ENABLE -/* Hardware configuration */ -# define P2P4_MODE_SELECT_PIN A10 -# define BT_MODE_SELECT_PIN A9 - -# define LKBT51_RESET_PIN C4 -# define LKBT51_INT_INPUT_PIN B1 -# define BLUETOOTH_INT_OUTPUT_PIN A4 - -# define USB_POWER_SENSE_PIN B0 -# define USB_POWER_CONNECTED_LEVEL 0 - -# define BAT_LOW_LED_PIN B12 -# define BAT_LOW_LED_PIN_ON_STATE 1 - -# define BT_HOST_DEVICES_COUNT 3 - -# define BT_INDICATION_LED_PIN_LIST \ - { C9, C9, C9 } -# define BT_INDICATION_LED_ON_STATE 0 - -# define P24G_INDICATION_LED_PIN A8 - -# if defined(RGB_MATRIX_ENABLE) || defined(LED_MATRIX_ENABLE) - -# define BT_INDICATION_LED_LIST \ - { 17, 18, 19 } - -# define P24G_INDICATION_LED_INDEX 20 - -# 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 - -/* Reinit LED driver on tranport changed */ -# define REINIT_LED_DRIVER 1 - -# endif - -/* Keep USB connection in blueooth mode */ -# define KEEP_USB_CONNECTION_IN_WIRELESS_MODE - -/* Enable bluetooth NKRO */ -# define WIRELESS_NKRO_ENABLE -#endif - -/* Factory test keys */ -#define FN_KEY_1 MO(1) - -#define MATRIX_IO_DELAY 10 diff --git a/keyboards/lemokey/l3/halconf.h b/keyboards/lemokey/l3/halconf.h deleted file mode 100644 index a4cd6da0b4..0000000000 --- a/keyboards/lemokey/l3/halconf.h +++ /dev/null @@ -1,30 +0,0 @@ -/* Copyright 2023 @ Lemokey (https://www.lemokey.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 . - */ - -#pragma once - -#define _CHIBIOS_HAL_CONF_VER_8_0_ - -#define HAL_USE_SPI TRUE -#ifdef LK_WIRELESS_ENABLE -# define HAL_USE_RTC TRUE -#endif - -#if defined(LK_WIRELESS_ENABLE) || defined(ENCODER_ENABLE) -# define PAL_USE_CALLBACKS TRUE -#endif - -#include_next diff --git a/keyboards/lemokey/l3/info.json b/keyboards/lemokey/l3/info.json deleted file mode 100644 index 737114321c..0000000000 --- a/keyboards/lemokey/l3/info.json +++ /dev/null @@ -1,81 +0,0 @@ -{ - "keyboard_name": "Lemokey L3", - "manufacturer": "Lemokey", - "url": "https://github.com/Keychron", - "maintainer": "lokher", - "processor": "STM32F401", - "bootloader": "stm32-dfu", - "usb": { - "vid": "0x362D" - }, - "features": { - "bootmagic": true, - "extrakey" : true, - "mousekey" : true, - "nkro" : true, - "encoder": true, - "encoder_map": true, - "rgb_matrix": true, - "raw" : true, - "send_string": true - }, - "matrix_pins": { - "rows": ["C12", "D2", "B3", "B4", "B5", "B6"], - "cols": ["A3", "C6", "C7", "C8", "A14", "A15", "C10", "C11", "C13", "C14", "C15", "C0", "C1", "C2", "C3", "A0", "A1", "A2"], - }, - "diode_direction": "ROW2COL", - "encoder": { - "rotary": [ - { - "pin_a": "B15", - "pin_b": "B14", - "resolution": 4 - } - ] - }, - "indicators": { - "caps_lock": "A13", - "on_state": 1 - }, - "rgb_matrix": { - "driver": "snled27351_spi", - "sleep": true, - "animations": { - "band_spiral_val": true, - "breathing": true, - "cycle_all": true, - "cycle_left_right": true, - "cycle_out_in": true, - "cycle_out_in_dual": true, - "cycle_pinwheel": true, - "cycle_spiral": true, - "cycle_up_down": true, - "digital_rain": true, - "dual_beacon": true, - "jellybean_raindrops": true, - "pixel_rain": true, - "rainbow_beacon": true, - "rainbow_moving_chevron": true, - "solid_reactive_multinexus": true, - "solid_reactive_multiwide": true, - "solid_reactive_simple": true, - "solid_splash": true, - "splash": true, - "typing_heatmap": true - } - }, - "eeprom": { - "wear_leveling": { - "driver": "embedded_flash", - "logical_size": 2048, - "backing_size": 4096 - } - }, - "build": { - "debounce_type": "sym_eager_pk" - }, - "debounce": 20, - "bootmagic": { - "matrix": [0,2] - } -} diff --git a/keyboards/lemokey/l3/iso/config.h b/keyboards/lemokey/l3/iso/config.h deleted file mode 100644 index f5ae2f46e6..0000000000 --- a/keyboards/lemokey/l3/iso/config.h +++ /dev/null @@ -1,47 +0,0 @@ -/* Copyright 2023 ~ 2024 @ Lemokey (https://www.lemokey.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 . - */ - -#pragma once - -#define VIA_FIRMWARE_VERSION 0x00000001 - -#ifdef RGB_MATRIX_ENABLE -/* RGB Matrix driver configuration */ -# define DRIVER_1_LED_COUNT 47 -# define DRIVER_2_LED_COUNT 45 -# define RGB_MATRIX_LED_COUNT (DRIVER_1_LED_COUNT + DRIVER_2_LED_COUNT) - -/* Scan phase of led driver set as MSKPHASE_9CHANNEL(defined as 0x03 in snled27351.h) */ -# define SNLED27351_PHASE_CHANNEL MSKPHASE_9CHANNEL -/* Set LED driver current */ -# define SNLED27351_CURRENT_TUNE \ - { 0x24, 0x24, 0x24, 0x24, 0x24, 0x24, 0x24, 0x24, 0x24, 0x24, 0x24, 0x24 } - -/* Set to infinit, which is use in USB mode by default */ -# define RGB_MATRIX_TIMEOUT RGB_MATRIX_TIMEOUT_INFINITE -/* Allow shutdown of led driver to save power */ -# define RGB_MATRIX_DRIVER_SHUTDOWN_ENABLE -/* Turn off backlight on low brightness to save power */ -# define RGB_MATRIX_BRIGHTNESS_TURN_OFF_VAL 32 - -/* Indications */ -# define WINLOCK_LED_LIST \ - { 82 } - -# define RGB_MATRIX_KEYPRESSES -# define RGB_MATRIX_FRAMEBUFFER_EFFECTS - -#endif diff --git a/keyboards/lemokey/l3/iso/info.json b/keyboards/lemokey/l3/iso/info.json deleted file mode 100644 index 1347795f9f..0000000000 --- a/keyboards/lemokey/l3/iso/info.json +++ /dev/null @@ -1,115 +0,0 @@ -{ - "usb": { - "pid": "0x0131", - "device_version": "1.0.2" - }, - "layouts": { - "LAYOUT_iso_tkl": { - "layout": [ - {"matrix":[0,1], "x":0, "y":0.25}, - - {"matrix":[0,2], "x":1.25, "y":0}, - {"matrix":[0,3], "x":3.25, "y":0}, - {"matrix":[0,4], "x":4.25, "y":0}, - {"matrix":[0,5], "x":5.25, "y":0}, - {"matrix":[0,6], "x":6.25, "y":0}, - {"matrix":[0,7], "x":7.75, "y":0}, - {"matrix":[0,8], "x":8.75, "y":0}, - {"matrix":[0,9], "x":9.75, "y":0}, - {"matrix":[0,10], "x":10.75, "y":0}, - {"matrix":[0,11], "x":12.25, "y":0}, - {"matrix":[0,12], "x":13.25, "y":0}, - {"matrix":[0,13], "x":14.25, "y":0}, - {"matrix":[0,14], "x":15.25, "y":0}, - {"matrix":[0,15], "x":16.5, "y":0}, - {"matrix":[0,16], "x":17.5, "y":0}, - {"matrix":[0,17], "x":18.5, "y":0}, - - {"matrix":[1,1], "x":1.25, "y":1.25}, - {"matrix":[1,2], "x":2.25, "y":1.25}, - {"matrix":[1,3], "x":3.25, "y":1.25}, - {"matrix":[1,4], "x":4.25, "y":1.25}, - {"matrix":[1,5], "x":5.25, "y":1.25}, - {"matrix":[1,6], "x":6.25, "y":1.25}, - {"matrix":[1,7], "x":7.25, "y":1.25}, - {"matrix":[1,8], "x":8.25, "y":1.25}, - {"matrix":[1,9], "x":9.25, "y":1.25}, - {"matrix":[1,10], "x":10.25, "y":1.25}, - {"matrix":[1,11], "x":11.25, "y":1.25}, - {"matrix":[1,12], "x":12.25, "y":1.25}, - {"matrix":[1,13], "x":13.25, "y":1.25}, - {"matrix":[1,14], "x":14.25, "y":1.25, "w":2}, - {"matrix":[1,15], "x":16.5, "y":1.25}, - {"matrix":[1,16], "x":17.5, "y":1.25}, - {"matrix":[1,17], "x":18.5, "y":1.25}, - - {"matrix":[2,0], "x":0, "y":1.5}, - - {"matrix":[2,1], "x":1.25, "y":2.25, "w":1.5}, - {"matrix":[2,2], "x":2.75, "y":2.25}, - {"matrix":[2,3], "x":3.75, "y":2.25}, - {"matrix":[2,4], "x":4.75, "y":2.25}, - {"matrix":[2,5], "x":5.75, "y":2.25}, - {"matrix":[2,6], "x":6.75, "y":2.25}, - {"matrix":[2,7], "x":7.75, "y":2.25}, - {"matrix":[2,8], "x":8.75, "y":2.25}, - {"matrix":[2,9], "x":9.75, "y":2.25}, - {"matrix":[2,10], "x":10.75, "y":2.25}, - {"matrix":[2,11], "x":11.75, "y":2.25}, - {"matrix":[2,12], "x":12.75, "y":2.25}, - {"matrix":[2,13], "x":13.75, "y":2.25}, - {"matrix":[2,15], "x":16.5, "y":2.25}, - {"matrix":[2,16], "x":17.5, "y":2.25}, - {"matrix":[2,17], "x":18.5, "y":2.25}, - - {"matrix":[3,0], "x":0, "y":2.75}, - - {"matrix":[3,1], "x":1.25, "y":3.25, "w":1.75}, - {"matrix":[3,2], "x":3, "y":3.25}, - {"matrix":[3,3], "x":4, "y":3.25}, - {"matrix":[3,4], "x":5, "y":3.25}, - {"matrix":[3,5], "x":6, "y":3.25}, - {"matrix":[3,6], "x":7, "y":3.25}, - {"matrix":[3,7], "x":8, "y":3.25}, - {"matrix":[3,8], "x":9, "y":3.25}, - {"matrix":[3,9], "x":10, "y":3.25}, - {"matrix":[3,10], "x":11, "y":3.25}, - {"matrix":[3,11], "x":12, "y":3.25}, - {"matrix":[3,12], "x":13, "y":3.25}, - {"matrix":[3,14], "x":14, "y":3.25}, - {"matrix":[2,14], "x":15, "y":2.25, "w":1.25, "h": 2}, - - {"matrix":[4,0], "x":0, "y":4}, - - {"matrix":[4,1], "x":1.25, "y":4.25, "w":1.25}, - {"matrix":[4,2], "x":2.5, "y":4.25}, - {"matrix":[4,3], "x":3.5, "y":4.25}, - {"matrix":[4,4], "x":4.5, "y":4.25}, - {"matrix":[4,5], "x":5.5, "y":4.25}, - {"matrix":[4,6], "x":6.5, "y":4.25}, - {"matrix":[4,7], "x":7.5, "y":4.25}, - {"matrix":[4,8], "x":8.5, "y":4.25}, - {"matrix":[4,9], "x":9.5, "y":4.25}, - {"matrix":[4,10], "x":10.5, "y":4.25}, - {"matrix":[4,11], "x":11.5, "y":4.25}, - {"matrix":[4,12], "x":12.5, "y":4.25}, - {"matrix":[4,14], "x":13.5, "y":4.25, "w":2.75}, - {"matrix":[4,16], "x":17.5, "y":4.25}, - - {"matrix":[5,0], "x":0, "y":5.25}, - - {"matrix":[5,1], "x":1.25, "y":5.25, "w":1.25}, - {"matrix":[5,2], "x":2.5, "y":5.25, "w":1.25}, - {"matrix":[5,3], "x":3.75, "y":5.25, "w":1.25}, - {"matrix":[5,7], "x":5, "y":5.25, "w":6.25}, - {"matrix":[5,11], "x":11.25, "y":5.25, "w":1.25}, - {"matrix":[5,12], "x":12.5, "y":5.25, "w":1.25}, - {"matrix":[5,13], "x":13.75, "y":5.25, "w":1.25}, - {"matrix":[5,14], "x":15, "y":5.25, "w":1.25}, - {"matrix":[5,15], "x":16.5, "y":5.25}, - {"matrix":[5,16], "x":17.5, "y":5.25}, - {"matrix":[5,17], "x":18.5, "y":5.25} - ] - } - } -} diff --git a/keyboards/lemokey/l3/iso/iso.c b/keyboards/lemokey/l3/iso/iso.c deleted file mode 100644 index acbb3b9635..0000000000 --- a/keyboards/lemokey/l3/iso/iso.c +++ /dev/null @@ -1,154 +0,0 @@ -/* Copyright 2023 ~ 2024 @ Lemokey (https://www.lemokey.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/>. - */ - -#include "quantum.h" - -// clang-format off -#ifdef RGB_MATRIX_ENABLE -const snled27351_led_t g_snled27351_leds[RGB_MATRIX_LED_COUNT] = { -/* Refer to SNLED27351 manual for these locations - * driver - * | R location - * | | G location - * | | | B location - * | | | | */ - {0, G_2, I_2, H_2}, - {0, G_3, I_3, H_3}, - {0, G_4, I_4, H_4}, - {0, G_5, I_5, H_5}, - {0, G_6, I_6, H_6}, - {0, G_7, I_7, H_7}, - {0, G_8, I_8, H_8}, - {0, G_9, I_9, H_9}, - {0, G_10, I_10, H_10}, - {0, G_11, I_11, H_11}, - {0, G_12, I_12, H_12}, - {0, G_13, I_13, H_13}, - {0, G_14, I_14, H_14}, - {0, G_15, I_15, H_15}, - {0, G_16, I_16, H_16}, - {1, A_4, C_4, B_4}, - - {0, A_1, C_1, B_1}, - {0, A_2, C_2, B_2}, - {0, A_3, C_3, B_3}, - {0, A_4, C_4, B_4}, - {0, A_5, C_5, B_5}, - {0, A_6, C_6, B_6}, - {0, A_7, C_7, B_7}, - {0, A_8, C_8, B_8}, - {0, A_9, C_9, B_9}, - {0, A_10, C_10, B_10}, - {0, A_11, C_11, B_11}, - {0, A_12, C_12, B_12}, - {0, A_13, C_13, B_13}, - {0, A_14, C_14, B_14}, - {0, A_15, C_15, B_15}, - {0, A_16, C_16, B_16}, - {1, A_2, C_2, B_2}, - - {1, D_13, F_13, E_13}, - {0, D_1, F_1, E_1}, - {0, D_2, F_2, E_2}, - {0, D_3, F_3, E_3}, - {0, D_4, F_4, E_4}, - {0, D_5, F_5, E_5}, - {0, D_6, F_6, E_6}, - {0, D_7, F_7, E_7}, - {0, D_8, F_8, E_8}, - {0, D_9, F_9, E_9}, - {0, D_10, F_10, E_10}, - {0, D_11, F_11, E_11}, - {0, D_12, F_12, E_12}, - {0, D_13, F_13, E_13}, - {0, D_14, F_14, E_14}, - {0, D_15, F_15, E_15}, - {0, D_16, F_16, E_16}, - {1, A_1, C_1, B_1}, - - {1, D_12, F_12, E_12}, - {1, A_16, C_16, B_16}, - {1, A_15, C_15, B_15}, - {1, A_14, C_14, B_14}, - {1, A_13, C_13, B_13}, - {1, A_12, C_12, B_12}, - {1, A_11, C_11, B_11}, - {1, A_10, C_10, B_10}, - {1, A_9, C_9, B_9}, - {1, A_8, C_8, B_8}, - {1, A_7, C_7, B_7}, - {1, A_6, C_6, B_6}, - {1, A_5, C_5, B_5}, - {1, A_3, C_3, B_3}, - - {1, D_11, F_11, E_11}, - {1, G_16, I_16, H_16}, - {1, G_15, I_15, H_15}, - {1, G_14, I_14, H_14}, - {1, G_13, I_13, H_13}, - {1, G_12, I_12, H_12}, - {1, G_11, I_11, H_11}, - {1, G_10, I_10, H_10}, - {1, G_9, I_9, H_9}, - {1, G_8, I_8, H_8}, - {1, G_7, I_7, H_7}, - {1, G_6, I_6, H_6}, - {1, G_5, I_5, H_5}, - {1, G_3, I_3, H_3}, - {1, G_1, I_1, H_1}, - - {1, D_9, F_9, E_9}, - {1, D_16, F_16, E_16}, - {1, D_15, F_15, E_15}, - {1, D_14, F_14, E_14}, - {1, D_10, F_10, E_10}, - {1, D_6, F_6, E_6}, - {1, D_5, F_5, E_5}, - {1, D_4, F_4, E_4}, - {1, D_3, F_3, E_3}, - {1, D_2, F_2, E_2}, - {1, D_1, F_1, E_1}, - {1, G_2, I_2, H_2} -}; - -led_config_t g_led_config = { - { - { NO_LED, NO_LED, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, }, - { NO_LED, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, }, - { 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, }, - { 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, NO_LED, 64, NO_LED, NO_LED, NO_LED, }, - { 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, NO_LED, 78, NO_LED, 79, NO_LED, }, - { 80, 81, 82, 83, NO_LED, NO_LED, NO_LED, 84, NO_LED, NO_LED, NO_LED, 85, 86, 87, 88, 89, 90, 91, } - }, - { - {21, 0}, {44, 0}, {56, 0}, {68, 0}, {79, 0}, { 97, 0}, {109, 0}, {120, 0}, {132, 0}, {150, 0}, {162, 0}, {173, 0}, {185, 0}, {200, 0}, {212, 0}, {224, 0}, - {21,15}, {32,15}, {44,15}, {56,15}, {68,15}, {79,15}, { 91, 15}, {103, 15}, {115, 15}, {126, 15}, {138, 15}, {150, 15}, {162, 15}, {179, 15}, {200, 15}, {212, 15}, {224, 15}, - {0,27}, {24,27}, {38,27}, {50,27}, {62,27}, {73,27}, {85,27}, { 97, 27}, {109, 27}, {121, 27}, {132, 27}, {144, 27}, {156, 27}, {168, 27}, {182, 27}, {200, 27}, {212, 27}, {224, 27}, - {0,39}, {25,39}, {41,39}, {53,39}, {65,39}, {76,39}, {88,39}, {100, 39}, {112, 39}, {123, 39}, {135, 39}, {147, 39}, {159, 39}, {178, 39}, - {0,51}, {22,51}, {35,51}, {47,51}, {59,51}, {71,51}, {82,51}, { 94, 51}, {106, 51}, {118, 51}, {129, 51}, {141, 51}, {153, 51}, {175, 51}, {212, 51}, - {0,64}, {22,64}, {37,64}, {51,64}, { 96, 64}, {140, 64}, {154, 64}, {169, 64}, {184, 64}, {200, 64}, {212, 64}, {224, 64} - }, - { - 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, - 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, - 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, - 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, - 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, - 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4 - - } -}; -#endif diff --git a/keyboards/lemokey/l3/iso/keymaps/default/keymap.c b/keyboards/lemokey/l3/iso/keymaps/default/keymap.c deleted file mode 100644 index 1d22f457f1..0000000000 --- a/keyboards/lemokey/l3/iso/keymaps/default/keymap.c +++ /dev/null @@ -1,56 +0,0 @@ -/* Copyright 2023 @ Lemokey (https://www.lemokey.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 . - */ - -#include QMK_KEYBOARD_H -#include "lemokey_common.h" - -enum layer_names { - BASE = 0, - FN, -}; - -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [BASE] = LAYOUT_iso_tkl( - KC_MUTE, KC_ESC, 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_PSCR, KC_LOCK, RGB_MOD, - KC_GRV, 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_INS, KC_HOME, KC_PGUP, - MC_0, 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_DEL, KC_END, KC_PGDN, - MC_1, 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_NUHS, KC_ENT, - MC_2, KC_LSFT, KC_NUBS, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, - MC_3, KC_LCTL, KC_LWIN, KC_LALT, KC_SPC, KC_RALT, KC_RWIN, MO(FN), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - [FN] = LAYOUT_iso_tkl( - _______, _______, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, RGB_TOG, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, BAT_LVL, _______, _______, _______, _______, _______, _______, _______, - _______, _______, GUI_TOG, _______, _______, _______, _______, _______, _______, _______, _______, _______), -}; -// clang-format on -#if defined(ENCODER_MAP_ENABLE) -const uint16_t PROGMEM encoder_map[][1][2] = { - [BASE] = {ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [FN] = {ENCODER_CCW_CW(RGB_VAD, RGB_VAI)}, -}; -#endif // ENCODER_MAP_ENABLE - -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - if (!process_record_lemokey_common(keycode, record)) { - return false; - } - - return true; -} diff --git a/keyboards/lemokey/l3/iso/keymaps/via/keymap.c b/keyboards/lemokey/l3/iso/keymaps/via/keymap.c deleted file mode 100644 index 1d22f457f1..0000000000 --- a/keyboards/lemokey/l3/iso/keymaps/via/keymap.c +++ /dev/null @@ -1,56 +0,0 @@ -/* Copyright 2023 @ Lemokey (https://www.lemokey.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 . - */ - -#include QMK_KEYBOARD_H -#include "lemokey_common.h" - -enum layer_names { - BASE = 0, - FN, -}; - -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [BASE] = LAYOUT_iso_tkl( - KC_MUTE, KC_ESC, 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_PSCR, KC_LOCK, RGB_MOD, - KC_GRV, 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_INS, KC_HOME, KC_PGUP, - MC_0, 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_DEL, KC_END, KC_PGDN, - MC_1, 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_NUHS, KC_ENT, - MC_2, KC_LSFT, KC_NUBS, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, - MC_3, KC_LCTL, KC_LWIN, KC_LALT, KC_SPC, KC_RALT, KC_RWIN, MO(FN), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - [FN] = LAYOUT_iso_tkl( - _______, _______, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, RGB_TOG, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, BAT_LVL, _______, _______, _______, _______, _______, _______, _______, - _______, _______, GUI_TOG, _______, _______, _______, _______, _______, _______, _______, _______, _______), -}; -// clang-format on -#if defined(ENCODER_MAP_ENABLE) -const uint16_t PROGMEM encoder_map[][1][2] = { - [BASE] = {ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [FN] = {ENCODER_CCW_CW(RGB_VAD, RGB_VAI)}, -}; -#endif // ENCODER_MAP_ENABLE - -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - if (!process_record_lemokey_common(keycode, record)) { - return false; - } - - return true; -} diff --git a/keyboards/lemokey/l3/iso/keymaps/via/rules.mk b/keyboards/lemokey/l3/iso/keymaps/via/rules.mk deleted file mode 100644 index 1e5b99807c..0000000000 --- a/keyboards/lemokey/l3/iso/keymaps/via/rules.mk +++ /dev/null @@ -1 +0,0 @@ -VIA_ENABLE = yes diff --git a/keyboards/lemokey/l3/iso/rules.mk b/keyboards/lemokey/l3/iso/rules.mk deleted file mode 100644 index e69de29bb2..0000000000 diff --git a/keyboards/lemokey/l3/l3.c b/keyboards/lemokey/l3/l3.c deleted file mode 100644 index 6402fa4595..0000000000 --- a/keyboards/lemokey/l3/l3.c +++ /dev/null @@ -1,95 +0,0 @@ -/* Copyright 2023 ~ 2024 @ Lemokey (https://www.lemokey.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 . - */ - -#include "l3.h" -#include "lemokey_task.h" -#ifdef FACTORY_TEST_ENABLE -# include "factory_test.h" -# include "lemokey_common.h" -#endif -#ifdef LK_WIRELESS_ENABLE -# include "lkbt51.h" -# include "wireless.h" -# include "wireless_common.h" -# include "battery.h" -# include "transport.h" -#endif - -#define POWER_ON_LED_DURATION 3000 -static uint32_t power_on_indicator_timer_buffer; - -#ifdef LK_WIRELESS_ENABLE -pin_t bt_led_pins[] = BT_INDICATION_LED_PIN_LIST; -#endif - -bool process_record_lemokey_kb(uint16_t keycode, keyrecord_t *record) { - return true; -} - -void keyboard_post_init_kb(void) { -#ifdef LK_WIRELESS_ENABLE - palSetLineMode(P2P4_MODE_SELECT_PIN, PAL_MODE_INPUT); - palSetLineMode(BT_MODE_SELECT_PIN, PAL_MODE_INPUT); - - writePin(BAT_LOW_LED_PIN, BAT_LOW_LED_PIN_ON_STATE); - - lkbt51_init(false); - wireless_init(); -#endif - - // writePin(LED_CAPS_LOCK_PIN, LED_PIN_ON_STATE); - power_on_indicator_timer_buffer = timer_read32(); -#ifdef ENCODER_ENABLE - encoder_cb_init(); -#endif - - keyboard_post_init_user(); -} - -bool lemokey_task_kb(void) { - if (power_on_indicator_timer_buffer) { - if (timer_elapsed32(power_on_indicator_timer_buffer) > POWER_ON_LED_DURATION) { - power_on_indicator_timer_buffer = 0; - - if (!host_keyboard_led_state().caps_lock) writePin(LED_CAPS_LOCK_PIN, !LED_PIN_ON_STATE); -#ifdef LK_WIRELESS_ENABLE - writePin(BAT_LOW_LED_PIN, !BAT_LOW_LED_PIN_ON_STATE); - for (uint8_t i = 0; i < sizeof(bt_led_pins) / sizeof(pin_t); i++) - writePin(bt_led_pins[i], !BT_INDICATION_LED_ON_STATE); - writePin(P24G_INDICATION_LED_PIN, !BT_INDICATION_LED_ON_STATE); -#endif - - } else { - writePin(LED_CAPS_LOCK_PIN, LED_PIN_ON_STATE); -#ifdef LK_WIRELESS_ENABLE - writePin(BAT_LOW_LED_PIN, BAT_LOW_LED_PIN_ON_STATE); - if (get_transport() != TRANSPORT_P2P4) - for (uint8_t i = 0; i < sizeof(bt_led_pins) / sizeof(pin_t); i++) - writePin(bt_led_pins[i], BT_INDICATION_LED_ON_STATE); - if (get_transport() != TRANSPORT_BLUETOOTH) - writePin(P24G_INDICATION_LED_PIN, BT_INDICATION_LED_ON_STATE); - -#endif - } - } - return true; -} - -#ifdef LK_WIRELESS_ENABLE -bool lpm_is_kb_idle(void) { - return power_on_indicator_timer_buffer == 0 && !factory_reset_indicating(); -} -#endif diff --git a/keyboards/lemokey/l3/l3.h b/keyboards/lemokey/l3/l3.h deleted file mode 100644 index 1ade591ba5..0000000000 --- a/keyboards/lemokey/l3/l3.h +++ /dev/null @@ -1,22 +0,0 @@ -/* Copyright 2023 @ Lemokey (https://www.lemokey.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 . - */ - -#pragma once - -#include "quantum.h" -#ifdef VIA_ENABLE -# include "via.h" -#endif diff --git a/keyboards/lemokey/l3/mcuconf.h b/keyboards/lemokey/l3/mcuconf.h deleted file mode 100644 index d6a8930e23..0000000000 --- a/keyboards/lemokey/l3/mcuconf.h +++ /dev/null @@ -1,40 +0,0 @@ -/* Copyright 2023 @ Lemokey (https://www.lemokey.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 . - */ - -#pragma once - -#include_next - -#undef STM32_HSECLK -#define STM32_HSECLK 16000000 - -#undef STM32_PLLM_VALUE -#define STM32_PLLM_VALUE 8 - -#undef STM32_PLLN_VALUE -#define STM32_PLLN_VALUE 96 - -#undef STM32_PLLP_VALUE -#define STM32_PLLP_VALUE 4 - -#undef STM32_PLLQ_VALUE -#define STM32_PLLQ_VALUE 4 - -#undef STM32_I2C_USE_I2C1 -#define STM32_I2C_USE_I2C1 TRUE - -#undef STM32_SPI_USE_SPI1 -#define STM32_SPI_USE_SPI1 TRUE diff --git a/keyboards/lemokey/l3/post_rules.mk b/keyboards/lemokey/l3/post_rules.mk deleted file mode 100644 index 5deb336ff9..0000000000 --- a/keyboards/lemokey/l3/post_rules.mk +++ /dev/null @@ -1,2 +0,0 @@ -include keyboards/lemokey/common/wireless/wireless.mk - diff --git a/keyboards/lemokey/l3/readme.md b/keyboards/lemokey/l3/readme.md deleted file mode 100644 index 88e8bf6bc5..0000000000 --- a/keyboards/lemokey/l3/readme.md +++ /dev/null @@ -1,23 +0,0 @@ -# Lemokey L3 - -![Lemokey L3 QMK/VIA Wireless Mechanical Keyboard](https://cdn.shopify.com/s/files/1/0059/0630/1017/files/Lemokey-L3-QMK-VIA-Wireless-Mechanical-Keyboard-Full-Metal_1200x.jpg?v=1690365749) - -A customizable wireless TKL keyboard. - -* Keyboard Maintainer: [Keychron](https://github.com/keychron) -* Hardware Supported: Lemokey L3 -* Hardware Availability: [Lemokey L3 Wireless Custom Mechanical Keyboard](https://www.lemokey.com/products/lemokey-l3-qmk-via-wireless-custom-mechanical-keyboard) - -Make example for this keyboard (after setting up your build environment): - - make lemokey/l3/ansi:default - -Flashing example for this keyboard: - -``` -make lemokey/l3/ansi:default:flash -``` - -**Reset Key**: Toggle mode switch to "Cable", hold down the *Esc* key or reset button underneath space bar while connecting the USB cable, - -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). diff --git a/keyboards/lemokey/l3/rules.mk b/keyboards/lemokey/l3/rules.mk deleted file mode 100644 index 95cd29f122..0000000000 --- a/keyboards/lemokey/l3/rules.mk +++ /dev/null @@ -1,3 +0,0 @@ -include keyboards/lemokey/common/lemokey_common.mk - -VPATH += $(TOP_DIR)/keyboards/lemokey diff --git a/keyboards/lemokey/l3/via_json/l3_ansi.json b/keyboards/lemokey/l3/via_json/l3_ansi.json deleted file mode 100644 index 8118b1f378..0000000000 --- a/keyboards/lemokey/l3/via_json/l3_ansi.json +++ /dev/null @@ -1,341 +0,0 @@ -{ - "name": "Lemokey L3", - "vendorId": "0x362D", - "productId": "0x0130", - "firmwareVersion": 1, - "keycodes": ["qmk_lighting"], - "menus": [ - { - "label": "Lighting", - "content": [ - { - "label": "Backlight", - "content": [ - { - "label": "Brightness", - "type": "range", - "options": [0, 255], - "content": ["id_qmk_rgb_matrix_brightness", 3, 1] - }, - { - "label": "Effect", - "type": "dropdown", - "content": ["id_qmk_rgb_matrix_effect", 3, 2], - "options": [ - ["None", 0], - ["Solid Color", 1], - ["Breathing", 2], - ["Band Spiral Val", 3], - ["Cycle All", 4], - ["Cycle Left Right", 5], - ["Cycle Up Down", 6], - ["Rainbow Moving Chevron", 7], - ["Cycle Out In", 8], - ["Cycle Out In Dual", 9], - ["Cycle Pinwheel", 10], - ["Cycle Spiral", 11], - ["Dual Beacon", 12], - ["Rainbow Beacon", 13], - ["Jellybean Raindrops", 14], - ["Pixel Rain", 15], - ["Typing Heatmap", 16], - ["Digital Rain", 17], - ["Reactive Simple", 18], - ["Reactive Multiwide", 19], - ["Reactive Multinexus", 20], - ["Splash", 21], - ["Solid Splash", 22] - ] - }, - { - "showIf": "{id_qmk_rgb_matrix_effect} > 1", - "label": "Effect Speed", - "type": "range", - "options": [0, 255], - "content": ["id_qmk_rgb_matrix_effect_speed", 3, 3] - }, - { - "showIf": "{id_qmk_rgb_matrix_effect} != 0 && ( {id_qmk_rgb_matrix_effect} < 4 || {id_qmk_rgb_matrix_effect} == 18 || ({id_qmk_rgb_matrix_effect} > 17 && {id_qmk_rgb_matrix_effect} != 21) ) ", - "label": "Color", - "type": "color", - "content": ["id_qmk_rgb_matrix_color", 3, 4] - } - ] - } - ] - } - ], - "customKeycodes": [ - {"name": "Task View", "title": "Task View in Windows", "shortName": "Task"}, - {"name": "File Explorer", "title": "File Explorer in Windows", "shortName": "File"}, - {"name": "Lock Sreen", "title": "Lock Screen Windows", "shortName": "Lock"}, - {"name": "Misson Control", "title": "Misson Control in Mac", "shortName": "MCtl"}, - {"name": "Lanuch Pad", "title": "Lanuch Pad in Windows", "shortName": "LPad"}, - {"name": "Left Option", "title": "Left Option", "shortName": "LOpt"}, - {"name": "Right Option", "title": "Right Option", "shortName": "ROpt"}, - {"name": "Left Cmd", "title": "Left Command", "shortName": "LCmd"}, - {"name": "Right Cmd", "title": "Right Command", "shortName": "RCmd"}, - {"name": "Bluetooth Host 1", "title": "Bluetooth Host 1", "shortName": "BTH1"}, - {"name": "Bluetooth Host 2", "title": "Bluetooth Host 2", "shortName": "BTH2"}, - {"name": "Bluetooth Host 3", "title": "Bluetooth Host 3", "shortName": "BTH3"}, - {"name": "2.4G Host", "title": "2.4G Host", "shortName": "2.4G"}, - {"name": "Battery Level", "title": "Show battery level", "shortName": "Batt"} - ], - "matrix": {"rows": 6, "cols": 18}, - "layouts": { - "keymap":[ - [ - { - "w": 1.5, - "h": 1.5 - }, - "0,1\n\n\n\n\n\n\n\n\ne0", - { - "y": 0, - "x": 0.6, - "c": "#777777" - }, - "0,2\nESC", - { - "x": 1, - "c": "#cccccc" - }, - "0,3", - "0,4", - "0,5", - "0,6", - { - "x": 0.5, - "c": "#aaaaaa" - }, - "0,7", - "0,8", - "0,9", - "0,10", - { - "x": 0.5, - "c": "#cccccc" - }, - "0,11", - "0,12", - "0,13", - "0,14", - { - "x": 0.25, - "c": "#aaaaaa" - }, - "0,15", - "0,16", - "0,17" - ], - [ - { - "x": 2.1, - "y": 0.25, - "c": "#cccccc" - }, - "1,1", - "1,2", - "1,3", - "1,4", - "1,5", - "1,6", - "1,7", - "1,8", - "1,9", - "1,10", - "1,11", - "1,12", - "1,13", - { - "c": "#aaaaaa", - "w": 2 - }, - "1,14", - { - "x": 0.25 - }, - "1,15", - "1,16", - "1,17", - { - "c": "#cccccc", - "x": 0.25 - } - ], - [ - { - "x": 0.25, - "y": -0.4, - "h": 1.1, - "w": 1.1 - }, - "2,0", - { - "x": 0.75, - "y": 0.4, - "c": "#aaaaaa", - "w": 1.5 - }, - "2,1", - { - "c": "#cccccc" - }, - "2,2", - "2,3", - "2,4", - "2,5", - "2,6", - "2,7", - "2,8", - "2,9", - "2,10", - "2,11", - "2,12", - "2,13", - { - "w": 1.5, - "c": "#aaaaaa" - }, - "2,14", - { - "x": 0.25 - }, - "2,15", - "2,16", - "2,17" - ], - [ - { - "x": 0.25, - "y": -0.3, - "h": 1.1, - "w": 1.1, - "c": "#cccccc" - }, - "3,0", - { - "x": 0.75, - "y": 0.3, - "c": "#aaaaaa", - "w": 1.75 - }, - "3,1", - { - "c": "#cccccc" - }, - "3,2", - "3,3", - "3,4", - "3,5", - "3,6", - "3,7", - "3,8", - "3,9", - "3,10", - "3,11", - "3,12", - { - "c": "#777777", - "w": 2.25 - }, - "3,14" - ], - [ - { - "x": 0.25, - "y": -0.2, - "h": 1.1, - "w": 1.1, - "c": "#cccccc" - }, - "4,0", - { - "x": 0.75, - "y": 0.2, - "c": "#aaaaaa", - "w": 2.25 - }, - "4,1", - { - "c": "#cccccc" - }, - "4,3", - "4,4", - "4,5", - "4,6", - "4,7", - "4,8", - "4,9", - "4,10", - "4,11", - "4,12", - { - "c": "#aaaaaa", - "w": 2.75 - }, - "4,14", - { - "c": "#cccccc", - "x": 1.25, - "w": 1 - }, - "4,16" - ], - [ - { - "x": 0.25, - "y": -0.1, - "h": 1.1, - "w": 1.1 - }, - "5,0", - { - "x": 0.75, - "y": 0.1, - "c": "#aaaaaa", - "w": 1.25 - }, - "5,1", - { - "w": 1.25 - }, - "5,2", - { - "w": 1.25 - }, - "5,3", - { - "c": "#cccccc", - "w": 6.25 - }, - "5,7", - { - "c": "#aaaaaa", - "w": 1.25 - }, - "5,11", - { - "w": 1.25 - }, - "5,12", - { - "w": 1.25 - }, - "5,13", - { - "w": 1.25 - }, - "5,14", - { - "c": "#cccccc", - "w": 1, - "x": 0.25 - }, - "5,15", - "5,16", - "5,17" - ] - ] - } -} diff --git a/keyboards/lemokey/l3/via_json/l3_iso.json b/keyboards/lemokey/l3/via_json/l3_iso.json deleted file mode 100644 index 3f10e2c16f..0000000000 --- a/keyboards/lemokey/l3/via_json/l3_iso.json +++ /dev/null @@ -1,348 +0,0 @@ -{ - "name": "Lemokey L3", - "vendorId": "0x362D", - "productId": "0x0131", - "firmwareVersion": 1, - "keycodes": ["qmk_lighting"], - "menus": [ - { - "label": "Lighting", - "content": [ - { - "label": "Backlight", - "content": [ - { - "label": "Brightness", - "type": "range", - "options": [0, 255], - "content": ["id_qmk_rgb_matrix_brightness", 3, 1] - }, - { - "label": "Effect", - "type": "dropdown", - "content": ["id_qmk_rgb_matrix_effect", 3, 2], - "options": [ - ["None", 0], - ["Solid Color", 1], - ["Breathing", 2], - ["Band Spiral Val", 3], - ["Cycle All", 4], - ["Cycle Left Right", 5], - ["Cycle Up Down", 6], - ["Rainbow Moving Chevron", 7], - ["Cycle Out In", 8], - ["Cycle Out In Dual", 9], - ["Cycle Pinwheel", 10], - ["Cycle Spiral", 11], - ["Dual Beacon", 12], - ["Rainbow Beacon", 13], - ["Jellybean Raindrops", 14], - ["Pixel Rain", 15], - ["Typing Heatmap", 16], - ["Digital Rain", 17], - ["Reactive Simple", 18], - ["Reactive Multiwide", 19], - ["Reactive Multinexus", 20], - ["Splash", 21], - ["Solid Splash", 22] - ] - }, - { - "showIf": "{id_qmk_rgb_matrix_effect} > 1", - "label": "Effect Speed", - "type": "range", - "options": [0, 255], - "content": ["id_qmk_rgb_matrix_effect_speed", 3, 3] - }, - { - "showIf": "{id_qmk_rgb_matrix_effect} != 0 && ( {id_qmk_rgb_matrix_effect} < 4 || {id_qmk_rgb_matrix_effect} == 18 || ({id_qmk_rgb_matrix_effect} > 17 && {id_qmk_rgb_matrix_effect} != 21) ) ", - "label": "Color", - "type": "color", - "content": ["id_qmk_rgb_matrix_color", 3, 4] - } - ] - } - ] - } - ], - "customKeycodes": [ - {"name": "Task View", "title": "Task View in Windows", "shortName": "Task"}, - {"name": "File Explorer", "title": "File Explorer in Windows", "shortName": "File"}, - {"name": "Lock Sreen", "title": "Lock Screen Windows", "shortName": "Lock"}, - {"name": "Misson Control", "title": "Misson Control in Mac", "shortName": "MCtl"}, - {"name": "Lanuch Pad", "title": "Lanuch Pad in Windows", "shortName": "LPad"}, - {"name": "Left Option", "title": "Left Option", "shortName": "LOpt"}, - {"name": "Right Option", "title": "Right Option", "shortName": "ROpt"}, - {"name": "Left Cmd", "title": "Left Command", "shortName": "LCmd"}, - {"name": "Right Cmd", "title": "Right Command", "shortName": "RCmd"}, - {"name": "Bluetooth Host 1", "title": "Bluetooth Host 1", "shortName": "BTH1"}, - {"name": "Bluetooth Host 2", "title": "Bluetooth Host 2", "shortName": "BTH2"}, - {"name": "Bluetooth Host 3", "title": "Bluetooth Host 3", "shortName": "BTH3"}, - {"name": "2.4G Host", "title": "2.4G Host", "shortName": "2.4G"}, - {"name": "Battery Level", "title": "Show battery level", "shortName": "Batt"} - ], - "matrix": {"rows": 6, "cols": 18}, - "layouts": { - "keymap":[ - [ - { - "w": 1.5, - "h": 1.5 - }, - "0,1\n\n\n\n\n\n\n\n\ne0", - { - "y": 0, - "x": 0.6, - "c": "#777777" - }, - "0,2\nESC", - { - "x": 1, - "c": "#cccccc" - }, - "0,3", - "0,4", - "0,5", - "0,6", - { - "x": 0.5, - "c": "#aaaaaa" - }, - "0,7", - "0,8", - "0,9", - "0,10", - { - "x": 0.5, - "c": "#cccccc" - }, - "0,11", - "0,12", - "0,13", - "0,14", - { - "x": 0.25, - "c": "#aaaaaa" - }, - "0,15", - "0,16", - "0,17" - ], - [ - { - "x": 2.1, - "y": 0.25, - "c": "#cccccc" - }, - "1,1", - "1,2", - "1,3", - "1,4", - "1,5", - "1,6", - "1,7", - "1,8", - "1,9", - "1,10", - "1,11", - "1,12", - "1,13", - { - "c": "#aaaaaa", - "w": 2 - }, - "1,14", - { - "x": 0.25 - }, - "1,15", - "1,16", - "1,17", - { - "c": "#cccccc", - "x": 0.25 - } - ], - [ - { - "x": 0.25, - "y": -0.4, - "h": 1.1, - "w": 1.1 - }, - "2,0", - { - "x": 0.75, - "y": 0.4, - "c": "#aaaaaa", - "w": 1.5 - }, - "2,1", - { - "c": "#cccccc" - }, - "2,2", - "2,3", - "2,4", - "2,5", - "2,6", - "2,7", - "2,8", - "2,9", - "2,10", - "2,11", - "2,12", - "2,13", - { - "x": 0.25, - "c": "#777777", - "w": 1.25, - "h": 2, - "w2": 1.5, - "h2": 1, - "x2": -0.25 - }, - "2,14", - { - "x": 0.25, - "c": "#aaaaaa" - }, - "2,15", - "2,16", - "2,17" - ], - [ - { - "x": 0.25, - "y": -0.3, - "h": 1.1, - "w": 1.1, - "c": "#cccccc" - }, - "3,0", - { - "x": 0.75, - "y": 0.3, - "c": "#aaaaaa", - "w": 1.75 - }, - "3,1", - { - "c": "#cccccc" - }, - "3,2", - "3,3", - "3,4", - "3,5", - "3,6", - "3,7", - "3,8", - "3,9", - "3,10", - "3,11", - "3,12", - "3,14", - { - "c": "#777777", - "w": 1.25 - } - ], - [ - { - "x": 0.25, - "y": -0.2, - "h": 1.1, - "w": 1.1, - "c": "#cccccc" - }, - "4,0", - { - "x": 0.75, - "y": 0.2, - "c": "#aaaaaa", - "w": 1.25 - }, - "4,1", - { - "c": "#cccccc" - }, - "4,2", - "4,3", - "4,4", - "4,5", - "4,6", - "4,7", - "4,8", - "4,9", - "4,10", - "4,11", - "4,12", - { - "c": "#aaaaaa", - "w": 2.75 - }, - "4,14", - { - "c": "#cccccc", - "x": 1.25, - "w": 1 - }, - "4,16" - ], - [ - { - "x": 0.25, - "y": -0.1, - "h": 1.1, - "w": 1.1 - }, - "5,0", - { - "x": 0.75, - "y": 0.1, - "c": "#aaaaaa", - "w": 1.25 - }, - "5,1", - { - "w": 1.25 - }, - "5,2", - { - "w": 1.25 - }, - "5,3", - { - "c": "#cccccc", - "w": 6.25 - }, - "5,7", - { - "c": "#aaaaaa", - "w": 1.25 - }, - "5,11", - { - "w": 1.25 - }, - "5,12", - { - "w": 1.25 - }, - "5,13", - { - "w": 1.25 - }, - "5,14", - { - "c": "#cccccc", - "w": 1, - "x": 0.25 - }, - "5,15", - "5,16", - "5,17" - ] - ] - } -} diff --git a/keyboards/lemokey/p1_pro/ansi_encoder/ansi_encoder.c b/keyboards/lemokey/p1_pro/ansi_encoder/ansi_encoder.c deleted file mode 100644 index 744a7f2eb3..0000000000 --- a/keyboards/lemokey/p1_pro/ansi_encoder/ansi_encoder.c +++ /dev/null @@ -1,148 +0,0 @@ -/* Copyright 2024 @ 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/>. - */ - -#include "quantum.h" - -// clang-format off - -#ifdef RGB_MATRIX_ENABLE -const snled27351_led_t PROGMEM g_snled27351_leds[RGB_MATRIX_LED_COUNT] = { -/* Refer to snled27351manual for these locations - * driver - * | R location - * | | G location - * | | | B location - * | | | | */ - {0, A_15, C_15, B_15}, - {0, A_14, C_14, B_14}, - {0, A_13, C_13, B_13}, - {0, A_12, C_12, B_12}, - {0, A_11, C_11, B_11}, - {0, A_10, C_10, B_10}, - {0, A_9, C_9, B_9}, - {0, A_8, C_8, B_8}, - {0, A_7, C_7, B_7}, - {0, A_6, C_6, B_6}, - {0, A_5, C_5, B_5}, - {0, A_4, C_4, B_4}, - {0, A_3, C_3, B_3}, - {0, A_2, C_2, B_2}, - - {0, G_15, I_15, H_15}, - {0, G_14, I_14, H_14}, - {0, G_13, I_13, H_13}, - {0, G_12, I_12, H_12}, - {0, G_11, I_11, H_11}, - {0, G_10, I_10, H_10}, - {0, G_9, I_9, H_9}, - {0, G_8, I_8, H_8}, - {0, G_7, I_7, H_7}, - {0, G_6, I_6, H_6}, - {0, G_5, I_5, H_5}, - {0, G_4, I_4, H_4}, - {0, G_3, I_3, H_3}, - {0, G_2, I_2, H_2}, - {0, G_1, I_1, H_1}, - - {0, D_15, F_15, E_15}, - {0, D_14, F_14, E_14}, - {0, D_13, F_13, E_13}, - {0, D_12, F_12, E_12}, - {0, D_11, F_11, E_11}, - {0, D_10, F_10, E_10}, - {0, D_9, F_9, E_9}, - {0, D_8, F_8, E_8}, - {0, D_7, F_7, E_7}, - {0, D_6, F_6, E_6}, - {0, D_5, F_5, E_5}, - {0, D_4, F_4, E_4}, - {0, D_3, F_3, E_3}, - {0, D_2, F_2, E_2}, - {0, D_1, F_1, E_1}, - - {1, A_15, C_15, B_15}, - {1, A_14, C_14, B_14}, - {1, A_13, C_13, B_13}, - {1, A_12, C_12, B_12}, - {1, A_11, C_11, B_11}, - {1, A_10, C_10, B_10}, - {1, A_9, C_9, B_9}, - {1, A_8, C_8, B_8}, - {1, A_7, C_7, B_7}, - {1, A_6, C_6, B_6}, - {1, A_5, C_5, B_5}, - {1, A_4, C_4, B_4}, - {1, A_2, C_2, B_2}, - {1, A_1, C_1, B_1}, - - {1, G_15, I_15, H_15}, - {1, G_13, I_13, H_13}, - {1, G_12, I_12, H_12}, - {1, G_11, I_11, H_11}, - {1, G_10, I_10, H_10}, - {1, G_9, I_9, H_9}, - {1, G_8, I_8, H_8}, - {1, G_7, I_7, H_7}, - {1, G_6, I_6, H_6}, - {1, G_5, I_5, H_5}, - {1, G_4, I_4, H_4}, - {1, G_3, I_3, H_3}, - {1, G_2, I_2, H_2}, - - {1, D_15, F_15, E_15}, - {1, D_14, F_14, E_14}, - {1, D_13, F_13, E_13}, - {1, D_9, F_9, E_9}, - {1, D_6, F_6, E_6}, - {1, D_5, F_5, E_5}, - {1, D_4, F_4, E_4}, - {1, D_3, F_3, E_3}, - {1, D_2, F_2, E_2}, - {1, D_1, F_1, E_1}, -}; - -#define __ NO_LED - -led_config_t g_led_config = { - { - // Key Matrix to LED Index - { 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, 40, 41, 42, 43 }, - { 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, __, 56, 57 }, - { 58, __, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, __}, - { 71, 72, 73, __, __, __, 74, __, __, 75, 76, 77, 78, 79, 80 }, - }, - { - // LED Index to Physical Position - {0, 0}, {18, 0}, {33, 0}, {48, 0}, {62, 0}, {81, 0}, {95, 0}, {110, 0}, {125, 0}, {143, 0}, {158, 0}, {172, 0}, {187, 0}, {205, 0}, - {0,15}, {15,15}, {29,15}, {44,15}, {59,15}, {73,15}, {88,15}, {103,15}, {117,15}, {132,15}, {146,15}, {161,15}, {176,15}, {198,15}, {224,15}, - {4,26}, {22,26}, {37,26}, {51,26}, {66,26}, {81,26}, {95,26}, {110,26}, {125,26}, {139,26}, {154,26}, {168,26}, {183,26}, {201,26}, {224,26}, - {6,38}, {26,38}, {40,38}, {55,38}, {70,38}, {84,38}, {99,38}, {114,38}, {128,38}, {143,38}, {158,38}, {172,38}, {196,38}, {224,38}, - {8,49}, {33,49}, {48,49}, {62,49}, {77,49}, {92,49}, {106,49}, {121,49}, {136,49}, {150,49}, {165,49}, {185,49}, {209,52}, - {2,61}, {20,61}, {38,61}, {94,61}, {147,61}, {161,61}, {176,61}, {195,64}, {209,64}, {224,64}, - }, - { - // RGB LED Index to Flag - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - } -}; -#endif diff --git a/keyboards/lemokey/p1_pro/ansi_encoder/config.h b/keyboards/lemokey/p1_pro/ansi_encoder/config.h deleted file mode 100644 index cc1ec118bf..0000000000 --- a/keyboards/lemokey/p1_pro/ansi_encoder/config.h +++ /dev/null @@ -1,57 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#pragma once - -#ifdef RGB_MATRIX_ENABLE -/* RGB Matrix driver configuration */ -# define DRIVER_COUNT 2 -# define RGB_MATRIX_LED_COUNT 81 - -# define SPI_SCK_PIN A5 -# define SPI_MISO_PIN A6 -# define SPI_MOSI_PIN A7 - -# define DRIVER_CS_PINS \ - { B15, C6 } -# define SNLED23751_SPI_DIVISOR 16 -# define SPI_DRIVER SPIDQ - -/* Scan phase of led driver set as MSKPHASE_9CHANNEL(defined as 0x03 in CKLED2001.h) */ -# define SNLED27351_PHASE_CHANNEL MSKPHASE_9CHANNEL - -/* Set LED driver current */ -# define SNLED27351_CURRENT_TUNE \ - { 0x2C, 0x2C, 0x2C, 0x2C, 0x2C, 0x2C, 0x2C, 0x2C, 0x2C, 0x2C, 0x2C, 0x2C } - -/* Set to infinit, which is use in USB mode by default */ -# define RGB_MATRIX_TIMEOUT RGB_MATRIX_TIMEOUT_INFINITE - -/* Allow shutdown of led driver to save power */ -# define RGB_MATRIX_DRIVER_SHUTDOWN_ENABLE -/* Turn off backlight on low brightness to save power */ -# define RGB_MATRIX_BRIGHTNESS_TURN_OFF_VAL 32 - -/* Caps lock indicating led */ -# define CAPS_LOCK_INDEX 44 -# define DIM_CAPS_LOCK -# define SPACE_KEY_LOW_BAT_IND { 74 } -# define WINLOCK_LED_LIST { 72 } - -# define RGB_MATRIX_KEYPRESSES -# define RGB_MATRIX_FRAMEBUFFER_EFFECTS - -#endif diff --git a/keyboards/lemokey/p1_pro/ansi_encoder/info.json b/keyboards/lemokey/p1_pro/ansi_encoder/info.json deleted file mode 100644 index bfb685c1d3..0000000000 --- a/keyboards/lemokey/p1_pro/ansi_encoder/info.json +++ /dev/null @@ -1,99 +0,0 @@ -{ - "usb": { - "pid": "0x0303", - "device_version": "1.0.1" - }, - "layouts": { - "LAYOUT_ansi_82": { - "layout": [ - {"matrix": [0, 0], "x": 0, "y": 0}, - {"matrix": [0, 1], "x": 1.25, "y": 0}, - {"matrix": [0, 2], "x": 2.25, "y": 0}, - {"matrix": [0, 3], "x": 3.25, "y": 0}, - {"matrix": [0, 4], "x": 4.25, "y": 0}, - {"matrix": [0, 5], "x": 5.5, "y": 0}, - {"matrix": [0, 6], "x": 6.5, "y": 0}, - {"matrix": [0, 7], "x": 7.5, "y": 0}, - {"matrix": [0, 8], "x": 8.5, "y": 0}, - {"matrix": [0, 9], "x": 9.75, "y": 0}, - {"matrix": [0, 10], "x": 10.75, "y": 0}, - {"matrix": [0, 11], "x": 11.75, "y": 0}, - {"matrix": [0, 12], "x": 12.75, "y": 0}, - {"matrix": [0, 13], "x": 14, "y": 0}, - {"matrix": [0, 14], "x": 15.25, "y": 0}, - - {"matrix": [1, 0], "x": 0, "y": 1.25}, - {"matrix": [1, 1], "x": 1, "y": 1.25}, - {"matrix": [1, 2], "x": 2, "y": 1.25}, - {"matrix": [1, 3], "x": 3, "y": 1.25}, - {"matrix": [1, 4], "x": 4, "y": 1.25}, - {"matrix": [1, 5], "x": 5, "y": 1.25}, - {"matrix": [1, 6], "x": 6, "y": 1.25}, - {"matrix": [1, 7], "x": 7, "y": 1.25}, - {"matrix": [1, 8], "x": 8, "y": 1.25}, - {"matrix": [1, 9], "x": 9, "y": 1.25}, - {"matrix": [1, 10], "x": 10, "y": 1.25}, - {"matrix": [1, 11], "x": 11, "y": 1.25}, - {"matrix": [1, 12], "x": 12, "y": 1.25}, - {"matrix": [1, 13], "x": 13, "y": 1.25, "w": 2}, - {"matrix": [1, 14], "x": 15.25, "y": 1.25}, - - {"matrix": [2, 0], "x": 0, "y": 2.25, "w": 1.5}, - {"matrix": [2, 1], "x": 1.5, "y": 2.25}, - {"matrix": [2, 2], "x": 2.5, "y": 2.25}, - {"matrix": [2, 3], "x": 3.5, "y": 2.25}, - {"matrix": [2, 4], "x": 4.5, "y": 2.25}, - {"matrix": [2, 5], "x": 5.5, "y": 2.25}, - {"matrix": [2, 6], "x": 6.5, "y": 2.25}, - {"matrix": [2, 7], "x": 7.5, "y": 2.25}, - {"matrix": [2, 8], "x": 8.5, "y": 2.25}, - {"matrix": [2, 9], "x": 9.5, "y": 2.25}, - {"matrix": [2, 10], "x": 10.5, "y": 2.25}, - {"matrix": [2, 11], "x": 11.5, "y": 2.25}, - {"matrix": [2, 12], "x": 12.5, "y": 2.25}, - {"matrix": [2, 13], "x": 13.5, "y": 2.25, "w": 1.5}, - {"matrix": [2, 14], "x": 15.25, "y": 2.25}, - - {"matrix": [3, 0], "x": 0, "y": 3.25, "w": 1.75}, - {"matrix": [3, 1], "x": 1.75, "y": 3.25}, - {"matrix": [3, 2], "x": 2.75, "y": 3.25}, - {"matrix": [3, 3], "x": 3.75, "y": 3.25}, - {"matrix": [3, 4], "x": 4.75, "y": 3.25}, - {"matrix": [3, 5], "x": 5.75, "y": 3.25}, - {"matrix": [3, 6], "x": 6.75, "y": 3.25}, - {"matrix": [3, 7], "x": 7.75, "y": 3.25}, - {"matrix": [3, 8], "x": 8.75, "y": 3.25}, - {"matrix": [3, 9], "x": 9.75, "y": 3.25}, - {"matrix": [3, 10], "x": 10.75, "y": 3.25}, - {"matrix": [3, 11], "x": 11.75, "y": 3.25}, - {"matrix": [3, 13], "x": 12.75, "y": 3.25, "w": 2.25}, - {"matrix": [3, 14], "x": 15.25, "y": 3.25}, - - {"matrix": [4, 0], "x": 0, "y": 4.25, "w": 2.25}, - {"matrix": [4, 2], "x": 2.25, "y": 4.25}, - {"matrix": [4, 3], "x": 3.25, "y": 4.25}, - {"matrix": [4, 4], "x": 4.25, "y": 4.25}, - {"matrix": [4, 5], "x": 5.25, "y": 4.25}, - {"matrix": [4, 6], "x": 6.25, "y": 4.25}, - {"matrix": [4, 7], "x": 7.25, "y": 4.25}, - {"matrix": [4, 8], "x": 8.25, "y": 4.25}, - {"matrix": [4, 9], "x": 9.25, "y": 4.25}, - {"matrix": [4, 10], "x": 10.25, "y": 4.25}, - {"matrix": [4, 11], "x": 11.25, "y": 4.25}, - {"matrix": [4, 12], "x": 12.25, "y": 4.25, "w": 1.75}, - {"matrix": [4, 13], "x": 14.25, "y": 4.5}, - - {"matrix": [5, 0], "x": 0, "y": 5.25, "w": 1.25}, - {"matrix": [5, 1], "x": 1.25, "y": 5.25, "w": 1.25}, - {"matrix": [5, 2], "x": 2.5, "y": 5.25, "w": 1.25}, - {"matrix": [5, 6], "x": 3.75, "y": 5.25, "w": 6.25}, - {"matrix": [5, 9], "x": 10, "y": 5.25}, - {"matrix": [5, 10], "x": 11, "y": 5.25}, - {"matrix": [5, 11], "x": 12, "y": 5.25}, - {"matrix": [5, 12], "x": 13.25, "y": 5.5}, - {"matrix": [5, 13], "x": 14.25, "y": 5.5}, - {"matrix": [5, 14], "x": 15.25, "y": 5.5} - ] - } - } -} diff --git a/keyboards/lemokey/p1_pro/ansi_encoder/keymaps/default/keymap.c b/keyboards/lemokey/p1_pro/ansi_encoder/keymaps/default/keymap.c deleted file mode 100644 index 2973f01c5c..0000000000 --- a/keyboards/lemokey/p1_pro/ansi_encoder/keymaps/default/keymap.c +++ /dev/null @@ -1,77 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#include QMK_KEYBOARD_H -#include "lemokey_common.h" - -// clang-format off -enum layers { - BASE, - FN, - L2, - L3, -}; - -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [BASE] = LAYOUT_ansi_82( - KC_ESC, 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_DEL, KC_MUTE, - KC_GRV, 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_HOME, - 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_PGUP, - 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_PGDN, - 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_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - - [FN] = LAYOUT_ansi_82( - _______, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, RGB_TOG, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_END, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, - _______, GU_TOGG, _______, _______, _______, _______, _______, _______, _______, _______), - - [L2] = LAYOUT_ansi_82( - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - - [L3] = LAYOUT_ansi_82( - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______) - -}; - -#if defined(ENCODER_MAP_ENABLE) -const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][2] = { - [BASE] = {ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [FN] = {ENCODER_CCW_CW(RGB_VAD, RGB_VAI)}, - [L2] = {ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [L3] = {ENCODER_CCW_CW(RGB_VAD, RGB_VAI)} -}; -#endif - -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - if(!process_record_lemokey_common(keycode, record)) { - return false; - } - return true; -} diff --git a/keyboards/lemokey/p1_pro/ansi_encoder/keymaps/via/keymap.c b/keyboards/lemokey/p1_pro/ansi_encoder/keymaps/via/keymap.c deleted file mode 100644 index 2973f01c5c..0000000000 --- a/keyboards/lemokey/p1_pro/ansi_encoder/keymaps/via/keymap.c +++ /dev/null @@ -1,77 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#include QMK_KEYBOARD_H -#include "lemokey_common.h" - -// clang-format off -enum layers { - BASE, - FN, - L2, - L3, -}; - -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [BASE] = LAYOUT_ansi_82( - KC_ESC, 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_DEL, KC_MUTE, - KC_GRV, 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_HOME, - 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_PGUP, - 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_PGDN, - 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_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - - [FN] = LAYOUT_ansi_82( - _______, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, RGB_TOG, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_END, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, - _______, GU_TOGG, _______, _______, _______, _______, _______, _______, _______, _______), - - [L2] = LAYOUT_ansi_82( - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - - [L3] = LAYOUT_ansi_82( - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______) - -}; - -#if defined(ENCODER_MAP_ENABLE) -const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][2] = { - [BASE] = {ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [FN] = {ENCODER_CCW_CW(RGB_VAD, RGB_VAI)}, - [L2] = {ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [L3] = {ENCODER_CCW_CW(RGB_VAD, RGB_VAI)} -}; -#endif - -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - if(!process_record_lemokey_common(keycode, record)) { - return false; - } - return true; -} diff --git a/keyboards/lemokey/p1_pro/ansi_encoder/keymaps/via/rules.mk b/keyboards/lemokey/p1_pro/ansi_encoder/keymaps/via/rules.mk deleted file mode 100644 index 1e5b99807c..0000000000 --- a/keyboards/lemokey/p1_pro/ansi_encoder/keymaps/via/rules.mk +++ /dev/null @@ -1 +0,0 @@ -VIA_ENABLE = yes diff --git a/keyboards/lemokey/p1_pro/ansi_encoder/rules.mk b/keyboards/lemokey/p1_pro/ansi_encoder/rules.mk deleted file mode 100644 index 6e7633bfe0..0000000000 --- a/keyboards/lemokey/p1_pro/ansi_encoder/rules.mk +++ /dev/null @@ -1 +0,0 @@ -# This file intentionally left blank diff --git a/keyboards/lemokey/p1_pro/config.h b/keyboards/lemokey/p1_pro/config.h deleted file mode 100644 index de2baeb507..0000000000 --- a/keyboards/lemokey/p1_pro/config.h +++ /dev/null @@ -1,110 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#pragma once - -/* Encoder Configuration */ -#define ENCODER_DEFAULT_POS 0x3 -#define ENCODER_MAP_KEY_DELAY 2 - -/* I2C Driver Configuration */ -#define I2C1_SCL_PIN B8 -#define I2C1_SDA_PIN B9 -#define I2C1_CLOCK_SPEED 400000 -#define I2C1_DUTY_CYCLE FAST_DUTY_CYCLE_2 - -/* EEPROM Driver Configuration */ -#define EXTERNAL_EEPROM_BYTE_COUNT 2048 -#define EXTERNAL_EEPROM_PAGE_SIZE 32 -#define EXTERNAL_EEPROM_WRITE_TIME 3 - -/* User used eeprom */ -#define I2C1_OPMODE OPMODE_I2C -#define EXTERNAL_EEPROM_I2C_BASE_ADDRESS 0b10100010 -#define KEYCODE_BUFFER_ENABLE - -#define LED_DRIVER_SHUTDOWN_PIN B14 - -/* Hold Fn+Win to lock Win key */ -#define WIN_LOCK_HOLD_TIME 3000 - -/* Firmware Version for Via */ -#define VIA_FIRMWARE_VERSION 0x00000001 - -#ifdef LK_WIRELESS_ENABLE -/* Hardware configuration */ -# define WT_DRIVER SPIDQ - -# define P2P4_MODE_SELECT_PIN C11 -# define BT_MODE_SELECT_PIN C13 - -# define LKBT51_RESET_PIN C4 -# define LKBT51_INT_INPUT_PIN B1 -# define BLUETOOTH_INT_OUTPUT_PIN A4 - -# define USB_POWER_SENSE_PIN B0 -# define USB_POWER_CONNECTED_LEVEL 0 - -# define BAT_CHARGING_PIN C10 -# define BAT_CHARGING_LEVEL 0 - -# define BAT_LOW_LED_PIN C5 -# define BAT_LOW_LED_PIN_ON_STATE 1 - -# define DP_PULLUP_CONTROL_PIN C6 - -# define BT_HOST_DEVICES_COUNT 3 - -# if defined(RGB_MATRIX_ENABLE) || defined(LED_MATRIX_ENABLE) - -# define BT_INDICATION_LED_LIST \ - { 15, 16, 17 } - -# define P24G_INDICATION_LED_INDEX 18 - -# define BAT_LEVEL_LED_LIST \ - { 15, 16, 17, 18, 19, 20, 21, 22, 23, 24 } - -/* 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 - -/* Reinit LED driver on tranport changed */ -# define REINIT_LED_DRIVER 1 - -# endif - -/* Keep USB connection in blueooth mode */ -# define KEEP_USB_CONNECTION_IN_WIRELESS_MODE - -/* Enable bluetooth NKRO */ -# define WIRELESS_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 - -/* Factory test keys */ -#define FN_KEY_1 MO(1) -#define FN_KEY_2 MO(3) -#define FN_BL_TRIG_KEY KC_END - -#define MATRIX_IO_DELAY 10 diff --git a/keyboards/lemokey/p1_pro/halconf.h b/keyboards/lemokey/p1_pro/halconf.h deleted file mode 100644 index f8f1a2bfaf..0000000000 --- a/keyboards/lemokey/p1_pro/halconf.h +++ /dev/null @@ -1,32 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#pragma once - -#define _CHIBIOS_HAL_CONF_VER_8_0_ - -#define HAL_USE_SPI TRUE -#define HAL_USE_I2C TRUE - -#ifdef LK_WIRELESS_ENABLE -# define HAL_USE_RTC TRUE -#endif - -#if defined(LK_WIRELESS_ENABLE) || defined(ENCODER_ENABLE) -# define PAL_USE_CALLBACKS TRUE -#endif - -#include_next diff --git a/keyboards/lemokey/p1_pro/info.json b/keyboards/lemokey/p1_pro/info.json deleted file mode 100644 index 1b50f4d371..0000000000 --- a/keyboards/lemokey/p1_pro/info.json +++ /dev/null @@ -1,73 +0,0 @@ -{ - "keyboard_name": "Lemokey P1 Pro", - "manufacturer": "Keychron", - "url": "https://github.com/Keychron", - "maintainer": "Keychron", - "processor": "WB32F3G71", - "bootloader": "wb32-dfu", - "usb": { - "vid": "0x362D" - }, - "features": { - "bootmagic": true, - "extrakey": true, - "mousekey": true, - "encoder": true, - "encoder_map": true, - "nkro": true, - "rgb_matrix": true, - "raw": true, - "send_string": true - }, - "matrix_pins": { - "cols": ["C14", "C15", "C2", "C3", "A0", "A1", "A2", "A3", "B10", "B12", "B13", "C7", "C8", "C9", "A10"], - "rows": ["C12", "D2", "B3", "B4", "B5", "B6"] - }, - "diode_direction": "ROW2COL", - "encoder": { - "rotary": [ - {"pin_a": "A8", "pin_b": "A9"} - ] - }, - "indicators": { - "caps_lock": "C1", - "on_state": 1 - }, - "rgb_matrix": { - "driver": "snled27351_spi", - "sleep": true, - "animations": { - "band_spiral_val": true, - "breathing": true, - "cycle_all": true, - "cycle_left_right": true, - "cycle_out_in": true, - "cycle_out_in_dual": true, - "cycle_pinwheel": true, - "cycle_spiral": true, - "cycle_up_down": true, - "digital_rain": true, - "dual_beacon": true, - "jellybean_raindrops": true, - "pixel_rain": true, - "rainbow_beacon": true, - "rainbow_moving_chevron": true, - "solid_reactive_multinexus": true, - "solid_reactive_multiwide": true, - "solid_reactive_simple": true, - "solid_splash": true, - "splash": true, - "typing_heatmap": true - } - }, - "dynamic_keymap": { - "layer_count": 4 - }, - "eeprom": { - "driver": "i2c" - }, - "build": { - "debounce_type": "sym_eager_pk" - }, - "debounce": 20 -} diff --git a/keyboards/lemokey/p1_pro/iso_encoder/config.h b/keyboards/lemokey/p1_pro/iso_encoder/config.h deleted file mode 100644 index 60aba266bd..0000000000 --- a/keyboards/lemokey/p1_pro/iso_encoder/config.h +++ /dev/null @@ -1,57 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#pragma once - -#ifdef RGB_MATRIX_ENABLE -/* RGB Matrix driver configuration */ -# define DRIVER_COUNT 2 -# define RGB_MATRIX_LED_COUNT 82 - -# define SPI_SCK_PIN A5 -# define SPI_MISO_PIN A6 -# define SPI_MOSI_PIN A7 - -# define DRIVER_CS_PINS \ - { B15, C6 } -# define SNLED23751_SPI_DIVISOR 16 -# define SPI_DRIVER SPIDQ - -/* Scan phase of led driver set as MSKPHASE_9CHANNEL(defined as 0x03 in CKLED2001.h) */ -# define SNLED27351_PHASE_CHANNEL MSKPHASE_9CHANNEL - -/* Set LED driver current */ -# define SNLED27351_CURRENT_TUNE \ - { 0x2C, 0x2C, 0x2C, 0x2C, 0x2C, 0x2C, 0x2C, 0x2C, 0x2C, 0x2C, 0x2C, 0x2C } - -/* Set to infinit, which is use in USB mode by default */ -# define RGB_MATRIX_TIMEOUT RGB_MATRIX_TIMEOUT_INFINITE - -/* Allow shutdown of led driver to save power */ -# define RGB_MATRIX_DRIVER_SHUTDOWN_ENABLE -/* Turn off backlight on low brightness to save power */ -# define RGB_MATRIX_BRIGHTNESS_TURN_OFF_VAL 32 - -/* Caps lock indicating led */ -# define CAPS_LOCK_INDEX 44 -# define DIM_CAPS_LOCK -# define SPACE_KEY_LOW_BAT_IND { 75 } -# define WINLOCK_LED_LIST { 73 } - -# define RGB_MATRIX_KEYPRESSES -# define RGB_MATRIX_FRAMEBUFFER_EFFECTS - -#endif diff --git a/keyboards/lemokey/p1_pro/iso_encoder/info.json b/keyboards/lemokey/p1_pro/iso_encoder/info.json deleted file mode 100644 index 414d9f808a..0000000000 --- a/keyboards/lemokey/p1_pro/iso_encoder/info.json +++ /dev/null @@ -1,100 +0,0 @@ -{ - "usb": { - "pid": "0x0304", - "device_version": "1.0.2" - }, - "layouts": { - "LAYOUT_iso_83": { - "layout": [ - {"matrix": [0, 0], "x": 0, "y": 0}, - {"matrix": [0, 1], "x": 1.25, "y": 0}, - {"matrix": [0, 2], "x": 2.25, "y": 0}, - {"matrix": [0, 3], "x": 3.25, "y": 0}, - {"matrix": [0, 4], "x": 4.25, "y": 0}, - {"matrix": [0, 5], "x": 5.5, "y": 0}, - {"matrix": [0, 6], "x": 6.5, "y": 0}, - {"matrix": [0, 7], "x": 7.5, "y": 0}, - {"matrix": [0, 8], "x": 8.5, "y": 0}, - {"matrix": [0, 9], "x": 9.75, "y": 0}, - {"matrix": [0, 10], "x": 10.75, "y": 0}, - {"matrix": [0, 11], "x": 11.75, "y": 0}, - {"matrix": [0, 12], "x": 12.75, "y": 0}, - {"matrix": [0, 13], "x": 14, "y": 0}, - {"matrix": [0, 14], "x": 15.25, "y": 0}, - - {"matrix": [1, 0], "x": 0, "y": 1.25}, - {"matrix": [1, 1], "x": 1, "y": 1.25}, - {"matrix": [1, 2], "x": 2, "y": 1.25}, - {"matrix": [1, 3], "x": 3, "y": 1.25}, - {"matrix": [1, 4], "x": 4, "y": 1.25}, - {"matrix": [1, 5], "x": 5, "y": 1.25}, - {"matrix": [1, 6], "x": 6, "y": 1.25}, - {"matrix": [1, 7], "x": 7, "y": 1.25}, - {"matrix": [1, 8], "x": 8, "y": 1.25}, - {"matrix": [1, 9], "x": 9, "y": 1.25}, - {"matrix": [1, 10], "x": 10, "y": 1.25}, - {"matrix": [1, 11], "x": 11, "y": 1.25}, - {"matrix": [1, 12], "x": 12, "y": 1.25}, - {"matrix": [1, 13], "x": 13, "y": 1.25, "w": 2}, - {"matrix": [1, 14], "x": 15.25, "y": 1.25}, - - {"matrix": [2, 0], "x": 0, "y": 2.25, "w": 1.5}, - {"matrix": [2, 1], "x": 1.5, "y": 2.25}, - {"matrix": [2, 2], "x": 2.5, "y": 2.25}, - {"matrix": [2, 3], "x": 3.5, "y": 2.25}, - {"matrix": [2, 4], "x": 4.5, "y": 2.25}, - {"matrix": [2, 5], "x": 5.5, "y": 2.25}, - {"matrix": [2, 6], "x": 6.5, "y": 2.25}, - {"matrix": [2, 7], "x": 7.5, "y": 2.25}, - {"matrix": [2, 8], "x": 8.5, "y": 2.25}, - {"matrix": [2, 9], "x": 9.5, "y": 2.25}, - {"matrix": [2, 10], "x": 10.5, "y": 2.25}, - {"matrix": [2, 11], "x": 11.5, "y": 2.25}, - {"matrix": [2, 12], "x": 12.5, "y": 2.25}, - {"matrix": [2, 14], "x": 15.25, "y": 2.25}, - - {"matrix": [3, 0], "x": 0, "y": 3.25, "w": 1.75}, - {"matrix": [3, 1], "x": 1.75, "y": 3.25}, - {"matrix": [3, 2], "x": 2.75, "y": 3.25}, - {"matrix": [3, 3], "x": 3.75, "y": 3.25}, - {"matrix": [3, 4], "x": 4.75, "y": 3.25}, - {"matrix": [3, 5], "x": 5.75, "y": 3.25}, - {"matrix": [3, 6], "x": 6.75, "y": 3.25}, - {"matrix": [3, 7], "x": 7.75, "y": 3.25}, - {"matrix": [3, 8], "x": 8.75, "y": 3.25}, - {"matrix": [3, 9], "x": 9.75, "y": 3.25}, - {"matrix": [3, 10], "x": 10.75, "y": 3.25}, - {"matrix": [3, 11], "x": 11.75, "y": 3.25}, - {"matrix": [3, 13], "x": 12.75, "y": 3.25}, - {"matrix": [2, 13], "x": 13.75, "y": 2.25, "w": 1.25, "h": 2}, - {"matrix": [3, 14], "x": 15.25, "y": 3.25}, - - {"matrix": [4, 0], "x": 0, "y": 4.25, "w": 1.25}, - {"matrix": [4, 1], "x": 1.25, "y": 4.25}, - {"matrix": [4, 2], "x": 2.25, "y": 4.25}, - {"matrix": [4, 3], "x": 3.25, "y": 4.25}, - {"matrix": [4, 4], "x": 4.25, "y": 4.25}, - {"matrix": [4, 5], "x": 5.25, "y": 4.25}, - {"matrix": [4, 6], "x": 6.25, "y": 4.25}, - {"matrix": [4, 7], "x": 7.25, "y": 4.25}, - {"matrix": [4, 8], "x": 8.25, "y": 4.25}, - {"matrix": [4, 9], "x": 9.25, "y": 4.25}, - {"matrix": [4, 10], "x": 10.25, "y": 4.25}, - {"matrix": [4, 11], "x": 11.25, "y": 4.25}, - {"matrix": [4, 12], "x": 12.25, "y": 4.25, "w": 1.75}, - {"matrix": [4, 13], "x": 14.25, "y": 4.5}, - - {"matrix": [5, 0], "x": 0, "y": 5.25, "w": 1.25}, - {"matrix": [5, 1], "x": 1.25, "y": 5.25, "w": 1.25}, - {"matrix": [5, 2], "x": 2.5, "y": 5.25, "w": 1.25}, - {"matrix": [5, 6], "x": 3.75, "y": 5.25, "w": 6.25}, - {"matrix": [5, 9], "x": 10, "y": 5.25}, - {"matrix": [5, 10], "x": 11, "y": 5.25}, - {"matrix": [5, 11], "x": 12, "y": 5.25}, - {"matrix": [5, 12], "x": 13.25, "y": 5.5}, - {"matrix": [5, 13], "x": 14.25, "y": 5.5}, - {"matrix": [5, 14], "x": 15.25, "y": 5.5} - ] - } - } -} diff --git a/keyboards/lemokey/p1_pro/iso_encoder/iso_encoder.c b/keyboards/lemokey/p1_pro/iso_encoder/iso_encoder.c deleted file mode 100644 index 0fccce8242..0000000000 --- a/keyboards/lemokey/p1_pro/iso_encoder/iso_encoder.c +++ /dev/null @@ -1,149 +0,0 @@ -/* Copyright 2024 @ 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/>. - */ - -#include "quantum.h" - -// clang-format off - -#ifdef RGB_MATRIX_ENABLE -const snled27351_led_t PROGMEM g_snled27351_leds[RGB_MATRIX_LED_COUNT] = { -/* Refer to snled27351manual for these locations - * driver - * | R location - * | | G location - * | | | B location - * | | | | */ - {0, A_15, C_15, B_15}, - {0, A_14, C_14, B_14}, - {0, A_13, C_13, B_13}, - {0, A_12, C_12, B_12}, - {0, A_11, C_11, B_11}, - {0, A_10, C_10, B_10}, - {0, A_9, C_9, B_9}, - {0, A_8, C_8, B_8}, - {0, A_7, C_7, B_7}, - {0, A_6, C_6, B_6}, - {0, A_5, C_5, B_5}, - {0, A_4, C_4, B_4}, - {0, A_3, C_3, B_3}, - {0, A_2, C_2, B_2}, - - {0, G_15, I_15, H_15}, - {0, G_14, I_14, H_14}, - {0, G_13, I_13, H_13}, - {0, G_12, I_12, H_12}, - {0, G_11, I_11, H_11}, - {0, G_10, I_10, H_10}, - {0, G_9, I_9, H_9}, - {0, G_8, I_8, H_8}, - {0, G_7, I_7, H_7}, - {0, G_6, I_6, H_6}, - {0, G_5, I_5, H_5}, - {0, G_4, I_4, H_4}, - {0, G_3, I_3, H_3}, - {0, G_2, I_2, H_2}, - {0, G_1, I_1, H_1}, - - {0, D_15, F_15, E_15}, - {0, D_14, F_14, E_14}, - {0, D_13, F_13, E_13}, - {0, D_12, F_12, E_12}, - {0, D_11, F_11, E_11}, - {0, D_10, F_10, E_10}, - {0, D_9, F_9, E_9}, - {0, D_8, F_8, E_8}, - {0, D_7, F_7, E_7}, - {0, D_6, F_6, E_6}, - {0, D_5, F_5, E_5}, - {0, D_4, F_4, E_4}, - {0, D_3, F_3, E_3}, - {0, D_2, F_2, E_2}, - {0, D_1, F_1, E_1}, - - {1, A_15, C_15, B_15}, - {1, A_14, C_14, B_14}, - {1, A_13, C_13, B_13}, - {1, A_12, C_12, B_12}, - {1, A_11, C_11, B_11}, - {1, A_10, C_10, B_10}, - {1, A_9, C_9, B_9}, - {1, A_8, C_8, B_8}, - {1, A_7, C_7, B_7}, - {1, A_6, C_6, B_6}, - {1, A_5, C_5, B_5}, - {1, A_4, C_4, B_4}, - {1, A_2, C_2, B_2}, - {1, A_1, C_1, B_1}, - - {1, G_15, I_15, H_15}, - {1, G_14, I_14, H_14}, - {1, G_13, I_13, H_13}, - {1, G_12, I_12, H_12}, - {1, G_11, I_11, H_11}, - {1, G_10, I_10, H_10}, - {1, G_9, I_9, H_9}, - {1, G_8, I_8, H_8}, - {1, G_7, I_7, H_7}, - {1, G_6, I_6, H_6}, - {1, G_5, I_5, H_5}, - {1, G_4, I_4, H_4}, - {1, G_3, I_3, H_3}, - {1, G_2, I_2, H_2}, - - {1, D_15, F_15, E_15}, - {1, D_14, F_14, E_14}, - {1, D_13, F_13, E_13}, - {1, D_9, F_9, E_9}, - {1, D_6, F_6, E_6}, - {1, D_5, F_5, E_5}, - {1, D_4, F_4, E_4}, - {1, D_3, F_3, E_3}, - {1, D_2, F_2, E_2}, - {1, D_1, F_1, E_1}, -}; - -#define __ NO_LED - -led_config_t g_led_config = { - { - // Key Matrix to LED Index - { 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, 40, 41, 42, 43 }, - { 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, __, 56, 57 }, - { 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, __ }, - { 72, 73, 74, __, __, __, 75, __, __, 76, 77, 78, 79, 80, 81 }, - }, - { - // LED Index to Physical Position - {0, 0}, {18, 0}, {33, 0}, {48, 0}, {62, 0}, {81, 0}, {95, 0}, {110, 0}, {125, 0}, {143, 0}, {158, 0}, {172, 0}, {187, 0}, {205, 0}, - {0,15}, {15,15}, {29,15}, {44,15}, {59,15}, {73,15}, {88,15}, {103,15}, {117,15}, {132,15}, {146,15}, {161,15}, {176,15}, {201,15}, {224,15}, - {4,26}, {22,26}, {37,26}, {51,26}, {66,26}, {81,26}, {95,26}, {110,26}, {125,26}, {139,26}, {154,26}, {168,26}, {183,26}, {201,30}, {224,26}, - {6,38}, {26,38}, {40,38}, {55,38}, {70,38}, {84,38}, {99,38}, {114,38}, {128,38}, {143,38}, {158,38}, {172,38}, {190,38}, {224,38}, - {2,49}, {18,49}, {33,49}, {48,49}, {62,49}, {77,49}, {92,49}, {106,49}, {121,49}, {136,49}, {150,49}, {165,49}, {190,49}, {209,52}, - {2,61}, {20,61}, {38,61}, {94,61}, {147,61}, {161,61}, {176,61}, {195,64}, {209,64}, {224,64}, - }, - { - // RGB LED Index to Flag - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - } -}; -#endif diff --git a/keyboards/lemokey/p1_pro/iso_encoder/keymaps/default/keymap.c b/keyboards/lemokey/p1_pro/iso_encoder/keymaps/default/keymap.c deleted file mode 100644 index 1fbbfceaa2..0000000000 --- a/keyboards/lemokey/p1_pro/iso_encoder/keymaps/default/keymap.c +++ /dev/null @@ -1,77 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#include QMK_KEYBOARD_H -#include "lemokey_common.h" - -// clang-format off -enum layers { - BASE, - FN, - L2, - L3, -}; - -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [BASE] = LAYOUT_iso_83( - KC_ESC, 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_DEL, KC_MUTE, - KC_GRV, 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_HOME, - 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_PGUP, - 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_NUHS, KC_ENT, KC_PGDN, - KC_LSFT, KC_NUBS, 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_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(FN), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - - [FN] = LAYOUT_iso_83( - _______, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, RGB_TOG, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_END, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, - _______, GU_TOGG, _______, _______, _______, _______, _______, _______, _______, _______), - - [L2] = LAYOUT_iso_83( - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - - [L3] = LAYOUT_iso_83( - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______) - -}; - -#if defined(ENCODER_MAP_ENABLE) -const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][2] = { - [BASE] = {ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [FN] = {ENCODER_CCW_CW(RGB_VAD, RGB_VAI)}, - [L2] = {ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [L3] = {ENCODER_CCW_CW(RGB_VAD, RGB_VAI)} -}; -#endif - -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - if(!process_record_lemokey_common(keycode, record)) { - return false; - } - return true; -} diff --git a/keyboards/lemokey/p1_pro/iso_encoder/keymaps/via/keymap.c b/keyboards/lemokey/p1_pro/iso_encoder/keymaps/via/keymap.c deleted file mode 100644 index 1fbbfceaa2..0000000000 --- a/keyboards/lemokey/p1_pro/iso_encoder/keymaps/via/keymap.c +++ /dev/null @@ -1,77 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#include QMK_KEYBOARD_H -#include "lemokey_common.h" - -// clang-format off -enum layers { - BASE, - FN, - L2, - L3, -}; - -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [BASE] = LAYOUT_iso_83( - KC_ESC, 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_DEL, KC_MUTE, - KC_GRV, 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_HOME, - 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_PGUP, - 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_NUHS, KC_ENT, KC_PGDN, - KC_LSFT, KC_NUBS, 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_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(FN), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - - [FN] = LAYOUT_iso_83( - _______, KC_BRID, KC_BRIU, KC_TASK, KC_FILE, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, RGB_TOG, - _______, BT_HST1, BT_HST2, BT_HST3, P2P4G, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_END, - RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, BAT_LVL, NK_TOGG, _______, _______, _______, _______, _______, _______, - _______, GU_TOGG, _______, _______, _______, _______, _______, _______, _______, _______), - - [L2] = LAYOUT_iso_83( - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - - [L3] = LAYOUT_iso_83( - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______) - -}; - -#if defined(ENCODER_MAP_ENABLE) -const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][2] = { - [BASE] = {ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [FN] = {ENCODER_CCW_CW(RGB_VAD, RGB_VAI)}, - [L2] = {ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [L3] = {ENCODER_CCW_CW(RGB_VAD, RGB_VAI)} -}; -#endif - -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - if(!process_record_lemokey_common(keycode, record)) { - return false; - } - return true; -} diff --git a/keyboards/lemokey/p1_pro/iso_encoder/keymaps/via/rules.mk b/keyboards/lemokey/p1_pro/iso_encoder/keymaps/via/rules.mk deleted file mode 100644 index 1e5b99807c..0000000000 --- a/keyboards/lemokey/p1_pro/iso_encoder/keymaps/via/rules.mk +++ /dev/null @@ -1 +0,0 @@ -VIA_ENABLE = yes diff --git a/keyboards/lemokey/p1_pro/iso_encoder/rules.mk b/keyboards/lemokey/p1_pro/iso_encoder/rules.mk deleted file mode 100644 index 6e7633bfe0..0000000000 --- a/keyboards/lemokey/p1_pro/iso_encoder/rules.mk +++ /dev/null @@ -1 +0,0 @@ -# This file intentionally left blank diff --git a/keyboards/lemokey/p1_pro/mcuconf.h b/keyboards/lemokey/p1_pro/mcuconf.h deleted file mode 100644 index 0eccce35f2..0000000000 --- a/keyboards/lemokey/p1_pro/mcuconf.h +++ /dev/null @@ -1,27 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#pragma once -#include_next - -#undef WB32_I2C_USE_I2C1 -#define WB32_I2C_USE_I2C1 TRUE - -#undef WB32_SPI_USE_QSPI -#define WB32_SPI_USE_QSPI TRUE - -#undef WB32_LSI_ENABLED -#define WB32_LSI_ENABLED TRUE diff --git a/keyboards/lemokey/p1_pro/p1_pro.c b/keyboards/lemokey/p1_pro/p1_pro.c deleted file mode 100644 index 5282556eac..0000000000 --- a/keyboards/lemokey/p1_pro/p1_pro.c +++ /dev/null @@ -1,81 +0,0 @@ -/* Copyright 2024 @ 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 . - */ - -#include "quantum.h" -#include "lemokey_task.h" -#ifdef FACTORY_TEST_ENABLE -# include "factory_test.h" -# include "lemokey_common.h" -#endif -#ifdef LK_WIRELESS_ENABLE -# include "lkbt51.h" -# include "wireless.h" -# include "wireless_common.h" -# include "battery.h" -#endif - -#define POWER_ON_LED_DURATION 3000 -static uint32_t power_on_indicator_timer_buffer; - -void keyboard_post_init_kb(void) { -#ifdef LK_WIRELESS_ENABLE -# ifdef BT_MODE_SELECT_PIN - palSetLineMode(BT_MODE_SELECT_PIN, PAL_MODE_INPUT); -# endif -# ifdef P2P4_MODE_SELECT_PIN - palSetLineMode(P2P4_MODE_SELECT_PIN, PAL_MODE_INPUT); -# endif - - palSetLineMode(B2, PAL_MODE_INPUT); - palSetLineMode(C5, PAL_MODE_INPUT); - - writePin(BAT_LOW_LED_PIN, BAT_LOW_LED_PIN_ON_STATE); - - lkbt51_init(false); - wireless_init(); -#endif - - power_on_indicator_timer_buffer = timer_read32(); - -#ifdef ENCODER_ENABLE - encoder_cb_init(); -#endif - keyboard_post_init_user(); -} - -bool lemokey_task_kb(void) { - if (power_on_indicator_timer_buffer) { - if (timer_elapsed32(power_on_indicator_timer_buffer) > POWER_ON_LED_DURATION) { - power_on_indicator_timer_buffer = 0; - -#ifdef LK_WIRELESS_ENABLE - writePin(BAT_LOW_LED_PIN, !BAT_LOW_LED_PIN_ON_STATE); -#endif - - } else { -#ifdef LK_WIRELESS_ENABLE - writePin(BAT_LOW_LED_PIN, BAT_LOW_LED_PIN_ON_STATE); -#endif - } - } - return true; -} - -#ifdef LK_WIRELESS_ENABLE -bool lpm_is_kb_idle(void) { - return power_on_indicator_timer_buffer == 0 && !factory_reset_indicating(); -} -#endif diff --git a/keyboards/lemokey/p1_pro/post_rules.mk b/keyboards/lemokey/p1_pro/post_rules.mk deleted file mode 100644 index 5deb336ff9..0000000000 --- a/keyboards/lemokey/p1_pro/post_rules.mk +++ /dev/null @@ -1,2 +0,0 @@ -include keyboards/lemokey/common/wireless/wireless.mk - diff --git a/keyboards/lemokey/p1_pro/readme.md b/keyboards/lemokey/p1_pro/readme.md deleted file mode 100644 index f4ca2e5877..0000000000 --- a/keyboards/lemokey/p1_pro/readme.md +++ /dev/null @@ -1,21 +0,0 @@ -# Lemokey P1 Pro - -![Lemokey P1 Pro] - -A customizable 75% keyboard. - -* Keyboard Maintainer: [Keychron](https://github.com/keychron) -* Hardware Supported: Lemokey P1 Pro -* Hardware Availability: [Lemokey P1 Pro QMK/VIA Wireless Custom Mechanical Keyboard] - -Make example for this keyboard (after setting up your build environment): - - make lemokey/p1_pro/ansi_encoder:default - -Flashing example for this keyboard: - - make lemokey/p1_pro/ansi_encoder:default:flash - -**Reset Key**: Disconnect the USB cable, toggle mode switch to "Cable", hold down the *Esc* key or reset button underneath space bar, then connect the USB cable. - -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). diff --git a/keyboards/lemokey/p1_pro/rules.mk b/keyboards/lemokey/p1_pro/rules.mk deleted file mode 100644 index acfe7f4add..0000000000 --- a/keyboards/lemokey/p1_pro/rules.mk +++ /dev/null @@ -1,4 +0,0 @@ - -include keyboards/lemokey/common/lemokey_common.mk - -VPATH += $(TOP_DIR)/keyboards/lemokey diff --git a/keyboards/lemokey/p1_pro/via_json/p1_pro_ansi_encoder_v1.0.json b/keyboards/lemokey/p1_pro/via_json/p1_pro_ansi_encoder_v1.0.json deleted file mode 100644 index 684676347e..0000000000 --- a/keyboards/lemokey/p1_pro/via_json/p1_pro_ansi_encoder_v1.0.json +++ /dev/null @@ -1,287 +0,0 @@ -{ - "name": "Lemokey P1 Pro ANSI Knob", - "vendorId": "0x362D", - "productId": "0x0303", - "firmwareVersion": 1, - "keycodes": ["qmk_lighting"], - "menus": [ - { - "label": "Lighting", - "content": [ - { - "label": "Backlight", - "content": [ - { - "label": "Brightness", - "type": "range", - "options": [0, 255], - "content": ["id_qmk_rgb_matrix_brightness", 3, 1] - }, - { - "label": "Effect", - "type": "dropdown", - "content": ["id_qmk_rgb_matrix_effect", 3, 2], - "options": [ - ["None", 0], - ["Solid Color", 1], - ["Breathing", 2], - ["Band Spiral Val", 3], - ["Cycle All", 4], - ["Cycle Left Right", 5], - ["Cycle Up Down", 6], - ["Rainbow Moving Chevron", 7], - ["Cycle Out In", 8], - ["Cycle Out In Dual", 9], - ["Cycle Pinwheel", 10], - ["Cycle Spiral", 11], - ["Dual Beacon", 12], - ["Rainbow Beacon", 13], - ["Jellybean Raindrops", 14], - ["Pixel Rain", 15], - ["Typing Heatmap", 16], - ["Digital Rain", 17], - ["Reactive Simple", 18], - ["Reactive Multiwide", 19], - ["Reactive Multinexus", 20], - ["Splash", 21], - ["Solid Splash", 22] - ] - }, - { - "showIf": "{id_qmk_rgb_matrix_effect} > 1", - "label": "Effect Speed", - "type": "range", - "options": [0, 255], - "content": ["id_qmk_rgb_matrix_effect_speed", 3, 3] - }, - { - "showIf": "{id_qmk_rgb_matrix_effect} != 0 && ( {id_qmk_rgb_matrix_effect} < 4 || {id_qmk_rgb_matrix_effect} == 18 || ({id_qmk_rgb_matrix_effect} > 17 && {id_qmk_rgb_matrix_effect} != 21) ) ", - "label": "Color", - "type": "color", - "content": ["id_qmk_rgb_matrix_color", 3, 4] - } - ] - } - ] - } - ], - "customKeycodes": [ - {"name": "Task View", "title": "Task View in Windows", "shortName": "Task"}, - {"name": "File Explorer", "title": "File Explorer in Windows", "shortName": "File"}, - {"name": "Lock Screen", "title": "Lock Screen in Windows", "shortName": "Lock"}, - {"name": "Misson Control", "title": "Misson Control in Mac", "shortName": "MCtl"}, - {"name": "Launch Pad", "title": "Lanuch Pad in Windows", "shortName": "LPad"}, - {"name": "Left Option", "title": "Left Option", "shortName": "LOpt"}, - {"name": "Right Option", "title": "Right Option", "shortName": "ROpt"}, - {"name": "Left Cmd", "title": "Left Command", "shortName": "LCmd"}, - {"name": "Right Cmd", "title": "Right Command", "shortName": "RCmd"}, - {"name": "Bluetooth Host 1", "title": "Bluetooth Host 1", "shortName": "BTH1"}, - {"name": "Bluetooth Host 2", "title": "Bluetooth Host 2", "shortName": "BTH2"}, - {"name": "Bluetooth Host 3", "title": "Bluetooth Host 3", "shortName": "BTH3"}, - {"name": "2.4G", "title": "2.4G", "shortName": "2.4G"}, - {"name": "Battery Level", "title": "Show battery level", "shortName": "Batt"} - ], - "matrix": {"rows": 6, "cols" : 15}, - "layouts": { - "keymap": [ - [ - { - "c": "#777777" - }, - "0, 0", - { - "x": 0.25, - "c": "#cccccc" - }, - "0, 1", - "0, 2", - "0, 3", - "0, 4", - { - "x": 0.25, - "c": "#aaaaaa" - }, - "0, 5", - "0, 6", - "0, 7", - "0, 8", - { - "x": 0.25, - "c": "#cccccc" - }, - "0, 9", - "0, 10", - "0, 11", - "0, 12", - { - "x": 0.25, - "c": "#aaaaaa" - }, - "0, 13", - { - "x": 0.25 - }, - "0, 14\n\n\n\n\n\n\n\n\ne0" - ], - [ - { - "y": 0.25, - "c": "#aaaaaa" - }, - "1, 0", - { - "c": "#cccccc" - }, - "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": 2, - "c": "#aaaaaa" - }, - "1, 13", - { - "x": 0.25 - }, - "1, 14" - ], - [ - { - "w": 1.5, - "c": "#aaaaaa" - }, - "2, 0", - { - "c": "#cccccc" - }, - "2, 1", - "2, 2", - "2, 3", - "2, 4", - "2, 5", - "2, 6", - "2, 7", - "2, 8", - "2, 9", - "2, 10", - "2, 11", - "2, 12", - { - "w": 1.5, - "c": "#aaaaaa" - }, - "2, 13", - { - "x": 0.25 - }, - "2, 14" - ], - [ - { - "w": 1.75, - "c": "#aaaaaa" - }, - "3, 0", - { - "c": "#cccccc" - }, - "3, 1", - "3, 2", - "3, 3", - "3, 4", - "3, 5", - "3, 6", - "3, 7", - "3, 8", - "3, 9", - "3, 10", - "3, 11", - { - "w": 2.25, - "c": "#777777" - }, - "3, 13", - { - "x": 0.25, - "c": "#aaaaaa" - }, - "3, 14" - ], - [ - { - "w": 2.25, - "c": "#aaaaaa" - }, - "4, 0", - { - "c": "#cccccc" - }, - "4, 2", - "4, 3", - "4, 4", - "4, 5", - "4, 6", - "4, 7", - "4, 8", - "4, 9", - "4, 10", - "4, 11", - { - "w": 1.75, - "c": "#aaaaaa" - }, - "4, 12", - { - "x": 0.25, - "y": 0.25, - "c": "#cccccc" - }, - "4, 13" - ], - [ - { - "y": -0.25, - "w": 1.25, - "c": "#aaaaaa" - }, - "5, 0", - { - "w": 1.25 - }, - "5, 1", - { - "w": 1.25 - }, - "5, 2", - { - "w": 6.25, - "c": "#cccccc" - }, - "5, 6", - { - "c": "#aaaaaa" - }, - "5, 9", - "5, 10", - "5, 11", - { - "x": 0.25, - "y": 0.25, - "c": "#cccccc" - }, - "5, 12", - "5, 13", - "5, 14" - ] - ] - } -} diff --git a/keyboards/lemokey/p1_pro/via_json/p1_pro_iso_encoder_v1.0.json b/keyboards/lemokey/p1_pro/via_json/p1_pro_iso_encoder_v1.0.json deleted file mode 100644 index e056b996d2..0000000000 --- a/keyboards/lemokey/p1_pro/via_json/p1_pro_iso_encoder_v1.0.json +++ /dev/null @@ -1,290 +0,0 @@ -{ - "name": "Lemokey P1 Pro ISO Knob", - "vendorId": "0x362D", - "productId": "0x0304", - "firmwareVersion": 1, - "keycodes": ["qmk_lighting"], - "menus": [ - { - "label": "Lighting", - "content": [ - { - "label": "Backlight", - "content": [ - { - "label": "Brightness", - "type": "range", - "options": [0, 255], - "content": ["id_qmk_rgb_matrix_brightness", 3, 1] - }, - { - "label": "Effect", - "type": "dropdown", - "content": ["id_qmk_rgb_matrix_effect", 3, 2], - "options": [ - ["None", 0], - ["Solid Color", 1], - ["Breathing", 2], - ["Band Spiral Val", 3], - ["Cycle All", 4], - ["Cycle Left Right", 5], - ["Cycle Up Down", 6], - ["Rainbow Moving Chevron", 7], - ["Cycle Out In", 8], - ["Cycle Out In Dual", 9], - ["Cycle Pinwheel", 10], - ["Cycle Spiral", 11], - ["Dual Beacon", 12], - ["Rainbow Beacon", 13], - ["Jellybean Raindrops", 14], - ["Pixel Rain", 15], - ["Typing Heatmap", 16], - ["Digital Rain", 17], - ["Reactive Simple", 18], - ["Reactive Multiwide", 19], - ["Reactive Multinexus", 20], - ["Splash", 21], - ["Solid Splash", 22] - ] - }, - { - "showIf": "{id_qmk_rgb_matrix_effect} > 1", - "label": "Effect Speed", - "type": "range", - "options": [0, 255], - "content": ["id_qmk_rgb_matrix_effect_speed", 3, 3] - }, - { - "showIf": "{id_qmk_rgb_matrix_effect} != 0 && ( {id_qmk_rgb_matrix_effect} < 4 || {id_qmk_rgb_matrix_effect} == 18 || ({id_qmk_rgb_matrix_effect} > 17 && {id_qmk_rgb_matrix_effect} != 21) ) ", - "label": "Color", - "type": "color", - "content": ["id_qmk_rgb_matrix_color", 3, 4] - } - ] - } - ] - } - ], - "customKeycodes": [ - {"name": "Task View", "title": "Task View in Windows", "shortName": "Task"}, - {"name": "File Explorer", "title": "File Explorer in Windows", "shortName": "File"}, - {"name": "Lock Screen", "title": "Lock Screen in Windows", "shortName": "Lock"}, - {"name": "Misson Control", "title": "Misson Control in Mac", "shortName": "MCtl"}, - {"name": "Launch Pad", "title": "Lanuch Pad in Windows", "shortName": "LPad"}, - {"name": "Left Option", "title": "Left Option", "shortName": "LOpt"}, - {"name": "Right Option", "title": "Right Option", "shortName": "ROpt"}, - {"name": "Left Cmd", "title": "Left Command", "shortName": "LCmd"}, - {"name": "Right Cmd", "title": "Right Command", "shortName": "RCmd"}, - {"name": "Bluetooth Host 1", "title": "Bluetooth Host 1", "shortName": "BTH1"}, - {"name": "Bluetooth Host 2", "title": "Bluetooth Host 2", "shortName": "BTH2"}, - {"name": "Bluetooth Host 3", "title": "Bluetooth Host 3", "shortName": "BTH3"}, - {"name": "2.4G", "title": "2.4G", "shortName": "2.4G"}, - {"name": "Battery Level", "title": "Show battery level", "shortName": "Batt"} - ], - "matrix": {"rows": 6, "cols" : 15}, - "layouts": { - "keymap": [ - [ - { - "c": "#777777" - }, - "0, 0", - { - "x": 0.25, - "c": "#cccccc" - }, - "0, 1", - "0, 2", - "0, 3", - "0, 4", - { - "x": 0.25, - "c": "#aaaaaa" - }, - "0, 5", - "0, 6", - "0, 7", - "0, 8", - { - "x": 0.25, - "c": "#cccccc" - }, - "0, 9", - "0, 10", - "0, 11", - "0, 12", - { - "x": 0.25, - "c": "#aaaaaa" - }, - "0, 13", - { - "x": 0.25 - }, - "0, 14\n\n\n\n\n\n\n\n\ne0" - ], - [ - { - "y": 0.25, - "c": "#aaaaaa" - }, - "1, 0", - { - "c": "#cccccc" - }, - "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": 2, - "c": "#aaaaaa" - }, - "1, 13", - { - "x": 0.25 - }, - "1, 14" - ], - [ - { - "w": 1.5, - "c": "#aaaaaa" - }, - "2, 0", - { - "c": "#cccccc" - }, - "2, 1", - "2, 2", - "2, 3", - "2, 4", - "2, 5", - "2, 6", - "2, 7", - "2, 8", - "2, 9", - "2, 10", - "2, 11", - "2, 12", - { - "x": 0.25, - "c": "#777777", - "w": 1.25, - "h": 2, - "w2": 1.5, - "h2": 1, - "x2": -0.25 - }, - "2, 13", - { - "x": 0.25, - "c": "#aaaaaa" - }, - "2, 14" - ], - [ - { - "w": 1.75, - "c": "#aaaaaa" - }, - "3, 0", - { - "c": "#cccccc" - }, - "3, 1", - "3, 2", - "3, 3", - "3, 4", - "3, 5", - "3, 6", - "3, 7", - "3, 8", - "3, 9", - "3, 10", - "3, 11", - "3, 13", - { - "x": 1.5, - "c": "#aaaaaa" - }, - "3, 14" - ], - [ - { - "w": 1.25, - "c": "#aaaaaa" - }, - "4, 0", - "4, 1", - { - "c": "#cccccc" - }, - "4, 2", - "4, 3", - "4, 4", - "4, 5", - "4, 6", - "4, 7", - "4, 8", - "4, 9", - "4, 10", - "4, 11", - { - "w": 1.75, - "c": "#aaaaaa" - }, - "4, 12", - { - "x": 0.25, - "y": 0.25, - "c": "#cccccc" - }, - "4, 13" - ], - [ - { - "y": -0.25, - "w": 1.25, - "c": "#aaaaaa" - }, - "5, 0", - { - "w": 1.25 - }, - "5, 1", - { - "w": 1.25 - }, - "5, 2", - { - "w": 6.25, - "c": "#cccccc" - }, - "5, 6", - { - "c": "#aaaaaa" - }, - "5, 9", - "5, 10", - "5, 11", - { - "x": 0.25, - "y": 0.25, - "c": "#cccccc" - }, - "5, 12", - "5, 13", - "5, 14" - ] - ] - } -}