#serial-port #serial-communication #serial #multi-threading #communication #async


Asynchronous, multithreaded serial port communication library using mpsc::cjhannels or async-channels for efficient data handling

7 releases

0.0.7 Mar 23, 2024
0.0.6 Mar 20, 2024

#386 in Asynchronous

Download history 224/week @ 2024-03-11 392/week @ 2024-03-18 38/week @ 2024-04-01

315 downloads per month

MIT license

1.5K SLoC

Serial Async Multithread Library

serial-thread is a Rust library designed to facilitate serial port communication in a multithreaded environment. It leverages asynchronous/mpsc channels for efficient handling of serial data, suitable for applications that require concurrent processing of serial port input/output.

This lib is in early development stage, API not yet clearly defined and breaking changes will happen in upcoming releases.


  • Asynchronous Communication: Utilizes std::sync::mpsc::chanels or async-channels (feature flag) for non-blocking serial port communication.
  • Multithreaded Support: Designed to work efficiently in a multithreaded context.
  • Custom Serial Configurations: Supports various configurations such as baud rate, character size, and flow control.
  • Error Handling: Comprehensive error handling for robust application development.


Add this to your Cargo.toml:

serial-thread = "0.0.7"


cargo add serial_thread


A usage example can be found in /src/example


~123K SLoC