Compare commits

...

48 Commits

Author SHA1 Message Date
CoffeeIsLife
0365f640af Allow for RGB actions to take place on Keydown instead of Keyup (#16886)
* Allow for switch on keydown

* add docs
2022-07-02 22:49:49 +10:00
ripdog
4e35697e1a Add note about qmk doctor in newbs_flashing.md (#15688)
Co-authored-by: Drashna Jaelre <drashna@live.com>
2022-07-02 22:48:44 +10:00
Vino Rodrigues
ec6875af56 [Keyboard] New IDOBAO ID63 (a.k.a. Denwir D60) (#17144)
Co-authored-by: Drashna Jaelre <drashna@live.com>
2022-07-02 22:46:42 +10:00
InonL
feea704da7 Added VIA support for Drop CTRL (#17336)
Co-authored-by: Drashna Jaelre <drashna@live.com>
2022-07-02 22:42:45 +10:00
Murali S
0c84dd6bdc Add keymaps for muralis and kuru (#17337)
Co-authored-by: Drashna Jaelre <drashna@live.com>
Co-authored-by: Sree Vidya Sobha Dharmarajan <ssd@Srees-MacBook-Pro.local>
2022-07-02 22:42:13 +10:00
spooknik
3059d7883c Swift65 Hotswap Support (#16987)
Co-authored-by: Drashna Jaelre <drashna@live.com>
Co-authored-by: Steven Phillips <steven.phillips.17@me.com>
2022-07-02 22:41:32 +10:00
jpe230
07f6fba6de Add Jpe230 Preonic Keymap (#17331) 2022-07-02 22:40:24 +10:00
Minke Zhang
4a3e0ef9ab Add personal YMDK Split64 keymap (#16980)
Co-authored-by: Drashna Jaelre <drashna@live.com>
2022-07-02 22:39:31 +10:00
Jairo Ramírez Ávila
56ecc86482 Added oriaj3 keymap with Matrix RGB support for Kimiko keyboard. (#17103)
Co-authored-by: Drashna Jaelre <drashna@live.com>
2022-07-02 22:37:29 +10:00
Wolf Van Herreweghe
627f9321a8 Add base Ryujin firmware (#17187)
Co-authored-by: Drashna Jaelre <drashna@live.com>
Co-authored-by: Wolf Van Herreweghe <wolfvh@getupgamesofficial.com>
2022-07-02 22:36:32 +10:00
Nick Brassel
3b14383f48 Fix line endings. 2022-07-02 22:20:30 +10:00
-k
5699763d4c Update massdrop/alt:charlesrocket (#17297)
Co-authored-by: Drashna Jaelre <drashna@live.com>
2022-07-02 22:19:35 +10:00
jels
ac333016eb Add ATmega32u2 Support to HHKB (#17298) 2022-07-02 22:18:56 +10:00
David Kristoffersen
a80943579c [Keymap] Add prog_qgmlwb keymap (#16890) 2022-07-02 22:18:21 +10:00
Jean Bernard
ef633cf461 Added MS Sculpt ISO-layout conversion with STM32F401 (#17049) 2022-07-02 22:16:38 +10:00
foureight84
9c2505676c foureight84 keymap for sofle (#17246)
Co-authored-by: Drashna Jaelre <drashna@live.com>
2022-07-02 22:08:13 +10:00
Will Winder
f03aec28fb [Keyboard] Add Avalanche v4 (#17288)
Co-authored-by: Drashna Jaelre <drashna@live.com>
2022-07-02 22:07:35 +10:00
Yizhen Liu
c3ef70b9a6 [Keyboard]KPrepublic bm80v2 Keyboard ISO support (#17193)
Co-authored-by: Drashna Jaelre <drashna@live.com>
2022-07-02 22:06:38 +10:00
Aidan Gauland
8c4a5f9ba2 Add lkbm keymap (#17218) 2022-07-02 22:03:11 +10:00
jack
ee26d3e77f Add Zsh note for tab complete (#17226) 2022-07-02 21:59:59 +10:00
PixelSpaceStudio
a80461e264 Add pixelspace user space and capsule65i keyboard (#17235) 2022-07-02 21:58:00 +10:00
Watson
48721b20fc Updated revisions and added a keyboard (#16731)
Co-authored-by: Drashna Jaelre <drashna@live.com>
Co-authored-by: Ryan <fauxpark@gmail.com>
Co-authored-by: WestM <93159069+WestMProducts@users.noreply.github.com>
2022-07-02 21:55:10 +10:00
anubhav dhiman
c725f6f768 Add new keyboard AT3 (#17431)
Co-authored-by: zvecr <git@zvecr.com>
Co-authored-by: Ryan <fauxpark@gmail.com>
2022-07-02 21:46:29 +10:00
spx01
2f11509465 spx01 keymap for the kbd67mkiirgb (#17012) 2022-07-02 21:44:58 +10:00
Nick Krichevsky
69f0fc5868 Add workaround to allow Sesame to work without atomic interactions (#17034) 2022-07-02 21:43:36 +10:00
Xelus22
f8a56cd638 [Keyboard] RS108 Addition (#16989) 2022-07-02 21:42:48 +10:00
Josh Hinnebusch
096db8c8ca Add LED backlight/indicator info to reference_info_json.md (#17010)
Co-authored-by: Joel Challis <git@zvecr.com>
2022-07-02 21:27:34 +10:00
Gardego5
6fce400ef5 Ut47.2 gardego5 layout (#16955) 2022-07-02 21:27:08 +10:00
Manna Harbour
3842b15cf1 [Keymap] Update Miryoku (#16482) 2022-07-02 21:26:23 +10:00
Daniil Iastremskii
f2f88bcfcc Add elephant42 keyboard (#14336) 2022-07-02 21:22:51 +10:00
Batuhan Baserdem
fd44341cbf Userspace and keymap update for user bbaserdem. (#14484) 2022-07-02 21:09:04 +10:00
Kan-Ru Chen
f439fe6055 HHKB YDKB Yang BT Controller (#15759)
Co-authored-by: Drashna Jaelre <drashna@live.com>
2022-07-02 21:01:03 +10:00
Taeyoon Kim
0eab24be26 Adding 34keys layout for kprepublic bm40 keyboard. (#15974) 2022-07-02 20:57:12 +10:00
moyi4681
578a3e3505 add baguette66 keyboard (#16429)
* add baguette66 keyboard

* Update keyboards/kbdfans/baguette66/soldered/config.h

Co-authored-by: Ryan <fauxpark@gmail.com>

* Update keyboards/kbdfans/baguette66/rgb/config.h

Co-authored-by: Ryan <fauxpark@gmail.com>

Co-authored-by: Ryan <fauxpark@gmail.com>
2022-07-02 20:54:22 +10:00
Nick Brassel
c8fbfca1b6 [QP] Explicit buffer alignment. (#17532) 2022-07-02 13:22:46 +10:00
Joel Challis
9d70162d53 Allow locate_keymap to handle DEFAULT_FOLDER (#17529) 2022-07-01 22:20:32 +01:00
Joel Challis
2757251218 Specify blackpill board files where relevant (#17521) 2022-07-01 15:38:57 +01:00
Joel Challis
d978432812 Swap over F4x1 8MHz HSE boards over from blackpill board files (#17520) 2022-07-01 15:36:08 +01:00
yiancar
1e643ba1d1 [Keyboard] Nebula12b (#17308)
Co-authored-by: Drashna Jaelre <drashna@live.com>
Co-authored-by: Ryan <fauxpark@gmail.com>
Co-authored-by: yiancar <yiancar@gmail.com>
2022-06-30 23:11:13 -07:00
Jan Lindblom
38ca5e95e1 Adding Rev41lp keyboard (#15895)
* [keyboard] Add rev41lp

* [keymap] rev41lp: More layer, less clutter

* [keymap] rev41lp:whitespace cleanup

* [keymap] rev41lp: Remove outer shift & edit homerow timings

left-ctrl < left-shift
kc-enter < kc-sftent
lower + tab = grave
raise + tab = tilde

* Initial namnlos keymap for rev41lp.

* Updated according to PR checklist.

* Update keyboards/b_sides/rev41lp/config.h

Co-authored-by: Albert Y <76888457+filterpaper@users.noreply.github.com>

* Update keyboards/b_sides/rev41lp/rules.mk

Co-authored-by: Albert Y <76888457+filterpaper@users.noreply.github.com>

* Update keyboards/b_sides/rev41lp/keymaps/default/keymap.c

Co-authored-by: Albert Y <76888457+filterpaper@users.noreply.github.com>

* Update keyboards/b_sides/rev41lp/keymaps/default/keymap.c

Co-authored-by: Albert Y <76888457+filterpaper@users.noreply.github.com>

* Update keyboards/b_sides/rev41lp/keymaps/default/keymap.c

Co-authored-by: Albert Y <76888457+filterpaper@users.noreply.github.com>

* Update keyboards/b_sides/rev41lp/keymaps/default/keymap.c

Co-authored-by: Albert Y <76888457+filterpaper@users.noreply.github.com>

* Update keyboards/b_sides/rev41lp/keymaps/default/keymap.c

Co-authored-by: Albert Y <76888457+filterpaper@users.noreply.github.com>

* Update keyboards/b_sides/rev41lp/keymaps/default/keymap.c

Co-authored-by: Albert Y <76888457+filterpaper@users.noreply.github.com>

* Update keyboards/b_sides/rev41lp/keymaps/default/keymap.c

Co-authored-by: Albert Y <76888457+filterpaper@users.noreply.github.com>

* Update keyboards/b_sides/rev41lp/keymaps/default/keymap.c

Co-authored-by: Albert Y <76888457+filterpaper@users.noreply.github.com>

* Update keyboards/b_sides/rev41lp/keymaps/default/keymap.c

Co-authored-by: Albert Y <76888457+filterpaper@users.noreply.github.com>

* Updated to fulfill PR checklist.

* Update keyboards/b_sides/rev41lp/info.json

Co-authored-by: Drashna Jaelre <drashna@live.com>

* Update keyboards/b_sides/rev41lp/config.h

Co-authored-by: Drashna Jaelre <drashna@live.com>

* Update keyboards/b_sides/rev41lp/keymaps/cyril/config.h

Co-authored-by: Drashna Jaelre <drashna@live.com>

* Update keyboards/b_sides/rev41lp/keymaps/cyril/keymap.c

Co-authored-by: Drashna Jaelre <drashna@live.com>

* Update keyboards/b_sides/rev41lp/keymaps/namnlos/keymap.c

Co-authored-by: Drashna Jaelre <drashna@live.com>

* Update keyboards/b_sides/rev41lp/keymaps/namnlos/rules.mk

Co-authored-by: Drashna Jaelre <drashna@live.com>

* Update keyboards/b_sides/rev41lp/rules.mk

Co-authored-by: Drashna Jaelre <drashna@live.com>

* Update keyboards/b_sides/rev41lp/rules.mk

Co-authored-by: Drashna Jaelre <drashna@live.com>

* Update keyboards/b_sides/rev41lp/rules.mk

Co-authored-by: Ryan <fauxpark@gmail.com>

* Update keyboards/b_sides/rev41lp/readme.md

Co-authored-by: Ryan <fauxpark@gmail.com>

* Update keyboards/b_sides/rev41lp/readme.md

Co-authored-by: Ryan <fauxpark@gmail.com>

* Update keyboards/b_sides/rev41lp/keymaps/namnlos/keymap.c

Co-authored-by: Ryan <fauxpark@gmail.com>

* Update keyboards/b_sides/rev41lp/rules.mk

Co-authored-by: Ryan <fauxpark@gmail.com>

* Adding picture.

* Rename README.md to readme.md

* Cleaning up in rules.mk.

* Moving en- and em-dash from dedicated keys.

* Readme fixup.

There was a typo in the title, also changed the description a little.

* Update keyboards/b_sides/rev41lp/readme.md

Co-authored-by: Ryan <fauxpark@gmail.com>

* Update keyboards/b_sides/rev41lp/keymaps/namnlos/rules.mk

Co-authored-by: Ryan <fauxpark@gmail.com>

Co-authored-by: cyril279 <cyril.x9@gmail.com>
Co-authored-by: Albert Y <76888457+filterpaper@users.noreply.github.com>
Co-authored-by: Drashna Jaelre <drashna@live.com>
Co-authored-by: Ryan <fauxpark@gmail.com>
2022-07-01 13:02:07 +10:00
James Young
f2f2a7ace9 Add missing QMK Configurator layout data for chlx str.merro60 (#17518)
* add LAYOUT_60_ansi_split_bs_rshift layout data

* add LAYOUT_60_iso layout data
2022-06-30 23:39:49 +01:00
James Young
c1d4950938 Add QMK Configurator layout data for ADM42 rev4 (#17515) 2022-06-30 20:10:15 +01:00
Joel Challis
7326a0051b Allow module check to error out when piped to /dev/null (#17505) 2022-06-30 00:33:59 +01:00
Drashna Jaelre
74bec84740 [Bug] Fix 3 speed mousekey mode (#17500) 2022-06-29 01:16:31 -07:00
dependabot[bot]
88086a80b0 Bump JamesIves/github-pages-deploy-action from 3.7.1 to 4.3.4 (#17497)
Bumps [JamesIves/github-pages-deploy-action](https://github.com/JamesIves/github-pages-deploy-action) from 3.7.1 to 4.3.4.
- [Release notes](https://github.com/JamesIves/github-pages-deploy-action/releases)
- [Commits](https://github.com/JamesIves/github-pages-deploy-action/compare/3.7.1...v4.3.4)

---
updated-dependencies:
- dependency-name: JamesIves/github-pages-deploy-action
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-06-29 16:45:09 +10:00
dependabot[bot]
58f4e19503 Bump actions/checkout from 2 to 3 (#17496)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-06-29 16:44:54 +10:00
dependabot[bot]
b37a59a967 Bump peter-evans/create-pull-request from 3 to 4 (#17495)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-06-29 16:44:19 +10:00
Nick Brassel
2b094d4112 Enable dependabot for actions. 2022-06-29 08:46:47 +10:00
522 changed files with 19902 additions and 4113 deletions

6
.github/dependabot.yml vendored Normal file
View File

@@ -0,0 +1,6 @@
version: 2
updates:
- package-ecosystem: "github-actions"
directory: "/"
schedule:
interval: "daily"

View File

@@ -18,7 +18,7 @@ jobs:
if: github.repository == 'qmk/qmk_firmware'
steps:
- uses: actions/checkout@v2
- uses: actions/checkout@v3
with:
fetch-depth: 1
persist-credentials: false

View File

@@ -22,7 +22,7 @@ jobs:
if: github.repository == 'qmk/qmk_firmware'
steps:
- uses: actions/checkout@v2
- uses: actions/checkout@v3
with:
fetch-depth: 0

View File

@@ -18,7 +18,7 @@ jobs:
container: qmkfm/qmk_cli
steps:
- uses: actions/checkout@v2
- uses: actions/checkout@v3
with:
submodules: recursive
- name: Install dependencies

View File

@@ -18,7 +18,7 @@ jobs:
if: github.repository == 'qmk/qmk_firmware'
steps:
- uses: actions/checkout@v2
- uses: actions/checkout@v3
with:
fetch-depth: 1
persist-credentials: false

View File

@@ -12,7 +12,7 @@ jobs:
if: github.repository == 'qmk/qmk_firmware'
steps:
- uses: actions/checkout@v2
- uses: actions/checkout@v3
with:
token: ${{ secrets.QMK_BOT_TOKEN }}
fetch-depth: 0

View File

@@ -20,7 +20,7 @@ jobs:
if: github.repository == 'qmk/qmk_firmware'
steps:
- uses: actions/checkout@v2
- uses: actions/checkout@v3
with:
fetch-depth: 1
@@ -34,7 +34,7 @@ jobs:
qmk --verbose generate-docs
- name: Deploy
uses: JamesIves/github-pages-deploy-action@3.7.1
uses: JamesIves/github-pages-deploy-action@v4.3.4
with:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
BASE_BRANCH: master

View File

@@ -17,7 +17,7 @@ jobs:
- xap
steps:
- uses: actions/checkout@v2
- uses: actions/checkout@v3
with:
token: ${{ secrets.QMK_BOT_TOKEN }}
fetch-depth: 0

View File

@@ -19,7 +19,7 @@ jobs:
container: qmkfm/qmk_cli
steps:
- uses: actions/checkout@v2
- uses: actions/checkout@v3
with:
fetch-depth: 0

View File

@@ -13,7 +13,7 @@ jobs:
container: qmkfm/qmk_cli
steps:
- uses: actions/checkout@v2
- uses: actions/checkout@v3
with:
fetch-depth: 0
@@ -37,7 +37,7 @@ jobs:
git config user.email 'hello@qmk.fm'
- name: Create Pull Request
uses: peter-evans/create-pull-request@v3
uses: peter-evans/create-pull-request@v4
if: ${{ github.repository == 'qmk/qmk_firmware'}}
with:
token: ${{ secrets.QMK_BOT_TOKEN }}

View File

@@ -12,7 +12,7 @@ jobs:
container: qmkfm/qmk_cli
steps:
- uses: actions/checkout@v2
- uses: actions/checkout@v3
with:
fetch-depth: 0

View File

@@ -23,7 +23,7 @@ jobs:
container: qmkfm/qmk_cli
steps:
- uses: actions/checkout@v2
- uses: actions/checkout@v3
with:
submodules: recursive
- name: Install dependencies

View File

@@ -14,6 +14,10 @@ Add this to the end of your `.profile` or `.bashrc`:
If you put `qmk_firmware` into another location you will need to adjust this path.
Zsh users will need to load `bashcompinit`. The following can be added to `~/.zshrc` file:
autoload -Uz bashcompinit && bashcompinit
### System Wide Symlink
If you want the tab completion available to all users of the system you can add a symlink to the `qmk_tab_complete.sh` script:

View File

@@ -777,6 +777,7 @@ These are defined in [`color.h`](https://github.com/qmk/qmk_firmware/blob/master
#define RGB_MATRIX_DISABLE_KEYCODES // disables control of rgb matrix by keycodes (must use code functions to control the feature)
#define RGB_MATRIX_SPLIT { X, Y } // (Optional) For split keyboards, the number of LEDs connected on each half. X = left, Y = Right.
// If RGB_MATRIX_KEYPRESSES or RGB_MATRIX_KEYRELEASES is enabled, you also will want to enable SPLIT_TRANSPORT_MIRROR
#define RGB_TRIGGER_ON_KEYDOWN // Triggers RGB keypress events on key down. This makes RGB control feel more responsive. This may cause RGB to not function properly on some boards
```
## EEPROM storage :id=eeprom-storage

View File

@@ -108,6 +108,8 @@ However, this does rely on the bootloader being set by the keyboard. If this inf
In this case, you'll have to fall back on specifying the bootloader. See the [Flashing Firmware](flashing.md) Guide for more details.
!> If your bootloader is not detected by `qmk flash`, try running `qmk doctor` for suggestions on how to fix common problems.
## Test It Out!
Congrats! Your custom firmware has been programmed to your keyboard and you're ready to test it out!

View File

@@ -108,7 +108,58 @@ Example:
}
```
### RGB Lighting
## Non-RGB LED Lighting
This section controls basic 2-pin LEDs, which typically pass through keyswitches and are soldered into the PCB, or are placed in PCB sockets.
### Backlight
* `breathing`
* Enable backlight breathing, if supported
* `breathing_period`
* The length of one backlight “breath” in seconds
* `levels`
* The number of brightness levels (maximum 31, excluding off)
* `pin`
* The pin that controls the backlight LED(s)
Example:
```json
{
"backlight": {
"breathing": true,
"breathing_period": 5,
"levels": 15,
"pin": "B7"
}
}
```
### LED Indicators
Used for indicating Num Lock, Caps Lock, and Scroll Lock. May be soldered in-switch or in a dedicated area.
* `num_lock`
* The pin that controls the `Num Lock` LED
* `caps_lock`
* The pin that controls the `Caps Lock` LED
* `scroll_lock`
* The pin that controls the `Scroll Lock` LED
Example:
```json
{
"indicators": {
"num_lock": "B6",
"caps_lock": "D2",
"scroll_lock": "A3"
}
}
```
## RGB Lighting
This section controls the legacy WS2812 support in QMK. This should not be confused with the RGB Matrix feature, which can be used to control both WS2812 and ISSI RGB LEDs.
@@ -152,7 +203,7 @@ Example:
}
```
#### RGBLight Animations
### RGBLight Animations
The following animations can be enabled:

View File

@@ -1,11 +0,0 @@
# Gherkin Layout
This is my gherkin layout.
It is used as a game pad, and key layout is inspired by spare keys I had lying around.
The firmware is very simple, and only includes one layer keymap, and RGB effects.
# Flashing
The following command should be used from the main qmk directory.
```
make gherkin:bbaserdem
sudo avrdude -p atmgea34u4 -P `ls /dev/ttyACM*` -c avr109 -U flash:.build/gherkin_bbaserdem.hex
```

View File

@@ -1,9 +0,0 @@
#pragma once
#define RGB_DI_PIN F6
#define RGBLED_NUM 10
#define RGBLIGHT_ANIMATIONS
#ifdef BACKLIGHT_LEVELS
#undef BACKLIGHT_LEVELS
#endif
#define BACKLIGHT_LEVELS 3

View File

@@ -1,36 +0,0 @@
// This is a game-pad gherkin layout with RGB and LED lights
#include QMK_KEYBOARD_H
backlight_config_t backlight_config;
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
/* Game pad
* ,-----------------------------------------------------------.
* | Esc | 1 | 2 | 3 | 4 | 5 | 6 | Ctl | Alt | ~ |
* |-----+-----+-----+-----+-----+-----+-----+-----+-----+-----|
* | Tab | Q | W | E | R | T | |^| | ; | ' | / |
* |-----+-----+-----+-----+-----+-----+-----+-----+-----+-----|
* | Shf | A | S | D | F | <-- | |v| | --> | , | . |
* `-----------------------------------------------------------'
*/
LAYOUT_ortho_3x10(
KC_ESCAPE, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_LCTRL, KC_LALT, KC_GRAVE,
KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_UP, KC_SCLN, KC_QUOTE, KC_SLASH,
KC_LSHIFT, KC_A, KC_S, KC_D, KC_F, KC_LEFT, KC_DOWN, KC_RIGHT, KC_COMMA, KC_DOT
)
};
void matrix_init_user(void) {
// Set LED's to max
_delay_us(300);
backlight_config.level = 2;
backlight_config.enable = 1;
eeconfig_update_backlight(backlight_config.raw);
backlight_set(backlight_config.level);
// Set RGB to rainbow mood light
rgblight_enable();
rgblight_mode(1);
rgblight_sethsv(120,255,255);
rgblight_mode(6);
}

View File

@@ -1,13 +0,0 @@
USER_NAME := bbaserdem-nouserspace
STENO_ENABLE = no # Additional protocols for Stenography(+1700), requires VIRTSER
MOUSEKEY_ENABLE = no # Mouse keys(+4700)
EXTRAKEY_ENABLE = no # Audio control and System control(+450)
CONSOLE_ENABLE = no # Console for debug(+400)
COMMAND_ENABLE = no # Commands for debug and configuration
SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend
AUDIO_ENABLE = no # Enable audio output from keyboard
NKRO_ENABLE = yes # USB Nkey Rollover - if this doesn't work, see here: https://github.com/tmk/tmk_keyboard/wiki/FAQ#nkro-doesnt-work
RGBLIGHT_ENABLE = yes # Enable RBG light strips
BACKLIGHT_ENABLE = yes # Enable keyboard backlight functionality

View File

@@ -40,5 +40,3 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
/* Set 0 if debouncing isn't needed */
#define DEBOUNCE 5
#define STM32_HSECLK 8000000

View File

@@ -1,5 +1,6 @@
# MCU name
MCU = STM32F411
BOARD = GENERIC_STM32_F411XE
# Bootloader selection
BOOTLOADER = stm32-dfu

View File

@@ -0,0 +1,19 @@
// Copyright 2021 Manna Harbour
// https://github.com/manna-harbour/miryoku
// 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 <http://www.gnu.org/licenses/>.
#pragma once
#define LAYOUT_miryoku( \
K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, \
K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, \
K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, \
N30, N31, K32, K33, K34, K35, K36, K37, N38, N39 \
) \
LAYOUT( \
K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, \
K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, \
K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, \
K33, K34, K35, K36 \
)

View File

@@ -0,0 +1,4 @@
// Copyright 2019 Manna Harbour
// https://github.com/manna-harbour/miryoku
// 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 <http://www.gnu.org/licenses/>.

View File

@@ -0,0 +1,4 @@
# Copyright 2021 Manna Harbour
# https://github.com/manna-harbour/miryoku
MIRYOKU_KLUDGE_THUMBCOMBOS=yes

View File

@@ -47,8 +47,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#define BREATHING_PERIOD 5
#define BACKLIGHT_ON_STATE 1
#define STM32_HSECLK 8000000
#define RGB_DI_PIN B15
#define RGBLED_NUM 24
#define RGBLIGHT_ANIMATIONS

View File

@@ -17,19 +17,6 @@
#pragma once
#include_next <mcuconf.h>
#undef STM32_PLLM_VALUE
#undef STM32_PLLN_VALUE
#undef STM32_PLLP_VALUE
#undef STM32_PLLQ_VALUE
#undef STM32_PPRE1
#undef STM32_PPRE2
#define STM32_PLLM_VALUE 4
#define STM32_PLLN_VALUE 96
#define STM32_PLLP_VALUE 2
#define STM32_PLLQ_VALUE 4
#define STM32_PPRE1 STM32_PPRE1_DIV2
#define STM32_PPRE2 STM32_PPRE2_DIV1
#undef STM32_I2C_USE_I2C1
#define STM32_I2C_USE_I2C1 TRUE

View File

@@ -1,4 +1,5 @@
MCU = STM32F411
BOARD = GENERIC_STM32_F411XE
# Bootloader selection
BOOTLOADER = stm32-dfu

56
keyboards/adm42/info.json Normal file
View File

@@ -0,0 +1,56 @@
{
"keyboard_name": "ADM42 rev4",
"url": "https://adm42.dev/",
"maintainer": "lleonini",
"layouts": {
"LAYOUT_adm42_3x12_6": {
"layout": [
{"label":"GUI/`~", "x":0, "y":0.8},
{"label":"Q", "x":1, "y":0.8},
{"label":"W", "x":2, "y":0},
{"label":"E", "x":3, "y":0},
{"label":"R", "x":4, "y":0.5},
{"label":"T", "x":5, "y":0.5},
{"label":"Y", "x":7.5, "y":0.5},
{"label":"U", "x":8.5, "y":0.5},
{"label":"I", "x":9.5, "y":0},
{"label":"O", "x":10.5, "y":0},
{"label":"P", "x":11.5, "y":0.8},
{"label":"GUI/=+", "x":12.5, "y":0.8},
{"label":"Ctrl/Tab", "x":0, "y":1.8},
{"label":"A", "x":1, "y":1.8},
{"label":"S", "x":2, "y":1},
{"label":"D", "x":3, "y":1},
{"label":"F", "x":4, "y":1.5},
{"label":"G", "x":5, "y":1.5},
{"label":"H", "x":7.5, "y":1.5},
{"label":"J", "x":8.5, "y":1.5},
{"label":"K", "x":9.5, "y":1},
{"label":"L", "x":10.5, "y":1},
{"label":";:", "x":11.5, "y":1.8},
{"label":"Ctrl/'\"", "x":12.5, "y":1.8},
{"label":"Alt", "x":0, "y":2.8},
{"label":"Z", "x":1, "y":2.8},
{"label":"X", "x":2, "y":2},
{"label":"C", "x":3, "y":2},
{"label":"V", "x":4, "y":2.5},
{"label":"B", "x":5, "y":2.5},
{"label":"N", "x":7.5, "y":2.5},
{"label":"M", "x":8.5, "y":2.5},
{"label":",<", "x":9.5, "y":2},
{"label":".>", "x":10.5, "y":2},
{"label":"/?", "x":11.5, "y":2.8},
{"label":"Alt", "x":12.5, "y":2.8},
{"label":"Special/Esc", "x":4.25, "y":3.55},
{"label":"Shift/Backspace", "x":5.25, "y":3.65},
{"label":"Adm/Delete", "x":6.25, "y":1.875, "h":1.25},
{"label":"Extra/Enter", "x":6.25, "y":4.05},
{"label":"Shift/Space", "x":7.25, "y":3.65},
{"label":"Special/Alt", "x":8.25, "y":3.55}
]
}
}
}

View File

@@ -0,0 +1,66 @@
/* Copyright 2021 Steven Phillips (Spooknik)
*
* 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 <http://www.gnu.org/licenses/>.
*/
#pragma once
#include "config_common.h"
/* USB Device descriptor parameter */
#define VENDOR_ID 0xBBEB
#define PRODUCT_ID 0xD4C4
#define DEVICE_VER 0x0001
#define MANUFACTURER AlfredsLab
#define PRODUCT Swift65
/* key matrix size */
#define MATRIX_ROWS 5
#define MATRIX_COLS 15
/*
* 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 MATRIX_ROW_PINS { B1, B2, B3, D6, D4 }
#define MATRIX_COL_PINS { F7, F6, F5, F4, F1, F0, C7, C6, B6, B5, B4, D7, D5, D3, D1 }
#define DIODE_DIRECTION COL2ROW
#define RGB_DI_PIN D2
#ifdef RGB_DI_PIN
#define RGBLED_NUM 22
#define RGBLIGHT_HUE_STEP 8
#define RGBLIGHT_SAT_STEP 8
#define RGBLIGHT_VAL_STEP 8
#define RGBLIGHT_LIMIT_VAL 255 /* The maximum brightness level */
#define RGBLIGHT_SLEEP /* If defined, the RGB lighting will be switched off when the host goes to sleep */
/*== all animations enable ==*/
#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
#define RGBLIGHT_EFFECT_TWINKLE
#endif

View File

@@ -0,0 +1,19 @@
/* Copyright 2021 Steven Phillips (spooknik)
*
* 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 <http://www.gnu.org/licenses/>.
*/
#include "hotswap.h"

View File

@@ -0,0 +1,35 @@
/* Copyright 2022 Steven Phillips (spooknik)
*
* 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 <http://www.gnu.org/licenses/>.
*/
#pragma once
#include "quantum.h"
#define XXX KC_NO
#define LAYOUT_7u_space( \
K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, K0E, \
K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K1D, K1E, \
K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2D, K2E, \
K31, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, K3D, \
K40, K41, K42, K46, K4B, K4C, K4D, K4E \
) { \
{ K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, K0E }, \
{ K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K1D, K1E }, \
{ K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, XXX, K2D, K2E }, \
{ XXX, K31, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, K3D, XXX }, \
{ K40, K41, K42, XXX, XXX, XXX, K46, XXX, XXX, XXX, XXX, K4B, K4C, K4D, K4E }, \
}

View File

@@ -0,0 +1,81 @@
{
"keyboard_name": "hotswap",
"url": "https://swiftcables.net/",
"maintainer": "Spooknik",
"layout_aliases": {
"LAYOUT": "LAYOUT_7u_space",
"LAYOUT_all": "LAYOUT_7u_space"
},
"layouts": {
"LAYOUT_7u_space": {
"layout": [
{ "label": "K00 (B1,F7)", "x": 0, "y": 0 },
{ "label": "K01 (B1,F6)", "x": 1, "y": 0 },
{ "label": "K02 (B1,F5)", "x": 2, "y": 0 },
{ "label": "K03 (B1,F4)", "x": 3, "y": 0 },
{ "label": "K04 (B1,F1)", "x": 4, "y": 0 },
{ "label": "K05 (B1,F0)", "x": 5, "y": 0 },
{ "label": "K06 (B1,C7)", "x": 6, "y": 0 },
{ "label": "K07 (B1,C6)", "x": 7, "y": 0 },
{ "label": "K08 (B1,B6)", "x": 8, "y": 0 },
{ "label": "K09 (B1,B5)", "x": 9, "y": 0 },
{ "label": "K0A (B1,B4)", "x": 10, "y": 0 },
{ "label": "K0B (B1,D7)", "x": 11, "y": 0 },
{ "label": "K0C (B1,D5)", "x": 12, "y": 0 },
{ "label": "K0D (B1,D3)", "x": 13, "y": 0, "w": 2 },
{ "label": "K0E (B1,D1)", "x": 15.25, "y": 0 },
{ "label": "K10 (B2,F7)", "x": 0, "y": 1, "w": 1.5 },
{ "label": "K11 (B2,F6)", "x": 1.5, "y": 1 },
{ "label": "K12 (B2,F5)", "x": 2.5, "y": 1 },
{ "label": "K13 (B2,F4)", "x": 3.5, "y": 1 },
{ "label": "K14 (B2,F1)", "x": 4.5, "y": 1 },
{ "label": "K15 (B2,F0)", "x": 5.5, "y": 1 },
{ "label": "K16 (B2,C7)", "x": 6.5, "y": 1 },
{ "label": "K17 (B2,C6)", "x": 7.5, "y": 1 },
{ "label": "K18 (B2,B6)", "x": 8.5, "y": 1 },
{ "label": "K19 (B2,B5)", "x": 9.5, "y": 1 },
{ "label": "K1A (B2,B4)", "x": 10.5, "y": 1 },
{ "label": "K1B (B2,D7)", "x": 11.5, "y": 1 },
{ "label": "K1C (B2,D5)", "x": 12.5, "y": 1 },
{ "label": "K1D (B2,D3)", "x": 13.5, "y": 1, "w": 1.5 },
{ "label": "K1E (B2,D1)", "x": 15.25, "y": 1 },
{ "label": "K20 (B3,F7)", "x": 0, "y": 2, "w": 1.75 },
{ "label": "K21 (B3,F6)", "x": 1.75, "y": 2 },
{ "label": "K22 (B3,F5)", "x": 2.75, "y": 2 },
{ "label": "K23 (B3,F4)", "x": 3.75, "y": 2 },
{ "label": "K24 (B3,F1)", "x": 4.75, "y": 2 },
{ "label": "K25 (B3,F0)", "x": 5.75, "y": 2 },
{ "label": "K26 (B3,C7)", "x": 6.75, "y": 2 },
{ "label": "K27 (B3,C6)", "x": 7.75, "y": 2 },
{ "label": "K28 (B3,B6)", "x": 8.75, "y": 2 },
{ "label": "K29 (B3,B5)", "x": 9.75, "y": 2 },
{ "label": "K2A (B3,B4)", "x": 10.75, "y": 2 },
{ "label": "K2B (B3,D7)", "x": 11.75, "y": 2 },
{ "label": "K2D (B3,D3)", "x": 12.75, "y": 2, "w": 2.25 },
{ "label": "K2E (B3,D1)", "x": 15.25, "y": 2 },
{ "label": "K31 (D6,F6)", "x": 0, "y": 3, "w": 2.25 },
{ "label": "K32 (D6,F5)", "x": 2.25, "y": 3 },
{ "label": "K33 (D6,F4)", "x": 3.25, "y": 3 },
{ "label": "K34 (D6,F1)", "x": 4.25, "y": 3 },
{ "label": "K35 (D6,F0)", "x": 5.25, "y": 3 },
{ "label": "K36 (D6,C7)", "x": 6.25, "y": 3 },
{ "label": "K37 (D6,C6)", "x": 7.25, "y": 3 },
{ "label": "K38 (D6,B6)", "x": 8.25, "y": 3 },
{ "label": "K39 (D6,B5)", "x": 9.25, "y": 3 },
{ "label": "K3A (D6,B4)", "x": 10.25, "y": 3 },
{ "label": "K3B (D6,D7)", "x": 11.25, "y": 3 },
{ "label": "K3C (D6,D5)", "x": 12.25, "y": 3, "w": 1.75 },
{ "label": "K3D (D6,D3)", "x": 14, "y": 3 },
{ "label": "K40 (D4,F7)", "x": 0, "y": 4, "w": 1.25 },
{ "label": "K41 (D4,F6)", "x": 1.25, "y": 4, "w": 1.25 },
{ "label": "K42 (D4,F5)", "x": 2.5, "y": 4, "w": 1.25 },
{ "label": "K46 (D4,C7)", "x": 3.75, "y": 4, "w": 7.25 },
{ "label": "K4B (D4,D7)", "x": 11, "y": 4, "w": 1.5 },
{ "label": "K4C (D4,D5)", "x": 13, "y": 4 },
{ "label": "K4D (D4,D3)", "x": 14, "y": 4 },
{ "label": "K4E (D4,D1)", "x": 15, "y": 4 }
]
}
}
}

View File

@@ -0,0 +1,37 @@
/* Copyright 2022 Steven Phillips (spooknik)
*
* 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 <http://www.gnu.org/licenses/>.
*/
#include QMK_KEYBOARD_H
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
[0] = LAYOUT_7u_space(
KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSPC, KC_HOME,
KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSLS, KC_DEL,
KC_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT, KC_PGUP,
KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP,
KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, _______, KC_LEFT, KC_DOWN, KC_RGHT
),
[1] = LAYOUT_7u_space(
KC_GRV, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______,
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_PGDN,
RESET, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_PGUP,
_______, _______, _______, _______, _______, KC_HOME, KC_PGDN, KC_END
),
};

View File

@@ -0,0 +1,53 @@
/* Copyright 2021 Steven Phillips (spooknik)
*
* 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 <http://www.gnu.org/licenses/>.
*/
#include QMK_KEYBOARD_H
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
[0] = LAYOUT_7u_space(
KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSPC, KC_HOME,
KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSLS, KC_DEL,
KC_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT, KC_PGUP,
KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP,
KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, _______, KC_LEFT, KC_DOWN, KC_RGHT
),
[1] = LAYOUT_7u_space(
KC_GRV, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______,
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_PGDN,
RESET, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_PGUP,
_______, _______, _______, _______, _______, KC_HOME, KC_PGDN, KC_END
),
[2] = LAYOUT_7u_space(
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS
),
[3] = LAYOUT_7u_space(
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS
),
};

View File

@@ -0,0 +1 @@
VIA_ENABLE = yes

View File

@@ -0,0 +1,19 @@
# Swift65
A 65% Keyboard from Swiftcables
* Keyboard Maintainer: [Steven Phillips (spooknik)](https://github.com/keyboardcollective)
* Hardware Supported: Swift65 Hotswap
* Hardware Availability: Soom from Swiftcables
To enter bootloader for flashing firmware, press layer change key (MO(1)) and Right Shift simultaneously.
Make example for this keyboard (after setting up your build environment):
make alfredslab/swift65/hotswap:default
Flashing example for this keyboard:
make alfredslab/swift65/hotswap: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).

View File

@@ -0,0 +1,19 @@
# MCU name
MCU = atmega32u4
# Bootloader selection
BOOTLOADER = atmel-dfu
# Build Options
# change yes to no to disable
#
BOOTMAGIC_ENABLE = yes # Enable Bootmagic Lite
MOUSEKEY_ENABLE = yes # Mouse keys
EXTRAKEY_ENABLE = yes # Audio control and System control
CONSOLE_ENABLE = no # Console for debug
COMMAND_ENABLE = no # Commands for debug and configuration
NKRO_ENABLE = yes # Enable N-Key Rollover
BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality
RGBLIGHT_ENABLE = yes # Enable keyboard RGB underglow
AUDIO_ENABLE = no # Audio output

View File

@@ -1,6 +1,5 @@
// Copyright 2019 Manna Harbour
// https://github.com/manna-harbour/miryoku
// generated -*- buffer-read-only: t -*-
// 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 <http://www.gnu.org/licenses/>.

View File

@@ -1,5 +1,4 @@
// Copyright 2019 Manna Harbour
// https://github.com/manna-harbour/miryoku
// generated -*- buffer-read-only: t -*-
// 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 <http://www.gnu.org/licenses/>.

15
keyboards/atset/at1/at1.c Normal file
View File

@@ -0,0 +1,15 @@
/*
* 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 <http://www.gnu.org/licenses/>.
*/
#include "at1.h"

22
keyboards/atset/at1/at1.h Normal file
View File

@@ -0,0 +1,22 @@
/*
* 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 <http://www.gnu.org/licenses/>.
*/
#include "quantum.h"
#define LAYOUT( \
k00 \
) \
{ \
{ k00 } \
}

View File

@@ -0,0 +1,76 @@
/*
* 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 <http://www.gnu.org/licenses/>.
*/
#pragma once
#include "config_common.h"
/* USB Device descriptor parameter */
#define VENDOR_ID 0xFEED // Atset
#define PRODUCT_ID 0x6060
#define DEVICE_VER 0x0001
#define MANUFACTURER Atset
#define PRODUCT AT1
/* Key matrix size */
#define MATRIX_ROWS 1
#define MATRIX_COLS 1
#define MATRIX_ROW_PINS { D2 }
#define MATRIX_COL_PINS { B6 }
#define UNUSED_PINS
/* COL2ROW, ROW2COL*/
#define DIODE_DIRECTION COL2ROW
/* Debounce reduces chatter (unintended double-presses) - set 0 if debouncing is not needed */
#define DEBOUNCE 5
/* define if matrix has ghost (lacks anti-ghosting diodes) */
//#define MATRIX_HAS_GHOST
/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */
#define LOCKING_SUPPORT_ENABLE
/* Locking resynchronize hack */
#define LOCKING_RESYNC_ENABLE
/* If defined, GRAVE_ESC will always act as ESC when CTRL is held.
* This is userful for the Windows task manager shortcut (ctrl+shift+esc).
*/
// #define GRAVE_ESC_CTRL_OVERRIDE
/*
* Force NKRO
*
* Force NKRO (nKey Rollover) to be enabled by default, regardless of the saved
* state in the bootmagic EEPROM settings. (Note that NKRO must be enabled in the
* makefile for this to work.)
*
* If forced on, NKRO can be disabled via magic key (default = LShift+RShift+N)
* until the next keyboard reset.
*
* NKRO may prevent your keystrokes from being detected in the BIOS, but it is
* fully operational during normal computer usage.
*
* For a less heavy-handed approach, enable NKRO via magic key (LShift+RShift+N)
* or via bootmagic (hold SPACE+N while plugging in the keyboard). Once set by
* bootmagic, NKRO mode will always be enabled until it is toggled again during a
* power-up.
*/
//#define FORCE_NKRO

View File

@@ -0,0 +1,9 @@
{
"keyboard_name": "AT1",
"maintainer": "atset",
"layouts": {
"LAYOUT": {
"layout": [{"label":"k00", "x":0, "y":0}]
}
}
}

View File

@@ -0,0 +1,36 @@
/*
* it under the terms of the GNU General Public License as published by
* This program is free software: you can redistribute it and/or modify
* 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 <http://www.gnu.org/licenses/>.
*/
#include QMK_KEYBOARD_H
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
[0] = LAYOUT(
KC_4
),
[1] = LAYOUT(
KC_NO
),
[2] = LAYOUT(
KC_NO
)
};

View File

@@ -0,0 +1,35 @@
/*
* 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 <http://www.gnu.org/licenses/>.
*/
#include QMK_KEYBOARD_H
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
[0] =
LAYOUT(
KC_4
),
[1] =
LAYOUT(
KC_NO
),
[2] =
LAYOUT(
KC_NO
),
[3] =
LAYOUT(
KC_NO
)
};

View File

@@ -0,0 +1,25 @@
# ATSET AT1
A special 1 key keyboard powered by QMK.
* Keyboard Maintainer: [ATSET](https://github.com/anubhavd7)
* Hardware Supported: ATmega32U4
* Hardware Availability: Interest Check
Make example for this keyboard (after setting up your build environment):
make atset/at6:default
Flashing example for this keyboard:
make atset/at6: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 3 ways:
* **Bootmagic reset**: Hold down the key at (0,0) in the matrix (usually the top left key or Escape) and plug in the keyboard
* **Physical reset button**: Briefly press the button on the back of the PCB - some may have pads you must short instead
* **Keycode in layout**: Press the key mapped to `RESET` if it is available

View File

@@ -0,0 +1,18 @@
# MCU name
MCU = atmega32u4
# Bootloader selection
BOOTLOADER = atmel-dfu
# Build Options
# change yes to no to disable
#
BOOTMAGIC_ENABLE = yes # Enable Bootmagic Lite
MOUSEKEY_ENABLE = yes # Mouse keys
EXTRAKEY_ENABLE = yes # Audio control and System control
CONSOLE_ENABLE = yes # Console for debug
COMMAND_ENABLE = yes # Commands for debug and configuration
NKRO_ENABLE = yes # Enable N-Key Rollover
BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality
RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow
AUDIO_ENABLE = no # Audio output

View File

@@ -0,0 +1,15 @@
/*
* 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 <http://www.gnu.org/licenses/>.
*/
#include "at12.h"

View File

@@ -0,0 +1,29 @@
/*
* 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 <http://www.gnu.org/licenses/>.
*/
#include "quantum.h"
#define LAYOUT( \
k00, k01, k02, \
k10, k11, k12, \
k20, k21, k22, \
k30, k31, k32 \
) \
{ \
{ k00, k01, k02 }, \
{ k10, k11, k12 }, \
{ k20, k21, k22 }, \
{ k30, k31, k32 } \
}

View File

@@ -0,0 +1,76 @@
/*
* 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 <http://www.gnu.org/licenses/>.
*/
#pragma once
#include "config_common.h"
/* USB Device descriptor parameter */
#define VENDOR_ID 0xFEED // Atset
#define PRODUCT_ID 0x6060
#define DEVICE_VER 0x0001
#define MANUFACTURER Atset
#define PRODUCT AT12
/* Key matrix size */
#define MATRIX_ROWS 4
#define MATRIX_COLS 3
#define MATRIX_ROW_PINS { D3, D2, D1, D0 }
#define MATRIX_COL_PINS { B6, B5, B4 }
#define UNUSED_PINS
/* COL2ROW, ROW2COL*/
#define DIODE_DIRECTION COL2ROW
/* Debounce reduces chatter (unintended double-presses) - set 0 if debouncing is not needed */
#define DEBOUNCE 5
/* define if matrix has ghost (lacks anti-ghosting diodes) */
//#define MATRIX_HAS_GHOST
/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */
#define LOCKING_SUPPORT_ENABLE
/* Locking resynchronize hack */
#define LOCKING_RESYNC_ENABLE
/* If defined, GRAVE_ESC will always act as ESC when CTRL is held.
* This is userful for the Windows task manager shortcut (ctrl+shift+esc).
*/
// #define GRAVE_ESC_CTRL_OVERRIDE
/*
* Force NKRO
*
* Force NKRO (nKey Rollover) to be enabled by default, regardless of the saved
* state in the bootmagic EEPROM settings. (Note that NKRO must be enabled in the
* makefile for this to work.)
*
* If forced on, NKRO can be disabled via magic key (default = LShift+RShift+N)
* until the next keyboard reset.
*
* NKRO may prevent your keystrokes from being detected in the BIOS, but it is
* fully operational during normal computer usage.
*
* For a less heavy-handed approach, enable NKRO via magic key (LShift+RShift+N)
* or via bootmagic (hold SPACE+N while plugging in the keyboard). Once set by
* bootmagic, NKRO mode will always be enabled until it is toggled again during a
* power-up.
*/
//#define FORCE_NKRO

View File

@@ -0,0 +1,9 @@
{
"keyboard_name": "AT9",
"maintainer": "atset",
"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}, {"label":"k11", "x":1, "y":1}, {"label":"k12", "x":2, "y":1}, {"label":"k20", "x":0, "y":2}, {"label":"k21", "x":1, "y":2}, {"label":"k22", "x":2, "y":2}, {"label":"k30", "x":0, "y":3}, {"label":"k31", "x":1, "y":3}, {"label":"k32", "x":2, "y":3}]
}
}
}

View File

@@ -0,0 +1,44 @@
/*
* 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 <http://www.gnu.org/licenses/>.
*/
#include QMK_KEYBOARD_H
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
[0] = LAYOUT(
KC_F10, KC_F11, KC_F12,
KC_7, KC_8, KC_9,
KC_4, KC_5, KC_6,
KC_1, KC_2, KC_3
),
[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
),
[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
)
};

View File

@@ -0,0 +1,47 @@
/*
* 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 <http://www.gnu.org/licenses/>.
*/
#include QMK_KEYBOARD_H
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
[0] =
LAYOUT(
KC_F10, KC_F11, KC_F12,
KC_7, KC_8, KC_9,
KC_4 , KC_5 , KC_6,
KC_1 , KC_2 , KC_3
),
[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
),
[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
),
[3] =
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
),
};

View File

@@ -0,0 +1,25 @@
# ATSET AT12
A special 12 key keyboard powered by QMK.
* Keyboard Maintainer: [ATSET](https://github.com/anubhavd7)
* Hardware Supported: ATmega32U4
* Hardware Availability: Interest Check
Make example for this keyboard (after setting up your build environment):
make atset/at3:default
Flashing example for this keyboard:
make atset/at3: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 3 ways:
* **Bootmagic reset**: Hold down the key at (0,0) in the matrix (usually the top left key or Escape) and plug in the keyboard
* **Physical reset button**: Briefly press the button on the back of the PCB - some may have pads you must short instead
* **Keycode in layout**: Press the key mapped to `RESET` if it is available

View File

@@ -0,0 +1,18 @@
# MCU name
MCU = atmega32u4
# Bootloader selection
BOOTLOADER = atmel-dfu
# Build Options
# change yes to no to disable
#
BOOTMAGIC_ENABLE = yes # Enable Bootmagic Lite
MOUSEKEY_ENABLE = yes # Mouse keys
EXTRAKEY_ENABLE = yes # Audio control and System control
CONSOLE_ENABLE = yes # Console for debug
COMMAND_ENABLE = yes # Commands for debug and configuration
NKRO_ENABLE = yes # Enable N-Key Rollover
BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality
RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow
AUDIO_ENABLE = no # Audio output

View File

@@ -0,0 +1,15 @@
/*
* 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 <http://www.gnu.org/licenses/>.
*/
#include "at16.h"

View File

@@ -0,0 +1,29 @@
/*
* 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 <http://www.gnu.org/licenses/>.
*/
#include "quantum.h"
#define LAYOUT_ortho_4x4( \
k00, k01, k02, k03, \
k10, k11, k12, k13, \
k20, k21, k22, k23, \
k30, k31, k32, k33 \
) \
{ \
{ k00, k01, k02, k03 }, \
{ k10, k11, k12, k13 }, \
{ k20, k21, k22, k23 }, \
{ k30, k31, k32, k33 } \
}

View File

@@ -0,0 +1,76 @@
/*
* 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 <http://www.gnu.org/licenses/>.
*/
#pragma once
#include "config_common.h"
/* USB Device descriptor parameter */
#define VENDOR_ID 0xFEED // Atset
#define PRODUCT_ID 0x6060
#define DEVICE_VER 0x0001
#define MANUFACTURER Atset
#define PRODUCT AT16
/* Key matrix size */
#define MATRIX_ROWS 4
#define MATRIX_COLS 4
#define MATRIX_ROW_PINS { D3, D2, D1, D0 }
#define MATRIX_COL_PINS { B6, B5, B4, B2 }
#define UNUSED_PINS
/* COL2ROW, ROW2COL*/
#define DIODE_DIRECTION COL2ROW
/* Debounce reduces chatter (unintended double-presses) - set 0 if debouncing is not needed */
#define DEBOUNCE 5
/* define if matrix has ghost (lacks anti-ghosting diodes) */
//#define MATRIX_HAS_GHOST
/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */
#define LOCKING_SUPPORT_ENABLE
/* Locking resynchronize hack */
#define LOCKING_RESYNC_ENABLE
/* If defined, GRAVE_ESC will always act as ESC when CTRL is held.
* This is userful for the Windows task manager shortcut (ctrl+shift+esc).
*/
// #define GRAVE_ESC_CTRL_OVERRIDE
/*
* Force NKRO
*
* Force NKRO (nKey Rollover) to be enabled by default, regardless of the saved
* state in the bootmagic EEPROM settings. (Note that NKRO must be enabled in the
* makefile for this to work.)
*
* If forced on, NKRO can be disabled via magic key (default = LShift+RShift+N)
* until the next keyboard reset.
*
* NKRO may prevent your keystrokes from being detected in the BIOS, but it is
* fully operational during normal computer usage.
*
* For a less heavy-handed approach, enable NKRO via magic key (LShift+RShift+N)
* or via bootmagic (hold SPACE+N while plugging in the keyboard). Once set by
* bootmagic, NKRO mode will always be enabled until it is toggled again during a
* power-up.
*/
//#define FORCE_NKRO

View File

@@ -0,0 +1,9 @@
{
"keyboard_name": "AT9",
"maintainer": "atset",
"layouts": {
"LAYOUT_ortho_4x4": {
"layout": [{"label":"k00", "x":0, "y":0}, {"label":"k01", "x":1, "y":0}, {"label":"k02", "x":2, "y":0}, {"label":"k03", "x":3, "y":0}, {"label":"k10", "x":0, "y":1}, {"label":"k11", "x":1, "y":1}, {"label":"k12", "x":2, "y":1}, {"label":"k13", "x":3, "y":1}, {"label":"k20", "x":0, "y":2}, {"label":"k21", "x":1, "y":2}, {"label":"k22", "x":2, "y":2}, {"label":"k23", "x":3, "y":2}, {"label":"k30", "x":0, "y":3}, {"label":"k31", "x":1, "y":3}, {"label":"k32", "x":2, "y":3}, {"label":"k33", "x":3, "y":3}]
}
}
}

View File

@@ -0,0 +1,44 @@
/*
* 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 <http://www.gnu.org/licenses/>.
*/
#include QMK_KEYBOARD_H
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
[0] = LAYOUT_ortho_4x4(
KC_F10, KC_F11, KC_F12, KC_F5,
KC_7, KC_8, KC_9, KC_F1,
KC_4, KC_5, KC_6, KC_F2,
KC_1, KC_2, KC_3, KC_F3
),
[1] = LAYOUT_ortho_4x4(
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_ortho_4x4(
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
)
};

View File

@@ -0,0 +1,47 @@
/*
* 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 <http://www.gnu.org/licenses/>.
*/
#include QMK_KEYBOARD_H
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
[0] =
LAYOUT_ortho_4x4(
KC_F10, KC_F11, KC_F12, KC_F5,
KC_7, KC_8, KC_9, KC_F1,
KC_4, KC_5, KC_6, KC_F2,
KC_1, KC_2, KC_3, KC_F3
),
[1] =
LAYOUT_ortho_4x4(
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_ortho_4x4(
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
),
[3] =
LAYOUT_ortho_4x4(
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
),
};

View File

@@ -0,0 +1,25 @@
# ATSET AT16
A special 16 key keyboard powered by QMK.
* Keyboard Maintainer: [ATSET](https://github.com/anubhavd7)
* Hardware Supported: ATmega32U4
* Hardware Availability: Interest Check
Make example for this keyboard (after setting up your build environment):
make atset/at3:default
Flashing example for this keyboard:
make atset/at3: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 3 ways:
* **Bootmagic reset**: Hold down the key at (0,0) in the matrix (usually the top left key or Escape) and plug in the keyboard
* **Physical reset button**: Briefly press the button on the back of the PCB - some may have pads you must short instead
* **Keycode in layout**: Press the key mapped to `RESET` if it is available

View File

@@ -0,0 +1,20 @@
# MCU name
MCU = atmega32u4
# Bootloader selection
BOOTLOADER = atmel-dfu
# Build Options
# change yes to no to disable
#
BOOTMAGIC_ENABLE = yes # Enable Bootmagic Lite
MOUSEKEY_ENABLE = yes # Mouse keys
EXTRAKEY_ENABLE = yes # Audio control and System control
CONSOLE_ENABLE = yes # Console for debug
COMMAND_ENABLE = yes # Commands for debug and configuration
NKRO_ENABLE = yes # Enable N-Key Rollover
BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality
RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow
AUDIO_ENABLE = no # Audio output
LAYOUTS = ortho_4x4

15
keyboards/atset/at3/at3.c Normal file
View File

@@ -0,0 +1,15 @@
/*
* 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 <http://www.gnu.org/licenses/>.
*/
#include "at3.h"

22
keyboards/atset/at3/at3.h Normal file
View File

@@ -0,0 +1,22 @@
/*
* 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 <http://www.gnu.org/licenses/>.
*/
#include "quantum.h"
#define LAYOUT( \
k00, k01, k02 \
) \
{ \
{ k00, k01, k02 } \
}

View File

@@ -0,0 +1,76 @@
/*
* 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 <http://www.gnu.org/licenses/>.
*/
#pragma once
#include "config_common.h"
/* USB Device descriptor parameter */
#define VENDOR_ID 0xFEED // Atset
#define PRODUCT_ID 0x6060
#define DEVICE_VER 0x0001
#define MANUFACTURER Atset
#define PRODUCT AT3
/* Key matrix size */
#define MATRIX_ROWS 1
#define MATRIX_COLS 3
#define MATRIX_ROW_PINS { D2 }
#define MATRIX_COL_PINS { B6, B5, B4 }
#define UNUSED_PINS
/* COL2ROW, ROW2COL*/
#define DIODE_DIRECTION COL2ROW
/* Debounce reduces chatter (unintended double-presses) - set 0 if debouncing is not needed */
#define DEBOUNCE 5
/* define if matrix has ghost (lacks anti-ghosting diodes) */
//#define MATRIX_HAS_GHOST
/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */
#define LOCKING_SUPPORT_ENABLE
/* Locking resynchronize hack */
#define LOCKING_RESYNC_ENABLE
/* If defined, GRAVE_ESC will always act as ESC when CTRL is held.
* This is userful for the Windows task manager shortcut (ctrl+shift+esc).
*/
// #define GRAVE_ESC_CTRL_OVERRIDE
/*
* Force NKRO
*
* Force NKRO (nKey Rollover) to be enabled by default, regardless of the saved
* state in the bootmagic EEPROM settings. (Note that NKRO must be enabled in the
* makefile for this to work.)
*
* If forced on, NKRO can be disabled via magic key (default = LShift+RShift+N)
* until the next keyboard reset.
*
* NKRO may prevent your keystrokes from being detected in the BIOS, but it is
* fully operational during normal computer usage.
*
* For a less heavy-handed approach, enable NKRO via magic key (LShift+RShift+N)
* or via bootmagic (hold SPACE+N while plugging in the keyboard). Once set by
* bootmagic, NKRO mode will always be enabled until it is toggled again during a
* power-up.
*/
//#define FORCE_NKRO

View File

@@ -0,0 +1,9 @@
{
"keyboard_name": "AT3",
"maintainer": "atset",
"layouts": {
"LAYOUT": {
"layout": [{"label":"k00", "x":0, "y":0}, {"label":"k01", "x":1, "y":0}, {"label":"k02", "x":2, "y":0}]
}
}
}

View File

@@ -0,0 +1,36 @@
/*
* 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 <http://www.gnu.org/licenses/>.
*/
#include QMK_KEYBOARD_H
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
[0] = LAYOUT(
KC_7, KC_8, KC_9
),
[1] = LAYOUT(
KC_NO, KC_NO, KC_NO
),
[2] = LAYOUT(
KC_NO, KC_NO, KC_NO
)
};

View File

@@ -0,0 +1,35 @@
/*
* 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 <http://www.gnu.org/licenses/>.
*/
#include QMK_KEYBOARD_H
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
[0] =
LAYOUT(
KC_7 , KC_8 , KC_9
),
[1] =
LAYOUT(
KC_NO , KC_NO, KC_NO
),
[2] =
LAYOUT(
KC_NO , KC_NO, KC_NO
),
[3] =
LAYOUT(
KC_NO , KC_NO, KC_NO
)
};

View File

@@ -0,0 +1,25 @@
# ATSET AT3
A special 3 key keyboard powered by QMK.
* Keyboard Maintainer: [ATSET](https://github.com/anubhavd7)
* Hardware Supported: ATmega32U4
* Hardware Availability: Interest Check
Make example for this keyboard (after setting up your build environment):
make atset/at3:default
Flashing example for this keyboard:
make atset/at3: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 3 ways:
* **Bootmagic reset**: Hold down the key at (0,0) in the matrix (usually the top left key or Escape) and plug in the keyboard
* **Physical reset button**: Briefly press the button on the back of the PCB - some may have pads you must short instead
* **Keycode in layout**: Press the key mapped to `RESET` if it is available

View File

@@ -0,0 +1,18 @@
# MCU name
MCU = atmega32u4
# Bootloader selection
BOOTLOADER = atmel-dfu
# Build Options
# change yes to no to disable
#
BOOTMAGIC_ENABLE = yes # Enable Bootmagic Lite
MOUSEKEY_ENABLE = yes # Mouse keys
EXTRAKEY_ENABLE = yes # Audio control and System control
CONSOLE_ENABLE = yes # Console for debug
COMMAND_ENABLE = yes # Commands for debug and configuration
NKRO_ENABLE = yes # Enable N-Key Rollover
BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality
RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow
AUDIO_ENABLE = no # Audio output

View File

@@ -9,6 +9,8 @@
#include "v2.h"
#elif KEYBOARD_avalanche_v3
#include "v3.h"
#elif KEYBOARD_avalanche_v4
#include "v4.h"
#endif
#include "quantum.h"

View File

@@ -0,0 +1,76 @@
// Copyright 2022 Will Winder (@winder)
// SPDX-License-Identifier: GPL-2.0-or-later
#pragma once
#define VENDOR_ID 0xCEE2
#define PRODUCT_ID 0x0003
#define DEVICE_VER 0x0004
#define MANUFACTURER vitvlkv
#define PRODUCT Avalanche
#define MATRIX_ROWS 10
#define MATRIX_COLS 7
#define MATRIX_ROW_PINS { D4, C6, D7, E6, B4 }
#define MATRIX_COL_PINS { F5, F6, F7, B1, B3, B2, B6 }
#define DIODE_DIRECTION COL2ROW
#define SOFT_SERIAL_PIN D2
#define ENCODERS_PAD_A { B5 }
#define ENCODERS_PAD_B { F4 }
#define ENCODER_RESOLUTION 2
#ifdef RGBLIGHT_ENABLE
# define RGB_DI_PIN D3
# define RGBLED_NUM 64
# define RGBLED_SPLIT { 32, 32 }
# define RGBLIGHT_SPLIT
# define RGBLIGHT_LIMIT_VAL 100 // LED Brightness, high power draw may exceed the USB limitations of 0.6A and cause a crash.
# define RGBLIGHT_HUE_STEP 10
# define RGBLIGHT_SAT_STEP 17
# define RGBLIGHT_VAL_STEP 17
# define RGBLIGHT_DEFAULT_MODE RGBLIGHT_MODE_RAINBOW_SWIRL+2
# define RGBLIGHT_EFFECT_ALTERNATING
# define RGBLIGHT_EFFECT_RGB_TEST
# define RGBLIGHT_EFFECT_RAINBOW_MOOD
# define RGBLIGHT_EFFECT_STATIC_GRADIENT
# define RGBLIGHT_EFFECT_RAINBOW_SWIRL
# define RGBLIGHT_EFFECT_BREATHING
# define RGBLIGHT_EFFECT_KNIGHT
# define RGBLIGHT_EFFECT_SNAKE
# define RGBLIGHT_EFFECT_CHRISTMAS
// RGB LED Conversion macro from physical array to electric array. This results in better looking animated effects.
# define LED_LAYOUT( \
/* LED matrix */ \
L01, L02, L03, L04, L05, L06, L011, L012, L013, L014, L015, L016, \
L11, L12, L13, L14, L15, L16, L111, L112, L113, L114, L115, L116, \
L20, L21, L22, L23, L24, L25, L26, L211, L212, L213, L214, L215, L216, L217, \
L31, L32, L33, L34, L35, L36, L37, L38, L39, L310, L311, L312, L313, L314, L315, L316, \
L44, L45, L46, L47, L48, L49, L410, L411, L412, L413 )\
{ \
/* left half - electrical wiring order */ \
L47,L48,L38,L37,L36,L26,L16,L06,L05,L15,L25,L35,L46,L45,L34,L24,L14,L04,L03,L13,L23,L33,L44,L32,L22,L12,L02,L01,L11,L21,L31,L20, \
/* right half - electrical wiring order */ \
L410,L49,L39,L310,L311,L211,L111,L011,L012,L112,L212,L312,L411,L412,L313,L213,L113,L013,L014,L114,L214,L314,L413,L315,L215,L115,L015,L016,L116,L216,L316,L217 \
}
# define RGBLIGHT_LED_MAP LED_LAYOUT( \
/* animation order. */ \
4, 8, 12, 17, 22, 27, 40, 45, 50, 54, 58, 62, \
3, 7, 11, 16, 21, 26, 39, 44, 49, 53, 57, 61, \
0, 2, 6, 10, 15, 20, 25, 38, 43, 48, 52, 56, 60, 63, \
1, 5, 9, 14, 19, 24, 29, 31, 33, 35, 37, 42, 47, 51, 55, 59, \
13, 18, 23, 28, 30, 32, 34, 36, 41, 46 )
#endif
#ifdef OLED_ENABLE
# define OLED_DISPLAY_128X64
# define OLED_TIMEOUT 30000
#endif

View File

@@ -0,0 +1,79 @@
{
"keyboard_name": "Avalanche v4",
"url": "https://github.com/vlkv/avalanche",
"maintainer": "vlkv",
"layouts": {
"LAYOUT": {
"layout": [
{"label":"L00", "x":1, "y":0.75},
{"label":"L01", "x":2, "y":0.75},
{"label":"L02", "x":3, "y":0.25},
{"label":"L03", "x":4, "y":0},
{"label":"L04", "x":5, "y":0.25},
{"label":"L05", "x":6, "y":0.35},
{"label":"R05", "x":12, "y":0.35},
{"label":"R04", "x":13, "y":0.25},
{"label":"R03", "x":14, "y":0},
{"label":"R02", "x":15, "y":0.25},
{"label":"R01", "x":16, "y":0.75},
{"label":"R00", "x":17, "y":0.75},
{"label":"L10", "x":1, "y":1.75},
{"label":"L11", "x":2, "y":1.75},
{"label":"L12", "x":3, "y":1.25},
{"label":"L13", "x":4, "y":1},
{"label":"L14", "x":5, "y":1.25},
{"label":"L15", "x":6, "y":1.35},
{"label":"R15", "x":12, "y":1.35},
{"label":"R14", "x":13, "y":1.25},
{"label":"R13", "x":14, "y":1},
{"label":"R12", "x":15, "y":1.25},
{"label":"R11", "x":16, "y":1.75},
{"label":"R10", "x":17, "y":1.75},
{"label":"L40", "x":0, "y":2.85},
{"label":"L20", "x":1, "y":2.75},
{"label":"L21", "x":2, "y":2.75},
{"label":"L22", "x":3, "y":2.25},
{"label":"L23", "x":4, "y":2},
{"label":"L24", "x":5, "y":2.25},
{"label":"L25", "x":6, "y":2.35},
{"label":"R25", "x":12, "y":2.35},
{"label":"R24", "x":13, "y":2.25},
{"label":"R23", "x":14, "y":2},
{"label":"R22", "x":15, "y":2.25},
{"label":"R21", "x":16, "y":2.75},
{"label":"R20", "x":17, "y":2.75},
{"label":"R40", "x":18, "y":2.85},
{"label":"L30", "x":1, "y":3.75},
{"label":"L31", "x":2, "y":3.75},
{"label":"L32", "x":3, "y":3.25},
{"label":"L33", "x":4, "y":3},
{"label":"L34", "x":5, "y":3.25},
{"label":"L35", "x":6, "y":3.35},
{"label":"L36", "x":7, "y":3.7},
{"label":"L26", "x":8, "y":4.05},
{"label":"R26", "x":10, "y":4.05},
{"label":"R36", "x":11, "y":3.7},
{"label":"R35", "x":12, "y":3.35},
{"label":"R34", "x":13, "y":3.25},
{"label":"R33", "x":14, "y":3},
{"label":"R32", "x":15, "y":3.25},
{"label":"R31", "x":16, "y":3.75},
{"label":"R30", "x":17, "y":3.75},
{"label":"L42", "x":3.4, "y":4.55},
{"label":"L43", "x":4.6, "y":4.45},
{"label":"L44", "x":5.8, "y":4.4},
{"label":"L45", "x":7, "y":4.7},
{"label":"L46", "x":8, "y":5.05},
{"label":"R46", "x":10, "y":5.05},
{"label":"R45", "x":11, "y":4.7},
{"label":"R44", "x":12.2, "y":4.4},
{"label":"R43", "x":13.4, "y":4.45},
{"label":"R42", "x":14.6, "y":4.55}
]
}
}
}

View File

@@ -0,0 +1,49 @@
// Copyright 2022 Viatly Volkov (@vlkv)
// SPDX-License-Identifier: GPL-2.0-or-later
/*
qmk compile -kb avalanche/v4 -km default
qmk flash -kb avalanche/v4 -km default
*/
#include QMK_KEYBOARD_H
enum layer {
LAYER_0,
LAYER_1,
LAYER_2,
};
#define FN_1 MO(LAYER_1)
#define LFN_2 LT(LAYER_2, KC_GRV)
#define RFN_2 MO(LAYER_2)
#define LFN_3 LSFT_T(KC_EQL)
#define RFN_3 RSFT_T(KC_MINS)
#define EN_LALT LALT_T(KC_ENT)
#define EN_RALT RALT_T(KC_ENT)
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
[LAYER_0] = LAYOUT(
KC_ESC, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_BSLS,
KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC,
KC_CAPS, KC_LSFT, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_RBRC,
KC_LCTL, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_DEL, KC_LGUI, KC_INS, KC_BSPC, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RCTL,
KC__MUTE,LFN_2, LFN_3, KC_SPC, EN_LALT, EN_RALT, FN_1, RFN_3, RFN_2, KC_PSCR
),
[LAYER_1] = LAYOUT(
_______, KC_F11, KC_F12, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, KC_F11,
_______, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, KC_BSPC, KC_DEL, KC_HOME, KC_UP, KC_END, KC_PGUP, XXXXXXX,
_______, _______, KC_APP, XXXXXXX, XXXXXXX, XXXXXXX, KC_DEL, KC_BSPC, KC_LEFT, KC_DOWN, KC_RGHT, KC_PGDN, XXXXXXX, KC_F12,
_______, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, _______, _______, _______, _______, XXXXXXX, KC_PGUP, KC_PGDN, XXXXXXX, XXXXXXX, _______,
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______
),
[LAYER_2] = LAYOUT(
_______, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX,
_______, KC_0, KC_1, KC_2, KC_3, KC_BSPC, KC_DEL, KC_EXLM, KC_AT, KC_HASH, XXXXXXX, KC_LPRN,
_______, _______, KC_0, KC_4, KC_5, KC_6, KC_DEL, KC_BSPC, KC_DLR, KC_PERC, KC_CIRC, XXXXXXX, XXXXXXX, KC_RPRN,
_______, KC_0, KC_7, KC_8, KC_9, KC_DOT, _______, _______, _______, _______, XXXXXXX, KC_AMPR, KC_ASTR, XXXXXXX, XXXXXXX, _______,
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______
),
};

View File

@@ -0,0 +1,12 @@
// Copyright 2022 Will Winder (@winder)
// SPDX-License-Identifier: GPL-2.0-or-later
#pragma once
#undef RGBLIGHT_EFFECT_BREATHING
#undef RGBLIGHT_EFFECT_KNIGHT
#undef RGBLIGHT_EFFECT_SNAKE
#undef RGBLIGHT_EFFECT_CHRISTMAS
#undef RGBLIGHT_EFFECT_RGB_TEST
#undef RGBLIGHT_EFFECT_STATIC_GRADIENT
#undef RGBLIGHT_EFFECT_ALTERNATING

View File

@@ -0,0 +1,69 @@
// Copyright 2022 Will Winder (@winder)
// SPDX-License-Identifier: GPL-2.0-or-later
static const char display [] PROGMEM = {
0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
0xff, 0xff, 0xff, 0x7f, 0x3f, 0x9f, 0xcf, 0x8f, 0x1f, 0x3f, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff,
0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
0xff, 0xff, 0x7f, 0x7f, 0x3f, 0x3f, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x1f, 0xcf, 0xef,
0xe7, 0xcf, 0x8f, 0x1e, 0x3f, 0x7f, 0xff, 0xff, 0xff, 0xfe, 0xfc, 0xf8, 0xf1, 0xe3, 0xf7, 0xff,
0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x3f, 0xbf, 0x9f, 0x1f, 0x3f,
0x7b, 0xf0, 0xfe, 0xff, 0xff, 0xfe, 0x7c, 0x78, 0x71, 0x03, 0x87, 0xff, 0xff, 0xff, 0xff, 0xff,
0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
0xff, 0xff, 0xff, 0xff, 0xff, 0x9f, 0x3f, 0xff, 0xf3, 0xe3, 0xd7, 0xef, 0xdf, 0x9c, 0x39, 0x73,
0xe7, 0xef, 0xcf, 0xcf, 0xce, 0xe0, 0xf8, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
0xff, 0xff, 0xff, 0xff, 0xdf, 0x9f, 0xbf, 0x3f, 0x1f, 0xc8, 0xe1, 0xc7, 0x9f, 0x3f, 0xff, 0xff,
0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
0xff, 0xff, 0x7f, 0x7f, 0x7f, 0xe7, 0xc7, 0x9f, 0x3f, 0x7d, 0xf0, 0xe3, 0xc7, 0x8f, 0x9f, 0x3e,
0x3c, 0xb8, 0x81, 0xc3, 0xff, 0xff, 0xfe, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
0xff, 0xff, 0xff, 0xbf, 0x1f, 0x3f, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xdf, 0xcf, 0xe7,
0xf3, 0xf9, 0x71, 0x03, 0x87, 0x8f, 0x1e, 0x3c, 0x79, 0xf3, 0xee, 0x9d, 0xfb, 0xf3, 0xf7, 0xfe,
0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xef, 0xe7, 0xf3,
0xf9, 0xfc, 0xf9, 0xf3, 0xe7, 0xcf, 0x9f, 0x3f, 0x7e, 0xfe, 0xfc, 0xfd, 0xf9, 0xf8, 0xf8, 0xff,
0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xdf, 0x9f, 0x3f, 0x7f,
0xff, 0xfe, 0xfe, 0xfc, 0xf0, 0xe6, 0xcd, 0x9d, 0x3b, 0x7a, 0xf0, 0xf1, 0xe1, 0xf3, 0xff, 0xff,
0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xef, 0x47, 0x1f,
0x3d, 0xf9, 0xf9, 0xf3, 0x83, 0x30, 0x78, 0x78, 0x71, 0x23, 0x87, 0xcf, 0xff, 0xff, 0xff, 0xff,
0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xef, 0xe7, 0xef, 0xcf, 0x0e, 0x0c, 0xe1, 0xe3, 0xe7, 0xcf,
0x1f, 0x3e, 0x7e, 0xff, 0xef, 0xe7, 0xf3, 0xf8, 0xfc, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xf9, 0xf3, 0xe7, 0xcf, 0x9f, 0x3f, 0x7f,
0x7f, 0x3f, 0x9f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
0xff, 0xff, 0xff, 0xbf, 0x9f, 0xbf, 0x3f, 0x3b, 0x33, 0x87, 0x8f, 0x9f, 0x3f, 0x7f, 0xff, 0xfe,
0xfc, 0xb9, 0x83, 0xc7, 0xe7, 0xf3, 0xf9, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
0xff, 0xff, 0xff, 0xbf, 0x9f, 0xcf, 0xc7, 0x33, 0x7f, 0xfe, 0xfc, 0xfc, 0xf9, 0xf8, 0xf6, 0xe7,
0xee, 0xc8, 0x83, 0xcf, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xfc, 0xf9, 0xf9, 0xf9, 0xf9,
0xfc, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfb, 0xf8, 0xfc,
0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x8f, 0x07, 0x73,
0xfb, 0xfb, 0xf3, 0xe7, 0xcf, 0x9f, 0x3f, 0xf8, 0xf0, 0xe7, 0xe7, 0xe7, 0xe7, 0xf0, 0xf8, 0xfd,
0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0xff, 0xff, 0xff, 0x87, 0x33,
0x3b, 0x39, 0x3b, 0x9f, 0x9f, 0x9f, 0x3f, 0x7f, 0xfe, 0xfc, 0xd9, 0xc3, 0xe3, 0xf3, 0xf9, 0xff,
0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x3f, 0xdf, 0xdf, 0xdf, 0xbf, 0x7f, 0xff, 0xff, 0xff,
0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
0xff, 0xff, 0xff, 0xff, 0xff, 0xef, 0xe7, 0xf3, 0xf9, 0xf8, 0xf1, 0xe3, 0xc7, 0x8f, 0x1f, 0x3e,
0x7c, 0xf9, 0xf3, 0xf3, 0xf3, 0xf3, 0xf8, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf7, 0xf3, 0xf9, 0xfc, 0xbe, 0x9c, 0xc1, 0xe3, 0xe7, 0xcf,
0x1f, 0x3f, 0xff, 0xf3, 0xf3, 0xfb, 0xf8, 0xfc, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0xbf,
0xff, 0xff, 0xe7, 0xdb, 0xbb, 0x7b, 0xf7, 0xee, 0xdc, 0xbd, 0xff, 0xf7, 0xf7, 0xf6, 0xff, 0xff,
0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe,
0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfb, 0xf9, 0xfc,
0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xfe, 0xfc,
0xf9, 0xf3, 0xa7, 0xcf, 0xef, 0xff, 0xfc, 0xfd, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff
};

View File

@@ -0,0 +1,135 @@
// Copyright 2022 Viatly Volkov (@vlkv)
// SPDX-License-Identifier: GPL-2.0-or-later
/*
qmk compile -kb avalanche/v4 -km default
qmk flash -kb avalanche/v4 -km default
*/
#include QMK_KEYBOARD_H
enum layer {
_QWERTY,
_LOWER,
_RAISE,
};
#define FN_1 MO(_LOWER)
#define FN_2 MO(_RAISE)
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
[_QWERTY] = LAYOUT(
KC_GRV , KC_1 , KC_2 , KC_3 , KC_4 , KC_5 , KC_6 , KC_7 , KC_8 , KC_9 , KC_0 , KC_DEL ,
KC_TAB , KC_Q , KC_W , KC_E , KC_R , KC_T , KC_Y , KC_U , KC_I , KC_O , KC_P , KC_BSPC,
KC_ESC , KC_LCTL, KC_A , KC_S , KC_D , KC_F , KC_G , KC_H , KC_J , KC_K , KC_L , KC_SCLN, KC_QUOT, KC_UNDS,
KC_LSFT, KC_Z , KC_X , KC_C , KC_V , KC_B , KC_DEL , KC_LGUI, /**/ KC_INS , KC_BSPC, KC_N , KC_M , KC_COMM, KC_DOT , KC_SLSH, KC_RSFT,
KC_LGUI, KC_LALT, KC_LGUI, FN_1 , KC_ENT , /**/ FN_2 , KC_SPC , KC_BSPC, KC_RALT, KC_RGUI
),
[_LOWER] = LAYOUT(
_______, KC_F1 , KC_F2 , KC_F3 , KC_F4 , KC_F5 , KC_F6 , KC_F7 , KC_F8 , KC_F9 , KC_F10 , KC_F11 ,
KC_GRV , KC_1 , KC_2 , KC_3 , KC_4 , KC_5 , KC_6 , KC_7 , KC_8 , KC_9 , KC_0 , KC_DEL ,
_______ , KC_TILD, KC_EXLM, KC_AT , KC_HASH, KC_DLR , KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_PIPE, _______,
_______, KC_EQL , KC_MINS, KC_PLUS, KC_LCBR, KC_RCBR, _______, _______, /**/ _______, _______, KC_LBRC, KC_RBRC, KC_SCLN, KC_COLN, KC_BSLS, _______,
_______, _______, _______, _______, _______, /**/ _______, _______, _______, _______, _______
),
[_RAISE] = LAYOUT(
_______, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, KC_VOLD, KC_VOLU, KC_MUTE, XXXXXXX, XXXXXXX, XXXXXXX,
_______, KC_0, KC_1, KC_2, KC_3, KC_BSPC, KC_PGUP, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX,
_______, _______, KC_0, KC_4, KC_5, KC_6, KC_DEL, KC_LEFT, KC_DOWN, KC_UP , KC_RGHT, XXXXXXX, XXXXXXX, XXXXXXX,
_______, KC_0, KC_7, KC_8, KC_9, KC_DOT, _______, _______, /**/ _______, _______, KC_PGDN, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, _______,
_______, _______, _______, _______, _______, /**/ _______, _______, _______, _______, _______
),
};
#ifdef OLED_ENABLE
#include "images.h"
oled_rotation_t oled_init_user(oled_rotation_t rotation) {
return OLED_ROTATION_0;
}
void shiftright(char* buf, int size, int num) {
for (int i = size-1; i > 0; i--) {
buf[i] >>= 1;
if (buf[i-1] & 0x01) {
buf[i] |= 0x80;
}
}
buf[0] >>= 1;
}
// right to left, 8 bit vertical strips.
void mask(char* enable) {
char rowenable[3];
const char* data = display;
int i = 0;
char blockmask[2] = { 0x00, 0x00 };
while (i < sizeof(display)) {
if (i % 128 == 0) {
// shift enable-mask right 1 at each row, reinitialize row copy
if (i != 0) {
shiftright(enable, 3, 2);
}
rowenable[0] = enable[0];
rowenable[1] = enable[1];
rowenable[2] = enable[2];
}
if (i % 8 == 0) {
if (rowenable[2] & 0x01) {
blockmask[1] = 0xff;
} else {
blockmask[1] = 0x00;
}
if (rowenable[2] & 0x02) {
blockmask[0] = 0xff;
} else {
blockmask[0] = 0x00;
}
shiftright(rowenable, 3, 2);
}
uint8_t c = pgm_read_byte(data++);
oled_write_raw_byte(c & blockmask[1], i++);
shiftright(blockmask, 2, 1);
}
}
void setmask(char* mask) {
mask[0] = 0x00;
mask[1] = 0x00;
mask[2] = 0x00;
uint8_t mod = get_mods() | get_oneshot_mods();
if (mod & MOD_MASK_CTRL) {
mask[1] |= 0xf0;
}
if (mod & MOD_MASK_ALT) {
mask[1] |= 0x0f;
}
if (mod & MOD_MASK_GUI) {
mask[0] |= 0xf0;
}
switch (get_highest_layer(layer_state)) {
case _LOWER:
mask[2] |= 0xf0;
break;
case _RAISE:
mask[0] |= 0x0f;
break;
}
}
bool oled_task_user(void) {
char m[3];
setmask(m);
mask(m);
return false;
}
#endif

View File

@@ -0,0 +1 @@
RGBLIGHT_ENABLE = yes

View File

@@ -0,0 +1,23 @@
# MCU name
MCU = atmega32u4
# Bootloader selection
BOOTLOADER = caterina
# Build Options
# change yes to no to disable
#
BOOTMAGIC_ENABLE = yes # Enable Bootmagic Lite
MOUSEKEY_ENABLE = yes # Mouse keys
EXTRAKEY_ENABLE = yes # Audio control and System control
CONSOLE_ENABLE = no # Console for debug
COMMAND_ENABLE = no # Commands for debug and configuration
NKRO_ENABLE = yes # Enable N-Key Rollover
BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality
RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow
AUDIO_ENABLE = no # Audio output
ENCODER_ENABLE = yes
OLED_ENABLE = yes
OLED_DRIVER = SSD1306
SPLIT_KEYBOARD = yes

View File

@@ -0,0 +1,18 @@
// Copyright 2022 Vitaly Volkov (@vlkv)
// SPDX-License-Identifier: GPL-2.0-or-later
#include "avalanche.h"
#ifdef OLED_ENABLE
oled_rotation_t oled_init_kb(oled_rotation_t rotation) {
return OLED_ROTATION_180;
}
bool oled_task_kb(void) {
if (!oled_task_user()) {
return false;
}
oled_write_P(PSTR("Avalanche\nVersion 4"), false);
return true;
}
#endif

View File

@@ -0,0 +1,31 @@
// Copyright 2022 Vitaly Volkov (@vlkv)
// SPDX-License-Identifier: GPL-2.0-or-later
#pragma once
#include "avalanche.h"
#include "quantum.h"
#define L__ KC_NO
#define R__ KC_NO
#define LAYOUT( \
L00, L01, L02, L03, L04, L05, R05, R04, R03, R02, R01, R00, \
L10, L11, L12, L13, L14, L15, R15, R14, R13, R12, R11, R10, \
L40, L20, L21, L22, L23, L24, L25, R25, R24, R23, R22, R21, R20, R40, \
L30, L31, L32, L33, L34, L35, L36, L26, R26, R36, R35, R34, R33, R32, R31, R30, \
L42, L43, L44, L45, L46, R46, R45, R44, R43, R42 \
) \
{ \
{ L00, L01, L02, L03, L04, L05, L__}, \
{ L10, L11, L12, L13, L14, L15, L__}, \
{ L20, L21, L22, L23, L24, L25, L26}, \
{ L30, L31, L32, L33, L34, L35, L36}, \
{ L40, L__, L42, L43, L44, L45, L46}, \
{ R00, R01, R02, R03, R04, R05, R__}, \
{ R10, R11, R12, R13, R14, R15, R__}, \
{ R20, R21, R22, R23, R24, R25, R26}, \
{ R30, R31, R32, R33, R34, R35, R36}, \
{ R40, R__, R42, R43, R44, R45, R46} \
}

View File

@@ -0,0 +1,45 @@
/*
Copyright 2021 @cyril279
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 <http://www.gnu.org/licenses/>.
*/
#pragma once
#include "config_common.h"
/* USB Device descriptor parameter */
#define VENDOR_ID 0xFEED
#define PRODUCT_ID 0x5F10
#define DEVICE_VER 0x0001
#define MANUFACTURER cyril279
#define PRODUCT rev41lp
/* key matrix size */
#define MATRIX_ROWS 7
#define MATRIX_COLS 6
#define MATRIX_ROW_PINS { F4, B2, F5, B3, F6, B1, F7 }
#define MATRIX_COL_PINS { D4, C6, D7, E6, B4, B5 }
#define UNUSED_PINS
#define DIODE_DIRECTION COL2ROW
#define BACKLIGHT_PIN B6
#define BACKLIGHT_ON_STATE 1
#define BACKLIGHT_LEVELS 7
#define BACKLIGHT_LIMIT_VAL 150
/* Debounce reduces chatter (unintended double-presses) - set 0 if debouncing is not needed */
#define DEBOUNCE 5

View File

@@ -0,0 +1,58 @@
{
"keyboard_name": "rev41lp",
"url": "https://github.com/cyril279/keyboards/tree/main/revlp/41_1350",
"maintainer": "cyril279",
"layouts": {
"LAYOUT_rev41lp": {
"layout": [
{"label":"K00", "x":0, "y":0.54},
{"label":"K01", "x":1, "y":0.36},
{"label":"K02", "x":2, "y":0.18},
{"label":"K03", "x":3, "y":0},
{"label":"K04", "x":4, "y":0.18},
{"label":"K05", "x":5, "y":0.36},
{"label":"K10", "x":7, "y":0.36},
{"label":"K11", "x":8, "y":0.18},
{"label":"K12", "x":9, "y":0},
{"label":"K13", "x":10, "y":0.18},
{"label":"K14", "x":11, "y":0.36},
{"label":"K15", "x":12, "y":0.54},
{"label":"K20", "x":0, "y":1.54},
{"label":"K21", "x":1, "y":1.36},
{"label":"K22", "x":2, "y":1.18},
{"label":"K23", "x":3, "y":1},
{"label":"K24", "x":4, "y":1.18},
{"label":"K25", "x":5, "y":1.36},
{"label":"K30", "x":7, "y":1.36},
{"label":"K31", "x":8, "y":1.18},
{"label":"K32", "x":9, "y":1},
{"label":"K33", "x":10, "y":1.18},
{"label":"K34", "x":11, "y":1.36},
{"label":"K35", "x":12, "y":1.54},
{"label":"K40", "x":0, "y":2.54},
{"label":"K41", "x":1, "y":2.36},
{"label":"K42", "x":2, "y":2.18},
{"label":"K43", "x":3, "y":2},
{"label":"K44", "x":4, "y":2.18},
{"label":"K45", "x":5, "y":2.36},
{"label":"K50", "x":7, "y":2.36},
{"label":"K51", "x":8, "y":2.18},
{"label":"K52", "x":9, "y":2},
{"label":"K53", "x":10, "y":2.18},
{"label":"K54", "x":11, "y":2.36},
{"label":"K55", "x":12, "y":2.54},
{"label":"K60", "x":2.875, "y":3.54, "w":1.25},
{"label":"K61", "x":4.125, "y":3.54, "w":1.25},
{"label":"K62", "x":5.375, "y":3.54, "w":2.25},
{"label":"K63", "x":7.625, "y":3.54, "w":1.25},
{"label":"K64", "x":8.875, "y":3.54, "w":1.25}
]
}
}
}

View File

@@ -0,0 +1,21 @@
/*
Copyright 2021 @cyril279
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 <http://www.gnu.org/licenses/>.
*/
#pragma once
#define TAPPING_TERM 150
#define TAPPING_TERM_PER_KEY
#define IGNORE_MOD_TAP_INTERRUPT

View File

@@ -0,0 +1,105 @@
/*
Copyright 2021 @cyril279
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 <http://www.gnu.org/licenses/>.
*/
#include QMK_KEYBOARD_H
enum layer_names {
_BASE,
_LOWER,
_RAISE,
_ADJUST,
_NAVIG,
_FUNCTION
};
#define LOWER MO(_LOWER)
#define RAISE MO(_RAISE)
#define ADJUST MO(_ADJUST)
#define SPC_NAV LT(_NAVIG,KC_SPC)
#define FUNCT MO(_FUNCTION)
#define NAVIG MO(_NAVIG)
#define LGUI_A LGUI_T(KC_A)
#define LALT_S LALT_T(KC_S)
#define LSFT_D LSFT_T(KC_D)
#define LCTL_F LCTL_T(KC_F)
#define RCTL_J RCTL_T(KC_J)
#define RSFT_K RSFT_T(KC_K)
#define RALT_L LALT_T(KC_L)
#define RGUI_SCLN RGUI_T(KC_SCLN)
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
[_BASE] = LAYOUT_rev41lp(
KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSPC,
KC_ESC, KC_A, LALT_S, LSFT_D, LCTL_F, KC_G, KC_H, RCTL_J, RSFT_K, RALT_L, KC_SCLN, KC_QUOT,
KC_LCTL, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_ENT,
KC_LGUI, LOWER, SPC_NAV, RAISE, FUNCT
),
[_LOWER] = LAYOUT_rev41lp(
KC_GRV, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_DEL,
_______, _______, _______, _______, _______, _______, KC_TILD, KC_UNDS, KC_PLUS, KC_LCBR, KC_RCBR, KC_PIPE,
_______, _______, KC_LGUI, KC_LALT, KC_CAPS, _______, KC_PSCR, _______, _______, _______, _______, _______,
_______, _______, _______, _______, _______
),
[_RAISE] = LAYOUT_rev41lp(
KC_TILD, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSPC,
_______, _______, _______, _______, _______, _______, KC_GRV, KC_MINS, KC_EQL, KC_LBRC, KC_RBRC, KC_BSLS,
_______, _______, KC_LGUI, KC_LALT, KC_CAPS, _______, KC_PSCR, _______, _______, _______, _______, _______,
_______, _______, _______, _______, _______
),
[_NAVIG] = LAYOUT_rev41lp(
KC_DEL, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_DEL,
_______, _______, _______, _______, _______, _______, _______, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT, KC_NO,
_______, _______, KC_LGUI, KC_LALT, KC_CAPS, _______, _______, KC_HOME, KC_PGDN, KC_PGUP, KC_END, _______,
_______, _______, _______, _______, _______
),
[_FUNCTION] = LAYOUT_rev41lp(
KC_DEL, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_DEL,
_______, _______, _______, _______, _______, _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6,
_______, _______, KC_LGUI, KC_LALT, KC_CAPS, _______, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12,
_______, _______, _______, _______, _______
),
[_ADJUST] = LAYOUT_rev41lp(
XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, BL_DEC, BL_TOGG, BL_BRTG, BL_INC, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX,
XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX,
XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, RESET, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX,
_______, _______, _______, _______, _______
)
};
layer_state_t layer_state_set_user(layer_state_t state) {
return update_tri_layer_state(state, _LOWER, _RAISE, _ADJUST);
}
uint16_t get_tapping_term(uint16_t keycode, keyrecord_t *record) {
switch (keycode) {
case LGUI_A:
case RGUI_SCLN:
case LALT_S:
case RALT_L:
case LCTL_F:
case RCTL_J:
case SPC_NAV:
return 225;
default:
return TAPPING_TERM;
}
}

View File

@@ -0,0 +1,48 @@
/*
Copyright 2021 @cyril279
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 <http://www.gnu.org/licenses/>.
*/
#include QMK_KEYBOARD_H
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
[0] = LAYOUT_rev41lp(
KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSPC,
KC_LCTL, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT,
KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, RSFT_T(KC_ENT),
KC_LALT, MO(1), KC_SPC, MO(2), KC_LGUI
),
[1] = LAYOUT_rev41lp(
_______, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_DEL,
_______, KC_UNDS, KC_PLUS, KC_LCBR, KC_RCBR, KC_PIPE, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT, KC_GRV, KC_TILD,
_______, KC_ESC, KC_LGUI, KC_LALT, KC_CAPS, KC_DQUO, KC_HOME, KC_END, KC_PGUP, KC_PGDN, KC_PSCR, RSFT_T(KC_SPC),
_______, _______, KC_ENT, MO(3), _______
),
[2] = LAYOUT_rev41lp(
_______, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_DEL,
_______, KC_MINS, KC_EQL, KC_LBRC, KC_RBRC, KC_BSLS, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6,
_______, KC_ESC, KC_RGUI, KC_RALT, KC_CAPS, KC_QUOT, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12,
_______, MO(3), KC_BSPC, _______, _______
),
[3] = LAYOUT_rev41lp(
XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, BL_DEC, BL_TOGG, BL_BRTG, BL_INC, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX,
XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX,
XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, RESET, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX,
_______, _______, _______, _______, _______
)
};

View File

@@ -0,0 +1,43 @@
/* Copyright 2022 Jan Lindblom (@janlindblom)
*
* 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 <http://www.gnu.org/licenses/>.
*/
#pragma once
#undef BACKLIGHT_LEVELS
#define BACKLIGHT_LEVELS 11
#undef BACKLIGHT_LIMIT_VAL
#define BACKLIGHT_LIMIT_VAL 255
#define BACKLIGHT_DEFAULT_LEVEL 3
#define COMBO_COUNT 3
#define IGNORE_MOD_TAP_INTERRUPT
#define UNICODE_SELECTED_MODES UC_WINC, UC_WIN, UC_MAC, UC_LNX
#define TAPPING_FORCE_HOLD
#define TAPPING_TERM 200
#define TAPPING_TERM_PER_KEY
#define LAYER_STATE_8BIT
#define NO_ACTION_MACRO
#define NO_ACTION_FUNCTION
#define NO_ACTION_ONESHOT
/* Bootmagic Lite key configuration */
#define BOOTMAGIC_LITE_ROW 0
#define BOOTMAGIC_LITE_COLUMN 0
/* key combination for command */
#define IS_COMMAND() (get_mods() == (MOD_BIT(KC_LCTL) | MOD_BIT(KC_RCTL)) || get_mods() == (MOD_BIT(KC_LSFT) | MOD_BIT(KC_RSFT)))

View File

@@ -0,0 +1,176 @@
/* Copyright 2022 Jan Lindblom (@janlindblom)
*
* 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 <http://www.gnu.org/licenses/>.
*/
#include QMK_KEYBOARD_H
#include "keymap_swedish.h"
#include "sendstring_swedish.h"
enum layer_names {
_BASE,
_LOWER,
_RAISE,
_ADJUST
};
enum custom_keycodes {
SK_NOT_EQL = SAFE_RANGE,
SK_LEQ,
SK_GEQ,
};
// Custom send_string keys
bool process_record_user(uint16_t keycode, keyrecord_t *record) {
switch (keycode) {
case SK_NOT_EQL:
if (record->event.pressed) {
SEND_STRING("!=");
}
break;
case SK_LEQ:
if (record->event.pressed) {
SEND_STRING("<=");
}
break;
case SK_GEQ:
if (record->event.pressed) {
SEND_STRING(">=");
}
break;
}
return true;
}
// Combos, if enabled
#ifdef COMBO_ENABLE
enum combo_events {
ZC_COPY,
XV_PASTE,
ZX_CUT,
};
const uint16_t PROGMEM copy_combo[] = {KC_Z, KC_C, COMBO_END};
const uint16_t PROGMEM paste_combo[] = {KC_X, KC_V, COMBO_END};
const uint16_t PROGMEM cut_combo[] = {KC_Z, KC_X, COMBO_END};
combo_t key_combos[COMBO_COUNT] = {
[ZC_COPY] = COMBO_ACTION(copy_combo),
[XV_PASTE] = COMBO_ACTION(paste_combo),
[ZX_CUT] = COMBO_ACTION(cut_combo),
};
void process_combo_event(uint16_t combo_index, bool pressed) {
switch (combo_index) {
case ZC_COPY:
if (pressed) {
tap_code16(LCTL(KC_C));
}
break;
case XV_PASTE:
if (pressed) {
tap_code16(LCTL(KC_V));
}
break;
case ZX_CUT:
if (pressed) {
tap_code16(LCTL(KC_X));
}
break;
}
}
#endif
// Tap Dance definitions
#ifdef TAP_DANCE_ENABLE
enum dances {
TD_SHFT_CAPS,
TD_DOT_COL,
TD_COM_SCL,
TD_DASH_USCR,
};
qk_tap_dance_action_t tap_dance_actions[] = {
// Tap once for Shift, twice for Caps Lock
[TD_SHFT_CAPS] = ACTION_TAP_DANCE_DOUBLE(KC_LSFT, KC_CAPS),
[TD_COM_SCL] = ACTION_TAP_DANCE_DOUBLE(KC_COMM, SE_SCLN),
[TD_DOT_COL] = ACTION_TAP_DANCE_DOUBLE(KC_DOT, SE_COLN),
[TD_DASH_USCR] = ACTION_TAP_DANCE_DOUBLE(SE_MINS, S(SE_MINS)),
};
# define CK_LSFT TD(TD_SHFT_CAPS)
# define CK_COMM TD(TD_COM_SCL)
# define CK_DOT TD(TD_DOT_COL)
# define CK_DASH TD(TD_DASH_USCR)
#else
# define CK_LSFT KC_LSFT
# define CK_COMM KC_COMM
# define CK_DOT KC_DOT
# define CK_DASH SE_MINS
#endif
// Some defines for the keys below
#define CK_ESC LT(_RAISE, KC_ESC)
#define CK_BSPC LCTL_T(KC_BSPC)
#define CK_DEL LALT_T(KC_DEL)
#define CK_ENT1 LT(_LOWER, KC_ENT)
#define CK_ENT2 LT(_RAISE, KC_ENT)
#define CK_TAB RALT_T(KC_TAB)
#define CK_ADIA RCTL_T(SE_ADIA)
#define CK_QUOT RSFT_T(SE_QUOT)
#define CK_SPC RSFT_T(KC_SPC)
// Alt + [-] => (en-dash)
const key_override_t mins_ndash_override = ko_make_basic(MOD_MASK_ALT, SE_MINS, UC(0x2013));
// Shift + Alt + [-] => — (em-dash)
const key_override_t mins_mdash_override = ko_make_basic(MOD_MASK_SA, SE_MINS, UC(0x2014));
const key_override_t **key_overrides = (const key_override_t *[]){
&mins_ndash_override,
&mins_mdash_override,
NULL
};
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
[_BASE] = LAYOUT_rev41lp(
CK_ESC, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, SE_ARNG,
CK_BSPC, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, SE_ODIA, CK_ADIA,
CK_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, SE_COMM, SE_DOT, SE_MINS, CK_QUOT,
CK_DEL, CK_ENT1, KC_SPC, CK_ENT2, CK_TAB
),
[_LOWER] = LAYOUT_rev41lp(
SK_NOT_EQL, SE_EXLM, SE_AT, SE_HASH, SE_DLR, SE_PERC, SE_CIRC, SE_AMPR, SE_ASTR, SE_LPRN, SE_RPRN, SE_DIAE,
SK_LEQ, SE_UNDS, SE_PLUS, SE_LCBR, SE_RCBR, SE_PIPE, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT, SE_GRV, SE_TILD,
SK_GEQ, KC_ESC, KC_LGUI, KC_LALT, KC_CAPS, SE_DQUO, KC_HOME, KC_END, KC_PGUP, KC_PGDN, KC_PSCR, CK_SPC,
_______, _______, KC_ENT, _______, _______
),
[_RAISE] = LAYOUT_rev41lp(
_______, SE_1, SE_2, SE_3, SE_4, SE_5, SE_6, SE_7, SE_8, SE_9, SE_0, SE_GRV,
_______, SE_MINS, SE_EQL, SE_LBRC, SE_RBRC, SE_BSLS, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6,
_______, KC_ESC, KC_RGUI, KC_RALT, KC_CAPS, SE_ACUT, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12,
SE_LABK, SE_RABK, KC_BSPC, _______, _______
),
[_ADJUST] = LAYOUT_rev41lp(
XXXXXXX, XXXXXXX, XXXXXXX, BL_OFF, BL_DEC, BL_TOGG, BL_BRTG, BL_INC, BL_ON, XXXXXXX, XXXXXXX, XXXXXXX,
XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, BL_STEP, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX,
XXXXXXX, UC_M_WC, UC_M_MA, UC_M_LN, XXXXXXX, XXXXXXX, RESET, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX,
_______, _______, _______, _______, _______
)
};
layer_state_t layer_state_set_user(layer_state_t state) {
return update_tri_layer_state(state, _LOWER, _RAISE, _ADJUST);
}

View File

@@ -0,0 +1,3 @@
# Namnlos custom keymap for Rev41lp
This is a nordic keymap for the Rev41lp by [cyril](https://github.com/cyril279), it's based on the default keymap but has customisations for nordic languages.

View File

@@ -0,0 +1,7 @@
SLEEP_LED_ENABLE = yes
NKRO_ENABLE = yes
UNICODE_ENABLE = yes
TAP_DANCE_ENABLE = yes
KEY_OVERRIDE_ENABLE = yes
DEBOUNCE_TYPE = sym_defer_pk
LTO_ENABLE = yes

View File

@@ -0,0 +1,15 @@
# The rev41lp keyboard
![The rev41lp keyboard by cyril279](https://imgur.com/nZNHSaWh.jpg)
Inspired by the REVIUNG series by Gtips, the rev41lp is 41-key column staggered keyboard designed for use with low-profile Kailh Choc (pg1350) switches.
* Keyboard Maintainer: [cyril279](https://github.com/cyril279)
* Hardware Supported: The REVlp PCBs, Pro Micro supported, bluetooth controller friendly.
* Hardware Availability: [PCB Data](https://github.com/cyril279/keyboards/tree/main/revlp)
Make example for this keyboard (after setting up your build environment):
make b_sides/rev41lp: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).

View File

@@ -0,0 +1,17 @@
/*
Copyright 2021 @cyril279
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 <http://www.gnu.org/licenses/>.
*/
#include "rev41lp.h"

View File

@@ -0,0 +1,35 @@
/*
Copyright 2021 @cyril279
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 <http://www.gnu.org/licenses/>.
*/
#pragma once
#include "quantum.h"
#define LAYOUT_rev41lp( \
K00, K01, K02, K03, K04, K05, K10, K11, K12, K13, K14, K15, \
K20, K21, K22, K23, K24, K25, K30, K31, K32, K33, K34, K35, \
K40, K41, K42, K43, K44, K45, K50, K51, K52, K53, K54, K55, \
K60, K61, K62, K63, K64 \
) \
{ \
{ K00, K01, K02, K03, K04, K05 }, \
{ K10, K11, K12, K13, K14, K15 }, \
{ K20, K21, K22, K23, K24, K25 }, \
{ K30, K31, K32, K33, K34, K35 }, \
{ K40, K41, K42, K43, K44, K45 }, \
{ K50, K51, K52, K53, K54, K55 }, \
{ K60, K61, K62, K63, K64, KC_NO } \
}

View File

@@ -0,0 +1,18 @@
# MCU name
MCU = atmega32u4
# Bootloader selection
BOOTLOADER = caterina
# Build Options
# change yes to no to disable
#
BOOTMAGIC_ENABLE = yes # Enable Bootmagic Lite
MOUSEKEY_ENABLE = no # Mouse keys
EXTRAKEY_ENABLE = yes # Audio control and System control
CONSOLE_ENABLE = yes # Console for debug
COMMAND_ENABLE = yes # Commands for debug and configuration
NKRO_ENABLE = no # Enable N-Key Rollover
BACKLIGHT_ENABLE = yes # Enable keyboard backlight functionality
RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow
AUDIO_ENABLE = no # Audio output

View File

@@ -0,0 +1,19 @@
// Copyright 2022 Manna Harbour
// https://github.com/manna-harbour/miryoku
// 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 <http://www.gnu.org/licenses/>.
#pragma once
#define LAYOUT_miryoku( \
K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, \
K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, \
K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, \
N30, N31, K32, K33, K34, K35, K36, K37, N38, N39 \
) \
LAYOUT_charybdis_3x5( \
K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, \
K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, \
K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, \
K32, K33, K34, K35, K36 \
)

View File

@@ -0,0 +1,4 @@
// Copyright 2019 Manna Harbour
// https://github.com/manna-harbour/miryoku
// 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 <http://www.gnu.org/licenses/>.

View File

@@ -0,0 +1,4 @@
# Copyright 2021 Manna Harbour
# https://github.com/manna-harbour/miryoku
MIRYOKU_KLUDGE_THUMBCOMBOS=yes

View File

@@ -0,0 +1,23 @@
// Copyright 2022 Manna Harbour
// https://github.com/manna-harbour/miryoku
// 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 <http://www.gnu.org/licenses/>.
#pragma once
#define XXX KC_NO
#define LAYOUT_miryoku( \
K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, \
K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, \
K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, \
N30, N31, K32, K33, K34, K35, K36, K37, N38, N39 \
) \
LAYOUT_charybdis_4x6( \
XXX, XXX, XXX, XXX, XXX, XXX, XXX, XXX, XXX, XXX, XXX, XXX, \
XXX, K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, XXX, \
XXX, K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, XXX, \
XXX, K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, XXX, \
K32, K33, K34, K35, K36, \
XXX, K32, K37 \
)

Some files were not shown because too many files have changed in this diff Show More