From 6fa898698a39152bcb52ec6884d4472060b177e3 Mon Sep 17 00:00:00 2001 From: "Jacky@LAZYDESIGNERS" Date: Wed, 19 Feb 2025 15:45:27 +0800 Subject: [PATCH] Add support for lazydesigners/circe (#857) Add support for lazydesigners/circe --- keyboards/lazydesigners/circe/config.h | 26 ++++++ keyboards/lazydesigners/circe/info.json | 89 +++++++++++++++++++ .../circe/keymaps/default/keymap.c | 30 +++++++ .../lazydesigners/circe/keymaps/vial/config.h | 12 +++ .../lazydesigners/circe/keymaps/vial/keymap.c | 30 +++++++ .../lazydesigners/circe/keymaps/vial/rules.mk | 3 + .../circe/keymaps/vial/vial.json | 30 +++++++ keyboards/lazydesigners/circe/readme.md | 18 ++++ keyboards/lazydesigners/circe/rules.mk | 3 + 9 files changed, 241 insertions(+) create mode 100644 keyboards/lazydesigners/circe/config.h create mode 100644 keyboards/lazydesigners/circe/info.json create mode 100644 keyboards/lazydesigners/circe/keymaps/default/keymap.c create mode 100644 keyboards/lazydesigners/circe/keymaps/vial/config.h create mode 100644 keyboards/lazydesigners/circe/keymaps/vial/keymap.c create mode 100644 keyboards/lazydesigners/circe/keymaps/vial/rules.mk create mode 100644 keyboards/lazydesigners/circe/keymaps/vial/vial.json create mode 100644 keyboards/lazydesigners/circe/readme.md create mode 100644 keyboards/lazydesigners/circe/rules.mk diff --git a/keyboards/lazydesigners/circe/config.h b/keyboards/lazydesigners/circe/config.h new file mode 100644 index 0000000000..a809ea8b4c --- /dev/null +++ b/keyboards/lazydesigners/circe/config.h @@ -0,0 +1,26 @@ +#pragma once + +#define WS2812_DI_PIN A13 + +#ifdef WS2812_DI_PIN +#define RGBLIGHT_EFFECT_BREATHING +#define RGBLIGHT_EFFECT_RAINBOW_MOOD +#define RGBLIGHT_EFFECT_RAINBOW_SWIRL +#define RGBLIGHT_EFFECT_SNAKE +#define RGBLIGHT_EFFECT_CHRISTMAS +#define RGBLIGHT_EFFECT_STATIC_GRADIENT +#define RGBLIGHT_EFFECT_KNIGHT +#define RGBLIGHT_EFFECT_RGB_TEST +#define RGBLIGHT_EFFECT_ALTERNATING +#define RGBLIGHT_EFFECT_TWINKLE + + +#define RGBLIGHT_SLEEP +#define RGBLED_NUM 5 +#define RGBLIGHT_DEFAULT_VAL 128 +#define RGBLIGHT_LIMIT_VAL 128 +/* #define RGBLIGHT_HUE_STEP 8 */ +/* #define RGBLIGHT_SAT_STEP 8 */ +/* #define RGBLIGHT_VAL_STEP 8 */ +#endif + diff --git a/keyboards/lazydesigners/circe/info.json b/keyboards/lazydesigners/circe/info.json new file mode 100644 index 0000000000..fb18aa263b --- /dev/null +++ b/keyboards/lazydesigners/circe/info.json @@ -0,0 +1,89 @@ +{ + "keyboard_name": "Circe", + "manufacturer": "lazydesigners", + "url": "http://lazydesigners.cn", + "maintainer": "lazydesigners", + "usb": { + "vid": "0x4C44", + "pid": "0x0045", + "device_version": "0.0.1" + }, + "processor": "STM32F072", + "bootloader": "stm32-dfu", + "diode_direction": "COL2ROW", + "matrix_pins": { + "cols": [ "B11", "B10", "B2", "B1", "B0", "A7", "A6", "A5", "A4", "A3", "C15", "B8", "A14" ], + "rows": [ "B13", "B12", "F0", "B9"] + }, + "features": { + "console": true, + "extrakey": true, + "mousekey": true, + "nkro": true + }, + "bootmagic": { + "enabled": true, + "matrix": [0, 0] + }, + "layouts": { + "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, "w":1.5}, + {"matrix": [0,12], "x":12.75, "y":0}, + {"matrix": [1,12], "x":13.75, "y":0}, + + {"matrix": [1, 0], "x":0, "y":1, "w":1.25}, + {"matrix": [1, 1], "x":1.25, "y":1}, + {"matrix": [1, 2], "x":2.25, "y":1}, + {"matrix": [1, 3], "x":3.25, "y":1}, + {"matrix": [1, 4], "x":4.25, "y":1}, + {"matrix": [1, 5], "x":5.25, "y":1}, + {"matrix": [1, 6], "x":6.25, "y":1}, + {"matrix": [1, 7], "x":7.25, "y":1}, + {"matrix": [1, 8], "x":8.25, "y":1}, + {"matrix": [1, 9], "x":9.25, "y":1}, + {"matrix": [1,10], "x":10.25, "y":1}, + {"matrix": [1,11], "x":11.25, "y":1, "w":1.25}, + + {"matrix": [2, 0], "x":0, "y":2, "w":1.25}, + {"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":9.75, "y":2}, + {"matrix": [2,11], "x":10.75, "y":2, "w":1.25}, + {"matrix": [2,12], "x":12.75, "y":2}, + + {"matrix": [3, 0], "x":0, "y":3, "w":1.25}, + {"matrix": [3, 1], "x":1.25, "y":3, "w":1}, + {"matrix": [3, 2], "x":2.25, "y":3, "w":1}, + {"matrix": [3, 3], "x":3.25, "y":3, "w":1}, + {"matrix": [3, 4], "x":4.25, "y":3, "w":2}, + {"matrix": [3, 5], "x":6.25, "y":3, "w":2}, + {"matrix": [3, 7], "x":8.25, "y":3, "w":1}, + {"matrix": [3, 8], "x":9.25, "y":3, "w":1}, + {"matrix": [3, 9], "x":10.25, "y":3, "w":1}, + {"matrix": [3,10], "x":11.75, "y":3}, + {"matrix": [3,11], "x":12.75, "y":3}, + {"matrix": [3,12], "x":13.75, "y":3} + + ] + } + } +} diff --git a/keyboards/lazydesigners/circe/keymaps/default/keymap.c b/keyboards/lazydesigners/circe/keymaps/default/keymap.c new file mode 100644 index 0000000000..7067ed958d --- /dev/null +++ b/keyboards/lazydesigners/circe/keymaps/default/keymap.c @@ -0,0 +1,30 @@ +// Copyright 2024 LAZDESIGNERS +// SPDX-License-Identifier: GPL-2.0-or-later + +#include QMK_KEYBOARD_H + +#define LT1_SPC LT(1, KC_SPC) + +// For testing only +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + [0] = LAYOUT( + KC_ESC, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSPC, KC_DEL, KC_HOME, + KC_TAB, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_ENT, + KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLASH, MO(2), KC_UP, + KC_LCTL, KC_LALT, KC_LGUI, KC_NO, KC_SPC, LT1_SPC, KC_NO, KC_LEFT, KC_DOWN, KC_LEFT, KC_DOWN, KC_RGHT + ), + [1] = LAYOUT( + KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, + KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, + KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, + KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO + ), + [2] = LAYOUT( + KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, + KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, + KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, + KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO + ), +}; + + diff --git a/keyboards/lazydesigners/circe/keymaps/vial/config.h b/keyboards/lazydesigners/circe/keymaps/vial/config.h new file mode 100644 index 0000000000..7d38b01748 --- /dev/null +++ b/keyboards/lazydesigners/circe/keymaps/vial/config.h @@ -0,0 +1,12 @@ +/* SPDX-License-Identifier: GPL-2.0-or-later */ + +#pragma once + +#define VIAL_KEYBOARD_UID {0xC9, 0x6D, 0x94, 0xB7, 0x74, 0x64, 0x1B, 0x2A} + +#define VIAL_UNLOCK_COMBO_ROWS { 0, 1 } +#define VIAL_UNLOCK_COMBO_COLS { 0, 12 } + +#define VIAL_COMBO_ENTRIES 32 +#define VIAL_TAP_DANCE_ENTRIES 32 +#define DYNAMIC_KEYMAP_LAYER_COUNT 8 diff --git a/keyboards/lazydesigners/circe/keymaps/vial/keymap.c b/keyboards/lazydesigners/circe/keymaps/vial/keymap.c new file mode 100644 index 0000000000..7067ed958d --- /dev/null +++ b/keyboards/lazydesigners/circe/keymaps/vial/keymap.c @@ -0,0 +1,30 @@ +// Copyright 2024 LAZDESIGNERS +// SPDX-License-Identifier: GPL-2.0-or-later + +#include QMK_KEYBOARD_H + +#define LT1_SPC LT(1, KC_SPC) + +// For testing only +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + [0] = LAYOUT( + KC_ESC, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSPC, KC_DEL, KC_HOME, + KC_TAB, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_ENT, + KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLASH, MO(2), KC_UP, + KC_LCTL, KC_LALT, KC_LGUI, KC_NO, KC_SPC, LT1_SPC, KC_NO, KC_LEFT, KC_DOWN, KC_LEFT, KC_DOWN, KC_RGHT + ), + [1] = LAYOUT( + KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, + KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, + KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, + KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO + ), + [2] = LAYOUT( + KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, + KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, + KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, + KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO + ), +}; + + diff --git a/keyboards/lazydesigners/circe/keymaps/vial/rules.mk b/keyboards/lazydesigners/circe/keymaps/vial/rules.mk new file mode 100644 index 0000000000..c8b47d5fb5 --- /dev/null +++ b/keyboards/lazydesigners/circe/keymaps/vial/rules.mk @@ -0,0 +1,3 @@ +VIA_ENABLE = yes +VIAL_ENABLE = yes + diff --git a/keyboards/lazydesigners/circe/keymaps/vial/vial.json b/keyboards/lazydesigners/circe/keymaps/vial/vial.json new file mode 100644 index 0000000000..13fede7886 --- /dev/null +++ b/keyboards/lazydesigners/circe/keymaps/vial/vial.json @@ -0,0 +1,30 @@ +{ + "lighting": "qmk_rgblight", + "matrix": {"rows": 4, "cols": 13}, + "layouts": { + "labels": + [ + ["Style", "Staggered","Ortho"], + ["Bottom Row", "Staggered Split", "Staggered Longbar","Ortho Split"] + ], + "keymap": + [ + [ + "0,0\n\n\n0,0","0,1\n\n\n0,0","0,2\n\n\n0,0","0,3\n\n\n0,0","0,4\n\n\n0,0","0,5\n\n\n0,0","0,6\n\n\n0,0","0,7\n\n\n0,0","0,8\n\n\n0,0","0,9\n\n\n0,0","0,10\n\n\n0,0",{"w":1.5},"0,11\n\n\n0,0",{"x":0.25},"0,12\n\n\n0,0","1,12\n\n\n0,0", + {"x":-1,"w":1.25},"0,0\n\n\n0,1","0,1\n\n\n0,1","0,2\n\n\n0,1","0,3\n\n\n0,1","0,4\n\n\n0,1","0,5\n\n\n0,1","0,6\n\n\n0,1","0,7\n\n\n0,1","0,8\n\n\n0,1","0,9\n\n\n0,1","0,10\n\n\n0,1",{"w":1.25},"0,11\n\n\n0,1",{"x":0.25},"0,12\n\n\n0,1","1,12\n\n\n0,1" + ], + [ + {"w":1.25},"1,0","1,1","1,2","1,3","1,4","1,5","1,6","1,7","1,8","1,9","1,10",{"w":1.25},"1,11" + ], + [ + {"w":1.75},"2,0\n\n\n0,0","2,1\n\n\n0,0","2,2\n\n\n0,0","2,3\n\n\n0,0","2,4\n\n\n0,0","2,5\n\n\n0,0","2,6\n\n\n0,0","2,7\n\n\n0,0","2,8\n\n\n0,0","2,9\n\n\n0,0",{"w":1.75},"2,11\n\n\n0,0", {"x":0.25},"2,12\n\n\n0,0", + {"w":1.25},"2,0\n\n\n0,1","2,1\n\n\n0,1","2,2\n\n\n0,1","2,3\n\n\n0,1","2,4\n\n\n0,1","2,5\n\n\n0,1","2,6\n\n\n0,1","2,7\n\n\n0,1","2,8\n\n\n0,1","2,9\n\n\n0,1","2,10\n\n\n0,1",{"w":1.25},"2,11\n\n\n0,1",{"x":0.25},"2,12\n\n\n0,1" + ], + [ + {"w":1.25},"3,0\n\n\n1,0",{"w":1.25},"3,1\n\n\n1,0",{"w":1.25},"3,2\n\n\n1,0",{"w":2.25},"3,4\n\n\n1,0",{"w":2.75},"3,5\n\n\n1,0",{"w":1.25},"3,8\n\n\n1,0",{"w":1.25},"3,9\n\n\n1,0",{"x":0.5},"3,10\n\n\n1,0","3,11\n\n\n1,0","3,12\n\n\n1,0", + {"w":1.25},"3,0\n\n\n1,1",{"w":1.25},"3,1\n\n\n1,1",{"w":6.25},"3,5\n\n\n1,1",{"w":1.25},"3,8\n\n\n1,1",{"w":1.25},"3,9\n\n\n1,1",{"x":0.5},"3,10\n\n\n1,1","3,11\n\n\n1,1","3,12\n\n\n1,1", + {"w":1.25},"3,0\n\n\n1,2","3,1\n\n\n1,2","3,2\n\n\n1,2","3,3\n\n\n1,2",{"w":2},"3,4\n\n\n1,2",{"w":2},"3,5\n\n\n1,2","3,7\n\n\n1,2","3,8\n\n\n1,2","3,9\n\n\n1,2",{"x":0.5},"3,10\n\n\n1,2","3,11\n\n\n1,2","3,12\n\n\n1,2" + ] + ] + } + } \ No newline at end of file diff --git a/keyboards/lazydesigners/circe/readme.md b/keyboards/lazydesigners/circe/readme.md new file mode 100644 index 0000000000..052fc1f988 --- /dev/null +++ b/keyboards/lazydesigners/circe/readme.md @@ -0,0 +1,18 @@ +# Circe + +A keyboard designed and produced in 2024 by [LAZYDESIGNERS](http://lazydesigners.cn). + +* Keyboard Maintainer: [LAZYDESIGNERS](https://github.com/jackytrabbit) +* Hardware Supported: Circe +* Hardware Availability: Check [LAZYDESIGNERS's homepage.](http://lazydesigners.cn) + +Make example for this keyboard (after setting up your vial build environment): + + make lazydesigners/circe:vial + +Flashing example for this keyboard: + + make lazydesigners/circe:vial:flash + +**Reset Key:** To enter the bootloader, either push the RESET button on the PCB or the RESET button on the FN layer. + diff --git a/keyboards/lazydesigners/circe/rules.mk b/keyboards/lazydesigners/circe/rules.mk new file mode 100644 index 0000000000..b50f2ea65e --- /dev/null +++ b/keyboards/lazydesigners/circe/rules.mk @@ -0,0 +1,3 @@ +RGBLIGHT_ENABLE = yes +RGBLIGHT_DRIVER = ws2812 +