Skip to content

Commit

Permalink
Leeloo revision 2 updates (qmk#21671)
Browse files Browse the repository at this point in the history
Co-authored-by: Duncan Sutherland <dunk2k_2000@hotmail.com>
Co-authored-by: Drashna Jaelre <drashna@live.com>
Co-authored-by: Joel Challis <git@zvecr.com>
Co-authored-by: Ryan <fauxpark@gmail.com>
  • Loading branch information
5 people authored and zgagnon committed Dec 15, 2023
1 parent d5f61b1 commit a724305
Show file tree
Hide file tree
Showing 11 changed files with 283 additions and 122 deletions.
141 changes: 72 additions & 69 deletions keyboards/clickety_split/leeloo/info.json
Original file line number Diff line number Diff line change
@@ -1,24 +1,31 @@
{
"keyboard_name": "Leeloo",
"manufacturer": "Clickety Split Ltd",
"url": "https://clicketysplit.ca/pages/leeloo",
"maintainer": "ClicketySplit",
"usb": {
"vid": "0x4013",
"pid": "0x2022",
"device_version": "0.1.3"
"pid": "0x2022"
},
"diode_direction": "COL2ROW",
"matrix_pins": {
"cols": ["F6", "F7", "B1", "B3", "B2", "B6"],
"rows": ["C6", "D7", "E6", "B4", "B5"]
"cols": ["F6", "F7", "B1", "B3", "B2", "B6"],
"rows": ["C6", "D7", "E6", "B4", "B5"]
},
"build": {
"lto": true
},
"features": {
"extrakey": true,
"oled": true
},
"diode_direction": "COL2ROW",
"encoder": {
"enabled": true,
"rotary": [
{"pin_a": "F5", "pin_b": "F4"}
]
},
"split": {
"enabled": true,
"soft_serial_pin": "D2",
"encoder": {
"right": {
Expand All @@ -28,81 +35,77 @@
}
}
},
"tapping": {
"term": 100
},
"processor": "atmega32u4",
"bootloader": "caterina",
"development_board": "promicro",
"layouts": {
"LAYOUT": {
"layout": [
{"matrix": [0, 0], "x": 0, "y": 0.5},
{"matrix": [0, 1], "x": 1, "y": 0.4},
{"matrix": [0, 2], "x": 2, "y": 0.2},
{"matrix": [0, 3], "x": 3, "y": 0},
{"matrix": [0, 4], "x": 4, "y": 0.2},
{"matrix": [0, 5], "x": 5, "y": 0.4},
{"label":"Esc", "matrix": [0, 0], "x": 0.0, "y":0.5},
{"label":"1", "matrix": [0, 1], "x": 1.0, "y":0.4},
{"label":"2", "matrix": [0, 2], "x": 2.0, "y":0.2},
{"label":"3", "matrix": [0, 3], "x": 3.0, "y":0.0},
{"label":"4", "matrix": [0, 4], "x": 4.0, "y":0.2},
{"label":"5", "matrix": [0, 5], "x": 5.0, "y":0.4},

{"matrix": [5, 5], "x": 9, "y": 0.4},
{"matrix": [5, 4], "x": 10, "y": 0.2},
{"matrix": [5, 3], "x": 11, "y": 0},
{"matrix": [5, 2], "x": 12, "y": 0.2},
{"matrix": [5, 1], "x": 13, "y": 0.4},
{"matrix": [5, 0], "x": 14, "y": 0.5},
{"label":"6", "matrix": [5, 5], "x": 9.0, "y":0.4},
{"label":"7", "matrix": [5, 4], "x": 10.0, "y":0.2},
{"label":"8", "matrix": [5, 3], "x": 11.0, "y":0.0},
{"label":"9", "matrix": [5, 2], "x": 12.0, "y":0.2},
{"label":"0", "matrix": [5, 1], "x": 13.0, "y":0.4},
{"label":"BSL", "matrix": [5, 0], "x": 14.0, "y":0.5},

{"matrix": [1, 0], "x": 0, "y": 1.5},
{"matrix": [1, 1], "x": 1, "y": 1.4},
{"matrix": [1, 2], "x": 2, "y": 1.2},
{"matrix": [1, 3], "x": 3, "y": 1},
{"matrix": [1, 4], "x": 4, "y": 1.2},
{"matrix": [1, 5], "x": 5, "y": 1.4},
{"label":"TAB", "matrix": [1, 0], "x": 0.0, "y":1.5},
{"label":"Q", "matrix": [1, 1], "x": 1.0, "y":1.4},
{"label":"W", "matrix": [1, 2], "x": 2.0, "y":1.2},
{"label":"E", "matrix": [1, 3], "x": 3.0, "y":1.0},
{"label":"R", "matrix": [1, 4], "x": 4.0, "y":1.2},
{"label":"T", "matrix": [1, 5], "x": 5.0, "y":1.4},

{"matrix": [6, 5], "x": 9, "y": 1.4},
{"matrix": [6, 4], "x": 10, "y": 1.2},
{"matrix": [6, 3], "x": 11, "y": 1},
{"matrix": [6, 2], "x": 12, "y": 1.2},
{"matrix": [6, 1], "x": 13, "y": 1.4},
{"matrix": [6, 0], "x": 14, "y": 1.5},
{"label":"Y", "matrix": [6, 5], "x": 9.0, "y":1.4},
{"label":"U", "matrix": [6, 4], "x": 10.0, "y":1.2},
{"label":"I", "matrix": [6, 3], "x": 11.0, "y":1.0},
{"label":"O", "matrix": [6, 2], "x": 12.0, "y":1.2},
{"label":"P", "matrix": [6, 1], "x": 13.0, "y":1.4},
{"label":"GRV", "matrix": [6, 0], "x": 14.0, "y":1.5},

{"matrix": [2, 0], "x": 0, "y": 2.5},
{"matrix": [2, 1], "x": 1, "y": 2.4},
{"matrix": [2, 2], "x": 2, "y": 2.2},
{"matrix": [2, 3], "x": 3, "y": 2},
{"matrix": [2, 4], "x": 4, "y": 2.2},
{"matrix": [2, 5], "x": 5, "y": 2.4},
{"label":"CAPS", "matrix": [2, 0], "x": 0.0, "y":2.5},
{"label":"A", "matrix": [2, 1], "x": 1.0, "y":2.4},
{"label":"S", "matrix": [2, 2], "x": 2.0, "y":2.2},
{"label":"D", "matrix": [2, 3], "x": 3.0, "y":2.0},
{"label":"F", "matrix": [2, 4], "x": 4.0, "y":2.2},
{"label":"G", "matrix": [2, 5], "x": 5.0, "y":2.4},

{"matrix": [7, 5], "x": 9, "y": 2.4},
{"matrix": [7, 4], "x": 10, "y": 2.2},
{"matrix": [7, 3], "x": 11, "y": 2},
{"matrix": [7, 2], "x": 12, "y": 2.2},
{"matrix": [7, 1], "x": 13, "y": 2.4},
{"matrix": [7, 0], "x": 14, "y": 2.5},
{"label":"H", "matrix": [7, 5], "x": 9.0, "y":2.4},
{"label":"J", "matrix": [7, 4], "x": 10.0, "y":2.2},
{"label":"K", "matrix": [7, 3], "x": 11.0, "y":2.0},
{"label":"L", "matrix": [7, 2], "x": 12.0, "y":2.2},
{"label":";", "matrix": [7, 1], "x": 13.0, "y":2.4},
{"label":"'", "matrix": [7, 0], "x": 14.0, "y":2.5},

{"matrix": [3, 0], "x": 0, "y": 3.5},
{"matrix": [3, 1], "x": 1, "y": 3.4},
{"matrix": [3, 2], "x": 2, "y": 3.2},
{"matrix": [3, 3], "x": 3, "y": 3},
{"matrix": [3, 4], "x": 4, "y": 3.2},
{"matrix": [3, 5], "x": 5, "y": 3.4},
{"matrix": [4, 5], "x": 6.25, "y": 3.4},
{"label":"SFT", "matrix": [3, 0], "x": 0.0, "y":3.5},
{"label":"Z", "matrix": [3, 1], "x": 1.0, "y":3.4},
{"label":"X", "matrix": [3, 2], "x": 2.0, "y":3.2},
{"label":"C", "matrix": [3, 3], "x": 3.0, "y":3.0},
{"label":"V", "matrix": [3, 4], "x": 4.0, "y":3.2},
{"label":"B", "matrix": [3, 5], "x": 5.0, "y":3.4},
{"label":"GUI", "matrix": [4, 5], "x": 6.25, "y":3.4},

{"matrix": [9, 5], "x": 7.75, "y": 3.4},
{"matrix": [8, 5], "x": 9, "y": 3.4},
{"matrix": [8, 4], "x": 10, "y": 3.2},
{"matrix": [8, 3], "x": 11, "y": 3},
{"matrix": [8, 2], "x": 12, "y": 3.2},
{"matrix": [8, 1], "x": 13, "y": 3.4},
{"matrix": [8, 0], "x": 14, "y": 3.5},
{"label":"GUI", "matrix": [9, 5], "x": 7.75, "y":3.4},
{"label":"N", "matrix": [8, 5], "x": 9.0, "y":3.4},
{"label":"M", "matrix": [8, 4], "x": 10.0, "y":3.2},
{"label":",", "matrix": [8, 3], "x": 11.0, "y":3.0},
{"label":".", "matrix": [8, 2], "x": 12.0, "y":3.2},
{"label":"/", "matrix": [8, 1], "x": 13.0, "y":3.4},
{"label":"SFT", "matrix": [8, 0], "x": 14.0, "y":3.5},

{"matrix": [4, 1], "x": 2.7, "y": 4.6},
{"matrix": [4, 2], "x": 3.8, "y": 4.5},
{"matrix": [4, 3], "x": 4.9, "y": 4.55},
{"matrix": [4, 4], "x": 6.1, "y": 4.65},
{"label":"ALT", "matrix": [4, 1], "x": 2.7, "y":4.6},
{"label":"CTL", "matrix": [4, 2], "x": 3.8, "y":4.5},
{"label":"ENT", "matrix": [4, 3], "x": 4.9, "y":4.55},
{"label":"MINS", "matrix": [4, 4], "x": 6.1, "y":4.65},

{"matrix": [9, 4], "x": 7.9, "y": 4.65},
{"matrix": [9, 3], "x": 9.1, "y": 4.55},
{"matrix": [9, 2], "x": 10.2, "y": 4.5},
{"matrix": [9, 1], "x": 11.3, "y": 4.6}
{"label":"EQL", "matrix": [9, 4], "x": 7.9, "y":4.65},
{"label":"SPC", "matrix": [9, 3], "x": 9.1, "y":4.55},
{"label":"BSP", "matrix": [9, 2], "x": 10.2, "y":4.5},
{"label":"DEL", "matrix": [9, 1], "x": 11.3, "y":4.6}
]
}
}
Expand Down
38 changes: 25 additions & 13 deletions keyboards/clickety_split/leeloo/keymaps/default/config.h
Original file line number Diff line number Diff line change
@@ -1,5 +1,4 @@
/* Copyright 2022 Clickety Split Ltd.
* https://clicketysplit.ca
/* 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
Expand All @@ -17,17 +16,30 @@

#pragma once

// Select hand configuration
// #define MASTER_LEFT
// #define MASTER_RIGHT
// #define EE_HANDS

#ifdef TAPPING_TERM
#undef TAPPING_TERM
#define QUICK_TAP_TERM 0
#define TAPPING_TERM 150
#endif

// If rotary encoders are used, and they require more or less resolution/sensitivity
// you may try increasing or decreasing the value.
// #define ENCODER_RESOLUTION 2

#define RGB_MATRIX_KEYPRESSES // reacts to keypresses
// #define RGB_MATRIX_KEYRELEASES // reacts to keyreleases (instead of keypresses)
// #define RGB_DISABLE_AFTER_TIMEOUT 0 // number of ticks to wait until disabling effects
#define RGB_DISABLE_WHEN_USB_SUSPENDED // turn off effects when suspended
#define RGB_MATRIX_FRAMEBUFFER_EFFECTS

#define RGB_MATRIX_MAXIMUM_BRIGHTNESS 115 // limits maximum brightness of LEDs to 150 out of 255.
// Higher may cause the controller to crash.
#define RGB_MATRIX_HUE_STEP 10
#define RGB_MATRIX_SAT_STEP 10
#define RGB_MATRIX_VAL_STEP 10
#define RGB_MATRIX_SPD_STEP 10


/* By default, the RGB_MATRIX effects are disabled.
*
* For a complete list, visit: https://docs.qmk.fm/#/feature_rgb_matrix?id=rgb-matrix-effects.
* Some of the effects take up a lot of memory, so you may need to manage the number of
* effects that are loaded at any given time.
*/
#define ENABLE_RGB_MATRIX_GRADIENT_UP_DOWN
#define ENABLE_RGB_MATRIX_SOLID_REACTIVE_NEXUS
#define ENABLE_RGB_MATRIX_SPLASH
26 changes: 18 additions & 8 deletions keyboards/clickety_split/leeloo/keymaps/default/keymap.c
Original file line number Diff line number Diff line change
@@ -1,5 +1,4 @@
/* Copyright 2022 Clickety Split Ltd.
* https://clicketysplit.ca
/* 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
Expand Down Expand Up @@ -92,23 +91,34 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
* ,-----------------------------------------. ,-----------------------------------------.
* | | | | | | | | | | | | | |
* |------+------+------+------+------+------| |------+------+------+------+------+------|
* | | | | | | | | | | | | | |
* | | | | | | | | | | +VOL | | | |
* |------+------+------+------+------+------| |------+------+------+------+------+------|
* | | | | | | |--------. ,-------| | | | | | |
* | | | | | | |--------. ,-------| | | -VOL | | | |
* |------+------+------+------+------+------| | | |------+------+------+------+------+------|
* | | | | | | |--------| |-------| | | | | | |
* | | | | | | |--------| |-------| | MUTE | | | | |
* `-----------------------------------------/ / \ \-----------------------------------------'
* | LALT | LCTL | ENT | / MINS / \ EQL \ | SPC | BSPC | DEL |
* | | | LOWR |/ RAISE / \RAISE \ | LOWR | | |
* `-------------------------------' '------''-----------------------'
*
* NOTE: For Leeloo v1 the RGB Keycodes will not have any effect.
*
*/
[_ADJUST] = LAYOUT(
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
_______, _______, _______, _______, _______, _______, _______, _______, KC_VOLU, _______, _______, _______,
_______, RGB_TOG, RGB_HUI, RGB_SAI, RGB_VAI, _______, _______, _______, KC_VOLD, _______, _______, _______,
_______, RGB_MOD, RGB_HUD, RGB_SAD, RGB_VAD, _______, _______, _______, _______, KC_MUTE, _______, _______, _______, _______,
_______, _______, _______, _______, _______, _______, _______, _______
)
};

/* Tri Layer
* When Lower and Raise are pressed at the same time, and wrapped with LT(),
* Adjust is activated with the following method.
*/
layer_state_t layer_state_set_user(layer_state_t state) {
state = update_tri_layer_state(state, _LOWER, _RAISE, _ADJUST);

return state;
}
1 change: 0 additions & 1 deletion keyboards/clickety_split/leeloo/keymaps/default/rules.mk

This file was deleted.

28 changes: 19 additions & 9 deletions keyboards/clickety_split/leeloo/leeloo.c
Original file line number Diff line number Diff line change
@@ -1,5 +1,4 @@
/* Copyright 2022 Clickety Split Ltd.
* https://clicketysplit.ca
/* 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
Expand Down Expand Up @@ -48,17 +47,28 @@ static void render_mod_status(uint8_t modifiers) {

static void render_secondary_oled(void) {
// Version Information
oled_write_P(PSTR("Leeloo\n\n"), false);
#if defined(KEYBOARD_clickety_split_leeloo_rev1)
oled_write_P(PSTR("Leeloo v1\n\n"), false);
#else
oled_write_P(PSTR("Leeloo v2\n\n"), false);
#endif

oled_write_P(PSTR("Firmware: "), false);
oled_write_P(PSTR("v1.0"), false);

#if defined(KEYBOARD_clickety_split_leeloo_rev1)
oled_write_P(PSTR("v1.13"), false);
#else
oled_write_P(PSTR("v2.13"), false);
#endif

oled_write_P(PSTR("\n"), false);
oled_write_P(PSTR("Clickety Split Ltd."), false);
}

static void render_status(void) {
// Host Keyboard Layer Status
switch (get_highest_layer(default_layer_state)) {
case _BASE:
case 0:
oled_write_P(PSTR("QWERTY | "), false);
break;
}
Expand All @@ -69,15 +79,15 @@ static void render_status(void) {
oled_write_P(PSTR("Base \n"), false);
break;

case _LOWER:
case 1:
oled_write_P(PSTR("Lower \n"), false);
break;

case _RAISE:
case 2:
oled_write_P(PSTR("Raise \n"), false);
break;

case _ADJUST:
case 3:
oled_write_P(PSTR("Adjust \n"), false);
break;

Expand Down Expand Up @@ -128,4 +138,4 @@ bool encoder_update_kb(uint8_t index, bool clockwise) {
}
return true;
}
#endif
#endif // ENCODER_ENABLE
23 changes: 16 additions & 7 deletions keyboards/clickety_split/leeloo/readme.md
Original file line number Diff line number Diff line change
@@ -1,16 +1,25 @@
# Leeloo
# Clickety Split | Leeloo v2

![Leeloo](https://cdn.shopify.com/s/files/1/0599/3460/5491/files/Leeloo-rev1.0-w.jpg?v=1646798726)
![Leeloo v2](https://i.imgur.com/swPHS0Bh.jpg)

Leeloo is a 4x6x5m ortholinear split keyboard kit made and sold by Clickety Split Ltd.
Leeloo v2 is the evolution of Leeloo, 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, Pro Micro, Elite-C
* Hardware Availability: [clicketysplit.ca](https://clicketysplit.ca/pages/leeloo)
* Hardware Supported: Leeloo PCB rev1/rev2, Pro Micro, Elite-C
* Hardware Availability: [clicketysplit.ca/pages/leeloo](https://clicketysplit.ca/pages/leeloo)

# Leeloo

![Leeloo](https://i.imgur.com/x1ew17Dh.jpg)

The original design and release of Leeloo.

# Sample Build Commands for Leeloo v1 and v2

Make example, after setting up build environment:
Make example for this keyboard (after setting up your build environment):

make clickety_split/leeloo/rev1:default
make clickety_split/leeloo/rev2: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).
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).
6 changes: 6 additions & 0 deletions keyboards/clickety_split/leeloo/rev1/info.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
{
"keyboard_name": "Leeloo v1",
"usb": {
"device_version": "0.1.3"
}
}
Loading

0 comments on commit a724305

Please sign in to comment.