pub struct ConnectionConfig {
pub connection_timeout: Duration,
pub read_timeout: Duration,
pub write_timeout: Duration,
pub discovery_timeout: Duration,
pub validation_timeout: Duration,
}Expand description
Configuration for BLE connection timeouts and behavior.
Use this to customize timeout values for different environments. For example, increase timeouts in challenging RF environments (concrete walls, electromagnetic interference).
§Example
use std::time::Duration;
use aranet_core::device::ConnectionConfig;
// Create a config for challenging RF environments
let config = ConnectionConfig::default()
.connection_timeout(Duration::from_secs(20))
.read_timeout(Duration::from_secs(15));Fields§
§connection_timeout: DurationTimeout for establishing a BLE connection.
read_timeout: DurationTimeout for BLE read operations.
write_timeout: DurationTimeout for BLE write operations.
discovery_timeout: DurationTimeout for service discovery after connection.
validation_timeout: DurationTimeout for connection validation (keepalive) checks.
Implementations§
Source§impl ConnectionConfig
impl ConnectionConfig
Sourcepub fn for_current_platform() -> Self
pub fn for_current_platform() -> Self
Create a config optimized for the current platform.
Sourcepub fn challenging_environment() -> Self
pub fn challenging_environment() -> Self
Create a config for challenging RF environments.
Uses longer timeouts to accommodate signal interference, thick walls, or long distances.
Sourcepub fn fast() -> Self
pub fn fast() -> Self
Create a config for fast, reliable environments.
Uses shorter timeouts for quicker failure detection when devices are nearby with strong signals.
Sourcepub fn connection_timeout(self, timeout: Duration) -> Self
pub fn connection_timeout(self, timeout: Duration) -> Self
Set the connection timeout.
Sourcepub fn read_timeout(self, timeout: Duration) -> Self
pub fn read_timeout(self, timeout: Duration) -> Self
Set the read timeout.
Sourcepub fn write_timeout(self, timeout: Duration) -> Self
pub fn write_timeout(self, timeout: Duration) -> Self
Set the write timeout.
Sourcepub fn discovery_timeout(self, timeout: Duration) -> Self
pub fn discovery_timeout(self, timeout: Duration) -> Self
Set the service discovery timeout.
Sourcepub fn validation_timeout(self, timeout: Duration) -> Self
pub fn validation_timeout(self, timeout: Duration) -> Self
Set the validation timeout.
Trait Implementations§
Source§impl Clone for ConnectionConfig
impl Clone for ConnectionConfig
Source§fn clone(&self) -> ConnectionConfig
fn clone(&self) -> ConnectionConfig
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more