USB MSD device bootloader revision for FRDM-K64F (IAR)

Showing results for 
Search instead for 
Did you mean: 

USB MSD device bootloader revision for FRDM-K64F (IAR)

No ratings

USB MSD device bootloader revision for FRDM-K64F (IAR)

This document is a supplement for USB MSC device bootloader revision for FRDM-KL25Z (IAR) written by Kai Liu and describes the bootloader support for FRDM-K64F. FTFE support, board specific and MCU specific code was added to the initial software. This porting work was done for connectivity purposes but it can be used as support for FRDM-K64F board. Please refer to USB-KW24D512  MSD Bootloader to find out how to use this bootloader, binary files upload and other restrictions.

The bootloader has conditional jump to user application. The condition is the state of the SW2 button (PTC6). If the button is pressed (PTC6 grounded) during reset, the bootloader sequence will start, installing BOOTLOADER drive. Else if the button is released during reset, the SP and PC will be updated from address 0xC000. This means, the user application has to be designed so as to have 0xC000 application start address. If a valid SP and PC value is found at address 0xC000, the user application is launched. The bootloader application is located in the flash memory of the MK64FN1M0VLL12 microcontroller, from address 0x0000 to 0xBFFF, so the user application should not access this memory region.

The bootloader software was tested under Microsoft Windows 10, Microsoft Windows 8, Microsoft Windows 7 and Ubuntu 14.04 operating systems.

Attached files:

  • USB_MSD_Bootloader.bin – boolader binary file for FRDM-K64;
  • Pflash_1024KB_0xC000.icf – IAR linker file for user application development;
  • Demos.7z - user application demo S record files for FRDM-K64F (got from Kinetis SDK demo list).
Tags (1)

Hi Andrei,

I need to implement the USB MSD device bootloader on a custom board based on the K24FN1M device under the IAR toolchain.  This device has an identical memory organization as the K64 I was wondering if you would like to share your project files?  If not then could you please advice on the approach I should take.  This is what I think I should do:

1.  Port AN4379 for the TWR-K60 project to the IAR EWB - Do you have a guide for this

2.  Port TWR-K60 to the TWR-K64 -  This I can do no prob

3.  Port TWR-K64 to my custom board K24 - This also

Any advise on versions of the bootloader / usb stack I should use / any gotchas?


Version history
Revision #:
1 of 1
Last update:
‎10-24-2014 07:20 AM
Updated by: