diff --git a/Bootloaders/TeensyHID/Descriptors.h b/Bootloaders/TeensyHID/Descriptors.h
index f72dec2510c6af67cd14915e0bb638f1b1a602c9..8ef964d2afb20ff6690c86a44069e5430c6f357e 100644
--- a/Bootloaders/TeensyHID/Descriptors.h
+++ b/Bootloaders/TeensyHID/Descriptors.h
@@ -96,15 +96,16 @@
 		/** Vendor usage page for the Teensy++ 2.0 board */
 		#define TEENSY_USAGEPAGE_20PP     0x1C
 		
-		#if defined(USB_SERIES_2_AVR)
+		#if (defined(__AVR_AT90USB162__) || defined(__AVR_ATmega16U2__))
 			#define TEENSY_USAGEPAGE      TEENSY_USAGEPAGE_10
-		#elif defined(USB_SERIES_4_AVR)
+		#elif defined(__AVR_ATmega32U4__)
 			#define TEENSY_USAGEPAGE      TEENSY_USAGEPAGE_20
-			#define TEENSY_USAGE          TEENSY_USAGE_20
-		#elif defined(USB_SERIES_6_AVR)
+		#elif (defined(__AVR_AT90USB646__) || defined(__AVR_AT90USB647__))
 			#define TEENSY_USAGEPAGE      TEENSY_USAGEPAGE_10PP
-		#elif defined(USB_SERIES_7_AVR)
+		#elif (defined(__AVR_AT90USB1286__) || defined(__AVR_AT90USB1287__))
 			#define TEENSY_USAGEPAGE      TEENSY_USAGEPAGE_20PP
+		#else
+			#error The selected AVR model is not currently supported by the TeensyHID bootloader.
 		#endif
 
 	/* Function Prototypes: */
diff --git a/Bootloaders/TeensyHID/TeensyHID.c b/Bootloaders/TeensyHID/TeensyHID.c
index ff28927b4b93c93454f10d06f7b3317a00e934b9..ffbaca8b32f3af3998dea874cac723b8606dcf23 100644
--- a/Bootloaders/TeensyHID/TeensyHID.c
+++ b/Bootloaders/TeensyHID/TeensyHID.c
@@ -115,10 +115,10 @@ void EVENT_USB_Device_UnhandledControlRequest(void)
 			}
 			else
 			{
-				#if (SPM_PAGESIZE == 128)
-				uint16_t PageByteAddress = PageIndex;
-				#else
+				#if (FLASHEND > 0xFFFF)
 				uint32_t PageByteAddress = ((uint32_t)PageIndex << 8);
+				#else
+				uint16_t PageByteAddress = PageIndex;
 				#endif
 			
 				/* Erase the given FLASH page, ready to be programmed */
diff --git a/LUFA/ManPages/AlternativeStacks.txt b/LUFA/ManPages/AlternativeStacks.txt
index 28176ce480901d4c80e85d8fe07ae90c3f907d0f..0ce9150f5a77f80d03293c1ec6cf11c610273984 100644
--- a/LUFA/ManPages/AlternativeStacks.txt
+++ b/LUFA/ManPages/AlternativeStacks.txt
@@ -43,8 +43,8 @@
  *  via a bit-banged (emulated) version of the USB protocol. They are limited in their capabilities due to the cycles required
  *  to be dedicated to managing the USB bus, but offer a cheap way to implement USB functionality into a design.
  *
- *  - <b>Name:</b> AVR309: Software USB (<i>Objective Development</i>) \n
- *    <b>Cost:</b> Free for some uses, see website for licensing \n
+ *  - <b>Name:</b> AVR309: Software USB (<i>Atmel</i>) \n
+ *    <b>Cost:</b> Free \n
  *    <b>License:</b> None Stated \n
  *    <b>Website:</b> http://www.atmel.com/dyn/Products/app_notes.asp?family_id=607 \n
  *    <b>Description:</b> Atmel's official software USB implementation, an Application Note containing work by Igor Cesko. This