EZ-PD™ Configurator Guide

About this document



Scope and purpose

The EZ-PD™ Configurator provides a user-friendly tool for selecting the features and configuring parameters of the power delivery stack (PDStack) middleware for PMG1 family of devices. The tool generates configuration code in c language which can be referenced in the PDStack middleware.

Intended audience

This document helps application developers understand how to use the EZ-PD™ Configurator as part of creating a ModusToolbox™ application.

Document conventions




Emphasizes heading levels, column headings, menus and sub-menus


Denotes file names and paths.

Courier New

Denotes APIs, functions, interrupt handlers, events, data types, error handlers, file/folder names, directories, command line inputs, code snippets

File > New

Indicates that a cascading sub-menu opens when you select a menu item

Supported Software




PDStack Middleware Library



Abbreviations and definitions

The following define the abbreviations and terms used in this document:

  • USB-PD – Universal Serial Bus Power Delivery (See USB Power Deliver Specification Revision 3.0)

  • PMG1 – Power Delivery Microcontroller Generation 1

  • PDO – Power Data Object

  • VDO – Vendor Data Object

  • SCEDB – Source Capabilities Extended Data Block

  • SKEDB – Sink Capabilities Extended Data Block

  • EPR – Extended Power Range

  • SVID – Standard or Vendor ID

  • BSP – Board Support Package

Reference documents

Refer to the following documents for more information, as needed:

1. Launch the EZ-PD™ Configurator

There are numerous ways to launch the EZ-PD™ Configurator, and those ways depend on how you use the various tools in ModusToolbox™.

1.1 make command

As described in the ModusToolbox™ user guide build system chapter, you can run numerous make commands in the application directory, such as launching the EZ-PD™ Configurator. After you have created a ModusToolbox™ application, navigate to the application directory and type the following command in the appropriate bash terminal window:

make open CY_OPEN_TYPE=ez-pd-configurator

This command opens the EZ-PD™ Configurator GUI for the specific application in which you are working.

1.2 Eclipse IDE

If you use the Eclipse IDE for ModusToolbox™, you can launch the EZ-PD™ Configurator for the selected application. In the Project Explorer, right-click on the project and select ModusToolbox™ > EZ-PD Configurator <version>. You can also click the EZ-PD Configurator link in the IDE Quick Panel.


Similar to the make command method, launching the EZ-PD™ Configurator using the Eclipse IDE opens the tool for the selected application. Refer to the Eclipse IDE for ModusToolbox™ user guide for details about the IDE.

1.3 Executable (CLI)

The EZ-PD™ Configurator executable can be run from the command line, and it also has a “cli” version of the executable as well. Running configurator executables from the command line can be useful as part of batch files or shell scripts to re-generate the source code based on the latest configuration settings. The exit code for the executable is zero if the operation is successful, or non-zero if the operation encounters an error. For more information about the command-line options, run the executable using the -h option.

1.4 Executable (GUI)

If you don’t have an application or if you just want to see what the configurator looks like, you can launch the EZ-PD™ Configurator GUI by running its executable as appropriate for your operating system (for example, double-click it or select it using the Windows Start menu). By default, it is installed here:


When launched this way, the EZ-PD™ Configurator opens without any settings configured. You can either open a specific configuration file or create a new one. See Menus for more information.

2 Quick start

This section provides an example workflow for how to use the EZ-PD™ Configurator with the USBPD-Sink code example (https://github.com/Infineon/mtb-example-pmg1-usbpd-sink).

  1. Create a new ModusToolbox™ application. In this example, use the Project Creator tool:

    1. Select the PMG1-CY7110 BSP.

    2. Select the USBPD Sink application.

  2. Build the application.

This generates mtbcfg_ezpd.h and mtbcfg_ezpd.c files in the <application>/USBPD_CONFIG/TARGET_<kit- name>/GeneratedSource directory. These files define the PDSTACK Middleware configuration struct cy_stc_pdstack_port_cfg_t, with the application’s default configuration.

  1. Follow the instructions in the application’s README.md file for the correct placement of jumpers on the kit, and then program the kit.

  2. Connect the kit to a power source that supports USB Power Delivery on the USB-PD port, not the USB-C port for KitProg) to a power source (for example, a charger or a laptop) using a USB-C-to-C cable.

    Again, review the README.md file for proper jumper placement.

    The kit’s LED (LED3 of PMG1-CY7110) should blink at 5 Hz, indicating that the USB-PD operation is working.

  3. Launch the EZ-PD™ Configurator for the application that was just created.

    1. Deselect the PD Operation Enable parameter under Port Information.

    2. Save the configuration. This updates the mtbcfg_ezpd.c file with the changed configuration.

  4. Disconnect the power source from the kit, re-program the application, then connect the power source to the kit.

    The kit’s Debug LED should blink at 1 Hz, indicating that USB-PD operation is not working since it was disabled in step 5.

3. GUI description


3.2 Toolbar


The toolbar contains common commands from the File and Edit menus, such as New, Open, and Save. Use the check box under the View menu to show or hide the toolbar.

3.3 Port tabs


This area contains one or two tabs to configure various parameters. Each tab includes a toolbar with the following commands:

  • Add/Remove PDO – Adds or removes a PDO from the selected list.

  • Sort PDOs – Toggles Sort on and off. When enabled, this reorders the PDOs by type and voltage.

  • Move Up/Down – When Sort is disabled, these move the selected PDO up or down in the list.

  • Expand/Collapse All – Expands or collapses the entire tree of items in the Port tab.

3.4 Parameter categories

3.5 Parameters and values

When you select a parameter category, the right side of the EZ-PD™ Configurator displays that category’s individual parameters and values, as appropriate. The following sections describe the parameters available for each category.

3.5.1 Port Information

The Port Information node consists of the following parameters.


Field name


Valid range

Manufacturer Vendor ID (0x)

Vendor ID assigned to manufacturer by USB-IF

0x0000 – 0xFFFF

Manufacturer Product ID (0x)

16-bit Product ID that identifies the product

0x0000 – 0xFFFF

Manufacturer Name

Manufacturer name string

Maximum 21 ASCII Characters

Port Role

Power handling role of the device

  1. -> Sink

  2. ->Source

  3. -> Dual Role

Default Port Role

Default power handling role of the device

  1. -> Sink

  2. -> Source

Current Level (mA)

Operating current range for the device

0 -> 900 mA

1 -> 1.5 A

2 -> 3 A

Cable Discover Count

Number of cable discovery attempts to be made

0x00 – 0x14

DRP Toggle Enable

Whether Rp-Rd toggle is enabled in unattached state

Check box enabled or not.

Rp Supported (mA)

Rp values supported by the device

Bit Mask

Bit 0 -> 900 mA Rp

Bit 1 -> 1.5 A Rp

Bit 2 -> 3 A Rp

PD Operation Enable

Whether USB-PD operation is supported on the port

  1. -> No

  2. -> Yes

Preferred Power Role

Whether Try.Src or Try.Sink is enabled for the port

0. -> No Try.Src or Try.Sink supported

1. -> Try.Src supported 2 -> Try.Sink supported

Port Disable

Whether the PD port is to be disabled at start-up

Check box enabled or not.

Cable Discovery Enable

Whether cable discovery is enabled as part of the source state machine

Check box enabled or not.

Dead Battery Support

Whether dead battery operation is supported

Check box enabled or not.

Error Recovery Enable

Whether Type-C error recovery is enabled for this port

Check box enabled or not.

FRS Config

Fast Role Swap feature enabled flags

  1. -> None

1. -> FRS receive enable 2 -> FRS transmit enable

VCONN Retain

Whether Vconn supply should be left enabled even if the EMCA’s cable VDO indicates that Vconn is not required.

Check box enabled or not.

Accessory Mode Enable

Whether accessory mode is to be enabled

Check box enabled or not.

Rp Detach Enable

Option to enable/disable disconnect detect mechanism using Rp in Sink role

Check box enabled or not.

Port Type

Port type in Source_Info data object. Indicates whether the amount of power the port can provide is fixed or can change dynamically

0 -> Shared Capacity Port 1 -> Assured Capacity Port

Port Maximum PDP

The maximum amount of power the port is designed to deliver

0x00 – 0xFF

Port Present PDP

The amount of power the port is presently capable of offering

0x00 – 0xFF

Port Reported PDP

The amount of power the port offering in its

Source_Capabilities or EPR _Source_Capabilities message.

0x00 – 0xFF

PD Revision Major

PD revision major

0x0 – 0xF

PD Revision Minor

PD revision minor

0x0 – 0xF

PD Version Major

PD version major

0x0 – 0xF

PD Version Major

PD version major

0x0 – 0xF

3.5.2 PDO

This node represents the set of Power Data Objects (PDOs) for the selected device. The PDOs supported by the device are arranged hierarchically. PDOs can be Source PDOs or Sink PDOs, depending on whether they describe the power sourcing or sinking capabilities of the USB-PD device. All fields listed under the Source PDOs and Sink PDOs nodes are defined in the USB-PD specification, revision 3, and they are classified as follows:

  • Fixed Supply

  • Battery

  • Variable Supply

  • Programmable Power Supply

You can add or remove PDOs using Add/Remove PDO buttons available in Port tab toolbar. Each PDO contains an Enable check box, which specifies whether the PDO is enabled at system start-up. Source PDOs

The Source PDOs node displays only when the value of Port Role parameter is set to Source or Dual Role in Port Information node.

The parent Source PDOs node contains following parameters from 5V Fixed Supply Source PDO:


The follows shows Fixed Supply Source PDO configuration parameters:


The following shows Battery Source PDO configuration parameters:


The following shows Variable Supply Source PDO configuration parameters:


The following shows Programmable Power Supply Source PDO configuration parameters:

image11 Sink PDOs

The Sink PDOs node displays only when the value of the Port Role parameter is set to Sink or Dual Role in the Port Information node. Sink PDO configuration includes two additional parameters:

  • The Sink Give Back parameter specifies whether the feature is enabled for this PDO.

  • The Min/Max Operating Current parameter specifies the minimum current required for device operation if give back is enabled. If give back is disabled, this field specifies the maximum operating current that may be required.

The parent Sink PDOs node contains following parameters from 5V Fixed Supply Sink PDO:


The following shows Fixed Supply Sink PDO configuration parameters:


The following shows Battery Sink PDO configuration parameters:


The following shows Variable Sink Source PDO configuration parameters:


The following shows Programmable Power Supply Sink PDO configuration parameters:


3.5.3 EPR Configuration

This contains a check box to enable or disable Extended Power Range (EPR) configuration.

image17 EPR Source PDOs

If EPR Source enabled, this contains one or more EPR Source PDOs. The configurator supports only Fixed Supply EPR Source PDOs.

image18 EPR Sink PDOs

If EPR Sink enabled, this contains one or more EPR Sink PDOs.


3.5.4 SCEDB Configuration

This contains a check box to enable or disable Source Capabilities Extended Data Block (SCEDB) parameters. These are based on the USB-PD specification, revision 3, section 6.5.1.



3.5.5 SKEDB Configuration

This contains a check box to enable or disable Sink Capabilities Extended Data Block (SKEDB) parameters. These are based on the USB-PD specification, revision 3, Section 6.5.13.


3.6 Notice List

The Notice List pane combines notices (errors, warnings, tasks, and notes) from many places in the configuration into a centralized list. If a notice shows a location, you can double-click the entry to edit the parameter. The Notice List pane contains the following columns:

  • Icon – Displays the icons for the error, warning, task, or note.

  • Fix – This may display a wrench icon that can be used to automatically address the required notice.

  • Description – Displays a brief description of the notice.

  • Location – Displays the specific tab of the message, when applicable.

For more information about the Notice List, refer to the Device Configurator guide.

4 Version changes

This section lists and describes the changes for each version of this tool.


Change Descriptions


New tool.


Added open in System Explorer command to File menu. Added Add/Remove Port commands.

Added Copy/Paste Port commands. Added separate Port tabs.

Added Port tab toolbar.

Reorganized parameter settings based on Source PDO versus Sink PDO.

Revision history






New document.



Updated to version 1.10.

Updated the Quick start section with information from the USBPD-Sink code example.