1. 简介
Beetle ESP32-C6是一款基于ESP32-C6芯片设计的迷你体积的Arduino低功耗物联网开发板,该开发板仅有硬币大小(25*20.5mm)。ESP32-C6搭载160MHz的高性能RISC-V 32位处理器,支持Wi-Fi 6、Bluetooth 5、Zigbee 3.0、Thread 1.3通讯协议,可接入多种通讯协议的物联网网络。该开发板集成锂电池充电管理,无需外围模块即可对锂电池进行充电,可以使项目体积更加小巧。
高度集成,超小体积
Beetle ESP32-C6在仅硬币大小的体积上引出了多达13个IO口,制作项目时不必担心IO不够用的情况。Beetle ESP32-C6集成锂电池充电管理功能,可以安全的对锂电池进行充电,该开发板还支持电池电压监测,以便在电量不足时采取措施,确保设备持续运行。
多种传输协议支持,扩展无线连接性
Beetle ESP32-C6支持Wi-Fi、Thread通讯协议,因此可以制作Matter Wi-Fi 终端设备和 Matter Thread 终端设备,实现多系统、多平台智能家居设备的无缝通信与协作。此外,Beetle ESP32-C6还支持BLE、Zigbee通讯协议,与其他MCU组合,可作为Thread 边界路由器、Matter 网关和 Zigbee 网桥。
支持Wi-Fi 6,实现超低功耗物联网设备
ESP32-C6是乐鑫首款支持Wi-Fi 6协议(802.11ax)的芯片,Wi-Fi 6有更好的网络容量,可以让设备进行高效率、低延迟的工作。此外,Wi-Fi 6的目标唤醒时间(TWT,Target Wake Time)技术,能有效降低设备功耗,延长电池使用时间,让设备长久续航。
2. 产品特性
- 超小体积,尺寸仅25*20.5mm
- 搭载ESP32-C6芯片,支持Wi-Fi、BLE、Zigbee、Thread通讯协议
- 支持Wi-Fi 6协议,更低延迟,更低功耗
- 超低功耗,deep-sleep 14uA
- 集成锂电池充电功能
- 支持电池电压检测,了解设备电量信息
3. 应用场景
- 智能灯具项目
- 智能环境监测项目
- 智能开关项目
4. 产品参数
基本参数
- 工作电压: 3.3V
- Type-C输入电压: 5V DC
- 最大充电电流: 0.5A
- 休眠电流: 14uA(deep sleep模式,电池供电)
- 工作温度:-10~60℃
- 模块尺寸:20.5x25mm
硬件信息
- 处理器:RISC-V单核处理器
- 主频:160 MHz
- SRAM:512KB
- ROM:320KB
- Flash:4MB
- RTC SRAM:16KB
- USB: USB CDC
WiFi
- WIFI协议:IEEE 802.11b/g/n/ax
- IEEE 802.11ax (20 MHz-only non-AP mode)
- WIFI频宽: 2.4 GHz 频带支持 20 MHz 和 40 MHz 频宽
- WIFI模式:Station 模式、SoftAP 模式、SoftAP+Station 模式和混杂模式
- WIFI频率:2.4GHz
- 帧聚合: TX/RX A-MPDU, TX/RX A-MSDU
蓝牙
- 蓝牙协议:Bluetooth 5、Bluetooth mesh
- 蓝牙频率:125 Kbps、500 Kbps、1 Mbps、2 Mbps
IEEE 802.15.4
- 兼容 IEEE 802.15.4-2015 协议
- 频段:2.4GHz
- 数据速率:250Kbps
- 支持Thread 1.3、Zigbee 3.0
接口引脚
- 数字I/O x13
- LED PWM 控制器 6个通道
- SPI x1
- UART x3 (LP UART x1)
- I2C x2 (LP I2Cx1)
- I2S x1
- 红外收发器:发送通道 x5、接收通道 x5
- 1x 12 位 SAR ADC, 7个通道
- DMA 控制器,3个接收通道和3个发送通道
5. 功能引脚示意图
5.1 功能指示
- Type-C:Type-C USB接口
- IO15/D13:板载LED引脚
- Charge:充电指示灯
- 熄灭:未接入电源或已充满
- 常亮:充电中
- 闪烁:电池未接入
- RST:复位按键
- IO9/D9/BOOT:IO引脚/BOOT按键
- ESP32-C6:ESP32-C6FH4芯片
- TP4057:TP4057锂电池充电管理芯片
- RT9080:RT9080 LDO电源芯片
5.2引脚示意
5.3引脚概述
- Power: 电源引脚
- VIN: 5V DC输入
- 3V3: 3.3V稳压电源输出
- GND:公共地引脚
- GPIO:ESP32默认GPIO号
- Arduino:Beetle ESP32-C6在Arduino中的GPIO映射
- ADC:ESP32默认模数转换引脚
- I2C:I2C接口
- SDA/SCL: Beetle ESP32-C6在Arduino中的I2C映射
- LP_SDA/SCL: 低功耗I2C引脚
- UART:UART接口
- LP_TX/RX: 低功耗UART引脚
- SPI: Beetle ESP32-C6在Arduino中的SPI映射
- SDIO: ESP32默认SDIO引脚
- JTAG:调试接口
6. 首次使用
当您首次使用ESP32,您需要了解以下步骤
- 添加开发板JSON链接
- 下载主控的核心
- 选择开发板以及串口
- 烧录程序
6.1 Arduino环境配置
6.1.1 添加URL板卡链接
- 打开Arduino IDE,点击File->Preferences 。
- 点击如下图红色圆圈中的按钮Additional Boards Manager URLs后的按钮。
- 填入需要使用的版本链接,点击“OK”
- 稳定版:https://espressif.github.io/arduino-esp32/package_esp32_index.json
- 开发版:https://espressif.github.io/arduino-esp32/package_esp32_dev_index.json
注意:
- 请根据芯片支持情况选择合适的版本。
- 如果填入过其它链接,在下一行添加新链接即可 。
6.1.2 下载/更新板卡
- 打开Tools->Board:->Boards Manager...
- 等待板卡索引下载完成后搜索ESP32,点击安装或更新(建议安装最新版本)
- 等待下载更新完成
6.1.3 选择开发板及串口
- 点击Tools->Board:,选择对应型号的开发板"DFRobot FireBeetle 2 ESP32-xx"
- 在烧录代码前需设置开发板
- USB CDC On Boot:
- Enabled: 通过USB接口打印串口数据
- Disable: 通过TX、RX打印串口数据
- Partition Scheme: 磁盘分区方案,请根据开发板Flash选择合适的存储空间
- Port: 开发板端口(COM号正确即可,与后面芯片型号无关)
- USB CDC On Boot:
6.1.4 烧录代码
- 将代码复制到窗口内,点击"Upload"上传代码
int led = 15;
void setup() {
pinMode(led,OUTPUT);
}
void loop() {
digitalWrite(led,HIGH);
delay(1000);
digitalWrite(led,LOW);
delay(1000);
}
- 等待烧录完成,即可看见板载LED灯开始闪烁
- 若LED灯没有闪烁,请复位开发板
- 若无法烧录请查看常见问题
7. 基础教程
基础教程内容包括:电池电压检测、PWM、中断、串口、舵机、SD卡等
8. 进阶教程
进阶教程内容包括:蓝牙、WIFI、ESP-NOW、项目示例、一键配网等
9. MicroPython教程
MicroPython环境搭建
想要在FireBeetle ESP32-C6上运行microPython,首先需要给FireBeetle ESP32-C6烧录固件
- 下载需要使用的Micropython固件
- 点击下载Flash下载工具
- 运行flash_download_tool_xxx.exe
- 通过USB线连接电脑,选择ESP32-C6主控,然后按住BOOT,点击RST
- 选择下载的固件,擦除flash后烧录固件
MicroPython编译器
- 点击下载thonny
- 进入软件,对解释器进行设置(Run->Configure interpreter...)
- 将代码复制到代码框中,保存文件到MicroPython设备中,命名为main.py
import time
from machine import Pin
led=Pin(15,Pin.OUT)
while True:
led.value(1)
time.sleep(1)
led.value(0)
time.sleep(1)
- 重启FireBeetle ESP32-C6即可看到L灯闪烁
更多MicroPython教程
常见问题
在arduino IDE下无ESP32-C6开发板
原因
- 仅3.0.0以上ESP32板卡环境才支持ESP32-C6
解决办法
- 请下载最新的板卡环境
- 环境版本芯片支持情况
- 稳定版:https://espressif.github.io/arduino-esp32/package_esp32_index.json
- 开发版:https://espressif.github.io/arduino-esp32/package_esp32_dev_index.json
烧录报错
原因
- 如果Loop中延时过短或者不加延时会导致烧录超时
- 错误的调用一些函数会导致计算机不能识别USB
解决办法
按住BOOT,点击RST,然后松开BOOT按键,即可烧录。
原理
ESP32在启动时会检测BOOT(IO9)引脚的电平,若电平为高则正常启动,若电平为低则进入烧录模式。BOOT引脚默认电平为高,当按下按键电平为低。
串口无打印
解决办法
- 检查USB CDC是否处于Enable状态
- 使用其他的串口调试助手查看打印信息
更多问题及有趣的应用,可以 访问论坛 进行查阅或发帖。