1. Overview: LOGO! 0BA8 Data Logging Constraints
The Siemens LOGO! 0BA8 (LOGO! 8 series) is a modular logic module widely used in small test rigs, laboratory benches, and pilot plants. It supports on-board DataLog functionality to Siemens SD cards, but the storage envelope is finite. Engineers running long-duration tests (1–30 days) at sub-minute sample rates quickly collide with three hard limits:
- Internal DataLog without SD: 512 bytes rolling buffer (FIFO overwrite).
- Internal DataLog with SD: maximum 50 files × 20,000 lines = 1,000,000 rows of cumulative capacity, but no more than 20,000 lines in any single file before roll-over.
- LOGO! Access Tool CSV stream: 1 sample/second fixed, but unbounded row count on the host PC.
For a 30-day test at 5-second intervals, the required sample count is:
N = (30 days × 24 h × 3600 s/h) / 5 s = 518,400 samples
This exceeds a single 20,000-line DataLog file by a factor of 25.9×. The only practical options are (a) chaining multiple SD card files, (b) reducing the sample interval, or (c) streaming directly to a network computer. This document focuses on path (c) using the official LOGO! Access Tool, a free MS Excel add-in published by Siemens that exposes the =LOGOVARL and =LOGOVAR worksheet functions to live cells of the LOGO! 0BA8 controller over Ethernet.
2. The Three Logging Paths on LOGO! 0BA8
LOGO! 0BA8 firmware exposes three distinct logging paths. Select the path by matching test duration, sample rate, and post-processing needs.
| Path | Storage | Max Capacity | Sample Rate | Overwrite Policy | Data Types |
|---|---|---|---|---|---|
| DataLog (no SD) | Internal RAM | 512 bytes | Program-defined (cycle/scheduled) | FIFO (oldest deleted) | Variables, parameters, VM addresses |
| DataLog (with SD) | SD card (Siemens-branded recommended) | 50 files × 20,000 lines | Program-defined | New file when current reaches 20,000 lines | Variables, parameters, VM addresses |
| Access Tool CSV stream | Host PC (Excel/LibreOffice CSV) | Limited only by disk | Fixed 1 s | None (appends until closed) | Variables (via =LOGOVARL), or Standard I/O (via I/O Status) |
Decision tree:
- If total expected samples < ~5,000 → use internal DataLog (no SD), 512-byte buffer is sufficient.
- If samples ≤ 1,000,000 across 50 files, and the LOGO! is standalone with no host PC → use SD card DataLog.
- If samples > 1,000,000, or long-duration unattended capture is needed, or you require live monitoring on a network PC → use the LOGO! Access Tool.
3. LOGO! Access Tool Architecture and Prerequisites
The Access Tool is a Microsoft Excel COM add-in (.xll) that talks to LOGO! 0BA8 over TCP/UDP via the S7-200-compatible protocol exposed on port 102 (ISO-on-TCP / RFC 1006). The tool can be installed on a workstation that has a routed path to the LOGO!'s Ethernet port.
3.1 Hardware and software prerequisites
- LOGO! 0BA8 base module with Ethernet (LOGO! 8.1, 8.2, or 8.3) — order numbers 6ED1052-1xxx08-0BA0 series or later.
- LOGO!Soft Comfort V8.0 or later installed (for project transfer and IP assignment).
- Microsoft Excel 2010/2013/2016/2019/365 (32-bit or 64-bit matching the add-in).
- Network connectivity: switched Ethernet between PC and LOGO!, same subnet, or routed via VPN for remote test cells.
- LOGO! firmware 1.08.xx or later for full Access Tool compatibility (verify via menu: LOGO! → Diagnostics → Firmware).
3.2 Network configuration
Assign a static IP to the LOGO! 0BA8 (default is DHCP). Recommended test bench pattern:
| Device | IP Address | Subnet Mask | Notes |
|---|---|---|---|
| LOGO! 0BA8 | 192.168.0.10 | 255.255.255.0 | Static, set via LOGO!Soft Comfort or on-device menu |
| Logging PC | 192.168.0.50 | 255.255.255.0 | Static (DHCP reservation acceptable) |
| Default gateway | 192.168.0.1 | — | Required if PC logs across routers |
Verify reachability before installing the add-in:
ping 192.168.0.10
telnet 192.168.0.10 102
A successful TCP connect on port 102 confirms the LOGO! is responding to the S7 protocol. If the connect fails, check the LOGO!'s Network menu and confirm the access protection password is not blocking the read session.
4. Installing and Configuring the LOGO! Access Tool
4.1 Download and install
- Navigate to the official Siemens LOGO! portal at siemens.com/logo.
- Select More about LOGO! in the right-hand navigation, then Update, Demo, Tools.
- Locate the LOGO! Access Tool entry and download the ZIP archive.
- Extract the package. Confirm the contents include the add-in DLL/XLL, the bundled user PDF (typically
LOGO_Access_Tool_en.pdf), and any supporting.dllruntime files. - Close all open Excel instances before installing.
- Run the setup executable. The installer registers the add-in with Excel and creates a startup menu entry.
4.2 Enable the add-in in Excel
- Launch Excel.
- Open File → Options → Add-Ins.
- At the bottom of the dialog, choose Excel Add-ins in the Manage dropdown, click Go….
- Check the entry labelled LOGO! Access Tool and confirm.
- The LOGO! ribbon or sidebar appears once the add-in is active.
4.3 Connect to the LOGO!
From the LOGO! Access Tool ribbon:
- Click Connect.
- Enter the LOGO!'s IP address (e.g.
192.168.0.10). - Confirm the connection status indicator turns green. The status dialog should show firmware version, project name, and run/stop state.
If the connection fails, the most common root causes are (a) Windows Firewall blocking outbound TCP 102, (b) incorrect IP or subnet, (c) LOGO! access protection password in effect, or (d) project on the LOGO! not yet transferred from LOGO!Soft Comfort.
5. The =LOGOVARL Function Reference
The Access Tool exposes two worksheet functions for reading LOGO! variables into Excel cells.
| Function | Behavior | Recommended Use |
|---|---|---|
=LOGOVAR(IP, VariableName, [Format]) |
Reads a single value on demand when the worksheet recalculates. | Manual inspection, ad-hoc reads, dashboard snapshots. |
=LOGOVARL(IP, VariableName, [Format]) |
Continuously samples the variable at the Access Tool's polling interval (1 s default) and appends each new value to a new row in a configured log range. | Long-duration CSV capture to host PC. |
5.1 =LOGOVARL syntax and parameters
=LOGOVARL("192.168.0.10", "VM0", 0)
Parameter breakdown:
- IP: STRING, IP address of the LOGO! 0BA8 in quotes.
-
VariableName: STRING, the symbolic name as declared in LOGO!Soft Comfort (e.g.
TempSensor), or the absolute VM address (VM0throughVM850depending on LOGO! 0BA8 firmware max). -
Format: INTEGER optional, controls numeric formatting (decimal places, hex display, etc.).
0= default.
5.2 Building a logging workbook
- Open a blank workbook.
- Create column headers:
Timestamp,TempSensor,PressureSP,CycleCount. - In the Timestamp column, enter
=NOW(). - In each variable column, enter the corresponding
=LOGOVARLreferencing the LOGO!'s IP and the variable name. - Configure the Access Tool to Start Logging from the ribbon. The add-in will append one new row per second to the configured log range until stopped.
- Save the workbook as
.xlsmto retain the add-in macros. For pure CSV export, use File → Save As → CSV UTF-8 after stopping the logging session.
6. I/O Status CSV Recording Path
If the variables of interest are standard digital or analog I/O and not internal VM memory or function block parameters, the Access Tool provides a faster path: Transfer I/O Status.
6.1 I/O Status workflow
- Connect to the LOGO! as in section 4.3.
- Open the I/O Status dialog from the ribbon.
- Select Start Recording and choose the destination CSV file.
- The tool records the state of every standard I/O point on the base module and any connected expansion modules (DM8/AM2/AM2 RTD) at the polling cadence.
- Close the I/O Status dialog or click Stop Recording to finalize the CSV.
6.2 I/O Status coverage matrix
| Source | Captured by I/O Status? | Workaround |
|---|---|---|
| Digital inputs (I1…I24 with expansions) | Yes | — |
| Digital outputs (Q1…Q20 with expansions) | Yes | — |
| Analog inputs (AI1…AI8) | Yes | — |
| Analog outputs (AQ1, AQ2) | Yes | — |
| VM memory locations (VM0…VM850) | No | Use =LOGOVARL |
| Function block parameter values | No | Use =LOGOVARL with the block's symbolic name |
| Flags (M1…M27) | Limited | Mirror to a VM if logging flags is required |
7. Network PC Deployment Topology
For multi-shift labs, the typical topology is a single test bench PC running the Access Tool while the LOGO! remains in a closed test chamber or remote site. Two common deployments are illustrated below.
7.1 Direct Ethernet (single bench)
The simplest topology: a single crossover or patch cable from the PC's Ethernet NIC to the LOGO! 0BA8. No switch is required. The PC's Ethernet port can be configured with the static IP 192.168.0.50/24 and the LOGO! at 192.168.0.10/24.
7.2 Switched LAN with multiple LOGO!s
For cell-wide logging, place a managed switch on the test bench. Each LOGO! is assigned a unique static IP. The logging PC can run multiple Access Tool instances or a single workbook that switches the IP parameter between =LOGOVARL calls.
7.3 Remote logging across VPN
When the test rig is in a remote facility, expose the LOGO!'s TCP 102 over an IPsec or WireGuard tunnel. Add a keep-alive to the LOGO! side to prevent tunnel idle-timeout. The Access Tool is a long-lived client; the S7 protocol does not require continuous traffic, but routers often drop idle TCP sessions after 5–30 minutes unless keep-alive is configured.
8. Calculation: Capacity, Duration, and Sample Rates
Use the formulas in this section to size the host PC's storage before the test begins.
8.1 Total samples over a test run
N_samples = T_hours × 3600 / Δt_seconds
Example: 30 days × 24 h = 720 h. At Δt = 5 s, N = 720 × 3600 / 5 = 518,400 samples.
8.2 CSV row size estimate
Each CSV row is approximately:
Row_bytes = 24 + N_vars × (8 + commas + quote_overhead)
For a typical 4-variable capture with timestamps, expect ~80 bytes/row. For 518,400 rows:
Disk_MB = 518,400 × 80 / (1024 × 1024) ≈ 39.5 MB
This is trivial for any modern PC, but write the CSV to a local SSD rather than a network share to avoid dropped rows on link interruptions.
8.3 Access Tool polling cadence
The Access Tool polls at 1 Hz. If the application requires 5-second samples, either (a) accept the 1-second rate and aggregate in post-processing, or (b) use LOGO!Soft Comfort's Data Log block to throttle the variable writes at 5-second intervals and read them with =LOGOVARL while accepting the 1-Hz sample rate on the wire.
9. Verification and Field Acceptance Checks
After commissioning the Access Tool capture, perform the following verification sequence before trusting the data.
- Connection state: Confirm the Access Tool status indicator remains green for at least 5 minutes without flicker.
- Live value sanity: Toggle a known digital input on the LOGO! and verify the corresponding cell in the Excel log updates within 2 seconds.
-
Timestamp drift: Use
=NOW()as a reference and compare against the LOGO!'s built-in time-of-day clock (visible via LOGO! → Setup → Time). Drift should be < 1 second over a 10-minute window. - Gap audit: After 24 hours, scan the timestamp column for missing rows. A correctly running capture at 1 Hz should produce exactly 86,400 rows in 24 hours (± a small tolerance for Excel recalculation pauses).
- Row limit test: Fill the workbook to 1,048,000 rows and confirm the add-in continues writing past the Excel soft limit without crashing.
- Recovery test: Disconnect the Ethernet cable for 30 seconds. The Access Tool should buffer or surface an error; on reconnect, it should resume capture from the last good state, not duplicate or lose rows.
10. Limitations, Edge Cases, and Open-Source Alternatives
10.1 Documented limitations
- The Access Tool is Excel-centric. LibreOffice and OpenOffice do not load the XLL add-in directly. Engineers who need an open-source workflow can capture the S7 traffic to port 102 with Snap7, an open-source C/C++/Python/.NET library that speaks the LOGO! 0BA8 S7 dialect. A Python script using
snap7can replace the Access Tool and write to CSV or InfluxDB at any sample rate. - Mac and Linux users have no first-party tool. A Linux capture rig is achievable with
snap7+ Python 3 +pandas+ CSV writer; the MacOS port ofsnap7is community-maintained. - Only one Excel session can host the add-in at a time. Multiple parallel captures require multiple workbook instances, each with its own connection state.
- Variable name lookups depend on the project being transferred to the LOGO! with LOGO!Soft Comfort V8.x. A LOGO! that has been programmed via the on-device menu may not have symbolic names; use absolute VM addresses (
VM0,VM1…) in that case.
10.2 Snap7 reference script (Python 3)
import snap7
from snap7.util import get_bool, get_int, get_real
import time, csv
client = snap7.client.Client()
client.connect("192.168.0.10", 0, 1, 102) # IP, rack, slot, port
with open("logo_log.csv", "a", newline="") as f:
w = csv.writer(f)
w.writerow(["Timestamp", "VM0", "VM2", "VM4"])
while True:
data = client.db_read(1, 0, 16) # adjust DB and length to project
w.writerow([time.strftime("%Y-%m-%d %H:%M:%S"),
get_int(data, 0), get_int(data, 4), get_int(data, 8)])
f.flush()
time.sleep(1.0)
This script reproduces the Access Tool's 1-Hz capture on any platform with python-snap7 installed and writes directly to CSV with no Excel dependency.
10.3 Edge cases encountered in the field
| Symptom | Likely Cause | Resolution |
|---|---|---|
| Access Tool shows "Project not found" | LOGO! has no project transferred from LOGO!Soft Comfort | Re-transfer the .lsc project; reboot LOGO! |
| =LOGOVARL returns #N/A | Variable name typo or VM address out of range | Check spelling; verify max VM range for installed firmware |
| Capture stops after ~50 minutes | Windows TCP keep-alive drops the S7 session | Enable KeepAliveTime via registry, or schedule a refresh in the workbook |
| Duplicate rows in CSV | Excel recalculation retriggered the add-in | Set calculation to manual; trigger via macro |
| Connection refused on port 102 | Windows Firewall or third-party AV blocking | Add firewall rule for %ProgramFiles%\Microsoft Office\root\Office16\EXCEL.EXE outbound on TCP 102 |
11. Frequently Asked Questions
Can the LOGO! Access Tool sample faster than 1 second?
No. The polling interval of =LOGOVARL is fixed at 1 second by the add-in's internal S7 read cycle. For higher rates, use the SD card DataLog feature in LOGO!Soft Comfort, which can be programmed down to the LOGO! scan cycle (typically 50–100 ms), or use a Snap7-based script with a custom timer.
Does the Access Tool work with LibreOffice or OpenOffice?
No. The official LOGO! Access Tool is a Microsoft Excel COM/XLL add-in and is not compatible with LibreOffice Calc or OpenOffice Calc. For a cross-platform open-source alternative, use the python-snap7 library and write a small script that captures VM memory to CSV at the desired interval.
What is the maximum CSV row count Excel can hold in a single sheet?
1,048,576 rows. For a 30-day test at 1 Hz that is approximately 2.59 million samples, which exceeds the limit. Split the capture across multiple workbooks (one per day) or export to CSV and reopen a new workbook to continue logging.
Does the Access Tool work with LOGO! 0BA7 or earlier?
No. The Access Tool is a LOGO! 8 (0BA8) feature. LOGO! 0BA6 and 0BA7 do not expose the S7 protocol variant that the add-in expects. For older LOGO! generations, use LOGO!Soft Comfort's Data Log viewer or a third-party OPC bridge.
What happens if the Ethernet connection drops during a 30-day test?
The Access Tool pauses logging and surfaces a connection error. When the link is restored, it resumes from the next polling cycle. The CSV will contain a gap, not duplicates. To prevent idle-timeout disconnects, configure a TCP keep-alive on the PC or schedule a periodic refresh of the workbook so the S7 session stays warm.