How to change MTU size in WICED 4.1.1, using CYW20706

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

cross mob
Anonymous
Not applicable

Hi,

I want to use larger MTU size for faster data transmission, like the way in project long_char_big_mtu and puart_control_big_mtu in WICED Smart SDK.

what is the opcode to use, like LEATT_OPCODE_EXCHANGE_MTU_REQ and LEATT_OPCODE_EXCHANGE_MTU_RSP, in WICED 4.1.1?

Or is there any example code of using larger MTU?

Best Regards,
Tim

0 Likes
1 Solution
BoonT_56
Employee
Employee
500 likes received 250 likes received 100 likes received

The purpose of using big MTU is to maximize throughput. CYW20706 supports classic BT with EDR which should be good enough for your application.

View solution in original post

4 Replies
BoonT_56
Employee
Employee
500 likes received 250 likes received 100 likes received

The purpose of using big MTU is to maximize throughput. CYW20706 supports classic BT with EDR which should be good enough for your application.

Anonymous
Not applicable

The product has a low power BLE mode as well as EDR mode. In BLE mode, the throughput is not required to get as fast as EDR, but it is still needed to be faster than BLE default.

Then would you please tell how to modify the MTU in WICED 4.1.1? I found wiced_bt_gatt_configure_mtu API, but did not find the related event/opcode such as LEATT_OPCODE_EXCHANGE_MTU_RSP.

0 Likes

As the 20706 is not in the broad market yet, it is not officially supported here on the IoT Community. I also see that you are an employee, so it may make more sense at this point to pursue this line of questioning with engineering using internal cases.

0 Likes
Anonymous
Not applicable

I do not know if this applies to WICED 4.1 as well but in WICED 5.0 and later, the MTU size can be set in the wiced_bt_cfg_settings_t structure. There is a parameter called max_mtu_size which can be set to the desired value. Most often, it is set to 517, which is the max value.

The GATTS_REQ_TYPE_MTU event is triggered when the device receives a exchange MTU request. You could refer to the hello_sensor example included in WICED>