Skip to content

A USB mass storage bootloader for the Stellaris Lunchpad, and other Stellaris boards

License

BSD-3-Clause, MIT licenses found

Licenses found

BSD-3-Clause
LICENSE.BSD
MIT
LICENSE.MIT
Notifications You must be signed in to change notification settings

prusnak/LM4F-MSC-bootloader

 
 

Repository files navigation

LM4F-MSC-bootloader
===================

A mass storage bootloader for the Stellaris Launchpad and other Texas Instruments LM4F chips.

It is inspired by, and similar in use to, the bootloader found on some NXP LPC chips.

It appears as a regular external drive (formatted with FAT12) when plugged into a PC, no drivers or custom software needed!

It takes up 16kB of flash memory.

Bootloader is entered when SW2 button is pressed during reset.
REMEMBER TO EDIT YOUR PROGRAM'S LINKER SCRIPT TO START THE CODE AT ADDRESS 0x4000

This software is still experimental, please report any issues!

INSTALLATION:

* Put the source in a dirctory inside stellarisware/boards/ek-lm4f120xl/
* Run make
* Flash gcc/boot_usb_msc.bin onto your Launchpad or other Stellaris board

HOW TO USE:

* Edit the linker script of the firmware you want to flash using the bootloader, so that the code starts at address 0x6000.
  usually it means you have to find this in projectname.ld:

    FLASH (rx) : ORIGIN = 0x00000000, LENGTH = 0x00040000

  and change it to:

    FLASH (rx) : ORIGIN = 0x00006000, LENGTH = 0x0003a000

  then rebuild your project

* Plug in your board while holding down SW2, or press the reset button while holding SW2, the system should recognize it as a 512kB mass storage device
  The red LED will blink when the bootloader is running

* You can download the firmware.bin found on the drive to download the contents of flash memory

* You can upload your firmware to the board by copying your firmware to the device (the first file you put on the device will be considered new firmware)

* Safely eject the drive and reset your board, it should jump to your code immediately

KNOWN ISSUES:

* On Linux, ejecting the drive will show an error, but that doesn't break anything

About

A USB mass storage bootloader for the Stellaris Lunchpad, and other Stellaris boards

Resources

License

BSD-3-Clause, MIT licenses found

Licenses found

BSD-3-Clause
LICENSE.BSD
MIT
LICENSE.MIT

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • C 99.5%
  • Shell 0.5%