One of the selling points of the USB-C plug is that it is apparently not possible to insert it incorrectly. Which [Pim de Groot] shows with a ‘Cursed USB-C 2.0 Device’, the reality is a bit more complicated when it comes to USB 2.0 compatibility in USB-C. He made a PCB that elegantly demonstrates the simplicity of the problem, with two LEDs. Only one direction on the USB-C connector will cause one LED to glow green, and the other direction will cause both LEDs to flash red.
The reason for this behavior is simple: like [Pim] explains, even though the USB-C plug only has one pair of data lines (D +/-) for USB 2.0 connection, the receptor duplicates these on each side of the pins, and outputs two pairs of D +/- lines. Normally you will connect the matching lines in these pairs together to ensure smooth behavior regardless of plug orientation, but you do not need to.
By routing each USB 2.0 data pair to its own SAMD11C MCU, only one of the MCUs will be connected to USB, resulting in the connected MCU flashing the LEDs. With a few more circuits, it is possible to detect which way the plug is inserted and use this information in a simple MCU system, and change the behavior. While at first glance it seems a bit more than a fun party trick, but it also provides insight into a possible error mode for USB-C 2.0 devices where only a plug orientation works, due to broken tracks or pads.
(Headline image: Cursed USB-C 2.0 device, by Pim de Groot)