2019-11-07 13:23:46

by Aurelien Jarno

[permalink] [raw]
Subject: Bluez mesh-cfgclient: provisioning not working with OOB number/string

Hi,

I gave a try to the new mesh-cfgclient tool addition, that's a really
nice addition. I have tried to provision a Zephyr based Bluetooth Mesh
node, basically the Mesh OnOff Model sample for the nRF52 chip [1].

Unfortunately I have not been able to provision it, it fails around the
string OOB authentication:

| [mesh-cfgclient]# discover-unprovisioned on
| Unprovisioned scan started
| Scan result:
| rssi = -73
| UUID = ECB1EC84E1E500000000000000000000
| Scan result:
| rssi = -57
| UUID = ECB1EC84E1E500000000000000000000
| Scan result:
| rssi = -56
| UUID = ECB1EC84E1E500000000000000000000
| [mesh-cfgclient]# provision ECB1EC84E1E500000000000000000000
| Provisioning started
| Provisioning failed:
| UUID = ECB1EC84E1E500000000000000000000
| bad-pdu
| [mesh-cfgclient]#

On the Zephyr node, the OOB string has been correctly displayed:

| uart:~$ OOB String P4Z77K

I have tried also with an OOB number, it also failed the same way. I
have then tried doing a provisioning with OOB authentication and it
worked fine. After that everything I tried in the mesh-cfgclient tool
worked as expected: adding appkey, binding it, getting/setting the
subscription list and the publish address, etc.

Note that provisioning works fine even with OOB string/number using
meshctl and the GATT provisionner.

Any idea what is the issue and how to debug it?

Thanks,
Aurelien

[1] https://docs.zephyrproject.org/latest/samples/boards/nrf52/mesh/onoff-app/README.html

--
Aurelien Jarno GPG: 4096R/1DDD8C9B
[email protected] http://www.aurel32.net