Tip / Sign in to post questions, reply, level up, and achieve exciting badges. Know more

Wi-Fi Combo

JeGu_2199941
Level 5
25 likes received 10 likes received 10 likes given
Level 5

Platform : BCM94343W (SPIL N08 module)

I tried to port our project to SDK-3.7.0 by copying platform folder we used for SDK-3.5.2.

With "drivers/bluetooth_le" in <project>.mk replaced by "drivers/bluetooth/low_energy", it builds and download successfully.

And then when running I see the weird messages when initiating BLE peripheral :

    00:00:01.043464 GKI_create_task func=0x801de0d  id=1  name=BTU  stack=0x0  stackSize=6144

    00:00:01.051464 GKI_create_task func=0x801f325  id=0  name=HCISU  stack=0x0  stackSize=4096

    00:00:01.028392 GKI_exception(): Task State Table

    00:00:01.032392 GKI_exception 65527 getbuf: Size is too big

    00:00:05.028392 GKI_exception(): Task State Table

    00:00:05.032392 GKI_exception 65527 getbuf: Size is too big

    00:00:09.028392 GKI_exception(): Task State Table

    00:00:09.032392 GKI_exception 65527 getbuf: Size is too big

I guess they are printed by BT firmware and I don't know what do they mean.

By Google I found this link src/gki/common/gki_buffer.c - platform/external/libnfc-nci - Git at Google .

I guess it is related to some sort of buffer size problem related to BT stack.

But with increased size & number for the const wiced_bt_cfg_buf_pool_t structure defined in <project>_bt_cfg.c, no luck.

What does this exception mean?

How do I fix this ?

1 Solution
JeGu_2199941
Level 5
25 likes received 10 likes received 10 likes given
Level 5

For anyone who is interested in this issue

This fix solved the "Size is too big" problem"

------------- by mwf_mmfae​ in this post above --------------

I also discovered that one has to add these two lines to the applications's wiced_bt_cfg_settings_t object:

    .max_number_of_buffer_pools = WICED_BT_CFG_NUM_BUF_POOLS,

    .addr_resolution_db_size = 3,

This should also help resolve the errors reported.
----------------------------------------------------------------------------

And this fix solved BT init problem on my side.

-------- this fix comes from this post : SDK 3.7.0 BLE doesn't work -----------

Please add 'featured_baud_rate' member to wiced_bt_config variable in platform.c file,if it is not there already.

For BCM9434W_AVN's platform.c file -  it should be like this:

/*BT chip specific configuration information*/

  const platform_bluetooth_config_t wiced_bt_config =                                                                                                                                                                               

  {

      .patchram_download_mode      = PATCHRAM_DOWNLOAD_MODE_MINIDRV_CMD,

      .patchram_download_baud_rate = 115200,

      .featured_baud_rate          = 115200

  };

------------------------------------------------------------------------------------------------------

Thank you Cypress team.

View solution in original post

7 Replies
MichaelF_56
Moderator
Moderator 250 sign-ins 25 comments on blog 10 comments on blog
Moderator

My understanding is that within SDK 3.7.0, we switched to a combined BT stack that can be run in either dual mode or LE-only mode.

As part of this switch, the developers also made some changes to the way the GKI buffer pools are updated.

I was told that all of the sample apps have been modified to accommodate this fix, so maybe there are some clues in the sample apps that could help.

0 Likes
JeGu_2199941
Level 5
25 likes received 10 likes received 10 likes given
Level 5

Thank you for providing useful information. I'll try to figure it out.

BTW, our project utilizes BLE only (and WIFI STA).

Do you have any advice to optimize performance / code size / memory usage for this kind of usage?

0 Likes
MichaelF_56
Moderator
Moderator 250 sign-ins 25 comments on blog 10 comments on blog
Moderator

I also discovered that one has to add these two lines to the applications's wiced_bt_cfg_settings_t object:

    .max_number_of_buffer_pools = WICED_BT_CFG_NUM_BUF_POOLS,

    .addr_resolution_db_size = 3,

This should also help resolve the errors reported.

Again, newer versions of Bluetooth stack expect some pool-management configuration from the application, hence the changes.

dkumar

Anonymous
Not applicable

xavier,

Hi.

We have the same interfaces that is BLE and WiFi (STA). It works well with 3.5.1 but with 3.7.0, no luck yet.

Did you resolve your problem? What was the fix?

Please let me know.

Thanks!

Regards,

Manish

JeGu_2199941
Level 5
25 likes received 10 likes received 10 likes given
Level 5

With these two lines as guided by @mwf_mmfae :

    .max_number_of_buffer_pools = WICED_BT_CFG_NUM_BUF_POOLS,

    .addr_resolution_db_size = 3,

The "Size is too big" problem is resolved.

However, BT stack initialize problem persists.

I'm still looking for a way out for that.

MichaelF_56
Moderator
Moderator 250 sign-ins 25 comments on blog 10 comments on blog
Moderator

Adding dkumar​ as he may be able to help.

Good to hear that the buffer issues are under control.

Adding peter_fenn​ and robjderr as I believe they ran into a similar issue with the Avnet AWS board.

vik86

0 Likes
JeGu_2199941
Level 5
25 likes received 10 likes received 10 likes given
Level 5

For anyone who is interested in this issue

This fix solved the "Size is too big" problem"

------------- by mwf_mmfae​ in this post above --------------

I also discovered that one has to add these two lines to the applications's wiced_bt_cfg_settings_t object:

    .max_number_of_buffer_pools = WICED_BT_CFG_NUM_BUF_POOLS,

    .addr_resolution_db_size = 3,

This should also help resolve the errors reported.
----------------------------------------------------------------------------

And this fix solved BT init problem on my side.

-------- this fix comes from this post : SDK 3.7.0 BLE doesn't work -----------

Please add 'featured_baud_rate' member to wiced_bt_config variable in platform.c file,if it is not there already.

For BCM9434W_AVN's platform.c file -  it should be like this:

/*BT chip specific configuration information*/

  const platform_bluetooth_config_t wiced_bt_config =                                                                                                                                                                               

  {

      .patchram_download_mode      = PATCHRAM_DOWNLOAD_MODE_MINIDRV_CMD,

      .patchram_download_baud_rate = 115200,

      .featured_baud_rate          = 115200

  };

------------------------------------------------------------------------------------------------------

Thank you Cypress team.