Crate oled_notifier

Crate oled_notifier 

Source
Expand description

§HC4 OLED Notifier

This application provides simple statistics for ODROID-HC4 with OLED device.

Real-life render

Currently there are no options and the device used (/dev/i2c-0) and rotation (180 degrees) is hardcoded to match HC4 OLED’s display. The display is refreshed every 2 seconds.

§Building

export CARGO_TARGET_AARCH64_UNKNOWN_LINUX_MUSL_RUSTFLAGS="-Clink-self-contained=yes -Clinker=rust-lld"
export AR_aarch64_unknown_linux_musl=llvm-ar
export CC_aarch64_unknown_linux_musl=clang

cargo build --bin main --release --target aarch64-unknown-linux-musl

§Running

If there are no /dev/i2c-0 device use the kernel module: modprobe i2c-dev.

§Installing

Currently the notifier is available on Arch AUR: https://aur.archlinux.org/packages/oled-notifier-git

Note that the package can be built on amd64 systems but must be run on AArch64 system.

§End-to-end tests

The end-to-end tests render a frame using fake system statistics and check if the image is consistent with the known-good output:

Simulated output

To regenerate end-to-end screenshots run the following command:

EG_SIMULATOR_DUMP=docs/screenshot.png cargo run --features simulator --bin simulate

§See also

Modules§

stats

Structs§

Error

Functions§

draw_frame