hive_btle/platform/linux/mod.rs
1// Copyright (c) 2025-2026 (r)evolve - Revolve Team LLC
2// SPDX-License-Identifier: Apache-2.0
3//
4// Licensed under the Apache License, Version 2.0 (the "License");
5// you may not use this file except in compliance with the License.
6// You may obtain a copy of the License at
7//
8// http://www.apache.org/licenses/LICENSE-2.0
9//
10// Unless required by applicable law or agreed to in writing, software
11// distributed under the License is distributed on an "AS IS" BASIS,
12// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13// See the License for the specific language governing permissions and
14// limitations under the License.
15
16//! Linux/BlueZ platform implementation
17//!
18//! This module provides the BLE adapter implementation for Linux using
19//! the `bluer` crate (BlueZ D-Bus bindings).
20//!
21//! ## Requirements
22//!
23//! - Linux with BlueZ 5.48+
24//! - D-Bus system bus access
25//! - Bluetooth adapter (built-in, USB dongle, etc.)
26//!
27//! ## Usage
28//!
29//! ```ignore
30//! use hive_btle::platform::linux::BluerAdapter;
31//! use hive_btle::{BleConfig, NodeId};
32//!
33//! let config = BleConfig::new(NodeId::new(0x12345678));
34//! let mut adapter = BluerAdapter::new().await?;
35//! adapter.init(&config).await?;
36//! adapter.start().await?;
37//! ```
38
39mod adapter;
40mod connection;
41
42pub use adapter::BluerAdapter;
43pub use connection::BluerConnection;