forked from mfulz_github/qmk_firmware
Merge branch 'master' into features/encryption
This commit is contained in:
commit
ba36d2204b
|
@ -2,5 +2,8 @@ version: 2
|
||||||
updates:
|
updates:
|
||||||
- package-ecosystem: "github-actions"
|
- package-ecosystem: "github-actions"
|
||||||
directory: "/"
|
directory: "/"
|
||||||
|
labels: CI
|
||||||
|
reviewers:
|
||||||
|
- "qmk/collaborators"
|
||||||
schedule:
|
schedule:
|
||||||
interval: "daily"
|
interval: "daily"
|
||||||
|
|
|
@ -34,7 +34,7 @@ jobs:
|
||||||
qmk --verbose generate-docs
|
qmk --verbose generate-docs
|
||||||
|
|
||||||
- name: Deploy
|
- name: Deploy
|
||||||
uses: JamesIves/github-pages-deploy-action@v4.3.4
|
uses: JamesIves/github-pages-deploy-action@v4.4.0
|
||||||
with:
|
with:
|
||||||
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
||||||
BASE_BRANCH: master
|
BASE_BRANCH: master
|
||||||
|
|
|
@ -113,15 +113,17 @@ Additionally, in the board config, you'll want to make changes to enable the DAC
|
||||||
|
|
||||||
### DAC Config
|
### DAC Config
|
||||||
|
|
||||||
| Define | Defaults | Description --------------------------------------------------------------------------------------------- |
|
| Define | Defaults | Description |
|
||||||
|
| -------------------------------- | -------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
|
||||||
| `AUDIO_DAC_SAMPLE_MAX` | `4095U` | Highest value allowed. Lower value means lower volume. And 4095U is the upper limit, since this is limited to a 12 bit value. Only effects non-pregenerated samples. |
|
| `AUDIO_DAC_SAMPLE_MAX` | `4095U` | Highest value allowed. Lower value means lower volume. And 4095U is the upper limit, since this is limited to a 12 bit value. Only effects non-pregenerated samples. |
|
||||||
| `AUDIO_DAC_OFF_VALUE` | `AUDIO_DAC_SAMPLE_MAX / 2` | The value of the DAC when notplaying anything. Some setups may require a high (`AUDIO_DAC_SAMPLE_MAX`) or low (`0`) value here. |
|
| `AUDIO_DAC_OFF_VALUE` | `AUDIO_DAC_SAMPLE_MAX / 2` | The value of the DAC when notplaying anything. Some setups may require a high (`AUDIO_DAC_SAMPLE_MAX`) or low (`0`) value here. |
|
||||||
| `AUDIO_MAX_SIMULTANEOUS_TONES` | __see next table__ | The number of tones that can be played simultaneously. A value that is too high may freeze the controller or glitch out when too many tones are being played. |
|
| `AUDIO_MAX_SIMULTANEOUS_TONES` | __see next table__ | The number of tones that can be played simultaneously. A value that is too high may freeze the controller or glitch out when too many tones are being played. |
|
||||||
| `AUDIO_DAC_SAMPLE_RATE` | __see next table__ | Effective bit rate of the DAC (in hertz), higher limits simultaneous tones, and lower sacrifices quality. |
|
| `AUDIO_DAC_SAMPLE_RATE` | __see next table__ | Effective bit rate of the DAC (in hertz), higher limits simultaneous tones, and lower sacrifices quality. |
|
||||||
|
|
||||||
There are a number of predefined quality settings that you can use, with "sane minimum" being the default. You can use custom values by simply defining the sample rate and number of simultaneous tones, instead of using one of the listed presets.
|
There are a number of predefined quality settings that you can use, with "sane minimum" being the default. You can use custom values by simply defining the sample rate and number of simultaneous tones, instead of using one of the listed presets.
|
||||||
|
|
||||||
| Define | Sample Rate | Simultaneous tones |
|
| Define | Sample Rate | Simultaneous tones |
|
||||||
|
| --------------------------------- | ----------- | ------------------- |
|
||||||
| `AUDIO_DAC_QUALITY_VERY_LOW` | `11025U` | `8` |
|
| `AUDIO_DAC_QUALITY_VERY_LOW` | `11025U` | `8` |
|
||||||
| `AUDIO_DAC_QUALITY_LOW` | `22040U` | `4` |
|
| `AUDIO_DAC_QUALITY_LOW` | `22040U` | `4` |
|
||||||
| `AUDIO_DAC_QUALITY_HIGH` | `44100U` | `2` |
|
| `AUDIO_DAC_QUALITY_HIGH` | `44100U` | `2` |
|
||||||
|
|
|
@ -0,0 +1,10 @@
|
||||||
|
{
|
||||||
|
"keyboard_name": "Perk60 ISO Rev A",
|
||||||
|
"url": "",
|
||||||
|
"maintainer": "4pplet",
|
||||||
|
"layouts": {
|
||||||
|
"LAYOUT_60_iso": {
|
||||||
|
"layout": [{"label":"\u00ac", "x":0, "y":0}, {"label":"!", "x":1, "y":0}, {"label":"\"", "x":2, "y":0}, {"label":"\u00a3", "x":3, "y":0}, {"label":"$", "x":4, "y":0}, {"label":"%", "x":5, "y":0}, {"label":"^", "x":6, "y":0}, {"label":"&", "x":7, "y":0}, {"label":"*", "x":8, "y":0}, {"label":"(", "x":9, "y":0}, {"label":")", "x":10, "y":0}, {"label":"_", "x":11, "y":0}, {"label":"+", "x":12, "y":0}, {"label":"Backspace", "x":13, "y":0, "w":2}, {"label":"Tab", "x":0, "y":1, "w":1.5}, {"label":"Q", "x":1.5, "y":1}, {"label":"W", "x":2.5, "y":1}, {"label":"E", "x":3.5, "y":1}, {"label":"R", "x":4.5, "y":1}, {"label":"T", "x":5.5, "y":1}, {"label":"Y", "x":6.5, "y":1}, {"label":"U", "x":7.5, "y":1}, {"label":"I", "x":8.5, "y":1}, {"label":"O", "x":9.5, "y":1}, {"label":"P", "x":10.5, "y":1}, {"label":"{", "x":11.5, "y":1}, {"label":"}", "x":12.5, "y":1}, {"label":"Caps Lock", "x":0, "y":2, "w":1.75}, {"label":"A", "x":1.75, "y":2}, {"label":"S", "x":2.75, "y":2}, {"label":"D", "x":3.75, "y":2}, {"label":"F", "x":4.75, "y":2}, {"label":"G", "x":5.75, "y":2}, {"label":"H", "x":6.75, "y":2}, {"label":"J", "x":7.75, "y":2}, {"label":"K", "x":8.75, "y":2}, {"label":"L", "x":9.75, "y":2}, {"label":":", "x":10.75, "y":2}, {"label":"@", "x":11.75, "y":2}, {"label":"~", "x":12.75, "y":2}, {"label":"Enter", "x":13.75, "y":1, "w":1.25, "h":2}, {"label":"Shift", "x":0, "y":3, "w":1.25}, {"label":"|", "x":1.25, "y":3}, {"label":"Z", "x":2.25, "y":3}, {"label":"X", "x":3.25, "y":3}, {"label":"C", "x":4.25, "y":3}, {"label":"V", "x":5.25, "y":3}, {"label":"B", "x":6.25, "y":3}, {"label":"N", "x":7.25, "y":3}, {"label":"M", "x":8.25, "y":3}, {"label":"<", "x":9.25, "y":3}, {"label":">", "x":10.25, "y":3}, {"label":"?", "x":11.25, "y":3}, {"label":"Shift", "x":12.25, "y":3, "w":2.75}, {"label":"Ctrl", "x":0, "y":4, "w":1.25}, {"label":"Win", "x":1.25, "y":4, "w":1.25}, {"label":"Alt", "x":2.5, "y":4, "w":1.25}, {"x":3.75, "y":4, "w":6.25}, {"label":"AltGr", "x":10, "y":4, "w":1.25}, {"label":"Win", "x":11.25, "y":4, "w":1.25}, {"label":"Menu", "x":12.5, "y":4, "w":1.25}, {"label":"Ctrl", "x":13.75, "y":4, "w":1.25}]
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
|
@ -0,0 +1,34 @@
|
||||||
|
/*
|
||||||
|
Copyright 2022 Stefan Sundin "4pplet" <4pplet@protonmail.com>
|
||||||
|
|
||||||
|
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] = {
|
||||||
|
// main layer
|
||||||
|
[0] = LAYOUT_60_iso(
|
||||||
|
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_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_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_NUHS, KC_ENT,
|
||||||
|
KC_LSFT, KC_NUBS, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT,
|
||||||
|
KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, KC_RGUI, MO(1), KC_RCTL),
|
||||||
|
// basic function layer
|
||||||
|
[1] = LAYOUT_60_iso(
|
||||||
|
RESET, 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_DEL,
|
||||||
|
KC_TRNS, KC_TRNS, KC_UP, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
|
||||||
|
KC_TRNS, KC_LEFT, KC_DOWN, KC_RIGHT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
|
||||||
|
KC_TRNS, RGB_TOG, RGB_MOD, RGB_HUI, RGB_SAI, RGB_VAI, RGB_SPI, RGB_MODE_PLAIN, RGB_MODE_BREATHE, RGB_MODE_RAINBOW, KC_TRNS, KC_TRNS, KC_TRNS,
|
||||||
|
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS)
|
||||||
|
};
|
|
@ -0,0 +1,49 @@
|
||||||
|
/*
|
||||||
|
Copyright 2022 Stefan Sundin "4pplet" <4pplet@protonmail.com>
|
||||||
|
|
||||||
|
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] = {
|
||||||
|
// main layer// main layer
|
||||||
|
[0] = LAYOUT_60_iso(
|
||||||
|
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_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_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_NUHS, KC_ENT,
|
||||||
|
KC_LSFT, KC_NUBS, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT,
|
||||||
|
KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, KC_RGUI, MO(1), KC_RCTL),
|
||||||
|
// basic function layer
|
||||||
|
[1] = LAYOUT_60_iso(
|
||||||
|
RESET, 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_DEL,
|
||||||
|
KC_TRNS, KC_TRNS, KC_UP, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
|
||||||
|
KC_TRNS, KC_LEFT, KC_DOWN, KC_RIGHT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
|
||||||
|
KC_TRNS, RGB_TOG, RGB_MOD, RGB_HUI, RGB_SAI, RGB_VAI, RGB_SPI, RGB_MODE_PLAIN, RGB_MODE_BREATHE, RGB_MODE_RAINBOW, KC_TRNS, KC_TRNS, KC_TRNS,
|
||||||
|
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS),
|
||||||
|
|
||||||
|
[2] = LAYOUT_60_iso(
|
||||||
|
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_UP, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
|
||||||
|
KC_TRNS, KC_LEFT, KC_DOWN, KC_RIGHT, 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_60_iso(
|
||||||
|
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_UP, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
|
||||||
|
KC_TRNS, KC_LEFT, KC_DOWN, KC_RIGHT, 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)
|
||||||
|
};
|
|
@ -0,0 +1 @@
|
||||||
|
VIA_ENABLE = yes
|
|
@ -0,0 +1,17 @@
|
||||||
|
# Perk60 ISO Rev A
|
||||||
|
|
||||||
|
* Keyboard Maintainer: [4pplet](https://github.com/4pplet)
|
||||||
|
* Hardware Supported: Perk60 ISO Rev A
|
||||||
|
|
||||||
|
Make example for this keyboard (after setting up your build environment):
|
||||||
|
|
||||||
|
make 4pplet/perk60_iso/rev_a: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).
|
||||||
|
|
||||||
|
How to enter bootloader (DFU):
|
||||||
|
* Press and hold the button on the keyboard (the small one on the same side as the MCU) for more than 1 second. The keyboard will then enter bootloader (DFU) mode and it's ready to flash the firmware.
|
||||||
|
* Note: If holding the button a shorter time, the keyboard will just reset. If you want to exit bootloader mode without flashing a firmware, dissconnect the keyboard from your PC and reconnect it.
|
||||||
|
|
||||||
|
Alternative option if the firmware is already pre-flashed:
|
||||||
|
* Unplug your keyboard, hold down the Spacebar and B at the same time, plug in your keyboard and wait a second before releasing the keys. Bootmagic lite is enabled by default.
|
|
@ -0,0 +1,79 @@
|
||||||
|
/*
|
||||||
|
Copyright 2022 Stefan Sundin "4pplet" <4pplet@protonmail.com>
|
||||||
|
|
||||||
|
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
|
||||||
|
|
||||||
|
/* USB Device descriptor parameter */
|
||||||
|
#define VENDOR_ID 0x4444
|
||||||
|
#define PRODUCT_ID 0x0009
|
||||||
|
#define DEVICE_VER 0x0001
|
||||||
|
#define MANUFACTURER 4pplet
|
||||||
|
#define PRODUCT Perk60 ISO Rev A
|
||||||
|
|
||||||
|
#define MATRIX_ROWS 10
|
||||||
|
#define MATRIX_COLS 7
|
||||||
|
|
||||||
|
#define MATRIX_COL_PINS { A1, B12, B14, A2, A0, A3, A4}
|
||||||
|
#define MATRIX_ROW_PINS { C14, C13, B5, B4, B8, A15, B3, B9, A5, A7}
|
||||||
|
#define DIODE_DIRECTION COL2ROW
|
||||||
|
|
||||||
|
/* 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
|
||||||
|
|
||||||
|
/* Set 0 if debouncing isn't needed */
|
||||||
|
#define DEBOUNCE 5
|
||||||
|
|
||||||
|
#define DRIVER_ADDR_1 0b1010000
|
||||||
|
#define DRIVER_COUNT 1
|
||||||
|
#define DRIVER_LED_TOTAL 62
|
||||||
|
#define ISSI_PWM_FREQUENCY 0b010
|
||||||
|
|
||||||
|
#define STM32_HSECLK 8000000
|
||||||
|
|
||||||
|
#define RGB_MATRIX_STARTUP_VAL 80
|
||||||
|
#define RGB_MATRIX_KEYPRESSES
|
||||||
|
|
||||||
|
// RGB Matrix Animation modes. Explicitly enabled
|
||||||
|
// For full list of effects, see:
|
||||||
|
// https://docs.qmk.fm/#/feature_rgb_matrix?id=rgb-matrix-effects
|
||||||
|
#define ENABLE_RGB_MATRIX_ALPHAS_MODS
|
||||||
|
#define ENABLE_RGB_MATRIX_GRADIENT_UP_DOWN
|
||||||
|
#define ENABLE_RGB_MATRIX_GRADIENT_LEFT_RIGHT
|
||||||
|
#define ENABLE_RGB_MATRIX_BREATHING
|
||||||
|
#define ENABLE_RGB_MATRIX_CYCLE_ALL
|
||||||
|
#define ENABLE_RGB_MATRIX_CYCLE_LEFT_RIGHT
|
||||||
|
#define ENABLE_RGB_MATRIX_CYCLE_UP_DOWN
|
||||||
|
#define ENABLE_RGB_MATRIX_RAINBOW_MOVING_CHEVRON
|
||||||
|
#define ENABLE_RGB_MATRIX_CYCLE_OUT_IN
|
||||||
|
#define ENABLE_RGB_MATRIX_CYCLE_OUT_IN_DUAL
|
||||||
|
#define ENABLE_RGB_MATRIX_CYCLE_PINWHEEL
|
||||||
|
#define ENABLE_RGB_MATRIX_CYCLE_SPIRAL
|
||||||
|
#define ENABLE_RGB_MATRIX_DUAL_BEACON
|
||||||
|
#define ENABLE_RGB_MATRIX_RAINBOW_BEACON
|
||||||
|
#define ENABLE_RGB_MATRIX_RAINBOW_PINWHEELS
|
||||||
|
#define ENABLE_RGB_MATRIX_RAINDROPS
|
||||||
|
#define ENABLE_RGB_MATRIX_JELLYBEAN_RAINDROPS
|
||||||
|
// enabled only of RGB_MATRIX_KEYPRESSES or RGB_MATRIX_KEYRELEASES is defined
|
||||||
|
#define ENABLE_RGB_MATRIX_SOLID_REACTIVE_SIMPLE
|
||||||
|
#define ENABLE_RGB_MATRIX_SOLID_REACTIVE
|
||||||
|
#define ENABLE_RGB_MATRIX_SOLID_REACTIVE_WIDE
|
||||||
|
#define ENABLE_RGB_MATRIX_SOLID_REACTIVE_CROSS
|
||||||
|
#define ENABLE_RGB_MATRIX_SOLID_REACTIVE_NEXUS
|
||||||
|
#define ENABLE_RGB_MATRIX_SPLASH
|
||||||
|
#define ENABLE_RGB_MATRIX_SOLID_SPLASH
|
||||||
|
|
|
@ -0,0 +1,25 @@
|
||||||
|
/* Copyright 2020 QMK
|
||||||
|
*
|
||||||
|
* 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 HAL_USE_I2C TRUE
|
||||||
|
|
||||||
|
#define HAL_USE_PWM FALSE
|
||||||
|
|
||||||
|
#define HAL_USE_SPI FALSE
|
||||||
|
|
||||||
|
#include_next <halconf.h>
|
|
@ -0,0 +1,40 @@
|
||||||
|
/* Copyright 2020 QMK
|
||||||
|
*
|
||||||
|
* 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/>.
|
||||||
|
*/
|
||||||
|
|
||||||
|
/*
|
||||||
|
* This file was auto-generated by:
|
||||||
|
* `qmk chibios-confmigrate -i keyboards/acheron/austin/mcuconf.h -r platforms/chibios/GENERIC_STM32_F072XB/configs/mcuconf.h`
|
||||||
|
*/
|
||||||
|
|
||||||
|
#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 168
|
||||||
|
#define STM32_PLLP_VALUE 4
|
||||||
|
#define STM32_PLLQ_VALUE 7
|
||||||
|
#define STM32_PPRE1 STM32_PPRE1_DIV2
|
||||||
|
#define STM32_PPRE2 STM32_PPRE2_DIV1
|
||||||
|
|
||||||
|
#undef STM32_I2C_USE_I2C1
|
||||||
|
#define STM32_I2C_USE_I2C1 TRUE
|
|
@ -0,0 +1,17 @@
|
||||||
|
# Perk60 ISO Rev A
|
||||||
|
|
||||||
|
* Keyboard Maintainer: [4pplet](https://github.com/4pplet)
|
||||||
|
* Hardware Supported: Perk60 ISO Rev A
|
||||||
|
|
||||||
|
Make example for this keyboard (after setting up your build environment):
|
||||||
|
|
||||||
|
make 4pplet/perk60_iso/rev_a: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).
|
||||||
|
|
||||||
|
How to enter bootloader (DFU):
|
||||||
|
* Press and hold the button on the keyboard (the small one on the same side as the MCU) for more than 1 second. The keyboard will then enter bootloader (DFU) mode and it's ready to flash the firmware.
|
||||||
|
* Note: If holding the button a shorter time, the keyboard will just reset. If you want to exit bootloader mode without flashing a firmware, dissconnect the keyboard from your PC and reconnect it.
|
||||||
|
|
||||||
|
Alternative option if the firmware is already pre-flashed:
|
||||||
|
* Unplug your keyboard, hold down the Spacebar and B at the same time, plug in your keyboard and wait a second before releasing the keys. Bootmagic lite is enabled by default.
|
|
@ -0,0 +1,126 @@
|
||||||
|
/*
|
||||||
|
Copyright 2022 Stefan Sundin "4pplet" <4pplet@protonmail.com>
|
||||||
|
|
||||||
|
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 "rev_a.h"
|
||||||
|
|
||||||
|
#ifdef RGB_MATRIX_ENABLE
|
||||||
|
const is31_led PROGMEM g_is31_leds[DRIVER_LED_TOTAL] = {
|
||||||
|
{ 0, K_2, J_2, L_2 }, //D402
|
||||||
|
{ 0, K_3, J_3, L_3 }, //D403
|
||||||
|
{ 0, K_4, J_4, L_4 }, //D404
|
||||||
|
{ 0, K_5, J_5, L_5 }, //D405
|
||||||
|
{ 0, K_6, J_6, L_6 }, //D406
|
||||||
|
{ 0, K_7, J_7, L_7 }, //D407
|
||||||
|
{ 0, K_8, J_8, L_8 }, //D408
|
||||||
|
{ 0, K_9, J_9, L_9 }, //D409
|
||||||
|
{ 0, K_10, J_10, L_10 }, //D410
|
||||||
|
{ 0, K_11, J_11, L_11 }, //D411
|
||||||
|
{ 0, K_12, J_12, L_12 }, //D412
|
||||||
|
{ 0, K_13, J_13, L_13 }, //D413
|
||||||
|
{ 0, K_14, J_14, L_14 }, //D414
|
||||||
|
{ 0, K_15, J_15, L_15 }, //D415
|
||||||
|
{ 0, K_1, J_1, L_1 }, //D401
|
||||||
|
{ 0, H_4, G_4, I_4 }, //D420
|
||||||
|
{ 0, H_5, G_5, I_5 }, //D421
|
||||||
|
{ 0, H_6, G_6, I_6 }, //D422
|
||||||
|
{ 0, H_7, G_7, I_7 }, //D423
|
||||||
|
{ 0, H_8, G_8, I_8 }, //D424
|
||||||
|
{ 0, H_9, G_9, I_9 }, //D425
|
||||||
|
{ 0, H_10, G_10, I_10 }, //D426
|
||||||
|
{ 0, H_11, G_11, I_11 }, //D427
|
||||||
|
{ 0, H_12, G_12, I_12 }, //D428
|
||||||
|
{ 0, H_13, G_13, I_13 }, //D429
|
||||||
|
{ 0, H_14, G_14, I_14 }, //D430
|
||||||
|
{ 0, H_15, G_15, I_15 }, //D431
|
||||||
|
{ 0, K_16, J_16, L_16 }, //D416
|
||||||
|
{ 0, H_2, G_2, I_2 }, //D418
|
||||||
|
{ 0, H_3, G_3, I_3 }, //D419
|
||||||
|
{ 0, E_5, D_5, F_5 }, //D437
|
||||||
|
{ 0, E_6, D_6, F_6 }, //D438
|
||||||
|
{ 0, E_7, D_7, F_7 }, //D439
|
||||||
|
{ 0, E_8, D_8, F_8 }, //D440
|
||||||
|
{ 0, E_9, D_9, F_9 }, //D441
|
||||||
|
{ 0, E_10, D_10, F_10 }, //D442
|
||||||
|
{ 0, E_11, D_11, F_11 }, //D443
|
||||||
|
{ 0, E_12, D_12, F_12 }, //D444
|
||||||
|
{ 0, E_13, D_13, F_13 }, //D445
|
||||||
|
{ 0, E_14, D_14, F_14 }, //D446
|
||||||
|
{ 0, H_16, G_16, I_16 }, //D432
|
||||||
|
{ 0, H_1, G_1, I_1 }, //D417
|
||||||
|
{ 0, E_3, D_3, F_3 }, //D435
|
||||||
|
{ 0, E_4, D_4, F_4 }, //D436
|
||||||
|
{ 0, B_2, A_2, C_2 }, //D450
|
||||||
|
{ 0, B_3, A_3, C_3 }, //D451
|
||||||
|
{ 0, B_4, A_4, C_4 }, //D452
|
||||||
|
{ 0, B_6, A_6, C_6 }, //D454
|
||||||
|
{ 0, B_8, A_8, C_8 }, //D456
|
||||||
|
{ 0, B_9, A_9, C_9 }, //D457
|
||||||
|
{ 0, B_10, A_10, C_10 }, //D458
|
||||||
|
{ 0, B_12, A_12, C_12 }, //D460
|
||||||
|
{ 0, B_13, A_13, C_13 }, //D461
|
||||||
|
{ 0, E_15, D_15, F_15 }, //D447
|
||||||
|
{ 0, E_1, D_1, F_1 }, //D433
|
||||||
|
{ 0, E_2, D_2, F_2 }, //D434
|
||||||
|
{ 0, B_1, A_1, C_1 }, //D449
|
||||||
|
{ 0, B_7, A_7, C_7 }, //D455
|
||||||
|
{ 0, B_11, A_11, C_11 }, //D459
|
||||||
|
{ 0, B_14, A_14, C_14 }, //D462
|
||||||
|
{ 0, B_15, A_15, C_15 }, //D463
|
||||||
|
{ 0, B_16, A_16, C_16 } //D464
|
||||||
|
};
|
||||||
|
|
||||||
|
led_config_t g_led_config = {
|
||||||
|
{
|
||||||
|
#define XXX NO_LED
|
||||||
|
|
||||||
|
{ 0, 2, 4, 6, 8, 10, 12 },
|
||||||
|
{ 1, 3, 5, 7, 9, 11, XXX },
|
||||||
|
{ 14, 16, 18, 20, 22, 24, 26 },
|
||||||
|
{ 15, 17, 19, 21, 23, 25, 13 },
|
||||||
|
{ 28, 30, 32, 34, 36, 38, 40 },
|
||||||
|
{ 29, 31, 33, 35, 37, 39, XXX },
|
||||||
|
{ 41, 43, 45, 47, 49, 51, XXX },
|
||||||
|
{ 42, 44, 46, 48, 50, 52, 27 },
|
||||||
|
{ 54, 55, XXX, 57, XXX, 60, 53 },
|
||||||
|
{ 56, XXX, XXX, 58, 59, 61, XXX },
|
||||||
|
|
||||||
|
}, {
|
||||||
|
{ 0,0 }, { 16,0 }, { 32,0 }, { 48,0 }, { 65,0 }, { 81,0 }, { 97,0 }, {113,0 }, {129,0 }, {145,0 },
|
||||||
|
{161,0 }, {178,0 }, {194,0 }, {218,0 }, { 4,16 }, { 24,16 }, { 40,16 }, { 57,16 }, { 73,16 }, { 89,16 },
|
||||||
|
{105,16 }, {121,16 }, {137,16 }, {153,16 }, {170,16 }, {186,16 }, {202,16 }, {224,24 }, { 6,32 }, { 28,32 },
|
||||||
|
{ 44,32 }, { 61,32 }, { 77,32 }, { 93,32 }, {109,32 }, {125,32 }, {141,32 }, {157,32 }, {174,32 }, {190,32 },
|
||||||
|
{206,32 }, { 2,48 }, { 20,48 }, { 36,48 }, { 52,48 }, { 69,48 }, { 85,48 }, {101,48 }, {117,48 }, {133,48 },
|
||||||
|
{149,48 }, {165,48 }, {182,48 }, {212,48 }, { 2,64 }, { 22,64 }, { 42,64 }, {103,64 }, {163,64 }, {184,64 },
|
||||||
|
{204,64 }, {224,64 },
|
||||||
|
}, {
|
||||||
|
1, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1,
|
||||||
|
1, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1,
|
||||||
|
8, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1,
|
||||||
|
1, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1,
|
||||||
|
1, 1, 1, 4, 1, 1, 1, 1
|
||||||
|
}
|
||||||
|
};
|
||||||
|
|
||||||
|
__attribute__((weak)) void rgb_matrix_indicators_advanced_user(uint8_t led_min, uint8_t led_max) {
|
||||||
|
if (host_keyboard_led_state().caps_lock && CAPS_LOCK_ENABLE) {
|
||||||
|
for (uint8_t i = led_min; i <= led_max; i++) {
|
||||||
|
if (g_led_config.flags[i] & CAPS_LED_GROUP) {
|
||||||
|
rgb_matrix_set_color(i, CAPS_LOCK_COLOR);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
#endif
|
|
@ -0,0 +1,43 @@
|
||||||
|
/*
|
||||||
|
Copyright 2022 Stefan Sundin "4pplet" <4pplet@protonmail.com>
|
||||||
|
|
||||||
|
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 CAPS_LOCK_ENABLE true
|
||||||
|
#define CAPS_LOCK_COLOR RGB_RED
|
||||||
|
#define CAPS_LED_GROUP LED_FLAG_INDICATOR // change what leds to target, for example LED_FLAG_KEYLIGHT for alpas or LED_FLAG_MODIFIER for modifiers
|
||||||
|
|
||||||
|
#include "quantum.h"
|
||||||
|
|
||||||
|
#define LAYOUT_60_iso( \
|
||||||
|
k00, k10, k01, k11, k02, k12, k03, k13, k04, k14, k05, k15, k06, k36, \
|
||||||
|
k20, k30, k21, k31, k22, k32, k23, k33, k24, k34, k25, k35, k26, \
|
||||||
|
k40, k50, k41, k51, k42, k52, k43, k53, k44, k54, k45, k55, k46, k76, \
|
||||||
|
k60, k70, k61, k71, k62, k72, k63, k73, k64, k74, k65, k75, k86,\
|
||||||
|
k80, k90, k81, k83, k93, k94, k85, k95 \
|
||||||
|
) \
|
||||||
|
{ \
|
||||||
|
{k00, k01, k02, k03, k04, k05, k06}, \
|
||||||
|
{k10, k11, k12, k13, k14, k15, KC_NO}, \
|
||||||
|
{k20, k21, k22, k23, k24, k25, k26}, \
|
||||||
|
{k30, k31, k32, k33, k34, k35, k36}, \
|
||||||
|
{k40, k41, k42, k43, k44, k45, k46}, \
|
||||||
|
{k50, k51, k52, k53, k54, k55, KC_NO}, \
|
||||||
|
{k60, k61, k62, k63, k64, k65, KC_NO}, \
|
||||||
|
{k70, k71, k72, k73, k74, k75, k76}, \
|
||||||
|
{k80, k81, KC_NO, k83, KC_NO, k85, k86}, \
|
||||||
|
{k90, KC_NO, KC_NO, k93, k94, k95, KC_NO} \
|
||||||
|
}
|
|
@ -0,0 +1,25 @@
|
||||||
|
# MCU name
|
||||||
|
MCU = STM32F411
|
||||||
|
|
||||||
|
# Bootloader selection
|
||||||
|
BOOTLOADER = stm32-dfu
|
||||||
|
|
||||||
|
# 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 = 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
|
||||||
|
RGB_MATRIX_ENABLE = yes
|
||||||
|
RGB_MATRIX_DRIVER = IS31FL3733
|
||||||
|
|
||||||
|
LAYOUTS = 60_iso
|
||||||
|
|
||||||
|
# Enter lower-power sleep mode when on the ChibiOS idle thread
|
||||||
|
OPT_DEFS += -DCORTEX_ENABLE_WFI_IDLE=TRUE
|
|
@ -31,7 +31,7 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||||
k40, k50, k41, k51, k42, k52, k43, k53, k44, k54, k45, k55, k46, k56, k47, k77, kb7, \
|
k40, k50, k41, k51, k42, k52, k43, k53, k44, k54, k45, k55, k46, k56, k47, k77, kb7, \
|
||||||
k60, k70, k61, k71, k62, k72, k63, k73, k64, k74, k65, k75, k66, k76, \
|
k60, k70, k61, k71, k62, k72, k63, k73, k64, k74, k65, k75, k66, k76, \
|
||||||
k80, k90, k81, k91, k82, k92, k83, k93, k84, k94, k85, k95, k86, k96, k87, \
|
k80, k90, k81, k91, k82, k92, k83, k93, k84, k94, k85, k95, k86, k96, k87, \
|
||||||
ka0, ka1, kb1, kb2, ka3, kb3, ka4, kb4, ka5, kb5, ka6, kb6, ka7, \
|
ka0, kb1, ka1, kb2, ka3, kb3, ka4, kb4, ka5, kb5, ka6, kb6, ka7, \
|
||||||
kb0, ka2 \
|
kb0, ka2 \
|
||||||
) \
|
) \
|
||||||
{ \
|
{ \
|
||||||
|
|
|
@ -0,0 +1,16 @@
|
||||||
|
/* Copyright 2022 Alvaro "Gondolindrim" Volpato
|
||||||
|
*
|
||||||
|
* 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 "87h.h"
|
|
@ -0,0 +1,24 @@
|
||||||
|
/* Copyright 2022 Alvaro "Gondolindrim" Volpato
|
||||||
|
*
|
||||||
|
* 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"
|
||||||
|
|
||||||
|
#if defined(KEYBOARD_acheron_apollo_87h_gamma)
|
||||||
|
#include "gamma.h"
|
||||||
|
#elif defined(KEYBOARD_acheron_apollo_87h_delta)
|
||||||
|
#include "delta.h"
|
||||||
|
#endif
|
|
@ -0,0 +1,116 @@
|
||||||
|
/*
|
||||||
|
Copyright 2022 Álvaro "Gondolindrim" Volpato <alvaro.volpato@usp.br>
|
||||||
|
|
||||||
|
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
|
||||||
|
|
||||||
|
/* USB Device descriptor parameter */
|
||||||
|
#define VENDOR_ID 0x4150 // AP for AcheronProject
|
||||||
|
#define PRODUCT_ID 0x8775 // For 87H + 3 (revision Delta)
|
||||||
|
#define DEVICE_VER 0x0004 // Revision Delta
|
||||||
|
#define MANUFACTURER AcheronProject
|
||||||
|
#define PRODUCT Apollo87H
|
||||||
|
|
||||||
|
/* key matrix size */
|
||||||
|
#define MATRIX_ROWS 6
|
||||||
|
#define MATRIX_COLS 17
|
||||||
|
|
||||||
|
// C0 , C1 , C2 , C3 , C4 , C5 , C6 , C7 , C8 , C9 , C10, C11, C12, C13, C14, C15, C16 }
|
||||||
|
#define MATRIX_COL_PINS { C8 , C9 , A8 , A10, C7 , C6 , B14, B12, B10, B1 , C5 , C4 , A7 , B0 , C11, A3 , B4 }
|
||||||
|
// R0 , R1 , R2 , R3 , R4 , R5
|
||||||
|
#define MATRIX_ROW_PINS { B3 , D2 , C12, A6 , A5 , A4 }
|
||||||
|
#define DIODE_DIRECTION COL2ROW
|
||||||
|
|
||||||
|
/* define if matrix has ghost */
|
||||||
|
//#define MATRIX_HAS_GHOST
|
||||||
|
|
||||||
|
/* Set 0 if debouncing isn't needed */
|
||||||
|
#define DEBOUNCE 5
|
||||||
|
|
||||||
|
/* 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
|
||||||
|
|
||||||
|
#define EEPROM_I2C_24LC256
|
||||||
|
//#define I2C1_CLOCK_SPEED 400000
|
||||||
|
//#define I2C1_DUTY_CYCLE FAST_DUTY_CYCLE_2
|
||||||
|
|
||||||
|
#define EARLY_INIT_PERFORM_BOOTLOADER_JUMP TRUE
|
||||||
|
|
||||||
|
#define STM32_HSECLK 8000000
|
||||||
|
|
||||||
|
#define RGB_DI_PIN B15
|
||||||
|
#define DRIVER_LED_TOTAL 87
|
||||||
|
|
||||||
|
#define WS2812_PWM_COMPLEMENTARY_OUTPUT
|
||||||
|
#define WS2812_PWM_DRIVER PWMD1
|
||||||
|
#define WS2812_PWM_CHANNEL 3
|
||||||
|
#define WS2812_PWM_PAL_MODE 1
|
||||||
|
#define WS2812_DMA_STREAM STM32_DMA2_STREAM5
|
||||||
|
#define WS2812_DMA_CHANNEL 6
|
||||||
|
|
||||||
|
#define RGB_MATRIX_STARTUP_VAL 60
|
||||||
|
#define RGB_MATRIX_FRAMEBUFFER_EFFECTS
|
||||||
|
#define RGB_MATRIX_KEYPRESSES
|
||||||
|
#define RGB_DISABLE_WHEN_USB_SUSPENDED // turn off effects when suspended
|
||||||
|
#define RGB_MATRIX_STARTUP_MODE RGB_MATRIX_CYCLE_LEFT_RIGHT
|
||||||
|
|
||||||
|
#define ENABLE_RGB_MATRIX_ALPHAS_MODS
|
||||||
|
#define ENABLE_RGB_MATRIX_GRADIENT_UP_DOWN
|
||||||
|
#define ENABLE_RGB_MATRIX_GRADIENT_LEFT_RIGHT
|
||||||
|
#define ENABLE_RGB_MATRIX_BREATHING
|
||||||
|
#define ENABLE_RGB_MATRIX_BAND_SAT
|
||||||
|
#define ENABLE_RGB_MATRIX_BAND_VAL
|
||||||
|
#define ENABLE_RGB_MATRIX_BAND_PINWHEEL_SAT
|
||||||
|
#define ENABLE_RGB_MATRIX_BAND_PINWHEEL_VAL
|
||||||
|
#define ENABLE_RGB_MATRIX_BAND_SPIRAL_SAT
|
||||||
|
#define ENABLE_RGB_MATRIX_BAND_SPIRAL_VAL
|
||||||
|
#define ENABLE_RGB_MATRIX_CYCLE_ALL
|
||||||
|
#define ENABLE_RGB_MATRIX_CYCLE_LEFT_RIGHT
|
||||||
|
#define ENABLE_RGB_MATRIX_CYCLE_UP_DOWN
|
||||||
|
#define ENABLE_RGB_MATRIX_RAINBOW_MOVING_CHEVRON
|
||||||
|
#define ENABLE_RGB_MATRIX_CYCLE_OUT_IN
|
||||||
|
#define ENABLE_RGB_MATRIX_CYCLE_OUT_IN_DUAL
|
||||||
|
#define ENABLE_RGB_MATRIX_CYCLE_PINWHEEL
|
||||||
|
#define ENABLE_RGB_MATRIX_CYCLE_SPIRAL
|
||||||
|
#define ENABLE_RGB_MATRIX_DUAL_BEACON
|
||||||
|
#define ENABLE_RGB_MATRIX_RAINBOW_BEACON
|
||||||
|
#define ENABLE_RGB_MATRIX_RAINBOW_PINWHEELS
|
||||||
|
#define ENABLE_RGB_MATRIX_RAINDROPS
|
||||||
|
#define ENABLE_RGB_MATRIX_JELLYBEAN_RAINDROPS
|
||||||
|
#define ENABLE_RGB_MATRIX_HUE_BREATHING
|
||||||
|
#define ENABLE_RGB_MATRIX_HUE_PENDULUM
|
||||||
|
#define ENABLE_RGB_MATRIX_HUE_WAVE
|
||||||
|
#define ENABLE_RGB_MATRIX_FRACTAL
|
||||||
|
#define ENABLE_RGB_MATRIX_PIXEL_RAIN
|
||||||
|
#define ENABLE_RGB_MATRIX_PIXEL_FLOW
|
||||||
|
|
||||||
|
#define ENABLE_RGB_MATRIX_TYPING_HEATMAP
|
||||||
|
#define ENABLE_RGB_MATRIX_DIGITAL_RAIN
|
||||||
|
|
||||||
|
#define ENABLE_RGB_MATRIX_SOLID_REACTIVE_SIMPLE
|
||||||
|
#define ENABLE_RGB_MATRIX_SOLID_REACTIVE
|
||||||
|
#define ENABLE_RGB_MATRIX_SOLID_REACTIVE_WIDE
|
||||||
|
#define ENABLE_RGB_MATRIX_SOLID_REACTIVE_MULTIWIDE
|
||||||
|
#define ENABLE_RGB_MATRIX_SOLID_REACTIVE_CROSS
|
||||||
|
#define ENABLE_RGB_MATRIX_SOLID_REACTIVE_MULTICROSS
|
||||||
|
#define ENABLE_RGB_MATRIX_SOLID_REACTIVE_NEXUS
|
||||||
|
#define ENABLE_RGB_MATRIX_SOLID_REACTIVE_MULTINEXUS
|
||||||
|
#define ENABLE_RGB_MATRIX_SPLASH
|
||||||
|
#define ENABLE_RGB_MATRIX_MULTISPLASH
|
||||||
|
#define ENABLE_RGB_MATRIX_SOLID_SPLASH
|
||||||
|
#define ENABLE_RGB_MATRIX_SOLID_MULTISPLASH
|
|
@ -0,0 +1,61 @@
|
||||||
|
/*
|
||||||
|
Copyright 2022 Álvaro "Gondolindrim" Volpato <alvaro.volpato@usp.br>
|
||||||
|
|
||||||
|
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 "delta.h"
|
||||||
|
|
||||||
|
void board_init(void) {
|
||||||
|
setPinInput(B9);
|
||||||
|
setPinInput(B10);
|
||||||
|
}
|
||||||
|
|
||||||
|
led_config_t g_led_config = { {
|
||||||
|
// { 0 , 1 , 2 , 3 , 4 , 5 , 6 , 7 , 8 , 9 , 10 , 11 , 12 , NO_LED , 13 , 14 , 15 },
|
||||||
|
// { 16 , 17 , 18 , 19 , 20 , 21 , 22 , 23 , 24 , 25 , 26 , 27 , 28 , 29 , 30 , 31 , 32 },
|
||||||
|
// { 33 , 34 , 35 , 36 , 37 , 38 , 39 , 40 , 41 , 42 , 43 , 44 , 45 , 46 , 47 , 48 , 49 },
|
||||||
|
// { 50 , 51 , 52 , 53 , 54 , 55 , 56 , 57 , 58 , 59 , 60 , 61 , 62 , NO_LED , NO_LED , NO_LED , NO_LED },
|
||||||
|
// { 63 , NO_LED , 64 , 65 , 66 , 67 , 68 , 69 , 70 , 71 , 72 , 73 , 74 , NO_LED , NO_LED , 75 , NO_LED },
|
||||||
|
// { 76 , 77 , 78 , NO_LED , NO_LED , NO_LED , 79 , NO_LED , NO_LED , 80 , 81 , 82 , 83 , NO_LED , 84 , 85 , 86 }
|
||||||
|
//
|
||||||
|
{ 15 , 14 , 13 , 12 , 11 , 10 , 9 , 8 , 7 , 6 , 5 , 4 , 3 , NO_LED , 2 , 1 , 0 },
|
||||||
|
{ 16 , 17 , 18 , 19 , 20 , 21 , 22 , 23 , 24 , 25 , 26 , 27 , 28 , 29 , 30 , 31 , 32 },
|
||||||
|
{ 49 , 48 , 47 , 46 , 45 , 44 , 43 , 42 , 41 , 40 , 39 , 38 , 37 , 36 , 35 , 34 , 33 },
|
||||||
|
{ 50 , 51 , 52 , 53 , 54 , 55 , 56 , 57 , 58 , 59 , 60 , 61 , 62 , NO_LED , NO_LED , NO_LED , NO_LED },
|
||||||
|
{ 75 , NO_LED , 74 , 73 , 72 , 71 , 70 , 69 , 68 , 67 , 66 , 65 , 64 , NO_LED , NO_LED , 63 , NO_LED },
|
||||||
|
{ 76 , 77 , 78 , NO_LED , NO_LED , NO_LED , 79 , NO_LED , NO_LED , 80 , 81 , 82 , 83 , NO_LED , 84 , 85 , 86 }
|
||||||
|
},{
|
||||||
|
// "Fine-tuned" complex configuration
|
||||||
|
{ 210, 0}, { 196, 0}, { 182, 0}, { 168, 0}, { 154, 0}, { 140, 0}, { 140, 0}, { 126, 0}, { 112, 0}, { 98, 0}, { 84, 0}, { 70, 0}, { 56, 0}, { 28, 0}, { 14, 0}, { 0, 0},
|
||||||
|
{ 0, 45}, { 14, 45}, { 28, 45}, { 42, 45}, { 56, 45}, { 70, 45}, { 84, 45}, { 98, 45}, { 112, 45}, { 126, 45}, { 140, 45}, { 154, 45}, { 168, 45}, { 182, 45}, { 196, 45}, { 210, 45}, { 224, 45},
|
||||||
|
{ 224, 90}, { 210, 90}, { 196, 90}, { 182, 90}, { 168, 90}, { 154, 90}, { 140, 90}, { 126, 90}, { 112, 90}, { 98, 90}, { 84, 90}, { 70, 90}, { 56, 90}, { 42, 90}, { 28, 90}, { 14, 90}, { 0, 90},
|
||||||
|
{ 0, 135}, { 14, 135}, { 28, 135}, { 42, 135}, { 56, 135}, { 70, 135}, { 84, 135}, { 98, 135}, { 112, 135}, { 126, 135}, { 140, 135}, { 154, 135}, { 168, 135},
|
||||||
|
{ 192, 180}, { 168, 180}, { 154, 180}, { 140, 180}, { 126, 180}, { 112, 180}, { 98, 180}, { 84, 180}, { 70, 180}, { 56, 180}, { 42, 180}, { 28, 180}, { 14, 180},
|
||||||
|
{ 0, 225}, { 14, 225}, { 28, 225}, { 84, 225}, { 126, 225}, { 140, 225}, { 154, 225}, { 168, 225}, { 196, 45}, { 210, 45}, { 224, 90}
|
||||||
|
// "Stock" simple configuration
|
||||||
|
// { 224, 0}, { 210, 0}, { 196, 0}, { 182, 0}, { 168, 0}, { 154, 0}, { 140, 0}, { 126, 0}, { 112, 0}, { 98, 0}, { 84, 0}, { 70, 0}, { 56, 0}, { 28, 0}, { 14, 0}, { 0, 0},
|
||||||
|
// { 0, 45}, { 14, 45}, { 28, 45}, { 42, 45}, { 56, 45}, { 70, 45}, { 84, 45}, { 98, 45}, { 112, 45}, { 126, 45}, { 140, 45}, { 154, 45}, { 168, 45}, { 182, 45}, { 196, 45}, { 210, 45}, { 224, 45},
|
||||||
|
// { 224, 90}, { 210, 90}, { 196, 90}, { 182, 90}, { 168, 90}, { 154, 90}, { 140, 90}, { 126, 90}, { 112, 90}, { 98, 90}, { 84, 90}, { 70, 90}, { 56, 90}, { 42, 90}, { 28, 90}, { 14, 90}, { 0, 90},
|
||||||
|
// { 0, 135}, { 14, 135}, { 28, 135}, { 42, 135}, { 56, 135}, { 70, 135}, { 84, 135}, { 98, 135}, { 112, 135}, { 126, 135}, { 140, 135}, { 154, 135}, { 168, 135},
|
||||||
|
// { 224, 180}, { 196, 180}, { 182, 180}, { 168, 180}, { 154, 180}, { 140, 180}, { 126, 180}, { 112, 180}, { 98, 180}, { 84, 180}, { 70, 180}, { 56, 180}, { 14, 180},
|
||||||
|
// { 0, 225}, { 14, 225}, { 28, 225}, { 84, 225}, { 126, 225}, { 140, 225}, { 154, 225}, { 168, 225}, { 196, 45}, { 210, 45}, { 224, 90}
|
||||||
|
}, {
|
||||||
|
1 , 4 , 4 , 4 , 4 , 4 , 4 , 4 , 4 , 4 , 4 , 4 , 4 , 4 , 4 , 4 ,
|
||||||
|
4 , 4 , 4 , 4 , 4 , 4 , 4 , 4 , 4 , 4 , 4 , 4 , 4 , 4 , 4 , 4 , 4 ,
|
||||||
|
4 , 4 , 4 , 4 , 4 , 4 , 4 , 4 , 4 , 4 , 4 , 4 , 4 , 4 , 4 , 4 , 4 ,
|
||||||
|
4 , 4 , 4 , 4 , 4 , 4 , 4 , 4 , 4 , 4 , 4 , 4 , 1 ,
|
||||||
|
1 , 4 , 4 , 4 , 4 , 4 , 4 , 4 , 4 , 4 , 4 , 1 , 1 ,
|
||||||
|
1 , 1 , 1 , 4 , 1 , 1 , 1 , 1 , 1 , 1 , 1
|
||||||
|
} };
|
|
@ -0,0 +1,38 @@
|
||||||
|
/*
|
||||||
|
Copyright 2022 Álvaro "Gondolindrim" Volpato <alvaro.volpato@usp.br>
|
||||||
|
|
||||||
|
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 ___ KC_NO
|
||||||
|
|
||||||
|
#define LAYOUT_tkl_ansi( \
|
||||||
|
K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0E, K0F, K0G, \
|
||||||
|
K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K1D, K1E, K1F, K1G, \
|
||||||
|
K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C, K2D, K2E, K2F, K2G, \
|
||||||
|
K30, K31, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, \
|
||||||
|
K40, K42, K43, K44, K45, K46, K47, K48, K49, K4A, K4B, K4C, K4F, \
|
||||||
|
K50, K51, K52, K56, K59, K5A, K5B, K5C, K5E, K5F, K5G \
|
||||||
|
) { \
|
||||||
|
{ K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, ___, K0E, K0F, K0G }, \
|
||||||
|
{ K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K1D, K1E, K1F, K1G }, \
|
||||||
|
{ K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C, K2D, K2E, K2F, K2G }, \
|
||||||
|
{ K30, K31, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, ___, ___, ___, ___ }, \
|
||||||
|
{ K40, ___, K42, K43, K44, K45, K46, K47, K48, K49, K4A, K4B, K4C, ___, ___, K4F, ___ }, \
|
||||||
|
{ K50, K51, K52, ___, ___, ___, K56, ___, ___, K59, K5A, K5B, K5C, ___, K5E, K5F, K5G } \
|
||||||
|
}
|
|
@ -0,0 +1,24 @@
|
||||||
|
/* Copyright 2022 QMK
|
||||||
|
*
|
||||||
|
* 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 HAL_USE_I2C TRUE
|
||||||
|
|
||||||
|
#define HAL_USE_PWM TRUE
|
||||||
|
#define HAL_USE_PAL TRUE
|
||||||
|
|
||||||
|
#include_next <halconf.h>
|
|
@ -0,0 +1,53 @@
|
||||||
|
/*
|
||||||
|
Copyright 2020 Álvaro "Gondolindrim" Volpato <alvaro.volpato@usp.br>
|
||||||
|
|
||||||
|
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_tkl_ansi(
|
||||||
|
KC_ESC , 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_PSCR, KC_SCRL, KC_PAUS ,
|
||||||
|
KC_GRV , 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_INS , KC_HOME, KC_PGUP ,
|
||||||
|
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_END , KC_PGDN ,
|
||||||
|
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_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_RALT, MO(1) , KC_RGUI, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT
|
||||||
|
),
|
||||||
|
[1] = LAYOUT_tkl_ansi(
|
||||||
|
RESET , 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, RGB_HUI, RGB_SAI, RGB_VAI, RGB_SPI, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
|
||||||
|
KC_TRNS, RGB_TOG, RGB_MOD, RGB_HUD, RGB_SAD, RGB_VAD, RGB_SPD, 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
|
||||||
|
),
|
||||||
|
[2] = LAYOUT_tkl_ansi(
|
||||||
|
RESET , 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, 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_tkl_ansi(
|
||||||
|
RESET , 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, 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
|
||||||
|
)
|
||||||
|
};
|
|
@ -0,0 +1,53 @@
|
||||||
|
/*
|
||||||
|
Copyright 2020 Álvaro "Gondolindrim" Volpato <alvaro.volpato@usp.br>
|
||||||
|
|
||||||
|
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_tkl_ansi(
|
||||||
|
KC_ESC , 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_PSCR, KC_SCRL, KC_PAUS ,
|
||||||
|
KC_GRV , 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_INS , KC_HOME, KC_PGUP ,
|
||||||
|
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_END , KC_PGDN ,
|
||||||
|
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_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_RALT, MO(1) , KC_RGUI, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT
|
||||||
|
),
|
||||||
|
[1] = LAYOUT_tkl_ansi(
|
||||||
|
RESET , 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, RGB_HUI, RGB_SAI, RGB_VAI, RGB_SPI, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
|
||||||
|
KC_TRNS, RGB_TOG, RGB_MOD, RGB_HUD, RGB_SAD, RGB_VAD, RGB_SPD, 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
|
||||||
|
),
|
||||||
|
[2] = LAYOUT_tkl_ansi(
|
||||||
|
RESET , 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, 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_tkl_ansi(
|
||||||
|
RESET , 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, 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
|
||||||
|
)
|
||||||
|
};
|
|
@ -0,0 +1 @@
|
||||||
|
VIA_ENABLE = yes
|
|
@ -0,0 +1,41 @@
|
||||||
|
/* Copyright 2022 QMK
|
||||||
|
*
|
||||||
|
* 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_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 168
|
||||||
|
#define STM32_PLLP_VALUE 4
|
||||||
|
#define STM32_PLLQ_VALUE 7
|
||||||
|
#define STM32_PPRE1 STM32_PPRE1_DIV2
|
||||||
|
#define STM32_PPRE2 STM32_PPRE2_DIV1
|
||||||
|
|
||||||
|
#undef STM32_I2C_USE_I2C1
|
||||||
|
#define STM32_I2C_USE_I2C1 TRUE
|
||||||
|
|
||||||
|
#undef STM32_PWM_USE_ADVANCED
|
||||||
|
#define STM32_PWM_USE_ADVANCED TRUE
|
||||||
|
|
||||||
|
#undef STM32_PWM_USE_TIM1
|
||||||
|
#define STM32_PWM_USE_TIM1 TRUE
|
|
@ -0,0 +1,24 @@
|
||||||
|
# MCU name
|
||||||
|
MCU = STM32F401
|
||||||
|
|
||||||
|
# Bootloader selection
|
||||||
|
BOOTLOADER = stm32-dfu
|
||||||
|
|
||||||
|
# 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 = no # Console for debug
|
||||||
|
COMMAND_ENABLE = no # Commands for debug and configuration
|
||||||
|
NKRO_ENABLE = no # Enable N-Key Rollover
|
||||||
|
BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality
|
||||||
|
RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow
|
||||||
|
AUDIO_ENABLE = no # Audio output
|
||||||
|
RGB_MATRIX_ENABLE = yes
|
||||||
|
RGB_MATRIX_DRIVER = WS2812
|
||||||
|
EEPROM_DRIVER = i2c
|
||||||
|
|
||||||
|
# Enter lower-power sleep mode when on the ChibiOS idle thread
|
||||||
|
OPT_DEFS += -DCORTEX_ENABLE_WFI_IDLE=TRUE -DDEBUG_EEPROM_OUTPUT=TRUE
|
|
@ -0,0 +1,113 @@
|
||||||
|
/*
|
||||||
|
Copyright 2022 Álvaro "Gondolindrim" Volpato <alvaro.volpato@usp.br>
|
||||||
|
|
||||||
|
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
|
||||||
|
|
||||||
|
/* USB Device descriptor parameter */
|
||||||
|
#define VENDOR_ID 0x4150 // AP for AcheronProject
|
||||||
|
#define PRODUCT_ID 0x8774 // For 87H + 2 (revision Gamma)
|
||||||
|
#define DEVICE_VER 0x0003 // Revision Gamma
|
||||||
|
#define MANUFACTURER AcheronProject
|
||||||
|
#define PRODUCT Apollo87H rev. Gamma
|
||||||
|
|
||||||
|
/* key matrix size */
|
||||||
|
#define MATRIX_ROWS 6
|
||||||
|
#define MATRIX_COLS 16
|
||||||
|
|
||||||
|
// C0 , C1 , C2 , C3 , C4 , C5 , C6 , C7 , C8 , C9 , C10, C11, C12, C13, C14, C15 }
|
||||||
|
#define MATRIX_COL_PINS { B3 , A15, A10, A8 , B14, B12, B10, B1 , B0 , A7 , A4 , A5 , A6 , C15, A0 , A1 }
|
||||||
|
// R0 , R1 , R2 , R3 , R4 , R5
|
||||||
|
#define MATRIX_ROW_PINS { C14, C13, B9 , B4 , A3 , A2 }
|
||||||
|
#define DIODE_DIRECTION COL2ROW
|
||||||
|
|
||||||
|
/* define if matrix has ghost */
|
||||||
|
//#define MATRIX_HAS_GHOST
|
||||||
|
|
||||||
|
/* Set 0 if debouncing isn't needed */
|
||||||
|
#define DEBOUNCE 5
|
||||||
|
|
||||||
|
/* 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
|
||||||
|
|
||||||
|
#define EEPROM_I2C_24LC256
|
||||||
|
//#define I2C1_CLOCK_SPEED 400000
|
||||||
|
//#define I2C1_DUTY_CYCLE FAST_DUTY_CYCLE_2
|
||||||
|
|
||||||
|
#define EARLY_INIT_PERFORM_BOOTLOADER_JUMP TRUE
|
||||||
|
|
||||||
|
#define STM32_HSECLK 8000000
|
||||||
|
|
||||||
|
// RGB Matrix defines
|
||||||
|
#define DRIVER_ADDR_1 0b0110000
|
||||||
|
|
||||||
|
#define DRIVER_COUNT 1
|
||||||
|
#define DRIVER_1_LED_TOTAL 87
|
||||||
|
#define DRIVER_LED_TOTAL DRIVER_1_LED_TOTAL
|
||||||
|
#define ISSI_DRIVER_TOTAL DRIVER_LED_TOTAL
|
||||||
|
|
||||||
|
#define RGB_MATRIX_STARTUP_VAL 80
|
||||||
|
#define RGB_MATRIX_FRAMEBUFFER_EFFECTS
|
||||||
|
#define RGB_MATRIX_KEYPRESSES
|
||||||
|
#define RGB_DISABLE_WHEN_USB_SUSPENDED // turn off effects when suspended
|
||||||
|
#define RGB_MATRIX_STARTUP_MODE RGB_MATRIX_HUE_WAVE
|
||||||
|
|
||||||
|
#define ENABLE_RGB_MATRIX_ALPHAS_MODS
|
||||||
|
#define ENABLE_RGB_MATRIX_GRADIENT_UP_DOWN
|
||||||
|
#define ENABLE_RGB_MATRIX_GRADIENT_LEFT_RIGHT
|
||||||
|
#define ENABLE_RGB_MATRIX_BREATHING
|
||||||
|
#define ENABLE_RGB_MATRIX_BAND_SAT
|
||||||
|
#define ENABLE_RGB_MATRIX_BAND_VAL
|
||||||
|
#define ENABLE_RGB_MATRIX_BAND_PINWHEEL_SAT
|
||||||
|
#define ENABLE_RGB_MATRIX_BAND_PINWHEEL_VAL
|
||||||
|
#define ENABLE_RGB_MATRIX_BAND_SPIRAL_SAT
|
||||||
|
#define ENABLE_RGB_MATRIX_BAND_SPIRAL_VAL
|
||||||
|
#define ENABLE_RGB_MATRIX_CYCLE_ALL
|
||||||
|
#define ENABLE_RGB_MATRIX_CYCLE_LEFT_RIGHT
|
||||||
|
#define ENABLE_RGB_MATRIX_CYCLE_UP_DOWN
|
||||||
|
#define ENABLE_RGB_MATRIX_RAINBOW_MOVING_CHEVRON
|
||||||
|
#define ENABLE_RGB_MATRIX_CYCLE_OUT_IN
|
||||||
|
#define ENABLE_RGB_MATRIX_CYCLE_OUT_IN_DUAL
|
||||||
|
#define ENABLE_RGB_MATRIX_CYCLE_PINWHEEL
|
||||||
|
#define ENABLE_RGB_MATRIX_CYCLE_SPIRAL
|
||||||
|
#define ENABLE_RGB_MATRIX_DUAL_BEACON
|
||||||
|
#define ENABLE_RGB_MATRIX_RAINBOW_BEACON
|
||||||
|
#define ENABLE_RGB_MATRIX_RAINBOW_PINWHEELS
|
||||||
|
#define ENABLE_RGB_MATRIX_RAINDROPS
|
||||||
|
#define ENABLE_RGB_MATRIX_JELLYBEAN_RAINDROPS
|
||||||
|
#define ENABLE_RGB_MATRIX_HUE_BREATHING
|
||||||
|
#define ENABLE_RGB_MATRIX_HUE_PENDULUM
|
||||||
|
#define ENABLE_RGB_MATRIX_HUE_WAVE
|
||||||
|
#define ENABLE_RGB_MATRIX_FRACTAL
|
||||||
|
#define ENABLE_RGB_MATRIX_PIXEL_RAIN
|
||||||
|
|
||||||
|
#define ENABLE_RGB_MATRIX_TYPING_HEATMAP
|
||||||
|
#define ENABLE_RGB_MATRIX_DIGITAL_RAIN
|
||||||
|
|
||||||
|
#define ENABLE_RGB_MATRIX_SOLID_REACTIVE_SIMPLE
|
||||||
|
#define ENABLE_RGB_MATRIX_SOLID_REACTIVE
|
||||||
|
#define ENABLE_RGB_MATRIX_SOLID_REACTIVE_WIDE
|
||||||
|
#define ENABLE_RGB_MATRIX_SOLID_REACTIVE_MULTIWIDE
|
||||||
|
#define ENABLE_RGB_MATRIX_SOLID_REACTIVE_CROSS
|
||||||
|
#define ENABLE_RGB_MATRIX_SOLID_REACTIVE_MULTICROSS
|
||||||
|
#define ENABLE_RGB_MATRIX_SOLID_REACTIVE_NEXUS
|
||||||
|
#define ENABLE_RGB_MATRIX_SOLID_REACTIVE_MULTINEXUS
|
||||||
|
#define ENABLE_RGB_MATRIX_SPLASH
|
||||||
|
#define ENABLE_RGB_MATRIX_MULTISPLASH
|
||||||
|
#define ENABLE_RGB_MATRIX_SOLID_SPLASH
|
||||||
|
#define ENABLE_RGB_MATRIX_SOLID_MULTISPLASH
|
|
@ -0,0 +1,152 @@
|
||||||
|
/*
|
||||||
|
Copyright 2022 Álvaro "Gondolindrim" Volpato <alvaro.volpato@usp.br>
|
||||||
|
|
||||||
|
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 "gamma.h"
|
||||||
|
|
||||||
|
void board_init(void) {
|
||||||
|
setPinInput(B9);
|
||||||
|
setPinInput(B10);
|
||||||
|
}
|
||||||
|
|
||||||
|
#ifdef RGB_MATRIX_ENABLE
|
||||||
|
const is31_led PROGMEM g_is31_leds[DRIVER_LED_TOTAL] = {
|
||||||
|
/* Refer to IS31 manual for these locations
|
||||||
|
* driver
|
||||||
|
* | R location
|
||||||
|
* | | G location
|
||||||
|
* | | | B location
|
||||||
|
* | | | | */
|
||||||
|
// First row
|
||||||
|
{0, CS7_SW9 , CS9_SW9 , CS8_SW9 }, //ESC 0
|
||||||
|
{0, CS7_SW8 , CS9_SW8 , CS8_SW8 }, //F1 1
|
||||||
|
{0, CS7_SW7 , CS9_SW7 , CS8_SW7 }, //F2 2
|
||||||
|
{0, CS7_SW6 , CS9_SW6 , CS8_SW6 }, //F3 3
|
||||||
|
{0, CS7_SW5 , CS9_SW5 , CS8_SW5 }, //F4 4
|
||||||
|
{0, CS7_SW4 , CS9_SW4 , CS8_SW4 }, //F5 5
|
||||||
|
{0, CS7_SW3 , CS9_SW3 , CS8_SW3 }, //F6 6
|
||||||
|
{0, CS7_SW2 , CS9_SW2 , CS8_SW2 }, //F7 7
|
||||||
|
{0, CS7_SW1 , CS9_SW1 , CS8_SW1 }, //F8 8
|
||||||
|
{0, CS18_SW2, CS16_SW2, CS17_SW2 }, //F9 9
|
||||||
|
{0, CS18_SW3, CS16_SW3, CS17_SW3 }, //F10 10
|
||||||
|
{0, CS18_SW4, CS16_SW4, CS17_SW4 }, //F11 11
|
||||||
|
{0, CS18_SW6, CS16_SW6, CS17_SW6 }, //F12 12
|
||||||
|
{0, CS18_SW7, CS16_SW7, CS17_SW7 }, //PRI 13
|
||||||
|
{0, CS18_SW8, CS16_SW8, CS17_SW8 }, //SCR 14
|
||||||
|
{0, CS18_SW9, CS16_SW9, CS17_SW9 }, //PAUS 15
|
||||||
|
//Second row
|
||||||
|
{0, CS12_SW9, CS11_SW9, CS10_SW9 }, //GRAVE 16
|
||||||
|
{0, CS12_SW8, CS11_SW8, CS10_SW8 }, //1 17
|
||||||
|
{0, CS12_SW7, CS11_SW7, CS10_SW7 }, //2 18
|
||||||
|
{0, CS12_SW6, CS11_SW6, CS10_SW6 }, //3 19
|
||||||
|
{0, CS12_SW5, CS11_SW5, CS10_SW5 }, //4 20
|
||||||
|
{0, CS12_SW4, CS11_SW4, CS10_SW4 }, //5 21
|
||||||
|
{0, CS12_SW3, CS11_SW3, CS10_SW3 }, //6 22
|
||||||
|
{0, CS12_SW2, CS11_SW2, CS10_SW2 }, //7 23
|
||||||
|
{0, CS12_SW1, CS11_SW1, CS10_SW1 }, //8 24
|
||||||
|
{0, CS15_SW1, CS13_SW1, CS14_SW1 }, //9 25
|
||||||
|
{0, CS15_SW2, CS13_SW2, CS14_SW2 }, //0 26
|
||||||
|
{0, CS15_SW3, CS13_SW3, CS14_SW3 }, //MINUS 27
|
||||||
|
{0, CS15_SW4, CS13_SW4, CS14_SW4 }, //PLUS 28
|
||||||
|
{0, CS15_SW5, CS13_SW5, CS14_SW5 }, //BKSP 29
|
||||||
|
{0, CS15_SW7, CS13_SW7, CS14_SW7 }, //INS 30
|
||||||
|
{0, CS15_SW8, CS13_SW8, CS14_SW8 }, //HOME 31
|
||||||
|
{0, CS15_SW9, CS13_SW9, CS14_SW9 }, //PGUP 32
|
||||||
|
//Third row
|
||||||
|
{0, CS4_SW9 , CS6_SW9 , CS5_SW9 }, //TAB 33
|
||||||
|
{0, CS4_SW8 , CS6_SW8 , CS5_SW8 }, //Q 34
|
||||||
|
{0, CS4_SW7 , CS6_SW7 , CS5_SW7 }, //W 35
|
||||||
|
{0, CS4_SW6 , CS6_SW6 , CS5_SW6 }, //E 36
|
||||||
|
{0, CS4_SW5 , CS6_SW5 , CS5_SW5 }, //R 37
|
||||||
|
{0, CS4_SW4 , CS6_SW4 , CS5_SW4 }, //T 38
|
||||||
|
{0, CS4_SW3 , CS6_SW3 , CS5_SW3 }, //Y 39
|
||||||
|
{0, CS4_SW2 , CS6_SW2 , CS5_SW2 }, //U 40
|
||||||
|
{0, CS4_SW1 , CS6_SW1 , CS5_SW1 }, //I 41
|
||||||
|
{0, CS3_SW2 , CS1_SW2 , CS2_SW2 }, //O 42
|
||||||
|
{0, CS3_SW3 , CS1_SW3 , CS2_SW3 }, //P 43
|
||||||
|
{0, CS3_SW4 , CS1_SW4 , CS2_SW4 }, //LBRKT 44
|
||||||
|
{0, CS3_SW5 , CS1_SW5 , CS2_SW5 }, //RBRKT 45
|
||||||
|
{0, CS3_SW6 , CS1_SW6 , CS2_SW6 }, //BSLS 46
|
||||||
|
{0, CS3_SW7 , CS1_SW7 , CS2_SW7 }, //DEL 47
|
||||||
|
{0, CS3_SW8 , CS1_SW8 , CS2_SW8 }, //END 48
|
||||||
|
{0, CS3_SW9 , CS1_SW9 , CS2_SW9 }, //PGDN 49
|
||||||
|
//Fourth row
|
||||||
|
{0, CS33_SW9, CS32_SW9, CS31_SW9 }, //CAPS 50
|
||||||
|
{0, CS33_SW8, CS32_SW8, CS31_SW8 }, //A 51
|
||||||
|
{0, CS33_SW7, CS32_SW7, CS31_SW7 }, //S 52
|
||||||
|
{0, CS33_SW6, CS32_SW6, CS31_SW6 }, //D 53
|
||||||
|
{0, CS33_SW5, CS32_SW5, CS31_SW5 }, //F 54
|
||||||
|
{0, CS33_SW4, CS32_SW4, CS31_SW4 }, //G 55
|
||||||
|
{0, CS33_SW3, CS32_SW3, CS31_SW3 }, //H 56
|
||||||
|
{0, CS33_SW2, CS32_SW2, CS31_SW2 }, //J 57
|
||||||
|
{0, CS33_SW1, CS32_SW1, CS31_SW1 }, //K 58
|
||||||
|
{0, CS39_SW2, CS38_SW2, CS37_SW2 }, //L 59
|
||||||
|
{0, CS39_SW3, CS38_SW3, CS37_SW3 }, //COLON 60
|
||||||
|
{0, CS39_SW4, CS38_SW4, CS37_SW4 }, //QUOTE 61
|
||||||
|
{0, CS39_SW6, CS38_SW6, CS37_SW6 }, //ENTER 62
|
||||||
|
//Fifth row
|
||||||
|
{0, CS30_SW9, CS28_SW9, CS29_SW9 }, //LSFT 63
|
||||||
|
{0, CS30_SW7, CS28_SW7, CS29_SW7 }, //Z 64
|
||||||
|
{0, CS30_SW6, CS28_SW6, CS29_SW6 }, //X 65
|
||||||
|
{0, CS30_SW5, CS28_SW5, CS29_SW5 }, //C 66
|
||||||
|
{0, CS30_SW4, CS28_SW4, CS29_SW4 }, //V 67
|
||||||
|
{0, CS30_SW3, CS28_SW3, CS29_SW3 }, //B 68
|
||||||
|
{0, CS30_SW2, CS28_SW2, CS29_SW2 }, //N 69
|
||||||
|
{0, CS30_SW1, CS28_SW1, CS29_SW1 }, //M 70
|
||||||
|
{0, CS36_SW1, CS35_SW1, CS34_SW1 }, //COMMA 71
|
||||||
|
{0, CS36_SW3, CS35_SW3, CS34_SW3 }, //DOT 72
|
||||||
|
{0, CS36_SW4, CS35_SW4, CS34_SW4 }, //SLASH 73
|
||||||
|
{0, CS36_SW6, CS35_SW6, CS34_SW6 }, //RSFT 74
|
||||||
|
{0, CS36_SW7, CS35_SW7, CS34_SW7 }, //UP 75
|
||||||
|
//Sixth row
|
||||||
|
{0, CS27_SW9, CS25_SW9, CS26_SW9 }, //LCTRL 76
|
||||||
|
{0, CS27_SW7, CS25_SW7, CS26_SW7 }, //LWIN 77
|
||||||
|
{0, CS27_SW6, CS25_SW6, CS26_SW6 }, //LALT 78
|
||||||
|
{0, CS27_SW5, CS25_SW5, CS26_SW5 }, //SPACE 79
|
||||||
|
{0, CS27_SW3, CS25_SW3, CS26_SW3 }, //RALT 80
|
||||||
|
{0, CS24_SW4, CS23_SW4, CS22_SW4 }, //RGUI 81
|
||||||
|
{0, CS24_SW5, CS23_SW5, CS22_SW5 }, //MENU 82
|
||||||
|
{0, CS24_SW6, CS23_SW6, CS22_SW6 }, //RCTRL 83
|
||||||
|
{0, CS24_SW1, CS23_SW1, CS22_SW1 }, //LEFT 84
|
||||||
|
{0, CS24_SW2, CS23_SW2, CS22_SW2 }, //DOWN 85
|
||||||
|
{0, CS24_SW3, CS23_SW3, CS22_SW3 }, //RIGHT 86
|
||||||
|
|
||||||
|
};
|
||||||
|
|
||||||
|
|
||||||
|
led_config_t g_led_config = { {
|
||||||
|
{ 0 , 1 , 2 , 3 , 4 , 5 , 6 , 7 , 8 , 9 , 10 , 11 , 12 , 13 , 14 , 15 },
|
||||||
|
{ 16 , 17 , 18 , 19 , 20 , 21 , 22 , 23 , 24 , 25 , 26 , 27 , 28 , 29 , 30 , 31 },
|
||||||
|
{ 33 , 34 , 35 , 36 , 37 , 38 , 39 , 40 , 41 , 41 , 43 , 44 , 45 , 46 , 47 , 48 },
|
||||||
|
{ 50 , 51 , 52 , 53 , 54 , 55 , 56 , 57 , 58 , 59 , 60 , 61 , 62 , NO_LED , NO_LED , NO_LED },
|
||||||
|
{ 63 , NO_LED , 64 , 65 , 66 , 67 , 68 , 69 , 70 , 71 , 72 , 73 , 74 , 75 , 49 , 32 },
|
||||||
|
{ 76 , 77 , 78 , NO_LED , NO_LED , NO_LED , 79 , NO_LED , NO_LED , 80 , 81 , 82 , 83 , 84 , 85 , 86 }
|
||||||
|
},{
|
||||||
|
{ 0, 0}, { 15, 0}, { 30, 0}, { 45, 0}, { 60, 0}, { 75, 0}, { 90, 0}, { 105, 0}, { 120, 0}, { 135, 0}, { 150, 0}, { 165, 0}, { 180, 0}, { 210, 0}, { 210, 0}, { 225, 0},
|
||||||
|
{ 0, 45}, { 15, 45}, { 30, 45}, { 45, 45}, { 60, 45}, { 75, 45}, { 90, 45}, { 105, 45}, { 120, 45}, { 135, 45}, { 150, 45}, { 165, 45}, { 180, 45}, { 210, 45}, { 210, 45}, { 215, 45},
|
||||||
|
{ 0, 90}, { 15, 90}, { 30, 90}, { 45, 90}, { 60, 90}, { 75, 90}, { 90, 90}, { 105, 90}, { 120, 90}, { 135, 90}, { 150, 90}, { 165, 90}, { 180, 90}, { 195, 90}, { 210, 90}, { 215, 90},
|
||||||
|
{ 0, 135}, { 15, 135}, { 30, 135}, { 45, 135}, { 60, 135}, { 75, 135}, { 90, 135}, { 105, 135}, { 120, 135}, { 135, 135}, { 150, 135}, { 165, 135}, { 180, 135},
|
||||||
|
{ 0, 180}, { 30, 180}, { 45, 180}, { 60, 180}, { 75, 180}, { 90, 180}, { 105, 180}, { 120, 180}, { 135, 180}, { 150, 180}, { 165, 180}, { 180, 180}, { 210, 180}, { 225, 45}, { 225, 0},
|
||||||
|
{ 0, 225}, { 15, 225}, { 30, 225}, { 90, 225}, { 135, 225}, { 150, 225}, { 165, 225}, { 180, 225}, { 195, 225}, { 210, 225}, { 225, 225}
|
||||||
|
}, {
|
||||||
|
1 , 4 , 4 , 4 , 4 , 4 , 4 , 4 , 4 , 4 , 4 , 4 , 4 , 4 , 4 , 4 ,
|
||||||
|
4 , 4 , 4 , 4 , 4 , 4 , 4 , 4 , 4 , 4 , 4 , 4 , 4 , 4 , 4 , 4 ,
|
||||||
|
4 , 4 , 4 , 4 , 4 , 4 , 4 , 4 , 4 , 4 , 4 , 4 , 4 , 4 , 4 , 4 ,
|
||||||
|
4 , 4 , 4 , 4 , 4 , 4 , 4 , 4 , 4 , 4 , 4 , 4 , 1 ,
|
||||||
|
1 , 4 , 4 , 4 , 4 , 4 , 4 , 4 , 4 , 4 , 4 , 1 , 1 , 1 , 1 ,
|
||||||
|
1 , 1 , 1 , 4 , 1 , 1 , 1 , 1 , 1 , 1 , 1
|
||||||
|
} };
|
||||||
|
#endif
|
|
@ -0,0 +1,38 @@
|
||||||
|
/*
|
||||||
|
Copyright 2022 Álvaro "Gondolindrim" Volpato <alvaro.volpato@usp.br>
|
||||||
|
|
||||||
|
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 ___ KC_NO
|
||||||
|
|
||||||
|
#define LAYOUT_tkl_ansi( \
|
||||||
|
K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, K0E, K0F, \
|
||||||
|
K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K1D, K1E, K1F, K4F, \
|
||||||
|
K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C, K2D, K2E, K2F, K4E, \
|
||||||
|
K30, K31, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, \
|
||||||
|
K40, K42, K43, K44, K45, K46, K47, K48, K49, K4A, K4B, K4C, K4D, \
|
||||||
|
K50, K51, K52, K56, K59, K5A, K5B, K5C, K5D, K5E, K5F \
|
||||||
|
) { \
|
||||||
|
{ K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, K0E, K0F }, \
|
||||||
|
{ K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K1D, K1E, K1F }, \
|
||||||
|
{ K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C, K2D, K2E, K2F }, \
|
||||||
|
{ K30, K31, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, ___, ___, ___ }, \
|
||||||
|
{ K40, ___, K42, K43, K44, K45, K46, K47, K48, K49, K4A, K4B, K4C, K4D, K4E, K4F }, \
|
||||||
|
{ K50, K51, K52, ___, ___, ___, K56, ___, ___, K59, K5A, K5B, K5C, K5D, K5E, K5F } \
|
||||||
|
}
|
|
@ -0,0 +1,24 @@
|
||||||
|
/* Copyright 2022 QMK
|
||||||
|
*
|
||||||
|
* 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 HAL_USE_I2C TRUE
|
||||||
|
|
||||||
|
// #define HAL_USE_PWM TRUE
|
||||||
|
// #define HAL_USE_PAL TRUE
|
||||||
|
|
||||||
|
#include_next <halconf.h>
|
|
@ -0,0 +1,53 @@
|
||||||
|
/*
|
||||||
|
Copyright 2020 Álvaro "Gondolindrim" Volpato <alvaro.volpato@usp.br>
|
||||||
|
|
||||||
|
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_tkl_ansi(
|
||||||
|
KC_ESC , 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_PSCR, KC_SCRL, KC_PAUS ,
|
||||||
|
KC_GRV , 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_INS , KC_HOME, KC_PGUP ,
|
||||||
|
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_END , KC_PGDN ,
|
||||||
|
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_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_RALT, MO(1) , KC_RGUI, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT
|
||||||
|
),
|
||||||
|
[1] = LAYOUT_tkl_ansi(
|
||||||
|
RESET , 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, RGB_HUI, RGB_SAI, RGB_VAI, RGB_SPI, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
|
||||||
|
KC_TRNS, RGB_TOG, RGB_MOD, RGB_HUD, RGB_SAD, RGB_VAD, RGB_SPD, 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
|
||||||
|
),
|
||||||
|
[2] = LAYOUT_tkl_ansi(
|
||||||
|
RESET , 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, 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_tkl_ansi(
|
||||||
|
RESET , 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, 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
|
||||||
|
)
|
||||||
|
};
|
|
@ -0,0 +1,53 @@
|
||||||
|
/*
|
||||||
|
Copyright 2020 Álvaro "Gondolindrim" Volpato <alvaro.volpato@usp.br>
|
||||||
|
|
||||||
|
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_tkl_ansi(
|
||||||
|
KC_ESC , 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_PSCR, KC_SCRL, KC_PAUS ,
|
||||||
|
KC_GRV , 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_INS , KC_HOME, KC_PGUP ,
|
||||||
|
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_END , KC_PGDN ,
|
||||||
|
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_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_RALT, MO(1) , KC_RGUI, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT
|
||||||
|
),
|
||||||
|
[1] = LAYOUT_tkl_ansi(
|
||||||
|
RESET , 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, RGB_HUI, RGB_SAI, RGB_VAI, RGB_SPI, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
|
||||||
|
KC_TRNS, RGB_TOG, RGB_MOD, RGB_HUD, RGB_SAD, RGB_VAD, RGB_SPD, 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
|
||||||
|
),
|
||||||
|
[2] = LAYOUT_tkl_ansi(
|
||||||
|
RESET , 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, 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_tkl_ansi(
|
||||||
|
RESET , 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, 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
|
||||||
|
)
|
||||||
|
};
|
|
@ -0,0 +1 @@
|
||||||
|
VIA_ENABLE = yes
|
|
@ -0,0 +1,41 @@
|
||||||
|
/* Copyright 2022 QMK
|
||||||
|
*
|
||||||
|
* 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_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
|
||||||
|
|
||||||
|
// #undef STM32_PWM_USE_ADVANCED
|
||||||
|
// #define STM32_PWM_USE_ADVANCED TRUE
|
||||||
|
|
||||||
|
// #undef STM32_PWM_USE_TIM1
|
||||||
|
// #define STM32_PWM_USE_TIM1 TRUE
|
|
@ -0,0 +1,25 @@
|
||||||
|
# MCU name
|
||||||
|
MCU = STM32F411
|
||||||
|
|
||||||
|
# Bootloader selection
|
||||||
|
BOOTLOADER = stm32-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 = no # Enable N-Key Rollover
|
||||||
|
BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality
|
||||||
|
RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow
|
||||||
|
AUDIO_ENABLE = no # Audio output
|
||||||
|
RGB_MATRIX_ENABLE = yes
|
||||||
|
RGB_MATRIX_DRIVER = IS31FL3741
|
||||||
|
KEYBOARD_SHARED_EP = yes
|
||||||
|
EEPROM_DRIVER = i2c
|
||||||
|
|
||||||
|
# Enter lower-power sleep mode when on the ChibiOS idle thread
|
||||||
|
OPT_DEFS += -DCORTEX_ENABLE_WFI_IDLE=TRUE -DDEBUG_EEPROM_OUTPUT=TRUE
|
|
@ -0,0 +1,103 @@
|
||||||
|
{
|
||||||
|
"keyboard_name": "AcheronProject Apollo87H",
|
||||||
|
"url": "",
|
||||||
|
"maintainer": "Gondolindrim",
|
||||||
|
"layouts": {
|
||||||
|
"LAYOUT_tkl_ansi": {
|
||||||
|
"layout": [
|
||||||
|
{"label":"Esc", "x":0, "y":0},
|
||||||
|
{"label":"F1", "x":2, "y":0},
|
||||||
|
{"label":"F2", "x":3, "y":0},
|
||||||
|
{"label":"F3", "x":4, "y":0},
|
||||||
|
{"label":"F4", "x":5, "y":0},
|
||||||
|
{"label":"F5", "x":6.5, "y":0},
|
||||||
|
{"label":"F6", "x":7.5, "y":0},
|
||||||
|
{"label":"F7", "x":8.5, "y":0},
|
||||||
|
{"label":"F8", "x":9.5, "y":0},
|
||||||
|
{"label":"F9", "x":11, "y":0},
|
||||||
|
{"label":"F10", "x":12, "y":0},
|
||||||
|
{"label":"F11", "x":13, "y":0},
|
||||||
|
{"label":"F12", "x":14, "y":0},
|
||||||
|
{"label":"PrtSc", "x":15.25, "y":0},
|
||||||
|
{"label":"Scroll Lock", "x":16.25, "y":0},
|
||||||
|
{"label":"Pause", "x":17.25, "y":0},
|
||||||
|
|
||||||
|
{"label":"`~", "x":0, "y":1.25},
|
||||||
|
{"label":"1!", "x":1, "y":1.25},
|
||||||
|
{"label":"2@", "x":2, "y":1.25},
|
||||||
|
{"label":"3#", "x":3, "y":1.25},
|
||||||
|
{"label":"4$", "x":4, "y":1.25},
|
||||||
|
{"label":"5%", "x":5, "y":1.25},
|
||||||
|
{"label":"6^", "x":6, "y":1.25},
|
||||||
|
{"label":"7&", "x":7, "y":1.25},
|
||||||
|
{"label":"8*", "x":8, "y":1.25},
|
||||||
|
{"label":"9(", "x":9, "y":1.25},
|
||||||
|
{"label":"0)", "x":10, "y":1.25},
|
||||||
|
{"label":"-_", "x":11, "y":1.25},
|
||||||
|
{"label":"=+", "x":12, "y":1.25},
|
||||||
|
{"label":"Backspace", "x":13, "y":1.25, "w":2},
|
||||||
|
{"label":"Insert", "x":15.25, "y":1.25},
|
||||||
|
{"label":"Home", "x":16.25, "y":1.25},
|
||||||
|
{"label":"Page Up", "x":17.25, "y":1.25},
|
||||||
|
|
||||||
|
{"label":"Tab", "x":0, "y":2.25, "w":1.5},
|
||||||
|
{"label":"Q", "x":1.5, "y":2.25},
|
||||||
|
{"label":"W", "x":2.5, "y":2.25},
|
||||||
|
{"label":"E", "x":3.5, "y":2.25},
|
||||||
|
{"label":"R", "x":4.5, "y":2.25},
|
||||||
|
{"label":"T", "x":5.5, "y":2.25},
|
||||||
|
{"label":"Y", "x":6.5, "y":2.25},
|
||||||
|
{"label":"U", "x":7.5, "y":2.25},
|
||||||
|
{"label":"I", "x":8.5, "y":2.25},
|
||||||
|
{"label":"O", "x":9.5, "y":2.25},
|
||||||
|
{"label":"P", "x":10.5, "y":2.25},
|
||||||
|
{"label":"[{", "x":11.5, "y":2.25},
|
||||||
|
{"label":"]}", "x":12.5, "y":2.25},
|
||||||
|
{"label":"\\|", "x":13.5, "y":2.25, "w":1.5},
|
||||||
|
{"label":"Delete", "x":15.25, "y":2.25},
|
||||||
|
{"label":"End", "x":16.25, "y":2.25},
|
||||||
|
{"label":"Page Down", "x":17.25, "y":2.25},
|
||||||
|
|
||||||
|
{"label":"Caps Lock", "x":0, "y":3.25, "w":1.75},
|
||||||
|
{"label":"A", "x":1.75, "y":3.25},
|
||||||
|
{"label":"S", "x":2.75, "y":3.25},
|
||||||
|
{"label":"D", "x":3.75, "y":3.25},
|
||||||
|
{"label":"F", "x":4.75, "y":3.25},
|
||||||
|
{"label":"G", "x":5.75, "y":3.25},
|
||||||
|
{"label":"H", "x":6.75, "y":3.25},
|
||||||
|
{"label":"J", "x":7.75, "y":3.25},
|
||||||
|
{"label":"K", "x":8.75, "y":3.25},
|
||||||
|
{"label":"L", "x":9.75, "y":3.25},
|
||||||
|
{"label":";:", "x":10.75, "y":3.25},
|
||||||
|
{"label":"'\"", "x":11.75, "y":3.25},
|
||||||
|
{"label":"Enter", "x":12.75, "y":3.25, "w":2.25},
|
||||||
|
|
||||||
|
{"label":"Shift", "x":0, "y":4.25, "w":2.25},
|
||||||
|
{"label":"Z", "x":2.25, "y":4.25},
|
||||||
|
{"label":"X", "x":3.25, "y":4.25},
|
||||||
|
{"label":"C", "x":4.25, "y":4.25},
|
||||||
|
{"label":"V", "x":5.25, "y":4.25},
|
||||||
|
{"label":"B", "x":6.25, "y":4.25},
|
||||||
|
{"label":"N", "x":7.25, "y":4.25},
|
||||||
|
{"label":"M", "x":8.25, "y":4.25},
|
||||||
|
{"label":",<", "x":9.25, "y":4.25},
|
||||||
|
{"label":".>", "x":10.25, "y":4.25},
|
||||||
|
{"label":"/?", "x":11.25, "y":4.25},
|
||||||
|
{"label":"Shift", "x":12.25, "y":4.25, "w":2.75},
|
||||||
|
{"label":"\u2191", "x":16.25, "y":4.25},
|
||||||
|
|
||||||
|
{"label":"Ctrl", "x":0, "y":5.25, "w":1.25},
|
||||||
|
{"label":"GUI", "x":1.25, "y":5.25, "w":1.25},
|
||||||
|
{"label":"Alt", "x":2.5, "y":5.25, "w":1.25},
|
||||||
|
{"label":"Space", "x":3.75, "y":5.25, "w":6.25},
|
||||||
|
{"label":"Alt", "x":10, "y":5.25, "w":1.25},
|
||||||
|
{"label":"Fn", "x":11.25, "y":5.25, "w":1.25},
|
||||||
|
{"label":"GUI", "x":12.5, "y":5.25, "w":1.25},
|
||||||
|
{"label":"Ctrl", "x":13.75, "y":5.25, "w":1.25},
|
||||||
|
{"label":"\u2190", "x":15.25, "y":5.25},
|
||||||
|
{"label":"\u2193", "x":16.25, "y":5.25},
|
||||||
|
{"label":"\u2192", "x":17.25, "y":5.25}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
|
@ -0,0 +1,25 @@
|
||||||
|
# Acheron Apollo87H QMK firmware
|
||||||
|
|
||||||
|
![apollo](https://acheronproject.com/images/apollo/delta-pictures/delta1_small.jpeg)
|
||||||
|
|
||||||
|
The Apollo87H is Acheron Project's open-source, freely available tenkeyless (TKL) keyboard Printed Circuit Boards (PCB) which features:
|
||||||
|
|
||||||
|
- Per-key RGB lighting
|
||||||
|
- Hotswap sockets
|
||||||
|
- ANSI default layout with F12 and 6.25 units spacebar.
|
||||||
|
|
||||||
|
* Keyboard Maintainer: [Gondolindrim](https://github.com/Gondolindrim)
|
||||||
|
* Hardware Supported: open-source PCB using the [Joker template](https://acheronproject.com/joker_mcus/joker/). First units were manufactured using STM32F401 microcontroller;
|
||||||
|
* Hardware Availability: these PCBs are open-source so you can manufacture them yourself or order them from a factory. See the [project's documentation](https://acheronproject.com/pcbs/apollo/apollo/) for more information.
|
||||||
|
|
||||||
|
In order to flash this PCB, first build the default layout (after setting up your build environment):
|
||||||
|
|
||||||
|
make acheron/apollo/87h/<revision>:default
|
||||||
|
|
||||||
|
Where `revision` is the revision of your PCB. Two revisions were prototyped and sold: _Gamma_ and _Delta_. Look into the label on the PCB's back to see what revision is yours. Ready-to-use binaries for the default and the VIA layouts are available in the release pages of the [project's repository](https://github.com/AcheronProject/Apollo87H).
|
||||||
|
|
||||||
|
After building or downloading the firmware, put the PCB into DFU mode by holding the reset button for at least five seconds and upload the firmware onto the microcontroller through a utility like `dfu-util` or QMK Toolbox. Alternatively, you can build and flash using:
|
||||||
|
|
||||||
|
make acheron/apollo/87h/<revision>: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).
|
|
@ -0,0 +1,47 @@
|
||||||
|
/*
|
||||||
|
Copyright 2022 Álvaro "Gondolindrim" Volpato <alvaro.volpato@usp.br>
|
||||||
|
|
||||||
|
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 "87htsc.h"
|
||||||
|
|
||||||
|
void board_init(void) {
|
||||||
|
setPinInput(B9);
|
||||||
|
setPinInput(B10);
|
||||||
|
}
|
||||||
|
|
||||||
|
led_config_t g_led_config = { {
|
||||||
|
{ 15 , 14 , 13 , 12 , 11 , 10 , 9 , 8 , 7 , 6 , 5 , 4 , 3 , NO_LED , 2 , 1 , 0 },
|
||||||
|
{ 16 , 17 , 18 , 19 , 20 , 21 , 22 , 23 , 24 , 25 , 26 , 27 , 28 , 29 , 30 , 31 , 32 },
|
||||||
|
{ 49 , 48 , 47 , 46 , 45 , 44 , 43 , 42 , 41 , 40 , 39 , 38 , 37 , 36 , 35 , 34 , 33 },
|
||||||
|
{ 50 , 51 , 52 , 53 , 54 , 55 , 56 , 57 , 58 , 59 , 60 , 61 , 62 , NO_LED , NO_LED , NO_LED , NO_LED },
|
||||||
|
{ 75 , NO_LED , 74 , 73 , 72 , 71 , 70 , 69 , 68 , 67 , 66 , 65 , 64 , NO_LED , NO_LED , 63 , NO_LED },
|
||||||
|
{ 76 , 77 , 78 , NO_LED , NO_LED , NO_LED , 79 , NO_LED , NO_LED , NO_LED , 80 , 81 , 82 , NO_LED , 83 , 84 , 85 }
|
||||||
|
},{
|
||||||
|
// "Fine-tuned" complex configuration
|
||||||
|
{ 210, 0}, { 196, 0}, { 182, 0}, { 168, 0}, { 154, 0}, { 140, 0}, { 140, 0}, { 126, 0}, { 112, 0}, { 98, 0}, { 84, 0}, { 70, 0}, { 56, 0}, { 28, 0}, { 14, 0}, { 0, 0},
|
||||||
|
{ 0, 45}, { 14, 45}, { 28, 45}, { 42, 45}, { 56, 45}, { 70, 45}, { 84, 45}, { 98, 45}, { 112, 45}, { 126, 45}, { 140, 45}, { 154, 45}, { 168, 45}, { 182, 45}, { 196, 45}, { 210, 45}, { 224, 45},
|
||||||
|
{ 224, 90}, { 210, 90}, { 196, 90}, { 182, 90}, { 168, 90}, { 154, 90}, { 140, 90}, { 126, 90}, { 112, 90}, { 98, 90}, { 84, 90}, { 70, 90}, { 56, 90}, { 42, 90}, { 28, 90}, { 14, 90}, { 0, 90},
|
||||||
|
{ 0, 135}, { 14, 135}, { 28, 135}, { 42, 135}, { 56, 135}, { 70, 135}, { 84, 135}, { 98, 135}, { 112, 135}, { 126, 135}, { 140, 135}, { 154, 135}, { 168, 135},
|
||||||
|
{ 192, 180}, { 168, 180}, { 154, 180}, { 140, 180}, { 126, 180}, { 112, 180}, { 98, 180}, { 84, 180}, { 70, 180}, { 56, 180}, { 42, 180}, { 28, 180}, { 14, 180},
|
||||||
|
{ 0, 225}, { 14, 225}, { 28, 225}, { 84, 225}, { 140, 225}, { 154, 225}, { 168, 225}, { 196, 225}, { 210, 225}, { 224, 225}
|
||||||
|
}, {
|
||||||
|
1 , 4 , 4 , 4 , 4 , 4 , 4 , 4 , 4 , 4 , 4 , 4 , 4 , 4 , 4 , 4 ,
|
||||||
|
4 , 4 , 4 , 4 , 4 , 4 , 4 , 4 , 4 , 4 , 4 , 4 , 4 , 4 , 4 , 4 , 4 ,
|
||||||
|
4 , 4 , 4 , 4 , 4 , 4 , 4 , 4 , 4 , 4 , 4 , 4 , 4 , 4 , 4 , 4 , 4 ,
|
||||||
|
4 , 4 , 4 , 4 , 4 , 4 , 4 , 4 , 4 , 4 , 4 , 4 , 1 ,
|
||||||
|
1 , 4 , 4 , 4 , 4 , 4 , 4 , 4 , 4 , 4 , 4 , 1 , 1 ,
|
||||||
|
1 , 1 , 1 , 4 , 1 , 1 , 1 , 1 , 1 , 1
|
||||||
|
} };
|
|
@ -0,0 +1,39 @@
|
||||||
|
/*
|
||||||
|
Copyright 2022 Álvaro "Gondolindrim" Volpato <alvaro.volpato@usp.br>
|
||||||
|
|
||||||
|
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 ___ KC_NO
|
||||||
|
|
||||||
|
// 87t for 87-key plus tsangan
|
||||||
|
#define LAYOUT_tkl_ansi_tsangan( \
|
||||||
|
K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0E, K0F, K0G, \
|
||||||
|
K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K1D, K1E, K1F, K1G, \
|
||||||
|
K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C, K2D, K2E, K2F, K2G, \
|
||||||
|
K30, K31, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, \
|
||||||
|
K40, K42, K43, K44, K45, K46, K47, K48, K49, K4A, K4B, K4C, K4F, \
|
||||||
|
K50, K51, K52, K56, K5A, K5B, K5C, K5E, K5F, K5G \
|
||||||
|
) { \
|
||||||
|
{ K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, ___, K0E, K0F, K0G }, \
|
||||||
|
{ K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K1D, K1E, K1F, K1G }, \
|
||||||
|
{ K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C, K2D, K2E, K2F, K2G }, \
|
||||||
|
{ K30, K31, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, ___, ___, ___, ___ }, \
|
||||||
|
{ K40, ___, K42, K43, K44, K45, K46, K47, K48, K49, K4A, K4B, K4C, ___, ___, K4F, ___ }, \
|
||||||
|
{ K50, K51, K52, ___, ___, ___, K56, ___, ___, ___, K5A, K5B, K5C, ___, K5E, K5F, K5G } \
|
||||||
|
}
|
|
@ -0,0 +1,112 @@
|
||||||
|
/*
|
||||||
|
Copyright 2022 Álvaro "Gondolindrim" Volpato <alvaro.volpato@usp.br>
|
||||||
|
|
||||||
|
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
|
||||||
|
|
||||||
|
/* USB Device descriptor parameter */
|
||||||
|
#define VENDOR_ID 0x4150 // AP for AcheronProject
|
||||||
|
#define PRODUCT_ID 0x8776 // For 87H + 4
|
||||||
|
#define DEVICE_VER 0x0001 // Revision Alpha
|
||||||
|
#define MANUFACTURER AcheronProject
|
||||||
|
#define PRODUCT Apollo87H-T-SC
|
||||||
|
|
||||||
|
/* key matrix size */
|
||||||
|
#define MATRIX_ROWS 6
|
||||||
|
#define MATRIX_COLS 17
|
||||||
|
|
||||||
|
// C0 , C1 , C2 , C3 , C4 , C5 , C6 , C7 , C8 , C9 , C10, C11, C12, C13, C14, C15, C16 }
|
||||||
|
#define MATRIX_COL_PINS { C8 , C9 , A8 , A10, C7 , C6 , B14, B12, B10, B1 , C5 , C4 , A7 , B0 , C11, A3 , B4 }
|
||||||
|
// R0 , R1 , R2 , R3 , R4 , R5
|
||||||
|
#define MATRIX_ROW_PINS { B3 , D2 , C12, A6 , A5 , A4 }
|
||||||
|
#define DIODE_DIRECTION COL2ROW
|
||||||
|
|
||||||
|
/* define if matrix has ghost */
|
||||||
|
//#define MATRIX_HAS_GHOST
|
||||||
|
|
||||||
|
/* Set 0 if debouncing isn't needed */
|
||||||
|
#define DEBOUNCE 5
|
||||||
|
|
||||||
|
/* 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
|
||||||
|
|
||||||
|
#define EARLY_INIT_PERFORM_BOOTLOADER_JUMP TRUE
|
||||||
|
|
||||||
|
#define STM32_HSECLK 8000000
|
||||||
|
|
||||||
|
#define RGB_DI_PIN B15
|
||||||
|
#define DRIVER_LED_TOTAL 86
|
||||||
|
|
||||||
|
#define WS2812_PWM_COMPLEMENTARY_OUTPUT
|
||||||
|
#define WS2812_PWM_DRIVER PWMD1
|
||||||
|
#define WS2812_PWM_CHANNEL 3
|
||||||
|
#define WS2812_PWM_PAL_MODE 1
|
||||||
|
#define WS2812_DMA_STREAM STM32_DMA2_STREAM5
|
||||||
|
#define WS2812_DMA_CHANNEL 6
|
||||||
|
|
||||||
|
#define RGB_MATRIX_STARTUP_VAL 60
|
||||||
|
#define RGB_MATRIX_FRAMEBUFFER_EFFECTS
|
||||||
|
#define RGB_MATRIX_KEYPRESSES
|
||||||
|
#define RGB_DISABLE_WHEN_USB_SUSPENDED // turn off effects when suspended
|
||||||
|
#define RGB_MATRIX_STARTUP_MODE RGB_MATRIX_CYCLE_LEFT_RIGHT
|
||||||
|
|
||||||
|
#define ENABLE_RGB_MATRIX_ALPHAS_MODS
|
||||||
|
#define ENABLE_RGB_MATRIX_GRADIENT_UP_DOWN
|
||||||
|
#define ENABLE_RGB_MATRIX_GRADIENT_LEFT_RIGHT
|
||||||
|
#define ENABLE_RGB_MATRIX_BREATHING
|
||||||
|
#define ENABLE_RGB_MATRIX_BAND_SAT
|
||||||
|
#define ENABLE_RGB_MATRIX_BAND_VAL
|
||||||
|
#define ENABLE_RGB_MATRIX_BAND_PINWHEEL_SAT
|
||||||
|
#define ENABLE_RGB_MATRIX_BAND_PINWHEEL_VAL
|
||||||
|
#define ENABLE_RGB_MATRIX_BAND_SPIRAL_SAT
|
||||||
|
#define ENABLE_RGB_MATRIX_BAND_SPIRAL_VAL
|
||||||
|
#define ENABLE_RGB_MATRIX_CYCLE_ALL
|
||||||
|
#define ENABLE_RGB_MATRIX_CYCLE_LEFT_RIGHT
|
||||||
|
#define ENABLE_RGB_MATRIX_CYCLE_UP_DOWN
|
||||||
|
#define ENABLE_RGB_MATRIX_RAINBOW_MOVING_CHEVRON
|
||||||
|
#define ENABLE_RGB_MATRIX_CYCLE_OUT_IN
|
||||||
|
#define ENABLE_RGB_MATRIX_CYCLE_OUT_IN_DUAL
|
||||||
|
#define ENABLE_RGB_MATRIX_CYCLE_PINWHEEL
|
||||||
|
#define ENABLE_RGB_MATRIX_CYCLE_SPIRAL
|
||||||
|
#define ENABLE_RGB_MATRIX_DUAL_BEACON
|
||||||
|
#define ENABLE_RGB_MATRIX_RAINBOW_BEACON
|
||||||
|
#define ENABLE_RGB_MATRIX_RAINBOW_PINWHEELS
|
||||||
|
#define ENABLE_RGB_MATRIX_RAINDROPS
|
||||||
|
#define ENABLE_RGB_MATRIX_JELLYBEAN_RAINDROPS
|
||||||
|
#define ENABLE_RGB_MATRIX_HUE_BREATHING
|
||||||
|
#define ENABLE_RGB_MATRIX_HUE_PENDULUM
|
||||||
|
#define ENABLE_RGB_MATRIX_HUE_WAVE
|
||||||
|
#define ENABLE_RGB_MATRIX_FRACTAL
|
||||||
|
#define ENABLE_RGB_MATRIX_PIXEL_RAIN
|
||||||
|
#define ENABLE_RGB_MATRIX_PIXEL_FLOW
|
||||||
|
|
||||||
|
#define ENABLE_RGB_MATRIX_TYPING_HEATMAP
|
||||||
|
#define ENABLE_RGB_MATRIX_DIGITAL_RAIN
|
||||||
|
|
||||||
|
#define ENABLE_RGB_MATRIX_SOLID_REACTIVE_SIMPLE
|
||||||
|
#define ENABLE_RGB_MATRIX_SOLID_REACTIVE
|
||||||
|
#define ENABLE_RGB_MATRIX_SOLID_REACTIVE_WIDE
|
||||||
|
#define ENABLE_RGB_MATRIX_SOLID_REACTIVE_MULTIWIDE
|
||||||
|
#define ENABLE_RGB_MATRIX_SOLID_REACTIVE_CROSS
|
||||||
|
#define ENABLE_RGB_MATRIX_SOLID_REACTIVE_MULTICROSS
|
||||||
|
#define ENABLE_RGB_MATRIX_SOLID_REACTIVE_NEXUS
|
||||||
|
#define ENABLE_RGB_MATRIX_SOLID_REACTIVE_MULTINEXUS
|
||||||
|
#define ENABLE_RGB_MATRIX_SPLASH
|
||||||
|
#define ENABLE_RGB_MATRIX_MULTISPLASH
|
||||||
|
#define ENABLE_RGB_MATRIX_SOLID_SPLASH
|
||||||
|
#define ENABLE_RGB_MATRIX_SOLID_MULTISPLASH
|
|
@ -0,0 +1,24 @@
|
||||||
|
/* Copyright 2022 QMK
|
||||||
|
*
|
||||||
|
* 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 HAL_USE_I2C TRUE
|
||||||
|
|
||||||
|
#define HAL_USE_PWM TRUE
|
||||||
|
#define HAL_USE_PAL TRUE
|
||||||
|
|
||||||
|
#include_next <halconf.h>
|
|
@ -0,0 +1,102 @@
|
||||||
|
{
|
||||||
|
"keyboard_name": "AcheronProject Apollo87H-T-SC",
|
||||||
|
"url": "",
|
||||||
|
"maintainer": "Gondolindrim",
|
||||||
|
"layouts": {
|
||||||
|
"LAYOUT_tkl_ansi_tsangan": {
|
||||||
|
"layout": [
|
||||||
|
{"label":"Esc", "x":0, "y":0},
|
||||||
|
{"label":"F1", "x":2, "y":0},
|
||||||
|
{"label":"F2", "x":3, "y":0},
|
||||||
|
{"label":"F3", "x":4, "y":0},
|
||||||
|
{"label":"F4", "x":5, "y":0},
|
||||||
|
{"label":"F5", "x":6.5, "y":0},
|
||||||
|
{"label":"F6", "x":7.5, "y":0},
|
||||||
|
{"label":"F7", "x":8.5, "y":0},
|
||||||
|
{"label":"F8", "x":9.5, "y":0},
|
||||||
|
{"label":"F9", "x":11, "y":0},
|
||||||
|
{"label":"F10", "x":12, "y":0},
|
||||||
|
{"label":"F11", "x":13, "y":0},
|
||||||
|
{"label":"F12", "x":14, "y":0},
|
||||||
|
{"label":"PrtSc", "x":15.25, "y":0},
|
||||||
|
{"label":"Scroll Lock", "x":16.25, "y":0},
|
||||||
|
{"label":"Pause", "x":17.25, "y":0},
|
||||||
|
|
||||||
|
{"label":"`~", "x":0, "y":1.25},
|
||||||
|
{"label":"1!", "x":1, "y":1.25},
|
||||||
|
{"label":"2@", "x":2, "y":1.25},
|
||||||
|
{"label":"3#", "x":3, "y":1.25},
|
||||||
|
{"label":"4$", "x":4, "y":1.25},
|
||||||
|
{"label":"5%", "x":5, "y":1.25},
|
||||||
|
{"label":"6^", "x":6, "y":1.25},
|
||||||
|
{"label":"7&", "x":7, "y":1.25},
|
||||||
|
{"label":"8*", "x":8, "y":1.25},
|
||||||
|
{"label":"9(", "x":9, "y":1.25},
|
||||||
|
{"label":"0)", "x":10, "y":1.25},
|
||||||
|
{"label":"-_", "x":11, "y":1.25},
|
||||||
|
{"label":"=+", "x":12, "y":1.25},
|
||||||
|
{"label":"Backspace", "x":13, "y":1.25, "w":2},
|
||||||
|
{"label":"Insert", "x":15.25, "y":1.25},
|
||||||
|
{"label":"Home", "x":16.25, "y":1.25},
|
||||||
|
{"label":"Page Up", "x":17.25, "y":1.25},
|
||||||
|
|
||||||
|
{"label":"Tab", "x":0, "y":2.25, "w":1.5},
|
||||||
|
{"label":"Q", "x":1.5, "y":2.25},
|
||||||
|
{"label":"W", "x":2.5, "y":2.25},
|
||||||
|
{"label":"E", "x":3.5, "y":2.25},
|
||||||
|
{"label":"R", "x":4.5, "y":2.25},
|
||||||
|
{"label":"T", "x":5.5, "y":2.25},
|
||||||
|
{"label":"Y", "x":6.5, "y":2.25},
|
||||||
|
{"label":"U", "x":7.5, "y":2.25},
|
||||||
|
{"label":"I", "x":8.5, "y":2.25},
|
||||||
|
{"label":"O", "x":9.5, "y":2.25},
|
||||||
|
{"label":"P", "x":10.5, "y":2.25},
|
||||||
|
{"label":"[{", "x":11.5, "y":2.25},
|
||||||
|
{"label":"]}", "x":12.5, "y":2.25},
|
||||||
|
{"label":"\\|", "x":13.5, "y":2.25, "w":1.5},
|
||||||
|
{"label":"Delete", "x":15.25, "y":2.25},
|
||||||
|
{"label":"End", "x":16.25, "y":2.25},
|
||||||
|
{"label":"Page Down", "x":17.25, "y":2.25},
|
||||||
|
|
||||||
|
{"label":"Caps Lock", "x":0, "y":3.25, "w":1.75},
|
||||||
|
{"label":"A", "x":1.75, "y":3.25},
|
||||||
|
{"label":"S", "x":2.75, "y":3.25},
|
||||||
|
{"label":"D", "x":3.75, "y":3.25},
|
||||||
|
{"label":"F", "x":4.75, "y":3.25},
|
||||||
|
{"label":"G", "x":5.75, "y":3.25},
|
||||||
|
{"label":"H", "x":6.75, "y":3.25},
|
||||||
|
{"label":"J", "x":7.75, "y":3.25},
|
||||||
|
{"label":"K", "x":8.75, "y":3.25},
|
||||||
|
{"label":"L", "x":9.75, "y":3.25},
|
||||||
|
{"label":";:", "x":10.75, "y":3.25},
|
||||||
|
{"label":"'\"", "x":11.75, "y":3.25},
|
||||||
|
{"label":"Enter", "x":12.75, "y":3.25, "w":2.25},
|
||||||
|
|
||||||
|
{"label":"Shift", "x":0, "y":4.25, "w":2.25},
|
||||||
|
{"label":"Z", "x":2.25, "y":4.25},
|
||||||
|
{"label":"X", "x":3.25, "y":4.25},
|
||||||
|
{"label":"C", "x":4.25, "y":4.25},
|
||||||
|
{"label":"V", "x":5.25, "y":4.25},
|
||||||
|
{"label":"B", "x":6.25, "y":4.25},
|
||||||
|
{"label":"N", "x":7.25, "y":4.25},
|
||||||
|
{"label":"M", "x":8.25, "y":4.25},
|
||||||
|
{"label":",<", "x":9.25, "y":4.25},
|
||||||
|
{"label":".>", "x":10.25, "y":4.25},
|
||||||
|
{"label":"/?", "x":11.25, "y":4.25},
|
||||||
|
{"label":"Shift", "x":12.25, "y":4.25, "w":2.75},
|
||||||
|
{"label":"\u2191", "x":16.25, "y":4.25},
|
||||||
|
|
||||||
|
{"label":"Ctrl", "x":0, "y":5.25, "w":1.5},
|
||||||
|
{"label":"GUI", "x":1.5, "y":5.25},
|
||||||
|
{"label":"Alt", "x":2.5, "y":5.25, "w":1.5},
|
||||||
|
{"label":"Space", "x":4, "y":5.25, "w":7},
|
||||||
|
{"label":"Alt", "x":11, "y":5.25, "w":1.5},
|
||||||
|
{"label":"GUI", "x":12.5, "y":5.25},
|
||||||
|
{"label":"Ctrl", "x":13.5, "y":5.25, "w":1.5},
|
||||||
|
{"label":"\u2190", "x":15.25, "y":5.25},
|
||||||
|
{"label":"\u2193", "x":16.25, "y":5.25},
|
||||||
|
{"label":"\u2192", "x":17.25, "y":5.25}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
|
@ -0,0 +1,53 @@
|
||||||
|
/*
|
||||||
|
Copyright 2020 Álvaro "Gondolindrim" Volpato <alvaro.volpato@usp.br>
|
||||||
|
|
||||||
|
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_tkl_ansi_tsangan(
|
||||||
|
KC_ESC , 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_PSCR, KC_SCRL, KC_PAUS ,
|
||||||
|
KC_GRV , 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_INS , KC_HOME, KC_PGUP ,
|
||||||
|
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_END , KC_PGDN ,
|
||||||
|
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_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_RALT, KC_RGUI, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT
|
||||||
|
),
|
||||||
|
[1] = LAYOUT_tkl_ansi_tsangan(
|
||||||
|
RESET , 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, RGB_HUI, RGB_SAI, RGB_VAI, RGB_SPI, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
|
||||||
|
KC_TRNS, RGB_TOG, RGB_MOD, RGB_HUD, RGB_SAD, RGB_VAD, RGB_SPD, 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
|
||||||
|
),
|
||||||
|
[2] = LAYOUT_tkl_ansi_tsangan(
|
||||||
|
RESET , 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, 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_tkl_ansi_tsangan(
|
||||||
|
RESET , 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, 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
|
||||||
|
)
|
||||||
|
};
|
|
@ -0,0 +1,53 @@
|
||||||
|
/*
|
||||||
|
Copyright 2020 Álvaro "Gondolindrim" Volpato <alvaro.volpato@usp.br>
|
||||||
|
|
||||||
|
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_tkl_ansi_tsangan(
|
||||||
|
KC_ESC , 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_PSCR, KC_SCRL, KC_PAUS ,
|
||||||
|
KC_GRV , 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_INS , KC_HOME, KC_PGUP ,
|
||||||
|
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_END , KC_PGDN ,
|
||||||
|
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_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_RALT, KC_RGUI, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT
|
||||||
|
),
|
||||||
|
[1] = LAYOUT_tkl_ansi_tsangan(
|
||||||
|
RESET , 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, RGB_HUI, RGB_SAI, RGB_VAI, RGB_SPI, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
|
||||||
|
KC_TRNS, RGB_TOG, RGB_MOD, RGB_HUD, RGB_SAD, RGB_VAD, RGB_SPD, 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
|
||||||
|
),
|
||||||
|
[2] = LAYOUT_tkl_ansi_tsangan(
|
||||||
|
RESET , 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, 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_tkl_ansi_tsangan(
|
||||||
|
RESET , 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, 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
|
||||||
|
)
|
||||||
|
};
|
|
@ -0,0 +1 @@
|
||||||
|
VIA_ENABLE = yes
|
|
@ -0,0 +1,41 @@
|
||||||
|
/* Copyright 2022 QMK
|
||||||
|
*
|
||||||
|
* 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_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 168
|
||||||
|
#define STM32_PLLP_VALUE 4
|
||||||
|
#define STM32_PLLQ_VALUE 7
|
||||||
|
#define STM32_PPRE1 STM32_PPRE1_DIV2
|
||||||
|
#define STM32_PPRE2 STM32_PPRE2_DIV1
|
||||||
|
|
||||||
|
#undef STM32_I2C_USE_I2C1
|
||||||
|
#define STM32_I2C_USE_I2C1 TRUE
|
||||||
|
|
||||||
|
#undef STM32_PWM_USE_ADVANCED
|
||||||
|
#define STM32_PWM_USE_ADVANCED TRUE
|
||||||
|
|
||||||
|
#undef STM32_PWM_USE_TIM1
|
||||||
|
#define STM32_PWM_USE_TIM1 TRUE
|
|
@ -0,0 +1,22 @@
|
||||||
|
# MCU name
|
||||||
|
MCU = STM32F401
|
||||||
|
|
||||||
|
# Bootloader selection
|
||||||
|
BOOTLOADER = stm32-dfu
|
||||||
|
|
||||||
|
# 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 = no # Console for debug
|
||||||
|
COMMAND_ENABLE = no # Commands for debug and configuration
|
||||||
|
NKRO_ENABLE = no # Enable N-Key Rollover
|
||||||
|
BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality
|
||||||
|
RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow
|
||||||
|
AUDIO_ENABLE = no # Audio output
|
||||||
|
RGB_MATRIX_ENABLE = yes
|
||||||
|
RGB_MATRIX_DRIVER = WS2812
|
||||||
|
# Enter lower-power sleep mode when on the ChibiOS idle thread
|
||||||
|
OPT_DEFS += -DCORTEX_ENABLE_WFI_IDLE=TRUE -DDEBUG_EEPROM_OUTPUT=TRUE
|
|
@ -0,0 +1,47 @@
|
||||||
|
/*
|
||||||
|
Copyright 2022 Álvaro "Gondolindrim" Volpato <alvaro.volpato@usp.br>
|
||||||
|
|
||||||
|
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 "88htsc.h"
|
||||||
|
|
||||||
|
void board_init(void) {
|
||||||
|
setPinInput(B9);
|
||||||
|
setPinInput(B10);
|
||||||
|
}
|
||||||
|
|
||||||
|
led_config_t g_led_config = { {
|
||||||
|
{ 16 , 15 , 14 , 13 , 12 , 11 , 10 , 9 , 8 , 7 , 6 , 5 , 4 , 3 , 2 , 1 , 0 },
|
||||||
|
{ 17 , 18 , 19 , 20 , 21 , 22 , 23 , 24 , 25 , 26 , 27 , 28 , 29 , 30 , 31 , 32 , 33 },
|
||||||
|
{ 50 , 49 , 48 , 47 , 46 , 45 , 44 , 43 , 42 , 41 , 40 , 39 , 38 , 37 , 36 , 35 , 34 },
|
||||||
|
{ 51 , 52 , 53 , 54 , 55 , 56 , 57 , 58 , 59 , 60 , 61 , 62 , 63 , NO_LED , NO_LED , NO_LED , NO_LED },
|
||||||
|
{ 76 , NO_LED , 75 , 74 , 73 , 72 , 71 , 70 , 69 , 68 , 67 , 66 , 65 , NO_LED , NO_LED , 64 , NO_LED },
|
||||||
|
{ 77 , 78 , 79 , NO_LED , NO_LED , NO_LED , 80 , NO_LED , NO_LED , NO_LED , 81 , 82 , 83 , NO_LED , 84 , 85 , 86 }
|
||||||
|
},{
|
||||||
|
// "Fine-tuned" complex configuration
|
||||||
|
{ 210, 0}, { 196, 0}, { 182, 0}, { 168, 0}, { 154, 0}, { 140, 0}, { 140, 0}, { 126, 0}, { 112, 0}, { 98, 0}, { 84, 0}, { 70, 0}, { 56, 0}, { 45, 0}, { 28, 0}, { 14, 0}, { 0, 0},
|
||||||
|
{ 0, 45}, { 14, 45}, { 28, 45}, { 42, 45}, { 56, 45}, { 70, 45}, { 84, 45}, { 98, 45}, { 112, 45}, { 126, 45}, { 140, 45}, { 154, 45}, { 168, 45}, { 182, 45}, { 196, 45}, { 210, 45}, { 224, 45},
|
||||||
|
{ 224, 90}, { 210, 90}, { 196, 90}, { 182, 90}, { 168, 90}, { 154, 90}, { 140, 90}, { 126, 90}, { 112, 90}, { 98, 90}, { 84, 90}, { 70, 90}, { 56, 90}, { 42, 90}, { 28, 90}, { 14, 90}, { 0, 90},
|
||||||
|
{ 0, 135}, { 14, 135}, { 28, 135}, { 42, 135}, { 56, 135}, { 70, 135}, { 84, 135}, { 98, 135}, { 112, 135}, { 126, 135}, { 140, 135}, { 154, 135}, { 168, 135},
|
||||||
|
{ 192, 180}, { 168, 180}, { 154, 180}, { 140, 180}, { 126, 180}, { 112, 180}, { 98, 180}, { 84, 180}, { 70, 180}, { 56, 180}, { 42, 180}, { 28, 180}, { 14, 180},
|
||||||
|
{ 0, 225}, { 14, 225}, { 28, 225}, { 84, 225}, { 140, 225}, { 154, 225}, { 168, 225}, { 196, 45}, { 210, 45}, { 224, 90}
|
||||||
|
}, {
|
||||||
|
1 , 4 , 4 , 4 , 4 , 4 , 4 , 4 , 4 , 4 , 4 , 4 , 4 , 4 , 4 , 4 , 4 ,
|
||||||
|
4 , 4 , 4 , 4 , 4 , 4 , 4 , 4 , 4 , 4 , 4 , 4 , 4 , 4 , 4 , 4 , 4 ,
|
||||||
|
4 , 4 , 4 , 4 , 4 , 4 , 4 , 4 , 4 , 4 , 4 , 4 , 4 , 4 , 4 , 4 , 4 ,
|
||||||
|
4 , 4 , 4 , 4 , 4 , 4 , 4 , 4 , 4 , 4 , 4 , 4 , 1 ,
|
||||||
|
1 , 4 , 4 , 4 , 4 , 4 , 4 , 4 , 4 , 4 , 4 , 1 , 1 ,
|
||||||
|
1 , 1 , 1 , 4 , 1 , 1 , 1 , 1 , 1 , 1
|
||||||
|
} };
|
|
@ -0,0 +1,39 @@
|
||||||
|
/*
|
||||||
|
Copyright 2022 Álvaro "Gondolindrim" Volpato <alvaro.volpato@usp.br>
|
||||||
|
|
||||||
|
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 ___ KC_NO
|
||||||
|
|
||||||
|
// 88T for 88-key plus tsangan
|
||||||
|
#define LAYOUT_tkl_f13_ansi_tsangan( \
|
||||||
|
K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, K0E, K0F, K0G, \
|
||||||
|
K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K1D, K1E, K1F, K1G, \
|
||||||
|
K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C, K2D, K2E, K2F, K2G, \
|
||||||
|
K30, K31, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, \
|
||||||
|
K40, K42, K43, K44, K45, K46, K47, K48, K49, K4A, K4B, K4C, K4F, \
|
||||||
|
K50, K51, K52, K56, K5A, K5B, K5C, K5E, K5F, K5G \
|
||||||
|
) { \
|
||||||
|
{ K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, K0E, K0F, K0G }, \
|
||||||
|
{ K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K1D, K1E, K1F, K1G }, \
|
||||||
|
{ K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C, K2D, K2E, K2F, K2G }, \
|
||||||
|
{ K30, K31, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, ___, ___, ___, ___ }, \
|
||||||
|
{ K40, ___, K42, K43, K44, K45, K46, K47, K48, K49, K4A, K4B, K4C, ___, ___, K4F, ___ }, \
|
||||||
|
{ K50, K51, K52, ___, ___, ___, K56, ___, ___, ___, K5A, K5B, K5C, ___, K5E, K5F, K5G } \
|
||||||
|
}
|
|
@ -0,0 +1,112 @@
|
||||||
|
/*
|
||||||
|
Copyright 2022 Álvaro "Gondolindrim" Volpato <alvaro.volpato@usp.br>
|
||||||
|
|
||||||
|
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
|
||||||
|
|
||||||
|
/* USB Device descriptor parameter */
|
||||||
|
#define VENDOR_ID 0x4150 // AP for AcheronProject
|
||||||
|
#define PRODUCT_ID 0x8873 // For 87H
|
||||||
|
#define DEVICE_VER 0x0001 // Revision Alpha
|
||||||
|
#define MANUFACTURER AcheronProject
|
||||||
|
#define PRODUCT Apollo88H-T-SC
|
||||||
|
|
||||||
|
/* key matrix size */
|
||||||
|
#define MATRIX_ROWS 6
|
||||||
|
#define MATRIX_COLS 17
|
||||||
|
|
||||||
|
// C0 , C1 , C2 , C3 , C4 , C5 , C6 , C7 , C8 , C9 , C10, C11, C12, C13, C14, C15, C16 }
|
||||||
|
#define MATRIX_COL_PINS { C8 , C9 , A8 , A10, C7 , C6 , B14, B12, B10, B1 , C5 , C4 , A7 , B0 , C11, A3 , B4 }
|
||||||
|
// R0 , R1 , R2 , R3 , R4 , R5
|
||||||
|
#define MATRIX_ROW_PINS { B3 , D2 , C12, A6 , A5 , A4 }
|
||||||
|
#define DIODE_DIRECTION COL2ROW
|
||||||
|
|
||||||
|
/* define if matrix has ghost */
|
||||||
|
//#define MATRIX_HAS_GHOST
|
||||||
|
|
||||||
|
/* Set 0 if debouncing isn't needed */
|
||||||
|
#define DEBOUNCE 5
|
||||||
|
|
||||||
|
/* 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
|
||||||
|
|
||||||
|
#define EARLY_INIT_PERFORM_BOOTLOADER_JUMP TRUE
|
||||||
|
|
||||||
|
#define STM32_HSECLK 8000000
|
||||||
|
|
||||||
|
#define RGB_DI_PIN B15
|
||||||
|
#define DRIVER_LED_TOTAL 87
|
||||||
|
|
||||||
|
#define WS2812_PWM_COMPLEMENTARY_OUTPUT
|
||||||
|
#define WS2812_PWM_DRIVER PWMD1
|
||||||
|
#define WS2812_PWM_CHANNEL 3
|
||||||
|
#define WS2812_PWM_PAL_MODE 1
|
||||||
|
#define WS2812_DMA_STREAM STM32_DMA2_STREAM5
|
||||||
|
#define WS2812_DMA_CHANNEL 6
|
||||||
|
|
||||||
|
#define RGB_MATRIX_STARTUP_VAL 60
|
||||||
|
#define RGB_MATRIX_FRAMEBUFFER_EFFECTS
|
||||||
|
#define RGB_MATRIX_KEYPRESSES
|
||||||
|
#define RGB_DISABLE_WHEN_USB_SUSPENDED // turn off effects when suspended
|
||||||
|
#define RGB_MATRIX_STARTUP_MODE RGB_MATRIX_CYCLE_LEFT_RIGHT
|
||||||
|
|
||||||
|
#define ENABLE_RGB_MATRIX_ALPHAS_MODS
|
||||||
|
#define ENABLE_RGB_MATRIX_GRADIENT_UP_DOWN
|
||||||
|
#define ENABLE_RGB_MATRIX_GRADIENT_LEFT_RIGHT
|
||||||
|
#define ENABLE_RGB_MATRIX_BREATHING
|
||||||
|
#define ENABLE_RGB_MATRIX_BAND_SAT
|
||||||
|
#define ENABLE_RGB_MATRIX_BAND_VAL
|
||||||
|
#define ENABLE_RGB_MATRIX_BAND_PINWHEEL_SAT
|
||||||
|
#define ENABLE_RGB_MATRIX_BAND_PINWHEEL_VAL
|
||||||
|
#define ENABLE_RGB_MATRIX_BAND_SPIRAL_SAT
|
||||||
|
#define ENABLE_RGB_MATRIX_BAND_SPIRAL_VAL
|
||||||
|
#define ENABLE_RGB_MATRIX_CYCLE_ALL
|
||||||
|
#define ENABLE_RGB_MATRIX_CYCLE_LEFT_RIGHT
|
||||||
|
#define ENABLE_RGB_MATRIX_CYCLE_UP_DOWN
|
||||||
|
#define ENABLE_RGB_MATRIX_RAINBOW_MOVING_CHEVRON
|
||||||
|
#define ENABLE_RGB_MATRIX_CYCLE_OUT_IN
|
||||||
|
#define ENABLE_RGB_MATRIX_CYCLE_OUT_IN_DUAL
|
||||||
|
#define ENABLE_RGB_MATRIX_CYCLE_PINWHEEL
|
||||||
|
#define ENABLE_RGB_MATRIX_CYCLE_SPIRAL
|
||||||
|
#define ENABLE_RGB_MATRIX_DUAL_BEACON
|
||||||
|
#define ENABLE_RGB_MATRIX_RAINBOW_BEACON
|
||||||
|
#define ENABLE_RGB_MATRIX_RAINBOW_PINWHEELS
|
||||||
|
#define ENABLE_RGB_MATRIX_RAINDROPS
|
||||||
|
#define ENABLE_RGB_MATRIX_JELLYBEAN_RAINDROPS
|
||||||
|
#define ENABLE_RGB_MATRIX_HUE_BREATHING
|
||||||
|
#define ENABLE_RGB_MATRIX_HUE_PENDULUM
|
||||||
|
#define ENABLE_RGB_MATRIX_HUE_WAVE
|
||||||
|
#define ENABLE_RGB_MATRIX_FRACTAL
|
||||||
|
#define ENABLE_RGB_MATRIX_PIXEL_RAIN
|
||||||
|
#define ENABLE_RGB_MATRIX_PIXEL_FLOW
|
||||||
|
|
||||||
|
#define ENABLE_RGB_MATRIX_TYPING_HEATMAP
|
||||||
|
#define ENABLE_RGB_MATRIX_DIGITAL_RAIN
|
||||||
|
|
||||||
|
#define ENABLE_RGB_MATRIX_SOLID_REACTIVE_SIMPLE
|
||||||
|
#define ENABLE_RGB_MATRIX_SOLID_REACTIVE
|
||||||
|
#define ENABLE_RGB_MATRIX_SOLID_REACTIVE_WIDE
|
||||||
|
#define ENABLE_RGB_MATRIX_SOLID_REACTIVE_MULTIWIDE
|
||||||
|
#define ENABLE_RGB_MATRIX_SOLID_REACTIVE_CROSS
|
||||||
|
#define ENABLE_RGB_MATRIX_SOLID_REACTIVE_MULTICROSS
|
||||||
|
#define ENABLE_RGB_MATRIX_SOLID_REACTIVE_NEXUS
|
||||||
|
#define ENABLE_RGB_MATRIX_SOLID_REACTIVE_MULTINEXUS
|
||||||
|
#define ENABLE_RGB_MATRIX_SPLASH
|
||||||
|
#define ENABLE_RGB_MATRIX_MULTISPLASH
|
||||||
|
#define ENABLE_RGB_MATRIX_SOLID_SPLASH
|
||||||
|
#define ENABLE_RGB_MATRIX_SOLID_MULTISPLASH
|
|
@ -0,0 +1,24 @@
|
||||||
|
/* Copyright 2022 QMK
|
||||||
|
*
|
||||||
|
* 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 HAL_USE_I2C TRUE
|
||||||
|
|
||||||
|
#define HAL_USE_PWM TRUE
|
||||||
|
#define HAL_USE_PAL TRUE
|
||||||
|
|
||||||
|
#include_next <halconf.h>
|
|
@ -0,0 +1,103 @@
|
||||||
|
{
|
||||||
|
"keyboard_name": "AcheronProject Apollo88H-T-SC",
|
||||||
|
"url": "",
|
||||||
|
"maintainer": "Gondolindrim",
|
||||||
|
"layouts": {
|
||||||
|
"LAYOUT_tkl_f13_ansi_tsangan": {
|
||||||
|
"layout": [
|
||||||
|
{"label":"Esc", "x":0, "y":0},
|
||||||
|
{"label":"F1", "x":1.25, "y":0},
|
||||||
|
{"label":"F2", "x":2.25, "y":0},
|
||||||
|
{"label":"F3", "x":3.25, "y":0},
|
||||||
|
{"label":"F4", "x":4.25, "y":0},
|
||||||
|
{"label":"F5", "x":5.5, "y":0},
|
||||||
|
{"label":"F6", "x":6.5, "y":0},
|
||||||
|
{"label":"F7", "x":7.5, "y":0},
|
||||||
|
{"label":"F8", "x":8.5, "y":0},
|
||||||
|
{"label":"F9", "x":9.75, "y":0},
|
||||||
|
{"label":"F10", "x":10.75, "y":0},
|
||||||
|
{"label":"F11", "x":11.75, "y":0},
|
||||||
|
{"label":"F12", "x":12.75, "y":0},
|
||||||
|
{"label":"F13", "x":14, "y":0},
|
||||||
|
{"label":"PrtSc", "x":15.25, "y":0},
|
||||||
|
{"label":"Scroll Lock", "x":16.25, "y":0},
|
||||||
|
{"label":"Pause", "x":17.25, "y":0},
|
||||||
|
|
||||||
|
{"label":"`~", "x":0, "y":1.25},
|
||||||
|
{"label":"1!", "x":1, "y":1.25},
|
||||||
|
{"label":"2@", "x":2, "y":1.25},
|
||||||
|
{"label":"3#", "x":3, "y":1.25},
|
||||||
|
{"label":"4$", "x":4, "y":1.25},
|
||||||
|
{"label":"5%", "x":5, "y":1.25},
|
||||||
|
{"label":"6^", "x":6, "y":1.25},
|
||||||
|
{"label":"7&", "x":7, "y":1.25},
|
||||||
|
{"label":"8*", "x":8, "y":1.25},
|
||||||
|
{"label":"9(", "x":9, "y":1.25},
|
||||||
|
{"label":"0)", "x":10, "y":1.25},
|
||||||
|
{"label":"-_", "x":11, "y":1.25},
|
||||||
|
{"label":"=+", "x":12, "y":1.25},
|
||||||
|
{"label":"Backspace", "x":13, "y":1.25, "w":2},
|
||||||
|
{"label":"Insert", "x":15.25, "y":1.25},
|
||||||
|
{"label":"Home", "x":16.25, "y":1.25},
|
||||||
|
{"label":"Page Up", "x":17.25, "y":1.25},
|
||||||
|
|
||||||
|
{"label":"Tab", "x":0, "y":2.25, "w":1.5},
|
||||||
|
{"label":"Q", "x":1.5, "y":2.25},
|
||||||
|
{"label":"W", "x":2.5, "y":2.25},
|
||||||
|
{"label":"E", "x":3.5, "y":2.25},
|
||||||
|
{"label":"R", "x":4.5, "y":2.25},
|
||||||
|
{"label":"T", "x":5.5, "y":2.25},
|
||||||
|
{"label":"Y", "x":6.5, "y":2.25},
|
||||||
|
{"label":"U", "x":7.5, "y":2.25},
|
||||||
|
{"label":"I", "x":8.5, "y":2.25},
|
||||||
|
{"label":"O", "x":9.5, "y":2.25},
|
||||||
|
{"label":"P", "x":10.5, "y":2.25},
|
||||||
|
{"label":"[{", "x":11.5, "y":2.25},
|
||||||
|
{"label":"]}", "x":12.5, "y":2.25},
|
||||||
|
{"label":"\\|", "x":13.5, "y":2.25, "w":1.5},
|
||||||
|
{"label":"Delete", "x":15.25, "y":2.25},
|
||||||
|
{"label":"End", "x":16.25, "y":2.25},
|
||||||
|
{"label":"Page Down", "x":17.25, "y":2.25},
|
||||||
|
|
||||||
|
{"label":"Caps Lock", "x":0, "y":3.25, "w":1.75},
|
||||||
|
{"label":"A", "x":1.75, "y":3.25},
|
||||||
|
{"label":"S", "x":2.75, "y":3.25},
|
||||||
|
{"label":"D", "x":3.75, "y":3.25},
|
||||||
|
{"label":"F", "x":4.75, "y":3.25},
|
||||||
|
{"label":"G", "x":5.75, "y":3.25},
|
||||||
|
{"label":"H", "x":6.75, "y":3.25},
|
||||||
|
{"label":"J", "x":7.75, "y":3.25},
|
||||||
|
{"label":"K", "x":8.75, "y":3.25},
|
||||||
|
{"label":"L", "x":9.75, "y":3.25},
|
||||||
|
{"label":";:", "x":10.75, "y":3.25},
|
||||||
|
{"label":"'\"", "x":11.75, "y":3.25},
|
||||||
|
{"label":"Enter", "x":12.75, "y":3.25, "w":2.25},
|
||||||
|
|
||||||
|
{"label":"Shift", "x":0, "y":4.25, "w":2.25},
|
||||||
|
{"label":"Z", "x":2.25, "y":4.25},
|
||||||
|
{"label":"X", "x":3.25, "y":4.25},
|
||||||
|
{"label":"C", "x":4.25, "y":4.25},
|
||||||
|
{"label":"V", "x":5.25, "y":4.25},
|
||||||
|
{"label":"B", "x":6.25, "y":4.25},
|
||||||
|
{"label":"N", "x":7.25, "y":4.25},
|
||||||
|
{"label":"M", "x":8.25, "y":4.25},
|
||||||
|
{"label":",<", "x":9.25, "y":4.25},
|
||||||
|
{"label":".>", "x":10.25, "y":4.25},
|
||||||
|
{"label":"/?", "x":11.25, "y":4.25},
|
||||||
|
{"label":"Shift", "x":12.25, "y":4.25, "w":2.75},
|
||||||
|
{"label":"\u2191", "x":16.25, "y":4.25},
|
||||||
|
|
||||||
|
{"label":"Ctrl", "x":0, "y":5.25, "w":1.5},
|
||||||
|
{"label":"GUI", "x":1.5, "y":5.25},
|
||||||
|
{"label":"Alt", "x":2.5, "y":5.25, "w":1.5},
|
||||||
|
{"label":"Space", "x":4, "y":5.25, "w":7},
|
||||||
|
{"label":"Alt", "x":11, "y":5.25, "w":1.5},
|
||||||
|
{"label":"GUI", "x":12.5, "y":5.25},
|
||||||
|
{"label":"Ctrl", "x":13.5, "y":5.25, "w":1.5},
|
||||||
|
{"label":"\u2190", "x":15.25, "y":5.25},
|
||||||
|
{"label":"\u2193", "x":16.25, "y":5.25},
|
||||||
|
{"label":"\u2192", "x":17.25, "y":5.25}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
|
@ -0,0 +1,53 @@
|
||||||
|
/*
|
||||||
|
Copyright 2020 Álvaro "Gondolindrim" Volpato <alvaro.volpato@usp.br>
|
||||||
|
|
||||||
|
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_tkl_f13_ansi_tsangan(
|
||||||
|
KC_ESC , 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_F13 , KC_PSCR, KC_SCRL, KC_PAUS ,
|
||||||
|
KC_GRV , 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_INS , KC_HOME, KC_PGUP ,
|
||||||
|
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_END , KC_PGDN ,
|
||||||
|
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_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_RALT, KC_RGUI, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT
|
||||||
|
),
|
||||||
|
[1] = LAYOUT_tkl_f13_ansi_tsangan(
|
||||||
|
RESET , 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, RGB_HUI, RGB_SAI, RGB_VAI, RGB_SPI, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
|
||||||
|
KC_TRNS, RGB_TOG, RGB_MOD, RGB_HUD, RGB_SAD, RGB_VAD, RGB_SPD, 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
|
||||||
|
),
|
||||||
|
[2] = LAYOUT_tkl_f13_ansi_tsangan(
|
||||||
|
RESET , 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, 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_tkl_f13_ansi_tsangan(
|
||||||
|
RESET , 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, 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
|
||||||
|
)
|
||||||
|
};
|
|
@ -0,0 +1,53 @@
|
||||||
|
/*
|
||||||
|
Copyright 2020 Álvaro "Gondolindrim" Volpato <alvaro.volpato@usp.br>
|
||||||
|
|
||||||
|
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_tkl_f13_ansi_tsangan(
|
||||||
|
KC_ESC , 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_F13 , KC_PSCR, KC_SCRL, KC_PAUS ,
|
||||||
|
KC_GRV , 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_INS , KC_HOME, KC_PGUP ,
|
||||||
|
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_END , KC_PGDN ,
|
||||||
|
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_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_RALT, KC_RGUI, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT
|
||||||
|
),
|
||||||
|
[1] = LAYOUT_tkl_f13_ansi_tsangan(
|
||||||
|
RESET , 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, RGB_HUI, RGB_SAI, RGB_VAI, RGB_SPI, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
|
||||||
|
KC_TRNS, RGB_TOG, RGB_MOD, RGB_HUD, RGB_SAD, RGB_VAD, RGB_SPD, 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
|
||||||
|
),
|
||||||
|
[2] = LAYOUT_tkl_f13_ansi_tsangan(
|
||||||
|
RESET , 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, 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_tkl_f13_ansi_tsangan(
|
||||||
|
RESET , 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, 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
|
||||||
|
)
|
||||||
|
};
|
|
@ -0,0 +1 @@
|
||||||
|
VIA_ENABLE = yes
|
|
@ -0,0 +1,41 @@
|
||||||
|
/* Copyright 2022 QMK
|
||||||
|
*
|
||||||
|
* 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_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 168
|
||||||
|
#define STM32_PLLP_VALUE 4
|
||||||
|
#define STM32_PLLQ_VALUE 7
|
||||||
|
#define STM32_PPRE1 STM32_PPRE1_DIV2
|
||||||
|
#define STM32_PPRE2 STM32_PPRE2_DIV1
|
||||||
|
|
||||||
|
#undef STM32_I2C_USE_I2C1
|
||||||
|
#define STM32_I2C_USE_I2C1 TRUE
|
||||||
|
|
||||||
|
#undef STM32_PWM_USE_ADVANCED
|
||||||
|
#define STM32_PWM_USE_ADVANCED TRUE
|
||||||
|
|
||||||
|
#undef STM32_PWM_USE_TIM1
|
||||||
|
#define STM32_PWM_USE_TIM1 TRUE
|
|
@ -0,0 +1,24 @@
|
||||||
|
# MCU name
|
||||||
|
MCU = STM32F401
|
||||||
|
|
||||||
|
# Bootloader selection
|
||||||
|
BOOTLOADER = stm32-dfu
|
||||||
|
|
||||||
|
# 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 = no # Console for debug
|
||||||
|
COMMAND_ENABLE = no # Commands for debug and configuration
|
||||||
|
NKRO_ENABLE = no # Enable N-Key Rollover
|
||||||
|
BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality
|
||||||
|
RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow
|
||||||
|
AUDIO_ENABLE = no # Audio output
|
||||||
|
RGB_MATRIX_ENABLE = yes
|
||||||
|
RGB_MATRIX_DRIVER = WS2812
|
||||||
|
EEPROM_DRIVER = i2c
|
||||||
|
|
||||||
|
# Enter lower-power sleep mode when on the ChibiOS idle thread
|
||||||
|
OPT_DEFS += -DCORTEX_ENABLE_WFI_IDLE=TRUE -DDEBUG_EEPROM_OUTPUT=TRUE
|
|
@ -0,0 +1,54 @@
|
||||||
|
# Acheron Apollo QMK firmware
|
||||||
|
|
||||||
|
![apollo](https://acheronproject.com/images/apollo/delta-pictures/delta1_small.jpeg)
|
||||||
|
|
||||||
|
The Apollo is Acheron Project's family of open-source, freely available tenkeyless (TKL) keyboard Printed Circuit Boards (PCB) which main feature is the per-key RGB lighting.
|
||||||
|
|
||||||
|
* Keyboard Maintainer: [Gondolindrim](https://github.com/Gondolindrim)
|
||||||
|
* Hardware Supported: open-source PCB using the [Joker template](https://acheronproject.com/joker_mcus/joker/). First units were manufactured using STM32F401 microcontroller;
|
||||||
|
* Hardware Availability: these PCBs are open-source so you can manufacture them yourself or order them from a factory. See the [project's documentation](https://acheronproject.com/pcbs/apollo/apollo/) for more information.
|
||||||
|
|
||||||
|
As of april 7, 2022, Apollo comes in three different layouts:
|
||||||
|
|
||||||
|
- 87H (default ANSI)
|
||||||
|
- 87H-T-SC (ANSI with tsangan bottom row and stepped caps);
|
||||||
|
- 88H-T-SC (ANSI with F13, tsangan bottom row and stepped caps);
|
||||||
|
|
||||||
|
See each variant's README for more information on flashing.
|
||||||
|
|
||||||
|
## Flashing instructions
|
||||||
|
|
||||||
|
### Step 1: enter bootloader
|
||||||
|
|
||||||
|
The DFU state in the bootloader can be accessed 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**: press the physical button on the back of the PCB for at least five seconds
|
||||||
|
* **Keycode in layout**: Press the key mapped to `RESET` if it is available (ESC key at layer 1 in the default layout)
|
||||||
|
|
||||||
|
### Step 2: compile firmware
|
||||||
|
|
||||||
|
After accessing the DFU state in your PCB, build the default layout using:
|
||||||
|
|
||||||
|
make acheron/apollo/87h/gamma:default # For 87H revision Gamma
|
||||||
|
make acheron/apollo/87h/delta:default # For 87H revision Delta
|
||||||
|
make acheron/apollo/87htsc:default # For 87H-T-SC (only a single revision as of may 2022)
|
||||||
|
make acheron/apollo/88htsc:default # For 88H-T-SC (only a single revision as of may 2022)
|
||||||
|
|
||||||
|
### Step 3: flashing
|
||||||
|
|
||||||
|
You can use a flashing tool like `dfu-util` or QMK Toolbox to download the resulting `*.bin` file into your PCB.
|
||||||
|
|
||||||
|
### (Alternative) Compile and flash
|
||||||
|
|
||||||
|
After accessing the DFU state in your PCB, you can compile-and-flash automatically using `dfu-util` through
|
||||||
|
|
||||||
|
make acheron/apollo/<variant>:default:flash
|
||||||
|
|
||||||
|
### VIA firmware
|
||||||
|
|
||||||
|
When compiling, just substitute `default` for `via`.
|
||||||
|
|
||||||
|
## Additional info
|
||||||
|
|
||||||
|
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).
|
|
@ -19,13 +19,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||||
|
|
||||||
#include "config_common.h"
|
#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 */
|
/* key matrix size */
|
||||||
#define MATRIX_ROWS 7
|
#define MATRIX_ROWS 7
|
||||||
#define MATRIX_COLS 6
|
#define MATRIX_COLS 6
|
||||||
|
|
|
@ -1,7 +1,13 @@
|
||||||
{
|
{
|
||||||
"keyboard_name": "rev41lp",
|
"keyboard_name": "rev41lp",
|
||||||
|
"manufacturer": "cyril279",
|
||||||
"url": "https://github.com/cyril279/keyboards/tree/main/revlp/41_1350",
|
"url": "https://github.com/cyril279/keyboards/tree/main/revlp/41_1350",
|
||||||
"maintainer": "cyril279",
|
"maintainer": "cyril279",
|
||||||
|
"usb": {
|
||||||
|
"vid": "0xFEED",
|
||||||
|
"pid": "0x5F10",
|
||||||
|
"device_version": "0.0.1"
|
||||||
|
},
|
||||||
"layouts": {
|
"layouts": {
|
||||||
"LAYOUT_rev41lp": {
|
"LAYOUT_rev41lp": {
|
||||||
"layout": [
|
"layout": [
|
||||||
|
|
|
@ -19,13 +19,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||||
|
|
||||||
#include "config_common.h"
|
#include "config_common.h"
|
||||||
|
|
||||||
/* USB Device descriptor parameter */
|
|
||||||
#define VENDOR_ID 0xBACA
|
|
||||||
#define PRODUCT_ID 0x6970
|
|
||||||
#define DEVICE_VER 0x0001
|
|
||||||
#define MANUFACTURER Viktus Design LLC
|
|
||||||
#define PRODUCT Bacca70
|
|
||||||
|
|
||||||
/* key matrix size */
|
/* key matrix size */
|
||||||
#define MATRIX_ROWS 12
|
#define MATRIX_ROWS 12
|
||||||
#define MATRIX_COLS 8
|
#define MATRIX_COLS 8
|
||||||
|
|
|
@ -1,7 +1,13 @@
|
||||||
{
|
{
|
||||||
"keyboard_name": "Bacca70",
|
"keyboard_name": "Bacca70",
|
||||||
|
"manufacturer": "Viktus Design LLC",
|
||||||
"url": "https://3dkeebs.com/",
|
"url": "https://3dkeebs.com/",
|
||||||
"maintainer": "keebnewb",
|
"maintainer": "keebnewb",
|
||||||
|
"usb": {
|
||||||
|
"vid": "0xBACA",
|
||||||
|
"pid": "0x6970",
|
||||||
|
"device_version": "0.0.1"
|
||||||
|
},
|
||||||
"layouts": {
|
"layouts": {
|
||||||
"LAYOUT_default": {
|
"LAYOUT_default": {
|
||||||
"layout": [
|
"layout": [
|
||||||
|
|
|
@ -19,13 +19,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||||
|
|
||||||
#include "config_common.h"
|
#include "config_common.h"
|
||||||
|
|
||||||
/* USB Device descriptor parameter */
|
|
||||||
#define VENDOR_ID 0xFEED
|
|
||||||
#define PRODUCT_ID 0x5050
|
|
||||||
#define DEVICE_VER 0x0001
|
|
||||||
#define MANUFACTURER Yiancar
|
|
||||||
#define PRODUCT Baguette
|
|
||||||
|
|
||||||
/* key matrix size */
|
/* key matrix size */
|
||||||
#define MATRIX_ROWS 5
|
#define MATRIX_ROWS 5
|
||||||
#define MATRIX_COLS 16
|
#define MATRIX_COLS 16
|
||||||
|
|
|
@ -1,8 +1,14 @@
|
||||||
{
|
{
|
||||||
"keyboard_name": "Baguette",
|
"keyboard_name": "Baguette",
|
||||||
|
"manufacturer": "Yiancar",
|
||||||
"url": "",
|
"url": "",
|
||||||
"maintainer": "qmk",
|
"maintainer": "qmk",
|
||||||
"bootloader": "atmel-dfu",
|
"bootloader": "atmel-dfu",
|
||||||
|
"usb": {
|
||||||
|
"vid": "0xFEED",
|
||||||
|
"pid": "0x5050",
|
||||||
|
"device_version": "0.0.1"
|
||||||
|
},
|
||||||
"layouts": {
|
"layouts": {
|
||||||
"LAYOUT_ansi": {
|
"LAYOUT_ansi": {
|
||||||
"layout": [
|
"layout": [
|
||||||
|
|
|
@ -17,13 +17,6 @@
|
||||||
|
|
||||||
#include "config_common.h"
|
#include "config_common.h"
|
||||||
|
|
||||||
/* USB Device descriptor parameter */
|
|
||||||
#define VENDOR_ID 0xFEED
|
|
||||||
#define PRODUCT_ID 0xF4B5
|
|
||||||
#define DEVICE_VER 0x0001
|
|
||||||
#define MANUFACTURER 3araht
|
|
||||||
#define PRODUCT bandominedoni
|
|
||||||
|
|
||||||
/* key matrix size */
|
/* key matrix size */
|
||||||
#define MATRIX_ROWS 12
|
#define MATRIX_ROWS 12
|
||||||
#define MATRIX_COLS 7
|
#define MATRIX_COLS 7
|
||||||
|
|
|
@ -1,7 +1,13 @@
|
||||||
{
|
{
|
||||||
"keyboard_name": "bandominedoni",
|
"keyboard_name": "bandominedoni",
|
||||||
|
"manufacturer": "3araht",
|
||||||
"url": "https://github.com/3araht",
|
"url": "https://github.com/3araht",
|
||||||
"maintainer": "3araht",
|
"maintainer": "3araht",
|
||||||
|
"usb": {
|
||||||
|
"vid": "0xFEED",
|
||||||
|
"pid": "0xF4B5",
|
||||||
|
"device_version": "0.0.1"
|
||||||
|
},
|
||||||
"layouts": {
|
"layouts": {
|
||||||
"LAYOUT": {
|
"LAYOUT": {
|
||||||
"layout": [
|
"layout": [
|
||||||
|
|
|
@ -19,13 +19,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||||
|
|
||||||
#include "config_common.h"
|
#include "config_common.h"
|
||||||
|
|
||||||
/* USB Device descriptor parameter */
|
|
||||||
#define VENDOR_ID 0xFEED
|
|
||||||
#define PRODUCT_ID 0x6060
|
|
||||||
#define DEVICE_VER 0x0001
|
|
||||||
#define MANUFACTURER Bantam Keyboards
|
|
||||||
#define PRODUCT Bantam44
|
|
||||||
|
|
||||||
/* key matrix size */
|
/* key matrix size */
|
||||||
#define MATRIX_ROWS 4
|
#define MATRIX_ROWS 4
|
||||||
#define MATRIX_COLS 12
|
#define MATRIX_COLS 12
|
||||||
|
|
|
@ -1,7 +1,13 @@
|
||||||
{
|
{
|
||||||
"keyboard_name": "Bantam-44",
|
"keyboard_name": "Bantam44",
|
||||||
|
"manufacturer": "Bantam Keyboards",
|
||||||
"url": "",
|
"url": "",
|
||||||
"maintainer": "qmk",
|
"maintainer": "qmk",
|
||||||
|
"usb": {
|
||||||
|
"vid": "0xFEED",
|
||||||
|
"pid": "0x6060",
|
||||||
|
"device_version": "0.0.1"
|
||||||
|
},
|
||||||
"layouts": {
|
"layouts": {
|
||||||
"LAYOUT": {
|
"LAYOUT": {
|
||||||
"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":"K04", "x":4, "y":0}, {"label":"K05", "x":5, "y":0}, {"label":"K06", "x":6, "y":0}, {"label":"K07", "x":7, "y":0}, {"label":"K08", "x":8, "y":0}, {"label":"K09", "x":9, "y":0}, {"label":"K0A", "x":10, "y":0}, {"label":"K0B", "x":11, "y":0}, {"label":"K10", "x":0, "y":1, "w":1.5}, {"label":"K11", "x":1.5, "y":1}, {"label":"K12", "x":2.5, "y":1}, {"label":"K13", "x":3.5, "y":1}, {"label":"K14", "x":4.5, "y":1}, {"label":"K15", "x":5.5, "y":1}, {"label":"K16", "x":6.5, "y":1}, {"label":"K17", "x":7.5, "y":1}, {"label":"K18", "x":8.5, "y":1}, {"label":"K19", "x":9.5, "y":1}, {"label":"K1A", "x":10.5, "y":1, "w":1.5}, {"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":"K24", "x":4, "y":2}, {"label":"K25", "x":5, "y":2}, {"label":"K26", "x":6, "y":2}, {"label":"K27", "x":7, "y":2}, {"label":"K28", "x":8, "y":2}, {"label":"K29", "x":9, "y":2}, {"label":"K2A", "x":10, "y":2}, {"label":"K2B", "x":11, "y":2}, {"label":"K30", "x":0, "y":3, "w":1.25}, {"label":"K31", "x":1.25, "y":3, "w":1.25}, {"label":"K32", "x":2.5, "y":3, "w":1.25}, {"label":"K33", "x":3.75, "y":3, "w":1.25}, {"label":"K34", "x":5, "y":3, "w":2.75}, {"label":"K35", "x":7.75, "y":3, "w":1.25}, {"label":"K36", "x":9, "y":3}, {"label":"K37", "x":10, "y":3}, {"label":"K38", "x":11, "y":3}]
|
"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":"K04", "x":4, "y":0}, {"label":"K05", "x":5, "y":0}, {"label":"K06", "x":6, "y":0}, {"label":"K07", "x":7, "y":0}, {"label":"K08", "x":8, "y":0}, {"label":"K09", "x":9, "y":0}, {"label":"K0A", "x":10, "y":0}, {"label":"K0B", "x":11, "y":0}, {"label":"K10", "x":0, "y":1, "w":1.5}, {"label":"K11", "x":1.5, "y":1}, {"label":"K12", "x":2.5, "y":1}, {"label":"K13", "x":3.5, "y":1}, {"label":"K14", "x":4.5, "y":1}, {"label":"K15", "x":5.5, "y":1}, {"label":"K16", "x":6.5, "y":1}, {"label":"K17", "x":7.5, "y":1}, {"label":"K18", "x":8.5, "y":1}, {"label":"K19", "x":9.5, "y":1}, {"label":"K1A", "x":10.5, "y":1, "w":1.5}, {"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":"K24", "x":4, "y":2}, {"label":"K25", "x":5, "y":2}, {"label":"K26", "x":6, "y":2}, {"label":"K27", "x":7, "y":2}, {"label":"K28", "x":8, "y":2}, {"label":"K29", "x":9, "y":2}, {"label":"K2A", "x":10, "y":2}, {"label":"K2B", "x":11, "y":2}, {"label":"K30", "x":0, "y":3, "w":1.25}, {"label":"K31", "x":1.25, "y":3, "w":1.25}, {"label":"K32", "x":2.5, "y":3, "w":1.25}, {"label":"K33", "x":3.75, "y":3, "w":1.25}, {"label":"K34", "x":5, "y":3, "w":2.75}, {"label":"K35", "x":7.75, "y":3, "w":1.25}, {"label":"K36", "x":9, "y":3}, {"label":"K37", "x":10, "y":3}, {"label":"K38", "x":11, "y":3}]
|
||||||
|
|
|
@ -19,12 +19,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||||
|
|
||||||
#include "config_common.h"
|
#include "config_common.h"
|
||||||
|
|
||||||
#define VENDOR_ID 0x7033
|
|
||||||
#define PRODUCT_ID 0x4749
|
|
||||||
#define DEVICE_VER 0x0001
|
|
||||||
#define MANUFACTURER P3D Store
|
|
||||||
#define PRODUCT Barleycorn SMD
|
|
||||||
|
|
||||||
/* key matrix size */
|
/* key matrix size */
|
||||||
#define MATRIX_ROWS 5
|
#define MATRIX_ROWS 5
|
||||||
#define MATRIX_COLS 18
|
#define MATRIX_COLS 18
|
||||||
|
|
|
@ -1,6 +1,12 @@
|
||||||
{
|
{
|
||||||
"keyboard_name": "Barleycorn SMD",
|
"keyboard_name": "Barleycorn SMD",
|
||||||
|
"manufacturer": "P3D Store",
|
||||||
"maintainer": "matthewdias",
|
"maintainer": "matthewdias",
|
||||||
|
"usb": {
|
||||||
|
"vid": "0x7033",
|
||||||
|
"pid": "0x4749",
|
||||||
|
"device_version": "0.0.1"
|
||||||
|
},
|
||||||
"layouts": {
|
"layouts": {
|
||||||
"LAYOUT_all": {
|
"LAYOUT_all": {
|
||||||
"layout": [
|
"layout": [
|
||||||
|
|
|
@ -18,13 +18,6 @@
|
||||||
|
|
||||||
#include "config_common.h"
|
#include "config_common.h"
|
||||||
|
|
||||||
/* USB Device descriptor parameter */
|
|
||||||
#define VENDOR_ID 0x6B6E
|
|
||||||
#define PRODUCT_ID 0x0001
|
|
||||||
#define DEVICE_VER 0x0001
|
|
||||||
#define MANUFACTURER knaruo
|
|
||||||
#define PRODUCT barracuda
|
|
||||||
|
|
||||||
/* key matrix size */
|
/* key matrix size */
|
||||||
#define MATRIX_ROWS 6
|
#define MATRIX_ROWS 6
|
||||||
#define MATRIX_COLS 6
|
#define MATRIX_COLS 6
|
||||||
|
|
|
@ -1,7 +1,13 @@
|
||||||
{
|
{
|
||||||
"keyboard_name": "barracuda",
|
"keyboard_name": "barracuda",
|
||||||
|
"manufacturer": "knaruo",
|
||||||
"url": "https://github.com/knaruo/barracuda",
|
"url": "https://github.com/knaruo/barracuda",
|
||||||
"maintainer": "knaruo",
|
"maintainer": "knaruo",
|
||||||
|
"usb": {
|
||||||
|
"vid": "0x6B6E",
|
||||||
|
"pid": "0x0001",
|
||||||
|
"device_version": "0.0.1"
|
||||||
|
},
|
||||||
"layouts": {
|
"layouts": {
|
||||||
"LAYOUT_ortho_3x11": {
|
"LAYOUT_ortho_3x11": {
|
||||||
"layout": [
|
"layout": [
|
||||||
|
|
|
@ -18,13 +18,6 @@
|
||||||
|
|
||||||
#include "config_common.h"
|
#include "config_common.h"
|
||||||
|
|
||||||
/* USB Device descriptor parameter */
|
|
||||||
#define VENDOR_ID 0x04D8
|
|
||||||
#define PRODUCT_ID 0xEAF3
|
|
||||||
#define DEVICE_VER 0x0001
|
|
||||||
#define MANUFACTURER Swiftrax
|
|
||||||
#define PRODUCT Trifecta
|
|
||||||
|
|
||||||
/* key matrix size */
|
/* key matrix size */
|
||||||
#define MATRIX_ROWS 10
|
#define MATRIX_ROWS 10
|
||||||
#define MATRIX_COLS 8
|
#define MATRIX_COLS 8
|
||||||
|
|
|
@ -1,7 +1,13 @@
|
||||||
{
|
{
|
||||||
"keyboard_name": "Trifecta",
|
"keyboard_name": "Trifecta",
|
||||||
|
"manufacturer": "Swiftrax",
|
||||||
"url": "https://www.basekeys.com",
|
"url": "https://www.basekeys.com",
|
||||||
"maintainer": "Swiftrax",
|
"maintainer": "Swiftrax",
|
||||||
|
"usb": {
|
||||||
|
"vid": "0x04D8",
|
||||||
|
"pid": "0xEAF3",
|
||||||
|
"device_version": "0.0.1"
|
||||||
|
},
|
||||||
"layouts": {
|
"layouts": {
|
||||||
"LAYOUT": {
|
"LAYOUT": {
|
||||||
"layout": [{"label":"~", "x":0, "y":0}, {"label":"!", "x":1, "y":0}, {"label":"@", "x":2, "y":0}, {"label":"#", "x":3, "y":0}, {"label":"$", "x":4, "y":0}, {"label":"%", "x":5, "y":0}, {"label":"^", "x":6, "y":0}, {"label":"&", "x":8.75, "y":0}, {"label":"*", "x":9.75, "y":0}, {"label":"(", "x":10.75, "y":0}, {"label":")", "x":11.75, "y":0}, {"label":"_", "x":12.75, "y":0}, {"label":"+", "x":13.75, "y":0}, {"label":"BS", "x":14.75, "y":0}, {"x":15.75, "y":0}, {"x":17, "y":0}, {"label":"Tab", "x":0, "y":1, "w":1.5}, {"label":"Q", "x":1.5, "y":1}, {"label":"W", "x":2.5, "y":1}, {"label":"E", "x":3.5, "y":1}, {"label":"R", "x":4.5, "y":1}, {"label":"T", "x":5.5, "y":1}, {"label":"Y", "x":8.25, "y":1}, {"label":"U", "x":9.25, "y":1}, {"label":"I", "x":10.25, "y":1}, {"label":"O", "x":11.25, "y":1}, {"label":"P", "x":12.25, "y":1}, {"label":"{", "x":13.25, "y":1}, {"label":"}", "x":14.25, "y":1}, {"label":"|", "x":15.25, "y":1, "w":1.5}, {"x":17, "y":1}, {"label":"Caps Lock", "x":0, "y":2, "w":1.75}, {"label":"A", "x":1.75, "y":2}, {"label":"S", "x":2.75, "y":2}, {"label":"D", "x":3.75, "y":2}, {"label":"F", "x":4.75, "y":2}, {"label":"G", "x":5.75, "y":2}, {"label":"H", "x":8.5, "y":2}, {"label":"J", "x":9.5, "y":2}, {"label":"K", "x":10.5, "y":2}, {"label":"L", "x":11.5, "y":2}, {"label":":", "x":12.5, "y":2}, {"label":"\"", "x":13.5, "y":2}, {"label":"Enter", "x":14.5, "y":2, "w":2.25}, {"x":17, "y":2}, {"label":"Shift", "x":0, "y":3, "w":2.25}, {"label":"Z", "x":2.25, "y":3}, {"label":"X", "x":3.25, "y":3}, {"label":"C", "x":4.25, "y":3}, {"label":"V", "x":5.25, "y":3}, {"label":"B", "x":6.25, "y":3}, {"x":8, "y":3}, {"label":"N", "x":9, "y":3}, {"label":"M", "x":10, "y":3}, {"label":"<", "x":11, "y":3}, {"label":">", "x":12, "y":3}, {"label":"?", "x":13, "y":3}, {"label":"Shift", "x":14, "y":3, "w":1.75}, {"x":16, "y":3.25}, {"label":"Ctrl", "x":0, "y":4, "w":1.25}, {"label":"Win", "x":1.25, "y":4, "w":1.25}, {"label":"Alt", "x":3, "y":4, "w":1.5}, {"x":4.5, "y":4, "w":2.25}, {"x":6.75, "y":4}, {"x":8.5, "y":4, "w":2.75}, {"label":"Alt", "x":11.25, "y":4, "w":1.5}, {"label":"Win", "x":13.5, "y":4, "w":1.25}, {"x":15, "y":4.25}, {"x":16, "y":4.25}, {"x":17, "y":4.25}]
|
"layout": [{"label":"~", "x":0, "y":0}, {"label":"!", "x":1, "y":0}, {"label":"@", "x":2, "y":0}, {"label":"#", "x":3, "y":0}, {"label":"$", "x":4, "y":0}, {"label":"%", "x":5, "y":0}, {"label":"^", "x":6, "y":0}, {"label":"&", "x":8.75, "y":0}, {"label":"*", "x":9.75, "y":0}, {"label":"(", "x":10.75, "y":0}, {"label":")", "x":11.75, "y":0}, {"label":"_", "x":12.75, "y":0}, {"label":"+", "x":13.75, "y":0}, {"label":"BS", "x":14.75, "y":0}, {"x":15.75, "y":0}, {"x":17, "y":0}, {"label":"Tab", "x":0, "y":1, "w":1.5}, {"label":"Q", "x":1.5, "y":1}, {"label":"W", "x":2.5, "y":1}, {"label":"E", "x":3.5, "y":1}, {"label":"R", "x":4.5, "y":1}, {"label":"T", "x":5.5, "y":1}, {"label":"Y", "x":8.25, "y":1}, {"label":"U", "x":9.25, "y":1}, {"label":"I", "x":10.25, "y":1}, {"label":"O", "x":11.25, "y":1}, {"label":"P", "x":12.25, "y":1}, {"label":"{", "x":13.25, "y":1}, {"label":"}", "x":14.25, "y":1}, {"label":"|", "x":15.25, "y":1, "w":1.5}, {"x":17, "y":1}, {"label":"Caps Lock", "x":0, "y":2, "w":1.75}, {"label":"A", "x":1.75, "y":2}, {"label":"S", "x":2.75, "y":2}, {"label":"D", "x":3.75, "y":2}, {"label":"F", "x":4.75, "y":2}, {"label":"G", "x":5.75, "y":2}, {"label":"H", "x":8.5, "y":2}, {"label":"J", "x":9.5, "y":2}, {"label":"K", "x":10.5, "y":2}, {"label":"L", "x":11.5, "y":2}, {"label":":", "x":12.5, "y":2}, {"label":"\"", "x":13.5, "y":2}, {"label":"Enter", "x":14.5, "y":2, "w":2.25}, {"x":17, "y":2}, {"label":"Shift", "x":0, "y":3, "w":2.25}, {"label":"Z", "x":2.25, "y":3}, {"label":"X", "x":3.25, "y":3}, {"label":"C", "x":4.25, "y":3}, {"label":"V", "x":5.25, "y":3}, {"label":"B", "x":6.25, "y":3}, {"x":8, "y":3}, {"label":"N", "x":9, "y":3}, {"label":"M", "x":10, "y":3}, {"label":"<", "x":11, "y":3}, {"label":">", "x":12, "y":3}, {"label":"?", "x":13, "y":3}, {"label":"Shift", "x":14, "y":3, "w":1.75}, {"x":16, "y":3.25}, {"label":"Ctrl", "x":0, "y":4, "w":1.25}, {"label":"Win", "x":1.25, "y":4, "w":1.25}, {"label":"Alt", "x":3, "y":4, "w":1.5}, {"x":4.5, "y":4, "w":2.25}, {"x":6.75, "y":4}, {"x":8.5, "y":4, "w":2.75}, {"label":"Alt", "x":11.25, "y":4, "w":1.5}, {"label":"Win", "x":13.5, "y":4, "w":1.25}, {"x":15, "y":4.25}, {"x":16, "y":4.25}, {"x":17, "y":4.25}]
|
||||||
|
|
|
@ -18,12 +18,6 @@
|
||||||
|
|
||||||
#include "config_common.h"
|
#include "config_common.h"
|
||||||
|
|
||||||
#define VENDOR_ID 0x6B62
|
|
||||||
#define PRODUCT_ID 0x8989
|
|
||||||
#define DEVICE_VER 0x0001
|
|
||||||
#define MANUFACTURER Clackery
|
|
||||||
#define PRODUCT Basketweave
|
|
||||||
|
|
||||||
/* key matrix size */
|
/* key matrix size */
|
||||||
#define MATRIX_ROWS 5
|
#define MATRIX_ROWS 5
|
||||||
#define MATRIX_COLS 15
|
#define MATRIX_COLS 15
|
||||||
|
|
|
@ -1,7 +1,13 @@
|
||||||
{
|
{
|
||||||
"keyboard_name": "Basketweave",
|
"keyboard_name": "Basketweave",
|
||||||
|
"manufacturer": "Clackery",
|
||||||
"url": "https://github.com/null-ll/basketweave",
|
"url": "https://github.com/null-ll/basketweave",
|
||||||
"maintainer": "null-ll",
|
"maintainer": "null-ll",
|
||||||
|
"usb": {
|
||||||
|
"vid": "0x6B62",
|
||||||
|
"pid": "0x8989",
|
||||||
|
"device_version": "0.0.1"
|
||||||
|
},
|
||||||
"layouts": {
|
"layouts": {
|
||||||
"LAYOUT_default": {
|
"LAYOUT_default": {
|
||||||
"layout": [
|
"layout": [
|
||||||
|
|
|
@ -17,11 +17,6 @@
|
||||||
|
|
||||||
#pragma once
|
#pragma once
|
||||||
#include "config_common.h"
|
#include "config_common.h"
|
||||||
#define VENDOR_ID 0xA8F8
|
|
||||||
#define PRODUCT_ID 0x1829
|
|
||||||
#define DEVICE_VER 0x0001
|
|
||||||
#define MANUFACTURER Bastard Keyboards
|
|
||||||
#define PRODUCT Scylla
|
|
||||||
|
|
||||||
#define MATRIX_ROWS 10
|
#define MATRIX_ROWS 10
|
||||||
#define MATRIX_COLS 6
|
#define MATRIX_COLS 6
|
||||||
|
|
|
@ -1,7 +1,13 @@
|
||||||
{
|
{
|
||||||
"keyboard_name": "The Bastard Keyboard",
|
"keyboard_name": "Scylla",
|
||||||
|
"manufacturer": "Bastard Keyboards",
|
||||||
"url": "https://bastardkb.com/",
|
"url": "https://bastardkb.com/",
|
||||||
"maintainer": "Quentin Lebastard",
|
"maintainer": "Quentin Lebastard",
|
||||||
|
"usb": {
|
||||||
|
"vid": "0xA8F8",
|
||||||
|
"pid": "0x1829",
|
||||||
|
"device_version": "0.0.1"
|
||||||
|
},
|
||||||
"layouts": {
|
"layouts": {
|
||||||
"LAYOUT_split_4x6_5": {
|
"LAYOUT_split_4x6_5": {
|
||||||
"layout": [
|
"layout": [
|
||||||
|
|
|
@ -17,11 +17,6 @@
|
||||||
|
|
||||||
#pragma once
|
#pragma once
|
||||||
#include "config_common.h"
|
#include "config_common.h"
|
||||||
#define VENDOR_ID 0xA8F8
|
|
||||||
#define PRODUCT_ID 0x1830
|
|
||||||
#define DEVICE_VER 0x0001
|
|
||||||
#define MANUFACTURER Bastard Keyboards
|
|
||||||
#define PRODUCT Skeletyl
|
|
||||||
|
|
||||||
#define MATRIX_ROWS 8
|
#define MATRIX_ROWS 8
|
||||||
#define MATRIX_COLS 5
|
#define MATRIX_COLS 5
|
||||||
|
|
|
@ -1,7 +1,13 @@
|
||||||
{
|
{
|
||||||
"keyboard_name": "Skeletyl",
|
"keyboard_name": "Skeletyl",
|
||||||
|
"manufacturer": "Bastard Keyboards",
|
||||||
"url": "https://www.bastardkb.com",
|
"url": "https://www.bastardkb.com",
|
||||||
"maintainer": "Quentin Lebastard",
|
"maintainer": "Quentin Lebastard",
|
||||||
|
"usb": {
|
||||||
|
"vid": "0xA8F8",
|
||||||
|
"pid": "0x1830",
|
||||||
|
"device_version": "0.0.1"
|
||||||
|
},
|
||||||
"layouts": {
|
"layouts": {
|
||||||
"LAYOUT_split_3x5_3": {
|
"LAYOUT_split_3x5_3": {
|
||||||
"layout": [
|
"layout": [
|
||||||
|
|
|
@ -17,11 +17,6 @@
|
||||||
|
|
||||||
#pragma once
|
#pragma once
|
||||||
#include "config_common.h"
|
#include "config_common.h"
|
||||||
#define VENDOR_ID 0xA8F8
|
|
||||||
#define PRODUCT_ID 0x1828
|
|
||||||
#define DEVICE_VER 0x0001
|
|
||||||
#define MANUFACTURER Bastard Keyboards
|
|
||||||
#define PRODUCT The Bastard Keyboard
|
|
||||||
|
|
||||||
#define MATRIX_ROWS 10
|
#define MATRIX_ROWS 10
|
||||||
#define MATRIX_COLS 6
|
#define MATRIX_COLS 6
|
||||||
|
|
|
@ -1,7 +1,13 @@
|
||||||
{
|
{
|
||||||
"keyboard_name": "The Bastard Keyboard",
|
"keyboard_name": "The Bastard Keyboard",
|
||||||
|
"manufacturer": "Bastard Keyboards",
|
||||||
"url": "https://bastardkb.com/",
|
"url": "https://bastardkb.com/",
|
||||||
"maintainer": "Quentin Lebastard",
|
"maintainer": "Quentin Lebastard",
|
||||||
|
"usb": {
|
||||||
|
"vid": "0xA8F8",
|
||||||
|
"pid": "0x1828",
|
||||||
|
"device_version": "0.0.1"
|
||||||
|
},
|
||||||
"layouts": {
|
"layouts": {
|
||||||
"LAYOUT_split_4x6_5": {
|
"LAYOUT_split_4x6_5": {
|
||||||
"layout": [
|
"layout": [
|
||||||
|
|
|
@ -17,11 +17,6 @@
|
||||||
|
|
||||||
#pragma once
|
#pragma once
|
||||||
#include "config_common.h"
|
#include "config_common.h"
|
||||||
#define VENDOR_ID 0xA8F8
|
|
||||||
#define PRODUCT_ID 0x1828
|
|
||||||
#define DEVICE_VER 0x0001
|
|
||||||
#define MANUFACTURER Bastard Keyboards
|
|
||||||
#define PRODUCT TBK Mini
|
|
||||||
|
|
||||||
#define MATRIX_ROWS 8
|
#define MATRIX_ROWS 8
|
||||||
#define MATRIX_COLS 6
|
#define MATRIX_COLS 6
|
||||||
|
|
|
@ -1,7 +1,13 @@
|
||||||
{
|
{
|
||||||
"keyboard_name": "TBK Mini",
|
"keyboard_name": "TBK Mini",
|
||||||
|
"manufacturer": "Bastard Keyboards",
|
||||||
"url": "https://www.bastardkb.com",
|
"url": "https://www.bastardkb.com",
|
||||||
"maintainer": "Quentin Lebastard",
|
"maintainer": "Quentin Lebastard",
|
||||||
|
"usb": {
|
||||||
|
"vid": "0xA8F8",
|
||||||
|
"pid": "0x1828",
|
||||||
|
"device_version": "0.0.1"
|
||||||
|
},
|
||||||
"layouts": {
|
"layouts": {
|
||||||
"LAYOUT_split_3x6_3": {
|
"LAYOUT_split_3x6_3": {
|
||||||
"layout": [
|
"layout": [
|
||||||
|
|
|
@ -18,13 +18,6 @@
|
||||||
|
|
||||||
#include "config_common.h"
|
#include "config_common.h"
|
||||||
|
|
||||||
/* USB Device descriptor parameter */
|
|
||||||
#define VENDOR_ID 0x6262
|
|
||||||
#define PRODUCT_ID 0x0001
|
|
||||||
#define DEVICE_VER 0x0001
|
|
||||||
#define MANUFACTURER bbrfkr
|
|
||||||
#define PRODUCT dynamis
|
|
||||||
|
|
||||||
/* key matrix */
|
/* key matrix */
|
||||||
#define MATRIX_ROWS 10
|
#define MATRIX_ROWS 10
|
||||||
#define MATRIX_COLS 7
|
#define MATRIX_COLS 7
|
||||||
|
|
|
@ -1,7 +1,13 @@
|
||||||
{
|
{
|
||||||
"keyboard_name": "dynamis",
|
"keyboard_name": "dynamis",
|
||||||
|
"manufacturer": "bbrfkr",
|
||||||
"url": "https://github.com/bbrfkr/keyboards",
|
"url": "https://github.com/bbrfkr/keyboards",
|
||||||
"maintainer": "bbrfkr",
|
"maintainer": "bbrfkr",
|
||||||
|
"usb": {
|
||||||
|
"vid": "0x6262",
|
||||||
|
"pid": "0x0001",
|
||||||
|
"device_version": "0.0.1"
|
||||||
|
},
|
||||||
"layouts": {
|
"layouts": {
|
||||||
"LAYOUT_ansi": {
|
"LAYOUT_ansi": {
|
||||||
"layout": [
|
"layout": [
|
||||||
|
|
|
@ -18,13 +18,6 @@
|
||||||
|
|
||||||
#include "config_common.h"
|
#include "config_common.h"
|
||||||
|
|
||||||
/* USB Device descriptor parameter */
|
|
||||||
#define VENDOR_ID 0x6F6A // "oj"
|
|
||||||
#define PRODUCT_ID 0x6276 // "bv"
|
|
||||||
#define DEVICE_VER 0x0001
|
|
||||||
#define MANUFACTURER OJ
|
|
||||||
#define PRODUCT beatervan
|
|
||||||
|
|
||||||
/* key matrix size */
|
/* key matrix size */
|
||||||
#define MATRIX_ROWS 4
|
#define MATRIX_ROWS 4
|
||||||
#define MATRIX_COLS 12
|
#define MATRIX_COLS 12
|
||||||
|
|
|
@ -1,7 +1,13 @@
|
||||||
{
|
{
|
||||||
"keyboard_name": "beatervan",
|
"keyboard_name": "beatervan",
|
||||||
|
"manufacturer": "OJ",
|
||||||
"url": "",
|
"url": "",
|
||||||
"maintainer": "OJ",
|
"maintainer": "OJ",
|
||||||
|
"usb": {
|
||||||
|
"vid": "0x6F7A",
|
||||||
|
"pid": "0x6276",
|
||||||
|
"device_version": "0.0.1"
|
||||||
|
},
|
||||||
"layouts": {
|
"layouts": {
|
||||||
"LAYOUT": {
|
"LAYOUT": {
|
||||||
"layout": [
|
"layout": [
|
||||||
|
|
|
@ -19,12 +19,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||||
|
|
||||||
#include "config_common.h"
|
#include "config_common.h"
|
||||||
|
|
||||||
#define VENDOR_ID 0x20A0
|
|
||||||
#define PRODUCT_ID 0x422D
|
|
||||||
#define DEVICE_VER 0x0200
|
|
||||||
#define MANUFACTURER NotWinkeyless
|
|
||||||
#define PRODUCT B.fake
|
|
||||||
|
|
||||||
#define RGBLED_NUM 16
|
#define RGBLED_NUM 16
|
||||||
|
|
||||||
#define MATRIX_ROWS 8
|
#define MATRIX_ROWS 8
|
||||||
|
|
|
@ -1,7 +1,13 @@
|
||||||
{
|
{
|
||||||
"keyboard_name": "b.fake",
|
"keyboard_name": "B.fake",
|
||||||
|
"manufacturer": "NotWinkeyless",
|
||||||
"url": "",
|
"url": "",
|
||||||
"maintainer": "qmk",
|
"maintainer": "qmk",
|
||||||
|
"usb": {
|
||||||
|
"vid": "0x20A0",
|
||||||
|
"pid": "0x422D",
|
||||||
|
"device_version": "2.0.0"
|
||||||
|
},
|
||||||
"layouts": {
|
"layouts": {
|
||||||
"LAYOUT_all": {
|
"LAYOUT_all": {
|
||||||
"layout": [{"label":"~", "x":0, "y":0}, {"label":"!", "x":1, "y":0}, {"label":"@", "x":2, "y":0}, {"label":"#", "x":3, "y":0}, {"label":"$", "x":4, "y":0}, {"label":"%", "x":5, "y":0}, {"label":"^", "x":6, "y":0}, {"label":"&", "x":7, "y":0}, {"label":"*", "x":8, "y":0}, {"label":"(", "x":9, "y":0}, {"label":")", "x":10, "y":0}, {"label":"_", "x":11, "y":0}, {"label":"+", "x":12, "y":0}, {"x":13, "y":0}, {"x":14, "y":0}, {"label":"Tab", "x":0, "y":1, "w":1.5}, {"label":"Q", "x":1.5, "y":1}, {"label":"W", "x":2.5, "y":1}, {"label":"E", "x":3.5, "y":1}, {"label":"R", "x":4.5, "y":1}, {"label":"T", "x":5.5, "y":1}, {"label":"Y", "x":6.5, "y":1}, {"label":"U", "x":7.5, "y":1}, {"label":"I", "x":8.5, "y":1}, {"label":"O", "x":9.5, "y":1}, {"label":"P", "x":10.5, "y":1}, {"label":"{", "x":11.5, "y":1}, {"label":"}", "x":12.5, "y":1}, {"label":"|", "x":13.5, "y":1, "w":1.5}, {"label":"Caps Lock", "x":0, "y":2, "w":1.75}, {"label":"A", "x":1.75, "y":2}, {"label":"S", "x":2.75, "y":2}, {"label":"D", "x":3.75, "y":2}, {"label":"F", "x":4.75, "y":2}, {"label":"G", "x":5.75, "y":2}, {"label":"H", "x":6.75, "y":2}, {"label":"J", "x":7.75, "y":2}, {"label":"K", "x":8.75, "y":2}, {"label":"L", "x":9.75, "y":2}, {"label":":", "x":10.75, "y":2}, {"label":"\"", "x":11.75, "y":2}, {"label":"Enter", "x":12.75, "y":2, "w":2.25}, {"label":"Shift", "x":0, "y":3, "w":1.25}, {"x":1.25, "y":3}, {"label":"Z", "x":2.25, "y":3}, {"label":"X", "x":3.25, "y":3}, {"label":"C", "x":4.25, "y":3}, {"label":"V", "x":5.25, "y":3}, {"label":"B", "x":6.25, "y":3}, {"label":"N", "x":7.25, "y":3}, {"label":"M", "x":8.25, "y":3}, {"label":"<", "x":9.25, "y":3}, {"label":">", "x":10.25, "y":3}, {"label":"?", "x":11.25, "y":3}, {"label":"Shift", "x":12.25, "y":3, "w":1.75}, {"x":14, "y":3}, {"label":"Ctrl", "x":0, "y":4, "w":1.25}, {"label":"Win", "x":1.25, "y":4, "w":1.25}, {"label":"Alt", "x":2.5, "y":4, "w":1.25}, {"x":3.75, "y":4, "w":6.25}, {"label":"Alt", "x":10, "y":4, "w":1.25}, {"label":"Win", "x":11.25, "y":4, "w":1.25}, {"label":"Menu", "x":12.5, "y":4, "w":1.25}, {"label":"Ctrl", "x":13.75, "y":4, "w":1.25}]
|
"layout": [{"label":"~", "x":0, "y":0}, {"label":"!", "x":1, "y":0}, {"label":"@", "x":2, "y":0}, {"label":"#", "x":3, "y":0}, {"label":"$", "x":4, "y":0}, {"label":"%", "x":5, "y":0}, {"label":"^", "x":6, "y":0}, {"label":"&", "x":7, "y":0}, {"label":"*", "x":8, "y":0}, {"label":"(", "x":9, "y":0}, {"label":")", "x":10, "y":0}, {"label":"_", "x":11, "y":0}, {"label":"+", "x":12, "y":0}, {"x":13, "y":0}, {"x":14, "y":0}, {"label":"Tab", "x":0, "y":1, "w":1.5}, {"label":"Q", "x":1.5, "y":1}, {"label":"W", "x":2.5, "y":1}, {"label":"E", "x":3.5, "y":1}, {"label":"R", "x":4.5, "y":1}, {"label":"T", "x":5.5, "y":1}, {"label":"Y", "x":6.5, "y":1}, {"label":"U", "x":7.5, "y":1}, {"label":"I", "x":8.5, "y":1}, {"label":"O", "x":9.5, "y":1}, {"label":"P", "x":10.5, "y":1}, {"label":"{", "x":11.5, "y":1}, {"label":"}", "x":12.5, "y":1}, {"label":"|", "x":13.5, "y":1, "w":1.5}, {"label":"Caps Lock", "x":0, "y":2, "w":1.75}, {"label":"A", "x":1.75, "y":2}, {"label":"S", "x":2.75, "y":2}, {"label":"D", "x":3.75, "y":2}, {"label":"F", "x":4.75, "y":2}, {"label":"G", "x":5.75, "y":2}, {"label":"H", "x":6.75, "y":2}, {"label":"J", "x":7.75, "y":2}, {"label":"K", "x":8.75, "y":2}, {"label":"L", "x":9.75, "y":2}, {"label":":", "x":10.75, "y":2}, {"label":"\"", "x":11.75, "y":2}, {"label":"Enter", "x":12.75, "y":2, "w":2.25}, {"label":"Shift", "x":0, "y":3, "w":1.25}, {"x":1.25, "y":3}, {"label":"Z", "x":2.25, "y":3}, {"label":"X", "x":3.25, "y":3}, {"label":"C", "x":4.25, "y":3}, {"label":"V", "x":5.25, "y":3}, {"label":"B", "x":6.25, "y":3}, {"label":"N", "x":7.25, "y":3}, {"label":"M", "x":8.25, "y":3}, {"label":"<", "x":9.25, "y":3}, {"label":">", "x":10.25, "y":3}, {"label":"?", "x":11.25, "y":3}, {"label":"Shift", "x":12.25, "y":3, "w":1.75}, {"x":14, "y":3}, {"label":"Ctrl", "x":0, "y":4, "w":1.25}, {"label":"Win", "x":1.25, "y":4, "w":1.25}, {"label":"Alt", "x":2.5, "y":4, "w":1.25}, {"x":3.75, "y":4, "w":6.25}, {"label":"Alt", "x":10, "y":4, "w":1.25}, {"label":"Win", "x":11.25, "y":4, "w":1.25}, {"label":"Menu", "x":12.5, "y":4, "w":1.25}, {"label":"Ctrl", "x":13.75, "y":4, "w":1.25}]
|
||||||
|
|
|
@ -19,13 +19,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||||
|
|
||||||
#include "config_common.h"
|
#include "config_common.h"
|
||||||
|
|
||||||
/* USB Device descriptor parameter */
|
|
||||||
#define VENDOR_ID 0xBC42
|
|
||||||
#define PRODUCT_ID 0x0002
|
|
||||||
#define DEVICE_VER 0x0001
|
|
||||||
#define MANUFACTURER Biacco42
|
|
||||||
#define PRODUCT meishi
|
|
||||||
|
|
||||||
/* key matrix size */
|
/* key matrix size */
|
||||||
#define MATRIX_ROWS 1
|
#define MATRIX_ROWS 1
|
||||||
#define MATRIX_COLS 4
|
#define MATRIX_COLS 4
|
||||||
|
|
|
@ -1,7 +1,13 @@
|
||||||
{
|
{
|
||||||
"keyboard_name": "Meishi",
|
"keyboard_name": "Meishi",
|
||||||
|
"manufacturer": "Biacco42",
|
||||||
"url": "",
|
"url": "",
|
||||||
"maintainer": "Biacco42",
|
"maintainer": "Biacco42",
|
||||||
|
"usb": {
|
||||||
|
"vid": "0xBC42",
|
||||||
|
"pid": "0x0002",
|
||||||
|
"device_version": "0.0.1"
|
||||||
|
},
|
||||||
"layouts": {
|
"layouts": {
|
||||||
"LAYOUT": {
|
"LAYOUT": {
|
||||||
"layout": [
|
"layout": [
|
||||||
|
|
|
@ -19,13 +19,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||||
|
|
||||||
#include "config_common.h"
|
#include "config_common.h"
|
||||||
|
|
||||||
/* USB Device descriptor parameter */
|
|
||||||
#define VENDOR_ID 0xBC42
|
|
||||||
#define PRODUCT_ID 0x0003
|
|
||||||
#define DEVICE_VER 0x0001
|
|
||||||
#define MANUFACTURER Biacco42
|
|
||||||
#define PRODUCT meishi2
|
|
||||||
|
|
||||||
/* key matrix size */
|
/* key matrix size */
|
||||||
#define MATRIX_ROWS 2
|
#define MATRIX_ROWS 2
|
||||||
#define MATRIX_COLS 2
|
#define MATRIX_COLS 2
|
||||||
|
|
|
@ -1,7 +1,13 @@
|
||||||
{
|
{
|
||||||
"keyboard_name": "meishi2",
|
"keyboard_name": "meishi2",
|
||||||
|
"manufacturer": "Biacco42",
|
||||||
"url": "",
|
"url": "",
|
||||||
"maintainer": "biacco42",
|
"maintainer": "biacco42",
|
||||||
|
"usb": {
|
||||||
|
"vid": "0xBC42",
|
||||||
|
"pid": "0x0003",
|
||||||
|
"device_version": "0.0.1"
|
||||||
|
},
|
||||||
"layouts": {
|
"layouts": {
|
||||||
"LAYOUT": {
|
"LAYOUT": {
|
||||||
"layout": [
|
"layout": [
|
||||||
|
|
|
@ -18,13 +18,6 @@
|
||||||
|
|
||||||
#include "config_common.h"
|
#include "config_common.h"
|
||||||
|
|
||||||
/* USB Device descriptor parameter */
|
|
||||||
#define VENDOR_ID 0x4249 // Binepad
|
|
||||||
#define PRODUCT_ID 0x4287
|
|
||||||
#define DEVICE_VER 0x0001
|
|
||||||
#define MANUFACTURER Binepad
|
|
||||||
#define PRODUCT BN003
|
|
||||||
|
|
||||||
/* Key matrix size */
|
/* Key matrix size */
|
||||||
#define MATRIX_ROWS 1
|
#define MATRIX_ROWS 1
|
||||||
#define MATRIX_COLS 3
|
#define MATRIX_COLS 3
|
||||||
|
|
|
@ -1,7 +1,13 @@
|
||||||
{
|
{
|
||||||
"keyboard_name": "BN003",
|
"keyboard_name": "BN003",
|
||||||
|
"manufacturer": "Binepad",
|
||||||
"url": "https://binepad.com",
|
"url": "https://binepad.com",
|
||||||
"maintainer": "binepad",
|
"maintainer": "binepad",
|
||||||
|
"usb": {
|
||||||
|
"vid": "0x4249",
|
||||||
|
"pid": "0x4287",
|
||||||
|
"device_version": "0.0.1"
|
||||||
|
},
|
||||||
"layouts": {
|
"layouts": {
|
||||||
"LAYOUT": {
|
"LAYOUT": {
|
||||||
"layout": [
|
"layout": [
|
||||||
|
|
|
@ -18,13 +18,6 @@
|
||||||
|
|
||||||
#include "config_common.h"
|
#include "config_common.h"
|
||||||
|
|
||||||
/* USB Device descriptor parameter */
|
|
||||||
#define VENDOR_ID 0x4249 // Binepad
|
|
||||||
#define PRODUCT_ID 0x4295
|
|
||||||
#define DEVICE_VER 0x0001
|
|
||||||
#define MANUFACTURER Binepad
|
|
||||||
#define PRODUCT BN009
|
|
||||||
|
|
||||||
/* Key matrix size */
|
/* Key matrix size */
|
||||||
#define MATRIX_ROWS 3
|
#define MATRIX_ROWS 3
|
||||||
#define MATRIX_COLS 3
|
#define MATRIX_COLS 3
|
||||||
|
|
|
@ -1,7 +1,13 @@
|
||||||
{
|
{
|
||||||
"keyboard_name": "BN009",
|
"keyboard_name": "BN009",
|
||||||
|
"manufacturer": "Binepad",
|
||||||
"url": "https://binepad.com",
|
"url": "https://binepad.com",
|
||||||
"maintainer": "binepad",
|
"maintainer": "binepad",
|
||||||
|
"usb": {
|
||||||
|
"vid": "0x4249",
|
||||||
|
"pid": "0x4295",
|
||||||
|
"device_version": "0.0.1"
|
||||||
|
},
|
||||||
"layouts": {
|
"layouts": {
|
||||||
"LAYOUT": {
|
"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}]
|
"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}]
|
||||||
|
|
|
@ -19,13 +19,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||||
|
|
||||||
#include "config_common.h"
|
#include "config_common.h"
|
||||||
|
|
||||||
/* USB Device descriptor parameter */
|
|
||||||
#define VENDOR_ID 0x8101
|
|
||||||
#define PRODUCT_ID 0x4660
|
|
||||||
#define DEVICE_VER 0x0001
|
|
||||||
#define MANUFACTURER Basic IO Instruments
|
|
||||||
#define PRODUCT BIOI F60
|
|
||||||
|
|
||||||
/* key matrix size */
|
/* key matrix size */
|
||||||
#define MATRIX_ROWS 5
|
#define MATRIX_ROWS 5
|
||||||
#define MATRIX_COLS 14
|
#define MATRIX_COLS 14
|
||||||
|
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue