Compare commits
53 Commits
0.25.8
...
deploy-too
Author | SHA1 | Date | |
---|---|---|---|
33f5e67408 | |||
3ffe8d917a | |||
12379dc1eb | |||
d6bfbdb6b1 | |||
cc0b2f9814 | |||
5624804c68 | |||
2bde8ce206 | |||
086e8e938e | |||
cd374b1500 | |||
9d02ac37f7 | |||
603586800c | |||
90b043e01c | |||
5f794217b4 | |||
b71b81d539 | |||
17ae6f9b53 | |||
cebe521b11 | |||
0b572a1be6 | |||
378dbd32bd | |||
03e688e91f | |||
d5e0562a70 | |||
191c8cca33 | |||
7aa2ce2b38 | |||
6f03d20a92 | |||
e5c80fc6b3 | |||
aa11ef5bcf | |||
a6ef34cd16 | |||
4fdde75333 | |||
dafc46f1d1 | |||
baa564bddf | |||
3f44231d2d | |||
4864d5afca | |||
089a819179 | |||
751fbd75d3 | |||
3c868b9316 | |||
7ac1a34a34 | |||
ad82c4703a | |||
0262161914 | |||
d4654ab893 | |||
aec7569a04 | |||
0594121b68 | |||
4e8b740dd7 | |||
c92becc57e | |||
cd565a95a0 | |||
caf13bb9db | |||
4a4eda4c3c | |||
942c2a8d5a | |||
be9dfe65dd | |||
fa40356250 | |||
7247039742 | |||
e69d30a9e9 | |||
bdd10ef8e7 | |||
031ca3b40b | |||
8041a88f5d |
36
.github/workflows/docs.yml
vendored
36
.github/workflows/docs.yml
vendored
@ -7,7 +7,6 @@ on:
|
||||
push:
|
||||
branches:
|
||||
- master
|
||||
- vitepress
|
||||
paths:
|
||||
- 'builddefs/docsgen/**'
|
||||
- 'tmk_core/**'
|
||||
@ -15,6 +14,11 @@ on:
|
||||
- 'platforms/**'
|
||||
- 'docs/**'
|
||||
- '.github/workflows/docs.yml'
|
||||
pull_request:
|
||||
paths:
|
||||
- 'builddefs/docsgen/**'
|
||||
- 'docs/**'
|
||||
- '.github/workflows/docs.yml'
|
||||
|
||||
defaults:
|
||||
run:
|
||||
@ -25,9 +29,6 @@ jobs:
|
||||
runs-on: ubuntu-latest
|
||||
container: ghcr.io/qmk/qmk_cli
|
||||
|
||||
# protect against those who develop with their fork on master
|
||||
if: github.repository == 'qmk/qmk_firmware' || (github.repository == 'tzarc/qmk_firmware' && github.ref == 'refs/heads/vitepress')
|
||||
|
||||
steps:
|
||||
- uses: actions/checkout@v4
|
||||
with:
|
||||
@ -35,10 +36,10 @@ jobs:
|
||||
|
||||
- name: Install dependencies
|
||||
run: |
|
||||
apt-get update && apt-get install -y rsync doxygen curl
|
||||
apt-get update && apt-get install -y rsync doxygen
|
||||
# install nvm
|
||||
touch $HOME/.bashrc
|
||||
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.7/install.sh | bash
|
||||
wget -qO- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.7/install.sh | bash
|
||||
|
||||
- name: Install node
|
||||
run: |
|
||||
@ -46,29 +47,15 @@ jobs:
|
||||
nvm install 20
|
||||
nvm use 20
|
||||
corepack enable
|
||||
npm install -g moxygen
|
||||
|
||||
- name: Build docs
|
||||
run: |
|
||||
source $HOME/.bashrc
|
||||
nvm use 20
|
||||
qmk --verbose generate-docs
|
||||
touch '.build/docs/.nojekyll'
|
||||
|
||||
- name: Set CNAME
|
||||
if: github.repository == 'qmk/qmk_firmware'
|
||||
run: |
|
||||
# Override target CNAME
|
||||
echo 'docs.qmk.fm' > .build/docs/CNAME
|
||||
|
||||
- name: Override CNAME
|
||||
if: github.repository == 'tzarc/qmk_firmware'
|
||||
run: |
|
||||
# Temporarily override target CNAME during development
|
||||
echo 'vitepress.qmk.fm' > .build/docs/CNAME
|
||||
|
||||
- name: Deploy
|
||||
if: github.repository == 'qmk/qmk_firmware'
|
||||
if: ${{ github.event_name == 'push' && github.repository == 'qmk/qmk_firmware' }}
|
||||
uses: JamesIves/github-pages-deploy-action@v4.6.1
|
||||
with:
|
||||
token: ${{ secrets.GITHUB_TOKEN }}
|
||||
@ -76,10 +63,3 @@ jobs:
|
||||
folder: .build/docs
|
||||
git-config-name: QMK Bot
|
||||
git-config-email: hello@qmk.fm
|
||||
|
||||
- name: Deploy
|
||||
if: github.repository == 'tzarc/qmk_firmware'
|
||||
uses: JamesIves/github-pages-deploy-action@v4.6.1
|
||||
with:
|
||||
branch: gh-pages
|
||||
folder: .build/docs
|
||||
|
1
.gitignore
vendored
1
.gitignore
vendored
@ -25,6 +25,7 @@
|
||||
*.la
|
||||
*.stackdump
|
||||
*.sym
|
||||
qmk_toolchains*
|
||||
|
||||
# QMK-specific
|
||||
api_data/v1
|
||||
|
@ -40,7 +40,8 @@
|
||||
"pattern": "^[0-9a-z_/\\-]+\\.json$"
|
||||
},
|
||||
"key_unit": {
|
||||
"type": "number"
|
||||
"type": "number",
|
||||
"minimum": 0
|
||||
},
|
||||
"keyboard": {
|
||||
"type": "string",
|
||||
|
@ -515,8 +515,8 @@
|
||||
"minimum": 0
|
||||
}
|
||||
},
|
||||
"x": {"$ref": "qmk.definitions.v1#/key_unit"},
|
||||
"y": {"$ref": "qmk.definitions.v1#/key_unit"},
|
||||
"x": {"$ref": "qmk.definitions.v1#/unsigned_int"},
|
||||
"y": {"$ref": "qmk.definitions.v1#/unsigned_int"},
|
||||
"flags": {"$ref": "qmk.definitions.v1#/unsigned_int_8"}
|
||||
}
|
||||
}
|
||||
@ -601,8 +601,8 @@
|
||||
"minimum": 0
|
||||
}
|
||||
},
|
||||
"x": {"$ref": "qmk.definitions.v1#/key_unit"},
|
||||
"y": {"$ref": "qmk.definitions.v1#/key_unit"},
|
||||
"x": {"$ref": "qmk.definitions.v1#/unsigned_int"},
|
||||
"y": {"$ref": "qmk.definitions.v1#/unsigned_int"},
|
||||
"flags": {"$ref": "qmk.definitions.v1#/unsigned_int_8"}
|
||||
}
|
||||
}
|
||||
|
@ -2,8 +2,6 @@
|
||||
"keyboard_name": "%KEYBOARD%",
|
||||
"maintainer": "%USER_NAME%",
|
||||
"manufacturer": "%REAL_NAME%",
|
||||
"processor": "%MCU%",
|
||||
"bootloader": "%BOOTLOADER%",
|
||||
"diode_direction": "COL2ROW",
|
||||
"matrix_pins": {
|
||||
"cols": ["C2"],
|
||||
|
@ -109,6 +109,16 @@ Essentially, changes were made in the internals of how QMK interacts with USB fo
|
||||
|
||||
Compliance checks were run against QMK firmwares for the most popular ARM microcontrollers, as well as suspend/resume tests. As far as we can tell, a whole host of hard-to-reproduce issues are mitigated by this change.
|
||||
|
||||
## Deprecation Notices
|
||||
|
||||
In line with the [notice period](../support_deprecation_policy#how-much-advance-notice-will-be-given), deprecation notices for larger items are listed here.
|
||||
|
||||
### Migration of VIA keymaps to VIA team control
|
||||
|
||||
The QMK team has been in discussion with the VIA maintainers and all VIA-related keymaps in the `qmk_firmware` repository will transition to a `qmk_userspace`-style repository under the VIA team's control at the end of the next breaking changes period. This allows the VIA team to support many more custom keyboard configurations, as well as reduces the turnaround time for any changes to the VIA protocol they wish to make.
|
||||
|
||||
At the end of the breaking changes cycle ending 2024-08-25, VIA-enabled keymaps will no longer be accepted into the QMK repository. At the time of migration, any open PRs against `qmk_firmware` which include new VIA-related keymaps will be subsequently be asked to remove those keymaps and instead raise a PR against the userspace repository containing all VIA keymaps.
|
||||
|
||||
## Full changelist {#full-changelist}
|
||||
|
||||
Core:
|
||||
|
@ -4,6 +4,7 @@
|
||||
"/cli_dev_configuration": "/cli_configuration",
|
||||
"/dynamic_macros": "/feature_dynamic_macros",
|
||||
"/feature_common_shortcuts": "/feature_advanced_keycodes",
|
||||
"/flashing_bootloadhid": "/flashing",
|
||||
"/getting_started_build_tools": "/newbs_getting_started",
|
||||
"/getting_started_getting_help": "/support",
|
||||
"/glossary": "/reference_glossary",
|
||||
|
@ -64,13 +64,7 @@
|
||||
"text": "Development Environments",
|
||||
"items": [{ "text": "Docker Guide", "link": "/getting_started_docker" }]
|
||||
},
|
||||
{
|
||||
"text": "Flashing",
|
||||
"items": [
|
||||
{ "text": "Flashing", "link": "/flashing" },
|
||||
{ "text": "Flashing ATmega32A (ps2avrgb)", "link": "/flashing_bootloadhid" }
|
||||
]
|
||||
},
|
||||
{ "text": "Flashing", "link": "/flashing" },
|
||||
{
|
||||
"text": "IDEs",
|
||||
"items": [
|
||||
@ -212,7 +206,8 @@
|
||||
"text": "Most Recent ChangeLog",
|
||||
"link": "/ChangeLog/20240526"
|
||||
},
|
||||
{ "text": "Past Breaking Changes", "link": "/breaking_changes_history" }
|
||||
{ "text": "Past Breaking Changes", "link": "/breaking_changes_history" },
|
||||
{ "text": "Deprecation Policy", "link": "/support_deprecation_policy" }
|
||||
]
|
||||
},
|
||||
|
||||
|
@ -16,7 +16,9 @@ I'll say that again because it's important:
|
||||
**MAKE SURE YOU SELECT THE RIGHT VERSION!**
|
||||
:::
|
||||
|
||||
If your keyboard has been advertised to be powered by QMK but is not in the list, chances are a developer hasn't gotten to it yet or we haven't had a chance to merge it in yet. File an issue at [qmk_firmware](https://github.com/qmk/qmk_firmware/issues) requesting to support that particular keyboard, if there is no active [Pull Request](https://github.com/qmk/qmk_firmware/pulls?q=is%3Aopen+is%3Apr+label%3Akeyboard) for it. There are also QMK powered keyboards that are in their manufacturer's own GitHub accounts. Double check for that as well. <!-- FIXME(skullydazed): This feels too wordy and I'm not sure we want to encourage these kinds of issues. Also, should we prompt them to bug the manufacutrer? -->
|
||||
Unfortunately if your keyboard has been advertised to be powered by QMK but is not in the list, you will **not** be able to use Configurator to customize your keyboard.
|
||||
|
||||
Chances are a developer hasn't gotten round to adding support or we haven't had a chance to merge it in yet. If there is no active [Pull Request](https://github.com/qmk/qmk_firmware/pulls?q=is%3Aopen+is%3Apr+label%3Akeyboard), contact the manufacturer and encourage them to add support.
|
||||
|
||||
## Step 2: Select Your Keyboard Layout
|
||||
|
||||
|
@ -105,7 +105,9 @@ enum my_keycodes {
|
||||
|
||||
Before opening a pull request, you can preview your changes if you have set up the development environment by running this command from the `qmk_firmware/` folder:
|
||||
|
||||
qmk docs
|
||||
```
|
||||
qmk docs
|
||||
```
|
||||
|
||||
and navigating to `http://localhost:5173/`.
|
||||
|
||||
|
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
@ -1,74 +0,0 @@
|
||||
# BootloadHID Flashing Instructions and Bootloader Information
|
||||
|
||||
ps2avr(GB) boards use an ATmega32A microcontroller and a different bootloader. It is not flashable using the regular QMK methods.
|
||||
|
||||
General flashing sequence:
|
||||
|
||||
1. Enter the bootloader using any of the following methods:
|
||||
* Tap the `QK_BOOT` keycode (may not work on all devices)
|
||||
* Hold the salt key while plugging the keyboard in (usually documented within keyboard readme)
|
||||
2. Wait for the OS to detect the device
|
||||
3. Flash a .hex file
|
||||
4. Reset the device into application mode (may be done automatically)
|
||||
|
||||
## bootloadHID Flashing Target
|
||||
|
||||
::: tip
|
||||
Using the QMK installation script, detailed [here](newbs_getting_started), the required bootloadHID tools should be automatically installed.
|
||||
:::
|
||||
|
||||
To flash via the command line, use the target `:bootloadhid` by executing the following command:
|
||||
|
||||
```
|
||||
make <keyboard>:<keymap>:bootloadhid
|
||||
```
|
||||
|
||||
## GUI Flashing
|
||||
|
||||
### Windows
|
||||
1. Download [HIDBootFlash](http://vusb.wikidot.com/project:hidbootflash).
|
||||
2. Place your keyboard into reset.
|
||||
3. Ensure the configured VendorID is `16c0` and ProductID is `05df`
|
||||
4. Press the `Find Device` button and ensure that your keyboard is found.
|
||||
5. Press the `Open .hex File` button and locate the `.hex` file you created.
|
||||
6. Press the `Flash Device` button and wait for the process to complete.
|
||||
|
||||
## Command Line Flashing
|
||||
|
||||
1. Place your keyboard into reset.
|
||||
2. Flash the board by typing `bootloadHID -r` followed by the path to your `.hex` file.
|
||||
|
||||
### Windows Manual Installation
|
||||
For MSYS2:
|
||||
1. Download the BootloadHID firmware package from https://www.obdev.at/downloads/vusb/bootloadHID.2012-12-08.tar.gz.
|
||||
2. Extract contents using a compatible tool, for example 7-Zip.
|
||||
3. Add to the MSYS path by copying `commandline/bootloadHID.exe` from the extracted archive to your MSYS2 installation, typically `C:\msys64\usr\bin`.
|
||||
|
||||
For native Windows flashing, the `bootloadHID.exe` can be used outside of the MSYS2 environment.
|
||||
|
||||
### Linux Manual Installation
|
||||
1. Install libusb development dependency:
|
||||
```
|
||||
# This depends on OS - for Debian the following works
|
||||
sudo apt-get install libusb-dev
|
||||
```
|
||||
2. Download the BootloadHID firmware package:
|
||||
```
|
||||
wget https://www.obdev.at/downloads/vusb/bootloadHID.2012-12-08.tar.gz -O - | tar -xz -C /tmp
|
||||
```
|
||||
3. Build the bootloadHID executable:
|
||||
```
|
||||
cd /tmp/bootloadHID.2012-12-08/commandline/
|
||||
make
|
||||
sudo cp bootloadHID /usr/local/bin
|
||||
```
|
||||
|
||||
### MacOS Manual Installation
|
||||
1. Install Homebrew by typing the following:
|
||||
```
|
||||
/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
|
||||
```
|
||||
2. Install the following packages:
|
||||
```
|
||||
brew install --HEAD https://raw.githubusercontent.com/robertgzr/homebrew-tap/master/bootloadhid.rb
|
||||
```
|
1
docs/public/CNAME
Normal file
1
docs/public/CNAME
Normal file
@ -0,0 +1 @@
|
||||
docs.qmk.fm
|
@ -15,7 +15,8 @@
|
||||
"console": false,
|
||||
"extrakey": true,
|
||||
"key_lock": true,
|
||||
"mousekey": false,
|
||||
"mousekey": true,
|
||||
"encoder": true,
|
||||
"nkro": true,
|
||||
"rgblight": true
|
||||
},
|
||||
|
@ -15,7 +15,8 @@
|
||||
"console": false,
|
||||
"extrakey": true,
|
||||
"key_lock": true,
|
||||
"mousekey": false,
|
||||
"mousekey": true,
|
||||
"encoder": true,
|
||||
"nkro": true,
|
||||
"rgblight": true
|
||||
},
|
||||
|
@ -16,6 +16,7 @@
|
||||
"extrakey": true,
|
||||
"key_lock": true,
|
||||
"mousekey": true,
|
||||
"encoder": true,
|
||||
"nkro": true,
|
||||
"rgblight": true
|
||||
},
|
||||
|
12
keyboards/ai03/altair/config.h
Normal file
12
keyboards/ai03/altair/config.h
Normal file
@ -0,0 +1,12 @@
|
||||
/* Copyright 2024 ai03 Design Studio */
|
||||
/* SPDX-License-Identifier: GPL-2.0-or-later */
|
||||
|
||||
#pragma once
|
||||
|
||||
/* VBUS-routed pin for upstream detection */
|
||||
#define USB_VBUS_PIN GP0
|
||||
|
||||
/* RP2040- and hardware-specific config */
|
||||
#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET
|
||||
#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET_TIMEOUT 500U
|
||||
#define PICO_XOSC_STARTUP_DELAY_MULTIPLIER 64
|
118
keyboards/ai03/altair/keyboard.json
Normal file
118
keyboards/ai03/altair/keyboard.json
Normal file
@ -0,0 +1,118 @@
|
||||
{
|
||||
"manufacturer": "ai03 Design Studio",
|
||||
"keyboard_name": "Altair",
|
||||
"maintainer": "ai03_2725",
|
||||
"bootloader": "rp2040",
|
||||
"build": {
|
||||
"debounce_type": "asym_eager_defer_pk"
|
||||
},
|
||||
"diode_direction": "COL2ROW",
|
||||
"dynamic_keymap": {
|
||||
"layer_count": 6
|
||||
},
|
||||
"features": {
|
||||
"bootmagic": true,
|
||||
"command": false,
|
||||
"console": false,
|
||||
"extrakey": true,
|
||||
"mousekey": true,
|
||||
"nkro": true
|
||||
},
|
||||
"matrix_pins": {
|
||||
"cols": ["GP20", "GP19", "GP18", "GP17", "GP16", "GP21", "GP9"],
|
||||
"rows": ["GP11", "GP26", "GP27", "GP28", "GP10"]
|
||||
},
|
||||
"processor": "RP2040",
|
||||
"split": {
|
||||
"bootmagic": {
|
||||
"matrix": [5, 0]
|
||||
},
|
||||
"enabled": true,
|
||||
"handedness": {
|
||||
"pin": "GP8"
|
||||
},
|
||||
"matrix_pins": {
|
||||
"right": {
|
||||
"cols": ["GP15", "GP21", "GP9", "GP13", "GP10", "GP11", "GP12"],
|
||||
"rows": ["GP5", "GP16", "GP20", "GP28", "GP14"]
|
||||
}
|
||||
},
|
||||
"soft_serial_pin": "GP29"
|
||||
},
|
||||
"url": "https://ai03.com/",
|
||||
"usb": {
|
||||
"device_version": "0.0.1",
|
||||
"pid": "0x0022",
|
||||
"vid": "0xA103"
|
||||
},
|
||||
"layouts": {
|
||||
"LAYOUT": {
|
||||
"layout": [
|
||||
{"matrix": [0, 0], "x": 0, "y": 0.38},
|
||||
{"matrix": [0, 1], "x": 1, "y": 0.38},
|
||||
{"matrix": [0, 2], "x": 2, "y": 0.13},
|
||||
{"matrix": [0, 3], "x": 3, "y": 0},
|
||||
{"matrix": [0, 4], "x": 4, "y": 0.13},
|
||||
{"matrix": [0, 5], "x": 5, "y": 0.25},
|
||||
{"matrix": [0, 6], "x": 6, "y": 0.5},
|
||||
{"matrix": [5, 0], "x": 7.75, "y": 0.5},
|
||||
{"matrix": [5, 1], "x": 8.75, "y": 0.25},
|
||||
{"matrix": [5, 2], "x": 9.75, "y": 0.13},
|
||||
{"matrix": [5, 3], "x": 10.75, "y": 0},
|
||||
{"matrix": [5, 4], "x": 11.75, "y": 0.13},
|
||||
{"matrix": [5, 5], "x": 12.75, "y": 0.38},
|
||||
{"matrix": [5, 6], "x": 13.75, "y": 0.38},
|
||||
{"matrix": [1, 0], "x": 0, "y": 1.38},
|
||||
{"matrix": [1, 1], "x": 1, "y": 1.38},
|
||||
{"matrix": [1, 2], "x": 2, "y": 1.13},
|
||||
{"matrix": [1, 3], "x": 3, "y": 1},
|
||||
{"matrix": [1, 4], "x": 4, "y": 1.13},
|
||||
{"matrix": [1, 5], "x": 5, "y": 1.25},
|
||||
{"matrix": [1, 6], "x": 6, "y": 1.5},
|
||||
{"matrix": [6, 0], "x": 7.75, "y": 1.5},
|
||||
{"matrix": [6, 1], "x": 8.75, "y": 1.25},
|
||||
{"matrix": [6, 2], "x": 9.75, "y": 1.13},
|
||||
{"matrix": [6, 3], "x": 10.75, "y": 1},
|
||||
{"matrix": [6, 4], "x": 11.75, "y": 1.13},
|
||||
{"matrix": [6, 5], "x": 12.75, "y": 1.38},
|
||||
{"matrix": [6, 6], "x": 13.75, "y": 1.38},
|
||||
{"matrix": [2, 0], "x": 0, "y": 2.38},
|
||||
{"matrix": [2, 1], "x": 1, "y": 2.38},
|
||||
{"matrix": [2, 2], "x": 2, "y": 2.13},
|
||||
{"matrix": [2, 3], "x": 3, "y": 2},
|
||||
{"matrix": [2, 4], "x": 4, "y": 2.13},
|
||||
{"matrix": [2, 5], "x": 5, "y": 2.25},
|
||||
{"matrix": [2, 6], "x": 6, "y": 2.5},
|
||||
{"matrix": [7, 0], "x": 7.75, "y": 2.5},
|
||||
{"matrix": [7, 1], "x": 8.75, "y": 2.25},
|
||||
{"matrix": [7, 2], "x": 9.75, "y": 2.13},
|
||||
{"matrix": [7, 3], "x": 10.75, "y": 2},
|
||||
{"matrix": [7, 4], "x": 11.75, "y": 2.13},
|
||||
{"matrix": [7, 5], "x": 12.75, "y": 2.38},
|
||||
{"matrix": [7, 6], "x": 13.75, "y": 2.38},
|
||||
{"matrix": [3, 0], "x": 0, "y": 3.38},
|
||||
{"matrix": [3, 1], "x": 1, "y": 3.38},
|
||||
{"matrix": [3, 2], "x": 2, "y": 3.13},
|
||||
{"matrix": [3, 3], "x": 3, "y": 3},
|
||||
{"matrix": [3, 4], "x": 4, "y": 3.13},
|
||||
{"matrix": [3, 5], "x": 5, "y": 3.25},
|
||||
{"matrix": [3, 6], "x": 6, "y": 3.5},
|
||||
{"matrix": [8, 0], "x": 7.75, "y": 3.5},
|
||||
{"matrix": [8, 1], "x": 8.75, "y": 3.25},
|
||||
{"matrix": [8, 2], "x": 9.75, "y": 3.13},
|
||||
{"matrix": [8, 3], "x": 10.75, "y": 3},
|
||||
{"matrix": [8, 4], "x": 11.75, "y": 3.13},
|
||||
{"matrix": [8, 5], "x": 12.75, "y": 3.38},
|
||||
{"matrix": [8, 6], "x": 13.75, "y": 3.38},
|
||||
{"matrix": [4, 3], "x": 2.71, "y": 4.13},
|
||||
{"matrix": [4, 4], "x": 3.73, "y": 4.16},
|
||||
{"matrix": [4, 5], "x": 4.74, "y": 4.36},
|
||||
{"matrix": [4, 6], "x": 5.75, "y": 4.72},
|
||||
{"matrix": [9, 0], "x": 8, "y": 4.72},
|
||||
{"matrix": [9, 1], "x": 9.02, "y": 4.36},
|
||||
{"matrix": [9, 2], "x": 10.03, "y": 4.18},
|
||||
{"matrix": [9, 3], "x": 11.05, "y": 4.13}
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
24
keyboards/ai03/altair/keymaps/default/keymap.c
Normal file
24
keyboards/ai03/altair/keymaps/default/keymap.c
Normal file
@ -0,0 +1,24 @@
|
||||
/* Copyright 2024 ai03 Design Studio */
|
||||
/* SPDX-License-Identifier: GPL-2.0-or-later */
|
||||
|
||||
#include QMK_KEYBOARD_H
|
||||
|
||||
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
||||
|
||||
[0] = LAYOUT(
|
||||
KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_MINS, KC_EQL, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSPC,
|
||||
KC_CAPS, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_LBRC, KC_RBRC, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSLS,
|
||||
KC_LCTL, KC_A, KC_S, KC_D, KC_F, KC_G, KC_LPRN, KC_RPRN, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT,
|
||||
KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_GRV, KC_PSCR, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_ENT,
|
||||
KC_LGUI, KC_LALT, MO(1), KC_SPC, KC_SPC, MO(1), KC_TAB, KC_DEL
|
||||
),
|
||||
|
||||
[1] = LAYOUT(
|
||||
_______, 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_PGUP, _______, _______, _______, _______, _______, _______, KC_UP, _______, _______, _______,
|
||||
_______, _______, KC_HOME, KC_PGDN, KC_END, _______, _______, _______, _______, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______,
|
||||
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
|
||||
_______, _______, _______, _______, _______, _______, _______, _______
|
||||
)
|
||||
|
||||
};
|
24
keyboards/ai03/altair/keymaps/via/keymap.c
Normal file
24
keyboards/ai03/altair/keymaps/via/keymap.c
Normal file
@ -0,0 +1,24 @@
|
||||
/* Copyright 2024 ai03 Design Studio */
|
||||
/* SPDX-License-Identifier: GPL-2.0-or-later */
|
||||
|
||||
#include QMK_KEYBOARD_H
|
||||
|
||||
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
||||
|
||||
[0] = LAYOUT(
|
||||
KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_MINS, KC_EQL, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSPC,
|
||||
KC_CAPS, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_LBRC, KC_RBRC, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSLS,
|
||||
KC_LCTL, KC_A, KC_S, KC_D, KC_F, KC_G, KC_LPRN, KC_RPRN, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT,
|
||||
KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_GRV, KC_PSCR, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_ENT,
|
||||
KC_LGUI, KC_LALT, MO(1), KC_SPC, KC_SPC, MO(1), KC_TAB, KC_DEL
|
||||
),
|
||||
|
||||
[1] = LAYOUT(
|
||||
_______, 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_PGUP, _______, _______, _______, _______, _______, _______, KC_UP, _______, _______, _______,
|
||||
_______, _______, KC_HOME, KC_PGDN, KC_END, _______, _______, _______, _______, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______,
|
||||
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
|
||||
_______, _______, _______, _______, _______, _______, _______, _______
|
||||
)
|
||||
|
||||
};
|
1
keyboards/ai03/altair/keymaps/via/rules.mk
Normal file
1
keyboards/ai03/altair/keymaps/via/rules.mk
Normal file
@ -0,0 +1 @@
|
||||
VIA_ENABLE = yes
|
19
keyboards/ai03/altair/readme.md
Normal file
19
keyboards/ai03/altair/readme.md
Normal file
@ -0,0 +1,19 @@
|
||||
# Altair
|
||||
|
||||

|
||||
|
||||
ai03's third-generation ergonomic keyboard, 5-row variant
|
||||
|
||||
* Keyboard Maintainer: [ai03](https://github.com/ai03-2725)
|
||||
* Hardware Supported: Altair keyboard PCB
|
||||
* Hardware Availability: Group buy
|
||||
|
||||
Make example for this keyboard (after setting up your build environment):
|
||||
|
||||
make ai03/altair:default
|
||||
|
||||
Flashing example for this keyboard:
|
||||
|
||||
make ai03/altair: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).
|
1
keyboards/ai03/altair/rules.mk
Normal file
1
keyboards/ai03/altair/rules.mk
Normal file
@ -0,0 +1 @@
|
||||
SERIAL_DRIVER = vendor
|
12
keyboards/ai03/altair_x/config.h
Normal file
12
keyboards/ai03/altair_x/config.h
Normal file
@ -0,0 +1,12 @@
|
||||
/* Copyright 2024 ai03 Design Studio */
|
||||
/* SPDX-License-Identifier: GPL-2.0-or-later */
|
||||
|
||||
#pragma once
|
||||
|
||||
/* VBUS-routed pin for upstream detection */
|
||||
#define USB_VBUS_PIN GP0
|
||||
|
||||
/* RP2040- and hardware-specific config */
|
||||
#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET
|
||||
#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET_TIMEOUT 500U
|
||||
#define PICO_XOSC_STARTUP_DELAY_MULTIPLIER 64
|
104
keyboards/ai03/altair_x/keyboard.json
Normal file
104
keyboards/ai03/altair_x/keyboard.json
Normal file
@ -0,0 +1,104 @@
|
||||
{
|
||||
"manufacturer": "ai03 Design Studio",
|
||||
"keyboard_name": "Altair-X",
|
||||
"maintainer": "ai03_2725",
|
||||
"bootloader": "rp2040",
|
||||
"build": {
|
||||
"debounce_type": "asym_eager_defer_pk"
|
||||
},
|
||||
"diode_direction": "COL2ROW",
|
||||
"dynamic_keymap": {
|
||||
"layer_count": 6
|
||||
},
|
||||
"features": {
|
||||
"bootmagic": true,
|
||||
"command": false,
|
||||
"console": false,
|
||||
"extrakey": true,
|
||||
"mousekey": true,
|
||||
"nkro": true
|
||||
},
|
||||
"matrix_pins": {
|
||||
"cols": ["GP20", "GP19", "GP18", "GP17", "GP16", "GP21", "GP9"],
|
||||
"rows": ["GP26", "GP27", "GP28", "GP10"]
|
||||
},
|
||||
"processor": "RP2040",
|
||||
"split": {
|
||||
"bootmagic": {
|
||||
"matrix": [4, 0]
|
||||
},
|
||||
"enabled": true,
|
||||
"handedness": {
|
||||
"pin": "GP8"
|
||||
},
|
||||
"matrix_pins": {
|
||||
"right": {
|
||||
"cols": ["GP15", "GP21", "GP9", "GP13", "GP10", "GP11", "GP12"],
|
||||
"rows": ["GP16", "GP20", "GP28", "GP14"]
|
||||
}
|
||||
},
|
||||
"soft_serial_pin": "GP29"
|
||||
},
|
||||
"url": "https://ai03.com/",
|
||||
"usb": {
|
||||
"device_version": "0.0.1",
|
||||
"pid": "0x0023",
|
||||
"vid": "0xA103"
|
||||
},
|
||||
"layouts": {
|
||||
"LAYOUT": {
|
||||
"layout": [
|
||||
{"matrix": [0, 0], "x": 0, "y": 0.38},
|
||||
{"matrix": [0, 1], "x": 1, "y": 0.38},
|
||||
{"matrix": [0, 2], "x": 2, "y": 0.13},
|
||||
{"matrix": [0, 3], "x": 3, "y": 0},
|
||||
{"matrix": [0, 4], "x": 4, "y": 0.13},
|
||||
{"matrix": [0, 5], "x": 5, "y": 0.25},
|
||||
{"matrix": [0, 6], "x": 6, "y": 0.5},
|
||||
{"matrix": [4, 0], "x": 7.75, "y": 0.5},
|
||||
{"matrix": [4, 1], "x": 8.75, "y": 0.25},
|
||||
{"matrix": [4, 2], "x": 9.75, "y": 0.13},
|
||||
{"matrix": [4, 3], "x": 10.75, "y": 0},
|
||||
{"matrix": [4, 4], "x": 11.75, "y": 0.13},
|
||||
{"matrix": [4, 5], "x": 12.75, "y": 0.38},
|
||||
{"matrix": [4, 6], "x": 13.75, "y": 0.38},
|
||||
{"matrix": [1, 0], "x": 0, "y": 1.38},
|
||||
{"matrix": [1, 1], "x": 1, "y": 1.38},
|
||||
{"matrix": [1, 2], "x": 2, "y": 1.13},
|
||||
{"matrix": [1, 3], "x": 3, "y": 1},
|
||||
{"matrix": [1, 4], "x": 4, "y": 1.13},
|
||||
{"matrix": [1, 5], "x": 5, "y": 1.25},
|
||||
{"matrix": [1, 6], "x": 6, "y": 1.5},
|
||||
{"matrix": [5, 0], "x": 7.75, "y": 1.5},
|
||||
{"matrix": [5, 1], "x": 8.75, "y": 1.25},
|
||||
{"matrix": [5, 2], "x": 9.75, "y": 1.13},
|
||||
{"matrix": [5, 3], "x": 10.75, "y": 1},
|
||||
{"matrix": [5, 4], "x": 11.75, "y": 1.13},
|
||||
{"matrix": [5, 5], "x": 12.75, "y": 1.38},
|
||||
{"matrix": [5, 6], "x": 13.75, "y": 1.38},
|
||||
{"matrix": [2, 0], "x": 0, "y": 2.38},
|
||||
{"matrix": [2, 1], "x": 1, "y": 2.38},
|
||||
{"matrix": [2, 2], "x": 2, "y": 2.13},
|
||||
{"matrix": [2, 3], "x": 3, "y": 2},
|
||||
{"matrix": [2, 4], "x": 4, "y": 2.13},
|
||||
{"matrix": [2, 5], "x": 5, "y": 2.25},
|
||||
{"matrix": [2, 6], "x": 6, "y": 2.5},
|
||||
{"matrix": [6, 0], "x": 7.75, "y": 2.5},
|
||||
{"matrix": [6, 1], "x": 8.75, "y": 2.25},
|
||||
{"matrix": [6, 2], "x": 9.75, "y": 2.13},
|
||||
{"matrix": [6, 3], "x": 10.75, "y": 2},
|
||||
{"matrix": [6, 4], "x": 11.75, "y": 2.13},
|
||||
{"matrix": [6, 5], "x": 12.75, "y": 2.38},
|
||||
{"matrix": [6, 6], "x": 13.75, "y": 2.38},
|
||||
{"matrix": [3, 3], "x": 2.71, "y": 3.13},
|
||||
{"matrix": [3, 4], "x": 3.73, "y": 3.16},
|
||||
{"matrix": [3, 5], "x": 4.74, "y": 3.36},
|
||||
{"matrix": [3, 6], "x": 5.75, "y": 3.72},
|
||||
{"matrix": [7, 0], "x": 8, "y": 3.72},
|
||||
{"matrix": [7, 1], "x": 9.02, "y": 3.36},
|
||||
{"matrix": [7, 2], "x": 10.03, "y": 3.18},
|
||||
{"matrix": [7, 3], "x": 11.05, "y": 3.13}
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
29
keyboards/ai03/altair_x/keymaps/default/keymap.c
Normal file
29
keyboards/ai03/altair_x/keymaps/default/keymap.c
Normal file
@ -0,0 +1,29 @@
|
||||
/* Copyright 2024 ai03 Design Studio */
|
||||
/* SPDX-License-Identifier: GPL-2.0-or-later */
|
||||
|
||||
#include QMK_KEYBOARD_H
|
||||
|
||||
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
||||
|
||||
[0] = LAYOUT(
|
||||
KC_ESC, KC_Q, KC_W, KC_E, KC_R, KC_T, XXXXXXX, XXXXXXX, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSPC,
|
||||
KC_LCTL, KC_A, KC_S, KC_D, KC_F, KC_G, XXXXXXX, XXXXXXX, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT,
|
||||
KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, XXXXXXX, XXXXXXX, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_ENT,
|
||||
KC_LGUI, KC_LALT, MO(1), KC_SPC, KC_SPC, MO(2), KC_TAB, KC_DEL
|
||||
),
|
||||
|
||||
[1] = LAYOUT(
|
||||
_______, KC_1, KC_2, KC_3, KC_4, KC_5, _______, _______, KC_6, KC_7, KC_8, KC_9, KC_0, _______,
|
||||
_______, KC_GRV, KC_LBRC, KC_LCBR, KC_LPRN, KC_MINS, _______, _______, KC_EQL, KC_RPRN, KC_RCBR, KC_RBRC, KC_BSLS, _______,
|
||||
_______, KC_TILD, _______, _______, _______, KC_UNDS, _______, _______, KC_PLUS, _______, _______, _______, KC_PIPE, _______,
|
||||
_______, _______, _______, _______, _______, _______, _______, _______
|
||||
),
|
||||
|
||||
[2] = LAYOUT(
|
||||
_______, _______, _______, KC_PGUP, _______, _______, _______, _______, _______, _______, KC_UP, _______, _______, _______,
|
||||
_______, _______, KC_HOME, KC_PGDN, KC_END, _______, _______, _______, _______, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______,
|
||||
_______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______,
|
||||
_______, _______, _______, _______, _______, _______, _______, _______
|
||||
)
|
||||
|
||||
};
|
29
keyboards/ai03/altair_x/keymaps/via/keymap.c
Normal file
29
keyboards/ai03/altair_x/keymaps/via/keymap.c
Normal file
@ -0,0 +1,29 @@
|
||||
/* Copyright 2024 ai03 Design Studio */
|
||||
/* SPDX-License-Identifier: GPL-2.0-or-later */
|
||||
|
||||
#include QMK_KEYBOARD_H
|
||||
|
||||
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
||||
|
||||
[0] = LAYOUT(
|
||||
KC_ESC, KC_Q, KC_W, KC_E, KC_R, KC_T, XXXXXXX, XXXXXXX, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSPC,
|
||||
KC_LCTL, KC_A, KC_S, KC_D, KC_F, KC_G, XXXXXXX, XXXXXXX, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT,
|
||||
KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, XXXXXXX, XXXXXXX, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_ENT,
|
||||
KC_LGUI, KC_LALT, MO(1), KC_SPC, KC_SPC, MO(2), KC_TAB, KC_DEL
|
||||
),
|
||||
|
||||
[1] = LAYOUT(
|
||||
_______, KC_1, KC_2, KC_3, KC_4, KC_5, _______, _______, KC_6, KC_7, KC_8, KC_9, KC_0, _______,
|
||||
_______, KC_GRV, KC_LBRC, KC_LCBR, KC_LPRN, KC_MINS, _______, _______, KC_EQL, KC_RPRN, KC_RCBR, KC_RBRC, KC_BSLS, _______,
|
||||
_______, KC_TILD, _______, _______, _______, KC_UNDS, _______, _______, KC_PLUS, _______, _______, _______, KC_PIPE, _______,
|
||||
_______, _______, _______, _______, _______, _______, _______, _______
|
||||
),
|
||||
|
||||
[2] = LAYOUT(
|
||||
_______, _______, _______, KC_PGUP, _______, _______, _______, _______, _______, _______, KC_UP, _______, _______, _______,
|
||||
_______, _______, KC_HOME, KC_PGDN, KC_END, _______, _______, _______, _______, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______,
|
||||
_______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______,
|
||||
_______, _______, _______, _______, _______, _______, _______, _______
|
||||
)
|
||||
|
||||
};
|
1
keyboards/ai03/altair_x/keymaps/via/rules.mk
Normal file
1
keyboards/ai03/altair_x/keymaps/via/rules.mk
Normal file
@ -0,0 +1 @@
|
||||
VIA_ENABLE = yes
|
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user