Current language support for protocols
| Protocol | C | C# | Go | Java | Python | 
|---|---|---|---|---|---|
| AB-Ethernet | |||||
| ADS /AMS | |||||
| BACnet/IP | |||||
| CBus | |||||
| CANopen | |||||
| DeltaV | |||||
| DF1 | |||||
| EtherNet/IP | |||||
| EtherNet/IP - Logix | |||||
| Firmata | |||||
| IEC-60870 | |||||
| KNXnet/IP | |||||
| Modbus (TCP/RTU/ASCII) | |||||
| OPC-UA | |||||
| Open-Protocol (Torque-Tools) | |||||
| PLC4X (Proxy-Protocol) | |||||
| Profinet | |||||
| S7 | |||||
| Simulated | 
Legend:
- 
Implemented and fully supported 
- 
Work in progress 
- 
Not implemented yet 
- 
Unsure 
Features
The following table contains a list of operations and the protocols that support them:
| Protocol | Auto-Discover | Browse | Read Single Address Value | Read Multiple Address Values | Write Single Address Value | Write Multiple Address Value | Subscribe to Value changes | Subscribe to PLC Events/Alarms | Publish Values | 
|---|---|---|---|---|---|---|---|---|---|
| AB-Ethernet | |||||||||
| ADS /AMS | |||||||||
| BACnet/IP | |||||||||
| CBus | |||||||||
| CANopen | |||||||||
| DeltaV | |||||||||
| DF1 | |||||||||
| EtherNet/IP | |||||||||
| EtherNet/IP - Logix | |||||||||
| Firmata | |||||||||
| IEC-60870 | |||||||||
| KNXnet/IP | |||||||||
| Modbus (TCP/RTU/ASCII) | |||||||||
| OPC-UA | |||||||||
| Open-Protocol (Torque-Tools) | |||||||||
| PLC4X (Proxy-Protocol) | |||||||||
| Profinet | |||||||||
| S7 | |||||||||
| Simulated | 
Legend:
- 
Implemented and fully supported 
- 
Implemented and supported by simulation 
- 
Not implemented yet 
- 
Unsure