Skip to content

Drivers

IoT DC3 ships 36 protocol drivers covering industrial buses, PLC/SCADA, IoT, databases, and virtual testing. Each driver is a standalone service (dc3-driver-*) that registers itself and the config attributes it accepts with the manager on startup, then reads points and writes via commands.

For the general onboarding flow see Device Onboarding; for the driver model see the Driver concept. Pick your protocol by category below:

The protocol adaptation layer

The device world speaks heterogeneous, siloed protocols: Modbus master/slave, the OPC UA address space, MQTT pub/sub, vendor-specific PLC frames, SQL result sets — with no shared addressing and no shared wire format. The 28 drivers each act as a sensing-data convergence point at the network layer (see Wen Zhe & Fan Yabin, Research and Application of Four-Network Convergence Technology Based on the Internet of Things, Jilin People's Publishing House, 2016, ch. 1 §3, p13), folding reads and writes across those protocols into unified point values — the "unified data modeling and communication-channel management" of the application layer in the three-tier IoT architecture (ibid., p13). Upper-layer applications consume normalized points only and never see the protocol differences underneath.

Industrial Bus / PLC / SCADA

DriverProtocolNotes
Modbus TCPModbus TCPEthernet Modbus master
Modbus RTUModbus RTUSerial Modbus master
OPC UAOPC UAOPC Unified Architecture client
OPC DAOPC DAClassic OPC Data Access
S7Siemens S7Siemens PLC
MELSECMitsubishi MELSECMitsubishi PLC
FINSOmron FINSOmron PLC
EtherNet/IPEtherNet/IP (CIP)Rockwell / CIP
BACnet/IPBACnet/IPBuilding automation
IEC 104IEC 60870-5-104Power SCADA
DLMSDLMS / COSEMSmart meters
SL651SL651Hydrology monitoring
SNMPSNMPNetwork device monitoring
DL/T645DL/T645-2007Electricity meter protocol
DNP3DNP3 (IEEE 1815)Utility automation
IEC 61850IEC 61850 (MMS)Substation automation
KNXKNXBuilding automation bus
M-BusM-Bus (EN 13757)Metering bus

IoT / Wireless

DriverProtocolNotes
MQTTMQTTIoT message bus
CoAPCoAPRESTful for constrained devices
LwM2MLwM2MLightweight device management
HTTPHTTPGeneric HTTP polling
BLEBluetooth LELow-energy Bluetooth
ZigbeeZigbeeShort-range wireless
CANCANController Area Network
LoRaWANLoRaWANChirpStack MQTT uplink ingest
KafkaApache KafkaStreaming data source

Serial / Generic Network

DriverProtocolNotes
SerialSerialGeneric serial port
TCP/UDPTCP / UDPGeneric socket ingestion

Database

DriverSourceNotes
MySQLMySQLRead points from tables
PostgreSQLPostgreSQLRead points from tables
OracleOracleRead points from tables
SQL ServerSQL ServerRead points from tables
RedisRedisRead points from keys

Virtual / Testing

DriverNotes
VirtualGenerate simulated data with no real device — for demos and load testing
Listening VirtualListen on a port for device pushes — for integration testing

References

Wen Zhe, Fan Yabin. Research and Application of Four-Network Convergence Technology Based on the Internet of Things [M]. Changchun: Jilin People's Publishing House, 2016. ISBN 978-7-206-12410-5. (ch. 1 §3, p13)

Further Reading

Released under the AGPL-3.0 License