This library is designed to facilitate communication with devices that implement the Reach Protocol, using a user-defined transport method (e.g. BLE). Currently-supported services are:
- Parameter Repository (discover, read, write, notify)
- Commands (discover, send)
- Command-Line Interface (send, receive)
- Files (discover, download, upload)
- Time (read, write)
- WiFi (discover, connect, disconnect)
Communication with a Reach-enabled device is achieved by creating a new DeviceAccess
object, which provides methods for accessing state, reacting to events, and sending commands to the device.
When creating a DeviceAccess
object, a transport method must be provided that extends the NetworkAccess
abstract class with implementations of the constructor and sendBytes
method, along with calling the received
method when bytes are received.
- 1.4.3
- Bugfix to handling of headers with reported size over 255 bytes.
- 1.4.2
- Removed outdated "read after timestamp" configuration from
readParameters
. - Removed abstract
connect
method fromNetworkAccess
due to lack of utility in varied implementation contexts. - Removed
connect
method fromDeviceAccess
for above-stated reason. - Added optional configuration to
pingString
method for consistency. - Improved TSDoc documentation of
DeviceAccess
andNetworkAccess
.
- Removed outdated "read after timestamp" configuration from
- 1.4.1
- Bugfix to WiFi service
- Bugfix to classic header selection
- 1.4.0
- Implemented request state handling for file transfers, including substantial changes to the
FileTransfer
class. - Updated to Reach Protocol 0.2.3.
- Transitioned to new header format, with use of "classic" headers configurable in DeviceAccess.
- Implemented request state handling for file transfers, including substantial changes to the
- 1.3.1
- Implemented request state handling for all categories except file transfers, including error responses. Core async functions now return upon a complete set of successful responses from the server, rather than upon the initial request being sent.
- Updated structures to Reach Protocol 0.0.21
- Exposed access to timeout in read/write file functions
- Bugfixes to handling of file transfer init response
- Bugfixes to file and command discovery
- 1.3.0
- Added support for parameter notifications and time service
- Updated device info structure and message definitions to Reach Protocol 0.0.12
- 1.2.0
- Initial release with support for:
- Get Device Info
- Ping
- Services:
- Parameter Repository (discover, read, write)
- Commands (discover, send)
- Command-Line Interface
- Files (discover, download, upload)
- Known issue:
DeviceAccess
state not updated upon error reports and other device-reported failures.
- Initial release with support for: