Minimal Rust Crates for Blinking LEDs
Switch branches/tags
Nothing to show
Clone or download
Latest commit 50865f7 Aug 27, 2017

README.md

Bobbin Blinky

This repository contains a set of minimal Rust crates to blink LEDs on popular development boards.

These crates have no dependencies, and use hard-coded constants for register addresses. They are also compiled with opt-level="s" to simplify the compiled code and to eliminate the dependency on compiler_builtins.

Bobbin CLI

See Bobbin CLI for a Rust-based command line utility for building and deploying these applications.

Build and Deploy

In most cases, once you have Bobbin CLI and the required prerequisites for your board installed, you should be able to cd into the directory for your board and bobbin load to build and load the binary.

$ bobbin load
   Compiling nucleo-f429zi v0.1.0 (file:///home/bobbin/bobbin-blinky/nucleo-f429zi)
    Finished dev [optimized + debuginfo] target(s) in 0.12 secs
   text	   data	    bss	    dec	    hex	filename
    148	      0	      4	    152	     98	target/thumbv7em-none-eabihf/debug/nucleo-f429zi
     Loading target/thumbv7em-none-eabihf/debug/nucleo-f429zi
    Complete Successfully flashed device
      Loader Load Complete
$

In some cases, you may need to use bobbin run to start your application after loading it.

Troubleshooting

If you get errors or the board simply doesn't blink, here's a good list of things to check:

  • Make sure you have the most recent version of Bobbin CLI by running cargo install bobbin-cli --force.
  • Run bobbin check to see the versions of the prerequisites that Bobbin CLI can find. You may need to install newer versions of these prerequisites.
  • The next most likely cause is the firmware for the on-board debugger if your board has one. You may wish to review Bobbin CLI - Development Board Firmware for an overview of the situation and links to updated versions.