mesh组网问题

e17edd732cd48e5de9b7d4ed99fdc6a.png

求问,收到广播信标后为什么没有配网成功呢?配网者下载的程序是:self_provisioner_vendor_with_peripheral;未配网设备下载程序:adv_vendor

您好,您用的是哪一款芯片,使用的是最新EVT中的代码吗。在烧录例程代码时,ISP工具中勾选一下,两边都清空一下dataflash。


使用的是CH582m,EVT使用的是最新的,下载时也都勾选了的;一直没能配网成功


b13e51d83ecaa2dc0b302f3b6c14266.png

待配网设备,出现了这个报错。 下载的工程是:adv_vendor


您好,我这边用8月31日的583EVT默认代码,配网器和节点都清空dataflash并烧录,打印如下↓

1668664676686.png

透传模型发送函数返回-1一般是发送参数有问题,您可以打印一下dataflash或者用ISP工具直接读取dataflash,看看是否保存了配网信息。


image.png

你好  我又重新去官网下载的EVT,也查看了dataflash,还是出现了报错,如图。这怎么解决啊


您好,看打印信息没有执行配网流程或者appkey的或是订阅地址的绑定。

默认代码中是启用了存储flash功能的,清空dataflash的同时也擦除了配网信息,ISP工具中查看dataflash没有数据,即没有配网,那么按下按键就发消息,这个节点找不到相应的配网信息,发不了消息,会返回-1表示参数错误。您再烧录配网器代码到一块582中,配网器也要清空dataflash,走一下配网流程,然后您按下按键才能发出消息。

不管是配网器还是一般节点,启用了存储flash功能时,dataflash中已有的数据都会影响到网络信息的恢复,所以如果无需保留以往的配网信息,都建议清空一下dataflash;或者若仅调试配网过程,可在app_mesh_config.h中关闭存储flash功能,配网器和未配网设备都关闭,这样复位后不会保留配网信息,需要再次配网。


你好,我用两块开发板完成了配网器配网,但是将其中一块开发板换成我们自己项目的板子(也是使用的ch582) 就无法完成配网,打印提示 link_close>reason 9


您好,返回原因9是超时,如果必定复现,请检查一下CONFIG_MESH_UNSEG_LENGTH_DEF这个宏两边是否一致。


检查过了,CONFIG_MESH_UNSEG_LENGTH_DEF这个宏两边都是一样的, 同样的程序、同样的芯片,烧写到开发板里就可以配网,烧到我自己的板子就不行会超时呢,这个外接的硬件不同会有影响吗?


您好,mesh协议栈对外接硬件没有要求。请检查一下芯片底部的GND引脚焊接是否正常,有没有上点锡再用热风枪焊接,保证一下供电正常。有没有修改CLK_OSC32K,若置0为使用外部32K晶振,板子上的32K晶振是否正常起振。

可以发送您的PCB板实物照、原理图,到zhaiyw@wch.cn。

实在不行的话,您可以将您的板子寄来我们帮您看一下,发送邮件至上述邮箱获取。


image.png

你好,我想问一下这个link_close的reason参数是从哪里传进来的,找了半天没找到呢。


您好,这个函数作为回调,由协议栈处理了,用户层看不到该参数。配网过程中协议栈会判断并返回配网情况,正常配网返回0。


您好  未配网节点为配网时会一直广播,我想问一下从哪里可以确定该节点是否在广播呢。


您好,可以加打印看看有没有走到下图中发送未配网信标的代码。emobile_2022-11-28_13-31-12.png

市面上有能够扫描到并显示出未配网信标广播的调试BLE的app,但是如果该app没有带mesh协议栈,就只能扫到广播,无法连接。


您好  程序运行到了图示的代码,用手机APP也能看到为配网节点在广播,但是配网器节点却没办法正常收到广播,如图,配网器节点并不能一直打印,有时候两三分钟打印一次,有时候七八分钟打印一次。请问这是什么问题image.png


只有登录才能回复,可以选择微信账号登录