M keyboards/1upkeyboards/1up60hse/config.h => keyboards/1upkeyboards/1up60hse/config.h +0 -1
@@ 25,7 25,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#define DEVICE_VER 0x0001
#define MANUFACTURER 1upkeyboards
#define PRODUCT 1up60hse
-#define DESCRIPTION A custom 60% keyboard
/* key matrix size */
#define MATRIX_ROWS 5
M keyboards/1upkeyboards/1up60hte/config.h => keyboards/1upkeyboards/1up60hte/config.h +0 -1
@@ 26,7 26,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#define DEVICE_VER 0x0001
#define MANUFACTURER 1upkeyboards
#define PRODUCT 1up60hte
-#define DESCRIPTION A custom 60% keyboard
/* key matrix size */
#define MATRIX_ROWS 5
M keyboards/1upkeyboards/1up60rgb/config.h => keyboards/1upkeyboards/1up60rgb/config.h +0 -1
@@ 8,7 8,6 @@
#define DEVICE_VER 0x0001
#define MANUFACTURER 1upkeyboards
#define PRODUCT 1UP RGB Underglow PCB
-#define DESCRIPTION 60% keyboard with RGB underglow
/* key matrix size */
#define MATRIX_ROWS 5
M keyboards/1upkeyboards/super16/config.h => keyboards/1upkeyboards/super16/config.h +0 -1
@@ 25,7 25,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#define DEVICE_VER 0x0001
#define MANUFACTURER 1upkeyboards
#define PRODUCT super16
-#define DESCRIPTION A 4x4 custom macropad
/* key matrix size */
#define MATRIX_ROWS 4
M keyboards/1upkeyboards/sweet16/config.h => keyboards/1upkeyboards/sweet16/config.h +0 -1
@@ 6,7 6,6 @@
#define VENDOR_ID 0x6F75 // OU
#define MANUFACTURER 1up Keyboards
#define PRODUCT Sweet16
-#define DESCRIPTION 4x4 grid
/* key matrix size */
#define MATRIX_ROWS 4
M keyboards/2key2crawl/config.h => keyboards/2key2crawl/config.h +0 -1
@@ 8,7 8,6 @@
#define DEVICE_VER 0x0002
#define MANUFACTURER WoodKeys.click
#define PRODUCT 2Key2Crawl
-#define DESCRIPTION ATX Keycrawl 2018
/* key matrix size */
#define MATRIX_ROWS 2
M keyboards/30wer/config.h => keyboards/30wer/config.h +0 -1
@@ 8,7 8,6 @@
#define DEVICE_VER 0x0000
#define MANUFACTURER 8o7wer
#define PRODUCT 30wer
-#define DESCRIPTION Gherkin style construction 30% staggered pcb kit
/* key matrix size */
#define MATRIX_ROWS 3
M keyboards/40percentclub/25/config.h => keyboards/40percentclub/25/config.h +0 -1
@@ 24,7 24,6 @@
#define DEVICE_VER 0x0F25
#define MANUFACTURER di0ib
#define PRODUCT The 5x5 Keyboard
-#define DESCRIPTION A split 50 key keyboard
#define USE_SERIAL
/* serial.c configuration for split keyboard */
M keyboards/40percentclub/4pack/config.h => keyboards/40percentclub/4pack/config.h +0 -1
@@ 25,7 25,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#define DEVICE_VER 0x0001
#define MANUFACTURER 40percentclub
#define PRODUCT 4pack
-#define DESCRIPTION A 1x4 custom macropad
/* key matrix size */
#define MATRIX_ROWS 1
M keyboards/40percentclub/4x4/config.h => keyboards/40percentclub/4x4/config.h +0 -1
@@ 10,7 10,6 @@
#define DEVICE_VER 0x4444
#define MANUFACTURER di0ib
#define PRODUCT The 4x4 Keyboard
-#define DESCRIPTION A modular compact keyboard
/* key matrix size */
#define MATRIX_ROWS 4
M keyboards/40percentclub/5x5/config.h => keyboards/40percentclub/5x5/config.h +0 -1
@@ 10,7 10,6 @@
#define DEVICE_VER 0x05B5
#define MANUFACTURER di0ib
#define PRODUCT The 5x5 Keyboard
-#define DESCRIPTION A 25 or 50 or 75 key keyboard
/* key matrix size */
#define MATRIX_ROWS 5
M keyboards/40percentclub/6lit/config.h => keyboards/40percentclub/6lit/config.h +0 -1
@@ 24,7 24,6 @@
#define DEVICE_VER 0x0F61
#define MANUFACTURER di0ib
#define PRODUCT The 6lit Macropad
-#define DESCRIPTION A split 12 key Macropad
#define USE_SERIAL
M keyboards/40percentclub/foobar/config.h => keyboards/40percentclub/foobar/config.h +0 -1
@@ 24,7 24,6 @@
#define DEVICE_VER 0x0F00
#define MANUFACTURER di0ib
#define PRODUCT The foobar Keyboard
-#define DESCRIPTION A split 30 key keyboard
#define USE_SERIAL
M keyboards/40percentclub/gherkin/config.h => keyboards/40percentclub/gherkin/config.h +0 -1
@@ 8,7 8,6 @@
#define DEVICE_VER 0x0001
#define MANUFACTURER 40 Percent Club
#define PRODUCT Gherkin
-#define DESCRIPTION A 30 key ortholinear keyboard
/* key matrix size */
#define MATRIX_ROWS 5
M keyboards/40percentclub/gherkin/keymaps/mjt/config.h => keyboards/40percentclub/gherkin/keymaps/mjt/config.h +0 -2
@@ 2,6 2,4 @@
/* USB Device descriptor parameter */
#undef MANUFACTURER
-#undef DESCRIPTION
#define MANUFACTURER Some Guy
-#define DESCRIPTION 30 percent disaster
M keyboards/40percentclub/half_n_half/config.h => keyboards/40percentclub/half_n_half/config.h +0 -1
@@ 25,7 25,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#define DEVICE_VER 0x4A1F
#define MANUFACTURER di0ib
#define PRODUCT half_n_half
-#define DESCRIPTION A small split ortholinear custom keyboard with 2 thumb buttons
/* key matrix size */
#define MATRIX_ROWS 4*2
M keyboards/40percentclub/i75/config.h => keyboards/40percentclub/i75/config.h +0 -1
@@ 24,7 24,6 @@
#define DEVICE_VER 0x0175
#define MANUFACTURER di0ib
#define PRODUCT i75
-#define DESCRIPTION i75 15x5 ortholinear keyboard
/* Debounce reduces chatter (unintended double-presses) - set 0 if debouncing is not needed */
#define DEBOUNCE 5
M keyboards/40percentclub/luddite/config.h => keyboards/40percentclub/luddite/config.h +0 -1
@@ 8,7 8,6 @@
#define DEVICE_VER 0x1001
#define MANUFACTURER di0ib
#define PRODUCT Luddite
-#define DESCRIPTION Luddite Keyboard
/* key matrix size */
#define MATRIX_ROWS 8
M keyboards/40percentclub/mf68/config.h => keyboards/40percentclub/mf68/config.h +0 -1
@@ 25,7 25,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#define DEVICE_VER 0x0101
#define MANUFACTURER di0ib
#define PRODUCT MF68
-#define DESCRIPTION Magicforce 68 with programmable PCB replacement
/* key matrix size */
#define MATRIX_ROWS 8
M keyboards/40percentclub/mf68/keymaps/68keys/config.h => keyboards/40percentclub/mf68/keymaps/68keys/config.h +0 -2
@@ 6,10 6,8 @@
#undef DEVICE_VER
#undef MANUFACTURER
#undef PRODUCT
-#undef DESCRIPTION
#define VENDOR_ID 0xFEED
#define PRODUCT_ID 0x0A0C
#define DEVICE_VER 0x0068
#define MANUFACTURER 68Keys.io
#define PRODUCT The 68Keys.io Keyboard
-#define DESCRIPTION A 68 keys mechanical keyboard
M keyboards/40percentclub/mf68/keymaps/mf68_ble/config.h => keyboards/40percentclub/mf68/keymaps/mf68_ble/config.h +0 -4
@@ 21,10 21,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
/* Overrides for Feather 32u4 Bluefruit */
-/* USB Device descriptor parameter */
-#undef DESCRIPTION
-#define DESCRIPTION Magicforce 68 BLE
-
/*
* Keyboard Matrix Assignments
*
M keyboards/40percentclub/nano/config.h => keyboards/40percentclub/nano/config.h +0 -1
@@ 25,7 25,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#define DEVICE_VER 0x0001
#define MANUFACTURER di0ib
#define PRODUCT Nano
-#define DESCRIPTION 8 key microswitch board
/* key matrix size */
#define MATRIX_ROWS 2
M keyboards/40percentclub/nein/config.h => keyboards/40percentclub/nein/config.h +0 -1
@@ 24,7 24,6 @@
#define DEVICE_VER 0x9999
#define MANUFACTURER di0ib
#define PRODUCT The nein Keyboard
-#define DESCRIPTION 9 key macropad
/* key matrix size */
#define MATRIX_ROWS 3
M keyboards/40percentclub/nori/config.h => keyboards/40percentclub/nori/config.h +0 -1
@@ 24,7 24,6 @@
#define DEVICE_VER 0x0444
#define MANUFACTURER di0ib
#define PRODUCT The nori Keyboard
-#define DESCRIPTION A modular compact keyboard
/* key matrix size */
#define MATRIX_ROWS 4
M keyboards/40percentclub/tomato/config.h => keyboards/40percentclub/tomato/config.h +0 -1
@@ 8,7 8,6 @@
#define DEVICE_VER 0x0001
#define MANUFACTURER 40 Percent Club
#define PRODUCT Tomato
-#define DESCRIPTION A 30 key ortholinear keyboard with RGB backlighting
/* key matrix size */
#define MATRIX_ROWS 5
M keyboards/40percentclub/ut47/config.h => keyboards/40percentclub/ut47/config.h +0 -1
@@ 25,7 25,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#define DEVICE_VER 0x0001
#define MANUFACTURER 40percent.club
#define PRODUCT ut47
-#define DESCRIPTION An awesome 40% keyboard
/* key matrix size */
#define MATRIX_ROWS 4
M keyboards/4by3/config.h => keyboards/4by3/config.h +0 -1
@@ 8,7 8,6 @@
#define DEVICE_VER 0x0001
#define MANUFACTURER Elias Sjögreen
#define PRODUCT 4by3
-#define DESCRIPTION A small 12 key keypad
/* key matrix size */
#define MATRIX_ROWS 3
M keyboards/4pplet/aekiso60/rev_a/config.h => keyboards/4pplet/aekiso60/rev_a/config.h +0 -1
@@ 8,7 8,6 @@
#define DEVICE_VER 0x0001
#define MANUFACTURER 4pplet
#define PRODUCT AEKISO60 Rev A
-#define DESCRIPTION A steezy KEEB
/* key matrix size */
#define MATRIX_ROWS 5
M keyboards/4pplet/steezy60/rev_a/config.h => keyboards/4pplet/steezy60/rev_a/config.h +0 -1
@@ 8,7 8,6 @@
#define DEVICE_VER 0x0001
#define MANUFACTURER 4pplet
#define PRODUCT Steezy60 Rev A
-#define DESCRIPTION A steezy keeb
/* key matrix size */
#define MATRIX_ROWS 5
M keyboards/4pplet/waffling60/rev_a/config.h => keyboards/4pplet/waffling60/rev_a/config.h +0 -1
@@ 8,7 8,6 @@
#define DEVICE_VER 0x0001
#define MANUFACTURER 4pplet
#define PRODUCT waffling60 Rev A
-#define DESCRIPTION A steezy keeb
/* key matrix size */
#define MATRIX_ROWS 6
M keyboards/6ball/config.h => keyboards/6ball/config.h +0 -1
@@ 26,7 26,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#define DEVICE_VER 0x0001
#define MANUFACTURER That-Canadian
#define PRODUCT 6-Ball
-#define DESCRIPTION 6-Ball Macropuck
/* key matrix size */
#define MATRIX_ROWS 1
M keyboards/7skb/rev1/config.h => keyboards/7skb/rev1/config.h +0 -1
@@ 24,7 24,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#define DEVICE_VER 0x0007
#define MANUFACTURER Salicylic_Acid
#define PRODUCT 7skb
-#define DESCRIPTION A custom keyboard
/* key matrix size */
#define MATRIX_ROWS 10
M keyboards/9key/config.h => keyboards/9key/config.h +0 -1
@@ 26,7 26,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#define DEVICE_VER 0x0001
#define MANUFACTURER Bishop Keyboards
#define PRODUCT 9Key
-#define DESCRIPTION Bishop Keyboards 9Key // Charleston, SC Meetup Handout
/* key matrix size */
#define MATRIX_ROWS 3
M keyboards/abacus/config.h => keyboards/abacus/config.h +0 -1
@@ 25,7 25,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#define DEVICE_VER 0x0001
#define MANUFACTURER nickolaij
#define PRODUCT abacus
-#define DESCRIPTION A first attempt at a custom keyboard
/* key matrix size */
#define MATRIX_ROWS 4
M keyboards/absinthe/config.h => keyboards/absinthe/config.h +0 -1
@@ 25,7 25,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#define DEVICE_VER 0x0001
#define MANUFACTURER cfbender
#define PRODUCT absinthe
-#define DESCRIPTION An F-row-less TKL
/* key matrix size */
#define MATRIX_ROWS 9
M keyboards/abstract/ellipse/rev1/config.h => keyboards/abstract/ellipse/rev1/config.h +0 -1
@@ 25,7 25,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#define DEVICE_VER 0x0001
#define MANUFACTURER AbstractKB
#define PRODUCT EllipseRev1
-#define DESCRIPTION The Ellipse Macropad
/* key matrix size */
#define MATRIX_ROWS 2
M keyboards/acheron/austin/config.h => keyboards/acheron/austin/config.h +0 -1
@@ 23,7 23,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#define DEVICE_VER 0x0001
#define MANUFACTURER DriftMechanics
#define PRODUCT Austin
-#define DESCRIPTION Austin Keyboard
/* key matrix size */
#define MATRIX_ROWS 6
M keyboards/acheron/elongate/config.h => keyboards/acheron/elongate/config.h +0 -1
@@ 25,7 25,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#define DEVICE_VER 0x0001
#define MANUFACTURER Acheron Project
#define PRODUCT Elongate
-#define DESCRIPTION Acheron Project Elongate
/* key matrix size */
#define MATRIX_ROWS 5
M keyboards/acheron/keebspcb/config.h => keyboards/acheron/keebspcb/config.h +0 -1
@@ 23,7 23,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#define DEVICE_VER 0x0001 // Revision pre-Alpha
#define MANUFACTURER AcheronProject
#define PRODUCT KeebsPCB
-#define DESCRIPTION AcheronProject KeebsPCB
/* key matrix size */
#define MATRIX_ROWS 5
M keyboards/acheron/shark/config.h => keyboards/acheron/shark/config.h +0 -1
@@ 25,7 25,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#define DEVICE_VER 0x0001
#define MANUFACTURER AcheronProject
#define PRODUCT SharkPCB
-#define DESCRIPTION Ortho 40 PCB
/* key matrix size */
#define MATRIX_ROWS 4
M keyboards/acr60/config.h => keyboards/acr60/config.h +0 -1
@@ 9,7 9,6 @@
#define DEVICE_VER 0x0001
#define MANUFACTURER MECHKEYS
#define PRODUCT ACR60
-#define DESCRIPTION 60% customizable keyboard
/* key matrix size */
#define MATRIX_ROWS 5
M keyboards/adelheid/config.h => keyboards/adelheid/config.h +0 -1
@@ 25,7 25,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#define DEVICE_VER 0x0002
#define MANUFACTURER floookay
#define PRODUCT adelheid
-#define DESCRIPTION 75% alice-like keyboard based on the arisu
/* key matrix size */
#define MATRIX_ROWS 7
M keyboards/adkb96/rev1/config.h => keyboards/adkb96/rev1/config.h +0 -1
@@ 22,7 22,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#define DEVICE_VER 0x0001
#define MANUFACTURER Bit Trade One
#define PRODUCT ADKB96
-#define DESCRIPTION
/* key matrix size */
// Rows are doubled-up
M keyboards/aeboards/aegis/config.h => keyboards/aeboards/aegis/config.h +0 -1
@@ 24,7 24,6 @@
#define DEVICE_VER 0x0001
#define MANUFACTURER AEboards
#define PRODUCT AEboards Aegis
-#define DESCRIPTION AEboards Aegis
/* key matrix size */
#define MATRIX_ROWS 12
M keyboards/ai03/equinox/config.h => keyboards/ai03/equinox/config.h +0 -1
@@ 25,7 25,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#define DEVICE_VER 0x0001
#define MANUFACTURER ai03 Design Studio
#define PRODUCT Equinox
-#define DESCRIPTION Compact PCB-mount keyboard
/* key matrix size */
#define MATRIX_ROWS 4
M keyboards/ai03/lunar/config.h => keyboards/ai03/lunar/config.h +0 -1
@@ 25,7 25,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#define DEVICE_VER 0x0001
#define MANUFACTURER Switchplate Peripherals
#define PRODUCT Lunar
-#define DESCRIPTION 65% AEK keyboard
/* key matrix size */
#define MATRIX_ROWS 5
M keyboards/ai03/orbit/config.h => keyboards/ai03/orbit/config.h +0 -1
@@ 25,7 25,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#define DEVICE_VER 0x0003
#define MANUFACTURER ai03 Keyboard Designs
#define PRODUCT Orbit
-#define DESCRIPTION Split ergonomic keyboard
/* key matrix size */
#define MATRIX_ROWS 10 // Double rows for split keyboards. Orbit has 5, so define 10
M keyboards/ai03/orbit_x/config.h => keyboards/ai03/orbit_x/config.h +0 -1
@@ 25,7 25,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#define DEVICE_VER 0x0001
#define MANUFACTURER ai03 Design Studio
#define PRODUCT OrbitX
-#define DESCRIPTION High-end compact ergonomic keyboard
/* key matrix size */
#define MATRIX_ROWS 8 // Double the rows for split
M keyboards/ai03/polaris/config.h => keyboards/ai03/polaris/config.h +0 -1
@@ 25,7 25,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#define DEVICE_VER 0x0001
#define MANUFACTURER ai03 Design Studio
#define PRODUCT Polaris
-#define DESCRIPTION Basic 60% keyboard
/* key matrix size */
#define MATRIX_ROWS 5
M keyboards/ai03/quasar/config.h => keyboards/ai03/quasar/config.h +0 -1
@@ 25,7 25,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#define DEVICE_VER 0x0001
#define MANUFACTURER Ryota Goto
#define PRODUCT Quasar
-#define DESCRIPTION SSK Controller
/* key matrix size */
#define MATRIX_ROWS 8
M keyboards/akb/eb46/config.h => keyboards/akb/eb46/config.h +0 -1
@@ 25,7 25,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#define DEVICE_VER 0x0001
#define MANUFACTURER Elliot Powell
#define PRODUCT eb46
-#define DESCRIPTION eb46 running qmk
/* key matrix size */
#define MATRIX_ROWS 4
#define MATRIX_COLS 13
M keyboards/akb/raine/config.h => keyboards/akb/raine/config.h +0 -1
@@ 24,7 24,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#define DEVICE_VER 0x0001
#define MANUFACTURER AKB
#define PRODUCT Raine
-#define DESCRIPTION Raine
/* key matrix size */
#define MATRIX_ROWS 5
M keyboards/al1/config.h => keyboards/al1/config.h +0 -1
@@ 26,7 26,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#define DEVICE_VER 0x0104
#define MANUFACTURER Alsoran
#define PRODUCT AL1
-#define DESCRIPTION A custom keyboard
/* key matrix size */
#define MATRIX_ROWS 7
M keyboards/alf/dc60/config.h => keyboards/alf/dc60/config.h +0 -1
@@ 25,7 25,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#define DEVICE_VER 0x0001
#define MANUFACTURER Alf
#define PRODUCT dc60
-#define DESCRIPTION custom 60% keyboard
/* key matrix size */
#define MATRIX_ROWS 5
M keyboards/alf/x11/config.h => keyboards/alf/x11/config.h +0 -1
@@ 25,7 25,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#define DEVICE_VER 0x0001
#define MANUFACTURER Alf
#define PRODUCT x11
-#define DESCRIPTION A TKL custom keyboard
/* key matrix size */
#define MATRIX_ROWS 7
M keyboards/alf/x2/config.h => keyboards/alf/x2/config.h +0 -1
@@ 9,7 9,6 @@
#define DEVICE_VER 0x0001
#define MANUFACTURER ALF
#define PRODUCT X2
-#define DESCRIPTION ALF X2 60
/* key matrix size */
#define MATRIX_ROWS 5
M keyboards/allison/config.h => keyboards/allison/config.h +0 -1
@@ 25,7 25,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#define DEVICE_VER 0x0001
#define MANUFACTURER protoTypist
#define PRODUCT Allison
-#define DESCRIPTION A custom luxurious 60 with F-row and Macro
/* key matrix size */
#define MATRIX_ROWS 6
M keyboards/allison_numpad/config.h => keyboards/allison_numpad/config.h +0 -1
@@ 25,7 25,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#define DEVICE_VER 0x0001
#define MANUFACTURER protoTypist
#define PRODUCT Allison Numpad
-#define DESCRIPTION A custom luxurious numpad to match Allison
/* key matrix size */
#define MATRIX_ROWS 6
M keyboards/alpha/config.h => keyboards/alpha/config.h +0 -1
@@ 9,7 9,6 @@
#define DEVICE_VER 0x0001
#define MANUFACTURER PyroL
#define PRODUCT alpha
-#define DESCRIPTION 28-key keyboard by PyroL
/* key matrix size */
#define MATRIX_ROWS 3
M keyboards/alps64/config.h => keyboards/alps64/config.h +0 -1
@@ 25,7 25,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#define DEVICE_VER 0x0001
#define MANUFACTURER Hasu
#define PRODUCT Alps64
-#define DESCRIPTION TMK keyboard firmware for Alps64
/* key matrix size */
#define MATRIX_ROWS 8
M keyboards/alu84/config.h => keyboards/alu84/config.h +0 -1
@@ 25,7 25,6 @@
#define DEVICE_VER 0x0001
#define MANUFACTURER MECHKEYS
#define PRODUCT ALU84
-#define DESCRIPTION 75% keyboard
/* key matrix size */
#define MATRIX_ROWS 6
M keyboards/amj40/config.h => keyboards/amj40/config.h +0 -1
@@ 26,7 26,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#define DEVICE_VER 0x0002
#define MANUFACTURER Han Chen
#define PRODUCT AMJ40
-#define DESCRIPTION qmk port of AMJ40 v2 PCB
/* key matrix size */
#define MATRIX_ROWS 4
M keyboards/amj60/config.h => keyboards/amj60/config.h +0 -1
@@ 26,7 26,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#define DEVICE_VER 0x0001
#define MANUFACTURER Han Chen
#define PRODUCT AMJ60
-#define DESCRIPTION qmk port of AMJ60 PCB
/* key matrix size */
#define MATRIX_ROWS 5
M keyboards/amj96/config.h => keyboards/amj96/config.h +0 -1
@@ 26,7 26,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#define DEVICE_VER 0x0002
#define MANUFACTURER Han Chen
#define PRODUCT AMJ96
-#define DESCRIPTION 96 key custom keyboard
/* key matrix size */
#define MATRIX_ROWS 7
M keyboards/amjkeyboard/amj66/config.h => keyboards/amjkeyboard/amj66/config.h +0 -1
@@ 25,7 25,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#define DEVICE_VER 0x0001
#define MANUFACTURER AMJKeyboard
#define PRODUCT AMJ66
-#define DESCRIPTION QMK keyboard firmware for AMJ66
/* Key matrix size */
#define MATRIX_ROWS 5
M keyboards/amjpad/config.h => keyboards/amjpad/config.h +0 -1
@@ 26,7 26,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#define DEVICE_VER 0x0003
#define MANUFACTURER AMJ
#define PRODUCT PAD
-#define DESCRIPTION QMK keyboard firmware for AMJ PAD
/* key matrix size */
#define MATRIX_ROWS 6
M keyboards/anavi/macropad8/config.h => keyboards/anavi/macropad8/config.h +0 -1
@@ 25,7 25,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#define DEVICE_VER 0x0001
#define MANUFACTURER ANAVI
#define PRODUCT Macro Pad 8
-#define DESCRIPTION 8-key mechanical keyboard/keypad/macropad with backlit, mini OLED display and RGB LED strip
/* key matrix size */
#define MATRIX_ROWS 2
M keyboards/angel17/alpha/config.h => keyboards/angel17/alpha/config.h +0 -1
@@ 25,7 25,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#define DEVICE_VER 0x0001
#define MANUFACTURER kakunpc
#define PRODUCT angel17
-#define DESCRIPTION A custom keyboard
/* key matrix size */
#define MATRIX_ROWS 4
M keyboards/angel17/rev1/config.h => keyboards/angel17/rev1/config.h +0 -1
@@ 25,7 25,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#define DEVICE_VER 0x0001
#define MANUFACTURER kakunpc
#define PRODUCT angel17
-#define DESCRIPTION A custom keyboard
/* key matrix size */
#define MATRIX_ROWS 4
M keyboards/angel64/alpha/config.h => keyboards/angel64/alpha/config.h +0 -1
@@ 25,7 25,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#define DEVICE_VER 0x0001
#define MANUFACTURER kakunpc
#define PRODUCT angel64
-#define DESCRIPTION A custom keyboard
/* key matrix size */
#define MATRIX_ROWS 12
M keyboards/angel64/rev1/config.h => keyboards/angel64/rev1/config.h +0 -1
@@ 25,7 25,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#define DEVICE_VER 0x0001
#define MANUFACTURER kakunpc
#define PRODUCT angel64
-#define DESCRIPTION A custom keyboard
/* key matrix size */
#define MATRIX_ROWS 12
M keyboards/aos/tkl/config.h => keyboards/aos/tkl/config.h +0 -1
@@ 25,7 25,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#define DEVICE_VER 0x0001
#define MANUFACTURER Ace of Spades
#define PRODUCT Ace of Spades TKL
-#define DESCRIPTION Ace of Spades TKL
/* key matrix size */
#define MATRIX_ROWS 6
M keyboards/arabica37/rev1/config.h => keyboards/arabica37/rev1/config.h +0 -1
@@ 24,7 24,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#define DEVICE_VER 0x0001
#define MANUFACTURER CalciumNitride
#define PRODUCT Arabica3/7
-#define DESCRIPTION A split keyboard with 3x6 column staggered keys, 1 pinkie key and 3 thumb keys
#define USE_SERIAL
#define SOFT_SERIAL_PIN D2
M keyboards/arisu/config.h => keyboards/arisu/config.h +0 -1
@@ 25,7 25,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#define DEVICE_VER 0x0001
#define MANUFACTURER Fate
#define PRODUCT arisu
-#define DESCRIPTION alice counterpart keyboard
/* key matrix size */
#define MATRIX_ROWS 5
M keyboards/ash1800/config.h => keyboards/ash1800/config.h +0 -1
@@ 25,7 25,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#define DEVICE_VER 0x0001
#define MANUFACTURER Hasyim Ashari
#define PRODUCT ASH-1800
-#define DESCRIPTION An attempt to make a cherry g80/g81 clone
/* key matrix size */
#define MATRIX_ROWS 12
M keyboards/ashpil/modelm_usbc/config.h => keyboards/ashpil/modelm_usbc/config.h +0 -1
@@ 25,7 25,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#define DEVICE_VER 0x0001
#define MANUFACTURER ashpil
#define PRODUCT IBM Model M 101/102
-#define DESCRIPTION Controlled by AVR chip
/* key matrix size */
#define MATRIX_ROWS 8
M keyboards/at101_bh/config.h => keyboards/at101_bh/config.h +0 -1
@@ 8,7 8,6 @@
#define DEVICE_VER 0x0001
#define MANUFACTURER blindassassin111
#define PRODUCT AT101_BH PCB
-#define DESCRIPTION Replacement AT101 PCB
/* key matrix size */
#define MATRIX_ROWS 12
M keyboards/at_at/660m/config.h => keyboards/at_at/660m/config.h +0 -1
@@ 29,7 29,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#define DEVICE_VER 0x0001
#define MANUFACTURER AT-AT
#define PRODUCT 660M
-#define DESCRIPTION 660M Keyboard
/* key matrix size */
#define MATRIX_ROWS 5
M keyboards/atomic/config.h => keyboards/atomic/config.h +0 -1
@@ 26,7 26,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#define DEVICE_VER 0x0001
#define MANUFACTURER Ortholinear Keyboards
#define PRODUCT The Atomic Keyboard
-#define DESCRIPTION A compact ortholinear keyboard
/* key matrix size */
#define MATRIX_ROWS 5
M keyboards/atreus/config.h => keyboards/atreus/config.h +0 -1
@@ 25,7 25,6 @@
#define DEVICE_VER 0x0008
#define MANUFACTURER Technomancy
#define PRODUCT Atreus
-#define DESCRIPTION QMK keyboard firmware for Atreus
/* key matrix size */
#define MATRIX_ROWS 4
M keyboards/atreus62/config.h => keyboards/atreus62/config.h +0 -1
@@ 27,7 27,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#define DEVICE_VER 0x0001
#define MANUFACTURER Profet
#define PRODUCT Atreus62
-#define DESCRIPTION q.m.k. keyboard firmware for Atreus62
/* key matrix size */
// Rows are doubled-up
M keyboards/atreus62/keymaps/atreus52/config.h => keyboards/atreus62/keymaps/atreus52/config.h +0 -2
@@ 2,7 2,6 @@
#undef MANUFACTURER
#undef PRODUCT
-#undef DESCRIPTION
#undef MATRIX_ROW_PINS
#undef MATRIX_COL_PINS
#undef DIODE_DIRECTION
@@ 10,7 9,6 @@
/* USB Device descriptor parameter */
#define MANUFACTURER Mesh Industries
#define PRODUCT Atreus52 Treeboard
-#define DESCRIPTION q.m.k. keyboard firmware for Atreus52
#define MATRIX_ROW_PINS { C6, D7, E6, B4, B5 }
#define MATRIX_COL_PINS { B2, B1, F7, F6, F5, F4, B6, D3, D2, D1, D0, D4, B3 }
M keyboards/atxkb/1894/config.h => keyboards/atxkb/1894/config.h +0 -1
@@ 25,7 25,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#define DEVICE_VER 0x0001
#define MANUFACTURER atxkb
#define PRODUCT 1894
-#define DESCRIPTION atxkb 1894
/* key matrix size */
#define MATRIX_ROWS 5
M keyboards/aves65/config.h => keyboards/aves65/config.h +0 -1
@@ 25,7 25,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#define DEVICE_VER 0x0001
#define MANUFACTURER I/O Keyboards
#define PRODUCT Aves65
-#define DESCRIPTION A 65% keyboard with underglow.
/* key matrix size */
#define MATRIX_ROWS 5
M tmk_core/common/report.h => tmk_core/common/report.h +0 -6
@@ 123,12 123,6 @@ enum desktop_usages {
#define KEYBOARD_REPORT_KEYS 6
-/* VUSB hardcodes keyboard and mouse+extrakey only */
-#if defined(PROTOCOL_VUSB)
-# undef KEYBOARD_SHARED_EP
-# undef MOUSE_SHARED_EP
-#endif
-
#ifdef __cplusplus
extern "C" {
#endif
M tmk_core/protocol/vusb/vusb.c => tmk_core/protocol/vusb/vusb.c +90 -33
@@ 46,19 46,28 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
* Interface indexes
*/
enum usb_interfaces {
+#ifndef KEYBOARD_SHARED_EP
KEYBOARD_INTERFACE = NEXT_INTERFACE,
+#else
+ SHARED_INTERFACE = NEXT_INTERFACE,
+# define KEYBOARD_INTERFACE SHARED_INTERFACE
+#endif
+
// It is important that the Raw HID interface is at a constant
// interface number, to support Linux/OSX platforms and chrome.hid
// If Raw HID is enabled, let it be always 1.
#ifdef RAW_ENABLE
RAW_INTERFACE = NEXT_INTERFACE,
#endif
-#if (defined(MOUSE_ENABLE) || defined(EXTRAKEY_ENABLE))
- MOUSE_EXTRA_INTERFACE = NEXT_INTERFACE,
+
+#if defined(SHARED_EP_ENABLE) && !defined(KEYBOARD_SHARED_EP)
+ SHARED_INTERFACE = NEXT_INTERFACE,
#endif
+
#ifdef CONSOLE_ENABLE
CONSOLE_INTERFACE = NEXT_INTERFACE,
#endif
+
TOTAL_INTERFACES = NEXT_INTERFACE
};
@@ 90,7 99,16 @@ void vusb_transfer_keyboard(void) {
for (int i = 0; i < VUSB_TRANSFER_KEYBOARD_MAX_TRIES; i++) {
if (usbInterruptIsReady()) {
if (kbuf_head != kbuf_tail) {
+#ifndef KEYBOARD_SHARED_EP
usbSetInterrupt((void *)&kbuf[kbuf_tail], sizeof(report_keyboard_t));
+#else
+ // Ugly hack! :(
+ usbSetInterrupt((void *)&kbuf[kbuf_tail], sizeof(report_keyboard_t) - 1);
+ while (!usbInterruptIsReady()) {
+ usbPoll();
+ }
+ usbSetInterrupt((void *)(&(kbuf[kbuf_tail].keys[5])), 1);
+#endif
kbuf_tail = (kbuf_tail + 1) % KBUF_SIZE;
if (debug_keyboard) {
dprintf("V-USB: kbuf[%d->%d](%02X)\n", kbuf_tail, kbuf_head, (kbuf_head < kbuf_tail) ? (KBUF_SIZE - kbuf_tail + kbuf_head) : (kbuf_head - kbuf_tail));
@@ 230,16 248,18 @@ static void send_keyboard(report_keyboard_t *report) {
keyboard_report_sent = *report;
}
-typedef struct {
- uint8_t report_id;
- report_mouse_t report;
-} __attribute__((packed)) vusb_mouse_report_t;
+#ifndef KEYBOARD_SHARED_EP
+# define usbInterruptIsReadyShared usbInterruptIsReady3
+# define usbSetInterruptShared usbSetInterrupt3
+#else
+# define usbInterruptIsReadyShared usbInterruptIsReady
+# define usbSetInterruptShared usbSetInterrupt
+#endif
static void send_mouse(report_mouse_t *report) {
#ifdef MOUSE_ENABLE
- vusb_mouse_report_t r = {.report_id = REPORT_ID_MOUSE, .report = *report};
- if (usbInterruptIsReady3()) {
- usbSetInterrupt3((void *)&r, sizeof(vusb_mouse_report_t));
+ if (usbInterruptIsReadyShared()) {
+ usbSetInterruptShared((void *)report, sizeof(report_mouse_t));
}
#endif
}
@@ 253,8 273,8 @@ static void send_extra(uint8_t report_id, uint16_t data) {
last_data = data;
report_extra_t report = {.report_id = report_id, .usage = data};
- if (usbInterruptIsReady3()) {
- usbSetInterrupt3((void *)&report, sizeof(report));
+ if (usbInterruptIsReadyShared()) {
+ usbSetInterruptShared((void *)&report, sizeof(report_extra_t));
}
}
#endif
@@ 360,10 380,18 @@ void usbFunctionWriteOut(uchar *data, uchar len) {
* Descriptors *
*------------------------------------------------------------------*/
+#ifdef KEYBOARD_SHARED_EP
+const PROGMEM uchar shared_hid_report[] = {
+# define SHARED_REPORT_STARTED
+#else
const PROGMEM uchar keyboard_hid_report[] = {
+#endif
0x05, 0x01, // Usage Page (Generic Desktop)
0x09, 0x06, // Usage (Keyboard)
0xA1, 0x01, // Collection (Application)
+#ifdef KEYBOARD_SHARED_EP
+ 0x85, REPORT_ID_KEYBOARD, // Report ID
+#endif
// Modifiers (8 bits)
0x05, 0x07, // Usage Page (Keyboard/Keypad)
0x19, 0xE0, // Usage Minimum (Keyboard Left Control)
@@ 398,12 426,17 @@ const PROGMEM uchar keyboard_hid_report[] = {
0x95, 0x01, // Report Count (1)
0x75, 0x03, // Report Size (3)
0x91, 0x03, // Output (Constant)
- 0xC0 // End Collection
+ 0xC0, // End Collection
+#ifndef KEYBOARD_SHARED_EP
};
+#endif
-#if defined(MOUSE_ENABLE) || defined(EXTRAKEY_ENABLE)
-const PROGMEM uchar mouse_extra_hid_report[] = {
-# ifdef MOUSE_ENABLE
+#if defined(SHARED_EP_ENABLE) && !defined(SHARED_REPORT_STARTED)
+const PROGMEM uchar shared_hid_report[] = {
+# define SHARED_REPORT_STARTED
+#endif
+
+#ifdef MOUSE_ENABLE
// Mouse report descriptor
0x05, 0x01, // Usage Page (Generic Desktop)
0x09, 0x02, // Usage (Mouse)
@@ 452,9 485,9 @@ const PROGMEM uchar mouse_extra_hid_report[] = {
0x81, 0x06, // Input (Data, Variable, Relative)
0xC0, // End Collection
0xC0, // End Collection
-# endif
+#endif
-# ifdef EXTRAKEY_ENABLE
+#ifdef EXTRAKEY_ENABLE
// Extrakeys report descriptor
0x05, 0x01, // Usage Page (Generic Desktop)
0x09, 0x80, // Usage (System Control)
@@ 481,7 514,8 @@ const PROGMEM uchar mouse_extra_hid_report[] = {
0x75, 0x10, // Report Size (16)
0x81, 0x00, // Input (Data, Array, Absolute)
0xC0 // End Collection
-# endif
+#endif
+#ifdef SHARED_EP_ENABLE
};
#endif
@@ 618,6 652,7 @@ const PROGMEM usbConfigurationDescriptor_t usbConfigurationDescriptor = {
.bMaxPower = USB_MAX_POWER_CONSUMPTION / 2
},
+# ifndef KEYBOARD_SHARED_EP
/*
* Keyboard
*/
@@ 655,6 690,7 @@ const PROGMEM usbConfigurationDescriptor_t usbConfigurationDescriptor = {
.wMaxPacketSize = 8,
.bInterval = USB_POLLING_INTERVAL_MS
},
+# endif
# if defined(RAW_ENABLE)
/*
@@ 705,24 741,30 @@ const PROGMEM usbConfigurationDescriptor_t usbConfigurationDescriptor = {
.bInterval = USB_POLLING_INTERVAL_MS
},
# endif
-# if defined(MOUSE_ENABLE) || defined(EXTRAKEY_ENABLE)
+
+# ifdef SHARED_EP_ENABLE
/*
- * Mouse/Extrakeys
+ * Shared
*/
- .mouseExtraInterface = {
+ .sharedInterface = {
.header = {
.bLength = sizeof(usbInterfaceDescriptor_t),
.bDescriptorType = USBDESCR_INTERFACE
},
- .bInterfaceNumber = MOUSE_EXTRA_INTERFACE,
+ .bInterfaceNumber = SHARED_INTERFACE,
.bAlternateSetting = 0x00,
.bNumEndpoints = 1,
.bInterfaceClass = 0x03,
+# ifdef KEYBOARD_SHARED_EP
+ .bInterfaceSubClass = 0x01,
+ .bInterfaceProtocol = 0x01,
+# else
.bInterfaceSubClass = 0x00,
.bInterfaceProtocol = 0x00,
+# endif
.iInterface = 0x00
},
- .mouseExtraHID = {
+ .sharedHID = {
.header = {
.bLength = sizeof(usbHIDDescriptor_t),
.bDescriptorType = USBDESCR_HID
@@ 731,19 773,24 @@ const PROGMEM usbConfigurationDescriptor_t usbConfigurationDescriptor = {
.bCountryCode = 0x00,
.bNumDescriptors = 1,
.bDescriptorType = USBDESCR_HID_REPORT,
- .wDescriptorLength = sizeof(mouse_extra_hid_report)
+ .wDescriptorLength = sizeof(shared_hid_report)
},
- .mouseExtraINEndpoint = {
+ .sharedINEndpoint = {
.header = {
.bLength = sizeof(usbEndpointDescriptor_t),
.bDescriptorType = USBDESCR_ENDPOINT
},
+# ifdef KEYBOARD_SHARED_EP
+ .bEndpointAddress = (USBRQ_DIR_DEVICE_TO_HOST | 1),
+# else
.bEndpointAddress = (USBRQ_DIR_DEVICE_TO_HOST | USB_CFG_EP3_NUMBER),
+# endif
.bmAttributes = 0x03,
.wMaxPacketSize = 8,
.bInterval = USB_POLLING_INTERVAL_MS
},
# endif
+
# if defined(CONSOLE_ENABLE)
/*
* Console
@@ 791,7 838,7 @@ const PROGMEM usbConfigurationDescriptor_t usbConfigurationDescriptor = {
.bmAttributes = 0x03,
.wMaxPacketSize = CONSOLE_EPSIZE,
.bInterval = 0x01
- },
+ }
# endif
};
@@ 833,22 880,27 @@ USB_PUBLIC usbMsgLen_t usbFunctionDescriptor(struct usbRequest *rq) {
break;
case USBDESCR_HID:
switch (rq->wValue.bytes[0]) {
+#ifndef KEYBOARD_SHARED_EP
case KEYBOARD_INTERFACE:
usbMsgPtr = (usbMsgPtr_t)&usbConfigurationDescriptor.keyboardHID;
len = sizeof(usbHIDDescriptor_t);
break;
+#endif
+
#if defined(RAW_ENABLE)
case RAW_INTERFACE:
usbMsgPtr = (usbMsgPtr_t)&usbConfigurationDescriptor.rawHID;
len = sizeof(usbHIDDescriptor_t);
break;
#endif
-#if defined(MOUSE_ENABLE) || defined(EXTRAKEY_ENABLE)
- case MOUSE_EXTRA_INTERFACE:
- usbMsgPtr = (usbMsgPtr_t)&usbConfigurationDescriptor.mouseExtraHID;
+
+#ifdef SHARED_EP_ENABLE
+ case SHARED_INTERFACE:
+ usbMsgPtr = (usbMsgPtr_t)&usbConfigurationDescriptor.sharedHID;
len = sizeof(usbHIDDescriptor_t);
break;
#endif
+
#if defined(CONSOLE_ENABLE)
case CONSOLE_INTERFACE:
usbMsgPtr = (usbMsgPtr_t)&usbConfigurationDescriptor.consoleHID;
@@ 860,22 912,27 @@ USB_PUBLIC usbMsgLen_t usbFunctionDescriptor(struct usbRequest *rq) {
case USBDESCR_HID_REPORT:
/* interface index */
switch (rq->wIndex.word) {
+#ifndef KEYBOARD_SHARED_EP
case KEYBOARD_INTERFACE:
usbMsgPtr = (usbMsgPtr_t)keyboard_hid_report;
len = sizeof(keyboard_hid_report);
break;
+#endif
+
#if defined(RAW_ENABLE)
case RAW_INTERFACE:
usbMsgPtr = (usbMsgPtr_t)raw_hid_report;
len = sizeof(raw_hid_report);
break;
#endif
-#if defined(MOUSE_ENABLE) || defined(EXTRAKEY_ENABLE)
- case MOUSE_EXTRA_INTERFACE:
- usbMsgPtr = (usbMsgPtr_t)mouse_extra_hid_report;
- len = sizeof(mouse_extra_hid_report);
+
+#ifdef SHARED_EP_ENABLE
+ case SHARED_INTERFACE:
+ usbMsgPtr = (usbMsgPtr_t)shared_hid_report;
+ len = sizeof(shared_hid_report);
break;
#endif
+
#if defined(CONSOLE_ENABLE)
case CONSOLE_INTERFACE:
usbMsgPtr = (usbMsgPtr_t)console_hid_report;
M tmk_core/protocol/vusb/vusb.h => tmk_core/protocol/vusb/vusb.h +14 -7
@@ 85,9 85,16 @@ typedef struct usbHIDDescriptor {
typedef struct usbConfigurationDescriptor {
usbConfigurationDescriptorHeader_t header;
- usbInterfaceDescriptor_t keyboardInterface;
- usbHIDDescriptor_t keyboardHID;
- usbEndpointDescriptor_t keyboardINEndpoint;
+
+#ifndef KEYBOARD_SHARED_EP
+ usbInterfaceDescriptor_t keyboardInterface;
+ usbHIDDescriptor_t keyboardHID;
+ usbEndpointDescriptor_t keyboardINEndpoint;
+#else
+ usbInterfaceDescriptor_t sharedInterface;
+ usbHIDDescriptor_t sharedHID;
+ usbEndpointDescriptor_t sharedINEndpoint;
+#endif
#if defined(RAW_ENABLE)
usbInterfaceDescriptor_t rawInterface;
@@ 96,10 103,10 @@ typedef struct usbConfigurationDescriptor {
usbEndpointDescriptor_t rawOUTEndpoint;
#endif
-#if defined(MOUSE_ENABLE) || defined(EXTRAKEY_ENABLE)
- usbInterfaceDescriptor_t mouseExtraInterface;
- usbHIDDescriptor_t mouseExtraHID;
- usbEndpointDescriptor_t mouseExtraINEndpoint;
+#if defined(SHARED_EP_ENABLE) && !defined(KEYBOARD_SHARED_EP)
+ usbInterfaceDescriptor_t sharedInterface;
+ usbHIDDescriptor_t sharedHID;
+ usbEndpointDescriptor_t sharedINEndpoint;
#endif
#if defined(CONSOLE_ENABLE)