ESPRESSIF ESP32C3WROOM02U Bluetooth Transceiver Module User Manual
- June 12, 2024
- ESPRESSIF
Table of Contents
ESP32C3WROOM02U
User Manual
ESP32C3WROOM02U Bluetooth Transceiver Module
About This Document
This user manual shows how to get started with the ESP32-C3-WROOM-02U module.
Document Updates
Please always refer to the latest version on
https://www.espressif.com/en/support/download/documents.
Revision History
For revision history of this document, please refer to the last page.
Documentation Change Notification
Espressif provides email notifications to keep you updated on changes to
technical documentation. Please subscribe at
www.espressif.com/en/subscribe.
Certification
Download certificates for Espressif products from
www.espressif.com/en/certificates.
Overview
1.1 Module Overview
ESP32-C3-WROOM-02U is a general-purpose Wi-Fi and Bluetooth LE module. The
rich set of peripherals and a small size make this module an ideal choice for
smart homes, industrial automation, health care, consumer electronics, etc.
Table 1: ESP32C3WROOM02U Specifications
Categories | Parameters | Specifications |
---|---|---|
Wi-Fi | Protocols | 802.11 b/g/n (up to 150 Mbps) |
Frequency range | 2412 – 2462 MHz | |
Bluetooth® | Protocols | Bluetooth® LE: Bluetooth 5 and Bluetooth mesh |
Radio | Class-1, class-2 and class-3 transmitter |
AFH
Audio| CVSD and SBC
Hardware| Module interfaces| GPIO, SPI, UART, I2C, I25, remote control
peripheral, LED PWM controller, general DMA controller, TWAI® controller
(compatible with ISO 11898-1), temperature sensor, SAR ADC
Integrated crystal| 40 MHz crystal
Integrated SPI flash| 4 MB
Operating voltage/Power supply| 3.0 V – 3.6 V
Operating current| Average: 80 mA
Minimum current delivered by power supply| 500 mA
Ambient temperature| 85 °C version: —40 °C – +85 °C;
105 °C version: —40 °C – +105 °C
Moisture sensitivity level (MSL)| Level 3
1.2 Pin Description The
module has 19 pins. See pin definitions in Table 2.
For peripheral pin configurations, please refer to ESP32-C3 Series Datasheet .
Table 2: Pin Definitions
Name | No. | Type | Function |
---|---|---|---|
3V3 | 1 | P | Power supply |
EN | 2 | I | High: on, enables the chip. |
Low: off, the chip powers off.
Note: Do not leave the EN pin floating.
IO4| 3| I/O/T| GPIO4, MTMS, ADC1_CH4, FSPIHD
IO5| 4| I/O/T| GPIO5, MTDI, ADC2_CH0, FSPIWP
IO6| 5| I/O/T| GPIO6, MTCK, FSPICLK
IO7| 6| I/O/T| GPIO7, MTDO, FSPID
IO8| 7| I/O/T| GPIO8
IO9| 8| I/O/T| GPIO9
GND| 9, 19| P| Ground
IO10| 10| I/O/T| GPIO10, FSPICS0
RXD0| 11| I/O/T| U0RXD, GPIO20
TXD0| 12| I/O/T| U0TXD, GPIO21
IO18| 13| —| GPIO18, USB_D-
IO19| 14| I/O/T| GPIO19, USB_D+
IO3| 15| I/O/T| GPIO3, ADC1_CH3
IO2| 16| I/O/T| GPIO2, ADC1_CH2, FSPIQ
IO1| 17| I/O/T| GPIO1, ADC1_CH1, XTAL_32K_N (32.768 kHz crystal output)
IO0| 18| I/O/T| GPIO0, ADC1_CH0, XTAL_32K_P (32.768 kHz crystal input)
Get Started on ESP32C3WROOM02U
2.1 What You Need
To develop applications for ESP32-C3-WROOM-02U module you need:
- 1 x ESP32-C3-WROOM-02U module
- 1 x Espressif RF testing board
- 1 x USB-to-Serial board
- 1 x Micro-USB cable
- 1 x PC running Linux
In this user guide, we take Linux operating system as an example. For more
information about the configuration on Windows and macOS, please refer to ESP-
IDF Programming Guide.
2.2 Hardware Connection
- Solder the ESP32-C3-WROOM-02U module to the RF testing board as shown in Figure 2.
- Connect the RF testing board to the USB-to-Serial board via TXD, RXD, and GND.
- Connect the USB-to-Serial board to the PC.
- Connect the RF testing board to the PC or a power adapter to enable 5 V power supply, via the Micro-USB cable.
- During download, connect IO9 to GND via a jumper, and pull up IO2 and IO8. Then, turn ”ON” the testing board.
- Download firmware into flash. For details, see the sections below.
- After download, remove the jumper on IO0 and GND, and the jumper wire to pull up IO8.
- Power up the RF testing board again. ESP32-C3-WROOM-02U will switch to working mode. The chip will read programs from flash upon initialization.
Note:
IO9 is internally logic high. If IO9 is pulled low, and IO2 and IO8 is pulled
high, the Boot mode is selected. In other cases, the Download mode is
selected. For more information on ESP32-C3-WROOM-02U, please refer to
ESP32-C3-WROOM-02 & ESP32-C3-WROOM-02U Datasheet.
2.3 Set up Development Environment
The Espressif IoT Development Framework (ESP-IDF for short) is a framework for
developing applications based on the Espressif chips. Users can develop
applications with ESP chips in Windows/Linux/macOS based on ESP-IDF.
Here we take Linux operating system as an example.
2.3.1 Install Prerequisites
To compile with ESP-IDF you need to get the following packages:
-
CentOS 7:
1 sudo yum install git wget flex bison gperf python cmake ninja-build ccache dfuutil -
Ubuntu and Debian (one command breaks into two lines):
1 sudo apt-get install git wget flex bison gperf python python-pip pythonsetuptools cmake
2 ninja-build ccache libffi-dev libssl-dev dfu-util -
Arch:
1 sudo pacman -S –needed gcc git make flex bison gperf python-pip cmake ninja ccache dfu-util
Note:
- This guide uses the directory ~/esp on Linux as an installation folder for ESP-IDF.
- Keep in mind that ESP-IDF does not support spaces in paths.
2.3.2 Get ESPIDF
To build applications for ESP32-C3-WROOM-02U module, you need the software
libraries provided by Espressif in ESP-IDF repository.
To get ESP-IDF, create an installation directory ( ~/esp) to download ESP-IDF
to and clone the repository with ‘git clone’:
- mkdir -p ~/esp
- cd ~/esp
- git clone –recursive https://github.com/espressif/esp-idf.git
ESP-IDF will be downloaded into ~/esp/esp-idf. Consult ESP-IDF Versions – ESP32-S2 – — ESP-IDF Programming Guide latest documentation ( espressif.com ) for information about which ESP- IDF version to use in a given situation.
2.3.4 Set up Environment Variables
The installed tools are not yet added to the PATH environment variable. To
make the tools usable from the command line, some environment variables must
be set. ESP-IDF provides another script ’export.sh’ which does that. In the
terminal where you are going to use ESP-IDF, run:
- $HOME/esp/esp-idf/export.sh
Now everything is ready, you can build your first project on ESP32-C3-WROOM- 02U module.
2.4 Create Your First Project
2.4.1 Start a Project
Now you are ready to prepare your application for ESP32-C3-WROOM-02U
module. You can start withesp-idf/examples/get-started/hello_world at
c77c4ccf6c43ab09fd89e7c907bf5cf2a3499e3b · espressif/esp-idf · GitHub project
from esp-idf/examples at master · espressif/esp-idf · GitHub in ESP-IDF.
Copy get-started/hello_world to ~/esp directory:
- cd ~/esp
- cp -r $IDF_PATH/examples/get-started/hello_world .
There is a range of esp-idf/examples at master · espressif/esp-idf · GitHub in
the examples directory in ESP-IDF. You can copy any project in the same way as
presented above and run it. It is also possible to build examples in-place,
without copying them first.
2.4.2 Connect Your Device
Now connect your ESP32-C3-WROOM-02U module to the computer and check under
what serial port the module is visible. Serial ports in Linux start with
‘/dev/tty’ in their names. Run the command below two times, first with the
board unplugged, then with plugged in. The port which appears the second time
is the one you need:
- ls /dev/tty*
Note:
Keep the port name handy as you will need it in the next steps.
2.4.3 Configure
Navigate to your ‘hello_world’ directory from Step 2.4.1. Start a Project, set
ESP32-C3 as the target and run the
project configuration utility ‘menuconfig’.
- cd ~/esp/hello_world
- idf.py set-target esp32c3
- idf.py menuconfig
Setting the target with ‘idf.py set-target esp32c3’ should be done once, after
opening a new project. If the project contains some existing builds and
configuration, they will be cleared and initialized. The target may be saved
in environment variable to skip this step at all. See Build System – ESP32-S2
– — ESP-IDF Programming Guide latest documentation (
espressif.com ) for additional information.
If the previous steps have been done correctly, the following menu
appears:
Figure 3: Project Configuration Home Window
The colors of the menu could be different in your terminal. You can change the
appearance with the option ‘–style’.
Please run ‘idf.py menuconfig –help’for further information.
2.4.4 Build the Project
Build the project by running:
- idf.py build
This command will compile the application and all ESP-IDF components, then it will generate the bootloader, partition table, and application binaries.
- $ idf.py build
- Running cmake in directory /path/to/hello_world/build
- Executing ”cmake -G Ninja –warn-uninitialized /path/to/hello_world”…
- Warn about uninitialized values.
- — Found Git: /usr/bin/git (found version ”2.17.0”)
- — Building empty aws_iot component due to configuration
- — Component names: …
- — Component paths: …
- … (more lines of build system output)
- [527/527] Generating hello-world.bin
- esptool.py v2.3.1
- Project build complete. To flash, run this command:
- ../../../components/esptool_py/esptool/esptool.py -p (PORT) -b 921600 writeflash –flash mode dio
- –flash_size detect –flash_freq 40m 0x10000 build/hello-world.bin build 0x1000
- build/bootloader/bootloader.bin 0x8000 build/partition_table/partition-table.bin
- or run ’idf.py -p PORT flash’
If there are no errors, the build will finish by generating the firmware binary .bin file.
2.4.5 Flash onto the Device
Flash the binaries that you just built onto your ESP32-C3-WROOM-02U module by
running:
- idf.py -p PORT [-b BAUD] flash
Replace PORT with your module‘s serial port name from Step: Connect Your
Device.
You can also change the flasher baud rate by replacing BAUD with the baud rate
you need. The default baud rate is 460800.
For more information on idf.py arguments, see Build System – ESP32-S2 – — ESP-
IDF Programming Guide latest documentation (
espressif.com )
Note:
The option ‘flash‘ automatically builds and flashes the project, so running
‘idf.py build‘ is not necessary.
- …
- esptool.py –chip esp32c3 -p /dev/ttyUSB0 -b 460800 –before=default_reset –after =hard_reset write_flash –flash_mode dio –flash_freq 80m –flash_size 2MB 0x 8000 partition_table/partition-table.bin 0x0 bootloader/bootloader.bin 0x10000 hello-world.bin
- esptool.py v3.0
- Serial port /dev/ttyUSB0
- Connecting….
- Chip is ESP32-C3
- Features: Wi-Fi
- Crystal is 40MHz
- MAC: 7c:df:a1:40:02:a4
- Uploading stub…
- Running stub…
- Stub running…
- Changing baud rate to 460800
- Changed.
- Configuring flash size…
- Compressed 3072 bytes to 103…
- Writing at 0x00008000… (100 %)
- Wrote 3072 bytes (103 compressed) at 0x00008000 in 0.0 seconds (effective 4238.1 kbit/s)…
- Hash of data verified.
- Compressed 18960 bytes to 11311…
- Writing at 0x00000000… (100 %)
- Wrote 18960 bytes (11311 compressed) at 0x00000000 in 0.3 seconds (effective 584.9 kbit/s)…
- Hash of data verified.
- Compressed 145520 bytes to 71984…
- Writing at 0x00010000… (20 %)
- Writing at 0x00014000… (40 %)
- Writing at 0x00018000… (60 %)
- Writing at 0x0001c000… (80 %)
- Writing at 0x00020000… (100 %)
- Wrote 145520 bytes (71984 compressed) at 0x00010000 in 2.3 seconds (effective 504.4 kbit/s)…
- Hash of data verified.
- Leaving…
- Hard resetting via RTS pin…
- Done
If everything goes well, the “hello_world” application starts running after
you remove the jumper on IO0 and GND, and re-power up the testing board.
2.4.6 Monitor
To check if “hello_world” is indeed running, type ‘idf.py -p PORT monitor‘ (Do
not forget to replace PORT with your serial port name).
This command launches the IDF Monitor application:
- $ idf.py -p /dev/ttyUSB0 monitor
- Running idf_monitor in directory […]/esp/hello_world/build
- Executing ”python […]/esp-idf/tools/idf_monitor.py -b 115200 […]/esp/hello_world/build /hello-world.elf”…
- — idf_monitor on /dev/ttyUSB0 115200 —
- — Quit: Ctrl+] | Menu: Ctrl+T | Help: Ctrl+T followed by Ctrl+H —
- ets Jun 8 2016 00:22:57
-
- rst:0x1 (POWERON_RESET),boot:0x13 (SPI_FAST_FLASH_BOOT)
- ets Jun 8 2016 00:22:57
- …
After startup and diagnostic logs scroll up, you should see “Hello world!” printed out by the application.
- …
- Hello world!
- Restarting in 10 seconds…
- This is esp32c3 chip with 1 CPU core, WiFi/BLE
- Restarting in 9 seconds…
- Restarting in 8 seconds…
- Restarting in 7 seconds…
To exit IDF monitor use the shortcut Ctrl+].
That’s all what you need to get started with ESP32-C3-WROOM-02U module! Now
you are ready to try some other esp-idf/examples at master · espressif/esp-idf
· GitHubin ESP-IDF, or go right to developing your own applications.
U. S. FCC Statement
The device complies with KDB 996369 D03 OEM Manual v01. Below are integration
instructions for host product manufacturers according to the KDB 996369 D03
OEM Manual v01.
List of Applicable FCC Rules
FCC Part 15 Subpart C 15.247 & 15.209
Specific Operational Use Conditions
The module has WiFi, and BLE functions.
-
Operation Frequency:
– WiFi: 2412 ~ 2462 MHz
– Bluetooth: 2402 ~ 2480 MHz -
Number of Channel:
– WiFi: 12
– Bluetooth: 40 -
Modulation:
– WiFi: DSSS; OFDM
– Bluetooth: GFSK; -
Type: External antenna connector
-
Gain: 1.57 dBi Max
The module can be used for IoT applications with a maximum 1.57 dBi antenna.
The host manufacturer installing this module into their product must ensure
that the final composit product complies with the FCC requirements by a
technical assessment or evaluation to the FCC rules, including the transmitter
operation. The host manufacturer has to be aware not to provide information to
the end user regarding how to install or remove this RF module in the user’s
manual of the end product which integrates this module. The end user manual
shall include all required regulatory information/warning as show in this
manual.
Limited Module Procedures
Not applicable. The module is a single module and complies with the
requirement of FCC Part 15.212.
Trace Antenna Designs
Not applicable. The module has its own antenna, and does not need a host’s
printed board microstrip trace antenna, etc.
RF Exposure Considerations
The module must be installed in the host equipment such that at least 20cm is
maintained between the antenna and users’ body; and if RF exposure statement
or module layout is changed, then the host product manufacturer required to
take responsibility of the module through a change in FCC ID or new
application. The FCC ID of the module cannot be used on the final product. In
these circumstances, the host manufacturer will be responsible for re-
evaluating the end product (including the transmitter) and obtaining
separate FCC authorization.
Antennas
Antenna specification are as follows:
- Type: External antenna connector
- Gain: 1.57 dBi
This device is intended only for host manufacturers under the following conditions:
- The transmitter module may not be co-located with any other transmitter or antenna.
- The module shall be only used with the external antenna(s) that has been originally tested and certified with this module.
- The antenna must be either permanently attached or employ a ‘unique’ antenna coupler.
As long as the conditions above are met, further transmitter test will not be
required. However, the host manufacturer is still responsible for testing
their end-product for any additional compliance requirements required with
this module installed (for example, digital device emissions, PC peripheral
requirements, etc.).
Label and Compliance Information
Host product manufacturers need to provide a physical or e-label stating
“Contains FCC ID: 2AC7Z-ESPC3WROOMU” with their finished product.
Information on test modes and additional testing requirements
-
Operation Frequency:
– WiFi: 2412 ~ 2462 MHz
– Bluetooth: 2402 ~ 2480 MHz -
Number of Channel:
– WiFi: 12
– Bluetooth: 40 -
Modulation:
– WiFi: DSSS; OFDM
– Bluetooth: GFSK;
Host manufacturer must perform test of radiated and conducted emission and spurious emission, etc., according to the actual test modes for a stand-alone modular transmitter in a host, as well as for multiple simultaneously transmitting modules or other transmitters in a host product. Only when all the test results of test modes comply with FCC requirements, then the end product can be sold legally.
Additional testing, Part 15 Subpart B compliant
The modular transmitter is only FCC authorized for FCC Part 15 Subpart C
15.247 & 15.209 and that the host product manufacturer is responsible for
compliance to any other FCC rules that apply to the host not covered by the
modular transmitter grant of certification. If the grantee markets their
product as being Part 15 Subpart B compliant (when it also contains
unintentional-radiator digital circuity), then the grantee shall provide a
notice stating that the final host product still requires Part 15 Subpart B
compliance testing with the modular transmitter installed.
This equipment has been tested and found to comply with the limits for a Class
B digital device, pursuant to Part15 of the FCC Rules. These limits are
designed to provide reasonable protection against harmful interference in a
residential installation. This equipment generates, uses and can radiate radio
frequency energy and, if not installed and used in accordance with the
instructions, may cause harmful interference to radio communications. However,
there is no guarantee that interference will not occur in a particular
installation. If this equipment does cause harmful interference to radio or
television reception, which can be determined by turning the equipment off and
on, the user is encouraged to try to correct the interference by one of the
following measures:
- Reorient or relocate the receiving antenna.
- Increase the separation between the equipment and receiver.
- Connect the equipment into an outlet on a circuit different from that to which the receiver is connected.
- Consult the dealer or an experienced radio/TV technician for help.
This device complies with Part 15 of the FCC Rules. Operation is subject to the following two conditions:
- This device may not cause harmful interference.
- This device must accept any interference received, including interference that may cause undesired operation.
Any changes or modifications not expressly approved by the party responsible
for compliance could void the user’s authority to operate the equipment.
This equipment complies with FCC RF radiation exposure limits set forth for an
uncontrolled environment. This device and its antenna must not be co-located
or operating in conjunction with any other antenna or transmitter.
The antennas used for this transmitter must be installed to provide a
separation distance of at least 20 cm from all persons and must not be co-
located or operating in conjunction with any other antenna or transmitter.
OEM Integration Instructions
This device is intended only for OEM integrators under the following
conditions:
- The transmitter module may not be co-located with any other transmitter or antenna.
- The module shall be only used with the external antenna(s) that has been originally tested and certified with this module.
As long as the conditions above are met, further transmitter test will not be required. However, the OEM integrator is still responsible for testing their end-product for any additional compliance requirements required with this module installed (for example, digital device emissions, PC peripheral requirements, etc.).
Validity of Using the Module Certification
In the event that these conditions cannot be met (for example certain laptop
configurations or co-location with another transmitter), then the FCC
authorization for this module in combination with the host equipment is no
longer considered valid and the FCC ID of the module cannot be used on the
final product. In these circumstances, the OEM integrator will be responsible
for re-evaluating the end product (including the transmitter) and obtaining a
separate FCC authorization.
End Product Labeling
The final end product must be labeled in a visible area with the following:
“Contains Transmitter Module FCC ID: 2AC7Z-ESPC3WROOMU”.
Learning Resources
4.1 MustRead Documents
Please familiarize yourself with the following documents:
-
ESP32-C3 Series Datasheet
This is an introduction to the specifications of the ESP32-C3 hardware, including overview, pin definitions, functional description, peripheral interface, electrical characteristics, etc. -
ESP-IDF Programming Guide
Extensive documentation for the ESP-IDF development framework, ranging from hardware guides to API reference. -
ESP32-C3 Technical Reference Manual
Detailed information on how to use the ESP32-C3 memory and peripherals.
4.2 Important Resources
Here are the important ESP32-C3-related resources.
- ESP32 Forum – Index page
Engineer-to-Engineer (E2E) Community for Espressif products where you can post questions, share knowledge, explore ideas, and help solve problems with fellow engineers.
Revision History
Date | Version | Release notes |
---|---|---|
2023-06-20 | v0.1 | Preliminary release |
Disclaimer and Copyright Notice
Information in this document, including URL references, is subject to change
without notice.
ALL THIRD PARTY’S INFORMATION IN THIS DOCUMENT IS PROVIDED AS IS WITH NO
WARRANTIES TO ITS AUTHENTICITY AND ACCURACY.
NO WARRANTY IS PROVIDED TO THIS DOCUMENT FOR ITS MERCHANTABILITY,
NONINFRINGEMENT, FITNESS FOR ANY PARTICULAR PURPOSE, NOR DOES ANY WARRANTY
OTHERWISE ARISING OUT OF ANY PROPOSAL, SPECIFICATION OR SAMPLE.
All liability, including liability for infringement of any proprietary rights,
relating to use of information in this document is disclaimed. No licenses
express or implied, by estoppel or otherwise, to any intellectual property
rights are granted herein.
The Wi-Fi Alliance Member logo is a trademark of the Wi-Fi Alliance. The
Bluetooth logo is a registered trademark of Bluetooth SIG.
All trade names, trademarks and registered trademarks mentioned in this
document are property of their respective owners, and are hereby acknowledged.
Copyright © 2023 Espressif Systems (Shanghai) Co., Ltd. All rights reserved.
Pre-release v0.1
Espressif Systems
Copyright © 2023
www.espressif.com
Documents / Resources
|
ESPRESSIF ESP32C3WROOM02U Bluetooth Transceiver
Module
[pdf] User Manual
ESPC3WROOMU, 2AC7Z-ESPC3WROOMU, 2AC7ZESPC3WROOMU, ESP32 C3 WROOM 02U Bluetooth
Transceiver Module, Bluetooth Transceiver Module, Transceiver Module
---|---
References
- Wireless SoCs, Software, Cloud and AIoT Solutions | Espressif Systems
- Certificates | Espressif Systems
- Subscribe | Espressif Systems
- Build System - ESP32-S2 - — ESP-IDF Programming Guide latest documentation
- Build System - ESP32-S2 - — ESP-IDF Programming Guide latest documentation
- Get Started - ESP32-S2 - — ESP-IDF Programming Guide latest documentation
- ESP-IDF Versions - ESP32-S2 - — ESP-IDF Programming Guide latest documentation
- GitHub - espressif/esp-idf: Espressif IoT Development Framework. Official development framework for Espressif SoCs.
- esp-idf/examples/get-started/hello_world at c77c4ccf6c43ab09fd89e7c907bf5cf2a3499e3b · espressif/esp-idf · GitHub
- esp-idf/examples at master · espressif/esp-idf · GitHub
- ESP32 Forum - Index page
Read User Manual Online (PDF format)
Read User Manual Online (PDF format) >>