esp32

ESP32 快速入门(八):通过 espefuse.py 工具自定义客户 MAC 地址

拥有回忆 提交于 2020-01-26 00:55:30
一. 文章目的 实践:通过 esp-idf 自带的 espefuse.py 工具自定义 efuse 里的客户 MAC 地址。 注: efuse 里的修改是不可逆的(efuse 里的位变成 1 后不能再次变成 0,所以在同一块 ESP32 上我们基本上只有一次自定义客户 MAC 地址的机会) 二. 操作环境 为了保证测试结果的一致性,采用以下测试环境: esp-idf 编写本文时,使用的 esp-idf release 版本对应的 commit 为 2befd5c。可通过以下命令确认: git log --oneline -1 结果为: 2befd5c Merge branch 'feature/wifi_prov_ext_httpd_v3.3' into 'release/v3.3' 三. 实践过程 打开终端,进入到 esp-idf 自带的 espefuse.py 对应目录下,以下是参考指令: cd esp/esp-idf/components/esptool_py/esptool 在这里,我们可以使用 python espefuse.py --port /dev/ttyUSB0 summary 指令来查询 efuse 当前的状态,在对应的输出中我们主要看 BLK3 的开头部分: BLK3 Variable Block 3 = 00 00 00 00 00 00 00 00 00

ESP32学习笔记(一) 环境搭建与下载

依然范特西╮ 提交于 2020-01-13 21:05:19
ESP32学习笔记(一) 环境搭建与下载 作者:Nevel 博客:nevel.cnblogs.com 转载请保留出处 前几天刚入手了ESP32模块,趁着放假有时间,我们先把ESP32的编译环境搭建好 一.官方固件包的安装与配置. 首先,我们把ESP32模块连接上电脑,如果没有ESP32底板的话,则需连接一个usb转ttl模块,接下来我们下载好两个压缩包: Msys32为ESP32的 下载工具链和仿真环境, 可以从如下网址下载 https://dl.espressif.com/dl/esp32_win32_msys2_environment_and_toolchain-20160816.zip esp32_idf为官方的固件包 可从git上同步 我们将msys32解压后放在c盘根目录,运行msys32 目录下的 msys2_shell.cmd 我们进入了一个类似命令行的页面,其实官方提供的这个下载和仿真工具其实是MSYS 因为之后的开发需要在Shell中执行一些linux下的命令 所以使用这样一个工具模拟一个 unix 的模拟环境。 注 : MSYS 是用于辅助 Windows 版 MinGW 进行命令行开发的配套软件包 接下来我们正式进入命令行操作: 1.创建文件夹,同步固件包(已经下载好固件包的可直接解压到c盘根目录,并跳过此步) 输入 mkdir esp32_idf

ESP32 快速入门(六): Power Management 电源管理

一曲冷凌霜 提交于 2020-01-13 08:49:41
1. 前言 最近笔者实践了 ESP32 的电源管理,故在此简要记录一些相关知识。如果需要系统的了解电源管理,请查看 espressif 官方文档之电源管理 。 2. 电源管理使用方式 主要是在代码中添加如下代码段: # if CONFIG_PM_ENABLE // Configure dynamic frequency scaling: // maximum and minimum frequencies are set in sdkconfig, // automatic light sleep is enabled if tickless idle support is enabled. esp_pm_config_esp32_t pm_config = { . max_freq_mhz = CONFIG_EXAMPLE_MAX_CPU_FREQ_MHZ , . min_freq_mhz = CONFIG_EXAMPLE_MIN_CPU_FREQ_MHZ , # if CONFIG_FREERTOS_USE_TICKLESS_IDLE . light_sleep_enable = true # endif } ; ESP_ERROR_CHECK ( esp_pm_configure ( & pm_config ) ) ; # endif // CONFIG_PM_ENABLE

ESP32 - UDP broadcaster/ receiver with native LwIP library

大兔子大兔子 提交于 2019-12-23 18:00:33
问题 I'm building a distributed application with the ESP32 (a great platform btw) where all participants should communicate over UDP in it's simplest form: sending messages via broadcast and listening to all messages floating around . Each participant filters the relevant messages by itself. So far, I have the following initialization routine: int lavor_wifi_openUDPsocket(){ // Create a socket int sckt = socket(AF_INET, SOCK_DGRAM, 0); if ( sckt < 0 ){ printf("socket call failed"); exit(0); } //

How to upload multiple files to ftp in one session in Arduino C++

爱⌒轻易说出口 提交于 2019-12-23 04:21:29
问题 My code works well to upload first file in the loop to ftp. But it hangs once second file is going to be uploaded. I'm reading the SD card root folder using lib first I set the ftp connection using connectFTP() to establish also data transfer port. Next I'm calling the fileTransfer(); While loop function works well, until first file is transfered. Once second file meet If criteria if (fileTemp != fileName && fileTemp[0] == '1' && fileTemp[1] == '9') and send the client.print(F("STOR "));

ESP32 direct port manipulation

感情迁移 提交于 2019-12-19 04:02:51
问题 Dear StackOverflowers, I am trying to use HX8357D 3.5" TFT from Adafruit (link) with an esp32. The TFT driver has two interfaces: SPI and 8-bit parallel. The provided library from Adafruit (link) only supports SPI on the esp32. I need to have higher display speeds, so I decided to try and add support for the esp32 myself. I'm not experienced at all with this kind of programming, but I liked the challenge. I figured out how the 8-bit interface work by reverse engineering the Arduino Uno/Mega

acquire a semaphore for the esp32 antenna (bluetooth/wifi dualmode)

本秂侑毒 提交于 2019-12-18 05:55:16
问题 I am trying to build a esp32 application, where I have bluetooth and wifi enabled at the same time. Bluetooth is used with the a2dp profile, where the esp is a sink. After receiving the data, it should be published over a UDP socket as a broadcast to the network. The problem is the antenna. Both bt and wifi are sharing it. The a2dp stream seems to permanently acquiring the antenna and releasing it very rarely (~2 packages/min, I have ~3000 packages/min). So my question: Is there some kind of

ESP32 官方文档(二)构建系统

依然范特西╮ 提交于 2019-12-16 14:28:53
转载: ESP32 官方文档(二)构建系统 构建系统 构建系统 使用构建系统 概要 概念 示例项目 项目 Makefile 最小示例 Makefile 强制项目变量 可选项目变量 组件 Makefile 搜索组件 具有相同名称的多个组件 最小组件 Makefile 预设组件变量 可选项目范围的组件变量 可选特定的组件变量 组件配置 示例:添加二进制库、组件配置文件 Kconfig 预处理器定义 构建过程内部 顶级:Project Makefile 第二级:组件Makefile 以非交互方式运行 高级 Make 用法 调试 Make Process 警告未定义的变量 覆盖项目的部分内容 Makefile.projbuild KConfig.projbuild Makefile.componentbuild 仅配置组件 示例组件 Makefile 添加源文件目录 指定源文件 添加条件配置 源代码生成 Cosmetic Improvements 嵌入二进制数据 完全覆盖组件 Makefile 自定义 sdkconfig 默认值 保存 flash 参数 构建 Bootloader 构建系统 本文档解释了 Espressif 物联网开发框架构建系统和“组件”的概念. 如果您想知道如何组织新的 ESP-IDF 项目,请阅读本文档. 我们建议使用 esp-idf-template

Unable to read data via bluetooth successfully

笑着哭i 提交于 2019-12-12 00:52:41
问题 I'm trying to create an App which can receive data and send data to the microcontroller (ESP32). But for some reason, I'm unable to receive data from microcontroller successfully. The app is written in Kotlin, and I already tried some examples mentioned on StackOverflow, but none of them actually works on my code. I can successfully send data to the microcontroller via Bluetooth, but I can't receive data from Bluetooth. (The method I used in the microcontroller is just simply "ESP_BT.println(

esphome的初步使用,点亮esp32的板载小灯

北城余情 提交于 2019-12-11 16:12:26
esphome: name: test1 platform: ESP32 board: nodemcu-32s wifi: ssid: "xxxxxx" //这里填写的是想让esp32接入的wifi password: "xxxxxxxx" # Enable fallback hotspot (captive portal) in case wifi connection fails ap: ssid: "Test1 Fallback Hotspot" //这里是如果第一个设置的wifi连接失败启用热点连接。 password: "xxxxxxxx" captive_portal: # Enable logging logger: # Enable Home Assistant API api: password: "hass" //homeassistant的密码 ota: password: "11111111" output: - platform: ledc pin: GPIO2 //这里是esp32控制灯的GPIO id: gpio_2 # Example usage in a light light: - platform: monochromatic output: gpio_2 name: "Kitchen Light" web_server: port: 80 /