OS for a dumbphone
src | ||
.gitignore | ||
Cargo.lock | ||
Cargo.toml | ||
LICENSE | ||
README.md | ||
rustfmt.toml |
Rustphone
(temporary name) (early development)
OS for a dumbphone based on Maduino Zero 4G LTE board.
Install tools
sudo pacman -S arm-none-eabi-gcc
rustup target add thumbv6m-none-eabi
Run simulator
cargo run --features simulator
Build
cargo build --release --target thumbv6m-none-eabi
Pins
- D2
- D3
- D4
- D5 (internally assigned): modem power
- D6 (internally assigned): modem reset
- D7 (internally assigned): flightmode
- D8
- D9
- D10
- D11
- D12
- D13
- A0
- A1 (internally assigned): vbat
- A2 (internally assigned): vsys
- A3
- A4
- A5
- SDA: I2C
- SCL: I2C
Used pins:
- display SPI: 3 pins
- keypad: 6 pins (74HC565+75HC165), maybe 5 if the same clock is used
- display LED: 1 pin
- torch LED: 1 pin
- ESP UART: 2 pins (I2C still possible if not enough pins)
Note: at most 5 outputs of the 74HC565 may be used as GPO.
components
https://www.makerfabs.com/maduino-zero-4g-lte-sim7600.html https://www.waveshare.com/1.54inch-e-Paper-Module.htm1 https://bulkmemorycards.com/shop/microsd-cards/microsd-32gb/sd-32gb-class-10/32gb-microsd-ultra-sandisk-memory-card-2/ Maybe an ESP for WIFI and Bluetooth: https://www.sparkfun.com/products/18034
crates
bitmap-font ? https://lib.rs/crates/at-commands OR https://lib.rs/crates/atat
Apps
- Calculator
- Config
- Contacts
- Journal
- Play audio
- Send call
- Send message
- Show bitmap
Keypad
Optimized to reduce the number of consecutive presses on the same key in French.
ncb1 upz2 tdk3 eow4 lqh5 age6 sfx7 rmj8 ivy9