<?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 Re: How does S32 Design studio update MCU firmware for S32K144 in S32 Design Studio</title>
    <link>https://community.nxp.com/t5/S32-Design-Studio/How-does-S32-Design-studio-update-MCU-firmware-for-S32K144/m-p/781187#M3060</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;it is again task for custom boot loader. Second option may be implementing JTAG on your Master MCU and re-use for example&amp;nbsp;&lt;A class="link-titled" href="http://openocd.org/" title="http://openocd.org/"&gt;Open On-Chip Debugger&lt;/A&gt;&amp;nbsp;&amp;nbsp;with reduced functionality. This is the same way how S32K144 EVB is designed (OpenSDA on on Kinetis K20).&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Jiri&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Fri, 24 Nov 2017 13:54:26 GMT</pubDate>
    <dc:creator>jiri_kral</dc:creator>
    <dc:date>2017-11-24T13:54:26Z</dc:date>
    <item>
      <title>How does S32 Design studio update MCU firmware for S32K144</title>
      <link>https://community.nxp.com/t5/S32-Design-Studio/How-does-S32-Design-studio-update-MCU-firmware-for-S32K144/m-p/781184#M3057</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I am writing MCU firmware update software for S32K144. Can I get some guide on the logic followed inside S32 Design studio&amp;nbsp;while updating ELF file to P-flash(program flash).&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;For example:&lt;/P&gt;&lt;P&gt;a. How the boot loader is flashed for the first time and to which address in P-flash.&lt;/P&gt;&lt;P&gt;b. How boot loader&amp;nbsp;updates MCU application firmware to P-flash and to which memory address.&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I could flash ELF file of 1MB to S32K144. I understand P-flash size in S32K144 is 512KB. How this is possible?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thanks&lt;/P&gt;&lt;P&gt;Mohan&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 17 Nov 2017 02:31:17 GMT</pubDate>
      <guid>https://community.nxp.com/t5/S32-Design-Studio/How-does-S32-Design-studio-update-MCU-firmware-for-S32K144/m-p/781184#M3057</guid>
      <dc:creator>mrajanna</dc:creator>
      <dc:date>2017-11-17T02:31:17Z</dc:date>
    </item>
    <item>
      <title>Re: How does S32 Design studio update MCU firmware for S32K144</title>
      <link>https://community.nxp.com/t5/S32-Design-Studio/How-does-S32-Design-studio-update-MCU-firmware-for-S32K144/m-p/781185#M3058</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Mohan,&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;For reference - you can look at bootloader example - part of S32DS installation.&amp;nbsp; This example uses RAppID tool -&amp;nbsp;&lt;A class="link-titled" href="https://www.nxp.com/webapp/Download?colCode=RAPPID_BOOTLOADER_UTILITY&amp;amp;appType=license" title="https://www.nxp.com/webapp/Download?colCode=RAPPID_BOOTLOADER_UTILITY&amp;amp;appType=license"&gt;https://www.nxp.com/webapp/Download?colCode=RAPPID_BOOTLOADER_UTILITY&amp;amp;appType=license&lt;/A&gt;&amp;nbsp;.&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Basically - boot loader for S32K144 is standard application with these features:&lt;/P&gt;&lt;P&gt;- check if firmware exists&amp;nbsp;&lt;/P&gt;&lt;P&gt;- communication interface on some port (can/uart//ethernet/whatever)&lt;/P&gt;&lt;P&gt;- data parser (srec or any other format)&lt;/P&gt;&lt;P&gt;- flashing algorithm&lt;/P&gt;&lt;P&gt;- optional - cryptography engine&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;If you want write your own bootloader - its completely up to you how to define "existing firmware", firmware update request (for example pressing button for more than 3 sec or magic number on communication line..) and of course you need to maintain memory spaces (to avoid rewriting boot loader itself by firmware).&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;About second question - you can start with elf file description -&amp;nbsp;&lt;A class="link-titled" href="https://en.wikipedia.org/wiki/Executable_and_Linkable_Format" title="https://en.wikipedia.org/wiki/Executable_and_Linkable_Format"&gt;Executable and Linkable Format - Wikipedia&lt;/A&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;So - the elf file is way bigger than binary data because it contain additional info. Into MCU flash is written only raw binary data taken from elf file.&amp;nbsp;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Jiri&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 20 Nov 2017 08:27:53 GMT</pubDate>
      <guid>https://community.nxp.com/t5/S32-Design-Studio/How-does-S32-Design-studio-update-MCU-firmware-for-S32K144/m-p/781185#M3058</guid>
      <dc:creator>jiri_kral</dc:creator>
      <dc:date>2017-11-20T08:27:53Z</dc:date>
    </item>
    <item>
      <title>Re: How does S32 Design studio update MCU firmware for S32K144</title>
      <link>https://community.nxp.com/t5/S32-Design-Studio/How-does-S32-Design-studio-update-MCU-firmware-for-S32K144/m-p/781186#M3059</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Jiri,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;For now I am thinking of using default boot loader that got flashed to S32K144-EVB when first program was flashed.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I would like to update only application firmware with the help of existing boot loader.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Implementation Requirement:&lt;/P&gt;&lt;P&gt;a. I will trigger reboot by triggering software reset by using SYSRESETREQ.&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;b. On reboot, execution should stop at boot loader and boot loader will receive firmware buffer in part by part over UART from other processor. So boot loader&amp;nbsp;will start updating the application firmware to the dedicated address.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;c. After firmware updation, boot loader will send success/failure acknowledgement to processor and reboots to application.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Can you give your thoughts/idea to implement above use case.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thanks&amp;nbsp;&lt;/P&gt;&lt;P&gt;Mohan&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 20 Nov 2017 10:16:03 GMT</pubDate>
      <guid>https://community.nxp.com/t5/S32-Design-Studio/How-does-S32-Design-studio-update-MCU-firmware-for-S32K144/m-p/781186#M3059</guid>
      <dc:creator>mrajanna</dc:creator>
      <dc:date>2017-11-20T10:16:03Z</dc:date>
    </item>
    <item>
      <title>Re: How does S32 Design studio update MCU firmware for S32K144</title>
      <link>https://community.nxp.com/t5/S32-Design-Studio/How-does-S32-Design-studio-update-MCU-firmware-for-S32K144/m-p/781187#M3060</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;it is again task for custom boot loader. Second option may be implementing JTAG on your Master MCU and re-use for example&amp;nbsp;&lt;A class="link-titled" href="http://openocd.org/" title="http://openocd.org/"&gt;Open On-Chip Debugger&lt;/A&gt;&amp;nbsp;&amp;nbsp;with reduced functionality. This is the same way how S32K144 EVB is designed (OpenSDA on on Kinetis K20).&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Jiri&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 24 Nov 2017 13:54:26 GMT</pubDate>
      <guid>https://community.nxp.com/t5/S32-Design-Studio/How-does-S32-Design-studio-update-MCU-firmware-for-S32K144/m-p/781187#M3060</guid>
      <dc:creator>jiri_kral</dc:creator>
      <dc:date>2017-11-24T13:54:26Z</dc:date>
    </item>
  </channel>
</rss>

