# ESP32-C3_Zen Development Board
_Bare metal ESP32-C3 DevBoard_

The ESP32-C3 ZEN devboard is all about simplicity and transparency. It strips away unnecessary complexity, offering a minimalistic setup that aligns perfectly with the official ESP32-C3 datasheet. This means developers get a bare-bones yet fully functional environment to work with, ensuring direct access to the microcontroller’s core features without extra layers of abstraction. The board’s hardware transparency is a huge plus—it allows users to understand and interact with the ESP32-C3 at a fundamental level, making debugging, customization, and optimization much easier. Whether you're a seasoned developer or just getting started, this streamlined approach keeps things efficient, clear, and true to the chip’s intended design.

<img alt="ESP32-C3 ZEN DevBoard" src="https://github.com/alexandrebobkov/ESP32-C3_Zen/blob/main/img/esp32-c3-wroom-socket.png/" width="75%"/>

### Features:
- transperent design;
- compact size;
- can be powered by USB-C port;
- 3.3V and 5V power supplies;
- GPIOs correspond to the official ESP32-C3 Datasheet;
- on-board ESP32-C3 Module with USB-C port allows to flash a firmware directly from a PC;
- on-board push switch for Flash mode;
- on-board push switch for your needs;

### ESP32-C3 Module:
- single-core
- 32-bit RISC-V MCU @ 160 MHz
- 400 KB of internal RAM
- RSA-3072-based secure boot and the AES-128/256-XTS flash encryption
- low power-mode support
- Rich connectivity for IoT applications: Wi-Fi and Bluetooth 5 (LE) with long-range support
- Bluetooth LE SIG Mesh and Wi-FI Mesh support
- 22 GPIOs

### General Purpose GPIOs

_The table below reconciles wiring of ESP32 module GPIOs with board pins._

| GPIO | Physical Pin | Type | Description |
| --- | --- | --- | --- |
| EN | 1 | I | Enable/Disable the chip (active HIGH). |
| IO4 | 2 | I/O/T | GPIO4, __ADC1_CH4__, FSPIHD, MTMS  |
| IO5 | 3 | I/O/T | GPIO5, __ADC2_CH0__, FSPIWP, MTDI |
| IO6 | 4 | I/O/T | GPIO6, FSPICLK, MTCK |
| IO8 | 5 | I/O/T | GPIO8, __SDA__ |
| IO7 | 6 | I/O/T | GPIO7, FSPDI, MTDO |
| IO10 | 7 | I/O/T | GPIO10, FSPICS0 |
| IO9 | 8 | I/O/T | GPIO9, __SCL__ |
| USB_D+ | 9 | I/O/T | GOIO19, __USB D+__ |
| RxD | 10 |  I/O/T | GPIO20, __U0RxD__ |
| USB_D- | 11 |  I/O/T | GPIO18, __USB D-__ |
| TxD | 12 |  I/O/T | GPIO21, __U0TxD__ |
| IO3 | 13 | I/O/T | GPIO3, __ADC1_CH3__ |
| IO2 | 14 |  I/O/T | GPIO2, __ADC1_CH2__, FSPIQ |
| IO1 | 15 |  I/O/T | GPIO1, __ADC1_CH1__, XTAL_32K_N |
| IO0 | 16 |  I/O/T | GPIO0, __ADC1_CH0__, XTAL_32K_P |

### Reserved GPIOs

_The table below lists strapping and reserved pins._

ESP32-C3 has three strapping pins: GPIO2, GPIO8 and GPIO9. By default, GPIO9 is connected to the internal pull-up resistor. If GPIO9 is not connected or connected to an external high-impedance circuit, the latched bit value will be '1'.

During the chip's system reset, the latches of strapping pins samle re voltage level as strapping bits of '0' or '1', and hold these bits until the chip is powered down. After reset, the strapping pins work as normal-function pins.

| GPIO | Physical Pin | Adapter Pin | Description |
| --- | --- | --- | --- |
| EN | 1 | 2 | ESP32-C3 Enable pin |
| IO9 | 8 | 8 | Strapping pin |
| IO8 | 5 | 7 | Strapping pin |
| IO18 | 11 | 13 | USB D- |
| IO19 | 9 | 14 | USB D+ |

### ESP32-C3 Current Consumption Characteristics

|  Mode  |  Peak (mA)  |
|  ---  |  ---:  |
| RF working |  345mA  |
| Modem sleep; the CPU is powered on @ 160 MHz |  20mA  |
| Light sleep |  130 uA  |
| Deep sleep; RTC timer + RTC memory |  5 uA  |
| Power off |  1 uA  |

## Schematic

[Schematic](https://github.com/alexandrebobkov/ESP32-C3_Zen/blob/main/img/ESP32-C3_ZEN.pdf)
