Hello,
I setup a BLE Peripheral that advertises a service with 2 notifications. Each notification has 240 bytes of payload data. When I connect with a client and subscribe to either one, I have the following output on the serial monitor (I modified the debug output to print the value of chan->chan.tx.mtu inside sdk function bt_att_create_pdu() ) :
[00:07:27.777,038] <wrn> bt_att: No ATT channel for MTU 247, max is 0 [00:07:27.777,069] <wrn> bt_gatt: No buffer available to send notification [00:07:27.780,517] <wrn> bt_att: No ATT channel for MTU 247, max is 0 [00:07:27.780,517] <wrn> bt_gatt: No buffer available to send notification
I checked the throughput example and modified my .conf files accordingly, also added a chi_rpmsg.conf file. With the current configuration files I have 0 warnings and errors during a pristine build.
These are the contents of both files:
prj.conf:
# prj.conf # Copyright (c) 2018 Nordic Semiconductor # # SPDX-License-Identifier: LicenseRef-BSD-5-Clause-Nordic # CONFIG_NRFX_RTC0=y CONFIG_NRFX_GPIOTE=y CONFIG_BT=y CONFIG_BT_DEBUG_LOG=y CONFIG_BT_MAX_CONN=1 CONFIG_BT_PERIPHERAL=y CONFIG_BT_DEVICE_APPEARANCE=962 CONFIG_BT_DEVICE_NAME_DYNAMIC=y CONFIG_BT_PERIPHERAL_PREF_MIN_INT=10 CONFIG_BT_PERIPHERAL_PREF_MAX_INT=200 CONFIG_BT_PERIPHERAL_PREF_LATENCY=0 CONFIG_BT_PERIPHERAL_PREF_TIMEOUT=3000 # Over-ride various BT settings for extended data packet size CONFIG_BT_ATT_PREPARE_COUNT=4 CONFIG_BT_L2CAP_TX_MTU=247 CONFIG_BT_L2CAP_TX_FRAG_COUNT=15 CONFIG_BT_BUF_EVT_RX_SIZE=251 CONFIG_BT_BUF_CMD_TX_SIZE=251 CONFIG_BT_BUF_ACL_RX_SIZE=251 CONFIG_BT_BUF_ACL_TX_COUNT=15 CONFIG_BT_BUF_ACL_TX_SIZE=251 CONFIG_BT_BUF_CMD_TX_COUNT=10 CONFIG_BT_CONN_TX_MAX=15 CONFIG_BT_L2CAP_TX_BUF_COUNT=15 CONFIG_BT_GATT_CLIENT=y CONFIG_HEAP_MEM_POOL_SIZE=2048 # This example requires more workqueue stack CONFIG_SYSTEM_WORKQUEUE_STACK_SIZE=2048
hci_rpmsg.conf:
CONFIG_BT_BUF_ACL_TX_SIZE=251 CONFIG_BT_CTLR_DATA_LENGTH_MAX=251 CONFIG_BT_BUF_ACL_RX_SIZE=251 CONFIG_BT_CTLR_ADV_EXT=y CONFIG_BT_CTLR_ADV_DATA_LEN_MAX=251 CONFIG_BT_CTLR=y CONFIG_BT_CTLR_SDC_MAX_CONN_EVENT_LEN_DEFAULT=6000 CONFIG_BT_CTLR_PHY_2M=y CONFIG_BT_CTLR_RX_BUFFERS=2
Can you please take a look and see if you find any errors?
Best Regards,
Mehdi