El nuevo estándar USB-C definido en
enlace
ahora oficialmente permite que los productos usen protocolos no USB a través de puertos USB.
Algunos requisitos para esto:
Necesitará usar el conector USB-C en lugar del micro-B que mencionó en su pregunta, pero USB-C pronto será el estándar universal, por lo que esta es una buena idea de todos modos.
Deberá proporcionar una interfaz USB mínima en su dispositivo solo para implementar lo que se denomina "dispositivo de cartelera" en caso de que su dispositivo esté conectado a un host USB regular, con el fin de informarle al host cuál es su dispositivo. para evitar errores silenciosos hostiles al usuario cuando se conecta algo y no pasa nada.
No puede comenzar a usar su propio protocolo tan pronto como se conecte el dispositivo. En su lugar, debe realizar una negociación de protocolo (en una línea separada en el puerto) para indicar que está cambiando a su protocolo. , para evitar confundir un host USB normal si su dispositivo está conectado a él. Esta negociación reemplazaría el acuerdo de propiedad que mencionó para su dispositivo.
Usted dijo que su microcontrolador no puede manejar dúplex completo de alta velocidad. Pero el USB 2 funciona en half duplex. Solo el USB 3 funciona en dúplex completo. Y para el dispositivo de cartelera USB que se supone que debes implementar, se permite una velocidad aparentemente baja (1.5 Mbps), lo que podría estar dentro de tu microcontrolador y restricciones presupuestarias.