<?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: MKW30Z rebuild Bootloader OTAP KW40Z4 in Wireless MCU</title>
    <link>https://community.nxp.com/t5/Wireless-MCU/MKW30Z-rebuild-Bootloader-OTAP-KW40Z4/m-p/597380#M1579</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;If I want to implement some end of flash region for serial number, hardware version, user config stuff, calibration data (Temp, TSI, RTC ...) should I modify the boot loader not to flash the end region of flash ?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thank you,&lt;/P&gt;&lt;P&gt;Lucian&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Wed, 30 Nov 2016 14:25:43 GMT</pubDate>
    <dc:creator>lucianfiran</dc:creator>
    <dc:date>2016-11-30T14:25:43Z</dc:date>
    <item>
      <title>MKW30Z rebuild Bootloader OTAP KW40Z4</title>
      <link>https://community.nxp.com/t5/Wireless-MCU/MKW30Z-rebuild-Bootloader-OTAP-KW40Z4/m-p/597378#M1577</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;IAR 7.50&amp;nbsp; KW40Z_Connectivity_Software_1.0.1&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I'm trying to use the OTAP client for a MKW30Z hw target.&lt;/P&gt;&lt;P&gt;In cloned project bluetooth_otap_client_att\framework\Bootloader\Bootloader_OTAP_Serial&lt;/P&gt;&lt;P&gt;There is a bin file for MKW40Z BootloaderOTAP_KW40Z4.bin&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;For the MKW30Z target the bootloader should be rebuilt or is safe to use the default one ?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thank you.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 16 Nov 2016 15:57:59 GMT</pubDate>
      <guid>https://community.nxp.com/t5/Wireless-MCU/MKW30Z-rebuild-Bootloader-OTAP-KW40Z4/m-p/597378#M1577</guid>
      <dc:creator>lucianfiran</dc:creator>
      <dc:date>2016-11-16T15:57:59Z</dc:date>
    </item>
    <item>
      <title>Re: MKW30Z rebuild Bootloader OTAP KW40Z4</title>
      <link>https://community.nxp.com/t5/Wireless-MCU/MKW30Z-rebuild-Bootloader-OTAP-KW40Z4/m-p/597379#M1578</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Lucian,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Yes, It is safe to use the&amp;nbsp;MKW40Z BootloaderOTAP_KW40Z4.bin.&lt;/P&gt;&lt;P&gt;Just remember &lt;SPAN style="color: #51626f; background-color: #ffffff;"&gt;MKW30Z&lt;/SPAN&gt; doesn't support 802.15.4&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Best Regards&lt;/P&gt;&lt;P&gt;Mario&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 29 Nov 2016 20:52:25 GMT</pubDate>
      <guid>https://community.nxp.com/t5/Wireless-MCU/MKW30Z-rebuild-Bootloader-OTAP-KW40Z4/m-p/597379#M1578</guid>
      <dc:creator>mario_castaneda</dc:creator>
      <dc:date>2016-11-29T20:52:25Z</dc:date>
    </item>
    <item>
      <title>Re: MKW30Z rebuild Bootloader OTAP KW40Z4</title>
      <link>https://community.nxp.com/t5/Wireless-MCU/MKW30Z-rebuild-Bootloader-OTAP-KW40Z4/m-p/597380#M1579</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;If I want to implement some end of flash region for serial number, hardware version, user config stuff, calibration data (Temp, TSI, RTC ...) should I modify the boot loader not to flash the end region of flash ?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thank you,&lt;/P&gt;&lt;P&gt;Lucian&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 30 Nov 2016 14:25:43 GMT</pubDate>
      <guid>https://community.nxp.com/t5/Wireless-MCU/MKW30Z-rebuild-Bootloader-OTAP-KW40Z4/m-p/597380#M1579</guid>
      <dc:creator>lucianfiran</dc:creator>
      <dc:date>2016-11-30T14:25:43Z</dc:date>
    </item>
    <item>
      <title>Re: MKW30Z rebuild Bootloader OTAP KW40Z4</title>
      <link>https://community.nxp.com/t5/Wireless-MCU/MKW30Z-rebuild-Bootloader-OTAP-KW40Z4/m-p/597381#M1580</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Lucian,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;If in your application you reserve a specific that region, it should not be any problem. So, all the .srec that you want to transmit with OTAP will save correctly &lt;BR /&gt;But, The boot loader could be like a back up, it will check again if the .srec file and it will determine if the new firmware is limited the flash like you set before.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Best Regards,&lt;BR /&gt;Mario&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 30 Nov 2016 23:30:38 GMT</pubDate>
      <guid>https://community.nxp.com/t5/Wireless-MCU/MKW30Z-rebuild-Bootloader-OTAP-KW40Z4/m-p/597381#M1580</guid>
      <dc:creator>mario_castaneda</dc:creator>
      <dc:date>2016-11-30T23:30:38Z</dc:date>
    </item>
    <item>
      <title>Re: MKW30Z rebuild Bootloader OTAP KW40Z4</title>
      <link>https://community.nxp.com/t5/Wireless-MCU/MKW30Z-rebuild-Bootloader-OTAP-KW40Z4/m-p/597382#M1581</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;On below &lt;STRONG&gt;MKW40Z160_cfg.h&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;/** Kinetis Flash memory size */&lt;/P&gt;&lt;P&gt;#define KINETIS_FLASH (160*1024)&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;If I want to use, let say, the last page with serial number, HW version, calibration data,etc...&amp;nbsp; can I modify this:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;#define KINETIS_FLASH (&lt;STRONG&gt;159&lt;/STRONG&gt;*1024)&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;KW40Z_Connectivity_Software_1.0.1\ConnSw\framework\Bootloader\Bootloader_OTAP_Serial\Linker_cfg&lt;/STRONG&gt;&lt;BR /&gt;&lt;STRONG&gt;BootloaderOTAP.icf&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;BR /&gt;&lt;EM&gt;/******************* Map of Kinetis FLASH ***********************************&lt;/EM&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;EM&gt;&amp;nbsp; +---------------+&lt;/EM&gt;&lt;BR /&gt;&lt;EM&gt;&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; |&lt;/EM&gt;&lt;BR /&gt;&lt;EM&gt;&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; |&lt;/EM&gt;&lt;BR /&gt;&lt;EM&gt;&amp;nbsp; |&amp;nbsp; Application&amp;nbsp; |&lt;/EM&gt;&lt;BR /&gt;&lt;EM&gt;&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; |&lt;/EM&gt;&lt;BR /&gt;&lt;EM&gt;&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; |&lt;/EM&gt;&lt;BR /&gt;&lt;EM&gt;&amp;nbsp; +---------------+ - __region_BOOT_ROM_end__&lt;/EM&gt;&lt;BR /&gt;&lt;EM&gt;&amp;nbsp; | Bootloader&amp;nbsp;&amp;nbsp;&amp;nbsp; |&lt;/EM&gt;&lt;BR /&gt;&lt;EM&gt;&amp;nbsp; +---------------+ - __region_BOOT_ROM_start__&lt;/EM&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;EM&gt;*****************************************************************************/&lt;/EM&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;EM&gt;/*- Defining Symbols -*/&lt;/EM&gt;&lt;BR /&gt;&lt;EM&gt;define exported symbol __region_BOOT_ROM_start__&amp;nbsp;&amp;nbsp; = 0x00000000;&lt;/EM&gt;&lt;BR /&gt;&lt;EM&gt;define exported symbol __region_BOOT_ROM_end__&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; = (gRomSize_c / 32) - 1;&lt;/EM&gt;&lt;BR /&gt;&lt;EM&gt;define symbol __region_RAM_start__&amp;nbsp;&amp;nbsp; = 0x20000000;&lt;/EM&gt;&lt;BR /&gt;&lt;EM&gt;define symbol __region_RAM_end__&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; = 0x20001fff; // limit to&amp;nbsp; 8K&lt;/EM&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;EM&gt;/*-Sizes-*/&lt;/EM&gt;&lt;BR /&gt;&lt;EM&gt;define symbol __size_cstack__ = 0x1000;&lt;/EM&gt;&lt;BR /&gt;&lt;EM&gt;define symbol __IntVectTable_start__ = __region_BOOT_ROM_start__;&lt;/EM&gt;&lt;BR /&gt;&lt;EM&gt;define symbol __IntVectTable_end__&amp;nbsp;&amp;nbsp; = __region_BOOT_ROM_start__ + 0x3F;&lt;/EM&gt;&lt;BR /&gt;&lt;EM&gt;define exported symbol __BOOT_STACK_ADDRESS = __region_RAM_end__ - 7;&amp;nbsp;&amp;nbsp; &amp;nbsp;//0x20007FF8;&lt;/EM&gt;&lt;BR /&gt;&lt;EM&gt;define symbol __code_start__&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; = __IntVectTable_end__+1;&lt;/EM&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;EM&gt;define symbol __FlashConfig_start__&amp;nbsp;&amp;nbsp; = 0x00000400;&lt;/EM&gt;&lt;BR /&gt;&lt;EM&gt;define symbol __FlashConfig_end__&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; = 0x0000040f;&lt;/EM&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;EM&gt;define block CSTACK&amp;nbsp;&amp;nbsp;&amp;nbsp; with alignment = 8, size = __size_cstack__&amp;nbsp;&amp;nbsp; { };&lt;/EM&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;EM&gt;/*** Memory Regions ***/&lt;/EM&gt;&lt;BR /&gt;&lt;EM&gt;define memory mem with size = 4G;&lt;/EM&gt;&lt;BR /&gt;&lt;EM&gt;define region ROM_region&amp;nbsp;&amp;nbsp; = mem:[from (__IntVectTable_end__ + 1) to (__FlashConfig_start__ - 1)] | [from (__FlashConfig_end__+1)&amp;nbsp; to __region_BOOT_ROM_end__];&lt;/EM&gt;&lt;BR /&gt;&lt;EM&gt;define region RAM_region&amp;nbsp;&amp;nbsp; = mem:[from __region_RAM_start__&amp;nbsp;&amp;nbsp; to __region_RAM_end__];&lt;/EM&gt;&lt;BR /&gt;&lt;EM&gt;define region IntVectTable_region = mem:[from __IntVectTable_start__ to __IntVectTable_end__];&lt;/EM&gt;&lt;BR /&gt;&lt;EM&gt;define region FlashConfig_region&amp;nbsp; = mem:[from __FlashConfig_start__ to __FlashConfig_end__];&lt;/EM&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;EM&gt;/*** Initialization ***/&lt;/EM&gt;&lt;BR /&gt;&lt;EM&gt;do not initialize&amp;nbsp;&amp;nbsp; { readwrite };&lt;/EM&gt;&lt;BR /&gt;&lt;EM&gt;do not initialize&amp;nbsp;&amp;nbsp; { section .noinit };&lt;/EM&gt;&lt;BR /&gt;&lt;EM&gt;initialize manually { section .data};&lt;/EM&gt;&lt;BR /&gt;&lt;EM&gt;initialize manually { section .textrw };&lt;/EM&gt;&lt;BR /&gt;&lt;EM&gt;initialize by copy&amp;nbsp; { section .IntVectTable };&lt;/EM&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;EM&gt;/*** Memory placements ***/&lt;/EM&gt;&lt;BR /&gt;&lt;EM&gt;place at address mem:__code_start__ { readonly section .noinit };&lt;/EM&gt;&lt;BR /&gt;&lt;EM&gt;place in ROM_region&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; { readonly };&lt;/EM&gt;&lt;BR /&gt;&lt;EM&gt;place in RAM_region&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; { readwrite,&amp;nbsp; block CSTACK};&lt;/EM&gt;&lt;BR /&gt;&lt;EM&gt;place in IntVectTable_region {section IntVectTable};&lt;/EM&gt;&lt;BR /&gt;&lt;EM&gt;place in FlashConfig_region&amp;nbsp; { section FlashConfig };&lt;/EM&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;BR /&gt;&lt;STRONG&gt;KW40Z_Connectivity_Software_1.0.1\ConnSw\framework\Bootloader\Bootloader_OTAP_Serial\src\include\cfg&lt;/STRONG&gt;&lt;BR /&gt;&lt;STRONG&gt;MKW40Z160_cfg.h&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;BR /&gt;&lt;EM&gt;/*!&lt;/EM&gt;&lt;BR /&gt;&lt;EM&gt;* Copyright (c) 2015, Freescale Semiconductor, Inc.&lt;/EM&gt;&lt;BR /&gt;&lt;EM&gt;* All rights reserved.&lt;/EM&gt;&lt;BR /&gt;&lt;EM&gt;*&lt;/EM&gt;&lt;BR /&gt;&lt;EM&gt;* \file MKW40Z160.h&lt;/EM&gt;&lt;BR /&gt;&lt;EM&gt;* This file contains configuration options for the above processor&lt;/EM&gt;&lt;BR /&gt;&lt;EM&gt;*&lt;/EM&gt;&lt;BR /&gt;&lt;EM&gt;* Redistribution and use in source and binary forms, with or without modification,&lt;/EM&gt;&lt;BR /&gt;&lt;EM&gt;* are permitted provided that the following conditions are met:&lt;/EM&gt;&lt;BR /&gt;&lt;EM&gt;*&lt;/EM&gt;&lt;BR /&gt;&lt;EM&gt;* o Redistributions of source code must retain the above copyright notice, this list&lt;/EM&gt;&lt;BR /&gt;&lt;EM&gt;*&amp;nbsp;&amp;nbsp; of conditions and the following disclaimer.&lt;/EM&gt;&lt;BR /&gt;&lt;EM&gt;*&lt;/EM&gt;&lt;BR /&gt;&lt;EM&gt;* o Redistributions in binary form must reproduce the above copyright notice, this&lt;/EM&gt;&lt;BR /&gt;&lt;EM&gt;*&amp;nbsp;&amp;nbsp; list of conditions and the following disclaimer in the documentation and/or&lt;/EM&gt;&lt;BR /&gt;&lt;EM&gt;*&amp;nbsp;&amp;nbsp; other materials provided with the distribution.&lt;/EM&gt;&lt;BR /&gt;&lt;EM&gt;*&lt;/EM&gt;&lt;BR /&gt;&lt;EM&gt;* o Neither the name of Freescale Semiconductor, Inc. nor the names of its&lt;/EM&gt;&lt;BR /&gt;&lt;EM&gt;*&amp;nbsp;&amp;nbsp; contributors may be used to endorse or promote products derived from this&lt;/EM&gt;&lt;BR /&gt;&lt;EM&gt;*&amp;nbsp;&amp;nbsp; software without specific prior written permission.&lt;/EM&gt;&lt;BR /&gt;&lt;EM&gt;*&lt;/EM&gt;&lt;BR /&gt;&lt;EM&gt;* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND&lt;/EM&gt;&lt;BR /&gt;&lt;EM&gt;* ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED&lt;/EM&gt;&lt;BR /&gt;&lt;EM&gt;* WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE&lt;/EM&gt;&lt;BR /&gt;&lt;EM&gt;* DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR&lt;/EM&gt;&lt;BR /&gt;&lt;EM&gt;* ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES&lt;/EM&gt;&lt;BR /&gt;&lt;EM&gt;* (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;&lt;/EM&gt;&lt;BR /&gt;&lt;EM&gt;* LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON&lt;/EM&gt;&lt;BR /&gt;&lt;EM&gt;* ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT&lt;/EM&gt;&lt;BR /&gt;&lt;EM&gt;* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS&lt;/EM&gt;&lt;BR /&gt;&lt;EM&gt;* SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.&lt;/EM&gt;&lt;BR /&gt;&lt;EM&gt;*/&lt;/EM&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;EM&gt;/**************************************************/&lt;/EM&gt;&lt;BR /&gt;&lt;EM&gt;/** USER SETTINGS OF KINETIS MCU */&lt;/EM&gt;&lt;BR /&gt;&lt;EM&gt;/**&amp;nbsp; Kinetis ARM Cortex-M4 model */&lt;/EM&gt;&lt;BR /&gt;&lt;EM&gt;#ifndef _MK21D256_CFG_H&lt;/EM&gt;&lt;BR /&gt;&lt;EM&gt;#define _MK21D256_CFG_H&lt;/EM&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;EM&gt;#define KINETIS_MODEL KW40_48MHz&lt;/EM&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;EM&gt;/*&amp;nbsp; in the case of using USB VIRTUAL SERIAL LINK you must activate No break TRIM CHECKBOX in the master AN2295 PC Application&amp;nbsp; */&lt;/EM&gt;&lt;BR /&gt;&lt;EM&gt;/*&amp;nbsp; the break impulse is replaced by using only 9 bits zero impulse&amp;nbsp; */&lt;/EM&gt;&lt;BR /&gt;&lt;EM&gt;//&amp;nbsp; BREAK IMPULSE&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; |START| |0| |0| |0| |0| |0| |0| |0| |0| |0| |0| STOP|&lt;/EM&gt;&lt;BR /&gt;&lt;EM&gt;//&amp;nbsp; ZERO IMPULSE&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; |START| |0| |0| |0| |0| |0| |0| |0| |0| |0| |STOP|&lt;/EM&gt;&lt;BR /&gt;&lt;EM&gt;#define BOOTLOADER_SHORT_TRIM&amp;nbsp; 1&lt;/EM&gt;&lt;/P&gt;&lt;P&gt;&lt;BR /&gt;&lt;EM&gt;/** Kinetis Flash memory size */&lt;/EM&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;EM&gt;#define KINETIS_FLASH (160*1024)&lt;/EM&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;EM&gt;/** Bootloader flash protection */&lt;/EM&gt;&lt;BR /&gt;&lt;EM&gt;#define BOOTLOADER_FLASH_PROTECTION 0&lt;/EM&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;EM&gt;/** Boot timeout after POR (Power On Reset) for wait to connect Master **/&lt;/EM&gt;&lt;BR /&gt;&lt;EM&gt;/** BOOT_WAITING_TIMEOUT * 10ms **/&lt;/EM&gt;&lt;BR /&gt;&lt;EM&gt;#define BOOT_WAITING_TIMEOUT 100&lt;/EM&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;EM&gt;/**************************************************/&lt;/EM&gt;&lt;BR /&gt;&lt;EM&gt;/* Actual used UART module */&lt;/EM&gt;&lt;BR /&gt;&lt;EM&gt;#define BOOT_UART_BASE&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; UART1_BASE_PTR&lt;/EM&gt;&lt;BR /&gt;&lt;EM&gt;#define BOOT_UART_SIM_SCG_REG&amp;nbsp; SIM_SCGC4&lt;/EM&gt;&lt;BR /&gt;&lt;EM&gt;#define BOOT_UART_SIM_SCG_MASK SIM_SCGC4_UART1_MASK&lt;/EM&gt;&lt;BR /&gt;&lt;EM&gt;#define BOOT_BUS_CLOCK&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; (32768 * 640)&lt;/EM&gt;&lt;BR /&gt;&lt;EM&gt;/* Actual used UART module */&lt;/EM&gt;&lt;BR /&gt;&lt;EM&gt;/* A range of UART baudrates is (9600 - 115200) */&lt;/EM&gt;&lt;BR /&gt;&lt;EM&gt;//#define BOOT_UART_BAUD_RATE&amp;nbsp; 9600 &lt;/EM&gt;&lt;BR /&gt;&lt;EM&gt;//#define BOOT_UART_BAUD_RATE&amp;nbsp;&amp;nbsp;&amp;nbsp; 14400&lt;/EM&gt;&lt;BR /&gt;&lt;EM&gt;//#define BOOT_UART_BAUD_RATE&amp;nbsp;&amp;nbsp;&amp;nbsp; 19200 &lt;/EM&gt;&lt;BR /&gt;&lt;EM&gt;//#define BOOT_UART_BAUD_RATE&amp;nbsp; 38400 &lt;/EM&gt;&lt;BR /&gt;&lt;EM&gt;#define BOOT_UART_BAUD_RATE&amp;nbsp; 57600 &lt;/EM&gt;&lt;BR /&gt;&lt;EM&gt;//#define BOOT_UART_BAUD_RATE&amp;nbsp; 76800 &lt;/EM&gt;&lt;BR /&gt;&lt;EM&gt;//#define BOOT_UART_BAUD_RATE&amp;nbsp; 115200 &lt;/EM&gt;&lt;BR /&gt;&lt;EM&gt;//#define BOOT_UART_BAUD_RATE&amp;nbsp; 128000 &lt;/EM&gt;&lt;BR /&gt;&lt;EM&gt;/** GPIO &amp;amp; UART pins initialization */&lt;/EM&gt;&lt;/P&gt;&lt;P&gt;&lt;BR /&gt;&lt;EM&gt;#define BOOT_UART_GPIO_PORT_RX&amp;nbsp;&amp;nbsp; PORTE_BASE_PTR &lt;/EM&gt;&lt;BR /&gt;&lt;EM&gt;#define BOOT_UART_GPIO_PORT_TX&amp;nbsp;&amp;nbsp; PORTE_BASE_PTR &lt;/EM&gt;&lt;BR /&gt;&lt;EM&gt;#define BOOT_UART_GPIO_PORT_SIM_SCG_REG&amp;nbsp; SIM_SCGC5&lt;/EM&gt;&lt;BR /&gt;&lt;EM&gt;#define BOOT_UART_GPIO_PORT_SIM_SCG_MASK SIM_SCGC5_PORTE_MASK &lt;/EM&gt;&lt;BR /&gt;&lt;EM&gt;/*&amp;nbsp; setting of multiplexer for UART alternative of pin */&lt;/EM&gt;&lt;BR /&gt;&lt;EM&gt;#define BOOT_PIN_UART_ALTERNATIVE 3&lt;/EM&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;EM&gt;/*&amp;nbsp; setting of multiplexer for GPIO alternative of pin */&lt;/EM&gt;&lt;BR /&gt;&lt;EM&gt;#define BOOT_PIN_GPIO_ALTERNATIVE 1&lt;/EM&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;EM&gt;#define BOOT_UART_GPIO_PIN_RX&amp;nbsp;&amp;nbsp; 1 &amp;nbsp;&lt;/EM&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;EM&gt;#define BOOT_UART_GPIO_PIN_TX&amp;nbsp;&amp;nbsp; 0 &amp;nbsp;&lt;/EM&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;EM&gt;/**************************************************/&lt;/EM&gt;&lt;BR /&gt;&lt;EM&gt;/* Actual used PIN reset setting */&lt;/EM&gt;&lt;BR /&gt;&lt;EM&gt;#define BOOT_PIN_ENABLE_SIM_SCG_REG&amp;nbsp; SIM_SCGC5&lt;/EM&gt;&lt;BR /&gt;&lt;EM&gt;#define BOOT_PIN_ENABLE_SIM_SCG_MASK SIM_SCGC5_PORTC_MASK&lt;/EM&gt;&lt;BR /&gt;&lt;EM&gt;#define BOOT_PIN_ENABLE_PORT_BASE&amp;nbsp; PORTC_BASE_PTR&amp;nbsp; &amp;nbsp;&lt;/EM&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;EM&gt;#define BOOT_PIN_ENABLE_GPIO_BASE&amp;nbsp; PTC_BASE_PTR&amp;nbsp; &amp;nbsp;&lt;/EM&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;EM&gt;#define BOOT_PIN_ENABLE_NUM&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 4&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;/EM&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;EM&gt;/* CRC module clock gating info */&lt;/EM&gt;&lt;BR /&gt;&lt;EM&gt;#define BOOT_CRC_SIM_SCG_REG&amp;nbsp; SIM_SCGC6&lt;/EM&gt;&lt;BR /&gt;&lt;EM&gt;#define BOOT_CRC_SIM_SCG_MASK SIM_SCGC6_CRC_MASK &lt;/EM&gt;&lt;BR /&gt;&lt;EM&gt;/**************************************************/&lt;/EM&gt;&lt;BR /&gt;&lt;EM&gt;/** BOOTLOADER FEATURES SETTINGS */&lt;/EM&gt;&lt;BR /&gt;&lt;EM&gt;#define BOOTLOADER_ENABLE_READ_CMD&amp;nbsp; 1&lt;/EM&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;EM&gt;#define BOOTLOADER_INT_WATCHDOG&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 0&lt;/EM&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;EM&gt;#define BOOTLOADER_ENABLE_VERIFY&amp;nbsp;&amp;nbsp;&amp;nbsp; 1&lt;/EM&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;EM&gt;#define BOOTLOADER_CRC_ENABLE&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 1&lt;/EM&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;EM&gt;#define BOOTLOADER_AUTO_TRIMMING&amp;nbsp;&amp;nbsp;&amp;nbsp; 1 &lt;/EM&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;EM&gt;#define BOOTLOADER_PIN_ENABLE&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 0&lt;/EM&gt;&lt;BR /&gt;&lt;EM&gt;/**************************************************/&lt;/EM&gt;&lt;BR /&gt;&lt;EM&gt;/** CALIBRATION OF BOOTLOADER TRIM SETTINGS */&lt;/EM&gt;&lt;BR /&gt;&lt;EM&gt;#define BOOT_CALIBRATION_GPIO_BASE&amp;nbsp; PTE_BASE_PTR&lt;/EM&gt;&lt;BR /&gt;&lt;EM&gt;/******************************************************************************&lt;/EM&gt;&lt;BR /&gt;&lt;EM&gt;*&lt;/EM&gt;&lt;BR /&gt;&lt;EM&gt;*&lt;/EM&gt;&lt;BR /&gt;&lt;EM&gt;*&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Advanced detail settings for non standard settings&lt;/EM&gt;&lt;BR /&gt;&lt;EM&gt;*&lt;/EM&gt;&lt;BR /&gt;&lt;EM&gt;*&lt;/EM&gt;&lt;BR /&gt;&lt;EM&gt;******************************************************************************/&lt;/EM&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;EM&gt;#define VECTOR_TABLE_SIZE (48*4)&lt;/EM&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;EM&gt;/* Flash block count of this MCU */&lt;/EM&gt;&lt;BR /&gt;&lt;EM&gt;#define FLASH_BLOCK_CNT 1&lt;/EM&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;EM&gt;/* Start address of interrupt vector table */ &lt;/EM&gt;&lt;BR /&gt;&lt;EM&gt;#define INTERRUPT_VECTORS 0x0000&lt;/EM&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;EM&gt;/* Start address of relocated interrutp vector table */&lt;/EM&gt;&lt;BR /&gt;&lt;EM&gt;#define RELOCATED_VECTORS 0x4000 &lt;/EM&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;EM&gt;/* Flash start address */&lt;/EM&gt;&lt;BR /&gt;&lt;EM&gt;#define USER_FLASH_START RELOCATED_VECTORS&lt;/EM&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;EM&gt;/* Flash end address */&lt;/EM&gt;&lt;BR /&gt;&lt;EM&gt;//#define USER_FLASH_END 0x0003FFFF&lt;/EM&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;EM&gt;/* Flash2 start address */&lt;/EM&gt;&lt;BR /&gt;&lt;EM&gt;//#define USER_FLASH_START_2 0x00040000&lt;/EM&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;EM&gt;/* Flash2 end address */&lt;/EM&gt;&lt;BR /&gt;&lt;EM&gt;//#define USER_FLASH_END_2 0x0005FFFF&lt;/EM&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;EM&gt;/* Size of write block */&lt;/EM&gt;&lt;BR /&gt;&lt;EM&gt;#define FLASH_WRITE_PAGE 128&lt;/EM&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;EM&gt;/* Size of erase block */&lt;/EM&gt;&lt;BR /&gt;&lt;EM&gt;#define FLASH_ERASE_PAGE 1024&lt;/EM&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;EM&gt;/* Maximal length of ID_STRING */&lt;/EM&gt;&lt;BR /&gt;&lt;EM&gt;//#define ID_STRING_MAX 5&lt;/EM&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;EM&gt;/* Description string */&lt;/EM&gt;&lt;BR /&gt;&lt;EM&gt;#define KINETIS_MODEL_STR "KL46"&lt;/EM&gt;&lt;BR /&gt;&lt;EM&gt;#define FLASH_INIT_FLASH_CLOCK { SIM_SCGC6 |= SIM_SCGC6_FTF_MASK; }&lt;/EM&gt;&lt;BR /&gt;&lt;EM&gt;#define FLASH_BASE_PTR&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; FTFA_BASE_PTR&lt;/EM&gt;&lt;BR /&gt;&lt;EM&gt;#define FLASH_FSTAT&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;&amp;nbsp;&amp;nbsp;&amp;nbsp; FTFA_FSTAT&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;&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;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;/EM&gt;&lt;BR /&gt;&lt;EM&gt;#define FLASH_FSTAT_CCIF_MASK&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; FTFA_FSTAT_CCIF_MASK&lt;/EM&gt;&lt;BR /&gt;&lt;EM&gt;#define FLASH_FSTAT_ACCERR_MASK&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; FTFA_FSTAT_ACCERR_MASK&lt;/EM&gt;&lt;BR /&gt;&lt;EM&gt;#define FLASH_FSTAT_FPVIOL_MASK&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; FTFA_FSTAT_FPVIOL_MASK&lt;/EM&gt;&lt;BR /&gt;&lt;EM&gt;#define FLASH_FSTAT_RDCOLERR_MASK&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; FTFA_FSTAT_RDCOLERR_MASK&lt;/EM&gt;&lt;BR /&gt;&lt;EM&gt;#define FLASH_FSTAT_MGSTAT0_MASK&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; FTFA_FSTAT_MGSTAT0_MASK &lt;/EM&gt;&lt;BR /&gt;&lt;EM&gt;#endif//MK21D5_CFG_H&lt;/EM&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 02 Dec 2016 14:59:19 GMT</pubDate>
      <guid>https://community.nxp.com/t5/Wireless-MCU/MKW30Z-rebuild-Bootloader-OTAP-KW40Z4/m-p/597382#M1581</guid>
      <dc:creator>lucianfiran</dc:creator>
      <dc:date>2016-12-02T14:59:19Z</dc:date>
    </item>
  </channel>
</rss>

