Skip to content

pyaillet/twatch-idf-rs

Repository files navigation

CI MIT/Apache-2.0 licensed

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>

About

twatch rust firmware with std using idf

Topics

Resources

License

Apache-2.0, MIT licenses found

Licenses found

Apache-2.0
LICENSE-APACHE
MIT
LICENSE-MIT

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published