...
To set up and use remote EnOcean interface with the SmartServer, follow these steps:
- Enable remote mode on your SmartServer as described on this page. Do not use the EnOcean Configuration page to enable remote mode; for this release, remote mode is configured manually as described on this page.
- Optionally add an EnOcean network interface as described on this page.
- Download and modify, or create an EnOcean device interface (XIF) and device type definition as described on this page.
- Define datapoint properties for any datapoints to be monitored or logged as described in Setting Datapoint Properties.
- Define or discover devices as described in Site Provisioning. See the following section on this page for a step-by-step example:
- Optionally, provide a BACnet interface for your EnOcean device; see Setting up the BACnet Server. This enables you to use a BACnet workstation with your EnOcean device.
...
- Open the SmartServer Configuration page as described in Accessing the SmartServer Pi Configuration Page. The Configuration page view that appears depends on your cache data. As needed, click the SmartServer IoT tab. The System tab (top) will appear as the default as shown below.
- Click the EnOcean tab.
- If local EnOcean interface is enabled as shown below, then set the Enabled option to disabled (greyed-out) and click Update.
Open a terminal connection to SmartServer Pi.
Verify that the local EnOcean interface (enocean) and remote EnOcean interface (iotcid) are inactive by entering the following command:
Code Block smartserverctl status enocean iotcid
Code Block title Example result: enocean inactive iotcid inactive
If the interface(s) is active, then stop and disable the interface(s) by entering the following commands:
Code Block sudo smartserverctl stop <enocean> <iotcid> sudo smartserverctl disable <enocean> <iotcid>
Edit the remote mode configuration file by entering the following command, followed by the apollo password:
Code Block sudo nano /var/smartserver/conf.d/iotcid/iotcid.conf
Configure and save the remote interface mqtt and iotc (API) settings as shown in the example below. The mqtt parameters define the connection information and authentication credentials to the MQTT broker of IoTC. The clientid parameter provides a way to identify your specific connection. The iotc parameters define the connection information and authentication credentials to the REST API of IoTC. Depending on your environment, the mqtt and iotc credentials (username and password) may be the same or different.
The iotc settings may need to be added to the file following the mqtt settings, where the x's define the remote server address and login credentials in the example below.
Code Block "iotc":{"address":"xx.xxxxxxx.xxxxx","username":"xxxxxxx","password":"xxxxxxxxxx","insecure":true},
If your IoTC instance is not using security on the MQTT side, then remove the “username” and “password” parameters and from the mqtt settings section in the iotcid.conf file.
If you are updating from SmartServer 4.3 or 4.3 Update 1 to SmartServer 4.4, then change the parameter keep_alive to keepalive.
If you have more than one SmartServer connecting to a given IoTC instance, then specify a unique clientid for each SmartServer. Every client that connects to the same IoTC instance must have a unique clientid.
Start the remote EnOcean interface (iotcid), and enable it so that it will start automatically after reboot, by entering the following commands:
Code Block sudo smartserverctl start iotcid sudo smartserverctl enable iotcid
Verify that the remote EnOcean interface (iotcid) is enabled by entering the following command:
Code Block smartserverctl status iotcid
Code Block title Example result: iotcid active since Fri 2024-04-19 15:50:14 EDT; 6s ago
...