wtorek, 16 lutego 2016

Beagle Bone Black - jak uporałem się z Hub'em USB?

Jako, że BeagleBone Black posiada tylko jedno gniazdo USB do tego w standardzie 2.0, do zasilania i komunikacji z większą ilością potrzebnych urządzeń: kart sieciowych, kamer, klawiatury, myszy, sterowników itp. - potrzebny jest aktywny Hub USB.
Pardon - bo zaraz fachowcy się przywalą, że piszę głupoty - BBB posiada oczywiście dwa złącza, z tym, że jedno miniUSB jako klient, ale nie o nim będzie tu mowa. Potraktuję o tym standardowym 2.0 oznaczonym w specyfikacji jako USB1.
W handlu dostępne żniste rozgałęziacze, Hub'y USB zarówno pod złącze 3.0 jak i 2.0. Ja wybrałem Hub w standardzie 2.0 ponieważ lepszy nie był mi potrzebny i takowe gniazdo (tego standardu) jest w BBB fabrycznie.
Należy pamiętać, że Hub USB powinien posiadać aktywne, zewnętrzne zasilenie, czyli ma to być Hub aktywny.
Dlaczego taka uwaga? Z tego co się orientowałem nadmierne obciążenie portu USB w Beagle może doprowadzić do jego uszkodzenia - inaczej - nie jest przystosowane do zasilania urządzeń o poborze prądu większym niż przewidziane dla standardu USB  - 500mA czyli 0,5A. Zatem jeżeli planujemy w naszym projekcie użycie większej liczby urządzeń USB, aktywny Hub to doskonałe rozwiązanie:).
Poniżej przedstawiono listę urządzeń, które powinny bezproblemowo współpracować z BeagleBone Black bez żadnych magicznych sztuczek:
  • Manhattan 10-port HUB,
  • D-LINK DUB-H7 7 Port USB 2.0 Hub,
  • Trust HU-5770 7-Port Powered Hub.
Oczywiście w moim przypadku, chciałem aby było bardziej "hakersko", nabyłem za kwotę 14,50zł wynalazek "no name" prezentowany na zdjęciu poniżej:
Hub USB z podłączoną kartą sieciową z mojego poprzedniego posta.
Tak jest bez obudowy, tak zdjąłem ją z premedytacją. Wielkie było moje zdziwienie kiedy po podłączeniu do BBB i zasilania okazało się, że Hub po prostu nie działa i nie działa... . Świeci mruga ale nie wykrywa kart i innych urządzeń. Nie wiem czy to kwestia konfiguracji BeagleBone Black i jego Debiana czy coś innego. Zacząłem poszukiwania, jak  rozwiązać ten problem - przecież nie chcę zasilania USB z BBB tylko z Hub'a - z sieci!
Znalazłem - okazuje się bowiem, że tańsze Hub'y mają rozwiązanie w postaci małej diody prostowniczej łączącej zasilanie gniazda USB z zasilaniem płytki z gniazda zasilacza. Prezentuje to foto poniżej:
I po kłopocie z niesfornym zasilaniem Hub'a USB
Wyczytałem, że rozwiązaniem takiego problemu może być jedynie odcięcie przewodu zasilania z kabla USB (uprzednio należy rozpruć jego otulinę), co ze względów estetycznych nie wchodziło w grę, lub odnalezienie na płytce takiego właśnie elementu i jego odlutowanie. Ja przezornie tę diodę pozostawiłem i jedynie rozłączyłem zasilanie via USB na rzecz bardziej przydatnego zasilania z zasilacza (aktywnego). Teraz już wystarczy zasilacz 5V / 2 - 3A i można podłączać to co nam potrzeba do realizacji wymarzonych projektów:).
Oczywiście Hub'y wymienione wcześniej, powyżej w tym poście nie powinny mieć takiego problemu, bo one fabrycznie są robione jako aktywne i nie ciągną zasilania via USB komputera czy BBB, z tego też tytułu są droższe. 
Dobra poniżej zamieszczam kilka fotek i okienko z VNC na dowód, że to wszystko funkcjonuje jak trzeba.
Hub z usuniętą diodą prostowniczą:) Lampka na karcie WiFi świadczy, że przynajmniej jest zasilanie:)
Cukierkowe podświetlenie taniego Hub'a USB:)
Przy okazji - taki mam radiator na Sitarze:)
Polecenie / lsusb / - utrwala mnie w przekonaniu, że o to chodziło.
Czy tak to powinno być zrobione? Pewnie jest inna metoda i grzebanie w konfiguracji Debiana, ale że nie jestem fachurą od Linuxów, takie rozwiązanie wydaje się być ze wszech miar prawidłowe i do zadań "amatorskich" chyba wystarczające.
I tak kolejny problem z Beagle został w miarę prosto rozwiązany. Pozdrawiam i dużo sukcesów z tą zabawną platfor.
Ponieważ to sztywny blog technologiczny na koniec On :)