diff --git a/keyboards/helix/beta/beta.c b/keyboards/helix/beta/beta.c deleted file mode 100644 index 8020772b965..00000000000 --- a/keyboards/helix/beta/beta.c +++ /dev/null @@ -1,77 +0,0 @@ -// Copyright 2020 Yushakobo -// SPDX-License-Identifier: GPL-2.0-or-later -#include "quantum.h" - -#ifdef OLED_ENABLE -void render_status(void) { - static const char os_logo[][2][3] PROGMEM = {{{0x95, 0x96, 0}, {0xb5, 0xb6, 0}}, {{0x97, 0x98, 0}, {0xb7, 0xb8, 0}}}; - if (!keymap_config.swap_lalt_lgui) { - oled_write_P(os_logo[0][0], false); - oled_write_P(PSTR("\n"), false); - oled_write_P(os_logo[0][1], false); - } else { - oled_write_P(os_logo[1][0], false); - oled_write_P(PSTR("\n"), false); - oled_write_P(os_logo[1][1], false); - } - - oled_write_P(PSTR(" Layer: "), false); - switch (get_highest_layer(layer_state)) { - case 0: - oled_write_ln_P(PSTR("Default"), false); - break; - case 1: - oled_write_ln_P(PSTR("Lower"), false); - break; - case 2: - oled_write_ln_P(PSTR("Raise"), false); - break; - case 3: - oled_write_ln_P(PSTR("Adjust"), false); - break; - default: - oled_write_ln_P(PSTR("Undefined"), false); - } - oled_write_P(PSTR("\n"), false); - - led_t led_state = host_keyboard_led_state(); - oled_write_P(led_state.num_lock ? PSTR("NUM ") : PSTR(" "), false); - oled_write_P(led_state.caps_lock ? PSTR("CAP ") : PSTR(" "), false); - oled_write_P(led_state.scroll_lock ? PSTR("SCR ") : PSTR(" "), false); -} - -static void render_logo(void) { - static const char PROGMEM qmk_logo[] = { - // clang-format off - 0x80, 0x81, 0x82, 0x83, 0x84, 0x85, 0x86, 0x87, 0x88, 0x89, 0x8A, 0x8B, 0x8C, 0x8D, 0x8E, 0x8F, 0x90, 0x91, 0x92, 0x93, 0x94, - 0xA0, 0xA1, 0xA2, 0xA3, 0xA4, 0xA5, 0xA6, 0xA7, 0xA8, 0xA9, 0xAA, 0xAB, 0xAC, 0xAD, 0xAE, 0xAF, 0xB0, 0xB1, 0xB2, 0xB3, 0xB4, - 0xC0, 0xC1, 0xC2, 0xC3, 0xC4, 0xC5, 0xC6, 0xC7, 0xC8, 0xC9, 0xCA, 0xCB, 0xCC, 0xCD, 0xCE, 0xCF, 0xD0, 0xD1, 0xD2, 0xD3, 0xD4, 0x00 - // clang-format on - }; - oled_write_P(qmk_logo, false); -} - -static void render_rgblight_status(void) { - oled_write_P(PSTR(" LED"), false); - oled_write(get_u8_str(rgblight_get_mode(), ' '), false); - oled_write_char(':', false); - oled_write(get_u8_str(rgblight_get_hue() / RGBLIGHT_HUE_STEP, ' '), false); - oled_write_char(',', false); - oled_write(get_u8_str(rgblight_get_sat() / RGBLIGHT_SAT_STEP, ' '), false); - oled_write_char(',', false); - oled_write(get_u8_str(rgblight_get_val() / RGBLIGHT_VAL_STEP, ' '), false); -} - -bool oled_task_kb(void) { - if (!oled_task_user()) { - return false; - } - if (is_keyboard_master()) { - render_status(); - } else { - render_logo(); - render_rgblight_status(); - } - return false; -} -#endif diff --git a/keyboards/helix/beta/keyboard.json b/keyboards/helix/beta/keyboard.json index e31f49f108d..c4eb48aab10 100644 --- a/keyboards/helix/beta/keyboard.json +++ b/keyboards/helix/beta/keyboard.json @@ -1,24 +1,76 @@ { "keyboard_name": "Helix Beta", - "features": { - "rgblight": true - }, "matrix_pins": { "cols": ["F4", "F5", "F6", "F7", "B1", "B3", "B2"], "rows": ["D4", "C6", "D7", "E6", "B4"] }, - "rgblight": { - "animations": { - "breathing": true, - "christmas": true, - "knight": true, - "rainbow_mood": true, - "rainbow_swirl": true, - "snake": true, - "static_gradient": true - }, - "led_count": 64, - "max_brightness": 45, + "rgb_matrix": { + "layout": [ + {"matrix": [0, 5], "x": 80, "y": 0, "flags": 4}, + {"matrix": [0, 4], "x": 64, "y": 0, "flags": 4}, + {"matrix": [0, 3], "x": 48, "y": 0, "flags": 4}, + {"matrix": [0, 2], "x": 32, "y": 0, "flags": 4}, + {"matrix": [0, 1], "x": 16, "y": 0, "flags": 4}, + {"matrix": [0, 0], "x": 0, "y": 0, "flags": 4}, + {"matrix": [1, 0], "x": 0, "y": 16, "flags": 4}, + {"matrix": [1, 1], "x": 16, "y": 16, "flags": 4}, + {"matrix": [1, 2], "x": 32, "y": 16, "flags": 4}, + {"matrix": [1, 3], "x": 48, "y": 16, "flags": 4}, + {"matrix": [1, 4], "x": 64, "y": 16, "flags": 4}, + {"matrix": [1, 5], "x": 80, "y": 16, "flags": 4}, + {"matrix": [2, 5], "x": 80, "y": 32, "flags": 4}, + {"matrix": [2, 4], "x": 64, "y": 32, "flags": 4}, + {"matrix": [2, 3], "x": 48, "y": 32, "flags": 4}, + {"matrix": [2, 2], "x": 32, "y": 32, "flags": 4}, + {"matrix": [2, 1], "x": 16, "y": 32, "flags": 4}, + {"matrix": [2, 0], "x": 0, "y": 32, "flags": 4}, + {"matrix": [3, 0], "x": 0, "y": 48, "flags": 4}, + {"matrix": [3, 1], "x": 16, "y": 48, "flags": 4}, + {"matrix": [3, 2], "x": 32, "y": 48, "flags": 4}, + {"matrix": [3, 3], "x": 48, "y": 48, "flags": 4}, + {"matrix": [3, 4], "x": 64, "y": 48, "flags": 4}, + {"matrix": [3, 5], "x": 80, "y": 48, "flags": 4}, + {"matrix": [3, 6], "x": 96, "y": 48, "flags": 4}, + {"matrix": [4, 6], "x": 96, "y": 64, "flags": 4}, + {"matrix": [4, 5], "x": 80, "y": 64, "flags": 4}, + {"matrix": [4, 4], "x": 64, "y": 64, "flags": 4}, + {"matrix": [4, 3], "x": 48, "y": 64, "flags": 4}, + {"matrix": [4, 2], "x": 32, "y": 64, "flags": 4}, + {"matrix": [4, 1], "x": 16, "y": 64, "flags": 4}, + {"matrix": [4, 0], "x": 0, "y": 64, "flags": 4}, + {"matrix": [5, 5], "x": 144, "y": 0, "flags": 4}, + {"matrix": [5, 4], "x": 160, "y": 0, "flags": 4}, + {"matrix": [5, 3], "x": 176, "y": 0, "flags": 4}, + {"matrix": [5, 2], "x": 192, "y": 0, "flags": 4}, + {"matrix": [5, 1], "x": 208, "y": 0, "flags": 4}, + {"matrix": [5, 0], "x": 224, "y": 0, "flags": 4}, + {"matrix": [6, 0], "x": 224, "y": 16, "flags": 4}, + {"matrix": [6, 1], "x": 208, "y": 16, "flags": 4}, + {"matrix": [6, 2], "x": 192, "y": 16, "flags": 4}, + {"matrix": [6, 3], "x": 176, "y": 16, "flags": 4}, + {"matrix": [6, 4], "x": 160, "y": 16, "flags": 4}, + {"matrix": [6, 5], "x": 144, "y": 16, "flags": 4}, + {"matrix": [7, 5], "x": 144, "y": 32, "flags": 4}, + {"matrix": [7, 4], "x": 160, "y": 32, "flags": 4}, + {"matrix": [7, 3], "x": 176, "y": 32, "flags": 4}, + {"matrix": [7, 2], "x": 192, "y": 32, "flags": 4}, + {"matrix": [7, 1], "x": 208, "y": 32, "flags": 4}, + {"matrix": [7, 0], "x": 224, "y": 32, "flags": 4}, + {"matrix": [8, 0], "x": 224, "y": 48, "flags": 4}, + {"matrix": [8, 1], "x": 208, "y": 48, "flags": 4}, + {"matrix": [8, 2], "x": 192, "y": 48, "flags": 4}, + {"matrix": [8, 3], "x": 176, "y": 48, "flags": 4}, + {"matrix": [8, 4], "x": 160, "y": 48, "flags": 4}, + {"matrix": [8, 5], "x": 144, "y": 48, "flags": 4}, + {"matrix": [8, 6], "x": 128, "y": 48, "flags": 4}, + {"matrix": [9, 6], "x": 128, "y": 64, "flags": 4}, + {"matrix": [9, 5], "x": 144, "y": 64, "flags": 4}, + {"matrix": [9, 4], "x": 160, "y": 64, "flags": 4}, + {"matrix": [9, 3], "x": 176, "y": 64, "flags": 4}, + {"matrix": [9, 2], "x": 192, "y": 64, "flags": 4}, + {"matrix": [9, 1], "x": 208, "y": 64, "flags": 4}, + {"matrix": [9, 0], "x": 224, "y": 64, "flags": 4} + ], "split_count": [32, 32] }, "url": "https://shop.yushakobo.jp/products/oss_pcb?variant=39452554231969", diff --git a/keyboards/helix/rev3/rev3.c b/keyboards/helix/helix.c similarity index 100% rename from keyboards/helix/rev3/rev3.c rename to keyboards/helix/helix.c diff --git a/keyboards/helix/info.json b/keyboards/helix/info.json index 65deb30036d..a9ad385b7da 100644 --- a/keyboards/helix/info.json +++ b/keyboards/helix/info.json @@ -1,13 +1,29 @@ { "manufacturer": "Yushakobo", "maintainer": "MakotoKurauchi", + "build": { + "lto": true + }, "development_board": "promicro", "diode_direction": "COL2ROW", "features": { "bootmagic": true, "extrakey": true, "mousekey": true, - "oled": true + "oled": true, + "rgb_matrix": true + }, + "rgb_matrix": { + "animations": { + "breathing": true, + "cycle_left_right": true, + "cycle_pinwheel": true, + "multisplash": true, + "solid_splash": true + }, + "driver": "ws2812", + "max_brightness": 150, + "sleep": true }, "split": { "enabled": true, diff --git a/keyboards/helix/pico/keyboard.json b/keyboards/helix/pico/keyboard.json index 5188b41b585..62b25b753bc 100644 --- a/keyboards/helix/pico/keyboard.json +++ b/keyboards/helix/pico/keyboard.json @@ -1,25 +1,65 @@ { "keyboard_name": "Helix Pico", "features": { - "audio": false, - "rgblight": true + "audio": false }, "matrix_pins": { "cols": ["F4", "F5", "F6", "F7", "B1", "B3", "B2"], "rows": ["D4", "C6", "D7", "E6"] }, - "rgblight": { - "animations": { - "breathing": true, - "christmas": true, - "knight": true, - "rainbow_mood": true, - "rainbow_swirl": true, - "snake": true, - "static_gradient": true - }, - "led_count": 50, - "max_brightness": 45, + "rgb_matrix": { + "layout": [ + {"matrix": [0, 5], "x": 80, "y": 0, "flags": 4}, + {"matrix": [0, 4], "x": 64, "y": 0, "flags": 4}, + {"matrix": [0, 3], "x": 48, "y": 0, "flags": 4}, + {"matrix": [0, 2], "x": 32, "y": 0, "flags": 4}, + {"matrix": [0, 1], "x": 16, "y": 0, "flags": 4}, + {"matrix": [0, 0], "x": 0, "y": 0, "flags": 4}, + {"matrix": [1, 0], "x": 0, "y": 21, "flags": 4}, + {"matrix": [1, 1], "x": 16, "y": 21, "flags": 4}, + {"matrix": [1, 2], "x": 32, "y": 21, "flags": 4}, + {"matrix": [1, 3], "x": 48, "y": 21, "flags": 4}, + {"matrix": [1, 4], "x": 64, "y": 21, "flags": 4}, + {"matrix": [1, 5], "x": 80, "y": 21, "flags": 4}, + {"matrix": [2, 5], "x": 80, "y": 42, "flags": 4}, + {"matrix": [2, 4], "x": 64, "y": 42, "flags": 4}, + {"matrix": [2, 3], "x": 48, "y": 42, "flags": 4}, + {"matrix": [2, 2], "x": 32, "y": 42, "flags": 4}, + {"matrix": [2, 1], "x": 16, "y": 42, "flags": 4}, + {"matrix": [2, 0], "x": 0, "y": 42, "flags": 4}, + {"matrix": [3, 0], "x": 0, "y": 64, "flags": 4}, + {"matrix": [3, 1], "x": 16, "y": 64, "flags": 4}, + {"matrix": [3, 2], "x": 32, "y": 64, "flags": 4}, + {"matrix": [3, 3], "x": 48, "y": 64, "flags": 4}, + {"matrix": [3, 4], "x": 64, "y": 64, "flags": 4}, + {"matrix": [3, 5], "x": 80, "y": 64, "flags": 4}, + {"matrix": [3, 6], "x": 96, "y": 64, "flags": 4}, + {"matrix": [4, 5], "x": 144, "y": 0, "flags": 4}, + {"matrix": [4, 4], "x": 160, "y": 0, "flags": 4}, + {"matrix": [4, 3], "x": 176, "y": 0, "flags": 4}, + {"matrix": [4, 2], "x": 192, "y": 0, "flags": 4}, + {"matrix": [4, 1], "x": 208, "y": 0, "flags": 4}, + {"matrix": [4, 0], "x": 224, "y": 0, "flags": 4}, + {"matrix": [5, 0], "x": 224, "y": 21, "flags": 4}, + {"matrix": [5, 1], "x": 208, "y": 21, "flags": 4}, + {"matrix": [5, 2], "x": 192, "y": 21, "flags": 4}, + {"matrix": [5, 3], "x": 176, "y": 21, "flags": 4}, + {"matrix": [5, 4], "x": 160, "y": 21, "flags": 4}, + {"matrix": [5, 5], "x": 144, "y": 21, "flags": 4}, + {"matrix": [6, 5], "x": 144, "y": 42, "flags": 4}, + {"matrix": [6, 4], "x": 160, "y": 42, "flags": 4}, + {"matrix": [6, 3], "x": 176, "y": 42, "flags": 4}, + {"matrix": [6, 2], "x": 192, "y": 42, "flags": 4}, + {"matrix": [6, 1], "x": 208, "y": 42, "flags": 4}, + {"matrix": [6, 0], "x": 224, "y": 42, "flags": 4}, + {"matrix": [7, 0], "x": 224, "y": 64, "flags": 4}, + {"matrix": [7, 1], "x": 208, "y": 64, "flags": 4}, + {"matrix": [7, 2], "x": 192, "y": 64, "flags": 4}, + {"matrix": [7, 3], "x": 176, "y": 64, "flags": 4}, + {"matrix": [7, 4], "x": 160, "y": 64, "flags": 4}, + {"matrix": [7, 5], "x": 144, "y": 64, "flags": 4}, + {"matrix": [7, 6], "x": 128, "y": 64, "flags": 4} + ], "split_count": [25, 25] }, "url": "https://shop.yushakobo.jp/products/helixpico-pcb", diff --git a/keyboards/helix/rev3/keyboard.json b/keyboards/helix/rev3/keyboard.json index ae1d9aa5e70..887a5c80243 100644 --- a/keyboards/helix/rev3/keyboard.json +++ b/keyboards/helix/rev3/keyboard.json @@ -1,8 +1,5 @@ { "keyboard_name": "Helix rev3", - "build": { - "lto": true - }, "dip_switch": { "matrix_grid": [ [0, 6], @@ -18,15 +15,13 @@ }, "features": { "dip_switch": false, - "encoder": true, - "rgb_matrix": true + "encoder": true }, "matrix_pins": { "cols": ["F4", "F5", "F6", "F7", "B1", "B3", "B2"], "rows": ["D4", "C6", "D7", "E6", "B4"] }, "rgb_matrix": { - "driver": "ws2812", "layout": [ {"matrix": [0, 5], "x": 80, "y": 0, "flags": 4}, {"matrix": [0, 4], "x": 64, "y": 0, "flags": 4}, @@ -93,8 +88,6 @@ {"matrix": [9, 1], "x": 208, "y": 64, "flags": 4}, {"matrix": [9, 0], "x": 224, "y": 64, "flags": 4} ], - "max_brightness": 150, - "sleep": true, "split_count": [32, 32] }, "split": {