问题标签 [esp-idf]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
1549 浏览

arduino - Guru Meditation Error: Core 1 panic'ed (Cache disabled but cached memory region access) 当我现在使用 ESP 协议时显示错误

此错误显示在我的串行监视器中,请参阅下面的 ESP32 代码,请帮助我解决

GURU冥想错误:Core 1 Panic'Ed(缓存禁用但缓存的存储器区域访问)核心1寄存器:PC:0x400D1580 PS:0x00060034 A0:0X400847FC A1:0X3FFBE7B0 A2:0X3FFBE7B0 A2:0x00000001 A3:0x00000001 A3:0x000000000000000000000000 x4800 x0000ffc A7 : 0x00000001 A8 : 0x80081348 A9 : 0x3ff5f024 A10 : 0x3ffbebfc A11 : 0x20000000 A12 : 0x00000400 A13 : 0x3ffb1b10 A14 : 0x00000026 A15 : 0x3ffc4598 SAR : 0x00000020 EXCCAUSE: 0x00000007 EXCVADDR: 0x00000000 LBEG : 0x40001609 LEND : 0x4000160d LCOUNT : 0x00000000 Core 1 was running in ISR 上下文:EPC1:0x40087157 EPC2:0x00000000 EPC3:0x00000000 EPC4:0x400d1580

Backtrace: 0x400d1580:0x3ffbe7b0 0x400847f9:0x3ffbe7d0 0x40087154:0x3ffb1b50 0x400e2aa9:0x3ffb1bc0 0x400e1379:0x3ffb1be0 0x400e17c7:0x3ffb1c00 0x400e015d:0x3ffb1c70 0x400e0c5f:0x3ffb1cc0 0x400df715:0x3ffb1d20 0x400dfc8d:0x3ffb1d60 0x4012d7e6:0x3ffb1d80 0x4012d9da:0x3ffb1dd0 0x4012da2d:0x3ffb1e00 0x400e2f57:0x3ffb1e20 0x400e30aa:0x3ffb1e40 0x400d70dd:0x3ffb1e60 0x400d2da9:0x3ffb1e80 0x400d1392:0x3ffb1f80 0x400d468b:0x3ffb1fb0 0x40088c05:0x3ffb1fd0

0 投票
1 回答
474 浏览

c - 如何从 websocket 客户端在内存中发送 jpg 图像

我玩的是 ESP32-CAM。我有一个在结构中编码为 jpg 的图像,就像这样

原始图像数据似乎是一个 uint8_t 数组。

我想通过 websocket 连接发送这个图像数据。二进制数据的发送函数具有以下语法

如果将指针格式从 char 更改为 uint8_t,则会出现编译器错误。所以我使用上面的语法。它似乎仍然有效,python websockets 服务器接收某种数据。在 python 中,当打印到服务器终端时,数据看起来像这样。

我想知道我是否以合适的数据格式发送二进制 jpg 数据?我的意思是,将 uint8 数组解释为 char 数组似乎有点奇怪。我应该在发送之前对它进行不同的编码吗?

0 投票
2 回答
746 浏览

esp-idf - 从 AWS S3 执行 esp-idf OTA 更新时出错

我正在尝试通过从 S3 存储桶下载固件来使用 esp-idf 执行 OTA 更新。我正在使用以下提供的代码段:

当将该 URL 放入我的浏览器或 wget 时,文件下载正常。但是,在 ESP32 上下载失败。我收到以下消息:

我能够追踪到引发第一个错误的函数。它被扔resolve_host_name()esp_tls.c 这里了。具体来说,错误发生在这段代码中:

任何线索为什么getaddrinfo无法解析 S3 存储桶地址?我以为我可能使用了错误的证书,但这似乎是在使用证书之前。

0 投票
0 回答
245 浏览

tcp - 通过 AT 命令向 MyMqttHub 发送数据

我一直在使用 ESP32 S2 作为主机和 Nimbelink 的 Skywire Nano (nrf9160) 作为由串行 AT 命令控制的 LTE 调制解调器编写 AT 客户端,LTE 模块响应迅速并且运行良好。LTE 调制解调器有一个内部 TCP 堆栈,我们使用它通过 HTTP POST 成功地将数据发送到 dweet.io,但我们还没有成功地向私有 MQTT 服务器发送相同的数据。

LTE 模块使用了一种叫做 Socket Dials 的方法,这些是 AT 指令,方便将数据发送到 Web,它基本上包含这三个指令:

  • AT#SOCKET 激活套接字
  • AT#TCPCONN 连接到一个 URL

例子:

  • AT#TCPSEND 打开一个 > 提示,您可以在其中输入要发送的任何内容

我不是通信协议专家,因此很难找到发送字符串的正确方法,因为我没有找到使用 TCP 套接字的类似示例。我尝试发送 mosquitto_pub 字符串但没有成功,nimbelink 只有一个使用 HTTP 的示例,我希望有人可以帮助我,或者至少让我朝着正确的方向前进。

at#xsocket=3,1,1 #XSOCKET: 3,6 OK at#xtcpconn=3,"node02.myqtthub.com",1883 #XTCPCONN: 1 OK at#xtcpsend=3

mosquitto_pub -h node02.myqtthub.com -i hub -u user -P 'password' -t topic -m "hello world"#XTCPSEND: 104

OK 袜子:3,HUP

编辑:添加了尝试的 LTE 日志

0 投票
1 回答
235 浏览

github-actions - 带有 ESP-IDF 编译的 GitHub Actions

我想通过我的自托管运行器在 GitHub Actions 上为我的基于 ESP-IDF 的项目的编译过程创建一个 CI 流。

ESP-IDF 需要在编译前导出大量的 shell 变量和其他与 shell 相关的任务。他们为此提供了一个export.sh脚本,并期望用户(我)source export.sh在编译步骤之前完成。

如何保证某个作业下的所有步骤都在具有 ESP-IDF 要求的自定义 shell 下完成?

我知道我可以在 GitHub Actions 中使用多行运行命令,但这需要我source export.sh在每个步骤中执行,不是吗?这会减慢工作速度。

谢谢

0 投票
1 回答
1763 浏览

c - 在 ESP IDF 编译器中包含头文件

我试图从 esp who 运行一个示例项目,它在单芯片示例下,从https://github.com/espressif/esp-who克隆。

它的识别例子。我包括一个 esp_http_client.h 但它找不到它。

有一个CMkakeLists.txt 和Makefile。我的第一个问题是,我是否必须编辑其中一个文件以包含标题,或者我必须在 gcc.xml 中添加目录路径。如果是这样,我该怎么做。

非常感谢。

0 投票
1 回答
384 浏览

bluetooth-lowenergy - ESP-IDF BLE 扫描广告包

我正在研究 ESP32 芯片,并试图从广告中获取所有可用信息。为此,我将 NORDIC 的 nRF 连接应用程序与准备广告商一起使用在此处输入图像描述

我扫描设备并成功读取了完整名称,但我想从广告中提取所有信息。

你知道为什么 esp_log_buffer_hex("!!!!", param->scan_rst.ble_adv, 62); 不起作用吗

0 投票
1 回答
260 浏览

cmake - 更改 sdkconfig 文件的默认位置

该项目基于 ESP-IDF v4。它可以为多个平台构建。

目前我正在尝试启用完整的源代码外构建方法,并且sdkconfig是唯一保留在源代码树中的自动生成文件。默认情况下,它保存在 cmake 项目的根目录中。

有没有办法改变sdkconfig文件的默认位置?

0 投票
1 回答
429 浏览

esp32 - esp-idf:我不能在组件中包含 mdebtls 目录

在 esp32 上,我使用 esp-idf 构建了一个名为 webSocket.c/.h 的模块。这包括

由于这个模块是通用的,我想把它放在一个组件中。我将它移到“components/webSocket”目录并添加了一个 CMakeLists.txt 文件,如下所示:

从这一点开始,模块不再编译,因为上面包含的文件无法访问。

该模块是 esp-idf 框架的一部分,或者更准确地说,是嵌入在 esp-idf 框架中的 mbedtls lib 的一部分。

我尝试了所有这些路径但没有成功:

没有一个成功,我该怎么办?

0 投票
0 回答
51 浏览

eclipse - 项目资源管理器中没有包含目录

我刚刚安装了 Eclipse CTD v2020.6 和 ESP-IDF v4.1 并在 Windows 10 中进行了配置。我可以毫无问题地构建和刷写。但我不知道为什么我在 Project explore 中看不到 Includes 目录。正常吗,如果是,有什么办法可以添加吗?除此之外,我注意到项目属性中没有 C/C++ 构建部分。:?: 我附上截图供参考。如果有人可以帮助我,我将不胜感激。[项目属性][1]项目浏览器