forked from mirror/qmk_firmware
Compare commits
14 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
2e68ddc826 | ||
|
|
c1fedab457 | ||
|
|
2929448605 | ||
|
|
b39661de96 | ||
|
|
ff75bce86a | ||
|
|
0881e0867b | ||
|
|
e6e66a9f2e | ||
|
|
e2d19eda57 | ||
|
|
73a6496516 | ||
|
|
c8f6e6a936 | ||
|
|
a86322e4a7 | ||
|
|
505e5c7033 | ||
|
|
107812ceef | ||
|
|
de8f05b4c3 |
34
.github/workflows/develop_docs.yml
vendored
Normal file
34
.github/workflows/develop_docs.yml
vendored
Normal file
@@ -0,0 +1,34 @@
|
||||
name: Generate Develop Docs
|
||||
|
||||
permissions:
|
||||
contents: write
|
||||
|
||||
on:
|
||||
push:
|
||||
branches:
|
||||
- develop
|
||||
paths:
|
||||
- 'builddefs/docsgen/**'
|
||||
- 'tmk_core/**'
|
||||
- 'quantum/**'
|
||||
- 'platforms/**'
|
||||
- 'docs/**'
|
||||
- '.github/workflows/docs.yml'
|
||||
|
||||
jobs:
|
||||
generate:
|
||||
runs-on: ubuntu-latest
|
||||
|
||||
steps:
|
||||
- name: Deploy Develop
|
||||
if: ${{ github.repository == 'qmk/qmk_firmware' }}
|
||||
uses: actions/github-script@v8
|
||||
with:
|
||||
github-token: ${{ secrets.QMK_BOT_TOKEN }}
|
||||
script: |
|
||||
const result = await github.rest.actions.createWorkflowDispatch({
|
||||
owner: 'qmk',
|
||||
repo: 'qmk_docs_devel',
|
||||
workflow_id: 'develop.yml',
|
||||
ref: 'main',
|
||||
})
|
||||
2
.github/workflows/docs.yml
vendored
2
.github/workflows/docs.yml
vendored
@@ -56,7 +56,7 @@ jobs:
|
||||
|
||||
- name: Deploy
|
||||
if: ${{ github.event_name == 'push' && github.repository == 'qmk/qmk_firmware' }}
|
||||
uses: JamesIves/github-pages-deploy-action@v4.7.4
|
||||
uses: JamesIves/github-pages-deploy-action@v4.7.6
|
||||
with:
|
||||
token: ${{ secrets.GITHUB_TOKEN }}
|
||||
branch: gh-pages
|
||||
|
||||
2
.github/workflows/format_push.yml
vendored
2
.github/workflows/format_push.yml
vendored
@@ -47,7 +47,7 @@ jobs:
|
||||
git config user.email 'hello@qmk.fm'
|
||||
|
||||
- name: Create Pull Request
|
||||
uses: peter-evans/create-pull-request@v7
|
||||
uses: peter-evans/create-pull-request@v8
|
||||
if: ${{ github.repository == 'qmk/qmk_firmware'}}
|
||||
with:
|
||||
token: ${{ secrets.QMK_BOT_TOKEN }}
|
||||
|
||||
2
.github/workflows/regen_push.yml
vendored
2
.github/workflows/regen_push.yml
vendored
@@ -34,7 +34,7 @@ jobs:
|
||||
git config user.email 'hello@qmk.fm'
|
||||
|
||||
- name: Create Pull Request
|
||||
uses: peter-evans/create-pull-request@v7
|
||||
uses: peter-evans/create-pull-request@v8
|
||||
if: ${{ github.repository == 'qmk/qmk_firmware'}}
|
||||
with:
|
||||
token: ${{ secrets.QMK_BOT_TOKEN }}
|
||||
|
||||
336
keyboards/chickenman/kami65/keyboard.json
Normal file
336
keyboards/chickenman/kami65/keyboard.json
Normal file
@@ -0,0 +1,336 @@
|
||||
{
|
||||
"manufacturer": "Chickenman",
|
||||
"keyboard_name": "Kami65",
|
||||
"maintainer": "MaiTheSan",
|
||||
"bootloader": "stm32-dfu",
|
||||
"diode_direction": "COL2ROW",
|
||||
"features": {
|
||||
"bootmagic": true,
|
||||
"extrakey": true,
|
||||
"mousekey": true,
|
||||
"nkro": true,
|
||||
"rgblight": true
|
||||
},
|
||||
"indicators": {
|
||||
"caps_lock": "B12",
|
||||
"on_state": 0
|
||||
},
|
||||
"matrix_pins": {
|
||||
"cols": ["A10", "A0", "A9", "C13", "A1", "A2", "B11", "B10", "B1", "B0", "A7", "A6", "A5", "A4", "C14"],
|
||||
"rows": ["B4", "A15", "A3", "A8", "B14"]
|
||||
},
|
||||
"processor": "STM32F072",
|
||||
"rgblight": {
|
||||
"animations": {
|
||||
"alternating": true,
|
||||
"breathing": true,
|
||||
"christmas": true,
|
||||
"knight": true,
|
||||
"rainbow_mood": true,
|
||||
"rainbow_swirl": true,
|
||||
"snake": true,
|
||||
"static_gradient": true,
|
||||
"twinkle": true
|
||||
},
|
||||
"led_count": 24,
|
||||
"sleep": true
|
||||
},
|
||||
"usb": {
|
||||
"device_version": "1.0.0",
|
||||
"pid": "0x00A1",
|
||||
"vid": "0xC41C"
|
||||
},
|
||||
"ws2812": {
|
||||
"pin": "B15"
|
||||
},
|
||||
"layout_aliases": {
|
||||
"LAYOUT_all": "LAYOUT_65_ansi_blocker_split_bs"
|
||||
},
|
||||
"community_layouts": ["65_ansi_blocker", "65_ansi_blocker_split_bs", "65_ansi_blocker_tsangan", "65_ansi_blocker_tsangan_split_bs"],
|
||||
"layouts": {
|
||||
"LAYOUT_65_ansi_blocker": {
|
||||
"layout": [
|
||||
{"label": "K00", "matrix": [0, 0], "x": 0, "y": 0},
|
||||
{"label": "K01", "matrix": [0, 1], "x": 1, "y": 0},
|
||||
{"label": "K02", "matrix": [0, 2], "x": 2, "y": 0},
|
||||
{"label": "K03", "matrix": [0, 3], "x": 3, "y": 0},
|
||||
{"label": "K04", "matrix": [0, 4], "x": 4, "y": 0},
|
||||
{"label": "K05", "matrix": [0, 5], "x": 5, "y": 0},
|
||||
{"label": "K06", "matrix": [0, 6], "x": 6, "y": 0},
|
||||
{"label": "K07", "matrix": [0, 7], "x": 7, "y": 0},
|
||||
{"label": "K08", "matrix": [0, 8], "x": 8, "y": 0},
|
||||
{"label": "K09", "matrix": [0, 9], "x": 9, "y": 0},
|
||||
{"label": "K0A", "matrix": [0, 10], "x": 10, "y": 0},
|
||||
{"label": "K0B", "matrix": [0, 11], "x": 11, "y": 0},
|
||||
{"label": "K0C", "matrix": [0, 12], "x": 12, "y": 0},
|
||||
{"label": "K0D", "matrix": [0, 13], "x": 13, "y": 0, "w": 2},
|
||||
{"label": "K0E", "matrix": [0, 14], "x": 15, "y": 0},
|
||||
{"label": "K10", "matrix": [1, 0], "x": 0, "y": 1, "w": 1.5},
|
||||
{"label": "K11", "matrix": [1, 1], "x": 1.5, "y": 1},
|
||||
{"label": "K12", "matrix": [1, 2], "x": 2.5, "y": 1},
|
||||
{"label": "K13", "matrix": [1, 3], "x": 3.5, "y": 1},
|
||||
{"label": "K14", "matrix": [1, 4], "x": 4.5, "y": 1},
|
||||
{"label": "K15", "matrix": [1, 5], "x": 5.5, "y": 1},
|
||||
{"label": "K16", "matrix": [1, 6], "x": 6.5, "y": 1},
|
||||
{"label": "K17", "matrix": [1, 7], "x": 7.5, "y": 1},
|
||||
{"label": "K18", "matrix": [1, 8], "x": 8.5, "y": 1},
|
||||
{"label": "K19", "matrix": [1, 9], "x": 9.5, "y": 1},
|
||||
{"label": "K1A", "matrix": [1, 10], "x": 10.5, "y": 1},
|
||||
{"label": "K1B", "matrix": [1, 11], "x": 11.5, "y": 1},
|
||||
{"label": "K1C", "matrix": [1, 12], "x": 12.5, "y": 1},
|
||||
{"label": "K1D", "matrix": [1, 13], "x": 13.5, "y": 1, "w": 1.5},
|
||||
{"label": "K1E", "matrix": [1, 14], "x": 15, "y": 1},
|
||||
{"label": "K20", "matrix": [2, 0], "x": 0, "y": 2, "w": 1.75},
|
||||
{"label": "K21", "matrix": [2, 1], "x": 1.75, "y": 2},
|
||||
{"label": "K22", "matrix": [2, 2], "x": 2.75, "y": 2},
|
||||
{"label": "K23", "matrix": [2, 3], "x": 3.75, "y": 2},
|
||||
{"label": "K24", "matrix": [2, 4], "x": 4.75, "y": 2},
|
||||
{"label": "K25", "matrix": [2, 5], "x": 5.75, "y": 2},
|
||||
{"label": "K26", "matrix": [2, 6], "x": 6.75, "y": 2},
|
||||
{"label": "K27", "matrix": [2, 7], "x": 7.75, "y": 2},
|
||||
{"label": "K28", "matrix": [2, 8], "x": 8.75, "y": 2},
|
||||
{"label": "K29", "matrix": [2, 9], "x": 9.75, "y": 2},
|
||||
{"label": "K2A", "matrix": [2, 10], "x": 10.75, "y": 2},
|
||||
{"label": "K2B", "matrix": [2, 11], "x": 11.75, "y": 2},
|
||||
{"label": "K2C", "matrix": [2, 12], "x": 12.75, "y": 2, "w": 2.25},
|
||||
{"label": "K2E", "matrix": [2, 14], "x": 15, "y": 2},
|
||||
{"label": "K30", "matrix": [3, 0], "x": 0, "y": 3, "w": 2.25},
|
||||
{"label": "K32", "matrix": [3, 2], "x": 2.25, "y": 3},
|
||||
{"label": "K33", "matrix": [3, 3], "x": 3.25, "y": 3},
|
||||
{"label": "K34", "matrix": [3, 4], "x": 4.25, "y": 3},
|
||||
{"label": "K35", "matrix": [3, 5], "x": 5.25, "y": 3},
|
||||
{"label": "K36", "matrix": [3, 6], "x": 6.25, "y": 3},
|
||||
{"label": "K37", "matrix": [3, 7], "x": 7.25, "y": 3},
|
||||
{"label": "K38", "matrix": [3, 8], "x": 8.25, "y": 3},
|
||||
{"label": "K39", "matrix": [3, 9], "x": 9.25, "y": 3},
|
||||
{"label": "K3A", "matrix": [3, 10], "x": 10.25, "y": 3},
|
||||
{"label": "K3B", "matrix": [3, 11], "x": 11.25, "y": 3},
|
||||
{"label": "K3C", "matrix": [3, 12], "x": 12.25, "y": 3, "w": 1.75},
|
||||
{"label": "K3D", "matrix": [3, 13], "x": 14, "y": 3},
|
||||
{"label": "K3E", "matrix": [3, 14], "x": 15, "y": 3},
|
||||
{"label": "K40", "matrix": [4, 0], "x": 0, "y": 4, "w": 1.25},
|
||||
{"label": "K41", "matrix": [4, 1], "x": 1.25, "y": 4, "w": 1.25},
|
||||
{"label": "K42", "matrix": [4, 2], "x": 2.5, "y": 4, "w": 1.25},
|
||||
{"label": "K46", "matrix": [4, 6], "x": 3.75, "y": 4, "w": 6.25},
|
||||
{"label": "K4A", "matrix": [4, 10], "x": 10, "y": 4, "w": 1.25},
|
||||
{"label": "K4B", "matrix": [4, 11], "x": 11.25, "y": 4, "w": 1.25},
|
||||
{"label": "K4C", "matrix": [4, 12], "x": 13, "y": 4},
|
||||
{"label": "K4D", "matrix": [4, 13], "x": 14, "y": 4},
|
||||
{"label": "K4E", "matrix": [4, 14], "x": 15, "y": 4}
|
||||
]
|
||||
},
|
||||
"LAYOUT_65_ansi_blocker_split_bs": {
|
||||
"layout": [
|
||||
{"label": "K00", "matrix": [0, 0], "x": 0, "y": 0},
|
||||
{"label": "K01", "matrix": [0, 1], "x": 1, "y": 0},
|
||||
{"label": "K02", "matrix": [0, 2], "x": 2, "y": 0},
|
||||
{"label": "K03", "matrix": [0, 3], "x": 3, "y": 0},
|
||||
{"label": "K04", "matrix": [0, 4], "x": 4, "y": 0},
|
||||
{"label": "K05", "matrix": [0, 5], "x": 5, "y": 0},
|
||||
{"label": "K06", "matrix": [0, 6], "x": 6, "y": 0},
|
||||
{"label": "K07", "matrix": [0, 7], "x": 7, "y": 0},
|
||||
{"label": "K08", "matrix": [0, 8], "x": 8, "y": 0},
|
||||
{"label": "K09", "matrix": [0, 9], "x": 9, "y": 0},
|
||||
{"label": "K0A", "matrix": [0, 10], "x": 10, "y": 0},
|
||||
{"label": "K0B", "matrix": [0, 11], "x": 11, "y": 0},
|
||||
{"label": "K0C", "matrix": [0, 12], "x": 12, "y": 0},
|
||||
{"label": "K0D", "matrix": [0, 13], "x": 13, "y": 0},
|
||||
{"label": "K2D", "matrix": [2, 13], "x": 14, "y": 0},
|
||||
{"label": "K0E", "matrix": [0, 14], "x": 15, "y": 0},
|
||||
{"label": "K10", "matrix": [1, 0], "x": 0, "y": 1, "w": 1.5},
|
||||
{"label": "K11", "matrix": [1, 1], "x": 1.5, "y": 1},
|
||||
{"label": "K12", "matrix": [1, 2], "x": 2.5, "y": 1},
|
||||
{"label": "K13", "matrix": [1, 3], "x": 3.5, "y": 1},
|
||||
{"label": "K14", "matrix": [1, 4], "x": 4.5, "y": 1},
|
||||
{"label": "K15", "matrix": [1, 5], "x": 5.5, "y": 1},
|
||||
{"label": "K16", "matrix": [1, 6], "x": 6.5, "y": 1},
|
||||
{"label": "K17", "matrix": [1, 7], "x": 7.5, "y": 1},
|
||||
{"label": "K18", "matrix": [1, 8], "x": 8.5, "y": 1},
|
||||
{"label": "K19", "matrix": [1, 9], "x": 9.5, "y": 1},
|
||||
{"label": "K1A", "matrix": [1, 10], "x": 10.5, "y": 1},
|
||||
{"label": "K1B", "matrix": [1, 11], "x": 11.5, "y": 1},
|
||||
{"label": "K1C", "matrix": [1, 12], "x": 12.5, "y": 1},
|
||||
{"label": "K1D", "matrix": [1, 13], "x": 13.5, "y": 1, "w": 1.5},
|
||||
{"label": "K1E", "matrix": [1, 14], "x": 15, "y": 1},
|
||||
{"label": "K20", "matrix": [2, 0], "x": 0, "y": 2, "w": 1.75},
|
||||
{"label": "K21", "matrix": [2, 1], "x": 1.75, "y": 2},
|
||||
{"label": "K22", "matrix": [2, 2], "x": 2.75, "y": 2},
|
||||
{"label": "K23", "matrix": [2, 3], "x": 3.75, "y": 2},
|
||||
{"label": "K24", "matrix": [2, 4], "x": 4.75, "y": 2},
|
||||
{"label": "K25", "matrix": [2, 5], "x": 5.75, "y": 2},
|
||||
{"label": "K26", "matrix": [2, 6], "x": 6.75, "y": 2},
|
||||
{"label": "K27", "matrix": [2, 7], "x": 7.75, "y": 2},
|
||||
{"label": "K28", "matrix": [2, 8], "x": 8.75, "y": 2},
|
||||
{"label": "K29", "matrix": [2, 9], "x": 9.75, "y": 2},
|
||||
{"label": "K2A", "matrix": [2, 10], "x": 10.75, "y": 2},
|
||||
{"label": "K2B", "matrix": [2, 11], "x": 11.75, "y": 2},
|
||||
{"label": "K2C", "matrix": [2, 12], "x": 12.75, "y": 2, "w": 2.25},
|
||||
{"label": "K2E", "matrix": [2, 14], "x": 15, "y": 2},
|
||||
{"label": "K30", "matrix": [3, 0], "x": 0, "y": 3, "w": 2.25},
|
||||
{"label": "K32", "matrix": [3, 2], "x": 2.25, "y": 3},
|
||||
{"label": "K33", "matrix": [3, 3], "x": 3.25, "y": 3},
|
||||
{"label": "K34", "matrix": [3, 4], "x": 4.25, "y": 3},
|
||||
{"label": "K35", "matrix": [3, 5], "x": 5.25, "y": 3},
|
||||
{"label": "K36", "matrix": [3, 6], "x": 6.25, "y": 3},
|
||||
{"label": "K37", "matrix": [3, 7], "x": 7.25, "y": 3},
|
||||
{"label": "K38", "matrix": [3, 8], "x": 8.25, "y": 3},
|
||||
{"label": "K39", "matrix": [3, 9], "x": 9.25, "y": 3},
|
||||
{"label": "K3A", "matrix": [3, 10], "x": 10.25, "y": 3},
|
||||
{"label": "K3B", "matrix": [3, 11], "x": 11.25, "y": 3},
|
||||
{"label": "K3C", "matrix": [3, 12], "x": 12.25, "y": 3, "w": 1.75},
|
||||
{"label": "K3D", "matrix": [3, 13], "x": 14, "y": 3},
|
||||
{"label": "K3E", "matrix": [3, 14], "x": 15, "y": 3},
|
||||
{"label": "K40", "matrix": [4, 0], "x": 0, "y": 4, "w": 1.25},
|
||||
{"label": "K41", "matrix": [4, 1], "x": 1.25, "y": 4, "w": 1.25},
|
||||
{"label": "K42", "matrix": [4, 2], "x": 2.5, "y": 4, "w": 1.25},
|
||||
{"label": "K46", "matrix": [4, 6], "x": 3.75, "y": 4, "w": 6.25},
|
||||
{"label": "K4A", "matrix": [4, 10], "x": 10, "y": 4, "w": 1.25},
|
||||
{"label": "K4B", "matrix": [4, 11], "x": 11.25, "y": 4, "w": 1.25},
|
||||
{"label": "K4C", "matrix": [4, 12], "x": 13, "y": 4},
|
||||
{"label": "K4D", "matrix": [4, 13], "x": 14, "y": 4},
|
||||
{"label": "K4E", "matrix": [4, 14], "x": 15, "y": 4}
|
||||
]
|
||||
},
|
||||
"LAYOUT_65_ansi_blocker_tsangan": {
|
||||
"layout": [
|
||||
{"label": "K00", "matrix": [0, 0], "x": 0, "y": 0},
|
||||
{"label": "K01", "matrix": [0, 1], "x": 1, "y": 0},
|
||||
{"label": "K02", "matrix": [0, 2], "x": 2, "y": 0},
|
||||
{"label": "K03", "matrix": [0, 3], "x": 3, "y": 0},
|
||||
{"label": "K04", "matrix": [0, 4], "x": 4, "y": 0},
|
||||
{"label": "K05", "matrix": [0, 5], "x": 5, "y": 0},
|
||||
{"label": "K06", "matrix": [0, 6], "x": 6, "y": 0},
|
||||
{"label": "K07", "matrix": [0, 7], "x": 7, "y": 0},
|
||||
{"label": "K08", "matrix": [0, 8], "x": 8, "y": 0},
|
||||
{"label": "K09", "matrix": [0, 9], "x": 9, "y": 0},
|
||||
{"label": "K0A", "matrix": [0, 10], "x": 10, "y": 0},
|
||||
{"label": "K0B", "matrix": [0, 11], "x": 11, "y": 0},
|
||||
{"label": "K0C", "matrix": [0, 12], "x": 12, "y": 0},
|
||||
{"label": "K0D", "matrix": [0, 13], "x": 13, "y": 0, "w": 2},
|
||||
{"label": "K0E", "matrix": [0, 14], "x": 15, "y": 0},
|
||||
{"label": "K10", "matrix": [1, 0], "x": 0, "y": 1, "w": 1.5},
|
||||
{"label": "K11", "matrix": [1, 1], "x": 1.5, "y": 1},
|
||||
{"label": "K12", "matrix": [1, 2], "x": 2.5, "y": 1},
|
||||
{"label": "K13", "matrix": [1, 3], "x": 3.5, "y": 1},
|
||||
{"label": "K14", "matrix": [1, 4], "x": 4.5, "y": 1},
|
||||
{"label": "K15", "matrix": [1, 5], "x": 5.5, "y": 1},
|
||||
{"label": "K16", "matrix": [1, 6], "x": 6.5, "y": 1},
|
||||
{"label": "K17", "matrix": [1, 7], "x": 7.5, "y": 1},
|
||||
{"label": "K18", "matrix": [1, 8], "x": 8.5, "y": 1},
|
||||
{"label": "K19", "matrix": [1, 9], "x": 9.5, "y": 1},
|
||||
{"label": "K1A", "matrix": [1, 10], "x": 10.5, "y": 1},
|
||||
{"label": "K1B", "matrix": [1, 11], "x": 11.5, "y": 1},
|
||||
{"label": "K1C", "matrix": [1, 12], "x": 12.5, "y": 1},
|
||||
{"label": "K1D", "matrix": [1, 13], "x": 13.5, "y": 1, "w": 1.5},
|
||||
{"label": "K1E", "matrix": [1, 14], "x": 15, "y": 1},
|
||||
{"label": "K20", "matrix": [2, 0], "x": 0, "y": 2, "w": 1.75},
|
||||
{"label": "K21", "matrix": [2, 1], "x": 1.75, "y": 2},
|
||||
{"label": "K22", "matrix": [2, 2], "x": 2.75, "y": 2},
|
||||
{"label": "K23", "matrix": [2, 3], "x": 3.75, "y": 2},
|
||||
{"label": "K24", "matrix": [2, 4], "x": 4.75, "y": 2},
|
||||
{"label": "K25", "matrix": [2, 5], "x": 5.75, "y": 2},
|
||||
{"label": "K26", "matrix": [2, 6], "x": 6.75, "y": 2},
|
||||
{"label": "K27", "matrix": [2, 7], "x": 7.75, "y": 2},
|
||||
{"label": "K28", "matrix": [2, 8], "x": 8.75, "y": 2},
|
||||
{"label": "K29", "matrix": [2, 9], "x": 9.75, "y": 2},
|
||||
{"label": "K2A", "matrix": [2, 10], "x": 10.75, "y": 2},
|
||||
{"label": "K2B", "matrix": [2, 11], "x": 11.75, "y": 2},
|
||||
{"label": "K2C", "matrix": [2, 12], "x": 12.75, "y": 2, "w": 2.25},
|
||||
{"label": "K2E", "matrix": [2, 14], "x": 15, "y": 2},
|
||||
{"label": "K30", "matrix": [3, 0], "x": 0, "y": 3, "w": 2.25},
|
||||
{"label": "K32", "matrix": [3, 2], "x": 2.25, "y": 3},
|
||||
{"label": "K33", "matrix": [3, 3], "x": 3.25, "y": 3},
|
||||
{"label": "K34", "matrix": [3, 4], "x": 4.25, "y": 3},
|
||||
{"label": "K35", "matrix": [3, 5], "x": 5.25, "y": 3},
|
||||
{"label": "K36", "matrix": [3, 6], "x": 6.25, "y": 3},
|
||||
{"label": "K37", "matrix": [3, 7], "x": 7.25, "y": 3},
|
||||
{"label": "K38", "matrix": [3, 8], "x": 8.25, "y": 3},
|
||||
{"label": "K39", "matrix": [3, 9], "x": 9.25, "y": 3},
|
||||
{"label": "K3A", "matrix": [3, 10], "x": 10.25, "y": 3},
|
||||
{"label": "K3B", "matrix": [3, 11], "x": 11.25, "y": 3},
|
||||
{"label": "K3C", "matrix": [3, 12], "x": 12.25, "y": 3, "w": 1.75},
|
||||
{"label": "K3D", "matrix": [3, 13], "x": 14, "y": 3},
|
||||
{"label": "K3E", "matrix": [3, 14], "x": 15, "y": 3},
|
||||
{"label": "K40", "matrix": [4, 0], "x": 0, "y": 4, "w": 1.5},
|
||||
{"label": "K41", "matrix": [4, 1], "x": 1.5, "y": 4},
|
||||
{"label": "K42", "matrix": [4, 2], "x": 2.5, "y": 4, "w": 1.5},
|
||||
{"label": "K46", "matrix": [4, 6], "x": 4, "y": 4, "w": 7},
|
||||
{"label": "K4B", "matrix": [4, 11], "x": 11, "y": 4, "w": 1.5},
|
||||
{"label": "K4C", "matrix": [4, 12], "x": 13, "y": 4},
|
||||
{"label": "K4D", "matrix": [4, 13], "x": 14, "y": 4},
|
||||
{"label": "K4E", "matrix": [4, 14], "x": 15, "y": 4}
|
||||
]
|
||||
},
|
||||
"LAYOUT_65_ansi_blocker_tsangan_split_bs": {
|
||||
"layout": [
|
||||
{"label": "K00", "matrix": [0, 0], "x": 0, "y": 0},
|
||||
{"label": "K01", "matrix": [0, 1], "x": 1, "y": 0},
|
||||
{"label": "K02", "matrix": [0, 2], "x": 2, "y": 0},
|
||||
{"label": "K03", "matrix": [0, 3], "x": 3, "y": 0},
|
||||
{"label": "K04", "matrix": [0, 4], "x": 4, "y": 0},
|
||||
{"label": "K05", "matrix": [0, 5], "x": 5, "y": 0},
|
||||
{"label": "K06", "matrix": [0, 6], "x": 6, "y": 0},
|
||||
{"label": "K07", "matrix": [0, 7], "x": 7, "y": 0},
|
||||
{"label": "K08", "matrix": [0, 8], "x": 8, "y": 0},
|
||||
{"label": "K09", "matrix": [0, 9], "x": 9, "y": 0},
|
||||
{"label": "K0A", "matrix": [0, 10], "x": 10, "y": 0},
|
||||
{"label": "K0B", "matrix": [0, 11], "x": 11, "y": 0},
|
||||
{"label": "K0C", "matrix": [0, 12], "x": 12, "y": 0},
|
||||
{"label": "K0D", "matrix": [0, 13], "x": 13, "y": 0},
|
||||
{"label": "K0D", "matrix": [2, 13], "x": 14, "y": 0},
|
||||
{"label": "K0E", "matrix": [0, 14], "x": 15, "y": 0},
|
||||
{"label": "K10", "matrix": [1, 0], "x": 0, "y": 1, "w": 1.5},
|
||||
{"label": "K11", "matrix": [1, 1], "x": 1.5, "y": 1},
|
||||
{"label": "K12", "matrix": [1, 2], "x": 2.5, "y": 1},
|
||||
{"label": "K13", "matrix": [1, 3], "x": 3.5, "y": 1},
|
||||
{"label": "K14", "matrix": [1, 4], "x": 4.5, "y": 1},
|
||||
{"label": "K15", "matrix": [1, 5], "x": 5.5, "y": 1},
|
||||
{"label": "K16", "matrix": [1, 6], "x": 6.5, "y": 1},
|
||||
{"label": "K17", "matrix": [1, 7], "x": 7.5, "y": 1},
|
||||
{"label": "K18", "matrix": [1, 8], "x": 8.5, "y": 1},
|
||||
{"label": "K19", "matrix": [1, 9], "x": 9.5, "y": 1},
|
||||
{"label": "K1A", "matrix": [1, 10], "x": 10.5, "y": 1},
|
||||
{"label": "K1B", "matrix": [1, 11], "x": 11.5, "y": 1},
|
||||
{"label": "K1C", "matrix": [1, 12], "x": 12.5, "y": 1},
|
||||
{"label": "K1D", "matrix": [1, 13], "x": 13.5, "y": 1, "w": 1.5},
|
||||
{"label": "K1E", "matrix": [1, 14], "x": 15, "y": 1},
|
||||
{"label": "K20", "matrix": [2, 0], "x": 0, "y": 2, "w": 1.75},
|
||||
{"label": "K21", "matrix": [2, 1], "x": 1.75, "y": 2},
|
||||
{"label": "K22", "matrix": [2, 2], "x": 2.75, "y": 2},
|
||||
{"label": "K23", "matrix": [2, 3], "x": 3.75, "y": 2},
|
||||
{"label": "K24", "matrix": [2, 4], "x": 4.75, "y": 2},
|
||||
{"label": "K25", "matrix": [2, 5], "x": 5.75, "y": 2},
|
||||
{"label": "K26", "matrix": [2, 6], "x": 6.75, "y": 2},
|
||||
{"label": "K27", "matrix": [2, 7], "x": 7.75, "y": 2},
|
||||
{"label": "K28", "matrix": [2, 8], "x": 8.75, "y": 2},
|
||||
{"label": "K29", "matrix": [2, 9], "x": 9.75, "y": 2},
|
||||
{"label": "K2A", "matrix": [2, 10], "x": 10.75, "y": 2},
|
||||
{"label": "K2B", "matrix": [2, 11], "x": 11.75, "y": 2},
|
||||
{"label": "K2C", "matrix": [2, 12], "x": 12.75, "y": 2, "w": 2.25},
|
||||
{"label": "K2E", "matrix": [2, 14], "x": 15, "y": 2},
|
||||
{"label": "K30", "matrix": [3, 0], "x": 0, "y": 3, "w": 2.25},
|
||||
{"label": "K32", "matrix": [3, 2], "x": 2.25, "y": 3},
|
||||
{"label": "K33", "matrix": [3, 3], "x": 3.25, "y": 3},
|
||||
{"label": "K34", "matrix": [3, 4], "x": 4.25, "y": 3},
|
||||
{"label": "K35", "matrix": [3, 5], "x": 5.25, "y": 3},
|
||||
{"label": "K36", "matrix": [3, 6], "x": 6.25, "y": 3},
|
||||
{"label": "K37", "matrix": [3, 7], "x": 7.25, "y": 3},
|
||||
{"label": "K38", "matrix": [3, 8], "x": 8.25, "y": 3},
|
||||
{"label": "K39", "matrix": [3, 9], "x": 9.25, "y": 3},
|
||||
{"label": "K3A", "matrix": [3, 10], "x": 10.25, "y": 3},
|
||||
{"label": "K3B", "matrix": [3, 11], "x": 11.25, "y": 3},
|
||||
{"label": "K3C", "matrix": [3, 12], "x": 12.25, "y": 3, "w": 1.75},
|
||||
{"label": "K3D", "matrix": [3, 13], "x": 14, "y": 3},
|
||||
{"label": "K3E", "matrix": [3, 14], "x": 15, "y": 3},
|
||||
{"label": "K40", "matrix": [4, 0], "x": 0, "y": 4, "w": 1.5},
|
||||
{"label": "K41", "matrix": [4, 1], "x": 1.5, "y": 4},
|
||||
{"label": "K42", "matrix": [4, 2], "x": 2.5, "y": 4, "w": 1.5},
|
||||
{"label": "K46", "matrix": [4, 6], "x": 4, "y": 4, "w": 7},
|
||||
{"label": "K4B", "matrix": [4, 11], "x": 11, "y": 4, "w": 1.5},
|
||||
{"label": "K4C", "matrix": [4, 12], "x": 13, "y": 4},
|
||||
{"label": "K4D", "matrix": [4, 13], "x": 14, "y": 4},
|
||||
{"label": "K4E", "matrix": [4, 14], "x": 15, "y": 4}
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
||||
49
keyboards/chickenman/kami65/keymaps/default/keymap.c
Normal file
49
keyboards/chickenman/kami65/keymaps/default/keymap.c
Normal file
@@ -0,0 +1,49 @@
|
||||
// Copyright 2023 QMK
|
||||
// SPDX-License-Identifier: GPL-2.0-or-later
|
||||
|
||||
#include QMK_KEYBOARD_H
|
||||
|
||||
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
||||
|
||||
/*
|
||||
* ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┐
|
||||
* │Esc│ 1 │ 2 │ 3 │ 4 │ 5 │ 6 │ 7 │ 8 │ 9 │ 0 │ - │ = │Bsp│Bsp│Hom│
|
||||
* ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴───┼───┤
|
||||
* │ Tab │ Q │ W │ E │ R │ T │ Y │ U │ I │ O │ P │ [ │ ] │ \ │PgU│
|
||||
* ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴─────┼───┤
|
||||
* │ Caps │ A │ S │ D │ F │ G │ H │ J │ K │ L │ ; │ ' │ Enter │PgD│
|
||||
* ├──────┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴────┬───┼───┤
|
||||
* │ Shift │ Z │ X │ C │ V │ B │ N │ M │ , │ . │ / │ Shift│ ↑ │End│
|
||||
* ├────┬───┴┬──┴─┬─┴───┴───┴───┴───┴───┴──┬┴───┼───┴┬─┬───┼───┼───┤
|
||||
* │Ctrl│GUI │Alt │ │ Alt│ Fn│ │ ← │ ↓ │ → │
|
||||
* └────┴────┴────┴────────────────────────┴────┴────┘ └───┴───┴───┘
|
||||
*/
|
||||
[0] = LAYOUT_all(
|
||||
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_BSPC, KC_HOME,
|
||||
KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSLS, KC_PGUP,
|
||||
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_PGDN,
|
||||
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_END,
|
||||
KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(1), KC_LEFT, KC_DOWN, KC_RGHT
|
||||
),
|
||||
|
||||
/*
|
||||
* ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┐
|
||||
* │ ` │F1 │F2 │F3 │F4 │F5 │F6 │F7 │F8 │F9 │F10│F11│F12│Del│Del│ │
|
||||
* ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴───┼───┤
|
||||
* │ │ │ │ │ │ │Ins│ │ │ │ │PSc│Scr│Pause│ │
|
||||
* ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴─────┼───┤
|
||||
* │ │ │ │ │ │ │ │ │ │ │ │ │ │ │
|
||||
* ├──────┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴────┬───┼───┤
|
||||
* │ │ │ │ │ │ │ │Mut│Vl-│Vl+│ │ │ │ │
|
||||
* ├────┬───┴┬──┴─┬─┴───┴───┴───┴───┴───┴──┬┴───┼───┴┬─┬───┼───┼───┤
|
||||
* │ │ │ │ │ │ │ │ │ │ │
|
||||
* └────┴────┴────┴────────────────────────┴────┴────┘ └───┴───┴───┘
|
||||
*/
|
||||
[1] = LAYOUT_all(
|
||||
KC_GRV, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_DEL, KC_DEL, UG_TOGG,
|
||||
_______, _______, _______, _______, _______, _______, KC_INS, _______, _______, _______, _______, KC_PSCR, KC_SCRL, KC_PAUS, UG_PREV,
|
||||
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, UG_NEXT,
|
||||
_______, _______, _______, _______, _______, _______, _______, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, _______, _______,
|
||||
_______, _______, _______, _______, _______, _______, _______, _______, _______
|
||||
)
|
||||
};
|
||||
27
keyboards/chickenman/kami65/readme.md
Normal file
27
keyboards/chickenman/kami65/readme.md
Normal file
@@ -0,0 +1,27 @@
|
||||
# Kami65
|
||||
|
||||

|
||||
|
||||
A 65% keyboard.
|
||||
|
||||
* Keyboard Maintainer: [Mai The San](https://github.com/maithesan)
|
||||
* Hardware Supported: Kami65 Keyboard
|
||||
* Hardware Availability: [UCSD GB](https://www.instagram.com/p/C1BD0RZsttm/)
|
||||
|
||||
Make example for this keyboard (after setting up your build environment):
|
||||
|
||||
make chickenman/kami65:default
|
||||
|
||||
Flashing example for this keyboard:
|
||||
|
||||
make chickenman/kami65:default:flash
|
||||
|
||||
See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](https://docs.qmk.fm/#/newbs).
|
||||
|
||||
## Bootloader
|
||||
|
||||
Enter the bootloader in 3 ways:
|
||||
|
||||
* **Bootmagic reset**: Hold down the top left key and plug in the keyboard
|
||||
* **Physical reset button**: Briefly press the button on the back of the PCB - some may have pads you must short instead
|
||||
* **Keycode in layout**: Press the key mapped to `QK_BOOT` if it is available
|
||||
96
keyboards/dj505/picofx/keyboard.json
Normal file
96
keyboards/dj505/picofx/keyboard.json
Normal file
@@ -0,0 +1,96 @@
|
||||
{
|
||||
"manufacturer": "dj505",
|
||||
"keyboard_name": "PicoFX",
|
||||
"maintainer": "jjc1138",
|
||||
"bootloader": "rp2040",
|
||||
"bootloader_instructions": "Hold down the BOOTSEL button on the microcontroller when connecting the USB cable",
|
||||
"features": {
|
||||
"bootmagic": true,
|
||||
"extrakey": true,
|
||||
"rgb_matrix": true
|
||||
},
|
||||
"matrix_pins": {
|
||||
"direct": [
|
||||
["GP19", null, "GP6", "GP27", null, "GP0"],
|
||||
[null, "GP10", null, null, "GP2", null],
|
||||
["GP21", null, "GP8", "GP17", null, "GP4"],
|
||||
["GP14", "GP15", null, null, null, null]
|
||||
]
|
||||
},
|
||||
"processor": "RP2040",
|
||||
"rgb_matrix": {
|
||||
"animations": {
|
||||
"band_pinwheel_sat": true,
|
||||
"band_pinwheel_val": true,
|
||||
"band_sat": true,
|
||||
"band_spiral_sat": true,
|
||||
"band_spiral_val": true,
|
||||
"band_val": true,
|
||||
"breathing": true,
|
||||
"cycle_all": true,
|
||||
"cycle_left_right": true,
|
||||
"cycle_out_in": true,
|
||||
"cycle_out_in_dual": true,
|
||||
"cycle_pinwheel": true,
|
||||
"cycle_spiral": true,
|
||||
"cycle_up_down": true,
|
||||
"digital_rain": true,
|
||||
"dual_beacon": true,
|
||||
"gradient_left_right": true,
|
||||
"gradient_up_down": true,
|
||||
"hue_breathing": true,
|
||||
"hue_pendulum": true,
|
||||
"hue_wave": true,
|
||||
"jellybean_raindrops": true,
|
||||
"multisplash": true,
|
||||
"pixel_flow": true,
|
||||
"pixel_fractal": true,
|
||||
"pixel_rain": true,
|
||||
"rainbow_beacon": true,
|
||||
"rainbow_moving_chevron": true,
|
||||
"rainbow_pinwheels": true,
|
||||
"raindrops": true,
|
||||
"solid_multisplash": true,
|
||||
"solid_splash": true,
|
||||
"splash": true
|
||||
},
|
||||
"driver": "ws2812",
|
||||
"layout": [
|
||||
{"x": 0, "y": 64, "flags": 2},
|
||||
{"x": 0, "y": 0, "flags": 2},
|
||||
{"x": 112, "y": 0, "flags": 2},
|
||||
{"x": 112, "y": 64, "flags": 2},
|
||||
{"x": 224, "y": 64, "flags": 2},
|
||||
{"x": 224, "y": 0, "flags": 2}
|
||||
],
|
||||
"sleep": true
|
||||
},
|
||||
"url": "https://github.com/dj505/PicoFX",
|
||||
"usb": {
|
||||
"device_version": "1.0.0",
|
||||
"pid": "0x4658",
|
||||
"vid": "0xFEED"
|
||||
},
|
||||
"ws2812": {
|
||||
"driver": "vendor",
|
||||
"pin": "GP22"
|
||||
},
|
||||
"layouts": {
|
||||
"LAYOUT": {
|
||||
"layout": [
|
||||
{"label": "P1 UL", "matrix": [0, 0], "x": 0, "y": 0},
|
||||
{"label": "P1 UR", "matrix": [0, 2], "x": 2, "y": 0},
|
||||
{"label": "P2 UL", "matrix": [0, 3], "x": 3, "y": 0},
|
||||
{"label": "P2 UR", "matrix": [0, 5], "x": 5, "y": 0},
|
||||
{"label": "P1 CN", "matrix": [1, 1], "x": 1, "y": 1},
|
||||
{"label": "P2 CN", "matrix": [1, 4], "x": 4, "y": 1},
|
||||
{"label": "P1 DL", "matrix": [2, 0], "x": 0, "y": 2},
|
||||
{"label": "P1 DR", "matrix": [2, 2], "x": 2, "y": 2},
|
||||
{"label": "P2 DL", "matrix": [2, 3], "x": 3, "y": 2},
|
||||
{"label": "P2 DR", "matrix": [2, 5], "x": 5, "y": 2},
|
||||
{"label": "Service", "matrix": [3, 0], "x": 6.5, "y": 0.5},
|
||||
{"label": "Test", "matrix": [3, 1], "x": 6.5, "y": 1.5}
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
||||
26
keyboards/dj505/picofx/keymaps/allinone/keymap.json
Normal file
26
keyboards/dj505/picofx/keymaps/allinone/keymap.json
Normal file
@@ -0,0 +1,26 @@
|
||||
{
|
||||
"keyboard": "dj505/picofx",
|
||||
"keymap": "allinone",
|
||||
"layout": "LAYOUT",
|
||||
"layers": [
|
||||
[
|
||||
"KC_Q", "KC_E", "KC_TAB", "KC_UP",
|
||||
|
||||
"KC_X", "KC_G",
|
||||
|
||||
"KC_A", "KC_D", "KC_SPC", "KC_DOWN",
|
||||
|
||||
"LT(1,KC_ESC)", "KC_ENT"
|
||||
],
|
||||
|
||||
[
|
||||
"KC_F1", "KC_F2", "KC_F5", "KC_F6",
|
||||
|
||||
"KC_TRNS", "KC_TRNS",
|
||||
|
||||
"KC_F3", "KC_F4", "KC_F7", "KC_F8",
|
||||
|
||||
"KC_TRNS", "QK_BOOT"
|
||||
]
|
||||
]
|
||||
}
|
||||
21
keyboards/dj505/picofx/keymaps/allinone/readme.md
Normal file
21
keyboards/dj505/picofx/keymaps/allinone/readme.md
Normal file
@@ -0,0 +1,21 @@
|
||||
# PicoFX All-in-one Keymap
|
||||
|
||||
The 'allinone' keymap puts most of the buttons that you need for navigating the Pump It Up Rise menus in the main mode. If you configure the game to use those buttons for gameplay as well, then you can play the game and navigate most of the menus without having to switch modes.
|
||||
|
||||
```
|
||||
Q E Tab Up
|
||||
X G
|
||||
A D Space Down
|
||||
|
||||
Service: Esc when tapped, or temporarily activates the mode below when held
|
||||
Test: Enter
|
||||
```
|
||||
|
||||
When Service is held the buttons have these meanings instead:
|
||||
```
|
||||
F1 F2 F5 F6
|
||||
- -
|
||||
F3 F4 F7 F8
|
||||
|
||||
Test: Bootloader mode
|
||||
```
|
||||
16
keyboards/dj505/picofx/keymaps/default/keymap.json
Normal file
16
keyboards/dj505/picofx/keymaps/default/keymap.json
Normal file
@@ -0,0 +1,16 @@
|
||||
{
|
||||
"keyboard": "dj505/picofx",
|
||||
"keymap": "default",
|
||||
"layout": "LAYOUT",
|
||||
"layers": [
|
||||
[
|
||||
"KC_Q", "KC_E", "KC_R", "KC_Y",
|
||||
|
||||
"KC_S", "KC_G",
|
||||
|
||||
"KC_Z", "KC_C", "KC_V", "KC_N",
|
||||
|
||||
"KC_ESC", "KC_ENT"
|
||||
]
|
||||
]
|
||||
}
|
||||
12
keyboards/dj505/picofx/keymaps/default/readme.md
Normal file
12
keyboards/dj505/picofx/keymaps/default/readme.md
Normal file
@@ -0,0 +1,12 @@
|
||||
# PicoFX Default Keymap
|
||||
|
||||
The default keymap matches the 'Basic 2' preset in Pump It Up Rise. In the game's options menu, navigate to the keyboard settings and press '2' (on your normal computer keyboard) to apply the matching preset.
|
||||
|
||||
```
|
||||
Q E R Y
|
||||
S G
|
||||
Z C V N
|
||||
|
||||
Service: Escape
|
||||
Test: Enter
|
||||
```
|
||||
36
keyboards/dj505/picofx/keymaps/menumode/keymap.json
Normal file
36
keyboards/dj505/picofx/keymaps/menumode/keymap.json
Normal file
@@ -0,0 +1,36 @@
|
||||
{
|
||||
"keyboard": "dj505/picofx",
|
||||
"keymap": "default",
|
||||
"layout": "LAYOUT",
|
||||
"layers": [
|
||||
[
|
||||
"KC_Q", "KC_E", "KC_R", "KC_Y",
|
||||
|
||||
"KC_S", "KC_G",
|
||||
|
||||
"KC_Z", "KC_C", "KC_V", "KC_N",
|
||||
|
||||
"MO(2)", "TG(1)"
|
||||
],
|
||||
|
||||
[
|
||||
"KC_Q", "KC_E", "KC_TAB", "KC_UP",
|
||||
|
||||
"KC_ESC", "KC_ENT",
|
||||
|
||||
"KC_LEFT", "KC_RGHT", "KC_SPC", "KC_DOWN",
|
||||
|
||||
"LT(2,KC_F1)", "KC_TRNS"
|
||||
],
|
||||
|
||||
[
|
||||
"KC_TRNS", "KC_TRNS", "KC_TRNS", "KC_TRNS",
|
||||
|
||||
"KC_TRNS", "KC_TRNS",
|
||||
|
||||
"KC_TRNS", "KC_TRNS", "KC_TRNS", "KC_TRNS",
|
||||
|
||||
"KC_TRNS", "QK_BOOT"
|
||||
]
|
||||
]
|
||||
}
|
||||
28
keyboards/dj505/picofx/keymaps/menumode/readme.md
Normal file
28
keyboards/dj505/picofx/keymaps/menumode/readme.md
Normal file
@@ -0,0 +1,28 @@
|
||||
# PicoFX Menu Mode Keymap
|
||||
|
||||
The 'menumode' keymap is like the 'default' keymap in that it matches the 'Basic 2' preset in Pump It Up Rise, but it also includes the ability the toggle into a menu mode that provides most of the keys you need to navigate the game's menus.
|
||||
|
||||
In the game's options menu, navigate to the keyboard settings and press '2' (on your normal computer keyboard) to apply the 'Basic 2' preset.
|
||||
|
||||
The keymap in normal mode:
|
||||
```
|
||||
Q E R Y
|
||||
S G
|
||||
Z C V N
|
||||
|
||||
Test: Toggle to menu mode
|
||||
```
|
||||
|
||||
And when in menu mode:
|
||||
```
|
||||
Q E Tab Up
|
||||
Esc Enter
|
||||
Left Right Space Down
|
||||
|
||||
Service: F1
|
||||
Test: Toggle back to game mode
|
||||
```
|
||||
|
||||
It might take a little bit of practice to remember where everything is in menu mode. The rule of thumb is that the layout roughly corresponds to where those controls appear on the game's song selection screen.
|
||||
|
||||
In either mode, holding the Service button and pressing the Test button will put the controller into bootloader mode for installing new firmware versions.
|
||||
34
keyboards/dj505/picofx/readme.md
Normal file
34
keyboards/dj505/picofx/readme.md
Normal file
@@ -0,0 +1,34 @@
|
||||
# dj505/picofx
|
||||
|
||||

|
||||
|
||||
PicoFX: A compact keyboard-style controller for the *Pump It Up* rhythm game series. This firmware is intended for using the controller with the [Pump It Up Rise](https://store.steampowered.com/app/2756930/PUMP_IT_UP_RISE/) home version of the game.
|
||||
|
||||
* Hardware Supported: [PicoFX](https://github.com/dj505/PicoFX)
|
||||
* Keyboard Maintainer: [jjc1138](https://github.com/jjc1138)
|
||||
|
||||
Make example for this keyboard (after setting up your build environment):
|
||||
|
||||
make dj505/picofx:default
|
||||
|
||||
Flashing example for this keyboard:
|
||||
|
||||
make dj505/picofx: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).
|
||||
|
||||
## Keymaps
|
||||
|
||||
There are three keymaps provided, or you can build your own using the instructions below.
|
||||
|
||||
* [default](keymaps/default/readme.md)
|
||||
* [menumode](keymaps/menumode/readme.md)
|
||||
* [allinone](keymaps/allinone/readme.md)
|
||||
|
||||
### Bootloader
|
||||
|
||||
Put the controller in bootloader mode in one of three ways:
|
||||
|
||||
* **Physical reset button**: Hold down the BOOTSEL button on the microcontroller when connecting the USB cable.
|
||||
* **Bootmagic reset**: If a version of this firmware is already installed, hold down the top-left button on the keyboard when connecting the USB cable.
|
||||
* **Keycode in keymap**: If a version of this firmware is already installed with the 'menumode' or 'allinone' keymap, hold down the Service button and press the Test button. Or press a button mapped to `QK_BOOT` in your own keymap.
|
||||
187
keyboards/dotlen/queue/keyboard.json
Normal file
187
keyboards/dotlen/queue/keyboard.json
Normal file
@@ -0,0 +1,187 @@
|
||||
{
|
||||
"manufacturer": "DotLen",
|
||||
"keyboard_name": "Queue.Len()",
|
||||
"maintainer": "lental",
|
||||
"bootloader": "atmel-dfu",
|
||||
"build": {
|
||||
"lto": true
|
||||
},
|
||||
"diode_direction": "COL2ROW",
|
||||
"encoder": {
|
||||
"rotary": [
|
||||
{"pin_a": "B0", "pin_b": "B7"}
|
||||
]
|
||||
},
|
||||
"features": {
|
||||
"bootmagic": true,
|
||||
"encoder": true,
|
||||
"extrakey": true,
|
||||
"nkro": true
|
||||
},
|
||||
"matrix_pins": {
|
||||
"cols": ["D4", "D6", "D7", "B4", "B5", "B6", "C6", "C7", "F7", "F6", "F5", "F4", "F1", "F0", "E6"],
|
||||
"rows": ["D5", "D3", "D2", "D1", "D0"]
|
||||
},
|
||||
"processor": "atmega32u4",
|
||||
"url": "https://github.com/lental/keyboard-firmware",
|
||||
"usb": {
|
||||
"device_version": "0.0.1",
|
||||
"pid": "0x000A",
|
||||
"vid": "0xFACE"
|
||||
},
|
||||
"layout_aliases": {
|
||||
"LAYOUT_all": "LAYOUT_triple_space"
|
||||
},
|
||||
"layouts": {
|
||||
"LAYOUT_standard_space": {
|
||||
"layout": [
|
||||
{"label": "Esc", "matrix": [0, 0], "x": 0, "y": 0},
|
||||
{"label": "1", "matrix": [0, 1], "x": 1, "y": 0},
|
||||
{"label": "2", "matrix": [0, 2], "x": 2, "y": 0},
|
||||
{"label": "3", "matrix": [0, 3], "x": 3, "y": 0},
|
||||
{"label": "4", "matrix": [0, 4], "x": 4, "y": 0},
|
||||
{"label": "5", "matrix": [0, 5], "x": 5, "y": 0},
|
||||
{"label": "6", "matrix": [0, 6], "x": 6, "y": 0},
|
||||
{"label": "7", "matrix": [0, 7], "x": 7, "y": 0},
|
||||
{"label": "8", "matrix": [0, 8], "x": 8, "y": 0},
|
||||
{"label": "9", "matrix": [0, 9], "x": 9, "y": 0},
|
||||
{"label": "0", "matrix": [0, 10], "x": 10, "y": 0},
|
||||
{"label": "-", "matrix": [0, 11], "x": 11, "y": 0},
|
||||
{"label": "+", "matrix": [0, 12], "x": 12, "y": 0},
|
||||
{"label": "backspace", "matrix": [0, 13], "x": 13, "y": 0},
|
||||
{"label": "split", "matrix": [0, 14], "x": 14, "y": 0},
|
||||
{"label": "rotary", "matrix": [2, 14], "x": 15, "y": 0, "encoder":0},
|
||||
{"label": "Tab", "matrix": [1, 0], "x": 0, "y": 1, "w": 1.5},
|
||||
{"label": "Q", "matrix": [1, 1], "x": 1.5, "y": 1},
|
||||
{"label": "W", "matrix": [1, 2], "x": 2.5, "y": 1},
|
||||
{"label": "E", "matrix": [1, 3], "x": 3.5, "y": 1},
|
||||
{"label": "R", "matrix": [1, 4], "x": 4.5, "y": 1},
|
||||
{"label": "T", "matrix": [1, 5], "x": 5.5, "y": 1},
|
||||
{"label": "Y", "matrix": [1, 6], "x": 6.5, "y": 1},
|
||||
{"label": "U", "matrix": [1, 7], "x": 7.5, "y": 1},
|
||||
{"label": "I", "matrix": [1, 8], "x": 8.5, "y": 1},
|
||||
{"label": "O", "matrix": [1, 9], "x": 9.5, "y": 1},
|
||||
{"label": "P", "matrix": [1, 10], "x": 10.5, "y": 1},
|
||||
{"label": "{", "matrix": [1, 11], "x": 11.5, "y": 1},
|
||||
{"label": "}", "matrix": [1, 12], "x": 12.5, "y": 1},
|
||||
{"label": "Bksp", "matrix": [1, 13], "x": 13.5, "y": 1, "w": 1.5},
|
||||
{"label": "pgup", "matrix": [1, 14], "x": 15, "y": 1},
|
||||
{"label": "Caps Lock", "matrix": [2, 0], "x": 0, "y": 2, "w": 1.75},
|
||||
{"label": "A", "matrix": [2, 1], "x": 1.75, "y": 2},
|
||||
{"label": "S", "matrix": [2, 2], "x": 2.75, "y": 2},
|
||||
{"label": "D", "matrix": [2, 3], "x": 3.75, "y": 2},
|
||||
{"label": "F", "matrix": [2, 4], "x": 4.75, "y": 2},
|
||||
{"label": "G", "matrix": [2, 5], "x": 5.75, "y": 2},
|
||||
{"label": "H", "matrix": [2, 6], "x": 6.75, "y": 2},
|
||||
{"label": "J", "matrix": [2, 7], "x": 7.75, "y": 2},
|
||||
{"label": "K", "matrix": [2, 8], "x": 8.75, "y": 2},
|
||||
{"label": "L", "matrix": [2, 9], "x": 9.75, "y": 2},
|
||||
{"label": ":", "matrix": [2, 10], "x": 10.75, "y": 2},
|
||||
{"label": "\"", "matrix": [2, 11], "x": 11.75, "y": 2},
|
||||
{"label": "Enter", "matrix": [2, 12], "x": 12.75, "y": 2, "w": 2.25},
|
||||
{"label": "pgup", "matrix": [2, 13], "x": 15, "y": 2},
|
||||
{"label": "split", "matrix": [3, 0], "x": 0, "y": 3, "w": 1.25},
|
||||
{"label": "Shift", "matrix": [3, 1], "x": 1.25, "y": 3, "w": 1},
|
||||
{"label": "Z", "matrix": [3, 2], "x": 2.25, "y": 3},
|
||||
{"label": "X", "matrix": [3, 3], "x": 3.25, "y": 3},
|
||||
{"label": "C", "matrix": [3, 4], "x": 4.25, "y": 3},
|
||||
{"label": "V", "matrix": [3, 5], "x": 5.25, "y": 3},
|
||||
{"label": "B", "matrix": [3, 6], "x": 6.25, "y": 3},
|
||||
{"label": "N", "matrix": [3, 7], "x": 7.25, "y": 3},
|
||||
{"label": "M", "matrix": [3, 8], "x": 8.25, "y": 3},
|
||||
{"label": "<", "matrix": [3, 9], "x": 9.25, "y": 3},
|
||||
{"label": ">", "matrix": [3, 10], "x": 10.25, "y": 3},
|
||||
{"label": "?", "matrix": [3, 11], "x": 11.25, "y": 3},
|
||||
{"label": "Shift", "matrix": [3, 12], "x": 12.25, "y": 3, "w": 1.75},
|
||||
{"label": "Up", "matrix": [3, 13], "x": 14, "y": 3},
|
||||
{"label": "pgup", "matrix": [3, 14], "x": 15, "y": 3},
|
||||
{"label": "Ctrl", "matrix": [4, 0], "x": 0, "y": 4, "w": 1.25},
|
||||
{"label": "Win", "matrix": [4, 1], "x": 1.25, "y": 4, "w": 1.25},
|
||||
{"label": "Alt", "matrix": [4, 2], "x": 2.5, "y": 4, "w": 1.25},
|
||||
{"matrix": [4, 3], "x": 3.75, "y": 4, "w": 6.25},
|
||||
{"label": "Alt", "matrix": [4, 6], "x": 10, "y": 4},
|
||||
{"label": "Win", "matrix": [4, 7], "x": 11, "y": 4},
|
||||
{"label": "Ctrl", "matrix": [4, 8], "x": 12, "y": 4},
|
||||
{"label": "left", "matrix": [4, 12], "x": 13, "y": 4},
|
||||
{"label": "down", "matrix": [4, 13], "x": 14, "y": 4},
|
||||
{"label": "right", "matrix": [4, 14], "x": 15, "y": 4}
|
||||
]
|
||||
},
|
||||
"LAYOUT_triple_space": {
|
||||
"layout": [
|
||||
{"label": "Esc", "matrix": [0, 0], "x": 0, "y": 0},
|
||||
{"label": "1", "matrix": [0, 1], "x": 1, "y": 0},
|
||||
{"label": "2", "matrix": [0, 2], "x": 2, "y": 0},
|
||||
{"label": "3", "matrix": [0, 3], "x": 3, "y": 0},
|
||||
{"label": "4", "matrix": [0, 4], "x": 4, "y": 0},
|
||||
{"label": "5", "matrix": [0, 5], "x": 5, "y": 0},
|
||||
{"label": "6", "matrix": [0, 6], "x": 6, "y": 0},
|
||||
{"label": "7", "matrix": [0, 7], "x": 7, "y": 0},
|
||||
{"label": "8", "matrix": [0, 8], "x": 8, "y": 0},
|
||||
{"label": "9", "matrix": [0, 9], "x": 9, "y": 0},
|
||||
{"label": "0", "matrix": [0, 10], "x": 10, "y": 0},
|
||||
{"label": "-", "matrix": [0, 11], "x": 11, "y": 0},
|
||||
{"label": "+", "matrix": [0, 12], "x": 12, "y": 0},
|
||||
{"label": "backspace", "matrix": [0, 13], "x": 13, "y": 0},
|
||||
{"label": "split", "matrix": [0, 14], "x": 14, "y": 0},
|
||||
{"label": "rotary", "matrix": [2, 14], "x": 15, "y": 0, "encoder":0},
|
||||
{"label": "Tab", "matrix": [1, 0], "x": 0, "y": 1, "w": 1.5},
|
||||
{"label": "Q", "matrix": [1, 1], "x": 1.5, "y": 1},
|
||||
{"label": "W", "matrix": [1, 2], "x": 2.5, "y": 1},
|
||||
{"label": "E", "matrix": [1, 3], "x": 3.5, "y": 1},
|
||||
{"label": "R", "matrix": [1, 4], "x": 4.5, "y": 1},
|
||||
{"label": "T", "matrix": [1, 5], "x": 5.5, "y": 1},
|
||||
{"label": "Y", "matrix": [1, 6], "x": 6.5, "y": 1},
|
||||
{"label": "U", "matrix": [1, 7], "x": 7.5, "y": 1},
|
||||
{"label": "I", "matrix": [1, 8], "x": 8.5, "y": 1},
|
||||
{"label": "O", "matrix": [1, 9], "x": 9.5, "y": 1},
|
||||
{"label": "P", "matrix": [1, 10], "x": 10.5, "y": 1},
|
||||
{"label": "{", "matrix": [1, 11], "x": 11.5, "y": 1},
|
||||
{"label": "}", "matrix": [1, 12], "x": 12.5, "y": 1},
|
||||
{"label": "Bksp", "matrix": [1, 13], "x": 13.5, "y": 1, "w": 1.5},
|
||||
{"label": "pgup", "matrix": [1, 14], "x": 15, "y": 1},
|
||||
{"label": "Caps Lock", "matrix": [2, 0], "x": 0, "y": 2, "w": 1.75},
|
||||
{"label": "A", "matrix": [2, 1], "x": 1.75, "y": 2},
|
||||
{"label": "S", "matrix": [2, 2], "x": 2.75, "y": 2},
|
||||
{"label": "D", "matrix": [2, 3], "x": 3.75, "y": 2},
|
||||
{"label": "F", "matrix": [2, 4], "x": 4.75, "y": 2},
|
||||
{"label": "G", "matrix": [2, 5], "x": 5.75, "y": 2},
|
||||
{"label": "H", "matrix": [2, 6], "x": 6.75, "y": 2},
|
||||
{"label": "J", "matrix": [2, 7], "x": 7.75, "y": 2},
|
||||
{"label": "K", "matrix": [2, 8], "x": 8.75, "y": 2},
|
||||
{"label": "L", "matrix": [2, 9], "x": 9.75, "y": 2},
|
||||
{"label": ":", "matrix": [2, 10], "x": 10.75, "y": 2},
|
||||
{"label": "\"", "matrix": [2, 11], "x": 11.75, "y": 2},
|
||||
{"label": "Enter", "matrix": [2, 12], "x": 12.75, "y": 2, "w": 2.25},
|
||||
{"label": "pgup", "matrix": [2, 13], "x": 15, "y": 2},
|
||||
{"label": "split", "matrix": [3, 0], "x": 0, "y": 3, "w": 1.25},
|
||||
{"label": "Shift", "matrix": [3, 1], "x": 1.25, "y": 3, "w": 1},
|
||||
{"label": "Z", "matrix": [3, 2], "x": 2.25, "y": 3},
|
||||
{"label": "X", "matrix": [3, 3], "x": 3.25, "y": 3},
|
||||
{"label": "C", "matrix": [3, 4], "x": 4.25, "y": 3},
|
||||
{"label": "V", "matrix": [3, 5], "x": 5.25, "y": 3},
|
||||
{"label": "B", "matrix": [3, 6], "x": 6.25, "y": 3},
|
||||
{"label": "N", "matrix": [3, 7], "x": 7.25, "y": 3},
|
||||
{"label": "M", "matrix": [3, 8], "x": 8.25, "y": 3},
|
||||
{"label": "<", "matrix": [3, 9], "x": 9.25, "y": 3},
|
||||
{"label": ">", "matrix": [3, 10], "x": 10.25, "y": 3},
|
||||
{"label": "?", "matrix": [3, 11], "x": 11.25, "y": 3},
|
||||
{"label": "Shift", "matrix": [3, 12], "x": 12.25, "y": 3, "w": 1.75},
|
||||
{"label": "Up", "matrix": [3, 13], "x": 14, "y": 3},
|
||||
{"label": "pgup", "matrix": [3, 14], "x": 15, "y": 3},
|
||||
{"label": "Ctrl", "matrix": [4, 0], "x": 0, "y": 4, "w": 1.25},
|
||||
{"label": "Win", "matrix": [4, 1], "x": 1.25, "y": 4, "w": 1.25},
|
||||
{"label": "Alt", "matrix": [4, 2], "x": 2.5, "y": 4, "w": 1.25},
|
||||
{"matrix": [4, 3], "x": 3.75, "y": 4, "w": 2.25},
|
||||
{"matrix": [4, 4], "x": 6, "y": 4, "w": 1.25},
|
||||
{"matrix": [4, 5], "x": 7.25, "y": 4, "w": 2.75},
|
||||
{"label": "Alt", "matrix": [4, 6], "x": 10, "y": 4},
|
||||
{"label": "Win", "matrix": [4, 7], "x": 11, "y": 4},
|
||||
{"label": "Ctrl", "matrix": [4, 8], "x": 12, "y": 4},
|
||||
{"label": "left", "matrix": [4, 12], "x": 13, "y": 4},
|
||||
{"label": "down", "matrix": [4, 13], "x": 14, "y": 4},
|
||||
{"label": "right", "matrix": [4, 14], "x": 15, "y": 4}
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
||||
41
keyboards/dotlen/queue/keymaps/default/keymap.c
Normal file
41
keyboards/dotlen/queue/keymaps/default/keymap.c
Normal file
@@ -0,0 +1,41 @@
|
||||
// Copyright 2025 lental
|
||||
// SPDX-License-Identifier: GPL-2.0-or-later
|
||||
#include QMK_KEYBOARD_H
|
||||
|
||||
enum layers {
|
||||
_BL,
|
||||
_FL,
|
||||
_AL
|
||||
};
|
||||
|
||||
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
||||
[_BL] = LAYOUT_all(
|
||||
KC_GRAVE, 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_BSPC, KC_MUTE,
|
||||
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_PGUP,
|
||||
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_PGDN,
|
||||
KC_LSFT, MO(_FL), KC_Z , KC_X, KC_C , KC_V , KC_B, KC_N , KC_M , KC_COMM, KC_DOT, KC_SLASH, KC_RSFT , KC_UP, KC_DEL,
|
||||
KC_LCTL, KC_LGUI, KC_LALT, KC_SPC,KC_SPC, KC_SPC , KC_RALT, KC_RGUI, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT),
|
||||
|
||||
[_FL] = LAYOUT_all(
|
||||
KC_TRNS, 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_TRNS, KC_TRNS, KC_TRNS,
|
||||
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
|
||||
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_HOME, KC_LEFT, KC_DOWN, KC_UP, KC_RIGHT, KC_END, KC_TRNS, KC_TRNS, KC_TRNS,
|
||||
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, MO(_AL),
|
||||
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS ),
|
||||
|
||||
[_AL] = LAYOUT_all(
|
||||
QK_BOOT,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS, KC_TRNS,
|
||||
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
|
||||
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
|
||||
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
|
||||
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS )
|
||||
|
||||
};
|
||||
|
||||
#ifdef ENCODER_MAP_ENABLE
|
||||
const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][NUM_DIRECTIONS] = {
|
||||
[_BL] = { ENCODER_CCW_CW(KC_VOLD, KC_VOLU)},
|
||||
[_FL] = { ENCODER_CCW_CW(_______, _______)},
|
||||
[_AL] = { ENCODER_CCW_CW(_______, _______)}
|
||||
};
|
||||
#endif
|
||||
28
keyboards/dotlen/queue/readme.md
Normal file
28
keyboards/dotlen/queue/readme.md
Normal file
@@ -0,0 +1,28 @@
|
||||
# Queue.len()
|
||||
|
||||

|
||||
|
||||
A 65% keyboard with multiple layout support.
|
||||
|
||||
* Keyboard Maintainer: [Lental](https://github.com/lental)
|
||||
* Hardware Supported: Custom PCB
|
||||
* Hardware Availability: Private Group Buy
|
||||
* Keyboard Layout Editor [Link](https://www.keyboard-layout-editor.com/#/gists/d54fc38f606ce3e990a88044e9b71858)
|
||||
|
||||
Make example for this keyboard (after setting up your build environment):
|
||||
|
||||
make dotlen/queue:default
|
||||
|
||||
Flashing example for this keyboard:
|
||||
|
||||
make dotlen/queue:default:flash
|
||||
|
||||
See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](https://docs.qmk.fm/#/newbs).
|
||||
|
||||
## Bootloader
|
||||
|
||||
Enter the bootloader in 3 ways:
|
||||
|
||||
* **Bootmagic reset**: Hold down the key at (0,0) in the matrix (usually the top left key or Escape) and plug in the keyboard
|
||||
* **Physical reset button**: Briefly press the button on the back of the PCB - some may have pads you must short instead
|
||||
* **Keycode in layout**: Press the key mapped to `QK_BOOT` if it is available
|
||||
@@ -10,7 +10,7 @@
|
||||
"features": {
|
||||
"bootmagic": true,
|
||||
"extrakey": true,
|
||||
"mousekey": true,
|
||||
"mousekey": true
|
||||
},
|
||||
"qmk": {
|
||||
"locking": {
|
||||
@@ -25,6 +25,11 @@
|
||||
"diode_direction": "COL2ROW",
|
||||
"split": {
|
||||
"enabled": true,
|
||||
"matrix_pins": {
|
||||
"right": {
|
||||
"cols": ["F4", "F5", "F6", "F7", "B1", "B3", "B2", "B6"]
|
||||
}
|
||||
},
|
||||
"serial": {
|
||||
"pin": "D0"
|
||||
}
|
||||
@@ -42,14 +47,14 @@
|
||||
{"matrix": [0, 6], "x": 6, "y": 0},
|
||||
{"matrix": [0, 7], "x": 7, "y": 0},
|
||||
|
||||
{"matrix": [6, 7], "x": 17, "y": 0.5},
|
||||
{"matrix": [6, 6], "x": 16, "y": 0.5},
|
||||
{"matrix": [6, 5], "x": 15, "y": 0.5},
|
||||
{"matrix": [6, 4], "x": 14, "y": 0},
|
||||
{"matrix": [6, 3], "x": 13, "y": 0},
|
||||
{"matrix": [6, 2], "x": 12, "y": 0},
|
||||
{"matrix": [6, 1], "x": 11, "y": 0},
|
||||
{"matrix": [6, 0], "x": 10, "y": 0},
|
||||
{"matrix": [6, 1], "x": 11, "y": 0},
|
||||
{"matrix": [6, 2], "x": 12, "y": 0},
|
||||
{"matrix": [6, 3], "x": 13, "y": 0},
|
||||
{"matrix": [6, 4], "x": 14, "y": 0},
|
||||
{"matrix": [6, 5], "x": 15, "y": 0.5},
|
||||
{"matrix": [6, 6], "x": 16, "y": 0.5},
|
||||
{"matrix": [6, 7], "x": 17, "y": 0.5},
|
||||
|
||||
{"matrix": [1, 0], "x": 0, "y": 1.5},
|
||||
{"matrix": [1, 1], "x": 1, "y": 1.5},
|
||||
@@ -60,14 +65,14 @@
|
||||
{"matrix": [1, 6], "x": 6, "y": 1},
|
||||
{"matrix": [1, 7], "x": 7, "y": 1},
|
||||
|
||||
{"matrix": [7, 7], "x": 17, "y": 1.5},
|
||||
{"matrix": [7, 6], "x": 16, "y": 1.5},
|
||||
{"matrix": [7, 5], "x": 15, "y": 1.5},
|
||||
{"matrix": [7, 4], "x": 14, "y": 1},
|
||||
{"matrix": [7, 3], "x": 13, "y": 1},
|
||||
{"matrix": [7, 2], "x": 12, "y": 1},
|
||||
{"matrix": [7, 1], "x": 11, "y": 1},
|
||||
{"matrix": [7, 0], "x": 10, "y": 1},
|
||||
{"matrix": [7, 1], "x": 11, "y": 1},
|
||||
{"matrix": [7, 2], "x": 12, "y": 1},
|
||||
{"matrix": [7, 3], "x": 13, "y": 1},
|
||||
{"matrix": [7, 4], "x": 14, "y": 1},
|
||||
{"matrix": [7, 5], "x": 15, "y": 1.5},
|
||||
{"matrix": [7, 6], "x": 16, "y": 1.5},
|
||||
{"matrix": [7, 7], "x": 17, "y": 1.5},
|
||||
|
||||
{"matrix": [2, 0], "x": 0, "y": 2.5},
|
||||
{"matrix": [2, 1], "x": 1, "y": 2.5},
|
||||
@@ -78,14 +83,14 @@
|
||||
{"matrix": [2, 6], "x": 6, "y": 2},
|
||||
{"matrix": [2, 7], "x": 7, "y": 2},
|
||||
|
||||
{"matrix": [8, 7], "x": 17, "y": 2.5},
|
||||
{"matrix": [8, 6], "x": 16, "y": 2.5},
|
||||
{"matrix": [8, 5], "x": 15, "y": 2.5},
|
||||
{"matrix": [8, 4], "x": 14, "y": 2},
|
||||
{"matrix": [8, 3], "x": 13, "y": 2},
|
||||
{"matrix": [8, 2], "x": 12, "y": 2},
|
||||
{"matrix": [8, 1], "x": 11, "y": 2},
|
||||
{"matrix": [8, 0], "x": 10, "y": 2},
|
||||
{"matrix": [8, 1], "x": 11, "y": 2},
|
||||
{"matrix": [8, 2], "x": 12, "y": 2},
|
||||
{"matrix": [8, 3], "x": 13, "y": 2},
|
||||
{"matrix": [8, 4], "x": 14, "y": 2},
|
||||
{"matrix": [8, 5], "x": 15, "y": 2.5},
|
||||
{"matrix": [8, 6], "x": 16, "y": 2.5},
|
||||
{"matrix": [8, 7], "x": 17, "y": 2.5},
|
||||
|
||||
{"matrix": [3, 0], "x": 0, "y": 3.5},
|
||||
{"matrix": [3, 1], "x": 1, "y": 3.5},
|
||||
@@ -95,41 +100,41 @@
|
||||
{"matrix": [3, 5], "x": 5, "y": 3},
|
||||
{"matrix": [3, 6], "x": 6, "y": 3},
|
||||
|
||||
{"matrix": [9, 6], "x": 17, "y": 3.5},
|
||||
{"matrix": [9, 5], "x": 16, "y": 3.5},
|
||||
{"matrix": [9, 4], "x": 15, "y": 3.5},
|
||||
{"matrix": [9, 3], "x": 14, "y": 3},
|
||||
{"matrix": [9, 2], "x": 13, "y": 3},
|
||||
{"matrix": [9, 1], "x": 12, "y": 3},
|
||||
{"matrix": [9, 0], "x": 11, "y": 3},
|
||||
{"matrix": [9, 1], "x": 11, "y": 3},
|
||||
{"matrix": [9, 2], "x": 12, "y": 3},
|
||||
{"matrix": [9, 3], "x": 13, "y": 3},
|
||||
{"matrix": [9, 4], "x": 14, "y": 3},
|
||||
{"matrix": [9, 5], "x": 15, "y": 3.5},
|
||||
{"matrix": [9, 6], "x": 16, "y": 3.5},
|
||||
{"matrix": [9, 7], "x": 17, "y": 3.5},
|
||||
|
||||
{"matrix": [4, 1], "x": 1, "y": 4.5},
|
||||
{"matrix": [4, 2], "x": 2, "y": 4.5},
|
||||
{"matrix": [4, 3], "x": 3, "y": 4},
|
||||
{"matrix": [4, 4], "x": 4, "y": 4},
|
||||
|
||||
{"matrix": [10, 4], "x": 14, "y": 4},
|
||||
{"matrix": [10, 3], "x": 13, "y": 4},
|
||||
{"matrix": [10, 2], "x": 12, "y": 5},
|
||||
{"matrix": [10, 1], "x": 11, "y": 5},
|
||||
{"matrix": [10, 4], "x": 14, "y": 4},
|
||||
{"matrix": [10, 5], "x": 15, "y": 4.5},
|
||||
{"matrix": [10, 6], "x": 16, "y": 4.5},
|
||||
|
||||
{"matrix": [4, 5], "x": 4.5, "y": 5},
|
||||
{"matrix": [4, 6], "x": 5.5, "y": 5},
|
||||
|
||||
{"matrix": [10, 6], "x": 14.5, "y": 4.5},
|
||||
{"matrix": [10, 5], "x": 15.5, "y": 4.5},
|
||||
{"matrix": [10, 1], "x": 11.5, "y": 5},
|
||||
{"matrix": [10, 2], "x": 12.5, "y": 5},
|
||||
|
||||
{"matrix": [5, 5], "x": 5, "y": 6},
|
||||
{"matrix": [5, 6], "x": 6, "y": 6},
|
||||
|
||||
{"matrix": [11, 6], "x": 12, "y": 6},
|
||||
{"matrix": [11, 5], "x": 11, "y": 6},
|
||||
{"matrix": [11, 1], "x": 11, "y": 6},
|
||||
{"matrix": [11, 2], "x": 12, "y": 6},
|
||||
|
||||
{"matrix": [5, 3], "x": 5, "y": 7},
|
||||
{"matrix": [5, 4], "x": 6, "y": 7},
|
||||
|
||||
{"matrix": [11, 4], "x": 12, "y": 7},
|
||||
{"matrix": [11, 3], "x": 11, "y": 7}
|
||||
{"matrix": [11, 3], "x": 11, "y": 7},
|
||||
{"matrix": [11, 4], "x": 12, "y": 7}
|
||||
]
|
||||
}
|
||||
}
|
||||
|
||||
268
keyboards/handwired/fabiclawz/alpha_fs/keyboard.json
Normal file
268
keyboards/handwired/fabiclawz/alpha_fs/keyboard.json
Normal file
@@ -0,0 +1,268 @@
|
||||
{
|
||||
"manufacturer": "FabiClawZ",
|
||||
"keyboard_name": "handwired/fabiclawz/alpha_fs",
|
||||
"maintainer": "FFS2309",
|
||||
"bootloader": "rp2040",
|
||||
"diode_direction": "COL2ROW",
|
||||
"features": {
|
||||
"bootmagic": true,
|
||||
"extrakey": true,
|
||||
"mousekey": true,
|
||||
"nkro": true,
|
||||
"rgb_matrix": true
|
||||
},
|
||||
"matrix_pins": {
|
||||
"cols": ["GP0", "GP1", "GP2", "GP3", "GP4", "GP5", "GP6", "GP7", "GP8", "GP9", "GP10"],
|
||||
"rows": ["GP14", "GP15", "GP16", "GP17", "GP18", "GP19", "GP20", "GP21", "GP22", "GP26"]
|
||||
},
|
||||
"processor": "RP2040",
|
||||
"rgb_matrix": {
|
||||
"animations": {
|
||||
"breathing": true,
|
||||
"cycle_all": true,
|
||||
"cycle_left_right": true,
|
||||
"multisplash": true,
|
||||
"solid_reactive_simple": true,
|
||||
"typing_heatmap": true
|
||||
},
|
||||
"driver": "ws2812",
|
||||
"layout": [
|
||||
{"matrix": [0, 0], "x": 0, "y": 0, "flags": 1},
|
||||
{"matrix": [0, 1], "x": 13, "y": 0, "flags": 1},
|
||||
{"matrix": [9, 1], "x": 24, "y": 0, "flags": 1},
|
||||
{"matrix": [0, 2], "x": 34, "y": 0, "flags": 1},
|
||||
{"matrix": [9, 2], "x": 45, "y": 0, "flags": 1},
|
||||
{"matrix": [0, 3], "x": 57, "y": 0, "flags": 1},
|
||||
{"matrix": [9, 3], "x": 68, "y": 0, "flags": 1},
|
||||
{"matrix": [0, 4], "x": 78, "y": 0, "flags": 1},
|
||||
{"matrix": [9, 4], "x": 89, "y": 0, "flags": 1},
|
||||
{"matrix": [0, 5], "x": 102, "y": 0, "flags": 1},
|
||||
{"matrix": [9, 5], "x": 112, "y": 0, "flags": 1},
|
||||
{"matrix": [0, 6], "x": 123, "y": 0, "flags": 1},
|
||||
{"matrix": [9, 6], "x": 133, "y": 0, "flags": 1},
|
||||
{"matrix": [0, 7], "x": 146, "y": 0, "flags": 1},
|
||||
{"matrix": [0, 8], "x": 159, "y": 0, "flags": 1},
|
||||
{"matrix": [7, 8], "x": 169, "y": 0, "flags": 1},
|
||||
{"matrix": [8, 8], "x": 180, "y": 0, "flags": 1},
|
||||
{"matrix": [9, 8], "x": 193, "y": 0, "flags": 1},
|
||||
{"matrix": [0, 10], "x": 203, "y": 0, "flags": 1},
|
||||
{"matrix": [1, 10], "x": 214, "y": 0, "flags": 1},
|
||||
{"matrix": [2, 10], "x": 224, "y": 0, "flags": 1},
|
||||
{"matrix": [1, 0], "x": 0, "y": 15, "flags": 1},
|
||||
{"matrix": [1, 1], "x": 10, "y": 15, "flags": 4},
|
||||
{"matrix": [8, 1], "x": 21, "y": 15, "flags": 4},
|
||||
{"matrix": [1, 2], "x": 31, "y": 15, "flags": 4},
|
||||
{"matrix": [8, 2], "x": 42, "y": 15, "flags": 4},
|
||||
{"matrix": [1, 3], "x": 52, "y": 15, "flags": 4},
|
||||
{"matrix": [8, 3], "x": 63, "y": 15, "flags": 4},
|
||||
{"matrix": [1, 4], "x": 73, "y": 15, "flags": 4},
|
||||
{"matrix": [8, 4], "x": 83, "y": 15, "flags": 4},
|
||||
{"matrix": [1, 5], "x": 94, "y": 15, "flags": 4},
|
||||
{"matrix": [8, 5], "x": 104, "y": 15, "flags": 4},
|
||||
{"matrix": [1, 6], "x": 115, "y": 15, "flags": 4},
|
||||
{"matrix": [8, 6], "x": 125, "y": 15, "flags": 4},
|
||||
{"matrix": [1, 7], "x": 141, "y": 15, "flags": 1},
|
||||
{"matrix": [1, 8], "x": 159, "y": 15, "flags": 1},
|
||||
{"matrix": [6, 8], "x": 169, "y": 15, "flags": 1},
|
||||
{"matrix": [5, 8], "x": 180, "y": 15, "flags": 1},
|
||||
{"matrix": [3, 10], "x": 193, "y": 15, "flags": 8},
|
||||
{"matrix": [4, 10], "x": 203, "y": 15, "flags": 4},
|
||||
{"matrix": [5, 10], "x": 214, "y": 15, "flags": 4},
|
||||
{"matrix": [6, 10], "x": 224, "y": 15, "flags": 4},
|
||||
{"matrix": [2, 0], "x": 3, "y": 27, "flags": 1},
|
||||
{"matrix": [2, 1], "x": 16, "y": 27, "flags": 4},
|
||||
{"matrix": [7, 1], "x": 26, "y": 27, "flags": 4},
|
||||
{"matrix": [2, 2], "x": 36, "y": 27, "flags": 4},
|
||||
{"matrix": [7, 2], "x": 47, "y": 27, "flags": 4},
|
||||
{"matrix": [2, 3], "x": 57, "y": 27, "flags": 4},
|
||||
{"matrix": [7, 3], "x": 68, "y": 27, "flags": 4},
|
||||
{"matrix": [2, 4], "x": 78, "y": 27, "flags": 4},
|
||||
{"matrix": [7, 4], "x": 89, "y": 27, "flags": 4},
|
||||
{"matrix": [2, 5], "x": 99, "y": 27, "flags": 4},
|
||||
{"matrix": [7, 5], "x": 109, "y": 27, "flags": 4},
|
||||
{"matrix": [2, 6], "x": 120, "y": 27, "flags": 4},
|
||||
{"matrix": [7, 6], "x": 130, "y": 27, "flags": 4},
|
||||
{"matrix": [2, 7], "x": 147, "y": 20, "flags": 1},
|
||||
{"matrix": [2, 8], "x": 159, "y": 27, "flags": 1},
|
||||
{"matrix": [3, 8], "x": 169, "y": 27, "flags": 1},
|
||||
{"matrix": [4, 8], "x": 180, "y": 27, "flags": 1},
|
||||
{"matrix": [0, 9], "x": 193, "y": 27, "flags": 4},
|
||||
{"matrix": [1, 9], "x": 203, "y": 27, "flags": 4},
|
||||
{"matrix": [2, 9], "x": 214, "y": 27, "flags": 4},
|
||||
{"matrix": [7, 10], "x": 224, "y": 34, "flags": 4},
|
||||
{"matrix": [3, 0], "x": 4, "y": 40, "flags": 8},
|
||||
{"matrix": [3, 1], "x": 18, "y": 40, "flags": 4},
|
||||
{"matrix": [6, 1], "x": 29, "y": 40, "flags": 4},
|
||||
{"matrix": [3, 2], "x": 39, "y": 40, "flags": 4},
|
||||
{"matrix": [6, 2], "x": 50, "y": 40, "flags": 4},
|
||||
{"matrix": [3, 3], "x": 60, "y": 40, "flags": 4},
|
||||
{"matrix": [6, 3], "x": 70, "y": 40, "flags": 4},
|
||||
{"matrix": [3, 4], "x": 81, "y": 40, "flags": 4},
|
||||
{"matrix": [6, 4], "x": 91, "y": 40, "flags": 4},
|
||||
{"matrix": [3, 5], "x": 102, "y": 40, "flags": 4},
|
||||
{"matrix": [6, 5], "x": 112, "y": 40, "flags": 4},
|
||||
{"matrix": [3, 6], "x": 123, "y": 40, "flags": 4},
|
||||
{"matrix": [6, 6], "x": 133, "y": 40, "flags": 4},
|
||||
{"matrix": [5, 9], "x": 193, "y": 40, "flags": 4},
|
||||
{"matrix": [4, 9], "x": 203, "y": 40, "flags": 4},
|
||||
{"matrix": [3, 9], "x": 214, "y": 40, "flags": 4},
|
||||
{"matrix": [4, 0], "x": 1, "y": 52, "flags": 1},
|
||||
{"matrix": [4, 1], "x": 13, "y": 52, "flags": 4},
|
||||
{"matrix": [5, 1], "x": 23, "y": 52, "flags": 4},
|
||||
{"matrix": [4, 2], "x": 34, "y": 52, "flags": 4},
|
||||
{"matrix": [5, 2], "x": 44, "y": 52, "flags": 4},
|
||||
{"matrix": [4, 3], "x": 55, "y": 52, "flags": 4},
|
||||
{"matrix": [5, 3], "x": 65, "y": 52, "flags": 4},
|
||||
{"matrix": [4, 4], "x": 76, "y": 52, "flags": 4},
|
||||
{"matrix": [5, 4], "x": 86, "y": 52, "flags": 4},
|
||||
{"matrix": [4, 5], "x": 69, "y": 52, "flags": 4},
|
||||
{"matrix": [5, 5], "x": 107, "y": 52, "flags": 4},
|
||||
{"matrix": [4, 6], "x": 117, "y": 52, "flags": 4},
|
||||
{"matrix": [5, 6], "x": 137, "y": 52, "flags": 1},
|
||||
{"matrix": [3, 7], "x": 169, "y": 52, "flags": 1},
|
||||
{"matrix": [6, 9], "x": 193, "y": 52, "flags": 4},
|
||||
{"matrix": [7, 9], "x": 203, "y": 52, "flags": 4},
|
||||
{"matrix": [8, 9], "x": 214, "y": 52, "flags": 4},
|
||||
{"matrix": [8, 10], "x": 224, "y": 58, "flags": 1},
|
||||
{"matrix": [5, 0], "x": 1, "y": 64, "flags": 1},
|
||||
{"matrix": [6, 0], "x": 14, "y": 64, "flags": 1},
|
||||
{"matrix": [7, 0], "x": 27, "y": 64, "flags": 1},
|
||||
{"matrix": [8, 0], "x": 66, "y": 64, "flags": 4},
|
||||
{"matrix": [9, 0], "x": 105, "y": 64, "flags": 1},
|
||||
{"matrix": [9, 7], "x": 118, "y": 64, "flags": 1},
|
||||
{"matrix": [8, 7], "x": 131, "y": 64, "flags": 1},
|
||||
{"matrix": [7, 7], "x": 145, "y": 64, "flags": 1},
|
||||
{"matrix": [6, 7], "x": 159, "y": 64, "flags": 1},
|
||||
{"matrix": [5, 7], "x": 169, "y": 64, "flags": 1},
|
||||
{"matrix": [4, 7], "x": 180, "y": 64, "flags": 1},
|
||||
{"matrix": [9, 9], "x": 198, "y": 64, "flags": 4},
|
||||
{"matrix": [9, 10], "x": 214, "y": 64, "flags": 1}
|
||||
]
|
||||
},
|
||||
"url": "https://github.com/FFS2309/alpha_fs_keyboard",
|
||||
"usb": {
|
||||
"device_version": "1.0.0",
|
||||
"pid": "0x0001",
|
||||
"vid": "0x4643"
|
||||
},
|
||||
"ws2812": {
|
||||
"driver": "vendor",
|
||||
"pin": "GP11"
|
||||
},
|
||||
"layouts": {
|
||||
"LAYOUT": {
|
||||
"layout": [
|
||||
{"label": "Esc", "matrix": [0, 0], "x": 0, "y": 0},
|
||||
{"label": "F1", "matrix": [0, 1], "x": 1.25, "y": 0},
|
||||
{"label": "F2", "matrix": [9, 1], "x": 2.25, "y": 0},
|
||||
{"label": "F3", "matrix": [0, 2], "x": 3.25, "y": 0},
|
||||
{"label": "F4", "matrix": [9, 2], "x": 4.25, "y": 0},
|
||||
{"label": "F5", "matrix": [0, 3], "x": 5.5, "y": 0},
|
||||
{"label": "F6", "matrix": [9, 3], "x": 6.5, "y": 0},
|
||||
{"label": "F7", "matrix": [0, 4], "x": 7.5, "y": 0},
|
||||
{"label": "F8", "matrix": [9, 4], "x": 8.5, "y": 0},
|
||||
{"label": "F9", "matrix": [0, 5], "x": 9.75, "y": 0},
|
||||
{"label": "F10", "matrix": [9, 5], "x": 10.75, "y": 0},
|
||||
{"label": "F11", "matrix": [0, 6], "x": 11.75, "y": 0},
|
||||
{"label": "F12", "matrix": [9, 6], "x": 12.75, "y": 0},
|
||||
{"label": "Extra1", "matrix": [0, 7], "x": 14, "y": 0},
|
||||
{"label": "PrtSc", "matrix": [0, 8], "x": 15.25, "y": 0},
|
||||
{"label": "Scroll Lock", "matrix": [7, 8], "x": 16.25, "y": 0},
|
||||
{"label": "Pause", "matrix": [8, 8], "x": 17.25, "y": 0},
|
||||
{"label": "Extra2", "matrix": [9, 8], "x": 18.5, "y": 0},
|
||||
{"label": "Extra3", "matrix": [0, 10], "x": 19.5, "y": 0},
|
||||
{"label": "Extra4", "matrix": [1, 10], "x": 20.5, "y": 0},
|
||||
{"label": "Extra5", "matrix": [2, 10], "x": 21.5, "y": 0},
|
||||
{"label": "^", "matrix": [1, 0], "x": 0, "y": 1.5},
|
||||
{"label": "1", "matrix": [1, 1], "x": 1, "y": 1.5},
|
||||
{"label": "2", "matrix": [8, 1], "x": 2, "y": 1.5},
|
||||
{"label": "3", "matrix": [1, 2], "x": 3, "y": 1.5},
|
||||
{"label": "4", "matrix": [8, 2], "x": 4, "y": 1.5},
|
||||
{"label": "5", "matrix": [1, 3], "x": 5, "y": 1.5},
|
||||
{"label": "6", "matrix": [8, 3], "x": 6, "y": 1.5},
|
||||
{"label": "7", "matrix": [1, 4], "x": 7, "y": 1.5},
|
||||
{"label": "8", "matrix": [8, 4], "x": 8, "y": 1.5},
|
||||
{"label": "9", "matrix": [1, 5], "x": 9, "y": 1.5},
|
||||
{"label": "0", "matrix": [8, 5], "x": 10, "y": 1.5},
|
||||
{"label": "\u00df", "matrix": [1, 6], "x": 11, "y": 1.5},
|
||||
{"label": "\u00b4", "matrix": [8, 6], "x": 12, "y": 1.5},
|
||||
{"label": "Backspace", "matrix": [1, 7], "x": 13, "y": 1.5, "w": 2},
|
||||
{"label": "Insert", "matrix": [1, 8], "x": 15.25, "y": 1.5},
|
||||
{"label": "Home", "matrix": [6, 8], "x": 16.25, "y": 1.5},
|
||||
{"label": "PgUp", "matrix": [5, 8], "x": 17.25, "y": 1.5},
|
||||
{"label": "Num Lock", "matrix": [3, 10], "x": 18.5, "y": 1.5},
|
||||
{"label": "/", "matrix": [4, 10], "x": 19.5, "y": 1.5},
|
||||
{"label": "*", "matrix": [5, 10], "x": 20.5, "y": 1.5},
|
||||
{"label": "-", "matrix": [6, 10], "x": 21.5, "y": 1.5},
|
||||
{"label": "Tab", "matrix": [2, 0], "x": 0, "y": 2.5, "w": 1.5},
|
||||
{"label": "Q", "matrix": [2, 1], "x": 1.5, "y": 2.5},
|
||||
{"label": "W", "matrix": [7, 1], "x": 2.5, "y": 2.5},
|
||||
{"label": "E", "matrix": [2, 2], "x": 3.5, "y": 2.5},
|
||||
{"label": "R", "matrix": [7, 2], "x": 4.5, "y": 2.5},
|
||||
{"label": "T", "matrix": [2, 3], "x": 5.5, "y": 2.5},
|
||||
{"label": "Y", "matrix": [7, 3], "x": 6.5, "y": 2.5},
|
||||
{"label": "U", "matrix": [2, 4], "x": 7.5, "y": 2.5},
|
||||
{"label": "I", "matrix": [7, 4], "x": 8.5, "y": 2.5},
|
||||
{"label": "O", "matrix": [2, 5], "x": 9.5, "y": 2.5},
|
||||
{"label": "P", "matrix": [7, 5], "x": 10.5, "y": 2.5},
|
||||
{"label": "{", "matrix": [2, 6], "x": 11.5, "y": 2.5},
|
||||
{"label": "}", "matrix": [7, 6], "x": 12.5, "y": 2.5},
|
||||
{"label": "Enter", "matrix": [2, 7], "x": 13.75, "y": 2.5, "w": 1.25, "h": 2},
|
||||
{"label": "Delete", "matrix": [2, 8], "x": 15.25, "y": 2.5},
|
||||
{"label": "End", "matrix": [3, 8], "x": 16.25, "y": 2.5},
|
||||
{"label": "PgDn", "matrix": [4, 8], "x": 17.25, "y": 2.5},
|
||||
{"label": "7", "matrix": [0, 9], "x": 18.5, "y": 2.5},
|
||||
{"label": "8", "matrix": [1, 9], "x": 19.5, "y": 2.5},
|
||||
{"label": "9", "matrix": [2, 9], "x": 20.5, "y": 2.5},
|
||||
{"label": "+", "matrix": [7, 10], "x": 21.5, "y": 2.5, "h": 2},
|
||||
{"label": "Caps Lock", "matrix": [3, 0], "x": 0, "y": 3.5, "w": 1.75},
|
||||
{"label": "A", "matrix": [3, 1], "x": 1.75, "y": 3.5},
|
||||
{"label": "S", "matrix": [6, 1], "x": 2.75, "y": 3.5},
|
||||
{"label": "D", "matrix": [3, 2], "x": 3.75, "y": 3.5},
|
||||
{"label": "F", "matrix": [6, 2], "x": 4.75, "y": 3.5},
|
||||
{"label": "G", "matrix": [3, 3], "x": 5.75, "y": 3.5},
|
||||
{"label": "H", "matrix": [6, 3], "x": 6.75, "y": 3.5},
|
||||
{"label": "J", "matrix": [3, 4], "x": 7.75, "y": 3.5},
|
||||
{"label": "K", "matrix": [6, 4], "x": 8.75, "y": 3.5},
|
||||
{"label": "L", "matrix": [3, 5], "x": 9.75, "y": 3.5},
|
||||
{"label": ":", "matrix": [6, 5], "x": 10.75, "y": 3.5},
|
||||
{"label": "@", "matrix": [3, 6], "x": 11.75, "y": 3.5},
|
||||
{"label": "~", "matrix": [6, 6], "x": 12.75, "y": 3.5},
|
||||
{"label": "4", "matrix": [5, 9], "x": 18.5, "y": 3.5},
|
||||
{"label": "5", "matrix": [4, 9], "x": 19.5, "y": 3.5},
|
||||
{"label": "6", "matrix": [3, 9], "x": 20.5, "y": 3.5},
|
||||
{"label": "Shift", "matrix": [4, 0], "x": 0, "y": 4.5, "w": 1.25},
|
||||
{"label": "|", "matrix": [4, 1], "x": 1.25, "y": 4.5},
|
||||
{"label": "Z", "matrix": [5, 1], "x": 2.25, "y": 4.5},
|
||||
{"label": "X", "matrix": [4, 2], "x": 3.25, "y": 4.5},
|
||||
{"label": "C", "matrix": [5, 2], "x": 4.25, "y": 4.5},
|
||||
{"label": "V", "matrix": [4, 3], "x": 5.25, "y": 4.5},
|
||||
{"label": "B", "matrix": [5, 3], "x": 6.25, "y": 4.5},
|
||||
{"label": "N", "matrix": [4, 4], "x": 7.25, "y": 4.5},
|
||||
{"label": "M", "matrix": [5, 4], "x": 8.25, "y": 4.5},
|
||||
{"label": "<", "matrix": [4, 5], "x": 9.25, "y": 4.5},
|
||||
{"label": ">", "matrix": [5, 5], "x": 10.25, "y": 4.5},
|
||||
{"label": "?", "matrix": [4, 6], "x": 11.25, "y": 4.5},
|
||||
{"label": "Shift", "matrix": [5, 6], "x": 12.25, "y": 4.5, "w": 2.75},
|
||||
{"label": "\u2191", "matrix": [3, 7], "x": 16.25, "y": 4.5},
|
||||
{"label": "1", "matrix": [6, 9], "x": 18.5, "y": 4.5},
|
||||
{"label": "2", "matrix": [7, 9], "x": 19.5, "y": 4.5},
|
||||
{"label": "3", "matrix": [8, 9], "x": 20.5, "y": 4.5},
|
||||
{"label": "Enter", "matrix": [8, 10], "x": 21.5, "y": 4.5, "h": 2},
|
||||
{"label": "Ctrl", "matrix": [5, 0], "x": 0, "y": 5.5, "w": 1.25},
|
||||
{"label": "Win", "matrix": [6, 0], "x": 1.25, "y": 5.5, "w": 1.25},
|
||||
{"label": "Alt", "matrix": [7, 0], "x": 2.5, "y": 5.5, "w": 1.25},
|
||||
{"matrix": [8, 0], "x": 3.75, "y": 5.5, "w": 6.25},
|
||||
{"label": "AltGr", "matrix": [9, 0], "x": 10, "y": 5.5, "w": 1.25},
|
||||
{"label": "Win", "matrix": [9, 7], "x": 11.25, "y": 5.5, "w": 1.25},
|
||||
{"label": "Menu", "matrix": [8, 7], "x": 12.5, "y": 5.5, "w": 1.25},
|
||||
{"label": "Ctrl", "matrix": [7, 7], "x": 13.75, "y": 5.5, "w": 1.25},
|
||||
{"label": "\u2190", "matrix": [6, 7], "x": 15.25, "y": 5.5},
|
||||
{"label": "\u2193", "matrix": [5, 7], "x": 16.25, "y": 5.5},
|
||||
{"label": "\u2192", "matrix": [4, 7], "x": 17.25, "y": 5.5},
|
||||
{"label": "0", "matrix": [9, 9], "x": 18.5, "y": 5.5, "w": 2},
|
||||
{"label": ".", "matrix": [9, 10], "x": 20.5, "y": 5.5}
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,16 @@
|
||||
// Copyright 2025 Fabian Felix Selbach (@FFS2309)
|
||||
// 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_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, RM_TOGG, KC_PSCR, KC_SCRL, KC_PAUS, RM_NEXT, RM_PREV, RM_VALU, RM_VALD,
|
||||
|
||||
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_NUM, KC_PSLS, KC_PAST, KC_PMNS,
|
||||
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_ENT, KC_DEL, KC_END, KC_PGDN, KC_P7, KC_P8, KC_P9, KC_PPLS,
|
||||
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_P4, KC_P5, KC_P6,
|
||||
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_UP, KC_P1, KC_P2, KC_P3, KC_PENT,
|
||||
KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, KC_RGUI, KC_APP, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT, KC_P0, KC_PDOT
|
||||
)
|
||||
};
|
||||
28
keyboards/handwired/fabiclawz/alpha_fs/readme.md
Normal file
28
keyboards/handwired/fabiclawz/alpha_fs/readme.md
Normal file
@@ -0,0 +1,28 @@
|
||||
# handwired/fabiclawz/alpha_fs
|
||||
|
||||

|
||||
|
||||
My first keyboard with custom PCB, originally designed for the Milk-V duo series of RISC-V MCUs with pin compatibility with the Raspberry Pi Pico used in this
|
||||
case for QMK.
|
||||
|
||||
* Keyboard Maintainer: [Fabian Felix Selbach](https://github.com/FFS2309)
|
||||
* Hardware Supported: Raspberry Pi Pico, Custom PCB
|
||||
* Hardware Availability: [Hardware design files](https://github.com/FFS2309/alpha_fs_keyboard)
|
||||
|
||||
Make example for this keyboard (after setting up your build environment):
|
||||
|
||||
make handwired/fabiclawz/alpha_fs:default
|
||||
|
||||
Flashing example for this keyboard:
|
||||
|
||||
make handwired/fabiclawz/alpha_fs:default:flash
|
||||
|
||||
See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](https://docs.qmk.fm/#/newbs).
|
||||
|
||||
## Bootloader
|
||||
|
||||
Enter the bootloader in 3 ways:
|
||||
|
||||
* **Bootmagic reset**: Hold down the key at (0,0) in the matrix (Escape) and plug in the keyboard
|
||||
* **Physical reset button**: Briefly press the button on the back of the Pi Pico if available
|
||||
* **Keycode in layout**: Press the key mapped to `QK_BOOT` if it is available
|
||||
33
keyboards/ploopyco/nano_2/config.h
Normal file
33
keyboards/ploopyco/nano_2/config.h
Normal file
@@ -0,0 +1,33 @@
|
||||
/* Copyright 2024 Colin Lam (Ploopy Corporation)
|
||||
*
|
||||
* 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 UNUSABLE_PINS \
|
||||
{ GP1, GP3, GP4, GP6, GP8, GP10, GP14, GP16, GP18, GP20, GP22, GP24, GP25, GP26, GP27, GP28, GP29 }
|
||||
|
||||
#define MOUSE_EXTENDED_REPORT
|
||||
|
||||
#define PLOOPY_DRAGSCROLL_MOMENTARY
|
||||
#define PLOOPY_DRAGSCROLL_DIVISOR_H 64.0
|
||||
#define PLOOPY_DRAGSCROLL_DIVISOR_V 64.0
|
||||
|
||||
#define PAW3222_CS_PIN GP5
|
||||
#define PAW3222_MOTION_PIN GP9
|
||||
#define PAW3222_SPI_DIVISOR 64
|
||||
#define SPI_SCK_PIN GP2
|
||||
#define SPI_MISO_PIN GP0
|
||||
#define SPI_MOSI_PIN GP7
|
||||
27
keyboards/ploopyco/nano_2/info.json
Normal file
27
keyboards/ploopyco/nano_2/info.json
Normal file
@@ -0,0 +1,27 @@
|
||||
{
|
||||
"keyboard_name": "Ploopy Nano 2 Trackball",
|
||||
"manufacturer": "Ploopy Corporation",
|
||||
"url": "www.ploopy.co",
|
||||
"maintainer": "ploopyco",
|
||||
"usb": {
|
||||
"vid": "0x5043",
|
||||
"pid": "0x4CE5",
|
||||
"device_version": "0.0.1",
|
||||
"max_power": 100
|
||||
},
|
||||
"features": {
|
||||
"bootmagic": true,
|
||||
"extrakey": true,
|
||||
"nkro": true,
|
||||
"pointing_device": true
|
||||
},
|
||||
"processor": "RP2040",
|
||||
"bootloader": "rp2040",
|
||||
"layouts": {
|
||||
"LAYOUT": {
|
||||
"layout": [
|
||||
{"x": 0, "y": 0, "matrix": [0, 0]}
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
||||
23
keyboards/ploopyco/nano_2/keymaps/default/keymap.c
Normal file
23
keyboards/ploopyco/nano_2/keymaps/default/keymap.c
Normal file
@@ -0,0 +1,23 @@
|
||||
/* Copyright 2021 Colin Lam (Ploopy Corporation)
|
||||
* Copyright 2020 Christopher Courtney, aka Drashna Jael're (@drashna) <drashna@live.com>
|
||||
* Copyright 2019 Sunjun Kim
|
||||
* Copyright 2019 Hiroyuki Okada
|
||||
*
|
||||
* 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( DRAG_SCROLL )
|
||||
};
|
||||
38
keyboards/ploopyco/nano_2/readme.md
Normal file
38
keyboards/ploopyco/nano_2/readme.md
Normal file
@@ -0,0 +1,38 @@
|
||||
# Ploopy Nano 2 Trackball
|
||||
|
||||

|
||||
|
||||
It's a DIY, QMK Powered Trackball...Nano!
|
||||
|
||||
* Maintainer: [PloopyCo](https://github.com/ploopyco)
|
||||
* Key contributors: [Drashna Jael're](https://github.com/drashna/), [Germ](https://github.com/germ/)
|
||||
* Hardware Supported: RP2040
|
||||
* Hardware Availability: [Store](https://ploopy.co/nano-2), [GitHub](https://github.com/ploopyco)
|
||||
|
||||
Make example for this keyboard (after setting up your build environment):
|
||||
|
||||
make ploopyco/nano_2/rev2_003:default
|
||||
|
||||
Flashing example for this keyboard:
|
||||
|
||||
make ploopyco/nano_2/rev2_003:default:flash
|
||||
|
||||
# Building Firmware
|
||||
|
||||
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).
|
||||
|
||||
# Triggering the Bootloader
|
||||
|
||||
[Do you see those two golden holes in the board](https://ploopy.co/wp-content/uploads/2023/11/boot.jpg)? Those are called **vias**. They act exactly like a switch does. Right now, that switch is OFF. However, if you take a paperclip or a pair of metal tweezers and touch those two vias, the two vias will form an electrical connection. Effectively, that switch turns ON.
|
||||
|
||||
Go ahead and connect the two vias, and then (while the vias are connected) plug in the Nano 2 board into your computer.
|
||||
|
||||
The computer should recognise that a mass storage device was just plugged in. Once this is done, you should be able to drag and drop files onto the Nano 2 board, as if the board was a USB drive. Feel free to remove the tweezers or paperclip at this point.
|
||||
|
||||
If you want to upload a new firmware file (a ".uf2" file, like "nano-2-awesome-version.uf2" or something), just drag it into the folder, and it'll automatically install on the Nano 2 board and restart itself, in normal operating mode. You're done!
|
||||
|
||||
**TIP**: If your firmware is in some kind of strange state and uploading new firmware isn't fixing it, try uploading [a flash nuke](https://learn.adafruit.com/getting-started-with-raspberry-pi-pico-circuitpython/circuitpython#flash-resetting-uf2-3083182) to the Nano 2 board before flashing the new firmware. It wipes the memory of the Nano 2 board completely clean, which can help clear a few types of errors.
|
||||
|
||||
# Customizing your Ploopy Nano 2
|
||||
|
||||
You can find customziation options [here](../readme.md).
|
||||
7
keyboards/ploopyco/nano_2/rev2_003/keyboard.json
Normal file
7
keyboards/ploopyco/nano_2/rev2_003/keyboard.json
Normal file
@@ -0,0 +1,7 @@
|
||||
{
|
||||
"matrix_pins": {
|
||||
"direct": [
|
||||
["GP17"]
|
||||
]
|
||||
}
|
||||
}
|
||||
1
keyboards/ploopyco/nano_2/rev2_003/readme.md
Normal file
1
keyboards/ploopyco/nano_2/rev2_003/readme.md
Normal file
@@ -0,0 +1 @@
|
||||
See the main readme for more details. This is just here for when future revisions of the board are released.
|
||||
1
keyboards/ploopyco/nano_2/rules.mk
Normal file
1
keyboards/ploopyco/nano_2/rules.mk
Normal file
@@ -0,0 +1 @@
|
||||
POINTING_DEVICE_DRIVER = paw3222
|
||||
@@ -23,7 +23,7 @@
|
||||
#endif
|
||||
|
||||
#ifdef OS_DETECTION_DEBUG_ENABLE
|
||||
# include "eeconfig.h"
|
||||
# include "nvm_eeprom_eeconfig_internal.h"
|
||||
# include "eeprom.h"
|
||||
# include "print.h"
|
||||
|
||||
|
||||
Reference in New Issue
Block a user