diff --git a/Bootloaders/TeensyHID/makefile b/Bootloaders/TeensyHID/makefile
index 0895222a418bea304a8c966e796b7fd2f79ef884..10b0ebb068456df7adb759c7ec7cce35f70d6ce4 100644
--- a/Bootloaders/TeensyHID/makefile
+++ b/Bootloaders/TeensyHID/makefile
@@ -110,7 +110,7 @@ LUFA_PATH = ../..
 # LUFA library compile-time options
 LUFA_OPTS  = -D USB_DEVICE_ONLY
 LUFA_OPTS += -D DEVICE_STATE_AS_GPIOR=0
-LUFA_OPTS += -D FIXED_CONTROL_ENDPOINT_SIZE=64
+LUFA_OPTS += -D FIXED_CONTROL_ENDPOINT_SIZE=8
 LUFA_OPTS += -D FIXED_NUM_CONFIGURATIONS=1
 LUFA_OPTS += -D USE_RAM_DESCRIPTORS
 LUFA_OPTS += -D USE_STATIC_OPTIONS="(USB_DEVICE_OPT_FULLSPEED | USB_OPT_REG_ENABLED | USB_OPT_AUTO_PLL)"
diff --git a/LUFA/Drivers/USB/LowLevel/DevChapter9.c b/LUFA/Drivers/USB/LowLevel/DevChapter9.c
index 7d9e81502c4360f3d3e57b90168f063ac5024547..17a5fd4714b5f17e38553ac7cf7677bdd4663d39 100644
--- a/LUFA/Drivers/USB/LowLevel/DevChapter9.c
+++ b/LUFA/Drivers/USB/LowLevel/DevChapter9.c
@@ -323,7 +323,7 @@ static void USB_Device_GetStatus(void)
 #endif
 #if !defined(CONTROL_ONLY_DEVICE)
 		case (REQDIR_DEVICETOHOST | REQTYPE_STANDARD | REQREC_ENDPOINT):
-			Endpoint_SelectEndpoint(USB_ControlRequest.wIndex & 0xFF);
+			Endpoint_SelectEndpoint((uint8_t)USB_ControlRequest.wIndex & ENDPOINT_EPNUM_MASK);
 
 			CurrentStatus = Endpoint_IsStalled();
 
@@ -344,7 +344,7 @@ static void USB_Device_GetStatus(void)
 }
 
 static void USB_Device_ClearSetFeature(void)
-{	
+{
 	switch (USB_ControlRequest.bmRequestType & CONTROL_REQTYPE_RECIPIENT)
 	{
 #if !defined(NO_DEVICE_REMOTE_WAKEUP)			
@@ -367,18 +367,18 @@ static void USB_Device_ClearSetFeature(void)
 
 				Endpoint_SelectEndpoint(EndpointIndex);
 
-				if (Endpoint_IsEnabled())
-				{				
-					if (USB_ControlRequest.bRequest == REQ_SetFeature)
-					{
-						Endpoint_StallTransaction();
-					}
-					else
-					{
-						Endpoint_ClearStall();
-						Endpoint_ResetFIFO(EndpointIndex);
-						Endpoint_ResetDataToggle();
-					}					
+				if (!(Endpoint_IsEnabled()))
+				  return;
+
+				if (USB_ControlRequest.bRequest == REQ_SetFeature)
+				{
+					Endpoint_StallTransaction();
+				}
+				else
+				{
+					Endpoint_ClearStall();
+					Endpoint_ResetFIFO(EndpointIndex);
+					Endpoint_ResetDataToggle();
 				}
 			}
 			
diff --git a/LUFA/Drivers/USB/LowLevel/Template/Template_Endpoint_Control_W.c b/LUFA/Drivers/USB/LowLevel/Template/Template_Endpoint_Control_W.c
index 70560cf46da89161e85d26fa38f9da33c2be8db8..7868060fe5e35644fdd77987f9ebd80069a8ef2f 100644
--- a/LUFA/Drivers/USB/LowLevel/Template/Template_Endpoint_Control_W.c
+++ b/LUFA/Drivers/USB/LowLevel/Template/Template_Endpoint_Control_W.c
@@ -21,7 +21,7 @@ uint8_t TEMPLATE_FUNC_NAME (const void* Buffer, uint16_t Length)
 		  
 		if (Endpoint_IsINReady())
 		{
-			uint16_t BytesInEndpoint = Endpoint_BytesInEndpoint();
+			uint8_t BytesInEndpoint = Endpoint_BytesInEndpoint();
 		
 			while (Length && (BytesInEndpoint < USB_ControlEndpointSize))
 			{
diff --git a/LUFA/ManPages/ChangeLog.txt b/LUFA/ManPages/ChangeLog.txt
index d88e6a229a897b316c44d2a63e91cd8d0e3d79fd..57093aeb6c6ee00f0974ed52666185f2a3d36dec 100644
--- a/LUFA/ManPages/ChangeLog.txt
+++ b/LUFA/ManPages/ChangeLog.txt
@@ -41,6 +41,7 @@
   *  - Fixed Still Image Host class driver not resetting the transaction ID when a new session is opened, fixed driver not sending
   *    a valid session ID to the device
   *  - Removed invalid dfu and flip related targets from the bootloaders - bootloaders can only be replaced with an external programmer
+  *  - Fixed Set/Clear Feature requests directed to a non-configured endpoint not returning a stall to the host
   *
   *  \section Sec_ChangeLog100219 Version 100219
   *
diff --git a/Projects/LEDNotifier/makefile b/Projects/LEDNotifier/makefile
index 20cd598a68761afb4b48b33776fca26088bb9a86..7e49178a5aa749215ff7a5ad67df76277b44e6bf 100644
--- a/Projects/LEDNotifier/makefile
+++ b/Projects/LEDNotifier/makefile
@@ -60,7 +60,7 @@
 
 
 # MCU name
-MCU = at90usb646
+MCU = at90usb1287
 
 
 # Target board (see library "Board Types" documentation, NONE for projects not requiring