From 660809176825fedbab60ffc0cbae13c3452898cd Mon Sep 17 00:00:00 2001
From: Jean-Christophe BUDA <jean-christophe.buda@atmel.com>
Date: Fri, 3 Jul 2015 16:29:56 +0200
Subject: [PATCH] HID class fixes

---
 cores/arduino/USB/HID.cpp     | 4 +---
 cores/arduino/USB/USBCore.cpp | 2 +-
 2 files changed, 2 insertions(+), 4 deletions(-)

diff --git a/cores/arduino/USB/HID.cpp b/cores/arduino/USB/HID.cpp
index 45208b2d..edcc2167 100644
--- a/cores/arduino/USB/HID.cpp
+++ b/cores/arduino/USB/HID.cpp
@@ -190,8 +190,6 @@ bool HID_Setup(Setup& setup)
 		if (HID_GET_IDLE == r)
 		{
 			USBDevice.armSend(0, &_hid_idle, 1);
-			// RAM buffer is full, we can send data (IN)
-			USB->DEVICE.DeviceEndpoint[0].EPSTATUSSET.bit.BK1RDY = 1;
 			return true;
 		}
 	}
@@ -207,7 +205,7 @@ bool HID_Setup(Setup& setup)
 		if (HID_SET_IDLE == r)
 		{
 			_hid_idle = setup.wValueH;
-			return true;
+			return false;
 		}
 	}
 	return false;
diff --git a/cores/arduino/USB/USBCore.cpp b/cores/arduino/USB/USBCore.cpp
index 3792c85c..3baf7cc5 100644
--- a/cores/arduino/USB/USBCore.cpp
+++ b/cores/arduino/USB/USBCore.cpp
@@ -361,7 +361,7 @@ bool USBDeviceClass::handleClassInterfaceSetup(Setup& setup)
 	#if defined(HID_ENABLED)
 	if (HID_INTERFACE == i)
 	{
-		if (HID_Setup(setup) == true) {
+		if (HID_Setup(setup) == false) {
 			sendZlp(0);
 		}
 		return true;
-- 
GitLab