Developer’s Serial Bootloader.

Showing results for 
Search instead for 
Did you mean: 

Developer’s Serial Bootloader.

No ratings

Developer’s Serial Bootloader.

for M68HC08, HCS08, ColdFire and Kinetis MCUs

by: Pavel Lajsner, Pavel Krenek, Petr Gargulak
Freescale Czech System Center
Roznov p.R., Czech Republic

The developer's serial bootloader offers to user easiest possible way how to update existing firmware on most of Freescale microcontrollers in-circuit. In-circuit programming is not intended to replace any of debuging and developing tool but it serves only as simple option of embedded system reprograming via serial asynchronous port or USB. The developer’s serial bootloader supported microcotrollers includes 8-bit families HC08, HCS08 and 32-bit families ColdFire, Kinetis. New Kinetis families include support for K series and L series.

This application note is for embedded-software developers interested in alternative reprogramming tools. Because of its ability to modify MCU memory in-circuit, the serial bootloader is a utility that may be useful in developing applications.

The developer’s serial bootloader is a complementary utility for either demo purposes or applications originally developed using MMDS and requiring minor modifications to be done in-circuit. The serial bootloader offers a zero-cost solution to applications already equipped with a serial interface and SCI pins available on a connector. This document also describes other programming techniques:

  • FLASH reprogramming using ROM routines
  • Simple software SCI
  • Software for USB (HC08JW, HCS08JM and MCF51JM MCUs)
  • Use of the internal clock generator
  • PLL clock programming
  • EEPROM programming (AS/AZ HC08 families)
  • CRC protection of serial protocol option


The Master applications user guides: Section 10, Master applications user guides.
The description of Kinetis version of protocol including the changes in user application: Section 7, FC Protocol, Version 5, Kinetis.
The quick start guide how to modify the user Kinetis application to be ready for AN2295 bootloader: Section 7.8, Quick guide: How to prepare the user Kinetis application for AN2295 bootloader.

Full application note and  software attached.


It would be fantastic if a Codewarrior 10.x version were to be available. I am having a little difficulty figuring out the conversion. Linker files, etc.

Thank you very much for posting this.


I am struggling a little trying to convert this over to Codewarrior 10.2 and a K70. Has there been any work done on that yet? Or even a CW10.3 version?

Same here. I am struggling to convert this over to CW 10.3 for the TWR-K20D50M using either CWC-compiler or the GNU-compiler.

Has anyone succeeded with that yet?

Is there some gays to use this docment to do it sucessful

I heard freescale was suppose to release the software for the kinetis but I have not seen it.

Still waiting.

I use AN2295 for Kinetis KL25Z FRDM as bootloader. I can build it successfully, but its debugger reports following message:

The stack plug-in failed to set a breakpoint on "main". The stack window will not be able to display stack contents. You can change this setting in the Tools>Options dialog box.

Actually I can not find main(void), but I do find __main(void) in bootloader.c

How can I fix it?

It covers too many micros in one package. I doubt if you guys have enough time to test the code.


classic main function is not included in the bootloader source code, we used __main as you mentioned. This function has the same functionality.

Hi All,

New version of the bootloader includes support for CodeWarrior 10.3 for all Kinetis families will be available in the next weeks.

Pavel Krenek

AN2295 developer

Actually I tried to enforce EWARM to jump to __main instead of main, but debugger report error as well. I forgot to mentioned in my previous post.

I know supporting different compilers + mcu + boards + configurations are messy and difficult work.

CodeWarrior 10.4 is out.

Any idea when the Serial Bootloader for Kinetis will be available?




Anyone know when it will be available the Serial Bootloader for Kinetis, for CodeWarrior 10.3?

Thank you.


Hi All,

Is it available for Kinetis?



Yes it is available for Kinetis K, L and M series.

pavel.krenek schrieb:

Hi All,

New version of the bootloader includes support for CodeWarrior 10.3 for all Kinetis families will be available in the next weeks.

Pavel Krenek

AN2295 developer

Anything new?

It would be very useful to have a CW10.3 / CW10.4 version for GCC available!

Where I can find this bootloader for CW? I need implement it on KwikStick its running on K40X256VLQ. I have downloaded this version for IAR and can build it with iar but can't build debug version, so any help is good from you guys. When I try to build debug version with iar I get this error "

Error[Li005]: no definition for "main" [program entry]

Error[Lp014]: cannot fit "Section .text (bootloader.o #21)" (min size 0x5a0, alignment 0x4) into any of the ranges <[0x00000040-0x000003ff], 


Error while running Linker


I tried to edit project->options->debugger->runto __main but with no success.

Is there any support for the 9s12 parts?  It would seem to be a good fit.


Hi, link is broken, can you fix it please?

Version history
Revision #:
1 of 1
Last update:
‎09-24-2012 01:47 PM
Updated by: