问题标签 [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 回答
2513 浏览

esp32 - 无法为 ESP32 构建项目

我正在尝试构建项目esp-obd-emulator我总是收到以下错误,也许有人可以帮助我。

我正在使用 esp-idf 来构建项目。

0 投票
1 回答
1623 浏览

cmake - espidf COMPONENT_DIR

我正在尝试使用 Smooth 组件(https://github.com/PerMalmberg/Smooth)编译一个简单的 Hello_world 示例,并得到错误:include could not find load file: ../lib/compiler_options.cmake。似乎 COMPONENT_DIR 没有设置,但我不知道是否/在哪里设置它,或者应该在哪里设置。

我一直盯着这个太久了,并没有发现(显然)明显的问题。有人有什么想法吗?

错误

版本

CMakeLists.txt

0 投票
2 回答
1273 浏览

android - 如何修复从 ESP32 发送的这种 Firebase 消息格式(Arduino、ESP-IDF - 所有文本,不使用 Firebase 库)

我试图让下面的代码工作,一年前我上次尝试它时工作得很好。运行它后,我的应用程序中没有收到任何通知。在 ESP32 模块上的 Arduino IDE 中使用。除了更新令牌之外,没有对曾经工作的草图进行任何更改。我没有在串行输出中收到“firebase 错误”消息,因此假设没有错误。

我刚刚在我的应用程序中更新了 Firebase 并迁移到了 AndroidX,并且可以接收从 Firebase 控制台发送的消息,我目前正在成功地使用这个库在我的应用程序中发送和接收通知。下面是我正在使用的示例,它运行良好。

我尝试在前台和后台使用应用程序以数据和通知消息格式发送顶部的代码,但无法接收消息。我想知道 Firebase 格式或规则等是否在去年发生了变化。我需要使用顶部的代码而不是库,因为我可以在消息正文中添加更多的键值对,也可以发送到我过去使用相同代码成功完成的 iOS。我确信密钥对可以添加到我现在正在使用的库中,但我真的更喜欢顶部代码的简单性。将不胜感激任何建议。

0 投票
1 回答
3339 浏览

arduino - Arduino esp32:存储结构 EEPROM 的数组

我面临一个问题,无法解决在 nvs 中存储结构数组。

我有这个由可变长度字符串组成的结构:

在其他例程中,我有这些数据来自远程服务器,所以我将它保存给我 arraytag

这个想法是在到达时将结构的值加载到人员并在设置时重新加载。

我已经能够将单个元素写入 EEPROM,但我在保存这个结构数组时遇到了困难。

有人可以开车送我到正确的方向或有建议吗?

0 投票
1 回答
1344 浏览

wifi - 如何选择在 ESP32 中使用的网络接口

我目前使用的是 Esp32,除了 wifi 之外,它还提供以太网接口。我正在使用带有 FreeRTOS 的 esp-idf v3.3。

为了使用它,我包含了“esp_eth.h”库(https://docs.espressif.com/projects/esp-idf/en/release-v3.1/api-reference/ethernet/esp_eth.html#api-reference -phy-lan8720)。

我想根据我想做的事情同时使用 Wifi 和以太网接口,但是选择使用哪个接口,有没有办法?

实际使用是通过以太网接口接收命令(例如要ping的站点),通过wifi接口ping服务器并将ping结果返回以太网接口。如何选择要使用的接口(我不希望通过以太网进行 ping 或响应通过 wifi)。

@edit:我找到了 netif_set_default(struct netif * netif) 方法,但我不知道这是否是选择用于特定操作的接口的最佳方法(我应该从一个接口切换到另一个接口)

0 投票
1 回答
406 浏览

bluetooth-lowenergy - NimBLE 中的 ble_gatts_chr_updated 如何获取特征值?

我正在使用 esp-idf 中的 NimBLE API 编写 BLE 外围设备。我能找到的所有代码都将特征值存储在变量中,而不是 NimBLE 可以访问的任何内容中。

但是,在https://mynewt.apache.org/latest/network/ble_hs/ble_gatts.html中有函数 ble_gatts_chr_updated 。

我想使用它,但我不知道如何指定要在通知中发送的值。

一个 ESP-IDF 示例使用ble_gattc_notify_custom,但这似乎是错误的,因为我认为那里的 c 代表客户端,外围设备是服务器。

我误解了什么,还是 NimBLE 刚刚坏了?

0 投票
1 回答
1049 浏览

esp-idf - 如何设置 adf_path 并为 LYRA-T 板构建项目?

“警告未初始化的值。CMakeLists.txt:5 (include) 处的 CMake 警告 (dev):未初始化变量 'ADF_PATH' 此警告适用于项目开发人员。使用 -Wno-dev 来抑制它。

CMakeLists.txt 处的 CMake 错误:5(包含):包含找不到加载文件:/CMakeLists.txt

/Users/Embedded/Desktop/esp/esp-idf/components/vfs C:/Users/Embedded/Desktop/esp/esp-idf/components/wear_levelling C:/Users/Embedded/Desktop/esp/esp-idf/components /wifi_provisioning C:/Users/Embedded/Desktop/esp/esp-idf/components/wifi_service C:/Users/Embedded/Desktop/esp/esp-idf/components/wpa_supplicant C:/Users/Embedded/Desktop/esp/esp -idf/components/xtensa -- 配置不完整,出现错误!另请参阅“C:/Users/Embedded/Desktop/esp/esp-adf/examples/get-started/play_mp3/build/CMakeFiles/CMakeOutput.log”。cmake 失败,退出代码为 1" /Users/Embedded/Desktop/esp/esp-idf/components/xtensa -- 配置不完整,出现错误!另请参阅“C:/Users/Embedded/Desktop/esp/esp-adf/examples/get-started/play_mp3/build/CMakeFiles/CMakeOutput.log”。cmake 失败,退出代码为 1" /Users/Embedded/Desktop/esp/esp-idf/components/xtensa -- 配置不完整,出现错误!另请参阅“C:/Users/Embedded/Desktop/esp/esp-adf/examples/get-started/play_mp3/build/CMakeFiles/CMakeOutput.log”。cmake 失败,退出代码为 1"

0 投票
0 回答
253 浏览

esp32 - 最大 tcp 客户端连接数不增加

在 Esp32(站模式)下建立一个 tcp 服务器。我接受使用以下代码的客户。

当20个tcp客户端同时发送连接请求时,9个可以连接。但在我的系统中,现场的 1000 个客户端必须同时连接到 esp32 服务器。

虽然我在( ) 中将 " Maximum active TCP Connections" 和 " Maximum listening TCP Connections" 设为 1000 ,但连接数并没有改变。MenuconfigLWIP->TCP

只有当我更改了“ Max number of open sockets”中的“ Menuconfig,我才能增加连接数。

Esp32 将以“站”模式连接到网络并创建 tcp 服务器。其他 1000 个 esp32 将作为客户端连接到此。

有可能吗?如果可能的话,我应该如何设置 tcp 服务器?

0 投票
1 回答
20 浏览

makefile - 为什么我的 GNUMakefile 在 micropython 构建期间被忽略?

我正在尝试为 ESP32 编译 micropython。

( git@github.com:micropython/micropython.git 和 git@github.com:espressif/esp-idf.git)

在 micropython/ports/esp32/GNUMakefile 我有这样定义的变量:

在 makefile 中,惰性设置器(?=)用于像 BOARD 这样的变量,但 gmake 最终还是构建了 GENERIC 而不是 GENERIC_SPIRAM。

像 PORT 之类的其他设置也被忽略了,我什至无法擦除任何连接的设备,因为/dev/cu.SLAB_USBtoUART它总是被 '/dev/ttyUSB0' 覆盖

我在 OSX mojave 上。

谁能指出我正确的方向?

0 投票
1 回答
1298 浏览

button - 带中断的按钮计数器

我想在触发中断时每秒增加一个变量。esp32、esp-idf 上的代码。我已经连接了一个按钮,当按下按钮时我想计算秒数。

我使用轮询功能做到了这一点,但我想学习如何使用中断来做到这一点,因此仅在按下按钮时计数和轮询,而不是每秒检查是否有按下按钮。

它可以工作,但是当代码进入 while(buttonState == 1) 时,循环永远不会结束。

我究竟做错了什么?