STM32WB readme update

pull/13304/head
jeromecoutant 2020-07-10 18:03:09 +02:00
parent 285d533075
commit ec1e659d3a
2 changed files with 32 additions and 189 deletions

View File

@ -73,7 +73,7 @@ This table summarizes the STM32Cube versions currently used in Mbed OS master br
| L1 | 1.8.1 | https://github.com/STMicroelectronics/STM32CubeL1 | | L1 | 1.8.1 | https://github.com/STMicroelectronics/STM32CubeL1 |
| L4 | 1.11.0 | https://github.com/STMicroelectronics/STM32CubeL4 | | L4 | 1.11.0 | https://github.com/STMicroelectronics/STM32CubeL4 |
| L5 | 1.1.0 | https://github.com/STMicroelectronics/STM32CubeL5 | | L5 | 1.1.0 | https://github.com/STMicroelectronics/STM32CubeL5 |
| WB | 1.4.0 | https://github.com/STMicroelectronics/STM32CubeWB | | WB | 1.7.0 | https://github.com/STMicroelectronics/STM32CubeWB |
In Mbed OS repository, we try to minimize the difference between "official" and copied files. In Mbed OS repository, we try to minimize the difference between "official" and copied files.

View File

@ -15,6 +15,8 @@ This ST MCU family is dual-core : based on an Arm Cortex-M4 core and an Arm Cort
[st.com NUCLEO page](https://www.st.com/en/evaluation-tools/p-nucleo-wb55.html) [st.com NUCLEO page](https://www.st.com/en/evaluation-tools/p-nucleo-wb55.html)
[mbed.com NUCLEO page](https://os.mbed.com/platforms/ST-Nucleo-WB55RG/)
- Total FLASH is 1MB, but note that it is shared by M4 and M0 cores. - Total FLASH is 1MB, but note that it is shared by M4 and M0 cores.
- mbed-os application size is then limited to 768 KB - mbed-os application size is then limited to 768 KB
@ -39,6 +41,11 @@ Note that the BLE controller firmware running on the cortex-M0 is the same as in
- within mbed, the controller will run only the below-HCI part - within mbed, the controller will run only the below-HCI part
- within STcubeFW (and STM32WPAN middleware), it can run also up to GATT / GAP layers ... - within STcubeFW (and STM32WPAN middleware), it can run also up to GATT / GAP layers ...
Official ST Application Note AN5289: Building wireless applications with STM32WB Series microcontrollers :
https://www.st.com/resource/en/application_note/dm00598033-building-wireless-applications-with-stm32wb-series-microcontrollers-stmicroelectronics.pdf
## mbed-trace support ## mbed-trace support
trace group: BLE_WB trace group: BLE_WB
@ -56,16 +63,16 @@ example:
## BLE FW update ## BLE FW update
Latest information : Official ST Application Note AN5185: ST firmware upgrade services for STM32WB Series :
https://github.com/STMicroelectronics/STM32CubeWB/blob/master/how_to_program_wireless_stacks.txt http://www.st.com/st-web-ui/static/active/en/resource/technical/document/application_note/DM00513965.pdf
Latest BLE FW : Latest BLE FW :
https://github.com/STMicroelectronics/STM32CubeWB/blob/master/Projects/STM32WB_Copro_Wireless_Binaries/stm32wb5x_BLE_Stack_fw.bin https://github.com/STMicroelectronics/STM32CubeWB/blob/master/Projects/STM32WB_Copro_Wireless_Binaries/STM32WB5x/stm32wb5x_BLE_Stack_full_fw.bin
## BLE FW flashing procedure ## BLE FW flashing procedure
Release Note and complete flashing procedure: Release Note and complete flashing procedure:
https://htmlpreview.github.io/?https://github.com/STMicroelectronics/STM32CubeWB/blob/master/Projects/STM32WB_Copro_Wireless_Binaries/Release_Notes.html https://htmlpreview.github.io/?https://github.com/STMicroelectronics/STM32CubeWB/blob/master/Projects/STM32WB_Copro_Wireless_Binaries/STM32WB5x/Release_Notes.html
- STEP 1: Use STM32CubeProgrammer - STEP 1: Use STM32CubeProgrammer
@ -73,7 +80,7 @@ https://htmlpreview.github.io/?https://github.com/STMicroelectronics/STM32CubeWB
https://www.st.com/en/development-tools/stm32cubeprog.html https://www.st.com/en/development-tools/stm32cubeprog.html
```` ````
FLASHPATH="C:\Program Files (x86)\STMicroelectronics\STM32Cube\STM32CubeProgrammer\bin" FLASHPATH="C:\Program Files\STMicroelectronics\STM32Cube\STM32CubeProgrammer\bin"
export PATH=$FLASHPATH:$PATH export PATH=$FLASHPATH:$PATH
```` ````
@ -88,29 +95,8 @@ export PATH=$FLASHPATH:$PATH
- STEP 3 : Delete current wireless stack : - STEP 3 : Delete current wireless stack :
``` ```
$ ./STM32_Programmer_CLI.exe -c port=usb1 -fwdelete $ STM32_Programmer_CLI.exe -c port=usb1 -fwdelete
------------------------------------------------------------------- ...
STM32CubeProgrammer v2.3.0
-------------------------------------------------------------------
USB speed : Full Speed (12MBit/s)
Manuf. ID : STMicroelectronics
Product ID : DFU in FS Mode
SN : 207F38933036
FW version : 0x011a
Device ID : 0x0495
Device name : STM32WBxx
Flash size : 1 MBytes
Device type : MCU
Device CPU : Cortex-M0+/M4
FUS state is FUS_ERROR
FUS status is FUS_NOT_RUNNING
FUS state is FUS_IDLE FUS state is FUS_IDLE
FUS status is FUS_NO_ERROR FUS status is FUS_NO_ERROR
@ -122,24 +108,8 @@ fwdelete command execution finished
- STEP 4 : Read and upgrade FUS Version - STEP 4 : Read and upgrade FUS Version
``` ```
$ ./STM32_Programmer_CLI.exe -c port=usb1 -r32 0x20030030 1 $ STM32_Programmer_CLI.exe -c port=usb1 -r32 0x20030030 1
------------------------------------------------------------------- ...
STM32CubeProgrammer v2.3.0
-------------------------------------------------------------------
USB speed : Full Speed (12MBit/s)
Manuf. ID : STMicroelectronics
Product ID : DFU in FS Mode
SN : 207F38933036
FW version : 0x011a
Device ID : 0x0495
Device name : STM32WBxx
Flash size : 1 MBytes
Device type : MCU
Device CPU : Cortex-M0+/M4
Reading 32-bit memory content Reading 32-bit memory content
Size : 4 Bytes Size : 4 Bytes
@ -148,169 +118,42 @@ Reading 32-bit memory content
0x20030030 : 00050300 0x20030030 : 00050300
``` ```
- STEP 5 : Download new FUS : - STEP 5A if last result is 00050300 : Download new FUS :
``` ```
$ ./STM32_Programmer_CLI.exe -c port=usb1 -fwupgrade stm32wb5x_FUS_fw.bin 0x080EC000 firstinstall=0 $ ./STM32_Programmer_CLI.exe -c port=usb1 -fwupgrade stm32wb5x_FUS_fw_1_0_2.bin 0x080EC000 firstinstall=0
-------------------------------------------------------------------
STM32CubeProgrammer v2.3.0
-------------------------------------------------------------------
USB speed : Full Speed (12MBit/s)
Manuf. ID : STMicroelectronics
Product ID : DFU in FS Mode
SN : 207F38933036
FW version : 0x011a
Device ID : 0x0495
Device name : STM32WBxx
Flash size : 1 MBytes
Device type : MCU
Device CPU : Cortex-M0+/M4
FUS state is FUS_IDLE
FUS status is FUS_NO_ERROR
Old Firmware delete ...
Deleting firmware ...
Firmware delete finished
FUS state is FUS_SERVICE_ONGOING
FUS status is FUS_IMAGE_NOT_FOUND
FUS state is FUS_IDLE
FUS status is FUS_NO_ERROR
Download firmware image at address 0x80ec000 ...
Memory Programming ...
Opening and parsing file: stm32wb5x_FUS_fw.bin
File : stm32wb5x_FUS_fw.bin
Size : 24492 Bytes
Address : 0x080EC000
Erasing memory corresponding to segment 0:
Erasing internal memory sectors [236 241]
erasing sector 0236 @: 0x080ec000 done
erasing sector 0237 @: 0x080ed000 done
erasing sector 0238 @: 0x080ee000 done
erasing sector 0239 @: 0x080ef000 done
erasing sector 0240 @: 0x080f0000 done
erasing sector 0241 @: 0x080f1000 done
Download in Progress:
File download complete
Time elapsed during download operation: 00:00:00.512
FUS state is FUS_IDLE
FUS status is FUS_NO_ERROR
Firmware Upgrade process started ...
Updating firmware ...
Waiting for firmware upgrade end
FUS state is FUS_UPGRADE_ONGOING
FUS status is FUS_NO_ERROR
FUS state is FUS_UPGRADE_ONGOING
FUS status is FUS_IMAGE_NOT_AUTHENTIC
Error: Firmware not authentic!
``` ```
- STEP 5B if last result is 01000100 or 01000200 : Download new FUS :
```
$ STM32_Programmer_CLI.exe -c port=usb1 -fwupgrade stm32wb5x_FUS_fw.bin 0x080EC000 firstinstall=0
```
- STEP 4 (to check) : Read and upgrade FUS Version - STEP 4 (to check) : Read and upgrade FUS Version
``` ```
$ ./STM32_Programmer_CLI.exe -c port=usb1 -r32 0x20030030 1 $ STM32_Programmer_CLI.exe -c port=usb1 -r32 0x20030030 1
-------------------------------------------------------------------
STM32CubeProgrammer v2.3.0
-------------------------------------------------------------------
USB speed : Full Speed (12MBit/s)
Manuf. ID : STMicroelectronics
Product ID : DFU in FS Mode
SN : 207F38933036
FW version : 0x011a
Device ID : 0x0495
Device name : STM32WBxx
Flash size : 1 MBytes
Device type : MCU
Device CPU : Cortex-M0+/M4
Reading 32-bit memory content Reading 32-bit memory content
Size : 4 Bytes Size : 4 Bytes
Address: : 0x20030030 Address: : 0x20030030
0x20030030 : 01000200 0x20030030 : 01010000
``` ```
- STEP 6 : Download new wireless stack : - STEP 6 : Download new wireless stack :
``` ```
$ ./STM32_Programmer_CLI.exe -c port=usb1 -fwupgrade stm32wb5x_BLE_Stack_fw.bin 0x080CB000 firstinstall=1 $ STM32_Programmer_CLI.exe -c port=usb1 -fwupgrade stm32wb5x_BLE_Stack_full_fw.bin 0x080CB000 firstinstall=1
-------------------------------------------------------------------
STM32CubeProgrammer v2.3.0
-------------------------------------------------------------------
USB speed : Full Speed (12MBit/s)
Manuf. ID : STMicroelectronics
Product ID : DFU in FS Mode
SN : 207F38933036
FW version : 0x011a
Device ID : 0x0495
Device name : STM32WBxx
Flash size : 1 MBytes
Device type : MCU
Device CPU : Cortex-M0+/M4
...
Download firmware image at address 0x80cb000 ... Download firmware image at address 0x80cb000 ...
...
Memory Programming ...
Opening and parsing file: stm32wb5x_BLE_Stack_fw.bin
File : stm32wb5x_BLE_Stack_fw.bin
Size : 165772 Bytes
Address : 0x080CB000
Erasing memory corresponding to segment 0:
Erasing internal memory sectors [203 243]
Download in Progress:
File download complete File download complete
Time elapsed during download operation: 00:00:03.537 ...
FUS state is FUS_IDLE
FUS status is FUS_NO_ERROR
Firmware Upgrade process started ...
Updating firmware ...
Waiting for firmware upgrade end
FUS state is WIRELESS_STACK_UPGRADE_ONGOING
FUS status is FUS_NO_ERROR
FUS state is FUS_ERROR
FUS status is FUS_NOT_RUNNING
Firmware Upgrade Success Firmware Upgrade Success
``` ```