Skip to content

Release history

wfb-link, a userspace WiFiBroadcast radio stack for macOS releases

All releases

3 shown

No immediate action
v0.1.0 New feature

Managed streams + Android USBHost + Signal metadata

No immediate action
v0.1.0-alpha.4 New feature

Combined stream + tunnel backend

v0.1.0-alpha.1 Breaking risk
⚠ Upgrade required
  • macOS 26 users should enable native IOUSBHost transport (`macos_usbhost.enabled = true` or `--macos-usbhost`) – the libusb claim path is not recommended
  • Older Rust API aliases `MacosUserspaceRadio*` are deprecated and will be removed in a future release
Notable features
  • First alpha release of `wfb-radio-service` production‑oriented macOS RTL8812AU userspace radio service
  • Addition of `wfb-radio-diag` for hardware bring‑up and RF/link diagnostics
  • Introduction of `wfb-tun-macos` utun bridge helper for WFB tunnel recovery
Full changelog

wfb-link v0.1.0-alpha.1

First alpha release of wfb-link, a cross-platform WFB link stack and Rust integration facade.

Included

  • wfb-radio-service: production-oriented macOS RTL8812AU userspace radio service.
  • wfb-radio-diag: hardware bring-up and RF/link diagnostics.
  • wfb-tun-macos: macOS utun bridge helper for WFB tunnel recovery.
  • Example production configs and integration docs.
  • Bundled libusb-1.0.0.dylib with binaries relinked to load it from ../lib.

Integration

Rust product binaries should pin this release by tag for now:

wfb-link = { git = "[email protected]:arc-edge/wfb-link.git", tag = "v0.1.0-alpha.1" }

Use the generic UserspaceRadio* API names for direct-radio integrations. The older
MacosUserspaceRadio* names remain as deprecated compatibility aliases.

Current Platform Shape

  • macOS: native userspace USB radio path for RTL8812AU adapters, tested with ALFA AWUS036ACH.
  • macOS 26: use the native IOUSBHost transport (macos_usbhost.enabled = true
    in service configs, or --macos-usbhost in diagnostic/runtime commands). The
    libusb claim path is not recommended on macOS 26.
  • Linux: intended path is native WFB-NG over wfb0 monitor mode with the aircrack/rtl88xxau driver.
  • Android: planned future backend using the same userspace radio contract with Android USB host transport.

Known Limitations

  • This is a pre-release. The Rust API is intended for product integration, but not yet crates.io-stable.
  • macOS binaries are ad-hoc signed, not notarized.
  • RF quality and long-distance acceptance profiles are still being validated.
  • Runtime IQK/LCK work is still evolving; use documented conservative profiles for production-style tests.
  • macOS direct-radio support currently targets RTL8812AU/AWUS036ACH-class adapters.

Verification

Built on macOS 15.7.4 arm64 from commit 82468ed. The packaged binaries target
Apple Silicon macOS and should run on newer macOS releases; macOS 26 hardware
access should use the IOUSBHost backend rather than libusb.

Package smoke-tested on macOS 26.4.1 arm64:

  • archive checksum verified and unpacked
  • packaged binaries launched with --help
  • packaged dylib load paths resolve through @executable_path/../lib
  • ad-hoc code signatures verified
  • read-only USB registry probe ran successfully; no RTL8812AU adapter was
    attached to that host during the package smoke, so macOS 26 hardware claim/init
    validation remains pending for a follow-up hardware-attached run

Checks run:

  • cargo fmt --all -- --check
  • cargo check --workspace --locked
  • cargo build -p wfb-link --examples --locked
  • cargo test --workspace --locked
  • cargo build --release --locked -p wfb-radio-service -p wfb-radio-diag -p wfb-tun
  • packaged binary help smoke for all three release binaries
  • codesign --verify for all packaged binaries and bundled libusb dylib

Beta — feedback welcome: [email protected]