Skip to content

Commit

Permalink
added README details.
Browse files Browse the repository at this point in the history
  • Loading branch information
jpoisso committed Aug 13, 2024
1 parent 03fba51 commit 5eab84e
Show file tree
Hide file tree
Showing 2 changed files with 56 additions and 20 deletions.
68 changes: 56 additions & 12 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,13 +1,57 @@
# ESP32-S3 Motor Controller
# ESP32-S3 Wifi Boat Controller

## Dependencies
*This is a work in progress.*

If you don't have `Python 3.X` installed, you will need it to build certain dependencies.
## Project Overview

You will also need this driver for Windows 11 https://www.silabs.com/documents/public/software/CP210x_VCP_Windows.zip
I want to build a fully functionning wifi-controlled 3D printed air boat from scratch.

We'll use `espflash` to push our binaries to the ESP32.
The boat contains an `ESP32-S3` board which is used to control the boat's motor and rudder using HTTP requests.

You can send `POST` requests to the `/boat` endpoint to update the boat instructions.

```http
### Send boat instruction
POST http://192.168.4.64/boat
Content-Type: application/json
{
"motor_speed": 255,
"servo_angle": 90
}
```

The board runs a web server that can be accessed as long as you're on the same WiFi network.

I may investigate using AP mode or bluetooth connectivity to make it easier to share wifi network details eventually but at the moment, you have to set `WIFI_SSID` and `WIFI_PASSWORD` environment variables at build time.

## Bill of materials

In Progress.

## Printing the boat

In Progress.

## Assembling the electronics

In Progress.



## Flashing the firmware

### Build dependencies

You will need:

- `Rust` version 1.80 or latest
- `Python` version 3.X with pip and venv (to build esp tooling)

If building on Windows 11, you will probably need to download this driver: https://www.silabs.com/documents/public/software/CP210x_VCP_Windows.zip

We'll use `espflash` to push our binaries to the ESP32-S3 board.

```shell
cargo install cargo-generate
Expand All @@ -18,25 +62,25 @@ cargo install cargo-binstall
cargo binstall cargo-espflash
```

## Setup

We'll use `espup` to setup the proper toolchains for the ESP32.

Run `espup` and follow the prompts.
We'll use `espup` to setup the proper toolchains for the ESP32-S3 board.

```shell
espup install
```

## Running on hardware
### Flash the binary

Connect your `ESP32-S3` device using the `UART` port to your PC.

```shell
cargo espflash flash --monitor
```

## Precomit checks
## Contributing

Feel free to submit a pull request!

Run these commands to ensure it will pass Github actions.

```shell
cargo clippy --all-targets --all-features --workspace
Expand Down
8 changes: 0 additions & 8 deletions test.http

This file was deleted.

0 comments on commit 5eab84e

Please sign in to comment.