Communication Drivers#
Each of the available communication drivers is documented within its own entry.
- BLE (Bluetooth Low Energy)
- CSV
- Database
- Factory Automation
- File Raw
- Fuji Nexim
- IPC-CFX
- Keyboard Wedge
- MQTT
- OIB
- OPC DA
- OPC UA
- PanaCIM
- Rest Client
- Rest Server
- Secs/Gem
- Serial
- TCP/IP
Custom communication drivers can also be developed and used. Please refer the Developers Guide for further information.
Available Data Types#
The available data types in the system are listed below:
- Boolean
- String
- Decimal
- Integer
- Long
- Object
- Password
- DateTime
- Culture
Parameters#
All communication drivers share settings with the same format/meaning:
| Name | Type | Possible Values | Default Value | Description |
|---|---|---|---|---|
| setupTimeout | Integer | 10000 | Max time for the setup flow (milliseconds) | |
| heartbeatInterval | Integer | 60000 | Interval to trigger an optional heartbeat to validate communication or any other task (milliseconds) | |
| intervalBeforeReconnect | Integer | 5000 | Time to wait between connection attempt (milliseconds) | |
| connectingTimeout | Integer | 30000 | Max time for the connection to be established (milliseconds) |
Table: Communication driver settings
Communication States#
All communication drivers follow this state model:
Driver/Controller communication#
The communication the Connect IoT components is done using WebSockets. The intention is to allow customization to override one or more components using the programming language of the choice of the customer. The establish communication is described in the following diagram:
sequenceDiagram
activate Monitor
Monitor->>Manager: Request Create Driver
activate Manager
Monitor->>Manager: Request Create Controller
Manager->>Driver: Create Process
activate Driver
Manager->>Controller: Create Process
activate Controller
Driver->>Driver: Create Communication Channel
Driver->>Monitor: Connect with Monitor
Controller->>Monitor: Connect with Monitor
Driver->>Monitor: Notify Communication Channel Details
Monitor->>Controller: Notify Driver Communication Details
Controller->>Controller: Prepare Workflows
Controller->>Driver: Connect with Driver
Controller-->>Driver: Exchange communication Data
Driver-->>Controller: Exchange communication Data
deactivate Driver
deactivate Controller
deactivate Manager
deactivate Monitor