ESP-CSI:使用ESP32进行CSI(信道状态信息)采集

Github 项目链接:ESP-CSI
console_test

前言

在开始使用项目之前,请确保所有准备工作全部完成,包括熟悉代码逻辑,目录结构,烧录流程等

esp-idf 环境安装请看:ESP-IDF安装及使用

正文

  • Git下来或者下载代码,确保完整

  • 下载完成后,打开项目目录,进入examples\esp-radar\console_test,用vscode打开console_test

  • console_test目录中加入.vscode文件夹,配置c_cpp_properties.json文件

  • 打开项目,配置串口和模块信息

  • 按照官方示例的操作命令,在终端中进行操作

  • 确保烧录的端口相同,并烧录到芯片中

    • 官方的烧录方式是idf.py flash -b 921600 -p /dev/ttyUSB0 monitor ,/dev/ttyUSB0是Linux下的端口,Windows下格式为idf.py flash -b 921600 -p COMX monitor,X为端口号,921600是波特率,按照这个波特率可能后面无法通信(idf SDK Configuration Editor中搜索baud rate,可以修改波特率),建议直接使用idf自带的烧录选项烧录!
      配置波特率
  • 安装python插件,配置环境

  • ESP-IDF Terminal中终端中打开py脚本,确保脚本命令中的端口和芯片连接的端口相同

    • 注意波特率,可以在python代码中修改,如下图(我的ESP32 默认是115200,官方代码给的波特率为200000,烧录后串口显示为乱码,在代码和menuconfig中进行了修改)
      python修改波特率

    • 注意区分powershellESP-IDF Terminal两个终端,idf.py命令都要在 IDF 终端中使用!

  • 连接wifi,查看波形,测试数据

  • 具体步骤请阅读官方教程

py脚本运行ESP32 CSI Tool
在这里插入图片描述
ESP32 采集到的CSI数据
在这里插入图片描述
保存到的数据就可以进行其他的处理了,比如训练模型,深度学习等。

可能遇到的一些问题

  • 检测到#include错误
    • 一般为.vscode下的配置文件问题,需要配置正确的gcc编译器
  • 终端输入idf.py flash -b 921600 -p /dev/ttyUSB0 monitor报错
    • 注意区分powershellESP-IDF Terminal两个终端
    • 注意端口是否占用,ESP-IDF Terminal串口监视器可能会占用端口
    • 注意端口选择是否正确,Windows下是COMX
  • 运行esp_csi_tool.py图形化界面后,连接wifi无反应
    • 检查烧录时波特率是否正确,界面中的操作基本都是以串口读写的方式实现
      连接WiFi
  • 29
    点赞
  • 36
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 19
    评论
### 回答1: esp-tls: create_ssl_handle failed是ESP32芯片在进行TLS连接时出现的一种错误,可能由于几种原因导致:网络配置错误、证书验证失败或者TLS版本不匹配等。 网络配置错误可能会导致芯片无法访问远端服务器,因此需要确保设备和服务器的网络配置正确,并且ESP32能够连接到服务器。如果无法连接,请检查网络配置并确认服务器是否正常运行。 证书验证失败可能会导致芯片拒绝连接到服务器,并出现create_ssl_handle失败的错误。有时候我们需要对服务器的证书进行验证,但是芯片没能通过验证。去掉证书验证或者找到正确的证书进行验证可能解决问题。 TLS版本不匹配可能会导致芯片无法成功建立TLS连接。在进行TLS连接时需要确保芯片和服务器的TLS版本相同。如果服务器只使用TLS1.2,而芯片只支持TLS1.0,那么连接就会失败。调整芯片或服务器的TLS版本,或者使用相同的版本可能解决问题。 因此,我们需要仔细查看代码和日志,找出具体问题所在,并采取相应的措施。 ### 回答2: esp-tls: create_ssl_handle failed是一个错误信息,用于描述在ESP-TLS库中创建SSL句柄失败的情况。 ESP-TLS是一个为ESP32芯片设计的安全传输层协议库,用于实现SSL/TLS协议。该库提供了安全的网络通信功能,用于保护数据的机密性和完整性。 在使用ESP-TLS库时,create_ssl_handle是一个用于创建SSL句柄的函数。SSL句柄是用于管理和处理SSL/TLS连接的数据结构。 当出现"esp-tls: create_ssl_handle failed"错误时,意味着在创建SSL句柄时发生了错误。可能的原因包括: 1. 内存不足:创建SSL句柄需要分配内存空间,如果系统内存不足,则会导致创建失败。 2. 参数错误:在调用create_ssl_handle函数时,传递的参数可能存在问题,导致创建失败。这可能包括无效的证书、密钥或配置问题。 3. 与底层硬件或驱动的兼容性问题:ESP32芯片的硬件或驱动可能存在与ESP-TLS库不兼容的问题,导致创建SSL句柄失败。 如果遇到"esp-tls: create_ssl_handle failed"错误,可以尝试以下解决方法: 1. 检查系统内存:确保系统有足够的内存可用。可以尝试关闭其他应用程序或释放不必要的内存占用,以解决内存不足的问题。 2. 检查参数配置:仔细检查传递给create_ssl_handle函数的参数配置,确保证书、密钥和其他参数的正确性。 3. 更新ESP-TLS库版本:尝试更新使用ESP-TLS库版本,以获得最新的修复程序和改进。 4. 联系技术支持:如果上述方法无法解决问题,可以联系ESP-TLS库的技术支持,获取更详细的帮助和指导。 总之,“esp-tls: create_ssl_handle failed”错误是ESP-TLS库中创建SSL句柄失败的错误消息,可能的原因包括内存不足、参数错误或与底层硬件或驱动的兼容性问题。可以通过检查系统内存、参数配置、更新库版本或联系技术支持来解决该问题。 ### 回答3: esp-tls: create_ssl_handle failed 是一个错误信息,意思是 esp-tls 库无法创建 SSL 句柄。此错误通常出现在使用 ESP32 开发板进行 TLS 加密通信时。 出现此错误的可能原因有以下几种: 1. 内存不足:ESP32 开发板的内存资源有限,如果系统内存不足以支持创建 SSL 句柄,就会出现此错误。可以通过减少系统内存的占用或者增加内存来解决这个问题。 2. 无法连接到服务器:在建立 TLS 连接之前,确保 ESP32 开发板与目标服务器之间的网络连接是可用的。检查网络配置和硬件连接,以确保没有网络故障。 3. 证书问题:TLS 通信需要服务器提供有效的 SSL 证书。如果服务器证书无效、过期或者与 ESP32 开发板不匹配,都会导致 SSL 句柄创建失败。检查服务器证书是否正确,并确保与 ESP32 配置相匹配。 4. 代码逻辑错误:检查代码是否存在语法错误、逻辑错误或者问题函数调用。确保正确地调用了 esp-tls 库的相关函数,并按照正确的顺序初始化和使用 SSL 句柄。 解决此问题的方法包括: 1. 检查内存使用情况并优化代码,如使用更少的内存或者开启内存优化选项。 2. 确认网络连接正常,可以尝试重新连接网络或者更换网络环境。 3. 检查服务器证书是否正确并与 ESP32 的配置相匹配,可以尝试使用其他可靠的证书。 4. 仔细检查代码逻辑,确保使用 esp-tls 库的函数正确调用和使用。 如果尝试了以上方法仍然无法解决问题,可以查阅 esp-tls 的官方文档、参考示例代码或者向开发社区提问寻求进一步的帮助。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 19
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

隼尘

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值