The HOOC Secure Remote Control (SERC) service works as a universal interface between the HOOC Cloud and Modbus/TCP or KNX devices from remote systems and networks. Thanks to the HOOC fielbus connector, Modbus/TCP and KNX data points from PLC’s, heat pumps, sensors and remote I/O’s can be transmitted in a simple and safe way. Those data points can then be used in the HOOC Cloud as a data source for further services like monitoring and alarming. For accessing fieldbus data, a web API is provided.
The SERC service also includes the following inApp functions (HOOC ClientApp, CompactApp):
The SERC service can be configured in the HOOC ManagementPortal under Services -> Remote Control.

By clicking on the icon, the service IP address can be set. Further can be checked by means of click on the icon to check if the service IP address used is not already in use.
In order to use the fieldbus connector, a service IP adress service must be set up. Therefore, the following points must be taken into account:
For verification, a ping test can be performed on an IP address by clicking on the icon.
The Remote Control provides an isolated MQTT broker for the following purposes:
The following options are available for configuring the MQTT broker:
| Option | Description |
|---|---|
| MQTT Broker username/password | Credentials can be changed using the action. |
| MQTT Broker debug | The MQTT debug mode can be used to analyze data and implement custom encoders and decoders. |
| Status information | Information about connected devices and banned IP addresses if the number of messages received per hour and IP exceeds 720. |
The remote control provides a Modbus server. The status information contains details about connected end devices and banned IP addresses if the number of messages received per hour and IP exceeds 720.
The Secure Remote Control service provides an API for accessing data point point values. For this purpose, use either the HTTP (port 80) or the MQTT (port 1883) protocol.
Please note that the data objects of the two APIs are identical and are available in the REST-API Definition (Swagger). Descriptions of the error codes are given in the table below:
| Errorcodes | Description |
|---|---|
| 0x002001000 | Error while retrieving a data point |
| 0x002001001 | Data point configuration error |
| 0x002001002 | Datapoint value cannot be written |
| 0x002001003 | Datapoint value is being written by another process |
| 0x002001006 | Unable to convert datapoint value |
| 0x002001007 | Unable to convert datapoint value |
| 0x002001102 | Unable to convert datapoint value |
| 0x002001105 | Unable to convert datapoint value |
| 0x002001203 | Communication error to interface / device |
| 0x002001205 | Global communication error |
| 0x002001300 | Data point value not available |
By default, the APIs are accessible in the site network. However, the APIs can also be made accessible externally by the means of the Secure Proxy Service (SEPROX).
The HTTP interface also provides a websocket. The path to the websocket is /v1/dataPoints/values/observer. The definitions
of the data objects can be taken from the REST API definition (Swagger).
In analogy to the REST interface, there is also an MQTT interface for writing and reading data point values. For this purpose, the following MQTT topics (reading/writing data points) are available.
Data point values can be read via MQTT interface and the corresponding topics.
| Topic | Description |
|---|---|
| hfc/dataPoints/byName/+ | Subscribe to the list containing all data point values |
| hfc/dataPoints/byId/+ | Subscribe to the list containing all data point values |
| hfc/dataPoints/byName/NAME | Subscribe to a single value (enter the name of the data point where the placeholder NAME is displayed) |
| hfc/dataPoints/byId/ID | Subscribe to a single value (enter the ID of the data point where the placeholder ID is displayed) |
Data point values can be written via MQTT interface and the corresponding topics.
| Topic | Description |
|---|---|
| hfc/dataPoints/byName/NAME/write | Write data point value (definition payload: See REST API definition (Swagger)) |
| hfc/dataPoints/byId/ID/write | Write data point value (definition payload: See REST API definition (Swagger)) |
In case the writing operation failed, the MQTT interface does not show any error message.