1. Overview: Software Backlight Control on the LOGO! TDE
The Siemens LOGO! Text Display External (TDE) provides a six-line LCD with tri-color backlight (white, amber/yellow, and red). Beyond manual brightness and contrast adjustments made through the TDE keypad, the LOGO! 8 base module allows the program to drive the backlight directly through a set of reserved system marker flags (M25–M31). This technique is essential for any application that requires the display color to follow process state — alarm conditions, day/night operation, standby modes, or operator-presence indication — without using a physical key sequence.
Eight of the sixty-four digital marker flags in a LOGO! 8 controller are reserved by the firmware. The first reserved flag, M8, is the startup flag, which is high for exactly one program cycle after power-on or run/stop transition and is then released to user code. The remaining seven reserved flags — M25, M26, M27, M28, M29, M30, and M31 — are dedicated to display and message-text control on the LOGO! on-board display and the external TDE. This reference documents how to use them, the priority rules that govern simultaneous activation, and how to combine marker-driven backlight with TDE keystroke operation.
2. Hardware Reference: LOGO! Base Module and TDE
The TDE is connected to a LOGO! 8 base module (0BA8 standard or later) using the second interface on the right side of the controller. Two TDE variants are in common use:
| Article Number | Description | Display Lines × Characters | Backlight Colors |
|---|---|---|---|
| 6ED1055-1HB00-0BA2 | LOGO! TDE, monochrome, 6 lines | 6 × 20 | White, amber, red |
| 6ED1055-1MH00-0BA2 | LOGO! TDE, monochrome (later revision) | 6 × 20 | White, amber, red |
The TDE has no program storage of its own; the program executes in the LOGO! base module and is mirrored to the TDE for display. Backlight is therefore a property of the LOGO! application, not of the TDE firmware. Setting the brightness in programming mode is done on the TDE itself (refer to the Siemens LOGO! 8 system manual, section "Setting the display contrast and backlight choice"). Color and on/off control, however, is marker-driven from the LOGO! program.
3. System Marker Map: M8, M25–M31 Reserved Functions
The LOGO! provides 64 digital markers, M1 through M64. Of these, 56 are free for the user, and the following eight are reserved for system functions:
| Marker | Function | Scope | Retention |
|---|---|---|---|
| M8 | Startup flag — high for the first scan cycle | LOGO! base | Non-retentive, automatic reset |
| M25 | White backlight enable | LOGO! on-board display | Program controlled |
| M26 | White backlight enable | TDE | Program controlled |
| M27 | Character set switch in message texts | LOGO! and TDE message texts | Program controlled |
| M28 | Amber backlight enable | LOGO! on-board display | Program controlled |
| M29 | Red backlight enable | LOGO! on-board display | Program controlled |
| M30 | Yellow/amber backlight enable | TDE | Program controlled |
| M31 | Red backlight enable | TDE | Program controlled |
M25 and M26 perform the same logical function (white backlight) but address different physical displays. The same applies to M28/M30 (amber/yellow) and M29/M31 (red). When the LOGO! is used without a TDE, the M25/M28/M29 pair is the active set. With a TDE attached, M26/M30/M31 are the active set. The other pair is silently ignored by the firmware.
Do not write to M8 in normal operation — it is forced by the system during the first scan and is intended as a one-shot pulse to initialize retentive data, run a startup sequence, or set a default backlight color after a power cycle.
4. Backlight Color and Priority Matrix
Because the firmware allows white, amber, and red to be requested simultaneously by separate markers, a priority resolver is implemented in the LOGO! display driver. The priority order is fixed and is independent of which physical display is used:
| Priority | Color | TDE Marker | LOGO! Marker |
|---|---|---|---|
| 1 (lowest) | White | M26 | M25 |
| 2 (medium) | Amber/Yellow | M30 | M28 |
| 3 (highest) | Red | M31 | M29 |
The resolver selects the highest-priority flag that is currently ON. If M26 (white) and M31 (red) are both 1, the display will illuminate red. If M26 and M30 are both 1, amber wins. If none of the three is 1, the display is in its default off state (no backlight).
The implication for the application program is significant: red can be used as an unmissable alarm indicator while amber handles warnings and white covers normal operation. Setting M31 (red) automatically overrides any other backlight request. The designer does not need to clear M26 and M30 when an alarm occurs; the resolver handles it.
5. Implementing Marker-Driven Backlight in LOGO!Soft Comfort
Open the program in LOGO!Soft Comfort V8.x or later. Marker outputs are added from the toolbar by selecting "Co" (Output) and entering the marker address in the connector dialog, or by selecting the marker list tool. Wire the desired driving condition to the M26, M30, and M31 outputs. A minimal three-state example for a tank-level application:
| Process State | Driving Condition | Marker Activated | Resulting TDE Color |
|---|---|---|---|
| Level OK, no alarm | Level between LL and HL (no warning, no alarm) | M26 = 1 | White |
| Warning (level above HL) | Analog input I7 > 70 % (warning threshold) | M30 = 1 | Amber |
| Alarm (level above HH) | Analog input I7 > 90 % (high-high threshold) | M31 = 1 | Red (overrides amber) |
Typical FBD code in the LOGO!Soft Comfort editor:
Network 1: White (TDE)
[B001: Threshold switch, ON when AI1 between 20% and 70%] --> M26
Network 2: Amber warning (TDE)
[B002: Threshold switch, ON when AI1 > 70%] --> M30
Network 3: Red alarm (TDE)
[B003: Threshold switch, ON when AI1 > 90%] --> M31
Network 4: Optional latch so alarm stays red until ACK
[B003 Q] --> [RS-FlipFlop B004, Set]
[I1 cursor-up key as acknowledge] --> [B004, Reset]
[B004 Q] --> M31
The output connectors M25–M31 appear in the program as ordinary digital outputs. The TDE color changes within one display refresh cycle (typically 100–250 ms) of the marker going high. There is no fading; the transition is instantaneous.
6. Keystroke Override Logic (OR with Cursor Keys)
When M25 or M26 is driven by the program, the TDE/LOGO! display firmware no longer responds to its own keypad for backlight control. The user cannot toggle the backlight manually; whatever the program requests is what the display shows. This is the correct behavior for fully automated color schemes, but it is undesirable in mixed-use installations where operators also want to wake up the display with a key press.
The standard solution is to OR the program-driven backlight request with the cursor keys (F1, F2, F3, F4, ESC, OK, ▲, ▼, ◄, ►), or with a subset of them, before assigning the result to M26. This way the display is illuminated whenever either the program requests it OR the operator presses a key.
Network 1: TDE white backlight
[B001: Program request, e.g. normal operation] --\
[OR-gate B010] --> M26
[I1: TDE cursor-up key] --/
Network 2: TDE red backlight (alarm takes priority)
[B011: Alarm latch] --> M31
Wiring the four cursor keys to the OR gate gives a "press any key to wake the display" behavior. For a quiet installation where the user only wants the ESC and OK keys to wake the display, wire those two I-connector inputs to the OR gate and leave the cursor keys disconnected.
7. Timer-Based Automatic Shutoff
For battery- or solar-powered installations, leaving the TDE backlight on continuously is unacceptable. A timer block (On-delay B004, or Off-delay B005) inserted between the wakeup source and M26 gives an automatic shutoff after a configurable interval.
Network 1: White backlight with 30-second auto-off
[I1: TDE cursor-up key] --> [On-delay B020, 30 s] --> M26
[B001: Program request] --------------------------> M26 (latched, never times out)
Network 2: Reset B020 after key release is handled inside the timer block
A more common pattern is to use the OR gate from section 6 and put the timer only on the key path, so that program-driven white backlight remains active for as long as the application requires it (e.g. while the operator is logged in) but a stray key press lights the display for only 30 s before going dark again.
Network 1:
[B001 program request] --\
[OR B010] --> M26
[I1 key --> On-delay 30s] --/
Network 2: also reset the timer when the program turns the request off,
so the display goes dark immediately at the end of a session:
[NOT B001] --> [Reset input of B020]
8. Character Set Switching (M27) in Message Texts
M27 controls which character set is rendered inside a message text on the LOGO! and the TDE. The LOGO! 8 system supports two character sets (typically Latin-1 / Western European and Cyrillic / Eastern European, depending on the firmware build). Driving M27 = 0 selects character set A; M27 = 1 selects character set B. The bit is read on every display refresh of the message text, so the operator can see the text change in real time if the program toggles M27.
Use M27 sparingly: it is intended for installations that must display text in two languages or two alphabets depending on operator selection. There is no priority conflict with M25–M31; the character set flag and the backlight flags are independent. Both can be set simultaneously without interaction.
9. Commissioning, Verification, and Online Test
Follow this sequence when bringing up a marker-driven backlight application for the first time:
- Download the program to the LOGO! base module using LOGO!Soft Comfort (Ethernet or USB cable, depending on the base module variant).
- Set the TDE to RUN. Verify that the on-board LOGO! display shows the expected startup state and that M8 was high for exactly one cycle after entering RUN (use the online monitor in LOGO!Soft Comfort: Tools → Online Test, enable status display on the editor).
- Force M26 = 1 in the Online Test panel. The TDE should illuminate white within 250 ms.
- Force M30 = 1. The TDE should change from white to amber. Force M26 = 0 at the same time to confirm the resolver selects amber when white is dropped.
- Force M31 = 1 with M30 and M26 also 1. The TDE should display red. Drop M31 and confirm the display returns to amber (the next-highest priority active flag).
- Clear all of M26, M30, M31. The TDE backlight should be off.
- Press a TDE cursor key. The display should not wake up if M26 is driven by the program. To verify the OR-gate fix, add a cursor-key input to the OR gate feeding M26, redownload, and confirm that the key press now wakes the display.
- Adjust brightness and contrast on the TDE itself using the menu path Settings → Display → Brightness/Contrast as described in the LOGO! 8 system manual on Siemens Industry Online Support. The marker-driven color selection is independent of the brightness level; the brightness setting multiplies the selected color.
10. Troubleshooting Matrix
| Symptom | Probable Cause | Diagnostic | Remediation |
|---|---|---|---|
| Display stays white, never goes red on alarm | Alarm output wired to M26 (white) instead of M31 (red); M26 is latched and overrides color change | Online Test: inspect M26, M30, M31 during alarm | Move alarm driving network to M31 |
| Display is white even though M30 is high | M26 is also high; white has lowest priority, so amber never wins | Check upstream of M26 | Clear M26 when M30 is required to display, or restructure to use a single M-flag for each color |
| TDE backlight on, but TDE keys no longer wake the display | M25 or M26 driven unconditionally by the program; keystroke suppression is active | Confirm M26 Q-bit in Online Test | Add OR gate with cursor-key inputs feeding M26 as in section 6 |
| Display does not switch off when expected | OR gate input remains latched; M26 follows a set-dominant RS block with no reset condition | Trace M26 driver in Online Test | Add a definite off condition (timer, program stop, or operator logout) to the OR gate inputs |
| Message text appears as boxes / wrong characters | M27 character-set bit in unexpected state, or message text was entered in set A while firmware expects set B | Check M27 in Online Test; verify message text entry in LOGO!Soft Comfort | Hold M27 at 0 (or 1) consistently; re-enter message text in the matching character set |
| Backlight color correct on LOGO! base display, wrong on TDE | Markers M25/M28/M29 used (on-board display set) instead of M26/M30/M31 (TDE set) | Verify which display the project targets | Substitute M25→M26, M28→M30, M29→M31 when TDE is present |
| M8 stays high and never goes low | User code is writing to M8 inside the program, which the firmware only forces during the first cycle | Search program for M8 references | Remove M8 from the program; use M8 only as an input (startup pulse), never as an output |
11. Field-Proven Design Notes
The marker-driven backlight technique is one of the most reliable HMI patterns in the LOGO! ecosystem because it requires no communication, no driver, and no additional wiring — just one bit per color. Three field-proven practices keep this technique robust in production:
- One color per state, never overlap. Although the priority resolver handles overlap, the program becomes very hard to debug when multiple M-flags are simultaneously high. Drive only one of M26/M30/M31 at a time; let the priority resolver handle the rare case where a brief overlap occurs during a state transition.
- Pair red with operator acknowledgment. Drive M31 from a set-dominant RS block whose reset is an operator action (cursor key, function key, or remote input). Without an explicit acknowledgment, a momentary alarm event will paint the entire TDE red indefinitely, which loses its alarm meaning.
- Document the color scheme on the cabinet. Print a small label on the enclosure door: "White = OK, Amber = Warning, Red = Alarm — Acknowledge with OK." Without it, the operator has no way to know that the display color is meaningful and not decorative.
For multi-page message texts on the TDE, the color selected by M25–M31 persists across all pages until the markers change. This is intentional and means a single alarm state will color every message text red until the alarm is cleared, including diagnostic and trend pages the operator may scroll to during the event.
Which marker flag controls the TDE backlight color?
M26 controls white, M30 controls amber/yellow, and M31 controls red on the LOGO! TDE. The corresponding on-board LOGO! display uses M25 (white), M28 (amber), and M29 (red). When a TDE is connected, the firmware follows the TDE set; the on-board display set is ignored.
What happens if I set two backlight colors at the same time?
The LOGO! firmware applies a fixed priority resolver: white is the lowest priority, amber is medium, and red is the highest. If M26 and M31 are both 1, the TDE displays red. The application does not need to clear the lower-priority flags; the resolver selects the highest active color automatically.
Why do the TDE cursor keys stop waking the display after I add a backlight marker to my program?
Driving M25 or M26 from the program disables the firmware's keystroke wakeup feature, because the backlight is now under program control. To restore key wakeup, OR the cursor-key inputs with the program-driven backlight request before assigning the result to M26. Red and amber markers (M30, M31) do not suppress keystroke wakeup; only the white markers do.
Can I dim the TDE backlight from the program?
No. Brightness and contrast are hardware settings on the TDE itself, adjustable through the on-device menu Settings → Display → Brightness/Contrast as documented in the Siemens LOGO! 8 system manual. The marker flags only switch the color on or off; they do not set a PWM duty cycle or brightness level. To change brightness at runtime, use a User-Defined Function (UDF) that walks an operator through the menu, or replace the TDE with a Siemens HMI that supports software dimming.
What does M27 do, and can I use it with M25–M31 at the same time?
M27 selects between two character sets inside message texts (set A when M27 = 0, set B when M27 = 1), typically used to switch between Latin and Cyrillic alphabets. M27 is independent of M25–M31; you can set the backlight color and the character set simultaneously without any priority interaction between the two functions.