]> git.donarmstrong.com Git - qmk_firmware.git/commitdiff
Add compile error if too many endpoints are defined for the ATmega32U4.
authorJoe Wasson <jwasson+github@gmail.com>
Sun, 20 Aug 2017 03:35:41 +0000 (20:35 -0700)
committerJack Humbert <jack.humb@gmail.com>
Sun, 20 Aug 2017 15:51:57 +0000 (11:51 -0400)
docs/stenography.md
tmk_core/protocol/lufa/descriptor.h

index 8c779032b9634986d69aac3f139c3b75f49afca8..5b457a2a6c15e3b449ee8415d7c609d314a77e06 100644 (file)
@@ -30,7 +30,7 @@ GeminiPR encodes 42 keys into a 6-byte packet. While TX Bolt contains everything
 
 ## Configuring QMK for Steno
 
-Firstly, enable steno in your keymap's Makefile. You should also diable mousekeys to prevent conflicts.
+Firstly, enable steno in your keymap's Makefile. You may also need disable mousekeys, extra keys, or another USB endpoint to prevent conflicts. The builtin USB stack for some processors only supports a certain number of USB endpoints and the virtual serial port needed for steno fills 3 of them.
 
 ```Makefile
 STENO_ENABLE = yes
index cde44abc9be85c92b8df29d03b520d7fc8bd4bb7..43001c9778178aad9d3b722387ee6e6bcd3f42bc 100644 (file)
@@ -238,7 +238,8 @@ typedef struct
 #   define CDC_OUT_EPNUM       MIDI_STREAM_OUT_EPNUM
 #endif
 
-#if defined(__AVR_ATmega32U2__) && CDC_OUT_EPNUM > 4
+#if (defined(__AVR_ATmega32U2__) && CDC_OUT_EPNUM > 4) || \
+    (defined(__AVR_ATmega32U4__) && CDC_OUT_EPNUM > 6)
 # error "Endpoints are not available enough to support all functions. Remove some in Makefile.(MOUSEKEY, EXTRAKEY, CONSOLE, NKRO, MIDI, SERIAL)"
 #endif