cancel
Showing results for 
Search instead for 
Did you mean: 

hci_reset() fails on 2.0.0 X-CUBE-WB05N version

nortowianski
Associate III

I want to upgrade the WB05N chip on my custom board.
I downloaded X-CUBE-WB05N v2.0.0 and programmed the chip with BLE_TransparentMode_SPI_with_Updater.hex (I am using SPI on my board).
I selected the Verify and Run after programming options. The download verified successfully, but when I call hci_reset() I get a timeout.

Additionally, when I compare the BLE_TransparentMode_SPI_with_Updater.hex file with the image read back from the module, there are differences.
With version 1.0.0 everything works fine (image comparison is identical).

Do you have any ideas what might be wrong?

1 ACCEPTED SOLUTION

Accepted Solutions
nortowianski
Associate III

Reply from ST solving the problem:

Checking differences around SPI between X-CUBE-WB05N v1 and V2.

I noticed that pull config on SPI clock is different on host side :

V1 :

static void SPI1_MspInit(SPI_HandleTypeDef* spiHandle)
{
[...] 
 
    GPIO_InitStruct.Pin = BUS_SPI1_SCK_GPIO_PIN;
    GPIO_InitStruct.Mode = GPIO_MODE_AF_PP;
    GPIO_InitStruct.Pull = GPIO_NOPULL; //V1.0 is no pull ... V2.0 is defined with GPIO_PULLUP
    GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_LOW;
    GPIO_InitStruct.Alternate = BUS_SPI1_SCK_GPIO_AF;
    HAL_GPIO_Init(BUS_SPI1_SCK_GPIO_PORT, &GPIO_InitStruct);

Could you please have a new trial by modifying the pull config for the SPI clk config on your host ? A pull-up is required from my checks.

View solution in original post

1 REPLY 1
nortowianski
Associate III

Reply from ST solving the problem:

Checking differences around SPI between X-CUBE-WB05N v1 and V2.

I noticed that pull config on SPI clock is different on host side :

V1 :

static void SPI1_MspInit(SPI_HandleTypeDef* spiHandle)
{
[...] 
 
    GPIO_InitStruct.Pin = BUS_SPI1_SCK_GPIO_PIN;
    GPIO_InitStruct.Mode = GPIO_MODE_AF_PP;
    GPIO_InitStruct.Pull = GPIO_NOPULL; //V1.0 is no pull ... V2.0 is defined with GPIO_PULLUP
    GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_LOW;
    GPIO_InitStruct.Alternate = BUS_SPI1_SCK_GPIO_AF;
    HAL_GPIO_Init(BUS_SPI1_SCK_GPIO_PORT, &GPIO_InitStruct);

Could you please have a new trial by modifying the pull config for the SPI clk config on your host ? A pull-up is required from my checks.