Re: [Bluetooth mesh]unprovisioned device (micro:bit) can't be discovered


Kai Ren
 

Hi Johan,
Thank so the reply!
I got the point and I built *mesh* application basing on microbit_gatt.conf, but the compiling console told me that RAM is oversize, 104.03%.

Memory region Used Size Region Size %age Used
FLASH: 105156 B 256 KB 40.11%
SRAM: 17044 B 16 KB 104.03%
IDT_LIST: 120 B 2 KB 5.86

The compiler I used is gcc-arm-none-eabi-8-2018-q4-major.
The commit is 3aa8443ab41202f978258810961dbc5a74ad2727

By the way, could you please share that what compiler you used and the specific version?


_____________________________
Regards,
Kai




On 2019/3/12, 10:54 PM, "Hedberg, Johan" <johan.hedberg@intel.com> wrote:

Hi Kai,

On 12 Mar 2019, at 16.29, Kai Ren <kren@bluetooth.com> wrote:
> This is the commit I used: 3aa8443ab41202f978258810961dbc5a74ad2727
>
> I tried to build ./samples/Bluetooth/mesh/ product in Zephyr master following this guide and target device is micro:bit,https://docs.zephyrproject.org/latest/samples/bluetooth/mesh/README.html
> I can compile source code (the compiler is gcc-arm-2018q4) and flash firmware into micro:bit.
> But after board reset, I found that I can’t use iOS app, nRF Mesh, to discover it. However, following this guide,https://docs.zephyrproject.org/latest/samples/bluetooth/mesh/README.html
>
> “This sample demonstrates Bluetooth Mesh functionality. It has several standard Mesh models, and supports provisioning over both the Advertising and the GATT Provisioning Bearers (i.e. PB-ADV and PB-GATT). The application also needs a functioning serial console, since that’s used for the Out-of-Band provisioning procedure.”
>
> Then, I took a look on prj_bbc_microbit.conf in folder./samples/Bluetooth/mesh/, I found that it haven’t defined below:
>
> CONFIG_BT_PERIPHERAL=y
> CONFIG_BT_MESH_GATT_PROXY=y
> CONFIG_BT_MESH_PB_GATT=y
> CONFIG_BT_MESH_PB_ADV=n
>
> Without these pre-define, how does micro:bit support PB-ADV and PB-GATT?

It doesn’t. It seems like a possible oversight with this configuration file. There’s a second one for this sample app called microbit_gatt.conf which does have PB_GATT=y. Note that the micro:bit with its 16k of RAM was always quite tricky when it came to fitting both the mesh and the provisioning protocols on it. That’s why we’ve done self-provisioning e.g. with samples/bluetooth/mesh_demo since it doesn’t require any provisioning bearer to be compiled in. I’d be curious to hear if you can still fit a Mesh + PB-GATT build onto the micro:bit, since I suspect Zephyr’s RAM footprint may have gone up slightly during the past year.

Johan

Join devel@lists.zephyrproject.org to automatically receive all group messages.