Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
104 changes: 55 additions & 49 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,17 +1,19 @@
# Rust ESP Board

Welcome to the Rust ESP Development board project. This repository contains everything you will need to build the board yourself. Manufactured boards will be available soon, at which point a purchase link will replace this text.
Welcome to the Rust ESP Development board project. This repository contains everything you will need to build the board yourself.

## Where to buy

* [ESP32-C3-DevKit-RUST-1](https://www.espressif.com/en/products/devkits)
* [AliExpress Espressif Official Store](https://www.aliexpress.com/item/1005004418342288.html)
* [Mouser Electronics](https://www2.mouser.com/ProductDetail/Espressif-Systems/ESP32-C3-DevKit-RUST-1?qs=4ASt3YYao0WvXOj9TGjU2A%3D%3D)

## Ferrous Systems Training

* [Training: Explore the power of Rust on the new Espressif board](https://ferrous-systems.com/go/trainings/esp32-c3-devkit-rust-1/)
* [Training Book: Explore the power of Rust on the new Espressif board](https://github.com/esp-rs/espressif-trainings)
* [Training Material](https://github.com/esp-rs/espressif-trainings)

## Project Specification
## Project Specification

This board is based on the ESP32-C3, and includes sensors, LEDs, buttons, a battery charger, and USB type-C connector.

Expand Down Expand Up @@ -47,27 +49,27 @@ For the complete description, see the [ESP32-C3 Datasheet](https://www.espressif

This board includes the following peripherals over the I2C bus:

| Peripheral | Part number | Reference | Crate | Address |
|---------------------------|--------------|-----------------------------------------------------------------------------|-------|---------|
| IMU | ICM-42670-P | [Datasheet](https://invensense.tdk.com/download-pdf/icm-42670-p-datasheet/) | [Link](https://crates.io/crates/icm42670) | 0x68 |
| Temperature and Humidity | SHTC3 | [Datasheet](https://www.sensirion.com/en/environmental-sensors/humidity-sensors/digital-humidity-sensor-shtc3-our-new-standard-for-consumer-electronics/) | [Link](https://crates.io/crates/shtcx) | 0x70 |
| Peripheral | Part number | Reference | Crate | Address |
| ------------------------ | ----------- | --------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------- | ------- |
| IMU | ICM-42670-P | [Datasheet](https://invensense.tdk.com/download-pdf/icm-42670-p-datasheet/) | [Link](https://crates.io/crates/icm42670) | 0x68 |
| Temperature and Humidity | SHTC3 | [Datasheet](https://www.sensirion.com/en/environmental-sensors/humidity-sensors/digital-humidity-sensor-shtc3-our-new-standard-for-consumer-electronics/) | [Link](https://crates.io/crates/shtcx) | 0x70 |

#### I2C Bus Connection

| Signal | GPIO |
|------------|-------------|
| SDA | GPIO10 |
| SCL | GPIO8 |
| Signal | GPIO |
| ------ | ------ |
| SDA | GPIO10 |
| SCL | GPIO8 |

### I/Os

The following devices are connected through GPIO:

| I/O Devices | GPIO |
|-------------|--------|
| WS2812 LED | GPIO2 |
| LED | GPIO7 |
| Button/Boot | GPIO9 |
| I/O Devices | GPIO |
| ----------- | ----- |
| WS2812 LED | GPIO2 |
| LED | GPIO7 |
| Button/Boot | GPIO9 |

### Power

Expand All @@ -76,46 +78,46 @@ The following devices are connected through GPIO:

### Pin Layout

![Pin Layout](assets/rust_board_v1_pin-layout.png)
![Pin Layout](assets/rust_board_v1.2_pin_layout.png)


#### Left Side

| Pin Number | Description | SoC |
|------------|----------------|------------|
| 1 | Reset | EN/CHIP_PU |
| 2 | 3V3 | |
| 3 | N/C | |
| 4 | GND | |
| 5 | IO0/ADC1-0 | GPIO0 |
| 6 | IO1/ADC1-1 | GPIO1 |
| 7 | IO2/ADC1-2 | GPIO2 |
| 8 | IO3/ADC1-3 | GPIO3 |
| 9 | IO4/ADC2-0 | GPIO4 |
| 10 | IO5/ADC2-1 | GPIO5 |
| 11 | IO6/MTCK | GPIO6 |
| 12 | IO7/MTDO/LED | GPIO7 |
| 13 | IO9/LOG | GPIO8 |
| 14 | IO21/U0RXD | GPIO21 |
| 15 | IO20/U0TXD | GPIO20 |
| 16 | IO9/BOOT | GPIO9 |
| Pin Number | Description | SoC |
| ---------- | ------------ | ---------- |
| 1 | Reset | EN/CHIP_PU |
| 2 | 3V3 | |
| 3 | N/C | |
| 4 | GND | |
| 5 | IO0/ADC1-0 | GPIO0 |
| 6 | IO1/ADC1-1 | GPIO1 |
| 7 | IO2/ADC1-2 | GPIO2 |
| 8 | IO3/ADC1-3 | GPIO3 |
| 9 | IO4/ADC2-0 | GPIO4 |
| 10 | IO5/ADC2-1 | GPIO5 |
| 11 | IO6/MTCK | GPIO6 |
| 12 | IO7/MTDO/LED | GPIO7 |
| 13 | IO9/LOG | GPIO8 |
| 14 | IO21/U0RXD | GPIO21 |
| 15 | IO20/U0TXD | GPIO20 |
| 16 | IO9/BOOT | GPIO9 |

#### Right Side

| Pin Number | Description | SoC |
|------------|----------------|---------|
| 1 | VBAT | |
| 2 | EN [1] | |
| 3 | VBUS [2] | |
| 4 | NC | |
| 5 | NC | |
| 6 | NC | |
| 7 | NC | |
| 8 | NC | |
| 9 | IO18/USB_D- | GPIO18 |
| 10 | IO19/USB_D+ | GPIO19 |
| 11 | IO8/SCL | GPIO8 |
| 12 | IO10/SDA | GPIO10 |
| Pin Number | Description | SoC |
| ---------- | ----------- | ------ |
| 1 | VBAT | |
| 2 | EN [1] | |
| 3 | VBUS [2] | |
| 4 | NC | |
| 5 | NC | |
| 6 | NC | |
| 7 | NC | |
| 8 | NC | |
| 9 | IO18/USB_D- | GPIO18 |
| 10 | IO19/USB_D+ | GPIO19 |
| 11 | IO8/SCL | GPIO8 |
| 12 | IO10/SDA | GPIO10 |

* [1] Connected to LDO enable pin*
* [2] Connected to USB 5V*
Expand All @@ -137,3 +139,7 @@ Bottom
## Bill of Material

[Interactive BOM](https://esp-rs.github.io/esp-rust-board/)

## Case

[Case 3D Printing Model](https://www.printables.com/model/288200-minimalistic-case-for-esp32-c3-devkit-rust-1)
Binary file added assets/rust_board_v1.2_pin_layout.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.