Skip to content

Latest commit

 

History

History
167 lines (123 loc) · 5.26 KB

README.md

File metadata and controls

167 lines (123 loc) · 5.26 KB

Stargazers Forks MIT License


Rusty Feather

About the Project

Rusty Feather is an experiment with Rust on the Adafruit RP2040 Feather and several Feather and StemmaQT boards.

Getting Started

Make sure you have the latest stable version of Rust installed, along with the right target support.

rustup self update
rustup update stable
rustup target add thumbv6m-none-eabi

Other stuff?

#cargo install cargo-hf2
cargo install elf2uf2-rs --locked
cargo install cargo-binutils

Next, clone the project.

git clone https://github.com/jstevej/rusty-feather.git

Build, check size, convert from elf to hf2, load on RP2040.

cargo build --release
cargo size --release
cargo size --release --bin rusty-feather -- -A
elf2uf2-rs target/thumbv6m-none-eabi/release/rusty-feather rusty-feather.uf2
cp rusty-feather.uf2 /Volumes/RPI-RP2

There are probably a lot of options out there for accessing the USB serially, but the simplest is screen. First, take a look at ls /dev/tty.* and figure out which one is the RP2040. Then, run screen /dev/tty.yourRP2040. Use Ctrl-A Ctrl-D to exit screen.

Useful tool: cargo tree and cargo tree -d (show duplicates).

How to update Cargo.toml dependencies?

If starting from scratch note the following:

  • add .cargo/config from here
  • add memory.x to project root from here

(back to top)

Roadmap

  • Red LED
  • Neopixel
  • USB serial
  • CO2 sensor
  • E-Ink display
  • VOC sensor
  • Magnetometers
  • Accelerometers
  • make runner to automate elf2uf2-rs and cp steps, and/or...
  • figure out why cargo hf2 --release doesn't work
  • Buttons
  • Knobs
  • Servo
  • SH1107 Display

(back to top)

License

Distributed under the MIT License. See LICENSE for more information.

(back to top)

Acknowledgments and Resources

(back to top)