Connecting Siemens LOGO! 0BA8 to InTouch via DASSIDirect

David Krause13 min read
HMI / SCADASiemensTutorial / How-to
Licensed PE Working through this on a live machine? A Maine-licensed engineer can take it from here — included with IMD hardware, by the hour for everything else. Book an engineer

Overview: LOGO! 0BA8 to InTouch Integration

Siemens LOGO! 0BA8 — the Ethernet-equipped LOGO! 8 generation (including 0BA8 Standard, 0BA8.S, and 0BA8.FS:05) — exposes its internal I/O, network I/O, markers, and variable memory to S7-compatible clients over its on-board RJ45 port using a subset of the S7-200 communication profile. AVEVA InTouch HMI does not ship a native Siemens S7-200 driver, so the standard, vendor-supported path is to insert Wonderware DASSIDirect (DAServer Direct) with its S7CP_200 device group as the protocol bridge between the LOGO! CPU and the InTouch access name. This article documents the complete configuration: IP addressing, the S7 client/server connection in LOGO! Soft Comfort, TSAP pairing, the S7CP_200 topic in the DAServer Manager, and the InTouch tag dictionary mapping.

The integration is unidirectional or bidirectional over a single TCP session on port 102 (ISO-on-TCP / RFC 1006). DASSIDirect acts as the S7 client, the LOGO! 0BA8 acts as the S7 server, and InTouch reads or writes through the DASServer using a simple, S7-200-style item name syntax (for example VX0.0 for the first network-output bit and VW0 for the first variable-memory word). No OPC tunnel, no KEPware, and no S7-net/PPI adapter is required.

Architecture and Protocol Foundation

LOGO! 0BA8 implements the S7-200 communication subset on top of ISO-on-TCP (TCP/102). The S7 communication model uses a Transport Service Access Point (TSAP) — a two-byte identifier that pairs the local resource of the server with the local resource of the client. For the LOGO! 0BA8, the default local TSAP is 01.00. The DASSIDirect S7CP_200 object is a slot-0 / rack-0 client that mirrors the TSAP pair, opens a TCP connection to the LOGO!, and then performs S7 read/write PDUs at the configured poll interval.

Siemens LOGO! 0BA8 S7-200 Server (passive) IP: 192.168.0.10 Local TSAP 01.00 TCP/102 (ISO-on-TCP) I, Q, M, AI, AQ, NI, NQ, VM Plant LAN S7 PDU over TCP/102 Poll 1 s default SCADA PC DASSIDirect S7CP_200 IP: 192.168.0.50 Local TSAP 01.01 + AVEVA InTouch Access Name → DASSIDirect S7 client ↔ server over TCP/102, TSAP-paired session Read PDU (default 1 s) + write PDU on tag change

The integration is composed of three layers:

  1. LOGO! 0BA8 base module with on-board Ethernet (firmware ≥ 0BA8.Standard ES:02) configured as an S7 server.
  2. Wonderware DASSIDirect (DAServer) running as a Windows service, with one S7CP_200 device object (topic) per physical LOGO!.
  3. AVEVA InTouch with an Access Name pointing to the DASSIDirect application and the topic name as defined in step 2.

Prerequisites

Component Version / Model Notes
LOGO! base module 6ED1052-XXXXX-0BA8 Standard, 0BA8.S, or 0BA8.FS:05 Must have on-board RJ45; verify the "Logo! 8" marking and the Ethernet port on the CPU front.
LOGO! Soft Comfort ≥ V8.3 (V8.4 for 0BA8.FS:05) Used to configure the S7 connection and to download the user program.
Wonderware DASSIDirect DAServer Direct 3.x/4.x matching the InTouch version Install from the InTouch media or as a standalone DAServer. The installer registers the S7CP_200 device group.
AVEVA InTouch 2020 R2 or later recommended (2014/2017 supported) HMI/SCADA visualization runtime. Tag dictionary is built in WindowMaker.
Network TCP/IP, port 102 reachable between nodes Use static IP addresses. Open TCP/102 inbound on the SCADA PC firewall.
User account Local administrator on the SCADA PC Required to start/stop the DAServer Manager service and to register DASSIDirect as a system service.
No extra hardware required. The on-board RJ45 on LOGO! 0BA8 is the only physical interface. Do not add a CP243-1 or a NetLink adapter — those target S7-200 PLCs and are not interchangeable with LOGO! 0BA8.

Step 1: LOGO! 0BA8 Ethernet and S7 Connection Configuration

  1. Set a static IP on the LOGO!. The factory default is 192.168.0.10/24. In LOGO! Soft Comfort go to Tools → Ethernet → IP Address and assign an address on the SCADA subnet (e.g. 192.168.0.10, subnet 255.255.255.0, gateway 192.168.0.1). Confirm with a ping from the SCADA PC.
  2. Enable the S7 connection. In the same Tools → Ethernet menu, open the S7 Connection dialog. The LOGO! side is the server; you only declare the partner:
Field LOGO! 0BA8 Value Notes
Local TSAP 01.00 LOGO! default S7 local resource. Do not change unless a TSAP conflict is reported.
Partner IP address 192.168.0.50 IP of the SCADA PC running DASSIDirect.
Partner TSAP 01.01 Must match the DASSIDirect local TSAP configured in Step 2.
Connection role Server (passive) LOGO! 0BA8 cannot initiate the S7 connection.
Write permission Enabled (PUT/GET allowed) Required if InTouch must set markers, network outputs, or VM words.
Slot / Rack 0 / 0 LOGO! 0BA8 has no physical slot concept; S7CP_200 always uses 0/0.
  1. Compile and download the program. Use PC → Logo! transfer over the same Ethernet cable. If the on-board LOGO! display shows "STOP", switch to RUN after the download completes.
  2. Verify the connection is listening. From the SCADA PC run Test-NetConnection 192.168.0.10 -Port 102 (PowerShell) or nc -vz 192.168.0.10 102 (Linux). The TCP handshake must succeed before continuing.
TSAP format. TSAP is written as two hex bytes separated by a dot. The high byte typically encodes the connection type (01 = PG/OP slot, 02 = OP slot) and the low byte encodes the local resource (00 = CPU 1). Keep the LOGO! local TSAP at 01.00 unless a slot conflict forces a different value.

Step 2: DASSIDirect Server Configuration (S7CP_200)

Open the DAServer Manager from the Wonderware program group. The console shows a tree with Configuration at the top and the registered device groups beneath it.

  1. Create the device object. Right-click Configuration → Add S7CP_200 Object. Rename it to match the physical asset (e.g. LOGO_0BA8_01). This string becomes the InTouch topic name.
  2. Configure the S7CP_200 parameters. Open the new object and fill the Device Properties dialog:
DASSIDirect Field Value Corresponds to LOGO! Field
IP Address 192.168.0.10 LOGO! IP from Step 1.1
Local TSAP 01.01 LOGO! partner TSAP
Remote TSAP 01.00 LOGO! local TSAP
Connection Type PG (slot 1) Default S7-200 client slot
Rack 0 LOGO! has no physical rack
Slot 0 LOGO! S7 server slot
Poll Interval 1000 ms (default) Tune to 250–500 ms for faster response on small tag counts
Timeout 3000 ms Lower to 1500 ms to fail fast on a lost connection
Auto-reconnect Enabled, 5 s Recovers automatically after a cable re-insert
  1. Activate the device object. Right-click the S7CP_200 entry and select Start. The status icon turns green within 5–10 seconds once the S7 connection is established. Hover the icon to see the negotiated PDU size and last read timestamp.
  2. Test from the DAServer Manager. Right-click the device → Quick Browser → read a known item, for example VX0.0. A successful read returns the current network-output bit value; a failed read returns an error code (see troubleshooting matrix).

Step 3: InTouch Access Name and Tag Dictionary

  1. Open WindowMaker as a user with write access to the InTouch application directory.
  2. Create the Access Name. Open Special → Access Names → Add:
Field Value Notes
Access Name LOGO_0BA8 Free-form name shown in tag dictionary and animations.
Node localhost (or remote node name) Use localhost when DASSIDirect runs on the same PC as InTouch; use the remote node name for distributed deployments.
Application DAS or DASSIDirect Match the registered DAServer name in the ArchestrA System Management Console.
Topic LOGO_0BA8_01 Must match the S7CP_200 object name from Step 2.
Protocol DASSIDirect Selected automatically when the application is DAS/DASSIDirect.
  1. Build the tag dictionary. Open Special → Tagname Dictionary → New and add discrete and analog tags using the DASSIDirect S7-200 item name format. Examples for the standard read/write points:
Tagname (InTouch) Type Item Name Description
logo_nq0_0 Discrete I/O VX0.0 Network output NQ1 bit 0 (writable)
logo_nq0_1 Discrete I/O VX0.1 Network output NQ1 bit 1 (writable)
logo_in1_0 Discrete I/O I1.0 Digital input I1.0
logo_out1_0 Discrete I/O Q1.0 Digital output Q1.0 (writable)
logo_m0_0 Discrete I/O M0.0 Marker/flag M0.0 (writable)
logo_vw0 Integer I/O VW0 Variable memory word 0 (16-bit, writable)
logo_vd0 Real / DWord I/O VD0 Variable memory double-word 0
logo_aiw0 Integer I/O AIW0 Analog input AI1 raw value
logo_aqw0 Integer I/O AQW0 Analog output AQ1 (writable)
  1. Save and reload. Save the dictionary, close WindowMaker, and restart the InTouch Viewer. The DASSIDirect connection should reach Established state within two poll cycles.
  2. Smoke-test on a window. Drop a discrete value display bound to logo_in1_0 and a button toggling logo_nq0_0 on a test window. The InTouch Debugger (Ctrl+Y) confirms read/write activity against the DASSIDirect log pane.
Item-name spelling. Some DASSIDirect installs document the bit-access syntax as V0.0 (no X). The legacy form VX0.0 works on most S7CP_200 builds. If the tag returns "Address Error", drop the X and re-test with V0.0.

Address Mapping Reference Table

LOGO! Internal Object S7-200 Item Name Data Type Direction Range (typical 0BA8)
Network input NI1…NIn NX0.0–NXn.7 Discrete (bit) SCADA ← LOGO! 64 bits (firmware dependent)
Network output NQ1…NQn VX0.0–VXn.7 Discrete (bit) SCADA ↔ LOGO! 64 bits (firmware dependent)
Digital input I1…I24 I1.0–In.7 Discrete SCADA ← LOGO! 24 bytes (= 192 bits)
Digital output Q1…Q20 Q1.0–Qn.7 Discrete SCADA ↔ LOGO! 20 bytes (= 160 bits)
Marker / flag M M0.0–Mn.7 Discrete SCADA ↔ LOGO! 8 bytes (MB0–MB7)
Variable memory VM VW0, VW2… / VD0 16-/32-bit SCADA ↔ LOGO! Up to VW850 (0BA8)
Analog input AI AIW0, AIW2… 16-bit INT SCADA ← LOGO! 8 words typical
Analog output AQ AQW0, AQW2… 16-bit INT SCADA ↔ LOGO! 2–4 words typical
Counter / Timer current value VW-area mapping 16-bit SCADA ← LOGO! VW offsets per block index

The number of accessible I and Q bytes depends on the LOGO! 0BA8 base module plus any attached digital or analog expansion modules. The maximum VM area address range is firmware-dependent; the 0BA8.Standard firmware (ES:02 and later) typically exposes up to VW850.

Verification

  1. Connection state. Open the DAServer Manager → expand the S7CP_200 device → check the status icon. It must be green and the "Last Read" timestamp must be within the poll interval.
  2. Tag quality in InTouch. Open InTouch Viewer and the SMC Debugger. All I/O tags bound to the DASSIDirect access name should report quality = Good (192). A Bad quality value (0) indicates a TSAP or IP mismatch, a firewall block, or a stopped S7CP_200 object.
  3. Online program view. In LOGO! Soft Comfort connect online, force a network input (NI1) and confirm the corresponding InTouch tag updates within one poll cycle (default 1 s).
  4. Round-trip write test. Bind a momentary pushbutton to logo_nq0_0. Press the button; the NQ1 LED on the LOGO! (or the corresponding bit in the online view) must turn on within the poll interval. Release the button; the bit must clear.
  5. Log review. Inspect the DASSIDirect log (default path: %SystemDrive%\ProgramData\Wonderware\DASSIDirect\Log). The log must show "Connection Established" once at startup and a steady stream of read acknowledgements — no retry storms.

Troubleshooting Matrix

Symptom Likely Root Cause Corrective Action
S7CP_200 status icon stays red TCP/102 blocked by Windows Firewall or 3rd-party AV Add an inbound rule allowing TCP/102 on the SCADA node, or temporarily disable the firewall on a lab segment to confirm.
Status goes green then red repeatedly Local/Remote TSAP mismatch between LOGO! and DASSIDirect Verify LOGO! remote TSAP = DASSIDirect local TSAP and vice versa. The two pairs must mirror each other. Default LOGO! local TSAP is 01.00.
Tags show quality Bad (0) on all items LOGO! in STOP, or S7 connection not enabled in the program Switch the LOGO! to RUN, re-download the program with the S7 connection configured, and check Tools → Ethernet for the active partner entry.
Tags show Comm Loss only after several hours Idle-timeout from a network device closing the TCP session Reduce the S7CP_200 poll interval, enable keep-alive, or set the managed switch port-aging time above the poll interval.
Item VX0.0 returns "Address Error" Item-name syntax not recognized by S7CP_200 Drop the X and re-test with V0.0. The S7-200 profile uses Vx.y for bit and VWn for word access.
Reads work, writes are rejected Write protection enabled on LOGO! S7 connection In LOGO! Soft Comfort → Tools → Ethernet → S7 Connection, enable PUT/GET permission and re-download the program.
Cannot program the LOGO! once the S7 link is active LOGO! Soft Comfort programming TSAP (01.00) collides with the live DASSIDirect session Stop the S7CP_200 object during programming, or assign the programming tool a different TSAP (e.g. 01.02) under Tools → Ethernet → PG Interface.
Analog values are off by a factor of 10 LOGO! analog scaling not applied on the SCADA side Apply the LOGO! 0–10 V (0 = 0 V, 1000 = 10 V) or 0/4–20 mA scaling factor in an InTouch calculation tag, or read the raw AIW and scale in a script.
Quality oscillates between Good and Uncertain Subnet broadcast storm or duplex mismatch on the SCADA PC NIC Force the NIC to 100 Mbit/s full duplex, and isolate the SCADA PC port on the managed switch.
DASSIDirect service fails to start Another process holds TCP/102 (e.g. SIMATIC Step 7, S7-PCT) Stop the conflicting application, change its port, or move it to a different PC.

Performance, Limits, and Design Notes

  • Poll rate. DASSIDirect default is 1000 ms. The LOGO! 0BA8 S7 server sustains 250–500 ms on small tag counts; below 200 ms the response time plateaus because the LOGO! scan time becomes the bottleneck.
  • Tag-count ceiling. Keep the active item set under roughly 200 discrete plus 50 analog items to stay within the LOGO! 0BA8 S7 server capacity. Excessive polling generates S7 timeout retries and degrades the LOGO! scan.
  • Redundancy. DASSIDirect supports redundant device objects, but the LOGO! 0BA8 S7 server is a single instance. Use redundant SCADA PCs with each running its own S7CP_200 connection; only one PC actively writes at a time, coordinated by the InTouch application.
  • Security. The S7-200 protocol in LOGO! 0BA8 has no built-in authentication. Place the SCADA LAN behind a managed switch with an ACL, or terminate the path with a VPN/DMZ if the network extends beyond the plant floor.
  • Alternatives. If a non-S7-200 client is preferred, LOGO! 0BA8 also exposes Modbus TCP on TCP/502 (server role) and S7 symbolic access with LOGO! 8.3+. The Modbus TCP path is more familiar to InTouch teams that already use the Wonderware MBTCP driver, but it does not expose network I/O bits in the same compact address scheme — the mapping is to Modbus holding/input registers.
  • Multiple partners. The LOGO! 0BA8 S7 server supports a small number of simultaneous partner connections (typically 4). Add a second S7CP_200 object on a different SCADA node with a different local TSAP (e.g. 01.02) if a parallel historian is required.
S7 client role. The S7-200 protocol stack in LOGO! 0BA8 is server-only. DASSIDirect is always the client. If a third-party system also needs to read the LOGO!, that system must connect as an additional S7 client with its own TSAP — never as a peer server.

FAQ

Does Siemens LOGO! 0BA8 use the S7-200 protocol over Ethernet?

Yes. The on-board RJ45 port on LOGO! 0BA8 (and later 0BA8.S / 0BA8.FS:05 variants) implements a subset of the S7-200 communication profile over ISO-on-TCP on TCP/102. DASSIDirect's S7CP_200 device group is the matching client driver in the Wonderware / AVEVA stack, and it requires no additional hardware or OPC tunnel.

What TSAP values should I use for LOGO! 0BA8 and DASSIDirect?

Use a local TSAP of 01.00 on the LOGO! side and a partner TSAP of 01.00 on the DASSIDirect S7CP_200 remote field. Then set the DASSIDirect local TSAP to a non-conflicting value such as 01.01 and match that as the LOGO! partner TSAP. The two TSAP pairs must mirror each other for the S7 connection to come up.

How do I read a LOGO! network output bit in AVEVA InTouch?

Create a discrete I/O tag in WindowMaker with the Access Name pointing to the S7CP_200 topic and the item name VX0.0 for the first network-output bit, VX0.1 for the second, and so on. Word access uses VW0, VW2, etc. If the tag returns "Address Error", use V0.0 without the X prefix.

Can I write to LOGO! flags and network outputs from InTouch?

Yes, provided the LOGO! S7 connection in LOGO! Soft Comfort has the PUT/GET (write) permission enabled and the S7CP_200 object is not configured as read-only. InTouch tags of type I/O discrete or I/O integer using the same item-name syntax (VX0.0, M0.0, VW0, AQW0) write back to the LOGO! within one poll cycle.

Do I need an OPC server, KEPware, or extra gateway to bridge LOGO! and InTouch?

No. DASSIDirect with the S7CP_200 device group is a native Wonderware DAServer; it talks S7-200 directly to the LOGO! 0BA8 over TCP/102. No third-party gateway, no OPC tunnel, and no KEPware driver is required for the standard I/O, network I/O, marker, and VM area integration described in this article.

Back to blog