diff --git a/pico_w/bt/CMakeLists.txt b/pico_w/bt/CMakeLists.txt index e14345398..1f0160e25 100644 --- a/pico_w/bt/CMakeLists.txt +++ b/pico_w/bt/CMakeLists.txt @@ -358,6 +358,7 @@ set(BTSTACK_EXAMPLES_ADDITIONAL gatt_browser gatt_device_information_query le_streamer_client + mesh_node_demo ) # These examples will only be built if pico-extras exists diff --git a/pico_w/bt/config/btstack_config.h b/pico_w/bt/config/btstack_config.h index 1b969e1bf..07b448cda 100644 --- a/pico_w/bt/config/btstack_config.h +++ b/pico_w/bt/config/btstack_config.h @@ -26,6 +26,16 @@ #define ENABLE_CROSS_TRANSPORT_KEY_DERIVATION #endif +// Mesh Configuration +#ifdef ENABLE_MESH // defined by pico_btstack_mesh +#define ENABLE_MESH_ADV_BEARER +#define ENABLE_MESH_GATT_BEARER +#define ENABLE_MESH_PB_ADV +#define ENABLE_MESH_PB_GATT +#define ENABLE_MESH_PROVISIONER +#define ENABLE_MESH_PROXY_SERVER +#endif + // BTstack configuration. buffers, sizes, ... #define HCI_OUTGOING_PRE_BUFFER_SIZE 4 #define HCI_ACL_PAYLOAD_SIZE (1691 + 4) @@ -50,6 +60,12 @@ #define MAX_NR_SM_LOOKUP_ENTRIES 3 #define MAX_NR_WHITELIST_ENTRIES 16 #define MAX_NR_LE_DEVICE_DB_ENTRIES 16 +#define MAX_NR_MESH_SUBNETS 2 +#define MAX_NR_MESH_TRANSPORT_KEYS 16 +#define MAX_NR_MESH_VIRTUAL_ADDRESSES 16 + +// allow for one NetKey update +#define MAX_NR_MESH_NETWORK_KEYS (MAX_NR_MESH_SUBNETS+1) // Limit number of ACL/SCO Buffer to use by stack to avoid cyw43 shared bus overrun #define MAX_NR_CONTROLLER_ACL_BUFFERS 3 diff --git a/pico_w/bt/mesh_node_demo/CMakeLists.txt b/pico_w/bt/mesh_node_demo/CMakeLists.txt new file mode 100644 index 000000000..8158397b1 --- /dev/null +++ b/pico_w/bt/mesh_node_demo/CMakeLists.txt @@ -0,0 +1 @@ +picow_bt_example(mesh_node_demo pico_btstack_mesh)