Table of Contents | ||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|
|
Introduction
Who
Daniel Puratich Architecture & Management
Kenny Na EE Designer, Documentation
What
USB-C to XT30 adapter to deliver up to 100W (20V 5A) to a drone during stationary testing.
Configuration identifiable on the board via circled value on backside silkscreen.
PD arbitration handled by the TPS25730; power configuration with resistor dividers on ADC pins.
Excludes the use of a microcontroller or dedicated buck/boost converters to save on BOM cost.
End User Guide
USB-C Sink Rev. 1 End User Manual
Resources
https://www.youtube.com/watch?v=W13HNsoHj7A&t=615s
...
Engineering
PD Controller Selection
Main Options
There were a few possible options that were selected from research:
https://www.digikey.ca/en/products/detail/stmicroelectronics/STUSB4500QTR/9092189
https://www.digikey.ca/en/products/detail/texas-instruments/TPS25730SRSMR/22147461/https://www.digikey.ca/en/products/detail/texas-instruments/TPS25730DREFR/22147394?s=N4IgTCBcDaIC4AcDOYCsB2AzABgCYgF0BfIA
https://www.digikey.ca/en/products/detail/infineon-technologies/CYPD3177-24LQXQT/10238323
Cheap PMIC + RP2040 (ex. https://www.digikey.ca/en/products/detail/onsemi/FUSB302B10MPX/7356099 + https://www.digikey.ca/en/products/detail/raspberry-pi/SC0914-13/14306010?s=N4IgTCBcDaIEoAUwAYAsyQF0C%2BQ)
Decision Matrix
USB-C PD PMIC | Option 1 | Option 2 | Option 3 | Option 4 |
---|---|---|---|---|
Name | STUSB4500 | TPS25730x | CYPD3177 | FUSB302B + RP2040 |
Description | USB-C PD Sink IC | USB-C PD Sink IC | USB-C PD Sink IC | USB PD IC + MCU |
DigiKey $/ct | $5.22 CAD | $3.76 CAD | $3.51 CAD | $2.59 + $1.08 CAD |
Configuration | NVM config editing in EEPROM via I2C TPs | Strapping resistors on ADC pins | Strapping resistors on pins | Firmware control on RP2040 via I2C |
Misc. Pros | Popular and well documented USB-C sink device within hobbyist community | Newest controller, supports USB-C PD rev 3.1, simple to implement, extensive schem and layout guidelines, D-model has integrated FET gate | Cheapest option, simple implementation, some online examples | Most configurable option, no need for strapping resistor variants, completely firmware controlled via I2C |
Misc. Cons | Expensive | PD 3.1 is irrelevant for the purpose of this project, also doesn’t support 240W | Complicated implementation |
The TPS25730x was selected for its recent release, comprehensive datasheet, relatively low price, and simple implementation.
FET Selection
A typical USB-C PD controller will require a gate to block the USB-C input voltage while arbitration occurs. Once the negotiation is successful, the controller sends voltage to the gate to enable the transport of power.
...
Surge Protection
Inrush Current Protection
...
Seeing as this board is primarily intended for debugging RPi Interface Rev C, which includes a buck converter with large bulk capacitance, inrush current protection is required, as recommended by USB-IF. This is due to the capacitors on the load device requesting a large amount of current, characterized by Icap = Ccap x dV/dt.
As shown above, the TPS25730 datasheet states that inrush current limiting is “implemented as described” in the USB3.2 specification. However:
...
The exact section of the USB 3.2 spec regarding inrush currents is shown below.
...
Input Voltage Protection
While the source device should do most of the voltage regulation, TI recommends a transient voltage suppressing diode be implemented on the VBUS_IN rail. This is due to the possibility of a voltage surge when a cable with current actively running through it is unplugged, causing inductive ringing (as mentioned here), as well as any electrostatic discharge events. For example, the TVS2200 product is recommended for a 20V spec. The Altium schematic is configured with variants, which will change the TVS diode model to match the negotiated voltage.
...
Power Configuration
Resistor Dividers
The TPS25730 has 4 ADCIN pins that each control a parameter of the requestable voltage and current. Each divider must take voltage from LDO_3V3 and step it down to a target value to be read by the pin. The specific ratios translating to the decoded values are shown in the table below.
The ratio is calculated using: Ratio = Rdown / (Rup+Rdown).
...
Decoded ADC Values
...
If the source device cannot supply voltage between the minimum and maximum voltages set by pins ADCIN1 and ADCIN2 ORthe operating/maximum current is violated, then the controller will signal a capabilities mismatch and run the CAP_MIS pin high.
Schematic
...
Rapid fire notes on the USB PD IC schematic:
...
The ADC pins are configured as Variants in Altium and are viewable through the Altium 365 project viewer.
Layout
...
Some notable decisions:
CC pins are trace width impedance matched to 50 Ohms on the bottom layer.
Routing them on the bottom layer makes it so that there is no via stub. It also means the traces have to be wider, as there is no coupling below. Seeing as they will also carry power for VCONN, these were OK to be made wide.
The lines are routed in such a way that they will NOT cross a plane split in the board to reduce concern of EMI. As a direct example, CC2 (the lower pin) goes around the VBUS pour and and only where ground would otherwise be. There are ground vias placed near the traces when possible.
Drain pour is connected to the bottom layer.
The DRAIN pins on the TPS25730 are part of the internal FETs on the IC package. Since these will spend the most of their operating time closed, it’s a good idea to give the heat-generating power loss from RDS_ON a thermally conductive pad to be able to leave the board quickly. Vias are placed as recommended by TI.
USB-C VBUS input routing is on the top and bottom layers.
The VBUS input runs through L1/L4, connected through six vias for up to 20V 5A max power draw. While each 8mil hole/16mil diameter via should do around 1.7A, six is recommended by TI and is a good conservative count.
Top and bottom layers are exposed to the air, making them the most thermally conductive and are great to route high power nets on. This is due to how current limits on PCBs are often actually thermal limits.
PCB Design
...
Input/output connectors labelled for a pleasing aesthetic nice presentation.
Inverted text silkscreen for better readability.
I2C lines (SCL, SDA) and GND test points are labelled on the back to save space.
Voltages are labelled on the back of the board. This is so that after assembly, the appropriate voltage configured on the specific board can be circled by sharpie for easy identification.
Horse on a chair sitting on a porch, viewing a storm. Hard image.
This was actually hard to get into Altium - in order to reduce lag and have the appearance of greys, the image was downscaled to 350px and then converted to greyscale and dithered with Floyd-Steinberg algorithm (Normal mode) in GIMP.