cancel
Showing results for 
Search instead for 
Did you mean: 

STM32WB55 BLE Stack can't work on stm32wb55RGV6

Htzuh
Associate II

Hi All,

I have trouble getting the BlE working on my new hardware(stm32wb55RGV6). The prgram can't enter into

 APP_BLE_Init( ); . The same code in P-NUCLEO-WB55.Nucleo(stm32wb55RGV6U)

can work. What's different between stm32wb55RGV6  and stm32wb55RGV6U?

10 REPLIES 10
Remi QUINTIN
ST Employee

stm32wb55RGV6 and stm32wb55RGV6U are exactly the same chip. The description on the STM32WB55 Nucleo pack did not mention the last digit "6" which  only add an information on the supported temperature range (-40 to +85°C).  Is the tm32wb55RGV6U populated on your own board or on an ST board? Did you get any error when flashing your device?

Htzuh
Associate II

Thanks.

The stm32wb55RGV6 was on my own board.

I use the stm32 cubeprogrammer to read address on 0x080CC000

and found that the chip hadn't the ble stack.

Then , i installed the stm32wb5x_FUS_fw.bin on 0x080EC000

stm32wb5x_BLE_Stack_fw.bin on 0x080CC000

stm32wb5x_BLE_HCILayer_fw.bin on 0x080DC000.

The prgram still can't enter into APP_BLE_Init( ); .

Htzuh
Associate II

I found that the ICs (stm32wb55RGV6) which i bought had no FUS.

As shown below

0690X000009Zb7qQAC.jpg

Is it normal situation? Should i need to download and install

DFU at first?

Thanks.

TH??p
Associate

Hi,

I have similar problems.

We also can't initialize the BLE Stack (v1.2.0). Should the option byte SBRV = 0x35000 be the same as in the older version (v0.8.0)?

We found out that the old (v0.8.0) Install address was 0x080D4000. The new version (v1.2.0) should be installed at 0x080CC000. So SBRV's value equals install address divided by 4.

Additionaly we found out that if you change the SBRV at version v0.8.0 from 0x35000 to e.g. 0x36000, the Stack doesn't run like with the version v1.2.0 with the correct SBRV = 0x33000. ( 0x33000 x 4 = 0xCC000)

Does anyone know which SBRV value is correct, we can't find it in any documentation. We also tried to set SBRV to 0x3B000, (points to FUS) but this also didn't work.

Thanks in advance.

Best regards.

Tobias

No FUS on your chip is not a normal situation. So load FUS V1.0.1 in your case before going any further in the update of the BLE stack.

You wrote

>>

then , i installed the stm32wb5x_FUS_fw.bin on 0x080EC000 => No error?

stm32wb5x_BLE_Stack_fw.bin on 0x080CC000 => OK

stm32wb5x_BLE_HCILayer_fw.bin on 0x080DC000. => No as the previous binary is enough.

​<<

The first install is required but you have to check it is the V1.0.1 version.

Then only the stm32wb5x_BLE_Stack_fw.bin fw is needed.

The stm32wb5x_BLE_HCILayer_fw.bin is only the HCI layer which can be used when you already have your own application stack for the M4 core. I assume it is not your case.

Hi ,

This is the FUS version i installed.

0690X0000098FX3QAM.jpgThen, I installed the stm32wb5x_BLE_Stack_fw.bin.

0690X0000098FXXQA2.jpgBut , the prgram still can't enter into APP_BLE_Init( ); .

The only working is M4 core.

Thank you . 

The RF stack update looks OK.

What did you load at 0X0800000 as application SW?

The SW is about ble p2p_server .

Is it possible that the IC I bought has a problem?

Thanks.

Remi QUINTIN
ST Employee

I am just surprised that you could modify the SBRV value. It should be only modified by the CPU2 (M0+).​

Once the wireless FW is installed by the FUS (Firmware Update Service) executed by the CPU2, it writes this SBRV offset value pointing on the address where the wireless FW was installed.

So I am not sure your trial to change this SBRV value was effective.