Siemens LOGO! Web Editor Time Parameterization: BCD Format Guide

David Krause15 min read
HMI / SCADASiemensTroubleshooting
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

Problem: LOGO! Web Editor Shows Incorrect Time Values

When commissioning a Siemens LOGO! 8 series controller with the LOGO! Web Editor (LWE), engineers commonly encounter failures when attempting to view or edit weekly / annual timer parameters from the controller's on-board web server. Typical symptoms reported in the field include:

  • A configured 10:32 switch-on time displays as 69:06 (hh:mm) on the web page.
  • Entering a value in the input field appears to be rejected; the field clears on submit.
  • Changes written through the web page never reach the timer cam, even though the LOGO! acknowledges the write.
  • The "16#" prefix in the field cannot be re-typed by the user; the "#" character is silently dropped.

This article documents the root cause (BCD time encoding and LWE field interpretation), the VM memory layout for weekly timers, the step-by-step LWE configuration procedure, the three documented UI anomalies and their workarounds, and the verification steps required to confirm a working timer-cam web edit on a LOGO! BM.

Scope. This reference applies to the LOGO! 8 Base Module (BM) with on-board Ethernet (6ED1052-* series), programmed with LOGO! Soft Comfort V8.0 or later, and the LOGO! Web Editor (LWE) shipped as a plug-in / tool. Earlier LOGO! generations (0BA5, 0BA6, 0BA7) do not expose the same VM parameterization to the web server and cannot perform this edit.

Root Cause: BCD Time Encoding vs. Decimal Field Interpretation

The LOGO! stores time-of-day values (HH:MM) for weekly and annual timers as 16-bit BCD (Binary Coded Decimal) words. Each nibble of the word encodes a single decimal digit:

  • Bit 15..12 = tens of hours (0..2)
  • Bit 11..8 = units of hours (0..9)
  • Bit 7..4 = tens of minutes (0..5)
  • Bit 3..0 = units of minutes (0..9)

The 10:32 example used in field reports becomes 0x1032 in BCD. The LWE analog value field, when configured as a decimal "Scale Time (Base Minutes)" element, does not interpret the word as BCD; it treats the bit pattern as a plain unsigned 16-bit integer, so 0x1032 = 4146 decimal is divided by 60 and rendered as 69 h 06 m. The displayed 69:06 is therefore not a storage error, it is a display-layer error caused by selecting the wrong element type in the LWE project. The fix is to configure the LWE field as a raw Hex analog value so the bit pattern is displayed and edited directly as BCD HHMM.

LOGO! Time Data Format Reference

Before configuring the LWE inputs, the engineer must understand how the LOGO! encodes time internally and how the encoding interacts with each LWE element type.

BCD Time Encoding - Field Reference
Displayed Time BCD Word (hex) Unsigned 16-bit Decimal Decimal-as-Minutes Render
00:00 0x0000 0 00:00
09:00 0x0900 2304 38:24
10:32 0x1032 4146 69:06
12:00 0x1200 4608 76:48
15:45 0x1545 5445 90:45
23:59 0x2359 9049 150:49

The third column is the value the LOGO! actually stores in the VM word. The fourth column is what the LWE shows when the analog field is configured as "Scale Time (Base Minutes)" instead of as a raw Hex/BCD value. Selecting the wrong element type is the single most common cause of the time-display anomaly.

LOGO! Variable Memory Layout for Weekly Timer Cams

Each weekly timer block placed in the FBD / ladder program occupies a fixed block of VM (Variable Memory) address space. The LWE accesses these addresses through the parameter VM mapping configured in LOGO! Soft Comfort. The general layout for a single weekly timer cam is:

Weekly Timer Cam - VM Address Layout
VM Offset Function Data Width Encoding LWE Element Type
+0 Day mask (Mon..Sun) Byte 8-bit field (b0 = Mon ... b6 = Sun, b7 = unused) Eight separate bit-input controls
+1..+2 ON time (HH:MM) Word BCD Analog value, Hex format
+3..+4 OFF time (HH:MM) Word BCD Analog value, Hex format
+5 Cam enable flag Byte 0 = disabled, non-zero = enabled Bit / numeric control
Address base. The base address of the first weekly timer cam is project-specific and is determined by the order of the function blocks in the LOGO! program. Use Tools → Parameter VM Mapping in LOGO! Soft Comfort to display the exact start address of each timer block; the offsets above are added to that base.

The day-mask byte is the single most error-prone field. Although the underlying storage is one byte, the LWE does not provide a numeric byte input for "Mon, Tue, Wed..." directly; the engineer must use eight individual bit-input controls, one for each day, mapped to bit 0 through bit 6 of the day-mask byte.

Step-by-Step LWE Configuration Procedure

The following procedure produces a working web page that displays and edits one weekly timer cam. Repeat the steps for each additional cam.

  1. Compile the LOGO! program in LOGO! Soft Comfort. The web editor can only address function blocks that exist in the compiled program. The weekly timer block must be present, with at least one cam enabled in the block properties.
  2. Open the VM mapping. From the LOGO! Soft Comfort menu choose Tools → Parameter VM Mapping. Locate the weekly timer block; note the base VM address (e.g. VW 0 for the first cam) and the address range that follows. Enable the parameterization access for that range.
  3. Open the LWE project. Start Tools → LOGO! Web Editor (LWE). The project contains one default web page; open it for editing.
  4. Insert the day-mask input. Drag eight input-field elements onto the page. For each element, set the VM address to the day-mask byte plus the bit offset (e.g. VM 0.0 for Monday through VM 0.6 for Sunday). Set each element to a bit-input type with label "Mon", "Tue", ..., "Sun".
  5. Insert the ON time field. Drag an Input Field onto the page. Set the VM address to the ON-time word (e.g. VW 1 or VM 1 depending on LWE syntax). Set Element Type to Analog value, and configure the number base to Hex. Optionally set the display width to 4 hex digits and the user prompt to "On time (HHMM, BCD)".
  6. Insert the OFF time field. Repeat step 5 for the OFF-time word (e.g. VW 3).
  7. Insert the cam enable control. Add a bit-input or numeric field bound to the cam enable flag (offset +5). The enable flag must be high for the LOGO! to evaluate the cam.
  8. Compile and download the Web project. In LWE, choose Project → Transfer → Web Project. Select the target LOGO! BM by IP. LSC will upload the web project to the controller's flash and restart the on-board web server.
  9. Test from a browser. Open http://<LOGO!-IP>/. The login prompt appears if access protection is enabled; log in as the operator or administrator defined in LSC → Tools → Web Server Access.
Web project transfer. The LOGO! BM stores a single user web project. Uploading a new project overwrites the previous one. There is no on-board versioning; keep a backup of the LWE source file (*.lwe) in source control.

UI Behavior Anomalies and Documented Workarounds

The LWE runtime shipped with LOGO! 8 firmware 8.0 through 8.3 has three documented display/input anomalies. Each has a working workaround that does not require a firmware upgrade.

Anomaly 1: "16#" Prefix in the Display

The web page always shows the current analog value with the prefix 16#. This is the Siemens notation for a hexadecimal literal; it is added by the LWE rendering layer and is not part of the stored value. The user cannot type 16# into the field; the runtime strips the prefix on every refresh and re-applies it on display.

Anomaly 2: The "#" Character Is Rejected on Input

If the engineer attempts to type 16#900 to set 09:00, the field will silently drop the "#" character and submit the value 16900. This is the wrong value (0x421C in BCD, which is not a valid time). The workaround is to enter only the hex digits, without the 16# prefix: type 900 and press Enter. The runtime stores 0x0900 = 09:00 BCD.

Anomaly 3: The Field Appears Empty After Submit

After the user presses Enter or clicks Submit, the input field clears visually, and the page does not re-render the new value automatically. The value is in fact written to the LOGO!, but the display is not refreshed. To force a refresh, click anywhere outside the field, then click back into the field; the runtime reloads the current value from the LOGO! and the 16#900 prefix reappears. The submit therefore did work; the field just lies about it for one frame.

Browser tip. Use a full page reload (F5) as an alternative to the click-outside workaround. After F5 the page re-fetches the current VM state and all fields show the updated values with the 16# prefix.

Cam Enablement Prerequisite

Critical constraint: a weekly timer cam in the LOGO! program must be enabled in the FBD / ladder logic before any VM value change will be evaluated by the runtime. A disabled cam will accept new parameter values into VM (the web page write will not fault), but the LOGO! runtime will skip the cam and the digital output will not toggle.

To enable a cam:

  1. Open the LOGO! program in LOGO! Soft Comfort.
  2. Double-click the weekly timer block to open its properties.
  3. Open the Cam tab.
  4. Tick the checkbox on the leftmost column of the cam row to enable that specific cam.
  5. Save, compile, and download the program to the LOGO! BM.

The "enable" state is stored as a non-zero byte at the offset +5 of the cam's VM block. The web page can flip this byte to re-enable or re-disable the cam at runtime, but the runtime only evaluates the ON/OFF times when the enable flag is non-zero.

Real-Time Clock Limitation

The internal real-time clock (RTC) of the LOGO! BM cannot be set from a web page. The RTC is hardware-backed and is set through one of the following channels only:

  • LOGO! Soft Comfort → Tools → Set Clock (online).
  • The on-board LOGO! display (ESC → Set → Clock).
  • The LOGO! TD text display, if attached.
  • An NTP client (LOGO! 8.2 and later with the NTP feature unlocked).
  • A user program that writes the RTC using the synchronization function block.

Web-server requests to a VM address that happens to be read-only (or that maps to the RTC rather than to a user timer) will return the current value but will not accept a write. The LWE will display the value, the submit button will appear to work, and the field will revert to the original value on the next refresh. This is documented LOGO! behavior, not an LWE bug.

Verification Procedure

After configuring the LWE project and downloading it, run the following verification sequence before handing the system over to operations.

  1. Confirm the field reads back. Reload the web page in the browser. All three time fields (ON, OFF, day mask) must show their current VM value with the 16# prefix and the day checkboxes must reflect the day mask from the LOGO! program.
  2. Change a value. Enter a new ON time (e.g. 900 for 09:00) and press Enter. Click outside the field, then back into it. The field must show 16#0900.
  3. Read back from LSC. In LOGO! Soft Comfort choose Tools → PC → LOGO! (connect online), then Tools → Parameter VM Mapping → Read. The ON-time word must contain the new BCD value 0x0900.
  4. Watch the cam trigger. With the LOGO! TD or the on-board display attached, monitor the cam output. At the configured time, the output must switch according to the day mask. If the output does not switch, see the troubleshooting matrix below.
  5. Power-cycle test. Remove power from the LOGO! BM for at least 10 seconds, restore power, and re-read the VM mapping. The values entered from the web page must persist (the LOGO! retains VM across power cycles).

Troubleshooting Matrix

LWE Time-Editing Failures - Symptom, Cause, and Resolution
Symptom Likely Cause Resolution
Time shown as 69:06 instead of 10:32 Analog field set to "Scale Time (Base Minutes)" Change Element Type to "Analog value" and set number base to "Hex"
Field rejects the "#" character User typed "16#900" with the prefix Type the digits only (e.g. "900"); the prefix is display-only
Field clears to empty after pressing Enter Display refresh delay after submit Click outside the field or press F5; value is in fact written
VM word does not change after submit Read-only VM address; not in the parameter VM mapping Add the address to the parameter VM mapping in LSC and re-download
VM word changes but cam does not switch Cam disabled in FBD / ladder Enable the cam in the block properties and re-download the program
Day mask is ignored (cam fires every day) Day mask byte was overwritten as a numeric value, not as 8 individual bits Use eight separate bit-input controls in the LWE, one per bit of the day byte
Web page does not load (404) Web project not transferred, or wrong URL Re-transfer the LWE project; browse to http://<IP>/logo_host or the configured root
Login prompt loops Web server access protection enabled with unknown password Reset the LOGO! BM to factory defaults or reconfigure access in LSC
Realtime clock value reverts after page reload LOGO! internal RTC is read-only via web Use LSC, the on-board display, or an NTP client to set the RTC

Firmware and Software Compatibility

LOGO! Web Editor Time Parameterization - Compatibility Matrix
LOGO! BM Firmware LOGO! Soft Comfort LWE Version Weekly Timer VM Edit Notes
8.0 (initial) V8.0 8.0 Supported First generation with VM mapping in the web server
8.1 V8.1 8.1 Supported UI quirks around "16#" prefix documented in field reports
8.2 V8.2 8.2 Supported NTP client added (for RTC, not for VM)
8.3 V8.3 8.3 Supported Updated TLS, web server stability fixes
0BA7 and earlier V7.x n/a Not supported No VM parameterization exposed to the web server

For the latest firmware and Soft Comfort versions, the official catalog and manuals are at the Siemens LOGO! product page and the Siemens Industry Online Support portal. The exact FS-code-to-firmware-version mapping is documented in the LOGO! system manual under "Type designations and firmware versions".

Network and Access Configuration

Two LOGO! BM settings are required for the LWE page to load and accept writes:

  1. Web server access. By default the LOGO! 8 web server is enabled without authentication. To require a password, set a user name and password under Tools → Web Server Access in LSC, then transfer the access settings to the BM. Without this step, the engineer can read the page but may be blocked from writes.
  2. IP address and subnet. The LOGO! BM IP must be reachable from the browser. Default IP out of the box is 192.168.0.10 / 255.255.255.0 with no gateway. If the BM is in a different subnet, configure the IP from the on-board display (ESC → Set → Network) or push the IP from LSC over Ethernet.

For commissioning on a plant network, the recommended practice is to put the LOGO! BM on a private commissioning VLAN and to disable the web server in production unless it is required for operations.

Operational Tips

  • BCD entry discipline. Always enter exactly four hex digits for a time value. 0900 and 900 are equivalent inside the LOGO! (the leading zero is implicit), but the LWE field is more predictable when the engineer types four digits.
  • Verify the day mask byte, not the bit. If a single day fails, the cause is almost always the bit-input control for that day. Add a numeric field bound to the day-mask byte (decimal display) and check that the byte value is in the range 1..127 for at least one day set.
  • Reset the LOGO! if writes stop working. If a web write appears to succeed (field clears, no error) but the value does not change in LSC online read, the web server task may be stuck. Cycle power on the BM; the on-board web server reinitializes in 5..10 seconds.
  • Use a dedicated operator account. If the web page is exposed to operators, create a separate LWE user with write access to the time fields but not to the program parameters. The user-rights matrix is in LSC → Tools → Web Server Access.
  • Document the LWE source file. The web project is binary-compiled into the LOGO! BM and is not version-stamped. Store the *.lwe source alongside the LSC program in source control so that the on-board web project can be regenerated after a controller replacement.

FAQ

Can the LOGO! internal realtime clock be set from a web page?

No. The LOGO! BM realtime clock (RTC) is hardware-backed and can only be set from LOGO! Soft Comfort, the on-board display, the LOGO! TD, an NTP client (firmware V8.2 and later), or a user program. The LWE exposes user-program variables; the RTC is not in the VM mapping space and web writes to the RTC address will be silently rejected.

Why is a configured 10:32 displayed as 69:06 on the web page?

Because the LWE analog-value field, when set to "Scale Time (Base Minutes)", treats the stored 16-bit BCD word as a decimal count of minutes. 0x1032 = 4146 decimal minutes, which the LWE renders as 69 h 06 m. Set the field's number base to "Hex" so the value is interpreted as BCD HHMM and the time renders correctly.

Why does the input field appear empty after I press Enter?

The LWE runtime submits the new value to the LOGO! and clears the input box, but does not refresh the display until focus leaves the field. Click outside the field or press F5; the runtime reloads the current value from the LOGO! and the new "16#xxxx" prefix reappears. The write did succeed; the display is the liar.

Do I have to enable each cam in the LOGO! program before the web page can edit it?

Yes. A disabled cam accepts VM writes (no fault is raised) but the LOGO! runtime will not evaluate the cam, so the output will not toggle. Open the block properties, enable the cam in the Cam tab, save, compile, and re-download the program to the BM before commissioning the web edits.

Which LOGO! firmware and Soft Comfort versions support web editing of weekly timers?

LOGO! 8 Base Module (6ED1052-* series) firmware 8.0 and later, paired with LOGO! Soft Comfort V8.0 and later, exposes the weekly and annual timer VM mapping to the on-board web server. Earlier LOGO! generations (0BA5 / 0BA6 / 0BA7) do not have a parameterizable web server and cannot perform this edit.

Back to blog