V4 driver connectivity architecture

Important

We recommend that you use Microsoft's IPP inbox class driver, along with Print Support Apps (PSA), to customize the print experience in Windows 10 and 11 for printer device development.

For more information, see the Print support app design guide.

The key goal of connectivity components in the v4 print driver model is to provide rich support for bidirectional communications via the Bidirectional Schema, sometimes referred to simply as Bidi.

The v4 print driver model supports a simplified connectivity stack compared to the v3 print driver model.

Port monitors and language monitors

Non-Microsoft port monitors and language monitors aren't supported in the v4 driver model or with print class drivers. The v4 print driver model continues to employ the WSDMon Bidi Extension file format, and the Simple Network Management Protocol (SNMP) Bidi Extension file format. New in v4 is the ability to support Bidi over USB using the USBMon Bidi Extension XML and JavaScript files.

Bidirectional schema

This table shows files and the information that you must provide, depending on the features that you want to support. And the type of communication protocol that you select for your print device.

Communication type No extension files Bidi extension files Enhanced auto configuration
USB The following properties are populated into the Bidi Schema with the port monitor:

\Printer.DeviceInfo:Manufacturer

\Printer.DeviceInfo:ModelName

\Printer.DeviceInfo:IEEE1284DeviceId

\Printer.DeviceInfo:HardwareId

\Printer.DeviceInfo:CompatibleId

\Printer.DeviceInfo:SerialNumber
You must provide the following files:

XML Bidi extension file - JavaScript Bidi extension file
Print device must support this feature and you must provide Bidi extension files.
Web Services for Devices (WSD) The standard properties from the WS-Print specification or WS-Print v1.1 Specification are populated into the Bidi Schema with the port monitor. You must provide the following file:

XML Bidi extension file
Print device must support the WS-Print v1.1 protocol.
TCP/IP (SNMP)
If Port Monitor MIB is implemented, then the following properties are populated into the Bidi Schema with the port monitor:

\Printer.DeviceInfo:Manufacturer

\Printer.DeviceInfo:ModelName

\Printer.DeviceInfo:IEEE1284DeviceId

\Printer.DeviceInfo:HardwareId

\Printer.DeviceInfo:CompatibleId

\Printer.DeviceInfo.NetworkingInfo:PresentationUrl

\Printer.Configuration.Memory:Size

\Printer.Configuration.HardDisk:Installed

\Printer.Configuration.DuplexUnit:Installed
You must provide the following file:

XML Bidi extension file
Print device must support this feature and you must provide Bidi extension files.

For more information, see Bidirectional communication schema and WSDMon port monitors. And to read about customizing port monitors to extend the Bidi schema, see Customizing the printer port monitors.

Bidirectional communication schema

Customizing the printer port monitors

V4 printer driver connectivity

WSDMon port monitors