Software

The software is based on MCUXpresso SDK.

Folder structure

The folder structure is shown below.

|

|

The following table provides information regarding the structure and description.

Folder

Description

boards/ CMSIS/

devices/

docs/

middleware/

rtos/

tools/

|MCUXpresso SDK directories.| |boards/<board>/usb_examples/|USB Type-C Power Delivery demos’ projects.| |middleware/usb/pd|USB Type-C Power Delivery source code.|

Note: See the detailed description about the API of the MCUXpresso USB Type-C PD stack in MCUXpresso SDK USB Type-C PD Stack Reference Manual (document MCUXUSBPDAPIRM) in docs/usb folder.

Parent topic:Software

Features

  • Six examples are provided:

    • usb_pd: This demo presents all USB Type-C PD stack functions. Customers can use this demo to understand all the USB Type-C PD stack interfaces and work flows.

    • usb_pd_charger_battery: This demo simulates products that work with a battery and can charge other devices (for example, a laptop).

    • usb_pd_sink_battery: This demo simulates products that work with a battery (for example, phone).

    • usb_pd_source_charger: This demo simulates the charger product.

    • usb_pd_alt_mode_dp_dock: This demo implements the DisplayPort dock alternate mode.

    • usb_pd_alt_mode_dp_host: This demo implements the DisplayPort host alternate mode.

  • The usb_pd demo supports the 5 catalogs in the USB PD3.0 compliance test (consumer/provider, provider/consumer, DRP, DRP with Try.SNK, and DRP with Try.SRC) with Ellisys EX350. The compliance tests are passed with five known issues. See section PD compliance test for more information

  • The usb_pd_alt_mode_dp_host and usb_pd_alt_mode_dp_dock demos support USB PD3.0 compliance test with Ellisys EX350.

  • Full toolchains are supported.

  • The MCUXpresso SDK USB Type-C PD Stack Reference Manual (document MCUXUSBPDAPIRM) is located in the <SDK_ROOT>/docs/usb folder.

Parent topic:Software

Building the demo

The demo projects are located in the paths below:

  • <root>/boards/<board>_<shield board>/usb_examples/usb_pd

  • <root>/boards/<board>_<shield board>/usb_examples/usb_pd_charger_battery

  • <root>/boards/<board>_<shield board>/usb_examples/usb_pd_sink_battery

  • <root>/boards/<board>_<shield board>/usb_examples/usb_pd_source_charger

  • <root>/boards/<board>_<shield board>/usb_examples/usb_pd_alt_mode_dp_host

  • <root>/boards/<board>_<shield board>/usb_examples/usb_pd_alt_mode_dp_dock

To build the projects, see Section 3 in Getting Started with MCUXpresso SDK User’s Guide(document MCUXSDKGSUG) atroot/docs/Getting Started with MCUXpresso SDK.pdf. See section Supported boards list for more information.

Note:

  1. The <shield board> is om13588, om13790host, or om13790dock. Only the om13790host supports DisplayPort host alternate mode. Only the om13790dock supports DisplayPort dock alternate mode.

  2. This document introduces the common PD functions based on the usb_pd demo in <root>/boards/ <board>_<shield board>/usb_examples/usb_pd.

  3. For the usb_pd_charger_battery, usb_pd_sink_battery, the usb_pd_source_charger, usb_pd_alt_mode_dp_host, and usb_pd_alt_mode_dp_dock example usage, see the readme in the demos directory.

  4. All USB pd example debug version for FRDM-KL27Z cannot build successfully on MCUXpresso IDE because of flash code size limitation.

  5. Some examples cannot build successfully because of memory size limitation when enable PD 3.0(#define PD_CONFIG_REVISION (PD_SPEC_REVISION_30)). For details, see the readme documentation in the corresponding demos directory.

  6. If one or more USB PD projects are imported in MCUXpresso IDE, the SDK debug console “UART” radio button in the main wizard page must be selected to avoid any build failures. See the following figure.

    |![](../images/select_uart_radio_button.png “Select “UART” radio button”)

|

Parent topic:Software

Running the demo

See Section 3 in Getting Started with MCUXpresso SDK User’s Guide (document MCUXSDKGSUG) atroot/docs/Getting Started with MCUXpresso SDK.pdf.

Parent topic:Software