Schemat ideowy modułu pokazano na rysunku 1. Składa się on z dwóch głównych bloków funkcjonalnych:
- układu U1 typu USB2412 będącego podwójnym rozdzielaczem USB,
- układu U2 tj. najnowszego konwertera USB/Serial typu FT234X (FTDI).
Układ USB2412 ma wbudowany dwuportowy HUB USB2.0 ze zintegrowanymi rezystorami polaryzacji i dopasowania magistrali oraz zabezpieczeniem ESD każdego portu (do 4 kV). Wbudowana jest też funkcja zarządzania zasilaniem, z możliwością pracy w trybie Hub Self Power. Każde z urządzeń dołączonych do USB może być zdefiniowane jako nieodłączalne. Układ współpracuje z typowym rezonatorem kwarcowym o częstotliwości 24 MHz oraz nie wymaga zewnętrznej pamięci konfiguracyjnej, co znacząco upraszcza budowę urządzenia. Do układu są dostępne sterowniki dla systemu Windows.
Hub jest dołączany do komputera za pomocą gniazda micro USB. Układ U3 zapewnia zasilanie 3.3 V, natomiast U2 (MCP100-3T) jest generatorem sygnału zerowania dla U1 i U5. Układ U1 współpracuje z rezonatorem XT o częstotliwości 24 MHz. Zasilanie huba jest sygnalizowane za pomocą diody LED LD1 (PWR). Sygnały z portu USB2 doprowadzone są do gniazda USB2. W obwód zasilania jest włączony układ U4 (TPS2051C) będący aktywnym przełącznikiem zasilania. Ten układ, oprócz możliwości kluczowania zasilania sygnałem EN, ma wbudowany ogranicznik prądowy 500 mA, którego zadziałanie jest sygnalizowane wyprowadzeniem FLT i jest wykorzystywane do wyłączenia urządzenia przeciążającego magistralę poprzez kontroler U1. Obecność zasilania portu USB2 sygnalizuje LD2 (UP2). Wyprowadzenie 13/19 NRx określają czy urządzenia podłączone do portów 1/2 będą odłączane od Huba podczas pracy. Odpowiednie informacje przekazywane są do systemu operacyjnego w celu prawidłowej detekcji dołączonego urządzenia. W modelu tylko port USB2 pracuje z urządzeniem odłączanym, port USB1 jest na stale dołączony do konwertera FT234, co dopowiada podłączeniu NR1 do masy i NR0 do zasilania poprzez rezystory R2 i R6.
Do portu USB1 jest dołączony konwerter USB/Serial U5 typu FT234X. Układ umożliwia realizację transmisji z potwierdzeniem sprzętowym, a dzięki ograniczeniu liczby linii GPIO do jednej, jego strukturę można było umieścić w niewielkiej obudowie DFN12 o wymiarach 3 mm×3 mm.
Skutkuje to zmniejszeniem powierzchni zajmowanej przez interfejs konwertera USB/UART do niezbędnego minimum. W układzie wykorzystane są tylko sygnały RXD/TXD dla transmisji bez potwierdzenia sprzętowego. Dioda świecąca LD3 (RTX) sygnalizuje aktywną komunikację. Układ jest zasilany napięciem 3,3 V poprzez filtr złożony z dławika FB i kondensatora C11. Sygnały RXD/TXD wyprowadzone są na złącze EH (UART). Należy pamiętać, że FT234 pracuje z sygnałami o napięciu 3 V i dołączenie do systemów zasilanych z 5 V (np. Arduino) wymaga użycia konwertera.
Urządzenie zmontowano na dwustronnej płytce drukowanej, której schemat montażowy pokazano na rysunku 2. Sposób montażu jest typowy i nie wymaga szerszego opisu. Należy zwrócić uwagę na prawidłowe przylutowanie padów termicznych układów U1 i U5.
Układ nie wymaga uruchamiania. Po przyłączeniu do PC instalacja przebiega automatycznie, a po zakończeniu w Menedżerze Urządzeń systemu Windows (rysunek 3) powinny być widoczne urządzenia Generic USB Hub i USB Serial Converter. Sterowniki portu VCP domyślnie są aktywne, ale warto sprawdzić to w karcie właściwości urządzenia (USB Serial Port). Po poprawnej instalacji, należy pobrać ze strony FTDI najnowszą wersję programu FT_Prog i uruchmić go. Po przeskanowaniu urządzeń (klawisz F5) należy załadować przygotowany szablon USB_RSHub.xml i po skanowaniu ustawić w opcjach Hardware SpecificCBUS Signals C0=TX&RXLED#, zaprogramować układ (CTRL+P) i ponownie dołączyć hub do portu USB. Od tego momentu, po odświeżeniu przez system urządzeń USB, konwerter jest gotowy do pracy. Szybkiego sprawdzenia można dokonać terminalem, mostkując RXD/TXD, oraz wybierając transmisję bez sprzętowego potwierdzenia, testowe znaki powinny wracać do terminala. Aktywna transmisja powinna być sygnalizowana diodą RTX.
Adam Tatuś, EP