Crate echonet

Source
Expand description

§echonet (uecho-rs)

The uecho-rs is a portable and cross-platform development framework for creating controller applications and devices of ECHONET-Lite for Rust developers. ECHONET-Lite is an open standard specification for IoT devices in Japan, it specifies more than 100 IoT devices such as crime prevention sensors, air conditioners and refrigerators.

§What is uEcho ?

To implement IoT controllers or devices of ECHONET-Lite, the developer had to understand and implement the communication middleware specification such as the message format and base sequences.

The uecho-rs provides the following major components to control ECHONET-Lite devices and create the standard specification devices.

The uecho-rs handles all ECHONET-Lite requests such as read, write and notification requests automatically. Therefore, Rust developers can implement the standard device and controller applications using the uecho-rs easily by simply implementing the request message validators.

§Getting Started

The examples are available for ECHONET-Lite controller and device implementations using the uecho-rs, check out the examples folder in GitHub.

§Table of Contents

§Getting Help

§License

This project is licensed under the Apache-2.0 License.

Modules§

log
Logger function module.
protocol
messaging packet encoder and decoder module.
transport
Messaging transport manager module (Internal).
util
Utility function module.

Structs§

Controller
Controller represents an ECHONET-Lite controller node to communicate other ECHONET-Lite nodes.
Device
Device represents an ECHONET-Lite device node. The device is created with a standard device object code, and the object is automatically added the standard properties which are specified in APPENDIX Detailed Requirements for ECHONET Device Objects by the ECHONET Consortium.
Manufacture
Manufacture represents a manufacturer name and code registerd by the ECHONET CONSORTIUM.
Node
Node represents an ECHONET-Lite node which contains ECHONET-Lite objects such the profiles and the devices.
Object
Each ECHONET-Lite node has objects. Object represents an ECHONET-Lite Object in an ECHONET-Lite node.
Property
Each ECHONET-Lite object has properties. Property represents an ECHONET-Lite property in an ECHONET-Lite object.
PropertyEnum
PropertyEnum represents an ECHONET-Lite property enumerated data.
RemoteNode
RemoteNode represents an ECHONET-Lite node discovered by Controller. The remote node has the standard objects and properties defined by the ECHONET CONSORTIUM.
StandardDatabase
StandardDatabase provides a standard database for ECHONET-Lite device objects and manufactures. This standard database was generated by importing Machine Readable Appendix and Manufacturer code List provided by the ECHONET Consortium.

Enums§

PropertyRule
PropertyRule represents an ECHONET-Lite property access rule.

Traits§

RequestHandler
RequestHandler defines a request message handler interface.

Type Aliases§

ManufactureCode
ManufactureCode represents a manufacturer code registerd by the ECHONET CONSORTIUM.
ObjectCode
ObjectCode represents an ECHONET-Lite object code.
RequestHandlerObject
RequestHandlerObject represents a request message handler object.