From adfd5b92ebdc38721c89715e9071b35ecaeb79e9 Mon Sep 17 00:00:00 2001 From: Jun Wako Date: Tue, 7 Apr 2015 09:27:28 +0900 Subject: hhkb: Fix bug of matrix initialization for JP --- keyboard/hhkb/hhkb_avr.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'keyboard/hhkb') diff --git a/keyboard/hhkb/hhkb_avr.h b/keyboard/hhkb/hhkb_avr.h index 7ea6322c73..4e7e070364 100644 --- a/keyboard/hhkb/hhkb_avr.h +++ b/keyboard/hhkb/hhkb_avr.h @@ -70,7 +70,7 @@ static inline void KEY_INIT(void) #ifdef HHKB_JP /* row extention for HHKB JP */ DDRC |= (1<<6|1<<7); - PORTC |= (1<<6|1<<7); + PORTC &= ~(1<<6|1<<7); #endif KEY_UNABLE(); KEY_PREV_OFF(); -- cgit v1.2.3 From 63f462a460acb8e4b2c37fd9c777eeb813802492 Mon Sep 17 00:00:00 2001 From: Jun Wako Date: Tue, 7 Apr 2015 09:29:06 +0900 Subject: hhkb: Chane keymap for hasu --- keyboard/hhkb/keymap_hasu.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'keyboard/hhkb') diff --git a/keyboard/hhkb/keymap_hasu.c b/keyboard/hhkb/keymap_hasu.c index 433f9cb270..a5602ded31 100644 --- a/keyboard/hhkb/keymap_hasu.c +++ b/keyboard/hhkb/keymap_hasu.c @@ -85,7 +85,7 @@ const uint8_t keymaps[][MATRIX_ROWS][MATRIX_COLS] PROGMEM = { */ [3] = \ KEYMAP(GRV, F1, F2, F3, F4, F5, F6, F7, F8, F9, F10, F11, F12, INS, DEL, \ - FN8, NO, NO, NO, NO, NO, NO, WH_D,MS_U,WH_U,RGHT,FN9, FN10,FN8, \ + FN8, NO, NO, NO, NO, NO, WH_L,WH_D,MS_U,WH_U,WH_R,FN9, FN10,FN8, \ LCTL,ACL0,ACL1,ACL2,ACL2,NO, NO, MS_L,MS_D,MS_R,FN3, NO, ENT, \ LSFT,NO, NO, NO, NO, BTN3,BTN2,BTN1,FN9, FN10,NO, RSFT,TRNS, \ LGUI,LALT, BTN1, TRNS,TRNS), @@ -106,7 +106,7 @@ const uint8_t keymaps[][MATRIX_ROWS][MATRIX_COLS] PROGMEM = { */ [4] = \ KEYMAP(GRV, F1, F2, F3, F4, F5, F6, F7, F8, F9, F10, F11, F12, INS, DEL, \ - FN8, NO, NO, NO, NO, NO, NO, WH_D,MS_U,WH_U,RGHT,FN9, FN10,FN8, \ + FN8, NO, NO, NO, NO, NO, WH_L,WH_D,MS_U,WH_U,WH_R,BTN4,BTN5,FN8, \ LCTL,VOLD,VOLU,MUTE,NO, NO, NO, MS_L,MS_D,MS_R,BTN1,NO, ENT, \ LSFT,NO, NO, NO, NO, BTN3,BTN2,BTN1,FN9, FN10,NO, RSFT,TRNS, \ LGUI,LALT, TRNS, TRNS,TRNS), -- cgit v1.2.3 From b4e2d325f355a4d083106476393775e75e11f284 Mon Sep 17 00:00:00 2001 From: tmk Date: Thu, 9 Apr 2015 16:20:42 +0900 Subject: Change TOP_DIR to TMK_DIR in makefiles --- keyboard/hhkb/Makefile | 10 +++++----- keyboard/hhkb/Makefile.pjrc | 10 +++++----- keyboard/hhkb/Makefile.rn42 | 12 ++++++------ keyboard/hhkb/not_supported/Makefile.iwrap | 12 ++++++------ keyboard/hhkb/not_supported/Makefile.vusb | 10 +++++----- 5 files changed, 27 insertions(+), 27 deletions(-) (limited to 'keyboard/hhkb') diff --git a/keyboard/hhkb/Makefile b/keyboard/hhkb/Makefile index dc5c06a948..ea5a65ea29 100644 --- a/keyboard/hhkb/Makefile +++ b/keyboard/hhkb/Makefile @@ -42,7 +42,7 @@ TARGET = hhkb_lufa # Directory common source filess exist -TOP_DIR = ../.. +TMK_DIR = ../.. # Directory keyboard dependent files exist TARGET_DIR = . @@ -142,11 +142,11 @@ endif # Search Path VPATH += $(TARGET_DIR) -VPATH += $(TOP_DIR) +VPATH += $(TMK_DIR) -include $(TOP_DIR)/protocol/lufa.mk -include $(TOP_DIR)/common.mk -include $(TOP_DIR)/rules.mk +include $(TMK_DIR)/protocol/lufa.mk +include $(TMK_DIR)/common.mk +include $(TMK_DIR)/rules.mk debug-on: EXTRAFLAGS += -DDEBUG -DDEBUG_ACTION debug-on: all diff --git a/keyboard/hhkb/Makefile.pjrc b/keyboard/hhkb/Makefile.pjrc index b6ce9c7504..53bb784cf0 100644 --- a/keyboard/hhkb/Makefile.pjrc +++ b/keyboard/hhkb/Makefile.pjrc @@ -7,7 +7,7 @@ TARGET = hhkb_pjrc # Directory common source filess exist -TOP_DIR = ../.. +TMK_DIR = ../.. # Directory keyboard dependent files exist TARGET_DIR = . @@ -61,8 +61,8 @@ PROGRAM_CMD = teensy_loader_cli -mmcu=$(MCU) -w -v $(TARGET).hex # Search Path VPATH += $(TARGET_DIR) -VPATH += $(TOP_DIR) +VPATH += $(TMK_DIR) -include $(TOP_DIR)/protocol/pjrc.mk -include $(TOP_DIR)/common.mk -include $(TOP_DIR)/rules.mk +include $(TMK_DIR)/protocol/pjrc.mk +include $(TMK_DIR)/common.mk +include $(TMK_DIR)/rules.mk diff --git a/keyboard/hhkb/Makefile.rn42 b/keyboard/hhkb/Makefile.rn42 index b1eacd070f..66bdba9174 100644 --- a/keyboard/hhkb/Makefile.rn42 +++ b/keyboard/hhkb/Makefile.rn42 @@ -42,7 +42,7 @@ TARGET = hhkb_rn42 # Directory common source filess exist -TOP_DIR = ../.. +TMK_DIR = ../.. # Directory keyboard dependent files exist TARGET_DIR = . @@ -139,13 +139,13 @@ endif # Search Path VPATH += $(TARGET_DIR) -VPATH += $(TOP_DIR) +VPATH += $(TMK_DIR) include rn42.mk -include $(TOP_DIR)/protocol.mk -include $(TOP_DIR)/protocol/lufa.mk -include $(TOP_DIR)/common.mk -include $(TOP_DIR)/rules.mk +include $(TMK_DIR)/protocol.mk +include $(TMK_DIR)/protocol/lufa.mk +include $(TMK_DIR)/common.mk +include $(TMK_DIR)/rules.mk debug-on: EXTRAFLAGS += -DDEBUG -DDEBUG_ACTION debug-on: all diff --git a/keyboard/hhkb/not_supported/Makefile.iwrap b/keyboard/hhkb/not_supported/Makefile.iwrap index 2d9d82c481..5bc94d5f6d 100644 --- a/keyboard/hhkb/not_supported/Makefile.iwrap +++ b/keyboard/hhkb/not_supported/Makefile.iwrap @@ -7,7 +7,7 @@ TARGET = hhkb_iwrap # Directory common source filess exist -TOP_DIR = ../.. +TMK_DIR = ../.. # Directory keyboard dependent files exist TARGET_DIR = . @@ -94,10 +94,10 @@ PROGRAM_CMD = $(AVRDUDE) $(AVRDUDE_FLAGS) $(AVRDUDE_WRITE_FLASH) $(AVRDUDE_WRITE # Search Path VPATH += $(TARGET_DIR) -VPATH += $(TOP_DIR) +VPATH += $(TMK_DIR) -include $(TOP_DIR)/protocol/iwrap.mk +include $(TMK_DIR)/protocol/iwrap.mk # TODO: to be selectable: V-USB, LUFA or PJRC -#include $(TOP_DIR)/protocol/vusb.mk -include $(TOP_DIR)/common.mk -include $(TOP_DIR)/rules.mk +#include $(TMK_DIR)/protocol/vusb.mk +include $(TMK_DIR)/common.mk +include $(TMK_DIR)/rules.mk diff --git a/keyboard/hhkb/not_supported/Makefile.vusb b/keyboard/hhkb/not_supported/Makefile.vusb index 4343b210d9..61fd928896 100644 --- a/keyboard/hhkb/not_supported/Makefile.vusb +++ b/keyboard/hhkb/not_supported/Makefile.vusb @@ -7,7 +7,7 @@ TARGET = hhkb_vusb # Directory common source filess exist -TOP_DIR = ../.. +TMK_DIR = ../.. # Directory keyboard dependent files exist TARGET_DIR = . @@ -87,11 +87,11 @@ PROGRAM_CMD = $(AVRDUDE) $(AVRDUDE_FLAGS) $(AVRDUDE_WRITE_FLASH) $(AVRDUDE_WRITE # Search Path VPATH += $(TARGET_DIR) -VPATH += $(TOP_DIR) +VPATH += $(TMK_DIR) -include $(TOP_DIR)/protocol/vusb.mk -include $(TOP_DIR)/common.mk -include $(TOP_DIR)/rules.mk +include $(TMK_DIR)/protocol/vusb.mk +include $(TMK_DIR)/common.mk +include $(TMK_DIR)/rules.mk debug-on: EXTRAFLAGS += -DDEBUG debug-on: all -- cgit v1.2.3 From 7860d09914dba5e7d2d6c1c25b62b49d1bbd2591 Mon Sep 17 00:00:00 2001 From: tmk Date: Fri, 10 Apr 2015 01:53:24 +0900 Subject: Change TMK_DIR setting --- keyboard/hhkb/Makefile | 2 +- keyboard/hhkb/Makefile.pjrc | 2 +- keyboard/hhkb/Makefile.rn42 | 2 +- keyboard/hhkb/not_supported/Makefile.iwrap | 2 +- keyboard/hhkb/not_supported/Makefile.vusb | 2 +- 5 files changed, 5 insertions(+), 5 deletions(-) (limited to 'keyboard/hhkb') diff --git a/keyboard/hhkb/Makefile b/keyboard/hhkb/Makefile index ea5a65ea29..2f87d42fb7 100644 --- a/keyboard/hhkb/Makefile +++ b/keyboard/hhkb/Makefile @@ -42,7 +42,7 @@ TARGET = hhkb_lufa # Directory common source filess exist -TMK_DIR = ../.. +TMK_DIR = ../../tmk_core # Directory keyboard dependent files exist TARGET_DIR = . diff --git a/keyboard/hhkb/Makefile.pjrc b/keyboard/hhkb/Makefile.pjrc index 53bb784cf0..7d0f8c3a9c 100644 --- a/keyboard/hhkb/Makefile.pjrc +++ b/keyboard/hhkb/Makefile.pjrc @@ -7,7 +7,7 @@ TARGET = hhkb_pjrc # Directory common source filess exist -TMK_DIR = ../.. +TMK_DIR = ../../tmk_core # Directory keyboard dependent files exist TARGET_DIR = . diff --git a/keyboard/hhkb/Makefile.rn42 b/keyboard/hhkb/Makefile.rn42 index 66bdba9174..cbb2b744c9 100644 --- a/keyboard/hhkb/Makefile.rn42 +++ b/keyboard/hhkb/Makefile.rn42 @@ -42,7 +42,7 @@ TARGET = hhkb_rn42 # Directory common source filess exist -TMK_DIR = ../.. +TMK_DIR = ../../tmk_core # Directory keyboard dependent files exist TARGET_DIR = . diff --git a/keyboard/hhkb/not_supported/Makefile.iwrap b/keyboard/hhkb/not_supported/Makefile.iwrap index 5bc94d5f6d..1614c21d75 100644 --- a/keyboard/hhkb/not_supported/Makefile.iwrap +++ b/keyboard/hhkb/not_supported/Makefile.iwrap @@ -7,7 +7,7 @@ TARGET = hhkb_iwrap # Directory common source filess exist -TMK_DIR = ../.. +TMK_DIR = ../../tmk_core # Directory keyboard dependent files exist TARGET_DIR = . diff --git a/keyboard/hhkb/not_supported/Makefile.vusb b/keyboard/hhkb/not_supported/Makefile.vusb index 61fd928896..1f8d84684b 100644 --- a/keyboard/hhkb/not_supported/Makefile.vusb +++ b/keyboard/hhkb/not_supported/Makefile.vusb @@ -7,7 +7,7 @@ TARGET = hhkb_vusb # Directory common source filess exist -TMK_DIR = ../.. +TMK_DIR = ../../tmk_core # Directory keyboard dependent files exist TARGET_DIR = . -- cgit v1.2.3 From 81fe1fda6168dcbe989acef89c089e81dff6c4a5 Mon Sep 17 00:00:00 2001 From: tmk Date: Wed, 13 May 2015 16:30:14 +0900 Subject: hhkb: Change keymap --- keyboard/hhkb/keymap_hhkb.c | 41 +++++++++++++++++++++++++++++++++++++---- 1 file changed, 37 insertions(+), 4 deletions(-) (limited to 'keyboard/hhkb') diff --git a/keyboard/hhkb/keymap_hhkb.c b/keyboard/hhkb/keymap_hhkb.c index 1fc016f8e2..86ad0f5eee 100644 --- a/keyboard/hhkb/keymap_hhkb.c +++ b/keyboard/hhkb/keymap_hhkb.c @@ -1,4 +1,4 @@ -/* +/* * HHKB Layout */ #include "keymap_common.h" @@ -40,7 +40,7 @@ const uint8_t keymaps[][MATRIX_ROWS][MATRIX_COLS] PROGMEM = { * `-----------------------------------------------------------' * | | | | | | * `-------------------------------------------' - */ + */ KEYMAP(PWR, F1, F2, F3, F4, F5, F6, F7, F8, F9, F10, F11, F12, INS, DEL, \ CAPS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,PSCR,SLCK,PAUS, UP, TRNS, BSPC, \ TRNS,VOLD,VOLU,MUTE,TRNS,TRNS,PAST,PSLS,HOME,PGUP,LEFT,RGHT,PENT, \ @@ -55,8 +55,41 @@ const uint8_t keymaps[][MATRIX_ROWS][MATRIX_COLS] PROGMEM = { */ #ifdef KEYMAP_SECTION_ENABLE const uint16_t fn_actions[] __attribute__ ((section (".keymap.fn_actions"))) = { + [0] = ACTION_LAYER_MOMENTARY(1), + [1] = ACTION_LAYER_MOMENTARY(2), + [2] = ACTION_LAYER_MOMENTARY(3), + [3] = ACTION_LAYER_MOMENTARY(4), + [4] = ACTION_LAYER_MOMENTARY(5), + [5] = ACTION_LAYER_MOMENTARY(6), + [6] = ACTION_LAYER_MOMENTARY(7), + [7] = ACTION_LAYER_TOGGLE(1), + [8] = ACTION_LAYER_TOGGLE(2), + [9] = ACTION_LAYER_TOGGLE(3), + [10] = ACTION_LAYER_TAP_TOGGLE(1), + [11] = ACTION_LAYER_TAP_TOGGLE(2), + [12] = ACTION_LAYER_TAP_TOGGLE(3), + [13] = ACTION_LAYER_TAP_KEY(1, KC_A), + [14] = ACTION_LAYER_TAP_KEY(2, KC_F), + [15] = ACTION_LAYER_TAP_KEY(3, KC_J), + [16] = ACTION_LAYER_TAP_KEY(4, KC_SPACE), + [17] = ACTION_LAYER_TAP_KEY(5, KC_SCOLON), + [18] = ACTION_LAYER_TAP_KEY(6, KC_QUOTE), + [19] = ACTION_LAYER_TAP_KEY(7, KC_SLASH), + [20] = ACTION_MODS_TAP_KEY(MOD_LSFT, KC_SPACE), + [21] = ACTION_MODS_TAP_KEY(MOD_LCTL, KC_SPACE), + [22] = ACTION_MODS_TAP_KEY(MOD_RCTL, KC_QUOTE), + [23] = ACTION_MODS_TAP_KEY(MOD_RCTL, KC_ENTER), + [24] = ACTION_MODS_TAP_KEY(MOD_LCTL, KC_ESC), + [25] = ACTION_MODS_TAP_KEY(MOD_LCTL, KC_BSPACE), + [26] = ACTION_MODS_ONESHOT(MOD_LCTL), + [27] = ACTION_MODS_TAP_KEY(MOD_LSFT, KC_ESC), + [28] = ACTION_MODS_TAP_KEY(MOD_LSFT, KC_BSPACE), + [29] = ACTION_MODS_ONESHOT(MOD_LSFT), + [30] = ACTION_MODS_TAP_KEY(MOD_RSFT, KC_ESC), + [31] = ACTION_MODS_TAP_KEY(MOD_RSFT, KC_BSPACE), +}; #else const uint16_t fn_actions[] PROGMEM = { -#endif - [0] = ACTION_LAYER_MOMENTARY(1), + [0] = ACTION_LAYER_MOMENTARY(1), }; +#endif -- cgit v1.2.3 From b085d762d5f151ce3f72d161ba2943862a02ca1e Mon Sep 17 00:00:00 2001 From: tmk Date: Wed, 13 May 2015 16:40:08 +0900 Subject: hhkb: Add build options --- keyboard/hhkb/Makefile | 4 ++++ 1 file changed, 4 insertions(+) (limited to 'keyboard/hhkb') diff --git a/keyboard/hhkb/Makefile b/keyboard/hhkb/Makefile index 2f87d42fb7..5a179bd24d 100644 --- a/keyboard/hhkb/Makefile +++ b/keyboard/hhkb/Makefile @@ -120,6 +120,10 @@ NKRO_ENABLE = yes # USB Nkey Rollover #KEYMAP_SECTION_ENABLE = yes # fixed address keymap for keymap editor #HHKB_JP = yes # HHKB JP support +#OPT_DEFS += -DNO_ACTION_TAPPING +#OPT_DEFS += -DNO_ACTION_LAYER +#OPT_DEFS += -DNO_ACTION_MACRO + # # Keymap file -- cgit v1.2.3 From a8822a16b4895e862cf26a3b64863fc082af2888 Mon Sep 17 00:00:00 2001 From: tmk Date: Wed, 13 May 2015 16:53:32 +0900 Subject: hhkb: Fix scan rate for HHKB JP #203 --- keyboard/hhkb/matrix.c | 6 ++++++ 1 file changed, 6 insertions(+) (limited to 'keyboard/hhkb') diff --git a/keyboard/hhkb/matrix.c b/keyboard/hhkb/matrix.c index fb96997944..14fae0b82c 100644 --- a/keyboard/hhkb/matrix.c +++ b/keyboard/hhkb/matrix.c @@ -132,7 +132,13 @@ uint8_t matrix_scan(void) // NOTE: KEY_STATE keep its state in 20us after KEY_ENABLE. // This takes 25us or more to make sure KEY_STATE returns to idle state. +#ifdef HHKB_JP + // Looks like JP needs faster scan due to its twice larger matrix + // or it can drop keys in fast key typing + _delay_us(30); +#else _delay_us(75); +#endif } if (matrix[row] ^ matrix_prev[row]) matrix_last_modified = timer_read32(); } -- cgit v1.2.3 From 8e7153d190b80757cb84994ecfad573914739204 Mon Sep 17 00:00:00 2001 From: tmk Date: Wed, 13 May 2015 17:26:24 +0900 Subject: hhkb: Change document --- keyboard/hhkb/doc/HHKB.txt | 21 +++++++++++---------- 1 file changed, 11 insertions(+), 10 deletions(-) (limited to 'keyboard/hhkb') diff --git a/keyboard/hhkb/doc/HHKB.txt b/keyboard/hhkb/doc/HHKB.txt index 98397b8477..3d08ceb0af 100644 --- a/keyboard/hhkb/doc/HHKB.txt +++ b/keyboard/hhkb/doc/HHKB.txt @@ -31,27 +31,28 @@ Two PCBs are connected by 15 lines(13 in case of Pro2). Vcc and GND use 3(2) lines each, other lines are for keyboard signaling. HHKB connector lines: - JP Pro2 Pro Function Description Teensy++ pins + JP Pro2 Pro Function Description TMK pin usage -------------------------------------------------------------------------------------------- 1 Vcc(5V) 5V 1 1 2 Vcc(5V) 5V 2 2 3 Vcc(5V) 5V - 3 3 4 TP1684 KEY: Low(0) when key pressed PE6 input(with pullup) - 4 4 5 TP1684 KEY_PREV: make threshold PE7 output + 3 3 4 TP1684 ~KEY: Low(0) when key is pressed PD7 input(with pullup) + 4 4 5 TP1684 HYS: High(1) when key is pressed PB7 output 5 5 6 HC4051 A(bit0)\ PB0 output 6 6 7 HC4051 B(bit1) > select row 0-7 PB1 output 7 7 8 HC4051 C(bit2)/ PB2 output 8 8 9 LS145 A(bit0)\ PB3 output 9 9 10 LS145 B(bit1) > select column 0-7 PB4 output 10 10 11 LS145 C(bit2)/ PB5 output - 11 11 12 LS145 D(enable) Low(0) enables selected column PB6 output + 11 11 12 LS145 ~D(enable) Low(0) enables selected column PB6 output 12 12 13 GND GND 13 13 14 GND GND 15 GND - 14 HC4051(Z2) ~Enable of Z2 row0-7 - 15 HC4051(Z3) ~Enable of Z3 row8-15 + 14 HC4051(Z2) ~Enable of Z2 row0-7 PC6 + 15 HC4051(Z3) ~Enable of Z3 row8-15 PC7 - NOTE: guessing pin5(KEY_PREV) may work for hysteresis of capacitive sensing. + NOTE: Probably HYS changes threshold for upstroke and makes hysteresis in the result. + NOTE: HYS should be given High(1) when previous KEY state is Low(0). NOTE: 1KOhm didn't work as pullup resistor on KEY. AVR internal pullup or 10KOhm resistor was OK. NOTE: JP has two HC4051(Z2,Z3) and line 5, 6 and 7 are connected to both of them. @@ -112,7 +113,7 @@ Matrix diagram: | <-+ | <6-------|-|-|-|-|-|-|-|--|R|-+ | 1 4 | | | <7-------|-|-|-|-|-|-|-|--|R|-+ +---V---^-+ | +-^-^-^--+ 0 1 2 3 4 5 6 7 33K*8 - KEY PREV | A B C +-----------------+ + KEY HYS | A B C +-----------------+ | | +-^----+ | | | | LS145 | Vcc | | |BU9831| | | | +-^--^--^--^------+ --- | | +------+ | | | A B C D +-------+ @@ -138,7 +139,7 @@ Matrix diagram: | | +----> <6-----------|-|-|-|-|----|R|-+ | | | | | A B C <7-----------|-|-|-|-|----|R|-+ +---V---^-+ | | +-^-^-^--+ | | | | | | - KEY PREV | | | | | | | | | | | + KEY HYS | | | | | | | | | | | | | | | +--------+ | | | | | | | | | | | HC4051 <8-----------|-|-|-|-|----|R|-+ | | | | | Z3 <9-----------|-|-|-|-|----|R|-+ @@ -192,7 +193,7 @@ Signals charts 0123456701234567 selected column 3) Wait 5us after column select, then set prev, strobe colD to spit out key status and read it. - prev _~~~~_____ 20us if previous key state is low + hys _~~~~_____ 20us if previous key state is low colD ~~~__~~~~~ 10us strobe key ~~~____~~~ 22us indicates current state of the key -- cgit v1.2.3 From c01ecce137edf2283f028fe25d64d45b6510087f Mon Sep 17 00:00:00 2001 From: tmk Date: Wed, 13 May 2015 17:31:26 +0900 Subject: Revert "hhkb: Fix bug of matrix initialization for JP" This reverts commit adfd5b92ebdc38721c89715e9071b35ecaeb79e9. --- keyboard/hhkb/hhkb_avr.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'keyboard/hhkb') diff --git a/keyboard/hhkb/hhkb_avr.h b/keyboard/hhkb/hhkb_avr.h index 4e7e070364..7ea6322c73 100644 --- a/keyboard/hhkb/hhkb_avr.h +++ b/keyboard/hhkb/hhkb_avr.h @@ -70,7 +70,7 @@ static inline void KEY_INIT(void) #ifdef HHKB_JP /* row extention for HHKB JP */ DDRC |= (1<<6|1<<7); - PORTC &= ~(1<<6|1<<7); + PORTC |= (1<<6|1<<7); #endif KEY_UNABLE(); KEY_PREV_OFF(); -- cgit v1.2.3 From d4220ac9f36209ba7e641f35181b41f84b9c98da Mon Sep 17 00:00:00 2001 From: tmk Date: Thu, 23 Jul 2015 11:57:15 +0900 Subject: hhkb: Add power saving code of matrix scan for JP --- keyboard/hhkb/hhkb_avr.h | 8 ++++++++ 1 file changed, 8 insertions(+) (limited to 'keyboard/hhkb') diff --git a/keyboard/hhkb/hhkb_avr.h b/keyboard/hhkb/hhkb_avr.h index 7ea6322c73..c3e176fa09 100644 --- a/keyboard/hhkb/hhkb_avr.h +++ b/keyboard/hhkb/hhkb_avr.h @@ -45,12 +45,20 @@ static inline void KEY_PREV_OFF(void) { (PORTB &= ~(1<<7)); } static inline void KEY_POWER_ON(void) { DDRB = 0xFF; PORTB = 0x40; // change pins output DDRD |= (1<<4); PORTD |= (1<<4); // MOS FET switch on +#ifdef HHKB_JP + DDRC |= (1<<6|1<<7); + PORTC |= (1<<6|1<<7); +#endif /* Without this wait you will miss or get false key events. */ _delay_ms(5); // wait for powering up } static inline void KEY_POWER_OFF(void) { /* input with pull-up consumes less than without it when pin is open. */ DDRB = 0x00; PORTB = 0xFF; // change pins input with pull-up +#ifdef HHKB_JP + DDRC &= ~(1<<6|1<<7); + PORTC |= (1<<6|1<<7); +#endif DDRD |= (1<<4); PORTD &= ~(1<<4); // MOS FET switch off } static inline bool KEY_POWER_STATE(void) { return PORTD & (1<<4); } -- cgit v1.2.3 From 79cf2d59aeb53f47ddb665db0eb9366c4aa73057 Mon Sep 17 00:00:00 2001 From: tmk Date: Sat, 8 Aug 2015 16:01:26 +0900 Subject: Fix #239 unresponsive keys of HHKB JP during power saving --- keyboard/hhkb/hhkb_avr.h | 8 -------- 1 file changed, 8 deletions(-) (limited to 'keyboard/hhkb') diff --git a/keyboard/hhkb/hhkb_avr.h b/keyboard/hhkb/hhkb_avr.h index c3e176fa09..7ea6322c73 100644 --- a/keyboard/hhkb/hhkb_avr.h +++ b/keyboard/hhkb/hhkb_avr.h @@ -45,20 +45,12 @@ static inline void KEY_PREV_OFF(void) { (PORTB &= ~(1<<7)); } static inline void KEY_POWER_ON(void) { DDRB = 0xFF; PORTB = 0x40; // change pins output DDRD |= (1<<4); PORTD |= (1<<4); // MOS FET switch on -#ifdef HHKB_JP - DDRC |= (1<<6|1<<7); - PORTC |= (1<<6|1<<7); -#endif /* Without this wait you will miss or get false key events. */ _delay_ms(5); // wait for powering up } static inline void KEY_POWER_OFF(void) { /* input with pull-up consumes less than without it when pin is open. */ DDRB = 0x00; PORTB = 0xFF; // change pins input with pull-up -#ifdef HHKB_JP - DDRC &= ~(1<<6|1<<7); - PORTC |= (1<<6|1<<7); -#endif DDRD |= (1<<4); PORTD &= ~(1<<4); // MOS FET switch off } static inline bool KEY_POWER_STATE(void) { return PORTD & (1<<4); } -- cgit v1.2.3 From fa33719adab1393753312d298b8c365e04e844b9 Mon Sep 17 00:00:00 2001 From: tmk Date: Wed, 21 Oct 2015 06:59:26 +0900 Subject: Add doc of HHKB original keycodes --- keyboard/hhkb/doc/HHKB_keycodes.txt | 69 +++++++++++++++++++++++++++++++++++++ 1 file changed, 69 insertions(+) create mode 100644 keyboard/hhkb/doc/HHKB_keycodes.txt (limited to 'keyboard/hhkb') diff --git a/keyboard/hhkb/doc/HHKB_keycodes.txt b/keyboard/hhkb/doc/HHKB_keycodes.txt new file mode 100644 index 0000000000..9ec85901e0 --- /dev/null +++ b/keyboard/hhkb/doc/HHKB_keycodes.txt @@ -0,0 +1,69 @@ +HHKB keycodes +============= +2015/10/03 +Looked into unclear keycodes(usages) of Fn-chording-key on HHKB. +Followings are usages of Keyboard/Keypad Page(0x07) that HHKB spits out when Fn key is down. + +## HHK mode(Off-Off) + Key Usage + ------------------------ + ⌘ / ◇ 0x78 Stop + +## Lite Ext. mode(On-Off) + + +## Mac mode(Off-On) + Key Usage + ------------------------ + Esc 0x66 Power + A 0x81 Volume Down + S 0x80 Volume Up + D 0x7F Mute + F 0x6F F20 + Delete 0x53 Num Lock and Clear + + +## Secret mode(On-On) + Key Usage + ------------------------ + Esc 0x66 Power + Q 0x78 Stop + W 0x7E Find + E 0x74 Execute + R 0x77 Select + T 0x76 Menu + Y 0x75 Help + Z 0x7A Undo + X 0x7B Cut + C 0x7C Copy + V 0x7D Paste + B 0x79 Again + + +## Matrix Key-Mode + + + Mode + ------------------------------- + Key HHK Lite Mac Secret Desc + --------------------------------------------------------------------------------------- + ⌘ / ◇ 0x78 - - - Stop + Esc - - 0x66 0x66 Power + A - - 0x81 - Volume Down + S - - 0x80 - Volume Up + D - - 0x7F - Mute + F - - 0x6F - F20 + Delete 0x2A 0x2A 0x53 0x2A Num Lock and Clear(0x53)/Backspace(0x2A) + Q - - - 0x78 Stop + W - - - 0x7E Find + E - - - 0x74 Execute + R - - - 0x77 Select + T - - - 0x76 Menu + Y - - - 0x75 Help + Z - - - 0x7A Undo + X - - - 0x7B Cut + C - - - 0x7C Copy + V - - - 0x7D Paste + B - - - 0x79 Again + +EOF -- cgit v1.2.3