Skip to content

Install the tools

Choose one path. Use the CLI to inspect, Python to automate, or Rust to embed. For the local client/server lab, start with Python; the CLI is optional.

Download the file for the machine that will run the tool. These are v0.11.0 release assets, not an automatic platform recommendation.

Windows ARM64 is not listed in this release. The feature labels reflect the release workflow, not a blanket transport or conformance guarantee.

For Apple silicon, after downloading bacnet-macos-arm64:

Terminal window
chmod +x ./bacnet-macos-arm64
./bacnet-macos-arm64 --version
./bacnet-macos-arm64 --help

On Intel Macs or Linux, substitute the exact filename you downloaded. Do not run a filename intended for another processor architecture.

The guides use bacnet for readability. Rename the executable to bacnet / bacnet.exe and place it on your PATH, or substitute its downloaded filename in commands. On Windows, Get-Command bacnet; on macOS/Linux, command -v bacnet helps identify which executable will run.

With Rust 1.93 or later and the toolchain’s platform prerequisites installed:

Terminal window
git clone --branch v0.11.0 https://github.com/jscott3201/rusty-bacnet.git rusty-bacnet-v0.11
cd rusty-bacnet-v0.11
cargo install --path crates/bacnet-cli --locked
bacnet --version

That basic build does not enable packet capture. To include BACnet/SC without adding packet capture:

Terminal window
cargo install --path crates/bacnet-cli --locked --features sc-tls

pcap is a separate optional Cargo feature and needs native development dependencies when building. Add it only when packet capture is needed.

CONTINUERead a known deviceStart with one authorized device and one property.

A working executable or Python import is the first checkpoint. Network reachability, certificate trust, and serial timing are separate checks. Start locally, then move to a known authorized device.

Guides target v0.11.0. Release assets · Release build matrix · CLI feature flags · Python packaging · Workspace minimum.

Release v0.11.0 ·Current development. Follow the scope named on each page. Pre-1.0 APIs; partial conformance.Support & limitations