Get source capabilities without software reset
I am designing an application where the STUSB4500 must be able to negotiate successfully with a wide variety of USB-C PD sources. This involves a microcontroller which edits the PDOs of the STUSB4500 on the fly after reading the source capabilities. ST's example software recommends sending a software reset message to the STUSB4500 since the source will retransmit its capabilities during the re-negotiation that ensues, but this software reset triggers a hard reset with some USB-C PD sources, and so I'd prefer a solution that doesn't involve a software reset at all.
The USB-C PD specification defines a command GET_SOURCE_CAP, which can be sent in the same manner as the SOFT_RESET message except that the transmit buffer is written with 0x07 rather than 0x0D. However, this triggers a hard reset in all USB-C PD sources I've tested with, even those that handled the software reset just fine in ST's recommended method. Is there a reason why the STUSB4500 hard resets when this message is sent, and is there another way of getting the source capabilities without a software reset? Thank you.
