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.
- ECHONET-Lite controller to find and control ECHONET-Lite nodes.
 - ECHONET-Lite device framework to implement any standard ECHONET-Lite devices.
 - Decoder and Encoder for ECHONET-Lite messaging packet.
 - Standard device database based on Machine Readable Appendix and Manufacturer code List provided by the ECHONET Consortium.
 
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
- Controller
 - Device
 - Examples
 
§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.
 - Property
Enum  - PropertyEnum represents an ECHONET-Lite property enumerated data.
 - Remote
Node  - RemoteNode represents an ECHONET-Lite node discovered by Controller. The remote node has the standard objects and properties defined by the ECHONET CONSORTIUM.
 - Standard
Database  - 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§
- Property
Rule  - PropertyRule represents an ECHONET-Lite property access rule.
 
Traits§
- Request
Handler  - RequestHandler defines a request message handler interface.
 
Type Aliases§
- Manufacture
Code  - ManufactureCode represents a manufacturer code registerd by the ECHONET CONSORTIUM.
 - Object
Code  - ObjectCode represents an ECHONET-Lite object code.
 - Request
Handler Object  - RequestHandlerObject represents a request message handler object.