1f5c04f62SMatthias Ringwald // 2077fecbbSMilanka Ringwald // btstack_config.h for Raspberry Pi port 3077fecbbSMilanka Ringwald // 4077fecbbSMilanka Ringwald // Documentation: https://bluekitchen-gmbh.com/btstack/#how_to/ 5f5c04f62SMatthias Ringwald // 6f5c04f62SMatthias Ringwald 736327e5aSMilanka Ringwald #ifndef BTSTACK_CONFIG_H 836327e5aSMilanka Ringwald #define BTSTACK_CONFIG_H 9f5c04f62SMatthias Ringwald 10f5c04f62SMatthias Ringwald // Port related features 11d20e3046SMatthias Ringwald #define HAVE_ASSERT 1236327e5aSMilanka Ringwald #define HAVE_BTSTACK_STDIN 13f5c04f62SMatthias Ringwald #define HAVE_MALLOC 14f5c04f62SMatthias Ringwald #define HAVE_POSIX_FILE_IO 15f5c04f62SMatthias Ringwald 16f5c04f62SMatthias Ringwald // BTstack features that can be enabled 17b2b52d42SMatthias Ringwald #define ENABLE_AVRCP_COVER_ART 18f5c04f62SMatthias Ringwald #define ENABLE_BLE 19f5c04f62SMatthias Ringwald #define ENABLE_CLASSIC 20*3c07636cSMatthias Ringwald #define ENABLE_GOEP_L2CAP 2108b9cddcSMatthias Ringwald #define ENABLE_H5 22f5c04f62SMatthias Ringwald #define ENABLE_HFP_WIDE_BAND_SPEECH 23e5b6c4e9SMatthias Ringwald #define ENABLE_L2CAP_ENHANCED_RETRANSMISSION_MODE 24b28dc800SMatthias Ringwald #define ENABLE_L2CAP_LE_CREDIT_BASED_FLOW_CONTROL_MODE 25b2b52d42SMatthias Ringwald #define ENABLE_LE_CENTRAL 26f5c04f62SMatthias Ringwald #define ENABLE_LE_DATA_LENGTH_EXTENSION 2736327e5aSMilanka Ringwald #define ENABLE_LE_PERIPHERAL 2836327e5aSMilanka Ringwald #define ENABLE_LE_SECURE_CONNECTIONS 29f5c04f62SMatthias Ringwald #define ENABLE_LOG_ERROR 30f5c04f62SMatthias Ringwald #define ENABLE_LOG_INFO 3136327e5aSMilanka Ringwald #define ENABLE_MICRO_ECC_FOR_LE_SECURE_CONNECTIONS 32606ccc9bSMilanka Ringwald #define ENABLE_PRINTF_HEXDUMP 33f5c04f62SMatthias Ringwald #define ENABLE_SCO_OVER_HCI 34f5c04f62SMatthias Ringwald #define ENABLE_SDP_DES_DUMP 35a5ceff15SMatthias Ringwald #define ENABLE_SOFTWARE_AES128 36f5c04f62SMatthias Ringwald 37e6a3daa4SMatthias Ringwald // Warm Boot needed if connected via Wifi on Raspberry Pi 3A+ or 3B+ 38e6a3daa4SMatthias Ringwald // #define ENABLE_CONTROLLER_WARM_BOOT 39e6a3daa4SMatthias Ringwald 40f5c04f62SMatthias Ringwald // BTstack configuration. buffers, sizes, ... 41f5c04f62SMatthias Ringwald #define HCI_ACL_PAYLOAD_SIZE (1691 + 4) 4208b9cddcSMatthias Ringwald #define HCI_INCOMING_PRE_BUFFER_SIZE 14 // sizeof BNEP header, avoid memcpy 4308b9cddcSMatthias Ringwald #define HCI_OUTGOING_PRE_BUFFER_SIZE 4 44f5c04f62SMatthias Ringwald 45dbe92de6SMatthias Ringwald #define NVM_NUM_DEVICE_DB_ENTRIES 16 4636327e5aSMilanka Ringwald #define NVM_NUM_LINK_KEYS 16 478c8a87eeSMatthias Ringwald 48e514a7f5SMatthias Ringwald // Mesh Configuration 49e514a7f5SMatthias Ringwald #define ENABLE_MESH 50e514a7f5SMatthias Ringwald #define ENABLE_MESH_ADV_BEARER 51e514a7f5SMatthias Ringwald #define ENABLE_MESH_GATT_BEARER 52e514a7f5SMatthias Ringwald #define ENABLE_MESH_PB_ADV 53e514a7f5SMatthias Ringwald #define ENABLE_MESH_PB_GATT 54e514a7f5SMatthias Ringwald #define ENABLE_MESH_PROVISIONER 5536327e5aSMilanka Ringwald #define ENABLE_MESH_PROXY_SERVER 56e514a7f5SMatthias Ringwald 5736327e5aSMilanka Ringwald #define MAX_NR_MESH_SUBNETS 2 58e514a7f5SMatthias Ringwald #define MAX_NR_MESH_TRANSPORT_KEYS 16 59e514a7f5SMatthias Ringwald #define MAX_NR_MESH_VIRTUAL_ADDRESSES 16 60e514a7f5SMatthias Ringwald 61e514a7f5SMatthias Ringwald // allow for one NetKey update 62e514a7f5SMatthias Ringwald #define MAX_NR_MESH_NETWORK_KEYS (MAX_NR_MESH_SUBNETS+1) 63e514a7f5SMatthias Ringwald 64f5c04f62SMatthias Ringwald #endif 65f5c04f62SMatthias Ringwald 66