Siemens LOGO! 8 I/O Wiring Verification Test Program Guide

David Krause16 min read
PLC HardwareSiemensTutorial / 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

Mistakes in field wiring of a Siemens LOGO! 8 system are easy to introduce and hard to find once the program is loaded and the panel is closed. A single swapped pair of conductors on a LOGO! 8 base module (8 digital inputs, 4 relay/transistor outputs) or a DM8 expansion (8 digital inputs, 8 digital outputs) can produce a logic condition that looks correct during simulation but fails the moment real-world devices are energised. The standard remedy is a dedicated I/O test program that exercises every input and every output from the front-panel cursor keys, with on-board feedback for the technician.

This article documents both techniques a field engineer has at hand on a LOGO! 8:

  1. The built-in status display (no program changes required) for read-only verification of digital and analog I/O.
  2. A custom test program built in LOGO! Soft Comfort V8.3 that lets the engineer step through I/O 1…16 (in the typical base + DM8 configuration) and force each output independently.

Both methods together close the loop between physical wiring and the logical tag the LOGO! program refers to, which is the only reliable way to catch label-related defects such as a wireman running out of "1" labels and wiring conductor 11 into terminal I10.

Prerequisites

  • LOGO! 8 base module with on-board display (for example, 6ED1052-1MD08-0BA1 in 12/24 V variant, or 6ED1052-1FB08-0BA1 in 230 V variant).
  • One DM8 digital expansion module (6ED1055-1MB00-0BA2 for 12/24 V or 6ED1055-1HB00-0BA2 for 230 V) installed to the right of the base.
  • LOGO! Soft Comfort V8.3 (or later) installed on a Windows PC. The project file must be in .lsc form so it can be transferred to the LOGO! via Ethernet, micro-SD card, or USB cable.
  • Power supply isolated from field wiring until the test program is loaded and the engineer is ready to drive outputs.
  • Wiring diagram marked up with the LOGO! terminal numbers (I1…I8 on the base, I9…I16 on the DM8; Q1…Q4 on the base, Q5…Q12 on the DM8).
  • A separate hand-held continuity tester or signal generator — the test program verifies the LOGO! side; the continuity tester verifies the field side.
Safety: Outputs forced ON by the test program energise real field devices. Iscontactors, solenoids, and motor starters before pressing any cursor key, or work with the field wiring disconnected. Place the LOGO! in STOP mode during load and download to prevent undefined output states.

LOGO! 8 Hardware Identification and I/O Map

LOGO! 8 maintains a fixed I/O numbering scheme that follows the physical order of modules from left to right. The base unit occupies address space first, the first expansion second, and so on up to the maximum of 24 digital inputs, 20 digital outputs, 8 analog inputs, and 8 analog outputs supported by the controller.

Slot Module Typical Order Number Digital Inputs Digital Outputs Analog Inputs
1 (base) LOGO! 8 with display 6ED1052-1MD08-0BA1 / -1FB08-0BA1 I1 – I8 Q1 – Q4 AI1, AI2, AI3, AI4, AI5, AI6, AI7, AI8
2 (expansion) DM8 12/24 or 230 6ED1055-1MB00-0BA2 / -1HB00-0BA2 I9 – I16 Q5 – Q12 —
3+ Further DM8 / DM16 / AM2 / AM2 RTD / AM2 AQ 6ED1055-1xx00-0BA2 / 6ED1055-1MA00-0BA2 I17, I18, … Q13, Q14, … AI9, AI10, …

The addressing is automatic and follows the slot position. If a module is removed or swapped, the addressing changes. Always re-validate the test program when hardware topology is altered. The full addressing rules are documented in the LOGO! 8 system manual, entry ID 109741041.

LOGO! 8 Base 6ED1052-1xx08-0BAx I1 ... I8 Q1 ... Q4 AI1 ... AI8 Display + cursor keys Bus DM8 Expansion 6ED1055-1xx00-0BA2 I9 ... I16 Q5 ... Q12 No analog I/O on DM8 More DM16 / AM2 ...

Built-in Status Display Procedure

LOGO! 8 with on-board display (or connected LOGO! TDE 6ED1055-4MH08-0BA1) ships with a status page accessible through the front-panel keys — no program modifications required. The sequence below is taken from the on-board help and from the LOGO! 8 system manual.

  1. From the date/time display, press ESC to move into the main menu.
  2. Press the Down cursor key until the clock symbol appears (the “set date/time” screen is the anchor point that all engineers should remember — it is one cursor-down from the start screen).
  3. Press Left or Right to cycle through status pages: DI (digital inputs), DQ (digital outputs), AI (analog inputs), AQ (analog outputs), Marker (internal flags), and the active program counters/timers.
  4. For an analog input, press OK to enter a sub-menu listing the eight possible sources (AI1 … AI8, AM1 … AM6 in expansion order, plus network analog inputs from S7/Modbus). Select a source and press OK to see a trend view on the TDE. The trend scrolls from right to left at the LOGO! sampling interval and is invaluable for diagnosing PT100/0–10 V signals.

The built-in status page is read-only: it shows the current logic state of every I/O but it cannot force an output. To prove the wiring of an output coil back to its physical terminal, you need the custom test program described in the next section.

The TDE trend view requires firmware LOGO! 8 FS:03 or higher (device revision ≥ ES 03). Earlier devices (FS:01 / FS:02) display the trend cursor but do not draw the trace.

Custom Test Program: Functional Specification

The objective is a program that runs in addition to (or in place of) the production logic and gives the engineer four controls and three pieces of on-screen feedback:

User Action (front panel) Function Display Feedback
ESC + Up Increment the currently selected I/O number (1 → 16) Selected number, live input state, live output state
ESC + Down Decrement the currently selected I/O number (16 → 1) Same as above
ESC + Right Force the currently selected output ON (latched) Output state toggles to 1
ESC + Left Force the currently selected output OFF (latched) Output state toggles to 0
Physical input transition (rising edge on the selected I) Toggle the selected output (handy for sensor-pair test) Output state inverts

Design constraints:

  • 16 possible “slots” for inputs and 12 for outputs in the base + DM8 configuration. The program should still operate correctly if the expansion module is later swapped for a DM16 (raising the output count to 20) without code changes — select numbers above 12 are simply ignored by the output block.
  • Cursor keys on the LOGO! TDE are inputs C↑, C↓, C←, C→, with edge-triggered behaviour available via the "Edge" property in the FBD block properties.
  • Use a Message Text block to drive the display; embed a bar graph or character to indicate the boolean state and show the integer index in a 2-digit field.

LOGO! Soft Comfort Implementation

The FBD program is built from a small set of standard blocks. The structure below has been validated on LOGO! Soft Comfort V8.3.0 — the same logic can be re-typed in Ladder (LD) using contact/coil equivalents.

Block List

Block Type Function Notes
B01 Up/Down Counter Holds the currently selected I/O index (1 … 16) Set On = 1, Set Off = 16, Trigger + = C↑ edge, Trigger - = C↓ edge
B02 Edge / pulse relay Generate a one-cycle pulse on C↑ Connects to counter + input
B03 Edge / pulse relay Generate a one-cycle pulse on C↓ Connects to counter - input
B04 Analog Multiplexer (16→1) Route the digital input that matches the current index onto a single bus Inputs = I1 … I16; selector = B01.CV
B05 Analog Multiplexer (16→1) Route the latched output state (Q1…Q12) to display Q13/Q14 are 0 by default — covered by the DM8 limit
B06 … B21 16× SR latch Forced output state memory; one per output Q1 … Q12 + 4 spares Set input = "force ON" pulse; Reset input = “force OFF” pulse
B22 Pulse relay One-cycle pulse on C→ Feeds the Set input of the currently addressed SR latch
B23 Pulse relay One-cycle pulse on C← Feeds the Reset input of the currently addressed SR latch
B24 … B35 16× 16→1 demultiplexer (built from AND gates) Pass the Set/Reset pulse only to the latch whose index matches B01.CV Each output i = (B01.CV == i) AND (force_pulse)
B36 OR (12 inputs) Combine the production logic with the test latches on a per-output basis Q1_final = Q1_production OR B06; ...; Q12_final = Q12_production OR B17
B37 Message Text LCD display See format below

Message Text Format

The Message Text block is configured with a 4-line layout. Bar-graph flags are used to render the input and output state as filled / empty rectangles:

Line 1: "I/O Test  I=#0010"
Line 2: "Index = 04"
Line 3: "Input  : ##"   (## replaced by B04 output, 0 or 1)
Line 4: "Output : ##"   (## replaced by B05 output, 0 or 1)

Edge-Triggered Cursor-Key Detection

In LOGO! Soft Comfort, place the cursor-key marker on a digital input of any block and tick the Edge property in the block properties dialog. This converts a long key-press into a one-scan pulse, which is required to avoid multi-incrementing the counter on a single keypress.

Code Skeleton (FBD Excerpt)

+--[ C↑ ]--[ Edge ]--+--> B01.Trig+
|                       |
+--[ C↓ ]--[ Edge ]--+--> B01.Trig-

+--[ C→ ]--[ Edge ]--+--> (AND with index-match) --> SR_Set
+--[ C← ]--[ Edge ]--+--> (AND with index-match) --> SR_Reset

+--[ I1 ]--+
+--[ I2 ]--+
+-- ...    +--> [ MUX 16→1, Sel = B01.CV ] --> Display.InVal
+--[ I16 ]--+

+--[ B06.Q ]--+
+--[ B07.Q ]--+
+-- ...      +--> [ MUX 16→1, Sel = B01.CV ] --> Display.OutVal
+--[ B17.Q ]--+

+--[ Q1_production ]--[ OR ]--[ B06.Q ]------> Q1
+--[ Q2_production ]--[ OR ]--[ B07.Q ]------> Q2
+-- ... etc.
When the test program is active, the OR gate in B36 routes the forced output state to the physical terminal even if the production logic also drives the output. This means any forced output overrides the running program. The engineer must remove the test program (or clear the SR latches) before resuming production.

Alternate Ladder Logic Skeleton

The same logic is straightforward in Ladder for engineers more comfortable with contacts and coils:

|  C↑  CU  B01           (Up counter, preset = 16)
|  C↓  CD  B01           (Down counter)
|
|  C→  ( B01.CV == 1 )  SET  B06    (force Q1 ON when index = 1)
|  C←  ( B01.CV == 1 )  RST  B06    (force Q1 OFF when index = 1)
|  C→  ( B01.CV == 2 )  SET  B07    (force Q2 ON when index = 2)
|  C←  ( B01.CV == 2 )  RST  B07    (force Q2 OFF when index = 2)
|  ... repeat for index 3 … 12 ...
|
|  B06  ------ Q1
|  B07  ------ Q2
|  ...
|  B17  ------ Q12

Step-by-Step Commissioning Procedure

  1. Verify the wiring diagram. Confirm terminal numbers against the LOGO! hardware label (printed on the right side of the device) and not against the field-side terminal block sticker alone.
  2. Power up with field devices isolated. Close contactors upstream; lock out motor starters. Outputs Q1 … Q12 may be in an undefined state at first power-up.
  3. Connect the PC to the LOGO! Ethernet port (or insert a micro-SD card with the .lsc file). Load the test program while the controller is in STOP mode.
  4. Place the LOGO! in RUN. The display should now show the test program front panel.
  5. Test the inputs. Press ESC + Up to step to index 1. Drive the corresponding field input (close a contact, apply 24 V, etc.) and verify the display Input field toggles to 1. Repeat for indices 2 … 16.
  6. Test the outputs. With the field side of the output isolated, press ESC + Right at index 1 to force Q1 ON. Use a multimeter at the LOGO! terminal to confirm voltage. Press ESC + Left to clear. Repeat for Q2 … Q12.
  7. End-to-end test. Reconnect field wiring. Drive a known input and watch the production logic produce the expected output. This final test verifies both the wiring and the program simultaneously.
  8. Document the results. Print or save the test sequence for inclusion in the FAT/SAT documentation package.

Verification and Acceptance

The test program is "passing" when the following checklist is complete:

  • Every digital input I1 … I16 toggles the corresponding Input field on the display when its physical terminal is forced high (and only when forced on that terminal).
  • Every digital output Q1 … Q12 can be latched ON and OFF from the front panel cursor keys, and the change is observable on the physical terminal with a voltmeter or scope.
  • The MUX output for index N matches In (input) and Qn (output) — i.e. the slot count is monotonic and there are no off-by-one errors in the counter limits.
  • Removing the SD card or breaking the Ethernet link does not freeze the program: the on-board display continues to show live I/O state.
  • Once a fresh production program is loaded, no SR latches from the test program remain set (clear all latches with a "Reset" in the Soft Comfort online menu before download).

Troubleshooting Matrix

Symptom Likely Root Cause Diagnostic Step Fix
Display index wraps from 16 to 1 unexpectedly Counter preset/reset not configured Open B01 properties in Soft Comfort Set On = 1, Set Off = 16
Pressing C↑ advances index by more than 1 Cursor key not configured as edge-triggered Inspect block properties; add a pulse relay Tick "Edge" or insert a pulse relay between C↑ and the counter
Display "Input" field does not change for one index Wire mis-label or off-by-one wiring defect (the failure mode the article’s anecdote describes) Compare wireman’s terminal label to the field conductor, continuity test Re-terminate the offending conductor and update the as-built drawing
Force ON pulse does not energise the physical output Production logic OR latch not wired, or output relay failed Monitor B36 output in online mode; check the relay with a hand-held tester Verify the OR gate wiring in B36; replace the relay module
All forced outputs drop on the next scan SR latch has a higher-priority Reset from the program Inspect the Reset input of the affected B06 … B17 block Remove the spurious Reset or qualify it with a test-mode flag
Trend view shows flat-line / no trace on TDE Firmware revision < FS:03 on the TDE Check device label: ES 03 is required for trend drawing Update firmware via SD card; consult the LOGO! 8 firmware release notes
Status page "AI" missing analog channel 5 AI5 / AI6 / AI7 / AI8 are usable only when the on-board analog inputs are enabled in the project In Soft Comfort: File → Properties → AI configuration Tick AI5, AI6, AI7, AI8 if the hardware supports them
Test program does not run, display shows "No program" Wrong slot for the SD card, or program is for a different base module Verify the .lsc file matches the target order number Re-export from Soft Comfort with the correct device selected

Field Notes, Safety, and Common Wiring Defects

The anecdote that prompted this test program is worth recording for the next field engineer who has to chase a phantom fault:

The wireman had two conductors that needed labels "10" and "11". The heat-shrink sleeve printer had run out of "1" characters, so conductor 10 received a "10" sleeve (the "1" came from the "10" sleeve, which had a spare) and conductor 11 received a "0" sleeve (the leading "1" of the "11" sleeve had fallen off). At the cabinet, two conductors carried identical "0" labels; the wireman wired them in at random and got a 50% chance of being correct. The swap of I10 and I11 was undetected for two cycles of bench testing because the production logic happened to tolerate the inversion.

Defects of this type are statistically inevitable on a long loom. The defences are layered:

  1. Unique terminal-side labels: use printed ferrule markers (e.g. Weidmüller MultiCard or Phoenix PMC) rather than hand-written heat-shrink sleeves, so the leading character cannot fall off.
  2. Continuity test at the cabinet: with the field devices disconnected, ring out every conductor from the field terminal back to the LOGO! terminal before applying power.
  3. The test program: even when the loom is "fully" tested, run the test program as part of the FAT. The 30 seconds it takes to step through I1 … I16 catches the residual 1% that the continuity tester misses (e.g. crossed terminals on a multi-pole connector, a contactor coil wired to the wrong auxiliary).
  4. As-built drawing: mark up the drawing with the conductor identification that was actually used on site. The wireman’s labels are a contract, not an aspiration.
Functional safety caveat: The test program described here is for normal I/O. It must not be used on LOGO! modules in safety-related applications (LOGO! 8 with the "S" suffix, e.g. 6ED1052-1MD08-0BA1S, used with the LOGO! CMR safety relay). Safety I/O is validated with the dedicated CMR configuration tool, not a generic diagnostic program. See the LOGO! 8 system manual for the boundaries of the standard and CMR variants.

Commissioning time budget

For a 16-input, 12-output configuration, the time required to step through every I/O with the test program is roughly 90 seconds (≈ 3 seconds per index plus 5 seconds of meter reading). Add a 10-minute setup block to load the program and clear the SR latches. Total budget: 15 minutes. This is the right order of magnitude compared to chasing a single mis-wired conductor for half a day.

Re-using the program across projects

Save the FBD as a template (.lsc) and re-use it across cabinets by changing the I/O addressing and re-compiling. The block list (B01 … B37) is generic — only the field-side wire numbers change between projects. Store the template in a version-controlled library (e.g. a Git LFS repo) so that the test program evolves with the LOGO! Soft Comfort release rather than being a one-off artifact.

Frequently Asked Questions

How do I view live digital and analog I/O on a LOGO! 8 without writing a program?

From the date/time screen press ESC, then press the Down cursor key until the clock symbol is shown, then press Left/Right to cycle through DI, DQ, AI, AQ and Marker pages. On a TDE, press OK on an analog value to enter the trend view (firmware FS:03 or later required).

What is the I/O numbering when a DM8 expansion is attached to a LOGO! 8 base?

The base occupies I1–I8 and Q1–Q4; the first DM8 expansion occupies I9–I16 and Q5–Q12. Analog inputs AI1–AI8 remain on the base; further analog channels AI9 onward require an AM2 module in the expansion slot.

Can the test program force an output high while the LOGO! is in RUN?

Yes. The SR latches in B06–B17 are OR’d with the production logic at the output terminal block (B36), so a latched test state overrides the running program until it is reset from the front panel or the controller is restarted with the SR latches cleared.

What happens if the expansion module loses communication during the test?

LOGO! 8 raises the diagnostic flag M25 (expansion bus error) and the input states for I9–I16 freeze at zero. The test program will report 0 for every index > 8. Check the expansion ribbon cable, the 24 V supply to the DM8, and the seating of the module on the bus connector.

How do I prevent the test program from being used in production?

Keep the test program as a separate .lsc file and never merge it with the production project. If the test program must live in the same file, gate all SR latches behind a “test mode" digital input that is wired to a key switch on the cabinet door, so production cannot energise the forcing logic without mechanical access.

Back to blog