<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic AN2295 bootloader fails to program the KV10 over UART in Kinetis Microcontrollers</title>
    <link>https://community.nxp.com/t5/Kinetis-Microcontrollers/AN2295-bootloader-fails-to-program-the-KV10-over-UART/m-p/351828#M17409</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hello,&lt;/P&gt;&lt;P&gt;I have been struggling to get the AN2295 FC-protocol bootloader to program or erase the KV10 over UART.&amp;nbsp; &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;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.&amp;nbsp; 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.&amp;nbsp; I have not made any modifications to the linker scripts.&amp;nbsp; I am using IAR EWARM version 7.3&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;On the PC-side, I have been trying version 10.0.13.0 of the AN2295 Universal bootloader (win_hc08sprg.exe and hc08sprg.exe).&amp;nbsp; 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 10.0.13.0.&amp;nbsp; 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.&amp;nbsp; The program prints out the following log:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: 'andale mono', times;"&gt;Bootloader protocol version: 0x08 (Kinetis, read command supported)&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: 'andale mono', times;"&gt;CRC protocol NOT supported)&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: 'andale mono', times;"&gt;Bootloader version string: KV10&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: 'andale mono', times;"&gt;System device ID: 0x14A [Kinetis K60] rev. 0&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: 'andale mono', times;"&gt;Kinetis Package: 144-pin&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: 'andale mono', times;"&gt;Number of memory blocks: 1&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: 'andale mono', times;"&gt;Memory block #1 0x00001000-0x00008000&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: 'andale mono', times;"&gt;Erase block size: 1024 bytes&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: 'andale mono', times;"&gt;Write block size: 64 bytes&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: 'andale mono', times;"&gt;Original vector table: 0x00000000-0x00003FF&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: 'andale mono', times;"&gt;New vector table: 0x000010000-0x000013FF&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: 'andale mono', times;"&gt;S19 Image Control.&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: 'andale mono', times;"&gt;Parsed S-record lines: 277 Bytes total: 4377&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: 'andale mono', times;"&gt;Source address range: 0x0000-0x2473&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: 'andale mono', times;"&gt;Memory block 0 erasing: E 0x00001000 0%&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: 'andale mono', times;"&gt;Memory is NOT erased.&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: 'andale mono', times;"&gt;Memory programming block 0: W 0x00001040 1%&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: 'andale mono', times;"&gt;Can't program block 0 at address 0x00001040&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;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.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;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.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;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?&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Fri, 16 Jan 2015 13:22:41 GMT</pubDate>
    <dc:creator>awahab</dc:creator>
    <dc:date>2015-01-16T13:22:41Z</dc:date>
    <item>
      <title>AN2295 bootloader fails to program the KV10 over UART</title>
      <link>https://community.nxp.com/t5/Kinetis-Microcontrollers/AN2295-bootloader-fails-to-program-the-KV10-over-UART/m-p/351828#M17409</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hello,&lt;/P&gt;&lt;P&gt;I have been struggling to get the AN2295 FC-protocol bootloader to program or erase the KV10 over UART.&amp;nbsp; &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;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.&amp;nbsp; 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.&amp;nbsp; I have not made any modifications to the linker scripts.&amp;nbsp; I am using IAR EWARM version 7.3&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;On the PC-side, I have been trying version 10.0.13.0 of the AN2295 Universal bootloader (win_hc08sprg.exe and hc08sprg.exe).&amp;nbsp; 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 10.0.13.0.&amp;nbsp; 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.&amp;nbsp; The program prints out the following log:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: 'andale mono', times;"&gt;Bootloader protocol version: 0x08 (Kinetis, read command supported)&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: 'andale mono', times;"&gt;CRC protocol NOT supported)&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: 'andale mono', times;"&gt;Bootloader version string: KV10&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: 'andale mono', times;"&gt;System device ID: 0x14A [Kinetis K60] rev. 0&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: 'andale mono', times;"&gt;Kinetis Package: 144-pin&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: 'andale mono', times;"&gt;Number of memory blocks: 1&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: 'andale mono', times;"&gt;Memory block #1 0x00001000-0x00008000&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: 'andale mono', times;"&gt;Erase block size: 1024 bytes&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: 'andale mono', times;"&gt;Write block size: 64 bytes&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: 'andale mono', times;"&gt;Original vector table: 0x00000000-0x00003FF&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: 'andale mono', times;"&gt;New vector table: 0x000010000-0x000013FF&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: 'andale mono', times;"&gt;S19 Image Control.&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: 'andale mono', times;"&gt;Parsed S-record lines: 277 Bytes total: 4377&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: 'andale mono', times;"&gt;Source address range: 0x0000-0x2473&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: 'andale mono', times;"&gt;Memory block 0 erasing: E 0x00001000 0%&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: 'andale mono', times;"&gt;Memory is NOT erased.&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: 'andale mono', times;"&gt;Memory programming block 0: W 0x00001040 1%&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: 'andale mono', times;"&gt;Can't program block 0 at address 0x00001040&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;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.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;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.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;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?&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 16 Jan 2015 13:22:41 GMT</pubDate>
      <guid>https://community.nxp.com/t5/Kinetis-Microcontrollers/AN2295-bootloader-fails-to-program-the-KV10-over-UART/m-p/351828#M17409</guid>
      <dc:creator>awahab</dc:creator>
      <dc:date>2015-01-16T13:22:41Z</dc:date>
    </item>
    <item>
      <title>Re: AN2295 bootloader fails to program the KV10 over UART</title>
      <link>https://community.nxp.com/t5/Kinetis-Microcontrollers/AN2295-bootloader-fails-to-program-the-KV10-over-UART/m-p/351829#M17410</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hello awahab:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I reproduced the same problem and I think it is caused by the initial CPU identification function, which uses the same UART port to print MCU description. Try commenting out that line of code and rebuild the UART_bootloader project:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;PRE __default_attr="plain" __jive_macro_name="code" class="_jivemacro_uid_14220314433838938 jive_text_macro jive_macro_code" jivemacro_uid="_14220314433838938" modifiedtitle="true"&gt;
&lt;P&gt;&lt;/P&gt;
&lt;P&gt;/* Perform processor initialization */&lt;/P&gt;
&lt;P&gt;sysinit();&lt;/P&gt;
&lt;P&gt;//cpu_identify();&lt;/P&gt;
&lt;P&gt;&lt;/P&gt;
&lt;/PRE&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;With this the bootloader worked from my side using TWR-KV10Z32.&lt;/P&gt;&lt;P&gt;&lt;BR /&gt;Regards!,&lt;BR /&gt;Jorge Gonzalez&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;-----------------------------------------------------------------------------------------------------------------------&lt;BR /&gt;Note: If this post answers your question, please click the Correct Answer button. Thank you!&lt;BR /&gt;-----------------------------------------------------------------------------------------------------------------------&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 23 Jan 2015 16:44:39 GMT</pubDate>
      <guid>https://community.nxp.com/t5/Kinetis-Microcontrollers/AN2295-bootloader-fails-to-program-the-KV10-over-UART/m-p/351829#M17410</guid>
      <dc:creator>Jorge_Gonzalez</dc:creator>
      <dc:date>2015-01-23T16:44:39Z</dc:date>
    </item>
    <item>
      <title>Re: AN2295 bootloader fails to program the KV10 over UART</title>
      <link>https://community.nxp.com/t5/Kinetis-Microcontrollers/AN2295-bootloader-fails-to-program-the-KV10-over-UART/m-p/351830#M17411</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;That did it!&amp;nbsp; Thank you for responding so quickly, Jorge.&lt;/P&gt;&lt;P&gt;Best,&lt;/P&gt;&lt;P&gt;Adam&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 30 Jan 2015 19:59:59 GMT</pubDate>
      <guid>https://community.nxp.com/t5/Kinetis-Microcontrollers/AN2295-bootloader-fails-to-program-the-KV10-over-UART/m-p/351830#M17411</guid>
      <dc:creator>awahab</dc:creator>
      <dc:date>2015-01-30T19:59:59Z</dc:date>
    </item>
  </channel>
</rss>

