<?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>MQX Software Solutions中的主题 Re: How to Compile and boot MQX and where to write a boot loader</title>
    <link>https://community.nxp.com/t5/MQX-Software-Solutions/How-to-Compile-and-boot-MQX-and-where-to-write-a-boot-loader/m-p/165759#M1581</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Has anyone used the FNET project?&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I have used the loader a few times but now I want to directly program an application using the programer.&lt;BR /&gt;I am able to program the application but when I try to debugg it, an Exception vector name: Address Error appears. What could be the change the loader made to my microcontroller?&lt;BR /&gt;&lt;BR /&gt;Another thing is that I am able to load an application using the loader but the application is not working properly, ethernet and usb are not working. My status led is flashing fine but I dont know where to start in order to make ethernet and USB work. Any ideas?&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Thank you in advanced&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Tue, 24 Nov 2009 07:09:40 GMT</pubDate>
    <dc:creator>MQXuser</dc:creator>
    <dc:date>2009-11-24T07:09:40Z</dc:date>
    <item>
      <title>How to Compile and boot MQX and where to write a boot loader</title>
      <link>https://community.nxp.com/t5/MQX-Software-Solutions/How-to-Compile-and-boot-MQX-and-where-to-write-a-boot-loader/m-p/165748#M1570</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;We need to be able to compile and boot an 'image' of MQX from a bootloader. We will be periodically uploading new MQX images as updates become available (either from MQX, or our own updates). When I say MQX Image, I mean MQX RToS with our application code which can be booted from some bootloader...&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;We cannot find complete information in the user guide which covers any requirments to be able to perform any boot loader functions, not even memory control or details on how MQX boots, memory control of code sections or the organisation and building blocks of MQX...&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Please assist us buy supplying some essential information about the operating system:&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;- Where do we write the C function for a bootloader exactly (pre MQX running)? This code really needs to be able to be seperated from the rest of the MQX image to allow it to update the MQX image without overwriting itself (see memory diagram below).&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;- How are the memory locations controlled for the above (How do we fix the location of the bootloader software and MQX application image)?&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;- How do we actually boot to the address of this MQX image we have created?&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;- Is there any other memory requirments we must meet to allow MQX to boot properly, or, to get our firware to enter and exit properly?&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Here is how the I think the memory map &lt;U&gt;might&lt;/U&gt; look...&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;---------------------------&lt;/P&gt;&lt;P&gt;- START BOOTLOADER address of where reset vector points, this part of code is fixed in firmware&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Pre MQX - pre MQX/C setup requiments..&lt;/P&gt;&lt;P&gt;USER Mem - boot loader function which updates MQX Image in the other flash blocks (flash routines etc here)&lt;/P&gt;&lt;P&gt;Pre MQX - pre MQX image boot, this might be a bit of both user code and MQX code, no idea...&lt;/P&gt;&lt;P&gt;Pre MQX - MQX image boot function, might clean memory / allocate memory and actually jumps to MQX image&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;- END BOOTLOADER&lt;/P&gt;&lt;P&gt;---------------------------&lt;/P&gt;&lt;P&gt;- START MQX + USER APPLICATION MQX Image which will be updated&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;MQX RToS + Application Code as normal&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;- END MQX + USER APPLICATION&lt;/P&gt;&lt;P&gt;---------------------------&lt;/P&gt;&lt;BR /&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;DIV class="message-edit-history"&gt;&lt;SPAN class="edit-author"&gt;Message Edited by CarlFST60L on&lt;/SPAN&gt; &lt;SPAN class="local-date"&gt;2009-03-22&lt;/SPAN&gt; &lt;SPAN class="local-time"&gt;10:49 PM&lt;/SPAN&gt;&lt;/DIV&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 23 Mar 2009 05:34:45 GMT</pubDate>
      <guid>https://community.nxp.com/t5/MQX-Software-Solutions/How-to-Compile-and-boot-MQX-and-where-to-write-a-boot-loader/m-p/165748#M1570</guid>
      <dc:creator>CarlFST60L</dc:creator>
      <dc:date>2009-03-23T05:34:45Z</dc:date>
    </item>
    <item>
      <title>Re: How to Compile and boot MQX and where to write a boot loader</title>
      <link>https://community.nxp.com/t5/MQX-Software-Solutions/How-to-Compile-and-boot-MQX-and-where-to-write-a-boot-loader/m-p/165749#M1571</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi, my son has created something like this for an MQX project he is working on but has built the bootloader function outside of mqx, I will ask him to post what he has done.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;However it would be better to have this built into MQX.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 24 Mar 2009 21:41:08 GMT</pubDate>
      <guid>https://community.nxp.com/t5/MQX-Software-Solutions/How-to-Compile-and-boot-MQX-and-where-to-write-a-boot-loader/m-p/165749#M1571</guid>
      <dc:creator>freegeek</dc:creator>
      <dc:date>2009-03-24T21:41:08Z</dc:date>
    </item>
    <item>
      <title>Re: How to Compile and boot MQX and where to write a boot loader</title>
      <link>https://community.nxp.com/t5/MQX-Software-Solutions/How-to-Compile-and-boot-MQX-and-where-to-write-a-boot-loader/m-p/165750#M1572</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;Thanks freegeek, that would be great!&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 26 Mar 2009 07:52:42 GMT</pubDate>
      <guid>https://community.nxp.com/t5/MQX-Software-Solutions/How-to-Compile-and-boot-MQX-and-where-to-write-a-boot-loader/m-p/165750#M1572</guid>
      <dc:creator>CarlFST60L</dc:creator>
      <dc:date>2009-03-26T07:52:42Z</dc:date>
    </item>
    <item>
      <title>Re: How to Compile and boot MQX and where to write a boot loader</title>
      <link>https://community.nxp.com/t5/MQX-Software-Solutions/How-to-Compile-and-boot-MQX-and-where-to-write-a-boot-loader/m-p/165751#M1573</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;BR /&gt;I have attached my bootloader project. It can update the firmware of the M52259EVB board with a new S19 file from a USB memory stick.&lt;BR /&gt;&lt;BR /&gt;To use the program you must change two file. Firstly replace the file vectors.cw (in Freescale MQX 3.0\mqx\source\bsp\m52259evb) with the one provided in the zip. You should keep a copy of the original as the new one will only work with projects that include the bootloader. You must then recompile the mqx. Secondly, open the upgrade2.mcp project in codewarrior and replace the content of the file intflash_usb.lcf with lcf.txt from the project folder.&lt;BR /&gt;&lt;BR /&gt;Then compile the project and flash it to the chip. Rename the S19 that you want the bootloader to use to “FIRMWARE.S19” and place it in the root of a memory stick. Plug the memory stick into the EVB board and the upgrade will begin. Progress can be monitored on UART0 at 115200 baud.&lt;BR /&gt;&lt;BR /&gt;The project works by splitting the flash up into three segments. The first segment is 252 kB in size and holds the main program. The second is also 252 kB and is used to store the new firmware temporarily before it flash into the first segment. The last is 8 kB and contains the bootloader program.&lt;BR /&gt;&amp;nbsp;&lt;BR /&gt;When the program starts up it jumps to the bootloader code which checks if there is new firmware in the second segment of flash. If there is it copy the code from the second segment to the first then erases the second segment. It will then reset the MCU. If the bootloader does not find new firmware it will exit and the mqx will start up.&lt;BR /&gt;&lt;BR /&gt;The mqx program will look for a S19 file called “FIRMWARE.S19” on the USB stick. If it is found it will decode the file and write it to the second segment of flash.&lt;BR /&gt;&lt;BR /&gt;The main problem with this method is that if something goes wrong and the very first page of flash is not written correctly the MCU will not start up after the next reset. To minimise the amount if time the system is at risk my bootloader erase the first page of flash and reprograms it separately. A better solution would be to put the bootloader in the first page of flash so it never has to be erased. But this mean moving the mqx and having a specified start address for the mqx. It would be very useful is this functionality was built into the mqx.&lt;/P&gt;&lt;DIV class="message-edit-history"&gt;&lt;SPAN class="edit-author"&gt;Message Edited by jart on&lt;/SPAN&gt; &lt;SPAN class="local-date"&gt;2009-03-27&lt;/SPAN&gt; &lt;SPAN class="local-time"&gt;02:37 PM&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV class="message-edit-history"&gt;&lt;SPAN class="edit-author"&gt;Message Edited by t.dowe on&lt;/SPAN&gt; &lt;SPAN class="local-date"&gt;2009-08-27&lt;/SPAN&gt; &lt;SPAN class="local-time"&gt;02:03 PM&lt;/SPAN&gt;&lt;/DIV&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 27 Mar 2009 21:33:47 GMT</pubDate>
      <guid>https://community.nxp.com/t5/MQX-Software-Solutions/How-to-Compile-and-boot-MQX-and-where-to-write-a-boot-loader/m-p/165751#M1573</guid>
      <dc:creator>jart</dc:creator>
      <dc:date>2009-03-27T21:33:47Z</dc:date>
    </item>
    <item>
      <title>Re: How to Compile and boot MQX and where to write a boot loader</title>
      <link>https://community.nxp.com/t5/MQX-Software-Solutions/How-to-Compile-and-boot-MQX-and-where-to-write-a-boot-loader/m-p/165752#M1574</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi,&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I have attached a new version of my bootloader. In this version I have moved the bootloader to the first page of flash. This solves the problem I described at the end of my last post. Also to use this version you do not need to modify the file vectors.cw. If you did change the vectors.cw file you can change it back. You must still replace the file intflash_usb.lcf with the contents of lcf.txt as described above.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;A href="http://www.freescale.com/files/community_files/MQXGEN/upgrade3_forum_zip.zip%20" rel="nofollow" target="_self"&gt;upgrade3_forum_zip.zip&lt;/A&gt;&lt;/P&gt;&lt;DIV class="message-edit-history"&gt;&lt;SPAN class="edit-author"&gt;Message Edited by t.dowe on&lt;/SPAN&gt; &lt;SPAN class="local-date"&gt;2009-08-27&lt;/SPAN&gt; &lt;SPAN class="local-time"&gt;02:40 PM&lt;/SPAN&gt;&lt;/DIV&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Sun, 29 Mar 2009 06:05:54 GMT</pubDate>
      <guid>https://community.nxp.com/t5/MQX-Software-Solutions/How-to-Compile-and-boot-MQX-and-where-to-write-a-boot-loader/m-p/165752#M1574</guid>
      <dc:creator>jart</dc:creator>
      <dc:date>2009-03-29T06:05:54Z</dc:date>
    </item>
    <item>
      <title>Re: How to Compile and boot MQX and where to write a boot loader</title>
      <link>https://community.nxp.com/t5/MQX-Software-Solutions/How-to-Compile-and-boot-MQX-and-where-to-write-a-boot-loader/m-p/165753#M1575</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi,&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I think I understand what you were trying to do. My requirement, and hence issue:&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;- I need to be able to load an application that is independent of the bootloader as an independent project of C.W.&lt;/P&gt;&lt;P&gt;- the application will loaded into flash at a specific address&lt;/P&gt;&lt;P&gt;- the bootloader will know where this address is located, and upon reset, simply jump to the application's entry point&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I am very new to Freescale and C.w., I am trying to get a better undestanding of the "xxx.lcf" link control file and how the control statements in the .lcf file work, and what they mean. I also cannot (or have not) find a "use guide description" of the linker control file.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Any guideline to information would be greatly appreciated.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Ed&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;--------------------------------------&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;(if you want to know why I want to do this: I will want to have the running applciation be able to download a 2nd application image to a different section of flash while it is running, then update a table in the bootloader, and when the commit is complete, upon the next system reset, the bootloader will jump to the new application entry point)&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 28 Jul 2009 07:55:50 GMT</pubDate>
      <guid>https://community.nxp.com/t5/MQX-Software-Solutions/How-to-Compile-and-boot-MQX-and-where-to-write-a-boot-loader/m-p/165753#M1575</guid>
      <dc:creator>EdProulx</dc:creator>
      <dc:date>2009-07-28T07:55:50Z</dc:date>
    </item>
    <item>
      <title>Re: How to Compile and boot MQX and where to write a boot loader</title>
      <link>https://community.nxp.com/t5/MQX-Software-Solutions/How-to-Compile-and-boot-MQX-and-where-to-write-a-boot-loader/m-p/165754#M1576</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;I agree that the documentation on how to setup MQX to boot along with the linker is not suffecient for 'easy' boot loader application development. I made a note of this in the MQX Feedback thread.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Hopefully the next version will include a boot loader and some example on a basic serial boot loader along with details about how to manage MQX memory locations with the LCF&lt;/P&gt;&lt;DIV class="message-edit-history"&gt;&lt;SPAN class="edit-author"&gt;Message Edited by CarlFST60L on&lt;/SPAN&gt; &lt;SPAN class="local-date"&gt;2009-07-28&lt;/SPAN&gt; &lt;SPAN class="local-time"&gt;02:37 AM&lt;/SPAN&gt;&lt;/DIV&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 28 Jul 2009 08:26:34 GMT</pubDate>
      <guid>https://community.nxp.com/t5/MQX-Software-Solutions/How-to-Compile-and-boot-MQX-and-where-to-write-a-boot-loader/m-p/165754#M1576</guid>
      <dc:creator>CarlFST60L</dc:creator>
      <dc:date>2009-07-28T08:26:34Z</dc:date>
    </item>
    <item>
      <title>Re: How to Compile and boot MQX and where to write a boot loader</title>
      <link>https://community.nxp.com/t5/MQX-Software-Solutions/How-to-Compile-and-boot-MQX-and-where-to-write-a-boot-loader/m-p/165755#M1577</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;FYI:&lt;/P&gt;&lt;P&gt;You may look at the &lt;STRONG&gt;FNET TFTP Bootloader&lt;/STRONG&gt; (available for K2, K3, Lasko and Reindeer Coldfire),&lt;BR /&gt;that is part of the FNET project: &lt;A href="http://fnet.sourceforge.net/" rel="nofollow" target="_blank"&gt;http://fnet.sourceforge.net/&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Just look at FNET Bootloader related chapters:&lt;BR /&gt;&amp;nbsp;- FNET Bootloader Quick Start:&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;A href="http://fnet.sourceforge.net/manual/quick_start_boot.html" rel="nofollow" target="_blank"&gt;http://fnet.sourceforge.net/manual/quick_start_boot.html&lt;/A&gt;&lt;BR /&gt;&amp;nbsp;- Add FNET Bootloader support to an existing project:&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; &lt;A href="http://fnet.sourceforge.net/manual/how_to_add_boot.html" rel="nofollow" target="_blank"&gt;http://fnet.sourceforge.net/manual/how_to_add_boot.html&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;As I know,&amp;nbsp;some customers are going to use it in its own real MQX-based projects.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Best regards,&lt;BR /&gt;Andrey Butok&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 25 Aug 2009 13:22:51 GMT</pubDate>
      <guid>https://community.nxp.com/t5/MQX-Software-Solutions/How-to-Compile-and-boot-MQX-and-where-to-write-a-boot-loader/m-p/165755#M1577</guid>
      <dc:creator>butok</dc:creator>
      <dc:date>2009-08-25T13:22:51Z</dc:date>
    </item>
    <item>
      <title>Re: How to Compile and boot MQX and where to write a boot loader</title>
      <link>https://community.nxp.com/t5/MQX-Software-Solutions/How-to-Compile-and-boot-MQX-and-where-to-write-a-boot-loader/m-p/165756#M1578</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Thanks for that link, I will check it out.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;We have written a managed firmware updater along with a simple PC program to download and mange the firware update (either via serial or a UDP connection). We have managed to setup 2 MQX images so we can roll back in the event of some failure along with a smart boot loader that can check images for boot records etc&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 26 Aug 2009 06:24:28 GMT</pubDate>
      <guid>https://community.nxp.com/t5/MQX-Software-Solutions/How-to-Compile-and-boot-MQX-and-where-to-write-a-boot-loader/m-p/165756#M1578</guid>
      <dc:creator>CarlFST60L</dc:creator>
      <dc:date>2009-08-26T06:24:28Z</dc:date>
    </item>
    <item>
      <title>Re: How to Compile and boot MQX and where to write a boot loader</title>
      <link>https://community.nxp.com/t5/MQX-Software-Solutions/How-to-Compile-and-boot-MQX-and-where-to-write-a-boot-loader/m-p/165757#M1579</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi,&lt;/P&gt;&lt;P&gt;the file posted by "Jart" is not anymore downloadble, could anyone post it again ?&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;regards&lt;/P&gt;&lt;P&gt;&amp;nbsp; Roberto&lt;/P&gt;&lt;DIV class="message-edit-history"&gt;&lt;SPAN class="edit-author"&gt;Message Edited by rbuti on&lt;/SPAN&gt; &lt;SPAN class="local-date"&gt;2009-09-07&lt;/SPAN&gt; &lt;SPAN class="local-time"&gt;03:10 PM&lt;/SPAN&gt;&lt;/DIV&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 07 Sep 2009 20:50:07 GMT</pubDate>
      <guid>https://community.nxp.com/t5/MQX-Software-Solutions/How-to-Compile-and-boot-MQX-and-where-to-write-a-boot-loader/m-p/165757#M1579</guid>
      <dc:creator>rbuti</dc:creator>
      <dc:date>2009-09-07T20:50:07Z</dc:date>
    </item>
    <item>
      <title>Re: How to Compile and boot MQX and where to write a boot loader</title>
      <link>https://community.nxp.com/t5/MQX-Software-Solutions/How-to-Compile-and-boot-MQX-and-where-to-write-a-boot-loader/m-p/165758#M1580</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Drop me an email and I will send it to you carl@edsengineering.com.au&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 08 Sep 2009 06:57:56 GMT</pubDate>
      <guid>https://community.nxp.com/t5/MQX-Software-Solutions/How-to-Compile-and-boot-MQX-and-where-to-write-a-boot-loader/m-p/165758#M1580</guid>
      <dc:creator>CarlFST60L</dc:creator>
      <dc:date>2009-09-08T06:57:56Z</dc:date>
    </item>
    <item>
      <title>Re: How to Compile and boot MQX and where to write a boot loader</title>
      <link>https://community.nxp.com/t5/MQX-Software-Solutions/How-to-Compile-and-boot-MQX-and-where-to-write-a-boot-loader/m-p/165759#M1581</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Has anyone used the FNET project?&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I have used the loader a few times but now I want to directly program an application using the programer.&lt;BR /&gt;I am able to program the application but when I try to debugg it, an Exception vector name: Address Error appears. What could be the change the loader made to my microcontroller?&lt;BR /&gt;&lt;BR /&gt;Another thing is that I am able to load an application using the loader but the application is not working properly, ethernet and usb are not working. My status led is flashing fine but I dont know where to start in order to make ethernet and USB work. Any ideas?&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Thank you in advanced&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 24 Nov 2009 07:09:40 GMT</pubDate>
      <guid>https://community.nxp.com/t5/MQX-Software-Solutions/How-to-Compile-and-boot-MQX-and-where-to-write-a-boot-loader/m-p/165759#M1581</guid>
      <dc:creator>MQXuser</dc:creator>
      <dc:date>2009-11-24T07:09:40Z</dc:date>
    </item>
    <item>
      <title>Re: How to Compile and boot MQX and where to write a boot loader</title>
      <link>https://community.nxp.com/t5/MQX-Software-Solutions/How-to-Compile-and-boot-MQX-and-where-to-write-a-boot-loader/m-p/165760#M1582</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;&lt;FONT face="arial, helvetica, sans-serif" size="2"&gt;Hello, I have just downloaded the FNET project from&amp;nbsp;&lt;A href="http://fnet.sourceforge.net/" rel="nofollow" target="_blank"&gt;http://fnet.sourceforge.net/&lt;/A&gt;&amp;nbsp;and started testing &amp;nbsp;the&amp;nbsp;&lt;SPAN style="line-height: 26px;"&gt;&lt;STRONG&gt;FNET Shell Demo&amp;nbsp;&lt;/STRONG&gt;over the TWR - MCF52259 development kit. It works just fine, I can use execute the basic shell commands: set, get, info,.... from the Hyper Terminal Console.&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;P&gt;&lt;FONT size="2"&gt;&lt;BR /&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;P&gt;&lt;FONT size="2"&gt;&lt;FONT face="arial, helvetica, sans-serif"&gt;&lt;SPAN style="line-height: 26px;"&gt;But when y try to test the&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="font-weight: bold; line-height: 26px;"&gt;FNET Bootloader&lt;/SPAN&gt;&lt;SPAN style="line-height: 26px;"&gt;,&lt;/SPAN&gt;&lt;SPAN style="line-height: 26px;"&gt;&amp;nbsp;I do exactly what the&amp;nbsp;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;SPAN style="font-family: arial, helvetica, sans-serif; font-weight: bold; line-height: normal;"&gt;FNET Bootloader&amp;nbsp;Quick Start&lt;/SPAN&gt; &lt;SPAN style="font-family: arial, helvetica, sans-serif; line-height: normal;"&gt;says about to compile and download the project to the Internal Flash of the MCF52259. But when I run the program nothing happens in the&amp;nbsp;Hyper Terminal Console of my computer.&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;P&gt;&lt;FONT size="2"&gt;&lt;BR /&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: arial, helvetica, sans-serif; line-height: normal;"&gt;&lt;FONT size="2"&gt;The&amp;nbsp;&lt;STRONG&gt;FNET Shell Demo&lt;/STRONG&gt; is working well, meaning that the hyper terminal is also working well, but when I try the&amp;nbsp;&lt;STRONG&gt;FNET Bootloader&lt;/STRONG&gt;&amp;nbsp;I don't see the&amp;nbsp;FNET Bootloader welcome message in the console.&amp;nbsp;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;FONT size="2"&gt;&lt;BR /&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;P&gt;&lt;FONT face="arial, helvetica, sans-serif" size="2"&gt;&lt;SPAN style="line-height: normal;"&gt;Since It is a Bootloader, I don't know if I have to set an specific memory range where that program has to be downloaded to the internal flash.&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;P&gt;&lt;FONT size="2"&gt;&lt;BR /&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;P&gt;&lt;FONT face="arial, helvetica, sans-serif" size="2"&gt;&lt;SPAN style="line-height: normal;"&gt;Can anyone please give me some advice or help. I will really appreciate it.&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;P&gt;&lt;FONT size="2"&gt;&lt;BR /&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;P&gt;&lt;FONT face="arial, helvetica, sans-serif" size="2"&gt;&lt;SPAN style="line-height: normal;"&gt;Many thanks and my best regards.&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: arial, helvetica, sans-serif; line-height: normal; font-size: medium;"&gt;&lt;BR /&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 09 Mar 2011 09:06:01 GMT</pubDate>
      <guid>https://community.nxp.com/t5/MQX-Software-Solutions/How-to-Compile-and-boot-MQX-and-where-to-write-a-boot-loader/m-p/165760#M1582</guid>
      <dc:creator>admin</dc:creator>
      <dc:date>2011-03-09T09:06:01Z</dc:date>
    </item>
    <item>
      <title>Re: How to Compile and boot MQX and where to write a boot loader</title>
      <link>https://community.nxp.com/t5/MQX-Software-Solutions/How-to-Compile-and-boot-MQX-and-where-to-write-a-boot-loader/m-p/165761#M1583</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Alejandro,&lt;/P&gt;&lt;P&gt;Please look at the FNET/fnet_doc/fnet_user_manual.chm -&amp;gt; FNET How-To-&amp;gt;"Add FNET Bootloader support to existing project"&lt;/P&gt;&lt;P&gt;Your application code should start at 0xC000.&amp;nbsp;&lt;/P&gt;&lt;P&gt;Hopefully this will help.&lt;/P&gt;&lt;P&gt;Regards,&lt;/P&gt;&lt;P&gt;David&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 09 Mar 2011 22:49:57 GMT</pubDate>
      <guid>https://community.nxp.com/t5/MQX-Software-Solutions/How-to-Compile-and-boot-MQX-and-where-to-write-a-boot-loader/m-p/165761#M1583</guid>
      <dc:creator>DavidS</dc:creator>
      <dc:date>2011-03-09T22:49:57Z</dc:date>
    </item>
    <item>
      <title>Re: How to Compile and boot MQX and where to write a boot loader</title>
      <link>https://community.nxp.com/t5/MQX-Software-Solutions/How-to-Compile-and-boot-MQX-and-where-to-write-a-boot-loader/m-p/165762#M1584</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hello David. Tank you so much for you quick anwer.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;FONT face="arial, helvetica, sans-serif" size="2"&gt;I have read the&amp;nbsp;&lt;/FONT&gt;&lt;SPAN style="font-family: arial, helvetica, sans-serif; font-weight: bold; font-size: small; line-height: normal;"&gt;Add FNET Bootloader support to an existing project&lt;/SPAN&gt; &lt;SPAN style="font-family: arial, helvetica, sans-serif; font-size: small; line-height: normal;"&gt;document and I have some questions.&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: arial, helvetica, sans-serif; font-size: small; line-height: normal;"&gt;1. What exactly do I have to do to test the &lt;STRONG&gt;FNET Bootloader&lt;/STRONG&gt; for the TWR - MCF52259 development kit and see the FNET Bootloader welcome message in my terminal program window just like&amp;nbsp;&lt;STRONG&gt;FNET Bootloader Quick Start&lt;/STRONG&gt;&amp;nbsp;document shows?&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;PRE&gt;Parameters loaded.************************************************ FNET Bootloader************************************************ FNET TCP/IP Stack for MCF5225X Version 0.9.0 Built Feb  1 2011 at 15:52:42 by IAR Copyright 2005-2011 by Freescale Semiconductor GNU LGPLv3************************************************ Interface        : eth0 IP address       : 192.168.1.22 (set manually) Subnet mask      : 255.255.254.0 Gateway          : 10.171.88.254 MAC address      : 00:04:9F:15:52:55 Link status      : unconnected TX Packets       : 4 RX Packets       : 0 DHCP client      : disabled TFTP server      : disabled Enter 'help' for command list.************************************************Startup script: tftps************************************************  TFTP server (192.168.1.22) started.************************************************BOOT&amp;gt;&lt;/PRE&gt;&lt;P&gt;I don't see this in my&amp;nbsp;terminal program window after following the step by step &lt;STRONG&gt;FNET Bootloader Quick Start&lt;/STRONG&gt;&amp;nbsp;document. What could I be missing?&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Do I have to change any configuration for the Flash Memory of the MCF52259 (linker file, CW7.2&amp;nbsp;compiler&amp;nbsp;or Flash Programmer address range) to make the&amp;nbsp;&lt;STRONG&gt;FNET Bootloader Quick Start&lt;/STRONG&gt;&amp;nbsp;demo work?&lt;/P&gt;&lt;P&gt;&lt;FONT face="arial, helvetica, sans-serif" size="2"&gt;&lt;SPAN style="line-height: normal;"&gt;&lt;BR /&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;P&gt;In relation with the&amp;nbsp;&lt;STRONG&gt;Addind the FNET Bootloader support to existing project&lt;/STRONG&gt;&amp;nbsp;documentation.&lt;/P&gt;&lt;P&gt;&lt;FONT face="arial, helvetica, sans-serif" size="2"&gt;&lt;SPAN style="line-height: normal;"&gt;&lt;BR /&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;P&gt;Do I have to change the&amp;nbsp;sections of the linker command file of the project &amp;nbsp;&lt;STRONG&gt;twrmcf52259_boot.mcp&lt;/STRONG&gt; or I&amp;nbsp;have to Flash the program &lt;STRONG&gt;twrmcf52259_boot.mcp&amp;nbsp;&lt;/STRONG&gt;to the board like the&amp;nbsp;&lt;STRONG&gt;FNET Bootloader Quick Start&lt;/STRONG&gt;&amp;nbsp;document says&amp;nbsp;and then Flash any application with&amp;nbsp;sections of its linker command file being changed?&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I am confused. Please can you explain me how to do the things right?&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I know that FNET &lt;STRONG&gt;twrmcf52259_boot.mcp&amp;nbsp;&lt;/STRONG&gt;project is a bootloader, but how to make it work?&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Thank you very much.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 29 Oct 2020 09:12:55 GMT</pubDate>
      <guid>https://community.nxp.com/t5/MQX-Software-Solutions/How-to-Compile-and-boot-MQX-and-where-to-write-a-boot-loader/m-p/165762#M1584</guid>
      <dc:creator>admin</dc:creator>
      <dc:date>2020-10-29T09:12:55Z</dc:date>
    </item>
    <item>
      <title>Re: How to Compile and boot MQX and where to write a boot loader</title>
      <link>https://community.nxp.com/t5/MQX-Software-Solutions/How-to-Compile-and-boot-MQX-and-where-to-write-a-boot-loader/m-p/165763#M1585</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Alejandro,&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;As I see you still have some issues.&lt;/P&gt;&lt;P&gt;You can look at the NOT-official AN "Adding an Ethernet Bootloader&amp;nbsp;to Freescale MQX", you can find it here:&lt;BR /&gt;&lt;A href="https://sourceforge.net/projects/fnet/files/fnet/AN/" rel="nofollow" target="_blank"&gt;https://sourceforge.net/projects/fnet/files/fnet/AN/&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Best regards,&lt;/P&gt;&lt;P&gt;Andrey Butok&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 10 Mar 2011 17:36:09 GMT</pubDate>
      <guid>https://community.nxp.com/t5/MQX-Software-Solutions/How-to-Compile-and-boot-MQX-and-where-to-write-a-boot-loader/m-p/165763#M1585</guid>
      <dc:creator>butok</dc:creator>
      <dc:date>2011-03-10T17:36:09Z</dc:date>
    </item>
    <item>
      <title>Re: How to Compile and boot MQX and where to write a boot loader</title>
      <link>https://community.nxp.com/t5/MQX-Software-Solutions/How-to-Compile-and-boot-MQX-and-where-to-write-a-boot-loader/m-p/165764#M1586</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;&lt;FONT face="arial,helvetica,sans-serif" size="2"&gt;Hello Butok.&lt;/FONT&gt;&lt;/P&gt;&lt;P&gt;&lt;FONT face="arial,helvetica,sans-serif" size="2"&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;P&gt;&lt;FONT face="arial,helvetica,sans-serif" size="2"&gt;I finally made the FNET Bootloader work perfectlly over the TWR&amp;nbsp;MCF52259 Development Kit.&lt;/FONT&gt;&lt;/P&gt;&lt;P&gt;&lt;FONT face="arial,helvetica,sans-serif" size="2"&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;P&gt;&lt;FONT face="arial,helvetica,sans-serif" size="2"&gt;My problem was the same as seen in&lt;/FONT&gt; &lt;A href="http://freescale.lithium.com/t5/68K-ColdFire-reg-Microprocessors/FNET-on-TWR-MCF5225x-Which-Serial-Port-is-routed-to-the-DB9/m-p/55050" rel="nofollow" target="_blank"&gt;&lt;FONT face="arial,helvetica,sans-serif" size="2"&gt;&lt;/FONT&gt;&lt;/A&gt;&lt;A href="http://freescale.lithium.com/t5/68K-ColdFire-reg-Microprocessors/FNET-on-TWR-MCF5225x-Which-Serial-Port-is-routed-to-the-DB9/m-p/55050" target="test_blank"&gt;http://freescale.lithium.com/t5/68K-ColdFire-reg-Microprocessors/FNET-on-TWR-MCF5225x-Which-Serial-Port-is-routed-to-the-DB9/m-p/55050&lt;/A&gt;&lt;FONT face="arial,helvetica,sans-serif" size="2"&gt;&amp;nbsp;post:&amp;nbsp;"&lt;/FONT&gt;&lt;FONT face="arial,helvetica,sans-serif" size="2"&gt;&lt;STRONG&gt;FNET on TWR-MCF522​5x: Which Serial Port is routed to the DB9 connector?"&lt;/STRONG&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&lt;FONT size="2"&gt;&lt;/FONT&gt;&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;FONT size="2"&gt;I&amp;nbsp;have made my &lt;STRONG&gt;MQX application&lt;/STRONG&gt; work with the &lt;STRONG&gt;FNET Bootloader&lt;/STRONG&gt; too by following the &lt;STRONG&gt;"Adding an Ethernet Bootloader to Freescale MQX™"&lt;/STRONG&gt; documentation. Everything is just working perfectly.&lt;/FONT&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&lt;FONT size="2"&gt;&lt;/FONT&gt;&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;FONT size="2"&gt;Now that I can use the FNET Bootloader to dowload&amp;nbsp;any application&amp;nbsp;or update firmware if were neccessary via TFTP. I have&amp;nbsp;some questions.&lt;/FONT&gt;&lt;/P&gt;&lt;P&gt;&lt;FONT size="2"&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;P&gt;&lt;FONT size="2"&gt;&lt;STRONG&gt;1. How to automate the Update Firmware Proccess of an MQX application? (All made by the machine, only first configuration will be made by humans).&lt;/STRONG&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;P&gt;&lt;FONT size="2"&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;P&gt;&lt;FONT size="2"&gt;Lets suppose that we have a TFTP Server which will store the new MQX Application firmware.&lt;/FONT&gt; &lt;FONT size="2"&gt;Since we don't know in which LAN network will the system be connected,&amp;nbsp;the TFTP server IP address can be variable. Therefore&amp;nbsp;it is not possible to have a default TFTP server Address&amp;nbsp;for the FNET Bootloader. Then we need to first configure the system with the actual TFTP server Address by hand. As I can see It can be done with &lt;STRONG&gt;set&lt;/STRONG&gt; and &lt;STRONG&gt;save&lt;/STRONG&gt; commands.&lt;/FONT&gt;&lt;/P&gt;&lt;P&gt;&lt;FONT size="2"&gt;After check if there is a new version of the firmware and if neccessary&amp;nbsp;execute the firmware update proccess, the FNET Bootloader will start the MQX application.&lt;/FONT&gt; &lt;FONT size="2"&gt;So far, so understood.&lt;/FONT&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;But at this time, the MQX application has been started. Then, it is the MQX application responsibility to know if there is a new version of the firmware (Issuing a simple&amp;nbsp;TFTP file name check&amp;nbsp;and version comparison) every period of time.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Once&amp;nbsp;the MQX application&amp;nbsp;knows there is a new version of the firmware,&amp;nbsp;How can I make&amp;nbsp;FNET Bootloader know that?.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I know that all parameters used by the FNET bootloader are stored in the &lt;STRONG&gt;upper block of Flash&lt;/STRONG&gt; and are recalled after a power cycle or&amp;nbsp;reset (If the Bootloader is in automatic booting mode).&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Is it possible to modify&amp;nbsp;some of these parameters (IP, netmask, gateway, TFTP IP address, script, image, etcetera...)&amp;nbsp;&lt;STRONG&gt;from the MQX application&lt;/STRONG&gt;, then apply a &lt;STRONG&gt;system reset&lt;/STRONG&gt; to start the&amp;nbsp;&lt;STRONG&gt;automatic firmware update execution&lt;/STRONG&gt;?&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Is this way the best to do an automatic&amp;nbsp;firmware update?&lt;/P&gt;&lt;P&gt;Is there another automatic firmware update proccess already available?&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;An my&amp;nbsp;last Question.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;FONT size="2"&gt;&lt;STRONG&gt;1. If there&amp;nbsp;was a problem during the firmware update and the MQX application was not well flashed. Is the FNET bootloader able to know that?&lt;/STRONG&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;P&gt;&lt;FONT size="2"&gt;&lt;STRONG&gt;How to know if there is a flashed data corruption and it is necessary to restart the firmware update&amp;nbsp;proccess instead of starting the MQX application?&lt;/STRONG&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&lt;FONT size="2"&gt;¿Is it possible to have a backup of the last working well firmware in case of a firmware update proccess crash&lt;/FONT&gt;&lt;/STRONG&gt;&lt;STRONG&gt;&lt;FONT size="2"&gt;?&lt;/FONT&gt;&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Is&amp;nbsp;&amp;nbsp;a firmware update proccess crash&amp;nbsp;possible to happen, resulting in flashed data corruption?&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;FONT size="2"&gt;Thanks a lot and my best regars.&lt;/FONT&gt;&lt;/P&gt;&lt;P&gt;&lt;FONT size="2"&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 16 Mar 2011 02:34:03 GMT</pubDate>
      <guid>https://community.nxp.com/t5/MQX-Software-Solutions/How-to-Compile-and-boot-MQX-and-where-to-write-a-boot-loader/m-p/165764#M1586</guid>
      <dc:creator>admin</dc:creator>
      <dc:date>2011-03-16T02:34:03Z</dc:date>
    </item>
    <item>
      <title>Re: How to Compile and boot MQX and where to write a boot loader</title>
      <link>https://community.nxp.com/t5/MQX-Software-Solutions/How-to-Compile-and-boot-MQX-and-where-to-write-a-boot-loader/m-p/165765#M1587</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Alejandro,&lt;/P&gt;&lt;P&gt;Your questions are very good and many customers have them too.&amp;nbsp; There is no one answer but I'll give a couple answers and/or options.&lt;/P&gt;&lt;P&gt;A1) Yes the bootloader can check for update and if it determines one is needed it then doesn the update.&lt;/P&gt;&lt;P&gt;Secondly if the FSLMQX application is running it too can check to see if an update is needed and if one is it could:&lt;/P&gt;&lt;P&gt;- set a flag in flash (either in the FNET parameter block or even in the application space at specific address that FNET can check as well).&lt;/P&gt;&lt;P&gt;- once flag is set then reset the device using the software reset bit in the RCR register.&lt;/P&gt;&lt;P&gt;- Bootloader will see flag and do update or it could even verify with server again that update is needed and update the system.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;You might want to investigate using DNS client to retrieve the IP address of the TFTP server.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;A2) I've done simple check of the FSLMQX image at start address and end address and assume that if I see these to ares having expected btye codes then everything in between was programmed correctly....then jump to FSLMQX application if check worked or back to bootloader mode if it failed.&lt;/P&gt;&lt;P&gt;A more robust method would be to generate a CRC or other hash value over the FSLMQX image area and compare to expected value that the server side generates.&amp;nbsp; If the CRC or hash fail then restart bootloader process.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Hope this helps.&lt;/P&gt;&lt;P&gt;Regards,&lt;/P&gt;&lt;P&gt;David&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 16 Mar 2011 20:54:59 GMT</pubDate>
      <guid>https://community.nxp.com/t5/MQX-Software-Solutions/How-to-Compile-and-boot-MQX-and-where-to-write-a-boot-loader/m-p/165765#M1587</guid>
      <dc:creator>DavidS</dc:creator>
      <dc:date>2011-03-16T20:54:59Z</dc:date>
    </item>
    <item>
      <title>Re: How to Compile and boot MQX and where to write a boot loader</title>
      <link>https://community.nxp.com/t5/MQX-Software-Solutions/How-to-Compile-and-boot-MQX-and-where-to-write-a-boot-loader/m-p/165766#M1588</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;&lt;EM&gt;&lt;BR /&gt;&lt;/EM&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;DIV&gt;Hi Alejandro&lt;/DIV&gt;&lt;DIV&gt;&lt;EM&gt;&amp;gt;&amp;gt;1. How to automate the Update Firmware Proccess of an MQX application?&lt;/EM&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;EM&gt;&lt;BR /&gt;&lt;/EM&gt;&lt;/DIV&gt;&lt;DIV&gt;It is&amp;nbsp;responsibility&amp;nbsp;of the&amp;nbsp;application or user to know if there is a new version of the firmware.&lt;/DIV&gt;&lt;DIV&gt;The application can control behavior and settings of the FNET boot-loader by changing its parameters (in the last sector of on-chip flash).&lt;/DIV&gt;&lt;DIV&gt;&lt;EM&gt;&amp;gt;&amp;gt; Is there another automatic firmware update proccess already available?&lt;/EM&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;EM&gt;&lt;BR /&gt;&lt;/EM&gt;&lt;/DIV&gt;&lt;DIV&gt;It is fully up to you. The FNET boot-loader is starting point, and you may modify it as you want.&lt;/DIV&gt;&lt;DIV&gt;&lt;EM&gt;&amp;gt;&amp;gt; If there was a problem during the firmware update and the&amp;nbsp;&lt;/EM&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;EM&gt;&amp;gt;&amp;gt;MQX application was not well flashed. Is the FNET bootloader able to know that?&lt;/EM&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;EM&gt;&lt;BR /&gt;&lt;/EM&gt;&lt;/DIV&gt;&lt;DIV&gt;If you load SREC file, the boot-loader check the checksum for each SREC line.&lt;/DIV&gt;&lt;DIV&gt;Also during writing to the flash it do verification if data were written.&lt;/DIV&gt;&lt;DIV&gt;Also you may add your application-specific checks.&lt;/DIV&gt;&lt;DIV&gt;If something goes wrong =&amp;gt; the boot-loader stays in the Shell and waiting for user actions.&lt;/DIV&gt;&lt;DIV&gt;User can do reset =&amp;gt; and the boot-loader starts from beginning, or he/she can change some parameters etc.&lt;/DIV&gt;&lt;DIV&gt;&lt;EM&gt;&amp;gt;&amp;gt;Is it possible to have a backup of the last working well&amp;nbsp;&lt;/EM&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;EM&gt;&amp;gt;&amp;gt;firmware in case of a firmware update proccess crash?&lt;/EM&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;EM&gt;&lt;BR /&gt;&lt;/EM&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;EM&gt;The boot-loader has this feature and you may backup current firmware.&lt;/EM&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;EM&gt;But you should do it before flashing new one.&lt;/EM&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;EM&gt;&lt;BR /&gt;&lt;/EM&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;EM&gt;Thanks,&lt;/EM&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;EM&gt;Andrey Butok&lt;/EM&gt;&lt;/DIV&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;EM&gt;&lt;BR /&gt;&lt;/EM&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 16 Mar 2011 21:28:58 GMT</pubDate>
      <guid>https://community.nxp.com/t5/MQX-Software-Solutions/How-to-Compile-and-boot-MQX-and-where-to-write-a-boot-loader/m-p/165766#M1588</guid>
      <dc:creator>butok</dc:creator>
      <dc:date>2011-03-16T21:28:58Z</dc:date>
    </item>
    <item>
      <title>Re: How to Compile and boot MQX and where to write a boot loader</title>
      <link>https://community.nxp.com/t5/MQX-Software-Solutions/How-to-Compile-and-boot-MQX-and-where-to-write-a-boot-loader/m-p/165767#M1589</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hello. Thank you guys for your answers. That will really help me to develop the Automatic Firmware Update&lt;/P&gt;&lt;P&gt;System on&amp;nbsp;my MQX Application.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I suppose that I will have to &lt;STRONG&gt;read/write data between 0x0007F000 and 0x00080000 memory addresses&lt;/STRONG&gt; (where FNET&lt;/P&gt;&lt;P&gt;Parameters live) to &lt;STRONG&gt;control the behavior and settings of the FNET boot-loader&lt;/STRONG&gt;, all from the MQX Application.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Since I am using MQX as platform to develop the entire application, and it only shows MFS stack to manage files,&lt;/P&gt;&lt;P&gt;How to &lt;STRONG&gt;read/write data at a specific given flash memory address&lt;/STRONG&gt; of the microcontroller?.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I supose there must be a function like &lt;STRONG&gt;writeBytesToIntFlashMemory(&lt;/STRONG&gt;long &lt;STRONG&gt;MemAddressDest&lt;/STRONG&gt;, char * &lt;STRONG&gt;BuffSource&lt;/STRONG&gt;, int&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;SizeOfBuffSource)&lt;/STRONG&gt; to write data into Flash Memory of the microcontroller. I found some source at the&lt;/P&gt;&lt;P&gt;&lt;A href="https://community.freescale.com/message/60963#60963" title="https://community.freescale.com/message/60963#60963"&gt;https://community.freescale.com/message/60963#60963&lt;/A&gt;&lt;/P&gt;&lt;P&gt;Freescale forum but it seems that I need to integrate the complete uTasker FileSystem to have the&lt;/P&gt;&lt;P&gt;fnWriteBytesFlash function working on my application.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Does MQX already have low level writing/reading internal flash functions that I can use? If so, where can I find&lt;/P&gt;&lt;P&gt;them?&lt;/P&gt;&lt;P&gt;Is there any other alternative?&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I actually only need that to integrate the Automatic Bootloader System to my application and be completely&lt;/P&gt;&lt;P&gt;happy.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Where can I find more information about the FNET Bootloader feature of &lt;STRONG&gt;backuping current firmware before&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;flashing new one&lt;/STRONG&gt; that you mentioned?&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Thank you a lot. Best Regards.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 17 Mar 2011 08:47:45 GMT</pubDate>
      <guid>https://community.nxp.com/t5/MQX-Software-Solutions/How-to-Compile-and-boot-MQX-and-where-to-write-a-boot-loader/m-p/165767#M1589</guid>
      <dc:creator>admin</dc:creator>
      <dc:date>2011-03-17T08:47:45Z</dc:date>
    </item>
  </channel>
</rss>

