bt-hci

July 15, 2026 ยท View on GitHub

crates.io docs.rs

bt-hci

Rust types for the Bluetooth HCI (Host Controller Interface) specification, and traits for implementing the Controller part of the interface.

See Trouble for an example of using this crate.

bt-hci-transport

Transport trait that can be implemented to easily opt-in into using the bt-hci crate.

bt-hci-serial

Transport implementation for a split serial bus using the HCI UART transport layer protocol.

bt-hci-linux

Transport implementation using the Linux HCI socket interface.

bt-hci-usb

Transport implementation for USB Bluetooth adapters (Core Vol. 4 Part B).

Bluetooth UUIDs

The bluetooth specification includes reference information for pre-defined UUIDs that can be used to communicate specific services, characteristics, properties, etc of a device. These are also made available as constants from this crate through the uuid module for users of this crate.

For crate maintainers, to update these constants run the update_uuids binary, which will redownload the bluetooth-sig yaml spec and rebuild the uuids module based on the latest version.

License

bt-hci is licensed under either of

at your option.

Contribution

Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in the work by you, as defined in the Apache-2.0 license, shall be dual licensed as above, without any additional terms or conditions.