Resolving TP1900 'No Default Printer' Error with HP M401dn

David Krause16 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

1. Problem Definition

A SIMATIC TP1900 Comfort Panel is configured to print shift reports, batch logs, alarm logs, and screenshot captures to an HP LaserJet Pro 400 M401dn. The customer requires the printer because it is the only network-capable laser printer physically available at the site. After the panel is powered up and the TIA Portal project is transferred, the runtime reports the following error string when a print job is dispatched:

No default printer

The error appears regardless of the printer language selected in the WinCC (TIA Portal) report configuration. The two print options exposed in the report designer — PCL Laser and PostScript — both fail with the same dialog. Adding :9100 to the IP address (raw TCP / direct port) does not change the outcome. Restart of the panel runtime and a project recompile do not resolve the error.

Engineering impact. The error is not a transient alarm. The HMI blocks the print job at the spooler level. All scheduled and event-triggered reports (alarm logging, tag logging, shift reports) silently fail. Operators may not notice the failure because the panel does not raise a follow-up alarm — a critical observability gap on a production line.

2. SIMATIC Comfort Panel Printing Architecture

The TP1900 Comfort is part of the second-generation SIMATIC HMI Comfort family (15-inch widescreen, 1280 × 800, 16 M colors). It runs Windows Embedded Standard 7 Professional (WES7P) or, on older firmware loads, Windows CE 6.0. Both operating systems host the WinCC Runtime Advanced print stack, which is a thin emulation of the Windows print spooler.

Three logical layers are involved when the panel sends a job to a network laser printer:

  1. WinCC print object (report designer, alarm log, tag log) — generates an EMF/PDF/PostScript intermediate stream and hands it to the OS.
  2. OS-level printer driver — translates the intermediate stream into the printer's native page description language (PCL5e, PCL6, PostScript 3) and submits it to the spooler.
  3. Network transport — Windows standard port (RAW on TCP/9100, LPR on TCP/515, or IPP on TCP/631) sends the stream to the printer's IP address.

The Comfort Panel ships with a closed set of OEM-supplied printer drivers in the panel image. The official Siemens knowledge base entry "Printers for SIMATIC HMI Panels" (Siemens Industry Online Support) enumerates the tested and released drivers per firmware load. Drivers for printers outside that list are not present in the panel image, so the spooler cannot instantiate a driver object and the runtime surfaces No default printer.

3. Root Cause Analysis

The M401dn in its factory-default firmware configuration exposes the following page description languages to the host:

  • HP PCL 5e
  • HP PCL 6
  • Direct PDF (v 1.7) printing
  • HP PostScript 3 emulation (optional, requires activation)

Per the Siemens Application Note "Printing with SIMATIC Comfort Panels" (Siemens Industry Online Support — Application Note): if a printer is not on the released printer list it must support the PostScript driver installed in the panel image. The Comfort image carries a generic Adobe PostScript 3 driver, not a per-model HP driver.

Two competing failure modes are therefore active on the TP1900 + M401dn combination:

  1. PCL Laser option — the panel does not contain an HP-specific PCL 5e/6 driver for the M401d series. The generic WinCE/WES7P PCL drivers shipped with the image target older HP LaserJet 4/5/4000/4200 generations, not the LaserJet Pro 400 architecture. The spooler cannot bind a driver and rejects the job.
  2. PostScript option — the panel does carry a generic PS3 driver, but the M401dn is delivered with the PS3 emulation feature disabled in firmware. The printer responds to the PS stream with a PJL error or discards the data silently, so no page is rendered. From the panel's perspective the printer is unreachable for the chosen PDL and the spooler reports the same dialog.

Adding :9100 forces raw TCP/9100 transport, which is correct for HP LaserJet devices (RAW is the recommended transport per the HP Jetdirect administration guide). The transport is therefore not the cause — the driver/PDL mismatch is.

4. HP LaserJet Pro 400 M401dn Technical Specifications

Parameter Value
HP part number CF278A (M401dn base)
Engine speed 35 ppm A4, 33 ppm Letter
Resolution 1200 × 1200 dpi (HP FastRes 1200)
Processor 800 MHz ARM
Memory 256 MB standard, non-expandable
Page description languages (default firmware) PCL 5e, PCL 6, PDF 1.7 direct
Optional PDL HP PostScript 3 emulation (firmware flag)
Network interface 10/100/1000 Ethernet (HP Jetdirect)
Supported network transports RAW (TCP/9100), LPR/LPD (TCP/515), IPP (TCP/631), mDNS, SNMPv3
Duplex Automatic, integrated
First page out (ready) < 8 s

Reference: HP Support — LaserJet Pro 400 M401dn datasheet.

5. Why "No Default Printer" Is the Specific Failure Code

The Comfort runtime emits No default printer in three distinct situations. Diagnosing the correct one prevents wasted effort on the wrong remediation path.

Underlying condition Distinguishing symptom Check
No printer is configured in the project (no print object has a default device) Error appears on every print, including the panel's own screenshot function WinCC project tree → Reports → Properties → Printer assignment
Printer object is configured but the driver name does not exist in the panel image Error appears immediately on job submission; panel does not contact the printer IP at all Capture an HMI trace with ProSave (log class "Printer")
Driver is present but the transport fails (wrong IP, wrong port, VLAN ACL, duplex mismatch) Driver initializes; panel sends SYN to printer; printer never responds; timeout after ~30 s Wireshark on switch SPAN port; ping from panel Control Panel → Network

On the M401dn, the reported error corresponds to the second row — the driver name is not bound — because the panel does not have a driver object that matches either the PCL 5e/6 emulation or the PS3 emulation of the M401d series. The LPR/RAW transport layer is functional; the spooler fails before opening the socket.

6. Solution Path A — Activate PostScript 3 on the M401dn and Use the Generic PS Driver

This is the path with the lowest hardware cost. The M401dn already contains the PS3 emulation code; it is shipped disabled. Activating it does not change the engine, only the language interpreter.

6.1 Activate PS3 on the printer

  1. Open the embedded HP Jetdirect web server at http://<printer-IP> from a service PC on the same VLAN.
  2. Navigate to Settings → Printing → Print Languages.
  3. Enable HP PostScript 3 Emulation and set the primary language to PostScript (Auto is acceptable but explicit is preferable for deterministic commissioning).
  4. Optionally raise the PS timeout to 60 s if the network is slow.
  5. Apply. The printer reboots the formatter (≈ 30 s).
  6. Verify by sending a test page: Settings → Reports → Demo Page. The page should print "PCL" or "PostScript" in the footer indicating the active PDL.

6.2 Configure the TIA Portal print object

  1. In the TIA Portal project tree, expand HMI → Reports → <ReportName> → Properties → Print.
  2. Set Printer type = PostScript printer.
  3. Set Connection = Network printer.
  4. Enter the printer IP (e.g., 192.168.10.42) without a port suffix — TIA Portal defaults to the standard PostScript port (9100) for PostScript printers.
  5. Compile the project (full rebuild) and transfer to the TP1900.
  6. On the panel, open Control Panel → Printers and confirm that a PostScript device named with the printer's IP is present and marked as default.
  7. Trigger a test print from the report editor (right-click → Print preview → Print).
Field caveat. Enabling PostScript 3 on the M401dn changes the default printer language. Existing drivers on other hosts (file servers, supervisor PCs) may need to be reconfigured. Coordinate with the IT team before flipping the PDL flag.

7. Solution Path B — Use a Printer on the Released List

When the customer's procurement cannot change the M401dn configuration (for example, the printer is shared with the office network and IT requires PCL), the only stable path is to swap the printer to a model on the Siemens released-printer list. The list is firmware-version-specific; the entry relevant to a TP1900 Comfort under TIA Portal V16/V17/V18 is summarised below.

Vendor Model PDL on Comfort Panel Notes
HP LaserJet 4250, 4350, P4015, P4515 PCL 5e / PCL 6 Legacy HP drivers in the panel image
HP LaserJet Enterprise M602, M604, M605 PCL 6 / PS 3 Generic PS driver; tested
HP LaserJet Pro M402dn, M404dn PS 3 (after PS activation) Drop-in successor to M401dn with PS enabled by default on "dn" variants from 2018 onward
Brother HL-L6300DW, HL-L6400DW PS 3 / PCL 6 Common budget substitution
Kyocera ECOSYS P3045dn, P3050dn, P3055dn PS 3 / PCL 6 / KPDL Industrial preferred
OKI B432, B512 PCL 6 / PS 3 Compact, low-cost

Reference: Siemens KB entry "Printers for SIMATIC HMI Panels" (Siemens Industry Online Support). The complete list is maintained per TIA Portal version; always consult the version matching the panel's runtime image.

8. Solution Path C — Network Print Sharing via a Host PC

If the printer cannot be reconfigured and cannot be replaced, the panel can be routed to a Windows print server that shares the M401dn as a queue. The Windows host owns the HP driver; the panel prints to the shared queue using the generic PS driver.

8.1 Share the printer on the host

  1. Install the HP universal driver (HP UPD PCL6 or PS) on the Windows host with the M401dn connected via Ethernet.
  2. Open Printer Properties → Sharing, enable sharing, set a share name of 8 characters or less (e.g., REPORT01). UNC paths longer than eight characters may fail on WinCC runtime.
  3. Set a fixed port to 9100 RAW for stability.
  4. Disable SMB1 on the host; enable SMB2 minimum. The Comfort runtime supports SMB2 only on WES7P; on Windows CE 6.0 it requires SMB1, which is a hard incompatibility and a separate failure case.

8.2 Configure the panel to print to the share

  1. On the TP1900, open Control Panel → Network and verify the host is reachable (ping the host IP).
  2. Open Control Panel → Printer and add a network printer with the UNC path \\<host-IP>\REPORT01.
  3. Select the generic PostScript driver.
  4. Mark the new printer as default.
  5. In the TIA Portal report, point the print object at the new UNC name rather than the raw IP.
Reliability note. A shared-queue path introduces a single point of failure (the Windows host). For 24/7 production lines, prefer Path A (PS3 activation on the M401dn) and avoid the host as a print relay.

9. Solution Path D — Script-Based Print with an Embedded PDF Generator

When the panel firmware exposes a programmable interface, the print job can be generated as a PDF on a USB stick or network share and printed asynchronously by a small service on the shop-floor PC. This decouples the panel from the printer.

  1. In the TIA Portal project, configure the report to use a PDF printer (an internal WinCC device that writes to a folder).
  2. Define the output path as \\<fs>\reports\<%ReportName%>_<%DateTime%.pdf.
  3. On a Windows service host, deploy a watchdog that watches the share and submits new PDFs to the M401dn's RAW socket on port 9100 using a small PowerShell script.
# PowerShell snippet to push a PDF to the M401dn over RAW/9100
$printer  = '192.168.10.42'
$port     = 9100
$pdfFile  = $args[0]
$bytes    = [System.IO.File]::ReadAllBytes($pdfFile)
$client   = New-Object System.Net.Sockets.TcpClient
$client.Connect($printer, $port)
$stream   = $client.GetStream()
$stream.Write($bytes, 0, $bytes.Length)
$stream.Flush()
$client.Close()

This path is operationally elegant but requires engineering effort to make the watchdog resilient (retry on TCP failure, dead-letter folder on repeated failure, syslog forwarding to the SCADA alarm log).

10. Network Port and Protocol Configuration Reference

Protocol TCP/UDP port Use case on TP1900 M401dn support
RAW (HP Jetdirect) TCP 9100 Recommended for PCL and PS direct Yes (default)
LPR/LPD TCP 515 Legacy LPR stacks on WinCE panels Yes
IPP TCP 631 Modern, requires IPP driver in image Yes
SMB/CIFS (print share) TCP 445 Path C — share on Windows host N/A (host shares the M401dn)
SNMPv3 UDP 161 Printer discovery, status polling Yes (read-only access typical)
PJL (job control) Embedded in 9100 stream Status readback from the printer Yes

Reference: HP Jetdirect — Administrator's Guide (chapter on supported protocols and port mappings).

11. Verification Procedure

After applying any of the four solution paths, run the following verification sequence before handing the line back to production.

  1. Connectivity check. From the TP1900 Control Panel open a command shell (if exposed) or use Start → Programs → Windows Explorer → Network. Ping the printer IP. Expected: < 5 ms on a /24 VLAN, no packet loss.
  2. Driver check. On the panel, Control Panel → Printers. The configured printer appears with a green check icon and the name "default". A yellow exclamation icon means the driver is missing — recheck the PDL setting.
  3. Test page from panel. In TIA Portal, HMI → Reports → <ReportName> → Print preview → Print. Expected: the page is rendered by the M401dn within 10 s and the panel returns to the report screen without dialog.
  4. Triggered report. Force a tag-log report (e.g., end of shift). Expected: the report prints automatically at the configured time without operator intervention.
  5. Alarm log print. Generate a non-ack alarm. Expected: the alarm log line prints to the M401dn in real time (when the alarm log is configured to print on event).
  6. Endurance check. Queue 50 consecutive print jobs from a script. Expected: zero dialogs, zero lost jobs, M401dn formatter not entering a PostScript error state (PS error on the M401dn is shown on the LCD as "49.XXXX PostScript error").
  7. Trace capture. Enable WinCC trace flags Printer and Spooler. Confirm trace lines: Job submitted → Driver bound → Socket opened → Bytes sent → Job completed. Any break in the chain is the failure point.

12. Troubleshooting Matrix

Symptom on TP1900 Likely root cause Diagnostic command / step Fix
"No default printer" on every job No driver bound / printer not configured Control Panel → Printers Re-add printer with correct driver; mark default
"No default printer" only for PCL option PCL driver for M401d not in panel image Switch to PostScript; if works → root cause confirmed Use PS path (activate PS on M401dn) or swap printer
"No default printer" only for PS option PS3 disabled on M401dn firmware Print config page from M401dn LCD; check PDL line Enable PS3 in M401dn web UI (Path A)
Test page prints garbled / random chars PCL stream sent to PS-only printer or vice versa Print config page; verify active PDL Align project setting to M401dn active PDL
Test page queues but never prints Network ACL blocks TCP 9100 / 515 Wireshark on switch SPAN; telnet <printer> 9100 Open the relevant TCP port on the managed switch
Printer shows "49.XXXX PostScript error" PS3 enabled but PS stream malformed by panel driver Check the report for raster images / unsupported fonts Embed TrueType in PDF; simplify report; downgrade PS level to 2
Printer prints once, then fails TCP socket not closed; M401dn formatter hangs Reboot M401dn; observe formatter LED Ensure panel uses RAW with FIN; avoid LPR when possible
Printout shows wrong paper size Default tray not configured for A4 M401dn LCD → Trays → Modify Set A4 as default; match paper size in TIA report layout
Cyrillic / Asian text prints as boxes Embedded font missing in panel image WinCC project → Languages & Fonts Install extra font; restrict runtime language set

13. Engineering Recommendations

  • Prefer Path A (PostScript activation on the M401dn) for installations where the printer is dedicated to the HMI. It is the lowest-cost, lowest-complexity fix and keeps the print path point-to-point.
  • If the printer must remain a shared office asset, swap to a model on the Siemens released list (Path B). The HP LaserJet Pro M404dn or the Kyocera ECOSYS P3045dn are field-proven substitutes with native PS3 and modern HP/Kyocera drivers in the Comfort panel image.
  • Reserve the shared-queue (Path C) and script-based (Path D) approaches for legacy installations where the printer and the panel both cannot be modified. Add watchdog supervision on the host to detect print-path failure.
  • Always commission with the verification procedure in section 11. The "no dialog" success criterion is not sufficient — verify that the formatter received the entire job (M401dn Web → Information → Event Log).
  • For multi-printer cells, define a single printer model across the plant. Mixing M401dn (PS3 off) with M404dn (PS3 on) on adjacent lines creates unnecessary commissioning drift.
  • Lock the M401dn configuration: disable DHCP on the Jetdirect port and assign a static IP, then save the config page PDF to the project's commissioning folder.

14. Common HP LaserJet Error Codes Encountered

Error code on M401dn LCD Meaning Operator action
10.XX.YY Supply memory error (toner cartridge) Re-seat cartridge; replace if persistent
13.XX.YY Paper jam in the indicated area Open the corresponding door; clear path
49.XXXX Formatter / PostScript error Power cycle; reduce job complexity; check PS level
50.X Fuser error Power off, allow 20 min cool-down, restart
57.XX Fan failure Service call — printer must be powered off
68.X Non-volatile memory error Reset; reconfigure network settings

Reference: HP Support — LaserJet Pro 400 M401 Control Panel Messages.

15. Field-Proven Caveats

  • Some M401dn units sold in specific regions (notably CE-marked SKUs distributed before 2015) ship with the PS3 emulation module physically masked at the firmware level. Activating it through the web UI is not possible on those units. A firmware flash is then required — coordinate with HP support or substitute the printer.
  • The Comfort Panel's RAW socket implementation does not emit an explicit FIN after the last byte when the PS driver is used. The M401dn therefore relies on its internal idle timeout (default 300 s) to close the socket. For high-volume reporting, reduce the timeout to 30 s in the printer's TCP configuration to free formatter memory faster.
  • If the plant uses a managed switch with storm control enabled, the 9100 RAW traffic (especially with large bitmap reports) can be misclassified as a broadcast storm. Exclude the printer's MAC from the storm control policy.
  • Reports containing high-resolution barcodes can push the PS interpreter on the M401dn close to its memory ceiling (256 MB). The 49.XXXX error then appears mid-job. Reduce the report DPI from 300 to 150 for barcode-heavy layouts.

16. FAQ

Does the HP LaserJet M401dn work with a SIMATIC TP1900 Comfort Panel?

Not out of the box. The M401dn ships with PostScript 3 emulation disabled, and the Comfort Panel's image does not contain a dedicated PCL 5e/6 driver for the M401d series. Enable PS3 on the printer through its embedded web server (Settings → Printing → Print Languages → PostScript) and configure the TIA Portal report to use the PostScript option.

Why does the panel still report "No default printer" after I added port :9100?

The error is raised by the spooler, not by the transport. Port 9100 (RAW) is the correct transport for HP LaserJet devices, but the spooler still needs a matching printer driver in the panel image. Adding :9100 only sets the destination port — it does not change the driver binding.

Can I use a USB connection instead of Ethernet to print from the TP1900 to the M401dn?

Yes, on Comfort Panels with Windows Embedded Standard 7P, the USB device-side port supports the M401dn after PS3 is enabled, using the same generic PS driver. On Windows CE 6.0 panels, the USB stack is more restrictive and the generic PS driver may not enumerate the device — prefer Ethernet in that case.

Is the M401dn on the Siemens released-printer list?

No. The released-printer list maintained by Siemens (entry "Printers for SIMATIC HMI Panels" on Siemens Industry Online Support) does not include the M401dn in any firmware load for the Comfort family. Confirmed substitutes on the list include the HP LaserJet Pro M402dn / M404dn and the HP LaserJet Enterprise M602 / M604 series.

Will TIA Portal V18 add a native M401dn driver to the Comfort Panel image?

As of TIA Portal V18, the released-printer list for Comfort Panels is unchanged. The recommended path remains PS3 activation on the M401dn (Path A in this article) or substitution with a printer on the released list (Path B). Always confirm against the version-specific Siemens knowledge base entry before commissioning.

Back to blog