BLE data rate with IPSP #ble #nrf52480


Stefan Hristozov
 

Hi all,

I have a set up consisting of nRF52840 and Raspberry Pi4 communicating over IPSP. The nRF52840 application needs to send data with 6,4KByte/s. My nRF52840 prj.conf is:

# Thread Priorities
CONFIG_NUM_COOP_PRIORITIES=2
CONFIG_NUM_PREEMPT_PRIORITIES=3

# Timer
CONFIG_COUNTER=y

# PWM
CONFIG_PWM=y

# SPI
CONFIG_SPI=y

# Generic networking options
CONFIG_NETWORKING=y
CONFIG_NET_UDP=y
CONFIG_NEWLIB_LIBC=y

# Socket
CONFIG_NET_SOCKETS=y
CONFIG_NET_SOCKETS_POSIX_NAMES=y
CONFIG_NET_SOCKETS_POLL_MAX=4

# CoAP
CONFIG_COAP=y
CONFIG_COAP_WELL_KNOWN_BLOCK_WISE=n

# Kernel options
CONFIG_ENTROPY_GENERATOR=y
CONFIG_TEST_RANDOM_GENERATOR=y

# Logging
CONFIG_PRINTK=y
CONFIG_NET_LOG=y

# # Network Shell
CONFIG_NET_SHELL=y

# Configuration
CONFIG_NET_CONFIG_SETTINGS=y
CONFIG_NET_CONFIG_BT_NODE=y
CONFIG_NET_MAX_CONTEXTS=6
CONFIG_NET_PKT_RX_COUNT=10
CONFIG_NET_PKT_TX_COUNT=10
CONFIG_NET_BUF_RX_COUNT=20
CONFIG_NET_BUF_TX_COUNT=20
CONFIG_NET_L2_BT=y

# IPv6 Support
CONFIG_NET_IPV4=n
CONFIG_NET_IPV6=y
CONFIG_NET_CONFIG_MY_IPV6_ADDR="2001:db8::1"
CONFIG_NET_CONFIG_PEER_IPV6_ADDR="2001:db8::2"

# RAM configuration
CONFIG_INIT_STACKS=y
CONFIG_MAIN_STACK_SIZE=10240
CONFIG_HEAP_MEM_POOL_SIZE=10240

# Configure Bluetooth LE
CONFIG_BT=y
CONFIG_BT_DEBUG_LOG=n
CONFIG_BT_SMP=y
CONFIG_BT_PERIPHERAL=y
CONFIG_BT_CENTRAL=y
CONFIG_BT_L2CAP_DYNAMIC_CHANNEL=y
CONFIG_BT_CTLR_DATA_LENGTH_CLEAR=y
CONFIG_BT_CTLR_DATA_LENGTH_MAX=251
CONFIG_BT_DEVICE_NAME="medisec-dev"

CONFIG_BT_DATA_LEN_UPDATE=y
CONFIG_BT_AUTO_DATA_LEN_UPDATE=y

CONFIG_BT_PERIPHERAL_PREF_MAX_INT=7
CONFIG_BT_PERIPHERAL_PREF_MIN_INT=6
CONFIG_BT_L2CAP_TX_MTU=2000
CONFIG_BT_CTLR_PHY_2M=y


Unfortunately I get the following warning:
[00:00:20.695,800] <wrn> bt_l2cap: No credits to transmit packet

How to get rid of that?


BR
Stefan