pennant 0.5.0

Reusable LED animation effects for embedded projects
Documentation
  • Coverage
  • 90.91%
    20 out of 22 items documented4 out of 12 items with examples
  • Size
  • Source code size: 36.19 kB This is the summed size of all the files inside the crates.io package for this release.
  • Documentation size: 358.37 kB This is the summed size of all files generated by rustdoc for all configured targets
  • Ø build duration
  • this release: 7s Average build duration of successful builds.
  • all releases: 7s Average build duration of successful builds in releases after 2024-10-23.
  • Links
  • datenkollektiv/rustyfarian-ws2812
    0 0 0
  • crates.io
  • Dependencies
  • Versions
  • Owners
  • fwaibel

pennant

Status-LED traits and effects for embedded Rust — fully no_std.

Provides StatusLed and AsyncStatusLed traits that decouple application code from concrete LED drivers, plus a PulseEffect for smooth pulsing brightness animations and a NoLed zero-size stub.

The hal feature unlocks an additional SimpleLed adapter that maps RGB colours onto plain on/off GPIO pins via embedded-hal 1.0:

pennant = { version = "0.5", features = ["hal"] }

Part of the rustyfarian-ws2812 workspace alongside ferriswheel (ring effects) and bunting (WS2812 colour utilities).

Example

use pennant::{NoLed, StatusLed};
use rgb::RGB8;

let mut led = NoLed::default();
led.set_color(RGB8::new(255, 0, 0)).unwrap(); // always Ok

Documentation

Full API docs at docs.rs/pennant.

License

Dual-licensed under MIT or Apache-2.0.

Changelog

See the workspace CHANGELOG for release notes across all crates.