From 4b69ed2280743b8e992232e6c59b46ae23906fb9 Mon Sep 17 00:00:00 2001 From: Jun Wako Date: Wed, 10 Dec 2014 15:20:32 +0900 Subject: Remove submodule USB_Host_Shield_2.0 --- protocol/usb_hid/USB_Host_Shield_2.0 | 1 - 1 file changed, 1 deletion(-) delete mode 160000 protocol/usb_hid/USB_Host_Shield_2.0 (limited to 'protocol') diff --git a/protocol/usb_hid/USB_Host_Shield_2.0 b/protocol/usb_hid/USB_Host_Shield_2.0 deleted file mode 160000 index 8bb790f83..000000000 --- a/protocol/usb_hid/USB_Host_Shield_2.0 +++ /dev/null @@ -1 +0,0 @@ -Subproject commit 8bb790f83af298b5f3e5516259c9d8ec27efe522 -- cgit v1.2.3-70-g09d2 From 0a181c7eb58b79405ee91e7fca9f827678424872 Mon Sep 17 00:00:00 2001 From: Jun Wako Date: Wed, 10 Dec 2014 15:54:24 +0900 Subject: Add submodule legitimate USB_Host_Shield_2.0 --- .gitmodules | 3 +++ protocol/usb_hid/USB_Host_Shield_2.0 | 1 + 2 files changed, 4 insertions(+) create mode 160000 protocol/usb_hid/USB_Host_Shield_2.0 (limited to 'protocol') diff --git a/.gitmodules b/.gitmodules index eef19ae08..e21f44961 100644 --- a/.gitmodules +++ b/.gitmodules @@ -1,3 +1,6 @@ [submodule "protocol/lufa/LUFA-git"] path = protocol/lufa/LUFA-git url = https://github.com/abcminiuser/lufa.git +[submodule "protocol/usb_hid/USB_Host_Shield_2.0"] + path = protocol/usb_hid/USB_Host_Shield_2.0 + url = https://github.com/felis/USB_Host_Shield_2.0.git diff --git a/protocol/usb_hid/USB_Host_Shield_2.0 b/protocol/usb_hid/USB_Host_Shield_2.0 new file mode 160000 index 000000000..2b4a56de3 --- /dev/null +++ b/protocol/usb_hid/USB_Host_Shield_2.0 @@ -0,0 +1 @@ +Subproject commit 2b4a56de3d090686f62d25ea34042759dc4352d6 -- cgit v1.2.3-70-g09d2 From c9674d388d3b018cb1dfc0a34868642be53e913c Mon Sep 17 00:00:00 2001 From: Jun Wako Date: Wed, 10 Dec 2014 23:52:38 +0900 Subject: Add USB Hub support --- converter/usb_usb/main.cpp | 10 ++++++++++ protocol/usb_hid.mk | 1 + 2 files changed, 11 insertions(+) (limited to 'protocol') diff --git a/converter/usb_usb/main.cpp b/converter/usb_usb/main.cpp index 4e655632e..0b536b05a 100644 --- a/converter/usb_usb/main.cpp +++ b/converter/usb_usb/main.cpp @@ -8,6 +8,7 @@ #include "hid.h" #include "hidboot.h" #include "parser.h" +#include "usbhub.h" // LUFA #include "lufa.h" @@ -23,6 +24,15 @@ static USB usb_host; static HIDBoot kbd(&usb_host); static KBDReportParser kbd_parser; +static USBHub hub1(&usb_host); // one hub is enough for HHKB pro2 +/* may be needed for other device with more hub +static USBHub hub2(&usb_host); +static USBHub hub3(&usb_host); +static USBHub hub4(&usb_host); +static USBHub hub5(&usb_host); +static USBHub hub6(&usb_host); +static USBHub hub7(&usb_host); +*/ static void LUFA_setup(void) { diff --git a/protocol/usb_hid.mk b/protocol/usb_hid.mk index 6914dce80..8fda76c2e 100644 --- a/protocol/usb_hid.mk +++ b/protocol/usb_hid.mk @@ -8,6 +8,7 @@ USB_HOST_SHIELD_DIR = $(USB_HID_DIR)/USB_Host_Shield_2.0 USB_HOST_SHIELD_SRC = \ $(USB_HOST_SHIELD_DIR)/Usb.cpp \ $(USB_HOST_SHIELD_DIR)/hid.cpp \ + $(USB_HOST_SHIELD_DIR)/usbhub.cpp \ $(USB_HOST_SHIELD_DIR)/parsetools.cpp \ $(USB_HOST_SHIELD_DIR)/message.cpp -- cgit v1.2.3-70-g09d2 From bb2596042428fad08509709bd9d63dbbb50e59f9 Mon Sep 17 00:00:00 2001 From: tmk Date: Wed, 24 Dec 2014 11:11:07 +0900 Subject: [ps2,terminal_usb] Quick fix for build problem --- protocol.mk | 2 ++ protocol/ps2_io_avr.c | 1 + 2 files changed, 3 insertions(+) (limited to 'protocol') diff --git a/protocol.mk b/protocol.mk index e057d1d60..d9194b2bf 100644 --- a/protocol.mk +++ b/protocol.mk @@ -15,11 +15,13 @@ endif ifdef PS2_USE_INT SRC += protocol/ps2_interrupt.c + SRC += protocol/ps2_io_avr.c OPT_DEFS += -DPS2_USE_INT endif ifdef PS2_USE_USART SRC += protocol/ps2_usart.c + SRC += protocol/ps2_io_avr.c OPT_DEFS += -DPS2_USE_USART endif diff --git a/protocol/ps2_io_avr.c b/protocol/ps2_io_avr.c index be13d6696..ed462345b 100644 --- a/protocol/ps2_io_avr.c +++ b/protocol/ps2_io_avr.c @@ -1,4 +1,5 @@ #include +#include #include /* Check port settings for clock and data line */ -- cgit v1.2.3-70-g09d2 From 06527bde4f873ffc6eb8e359fb3b150e880b89ba Mon Sep 17 00:00:00 2001 From: tmk Date: Sat, 3 Jan 2015 12:02:48 +0900 Subject: bluefruit, pjrc: Update protocols for new API --- converter/terminal_bluefruit/Makefile | 16 +--------------- converter/terminal_usb/Makefile | 15 --------------- protocol/bluefruit/bluefruit.c | 4 ++-- protocol/bluefruit/main.c | 2 +- protocol/pjrc/main.c | 3 ++- protocol/pjrc/usb_keyboard.c | 2 +- 6 files changed, 7 insertions(+), 35 deletions(-) (limited to 'protocol') diff --git a/converter/terminal_bluefruit/Makefile b/converter/terminal_bluefruit/Makefile index 83d68fc25..28b7397ba 100644 --- a/converter/terminal_bluefruit/Makefile +++ b/converter/terminal_bluefruit/Makefile @@ -83,21 +83,6 @@ COMMAND_ENABLE = yes # Commands for debug and configuration PS2_USE_INT = yes # uses external interrupt for falling edge of PS/2 clock pin #PS2_USE_BUSYWAIT = yes # uses primitive reference code -ifdef PS2_USE_USART - SRC += protocol/ps2_usart.c - OPT_DEFS += -DPS2_USE_USART -endif - -ifdef PS2_USE_INT - SRC += protocol/ps2.c - OPT_DEFS += -DPS2_USE_INT -endif - -ifdef PS2_USE_BUSYWAIT - SRC += protocol/ps2.c - OPT_DEFS += -DPS2_USE_BUSYWAIT -endif - #---------------- Programming Options -------------------------- PROGRAM_CMD = teensy_loader_cli -mmcu=$(MCU) -w -v $(TARGET).hex @@ -107,6 +92,7 @@ VPATH += $(TARGET_DIR) VPATH += $(TOP_DIR) +include $(TOP_DIR)/protocol.mk include $(TOP_DIR)/protocol/bluefruit.mk include $(TOP_DIR)/protocol.mk include $(TOP_DIR)/common.mk diff --git a/converter/terminal_usb/Makefile b/converter/terminal_usb/Makefile index 6154d8682..16df638b9 100644 --- a/converter/terminal_usb/Makefile +++ b/converter/terminal_usb/Makefile @@ -82,21 +82,6 @@ PS2_USE_USART = yes # uses hardware USART engine for PS/2 signal receive(recomen #PS2_USE_INT = yes # uses external interrupt for falling edge of PS/2 clock pin #PS2_USE_BUSYWAIT = yes # uses primitive reference code -ifdef PS2_USE_USART - SRC += protocol/ps2_usart.c - OPT_DEFS += -DPS2_USE_USART -endif - -ifdef PS2_USE_INT - SRC += protocol/ps2.c - OPT_DEFS += -DPS2_USE_INT -endif - -ifdef PS2_USE_BUSYWAIT - SRC += protocol/ps2.c - OPT_DEFS += -DPS2_USE_BUSYWAIT -endif - #---------------- Programming Options -------------------------- PROGRAM_CMD = teensy_loader_cli -mmcu=$(MCU) -w -v $(TARGET).hex diff --git a/protocol/bluefruit/bluefruit.c b/protocol/bluefruit/bluefruit.c index f991e4d04..cf26b83df 100644 --- a/protocol/bluefruit/bluefruit.c +++ b/protocol/bluefruit/bluefruit.c @@ -36,7 +36,7 @@ static void bluefruit_serial_send(uint8_t); void bluefruit_keyboard_print_report(report_keyboard_t *report) { if (!debug_keyboard) return; - dprintf("keys: "); for (int i = 0; i < REPORT_KEYS; i++) { debug_hex8(report->keys[i]); dprintf(" "); } + dprintf("keys: "); for (int i = 0; i < KEYBOARD_REPORT_KEYS; i++) { debug_hex8(report->keys[i]); dprintf(" "); } dprintf(" mods: "); debug_hex8(report->mods); dprintf(" reserved: "); debug_hex8(report->reserved); dprintf("\n"); @@ -99,7 +99,7 @@ static void send_keyboard(report_keyboard_t *report) bluefruit_trace_header(); #endif bluefruit_serial_send(0xFD); - for (uint8_t i = 0; i < REPORT_SIZE; i++) { + for (uint8_t i = 0; i < KEYBOARD_REPORT_SIZE; i++) { bluefruit_serial_send(report->raw[i]); } #ifdef BLUEFRUIT_TRACE_SERIAL diff --git a/protocol/bluefruit/main.c b/protocol/bluefruit/main.c index 871062ab1..094fdb366 100644 --- a/protocol/bluefruit/main.c +++ b/protocol/bluefruit/main.c @@ -104,7 +104,7 @@ int main(void) dprintf("Starting main loop"); while (1) { while (suspend) { - suspend_power_down(); + suspend_power_down(WDTO_120MS); if (remote_wakeup && suspend_wakeup_condition()) { usb_remote_wakeup(); } diff --git a/protocol/pjrc/main.c b/protocol/pjrc/main.c index 1ef87f865..4f87a1736 100644 --- a/protocol/pjrc/main.c +++ b/protocol/pjrc/main.c @@ -24,6 +24,7 @@ #include #include #include +#include #include #include "keyboard.h" #include "usb.h" @@ -60,7 +61,7 @@ int main(void) #endif while (1) { while (suspend) { - suspend_power_down(); + suspend_power_down(WDTO_120MS); if (remote_wakeup && suspend_wakeup_condition()) { usb_remote_wakeup(); } diff --git a/protocol/pjrc/usb_keyboard.c b/protocol/pjrc/usb_keyboard.c index 758a4edc6..4b87b5d7b 100644 --- a/protocol/pjrc/usb_keyboard.c +++ b/protocol/pjrc/usb_keyboard.c @@ -74,7 +74,7 @@ void usb_keyboard_print_report(report_keyboard_t *report) { if (!debug_keyboard) return; print("keys: "); - for (int i = 0; i < REPORT_KEYS; i++) { phex(report->keys[i]); print(" "); } + for (int i = 0; i < KEYBOARD_REPORT_KEYS; i++) { phex(report->keys[i]); print(" "); } print(" mods: "); phex(report->mods); print("\n"); } -- cgit v1.2.3-70-g09d2 From 541913029150d57e83396293d35807a16d3755e8 Mon Sep 17 00:00:00 2001 From: Jun Wako Date: Sun, 14 Dec 2014 15:52:33 +0900 Subject: Fix ps2 protocol build using ps2_io.h --- protocol/ps2_interrupt.c | 1 + protocol/ps2_usart.c | 1 + 2 files changed, 2 insertions(+) (limited to 'protocol') diff --git a/protocol/ps2_interrupt.c b/protocol/ps2_interrupt.c index 259d25400..8114442ba 100644 --- a/protocol/ps2_interrupt.c +++ b/protocol/ps2_interrupt.c @@ -43,6 +43,7 @@ POSSIBILITY OF SUCH DAMAGE. #include #include #include "ps2.h" +#include "ps2_io.h" #include "print.h" diff --git a/protocol/ps2_usart.c b/protocol/ps2_usart.c index c2d9d0a20..6936ca7b8 100644 --- a/protocol/ps2_usart.c +++ b/protocol/ps2_usart.c @@ -43,6 +43,7 @@ POSSIBILITY OF SUCH DAMAGE. #include #include #include "ps2.h" +#include "ps2_io.h" #include "print.h" -- cgit v1.2.3-70-g09d2 From 05795cb0034e885bec37f782cfc6bddcae262637 Mon Sep 17 00:00:00 2001 From: tmk Date: Wed, 26 Nov 2014 11:25:45 +0900 Subject: Compensate timer during prower down --- common/avr/suspend.c | 27 ++++++++++++++++----------- common/suspend.h | 2 +- keyboard/hhkb_rn42/MEMO.txt | 7 +++++++ keyboard/hhkb_rn42/matrix.c | 2 +- keyboard/hhkb_rn42/rn42/main.c | 2 +- protocol/lufa/lufa.c | 2 +- 6 files changed, 27 insertions(+), 15 deletions(-) (limited to 'protocol') diff --git a/common/avr/suspend.c b/common/avr/suspend.c index 66a579fd7..80243f02b 100644 --- a/common/avr/suspend.c +++ b/common/avr/suspend.c @@ -7,6 +7,7 @@ #include "backlight.h" #include "suspend_avr.h" #include "suspend.h" +#include "timer.h" #ifdef PROTOCOL_LUFA #include "lufa.h" #endif @@ -52,11 +53,13 @@ void suspend_idle(uint8_t time) * WDTO_4S * WDTO_8S */ -void suspend_power_down(uint8_t wdto) +static uint8_t wdt_timeout = 0; +static void power_down(uint8_t wdto) { #ifdef PROTOCOL_LUFA if (USB_DeviceState == DEVICE_STATE_Configured) return; #endif + wdt_timeout = wdto; // Watchdog Interrupt Mode wdt_intr_enable(wdto); @@ -67,7 +70,6 @@ void suspend_power_down(uint8_t wdto) // - prescale clock // - BOD disable // - Power Reduction Register PRR - set_sleep_mode(SLEEP_MODE_PWR_DOWN); sleep_enable(); sei(); @@ -78,6 +80,11 @@ void suspend_power_down(uint8_t wdto) wdt_disable(); } +void suspend_power_down(void) +{ + power_down(WDTO_15MS); +} + bool suspend_wakeup_condition(void) { matrix_power_up(); @@ -103,15 +110,13 @@ void suspend_wakeup_init(void) /* watchdog timeout */ ISR(WDT_vect) { - /* wakeup from MCU sleep mode */ -/* - // blink LED - static uint8_t led_state = 0; - static uint8_t led_count = 0; - led_count++; - if ((led_count & 0x07) == 0) { - led_set((led_state ^= (1< Date: Sat, 29 Nov 2014 20:47:15 +0900 Subject: Fix lufa sendchar() infinite wait loop - FrameNumber is not updated when adapter powered - can be blocked in sendchar() when pluged into AC adapter --- keyboard/hhkb_rn42/rn42/main.c | 3 ++- protocol/lufa/lufa.c | 36 ++++++++++++++++++------------------ 2 files changed, 20 insertions(+), 19 deletions(-) (limited to 'protocol') diff --git a/keyboard/hhkb_rn42/rn42/main.c b/keyboard/hhkb_rn42/rn42/main.c index a3a37c074..42b09d8c8 100644 --- a/keyboard/hhkb_rn42/rn42/main.c +++ b/keyboard/hhkb_rn42/rn42/main.c @@ -17,8 +17,8 @@ static int8_t sendchar_func(uint8_t c) { - sendchar(c); // LUFA xmit(c); // SUART + sendchar(c); // LUFA return 0; } @@ -85,6 +85,7 @@ int main(void) print("Keyboard start.\n"); while (1) { while (USB_DeviceState == DEVICE_STATE_Suspended) { + print("[s]"); suspend_power_down(); if (USB_Device_RemoteWakeupEnabled && suspend_wakeup_condition()) { USB_Device_SendRemoteWakeup(); diff --git a/protocol/lufa/lufa.c b/protocol/lufa/lufa.c index ee15b7f45..3d6b3ea00 100644 --- a/protocol/lufa/lufa.c +++ b/protocol/lufa/lufa.c @@ -148,6 +148,7 @@ static void Console_Task(void) */ void EVENT_USB_Device_Connect(void) { + print("[C]"); /* For battery powered device */ if (!USB_IsInitialized) { USB_Init(); @@ -157,6 +158,7 @@ void EVENT_USB_Device_Connect(void) void EVENT_USB_Device_Disconnect(void) { + print("[D]"); /* For battery powered device */ /* TODO: This doesn't work. After several plug in/outs can not be enumerated. if (USB_IsInitialized) { @@ -169,10 +171,12 @@ void EVENT_USB_Device_Disconnect(void) void EVENT_USB_Device_Reset(void) { + print("[R]"); } void EVENT_USB_Device_Suspend() { + print("[S]"); #ifdef SLEEP_LED_ENABLE sleep_led_enable(); #endif @@ -180,6 +184,7 @@ void EVENT_USB_Device_Suspend() void EVENT_USB_Device_WakeUp() { + print("[W]"); suspend_wakeup_init(); #ifdef SLEEP_LED_ENABLE @@ -489,37 +494,28 @@ int8_t sendchar(uint8_t c) uint8_t ep = Endpoint_GetCurrentEndpoint(); Endpoint_SelectEndpoint(CONSOLE_IN_EPNUM); if (!Endpoint_IsEnabled() || !Endpoint_IsConfigured()) { - Endpoint_SelectEndpoint(ep); - return -1; + goto ERROR_EXIT; } if (timeouted && !Endpoint_IsReadWriteAllowed()) { - Endpoint_SelectEndpoint(ep); - return - 1; + goto ERROR_EXIT; } timeouted = false; uint8_t timeout = SEND_TIMEOUT; - uint16_t prevFN = USB_Device_GetFrameNumber(); while (!Endpoint_IsReadWriteAllowed()) { - switch (USB_DeviceState) { - case DEVICE_STATE_Unattached: - case DEVICE_STATE_Suspended: - return -1; + if (USB_DeviceState != DEVICE_STATE_Configured) { + goto ERROR_EXIT; } if (Endpoint_IsStalled()) { - Endpoint_SelectEndpoint(ep); - return -1; + goto ERROR_EXIT; } - if (prevFN != USB_Device_GetFrameNumber()) { - if (!(timeout--)) { - timeouted = true; - Endpoint_SelectEndpoint(ep); - return -1; - } - prevFN = USB_Device_GetFrameNumber(); + if (!(timeout--)) { + timeouted = true; + goto ERROR_EXIT; } + _delay_ms(1); } Endpoint_Write_8(c); @@ -530,6 +526,9 @@ int8_t sendchar(uint8_t c) Endpoint_SelectEndpoint(ep); return 0; +ERROR_EXIT: + Endpoint_SelectEndpoint(ep); + return -1; } #else int8_t sendchar(uint8_t c) @@ -587,6 +586,7 @@ int main(void) print("Keyboard start.\n"); while (1) { while (USB_DeviceState == DEVICE_STATE_Suspended) { + print("[s]"); suspend_power_down(); if (USB_Device_RemoteWakeupEnabled && suspend_wakeup_condition()) { USB_Device_SendRemoteWakeup(); -- cgit v1.2.3-70-g09d2 From ebe437325872045e0b99469f83cb9e877e98112c Mon Sep 17 00:00:00 2001 From: tmk Date: Wed, 3 Dec 2014 15:50:02 +0900 Subject: Fix power saving while USB suspended - doesn't pwoer save while Bluetooth turns on --- keyboard/hhkb_rn42/hhkb_avr.h | 4 +++- keyboard/hhkb_rn42/matrix.c | 21 ++++++++++----------- keyboard/hhkb_rn42/rn42/main.c | 14 +++++++++++--- protocol/lufa/lufa.c | 3 +++ 4 files changed, 27 insertions(+), 15 deletions(-) (limited to 'protocol') diff --git a/keyboard/hhkb_rn42/hhkb_avr.h b/keyboard/hhkb_rn42/hhkb_avr.h index f007d7667..0321977d1 100644 --- a/keyboard/hhkb_rn42/hhkb_avr.h +++ b/keyboard/hhkb_rn42/hhkb_avr.h @@ -53,9 +53,11 @@ static inline void KEY_POWER_OFF(void) { DDRB = 0x00; PORTB = 0xFF; // change pins input with pull-up DDRD |= (1<<4); PORTD &= ~(1<<4); // MOS FET switch off } +static inline bool KEY_POWER_STATE(void) { return PORTD & (1<<4); } #else static inline void KEY_POWER_ON(void) {} static inline void KEY_POWER_OFF(void) {} +static inline bool KEY_POWER_STATE(void) { return true; } #endif static inline void KEY_INIT(void) { @@ -73,7 +75,7 @@ static inline void KEY_INIT(void) KEY_UNABLE(); KEY_PREV_OFF(); - KEY_POWER_ON(); + KEY_POWER_OFF(); } static inline void KEY_SELECT(uint8_t ROW, uint8_t COL) { diff --git a/keyboard/hhkb_rn42/matrix.c b/keyboard/hhkb_rn42/matrix.c index 22becd105..fb9699794 100644 --- a/keyboard/hhkb_rn42/matrix.c +++ b/keyboard/hhkb_rn42/matrix.c @@ -35,7 +35,6 @@ along with this program. If not, see . // matrix power saving #define MATRIX_POWER_SAVE 10000 static uint32_t matrix_last_modified = 0; -static bool matrix_power = true; // matrix state buffer(1:on, 0:off) static matrix_row_t *matrix; @@ -80,7 +79,8 @@ uint8_t matrix_scan(void) matrix_prev = matrix; matrix = tmp; - matrix_power_up(); + // power on + if (!KEY_POWER_STATE()) KEY_POWER_ON(); for (uint8_t row = 0; row < MATRIX_ROWS; row++) { for (uint8_t col = 0; col < MATRIX_COLS; col++) { KEY_SELECT(row, col); @@ -136,7 +136,14 @@ uint8_t matrix_scan(void) } if (matrix[row] ^ matrix_prev[row]) matrix_last_modified = timer_read32(); } - matrix_power_down(); + // power off + if (KEY_POWER_STATE() && + (USB_DeviceState == DEVICE_STATE_Suspended || + USB_DeviceState == DEVICE_STATE_Unattached ) && + timer_elapsed32(matrix_last_modified) > MATRIX_POWER_SAVE) { + KEY_POWER_OFF(); + suspend_power_down(); + } return 1; } @@ -176,16 +183,8 @@ void matrix_print(void) } void matrix_power_up(void) { - if (matrix_power) return; KEY_POWER_ON(); - matrix_power = true; } void matrix_power_down(void) { - if (!matrix_power) return; - // doesn't power save while USB connection is active - if (USB_DeviceState != DEVICE_STATE_Unattached) return; - if (timer_elapsed32(matrix_last_modified) <= MATRIX_POWER_SAVE) return; KEY_POWER_OFF(); - suspend_power_down(); - matrix_power = false; } diff --git a/keyboard/hhkb_rn42/rn42/main.c b/keyboard/hhkb_rn42/rn42/main.c index 42b09d8c8..83d995038 100644 --- a/keyboard/hhkb_rn42/rn42/main.c +++ b/keyboard/hhkb_rn42/rn42/main.c @@ -63,7 +63,7 @@ int main(void) USB_USBTask(); #endif } - print("USB configured.\n"); + print("\nUSB init\n"); rn42_init(); rn42_task_init(); @@ -82,10 +82,18 @@ int main(void) sleep_led_init(); #endif - print("Keyboard start.\n"); + print("Keyboard start\n"); while (1) { - while (USB_DeviceState == DEVICE_STATE_Suspended) { + while (rn42_rts() && // RN42 is off + USB_DeviceState == DEVICE_STATE_Suspended) { print("[s]"); + matrix_power_down(); + suspend_power_down(); + suspend_power_down(); + suspend_power_down(); + suspend_power_down(); + suspend_power_down(); + suspend_power_down(); suspend_power_down(); if (USB_Device_RemoteWakeupEnabled && suspend_wakeup_condition()) { USB_Device_SendRemoteWakeup(); diff --git a/protocol/lufa/lufa.c b/protocol/lufa/lufa.c index 3d6b3ea00..cdfc7bc6a 100644 --- a/protocol/lufa/lufa.c +++ b/protocol/lufa/lufa.c @@ -151,6 +151,7 @@ void EVENT_USB_Device_Connect(void) print("[C]"); /* For battery powered device */ if (!USB_IsInitialized) { + USB_Disable(); USB_Init(); USB_Device_EnableSOFEvents(); } @@ -160,6 +161,7 @@ void EVENT_USB_Device_Disconnect(void) { print("[D]"); /* For battery powered device */ + USB_IsInitialized = false; /* TODO: This doesn't work. After several plug in/outs can not be enumerated. if (USB_IsInitialized) { USB_Disable(); // Disable all interrupts @@ -177,6 +179,7 @@ void EVENT_USB_Device_Reset(void) void EVENT_USB_Device_Suspend() { print("[S]"); + matrix_power_down(); #ifdef SLEEP_LED_ENABLE sleep_led_enable(); #endif -- cgit v1.2.3-70-g09d2 From 1cda7b79fbae90b3dc40ac862f3c14bfd2f1f679 Mon Sep 17 00:00:00 2001 From: tmk Date: Mon, 19 Jan 2015 10:35:06 +0900 Subject: Fix typo 'keyobard' #166 --- converter/adb_usb/README.md | 2 +- keyboard/hhkb/rn42/MEMO.txt | 2 +- protocol/adb.c | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) (limited to 'protocol') diff --git a/converter/adb_usb/README.md b/converter/adb_usb/README.md index defc477e2..21ad318c1 100644 --- a/converter/adb_usb/README.md +++ b/converter/adb_usb/README.md @@ -88,7 +88,7 @@ modifiers except for GUI key(Windows/Command). And most ADB keyboard has no diodes in its matrix so they are not NKRO, though ADB protocol itself supports it. See protocol/adb.c for more info. -If keyobard has ISO layout you need to use ISO keymap with `make KEYMAP=iso`. With ANSI +If keyboard has ISO layout you need to use ISO keymap with `make KEYMAP=iso`. With ANSI keymap you will suffer from swapped keys problem. https://github.com/tmk/tmk_keyboard/issues/35 diff --git a/keyboard/hhkb/rn42/MEMO.txt b/keyboard/hhkb/rn42/MEMO.txt index f772c4cb5..0363c2f43 100644 --- a/keyboard/hhkb/rn42/MEMO.txt +++ b/keyboard/hhkb/rn42/MEMO.txt @@ -161,7 +161,7 @@ TROUBLE SHOOT 07/16 After fix of voltage dividor on GPIO6, had a trouble that it could not send a char to BT module, though could receive. Found R8 had wrong 1K resistor and changed to 10K, after that it can send to the module again. Not sure how it had sent with the wrong 1K before. -07/18 On Linux, had an USB related trouble; keyobard or console didn't work for some reason. Changing PID cured this problem. Very annoying, took very long time before resolved it. +07/18 On Linux, had an USB related trouble; keyboard or console didn't work for some reason. Changing PID cured this problem. Very annoying, took very long time before resolved it. 12/07 rn42_rts() read 1 every time. R12 broke in open mode(no coductive), idk why, too much heat with soldering? and PF1 pin was not soldered. It resolved with resoldering PF1 and new resistor on R12. diff --git a/protocol/adb.c b/protocol/adb.c index f57afac93..bbff66df0 100644 --- a/protocol/adb.c +++ b/protocol/adb.c @@ -360,7 +360,7 @@ Commands 3: mice Registers: - 0: application(keyobard uses this to store its data.) + 0: application(keyboard uses this to store its data.) 1: application 2: application(keyboard uses this for LEDs and state of modifiers) 3: status and command -- cgit v1.2.3-70-g09d2 From adf7b56e6fe066992e75bf0c3330d94a7b39d97d Mon Sep 17 00:00:00 2001 From: Jack Humbert Date: Fri, 23 Jan 2015 12:13:06 -0500 Subject: subproject commit? --- protocol/usb_hid/USB_Host_Shield_2.0 | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'protocol') diff --git a/protocol/usb_hid/USB_Host_Shield_2.0 b/protocol/usb_hid/USB_Host_Shield_2.0 index 2b4a56de3..8bb790f83 160000 --- a/protocol/usb_hid/USB_Host_Shield_2.0 +++ b/protocol/usb_hid/USB_Host_Shield_2.0 @@ -1 +1 @@ -Subproject commit 2b4a56de3d090686f62d25ea34042759dc4352d6 +Subproject commit 8bb790f83af298b5f3e5516259c9d8ec27efe522 -- cgit v1.2.3-70-g09d2 From abf482de8e62880f27c377c2bdbcb664fda0df0b Mon Sep 17 00:00:00 2001 From: Jun Wako Date: Mon, 26 Jan 2015 11:25:22 +0900 Subject: Fix call parameter of suspend_power_down() --- protocol/bluefruit/main.c | 2 +- protocol/pjrc/main.c | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) (limited to 'protocol') diff --git a/protocol/bluefruit/main.c b/protocol/bluefruit/main.c index 094fdb366..871062ab1 100644 --- a/protocol/bluefruit/main.c +++ b/protocol/bluefruit/main.c @@ -104,7 +104,7 @@ int main(void) dprintf("Starting main loop"); while (1) { while (suspend) { - suspend_power_down(WDTO_120MS); + suspend_power_down(); if (remote_wakeup && suspend_wakeup_condition()) { usb_remote_wakeup(); } diff --git a/protocol/pjrc/main.c b/protocol/pjrc/main.c index 4f87a1736..e7bdcc059 100644 --- a/protocol/pjrc/main.c +++ b/protocol/pjrc/main.c @@ -61,7 +61,7 @@ int main(void) #endif while (1) { while (suspend) { - suspend_power_down(WDTO_120MS); + suspend_power_down(); if (remote_wakeup && suspend_wakeup_condition()) { usb_remote_wakeup(); } -- cgit v1.2.3-70-g09d2