1
0
Fork 0

Add mechanical locking switch support for NumLock and ScrollLock

This commit is contained in:
tmk 2013-07-23 10:56:03 +09:00
parent 5b425731c5
commit 2721022078
7 changed files with 75 additions and 28 deletions

View file

@ -9,10 +9,10 @@ Discuss: http://geekhack.org/showwiki.php?title=Island:14290
Build
-----
0. Connect ADB keyboard to Teensy by 3 lines(Vcc, GND, Data). By default Data line uses port F0.
0. Connect ADB keyboard to Teensy by 3 lines(Vcc, GND, Data). By default Data line uses port D0.
This converter uses AVR's internal pull-up, but it seems to be too weak, in particular when you want to use a long or coiled cable.
The external pull-up resistor(1K-10K Ohm) on Data is strongly recommended.
1. Define following macros for ADB connection in config.h if you use other than port F0.
1. Define following macros for ADB connection in config.h if you use other than port D0.
ADB_PORT, ADB_PIN, ADB_DDR, ADB_DATA_BIT
2. make
3. program Teensy

View file

@ -34,10 +34,10 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#define MATRIX_COL(code) ((code)&0x07)
/* Mechanical locking CapsLock support. Use KC_LCAP instead of KC_CAPS in keymap */
#define CAPSLOCK_LOCKING_ENABLE
/* Locking CapsLock resynchronize hack */
#define CAPSLOCK_LOCKING_RESYNC_ENABLE
/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */
#define LOCKING_SUPPORT_ENABLE
/* Locking resynchronize hack */
#define LOCKING_RESYNC_ENABLE
/* legacy keymap support */
@ -51,9 +51,9 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
/* ADB port setting */
#define ADB_PORT PORTF
#define ADB_PIN PINF
#define ADB_DDR DDRF
#define ADB_PORT PORTD
#define ADB_PIN PIND
#define ADB_DDR DDRD
#define ADB_DATA_BIT 0
//#define ADB_PSW_BIT 1 // optional