diff --git a/Bootloaders/TeensyHID/Descriptors.c b/Bootloaders/TeensyHID/Descriptors.c index d421d90f42..52d6c737a0 100644 --- a/Bootloaders/TeensyHID/Descriptors.c +++ b/Bootloaders/TeensyHID/Descriptors.c @@ -51,7 +51,7 @@ USB_Descriptor_HIDReport_Datatype_t HIDReport[] = 0x0a, 0x19, 0x00, /* Usage (Vendor Defined) */ 0x75, 0x08, /* Report Size (8) */ #if (SPM_PAGESIZE == 128) /* Report Count (SPM_PAGESIZE + 2) */ - 0x95, (SPM_PAGESIZE + 2) + 0x95, (SPM_PAGESIZE + 2), #else 0x96, ((SPM_PAGESIZE + 2) & 0xFF), ((SPM_PAGESIZE + 2) >> 8), #endif diff --git a/Bootloaders/TeensyHID/TeensyHID.c b/Bootloaders/TeensyHID/TeensyHID.c index 4e287bcf42..b93be6d182 100644 --- a/Bootloaders/TeensyHID/TeensyHID.c +++ b/Bootloaders/TeensyHID/TeensyHID.c @@ -120,7 +120,11 @@ void EVENT_USB_Device_UnhandledControlRequest(void) boot_spm_busy_wait(); /* Write each of the FLASH page's bytes in sequence */ - for (uint16_t PageByte = 0; PageByte < SPM_PAGESIZE; PageByte += 2) + #if (SPM_PAGESIZE == 128) + for (uint8_t PageByte = 0; PageByte < SPM_PAGESIZE; PageByte += 2) + #else + for (uint16_t PageByte = 0; PageByte < SPM_PAGESIZE; PageByte += 2) + #endif { /* Check if endpoint is empty - if so clear it and wait until ready for next packet */ if (!(Endpoint_BytesInEndpoint())) diff --git a/Bootloaders/TeensyHID/makefile b/Bootloaders/TeensyHID/makefile index 0d12374b5e..404b55f9c8 100644 --- a/Bootloaders/TeensyHID/makefile +++ b/Bootloaders/TeensyHID/makefile @@ -48,7 +48,7 @@ # MCU name -MCU = at90usb1287 +MCU = atmega32u4 # Target board (see library "Board Types" documentation, NONE for projects not requiring @@ -86,7 +86,7 @@ F_CLOCK = $(F_CPU) # Starting byte address of the bootloader -BOOT_START = 0x1e000 +BOOT_START = 0x7000 # Output format. (can be srec, ihex, binary)