rpi_sim868

Crates.iorpi_sim868
lib.rsrpi_sim868
version0.1.7
sourcesrc
created_at2023-10-14 19:45:04.880533
updated_at2024-01-31 09:40:11.458342
descriptionRPi SIM868 is a crate designed to facilitate interaction with the Waveshare SIM868 HAT for Raspberry Pi.
homepagehttps://github.com/j-kowal/rpi-sim868
repository
max_upload_size
id1003276
size77,454
Jan Kowal (j-kowal)

documentation

https://docs.rs/rpi_sim868

README

RPi SIM868

hat

crates.io License: MIT Minimum rustc version

Documentation

RPi SIM868 is a Rust crate designed to simplify interaction with the Waveshare SIM868 HAT for Raspberry Pi. It utilizes the Tokio runtime for managing asynchronous tasks and includes its own task scheduler based on a priority queue.

Each method call initiates a new task, which is enqueued with a priority to ensure swift execution as soon as the serial port becomes available.

Methods (except for HAT::turn_on) return TaskJoinHandle<T>, where T represents the type resulting from parsing and analyzing the serial output, if applicable. Tasks related to phone calls are treated as first-class citizens with high priority, reducing delays in answering or concluding calls.

RPi SIM868 was conceived following a high-altitude balloon launch where the HAT served as a backup tracking device. The initial software, written in Python, lacked the performance and safety synonymous with Rust.

Tested SIM868 UART selection switch:

  • A - ttyUSBx port
  • B - ttySx port.

Tested devices:

  • RPi 3 Model B
  • RPi 4 Model B
  • RPi Zero W
  • RPi Zero 2 W.
Commit count: 0

cargo fmt