FabyaVisionUser Manual
/

Drivers

5 min readCommunication

The protocols FabyaVision can speak, the data types, address format and prerequisites of each driver, and which driver to choose for which device.

Which driver to choose

The driver determines which protocol a connection uses to communicate. The choice depends on which protocol the device offers; it is selected in the Communication driver cell when the connection is defined (Connections table).

DeviceDriverGuide
Siemens S7-1500 / S7-1200 (with the absolute address DB1.DBX0.0)Siemens S7-1500, Siemens S7-1200S7
Siemens S7-300 / 400Siemens S7-300 / 400S7
Siemens data blocks with optimized (symbolic) block access; any device with an OPC UA serverOPC UAOPC UA
Device that communicates over Modbus TCP (energy analyzer, drive, gateway)Modbus TCPModbus TCP
ControlLogix, CompactLogix, Micro800Allen-Bradley EtherNet/IPAllen-Bradley
Mitsubishi MELSEC-Q / L, iQ-R, iQ-FMitsubishi MC ProtocolMitsubishi MC
Omron CJ / CS / CP / NJOmron FINSOmron FINS
Classic OPC (DA) serverOPC DAOPC DA
MQTT server (broker)MQTTMQTT
No device: testing, presentation, trainingSimulatorSimulator

Comparison

DriverProtocol / transportDefault portAddress format (example)
Siemens S7-1500, S7-1200, S7-300 / 400S7 (PUT/GET), TCP102Absolute: DB1.DBX0.0, MW20
OPC UAOPC UA client (opc.tcp)4840NodeId: ns=3;s="DB_Motor"."Hiz"
Modbus TCPModbus TCP502Modicon: 40001, 00001
Allen-Bradley EtherNet/IPEtherNet/IP (CIP), TCP44818Tag name: Tank_Seviye, Program:Ana.Sayac
Mitsubishi MC ProtocolMC Protocol 3E frame, TCP5007Device + number: D100, M10
Omron FINSFINS / TCP or FINS / UDP9600Area + number: D100, CIO100.00
OPC DAOPC DA 2.05a, COM / DCOMnoneItem ID: Kanal1.Cihaz1.Tag1
MQTTMQTT 3.1.1, TCP (optional TLS)1883 (TLS: 8883)Topic: fabrika/hat1/sicaklik, konu#json.yolu
SimulatorInside Live, no networknoneSignal: sinus(0, 100, 10)
Address formats of different drivers in the same tag table; the address of each tag is validated according to the driver of its connection.12
Address formats of different drivers in the same tag table; the address of each tag is validated according to the driver of its connection.
  1. Connection — determines by which driver rule the address is resolved.
  2. Address — the own format of each driver.

Supported data types

The Data type options of a tag are limited to the types supported by the driver of its connection. If the driver or the type is changed later, the address is validated again against the new rule; an address that does not match stays red in the table and is added as an error to the Check project list.

DriverData types
S7-1500, S7-1200Bool Byte SInt Int UInt DInt UDInt Real LReal String WString DateTime
S7-300 / 400Bool Byte Int UInt DInt UDInt Real String DateTime
OPC UA, OPC DA, MQTTBool Byte SInt Int UInt DInt UDInt Real LReal String DateTime
Allen-BradleyBool Byte SInt Int UInt DInt UDInt Real LReal String
Modbus TCP, Mitsubishi MC, Omron FINSBool Int UInt DInt UDInt Real LReal String
SimulatorBool Byte SInt Int UInt DInt UDInt Real LReal

Common behavior of the drivers

The following apply to all PLC drivers; for details and messages, see Connection diagnostics.

  • Reading is per connection. Each connection runs in its own thread. Tags are grouped by Read cycle, and addresses that are close to each other are read in a single request (S7, Modbus, Mitsubishi, Omron). If a device rejects a block, the block is read again tag by tag and only the faulty tag gets an error.
  • Only the changed value is transmitted. Changes reach the screens in batches at most once every 100 ms per connection. Whenever a connection is (re)established, all values are transmitted once more.
  • Writes are queued. The write request is executed between reads; the tag that was written is read back immediately. While the connection is down, the write is rejected with the message Bağlantı kopuk: <bağlantı adı>.
  • Reconnection. If the connection cannot be established or is lost, the driver retries after 1 s, 2 s and 5 s, then every 10 s.
  • A tag that cannot be read. Its error is reported once, it is removed from the read set (other tags are not affected) and it is retried every 30 s.
  • Value conversion. If a fractional value is written to an integer tag, it is rounded to the nearest integer; if the range of the type is exceeded, the write is rejected (Değer Int aralığının dışında: -32768 ile 32767 arasında olmalıdır.). If Real and LReal values are read as NaN or infinite, 0 is passed to Live. DateTime values are transferred in the local time of the PLC, in ISO 8601 format without a time zone suffix (2026-10-08T14:30:00.000). For a String tag, the Length field is the maximum number of characters (default 32, at most 254).

Limitations and points to note

  • The S7 driver works only with absolute addresses; the CPU must have the PUT/GET permission, and Optimized block access must be turned off in the block. For symbolic access, use OPC UA.
  • In Live, a read cycle of at least 100 ms is applied to PLC and simulator tags (Cycles).
  • The S7, Modbus, Allen-Bradley, Mitsubishi and Omron drivers have no authentication or encryption (Connection security).

Related topics

FabyaVision 0.1.0 User Manual · 18 October 2026© Fabyatek Yazılım Bilişim Teknolojileri Ltd. Şti.