bt_att: No ATT channel for MTU 27

I am use sample "Bluetooth: Peripheral HR"  as the base app
and added these settings to `prj.conf` on both central and peripheral sides
CONFIG_BT_BUF_ACL_RX_SIZE=251
CONFIG_BT_ATT_PREPARE_COUNT=2
CONFIG_BT_L2CAP_TX_BUF_COUNT=10
CONFIG_BT_L2CAP_TX_MTU=247
CONFIG_BT_BUF_ACL_TX_SIZE=251
CONFIG_BT_L2CAP_DYNAMIC_CHANNEL=y
but I still got the error


[00:03:00.037,811] <wrn> bt_att: No ATT channel for MTU 27
[00:03:00.037,841] <wrn> bt_gatt: No buffer available to send notification

Parents Reply Children
  • MTU and conn parameters are changed from the peripheral side in the example.

    Can MTU and conn parameters be changed from both of central and peripheral side? 

    which side should be the one to change it? which one is more standard?

  • Hello,

    Both devices can initiate an MTU exchange. There is not really a rule here. They will then start negotiating the MTU size, and the one that has the lowest supported MTU will have the final saying.

    As for connections parameters in general, it depends on which one. Connection interval is decided by the central, but the peripheral can initiate an MTU negotiation. However, in that case the central has the final saying.

    Best regards,

    Edvin

Related