13、ble_mesh_vendor_model 客户端,自定义模型
Provisioner的作用是发现与配网。
配网阶段 分配地址和增加netkey等。连接后转为节点。配置阶段增加appkey绑定模型。
1、初始化流程,存储初始化,nvs擦除, board_init();初始化LED。
2、bluetooth_init();ble协议栈初始化,开启储存命名用与恢复存储ble_mesh_nvs_open(&NVS_HANDLE);
3、ble_mesh_get_dev_uuid(dev_uuid);//获取设备uuid加载到mac,后两位dev uuid
4、ble_mesh_init();//ble mesh协议栈初始化。?
? 4.1配置网络钥匙,索引,赋值16个钥匙。?? ?
? 4.2注册配网回调esp_ble_mesh_register_prov_callback(example_ble_mesh_provisioning_cb);
? 4.3客户端配置回调esp_ble_mesh_register_config_client_callback(example_ble_mesh_config_client_cb);
? 4.4/vendor模型回调esp_ble_mesh_register_custom_model_callback(example_ble_mesh_custom_model_cb);
? 4.5配网初始化.节点配置esp_ble_mesh_init(&provision, &composition);
? 4.6初始化模型esp_ble_mesh_client_model_init(&vnd_models[0]);
? 4.7匹配device uuid前两位esp_ble_mesh_provisioner_set_dev_uuid_match(match, sizeof(match), 0, false);
? 4.8开启节点使能ADV与GATT广播esp_ble_mesh_node_prov_enable(ESP_BLE_MESH_PROV_ADV | ESP_BLE_MESH_PROV_GATT);
? 4.9添加应用key/sp_ble_mesh_provisioner_add_local_app_key(prov_key.app_key, prov_key.net_idx, prov_key.app_idx);
??
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!