twatch-idf-rs
TTGO T-Watch 2020 v1 Rust firmware.
Preview
demo.webm
Description
This project is a Work in Progress of a rust firmware for the T-Watch-v1 from Lilygo.
What's working ?
- Power Management Unit - using my own driver for AXP202
- Power button
- Battery level
- Plugged in status - Not tested
- Deep sleep
- Screen - using mipidsi crate
- Backlight settings
- Touchscreen - using my own driver for FT6x36
- Accelerometer - using my own driver of BMA423
- X/Y/Z axis sensors
- Activity recognition
- Step counter
- I2S Speaker
- WiFi should work, but not used right nown
- BLE - WIP here
- Vibration with the included motor
- Clock - using PCF8563 realtime clock driver
- Time
- Alarms - Not tested
What's included
This project is a tech demo. The firmware comes with 5 tiles demonstrating some features:
- Hello world: only displays text
- Light: adjust brightness of the screen backlight
- Motor: demonstrate the vibrator
- Time: Shows Realtime clock, battery level, accelerometer and swipe gestures
- Sleep: Disable screen and backlight when button is pressed
Credits
Many things from this project are inspired by the rust-esp32-std-demo. Kudos to the people on #esp-rs:matrix.org for their help.
How to use?
Refer to this repo to install the custom Rust ESP toolchain. You should also install cargo espflash to ease the use of this project.
Then you can launch the following command to compile one of the example, flash it to your device and monitor the ESP32 serial:
cargo espflash --monitor --speed 921600 <device>