3 releases

0.1.2 Aug 13, 2024
0.1.1 Aug 13, 2024
0.1.0 Aug 10, 2024

#1764 in Parser implementations

44 downloads per month

MIT license

6KB
69 lines

IBUS Parser

A basic parser for the IBUS (Intelligent Bus) RC protocol, written in Rust. Ideal for decoding channel data in radio-controlled systems and other applications using the IBUS protocol.

Features

  • Simple API: Straightforward functions for parsing IBUS packets.
  • Error Handling: Basic checksum verification to detect corrupted data.
  • Lightweight: Minimal dependencies and a small footprint.

Installation

Add parse_rc_ibus to your Cargo.toml:

[dependencies]
parse_rc_ibus = "0.1"

Then, in your Rust code:

use parse_rc_ibus::IbusPacket;

Usage

Parsing an IBUS Packet

To parse an IBUS packet, pass the byte array to IbusPacket::try_from_bytes(). This will return the parsed packet or an error if the data is invalid.

let buffer [u8; 32] = // ...
let packet = IbusPacket::try_from_bytes(&buffer)

License

MIT License. See LISCENSE for more details.


lib.rs:

parse_rc_ibus

A crate meant to make parsing FlySky IBUS packets easy.

FlySky IBUS is a serial communications protocol that contains 14 channels of data and a checksum. Many of their receivers output this protocol.

No runtime deps