Expand description
§iot-core
Foundation crate for the iot-protocols SDK. Defines the data model
that every protocol implementation in the workspace agrees on:
thing— Eclipse-Ditto-styleThing/Feature/Valuedigital twin.path—PropertyPath, the protocol-agnostic address of a single value.binding—ProtocolBinding/ThingMapping, the bridge that maps aPropertyPathonto a Modbus register, an MQTT topic, a CoAP URI, or an OPC UA NodeId.error— the unifiederror::IotErrorevery public API returns.client— theclient::IotClientasync trait every protocol crate implements alongside its native API.
§Feature flags
| Feature | Adds | Default |
|---|---|---|
std | std::error::Error impls, hashing | ✓ |
alloc | Thing, Vec, dynamic BTreeMap maps | ✓ |
serde | serde::{Serialize,Deserialize} derives | |
validate | JSON-Schema validation of Thing |
With only alloc (no std) every public type continues to work, which is
the configuration MCU targets compile.
Re-exports§
pub use binding::ByteOrder;pub use binding::ContentFormat;pub use binding::DataType;pub use binding::PayloadCodec;pub use binding::ProtocolBinding;pub use binding::Qos;pub use binding::RegisterArea;pub use binding::ThingMapping;pub use client::IotClient;pub use client::PropertySample;pub use error::CodecError;pub use error::IotError;pub use error::IotResult;pub use error::TransportError;pub use path::PropertyPath;pub use thing::DefinitionIdentifier;pub use thing::Feature;pub use thing::FeatureId;pub use thing::PolicyId;pub use thing::PropertyId;pub use thing::Thing;pub use thing::ThingId;pub use value::Value;
Modules§
- binding
- Bridge from the protocol-agnostic
crate::path::PropertyPathto the concrete address used on the wire. - client
- The unified
IotClientasync trait — the entry point of the “thick-unification” layer over MQTT, Modbus, CoAP, and OPC UA. - error
- Unified error type returned across the SDK.
- path
- Protocol-agnostic property addressing.
- thing
- Identifiers and aggregates for the Eclipse-Ditto-style Thing model.
- value
- Self-describing scalar / collection values used by the Thing model.