[Keyboard] Little Big Scroll (#264)

* lbs 4 initial

* LBS 4

Completed firmware

* LBS 6

Completed Firmware

* Cleanup LBS4

* Cleanup LBS6

* fixed keymap

* Update readme.md

* LBS 6 modified to info.json

* Update readme.md

* Update readme.md

* Update readme.md

* Update readme.md

* Update readme.md

* Update config.h

* Added default QMK keymaps
This commit is contained in:
Markus Knutsson 2022-10-21 04:02:30 +02:00 committed by GitHub
parent 56d651511d
commit ef676bce48
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
21 changed files with 586 additions and 9 deletions

View File

@ -1,9 +1,9 @@
/* SPDX-License-Identifier: GPL-2.0-or-later */
#pragma once
#define VIAL_KEYBOARD_UID {0xA6, 0x9A, 0x51, 0x3D, 0xF9, 0x02, 0x5C, 0x12}
#define VIAL_UNLOCK_COMBO_ROWS { 5, 5 }
#define VIAL_UNLOCK_COMBO_COLS { 0, 3 }
/* SPDX-License-Identifier: GPL-2.0-or-later */
#pragma once
#define VIAL_KEYBOARD_UID {0xA6, 0x9A, 0x51, 0x3D, 0xF9, 0x02, 0x5C, 0x12}
#define VIAL_UNLOCK_COMBO_ROWS { 5, 5 }
#define VIAL_UNLOCK_COMBO_COLS { 0, 3 }

View File

@ -0,0 +1,21 @@
// Copyright 2022 Markus Knutsson (@TweetyDaBird)
// SPDX-License-Identifier: GPL-2.0-or-later
#pragma once
#define RGBLIGHT_EFFECT_BREATHING
#define RGBLIGHT_EFFECT_RAINBOW_MOOD
#define RGBLIGHT_LIMIT_VAL 255
#define RGBLIGHT_DEFAULT_VAL ( RGBLIGHT_LIMIT_VAL / 3 )
#define RGBLIGHT_DEFAULT_MODE RGBLIGHT_MODE_RAINBOW_MOOD
#define RGBLIGHT_SLEEP
#define BOOTMAGIC_LITE_ROW 0
#define BOOTMAGIC_LITE_COLUMN 0
// reduce memory
#undef LOCKING_SUPPORT_ENABLE
#undef LOCKING_RESYNC_ENABLE
#define NO_ACTION_ONESHOT
#define LAYER_STATE_8BIT

View File

@ -0,0 +1,97 @@
{
"keyboard_name": "LittleBigScroll 4",
"manufacturer": "Tweetys Wild Thinking",
"url": "https://lectronz.com/stores/tweetys-wild-thinking",
"maintainer": "TweetyDaBird",
"development_board": "promicro",
"bootloader_instructions": "Short marked pads on PCB, or hold top-outer key when plugging in each hand.",
"keyboard_folder": "tweetydabird/lbs4",
"usb": {
"device_version": "1.1.1",
"pid": "0x23B0",
"vid": "0xFEED"
},
"debounce": 5,
"config_h_features": {
"audio": false,
"backlight": false,
"bootmagic": true,
"command": false,
"console": false,
"encoder": true,
"extrakey": true,
"grave_esc": false,
"magic": false,
"mousekey": false,
"nkro": false,
"rgblight": true,
"sleep_led": false,
"space_cadet": false,
"tap_dance": false
},
"features": {
"audio": false,
"backlight": false,
"bootmagic": true,
"command": false,
"console": false,
"encoder": true,
"extrakey": true,
"grave_esc": false,
"magic": false,
"mousekey": false,
"nkro": false,
"rgblight": true,
"sleep_led": false,
"space_cadet": false,
"tap_dance": false
},
"encoder": {
"enabled": true,
"rotary": [
{
"pin_a": "B1",
"pin_b": "F7",
"resolution": 4
}
]
},
"rgblight": {
"pin": "D2",
"led_count": 6,
},
"matrix_pins": {
"direct": [
["E6", "D7", null],
["B5", "B4", "F4"]
]
},
"matrix_size": {
"cols": 3,
"rows": 2
},
"layouts": {
"LAYOUT": {
"layout": [
{ "label": "Play", "matrix": [1, 2], "x": 2, "y": 0, "w": 2, "h": 2 },
{ "label": "F1", "matrix": [0, 0], "x": 0, "y": 0, "w": 1, "h": 1 },
{ "label": "F2", "matrix": [0, 1], "x": 1, "y": 0, "w": 1, "h": 1 },
{ "label": "F3", "matrix": [1, 0], "x": 0, "y": 1, "w": 1, "h": 1 },
{ "label": "F4", "matrix": [1, 1], "x": 1, "y": 1, "w": 1, "h": 1 },
]
}
}
}

View File

@ -0,0 +1,35 @@
// Copyright 2022 Markus Knutsson (@TweetyDaBird)
// SPDX-License-Identifier: GPL-2.0-or-later
#include QMK_KEYBOARD_H
// Defines names for use in layer keycodes and the keymap
enum layer_names {
_BASE,
_RGB
};
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
/* Base */
[_BASE] = LAYOUT(
KC_MPLY,
TO(_RGB), KC_MSEL,
KC_MPRV, KC_MNXT
),
[_RGB] = LAYOUT(
KC_MPLY,
TO(_BASE), RGB_VAI,
RGB_TOG, RGB_VAD
)
};
bool encoder_update_user(uint8_t index, bool clockwise) {
if (index == 0) {
if (clockwise) {
tap_code(KC_VOLU);
} else {
tap_code(KC_VOLD);
}
}
return true;
};

View File

@ -0,0 +1,5 @@
# The default keymap for lbs4
This is a very basic layout using LSB4 as media playback buttons.
![lsb4](https://imgur.com/hCDdQIc)

View File

@ -0,0 +1,9 @@
// Copyright 2022 Markus Knutsson (@TweetyDaBird)
// SPDX-License-Identifier: GPL-2.0-or-later
#pragma once
#define VIAL_KEYBOARD_UID {0x6F, 0xD2, 0x8E, 0x52, 0x24, 0xC7, 0xC3, 0x41}
#define VIAL_UNLOCK_COMBO_ROWS { 0, 1 }
#define VIAL_UNLOCK_COMBO_COLS { 0, 1 }

View File

@ -0,0 +1,39 @@
// Copyright 2022 Markus Knutsson (@TweetyDaBird)
// SPDX-License-Identifier: GPL-2.0-or-later
#include QMK_KEYBOARD_H
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
[0] = LAYOUT(
KC_MPLY,
RGB_TOG, KC_MUTE,
KC_MPRV, KC_MNXT
),
[1] = LAYOUT(
KC_TRNS,
KC_TRNS, KC_TRNS,
KC_TRNS, KC_TRNS
),
[2] = LAYOUT(
KC_TRNS,
KC_TRNS, KC_TRNS,
KC_TRNS, KC_TRNS
),
[3] = LAYOUT(
KC_TRNS,
KC_TRNS, KC_TRNS,
KC_TRNS, KC_TRNS
)
};
#if defined(ENCODER_MAP_ENABLE)
const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][2] = {
[0] = { ENCODER_CCW_CW(KC_VOLD, KC_VOLU) },
[1] = { ENCODER_CCW_CW(KC_VOLD, KC_VOLU) },
[2] = { ENCODER_CCW_CW(KC_VOLD, KC_VOLU) },
[3] = { ENCODER_CCW_CW(KC_VOLD, KC_VOLU) }
};
#endif

View File

@ -0,0 +1,14 @@
# Copyright 2022 Markus Knutsson (@TweetyDaBird)
# SPDX-License-Identifier: GPL-2.0-or-later
# Link Time Optimization
LTO_ENABLE = yes # Optimize size at compile (takes longer time)
# Additional rules for VIAL
VIA_ENABLE = yes
VIAL_ENABLE = yes
ENCODER_MAP_ENABLE = yes
QMK_SETTINGS = no
KEY_OVERRIDE_ENABLE = no

View File

@ -0,0 +1,39 @@
{
"name": "Little Big Scroll 4",
"lighting": "qmk_rgblight",
"matrix": {
"rows": 2,
"cols": 3
},
"layouts": {
"keymap":
[
[
"0,0",
"0,1",
{
"x": 1.5
},
"0,1\n\n\n\n\n\n\n\n\ne"
],
[
{
"y": -0.5,
"x": 2.25
},
"1,2"
],
[
{
"y": -0.5
},
"1,0",
"1,1",
{
"x": 1.5
},
"0,0\n\n\n\n\n\n\n\n\ne"
]
]
}
}

View File

@ -0,0 +1,28 @@
# Little Big Scroll 4
![littlebigscroll4](https://i.imgur.com/MMGSDz2.jpg)
A simple, easy to build, low cost macro pad with 4 Cherry MX hot swap keys and a clickable encoder wheel
* Keyboard Maintainer: [Markus Knutsson](https://github.com/TweetyDaBird)
* Hardware Supported: [LittleBigScroll 4 PCB](https://github.com/TweetyDaBird/Little-Big-Scroll), Pro Micro or pin-compatible
* Hardware Availability: https://lectronz.com/stores/tweetys-wild-thinking
## Make example for this keyboard (after setting up your build environment):
make tweetydabird\lbs4:vial
Flashing example for this keyboard:
make tweetydabird\lbs4:vial:flash
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).
## Bootloader
Enter the bootloader in 3 ways:
* **Bootmagic reset**: Hold down the top left key and plug in the keyboard
* **Physical reset button**: Briefly short the two pads on the top right of the PCB, next to the USB cable
* **Keycode**: Assign the keycode to a button

View File

@ -0,0 +1,4 @@
# Empty

View File

@ -0,0 +1,21 @@
// Copyright 2022 Markus Knutsson (@TweetyDaBird)
// SPDX-License-Identifier: GPL-2.0-or-later
#pragma once
#define RGBLIGHT_EFFECT_BREATHING
#define RGBLIGHT_EFFECT_RAINBOW_MOOD
#define RGBLIGHT_LIMIT_VAL 255
#define RGBLIGHT_DEFAULT_VAL ( RGBLIGHT_LIMIT_VAL / 3 )
#define RGBLIGHT_DEFAULT_MODE RGBLIGHT_MODE_RAINBOW_MOOD
#define RGBLIGHT_SLEEP
#define BOOTMAGIC_LITE_ROW 2
#define BOOTMAGIC_LITE_COLUMN 0
// reduce memory
#undef LOCKING_SUPPORT_ENABLE
#undef LOCKING_RESYNC_ENABLE
#define NO_ACTION_ONESHOT
#define LAYER_STATE_8BIT

View File

@ -0,0 +1,102 @@
{
"keyboard_name": "Little Big Scroll 6",
"manufacturer": "Tweetys Wild Thinking",
"url": "https://lectronz.com/stores/tweetys-wild-thinking",
"maintainer": "TweetyDaBird",
"development_board": "promicro",
"bootloader_instructions": "Short marked pads on PCB, or hold top left key when plugging in.",
"keyboard_folder": "tweetydabird/lbs6",
"usb": {
"device_version": "1.1.0",
"pid": "0x23B0",
"vid": "0xFEED"
},
"debounce": 5,
"config_h_features": {
"audio": false,
"backlight": false,
"bootmagic": true,
"command": false,
"console": false,
"encoder": true,
"extrakey": true,
"grave_esc": false,
"magic": false,
"mousekey": false,
"nkro": false,
"rgblight": true,
"sleep_led": false,
"space_cadet": false,
"tap_dance": false
},
"features": {
"audio": false,
"backlight": false,
"bootmagic": true,
"command": false,
"console": false,
"encoder": true,
"extrakey": true,
"grave_esc": false,
"magic": false,
"mousekey": false,
"nkro": false,
"rgblight": true,
"sleep_led": false,
"space_cadet": false,
"tap_dance": false
},
"encoder": {
"enabled": true,
"rotary": [
{
"pin_a": "F7",
"pin_b": "F6",
"resolution": 4
}
]
},
"mouse_key": {
"enabled": false
},
"rgblight": {
"pin": "D2",
"led_count": 8,
},
"matrix_pins": {
"direct": [
[null, "F5", null],
["D4", "D7", "B4"],
["C6", "E6", "B5"]
]
},
"matrix_size": {
"cols": 3,
"rows": 3
},
"layouts": {
"LAYOUT": {
"layout": [
{ "label": "ENC", "matrix": [0, 1], "w": 1, "x": 0, "y": 0 },
{ "label": "K00", "matrix": [1, 0], "w": 1, "x": 1, "y": 0 },
{ "label": "K01", "matrix": [1, 1], "w": 1, "x": 2, "y": 0 },
{ "label": "K02", "matrix": [1, 2], "w": 1, "x": 3, "y": 0 },
{ "label": "K03", "matrix": [2, 0], "w": 1, "x": 4, "y": 0 },
{ "label": "K04", "matrix": [2, 1], "w": 1, "x": 5, "y": 0 },
{ "label": "K05", "matrix": [2, 2], "w": 1, "x": 6, "y": 0 }
]
}
}
}

View File

@ -0,0 +1,30 @@
// Copyright 2022 Markus Knutsson (@TweetyDaBird)
// SPDX-License-Identifier: GPL-2.0-or-later
#include QMK_KEYBOARD_H
// Defines names for use in layer keycodes and the keymap
enum layer_names {
_BASE
};
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
[_BASE] = LAYOUT(
KC_MPLY,
RGB_MOD, RGB_VAI, RGB_TOG,
KC_MPRV, KC_MPLY, KC_MNXT
)
};
bool encoder_update_user(uint8_t index, bool clockwise) {
if (index == 0) {
if (clockwise) {
tap_code(KC_VOLU);
} else {
tap_code(KC_VOLD);
}
}
return false;
}

View File

@ -0,0 +1,3 @@
# The default keymap for LBS6
This is a very basic layout using LBS6 as media playback buttons.

View File

@ -0,0 +1,9 @@
// Copyright 2022 Markus Knutsson (@TweetyDaBird)
// SPDX-License-Identifier: GPL-2.0-or-later
#pragma once
#define VIAL_KEYBOARD_UID {0x74, 0x05, 0x9C, 0x91, 0xD1, 0x15, 0xB2, 0x59}
#define VIAL_UNLOCK_COMBO_ROWS { 1, 2 }
#define VIAL_UNLOCK_COMBO_COLS { 0, 2 }

View File

@ -0,0 +1,39 @@
// Copyright 2022 Markus Knutsson (@TweetyDaBird)
// SPDX-License-Identifier: GPL-2.0-or-later
#include QMK_KEYBOARD_H
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
[0] = LAYOUT(
KC_MPLY,
TO(1), KC_MSEL, RGB_TOG,
KC_MPRV, KC_MSTP, KC_MNXT
),
[1] = LAYOUT(
KC_TRNS,
TO(0), RGB_HUI, RGB_SAI,
RGB_MOD, RGB_HUD, RGB_SAD
),
[2] = LAYOUT(
KC_TRNS,
KC_TRNS, KC_TRNS, KC_TRNS,
KC_TRNS, KC_TRNS, KC_TRNS
),
[3] = LAYOUT(
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] = {
[0] = { ENCODER_CCW_CW(KC_VOLD, KC_VOLU) },
[1] = { ENCODER_CCW_CW(KC_VOLD, KC_VOLU) },
[2] = { ENCODER_CCW_CW(KC_VOLD, KC_VOLU) },
[3] = { ENCODER_CCW_CW(KC_VOLD, KC_VOLU) }
};
#endif

View File

@ -0,0 +1,14 @@
# Copyright 2022 Markus Knutsson (@TweetyDaBird)
# SPDX-License-Identifier: GPL-2.0-or-later
# Link Time Optimization
LTO_ENABLE = yes # Optimize size at compile (takes longer time)
# Additional rules for VIAL
VIA_ENABLE = yes
VIAL_ENABLE = yes
ENCODER_MAP_ENABLE = yes
QMK_SETTINGS = no
KEY_OVERRIDE_ENABLE = no

View File

@ -0,0 +1,39 @@
{
"name": "Little Big Scroll 6",
"lighting": "qmk_rgblight",
"matrix": {
"rows": 3,
"cols": 3
},
"layouts": {
"keymap":
[
[
{
"x": 0.5
},
"0,0\n\n\n\n\n\n\n\n\ne",
"0,1\n\n\n\n\n\n\n\n\ne"
],
[
{
"x": 1
},
"0,1"
],
[
{
"y": 0.25
},
"1,0",
"1,1",
"1,2"
],
[
"2,0",
"2,1",
"2,2"
]
]
}
}

View File

@ -0,0 +1,28 @@
# Little Big Scroll 6
![littlebigscroll6](imgur.com image replace me!)
A simple, easy to build, low cost macro pad with 6 Cherry MX hot swap keys and a clickable encoder wheel
* Keyboard Maintainer: [Markus Knutsson](https://github.com/TweetyDaBird)
* Hardware Supported: [LittleBigScroll 6 PCB](https://github.com/TweetyDaBird/Little-Big-Scroll), Pro Micro or pin-compatible
* Hardware Availability: https://lectronz.com/stores/tweetys-wild-thinking
## Make example for this keyboard (after setting up your build environment):
make tweetydabird\lbs6:vial
Flashing example for this keyboard:
make tweetydabird\lbs6:vial:flash
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).
## Bootloader
Enter the bootloader in 3 ways:
* **Bootmagic reset**: Hold down the bottom left key and plug in the keyboard
* **Physical reset button**: Briefly short the two pads on the top right of the PCB, next to the USB cable
* **Keycode**: Assign the keycode to a button

View File

@ -0,0 +1 @@
# Empty!