En realidad, si está dispuesto a lidiar con un enfoque de controlador no convencional, el circuito de interfaz USB podría ser muy simple: solo una resistencia de extracción.
Un host USB identifica la presencia de dispositivos conectados mediante el uso de una resistencia de extracción en la línea D + o D, según la velocidad del dispositivo. Esto lo detecta el controlador USB central, que intenta consultar el dispositivo y cargar (o instalar) un controlador apropiado específico para el dispositivo. Sin embargo, si de hecho no hay ningún dispositivo conectado, el sistema operativo lo registrará como un error, de manera que el software puede realizar las consultas específicas del sistema operativo correcto (por ejemplo, el comando linux dmesg mostrará el registro del kernel de esta conexión fallida, en otros sistemas puede aparecer una notificación).
La conexión a la línea telefónica es un tema en sí mismo, y merece su propia investigación. Sin embargo, esencialmente, construiría un circuito de detección de descolgado adecuado y aislado, y tendría este tipo de interruptor para colocar el resistor pullup entre una de las líneas de datos USB y USB VBUS.
Dicho esto, el costo de una verdadera interfaz USB es relativamente bajo (en cualquier análisis razonable, más bajo que el tiempo que pasaría encapsulando la detección de dispositivos con resistencia falsa), y permitiría una interfaz de controlador más tradicional. / p>