完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
我正在尝试建立一个没有路由器的 WiFi MESH 网络(根节点将通过板载 4G 传输信息),我正在使用 ESP-IDF 来支持链式拓扑。
我已经成功地使网格连接良好,节点被识别并且根是根据外部标准设置的(目前只是 GPIO 上的一条带)。 但是,无论我做什么,似乎都没有在任何设备上收到我的消息。 我的代码的相关部分是: Mesh init(所有路由器设置都被注释掉): 代码: mesh_cfg_t cfg = MESH_INIT_CONFIG_DEFAULT(); /* mesh ID */ memcpy((uint8_t *) &cfg.mesh_id, MESH_ID, 6); /* router */ //cfg.channel = CONFIG_MESH_CHANNEL; //cfg.router.ssid_len = strlen(CONFIG_MESH_ROUTER_SSID); //memcpy((uint8_t *) &cfg.router.ssid, CONFIG_MESH_ROUTER_SSID, cfg.router.ssid_len); //memcpy((uint8_t *) &cfg.router.password, CONFIG_MESH_ROUTER_PASSWD, //strlen(CONFIG_MESH_ROUTER_PASSWD));*/ /* mesh softAP */ ESP_ERROR_CHECK(esp_mesh_set_ap_authmode(CONFIG_MESH_AP_AUTHMODE)); cfg.mesh_ap.max_connection = CONFIG_MESH_AP_CONNECTIONS; memcpy((uint8_t *) &cfg.mesh_ap.password, CONFIG_MESH_AP_PASSWD, strlen(CONFIG_MESH_AP_PASSWD)); ESP_ERROR_CHECK(esp_mesh_set_config(&cfg)); 这将返回“网格:[MANUAL]指定为 root 且未设置路由器”。 我的 mesh_send 命令如下所示: 代码: //node send to root err = esp_mesh_send(NULL, &data, MESH_DATA_P2P, NULL, 0); //root send to nodes for (i = 0; i < route_table_size; i++) { err = esp_mesh_send(&route_table, &data, MESH_DATA_P2P, NULL, 0); } 当连接路由器时,这一切都工作得很好,但当我没有连接路由器时,这一切都不起作用。 |
|
相关推荐
3个回答
|
|
我想我没有在旧程序的根节点上成功设置esp_mesh_set_self_organized。
|
|
|
|
你用的是手动联网还是自动联网?我正在尝试使用手动网络进行相同的操作,但扫描仅返回“普通 wifi”,而没有来自节点的网格。所以节点不能加入网格。
|
|
|
|
|
|
|
|
只有小组成员才能发言,加入小组>>
408浏览 6评论
340浏览 5评论
有没有办法在不使用混杂模式的情况下实现Wifi驱动程序接收缓冲区访问中断呢?
323浏览 5评论
323浏览 4评论
311浏览 4评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-8-17 10:13 , Processed in 0.835719 second(s), Total 82, Slave 66 queries .
Powered by 电子发烧友网
© 2015 www.ws-dc.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号