hw-core
A Rust SDK for hardware wallet communication. The first supported device is Trezor Safe 7 over Bluetooth Low Energy (BLE), using the Trezor Host Protocol (THP).
[]
= "0.1.1"
Rust API
hw_core::wallet: shared connection, session, derivation-path, and signing utilities.hw_core::trezor: Trezor THP workflows, requests, credential storage, and the BLE backend.hw_core::transport: BLE discovery, connections, and byte I/O.hw_core::{Chain, ChainConfig, WalletError, WalletErrorKind, WalletResult}: shared types.
Resolve a chain's default derivation path:
use ;
let resolved = resolve?;
assert_eq!;
assert_eq!;
# Ok::
Discover a Trezor Safe 7 from an async Tokio application:
use Duration;
use ;
async
Use wallet::ble::connect_and_bootstrap_session to connect and prepare a THP
session, or trezor::thp::ThpWorkflow to drive pairing and session transitions
with your own UI.
Platforms and status
This is an early-stage SDK. macOS and Linux are the supported CLI hosts; native
Apple and Android apps use the project's separate UniFFI integrations. Linux
builds require libdbus-1-dev and pkg-config. BLE access also requires the host
platform's Bluetooth permissions.
See the project README for supported operations and known limitations, and the contribution guide for build, bindings, and emulator setup.
Licensed under Apache-2.0.