https://github.com/cassyopaya/automatic-timer
embedded application to controll 2 GPIO based on an internal timer
https://github.com/cassyopaya/automatic-timer
embedded esp32 espressif rust rust-esp rust-lang
Last synced: about 2 months ago
JSON representation
embedded application to controll 2 GPIO based on an internal timer
- Host: GitHub
- URL: https://github.com/cassyopaya/automatic-timer
- Owner: cassyopaya
- Created: 2024-06-03T19:39:03.000Z (about 2 years ago)
- Default Branch: main
- Last Pushed: 2024-06-04T19:18:35.000Z (about 2 years ago)
- Last Synced: 2025-04-02T16:52:00.050Z (about 1 year ago)
- Topics: embedded, esp32, espressif, rust, rust-esp, rust-lang
- Language: Rust
- Homepage:
- Size: 414 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Automatic timer
Simple embedded application to control GPIO based on an internal timer.
> [Defaults: 10 seconds on, 10 seconds off]
Timeouts can be changed via web.
The device provides an Access point for easy usage.
- GPIO2: Turn on for 500ms, wait for 20seconds
- GPIO3 Wait for 10seconds, turn on for 500ms, wait again for 10seconds
- GPIO42: Turn on for 10seconds, wait for 10seconds
## ☘️ Usage
1. Plugin the device
2. Connect to the Access Point named *ESP32*
3. Enter the access point password: *12345678*
4. Open the website: http://192.168.71.1 in a browser
5. Enter the timeouts you prefer and press save
## ⚙️ Development
### Prerequisites
[IDF Toolchain Setup](https://docs.espressif.com/projects/esp-idf/en/stable/esp32/get-started/linux-macos-setup.html)
Install the matching IDF Version to build the
```shell
mkdir -p ~/esp
cd ~/esp
git clone -b v5.1.3 --recursive https://github.com/espressif/esp-idf.git
```
Run the IDF setup
```shell
cd ~/esp/esp-idf
./install.sh esp32
```
### 🛠️ Build
```shell
cargo build
```
### ⚡ Flash
```shell
espflash flash target//debug/ --flash-size 8mb
```
### 🖥️ Monitor
```shell
espflash monitor
```