<?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: USB-KW41Z : Write firmware with fsci_bootloader.py in Kinetis Microcontrollers</title>
    <link>https://community.nxp.com/t5/Kinetis-Microcontrollers/USB-KW41Z-Write-firmware-with-fsci-bootloader-py/m-p/640625#M38795</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Nori,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;That message is because you are not entering in boot loader mode. So you can take a reference the&lt;/P&gt;&lt;P&gt;Kinetis Thread Stack FSCI Bootloader Quick Start Guide Chapter 3&lt;/P&gt;&lt;P&gt;C:\NXP\MKW41Z_ConnSw_1.0.2\docs\wireless\Thread&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;-The bootloader mode starts using the procedure of resetting the board by keeping SW4 switch for FRDM-KW41Z pressed or SW3 switch for USB-KW41Z pressed. The bootloader is waiting for the first application firmware to be transmitted from the host.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;-Or &amp;nbsp;you can select if the bootloader automatically wait for the new firmware(without switch GPIO trigger)&lt;/P&gt;&lt;P&gt;rebuild the bootloader bin file in IAR EWARM or in KDS IDE after setting the gBootFlags attribute to value 0x00UL in the file middleware\wireless\framework_5.3.2\examples\common\bootloader\src\bootloader\main.c.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;Default value of gBootFlags:&lt;/STRONG&gt;&lt;BR /&gt;volatile const bootFlags_t gBootFlags __attribute__ ((section(".BootFlags"))) =&lt;BR /&gt;#endif&lt;BR /&gt;{&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;0xFFFFFFFFFFFFFFFF&lt;BR /&gt;};&lt;BR /&gt;#endif&lt;BR /&gt;&amp;nbsp;&lt;STRONG&gt;&amp;nbsp;&amp;nbsp;should be updated to&lt;/STRONG&gt;&lt;BR /&gt;volatile const bootFlags_t gBootFlags __attribute__ ((section(".BootFlags"))) =&lt;BR /&gt;#endif&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;0x00UL&lt;BR /&gt;};&lt;BR /&gt;#endif&lt;/P&gt;&lt;P&gt;{&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Hope it helps&lt;/P&gt;&lt;P&gt;Mario&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Tue, 17 Jan 2017 22:12:18 GMT</pubDate>
    <dc:creator>mario_castaneda</dc:creator>
    <dc:date>2017-01-17T22:12:18Z</dc:date>
    <item>
      <title>USB-KW41Z : Write firmware with fsci_bootloader.py</title>
      <link>https://community.nxp.com/t5/Kinetis-Microcontrollers/USB-KW41Z-Write-firmware-with-fsci-bootloader-py/m-p/640624#M38794</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;I'm trying to use USB-KW41Z as Thread interface for Linux router.&lt;/P&gt;&lt;P&gt;I built bootloader_fsci.bin for usbkw41z_kw41z and wrote it by J-Link.&lt;/P&gt;&lt;P&gt;Then I built host_controlled_device.bin with gUseBootloaderLinkg_d = 1 and THR_SERIAL_TUN_ROUTER = 1.&lt;/P&gt;&lt;P&gt;After built and installed hsdk, I tried to write host_controlled_device.bin using fsci_bootloader.py.&lt;BR /&gt;But it fails...&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;# python fsci_bootloader.py /dev/ttyACM0 host_controlled_device.bin -e&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;Namespace(bin='host_controlled_device.bin', chunk_size=2048, dev='/dev/ttyACM0', disable_crc=False, erase_nvm=True)&lt;BR /&gt;[Command 0] /dev/ttyACM0: FSCIEnterBootloaderRequest -&amp;gt; { }&lt;BR /&gt;[Command 1] /dev/ttyACM0: FSCIFirmware_CancelProcessRequest -&amp;gt; { }&lt;BR /&gt;&lt;SPAN style="color: #ff0000;"&gt;&lt;STRONG&gt;No response for the previous command&lt;/STRONG&gt; &lt;/SPAN&gt;&amp;lt;com.nxp.wireless_connectivity.commands.firmware.frames.FSCIFirmware_CancelProcessRequest object at 0x7f0cb68be9d0&amp;gt;&lt;BR /&gt;Cannot communicate with the board, please try again. Exiting..&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;$ ./GetKinetisDevices&lt;/STRONG&gt;&lt;BR /&gt;NXP Kinetis-W device on /dev/ttyACM0.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;# cat hsdk.log&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;HSDK_INFO - [-1168365760] [PhysicalDevice]InitPhysicalDevice:Allocated memory for PhysicalDevice&lt;BR /&gt;HSDK_INFO - [-1168365760] [PhysicalDevice]InitPhysicalDevice:Initialized device's message queue&lt;BR /&gt;HSDK_INFO - [-1168365760] [PhysicalDevice]InitPhysicalDevice:Created event manager for device&lt;BR /&gt;HSDK_INFO - [-1168365760] [PhysicalDevice]InitPhysicalDevice:Created startThread event&lt;BR /&gt;HSDK_INFO - [-1168365760] [PhysicalDevice]InitPhysicalDevice:Created stopThread event&lt;BR /&gt;HSDK_INFO - [-1168365760] [PhysicalDevice]AttachToConcreteImplementation:Attached to a concrete implementation&lt;BR /&gt;HSDK_INFO - [-1168365760] [PhysicalDevice]OpenPhysicalDevice:Created and start device thread&lt;BR /&gt;HSDK_INFO - [-1168365760] [Framer]InitializeFramer:Allocated memory for Framer&lt;BR /&gt;HSDK_INFO - [-1168365760] [Framer]InitializeFramer:Created stopThread event&lt;BR /&gt;HSDK_INFO - [-1168365760] [Framer]InitializeFramer:Initialized framer's message queue&lt;BR /&gt;HSDK_INFO - [-1168365760] [Framer]InitializeFramer:Created event manager for framer&lt;BR /&gt;~&lt;/P&gt;&lt;P&gt;&lt;BR /&gt;My host PC is Ubuntu with kernel 4.4 with CONFIG_TUN=y.&lt;/P&gt;&lt;P&gt;Do I need to do something for bootloader_fsci.bin?&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 26 Dec 2016 02:33:21 GMT</pubDate>
      <guid>https://community.nxp.com/t5/Kinetis-Microcontrollers/USB-KW41Z-Write-firmware-with-fsci-bootloader-py/m-p/640624#M38794</guid>
      <dc:creator>norishinozaki</dc:creator>
      <dc:date>2016-12-26T02:33:21Z</dc:date>
    </item>
    <item>
      <title>Re: USB-KW41Z : Write firmware with fsci_bootloader.py</title>
      <link>https://community.nxp.com/t5/Kinetis-Microcontrollers/USB-KW41Z-Write-firmware-with-fsci-bootloader-py/m-p/640625#M38795</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Nori,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;That message is because you are not entering in boot loader mode. So you can take a reference the&lt;/P&gt;&lt;P&gt;Kinetis Thread Stack FSCI Bootloader Quick Start Guide Chapter 3&lt;/P&gt;&lt;P&gt;C:\NXP\MKW41Z_ConnSw_1.0.2\docs\wireless\Thread&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;-The bootloader mode starts using the procedure of resetting the board by keeping SW4 switch for FRDM-KW41Z pressed or SW3 switch for USB-KW41Z pressed. The bootloader is waiting for the first application firmware to be transmitted from the host.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;-Or &amp;nbsp;you can select if the bootloader automatically wait for the new firmware(without switch GPIO trigger)&lt;/P&gt;&lt;P&gt;rebuild the bootloader bin file in IAR EWARM or in KDS IDE after setting the gBootFlags attribute to value 0x00UL in the file middleware\wireless\framework_5.3.2\examples\common\bootloader\src\bootloader\main.c.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;Default value of gBootFlags:&lt;/STRONG&gt;&lt;BR /&gt;volatile const bootFlags_t gBootFlags __attribute__ ((section(".BootFlags"))) =&lt;BR /&gt;#endif&lt;BR /&gt;{&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;0xFFFFFFFFFFFFFFFF&lt;BR /&gt;};&lt;BR /&gt;#endif&lt;BR /&gt;&amp;nbsp;&lt;STRONG&gt;&amp;nbsp;&amp;nbsp;should be updated to&lt;/STRONG&gt;&lt;BR /&gt;volatile const bootFlags_t gBootFlags __attribute__ ((section(".BootFlags"))) =&lt;BR /&gt;#endif&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;0x00UL&lt;BR /&gt;};&lt;BR /&gt;#endif&lt;/P&gt;&lt;P&gt;{&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Hope it helps&lt;/P&gt;&lt;P&gt;Mario&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 17 Jan 2017 22:12:18 GMT</pubDate>
      <guid>https://community.nxp.com/t5/Kinetis-Microcontrollers/USB-KW41Z-Write-firmware-with-fsci-bootloader-py/m-p/640625#M38795</guid>
      <dc:creator>mario_castaneda</dc:creator>
      <dc:date>2017-01-17T22:12:18Z</dc:date>
    </item>
    <item>
      <title>Re: USB-KW41Z : Write firmware with fsci_bootloader.py</title>
      <link>https://community.nxp.com/t5/Kinetis-Microcontrollers/USB-KW41Z-Write-firmware-with-fsci-bootloader-py/m-p/640626#M38796</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hello Mario,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thanks for help again!&lt;/P&gt;&lt;P&gt;I changed the BootFlags and wrote the new bootloader_fsci.elf and host_controlled_device.elf into a KW41Z part in USB-KW41Z(I'm using KDS to write firmware).&lt;/P&gt;&lt;P&gt;Then I plugged the USB to Linux Host, however nothing comes up in /var/log/syslog.&lt;/P&gt;&lt;P&gt;Now with or without changing the BootFlags, there is no /dev/ttyACMx created.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;When use J-Link debugger&amp;nbsp; to convert from K41Z SWD to USB port to connect to Linux, I can see /dev/ttyACM0.&lt;/P&gt;&lt;P style="margin: 0in; font-size: 9.5pt;"&gt;&lt;SPAN style="font-size: 15px;"&gt;However&amp;nbsp; ./bin/Thread_KW_Tun /dev/ttyACM0 fslthr0 doesn't show any messages which I can get with FRDM-KW41Z as follows.&lt;/SPAN&gt;&lt;/P&gt;&lt;P style="margin: 0in; font-size: 9.5pt;"&gt;&lt;/P&gt;&lt;P style="margin: 0in; font-size: 9.5pt;"&gt;./bin/Thread_KW_Tun /dev/ttyACM0 fslthr0&lt;/P&gt;&lt;P style="margin: 0in; font-size: 9.5pt;"&gt;[THR] Set 802.15.4 channel&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; OK!&lt;/P&gt;&lt;P style="margin: 0in; font-size: 9.5pt;"&gt;[THR] Create Network&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ALREADY CONNECTED!&lt;/P&gt;&lt;P style="margin: 0in; font-size: 9.5pt;"&gt;[THR] Border Router Add Prefix&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; OK!&lt;/P&gt;&lt;P style="margin: 0in; font-size: 9.5pt;"&gt;[THR] Border Router Sync Prefix&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; OK!&lt;/P&gt;&lt;P style="margin: 0in; font-size: 9.5pt;"&gt;[MESHCOP] Start Commissioner&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; OK!&lt;/P&gt;&lt;P style="margin: 0in; font-size: 9.5pt;"&gt;[MESHCOP] Add Expected Joiner&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; OK!&lt;/P&gt;&lt;P style="margin: 0in; font-size: 9.5pt;"&gt;[MESHCOP] Sync Steering Data&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; OK!&lt;/P&gt;&lt;P style="margin: 0in; font-size: 9.5pt;"&gt;&lt;/P&gt;&lt;P&gt;Lately I wrote rndis_bridge to K22F in USB-KW41D for testing ND router.&lt;/P&gt;&lt;P&gt;Is this the reason?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Best regards,&lt;/P&gt;&lt;P&gt;Nori Shinozaki&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 18 Jan 2017 09:13:19 GMT</pubDate>
      <guid>https://community.nxp.com/t5/Kinetis-Microcontrollers/USB-KW41Z-Write-firmware-with-fsci-bootloader-py/m-p/640626#M38796</guid>
      <dc:creator>norishinozaki</dc:creator>
      <dc:date>2017-01-18T09:13:19Z</dc:date>
    </item>
  </channel>
</rss>

