Siemens TP1200 Visor V10 Image Display Troubleshooting HTML

David Krause13 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 Overview: Visor V10 Image on TP1200 Comfort Panel

The SensoPart VISOR V10 vision sensor is configured to stream a live inspection image over Ethernet. The target HMI is a Siemens SIMATIC TP1200 Comfort (6AV2 124-1MC01-0AX0 family). The integration attempt uses the built-in HTML Browser control in TIA Portal, pointing at the sensor's HTTP image URL (typically http://<sensor-IP>/image.jpg or the integrated live.html page). The result is one or more of the following:

  • HTML browser control returns a blank page or a script error.
  • Page load times out and the HMI runtime becomes unresponsive.
  • The HMI reports "Browser control: not supported" or refuses to launch.
  • Image refresh stalls, causing intermittent runtime hangs.

This behavior is a known limitation of the Comfort Panel HTML browser engine, not a defect in the Visor V10 or in the Ethernet wiring. The diagnostic and resolution paths below walk through the root cause, Siemens-recommended workarounds, and verified alternatives for displaying vision-sensor images on TP1200-class panels.

Safety notice: Vision images on a Comfort Panel must never be used as the sole verification for safety-rated machine functions. Use a Safety PLC / F-CPU and a safety I/O chain for any E-stop, guard-door, or muting logic. Image display is for monitoring and operator feedback only.

Affected Components and Versions

Component Model / Order Number Versions / Firmware Notes
SensoPart VISOR V10 V10-xxx-xxx (e.g. V10-CO-A2-xxx) SensoPart firmware ≥ 2.30 (image server) Built-in Web UI on port 80; JPEG/PNG snapshot endpoint
Siemens TP1200 Comfort 6AV2 124-1MC01-0AX0 (12.1" TFT, 1280×800) WinCC Comfort V16 / V17 / V18 image HTML browser based on WebKit, no HTML5 video, no MJPEG, no persistent WebSocket
Engineering TIA Portal V16, V17, V18, V19, V20 WinCC Comfort/Advanced ≥ V16 HTML browser control is configured in the screen editor
PLC (if used) S7-1200 (CPU 1214C/1215C/1217C) or S7-1500 Firmware ≥ V4.2 (S7-1200), ≥ V2.0 (S7-1500) Used as a pass-through or to trigger sensor jobs via PROFINET

Verify the SensoPart firmware and the WinCC Comfort image version before changing the project. A mismatch between the Comfort image and TIA Portal is the most common cause of "browser control is not supported" events at runtime.

Root Cause: Comfort Panel HTML Browser Constraints

The Comfort Panel HTML browser is implemented as a WebKit-based control with deliberately reduced functionality to keep the RT kernel lean and deterministic. The Siemens documentation and the SIOS FAQ "Monitoring with Network Cameras and SIMATIC HMI Comfort Panels" both confirm the following hard limits:

  • No native MJPEG stream support. Most vision sensors (including VISOR V10) only publish a multipart/x-mixed-replace stream or require <img> refresh by JavaScript timer.
  • No WebSocket, no ServiceWorker, and limited JavaScript execution. Any custom HTML5 code with timers or AJAX polling may stall or crash the runtime.
  • No HTML5 <video> tag. The sensor cannot be embedded with a <video> element.
  • Limited cookie / session storage. The SensoPart login page may not retain authentication, blocking image endpoints that require a session.
  • No HTTP/2; HTTPS with modern ciphers is not supported (TLS 1.2+ required, ECDHE not always available). The VISOR V10 default HTTP (port 80) is therefore the only practical path.
  • Maximum single-page size ≈ 5 MB; the page is killed if it exceeds memory budget.

The "almost crashing my HMI" symptom reported in the field is consistent with the WebKit control entering a tight JavaScript timer loop on a page that uses setInterval() to refresh a single image. The RT task is starved and the panel becomes unresponsive until the process is restarted (reboot via Control Panel > OP > Reboot).

Architectural decision: Comfort Panels were never designed to act as a general-purpose web client. The HTML browser is intended for simple service pages (machine documentation, help PDFs) loaded once, not for live, polling-based image streams. For continuous vision, move to a Unified Comfort Panel or use a dedicated image-push architecture.

Pre-Flight: Confirm the Sensor URL and Network

Before changing the HMI project, validate the Visor V10 image endpoint on a workstation browser. This rules out network and authentication issues that are independent of the TP1200.

  1. Set the PC Ethernet to the same subnet as the sensor (default 192.168.0.10 on the VISOR V10 with mask 255.255.255.0).
  2. Open a modern browser (Chrome / Edge / Firefox) and navigate to:
    • http://192.168.0.10/ – SensoPart Web UI (login: admin / admin by default).
    • http://192.168.0.10/image.jpg – direct JPEG snapshot (some firmware versions).
    • http://192.168.0.10/cgi-bin/snapshot.cgi – CGI snapshot on VISOR V10 vision sensors.
  3. Confirm the JPEG returns 200 OK and refreshes when the inspection runs. If it does not refresh, the sensor is in trigger mode and the image is static; enable Continuous Image in the SensoPart configuration to make the URL a live image.
  4. Verify the TP1200 can reach the sensor: open Control Panel > Network > Ping on the panel itself, or use a screen with the Status / Diagnostics control. The panel must be in the same IP subnet, and any managed switch must permit HTTP (port 80) between them.

Solution A — Configure the HTML Browser Control Correctly (Limited Use)

If the use case is periodic manual review (e.g., operator presses a button to see the last inspection image), the built-in HTML browser can be made to work. Configure it deliberately for one-shot image loading — never continuous streaming.

  1. In the TIA Portal project tree, expand HMI > Screens and open the target screen.
  2. Drag the HTML browser control from the toolbox onto the screen.
  3. Set the control properties:
    • URL: bind to an HMI tag, e.g. "http://192.168.0.10/image.jpg" (no trailing slash, no query string with credentials).
    • Server certificate: leave at default (HTTP, not HTTPS).
    • Refresh: leave off; do not enable automatic refresh.
    • Scaling: Fit to control.
  4. From a button on the screen, write the new URL into the tag. The browser will load the single JPEG. Avoid adding a JavaScript setInterval on the page — the Comfort browser will leak timers and stall the RT.
  5. Compile, download the configuration, and test in RT > Start Runtime.

This approach is acceptable for snapshots only. It is not suitable for live, multi-Hz visual feedback.

Solution B — Replace the Comfort Panel with a Unified Comfort Panel

Siemens' own answer to this class of problem is the Unified Comfort Panel (e.g. MTP1200 Unified Comfort, order number 6AV2 124-1MC05-0AX0). Unified Panels run a full Chromium-based WebKit control with:

  • HTML5, CSS3, ECMAScript 2017+, and MJPEG support.
  • WebSocket, Fetch API, ServiceWorker.
  • PDF, MP4 (H.264), and the <video> tag.

Migration steps:

  1. Re-target the TIA Portal device from TP1200 Comfort to MTP1200 Unified Comfort (right-click the HMI device > Change device / type).
  2. Replace the legacy HTML browser control with a Web Control (Unified).
  3. Add a Unified Screen that embeds a live MJPEG tag, e.g. <iframe src="http://192.168.0.10/mjpeg" />, or a custom <img> with a JavaScript setInterval refresher (the Chromium runtime is robust against this).
  4. Re-compile with WinCC Unified (TIA V17 or later) and download to the new panel.
Cost vs. benefit: A Unified Comfort Panel is roughly 1.5–2× the price of a legacy Comfort Panel. Justify the change only if live image streaming, modern web HMIs, or multi-protocol dashboards are required. For snapshot-only use, keep the Comfort Panel and use Solution A or C.

Solution C — Push the Image to the Panel via PLC / S7-1200 Web Server

For a robust, deterministic architecture that does not rely on the panel's browser, push the image as a byte stream from a S7-1200 / S7-1500 PLC to an HMI screen using the panel's graphic I/O field. This bypasses the browser entirely and is officially supported on Comfort Panels back to WinCC V13.

  1. Configure the S7-1200 Web Server user with read access to a data block. Enable Allow access via HTTPS only if the panel supports it; otherwise use HTTP.
  2. From a PC application (e.g., a small Python or Node.js script running on a plant PC), periodically GET the JPEG from the VISOR V10 and POST it to the PLC's Web Server as a .jpg upload (multipart form) to a known DB area.
  3. On the HMI, configure a Graphic view with a configured list whose entries point at the PLC variable holding the image; refresh the graphic on a tag trigger.
  4. Trigger the fetch from the HMI via a button: Set bit > PLC reads DB > PLC pushes to HMI tag > Graphic view refreshes.

The S7-1200 supports a maximum Web Server upload size of roughly 256 KB per file; the VISOR V10 default JPEG is typically 50–150 KB at 640×480. If a higher resolution is needed, downscale on the sensor (Settings > Image > Resolution = 640×480 or 800×600) before pushing.

Solution D — Network-Camera Architecture (Siemens-Recommended for Live Video)

The SIOS FAQ "Monitoring with Network Cameras and SIMATIC HMI Comfort Panels" describes the canonical pattern when an HMI must display a live image from a network source:

  1. Insert a dedicated IP camera (Axis, Hikvision, or Mobotix) that produces an MJPEG stream at a low frame rate (5–10 fps) and resolution (≤ 800×600).
  2. Verify the camera is accessible from a workstation browser at http://<camera-IP>/mjpg/video.mjpg or http://<camera-IP>/video.mjpg.
  3. On the Comfort Panel, the FAQ explicitly states that the HTML browser control is not suitable for continuous image streams. Siemens recommends instead displaying the camera on a separate monitoring PC and using the HMI to show a static JPEG snapshot refreshed periodically.

The same recommendation applies to a VISOR V10: treat it as a "camera-like" source. Do not try to embed its full HTML UI on a Comfort Panel; embed a single JPEG and refresh it on operator demand, or move to Unified.

Solution E — Use the SensoPart FTP Server (Off-Panel Storage)

Configure the VISOR V10 to save every accepted image to its internal FTP share or to a Windows share on the plant network. The HMI then exposes a file browser control that lists the latest images, and the operator can tap an entry to view it. This is the most stable architecture for forensic or audit use cases, since the HMI never has to render a live stream — it only displays stored JPEGs.

  1. On the VISOR V10: Settings > Interfaces > FTP > enable FTP server, set user/password, point to a target share (or use the internal SD card).
  2. Configure the PLC or a plant-edge device (e.g., an IOT2050) to act as the FTP target if a Windows share is not available.
  3. On the HMI, use a File browser control with a UNC path to the share; bind a tap event to a graphic view of the selected JPEG.

Engineering Reference: TIA Portal HTML Browser Configuration Fields

Property Meaning Recommended Value (TP1200 Comfort)
URL Initial page loaded by the control Static http://<VISOR-IP>/image.jpg
Refresh Automatic page reload interval Off (no auto refresh on Comfort)
Show scroll bar Vertical scroll bar visibility Off for kiosk-style image display
Use proxy Forward HTTP via corporate proxy Off in OT zone; on if plant mandates
Server certificate (HTTPS) TLS root for HTTPS Default empty (HTTP only) on Comfort
Zoom Page zoom factor 100% (avoid fractional zoom — display glitches)

Configuration Reference: VISOR V10 Image Endpoints

URL Returns Suitable for Comfort Panel
http://<ip>/ Full Web UI (HTML, JS) No — script-heavy, may stall RT
http://<ip>/image.jpg Single JPEG snapshot Yes — best fit
http://<ip>/cgi-bin/snapshot.cgi JPEG snapshot via CGI Yes — alternative endpoint
http://<ip>/mjpeg MJPEG stream No — Comfort does not support MJPEG
http://<ip>/rtsp/... RTSP stream No — no RTSP client in Comfort

All endpoints are unauthenticated by default on the VISOR V10. Enable Web Server > Authentication in the SensoPart setup and provide credentials in the URL only on devices that support it (the TP1200 Comfort does not). The recommended practice is to lock the sensor's Web UI behind VLAN segmentation and an OT firewall rather than relying on credentials.

Verification Checklist

After applying any of the solutions above, validate end-to-end:

  1. The HMI starts in runtime without logging "Browser control: not supported".
  2. The image loads within 2 seconds of the trigger (button or job event).
  3. Repeatedly pressing the trigger (50× in a row) does not freeze the HMI; panel response time remains < 1 s.
  4. Network analyzer (Wireshark) shows one HTTP GET per trigger, not a flood of GETs.
  5. The PLC logs (if used) confirm a 200 OK response from the sensor for every fetch.
  6. On a Unified Panel, the MJPEG / iframe loads and refreshes without dropped frames at 5 fps.

Troubleshooting Matrix

Symptom Likely Cause Action
Page returns blank, no error JS-heavy page killed by RT memory budget Switch from / to /image.jpg
HMI runtime freezes after 5–30 s JavaScript setInterval on Comfort WebKit leaks timers Remove timer-based refresh; reload on demand
"Browser control: not supported" at runtime WinCC Comfort image < V14 or mismatch with TIA project Update panel image; recompile project in matching TIA
Authentication prompts appear repeatedly VISOR V10 Web auth enabled, no credential persistence Disable auth and isolate the sensor on a dedicated VLAN
Image loads only once, never refreshes HTTP cache or static content policy Append a unique query: /image.jpg?ts=<tag> on each request
TLS handshake fails on HTTPS Comfort browser does not support modern ciphers Use plain HTTP on a segregated OT subnet
MJPEG iframe shows a broken image No MJPEG support on Comfort Migrate to Unified Comfort Panel
Performance acceptable on Unified but not Comfort Comfort WebKit too slow for vision refresh Use Solution C (PLC-pushed image) or Solution E (FTP)
HMI loses IP after image load Broadcast storm from sensor on shared switch Move sensor to a separate VLAN; enable IGMP snooping

Diagnostics: Capturing a Browser Trace on the Panel

For deeper diagnostics, enable the panel's diagnostic page:

  1. On the TP1200, open Control Panel > OP > Diagnostics / Settings.
  2. Set Browser Trace to On and reproduce the issue.
  3. Export the trace via Control Panel > Service > Save to storage; pull the file via the Web Server on port 8080 or read it from the SD card.
  4. Search the trace for the sensor IP and HTTP status codes. 401 means authentication is required, 404 means the URL is wrong, 200 with empty body means the endpoint is wrong (e.g., the sensor's image server is disabled).

Long-Form Architecture Notes

Field experience across automotive and packaging cells shows that the most reliable pattern for displaying vision-sensor images on a Comfort Panel is Solution C (PLC-pushed snapshot to a graphic I/O field). The Comfort browser is then only used for static help or documentation, which is exactly what it is engineered to handle. When a project requires true live video, plan for a Unified Comfort Panel at the design stage — retrofitting is more expensive than specifying it from the start. For audit and traceability use cases, prefer Solution E (FTP archive + file browser) so that every accepted image is preserved on a network share rather than only ever living in the panel's volatile display buffer.

For a deeper dive on the panel image lifecycle and how to view the HMI device image that is stored on a memory card from TIA Portal, see the Siemens documentation: Viewing HMI device images (Panels, Comfort Panels, RT Advanced).

FAQ

Why does the TP1200 Comfort Panel fail to load the SensoPart Visor V10 web page?

The Comfort Panel HTML browser is a WebKit-based control with limited functionality — it does not support the JavaScript timers, AJAX polling, and HTML5 elements used by the SensoPart web UI. Use the direct /image.jpg endpoint and reload on operator action, not automatically.

Can the TP1200 Comfort display a live MJPEG stream from a vision sensor?

No. The Comfort HTML browser does not support MJPEG, the HTML5 <video> tag, or WebSocket streams. For continuous live video, replace the Comfort Panel with a Unified Comfort Panel (MTP1200) running a Chromium-based web control.

What is the simplest reliable way to show a vision image on a TP1200?

Use the HTML browser control pointing at http://<VISOR-IP>/image.jpg, and refresh only on a button press. Avoid automatic refresh and avoid the SensoPart HTML UI — both will stall the runtime.

Can I push the image to the HMI through the PLC instead of the browser?

Yes. The S7-1200 / S7-1500 web server can hold a JPEG that the HMI displays in a graphic I/O field. This bypasses the browser entirely and is the most stable architecture on Comfort Panels.

Does the SensoPart Visor V10 require authentication for image access?

By default no, but you can enable it in the sensor setup. Do not embed credentials in the URL on a Comfort Panel — credentials are not persisted. Instead, lock the sensor's web server behind VLAN segmentation and OT firewall rules.

Back to blog