Part 1
요약·해설
ESP32-C3의 RISC-V core, WiFi·BLE, USB UART와 TWAI를 Zephyr에서 사용하는 절차를 다룹니다.

ESP32-C3 · 160MHz single core
400KB SRAM · 4MB flash
WiFi · BLE · USB-C · TWAI
Part 2
접을 수 있는 영어 원문 전체
영어 원문 전체 펼치기
F788FDEB354F4DAD5964B29BCF46842C5B66C7B9907737A07D0020FB914B230A
.. _ttgo_t8c3:
Lilygo TTGO T8-C3
#################
Overview
********
Lilygo TTGO T8-C3 is an IoT mini development board based on the
Espressif ESP32-C3 WiFi/Bluetooth dual-mode chip.
It features the following integrated components:
- ESP32-C3 chip (160MHz single core, 400KB SRAM, Wi-Fi)
- on board antenna and IPEX connector
- USB-C connector for power and communication
- JST GH 2-pin battery connector
- LED
.. figure:: ../../../../../../../boards/lilygo/ttgo_t8c3/doc/img/ttgo_t8c3.webp
:align: center
:alt: TTGO T8-C3
Lilygo TTGO T8-C3
Functional Description
**********************
This board is based on the ESP32-C3 with 4MB of flash, WiFi and BLE support. It
has an USB-C port for programming and debugging, integrated battery charging
and an on-board antenna. The fitted U.FL external antenna connector can be
enabled by moving a 0-ohm resistor.
Connections and IOs
===================
The TTGO T8-C3 board configuration supports the following hardware features:
+-----------+------------+------------------+
| Interface | Controller | Driver/Component |
+===========+============+==================+
| PMP | on-chip | arch/riscv |
+-----------+------------+------------------+
| INTMTRX | on-chip | intc_esp32c3 |
+-----------+------------+------------------+
| PINMUX | on-chip | pinctrl_esp32 |
+-----------+------------+------------------+
| USB UART | on-chip | serial_esp32_usb |
+-----------+------------+------------------+
| GPIO | on-chip | gpio_esp32 |
+-----------+------------+------------------+
| UART | on-chip | uart_esp32 |
+-----------+------------+------------------+
| I2C | on-chip | i2c_esp32 |
+-----------+------------+------------------+
| SPI | on-chip | spi_esp32_spim |
+-----------+------------+------------------+
| TWAI | on-chip | can_esp32_twai |
+-----------+------------+------------------+
Start Application Development
*****************************
Before powering up your Lilygo TTGO T8-C3, please make sure that the board is in good
condition with no obvious signs of damage.
System requirements
*******************
Prerequisites
=============
Espressif HAL requires WiFi and Bluetooth binary blobs in order work. Run the command
below to retrieve those files.
.. code-block:: console
west blobs fetch hal_espressif
.. note::
It is recommended running the command above after :file:`west update`.
Building & Flashing
*******************
Simple boot
===========
The board could be loaded using the single binary image, without 2nd stage bootloader.
It is the default option when building the application without additional configuration.
.. note::
Simple boot does not provide any security features nor OTA updates.
MCUboot bootloader
==================
User may choose to use MCUboot bootloader instead. In that case the bootloader
must be build (and flash) at least once.
There are two options to be used when building an application:
1. Sysbuild
2. Manual build
.. note::
User can select the MCUboot bootloader by adding the following line
to the board default configuration file.
.. code:: cfg
CONFIG_BOOTLOADER_MCUBOOT=y
Sysbuild
========
The sysbuild makes possible to build and flash all necessary images needed to
bootstrap the board with the ESP32-C3 SoC.
To build the sample application using sysbuild use the command:
.. zephyr-app-commands::
:tool: west
:app: samples/hello_world
:board: ttgo_t8c3
:goals: build
:west-args: --sysbuild
:compact:
By default, the ESP32-C3 sysbuild creates bootloader (MCUboot) and application
images. But it can be configured to create other kind of images.
Build directory structure created by sysbuild is different from traditional
Zephyr build. Output is structured by the domain subdirectories:
.. code-block::
build/
├── hello_world
│ └── zephyr
│ ├── zephyr.elf
│ └── zephyr.bin
├── mcuboot
│ └── zephyr
│ ├── zephyr.elf
│ └── zephyr.bin
└── domains.yaml
.. note::
With ``--sysbuild`` option the bootloader will be re-build and re-flash
every time the pristine build is used.
For more information about the system build please read the :ref:`sysbuild` documentation.
Manual build
============
During the development cycle, it is intended to build & flash as quickly possible.
For that reason, images can be build one at a time using traditional build.
The instructions following are relevant for both manual build and sysbuild.
The only difference is the structure of the build directory.
.. note::
Remember that bootloader (MCUboot) needs to be flash at least once.
Build and flash applications as usual (see :ref:`build_an_application` and
:ref:`application_run` for more details).
.. zephyr-app-commands::
:zephyr-app: samples/hello_world
:board: ttgo_t8c3
:goals: build
The usual ``flash`` target will work with the ``ttgo_t8c3`` board
configuration. Here is an example for the :ref:`hello_world`
application.
.. zephyr-app-commands::
:zephyr-app: samples/hello_world
:board: ttgo_t8c3
:goals: flash
The default baud rate for the Lilygo TTGO T8-C3 is set to 1500000bps. If experiencing issues when flashing,
try using different values by using ``--esp-baud-rate <BAUD>`` option during
``west flash`` (e.g. ``west flash --esp-baud-rate 115200``).
You can also open the serial monitor using the following command:
.. code-block:: shell
west espressif monitor
After the board has automatically reset and booted, you should see the following
message in the monitor:
.. code-block:: console
***** Booting Zephyr OS vx.x.x-xxx-gxxxxxxxxxxxx *****
Hello World! ttgo_t8c3
Sample applications
===================
The following samples will run out of the box on the TTGO T8-C3 board.
To build the blinky sample:
.. zephyr-app-commands::
:tool: west
:app: samples/basic/blinky
:board: ttgo_t8c3
:goals: build
To build the bluetooth beacon sample:
.. zephyr-app-commands::
:tool: west
:app: samples/bluetooth/beacon
:board: ttgo_t8c3
:goals: build
Related Documents
*****************
.. _`Lilygo TTGO T8-C3 schematic`: https://github.com/Xinyuan-LilyGO/T8-C3/blob/main/Schematic/T8-C3_V1.1.pdf
.. _`Lilygo github repo`: https://github.com/Xinyuan-LilyGo
.. _`Espressif ESP32-C3 datasheet`: https://www.espressif.com/sites/default/files/documentation/esp32-c3_datasheet_en.pdf
.. _`Espressif ESP32-C3 technical reference manual`: https://www.espressif.com/sites/default/files/documentation/esp32-c3_technical_reference_manual_en.pdf
.. _`OpenOCD ESP32`: https://github.com/espressif/openocd-esp32/releases
Part 3
한국어 전문 번역
개요
Lilygo TTGO T8-C3는 Espressif ESP32-C3 WiFi/Bluetooth dual-mode chip 기반 IoT mini development board입니다.
다음 component를 통합합니다.
- ESP32-C3 chip: 160MHz single core, 400KB SRAM, Wi-Fi
- On-board antenna와 IPEX connector
- 전원과 통신용 USB-C connector
- JST GH 2-pin battery connector
- LED

기능 설명
이 board는 4MB flash와 WiFi·BLE를 지원하는 ESP32-C3를 기반으로 합니다. Programming과 debugging용 USB-C port, integrated battery charging과 on-board antenna가 있습니다. 장착된 U.FL external antenna connector는 0-ohm resistor를 옮겨 활성화할 수 있습니다.
Connection과 I/O
TTGO T8-C3 board configuration은 다음 hardware 기능을 지원합니다.
| Interface | Controller | Driver/Component |
|---|---|---|
| PMP | on-chip | arch/riscv |
| INTMTRX | on-chip | intc_esp32c3 |
| PINMUX | on-chip | pinctrl_esp32 |
| USB UART | on-chip | serial_esp32_usb |
| GPIO | on-chip | gpio_esp32 |
| UART | on-chip | uart_esp32 |
| I2C | on-chip | i2c_esp32 |
| SPI | on-chip | spi_esp32_spim |
| TWAI | on-chip | can_esp32_twai |
Application development 시작
Lilygo TTGO T8-C3에 전원을 넣기 전에 board 상태가 양호하고 눈에 띄는 손상이 없는지 확인하십시오.
System requirements
Prerequisites
Espressif HAL이 동작하려면 WiFi와 Bluetooth binary blob이 필요합니다. 다음 명령으로 해당 파일을 가져옵니다.
west blobs fetch hal_espressif
Building과 Flashing
Simple boot
2nd-stage bootloader 없이 single binary image로 board를 load할 수 있습니다. 별도 configuration 없이 application을 build할 때 사용하는 default option입니다.
MCUboot bootloader
대신 MCUboot bootloader를 선택할 수 있습니다. 이 경우 bootloader를 적어도 한 번 build하고 flash해야 합니다.
Application build 방식은 Sysbuild와 Manual build 두 가지입니다. Board default configuration file에 다음 줄을 추가하면 MCUboot를 선택할 수 있습니다.
CONFIG_BOOTLOADER_MCUBOOT=y
Sysbuild
Sysbuild는 ESP32-C3 SoC로 board를 bootstrap하는 데 필요한 모든 image를 함께 build하고 flash할 수 있게 합니다. Sample application은 다음과 같이 build합니다.
west build -b ttgo_t8c3 --sysbuild samples/hello_world기본적으로 ESP32-C3 sysbuild는 bootloader(MCUboot) image와 application image를 만듭니다. 다른 종류의 image를 만들도록 구성할 수도 있습니다.
Sysbuild의 build directory는 전통적인 Zephyr build와 다르며 domain별 subdirectory로 구성됩니다.
build/
├── hello_world
│ └── zephyr
│ ├── zephyr.elf
│ └── zephyr.bin
├── mcuboot
│ └── zephyr
│ ├── zephyr.elf
│ └── zephyr.bin
└── domains.yaml자세한 내용은 Zephyr Sysbuild 문서를 참고하십시오.
Manual build
Development cycle에서는 가능한 한 빨리 build하고 flash해야 하므로 전통적인 build로 image를 한 번에 하나씩 만들 수 있습니다. 아래 지침은 manual build와 sysbuild 모두에 적용되며 차이는 build directory 구조뿐입니다.
일반적인 Zephyr application과 같은 방식으로 build하고 flash합니다.
west build -b ttgo_t8c3 samples/hello_worldttgo_t8c3 board configuration에서는 일반적인 flash target이 동작합니다. hello_world 예는 다음과 같습니다.
west build -b ttgo_t8c3 samples/hello_world
west flashDefault baud rate는 1500000bps입니다. Flashing에 문제가 있으면 west flash에 --esp-baud-rate <BAUD> option을 사용해 다른 값을 시도하십시오. 예: west flash --esp-baud-rate 115200.
다음 명령으로 serial monitor를 열 수 있습니다.
west espressif monitorBoard가 자동으로 reset되고 boot하면 monitor에 다음 message가 표시되어야 합니다.
***** Booting Zephyr OS vx.x.x-xxx-gxxxxxxxxxxxx *****
Hello World! ttgo_t8c3
Sample application
다음 sample은 TTGO T8-C3 board에서 별도 변경 없이 동작합니다. Blinky sample을 build합니다.
west build -b ttgo_t8c3 samples/basic/blinkyBluetooth beacon sample을 build합니다.
west build -b ttgo_t8c3 samples/bluetooth/beacon
관련 문서
Source
출처
영어 원문에는 문단, 문서 지시문, 표, 코드, 코드 심벌, 경로를 그대로 보존했습니다.