push2_display

Crates.iopush2_display
lib.rspush2_display
version0.2.0
sourcesrc
created_at2020-12-28 18:49:36.868536
updated_at2022-04-23 08:04:28.778718
descriptionAbleton Push2 Embedded-graphics display driver
homepage
repositoryhttps://github.com/mbracher/push2_display
max_upload_size
id328376
size88,941
Marc Bracher (mbracher)

documentation

README

push2_display

Crate API

This Rust library implements the Embedded-graphics-core DrawTarget trait, making it easy to draw 2D graphics primitives on the Push2 display.

Ableton Push2 is a MIDI instrument with a 960x160 RGB LCD display. Push2 is a USB composite device with a MIDI interface and a generic bulk data interface used to drive the display.

Examples

use embedded_graphics::{
    mono_font::{ascii::FONT_10X20, MonoTextStyle},
    pixelcolor::{PixelColor, Bgr565},
    prelude::*,
    text::Text,
};
use push2_display::Push2Display;

let mut display = Push2Display::new()?;
let text_style = MonoTextStyle::new(&FONT_10X20, Bgr565::WHITE);

Text::new("Hello!", Point::new(400, 70), &text_style)
    .draw(&mut display)?;

display.flush()?;
git clone https://github.com/mbracher/push2_display
cd push2_display

cargo run --example hello

Photo of hello example on Push2 device

References

Ableton Push Interface

Embedded graphics

Projects using push2_display

  • push2_pong: two player ping pong game on the Ableton Push2 midi controller

  • push2_soundboard: play sounds and loops via pressing buttons on the Ableton Push2 midi controller

License

Licensed under either of

at your option.

Contribution

Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in the work by you, as defined in the Apache-2.0 license, shall be dual licensed as above, without any additional terms or conditions.

Commit count: 27

cargo fmt