39 lines
1.1 KiB
Markdown
39 lines
1.1 KiB
Markdown
# RustyToken (I'm open to new names)
|
|
|
|
IT's a **TOY** utility to make a TOTP keychain.
|
|
This it's a **TOY**, Please don't keep your top priority keys here.
|
|
I disclaim any responsability for anything that may happen to your TOTP keys.
|
|
|
|
## Hardware
|
|
To make your own RustyToken you'll need:
|
|
- 1 Arduino (UNO/Nano)
|
|
- 1 RTC DS3231
|
|
- 1 Screen STN LCD 16x2 without i2c interface
|
|
- 2 push buttons
|
|
- 1 220 ohms
|
|
- A lot of wire
|
|
|
|
## Software
|
|
To build the firmware for your Arduino you'll need:
|
|
- A linux machine (I don't know if this compile on another OS)
|
|
- All the rust env tools (rustc, cargo, rustup)
|
|
- The Rust's nightly version
|
|
- all the AVR env build tools (avr-gcc, avr-binutils, avr-libc, avrdude)
|
|
- Python3 to use the tool
|
|
|
|
## How to build and load the firmware
|
|
To build the firmware you execute:
|
|
```Bash
|
|
$ ./build.sh
|
|
```
|
|
|
|
And to upload it to the Arduino, connect it to the computer and execute:
|
|
```Bash
|
|
$ ./upload.sh
|
|
```
|
|
|
|
IF this step fails, edit the `upload.sh` script and change the `/dev/ttyUSB0` to the Serial port assiged to your Arduino (You can check this path with the Arduino IDE)
|
|
|
|
## Diagram
|
|
![Diagrama de RustyToken](imgs/diagram.png)
|