 In this chapter, we will give you very quick overview of USB-C. Possibilities and features introduced with this new type of connector are very wide and only some of them will be mentioned here. On the picture you are able to see signals inside USB cable with reversible connector. In total, it's 24 pin, all of these 4 are dedicated for V-bass and 4 for ground. Signals for both high speed, so the USB 2.0 specification and super speed, which is 3.x specification, are included and doubled in order to keep the reversibility of the connector. But don't be mistaken, USB specification is alongside with USB 2.0 or 3.x specification. So with USB type C cable, you can meet either the so-called full-featured cables, which contain all the signals including the super speed or the cables which are missing the super speed. So only high speed communication is possible with this cable or cables completely without any data communication, which are intended only for the power options and power delivery. Interested from the microcontroller point of view are the power options introduced with the type C. So now the default power option can be up to 15W, so it's 5V with 3A and additional power delivery protocol, which is using directional communication on so-called CC pins, can negotiate the power profiles up to 100W, so on 20V and 5A. With USB type C and power delivery protocol, also alternate modes can be used. So for example, Ethernet, DisplayPort for image transport or audio can be negotiated. The power delivery protocol can be used only if both connected sites are using USB C cables and supporting this protocol. And what is also new compared to the older USB specification is that with USB type C power roll and data roll are now split. So it's not true anymore that only host can be the provider of the power on the bus. Now it's independent and can be negotiated and switched on the go. If you want to use the advantage of a nice reversible connector or also improve the power capabilities of your current design or new design, it's very easy to adapt only using to resistor. And such configuration you can see on the picture and more details can be found in USB type C specification or also in ST application node AN4775. Now a bit closer to ST offer with USB type C and power delivery. The oldest offer demonstration board is PNUCLEAR USB 001. On this board is STM32F072 with analog front end. The analog front end is used only for the voltage level adaptation according to the specification of the USB C and power delivery. But all the tasks are done here by the STM32. So it's completely covering the stack, covering the communication and as quite a big part of the peripherals for the specific tasks for which the peripherals are not prepared is used here. The resources demanded on the STM32 site are quite big for handling the USB power delivery communication. So in the next level is PNUCLEAR USB 002 where USB type C port control ST USB 1602 is used. This port control is already covering the lower part of the stack and also is taking care about electrical protection of the USB connection. But still some peripherals and some handling and the stack itself need to be covered by the microcontroller. Again STM32072 is used. With the ST USB 1602 microcontroller need to use both SPI and I2C to control this part. Another solution is to use USB type C port manager which is marked as TCPM. The usage of TCPM make the solution very universal and easier because the port manager is covering completely the communication and only I2C for the controlling of the port manager is needed. Which makes this solution very easy and universal among also other families. What is offered as a firmware package is called XCube USB PD where you can find examples, stack and drivers for all three solutions mentioned before. So this is already free of charge available on ST.com. All the solution mentioned until now were using MCU so it allows more universality also adding additional functionality to the design itself. And thanks to MCU also dual role and alternate function is possible with this board. But if the application is going to use only the consumer part or should act only as a provider it could be easier, cheaper and faster for development to use stand-own solution without any microcontroller. And for this there are two possible way where to go. So it's either ST USB 47X0 for the provider only functionality or ST USB 45O for consumer functionality. Both of these chips have non-volatile memory so the EEPROM where you can set the parameters of the connection and then these chips are working stand-own without any microcontroller to create the demanded functionality. So the solution then can be easier but it's lacking the universality and flexibility.