…
|
||
---|---|---|
.. | ||
boards | ||
src | ||
CMakeLists.txt | ||
README.rst | ||
prj.conf | ||
sample.yaml | ||
vif.xml |
README.rst
.. zephyr:code-sample:: usb-c-sink :name: Basic USB-C Sink :relevant-api: _usbc_device_api Implement a USB-C Power Delivery application in the form of a USB-C Sink. Overview ******** This example demonstrates how to create a USB-C Power Delivery application and how to generate USB VIF policies in XML format using the USB-C subsystem. The application implements a USB-C Sink device. After the USB-C Sink device is plugged into a Power Delivery charger, it negotiates with the charger to provide 5V@100mA and displays all Power Delivery Objects (PDOs) provided by the charger. .. _usb-c-sink-sample-requirements: Requirements ************ The TCPC device used by the sample is specified in the devicetree node that's compatible with ``usb-c-connector``. The sample has been tested on :zephyr:board:`b_g474e_dpow1` and :zephyr:board:`stm32g081b_eval`. Overlay files for the two boards are provided. Building and Running ******************** Build and flash as follows, changing ``b_g474e_dpow1`` for your board: .. zephyr-app-commands:: :zephyr-app: samples/subsys/usb_c/sink :board: b_g474e_dpow1 :goals: build flash :compact: Connect a charger and see console output: Sample Output ============= .. code-block:: console Unattached.SNK AttachWait.SNK Attached.SNK PE_SNK_Startup PRL_INIT PRL_HR_Wait_for_Request PRL_Tx_PHY_Layer_Reset PRL_Tx_Wait_for_Message_Request PE_SNK_Discovery PE_SNK_Wait_For_Capabilities RECV 4161/4 [0]0a01912c [1]0002d12c [2]0004b12c [3]000640e1 PE_SNK_Evaluate_Capability PE_SNK_Select_Capability PRL_Tx_Wait_for_PHY_response PWR 3A0 RECV 0363/0 PRL_Tx_Wait_for_Message_Request PE_SNK_Transition_Sink RECV 0566/0 Source Caps: PDO 0: Type: FIXED Current: 3000 Voltage: 5000 Peak Current: 0 Uchunked Support: 0 Dual Role Data: 1 USB Comms: 0 Unconstrained Pwr: 1 USB Susspend: 0 Dual Role Power: 0 PDO 1: Type: FIXED Current: 3000 Voltage: 9000 Peak Current: 0 Uchunked Support: 0 Dual Role Data: 0 USB Comms: 0 Unconstrained Pwr: 0 USB Susspend: 0 Dual Role Power: 0 PDO 2: Type: FIXED Current: 3000 Voltage: 15000 Peak Current: 0 Uchunked Support: 0 Dual Role Data: 0 USB Comms: 0 Unconstrained Pwr: 0 USB Susspend: 0 Dual Role Power: 0 PDO 3: Type: FIXED Current: 2250 Voltage: 20000 Peak Current: 0 Uchunked Support: 0 Dual Role Data: 0 USB Comms: 0 Unconstrained Pwr: 0 USB Susspend: 0 Dual Role Power: 0 PE_SNK_Ready