Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/Kezii/Rust-M5Stack-Cardputer
Rust firmware hal and examples for M5Stack Cardputer
https://github.com/Kezii/Rust-M5Stack-Cardputer
Last synced: 5 days ago
JSON representation
Rust firmware hal and examples for M5Stack Cardputer
- Host: GitHub
- URL: https://github.com/Kezii/Rust-M5Stack-Cardputer
- Owner: Kezii
- License: gpl-3.0
- Created: 2024-03-04T16:53:34.000Z (8 months ago)
- Default Branch: master
- Last Pushed: 2024-03-27T11:39:29.000Z (8 months ago)
- Last Synced: 2024-08-02T20:44:23.435Z (3 months ago)
- Language: Rust
- Size: 2.87 MB
- Stars: 28
- Watchers: 1
- Forks: 3
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
- awesome-esp-rust - M5Stack-Cardputer - Rust support for the Cardputer, including an interactive 3d graphics demo (Projects / `std`)
README
### Implemented drivers
- [x] display
- [x] keyboard
- [x] speaker (needs testing, #2)
- [ ] sd card
- [ ] battery
- [ ] microphone
- [ ] rgb led### Utilities
- [x] double buffering
- [x] keyboard input events (typing, shift/fn etc)
- [ ] sd card filesystem ?
- [ ] app loader ?# Getting started
First, install cargo or rustup using your (Linux) package manager, or from the official website
https://doc.rust-lang.org/cargo/getting-started/installation.html
Then, install the toolchain for esp32, following their official book
https://esp-rs.github.io/book/installation/riscv-and-xtensa.html
# Examples
## 3d graphics demo
https://github.com/Kezii/Rust-M5Stack-Cardputer/assets/3357750/658bd303-03c5-4dc2-9c49-75a98b667719Interactive 3d graphics demo based on [embedded-gfx](https://github.com/Kezii/embedded-gfx)
Use (orange) arrow keys to move, EASD to look around
```
cargo run --release --bin graphics
```## Terminal emulator with rink-core
![terminal](https://github.com/Kezii/Rust-M5Stack-Cardputer/assets/3357750/90585aa0-dfcb-4bc8-bd9d-3e5204a807f0)
Terminal emulator with rink-core built-in, with a reduced set of (gnu) units so it fits on the ram
You can use it as a simple units-aware calculator
```
cargo run --release --bin rink
```## ESP-NOW remote keyboard
Sends key events over ESP-NOW, using the Cardputer as a remote keyboard
An ESP-NOW receiver with a wifi access point is required
```
cargo run --release --bin espnow_remote
```# Credits
Upstream display driverhttps://github.com/almindor/st7789