No, I'm not bound by USB-IF requirements.
When you say to pull the ID pin low with 100K at the device, you mean if I was using a micro-B to micro-B cable, right? If I were to plug the "micro-A" end of a micro-A to micro-B cable into my device's micro-AB receptacle, then the ID pin would already be shorted to ground inside this plug, wouldn't it?
I used to think there was a separate ID wire going through the cable, and I couldn't understand how one end could be shorted, while the other end was left floating! But now I understand that the ID pins are isolated, and their resistance to ground is what tells the connected host or device whether it should act as a host or a device. Incidentally, I happened to see this Engineering Change Notice that increases the "floating" ID pin resistance from >100K Ohms to >1M Ohms:
"Specification Changes:
In Section 4.2 after Table 4-2 change:
The ID pin on a Micro-A plug shall be connected to the GND pin. The ID pin on a Micro-B plug is not
connected or is connected to ground by a resistance of greater than Rb_PLUG_ID (100kΩ MIN).
To:
The ID pin on a Micro-A plug shall be connected to the GND pin. The ID pin on a Micro-B plug is not
connected or is connected to ground by a resistance of greater than Rb_PLUG_ID (1M Ω MIN)."
I'm designing with a PIC microcontroller with USB OTG capability. It can operate either as an embedded OTG host, or as a device. I see that it has an internal pull-up resistor on the ID pin--if the ID pin isn't shorted by a connected micro-A plug, then it will go high and tell the PIC to be a host. But I don't see anything to pull it low, so I will take your advice and pull it down. Thank you so much for this warning.
What would happen if I simply shorted the ID signal to ground on my USB device?