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 --- protocol/lufa/lufa.c | 3 +++ 1 file changed, 3 insertions(+) (limited to 'protocol/lufa') diff --git a/protocol/lufa/lufa.c b/protocol/lufa/lufa.c index 3d6b3ea00c..cdfc7bc6ad 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