From ffcc54833d090670ea17c4054c4ad550d651f382 Mon Sep 17 00:00:00 2001 From: ClicketySplit <101202583+ClicketySplit@users.noreply.github.com> Date: Wed, 11 Oct 2023 15:33:38 -0600 Subject: [PATCH] Leeloo v2.1 revision 3 updates (#22236) --- keyboards/clickety_split/leeloo/leeloo.c | 8 +- keyboards/clickety_split/leeloo/readme.md | 18 ++-- keyboards/clickety_split/leeloo/rev3/config.h | 22 +++++ .../clickety_split/leeloo/rev3/info.json | 86 +++++++++++++++++++ keyboards/clickety_split/leeloo/rev3/rules.mk | 1 + keyboards/clickety_split/leeloo/rules.mk | 2 +- 6 files changed, 129 insertions(+), 8 deletions(-) create mode 100644 keyboards/clickety_split/leeloo/rev3/config.h create mode 100644 keyboards/clickety_split/leeloo/rev3/info.json create mode 100644 keyboards/clickety_split/leeloo/rev3/rules.mk diff --git a/keyboards/clickety_split/leeloo/leeloo.c b/keyboards/clickety_split/leeloo/leeloo.c index 3edfd9b328..3922556f5c 100644 --- a/keyboards/clickety_split/leeloo/leeloo.c +++ b/keyboards/clickety_split/leeloo/leeloo.c @@ -49,16 +49,20 @@ static void render_secondary_oled(void) { // Version Information #if defined(KEYBOARD_clickety_split_leeloo_rev1) oled_write_P(PSTR("Leeloo v1\n\n"), false); -#else +#elif defined(KEYBOARD_clickety_split_leeloo_rev2) oled_write_P(PSTR("Leeloo v2\n\n"), false); +#else + oled_write_P(PSTR("Leeloo v2.1\n\n"), false); #endif oled_write_P(PSTR("Firmware: "), false); #if defined(KEYBOARD_clickety_split_leeloo_rev1) oled_write_P(PSTR("v1.13"), false); -#else +#elif defined(KEYBOARD_clickety_split_leeloo_rev2) oled_write_P(PSTR("v2.13"), false); +#else + oled_write_P(PSTR("v2.14"), false); #endif oled_write_P(PSTR("\n"), false); diff --git a/keyboards/clickety_split/leeloo/readme.md b/keyboards/clickety_split/leeloo/readme.md index 3d42e04231..65f1069cdb 100644 --- a/keyboards/clickety_split/leeloo/readme.md +++ b/keyboards/clickety_split/leeloo/readme.md @@ -1,25 +1,33 @@ -# Clickety Split | Leeloo v2 +# Clickety Split | Leeloo v2.1 -![Leeloo v2](https://i.imgur.com/swPHS0Bh.jpg) +![Leeloo v2.1](https://i.imgur.com/swPHS0Bh.jpg) -Leeloo v2 is the evolution of Leeloo, which is a 4x6x5m ortholinear split keyboard designed, created, and sold by Clickety Split Ltd. +Leeloo v2.1 is a small evolution of Leeloo v2.0, which is a 4x6x5m ortholinear split keyboard designed, created, and sold by Clickety Split Ltd. * Keyboard Maintainer: [Clickety Split](https://github.com/ClicketySplit) -* Hardware Supported: Leeloo PCB rev1/rev2, Pro Micro, Elite-C +* Hardware Supported: Leeloo PCB rev1/rev2/rev3, Pro Micro, Elite-C * Hardware Availability: [clicketysplit.ca/pages/leeloo](https://clicketysplit.ca/pages/leeloo) + +## Differences between v2.1 and v2.0 +* Removed 8 RGB LEDs on each side, which served as backlighting. +* Added a solderable jumper to bypass circuitry used for wireless configurations with nice!nanos. +* Simplified socketing of nice!view and OLED Displays. + + # Leeloo ![Leeloo](https://i.imgur.com/x1ew17Dh.jpg) The original design and release of Leeloo. -# Sample Build Commands for Leeloo v1 and v2 +# Sample Build Commands for Leeloo v1, v2, and v2.1 Make example for this keyboard (after setting up your build environment): make clickety_split/leeloo/rev1:default make clickety_split/leeloo/rev2:default + make clickety_split/leeloo/rev3:default See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](https://docs.qmk.fm/#/newbs). \ No newline at end of file diff --git a/keyboards/clickety_split/leeloo/rev3/config.h b/keyboards/clickety_split/leeloo/rev3/config.h new file mode 100644 index 0000000000..ac93150221 --- /dev/null +++ b/keyboards/clickety_split/leeloo/rev3/config.h @@ -0,0 +1,22 @@ +/* Copyright 2023 Clickety Split Ltd. + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License 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_LED_COUNT 58 +# define RGB_MATRIX_SPLIT {29, 29} +# define RGB_DISABLE_WHEN_USB_SUSPENDED +# define SPLIT_TRANSPORT_MIRROR diff --git a/keyboards/clickety_split/leeloo/rev3/info.json b/keyboards/clickety_split/leeloo/rev3/info.json new file mode 100644 index 0000000000..9e6727a9e6 --- /dev/null +++ b/keyboards/clickety_split/leeloo/rev3/info.json @@ -0,0 +1,86 @@ +{ + "keyboard_name": "Leeloo v2.1", + "usb": { + "device_version": "0.2.1" + }, + "features": { + "rgb_matrix": true + }, + "split": { + "transport": { + "sync_matrix_state": true + } + }, + "rgblight": { + "led_count": 58, + "split": true, + "split_count": [29, 29], + "max_brightness": 115 + }, + "ws2812": { + "pin": "D3" + }, + "rgb_matrix": { + "driver": "ws2812", + "layout": [ + {"flags": 4, "matrix": [4, 5], "x": 103, "y": 48}, // L LB01 | SW29 + {"flags": 4, "matrix": [4, 4], "x": 103, "y": 64}, // L LB02 | SW28 + {"flags": 4, "matrix": [4, 3], "x": 86, "y": 64}, // L LB03 | SW27 + {"flags": 4, "matrix": [3, 5], "x": 86, "y": 48}, // L LB04 | SW24 + {"flags": 4, "matrix": [2, 5], "x": 86, "y": 32}, // L LB05 | SW18 + {"flags": 4, "matrix": [1, 5], "x": 86, "y": 15}, // L LB06 | SW12 + {"flags": 4, "matrix": [0, 5], "x": 86, "y": 0}, // L LB07 | SW6 + {"flags": 4, "matrix": [0, 4], "x": 69, "y": 0}, // L LB08 | SW5 + {"flags": 4, "matrix": [1, 4], "x": 69, "y": 16}, // L LB09 | SW11 + {"flags": 4, "matrix": [2, 4], "x": 69, "y": 32}, // L LB10 | SW17 + {"flags": 4, "matrix": [3, 4], "x": 69, "y": 48}, // L LB11 | SW23 + {"flags": 4, "matrix": [4, 2], "x": 69, "y": 64}, // L LB12 | SW26 + {"flags": 4, "matrix": [4, 1], "x": 52, "y": 64}, // L LB13 | SW25 + {"flags": 4, "matrix": [3, 3], "x": 52, "y": 48}, // L LB14 | SW22 + {"flags": 4, "matrix": [2, 3], "x": 52, "y": 32}, // L LB15 | SW16 + {"flags": 4, "matrix": [1, 3], "x": 52, "y": 16}, // L LB16 | SW10 + {"flags": 4, "matrix": [0, 3], "x": 52, "y": 0}, // L LB17 | SW4 + {"flags": 4, "matrix": [0, 2], "x": 34, "y": 0}, // L LB18 | SW3 + {"flags": 4, "matrix": [1, 2], "x": 34, "y": 16}, // L LB19 | SW9 + {"flags": 4, "matrix": [2, 2], "x": 34, "y": 32}, // L LB20 | SW15 + {"flags": 4, "matrix": [3, 2], "x": 34, "y": 48}, // L LB21 | SW21 + {"flags": 4, "matrix": [3, 1], "x": 17, "y": 48}, // L LB22 | SW20 + {"flags": 4, "matrix": [2, 1], "x": 17, "y": 32}, // L LB23 | SW14 + {"flags": 4, "matrix": [1, 1], "x": 17, "y": 16}, // L LB24 | SW8 + {"flags": 4, "matrix": [0, 1], "x": 17, "y": 0}, // L LB25 | SW2 + {"flags": 4, "matrix": [0, 0], "x": 0, "y": 0}, // L LB26 | SW1 + {"flags": 4, "matrix": [1, 0], "x": 0, "y": 16}, // L LB27 | SW7 + {"flags": 4, "matrix": [2, 0], "x": 0, "y": 32}, // L LB28 | SW13 + {"flags": 4, "matrix": [3, 0], "x": 0, "y": 48}, // L LB29 | SW19 + {"flags": 4, "matrix": [9, 5], "x": 120, "y": 48}, // R LB30 | SW58 + {"flags": 4, "matrix": [9, 4], "x": 120, "y": 64}, // R LB31 | SW57 + {"flags": 4, "matrix": [9, 3], "x": 137, "y": 64}, // R LB32 | SW56 + {"flags": 4, "matrix": [8, 5], "x": 137, "y": 48}, // R LB33 | SW53 + {"flags": 4, "matrix": [7, 5], "x": 137, "y": 32}, // R LB34 | SW47 + {"flags": 4, "matrix": [6, 5], "x": 137, "y": 15}, // R LB35 | SW41 + {"flags": 4, "matrix": [5, 5], "x": 137, "y": 0}, // R LB36 | SW35 + {"flags": 4, "matrix": [5, 4], "x": 155, "y": 0}, // R LB37 | SW34 + {"flags": 4, "matrix": [6, 4], "x": 155, "y": 16}, // R LB38 | SW40 + {"flags": 4, "matrix": [7, 4], "x": 155, "y": 32}, // R LB39 | SW46 + {"flags": 4, "matrix": [8, 4], "x": 155, "y": 48}, // R LB40 | SW52 + {"flags": 4, "matrix": [9, 2], "x": 155, "y": 64}, // R LB41 | SW55 + {"flags": 4, "matrix": [9, 1], "x": 172, "y": 64}, // R LB42 | SW54 + {"flags": 4, "matrix": [8, 3], "x": 172, "y": 48}, // R LB43 | SW51 + {"flags": 4, "matrix": [7, 3], "x": 172, "y": 32}, // R LB44 | SW45 + {"flags": 4, "matrix": [6, 3], "x": 172, "y": 16}, // R LB45 | SW39 + {"flags": 4, "matrix": [5, 3], "x": 172, "y": 0}, // R LB46 | SW33 + {"flags": 4, "matrix": [5, 2], "x": 189, "y": 0}, // R LB47 | SW32 + {"flags": 4, "matrix": [6, 2], "x": 189, "y": 16}, // R LB48 | SW38 + {"flags": 4, "matrix": [7, 2], "x": 189, "y": 32}, // R LB49 | SW44 + {"flags": 4, "matrix": [8, 2], "x": 189, "y": 48}, // R LB50 | SW50 + {"flags": 4, "matrix": [8, 1], "x": 206, "y": 48}, // R LB51 | SW49 + {"flags": 4, "matrix": [7, 1], "x": 206, "y": 32}, // R LB52 | SW43 + {"flags": 4, "matrix": [6, 1], "x": 206, "y": 16}, // R LB53 | SW37 + {"flags": 4, "matrix": [5, 1], "x": 206, "y": 0}, // R LB54 | SW31 + {"flags": 4, "matrix": [5, 0], "x": 224, "y": 0}, // R LB55 | SW30 + {"flags": 4, "matrix": [6, 0], "x": 224, "y": 16}, // R LB56 | SW36 + {"flags": 4, "matrix": [7, 0], "x": 224, "y": 32}, // R LB57 | SW42 + {"flags": 4, "matrix": [8, 0], "x": 224, "y": 48} // R LB58 | SW48 + ] + } + } diff --git a/keyboards/clickety_split/leeloo/rev3/rules.mk b/keyboards/clickety_split/leeloo/rev3/rules.mk new file mode 100644 index 0000000000..80a6663b9c --- /dev/null +++ b/keyboards/clickety_split/leeloo/rev3/rules.mk @@ -0,0 +1 @@ +# Intentionally left blank. diff --git a/keyboards/clickety_split/leeloo/rules.mk b/keyboards/clickety_split/leeloo/rules.mk index e9c33bc130..9d35960f7c 100644 --- a/keyboards/clickety_split/leeloo/rules.mk +++ b/keyboards/clickety_split/leeloo/rules.mk @@ -1,2 +1,2 @@ # Default Folder -DEFAULT_FOLDER = clickety_split/leeloo/rev2 +DEFAULT_FOLDER = clickety_split/leeloo/rev3