Beetle ESP32-C6

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,您需要了解以下步骤

  1. 添加开发板JSON链接
  2. 下载主控的核心
  3. 选择开发板以及串口
  4. 烧录程序

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号正确即可,与后面芯片型号无关)

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烧录固件

  1. 下载需要使用的Micropython固件
  1. 点击下载Flash下载工具
  2. 运行flash_download_tool_xxx.exe
  3. 通过USB线连接电脑,选择ESP32-C6主控,然后按住BOOT,点击RST

  4. 选择下载的固件,擦除flash后烧录固件

MicroPython编译器

  1. 点击下载thonny
  2. 进入软件,对解释器进行设置(Run->Configure interpreter...)

  3. 将代码复制到代码框中,保存文件到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)

  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状态
  • 使用其他的串口调试助手查看打印信息

更多问题及有趣的应用,可以 访问论坛 进行查阅或发帖。

更多