Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Lotus58 Glow adding keyboard #18554

Closed
wants to merge 46 commits into from
Closed
Changes from 1 commit
Commits
Show all changes
46 commits
Select commit Hold shift + click to select a range
726992e
lsb 4 initial
TweetyDaBird Aug 8, 2022
a974ad4
Merge branch 'qmk:master' into TweetyDaBird
TweetyDaBird Aug 31, 2022
c2055bb
Merge branch 'qmk:master' into TweetyDaBird
TweetyDaBird Sep 1, 2022
188f0f1
Update Lotus
TweetyDaBird Sep 1, 2022
de3bcf2
Merge remote-tracking branch 'upstream/master' into TweetyDaBird
TweetyDaBird Sep 1, 2022
0fe0b7a
Merge branch 'TweetyDaBird' of https://github.com/TweetyDaBird/qmk_fi…
TweetyDaBird Sep 1, 2022
529b95e
tweaks to lotus
TweetyDaBird Sep 1, 2022
1f31aa7
Merge branch 'qmk:master' into TweetyDaBird
TweetyDaBird Sep 13, 2022
ea14e52
fixing default
TweetyDaBird Sep 16, 2022
6f18e82
Update keymap.c
TweetyDaBird Sep 16, 2022
2c57570
Update keymap.c
TweetyDaBird Sep 16, 2022
c3ab859
Update keymap.c
TweetyDaBird Sep 16, 2022
7a97b17
Update keymap.c
TweetyDaBird Sep 16, 2022
6e9c7dc
Update keymap.c
TweetyDaBird Sep 16, 2022
71e59b5
Merge branch 'qmk:master' into Lotus58Glow
TweetyDaBird Sep 23, 2022
c8d83b0
Merge branch 'qmk:master' into Lotus58Glow
TweetyDaBird Sep 28, 2022
c13ee7b
Merge remote-tracking branch 'upstream/master' into Lotus58Glow
TweetyDaBird Sep 30, 2022
af3191f
Migrated to .json
TweetyDaBird Sep 30, 2022
169b756
Update readme.md
TweetyDaBird Sep 30, 2022
07b52ec
Merge branch 'qmk:master' into Lotus58Glow
TweetyDaBird Sep 30, 2022
41cecd5
Update keyboards/tweetydabird/lotus58/info.json
TweetyDaBird Sep 30, 2022
5370da3
Update keyboards/tweetydabird/lotus58/info.json
TweetyDaBird Sep 30, 2022
d1439bd
Update keyboards/tweetydabird/lotus58/config.h
TweetyDaBird Sep 30, 2022
926bf40
Update keyboards/tweetydabird/lbs6/info.json
TweetyDaBird Sep 30, 2022
d079e0e
Update data/schemas/keyboard.jsonschema
TweetyDaBird Sep 30, 2022
6e23b95
Update config.h
TweetyDaBird Sep 30, 2022
e292549
Update keyboards/tweetydabird/lotus58/readme.md
TweetyDaBird Sep 30, 2022
1d5f8be
Requested changes
TweetyDaBird Oct 2, 2022
331727e
Merge branch 'qmk:master' into Lotus58Glow
TweetyDaBird Oct 2, 2022
3c3ea7e
Refactored for RGB
TweetyDaBird Oct 3, 2022
b4cb12a
Merge remote-tracking branch 'upstream/master' into Lotus58Glow
TweetyDaBird Oct 3, 2022
65ab2d2
Update keyboards/tweetydabird/lotus58/readme.md
TweetyDaBird Oct 7, 2022
8c6a61d
Update keyboards/tweetydabird/lotus58/rgb_full/readme.md
TweetyDaBird Oct 7, 2022
61c8bb6
Update keyboards/tweetydabird/lotus58/rgb_none/readme.md
TweetyDaBird Oct 7, 2022
b4cbc3a
Update keyboards/tweetydabird/lotus58/rgb_matrix/readme.md
TweetyDaBird Oct 7, 2022
d3c183c
Moved code from keymap
TweetyDaBird Oct 7, 2022
2264c6d
Merge branch 'Lotus58Glow' of https://github.com/TweetyDaBird/qmk_fir…
TweetyDaBird Oct 7, 2022
fe83a42
Removed RGB matrix
TweetyDaBird Oct 7, 2022
a6eb288
Update readme.md
TweetyDaBird Oct 29, 2022
bf41a51
Update readme.md
TweetyDaBird Oct 29, 2022
d13913b
Update readme.md
TweetyDaBird Oct 29, 2022
6725e79
Update readme.md
TweetyDaBird Nov 2, 2022
0d13bc2
Update readme.md
TweetyDaBird Nov 2, 2022
442e0cb
Update lotus58.c
TweetyDaBird Nov 3, 2022
6cdd3e4
Merge remote-tracking branch 'upstream/master' into Lotus58Glow
TweetyDaBird Nov 12, 2022
d6769ca
Fixed encoder mapping
TweetyDaBird Nov 25, 2022
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Next Next commit
lsb 4 initial
  • Loading branch information
TweetyDaBird committed Aug 8, 2022
commit 726992e9692383a84e77e5dc2126605847aeb1dc
93 changes: 93 additions & 0 deletions keyboards/tweetydabird/littlebigscroll4/config.h
Original file line number Diff line number Diff line change
@@ -0,0 +1,93 @@
// Copyright 2022 Markus Knutsson (@TweetyDaBird)
// SPDX-License-Identifier: GPL-2.0-or-later

#pragma once

#include "config_common.h"

/* USB Device descriptor parameter */
#define VENDOR_ID 0xFEED
#define PRODUCT_ID 0x1212
#define DEVICE_VER 0x0001
#define MANUFACTURER TweetyDaBird
#define PRODUCT littlebigscroll4

/* key matrix size */
#define MATRIX_ROWS 1
#define MATRIX_COLS 5

/*
* Keyboard Matrix Assignments
*
* Change this to how you wired your keyboard
* COLS: AVR pins used for columns, left to right
* ROWS: AVR pins used for rows, top to bottom
* DIODE_DIRECTION: COL2ROW = COL = Anode (+), ROW = Cathode (-, marked on diode)
* ROW2COL = ROW = Anode (+), COL = Cathode (-, marked on diode)
*
*/
//#define DIRECT_PINS { E6, D7, B5, B4, F4 }
//#define UNUSED_PINS

#define DIRECT_PINS { { E6, D7, B5, B4, F4 } }
#define UNUSED_PINS

#define ENCODERS_PAD_A { B1 }
#define ENCODERS_PAD_B { F7 }
#define ENCODER_RESOLUTION 2

#define RGB_DI_PIN D2
#define DRIVER_LED_TOTAL 6


#ifdef RGB_DI_PIN
# define RGBLED_NUM 6

# define RGBLIGHT_HUE_STEP 8
# define RGBLIGHT_SAT_STEP 8
# define RGBLIGHT_VAL_STEP 8

//# define RGBLIGHT_LIMIT_VAL 175 // The maximum brightness level
//# define RGBLIGHT_DEFAULT_VAL RGBLIGHT_LIMIT_VAL

//# define RGBLIGHT_SLEEP // If defined, the RGB lighting will be switched off when the host goes to sleep
//# define RGBLIGHT_DEFAULT_MODE RGBLIGHT_MODE_RAINBOW_MOOD

//== all animations enable ==
# define RGBLIGHT_ANIMATIONS
//== or choose animations ==
//# define RGBLIGHT_EFFECT_BREATHING
//# define RGBLIGHT_EFFECT_RAINBOW_MOOD
//# define RGBLIGHT_EFFECT_RAINBOW_SWIRL
//# define RGBLIGHT_EFFECT_SNAKE
//# define RGBLIGHT_EFFECT_KNIGHT
//# define RGBLIGHT_EFFECT_CHRISTMAS
//# define RGBLIGHT_EFFECT_STATIC_GRADIENT
//# define RGBLIGHT_EFFECT_RGB_TEST
//# define RGBLIGHT_EFFECT_ALTERNATING


#endif

// Debounce reduces chatter (unintended double-presses) - set 0 if debouncing is not needed
#define DEBOUNCE 5

/*
* Feature disable options
* These options are also useful to firmware size reduction.
*/

// disable debug print
//#define NO_DEBUG

// disable print
//#define NO_PRINT

// disable action features
//#define NO_ACTION_LAYER
//#define NO_ACTION_TAPPING
//#define NO_ACTION_ONESHOT

// Bootmagic Lite key configuration
#define BOOTMAGIC_LITE_ROW 0
#define BOOTMAGIC_LITE_COLUMN 0
17 changes: 17 additions & 0 deletions keyboards/tweetydabird/littlebigscroll4/info.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
{
"keyboard_name": "littlebigscroll4",
"url": "",
"maintainer": "TweetyDaBird",
"layouts": {
"LAYOUT": {
"layout": [
{"label": "k00", "x": 0, "y": 0},
{"label": "k01", "x": 1, "y": 0},
{"label": "k02", "x": 2, "y": 0},

{"label": "k10", "x": 0, "y": 1, "w": 1.5},
{"label": "k12", "x": 1.5, "y": 1, "w": 1.5}
]
}
}
}
53 changes: 53 additions & 0 deletions keyboards/tweetydabird/littlebigscroll4/keymaps/default/keymap.c
Original file line number Diff line number Diff line change
@@ -0,0 +1,53 @@
// 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(
TO(_RGB), KC_MSEL, KC_MPRV, KC_MNXT, KC_MPLY
),
[_RGB] = LAYOUT(
TO(_BASE), RGB_VAI, RGB_TOG, RGB_VAD, RGB_TOG
)
};

#ifdef ENCODER_ENABLE

// switch(biton32(layer_state)) will get you the number of the current layer

bool encoder_update_user(uint8_t index, bool clockwise) {
if (index == 0) { /* First encoder */
switch(biton32(layer_state)){
case _RGB:
// rgb brightness up/down
if(clockwise){
// tap_code(RGB_VAI);
//rgblight_increase_val();
tap_code(KC_UP);
} else {
// tap_code(RGB_VAD);
//rgblight_decrease_val();
tap_code(KC_DOWN);
}
break;
default:
//volume up/down
if (clockwise) {
tap_code(KC_VOLU);
} else {
tap_code(KC_VOLD);
}
}
}
return true;
};

#endif
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
# The default keymap for littlebigscroll4
4 changes: 4 additions & 0 deletions keyboards/tweetydabird/littlebigscroll4/littlebigscroll4.c
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
// Copyright 2022 Markus Knutsson (@TweetyDaBird)
// SPDX-License-Identifier: GPL-2.0-or-later

#include "littlebigscroll4.h"
21 changes: 21 additions & 0 deletions keyboards/tweetydabird/littlebigscroll4/littlebigscroll4.h
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
// Copyright 2022 Markus Knutsson (@TweetyDaBird)
// SPDX-License-Identifier: GPL-2.0-or-later

#pragma once

#include "quantum.h"

/* This is a shortcut to help you visually see your layout.
*
* The first section contains all of the arguments representing the physical
* layout of the board and position of the keys.
*
* The second converts the arguments into a two-dimensional array which
* represents the switch matrix.
*/
#define LAYOUT( \
K00, K01, \
K02, K03, EN0 \
) { \
{ K00, K01, K02, K03, EN0 } \
}
27 changes: 27 additions & 0 deletions keyboards/tweetydabird/littlebigscroll4/readme.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
# littlebigscroll4

![littlebigscroll4](imgur.com image replace me!)

*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, Pro Micro
* Hardware Availability: https://www.tindie.com/stores/tweetydabird/

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

make tweetydabird\littlebigscroll\littlebigscroll4:default

Flashing example for this keyboard:

make tweetydabird\littlebigscroll\littlebigscroll4:default: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 2 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
34 changes: 34 additions & 0 deletions keyboards/tweetydabird/littlebigscroll4/rules.mk
Original file line number Diff line number Diff line change
@@ -0,0 +1,34 @@
# MCU name
MCU = atmega32u4

# Bootloader selection
BOOTLOADER = caterina # Caterina is the correct bootloader for a standard Pro Micro

# Link Time Optimization
LTO_ENABLE = yes # Optimize size at compile (takes longer time)

# Debug otions
CONSOLE_ENABLE = no # Console for debug
COMMAND_ENABLE = no # Commands for debug and configuration

# Build Options
BOOTMAGIC_ENABLE = yes # Bootmagic Lite allows reset from key on plug-in

MOUSEKEY_ENABLE = no # Mouse keys
AUDIO_ENABLE = no # Audio output

EXTRAKEY_ENABLE = yes # Audio control and System control
ENCODER_ENABLE = yes # Rotary encoder

NKRO_ENABLE = no # USB Nkey Rollover, if this doesn't work, see here: https://github.com/tmk/tmk_keyboard/wiki/FAQ#nkro-doesnt-work

# RGB and Backlight
BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality
RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow
RGB_MATRIX_ENABLE = yes # Enable RGB matrix
RGB_MATRIX_DRIVER = WS2812 # Define matrix type

# Do not enable SLEEP_LED_ENABLE. it uses the same timer as BACKLIGHT_ENABLE
SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend