forked from mirror/qmk_firmware
Compare commits
73 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
3eb172d08e | ||
|
|
b3f5408e72 | ||
|
|
f156e57f8e | ||
|
|
10849dac68 | ||
|
|
fb3a414a40 | ||
|
|
e31eeb85db | ||
|
|
580d18d2e9 | ||
|
|
4f9ef90754 | ||
|
|
3cda9ffcd6 | ||
|
|
54860ed238 | ||
|
|
f4e6af2dbe | ||
|
|
f5f11b7c79 | ||
|
|
6fbfd659ff | ||
|
|
c8cdee3e4e | ||
|
|
465cbc87de | ||
|
|
6693a30671 | ||
|
|
e6daffce46 | ||
|
|
92afc8198a | ||
|
|
7c9e650b1c | ||
|
|
7005522176 | ||
|
|
32b6faaf35 | ||
|
|
bf327f7a81 | ||
|
|
3b874ee434 | ||
|
|
453ec007c1 | ||
|
|
459de98222 | ||
|
|
7f22cb52e3 | ||
|
|
36008922f8 | ||
|
|
2ad13037ab | ||
|
|
85a7627641 | ||
|
|
11daef82e0 | ||
|
|
c95f0fb671 | ||
|
|
f0b5feb858 | ||
|
|
f43c9127bf | ||
|
|
4055798807 | ||
|
|
49a1a12a32 | ||
|
|
fb598e7e61 | ||
|
|
c0d57a6826 | ||
|
|
1a284f2b92 | ||
|
|
f25624dca4 | ||
|
|
035dcf213c | ||
|
|
7446c6ea7d | ||
|
|
ff21363627 | ||
|
|
c2dd0c1845 | ||
|
|
13a87ad354 | ||
|
|
c82f675266 | ||
|
|
e12c1fefdf | ||
|
|
6a73c8299b | ||
|
|
6374bad540 | ||
|
|
b78118b2dd | ||
|
|
015cd23616 | ||
|
|
f18a699393 | ||
|
|
4d6337539d | ||
|
|
17fac880bf | ||
|
|
805cde674d | ||
|
|
f7393a5ab8 | ||
|
|
93cc3f58b1 | ||
|
|
6a536d5588 | ||
|
|
4665d9c405 | ||
|
|
2e86b05cab | ||
|
|
61778f6136 | ||
|
|
1c03574424 | ||
|
|
42f1763db9 | ||
|
|
e7c009c142 | ||
|
|
aa05fa649f | ||
|
|
0b3ece1189 | ||
|
|
ae4ab5ed31 | ||
|
|
0c19eae916 | ||
|
|
b7729fa019 | ||
|
|
e0788d19d4 | ||
|
|
f043545144 | ||
|
|
c44f5375ab | ||
|
|
6d4f8d8963 | ||
|
|
75848477fb |
@@ -11,7 +11,8 @@ charset = utf-8
|
||||
trim_trailing_whitespace = true
|
||||
insert_final_newline = true
|
||||
|
||||
[{*.yaml,*.yml}] # To match GitHub Actions formatting
|
||||
# To match GitHub Actions formatting
|
||||
[*.{yaml,yml}]
|
||||
indent_size = 2
|
||||
|
||||
[*.md]
|
||||
|
||||
3
.github/PULL_REQUEST_TEMPLATE.md
vendored
3
.github/PULL_REQUEST_TEMPLATE.md
vendored
@@ -1,6 +1,5 @@
|
||||
<!--- Provide a general summary of your changes in the title above. -->
|
||||
|
||||
<!--- This template is entirely optional and can be removed, but is here to help both you and us. -->
|
||||
<!--- Anything on lines wrapped in comments like these will not show up in the final text. -->
|
||||
|
||||
## Description
|
||||
@@ -15,7 +14,7 @@
|
||||
- [ ] New feature
|
||||
- [ ] Enhancement/optimization
|
||||
- [ ] Keyboard (addition or update)
|
||||
- [ ] Keymap/layout/userspace (addition or update)
|
||||
- [ ] Keymap/layout (addition or update)
|
||||
- [ ] Documentation
|
||||
|
||||
## Issues Fixed or Closed by This PR
|
||||
|
||||
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.6.4
|
||||
uses: JamesIves/github-pages-deploy-action@v4.6.8
|
||||
with:
|
||||
token: ${{ secrets.GITHUB_TOKEN }}
|
||||
branch: gh-pages
|
||||
|
||||
@@ -41,6 +41,8 @@ export default defineConfig(({ mode }) => {
|
||||
|
||||
sidebar: sidebar,
|
||||
|
||||
externalLinkIcon: true,
|
||||
|
||||
socialLinks: [
|
||||
{ icon: { svg: '<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 50 50" width="50px" height="50px"><path d="M 29 3 C 28.0625 3 27.164063 3.382813 26.5 4 C 25.835938 4.617188 25.363281 5.433594 25 6.40625 C 24.355469 8.140625 24.085938 10.394531 24.03125 13.03125 C 19.234375 13.179688 14.820313 14.421875 11.28125 16.46875 C 10.214844 15.46875 8.855469 14.96875 7.5 14.96875 C 6.089844 14.96875 4.675781 15.511719 3.59375 16.59375 C 1.425781 18.761719 1.425781 22.238281 3.59375 24.40625 L 3.84375 24.65625 C 3.3125 26.035156 3 27.488281 3 29 C 3 33.527344 5.566406 37.585938 9.5625 40.4375 C 13.558594 43.289063 19.007813 45 25 45 C 30.992188 45 36.441406 43.289063 40.4375 40.4375 C 44.433594 37.585938 47 33.527344 47 29 C 47 27.488281 46.6875 26.035156 46.15625 24.65625 L 46.40625 24.40625 C 48.574219 22.238281 48.574219 18.761719 46.40625 16.59375 C 45.324219 15.511719 43.910156 14.96875 42.5 14.96875 C 41.144531 14.96875 39.785156 15.46875 38.71875 16.46875 C 35.195313 14.433594 30.800781 13.191406 26.03125 13.03125 C 26.09375 10.546875 26.363281 8.46875 26.875 7.09375 C 27.164063 6.316406 27.527344 5.757813 27.875 5.4375 C 28.222656 5.117188 28.539063 5 29 5 C 29.460938 5 29.683594 5.125 30.03125 5.40625 C 30.378906 5.6875 30.785156 6.148438 31.3125 6.6875 C 32.253906 7.652344 33.695313 8.714844 36.09375 8.9375 C 36.539063 11.238281 38.574219 13 41 13 C 43.75 13 46 10.75 46 8 C 46 5.25 43.75 3 41 3 C 38.605469 3 36.574219 4.710938 36.09375 6.96875 C 34.3125 6.796875 33.527344 6.109375 32.75 5.3125 C 32.300781 4.851563 31.886719 4.3125 31.3125 3.84375 C 30.738281 3.375 29.9375 3 29 3 Z M 41 5 C 42.667969 5 44 6.332031 44 8 C 44 9.667969 42.667969 11 41 11 C 39.332031 11 38 9.667969 38 8 C 38 6.332031 39.332031 5 41 5 Z M 25 15 C 30.609375 15 35.675781 16.613281 39.28125 19.1875 C 42.886719 21.761719 45 25.226563 45 29 C 45 32.773438 42.886719 36.238281 39.28125 38.8125 C 35.675781 41.386719 30.609375 43 25 43 C 19.390625 43 14.324219 41.386719 10.71875 38.8125 C 7.113281 36.238281 5 32.773438 5 29 C 5 25.226563 7.113281 21.761719 10.71875 19.1875 C 14.324219 16.613281 19.390625 15 25 15 Z M 7.5 16.9375 C 8.203125 16.9375 8.914063 17.148438 9.53125 17.59375 C 7.527344 19.03125 5.886719 20.769531 4.75 22.71875 C 3.582031 21.296875 3.660156 19.339844 5 18 C 5.714844 17.285156 6.609375 16.9375 7.5 16.9375 Z M 42.5 16.9375 C 43.390625 16.9375 44.285156 17.285156 45 18 C 46.339844 19.339844 46.417969 21.296875 45.25 22.71875 C 44.113281 20.769531 42.472656 19.03125 40.46875 17.59375 C 41.085938 17.148438 41.796875 16.9375 42.5 16.9375 Z M 17 22 C 14.800781 22 13 23.800781 13 26 C 13 28.199219 14.800781 30 17 30 C 19.199219 30 21 28.199219 21 26 C 21 23.800781 19.199219 22 17 22 Z M 33 22 C 30.800781 22 29 23.800781 29 26 C 29 28.199219 30.800781 30 33 30 C 35.199219 30 37 28.199219 37 26 C 37 23.800781 35.199219 22 33 22 Z M 17 24 C 18.117188 24 19 24.882813 19 26 C 19 27.117188 18.117188 28 17 28 C 15.882813 28 15 27.117188 15 26 C 15 24.882813 15.882813 24 17 24 Z M 33 24 C 34.117188 24 35 24.882813 35 26 C 35 27.117188 34.117188 28 33 28 C 31.882813 28 31 27.117188 31 26 C 31 24.882813 31.882813 24 33 24 Z M 34.15625 33.84375 C 34.101563 33.851563 34.050781 33.859375 34 33.875 C 33.683594 33.9375 33.417969 34.144531 33.28125 34.4375 C 33.28125 34.4375 32.757813 35.164063 31.4375 36 C 30.117188 36.835938 28.058594 37.6875 25 37.6875 C 21.941406 37.6875 19.882813 36.835938 18.5625 36 C 17.242188 35.164063 16.71875 34.4375 16.71875 34.4375 C 16.492188 34.082031 16.066406 33.90625 15.65625 34 C 15.332031 34.082031 15.070313 34.316406 14.957031 34.632813 C 14.84375 34.945313 14.894531 35.292969 15.09375 35.5625 C 15.09375 35.5625 15.863281 36.671875 17.46875 37.6875 C 19.074219 38.703125 21.558594 39.6875 25 39.6875 C 28.441406 39.6875 30.925781 38.703125 32.53125 37.6875 C 34.136719 36.671875 34.90625 35.5625 34.90625 35.5625 C 35.207031 35.273438 35.296875 34.824219 35.128906 34.441406 C 34.960938 34.058594 34.574219 33.820313 34.15625 33.84375 Z"/></svg>' }, link: "https://reddit.com/r/olkb" },
|
||||
{ icon: "discord", link: "https://discord.gg/qmk" },
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
{
|
||||
"license": "GPL-2.0-or-later",
|
||||
"devDependencies": {
|
||||
"vite": "^5.2.10",
|
||||
"vite": "^5.2.14",
|
||||
"vitepress": "^1.1.0",
|
||||
"vitepress-plugin-tabs": "^0.5.0",
|
||||
"vue": "^3.4.24"
|
||||
|
||||
@@ -298,85 +298,85 @@
|
||||
resolved "https://registry.yarnpkg.com/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.15.tgz#d7c6e6755c78567a951e04ab52ef0fd26de59f32"
|
||||
integrity sha512-eF2rxCRulEKXHTRiDrDy6erMYWqNw4LPdQ8UQA4huuxaQsVeRPFl2oM8oDGxMFhJUWZf9McpLtJasDDZb/Bpeg==
|
||||
|
||||
"@rollup/rollup-android-arm-eabi@4.16.4":
|
||||
version "4.16.4"
|
||||
resolved "https://registry.yarnpkg.com/@rollup/rollup-android-arm-eabi/-/rollup-android-arm-eabi-4.16.4.tgz#5e8930291f1e5ead7fb1171d53ba5c87718de062"
|
||||
integrity sha512-GkhjAaQ8oUTOKE4g4gsZ0u8K/IHU1+2WQSgS1TwTcYvL+sjbaQjNHFXbOJ6kgqGHIO1DfUhI/Sphi9GkRT9K+Q==
|
||||
"@rollup/rollup-android-arm-eabi@4.22.4":
|
||||
version "4.22.4"
|
||||
resolved "https://registry.yarnpkg.com/@rollup/rollup-android-arm-eabi/-/rollup-android-arm-eabi-4.22.4.tgz#8b613b9725e8f9479d142970b106b6ae878610d5"
|
||||
integrity sha512-Fxamp4aEZnfPOcGA8KSNEohV8hX7zVHOemC8jVBoBUHu5zpJK/Eu3uJwt6BMgy9fkvzxDaurgj96F/NiLukF2w==
|
||||
|
||||
"@rollup/rollup-android-arm64@4.16.4":
|
||||
version "4.16.4"
|
||||
resolved "https://registry.yarnpkg.com/@rollup/rollup-android-arm64/-/rollup-android-arm64-4.16.4.tgz#ffb84f1359c04ec8a022a97110e18a5600f5f638"
|
||||
integrity sha512-Bvm6D+NPbGMQOcxvS1zUl8H7DWlywSXsphAeOnVeiZLQ+0J6Is8T7SrjGTH29KtYkiY9vld8ZnpV3G2EPbom+w==
|
||||
"@rollup/rollup-android-arm64@4.22.4":
|
||||
version "4.22.4"
|
||||
resolved "https://registry.yarnpkg.com/@rollup/rollup-android-arm64/-/rollup-android-arm64-4.22.4.tgz#654ca1049189132ff602bfcf8df14c18da1f15fb"
|
||||
integrity sha512-VXoK5UMrgECLYaMuGuVTOx5kcuap1Jm8g/M83RnCHBKOqvPPmROFJGQaZhGccnsFtfXQ3XYa4/jMCJvZnbJBdA==
|
||||
|
||||
"@rollup/rollup-darwin-arm64@4.16.4":
|
||||
version "4.16.4"
|
||||
resolved "https://registry.yarnpkg.com/@rollup/rollup-darwin-arm64/-/rollup-darwin-arm64-4.16.4.tgz#b2fcee8d4806a0b1b9185ac038cc428ddedce9f4"
|
||||
integrity sha512-i5d64MlnYBO9EkCOGe5vPR/EeDwjnKOGGdd7zKFhU5y8haKhQZTN2DgVtpODDMxUr4t2K90wTUJg7ilgND6bXw==
|
||||
"@rollup/rollup-darwin-arm64@4.22.4":
|
||||
version "4.22.4"
|
||||
resolved "https://registry.yarnpkg.com/@rollup/rollup-darwin-arm64/-/rollup-darwin-arm64-4.22.4.tgz#6d241d099d1518ef0c2205d96b3fa52e0fe1954b"
|
||||
integrity sha512-xMM9ORBqu81jyMKCDP+SZDhnX2QEVQzTcC6G18KlTQEzWK8r/oNZtKuZaCcHhnsa6fEeOBionoyl5JsAbE/36Q==
|
||||
|
||||
"@rollup/rollup-darwin-x64@4.16.4":
|
||||
version "4.16.4"
|
||||
resolved "https://registry.yarnpkg.com/@rollup/rollup-darwin-x64/-/rollup-darwin-x64-4.16.4.tgz#fcb25ccbaa3dd33a6490e9d1c64bab2e0e16b932"
|
||||
integrity sha512-WZupV1+CdUYehaZqjaFTClJI72fjJEgTXdf4NbW69I9XyvdmztUExBtcI2yIIU6hJtYvtwS6pkTkHJz+k08mAQ==
|
||||
"@rollup/rollup-darwin-x64@4.22.4":
|
||||
version "4.22.4"
|
||||
resolved "https://registry.yarnpkg.com/@rollup/rollup-darwin-x64/-/rollup-darwin-x64-4.22.4.tgz#42bd19d292a57ee11734c980c4650de26b457791"
|
||||
integrity sha512-aJJyYKQwbHuhTUrjWjxEvGnNNBCnmpHDvrb8JFDbeSH3m2XdHcxDd3jthAzvmoI8w/kSjd2y0udT+4okADsZIw==
|
||||
|
||||
"@rollup/rollup-linux-arm-gnueabihf@4.16.4":
|
||||
version "4.16.4"
|
||||
resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-arm-gnueabihf/-/rollup-linux-arm-gnueabihf-4.16.4.tgz#40d46bdfe667e5eca31bf40047460e326d2e26bb"
|
||||
integrity sha512-ADm/xt86JUnmAfA9mBqFcRp//RVRt1ohGOYF6yL+IFCYqOBNwy5lbEK05xTsEoJq+/tJzg8ICUtS82WinJRuIw==
|
||||
"@rollup/rollup-linux-arm-gnueabihf@4.22.4":
|
||||
version "4.22.4"
|
||||
resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-arm-gnueabihf/-/rollup-linux-arm-gnueabihf-4.22.4.tgz#f23555ee3d8fe941c5c5fd458cd22b65eb1c2232"
|
||||
integrity sha512-j63YtCIRAzbO+gC2L9dWXRh5BFetsv0j0va0Wi9epXDgU/XUi5dJKo4USTttVyK7fGw2nPWK0PbAvyliz50SCQ==
|
||||
|
||||
"@rollup/rollup-linux-arm-musleabihf@4.16.4":
|
||||
version "4.16.4"
|
||||
resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-arm-musleabihf/-/rollup-linux-arm-musleabihf-4.16.4.tgz#7741df2448c11c56588b50835dbfe91b1a10b375"
|
||||
integrity sha512-tJfJaXPiFAG+Jn3cutp7mCs1ePltuAgRqdDZrzb1aeE3TktWWJ+g7xK9SNlaSUFw6IU4QgOxAY4rA+wZUT5Wfg==
|
||||
"@rollup/rollup-linux-arm-musleabihf@4.22.4":
|
||||
version "4.22.4"
|
||||
resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-arm-musleabihf/-/rollup-linux-arm-musleabihf-4.22.4.tgz#f3bbd1ae2420f5539d40ac1fde2b38da67779baa"
|
||||
integrity sha512-dJnWUgwWBX1YBRsuKKMOlXCzh2Wu1mlHzv20TpqEsfdZLb3WoJW2kIEsGwLkroYf24IrPAvOT/ZQ2OYMV6vlrg==
|
||||
|
||||
"@rollup/rollup-linux-arm64-gnu@4.16.4":
|
||||
version "4.16.4"
|
||||
resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-arm64-gnu/-/rollup-linux-arm64-gnu-4.16.4.tgz#0a23b02d2933e4c4872ad18d879890b6a4a295df"
|
||||
integrity sha512-7dy1BzQkgYlUTapDTvK997cgi0Orh5Iu7JlZVBy1MBURk7/HSbHkzRnXZa19ozy+wwD8/SlpJnOOckuNZtJR9w==
|
||||
"@rollup/rollup-linux-arm64-gnu@4.22.4":
|
||||
version "4.22.4"
|
||||
resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-arm64-gnu/-/rollup-linux-arm64-gnu-4.22.4.tgz#7abe900120113e08a1f90afb84c7c28774054d15"
|
||||
integrity sha512-AdPRoNi3NKVLolCN/Sp4F4N1d98c4SBnHMKoLuiG6RXgoZ4sllseuGioszumnPGmPM2O7qaAX/IJdeDU8f26Aw==
|
||||
|
||||
"@rollup/rollup-linux-arm64-musl@4.16.4":
|
||||
version "4.16.4"
|
||||
resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-arm64-musl/-/rollup-linux-arm64-musl-4.16.4.tgz#e37ef259358aa886cc07d782220a4fb83c1e6970"
|
||||
integrity sha512-zsFwdUw5XLD1gQe0aoU2HVceI6NEW7q7m05wA46eUAyrkeNYExObfRFQcvA6zw8lfRc5BHtan3tBpo+kqEOxmg==
|
||||
"@rollup/rollup-linux-arm64-musl@4.22.4":
|
||||
version "4.22.4"
|
||||
resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-arm64-musl/-/rollup-linux-arm64-musl-4.22.4.tgz#9e655285c8175cd44f57d6a1e8e5dedfbba1d820"
|
||||
integrity sha512-Gl0AxBtDg8uoAn5CCqQDMqAx22Wx22pjDOjBdmG0VIWX3qUBHzYmOKh8KXHL4UpogfJ14G4wk16EQogF+v8hmA==
|
||||
|
||||
"@rollup/rollup-linux-powerpc64le-gnu@4.16.4":
|
||||
version "4.16.4"
|
||||
resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-powerpc64le-gnu/-/rollup-linux-powerpc64le-gnu-4.16.4.tgz#8c69218b6de05ee2ba211664a2d2ac1e54e43f94"
|
||||
integrity sha512-p8C3NnxXooRdNrdv6dBmRTddEapfESEUflpICDNKXpHvTjRRq1J82CbU5G3XfebIZyI3B0s074JHMWD36qOW6w==
|
||||
"@rollup/rollup-linux-powerpc64le-gnu@4.22.4":
|
||||
version "4.22.4"
|
||||
resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-powerpc64le-gnu/-/rollup-linux-powerpc64le-gnu-4.22.4.tgz#9a79ae6c9e9d8fe83d49e2712ecf4302db5bef5e"
|
||||
integrity sha512-3aVCK9xfWW1oGQpTsYJJPF6bfpWfhbRnhdlyhak2ZiyFLDaayz0EP5j9V1RVLAAxlmWKTDfS9wyRyY3hvhPoOg==
|
||||
|
||||
"@rollup/rollup-linux-riscv64-gnu@4.16.4":
|
||||
version "4.16.4"
|
||||
resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-riscv64-gnu/-/rollup-linux-riscv64-gnu-4.16.4.tgz#d32727dab8f538d9a4a7c03bcf58c436aecd0139"
|
||||
integrity sha512-Lh/8ckoar4s4Id2foY7jNgitTOUQczwMWNYi+Mjt0eQ9LKhr6sK477REqQkmy8YHY3Ca3A2JJVdXnfb3Rrwkng==
|
||||
"@rollup/rollup-linux-riscv64-gnu@4.22.4":
|
||||
version "4.22.4"
|
||||
resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-riscv64-gnu/-/rollup-linux-riscv64-gnu-4.22.4.tgz#67ac70eca4ace8e2942fabca95164e8874ab8128"
|
||||
integrity sha512-ePYIir6VYnhgv2C5Xe9u+ico4t8sZWXschR6fMgoPUK31yQu7hTEJb7bCqivHECwIClJfKgE7zYsh1qTP3WHUA==
|
||||
|
||||
"@rollup/rollup-linux-s390x-gnu@4.16.4":
|
||||
version "4.16.4"
|
||||
resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-s390x-gnu/-/rollup-linux-s390x-gnu-4.16.4.tgz#d46097246a187d99fc9451fe8393b7155b47c5ec"
|
||||
integrity sha512-1xwwn9ZCQYuqGmulGsTZoKrrn0z2fAur2ujE60QgyDpHmBbXbxLaQiEvzJWDrscRq43c8DnuHx3QorhMTZgisQ==
|
||||
"@rollup/rollup-linux-s390x-gnu@4.22.4":
|
||||
version "4.22.4"
|
||||
resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-s390x-gnu/-/rollup-linux-s390x-gnu-4.22.4.tgz#9f883a7440f51a22ed7f99e1d070bd84ea5005fc"
|
||||
integrity sha512-GqFJ9wLlbB9daxhVlrTe61vJtEY99/xB3C8e4ULVsVfflcpmR6c8UZXjtkMA6FhNONhj2eA5Tk9uAVw5orEs4Q==
|
||||
|
||||
"@rollup/rollup-linux-x64-gnu@4.16.4":
|
||||
version "4.16.4"
|
||||
resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-x64-gnu/-/rollup-linux-x64-gnu-4.16.4.tgz#6356c5a03a4afb1c3057490fc51b4764e109dbc7"
|
||||
integrity sha512-LuOGGKAJ7dfRtxVnO1i3qWc6N9sh0Em/8aZ3CezixSTM+E9Oq3OvTsvC4sm6wWjzpsIlOCnZjdluINKESflJLA==
|
||||
"@rollup/rollup-linux-x64-gnu@4.22.4":
|
||||
version "4.22.4"
|
||||
resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-x64-gnu/-/rollup-linux-x64-gnu-4.22.4.tgz#70116ae6c577fe367f58559e2cffb5641a1dd9d0"
|
||||
integrity sha512-87v0ol2sH9GE3cLQLNEy0K/R0pz1nvg76o8M5nhMR0+Q+BBGLnb35P0fVz4CQxHYXaAOhE8HhlkaZfsdUOlHwg==
|
||||
|
||||
"@rollup/rollup-linux-x64-musl@4.16.4":
|
||||
version "4.16.4"
|
||||
resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-x64-musl/-/rollup-linux-x64-musl-4.16.4.tgz#03a5831a9c0d05877b94653b5ddd3020d3c6fb06"
|
||||
integrity sha512-ch86i7KkJKkLybDP2AtySFTRi5fM3KXp0PnHocHuJMdZwu7BuyIKi35BE9guMlmTpwwBTB3ljHj9IQXnTCD0vA==
|
||||
"@rollup/rollup-linux-x64-musl@4.22.4":
|
||||
version "4.22.4"
|
||||
resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-x64-musl/-/rollup-linux-x64-musl-4.22.4.tgz#f473f88219feb07b0b98b53a7923be716d1d182f"
|
||||
integrity sha512-UV6FZMUgePDZrFjrNGIWzDo/vABebuXBhJEqrHxrGiU6HikPy0Z3LfdtciIttEUQfuDdCn8fqh7wiFJjCNwO+g==
|
||||
|
||||
"@rollup/rollup-win32-arm64-msvc@4.16.4":
|
||||
version "4.16.4"
|
||||
resolved "https://registry.yarnpkg.com/@rollup/rollup-win32-arm64-msvc/-/rollup-win32-arm64-msvc-4.16.4.tgz#6cc0db57750376b9303bdb6f5482af8974fcae35"
|
||||
integrity sha512-Ma4PwyLfOWZWayfEsNQzTDBVW8PZ6TUUN1uFTBQbF2Chv/+sjenE86lpiEwj2FiviSmSZ4Ap4MaAfl1ciF4aSA==
|
||||
"@rollup/rollup-win32-arm64-msvc@4.22.4":
|
||||
version "4.22.4"
|
||||
resolved "https://registry.yarnpkg.com/@rollup/rollup-win32-arm64-msvc/-/rollup-win32-arm64-msvc-4.22.4.tgz#4349482d17f5d1c58604d1c8900540d676f420e0"
|
||||
integrity sha512-BjI+NVVEGAXjGWYHz/vv0pBqfGoUH0IGZ0cICTn7kB9PyjrATSkX+8WkguNjWoj2qSr1im/+tTGRaY+4/PdcQw==
|
||||
|
||||
"@rollup/rollup-win32-ia32-msvc@4.16.4":
|
||||
version "4.16.4"
|
||||
resolved "https://registry.yarnpkg.com/@rollup/rollup-win32-ia32-msvc/-/rollup-win32-ia32-msvc-4.16.4.tgz#aea0b7e492bd9ed46971cb80bc34f1eb14e07789"
|
||||
integrity sha512-9m/ZDrQsdo/c06uOlP3W9G2ENRVzgzbSXmXHT4hwVaDQhYcRpi9bgBT0FTG9OhESxwK0WjQxYOSfv40cU+T69w==
|
||||
"@rollup/rollup-win32-ia32-msvc@4.22.4":
|
||||
version "4.22.4"
|
||||
resolved "https://registry.yarnpkg.com/@rollup/rollup-win32-ia32-msvc/-/rollup-win32-ia32-msvc-4.22.4.tgz#a6fc39a15db618040ec3c2a24c1e26cb5f4d7422"
|
||||
integrity sha512-SiWG/1TuUdPvYmzmYnmd3IEifzR61Tragkbx9D3+R8mzQqDBz8v+BvZNDlkiTtI9T15KYZhP0ehn3Dld4n9J5g==
|
||||
|
||||
"@rollup/rollup-win32-x64-msvc@4.16.4":
|
||||
version "4.16.4"
|
||||
resolved "https://registry.yarnpkg.com/@rollup/rollup-win32-x64-msvc/-/rollup-win32-x64-msvc-4.16.4.tgz#c09ad9a132ccb5a67c4f211d909323ab1294f95f"
|
||||
integrity sha512-YunpoOAyGLDseanENHmbFvQSfVL5BxW3k7hhy0eN4rb3gS/ct75dVD0EXOWIqFT/nE8XYW6LP6vz6ctKRi0k9A==
|
||||
"@rollup/rollup-win32-x64-msvc@4.22.4":
|
||||
version "4.22.4"
|
||||
resolved "https://registry.yarnpkg.com/@rollup/rollup-win32-x64-msvc/-/rollup-win32-x64-msvc-4.22.4.tgz#3dd5d53e900df2a40841882c02e56f866c04d202"
|
||||
integrity sha512-j8pPKp53/lq9lMXN57S8cFz0MynJk8OWNuUnXct/9KCpKU7DgU3bYMJhwWmcqC0UU29p8Lr0/7KEVcaM6bf47Q==
|
||||
|
||||
"@shikijs/core@1.3.0", "@shikijs/core@^1.3.0":
|
||||
version "1.3.0"
|
||||
@@ -697,28 +697,28 @@ rfdc@^1.3.1:
|
||||
integrity sha512-r5a3l5HzYlIC68TpmYKlxWjmOP6wiPJ1vWv2HeLhNsRZMrCkxeqxiHlQ21oXmQ4F3SiryXBHhAD7JZqvOJjFmg==
|
||||
|
||||
rollup@^4.13.0:
|
||||
version "4.16.4"
|
||||
resolved "https://registry.yarnpkg.com/rollup/-/rollup-4.16.4.tgz#fe328eb41293f20c9593a095ec23bdc4b5d93317"
|
||||
integrity sha512-kuaTJSUbz+Wsb2ATGvEknkI12XV40vIiHmLuFlejoo7HtDok/O5eDDD0UpCVY5bBX5U5RYo8wWP83H7ZsqVEnA==
|
||||
version "4.22.4"
|
||||
resolved "https://registry.yarnpkg.com/rollup/-/rollup-4.22.4.tgz#4135a6446671cd2a2453e1ad42a45d5973ec3a0f"
|
||||
integrity sha512-vD8HJ5raRcWOyymsR6Z3o6+RzfEPCnVLMFJ6vRslO1jt4LO6dUo5Qnpg7y4RkZFM2DMe3WUirkI5c16onjrc6A==
|
||||
dependencies:
|
||||
"@types/estree" "1.0.5"
|
||||
optionalDependencies:
|
||||
"@rollup/rollup-android-arm-eabi" "4.16.4"
|
||||
"@rollup/rollup-android-arm64" "4.16.4"
|
||||
"@rollup/rollup-darwin-arm64" "4.16.4"
|
||||
"@rollup/rollup-darwin-x64" "4.16.4"
|
||||
"@rollup/rollup-linux-arm-gnueabihf" "4.16.4"
|
||||
"@rollup/rollup-linux-arm-musleabihf" "4.16.4"
|
||||
"@rollup/rollup-linux-arm64-gnu" "4.16.4"
|
||||
"@rollup/rollup-linux-arm64-musl" "4.16.4"
|
||||
"@rollup/rollup-linux-powerpc64le-gnu" "4.16.4"
|
||||
"@rollup/rollup-linux-riscv64-gnu" "4.16.4"
|
||||
"@rollup/rollup-linux-s390x-gnu" "4.16.4"
|
||||
"@rollup/rollup-linux-x64-gnu" "4.16.4"
|
||||
"@rollup/rollup-linux-x64-musl" "4.16.4"
|
||||
"@rollup/rollup-win32-arm64-msvc" "4.16.4"
|
||||
"@rollup/rollup-win32-ia32-msvc" "4.16.4"
|
||||
"@rollup/rollup-win32-x64-msvc" "4.16.4"
|
||||
"@rollup/rollup-android-arm-eabi" "4.22.4"
|
||||
"@rollup/rollup-android-arm64" "4.22.4"
|
||||
"@rollup/rollup-darwin-arm64" "4.22.4"
|
||||
"@rollup/rollup-darwin-x64" "4.22.4"
|
||||
"@rollup/rollup-linux-arm-gnueabihf" "4.22.4"
|
||||
"@rollup/rollup-linux-arm-musleabihf" "4.22.4"
|
||||
"@rollup/rollup-linux-arm64-gnu" "4.22.4"
|
||||
"@rollup/rollup-linux-arm64-musl" "4.22.4"
|
||||
"@rollup/rollup-linux-powerpc64le-gnu" "4.22.4"
|
||||
"@rollup/rollup-linux-riscv64-gnu" "4.22.4"
|
||||
"@rollup/rollup-linux-s390x-gnu" "4.22.4"
|
||||
"@rollup/rollup-linux-x64-gnu" "4.22.4"
|
||||
"@rollup/rollup-linux-x64-musl" "4.22.4"
|
||||
"@rollup/rollup-win32-arm64-msvc" "4.22.4"
|
||||
"@rollup/rollup-win32-ia32-msvc" "4.22.4"
|
||||
"@rollup/rollup-win32-x64-msvc" "4.22.4"
|
||||
fsevents "~2.3.2"
|
||||
|
||||
shiki@1.3.0, shiki@^1.3.0:
|
||||
@@ -743,10 +743,10 @@ tabbable@^6.2.0:
|
||||
resolved "https://registry.yarnpkg.com/tabbable/-/tabbable-6.2.0.tgz#732fb62bc0175cfcec257330be187dcfba1f3b97"
|
||||
integrity sha512-Cat63mxsVJlzYvN51JmVXIgNoUokrIaT2zLclCXjRd8boZ0004U4KCs/sToJ75C6sdlByWxpYnb5Boif1VSFew==
|
||||
|
||||
vite@^5.2.10, vite@^5.2.9:
|
||||
version "5.2.10"
|
||||
resolved "https://registry.yarnpkg.com/vite/-/vite-5.2.10.tgz#2ac927c91e99d51b376a5c73c0e4b059705f5bd7"
|
||||
integrity sha512-PAzgUZbP7msvQvqdSD+ErD5qGnSFiGOoWmV5yAKUEI0kdhjbH6nMWVyZQC/hSc4aXwc0oJ9aEdIiF9Oje0JFCw==
|
||||
vite@^5.2.14, vite@^5.2.9:
|
||||
version "5.2.14"
|
||||
resolved "https://registry.yarnpkg.com/vite/-/vite-5.2.14.tgz#fd5f60facf6b5f90ec7da6323c467a365d380c3d"
|
||||
integrity sha512-TFQLuwWLPms+NBNlh0D9LZQ+HXW471COABxw/9TEUBrjuHMo9BrYBPrN/SYAwIuVL+rLerycxiLT41t4f5MZpA==
|
||||
dependencies:
|
||||
esbuild "^0.20.1"
|
||||
postcss "^8.4.38"
|
||||
|
||||
@@ -167,7 +167,7 @@
|
||||
},
|
||||
{ "text": "Audio", "link": "/features/audio" },
|
||||
{ "text": "Bluetooth", "link": "/features/bluetooth" },
|
||||
{ "text": "Bootmagic Lite", "link": "/features/bootmagic" },
|
||||
{ "text": "Bootmagic", "link": "/features/bootmagic" },
|
||||
{ "text": "Converters", "link": "/feature_converters" },
|
||||
{ "text": "Custom Matrix", "link": "/custom_matrix" },
|
||||
{ "text": "DIP Switch", "link": "/features/dip_switch" },
|
||||
|
||||
@@ -413,7 +413,7 @@ Use these to enable or disable building certain features. The more you have enab
|
||||
* `MAGIC_ENABLE`
|
||||
* MAGIC actions (BOOTMAGIC without the boot)
|
||||
* `BOOTMAGIC_ENABLE`
|
||||
* Enable Bootmagic Lite
|
||||
* Enable Bootmagic
|
||||
* `MOUSEKEY_ENABLE`
|
||||
* Mouse keys
|
||||
* `EXTRAKEY_ENABLE`
|
||||
|
||||
@@ -8,8 +8,8 @@ We recommend the use of the [Zadig](https://zadig.akeo.ie/) utility. If you have
|
||||
|
||||
## Installation
|
||||
|
||||
Put your keyboard into bootloader mode, either by hitting the `QK_BOOT` keycode (which may be on a different layer), or by pressing the reset switch that's usually located on the underside of the board. If your keyboard has neither, try holding Escape or Space+`B` as you plug it in (see the [Bootmagic Lite](features/bootmagic) docs for more details). Some boards use [Command](features/command) instead of Bootmagic; in this case, you can enter bootloader mode by hitting Left Shift+Right Shift+`B` or Left Shift+Right Shift+Escape at any point while the keyboard is plugged in.
|
||||
Some keyboards may have specific instructions for entering the bootloader. For example, the [Bootmagic Lite](features/bootmagic) key (default: Escape) might be on a different key, e.g. Left Control; or the magic combination for Command (default: Left Shift+Right Shift) might require you to hold something else, e.g. Left Control+Right Control. Refer to the board's README file if you are unsure.
|
||||
Put your keyboard into bootloader mode, either by hitting the `QK_BOOT` keycode (which may be on a different layer), or by pressing the reset switch that's usually located on the underside of the board. If your keyboard has neither, try holding Escape or Space+`B` as you plug it in (see the [Bootmagic](features/bootmagic) docs for more details). Some boards use [Command](features/command) instead of Bootmagic; in this case, you can enter bootloader mode by hitting Left Shift+Right Shift+`B` or Left Shift+Right Shift+Escape at any point while the keyboard is plugged in.
|
||||
Some keyboards may have specific instructions for entering the bootloader. For example, the [Bootmagic](features/bootmagic) key (default: Escape) might be on a different key, e.g. Left Control; or the magic combination for Command (default: Left Shift+Right Shift) might require you to hold something else, e.g. Left Control+Right Control. Refer to the board's README file if you are unsure.
|
||||
|
||||
To put a device in bootloader mode with USBaspLoader, tap the `RESET` button while holding down the `BOOT` button.
|
||||
Alternatively, hold `BOOT` while inserting the USB cable.
|
||||
|
||||
@@ -34,7 +34,7 @@ On first run, the VIA code in the firmware will copy the keymap from flash memor
|
||||
|
||||
The simple fix for this is to clear the EEPROM. You can do this in several ways:
|
||||
|
||||
* Hold the Bootmagic Lite key (usually top left/Escape) while plugging the board in, which will also place the board into bootloader mode; then unplug and replug the board.
|
||||
* Hold the Bootmagic key (usually top left/Escape) while plugging the board in, which will also place the board into bootloader mode; then unplug and replug the board.
|
||||
* Press the `QK_CLEAR_EEPROM`/`EE_CLR` keycode if it is accessible on your keymap.
|
||||
* Place the board into bootloader mode and hit the "Clear EEPROM" button. This may not be available for all bootloaders, and you may need to reflash the board afterwards.
|
||||
|
||||
|
||||
@@ -109,7 +109,7 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) {
|
||||
}
|
||||
}
|
||||
```
|
||||
And lastly, you want to add the `eeconfig_init_user` function, so that when the EEPROM is reset, you can specify default values, and even custom actions. To force an EEPROM reset, use the `EE_CLR` keycode or [Bootmagic Lite](features/bootmagic) functionallity. For example, if you want to set rgb layer indication by default, and save the default valued.
|
||||
And lastly, you want to add the `eeconfig_init_user` function, so that when the EEPROM is reset, you can specify default values, and even custom actions. To force an EEPROM reset, use the `EE_CLR` keycode or [Bootmagic](features/bootmagic) functionallity. For example, if you want to set rgb layer indication by default, and save the default valued.
|
||||
|
||||
```c
|
||||
void eeconfig_init_user(void) { // EEPROM is getting reset!
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
# Command
|
||||
|
||||
Command, formerly known as Magic, is a way to change your keyboard's behavior without having to flash or unplug it to use [Bootmagic Lite](bootmagic). There is a lot of overlap between this functionality and the [Magic Keycodes](../keycodes_magic). Wherever possible we encourage you to use that feature instead of Command.
|
||||
Command, formerly known as Magic, is a way to change your keyboard's behavior without having to flash or unplug it to use [Bootmagic](bootmagic). There is a lot of overlap between this functionality and the [Magic Keycodes](../keycodes_magic). Wherever possible we encourage you to use that feature instead of Command.
|
||||
|
||||
On some keyboards Command is disabled by default. If this is the case, it must be explicitly enabled in your `rules.mk`:
|
||||
|
||||
|
||||
@@ -53,7 +53,7 @@ QMK maintains [a fork of the LUFA DFU bootloader](https://github.com/qmk/lufa/tr
|
||||
//#define QMK_LED E6
|
||||
//#define QMK_SPEAKER C6
|
||||
```
|
||||
Currently we do not recommend making `QMK_ESC` the same key as the one designated for [Bootmagic Lite](features/bootmagic), as holding it down will cause the MCU to loop back and forth between entering and exiting the bootloader.
|
||||
Currently we do not recommend making `QMK_ESC` the same key as the one designated for [Bootmagic](features/bootmagic), as holding it down will cause the MCU to loop back and forth between entering and exiting the bootloader.
|
||||
|
||||
The manufacturer and product strings are automatically pulled from `config.h`, with " Bootloader" appended to the product string.
|
||||
|
||||
@@ -209,7 +209,7 @@ To enable the additional features, add the following defines to your `config.h`:
|
||||
//#define QMK_SPEAKER C6
|
||||
```
|
||||
|
||||
Currently we do not recommend making `QMK_ESC` the same key as the one designated for [Bootmagic Lite](features/bootmagic), as holding it down will cause the MCU to loop back and forth between entering and exiting the bootloader.
|
||||
Currently we do not recommend making `QMK_ESC` the same key as the one designated for [Bootmagic](features/bootmagic), as holding it down will cause the MCU to loop back and forth between entering and exiting the bootloader.
|
||||
|
||||
The manufacturer and product strings are automatically pulled from `config.h`, with " Bootloader" appended to the product string.
|
||||
|
||||
|
||||
@@ -4,7 +4,7 @@ Your computer keyboard has a processor inside of it, similar to the one inside y
|
||||
|
||||
QMK tries to put a lot of power into your hands by making easy things easy, and hard things possible. You don't have to know how to program to create powerful keymaps — you only have to follow a few simple syntax rules.
|
||||
|
||||
Not sure if your keyboard can run QMK? If it's a mechanical keyboard you built yourself chances are good it can. We support a [large number of hobbyist boards](https://qmk.fm/keyboards/). If your current keyboard can't run QMK there are a lot of choices out there for boards that do.
|
||||
Not sure if your keyboard can run QMK? If it's a mechanical keyboard you built yourself chances are good it can. We support a [large number of hobbyist boards](https://browse.qmk.fm/). If your current keyboard can't run QMK there are a lot of choices out there for boards that do.
|
||||
|
||||
::: tip Is This Guide For Me?
|
||||
If the thought of programming intimidates you, please [take a look at our online GUI](newbs_building_firmware_configurator) instead.
|
||||
|
||||
@@ -99,7 +99,7 @@ To reset to the bootloader use `QK_BOOTLOADER` or `QK_BOOT` keycode or `reset_ke
|
||||
|
||||
## Wiping the EEPROM (Persistent Storage)
|
||||
|
||||
If you're having issues with Audio, RGB Underglow, backlighting or keys acting weird, then you can reset the EEPROM (persistent setting storage). To force an EEPROM reset, use the [`EE_CLR` keycode](quantum_keycodes) or [Bootmagic Lite](features/bootmagic) functionality. If neither of those are an option, then you can use a custom macro to do so.
|
||||
If you're having issues with Audio, RGB Underglow, backlighting or keys acting weird, then you can reset the EEPROM (persistent setting storage). To force an EEPROM reset, use the [`EE_CLR` keycode](quantum_keycodes) or [Bootmagic](features/bootmagic) functionality. If neither of those are an option, then you can use a custom macro to do so.
|
||||
|
||||
To wipe the EEPROM, run `eeconfig_init()` from your function or macro to reset most of the settings to default.
|
||||
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@@ -55,7 +55,7 @@ Everything below here requires a lot of foundational knowledge. Besides being ab
|
||||
* **Advanced Features**
|
||||
* [Unicode](features/unicode)
|
||||
* [API](api_overview)
|
||||
* [Bootmagic Lite](features/bootmagic)
|
||||
* [Bootmagic](features/bootmagic)
|
||||
* **Hardware**
|
||||
* [How Keyboards Work](how_keyboards_work)
|
||||
* [How A Keyboard Matrix Works](how_a_matrix_works)
|
||||
|
||||
@@ -187,6 +187,8 @@ void st7565_render(void) {
|
||||
|
||||
st7565_send_data(&st7565_buffer[ST7565_BLOCK_SIZE * update_start], ST7565_BLOCK_SIZE);
|
||||
|
||||
spi_stop();
|
||||
|
||||
// Turn on display if it is off
|
||||
st7565_on();
|
||||
|
||||
|
||||
@@ -67,14 +67,15 @@
|
||||
#define REG_SROM_Load_Burst 0x62
|
||||
#define REG_Pixel_Burst 0x64
|
||||
|
||||
#define MIN_CPI 200
|
||||
#define MAX_CPI 8200
|
||||
#define CPI_STEP 200
|
||||
#define CLAMP_CPI(value) value<MIN_CPI ? MIN_CPI : value> MAX_CPI ? MAX_CPI : value
|
||||
#define US_BETWEEN_WRITES 120
|
||||
#define US_BETWEEN_READS 20
|
||||
#define US_BEFORE_MOTION 100
|
||||
#define MSB1 0x80
|
||||
#define MIN_CPI 200
|
||||
#define MAX_CPI 8200
|
||||
#define CPI_STEP 200
|
||||
#define CLAMP_CPI(value) value<MIN_CPI ? MIN_CPI : value> MAX_CPI ? MAX_CPI : value
|
||||
#define US_BETWEEN_WRITES 120
|
||||
#define US_BETWEEN_READS 20
|
||||
#define US_DELAY_AFTER_ADDR 100
|
||||
#define US_BEFORE_MOTION 100
|
||||
#define MSB1 0x80
|
||||
// clang-format on
|
||||
|
||||
void adns9800_spi_start(void) {
|
||||
@@ -92,6 +93,7 @@ void adns9800_write(uint8_t reg_addr, uint8_t data) {
|
||||
uint8_t adns9800_read(uint8_t reg_addr) {
|
||||
adns9800_spi_start();
|
||||
spi_write(reg_addr & 0x7f);
|
||||
wait_us(US_DELAY_AFTER_ADDR);
|
||||
uint8_t data = spi_read();
|
||||
spi_stop();
|
||||
wait_us(US_BETWEEN_READS);
|
||||
|
||||
@@ -8,6 +8,8 @@ A TKL PCB attempting a87 compatibility with different switch and layout-options.
|
||||
Make example for this keyboard (after setting up your build environment):
|
||||
|
||||
make 4pplet/waffling80/rev_a:default
|
||||
make 4pplet/waffling80/rev_b:default
|
||||
make 4pplet/waffling80/rev_b_ansi:default
|
||||
|
||||
See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](https://docs.qmk.fm/#/newbs).
|
||||
|
||||
|
||||
19
keyboards/4pplet/waffling80/rev_b_ansi/config.h
Normal file
19
keyboards/4pplet/waffling80/rev_b_ansi/config.h
Normal file
@@ -0,0 +1,19 @@
|
||||
/*
|
||||
Copyright 2022 Stefan Sundin "4pplet" <mail@4pplet.com>
|
||||
|
||||
This program is free software: you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License as published by
|
||||
the Free Software Foundation, either version 2 of the License, or
|
||||
(at your option) any later version.
|
||||
|
||||
This program is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
#pragma once
|
||||
|
||||
#define WS2812_EXTERNAL_PULLUP
|
||||
29
keyboards/4pplet/waffling80/rev_b_ansi/keyboard.json
Normal file
29
keyboards/4pplet/waffling80/rev_b_ansi/keyboard.json
Normal file
@@ -0,0 +1,29 @@
|
||||
{
|
||||
"keyboard_name": "waffling80 Rev B ANSI HS",
|
||||
"usb": {
|
||||
"pid": "0x0017",
|
||||
"device_version": "0.0.1"
|
||||
},
|
||||
"rgblight": {
|
||||
"saturation_steps": 8,
|
||||
"brightness_steps": 8,
|
||||
"led_count": 2
|
||||
},
|
||||
"features": {
|
||||
"bootmagic": true,
|
||||
"extrakey": true,
|
||||
"mousekey": true,
|
||||
"nkro": true,
|
||||
"rgblight": true
|
||||
},
|
||||
"ws2812": {
|
||||
"pin": "A8"
|
||||
},
|
||||
"matrix_pins": {
|
||||
"cols": ["B2", "B1", "B0", "A7", "A6", "A3", "B9", "B8"],
|
||||
"rows": ["B13", "B12", "A5", "A4", "A2", "A1", "F0", "C15", "C13", "C14", "F1", "A0"]
|
||||
},
|
||||
"diode_direction": "COL2ROW",
|
||||
"processor": "STM32F072",
|
||||
"bootloader": "stm32-dfu"
|
||||
}
|
||||
18
keyboards/4pplet/waffling80/rev_b_ansi/readme.md
Normal file
18
keyboards/4pplet/waffling80/rev_b_ansi/readme.md
Normal file
@@ -0,0 +1,18 @@
|
||||
# waffling80
|
||||
|
||||
A TKL PCB attempting a87 and a88 compatibility with different switch and layout-options.
|
||||
|
||||
* Keyboard Maintainer: [4pplet](https://github.com/4pplet)
|
||||
* Hardware Supported: [waffling80](https://github.com/4pplet/waffling80)
|
||||
|
||||
Make example for this keyboard (after setting up your build environment):
|
||||
|
||||
make 4pplet/waffling80/rev_b_ansi:default
|
||||
|
||||
See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](https://docs.qmk.fm/#/newbs).
|
||||
|
||||
How to enter bootloader (DFU):
|
||||
* Hold the reset-header for a few seconds on the back of the PCB for keyboard to enter DFU. When in DFU, it's ready to flash the firmware.
|
||||
|
||||
Alternative option if the firmware is already pre-flashed:
|
||||
* Unplug your keyboard, hold down the Esc key, plug in your keyboard and wait a second before releasing the keys. The keyboard will enter DFU and is ready to flash the firmware.
|
||||
47
keyboards/4pplet/waffling80/rev_b_ansi/rev_b_ansi.c
Normal file
47
keyboards/4pplet/waffling80/rev_b_ansi/rev_b_ansi.c
Normal file
@@ -0,0 +1,47 @@
|
||||
/*
|
||||
Copyright 2024 Stefan Sundin "4pplet" <mail@4pplet.com>
|
||||
|
||||
This program is free software: you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License as published by
|
||||
the Free Software Foundation, either version 2 of the License, or
|
||||
(at your option) any later version.
|
||||
|
||||
This program is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
#include "rev_b_ansi.h"
|
||||
|
||||
bool led_update_kb(led_t led_state) {
|
||||
bool res = led_update_user(led_state);
|
||||
if (SCROLL_LOCK_ENABLE && res) {
|
||||
if(led_state.scroll_lock) {
|
||||
#ifdef SCROLL_LOCK_COLOR
|
||||
rgblight_sethsv_at(SCROLL_LOCK_COLOR, 0);
|
||||
#else
|
||||
rgblight_sethsv_at(rgblight_get_hue(),rgblight_get_sat(),rgblight_get_val(), 0);
|
||||
#endif
|
||||
}
|
||||
else {
|
||||
rgblight_sethsv_at(HSV_OFF, 0);
|
||||
}
|
||||
}
|
||||
if (CAPS_LOCK_ENABLE && res) {
|
||||
if(led_state.caps_lock) {
|
||||
#ifdef CAPS_LOCK_COLOR
|
||||
rgblight_sethsv_at(CAPS_LOCK_COLOR, 1);
|
||||
#else
|
||||
rgblight_sethsv_at(rgblight_get_hue(),rgblight_get_sat(),rgblight_get_val(), 1);
|
||||
#endif
|
||||
}
|
||||
else{
|
||||
rgblight_sethsv_at(HSV_OFF, 1);
|
||||
}
|
||||
}
|
||||
return res;
|
||||
}
|
||||
|
||||
26
keyboards/4pplet/waffling80/rev_b_ansi/rev_b_ansi.h
Normal file
26
keyboards/4pplet/waffling80/rev_b_ansi/rev_b_ansi.h
Normal file
@@ -0,0 +1,26 @@
|
||||
/*
|
||||
Copyright 2022 Stefan Sundin "4pplet" <mail@4pplet.com>
|
||||
|
||||
This program is free software: you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License as published by
|
||||
the Free Software Foundation, either version 2 of the License, or
|
||||
(at your option) any later version.
|
||||
|
||||
This program is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
#pragma once
|
||||
|
||||
#define CAPS_LOCK_ENABLE 1
|
||||
#define SCROLL_LOCK_ENABLE 1
|
||||
|
||||
// If colors are defined, they will be static. If not defined, color for incicators can be set in VIA.
|
||||
//#define CAPS_LOCK_COLOR HSV_GREEN
|
||||
//#define SCROLL_LOCK_COLOR HSV_GREEN
|
||||
|
||||
#include "quantum.h"
|
||||
2
keyboards/4pplet/waffling80/rev_b_ansi/rules.mk
Normal file
2
keyboards/4pplet/waffling80/rev_b_ansi/rules.mk
Normal file
@@ -0,0 +1,2 @@
|
||||
# Wildcard to allow APM32 MCU
|
||||
DFU_SUFFIX_ARGS = -p FFFF -v FFFF
|
||||
@@ -81,7 +81,7 @@
|
||||
{"matrix": [2, 9], "x": 9.5, "y": 2},
|
||||
{"matrix": [2, 10], "x": 10.5, "y": 2},
|
||||
{"matrix": [2, 11], "x": 11.5, "y": 2},
|
||||
{"matrix": [2, 12], "x": 11.5, "y": 2},
|
||||
{"matrix": [2, 12], "x": 12.5, "y": 2},
|
||||
{"matrix": [2, 13], "x": 13.5, "y": 2, "w": 1.5},
|
||||
{"matrix": [5, 11], "x": 15, "y": 2},
|
||||
{"matrix": [3, 0], "x": 0, "y": 3, "w": 1.75},
|
||||
@@ -95,33 +95,33 @@
|
||||
{"matrix": [3, 8], "x": 8.75, "y": 3},
|
||||
{"matrix": [3, 9], "x": 9.75, "y": 3},
|
||||
{"matrix": [3, 10], "x": 10.75, "y": 3},
|
||||
{"matrix": [3, 11], "x": 11.75, "y": 3, "w": 2.25},
|
||||
{"matrix": [3, 12], "x": 14, "y": 3},
|
||||
{"matrix": [3, 11], "x": 11.75, "y": 3},
|
||||
{"matrix": [3, 12], "x": 12.75, "y": 3, "w": 2.25},
|
||||
{"matrix": [5, 12], "x": 15, "y": 3},
|
||||
{"matrix": [4, 0], "x": 0, "y": 3, "w": 2.25},
|
||||
{"matrix": [4, 1], "x": 2.25, "y": 3},
|
||||
{"matrix": [4, 2], "x": 3.25, "y": 3},
|
||||
{"matrix": [4, 3], "x": 4.25, "y": 3},
|
||||
{"matrix": [4, 4], "x": 5.25, "y": 3},
|
||||
{"matrix": [4, 5], "x": 6.25, "y": 3},
|
||||
{"matrix": [4, 6], "x": 7.25, "y": 3},
|
||||
{"matrix": [4, 7], "x": 8.25, "y": 3},
|
||||
{"matrix": [4, 8], "x": 9.25, "y": 3},
|
||||
{"matrix": [4, 9], "x": 10.25, "y": 3},
|
||||
{"matrix": [4, 10], "x": 11.25, "y": 3},
|
||||
{"matrix": [4, 11], "x": 12.25, "y": 3, "w": 1.75},
|
||||
{"matrix": [5, 7], "x": 14, "y": 3},
|
||||
{"matrix": [5, 13], "x": 15, "y": 3},
|
||||
{"matrix": [5, 0], "x": 0, "y": 4, "w": 1.25},
|
||||
{"matrix": [5, 1], "x": 1.25, "y": 4, "w": 1.25},
|
||||
{"matrix": [5, 2], "x": 2.5, "y": 4, "w": 1.25},
|
||||
{"matrix": [5, 3], "x": 3.75, "y": 4, "w": 6.25},
|
||||
{"matrix": [5, 4], "x": 10, "y": 4},
|
||||
{"matrix": [5, 5], "x": 11, "y": 4},
|
||||
{"matrix": [5, 6], "x": 12, "y": 4},
|
||||
{"matrix": [5, 8], "x": 13, "y": 4},
|
||||
{"matrix": [5, 9], "x": 14, "y": 4},
|
||||
{"matrix": [5, 10], "x": 15, "y": 4}
|
||||
{"matrix": [4, 0], "x": 0, "y": 4, "w": 2.25},
|
||||
{"matrix": [4, 1], "x": 2.25, "y": 4},
|
||||
{"matrix": [4, 2], "x": 3.25, "y": 4},
|
||||
{"matrix": [4, 3], "x": 4.25, "y": 4},
|
||||
{"matrix": [4, 4], "x": 5.25, "y": 4},
|
||||
{"matrix": [4, 5], "x": 6.25, "y": 4},
|
||||
{"matrix": [4, 6], "x": 7.25, "y": 4},
|
||||
{"matrix": [4, 7], "x": 8.25, "y": 4},
|
||||
{"matrix": [4, 8], "x": 9.25, "y": 4},
|
||||
{"matrix": [4, 9], "x": 10.25, "y": 4},
|
||||
{"matrix": [4, 10], "x": 11.25, "y": 4},
|
||||
{"matrix": [4, 11], "x": 12.25, "y": 4, "w": 1.75},
|
||||
{"matrix": [5, 7], "x": 14, "y": 4},
|
||||
{"matrix": [5, 13], "x": 15, "y": 4},
|
||||
{"matrix": [5, 0], "x": 0, "y": 5, "w": 1.25},
|
||||
{"matrix": [5, 1], "x": 1.25, "y": 5, "w": 1.25},
|
||||
{"matrix": [5, 2], "x": 2.5, "y": 5, "w": 1.25},
|
||||
{"matrix": [5, 3], "x": 3.75, "y": 5, "w": 6.25},
|
||||
{"matrix": [5, 4], "x": 10, "y": 5},
|
||||
{"matrix": [5, 5], "x": 11, "y": 5},
|
||||
{"matrix": [5, 6], "x": 12, "y": 5},
|
||||
{"matrix": [5, 8], "x": 13, "y": 5},
|
||||
{"matrix": [5, 9], "x": 14, "y": 5},
|
||||
{"matrix": [5, 10], "x": 15, "y": 5}
|
||||
]
|
||||
}
|
||||
}
|
||||
|
||||
40
keyboards/arrayperipherals/vector/keyboard.json
Normal file
40
keyboards/arrayperipherals/vector/keyboard.json
Normal file
@@ -0,0 +1,40 @@
|
||||
{
|
||||
"manufacturer": "Array Peripherals",
|
||||
"keyboard_name": "The Vector",
|
||||
"maintainer": "daviddoan",
|
||||
"bootloader": "atmel-dfu",
|
||||
"encoder": {
|
||||
"rotary": [
|
||||
{"pin_a": "F0", "pin_b": "F1"}
|
||||
]
|
||||
},
|
||||
"features": {
|
||||
"bootmagic": true,
|
||||
"encoder": true,
|
||||
"extrakey": true,
|
||||
"mousekey": true
|
||||
},
|
||||
"matrix_pins": {
|
||||
"direct": [
|
||||
["D4", "C6", "D7", "E6", "F7"]
|
||||
]
|
||||
},
|
||||
"processor": "atmega32u4",
|
||||
"url": "https://arrayperipherals.com",
|
||||
"usb": {
|
||||
"device_version": "1.0.0",
|
||||
"pid": "0x4F47",
|
||||
"vid": "0x4152"
|
||||
},
|
||||
"layouts": {
|
||||
"LAYOUT": {
|
||||
"layout": [
|
||||
{"label": "k01", "matrix": [0, 0], "x": 0, "y": 0},
|
||||
{"label": "k02", "matrix": [0, 1], "x": 1, "y": 0},
|
||||
{"label": "k03", "matrix": [0, 2], "x": 2, "y": 0},
|
||||
{"label": "k04", "matrix": [0, 3], "x": 3, "y": 0},
|
||||
{"label": "k05", "matrix": [0, 4], "x": 4.25, "y": 0}
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
||||
36
keyboards/arrayperipherals/vector/keymaps/default/keymap.c
Normal file
36
keyboards/arrayperipherals/vector/keymaps/default/keymap.c
Normal file
@@ -0,0 +1,36 @@
|
||||
/*
|
||||
Copyright 2024 David Doan <daviddoan1995@gmail.com>
|
||||
|
||||
This program is free software: you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License as published by
|
||||
the Free Software Foundation, either version 2 of the License, or
|
||||
(at your option) any later version.
|
||||
|
||||
This program is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
#include QMK_KEYBOARD_H
|
||||
|
||||
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
||||
|
||||
[0] = LAYOUT(
|
||||
KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, TG(1)
|
||||
),
|
||||
|
||||
[1] = LAYOUT(
|
||||
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, TG(1)
|
||||
),
|
||||
};
|
||||
|
||||
#if defined(ENCODER_MAP_ENABLE)
|
||||
const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][NUM_DIRECTIONS] = {
|
||||
[0] = {ENCODER_CCW_CW(KC_VOLD, KC_VOLU)},
|
||||
[1] = {ENCODER_CCW_CW(KC_TRNS, KC_TRNS)},
|
||||
};
|
||||
#endif // ENCODER_MAP_ENABLE
|
||||
@@ -0,0 +1 @@
|
||||
ENCODER_MAP_ENABLE = yes
|
||||
26
keyboards/arrayperipherals/vector/readme.md
Normal file
26
keyboards/arrayperipherals/vector/readme.md
Normal file
@@ -0,0 +1,26 @@
|
||||
# The Vector Macropad
|
||||
|
||||

|
||||
|
||||
A small (1x4) macropad with a rotary. [More info at arrayperipherals.com](https://www.arrayperipherals.com/)
|
||||
|
||||
* Keyboard Maintainer: [David Doan](https://github.com/daviddoan)
|
||||
* Hardware Supported: Custom PCB with Atmega32u4 processor
|
||||
* Hardware Availability: [arrayperipherals.com](https://www.arrayperipherals.com/)
|
||||
|
||||
Make example for this keyboard (after setting up your build environment):
|
||||
|
||||
make arrayperipherals/vector:default
|
||||
|
||||
Flashing example for this keyboard:
|
||||
|
||||
make arrayperipherals/vector:default:flash
|
||||
|
||||
See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](https://docs.qmk.fm/#/newbs).
|
||||
|
||||
## Bootloader
|
||||
|
||||
Enter the bootloader in 2 ways:
|
||||
|
||||
* **Bootmagic reset**: Hold down the key at (0,0) in the matrix (left most from the rotary)
|
||||
* **Physical reset button**: Briefly double press the button on the back of the PCB
|
||||
32
keyboards/atset/at2/keyboard.json
Normal file
32
keyboards/atset/at2/keyboard.json
Normal file
@@ -0,0 +1,32 @@
|
||||
{
|
||||
"manufacturer": "Atset",
|
||||
"keyboard_name": "AT2",
|
||||
"maintainer": "qmk",
|
||||
"board": "GENERIC_RP_RP2040",
|
||||
"processor": "RP2040",
|
||||
"bootloader": "rp2040",
|
||||
"diode_direction": "COL2ROW",
|
||||
"usb": {
|
||||
"vid": "0x4141",
|
||||
"pid": "0x6174",
|
||||
"device_version": "1.0.0"
|
||||
},
|
||||
"features": {
|
||||
"bootmagic": true,
|
||||
"extrakey": true,
|
||||
"mousekey": true,
|
||||
"nkro": true
|
||||
},
|
||||
"matrix_pins": {
|
||||
"cols": ["GP19", "GP20"],
|
||||
"rows": ["GP28"]
|
||||
},
|
||||
"layouts": {
|
||||
"LAYOUT": {
|
||||
"layout": [
|
||||
{"matrix": [0, 0], "x": 0, "y": 0},
|
||||
{"matrix": [0, 1], "x": 1, "y": 0}
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
||||
10
keyboards/atset/at2/keymaps/default/keymap.c
Normal file
10
keyboards/atset/at2/keymaps/default/keymap.c
Normal file
@@ -0,0 +1,10 @@
|
||||
/* SPDX-License-Identifier: GPL-2.0-or-later */
|
||||
|
||||
#include QMK_KEYBOARD_H
|
||||
|
||||
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
||||
[0] = LAYOUT(
|
||||
KC_MUTE, KC_MPLY
|
||||
)
|
||||
};
|
||||
|
||||
24
keyboards/atset/at2/readme.md
Normal file
24
keyboards/atset/at2/readme.md
Normal file
@@ -0,0 +1,24 @@
|
||||
# ATSET AT2
|
||||
|
||||
A special 2 key keyboard powered by QMK.
|
||||
|
||||
* Keyboard Maintainer: [ATSET](https://github.com/anubhavd7)
|
||||
* Hardware Supported: ATSET AT2 (https://imgur.com/a/yBbVwef)
|
||||
https://www.atsetmediscience.com/atset-at2-9949007.html
|
||||
Make example for this keyboard (after setting up your build environment):
|
||||
|
||||
make atset/at2:default
|
||||
|
||||
Flashing example for this keyboard:
|
||||
|
||||
make atset/at2: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
|
||||
@@ -40,7 +40,7 @@
|
||||
"static_gradient": true,
|
||||
"twinkle": true
|
||||
},
|
||||
"led_count": 22
|
||||
"led_count": 19
|
||||
},
|
||||
"usb": {
|
||||
"device_version": "0.0.1",
|
||||
|
||||
131
keyboards/converter/thinkpad_t6x/rpi_pico/keyboard.json
Normal file
131
keyboards/converter/thinkpad_t6x/rpi_pico/keyboard.json
Normal file
@@ -0,0 +1,131 @@
|
||||
{
|
||||
"manufacturer": "strobo5",
|
||||
"keyboard_name": "converter/thinkpad_t6x/rpi_pico",
|
||||
"maintainer": "strobo5",
|
||||
"board": "GENERIC_RP_RP2040",
|
||||
"bootloader": "rp2040",
|
||||
"diode_direction": "COL2ROW",
|
||||
"features": {
|
||||
"bootmagic": true,
|
||||
"extrakey": true,
|
||||
"mousekey": true
|
||||
},
|
||||
"matrix_pins": {
|
||||
"cols": ["GP7", "GP9", "GP11", "GP13", "GP17", "GP16", "GP14", "GP12", "GP15", "GP8", "GP10", "GP6", "GP4", "GP2", "GP5", "GP3"],
|
||||
"rows": ["GP20", "GP26", "GP22", "GP21", "GP18", "GP19", "GP27", "GP28"]
|
||||
},
|
||||
"processor": "RP2040",
|
||||
"ps2": {
|
||||
"clock_pin": "GP1",
|
||||
"data_pin": "GP0",
|
||||
"driver": "vendor",
|
||||
"enabled": true,
|
||||
"mouse_enabled": true
|
||||
},
|
||||
"url": "https://github.com/strobo5/T61_PiPico_Scanner",
|
||||
"usb": {
|
||||
"device_version": "1.0.0",
|
||||
"pid": "0x0000",
|
||||
"vid": "0xFEED"
|
||||
},
|
||||
"layouts": {
|
||||
"LAYOUT_iso": {
|
||||
"layout": [
|
||||
{"label": "Esc", "matrix": [5, 0], "x": 0, "y": 0, "w": 0.9, "h": 0.75},
|
||||
{"label": "Mute", "matrix": [4, 10], "x": 0.9, "y": 0, "w": 0.75, "h": 0.5},
|
||||
{"label": "Vol -", "matrix": [3, 10], "x": 1.65, "y": 0, "w": 0.75, "h": 0.5},
|
||||
{"label": "Vol +", "matrix": [2, 10], "x": 2.4, "y": 0, "w": 0.75, "h": 0.5},
|
||||
{"label": "ThinkVantage", "matrix": [5, 10], "x": 3.5, "y": 0, "w": 1.25, "h": 0.5},
|
||||
{"label": "PrtSc", "matrix": [1, 13], "x": 8.9, "y": 0, "w": 0.9, "h": 0.65},
|
||||
{"label": "ScrLk", "matrix": [2, 13], "x": 9.8, "y": 0, "w": 0.9, "h": 0.65},
|
||||
{"label": "Pause", "matrix": [6, 12], "x": 10.7, "y": 0, "w": 0.9, "h": 0.65},
|
||||
{"label": "Insert", "matrix": [0, 9], "x": 12, "y": 0, "w": 0.9, "h": 0.65},
|
||||
{"label": "Home", "matrix": [0, 12], "x": 12.9, "y": 0, "w": 0.9, "h": 0.65},
|
||||
{"label": "PgUp", "matrix": [0, 11], "x": 13.8, "y": 0, "w": 0.9, "h": 0.65},
|
||||
{"label": "F1", "matrix": [0, 1], "x": 0, "y": 0.75, "w": 0.9, "h": 0.65},
|
||||
{"label": "F2", "matrix": [0, 2], "x": 0.9, "y": 0.75, "w": 0.9, "h": 0.65},
|
||||
{"label": "F3", "matrix": [3, 2], "x": 1.8, "y": 0.75, "w": 0.9, "h": 0.65},
|
||||
{"label": "F4", "matrix": [5, 2], "x": 2.7, "y": 0.75, "w": 0.9, "h": 0.65},
|
||||
{"label": "F5", "matrix": [5, 8], "x": 4, "y": 0.75, "w": 0.9, "h": 0.65},
|
||||
{"label": "F6", "matrix": [5, 5], "x": 4.9, "y": 0.75, "w": 0.9, "h": 0.65},
|
||||
{"label": "F7", "matrix": [3, 6], "x": 5.8, "y": 0.75, "w": 0.9, "h": 0.65},
|
||||
{"label": "F8", "matrix": [0, 6], "x": 6.7, "y": 0.75, "w": 0.9, "h": 0.65},
|
||||
{"label": "F9", "matrix": [0, 8], "x": 8, "y": 0.75, "w": 0.9, "h": 0.65},
|
||||
{"label": "F10", "matrix": [1, 8], "x": 8.9, "y": 0.75, "w": 0.9, "h": 0.65},
|
||||
{"label": "F11", "matrix": [1, 10], "x": 9.8, "y": 0.75, "w": 0.9, "h": 0.65},
|
||||
{"label": "F12", "matrix": [1, 9], "x": 10.7, "y": 0.75, "w": 0.9, "h": 0.65},
|
||||
{"label": "Delete", "matrix": [0, 10], "x": 12, "y": 0.75, "w": 0.9, "h": 0.65},
|
||||
{"label": "End", "matrix": [1, 12], "x": 12.9, "y": 0.75, "w": 0.9, "h": 0.65},
|
||||
{"label": "PgDn", "matrix": [1, 11], "x": 13.8, "y": 0.75, "w": 0.9, "h": 0.65},
|
||||
{"label": "`\u00ac", "matrix": [0, 0], "x": 0, "y": 1.4},
|
||||
{"label": "1!", "matrix": [1, 0], "x": 1, "y": 1.4},
|
||||
{"label": "2\"", "matrix": [1, 1], "x": 2, "y": 1.4},
|
||||
{"label": "3\u00a3", "matrix": [1, 2], "x": 3, "y": 1.4},
|
||||
{"label": "4$", "matrix": [1, 3], "x": 4, "y": 1.4},
|
||||
{"label": "5%", "matrix": [0, 3], "x": 5, "y": 1.4},
|
||||
{"label": "6^", "matrix": [0, 4], "x": 6, "y": 1.4},
|
||||
{"label": "7&", "matrix": [1, 4], "x": 7, "y": 1.4},
|
||||
{"label": "8*", "matrix": [1, 5], "x": 8, "y": 1.4},
|
||||
{"label": "9(", "matrix": [1, 6], "x": 9, "y": 1.4},
|
||||
{"label": "0)", "matrix": [1, 7], "x": 10, "y": 1.4},
|
||||
{"label": "-_", "matrix": [0, 7], "x": 11, "y": 1.4},
|
||||
{"label": "=+", "matrix": [0, 5], "x": 12, "y": 1.4},
|
||||
{"label": "Bksp", "matrix": [3, 8], "x": 13, "y": 1.4, "w": 2},
|
||||
{"label": "Tab", "matrix": [3, 0], "x": 0, "y": 2.4, "w": 1.5},
|
||||
{"label": "Q", "matrix": [2, 0], "x": 1.5, "y": 2.4},
|
||||
{"label": "W", "matrix": [2, 1], "x": 2.5, "y": 2.4},
|
||||
{"label": "E", "matrix": [2, 2], "x": 3.5, "y": 2.4},
|
||||
{"label": "R", "matrix": [2, 3], "x": 4.5, "y": 2.4},
|
||||
{"label": "T", "matrix": [3, 3], "x": 5.5, "y": 2.4},
|
||||
{"label": "Y", "matrix": [3, 4], "x": 6.5, "y": 2.4},
|
||||
{"label": "U", "matrix": [2, 4], "x": 7.5, "y": 2.4},
|
||||
{"label": "I", "matrix": [2, 5], "x": 8.5, "y": 2.4},
|
||||
{"label": "O", "matrix": [2, 6], "x": 9.5, "y": 2.4},
|
||||
{"label": "P", "matrix": [2, 7], "x": 10.5, "y": 2.4},
|
||||
{"label": "[{", "matrix": [3, 7], "x": 11.5, "y": 2.4},
|
||||
{"label": "]}", "matrix": [3, 5], "x": 12.5, "y": 2.4},
|
||||
{"label": "Caps Lock", "matrix": [3, 1], "x": 0, "y": 3.4, "w": 1.75},
|
||||
{"label": "A", "matrix": [4, 0], "x": 1.75, "y": 3.4},
|
||||
{"label": "S", "matrix": [4, 1], "x": 2.75, "y": 3.4},
|
||||
{"label": "D", "matrix": [4, 2], "x": 3.75, "y": 3.4},
|
||||
{"label": "F", "matrix": [4, 3], "x": 4.75, "y": 3.4},
|
||||
{"label": "G", "matrix": [5, 3], "x": 5.75, "y": 3.4},
|
||||
{"label": "H", "matrix": [5, 4], "x": 6.75, "y": 3.4},
|
||||
{"label": "J", "matrix": [4, 4], "x": 7.75, "y": 3.4},
|
||||
{"label": "K", "matrix": [4, 5], "x": 8.75, "y": 3.4},
|
||||
{"label": "L", "matrix": [4, 6], "x": 9.75, "y": 3.4},
|
||||
{"label": ";:", "matrix": [4, 7], "x": 10.75, "y": 3.4},
|
||||
{"label": "'@", "matrix": [5, 7], "x": 11.75, "y": 3.4},
|
||||
{"label": "#~", "matrix": [6, 7], "x": 12.75, "y": 3.4},
|
||||
{"label": "Enter", "matrix": [6, 8], "x": 13.75, "y": 2.4, "w": 1.25, "h": 2},
|
||||
{"label": "Shift", "matrix": [3, 14], "x": 0, "y": 4.4, "w": 1.25},
|
||||
{"label": "\\|", "matrix": [5, 1], "x": 1.25, "y": 4.4},
|
||||
{"label": "Z", "matrix": [6, 0], "x": 2.25, "y": 4.4},
|
||||
{"label": "X", "matrix": [6, 1], "x": 3.25, "y": 4.4},
|
||||
{"label": "C", "matrix": [6, 2], "x": 4.25, "y": 4.4},
|
||||
{"label": "V", "matrix": [6, 3], "x": 5.25, "y": 4.4},
|
||||
{"label": "B", "matrix": [7, 3], "x": 6.25, "y": 4.4},
|
||||
{"label": "N", "matrix": [7, 4], "x": 7.25, "y": 4.4},
|
||||
{"label": "M", "matrix": [6, 4], "x": 8.25, "y": 4.4},
|
||||
{"label": ",<", "matrix": [6, 5], "x": 9.25, "y": 4.4},
|
||||
{"label": ".>", "matrix": [6, 6], "x": 10.25, "y": 4.4},
|
||||
{"label": "/?", "matrix": [7, 7], "x": 11.25, "y": 4.4},
|
||||
{"label": "Shift", "matrix": [6, 14], "x": 12.25, "y": 4.4, "w": 2.75},
|
||||
{"label": "Fn", "matrix": [4, 9], "x": 0, "y": 5.4},
|
||||
{"label": "Ctrl", "matrix": [0, 15], "x": 1, "y": 5.4, "w": 1.25},
|
||||
{"label": "Left OS", "matrix": [2, 11], "x": 2.25, "y": 5.4, "w": 0.9},
|
||||
{"label": "Alt", "matrix": [5, 13], "x": 3.15, "y": 5.4},
|
||||
{"label": "Space", "matrix": [7, 8], "x": 4.15, "y": 5.4, "w": 5},
|
||||
{"label": "AltGr", "matrix": [7, 13], "x": 9.25, "y": 5.4},
|
||||
{"label": "Menu", "matrix": [4, 11], "x": 10.25, "y": 5.4},
|
||||
{"label": "Ctrl", "matrix": [6, 15], "x": 11.25, "y": 5.4},
|
||||
{"label": "Browser Back", "matrix": [6, 11], "x": 12.25, "y": 5.4, "w": 0.9, "h": 0.75},
|
||||
{"label": "Up", "matrix": [5, 12], "x": 13.15, "y": 5.4, "w": 0.9, "h": 0.75},
|
||||
{"label": "Browser Forward", "matrix": [7, 11], "x": 14.05, "y": 5.4, "w": 0.9, "h": 0.75},
|
||||
{"label": "Left", "matrix": [7, 12], "x": 12.25, "y": 6.15, "w": 0.9, "h": 0.75},
|
||||
{"label": "Down", "matrix": [7, 10], "x": 13.15, "y": 6.15, "w": 0.9, "h": 0.75},
|
||||
{"label": "Right", "matrix": [7, 9], "x": 14.05, "y": 6.15, "w": 0.9, "h": 0.75}
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,17 @@
|
||||
// Copyright 2023 QMK
|
||||
// SPDX-License-Identifier: GPL-2.0-or-later
|
||||
|
||||
#include QMK_KEYBOARD_H
|
||||
|
||||
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
||||
[0] = LAYOUT_iso(
|
||||
KC_ESC, KC_MUTE, KC_VOLD, KC_VOLU, QK_BOOT, KC_PSCR, KC_SCRL, KC_PAUS, KC_INS, KC_HOME, KC_PGUP,
|
||||
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_END, KC_PGDN,
|
||||
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_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC,
|
||||
KC_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_NUHS, KC_ENT,
|
||||
KC_LSFT, KC_NUBS, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT,
|
||||
KC_NO, KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, KC_APP, KC_RCTL, KC_WBAK, KC_UP , KC_WFWD,
|
||||
KC_LEFT, KC_DOWN, KC_RGHT
|
||||
)
|
||||
};
|
||||
27
keyboards/converter/thinkpad_t6x/rpi_pico/readme.md
Normal file
27
keyboards/converter/thinkpad_t6x/rpi_pico/readme.md
Normal file
@@ -0,0 +1,27 @@
|
||||
# converter/thinkpad_t6x/rpi_pico
|
||||
|
||||

|
||||
|
||||
This is a converter PCB for Lenovo Thinkpad keyboards from a wide range of models (T60, T61, X220, ...), based on the Raspberry Pi Pico. The QMK implementation here is specific to the converter in the link below. Similar PCB designs to convert a Thinkpad keyboard to USB exist, but they use a different microcontroller and wiring of the keyboard connector with the MCU.
|
||||
|
||||
* Keyboard Maintainer: [Michael Büchler](https://github.com/strobo5)
|
||||
* Hardware Supported: The linked converter PCB with keyboards from various Thinkpad models
|
||||
* Hardware Availability: [Custom PCB](https://github.com/strobo5/T61_PiPico_Scanner)
|
||||
|
||||
Make example for this keyboard (after setting up your build environment):
|
||||
|
||||
make converter/thinkpad_t6x/rpi_pico:default
|
||||
|
||||
Flashing example for this keyboard:
|
||||
|
||||
make converter/thinkpad_t6x/rpi_pico: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
|
||||
20
keyboards/deemen17/de80/config.h
Normal file
20
keyboards/deemen17/de80/config.h
Normal file
@@ -0,0 +1,20 @@
|
||||
/* Copyright 2024 Deemen17 <https://github.com/Deemen17>
|
||||
*
|
||||
* 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 WS2812_SPI_DRIVER SPID2
|
||||
#define WS2812_SPI_USE_CIRCULAR_BUFFER
|
||||
22
keyboards/deemen17/de80/halconf.h
Normal file
22
keyboards/deemen17/de80/halconf.h
Normal file
@@ -0,0 +1,22 @@
|
||||
/* Copyright 2022 QMK
|
||||
*
|
||||
* This program is free software: you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation, either version 2 of the License, or
|
||||
* (at your option) any later version.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
#pragma once
|
||||
|
||||
#define HAL_USE_SPI TRUE
|
||||
|
||||
#include_next <halconf.h>
|
||||
|
||||
893
keyboards/deemen17/de80/keyboard.json
Normal file
893
keyboards/deemen17/de80/keyboard.json
Normal file
@@ -0,0 +1,893 @@
|
||||
{
|
||||
"manufacturer": "Deemen17",
|
||||
"keyboard_name": "DE80",
|
||||
"maintainer": "Deemen17",
|
||||
"bootloader": "uf2boot",
|
||||
"diode_direction": "COL2ROW",
|
||||
"features": {
|
||||
"bootmagic": true,
|
||||
"extrakey": true,
|
||||
"mousekey": true,
|
||||
"nkro": true,
|
||||
"rgblight": true,
|
||||
"encoder": true
|
||||
},
|
||||
"matrix_pins": {
|
||||
"rows": ["A8", "A10", "A9", "B11", "C14", "C13"],
|
||||
"cols": ["B14", "B13", "B12", "B2", "B1", "B0", "A7", "A6", "A5", "A4", "A3", "A2", "A1", "A0", "A15", "B7", "B6"]
|
||||
},
|
||||
"processor": "STM32F103",
|
||||
"usb": {
|
||||
"vid": "0xDE17",
|
||||
"pid": "0x80F1",
|
||||
"device_version": "1.0.0"
|
||||
},
|
||||
"indicators": {
|
||||
"caps_lock": "B10",
|
||||
"scroll_lock": "B3"
|
||||
},
|
||||
"rgblight": {
|
||||
"animations": {
|
||||
"alternating": true,
|
||||
"breathing": true,
|
||||
"christmas": true,
|
||||
"knight": true,
|
||||
"rainbow_mood": true,
|
||||
"rainbow_swirl": true,
|
||||
"rgb_test": true,
|
||||
"snake": true,
|
||||
"static_gradient": true,
|
||||
"twinkle": true
|
||||
},
|
||||
"led_count": 40,
|
||||
"max_brightness": 250,
|
||||
"sleep": true
|
||||
},
|
||||
"ws2812": {
|
||||
"driver": "spi",
|
||||
"pin": "B15"
|
||||
},
|
||||
"encoder": {
|
||||
"rotary": [
|
||||
{"pin_a": "B5", "pin_b": "B4"}
|
||||
]
|
||||
},
|
||||
"layout_aliases": {
|
||||
"LAYOUT_all": "LAYOUT_tkl_f13_ansi_tsangan_split_bs_rshift"
|
||||
},
|
||||
"community_layouts": ["tkl_ansi_tsangan", "tkl_ansi_tsangan_split_bs_rshift", "tkl_ansi_wkl", "tkl_ansi_wkl_split_bs_rshift", "tkl_f13_ansi_tsangan", "tkl_f13_ansi_tsangan_split_bs_rshift", "tkl_f13_ansi_wkl", "tkl_f13_ansi_wkl_split_bs_rshift" ],
|
||||
"layouts": {
|
||||
"LAYOUT_tkl_ansi_tsangan": {
|
||||
"layout": [
|
||||
{"matrix": [0, 0], "x": 0, "y": 0},
|
||||
|
||||
{"matrix": [0, 2], "x": 2, "y": 0},
|
||||
{"matrix": [0, 3], "x": 3, "y": 0},
|
||||
{"matrix": [0, 4], "x": 4, "y": 0},
|
||||
{"matrix": [0, 5], "x": 5, "y": 0},
|
||||
|
||||
{"matrix": [0, 6], "x": 6.5, "y": 0},
|
||||
{"matrix": [0, 7], "x": 7.5, "y": 0},
|
||||
{"matrix": [0, 8], "x": 8.5, "y": 0},
|
||||
{"matrix": [0, 9], "x": 9.5, "y": 0},
|
||||
|
||||
{"matrix": [0, 10], "x": 11, "y": 0},
|
||||
{"matrix": [0, 11], "x": 12, "y": 0},
|
||||
{"matrix": [0, 12], "x": 13, "y": 0},
|
||||
{"matrix": [0, 13], "x": 14, "y": 0},
|
||||
|
||||
{"matrix": [0, 14], "x": 15.25, "y": 0},
|
||||
{"matrix": [0, 15], "x": 16.25, "y": 0},
|
||||
{"matrix": [0, 16], "x": 17.25, "y": 0},
|
||||
|
||||
{"matrix": [1, 0], "x": 0, "y": 1.25},
|
||||
{"matrix": [1, 1], "x": 1, "y": 1.25},
|
||||
{"matrix": [1, 2], "x": 2, "y": 1.25},
|
||||
{"matrix": [1, 3], "x": 3, "y": 1.25},
|
||||
{"matrix": [1, 4], "x": 4, "y": 1.25},
|
||||
{"matrix": [1, 5], "x": 5, "y": 1.25},
|
||||
{"matrix": [1, 6], "x": 6, "y": 1.25},
|
||||
{"matrix": [1, 7], "x": 7, "y": 1.25},
|
||||
{"matrix": [1, 8], "x": 8, "y": 1.25},
|
||||
{"matrix": [1, 9], "x": 9, "y": 1.25},
|
||||
{"matrix": [1, 10], "x": 10, "y": 1.25},
|
||||
{"matrix": [1, 11], "x": 11, "y": 1.25},
|
||||
{"matrix": [1, 12], "x": 12, "y": 1.25},
|
||||
{"matrix": [1, 13], "x": 13, "y": 1.25, "w": 2},
|
||||
|
||||
{"matrix": [1, 14], "x": 15.25, "y": 1.25},
|
||||
{"matrix": [1, 15], "x": 16.25, "y": 1.25},
|
||||
{"matrix": [1, 16], "x": 17.25, "y": 1.25},
|
||||
|
||||
{"matrix": [2, 0], "x": 0, "y": 2.25, "w": 1.5},
|
||||
{"matrix": [2, 1], "x": 1.5, "y": 2.25},
|
||||
{"matrix": [2, 2], "x": 2.5, "y": 2.25},
|
||||
{"matrix": [2, 3], "x": 3.5, "y": 2.25},
|
||||
{"matrix": [2, 4], "x": 4.5, "y": 2.25},
|
||||
{"matrix": [2, 5], "x": 5.5, "y": 2.25},
|
||||
{"matrix": [2, 6], "x": 6.5, "y": 2.25},
|
||||
{"matrix": [2, 7], "x": 7.5, "y": 2.25},
|
||||
{"matrix": [2, 8], "x": 8.5, "y": 2.25},
|
||||
{"matrix": [2, 9], "x": 9.5, "y": 2.25},
|
||||
{"matrix": [2, 10], "x": 10.5, "y": 2.25},
|
||||
{"matrix": [2, 11], "x": 11.5, "y": 2.25},
|
||||
{"matrix": [2, 12], "x": 12.5, "y": 2.25},
|
||||
{"matrix": [2, 13], "x": 13.5, "y": 2.25, "w": 1.5},
|
||||
|
||||
{"matrix": [2, 14], "x": 15.25, "y": 2.25},
|
||||
{"matrix": [2, 15], "x": 16.25, "y": 2.25},
|
||||
{"matrix": [2, 16], "x": 17.25, "y": 2.25},
|
||||
|
||||
{"matrix": [3, 0], "x": 0, "y": 3.25, "w": 1.75},
|
||||
{"matrix": [3, 1], "x": 1.75, "y": 3.25},
|
||||
{"matrix": [3, 2], "x": 2.75, "y": 3.25},
|
||||
{"matrix": [3, 3], "x": 3.75, "y": 3.25},
|
||||
{"matrix": [3, 4], "x": 4.75, "y": 3.25},
|
||||
{"matrix": [3, 5], "x": 5.75, "y": 3.25},
|
||||
{"matrix": [3, 6], "x": 6.75, "y": 3.25},
|
||||
{"matrix": [3, 7], "x": 7.75, "y": 3.25},
|
||||
{"matrix": [3, 8], "x": 8.75, "y": 3.25},
|
||||
{"matrix": [3, 9], "x": 9.75, "y": 3.25},
|
||||
{"matrix": [3, 10], "x": 10.75, "y": 3.25},
|
||||
{"matrix": [3, 11], "x": 11.75, "y": 3.25},
|
||||
{"matrix": [3, 13], "x": 12.75, "y": 3.25, "w": 2.25},
|
||||
|
||||
{"matrix": [4, 0], "x": 0, "y": 4.25, "w": 2.25},
|
||||
{"matrix": [4, 2], "x": 2.25, "y": 4.25},
|
||||
{"matrix": [4, 3], "x": 3.25, "y": 4.25},
|
||||
{"matrix": [4, 4], "x": 4.25, "y": 4.25},
|
||||
{"matrix": [4, 5], "x": 5.25, "y": 4.25},
|
||||
{"matrix": [4, 6], "x": 6.25, "y": 4.25},
|
||||
{"matrix": [4, 7], "x": 7.25, "y": 4.25},
|
||||
{"matrix": [4, 8], "x": 8.25, "y": 4.25},
|
||||
{"matrix": [4, 9], "x": 9.25, "y": 4.25},
|
||||
{"matrix": [4, 10], "x": 10.25, "y": 4.25},
|
||||
{"matrix": [4, 11], "x": 11.25, "y": 4.25},
|
||||
{"matrix": [4, 13], "x": 12.25, "y": 4.25, "w": 2.75},
|
||||
|
||||
{"matrix": [4, 15], "x": 16.25, "y": 4.25},
|
||||
|
||||
{"matrix": [5, 0], "x": 0, "y": 5.25, "w": 1.5},
|
||||
{"matrix": [5, 1], "x": 1.5, "y": 5.25},
|
||||
{"matrix": [5, 2], "x": 2.5, "y": 5.25, "w": 1.5},
|
||||
{"matrix": [5, 6], "x": 4, "y": 5.25, "w": 7},
|
||||
{"matrix": [5, 11], "x": 11, "y": 5.25, "w": 1.5},
|
||||
{"matrix": [5, 12], "x": 12.5, "y": 5.25},
|
||||
{"matrix": [5, 13], "x": 13.5, "y": 5.25, "w": 1.5},
|
||||
|
||||
{"matrix": [5, 14], "x": 15.25, "y": 5.25},
|
||||
{"matrix": [5, 15], "x": 16.25, "y": 5.25},
|
||||
{"matrix": [5, 16], "x": 17.25, "y": 5.25}
|
||||
]
|
||||
},
|
||||
"LAYOUT_tkl_ansi_tsangan_split_bs_rshift": {
|
||||
"layout": [
|
||||
{"matrix": [0, 0], "x": 0, "y": 0},
|
||||
|
||||
{"matrix": [0, 2], "x": 2, "y": 0},
|
||||
{"matrix": [0, 3], "x": 3, "y": 0},
|
||||
{"matrix": [0, 4], "x": 4, "y": 0},
|
||||
{"matrix": [0, 5], "x": 5, "y": 0},
|
||||
|
||||
{"matrix": [0, 6], "x": 6.5, "y": 0},
|
||||
{"matrix": [0, 7], "x": 7.5, "y": 0},
|
||||
{"matrix": [0, 8], "x": 8.5, "y": 0},
|
||||
{"matrix": [0, 9], "x": 9.5, "y": 0},
|
||||
|
||||
{"matrix": [0, 10], "x": 11, "y": 0},
|
||||
{"matrix": [0, 11], "x": 12, "y": 0},
|
||||
{"matrix": [0, 12], "x": 13, "y": 0},
|
||||
{"matrix": [0, 13], "x": 14, "y": 0},
|
||||
|
||||
{"matrix": [0, 14], "x": 15.25, "y": 0},
|
||||
{"matrix": [0, 15], "x": 16.25, "y": 0},
|
||||
{"matrix": [0, 16], "x": 17.25, "y": 0},
|
||||
|
||||
{"matrix": [1, 0], "x": 0, "y": 1.25},
|
||||
{"matrix": [1, 1], "x": 1, "y": 1.25},
|
||||
{"matrix": [1, 2], "x": 2, "y": 1.25},
|
||||
{"matrix": [1, 3], "x": 3, "y": 1.25},
|
||||
{"matrix": [1, 4], "x": 4, "y": 1.25},
|
||||
{"matrix": [1, 5], "x": 5, "y": 1.25},
|
||||
{"matrix": [1, 6], "x": 6, "y": 1.25},
|
||||
{"matrix": [1, 7], "x": 7, "y": 1.25},
|
||||
{"matrix": [1, 8], "x": 8, "y": 1.25},
|
||||
{"matrix": [1, 9], "x": 9, "y": 1.25},
|
||||
{"matrix": [1, 10], "x": 10, "y": 1.25},
|
||||
{"matrix": [1, 11], "x": 11, "y": 1.25},
|
||||
{"matrix": [1, 12], "x": 12, "y": 1.25},
|
||||
{"matrix": [1, 13], "x": 13, "y": 1.25},
|
||||
{"matrix": [3, 12], "x": 14, "y": 1.25},
|
||||
|
||||
{"matrix": [1, 14], "x": 15.25, "y": 1.25},
|
||||
{"matrix": [1, 15], "x": 16.25, "y": 1.25},
|
||||
{"matrix": [1, 16], "x": 17.25, "y": 1.25},
|
||||
|
||||
{"matrix": [2, 0], "x": 0, "y": 2.25, "w": 1.5},
|
||||
{"matrix": [2, 1], "x": 1.5, "y": 2.25},
|
||||
{"matrix": [2, 2], "x": 2.5, "y": 2.25},
|
||||
{"matrix": [2, 3], "x": 3.5, "y": 2.25},
|
||||
{"matrix": [2, 4], "x": 4.5, "y": 2.25},
|
||||
{"matrix": [2, 5], "x": 5.5, "y": 2.25},
|
||||
{"matrix": [2, 6], "x": 6.5, "y": 2.25},
|
||||
{"matrix": [2, 7], "x": 7.5, "y": 2.25},
|
||||
{"matrix": [2, 8], "x": 8.5, "y": 2.25},
|
||||
{"matrix": [2, 9], "x": 9.5, "y": 2.25},
|
||||
{"matrix": [2, 10], "x": 10.5, "y": 2.25},
|
||||
{"matrix": [2, 11], "x": 11.5, "y": 2.25},
|
||||
{"matrix": [2, 12], "x": 12.5, "y": 2.25},
|
||||
{"matrix": [2, 13], "x": 13.5, "y": 2.25, "w": 1.5},
|
||||
|
||||
{"matrix": [2, 14], "x": 15.25, "y": 2.25},
|
||||
{"matrix": [2, 15], "x": 16.25, "y": 2.25},
|
||||
{"matrix": [2, 16], "x": 17.25, "y": 2.25},
|
||||
|
||||
{"matrix": [3, 0], "x": 0, "y": 3.25, "w": 1.75},
|
||||
{"matrix": [3, 1], "x": 1.75, "y": 3.25},
|
||||
{"matrix": [3, 2], "x": 2.75, "y": 3.25},
|
||||
{"matrix": [3, 3], "x": 3.75, "y": 3.25},
|
||||
{"matrix": [3, 4], "x": 4.75, "y": 3.25},
|
||||
{"matrix": [3, 5], "x": 5.75, "y": 3.25},
|
||||
{"matrix": [3, 6], "x": 6.75, "y": 3.25},
|
||||
{"matrix": [3, 7], "x": 7.75, "y": 3.25},
|
||||
{"matrix": [3, 8], "x": 8.75, "y": 3.25},
|
||||
{"matrix": [3, 9], "x": 9.75, "y": 3.25},
|
||||
{"matrix": [3, 10], "x": 10.75, "y": 3.25},
|
||||
{"matrix": [3, 11], "x": 11.75, "y": 3.25},
|
||||
{"matrix": [3, 13], "x": 12.75, "y": 3.25, "w": 2.25},
|
||||
|
||||
{"matrix": [4, 0], "x": 0, "y": 4.25, "w": 2.25},
|
||||
{"matrix": [4, 2], "x": 2.25, "y": 4.25},
|
||||
{"matrix": [4, 3], "x": 3.25, "y": 4.25},
|
||||
{"matrix": [4, 4], "x": 4.25, "y": 4.25},
|
||||
{"matrix": [4, 5], "x": 5.25, "y": 4.25},
|
||||
{"matrix": [4, 6], "x": 6.25, "y": 4.25},
|
||||
{"matrix": [4, 7], "x": 7.25, "y": 4.25},
|
||||
{"matrix": [4, 8], "x": 8.25, "y": 4.25},
|
||||
{"matrix": [4, 9], "x": 9.25, "y": 4.25},
|
||||
{"matrix": [4, 10], "x": 10.25, "y": 4.25},
|
||||
{"matrix": [4, 11], "x": 11.25, "y": 4.25},
|
||||
{"matrix": [4, 12], "x": 12.25, "y": 4.25, "w": 1.75},
|
||||
{"matrix": [4, 13], "x": 14, "y": 4.25},
|
||||
|
||||
{"matrix": [4, 15], "x": 16.25, "y": 4.25},
|
||||
|
||||
{"matrix": [5, 0], "x": 0, "y": 5.25, "w": 1.5},
|
||||
{"matrix": [5, 1], "x": 1.5, "y": 5.25},
|
||||
{"matrix": [5, 2], "x": 2.5, "y": 5.25, "w": 1.5},
|
||||
{"matrix": [5, 6], "x": 4, "y": 5.25, "w": 7},
|
||||
{"matrix": [5, 11], "x": 11, "y": 5.25, "w": 1.5},
|
||||
{"matrix": [5, 12], "x": 12.5, "y": 5.25},
|
||||
{"matrix": [5, 13], "x": 13.5, "y": 5.25, "w": 1.5},
|
||||
|
||||
{"matrix": [5, 14], "x": 15.25, "y": 5.25},
|
||||
{"matrix": [5, 15], "x": 16.25, "y": 5.25},
|
||||
{"matrix": [5, 16], "x": 17.25, "y": 5.25}
|
||||
]
|
||||
},
|
||||
"LAYOUT_tkl_f13_ansi_tsangan": {
|
||||
"layout": [
|
||||
{"matrix": [0, 0], "x": 0, "y": 0},
|
||||
|
||||
{"matrix": [0, 1], "x": 1.25, "y": 0},
|
||||
{"matrix": [0, 2], "x": 2.25, "y": 0},
|
||||
{"matrix": [0, 3], "x": 3.25, "y": 0},
|
||||
{"matrix": [0, 4], "x": 4.25, "y": 0},
|
||||
|
||||
{"matrix": [0, 5], "x": 5.5, "y": 0},
|
||||
{"matrix": [0, 6], "x": 6.5, "y": 0},
|
||||
{"matrix": [0, 7], "x": 7.5, "y": 0},
|
||||
{"matrix": [0, 8], "x": 8.5, "y": 0},
|
||||
|
||||
{"matrix": [0, 9], "x": 9.75, "y": 0},
|
||||
{"matrix": [0, 10], "x": 10.75, "y": 0},
|
||||
{"matrix": [0, 11], "x": 11.75, "y": 0},
|
||||
{"matrix": [0, 12], "x": 12.75, "y": 0},
|
||||
|
||||
{"matrix": [0, 13], "x": 14, "y": 0},
|
||||
|
||||
{"matrix": [0, 14], "x": 15.25, "y": 0},
|
||||
{"matrix": [0, 15], "x": 16.25, "y": 0},
|
||||
{"matrix": [0, 16], "x": 17.25, "y": 0},
|
||||
|
||||
{"matrix": [1, 0], "x": 0, "y": 1.25},
|
||||
{"matrix": [1, 1], "x": 1, "y": 1.25},
|
||||
{"matrix": [1, 2], "x": 2, "y": 1.25},
|
||||
{"matrix": [1, 3], "x": 3, "y": 1.25},
|
||||
{"matrix": [1, 4], "x": 4, "y": 1.25},
|
||||
{"matrix": [1, 5], "x": 5, "y": 1.25},
|
||||
{"matrix": [1, 6], "x": 6, "y": 1.25},
|
||||
{"matrix": [1, 7], "x": 7, "y": 1.25},
|
||||
{"matrix": [1, 8], "x": 8, "y": 1.25},
|
||||
{"matrix": [1, 9], "x": 9, "y": 1.25},
|
||||
{"matrix": [1, 10], "x": 10, "y": 1.25},
|
||||
{"matrix": [1, 11], "x": 11, "y": 1.25},
|
||||
{"matrix": [1, 12], "x": 12, "y": 1.25},
|
||||
{"matrix": [1, 13], "x": 13, "y": 1.25, "w": 2},
|
||||
|
||||
{"matrix": [1, 14], "x": 15.25, "y": 1.25},
|
||||
{"matrix": [1, 15], "x": 16.25, "y": 1.25},
|
||||
{"matrix": [1, 16], "x": 17.25, "y": 1.25},
|
||||
|
||||
{"matrix": [2, 0], "x": 0, "y": 2.25, "w": 1.5},
|
||||
{"matrix": [2, 1], "x": 1.5, "y": 2.25},
|
||||
{"matrix": [2, 2], "x": 2.5, "y": 2.25},
|
||||
{"matrix": [2, 3], "x": 3.5, "y": 2.25},
|
||||
{"matrix": [2, 4], "x": 4.5, "y": 2.25},
|
||||
{"matrix": [2, 5], "x": 5.5, "y": 2.25},
|
||||
{"matrix": [2, 6], "x": 6.5, "y": 2.25},
|
||||
{"matrix": [2, 7], "x": 7.5, "y": 2.25},
|
||||
{"matrix": [2, 8], "x": 8.5, "y": 2.25},
|
||||
{"matrix": [2, 9], "x": 9.5, "y": 2.25},
|
||||
{"matrix": [2, 10], "x": 10.5, "y": 2.25},
|
||||
{"matrix": [2, 11], "x": 11.5, "y": 2.25},
|
||||
{"matrix": [2, 12], "x": 12.5, "y": 2.25},
|
||||
{"matrix": [2, 13], "x": 13.5, "y": 2.25, "w": 1.5},
|
||||
|
||||
{"matrix": [2, 14], "x": 15.25, "y": 2.25},
|
||||
{"matrix": [2, 15], "x": 16.25, "y": 2.25},
|
||||
{"matrix": [2, 16], "x": 17.25, "y": 2.25},
|
||||
|
||||
{"matrix": [3, 0], "x": 0, "y": 3.25, "w": 1.75},
|
||||
{"matrix": [3, 1], "x": 1.75, "y": 3.25},
|
||||
{"matrix": [3, 2], "x": 2.75, "y": 3.25},
|
||||
{"matrix": [3, 3], "x": 3.75, "y": 3.25},
|
||||
{"matrix": [3, 4], "x": 4.75, "y": 3.25},
|
||||
{"matrix": [3, 5], "x": 5.75, "y": 3.25},
|
||||
{"matrix": [3, 6], "x": 6.75, "y": 3.25},
|
||||
{"matrix": [3, 7], "x": 7.75, "y": 3.25},
|
||||
{"matrix": [3, 8], "x": 8.75, "y": 3.25},
|
||||
{"matrix": [3, 9], "x": 9.75, "y": 3.25},
|
||||
{"matrix": [3, 10], "x": 10.75, "y": 3.25},
|
||||
{"matrix": [3, 11], "x": 11.75, "y": 3.25},
|
||||
{"matrix": [3, 13], "x": 12.75, "y": 3.25, "w": 2.25},
|
||||
|
||||
{"matrix": [4, 0], "x": 0, "y": 4.25, "w": 2.25},
|
||||
{"matrix": [4, 2], "x": 2.25, "y": 4.25},
|
||||
{"matrix": [4, 3], "x": 3.25, "y": 4.25},
|
||||
{"matrix": [4, 4], "x": 4.25, "y": 4.25},
|
||||
{"matrix": [4, 5], "x": 5.25, "y": 4.25},
|
||||
{"matrix": [4, 6], "x": 6.25, "y": 4.25},
|
||||
{"matrix": [4, 7], "x": 7.25, "y": 4.25},
|
||||
{"matrix": [4, 8], "x": 8.25, "y": 4.25},
|
||||
{"matrix": [4, 9], "x": 9.25, "y": 4.25},
|
||||
{"matrix": [4, 10], "x": 10.25, "y": 4.25},
|
||||
{"matrix": [4, 11], "x": 11.25, "y": 4.25},
|
||||
{"matrix": [4, 13], "x": 12.25, "y": 4.25, "w": 2.75},
|
||||
|
||||
{"matrix": [4, 15], "x": 16.25, "y": 4.25},
|
||||
|
||||
{"matrix": [5, 0], "x": 0, "y": 5.25, "w": 1.25},
|
||||
{"matrix": [5, 1], "x": 1.5, "y": 5.25},
|
||||
{"matrix": [5, 2], "x": 2.5, "y": 5.25, "w": 1.25},
|
||||
{"matrix": [5, 6], "x": 4, "y": 5.25, "w": 7},
|
||||
{"matrix": [5, 11], "x": 11, "y": 5.25, "w": 1.5},
|
||||
{"matrix": [5, 12], "x": 12.5, "y": 5.25},
|
||||
{"matrix": [5, 13], "x": 13.5, "y": 5.25, "w": 1.5},
|
||||
|
||||
{"matrix": [5, 14], "x": 15.25, "y": 5.25},
|
||||
{"matrix": [5, 15], "x": 16.25, "y": 5.25},
|
||||
{"matrix": [5, 16], "x": 17.25, "y": 5.25}
|
||||
]
|
||||
},
|
||||
"LAYOUT_tkl_f13_ansi_tsangan_split_bs_rshift": {
|
||||
"layout": [
|
||||
{"matrix": [0, 0], "x": 0, "y": 0},
|
||||
|
||||
{"matrix": [0, 1], "x": 1.25, "y": 0},
|
||||
{"matrix": [0, 2], "x": 2.25, "y": 0},
|
||||
{"matrix": [0, 3], "x": 3.25, "y": 0},
|
||||
{"matrix": [0, 4], "x": 4.25, "y": 0},
|
||||
|
||||
{"matrix": [0, 5], "x": 5.5, "y": 0},
|
||||
{"matrix": [0, 6], "x": 6.5, "y": 0},
|
||||
{"matrix": [0, 7], "x": 7.5, "y": 0},
|
||||
{"matrix": [0, 8], "x": 8.5, "y": 0},
|
||||
|
||||
{"matrix": [0, 9], "x": 9.75, "y": 0},
|
||||
{"matrix": [0, 10], "x": 10.75, "y": 0},
|
||||
{"matrix": [0, 11], "x": 11.75, "y": 0},
|
||||
{"matrix": [0, 12], "x": 12.75, "y": 0},
|
||||
|
||||
{"matrix": [0, 13], "x": 14, "y": 0},
|
||||
|
||||
{"matrix": [0, 14], "x": 15.25, "y": 0},
|
||||
{"matrix": [0, 15], "x": 16.25, "y": 0},
|
||||
{"matrix": [0, 16], "x": 17.25, "y": 0},
|
||||
|
||||
{"matrix": [1, 0], "x": 0, "y": 1.25},
|
||||
{"matrix": [1, 1], "x": 1, "y": 1.25},
|
||||
{"matrix": [1, 2], "x": 2, "y": 1.25},
|
||||
{"matrix": [1, 3], "x": 3, "y": 1.25},
|
||||
{"matrix": [1, 4], "x": 4, "y": 1.25},
|
||||
{"matrix": [1, 5], "x": 5, "y": 1.25},
|
||||
{"matrix": [1, 6], "x": 6, "y": 1.25},
|
||||
{"matrix": [1, 7], "x": 7, "y": 1.25},
|
||||
{"matrix": [1, 8], "x": 8, "y": 1.25},
|
||||
{"matrix": [1, 9], "x": 9, "y": 1.25},
|
||||
{"matrix": [1, 10], "x": 10, "y": 1.25},
|
||||
{"matrix": [1, 11], "x": 11, "y": 1.25},
|
||||
{"matrix": [1, 12], "x": 12, "y": 1.25},
|
||||
{"matrix": [1, 13], "x": 13, "y": 1.25},
|
||||
{"matrix": [3, 12], "x": 14, "y": 1.25},
|
||||
|
||||
{"matrix": [1, 14], "x": 15.25, "y": 1.25},
|
||||
{"matrix": [1, 15], "x": 16.25, "y": 1.25},
|
||||
{"matrix": [1, 16], "x": 17.25, "y": 1.25},
|
||||
|
||||
{"matrix": [2, 0], "x": 0, "y": 2.25, "w": 1.5},
|
||||
{"matrix": [2, 1], "x": 1.5, "y": 2.25},
|
||||
{"matrix": [2, 2], "x": 2.5, "y": 2.25},
|
||||
{"matrix": [2, 3], "x": 3.5, "y": 2.25},
|
||||
{"matrix": [2, 4], "x": 4.5, "y": 2.25},
|
||||
{"matrix": [2, 5], "x": 5.5, "y": 2.25},
|
||||
{"matrix": [2, 6], "x": 6.5, "y": 2.25},
|
||||
{"matrix": [2, 7], "x": 7.5, "y": 2.25},
|
||||
{"matrix": [2, 8], "x": 8.5, "y": 2.25},
|
||||
{"matrix": [2, 9], "x": 9.5, "y": 2.25},
|
||||
{"matrix": [2, 10], "x": 10.5, "y": 2.25},
|
||||
{"matrix": [2, 11], "x": 11.5, "y": 2.25},
|
||||
{"matrix": [2, 12], "x": 12.5, "y": 2.25},
|
||||
{"matrix": [2, 13], "x": 13.5, "y": 2.25, "w": 1.5},
|
||||
|
||||
{"matrix": [2, 14], "x": 15.25, "y": 2.25},
|
||||
{"matrix": [2, 15], "x": 16.25, "y": 2.25},
|
||||
{"matrix": [2, 16], "x": 17.25, "y": 2.25},
|
||||
|
||||
{"matrix": [3, 0], "x": 0, "y": 3.25, "w": 1.75},
|
||||
{"matrix": [3, 1], "x": 1.75, "y": 3.25},
|
||||
{"matrix": [3, 2], "x": 2.75, "y": 3.25},
|
||||
{"matrix": [3, 3], "x": 3.75, "y": 3.25},
|
||||
{"matrix": [3, 4], "x": 4.75, "y": 3.25},
|
||||
{"matrix": [3, 5], "x": 5.75, "y": 3.25},
|
||||
{"matrix": [3, 6], "x": 6.75, "y": 3.25},
|
||||
{"matrix": [3, 7], "x": 7.75, "y": 3.25},
|
||||
{"matrix": [3, 8], "x": 8.75, "y": 3.25},
|
||||
{"matrix": [3, 9], "x": 9.75, "y": 3.25},
|
||||
{"matrix": [3, 10], "x": 10.75, "y": 3.25},
|
||||
{"matrix": [3, 11], "x": 11.75, "y": 3.25},
|
||||
{"matrix": [3, 13], "x": 12.75, "y": 3.25, "w": 2.25},
|
||||
|
||||
{"matrix": [4, 0], "x": 0, "y": 4.25, "w": 2.25},
|
||||
{"matrix": [4, 2], "x": 2.25, "y": 4.25},
|
||||
{"matrix": [4, 3], "x": 3.25, "y": 4.25},
|
||||
{"matrix": [4, 4], "x": 4.25, "y": 4.25},
|
||||
{"matrix": [4, 5], "x": 5.25, "y": 4.25},
|
||||
{"matrix": [4, 6], "x": 6.25, "y": 4.25},
|
||||
{"matrix": [4, 7], "x": 7.25, "y": 4.25},
|
||||
{"matrix": [4, 8], "x": 8.25, "y": 4.25},
|
||||
{"matrix": [4, 9], "x": 9.25, "y": 4.25},
|
||||
{"matrix": [4, 10], "x": 10.25, "y": 4.25},
|
||||
{"matrix": [4, 11], "x": 11.25, "y": 4.25},
|
||||
{"matrix": [4, 12], "x": 12.25, "y": 4.25, "w": 1.75},
|
||||
{"matrix": [4, 13], "x": 14, "y": 4.25},
|
||||
|
||||
{"matrix": [4, 15], "x": 16.25, "y": 4.25},
|
||||
|
||||
{"matrix": [5, 0], "x": 0, "y": 5.25, "w": 1.25},
|
||||
{"matrix": [5, 1], "x": 1.5, "y": 5.25},
|
||||
{"matrix": [5, 2], "x": 2.5, "y": 5.25, "w": 1.25},
|
||||
{"matrix": [5, 6], "x": 4, "y": 5.25, "w": 7},
|
||||
{"matrix": [5, 11], "x": 11, "y": 5.25, "w": 1.5},
|
||||
{"matrix": [5, 12], "x": 12.5, "y": 5.25},
|
||||
{"matrix": [5, 13], "x": 13.5, "y": 5.25, "w": 1.5},
|
||||
|
||||
{"matrix": [5, 14], "x": 15.25, "y": 5.25},
|
||||
{"matrix": [5, 15], "x": 16.25, "y": 5.25},
|
||||
{"matrix": [5, 16], "x": 17.25, "y": 5.25}
|
||||
]
|
||||
},
|
||||
"LAYOUT_tkl_ansi_wkl": {
|
||||
"layout": [
|
||||
{"matrix": [0, 0], "x": 0, "y": 0},
|
||||
|
||||
{"matrix": [0, 2], "x": 2, "y": 0},
|
||||
{"matrix": [0, 3], "x": 3, "y": 0},
|
||||
{"matrix": [0, 4], "x": 4, "y": 0},
|
||||
{"matrix": [0, 5], "x": 5, "y": 0},
|
||||
|
||||
{"matrix": [0, 6], "x": 6.5, "y": 0},
|
||||
{"matrix": [0, 7], "x": 7.5, "y": 0},
|
||||
{"matrix": [0, 8], "x": 8.5, "y": 0},
|
||||
{"matrix": [0, 9], "x": 9.5, "y": 0},
|
||||
|
||||
{"matrix": [0, 10], "x": 11, "y": 0},
|
||||
{"matrix": [0, 11], "x": 12, "y": 0},
|
||||
{"matrix": [0, 12], "x": 13, "y": 0},
|
||||
{"matrix": [0, 13], "x": 14, "y": 0},
|
||||
|
||||
{"matrix": [0, 14], "x": 15.25, "y": 0},
|
||||
{"matrix": [0, 15], "x": 16.25, "y": 0},
|
||||
{"matrix": [0, 16], "x": 17.25, "y": 0},
|
||||
|
||||
{"matrix": [1, 0], "x": 0, "y": 1.25},
|
||||
{"matrix": [1, 1], "x": 1, "y": 1.25},
|
||||
{"matrix": [1, 2], "x": 2, "y": 1.25},
|
||||
{"matrix": [1, 3], "x": 3, "y": 1.25},
|
||||
{"matrix": [1, 4], "x": 4, "y": 1.25},
|
||||
{"matrix": [1, 5], "x": 5, "y": 1.25},
|
||||
{"matrix": [1, 6], "x": 6, "y": 1.25},
|
||||
{"matrix": [1, 7], "x": 7, "y": 1.25},
|
||||
{"matrix": [1, 8], "x": 8, "y": 1.25},
|
||||
{"matrix": [1, 9], "x": 9, "y": 1.25},
|
||||
{"matrix": [1, 10], "x": 10, "y": 1.25},
|
||||
{"matrix": [1, 11], "x": 11, "y": 1.25},
|
||||
{"matrix": [1, 12], "x": 12, "y": 1.25},
|
||||
{"matrix": [1, 13], "x": 13, "y": 1.25, "w": 2},
|
||||
|
||||
{"matrix": [1, 14], "x": 15.25, "y": 1.25},
|
||||
{"matrix": [1, 15], "x": 16.25, "y": 1.25},
|
||||
{"matrix": [1, 16], "x": 17.25, "y": 1.25},
|
||||
|
||||
{"matrix": [2, 0], "x": 0, "y": 2.25, "w": 1.5},
|
||||
{"matrix": [2, 1], "x": 1.5, "y": 2.25},
|
||||
{"matrix": [2, 2], "x": 2.5, "y": 2.25},
|
||||
{"matrix": [2, 3], "x": 3.5, "y": 2.25},
|
||||
{"matrix": [2, 4], "x": 4.5, "y": 2.25},
|
||||
{"matrix": [2, 5], "x": 5.5, "y": 2.25},
|
||||
{"matrix": [2, 6], "x": 6.5, "y": 2.25},
|
||||
{"matrix": [2, 7], "x": 7.5, "y": 2.25},
|
||||
{"matrix": [2, 8], "x": 8.5, "y": 2.25},
|
||||
{"matrix": [2, 9], "x": 9.5, "y": 2.25},
|
||||
{"matrix": [2, 10], "x": 10.5, "y": 2.25},
|
||||
{"matrix": [2, 11], "x": 11.5, "y": 2.25},
|
||||
{"matrix": [2, 12], "x": 12.5, "y": 2.25},
|
||||
{"matrix": [2, 13], "x": 13.5, "y": 2.25, "w": 1.5},
|
||||
|
||||
{"matrix": [2, 14], "x": 15.25, "y": 2.25},
|
||||
{"matrix": [2, 15], "x": 16.25, "y": 2.25},
|
||||
{"matrix": [2, 16], "x": 17.25, "y": 2.25},
|
||||
|
||||
{"matrix": [3, 0], "x": 0, "y": 3.25, "w": 1.75},
|
||||
{"matrix": [3, 1], "x": 1.75, "y": 3.25},
|
||||
{"matrix": [3, 2], "x": 2.75, "y": 3.25},
|
||||
{"matrix": [3, 3], "x": 3.75, "y": 3.25},
|
||||
{"matrix": [3, 4], "x": 4.75, "y": 3.25},
|
||||
{"matrix": [3, 5], "x": 5.75, "y": 3.25},
|
||||
{"matrix": [3, 6], "x": 6.75, "y": 3.25},
|
||||
{"matrix": [3, 7], "x": 7.75, "y": 3.25},
|
||||
{"matrix": [3, 8], "x": 8.75, "y": 3.25},
|
||||
{"matrix": [3, 9], "x": 9.75, "y": 3.25},
|
||||
{"matrix": [3, 10], "x": 10.75, "y": 3.25},
|
||||
{"matrix": [3, 11], "x": 11.75, "y": 3.25},
|
||||
{"matrix": [3, 13], "x": 12.75, "y": 3.25, "w": 2.25},
|
||||
|
||||
{"matrix": [4, 0], "x": 0, "y": 4.25, "w": 2.25},
|
||||
{"matrix": [4, 2], "x": 2.25, "y": 4.25},
|
||||
{"matrix": [4, 3], "x": 3.25, "y": 4.25},
|
||||
{"matrix": [4, 4], "x": 4.25, "y": 4.25},
|
||||
{"matrix": [4, 5], "x": 5.25, "y": 4.25},
|
||||
{"matrix": [4, 6], "x": 6.25, "y": 4.25},
|
||||
{"matrix": [4, 7], "x": 7.25, "y": 4.25},
|
||||
{"matrix": [4, 8], "x": 8.25, "y": 4.25},
|
||||
{"matrix": [4, 9], "x": 9.25, "y": 4.25},
|
||||
{"matrix": [4, 10], "x": 10.25, "y": 4.25},
|
||||
{"matrix": [4, 11], "x": 11.25, "y": 4.25},
|
||||
{"matrix": [4, 13], "x": 12.25, "y": 4.25, "w": 2.75},
|
||||
|
||||
{"matrix": [4, 15], "x": 16.25, "y": 4.25},
|
||||
|
||||
{"matrix": [5, 0], "x": 0, "y": 5.25, "w": 1.25},
|
||||
{"matrix": [5, 2], "x": 2.5, "y": 5.25, "w": 1.25},
|
||||
{"matrix": [5, 6], "x": 4, "y": 5.25, "w": 7},
|
||||
{"matrix": [5, 11], "x": 11, "y": 5.25, "w": 1.5},
|
||||
{"matrix": [5, 13], "x": 13.5, "y": 5.25, "w": 1.5},
|
||||
|
||||
{"matrix": [5, 14], "x": 15.25, "y": 5.25},
|
||||
{"matrix": [5, 15], "x": 16.25, "y": 5.25},
|
||||
{"matrix": [5, 16], "x": 17.25, "y": 5.25}
|
||||
]
|
||||
},
|
||||
"LAYOUT_tkl_ansi_wkl_split_bs_rshift": {
|
||||
"layout": [
|
||||
{"matrix": [0, 0], "x": 0, "y": 0},
|
||||
|
||||
{"matrix": [0, 2], "x": 2, "y": 0},
|
||||
{"matrix": [0, 3], "x": 3, "y": 0},
|
||||
{"matrix": [0, 4], "x": 4, "y": 0},
|
||||
{"matrix": [0, 5], "x": 5, "y": 0},
|
||||
|
||||
{"matrix": [0, 6], "x": 6.5, "y": 0},
|
||||
{"matrix": [0, 7], "x": 7.5, "y": 0},
|
||||
{"matrix": [0, 8], "x": 8.5, "y": 0},
|
||||
{"matrix": [0, 9], "x": 9.5, "y": 0},
|
||||
|
||||
{"matrix": [0, 10], "x": 11, "y": 0},
|
||||
{"matrix": [0, 11], "x": 12, "y": 0},
|
||||
{"matrix": [0, 12], "x": 13, "y": 0},
|
||||
{"matrix": [0, 13], "x": 14, "y": 0},
|
||||
|
||||
{"matrix": [0, 14], "x": 15.25, "y": 0},
|
||||
{"matrix": [0, 15], "x": 16.25, "y": 0},
|
||||
{"matrix": [0, 16], "x": 17.25, "y": 0},
|
||||
|
||||
{"matrix": [1, 0], "x": 0, "y": 1.25},
|
||||
{"matrix": [1, 1], "x": 1, "y": 1.25},
|
||||
{"matrix": [1, 2], "x": 2, "y": 1.25},
|
||||
{"matrix": [1, 3], "x": 3, "y": 1.25},
|
||||
{"matrix": [1, 4], "x": 4, "y": 1.25},
|
||||
{"matrix": [1, 5], "x": 5, "y": 1.25},
|
||||
{"matrix": [1, 6], "x": 6, "y": 1.25},
|
||||
{"matrix": [1, 7], "x": 7, "y": 1.25},
|
||||
{"matrix": [1, 8], "x": 8, "y": 1.25},
|
||||
{"matrix": [1, 9], "x": 9, "y": 1.25},
|
||||
{"matrix": [1, 10], "x": 10, "y": 1.25},
|
||||
{"matrix": [1, 11], "x": 11, "y": 1.25},
|
||||
{"matrix": [1, 12], "x": 12, "y": 1.25},
|
||||
{"matrix": [1, 13], "x": 13, "y": 1.25},
|
||||
{"matrix": [3, 12], "x": 14, "y": 1.25},
|
||||
|
||||
{"matrix": [1, 14], "x": 15.25, "y": 1.25},
|
||||
{"matrix": [1, 15], "x": 16.25, "y": 1.25},
|
||||
{"matrix": [1, 16], "x": 17.25, "y": 1.25},
|
||||
|
||||
{"matrix": [2, 0], "x": 0, "y": 2.25, "w": 1.5},
|
||||
{"matrix": [2, 1], "x": 1.5, "y": 2.25},
|
||||
{"matrix": [2, 2], "x": 2.5, "y": 2.25},
|
||||
{"matrix": [2, 3], "x": 3.5, "y": 2.25},
|
||||
{"matrix": [2, 4], "x": 4.5, "y": 2.25},
|
||||
{"matrix": [2, 5], "x": 5.5, "y": 2.25},
|
||||
{"matrix": [2, 6], "x": 6.5, "y": 2.25},
|
||||
{"matrix": [2, 7], "x": 7.5, "y": 2.25},
|
||||
{"matrix": [2, 8], "x": 8.5, "y": 2.25},
|
||||
{"matrix": [2, 9], "x": 9.5, "y": 2.25},
|
||||
{"matrix": [2, 10], "x": 10.5, "y": 2.25},
|
||||
{"matrix": [2, 11], "x": 11.5, "y": 2.25},
|
||||
{"matrix": [2, 12], "x": 12.5, "y": 2.25},
|
||||
{"matrix": [2, 13], "x": 13.5, "y": 2.25, "w": 1.5},
|
||||
|
||||
{"matrix": [2, 14], "x": 15.25, "y": 2.25},
|
||||
{"matrix": [2, 15], "x": 16.25, "y": 2.25},
|
||||
{"matrix": [2, 16], "x": 17.25, "y": 2.25},
|
||||
|
||||
{"matrix": [3, 0], "x": 0, "y": 3.25, "w": 1.75},
|
||||
{"matrix": [3, 1], "x": 1.75, "y": 3.25},
|
||||
{"matrix": [3, 2], "x": 2.75, "y": 3.25},
|
||||
{"matrix": [3, 3], "x": 3.75, "y": 3.25},
|
||||
{"matrix": [3, 4], "x": 4.75, "y": 3.25},
|
||||
{"matrix": [3, 5], "x": 5.75, "y": 3.25},
|
||||
{"matrix": [3, 6], "x": 6.75, "y": 3.25},
|
||||
{"matrix": [3, 7], "x": 7.75, "y": 3.25},
|
||||
{"matrix": [3, 8], "x": 8.75, "y": 3.25},
|
||||
{"matrix": [3, 9], "x": 9.75, "y": 3.25},
|
||||
{"matrix": [3, 10], "x": 10.75, "y": 3.25},
|
||||
{"matrix": [3, 11], "x": 11.75, "y": 3.25},
|
||||
{"matrix": [3, 13], "x": 12.75, "y": 3.25, "w": 2.25},
|
||||
|
||||
{"matrix": [4, 0], "x": 0, "y": 4.25, "w": 2.25},
|
||||
{"matrix": [4, 2], "x": 2.25, "y": 4.25},
|
||||
{"matrix": [4, 3], "x": 3.25, "y": 4.25},
|
||||
{"matrix": [4, 4], "x": 4.25, "y": 4.25},
|
||||
{"matrix": [4, 5], "x": 5.25, "y": 4.25},
|
||||
{"matrix": [4, 6], "x": 6.25, "y": 4.25},
|
||||
{"matrix": [4, 7], "x": 7.25, "y": 4.25},
|
||||
{"matrix": [4, 8], "x": 8.25, "y": 4.25},
|
||||
{"matrix": [4, 9], "x": 9.25, "y": 4.25},
|
||||
{"matrix": [4, 10], "x": 10.25, "y": 4.25},
|
||||
{"matrix": [4, 11], "x": 11.25, "y": 4.25},
|
||||
{"matrix": [4, 12], "x": 12.25, "y": 4.25, "w": 1.75},
|
||||
{"matrix": [4, 13], "x": 14, "y": 4.25},
|
||||
|
||||
{"matrix": [4, 15], "x": 16.25, "y": 4.25},
|
||||
|
||||
{"matrix": [5, 0], "x": 0, "y": 5.25, "w": 1.25},
|
||||
{"matrix": [5, 2], "x": 2.5, "y": 5.25, "w": 1.25},
|
||||
{"matrix": [5, 6], "x": 4, "y": 5.25, "w": 7},
|
||||
{"matrix": [5, 11], "x": 11, "y": 5.25, "w": 1.5},
|
||||
{"matrix": [5, 13], "x": 13.5, "y": 5.25, "w": 1.5},
|
||||
|
||||
{"matrix": [5, 14], "x": 15.25, "y": 5.25},
|
||||
{"matrix": [5, 15], "x": 16.25, "y": 5.25},
|
||||
{"matrix": [5, 16], "x": 17.25, "y": 5.25}
|
||||
]
|
||||
},
|
||||
"LAYOUT_tkl_f13_ansi_wkl": {
|
||||
"layout": [
|
||||
{"matrix": [0, 0], "x": 0, "y": 0},
|
||||
|
||||
{"matrix": [0, 1], "x": 1.25, "y": 0},
|
||||
{"matrix": [0, 2], "x": 2.25, "y": 0},
|
||||
{"matrix": [0, 3], "x": 3.25, "y": 0},
|
||||
{"matrix": [0, 4], "x": 4.25, "y": 0},
|
||||
|
||||
{"matrix": [0, 5], "x": 5.5, "y": 0},
|
||||
{"matrix": [0, 6], "x": 6.5, "y": 0},
|
||||
{"matrix": [0, 7], "x": 7.5, "y": 0},
|
||||
{"matrix": [0, 8], "x": 8.5, "y": 0},
|
||||
|
||||
{"matrix": [0, 9], "x": 9.75, "y": 0},
|
||||
{"matrix": [0, 10], "x": 10.75, "y": 0},
|
||||
{"matrix": [0, 11], "x": 11.75, "y": 0},
|
||||
{"matrix": [0, 12], "x": 12.75, "y": 0},
|
||||
|
||||
{"matrix": [0, 13], "x": 14, "y": 0},
|
||||
|
||||
{"matrix": [0, 14], "x": 15.25, "y": 0},
|
||||
{"matrix": [0, 15], "x": 16.25, "y": 0},
|
||||
{"matrix": [0, 16], "x": 17.25, "y": 0},
|
||||
|
||||
{"matrix": [1, 0], "x": 0, "y": 1.25},
|
||||
{"matrix": [1, 1], "x": 1, "y": 1.25},
|
||||
{"matrix": [1, 2], "x": 2, "y": 1.25},
|
||||
{"matrix": [1, 3], "x": 3, "y": 1.25},
|
||||
{"matrix": [1, 4], "x": 4, "y": 1.25},
|
||||
{"matrix": [1, 5], "x": 5, "y": 1.25},
|
||||
{"matrix": [1, 6], "x": 6, "y": 1.25},
|
||||
{"matrix": [1, 7], "x": 7, "y": 1.25},
|
||||
{"matrix": [1, 8], "x": 8, "y": 1.25},
|
||||
{"matrix": [1, 9], "x": 9, "y": 1.25},
|
||||
{"matrix": [1, 10], "x": 10, "y": 1.25},
|
||||
{"matrix": [1, 11], "x": 11, "y": 1.25},
|
||||
{"matrix": [1, 12], "x": 12, "y": 1.25},
|
||||
{"matrix": [1, 13], "x": 13, "y": 1.25, "w": 2},
|
||||
|
||||
{"matrix": [1, 14], "x": 15.25, "y": 1.25},
|
||||
{"matrix": [1, 15], "x": 16.25, "y": 1.25},
|
||||
{"matrix": [1, 16], "x": 17.25, "y": 1.25},
|
||||
|
||||
{"matrix": [2, 0], "x": 0, "y": 2.25, "w": 1.5},
|
||||
{"matrix": [2, 1], "x": 1.5, "y": 2.25},
|
||||
{"matrix": [2, 2], "x": 2.5, "y": 2.25},
|
||||
{"matrix": [2, 3], "x": 3.5, "y": 2.25},
|
||||
{"matrix": [2, 4], "x": 4.5, "y": 2.25},
|
||||
{"matrix": [2, 5], "x": 5.5, "y": 2.25},
|
||||
{"matrix": [2, 6], "x": 6.5, "y": 2.25},
|
||||
{"matrix": [2, 7], "x": 7.5, "y": 2.25},
|
||||
{"matrix": [2, 8], "x": 8.5, "y": 2.25},
|
||||
{"matrix": [2, 9], "x": 9.5, "y": 2.25},
|
||||
{"matrix": [2, 10], "x": 10.5, "y": 2.25},
|
||||
{"matrix": [2, 11], "x": 11.5, "y": 2.25},
|
||||
{"matrix": [2, 12], "x": 12.5, "y": 2.25},
|
||||
{"matrix": [2, 13], "x": 13.5, "y": 2.25, "w": 1.5},
|
||||
|
||||
{"matrix": [2, 14], "x": 15.25, "y": 2.25},
|
||||
{"matrix": [2, 15], "x": 16.25, "y": 2.25},
|
||||
{"matrix": [2, 16], "x": 17.25, "y": 2.25},
|
||||
|
||||
{"matrix": [3, 0], "x": 0, "y": 3.25, "w": 1.75},
|
||||
{"matrix": [3, 1], "x": 1.75, "y": 3.25},
|
||||
{"matrix": [3, 2], "x": 2.75, "y": 3.25},
|
||||
{"matrix": [3, 3], "x": 3.75, "y": 3.25},
|
||||
{"matrix": [3, 4], "x": 4.75, "y": 3.25},
|
||||
{"matrix": [3, 5], "x": 5.75, "y": 3.25},
|
||||
{"matrix": [3, 6], "x": 6.75, "y": 3.25},
|
||||
{"matrix": [3, 7], "x": 7.75, "y": 3.25},
|
||||
{"matrix": [3, 8], "x": 8.75, "y": 3.25},
|
||||
{"matrix": [3, 9], "x": 9.75, "y": 3.25},
|
||||
{"matrix": [3, 10], "x": 10.75, "y": 3.25},
|
||||
{"matrix": [3, 11], "x": 11.75, "y": 3.25},
|
||||
{"matrix": [3, 13], "x": 12.75, "y": 3.25, "w": 2.25},
|
||||
|
||||
{"matrix": [4, 0], "x": 0, "y": 4.25, "w": 2.25},
|
||||
{"matrix": [4, 2], "x": 2.25, "y": 4.25},
|
||||
{"matrix": [4, 3], "x": 3.25, "y": 4.25},
|
||||
{"matrix": [4, 4], "x": 4.25, "y": 4.25},
|
||||
{"matrix": [4, 5], "x": 5.25, "y": 4.25},
|
||||
{"matrix": [4, 6], "x": 6.25, "y": 4.25},
|
||||
{"matrix": [4, 7], "x": 7.25, "y": 4.25},
|
||||
{"matrix": [4, 8], "x": 8.25, "y": 4.25},
|
||||
{"matrix": [4, 9], "x": 9.25, "y": 4.25},
|
||||
{"matrix": [4, 10], "x": 10.25, "y": 4.25},
|
||||
{"matrix": [4, 11], "x": 11.25, "y": 4.25},
|
||||
{"matrix": [4, 13], "x": 12.25, "y": 4.25, "w": 2.75},
|
||||
|
||||
{"matrix": [4, 15], "x": 16.25, "y": 4.25},
|
||||
|
||||
{"matrix": [5, 0], "x": 0, "y": 5.25, "w": 1.25},
|
||||
{"matrix": [5, 2], "x": 2.5, "y": 5.25, "w": 1.25},
|
||||
{"matrix": [5, 6], "x": 4, "y": 5.25, "w": 7},
|
||||
{"matrix": [5, 11], "x": 11, "y": 5.25, "w": 1.5},
|
||||
{"matrix": [5, 13], "x": 13.5, "y": 5.25, "w": 1.5},
|
||||
|
||||
{"matrix": [5, 14], "x": 15.25, "y": 5.25},
|
||||
{"matrix": [5, 15], "x": 16.25, "y": 5.25},
|
||||
{"matrix": [5, 16], "x": 17.25, "y": 5.25}
|
||||
]
|
||||
},
|
||||
"LAYOUT_tkl_f13_ansi_wkl_split_bs_rshift": {
|
||||
"layout": [
|
||||
{"matrix": [0, 0], "x": 0, "y": 0},
|
||||
|
||||
{"matrix": [0, 1], "x": 1.25, "y": 0},
|
||||
{"matrix": [0, 2], "x": 2.25, "y": 0},
|
||||
{"matrix": [0, 3], "x": 3.25, "y": 0},
|
||||
{"matrix": [0, 4], "x": 4.25, "y": 0},
|
||||
|
||||
{"matrix": [0, 5], "x": 5.5, "y": 0},
|
||||
{"matrix": [0, 6], "x": 6.5, "y": 0},
|
||||
{"matrix": [0, 7], "x": 7.5, "y": 0},
|
||||
{"matrix": [0, 8], "x": 8.5, "y": 0},
|
||||
|
||||
{"matrix": [0, 9], "x": 9.75, "y": 0},
|
||||
{"matrix": [0, 10], "x": 10.75, "y": 0},
|
||||
{"matrix": [0, 11], "x": 11.75, "y": 0},
|
||||
{"matrix": [0, 12], "x": 12.75, "y": 0},
|
||||
|
||||
{"matrix": [0, 13], "x": 14, "y": 0},
|
||||
|
||||
{"matrix": [0, 14], "x": 15.25, "y": 0},
|
||||
{"matrix": [0, 15], "x": 16.25, "y": 0},
|
||||
{"matrix": [0, 16], "x": 17.25, "y": 0},
|
||||
|
||||
{"matrix": [1, 0], "x": 0, "y": 1.25},
|
||||
{"matrix": [1, 1], "x": 1, "y": 1.25},
|
||||
{"matrix": [1, 2], "x": 2, "y": 1.25},
|
||||
{"matrix": [1, 3], "x": 3, "y": 1.25},
|
||||
{"matrix": [1, 4], "x": 4, "y": 1.25},
|
||||
{"matrix": [1, 5], "x": 5, "y": 1.25},
|
||||
{"matrix": [1, 6], "x": 6, "y": 1.25},
|
||||
{"matrix": [1, 7], "x": 7, "y": 1.25},
|
||||
{"matrix": [1, 8], "x": 8, "y": 1.25},
|
||||
{"matrix": [1, 9], "x": 9, "y": 1.25},
|
||||
{"matrix": [1, 10], "x": 10, "y": 1.25},
|
||||
{"matrix": [1, 11], "x": 11, "y": 1.25},
|
||||
{"matrix": [1, 12], "x": 12, "y": 1.25},
|
||||
{"matrix": [1, 13], "x": 13, "y": 1.25},
|
||||
{"matrix": [3, 12], "x": 14, "y": 1.25},
|
||||
|
||||
{"matrix": [1, 14], "x": 15.25, "y": 1.25},
|
||||
{"matrix": [1, 15], "x": 16.25, "y": 1.25},
|
||||
{"matrix": [1, 16], "x": 17.25, "y": 1.25},
|
||||
|
||||
{"matrix": [2, 0], "x": 0, "y": 2.25, "w": 1.5},
|
||||
{"matrix": [2, 1], "x": 1.5, "y": 2.25},
|
||||
{"matrix": [2, 2], "x": 2.5, "y": 2.25},
|
||||
{"matrix": [2, 3], "x": 3.5, "y": 2.25},
|
||||
{"matrix": [2, 4], "x": 4.5, "y": 2.25},
|
||||
{"matrix": [2, 5], "x": 5.5, "y": 2.25},
|
||||
{"matrix": [2, 6], "x": 6.5, "y": 2.25},
|
||||
{"matrix": [2, 7], "x": 7.5, "y": 2.25},
|
||||
{"matrix": [2, 8], "x": 8.5, "y": 2.25},
|
||||
{"matrix": [2, 9], "x": 9.5, "y": 2.25},
|
||||
{"matrix": [2, 10], "x": 10.5, "y": 2.25},
|
||||
{"matrix": [2, 11], "x": 11.5, "y": 2.25},
|
||||
{"matrix": [2, 12], "x": 12.5, "y": 2.25},
|
||||
{"matrix": [2, 13], "x": 13.5, "y": 2.25, "w": 1.5},
|
||||
|
||||
{"matrix": [2, 14], "x": 15.25, "y": 2.25},
|
||||
{"matrix": [2, 15], "x": 16.25, "y": 2.25},
|
||||
{"matrix": [2, 16], "x": 17.25, "y": 2.25},
|
||||
|
||||
{"matrix": [3, 0], "x": 0, "y": 3.25, "w": 1.75},
|
||||
{"matrix": [3, 1], "x": 1.75, "y": 3.25},
|
||||
{"matrix": [3, 2], "x": 2.75, "y": 3.25},
|
||||
{"matrix": [3, 3], "x": 3.75, "y": 3.25},
|
||||
{"matrix": [3, 4], "x": 4.75, "y": 3.25},
|
||||
{"matrix": [3, 5], "x": 5.75, "y": 3.25},
|
||||
{"matrix": [3, 6], "x": 6.75, "y": 3.25},
|
||||
{"matrix": [3, 7], "x": 7.75, "y": 3.25},
|
||||
{"matrix": [3, 8], "x": 8.75, "y": 3.25},
|
||||
{"matrix": [3, 9], "x": 9.75, "y": 3.25},
|
||||
{"matrix": [3, 10], "x": 10.75, "y": 3.25},
|
||||
{"matrix": [3, 11], "x": 11.75, "y": 3.25},
|
||||
{"matrix": [3, 13], "x": 12.75, "y": 3.25, "w": 2.25},
|
||||
|
||||
{"matrix": [4, 0], "x": 0, "y": 4.25, "w": 2.25},
|
||||
{"matrix": [4, 2], "x": 2.25, "y": 4.25},
|
||||
{"matrix": [4, 3], "x": 3.25, "y": 4.25},
|
||||
{"matrix": [4, 4], "x": 4.25, "y": 4.25},
|
||||
{"matrix": [4, 5], "x": 5.25, "y": 4.25},
|
||||
{"matrix": [4, 6], "x": 6.25, "y": 4.25},
|
||||
{"matrix": [4, 7], "x": 7.25, "y": 4.25},
|
||||
{"matrix": [4, 8], "x": 8.25, "y": 4.25},
|
||||
{"matrix": [4, 9], "x": 9.25, "y": 4.25},
|
||||
{"matrix": [4, 10], "x": 10.25, "y": 4.25},
|
||||
{"matrix": [4, 11], "x": 11.25, "y": 4.25},
|
||||
{"matrix": [4, 12], "x": 12.25, "y": 4.25, "w": 1.75},
|
||||
{"matrix": [4, 13], "x": 14, "y": 4.25},
|
||||
|
||||
{"matrix": [4, 15], "x": 16.25, "y": 4.25},
|
||||
|
||||
{"matrix": [5, 0], "x": 0, "y": 5.25, "w": 1.25},
|
||||
{"matrix": [5, 2], "x": 2.5, "y": 5.25, "w": 1.25},
|
||||
{"matrix": [5, 6], "x": 4, "y": 5.25, "w": 7},
|
||||
{"matrix": [5, 11], "x": 11, "y": 5.25, "w": 1.5},
|
||||
{"matrix": [5, 13], "x": 13.5, "y": 5.25, "w": 1.5},
|
||||
|
||||
{"matrix": [5, 14], "x": 15.25, "y": 5.25},
|
||||
{"matrix": [5, 15], "x": 16.25, "y": 5.25},
|
||||
{"matrix": [5, 16], "x": 17.25, "y": 5.25}
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
||||
45
keyboards/deemen17/de80/keymaps/default/keymap.c
Normal file
45
keyboards/deemen17/de80/keymaps/default/keymap.c
Normal file
@@ -0,0 +1,45 @@
|
||||
/* Copyright 2024 Deemen17 Works
|
||||
*
|
||||
* 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_all(
|
||||
KC_ESC, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_F13, KC_PSCR, KC_SCRL, KC_PAUS,
|
||||
KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSPC, KC_DEL, KC_INS, KC_HOME, KC_PGUP,
|
||||
KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSLS, KC_DEL, KC_END, KC_PGDN,
|
||||
KC_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT,
|
||||
KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_LSFT, KC_LSFT, KC_UP,
|
||||
KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_LALT, MO(1), KC_LCTL, KC_LEFT, KC_DOWN, KC_RGHT
|
||||
),
|
||||
|
||||
[1] = 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, RGB_SAI, RGB_HUI,
|
||||
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RGB_SAD, RGB_HUD,
|
||||
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RGB_TOG,
|
||||
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RGB_VAI,
|
||||
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RGB_RMOD, RGB_VAD, RGB_MOD
|
||||
)
|
||||
|
||||
};
|
||||
|
||||
#if defined(ENCODER_MAP_ENABLE)
|
||||
const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][NUM_DIRECTIONS] = {
|
||||
[0] = { ENCODER_CCW_CW(KC_VOLD, KC_VOLU) },
|
||||
[1] = { ENCODER_CCW_CW(KC_VOLD, KC_VOLU) },
|
||||
};
|
||||
#endif
|
||||
1
keyboards/deemen17/de80/keymaps/default/rules.mk
Normal file
1
keyboards/deemen17/de80/keymaps/default/rules.mk
Normal file
@@ -0,0 +1 @@
|
||||
ENCODER_MAP_ENABLE = yes
|
||||
23
keyboards/deemen17/de80/mcuconf.h
Normal file
23
keyboards/deemen17/de80/mcuconf.h
Normal file
@@ -0,0 +1,23 @@
|
||||
/* Copyright 2022 QMK
|
||||
*
|
||||
* This program is free software: you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation, either version 2 of the License, or
|
||||
* (at your option) any later version.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
#pragma once
|
||||
|
||||
#include_next <mcuconf.h>
|
||||
|
||||
|
||||
#undef STM32_SPI_USE_SPI2
|
||||
#define STM32_SPI_USE_SPI2 TRUE
|
||||
27
keyboards/deemen17/de80/readme.md
Normal file
27
keyboards/deemen17/de80/readme.md
Normal file
@@ -0,0 +1,27 @@
|
||||
# DE80
|
||||
|
||||

|
||||
|
||||
The DE80 is a portable TKL PCB that features a compact A87 form factor, dual USB Type C ports (breakable), seven JST SH 4P 1.0 ports, two FPC ports, and compatibility with both F12 and F13 footprints, making it suitable for use with a variety of TKL boards.
|
||||
|
||||
* Keyboard Maintainer: [Deemen17](https://github.com/Deemen17)
|
||||
* Hardware Supported: DE80 R1 2024 PCB w/ STM32F103 MCU
|
||||
* Hardware Availability: [Deemen17 Facebook Page](https://www.facebook.com/deemen17/), [Deemen17 Works Instagram](https://www.instagram.com/deemen17.works)
|
||||
|
||||
Make example for this keyboard (after setting up your build environment):
|
||||
|
||||
make deemen17/de80:default
|
||||
|
||||
Flashing example for this keyboard:
|
||||
|
||||
make deemen17/de80: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 (ESC/Escape) and plug in the keyboard
|
||||
* **Physical reset button**: Double tap the button RESET on the back of the PCB
|
||||
* **Keycode in layout**: Press the key mapped to `QK_BOOT` if it is available
|
||||
123
keyboards/doio/kb09/keyboard.json
Normal file
123
keyboards/doio/kb09/keyboard.json
Normal file
@@ -0,0 +1,123 @@
|
||||
{
|
||||
"manufacturer": "DOIO",
|
||||
"keyboard_name": "KB09-01",
|
||||
"maintainer": "DOIO2022",
|
||||
"bootloader": "stm32duino",
|
||||
"diode_direction": "COL2ROW",
|
||||
"encoder": {
|
||||
"rotary": [
|
||||
{"pin_a": "B5", "pin_b": "B6"},
|
||||
{"pin_a": "A1", "pin_b": "A2"}
|
||||
]
|
||||
},
|
||||
"features": {
|
||||
"bootmagic": true,
|
||||
"command": false,
|
||||
"console": false,
|
||||
"encoder": true,
|
||||
"extrakey": true,
|
||||
"mousekey": true,
|
||||
"nkro": true,
|
||||
"rgb_matrix": true
|
||||
},
|
||||
"matrix_pins": {
|
||||
"cols": ["B14", "B13", "B12", "B0", "A7"],
|
||||
"rows": ["B3", "B4", "B9", "B8"]
|
||||
},
|
||||
"processor": "STM32F103",
|
||||
"rgb_matrix": {
|
||||
"animations": {
|
||||
"alphas_mods": true,
|
||||
"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_fractal": true,
|
||||
"pixel_rain": true,
|
||||
"rainbow_beacon": true,
|
||||
"rainbow_moving_chevron": true,
|
||||
"rainbow_pinwheels": true,
|
||||
"raindrops": true,
|
||||
"solid_multisplash": true,
|
||||
"solid_reactive": true,
|
||||
"solid_reactive_cross": true,
|
||||
"solid_reactive_multicross": true,
|
||||
"solid_reactive_multinexus": true,
|
||||
"solid_reactive_multiwide": true,
|
||||
"solid_reactive_nexus": true,
|
||||
"solid_reactive_simple": true,
|
||||
"solid_reactive_wide": true,
|
||||
"solid_splash": true,
|
||||
"splash": true,
|
||||
"typing_heatmap": true
|
||||
},
|
||||
"default": {
|
||||
"animation": "cycle_up_down"
|
||||
},
|
||||
"driver": "ws2812",
|
||||
"layout": [
|
||||
{"matrix": [0, 0], "x": 0, "y": 0, "flags": 4},
|
||||
{"matrix": [0, 1], "x": 56, "y": 0, "flags": 4},
|
||||
{"matrix": [0, 2], "x": 112, "y": 0, "flags": 4},
|
||||
{"matrix": [1, 0], "x": 0, "y": 21, "flags": 4},
|
||||
{"matrix": [1, 1], "x": 56, "y": 21, "flags": 4},
|
||||
{"matrix": [1, 2], "x": 112, "y": 21, "flags": 4},
|
||||
{"matrix": [2, 0], "x": 0, "y": 42, "flags": 4},
|
||||
{"matrix": [2, 1], "x": 56, "y": 42, "flags": 4},
|
||||
{"matrix": [2, 2], "x": 112, "y": 42, "flags": 4}
|
||||
],
|
||||
"max_brightness": 200,
|
||||
"sleep": true
|
||||
},
|
||||
"url": "",
|
||||
"usb": {
|
||||
"device_version": "0.0.1",
|
||||
"pid": "0x0901",
|
||||
"vid": "0xD010"
|
||||
},
|
||||
"ws2812": {
|
||||
"pin": "A10"
|
||||
},
|
||||
"layouts": {
|
||||
"LAYOUT": {
|
||||
"layout": [
|
||||
{"matrix": [1, 3], "x": 1, "y": 0},
|
||||
{"matrix": [0, 0], "x": 4, "y": 0},
|
||||
{"matrix": [0, 1], "x": 5, "y": 0},
|
||||
{"matrix": [0, 2], "x": 6, "y": 0},
|
||||
{"matrix": [0, 4], "x": 8, "y": 0},
|
||||
{"matrix": [1, 4], "x": 9, "y": 0},
|
||||
{"matrix": [0, 3], "x": 0, "y": 1},
|
||||
{"matrix": [2, 3], "x": 2, "y": 1},
|
||||
{"matrix": [1, 0], "x": 4, "y": 1},
|
||||
{"matrix": [1, 1], "x": 5, "y": 1},
|
||||
{"matrix": [1, 2], "x": 6, "y": 1},
|
||||
{"matrix": [3, 0], "x": 1, "y": 2},
|
||||
{"matrix": [2, 0], "x": 4, "y": 2},
|
||||
{"matrix": [2, 1], "x": 5, "y": 2},
|
||||
{"matrix": [2, 2], "x": 6, "y": 2},
|
||||
{"matrix": [3, 1], "x": 3, "y": 3},
|
||||
{"matrix": [3, 2], "x": 3, "y": 3}
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
||||
58
keyboards/doio/kb09/keymaps/default/keymap.c
Normal file
58
keyboards/doio/kb09/keymaps/default/keymap.c
Normal file
@@ -0,0 +1,58 @@
|
||||
/* Copyright 2022 DOIO
|
||||
* Copyright 2022 DOIO2022 <https://github.com/DOIO2022>
|
||||
*
|
||||
* This program is free software: you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation, either version 2 of the License, or
|
||||
* (at your option) any later version.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
|
||||
#include QMK_KEYBOARD_H
|
||||
|
||||
enum layer_names {
|
||||
_LAY0,
|
||||
_LAY1,
|
||||
_LAY2,
|
||||
_LAY3
|
||||
};
|
||||
|
||||
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
||||
[_LAY0] = LAYOUT(
|
||||
KC_UP, KC_1, KC_2, KC_3, KC_MPLY, KC_MUTE,
|
||||
KC_LEFT, KC_RIGHT, KC_4, KC_5, KC_6,
|
||||
KC_DOWN, KC_7, KC_8, KC_9,
|
||||
TO(1), LWIN(KC_D)),
|
||||
[_LAY1] = LAYOUT(
|
||||
KC_TRNS, C(S(KC_S)), C(KC_H), C(KC_G), KC_TRNS, KC_TRNS,
|
||||
KC_TRNS, KC_TRNS, C(S(KC_A)), C(KC_J), C(S(KC_G)),
|
||||
KC_TRNS, C(KC_Z), KC_DEL, C(A(S(KC_E))),
|
||||
TO(2), KC_TRNS),
|
||||
[_LAY2] = LAYOUT(
|
||||
KC_TRNS, S(KC_I), A(KC_EQL), C(S(KC_M)), KC_TRNS, KC_TRNS,
|
||||
KC_TRNS, KC_TRNS, S(KC_O), A(KC_MINS), S(KC_M),
|
||||
KC_TRNS, KC_C, KC_V, C(KC_M),
|
||||
TO(3), KC_TRNS),
|
||||
[_LAY3] = LAYOUT(
|
||||
KC_TRNS, RGB_SPI, RGB_SPD, RGB_HUI, KC_TRNS, KC_TRNS,
|
||||
KC_TRNS, KC_TRNS, RGB_SAI, RGB_SAD, RGB_HUD,
|
||||
KC_TRNS, RGB_MOD, RGB_VAI, RGB_VAD,
|
||||
TO(0), KC_TRNS)
|
||||
};
|
||||
|
||||
#ifdef ENCODER_MAP_ENABLE
|
||||
const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][NUM_DIRECTIONS] = {
|
||||
[_LAY0] = { ENCODER_CCW_CW(KC_MPRV, KC_MNXT), ENCODER_CCW_CW(KC_VOLD, KC_VOLU) },
|
||||
[_LAY1] = { ENCODER_CCW_CW(KC_TRNS, KC_TRNS), ENCODER_CCW_CW(KC_TRNS, KC_TRNS) },
|
||||
[_LAY2] = { ENCODER_CCW_CW(KC_TRNS, KC_TRNS), ENCODER_CCW_CW(KC_TRNS, KC_TRNS) },
|
||||
[_LAY3] = { ENCODER_CCW_CW(KC_TRNS, KC_TRNS), ENCODER_CCW_CW(KC_TRNS, KC_TRNS) },
|
||||
};
|
||||
#endif
|
||||
26
keyboards/doio/kb09/readme.md
Normal file
26
keyboards/doio/kb09/readme.md
Normal file
@@ -0,0 +1,26 @@
|
||||
# doio/kb09
|
||||
|
||||

|
||||
|
||||
QMK for DOIO GBA keypad .
|
||||
|
||||
* Keyboard Maintainer: DOIO2022
|
||||
* Hardware Supported: DOIO GBA keypad
|
||||
|
||||
Make example for this keyboard (after setting up your build environment):
|
||||
|
||||
make doio/kb09:default
|
||||
|
||||
Flashing example for this keyboard:
|
||||
|
||||
make doio/kb09: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
|
||||
* **Keycode in layout**: Press the key mapped to `QK_BOOT` if it is available
|
||||
@@ -136,7 +136,7 @@
|
||||
{"matrix": [0, 10], "x": 10, "y": 0},
|
||||
{"matrix": [0, 11], "x": 11, "y": 0},
|
||||
{"matrix": [0, 12], "x": 12, "y": 0},
|
||||
{"matrix": [0, 14], "x": 13, "y": 0, "w": 2},
|
||||
{"matrix": [0, 13], "x": 13, "y": 0, "w": 2},
|
||||
{"matrix": [0, 15], "x": 15, "y": 0},
|
||||
{"matrix": [1, 0], "x": 0, "y": 1, "w": 1.5},
|
||||
{"matrix": [1, 1], "x": 1.5, "y": 1},
|
||||
@@ -279,7 +279,7 @@
|
||||
{"matrix": [0, 10], "x": 10, "y": 0},
|
||||
{"matrix": [0, 11], "x": 11, "y": 0},
|
||||
{"matrix": [0, 12], "x": 12, "y": 0},
|
||||
{"matrix": [0, 14], "x": 13, "y": 0, "w": 2},
|
||||
{"matrix": [0, 13], "x": 13, "y": 0, "w": 2},
|
||||
{"matrix": [0, 15], "x": 15, "y": 0},
|
||||
{"matrix": [1, 0], "x": 0, "y": 1, "w": 1.5},
|
||||
{"matrix": [1, 1], "x": 1.5, "y": 1},
|
||||
@@ -420,7 +420,7 @@
|
||||
{"matrix": [0, 10], "x": 10, "y": 0},
|
||||
{"matrix": [0, 11], "x": 11, "y": 0},
|
||||
{"matrix": [0, 12], "x": 12, "y": 0},
|
||||
{"matrix": [0, 14], "x": 13, "y": 0, "w": 2},
|
||||
{"matrix": [0, 13], "x": 13, "y": 0, "w": 2},
|
||||
{"matrix": [0, 15], "x": 15, "y": 0},
|
||||
{"matrix": [1, 0], "x": 0, "y": 1, "w": 1.5},
|
||||
{"matrix": [1, 1], "x": 1.5, "y": 1},
|
||||
@@ -565,7 +565,7 @@
|
||||
{"matrix": [0, 10], "x": 10, "y": 0},
|
||||
{"matrix": [0, 11], "x": 11, "y": 0},
|
||||
{"matrix": [0, 12], "x": 12, "y": 0},
|
||||
{"matrix": [0, 14], "x": 13, "y": 0, "w": 2},
|
||||
{"matrix": [0, 13], "x": 13, "y": 0, "w": 2},
|
||||
{"matrix": [0, 15], "x": 15, "y": 0},
|
||||
{"matrix": [1, 0], "x": 0, "y": 1, "w": 1.5},
|
||||
{"matrix": [1, 1], "x": 1.5, "y": 1},
|
||||
|
||||
15
keyboards/era/sirind/tomak79h/config.h
Normal file
15
keyboards/era/sirind/tomak79h/config.h
Normal file
@@ -0,0 +1,15 @@
|
||||
// Copyright 2024 Hyojin Bak (@eerraa)
|
||||
// SPDX-License-Identifier: GPL-2.0-or-later
|
||||
|
||||
#pragma once
|
||||
|
||||
/* Split configuration */
|
||||
#define USB_VBUS_PIN GP19
|
||||
#define SERIAL_USART_FULL_DUPLEX
|
||||
#define SERIAL_USART_TX_PIN GP0
|
||||
#define SERIAL_USART_RX_PIN GP1
|
||||
#define SERIAL_USART_PIN_SWAP
|
||||
|
||||
/* Reset */
|
||||
#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET
|
||||
#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET_TIMEOUT 1000U
|
||||
393
keyboards/era/sirind/tomak79h/keyboard.json
Normal file
393
keyboards/era/sirind/tomak79h/keyboard.json
Normal file
@@ -0,0 +1,393 @@
|
||||
{
|
||||
"manufacturer": "SIRIND",
|
||||
"keyboard_name": "Tomak79H",
|
||||
"maintainer": "eerraa",
|
||||
"bootloader": "rp2040",
|
||||
"build": {
|
||||
"debounce_type": "sym_defer_pk"
|
||||
},
|
||||
"diode_direction": "COL2ROW",
|
||||
"features": {
|
||||
"bootmagic": true,
|
||||
"extrakey": true,
|
||||
"mousekey": true,
|
||||
"nkro": true,
|
||||
"rgb_matrix": true
|
||||
},
|
||||
"matrix_pins": {
|
||||
"cols": ["GP29", "GP9", "GP7", "GP6", "GP5", "GP4", "GP3", "GP2", null],
|
||||
"rows": ["GP24", "GP8", "GP26", "GP25", "GP27", "GP28"]
|
||||
},
|
||||
"processor": "RP2040",
|
||||
"rgb_matrix": {
|
||||
"animations": {
|
||||
"alphas_mods": true,
|
||||
"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,
|
||||
"flower_blooming": 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,
|
||||
"riverflow": true,
|
||||
"solid_multisplash": true,
|
||||
"solid_reactive": true,
|
||||
"solid_reactive_cross": true,
|
||||
"solid_reactive_multicross": true,
|
||||
"solid_reactive_multinexus": true,
|
||||
"solid_reactive_multiwide": true,
|
||||
"solid_reactive_nexus": true,
|
||||
"solid_reactive_simple": true,
|
||||
"solid_reactive_wide": true,
|
||||
"solid_splash": true,
|
||||
"splash": true,
|
||||
"starlight": true,
|
||||
"starlight_dual_hue": true,
|
||||
"starlight_dual_sat": true,
|
||||
"typing_heatmap": true
|
||||
},
|
||||
"driver": "ws2812",
|
||||
"layout": [
|
||||
{"matrix": [0, 0], "x": 0, "y": 0, "flags": 1},
|
||||
{"matrix": [0, 2], "x": 20, "y": 0, "flags": 4},
|
||||
{"matrix": [0, 3], "x": 33, "y": 0, "flags": 4},
|
||||
{"matrix": [0, 4], "x": 47, "y": 0, "flags": 4},
|
||||
{"matrix": [0, 5], "x": 60, "y": 0, "flags": 4},
|
||||
{"matrix": [0, 6], "x": 80, "y": 0, "flags": 4},
|
||||
{"matrix": [0, 7], "x": 93, "y": 0, "flags": 4},
|
||||
{"matrix": [1, 7], "x": 95, "y": 15, "flags": 4},
|
||||
{"matrix": [1, 6], "x": 81, "y": 15, "flags": 4},
|
||||
{"matrix": [1, 5], "x": 68, "y": 15, "flags": 4},
|
||||
{"matrix": [1, 4], "x": 54, "y": 15, "flags": 4},
|
||||
{"matrix": [1, 3], "x": 41, "y": 15, "flags": 4},
|
||||
{"matrix": [1, 2], "x": 27, "y": 15, "flags": 4},
|
||||
{"matrix": [1, 1], "x": 14, "y": 15, "flags": 4},
|
||||
{"matrix": [1, 0], "x": 0, "y": 15, "flags": 4},
|
||||
{"matrix": [2, 0], "x": 3, "y": 26, "flags": 1},
|
||||
{"matrix": [2, 1], "x": 20, "y": 26, "flags": 4},
|
||||
{"matrix": [2, 2], "x": 34, "y": 26, "flags": 4},
|
||||
{"matrix": [2, 3], "x": 47, "y": 26, "flags": 4},
|
||||
{"matrix": [2, 4], "x": 61, "y": 26, "flags": 4},
|
||||
{"matrix": [2, 5], "x": 75, "y": 26, "flags": 4},
|
||||
{"matrix": [2, 6], "x": 88, "y": 26, "flags": 4},
|
||||
{"matrix": [3, 6], "x": 92, "y": 38, "flags": 4},
|
||||
{"matrix": [3, 5], "x": 78, "y": 38, "flags": 4},
|
||||
{"matrix": [3, 4], "x": 64, "y": 38, "flags": 4},
|
||||
{"matrix": [3, 3], "x": 51, "y": 38, "flags": 4},
|
||||
{"matrix": [3, 2], "x": 37, "y": 38, "flags": 4},
|
||||
{"matrix": [3, 1], "x": 24, "y": 38, "flags": 4},
|
||||
{"matrix": [3, 0], "x": 5, "y": 38, "flags": 1},
|
||||
{"matrix": [3, 0], "x": 2, "y": 38, "flags": 1},
|
||||
{"matrix": [4, 0], "x": 8, "y": 49, "flags": 1},
|
||||
{"matrix": [4, 2], "x": 31, "y": 49, "flags": 4},
|
||||
{"matrix": [4, 3], "x": 44, "y": 49, "flags": 4},
|
||||
{"matrix": [4, 4], "x": 58, "y": 49, "flags": 4},
|
||||
{"matrix": [4, 5], "x": 71, "y": 49, "flags": 4},
|
||||
{"matrix": [4, 6], "x": 85, "y": 49, "flags": 4},
|
||||
{"matrix": [5, 6], "x": 93, "y": 64, "flags": 1},
|
||||
{"matrix": [5, 5], "x": 71, "y": 64, "flags": 4},
|
||||
{"matrix": [5, 2], "x": 37, "y": 61, "flags": 1},
|
||||
{"matrix": [5, 1], "x": 20, "y": 61, "flags": 1},
|
||||
{"matrix": [5, 0], "x": 3, "y": 61, "flags": 1},
|
||||
{"matrix": [6, 8], "x": 221, "y": 0, "flags": 4},
|
||||
{"matrix": [6, 7], "x": 205, "y": 0, "flags": 4},
|
||||
{"matrix": [6, 5], "x": 185, "y": 0, "flags": 4},
|
||||
{"matrix": [6, 4], "x": 171, "y": 0, "flags": 4},
|
||||
{"matrix": [6, 3], "x": 158, "y": 0, "flags": 4},
|
||||
{"matrix": [6, 2], "x": 144, "y": 0, "flags": 4},
|
||||
{"matrix": [6, 1], "x": 124, "y": 0, "flags": 4},
|
||||
{"matrix": [6, 0], "x": 111, "y": 0, "flags": 4},
|
||||
{"matrix": [7, 0], "x": 109, "y": 15, "flags": 4},
|
||||
{"matrix": [7, 1], "x": 123, "y": 15, "flags": 4},
|
||||
{"matrix": [7, 2], "x": 136, "y": 15, "flags": 4},
|
||||
{"matrix": [7, 3], "x": 150, "y": 15, "flags": 4},
|
||||
{"matrix": [7, 4], "x": 163, "y": 15, "flags": 4},
|
||||
{"matrix": [7, 5], "x": 177, "y": 15, "flags": 4},
|
||||
{"matrix": [7, 7], "x": 197, "y": 15, "flags": 1},
|
||||
{"matrix": [7, 8], "x": 221, "y": 15, "flags": 1},
|
||||
{"matrix": [8, 8], "x": 221, "y": 26, "flags": 4},
|
||||
{"matrix": [8, 7], "x": 200, "y": 26, "flags": 4},
|
||||
{"matrix": [8, 6], "x": 184, "y": 26, "flags": 4},
|
||||
{"matrix": [8, 5], "x": 170, "y": 26, "flags": 4},
|
||||
{"matrix": [8, 4], "x": 157, "y": 26, "flags": 4},
|
||||
{"matrix": [8, 3], "x": 143, "y": 26, "flags": 4},
|
||||
{"matrix": [8, 2], "x": 130, "y": 26, "flags": 4},
|
||||
{"matrix": [8, 1], "x": 116, "y": 26, "flags": 4},
|
||||
{"matrix": [8, 0], "x": 102, "y": 26, "flags": 4},
|
||||
{"matrix": [9, 0], "x": 106, "y": 38, "flags": 4},
|
||||
{"matrix": [9, 1], "x": 119, "y": 38, "flags": 4},
|
||||
{"matrix": [9, 2], "x": 133, "y": 38, "flags": 4},
|
||||
{"matrix": [9, 3], "x": 147, "y": 38, "flags": 4},
|
||||
{"matrix": [9, 4], "x": 160, "y": 38, "flags": 4},
|
||||
{"matrix": [9, 5], "x": 174, "y": 38, "flags": 4},
|
||||
{"matrix": [9, 7], "x": 200, "y": 38, "flags": 1},
|
||||
{"matrix": [10, 7], "x": 208, "y": 52, "flags": 4},
|
||||
{"matrix": [10, 6], "x": 186, "y": 49, "flags": 1},
|
||||
{"matrix": [10, 5], "x": 167, "y": 49, "flags": 4},
|
||||
{"matrix": [10, 4], "x": 153, "y": 49, "flags": 4},
|
||||
{"matrix": [10, 3], "x": 140, "y": 49, "flags": 4},
|
||||
{"matrix": [10, 2], "x": 126, "y": 49, "flags": 4},
|
||||
{"matrix": [10, 1], "x": 113, "y": 49, "flags": 4},
|
||||
{"matrix": [10, 0], "x": 99, "y": 49, "flags": 4},
|
||||
{"matrix": [11, 2], "x": 123, "y": 64, "flags": 4},
|
||||
{"matrix": [11, 4], "x": 160, "y": 61, "flags": 1},
|
||||
{"matrix": [11, 5], "x": 177, "y": 61, "flags": 1},
|
||||
{"matrix": [11, 6], "x": 194, "y": 64, "flags": 4},
|
||||
{"matrix": [11, 7], "x": 208, "y": 64, "flags": 4},
|
||||
{"matrix": [11, 8], "x": 221, "y": 64, "flags": 4},
|
||||
{"x": 224, "y": 53, "flags": 2},
|
||||
{"x": 224, "y": 51, "flags": 2},
|
||||
{"x": 224, "y": 49, "flags": 2},
|
||||
{"x": 224, "y": 48, "flags": 2},
|
||||
{"x": 224, "y": 46, "flags": 2},
|
||||
{"x": 224, "y": 44, "flags": 2},
|
||||
{"x": 224, "y": 43, "flags": 2},
|
||||
{"x": 224, "y": 41, "flags": 2},
|
||||
{"x": 224, "y": 39, "flags": 2}
|
||||
],
|
||||
"sleep": true,
|
||||
"split_count": [41, 55]
|
||||
},
|
||||
"split": {
|
||||
"bootmagic": {
|
||||
"matrix": [6, 0]
|
||||
},
|
||||
"enabled": true,
|
||||
"handedness": {
|
||||
"pin": "GP20"
|
||||
},
|
||||
"matrix_pins": {
|
||||
"right": {
|
||||
"cols": ["GP25", "GP24", "GP23", "GP22", "GP7", "GP6", "GP5", "GP4", "GP2"],
|
||||
"rows": ["GP29", "GP28", "GP27", "GP26", "GP11", "GP3"]
|
||||
}
|
||||
},
|
||||
"serial": {
|
||||
"driver": "vendor"
|
||||
},
|
||||
"transport": {
|
||||
"sync": {
|
||||
"indicators": true,
|
||||
"layer_state": true,
|
||||
"matrix_state": true
|
||||
}
|
||||
}
|
||||
},
|
||||
"url": "",
|
||||
"usb": {
|
||||
"device_version": "1.0.0",
|
||||
"pid": "0x0014",
|
||||
"vid": "0x4552"
|
||||
},
|
||||
"ws2812": {
|
||||
"driver": "vendor",
|
||||
"pin": "GP17"
|
||||
},
|
||||
"layouts": {
|
||||
"LAYOUT_all": {
|
||||
"layout": [
|
||||
{"matrix": [0, 0], "x": 0, "y": 0},
|
||||
{"matrix": [0, 2], "x": 1.5, "y": 0},
|
||||
{"matrix": [0, 3], "x": 2.5, "y": 0},
|
||||
{"matrix": [0, 4], "x": 3.5, "y": 0},
|
||||
{"matrix": [0, 5], "x": 4.5, "y": 0},
|
||||
{"matrix": [0, 6], "x": 6, "y": 0},
|
||||
{"matrix": [0, 7], "x": 7, "y": 0},
|
||||
{"matrix": [6, 0], "x": 9.5, "y": 0},
|
||||
{"matrix": [6, 1], "x": 10.5, "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},
|
||||
{"matrix": [6, 7], "x": 16.5, "y": 0},
|
||||
{"matrix": [6, 8], "x": 17.75, "y": 0},
|
||||
{"matrix": [1, 0], "x": 0, "y": 1.25},
|
||||
{"matrix": [1, 1], "x": 1, "y": 1.25},
|
||||
{"matrix": [1, 2], "x": 2, "y": 1.25},
|
||||
{"matrix": [1, 3], "x": 3, "y": 1.25},
|
||||
{"matrix": [1, 4], "x": 4, "y": 1.25},
|
||||
{"matrix": [1, 5], "x": 5, "y": 1.25},
|
||||
{"matrix": [1, 6], "x": 6, "y": 1.25},
|
||||
{"matrix": [1, 7], "x": 7, "y": 1.25},
|
||||
{"matrix": [7, 0], "x": 9.5, "y": 1.25},
|
||||
{"matrix": [7, 1], "x": 10.5, "y": 1.25},
|
||||
{"matrix": [7, 2], "x": 11.5, "y": 1.25},
|
||||
{"matrix": [7, 3], "x": 12.5, "y": 1.25},
|
||||
{"matrix": [7, 4], "x": 13.5, "y": 1.25},
|
||||
{"matrix": [7, 5], "x": 14.5, "y": 1.25},
|
||||
{"matrix": [7, 6], "x": 15.5, "y": 1.25},
|
||||
{"matrix": [7, 7], "x": 16.5, "y": 1.25},
|
||||
{"matrix": [7, 8], "x": 17.75, "y": 1.25},
|
||||
{"matrix": [2, 0], "x": 0, "y": 2.25, "w": 1.5},
|
||||
{"matrix": [2, 1], "x": 1.5, "y": 2.25},
|
||||
{"matrix": [2, 2], "x": 2.5, "y": 2.25},
|
||||
{"matrix": [2, 3], "x": 3.5, "y": 2.25},
|
||||
{"matrix": [2, 4], "x": 4.5, "y": 2.25},
|
||||
{"matrix": [2, 5], "x": 5.5, "y": 2.25},
|
||||
{"matrix": [2, 6], "x": 6.5, "y": 2.25},
|
||||
{"matrix": [8, 0], "x": 9, "y": 2.25},
|
||||
{"matrix": [8, 1], "x": 10, "y": 2.25},
|
||||
{"matrix": [8, 2], "x": 11, "y": 2.25},
|
||||
{"matrix": [8, 3], "x": 12, "y": 2.25},
|
||||
{"matrix": [8, 4], "x": 13, "y": 2.25},
|
||||
{"matrix": [8, 5], "x": 14, "y": 2.25},
|
||||
{"matrix": [8, 6], "x": 15, "y": 2.25},
|
||||
{"matrix": [8, 7], "x": 16, "y": 2.25, "w": 1.5},
|
||||
{"matrix": [8, 8], "x": 17.75, "y": 2.25},
|
||||
{"matrix": [3, 0], "x": 0, "y": 3.25, "w": 1.75},
|
||||
{"matrix": [3, 1], "x": 1.75, "y": 3.25},
|
||||
{"matrix": [3, 2], "x": 2.75, "y": 3.25},
|
||||
{"matrix": [3, 3], "x": 3.75, "y": 3.25},
|
||||
{"matrix": [3, 4], "x": 4.75, "y": 3.25},
|
||||
{"matrix": [3, 5], "x": 5.75, "y": 3.25},
|
||||
{"matrix": [3, 6], "x": 6.75, "y": 3.25},
|
||||
{"matrix": [9, 0], "x": 9.25, "y": 3.25},
|
||||
{"matrix": [9, 1], "x": 10.25, "y": 3.25},
|
||||
{"matrix": [9, 2], "x": 11.25, "y": 3.25},
|
||||
{"matrix": [9, 3], "x": 12.25, "y": 3.25},
|
||||
{"matrix": [9, 4], "x": 13.25, "y": 3.25},
|
||||
{"matrix": [9, 5], "x": 14.25, "y": 3.25},
|
||||
{"matrix": [9, 7], "x": 15.25, "y": 3.25, "w": 2.25},
|
||||
{"matrix": [4, 0], "x": 0, "y": 4.25, "w": 2.25},
|
||||
{"matrix": [4, 2], "x": 2.25, "y": 4.25},
|
||||
{"matrix": [4, 3], "x": 3.25, "y": 4.25},
|
||||
{"matrix": [4, 4], "x": 4.25, "y": 4.25},
|
||||
{"matrix": [4, 5], "x": 5.25, "y": 4.25},
|
||||
{"matrix": [4, 6], "x": 6.25, "y": 4.25},
|
||||
{"matrix": [10, 0], "x": 8.75, "y": 4.25},
|
||||
{"matrix": [10, 1], "x": 9.75, "y": 4.25},
|
||||
{"matrix": [10, 2], "x": 10.75, "y": 4.25},
|
||||
{"matrix": [10, 3], "x": 11.75, "y": 4.25},
|
||||
{"matrix": [10, 4], "x": 12.75, "y": 4.25},
|
||||
{"matrix": [10, 5], "x": 13.75, "y": 4.25},
|
||||
{"matrix": [10, 6], "x": 14.75, "y": 4.25, "w": 1.75},
|
||||
{"matrix": [10, 7], "x": 16.75, "y": 4.5},
|
||||
{"matrix": [5, 0], "x": 0, "y": 5.25, "w": 1.5},
|
||||
{"matrix": [5, 1], "x": 1.5, "y": 5.25},
|
||||
{"matrix": [5, 2], "x": 2.5, "y": 5.25, "w": 1.5},
|
||||
{"matrix": [5, 5], "x": 4.75, "y": 5.5, "w": 2.25},
|
||||
{"matrix": [5, 6], "x": 7, "y": 5.5},
|
||||
{"matrix": [11, 2], "x": 9.5, "y": 5.5, "w": 2.75},
|
||||
{"matrix": [11, 4], "x": 13, "y": 5.25, "w": 1.5},
|
||||
{"matrix": [11, 5], "x": 14.5, "y": 5.25},
|
||||
{"matrix": [11, 6], "x": 15.75, "y": 5.5},
|
||||
{"matrix": [11, 7], "x": 16.75, "y": 5.5},
|
||||
{"matrix": [11, 8], "x": 17.75, "y": 5.5}
|
||||
]
|
||||
},
|
||||
"LAYOUT_ansi": {
|
||||
"layout": [
|
||||
{"matrix": [0, 0], "x": 0, "y": 0},
|
||||
{"matrix": [0, 2], "x": 1.5, "y": 0},
|
||||
{"matrix": [0, 3], "x": 2.5, "y": 0},
|
||||
{"matrix": [0, 4], "x": 3.5, "y": 0},
|
||||
{"matrix": [0, 5], "x": 4.5, "y": 0},
|
||||
{"matrix": [0, 6], "x": 6, "y": 0},
|
||||
{"matrix": [0, 7], "x": 7, "y": 0},
|
||||
{"matrix": [6, 0], "x": 9.5, "y": 0},
|
||||
{"matrix": [6, 1], "x": 10.5, "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},
|
||||
{"matrix": [6, 7], "x": 16.5, "y": 0},
|
||||
{"matrix": [6, 8], "x": 17.75, "y": 0},
|
||||
{"matrix": [1, 0], "x": 0, "y": 1.25},
|
||||
{"matrix": [1, 1], "x": 1, "y": 1.25},
|
||||
{"matrix": [1, 2], "x": 2, "y": 1.25},
|
||||
{"matrix": [1, 3], "x": 3, "y": 1.25},
|
||||
{"matrix": [1, 4], "x": 4, "y": 1.25},
|
||||
{"matrix": [1, 5], "x": 5, "y": 1.25},
|
||||
{"matrix": [1, 6], "x": 6, "y": 1.25},
|
||||
{"matrix": [1, 7], "x": 7, "y": 1.25},
|
||||
{"matrix": [7, 0], "x": 9.5, "y": 1.25},
|
||||
{"matrix": [7, 1], "x": 10.5, "y": 1.25},
|
||||
{"matrix": [7, 2], "x": 11.5, "y": 1.25},
|
||||
{"matrix": [7, 3], "x": 12.5, "y": 1.25},
|
||||
{"matrix": [7, 4], "x": 13.5, "y": 1.25},
|
||||
{"matrix": [7, 5], "x": 14.5, "y": 1.25},
|
||||
{"matrix": [7, 7], "x": 15.5, "y": 1.25},
|
||||
{"matrix": [7, 8], "x": 17.75, "y": 1.25, "w": 2},
|
||||
{"matrix": [2, 0], "x": 0, "y": 2.25, "w": 1.5},
|
||||
{"matrix": [2, 1], "x": 1.5, "y": 2.25},
|
||||
{"matrix": [2, 2], "x": 2.5, "y": 2.25},
|
||||
{"matrix": [2, 3], "x": 3.5, "y": 2.25},
|
||||
{"matrix": [2, 4], "x": 4.5, "y": 2.25},
|
||||
{"matrix": [2, 5], "x": 5.5, "y": 2.25},
|
||||
{"matrix": [2, 6], "x": 6.5, "y": 2.25},
|
||||
{"matrix": [8, 0], "x": 9, "y": 2.25},
|
||||
{"matrix": [8, 1], "x": 10, "y": 2.25},
|
||||
{"matrix": [8, 2], "x": 11, "y": 2.25},
|
||||
{"matrix": [8, 3], "x": 12, "y": 2.25},
|
||||
{"matrix": [8, 4], "x": 13, "y": 2.25},
|
||||
{"matrix": [8, 5], "x": 14, "y": 2.25},
|
||||
{"matrix": [8, 6], "x": 15, "y": 2.25},
|
||||
{"matrix": [8, 7], "x": 16, "y": 2.25, "w": 1.5},
|
||||
{"matrix": [8, 8], "x": 17.75, "y": 2.25},
|
||||
{"matrix": [3, 0], "x": 0, "y": 3.25, "w": 1.75},
|
||||
{"matrix": [3, 1], "x": 1.75, "y": 3.25},
|
||||
{"matrix": [3, 2], "x": 2.75, "y": 3.25},
|
||||
{"matrix": [3, 3], "x": 3.75, "y": 3.25},
|
||||
{"matrix": [3, 4], "x": 4.75, "y": 3.25},
|
||||
{"matrix": [3, 5], "x": 5.75, "y": 3.25},
|
||||
{"matrix": [3, 6], "x": 6.75, "y": 3.25},
|
||||
{"matrix": [9, 0], "x": 9.25, "y": 3.25},
|
||||
{"matrix": [9, 1], "x": 10.25, "y": 3.25},
|
||||
{"matrix": [9, 2], "x": 11.25, "y": 3.25},
|
||||
{"matrix": [9, 3], "x": 12.25, "y": 3.25},
|
||||
{"matrix": [9, 4], "x": 13.25, "y": 3.25},
|
||||
{"matrix": [9, 5], "x": 14.25, "y": 3.25},
|
||||
{"matrix": [9, 7], "x": 15.25, "y": 3.25, "w": 2.25},
|
||||
{"matrix": [4, 0], "x": 0, "y": 4.25, "w": 2.25},
|
||||
{"matrix": [4, 2], "x": 2.25, "y": 4.25},
|
||||
{"matrix": [4, 3], "x": 3.25, "y": 4.25},
|
||||
{"matrix": [4, 4], "x": 4.25, "y": 4.25},
|
||||
{"matrix": [4, 5], "x": 5.25, "y": 4.25},
|
||||
{"matrix": [4, 6], "x": 6.25, "y": 4.25},
|
||||
{"matrix": [10, 0], "x": 8.75, "y": 4.25},
|
||||
{"matrix": [10, 1], "x": 9.75, "y": 4.25},
|
||||
{"matrix": [10, 2], "x": 10.75, "y": 4.25},
|
||||
{"matrix": [10, 3], "x": 11.75, "y": 4.25},
|
||||
{"matrix": [10, 4], "x": 12.75, "y": 4.25},
|
||||
{"matrix": [10, 5], "x": 13.75, "y": 4.25},
|
||||
{"matrix": [10, 6], "x": 14.75, "y": 4.25, "w": 1.75},
|
||||
{"matrix": [10, 7], "x": 16.75, "y": 4.5},
|
||||
{"matrix": [5, 0], "x": 0, "y": 5.25, "w": 1.5},
|
||||
{"matrix": [5, 1], "x": 1.5, "y": 5.25},
|
||||
{"matrix": [5, 2], "x": 2.5, "y": 5.25, "w": 1.5},
|
||||
{"matrix": [5, 5], "x": 4.75, "y": 5.5, "w": 2.25},
|
||||
{"matrix": [5, 6], "x": 7, "y": 5.5},
|
||||
{"matrix": [11, 2], "x": 9.5, "y": 5.5, "w": 2.75},
|
||||
{"matrix": [11, 4], "x": 13, "y": 5.25, "w": 1.5},
|
||||
{"matrix": [11, 5], "x": 14.5, "y": 5.25},
|
||||
{"matrix": [11, 6], "x": 15.75, "y": 5.5},
|
||||
{"matrix": [11, 7], "x": 16.75, "y": 5.5},
|
||||
{"matrix": [11, 8], "x": 17.75, "y": 5.5}
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
||||
24
keyboards/era/sirind/tomak79h/keymaps/default/keymap.c
Normal file
24
keyboards/era/sirind/tomak79h/keymaps/default/keymap.c
Normal file
@@ -0,0 +1,24 @@
|
||||
// Copyright 2024 Hyojin Bak (@eerraa)
|
||||
// SPDX-License-Identifier: GPL-2.0-or-later
|
||||
|
||||
#include QMK_KEYBOARD_H
|
||||
|
||||
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
||||
|
||||
[0] = LAYOUT_all(
|
||||
KC_ESC, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_F13, KC_PSCR,
|
||||
KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSPC, KC_BSPC, KC_INS,
|
||||
KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSLS, KC_DEL,
|
||||
KC_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT,
|
||||
KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP,
|
||||
KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, MO(1), KC_SPC, KC_RALT, MO(1), KC_LEFT, KC_DOWN, KC_RGHT
|
||||
),
|
||||
[1] = LAYOUT_all(
|
||||
QK_BOOT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, 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, RGB_TOG, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
|
||||
KC_TRNS, RGB_MOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
|
||||
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS
|
||||
)
|
||||
};
|
||||
27
keyboards/era/sirind/tomak79h/readme.md
Normal file
27
keyboards/era/sirind/tomak79h/readme.md
Normal file
@@ -0,0 +1,27 @@
|
||||
# Tomak79H, Hotswap ver
|
||||
|
||||

|
||||
|
||||
Ergonomics Split Keyboard powered by RP2040.
|
||||
|
||||
* Keyboard Maintainer: [ERA](https://github.com/eerraa)
|
||||
* Hardware supported: SIRIND Tomak79
|
||||
* Hardware availability: [Syryan](https://srind.mysoho.com/)
|
||||
|
||||
Make example for this keyboard (after setting up your build environment):
|
||||
|
||||
make era/sirind/tomak79h:default
|
||||
|
||||
Flashing example for this keyboard:
|
||||
|
||||
make era/sirind/tomak79h: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(ESC, F7)' key and plug in the keyboard.
|
||||
* **Physical reset**: Short the 'RESET' and 'GND' holes twice within one second, or plug in the keyboard with the 'BOOT' and 'GND' holes shorted.
|
||||
* **Keycode in layout**: Press the key mapped to `QK_BOOT` if it is available.
|
||||
16
keyboards/era/sirind/tomak79h/tomak79h.c
Normal file
16
keyboards/era/sirind/tomak79h/tomak79h.c
Normal file
@@ -0,0 +1,16 @@
|
||||
// Copyright 2024 Hyojin Bak (@eerraa)
|
||||
// SPDX-License-Identifier: GPL-2.0-or-later
|
||||
|
||||
#include "quantum.h"
|
||||
|
||||
bool rgb_matrix_indicators_kb(void) {
|
||||
if (!rgb_matrix_indicators_user()) {
|
||||
return false;
|
||||
}
|
||||
if (host_keyboard_led_state().caps_lock) {
|
||||
for (uint8_t i = 87; i <= 95; i++) {
|
||||
rgb_matrix_set_color(i, 0, 128, 128);
|
||||
}
|
||||
}
|
||||
return true;
|
||||
}
|
||||
17
keyboards/geigeigeist/klor/config.h
Normal file
17
keyboards/geigeigeist/klor/config.h
Normal file
@@ -0,0 +1,17 @@
|
||||
// Copyright 2024 QMK
|
||||
// SPDX-License-Identifier: GPL-2.0-or-later
|
||||
#pragma once
|
||||
|
||||
#ifdef POINTING_DEVICE_ENABLE
|
||||
# define POINTING_DEVICE_SCLK_PIN D0
|
||||
# define POINTING_DEVICE_SDIO_PIN D1
|
||||
#endif
|
||||
|
||||
#ifdef AUDIO_ENABLE
|
||||
# define AUDIO_PIN B5
|
||||
#endif
|
||||
|
||||
#ifdef OLED_ENABLE
|
||||
# define OLED_DISPLAY_128X64
|
||||
# define OLED_FONT_H "keyboards/geigeigeist/klor/glcdfont.c"
|
||||
#endif
|
||||
16
keyboards/geigeigeist/klor/glcdfont.c
Normal file
16
keyboards/geigeigeist/klor/glcdfont.c
Normal file
@@ -0,0 +1,16 @@
|
||||
// Copyright 2024 QMK
|
||||
// SPDX-License-Identifier: GPL-2.0-or-later
|
||||
|
||||
#include "progmem.h"
|
||||
|
||||
static const unsigned char PROGMEM font[] = {
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3E, 0x5B, 0x4F, 0x5B, 0x3E, 0x00, 0x3E, 0x6B, 0x4F, 0x6B, 0x3E, 0x00, 0x1C, 0x3E, 0x7C, 0x3E, 0x1C, 0x00, 0x18, 0x3C, 0x7E, 0x3C, 0x18, 0x00, 0x1C, 0x57, 0x7D, 0x57, 0x1C, 0x00, 0x1C, 0x5E, 0x7F, 0x5E, 0x1C, 0x00, 0x00, 0x18, 0x3C, 0x18, 0x00, 0x00, 0xFF, 0xE7, 0xC3, 0xE7, 0xFF, 0x00, 0x00, 0x18, 0x24, 0x18, 0x00, 0x00, 0xFF, 0xE7, 0xDB, 0xE7, 0xFF, 0x00, 0x30, 0x48, 0x3A, 0x06, 0x0E, 0x00, 0x26, 0x29, 0x79, 0x29, 0x26, 0x00, 0x40, 0x7F, 0x05, 0x05, 0x07, 0x00, 0x40, 0x7F, 0x05, 0x25, 0x3F, 0x00, 0x5A, 0x3C, 0xE7, 0x3C, 0x5A, 0x00, 0x7F, 0x3E, 0x1C, 0x1C, 0x08, 0x00, 0x08, 0x1C, 0x1C, 0x3E, 0x7F, 0x00, 0x14, 0x22, 0x7F, 0x22, 0x14, 0x00, 0x5F, 0x5F, 0x00, 0x5F, 0x5F, 0x00, 0x06, 0x09, 0x7F, 0x01, 0x7F, 0x00, 0x00, 0x66, 0x89, 0x95, 0x6A, 0x00, 0x60, 0x60, 0x60, 0x60, 0x60, 0x00, 0x94, 0xB6, 0xFF, 0xB6, 0x94, 0x00, 0x08, 0x0C, 0x7E, 0x0C, 0x08, 0x00,
|
||||
0x10, 0x30, 0x7E, 0x30, 0x10, 0x00, 0x08, 0x08, 0x3E, 0x1C, 0x08, 0x00, 0x08, 0x1C, 0x3E, 0x08, 0x08, 0x00, 0x1E, 0x10, 0x10, 0x10, 0x10, 0x00, 0x0C, 0x1E, 0x0C, 0x1E, 0x0C, 0x00, 0x30, 0x38, 0x3E, 0x38, 0x30, 0x00, 0x06, 0x0E, 0x3E, 0x0E, 0x06, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x5F, 0x00, 0x00, 0x00, 0x00, 0x07, 0x00, 0x07, 0x00, 0x00, 0x14, 0x3E, 0x14, 0x3E, 0x14, 0x00, 0x2E, 0x2A, 0x7F, 0x2A, 0x3A, 0x00, 0x20, 0x12, 0x08, 0x24, 0x02, 0x00, 0x37, 0x49, 0x49, 0x37, 0x50, 0x00, 0x00, 0x08, 0x07, 0x03, 0x00, 0x00, 0x00, 0x1C, 0x22, 0x41, 0x00, 0x00, 0x00, 0x41, 0x22, 0x1C, 0x00, 0x00, 0x2A, 0x1C, 0x7F, 0x1C, 0x2A, 0x00, 0x08, 0x08, 0x3E, 0x08, 0x08, 0x00, 0x00, 0x80, 0x70, 0x30, 0x00, 0x00, 0x08, 0x08, 0x08, 0x08, 0x08, 0x00, 0x00, 0x00, 0x60, 0x60, 0x00, 0x00, 0x20, 0x10, 0x08, 0x04, 0x02, 0x00, 0x7F, 0x51, 0x49, 0x45, 0x7F, 0x00, 0x08, 0x04, 0x02, 0x7F, 0x00, 0x00,
|
||||
0x71, 0x49, 0x49, 0x49, 0x4F, 0x00, 0x41, 0x41, 0x49, 0x49, 0x77, 0x00, 0x0F, 0x10, 0x10, 0x10, 0x7F, 0x00, 0x4F, 0x49, 0x49, 0x49, 0x71, 0x00, 0x7E, 0x49, 0x49, 0x49, 0x70, 0x00, 0x01, 0x01, 0x71, 0x09, 0x07, 0x00, 0x77, 0x49, 0x49, 0x49, 0x77, 0x00, 0x07, 0x49, 0x49, 0x49, 0x3F, 0x00, 0x00, 0x00, 0x14, 0x00, 0x00, 0x00, 0x00, 0x40, 0x34, 0x00, 0x00, 0x00, 0x00, 0x08, 0x14, 0x22, 0x41, 0x00, 0x14, 0x14, 0x14, 0x14, 0x14, 0x00, 0x00, 0x41, 0x22, 0x14, 0x08, 0x00, 0x01, 0x01, 0x59, 0x09, 0x0F, 0x00, 0x7F, 0x41, 0x5D, 0x59, 0x4F, 0x00, 0x7F, 0x09, 0x09, 0x09, 0x7F, 0x00, 0x7F, 0x49, 0x49, 0x49, 0x76, 0x00, 0x7F, 0x41, 0x41, 0x41, 0x41, 0x00, 0x7F, 0x41, 0x41, 0x41, 0x7E, 0x00, 0x7F, 0x49, 0x49, 0x49, 0x49, 0x00, 0x7F, 0x09, 0x09, 0x09, 0x09, 0x00, 0x7F, 0x41, 0x41, 0x49, 0x7B, 0x00, 0x7F, 0x08, 0x08, 0x08, 0x7F, 0x00, 0x00, 0x00, 0x7F, 0x00, 0x00, 0x00, 0x70, 0x40, 0x40, 0x40, 0x7F, 0x00,
|
||||
0x7F, 0x08, 0x08, 0x08, 0x77, 0x00, 0x7F, 0x40, 0x40, 0x40, 0x40, 0x00, 0x7F, 0x01, 0x1F, 0x01, 0x7F, 0x00, 0x7F, 0x04, 0x08, 0x10, 0x7F, 0x00, 0x7F, 0x41, 0x41, 0x41, 0x7F, 0x00, 0x7F, 0x09, 0x09, 0x09, 0x0F, 0x00, 0x7F, 0x41, 0x71, 0x41, 0x7F, 0x00, 0x7F, 0x09, 0x09, 0x19, 0x6F, 0x00, 0x47, 0x49, 0x49, 0x49, 0x79, 0x00, 0x01, 0x01, 0x7F, 0x01, 0x01, 0x00, 0x7F, 0x40, 0x40, 0x40, 0x7F, 0x00, 0x1F, 0x20, 0x40, 0x20, 0x1F, 0x00, 0x7F, 0x40, 0x7F, 0x40, 0x7F, 0x00, 0x77, 0x08, 0x08, 0x08, 0x77, 0x00, 0x4F, 0x48, 0x48, 0x48, 0x7F, 0x00, 0x61, 0x51, 0x49, 0x45, 0x43, 0x00, 0x00, 0x7F, 0x41, 0x41, 0x00, 0x00, 0x02, 0x04, 0x08, 0x10, 0x20, 0x00, 0x00, 0x41, 0x41, 0x7F, 0x00, 0x00, 0x04, 0x02, 0x01, 0x02, 0x04, 0x00, 0x40, 0x40, 0x40, 0x40, 0x40, 0x00, 0x00, 0x00, 0x07, 0x08, 0x00, 0x00, 0x60, 0x54, 0x54, 0x54, 0x7C, 0x00, 0x7F, 0x44, 0x44, 0x44, 0x78, 0x00, 0x7C, 0x44, 0x44, 0x44, 0x44, 0x00,
|
||||
0x78, 0x44, 0x44, 0x44, 0x7F, 0x00, 0x7C, 0x54, 0x54, 0x54, 0x5C, 0x00, 0x08, 0x7F, 0x09, 0x09, 0x09, 0x00, 0x38, 0xA4, 0xA4, 0xA4, 0xFC, 0x00, 0x7F, 0x04, 0x04, 0x04, 0x78, 0x00, 0x00, 0x00, 0x7D, 0x00, 0x00, 0x00, 0x70, 0x40, 0x40, 0x7D, 0x00, 0x00, 0x7F, 0x08, 0x08, 0x08, 0x76, 0x00, 0x00, 0x00, 0x7F, 0x40, 0x00, 0x00, 0x7C, 0x04, 0x7C, 0x04, 0x7C, 0x00, 0x7C, 0x04, 0x04, 0x04, 0x78, 0x00, 0x7C, 0x44, 0x44, 0x44, 0x7C, 0x00, 0xFC, 0x24, 0x24, 0x24, 0x38, 0x00, 0x38, 0x24, 0x24, 0x24, 0xFC, 0x00, 0x7C, 0x04, 0x04, 0x04, 0x04, 0x00, 0x5C, 0x54, 0x54, 0x54, 0x74, 0x00, 0x04, 0x04, 0x7F, 0x04, 0x04, 0x00, 0x7C, 0x40, 0x40, 0x40, 0x7C, 0x00, 0x1C, 0x20, 0x40, 0x20, 0x1C, 0x00, 0x7C, 0x40, 0x7C, 0x40, 0x7C, 0x00, 0x6C, 0x10, 0x10, 0x10, 0x6C, 0x00, 0xBC, 0xA0, 0xA0, 0xA0, 0xFC, 0x00, 0x44, 0x64, 0x54, 0x4C, 0x44, 0x00, 0x00, 0x08, 0x36, 0x41, 0x00, 0x00, 0x00, 0x00, 0x77, 0x00, 0x00, 0x00,
|
||||
0x00, 0x41, 0x36, 0x08, 0x00, 0x00, 0x02, 0x01, 0x02, 0x04, 0x02, 0x00, 0x3C, 0x26, 0x23, 0x26, 0x3C, 0x00, 0x00, 0x00, 0xE0, 0xF0, 0xF0, 0xF0, 0xF0, 0xFE, 0xFF, 0x9F, 0x0F, 0x0F, 0x9F, 0xFF, 0xFF, 0xFF, 0xFF, 0x9F, 0x0F, 0x0F, 0x9F, 0xFF, 0xFE, 0xF0, 0xF0, 0xF0, 0xF0, 0xE0, 0x00, 0x00, 0xFF, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xC0, 0x30, 0x0C, 0x03, 0x00, 0x00, 0x00, 0x00, 0xFF, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xE0, 0x10, 0x08, 0x04, 0x02, 0x02, 0x02, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x02, 0x02, 0x02, 0x04, 0x08, 0x10, 0xE0, 0x00, 0x00, 0x00, 0x00, 0xFF, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0xFF, 0x7F, 0x51, 0x55, 0x55, 0x45, 0x7F, 0x41, 0x5F, 0x5F, 0x5F, 0x7F, 0x00, 0x7F, 0x41, 0x7B, 0x77, 0x41, 0x7F, 0x41, 0x5F, 0x5F, 0x5F, 0x7F, 0x00, 0x7F, 0x41, 0x5D, 0x5D, 0x5D, 0x7F, 0x41, 0x5F, 0x5F, 0x5F, 0x7F, 0x00, 0xC0, 0xE0, 0xF0, 0xF0, 0xF0, 0xE0,
|
||||
0xE6, 0xF7, 0xF3, 0xF0, 0x60, 0x00, 0x7C, 0x7C, 0x7C, 0x7C, 0x7C, 0x00, 0x7C, 0x7C, 0x7C, 0x7C, 0x7C, 0x00, 0xF8, 0x1C, 0xDE, 0x1F, 0xFF, 0xFF, 0xFF, 0x1F, 0xDE, 0x1C, 0xF8, 0x00, 0xC0, 0xE2, 0xB4, 0xF8, 0xF8, 0xF8, 0xF8, 0xF8, 0xB4, 0xE2, 0xC0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x07, 0x0F, 0x0F, 0x0F, 0x0F, 0xFF, 0xFF, 0xFF, 0xFF, 0x9F, 0x87, 0xE1, 0xF9, 0xF9, 0xE1, 0x87, 0x9F, 0xFF, 0xFF, 0xFF, 0xFF, 0x0F, 0x0F, 0x0F, 0x0F, 0x07, 0x00, 0x00, 0xFF, 0x00, 0x00, 0xC0, 0x30, 0x0C, 0x33, 0xC0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xFF, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3F, 0xC0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xC0, 0x3F, 0x00, 0x00, 0x00, 0xFF, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x38, 0xC8, 0x08, 0x08, 0x0F,
|
||||
0x7E, 0x00, 0x00, 0x7F, 0x00, 0x00, 0x78, 0x00, 0x00, 0x7E, 0x00, 0x00, 0x24, 0x24, 0x12, 0x12, 0x24, 0x24, 0x48, 0x48, 0x24, 0x24, 0x12, 0x12, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0F, 0x1F, 0x3F, 0x7F, 0x7F, 0x3F, 0x3F, 0x7F, 0x7F, 0x38, 0x10, 0x00, 0x1F, 0x1F, 0x1F, 0x1F, 0x1F, 0x00, 0x1F, 0x1F, 0x1F, 0x1F, 0x1F, 0x00, 0x0F, 0x14, 0x21, 0x40, 0x45, 0x41, 0x45, 0x40, 0x21, 0x14, 0x0F, 0x00, 0x7D, 0x7D, 0x7D, 0x7D, 0x7D, 0x7D, 0x7D, 0x7D, 0x7D, 0x7D, 0x7D, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3F, 0x0C, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x0C, 0x30, 0x00, 0x00, 0x00, 0x00, 0x3F, 0x20, 0x20,
|
||||
0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x01, 0x02, 0x04, 0x08, 0x10, 0x10, 0x10, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x10, 0x10, 0x10, 0x08, 0x04, 0x02, 0x01, 0x00, 0x00, 0x00, 0x00, 0x3F, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x0C, 0x30, 0x40, 0x00, 0x00, 0x40, 0x00, 0x00, 0x40, 0x00, 0x00, 0x40, 0x00, 0x00, 0x1C, 0x3E, 0x3E, 0x3E, 0x1C, 0x00, 0x3E, 0x1C, 0x1C, 0x08, 0x08, 0x00, 0x3E, 0x3E, 0x3E, 0x3E, 0x3E, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
};
|
||||
167
keyboards/geigeigeist/klor/keyboard.json
Normal file
167
keyboards/geigeigeist/klor/keyboard.json
Normal file
@@ -0,0 +1,167 @@
|
||||
{
|
||||
"manufacturer": "Geigeigeist",
|
||||
"keyboard_name": "Klor",
|
||||
"maintainer": "waffle87",
|
||||
"build": {
|
||||
"lto": true
|
||||
},
|
||||
"development_board": "elite_c",
|
||||
"diode_direction": "COL2ROW",
|
||||
"encoder": {
|
||||
"rotary": [
|
||||
{"pin_a": "F5", "pin_b": "F4"}
|
||||
]
|
||||
},
|
||||
"features": {
|
||||
"bootmagic": true,
|
||||
"encoder": true,
|
||||
"extrakey": true,
|
||||
"haptic": true,
|
||||
"mousekey": true,
|
||||
"oled": true,
|
||||
"pointing_device": false,
|
||||
"rgb_matrix": true,
|
||||
"audio": false
|
||||
},
|
||||
"haptic": {
|
||||
"driver": "drv2605l"
|
||||
},
|
||||
"matrix_pins": {
|
||||
"cols": ["F6", "F7", "B1", "B3", "B2", "B6"],
|
||||
"rows": ["C6", "D7", "E6", "B4"]
|
||||
},
|
||||
"rgb_matrix": {
|
||||
"driver": "ws2812",
|
||||
"animations": {
|
||||
"alphas_mods": true,
|
||||
"band_sat": true,
|
||||
"band_val": true,
|
||||
"breathing": true,
|
||||
"gradient_left_right": true,
|
||||
"gradient_up_down": true
|
||||
},
|
||||
"layout": [
|
||||
{"matrix": [3, 4], "x": 102, "y": 63, "flags": 1},
|
||||
{"matrix": [3, 3], "x": 89, "y": 54, "flags": 1},
|
||||
{"matrix": [3, 2], "x": 74, "y": 49, "flags": 1},
|
||||
{"matrix": [2, 5], "x": 75, "y": 34, "flags": 4},
|
||||
{"matrix": [1, 5], "x": 75, "y": 21, "flags": 4},
|
||||
{"matrix": [0, 5], "x": 75, "y": 8, "flags": 4},
|
||||
{"matrix": [0, 4], "x": 60, "y": 6, "flags": 4},
|
||||
{"matrix": [1, 4], "x": 60, "y": 19, "flags": 4},
|
||||
{"matrix": [2, 4], "x": 60, "y": 32, "flags": 4},
|
||||
{"matrix": [3, 1], "x": 58, "y": 48, "flags": 1},
|
||||
{"matrix": [2, 3], "x": 46, "y": 25, "flags": 4},
|
||||
{"matrix": [1, 3], "x": 46, "y": 12, "flags": 4},
|
||||
{"matrix": [0, 3], "x": 46, "y": 0, "flags": 4},
|
||||
{"matrix": [0, 2], "x": 29, "y": 7, "flags": 4},
|
||||
{"matrix": [1, 2], "x": 30, "y": 20, "flags": 4},
|
||||
{"matrix": [2, 2], "x": 31, "y": 33, "flags": 4},
|
||||
{"matrix": [2, 1], "x": 17, "y": 42, "flags": 4},
|
||||
{"matrix": [1, 1], "x": 15, "y": 30, "flags": 4},
|
||||
{"matrix": [0, 1], "x": 13, "y": 17, "flags": 4},
|
||||
{"matrix": [1, 0], "x": 0, "y": 28, "flags": 1},
|
||||
{"matrix": [2, 0], "x": 3, "y": 41, "flags": 1},
|
||||
{"matrix": [7, 4], "x": 122, "y": 63, "flags": 1},
|
||||
{"matrix": [7, 3], "x": 135, "y": 54, "flags": 1},
|
||||
{"matrix": [7, 2], "x": 150, "y": 49, "flags": 1},
|
||||
{"matrix": [6, 5], "x": 149, "y": 34, "flags": 4},
|
||||
{"matrix": [5, 5], "x": 149, "y": 21, "flags": 4},
|
||||
{"matrix": [4, 5], "x": 149, "y": 8, "flags": 4},
|
||||
{"matrix": [4, 4], "x": 163, "y": 6, "flags": 4},
|
||||
{"matrix": [5, 4], "x": 163, "y": 19, "flags": 4},
|
||||
{"matrix": [6, 4], "x": 163, "y": 32, "flags": 4},
|
||||
{"matrix": [7, 1], "x": 166, "y": 48, "flags": 1},
|
||||
{"matrix": [6, 3], "x": 178, "y": 25, "flags": 4},
|
||||
{"matrix": [5, 3], "x": 178, "y": 12, "flags": 4},
|
||||
{"matrix": [4, 3], "x": 178, "y": 0, "flags": 4},
|
||||
{"matrix": [4, 2], "x": 195, "y": 7, "flags": 4},
|
||||
{"matrix": [5, 2], "x": 194, "y": 20, "flags": 4},
|
||||
{"matrix": [6, 2], "x": 193, "y": 33, "flags": 4},
|
||||
{"matrix": [4, 1], "x": 206, "y": 42, "flags": 4},
|
||||
{"matrix": [5, 1], "x": 209, "y": 30, "flags": 4},
|
||||
{"matrix": [6, 1], "x": 211, "y": 17, "flags": 4},
|
||||
{"matrix": [5, 0], "x": 224, "y": 28, "flags": 1},
|
||||
{"matrix": [6, 0], "x": 221, "y": 41, "flags": 1}
|
||||
],
|
||||
"split_count": [21, 21]
|
||||
},
|
||||
"split": {
|
||||
"enabled": true,
|
||||
"encoder": {
|
||||
"right": {
|
||||
"rotary": [
|
||||
{"pin_a": "F4", "pin_b": "F5"}
|
||||
]
|
||||
}
|
||||
},
|
||||
"serial": {
|
||||
"pin": "D2"
|
||||
},
|
||||
"transport": {
|
||||
"sync": {
|
||||
"oled": true,
|
||||
"matrix_state": true
|
||||
}
|
||||
}
|
||||
},
|
||||
"url": "https://github.com/geigeigeist/klor",
|
||||
"usb": {
|
||||
"device_version": "1.0.0",
|
||||
"pid": "0x0001",
|
||||
"vid": "0x3A3C"
|
||||
},
|
||||
"ws2812": {
|
||||
"pin": "D3"
|
||||
},
|
||||
"layouts": {
|
||||
"LAYOUT": {
|
||||
"layout": [
|
||||
{"label": "L01", "matrix": [0, 1], "x": 1, "y": 0},
|
||||
{"label": "L02", "matrix": [0, 2], "x": 2, "y": 0},
|
||||
{"label": "L03", "matrix": [0, 3], "x": 3, "y": 0},
|
||||
{"label": "L04", "matrix": [0, 4], "x": 4, "y": 0},
|
||||
{"label": "L05", "matrix": [0, 5], "x": 5, "y": 0},
|
||||
{"label": "R00", "matrix": [4, 5], "x": 9, "y": 0},
|
||||
{"label": "R01", "matrix": [4, 4], "x": 10, "y": 0},
|
||||
{"label": "R02", "matrix": [4, 3], "x": 11, "y": 0},
|
||||
{"label": "R03", "matrix": [4, 2], "x": 12, "y": 0},
|
||||
{"label": "R04", "matrix": [4, 1], "x": 13, "y": 0},
|
||||
{"label": "L10", "matrix": [1, 0], "x": 0, "y": 1},
|
||||
{"label": "L11", "matrix": [1, 1], "x": 1, "y": 1},
|
||||
{"label": "L12", "matrix": [1, 2], "x": 2, "y": 1},
|
||||
{"label": "L13", "matrix": [1, 3], "x": 3, "y": 1},
|
||||
{"label": "L14", "matrix": [1, 4], "x": 4, "y": 1},
|
||||
{"label": "L15", "matrix": [1, 5], "x": 5, "y": 1},
|
||||
{"label": "R10", "matrix": [5, 5], "x": 9, "y": 1},
|
||||
{"label": "R11", "matrix": [5, 4], "x": 10, "y": 1},
|
||||
{"label": "R12", "matrix": [5, 3], "x": 11, "y": 1},
|
||||
{"label": "R13", "matrix": [5, 2], "x": 12, "y": 1},
|
||||
{"label": "R14", "matrix": [5, 1], "x": 13, "y": 1},
|
||||
{"label": "R15", "matrix": [5, 0], "x": 14, "y": 1},
|
||||
{"label": "L20", "matrix": [2, 0], "x": 0, "y": 2},
|
||||
{"label": "L21", "matrix": [2, 1], "x": 1, "y": 2},
|
||||
{"label": "L22", "matrix": [2, 2], "x": 2, "y": 2},
|
||||
{"label": "L23", "matrix": [2, 3], "x": 3, "y": 2},
|
||||
{"label": "L24", "matrix": [2, 4], "x": 4, "y": 2},
|
||||
{"label": "L25", "matrix": [2, 5], "x": 5, "y": 2},
|
||||
{"label": "L35", "matrix": [3, 5], "x": 6, "y": 2},
|
||||
{"label": "R30", "matrix": [7, 5], "x": 8, "y": 2},
|
||||
{"label": "R20", "matrix": [6, 5], "x": 9, "y": 2},
|
||||
{"label": "R21", "matrix": [6, 4], "x": 10, "y": 2},
|
||||
{"label": "R22", "matrix": [6, 3], "x": 11, "y": 2},
|
||||
{"label": "R23", "matrix": [6, 2], "x": 12, "y": 2},
|
||||
{"label": "R24", "matrix": [6, 1], "x": 13, "y": 2},
|
||||
{"label": "R25", "matrix": [6, 0], "x": 14, "y": 2},
|
||||
{"label": "L31", "matrix": [3, 1], "x": 2, "y": 3},
|
||||
{"label": "L32", "matrix": [3, 2], "x": 3, "y": 3},
|
||||
{"label": "L33", "matrix": [3, 3], "x": 4, "y": 3},
|
||||
{"label": "L34", "matrix": [3, 4], "x": 5, "y": 3},
|
||||
{"label": "R31", "matrix": [7, 4], "x": 9, "y": 3},
|
||||
{"label": "R32", "matrix": [7, 3], "x": 10, "y": 3},
|
||||
{"label": "R33", "matrix": [7, 2], "x": 11, "y": 3},
|
||||
{"label": "R34", "matrix": [7, 1], "x": 12, "y": 3}
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
||||
13
keyboards/geigeigeist/klor/keymaps/default/keymap.json
Normal file
13
keyboards/geigeigeist/klor/keymaps/default/keymap.json
Normal file
@@ -0,0 +1,13 @@
|
||||
{
|
||||
"keyboard": "geigeigeist/klor",
|
||||
"keymap": "default",
|
||||
"layout": "LAYOUT",
|
||||
"layers": [
|
||||
[
|
||||
"KC_Q", "KC_W", "KC_E", "KC_R", "KC_T", "KC_Y", "KC_U", "KC_I", "KC_O", "KC_P",
|
||||
"KC_TAB", "KC_A", "KC_S", "KC_D", "KC_F", "KC_G", "KC_H", "KC_J", "KC_K", "KC_L", "KC_SCLN", "KC_QUOT",
|
||||
"KC_DEL", "KC_Z", "KC_X", "KC_C", "KC_V", "KC_B", "KC_MUTE", "KC_MPLY", "KC_N", "KC_M", "KC_COMM", "KC_DOT", "KC_SLSH", "KC_RSFT",
|
||||
"KC_LCTL", "KC_TRNS", "KC_SPC", "KC_LALT", "KC_LGUI", "KC_ENT", "KC_TRNS", "KC_BSPC"
|
||||
]
|
||||
]
|
||||
}
|
||||
103
keyboards/geigeigeist/klor/klor.c
Normal file
103
keyboards/geigeigeist/klor/klor.c
Normal file
@@ -0,0 +1,103 @@
|
||||
// Copyright 2024 QMK
|
||||
// SPDX-License-Identifier: GPL-2.0-or-later
|
||||
#include "quantum.h"
|
||||
|
||||
#ifdef OLED_ENABLE
|
||||
oled_rotation_t oled_init_kb(oled_rotation_t rotation) {
|
||||
return OLED_ROTATION_180;
|
||||
}
|
||||
|
||||
static const char PROGMEM klor_face[] = {
|
||||
// clang-format off
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0xf0, 0xf0, 0xf0, 0xf0, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
|
||||
0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf0, 0xf0, 0xf0, 0xf0,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
|
||||
0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf0, 0xf0, 0xf0, 0xf0, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
|
||||
0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x0f, 0x0f, 0x0f, 0x0f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0f, 0x0f, 0x0f, 0x0f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
|
||||
0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x0f, 0x0f, 0x0f, 0x0f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0f, 0x0f, 0x0f, 0x0f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
|
||||
0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf0, 0xf0, 0xf0, 0xf0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
|
||||
0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf0, 0xf0, 0xf0, 0xf0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf0, 0xf0, 0xf0, 0xf0, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
|
||||
0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf0, 0xf0, 0xf0, 0xf0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf0, 0xf0, 0xf0, 0xf0, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
|
||||
0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
|
||||
0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f,
|
||||
0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
|
||||
0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0f, 0x0f, 0x0f, 0x0f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
|
||||
0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x0f, 0x0f, 0x0f, 0x0f, 0x00, 0x00, 0x00, 0x00, 0xf0, 0xf0, 0xf0, 0xf0,
|
||||
0xf0, 0xf0, 0xf0, 0xf0, 0x00, 0x00, 0x00, 0x00, 0x0f, 0x0f, 0x0f, 0x0f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
|
||||
0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x0f, 0x0f, 0x0f, 0x0f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x0f, 0x0f, 0x0f, 0x0f, 0x00, 0x00, 0x00, 0x00, 0xf0, 0xf0, 0xf0, 0xf0, 0xff, 0xff, 0xff, 0xff,
|
||||
0xff, 0xff, 0xff, 0xff, 0xf0, 0xf0, 0xf0, 0xf0, 0x00, 0x00, 0x00, 0x00, 0x0f, 0x0f, 0x0f, 0x0f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
|
||||
0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
|
||||
// clang-format on
|
||||
};
|
||||
|
||||
void render_keyboard_status(void) {
|
||||
static const char PROGMEM sep_v[] = {0xC0, 0xC0, 0xC0, 0xC0, 0xC0, 0xC0, 0xC0, 0xC0, 0xC0, 0xC0, 0xC0, 0xC0, 0xC0, 0xC0, 0xC0, 0xC0, 0xC0, 0xC0, 0xC0, 0xC0, 0xC0, 0};
|
||||
static const char PROGMEM sep_h1[] = {0xE1, 0xE1, 0xE1, 0xE1, 0xE1, 0xE1, 0xE1, 0xE1, 0xE1, 0xE1, 0xE1, 0xE1, 0xE1, 0};
|
||||
static const char PROGMEM sep_h2[] = {0xE1, 0xE1, 0xE1, 0xE1, 0xE1, 0xE1, 0xE1, 0xE1, 0xE1, 0xE1, 0xE1, 0};
|
||||
static const char PROGMEM face_1[] = {0x80, 0x81, 0x82, 0x83, 0x84, 0xE1, 0};
|
||||
static const char PROGMEM face_2[] = {0xA0, 0xA1, 0xA2, 0xA3, 0xA4, 0xE1, 0};
|
||||
static const char PROGMEM os_m_1[] = {0x95, 0x96, 0};
|
||||
static const char PROGMEM os_m_2[] = {0xB5, 0xB6, 0};
|
||||
static const char PROGMEM os_w_1[] = {0x97, 0x98, 0};
|
||||
static const char PROGMEM os_w_2[] = {0xB7, 0xB8, 0};
|
||||
static const char PROGMEM s_lock[] = {0x8F, 0x90, 0};
|
||||
static const char PROGMEM n_lock[] = {0x91, 0x92, 0};
|
||||
static const char PROGMEM c_lock[] = {0x93, 0x94, 0};
|
||||
static const char PROGMEM b_lock[] = {0xE1, 0xE1, 0};
|
||||
static const char PROGMEM hap_en[] = {0xB1, 0xB2, 0};
|
||||
# ifdef AUDIO_ENABLE
|
||||
static const char PROGMEM aud_en[] = {0xAF, 0xB0, 0};
|
||||
static const char PROGMEM aud_di[] = {0xCF, 0xD0, 0};
|
||||
# endif
|
||||
oled_write_ln_P(sep_v, false);
|
||||
oled_write_P(keymap_config.swap_lctl_lgui ? os_m_1 : os_w_1, false);
|
||||
oled_write_P(sep_h1, false);
|
||||
oled_write_P(face_1, false);
|
||||
oled_write_P(keymap_config.swap_lctl_lgui ? os_m_2 : os_w_2, false);
|
||||
oled_write_P(sep_h1, false);
|
||||
oled_write_P(face_2, false);
|
||||
oled_write_ln_P(sep_v, false);
|
||||
|
||||
led_t led_usb_state = host_keyboard_led_state();
|
||||
oled_write_P(led_usb_state.num_lock ? n_lock : b_lock, false);
|
||||
oled_write_P(led_usb_state.caps_lock ? c_lock : b_lock, false);
|
||||
oled_write_P(led_usb_state.scroll_lock ? s_lock : b_lock, false);
|
||||
oled_write_P(sep_h2, false);
|
||||
|
||||
# ifndef AUDIO_ENABLE
|
||||
oled_write_P(b_lock, false);
|
||||
# endif
|
||||
oled_write_P(b_lock, false);
|
||||
|
||||
# ifdef AUDIO_ENABLE
|
||||
oled_write_P(is_audio_on() ? aud_en : aud_di, false);
|
||||
# endif
|
||||
oled_write_P(hap_en, false);
|
||||
}
|
||||
|
||||
bool oled_task_kb(void) {
|
||||
if (!oled_task_user()) {
|
||||
return false;
|
||||
}
|
||||
if (is_keyboard_master()) {
|
||||
render_keyboard_status();
|
||||
} else {
|
||||
oled_write_raw_P(klor_face, sizeof(klor_face));
|
||||
}
|
||||
return false;
|
||||
}
|
||||
#endif
|
||||
26
keyboards/geigeigeist/klor/readme.md
Normal file
26
keyboards/geigeigeist/klor/readme.md
Normal file
@@ -0,0 +1,26 @@
|
||||
# Klor
|
||||
|
||||

|
||||
|
||||
* Keyboard Maintainer: [waffle87](https://github.com/waffle87)
|
||||
* Hardware Supported: Klor PCBs w/ Pro-Micro compatible microcontrollers
|
||||
* Hardware Availability: [github:geigeigeist/klor](https://github.com/geigeigeist/klor)
|
||||
|
||||
**Note**: Audio and Pointing Device features are disabled by default to conserve firmware space on AVR
|
||||
|
||||
Make example for this keyboard (after setting up your build environment):
|
||||
|
||||
make geigeigeist/klor:default
|
||||
|
||||
Flashing example for this keyboard:
|
||||
|
||||
make geigeigeist/klor:default:flash
|
||||
|
||||
See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](https://docs.qmk.fm/#/newbs).
|
||||
|
||||
## Bootloader
|
||||
|
||||
Enter the bootloader in 2 ways:
|
||||
|
||||
* **Bootmagic reset**: Hold down the key at (0,0) in the matrix
|
||||
* **Physical reset button**: Briefly press the button on the PCB
|
||||
1
keyboards/geigeigeist/klor/rules.mk
Normal file
1
keyboards/geigeigeist/klor/rules.mk
Normal file
@@ -0,0 +1 @@
|
||||
POINTING_DEVICE_DRIVER = paw3204
|
||||
69
keyboards/handwired/scottokeebs/scotto37/keyboard.json
Normal file
69
keyboards/handwired/scottokeebs/scotto37/keyboard.json
Normal file
@@ -0,0 +1,69 @@
|
||||
{
|
||||
"manufacturer": "ScottoKeebs",
|
||||
"keyboard_name": "Scotto37",
|
||||
"maintainer": "joe-scotto",
|
||||
"bootloader": "rp2040",
|
||||
"diode_direction": "COL2ROW",
|
||||
"features": {
|
||||
"bootmagic": true,
|
||||
"command": false,
|
||||
"console": false,
|
||||
"extrakey": true,
|
||||
"mousekey": true,
|
||||
"nkro": true
|
||||
},
|
||||
"matrix_pins": {
|
||||
"cols": ["GP2", "GP3", "GP4", "GP5", "GP6", "GP7", "GP8", "GP9", "GP29", "GP28"],
|
||||
"rows": ["GP22", "GP20", "GP23", "GP21"]
|
||||
},
|
||||
"processor": "RP2040",
|
||||
"url": "https://scottokeebs.com",
|
||||
"usb": {
|
||||
"device_version": "1.0.0",
|
||||
"pid": "0x0027",
|
||||
"vid": "0x534B"
|
||||
},
|
||||
"layouts": {
|
||||
"LAYOUT_3x10_7": {
|
||||
"layout": [
|
||||
{"matrix": [0, 0], "x": 0, "y": 0},
|
||||
{"matrix": [0, 1], "x": 1, "y": 0},
|
||||
{"matrix": [0, 2], "x": 2, "y": 0},
|
||||
{"matrix": [0, 3], "x": 3, "y": 0},
|
||||
{"matrix": [0, 4], "x": 4, "y": 0},
|
||||
{"matrix": [0, 5], "x": 5, "y": 0},
|
||||
{"matrix": [0, 6], "x": 6, "y": 0},
|
||||
{"matrix": [0, 7], "x": 7, "y": 0},
|
||||
{"matrix": [0, 8], "x": 8, "y": 0},
|
||||
{"matrix": [0, 9], "x": 9, "y": 0},
|
||||
{"matrix": [1, 0], "x": 0, "y": 1},
|
||||
{"matrix": [1, 1], "x": 1, "y": 1},
|
||||
{"matrix": [1, 2], "x": 2, "y": 1},
|
||||
{"matrix": [1, 3], "x": 3, "y": 1},
|
||||
{"matrix": [1, 4], "x": 4, "y": 1},
|
||||
{"matrix": [1, 5], "x": 5, "y": 1},
|
||||
{"matrix": [1, 6], "x": 6, "y": 1},
|
||||
{"matrix": [1, 7], "x": 7, "y": 1},
|
||||
{"matrix": [1, 8], "x": 8, "y": 1},
|
||||
{"matrix": [1, 9], "x": 9, "y": 1},
|
||||
{"matrix": [2, 0], "x": 0, "y": 2},
|
||||
{"matrix": [2, 1], "x": 1, "y": 2},
|
||||
{"matrix": [2, 2], "x": 2, "y": 2},
|
||||
{"matrix": [2, 3], "x": 3, "y": 2},
|
||||
{"matrix": [2, 4], "x": 4, "y": 2},
|
||||
{"matrix": [2, 5], "x": 5, "y": 2},
|
||||
{"matrix": [2, 6], "x": 6, "y": 2},
|
||||
{"matrix": [2, 7], "x": 7, "y": 2},
|
||||
{"matrix": [2, 8], "x": 8, "y": 2},
|
||||
{"matrix": [2, 9], "x": 9, "y": 2},
|
||||
{"matrix": [3, 0], "x": 0, "y": 3},
|
||||
{"matrix": [3, 1], "x": 1, "y": 3},
|
||||
{"matrix": [3, 2], "x": 2, "y": 3},
|
||||
{"matrix": [3, 4], "x": 4, "y": 3},
|
||||
{"matrix": [3, 7], "x": 7, "y": 3},
|
||||
{"matrix": [3, 8], "x": 8, "y": 3},
|
||||
{"matrix": [3, 9], "x": 9, "y": 3}
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,22 @@
|
||||
/*
|
||||
Copyright 2024 Joe Scotto
|
||||
|
||||
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 options
|
||||
#define TAPPING_TERM 135
|
||||
#define PERMISSIVE_HOLD
|
||||
@@ -0,0 +1,45 @@
|
||||
/*
|
||||
Copyright 2024 Joe Scotto
|
||||
|
||||
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_3x10_7(
|
||||
KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P,
|
||||
KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_BSPC,
|
||||
LSFT_T(KC_Z), KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMMA, KC_DOT, RSFT_T(KC_SLSH),
|
||||
KC_ESC, KC_LCTL, KC_LALT, LGUI_T(KC_SPC), LT(1, KC_TAB), LT(2, KC_ENT), KC_ESC
|
||||
),
|
||||
[1] = LAYOUT_3x10_7(
|
||||
KC_UNDS, KC_MINS, KC_PLUS, KC_EQL, KC_COLN, KC_GRV, KC_MRWD, KC_MPLY, KC_MFFD, KC_DEL,
|
||||
KC_LCBR, KC_LPRN, KC_RPRN, KC_RCBR, KC_PIPE, KC_ESC, KC_LEFT, KC_UP, KC_DOWN, KC_RGHT,
|
||||
LSFT_T(KC_LBRC), KC_QUOT, KC_DQUO, KC_RBRC, KC_SCLN, KC_TILDE, KC_VOLD, KC_MUTE, KC_VOLU, RSFT_T(KC_BSLS),
|
||||
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS
|
||||
),
|
||||
[2] = LAYOUT_3x10_7(
|
||||
KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_CAPS, KC_BSPC,
|
||||
KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0,
|
||||
KC_LSFT, KC_NO, KC_NO, KC_NO, MO(3), KC_NO, KC_NO, KC_COMM, KC_DOT, RSFT_T(KC_SLSH),
|
||||
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS
|
||||
),
|
||||
[3] = LAYOUT_3x10_7(
|
||||
KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO,
|
||||
KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10,
|
||||
KC_F11, KC_NO, KC_NO, QK_BOOT, KC_TRNS, KC_NO, KC_NO, KC_NO, KC_NO, KC_F12,
|
||||
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS
|
||||
)
|
||||
};
|
||||
29
keyboards/handwired/scottokeebs/scotto37/readme.md
Normal file
29
keyboards/handwired/scottokeebs/scotto37/readme.md
Normal file
@@ -0,0 +1,29 @@
|
||||
# Scotto37
|
||||
|
||||

|
||||
|
||||
A 37-key gasket-mounted 0.25u column-staggered keyboard with a 3u spacebar.
|
||||
|
||||
* Keyboard Maintainer: [Joe Scotto](https://github.com/joe-scotto)
|
||||
* Hardware Supported: RP2040 Pro Micro
|
||||
* Hardware Availability: [ScottoKeebs](https://scottokeebs.com), [Amazon](https://amazon.com), [AliExpress](https://aliexpress.com)
|
||||
|
||||
# Compiling
|
||||
|
||||
Make example for this keyboard (after setting up your build environment):
|
||||
|
||||
make handwired/scottokeebs/scotto37:default
|
||||
|
||||
Flashing example for this keyboard:
|
||||
|
||||
make handwired/scottokeebs/scotto37: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
|
||||
85
keyboards/handwired/tenstad/keyboard.json
Normal file
85
keyboards/handwired/tenstad/keyboard.json
Normal file
@@ -0,0 +1,85 @@
|
||||
{
|
||||
"manufacturer": "Amund Tenstad",
|
||||
"keyboard_name": "tenstad",
|
||||
"maintainer": "tenstad",
|
||||
"bootloader": "rp2040",
|
||||
"diode_direction": "ROW2COL",
|
||||
"features": {
|
||||
"bootmagic": true,
|
||||
"extrakey": true,
|
||||
"mousekey": true,
|
||||
"nkro": true
|
||||
},
|
||||
"matrix_pins": {
|
||||
"cols": ["GP29", "GP28", "GP27", "GP26", "GP15", "GP14"],
|
||||
"rows": ["GP3", "GP4", "GP5", "GP6"]
|
||||
},
|
||||
"processor": "RP2040",
|
||||
"split": {
|
||||
"enabled": true,
|
||||
"serial": {
|
||||
"driver": "vendor"
|
||||
},
|
||||
"transport": {
|
||||
"protocol": "serial"
|
||||
}
|
||||
},
|
||||
"url": "https://github.com/tenstad/keyboard",
|
||||
"usb": {
|
||||
"device_version": "1.0.0",
|
||||
"pid": "0x0000",
|
||||
"vid": "0xFEED"
|
||||
},
|
||||
"layouts": {
|
||||
"LAYOUT_split_3x6_5": {
|
||||
"layout": [
|
||||
{"matrix": [0, 0], "x": 0, "y": 1.35},
|
||||
{"matrix": [0, 1], "x": 1, "y": 0.95},
|
||||
{"matrix": [0, 2], "x": 2.35, "y": 0.35},
|
||||
{"matrix": [0, 3], "x": 3.35, "y": 0},
|
||||
{"matrix": [0, 4], "x": 4.65, "y": 0.4},
|
||||
{"matrix": [0, 5], "x": 5.65, "y": 0.4},
|
||||
{"matrix": [4, 5], "x": 12.25, "y": 0.4},
|
||||
{"matrix": [4, 4], "x": 13.25, "y": 0.4},
|
||||
{"matrix": [4, 3], "x": 14.55, "y": 0},
|
||||
{"matrix": [4, 2], "x": 15.55, "y": 0.35},
|
||||
{"matrix": [4, 1], "x": 16.9, "y": 0.95},
|
||||
{"matrix": [4, 0], "x": 17.9, "y": 1.35},
|
||||
{"matrix": [1, 0], "x": 0.1, "y": 2.35},
|
||||
{"matrix": [1, 1], "x": 1.1, "y": 1.95},
|
||||
{"matrix": [1, 2], "x": 2.4, "y": 1.35},
|
||||
{"matrix": [1, 3], "x": 3.4, "y": 1},
|
||||
{"matrix": [1, 4], "x": 4.65, "y": 1.4},
|
||||
{"matrix": [1, 5], "x": 5.65, "y": 1.4},
|
||||
{"matrix": [5, 5], "x": 12.25, "y": 1.4},
|
||||
{"matrix": [5, 4], "x": 13.25, "y": 1.4},
|
||||
{"matrix": [5, 3], "x": 14.5, "y": 1},
|
||||
{"matrix": [5, 2], "x": 15.5, "y": 1.35},
|
||||
{"matrix": [5, 1], "x": 16.8, "y": 1.95},
|
||||
{"matrix": [5, 0], "x": 17.8, "y": 2.35},
|
||||
{"matrix": [2, 0], "x": 0.2, "y": 3.35},
|
||||
{"matrix": [2, 1], "x": 1.2, "y": 2.95},
|
||||
{"matrix": [2, 2], "x": 2.45, "y": 2.35},
|
||||
{"matrix": [2, 3], "x": 3.45, "y": 2},
|
||||
{"matrix": [2, 4], "x": 4.65, "y": 2.4},
|
||||
{"matrix": [2, 5], "x": 5.65, "y": 2.4},
|
||||
{"matrix": [6, 5], "x": 12.25, "y": 2.4},
|
||||
{"matrix": [6, 4], "x": 13.25, "y": 2.4},
|
||||
{"matrix": [6, 3], "x": 14.45, "y": 2},
|
||||
{"matrix": [6, 2], "x": 15.45, "y": 2.35},
|
||||
{"matrix": [6, 1], "x": 16.7, "y": 2.95},
|
||||
{"matrix": [6, 0], "x": 17.7, "y": 3.35},
|
||||
{"matrix": [3, 5], "x": 6.85, "y": 3},
|
||||
{"matrix": [3, 3], "x": 7.95, "y": 3.35},
|
||||
{"matrix": [3, 4], "x": 5.6, "y": 3.95},
|
||||
{"matrix": [3, 1], "x": 6.7, "y": 4.1},
|
||||
{"matrix": [3, 2], "x": 7.8, "y": 4.45},
|
||||
{"matrix": [7, 3], "x": 9.95, "y": 3.35},
|
||||
{"matrix": [7, 5], "x": 11.05, "y": 3},
|
||||
{"matrix": [7, 2], "x": 10.1, "y": 4.45},
|
||||
{"matrix": [7, 1], "x": 11.2, "y": 4.1},
|
||||
{"matrix": [7, 4], "x": 12.3, "y": 3.95}
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
||||
55
keyboards/handwired/tenstad/keymaps/default/keymap.json
Normal file
55
keyboards/handwired/tenstad/keymaps/default/keymap.json
Normal file
@@ -0,0 +1,55 @@
|
||||
{
|
||||
"keyboard": "handwired/tenstad",
|
||||
"keymap": "default",
|
||||
"layout": "LAYOUT_split_3x6_5",
|
||||
"layers": [
|
||||
[
|
||||
"KC_ESC",
|
||||
"KC_Q",
|
||||
"KC_W",
|
||||
"KC_E",
|
||||
"KC_R",
|
||||
"KC_T",
|
||||
"KC_Y",
|
||||
"KC_U",
|
||||
"KC_I",
|
||||
"KC_O",
|
||||
"KC_P",
|
||||
"KC_RBRC",
|
||||
"KC_TAB",
|
||||
"KC_A",
|
||||
"KC_S",
|
||||
"KC_D",
|
||||
"KC_F",
|
||||
"KC_G",
|
||||
"KC_H",
|
||||
"KC_J",
|
||||
"KC_K",
|
||||
"KC_L",
|
||||
"KC_GRV",
|
||||
"KC_QUOT",
|
||||
"KC_LCTL",
|
||||
"KC_Z",
|
||||
"KC_X",
|
||||
"KC_C",
|
||||
"KC_V",
|
||||
"KC_B",
|
||||
"KC_N",
|
||||
"KC_M",
|
||||
"KC_COMM",
|
||||
"KC_DOT",
|
||||
"KC_MINS",
|
||||
"KC_RSFT",
|
||||
"KC_NO",
|
||||
"KC_NO",
|
||||
"KC_TAB",
|
||||
"KC_NO",
|
||||
"KC_NO",
|
||||
"KC_DEL",
|
||||
"KC_NO",
|
||||
"KC_BSPC",
|
||||
"KC_SPC",
|
||||
"KC_ENT"
|
||||
]
|
||||
]
|
||||
}
|
||||
19
keyboards/handwired/tenstad/readme.md
Normal file
19
keyboards/handwired/tenstad/readme.md
Normal file
@@ -0,0 +1,19 @@
|
||||
# tenstad
|
||||
|
||||

|
||||
|
||||
[tenstad/keyboard](https://github.com/tenstad/keyboard) - hand-soldered ergonomic split 3x6 keyboard with 5 thumb keys
|
||||
|
||||
* Keyboard Maintainer: [Amund Tenstad](https://github.com/tenstad)
|
||||
* Hardware Supported: RP2040 Zero
|
||||
* Hardware Availability: [List of Parts](https://github.com/tenstad/keyboard/blob/main/README.md#parts) from [AliExpress](https://aliexpress.com)
|
||||
|
||||
Make example for this keyboard (after setting up your build environment):
|
||||
|
||||
make handwired/tenstad:default
|
||||
|
||||
Flashing example for this keyboard:
|
||||
|
||||
make handwired/tenstad: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).
|
||||
137
keyboards/herevoland/buff75/keyboard.json
Normal file
137
keyboards/herevoland/buff75/keyboard.json
Normal file
@@ -0,0 +1,137 @@
|
||||
{
|
||||
"keyboard_name": "Buff75",
|
||||
"processor": "STM32F103",
|
||||
"bootloader": "stm32duino",
|
||||
"manufacturer": "HereVoLand",
|
||||
"url": "",
|
||||
"maintainer": "Here VoLand @Vem",
|
||||
"usb": {
|
||||
"vid": "0xB727",
|
||||
"pid": "0xB727",
|
||||
"device_version": "0.0.1"
|
||||
},
|
||||
"features": {
|
||||
"bootmagic": true,
|
||||
"mousekey": true,
|
||||
"extrakey": true,
|
||||
"nkro": true,
|
||||
"rgblight": true
|
||||
},
|
||||
"rgblight": {
|
||||
"led_count": 1,
|
||||
"brightness_steps": 8,
|
||||
"saturation_steps": 8,
|
||||
"sleep": true,
|
||||
"animations": {
|
||||
"breathing": true,
|
||||
"rainbow_mood": true,
|
||||
"rainbow_swirl": true,
|
||||
"snake": true,
|
||||
"knight": true,
|
||||
"christmas": true,
|
||||
"static_gradient": true,
|
||||
"alternating": true,
|
||||
"twinkle": true
|
||||
}
|
||||
},
|
||||
"ws2812": {
|
||||
"pin": "B2"
|
||||
},
|
||||
"diode_direction": "COL2ROW",
|
||||
"matrix_pins": {
|
||||
"cols": ["B9", "B8", "B7", "B6", "B5", "B4", "B3", "A15", "A8", "B15", "B14", "B13", "B12", "A3", "A4" ],
|
||||
"rows": ["A5", "B10", "B1", "B0", "A7", "A6"]
|
||||
},
|
||||
"layouts": {
|
||||
"LAYOUT": {
|
||||
"layout": [
|
||||
{"label":"Esc", "matrix": [0,0], "x":0, "y":0},
|
||||
{"label":"F1", "matrix": [0,1], "x":1.5, "y":0},
|
||||
{"label":"F2", "matrix": [0,2], "x":2.5, "y":0},
|
||||
{"label":"F3", "matrix": [0,3], "x":3.5, "y":0},
|
||||
{"label":"F4", "matrix": [0,4], "x":4.5, "y":0},
|
||||
{"label":"F5", "matrix": [0,6], "x":6, "y":0},
|
||||
{"label":"F6", "matrix": [0,7], "x":7, "y":0},
|
||||
{"label":"F7", "matrix": [0,8], "x":8, "y":0},
|
||||
{"label":"F8", "matrix": [0,9], "x":9, "y":0},
|
||||
{"label":"F9", "matrix": [0,10], "x":10.5, "y":0},
|
||||
{"label":"F10", "matrix": [0,11], "x":11.5, "y":0},
|
||||
{"label":"F11", "matrix": [0,12], "x":12.5, "y":0},
|
||||
{"label":"F12", "matrix": [0,13], "x":13.5, "y":0},
|
||||
{"label":"Home", "matrix": [0,14], "x":15, "y":0},
|
||||
|
||||
{"label":"`~", "matrix": [1,0], "x":0, "y":1.25},
|
||||
{"label":"1!", "matrix": [1,1], "x":1, "y":1.25},
|
||||
{"label":"2@", "matrix": [1,2], "x":2, "y":1.25},
|
||||
{"label":"3#", "matrix": [1,3], "x":3, "y":1.25},
|
||||
{"label":"4$", "matrix": [1,4], "x":4, "y":1.25},
|
||||
{"label":"5%", "matrix": [1,5], "x":5, "y":1.25},
|
||||
{"label":"6^", "matrix": [1,6], "x":6, "y":1.25},
|
||||
{"label":"7&", "matrix": [1,7], "x":7, "y":1.25},
|
||||
{"label":"8*", "matrix": [1,8], "x":8, "y":1.25},
|
||||
{"label":"9(", "matrix": [1,9], "x":9, "y":1.25},
|
||||
{"label":"0)", "matrix": [1,10], "x":10, "y":1.25},
|
||||
{"label":"-_", "matrix": [1,11], "x":11, "y":1.25},
|
||||
{"label":"=+", "matrix": [1,12], "x":12, "y":1.25},
|
||||
{"label":"Backspace", "matrix": [1,13], "x":13, "y":1.25},
|
||||
{"label":"Page Up", "matrix": [1,14], "x":15, "y":1.25},
|
||||
|
||||
{"label":"Tab", "matrix": [2,0], "x":0, "y":2.25, "w":1.5},
|
||||
{"label":"Q", "matrix": [2,1], "x":1.5, "y":2.25},
|
||||
{"label":"W", "matrix": [2,2], "x":2.5, "y":2.25},
|
||||
{"label":"E", "matrix": [2,3], "x":3.5, "y":2.25},
|
||||
{"label":"R", "matrix": [2,4], "x":4.5, "y":2.25},
|
||||
{"label":"T", "matrix": [2,5], "x":5.5, "y":2.25},
|
||||
{"label":"Y", "matrix": [2,6], "x":6.5, "y":2.25},
|
||||
{"label":"U", "matrix": [2,7], "x":7.5, "y":2.25},
|
||||
{"label":"I", "matrix": [2,8], "x":8.5, "y":2.25},
|
||||
{"label":"O", "matrix": [2,9], "x":9.5, "y":2.25},
|
||||
{"label":"P", "matrix": [2,10], "x":10.5, "y":2.25},
|
||||
{"label":"[", "matrix": [2,11], "x":11.5, "y":2.25},
|
||||
{"label":"]", "matrix": [2,12], "x":12.5, "y":2.25},
|
||||
{"label":"\\", "matrix": [2,13], "x":13.5, "y":2.25, "w":1.5},
|
||||
{"label":"Page Down", "matrix": [2,14], "x":15, "y":2.25},
|
||||
|
||||
{"label":"Caps Lock", "matrix": [3,0], "x":0, "y":3.25, "w":1.75},
|
||||
{"label":"A", "matrix": [3,1], "x":1.75, "y":3.25},
|
||||
{"label":"S", "matrix": [3,2], "x":2.75, "y":3.25},
|
||||
{"label":"D", "matrix": [3,3], "x":3.75, "y":3.25},
|
||||
{"label":"F", "matrix": [3,4], "x":4.75, "y":3.25},
|
||||
{"label":"G", "matrix": [3,5], "x":5.75, "y":3.25},
|
||||
{"label":"H", "matrix": [3,6], "x":6.75, "y":3.25},
|
||||
{"label":"J", "matrix": [3,7], "x":7.75, "y":3.25},
|
||||
{"label":"K", "matrix": [3,8], "x":8.75, "y":3.25},
|
||||
{"label":"L", "matrix": [3,9], "x":9.75, "y":3.25},
|
||||
{"label":";", "matrix": [3,10], "x":10.75, "y":3.25},
|
||||
{"label":"'", "matrix": [3,11], "x":11.75, "y":3.25},
|
||||
{"label":"Enter", "matrix": [3,13], "x":12.75, "y":3.25, "w":2.25},
|
||||
{"label":"End", "matrix": [3,14], "x":15, "y":3.25},
|
||||
|
||||
{"label":"Shift", "matrix": [4,0], "x":0, "y":4.25, "w":2.25},
|
||||
{"label":"Z", "matrix": [4,2], "x":2.25, "y":4.25},
|
||||
{"label":"X", "matrix": [4,3], "x":3.25, "y":4.25},
|
||||
{"label":"C", "matrix": [4,4], "x":4.25, "y":4.25},
|
||||
{"label":"V", "matrix": [4,5], "x":5.25, "y":4.25},
|
||||
{"label":"B", "matrix": [4,6], "x":6.25, "y":4.25},
|
||||
{"label":"N", "matrix": [4,7], "x":7.25, "y":4.25},
|
||||
{"label":"M", "matrix": [4,8], "x":8.25, "y":4.25},
|
||||
{"label":",", "matrix": [4,9], "x":9.25, "y":4.25},
|
||||
{"label":".", "matrix": [4,10], "x":10.25, "y":4.25},
|
||||
{"label":"/", "matrix": [4,11], "x":11.25, "y":4.25},
|
||||
{"label":"Shift", "matrix": [4,12], "x":12.25, "y":4.25, "w":1.75},
|
||||
{"label":"Up", "matrix": [4,13], "x":14, "y":4.25},
|
||||
{"label":"End", "matrix": [4,14], "x":15, "y":4.25},
|
||||
|
||||
{"label":"Ctrl", "matrix": [5,0], "x":0, "y":5.25, "w":1.25},
|
||||
{"label":"Win", "matrix": [5,1], "x":1.25, "y":5.25, "w":1.25},
|
||||
{"label":"Alt", "matrix": [5,2], "x":2.5, "y":5.25, "w":1.25},
|
||||
{"label":"Space", "matrix": [5,6], "x":3.75, "y":5.25, "w":6.25},
|
||||
{"label":"Alt", "matrix": [5,10], "x":10, "y":5.25, "w":1.25},
|
||||
{"label":"Fn", "matrix": [5,11], "x":11.25, "y":5.25, "w":1.25},
|
||||
{"label":"Left", "matrix": [5,12], "x":13, "y":5.25},
|
||||
{"label":"Down", "matrix": [5,13], "x":14, "y":5.25},
|
||||
{"label":"Right", "matrix": [5,14], "x":15, "y":5.25}
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
||||
36
keyboards/herevoland/buff75/keymaps/default/keymap.c
Normal file
36
keyboards/herevoland/buff75/keymaps/default/keymap.c
Normal file
@@ -0,0 +1,36 @@
|
||||
/* Copyright 2024 楽(HereVoLand @Vem)
|
||||
*
|
||||
* This program is free software: you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation, either version 2 of the License, or
|
||||
* (at your option) any later version.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
#include QMK_KEYBOARD_H
|
||||
|
||||
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
||||
[0] = LAYOUT(
|
||||
KC_ESC, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_HOME,
|
||||
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_PGUP,
|
||||
KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSLS, KC_PGDN,
|
||||
KC_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT, KC_DEL,
|
||||
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_RIGHT
|
||||
),
|
||||
[1] = LAYOUT(
|
||||
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_PSCR,
|
||||
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_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_UP, KC_END, KC_TRNS, KC_TRNS,
|
||||
KC_CAPS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_HOME, KC_PGUP, KC_LEFT, KC_RGHT, KC_TRNS, KC_TRNS,
|
||||
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_END, KC_PGDN, KC_DOWN, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
|
||||
KC_LCTL, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS
|
||||
)
|
||||
};
|
||||
18
keyboards/herevoland/buff75/matrix_diagram.md
Normal file
18
keyboards/herevoland/buff75/matrix_diagram.md
Normal file
@@ -0,0 +1,18 @@
|
||||
# Matrix Diagram for Buff75
|
||||
|
||||
```
|
||||
┌───┐ ┌───┬───┬───┬───┐ ┌───┬───┬───┬───┐ ┌───┬───┬───┬───┐ ┌───┐
|
||||
│00 │ │01 │02 │03 │04 │ │06 │07 │08 │09 │ │0A │0B │0C │0D │ │0E │
|
||||
└───┘ └───┴───┴───┴───┘ └───┴───┴───┴───┘ └───┴───┴───┴───┘ └───┘
|
||||
┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───────┬───┐
|
||||
│10 │11 │12 │13 │14 │15 │16 │17 │18 │19 │1A │1B │1C │1D │1E │
|
||||
├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴────┬──┼───┤
|
||||
│20 │21 │22 │23 │24 │25 │26 │27 │28 │29 │2A │2B │2C │2D│2E │
|
||||
├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬─────┴──┼───┤
|
||||
│30 │31 │32 │33 │34 │35 │36 │37 │38 │39 │3A │3B │3D │3E │
|
||||
├──────┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴────┬───┼───┤
|
||||
│40 │42 │43 │44 │45 │46 │47 │48 │49 │4A │4B │4C │4D │4E │
|
||||
├────┬───┴┬──┴─┬─┴───┴───┴───┴───┴───┴──┬┴──┬┴───┴┬─┬───┼───┼───┤
|
||||
│50 │51 │52 │56 │5A │ 5B │ │5C │5D |5E |
|
||||
└────┴────┴────┴────────────────────────┴───┴─────┘ └───┴───┘───┘
|
||||
```
|
||||
25
keyboards/herevoland/buff75/readme.md
Normal file
25
keyboards/herevoland/buff75/readme.md
Normal file
@@ -0,0 +1,25 @@
|
||||
# Buff75
|
||||
|
||||

|
||||
An 75%/TenKeyLess sized keyboard with 1 RGB.
|
||||
|
||||
* Keyboard Maintainer: [HereVoLand](https://github.com/Vem-596)
|
||||
* Hardware Supported: buff75
|
||||
* Hardware Availability: [BUFF Customer-Keyboard](https://shop107132374.taobao.com)
|
||||
|
||||
Make example for this keyboard (after setting up your build environment):
|
||||
|
||||
make herevoland/buff75:default
|
||||
|
||||
Flashing example for this keyboard:
|
||||
|
||||
make herevoland/buff75:default:flash
|
||||
|
||||
See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](https://docs.qmk.fm/#/newbs).
|
||||
|
||||
## Bootloader
|
||||
|
||||
Enter the bootloader in 2 ways:
|
||||
|
||||
- **Bootmagic reset**: Hold down the key at (0,0) in the matrix (usually the top left key which is Escape in this keyboard) and plug in the keyboard
|
||||
- **Keycode in layout**: Press the key mapped to `QK_BOOT`
|
||||
@@ -20,12 +20,12 @@ led_config_t g_led_config = {
|
||||
{ 13, 12, 11, 10, 9, 8, 7 },
|
||||
{ 0, 1, 2, 3, 4, 5, 6 },
|
||||
/*right*/
|
||||
{ NO_LED, 72, 71, 70, 73, 75, 74 },
|
||||
{ 65, 66, 67, 68, 69, NO_LED, NO_LED },
|
||||
{ 64, 63, 62, 61, 60, 59, 58 },
|
||||
{ 52, 53, 54, 55, 56, 57, NO_LED },
|
||||
{ 51, 50, 49, 48, 47, 46, 45 },
|
||||
{ 38, 39, 40, 41, 42, 43, 44 }
|
||||
{ NO_LED, 77, 76, 75, 78, 80, 79 },
|
||||
{ 70, 71, 72, 73, 74, NO_LED, NO_LED },
|
||||
{ 69, 68, 67, 66, 65, 64, 63 },
|
||||
{ 57, 58, 59, 60, 61, 62, NO_LED },
|
||||
{ 56, 55, 54, 53, 52, 51, 50 },
|
||||
{ 43, 44, 45, 46, 47, 48, 49 }
|
||||
},
|
||||
{
|
||||
// LED Index to Physical Position
|
||||
@@ -60,7 +60,7 @@ led_config_t g_led_config = {
|
||||
|
||||
#ifdef OLED_ENABLE
|
||||
|
||||
# define UNC (94 + 0x21)
|
||||
# define UNC (' ')
|
||||
typedef struct _master_to_slave_t {
|
||||
int cur_alp_index;
|
||||
char current_alp[7];
|
||||
@@ -115,8 +115,8 @@ void render_layer_helper_fun(uint8_t start_line, const char *data, uint8_t gap_w
|
||||
for (j = 0; j < l; ++j) { // font index
|
||||
for (k = 0; k < 12; ++k) { // font byte index
|
||||
// base + logo_w(32) + gap_w(12) +l*font_w(12)+current_byte_index
|
||||
oled_write_raw_byte(pgm_read_byte(&ext_big_font[pgm_read_byte(&data[j]) - 0x21][k]), start_line * 2 * 128 + 32 + gap_w + j * 12 + k);
|
||||
oled_write_raw_byte(pgm_read_byte(&ext_big_font[pgm_read_byte(&data[j]) - 0x21][k + 12]), start_line * 2 * 128 + 128 + 32 + gap_w + j * 12 + k);
|
||||
oled_write_raw_byte(pgm_read_byte(&ext_big_font[pgm_read_byte(&data[j]) - 0x20][k]), start_line * 2 * 128 + 32 + gap_w + j * 12 + k);
|
||||
oled_write_raw_byte(pgm_read_byte(&ext_big_font[pgm_read_byte(&data[j]) - 0x20][k + 12]), start_line * 2 * 128 + 128 + 32 + gap_w + j * 12 + k);
|
||||
}
|
||||
}
|
||||
for (j = 0; j < gap_w; ++j) {
|
||||
@@ -151,8 +151,8 @@ void render_cur_input_helper_fun(uint8_t start_line, const char *data, uint8_t g
|
||||
for (j = 0; j < l; ++j) { // font index
|
||||
for (k = 0; k < 12; ++k) { // font byte index
|
||||
// base + logo_w(0) + gap_w(12) +l*font_w(12)+current_byte_index
|
||||
oled_write_raw_byte(pgm_read_byte(&ext_big_font[data[j] - 0x21][k]), start_line * 2 * 128 + gap_w + j * 12 + k);
|
||||
oled_write_raw_byte(pgm_read_byte(&ext_big_font[data[j] - 0x21][12 + k]), start_line * 2 * 128 + 128 + gap_w + j * 12 + k);
|
||||
oled_write_raw_byte(pgm_read_byte(&ext_big_font[data[j] - 0x20][k]), start_line * 2 * 128 + gap_w + j * 12 + k);
|
||||
oled_write_raw_byte(pgm_read_byte(&ext_big_font[data[j] - 0x20][12 + k]), start_line * 2 * 128 + 128 + gap_w + j * 12 + k);
|
||||
}
|
||||
}
|
||||
for (j = 0; j < gap_w; ++j) {
|
||||
|
||||
@@ -7,116 +7,116 @@
|
||||
#include "progmem.h"
|
||||
|
||||
/*
|
||||
!(0) "(1) #(2) $(3) %(4) &(5) '(6) ((7)
|
||||
)(8) *(9) +(10) ,(11) -(12) .(13) /(14) 0(15)
|
||||
1(16) 2(17) 3(18) 4(19) 5(20) 6(21) 7(22) 8(23)
|
||||
9(24) :(25) ;(26) <(27) =(28) >(29) ?(30) @(31)
|
||||
A(32) B(33) C(34) D(35) E(36) F(37) G(38) H(39)
|
||||
I(40) J(41) K(42) L(43) M(44) N(45) O(46) P(47)
|
||||
Q(48) R(49) S(50) T(51) U(52) V(53) W(54) X(55)
|
||||
Y(56) Z(57) [(58) \(59) ](60) ^(61) _(62) `(63)
|
||||
a(64) b(65) c(66) d(67) e(68) f(69) g(70) h(71)
|
||||
i(72) j(73) k(74) l(75) m(76) n(77) o(78) p(79)
|
||||
q(80) r(81) s(82) t(83) u(84) v(85) w(86) x(87)
|
||||
y(88) z(89) {(90) |(91) }(92) ~(93) (94)
|
||||
(0) !(1) "(2) #(3) $(4) %(5) &(6) '(7) ((8)
|
||||
)(9) *(10) +(11) ,(12) -(13) .(14) /(15) 0(16)
|
||||
1(17) 2(18) 3(19) 4(20) 5(21) 6(22) 7(23) 8(24)
|
||||
9(25) :(26) ;(27) <(28) =(29) >(30) ?(31) @(32)
|
||||
A(33) B(34) C(35) D(36) E(37) F(38) G(39) H(40)
|
||||
I(41) J(42) K(43) L(44) M(45) N(46) O(47) P(48)
|
||||
Q(49) R(50) S(51) T(52) U(53) V(54) W(55) X(56)
|
||||
Y(57) Z(58) [(59) \(60) ](61) ^(62) _(63) `(64)
|
||||
a(65) b(66) c(67) d(68) e(69) f(70) g(71) h(72)
|
||||
i(73) j(74) k(75) l(76) m(77) n(78) o(79) p(80)
|
||||
q(81) r(82) s(83) t(84) u(85) v(86) w(87) x(88)
|
||||
y(89) z(90) {(91) |(92) }(93) ~(94)
|
||||
*/
|
||||
|
||||
static const unsigned char ext_big_font[95][24] PROGMEM = {
|
||||
{0x00,0x00,0x00,0x00,0xFC,0xFC,0xFC,0xFC,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x1B,0x1B,0x1B,0x1B,0x00,0x00,0x00,0x00},/*"!",0*/
|
||||
{0x00,0x00,0x00,0x18,0xF8,0x18,0x00,0x18,0xF8,0x18,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},/*""",1*/
|
||||
{0x00,0x00,0x60,0x60,0xFE,0xFE,0x60,0xFE,0xFE,0x60,0x00,0x00,0x00,0x00,0x06,0x7F,0x7F,0x06,0x7F,0x7F,0x06,0x06,0x00,0x00},/*"#",2*/
|
||||
{0x00,0x00,0x00,0xF0,0xF8,0x9E,0x9E,0xB8,0x38,0x00,0x00,0x00,0x00,0x00,0x00,0x1C,0x1C,0xF9,0xF9,0x1F,0x0F,0x00,0x00,0x00},/*"$",3*/
|
||||
{0x00,0x00,0x38,0x44,0xC4,0xC4,0xB8,0x40,0x40,0x00,0x00,0x00,0x00,0x00,0x01,0x01,0x0E,0x11,0x11,0x11,0x0E,0x00,0x00,0x00},/*"%",4*/
|
||||
{0x00,0x00,0x60,0xE0,0xB0,0x30,0x30,0x30,0x30,0x00,0x00,0x00,0x00,0x0E,0x0F,0x19,0x19,0x1B,0x1E,0x0E,0x0F,0x1B,0x00,0x00},/*"&",5*/
|
||||
{0x00,0x00,0x00,0x00,0x00,0x18,0xF8,0x18,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},/*"'",6*/
|
||||
{0x00,0x00,0x00,0x00,0x00,0xC0,0xF0,0x3C,0x0C,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x07,0x1F,0x78,0x60,0x00,0x00,0x00},/*"(",7*/
|
||||
{0x00,0x00,0x0C,0x3C,0xF0,0xC0,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x60,0x78,0x1F,0x07,0x00,0x00,0x00,0x00,0x00,0x00},/*")",8*/
|
||||
{0x00,0x00,0x30,0xB0,0xF0,0xFC,0xFC,0xF0,0xB0,0x30,0x00,0x00,0x00,0x00,0x00,0x01,0x01,0x00,0x00,0x01,0x01,0x00,0x00,0x00},/*"*",9*/
|
||||
{0x00,0x80,0x80,0x80,0x80,0xF8,0xF8,0x80,0x80,0x80,0x80,0x00,0x00,0x01,0x01,0x01,0x01,0x1F,0x1F,0x01,0x01,0x01,0x01,0x00},/*"+",10*/
|
||||
{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xE0,0x38,0x08,0x00,0x00,0x00,0x00,0x00},/*",",11*/
|
||||
{0x00,0x00,0x00,0x80,0x80,0x80,0x80,0x80,0x80,0x80,0x00,0x00,0x00,0x00,0x00,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x00,0x00},/*"-",12*/
|
||||
{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x18,0x18,0x18,0x00,0x00,0x00,0x00},/*".",13*/
|
||||
{0x00,0x00,0x00,0x00,0x00,0x80,0xE0,0x78,0x1E,0x06,0x00,0x00,0x00,0x00,0x60,0x78,0x1E,0x07,0x01,0x00,0x00,0x00,0x00,0x00},/*"/",14*/
|
||||
{0x00,0x00,0xF0,0xF8,0x1C,0x0C,0x1C,0xF8,0xF0,0x00,0x00,0x00,0x00,0x00,0x07,0x0F,0x1C,0x18,0x1C,0x0F,0x07,0x00,0x00,0x00},/*"0",15*/
|
||||
{0x00,0x00,0x18,0x18,0x18,0xFC,0xFC,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x18,0x18,0x18,0x1F,0x1F,0x18,0x18,0x18,0x00,0x00},/*"1",16*/
|
||||
{0x00,0x00,0x30,0x38,0x0C,0x0C,0x8C,0xF8,0x70,0x00,0x00,0x00,0x00,0x00,0x18,0x1C,0x1E,0x1B,0x19,0x18,0x18,0x00,0x00,0x00},/*"2",17*/
|
||||
{0x00,0x00,0x18,0x1C,0xCC,0xCC,0xCC,0xFC,0x38,0x00,0x00,0x00,0x00,0x0C,0x1C,0x18,0x18,0x18,0x19,0x0F,0x07,0x00,0x00,0x00},/*"3",18*/
|
||||
{0x00,0x00,0xC0,0xE0,0x78,0x1C,0xFC,0xFC,0x00,0x00,0x00,0x00,0x00,0x03,0x03,0x03,0x1B,0x1B,0x1F,0x1F,0x1B,0x00,0x00,0x00},/*"4",19*/
|
||||
{0x00,0x00,0xFC,0xFC,0xCC,0xCC,0xCC,0x8C,0x00,0x00,0x00,0x00,0x00,0x0C,0x1C,0x18,0x18,0x18,0x18,0x0F,0x07,0x00,0x00,0x00},/*"5",20*/
|
||||
{0x00,0x00,0xE0,0xF0,0xB8,0xDC,0xCC,0xCC,0x8C,0x00,0x00,0x00,0x00,0x00,0x07,0x0F,0x19,0x18,0x18,0x1F,0x0F,0x00,0x00,0x00},/*"6",21*/
|
||||
{0x00,0x00,0x1C,0x1C,0x0C,0x0C,0xCC,0xFC,0x3C,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x1C,0x1F,0x03,0x00,0x00,0x00,0x00},/*"7",22*/
|
||||
{0x00,0x00,0x38,0xFC,0xCC,0xCC,0xCC,0xFC,0x38,0x00,0x00,0x00,0x00,0x00,0x0F,0x1F,0x18,0x18,0x18,0x1F,0x0F,0x00,0x00,0x00},/*"8",23*/
|
||||
{0x00,0x00,0xF8,0xFC,0x8C,0x8C,0xCC,0xF8,0xF0,0x00,0x00,0x00,0x00,0x00,0x18,0x19,0x19,0x1D,0x0E,0x07,0x03,0x00,0x00,0x00},/*"9",24*/
|
||||
{0x00,0x00,0x00,0x00,0x00,0x60,0x60,0x60,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x18,0x18,0x18,0x00,0x00,0x00,0x00},/*":",25*/
|
||||
{0x00,0x00,0x00,0x00,0x00,0x60,0x60,0x60,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x60,0x18,0x08,0x00,0x00,0x00,0x00,0x00},/*";",26*/
|
||||
{0x00,0x00,0x00,0x80,0x80,0xC0,0x60,0x60,0x30,0x30,0x00,0x00,0x00,0x01,0x01,0x03,0x03,0x06,0x0C,0x0C,0x18,0x18,0x00,0x00},/*"<",27*/
|
||||
{0x00,0xC0,0xC0,0xC0,0xC0,0xC0,0xC0,0xC0,0xC0,0xC0,0x00,0x00,0x00,0x06,0x06,0x06,0x06,0x06,0x06,0x06,0x06,0x06,0x00,0x00},/*"=",28*/
|
||||
{0x00,0x30,0x30,0x60,0x60,0xC0,0x80,0x80,0x00,0x00,0x00,0x00,0x00,0x18,0x18,0x0C,0x0C,0x06,0x03,0x03,0x01,0x01,0x00,0x00},/*">",29*/
|
||||
{0x00,0x00,0x70,0x78,0x18,0x18,0x98,0xF8,0xF0,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x1B,0x1B,0x01,0x01,0x00,0x00,0x00,0x00},/*"?",30*/
|
||||
{0x00,0x00,0xF0,0x08,0xC4,0x24,0x24,0xF8,0x00,0x00,0x00,0x00,0x00,0x00,0x0F,0x10,0x21,0x22,0x22,0x13,0x00,0x00,0x00,0x00},/*"@",31*/
|
||||
{0x00,0x00,0x18,0x98,0xF8,0x38,0x38,0xF0,0x80,0x00,0x00,0x00,0x00,0x18,0x1C,0x1F,0x1B,0x03,0x03,0x1B,0x1F,0x1C,0x18,0x00},/*"A",32*/
|
||||
{0x00,0x18,0xF8,0xF8,0x98,0x98,0x98,0xF8,0x70,0x00,0x00,0x00,0x00,0x18,0x1F,0x1F,0x19,0x19,0x19,0x19,0x1F,0x0E,0x00,0x00},/*"B",33*/
|
||||
{0x00,0xE0,0xF0,0x38,0x18,0x18,0x18,0x10,0x78,0x78,0x00,0x00,0x00,0x07,0x0F,0x0C,0x18,0x18,0x18,0x18,0x0C,0x0C,0x00,0x00},/*"C",34*/
|
||||
{0x00,0x18,0xF8,0xF8,0x18,0x18,0x18,0x38,0xF0,0xE0,0x00,0x00,0x00,0x18,0x1F,0x1F,0x18,0x18,0x18,0x1C,0x0F,0x07,0x00,0x00},/*"D",35*/
|
||||
{0x00,0x18,0xF8,0xF8,0x98,0xD8,0xD8,0x18,0x78,0x78,0x00,0x00,0x00,0x18,0x1F,0x1F,0x19,0x1B,0x1B,0x18,0x1E,0x1E,0x00,0x00},/*"E",36*/
|
||||
{0x00,0x18,0xF8,0xF8,0x98,0xD8,0xD8,0x18,0x78,0x78,0x00,0x00,0x00,0x18,0x1F,0x1F,0x19,0x1B,0x1B,0x00,0x00,0x00,0x00,0x00},/*"F",37*/
|
||||
{0x00,0xE0,0xF0,0x38,0x18,0x18,0x10,0x38,0x38,0x00,0x00,0x00,0x00,0x07,0x0F,0x1C,0x18,0x1B,0x1B,0x1F,0x0F,0x03,0x00,0x00},/*"G",38*/
|
||||
{0x00,0x18,0xF8,0xF8,0x98,0x80,0x98,0xF8,0xF8,0x18,0x00,0x00,0x00,0x18,0x1F,0x1F,0x19,0x01,0x19,0x1F,0x1F,0x18,0x00,0x00},/*"H",39*/
|
||||
{0x00,0x00,0x18,0x18,0x18,0xF8,0xF8,0x18,0x18,0x18,0x00,0x00,0x00,0x00,0x18,0x18,0x18,0x1F,0x1F,0x18,0x18,0x18,0x00,0x00},/*"I",40*/
|
||||
{0x00,0x00,0x00,0x00,0x18,0x18,0x18,0xF8,0xF8,0x18,0x18,0x00,0x00,0x00,0x0F,0x0F,0x18,0x18,0x18,0x0F,0x0F,0x00,0x00,0x00},/*"J",41*/
|
||||
{0x00,0x18,0xF8,0xF8,0x98,0xC0,0x78,0x38,0x18,0x18,0x00,0x00,0x00,0x18,0x1F,0x1F,0x19,0x01,0x07,0x1E,0x18,0x18,0x00,0x00},/*"K",42*/
|
||||
{0x00,0x18,0x18,0xF8,0xF8,0x18,0x18,0x00,0x00,0x00,0x00,0x00,0x00,0x18,0x18,0x1F,0x1F,0x18,0x18,0x18,0x1F,0x1F,0x00,0x00},/*"L",43*/
|
||||
{0x18,0xF8,0xF8,0x38,0xE0,0x00,0xE0,0x38,0xF8,0xF8,0x18,0x00,0x18,0x1F,0x1F,0x18,0x19,0x03,0x19,0x18,0x1F,0x1F,0x18,0x00},/*"M",44*/
|
||||
{0x00,0x18,0xF8,0xF8,0xF8,0xE0,0x18,0xF8,0xF8,0x18,0x00,0x00,0x00,0x18,0x1F,0x1F,0x18,0x03,0x1F,0x1F,0x1F,0x00,0x00,0x00},/*"N",45*/
|
||||
{0x00,0xC0,0xF0,0x30,0x18,0x18,0x18,0x30,0xF0,0xC0,0x00,0x00,0x00,0x03,0x0F,0x0C,0x18,0x18,0x18,0x0C,0x0F,0x03,0x00,0x00},/*"O",46*/
|
||||
{0x00,0x18,0xF8,0xF8,0x98,0x98,0x98,0xF8,0xF0,0x00,0x00,0x00,0x00,0x18,0x1F,0x1F,0x19,0x19,0x19,0x01,0x00,0x00,0x00,0x00},/*"P",47*/
|
||||
{0x00,0xC0,0xF0,0x30,0x18,0x18,0x18,0x30,0xF0,0xC0,0x00,0x00,0x00,0x03,0x0F,0xCC,0xF8,0x78,0x78,0xCC,0xEF,0x63,0x00,0x00},/*"Q",48*/
|
||||
{0x00,0x18,0xF8,0xF8,0x98,0x98,0x98,0xF8,0x70,0x00,0x00,0x00,0x00,0x18,0x1F,0x1F,0x19,0x1B,0x07,0x0E,0x1C,0x18,0x00,0x00},/*"R",49*/
|
||||
{0x00,0x00,0x70,0xF8,0x98,0x98,0x90,0x38,0x38,0x00,0x00,0x00,0x00,0x00,0x1C,0x1C,0x09,0x19,0x19,0x1F,0x0E,0x00,0x00,0x00},/*"S",50*/
|
||||
{0x00,0xF8,0xF8,0x18,0x18,0xF8,0xF8,0x18,0x18,0xF8,0xF8,0x00,0x00,0x00,0x00,0x18,0x18,0x1F,0x1F,0x18,0x18,0x00,0x00,0x00},/*"T",51*/
|
||||
{0x00,0x18,0xF8,0xF8,0x18,0x00,0x18,0xF8,0xF8,0x18,0x00,0x00,0x00,0x00,0x07,0x0F,0x18,0x18,0x18,0x0F,0x07,0x00,0x00,0x00},/*"U",52*/
|
||||
{0x00,0x18,0x78,0xF8,0x98,0x00,0x98,0xF8,0x78,0x18,0x00,0x00,0x00,0x00,0x00,0x03,0x1F,0x18,0x1F,0x03,0x00,0x00,0x00,0x00},/*"V",53*/
|
||||
{0x18,0xF8,0xF8,0x18,0xD8,0xC0,0xD8,0x18,0xF8,0xF8,0x18,0x00,0x00,0x01,0x1F,0x1C,0x1F,0x01,0x1F,0x1C,0x1F,0x01,0x00,0x00},/*"W",54*/
|
||||
{0x00,0x18,0x38,0x78,0xD8,0x80,0xD8,0x78,0x38,0x18,0x00,0x00,0x00,0x18,0x1C,0x1E,0x1B,0x01,0x1B,0x1E,0x1C,0x18,0x00,0x00},/*"X",55*/
|
||||
{0x00,0x18,0x38,0x78,0xD8,0x80,0x80,0xD8,0x78,0x38,0x18,0x00,0x00,0x00,0x00,0x18,0x18,0x1F,0x1F,0x18,0x18,0x00,0x00,0x00},/*"Y",56*/
|
||||
{0x00,0x00,0x78,0x78,0x18,0x98,0xD8,0x78,0x38,0x00,0x00,0x00,0x00,0x00,0x1C,0x1E,0x1B,0x19,0x18,0x1E,0x1E,0x00,0x00,0x00},/*"Z",57*/
|
||||
{0x00,0x00,0x00,0x00,0x00,0xFC,0xFC,0x0C,0x0C,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x7F,0x7F,0x60,0x60,0x00,0x00,0x00},/*"[",58*/
|
||||
{0x00,0x00,0x06,0x1E,0x78,0xE0,0x80,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x01,0x07,0x1E,0x78,0x60,0x00,0x00},/*"\",59*/
|
||||
{0x00,0x00,0x00,0x0C,0x0C,0xFC,0xFC,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x60,0x60,0x7F,0x7F,0x00,0x00,0x00,0x00,0x00},/*"]",60*/
|
||||
{0x00,0x00,0x00,0x60,0x70,0x18,0x0C,0x18,0x70,0x60,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},/*"^",61*/
|
||||
{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},/*"_",62*/
|
||||
{0x00,0x00,0x00,0x00,0x02,0x04,0x08,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},/*"`",63*/
|
||||
{0x00,0x00,0x00,0x60,0x60,0x60,0x60,0xE0,0xC0,0x00,0x00,0x00,0x00,0x00,0x0E,0x1F,0x1B,0x1B,0x0B,0x1F,0x1F,0x18,0x00,0x00},/*"a",64*/
|
||||
{0x00,0x0C,0xFC,0xFC,0xC0,0x60,0x60,0xE0,0xC0,0x80,0x00,0x00,0x00,0x18,0x1F,0x1F,0x0C,0x18,0x18,0x1C,0x0F,0x07,0x00,0x00},/*"b",65*/
|
||||
{0x00,0x00,0x80,0xC0,0xE0,0x60,0x60,0x60,0xC0,0xE0,0x00,0x00,0x00,0x00,0x07,0x0F,0x1C,0x18,0x18,0x18,0x18,0x0C,0x00,0x00},/*"c",66*/
|
||||
{0x00,0x00,0x80,0xC0,0xE0,0x60,0x60,0xCC,0xFC,0xFC,0x00,0x00,0x00,0x00,0x07,0x0F,0x1C,0x18,0x18,0x0C,0x1F,0x1F,0x18,0x00},/*"d",67*/
|
||||
{0x00,0x00,0x80,0xC0,0x60,0x60,0x60,0x60,0xC0,0x80,0x00,0x00,0x00,0x00,0x07,0x0F,0x1B,0x1B,0x1B,0x1B,0x1B,0x0B,0x00,0x00},/*"e",68*/
|
||||
{0x00,0x00,0x60,0x60,0xF8,0xFC,0x6C,0x6C,0x6C,0x6C,0x00,0x00,0x00,0x00,0x18,0x18,0x1F,0x1F,0x18,0x18,0x18,0x00,0x00,0x00},/*"f",69*/
|
||||
{0x00,0x00,0x80,0xC0,0xE0,0x60,0x60,0xC0,0xE0,0xE0,0x60,0x00,0x00,0x00,0x07,0x0F,0xDC,0xD8,0xD8,0xCC,0xFF,0x7F,0x00,0x00},/*"g",70*/
|
||||
{0x00,0x0C,0xFC,0xFC,0xC0,0x60,0x60,0x60,0xE0,0xC0,0x00,0x00,0x00,0x18,0x1F,0x1F,0x18,0x00,0x00,0x18,0x1F,0x1F,0x18,0x00},/*"h",71*/
|
||||
{0x00,0x00,0x00,0x60,0x60,0xEC,0xEC,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x18,0x18,0x18,0x1F,0x1F,0x18,0x18,0x18,0x00,0x00},/*"i",72*/
|
||||
{0x00,0x00,0x60,0x60,0x60,0x6C,0x6C,0xE0,0xE0,0x00,0x00,0x00,0x00,0x00,0xC0,0xC0,0xC0,0xC0,0xC0,0xFF,0x7F,0x00,0x00,0x00},/*"j",73*/
|
||||
{0x00,0x00,0x0C,0xFC,0xFC,0x80,0xE0,0x60,0x60,0x60,0x00,0x00,0x00,0x00,0x18,0x1F,0x1F,0x03,0x06,0x1C,0x18,0x18,0x00,0x00},/*"k",74*/
|
||||
{0x00,0x00,0x00,0x0C,0x0C,0xFC,0xFC,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x18,0x18,0x18,0x1F,0x1F,0x18,0x18,0x18,0x00,0x00},/*"l",75*/
|
||||
{0x00,0x60,0xE0,0xE0,0x60,0xE0,0xC0,0x60,0xE0,0xC0,0x00,0x00,0x00,0x18,0x1F,0x1F,0x00,0x1F,0x1F,0x00,0x1F,0x1F,0x18,0x00},/*"m",76*/
|
||||
{0x00,0x60,0xE0,0xE0,0xC0,0x60,0x60,0x60,0xE0,0xC0,0x00,0x00,0x00,0x18,0x1F,0x1F,0x18,0x00,0x00,0x18,0x1F,0x1F,0x18,0x00},/*"n",77*/
|
||||
{0x00,0x00,0x80,0xC0,0xE0,0x60,0x60,0xE0,0xC0,0x80,0x00,0x00,0x00,0x00,0x07,0x0F,0x1C,0x18,0x18,0x1C,0x0F,0x07,0x00,0x00},/*"o",78*/
|
||||
{0x00,0x60,0xE0,0xE0,0xC0,0x60,0x60,0xE0,0xC0,0x80,0x00,0x00,0x00,0xC0,0xFF,0xFF,0xCC,0xD8,0x18,0x1C,0x0F,0x07,0x00,0x00},/*"p",79*/
|
||||
{0x00,0x00,0x80,0xC0,0xE0,0x60,0x60,0xC0,0xE0,0xE0,0x60,0x00,0x00,0x00,0x07,0x0F,0x1C,0x18,0xD8,0xCC,0xFF,0xFF,0xC0,0x00},/*"q",80*/
|
||||
{0x00,0x00,0x60,0x60,0xE0,0xE0,0xC0,0x60,0x60,0x60,0x00,0x00,0x00,0x00,0x18,0x18,0x1F,0x1F,0x18,0x18,0x18,0x00,0x00,0x00},/*"r",81*/
|
||||
{0x00,0x00,0xC0,0xE0,0x60,0x60,0x60,0xE0,0xE0,0x00,0x00,0x00,0x00,0x00,0x1D,0x1D,0x1B,0x1B,0x1B,0x1E,0x0E,0x00,0x00,0x00},/*"s",82*/
|
||||
{0x00,0x00,0x60,0x60,0xFC,0xFC,0x60,0x60,0x60,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x0F,0x1F,0x18,0x18,0x18,0x0C,0x00,0x00},/*"t",83*/
|
||||
{0x00,0x60,0xE0,0xE0,0x00,0x00,0x00,0x60,0xE0,0xE0,0x00,0x00,0x00,0x00,0x0F,0x1F,0x18,0x18,0x18,0x0C,0x1F,0x1F,0x18,0x00},/*"u",84*/
|
||||
{0x00,0x60,0xE0,0xE0,0x60,0x00,0x60,0xE0,0xE0,0x60,0x00,0x00,0x00,0x00,0x00,0x07,0x1F,0x18,0x1F,0x07,0x00,0x00,0x00,0x00},/*"v",85*/
|
||||
{0x60,0xE0,0xE0,0x60,0x00,0x80,0x00,0x60,0xE0,0xE0,0x60,0x00,0x00,0x01,0x1F,0x1E,0x07,0x03,0x07,0x1E,0x1F,0x01,0x00,0x00},/*"w",86*/
|
||||
{0x00,0x00,0x60,0xE0,0xE0,0x00,0x00,0xE0,0xE0,0x60,0x00,0x00,0x00,0x00,0x18,0x1C,0x1F,0x03,0x03,0x1F,0x1C,0x18,0x00,0x00},/*"x",87*/
|
||||
{0x00,0x60,0xE0,0xE0,0x60,0x00,0x00,0x60,0xE0,0xE0,0x60,0x00,0x00,0xC0,0xC0,0xC1,0xE7,0xFE,0xDC,0xC7,0x03,0x00,0x00,0x00},/*"y",88*/
|
||||
{0x00,0x00,0xE0,0xE0,0x60,0x60,0x60,0xE0,0xE0,0x60,0x00,0x00,0x00,0x00,0x18,0x1C,0x1E,0x1B,0x1B,0x19,0x1C,0x1C,0x00,0x00},/*"z",89*/
|
||||
{0x00,0x00,0x00,0x00,0x00,0xF8,0xFC,0x0C,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x01,0x3F,0x7E,0x60,0x00,0x00,0x00,0x00},/*"{",90*/
|
||||
{0x00,0x00,0x00,0x00,0x00,0xFC,0xFC,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x7F,0x7F,0x00,0x00,0x00,0x00,0x00},/*"|",91*/
|
||||
{0x00,0x00,0x00,0x00,0x0C,0xFC,0xF8,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x60,0x7E,0x3F,0x01,0x00,0x00,0x00,0x00},/*"}",92*/
|
||||
{0x00,0x00,0x80,0xC0,0xC0,0xC0,0x80,0x00,0x80,0x80,0x00,0x00,0x00,0x00,0x01,0x01,0x00,0x01,0x03,0x03,0x03,0x01,0x00,0x00},/*"~",93*/
|
||||
{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},/*" ",94*/
|
||||
{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},/*" ",0*/
|
||||
{0x00,0x00,0x00,0x00,0xFC,0xFC,0xFC,0xFC,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x1B,0x1B,0x1B,0x1B,0x00,0x00,0x00,0x00},/*"!",1*/
|
||||
{0x00,0x00,0x00,0x18,0xF8,0x18,0x00,0x18,0xF8,0x18,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},/*""",2*/
|
||||
{0x00,0x00,0x60,0x60,0xFE,0xFE,0x60,0xFE,0xFE,0x60,0x00,0x00,0x00,0x00,0x06,0x7F,0x7F,0x06,0x7F,0x7F,0x06,0x06,0x00,0x00},/*"#",3*/
|
||||
{0x00,0x00,0x00,0xF0,0xF8,0x9E,0x9E,0xB8,0x38,0x00,0x00,0x00,0x00,0x00,0x00,0x1C,0x1C,0xF9,0xF9,0x1F,0x0F,0x00,0x00,0x00},/*"$",4*/
|
||||
{0x00,0x00,0x38,0x44,0xC4,0xC4,0xB8,0x40,0x40,0x00,0x00,0x00,0x00,0x00,0x01,0x01,0x0E,0x11,0x11,0x11,0x0E,0x00,0x00,0x00},/*"%",5*/
|
||||
{0x00,0x00,0x60,0xE0,0xB0,0x30,0x30,0x30,0x30,0x00,0x00,0x00,0x00,0x0E,0x0F,0x19,0x19,0x1B,0x1E,0x0E,0x0F,0x1B,0x00,0x00},/*"&",6*/
|
||||
{0x00,0x00,0x00,0x00,0x00,0x18,0xF8,0x18,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},/*"'",7*/
|
||||
{0x00,0x00,0x00,0x00,0x00,0xC0,0xF0,0x3C,0x0C,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x07,0x1F,0x78,0x60,0x00,0x00,0x00},/*"(",8*/
|
||||
{0x00,0x00,0x0C,0x3C,0xF0,0xC0,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x60,0x78,0x1F,0x07,0x00,0x00,0x00,0x00,0x00,0x00},/*")",9*/
|
||||
{0x00,0x00,0x30,0xB0,0xF0,0xFC,0xFC,0xF0,0xB0,0x30,0x00,0x00,0x00,0x00,0x00,0x01,0x01,0x00,0x00,0x01,0x01,0x00,0x00,0x00},/*"*",10*/
|
||||
{0x00,0x80,0x80,0x80,0x80,0xF8,0xF8,0x80,0x80,0x80,0x80,0x00,0x00,0x01,0x01,0x01,0x01,0x1F,0x1F,0x01,0x01,0x01,0x01,0x00},/*"+",11*/
|
||||
{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xE0,0x38,0x08,0x00,0x00,0x00,0x00,0x00},/*",",12*/
|
||||
{0x00,0x00,0x00,0x80,0x80,0x80,0x80,0x80,0x80,0x80,0x00,0x00,0x00,0x00,0x00,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x00,0x00},/*"-",13*/
|
||||
{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x18,0x18,0x18,0x00,0x00,0x00,0x00},/*".",14*/
|
||||
{0x00,0x00,0x00,0x00,0x00,0x80,0xE0,0x78,0x1E,0x06,0x00,0x00,0x00,0x00,0x60,0x78,0x1E,0x07,0x01,0x00,0x00,0x00,0x00,0x00},/*"/",15*/
|
||||
{0x00,0x00,0xF0,0xF8,0x1C,0x0C,0x1C,0xF8,0xF0,0x00,0x00,0x00,0x00,0x00,0x07,0x0F,0x1C,0x18,0x1C,0x0F,0x07,0x00,0x00,0x00},/*"0",16*/
|
||||
{0x00,0x00,0x18,0x18,0x18,0xFC,0xFC,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x18,0x18,0x18,0x1F,0x1F,0x18,0x18,0x18,0x00,0x00},/*"1",17*/
|
||||
{0x00,0x00,0x30,0x38,0x0C,0x0C,0x8C,0xF8,0x70,0x00,0x00,0x00,0x00,0x00,0x18,0x1C,0x1E,0x1B,0x19,0x18,0x18,0x00,0x00,0x00},/*"2",18*/
|
||||
{0x00,0x00,0x18,0x1C,0xCC,0xCC,0xCC,0xFC,0x38,0x00,0x00,0x00,0x00,0x0C,0x1C,0x18,0x18,0x18,0x19,0x0F,0x07,0x00,0x00,0x00},/*"3",19*/
|
||||
{0x00,0x00,0xC0,0xE0,0x78,0x1C,0xFC,0xFC,0x00,0x00,0x00,0x00,0x00,0x03,0x03,0x03,0x1B,0x1B,0x1F,0x1F,0x1B,0x00,0x00,0x00},/*"4",20*/
|
||||
{0x00,0x00,0xFC,0xFC,0xCC,0xCC,0xCC,0x8C,0x00,0x00,0x00,0x00,0x00,0x0C,0x1C,0x18,0x18,0x18,0x18,0x0F,0x07,0x00,0x00,0x00},/*"5",21*/
|
||||
{0x00,0x00,0xE0,0xF0,0xB8,0xDC,0xCC,0xCC,0x8C,0x00,0x00,0x00,0x00,0x00,0x07,0x0F,0x19,0x18,0x18,0x1F,0x0F,0x00,0x00,0x00},/*"6",22*/
|
||||
{0x00,0x00,0x1C,0x1C,0x0C,0x0C,0xCC,0xFC,0x3C,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x1C,0x1F,0x03,0x00,0x00,0x00,0x00},/*"7",23*/
|
||||
{0x00,0x00,0x38,0xFC,0xCC,0xCC,0xCC,0xFC,0x38,0x00,0x00,0x00,0x00,0x00,0x0F,0x1F,0x18,0x18,0x18,0x1F,0x0F,0x00,0x00,0x00},/*"8",24*/
|
||||
{0x00,0x00,0xF8,0xFC,0x8C,0x8C,0xCC,0xF8,0xF0,0x00,0x00,0x00,0x00,0x00,0x18,0x19,0x19,0x1D,0x0E,0x07,0x03,0x00,0x00,0x00},/*"9",25*/
|
||||
{0x00,0x00,0x00,0x00,0x00,0x60,0x60,0x60,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x18,0x18,0x18,0x00,0x00,0x00,0x00},/*":",26*/
|
||||
{0x00,0x00,0x00,0x00,0x00,0x60,0x60,0x60,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x60,0x18,0x08,0x00,0x00,0x00,0x00,0x00},/*";",27*/
|
||||
{0x00,0x00,0x00,0x80,0x80,0xC0,0x60,0x60,0x30,0x30,0x00,0x00,0x00,0x01,0x01,0x03,0x03,0x06,0x0C,0x0C,0x18,0x18,0x00,0x00},/*"<",28*/
|
||||
{0x00,0xC0,0xC0,0xC0,0xC0,0xC0,0xC0,0xC0,0xC0,0xC0,0x00,0x00,0x00,0x06,0x06,0x06,0x06,0x06,0x06,0x06,0x06,0x06,0x00,0x00},/*"=",29*/
|
||||
{0x00,0x30,0x30,0x60,0x60,0xC0,0x80,0x80,0x00,0x00,0x00,0x00,0x00,0x18,0x18,0x0C,0x0C,0x06,0x03,0x03,0x01,0x01,0x00,0x00},/*">",30*/
|
||||
{0x00,0x00,0x70,0x78,0x18,0x18,0x98,0xF8,0xF0,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x1B,0x1B,0x01,0x01,0x00,0x00,0x00,0x00},/*"?",31*/
|
||||
{0x00,0x00,0xF0,0x08,0xC4,0x24,0x24,0xF8,0x00,0x00,0x00,0x00,0x00,0x00,0x0F,0x10,0x21,0x22,0x22,0x13,0x00,0x00,0x00,0x00},/*"@",32*/
|
||||
{0x00,0x00,0x18,0x98,0xF8,0x38,0x38,0xF0,0x80,0x00,0x00,0x00,0x00,0x18,0x1C,0x1F,0x1B,0x03,0x03,0x1B,0x1F,0x1C,0x18,0x00},/*"A",33*/
|
||||
{0x00,0x18,0xF8,0xF8,0x98,0x98,0x98,0xF8,0x70,0x00,0x00,0x00,0x00,0x18,0x1F,0x1F,0x19,0x19,0x19,0x19,0x1F,0x0E,0x00,0x00},/*"B",34*/
|
||||
{0x00,0xE0,0xF0,0x38,0x18,0x18,0x18,0x10,0x78,0x78,0x00,0x00,0x00,0x07,0x0F,0x0C,0x18,0x18,0x18,0x18,0x0C,0x0C,0x00,0x00},/*"C",35*/
|
||||
{0x00,0x18,0xF8,0xF8,0x18,0x18,0x18,0x38,0xF0,0xE0,0x00,0x00,0x00,0x18,0x1F,0x1F,0x18,0x18,0x18,0x1C,0x0F,0x07,0x00,0x00},/*"D",36*/
|
||||
{0x00,0x18,0xF8,0xF8,0x98,0xD8,0xD8,0x18,0x78,0x78,0x00,0x00,0x00,0x18,0x1F,0x1F,0x19,0x1B,0x1B,0x18,0x1E,0x1E,0x00,0x00},/*"E",37*/
|
||||
{0x00,0x18,0xF8,0xF8,0x98,0xD8,0xD8,0x18,0x78,0x78,0x00,0x00,0x00,0x18,0x1F,0x1F,0x19,0x1B,0x1B,0x00,0x00,0x00,0x00,0x00},/*"F",38*/
|
||||
{0x00,0xE0,0xF0,0x38,0x18,0x18,0x10,0x38,0x38,0x00,0x00,0x00,0x00,0x07,0x0F,0x1C,0x18,0x1B,0x1B,0x1F,0x0F,0x03,0x00,0x00},/*"G",39*/
|
||||
{0x00,0x18,0xF8,0xF8,0x98,0x80,0x98,0xF8,0xF8,0x18,0x00,0x00,0x00,0x18,0x1F,0x1F,0x19,0x01,0x19,0x1F,0x1F,0x18,0x00,0x00},/*"H",40*/
|
||||
{0x00,0x00,0x18,0x18,0x18,0xF8,0xF8,0x18,0x18,0x18,0x00,0x00,0x00,0x00,0x18,0x18,0x18,0x1F,0x1F,0x18,0x18,0x18,0x00,0x00},/*"I",41*/
|
||||
{0x00,0x00,0x00,0x00,0x18,0x18,0x18,0xF8,0xF8,0x18,0x18,0x00,0x00,0x00,0x0F,0x0F,0x18,0x18,0x18,0x0F,0x0F,0x00,0x00,0x00},/*"J",42*/
|
||||
{0x00,0x18,0xF8,0xF8,0x98,0xC0,0x78,0x38,0x18,0x18,0x00,0x00,0x00,0x18,0x1F,0x1F,0x19,0x01,0x07,0x1E,0x18,0x18,0x00,0x00},/*"K",43*/
|
||||
{0x00,0x18,0x18,0xF8,0xF8,0x18,0x18,0x00,0x00,0x00,0x00,0x00,0x00,0x18,0x18,0x1F,0x1F,0x18,0x18,0x18,0x1F,0x1F,0x00,0x00},/*"L",44*/
|
||||
{0x18,0xF8,0xF8,0x38,0xE0,0x00,0xE0,0x38,0xF8,0xF8,0x18,0x00,0x18,0x1F,0x1F,0x18,0x19,0x03,0x19,0x18,0x1F,0x1F,0x18,0x00},/*"M",45*/
|
||||
{0x00,0x18,0xF8,0xF8,0xF8,0xE0,0x18,0xF8,0xF8,0x18,0x00,0x00,0x00,0x18,0x1F,0x1F,0x18,0x03,0x1F,0x1F,0x1F,0x00,0x00,0x00},/*"N",46*/
|
||||
{0x00,0xC0,0xF0,0x30,0x18,0x18,0x18,0x30,0xF0,0xC0,0x00,0x00,0x00,0x03,0x0F,0x0C,0x18,0x18,0x18,0x0C,0x0F,0x03,0x00,0x00},/*"O",47*/
|
||||
{0x00,0x18,0xF8,0xF8,0x98,0x98,0x98,0xF8,0xF0,0x00,0x00,0x00,0x00,0x18,0x1F,0x1F,0x19,0x19,0x19,0x01,0x00,0x00,0x00,0x00},/*"P",48*/
|
||||
{0x00,0xC0,0xF0,0x30,0x18,0x18,0x18,0x30,0xF0,0xC0,0x00,0x00,0x00,0x03,0x0F,0xCC,0xF8,0x78,0x78,0xCC,0xEF,0x63,0x00,0x00},/*"Q",49*/
|
||||
{0x00,0x18,0xF8,0xF8,0x98,0x98,0x98,0xF8,0x70,0x00,0x00,0x00,0x00,0x18,0x1F,0x1F,0x19,0x1B,0x07,0x0E,0x1C,0x18,0x00,0x00},/*"R",50*/
|
||||
{0x00,0x00,0x70,0xF8,0x98,0x98,0x90,0x38,0x38,0x00,0x00,0x00,0x00,0x00,0x1C,0x1C,0x09,0x19,0x19,0x1F,0x0E,0x00,0x00,0x00},/*"S",51*/
|
||||
{0x00,0xF8,0xF8,0x18,0x18,0xF8,0xF8,0x18,0x18,0xF8,0xF8,0x00,0x00,0x00,0x00,0x18,0x18,0x1F,0x1F,0x18,0x18,0x00,0x00,0x00},/*"T",52*/
|
||||
{0x00,0x18,0xF8,0xF8,0x18,0x00,0x18,0xF8,0xF8,0x18,0x00,0x00,0x00,0x00,0x07,0x0F,0x18,0x18,0x18,0x0F,0x07,0x00,0x00,0x00},/*"U",53*/
|
||||
{0x00,0x18,0x78,0xF8,0x98,0x00,0x98,0xF8,0x78,0x18,0x00,0x00,0x00,0x00,0x00,0x03,0x1F,0x18,0x1F,0x03,0x00,0x00,0x00,0x00},/*"V",54*/
|
||||
{0x18,0xF8,0xF8,0x18,0xD8,0xC0,0xD8,0x18,0xF8,0xF8,0x18,0x00,0x00,0x01,0x1F,0x1C,0x1F,0x01,0x1F,0x1C,0x1F,0x01,0x00,0x00},/*"W",55*/
|
||||
{0x00,0x18,0x38,0x78,0xD8,0x80,0xD8,0x78,0x38,0x18,0x00,0x00,0x00,0x18,0x1C,0x1E,0x1B,0x01,0x1B,0x1E,0x1C,0x18,0x00,0x00},/*"X",56*/
|
||||
{0x00,0x18,0x38,0x78,0xD8,0x80,0x80,0xD8,0x78,0x38,0x18,0x00,0x00,0x00,0x00,0x18,0x18,0x1F,0x1F,0x18,0x18,0x00,0x00,0x00},/*"Y",57*/
|
||||
{0x00,0x00,0x78,0x78,0x18,0x98,0xD8,0x78,0x38,0x00,0x00,0x00,0x00,0x00,0x1C,0x1E,0x1B,0x19,0x18,0x1E,0x1E,0x00,0x00,0x00},/*"Z",58*/
|
||||
{0x00,0x00,0x00,0x00,0x00,0xFC,0xFC,0x0C,0x0C,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x7F,0x7F,0x60,0x60,0x00,0x00,0x00},/*"[",59*/
|
||||
{0x00,0x00,0x06,0x1E,0x78,0xE0,0x80,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x01,0x07,0x1E,0x78,0x60,0x00,0x00},/*"\",60*/
|
||||
{0x00,0x00,0x00,0x0C,0x0C,0xFC,0xFC,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x60,0x60,0x7F,0x7F,0x00,0x00,0x00,0x00,0x00},/*"]",61*/
|
||||
{0x00,0x00,0x00,0x60,0x70,0x18,0x0C,0x18,0x70,0x60,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},/*"^",62*/
|
||||
{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},/*"_",63*/
|
||||
{0x00,0x00,0x00,0x00,0x02,0x04,0x08,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},/*"`",64*/
|
||||
{0x00,0x00,0x00,0x60,0x60,0x60,0x60,0xE0,0xC0,0x00,0x00,0x00,0x00,0x00,0x0E,0x1F,0x1B,0x1B,0x0B,0x1F,0x1F,0x18,0x00,0x00},/*"a",65*/
|
||||
{0x00,0x0C,0xFC,0xFC,0xC0,0x60,0x60,0xE0,0xC0,0x80,0x00,0x00,0x00,0x18,0x1F,0x1F,0x0C,0x18,0x18,0x1C,0x0F,0x07,0x00,0x00},/*"b",66*/
|
||||
{0x00,0x00,0x80,0xC0,0xE0,0x60,0x60,0x60,0xC0,0xE0,0x00,0x00,0x00,0x00,0x07,0x0F,0x1C,0x18,0x18,0x18,0x18,0x0C,0x00,0x00},/*"c",67*/
|
||||
{0x00,0x00,0x80,0xC0,0xE0,0x60,0x60,0xCC,0xFC,0xFC,0x00,0x00,0x00,0x00,0x07,0x0F,0x1C,0x18,0x18,0x0C,0x1F,0x1F,0x18,0x00},/*"d",68*/
|
||||
{0x00,0x00,0x80,0xC0,0x60,0x60,0x60,0x60,0xC0,0x80,0x00,0x00,0x00,0x00,0x07,0x0F,0x1B,0x1B,0x1B,0x1B,0x1B,0x0B,0x00,0x00},/*"e",69*/
|
||||
{0x00,0x00,0x60,0x60,0xF8,0xFC,0x6C,0x6C,0x6C,0x6C,0x00,0x00,0x00,0x00,0x18,0x18,0x1F,0x1F,0x18,0x18,0x18,0x00,0x00,0x00},/*"f",70*/
|
||||
{0x00,0x00,0x80,0xC0,0xE0,0x60,0x60,0xC0,0xE0,0xE0,0x60,0x00,0x00,0x00,0x07,0x0F,0xDC,0xD8,0xD8,0xCC,0xFF,0x7F,0x00,0x00},/*"g",71*/
|
||||
{0x00,0x0C,0xFC,0xFC,0xC0,0x60,0x60,0x60,0xE0,0xC0,0x00,0x00,0x00,0x18,0x1F,0x1F,0x18,0x00,0x00,0x18,0x1F,0x1F,0x18,0x00},/*"h",72*/
|
||||
{0x00,0x00,0x00,0x60,0x60,0xEC,0xEC,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x18,0x18,0x18,0x1F,0x1F,0x18,0x18,0x18,0x00,0x00},/*"i",73*/
|
||||
{0x00,0x00,0x60,0x60,0x60,0x6C,0x6C,0xE0,0xE0,0x00,0x00,0x00,0x00,0x00,0xC0,0xC0,0xC0,0xC0,0xC0,0xFF,0x7F,0x00,0x00,0x00},/*"j",74*/
|
||||
{0x00,0x00,0x0C,0xFC,0xFC,0x80,0xE0,0x60,0x60,0x60,0x00,0x00,0x00,0x00,0x18,0x1F,0x1F,0x03,0x06,0x1C,0x18,0x18,0x00,0x00},/*"k",75*/
|
||||
{0x00,0x00,0x00,0x0C,0x0C,0xFC,0xFC,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x18,0x18,0x18,0x1F,0x1F,0x18,0x18,0x18,0x00,0x00},/*"l",76*/
|
||||
{0x00,0x60,0xE0,0xE0,0x60,0xE0,0xC0,0x60,0xE0,0xC0,0x00,0x00,0x00,0x18,0x1F,0x1F,0x00,0x1F,0x1F,0x00,0x1F,0x1F,0x18,0x00},/*"m",77*/
|
||||
{0x00,0x60,0xE0,0xE0,0xC0,0x60,0x60,0x60,0xE0,0xC0,0x00,0x00,0x00,0x18,0x1F,0x1F,0x18,0x00,0x00,0x18,0x1F,0x1F,0x18,0x00},/*"n",78*/
|
||||
{0x00,0x00,0x80,0xC0,0xE0,0x60,0x60,0xE0,0xC0,0x80,0x00,0x00,0x00,0x00,0x07,0x0F,0x1C,0x18,0x18,0x1C,0x0F,0x07,0x00,0x00},/*"o",79*/
|
||||
{0x00,0x60,0xE0,0xE0,0xC0,0x60,0x60,0xE0,0xC0,0x80,0x00,0x00,0x00,0xC0,0xFF,0xFF,0xCC,0xD8,0x18,0x1C,0x0F,0x07,0x00,0x00},/*"p",80*/
|
||||
{0x00,0x00,0x80,0xC0,0xE0,0x60,0x60,0xC0,0xE0,0xE0,0x60,0x00,0x00,0x00,0x07,0x0F,0x1C,0x18,0xD8,0xCC,0xFF,0xFF,0xC0,0x00},/*"q",81*/
|
||||
{0x00,0x00,0x60,0x60,0xE0,0xE0,0xC0,0x60,0x60,0x60,0x00,0x00,0x00,0x00,0x18,0x18,0x1F,0x1F,0x18,0x18,0x18,0x00,0x00,0x00},/*"r",82*/
|
||||
{0x00,0x00,0xC0,0xE0,0x60,0x60,0x60,0xE0,0xE0,0x00,0x00,0x00,0x00,0x00,0x1D,0x1D,0x1B,0x1B,0x1B,0x1E,0x0E,0x00,0x00,0x00},/*"s",83*/
|
||||
{0x00,0x00,0x60,0x60,0xFC,0xFC,0x60,0x60,0x60,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x0F,0x1F,0x18,0x18,0x18,0x0C,0x00,0x00},/*"t",84*/
|
||||
{0x00,0x60,0xE0,0xE0,0x00,0x00,0x00,0x60,0xE0,0xE0,0x00,0x00,0x00,0x00,0x0F,0x1F,0x18,0x18,0x18,0x0C,0x1F,0x1F,0x18,0x00},/*"u",85*/
|
||||
{0x00,0x60,0xE0,0xE0,0x60,0x00,0x60,0xE0,0xE0,0x60,0x00,0x00,0x00,0x00,0x00,0x07,0x1F,0x18,0x1F,0x07,0x00,0x00,0x00,0x00},/*"v",86*/
|
||||
{0x60,0xE0,0xE0,0x60,0x00,0x80,0x00,0x60,0xE0,0xE0,0x60,0x00,0x00,0x01,0x1F,0x1E,0x07,0x03,0x07,0x1E,0x1F,0x01,0x00,0x00},/*"w",87*/
|
||||
{0x00,0x00,0x60,0xE0,0xE0,0x00,0x00,0xE0,0xE0,0x60,0x00,0x00,0x00,0x00,0x18,0x1C,0x1F,0x03,0x03,0x1F,0x1C,0x18,0x00,0x00},/*"x",88*/
|
||||
{0x00,0x60,0xE0,0xE0,0x60,0x00,0x00,0x60,0xE0,0xE0,0x60,0x00,0x00,0xC0,0xC0,0xC1,0xE7,0xFE,0xDC,0xC7,0x03,0x00,0x00,0x00},/*"y",89*/
|
||||
{0x00,0x00,0xE0,0xE0,0x60,0x60,0x60,0xE0,0xE0,0x60,0x00,0x00,0x00,0x00,0x18,0x1C,0x1E,0x1B,0x1B,0x19,0x1C,0x1C,0x00,0x00},/*"z",90*/
|
||||
{0x00,0x00,0x00,0x00,0x00,0xF8,0xFC,0x0C,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x01,0x3F,0x7E,0x60,0x00,0x00,0x00,0x00},/*"{",91*/
|
||||
{0x00,0x00,0x00,0x00,0x00,0xFC,0xFC,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x7F,0x7F,0x00,0x00,0x00,0x00,0x00},/*"|",92*/
|
||||
{0x00,0x00,0x00,0x00,0x0C,0xFC,0xF8,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x60,0x7E,0x3F,0x01,0x00,0x00,0x00,0x00},/*"}",93*/
|
||||
{0x00,0x00,0x80,0xC0,0xC0,0xC0,0x80,0x00,0x80,0x80,0x00,0x00,0x00,0x00,0x01,0x01,0x00,0x01,0x03,0x03,0x03,0x01,0x00,0x00},/*"~",94*/
|
||||
};
|
||||
|
||||
static const unsigned char blank_block PROGMEM = 0x00;
|
||||
|
||||
@@ -284,6 +284,93 @@
|
||||
{"matrix": [0, 12], "x": 18.5, "y": 5.5, "w": 2},
|
||||
{"matrix": [0, 13], "x": 20.5, "y": 5.5}
|
||||
]
|
||||
}
|
||||
},
|
||||
"LAYOUT_wheelwriter_1x_iso": {
|
||||
"layout": [
|
||||
{"matrix": [2, 2], "x": 0, "y": 0},
|
||||
|
||||
{"matrix": [2, 4], "x": 1.25, "y": 0},
|
||||
{"matrix": [3, 4], "x": 2.25, "y": 0},
|
||||
{"matrix": [3, 5], "x": 3.25, "y": 0},
|
||||
{"matrix": [3, 6], "x": 4.25, "y": 0},
|
||||
{"matrix": [3, 7], "x": 5.25, "y": 0},
|
||||
{"matrix": [2, 7], "x": 6.25, "y": 0},
|
||||
{"matrix": [2, 8], "x": 7.25, "y": 0},
|
||||
{"matrix": [3, 8], "x": 8.25, "y": 0},
|
||||
{"matrix": [3, 9], "x": 9.25, "y": 0},
|
||||
{"matrix": [3, 10], "x": 10.25, "y": 0},
|
||||
{"matrix": [3, 11], "x": 11.25, "y": 0},
|
||||
{"matrix": [2, 11], "x": 12.25, "y": 0},
|
||||
{"matrix": [2, 9], "x": 13.25, "y": 0},
|
||||
{"matrix": [2, 12], "x": 14.25, "y": 0, "w": 2},
|
||||
|
||||
{"matrix": [2, 13], "x": 17.5, "y": 0},
|
||||
|
||||
{"matrix": [4, 1], "x": 0, "y": 1},
|
||||
|
||||
{"matrix": [4, 2], "x": 1.25, "y": 1, "w": 1.5},
|
||||
{"matrix": [4, 4], "x": 2.75, "y": 1},
|
||||
{"matrix": [4, 5], "x": 3.75, "y": 1},
|
||||
{"matrix": [4, 6], "x": 4.75, "y": 1},
|
||||
{"matrix": [4, 7], "x": 5.75, "y": 1},
|
||||
{"matrix": [5, 7], "x": 6.75, "y": 1},
|
||||
{"matrix": [5, 8], "x": 7.75, "y": 1},
|
||||
{"matrix": [4, 8], "x": 8.75, "y": 1},
|
||||
{"matrix": [4, 9], "x": 9.75, "y": 1},
|
||||
{"matrix": [4, 10], "x": 10.75, "y": 1},
|
||||
{"matrix": [4, 11], "x": 11.75, "y": 1},
|
||||
{"matrix": [5, 11], "x": 12.75, "y": 1},
|
||||
{"matrix": [5, 9], "x": 13.75, "y": 1},
|
||||
|
||||
{"matrix": [4, 13], "x": 17.5, "y": 1},
|
||||
|
||||
{"matrix": [5, 2], "x": 0, "y": 2},
|
||||
|
||||
{"matrix": [6, 2], "x": 1.25, "y": 2, "w": 1.5},
|
||||
{"matrix": [1, 4], "x": 3, "y": 2},
|
||||
{"matrix": [1, 5], "x": 4, "y": 2},
|
||||
{"matrix": [1, 6], "x": 5, "y": 2},
|
||||
{"matrix": [1, 7], "x": 6, "y": 2},
|
||||
{"matrix": [0, 7], "x": 7, "y": 2},
|
||||
{"matrix": [0, 8], "x": 8, "y": 2},
|
||||
{"matrix": [1, 8], "x": 9, "y": 2},
|
||||
{"matrix": [1, 9], "x": 10, "y": 2},
|
||||
{"matrix": [1, 10], "x": 11, "y": 2},
|
||||
{"matrix": [1, 11], "x": 12, "y": 2},
|
||||
{"matrix": [0, 11], "x": 13, "y": 2},
|
||||
{"matrix": [6, 11], "x": 14, "y": 2},
|
||||
{"matrix": [0, 12], "x": 15, "y": 2, "w": 1.25, "h": 2},
|
||||
|
||||
{"matrix": [1, 13], "x": 17.5, "y": 2},
|
||||
|
||||
{"matrix": [1, 2], "x": 0, "y": 3},
|
||||
|
||||
{"matrix": [7, 3], "x": 1.25, "y": 3, "w": 1.25},
|
||||
{"matrix": [7, 4], "x": 2.5, "y": 3},
|
||||
{"matrix": [6, 4], "x": 3.5, "y": 3},
|
||||
{"matrix": [6, 5], "x": 4.5, "y": 3},
|
||||
{"matrix": [6, 6], "x": 5.5, "y": 3},
|
||||
{"matrix": [6, 7], "x": 6.5, "y": 3},
|
||||
{"matrix": [7, 7], "x": 7.5, "y": 3},
|
||||
{"matrix": [7, 8], "x": 8.5, "y": 3},
|
||||
{"matrix": [6, 8], "x": 9.5, "y": 3},
|
||||
{"matrix": [6, 9], "x": 10.5, "y": 3},
|
||||
{"matrix": [6, 10], "x": 11.5, "y": 3},
|
||||
{"matrix": [7, 11], "x": 12.5, "y": 3},
|
||||
{"matrix": [6, 3], "x": 13.5, "y": 3, "w": 2.75},
|
||||
|
||||
{"matrix": [6, 12], "x": 17.5, "y": 3},
|
||||
|
||||
{"matrix": [0, 1], "x": 0, "y": 4},
|
||||
|
||||
{"matrix": [7, 14], "x": 3.75, "y": 4, "w": 2.5},
|
||||
{"matrix": [7, 1], "x": 6.25, "y": 4, "w": 7.25},
|
||||
{"matrix": [7, 2], "x": 14.75, "y": 4, "w": 1.5},
|
||||
|
||||
{"matrix": [7, 12], "x": 16.5, "y": 4},
|
||||
{"matrix": [0, 13], "x": 17.5, "y": 4},
|
||||
{"matrix": [7, 13], "x": 18.5, "y": 4}
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -0,0 +1,33 @@
|
||||
/* Copyright 2024 Robin Haberkorn
|
||||
*
|
||||
* 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_wheelwriter_1x_iso( /* Base layer */
|
||||
KC_ESC, 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_PGUP, KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_DEL,
|
||||
KC_PGDN, KC_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_NUHS, KC_ENT, MO(1),
|
||||
KC_APP, 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_LCTL, KC_LALT, KC_SPC, KC_RALT, KC_LEFT, KC_DOWN, KC_RGHT
|
||||
),
|
||||
[1] = LAYOUT_wheelwriter_1x_iso( /* Function key layer */
|
||||
KC_MUTE, KC_NO, 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_NO, KC_BRIU,
|
||||
KC_VOLU, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_BRID,
|
||||
KC_VOLD, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO,
|
||||
KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_PGUP,
|
||||
KC_NO, KC_NO, KC_NO, KC_NO, KC_HOME, KC_PGDN, KC_END
|
||||
),
|
||||
};
|
||||
@@ -17,4 +17,8 @@ Flashing example for this keyboard:
|
||||
|
||||
make ibm/model_m/modelh:default:flash
|
||||
|
||||
For IBM Wheelwriter 10/15/1000 modules (ISO), you can try the `wheelwriter_1x_iso` keymap:
|
||||
|
||||
make ibm/model_m/modelh:wheelwriter_1x_iso
|
||||
|
||||
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).
|
||||
|
||||
36
keyboards/idyllic/pizzapad/keyboard.json
Normal file
36
keyboards/idyllic/pizzapad/keyboard.json
Normal file
@@ -0,0 +1,36 @@
|
||||
{
|
||||
"manufacturer": "Zykrah",
|
||||
"keyboard_name": "Pizza Pad",
|
||||
"maintainer": "zykrah",
|
||||
"processor": "RP2040",
|
||||
"bootloader": "rp2040",
|
||||
"diode_direction": "COL2ROW",
|
||||
"dynamic_keymap": {
|
||||
"layer_count": 6
|
||||
},
|
||||
"matrix_pins": {
|
||||
"cols": ["GP1", "GP0", "GP7"],
|
||||
"rows": ["GP6", "GP29", "GP28"]
|
||||
},
|
||||
"usb": {
|
||||
"device_version": "0.0.1",
|
||||
"pid": "0x5050",
|
||||
"vid": "0x7A79"
|
||||
},
|
||||
"community_layouts": ["ortho_3x3"],
|
||||
"layouts": {
|
||||
"LAYOUT_ortho_3x3": {
|
||||
"layout": [
|
||||
{"matrix": [0, 0], "x": 0, "y": 0},
|
||||
{"matrix": [0, 1], "x": 1, "y": 0},
|
||||
{"matrix": [0, 2], "x": 2, "y": 0},
|
||||
{"matrix": [1, 0], "x": 0, "y": 1},
|
||||
{"matrix": [1, 1], "x": 1, "y": 1},
|
||||
{"matrix": [1, 2], "x": 2, "y": 1},
|
||||
{"matrix": [2, 0], "x": 0, "y": 2},
|
||||
{"matrix": [2, 1], "x": 1, "y": 2},
|
||||
{"matrix": [2, 2], "x": 2, "y": 2}
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
||||
12
keyboards/idyllic/pizzapad/keymaps/default/keymap.c
Normal file
12
keyboards/idyllic/pizzapad/keymaps/default/keymap.c
Normal file
@@ -0,0 +1,12 @@
|
||||
// Copyright 2024 Zykrah (@zykrah)
|
||||
// SPDX-License-Identifier: GPL-2.0-or-later
|
||||
|
||||
#include QMK_KEYBOARD_H
|
||||
|
||||
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
||||
[0] = LAYOUT_ortho_3x3(
|
||||
KC_P7, KC_P8, KC_P9,
|
||||
KC_P4, KC_P5, KC_P6,
|
||||
KC_P1, KC_P2, KC_P3
|
||||
)
|
||||
};
|
||||
27
keyboards/idyllic/pizzapad/readme.md
Normal file
27
keyboards/idyllic/pizzapad/readme.md
Normal file
@@ -0,0 +1,27 @@
|
||||
# Pizza Pad PCB
|
||||
|
||||

|
||||
|
||||
A 3x3 PCB designed for the Idyllic Pretty Pad.
|
||||
|
||||
* Keyboard Maintainer: Zykrah
|
||||
* Hardware Supported: Pizza Pad PCB (using a SEEED XIAO RP2040)
|
||||
* Hardware Availability: [Mechstock](https://mechstock.com.au/)
|
||||
|
||||
Make example for this keyboard (after setting up your build environment):
|
||||
|
||||
make idyllic/pizzapad:default
|
||||
|
||||
Flashing example for this keyboard:
|
||||
|
||||
make idyllic/pizzapad: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 both the `BOOT` and `RESET` buttons at the same time
|
||||
* **Keycode in layout**: Press the key mapped to `QK_BOOT` if it is available
|
||||
@@ -3,8 +3,8 @@
|
||||
|
||||
#pragma once
|
||||
|
||||
|
||||
/* Serial communication */
|
||||
/* Split keyboard configuration */
|
||||
#define EE_HANDS
|
||||
#define SERIAL_USART_FULL_DUPLEX
|
||||
#define SERIAL_USART_TX_PIN GP0
|
||||
#define SERIAL_USART_RX_PIN GP1
|
||||
|
||||
@@ -18,6 +18,8 @@ Flashing example for this keyboard:
|
||||
|
||||
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).
|
||||
|
||||
If you would like to plug in your keyboard using either half, then set the EEPROM left/right UF2 bootloader parameter when flashing each half for the first time. Refer to [QMK's handedness by EEPROM documentation](https://docs.qmk.fm/features/split_keyboard#handedness-by-eeprom). Without this bootloader parameter, the configuration assumes the left half will be plugged in.
|
||||
|
||||
## Bootloader
|
||||
|
||||
Enter the bootloader in 3 ways:
|
||||
|
||||
29
keyboards/jaykeeb/jk60rgb/jk60rgb.c
Normal file
29
keyboards/jaykeeb/jk60rgb/jk60rgb.c
Normal file
@@ -0,0 +1,29 @@
|
||||
/* Copyright 2024 Alabahuy
|
||||
*
|
||||
* This program is free software: you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation, either version 2 of the License, or
|
||||
* (at your option) any later version.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
#include "quantum.h"
|
||||
|
||||
#ifdef RGB_MATRIX_ENABLE
|
||||
bool rgb_matrix_indicators_kb(void) {
|
||||
if (!rgb_matrix_indicators_user()) {
|
||||
return false;
|
||||
}
|
||||
if (host_keyboard_led_state().caps_lock) { // Capslock = WHITE
|
||||
rgb_matrix_set_color(36, 255, 255, 255);
|
||||
}
|
||||
return true;
|
||||
}
|
||||
#endif
|
||||
238
keyboards/jaykeeb/jk60rgb/keyboard.json
Normal file
238
keyboards/jaykeeb/jk60rgb/keyboard.json
Normal file
@@ -0,0 +1,238 @@
|
||||
{
|
||||
"manufacturer": "Jaykeeb Studio",
|
||||
"keyboard_name": "JK60 RGB",
|
||||
"maintainer": "Alabahuy",
|
||||
"bootloader": "rp2040",
|
||||
"diode_direction": "COL2ROW",
|
||||
"features": {
|
||||
"bootmagic": true,
|
||||
"command": false,
|
||||
"console": false,
|
||||
"extrakey": true,
|
||||
"mousekey": true,
|
||||
"nkro": true,
|
||||
"rgb_matrix": true
|
||||
},
|
||||
"matrix_pins": {
|
||||
"cols": ["GP29", "GP28", "GP27", "GP26", "GP25", "GP20", "GP7", "GP6", "GP5", "GP4", "GP3", "GP2", "GP1", "GP0"],
|
||||
"rows": ["GP21", "GP22", "GP23", "GP24", "GP15"]
|
||||
},
|
||||
"ws2812": {
|
||||
"driver": "vendor",
|
||||
"pin": "GP19"
|
||||
},
|
||||
"rgb_matrix": {
|
||||
"max_brightness": 125,
|
||||
"sleep": true,
|
||||
"animations": {
|
||||
"alphas_mods": true,
|
||||
"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_rain": true,
|
||||
"rainbow_beacon": true,
|
||||
"rainbow_moving_chevron": true,
|
||||
"rainbow_pinwheels": true,
|
||||
"raindrops": true,
|
||||
"solid_multisplash": true,
|
||||
"solid_reactive": true,
|
||||
"solid_reactive_cross": true,
|
||||
"solid_reactive_multicross": true,
|
||||
"solid_reactive_multinexus": true,
|
||||
"solid_reactive_multiwide": true,
|
||||
"solid_reactive_nexus": true,
|
||||
"solid_reactive_simple": true,
|
||||
"solid_reactive_wide": true,
|
||||
"solid_splash": true,
|
||||
"splash": true,
|
||||
"typing_heatmap": true
|
||||
},
|
||||
"driver": "ws2812",
|
||||
"layout": [
|
||||
{"x": 4, "y": 5, "flags": 2},
|
||||
{"matrix": [0, 0], "x": 8, "y": 7, "flags": 1},
|
||||
{"matrix": [0, 1], "x": 23, "y": 7, "flags": 4},
|
||||
{"matrix": [0, 2], "x": 37, "y": 7, "flags": 4},
|
||||
{"matrix": [0, 3], "x": 52, "y": 7, "flags": 4},
|
||||
{"x": 60, "y": 0, "flags": 2},
|
||||
{"matrix": [0, 4], "x": 67, "y": 7, "flags": 4},
|
||||
{"matrix": [0, 5], "x": 82, "y": 7, "flags": 4},
|
||||
{"matrix": [0, 6], "x": 97, "y": 7, "flags": 4},
|
||||
{"x": 105, "y": 0, "flags": 2},
|
||||
{"matrix": [0, 7], "x": 112, "y": 7, "flags": 4},
|
||||
{"matrix": [0, 8], "x": 127, "y": 7, "flags": 4},
|
||||
{"matrix": [0, 9], "x": 142, "y": 7, "flags": 4},
|
||||
{"x": 150, "y": 0, "flags": 2},
|
||||
{"matrix": [0, 10], "x": 157, "y": 7, "flags": 4},
|
||||
{"matrix": [0, 11], "x": 172, "y": 7, "flags": 4},
|
||||
{"matrix": [0, 12], "x": 187, "y": 7, "flags": 4},
|
||||
{"x": 195, "y": 0, "flags": 2},
|
||||
{"matrix": [0, 13], "x": 201, "y": 7, "flags": 4},
|
||||
{"matrix": [1, 13], "x": 216, "y": 7, "flags": 1},
|
||||
{"x": 224, "y": 13, "flags": 2},
|
||||
|
||||
{"matrix": [2, 13], "x": 213, "y": 19, "flags": 1},
|
||||
{"matrix": [1, 12], "x": 194, "y": 19, "flags": 4},
|
||||
{"matrix": [1, 11], "x": 179, "y": 19, "flags": 4},
|
||||
{"matrix": [1, 10], "x": 164, "y": 19, "flags": 4},
|
||||
{"matrix": [1, 9], "x": 149, "y": 19, "flags": 4},
|
||||
{"matrix": [1, 8], "x": 134, "y": 19, "flags": 4},
|
||||
{"matrix": [1, 7], "x": 119, "y": 19, "flags": 4},
|
||||
{"matrix": [1, 6], "x": 105, "y": 19, "flags": 4},
|
||||
{"matrix": [1, 5], "x": 90, "y": 19, "flags": 4},
|
||||
{"matrix": [1, 4], "x": 75, "y": 19, "flags": 4},
|
||||
{"matrix": [1, 3], "x": 60, "y": 19, "flags": 4},
|
||||
{"matrix": [1, 2], "x": 45, "y": 19, "flags": 4},
|
||||
{"matrix": [1, 1], "x": 30, "y": 19, "flags": 4},
|
||||
{"matrix": [1, 0], "x": 11, "y": 19, "flags": 1},
|
||||
{"x": 4, "y": 19, "flags": 2},
|
||||
|
||||
{"matrix": [2, 0], "x": 13, "y": 32, "flags": 8},
|
||||
{"matrix": [2, 1], "x": 34, "y": 32, "flags": 4},
|
||||
{"matrix": [2, 2], "x": 49, "y": 32, "flags": 4},
|
||||
{"matrix": [2, 3], "x": 64, "y": 32, "flags": 4},
|
||||
{"matrix": [2, 4], "x": 79, "y": 32, "flags": 4},
|
||||
{"matrix": [2, 5], "x": 94, "y": 32, "flags": 4},
|
||||
{"matrix": [2, 6], "x": 108, "y": 32, "flags": 4},
|
||||
{"matrix": [2, 7], "x": 123, "y": 32, "flags": 4},
|
||||
{"matrix": [2, 8], "x": 138, "y": 32, "flags": 4},
|
||||
{"matrix": [2, 9], "x": 153, "y": 32, "flags": 4},
|
||||
{"matrix": [2, 10], "x": 168, "y": 32, "flags": 4},
|
||||
{"matrix": [2, 11], "x": 183, "y": 32, "flags": 4},
|
||||
{"matrix": [2, 12], "x": 183, "y": 32, "flags": 1},
|
||||
|
||||
{"matrix": [3, 13], "x": 216, "y": 45, "flags": 1},
|
||||
{"matrix": [3, 12], "x": 196, "y": 45, "flags": 4},
|
||||
{"matrix": [3, 11], "x": 175, "y": 45, "flags": 4},
|
||||
{"matrix": [3, 10], "x": 161, "y": 45, "flags": 4},
|
||||
{"matrix": [3, 9], "x": 146, "y": 45, "flags": 4},
|
||||
{"matrix": [3, 8], "x": 135, "y": 45, "flags": 4},
|
||||
{"matrix": [3, 7], "x": 116, "y": 45, "flags": 4},
|
||||
{"matrix": [3, 6], "x": 101, "y": 45, "flags": 4},
|
||||
{"matrix": [3, 5], "x": 86, "y": 45, "flags": 4},
|
||||
{"matrix": [3, 4], "x": 71, "y": 45, "flags": 4},
|
||||
{"matrix": [3, 3], "x": 56, "y": 45, "flags": 4},
|
||||
{"matrix": [3, 2], "x": 41, "y": 45, "flags": 4},
|
||||
{"matrix": [3, 0], "x": 17, "y": 45, "flags": 1},
|
||||
|
||||
{"x": 4, "y": 51, "flags": 2},
|
||||
{"matrix": [4, 0], "x": 11, "y": 57, "flags": 1},
|
||||
{"x": 15, "y": 57, "flags": 2},
|
||||
{"matrix": [4, 1], "x": 28, "y": 57, "flags": 1},
|
||||
{"matrix": [4, 2], "x": 50, "y": 57, "flags": 1},
|
||||
{"x": 72, "y": 57, "flags": 2},
|
||||
{"x": 92, "y": 57, "flags": 2},
|
||||
{"matrix": [4, 7], "x": 112, "y": 57, "flags": 1},
|
||||
{"x": 132, "y": 57, "flags": 2},
|
||||
{"x": 152, "y": 57, "flags": 2},
|
||||
{"matrix": [4, 11], "x": 172, "y": 57, "flags": 1},
|
||||
{"matrix": [4, 12], "x": 194, "y": 57, "flags": 1},
|
||||
{"x": 209, "y": 57, "flags": 2},
|
||||
{"matrix": [4, 13], "x": 213, "y": 57, "flags": 1},
|
||||
{"x": 220, "y": 51, "flags": 2}
|
||||
]
|
||||
},
|
||||
"processor": "RP2040",
|
||||
"url": "",
|
||||
"usb": {
|
||||
"device_version": "1.0.0",
|
||||
"pid": "0x7762",
|
||||
"vid": "0x414C"
|
||||
},
|
||||
"community_layouts": [
|
||||
"60_ansi_tsangan_split_bs_rshift"
|
||||
],
|
||||
"layouts": {
|
||||
"LAYOUT_60_ansi_tsangan_split_bs_rshift": {
|
||||
"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": "Delete", "matrix": [1, 13], "x": 14, "y": 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": "\\", "matrix": [2, 13], "x": 13.5, "y": 1, "w": 1.5},
|
||||
|
||||
{"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": "Shift", "matrix": [3, 0], "x": 0, "y": 3, "w": 2.25},
|
||||
{"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": "Fn", "matrix": [3, 13], "x": 14, "y": 3},
|
||||
|
||||
{"label": "Ctrl", "matrix": [4, 0], "x": 0, "y": 4, "w": 1.5},
|
||||
{"label": "GUI", "matrix": [4, 1], "x": 1.5, "y": 4},
|
||||
{"label": "Alt", "matrix": [4, 2], "x": 2.5, "y": 4, "w": 1.5},
|
||||
{"label": "Space", "matrix": [4, 7], "x": 4, "y": 4, "w": 7},
|
||||
{"label": "Alt", "matrix": [4, 11], "x": 11, "y": 4, "w": 1.5},
|
||||
{"label": "GUI", "matrix": [4, 12], "x": 12.5, "y": 4},
|
||||
{"label": "Ctrl", "matrix": [4, 13], "x": 13.5, "y": 4, "w": 1.5}
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
||||
22
keyboards/jaykeeb/jk60rgb/keymaps/default/keymap.c
Normal file
22
keyboards/jaykeeb/jk60rgb/keymaps/default/keymap.c
Normal file
@@ -0,0 +1,22 @@
|
||||
// Copyright 2024 Alabahuy
|
||||
// SPDX-License-Identifier: GPL-2.0-or-later
|
||||
|
||||
#include QMK_KEYBOARD_H
|
||||
|
||||
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
||||
[0] = LAYOUT_60_ansi_tsangan_split_bs_rshift(
|
||||
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_DEL,
|
||||
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_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT,
|
||||
KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, MO(1),
|
||||
KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, KC_RGUI, KC_RCTL
|
||||
),
|
||||
|
||||
[1] = LAYOUT_60_ansi_tsangan_split_bs_rshift(
|
||||
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, _______,
|
||||
RM_TOGG, RM_NEXT, RM_HUEU, RM_SATU, RM_VALU, RM_SPDU, _______, _______, _______, _______, _______, KC_PSCR, KC_SCRL, KC_PAUS,
|
||||
_______, RM_PREV, RM_HUED, RM_SATD, RM_VALD, RM_SPDD, _______, _______, _______, _______, _______, _______, _______,
|
||||
_______, _______, _______, _______, _______, _______, _______, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, _______,
|
||||
_______, _______, _______, QK_BOOT, _______, _______, _______
|
||||
)
|
||||
};
|
||||
27
keyboards/jaykeeb/jk60rgb/readme.md
Normal file
27
keyboards/jaykeeb/jk60rgb/readme.md
Normal file
@@ -0,0 +1,27 @@
|
||||
# JK60 RGB
|
||||
|
||||

|
||||
|
||||
Layout 60% rgb per keys support keyboard case existing
|
||||
|
||||
* Keyboard Maintainer: [Alabahuy](https://github.com/Alabahuy)
|
||||
* Hardware Supported: JK60 RGB pcb, RP2040, led sk6812 per switch
|
||||
* Hardware Availability: Private GB
|
||||
|
||||
Make example for this keyboard (after setting up your build environment):
|
||||
|
||||
make jaykeeb/jk60rgb:default
|
||||
|
||||
Flashing example for this keyboard:
|
||||
|
||||
make jaykeeb/jk60rgb: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
|
||||
22
keyboards/keebfront/vanguard65/config.h
Normal file
22
keyboards/keebfront/vanguard65/config.h
Normal file
@@ -0,0 +1,22 @@
|
||||
/*
|
||||
Copyright 2022 <hello@keebfront.com>
|
||||
|
||||
This program is free software: you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License as published by
|
||||
the Free Software Foundation, either version 2 of the License, or
|
||||
(at your option) any later version.
|
||||
|
||||
This program is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
#pragma once
|
||||
|
||||
/* Define MIDI */
|
||||
#define MIDI_ADVANCED
|
||||
#define SLIDER_PINA D6
|
||||
744
keyboards/keebfront/vanguard65/keyboard.json
Normal file
744
keyboards/keebfront/vanguard65/keyboard.json
Normal file
@@ -0,0 +1,744 @@
|
||||
{
|
||||
"manufacturer": "Keebfront",
|
||||
"keyboard_name": "Vanguard65",
|
||||
"maintainer": "Keebfront",
|
||||
"bootloader": "atmel-dfu",
|
||||
"build": {
|
||||
"lto": true
|
||||
},
|
||||
"diode_direction": "COL2ROW",
|
||||
"encoder": {
|
||||
"rotary": [
|
||||
{"pin_a": "E6", "pin_b": "D4"}
|
||||
]
|
||||
},
|
||||
"features": {
|
||||
"bootmagic": true,
|
||||
"extrakey": true,
|
||||
"midi": true,
|
||||
"rgblight": true,
|
||||
"mousekey": true,
|
||||
"encoder": true
|
||||
},
|
||||
"matrix_pins": {
|
||||
"cols": ["F0", "B1", "B2", "B3", "B7", "D0", "D1", "D2", "D3", "D5", "D7", "B4", "B5", "B6", "C6"],
|
||||
"rows": ["F4", "F1", "F7", "F6", "F5"]
|
||||
},
|
||||
"processor": "atmega32u4",
|
||||
"rgblight": {
|
||||
"animations": {
|
||||
"alternating": true,
|
||||
"breathing": true,
|
||||
"christmas": true,
|
||||
"knight": true,
|
||||
"rainbow_mood": true,
|
||||
"rainbow_swirl": true,
|
||||
"snake": true,
|
||||
"static_gradient": true,
|
||||
"twinkle": true
|
||||
},
|
||||
"brightness_steps": 12,
|
||||
"led_count": 36
|
||||
},
|
||||
"url": "https://www.keebfront.com",
|
||||
"usb": {
|
||||
"device_version": "0.0.1",
|
||||
"pid": "0x1823",
|
||||
"vid": "0x7074"
|
||||
},
|
||||
"ws2812": {
|
||||
"pin": "C7"
|
||||
},
|
||||
"layouts": {
|
||||
"LAYOUT_all": {
|
||||
"layout": [
|
||||
{"matrix": [3, 14], "x": 0, "y": 0},
|
||||
|
||||
{"matrix": [0, 0], "x": 1.5, "y": 0},
|
||||
{"matrix": [0, 1], "x": 2.5, "y": 0},
|
||||
{"matrix": [0, 2], "x": 3.5, "y": 0},
|
||||
{"matrix": [0, 3], "x": 4.5, "y": 0},
|
||||
{"matrix": [0, 4], "x": 5.5, "y": 0},
|
||||
{"matrix": [0, 5], "x": 6.5, "y": 0},
|
||||
{"matrix": [0, 6], "x": 7.5, "y": 0},
|
||||
{"matrix": [0, 7], "x": 8.5, "y": 0},
|
||||
{"matrix": [0, 8], "x": 9.5, "y": 0},
|
||||
{"matrix": [0, 9], "x": 10.5, "y": 0},
|
||||
{"matrix": [0, 10], "x": 11.5, "y": 0},
|
||||
{"matrix": [0, 11], "x": 12.5, "y": 0},
|
||||
{"matrix": [0, 12], "x": 13.5, "y": 0},
|
||||
{"matrix": [0, 13], "x": 14.5, "y": 0},
|
||||
{"matrix": [2, 13], "x": 15.5, "y": 0},
|
||||
{"matrix": [0, 14], "x": 16.75, "y": 0},
|
||||
|
||||
{"matrix": [1, 0], "x": 1.5, "y": 1, "w": 1.5},
|
||||
{"matrix": [1, 1], "x": 3, "y": 1},
|
||||
{"matrix": [1, 2], "x": 4, "y": 1},
|
||||
{"matrix": [1, 3], "x": 5, "y": 1},
|
||||
{"matrix": [1, 4], "x": 6, "y": 1},
|
||||
{"matrix": [1, 5], "x": 7, "y": 1},
|
||||
{"matrix": [1, 6], "x": 8, "y": 1},
|
||||
{"matrix": [1, 7], "x": 9, "y": 1},
|
||||
{"matrix": [1, 8], "x": 10, "y": 1},
|
||||
{"matrix": [1, 9], "x": 11, "y": 1},
|
||||
{"matrix": [1, 10], "x": 12, "y": 1},
|
||||
{"matrix": [1, 11], "x": 13, "y": 1},
|
||||
{"matrix": [1, 12], "x": 14, "y": 1},
|
||||
{"matrix": [1, 13], "x": 15, "y": 1, "w": 1.5},
|
||||
{"matrix": [1, 14], "x": 16.75, "y": 1},
|
||||
|
||||
{"matrix": [2, 0], "x": 1.5, "y": 2, "w": 1.75},
|
||||
{"matrix": [2, 1], "x": 3.25, "y": 2},
|
||||
{"matrix": [2, 2], "x": 4.25, "y": 2},
|
||||
{"matrix": [2, 3], "x": 5.25, "y": 2},
|
||||
{"matrix": [2, 4], "x": 6.25, "y": 2},
|
||||
{"matrix": [2, 5], "x": 7.25, "y": 2},
|
||||
{"matrix": [2, 6], "x": 8.25, "y": 2},
|
||||
{"matrix": [2, 7], "x": 9.25, "y": 2},
|
||||
{"matrix": [2, 8], "x": 10.25, "y": 2},
|
||||
{"matrix": [2, 9], "x": 11.25, "y": 2},
|
||||
{"matrix": [2, 10], "x": 12.25, "y": 2},
|
||||
{"matrix": [2, 11], "x": 13.25, "y": 2},
|
||||
{"matrix": [2, 12], "x": 14.25, "y": 2, "w": 2.25},
|
||||
{"matrix": [2, 14], "x": 16.75, "y": 2},
|
||||
|
||||
{"matrix": [3, 0], "x": 1.5, "y": 3, "w": 1.25},
|
||||
{"matrix": [3, 1], "x": 2.75, "y": 3},
|
||||
{"matrix": [3, 2], "x": 3.75, "y": 3},
|
||||
{"matrix": [3, 3], "x": 4.75, "y": 3},
|
||||
{"matrix": [3, 4], "x": 5.75, "y": 3},
|
||||
{"matrix": [3, 5], "x": 6.75, "y": 3},
|
||||
{"matrix": [3, 6], "x": 7.75, "y": 3},
|
||||
{"matrix": [3, 7], "x": 8.75, "y": 3},
|
||||
{"matrix": [3, 8], "x": 9.75, "y": 3},
|
||||
{"matrix": [3, 9], "x": 10.75, "y": 3},
|
||||
{"matrix": [3, 10], "x": 11.75, "y": 3},
|
||||
{"matrix": [3, 11], "x": 12.75, "y": 3},
|
||||
{"matrix": [3, 12], "x": 13.75, "y": 3, "w": 1.75},
|
||||
{"matrix": [3, 13], "x": 15.5, "y": 3},
|
||||
|
||||
{"matrix": [4, 0], "x": 1.5, "y": 4, "w": 1.25},
|
||||
{"matrix": [4, 1], "x": 2.75, "y": 4, "w": 1.25},
|
||||
{"matrix": [4, 2], "x": 4, "y": 4, "w": 1.25},
|
||||
{"matrix": [4, 6], "x": 5.25, "y": 4, "w": 6.25},
|
||||
{"matrix": [4, 10], "x": 11.5, "y": 4, "w": 1.25},
|
||||
{"matrix": [4, 11], "x": 12.75, "y": 4, "w": 1.25},
|
||||
{"matrix": [4, 12], "x": 14.5, "y": 4},
|
||||
{"matrix": [4, 13], "x": 15.5, "y": 4},
|
||||
{"matrix": [4, 14], "x": 16.5, "y": 4}
|
||||
]
|
||||
},
|
||||
"LAYOUT_ansi_blocker": {
|
||||
"layout": [
|
||||
{"matrix": [3, 14], "x": 0, "y": 0},
|
||||
|
||||
{"matrix": [0, 0], "x": 1.5, "y": 0},
|
||||
{"matrix": [0, 1], "x": 2.5, "y": 0},
|
||||
{"matrix": [0, 2], "x": 3.5, "y": 0},
|
||||
{"matrix": [0, 3], "x": 4.5, "y": 0},
|
||||
{"matrix": [0, 4], "x": 5.5, "y": 0},
|
||||
{"matrix": [0, 5], "x": 6.5, "y": 0},
|
||||
{"matrix": [0, 6], "x": 7.5, "y": 0},
|
||||
{"matrix": [0, 7], "x": 8.5, "y": 0},
|
||||
{"matrix": [0, 8], "x": 9.5, "y": 0},
|
||||
{"matrix": [0, 9], "x": 10.5, "y": 0},
|
||||
{"matrix": [0, 10], "x": 11.5, "y": 0},
|
||||
{"matrix": [0, 11], "x": 12.5, "y": 0},
|
||||
{"matrix": [0, 12], "x": 13.5, "y": 0},
|
||||
{"matrix": [0, 13], "x": 14.5, "y": 0, "w": 2},
|
||||
{"matrix": [0, 14], "x": 16.75, "y": 0},
|
||||
|
||||
{"matrix": [1, 0], "x": 1.5, "y": 1, "w": 1.5},
|
||||
{"matrix": [1, 1], "x": 3, "y": 1},
|
||||
{"matrix": [1, 2], "x": 4, "y": 1},
|
||||
{"matrix": [1, 3], "x": 5, "y": 1},
|
||||
{"matrix": [1, 4], "x": 6, "y": 1},
|
||||
{"matrix": [1, 5], "x": 7, "y": 1},
|
||||
{"matrix": [1, 6], "x": 8, "y": 1},
|
||||
{"matrix": [1, 7], "x": 9, "y": 1},
|
||||
{"matrix": [1, 8], "x": 10, "y": 1},
|
||||
{"matrix": [1, 9], "x": 11, "y": 1},
|
||||
{"matrix": [1, 10], "x": 12, "y": 1},
|
||||
{"matrix": [1, 11], "x": 13, "y": 1},
|
||||
{"matrix": [1, 12], "x": 14, "y": 1},
|
||||
{"matrix": [1, 13], "x": 15, "y": 1, "w": 1.5},
|
||||
{"matrix": [1, 14], "x": 16.75, "y": 1},
|
||||
|
||||
{"matrix": [2, 0], "x": 1.5, "y": 2, "w": 1.75},
|
||||
{"matrix": [2, 1], "x": 3.25, "y": 2},
|
||||
{"matrix": [2, 2], "x": 4.25, "y": 2},
|
||||
{"matrix": [2, 3], "x": 5.25, "y": 2},
|
||||
{"matrix": [2, 4], "x": 6.25, "y": 2},
|
||||
{"matrix": [2, 5], "x": 7.25, "y": 2},
|
||||
{"matrix": [2, 6], "x": 8.25, "y": 2},
|
||||
{"matrix": [2, 7], "x": 9.25, "y": 2},
|
||||
{"matrix": [2, 8], "x": 10.25, "y": 2},
|
||||
{"matrix": [2, 9], "x": 11.25, "y": 2},
|
||||
{"matrix": [2, 10], "x": 12.25, "y": 2},
|
||||
{"matrix": [2, 11], "x": 13.25, "y": 2},
|
||||
{"matrix": [2, 12], "x": 14.25, "y": 2, "w": 2.25},
|
||||
{"matrix": [2, 14], "x": 16.75, "y": 2},
|
||||
|
||||
{"matrix": [3, 0], "x": 1.5, "y": 3, "w": 2.25},
|
||||
{"matrix": [3, 2], "x": 3.75, "y": 3},
|
||||
{"matrix": [3, 3], "x": 4.75, "y": 3},
|
||||
{"matrix": [3, 4], "x": 5.75, "y": 3},
|
||||
{"matrix": [3, 5], "x": 6.75, "y": 3},
|
||||
{"matrix": [3, 6], "x": 7.75, "y": 3},
|
||||
{"matrix": [3, 7], "x": 8.75, "y": 3},
|
||||
{"matrix": [3, 8], "x": 9.75, "y": 3},
|
||||
{"matrix": [3, 9], "x": 10.75, "y": 3},
|
||||
{"matrix": [3, 10], "x": 11.75, "y": 3},
|
||||
{"matrix": [3, 11], "x": 12.75, "y": 3},
|
||||
{"matrix": [3, 12], "x": 13.75, "y": 3, "w": 1.75},
|
||||
{"matrix": [3, 13], "x": 15.5, "y": 3},
|
||||
|
||||
{"matrix": [4, 0], "x": 1.5, "y": 4, "w": 1.25},
|
||||
{"matrix": [4, 1], "x": 2.75, "y": 4, "w": 1.25},
|
||||
{"matrix": [4, 2], "x": 4, "y": 4, "w": 1.25},
|
||||
{"matrix": [4, 6], "x": 5.25, "y": 4, "w": 6.25},
|
||||
{"matrix": [4, 10], "x": 11.5, "y": 4, "w": 1.25},
|
||||
{"matrix": [4, 11], "x": 12.75, "y": 4, "w": 1.25},
|
||||
{"matrix": [4, 12], "x": 14.5, "y": 4},
|
||||
{"matrix": [4, 13], "x": 15.5, "y": 4},
|
||||
{"matrix": [4, 14], "x": 16.5, "y": 4}
|
||||
]
|
||||
},
|
||||
"LAYOUT_ansi_blocker_split_bs": {
|
||||
"layout": [
|
||||
{"matrix": [3, 14], "x": 0, "y": 0},
|
||||
|
||||
{"matrix": [0, 0], "x": 1.5, "y": 0},
|
||||
{"matrix": [0, 1], "x": 2.5, "y": 0},
|
||||
{"matrix": [0, 2], "x": 3.5, "y": 0},
|
||||
{"matrix": [0, 3], "x": 4.5, "y": 0},
|
||||
{"matrix": [0, 4], "x": 5.5, "y": 0},
|
||||
{"matrix": [0, 5], "x": 6.5, "y": 0},
|
||||
{"matrix": [0, 6], "x": 7.5, "y": 0},
|
||||
{"matrix": [0, 7], "x": 8.5, "y": 0},
|
||||
{"matrix": [0, 8], "x": 9.5, "y": 0},
|
||||
{"matrix": [0, 9], "x": 10.5, "y": 0},
|
||||
{"matrix": [0, 10], "x": 11.5, "y": 0},
|
||||
{"matrix": [0, 11], "x": 12.5, "y": 0},
|
||||
{"matrix": [0, 12], "x": 13.5, "y": 0},
|
||||
{"matrix": [0, 13], "x": 14.5, "y": 0},
|
||||
{"matrix": [2, 13], "x": 15.5, "y": 0},
|
||||
{"matrix": [0, 14], "x": 16.75, "y": 0},
|
||||
|
||||
{"matrix": [1, 0], "x": 1.5, "y": 1, "w": 1.5},
|
||||
{"matrix": [1, 1], "x": 3, "y": 1},
|
||||
{"matrix": [1, 2], "x": 4, "y": 1},
|
||||
{"matrix": [1, 3], "x": 5, "y": 1},
|
||||
{"matrix": [1, 4], "x": 6, "y": 1},
|
||||
{"matrix": [1, 5], "x": 7, "y": 1},
|
||||
{"matrix": [1, 6], "x": 8, "y": 1},
|
||||
{"matrix": [1, 7], "x": 9, "y": 1},
|
||||
{"matrix": [1, 8], "x": 10, "y": 1},
|
||||
{"matrix": [1, 9], "x": 11, "y": 1},
|
||||
{"matrix": [1, 10], "x": 12, "y": 1},
|
||||
{"matrix": [1, 11], "x": 13, "y": 1},
|
||||
{"matrix": [1, 12], "x": 14, "y": 1},
|
||||
{"matrix": [1, 13], "x": 15, "y": 1, "w": 1.5},
|
||||
{"matrix": [1, 14], "x": 16.75, "y": 1},
|
||||
|
||||
{"matrix": [2, 0], "x": 1.5, "y": 2, "w": 1.75},
|
||||
{"matrix": [2, 1], "x": 3.25, "y": 2},
|
||||
{"matrix": [2, 2], "x": 4.25, "y": 2},
|
||||
{"matrix": [2, 3], "x": 5.25, "y": 2},
|
||||
{"matrix": [2, 4], "x": 6.25, "y": 2},
|
||||
{"matrix": [2, 5], "x": 7.25, "y": 2},
|
||||
{"matrix": [2, 6], "x": 8.25, "y": 2},
|
||||
{"matrix": [2, 7], "x": 9.25, "y": 2},
|
||||
{"matrix": [2, 8], "x": 10.25, "y": 2},
|
||||
{"matrix": [2, 9], "x": 11.25, "y": 2},
|
||||
{"matrix": [2, 10], "x": 12.25, "y": 2},
|
||||
{"matrix": [2, 11], "x": 13.25, "y": 2},
|
||||
{"matrix": [2, 12], "x": 14.25, "y": 2, "w": 2.25},
|
||||
{"matrix": [2, 14], "x": 16.75, "y": 2},
|
||||
|
||||
{"matrix": [3, 0], "x": 1.5, "y": 3, "w": 2.25},
|
||||
{"matrix": [3, 2], "x": 3.75, "y": 3},
|
||||
{"matrix": [3, 3], "x": 4.75, "y": 3},
|
||||
{"matrix": [3, 4], "x": 5.75, "y": 3},
|
||||
{"matrix": [3, 5], "x": 6.75, "y": 3},
|
||||
{"matrix": [3, 6], "x": 7.75, "y": 3},
|
||||
{"matrix": [3, 7], "x": 8.75, "y": 3},
|
||||
{"matrix": [3, 8], "x": 9.75, "y": 3},
|
||||
{"matrix": [3, 9], "x": 10.75, "y": 3},
|
||||
{"matrix": [3, 10], "x": 11.75, "y": 3},
|
||||
{"matrix": [3, 11], "x": 12.75, "y": 3},
|
||||
{"matrix": [3, 12], "x": 13.75, "y": 3, "w": 1.75},
|
||||
{"matrix": [3, 13], "x": 15.5, "y": 3},
|
||||
|
||||
{"matrix": [4, 0], "x": 1.5, "y": 4, "w": 1.25},
|
||||
{"matrix": [4, 1], "x": 2.75, "y": 4, "w": 1.25},
|
||||
{"matrix": [4, 2], "x": 4, "y": 4, "w": 1.25},
|
||||
{"matrix": [4, 6], "x": 5.25, "y": 4, "w": 6.25},
|
||||
{"matrix": [4, 10], "x": 11.5, "y": 4, "w": 1.25},
|
||||
{"matrix": [4, 11], "x": 12.75, "y": 4, "w": 1.25},
|
||||
{"matrix": [4, 12], "x": 14.5, "y": 4},
|
||||
{"matrix": [4, 13], "x": 15.5, "y": 4},
|
||||
{"matrix": [4, 14], "x": 16.5, "y": 4}
|
||||
]
|
||||
},
|
||||
"LAYOUT_ansi_blocker_tsangan": {
|
||||
"layout": [
|
||||
{"matrix": [3, 14], "x": 0, "y": 0},
|
||||
|
||||
{"matrix": [0, 0], "x": 1.5, "y": 0},
|
||||
{"matrix": [0, 1], "x": 2.5, "y": 0},
|
||||
{"matrix": [0, 2], "x": 3.5, "y": 0},
|
||||
{"matrix": [0, 3], "x": 4.5, "y": 0},
|
||||
{"matrix": [0, 4], "x": 5.5, "y": 0},
|
||||
{"matrix": [0, 5], "x": 6.5, "y": 0},
|
||||
{"matrix": [0, 6], "x": 7.5, "y": 0},
|
||||
{"matrix": [0, 7], "x": 8.5, "y": 0},
|
||||
{"matrix": [0, 8], "x": 9.5, "y": 0},
|
||||
{"matrix": [0, 9], "x": 10.5, "y": 0},
|
||||
{"matrix": [0, 10], "x": 11.5, "y": 0},
|
||||
{"matrix": [0, 11], "x": 12.5, "y": 0},
|
||||
{"matrix": [0, 12], "x": 13.5, "y": 0},
|
||||
{"matrix": [0, 13], "x": 14.5, "y": 0, "w": 2},
|
||||
{"matrix": [0, 14], "x": 16.75, "y": 0},
|
||||
|
||||
{"matrix": [1, 0], "x": 1.5, "y": 1, "w": 1.5},
|
||||
{"matrix": [1, 1], "x": 3, "y": 1},
|
||||
{"matrix": [1, 2], "x": 4, "y": 1},
|
||||
{"matrix": [1, 3], "x": 5, "y": 1},
|
||||
{"matrix": [1, 4], "x": 6, "y": 1},
|
||||
{"matrix": [1, 5], "x": 7, "y": 1},
|
||||
{"matrix": [1, 6], "x": 8, "y": 1},
|
||||
{"matrix": [1, 7], "x": 9, "y": 1},
|
||||
{"matrix": [1, 8], "x": 10, "y": 1},
|
||||
{"matrix": [1, 9], "x": 11, "y": 1},
|
||||
{"matrix": [1, 10], "x": 12, "y": 1},
|
||||
{"matrix": [1, 11], "x": 13, "y": 1},
|
||||
{"matrix": [1, 12], "x": 14, "y": 1},
|
||||
{"matrix": [1, 13], "x": 15, "y": 1, "w": 1.5},
|
||||
{"matrix": [1, 14], "x": 16.75, "y": 1},
|
||||
|
||||
{"matrix": [2, 0], "x": 1.5, "y": 2, "w": 1.75},
|
||||
{"matrix": [2, 1], "x": 3.25, "y": 2},
|
||||
{"matrix": [2, 2], "x": 4.25, "y": 2},
|
||||
{"matrix": [2, 3], "x": 5.25, "y": 2},
|
||||
{"matrix": [2, 4], "x": 6.25, "y": 2},
|
||||
{"matrix": [2, 5], "x": 7.25, "y": 2},
|
||||
{"matrix": [2, 6], "x": 8.25, "y": 2},
|
||||
{"matrix": [2, 7], "x": 9.25, "y": 2},
|
||||
{"matrix": [2, 8], "x": 10.25, "y": 2},
|
||||
{"matrix": [2, 9], "x": 11.25, "y": 2},
|
||||
{"matrix": [2, 10], "x": 12.25, "y": 2},
|
||||
{"matrix": [2, 11], "x": 13.25, "y": 2},
|
||||
{"matrix": [2, 12], "x": 14.25, "y": 2, "w": 2.25},
|
||||
{"matrix": [2, 14], "x": 16.75, "y": 2},
|
||||
|
||||
{"matrix": [3, 0], "x": 1.5, "y": 3, "w": 2.25},
|
||||
{"matrix": [3, 2], "x": 3.75, "y": 3},
|
||||
{"matrix": [3, 3], "x": 4.75, "y": 3},
|
||||
{"matrix": [3, 4], "x": 5.75, "y": 3},
|
||||
{"matrix": [3, 5], "x": 6.75, "y": 3},
|
||||
{"matrix": [3, 6], "x": 7.75, "y": 3},
|
||||
{"matrix": [3, 7], "x": 8.75, "y": 3},
|
||||
{"matrix": [3, 8], "x": 9.75, "y": 3},
|
||||
{"matrix": [3, 9], "x": 10.75, "y": 3},
|
||||
{"matrix": [3, 10], "x": 11.75, "y": 3},
|
||||
{"matrix": [3, 11], "x": 12.75, "y": 3},
|
||||
{"matrix": [3, 12], "x": 13.75, "y": 3, "w": 1.75},
|
||||
{"matrix": [3, 13], "x": 15.5, "y": 3},
|
||||
|
||||
{"matrix": [4, 0], "x": 1.5, "y": 4, "w": 1.5},
|
||||
{"matrix": [4, 1], "x": 3, "y": 4},
|
||||
{"matrix": [4, 2], "x": 4, "y": 4, "w": 1.5},
|
||||
{"matrix": [4, 6], "x": 5.5, "y": 4, "w": 7},
|
||||
{"matrix": [4, 11], "x": 12.5, "y": 4, "w": 1.5},
|
||||
{"matrix": [4, 12], "x": 14.5, "y": 4},
|
||||
{"matrix": [4, 13], "x": 15.5, "y": 4},
|
||||
{"matrix": [4, 14], "x": 16.5, "y": 4}
|
||||
]
|
||||
},
|
||||
"LAYOUT_ansi_blocker_tsangan_split_bs": {
|
||||
"layout": [
|
||||
{"matrix": [3, 14], "x": 0, "y": 0},
|
||||
|
||||
{"matrix": [0, 0], "x": 1.5, "y": 0},
|
||||
{"matrix": [0, 1], "x": 2.5, "y": 0},
|
||||
{"matrix": [0, 2], "x": 3.5, "y": 0},
|
||||
{"matrix": [0, 3], "x": 4.5, "y": 0},
|
||||
{"matrix": [0, 4], "x": 5.5, "y": 0},
|
||||
{"matrix": [0, 5], "x": 6.5, "y": 0},
|
||||
{"matrix": [0, 6], "x": 7.5, "y": 0},
|
||||
{"matrix": [0, 7], "x": 8.5, "y": 0},
|
||||
{"matrix": [0, 8], "x": 9.5, "y": 0},
|
||||
{"matrix": [0, 9], "x": 10.5, "y": 0},
|
||||
{"matrix": [0, 10], "x": 11.5, "y": 0},
|
||||
{"matrix": [0, 11], "x": 12.5, "y": 0},
|
||||
{"matrix": [0, 12], "x": 13.5, "y": 0},
|
||||
{"matrix": [0, 13], "x": 14.5, "y": 0},
|
||||
{"matrix": [2, 13], "x": 15.5, "y": 0},
|
||||
{"matrix": [0, 14], "x": 16.75, "y": 0},
|
||||
|
||||
{"matrix": [1, 0], "x": 1.5, "y": 1, "w": 1.5},
|
||||
{"matrix": [1, 1], "x": 3, "y": 1},
|
||||
{"matrix": [1, 2], "x": 4, "y": 1},
|
||||
{"matrix": [1, 3], "x": 5, "y": 1},
|
||||
{"matrix": [1, 4], "x": 6, "y": 1},
|
||||
{"matrix": [1, 5], "x": 7, "y": 1},
|
||||
{"matrix": [1, 6], "x": 8, "y": 1},
|
||||
{"matrix": [1, 7], "x": 9, "y": 1},
|
||||
{"matrix": [1, 8], "x": 10, "y": 1},
|
||||
{"matrix": [1, 9], "x": 11, "y": 1},
|
||||
{"matrix": [1, 10], "x": 12, "y": 1},
|
||||
{"matrix": [1, 11], "x": 13, "y": 1},
|
||||
{"matrix": [1, 12], "x": 14, "y": 1},
|
||||
{"matrix": [1, 13], "x": 15, "y": 1, "w": 1.5},
|
||||
{"matrix": [1, 14], "x": 16.75, "y": 1},
|
||||
|
||||
{"matrix": [2, 0], "x": 1.5, "y": 2, "w": 1.75},
|
||||
{"matrix": [2, 1], "x": 3.25, "y": 2},
|
||||
{"matrix": [2, 2], "x": 4.25, "y": 2},
|
||||
{"matrix": [2, 3], "x": 5.25, "y": 2},
|
||||
{"matrix": [2, 4], "x": 6.25, "y": 2},
|
||||
{"matrix": [2, 5], "x": 7.25, "y": 2},
|
||||
{"matrix": [2, 6], "x": 8.25, "y": 2},
|
||||
{"matrix": [2, 7], "x": 9.25, "y": 2},
|
||||
{"matrix": [2, 8], "x": 10.25, "y": 2},
|
||||
{"matrix": [2, 9], "x": 11.25, "y": 2},
|
||||
{"matrix": [2, 10], "x": 12.25, "y": 2},
|
||||
{"matrix": [2, 11], "x": 13.25, "y": 2},
|
||||
{"matrix": [2, 12], "x": 14.25, "y": 2, "w": 2.25},
|
||||
{"matrix": [2, 14], "x": 16.75, "y": 2},
|
||||
|
||||
{"matrix": [3, 0], "x": 1.5, "y": 3, "w": 2.25},
|
||||
{"matrix": [3, 2], "x": 3.75, "y": 3},
|
||||
{"matrix": [3, 3], "x": 4.75, "y": 3},
|
||||
{"matrix": [3, 4], "x": 5.75, "y": 3},
|
||||
{"matrix": [3, 5], "x": 6.75, "y": 3},
|
||||
{"matrix": [3, 6], "x": 7.75, "y": 3},
|
||||
{"matrix": [3, 7], "x": 8.75, "y": 3},
|
||||
{"matrix": [3, 8], "x": 9.75, "y": 3},
|
||||
{"matrix": [3, 9], "x": 10.75, "y": 3},
|
||||
{"matrix": [3, 10], "x": 11.75, "y": 3},
|
||||
{"matrix": [3, 11], "x": 12.75, "y": 3},
|
||||
{"matrix": [3, 12], "x": 13.75, "y": 3, "w": 1.75},
|
||||
{"matrix": [3, 13], "x": 15.5, "y": 3},
|
||||
|
||||
{"matrix": [4, 0], "x": 1.5, "y": 4, "w": 1.5},
|
||||
{"matrix": [4, 1], "x": 3, "y": 4},
|
||||
{"matrix": [4, 2], "x": 4, "y": 4, "w": 1.5},
|
||||
{"matrix": [4, 6], "x": 5.5, "y": 4, "w": 7},
|
||||
{"matrix": [4, 11], "x": 12.5, "y": 4, "w": 1.5},
|
||||
{"matrix": [4, 12], "x": 14.5, "y": 4},
|
||||
{"matrix": [4, 13], "x": 15.5, "y": 4},
|
||||
{"matrix": [4, 14], "x": 16.5, "y": 4}
|
||||
]
|
||||
},
|
||||
"LAYOUT_iso_blocker": {
|
||||
"layout": [
|
||||
{"matrix": [3, 14], "x": 0, "y": 0},
|
||||
|
||||
{"matrix": [0, 0], "x": 1.5, "y": 0},
|
||||
{"matrix": [0, 1], "x": 2.5, "y": 0},
|
||||
{"matrix": [0, 2], "x": 3.5, "y": 0},
|
||||
{"matrix": [0, 3], "x": 4.5, "y": 0},
|
||||
{"matrix": [0, 4], "x": 5.5, "y": 0},
|
||||
{"matrix": [0, 5], "x": 6.5, "y": 0},
|
||||
{"matrix": [0, 6], "x": 7.5, "y": 0},
|
||||
{"matrix": [0, 7], "x": 8.5, "y": 0},
|
||||
{"matrix": [0, 8], "x": 9.5, "y": 0},
|
||||
{"matrix": [0, 9], "x": 10.5, "y": 0},
|
||||
{"matrix": [0, 10], "x": 11.5, "y": 0},
|
||||
{"matrix": [0, 11], "x": 12.5, "y": 0},
|
||||
{"matrix": [0, 12], "x": 13.5, "y": 0},
|
||||
{"matrix": [0, 13], "x": 14.5, "y": 0, "w": 2},
|
||||
{"matrix": [0, 14], "x": 16.75, "y": 0},
|
||||
|
||||
{"matrix": [1, 0], "x": 1.5, "y": 1, "w": 1.5},
|
||||
{"matrix": [1, 1], "x": 3, "y": 1},
|
||||
{"matrix": [1, 2], "x": 4, "y": 1},
|
||||
{"matrix": [1, 3], "x": 5, "y": 1},
|
||||
{"matrix": [1, 4], "x": 6, "y": 1},
|
||||
{"matrix": [1, 5], "x": 7, "y": 1},
|
||||
{"matrix": [1, 6], "x": 8, "y": 1},
|
||||
{"matrix": [1, 7], "x": 9, "y": 1},
|
||||
{"matrix": [1, 8], "x": 10, "y": 1},
|
||||
{"matrix": [1, 9], "x": 11, "y": 1},
|
||||
{"matrix": [1, 10], "x": 12, "y": 1},
|
||||
{"matrix": [1, 11], "x": 13, "y": 1},
|
||||
{"matrix": [1, 12], "x": 14, "y": 1},
|
||||
{"matrix": [1, 14], "x": 16.75, "y": 1},
|
||||
|
||||
{"matrix": [2, 0], "x": 1.5, "y": 2, "w": 1.75},
|
||||
{"matrix": [2, 1], "x": 3.25, "y": 2},
|
||||
{"matrix": [2, 2], "x": 4.25, "y": 2},
|
||||
{"matrix": [2, 3], "x": 5.25, "y": 2},
|
||||
{"matrix": [2, 4], "x": 6.25, "y": 2},
|
||||
{"matrix": [2, 5], "x": 7.25, "y": 2},
|
||||
{"matrix": [2, 6], "x": 8.25, "y": 2},
|
||||
{"matrix": [2, 7], "x": 9.25, "y": 2},
|
||||
{"matrix": [2, 8], "x": 10.25, "y": 2},
|
||||
{"matrix": [2, 9], "x": 11.25, "y": 2},
|
||||
{"matrix": [2, 10], "x": 12.25, "y": 2},
|
||||
{"matrix": [2, 11], "x": 13.25, "y": 2},
|
||||
{"matrix": [2, 12], "x": 14.25, "y": 2},
|
||||
{"matrix": [1, 13], "x": 15.25, "y": 1, "w": 1.25, "h": 2},
|
||||
{"matrix": [2, 14], "x": 16.75, "y": 2},
|
||||
|
||||
{"matrix": [3, 0], "x": 1.5, "y": 3, "w": 1.25},
|
||||
{"matrix": [3, 1], "x": 2.75, "y": 3},
|
||||
{"matrix": [3, 2], "x": 3.75, "y": 3},
|
||||
{"matrix": [3, 3], "x": 4.75, "y": 3},
|
||||
{"matrix": [3, 4], "x": 5.75, "y": 3},
|
||||
{"matrix": [3, 5], "x": 6.75, "y": 3},
|
||||
{"matrix": [3, 6], "x": 7.75, "y": 3},
|
||||
{"matrix": [3, 7], "x": 8.75, "y": 3},
|
||||
{"matrix": [3, 8], "x": 9.75, "y": 3},
|
||||
{"matrix": [3, 9], "x": 10.75, "y": 3},
|
||||
{"matrix": [3, 10], "x": 11.75, "y": 3},
|
||||
{"matrix": [3, 11], "x": 12.75, "y": 3},
|
||||
{"matrix": [3, 12], "x": 13.75, "y": 3, "w": 1.75},
|
||||
{"matrix": [3, 13], "x": 15.5, "y": 3},
|
||||
|
||||
{"matrix": [4, 0], "x": 1.5, "y": 4, "w": 1.25},
|
||||
{"matrix": [4, 1], "x": 2.75, "y": 4, "w": 1.25},
|
||||
{"matrix": [4, 2], "x": 4, "y": 4, "w": 1.25},
|
||||
{"matrix": [4, 6], "x": 5.25, "y": 4, "w": 6.25},
|
||||
{"matrix": [4, 10], "x": 11.5, "y": 4, "w": 1.25},
|
||||
{"matrix": [4, 11], "x": 12.75, "y": 4, "w": 1.25},
|
||||
{"matrix": [4, 12], "x": 14.5, "y": 4},
|
||||
{"matrix": [4, 13], "x": 15.5, "y": 4},
|
||||
{"matrix": [4, 14], "x": 16.5, "y": 4}
|
||||
]
|
||||
},
|
||||
"LAYOUT_iso_blocker_split_bs": {
|
||||
"layout": [
|
||||
{"matrix": [3, 14], "x": 0, "y": 0},
|
||||
|
||||
{"matrix": [0, 0], "x": 1.5, "y": 0},
|
||||
{"matrix": [0, 1], "x": 2.5, "y": 0},
|
||||
{"matrix": [0, 2], "x": 3.5, "y": 0},
|
||||
{"matrix": [0, 3], "x": 4.5, "y": 0},
|
||||
{"matrix": [0, 4], "x": 5.5, "y": 0},
|
||||
{"matrix": [0, 5], "x": 6.5, "y": 0},
|
||||
{"matrix": [0, 6], "x": 7.5, "y": 0},
|
||||
{"matrix": [0, 7], "x": 8.5, "y": 0},
|
||||
{"matrix": [0, 8], "x": 9.5, "y": 0},
|
||||
{"matrix": [0, 9], "x": 10.5, "y": 0},
|
||||
{"matrix": [0, 10], "x": 11.5, "y": 0},
|
||||
{"matrix": [0, 11], "x": 12.5, "y": 0},
|
||||
{"matrix": [0, 12], "x": 13.5, "y": 0},
|
||||
{"matrix": [0, 13], "x": 14.5, "y": 0},
|
||||
{"matrix": [2, 13], "x": 15.5, "y": 0},
|
||||
{"matrix": [0, 14], "x": 16.75, "y": 0},
|
||||
|
||||
{"matrix": [1, 0], "x": 1.5, "y": 1, "w": 1.5},
|
||||
{"matrix": [1, 1], "x": 3, "y": 1},
|
||||
{"matrix": [1, 2], "x": 4, "y": 1},
|
||||
{"matrix": [1, 3], "x": 5, "y": 1},
|
||||
{"matrix": [1, 4], "x": 6, "y": 1},
|
||||
{"matrix": [1, 5], "x": 7, "y": 1},
|
||||
{"matrix": [1, 6], "x": 8, "y": 1},
|
||||
{"matrix": [1, 7], "x": 9, "y": 1},
|
||||
{"matrix": [1, 8], "x": 10, "y": 1},
|
||||
{"matrix": [1, 9], "x": 11, "y": 1},
|
||||
{"matrix": [1, 10], "x": 12, "y": 1},
|
||||
{"matrix": [1, 11], "x": 13, "y": 1},
|
||||
{"matrix": [1, 12], "x": 14, "y": 1},
|
||||
{"matrix": [1, 14], "x": 16.75, "y": 1},
|
||||
|
||||
{"matrix": [2, 0], "x": 1.5, "y": 2, "w": 1.75},
|
||||
{"matrix": [2, 1], "x": 3.25, "y": 2},
|
||||
{"matrix": [2, 2], "x": 4.25, "y": 2},
|
||||
{"matrix": [2, 3], "x": 5.25, "y": 2},
|
||||
{"matrix": [2, 4], "x": 6.25, "y": 2},
|
||||
{"matrix": [2, 5], "x": 7.25, "y": 2},
|
||||
{"matrix": [2, 6], "x": 8.25, "y": 2},
|
||||
{"matrix": [2, 7], "x": 9.25, "y": 2},
|
||||
{"matrix": [2, 8], "x": 10.25, "y": 2},
|
||||
{"matrix": [2, 9], "x": 11.25, "y": 2},
|
||||
{"matrix": [2, 10], "x": 12.25, "y": 2},
|
||||
{"matrix": [2, 11], "x": 13.25, "y": 2},
|
||||
{"matrix": [2, 12], "x": 14.25, "y": 2},
|
||||
{"matrix": [1, 13], "x": 15.25, "y": 1, "w": 1.25, "h": 2},
|
||||
{"matrix": [2, 14], "x": 16.75, "y": 2},
|
||||
|
||||
{"matrix": [3, 0], "x": 1.5, "y": 3, "w": 1.25},
|
||||
{"matrix": [3, 1], "x": 2.75, "y": 3},
|
||||
{"matrix": [3, 2], "x": 3.75, "y": 3},
|
||||
{"matrix": [3, 3], "x": 4.75, "y": 3},
|
||||
{"matrix": [3, 4], "x": 5.75, "y": 3},
|
||||
{"matrix": [3, 5], "x": 6.75, "y": 3},
|
||||
{"matrix": [3, 6], "x": 7.75, "y": 3},
|
||||
{"matrix": [3, 7], "x": 8.75, "y": 3},
|
||||
{"matrix": [3, 8], "x": 9.75, "y": 3},
|
||||
{"matrix": [3, 9], "x": 10.75, "y": 3},
|
||||
{"matrix": [3, 10], "x": 11.75, "y": 3},
|
||||
{"matrix": [3, 11], "x": 12.75, "y": 3},
|
||||
{"matrix": [3, 12], "x": 13.75, "y": 3, "w": 1.75},
|
||||
{"matrix": [3, 13], "x": 15.5, "y": 3},
|
||||
|
||||
{"matrix": [4, 0], "x": 1.5, "y": 4, "w": 1.25},
|
||||
{"matrix": [4, 1], "x": 2.75, "y": 4, "w": 1.25},
|
||||
{"matrix": [4, 2], "x": 4, "y": 4, "w": 1.25},
|
||||
{"matrix": [4, 6], "x": 5.25, "y": 4, "w": 6.25},
|
||||
{"matrix": [4, 10], "x": 11.5, "y": 4, "w": 1.25},
|
||||
{"matrix": [4, 11], "x": 12.75, "y": 4, "w": 1.25},
|
||||
{"matrix": [4, 12], "x": 14.5, "y": 4},
|
||||
{"matrix": [4, 13], "x": 15.5, "y": 4},
|
||||
{"matrix": [4, 14], "x": 16.5, "y": 4}
|
||||
]
|
||||
},
|
||||
"LAYOUT_iso_blocker_tsangan": {
|
||||
"layout": [
|
||||
{"matrix": [3, 14], "x": 0, "y": 0},
|
||||
|
||||
{"matrix": [0, 0], "x": 1.5, "y": 0},
|
||||
{"matrix": [0, 1], "x": 2.5, "y": 0},
|
||||
{"matrix": [0, 2], "x": 3.5, "y": 0},
|
||||
{"matrix": [0, 3], "x": 4.5, "y": 0},
|
||||
{"matrix": [0, 4], "x": 5.5, "y": 0},
|
||||
{"matrix": [0, 5], "x": 6.5, "y": 0},
|
||||
{"matrix": [0, 6], "x": 7.5, "y": 0},
|
||||
{"matrix": [0, 7], "x": 8.5, "y": 0},
|
||||
{"matrix": [0, 8], "x": 9.5, "y": 0},
|
||||
{"matrix": [0, 9], "x": 10.5, "y": 0},
|
||||
{"matrix": [0, 10], "x": 11.5, "y": 0},
|
||||
{"matrix": [0, 11], "x": 12.5, "y": 0},
|
||||
{"matrix": [0, 12], "x": 13.5, "y": 0},
|
||||
{"matrix": [0, 13], "x": 14.5, "y": 0, "w": 2},
|
||||
{"matrix": [0, 14], "x": 16.75, "y": 0},
|
||||
|
||||
{"matrix": [1, 0], "x": 1.5, "y": 1, "w": 1.5},
|
||||
{"matrix": [1, 1], "x": 3, "y": 1},
|
||||
{"matrix": [1, 2], "x": 4, "y": 1},
|
||||
{"matrix": [1, 3], "x": 5, "y": 1},
|
||||
{"matrix": [1, 4], "x": 6, "y": 1},
|
||||
{"matrix": [1, 5], "x": 7, "y": 1},
|
||||
{"matrix": [1, 6], "x": 8, "y": 1},
|
||||
{"matrix": [1, 7], "x": 9, "y": 1},
|
||||
{"matrix": [1, 8], "x": 10, "y": 1},
|
||||
{"matrix": [1, 9], "x": 11, "y": 1},
|
||||
{"matrix": [1, 10], "x": 12, "y": 1},
|
||||
{"matrix": [1, 11], "x": 13, "y": 1},
|
||||
{"matrix": [1, 12], "x": 14, "y": 1},
|
||||
{"matrix": [1, 14], "x": 16.75, "y": 1},
|
||||
|
||||
{"matrix": [2, 0], "x": 1.5, "y": 2, "w": 1.75},
|
||||
{"matrix": [2, 1], "x": 3.25, "y": 2},
|
||||
{"matrix": [2, 2], "x": 4.25, "y": 2},
|
||||
{"matrix": [2, 3], "x": 5.25, "y": 2},
|
||||
{"matrix": [2, 4], "x": 6.25, "y": 2},
|
||||
{"matrix": [2, 5], "x": 7.25, "y": 2},
|
||||
{"matrix": [2, 6], "x": 8.25, "y": 2},
|
||||
{"matrix": [2, 7], "x": 9.25, "y": 2},
|
||||
{"matrix": [2, 8], "x": 10.25, "y": 2},
|
||||
{"matrix": [2, 9], "x": 11.25, "y": 2},
|
||||
{"matrix": [2, 10], "x": 12.25, "y": 2},
|
||||
{"matrix": [2, 11], "x": 13.25, "y": 2},
|
||||
{"matrix": [2, 12], "x": 14.25, "y": 2},
|
||||
{"matrix": [1, 13], "x": 15.25, "y": 1, "w": 1.25, "h": 2},
|
||||
{"matrix": [2, 14], "x": 16.75, "y": 2},
|
||||
|
||||
{"matrix": [3, 0], "x": 1.5, "y": 3, "w": 1.25},
|
||||
{"matrix": [3, 1], "x": 2.75, "y": 3},
|
||||
{"matrix": [3, 2], "x": 3.75, "y": 3},
|
||||
{"matrix": [3, 3], "x": 4.75, "y": 3},
|
||||
{"matrix": [3, 4], "x": 5.75, "y": 3},
|
||||
{"matrix": [3, 5], "x": 6.75, "y": 3},
|
||||
{"matrix": [3, 6], "x": 7.75, "y": 3},
|
||||
{"matrix": [3, 7], "x": 8.75, "y": 3},
|
||||
{"matrix": [3, 8], "x": 9.75, "y": 3},
|
||||
{"matrix": [3, 9], "x": 10.75, "y": 3},
|
||||
{"matrix": [3, 10], "x": 11.75, "y": 3},
|
||||
{"matrix": [3, 11], "x": 12.75, "y": 3},
|
||||
{"matrix": [3, 12], "x": 13.75, "y": 3, "w": 1.75},
|
||||
{"matrix": [3, 13], "x": 15.5, "y": 3},
|
||||
|
||||
{"matrix": [4, 0], "x": 1.5, "y": 4, "w": 1.5},
|
||||
{"matrix": [4, 1], "x": 3, "y": 4},
|
||||
{"matrix": [4, 2], "x": 4, "y": 4, "w": 1.5},
|
||||
{"matrix": [4, 6], "x": 5.5, "y": 4, "w": 7},
|
||||
{"matrix": [4, 11], "x": 12.5, "y": 4, "w": 1.5},
|
||||
{"matrix": [4, 12], "x": 14.5, "y": 4},
|
||||
{"matrix": [4, 13], "x": 15.5, "y": 4},
|
||||
{"matrix": [4, 14], "x": 16.5, "y": 4}
|
||||
]
|
||||
},
|
||||
"LAYOUT_iso_blocker_tsangan_split_bs": {
|
||||
"layout": [
|
||||
{"matrix": [3, 14], "x": 0, "y": 0},
|
||||
|
||||
{"matrix": [0, 0], "x": 1.5, "y": 0},
|
||||
{"matrix": [0, 1], "x": 2.5, "y": 0},
|
||||
{"matrix": [0, 2], "x": 3.5, "y": 0},
|
||||
{"matrix": [0, 3], "x": 4.5, "y": 0},
|
||||
{"matrix": [0, 4], "x": 5.5, "y": 0},
|
||||
{"matrix": [0, 5], "x": 6.5, "y": 0},
|
||||
{"matrix": [0, 6], "x": 7.5, "y": 0},
|
||||
{"matrix": [0, 7], "x": 8.5, "y": 0},
|
||||
{"matrix": [0, 8], "x": 9.5, "y": 0},
|
||||
{"matrix": [0, 9], "x": 10.5, "y": 0},
|
||||
{"matrix": [0, 10], "x": 11.5, "y": 0},
|
||||
{"matrix": [0, 11], "x": 12.5, "y": 0},
|
||||
{"matrix": [0, 12], "x": 13.5, "y": 0},
|
||||
{"matrix": [0, 13], "x": 14.5, "y": 0},
|
||||
{"matrix": [2, 13], "x": 15.5, "y": 0},
|
||||
{"matrix": [0, 14], "x": 16.75, "y": 0},
|
||||
|
||||
{"matrix": [1, 0], "x": 1.5, "y": 1, "w": 1.5},
|
||||
{"matrix": [1, 1], "x": 3, "y": 1},
|
||||
{"matrix": [1, 2], "x": 4, "y": 1},
|
||||
{"matrix": [1, 3], "x": 5, "y": 1},
|
||||
{"matrix": [1, 4], "x": 6, "y": 1},
|
||||
{"matrix": [1, 5], "x": 7, "y": 1},
|
||||
{"matrix": [1, 6], "x": 8, "y": 1},
|
||||
{"matrix": [1, 7], "x": 9, "y": 1},
|
||||
{"matrix": [1, 8], "x": 10, "y": 1},
|
||||
{"matrix": [1, 9], "x": 11, "y": 1},
|
||||
{"matrix": [1, 10], "x": 12, "y": 1},
|
||||
{"matrix": [1, 11], "x": 13, "y": 1},
|
||||
{"matrix": [1, 12], "x": 14, "y": 1},
|
||||
{"matrix": [1, 14], "x": 16.75, "y": 1},
|
||||
|
||||
{"matrix": [2, 0], "x": 1.5, "y": 2, "w": 1.75},
|
||||
{"matrix": [2, 1], "x": 3.25, "y": 2},
|
||||
{"matrix": [2, 2], "x": 4.25, "y": 2},
|
||||
{"matrix": [2, 3], "x": 5.25, "y": 2},
|
||||
{"matrix": [2, 4], "x": 6.25, "y": 2},
|
||||
{"matrix": [2, 5], "x": 7.25, "y": 2},
|
||||
{"matrix": [2, 6], "x": 8.25, "y": 2},
|
||||
{"matrix": [2, 7], "x": 9.25, "y": 2},
|
||||
{"matrix": [2, 8], "x": 10.25, "y": 2},
|
||||
{"matrix": [2, 9], "x": 11.25, "y": 2},
|
||||
{"matrix": [2, 10], "x": 12.25, "y": 2},
|
||||
{"matrix": [2, 11], "x": 13.25, "y": 2},
|
||||
{"matrix": [2, 12], "x": 14.25, "y": 2},
|
||||
{"matrix": [1, 13], "x": 15.25, "y": 1, "w": 1.25, "h": 2},
|
||||
{"matrix": [2, 14], "x": 16.75, "y": 2},
|
||||
|
||||
{"matrix": [3, 0], "x": 1.5, "y": 3, "w": 1.25},
|
||||
{"matrix": [3, 1], "x": 2.75, "y": 3},
|
||||
{"matrix": [3, 2], "x": 3.75, "y": 3},
|
||||
{"matrix": [3, 3], "x": 4.75, "y": 3},
|
||||
{"matrix": [3, 4], "x": 5.75, "y": 3},
|
||||
{"matrix": [3, 5], "x": 6.75, "y": 3},
|
||||
{"matrix": [3, 6], "x": 7.75, "y": 3},
|
||||
{"matrix": [3, 7], "x": 8.75, "y": 3},
|
||||
{"matrix": [3, 8], "x": 9.75, "y": 3},
|
||||
{"matrix": [3, 9], "x": 10.75, "y": 3},
|
||||
{"matrix": [3, 10], "x": 11.75, "y": 3},
|
||||
{"matrix": [3, 11], "x": 12.75, "y": 3},
|
||||
{"matrix": [3, 12], "x": 13.75, "y": 3, "w": 1.75},
|
||||
{"matrix": [3, 13], "x": 15.5, "y": 3},
|
||||
|
||||
{"matrix": [4, 0], "x": 1.5, "y": 4, "w": 1.5},
|
||||
{"matrix": [4, 1], "x": 3, "y": 4},
|
||||
{"matrix": [4, 2], "x": 4, "y": 4, "w": 1.5},
|
||||
{"matrix": [4, 6], "x": 5.5, "y": 4, "w": 7},
|
||||
{"matrix": [4, 11], "x": 12.5, "y": 4, "w": 1.5},
|
||||
{"matrix": [4, 12], "x": 14.5, "y": 4},
|
||||
{"matrix": [4, 13], "x": 15.5, "y": 4},
|
||||
{"matrix": [4, 14], "x": 16.5, "y": 4}
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
||||
63
keyboards/keebfront/vanguard65/keymaps/default/keymap.c
Normal file
63
keyboards/keebfront/vanguard65/keymaps/default/keymap.c
Normal file
@@ -0,0 +1,63 @@
|
||||
/*
|
||||
Copyright 2022 <hello@keebfront.com>
|
||||
This program is free software: you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License as published by
|
||||
the Free Software Foundation, either version 2 of the License, or
|
||||
(at your option) any later version.
|
||||
This program is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
#include QMK_KEYBOARD_H
|
||||
#include "analog.h"
|
||||
uint8_t last_val = 0;
|
||||
extern MidiDevice midi_device;
|
||||
|
||||
enum layers {
|
||||
_LAYER0,
|
||||
_LAYER1,
|
||||
};
|
||||
|
||||
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
||||
|
||||
[_LAYER0] = LAYOUT_all(
|
||||
KC_MUTE, QK_GESC, 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_DEL, 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_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_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(1), KC_LEFT, KC_DOWN, KC_RGHT
|
||||
),
|
||||
|
||||
[_LAYER1] = LAYOUT_all(
|
||||
_______, QK_GESC, 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_END,
|
||||
_______, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, _______, KC_PSCR, KC_SCRL, KC_PAUS, QK_BOOT, _______,
|
||||
_______, RGB_SPI, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
|
||||
_______, _______, _______, _______, _______, _______, _______, NK_TOGG, _______, _______, _______, _______, _______, KC_VOLU,
|
||||
_______, _______, _______, _______, _______, _______, KC_MPRV, KC_VOLD, KC_MNXT
|
||||
)
|
||||
};
|
||||
|
||||
#if defined(ENCODER_MAP_ENABLE)
|
||||
const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][NUM_DIRECTIONS] = {
|
||||
[_LAYER0] = { ENCODER_CCW_CW(KC_VOLD, KC_VOLU) },
|
||||
[_LAYER1] = { ENCODER_CCW_CW(KC_TRNS, KC_TRNS) },
|
||||
};
|
||||
#endif
|
||||
|
||||
void slider(void) {
|
||||
uint8_t current_val = analogReadPin(SLIDER_PINA) >>3;
|
||||
|
||||
if ( last_val - current_val < -1 || last_val - current_val > 1 ) {
|
||||
midi_send_cc(&midi_device, 0, 90, current_val );
|
||||
}
|
||||
|
||||
last_val = current_val;
|
||||
}
|
||||
|
||||
void housekeeping_task_user(void) {
|
||||
slider();
|
||||
}
|
||||
2
keyboards/keebfront/vanguard65/keymaps/default/rules.mk
Normal file
2
keyboards/keebfront/vanguard65/keymaps/default/rules.mk
Normal file
@@ -0,0 +1,2 @@
|
||||
ENCODER_MAP_ENABLE = yes
|
||||
ANALOG_DRIVER_REQUIRED = yes
|
||||
29
keyboards/keebfront/vanguard65/readme.md
Normal file
29
keyboards/keebfront/vanguard65/readme.md
Normal file
@@ -0,0 +1,29 @@
|
||||
# Vanguard65
|
||||
|
||||

|
||||
|
||||
*A 65% keyboard with knob and slider by [Keebfront](https://keebfront.com/).*
|
||||
|
||||
* Keyboard Maintainer: [Keebfront](https://keebfront.com/)
|
||||
* Hardware Supported: Vanguard65
|
||||
* Hardware Availability: https://www.keebfront.com/product/vanguard65
|
||||
|
||||
Make example for this keyboard (after setting up your build environment):
|
||||
|
||||
make keebfront/vanguard65:default
|
||||
|
||||
Flashing example for this keyboard:
|
||||
|
||||
make keebfront/vanguard65:default:flash
|
||||
|
||||
See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](https://docs.qmk.fm/#/newbs).
|
||||
|
||||
## Bootloader
|
||||
|
||||
Enter the bootloader in 2 ways:
|
||||
|
||||
* **Physical reset**: pressing the two reset pads on the back of the PCB with tweezers.
|
||||
* **Keycode in layout**: Press the key mapped to `QK_BOOT` if it is available
|
||||
|
||||
## Matrix Diagram
|
||||

|
||||
2
keyboards/keebfront/vanguard65/rules.mk
Normal file
2
keyboards/keebfront/vanguard65/rules.mk
Normal file
@@ -0,0 +1,2 @@
|
||||
# Processor frequency
|
||||
F_CPU = 8000000
|
||||
26
keyboards/keebio/iris_lm/g1/config.h
Normal file
26
keyboards/keebio/iris_lm/g1/config.h
Normal file
@@ -0,0 +1,26 @@
|
||||
// Copyright 2024 Danny Nguyen (@nooges)
|
||||
// SPDX-License-Identifier: GPL-2.0-or-later
|
||||
|
||||
#pragma once
|
||||
|
||||
/* Defines for the split keyboard setup */
|
||||
#define SERIAL_USART_DRIVER SD3 // USART 3
|
||||
#define SERIAL_USART_TX_PIN B10
|
||||
#define SERIAL_USART_RX_PIN B11
|
||||
#define SERIAL_USART_TX_PAL_MODE 7
|
||||
#define SERIAL_USART_RX_PAL_MODE 7
|
||||
#define SERIAL_USART_FULL_DUPLEX
|
||||
#define SERIAL_USART_PIN_SWAP
|
||||
|
||||
#define USB_VBUS_PIN C6
|
||||
#define SPLIT_HAND_PIN A0
|
||||
|
||||
/* Defines for the RGB matrix */
|
||||
#ifdef RGB_MATRIX_ENABLE
|
||||
# define WS2812_PWM_DRIVER PWMD3
|
||||
# define WS2812_PWM_CHANNEL 4
|
||||
# define WS2812_PWM_PAL_MODE 10
|
||||
# define WS2812_DMA_STREAM STM32_DMA1_STREAM2
|
||||
# define WS2812_DMA_CHANNEL 2
|
||||
# define WS2812_DMAMUX_ID STM32_DMAMUX1_TIM3_UP
|
||||
#endif
|
||||
11
keyboards/keebio/iris_lm/g1/g1.c
Normal file
11
keyboards/keebio/iris_lm/g1/g1.c
Normal file
@@ -0,0 +1,11 @@
|
||||
// Copyright 2024 Danny Nguyen (@nooges)
|
||||
// SPDX-License-Identifier: GPL-2.0-or-later
|
||||
|
||||
#include "quantum.h"
|
||||
|
||||
void keyboard_pre_init_kb(void) {
|
||||
// Disable the PD peripheral in pre-init because its pins (B4, B6) are being used in the matrix:
|
||||
PWR->CR3 |= PWR_CR3_UCPD_DBDIS;
|
||||
// Call the corresponding _user() function (see https://docs.qmk.fm/#/custom_quantum_functions)
|
||||
keyboard_pre_init_user();
|
||||
}
|
||||
10
keyboards/keebio/iris_lm/g1/halconf.h
Normal file
10
keyboards/keebio/iris_lm/g1/halconf.h
Normal file
@@ -0,0 +1,10 @@
|
||||
// Copyright 2024 Danny Nguyen (@nooges)
|
||||
// SPDX-License-Identifier: GPL-2.0-or-later
|
||||
|
||||
#pragma once
|
||||
|
||||
#define HAL_USE_SERIAL TRUE
|
||||
|
||||
#define HAL_USE_PWM TRUE
|
||||
|
||||
#include_next <halconf.h>
|
||||
257
keyboards/keebio/iris_lm/g1/keyboard.json
Normal file
257
keyboards/keebio/iris_lm/g1/keyboard.json
Normal file
@@ -0,0 +1,257 @@
|
||||
{
|
||||
"keyboard_name": "Iris LM-G Rev. 1",
|
||||
"bootloader": "stm32-dfu",
|
||||
"diode_direction": "COL2ROW",
|
||||
"features": {
|
||||
"bootmagic": true,
|
||||
"encoder": true,
|
||||
"extrakey": true,
|
||||
"mousekey": true,
|
||||
"rgb_matrix": true
|
||||
},
|
||||
"encoder": {
|
||||
"rotary": [
|
||||
{"pin_a": "A15", "pin_b": "C10"},
|
||||
{"pin_a": "B13", "pin_b": "B12"}
|
||||
]
|
||||
},
|
||||
"ws2812": {
|
||||
"driver": "pwm",
|
||||
"pin": "B7"
|
||||
},
|
||||
"matrix_pins": {
|
||||
"cols": ["C4", "B2", "A5", "C11", "C13", "C14"],
|
||||
"rows": ["A4", "A3", "B14", "B5", "F1"]
|
||||
},
|
||||
"split": {
|
||||
"enabled": true,
|
||||
"encoder": {
|
||||
"right": {
|
||||
"rotary": [
|
||||
{"pin_a": "A5", "pin_b": "A6"},
|
||||
{"pin_a": "A15", "pin_b": "C10"}
|
||||
]
|
||||
}
|
||||
},
|
||||
"matrix_pins": {
|
||||
"right": {
|
||||
"cols": ["C11", "C13", "B6", "B9", "B12", "B2"],
|
||||
"rows": ["C4", "A7", "B14", "B5", "F1"]
|
||||
}
|
||||
},
|
||||
"serial": {
|
||||
"driver": "usart"
|
||||
},
|
||||
"transport": {
|
||||
"sync" :{
|
||||
"matrix_state": true
|
||||
}
|
||||
}
|
||||
},
|
||||
"processor": "STM32G431",
|
||||
"usb": {
|
||||
"device_version": "1.0.0",
|
||||
"pid": "0x1656"
|
||||
},
|
||||
"layouts": {
|
||||
"LAYOUT": {
|
||||
"layout": [
|
||||
{"matrix": [0, 0], "x": 0, "y": 0.375},
|
||||
{"matrix": [0, 1], "x": 1, "y": 0.375},
|
||||
{"matrix": [0, 2], "x": 2, "y": 0.125},
|
||||
{"matrix": [0, 3], "x": 3, "y": 0},
|
||||
{"matrix": [0, 4], "x": 4, "y": 0.125},
|
||||
{"matrix": [0, 5], "x": 5, "y": 0.25},
|
||||
|
||||
{"matrix": [5, 5], "x": 9, "y": 0.25},
|
||||
{"matrix": [5, 4], "x": 10, "y": 0.125},
|
||||
{"matrix": [5, 3], "x": 11, "y": 0},
|
||||
{"matrix": [5, 2], "x": 12, "y": 0.125},
|
||||
{"matrix": [5, 1], "x": 13, "y": 0.375},
|
||||
{"matrix": [5, 0], "x": 14, "y": 0.375},
|
||||
|
||||
{"matrix": [1, 0], "x": 0, "y": 1.375},
|
||||
{"matrix": [1, 1], "x": 1, "y": 1.375},
|
||||
{"matrix": [1, 2], "x": 2, "y": 1.125},
|
||||
{"matrix": [1, 3], "x": 3, "y": 1},
|
||||
{"matrix": [1, 4], "x": 4, "y": 1.125},
|
||||
{"matrix": [1, 5], "x": 5, "y": 1.25},
|
||||
|
||||
{"matrix": [6, 5], "x": 9, "y": 1.25},
|
||||
{"matrix": [6, 4], "x": 10, "y": 1.125},
|
||||
{"matrix": [6, 3], "x": 11, "y": 1},
|
||||
{"matrix": [6, 2], "x": 12, "y": 1.125},
|
||||
{"matrix": [6, 1], "x": 13, "y": 1.375},
|
||||
{"matrix": [6, 0], "x": 14, "y": 1.375},
|
||||
|
||||
{"matrix": [2, 0], "x": 0, "y": 2.375},
|
||||
{"matrix": [2, 1], "x": 1, "y": 2.375},
|
||||
{"matrix": [2, 2], "x": 2, "y": 2.125},
|
||||
{"matrix": [2, 3], "x": 3, "y": 2},
|
||||
{"matrix": [2, 4], "x": 4, "y": 2.125},
|
||||
{"matrix": [2, 5], "x": 5, "y": 2.25},
|
||||
|
||||
{"matrix": [7, 5], "x": 9, "y": 2.25},
|
||||
{"matrix": [7, 4], "x": 10, "y": 2.125},
|
||||
{"matrix": [7, 3], "x": 11, "y": 2},
|
||||
{"matrix": [7, 2], "x": 12, "y": 2.125},
|
||||
{"matrix": [7, 1], "x": 13, "y": 2.375},
|
||||
{"matrix": [7, 0], "x": 14, "y": 2.375},
|
||||
|
||||
{"matrix": [3, 0], "x": 0, "y": 3.375},
|
||||
{"matrix": [3, 1], "x": 1, "y": 3.375},
|
||||
{"matrix": [3, 2], "x": 2, "y": 3.125},
|
||||
{"matrix": [3, 3], "x": 3, "y": 3},
|
||||
{"matrix": [3, 4], "x": 4, "y": 3.125},
|
||||
{"matrix": [3, 5], "x": 5, "y": 3.25},
|
||||
{"matrix": [4, 5], "x": 6.15, "y": 3.75},
|
||||
|
||||
{"matrix": [9, 5], "x": 7.85, "y": 3.75},
|
||||
{"matrix": [8, 5], "x": 9, "y": 3.25},
|
||||
{"matrix": [8, 4], "x": 10, "y": 3.125},
|
||||
{"matrix": [8, 3], "x": 11, "y": 3},
|
||||
{"matrix": [8, 2], "x": 12, "y": 3.125},
|
||||
{"matrix": [8, 1], "x": 13, "y": 3.375},
|
||||
{"matrix": [8, 0], "x": 14, "y": 3.375},
|
||||
|
||||
{"matrix": [4, 2], "x": 3.5, "y": 4.25},
|
||||
{"matrix": [4, 3], "x": 4.5, "y": 4.375},
|
||||
{"matrix": [4, 4], "x": 5.6, "y": 4.75},
|
||||
|
||||
{"matrix": [9, 4], "x": 8.4, "y": 4.75},
|
||||
{"matrix": [9, 3], "x": 9.5, "y": 4.375},
|
||||
{"matrix": [9, 2], "x": 10.5, "y": 4.25}
|
||||
]
|
||||
}
|
||||
},
|
||||
"rgb_matrix": {
|
||||
"animations": {
|
||||
"alphas_mods": true,
|
||||
"gradient_up_down": true,
|
||||
"gradient_left_right": true,
|
||||
"breathing": true,
|
||||
"band_sat": true,
|
||||
"band_val": true,
|
||||
"band_pinwheel_sat": true,
|
||||
"band_pinwheel_val": true,
|
||||
"band_spiral_sat": true,
|
||||
"band_spiral_val": true,
|
||||
"cycle_all": true,
|
||||
"cycle_left_right": true,
|
||||
"cycle_up_down": true,
|
||||
"cycle_out_in": true,
|
||||
"cycle_out_in_dual": true,
|
||||
"rainbow_moving_chevron": true,
|
||||
"cycle_pinwheel": true,
|
||||
"cycle_spiral": true,
|
||||
"dual_beacon": true,
|
||||
"rainbow_beacon": true,
|
||||
"rainbow_pinwheels": true,
|
||||
"raindrops": true,
|
||||
"jellybean_raindrops": true,
|
||||
"hue_breathing": true,
|
||||
"hue_pendulum": true,
|
||||
"hue_wave": true,
|
||||
"pixel_fractal": true,
|
||||
"pixel_flow": true,
|
||||
"pixel_rain": true,
|
||||
"typing_heatmap": true,
|
||||
"digital_rain": true,
|
||||
"solid_reactive_simple": true,
|
||||
"solid_reactive": true,
|
||||
"solid_reactive_wide": true,
|
||||
"solid_reactive_multiwide": true,
|
||||
"solid_reactive_cross": true,
|
||||
"solid_reactive_multicross": true,
|
||||
"solid_reactive_nexus": true,
|
||||
"solid_reactive_multinexus": true,
|
||||
"splash": true,
|
||||
"multisplash": true,
|
||||
"solid_splash": true,
|
||||
"solid_multisplash": true
|
||||
},
|
||||
"driver": "ws2812",
|
||||
"split_count": [34, 34],
|
||||
"max_brightness": 120,
|
||||
"layout": [
|
||||
{"matrix": [0,0], "flags":4, "x":0, "y":5},
|
||||
{"flags":2, "x":8, "y":5},
|
||||
{"matrix": [0,1], "flags":4, "x":16, "y":5},
|
||||
{"matrix": [0,2], "flags":4, "x":32, "y":2},
|
||||
{"flags":2, "x":40, "y":1},
|
||||
{"matrix": [0,3], "flags":4, "x":48, "y":0},
|
||||
{"matrix": [0,4], "flags":4, "x":64, "y":5},
|
||||
{"flags":2, "x":72, "y":3},
|
||||
{"matrix": [0,5], "flags":4, "x":80, "y":3},
|
||||
|
||||
{"matrix": [1,5], "flags":4, "x":80, "y":17},
|
||||
{"matrix": [1,4], "flags":4, "x":64, "y":15},
|
||||
{"matrix": [1,3], "flags":4, "x":48, "y":13},
|
||||
{"matrix": [1,2], "flags":4, "x":32, "y":15},
|
||||
{"matrix": [1,1], "flags":4, "x":16, "y":18},
|
||||
{"matrix": [1,0], "flags":4, "x":0, "y":18},
|
||||
|
||||
{"matrix": [2,0], "flags":4, "x":0, "y":32},
|
||||
{"matrix": [2,1], "flags":4, "x":16, "y":32},
|
||||
{"matrix": [2,2], "flags":4, "x":32, "y":28},
|
||||
{"matrix": [2,3], "flags":4, "x":48, "y":27},
|
||||
{"matrix": [2,4], "flags":4, "x":64, "y":28},
|
||||
{"matrix": [2,5], "flags":4, "x":80, "y":30},
|
||||
|
||||
{"matrix": [3,5], "flags":4, "x":80, "y":43},
|
||||
{"matrix": [3,4], "flags":4, "x":64, "y":42},
|
||||
{"matrix": [3,3], "flags":4, "x":48, "y":40},
|
||||
{"flags":2, "x":40, "y":50},
|
||||
{"matrix": [3,2], "flags":4, "x":32, "y":42},
|
||||
{"matrix": [3,1], "flags":4, "x":16, "y":45},
|
||||
{"flags":2, "x":8, "y":43},
|
||||
{"matrix": [3,0], "flags":4, "x":0, "y":45},
|
||||
|
||||
{"matrix": [4,5], "flags":4, "x":98, "y":52},
|
||||
{"matrix": [4,4], "flags":4, "x":90, "y":64},
|
||||
{"flags":2, "x":80, "y":58},
|
||||
{"matrix": [4,3], "flags":4, "x":72, "y":58},
|
||||
{"matrix": [4,2], "flags":4, "x":56, "y":47},
|
||||
|
||||
{"matrix": [5,0], "flags":4, "x":224, "y":5},
|
||||
{"flags":2, "x":216, "y":5},
|
||||
{"matrix": [5,1], "flags":4, "x":208, "y":5},
|
||||
{"matrix": [5,2], "flags":4, "x":192, "y":2},
|
||||
{"flags":2, "x":184, "y":1},
|
||||
{"matrix": [5,3], "flags":4, "x":176, "y":0},
|
||||
{"matrix": [5,4], "flags":4, "x":160, "y":5},
|
||||
{"flags":2, "x":152, "y":3},
|
||||
{"matrix": [5,5], "flags":4, "x":144, "y":3},
|
||||
|
||||
{"matrix": [6,5], "flags":4, "x":144, "y":17},
|
||||
{"matrix": [6,4], "flags":4, "x":160, "y":15},
|
||||
{"matrix": [6,3], "flags":4, "x":176, "y":13},
|
||||
{"matrix": [6,2], "flags":4, "x":192, "y":15},
|
||||
{"matrix": [6,1], "flags":4, "x":208, "y":18},
|
||||
{"matrix": [6,0], "flags":4, "x":224, "y":18},
|
||||
|
||||
{"matrix": [7,0], "flags":4, "x":224, "y":32},
|
||||
{"matrix": [7,1], "flags":4, "x":208, "y":32},
|
||||
{"matrix": [7,2], "flags":4, "x":192, "y":28},
|
||||
{"matrix": [7,3], "flags":4, "x":176, "y":27},
|
||||
{"matrix": [7,4], "flags":4, "x":160, "y":28},
|
||||
{"matrix": [7,5], "flags":4, "x":144, "y":30},
|
||||
|
||||
{"matrix": [8,5], "flags":4, "x":144, "y":43},
|
||||
{"matrix": [8,4], "flags":4, "x":160, "y":42},
|
||||
{"matrix": [8,3], "flags":4, "x":176, "y":40},
|
||||
{"flags":2, "x":184, "y":50},
|
||||
{"matrix": [8,2], "flags":4, "x":192, "y":42},
|
||||
{"matrix": [8,1], "flags":4, "x":208, "y":45},
|
||||
{"flags":2, "x":216, "y":43},
|
||||
{"matrix": [8,0], "flags":4, "x":224, "y":45},
|
||||
|
||||
{"matrix": [9,2], "flags":4, "x":168, "y":47},
|
||||
{"matrix": [9,3], "flags":4, "x":152, "y":58},
|
||||
{"flags":2, "x":144, "y":58},
|
||||
{"matrix": [9,4], "flags":4, "x":134, "y":64},
|
||||
{"matrix": [9,5], "flags":4, "x":126, "y":52}
|
||||
],
|
||||
"sleep": true
|
||||
}
|
||||
}
|
||||
14
keyboards/keebio/iris_lm/g1/mcuconf.h
Normal file
14
keyboards/keebio/iris_lm/g1/mcuconf.h
Normal file
@@ -0,0 +1,14 @@
|
||||
// Copyright 2024 Danny Nguyen (@nooges)
|
||||
// SPDX-License-Identifier: GPL-2.0-or-later
|
||||
|
||||
#pragma once
|
||||
|
||||
#include_next <mcuconf.h>
|
||||
|
||||
/* enable USART3, used for split comms */
|
||||
#undef STM32_SERIAL_USE_USART3
|
||||
#define STM32_SERIAL_USE_USART3 TRUE
|
||||
|
||||
/* enable TIM3, used for RGB LED PWM driver */
|
||||
#undef STM32_PWM_USE_TIM3
|
||||
#define STM32_PWM_USE_TIM3 TRUE
|
||||
25
keyboards/keebio/iris_lm/g1/readme.md
Normal file
25
keyboards/keebio/iris_lm/g1/readme.md
Normal file
@@ -0,0 +1,25 @@
|
||||
# Iris LM-G
|
||||
|
||||
A split ergo 4x6 keyboard with 4 thumb keys made and sold by Keebio that supports Gateron KS-33 low-profile switches. [More info at Keebio](https://keeb.io).
|
||||
|
||||
* Keyboard Maintainer: [Bakingpy/nooges](https://github.com/nooges)
|
||||
* Hardware Supported: Iris LM-G PCBs
|
||||
* Hardware Availability: [Keebio](https://keeb.io)
|
||||
|
||||
Make example for this keyboard (after setting up your build environment):
|
||||
|
||||
make keebio/iris_lm/g1:default
|
||||
|
||||
Example of flashing this keyboard:
|
||||
|
||||
make keebio/iris_lm/g1: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 the top left and plug in the keyboard
|
||||
* **Physical reset button**: Press and hold the button on the back of the PCB for at least 1 second and let go
|
||||
* **Keycode in layout**: Press the key mapped to `QK_BOOT` if it is available
|
||||
8
keyboards/keebio/iris_lm/info.json
Normal file
8
keyboards/keebio/iris_lm/info.json
Normal file
@@ -0,0 +1,8 @@
|
||||
{
|
||||
"manufacturer": "Keebio",
|
||||
"maintainer": "Keebio",
|
||||
"url": "https://keeb.io",
|
||||
"usb": {
|
||||
"vid": "0xCB10"
|
||||
}
|
||||
}
|
||||
26
keyboards/keebio/iris_lm/k1/config.h
Normal file
26
keyboards/keebio/iris_lm/k1/config.h
Normal file
@@ -0,0 +1,26 @@
|
||||
// Copyright 2024 Danny Nguyen (@nooges)
|
||||
// SPDX-License-Identifier: GPL-2.0-or-later
|
||||
|
||||
#pragma once
|
||||
|
||||
/* Defines for the split keyboard setup */
|
||||
#define SERIAL_USART_DRIVER SD3 // USART 3
|
||||
#define SERIAL_USART_TX_PIN B10
|
||||
#define SERIAL_USART_RX_PIN B11
|
||||
#define SERIAL_USART_TX_PAL_MODE 7
|
||||
#define SERIAL_USART_RX_PAL_MODE 7
|
||||
#define SERIAL_USART_FULL_DUPLEX
|
||||
#define SERIAL_USART_PIN_SWAP
|
||||
|
||||
#define USB_VBUS_PIN C6
|
||||
#define SPLIT_HAND_PIN A0
|
||||
|
||||
/* Defines for the RGB matrix */
|
||||
#ifdef RGB_MATRIX_ENABLE
|
||||
# define WS2812_PWM_DRIVER PWMD3
|
||||
# define WS2812_PWM_CHANNEL 4
|
||||
# define WS2812_PWM_PAL_MODE 10
|
||||
# define WS2812_DMA_STREAM STM32_DMA1_STREAM2
|
||||
# define WS2812_DMA_CHANNEL 2
|
||||
# define WS2812_DMAMUX_ID STM32_DMAMUX1_TIM3_UP
|
||||
#endif
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user