umsh_bsp_t1000e/
lib.rs

1#![no_std]
2
3//! Board support for the Seeed Studio SenseCAP T1000-E tracker.
4//!
5//! Composes [`umsh-bsp-nrf52840`](../umsh_bsp_nrf52840/index.html) with the
6//! T1000-E's pinout and on-board peripherals — LR1110 LoRa, AG3335 GNSS,
7//! QMA6100P accelerometer, buzzer, LED, button, battery ADC, switched
8//! power rails — and exposes a `Board::init()` entry point that returns a
9//! struct implementing `umsh::Platform` and the board-capability traits.
10//!
11//! See `docs/hardware/t1000e-hardware.md` for the firmware-derived hardware reference.
12
13pub use umsh_bsp_nrf52840::panic_persist;
14
15#[cfg(target_os = "none")]
16pub mod buzzer;
17
18#[cfg(target_os = "none")]
19pub mod gnss;
20
21#[cfg(target_os = "none")]
22pub mod indicator;
23
24pub mod light;
25
26#[cfg(target_os = "none")]
27pub mod platform;
28
29#[cfg(target_os = "none")]
30pub mod power;
31
32#[cfg(target_os = "none")]
33pub mod preferences;
34
35#[cfg(target_os = "none")]
36pub mod radio;
37
38#[cfg(target_os = "none")]
39pub mod shutdown;
40
41#[cfg(target_os = "none")]
42pub use buzzer::{BUZZER_SIGNAL, BUZZER_SILENCE_SET};
43#[cfg(target_os = "none")]
44pub use platform::{T1000EMac, T1000EPlatform};
45#[cfg(target_os = "none")]
46pub use power::{
47    BATTERY_ANNOUNCE, BATTERY_STATE_CHANGED, PowerSignaler, SHUTDOWN_SIGNAL, battery_state,
48};
49#[cfg(target_os = "none")]
50pub use radio::RF_SWITCH;
51
52// TODO: implement.
53//
54// Planned modules:
55//   pub mod pins;          // typed pin handles per t1000e-hardware.md.
56//   pub mod board;          // `Board::init()` + the composed Platform impl.
57//   pub mod rails;          // SwitchedRails (sensor/accel/buzzer enables).
58//   pub mod radio;          // LR1110 wiring (SPI + IRQ + BUSY + RESET).
59//   pub mod accel;          // QMA6100P over I2C.
60//   pub mod inputs;          // Button (P0.06, active-high, DETECT-aware).
61//   pub mod indicators;      // LED (P0.24), buzzer (P0.25 + EN P1.05).
62//   pub mod battery;          // Battery ADC + charger-state pins.