diff --git a/Demos/Device/AudioInput/AudioInput.c b/Demos/Device/AudioInput/AudioInput.c
index 31b3159e01a06c3d95c675a6942387d89abe546b..93ffe0bf45e7ce8d3b533c4ed7bc98d4873c455e 100644
--- a/Demos/Device/AudioInput/AudioInput.c
+++ b/Demos/Device/AudioInput/AudioInput.c
@@ -62,6 +62,7 @@ int main(void)
 		if (Microphone_Audio_Interface.InterfaceEnabled)
 		  ProcessNextSample();
 
+		USB_Audio_USBTask(&Microphone_Audio_Interface);
 		USB_USBTask();
 	}
 }
diff --git a/Demos/Device/AudioOutput/AudioOutput.c b/Demos/Device/AudioOutput/AudioOutput.c
index 4ff2e7453f06b46c2afa97d74eddbab7923885e5..8c3bf6188722a89b0ef5327b16cb410ba9621fbe 100644
--- a/Demos/Device/AudioOutput/AudioOutput.c
+++ b/Demos/Device/AudioOutput/AudioOutput.c
@@ -62,6 +62,7 @@ int main(void)
 		if (Speaker_Audio_Interface.InterfaceEnabled)
 		  ProcessNextSample();
 
+		USB_Audio_USBTask(&Speaker_Audio_Interface);
 		USB_USBTask();
 	}
 }
diff --git a/Demos/Device/MIDI/MIDI.c b/Demos/Device/MIDI/MIDI.c
index 4fef0475415e5ff468e26289d5922f21fd681f28..8881d1dc7f16e87d5841f87481f50259ce375b5f 100644
--- a/Demos/Device/MIDI/MIDI.c
+++ b/Demos/Device/MIDI/MIDI.c
@@ -64,6 +64,7 @@ int main(void)
 	{
 		CheckJoystickMovement();
 	
+		USB_MIDI_USBTask(&Keyboard_MIDI_Interface);
 		USB_USBTask();
 	}
 }
@@ -168,3 +169,9 @@ void EVENT_USB_ConfigurationChanged(void)
 	if (!(USB_MIDI_ConfigureEndpoints(&Keyboard_MIDI_Interface)))
 	  LEDs_SetAllLEDs(LEDMASK_USB_ERROR);
 }
+
+/** Event handler for the library USB Unhandled Control Packet event. */
+void EVENT_USB_UnhandledControlPacket(void)
+{
+	USB_MIDI_ProcessControlPacket(&Keyboard_MIDI_Interface);
+}
diff --git a/LUFA/Drivers/USB/Class/Device/Audio.c b/LUFA/Drivers/USB/Class/Device/Audio.c
index acd9f6956a3c20c5ca4e2ff451711c47892e3cbb..4651bf153aadbfed07c60bd56d30b3ca0f86f7c5 100644
--- a/LUFA/Drivers/USB/Class/Device/Audio.c
+++ b/LUFA/Drivers/USB/Class/Device/Audio.c
@@ -80,6 +80,11 @@ bool USB_Audio_ConfigureEndpoints(USB_ClassInfo_Audio_t* AudioInterfaceInfo)
 	return true;
 }
 
+void USB_Audio_USBTask(USB_ClassInfo_Audio_t* AudioInterfaceInfo)
+{
+
+}
+
 int8_t USB_Audio_ReadSample8(void)
 {
 	int8_t Sample;
diff --git a/LUFA/Drivers/USB/Class/Device/MIDI.c b/LUFA/Drivers/USB/Class/Device/MIDI.c
index 42c06904bee705d4be4a6389c397f13db7006933..f96604bb6ec0814e1bc16b35e477db4ee19e6b58 100644
--- a/LUFA/Drivers/USB/Class/Device/MIDI.c
+++ b/LUFA/Drivers/USB/Class/Device/MIDI.c
@@ -30,6 +30,11 @@
 
 #include "MIDI.h"
 
+void USB_MIDI_ProcessControlPacket(USB_ClassInfo_MIDI_t* MIDIInterfaceInfo)
+{
+
+}
+
 bool USB_MIDI_ConfigureEndpoints(USB_ClassInfo_MIDI_t* MIDIInterfaceInfo)
 {
 	if (MIDIInterfaceInfo->DataINEndpointNumber)
@@ -55,6 +60,11 @@ bool USB_MIDI_ConfigureEndpoints(USB_ClassInfo_MIDI_t* MIDIInterfaceInfo)
 	return true;
 }
 
+void USB_MIDI_USBTask(USB_ClassInfo_MIDI_t* MIDIInterfaceInfo)
+{
+
+}
+
 void USB_MIDI_SendEventPacket(USB_ClassInfo_MIDI_t* MIDIInterfaceInfo, USB_MIDI_EventPacket_t* Event)
 {
 	if (!(USB_IsConnected))
diff --git a/LUFA/Drivers/USB/Class/Device/MIDI.h b/LUFA/Drivers/USB/Class/Device/MIDI.h
index 890d3bb55ab6f7e072ab32a7ee89a3bb8b36393e..d158722635b81480b75ed286c674c4ea9fb7cd4c 100644
--- a/LUFA/Drivers/USB/Class/Device/MIDI.h
+++ b/LUFA/Drivers/USB/Class/Device/MIDI.h
@@ -155,6 +155,7 @@
 		
 	/* Function Prototypes: */
 		bool USB_MIDI_ConfigureEndpoints(USB_ClassInfo_MIDI_t* MIDIInterfaceInfo);
+		void USB_MIDI_ProcessControlPacket(USB_ClassInfo_MIDI_t* MIDIInterfaceInfo);
 		void USB_MIDI_USBTask(USB_ClassInfo_MIDI_t* MIDIInterfaceInfo);
 
 		void USB_MIDI_SendEventPacket(USB_ClassInfo_MIDI_t* MIDIInterfaceInfo, USB_MIDI_EventPacket_t* Event);