This repository contains protocol definitions for interacting with the Blueye underwater drones.
Drones running a Blunux version < 3.0 will need to use the legacy protocol. blueye.legacyprotocol contains a Python package that is built on this protocol and simplifies its use.
Version 3 of the Blueye communication protocol is based on Protocol Buffers.
The protobuf definitions are compiled to language specific libraries, and are available as a NuGet package, Python package and a npm package; a Rust crate is available as a git dependency (see below).
Automatically generated documentation for the protocol format can be found here.
The rust/ directory contains the blueye-protocol crate. Code is generated at build time from protobuf_definitions/*.proto using prost and protox — no protoc installation required.
cargo build --manifest-path rust/Cargo.toml
cargo test --manifest-path rust/Cargo.tomlUse it from another project as a git dependency:
[dependencies]
blueye-protocol = { git = "https://github.com/BluEye-Robotics/ProtocolDefinitions" }make
make install PREFIX=/usr/local
make uninstall PREFIX=/usr/local