Skip to main content

Crate nesso

Crate nesso 

Source
Expand description

Public Rust facade crate for the Arduino Nesso N1.

nesso is the crate applications should normally depend on. It owns the Nesso N1 board bring-up path and exposes lower-level hardware modules for advanced use.

§Example

#![no_std]
#![no_main]

use embedded_graphics::{pixelcolor::Rgb565, prelude::RgbColor};
use embedded_hal::delay::DelayNs;
use esp_hal::{clock::CpuClock, delay::Delay, main};
use nesso::Nesso;

#[main]
fn main() -> ! {
    let config = esp_hal::Config::default().with_cpu_clock(CpuClock::max());
    let peripherals = esp_hal::init(config);
    let mut delay = Delay::new();
    let mut nesso = match Nesso::new(peripherals) {
        Ok(nesso) => nesso,
        Err(_) => esp_hal::system::software_reset(),
    };

    if nesso.display.clear(Rgb565::BLACK).is_err()
        || nesso
            .display
            .print_centered("Hello from nesso", 120, Rgb565::WHITE)
            .is_err()
    {
        esp_hal::system::software_reset()
    }

    loop {
        delay.delay_ms(1000);
    }
}

Modules§

audio
Audio support for the Nesso N1 passive buzzer.
bsp
Board constants and board-specific setup helpers. Board support package for the Arduino Nesso N1.
display
Display support for the Nesso N1 ST7789P3 LCD.
imu
IMU support for the Nesso N1 BMI270.
input
Button and input event helpers.
motion
Motion classification helpers built on BMI270 accelerometer samples. Motion and orientation context helpers built from accelerometer samples.
power
Battery, charger, and power-management support.
sprite
Caller-owned RGB565 sprite/framebuffer support.
storage
Settings and key/value storage primitives.
touch
Touch support for the Nesso N1 FT6336U controller.
ui
Small graphics and UI primitives for embedded-graphics draw targets. Lightweight graphics and UI helpers for Nesso display applications.

Structs§

Nesso
Board-owned Nesso N1 SDK.

Enums§

NessoError
SDK-level error type for facade operations.