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.
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-replacestream 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).
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.
- Set the PC Ethernet to the same subnet as the sensor (default
192.168.0.10on the VISOR V10 with mask255.255.255.0). - Open a modern browser (Chrome / Edge / Firefox) and navigate to:
-
http://192.168.0.10/– SensoPart Web UI (login:admin/adminby 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.
-
- 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.
- 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.
- In the TIA Portal project tree, expand HMI > Screens and open the target screen.
- Drag the HTML browser control from the toolbox onto the screen.
- 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.
-
- From a button on the screen, write the new URL into the tag. The browser will load the single JPEG. Avoid adding a JavaScript
setIntervalon the page — the Comfort browser will leak timers and stall the RT. - 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:
- Re-target the TIA Portal device from TP1200 Comfort to MTP1200 Unified Comfort (right-click the HMI device > Change device / type).
- Replace the legacy HTML browser control with a Web Control (Unified).
- 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 JavaScriptsetIntervalrefresher (the Chromium runtime is robust against this). - Re-compile with WinCC Unified (TIA V17 or later) and download to the new panel.
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.
- 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.
- 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
.jpgupload (multipart form) to a known DB area. - 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.
- 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:
- 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).
- Verify the camera is accessible from a workstation browser at
http://<camera-IP>/mjpg/video.mjpgorhttp://<camera-IP>/video.mjpg. - 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.
- On the VISOR V10: Settings > Interfaces > FTP > enable FTP server, set user/password, point to a target share (or use the internal SD card).
- 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.
- 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:
- The HMI starts in runtime without logging "Browser control: not supported".
- The image loads within 2 seconds of the trigger (button or job event).
- Repeatedly pressing the trigger (50× in a row) does not freeze the HMI; panel response time remains < 1 s.
- Network analyzer (Wireshark) shows one HTTP GET per trigger, not a flood of GETs.
- The PLC logs (if used) confirm a 200 OK response from the sensor for every fetch.
- 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:
- On the TP1200, open Control Panel > OP > Diagnostics / Settings.
- Set Browser Trace to On and reproduce the issue.
- 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.
- 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.