I am designing a product that has two interfaces: USB 2.0 and UART. These interfaces will not be used at the same time. I would like for both interfaces to be accessed by a single USB-C receptacle.
The
USB-C connector specification describes how a USB-C connector can be used for propriety signals. "Alternate Mode" is the most flexible but would significantly increase the complexity of the product. "Debug Accessory mode" seems like the ideal candidate but presents three issues:
- Detecting connected pull-downs on CC1/CC2 may be difficult given that these lines must already be pulled down on the product itself.
- This mode can only be used with custom USB cables. This adds cost, complexity, and the risk of user error.
- The specification states that "This mode is for debug only and shall not be used for communicating with commercial products."
I'm considering the use of "Audio Accessory Mode" to provide access to the UART for the following reasons:
- Substituting a UART TX signal for a mono audio channel, and UART RX signal for a mic input would not violate the specification.
- The connection of an audio accessory is easier to detect as it is indicated by both CC lines being connected to ground.
- USB-C to 3.5 mm 'converters' are commonly available and avoid the cost and risk of custom cables.
- Many products already use 3.5 mm audio connectors for UART signals.
As a side note - the unused mono channel could be used to provide a small amount of power (e.g. a few tens of mA) to the connected UART accessory.