Bluetooth mesh - node with 2 elements - Not enough tailroom for TransMIC


laczenJMS
 

Hi Johan,

Setting CONFIG_BT_MESH_ADV_BUF_COUNT to 7 solved the issue.

Thanks,

Jehudi

2017-10-17 12:26 GMT+02:00 Johan Hedberg <johan.hedberg@intel.com>:

Hi Jehudi,

On Tue, Oct 17, 2017, Laczen JMS wrote:
Thanks for the response. I couldn't find CONFIG_BT_MESH_TX_SEG_COUNT
as configuration option, but I tried changing
CONFIG_BT_MESH_TX_SEG_MSG_COUNT which defaults to 1. I changed it to
10 but I am still getting the Not enough tailroom message. I am using
both 16k and 32k nrf51822, at the moment I am testing with the 32k
version.
Sorry, there's an internal define called BT_MESH_TX_SEG_COUNT, but it
actually gets its value from a different Kconfig variable. From the
transport.h header file:

#define BT_MESH_TX_SEG_COUNT (CONFIG_BT_MESH_ADV_BUF_COUNT - 3)
#define BT_MESH_TX_SDU_MAX (BT_MESH_TX_SEG_COUNT * 12)

So you'll want to increase CONFIG_BT_MESH_ADV_BUF_COUNT by 1 most
likely.

Johan


Johan Hedberg
 

Hi Jehudi,

On Tue, Oct 17, 2017, Laczen JMS wrote:
Thanks for the response. I couldn't find CONFIG_BT_MESH_TX_SEG_COUNT
as configuration option, but I tried changing
CONFIG_BT_MESH_TX_SEG_MSG_COUNT which defaults to 1. I changed it to
10 but I am still getting the Not enough tailroom message. I am using
both 16k and 32k nrf51822, at the moment I am testing with the 32k
version.
Sorry, there's an internal define called BT_MESH_TX_SEG_COUNT, but it
actually gets its value from a different Kconfig variable. From the
transport.h header file:

#define BT_MESH_TX_SEG_COUNT (CONFIG_BT_MESH_ADV_BUF_COUNT - 3)
#define BT_MESH_TX_SDU_MAX (BT_MESH_TX_SEG_COUNT * 12)

So you'll want to increase CONFIG_BT_MESH_ADV_BUF_COUNT by 1 most
likely.

Johan


laczenJMS
 

Hi Johan,

Thanks for the response. I couldn't find CONFIG_BT_MESH_TX_SEG_COUNT
as configuration option, but I tried changing
CONFIG_BT_MESH_TX_SEG_MSG_COUNT which defaults to 1. I changed it to
10 but I am still getting the Not enough tailroom message. I am using
both 16k and 32k nrf51822, at the moment I am testing with the 32k
version.

Kind regards,

Jehudi

2017-10-17 11:41 GMT+02:00 Johan Hedberg <johan.hedberg@intel.com>:

Hi Jehudi,

On Tue, Oct 17, 2017, Laczen JMS wrote:
I am trying to make a bluetooth mesh zephyr node with 2 elements.
After provisioning (which assigns 2 node adresses) meshctl ask for the
composition data. This fails with Not enough tailroom for TransMIC:

[bt] [DBG] dev_comp_data_get: (0x20001950) net_idx 0x0000 app_idx 0xfffe src 0x0
[bt] [ERR] bt_mesh_model_send: Not enough tailroom for TransMIC

What configuration option do I need to change (I am working on nrf51822) ?
I think you need to change CONFIG_BT_MESH_TX_SEG_COUNT. IIRC it defaults
to 3, and with your two elements you've created a composition data that
doesn't fit in three segments anymore. Increasing the SEG_COUNT to 4
will probably fix the issue. Note that this will also increase the
runtime memory consumption, so hopefully that doesn't go over your
limits (IIRC you had 16k?).

Johan


Johan Hedberg
 

Hi Jehudi,

On Tue, Oct 17, 2017, Laczen JMS wrote:
I am trying to make a bluetooth mesh zephyr node with 2 elements.
After provisioning (which assigns 2 node adresses) meshctl ask for the
composition data. This fails with Not enough tailroom for TransMIC:

[bt] [DBG] dev_comp_data_get: (0x20001950) net_idx 0x0000 app_idx 0xfffe src 0x0
[bt] [ERR] bt_mesh_model_send: Not enough tailroom for TransMIC

What configuration option do I need to change (I am working on nrf51822) ?
I think you need to change CONFIG_BT_MESH_TX_SEG_COUNT. IIRC it defaults
to 3, and with your two elements you've created a composition data that
doesn't fit in three segments anymore. Increasing the SEG_COUNT to 4
will probably fix the issue. Note that this will also increase the
runtime memory consumption, so hopefully that doesn't go over your
limits (IIRC you had 16k?).

Johan


laczenJMS
 

Hi,

I am trying to make a bluetooth mesh zephyr node with 2 elements.
After provisioning (which assigns 2 node adresses) meshctl ask for the
composition data. This fails with Not enough tailroom for TransMIC:

[bt] [DBG] dev_comp_data_get: (0x20001950) net_idx 0x0000 app_idx 0xfffe src 0x0
[bt] [ERR] bt_mesh_model_send: Not enough tailroom for TransMIC

What configuration option do I need to change (I am working on nrf51822) ?

Kind regards,

Jehudi