From f2c179de58c63b2202a490d283fd8fa216680ce7 Mon Sep 17 00:00:00 2001 From: fauxpark Date: Wed, 21 Aug 2019 15:18:52 +1000 Subject: Remove superfluous JTAG disable code (#6445) * Remove superfluous JTAG disable code * 32A has differently named register * Accidentally some operators * 32A also has different JTAG pins * Wrap disable_jtag() in an ifndef * Document this new define * Rename the define, it conflicts with a LUFA thing Also, move the ifndef wrapping to the call in keyboard_setup() --- docs/faq_debug.md | 17 +++++------------ 1 file changed, 5 insertions(+), 12 deletions(-) (limited to 'docs/faq_debug.md') diff --git a/docs/faq_debug.md b/docs/faq_debug.md index f6cc729b61..5cc20251d3 100644 --- a/docs/faq_debug.md +++ b/docs/faq_debug.md @@ -184,22 +184,15 @@ Pressing any key during sleep should wake host. Arduino Leonardo and micro have **ATMega32U4** and can be used for TMK, though Arduino bootloader may be a problem. +## Enabling JTAG -## Using PF4-7 Pins of USB AVR? -You need to set JTD bit of MCUCR yourself to use PF4-7 as GPIO. Those pins are configured to serve JTAG function by default. MCUs like ATMega*U* or AT90USB* are affected with this. +By default, the JTAG debugging interface is disabled as soon as the keyboard starts up. JTAG-capable MCUs come from the factory with the `JTAGEN` fuse set, and it takes over certain pins of the MCU that the board may be using for the switch matrix, LEDs, etc. -If you are using Teensy this isn't needed. Teensy is shipped with JTAGEN fuse bit unprogrammed to disable the function. +If you would like to keep JTAG enabled, just add the following to your `config.h`: -See this code. +```c +#define NO_JTAG_DISABLE ``` - // JTAG disable for PORT F. write JTD bit twice within four cycles. - MCUCR |= (1<