ble_mesh的node和node之间是否要定义协议通讯?

chenluhui2019
Posts: 36
Joined: Wed Apr 10, 2019 9:08 am

ble_mesh的node和node之间是否要定义协议通讯?

Postby chenluhui2019 » Wed Apr 17, 2019 11:37 am

Hi,espressif
1.当一个provisioner和多个Node组成一个ble mesh网络,如果Provisioner想和某个Node通讯,但是他们的距离超过了30米,得借助另一个Node作为桥梁,那么就涉及到Node之间的通讯,这要怎么实现呢?
2.例如某个Node节点在组网的时候被编号01,请问Provisioner和这个Node通讯的格式是?要用什么格式互相收发数据?
3.贵司的demo代码,当provisioner和node组网后,可否调用prov_send(buf)函数进行通讯,比如data的收发?
4.ble_mesh_client_model的代码说明里,
After both onoff client and server devices are provisioned, use UART1 to input the unicast address of the element within the server device;
如何使用UART1输入unicast address呢?

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

Re: ble_mesh的node和node之间是否要定义协议通讯?

Postby Wangcheng » Thu Apr 18, 2019 11:11 am

chenluhui2019 wrote:
Wed Apr 17, 2019 11:37 am
Hi,espressif
1.当一个provisioner和多个Node组成一个ble mesh网络,如果Provisioner想和某个Node通讯,但是他们的距离超过了30米,得借助另一个Node作为桥梁,那么就涉及到Node之间的通讯,这要怎么实现呢?
2.例如某个Node节点在组网的时候被编号01,请问Provisioner和这个Node通讯的格式是?要用什么格式互相收发数据?
3.贵司的demo代码,当provisioner和node组网后,可否调用prov_send(buf)函数进行通讯,比如data的收发?
4.ble_mesh_client_model的代码说明里,
After both onoff client and server devices are provisioned, use UART1 to input the unicast address of the element within the server device;
如何使用UART1输入unicast address呢?
Hi chenluhui,
1. 你只需要将Node的relay 特性打开,并将消息的TTL值设置大于2,就能相互通讯。
2. mesh的通讯是基于消息的,消息有opcode和payload组成。消息分为标准消息和自定义消息,消息的发起者和接收者都是node中的model。
3. 组网后你应该调用我们提供的API进行发送消息,接收消息是通过事件触发的方式报给应用层。
4. UART1 你需要通过串口工具连接 ESP32 对应的RX和TX引脚。 由于考虑到代码的简洁性,所以没有采用console的方式,需要你自己再建立一个串口连接。

Who is online

Users browsing this forum: No registered users and 149 guests