(Translated by https://www.hiragana.jp/)
GitHub - cgm616/punda: A library and runtime for programming the BBC micro:bit with Rust!
Skip to content
/ punda Public

A library and runtime for programming the BBC micro:bit with Rust!

License

Notifications You must be signed in to change notification settings

cgm616/punda

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

43 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

punda: programming the micro:bit with Rust

Travis License

Punda provides a high level, easy to use interface for interacting with the BBC micro:bit, a small, handheld micro-controller designed for teaching and learning computer science, using the Rust Programming Language.

The intention of punda is to complement the other development environments already available for the micro:bit: the Javascript Blocks editor and MicroPython. Specifically, punda brings Rust's static typing, ergonomics, and functional constructs to the table. In addition to being useful for teaching programming to those unfamiliar, punda is also a good way to learn Rust: two equivalent micro:bit programs can be compared across Javascript, Blocks, Python, and Rust to highlight the similarities and differences between each.

For examples of using the punda crate, check the examples/ directory in this repository. With the correct development environment set up, any example can be run on the micro:bit with cargo run --example [name].

Under construction

Note that this crate's documentation, API, and entire design is still up for determination. As a hobby project, I don't have as much time to work on it as I wish I could.

Development dependencies

To develop applications using this library, the following tools must be installed:

  • rustup, Rust's toolchain manager
  • gdb-arm-none-eabi, a build of gdb compatible with the micro:bit
  • OpenOCD, a program to communicate with and flash the micro:bit

When the above tools are installed, perform the following setup to start a new binary crate (application) using easy_microbit.

First, install the nightly Rust toolchain.

> rustup install nightly-2018-09-27

Next, install the thumbv6m-none-eabi Rust target.

> rustup target add thumbv6m-none-eabi

Create a new Rust crate.

> cargo new --bin microbit_example

About

A library and runtime for programming the BBC micro:bit with Rust!

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published