Mesh provisioning w/ SILabs Android Mesh app


Steve Brown
 

Has anybody been able to provision samples/bluetooth/mesh with v1.0.2?

I get the following error below on my RedBear Nano2.

Steve

Kernel stacks:
main (real size 512): unused 280 usage 232 / 512 (45 %)
idle (real size 320): unused 272 usage 48 / 320 (15 %)
interrupt (real size 2048): unused 1672 usage 376 / 2048 (18 %)
workqueue (real size 2048): unused 1744 usage 304 / 2048 (14 %)
[bt] [DBG] adv_thread: (0x200007c4) Proxy Advertising up to -1 ms
[bt] [DBG] bt_mesh_pb_gatt_open: (0x20001a88) conn 0x2000049c
prio recv thread stack (real size 748): unused 488 usage 260 / 748 (34 %)
recv thread stack (real size 4396): unused 3832 usage 564 / 4396 (12 %)
prio recv thread stack (real size 748): unused 488 usage 260 / 748 (34 %)
[bt] [DBG] bt_mesh_pb_gatt_recv: (0x20001a88) 2 bytes: 0000
[bt] [DBG] prov_invite: (0x20001a88) Attention Duration: 0 seconds
recv thread stack (real size 4396): unused 3624 usage 772 / 4396 (17 %)
[bt] [DBG] bt_mesh_pb_gatt_recv: (0x20001a88) 6 bytes: 020000020004
[bt] [DBG] prov_start: (0x20001a88) Algorithm: 0x00
[bt] [DBG] prov_start: (0x20001a88) Public Key: 0x00
[bt] [DBG] prov_start: (0x20001a88) Auth Method: 0x02
[bt] [DBG] prov_start: (0x20001a88) Auth Action: 0x00
[bt] [DBG] prov_start: (0x20001a88) Auth Size: 0x04
=========================================================================================
[bt] [ERR] prov_start: Invalid authentication method: 0x02; action: 0x00; size: 0x04
=========================================================================================
[bt] [DBG] bt_mesh_pb_gatt_recv: (0x20001a88) 65 bytes: 030cd335ab54b2e5095e46c52bafb51ed26fca5faf49fe6b55a92652bb0c86d2879fde098f92eddc06bca81944d774f91e0d5b1ebe7038693e213044916db1ed
[bt] [DBG] prov_pub_key: (0x20001a88) Remote Public Key: 0cd335ab54b2e5095e46c52bafb51ed26fca5faf49fe6b55a92652bb0c86d2879fde098f92eddc06bca81944d774f91e0d5b1ebe7038693e213044916db1ed69
[bt] [DBG] send_pub_key: (0x20001a88) Local Public Key: 9bea5c734577bb2bdb5251fe8f3e589a7201bcf5932838f7353990e33a5754622334e47ee9097fb60eed1c8abe8c50df15cf445269d28159f565ca8759a4642c
[bt] [ERR] hci_acl_handle: Invalid Tx Enqueue
[bt] [ERR] send_frag: Unable to send to driver (err -22)
Kernel stacks:
main (real size 512): unused 280 usage 232 / 512 (45 %)
idle (real size 320): unused 272 usage 48 / 320 (15 %)
interrupt (real size 2048): unused 1672 usage 376 / 2048 (18 %)
workqueue (real size 2048): unused 1744 usage 304 / 2048 (14 %)
tx stack (real size 940): unused 552 usage 388 / 940 (41 %)
[bt] [DBG] bt_mesh_pb_gatt_close: (0x20001a88) conn 0x2000049c
[bt] [DBG] bt_mesh_adv_update: (0x20001a88)
[bt] [DBG] adv_thread: (0x200007c4) Proxy Advertising up to -1 ms
[bt] [DBG] prov_dh_key_cb: (0x2000033c) 0x200025a8
[bt] [DBG] prov_dh_key_cb: (0x2000033c) DHkey: 93786861a21a66499c69e9e56af54d5f8b80167fa3e375f3d032d83cd5739c42
ecc stack (real size 1324): unused 448 usage 876 / 1324 (66 %)
[bt] [DBG] bt_mesh_adv_send: (0x20001b80) type 0x02 len 23: 00dddf0000000000000000000000000000000000000000
[bt] [DBG] adv_send: (0x200007c4) type 2 len 23: 00dddf0000000000000000000000000000000000000000
[bt] [DBG] adv_send: (0x200007c4) count 3 interval 20ms duration 90ms
[bt] [DBG] adv_send: (0x200007c4) Advertising started. Sleeping 90 ms
[bt] [DBG] adv_send: (0x200007c4) Advertising stopped


Johan Hedberg
 

Hi Steve,

On Sun, Sep 24, 2017, Steve Brown wrote:
=========================================================================================
[bt] [ERR] prov_start: Invalid authentication method: 0x02; action: 0x00; size: 0x04
=========================================================================================
At least some versions of the SiLabs app had a bug with OOB handling
that was causing similar results as above. A simple solution was to
disable OOB provisioning support from the Zephyr side, i.e. set all
output* members to zero in struct bt_mesh_prov in main.c. That said, I'm
not sure if the issue you're seeing is the same.

[bt] [ERR] hci_acl_handle: Invalid Tx Enqueue
[bt] [ERR] send_frag: Unable to send to driver (err -22)
This is something coming from the controller code that I haven't seen
before. Maybe the controller maintainers from Nordic have some idea.

Johan


Steve Brown
 

Johan,

On Sun, 2017-09-24 at 19:48 +0300, Johan Hedberg wrote:
Hi Steve,

On Sun, Sep 24, 2017, Steve Brown wrote:
===================================================================
======================
[bt] [ERR] prov_start: Invalid authentication method: 0x02; action:
0x00; size: 0x04
===================================================================
======================
At least some versions of the SiLabs app had a bug with OOB handling
that was causing similar results as above. A simple solution was to
disable OOB provisioning support from the Zephyr side, i.e. set all
output* members to zero in struct bt_mesh_prov in main.c. That said,
I'm
not sure if the issue you're seeing is the same.

[bt] [ERR] hci_acl_handle: Invalid Tx Enqueue
[bt] [ERR] send_frag: Unable to send to driver (err -22)
This is something coming from the controller code that I haven't seen
before. Maybe the controller maintainers from Nordic have some idea.

Johan
That was it!

I disabled OOB and it's working.

The Invalid Tx Enqueue error is gone too.  

Thanks,

Steve