How does it work?
USB-C Sink 4 Click is based on the CYPD3178, a USB Type-C power sink controller from Infineon. This controller replaces traditional barrel connectors, allowing devices to draw power through the more versatile and standardized USB Type-C interface. The CYPD3178 is part of Infineon’s Barrel Connector Replacement (BCR) family and complies with the latest USB Type-C specifications, supporting power delivery of up to 5V at 3A. What makes the CYPD3178 stand out is its ability to convert devices from barrel-powered to USB Type-C-powered with minimal additional components and no need for further firmware development. The integrated solution includes a full USB Type-C transceiver, load switch control with a soft start feature, and all the necessary termination resistors for seamless USB Type-C port operation. It also provides system-level fault protection and Electrostatic Discharge (ESD) safeguards, ensuring robust performance in various environments. This Click board™ is perfect for powering electronic devices such as drones, smart speakers, power tools, and other rechargeable gadgets, making it a versatile and reliable power management solution.
The CYPD3178 on the USB-C Sink 4 Click supports multiple charging protocols. When connected to a non-PD charger, it can negotiate with any legacy charging protocol supported by the sink device. The CHG SEL jumper allows users to configure the supported protocols. The jumper is set to the LGC position by default, enabling support for all legacy charging protocols. However, by switching the jumper to the BC1.2 position, the device limits its operation to the BC1.2 charging protocol only.
The board’s VBUS MIN and VBUS MAX jumpers determine the minimum and maximum voltages that the CYPD3178 will negotiate. VBUS_MIN is set to 5V by default, while a 5-position jumper allows users to configure the VBUS_MAX value. The USB-C standard supports various voltage levels, ranging from 5V to 20V, depending on the agreed “power contract” between the device and the charger. Adjusting the VBUS MAX jumper to the appropriate position enables the desired voltage level. The green VBUS LED indicates the presence of power on the USB-C port. Similarly, the ISNK FNE and CRS resistor dividers configure the operating current communicated to the Type-C power adapter. The operating current (ISNK) is the sum of the currents these resistor dividers specify.
The USB-C Sink 4 Click features an unpopulated SAFE 5V header that can be used to drive an alternate load. This header becomes active whenever the CYPD3178 cannot negotiate the higher requested power contract (e.g., 9V or 15V, for example). In such cases, the CYPD3178 negotiates a 5V power supply, which can be delivered to an alternate power rail within the system through this header. This enables the system to continue operating in a limited mode when the desired higher power is unavailable through the USB Type-C port.
USB-C Sink 4 Click uses a standard 2-wire I2C interface to communicate with the host MCU, supporting a maximum clock frequency of 400kHz. In addition to the I2C pins, it features an active-low INT interrupt pin, used to notify the MCU of important events, such as changes in the power status. The INT and FLT pins can also serve a secondary purpose for debugging, acting as SWD_DAT (INT) and SWD_CLK (FLT) pins, accessible through the unpopulated DBG header for debugging purposes.
The red FLT LED indicator on USB-C Sink 4 Click turns ON when certain conditions are met, such as when a power negotiation contract cannot be established or when none of the offered voltages fall within the VBUS_MIN and VBUS_MAX ranges. Additionally, the LED will light up if the load draws more current than the expected threshold (Sink OCP). In addition to visual identification, this fault signal can also be tracked digitally through the FLT pin on the mikroBUS™ socket.
The USB-C Sink 4 Click includes two test points for monitoring key signals. TP1 measures and monitors the VBUS voltage, while TP2 (FLP) helps determine the data mode and orientation of the USB Type-C cable, specifically whether the USB CC polarity is flipped. By default, the TP2 signal is pulled up with a 1kΩ resistor for non-data communication applications.
This Click board™ can be operated only with a 3.3V logic voltage level. The board must perform appropriate logic voltage level conversion before using MCUs with different logic levels. Also, it comes equipped with a library containing functions and an example code that can be used as a reference for further development.
Specifications
Type
USB-C PD
Applications
Ideal for applications such as drones, smart speakers, power tools, and other rechargeable devices
On-board modules
CYPD3178 – USB type-C power sink controller from Infineon
Key Features
USB Type-C support, configurable charging protocols (legacy and BC1.2 protocols), adjustable voltage negotiation, SAFE 5V header for alternate power rail support, system-level fault and ESD protection, I2C interface, debugging capability, test points, and more
Interface
I2C
Feature
ClickID
Compatibility
mikroBUS™
Click board size
L (57.15 x 25.4 mm)
Input Voltage
3.3V,External
Pinout diagram
This table shows how the pinout on USB-C Sink 4 Click corresponds to the pinout on the mikroBUS™ socket (the latter shown in the two middle columns).
Onboard settings and indicators
Label | Name | Default | Description |
---|---|---|---|
LD1 | PWR | – | Power LED Indicator |
LD2 | FLT | – | Fault LED Indicator |
LD3 | VBUS | – | Active VBUS Voltage LED Indicator |
JP1 | VBUS MAX | Lower Left | VBUS Maximum Voltage Selection 5V/15V/12V/9V/20: Lower Left position 5V, Upper Left position 15V, Upper Right position 12V, Lower Right position 9V, Unpopulated 20V |
JP2 | CHG SEL | Left | Charging Mode Selection LGC/BC1.2: Left position LGC, Right position BC1.2 |
TP1 | VBUS | – | VBUS Voltage Test Point |
TP2 | FLT | – | Data Mode / USB Flip Status Test Point |
USB-C Sink 4 Click electrical specifications
Description | Min | Typ | Max | Unit |
---|---|---|---|---|
Supply Voltage | – | 3.3 | – | V |
Power Supply Input Voltage | 5 | – | 20 | V |
Software Support
We provide a library for the USB-C Sink 4 Click as well as a demo application (example), developed using MIKROE compilers. The demo can run on all the main MIKROE development boards.
Package can be downloaded/installed directly from NECTO Studio Package Manager (recommended), downloaded from our LibStock™ or found on MIKROE github account.
Library Description
This library contains API for USB-C Sink 4 Click driver.
Key functions
-
usbcsink4_get_type_c_status
This function reads the reports of the status of the Type-C port by using the I2C serial interface. -
usbcsink4_get_bus_voltage
This function reads the live voltage on the VBUS supply for the specified port using the I2C serial interface. -
usbcsink4_get_event_status
This function reads the reports of the event status to know what has happened on the Type-C/PD port using the I2C serial interface.
Example Description
This example demonstrates the use of a USB-C Sink 4 Click by setting DC power requests and control for Type-C connector-equipped devices (TCD).
void application_task ( void )
{
usbcsink4_display_type_c_status( );
Delay_ms( 100 );
usbcsink4_display_chrg_mode( );
Delay_ms( 100 );
usbcsink4_display_bus_voltage( );
Delay_ms( 1000 );
}
The full application code, and ready to use projects can be installed directly from NECTO Studio Package Manager (recommended), downloaded from our LibStock™ or found on MIKROE github account.
Other MIKROE Libraries used in the example:
- MikroSDK.Board
- MikroSDK.Log
- Click.USBCSink4
Additional notes and informations
Depending on the development board you are using, you may need USB UART click, USB UART 2 Click or RS232 Click to connect to your PC, for development systems with no UART to USB interface available on the board. UART terminal is available in all MIKROE compilers.
mikroSDK
This Click board™ is supported with mikroSDK – MIKROE Software Development Kit. To ensure proper operation of mikroSDK compliant Click board™ demo applications, mikroSDK should be downloaded from the LibStock and installed for the compiler you are using.
For more information about mikroSDK, visit the official page.