Use Case: We are developing a Bluetooth Mesh people-counter on the nRF52840 DK.
-
Primary: Mesh network for publishing/receiving sensor data.
-
Secondary: Custom BLE GATT interface for direct device access.
Architecture:
-
Mesh: Config, Health, and Sensor (Server/Client) models.
-
GATT: Custom service with Read (count), Write (config), and planned Notifications/MTU exchange (500 bytes).
-
Config:
BT_MESH_GATT_PROXY=yandBT_MESH_PB_GATT=y.
Questions:
-
Is it recommended to expose custom GATT characteristics alongside the Mesh Proxy on the same connection?
-
Does this scale? Can we add notifications and MTU negotiation without Mesh stack conflicts?
-
Option A vs. Option B:
-
A: Single Mesh Proxy advertiser + custom GATT service.
-
B: Extended advertising with separate identities (per
ble_peripheral_lbs_coex). Which is better for a production device requiring both Mesh and Peripheral features?
-
-
Best Practices: Are there specific Kconfig requirements, registration orders, or callback handling tips for this coexistence?
Environment:
-
Hardware: nRF52840 DK
-
SDK: nRF Connect SDK v2.8.0 (Zephyr 3.7.99)