La especificación original de USB asumía la presencia de un único host (la PC) y un vínculo a un dispositivo, fuera éste una impresora o un medio de almacenamiento externo. Por esta razón tiene problemas para designar hosts y dispositivos en forma flexible. Para salvar esta falencia se diseñó el algoritmo FlexConnect, el cual automatiza y simplifica cuestiones tales como cambio de roles y switching de puertos.
El uso masivo de puertos USB en teléfonos inteligentes, wearables, reproductores de medios y otros dispositivos introduce serias complicaciones a la hora de asignar roles (host/dispositivo) y hacer switching de puertos. Dependiendo de la aplicación, un host puede tener numerosos dispositivos conectados a él, cada uno de los cuales puede también ser un host. El usuario también puede requerir que varios hosts controlen a varios dispositivos.
“Actualmente, para hacer esto con USB 2.0 ó USB 3.0 se requiere intervención humana para hacer físicamente los cambios”, dijo Mark Gordon, gerente de marketing de productos USB y de redes en la empresa Microchip Technologies, en una entrevista publicada por EE Times. “El conector USB 3.0 Type C, que reemplaza a los formatos anteriores de USB, hace que el proceso sea menos confuso, pero sigue siendo el usuario el que debe hacer las conexiones correctas físicamente”.
Para flexibilizar el cambio de roles y el switching de puertos –y, de paso, eliminar la necesidad de interacción humana en la transacción– Microchip Technologies comenzó la implementación de FlexConnect, un algoritmo propietario basado en una máquina de estados en muchos de sus nuevos diseños de circuitos basados en USB. El más reciente dispositivo en el que la compañía incorporó a FlexConnect es el Smart Hub USB5734, el cual permite el intercambio de roles y el switching de puertos, además de ofrecer puenteo de E/S junto con otras funciones de interfaz de comunicaciones.

“Con FlexConnect, un dispositivo móvil puede enchufarse en un host USB estándar y tomar control de las funciones del sistema, junto con otros dispositivos USB y periféricos conectados a los que antes sólo podía accederse vía el controlador de host o el hub raíz”, explicó Gordon.
La máquina de estados incorporada en el Smart Hub contiene un algoritmo FlexConnect que inicia y luego dirige un conjunto de protocolos que hacen posible que un dispositivo cambie dinámicamente su configuración física para permitir que los puertos se desempeñen como de subida o de bajada, sin que se pierda compatibilidad con el estándar USB. Junto con un MCU incorporado en el chip, la máquina de estados de FlexConnect puede cambiar dinámicamente el funcionamiento de cada puerto, haciéndolo actuar como host o como dispositivo mediante comandos de software de bajo nivel.
Junto con los dispositivos Smart Hub USB5734/44, la empresa ofrece las placas estándares de evaluación USB 3.0 Controller Hub y USB 3.0 Small Form Factor Controller Hub. La primera incluye placas de entrepiso que pueden usarse como configuraciones de aplicación preseteadas para facilitar el testeo y el desarrollo de sistemas USB 5734.









