Skip to content

Commit 7a18534

Browse files
authored
Merge branch 'qmk:master' into master
2 parents 6a600d8 + 802a199 commit 7a18534

File tree

38 files changed

+1727
-9
lines changed

38 files changed

+1727
-9
lines changed

docs/features/ps2_mouse.md

Lines changed: 8 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -23,8 +23,11 @@ MODULE 5+ --------+--+--------- PWR CONTROLLER
2323
CLK ------+------------ PIN
2424
```
2525

26+
## Driver Configuration {#driver-configuration}
2627

27-
## Busywait Version {#busywait-version}
28+
Driver selection can be configured in `rules.mk` as `PS2_DRIVER`, or in `info.json` as `ps2.driver`. Valid values are `busywait` (default), `interrupt`, `usart`, or `vendor`. See below for information on individual drivers.
29+
30+
### Busywait Driver {#busywait-driver}
2831

2932
Note: This is not recommended, you may encounter jerky movement or unsent inputs. Please use interrupt or USART version if possible.
3033

@@ -45,7 +48,7 @@ In your keyboard config.h:
4548
#endif
4649
```
4750

48-
### Interrupt Version (AVR/ATMega32u4) {#interrupt-version-avr}
51+
### Interrupt Driver (AVR/ATMega32u4) {#interrupt-driver-avr}
4952

5053
The following example uses D2 for clock and D5 for data. You can use any INT or PCINT pin for clock, and any pin for data.
5154

@@ -78,7 +81,7 @@ In your keyboard config.h:
7881
#endif
7982
```
8083

81-
### Interrupt Version (ARM chibios) {#interrupt-version-chibios}
84+
### Interrupt Driver (ARM chibios) {#interrupt-driver-chibios}
8285

8386
Pretty much any two pins can be used for the (software) interrupt variant on ARM cores. The example below uses A8 for clock, and A9 for data.
8487

@@ -107,7 +110,7 @@ And in the ChibiOS specific `halconf.h`:
107110
#include_next <halconf.h>
108111
```
109112

110-
### USART Version {#usart-version}
113+
### USART Driver {#usart-driver}
111114

112115
To use USART on the ATMega32u4, you have to use PD5 for clock and PD2 for data. If one of those are unavailable, you need to use interrupt version.
113116

@@ -159,7 +162,7 @@ In your keyboard config.h:
159162
#endif
160163
```
161164

162-
### RP2040 PIO Version {#rp2040-pio-version}
165+
### RP2040 PIO Driver {#rp2040-pio-driver}
163166

164167
The `PIO` subsystem is a Raspberry Pi RP2040 specific implementation, using the integrated PIO peripheral and is therefore only available on this MCU.
165168

docs/license_violations.md

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -26,6 +26,7 @@ If you own a board from one of the following vendors already, consider asking th
2626
| Chosfox | Selling L75 wired/wireless boards based on QMK without sources, just `via.json` provided. Raised on discord over multiple weeks without response. |
2727
| CIDOO | Selling wired boards based on QMK without sources, just `via.json` provided. |
2828
| ColorReco | Selling tri-mode boards based on QMK without sources. |
29+
| CrossDIY | Selling wired boards based on QMK without sources. |
2930
| Darmoshark | Selling wired boards based on QMK without sources, just `via.json` provided. |
3031
| Epomaker | Lots of historical keyboards with `via.json` but no corresponding sources. Wireless code for a small handful provided, pending core cleanup for QMK upstreaming. Most other boards have source nowhere to be seen. |
3132
| Ergokbd (IFKB) | At least their crkbd clone ships with QMK+Vial, seemingly refuses to disclose sources despite multiple customers requesting them. |
@@ -50,7 +51,7 @@ If you own a board from one of the following vendors already, consider asking th
5051
| Womier | Selling tri-mode boards based on QMK without sources, attempted upstreaming crippled firmware without wireless. |
5152
| Wuque Studio | Selling wired and tri-mode boards based on QMK without sources, just `via.json` provided. |
5253
| XVX | Ambiguity on PRs -- marketing says wireless, PR author said wired-only. Seemingly intentionally deceptive. |
53-
| Yunzii | Selling tri-mode boards based on QMK without sources, just `via.json` provided. |
54+
| Yunzii | Selling tri-mode boards based on QMK without sources, just `via.json` provided. Refuses to release sources due to proprietary wireless driver, in direct violation of the GPL. |
5455
| Zuoya | Selling tri-mode boards based on QMK without sources, just `via.json` provided. |
5556

5657
::: danger Violations

keyboards/1upkeyboards/pi50/pi50.c

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -33,6 +33,9 @@ enum {
3333
#ifdef RGB_MATRIX_CUSTOM_USER
3434
# include "rgb_matrix_user.inc"
3535
#endif
36+
#if defined(COMMUNITY_MODULES_ENABLE) && __has_include("rgb_matrix_community_modules.inc")
37+
# include "rgb_matrix_community_modules.inc"
38+
#endif
3639
};
3740

3841
#define RGB_MATRIX_EFFECT(x) \
@@ -49,6 +52,9 @@ const char* rgb_matrix_name(uint8_t effect) {
4952
#endif
5053
#ifdef RGB_MATRIX_CUSTOM_USER
5154
# include "rgb_matrix_user.inc"
55+
#endif
56+
#if defined(COMMUNITY_MODULES_ENABLE) && __has_include("rgb_matrix_community_modules.inc")
57+
# include "rgb_matrix_community_modules.inc"
5258
#endif
5359
default:
5460
return "UNKNOWN";

keyboards/kinesis/kint32/chconf.h

Lines changed: 28 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,28 @@
1+
/* Copyright 2020 QMK
2+
*
3+
* This program is free software: you can redistribute it and/or modify
4+
* it under the terms of the GNU General Public License as published by
5+
* the Free Software Foundation, either version 2 of the License, or
6+
* (at your option) any later version.
7+
*
8+
* This program is distributed in the hope that it will be useful,
9+
* but WITHOUT ANY WARRANTY; without even the implied warranty of
10+
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
11+
* GNU General Public License for more details.
12+
*
13+
* You should have received a copy of the GNU General Public License
14+
* along with this program. If not, see <http://www.gnu.org/licenses/>.
15+
*/
16+
17+
/*
18+
* This file was auto-generated by:
19+
* `qmk chibios-confmigrate -i keyboards/kinesis/kint32/chconf.h -r platforms/chibios/common/configs/chconf.h`
20+
*/
21+
22+
#pragma once
23+
24+
#define CH_CFG_ST_TIMEDELTA 0
25+
26+
#define CH_CFG_TIME_QUANTUM 20
27+
28+
#include_next <chconf.h>

keyboards/kinesis/kint32/config.h

Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,19 @@
1+
/* Copyright 2020 QMK
2+
*
3+
* This program is free software: you can redistribute it and/or modify
4+
* it under the terms of the GNU General Public License as published by
5+
* the Free Software Foundation, either version 2 of the License, or
6+
* (at your option) any later version.
7+
*
8+
* This program is distributed in the hope that it will be useful,
9+
* but WITHOUT ANY WARRANTY; without even the implied warranty of
10+
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
11+
* GNU General Public License for more details.
12+
*
13+
* You should have received a copy of the GNU General Public License
14+
* along with this program. If not, see <http://www.gnu.org/licenses/>.
15+
*/
16+
17+
#pragma once
18+
19+
#define EEPROM_SIZE 2048
Lines changed: 125 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,125 @@
1+
{
2+
"manufacturer": "https://github.com/stapelberg",
3+
"keyboard_name": "kinT (kint32)",
4+
"bootloader": "halfkay",
5+
"build": {
6+
"debounce_type": "sym_eager_pk"
7+
},
8+
"debounce": 20,
9+
"diode_direction": "COL2ROW",
10+
"features": {
11+
"bootmagic": true,
12+
"command": false,
13+
"console": false,
14+
"extrakey": true,
15+
"mousekey": true,
16+
"nkro": true
17+
},
18+
"indicators": {
19+
"caps_lock": "C7",
20+
"on_state": 0
21+
},
22+
"matrix_pins": {
23+
"cols": ["B3", "D1", "C0", "D5", "C1", "B2", "D4"],
24+
"rows": ["D3", "C3", "C4", "C6", "D2", "B0", "D7", "A12", "A13", "B17", "B16", "D0", "B1", "C2", "D6"]
25+
},
26+
"processor": "MK20DX256",
27+
"usb": {
28+
"device_version": "0.0.1",
29+
"max_power": 100,
30+
"pid": "0x345C",
31+
"vid": "0x1209"
32+
},
33+
"layouts": {
34+
"LAYOUT": {
35+
"layout": [
36+
{"matrix": [12, 0], "x": 0, "y": 0, "w": 0.69, "h": 0.85},
37+
{"matrix": [13, 0], "x": 0.7, "y": 0, "w": 0.69, "h": 0.85},
38+
{"matrix": [14, 0], "x": 1.39, "y": 0, "w": 0.69, "h": 0.85},
39+
{"matrix": [12, 1], "x": 2.09, "y": 0, "w": 0.69, "h": 0.85},
40+
{"matrix": [13, 1], "x": 2.78, "y": 0, "w": 0.69, "h": 0.85},
41+
{"matrix": [14, 1], "x": 3.48, "y": 0, "w": 0.69, "h": 0.85},
42+
{"matrix": [12, 2], "x": 4.17, "y": 0, "w": 0.69, "h": 0.85},
43+
{"matrix": [13, 2], "x": 4.87, "y": 0, "w": 0.69, "h": 0.85},
44+
{"matrix": [14, 2], "x": 5.56, "y": 0, "w": 0.69, "h": 0.85},
45+
{"matrix": [12, 3], "x": 9.25, "y": 0, "w": 0.69, "h": 0.85},
46+
{"matrix": [13, 3], "x": 9.95, "y": 0, "w": 0.69, "h": 0.85},
47+
{"matrix": [14, 3], "x": 10.64, "y": 0, "w": 0.69, "h": 0.85},
48+
{"matrix": [12, 4], "x": 11.34, "y": 0, "w": 0.69, "h": 0.85},
49+
{"matrix": [13, 4], "x": 12.03, "y": 0, "w": 0.69, "h": 0.85},
50+
{"matrix": [14, 4], "x": 12.73, "y": 0, "w": 0.69, "h": 0.85},
51+
{"matrix": [12, 5], "x": 13.42, "y": 0, "w": 0.69, "h": 0.85},
52+
{"matrix": [14, 5], "x": 14.12, "y": 0, "w": 0.69, "h": 0.85},
53+
{"matrix": [13, 5], "x": 14.81, "y": 0, "w": 0.69, "h": 0.85},
54+
{"matrix": [0, 0], "x": 0, "y": 1.25, "w": 1.25},
55+
{"matrix": [1, 0], "x": 1.25, "y": 1.25},
56+
{"matrix": [2, 0], "x": 2.25, "y": 1},
57+
{"matrix": [3, 0], "x": 3.25, "y": 1},
58+
{"matrix": [4, 0], "x": 4.25, "y": 1},
59+
{"matrix": [5, 0], "x": 5.25, "y": 1},
60+
{"matrix": [6, 0], "x": 9.25, "y": 1},
61+
{"matrix": [7, 0], "x": 10.25, "y": 1},
62+
{"matrix": [8, 0], "x": 11.25, "y": 1},
63+
{"matrix": [9, 0], "x": 12.25, "y": 1},
64+
{"matrix": [10, 0], "x": 13.25, "y": 1.25},
65+
{"matrix": [11, 0], "x": 14.25, "y": 1.25, "w": 1.25},
66+
{"matrix": [0, 1], "x": 0, "y": 2.25, "w": 1.25},
67+
{"matrix": [1, 1], "x": 1.25, "y": 2.25},
68+
{"matrix": [2, 1], "x": 2.25, "y": 2},
69+
{"matrix": [3, 1], "x": 3.25, "y": 2},
70+
{"matrix": [4, 1], "x": 4.25, "y": 2},
71+
{"matrix": [5, 1], "x": 5.25, "y": 2},
72+
{"matrix": [6, 1], "x": 9.25, "y": 2},
73+
{"matrix": [7, 1], "x": 10.25, "y": 2},
74+
{"matrix": [8, 1], "x": 11.25, "y": 2},
75+
{"matrix": [9, 1], "x": 12.25, "y": 2},
76+
{"matrix": [10, 1], "x": 13.25, "y": 2.25},
77+
{"matrix": [11, 1], "x": 14.25, "y": 2.25, "w": 1.25},
78+
{"matrix": [0, 2], "x": 0, "y": 3.25, "w": 1.25},
79+
{"matrix": [1, 2], "x": 1.25, "y": 3.25},
80+
{"matrix": [2, 2], "x": 2.25, "y": 3},
81+
{"matrix": [3, 2], "x": 3.25, "y": 3},
82+
{"matrix": [4, 2], "x": 4.25, "y": 3},
83+
{"matrix": [5, 2], "x": 5.25, "y": 3},
84+
{"matrix": [6, 2], "x": 9.25, "y": 3},
85+
{"matrix": [7, 2], "x": 10.25, "y": 3},
86+
{"matrix": [8, 2], "x": 11.25, "y": 3},
87+
{"matrix": [9, 2], "x": 12.25, "y": 3},
88+
{"matrix": [10, 2], "x": 13.25, "y": 3.25},
89+
{"matrix": [11, 2], "x": 14.25, "y": 3.25, "w": 1.25},
90+
{"matrix": [0, 3], "x": 0, "y": 4.25, "w": 1.25},
91+
{"matrix": [1, 3], "x": 1.25, "y": 4.25},
92+
{"matrix": [2, 3], "x": 2.25, "y": 4},
93+
{"matrix": [3, 3], "x": 3.25, "y": 4},
94+
{"matrix": [4, 3], "x": 4.25, "y": 4},
95+
{"matrix": [5, 3], "x": 5.25, "y": 4},
96+
{"matrix": [6, 3], "x": 9.25, "y": 4},
97+
{"matrix": [7, 3], "x": 10.25, "y": 4},
98+
{"matrix": [8, 3], "x": 11.25, "y": 4},
99+
{"matrix": [9, 3], "x": 12.25, "y": 4},
100+
{"matrix": [10, 3], "x": 13.25, "y": 4.25},
101+
{"matrix": [11, 3], "x": 14.25, "y": 4.25, "w": 1.25},
102+
{"matrix": [1, 4], "x": 1.25, "y": 5.25},
103+
{"matrix": [2, 4], "x": 2.25, "y": 5},
104+
{"matrix": [3, 4], "x": 3.25, "y": 5},
105+
{"matrix": [5, 4], "x": 4.25, "y": 5},
106+
{"matrix": [6, 4], "x": 10.25, "y": 5},
107+
{"matrix": [8, 4], "x": 11.25, "y": 5},
108+
{"matrix": [9, 4], "x": 12.25, "y": 5},
109+
{"matrix": [10, 4], "x": 13.25, "y": 5.25},
110+
{"matrix": [5, 6], "x": 5.25, "y": 6},
111+
{"matrix": [5, 5], "x": 6.25, "y": 6},
112+
{"matrix": [9, 6], "x": 8.25, "y": 6},
113+
{"matrix": [8, 5], "x": 9.25, "y": 6},
114+
{"matrix": [3, 5], "x": 6.25, "y": 7},
115+
{"matrix": [8, 6], "x": 8.25, "y": 7},
116+
{"matrix": [3, 6], "x": 4.25, "y": 7, "h": 2},
117+
{"matrix": [4, 6], "x": 5.25, "y": 7, "h": 2},
118+
{"matrix": [2, 5], "x": 6.25, "y": 8},
119+
{"matrix": [6, 6], "x": 8.25, "y": 8},
120+
{"matrix": [7, 5], "x": 9.25, "y": 7, "h": 2},
121+
{"matrix": [6, 5], "x": 10.25, "y": 7, "h": 2}
122+
]
123+
}
124+
}
125+
}

keyboards/kinesis/kint32/kint32.c

Lines changed: 27 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,27 @@
1+
/* Copyright 2020 QMK
2+
*
3+
* This program is free software: you can redistribute it and/or modify
4+
* it under the terms of the GNU General Public License as published by
5+
* the Free Software Foundation, either version 2 of the License, or
6+
* (at your option) any later version.
7+
*
8+
* This program is distributed in the hope that it will be useful,
9+
* but WITHOUT ANY WARRANTY; without even the implied warranty of
10+
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
11+
* GNU General Public License for more details.
12+
*
13+
* You should have received a copy of the GNU General Public License
14+
* along with this program. If not, see <http://www.gnu.org/licenses/>.
15+
*/
16+
17+
#include "quantum.h"
18+
19+
#define LED_POWER C5
20+
21+
void keyboard_pre_init_kb(void) {
22+
// Turn on the Teensy 3.2 Power LED:
23+
gpio_set_pin_output(LED_POWER);
24+
gpio_write_pin_high(LED_POWER);
25+
26+
keyboard_pre_init_user();
27+
}

keyboards/kinesis/kint32/mcuconf.h

Lines changed: 51 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,51 @@
1+
/*
2+
ChibiOS - Copyright (C) 2006..2015 Giovanni Di Sirio
3+
4+
Licensed under the Apache License, Version 2.0 (the "License");
5+
you may not use this file except in compliance with the License.
6+
You may obtain a copy of the License at
7+
8+
http://www.apache.org/licenses/LICENSE-2.0
9+
10+
Unless required by applicable law or agreed to in writing, software
11+
distributed under the License is distributed on an "AS IS" BASIS,
12+
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13+
See the License for the specific language governing permissions and
14+
limitations under the License.
15+
*/
16+
17+
#ifndef _MCUCONF_H_
18+
#define _MCUCONF_H_
19+
20+
#define K20x_MCUCONF
21+
22+
/*
23+
* HAL driver system settings.
24+
*/
25+
/* PEE mode - 48MHz system clock driven by (16 MHz) external crystal. */
26+
#define KINETIS_MCG_MODE KINETIS_MCG_MODE_PEE
27+
#define KINETIS_PLLCLK_FREQUENCY 96000000UL
28+
#define KINETIS_SYSCLK_FREQUENCY 48000000UL
29+
30+
/*
31+
* SERIAL driver system settings.
32+
*/
33+
#define KINETIS_SERIAL_USE_UART0 TRUE
34+
35+
/*
36+
* USB driver settings
37+
*/
38+
#define KINETIS_USB_USE_USB0 TRUE
39+
40+
/* Need to redefine this, since the default (configured for K20x) might not apply
41+
* 2 for Teensy LC
42+
* 5 for Teensy 3.x */
43+
#define KINETIS_USB_USB0_IRQ_PRIORITY 5
44+
45+
/*
46+
* I2C driver settings
47+
*/
48+
#define KINETIS_I2C_USE_I2C0 TRUE
49+
#define KINETIS_I2C_I2C0_PRIORITY 4
50+
51+
#endif /* _MCUCONF_H_ */

keyboards/kinesis/kint32/readme.md

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
# kinesis_kint32 keyboard firmware
2+
3+
Please see https://github.com/kinx-project/kint for details.

0 commit comments

Comments
 (0)