AnsweredAssumed Answered

AN2295 bootloader fails to program the KV10 over UART

Question asked by awahab on Jan 16, 2015
Latest reply on Jan 30, 2015 by awahab


I have been struggling to get the AN2295 FC-protocol bootloader to program or erase the KV10 over UART. 


I have been using the "Uart_bootloader_demo" and "Blink_Led_For_Bootloader" IAR projects included in the TWR-KV10Z32_SC sample code bundle to generate the bootloader and application binaries, respectively.  Both of the sample projects seem to include appropriate ICF linker scripts - "Uart_bootloader_demo" uses the general purpose ICF and "Blink_Led_For_Bootloader" uses a linker script with an offset.  I have not made any modifications to the linker scripts.  I am using IAR EWARM version 7.3


On the PC-side, I have been trying version of the AN2295 Universal bootloader (win_hc08sprg.exe and hc08sprg.exe).  Screenshots of later versions of this application can be seen throughout the forum, but I have not been able to find any downloadable files beyond version  After flashing the bootloader firmware onto the KV10, I am able to connect to it using the AN2295 bootloader program with "Short TRIM" checked (I am using an FTDI virtual COM port) and a data rate of 115200, which matches that specified in the bootloader firmware.  The program prints out the following log:


Bootloader protocol version: 0x08 (Kinetis, read command supported)

CRC protocol NOT supported)

Bootloader version string: KV10

System device ID: 0x14A [Kinetis K60] rev. 0

Kinetis Package: 144-pin

Number of memory blocks: 1

Memory block #1 0x00001000-0x00008000

Erase block size: 1024 bytes

Write block size: 64 bytes

Original vector table: 0x00000000-0x00003FF

New vector table: 0x000010000-0x000013FF


S19 Image Control.

Parsed S-record lines: 277 Bytes total: 4377

Source address range: 0x0000-0x2473


Memory block 0 erasing: E 0x00001000 0%

Memory is NOT erased.

Memory programming block 0: W 0x00001040 1%

Can't program block 0 at address 0x00001040


The "Bootloader", "System device ID", and "Kinetis Package" lines are incorrect since the bootloader sample code specifies that the protocol version is 0x88 (not 0x08) and I am using the Kinetis KV10 in 32-pin package (not a K60 in a 144-pin package), but I am not sure that matters since the memory-related information is correct.


I am not using the TWR-KV10Z32 hardware, but the clock and UART registers have been configured properly in the sample code, as confirmed by the successful communication between the PC-side application and the bootloader firmware.


Does anybody have a more recent version of the PC-side bootloader application or could provide some assistance for getting the AN2295 bootloader working with the KV10?