AI-Talk开发板更新ESP32固件

一、概要

CSK6011A通过外加ESP32-C3实现wifi联网功能,ESP32-C3作为ESP-HOSTED,需要烧录特定的固件,CSK6011A与ESP32-C3通过SPI总线通信,协议架构如下:

像 802.11、Supplicant、hostapd等协议是运行在ESP32-C3上,减少了CSK6的运行开销,减轻了CSK6的运行负荷。WIFI和蓝牙的通信均通过SPI接口,这样也节省了一些IO。

具体方案讲解可参考:基于Zephyr网络功能构建的WIFI&BLE无线芯片集成方案_zephyr 蓝牙开发-CSDN博客

二、电路

1、WIFI部分原理图

2、WIFI部分PCB

留有六个间距1.0mm的测试点用于烧录固件,需要使用1.0mm间距的探针接触测试点,然后烧录,支持一键自动烧录。

三、环境

1、软件工具

使用乐鑫官方提供的flash_download_tool工具:

下载地址:https://www.espressif.com.cn/sites/default/files/tools/flash_download_tool_3.9.7_1.zip

2、烧录器

ESP32 自动下载固件烧录模块。

此烧录模块相对普通USB转串口多了EN、BOOT信号,支持一键烧录。

四、烧录

1、ESP32固件

固件下载地址:tools/production_firmware/esp32_c3/esp-hosted-merged_v0.4.bin · master · Duomotai / duomotai_ap · GitLab (listenai.com)

2、连接烧录器

先将烧录器使用杜邦线连接到烧录探针:

再使用USB线将烧录器连接到windows电脑,然后打开设备管理器查看串口号,这里是COM11。

注意: 烧录器的TX接测试点RX,烧录器的RX接测试点TX,由于设计时没仔细核对,导致这里需要交叉一下。

3、启动烧录工具

双击flash_download_tool启动工具,选择模式:

然后点击OK。

选择之前下载好的hosted固件,地址为0x0,COM选择相应的串口号:

4、执行烧录

 将探针连接到ESP32-C3的烧录测试点:

然后点击烧录工具的START,等待烧写完成:

6、ESP32-C3日志

烧录成功后ESP32-C3会输出如下日志:

ESP-ROM:esp32c3-api1-20210207
Build:Feb  7 2021
rst:0x1 (POWERON),boot:0xd (SPI_FAST_FLASH_BOOT)
SPIWP:0xee
mode:DIO, clock div:1
load:0x3fcd5810,len:0x1800
load:0x403cc710,len:0xc18
load:0x403ce710,len:0x2e48
entry 0x403cc710
[0;32mI (30) boot: ESP-IDF v4.4.5-355-g1f00708c84 2nd stage bootloader[0m
[0;32mI (30) boot: compile time 02:59:05[0m
[0;32mI (30) boot: chip revision: v0.4[0m
[0;32mI (33) qio_mode: Enabling default flash chip QIO[0m
[0;32mI (39) boot.esp32c3: SPI Speed      : 80MHz[0m
[0;32mI (44) boot.esp32c3: SPI Mode       : QIO[0m
[0;32mI (48) boot.esp32c3: SPI Flash Size : 4MB[0m
[0;32mI (53) boot: Enabling RNG early entropy source...[0m
[0;32mI (58) boot: Partition Table:[0m
[0;32mI (62) boot: ## Label            Usage          Type ST Offset   Length[0m
[0;32mI (69) boot:  0 nvs              WiFi data        01 02 00009000 00004000[0m
[0;32mI (77) boot:  1 otadata          OTA data         01 00 0000d000 00002000[0m
[0;32mI (84) boot:  2 phy_init         RF data          01 01 0000f000 00001000[0m
[0;32mI (92) boot:  3 factory          factory app      00 00 00010000 00100000[0m
[0;32mI (99) boot:  4 ota_0            OTA app          00 10 00110000 00100000[0m
[0;32mI (107) boot:  5 ota_1            OTA app          00 11 00210000 00100000[0m
[0;32mI (114) boot: End of partition table[0m
[0;32mI (118) boot: Defaulting to factory image[0m
[0;32mI (123) esp_image: segment 0: paddr=00010020 vaddr=3c0a
0020 size=1eab8h (125624) map[0m
[0;32mI (149) esp_image: segment 1: paddr=0002eae0 vaddr=3fc93e00 size=01538h (  5432) load[0m
[0;32mI (150) esp_image: segment 2: paddr=00030020 vaddr=42000020 size=994b4h (627892) map[0m

[0;32mI (238) esp_image: segment 3: paddr=000c94dc vaddr=3fc95338 size=01668h (  5736) load[0m
[0;32mI (240) esp_image: segment 4: paddr=000cab4c vaddr=40380000 size=13d28h ( 81192) load[0m
[0;32mI (264) boot: Loaded app from partition at offset 0x10000[0m
[0;32mI (264) boot: Disabling RNG early entropy source...[0m
[0;32mI (275) cpu_start: Unicore app[0m
[0;32mI (275) cpu_start: Pro cpu up.[0m
[0;32mI (284) cpu_start: Pro cpu start user code[0m
[0;32mI (284) cpu_start: cpu freq: 160000000[0m
[0;32mI (284) cpu_start: Application information:[0m
[0;32mI (287) cpu_start: Project name:     network_adapter[0m
[0;32mI (292) cpu_start: App version:      77c953e[0m
[0;32mI (297) cpu_start: Compile time:     Sep  7 2023 02:58:56[0m
[0;32mI (303) cpu_start: ELF file SHA256:  8235fded4b3dfac7...[0m
[0;32mI (309) cpu_start: ESP-IDF:          v4.4.5-355-g1f00708c84[0m
[0;32mI (315) cpu_start: Min chip rev:     v0.3[0m
[0;32mI (320) cpu_start: Max chip rev:     v0.99 [0m
[0;32mI (325) cpu_start: Chip rev:         v0.4[0m
[0;32mI (330) heap_init: Initializing. RAM available for dynamic allocation:[0m
[0;32mI (337) heap_init: At 3FC9BCF0 len 00040A20 (258 KiB): DRAM[0m
[0;32mI (343) heap_init: At 3FCDC710 len 00002950 (10 KiB): STACK/DRAM[0m
[0;32mI (350) heap_init: At 50000020 len 00001FE0 (7 KiB): RTCRAM[0m
[0;32mI (356) spi_flash: detected chip: generic[0m
[0;32mI (361) spi_flash: flash io: qio[0m
[0;32mI (365) sleep: 
Configure to isolate all GPIO pins in sleep state[0m
[0;32mI (371) sleep: Enable automatic switching of GPIO sleep configuration[0m
[0;32mI (379) coexist: coexist rom version 9387209[0m
[0;32mI (384) cpu_start: Starting scheduler.[0m
[0;32mI (388) NETWORK_ADAPTER: *********************************************************************[0m
[0;32mI (388) NETWORK_ADAPTER:                 ESP-Hosted Firmware version :: 0.4                        [0m
[0;32mI (398) NETWORK_ADAPTER:                 Project git version :: 77c953e[0m
[0;32mI (408) NETWORK_ADAPTER:                 Transport used :: SPI                           [0m
[0;32mI (418) NETWORK_ADAPTER: *********************************************************************[0m
[0;32mI (428) NETWORK_ADAPTER: Supported features are:[0m
[0;32mI (428) NETWORK_ADAPTER: - WLAN over SPI[0m
[0;32mI (438) ESP_BT: - BT/BLE[0m
[0;32mI (438) ESP_BT:    - HCI Over SPI[0m
[0;32mI (448) ESP_BT:    - BLE only[0m
[0;32mI (448) NETWORK_ADAPTER: capabilities: 0x68[0m
[0;32mI (458) BLE_INIT: BT controller compile version [963cad4][0m
[0;32mI (458) phy_init: phy_version 970,1856f88,May 10 2023,17:44:12[0m
[0;32mI (498) system_api: Base MAC address is not set[0m
[0;32mI (498) system_api: read default base MAC address from EFUSE[0m
[0;32mI (498) BLE_INIT: Bluetooth MAC: 34:cd:b0:d3:31:be
[0m
[0;32mI (508) NETWORK_ADAPTER: ESP Bluetooth MAC addr: 34:cd:b0:d3:31:be[0m
[0;32mI (518) SPI_DRIVER:
 Using SPI interface[0m
[0;32mI (518) gpio: GPIO[5]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0 [0m
[0;32mI (528) gpio: GPIO[4]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0 [0m

[0;32mI (1538) pp: pp rom version: 9387209[0m
[0;32mI (1538) net80211: net80211 rom version: 9387209[0m
[0;32mI (1548) NETWORK_ADAPTER: Initial set up done[0m

[0;32mI (2548) slave_ctrl: event ESPInit[0m
[0;32mI (2558) slave_ctrl: Get station mac address[0m
[0;32mI (2558) slave_ctrl: mac [34:cd:b0:d3:31:bc] [0m
 
ESP32-S3-WROOM-CAM开发板ESP32-S3开发板都是基于ESP32-S3芯片的硬件平台,但它们在功能和设计上有一些区别: 1. **摄像头模块**: - **ESP32-S3-WROOM-CAM开发板**:集成了摄像头模块,通常是OV2640或OV3660摄像头。这使得它非常适合用于图像和视频捕捉应用,如安防监控、智能门铃等。 - **ESP32-S3开发板**:通常不集成摄像头模块,需要外接摄像头模块才能实现图像和视频捕捉功能。 2. **尺寸和设计**: - **ESP32-S3-WROOM-CAM开发板**:由于集成了摄像头模块,尺寸通常较大,设计上也会考虑摄像头的安装和散热。 - **ESP32-S3开发板**:尺寸相对较小,设计上更加灵活,适合多种应用场景。 3. **接口和扩展性**: - **ESP32-S3-WROOM-CAM开发板**:接口设计通常围绕摄像头模块进行扩展,提供与摄像头相关的接口,如CSI接口等。 - **ESP32-S3开发板**:提供更多的通用接口,如GPIO、I2C、SPI、UART等,适合多种传感器和模块的扩展。 4. **应用场景**: - **ESP32-S3-WROOM-CAM开发板**:主要用于需要摄像头功能的场景,如家庭安防、智能门铃、智能家居等。 - **ESP32-S3开发板**:适用于需要多种传感器和模块的应用场景,如物联网设备、无线控制、数据采集等。 总结来说,ESP32-S3-WROOM-CAM开发板集成了摄像头模块,适合需要图像和视频捕捉的应用;而ESP32-S3开发板则提供了更多的通用接口和扩展性,适合多种传感器和模块的应用。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

火柴棍mcu

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

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

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

打赏作者

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

抵扣说明:

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

余额充值