ble mesh provisioner disable 后无法控制 node

jiangch6
Posts: 5
Joined: Tue Nov 12, 2019 10:28 am

ble mesh provisioner disable 后无法控制 node

Postby jiangch6 » Thu Nov 14, 2019 3:29 am

Hi,

我们正在做 ble mesh 的网关,基于 ble_mesh_provisioner,验证了一下能将设备匹配进来,并能控制设备。

疑惑:
  • 当调用如下的api来disable provisioning后就无法再控制设备了

    Code: Select all

    esp_ble_mesh_provisioner_prov_disable(ESP_BLE_MESH_PROV_ADV | ESP_BLE_MESH_PROV_GATT);
    
    并报错如下:

    Code: Select all

    E (1000430) BLE_MESH: bt_mesh_set_client_model_role, Provisioner is disabled
    E (1000440) BT_LOG: btc_ble_mesh_generic_client_call_handler, Failed to set model role
    E (1000430) ble_mesh_provisioner: cmd_blemesh: Generic OnOff Set: 1, tid: 12
    
    我们之前一直在做zigbee网关,按照我们以前zigbee的经验,配网应该只在规定的时间内完成,而这个时间由用户来决定,配完结束后可正常控制设备。

    我们刚接触ESP32以及BLE MESH,不明白为啥disable provisioning后不允许控制设备?disable provisioning 另一个api吗?但是我找了esp_ble_mesh_provisioning_api.h里面没有找到类似的api

    我们验证过MTK的MT7697的mesh demo,设备匹配进来后,stop provisioning,依然是能控制设备的。
BRs,

Wangcheng
Posts: 68
Joined: Wed Mar 06, 2019 3:26 am

Re: ble mesh provisioner disable 后无法控制 node

Postby Wangcheng » Fri Jan 10, 2020 8:28 am

jiangch6 wrote:
Thu Nov 14, 2019 3:29 am
Hi,

我们正在做 ble mesh 的网关,基于 ble_mesh_provisioner,验证了一下能将设备匹配进来,并能控制设备。

疑惑:
  • 当调用如下的api来disable provisioning后就无法再控制设备了

    Code: Select all

    esp_ble_mesh_provisioner_prov_disable(ESP_BLE_MESH_PROV_ADV | ESP_BLE_MESH_PROV_GATT);
    
    并报错如下:

    Code: Select all

    E (1000430) BLE_MESH: bt_mesh_set_client_model_role, Provisioner is disabled
    E (1000440) BT_LOG: btc_ble_mesh_generic_client_call_handler, Failed to set model role
    E (1000430) ble_mesh_provisioner: cmd_blemesh: Generic OnOff Set: 1, tid: 12
    
    我们之前一直在做zigbee网关,按照我们以前zigbee的经验,配网应该只在规定的时间内完成,而这个时间由用户来决定,配完结束后可正常控制设备。

    我们刚接触ESP32以及BLE MESH,不明白为啥disable provisioning后不允许控制设备?disable provisioning 另一个api吗?但是我找了esp_ble_mesh_provisioning_api.h里面没有找到类似的api

    我们验证过MTK的MT7697的mesh demo,设备匹配进来后,stop provisioning,依然是能控制设备的。
BRs,
Hi,
esp_ble_mesh_provisioner_prov_disable(ESP_BLE_MESH_PROV_ADV | ESP_BLE_MESH_PROV_GATT);

这个 API 的作用是将 provisioner 的通讯通道 ESP_BLE_MESH_PROV_ADV 和 ESP_BLE_MESH_PROV_GATT 都关闭,也就是蓝牙设备没有 scan,所以无法接收到数据包。

provisioner 配置设备超时的时间是 30s,配置超时后,设备会重新进入未配网状态。

137502805@qq.com
Posts: 12
Joined: Thu Feb 13, 2020 6:10 am

Re: ble mesh provisioner disable 后无法控制 node

Postby 137502805@qq.com » Thu Mar 26, 2020 7:26 am

jiangch6 wrote:
Thu Nov 14, 2019 3:29 am
Hi,

我们正在做 ble mesh 的网关,基于 ble_mesh_provisioner,验证了一下能将设备匹配进来,并能控制设备。

疑惑:
  • 当调用如下的api来disable provisioning后就无法再控制设备了

    Code: Select all

    esp_ble_mesh_provisioner_prov_disable(ESP_BLE_MESH_PROV_ADV | ESP_BLE_MESH_PROV_GATT);
    
    并报错如下:

    Code: Select all

    E (1000430) BLE_MESH: bt_mesh_set_client_model_role, Provisioner is disabled
    E (1000440) BT_LOG: btc_ble_mesh_generic_client_call_handler, Failed to set model role
    E (1000430) ble_mesh_provisioner: cmd_blemesh: Generic OnOff Set: 1, tid: 12
    
    我们之前一直在做zigbee网关,按照我们以前zigbee的经验,配网应该只在规定的时间内完成,而这个时间由用户来决定,配完结束后可正常控制设备。

    我们刚接触ESP32以及BLE MESH,不明白为啥disable provisioning后不允许控制设备?disable provisioning 另一个api吗?但是我找了esp_ble_mesh_provisioning_api.h里面没有找到类似的api

    我们验证过MTK的MT7697的mesh demo,设备匹配进来后,stop provisioning,依然是能控制设备的。
BRs,
您好 我也在跑这个例子 我发现我用控制命令不是每次都能被node收到 ,需要多发几次才能收到,请问您有遇到过吗?

Who is online

Users browsing this forum: No registered users and 15 guests