This is primarily intended for developers using EZ-PD™ PMG1 MCU family on ModusToolbox™ software. Associated part family EZ-PD™ PMG1 MCU devices. Application note Please read the sections “Important notice” and “Warnings” at the end of this document 002-32553 Rev. *C www.infineon.com 2024-02-14...
Getting started with EZ-PD™ PMG1 MCU on ModusToolbox™ software Table of contents Table of contents About this document ........................1 Table of contents ..........................2 Introduction .......................... 3 PMG1 MCU family general description and comparison ............... 3 EZ-PD™ PMG1-S0 MCU ..........................6 EZ-PD™...
Getting started with EZ-PD™ PMG1 MCU on ModusToolbox™ software Introduction Introduction PMG1 MCU family general description and comparison EZ-PD™ PMG1 (Power Delivery Microcontroller Gen1) is a family of high-voltage USB PD MCU. These chips include an Arm® Cortex® -M0/M0+ CPU and USB PD controller along with analog and digital peripherals. PMG1 MCU is targeted for embedded systems that provide/consume power to/from a high-voltage USB PD port and leverages the microcontroller to provide additional control capability.
Page 4
Getting started with EZ-PD™ PMG1 MCU on ModusToolbox™ software Introduction Table 1 Comparison of features of different MCUs of EZ-PD™ PMG1 MCU family Subsystem or Item PMG1-S0 PMG1-S1 PMG1-S2 PMG1-S3 range CPU and Core Arm® Cortex®- Arm® Cortex®- Arm® Cortex®- Arm®...
Page 5
Getting started with EZ-PD™ PMG1 MCU on ModusToolbox™ software Introduction Subsystem or Item PMG1-S0 PMG1-S1 PMG1-S2 PMG1-S3 range Hardware Yes (AES- Yes (AES-128, authentication 128/192/256, SHA2-256, SHA1, SHA2- block (Crypto) TRNG, vector 224, SHA2-256, unit) PRNG, CRC) Analog 2x 8-bit SAR 1x 8-bit SAR 2x 8-bit SAR 2x 8-bit SAR...
Getting started with EZ-PD™ PMG1 MCU on ModusToolbox™ software Introduction EZ-PD™ PMG1-S0 MCU EZ-PD PMG1-S0 MCU Color Key:Power Modes CYPM1011-24LQXI Active/Sleep Deep Sleep System Resources Clocks Power Sleep Control Clock Control PWRSYS Test Test Mode Entry Reset Reset Control Digital DFT...
Getting started with EZ-PD™ PMG1 MCU on ModusToolbox™ software Introduction EZ-PD™ PMG1-S1 MCU Color Key: Power Modes EZ-PD PMG1-S1 MCU Active/Sleep CYPM1111-40LQXI Deep Sleep System Resources Power Clocks Sleep Control Clock Control PWRSYS USB PD Subsystem Test Test Mode Entry Reset Digital DFT Reset Control...
Getting started with EZ-PD™ PMG1 MCU on ModusToolbox™ software Introduction EZ-PD™ PMG1-S2 MCU Color Key:Power Modes EZ-PD PMG1-S2 MCU Active/Sleep CYPM1211-40LQXI Deep Sleep System Resources Power Clocks Sleep Control Clock Control PWRSYS Authentication Test Test Mode Entry Reset Reset Control...
Getting started with EZ-PD™ PMG1 MCU on ModusToolbox™ software Introduction EZ-PD™ PMG1-S3 MCU Color Key:Power Modes EZ-PD PMG1-S3 MCU Active/Sleep CYPM1311-48LDXI/ Deep Sleep CYPM1322-97BZXI/CYPM1321-97BZXI System Resources Power Clocks Sleep Control Clock Control PWRSYS Reset Reset Control Programmable Analog XRES SAR MUX...
Getting started with EZ-PD™ PMG1 MCU on ModusToolbox™ software Introduction Software environment: ModusToolbox™ software ModusToolbox™ software environment supports PMG1 MCU application development with a set of tools for configuring the device, setting up peripherals, and complementing your projects with required middleware. This application note gives an overview of the ModusToolbox™...
Getting started with EZ-PD™ PMG1 MCU on ModusToolbox™ software Development ecosystem Development ecosystem PMG1 MCU resources The PMG1 MCU family has a rich set of documentation, development tools, and online resources to assist you during your development process. Visit PMG1 MCU webpage to find out more.
Getting started with EZ-PD™ PMG1 MCU on ModusToolbox™ software Development ecosystem PMG1 MCU software resources The PMG1 MCU software resources include configurators, drivers, libraries, and middleware, as well as Makefiles, and scripts to get you started with developing firmware with PMG1 MCU. Configurators ModusToolbox™...
Getting started with EZ-PD™ PMG1 MCU on ModusToolbox™ software Development ecosystem 4. Start developing the application firmware using the PDL. Figure 6 Eclipse IDE for ModusToolbox™ resources and middleware ModusToolbox™ Help Visit the ModusToolbox™ Software home page to download and install the latest version of ModusToolbox™ software.
Development ecosystem See the “Exporting to IDE’s” section in ModusToolbox™ tool package user guide for more details. Infineon recommends that you generate resource configurations using the configuration tools provided with ModusToolbox™ software. Programming and debugging using Eclipse IDE The Eclipse IDE of ModusToolbox™ software requires KitProg3 and uses the Open On-Chip Debugger (OpenOCD) protocol for debugging PMG1 MCU applications.
Page 15
Getting started with EZ-PD™ PMG1 MCU on ModusToolbox™ software Development ecosystem Figure 7 mtb-programmer tool The mtb-programmer is available in the ModusToolbox™ software under Quick Panel after downloading it as shown in Figure 8. You can directly open it from there. Figure 8 mtb-programmer tool under Quick Panel Application note...
Getting started with EZ-PD™ PMG1 MCU on ModusToolbox™ software Creating a PMG1 MCU application using Eclipse IDE for ModusToolbox™ software Creating a PMG1 MCU application using Eclipse IDE for ModusToolbox™ software This introduces how to use ModusToolbox™ software for project creation, programming, and debugging of EZ- PD™...
Page 18
Getting started with EZ-PD™ PMG1 MCU on ModusToolbox™ software Creating a PMG1 MCU application using Eclipse IDE for ModusToolbox™ software Figure 10 Choose the target hardware 5. In the Select Application dialog, select Hello World template application, as Figure 11 shows.
Getting started with EZ-PD™ PMG1 MCU on ModusToolbox™ software Creating a PMG1 MCU application using Eclipse IDE for ModusToolbox™ software Figure 11 Choose starter application You have successfully created a new ModusToolbox™ software application for PMG1-S0 MCU. The BSP uses the CYPM1011-24LQXI device on the CY7110 EZ-PD™...
Getting started with EZ-PD™ PMG1 MCU on ModusToolbox™ software Creating a PMG1 MCU application using Eclipse IDE for ModusToolbox™ software Figure 12 Project Explorer view The libs folder contains mtb.mk file which stores the relative paths of the all the libraries required by the •...
Page 21
Getting started with EZ-PD™ PMG1 MCU on ModusToolbox™ software Creating a PMG1 MCU application using Eclipse IDE for ModusToolbox™ software Figure 13 design.modus overview 3. From List of Resources in the Resources Categories tab in Device Configurator, choose from the different resources available in the device such as peripherals, pins, and clocks.
Getting started with EZ-PD™ PMG1 MCU on ModusToolbox™ software Creating a PMG1 MCU application using Eclipse IDE for ModusToolbox™ software Write the firmware At this point in the development process, you have created an application, with the assistance of a template application.
Getting started with EZ-PD™ PMG1 MCU on ModusToolbox™ software Creating a PMG1 MCU application using Eclipse IDE for ModusToolbox™ software START Device Initialization Configure and Enable UART peripheral Send Hello World on to UART terminal Toggle LED State Delay of 500ms Figure 15 Firmware flowchart This completes the summary of how the firmware works in the code example.
Page 24
Getting started with EZ-PD™ PMG1 MCU on ModusToolbox™ software Creating a PMG1 MCU application using Eclipse IDE for ModusToolbox™ software Figure 16 Build the application If you encounter errors, try the following options: Revisit earlier steps to ensure that you accomplished all the required tasks. •...
Page 25
If you are using a PMG1 MCU Prototyping Kit with a built-in programmer (KitProg3), follow steps and 2. If you are developing on your own hardware, you may need a hardware programmer/debugger; for example, an Infineon CY8CKIT-005 MiniProg4. 4. Make the following hardware connections on the prototyping kit: Connect a Type-C cable from the J1 (KitProg3 USB Type-C port) connector on the kit to the host.
Page 26
Getting started with EZ-PD™ PMG1 MCU on ModusToolbox™ software Creating a PMG1 MCU application using Eclipse IDE for ModusToolbox™ software In ModusToolbox™ software, select the application project in Project Explorer. In Quick Panel, click <Application Name> Program (KitProg3_MiniProg4) as shown in Figure 18.
Getting started with EZ-PD™ PMG1 MCU on ModusToolbox™ software Creating a PMG1 MCU application using Eclipse IDE for ModusToolbox™ software Figure 19 Console – programming results Test your design 1. Make the following hardware connections: Connect the J5 (Power Selection Jumper) pins 1 and 2 for operational mode. Connect J6.10 to J3.8 and J6.9 to J3.10 to establish a UART connection between KitProg3 and PMG1-S0.
Page 28
Getting started with EZ-PD™ PMG1 MCU on ModusToolbox™ software Creating a PMG1 MCU application using Eclipse IDE for ModusToolbox™ software Figure 21 Selecting the KitProg3 COM port in Tera Term 3. Set the serial port parameters to 8N1 and 115200 baud. Figure 22 Configuring the baud rate in Tera Term 4.
Getting started with EZ-PD™ PMG1 MCU on ModusToolbox™ software Creating a PMG1 MCU application using Eclipse IDE for ModusToolbox™ software Debug the application Eclipse IDE for ModusToolbox™ software can be used to debug applications. The prototyping kits can be acquired in debug mode though either of the following three interfaces: KitProg3 USB Type-C port •...
Page 30
Getting started with EZ-PD™ PMG1 MCU on ModusToolbox™ software Creating a PMG1 MCU application using Eclipse IDE for ModusToolbox™ software 2. Connect the USB PD sink port to the USB PD source to activate on-board LDO, Load switch, and user LED. Ensure that LED4, which is power LED, glows green.
Getting started with EZ-PD™ PMG1 MCU on ModusToolbox™ software Creating a PMG1 MCU application using Eclipse IDE for ModusToolbox™ software Figure 26 Selecting Debug Attach and starting a debug session On successful completion of compilation, build, and debug launch, ModusToolbox™ software acquires the kit in debug mode.
Page 32
Getting started with EZ-PD™ PMG1 MCU on ModusToolbox™ software Creating a PMG1 MCU application using Eclipse IDE for ModusToolbox™ software 2. In the subsequent dialog, select the Add Library tab. 3. Under Core, Middleware, Peripheral and Utilities, select and enable the required middleware. 4.
Getting started with EZ-PD™ PMG1 MCU on ModusToolbox™ software USB-PD sink example USB-PD sink example A code example for USB-PD sink is available in the Select New Application option when the required BSP and “USBPD_Sink” application from the list is selected. See Figure 29.
Getting started with EZ-PD™ PMG1 MCU on ModusToolbox™ software Porting the project across PMG1 MCUs Porting the project across PMG1 MCUs The project created for one MCU can be ported to work for other MCUs of the PMG1 MCU family. With a consideration that the feature/functionality/resource we are porting is available in the new MCU.
Page 35
Getting started with EZ-PD™ PMG1 MCU on ModusToolbox™ software Porting the project across PMG1 MCUs In the Makefile, the target name gets updated to the new BSP selected in previous step. See Figure Figure 31 Edit the target name Do the following in Quick Panel: Click Generate Launches for <project name>.
Page 36
Getting started with EZ-PD™ PMG1 MCU on ModusToolbox™ software Porting the project across PMG1 MCUs Figure 32 Regenerate launch configurations Now, Device Configurator is updated to the new BSP, as shown in Figure Figure 33 Device Configurator with new BSP 5.
Getting started with EZ-PD™ PMG1 MCU on ModusToolbox™ software Summary Summary This application note explores the capabilities of the EZ-PD™ PMG1 (Power Delivery Microcontroller Gen1) family of high-voltage MCU with USB-C PD and helps you to get started with your first project with PMG1 MCU in Eclipse IDE for ModusToolbox™...
Getting started with EZ-PD™ PMG1 MCU on ModusToolbox™ software Table of contents Acronyms and abbreviations Acronym Expansion Apple Charging advanced encryption standard adaptive fast charging battery charging charged device model cyclic redundancy check human body model overcurrent protection overvoltage protection overvoltage tolerant PRNG pseudo random number generation...
Getting started with EZ-PD™ PMG1 MCU on ModusToolbox™ software Glossary Glossary This section lists the most commonly used terms that you might encounter while working with PMG1 MCU family of devices in ModusToolbox™ software. Board support package (BSP): A BSP is the layer of firmware containing board-specific drivers and other functions.
Getting started with EZ-PD™ PMG1 MCU on ModusToolbox™ software Revision history Revision history Document Date Description of changes revision 2021-02-26 Initial release 2021-07-28 Added 1.5 EZ-PD™ PMG1-S3 MCU section Updated Table 2 Figure 12 Added a note in Added 3.8 Debug the application section 2022-02-10 Updated section...