diff options
Diffstat (limited to 'Projects/STM32WB_Copro_Wireless_Binaries/STM32WB3x/Release_Notes.html')
-rw-r--r-- | Projects/STM32WB_Copro_Wireless_Binaries/STM32WB3x/Release_Notes.html | 267 |
1 files changed, 237 insertions, 30 deletions
diff --git a/Projects/STM32WB_Copro_Wireless_Binaries/STM32WB3x/Release_Notes.html b/Projects/STM32WB_Copro_Wireless_Binaries/STM32WB3x/Release_Notes.html index f534603ed..6b5f077ae 100644 --- a/Projects/STM32WB_Copro_Wireless_Binaries/STM32WB3x/Release_Notes.html +++ b/Projects/STM32WB_Copro_Wireless_Binaries/STM32WB3x/Release_Notes.html @@ -40,29 +40,35 @@ <li>stm32wb3x_BLE_Stack_full_fw.bin <ul> <li>Full BLE Stack 5.0 certified : Link Layer, HCI, L2CAP, ATT, SM, GAP and GATT database</li> -<li>BT SIG Certification listing : <a href="https://launchstudio.bluetooth.com/ListingDetails/59722">Declaration ID D042164</a></li> +<li>BT SIG Certification listing : <a href="https://launchstudio.bluetooth.com/ListingDetails/59722">Declaration ID D042164</a> +<ul> +<li>Following features are kept: +<ul> +<li>GAP peripheral, central (LL slave up to 2 links, LL master up to 6 links)</li> +<li>GATT server, client</li> +<li>Data length extension</li> +<li>2Mbit PHY / PHY update</li> +<li>Privacy / White list</li> +<li>Legacy Pairing, LE secure connections</li> +<li>HCI interface (full, like stm32wb5x_BLE_HCILayer_fw.bin)</li> +<li>Direct Test Mode</li> +</ul></li> +</ul></li> </ul></li> <li>stm32wb3x_BLE_Stack_light_fw.bin <ul> -<li>Erase/Write Flash of Wireless Stack Non Volatile Memory while BLE link is active (Min Interval 28ms)</li> -<li>Fix IFS (Inter Frame Spacing) sometimes longer than 152us</li> +<li>Full BLE Stack 5.0 certified : Link Layer, HCI, L2CAP, ATT, SM, GAP and GATT database</li> +<li>BT SIG Certification listing : <a href="https://launchstudio.bluetooth.com/ListingDetails/59722">Declaration ID D042164</a></li> <li>Wireless Ble stack Light configuration – Slave Only <ul> <li>Following features are kept: <ul> -<li>GAP peripheral / LL slave</li> +<li>GAP peripheral only (LL slave up to 2 links)</li> <li>GATT server</li> <li>Data length extension</li> -<li>Double LL slave</li> -</ul></li> -<li>Following Feature are removed -<ul> -<li>GAP central / LL master</li> -<li>GATT client</li> -<li>Privacy / White list</li> -<li>Secure connections</li> -<li>2 MB / PHY update</li> -<li>HCI interface (useless functions are removed)</li> +<li>Legacy Pairing</li> +<li>HCI interface (reduced)</li> +<li>Direct Test Mode</li> </ul></li> </ul></li> </ul></li> @@ -87,7 +93,7 @@ <li>To be used for MAC FFD and RFD devices</li> </ul></li> </ul> -<p><mark>How to flash the Wireless Coprocessor Binary via USB</mark></p> +<p><mark>How to flash the Wireless Coprocessor Binary via USB (Command Line Interface)</mark></p> <ul> <li><p><em>Inside the below procedure, the references to binaries name and install address are provided in the section <strong>Main Changes</strong> of this file.</em></p></li> <li><p>STEP 1: Use STM32CubeProgrammer</p> @@ -107,18 +113,18 @@ </ul></li> </ul></li> </ul></li> -<li><p>STEP 3 : Delete current wireless stack :</p> +<li><p>STEP 3 : Delete current wireless stack</p> <ul> <li><em>STM32_Programmer_CLI.exe -c port=usb1 -fwdelete</em></li> </ul></li> -<li>STEP 4 : Read and upgrade FUS Version +<li><p>STEP 4 : Read and upgrade FUS Version</p> <ul> <li><em>STM32_Programmer_CLI.exe -c port=usb1 -r32 0x20008030 1</em> <ul> <li>*0x20008030 : 01000000 : FUSv1.0.x => <strong>Up to date, you can download the new wireless stack using STEP6.</strong></li> </ul></li> </ul></li> -<li>STEP 5 : Download new FUS : Not Applicable +<li><p>STEP 5 :Download latest FUS [ Not Applicable ]</p> <ul> <li><em>STM32_Programmer_CLI.exe -c port=usb1 -fwupgrade [FUS_Binary] [Install@] firstinstall=0</em> Please check <strong>Firmware Upgrade Services Binary Table</strong> for Install@ parameter depending of the binary.</li> </ul></li> @@ -129,49 +135,242 @@ <p>Please check <strong>Wireless Coprocessor Binary Table</strong> for Install@ parameter depending of the binary.</p></li> <li><p>STEP 7 : Revert STEP 2 procedure to put back device in normal mode.</p></li> </ul> -<p><mark>How to flash the Wireless Coprocessor Binary via SWD/JTAG</mark></p> +<p><mark>How to flash the Wireless Coprocessor Binary via SWD/JTAG by ST-LINK (Command Line Interface)</mark></p> <ul> <li><p><em>Inside the below procedure, the references to binaries name and install address are provided in the section <strong>Main Changes</strong> of this file.</em></p></li> <li><p>STEP 1: Use STM32CubeProgrammer</p> <ul> -<li><p>Version 2.2.0 or higher.</p></li> +<li><p>Version 2.4.0 or higher.</p></li> <li><p>It gives access to Firmware Upgrade Service (FUS) (<a href="http://www.st.com/st-web-ui/static/active/en/resource/technical/document/application_note/DM00513965.pdf">AN5185</a> : ST firmware upgrade services for STM32WB Series.) through Bootloader.</p></li> <li><p>It is currently available as Command Line Interface (CLI) mode.</p></li> </ul></li> -<li>STEP 2 : Read and upgrade FUS Version +<li><p>STEP 2: Access to SWD Interface (system flash)</p> <ul> -<li><em>STM32_Programmer_CLI.exe -c port=usb1 -r32 0x20030030 1</em> +<li>For NUCLEO-WB35CE : <ul> -<li>*0x20030030 : 01000000 : FUSv1.0.x => <strong>Up to date, you can download the new wireless stack using STEP 4.</strong></li> +<li>Power ON via ST-LINK and Jumper JP1(USB_STL)</li> </ul></li> </ul></li> -<li>STEP 3 :Download new FUS : Not Applicable +<li><p>STEP 3: Delete current wireless stack</p> <ul> -<li><em>STM32_Programmer_CLI.exe -c port=swd mode=UR -ob nSWboot0=0 nboot1=1 nboot0=1 -fwupgrade [FUS_Binary] [Install@] firstinstall=0</em> Please check <strong>Firmware Upgrade Services Binary Table</strong> for Install@ parameter depending of the binary.</li> +<li><em>STM32_Programmer_CLI.exe -c port=swd -fwdelete</em></li> </ul></li> -<li><p>STEP 4 : Download new wireless stack :</p> +<li><p>STEP 4 : Read and upgrade FUS Version (if unknown FUS version)</p> +<ul> +<li>it can been obtained with Transparent Mode application from STM32CubeMonitor-RF interface or using other flashing method via USB described in RN. <ul> -<li><em>STM32_Programmer_CLI.exe -c port=swd mode=UR -ob nSWboot0=0 nboot1=1 nboot0=1 -fwupgrade [Wireless_Coprocessor_Binary] [Install@] firstinstall=1</em></li> +<li>*0x20030030 : 01000000 : FUSv1.0.x => <strong>Up to date, you can download the new wireless stack using STEP 5.</strong></li> +</ul></li> +</ul></li> +<li><p>STEP 5 :Download latest FUS [ Not Applicable ]</p> +<ul> +<li><em>STM32_Programmer_CLI.exe -c port=swd mode=UR -fwupgrade [FUS_Binary] [Install@] firstinstall=0</em> Please check <strong>Firmware Upgrade Services Binary Table</strong> for Install@ parameter depending of the binary.</li> +</ul></li> +<li><p>STEP 6 : Download new wireless stack :</p> +<ul> +<li><em>STM32_Programmer_CLI.exe -c port=swd mode=UR -fwupgrade [Wireless_Coprocessor_Binary] [Install@] firstinstall=1</em></li> </ul> <p>Please check <strong>Wireless Coprocessor Binary Table</strong> for Install@ parameter depending of the binary.</p></li> +<li><p>STEP 7 : Revert to default OB configuration :</p> +<ul> +<li>*STM32_Programmer_CLI.exe -c port=swd mode=UR -ob nSWboot0=1 nboot1=1 nboot0=1</li> +</ul></li> +</ul> +<p><mark>How to flash the Wireless Coprocessor Binary via USB (STM32CubeProgrammer GUI)</mark></p> +<ul> +<li><p><em>Inside the below procedure, the references to binaries name and install address are provided in the section <strong>Main Changes</strong> of this file.</em></p></li> +<li><p>STEP 1: Use STM32CubeProgrammer</p> +<ul> +<li><p>Version 2.4.0 or higher.</p></li> +<li><p>It gives access to Firmware Upgrade Service (FUS) (<a href="http://www.st.com/st-web-ui/static/active/en/resource/technical/document/application_note/DM00513965.pdf">AN5185</a> : ST firmware upgrade services for STM32WB Series.) through Bootloader.</p></li> +<li><p>It is currently available as Command Line Interface (CLI) mode.</p></li> +</ul></li> +<li><p>STEP 2: Access to Bootloader USB Interface (system flash)</p> +<ul> +<li>Boot mode selected by Boot0 pin set to VDD +<ul> +<li>For P-NUCLEO-WB35.Nucleo : +<ul> +<li>Jumper between CN7.5(VDD) and CN7.7(Boot0)</li> +<li>Power ON via USB_USER and Jumper JP1(USB_MCU)</li> +</ul></li> +</ul></li> +<li>open STM32CubeProgrammer GUI and select “USB”</li> +<li>in USB configuration: (Port: USB1) then select “Connect”</li> +</ul></li> +<li><p>STEP 3 : Delete current wireless stack</p> +<ul> +<li>in Firmware Upgrade Services: select “Delete Firmware”</li> +</ul></li> +<li><p>STEP 4 : Read and upgrade FUS Version</p> +<ul> +<li>in Firmware Upgrade Services: select “Read FUS state” +<ul> +<li>*0x20008030 : 01000000 : FUSv1.0.x => <strong>Up to date, you can download the new wireless stack using STEP 6.</strong></li> +</ul></li> +</ul></li> +<li>STEP 5 : Download latest FUS [ Not Applicable ] +<ul> +<li>in Firmware Upgrade Service: (File Path: [FUS_Binary], Start Adress: [Install@])</li> +<li>then select “Firmware Upgrade” Please check <strong>Firmware Upgrade Services Binary Table</strong> for Install@ parameter depending of the binary.</li> +</ul></li> +<li><p>STEP 6 : Download new wireless stack :</p> +<ul> +<li>in Firmware Upgrade Service: (File Path: [Wireless_Coprocessor_Binary], Start Adress: [Install@])</li> +<li>then select “Firmware Upgrade” with “Verify download” and “Start stack after upgrade” Please check <strong>Firmware Upgrade Services Binary Table</strong> for Install@ parameter depending of the binary.</li> +</ul></li> +<li><p>STEP 7 : Revert STEP 2 procedure to put back device in normal mode.</p></li> +</ul> +<p><mark>How to flash the Wireless Coprocessor Binary via SWD/JTAG by ST-LINK (STM32CubeProgrammer GUI)</mark></p> +<ul> +<li><p><em>Inside the below procedure, the references to binaries name and install address are provided in the section <strong>Main Changes</strong> of this file.</em></p></li> +<li><p>STEP 1: Use STM32CubeProgrammer GUI</p> +<ul> +<li><p>Version 2.4.0 or higher.</p></li> +<li><p>It gives access to Firmware Upgrade Service (FUS) (<a href="http://www.st.com/st-web-ui/static/active/en/resource/technical/document/application_note/DM00513965.pdf">AN5185</a> : ST firmware upgrade services for STM32WB Series.) through Bootloader.</p></li> +<li><p>It is currently available as Graphical User Interface (GUI) mode (or Command Line Interface (CLI) mode).</p></li> +</ul></li> +<li><p>STEP 2: Access to SWD Interface (system flash)</p> +<ul> +<li>For P-NUCLEO-WB35.Nucleo : +<ul> +<li>Power ON via ST-LINK and Jumper JP1(USB_STL)</li> +</ul></li> +<li>open STM32CubeProgrammer GUI and select “ST-LINK”</li> +<li>in ST-LINK configuration: (Port: SWD) then select “Connect”</li> +</ul></li> +<li><p>STEP 3: Delete current wireless stack</p> +<ul> +<li>in Firmware Upgrade Services: select “Delete Firmware”</li> +</ul></li> +<li><p>STEP 4 : Read and upgrade FUS Version (if unknown FUS version)</p> +<ul> +<li>it can been obtained with Transparent Mode application from STM32CubeMonitor-RF interface or using other flashing method via USB described in RN.</li> +<li>*0x20008030 : 01000000 : FUSv1.0.x => <strong>Up to date, you can download the new wireless stack using STEP 6.</strong></li> +</ul></li> +<li><p>STEP 5 : Download latest FUS [ Not Applicable ]</p> +<ul> +<li>in Firmware Upgrade Service: (File Path: [FUS_Binary], Start Adress: [Install@])</li> +<li>then select “Firmware Upgrade” Please check <strong>Firmware Upgrade Services Binary Table</strong> for Install@ parameter depending of the binary.</li> +</ul></li> +<li><p>STEP 6 : Download new wireless stack :</p> +<ul> +<li>in Firmware Upgrade Service: (File Path: [Wireless_Coprocessor_Binary], Start Adress: [Install@])</li> +<li>then select “Firmware Upgrade” with “Verify download” and “Start stack after upgrade” Please check <strong>Firmware Upgrade Services Binary Table</strong> for Install@ parameter depending of the binary.</li> +</ul></li> +<li><p>STEP 7 : Revert to default configuration: in Option Bytes menu for User Configuration set: nSWboot0=1 (checked) nboot1=1 nboot0=1</p></li> </ul> +<div class="collapse"> +<input type="checkbox" id="collapse-section7" checked aria-hidden="true"> <label for="collapse-section7" aria-hidden="false">Notes </label> +<div> <p><mark>How to compute available flash size </mark></p> <ul> -<li><p>The default linker file provided in [\Drivers\CMSIS\Device\ST32WBxx\Source\Templates] allows the application to use a fixed amount of flash.</p> +<li><p>The default linker file is provided in [\Drivers\CMSIS\Device\ST32WBxx\Source\Templates].</p> <p>The maximum flash memory that can be used by the application is up to the Secure Flash Start Address (SFSA) that can be read from the option byte.</p> <p>The <strong>ICFEDIT_region_ROM_end</strong> in the linker can be modified with a value up to : (0x08000000 + (SFSA << 12)) - 1.</p></li> <li><p><strong>Example</strong>: When the SFSA option byte is set to 0x32, the maximum value to be used for __ICFEDIT_region_ROM_end is 0x08031FFF – which is 200KB of flash</p></li> -<li><p><strong>Note</strong>: The SFSA option byte can only be set by the CPU2. The user cannot modify that value.</p></li> +<li><strong>Note</strong>: The SFSA option byte can only be set by the CPU2. The user cannot modify that value.</li> </ul> </div> +</div> +</div> <div class="col-sm-12 col-lg-8"> <h1 id="update-history">Update History</h1> <div class="collapse"> -<input type="checkbox" id="collapse-section1" checked aria-hidden="true"> <label for="collapse-section1" aria-hidden="true">V1.5.0 / 14-February-2020</label> +<input type="checkbox" id="collapse-section2" checked aria-hidden="true"> <label for="collapse-section2" aria-hidden="true">V1.6.0 / 27-March-2020</label> <div> <h2 id="main-changes">Main Changes</h2> <p><strong>Associated changes in Wireless Coprocessor Binary</strong>:</p> <ul> +<li>MAC: +<ul> +<li>ID 81423 - Exceeding max Pending Data crashed the board</li> +<li>ID 81426 - Beacon Ind msg wrongly issued</li> +</ul></li> +<li>THREAD: +<ul> +<li>Parameter check updates for notification to the application.</li> +<li>ID 80054 - Coap Default Handler fixed</li> +<li>ID 82579 - Some commands such as otLinkGetExtendedAddress return data in the SRAM2a section</li> +</ul></li> +<li>BLE: +<ul> +<li>BLE stack updates:</li> +<li>Fix vulnerability referenced as CVE-2019-19192</li> +<li>ID 82231 - The PESD bit is kept high when BLE Mesh un-provisioning is requested by AT Command</li> +<li>ID 68815 - Min connection interval does not allow scan @ master side</li> +<li>ID 76341 - Ellisys LL/SEC/ADV/BV-03-C test fail due to wrong RPA Timeout value 10.7s vs 10s expected</li> +<li>ID 74352 - STM32WB BLE Stack DoS deadlock vulnerability</li> +<li>ID 81795 - STM32WB BLE stack blocks at some commands following ACI_HAL_RX_START</li> +<li>ID 81758 - Apply specific workarounds and RF trimming parameters when using ACI_HAL_TONE_START</li> +<li>ID 77395 - Ellisys LL/CON/INI/BV-04 issue on connection supervision timeout</li> +<li>ID 82288 - BLE stack: behavior of HCI SC key events in full stack mode</li> +<li>ID 79038 - SMP changes to avoid master pairing without “force rebond” working after bond lost</li> +<li>ID 68859 - Multilink Secure Pairing Collision make pairing failing</li> +<li>ID 75302 - SMP: no more possible from master or slave to redo a new refresh key, or force rebond if master send several GAP_send_pairing_REQ before HCI_ENCRYPTION event issue.</li> +<li>ID 76809 - PTS: SM/MAS/SCOB/BV-01-C issue on GAP_AUTHENTICATON that modifies OOB data</li> +<li>ID 79042 - SMP: bond lost event on master side</li> +<li>ID 81007 - HCI_Data_Buffer_Overflow event to be removed as useless</li> +<li>ID 82059 - BLE stack init: change handling of a too large number of links parameter</li> +</ul></li> +</ul> +<p><strong>Binary Install Address and version</strong> : Provides Install address for the targeted binary to be used in flash procedure “STEP 6” via USB or “STEP 4” via SWD/JTAG.</p> +<table> +<thead> +<tr class="header"> +<th>Wireless Coprocessor Binary</th> +<th>STM32WB3x(512K)</th> +<th>Version</th> +<th>Date</th> +</tr> +</thead> +<tbody> +<tr class="odd"> +<td>stm32wb3x_BLE_HCILayer_fw.bin</td> +<td>0x805C000</td> +<td><strong>v1.6.0</strong></td> +<td>03/27/2020</td> +</tr> +<tr class="even"> +<td>stm32wb3x_BLE_Stack_full_fw.bin</td> +<td>0x804B000</td> +<td><strong>v1.6.0</strong></td> +<td>03/27/2020</td> +</tr> +<tr class="odd"> +<td>stm32wb3x_BLE_Stack_light_fw.bin</td> +<td>0x8059000</td> +<td><strong>v1.6.0</strong></td> +<td>03/27/2020</td> +</tr> +<tr class="even"> +<td>stm32wb3x_Mac_802_15_4_fw.bin</td> +<td>0x8064000</td> +<td><strong>v1.6.0</strong></td> +<td>03/27/2020</td> +</tr> +<tr class="odd"> +<td>stm32wb3x_Thread_FTD_fw.bin</td> +<td>0x801F000</td> +<td><strong>v1.6.0</strong></td> +<td>03/27/2020</td> +</tr> +<tr class="even"> +<td>stm32wb3x_Thread_MTD_fw.bin</td> +<td>0x8034000</td> +<td><strong>v1.6.0</strong></td> +<td>03/27/2020</td> +</tr> +</tbody> +</table> +</div> +</div> +<div class="collapse"> +<input type="checkbox" id="collapse-section1" aria-hidden="true"> <label for="collapse-section1" aria-hidden="true">V1.5.0 / 14-February-2020</label> +<div> +<h2 id="main-changes-1">Main Changes</h2> +<p><strong>Associated changes in Wireless Coprocessor Binary</strong>:</p> +<ul> <li>Initial version of Wireless Coprocessor Binary compatible with STM32WB3x.</li> <li>Thread <ul> @@ -182,6 +381,14 @@ <ul> <li>Support of 802_15_4 MAC stack on STM32WB35</li> </ul></li> +<li>BLE +<ul> +<li>Introduction of new binary <strong>stm32wb3x_BLE_Stack_light_fw.bin</strong> for supporting Slave only (cf previous detailed description).</li> +<li><strong>WARNING</strong>: when using the stm32wb3x_BLE_Stack_light_fw.bin binary, the maximum number of simultaneous connections that the device will support is 2<br /> +then #define CFG_BLE_NUM_LINK in app_conf.h shall be updated accordingly.</li> +<li>Erase/Write Flash of Wireless Stack Non Volatile Memory while BLE link is active (Min Interval 28ms)</li> +<li>Fix IFS (Inter Frame Spacing) sometimes longer than 152us</li> +</ul></li> </ul> <p><strong>Binary Install Address and version</strong> : Provides Install address for the targeted binary to be used in flash procedure “STEP 6” via USB or “STEP 4” via SWD/JTAG.</p> <table> |