查看“︁Demo:Btble”︁的源代码
←
Demo:Btble
跳转到导航
跳转到搜索
因为以下原因,您没有权限编辑该页面:
不允许您执行您所请求的操作。
您可以查看和复制此页面的源代码。
== Demo介绍: == '''这部分Demo主要是蓝牙通讯相关功能的实例代码,这些demo保存在SDK的 example/btble路径下。''' == blemesh_cli: == === 基本介绍: === 该demo创建了一个 Bluetooth mesh 网络,通过向串口发送指令进行初始化后,就可以通过手机APP在mesh网络中进行添加并连接。 DEMO命令和输出:<syntaxhighlight lang="bash" line="1"> bouffalolab />blemesh_init #初始化bluemesh网络 #输出: Init successfully Env[LOCAL_NAME] Data len[10], setting_env_cb Use pb-adv or pb-gatt to enable advertising bouffalolab />blemesh_pb 2 1 #输出: PB-GATT enabled </syntaxhighlight>执行完上述命令后,就可以使用手机APP进行NODE的添加和连接。 添加的步骤如下:<gallery> 文件:APPopen.png|step1 文件:Meshnode2.png|step2 文件:Meshnode3.png|step3 文件:Meshnode4.png|step4 文件:Meshnode5.png|step5 文件:Meshnode6.png|ste6 文件:Meshnode7.png|step7 文件:Meshnode8.png|step8 文件:Meshnode9.png|step9 文件:Meshnode10.png|step10 文件:Meshnode11.png|step11 文件:Meshnode12.png|step12 文件:Meshnode13.png|step13 </gallery> === 如何使用配网器 Provisioner 将新设备添加进网络中: === 大概流程如下: '''1.打开未配网设备 ---- 2.启动配网器Provisioner ---- 3.监听设备广播 ---- 4.添加设备到网络 ---- 5.获取设备信息 ---- 6.分配密钥''' provisioner设备编译时,必须更改一个编译选项: CONFIG_BT_MESH_PROVISIONER=1 ==== 执行步骤1:打开未配网设备并且输入以下命令: ==== <syntaxhighlight lang="bash" line="1"> blemesh_init # 初始化Mesh协议栈 blemesh_pb 1 1 # 开启PB-ADV和PB-GATT配网承载 </syntaxhighlight> ==== 执行步骤2: 打开配网器设备输入以下命令: ==== <syntaxhighlight lang="bash" line="1"> bouffalolab />blemesh_pvnr_init #初始化Provisioner #得到输出: ......... Local node provisioned, net_idx 0x0000 address 0x0001 Network key:8fe7deea92943001567251dc1f9b0f03 Dev key:89c2f18f9f286661c6bbb1430d7aadb7 Provisioning completed </syntaxhighlight> * <code>net_idx 0x0000</code>:网络索引 * <code>address 0x0001</code>:Provisioner自身地址 * <code>Network key</code>:网络层加密密钥 * <code>Dev key</code>:设备专属配置密钥 ==== 执行步骤3:打开广播 ==== 执行以下命令: blemesh_beacon_listen 0x01 # 开启广播监听 * 扫描周围广播Mesh信标的设备 * 捕获并显示未配网设备的UUID(如:<code>07af000011112222333318b905de96c2</code>) * UUID包含设备身份信息(厂商ID、产品ID等) ==== 执行步骤4:在配网器设备上执行 添加设备到网络命令 ==== <syntaxhighlight lang="bash" line="1"> bouffalolab />blemesh_provision_adv 07af000011112222333318b905de96c2 0 3 0 #输出 P1:“07af000011112222333318b905de96c2" is UUID information. P2:0:net_idx P3:3: assign node unicast address。 P4:0:attention_duration </syntaxhighlight> * <code>UUID</code>:目标设备的唯一标识 * <code>net_idx 0</code>:使用的网络索引 * <code>address 3</code>:分配给设备的单播地址(0x0003) * <code>attention_duration 0</code>:配网指示时长(0=无提示) ==== 执行步骤5:获取设备信息 ==== 执行的命令与输出内容:<syntaxhighlight lang="bash" line="1"> bouffalolab /> blemesh_get_comp 0x0000 0x0003 0x00 #输出: P1:net index. P2:dst address. P3:page number. </syntaxhighlight> * <code>net_idx 0x0000</code>:网络索引 * <code>dst 0x0003</code>:目标设备地址 * <code>page 0x00</code>:组成数据页码 ==== 执行步骤6:分配密钥key ==== <syntaxhighlight lang="bash" line="1"> bouffalolab /> blemesh_app_key_add 0x0000 0x0003 0x0000 0x0000 #输出 P1:net index. P2:dst address. P3:Network key index。 P4:Application key index. </syntaxhighlight>
返回
Demo:Btble
。
导航菜单
个人工具
登录
命名空间
页面
讨论
大陆简体
查看
阅读
查看源代码
查看历史
更多
搜索
导航
首页
最近更改
随机页面
MediaWiki帮助
工具
链入页面
相关更改
特殊页面
页面信息